{"report_id":"6da2f425-9891-486c-8470-93669a444d01","version":0,"status":"done","tags":[],"date":"2026-07-27T09:06:22Z","url":{"schema":"https","addr":"profx.io/","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":0,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"final":{"url":{"schema":"https","addr":"profx.io/","fqdn":"profx.io","domain":"profx.io","tld":"io"},"title":"1 new message","dom":{"size":81230,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (1252)","md5":"e331fb4af6f56ca919cd62368d26a9e9","sha1":"e109fe6b3788b294eece2440758e3dbd554a2a3c","sha256":"8cdc830edae65fe5907e1cc210f31a10fe09cb990aa7cb5aac2dd9d4cc2113ad","sha512":"607269ca1f7cf7ce03557c08842782246d33b43a1580f5586920ed9eb538ba423d52b50979b3a4aaebab140184328dd8c63763e9e65a4b82ded578ee08bab553","ssdeep":"768:nimUxFDXTkURMT2y1pINeccJrBH7tELTpFwnqAR0:nifxOT2y1/BHEpFwnqAR0","tlshash":"fc836226b5f11022419391826afb6f2d6fb9e103ca568a2472ec1bec1fd7d87dc5360d","dom_hash":"domhash8950ad281b5b56687bf2208df9a0f25b","first_seen":"2026-07-27T09:06:29.067665Z","last_seen":"2026-07-27T09:06:29.067665Z","times_seen":1,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"profx.io/","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":0,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T09:06:22Z","useragent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0","referer":"","cookies":null,"exit_node":"qguvgzjxzsgb3vs"},"stats":{"alert_count":{"ids":0,"urlquery":0,"analyzer":1}},"detection":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null},"summary":[{"fqdn":"profx.io","ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"domain_registered":"2020-09-09","domain_rank":0,"first_seen":"2025-12-19T04:10:12.740551Z","last_seen":"2026-07-27T06:02:14.550957Z","alert_count":40,"request_count":40,"received_data":2823667,"sent_data":24590,"comment":"","tags":null,"fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":"WOW","description":"Reveal CSS animation as you scroll down a page.","website":"https://www.delac.io/WOW","common_platform_enumeration":"","icon":"","categories":["JavaScript frameworks","Web frameworks","JavaScript graphics"]},{"name":"Google Analytics","description":"Google Analytics is a free web analytics service that tracks and reports website traffic.","website":"https://google.com/analytics","common_platform_enumeration":"","icon":"Google Analytics.svg","categories":["Analytics"]},{"name":"Bootstrap","description":"Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.","website":"https://getbootstrap.com","common_platform_enumeration":"cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*","icon":"Bootstrap.svg","categories":["UI frameworks"]},{"name":"Select2","description":"Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.","website":"https://select2.org/","common_platform_enumeration":"","icon":"Select2.png","categories":["JavaScript libraries"]},{"name":"PHP:8.3.31","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"Slick","description":"","website":"https://kenwheeler.github.io/slick","common_platform_enumeration":"","icon":"Slick.svg","categories":["JavaScript libraries"]},{"name":"jQuery:3.7.1","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]}]},{"fqdn":"embed.tawk.to","ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":52083,"first_seen":"2014-03-19T21:03:49Z","last_seen":"2026-07-20T19:28:07.378156Z","alert_count":0,"request_count":26,"received_data":1390225,"sent_data":12657,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"va.tawk.to","ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":51316,"first_seen":"2017-01-30T04:20:46Z","last_seen":"2026-07-20T23:41:39.270634Z","alert_count":0,"request_count":3,"received_data":6295,"sent_data":1650,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"vsb131.tawk.to","ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":1349161,"first_seen":"2025-02-25T12:29:42Z","last_seen":"2026-07-27T07:39:40.104347Z","alert_count":0,"request_count":1,"received_data":417,"sent_data":1099,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"cdn.jsdelivr.net","ip":{"addr":"151.101.193.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"domain_registered":"2012-05-16","domain_rank":1678,"first_seen":"2012-09-30T00:15:09Z","last_seen":"2026-07-26T23:00:42.445991Z","alert_count":0,"request_count":2,"received_data":305250,"sent_data":966,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"www.googletagmanager.com","ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2011-11-11","domain_rank":283,"first_seen":"2012-10-04T01:07:32Z","last_seen":"2026-07-26T22:31:28.839046Z","alert_count":0,"request_count":1,"received_data":489070,"sent_data":471,"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"]}]}],"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":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-common.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"56cb8d5774a618e798ce9bfa00796e3e","sha1":"4fe37e13d9fd4156b684752e5af938a3579bd102","sha256":"c1e2acb380d4a5818a0641bdf5eafde669fd2c86ebe49559cd7ea0030d50c196","sha512":"c651afb2b824e43dbb1548f081c6148831c39444e10358abf6109afd4649125dfe3f40cebff94892b96d973daa534185a3dd9b3b6520ff3349ca994879549d2e","ssdeep":"3072:GEIYgadYqhJrTodiWFW1WF8fMqAOACkjQiuIRxLMz9+Z15:dAiWFW1WmfMqAmkhLMz9o15","tlshash":"bc34c69df186b47606a37130501f320af23a685ab45ac4d4f636d8e1bd789cea133f79","size":242222,"data":"","first_seen":"2026-07-08T23:24:03.888143Z","last_seen":"2026-08-03T13:22:13.517292Z","times_seen":3129,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0d2b7c.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8c2091a992e4303600967e53388cb5c8","sha1":"70cb06404a117829d3c53f5890077f5ff82957c9","sha256":"52edf640b5358d2e388d34d85bae2bf9973c26383165c4187da4e98b7703233a","sha512":"4d379fa96658dead5908f119d36ff91db8ec34d145fad5888370bd681ec575615351eaa0336fba48e4ad102b84e07881286bb1a958ec15ac36f86677de149d15","ssdeep":"192:0CFny7CpmYbZTxcwr40v0zSrj5D6/L6LvGokD36b4hwseQ:08mCTZTJr40v0GF/LvV4hwsR","tlshash":"9332a6b7e0a1107ea316871c106fa610f61f6c8ab2561da5ba7ab46f900ddcfc065f7c","size":10918,"data":"","first_seen":"2026-04-21T04:02:24.334927Z","last_seen":"2026-08-03T12:50:03.365356Z","times_seen":13477,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-7941cc06.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"0b7571445a752df762894d31268e7c12","sha1":"54b956960bd4376f15523f25f586fc5478a626fc","sha256":"2a768547370a8933454d03757e1981e616d448234e06e5b9dcf1608f35bec644","sha512":"12e90c52c5cce1f2767060de43c8627fb789a49f5a1b1a681048e732f08ae67194f4ee0c7a80f305778c67e31a756555c54d463bbdab66f19b03f8f050aa4e71","ssdeep":"768:Vlxfu8+HYUmI+rT1Wf2z+y+Um/+VRJWf/W+Hc1lt7Gj67IW8/JGvgLCBxf6stK4/:xfuro0f20UJWfO+Et7GZrCi20k","tlshash":"8133d9cdb2d6f4258763632130af3006f27a4964a81dd155f334d8f6b9ece49a226f2d","size":54211,"data":"","first_seen":"2026-07-08T23:24:03.874474Z","last_seen":"2026-08-03T12:50:03.427326Z","times_seen":2490,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-6289ff8e.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2528753fcff2713c9c633700cb6ab7fe","sha1":"3ae9318912ac6a038860dfc27d45d52a57dbffa5","sha256":"65b1a9237f942dada0c03510e49b1901c6fe2f0ad77b3031a01bd7303455a918","sha512":"e966691ba781c2a88bdb825bb2c04c702c09834c10e2f4b66dd4d37ddee1c3d1f4848c3fcc038803f9c1d3e0fe2ef450c2cb6fddad3e01c4cf872797ee4fd285","ssdeep":"1536:BigMTWFu196woffn32j8DegaOqbWbaGlDluK1k+YZdZPkx3u4V5pfYMrlSf:4nmuTcgGHbJx3u4V5pPrlSf","tlshash":"3ba3096ef091b47d8993d26120af3212f3363d55a919d0a8f234cdf859d89c9a127f3e","size":107247,"data":"","first_seen":"2026-07-08T23:24:03.881188Z","last_seen":"2026-08-03T12:50:03.409966Z","times_seen":2492,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/jquery-3.7.1.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"b83db83a1d89113ee03ab730efa48c7a","sha1":"2fccdd3e43db21bbc8448ed6d6311c4a6eea1166","sha256":"99e691fae5e88eb36bafb24758b35f0f990708295f8f2abe2221891e328f776a","sha512":"10d6f09a04eb135eae12c890be0512ead801e213614505937d1e782d5a6af86550395470ea31b3aebd85695f07a8fe903eda4941e52bcb7278cce02eacb13800","ssdeep":"1536:3RUX9uDgwxcy2KVBNwchN6SLaHEk2BSrBESp+a/IEk4aAocVi8SMBQ47GK7:vHNwcv9VBQpLl88SMBQ47GK7","tlshash":"1083f8df77ca702247ab30b9006f550bf276199d684d4400f159d8e9bcb8a4a827bf7e","size":87533,"data":"","first_seen":"2023-10-23T00:47:02Z","last_seen":"2026-08-03T08:22:06.226783Z","times_seen":9875,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/js/vendor/wow.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"21fe90eedcbaafb4ed529d78418d30bd","sha1":"a16375b80220d315151f57bab2d4ee03c9fe1d20","sha256":"7852a22b72ead62cfc4a1b1ca32874b3e222f232a991a6d1432313572f534135","sha512":"30be63048c2b41ea7953dbc137b4c9047704196430cdf1995334092a41fe8c6336f1f109c195c5b47c857ee92838e4ff8d255d7ca8b8280793bc012d35b7fcdf","ssdeep":"192:tmEE6yAmu6qUxbU5C9nrr1GkEPIAeJ3KO4poIR:EEE/Amu6qUxVBxGkAI///IR","tlshash":"99f1baa5374a70718e9b6176c92f0202a532256e74d4c8ec747cddd4aeb4a29336bf3c","size":8155,"data":"","first_seen":"2023-03-07T01:37:53Z","last_seen":"2026-08-03T06:41:29.1323Z","times_seen":6598,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d224aff.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2fbd26af790f4021c222d285bca63f47","sha1":"643fd2af6f8d4df46bcb7998c9638ab085df7736","sha256":"0ab3e6d58bc33ae6635954e6397b3423c301cd66b58a9c0badfb67c0301d701e","sha512":"d446c3026035e64159e877892a94f5f0456f766285142f65bf17bd6ec5d43cb35c8ded56560deccd82511caadfdc48b3c16326bc94209b3ff2ec77beb3dca855","ssdeep":"384:jqiSR0nIa0kIrCQl2kL3kC5GN//h6LiJq:SzP2DbSLi8","tlshash":"8a822ba6f149311bc925c750605f2228b33b19a9fa1ece7df2745df245a8cc2906af3d","size":18392,"data":"","first_seen":"2026-07-08T23:24:03.859246Z","last_seen":"2026-08-03T12:50:03.420771Z","times_seen":2530,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-vendor.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"3b341e35b39f6195793ecaf5db7c1d63","sha1":"3ef56ed9ac8bfbf5347dc4592653703f59763083","sha256":"548669d6434f5204dca25b9a6f8a02f63301b8c1b58a717b91fec8b6c2918305","sha512":"6b222121b74ffeabd4de7b69f354ad25283d0989376e8e3f6d97f829e28175291eab0a535ca77c22d3f65595250ad9ad3909525c2eb74bf9783f4955c3d7cde2","ssdeep":"768:kURUFvX9zXAfE4dm9+fuDosXRfMySUHM1ONdYO31hY6d/o6cyO4fefHvSAW64F:kURUZXGfzd1uU+8ODY6JORfHBWJF","tlshash":"b483e6dcb295b57117ab20b5417f050bf33a7815a80ac0a4f266f4da7c7848ea06bf7d","size":82913,"data":"","first_seen":"2024-03-08T05:46:53Z","last_seen":"2026-08-03T13:22:13.504154Z","times_seen":65967,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0aef27.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e4f17b44539cdb517c1475424aec5722","sha1":"6f02d2f55076fd3a4742f18bc41abe2ab11fdbd4","sha256":"c0be6022318db42025ee57c3ef987e375f0591db734457caa0ad249df1202f67","sha512":"2bb5554affecc7a9c5049cf93876876c49f2f36aea08e4ef1ea87374af28b440573078e2c934a850218c45f9e47aa058b0861a3ce19c4e6162dbde3772b35c15","ssdeep":"192:0H9Ma6RIU9HkKRU0Ve20lqXvtsTBkpfCNmeAhbKqxK4ILZvUZaUZSsgM:K6b9HkS316xAFKpLZEh","tlshash":"2732a3c6e8c7b9564227160451efa128f73f2a94771adc18f0a895f34a948c3507bfba","size":11888,"data":"","first_seen":"2026-07-08T23:36:09.661392Z","last_seen":"2026-08-03T12:50:03.421837Z","times_seen":1728,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0c8092.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8f81a7bf3d3d053b77fe013413abf8e2","sha1":"d080f3787f12145036209fada5c29f6d2931bb8b","sha256":"d71f406a3ecbcf4dcb1b79d075c15d935f11dee4efd1fcf4dea492182278c261","sha512":"6c3499d947c237b6c6731448ab2a7eeccc25dc62c2cbf1f59bc1528e12b3ff2d50c4c10c4f847b8473407fbe5f417fd6f5bea070815c46352ba7a9f29a1ae249","ssdeep":"96:zNC9Hqt7pEma7hY/rcKoJBPDRIv6hJQ7i16p3n4vkjvxQcsD:zKHhNYmLRIvgx43nVY","tlshash":"c3b1859ef247b456c156225150ef3b1df33a281ca61ccdc8a66565f218784cba077f3d","size":5261,"data":"","first_seen":"2026-07-08T23:24:03.884969Z","last_seen":"2026-08-03T12:50:03.428379Z","times_seen":2521,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/js/vendor/slick.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"d5a61c749e44e47159af8a6579dda121","sha1":"3b41b3bc956685015a347a2238e71db29dfa0dbb","sha256":"0c7178cc6ca34fb18e30f070a5e7a1c287b2d7ccfcba2cfdf06e0f46eda55740","sha512":"5ed98cb4311c373da3ede92bb47bce551e22c30683ea8fc55097baf99abe1e0702b24de48f8b9241047cc1e4364158f5a343e4e8fc182e8866db4e99ccd7ee6e","ssdeep":"768:4rkkX123A5YHi6pWzYdlNWYcx16nnYdXRRMd2KYCQCsPShb1ez7RFmYH:EPrYdlNixEePiYH","tlshash":"e513a549d205276285d721e62105c40eb3f7fb3cba22c0e475c9d3ea646ec4896d7bfa","size":42863,"data":"","first_seen":"2023-03-07T01:06:34Z","last_seen":"2026-08-03T13:21:16.17803Z","times_seen":110013,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/firebase/firebase-8.3.2.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"3aeb031c1d596281cfb0bc798ad68c35","sha1":"f3cbd0c473069e581705448366b33fcf71e0fdb9","sha256":"c6129ac86f15d92723bbb81e97f5ab4bcfd97f0744ea5898d2402087520c532b","sha512":"5fcc9700c5c7842dcd0f7c18a1028d6a6bc00536d03ced45d83c4ad7ed7b8530ddde45ec402f4fcb79c8ca87c4541af9786fed00817fb5437e08a4c75e9817ce","ssdeep":"6144:K8YqbosMLHtk4OLs/8wWaoFwApF+GzJXZaGQqdxQUdcujbva18nsLDMX4teWXs4v:nYqbrKOQ/YRQp18nl4sSG+z","tlshash":"5305b5ccb692b062439360b5507f410bf33b685da40e40acf669e9d67cb954e923bf78","size":859901,"data":"","first_seen":"2023-07-24T14:01:25Z","last_seen":"2026-07-30T06:02:32.545529Z","times_seen":171,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-SV56JW0DKX","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"432e2b1b9ebbf5f37fd43852262111d1","sha1":"80da928076d4962f5e4b3f18535cc263731ae5c3","sha256":"0eea30e041104d4d559d90d197414520718728e83569cd90c3d87b98a15d754b","sha512":"44893cd2a1bc20cd913ed1bcff63d8c78134f8102bf17057f6fdbb46c7a5b12a41b7d2da26742ff7fa785d1584c7075f562ed9e736d25aad3809206d90ac5f7d","ssdeep":"6144:RHdEU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:JdB1WLP69VwqxVZOvg","tlshash":"2aa4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","size":488466,"data":"","first_seen":"2026-07-27T09:06:29.09711Z","last_seen":"2026-07-27T09:07:02.808961Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-runtime.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"581712668ae095b5d8f678a6ea34ae0c","sha1":"b25b29f31300f4d63e6dec685339e0bed3235e8f","sha256":"5107df35262814ad822e242e2f510be7dfa6b382f7a00211808dafe85bf77d3d","sha512":"b51bc3a2e92f0e472ba8e7a2f09bcbe35996175e6731e349f9c192f7b58fb320b6eaa7a3757a4363df8ac952c0ebdcab7b751c8ee96a17fbb319a579cc6d0706","ssdeep":"","tlshash":"134183d936e8f9b6834318e1043fa056f6353976097be8c0531dd4f5bc78849815afb6","size":2306,"data":"","first_seen":"2026-07-08T23:24:03.879117Z","last_seen":"2026-08-03T13:22:13.50472Z","times_seen":3137,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/bootstrap.bundle.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"d3fac155eeeff0ebf33407a901291b8d","sha1":"51a602a556aa0b62e9a1426d27eac9278dd1156b","sha256":"448229f9de918450e93c0c537463bfb248c56cd64cd00c6efafdee07185ed6c2","sha512":"4b6e251dd64731e9f6b7b9240bab2c787f0c89413a1247ae7bb1815cd913f698aea33fb8f85dd4b66481cc987dbce25d207735b4315e81fad50b4341bdedba07","ssdeep":"1536:dzSMTGR2t4n+3ifBHJR9WbUHk3j8YY+PwRM3CGJI9BqQM6k+:w4Fj8GPwRM3CiI9BtB","tlshash":"9f73c6593254b4770ade45b68037420bf2265d98b24b802cb5bcadde2a7dc863277f7c","size":80426,"data":"","first_seen":"2023-04-16T23:45:43Z","last_seen":"2026-08-03T07:47:02.669406Z","times_seen":676,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/select2.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"002d7096a5353ec54b00a92c1c02fcca","sha1":"3e781ebd85a107103cf2fbd440c71222bd6a7b9e","sha256":"ef441c155322dfe5468805526352861626dac8cca78682b8697e8154912b9b4d","sha512":"c4e7b91be54bb88b19688d28fb4f2b50a253a3c929b56cf32843c647c21ba422d7afefa255d3573bdfdd6a52048a6b422ce014646c119ff603c5ccb04e249d47","ssdeep":"768:8oMZDhrrJ/Y6EvKqtB8Nnoc9DpPJRGookOlxNjuvSnJZdjVrMbusSzXAFo8Jw:+ACno0okOvht6b5KEc","tlshash":"2163b64c7a93723502af20e6346b180922376b3e500b9668b428cded5dbdd15736bf7e","size":72484,"data":"","first_seen":"2023-03-07T14:22:11Z","last_seen":"2026-07-30T06:02:32.541981Z","times_seen":253,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-app.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e736e189edb5d0d9d5b8e7f23dd9114a","sha1":"bcabee193f13756fa9154fc492fe420c47140343","sha256":"13cf82e6f9d48221cd55f8b3c3d206f7bdb83f291034b478e484ccfef7d500dd","sha512":"ea972884c185633ea238bdacea6ac9da0e0e92f88588cd85c214514c3597bc7d811c4dc4cd35b671dd2db97179bedceb38bd5d200abb9653fbcaeac2ca6ec7b5","ssdeep":"","tlshash":"a0c080ac1496fc9c1674154a8377f54a5cd510108055141015d851a11311546560c54d","size":151,"data":"","first_seen":"2023-03-07T01:02:46Z","last_seen":"2026-08-03T13:22:13.511822Z","times_seen":92493,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-3ea2c7ce.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"52698c6dc96b5f2bd13e8f921334e398","sha1":"eb0adbc44ebc73775c5cca0a3851e8a6510d360c","sha256":"37527b07ac54a4567d7e23bde1edfde8ed74c4f30402c96fb56f4c0020c6af42","sha512":"032e41ececcfc651f34c235d15953baacb81e7cfaf492dd919c7fca2a7c49d507ae4a60710064c5419df70eb581254058dffbf1d0d4c53ef47d87bce4e036524","ssdeep":"96:60WlCWYW5rugkENQdx0hZUASzpqrcHZ73abT3Qlgjm6i5cCEsK7oGuyGwDf/2/5N:XBTW5qgNQdAR7c573abF8cCEsK72/5N","tlshash":"b5b11982b251b4668ab5380045cf6f07b07baf4f5d09cd50d783e4a3b230c5a9667e8c","size":5504,"data":"","first_seen":"2025-11-13T12:40:48.559139Z","last_seen":"2026-08-03T12:50:03.403819Z","times_seen":41617,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-4fe9d5dd.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8249fafc9a9fbe0f75d4bef0aae2305a","sha1":"fab6dda0967dfbaf8ba0cfe5cfade8e150d1735d","sha256":"69b650b4d6479fd29987836a9b74147aade85cc9c50024bcacd5dfb2cb793e8d","sha512":"d0bc9a750061e5b4b761db081656b0e1e655126a413aaa22e87ce14cdfaeac34d532acd08eb0d61274707212871f6d84369b8b2a1a6d3e6c3bfd3d4167afa865","ssdeep":"","tlshash":"f9110248f056b8fcdc8af64288df143034627d4a898cf9e6f5f0aad405555ab312bb5f","size":1000,"data":"","first_seen":"2025-04-29T08:39:38.372752Z","last_seen":"2026-08-03T12:50:03.409076Z","times_seen":49219,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0da3af.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"4d9736a6cf175b83c2d5a50234a16b44","sha1":"930111650d3fb0035c89a075ad226f32589a0939","sha256":"175791cee0d4323d07bd395c74e2ebb88f8916a7236928717c07527e4b1891be","sha512":"6e3990c6b08e10f1a5419d130f8d068962b1836ef457a464124a817c6f8e154826445b4ce09d64233f1738a501c6d9af33e423184563c45701916f893bee90cb","ssdeep":"384:Nqw/U5YK8HxhquThWazJbUZDkM0kWEYPk6c+UtKM5eH:A+hquThWazJbUZDkM0kWEYPk6c+92eH","tlshash":"d352d6a7b2a4782d46379752308f3204f33b7d45b215d919f36ddcea4aa84c16056f3e","size":14277,"data":"","first_seen":"2026-07-08T23:24:03.877553Z","last_seen":"2026-08-03T12:50:03.381749Z","times_seen":2272,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/67b4301f3812ff19107c7949/1ikbtnvah","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"b39698b2ebb2687664b3462d1f2c6846","sha1":"061af97210f16b30284b006021d0c32841c173bc","sha256":"0fdfeb3fa8a634a3566d5bdbb6bdce6ea13842f444874007e17efa55dda8af73","sha512":"b5951bead6f975ed23c3632c65e87fc85abd008e95cdc1d286bde3496bcfd75b7ef9a97c61acb8ef58984ccf607fe8c43f77715c0894f6f2b5e4ff2cd00c136f","ssdeep":"","tlshash":"0741f0db5f4f1862d22420d84caef98eb47b72e645d85c968708041173657ad2a8ee3f","size":2123,"data":"","first_seen":"2026-07-27T06:02:19.035955Z","last_seen":"2026-07-27T09:07:02.797259Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-vendors.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2fecc9d90ae6ad7f85d676e274e5d4a5","sha1":"0e1300fb36969ed28db617c9bba0c8d0bff72c8e","sha256":"db389f4bb5872ace6ade114d9a15d1afc02e7d411680f6f98fa5a350b0b4ee5c","sha512":"e5fe2e55710dccb04046bf588c1cdfd27a153447b5a8f818af6e4f536abc89f4e38f242c117a4a6f2214a017653008272075811e9a40a5718a08b3900ecd71a0","ssdeep":"6144:jzicBg7MOpWK+1ZWwehNo4TR+5Ar6k+WS:nicBgoO27WwKvC","tlshash":"39744cc8f193b0b946e2a2a5009f5207737b052968e88494f574dfe968e8d5c637bf3c","size":348923,"data":"","first_seen":"2026-05-25T09:57:47.440233Z","last_seen":"2026-08-03T13:22:13.511279Z","times_seen":9182,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/js/main.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"739e42cd4bb64b01b9cb6025a6644e43","sha1":"49f26a687bca39a1393ef17f4a59928d7b415777","sha256":"9d6dece0592184e2e73f681bbadffddea6b6961b20e92776fec820b059e6faf3","sha512":"d37678e10d8f1fb935e91068b620bc0de1e53b37fc265c7dea394aae8811b6a6a9eaa150dfb0bf5667a9817420f27ea5f6797640b3f45293eb34ba4342308d80","ssdeep":"96:aGlxOyNNYbwY1Y0YXYqEzCEgYYYN9f7VOfuU:B9NErT8fl","tlshash":"77812112f10c32bec0ef23a4d03ef706aa6cc035d61345b5fcad44a88499f9e27919e9","size":4185,"data":"","first_seen":"2025-12-19T04:10:19.015247Z","last_seen":"2026-07-30T06:02:32.58888Z","times_seen":12,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/iziToast.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"introduction_type":"scriptElement","is_inline":false,"md5":"df383d4feeb05ea8bfe86a0569ef0524","sha1":"c6fd53b0a4abc2b73f55025ecb28d2eb65db93d4","sha256":"df6d4fc52f8f3af6ef59c215a1165e4667f7daaedf4c5409db56d7c133564446","sha512":"66af68f84d34c61851ffbbc9e3d9b114d274290c351354cc5a43d3c6b59c9e97c41431178148b024720a8adf77116fd7c44df51d2239184396d3a1ba045d40b4","ssdeep":"384:9hKmhCPzlc5gVCPBpcG/0CEvXArKKpQi8VREgO3MrnHzxJBkHI4505P:3K5PzlcN8DXArhpQzRHO3M7TxfGIYUP","tlshash":"2582c894722032374aa329a960ff534a3772156ca9c641a4243fcdad5b34f8939f77f8","size":18486,"data":"","first_seen":"2023-03-07T12:01:52Z","last_seen":"2026-08-03T04:59:21.544906Z","times_seen":1970,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-main.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"da5bb1dc647470204df0e49f5afac2de","sha1":"f5cbf596ca5e4fe208e4c55af6e45b71f9febbe8","sha256":"705186becc9e0a306a6b4867ae2768aa9dd3b8c12393d9f9c52029e9a6fcf31c","sha512":"d9c0eda8c93df421f8147960ff4b00f8eacd8791b8386b020f04d0478c6b7a4328767a82b52b8cfbb7c3a44cb55cec488c2d1008670bee709d67d8bdbd887c39","ssdeep":"","tlshash":"d4b09b6c1057f86955e8064ed3b7f65d1d961050811104301658a1753321143c61c55b","size":121,"data":"","first_seen":"2023-03-07T01:02:45Z","last_seen":"2026-08-03T13:22:13.478428Z","times_seen":92463,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.jsdelivr.net/emojione/2.2.7/lib/js/emojione.min.js","fqdn":"cdn.jsdelivr.net","domain":"jsdelivr.net","tld":"net"},"ip":{"addr":"151.101.193.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"7bb7aac0cac89a90304af1c72eb4f50d","sha1":"729f6f8ca5787d89743b0ed7eb27fd76406bf985","sha256":"f5c06455e539dcd889f7f05d709b5adc76c444099fe57f431365af2fc57e803b","sha512":"ed26bf873a3c5b2e48d8b3c955240a46d8f7d7f3c635ab138179b999dbadc77802285879cb1a833f703059762c346066090a9a740bfe881f56d6d95f2dca7f30","ssdeep":"1536:Q/drlyiQh7fh7RqgwkMTyDUV6HeAIDgI9IKQ/d2ffWifiIzQFBSob5/ove:Q/drlyogMVc6FIKV+ZLBSob5l","tlshash":"59546c7a87606deeea94d02d86db374af58c3c0453ed1266b66482cb27f543a33487dc","size":302554,"data":"","first_seen":"2023-04-05T07:49:38Z","last_seen":"2026-08-03T12:16:53.28241Z","times_seen":51143,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"warn","text":"\nIt looks like you're using the development build of the Firebase JS SDK.\nWhen deploying Firebase apps to production, it is advisable to only import\nthe individual SDK components you intend to use.\n\nFor the CDN builds, these are available in the following manner\n(replace \u003cPACKAGE\u003e with the name of a component - i.e. auth, database, etc):\n\nhttps://www.gstatic.com/firebasejs/5.0.0/firebase-\u003cPACKAGE\u003e.js\n","filename":"https://profx.io/assets/global/js/firebase/firebase-8.3.2.js","line_number":1,"column_number":859387}]},"http":[{"url":{"schema":"https","addr":"profx.io/assets/images/frontend/preloader/67b42762adad61739859810.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.854Z","timestamp":1785143153854,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/frontend/preloader/67b42762adad61739859810.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 06:23:30 GMT\r\netag: \"2bf-67b42762-b6fa6af7924295f3;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 703\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":703,"size_decoded":1097,"mime_type":"image/png","magic":"PNG image data, 25 x 25, 8-bit/color RGBA, non-interlaced","md5":"6ec8a5bb84e201d9c8a5d58054225991","sha1":"d9bfde261ef7bf4b5dd005cf26137dd3ea203418","sha256":"0b04dc6dc4384b86994d38298e7c18104f6f3c83daf9280925eeaa4471cc79a0","sha512":"f2677b3934fc9008e9380a1e38daaf50a8904d72fb82998d1244f80d67ded588b5adbc4b79cc5d86d7e3f7bc3d19437263b44b7e54c1d8082f9decb58233653f","ssdeep":"","tlshash":"1b0194f2b74ba89cb504fc02c31432491b528d9025a3af3a2b6ad05007c9cd09180d86","first_seen":"2025-12-19T04:10:19.020561Z","last_seen":"2026-07-27T09:07:02.803375Z","times_seen":5,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACcUlEQVRIie1WvWsUURD/zby3d5e7+BE10UIxVYrYWQgJqWwkqIGghRjFwkYQtBaJ3nkipFDBf0AQ7AQJgjEGPxGxsFPB4vwgBItwIWKS+9jdN2Nxt9lNLoWF6e7B230z+2N+v5l57HukqtjswZvO0CZpk7RJ2iT/f9h04WmfEJ1sEMY/S2q+FYSkHwmEkfBjLX/8Wef44966lzkFwCKBN+K+1vLHHhHfmB4R4snWEBFJ9FzrIRBIZTlXX+iupLpmHNuh1hgKL6wMWIIKq9Za1BJlBARWqSWDR0KVkBLiTrG5HUrcT1AhVX81ESIrICucOUiqit6rD61HgMcNtQEEP2zPK8c8tMef37KVtMYgUJMnVEEpvfuNggazrrKvxplPBJ3f78oHIj0/ve4zAr5v1F20ADDbsVNaUo0CkpGS2S7KyUxpdZU89L7lx8JozcUZiWDWFqdHQKalJ0oEAmD9KlO2K1Bwy04kAEaCEKZj/aemygYLKwjxRGIqSNxctrpUa9gEJLBQAqubTS2V5zfefU2xAGxkGHUvCfIu0V/H4j83zXKwyi+rwYOAUpeUKGs0fO+F9XMLdy+IKU6vKWGzFE2XxiQAXgTjw7fWK+m7fM82ste5+rWjV7zC1GJovAlHpt+DLCegqUx+sj8y2KT3OlgQKCb51ztLrlK+s5zrOeHYHPJt5jaAMYBCR9zrbPZLjGxkRqohEygyN466zv174myYCirnWdUXsqfT158cZg3fxmBC3HDxvaD62hqEH1T5iNGgtBGHpyIGbphV/0S+SnH0s1eYGlDmXWRMObeyOFbNbht07FnSuB2peuX7ys3R0l8vfg6NLOiI3gAAAABJRU5ErkJggg=="}},"time_used":100,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":57,"receive":43,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/user_rankings/67b43698e2af01739863704.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.864Z","timestamp":1785143153864,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/user_rankings/67b43698e2af01739863704.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 07:28:24 GMT\r\netag: \"3c35-67b43698-c51069d9cd55034c;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 15413\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":15413,"size_decoded":15810,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"d9a8ab9525c1841120853932603b4b52","sha1":"26d4c64c8cf335854b684cf55bc0ec5f690c9d16","sha256":"9037715c4d4f78b45d8eb8fed9d8c9c161796efc0bb10dc8cf72291bbbd6e459","sha512":"6725dfc63e2c98c8b83674c04312bcc8a0dfa7c8379f5e91f0bfc0461a7ce34f2f61d226568189b0b0782a6b92094207316e45a3441c8f2ca7c2ada60cf6df33","ssdeep":"384:30WhMutLnKDnG6N8zhBQrHlO57iq3HY/pZpEnt:/hjt7KDG6N8zh6rHlWi0HYHwt","tlshash":"1162d1aa872a431bbd8c1325e1e7031eb51519f7fc51c07b6ed6445a7bf4884e156e01","first_seen":"2025-09-30T11:01:26.448271Z","last_seen":"2026-07-27T12:18:57.807071Z","times_seen":16,"resource_available":false,"data":"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"}},"time_used":115,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":114,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/user_rankings/67b436d2307631739863762.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.865Z","timestamp":1785143153865,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/user_rankings/67b436d2307631739863762.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 07:29:22 GMT\r\netag: \"3c92-67b436d2-957f68abfc2e2cae;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 15506\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":15506,"size_decoded":15903,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"e79b1911f7178f20cdd3e35ede07990f","sha1":"04d3148786c4ea5487f3bc97cb370b2250433718","sha256":"610a11274e62c244bf4e762d00e1b4c6cf48a7a334ce81435ce7826870e9cf1b","sha512":"565918f75ed278499536fa9a06bcb559d40924b3648d9a2c7ab51b7ae07aad34994fc702d706be5b4283008d6d46ca9923e064f6ac5913e5e12513a231666572","ssdeep":"192:8c6bbYPpiPe8sxLBkPD/M43QCKEZwAh4uttLuya3Jl3Dx+pmcRe7ZKpdjr:Mf4pn5wbfnKSwY4utEyaZlBgv","tlshash":"6362d193c95690e6f232ef48436cb5191913b56fb796c971c303a72cb27be792479820","first_seen":"2025-09-30T11:01:26.469884Z","last_seen":"2026-07-27T12:18:57.7635Z","times_seen":16,"resource_available":false,"data":"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"}},"time_used":117,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":113,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/branding-widget.css","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.439Z","timestamp":1785143155439,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/css/branding-widget.css HTTP/1.1\r\nHost: embed.tawk.to\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\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: text/css\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"fe979c92a5ad992510e5629b84a23526\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591653\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c3189980883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":19329,"size_decoded":4801,"mime_type":"text/css","magic":"ASCII text, with very long lines (19281)","md5":"fe979c92a5ad992510e5629b84a23526","sha1":"4fee6cd9de53fa82feef4042aa83202f4cd194a5","sha256":"de84306c96c98314e1a796f26df99a70f20590c535a678215d89560007b4dacf","sha512":"633913cef35247da29e85dde7c279353761606e6c508690d4d5924aa89f563354e44c51b053f785800fd3b599feb8fd2d69a2fe55162b4ccab95c84f8ed8739d","ssdeep":"192:XeI2u2acuBLZNgxYe4fbfYLFFDw25lYVRgtUramxi71NZcFRKV7:uTTacuVZNgxYe4fbgL3w23U3xi7vD1","tlshash":"af92dca3b9e310dcd557c632c0d1f67ca82f9a24c357c6e3a9037bb986827d7264198c","first_seen":"2025-05-21T12:18:34.239407Z","last_seen":"2026-08-03T12:50:03.366769Z","times_seen":38540,"resource_available":false,"data":"OnJvb3R7LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7LS10YXdrLWhlYWRlci10ZXh0LWNvbG9yOiNmZmZ9aHRtbHtmb250LWZhbWlseTpMYXRvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNjE4O2xldHRlci1zcGFjaW5nOm5vcm1hbDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMyNDI0MjQ7c2Nyb2xsLWJlaGF2aW9yOnNtb290aH1ib2R5e21hcmdpbjowfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZTpub25lfWE6Zm9jdXN7b3V0bGluZToxcHggc29saWQgIzA2Zn0udGF3ay1saW5rLGF7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stbGluaywudGF3ay1saW5rOmhvdmVyLGEsYTpob3Zlcntjb2xvcjojMDNhODRlO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfTpub3QocHJlKT5jb2RlLDpub3QocHJlKT5rYmQsOm5vdChwcmUpPnNhbXB7Zm9udC1mYW1pbHk6TGF0byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODEycmVtO2NvbG9yOiNiZjEyMTI7d2hpdGUtc3BhY2U6bm93cmFwfWVte2NvbG9yOiNiZjEyMTJ9aW5ze2JhY2tncm91bmQ6I2ZmZDtjb2xvcjojMTIxMjEyfW1hcmt7YmFja2dyb3VuZDpyZ2JhKDEwOSw1NSwyMTgsLjEpO2NvbG9yOiMwM2E4NGV9cXtmb250LXN0eWxlOml0YWxpY31zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1cHt0b3A6LS41ZW19c3Vie2JvdHRvbTouMjVlbX1hdWRpbyxjYW52YXMsaWZyYW1lLGltZyxzdmcsdmlkZW97dmVydGljYWwtYWxpZ246bWlkZGxlfWF1ZGlvLGNhbnZhcyxpbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87Ym94LXNpemluZzpib3JkZXItYm94fXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1pbWc6bm90KFtzcmNdKXt2aXNpYmlsaXR5OmhpZGRlbn1hZGRyZXNzLGRsLGZpZWxkc2V0LGZpZ3VyZSxvbCxwLHByZSx1bHttYXJnaW46MH0qK2FkZHJlc3MsKitkbCwqK2ZpZWxkc2V0LCorZmlndXJlLCorb2wsKitwLCorcHJlLCordWx7bWFyZ2luLXRvcDowfSorLnRhd2staDEsKisudGF3ay1oMiwqKy50YXdrLWgzLCorLnRhd2staDQsKisudGF3ay1oNSwqKy50YXdrLWg2LCoraDEsKitoMiwqK2gzLCoraDQsKitoNSwqK2g2e21hcmdpbi10b3A6MS41cmVtfS50YXdrLWgxLGgxe2ZvbnQtc2l6ZToxLjdyZW07bGluZS1oZWlnaHQ6MS4yfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjI3NXJlbTtsaW5lLWhlaWdodDoxLjM7Zm9udC13ZWlnaHQ6NDAwfS50YXdrLWgzLGgze2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo0MDB9LnRhd2staDQsaDR7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS40fS50YXdrLWg1LGg1e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNH0udGF3ay1oNixoNntmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjR9QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWgxLGgxe2ZvbnQtc2l6ZToycmVtfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjVyZW19fW9sLHVse3BhZGRpbmctbGVmdDoycmVtfW9sPmxpPm9sLG9sPmxpPnVsLHVsPmxpPm9sLHVsPmxpPnVse21hcmdpbi10b3A6MH1kdHtmb250LXdlaWdodDo4MDB9ZGR7bWFyZ2luLWxlZnQ6MH0udGF3ay1ocixocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGU7dGV4dC1hbGlnbjppbmhlcml0O21hcmdpbjowIDAgMXJlbTtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1fSorLnRhd2staHIsKitocnttYXJnaW4tdG9wOjFyZW19LnRhd2staHIudGF3ay1oci1kYXNoZWR7Ym9yZGVyLXN0eWxlOmRhc2hlZH1hZGRyZXNze2ZvbnQtc2l6ZTpub3JtYWx9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtc3R5bGU6aXRhbGljfSorYmxvY2txdW90ZXttYXJnaW4tdG9wOjFyZW19YmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjB9YmxvY2txdW90ZSBmb290ZXJ7bWFyZ2luLXRvcDouNnJlbTtmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjV9cHJle2ZvbnQ6LjgxMnJlbS8xLjUgTGF0byxzYW5zLXNlcmlmO2NvbG9yOiMxMjEyMTI7LW1vei10YWItc2l6ZTo0Oy1vLXRhYi1zaXplOjQ7dGFiLXNpemU6NDtvdmVyZmxvdzphdXRvfXByZSBjb2Rle2ZvbnQtZmFtaWx5OkxhdG8sc2Fucy1zZXJpZn06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6IzAzYTg0ZTtjb2xvcjojZmZmO3RleHQtc2hhZG93Om5vbmV9OjpzZWxlY3Rpb257YmFja2dyb3VuZDojMDNhODRlO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6bm9uZX1kZXRhaWxzLG1haW57ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1pZnJhbWV7Ym9yZGVyOjB9LnRhd2stZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS50YXdrLWZsZXgtaW5saW5le2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9LnRhd2stZmxleC1pbmxpbmU6YWZ0ZXIsLnRhd2stZmxleC1pbmxpbmU6YmVmb3JlLC50YXdrLWZsZXg6YWZ0ZXIsLnRhd2stZmxleDpiZWZvcmV7ZGlzcGxheTpub25lfS50YXdrLWZsZXgtbGVmdHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay1mbGV4LWxlZnRcQHN7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAc3stbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQHN7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAc3stbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHN7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtbGVmdFxAbXstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBtey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbXstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBtey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbXstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLWZsZXgtbGVmdFxAbHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBsey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBsey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLWZsZXgtbGVmdFxAeGx7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAeGx7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1mbGV4LXJpZ2h0XEB4bHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEB4bHstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHhsey1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfX0udGF3ay1mbGV4LXN0cmV0Y2h7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS50YXdrLWZsZXgtdG9wey1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnRhd2stZmxleC1taWRkbGV7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0udGF3ay1mbGV4LWJvdHRvbXstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9LnRhd2stZmxleC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnRhd2stZmxleC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LnRhd2stZmxleC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnRhd2stZmxleC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9LnRhd2stZmxleC1ub3dyYXB7LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0udGF3ay1mbGV4LXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS50YXdrLWZsZXgtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9LnRhd2stZmxleC13cmFwLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2g7YWxpZ24tY29udGVudDpzdHJldGNofS50YXdrLWZsZXgtd3JhcC10b3B7LW1zLWZsZXgtbGluZS1wYWNrOnN0YXJ0O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LXdyYXAtbWlkZGxley1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC13cmFwLWJvdHRvbXstbXMtZmxleC1saW5lLXBhY2s6ZW5kO2FsaWduLWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC13cmFwLWJldHdlZW57LW1zLWZsZXgtbGluZS1wYWNrOmp1c3RpZnk7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtd3JhcC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9LnRhd2stZmxleC1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3R7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NDBweCl7LnRhd2stZmxleC1maXJzdFxAc3stbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHN7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtZmlyc3RcQG17LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBtey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCl7LnRhd2stZmxleC1maXJzdFxAbHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQGx7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsudGF3ay1mbGV4LWZpcnN0XEB4bHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHhsey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX0udGF3ay1mbGV4LW5vbmV7LW1zLWZsZXg6bm9uZTtmbGV4Om5vbmV9LnRhd2stZmxleC1hdXRvey1tcy1mbGV4OmF1dG87ZmxleDphdXRvfS50YXdrLWZsZXgtMXstbXMtZmxleDoxO2ZsZXg6MX0udGF3ay1tYXJnaW57bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLC50YXdrLW1hcmdpbi10b3B7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1ib3R0b217bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sZWZ0e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbHttYXJnaW4tYm90dG9tOi42cmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14c21hbGwsLnRhd2stbWFyZ2luLXhzbWFsbC10b3B7bWFyZ2luLXRvcDouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b217bWFyZ2luLWJvdHRvbTouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0e21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tc21hbGx7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi1zbWFsbCwudGF3ay1tYXJnaW4tc21hbGwtdG9we21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXNtYWxsLWJvdHRvbXttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1sZWZ0e21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLXNtYWxsLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcnRsIC50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLW1lZGl1bSwudGF3ay1tYXJnaW4tbWVkaXVtLXRvcHttYXJnaW4tdG9wOjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1tZWRpdW0tYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbWVkaXVtLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1tZWRpdW0tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLWxhcmdlLC50YXdrLW1hcmdpbi1sYXJnZS10b3B7bWFyZ2luLXRvcDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbGFyZ2UtYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4tbGFyZ2UsLnRhd2stbWFyZ2luLWxhcmdlLXRvcHttYXJnaW4tdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoyLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXhsYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4teGxhcmdlLC50YXdrLW1hcmdpbi14bGFyZ2UtdG9we21hcmdpbi10b3A6Mi41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi14bGFyZ2V7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14bGFyZ2UsLnRhd2stbWFyZ2luLXhsYXJnZS10b3B7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXJlbW92ZXttYXJnaW46MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS10b3B7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWJvdHRvbXttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDowIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS1yaWdodHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLXZlcnRpY2Fse21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWFkamFjZW50Kyp7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tdG9we21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tYm90dG9te21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLWxlZnR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0by12ZXJ0aWNhbHttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stcGFkZGluZ3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctdG9we3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGVmdHtwYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1ib3R0b217cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yaWdodHtwYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay1wYWRkaW5ne3BhZGRpbmc6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy10b3B7cGFkZGluZy10b3A6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sZWZ0e3BhZGRpbmctbGVmdDoycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWJvdHRvbXtwYWRkaW5nLWJvdHRvbToycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MnJlbSFpbXBvcnRhbnR9fS50YXdrLXBhZGRpbmctc21hbGx7cGFkZGluZzouNnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1zbWFsbC10b3B7cGFkZGluZy10b3A6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtbGVmdHtwYWRkaW5nLWxlZnQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtYm90dG9te3BhZGRpbmctYm90dG9tOi42cmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXNtYWxsLXJpZ2h0e3BhZGRpbmctcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLXRvcHtwYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLWxlZnR7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtcmlnaHR7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtdG9we3BhZGRpbmctdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1sZWZ0e3BhZGRpbmctbGVmdDoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1yaWdodHtwYWRkaW5nLXRvcDoyLjVyZW0haW1wb3J0YW50fX0udGF3ay1wYWRkaW5nLXJlbW92ZXtwYWRkaW5nOjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXRvcHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ib3R0b217cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yZW1vdmUtbGVmdHtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1sZWZ0e3BhZGRpbmctbGVmdDphdXRvIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1yaWdodHtwYWRkaW5nLXJpZ2h0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFse3BhZGRpbmctbGVmdDowIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXRleHQtcmVndWxhci0xe2ZvbnQtc2l6ZTouNzVyZW19LnRhd2stdGV4dC1yZWd1bGFyLTEsLnRhd2stdGV4dC1yZWd1bGFyLTJ7bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1yZWd1bGFyLTJ7Zm9udC1zaXplOi44MTJyZW19LnRhd2stdGV4dC1yZWd1bGFyLTN7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTEsLnRhd2stdGV4dC1yZWd1bGFyLTR7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTJ7Zm9udC1zaXplOjEuMjVyZW19LnRhd2stdGV4dC1ib2xkLTIsLnRhd2stdGV4dC1ib2xkLTN7bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtYm9sZC0ze2ZvbnQtc2l6ZToxLjVyZW19LnRhd2stdGV4dC1ib2xkLTR7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtZ3JlZW4tMXtjb2xvcjojMDNhODRlIWltcG9ydGFudH0udGF3ay10ZXh0LXllbGxvdy0xe2NvbG9yOiNmZGMyMGYhaW1wb3J0YW50fS50YXdrLXRleHQtcmVkLTF7Y29sb3I6I2JmMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTB7Y29sb3I6IzI0MjQyNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTF7Y29sb3I6IzEyMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTJ7Y29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTN7Y29sb3I6IzU0NTQ1NCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTR7Y29sb3I6IzZlNmU2ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTV7Y29sb3I6IzgyODI4MiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTZ7Y29sb3I6I2IyYjJiMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTd7Y29sb3I6I2Q0ZDRkNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTh7Y29sb3I6I2U1ZTVlNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTl7Y29sb3I6I2Y1ZjVmNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTEwe2NvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS50YXdrLXRleHQtd2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ib2xke2ZvbnQtd2VpZ2h0OjYwMH0udGF3ay10ZXh0LWl0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGF3ay10ZXh0LW9ibGlxdWV7Zm9udC1zdHlsZTpvYmxpcXVlfS50YXdrLXRleHQtdW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stdGV4dC11cHBlcmNhc2V7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1sb3dlcmNhc2V7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGF3ay10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay10ZXh0LWxlZnRcQHN7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBzLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBze3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAc3t0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBze3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCl7LnRhd2stdGV4dC1sZWZ0XEBte3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1yaWdodFxAbSxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAbXt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLXRleHQtcmlnaHRcQG17dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LWNlbnRlclxAbXt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay10ZXh0LWxlZnRcQGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBsLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBse3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAbHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBse3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEB4bCxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEB4bHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEB4bHt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fS50YXdrLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRvcCFpbXBvcnRhbnR9LnRhd2stdGV4dC1taWRkbGV7dmVydGljYWwtYWxpZ246bWlkZGxlIWltcG9ydGFudH0udGF3ay10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS50YXdrLXRleHQtYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS50YXdrLXRleHQtbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1ib3gtc2hhZG93LXhzbWFsbHtib3gtc2hhZG93OjAgMnB4IDNweCByZ2JhKDAsMCwwLC4wOCl9LnRhd2stYm94LXNoYWRvdy1zbWFsbHtib3gtc2hhZG93OjAgMnB4IDhweCByZ2JhKDAsMCwwLC4xKX0udGF3ay1ib3gtc2hhZG93LW1lZGl1bXtib3gtc2hhZG93OjAgNXB4IDE1cHggcmdiYSgwLDAsMCwuMTIpfS50YXdrLWJveC1zaGFkb3ctbGFyZ2V7Ym94LXNoYWRvdzowIDE0cHggMjVweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stYm94LXNoYWRvdy14bGFyZ2V7Ym94LXNoYWRvdzowIDI4cHggNTBweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stdGV4dC10cnVuY2F0ZXttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS50YXdrLWZsb2F0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stZmxvYXQtbGVmdHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1mbG9hdC1yaWdodHtmbG9hdDpsZWZ0IWltcG9ydGFudH0udGF3ay1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YXdrLW91dGxpbmU6Zm9jdXMtdmlzaWJsZXtib3JkZXI6MXB4IHNvbGlkICMwNmYhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KSFpbXBvcnRhbnR9YWJicixhZGRyZXNzLGFydGljbGUsYXNpZGUsYXVkaW8sYixibG9ja3F1b3RlLGJvZHksY2FudmFzLGNhcHRpb24sY2l0ZSxjb2RlLGRkLGRlbCxkZXRhaWxzLGRmbixkaXYsZGwsZHQsZW0sZmllbGRzZXQsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGZvcm0saDEsaDIsaDMsaDQsaDUsaDYsaGVhZGVyLGhncm91cCxodG1sLGksaWZyYW1lLGltZyxpbnMsa2JkLGxhYmVsLGxlZ2VuZCxsaSxtYXJrLG1lbnUsbmF2LG9iamVjdCxvbCxwLHByZSxxLHNhbXAsc2VjdGlvbixzbWFsbCxzcGFuLHN0cm9uZyxzdWIsc3VtbWFyeSxzdXAsdGFibGUsdGJvZHksdGQsdGZvb3QsdGgsdGhlYWQsdGltZSx0cix1bCx2YXIsdmlkZW97bWFyZ2luOjA7cGFkZGluZzowO2JvcmRlcjowO291dGxpbmU6MDtmb250LXNpemU6MTAwJTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dvcmQtYnJlYWs6YnJlYWstd29yZH1ib2R5e2xpbmUtaGVpZ2h0OjF9Ym9keS5mb250LWxhdG97Zm9udC1mYW1pbHk6TGF0byxPcGVuIFNhbnMsc2Fucy1zZXJpZiFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bHtkaXJlY3Rpb246cnRsO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6MTAyNHB4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjIycHghaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo0ODFweCkgYW5kIChtYXgtd2lkdGg6NzY3cHgpe2JvZHkudGF3ay1tb2JpbGUsaHRtbC50YXdrLW1vYmlsZXtmb250LXNpemU6MThweCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjQ4MHB4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjE4cHghaW1wb3J0YW50fX0qe2ZvbnQtZmFtaWx5OmluaGVyaXR9YXJ0aWNsZSxhc2lkZSxkZXRhaWxzLGZpZ2NhcHRpb24sZmlndXJlLGZvb3RlcixoZWFkZXIsaGdyb3VwLG1lbnUsbmF2LHNlY3Rpb257ZGlzcGxheTpibG9ja31uYXYgdWx7bGlzdC1zdHlsZTpub25lfWJsb2NrcXVvdGUscXtxdW90ZXM6bm9uZX1ibG9ja3F1b3RlOmFmdGVyLGJsb2NrcXVvdGU6YmVmb3JlLHE6YWZ0ZXIscTpiZWZvcmV7Y29udGVudDoiIjtjb250ZW50Om5vbmV9YXttYXJnaW46MDtwYWRkaW5nOjA7Zm9udC1zaXplOjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1pbnN7dGV4dC1kZWNvcmF0aW9uOm5vbmV9aW5zLG1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmY5O2NvbG9yOiMwMDB9bWFya3tmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDo3MDB9ZGVse3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2h9YWJiclt0aXRsZV0sZGZuW3RpdGxlXXtib3JkZXItYm90dG9tOjFweCBkb3R0ZWQ7Y3Vyc29yOmhlbHB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9aHJ7ZGlzcGxheTpibG9jaztoZWlnaHQ6MXB4O2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkICNjY2M7bWFyZ2luOjFlbSAwO3BhZGRpbmc6MH1pbnB1dCxzZWxlY3R7dmVydGljYWwtYWxpZ246bWlkZGxlfWJvZHksaHRtbHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7bGluZS1oZWlnaHQ6MTtwb3NpdGlvbjpyZWxhdGl2ZTtmb250OjQwMCAxNnB4IEhlbHZldGljYSxzYW5zLXNlcmlmIWltcG9ydGFudH1ib2R5LmZvbnQtbGF0byxodG1sLmZvbnQtbGF0b3tmb250OjQwMCAxNnB4IExhdG8sc2Fucy1zZXJpZiFpbXBvcnRhbnR9LmNsZWFye2NsZWFyOmJvdGh9LmNsZWFyZml4OmFmdGVye3Zpc2liaWxpdHk6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjA7Y29udGVudDoiICI7Y2xlYXI6Ym90aDtoZWlnaHQ6MH0uY2xlYXJmaXh7ZGlzcGxheTppbmxpbmUtYmxvY2t9KiBodG1sIC5jbGVhcmZpeHtoZWlnaHQ6MSV9LmNsZWFyZml4e2Rpc3BsYXk6YmxvY2t9CgovKiMgc291cmNlTWFwcGluZ1VSTD1icmFuZGluZy13aWRnZXQuY3NzLm1hcCov"}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T09:05:53.077Z","timestamp":1785143153077,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-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\nx-powered-by: PHP/8.3.31\r\ncontent-type: text/html; charset=UTF-8\r\ncache-control: no-cache, private\r\nset-cookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; expires=Mon, 27 Jul 2026 11:05:53 GMT; Max-Age=7200; path=/; secure; samesite=lax\nlaravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos; expires=Mon, 27 Jul 2026 11:05:53 GMT; Max-Age=7200; path=/; secure; httponly; samesite=lax\r\ncontent-length: 16074\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"WOW","description":"Reveal CSS animation as you scroll down a page.","website":"https://www.delac.io/WOW","common_platform_enumeration":"","icon":"","categories":["JavaScript frameworks","Web frameworks","JavaScript graphics"]},{"name":"Google Analytics","description":"Google Analytics is a free web analytics service that tracks and reports website traffic.","website":"https://google.com/analytics","common_platform_enumeration":"","icon":"Google Analytics.svg","categories":["Analytics"]},{"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":"Bootstrap","description":"Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.","website":"https://getbootstrap.com","common_platform_enumeration":"cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*","icon":"Bootstrap.svg","categories":["UI frameworks"]},{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"name":"Select2","description":"Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.","website":"https://select2.org/","common_platform_enumeration":"","icon":"Select2.png","categories":["JavaScript libraries"]},{"name":"PHP:8.3.31","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"Slick","description":"","website":"https://kenwheeler.github.io/slick","common_platform_enumeration":"","icon":"Slick.svg","categories":["JavaScript libraries"]},{"name":"jQuery:3.7.1","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]}],"data":{"size":69795,"size_decoded":16897,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (397), with CRLF, LF line terminators","md5":"776c2caea7a2f926242e563044995226","sha1":"11a47e35e487a7643ff82080fd673db05f389953","sha256":"31bdf769f48217df37e67e0b20751520abe14848271b8a482411492499b7ec5f","sha512":"2b258f7f2875906c318ff230d0f6b7e9d24d572f3a27dd02d7def742858df84602d52afa750940a456834339cf13830736edc76cc06dbe570f97f8e7a1993505","ssdeep":"384:x+NvirURe+do62y1pdqc+FW1xtVxUYrlpOpaMkWJvzi8p2LTgFeu:xivGURZT2y1pIPgtVxJrLM7tELTgFF","tlshash":"c6637235a0f5202241b390d27bba5b09efa6e107ca5b820476ec0be91ff3d46cd57a5d","first_seen":"2026-07-27T09:06:29.071322Z","last_seen":"2026-07-27T09:06:29.071322Z","times_seen":1,"resource_available":false,"data":"PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL1dlYlBhZ2UiPgoKPGhlYWQ+CiAgICA8IS0tIFJlcXVpcmVkIG1ldGEgdGFncyAtLT4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgc2hyaW5rLXRvLWZpdD1ubyI+CiAgICA8dGl0bGU+IFByb0ZYLmlvIC0gSG9tZTwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJ0aXRsZSIgQ29udGVudD0iUHJvRlguaW8gLSBIb21lIj4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJJbnZlc3Qgd2l0aCBQcm9GWC5pbyBhbmQgZWFybiBmaXhlZCBkYWlseSByZXR1cm5zIHRocm91Z2ggYXV0b21hdGVkIGZvcmV4IGFuZCBjcnlwdG8gdHJhZGluZy4gU2VjdXJlLCB0cmFuc3BhcmVudCwgYW5kIHByb2ZpdGFibGUgc2luY2UgMjAyMC4gSm9pbiBub3cgYW5kIHN0YXJ0IGdlbmVyYXRpbmcgcGFzc2l2ZSBpbmNvbWUgZWZmb3J0bGVzc2x5ISI+CiAgICA8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iRm9yZXggdHJhZGluZyBpbnZlc3RtZW50LGNyeXB0byB0cmFkaW5nIHByb2ZpdHMsZGFpbHkgUk9JIGludmVzdG1lbnQsYXV0b21hdGVkIGZvcmV4IHRyYWRpbmcsc2VjdXJlIGludmVzdG1lbnQgcGxhdGZvcm0scGFzc2l2ZSBpbmNvbWUgZnJvbSB0cmFkaW5nLGhpZ2ggcmV0dXJuIGludmVzdG1lbnQsb25saW5lIHRyYWRpbmcgcGxhdGZvcm0sYmVzdCBmb3JleCBpbnZlc3RtZW50IDIwMjQiPgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvbG9nb19pY29uL2Zhdmljb24ucG5nIiB0eXBlPSJpbWFnZS94LWljb24iPgoKICAgIAogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvbG9nb19pY29uL2xvZ28ucG5nIj4KICAgIDxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyI+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1zdGF0dXMtYmFyLXN0eWxlIiBjb250ZW50PSJibGFjayI+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC10aXRsZSIgY29udGVudD0iUHJvRlguaW8gLSBIb21lIj4KICAgIAogICAgPG1ldGEgaXRlbXByb3A9Im5hbWUiIGNvbnRlbnQ9IlByb0ZYLmlvIC0gSG9tZSI+CiAgICA8bWV0YSBpdGVtcHJvcD0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IkludmVzdCB3aXRoIFByb0ZYLmlvIGFuZCBlYXJuIGZpeGVkIGRhaWx5IHJldHVybnMgdGhyb3VnaCBhdXRvbWF0ZWQgZm9yZXggYW5kIGNyeXB0byB0cmFkaW5nLiBTZWN1cmUsIHRyYW5zcGFyZW50LCBhbmQgcHJvZml0YWJsZSBzaW5jZSAyMDIwLiBKb2luIG5vdyBhbmQgc3RhcnQgZ2VuZXJhdGluZyBwYXNzaXZlIGluY29tZSBlZmZvcnRsZXNzbHkhIj4KICAgIDxtZXRhIGl0ZW1wcm9wPSJpbWFnZSIgY29udGVudD0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL3Nlby82N2I0Mjg5OWYxYmQ2MTczOTg2MDEyMS5wbmciPgogICAgCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSI+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IkVhcm4gRGFpbHkgUHJvZml0cyB3aXRoIEF1dG9tYXRlZCBGb3JleCAmYW1wOyBDcnlwdG8gVHJhZGluZyEiPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJMb29raW5nIGZvciBhIHNlY3VyZSB3YXkgdG8gZ3JvdyB5b3VyIG1vbmV5PyBQcm9GWC5pbyBvZmZlcnMgYXV0b21hdGVkIGZvcmV4IGFuZCBjcnlwdG8gdHJhZGluZywgcHJvdmlkaW5nIGZpeGVkIGRhaWx5IHJldHVybnMuIFN0YXJ0IHlvdXIgaW52ZXN0bWVudCBqb3VybmV5IHRvZGF5IGFuZCBlbmpveSBwYXNzaXZlIGluY29tZSB3aXRoIGVhc2UhJnF1b3Q7Ij4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL3Nlby82N2I0Mjg5OWYxYmQ2MTczOTg2MDEyMS5wbmciPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlOnR5cGUiIGNvbnRlbnQ9ImltYWdlL3BuZyI+CiAgICAgICAgPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlOndpZHRoIiBjb250ZW50PSIxMTgwIj4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjYwMCI+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL3Byb2Z4LmlvIj4KICAgIAogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5X2xhcmdlX2ltYWdlIj4KICAgIDwhLS0gQm9vdHN0cmFwIENTUyAtLT4KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvZ2xvYmFsL2Nzcy9hbGwubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9jc3MvbGluZS1hd2Vzb21lLm1pbi5jc3MiIC8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9jc3Mvc2VsZWN0Mi5taW4uY3NzIj4KCgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy90ZW1wbGF0ZXMvbmVvX2RhcmsvY3NzL3ZlbmRvci9hbmltYXRlLmNzcyI+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL3RlbXBsYXRlcy9uZW9fZGFyay9jc3MvdmVuZG9yL25pY2Utc2VsZWN0LmNzcyI+CgogICAgPCEtLSBzbGljayBzbGlkZXIgY3NzIC0tPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy90ZW1wbGF0ZXMvbmVvX2RhcmsvY3NzL3ZlbmRvci9zbGljay5jc3MiPgoKICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvdGVtcGxhdGVzL25lb19kYXJrL2Nzcy9tYWluLmNzcyI+CiAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy90ZW1wbGF0ZXMvbmVvX2RhcmsvY3NzL2N1c3RvbS5jc3MiPgogICAgICAgIDxzdHlsZT4NCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyIHsNCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7DQogICAgICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50Ow0KICAgICAgICB9DQoNCiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHsNCiAgICAgICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlciB7DQogICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogNnB4Ow0KICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4Ow0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXJfd3JhcHBlciB7DQogICAgICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlcjo6YWZ0ZXIgew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdMaW5lIEF3ZXNvbWUgRnJlZSc7DQogICAgICAgICAgICBjb250ZW50OiAiXGYxMDciOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIG1hcmdpbjogMDsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgdG9wOiA1MCU7DQogICAgICAgICAgICByaWdodDogMDsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgMzUwbXM7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlIDM1MG1zOw0KICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgZWFzZSAzNTBtczsNCiAgICAgICAgfQ0KDQogICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlci5vcGVuOmFmdGVyIHsNCiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19jYXB0aW9uIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgICAgICAgIGdhcDogNHB4Ow0KICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7DQogICAgICAgIH0NCg0KICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2NhcHRpb24gLmljb24gew0KICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICAgICAgaGVpZ2h0OiAyMHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19jYXB0aW9uIC5pY29uIGltZyB7DQogICAgICAgICAgICBoZWlnaHQ6IDEwMCU7DQogICAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19jYXB0aW9uIC50ZXh0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgZmxleDogMTsNCiAgICAgICAgICAgIGNvbG9yOiAjZmZmOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7DQogICAgICAgIH0NCg0KICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2xpc3Qgew0KICAgICAgICAgICAgd2lkdGg6IDEwMHB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgICAgICAgICAgcGFkZGluZzogMDsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwNXB4Ow0KICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgYmFja2dyb3VuZDogIzAyMDE0YTsNCiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDEycHggMjRweCByZ2JhKDIxLCAxOCwgNTEsIDAuMTMpOw0KICAgICAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjE1cyBjdWJpYy1iZXppZXIoMC4yNSwgMCwgMC4yNSwgMS43NSksDQogICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBjdWJpYy1iZXppZXIoMC4yNSwgMCwgMC4yNSwgMS43NSksIG9wYWNpdHkgMC4xcyBsaW5lYXI7DQogICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44NSk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpOw0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsNCiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOw0KICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAxMHB4KTsNCiAgICAgICAgICAgIHotaW5kZXg6IC0xOw0KICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDQyOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkgLyAwLjMpOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19saXN0Ojotd2Via2l0LXNjcm9sbGJhciB7DQogICAgICAgICAgICB3aWR0aDogM3B4Ow0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7DQogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkgLyAwLjgpOw0KICAgICAgICB9DQoNCiAgICAgICAgLmxhbmd1YWdlX3N3aXRjaGVyX19saXN0IC50ZXh0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07DQogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOw0KICAgICAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgIH0NCg0KICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXIub3BlbiAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2xpc3Qgew0KICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgICAgICB6LWluZGV4OiAxOw0KICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlcl9faXRlbSBhIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIHBhZGRpbmc6IDVweDsNCiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2wodmFyKC0taGVhZGluZy1jb2xvcikgLyAwLjIpOw0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBnYXA6IDRweDsNCiAgICAgICAgfQ0KDQogICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlcl9faXRlbSBpbWcgew0KICAgICAgICAgICAgaGVpZ2h0OiAyMHB4Ow0KICAgICAgICAgICAgd2lkdGg6IDIwcHg7DQogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICAgICAgfQ0KDQogICAgICAgIC5sYW5ndWFnZV9zd2l0Y2hlcl9faXRlbTpsYXN0LW9mLXR5cGUgew0KICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsNCiAgICAgICAgfQ0KICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2l0ZW06aG92ZXIgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogaHNsKHZhcigtLWJhc2UpKTsNCiAgICAgICAgfQ0KICAgICAgICAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2l0ZW0uc2VsZWN0ZWQgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgzNiwgNjAsIDE4NywgMC4wMik7DQogICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsNCiAgICAgICAgfQ0KICAgIDwvc3R5bGU+DQoKICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvdGVtcGxhdGVzL25lb19kYXJrL2Nzcy9jb2xvci5waHA/Y29sb3I9NTJjYjYxIj4KPC9oZWFkPgoKPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0YWcvanM/aWQ9Ry1TVjU2SlcwREtYIj48L3NjcmlwdD4KICAgICAgICAgICAgICAgIDxzY3JpcHQ+CiAgICAgICAgICAgICAgICAgIHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdOwogICAgICAgICAgICAgICAgICBmdW5jdGlvbiBndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9CiAgICAgICAgICAgICAgICAgIGd0YWcoImpzIiwgbmV3IERhdGUoKSk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgZ3RhZygiY29uZmlnIiwgIkctU1Y1NkpXMERLWCIpOwogICAgICAgICAgICAgICAgPC9zY3JpcHQ+Cjxib2R5PgoKICAgIAogICAgPGRpdiBjbGFzcz0icHJlbG9hZGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwcmVsb2FkZXJfX2ltZ2VzIj4KICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy9mcm9udGVuZC9wcmVsb2FkZXIvNjdiNDI3NjJhZGFkNjE3Mzk4NTk4MTAucG5nIiBjbGFzcz0icHJlbG9hZGVyX19pbWcgaWNvbiIgYWx0PSJObyBJbWFnZSI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvZnJvbnRlbmQvcHJlbG9hZGVyLzY3YjQyNzYyYWVlOTYxNzM5ODU5ODEwLnBuZyIgY2xhc3M9InByZWxvYWRlcl9faW1nIG9uZSIgYWx0PSJObyBJbWFnZSI+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICAKICAgIAo8bWFpbiBjbGFzcz0iY29sb3ItdmVyc2lvbi1vbmUiPgogICAgPCEtLSBoZWFkZXItc2VjdGlvbiBzdGFydCAgLS0+CiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXItc2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyLXRvcCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItdG9wLWNvbnRlbnQgZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4iPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlci10b3AtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5ndWFnZV9zd2l0Y2hlciBtcy0zIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ3VhZ2Vfc3dpdGNoZXJfX2NhcHRpb24iPg0KICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbiI+DQogICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL2xhbmd1YWdlLzY2MGI5NGZhODc2YWMxNzEyMDM1MDY2LnBuZyIgYWx0PSJpbWFnZSI+DQogICAgICAgIDwvc3Bhbj4NCiAgICAgICAgPHNwYW4gY2xhc3M9InRleHQiPiBFbmdsaXNoIDwvc3Bhbj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJsYW5ndWFnZV9zd2l0Y2hlcl9fbGlzdCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imxhbmd1YWdlX3N3aXRjaGVyX19pdGVtICBzZWxlY3RlZCAiIGRhdGEtdmFsdWU9ImVuIj4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3Byb2Z4LmlvL2NoYW5nZS9lbiIgY2xhc3M9InRodW1iIj4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy9sYW5ndWFnZS82NjBiOTRmYTg3NmFjMTcxMjAzNTA2Ni5wbmciIGFsdD0iaW1hZ2UiPg0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0Ij4gRW5nbGlzaDwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KPC9kaXY+DQoNCg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlci10b3AtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYWN0aW9uIGQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby91c2VyL2xvZ2luIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbWFsbCI+TG9naW48L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby91c2VyL3JlZ2lzdGVyIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbWFsbCI+UmVnaXN0ZXI8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYm90dG9tIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZXhwYW5kLXhsIGFsaWduLWl0ZW1zLWNlbnRlciI+CgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8iIGNsYXNzPSJzaXRlLWxvZ28gc2l0ZS10aXRsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvbG9nb19pY29uL2xvZ28ucG5nIiBhbHQ9ImxvZ28iPgogICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXZiYXItdG9nZ2xlciBtcy1hdXRvIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS1icy10YXJnZXQ9IiNuYXZiYXJTdXBwb3J0ZWRDb250ZW50IiBhcmlhLWNvbnRyb2xzPSJuYXZiYXJTdXBwb3J0ZWRDb250ZW50IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5hdmlnYXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWVudS10b2dnbGUiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2UiIGlkPSJuYXZiYXJTdXBwb3J0ZWRDb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXZiYXItbmF2IG1haW4tbWVudSBtcy1hdXRvIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3Byb2Z4LmlvIj5Ib21lPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9hYm91dCI+QWJvdXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9wbGFuIj5QbGFuPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby9ibG9ncyI+QmxvZzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vY29udGFjdCI+Q29udGFjdDwvYT48L2xpPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLXNtLW5vbmUiPjxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vdXNlci9sb2dpbiI+TG9naW48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImQtc20tbm9uZSI+PGEgaHJlZj0iaHR0cHM6Ly9wcm9meC5pby91c2VyL3JlZ2lzdGVyIj5SZWdpc3RlcjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBuYXZiYXItY29sbGFwc2UgZW5kIC0tPgogICAgICAgICAgICAgICAgPC9uYXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9oZWFkZXI+CiAgICAgICAgPCEtLSBoZXJvLXNlY3Rpb24gc3RhcnQgLS0+CjxzZWN0aW9uIGNsYXNzPSJoZXJvLXNlY3Rpb24iPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZXJvLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0iaGVyb19fdGl0bGUiPkVhcm4gRGFpbHkgUHJvZml0cyB3aXRoIFNtYXJ0IEZvcmV4ICZhbXA7IENyeXB0byBUcmFkaW5nIEludmVzdG1lbnQ8L2gyPgogICAgICAgICAgICAgICAgICAgIDxwPkludmVzdCBpbiBhIHNlY3VyZSBhbmQgcHJvZml0YWJsZSB0cmFkaW5nIHBsYXRmb3JtIGRlc2lnbmVkIHRvIGdlbmVyYXRlIGNvbnNpc3RlbnQgcmV0dXJucy4gT3VyIGV4cGVydCB0ZWFtIHRyYWRlcyBpbiBmb3JleCwgY3J5cHRvLCBhbmQgb3RoZXIgZmluYW5jaWFsIG1hcmtldHMgdG8gbWF4aW1pemUgeW91ciBlYXJuaW5ncy4gU3RhcnQgeW91ciBqb3VybmV5IHRvZGF5IGFuZCBlbmpveSBmaXhlZCBkYWlseSByZXR1cm5zIHdpdGggYSB0cnVzdGVkIGludmVzdG1lbnQgcGFydG5lciE8L3A+CgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ0bi1hcmVhIj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJ1c2VyL3JlZ2lzdGVyIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5TaWduIFVwPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0idXNlci9sb2dpbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+U2lnbiBJbjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTUiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVyby10aHVtYiBwdWxzZS1hbmltYXRpb24iPjxpbWcgc3JjPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvZnJvbnRlbmQvYmFubmVyLzY3YjQxZDY1NmEzZTMxNzM5ODU3MjUzLnBuZyIgYWx0PSJpbWFnZSI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cjwvc2VjdGlvbj4KPCEtLSBoZXJvLXNlY3Rpb24gZW5kIC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tPT09PT09PUFib3V0LVNlY3Rpb24gU3RhcnRzIEhlcmU9PT09PT09LS0+CjxzZWN0aW9uIGNsYXNzPSJhYm91dC1zZWN0aW9uIHB0LTE1MCBwYi0xNTAiPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW4gZmxleC13cmFwLXJldmVyc2UiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiBwZS14bC01Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHRleHQtbGVmdCBtYXJnaW4tb2xwbyBtYi0wIj4KICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb25fX3RpdGxlIj5BYm91dCBQcm9GWC5pbzwvaDI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWJvdXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldlbGNvbWUgdG8gUHJvRlguaW8sIGEgdHJ1c3RlZCB0cmFkaW5nIGFuZCBpbnZlc3RtZW50IHBsYXRmb3JtIGNvbW1pdHRlZCB0byBkZWxpdmVyaW5nIHNlY3VyZSBhbmQgY29uc2lzdGVudCByZXR1cm5zLiBTaW5jZSAyMDIwLCB3ZSBoYXZlIGJlZW4gaGVscGluZyBpbnZlc3RvcnMgZ3JvdyB0aGVpciB3ZWFsdGggYnkgbGV2ZXJhZ2luZyB0aGUgcG93ZXIgb2YgZm9yZXgsIGNyeXB0bywgYW5kIG90aGVyIGZpbmFuY2lhbCBtYXJrZXRzLiBPdXIgZXhwZXJ0IHRyYWRlcnMgdXNlIGFkdmFuY2VkIHN0cmF0ZWdpZXMgYW5kIHJpc2sgbWFuYWdlbWVudCB0ZWNobmlxdWVzIHRvIGVuc3VyZSBzdGFibGUgYW5kIHByb2ZpdGFibGUgcmV0dXJucy48YnIgLz4KPGJyIC8+CkF0IFByb0ZYLmlvLCB0cmFuc3BhcmVuY3kgYW5kIHRydXN0IGFyZSBhdCB0aGUgY29yZSBvZiBvdXIgb3BlcmF0aW9ucy4gV2UgYmVsaWV2ZSBpbiBvZmZlcmluZyBhIHNlYW1sZXNzIGludmVzdG1lbnQgZXhwZXJpZW5jZSB3aXRoIGZpeGVkIGRhaWx5IHJldHVybnMsIGFsbG93aW5nIHlvdSB0byBnZW5lcmF0ZSBwYXNzaXZlIGluY29tZSB3aXRob3V0IHRoZSBjb21wbGV4aXRpZXMgb2YgdHJhZGluZy4gV2hldGhlciB5b3UncmUgYSBiZWdpbm5lciBvciBhbiBleHBlcmllbmNlZCBpbnZlc3Rvciwgb3VyIHBsYXRmb3JtIGlzIGRlc2lnbmVkIHRvIHByb3ZpZGUgYSBoYXNzbGUtZnJlZSBhbmQgcmV3YXJkaW5nIGpvdXJuZXkuPC9wPgoKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWJvdXQtdGh1bWIiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy9mcm9udGVuZC9hYm91dC82N2I0MWY4MWMwZjQxMTczOTg1Nzc5My5wbmciIGFsdD0iYWJvdXQiPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cjwvc2VjdGlvbj4KPCEtLT09PT09PT1BYm91dC1TZWN0aW9uIEVuZHMgSGVyZT09PT09PT0tLT4KICAgICAgICAgICAgICAgICAgICA8IS0tIGZhcS1zZWN0aW9uIHN0YXJ0IC0tPgo8c2VjdGlvbiBjbGFzcz0iZmFxLXNlY3Rpb24gcHQtMTUwIHBiLTE1MCI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkZXIgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbl9fdGl0bGUiPkZyZXF1ZW50bHkgQXNrZWQgUXVlc3Rpb25zPC9oMj4KICAgICAgICAgICAgICAgICAgICA8cD5XZSBhbnN3ZXIgc29tZSBvZiB5b3VyIEZyZXF1ZW50bHkgQXNrZWQgUXVlc3Rpb25zIHJlZ2FyZGluZyBvdXIgcGxhdGZvcm0uIElmIHlvdSBoYXZlIGEgcXVlcnkgdGhhdCBpcyBub3QgYW5zd2VyZWQgaGVyZSwgUGxlYXNlIGNvbnRhY3QgdXMuPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24gY21uLWFjY29yZGlvbiBzdHlsZS0tdHdvIiBpZD0iY2F0ZWdvcnlBY2NvcmRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaGVhZGVyIiBpZD0iaC0wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjYy1idG4iIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLWJzLXRhcmdldD0iI2MtMCIgYXJpYS1leHBhbmRlZD0idHJ1ZSIgYXJpYS1jb250cm9scz0iYy0wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dCI+SG93IGRvZXMgUHJvRlguaW8gZ2VuZXJhdGUgcHJvZml0cyBmb3IgaW52ZXN0b3JzPzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iYy0wIiBjbGFzcz0iY29sbGFwc2Ugc2hvdyAiIGFyaWEtbGFiZWxsZWRieT0iaC0wIiBkYXRhLWJzLXBhcmVudD0iI2NhdGVnb3J5QWNjb3JkaW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvRlguaW8gaW52ZXN0cyBpbiBmb3JleCwgY3J5cHRvLCBhbmQgb3RoZXIgZmluYW5jaWFsIG1hcmtldHMgdXNpbmcgZXhwZXJ0IHRyYWRpbmcgc3RyYXRlZ2llcyBhbmQgcmlzayBtYW5hZ2VtZW50IHRlY2huaXF1ZXMuIFRoZSBwcm9maXRzIGdlbmVyYXRlZCBmcm9tIHRoZXNlIHRyYWRlcyBhcmUgZGlzdHJpYnV0ZWQgdG8gaW52ZXN0b3JzIGFzIGZpeGVkIGRhaWx5IHJldHVybnMuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaGVhZGVyIiBpZD0iaC0xIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjYy1idG4iIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLWJzLXRhcmdldD0iI2MtMSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9ImMtMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQiPldoYXQgaXMgdGhlIG1pbmltdW0gaW52ZXN0bWVudCBhbW91bnQ/PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjLTEiIGNsYXNzPSJjb2xsYXBzZSAgIiBhcmlhLWxhYmVsbGVkYnk9ImgtMSIgZGF0YS1icy1wYXJlbnQ9IiNjYXRlZ29yeUFjY29yZGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBtaW5pbXVtIGludmVzdG1lbnQgYW1vdW50IHZhcmllcyBiYXNlZCBvbiB0aGUgc2VsZWN0ZWQgcGxhbi4gUGxlYXNlIGNoZWNrIG91ciBpbnZlc3RtZW50IHBsYW5zIG9uIHRoZSB3ZWJzaXRlIGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1oZWFkZXIiIGlkPSJoLTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWNjLWJ0biIgdHlwZT0iYnV0dG9uIiBkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtYnMtdGFyZ2V0PSIjYy0yIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0iYy0yIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dCI+SG93IGRvIGRlcG9zaXRzIGFuZCB3aXRoZHJhd2FscyB3b3JrPzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iYy0yIiBjbGFzcz0iY29sbGFwc2UgICIgYXJpYS1sYWJlbGxlZGJ5PSJoLTIiIGRhdGEtYnMtcGFyZW50PSIjY2F0ZWdvcnlBY2NvcmRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCb3RoIGRlcG9zaXRzIGFuZCB3aXRoZHJhd2FscyBvbiBQcm9GWC5pbyBhcmUgZnVsbHkgYXV0b21hdGVkLiBPbmNlIHlvdSBkZXBvc2l0IGZ1bmRzLCB0aGV5IGFyZSBpbnN0YW50bHkgcHJvY2Vzc2VkLCBhbmQgd2l0aGRyYXdhbHMgYXJlIGV4ZWN1dGVkIGF1dG9tYXRpY2FsbHkgYXMgcGVyIG91ciBwYXlvdXQgc2NoZWR1bGUuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaGVhZGVyIiBpZD0iaC0zIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjYy1idG4iIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLWJzLXRhcmdldD0iI2MtMyIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9ImMtMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQiPklzIG15IGludmVzdG1lbnQgc2VjdXJlIHdpdGggUHJvRlguaW8/PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjLTMiIGNsYXNzPSJjb2xsYXBzZSAgIiBhcmlhLWxhYmVsbGVkYnk9ImgtMyIgZGF0YS1icy1wYXJlbnQ9IiNjYXRlZ29yeUFjY29yZGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFllcywgd2UgaW1wbGVtZW50IGFkdmFuY2VkIHJpc2sgbWFuYWdlbWVudCBzdHJhdGVnaWVzIGFuZCBzZWN1cml0eSBtZWFzdXJlcyB0byBlbnN1cmUgdGhlIHNhZmV0eSBvZiBpbnZlc3RtZW50cy4gT3VyIGV4cGVydCB0cmFkZXJzIHdvcmsgdG8gbWluaW1pemUgcmlza3Mgd2hpbGUgbWF4aW1pemluZyBwcm9maXRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaGVhZGVyIiBpZD0iaC00Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjYy1idG4iIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLWJzLXRhcmdldD0iI2MtNCIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9ImMtNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQiPkhvdyBjYW4gSSBzdGFydCBpbnZlc3Rpbmcgd2l0aCBQcm9GWC5pbz88L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImMtNCIgY2xhc3M9ImNvbGxhcHNlICAiIGFyaWEtbGFiZWxsZWRieT0iaC00IiBkYXRhLWJzLXBhcmVudD0iI2NhdGVnb3J5QWNjb3JkaW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2ltcGx5IHNpZ24gdXAgb24gb3VyIHdlYnNpdGUsIGNob29zZSBhbiBpbnZlc3RtZW50IHBsYW4sIG1ha2UgYSBkZXBvc2l0LCBhbmQgc3RhcnQgZWFybmluZyBkYWlseSByZXR1cm5zIGF1dG9tYXRpY2FsbHkuIE5vIHRyYWRpbmcgZXhwZXJpZW5jZSBpcyByZXF1aXJlZCEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9zZWN0aW9uPgo8IS0tIGZhcS1zZWN0aW9uIGVuZCAtLT4KICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0iZmVhdHVyZS1zZWN0aW9uIHBiLTE1MCBwdC0xNTAiPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWNlbnRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy02Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb25fX3RpdGxlIj5GZWF0dXJlcyAtIFdoeSBDaG9vc2UgVXM8L2gyPgogICAgICAgICAgICAgICAgICAgIDxwPk91ciBnb2FsIGlzIHRvIHByb3ZpZGUgb3VyIGludmVzdG9ycyB3aXRoIGEgcmVsaWFibGUgc291cmNlIG9mIGhpZ2ggaW5jb21lLCB3aGlsZSBtaW5pbWl6aW5nIGFueSBwb3NzaWJsZSByaXNrcyBhbmQgb2ZmZXJpbmcgYSBoaWdoLXF1YWxpdHkgc2VydmljZS48L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93IGp1c3RpZnktY29udGVudC1jZW50ZXIgbWItMzAtbm9uZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMCBjb2wteGwtNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLS1pdGVtIj4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS10aHVtYiBpY29uIj4KICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhcyBsYS1jb3B5Ij48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRpdGxlIj5MZWdhbCBDb21wYW55PC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+T3VyIGNvbXBhbnkgY29uZHVjdHMgYWJzb2x1dGVseSBsZWdhbCBhY3Rpdml0aWVzIGluIHRoZSBsZWdhbCBmaWVsZC4gV2UgYXJlIGNlcnRpZmllZCB0byBvcGVyYXRlIGludmVzdG1lbnQgYnVzaW5lc3MsIHdlIGFyZSBsZWdhbCBhbmQgc2FmZS48L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMCBjb2wteGwtNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLS1pdGVtIj4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS10aHVtYiBpY29uIj4KICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhcyBsYS1sb2NrIj48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRpdGxlIj5IaWdoIHJlbGlhYmlsaXR5PC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2UgYXJlIHRydXN0ZWQgYnkgYSBodWdlIG51bWJlciBvZiBwZW9wbGUuIFdlIGFyZSB3b3JraW5nIGhhcmQgY29uc3RhbnRseSB0byBpbXByb3ZlIHRoZSBsZXZlbCBvZiBvdXIgc2VjdXJpdHkgc3lzdGVtIGFuZCBtaW5pbWl6ZSBwb3NzaWJsZSByaXNrcy48L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMCBjb2wteGwtNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLS1pdGVtIj4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS10aHVtYiBpY29uIj4KICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhcyBsYS11c2VyLWxvY2siPjwvaT4gICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGl0bGUiPkFub255bWl0eTwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFub255bWl0eSBhbmQgdXNpbmcgY3J5cHRvY3VycmVuY3kgYXMgYSBwYXltZW50IGluc3RydW1lbnQuIEluIHRoZSBlcmEgb2YgZWxlY3Ryb25pYyBtb25leSDigJMgdGhpcyBpcyBvbmUgb2YgdGhlIG1vc3QgY29udmVuaWVudCB3YXlzIG9mIGNvb3BlcmF0aW9uLjwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgY29sLXNtLTEwIGNvbC14bC00Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtLWl0ZW0iPgoKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLXRodW1iIGljb24iPgogICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0ibGFzIGxhLXNoaXBwaW5nLWZhc3QiPjwvaT4gICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGl0bGUiPlF1aWNrIFdpdGhkcmF3YWw8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICA8cD5PdXIgYWxsIHJldHJlYXRzIGFyZSB0cmVhdGVkIHNwb250YW5lb3VzbHkgb25jZSByZXF1ZXN0ZWQuIFRoZXJlIGFyZSBoaWdoIG1heGltdW0gbGltaXRzLiBUaGUgbWluaW11bSB3aXRoZHJhd2FsIGFtb3VudCBpcyBvbmx5ICQxMCAuPC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtNiBjb2wtc20tMTAgY29sLXhsLTQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS0taXRlbSI+CgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtdGh1bWIgaWNvbiI+CiAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJsYXMgbGEtbGluayI+PC9pPiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJ0aXRsZSI+UmVmZXJyYWwgUHJvZ3JhbTwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldlIGFyZSBvZmZlcmluZyBhIGNlcnRhaW4gbGV2ZWwgb2YgcmVmZXJyYWwgaW5jb21lIHRocm91Z2ggb3VyIHJlZmVycmFsIHByb2dyYW0uIHlvdSBjYW4gaW5jcmVhc2UgeW91ciBpbmNvbWUgYnkgc2ltcGx5IHJlZmVyIGEgZmV3IHBlb3BsZS48L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMCBjb2wteGwtNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLS1pdGVtIj4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS10aHVtYiBpY29uIj4KICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhcyBsYS1oZWFkc2V0Ij48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRpdGxlIj4yNC83IFN1cHBvcnQ8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICA8cD5XZSBwcm92aWRlIDI0LzcgY3VzdG9tZXIgc3VwcG9ydCB0aHJvdWdoIGUtbWFpbCBhbmQgdGVsZWdyYW0uIE91ciBzdXBwb3J0IHJlcHJlc2VudGF0aXZlcyBhcmUgcGVyaW9kaWNhbGx5IGF2YWlsYWJsZSB0byBlbHVjaWRhdGUgYW55IGRpZmZpY3VsdHkuPC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtNiBjb2wtc20tMTAgY29sLXhsLTQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS0taXRlbSI+CgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtdGh1bWIgaWNvbiI+CiAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJsYXMgbGEtc2VydmVyIj48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRpdGxlIj5EZWRpY2F0ZWQgU2VydmVyPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2UgYXJlIHVzaW5nIGEgZGVkaWNhdGVkIHNlcnZlciBmb3IgdGhlIHdlYnNpdGUgd2hpY2ggYWxsb3dzIHVzIGV4Y2x1c2l2ZSB1c2Ugb2YgdGhlIHJlc291cmNlcyBvZiB0aGUgZW50aXJlIHNlcnZlci48L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMCBjb2wteGwtNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLS1pdGVtIj4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS10aHVtYiBpY29uIj4KICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhYiBsYS1leHBlZGl0ZWRzc2wiPjwvaT4gICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGl0bGUiPlNTTCBTZWN1cmVkPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+Q29tb2RvIEVzc2VudGlhbC1TU0wgU2VjdXJpdHkgZW5jcnlwdGlvbiBjb25maXJtcyB0aGF0IHRoZSBwcmVzZW50ZWQgY29udGVudCBpcyBnZW51aW5lIGFuZCBsZWdpdGltYXRlLjwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgY29sLXNtLTEwIGNvbC14bC00Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtLWl0ZW0iPgoKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLXRodW1iIGljb24iPgogICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0ibGFzIGxhLXNoaWVsZC1hbHQiPjwvaT4gICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGl0bGUiPkRET1MgUHJvdGVjdGlvbjwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldlIGFyZSB1c2luZyBvbmUgb2YgdGhlIG1vc3QgZXhwZXJpZW5jZWQsIHByb2Zlc3Npb25hbCwgYW5kIHRydXN0ZWQgRERvUyBQcm90ZWN0aW9uIGFuZCBtaXRpZ2F0aW9uIHByb3ZpZGVyLjwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBwcmljaW5nLXNlY3Rpb24gc3RhcnQgLS0+CjxzZWN0aW9uIGNsYXNzPSJwcmljaW5nLXNlY3Rpb24gcGItMTUwIHB0LTE1MCI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkZXIgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbl9fdGl0bGUiPiBJbnZlc3RtZW50IFBsYW5zPC9oMj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXJfX2RpdmlkZXIiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibGVmdC1kb3QiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJpZ2h0LWRvdCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxwPlRvIG1ha2UgYSBzb2xpZCBpbnZlc3RtZW50LCB5b3UgaGF2ZSB0byBrbm93IHdoZXJlIHlvdSBhcmUgaW52ZXN0aW5nLiBGaW5kIGEgcGxhbiB3aGljaCBpcyBiZXN0IGZvciB5b3UuPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBzZWN0aW9uLWhlYWRlciBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG1iLW5vbmUtNTAiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbCBmYWRlIiBpZD0iaW52ZXN0TW9kYWwiPgogICAgPGRpdiBjbGFzcz0ibW9kYWwtZGlhbG9nIG1vZGFsLWxnIG1vZGFsLWRpYWxvZy1jZW50ZXJlZCAiPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQgbW9kYWwtY29udGVudC1iZyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9Im1vZGFsLXRpdGxlIHRleHQtd2hpdGUiIGlkPSJNb2RhbExhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgQXQgZmlyc3Qgc2lnbiBpbiB5b3VyIGFjY291bnQgICAgICAgICAgICAgICAgICAgIDwvc3Ryb25nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtYnMtZGlzbWlzcz0ibW9kYWwiPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJsYXMgbGEtdGltZXMiPjwvaT4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSJodHRwczovL3Byb2Z4LmlvL3VzZXIvaW52ZXN0IiBtZXRob2Q9InBvc3QiPgogICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iX3Rva2VuIiB2YWx1ZT0iN3R6NXQzWnE3UkQ5YXYybGY1OUNGMU1vQkVWQ2YzRDZRYXVmU21CVSIgYXV0b2NvbXBsZXRlPSJvZmYiPiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJwbGFuX2lkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vdXNlci9sb2dpbiIgY2xhc3M9ImJ0biBidG4tLWJhc2Ugdy0xMDAiPkF0IGZpcnN0IHNpZ24gaW4geW91ciBhY2NvdW50PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9mb3JtPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgoKCiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJuZXdzbGV0dGVyLXNlY3Rpb24gIHB0LTE1MCAgcGItMTUwICIgaWQ9InN1YnNjcmliZSI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkZXIgbWFyZ2luLW9scG8iPgogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbl9fdGl0bGUiPlN1YnNjcmliZSBPdXIgTmV3c2xldHRlcjwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHA+b25jZSB5b3Ugc3Vic2NyaWJlIHRvIG91ciBuZXdzbGV0dGVyLCB3ZSB3aWxsIHNlbmQgb3VyIHByb21vIG9mZmVycyBhbmQgbmV3cyB0byB5b3VyIGVtYWlsLiBObyB3b3JyeSwgd2Ugd2lsbCBub3Qgc2VuZCBzcGFtLjwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWNlbnRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC03Ij4KICAgICAgICAgICAgICAgIDxmb3JtIGNsYXNzPSJuZXdzbGF0ZXItZm9ybSIgbWV0aG9kPSJwb3N0Ij4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJfdG9rZW4iIHZhbHVlPSI3dHo1dDNacTdSRDlhdjJsZjU5Q0YxTW9CRVZDZjNENlFhdWZTbUJVIiBhdXRvY29tcGxldGU9Im9mZiI+ICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iZW1haWwiIG5hbWU9ImVtYWlsIiBwbGFjZWhvbGRlcj0iRW1haWwgQWRkcmVzcyI+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcGFwZXItcGxhbmUiPjwvaT4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZm9ybT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9zZWN0aW9uPgoKCiAgICAgICAgICAgICAgICAgICAgPCEtLSBwcm9maXQtY2FsY3VsYXRvci1zZWN0aW9uIHN0YXJ0IC0tPgo8c2VjdGlvbiBjbGFzcz0icHJvZml0LWNhbGN1bGF0b3Itc2VjdGlvbiBwYi0xNTAgcHQtMTUwIj4KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0icm93IGFsaWduLWl0ZW1zLWNlbnRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy04Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2ZpdC1jYWxjdWxhdG9yLXdyYXBwZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUiPlByb2ZpdCBDYWxjdWxhdG9yPC9oMj4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0ibWItNCI+WW91IG11c3Qga25vdyB0aGUgY2FsY3VsYXRpb24gYmVmb3JlIGludmVzdGluZyBpbiBhbnkgcGxhbiwgc28geW91IG5ldmVyIG1ha2UgbWlzdGFrZXMuIENoZWNrIHRoZSBjYWxjdWxhdGlvbiBhbmQgeW91IHdpbGwgZ2V0IGFzIG91ciBjYWxjdWxhdG9yIHNheXMuPC9wPgoKICAgICAgICAgICAgICAgICAgICA8Zm9ybSBjbGFzcz0icHJvZml0LWNhbGN1bGF0b3ItZm9ybSBleGNoYW5nZS1mb3JtIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAgY29sLW1kLTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5QbGFuPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VsZWN0IGlkPSJjaGFuZ2VQbGFuIiBjbGFzcz0iZm9ybS1jb250cm9sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IjYiIGRhdGEtZml4ZWRfYW1vdW50PSIwLjAwMDAwMDAwIiBkYXRhLW1pbmltdW1fYW1vdW50PSIxNTAwMC4wMDAwMDAwMCIgZGF0YS1tYXhpbXVtX2Ftb3VudD0iMTAwMDAwLjAwMDAwMDAwIj5MZWdhY3k8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IjUiIGRhdGEtZml4ZWRfYW1vdW50PSIwLjAwMDAwMDAwIiBkYXRhLW1pbmltdW1fYW1vdW50PSIzMDAxLjAwMDAwMDAwIiBkYXRhLW1heGltdW1fYW1vdW50PSIxNTAwMC4wMDAwMDAwMCI+SHlwZXJFZGdlPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSI0IiBkYXRhLWZpeGVkX2Ftb3VudD0iMC4wMDAwMDAwMCIgZGF0YS1taW5pbXVtX2Ftb3VudD0iMjAwMS4wMDAwMDAwMCIgZGF0YS1tYXhpbXVtX2Ftb3VudD0iMzAwMC4wMDAwMDAwMCI+U3VtbWl0WDwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iMyIgZGF0YS1maXhlZF9hbW91bnQ9IjAuMDAwMDAwMDAiIGRhdGEtbWluaW11bV9hbW91bnQ9IjEwMDEuMDAwMDAwMDAiIGRhdGEtbWF4aW11bV9hbW91bnQ9IjIwMDAuMDAwMDAwMDAiPlF1YW50dW08L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IjIiIGRhdGEtZml4ZWRfYW1vdW50PSIwLjAwMDAwMDAwIiBkYXRhLW1pbmltdW1fYW1vdW50PSIzMDEuMDAwMDAwMDAiIGRhdGEtbWF4aW11bV9hbW91bnQ9IjEwMDAuMDAwMDAwMDAiPkZ1c2lvbjwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iMSIgZGF0YS1maXhlZF9hbW91bnQ9IjAuMDAwMDAwMDAiIGRhdGEtbWluaW11bV9hbW91bnQ9IjMwLjAwMDAwMDAwIiBkYXRhLW1heGltdW1fYW1vdW50PSIzMDAuMDAwMDAwMDAiPlByaW1lWDwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPkludmVzdCBBbW91bnQgPHNwYW4gY2xhc3M9ImludmVzdC1yYW5nZSI+PC9zcGFuPjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIwLjAwIiBjbGFzcz0iaW52ZXN0LWlucHV0IGZvcm0tY29udHJvbCIgb25rZXl1cD0idGhpcy52YWx1ZSA9IHRoaXMudmFsdWUucmVwbGFjZSAoL15cLnxbXlxkXC5dL2csICcnKSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0icHJvZml0LWlucHV0IGJhc2UtLWNvbG9yIj48L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2RlIGNsYXNzPSJwZXJpb2QiPjwvY29kZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9maXQtdGh1bWIiPgogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9pbWFnZXMvZnJvbnRlbmQvY2FsY3VsYXRpb24vNjMzZWYyMjU2NmVmZTE2NjUwNjk2MDUucG5nIiBhbHQ9ImltYWdlIj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L3NlY3Rpb24+CjwhLS0gcHJvZml0LWNhbGN1bGF0b3Itc2VjdGlvbiBlbmQgLS0+CgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyZWZlcnJhbC1sZXZlbC1zZWN0aW9uIGJvcmRlci10b3AtMSBwdC0xMjAgcGItMTIwIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IGp1c3RpZnktY29udGVudC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWhlYWRlciB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJzZWN0aW9uX190aXRsZSI+VXNlciBSYW5raW5nPC9oMj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5Zb3UgY2FuIGdldCBhIGJvbnVzIHRvIGZ1bGZpbGwgdGhlIHJlcXVpcmVtZW50LjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2FyZWEiPg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX190aHVtYiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy91c2VyX3JhbmtpbmdzLzY3YjQzNjk4ZTJhZjAxNzM5ODYzNzA0LnBuZyIgYWx0PSJyZWZlcnJhbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9fbmFtZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2xpdmVyDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19yaWdodCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQgY3VzdG9tLXdpZHRoImRhdGEtY3VzdG9tX3dpZHRoPSIyMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19jb250ZW50X19jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGkgY2xhc3M9ImxhcyBsYS1jb2lucyI+PC9pPiBCb251czogJDUwLjAwIFVTRDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fdG9vbHRpcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4xPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaW5pbXVtIEludmVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4kNTAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWFtIEludmVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4kMjUwLjAwIFVTRDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8uIG9mIERpcmVjdCBSZWZlcnJhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj41PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGVmdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX3RodW1iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL3VzZXJfcmFua2luZ3MvNjdiNDM2ZDIzMDc2MzE3Mzk4NjM3NjIucG5nIiBhbHQ9InJlZmVycmFsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19uYW1lIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHb2xkDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19yaWdodCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQgY3VzdG9tLXdpZHRoImRhdGEtY3VzdG9tX3dpZHRoPSI0MCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19jb250ZW50X19jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGkgY2xhc3M9ImxhcyBsYS1jb2lucyI+PC9pPiBCb251czogJDEwMC4wMCBVU0Q8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX3Rvb2x0aXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGV2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+Mjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWluaW11bSBJbnZlc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+JDE1MC4wMCBVU0Q8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlYW0gSW52ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiQ1MDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOby4gb2YgRGlyZWN0IFJlZmVycmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjEwPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGVmdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX3RodW1iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL3VzZXJfcmFua2luZ3MvNjdiNDM3MDExZGJmOTE3Mzk4NjM4MDkucG5nIiBhbHQ9InJlZmVycmFsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19uYW1lIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQbGF0aW51bQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19jb250ZW50IGN1c3RvbS13aWR0aCJkYXRhLWN1c3RvbV93aWR0aD0iNjAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9fY29udGVudF9fY29udGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxpIGNsYXNzPSJsYXMgbGEtY29pbnMiPjwvaT4gQm9udXM6ICQzMDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX190b29sdGlwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExldmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjM8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pbmltdW0gSW52ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiQzMDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWFtIEludmVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4kMSw1MDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOby4gb2YgRGlyZWN0IFJlZmVycmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjMwPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2l0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGVmdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX3RodW1iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvaW1hZ2VzL3VzZXJfcmFua2luZ3MvNjdiNDM3M2M5ZTM5NzE3Mzk4NjM4NjgucG5nIiBhbHQ9InJlZmVycmFsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19uYW1lIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaWFtb25kDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19yaWdodCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQgY3VzdG9tLXdpZHRoImRhdGEtY3VzdG9tX3dpZHRoPSI4MCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19jb250ZW50X19jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGkgY2xhc3M9ImxhcyBsYS1jb2lucyI+PC9pPiBCb251czogJDEsMDAwLjAwIFVTRDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fdG9vbHRpcCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj40PC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaW5pbXVtIEludmVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4kMSwwMDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZWFtIEludmVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4kMTUsMDAwLjAwIFVTRDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8uIG9mIERpcmVjdCBSZWZlcnJhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj41MDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX190aHVtYiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy91c2VyX3JhbmtpbmdzLzY3YjQzNzc2NDk3NjMxNzM5ODYzOTI2LnBuZyIgYWx0PSJyZWZlcnJhbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX19sZXZlbF9fbmFtZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW1iYXNzYWRvcg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVmZXJyYWxfX2xldmVsX19jb250ZW50IGN1c3RvbS13aWR0aCJkYXRhLWN1c3RvbV93aWR0aD0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnRfX2NvbnRlbnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48aSBjbGFzcz0ibGFzIGxhLWNvaW5zIj48L2k+IEJvbnVzOiAkMiwwMDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlZmVycmFsX190b29sdGlwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExldmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjU8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pbmltdW0gSW52ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiQyLDUwMC4wMCBVU0Q8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlYW0gSW52ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiQzMCwwMDAuMDAgVVNEPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOby4gb2YgRGlyZWN0IFJlZmVycmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjEwMDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvc2VjdGlvbj4NCiAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJ3b3JrLXNlY3Rpb24gcHQtMTUwIHBiLTE1MCI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbl9fdGl0bGUiPkhvdyBpdCBXb3JrczwvaDI+CiAgICAgICAgICAgICAgICA8cD5HZXQgaW52b2x2ZWQgaW4gb3VyIHRyZW1lbmRvdXMgcGxhdGZvcm0gYW5kIEludmVzdC4gV2Ugd2lsbCB1dGlsaXplIHlvdXIgbW9uZXkgYW5kIGdpdmUgeW91IHByb2ZpdCBpbiB5b3VyIHdhbGxldCBhdXRvbWF0aWNhbGx5LjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWNlbnRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02IGNvbC1zbS04IG1iLTMwIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndvcmstaXRlbSB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29yay1pY29uIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImxhciBsYS11c2VyIj48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3b3JrLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlIj5DcmVhdGUgQWNjb3VudDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdWItdGl0bGUiPlN0ZXAgMTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgY29sLXNtLTggbWItMzAiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29yay1pdGVtIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3b3JrLWljb24iPgogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0ibGFzIGxhLWNsaXBib2FyZC1saXN0Ij48L2k+ICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3b3JrLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlIj5JbnZlc3QgVG8gUGxhbjwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdWItdGl0bGUiPlN0ZXAgMjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgY29sLXNtLTggbWItMzAiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29yay1pdGVtIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3b3JrLWljb24iPgogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0ibGFzIGxhLXdhbGxldCI+PC9pPiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29yay1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJ0aXRsZSI+R2V0IFByb2ZpdDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdWItdGl0bGUiPlN0ZXAgMzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L3NlY3Rpb24+CgogICAgICAgICAgICAgICAgPCEtLSBmb290ZXItc2VjdGlvbiBzdGFydCAtLT4KPGZvb3RlciBjbGFzcz0iZm9vdGVyLXNlY3Rpb24iPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgbWItbm9uZS01MCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhsLTYgY29sLW1kLTcgbWItNTAiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLXdpZGdldCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWJvdXRfX3dpZGdldCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8iIGNsYXNzPSJtYi0zIG1iLXNtLTQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2ltYWdlcy9sb2dvX2ljb24vbG9nby5wbmciIGFsdD0iZm9vdGVyIiBjbGFzcz0ibWF4LTI1MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im10LTMiPlByb0ZYLmlvLCBhIHRydXN0ZWQgdHJhZGluZyBhbmQgaW52ZXN0bWVudCBwbGF0Zm9ybSBjb21taXR0ZWQgdG8gZGVsaXZlcmluZyBzZWN1cmUgYW5kIGNvbnNpc3RlbnQgcmV0dXJucy4gU2luY2UgMjAyMCwgd2UgaGF2ZSBiZWVuIGhlbHBpbmcgaW52ZXN0b3JzIGdyb3cgdGhlaXIgd2VhbHRoIGJ5IGxldmVyYWdpbmcgdGhlIHBvd2VyIG9mIGZvcmV4LCBjcnlwdG8sIGFuZCBvdGhlciBmaW5hbmNpYWwgbWFya2V0cy4gT3VyIGV4cGVydCB0cmFkZXJzIHVzZSBhZHZhbmNlZCBzdHJhdGVnaWVzIGFuZCByaXNrIG1hbmFnZW1lbnQgdGVjaG5pcXVlcyB0byBlbnN1cmUgc3RhYmxlIGFuZCBwcm9maXRhYmxlIHJldHVybnMuPC9wPgoKICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJzb2NpYWwtbGlua3MiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJwcml2YWN5LWxpbmtzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vcG9saWN5L3ByaXZhY3ktcG9saWN5IiBjbGFzcz0iYmFzZS0tY29sb3IiPlByaXZhY3kgUG9saWN5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3Byb2Z4LmlvL3BvbGljeS90ZXJtcy1hbmQtc2VydmljZSIgY2xhc3M9ImJhc2UtLWNvbG9yIj5UZXJtcyBhbmQgU2VydmljZTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwhLS0gZm9vdGVyLXdpZGdldCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZm9vdGVyPgo8ZGl2IGNsYXNzPSJmb290ZXItYm90dG9tIj4KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIj4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJjb3B5LXJpZ2h0LXRleHQiPiZjb3B5OyAyMDI2IDxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8iIGNsYXNzPSJ0ZXh0LS1iYXNlIj5Qcm9GWC5pbzwvYT4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQ8L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2Pgo8IS0tIGZvb3Rlci1zZWN0aW9uIGVuZCAgLS0+CjwvbWFpbj4KCgogICAgICAgIAogICAgICAgICAgICA8IS0tIGNvb2tpZXMgZGFyayB2ZXJzaW9uIHN0YXJ0IC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImNvb2tpZXMtY2FyZCB0ZXh0LWNlbnRlciBoaWRlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29va2llcy1jYXJkX19pY29uIGJnLS1iYXNlIj4KICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJsYXMgbGEtY29va2llLWJpdGUiPjwvaT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC00IGNvb2tpZXMtY2FyZF9fY29udGVudCI+V2UgbWF5IHVzZSBjb29raWVzIG9yIGFueSBvdGhlciB0cmFja2luZyB0ZWNobm9sb2dpZXMgd2hlbiB5b3UgdmlzaXQgb3VyIHdlYnNpdGUsIGluY2x1ZGluZyBhbnkgb3RoZXIgbWVkaWEgZm9ybSwgbW9iaWxlIHdlYnNpdGUsIG9yIG1vYmlsZSBhcHBsaWNhdGlvbiByZWxhdGVkIG9yIGNvbm5lY3RlZCB0byBoZWxwIGN1c3RvbWl6ZSB0aGUgU2l0ZSBhbmQgaW1wcm92ZSB5b3VyIGV4cGVyaWVuY2UuIDxhIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vY29va2llLXBvbGljeSIgY2xhc3M9InRleHQtLWJhc2UiIHRhcmdldD0iX2JsYW5rIj5sZWFybiBtb3JlPC9hPjwvcD4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29va2llcy1jYXJkX19idG4gbXQtNCI+CiAgICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJidG4gYnRuLS1iYXNlIHRleHQtd2hpdGUgdy0xMDAgcG9saWN5Ij5BbGxvdzwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPCEtLSBjb29raWVzIGRhcmsgdmVyc2lvbiBlbmQgLS0+CiAgICAKCiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvZ2xvYmFsL2pzL2pxdWVyeS0zLjcuMS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyI+PC9zY3JpcHQ+CgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9qcy9zZWxlY3QyLm1pbi5qcyI+PC9zY3JpcHQ+CgogICAgPCEtLSBzbGljayBzbGlkZXIganMgLS0+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvdGVtcGxhdGVzL25lb19kYXJrL2pzL3ZlbmRvci9zbGljay5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL3RlbXBsYXRlcy9uZW9fZGFyay9qcy92ZW5kb3Ivd293Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8IS0tIGRhc2hib2FyZCBjdXN0b20ganMgLS0+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9wcm9meC5pby9hc3NldHMvdGVtcGxhdGVzL25lb19kYXJrL2pzL21haW4uanMiPjwvc2NyaXB0PgoKICAgIAogICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBUYXdrX0FQST1UYXdrX0FQSXx8e30sIFRhd2tfTG9hZFN0YXJ0PW5ldyBEYXRlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsNCiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzMT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxzMD1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07DQogICAgICAgICAgICAgICAgICAgICAgICBzMS5hc3luYz10cnVlOw0KICAgICAgICAgICAgICAgICAgICAgICAgczEuc3JjPSJodHRwczovL2VtYmVkLnRhd2sudG8vNjdiNDMwMWYzODEyZmYxOTEwN2M3OTQ5LzFpa2J0bnZhaCI7DQogICAgICAgICAgICAgICAgICAgICAgICBzMS5jaGFyc2V0PSJVVEYtOCI7DQogICAgICAgICAgICAgICAgICAgICAgICBzMS5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiKiIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgczAucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoczEsczApOw0KICAgICAgICAgICAgICAgICAgICAgICAgfSkoKTsNCiAgICAgICAgICAgICAgICAgICAgPC9zY3JpcHQ+CiAgICA8bGluayBocmVmPSJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9nbG9iYWwvY3NzL2l6aVRvYXN0Lm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CjxsaW5rIGhyZWY9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9jc3MvaXppVG9hc3RfY3VzdG9tLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9qcy9pemlUb2FzdC5taW4uanMiPjwvc2NyaXB0PgoKPHNjcmlwdD4KICAgICJ1c2Ugc3RyaWN0IjsKICAgIGNvbnN0IGNvbG9ycyA9IHsKICAgICAgICBzdWNjZXNzOiAnIzI4Yzc2ZicsCiAgICAgICAgZXJyb3I6ICcjZWIyMjIyJywKICAgICAgICB3YXJuaW5nOiAnI2ZmOWY0MycsCiAgICAgICAgaW5mbzogJyMxZTlmZjInLAogICAgfQoKICAgIGNvbnN0IGljb25zID0gewogICAgICAgIHN1Y2Nlc3M6ICdmYXMgZmEtY2hlY2stY2lyY2xlJywKICAgICAgICBlcnJvcjogJ2ZhcyBmYS10aW1lcy1jaXJjbGUnLAogICAgICAgIHdhcm5pbmc6ICdmYXMgZmEtZXhjbGFtYXRpb24tdHJpYW5nbGUnLAogICAgICAgIGluZm86ICdmYXMgZmEtZXhjbGFtYXRpb24tY2lyY2xlJywKICAgIH0KCiAgICBjb25zdCBub3RpZmljYXRpb25zID0gW107CiAgICBjb25zdCBlcnJvcnMgPSBbXTsKCgogICAgY29uc3QgdHJpZ2dlclRvYXN0ZXIgPSAoc3RhdHVzLCBtZXNzYWdlKSA9PiB7CiAgICAgICAgaXppVG9hc3Rbc3RhdHVzXSh7CiAgICAgICAgICAgIHRpdGxlOiBzdGF0dXMuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBzdGF0dXMuc2xpY2UoMSksCiAgICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsCiAgICAgICAgICAgIHBvc2l0aW9uOiAidG9wUmlnaHQiLAogICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJywKICAgICAgICAgICAgaWNvbjogaWNvbnNbc3RhdHVzXSwKICAgICAgICAgICAgaWNvbkNvbG9yOiBjb2xvcnNbc3RhdHVzXSwKICAgICAgICAgICAgcHJvZ3Jlc3NCYXJDb2xvcjogY29sb3JzW3N0YXR1c10sCiAgICAgICAgICAgIHRpdGxlU2l6ZTogJzFyZW0nLAogICAgICAgICAgICBtZXNzYWdlU2l6ZTogJzFyZW0nLAogICAgICAgICAgICB0aXRsZUNvbG9yOiAnIzQ3NDc0NycsCiAgICAgICAgICAgIG1lc3NhZ2VDb2xvcjogJyNhMmEyYTInLAogICAgICAgICAgICB0cmFuc2l0aW9uSW46ICdvYnVuY2VJbkxlZnQnCiAgICAgICAgfSk7CiAgICB9CgogICAgaWYgKG5vdGlmaWNhdGlvbnMubGVuZ3RoKSB7CiAgICAgICAgbm90aWZpY2F0aW9ucy5mb3JFYWNoKGVsZW1lbnQgPT4gewogICAgICAgICAgICB0cmlnZ2VyVG9hc3RlcihlbGVtZW50WzBdLCBlbGVtZW50WzFdKTsKICAgICAgICB9KTsKICAgIH0KCiAgICBpZiAoZXJyb3JzLmxlbmd0aCkgewogICAgICAgIGVycm9ycy5mb3JFYWNoKGVycm9yID0+IHsKICAgICAgICAgICAgdHJpZ2dlclRvYXN0ZXIoJ2Vycm9yJywgZXJyb3IpOwogICAgICAgIH0pOwogICAgfQoKICAgIGZ1bmN0aW9uIG5vdGlmeShzdGF0dXMsIG1lc3NhZ2UpIHsKICAgICAgICBpZiAodHlwZW9mIG1lc3NhZ2UgPT0gJ3N0cmluZycpIHsKICAgICAgICAgICAgdHJpZ2dlclRvYXN0ZXIoc3RhdHVzLCBtZXNzYWdlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkLmVhY2gobWVzc2FnZSwgKGksIHZhbCkgPT4gdHJpZ2dlclRvYXN0ZXIoc3RhdHVzLCB2YWwpKTsKICAgICAgICB9CiAgICB9Cjwvc2NyaXB0PgoKICAgICAgICAgICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vcHJvZnguaW8vYXNzZXRzL2dsb2JhbC9qcy9maXJlYmFzZS9maXJlYmFzZS04LjMuMi5qcyI+PC9zY3JpcHQ+Cgo8c2NyaXB0PgogICAgInVzZSBzdHJpY3QiOwoKICAgIHZhciBwZXJtaXNzaW9uID0gbnVsbDsKICAgIHZhciBhdXRoZW50aWNhdGVkID0gJyc7CiAgICB2YXIgcHVzaE5vdGlmeSA9IDE7CiAgICB2YXIgZmlyZWJhc2VDb25maWcgPSBudWxsOwoKICAgIGZ1bmN0aW9uIHB1c2hOb3RpZnlBY3Rpb24oKXsKICAgICAgICBwZXJtaXNzaW9uID0gTm90aWZpY2F0aW9uLnBlcm1pc3Npb247CgogICAgICAgIGlmKCEoJ05vdGlmaWNhdGlvbicgaW4gd2luZG93KSl7CiAgICAgICAgICAgIG5vdGlmeSgnaW5mbycsICdQdXNoIG5vdGlmaWNhdGlvbnMgbm90IGF2YWlsYWJsZSBpbiB5b3VyIGJyb3dzZXIuIFRyeSBDaHJvbWl1bS4nKQogICAgICAgIH0KICAgICAgICBlbHNlIGlmKHBlcm1pc3Npb24gPT09ICdkZW5pZWQnIHx8IHBlcm1pc3Npb24gPT0gJ2RlZmF1bHQnKXsgLy9Ob3RpY2UgZm9yIHVzZXJzIGRhc2hib2FyZAogICAgICAgICAgICAkKCcubm90aWNlJykuYXBwZW5kKGAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFsZXJ0IGJvcmRlciBib3JkZXItLWRhbmdlciIgcm9sZT0iYWxlcnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFsZXJ0X19pY29uIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgdGV4dC0tZGFuZ2VyIj48aSBjbGFzcz0iZmFzIGZhLWJlbGwiPjwvaT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iYWxlcnRfX21lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZnctYm9sZCI+UGxlYXNlIEFsbG93IC8gUmVzZXQgQnJvd3NlciBOb3RpZmljYXRpb24gPC9zcGFuPjxicj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPklmIHlvdSB3YW50IHRvIGdldCBwdXNoIG5vdGlmaWNhdGlvbiB0aGVuIHlvdSBoYXZlIHRvIGFsbG93IG5vdGlmaWNhdGlvbiBmcm9tIHlvdXIgYnJvd3Nlcjwvc21hbGw+CiAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGApOwogICAgICAgIH0KICAgIH0KCiAgICAvL0lmIGVuYWJsZSBwdXNoIG5vdGlmaWNhdGlvbiBmcm9tIGFkbWluIHBhbmVsCiAgICBpZihwdXNoTm90aWZ5ID09IDEpewogICAgICAgIHB1c2hOb3RpZnlBY3Rpb24oKTsKICAgIH0KCiAgICAvL1doZW4gdXNlcnMgYWxsb3cgYnJvd3NlciBub3RpZmljYXRpb24KICAgIGlmKHBlcm1pc3Npb24gIT0gJ2RlbmllZCcgJiYgZmlyZWJhc2VDb25maWcpewoKICAgICAgICAvL0ZpcmViYXNlCiAgICAgICAgZmlyZWJhc2UuaW5pdGlhbGl6ZUFwcChmaXJlYmFzZUNvbmZpZyk7CiAgICAgICAgY29uc3QgbWVzc2FnaW5nID0gZmlyZWJhc2UubWVzc2FnaW5nKCk7CgogICAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKCJodHRwczovL3Byb2Z4LmlvL2Fzc2V0cy9nbG9iYWwvanMvZmlyZWJhc2UvZmlyZWJhc2UtbWVzc2FnaW5nLXN3LmpzIikKCiAgICAgICAgLnRoZW4oKHJlZ2lzdHJhdGlvbikgPT4gewogICAgICAgICAgICBtZXNzYWdpbmcudXNlU2VydmljZVdvcmtlcihyZWdpc3RyYXRpb24pOwoKICAgICAgICAgICAgZnVuY3Rpb24gaW5pdEZpcmViYXNlTWVzc2FnaW5nUmVnaXN0cmF0aW9uKCkgewogICAgICAgICAgICAgICAgbWVzc2FnaW5nCiAgICAgICAgICAgICAgICAucmVxdWVzdFBlcm1pc3Npb24oKQogICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBtZXNzYWdpbmcuZ2V0VG9rZW4oKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIC50aGVuKGZ1bmN0aW9uICh0b2tlbil7CiAgICAgICAgICAgICAgICAgICAgJC5hamF4KHsKICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9wcm9meC5pby91c2VyL2FkZC1kZXZpY2UtdG9rZW4nLAogICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnUE9TVCcsCiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuOiB0b2tlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfdG9rZW4nOiAiN3R6NXQzWnE3UkQ5YXYybGY1OUNGMU1vQkVWQ2YzRDZRYXVmU21CVSIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24ocmVzcG9uc2UpewogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvcjogZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKGVycm9yKXsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBtZXNzYWdpbmcub25NZXNzYWdlKGZ1bmN0aW9uIChwYXlsb2FkKXsKICAgICAgICAgICAgICAgIGNvbnN0IHRpdGxlID0gcGF5bG9hZC5ub3RpZmljYXRpb24udGl0bGU7CiAgICAgICAgICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAgICAgICAgICAgICAgIGJvZHk6IHBheWxvYWQubm90aWZpY2F0aW9uLmJvZHksCiAgICAgICAgICAgICAgICAgICAgaWNvbjogcGF5bG9hZC5kYXRhLmljb24sCiAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IHBheWxvYWQubm90aWZpY2F0aW9uLmltYWdlLAogICAgICAgICAgICAgICAgICAgIGNsaWNrX2FjdGlvbjpwYXlsb2FkLmRhdGEuY2xpY2tfYWN0aW9uLAogICAgICAgICAgICAgICAgICAgIHZpYnJhdGU6IFsyMDAsIDEwMCwgMjAwXQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIG5ldyBOb3RpZmljYXRpb24odGl0bGUsIG9wdGlvbnMpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIC8vRm9yIGF1dGhlbnRpY2F0ZWQgdXNlcnMKICAgICAgICAgICAgaWYoYXV0aGVudGljYXRlZCl7CiAgICAgICAgICAgICAgICBpbml0RmlyZWJhc2VNZXNzYWdpbmdSZWdpc3RyYXRpb24oKTsKICAgICAgICAgICAgfQoKICAgICAgICB9KTsKCiAgICB9Cjwvc2NyaXB0PgogICAgCiAgICAgICAgPHNjcmlwdD4KICAgICAgICAoZnVuY3Rpb24oJCkgewogICAgICAgICAgICAidXNlIHN0cmljdCIKICAgICAgICAgICAgdmFyIHN5bWJvbCA9ICckJzsKICAgICAgICAgICAgdmFyIGN1cnJlbmN5ID0gJ1VTRCc7CiAgICAgICAgICAgIHZhciBwbGFuOwoKICAgICAgICAgICAgJCgnLmludmVzdE1vZGFsJykuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAkKCcuZ2F0ZXdheS1pbmZvJykuYWRkQ2xhc3MoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgdmFyIG1vZGFsID0gJCgnI2ludmVzdE1vZGFsJyk7CiAgICAgICAgICAgICAgICBwbGFuID0gJCh0aGlzKS5kYXRhKCdwbGFuJyk7CiAgICAgICAgICAgICAgICBtb2RhbC5maW5kKCdbbmFtZT1wbGFuX2lkXScpLnZhbChwbGFuLmlkKTsKICAgICAgICAgICAgICAgIG1vZGFsLmZpbmQoJy5wbGFuTmFtZScpLnRleHQocGxhbi5uYW1lKTsKICAgICAgICAgICAgICAgIGxldCBmaXhlZEFtb3VudCA9IHBhcnNlRmxvYXQocGxhbi5maXhlZF9hbW91bnQpLnRvRml4ZWQoMik7CiAgICAgICAgICAgICAgICBsZXQgbWluaW11bUFtb3VudCA9IHBhcnNlRmxvYXQocGxhbi5taW5pbXVtKS50b0ZpeGVkKDIpOwogICAgICAgICAgICAgICAgbGV0IG1heGltdW1BbW91bnQgPSBwYXJzZUZsb2F0KHBsYW4ubWF4aW11bSkudG9GaXhlZCgyKTsKICAgICAgICAgICAgICAgIGxldCBpbnRlcmVzdEFtb3VudCA9IHBhcnNlRmxvYXQocGxhbi5pbnRlcmVzdCk7CgogICAgICAgICAgICAgICAgaWYgKHBsYW4uZml4ZWRfYW1vdW50ID4gMCkgewogICAgICAgICAgICAgICAgICAgIG1vZGFsLmZpbmQoJy5pbnZlc3RBbW91bnRSYW5nZScpLnRleHQoYEludmVzdDogJHtzeW1ib2x9JHtmaXhlZEFtb3VudH1gKTsKICAgICAgICAgICAgICAgICAgICBtb2RhbC5maW5kKCdbbmFtZT1hbW91bnRdJykudmFsKHBhcnNlRmxvYXQocGxhbi5maXhlZF9hbW91bnQpLnRvRml4ZWQoMikpOwogICAgICAgICAgICAgICAgICAgIG1vZGFsLmZpbmQoJ1tuYW1lPWFtb3VudF0nKS5hdHRyKCdyZWFkb25seScsIHRydWUpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBtb2RhbC5maW5kKCcuaW52ZXN0QW1vdW50UmFuZ2UnKS50ZXh0KGBJbnZlc3Q6ICR7c3ltYm9sfSR7bWluaW11bUFtb3VudH0gLSAke3N5bWJvbH0ke21heGltdW1BbW91bnR9YCk7CiAgICAgICAgICAgICAgICAgICAgbW9kYWwuZmluZCgnW25hbWU9YW1vdW50XScpLnZhbCgnJyk7CiAgICAgICAgICAgICAgICAgICAgbW9kYWwuZmluZCgnW25hbWU9YW1vdW50XScpLnJlbW92ZUF0dHIoJ3JlYWRvbmx5Jyk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHBsYW4uaW50ZXJlc3RfdHlwZSA9PSAnMScpIHsKICAgICAgICAgICAgICAgICAgICBtb2RhbC5maW5kKCcuaW50ZXJlc3REZXRhaWxzJykuaHRtbChgPHN0cm9uZz4gSW50ZXJlc3Q6ICR7aW50ZXJlc3RBbW91bnR9JSA8L3N0cm9uZz5gKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbW9kYWwuZmluZCgnLmludGVyZXN0RGV0YWlscycpLmh0bWwoYDxzdHJvbmc+IEludGVyZXN0OiAke2ludGVyZXN0QW1vdW50fSAke2N1cnJlbmN5fSAgPC9zdHJvbmc+YCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAocGxhbi5saWZldGltZSA9PSAnMCcpIHsKICAgICAgICAgICAgICAgICAgICBtb2RhbC5maW5kKCcuaW50ZXJlc3RWYWxpZGl0eScpLmh0bWwoYDxzdHJvbmc+ICBQZXIgJHtwbGFuLnRpbWVfc2V0dGluZy50aW1lfSBob3VycyBmb3IgICR7cGxhbi5yZXBlYXRfdGltZX0gdGltZXM8L3N0cm9uZz5gKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbW9kYWwuZmluZCgnLmludGVyZXN0VmFsaWRpdHknKS5odG1sKGA8c3Ryb25nPiAgUGVyICR7cGxhbi50aW1lX3NldHRpbmcudGltZX0gaG91cnMgZm9yIGxpZmUgdGltZSA8L3N0cm9uZz5gKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAocGxhbi5jb21wb3VuZF9pbnRlcmVzdCA9PSAnMScpIHsKICAgICAgICAgICAgICAgICAgICAkKCcuY29tcG91bmRJbnRlcmVzdCcpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAkKCcuaW52ZXN0VGltZScpLnJlbW92ZUNsYXNzKCdjb2wtbWQtMTInKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJCgnLmNvbXBvdW5kSW50ZXJlc3QnKS5oaWRlKCk7CiAgICAgICAgICAgICAgICAgICAgJCgnLmludmVzdFRpbWUnKS5hZGRDbGFzcygnY29sLW1kLTEyJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjYWxjdWxhdGVJbnRlcmVzdCgpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICQoJ1tuYW1lPWFtb3VudF0nKS5vbignaW5wdXQnLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICQoJ1tuYW1lPXdhbGxldF90eXBlXScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICAgICAgY2FsY3VsYXRlSW50ZXJlc3QoKTsKICAgICAgICAgICAgfSkKCiAgICAgICAgICAgICQoJ1tuYW1lPXdhbGxldF90eXBlXScpLmNoYW5nZShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBhbW91bnQgPSAkKCdbbmFtZT1hbW91bnRdJykudmFsKCk7CiAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS52YWwoKSAmJiAkKHRoaXMpLnZhbCgpICE9ICdkZXBvc2l0X3dhbGxldCcgJiYgJCh0aGlzKS52YWwoKSAhPSAnaW50ZXJlc3Rfd2FsbGV0JyAmJiBhbW91bnQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcmVzb3VyY2UgPSAkKCdzZWxlY3RbbmFtZT13YWxsZXRfdHlwZV0gb3B0aW9uOnNlbGVjdGVkJykuZGF0YSgnZ2F0ZXdheScpOwogICAgICAgICAgICAgICAgICAgIHZhciBmaXhlZF9jaGFyZ2UgPSBwYXJzZUZsb2F0KHJlc291cmNlLmZpeGVkX2NoYXJnZSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIHBlcmNlbnRfY2hhcmdlID0gcGFyc2VGbG9hdChyZXNvdXJjZS5wZXJjZW50X2NoYXJnZSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGNoYXJnZSA9IHBhcnNlRmxvYXQoZml4ZWRfY2hhcmdlICsgKGFtb3VudCAqIHBlcmNlbnRfY2hhcmdlIC8gMTAwKSkudG9GaXhlZCgyKTsKICAgICAgICAgICAgICAgICAgICAkKCcuY2hhcmdlJykudGV4dChjaGFyZ2UpOwogICAgICAgICAgICAgICAgICAgICQoJy5yYXRlJykudGV4dChwYXJzZUZsb2F0KHJlc291cmNlLnJhdGUpKTsKICAgICAgICAgICAgICAgICAgICAkKCcuZ2F0ZXdheS1pbmZvJykucmVtb3ZlQ2xhc3MoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZS5jdXJyZW5jeSA9PSAnVVNEJykgewogICAgICAgICAgICAgICAgICAgICAgICAkKCcucmF0ZS1pbmZvJykuYWRkQ2xhc3MoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5yYXRlLWluZm8nKS5yZW1vdmVDbGFzcygnZC1ub25lJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICQoJy5tZXRob2RfY3VycmVuY3knKS50ZXh0KHJlc291cmNlLmN1cnJlbmN5KTsKICAgICAgICAgICAgICAgICAgICAkKCcudG90YWwnKS50ZXh0KHBhcnNlRmxvYXQoY2hhcmdlKSArIHBhcnNlRmxvYXQoYW1vdW50KSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICQoJy5nYXRld2F5LWluZm8nKS5hZGRDbGFzcygnZC1ub25lJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgJCgnW25hbWU9aW52ZXN0X3RpbWVdJykub24oJ2NoYW5nZScsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbGV0IGludmVzdFRpbWUgPSAkKHRoaXMpLmZpbmQoJzpzZWxlY3RlZCcpLnZhbCgpOwogICAgICAgICAgICAgICAgaWYgKGludmVzdFRpbWUgPT0gJ2ludmVzdF9ub3cnKSB7CiAgICAgICAgICAgICAgICAgICAgJCgnLnNjaGVkdWxlJykuaGlkZSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkKCcuc2NoZWR1bGUnKS5zaG93KCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLmNoYW5nZSgpOwoKICAgICAgICAgICAgJCgnW25hbWU9c2NoZWR1bGVfdGltZXNdJykub24oJ2lucHV0JywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBsZXQgdGV4dCA9ICQodGhpcykudmFsKCkgPT0gMSA/IGBBZnRlcmAgOiBgRXZlcnlgOwogICAgICAgICAgICAgICAgJCgnW25hbWU9aG91cnNdJykuY2xvc2VzdCgnLmZvcm0tZ3JvdXAnKS5maW5kKCdsYWJlbCcpLnRleHQodGV4dCk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgJCgnW25hbWU9Y29tcG91bmRfaW50ZXJlc3RdJykub24oJ2lucHV0JywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBjYWxjdWxhdGVJbnRlcmVzdCgpOwogICAgICAgICAgICB9KQoKICAgICAgICAgICAgZnVuY3Rpb24gY2FsY3VsYXRlSW50ZXJlc3QoKSB7CiAgICAgICAgICAgICAgICBsZXQgaW50ZXJlc3QgPSBwYXJzZUZsb2F0KHBsYW4uaW50ZXJlc3QpOwogICAgICAgICAgICAgICAgbGV0IGludGVyZXN0VHlwZSA9IHBsYW4uaW50ZXJlc3RfdHlwZTsgLy8xOiBwZXJjZW50LCAwOiBmaXhlZAogICAgICAgICAgICAgICAgbGV0IHJlcGVhdFRpbWUgPSBwbGFuLnJlcGVhdF90aW1lOwogICAgICAgICAgICAgICAgbGV0IGNhcGl0YWxCYWNrID0gcGxhbi5jYXBpdGFsX2JhY2s7CiAgICAgICAgICAgICAgICBsZXQgaW52ZXN0QW1vdW50ID0gJCgnW25hbWU9YW1vdW50XScpLnZhbCgpICogMTsKICAgICAgICAgICAgICAgIGxldCBjb21wb3VuZEludGVyZXN0ID0gJCgnW25hbWU9Y29tcG91bmRfaW50ZXJlc3RdJykudmFsKCkgPz8gMDsKICAgICAgICAgICAgICAgIGxldCBjYWxjdWxhdGVkSW50ZXJlc3QgPSAwOwogICAgICAgICAgICAgICAgbGV0IGJhc2VJbnRlcmVzdCA9IDA7CgogICAgICAgICAgICAgICAgaWYgKHJlcGVhdFRpbWUgPT0gMCB8fCBpbnZlc3RBbW91bnQgPT0gMCkgewogICAgICAgICAgICAgICAgICAgICQoJy5jYWxjdWxhdGVkSW50ZXJlc3QnKS5oaWRlKCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkKCcuY2FsY3VsYXRlZEludGVyZXN0Jykuc2hvdygpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGxldCB0b3RhbEludGVyZXN0ID0gaW50ZXJlc3QgKiByZXBlYXRUaW1lOwoKICAgICAgICAgICAgICAgIGlmIChpbnRlcmVzdFR5cGUgPT0gJzEnKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbXBvdW5kSW50ZXJlc3QgPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZW1haW5pbmdSZXBlYXRUaW1lID0gcmVwZWF0VGltZSAtIGNvbXBvdW5kSW50ZXJlc3Q7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpbnRlcmVzdFJhdGlvID0gMSArIGludGVyZXN0IC8gMTAwOwogICAgICAgICAgICAgICAgICAgICAgICBsZXQgY29tcG91bmRDYXBpdGFsID0gaW52ZXN0QW1vdW50ICogTWF0aC5wb3coaW50ZXJlc3RSYXRpbywgY29tcG91bmRJbnRlcmVzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsSW50ZXJlc3QgPSAoY29tcG91bmRDYXBpdGFsICogaW50ZXJlc3QgLyAxMDApICogcmVtYWluaW5nUmVwZWF0VGltZTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICB0b3RhbEludGVyZXN0ID0gaW50ZXJlc3QgKiBpbnZlc3RBbW91bnQgLyAxMDAgKiByZXBlYXRUaW1lOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICB0b3RhbEludGVyZXN0ID0gY2FwaXRhbEJhY2sgPyB0b3RhbEludGVyZXN0IDogdG90YWxJbnRlcmVzdCAtIGludmVzdEFtb3VudDsKICAgICAgICAgICAgICAgICQoJy5jYWxjdWxhdGVkSW50ZXJlc3QnKS50ZXh0KGBUb3RhbCBQcm9maXQgYCArIHN5bWJvbCArIHRvdGFsSW50ZXJlc3QudG9GaXhlZCgyKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIAogICAgICAgIH0pKGpRdWVyeSk7CiAgICA8L3NjcmlwdD4KPHNjcmlwdD4KICAgIChmdW5jdGlvbiAoJCkgewogICAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgICAkKCcubmV3c2xhdGVyLWZvcm0nKS5vbignc3VibWl0JywgZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICB2YXIgZGF0YSA9ICQoJy5uZXdzbGF0ZXItZm9ybScpLnNlcmlhbGl6ZSgpOwogICAgICAgICAgICAkLmFqYXgoewogICAgICAgICAgICAgICAgdHlwZTogIlBPU1QiLAogICAgICAgICAgICAgICAgdXJsOiAiaHR0cHM6Ly9wcm9meC5pby9zdWJzY3JpYmUiLAogICAgICAgICAgICAgICAgZGF0YTogZGF0YSwKICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZihyZXNwb25zZS5zdGF0dXMgPT0gJ3N1Y2Nlc3MnKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdGlmeSgnc3VjY2VzcycsIHJlc3BvbnNlLm1lc3NhZ2UpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI2VtYWlsJykudmFsKCcnKTsKICAgICAgICAgICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3RpZnkoJ2Vycm9yJywgcmVzcG9uc2UubWVzc2FnZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgIH0pKGpRdWVyeSk7Cjwvc2NyaXB0PgogICAgPHNjcmlwdD4KICAgICAgICAoZnVuY3Rpb24oJCkgewogICAgICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGN1clN5bSA9ICckJzsKICAgICAgICAgICAgICAgICQoIiNjaGFuZ2VQbGFuIikub24oJ2NoYW5nZScsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciBzZWxlY3RlZFBsYW4gPSAkKCcjY2hhbmdlUGxhbicpLmZpbmQoJzpzZWxlY3RlZCcpOwogICAgICAgICAgICAgICAgICAgIHZhciBwbGFuSWQgPSBzZWxlY3RlZFBsYW4udmFsKCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGRhdGEgPSBzZWxlY3RlZFBsYW4uZGF0YSgpOwogICAgICAgICAgICAgICAgICAgIHZhciBmaXhlZEFtb3VudCA9IHBhcnNlRmxvYXQoZGF0YS5maXhlZF9hbW91bnQpLnRvRml4ZWQoMik7CiAgICAgICAgICAgICAgICAgICAgdmFyIG1pbmltdW1BbW91bnQgPSBwYXJzZUZsb2F0KGRhdGEubWluaW11bV9hbW91bnQpLnRvRml4ZWQoMik7CiAgICAgICAgICAgICAgICAgICAgdmFyIG1heGltdW1BbW91bnQgPSBwYXJzZUZsb2F0KGRhdGEubWF4aW11bV9hbW91bnQpLnRvRml4ZWQoMik7CgogICAgICAgICAgICAgICAgICAgIGlmIChmaXhlZEFtb3VudCA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnLmludmVzdC1pbnB1dCcpLnZhbChmaXhlZEFtb3VudCk7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5pbnZlc3QtaW5wdXQnKS5hdHRyKCdyZWFkb25seScsIHRydWUpOwogICAgICAgICAgICAgICAgICAgICAgICAkKCcuaW52ZXN0LXJhbmdlJykudGV4dCgnJyk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnLmludmVzdC1pbnB1dCcpLnZhbChtaW5pbXVtQW1vdW50KTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnLmludmVzdC1pbnB1dCcpLmF0dHIoJ3JlYWRvbmx5JywgZmFsc2UpOwogICAgICAgICAgICAgICAgICAgICAgICAkKCcuaW52ZXN0LXJhbmdlJykudGV4dCgnKCcgKyBjdXJTeW0gKyBtaW5pbXVtQW1vdW50ICsgJyAtICcgKyBjdXJTeW0gKyBtYXhpbXVtQW1vdW50ICsgJyknKTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIHZhciBpbnZlc3RBbW91bnQgPSAkKCcuaW52ZXN0LWlucHV0JykudmFsKCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIHByb2ZpdElucHV0ID0gJCgnLnByb2ZpdC1pbnB1dCcpLnRleHQoJycpOwoKICAgICAgICAgICAgICAgICAgICAkKCcucGVyaW9kJykudGV4dCgnJyk7CgogICAgICAgICAgICAgICAgICAgIGlmIChpbnZlc3RBbW91bnQgIT0gJycgJiYgcGxhbklkICE9IG51bGwpIHsKICAgICAgICAgICAgICAgICAgICAgICAgYWpheFBsYW5DYWxjKHBsYW5JZCwgaW52ZXN0QW1vdW50KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pLmNoYW5nZSgpOwoKICAgICAgICAgICAgICAgICQoIi5pbnZlc3QtaW5wdXQiKS5vbignY2hhbmdlJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHBsYW5JZCA9ICQoIiNjaGFuZ2VQbGFuIG9wdGlvbjpzZWxlY3RlZCIpLnZhbCgpOwogICAgICAgICAgICAgICAgICAgIHZhciBpbnZlc3RBbW91bnQgPSAkKHRoaXMpLnZhbCgpOwogICAgICAgICAgICAgICAgICAgIHZhciBwcm9maXRJbnB1dCA9ICQoJy5wcm9maXQtaW5wdXQnKS50ZXh0KCcnKTsKICAgICAgICAgICAgICAgICAgICAkKCcucGVyaW9kJykudGV4dCgnJyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGludmVzdEFtb3VudCAhPSAnJyAmJiBwbGFuSWQgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgICAgICBhamF4UGxhbkNhbGMocGxhbklkLCBpbnZlc3RBbW91bnQpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgZnVuY3Rpb24gYWpheFBsYW5DYWxjKHBsYW5JZCwgaW52ZXN0QW1vdW50KSB7CiAgICAgICAgICAgICAgICAkLmFqYXgoewogICAgICAgICAgICAgICAgICAgIHVybDogImh0dHBzOi8vcHJvZnguaW8vcGxhbkNhbGN1bGF0b3IiLAogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJwb3N0IiwKICAgICAgICAgICAgICAgICAgICBkYXRhOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBsYW5JZCwKICAgICAgICAgICAgICAgICAgICAgICAgX3Rva2VuOiAnN3R6NXQzWnE3UkQ5YXYybGY1OUNGMU1vQkVWQ2YzRDZRYXVmU21CVScsCiAgICAgICAgICAgICAgICAgICAgICAgIGludmVzdEFtb3VudAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLmVycm9ycykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaXppVG9hc3QuZXJyb3IoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHJlc3BvbnNlLmVycm9ycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogInRvcFJpZ2h0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbXNnID0gYCR7cmVzcG9uc2UuZGVzY3JpcHRpb259YAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnLnByb2ZpdC1pbnB1dCcpLnRleHQobXNnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5uZXRQcm9maXQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcucGVyaW9kJykudGV4dCgnTmV0IFByb2ZpdCAnICsgcmVzcG9uc2UubmV0UHJvZml0KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfSkoalF1ZXJ5KTsKICAgIDwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQ+DQogICAgICAgICAgICAoZnVuY3Rpb24oJCkgew0KICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAkKCcuY3VzdG9tLXdpZHRoJykuZWFjaChmdW5jdGlvbihpbmRleCwgdmFsdWUpIHsNCiAgICAgICAgICAgICAgICAgICAgJCh2YWx1ZSkuY3NzKCJtYXgtd2lkdGgiLCBgJHskKHZhbHVlKS5kYXRhKCdjdXN0b21fd2lkdGgnKX0lYCk7DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICB9KShqUXVlcnkpOw0KICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgKGZ1bmN0aW9uKCQpIHsNCiAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICAgICAgJCgnLmxhbmd1YWdlX3N3aXRjaGVyID4gLmxhbmd1YWdlX3N3aXRjaGVyX19jYXB0aW9uJykub24oJ2NsaWNrJywgZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoKS50b2dnbGVDbGFzcygnb3BlbicpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbigna2V5dXAnLCBmdW5jdGlvbihldnQpIHsNCiAgICAgICAgICAgICAgICBpZiAoKGV2dC5rZXlDb2RlIHx8IGV2dC53aGljaCkgPT09IDI3KSB7DQogICAgICAgICAgICAgICAgICAgICQoJy5sYW5ndWFnZV9zd2l0Y2hlcicpLnJlbW92ZUNsYXNzKCdvcGVuJyk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAkKGRvY3VtZW50KS5vbignY2xpY2snLCBmdW5jdGlvbihldnQpIHsNCiAgICAgICAgICAgICAgICBpZiAoJChldnQudGFyZ2V0KS5jbG9zZXN0KCIubGFuZ3VhZ2Vfc3dpdGNoZXIgPiAubGFuZ3VhZ2Vfc3dpdGNoZXJfX2NhcHRpb24iKS5sZW5ndGggPT09IDApIHsNCiAgICAgICAgICAgICAgICAgICAgJCgnLmxhbmd1YWdlX3N3aXRjaGVyJykucmVtb3ZlQ2xhc3MoJ29wZW4nKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkoalF1ZXJ5KTsNCiAgICA8L3NjcmlwdD4NCgogICAgPHNjcmlwdD4KICAgICAgICAoZnVuY3Rpb24oJCkgewogICAgICAgICAgICAidXNlIHN0cmljdCI7CgogICAgICAgICAgICAkKCcucG9saWN5Jykub24oJ2NsaWNrJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAkLmdldCgnaHR0cHM6Ly9wcm9meC5pby9jb29raWUvYWNjZXB0JywgZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgICAgICAgICAgICAkKCcuY29va2llcy1jYXJkJykuYWRkQ2xhc3MoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICQoJy5jb29raWVzLWNhcmQnKS5yZW1vdmVDbGFzcygnaGlkZScpCiAgICAgICAgICAgIH0sIDIwMDApOwoKICAgICAgICAgICAgdmFyIGlucHV0RWxlbWVudHMgPSAkKCdbdHlwZT10ZXh0XSxbdHlwZT1wYXNzd29yZF0sW3R5cGU9ZW1haWxdLFt0eXBlPW51bWJlcl0sc2VsZWN0LHRleHRhcmVhJyk7CiAgICAgICAgICAgICQuZWFjaChpbnB1dEVsZW1lbnRzLCBmdW5jdGlvbihpbmRleCwgZWxlbWVudCkgewogICAgICAgICAgICAgICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICAgICAgICAgICAgICBlbGVtZW50LmNsb3Nlc3QoJy5mb3JtLWdyb3VwJykuZmluZCgnbGFiZWwnKS5hdHRyKCdmb3InLCBlbGVtZW50LmF0dHIoJ25hbWUnKSk7CiAgICAgICAgICAgICAgICBlbGVtZW50LmF0dHIoJ2lkJywgZWxlbWVudC5hdHRyKCduYW1lJykpCiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgJC5lYWNoKCQoJ2lucHV0LCBzZWxlY3QsIHRleHRhcmVhJyksIGZ1bmN0aW9uKGksIGVsZW1lbnQpIHsKICAgICAgICAgICAgICAgIHZhciBlbGVtZW50VHlwZSA9ICQoZWxlbWVudCk7CiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudFR5cGUuYXR0cigndHlwZScpICE9ICdjaGVja2JveCcpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ3JlcXVpcmVkJykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJChlbGVtZW50KS5jbG9zZXN0KCcuZm9ybS1ncm91cCcpLmZpbmQoJ2xhYmVsJykuYWRkQ2xhc3MoJ3JlcXVpcmVkJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgndGFibGUnKSkuZm9yRWFjaCh0YWJsZSA9PiB7CiAgICAgICAgICAgICAgICBsZXQgaGVhZGluZyA9IHRhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoJ3RoZWFkIHRyIHRoJyk7CiAgICAgICAgICAgICAgICBBcnJheS5mcm9tKHRhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoJ3Rib2R5IHRyJykpLmZvckVhY2goKHJvdykgPT4gewogICAgICAgICAgICAgICAgICAgIEFycmF5LmZyb20ocm93LnF1ZXJ5U2VsZWN0b3JBbGwoJ3RkJykpLmZvckVhY2goKGNvbHVtLCBpKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtLnNldEF0dHJpYnV0ZSgnZGF0YS1sYWJlbCcsIGhlYWRpbmdbaV0uaW5uZXJUZXh0KQogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgbGV0IGRpc2FibGVTdWJtaXNzaW9uID0gZmFsc2U7CgogICAgICAgICAgICAkKCcuZGlzYWJsZVN1Ym1pc3Npb24nKS5vbignc3VibWl0JywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgaWYgKGRpc2FibGVTdWJtaXNzaW9uKSB7CiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpCiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGRpc2FibGVTdWJtaXNzaW9uID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgogICAgICAgIH0pKGpRdWVyeSk7CiAgICA8L3NjcmlwdD4KCjwvYm9keT4KCjwvaHRtbD4K"}},"time_used":348,"timings":{"blocked":-1,"dns":109,"connect":27,"send":0,"wait":143,"receive":7,"ssl":62},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/vendor/nice-select.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.629Z","timestamp":1785143153629,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/vendor/nice-select.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"102f-67b374e4-db4cb9ff9cf6fe75;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 924\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":4143,"size_decoded":1363,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"9ac6c235d6b9825d93a3fa92eb9b4898","sha1":"edf26a3a1f9a3c5c8cdb711bb74e074311286f21","sha256":"ee0a43a02f144c5a40643b509b6c2eefb0625cbd95445937788ccf7bd8ede50a","sha512":"d12ef54774890f46cf4ee750ffb567da54248f66a2b2797b5e59632083edcba40bda60cb36751b56f2a83bfd2d93c6cdb301326ad5c11deb96dfe8491ed07445","ssdeep":"48:McpRfkPCWGokjJ/VP6H6xf6pWU3IfiuB33SVXF6DbR8A7WpsBTkxstQE+feeG89a:LmMPSaxiZ4FiZFMUsE2i1pFm","tlshash":"bf81ee2ad7005142503a877fefd36a18e7398143a52206acbbdd86074f3d95c98a5f8b","first_seen":"2023-07-15T17:41:21Z","last_seen":"2026-07-30T06:02:32.522164Z","times_seen":70,"resource_available":false,"data":"Lm5pY2Utc2VsZWN0IHsNCiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICBib3JkZXI6IHNvbGlkIDFweCAjZThlOGU4Ow0KICBib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICBjbGVhcjogYm90aDsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBkaXNwbGF5OiBibG9jazsNCiAgZmxvYXQ6IGxlZnQ7DQogIGZvbnQtZmFtaWx5OiBpbmhlcml0Ow0KICBmb250LXNpemU6IDE0cHg7DQogIGZvbnQtd2VpZ2h0OiBub3JtYWw7DQogIGhlaWdodDogNDJweDsNCiAgbGluZS1oZWlnaHQ6IDQwcHg7DQogIG91dGxpbmU6IG5vbmU7DQogIHBhZGRpbmctbGVmdDogMThweDsNCiAgcGFkZGluZy1yaWdodDogMzBweDsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7DQogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7DQogIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0Ow0KICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOw0KICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOw0KICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOw0KICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOw0KICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICB3aWR0aDogYXV0bzsgfQ0KICAubmljZS1zZWxlY3Q6aG92ZXIgew0KICAgIGJvcmRlci1jb2xvcjogI2RiZGJkYjsgfQ0KICAubmljZS1zZWxlY3Q6YWN0aXZlLCAubmljZS1zZWxlY3Qub3BlbiwgLm5pY2Utc2VsZWN0OmZvY3VzIHsNCiAgICBib3JkZXItY29sb3I6ICM5OTk7IH0NCiAgLm5pY2Utc2VsZWN0OmFmdGVyIHsNCiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzk5OTsNCiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjOTk5Ow0KICAgIGNvbnRlbnQ6ICcnOw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIGhlaWdodDogNXB4Ow0KICAgIG1hcmdpbi10b3A6IC00cHg7DQogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHJpZ2h0OiAxMnB4Ow0KICAgIHRvcDogNTAlOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNjYlIDY2JTsNCiAgICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDY2JSA2NiU7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0Ow0KICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDsNCiAgICB3aWR0aDogNXB4OyB9DQogIC5uaWNlLXNlbGVjdC5vcGVuOmFmdGVyIHsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOw0KICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsgfQ0KICAubmljZS1zZWxlY3Qub3BlbiAubGlzdCB7DQogICAgb3BhY2l0eTogMTsNCiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsNCiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsgfQ0KICAubmljZS1zZWxlY3QuZGlzYWJsZWQgew0KICAgIGJvcmRlci1jb2xvcjogI2VkZWRlZDsNCiAgICBjb2xvcjogIzk5OTsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfQ0KICAgIC5uaWNlLXNlbGVjdC5kaXNhYmxlZDphZnRlciB7DQogICAgICBib3JkZXItY29sb3I6ICNjY2NjY2M7IH0NCiAgLm5pY2Utc2VsZWN0LndpZGUgew0KICAgIHdpZHRoOiAxMDAlOyB9DQogICAgLm5pY2Utc2VsZWN0LndpZGUgLmxpc3Qgew0KICAgICAgbGVmdDogMCAhaW1wb3J0YW50Ow0KICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDsgfQ0KICAubmljZS1zZWxlY3QucmlnaHQgew0KICAgIGZsb2F0OiByaWdodDsgfQ0KICAgIC5uaWNlLXNlbGVjdC5yaWdodCAubGlzdCB7DQogICAgICBsZWZ0OiBhdXRvOw0KICAgICAgcmlnaHQ6IDA7IH0NCiAgLm5pY2Utc2VsZWN0LnNtYWxsIHsNCiAgICBmb250LXNpemU6IDEycHg7DQogICAgaGVpZ2h0OiAzNnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyB9DQogICAgLm5pY2Utc2VsZWN0LnNtYWxsOmFmdGVyIHsNCiAgICAgIGhlaWdodDogNHB4Ow0KICAgICAgd2lkdGg6IDRweDsgfQ0KICAgIC5uaWNlLXNlbGVjdC5zbWFsbCAub3B0aW9uIHsNCiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4Ow0KICAgICAgbWluLWhlaWdodDogMzRweDsgfQ0KICAubmljZS1zZWxlY3QgLmxpc3Qgew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7DQogICAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDY4LCA2OCwgNjgsIDAuMTEpOw0KICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgbWFyZ2luLXRvcDogNHB4Ow0KICAgIG9wYWNpdHk6IDA7DQogICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICBwYWRkaW5nOiAwOw0KICAgIHBvaW50ZXItZXZlbnRzOiBub25lOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDEwMCU7DQogICAgbGVmdDogMDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOw0KICAgICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7DQogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSkgdHJhbnNsYXRlWSgtMjFweCk7DQogICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNzUpIHRyYW5zbGF0ZVkoLTIxcHgpOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KSB0cmFuc2xhdGVZKC0yMXB4KTsNCiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0Ow0KICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0Ow0KICAgIHotaW5kZXg6IDk7IH0NCiAgICAubmljZS1zZWxlY3QgLmxpc3Q6aG92ZXIgLm9wdGlvbjpub3QoOmhvdmVyKSB7DQogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9DQogIC5uaWNlLXNlbGVjdCAub3B0aW9uIHsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsaW5lLWhlaWdodDogNDBweDsNCiAgICBsaXN0LXN0eWxlOiBub25lOw0KICAgIG1pbi1oZWlnaHQ6IDQwcHg7DQogICAgb3V0bGluZTogbm9uZTsNCiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7DQogICAgcGFkZGluZy1yaWdodDogMjlweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnM7DQogICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH0NCiAgICAubmljZS1zZWxlY3QgLm9wdGlvbjpob3ZlciwgLm5pY2Utc2VsZWN0IC5vcHRpb24uZm9jdXMsIC5uaWNlLXNlbGVjdCAub3B0aW9uLnNlbGVjdGVkLmZvY3VzIHsNCiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7IH0NCiAgICAubmljZS1zZWxlY3QgLm9wdGlvbi5zZWxlY3RlZCB7DQogICAgICBmb250LXdlaWdodDogYm9sZDsgfQ0KICAgIC5uaWNlLXNlbGVjdCAub3B0aW9uLmRpc2FibGVkIHsNCiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgY29sb3I6ICM5OTk7DQogICAgICBjdXJzb3I6IGRlZmF1bHQ7IH0NCg0KLm5vLWNzc3BvaW50ZXJldmVudHMgLm5pY2Utc2VsZWN0IC5saXN0IHsNCiAgZGlzcGxheTogbm9uZTsgfQ0KDQoubm8tY3NzcG9pbnRlcmV2ZW50cyAubmljZS1zZWxlY3Qub3BlbiAubGlzdCB7DQogIGRpc3BsYXk6IGJsb2NrOyB9"}},"time_used":67,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":67,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/bootstrap.bundle.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.823Z","timestamp":1785143153823,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/js/bootstrap.bundle.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"13a2a-67b374e4-f678fe5498cb4db;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 22257\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":80426,"size_decoded":22714,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text, with very long lines (65294), with CRLF line terminators","md5":"d3fac155eeeff0ebf33407a901291b8d","sha1":"51a602a556aa0b62e9a1426d27eac9278dd1156b","sha256":"448229f9de918450e93c0c537463bfb248c56cd64cd00c6efafdee07185ed6c2","sha512":"4b6e251dd64731e9f6b7b9240bab2c787f0c89413a1247ae7bb1815cd913f698aea33fb8f85dd4b66481cc987dbce25d207735b4315e81fad50b4341bdedba07","ssdeep":"1536:dzSMTGR2t4n+3ifBHJR9WbUHk3j8YY+PwRM3CGJI9BqQM6k+:w4Fj8GPwRM3CiI9BtB","tlshash":"9f73c6593254b4770ade45b68037420bf2265d98b24b802cb5bcadde2a7dc863277f7c","first_seen":"2023-04-16T23:45:43Z","last_seen":"2026-08-03T07:47:02.669406Z","times_seen":676,"resource_available":true,"data":"LyohDQogICogQm9vdHN0cmFwIHY1LjIuMyAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLykNCiAgKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFRoZSBCb290c3RyYXAgQXV0aG9ycyAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2dyYXBocy9jb250cmlidXRvcnMpDQogICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpDQogICovDQohZnVuY3Rpb24odCxlKXsib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlP21vZHVsZS5leHBvcnRzPWUoKToiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShlKToodD0idW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbFRoaXM/Z2xvYmFsVGhpczp0fHxzZWxmKS5ib290c3RyYXA9ZSgpfSh0aGlzLChmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijtjb25zdCB0PSJ0cmFuc2l0aW9uZW5kIixlPXQ9PntsZXQgZT10LmdldEF0dHJpYnV0ZSgiZGF0YS1icy10YXJnZXQiKTtpZighZXx8IiMiPT09ZSl7bGV0IGk9dC5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZighaXx8IWkuaW5jbHVkZXMoIiMiKSYmIWkuc3RhcnRzV2l0aCgiLiIpKXJldHVybiBudWxsO2kuaW5jbHVkZXMoIiMiKSYmIWkuc3RhcnRzV2l0aCgiIyIpJiYoaT1gIyR7aS5zcGxpdCgiIyIpWzFdfWApLGU9aSYmIiMiIT09aT9pLnRyaW0oKTpudWxsfXJldHVybiBlfSxpPXQ9Pntjb25zdCBpPWUodCk7cmV0dXJuIGkmJmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoaSk/aTpudWxsfSxuPXQ9Pntjb25zdCBpPWUodCk7cmV0dXJuIGk/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihpKTpudWxsfSxzPWU9PntlLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KHQpKX0sbz10PT4hKCF0fHwib2JqZWN0IiE9dHlwZW9mIHQpJiYodm9pZCAwIT09dC5qcXVlcnkmJih0PXRbMF0pLHZvaWQgMCE9PXQubm9kZVR5cGUpLHI9dD0+byh0KT90LmpxdWVyeT90WzBdOnQ6InN0cmluZyI9PXR5cGVvZiB0JiZ0Lmxlbmd0aD4wP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCk6bnVsbCxhPXQ9PntpZighbyh0KXx8MD09PXQuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpcmV0dXJuITE7Y29uc3QgZT0idmlzaWJsZSI9PT1nZXRDb21wdXRlZFN0eWxlKHQpLmdldFByb3BlcnR5VmFsdWUoInZpc2liaWxpdHkiKSxpPXQuY2xvc2VzdCgiZGV0YWlsczpub3QoW29wZW5dKSIpO2lmKCFpKXJldHVybiBlO2lmKGkhPT10KXtjb25zdCBlPXQuY2xvc2VzdCgic3VtbWFyeSIpO2lmKGUmJmUucGFyZW50Tm9kZSE9PWkpcmV0dXJuITE7aWYobnVsbD09PWUpcmV0dXJuITF9cmV0dXJuIGV9LGw9dD0+IXR8fHQubm9kZVR5cGUhPT1Ob2RlLkVMRU1FTlRfTk9ERXx8ISF0LmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKXx8KHZvaWQgMCE9PXQuZGlzYWJsZWQ/dC5kaXNhYmxlZDp0Lmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKSYmImZhbHNlIiE9PXQuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKSxjPXQ9PntpZighZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmF0dGFjaFNoYWRvdylyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgdC5nZXRSb290Tm9kZSl7Y29uc3QgZT10LmdldFJvb3ROb2RlKCk7cmV0dXJuIGUgaW5zdGFuY2VvZiBTaGFkb3dSb290P2U6bnVsbH1yZXR1cm4gdCBpbnN0YW5jZW9mIFNoYWRvd1Jvb3Q/dDp0LnBhcmVudE5vZGU/Yyh0LnBhcmVudE5vZGUpOm51bGx9LGg9KCk9Pnt9LGQ9dD0+e3Qub2Zmc2V0SGVpZ2h0fSx1PSgpPT53aW5kb3cualF1ZXJ5JiYhZG9jdW1lbnQuYm9keS5oYXNBdHRyaWJ1dGUoImRhdGEtYnMtbm8tanF1ZXJ5Iik/d2luZG93LmpRdWVyeTpudWxsLGY9W10scD0oKT0+InJ0bCI9PT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGlyLGc9dD0+e3ZhciBlO2U9KCk9Pntjb25zdCBlPXUoKTtpZihlKXtjb25zdCBpPXQuTkFNRSxuPWUuZm5baV07ZS5mbltpXT10LmpRdWVyeUludGVyZmFjZSxlLmZuW2ldLkNvbnN0cnVjdG9yPXQsZS5mbltpXS5ub0NvbmZsaWN0PSgpPT4oZS5mbltpXT1uLHQualF1ZXJ5SW50ZXJmYWNlKX19LCJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/KGYubGVuZ3RofHxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwoKCk9Pntmb3IoY29uc3QgdCBvZiBmKXQoKX0pKSxmLnB1c2goZSkpOmUoKX0sbT10PT57ImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQoKX0sXz0oZSxpLG49ITApPT57aWYoIW4pcmV0dXJuIHZvaWQgbShlKTtjb25zdCBvPSh0PT57aWYoIXQpcmV0dXJuIDA7bGV0e3RyYW5zaXRpb25EdXJhdGlvbjplLHRyYW5zaXRpb25EZWxheTppfT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KTtjb25zdCBuPU51bWJlci5wYXJzZUZsb2F0KGUpLHM9TnVtYmVyLnBhcnNlRmxvYXQoaSk7cmV0dXJuIG58fHM/KGU9ZS5zcGxpdCgiLCIpWzBdLGk9aS5zcGxpdCgiLCIpWzBdLDFlMyooTnVtYmVyLnBhcnNlRmxvYXQoZSkrTnVtYmVyLnBhcnNlRmxvYXQoaSkpKTowfSkoaSkrNTtsZXQgcj0hMTtjb25zdCBhPSh7dGFyZ2V0Om59KT0+e249PT1pJiYocj0hMCxpLnJlbW92ZUV2ZW50TGlzdGVuZXIodCxhKSxtKGUpKX07aS5hZGRFdmVudExpc3RlbmVyKHQsYSksc2V0VGltZW91dCgoKCk9PntyfHxzKGkpfSksbyl9LGI9KHQsZSxpLG4pPT57Y29uc3Qgcz10Lmxlbmd0aDtsZXQgbz10LmluZGV4T2YoZSk7cmV0dXJuLTE9PT1vPyFpJiZuP3Rbcy0xXTp0WzBdOihvKz1pPzE6LTEsbiYmKG89KG8rcyklcyksdFtNYXRoLm1heCgwLE1hdGgubWluKG8scy0xKSldKX0sdj0vW14uXSooPz1cLi4qKVwufC4qLyx5PS9cLi4qLyx3PS86OlxkKyQvLEE9e307bGV0IEU9MTtjb25zdCBUPXttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V0In0sQz1uZXcgU2V0KFsiY2xpY2siLCJkYmxjbGljayIsIm1vdXNldXAiLCJtb3VzZWRvd24iLCJjb250ZXh0bWVudSIsIm1vdXNld2hlZWwiLCJET01Nb3VzZVNjcm9sbCIsIm1vdXNlb3ZlciIsIm1vdXNlb3V0IiwibW91c2Vtb3ZlIiwic2VsZWN0c3RhcnQiLCJzZWxlY3RlbmQiLCJrZXlkb3duIiwia2V5cHJlc3MiLCJrZXl1cCIsIm9yaWVudGF0aW9uY2hhbmdlIiwidG91Y2hzdGFydCIsInRvdWNobW92ZSIsInRvdWNoZW5kIiwidG91Y2hjYW5jZWwiLCJwb2ludGVyZG93biIsInBvaW50ZXJtb3ZlIiwicG9pbnRlcnVwIiwicG9pbnRlcmxlYXZlIiwicG9pbnRlcmNhbmNlbCIsImdlc3R1cmVzdGFydCIsImdlc3R1cmVjaGFuZ2UiLCJnZXN0dXJlZW5kIiwiZm9jdXMiLCJibHVyIiwiY2hhbmdlIiwicmVzZXQiLCJzZWxlY3QiLCJzdWJtaXQiLCJmb2N1c2luIiwiZm9jdXNvdXQiLCJsb2FkIiwidW5sb2FkIiwiYmVmb3JldW5sb2FkIiwicmVzaXplIiwibW92ZSIsIkRPTUNvbnRlbnRMb2FkZWQiLCJyZWFkeXN0YXRlY2hhbmdlIiwiZXJyb3IiLCJhYm9ydCIsInNjcm9sbCJdKTtmdW5jdGlvbiBPKHQsZSl7cmV0dXJuIGUmJmAke2V9Ojoke0UrK31gfHx0LnVpZEV2ZW50fHxFKyt9ZnVuY3Rpb24geCh0KXtjb25zdCBlPU8odCk7cmV0dXJuIHQudWlkRXZlbnQ9ZSxBW2VdPUFbZV18fHt9LEFbZV19ZnVuY3Rpb24gayh0LGUsaT1udWxsKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyh0KS5maW5kKCh0PT50LmNhbGxhYmxlPT09ZSYmdC5kZWxlZ2F0aW9uU2VsZWN0b3I9PT1pKSl9ZnVuY3Rpb24gTCh0LGUsaSl7Y29uc3Qgbj0ic3RyaW5nIj09dHlwZW9mIGUscz1uP2k6ZXx8aTtsZXQgbz1OKHQpO3JldHVybiBDLmhhcyhvKXx8KG89dCksW24scyxvXX1mdW5jdGlvbiBEKHQsZSxpLG4scyl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhdClyZXR1cm47bGV0W28scixhXT1MKGUsaSxuKTtpZihlIGluIFQpe2NvbnN0IHQ9dD0+ZnVuY3Rpb24oZSl7aWYoIWUucmVsYXRlZFRhcmdldHx8ZS5yZWxhdGVkVGFyZ2V0IT09ZS5kZWxlZ2F0ZVRhcmdldCYmIWUuZGVsZWdhdGVUYXJnZXQuY29udGFpbnMoZS5yZWxhdGVkVGFyZ2V0KSlyZXR1cm4gdC5jYWxsKHRoaXMsZSl9O3I9dChyKX1jb25zdCBsPXgodCksYz1sW2FdfHwobFthXT17fSksaD1rKGMscixvP2k6bnVsbCk7aWYoaClyZXR1cm4gdm9pZChoLm9uZU9mZj1oLm9uZU9mZiYmcyk7Y29uc3QgZD1PKHIsZS5yZXBsYWNlKHYsIiIpKSx1PW8/ZnVuY3Rpb24odCxlLGkpe3JldHVybiBmdW5jdGlvbiBuKHMpe2NvbnN0IG89dC5xdWVyeVNlbGVjdG9yQWxsKGUpO2ZvcihsZXR7dGFyZ2V0OnJ9PXM7ciYmciE9PXRoaXM7cj1yLnBhcmVudE5vZGUpZm9yKGNvbnN0IGEgb2YgbylpZihhPT09cilyZXR1cm4gaihzLHtkZWxlZ2F0ZVRhcmdldDpyfSksbi5vbmVPZmYmJlAub2ZmKHQscy50eXBlLGUsaSksaS5hcHBseShyLFtzXSl9fSh0LGkscik6ZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24gaShuKXtyZXR1cm4gaihuLHtkZWxlZ2F0ZVRhcmdldDp0fSksaS5vbmVPZmYmJlAub2ZmKHQsbi50eXBlLGUpLGUuYXBwbHkodCxbbl0pfX0odCxyKTt1LmRlbGVnYXRpb25TZWxlY3Rvcj1vP2k6bnVsbCx1LmNhbGxhYmxlPXIsdS5vbmVPZmY9cyx1LnVpZEV2ZW50PWQsY1tkXT11LHQuYWRkRXZlbnRMaXN0ZW5lcihhLHUsbyl9ZnVuY3Rpb24gUyh0LGUsaSxuLHMpe2NvbnN0IG89ayhlW2ldLG4scyk7byYmKHQucmVtb3ZlRXZlbnRMaXN0ZW5lcihpLG8sQm9vbGVhbihzKSksZGVsZXRlIGVbaV1bby51aWRFdmVudF0pfWZ1bmN0aW9uIEkodCxlLGksbil7Y29uc3Qgcz1lW2ldfHx7fTtmb3IoY29uc3QgbyBvZiBPYmplY3Qua2V5cyhzKSlpZihvLmluY2x1ZGVzKG4pKXtjb25zdCBuPXNbb107Uyh0LGUsaSxuLmNhbGxhYmxlLG4uZGVsZWdhdGlvblNlbGVjdG9yKX19ZnVuY3Rpb24gTih0KXtyZXR1cm4gdD10LnJlcGxhY2UoeSwiIiksVFt0XXx8dH1jb25zdCBQPXtvbih0LGUsaSxuKXtEKHQsZSxpLG4sITEpfSxvbmUodCxlLGksbil7RCh0LGUsaSxuLCEwKX0sb2ZmKHQsZSxpLG4pe2lmKCJzdHJpbmciIT10eXBlb2YgZXx8IXQpcmV0dXJuO2NvbnN0W3MsbyxyXT1MKGUsaSxuKSxhPXIhPT1lLGw9eCh0KSxjPWxbcl18fHt9LGg9ZS5zdGFydHNXaXRoKCIuIik7aWYodm9pZCAwPT09byl7aWYoaClmb3IoY29uc3QgaSBvZiBPYmplY3Qua2V5cyhsKSlJKHQsbCxpLGUuc2xpY2UoMSkpO2Zvcihjb25zdCBpIG9mIE9iamVjdC5rZXlzKGMpKXtjb25zdCBuPWkucmVwbGFjZSh3LCIiKTtpZighYXx8ZS5pbmNsdWRlcyhuKSl7Y29uc3QgZT1jW2ldO1ModCxsLHIsZS5jYWxsYWJsZSxlLmRlbGVnYXRpb25TZWxlY3Rvcil9fX1lbHNle2lmKCFPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuO1ModCxsLHIsbyxzP2k6bnVsbCl9fSx0cmlnZ2VyKHQsZSxpKXtpZigic3RyaW5nIiE9dHlwZW9mIGV8fCF0KXJldHVybiBudWxsO2NvbnN0IG49dSgpO2xldCBzPW51bGwsbz0hMCxyPSEwLGE9ITE7ZSE9PU4oZSkmJm4mJihzPW4uRXZlbnQoZSxpKSxuKHQpLnRyaWdnZXIocyksbz0hcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpLHI9IXMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSxhPXMuaXNEZWZhdWx0UHJldmVudGVkKCkpO2xldCBsPW5ldyBFdmVudChlLHtidWJibGVzOm8sY2FuY2VsYWJsZTohMH0pO3JldHVybiBsPWoobCxpKSxhJiZsLnByZXZlbnREZWZhdWx0KCksciYmdC5kaXNwYXRjaEV2ZW50KGwpLGwuZGVmYXVsdFByZXZlbnRlZCYmcyYmcy5wcmV2ZW50RGVmYXVsdCgpLGx9fTtmdW5jdGlvbiBqKHQsZSl7Zm9yKGNvbnN0W2ksbl1vZiBPYmplY3QuZW50cmllcyhlfHx7fSkpdHJ5e3RbaV09bn1jYXRjaChlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxpLHtjb25maWd1cmFibGU6ITAsZ2V0OigpPT5ufSl9cmV0dXJuIHR9Y29uc3QgTT1uZXcgTWFwLEg9e3NldCh0LGUsaSl7TS5oYXModCl8fE0uc2V0KHQsbmV3IE1hcCk7Y29uc3Qgbj1NLmdldCh0KTtuLmhhcyhlKXx8MD09PW4uc2l6ZT9uLnNldChlLGkpOmNvbnNvbGUuZXJyb3IoYEJvb3RzdHJhcCBkb2Vzbid0IGFsbG93IG1vcmUgdGhhbiBvbmUgaW5zdGFuY2UgcGVyIGVsZW1lbnQuIEJvdW5kIGluc3RhbmNlOiAke0FycmF5LmZyb20obi5rZXlzKCkpWzBdfS5gKX0sZ2V0Oih0LGUpPT5NLmhhcyh0KSYmTS5nZXQodCkuZ2V0KGUpfHxudWxsLHJlbW92ZSh0LGUpe2lmKCFNLmhhcyh0KSlyZXR1cm47Y29uc3QgaT1NLmdldCh0KTtpLmRlbGV0ZShlKSwwPT09aS5zaXplJiZNLmRlbGV0ZSh0KX19O2Z1bmN0aW9uICQodCl7aWYoInRydWUiPT09dClyZXR1cm4hMDtpZigiZmFsc2UiPT09dClyZXR1cm4hMTtpZih0PT09TnVtYmVyKHQpLnRvU3RyaW5nKCkpcmV0dXJuIE51bWJlcih0KTtpZigiIj09PXR8fCJudWxsIj09PXQpcmV0dXJuIG51bGw7aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiB0O3RyeXtyZXR1cm4gSlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQodCkpfWNhdGNoKGUpe3JldHVybiB0fX1mdW5jdGlvbiBXKHQpe3JldHVybiB0LnJlcGxhY2UoL1tBLVpdL2csKHQ9PmAtJHt0LnRvTG93ZXJDYXNlKCl9YCkpfWNvbnN0IEI9e3NldERhdGFBdHRyaWJ1dGUodCxlLGkpe3Quc2V0QXR0cmlidXRlKGBkYXRhLWJzLSR7VyhlKX1gLGkpfSxyZW1vdmVEYXRhQXR0cmlidXRlKHQsZSl7dC5yZW1vdmVBdHRyaWJ1dGUoYGRhdGEtYnMtJHtXKGUpfWApfSxnZXREYXRhQXR0cmlidXRlcyh0KXtpZighdClyZXR1cm57fTtjb25zdCBlPXt9LGk9T2JqZWN0LmtleXModC5kYXRhc2V0KS5maWx0ZXIoKHQ9PnQuc3RhcnRzV2l0aCgiYnMiKSYmIXQuc3RhcnRzV2l0aCgiYnNDb25maWciKSkpO2Zvcihjb25zdCBuIG9mIGkpe2xldCBpPW4ucmVwbGFjZSgvXmJzLywiIik7aT1pLmNoYXJBdCgwKS50b0xvd2VyQ2FzZSgpK2kuc2xpY2UoMSxpLmxlbmd0aCksZVtpXT0kKHQuZGF0YXNldFtuXSl9cmV0dXJuIGV9LGdldERhdGFBdHRyaWJ1dGU6KHQsZSk9PiQodC5nZXRBdHRyaWJ1dGUoYGRhdGEtYnMtJHtXKGUpfWApKX07Y2xhc3MgRntzdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm57fX1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJue319c3RhdGljIGdldCBOQU1FKCl7dGhyb3cgbmV3IEVycm9yKCdZb3UgaGF2ZSB0byBpbXBsZW1lbnQgdGhlIHN0YXRpYyBtZXRob2QgIk5BTUUiLCBmb3IgZWFjaCBjb21wb25lbnQhJyl9X2dldENvbmZpZyh0KXtyZXR1cm4gdD10aGlzLl9tZXJnZUNvbmZpZ09iaih0KSx0PXRoaXMuX2NvbmZpZ0FmdGVyTWVyZ2UodCksdGhpcy5fdHlwZUNoZWNrQ29uZmlnKHQpLHR9X2NvbmZpZ0FmdGVyTWVyZ2UodCl7cmV0dXJuIHR9X21lcmdlQ29uZmlnT2JqKHQsZSl7Y29uc3QgaT1vKGUpP0IuZ2V0RGF0YUF0dHJpYnV0ZShlLCJjb25maWciKTp7fTtyZXR1cm57Li4udGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0LC4uLiJvYmplY3QiPT10eXBlb2YgaT9pOnt9LC4uLm8oZSk/Qi5nZXREYXRhQXR0cmlidXRlcyhlKTp7fSwuLi4ib2JqZWN0Ij09dHlwZW9mIHQ/dDp7fX19X3R5cGVDaGVja0NvbmZpZyh0LGU9dGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSl7Zm9yKGNvbnN0IG4gb2YgT2JqZWN0LmtleXMoZSkpe2NvbnN0IHM9ZVtuXSxyPXRbbl0sYT1vKHIpPyJlbGVtZW50IjpudWxsPT0oaT1yKT9gJHtpfWA6T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGkpLm1hdGNoKC9ccyhbYS16XSspL2kpWzFdLnRvTG93ZXJDYXNlKCk7aWYoIW5ldyBSZWdFeHAocykudGVzdChhKSl0aHJvdyBuZXcgVHlwZUVycm9yKGAke3RoaXMuY29uc3RydWN0b3IuTkFNRS50b1VwcGVyQ2FzZSgpfTogT3B0aW9uICIke259IiBwcm92aWRlZCB0eXBlICIke2F9IiBidXQgZXhwZWN0ZWQgdHlwZSAiJHtzfSIuYCl9dmFyIGl9fWNsYXNzIHogZXh0ZW5kcyBGe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIoKSwodD1yKHQpKSYmKHRoaXMuX2VsZW1lbnQ9dCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLEguc2V0KHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSx0aGlzKSl9ZGlzcG9zZSgpe0gucmVtb3ZlKHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSksUC5vZmYodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkVWRU5UX0tFWSk7Zm9yKGNvbnN0IHQgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpdGhpc1t0XT1udWxsfV9xdWV1ZUNhbGxiYWNrKHQsZSxpPSEwKXtfKHQsZSxpKX1fZ2V0Q29uZmlnKHQpe3JldHVybiB0PXRoaXMuX21lcmdlQ29uZmlnT2JqKHQsdGhpcy5fZWxlbWVudCksdD10aGlzLl9jb25maWdBZnRlck1lcmdlKHQpLHRoaXMuX3R5cGVDaGVja0NvbmZpZyh0KSx0fXN0YXRpYyBnZXRJbnN0YW5jZSh0KXtyZXR1cm4gSC5nZXQocih0KSx0aGlzLkRBVEFfS0VZKX1zdGF0aWMgZ2V0T3JDcmVhdGVJbnN0YW5jZSh0LGU9e30pe3JldHVybiB0aGlzLmdldEluc3RhbmNlKHQpfHxuZXcgdGhpcyh0LCJvYmplY3QiPT10eXBlb2YgZT9lOm51bGwpfXN0YXRpYyBnZXQgVkVSU0lPTigpe3JldHVybiI1LjIuMyJ9c3RhdGljIGdldCBEQVRBX0tFWSgpe3JldHVybmBicy4ke3RoaXMuTkFNRX1gfXN0YXRpYyBnZXQgRVZFTlRfS0VZKCl7cmV0dXJuYC4ke3RoaXMuREFUQV9LRVl9YH1zdGF0aWMgZXZlbnROYW1lKHQpe3JldHVybmAke3R9JHt0aGlzLkVWRU5UX0tFWX1gfX1jb25zdCBxPSh0LGU9ImhpZGUiKT0+e2NvbnN0IGk9YGNsaWNrLmRpc21pc3Mke3QuRVZFTlRfS0VZfWAscz10Lk5BTUU7UC5vbihkb2N1bWVudCxpLGBbZGF0YS1icy1kaXNtaXNzPSIke3N9Il1gLChmdW5jdGlvbihpKXtpZihbIkEiLCJBUkVBIl0uaW5jbHVkZXModGhpcy50YWdOYW1lKSYmaS5wcmV2ZW50RGVmYXVsdCgpLGwodGhpcykpcmV0dXJuO2NvbnN0IG89bih0aGlzKXx8dGhpcy5jbG9zZXN0KGAuJHtzfWApO3QuZ2V0T3JDcmVhdGVJbnN0YW5jZShvKVtlXSgpfSkpfTtjbGFzcyBSIGV4dGVuZHMgentzdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4iYWxlcnQifWNsb3NlKCl7aWYoUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImNsb3NlLmJzLmFsZXJ0IikuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJzaG93Iik7Y29uc3QgdD10aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiZmFkZSIpO3RoaXMuX3F1ZXVlQ2FsbGJhY2soKCgpPT50aGlzLl9kZXN0cm95RWxlbWVudCgpKSx0aGlzLl9lbGVtZW50LHQpfV9kZXN0cm95RWxlbWVudCgpe3RoaXMuX2VsZW1lbnQucmVtb3ZlKCksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImNsb3NlZC5icy5hbGVydCIpLHRoaXMuZGlzcG9zZSgpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPVIuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzKTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF18fHQuc3RhcnRzV2l0aCgiXyIpfHwiY29uc3RydWN0b3IiPT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7ZVt0XSh0aGlzKX19KSl9fXEoUiwiY2xvc2UiKSxnKFIpO2NvbnN0IFY9J1tkYXRhLWJzLXRvZ2dsZT0iYnV0dG9uIl0nO2NsYXNzIEsgZXh0ZW5kcyB6e3N0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJidXR0b24ifXRvZ2dsZSgpe3RoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIikpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPUsuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzKTsidG9nZ2xlIj09PXQmJmVbdF0oKX0pKX19UC5vbihkb2N1bWVudCwiY2xpY2suYnMuYnV0dG9uLmRhdGEtYXBpIixWLCh0PT57dC5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGU9dC50YXJnZXQuY2xvc2VzdChWKTtLLmdldE9yQ3JlYXRlSW5zdGFuY2UoZSkudG9nZ2xlKCl9KSksZyhLKTtjb25zdCBRPXtmaW5kOih0LGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KT0+W10uY29uY2F0KC4uLkVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3JBbGwuY2FsbChlLHQpKSxmaW5kT25lOih0LGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KT0+RWxlbWVudC5wcm90b3R5cGUucXVlcnlTZWxlY3Rvci5jYWxsKGUsdCksY2hpbGRyZW46KHQsZSk9PltdLmNvbmNhdCguLi50LmNoaWxkcmVuKS5maWx0ZXIoKHQ9PnQubWF0Y2hlcyhlKSkpLHBhcmVudHModCxlKXtjb25zdCBpPVtdO2xldCBuPXQucGFyZW50Tm9kZS5jbG9zZXN0KGUpO2Zvcig7bjspaS5wdXNoKG4pLG49bi5wYXJlbnROb2RlLmNsb3Nlc3QoZSk7cmV0dXJuIGl9LHByZXYodCxlKXtsZXQgaT10LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7Zm9yKDtpOyl7aWYoaS5tYXRjaGVzKGUpKXJldHVybltpXTtpPWkucHJldmlvdXNFbGVtZW50U2libGluZ31yZXR1cm5bXX0sbmV4dCh0LGUpe2xldCBpPXQubmV4dEVsZW1lbnRTaWJsaW5nO2Zvcig7aTspe2lmKGkubWF0Y2hlcyhlKSlyZXR1cm5baV07aT1pLm5leHRFbGVtZW50U2libGluZ31yZXR1cm5bXX0sZm9jdXNhYmxlQ2hpbGRyZW4odCl7Y29uc3QgZT1bImEiLCJidXR0b24iLCJpbnB1dCIsInRleHRhcmVhIiwic2VsZWN0IiwiZGV0YWlscyIsIlt0YWJpbmRleF0iLCdbY29udGVudGVkaXRhYmxlPSJ0cnVlIl0nXS5tYXAoKHQ9PmAke3R9Om5vdChbdGFiaW5kZXhePSItIl0pYCkpLmpvaW4oIiwiKTtyZXR1cm4gdGhpcy5maW5kKGUsdCkuZmlsdGVyKCh0PT4hbCh0KSYmYSh0KSkpfX0sWD17ZW5kQ2FsbGJhY2s6bnVsbCxsZWZ0Q2FsbGJhY2s6bnVsbCxyaWdodENhbGxiYWNrOm51bGx9LFk9e2VuZENhbGxiYWNrOiIoZnVuY3Rpb258bnVsbCkiLGxlZnRDYWxsYmFjazoiKGZ1bmN0aW9ufG51bGwpIixyaWdodENhbGxiYWNrOiIoZnVuY3Rpb258bnVsbCkifTtjbGFzcyBVIGV4dGVuZHMgRntjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKCksdGhpcy5fZWxlbWVudD10LHQmJlUuaXNTdXBwb3J0ZWQoKSYmKHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcoZSksdGhpcy5fZGVsdGFYPTAsdGhpcy5fc3VwcG9ydFBvaW50ZXJFdmVudHM9Qm9vbGVhbih3aW5kb3cuUG9pbnRlckV2ZW50KSx0aGlzLl9pbml0RXZlbnRzKCkpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBYfXN0YXRpYyBnZXQgRGVmYXVsdFR5cGUoKXtyZXR1cm4gWX1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4ic3dpcGUifWRpc3Bvc2UoKXtQLm9mZih0aGlzLl9lbGVtZW50LCIuYnMuc3dpcGUiKX1fc3RhcnQodCl7dGhpcy5fc3VwcG9ydFBvaW50ZXJFdmVudHM/dGhpcy5fZXZlbnRJc1BvaW50ZXJQZW5Ub3VjaCh0KSYmKHRoaXMuX2RlbHRhWD10LmNsaWVudFgpOnRoaXMuX2RlbHRhWD10LnRvdWNoZXNbMF0uY2xpZW50WH1fZW5kKHQpe3RoaXMuX2V2ZW50SXNQb2ludGVyUGVuVG91Y2godCkmJih0aGlzLl9kZWx0YVg9dC5jbGllbnRYLXRoaXMuX2RlbHRhWCksdGhpcy5faGFuZGxlU3dpcGUoKSxtKHRoaXMuX2NvbmZpZy5lbmRDYWxsYmFjayl9X21vdmUodCl7dGhpcy5fZGVsdGFYPXQudG91Y2hlcyYmdC50b3VjaGVzLmxlbmd0aD4xPzA6dC50b3VjaGVzWzBdLmNsaWVudFgtdGhpcy5fZGVsdGFYfV9oYW5kbGVTd2lwZSgpe2NvbnN0IHQ9TWF0aC5hYnModGhpcy5fZGVsdGFYKTtpZih0PD00MClyZXR1cm47Y29uc3QgZT10L3RoaXMuX2RlbHRhWDt0aGlzLl9kZWx0YVg9MCxlJiZtKGU+MD90aGlzLl9jb25maWcucmlnaHRDYWxsYmFjazp0aGlzLl9jb25maWcubGVmdENhbGxiYWNrKX1faW5pdEV2ZW50cygpe3RoaXMuX3N1cHBvcnRQb2ludGVyRXZlbnRzPyhQLm9uKHRoaXMuX2VsZW1lbnQsInBvaW50ZXJkb3duLmJzLnN3aXBlIiwodD0+dGhpcy5fc3RhcnQodCkpKSxQLm9uKHRoaXMuX2VsZW1lbnQsInBvaW50ZXJ1cC5icy5zd2lwZSIsKHQ9PnRoaXMuX2VuZCh0KSkpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgicG9pbnRlci1ldmVudCIpKTooUC5vbih0aGlzLl9lbGVtZW50LCJ0b3VjaHN0YXJ0LmJzLnN3aXBlIiwodD0+dGhpcy5fc3RhcnQodCkpKSxQLm9uKHRoaXMuX2VsZW1lbnQsInRvdWNobW92ZS5icy5zd2lwZSIsKHQ9PnRoaXMuX21vdmUodCkpKSxQLm9uKHRoaXMuX2VsZW1lbnQsInRvdWNoZW5kLmJzLnN3aXBlIiwodD0+dGhpcy5fZW5kKHQpKSkpfV9ldmVudElzUG9pbnRlclBlblRvdWNoKHQpe3JldHVybiB0aGlzLl9zdXBwb3J0UG9pbnRlckV2ZW50cyYmKCJwZW4iPT09dC5wb2ludGVyVHlwZXx8InRvdWNoIj09PXQucG9pbnRlclR5cGUpfXN0YXRpYyBpc1N1cHBvcnRlZCgpe3JldHVybiJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MH19Y29uc3QgRz0ibmV4dCIsSj0icHJldiIsWj0ibGVmdCIsdHQ9InJpZ2h0IixldD0ic2xpZC5icy5jYXJvdXNlbCIsaXQ9ImNhcm91c2VsIixudD0iYWN0aXZlIixzdD17QXJyb3dMZWZ0OnR0LEFycm93UmlnaHQ6Wn0sb3Q9e2ludGVydmFsOjVlMyxrZXlib2FyZDohMCxwYXVzZToiaG92ZXIiLHJpZGU6ITEsdG91Y2g6ITAsd3JhcDohMH0scnQ9e2ludGVydmFsOiIobnVtYmVyfGJvb2xlYW4pIixrZXlib2FyZDoiYm9vbGVhbiIscGF1c2U6IihzdHJpbmd8Ym9vbGVhbikiLHJpZGU6Iihib29sZWFufHN0cmluZykiLHRvdWNoOiJib29sZWFuIix3cmFwOiJib29sZWFuIn07Y2xhc3MgYXQgZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLl9pbnRlcnZhbD1udWxsLHRoaXMuX2FjdGl2ZUVsZW1lbnQ9bnVsbCx0aGlzLl9pc1NsaWRpbmc9ITEsdGhpcy50b3VjaFRpbWVvdXQ9bnVsbCx0aGlzLl9zd2lwZUhlbHBlcj1udWxsLHRoaXMuX2luZGljYXRvcnNFbGVtZW50PVEuZmluZE9uZSgiLmNhcm91c2VsLWluZGljYXRvcnMiLHRoaXMuX2VsZW1lbnQpLHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCksdGhpcy5fY29uZmlnLnJpZGU9PT1pdCYmdGhpcy5jeWNsZSgpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBvdH1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIHJ0fXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJjYXJvdXNlbCJ9bmV4dCgpe3RoaXMuX3NsaWRlKEcpfW5leHRXaGVuVmlzaWJsZSgpeyFkb2N1bWVudC5oaWRkZW4mJmEodGhpcy5fZWxlbWVudCkmJnRoaXMubmV4dCgpfXByZXYoKXt0aGlzLl9zbGlkZShKKX1wYXVzZSgpe3RoaXMuX2lzU2xpZGluZyYmcyh0aGlzLl9lbGVtZW50KSx0aGlzLl9jbGVhckludGVydmFsKCl9Y3ljbGUoKXt0aGlzLl9jbGVhckludGVydmFsKCksdGhpcy5fdXBkYXRlSW50ZXJ2YWwoKSx0aGlzLl9pbnRlcnZhbD1zZXRJbnRlcnZhbCgoKCk9PnRoaXMubmV4dFdoZW5WaXNpYmxlKCkpLHRoaXMuX2NvbmZpZy5pbnRlcnZhbCl9X21heWJlRW5hYmxlQ3ljbGUoKXt0aGlzLl9jb25maWcucmlkZSYmKHRoaXMuX2lzU2xpZGluZz9QLm9uZSh0aGlzLl9lbGVtZW50LGV0LCgoKT0+dGhpcy5jeWNsZSgpKSk6dGhpcy5jeWNsZSgpKX10byh0KXtjb25zdCBlPXRoaXMuX2dldEl0ZW1zKCk7aWYodD5lLmxlbmd0aC0xfHx0PDApcmV0dXJuO2lmKHRoaXMuX2lzU2xpZGluZylyZXR1cm4gdm9pZCBQLm9uZSh0aGlzLl9lbGVtZW50LGV0LCgoKT0+dGhpcy50byh0KSkpO2NvbnN0IGk9dGhpcy5fZ2V0SXRlbUluZGV4KHRoaXMuX2dldEFjdGl2ZSgpKTtpZihpPT09dClyZXR1cm47Y29uc3Qgbj10Pmk/RzpKO3RoaXMuX3NsaWRlKG4sZVt0XSl9ZGlzcG9zZSgpe3RoaXMuX3N3aXBlSGVscGVyJiZ0aGlzLl9zd2lwZUhlbHBlci5kaXNwb3NlKCksc3VwZXIuZGlzcG9zZSgpfV9jb25maWdBZnRlck1lcmdlKHQpe3JldHVybiB0LmRlZmF1bHRJbnRlcnZhbD10LmludGVydmFsLHR9X2FkZEV2ZW50TGlzdGVuZXJzKCl7dGhpcy5fY29uZmlnLmtleWJvYXJkJiZQLm9uKHRoaXMuX2VsZW1lbnQsImtleWRvd24uYnMuY2Fyb3VzZWwiLCh0PT50aGlzLl9rZXlkb3duKHQpKSksImhvdmVyIj09PXRoaXMuX2NvbmZpZy5wYXVzZSYmKFAub24odGhpcy5fZWxlbWVudCwibW91c2VlbnRlci5icy5jYXJvdXNlbCIsKCgpPT50aGlzLnBhdXNlKCkpKSxQLm9uKHRoaXMuX2VsZW1lbnQsIm1vdXNlbGVhdmUuYnMuY2Fyb3VzZWwiLCgoKT0+dGhpcy5fbWF5YmVFbmFibGVDeWNsZSgpKSkpLHRoaXMuX2NvbmZpZy50b3VjaCYmVS5pc1N1cHBvcnRlZCgpJiZ0aGlzLl9hZGRUb3VjaEV2ZW50TGlzdGVuZXJzKCl9X2FkZFRvdWNoRXZlbnRMaXN0ZW5lcnMoKXtmb3IoY29uc3QgdCBvZiBRLmZpbmQoIi5jYXJvdXNlbC1pdGVtIGltZyIsdGhpcy5fZWxlbWVudCkpUC5vbih0LCJkcmFnc3RhcnQuYnMuY2Fyb3VzZWwiLCh0PT50LnByZXZlbnREZWZhdWx0KCkpKTtjb25zdCB0PXtsZWZ0Q2FsbGJhY2s6KCk9PnRoaXMuX3NsaWRlKHRoaXMuX2RpcmVjdGlvblRvT3JkZXIoWikpLHJpZ2h0Q2FsbGJhY2s6KCk9PnRoaXMuX3NsaWRlKHRoaXMuX2RpcmVjdGlvblRvT3JkZXIodHQpKSxlbmRDYWxsYmFjazooKT0+eyJob3ZlciI9PT10aGlzLl9jb25maWcucGF1c2UmJih0aGlzLnBhdXNlKCksdGhpcy50b3VjaFRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnRvdWNoVGltZW91dCksdGhpcy50b3VjaFRpbWVvdXQ9c2V0VGltZW91dCgoKCk9PnRoaXMuX21heWJlRW5hYmxlQ3ljbGUoKSksNTAwK3RoaXMuX2NvbmZpZy5pbnRlcnZhbCkpfX07dGhpcy5fc3dpcGVIZWxwZXI9bmV3IFUodGhpcy5fZWxlbWVudCx0KX1fa2V5ZG93bih0KXtpZigvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KHQudGFyZ2V0LnRhZ05hbWUpKXJldHVybjtjb25zdCBlPXN0W3Qua2V5XTtlJiYodC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuX3NsaWRlKHRoaXMuX2RpcmVjdGlvblRvT3JkZXIoZSkpKX1fZ2V0SXRlbUluZGV4KHQpe3JldHVybiB0aGlzLl9nZXRJdGVtcygpLmluZGV4T2YodCl9X3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQodCl7aWYoIXRoaXMuX2luZGljYXRvcnNFbGVtZW50KXJldHVybjtjb25zdCBlPVEuZmluZE9uZSgiLmFjdGl2ZSIsdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpO2UuY2xhc3NMaXN0LnJlbW92ZShudCksZS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIpO2NvbnN0IGk9US5maW5kT25lKGBbZGF0YS1icy1zbGlkZS10bz0iJHt0fSJdYCx0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCk7aSYmKGkuY2xhc3NMaXN0LmFkZChudCksaS5zZXRBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIsInRydWUiKSl9X3VwZGF0ZUludGVydmFsKCl7Y29uc3QgdD10aGlzLl9hY3RpdmVFbGVtZW50fHx0aGlzLl9nZXRBY3RpdmUoKTtpZighdClyZXR1cm47Y29uc3QgZT1OdW1iZXIucGFyc2VJbnQodC5nZXRBdHRyaWJ1dGUoImRhdGEtYnMtaW50ZXJ2YWwiKSwxMCk7dGhpcy5fY29uZmlnLmludGVydmFsPWV8fHRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx9X3NsaWRlKHQsZT1udWxsKXtpZih0aGlzLl9pc1NsaWRpbmcpcmV0dXJuO2NvbnN0IGk9dGhpcy5fZ2V0QWN0aXZlKCksbj10PT09RyxzPWV8fGIodGhpcy5fZ2V0SXRlbXMoKSxpLG4sdGhpcy5fY29uZmlnLndyYXApO2lmKHM9PT1pKXJldHVybjtjb25zdCBvPXRoaXMuX2dldEl0ZW1JbmRleChzKSxyPWU9PlAudHJpZ2dlcih0aGlzLl9lbGVtZW50LGUse3JlbGF0ZWRUYXJnZXQ6cyxkaXJlY3Rpb246dGhpcy5fb3JkZXJUb0RpcmVjdGlvbih0KSxmcm9tOnRoaXMuX2dldEl0ZW1JbmRleChpKSx0bzpvfSk7aWYocigic2xpZGUuYnMuY2Fyb3VzZWwiKS5kZWZhdWx0UHJldmVudGVkKXJldHVybjtpZighaXx8IXMpcmV0dXJuO2NvbnN0IGE9Qm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7dGhpcy5wYXVzZSgpLHRoaXMuX2lzU2xpZGluZz0hMCx0aGlzLl9zZXRBY3RpdmVJbmRpY2F0b3JFbGVtZW50KG8pLHRoaXMuX2FjdGl2ZUVsZW1lbnQ9cztjb25zdCBsPW4/ImNhcm91c2VsLWl0ZW0tc3RhcnQiOiJjYXJvdXNlbC1pdGVtLWVuZCIsYz1uPyJjYXJvdXNlbC1pdGVtLW5leHQiOiJjYXJvdXNlbC1pdGVtLXByZXYiO3MuY2xhc3NMaXN0LmFkZChjKSxkKHMpLGkuY2xhc3NMaXN0LmFkZChsKSxzLmNsYXNzTGlzdC5hZGQobCksdGhpcy5fcXVldWVDYWxsYmFjaygoKCk9PntzLmNsYXNzTGlzdC5yZW1vdmUobCxjKSxzLmNsYXNzTGlzdC5hZGQobnQpLGkuY2xhc3NMaXN0LnJlbW92ZShudCxjLGwpLHRoaXMuX2lzU2xpZGluZz0hMSxyKGV0KX0pLGksdGhpcy5faXNBbmltYXRlZCgpKSxhJiZ0aGlzLmN5Y2xlKCl9X2lzQW5pbWF0ZWQoKXtyZXR1cm4gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoInNsaWRlIil9X2dldEFjdGl2ZSgpe3JldHVybiBRLmZpbmRPbmUoIi5hY3RpdmUuY2Fyb3VzZWwtaXRlbSIsdGhpcy5fZWxlbWVudCl9X2dldEl0ZW1zKCl7cmV0dXJuIFEuZmluZCgiLmNhcm91c2VsLWl0ZW0iLHRoaXMuX2VsZW1lbnQpfV9jbGVhckludGVydmFsKCl7dGhpcy5faW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsKX1fZGlyZWN0aW9uVG9PcmRlcih0KXtyZXR1cm4gcCgpP3Q9PT1aP0o6Rzp0PT09Wj9HOkp9X29yZGVyVG9EaXJlY3Rpb24odCl7cmV0dXJuIHAoKT90PT09Sj9aOnR0OnQ9PT1KP3R0Olp9c3RhdGljIGpRdWVyeUludGVyZmFjZSh0KXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9YXQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLHQpO2lmKCJudW1iZXIiIT10eXBlb2YgdCl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdfHx0LnN0YXJ0c1dpdGgoIl8iKXx8ImNvbnN0cnVjdG9yIj09PXQpdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19ZWxzZSBlLnRvKHQpfSkpfX1QLm9uKGRvY3VtZW50LCJjbGljay5icy5jYXJvdXNlbC5kYXRhLWFwaSIsIltkYXRhLWJzLXNsaWRlXSwgW2RhdGEtYnMtc2xpZGUtdG9dIiwoZnVuY3Rpb24odCl7Y29uc3QgZT1uKHRoaXMpO2lmKCFlfHwhZS5jbGFzc0xpc3QuY29udGFpbnMoaXQpKXJldHVybjt0LnByZXZlbnREZWZhdWx0KCk7Y29uc3QgaT1hdC5nZXRPckNyZWF0ZUluc3RhbmNlKGUpLHM9dGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtYnMtc2xpZGUtdG8iKTtyZXR1cm4gcz8oaS50byhzKSx2b2lkIGkuX21heWJlRW5hYmxlQ3ljbGUoKSk6Im5leHQiPT09Qi5nZXREYXRhQXR0cmlidXRlKHRoaXMsInNsaWRlIik/KGkubmV4dCgpLHZvaWQgaS5fbWF5YmVFbmFibGVDeWNsZSgpKTooaS5wcmV2KCksdm9pZCBpLl9tYXliZUVuYWJsZUN5Y2xlKCkpfSkpLFAub24od2luZG93LCJsb2FkLmJzLmNhcm91c2VsLmRhdGEtYXBpIiwoKCk9Pntjb25zdCB0PVEuZmluZCgnW2RhdGEtYnMtcmlkZT0iY2Fyb3VzZWwiXScpO2Zvcihjb25zdCBlIG9mIHQpYXQuZ2V0T3JDcmVhdGVJbnN0YW5jZShlKX0pKSxnKGF0KTtjb25zdCBsdD0ic2hvdyIsY3Q9ImNvbGxhcHNlIixodD0iY29sbGFwc2luZyIsZHQ9J1tkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiXScsdXQ9e3BhcmVudDpudWxsLHRvZ2dsZTohMH0sZnQ9e3BhcmVudDoiKG51bGx8ZWxlbWVudCkiLHRvZ2dsZToiYm9vbGVhbiJ9O2NsYXNzIHB0IGV4dGVuZHMgentjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQsZSksdGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLHRoaXMuX3RyaWdnZXJBcnJheT1bXTtjb25zdCBuPVEuZmluZChkdCk7Zm9yKGNvbnN0IHQgb2Ygbil7Y29uc3QgZT1pKHQpLG49US5maW5kKGUpLmZpbHRlcigodD0+dD09PXRoaXMuX2VsZW1lbnQpKTtudWxsIT09ZSYmbi5sZW5ndGgmJnRoaXMuX3RyaWdnZXJBcnJheS5wdXNoKHQpfXRoaXMuX2luaXRpYWxpemVDaGlsZHJlbigpLHRoaXMuX2NvbmZpZy5wYXJlbnR8fHRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyh0aGlzLl90cmlnZ2VyQXJyYXksdGhpcy5faXNTaG93bigpKSx0aGlzLl9jb25maWcudG9nZ2xlJiZ0aGlzLnRvZ2dsZSgpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiB1dH1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIGZ0fXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJjb2xsYXBzZSJ9dG9nZ2xlKCl7dGhpcy5faXNTaG93bigpP3RoaXMuaGlkZSgpOnRoaXMuc2hvdygpfXNob3coKXtpZih0aGlzLl9pc1RyYW5zaXRpb25pbmd8fHRoaXMuX2lzU2hvd24oKSlyZXR1cm47bGV0IHQ9W107aWYodGhpcy5fY29uZmlnLnBhcmVudCYmKHQ9dGhpcy5fZ2V0Rmlyc3RMZXZlbENoaWxkcmVuKCIuY29sbGFwc2Uuc2hvdywgLmNvbGxhcHNlLmNvbGxhcHNpbmciKS5maWx0ZXIoKHQ9PnQhPT10aGlzLl9lbGVtZW50KSkubWFwKCh0PT5wdC5nZXRPckNyZWF0ZUluc3RhbmNlKHQse3RvZ2dsZTohMX0pKSkpLHQubGVuZ3RoJiZ0WzBdLl9pc1RyYW5zaXRpb25pbmcpcmV0dXJuO2lmKFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93LmJzLmNvbGxhcHNlIikuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Zm9yKGNvbnN0IGUgb2YgdCllLmhpZGUoKTtjb25zdCBlPXRoaXMuX2dldERpbWVuc2lvbigpO3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjdCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGh0KSx0aGlzLl9lbGVtZW50LnN0eWxlW2VdPTAsdGhpcy5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzKHRoaXMuX3RyaWdnZXJBcnJheSwhMCksdGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwO2NvbnN0IGk9YHNjcm9sbCR7ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSl9YDt0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e3RoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoaHQpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChjdCxsdCksdGhpcy5fZWxlbWVudC5zdHlsZVtlXT0iIixQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvd24uYnMuY29sbGFwc2UiKX0pLHRoaXMuX2VsZW1lbnQsITApLHRoaXMuX2VsZW1lbnQuc3R5bGVbZV09YCR7dGhpcy5fZWxlbWVudFtpXX1weGB9aGlkZSgpe2lmKHRoaXMuX2lzVHJhbnNpdGlvbmluZ3x8IXRoaXMuX2lzU2hvd24oKSlyZXR1cm47aWYoUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGUuYnMuY29sbGFwc2UiKS5kZWZhdWx0UHJldmVudGVkKXJldHVybjtjb25zdCB0PXRoaXMuX2dldERpbWVuc2lvbigpO3RoaXMuX2VsZW1lbnQuc3R5bGVbdF09YCR7dGhpcy5fZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVt0XX1weGAsZCh0aGlzLl9lbGVtZW50KSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoaHQpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjdCxsdCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5fdHJpZ2dlckFycmF5KXtjb25zdCBlPW4odCk7ZSYmIXRoaXMuX2lzU2hvd24oZSkmJnRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhbdF0sITEpfXRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCx0aGlzLl9lbGVtZW50LnN0eWxlW3RdPSIiLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCgpPT57dGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShodCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGN0KSxQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZGVuLmJzLmNvbGxhcHNlIil9KSx0aGlzLl9lbGVtZW50LCEwKX1faXNTaG93bih0PXRoaXMuX2VsZW1lbnQpe3JldHVybiB0LmNsYXNzTGlzdC5jb250YWlucyhsdCl9X2NvbmZpZ0FmdGVyTWVyZ2UodCl7cmV0dXJuIHQudG9nZ2xlPUJvb2xlYW4odC50b2dnbGUpLHQucGFyZW50PXIodC5wYXJlbnQpLHR9X2dldERpbWVuc2lvbigpe3JldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2UtaG9yaXpvbnRhbCIpPyJ3aWR0aCI6ImhlaWdodCJ9X2luaXRpYWxpemVDaGlsZHJlbigpe2lmKCF0aGlzLl9jb25maWcucGFyZW50KXJldHVybjtjb25zdCB0PXRoaXMuX2dldEZpcnN0TGV2ZWxDaGlsZHJlbihkdCk7Zm9yKGNvbnN0IGUgb2YgdCl7Y29uc3QgdD1uKGUpO3QmJnRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhbZV0sdGhpcy5faXNTaG93bih0KSl9fV9nZXRGaXJzdExldmVsQ2hpbGRyZW4odCl7Y29uc3QgZT1RLmZpbmQoIjpzY29wZSAuY29sbGFwc2UgLmNvbGxhcHNlIix0aGlzLl9jb25maWcucGFyZW50KTtyZXR1cm4gUS5maW5kKHQsdGhpcy5fY29uZmlnLnBhcmVudCkuZmlsdGVyKCh0PT4hZS5pbmNsdWRlcyh0KSkpfV9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModCxlKXtpZih0Lmxlbmd0aClmb3IoY29uc3QgaSBvZiB0KWkuY2xhc3NMaXN0LnRvZ2dsZSgiY29sbGFwc2VkIiwhZSksaS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLGUpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7Y29uc3QgZT17fTtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQmJi9zaG93fGhpZGUvLnRlc3QodCkmJihlLnRvZ2dsZT0hMSksdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGk9cHQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09aVt0XSl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7aVt0XSgpfX0pKX19UC5vbihkb2N1bWVudCwiY2xpY2suYnMuY29sbGFwc2UuZGF0YS1hcGkiLGR0LChmdW5jdGlvbih0KXsoIkEiPT09dC50YXJnZXQudGFnTmFtZXx8dC5kZWxlZ2F0ZVRhcmdldCYmIkEiPT09dC5kZWxlZ2F0ZVRhcmdldC50YWdOYW1lKSYmdC5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGU9aSh0aGlzKSxuPVEuZmluZChlKTtmb3IoY29uc3QgdCBvZiBuKXB0LmdldE9yQ3JlYXRlSW5zdGFuY2UodCx7dG9nZ2xlOiExfSkudG9nZ2xlKCl9KSksZyhwdCk7dmFyIGd0PSJ0b3AiLG10PSJib3R0b20iLF90PSJyaWdodCIsYnQ9ImxlZnQiLHZ0PSJhdXRvIix5dD1bZ3QsbXQsX3QsYnRdLHd0PSJzdGFydCIsQXQ9ImVuZCIsRXQ9ImNsaXBwaW5nUGFyZW50cyIsVHQ9InZpZXdwb3J0IixDdD0icG9wcGVyIixPdD0icmVmZXJlbmNlIix4dD15dC5yZWR1Y2UoKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuY29uY2F0KFtlKyItIit3dCxlKyItIitBdF0pfSksW10pLGt0PVtdLmNvbmNhdCh5dCxbdnRdKS5yZWR1Y2UoKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuY29uY2F0KFtlLGUrIi0iK3d0LGUrIi0iK0F0XSl9KSxbXSksTHQ9ImJlZm9yZVJlYWQiLER0PSJyZWFkIixTdD0iYWZ0ZXJSZWFkIixJdD0iYmVmb3JlTWFpbiIsTnQ9Im1haW4iLFB0PSJhZnRlck1haW4iLGp0PSJiZWZvcmVXcml0ZSIsTXQ9IndyaXRlIixIdD0iYWZ0ZXJXcml0ZSIsJHQ9W0x0LER0LFN0LEl0LE50LFB0LGp0LE10LEh0XTtmdW5jdGlvbiBXdCh0KXtyZXR1cm4gdD8odC5ub2RlTmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk6bnVsbH1mdW5jdGlvbiBCdCh0KXtpZihudWxsPT10KXJldHVybiB3aW5kb3c7aWYoIltvYmplY3QgV2luZG93XSIhPT10LnRvU3RyaW5nKCkpe3ZhciBlPXQub3duZXJEb2N1bWVudDtyZXR1cm4gZSYmZS5kZWZhdWx0Vmlld3x8d2luZG93fXJldHVybiB0fWZ1bmN0aW9uIEZ0KHQpe3JldHVybiB0IGluc3RhbmNlb2YgQnQodCkuRWxlbWVudHx8dCBpbnN0YW5jZW9mIEVsZW1lbnR9ZnVuY3Rpb24genQodCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBCdCh0KS5IVE1MRWxlbWVudHx8dCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50fWZ1bmN0aW9uIHF0KHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgU2hhZG93Um9vdCYmKHQgaW5zdGFuY2VvZiBCdCh0KS5TaGFkb3dSb290fHx0IGluc3RhbmNlb2YgU2hhZG93Um9vdCl9Y29uc3QgUnQ9e25hbWU6ImFwcGx5U3R5bGVzIixlbmFibGVkOiEwLHBoYXNlOiJ3cml0ZSIsZm46ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZTtPYmplY3Qua2V5cyhlLmVsZW1lbnRzKS5mb3JFYWNoKChmdW5jdGlvbih0KXt2YXIgaT1lLnN0eWxlc1t0XXx8e30sbj1lLmF0dHJpYnV0ZXNbdF18fHt9LHM9ZS5lbGVtZW50c1t0XTt6dChzKSYmV3QocykmJihPYmplY3QuYXNzaWduKHMuc3R5bGUsaSksT2JqZWN0LmtleXMobikuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIGU9blt0XTshMT09PWU/cy5yZW1vdmVBdHRyaWJ1dGUodCk6cy5zZXRBdHRyaWJ1dGUodCwhMD09PWU/IiI6ZSl9KSkpfSkpfSxlZmZlY3Q6ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZSxpPXtwb3BwZXI6e3Bvc2l0aW9uOmUub3B0aW9ucy5zdHJhdGVneSxsZWZ0OiIwIix0b3A6IjAiLG1hcmdpbjoiMCJ9LGFycm93Ontwb3NpdGlvbjoiYWJzb2x1dGUifSxyZWZlcmVuY2U6e319O3JldHVybiBPYmplY3QuYXNzaWduKGUuZWxlbWVudHMucG9wcGVyLnN0eWxlLGkucG9wcGVyKSxlLnN0eWxlcz1pLGUuZWxlbWVudHMuYXJyb3cmJk9iamVjdC5hc3NpZ24oZS5lbGVtZW50cy5hcnJvdy5zdHlsZSxpLmFycm93KSxmdW5jdGlvbigpe09iamVjdC5rZXlzKGUuZWxlbWVudHMpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBuPWUuZWxlbWVudHNbdF0scz1lLmF0dHJpYnV0ZXNbdF18fHt9LG89T2JqZWN0LmtleXMoZS5zdHlsZXMuaGFzT3duUHJvcGVydHkodCk/ZS5zdHlsZXNbdF06aVt0XSkucmVkdWNlKChmdW5jdGlvbih0LGUpe3JldHVybiB0W2VdPSIiLHR9KSx7fSk7enQobikmJld0KG4pJiYoT2JqZWN0LmFzc2lnbihuLnN0eWxlLG8pLE9iamVjdC5rZXlzKHMpLmZvckVhY2goKGZ1bmN0aW9uKHQpe24ucmVtb3ZlQXR0cmlidXRlKHQpfSkpKX0pKX19LHJlcXVpcmVzOlsiY29tcHV0ZVN0eWxlcyJdfTtmdW5jdGlvbiBWdCh0KXtyZXR1cm4gdC5zcGxpdCgiLSIpWzBdfXZhciBLdD1NYXRoLm1heCxRdD1NYXRoLm1pbixYdD1NYXRoLnJvdW5kO2Z1bmN0aW9uIFl0KCl7dmFyIHQ9bmF2aWdhdG9yLnVzZXJBZ2VudERhdGE7cmV0dXJuIG51bGwhPXQmJnQuYnJhbmRzP3QuYnJhbmRzLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHQuYnJhbmQrIi8iK3QudmVyc2lvbn0pKS5qb2luKCIgIik6bmF2aWdhdG9yLnVzZXJBZ2VudH1mdW5jdGlvbiBVdCgpe3JldHVybiEvXigoPyFjaHJvbWV8YW5kcm9pZCkuKSpzYWZhcmkvaS50ZXN0KFl0KCkpfWZ1bmN0aW9uIEd0KHQsZSxpKXt2b2lkIDA9PT1lJiYoZT0hMSksdm9pZCAwPT09aSYmKGk9ITEpO3ZhciBuPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkscz0xLG89MTtlJiZ6dCh0KSYmKHM9dC5vZmZzZXRXaWR0aD4wJiZYdChuLndpZHRoKS90Lm9mZnNldFdpZHRofHwxLG89dC5vZmZzZXRIZWlnaHQ+MCYmWHQobi5oZWlnaHQpL3Qub2Zmc2V0SGVpZ2h0fHwxKTt2YXIgcj0oRnQodCk/QnQodCk6d2luZG93KS52aXN1YWxWaWV3cG9ydCxhPSFVdCgpJiZpLGw9KG4ubGVmdCsoYSYmcj9yLm9mZnNldExlZnQ6MCkpL3MsYz0obi50b3ArKGEmJnI/ci5vZmZzZXRUb3A6MCkpL28saD1uLndpZHRoL3MsZD1uLmhlaWdodC9vO3JldHVybnt3aWR0aDpoLGhlaWdodDpkLHRvcDpjLHJpZ2h0OmwraCxib3R0b206YytkLGxlZnQ6bCx4OmwseTpjfX1mdW5jdGlvbiBKdCh0KXt2YXIgZT1HdCh0KSxpPXQub2Zmc2V0V2lkdGgsbj10Lm9mZnNldEhlaWdodDtyZXR1cm4gTWF0aC5hYnMoZS53aWR0aC1pKTw9MSYmKGk9ZS53aWR0aCksTWF0aC5hYnMoZS5oZWlnaHQtbik8PTEmJihuPWUuaGVpZ2h0KSx7eDp0Lm9mZnNldExlZnQseTp0Lm9mZnNldFRvcCx3aWR0aDppLGhlaWdodDpufX1mdW5jdGlvbiBadCh0LGUpe3ZhciBpPWUuZ2V0Um9vdE5vZGUmJmUuZ2V0Um9vdE5vZGUoKTtpZih0LmNvbnRhaW5zKGUpKXJldHVybiEwO2lmKGkmJnF0KGkpKXt2YXIgbj1lO2Rve2lmKG4mJnQuaXNTYW1lTm9kZShuKSlyZXR1cm4hMDtuPW4ucGFyZW50Tm9kZXx8bi5ob3N0fXdoaWxlKG4pfXJldHVybiExfWZ1bmN0aW9uIHRlKHQpe3JldHVybiBCdCh0KS5nZXRDb21wdXRlZFN0eWxlKHQpfWZ1bmN0aW9uIGVlKHQpe3JldHVyblsidGFibGUiLCJ0ZCIsInRoIl0uaW5kZXhPZihXdCh0KSk+PTB9ZnVuY3Rpb24gaWUodCl7cmV0dXJuKChGdCh0KT90Lm93bmVyRG9jdW1lbnQ6dC5kb2N1bWVudCl8fHdpbmRvdy5kb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIG5lKHQpe3JldHVybiJodG1sIj09PVd0KHQpP3Q6dC5hc3NpZ25lZFNsb3R8fHQucGFyZW50Tm9kZXx8KHF0KHQpP3QuaG9zdDpudWxsKXx8aWUodCl9ZnVuY3Rpb24gc2UodCl7cmV0dXJuIHp0KHQpJiYiZml4ZWQiIT09dGUodCkucG9zaXRpb24/dC5vZmZzZXRQYXJlbnQ6bnVsbH1mdW5jdGlvbiBvZSh0KXtmb3IodmFyIGU9QnQodCksaT1zZSh0KTtpJiZlZShpKSYmInN0YXRpYyI9PT10ZShpKS5wb3NpdGlvbjspaT1zZShpKTtyZXR1cm4gaSYmKCJodG1sIj09PVd0KGkpfHwiYm9keSI9PT1XdChpKSYmInN0YXRpYyI9PT10ZShpKS5wb3NpdGlvbik/ZTppfHxmdW5jdGlvbih0KXt2YXIgZT0vZmlyZWZveC9pLnRlc3QoWXQoKSk7aWYoL1RyaWRlbnQvaS50ZXN0KFl0KCkpJiZ6dCh0KSYmImZpeGVkIj09PXRlKHQpLnBvc2l0aW9uKXJldHVybiBudWxsO3ZhciBpPW5lKHQpO2ZvcihxdChpKSYmKGk9aS5ob3N0KTt6dChpKSYmWyJodG1sIiwiYm9keSJdLmluZGV4T2YoV3QoaSkpPDA7KXt2YXIgbj10ZShpKTtpZigibm9uZSIhPT1uLnRyYW5zZm9ybXx8Im5vbmUiIT09bi5wZXJzcGVjdGl2ZXx8InBhaW50Ij09PW4uY29udGFpbnx8LTEhPT1bInRyYW5zZm9ybSIsInBlcnNwZWN0aXZlIl0uaW5kZXhPZihuLndpbGxDaGFuZ2UpfHxlJiYiZmlsdGVyIj09PW4ud2lsbENoYW5nZXx8ZSYmbi5maWx0ZXImJiJub25lIiE9PW4uZmlsdGVyKXJldHVybiBpO2k9aS5wYXJlbnROb2RlfXJldHVybiBudWxsfSh0KXx8ZX1mdW5jdGlvbiByZSh0KXtyZXR1cm5bInRvcCIsImJvdHRvbSJdLmluZGV4T2YodCk+PTA/IngiOiJ5In1mdW5jdGlvbiBhZSh0LGUsaSl7cmV0dXJuIEt0KHQsUXQoZSxpKSl9ZnVuY3Rpb24gbGUodCl7cmV0dXJuIE9iamVjdC5hc3NpZ24oe30se3RvcDowLHJpZ2h0OjAsYm90dG9tOjAsbGVmdDowfSx0KX1mdW5jdGlvbiBjZSh0LGUpe3JldHVybiBlLnJlZHVjZSgoZnVuY3Rpb24oZSxpKXtyZXR1cm4gZVtpXT10LGV9KSx7fSl9Y29uc3QgaGU9e25hbWU6ImFycm93IixlbmFibGVkOiEwLHBoYXNlOiJtYWluIixmbjpmdW5jdGlvbih0KXt2YXIgZSxpPXQuc3RhdGUsbj10Lm5hbWUscz10Lm9wdGlvbnMsbz1pLmVsZW1lbnRzLmFycm93LHI9aS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMsYT1WdChpLnBsYWNlbWVudCksbD1yZShhKSxjPVtidCxfdF0uaW5kZXhPZihhKT49MD8iaGVpZ2h0Ijoid2lkdGgiO2lmKG8mJnIpe3ZhciBoPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGxlKCJudW1iZXIiIT10eXBlb2YodD0iZnVuY3Rpb24iPT10eXBlb2YgdD90KE9iamVjdC5hc3NpZ24oe30sZS5yZWN0cyx7cGxhY2VtZW50OmUucGxhY2VtZW50fSkpOnQpP3Q6Y2UodCx5dCkpfShzLnBhZGRpbmcsaSksZD1KdChvKSx1PSJ5Ij09PWw/Z3Q6YnQsZj0ieSI9PT1sP210Ol90LHA9aS5yZWN0cy5yZWZlcmVuY2VbY10raS5yZWN0cy5yZWZlcmVuY2VbbF0tcltsXS1pLnJlY3RzLnBvcHBlcltjXSxnPXJbbF0taS5yZWN0cy5yZWZlcmVuY2VbbF0sbT1vZShvKSxfPW0/InkiPT09bD9tLmNsaWVudEhlaWdodHx8MDptLmNsaWVudFdpZHRofHwwOjAsYj1wLzItZy8yLHY9aFt1XSx5PV8tZFtjXS1oW2ZdLHc9Xy8yLWRbY10vMitiLEE9YWUodix3LHkpLEU9bDtpLm1vZGlmaWVyc0RhdGFbbl09KChlPXt9KVtFXT1BLGUuY2VudGVyT2Zmc2V0PUEtdyxlKX19LGVmZmVjdDpmdW5jdGlvbih0KXt2YXIgZT10LnN0YXRlLGk9dC5vcHRpb25zLmVsZW1lbnQsbj12b2lkIDA9PT1pPyJbZGF0YS1wb3BwZXItYXJyb3ddIjppO251bGwhPW4mJigic3RyaW5nIiE9dHlwZW9mIG58fChuPWUuZWxlbWVudHMucG9wcGVyLnF1ZXJ5U2VsZWN0b3IobikpKSYmWnQoZS5lbGVtZW50cy5wb3BwZXIsbikmJihlLmVsZW1lbnRzLmFycm93PW4pfSxyZXF1aXJlczpbInBvcHBlck9mZnNldHMiXSxyZXF1aXJlc0lmRXhpc3RzOlsicHJldmVudE92ZXJmbG93Il19O2Z1bmN0aW9uIGRlKHQpe3JldHVybiB0LnNwbGl0KCItIilbMV19dmFyIHVlPXt0b3A6ImF1dG8iLHJpZ2h0OiJhdXRvIixib3R0b206ImF1dG8iLGxlZnQ6ImF1dG8ifTtmdW5jdGlvbiBmZSh0KXt2YXIgZSxpPXQucG9wcGVyLG49dC5wb3BwZXJSZWN0LHM9dC5wbGFjZW1lbnQsbz10LnZhcmlhdGlvbixyPXQub2Zmc2V0cyxhPXQucG9zaXRpb24sbD10LmdwdUFjY2VsZXJhdGlvbixjPXQuYWRhcHRpdmUsaD10LnJvdW5kT2Zmc2V0cyxkPXQuaXNGaXhlZCx1PXIueCxmPXZvaWQgMD09PXU/MDp1LHA9ci55LGc9dm9pZCAwPT09cD8wOnAsbT0iZnVuY3Rpb24iPT10eXBlb2YgaD9oKHt4OmYseTpnfSk6e3g6Zix5Omd9O2Y9bS54LGc9bS55O3ZhciBfPXIuaGFzT3duUHJvcGVydHkoIngiKSxiPXIuaGFzT3duUHJvcGVydHkoInkiKSx2PWJ0LHk9Z3Qsdz13aW5kb3c7aWYoYyl7dmFyIEE9b2UoaSksRT0iY2xpZW50SGVpZ2h0IixUPSJjbGllbnRXaWR0aCI7QT09PUJ0KGkpJiYic3RhdGljIiE9PXRlKEE9aWUoaSkpLnBvc2l0aW9uJiYiYWJzb2x1dGUiPT09YSYmKEU9InNjcm9sbEhlaWdodCIsVD0ic2Nyb2xsV2lkdGgiKSwocz09PWd0fHwocz09PWJ0fHxzPT09X3QpJiZvPT09QXQpJiYoeT1tdCxnLT0oZCYmQT09PXcmJncudmlzdWFsVmlld3BvcnQ/dy52aXN1YWxWaWV3cG9ydC5oZWlnaHQ6QVtFXSktbi5oZWlnaHQsZyo9bD8xOi0xKSxzIT09YnQmJihzIT09Z3QmJnMhPT1tdHx8byE9PUF0KXx8KHY9X3QsZi09KGQmJkE9PT13JiZ3LnZpc3VhbFZpZXdwb3J0P3cudmlzdWFsVmlld3BvcnQud2lkdGg6QVtUXSktbi53aWR0aCxmKj1sPzE6LTEpfXZhciBDLE89T2JqZWN0LmFzc2lnbih7cG9zaXRpb246YX0sYyYmdWUpLHg9ITA9PT1oP2Z1bmN0aW9uKHQpe3ZhciBlPXQueCxpPXQueSxuPXdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxO3JldHVybnt4Olh0KGUqbikvbnx8MCx5Olh0KGkqbikvbnx8MH19KHt4OmYseTpnfSk6e3g6Zix5Omd9O3JldHVybiBmPXgueCxnPXgueSxsP09iamVjdC5hc3NpZ24oe30sTywoKEM9e30pW3ldPWI/IjAiOiIiLENbdl09Xz8iMCI6IiIsQy50cmFuc2Zvcm09KHcuZGV2aWNlUGl4ZWxSYXRpb3x8MSk8PTE/InRyYW5zbGF0ZSgiK2YrInB4LCAiK2crInB4KSI6InRyYW5zbGF0ZTNkKCIrZisicHgsICIrZysicHgsIDApIixDKSk6T2JqZWN0LmFzc2lnbih7fSxPLCgoZT17fSlbeV09Yj9nKyJweCI6IiIsZVt2XT1fP2YrInB4IjoiIixlLnRyYW5zZm9ybT0iIixlKSl9Y29uc3QgcGU9e25hbWU6ImNvbXB1dGVTdHlsZXMiLGVuYWJsZWQ6ITAscGhhc2U6ImJlZm9yZVdyaXRlIixmbjpmdW5jdGlvbih0KXt2YXIgZT10LnN0YXRlLGk9dC5vcHRpb25zLG49aS5ncHVBY2NlbGVyYXRpb24scz12b2lkIDA9PT1ufHxuLG89aS5hZGFwdGl2ZSxyPXZvaWQgMD09PW98fG8sYT1pLnJvdW5kT2Zmc2V0cyxsPXZvaWQgMD09PWF8fGEsYz17cGxhY2VtZW50OlZ0KGUucGxhY2VtZW50KSx2YXJpYXRpb246ZGUoZS5wbGFjZW1lbnQpLHBvcHBlcjplLmVsZW1lbnRzLnBvcHBlcixwb3BwZXJSZWN0OmUucmVjdHMucG9wcGVyLGdwdUFjY2VsZXJhdGlvbjpzLGlzRml4ZWQ6ImZpeGVkIj09PWUub3B0aW9ucy5zdHJhdGVneX07bnVsbCE9ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMmJihlLnN0eWxlcy5wb3BwZXI9T2JqZWN0LmFzc2lnbih7fSxlLnN0eWxlcy5wb3BwZXIsZmUoT2JqZWN0LmFzc2lnbih7fSxjLHtvZmZzZXRzOmUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzLHBvc2l0aW9uOmUub3B0aW9ucy5zdHJhdGVneSxhZGFwdGl2ZTpyLHJvdW5kT2Zmc2V0czpsfSkpKSksbnVsbCE9ZS5tb2RpZmllcnNEYXRhLmFycm93JiYoZS5zdHlsZXMuYXJyb3c9T2JqZWN0LmFzc2lnbih7fSxlLnN0eWxlcy5hcnJvdyxmZShPYmplY3QuYXNzaWduKHt9LGMse29mZnNldHM6ZS5tb2RpZmllcnNEYXRhLmFycm93LHBvc2l0aW9uOiJhYnNvbHV0ZSIsYWRhcHRpdmU6ITEscm91bmRPZmZzZXRzOmx9KSkpKSxlLmF0dHJpYnV0ZXMucG9wcGVyPU9iamVjdC5hc3NpZ24oe30sZS5hdHRyaWJ1dGVzLnBvcHBlcix7ImRhdGEtcG9wcGVyLXBsYWNlbWVudCI6ZS5wbGFjZW1lbnR9KX0sZGF0YTp7fX07dmFyIGdlPXtwYXNzaXZlOiEwfTtjb25zdCBtZT17bmFtZToiZXZlbnRMaXN0ZW5lcnMiLGVuYWJsZWQ6ITAscGhhc2U6IndyaXRlIixmbjpmdW5jdGlvbigpe30sZWZmZWN0OmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGUsaT10Lmluc3RhbmNlLG49dC5vcHRpb25zLHM9bi5zY3JvbGwsbz12b2lkIDA9PT1zfHxzLHI9bi5yZXNpemUsYT12b2lkIDA9PT1yfHxyLGw9QnQoZS5lbGVtZW50cy5wb3BwZXIpLGM9W10uY29uY2F0KGUuc2Nyb2xsUGFyZW50cy5yZWZlcmVuY2UsZS5zY3JvbGxQYXJlbnRzLnBvcHBlcik7cmV0dXJuIG8mJmMuZm9yRWFjaCgoZnVuY3Rpb24odCl7dC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGkudXBkYXRlLGdlKX0pKSxhJiZsLmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsaS51cGRhdGUsZ2UpLGZ1bmN0aW9uKCl7byYmYy5mb3JFYWNoKChmdW5jdGlvbih0KXt0LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsaS51cGRhdGUsZ2UpfSkpLGEmJmwucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixpLnVwZGF0ZSxnZSl9fSxkYXRhOnt9fTt2YXIgX2U9e2xlZnQ6InJpZ2h0IixyaWdodDoibGVmdCIsYm90dG9tOiJ0b3AiLHRvcDoiYm90dG9tIn07ZnVuY3Rpb24gYmUodCl7cmV0dXJuIHQucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csKGZ1bmN0aW9uKHQpe3JldHVybiBfZVt0XX0pKX12YXIgdmU9e3N0YXJ0OiJlbmQiLGVuZDoic3RhcnQifTtmdW5jdGlvbiB5ZSh0KXtyZXR1cm4gdC5yZXBsYWNlKC9zdGFydHxlbmQvZywoZnVuY3Rpb24odCl7cmV0dXJuIHZlW3RdfSkpfWZ1bmN0aW9uIHdlKHQpe3ZhciBlPUJ0KHQpO3JldHVybntzY3JvbGxMZWZ0OmUucGFnZVhPZmZzZXQsc2Nyb2xsVG9wOmUucGFnZVlPZmZzZXR9fWZ1bmN0aW9uIEFlKHQpe3JldHVybiBHdChpZSh0KSkubGVmdCt3ZSh0KS5zY3JvbGxMZWZ0fWZ1bmN0aW9uIEVlKHQpe3ZhciBlPXRlKHQpLGk9ZS5vdmVyZmxvdyxuPWUub3ZlcmZsb3dYLHM9ZS5vdmVyZmxvd1k7cmV0dXJuL2F1dG98c2Nyb2xsfG92ZXJsYXl8aGlkZGVuLy50ZXN0KGkrcytuKX1mdW5jdGlvbiBUZSh0KXtyZXR1cm5bImh0bWwiLCJib2R5IiwiI2RvY3VtZW50Il0uaW5kZXhPZihXdCh0KSk+PTA/dC5vd25lckRvY3VtZW50LmJvZHk6enQodCkmJkVlKHQpP3Q6VGUobmUodCkpfWZ1bmN0aW9uIENlKHQsZSl7dmFyIGk7dm9pZCAwPT09ZSYmKGU9W10pO3ZhciBuPVRlKHQpLHM9bj09PShudWxsPT0oaT10Lm93bmVyRG9jdW1lbnQpP3ZvaWQgMDppLmJvZHkpLG89QnQobikscj1zP1tvXS5jb25jYXQoby52aXN1YWxWaWV3cG9ydHx8W10sRWUobik/bjpbXSk6bixhPWUuY29uY2F0KHIpO3JldHVybiBzP2E6YS5jb25jYXQoQ2UobmUocikpKX1mdW5jdGlvbiBPZSh0KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSx0LHtsZWZ0OnQueCx0b3A6dC55LHJpZ2h0OnQueCt0LndpZHRoLGJvdHRvbTp0LnkrdC5oZWlnaHR9KX1mdW5jdGlvbiB4ZSh0LGUsaSl7cmV0dXJuIGU9PT1UdD9PZShmdW5jdGlvbih0LGUpe3ZhciBpPUJ0KHQpLG49aWUodCkscz1pLnZpc3VhbFZpZXdwb3J0LG89bi5jbGllbnRXaWR0aCxyPW4uY2xpZW50SGVpZ2h0LGE9MCxsPTA7aWYocyl7bz1zLndpZHRoLHI9cy5oZWlnaHQ7dmFyIGM9VXQoKTsoY3x8IWMmJiJmaXhlZCI9PT1lKSYmKGE9cy5vZmZzZXRMZWZ0LGw9cy5vZmZzZXRUb3ApfXJldHVybnt3aWR0aDpvLGhlaWdodDpyLHg6YStBZSh0KSx5Omx9fSh0LGkpKTpGdChlKT9mdW5jdGlvbih0LGUpe3ZhciBpPUd0KHQsITEsImZpeGVkIj09PWUpO3JldHVybiBpLnRvcD1pLnRvcCt0LmNsaWVudFRvcCxpLmxlZnQ9aS5sZWZ0K3QuY2xpZW50TGVmdCxpLmJvdHRvbT1pLnRvcCt0LmNsaWVudEhlaWdodCxpLnJpZ2h0PWkubGVmdCt0LmNsaWVudFdpZHRoLGkud2lkdGg9dC5jbGllbnRXaWR0aCxpLmhlaWdodD10LmNsaWVudEhlaWdodCxpLng9aS5sZWZ0LGkueT1pLnRvcCxpfShlLGkpOk9lKGZ1bmN0aW9uKHQpe3ZhciBlLGk9aWUodCksbj13ZSh0KSxzPW51bGw9PShlPXQub3duZXJEb2N1bWVudCk/dm9pZCAwOmUuYm9keSxvPUt0KGkuc2Nyb2xsV2lkdGgsaS5jbGllbnRXaWR0aCxzP3Muc2Nyb2xsV2lkdGg6MCxzP3MuY2xpZW50V2lkdGg6MCkscj1LdChpLnNjcm9sbEhlaWdodCxpLmNsaWVudEhlaWdodCxzP3Muc2Nyb2xsSGVpZ2h0OjAscz9zLmNsaWVudEhlaWdodDowKSxhPS1uLnNjcm9sbExlZnQrQWUodCksbD0tbi5zY3JvbGxUb3A7cmV0dXJuInJ0bCI9PT10ZShzfHxpKS5kaXJlY3Rpb24mJihhKz1LdChpLmNsaWVudFdpZHRoLHM/cy5jbGllbnRXaWR0aDowKS1vKSx7d2lkdGg6byxoZWlnaHQ6cix4OmEseTpsfX0oaWUodCkpKX1mdW5jdGlvbiBrZSh0KXt2YXIgZSxpPXQucmVmZXJlbmNlLG49dC5lbGVtZW50LHM9dC5wbGFjZW1lbnQsbz1zP1Z0KHMpOm51bGwscj1zP2RlKHMpOm51bGwsYT1pLngraS53aWR0aC8yLW4ud2lkdGgvMixsPWkueStpLmhlaWdodC8yLW4uaGVpZ2h0LzI7c3dpdGNoKG8pe2Nhc2UgZ3Q6ZT17eDphLHk6aS55LW4uaGVpZ2h0fTticmVhaztjYXNlIG10OmU9e3g6YSx5OmkueStpLmhlaWdodH07YnJlYWs7Y2FzZSBfdDplPXt4OmkueCtpLndpZHRoLHk6bH07YnJlYWs7Y2FzZSBidDplPXt4OmkueC1uLndpZHRoLHk6bH07YnJlYWs7ZGVmYXVsdDplPXt4OmkueCx5OmkueX19dmFyIGM9bz9yZShvKTpudWxsO2lmKG51bGwhPWMpe3ZhciBoPSJ5Ij09PWM/ImhlaWdodCI6IndpZHRoIjtzd2l0Y2gocil7Y2FzZSB3dDplW2NdPWVbY10tKGlbaF0vMi1uW2hdLzIpO2JyZWFrO2Nhc2UgQXQ6ZVtjXT1lW2NdKyhpW2hdLzItbltoXS8yKX19cmV0dXJuIGV9ZnVuY3Rpb24gTGUodCxlKXt2b2lkIDA9PT1lJiYoZT17fSk7dmFyIGk9ZSxuPWkucGxhY2VtZW50LHM9dm9pZCAwPT09bj90LnBsYWNlbWVudDpuLG89aS5zdHJhdGVneSxyPXZvaWQgMD09PW8/dC5zdHJhdGVneTpvLGE9aS5ib3VuZGFyeSxsPXZvaWQgMD09PWE/RXQ6YSxjPWkucm9vdEJvdW5kYXJ5LGg9dm9pZCAwPT09Yz9UdDpjLGQ9aS5lbGVtZW50Q29udGV4dCx1PXZvaWQgMD09PWQ/Q3Q6ZCxmPWkuYWx0Qm91bmRhcnkscD12b2lkIDAhPT1mJiZmLGc9aS5wYWRkaW5nLG09dm9pZCAwPT09Zz8wOmcsXz1sZSgibnVtYmVyIiE9dHlwZW9mIG0/bTpjZShtLHl0KSksYj11PT09Q3Q/T3Q6Q3Qsdj10LnJlY3RzLnBvcHBlcix5PXQuZWxlbWVudHNbcD9iOnVdLHc9ZnVuY3Rpb24odCxlLGksbil7dmFyIHM9ImNsaXBwaW5nUGFyZW50cyI9PT1lP2Z1bmN0aW9uKHQpe3ZhciBlPUNlKG5lKHQpKSxpPVsiYWJzb2x1dGUiLCJmaXhlZCJdLmluZGV4T2YodGUodCkucG9zaXRpb24pPj0wJiZ6dCh0KT9vZSh0KTp0O3JldHVybiBGdChpKT9lLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIEZ0KHQpJiZadCh0LGkpJiYiYm9keSIhPT1XdCh0KX0pKTpbXX0odCk6W10uY29uY2F0KGUpLG89W10uY29uY2F0KHMsW2ldKSxyPW9bMF0sYT1vLnJlZHVjZSgoZnVuY3Rpb24oZSxpKXt2YXIgcz14ZSh0LGksbik7cmV0dXJuIGUudG9wPUt0KHMudG9wLGUudG9wKSxlLnJpZ2h0PVF0KHMucmlnaHQsZS5yaWdodCksZS5ib3R0b209UXQocy5ib3R0b20sZS5ib3R0b20pLGUubGVmdD1LdChzLmxlZnQsZS5sZWZ0KSxlfSkseGUodCxyLG4pKTtyZXR1cm4gYS53aWR0aD1hLnJpZ2h0LWEubGVmdCxhLmhlaWdodD1hLmJvdHRvbS1hLnRvcCxhLng9YS5sZWZ0LGEueT1hLnRvcCxhfShGdCh5KT95OnkuY29udGV4dEVsZW1lbnR8fGllKHQuZWxlbWVudHMucG9wcGVyKSxsLGgsciksQT1HdCh0LmVsZW1lbnRzLnJlZmVyZW5jZSksRT1rZSh7cmVmZXJlbmNlOkEsZWxlbWVudDp2LHN0cmF0ZWd5OiJhYnNvbHV0ZSIscGxhY2VtZW50OnN9KSxUPU9lKE9iamVjdC5hc3NpZ24oe30sdixFKSksQz11PT09Q3Q/VDpBLE89e3RvcDp3LnRvcC1DLnRvcCtfLnRvcCxib3R0b206Qy5ib3R0b20tdy5ib3R0b20rXy5ib3R0b20sbGVmdDp3LmxlZnQtQy5sZWZ0K18ubGVmdCxyaWdodDpDLnJpZ2h0LXcucmlnaHQrXy5yaWdodH0seD10Lm1vZGlmaWVyc0RhdGEub2Zmc2V0O2lmKHU9PT1DdCYmeCl7dmFyIGs9eFtzXTtPYmplY3Qua2V5cyhPKS5mb3JFYWNoKChmdW5jdGlvbih0KXt2YXIgZT1bX3QsbXRdLmluZGV4T2YodCk+PTA/MTotMSxpPVtndCxtdF0uaW5kZXhPZih0KT49MD8ieSI6IngiO09bdF0rPWtbaV0qZX0pKX1yZXR1cm4gT31mdW5jdGlvbiBEZSh0LGUpe3ZvaWQgMD09PWUmJihlPXt9KTt2YXIgaT1lLG49aS5wbGFjZW1lbnQscz1pLmJvdW5kYXJ5LG89aS5yb290Qm91bmRhcnkscj1pLnBhZGRpbmcsYT1pLmZsaXBWYXJpYXRpb25zLGw9aS5hbGxvd2VkQXV0b1BsYWNlbWVudHMsYz12b2lkIDA9PT1sP2t0OmwsaD1kZShuKSxkPWg/YT94dDp4dC5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiBkZSh0KT09PWh9KSk6eXQsdT1kLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIGMuaW5kZXhPZih0KT49MH0pKTswPT09dS5sZW5ndGgmJih1PWQpO3ZhciBmPXUucmVkdWNlKChmdW5jdGlvbihlLGkpe3JldHVybiBlW2ldPUxlKHQse3BsYWNlbWVudDppLGJvdW5kYXJ5OnMscm9vdEJvdW5kYXJ5Om8scGFkZGluZzpyfSlbVnQoaSldLGV9KSx7fSk7cmV0dXJuIE9iamVjdC5rZXlzKGYpLnNvcnQoKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZbdF0tZltlXX0pKX1jb25zdCBTZT17bmFtZToiZmxpcCIsZW5hYmxlZDohMCxwaGFzZToibWFpbiIsZm46ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZSxpPXQub3B0aW9ucyxuPXQubmFtZTtpZighZS5tb2RpZmllcnNEYXRhW25dLl9za2lwKXtmb3IodmFyIHM9aS5tYWluQXhpcyxvPXZvaWQgMD09PXN8fHMscj1pLmFsdEF4aXMsYT12b2lkIDA9PT1yfHxyLGw9aS5mYWxsYmFja1BsYWNlbWVudHMsYz1pLnBhZGRpbmcsaD1pLmJvdW5kYXJ5LGQ9aS5yb290Qm91bmRhcnksdT1pLmFsdEJvdW5kYXJ5LGY9aS5mbGlwVmFyaWF0aW9ucyxwPXZvaWQgMD09PWZ8fGYsZz1pLmFsbG93ZWRBdXRvUGxhY2VtZW50cyxtPWUub3B0aW9ucy5wbGFjZW1lbnQsXz1WdChtKSxiPWx8fChfIT09bSYmcD9mdW5jdGlvbih0KXtpZihWdCh0KT09PXZ0KXJldHVybltdO3ZhciBlPWJlKHQpO3JldHVyblt5ZSh0KSxlLHllKGUpXX0obSk6W2JlKG0pXSksdj1bbV0uY29uY2F0KGIpLnJlZHVjZSgoZnVuY3Rpb24odCxpKXtyZXR1cm4gdC5jb25jYXQoVnQoaSk9PT12dD9EZShlLHtwbGFjZW1lbnQ6aSxib3VuZGFyeTpoLHJvb3RCb3VuZGFyeTpkLHBhZGRpbmc6YyxmbGlwVmFyaWF0aW9uczpwLGFsbG93ZWRBdXRvUGxhY2VtZW50czpnfSk6aSl9KSxbXSkseT1lLnJlY3RzLnJlZmVyZW5jZSx3PWUucmVjdHMucG9wcGVyLEE9bmV3IE1hcCxFPSEwLFQ9dlswXSxDPTA7Qzx2Lmxlbmd0aDtDKyspe3ZhciBPPXZbQ10seD1WdChPKSxrPWRlKE8pPT09d3QsTD1bZ3QsbXRdLmluZGV4T2YoeCk+PTAsRD1MPyJ3aWR0aCI6ImhlaWdodCIsUz1MZShlLHtwbGFjZW1lbnQ6Tyxib3VuZGFyeTpoLHJvb3RCb3VuZGFyeTpkLGFsdEJvdW5kYXJ5OnUscGFkZGluZzpjfSksST1MP2s/X3Q6YnQ6az9tdDpndDt5W0RdPndbRF0mJihJPWJlKEkpKTt2YXIgTj1iZShJKSxQPVtdO2lmKG8mJlAucHVzaChTW3hdPD0wKSxhJiZQLnB1c2goU1tJXTw9MCxTW05dPD0wKSxQLmV2ZXJ5KChmdW5jdGlvbih0KXtyZXR1cm4gdH0pKSl7VD1PLEU9ITE7YnJlYWt9QS5zZXQoTyxQKX1pZihFKWZvcih2YXIgaj1mdW5jdGlvbih0KXt2YXIgZT12LmZpbmQoKGZ1bmN0aW9uKGUpe3ZhciBpPUEuZ2V0KGUpO2lmKGkpcmV0dXJuIGkuc2xpY2UoMCx0KS5ldmVyeSgoZnVuY3Rpb24odCl7cmV0dXJuIHR9KSl9KSk7aWYoZSlyZXR1cm4gVD1lLCJicmVhayJ9LE09cD8zOjE7TT4wJiYiYnJlYWsiIT09aihNKTtNLS0pO2UucGxhY2VtZW50IT09VCYmKGUubW9kaWZpZXJzRGF0YVtuXS5fc2tpcD0hMCxlLnBsYWNlbWVudD1ULGUucmVzZXQ9ITApfX0scmVxdWlyZXNJZkV4aXN0czpbIm9mZnNldCJdLGRhdGE6e19za2lwOiExfX07ZnVuY3Rpb24gSWUodCxlLGkpe3JldHVybiB2b2lkIDA9PT1pJiYoaT17eDowLHk6MH0pLHt0b3A6dC50b3AtZS5oZWlnaHQtaS55LHJpZ2h0OnQucmlnaHQtZS53aWR0aCtpLngsYm90dG9tOnQuYm90dG9tLWUuaGVpZ2h0K2kueSxsZWZ0OnQubGVmdC1lLndpZHRoLWkueH19ZnVuY3Rpb24gTmUodCl7cmV0dXJuW2d0LF90LG10LGJ0XS5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXT49MH0pKX1jb25zdCBQZT17bmFtZToiaGlkZSIsZW5hYmxlZDohMCxwaGFzZToibWFpbiIscmVxdWlyZXNJZkV4aXN0czpbInByZXZlbnRPdmVyZmxvdyJdLGZuOmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGUsaT10Lm5hbWUsbj1lLnJlY3RzLnJlZmVyZW5jZSxzPWUucmVjdHMucG9wcGVyLG89ZS5tb2RpZmllcnNEYXRhLnByZXZlbnRPdmVyZmxvdyxyPUxlKGUse2VsZW1lbnRDb250ZXh0OiJyZWZlcmVuY2UifSksYT1MZShlLHthbHRCb3VuZGFyeTohMH0pLGw9SWUocixuKSxjPUllKGEscyxvKSxoPU5lKGwpLGQ9TmUoYyk7ZS5tb2RpZmllcnNEYXRhW2ldPXtyZWZlcmVuY2VDbGlwcGluZ09mZnNldHM6bCxwb3BwZXJFc2NhcGVPZmZzZXRzOmMsaXNSZWZlcmVuY2VIaWRkZW46aCxoYXNQb3BwZXJFc2NhcGVkOmR9LGUuYXR0cmlidXRlcy5wb3BwZXI9T2JqZWN0LmFzc2lnbih7fSxlLmF0dHJpYnV0ZXMucG9wcGVyLHsiZGF0YS1wb3BwZXItcmVmZXJlbmNlLWhpZGRlbiI6aCwiZGF0YS1wb3BwZXItZXNjYXBlZCI6ZH0pfX0samU9e25hbWU6Im9mZnNldCIsZW5hYmxlZDohMCxwaGFzZToibWFpbiIscmVxdWlyZXM6WyJwb3BwZXJPZmZzZXRzIl0sZm46ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZSxpPXQub3B0aW9ucyxuPXQubmFtZSxzPWkub2Zmc2V0LG89dm9pZCAwPT09cz9bMCwwXTpzLHI9a3QucmVkdWNlKChmdW5jdGlvbih0LGkpe3JldHVybiB0W2ldPWZ1bmN0aW9uKHQsZSxpKXt2YXIgbj1WdCh0KSxzPVtidCxndF0uaW5kZXhPZihuKT49MD8tMToxLG89ImZ1bmN0aW9uIj09dHlwZW9mIGk/aShPYmplY3QuYXNzaWduKHt9LGUse3BsYWNlbWVudDp0fSkpOmkscj1vWzBdLGE9b1sxXTtyZXR1cm4gcj1yfHwwLGE9KGF8fDApKnMsW2J0LF90XS5pbmRleE9mKG4pPj0wP3t4OmEseTpyfTp7eDpyLHk6YX19KGksZS5yZWN0cyxvKSx0fSkse30pLGE9cltlLnBsYWNlbWVudF0sbD1hLngsYz1hLnk7bnVsbCE9ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMmJihlLm1vZGlmaWVyc0RhdGEucG9wcGVyT2Zmc2V0cy54Kz1sLGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzLnkrPWMpLGUubW9kaWZpZXJzRGF0YVtuXT1yfX0sTWU9e25hbWU6InBvcHBlck9mZnNldHMiLGVuYWJsZWQ6ITAscGhhc2U6InJlYWQiLGZuOmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGUsaT10Lm5hbWU7ZS5tb2RpZmllcnNEYXRhW2ldPWtlKHtyZWZlcmVuY2U6ZS5yZWN0cy5yZWZlcmVuY2UsZWxlbWVudDplLnJlY3RzLnBvcHBlcixzdHJhdGVneToiYWJzb2x1dGUiLHBsYWNlbWVudDplLnBsYWNlbWVudH0pfSxkYXRhOnt9fSxIZT17bmFtZToicHJldmVudE92ZXJmbG93IixlbmFibGVkOiEwLHBoYXNlOiJtYWluIixmbjpmdW5jdGlvbih0KXt2YXIgZT10LnN0YXRlLGk9dC5vcHRpb25zLG49dC5uYW1lLHM9aS5tYWluQXhpcyxvPXZvaWQgMD09PXN8fHMscj1pLmFsdEF4aXMsYT12b2lkIDAhPT1yJiZyLGw9aS5ib3VuZGFyeSxjPWkucm9vdEJvdW5kYXJ5LGg9aS5hbHRCb3VuZGFyeSxkPWkucGFkZGluZyx1PWkudGV0aGVyLGY9dm9pZCAwPT09dXx8dSxwPWkudGV0aGVyT2Zmc2V0LGc9dm9pZCAwPT09cD8wOnAsbT1MZShlLHtib3VuZGFyeTpsLHJvb3RCb3VuZGFyeTpjLHBhZGRpbmc6ZCxhbHRCb3VuZGFyeTpofSksXz1WdChlLnBsYWNlbWVudCksYj1kZShlLnBsYWNlbWVudCksdj0hYix5PXJlKF8pLHc9IngiPT09eT8ieSI6IngiLEE9ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMsRT1lLnJlY3RzLnJlZmVyZW5jZSxUPWUucmVjdHMucG9wcGVyLEM9ImZ1bmN0aW9uIj09dHlwZW9mIGc/ZyhPYmplY3QuYXNzaWduKHt9LGUucmVjdHMse3BsYWNlbWVudDplLnBsYWNlbWVudH0pKTpnLE89Im51bWJlciI9PXR5cGVvZiBDP3ttYWluQXhpczpDLGFsdEF4aXM6Q306T2JqZWN0LmFzc2lnbih7bWFpbkF4aXM6MCxhbHRBeGlzOjB9LEMpLHg9ZS5tb2RpZmllcnNEYXRhLm9mZnNldD9lLm1vZGlmaWVyc0RhdGEub2Zmc2V0W2UucGxhY2VtZW50XTpudWxsLGs9e3g6MCx5OjB9O2lmKEEpe2lmKG8pe3ZhciBMLEQ9InkiPT09eT9ndDpidCxTPSJ5Ij09PXk/bXQ6X3QsST0ieSI9PT15PyJoZWlnaHQiOiJ3aWR0aCIsTj1BW3ldLFA9TittW0RdLGo9Ti1tW1NdLE09Zj8tVFtJXS8yOjAsSD1iPT09d3Q/RVtJXTpUW0ldLCQ9Yj09PXd0Py1UW0ldOi1FW0ldLFc9ZS5lbGVtZW50cy5hcnJvdyxCPWYmJlc/SnQoVyk6e3dpZHRoOjAsaGVpZ2h0OjB9LEY9ZS5tb2RpZmllcnNEYXRhWyJhcnJvdyNwZXJzaXN0ZW50Il0/ZS5tb2RpZmllcnNEYXRhWyJhcnJvdyNwZXJzaXN0ZW50Il0ucGFkZGluZzp7dG9wOjAscmlnaHQ6MCxib3R0b206MCxsZWZ0OjB9LHo9RltEXSxxPUZbU10sUj1hZSgwLEVbSV0sQltJXSksVj12P0VbSV0vMi1NLVItei1PLm1haW5BeGlzOkgtUi16LU8ubWFpbkF4aXMsSz12Py1FW0ldLzIrTStSK3ErTy5tYWluQXhpczokK1IrcStPLm1haW5BeGlzLFE9ZS5lbGVtZW50cy5hcnJvdyYmb2UoZS5lbGVtZW50cy5hcnJvdyksWD1RPyJ5Ij09PXk/US5jbGllbnRUb3B8fDA6US5jbGllbnRMZWZ0fHwwOjAsWT1udWxsIT0oTD1udWxsPT14P3ZvaWQgMDp4W3ldKT9MOjAsVT1OK0stWSxHPWFlKGY/UXQoUCxOK1YtWS1YKTpQLE4sZj9LdChqLFUpOmopO0FbeV09RyxrW3ldPUctTn1pZihhKXt2YXIgSixaPSJ4Ij09PXk/Z3Q6YnQsdHQ9IngiPT09eT9tdDpfdCxldD1BW3ddLGl0PSJ5Ij09PXc/ImhlaWdodCI6IndpZHRoIixudD1ldCttW1pdLHN0PWV0LW1bdHRdLG90PS0xIT09W2d0LGJ0XS5pbmRleE9mKF8pLHJ0PW51bGwhPShKPW51bGw9PXg/dm9pZCAwOnhbd10pP0o6MCxhdD1vdD9udDpldC1FW2l0XS1UW2l0XS1ydCtPLmFsdEF4aXMsbHQ9b3Q/ZXQrRVtpdF0rVFtpdF0tcnQtTy5hbHRBeGlzOnN0LGN0PWYmJm90P2Z1bmN0aW9uKHQsZSxpKXt2YXIgbj1hZSh0LGUsaSk7cmV0dXJuIG4+aT9pOm59KGF0LGV0LGx0KTphZShmP2F0Om50LGV0LGY/bHQ6c3QpO0Fbd109Y3Qsa1t3XT1jdC1ldH1lLm1vZGlmaWVyc0RhdGFbbl09a319LHJlcXVpcmVzSWZFeGlzdHM6WyJvZmZzZXQiXX07ZnVuY3Rpb24gJGUodCxlLGkpe3ZvaWQgMD09PWkmJihpPSExKTt2YXIgbixzLG89enQoZSkscj16dChlKSYmZnVuY3Rpb24odCl7dmFyIGU9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxpPVh0KGUud2lkdGgpL3Qub2Zmc2V0V2lkdGh8fDEsbj1YdChlLmhlaWdodCkvdC5vZmZzZXRIZWlnaHR8fDE7cmV0dXJuIDEhPT1pfHwxIT09bn0oZSksYT1pZShlKSxsPUd0KHQscixpKSxjPXtzY3JvbGxMZWZ0OjAsc2Nyb2xsVG9wOjB9LGg9e3g6MCx5OjB9O3JldHVybihvfHwhbyYmIWkpJiYoKCJib2R5IiE9PVd0KGUpfHxFZShhKSkmJihjPShuPWUpIT09QnQobikmJnp0KG4pP3tzY3JvbGxMZWZ0OihzPW4pLnNjcm9sbExlZnQsc2Nyb2xsVG9wOnMuc2Nyb2xsVG9wfTp3ZShuKSksenQoZSk/KChoPUd0KGUsITApKS54Kz1lLmNsaWVudExlZnQsaC55Kz1lLmNsaWVudFRvcCk6YSYmKGgueD1BZShhKSkpLHt4OmwubGVmdCtjLnNjcm9sbExlZnQtaC54LHk6bC50b3ArYy5zY3JvbGxUb3AtaC55LHdpZHRoOmwud2lkdGgsaGVpZ2h0OmwuaGVpZ2h0fX1mdW5jdGlvbiBXZSh0KXt2YXIgZT1uZXcgTWFwLGk9bmV3IFNldCxuPVtdO2Z1bmN0aW9uIHModCl7aS5hZGQodC5uYW1lKSxbXS5jb25jYXQodC5yZXF1aXJlc3x8W10sdC5yZXF1aXJlc0lmRXhpc3RzfHxbXSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7aWYoIWkuaGFzKHQpKXt2YXIgbj1lLmdldCh0KTtuJiZzKG4pfX0pKSxuLnB1c2godCl9cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZS5zZXQodC5uYW1lLHQpfSkpLHQuZm9yRWFjaCgoZnVuY3Rpb24odCl7aS5oYXModC5uYW1lKXx8cyh0KX0pKSxufXZhciBCZT17cGxhY2VtZW50OiJib3R0b20iLG1vZGlmaWVyczpbXSxzdHJhdGVneToiYWJzb2x1dGUifTtmdW5jdGlvbiBGZSgpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KHQpLGk9MDtpPHQ7aSsrKWVbaV09YXJndW1lbnRzW2ldO3JldHVybiFlLnNvbWUoKGZ1bmN0aW9uKHQpe3JldHVybiEodCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KX0pKX1mdW5jdGlvbiB6ZSh0KXt2b2lkIDA9PT10JiYodD17fSk7dmFyIGU9dCxpPWUuZGVmYXVsdE1vZGlmaWVycyxuPXZvaWQgMD09PWk/W106aSxzPWUuZGVmYXVsdE9wdGlvbnMsbz12b2lkIDA9PT1zP0JlOnM7cmV0dXJuIGZ1bmN0aW9uKHQsZSxpKXt2b2lkIDA9PT1pJiYoaT1vKTt2YXIgcyxyLGE9e3BsYWNlbWVudDoiYm90dG9tIixvcmRlcmVkTW9kaWZpZXJzOltdLG9wdGlvbnM6T2JqZWN0LmFzc2lnbih7fSxCZSxvKSxtb2RpZmllcnNEYXRhOnt9LGVsZW1lbnRzOntyZWZlcmVuY2U6dCxwb3BwZXI6ZX0sYXR0cmlidXRlczp7fSxzdHlsZXM6e319LGw9W10sYz0hMSxoPXtzdGF0ZTphLHNldE9wdGlvbnM6ZnVuY3Rpb24oaSl7dmFyIHM9ImZ1bmN0aW9uIj09dHlwZW9mIGk/aShhLm9wdGlvbnMpOmk7ZCgpLGEub3B0aW9ucz1PYmplY3QuYXNzaWduKHt9LG8sYS5vcHRpb25zLHMpLGEuc2Nyb2xsUGFyZW50cz17cmVmZXJlbmNlOkZ0KHQpP0NlKHQpOnQuY29udGV4dEVsZW1lbnQ/Q2UodC5jb250ZXh0RWxlbWVudCk6W10scG9wcGVyOkNlKGUpfTt2YXIgcixjLHU9ZnVuY3Rpb24odCl7dmFyIGU9V2UodCk7cmV0dXJuICR0LnJlZHVjZSgoZnVuY3Rpb24odCxpKXtyZXR1cm4gdC5jb25jYXQoZS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiB0LnBoYXNlPT09aX0pKSl9KSxbXSl9KChyPVtdLmNvbmNhdChuLGEub3B0aW9ucy5tb2RpZmllcnMpLGM9ci5yZWR1Y2UoKGZ1bmN0aW9uKHQsZSl7dmFyIGk9dFtlLm5hbWVdO3JldHVybiB0W2UubmFtZV09aT9PYmplY3QuYXNzaWduKHt9LGksZSx7b3B0aW9uczpPYmplY3QuYXNzaWduKHt9LGkub3B0aW9ucyxlLm9wdGlvbnMpLGRhdGE6T2JqZWN0LmFzc2lnbih7fSxpLmRhdGEsZS5kYXRhKX0pOmUsdH0pLHt9KSxPYmplY3Qua2V5cyhjKS5tYXAoKGZ1bmN0aW9uKHQpe3JldHVybiBjW3RdfSkpKSk7cmV0dXJuIGEub3JkZXJlZE1vZGlmaWVycz11LmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIHQuZW5hYmxlZH0pKSxhLm9yZGVyZWRNb2RpZmllcnMuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIGU9dC5uYW1lLGk9dC5vcHRpb25zLG49dm9pZCAwPT09aT97fTppLHM9dC5lZmZlY3Q7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHMpe3ZhciBvPXMoe3N0YXRlOmEsbmFtZTplLGluc3RhbmNlOmgsb3B0aW9uczpufSk7bC5wdXNoKG98fGZ1bmN0aW9uKCl7fSl9fSkpLGgudXBkYXRlKCl9LGZvcmNlVXBkYXRlOmZ1bmN0aW9uKCl7aWYoIWMpe3ZhciB0PWEuZWxlbWVudHMsZT10LnJlZmVyZW5jZSxpPXQucG9wcGVyO2lmKEZlKGUsaSkpe2EucmVjdHM9e3JlZmVyZW5jZTokZShlLG9lKGkpLCJmaXhlZCI9PT1hLm9wdGlvbnMuc3RyYXRlZ3kpLHBvcHBlcjpKdChpKX0sYS5yZXNldD0hMSxhLnBsYWNlbWVudD1hLm9wdGlvbnMucGxhY2VtZW50LGEub3JkZXJlZE1vZGlmaWVycy5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gYS5tb2RpZmllcnNEYXRhW3QubmFtZV09T2JqZWN0LmFzc2lnbih7fSx0LmRhdGEpfSkpO2Zvcih2YXIgbj0wO248YS5vcmRlcmVkTW9kaWZpZXJzLmxlbmd0aDtuKyspaWYoITAhPT1hLnJlc2V0KXt2YXIgcz1hLm9yZGVyZWRNb2RpZmllcnNbbl0sbz1zLmZuLHI9cy5vcHRpb25zLGw9dm9pZCAwPT09cj97fTpyLGQ9cy5uYW1lOyJmdW5jdGlvbiI9PXR5cGVvZiBvJiYoYT1vKHtzdGF0ZTphLG9wdGlvbnM6bCxuYW1lOmQsaW5zdGFuY2U6aH0pfHxhKX1lbHNlIGEucmVzZXQ9ITEsbj0tMX19fSx1cGRhdGU6KHM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKHQpe2guZm9yY2VVcGRhdGUoKSx0KGEpfSkpfSxmdW5jdGlvbigpe3JldHVybiByfHwocj1uZXcgUHJvbWlzZSgoZnVuY3Rpb24odCl7UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoZnVuY3Rpb24oKXtyPXZvaWQgMCx0KHMoKSl9KSl9KSkpLHJ9KSxkZXN0cm95OmZ1bmN0aW9uKCl7ZCgpLGM9ITB9fTtpZighRmUodCxlKSlyZXR1cm4gaDtmdW5jdGlvbiBkKCl7bC5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gdCgpfSkpLGw9W119cmV0dXJuIGguc2V0T3B0aW9ucyhpKS50aGVuKChmdW5jdGlvbih0KXshYyYmaS5vbkZpcnN0VXBkYXRlJiZpLm9uRmlyc3RVcGRhdGUodCl9KSksaH19dmFyIHFlPXplKCksUmU9emUoe2RlZmF1bHRNb2RpZmllcnM6W21lLE1lLHBlLFJ0XX0pLFZlPXplKHtkZWZhdWx0TW9kaWZpZXJzOlttZSxNZSxwZSxSdCxqZSxTZSxIZSxoZSxQZV19KTtjb25zdCBLZT1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwscG9wcGVyR2VuZXJhdG9yOnplLGRldGVjdE92ZXJmbG93OkxlLGNyZWF0ZVBvcHBlckJhc2U6cWUsY3JlYXRlUG9wcGVyOlZlLGNyZWF0ZVBvcHBlckxpdGU6UmUsdG9wOmd0LGJvdHRvbTptdCxyaWdodDpfdCxsZWZ0OmJ0LGF1dG86dnQsYmFzZVBsYWNlbWVudHM6eXQsc3RhcnQ6d3QsZW5kOkF0LGNsaXBwaW5nUGFyZW50czpFdCx2aWV3cG9ydDpUdCxwb3BwZXI6Q3QscmVmZXJlbmNlOk90LHZhcmlhdGlvblBsYWNlbWVudHM6eHQscGxhY2VtZW50czprdCxiZWZvcmVSZWFkOkx0LHJlYWQ6RHQsYWZ0ZXJSZWFkOlN0LGJlZm9yZU1haW46SXQsbWFpbjpOdCxhZnRlck1haW46UHQsYmVmb3JlV3JpdGU6anQsd3JpdGU6TXQsYWZ0ZXJXcml0ZTpIdCxtb2RpZmllclBoYXNlczokdCxhcHBseVN0eWxlczpSdCxhcnJvdzpoZSxjb21wdXRlU3R5bGVzOnBlLGV2ZW50TGlzdGVuZXJzOm1lLGZsaXA6U2UsaGlkZTpQZSxvZmZzZXQ6amUscG9wcGVyT2Zmc2V0czpNZSxwcmV2ZW50T3ZlcmZsb3c6SGV9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksUWU9ImRyb3Bkb3duIixYZT0iQXJyb3dVcCIsWWU9IkFycm93RG93biIsVWU9ImNsaWNrLmJzLmRyb3Bkb3duLmRhdGEtYXBpIixHZT0ia2V5ZG93bi5icy5kcm9wZG93bi5kYXRhLWFwaSIsSmU9InNob3ciLFplPSdbZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIl06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCknLHRpPWAke1plfS5zaG93YCxlaT0iLmRyb3Bkb3duLW1lbnUiLGlpPXAoKT8idG9wLWVuZCI6InRvcC1zdGFydCIsbmk9cCgpPyJ0b3Atc3RhcnQiOiJ0b3AtZW5kIixzaT1wKCk/ImJvdHRvbS1lbmQiOiJib3R0b20tc3RhcnQiLG9pPXAoKT8iYm90dG9tLXN0YXJ0IjoiYm90dG9tLWVuZCIscmk9cCgpPyJsZWZ0LXN0YXJ0IjoicmlnaHQtc3RhcnQiLGFpPXAoKT8icmlnaHQtc3RhcnQiOiJsZWZ0LXN0YXJ0IixsaT17YXV0b0Nsb3NlOiEwLGJvdW5kYXJ5OiJjbGlwcGluZ1BhcmVudHMiLGRpc3BsYXk6ImR5bmFtaWMiLG9mZnNldDpbMCwyXSxwb3BwZXJDb25maWc6bnVsbCxyZWZlcmVuY2U6InRvZ2dsZSJ9LGNpPXthdXRvQ2xvc2U6Iihib29sZWFufHN0cmluZykiLGJvdW5kYXJ5OiIoc3RyaW5nfGVsZW1lbnQpIixkaXNwbGF5OiJzdHJpbmciLG9mZnNldDoiKGFycmF5fHN0cmluZ3xmdW5jdGlvbikiLHBvcHBlckNvbmZpZzoiKG51bGx8b2JqZWN0fGZ1bmN0aW9uKSIscmVmZXJlbmNlOiIoc3RyaW5nfGVsZW1lbnR8b2JqZWN0KSJ9O2NsYXNzIGhpIGV4dGVuZHMgentjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQsZSksdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5fcGFyZW50PXRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSx0aGlzLl9tZW51PVEubmV4dCh0aGlzLl9lbGVtZW50LGVpKVswXXx8US5wcmV2KHRoaXMuX2VsZW1lbnQsZWkpWzBdfHxRLmZpbmRPbmUoZWksdGhpcy5fcGFyZW50KSx0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKX1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gbGl9c3RhdGljIGdldCBEZWZhdWx0VHlwZSgpe3JldHVybiBjaX1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4gUWV9dG9nZ2xlKCl7cmV0dXJuIHRoaXMuX2lzU2hvd24oKT90aGlzLmhpZGUoKTp0aGlzLnNob3coKX1zaG93KCl7aWYobCh0aGlzLl9lbGVtZW50KXx8dGhpcy5faXNTaG93bigpKXJldHVybjtjb25zdCB0PXtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9O2lmKCFQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy5kcm9wZG93biIsdCkuZGVmYXVsdFByZXZlbnRlZCl7aWYodGhpcy5fY3JlYXRlUG9wcGVyKCksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJiF0aGlzLl9wYXJlbnQuY2xvc2VzdCgiLm5hdmJhci1uYXYiKSlmb3IoY29uc3QgdCBvZltdLmNvbmNhdCguLi5kb2N1bWVudC5ib2R5LmNoaWxkcmVuKSlQLm9uKHQsIm1vdXNlb3ZlciIsaCk7dGhpcy5fZWxlbWVudC5mb2N1cygpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMCksdGhpcy5fbWVudS5jbGFzc0xpc3QuYWRkKEplKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoSmUpLFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy5kcm9wZG93biIsdCl9fWhpZGUoKXtpZihsKHRoaXMuX2VsZW1lbnQpfHwhdGhpcy5faXNTaG93bigpKXJldHVybjtjb25zdCB0PXtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9O3RoaXMuX2NvbXBsZXRlSGlkZSh0KX1kaXNwb3NlKCl7dGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIuZGVzdHJveSgpLHN1cGVyLmRpc3Bvc2UoKX11cGRhdGUoKXt0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKSx0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci51cGRhdGUoKX1fY29tcGxldGVIaWRlKHQpe2lmKCFQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZS5icy5kcm9wZG93biIsdCkuZGVmYXVsdFByZXZlbnRlZCl7aWYoIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpZm9yKGNvbnN0IHQgb2ZbXS5jb25jYXQoLi4uZG9jdW1lbnQuYm9keS5jaGlsZHJlbikpUC5vZmYodCwibW91c2VvdmVyIixoKTt0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fbWVudS5jbGFzc0xpc3QucmVtb3ZlKEplKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoSmUpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSxCLnJlbW92ZURhdGFBdHRyaWJ1dGUodGhpcy5fbWVudSwicG9wcGVyIiksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGRlbi5icy5kcm9wZG93biIsdCl9fV9nZXRDb25maWcodCl7aWYoIm9iamVjdCI9PXR5cGVvZih0PXN1cGVyLl9nZXRDb25maWcodCkpLnJlZmVyZW5jZSYmIW8odC5yZWZlcmVuY2UpJiYiZnVuY3Rpb24iIT10eXBlb2YgdC5yZWZlcmVuY2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KXRocm93IG5ldyBUeXBlRXJyb3IoYCR7UWUudG9VcHBlckNhc2UoKX06IE9wdGlvbiAicmVmZXJlbmNlIiBwcm92aWRlZCB0eXBlICJvYmplY3QiIHdpdGhvdXQgYSByZXF1aXJlZCAiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiBtZXRob2QuYCk7cmV0dXJuIHR9X2NyZWF0ZVBvcHBlcigpe2lmKHZvaWQgMD09PUtlKXRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIGRyb3Bkb3ducyByZXF1aXJlIFBvcHBlciAoaHR0cHM6Ly9wb3BwZXIuanMub3JnKSIpO2xldCB0PXRoaXMuX2VsZW1lbnQ7InBhcmVudCI9PT10aGlzLl9jb25maWcucmVmZXJlbmNlP3Q9dGhpcy5fcGFyZW50Om8odGhpcy5fY29uZmlnLnJlZmVyZW5jZSk/dD1yKHRoaXMuX2NvbmZpZy5yZWZlcmVuY2UpOiJvYmplY3QiPT10eXBlb2YgdGhpcy5fY29uZmlnLnJlZmVyZW5jZSYmKHQ9dGhpcy5fY29uZmlnLnJlZmVyZW5jZSk7Y29uc3QgZT10aGlzLl9nZXRQb3BwZXJDb25maWcoKTt0aGlzLl9wb3BwZXI9VmUodCx0aGlzLl9tZW51LGUpfV9pc1Nob3duKCl7cmV0dXJuIHRoaXMuX21lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKEplKX1fZ2V0UGxhY2VtZW50KCl7Y29uc3QgdD10aGlzLl9wYXJlbnQ7aWYodC5jbGFzc0xpc3QuY29udGFpbnMoImRyb3BlbmQiKSlyZXR1cm4gcmk7aWYodC5jbGFzc0xpc3QuY29udGFpbnMoImRyb3BzdGFydCIpKXJldHVybiBhaTtpZih0LmNsYXNzTGlzdC5jb250YWlucygiZHJvcHVwLWNlbnRlciIpKXJldHVybiJ0b3AiO2lmKHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkcm9wZG93bi1jZW50ZXIiKSlyZXR1cm4iYm90dG9tIjtjb25zdCBlPSJlbmQiPT09Z2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9tZW51KS5nZXRQcm9wZXJ0eVZhbHVlKCItLWJzLXBvc2l0aW9uIikudHJpbSgpO3JldHVybiB0LmNsYXNzTGlzdC5jb250YWlucygiZHJvcHVwIik/ZT9uaTppaTplP29pOnNpfV9kZXRlY3ROYXZiYXIoKXtyZXR1cm4gbnVsbCE9PXRoaXMuX2VsZW1lbnQuY2xvc2VzdCgiLm5hdmJhciIpfV9nZXRPZmZzZXQoKXtjb25zdHtvZmZzZXQ6dH09dGhpcy5fY29uZmlnO3JldHVybiJzdHJpbmciPT10eXBlb2YgdD90LnNwbGl0KCIsIikubWFwKCh0PT5OdW1iZXIucGFyc2VJbnQodCwxMCkpKToiZnVuY3Rpb24iPT10eXBlb2YgdD9lPT50KGUsdGhpcy5fZWxlbWVudCk6dH1fZ2V0UG9wcGVyQ29uZmlnKCl7Y29uc3QgdD17cGxhY2VtZW50OnRoaXMuX2dldFBsYWNlbWVudCgpLG1vZGlmaWVyczpbe25hbWU6InByZXZlbnRPdmVyZmxvdyIsb3B0aW9uczp7Ym91bmRhcnk6dGhpcy5fY29uZmlnLmJvdW5kYXJ5fX0se25hbWU6Im9mZnNldCIsb3B0aW9uczp7b2Zmc2V0OnRoaXMuX2dldE9mZnNldCgpfX1dfTtyZXR1cm4odGhpcy5faW5OYXZiYXJ8fCJzdGF0aWMiPT09dGhpcy5fY29uZmlnLmRpc3BsYXkpJiYoQi5zZXREYXRhQXR0cmlidXRlKHRoaXMuX21lbnUsInBvcHBlciIsInN0YXRpYyIpLHQubW9kaWZpZXJzPVt7bmFtZToiYXBwbHlTdHlsZXMiLGVuYWJsZWQ6ITF9XSksey4uLnQsLi4uImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX2NvbmZpZy5wb3BwZXJDb25maWc/dGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZyh0KTp0aGlzLl9jb25maWcucG9wcGVyQ29uZmlnfX1fc2VsZWN0TWVudUl0ZW0oe2tleTp0LHRhcmdldDplfSl7Y29uc3QgaT1RLmZpbmQoIi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpOm5vdCg6ZGlzYWJsZWQpIix0aGlzLl9tZW51KS5maWx0ZXIoKHQ9PmEodCkpKTtpLmxlbmd0aCYmYihpLGUsdD09PVllLCFpLmluY2x1ZGVzKGUpKS5mb2N1cygpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPWhpLmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9c3RhdGljIGNsZWFyTWVudXModCl7aWYoMj09PXQuYnV0dG9ufHwia2V5dXAiPT09dC50eXBlJiYiVGFiIiE9PXQua2V5KXJldHVybjtjb25zdCBlPVEuZmluZCh0aSk7Zm9yKGNvbnN0IGkgb2YgZSl7Y29uc3QgZT1oaS5nZXRJbnN0YW5jZShpKTtpZighZXx8ITE9PT1lLl9jb25maWcuYXV0b0Nsb3NlKWNvbnRpbnVlO2NvbnN0IG49dC5jb21wb3NlZFBhdGgoKSxzPW4uaW5jbHVkZXMoZS5fbWVudSk7aWYobi5pbmNsdWRlcyhlLl9lbGVtZW50KXx8Imluc2lkZSI9PT1lLl9jb25maWcuYXV0b0Nsb3NlJiYhc3x8Im91dHNpZGUiPT09ZS5fY29uZmlnLmF1dG9DbG9zZSYmcyljb250aW51ZTtpZihlLl9tZW51LmNvbnRhaW5zKHQudGFyZ2V0KSYmKCJrZXl1cCI9PT10LnR5cGUmJiJUYWIiPT09dC5rZXl8fC9pbnB1dHxzZWxlY3R8b3B0aW9ufHRleHRhcmVhfGZvcm0vaS50ZXN0KHQudGFyZ2V0LnRhZ05hbWUpKSljb250aW51ZTtjb25zdCBvPXtyZWxhdGVkVGFyZ2V0OmUuX2VsZW1lbnR9OyJjbGljayI9PT10LnR5cGUmJihvLmNsaWNrRXZlbnQ9dCksZS5fY29tcGxldGVIaWRlKG8pfX1zdGF0aWMgZGF0YUFwaUtleWRvd25IYW5kbGVyKHQpe2NvbnN0IGU9L2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKSxpPSJFc2NhcGUiPT09dC5rZXksbj1bWGUsWWVdLmluY2x1ZGVzKHQua2V5KTtpZighbiYmIWkpcmV0dXJuO2lmKGUmJiFpKXJldHVybjt0LnByZXZlbnREZWZhdWx0KCk7Y29uc3Qgcz10aGlzLm1hdGNoZXMoWmUpP3RoaXM6US5wcmV2KHRoaXMsWmUpWzBdfHxRLm5leHQodGhpcyxaZSlbMF18fFEuZmluZE9uZShaZSx0LmRlbGVnYXRlVGFyZ2V0LnBhcmVudE5vZGUpLG89aGkuZ2V0T3JDcmVhdGVJbnN0YW5jZShzKTtpZihuKXJldHVybiB0LnN0b3BQcm9wYWdhdGlvbigpLG8uc2hvdygpLHZvaWQgby5fc2VsZWN0TWVudUl0ZW0odCk7by5faXNTaG93bigpJiYodC5zdG9wUHJvcGFnYXRpb24oKSxvLmhpZGUoKSxzLmZvY3VzKCkpfX1QLm9uKGRvY3VtZW50LEdlLFplLGhpLmRhdGFBcGlLZXlkb3duSGFuZGxlciksUC5vbihkb2N1bWVudCxHZSxlaSxoaS5kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLFAub24oZG9jdW1lbnQsVWUsaGkuY2xlYXJNZW51cyksUC5vbihkb2N1bWVudCwia2V5dXAuYnMuZHJvcGRvd24uZGF0YS1hcGkiLGhpLmNsZWFyTWVudXMpLFAub24oZG9jdW1lbnQsVWUsWmUsKGZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKSxoaS5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMpLnRvZ2dsZSgpfSkpLGcoaGkpO2NvbnN0IGRpPSIuZml4ZWQtdG9wLCAuZml4ZWQtYm90dG9tLCAuaXMtZml4ZWQsIC5zdGlja3ktdG9wIix1aT0iLnN0aWNreS10b3AiLGZpPSJwYWRkaW5nLXJpZ2h0IixwaT0ibWFyZ2luLXJpZ2h0IjtjbGFzcyBnaXtjb25zdHJ1Y3Rvcigpe3RoaXMuX2VsZW1lbnQ9ZG9jdW1lbnQuYm9keX1nZXRXaWR0aCgpe2NvbnN0IHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoO3JldHVybiBNYXRoLmFicyh3aW5kb3cuaW5uZXJXaWR0aC10KX1oaWRlKCl7Y29uc3QgdD10aGlzLmdldFdpZHRoKCk7dGhpcy5fZGlzYWJsZU92ZXJGbG93KCksdGhpcy5fc2V0RWxlbWVudEF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCxmaSwoZT0+ZSt0KSksdGhpcy5fc2V0RWxlbWVudEF0dHJpYnV0ZXMoZGksZmksKGU9PmUrdCkpLHRoaXMuX3NldEVsZW1lbnRBdHRyaWJ1dGVzKHVpLHBpLChlPT5lLXQpKX1yZXNldCgpe3RoaXMuX3Jlc2V0RWxlbWVudEF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCwib3ZlcmZsb3ciKSx0aGlzLl9yZXNldEVsZW1lbnRBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQsZmkpLHRoaXMuX3Jlc2V0RWxlbWVudEF0dHJpYnV0ZXMoZGksZmkpLHRoaXMuX3Jlc2V0RWxlbWVudEF0dHJpYnV0ZXModWkscGkpfWlzT3ZlcmZsb3dpbmcoKXtyZXR1cm4gdGhpcy5nZXRXaWR0aCgpPjB9X2Rpc2FibGVPdmVyRmxvdygpe3RoaXMuX3NhdmVJbml0aWFsQXR0cmlidXRlKHRoaXMuX2VsZW1lbnQsIm92ZXJmbG93IiksdGhpcy5fZWxlbWVudC5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIn1fc2V0RWxlbWVudEF0dHJpYnV0ZXModCxlLGkpe2NvbnN0IG49dGhpcy5nZXRXaWR0aCgpO3RoaXMuX2FwcGx5TWFuaXB1bGF0aW9uQ2FsbGJhY2sodCwodD0+e2lmKHQhPT10aGlzLl9lbGVtZW50JiZ3aW5kb3cuaW5uZXJXaWR0aD50LmNsaWVudFdpZHRoK24pcmV0dXJuO3RoaXMuX3NhdmVJbml0aWFsQXR0cmlidXRlKHQsZSk7Y29uc3Qgcz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KS5nZXRQcm9wZXJ0eVZhbHVlKGUpO3Quc3R5bGUuc2V0UHJvcGVydHkoZSxgJHtpKE51bWJlci5wYXJzZUZsb2F0KHMpKX1weGApfSkpfV9zYXZlSW5pdGlhbEF0dHJpYnV0ZSh0LGUpe2NvbnN0IGk9dC5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKGUpO2kmJkIuc2V0RGF0YUF0dHJpYnV0ZSh0LGUsaSl9X3Jlc2V0RWxlbWVudEF0dHJpYnV0ZXModCxlKXt0aGlzLl9hcHBseU1hbmlwdWxhdGlvbkNhbGxiYWNrKHQsKHQ9Pntjb25zdCBpPUIuZ2V0RGF0YUF0dHJpYnV0ZSh0LGUpO251bGwhPT1pPyhCLnJlbW92ZURhdGFBdHRyaWJ1dGUodCxlKSx0LnN0eWxlLnNldFByb3BlcnR5KGUsaSkpOnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoZSl9KSl9X2FwcGx5TWFuaXB1bGF0aW9uQ2FsbGJhY2sodCxlKXtpZihvKHQpKWUodCk7ZWxzZSBmb3IoY29uc3QgaSBvZiBRLmZpbmQodCx0aGlzLl9lbGVtZW50KSllKGkpfX1jb25zdCBtaT0ic2hvdyIsX2k9Im1vdXNlZG93bi5icy5iYWNrZHJvcCIsYmk9e2NsYXNzTmFtZToibW9kYWwtYmFja2Ryb3AiLGNsaWNrQ2FsbGJhY2s6bnVsbCxpc0FuaW1hdGVkOiExLGlzVmlzaWJsZTohMCxyb290RWxlbWVudDoiYm9keSJ9LHZpPXtjbGFzc05hbWU6InN0cmluZyIsY2xpY2tDYWxsYmFjazoiKGZ1bmN0aW9ufG51bGwpIixpc0FuaW1hdGVkOiJib29sZWFuIixpc1Zpc2libGU6ImJvb2xlYW4iLHJvb3RFbGVtZW50OiIoZWxlbWVudHxzdHJpbmcpIn07Y2xhc3MgeWkgZXh0ZW5kcyBGe2NvbnN0cnVjdG9yKHQpe3N1cGVyKCksdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyh0KSx0aGlzLl9pc0FwcGVuZGVkPSExLHRoaXMuX2VsZW1lbnQ9bnVsbH1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gYml9c3RhdGljIGdldCBEZWZhdWx0VHlwZSgpe3JldHVybiB2aX1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4iYmFja2Ryb3AifXNob3codCl7aWYoIXRoaXMuX2NvbmZpZy5pc1Zpc2libGUpcmV0dXJuIHZvaWQgbSh0KTt0aGlzLl9hcHBlbmQoKTtjb25zdCBlPXRoaXMuX2dldEVsZW1lbnQoKTt0aGlzLl9jb25maWcuaXNBbmltYXRlZCYmZChlKSxlLmNsYXNzTGlzdC5hZGQobWkpLHRoaXMuX2VtdWxhdGVBbmltYXRpb24oKCgpPT57bSh0KX0pKX1oaWRlKHQpe3RoaXMuX2NvbmZpZy5pc1Zpc2libGU/KHRoaXMuX2dldEVsZW1lbnQoKS5jbGFzc0xpc3QucmVtb3ZlKG1pKSx0aGlzLl9lbXVsYXRlQW5pbWF0aW9uKCgoKT0+e3RoaXMuZGlzcG9zZSgpLG0odCl9KSkpOm0odCl9ZGlzcG9zZSgpe3RoaXMuX2lzQXBwZW5kZWQmJihQLm9mZih0aGlzLl9lbGVtZW50LF9pKSx0aGlzLl9lbGVtZW50LnJlbW92ZSgpLHRoaXMuX2lzQXBwZW5kZWQ9ITEpfV9nZXRFbGVtZW50KCl7aWYoIXRoaXMuX2VsZW1lbnQpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9dGhpcy5fY29uZmlnLmNsYXNzTmFtZSx0aGlzLl9jb25maWcuaXNBbmltYXRlZCYmdC5jbGFzc0xpc3QuYWRkKCJmYWRlIiksdGhpcy5fZWxlbWVudD10fXJldHVybiB0aGlzLl9lbGVtZW50fV9jb25maWdBZnRlck1lcmdlKHQpe3JldHVybiB0LnJvb3RFbGVtZW50PXIodC5yb290RWxlbWVudCksdH1fYXBwZW5kKCl7aWYodGhpcy5faXNBcHBlbmRlZClyZXR1cm47Y29uc3QgdD10aGlzLl9nZXRFbGVtZW50KCk7dGhpcy5fY29uZmlnLnJvb3RFbGVtZW50LmFwcGVuZCh0KSxQLm9uKHQsX2ksKCgpPT57bSh0aGlzLl9jb25maWcuY2xpY2tDYWxsYmFjayl9KSksdGhpcy5faXNBcHBlbmRlZD0hMH1fZW11bGF0ZUFuaW1hdGlvbih0KXtfKHQsdGhpcy5fZ2V0RWxlbWVudCgpLHRoaXMuX2NvbmZpZy5pc0FuaW1hdGVkKX19Y29uc3Qgd2k9Ii5icy5mb2N1c3RyYXAiLEFpPSJiYWNrd2FyZCIsRWk9e2F1dG9mb2N1czohMCx0cmFwRWxlbWVudDpudWxsfSxUaT17YXV0b2ZvY3VzOiJib29sZWFuIix0cmFwRWxlbWVudDoiZWxlbWVudCJ9O2NsYXNzIENpIGV4dGVuZHMgRntjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcodCksdGhpcy5faXNBY3RpdmU9ITEsdGhpcy5fbGFzdFRhYk5hdkRpcmVjdGlvbj1udWxsfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBFaX1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIFRpfXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJmb2N1c3RyYXAifWFjdGl2YXRlKCl7dGhpcy5faXNBY3RpdmV8fCh0aGlzLl9jb25maWcuYXV0b2ZvY3VzJiZ0aGlzLl9jb25maWcudHJhcEVsZW1lbnQuZm9jdXMoKSxQLm9mZihkb2N1bWVudCx3aSksUC5vbihkb2N1bWVudCwiZm9jdXNpbi5icy5mb2N1c3RyYXAiLCh0PT50aGlzLl9oYW5kbGVGb2N1c2luKHQpKSksUC5vbihkb2N1bWVudCwia2V5ZG93bi50YWIuYnMuZm9jdXN0cmFwIiwodD0+dGhpcy5faGFuZGxlS2V5ZG93bih0KSkpLHRoaXMuX2lzQWN0aXZlPSEwKX1kZWFjdGl2YXRlKCl7dGhpcy5faXNBY3RpdmUmJih0aGlzLl9pc0FjdGl2ZT0hMSxQLm9mZihkb2N1bWVudCx3aSkpfV9oYW5kbGVGb2N1c2luKHQpe2NvbnN0e3RyYXBFbGVtZW50OmV9PXRoaXMuX2NvbmZpZztpZih0LnRhcmdldD09PWRvY3VtZW50fHx0LnRhcmdldD09PWV8fGUuY29udGFpbnModC50YXJnZXQpKXJldHVybjtjb25zdCBpPVEuZm9jdXNhYmxlQ2hpbGRyZW4oZSk7MD09PWkubGVuZ3RoP2UuZm9jdXMoKTp0aGlzLl9sYXN0VGFiTmF2RGlyZWN0aW9uPT09QWk/aVtpLmxlbmd0aC0xXS5mb2N1cygpOmlbMF0uZm9jdXMoKX1faGFuZGxlS2V5ZG93bih0KXsiVGFiIj09PXQua2V5JiYodGhpcy5fbGFzdFRhYk5hdkRpcmVjdGlvbj10LnNoaWZ0S2V5P0FpOiJmb3J3YXJkIil9fWNvbnN0IE9pPSJoaWRkZW4uYnMubW9kYWwiLHhpPSJzaG93LmJzLm1vZGFsIixraT0ibW9kYWwtb3BlbiIsTGk9InNob3ciLERpPSJtb2RhbC1zdGF0aWMiLFNpPXtiYWNrZHJvcDohMCxmb2N1czohMCxrZXlib2FyZDohMH0sSWk9e2JhY2tkcm9wOiIoYm9vbGVhbnxzdHJpbmcpIixmb2N1czoiYm9vbGVhbiIsa2V5Ym9hcmQ6ImJvb2xlYW4ifTtjbGFzcyBOaSBleHRlbmRzIHp7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0LGUpLHRoaXMuX2RpYWxvZz1RLmZpbmRPbmUoIi5tb2RhbC1kaWFsb2ciLHRoaXMuX2VsZW1lbnQpLHRoaXMuX2JhY2tkcm9wPXRoaXMuX2luaXRpYWxpemVCYWNrRHJvcCgpLHRoaXMuX2ZvY3VzdHJhcD10aGlzLl9pbml0aWFsaXplRm9jdXNUcmFwKCksdGhpcy5faXNTaG93bj0hMSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fc2Nyb2xsQmFyPW5ldyBnaSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBTaX1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIElpfXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJtb2RhbCJ9dG9nZ2xlKHQpe3JldHVybiB0aGlzLl9pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyh0KX1zaG93KHQpe3RoaXMuX2lzU2hvd258fHRoaXMuX2lzVHJhbnNpdGlvbmluZ3x8UC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQseGkse3JlbGF0ZWRUYXJnZXQ6dH0pLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLl9pc1Nob3duPSEwLHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCx0aGlzLl9zY3JvbGxCYXIuaGlkZSgpLGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChraSksdGhpcy5fYWRqdXN0RGlhbG9nKCksdGhpcy5fYmFja2Ryb3Auc2hvdygoKCk9PnRoaXMuX3Nob3dFbGVtZW50KHQpKSkpfWhpZGUoKXt0aGlzLl9pc1Nob3duJiYhdGhpcy5faXNUcmFuc2l0aW9uaW5nJiYoUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGUuYnMubW9kYWwiKS5kZWZhdWx0UHJldmVudGVkfHwodGhpcy5faXNTaG93bj0hMSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITAsdGhpcy5fZm9jdXN0cmFwLmRlYWN0aXZhdGUoKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoTGkpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCgpPT50aGlzLl9oaWRlTW9kYWwoKSksdGhpcy5fZWxlbWVudCx0aGlzLl9pc0FuaW1hdGVkKCkpKSl9ZGlzcG9zZSgpe2Zvcihjb25zdCB0IG9mW3dpbmRvdyx0aGlzLl9kaWFsb2ddKVAub2ZmKHQsIi5icy5tb2RhbCIpO3RoaXMuX2JhY2tkcm9wLmRpc3Bvc2UoKSx0aGlzLl9mb2N1c3RyYXAuZGVhY3RpdmF0ZSgpLHN1cGVyLmRpc3Bvc2UoKX1oYW5kbGVVcGRhdGUoKXt0aGlzLl9hZGp1c3REaWFsb2coKX1faW5pdGlhbGl6ZUJhY2tEcm9wKCl7cmV0dXJuIG5ldyB5aSh7aXNWaXNpYmxlOkJvb2xlYW4odGhpcy5fY29uZmlnLmJhY2tkcm9wKSxpc0FuaW1hdGVkOnRoaXMuX2lzQW5pbWF0ZWQoKX0pfV9pbml0aWFsaXplRm9jdXNUcmFwKCl7cmV0dXJuIG5ldyBDaSh7dHJhcEVsZW1lbnQ6dGhpcy5fZWxlbWVudH0pfV9zaG93RWxlbWVudCh0KXtkb2N1bWVudC5ib2R5LmNvbnRhaW5zKHRoaXMuX2VsZW1lbnQpfHxkb2N1bWVudC5ib2R5LmFwcGVuZCh0aGlzLl9lbGVtZW50KSx0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9ImJsb2NrIix0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIsITApLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJyb2xlIiwiZGlhbG9nIiksdGhpcy5fZWxlbWVudC5zY3JvbGxUb3A9MDtjb25zdCBlPVEuZmluZE9uZSgiLm1vZGFsLWJvZHkiLHRoaXMuX2RpYWxvZyk7ZSYmKGUuc2Nyb2xsVG9wPTApLGQodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKExpKSx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e3RoaXMuX2NvbmZpZy5mb2N1cyYmdGhpcy5fZm9jdXN0cmFwLmFjdGl2YXRlKCksdGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy5tb2RhbCIse3JlbGF0ZWRUYXJnZXQ6dH0pfSksdGhpcy5fZGlhbG9nLHRoaXMuX2lzQW5pbWF0ZWQoKSl9X2FkZEV2ZW50TGlzdGVuZXJzKCl7UC5vbih0aGlzLl9lbGVtZW50LCJrZXlkb3duLmRpc21pc3MuYnMubW9kYWwiLCh0PT57aWYoIkVzY2FwZSI9PT10LmtleSlyZXR1cm4gdGhpcy5fY29uZmlnLmtleWJvYXJkPyh0LnByZXZlbnREZWZhdWx0KCksdm9pZCB0aGlzLmhpZGUoKSk6dm9pZCB0aGlzLl90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCl9KSksUC5vbih3aW5kb3csInJlc2l6ZS5icy5tb2RhbCIsKCgpPT57dGhpcy5faXNTaG93biYmIXRoaXMuX2lzVHJhbnNpdGlvbmluZyYmdGhpcy5fYWRqdXN0RGlhbG9nKCl9KSksUC5vbih0aGlzLl9lbGVtZW50LCJtb3VzZWRvd24uZGlzbWlzcy5icy5tb2RhbCIsKHQ9PntQLm9uZSh0aGlzLl9lbGVtZW50LCJjbGljay5kaXNtaXNzLmJzLm1vZGFsIiwoZT0+e3RoaXMuX2VsZW1lbnQ9PT10LnRhcmdldCYmdGhpcy5fZWxlbWVudD09PWUudGFyZ2V0JiYoInN0YXRpYyIhPT10aGlzLl9jb25maWcuYmFja2Ryb3A/dGhpcy5fY29uZmlnLmJhY2tkcm9wJiZ0aGlzLmhpZGUoKTp0aGlzLl90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCkpfSkpfSkpfV9oaWRlTW9kYWwoKXt0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsITApLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLW1vZGFsIiksdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoInJvbGUiKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fYmFja2Ryb3AuaGlkZSgoKCk9Pntkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoa2kpLHRoaXMuX3Jlc2V0QWRqdXN0bWVudHMoKSx0aGlzLl9zY3JvbGxCYXIucmVzZXQoKSxQLnRyaWdnZXIodGhpcy5fZWxlbWVudCxPaSl9KSl9X2lzQW5pbWF0ZWQoKXtyZXR1cm4gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoImZhZGUiKX1fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbigpe2lmKFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJoaWRlUHJldmVudGVkLmJzLm1vZGFsIikuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3QgdD10aGlzLl9lbGVtZW50LnNjcm9sbEhlaWdodD5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0LGU9dGhpcy5fZWxlbWVudC5zdHlsZS5vdmVyZmxvd1k7ImhpZGRlbiI9PT1lfHx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhEaSl8fCh0fHwodGhpcy5fZWxlbWVudC5zdHlsZS5vdmVyZmxvd1k9ImhpZGRlbiIpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChEaSksdGhpcy5fcXVldWVDYWxsYmFjaygoKCk9Pnt0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoRGkpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCgpPT57dGhpcy5fZWxlbWVudC5zdHlsZS5vdmVyZmxvd1k9ZX0pLHRoaXMuX2RpYWxvZyl9KSx0aGlzLl9kaWFsb2cpLHRoaXMuX2VsZW1lbnQuZm9jdXMoKSl9X2FkanVzdERpYWxvZygpe2NvbnN0IHQ9dGhpcy5fZWxlbWVudC5zY3JvbGxIZWlnaHQ+ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCxlPXRoaXMuX3Njcm9sbEJhci5nZXRXaWR0aCgpLGk9ZT4wO2lmKGkmJiF0KXtjb25zdCB0PXAoKT8icGFkZGluZ0xlZnQiOiJwYWRkaW5nUmlnaHQiO3RoaXMuX2VsZW1lbnQuc3R5bGVbdF09YCR7ZX1weGB9aWYoIWkmJnQpe2NvbnN0IHQ9cCgpPyJwYWRkaW5nUmlnaHQiOiJwYWRkaW5nTGVmdCI7dGhpcy5fZWxlbWVudC5zdHlsZVt0XT1gJHtlfXB4YH19X3Jlc2V0QWRqdXN0bWVudHMoKXt0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0PSIiLHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0PSIifXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCxlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGk9TmkuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLHQpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09aVt0XSl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7aVt0XShlKX19KSl9fVAub24oZG9jdW1lbnQsImNsaWNrLmJzLm1vZGFsLmRhdGEtYXBpIiwnW2RhdGEtYnMtdG9nZ2xlPSJtb2RhbCJdJywoZnVuY3Rpb24odCl7Y29uc3QgZT1uKHRoaXMpO1siQSIsIkFSRUEiXS5pbmNsdWRlcyh0aGlzLnRhZ05hbWUpJiZ0LnByZXZlbnREZWZhdWx0KCksUC5vbmUoZSx4aSwodD0+e3QuZGVmYXVsdFByZXZlbnRlZHx8UC5vbmUoZSxPaSwoKCk9PnthKHRoaXMpJiZ0aGlzLmZvY3VzKCl9KSl9KSk7Y29uc3QgaT1RLmZpbmRPbmUoIi5tb2RhbC5zaG93Iik7aSYmTmkuZ2V0SW5zdGFuY2UoaSkuaGlkZSgpLE5pLmdldE9yQ3JlYXRlSW5zdGFuY2UoZSkudG9nZ2xlKHRoaXMpfSkpLHEoTmkpLGcoTmkpO2NvbnN0IFBpPSJzaG93IixqaT0ic2hvd2luZyIsTWk9ImhpZGluZyIsSGk9Ii5vZmZjYW52YXMuc2hvdyIsJGk9ImhpZGVQcmV2ZW50ZWQuYnMub2ZmY2FudmFzIixXaT0iaGlkZGVuLmJzLm9mZmNhbnZhcyIsQmk9e2JhY2tkcm9wOiEwLGtleWJvYXJkOiEwLHNjcm9sbDohMX0sRmk9e2JhY2tkcm9wOiIoYm9vbGVhbnxzdHJpbmcpIixrZXlib2FyZDoiYm9vbGVhbiIsc2Nyb2xsOiJib29sZWFuIn07Y2xhc3MgemkgZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCxlKSx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2JhY2tkcm9wPXRoaXMuX2luaXRpYWxpemVCYWNrRHJvcCgpLHRoaXMuX2ZvY3VzdHJhcD10aGlzLl9pbml0aWFsaXplRm9jdXNUcmFwKCksdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKX1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gQml9c3RhdGljIGdldCBEZWZhdWx0VHlwZSgpe3JldHVybiBGaX1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4ib2ZmY2FudmFzIn10b2dnbGUodCl7cmV0dXJuIHRoaXMuX2lzU2hvd24/dGhpcy5oaWRlKCk6dGhpcy5zaG93KHQpfXNob3codCl7dGhpcy5faXNTaG93bnx8UC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsInNob3cuYnMub2ZmY2FudmFzIix7cmVsYXRlZFRhcmdldDp0fSkuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2lzU2hvd249ITAsdGhpcy5fYmFja2Ryb3Auc2hvdygpLHRoaXMuX2NvbmZpZy5zY3JvbGx8fChuZXcgZ2kpLmhpZGUoKSx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIsITApLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJyb2xlIiwiZGlhbG9nIiksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGppKSx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e3RoaXMuX2NvbmZpZy5zY3JvbGwmJiF0aGlzLl9jb25maWcuYmFja2Ryb3B8fHRoaXMuX2ZvY3VzdHJhcC5hY3RpdmF0ZSgpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChQaSksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGppKSxQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvd24uYnMub2ZmY2FudmFzIix7cmVsYXRlZFRhcmdldDp0fSl9KSx0aGlzLl9lbGVtZW50LCEwKSl9aGlkZSgpe3RoaXMuX2lzU2hvd24mJihQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZS5icy5vZmZjYW52YXMiKS5kZWZhdWx0UHJldmVudGVkfHwodGhpcy5fZm9jdXN0cmFwLmRlYWN0aXZhdGUoKSx0aGlzLl9lbGVtZW50LmJsdXIoKSx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChNaSksdGhpcy5fYmFja2Ryb3AuaGlkZSgpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCgpPT57dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFBpLE1pKSx0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIpLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJyb2xlIiksdGhpcy5fY29uZmlnLnNjcm9sbHx8KG5ldyBnaSkucmVzZXQoKSxQLnRyaWdnZXIodGhpcy5fZWxlbWVudCxXaSl9KSx0aGlzLl9lbGVtZW50LCEwKSkpfWRpc3Bvc2UoKXt0aGlzLl9iYWNrZHJvcC5kaXNwb3NlKCksdGhpcy5fZm9jdXN0cmFwLmRlYWN0aXZhdGUoKSxzdXBlci5kaXNwb3NlKCl9X2luaXRpYWxpemVCYWNrRHJvcCgpe2NvbnN0IHQ9Qm9vbGVhbih0aGlzLl9jb25maWcuYmFja2Ryb3ApO3JldHVybiBuZXcgeWkoe2NsYXNzTmFtZToib2ZmY2FudmFzLWJhY2tkcm9wIixpc1Zpc2libGU6dCxpc0FuaW1hdGVkOiEwLHJvb3RFbGVtZW50OnRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSxjbGlja0NhbGxiYWNrOnQ/KCk9Pnsic3RhdGljIiE9PXRoaXMuX2NvbmZpZy5iYWNrZHJvcD90aGlzLmhpZGUoKTpQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwkaSl9Om51bGx9KX1faW5pdGlhbGl6ZUZvY3VzVHJhcCgpe3JldHVybiBuZXcgQ2koe3RyYXBFbGVtZW50OnRoaXMuX2VsZW1lbnR9KX1fYWRkRXZlbnRMaXN0ZW5lcnMoKXtQLm9uKHRoaXMuX2VsZW1lbnQsImtleWRvd24uZGlzbWlzcy5icy5vZmZjYW52YXMiLCh0PT57IkVzY2FwZSI9PT10LmtleSYmKHRoaXMuX2NvbmZpZy5rZXlib2FyZD90aGlzLmhpZGUoKTpQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwkaSkpfSkpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPXppLmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF18fHQuc3RhcnRzV2l0aCgiXyIpfHwiY29uc3RydWN0b3IiPT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7ZVt0XSh0aGlzKX19KSl9fVAub24oZG9jdW1lbnQsImNsaWNrLmJzLm9mZmNhbnZhcy5kYXRhLWFwaSIsJ1tkYXRhLWJzLXRvZ2dsZT0ib2ZmY2FudmFzIl0nLChmdW5jdGlvbih0KXtjb25zdCBlPW4odGhpcyk7aWYoWyJBIiwiQVJFQSJdLmluY2x1ZGVzKHRoaXMudGFnTmFtZSkmJnQucHJldmVudERlZmF1bHQoKSxsKHRoaXMpKXJldHVybjtQLm9uZShlLFdpLCgoKT0+e2EodGhpcykmJnRoaXMuZm9jdXMoKX0pKTtjb25zdCBpPVEuZmluZE9uZShIaSk7aSYmaSE9PWUmJnppLmdldEluc3RhbmNlKGkpLmhpZGUoKSx6aS5nZXRPckNyZWF0ZUluc3RhbmNlKGUpLnRvZ2dsZSh0aGlzKX0pKSxQLm9uKHdpbmRvdywibG9hZC5icy5vZmZjYW52YXMuZGF0YS1hcGkiLCgoKT0+e2Zvcihjb25zdCB0IG9mIFEuZmluZChIaSkpemkuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0KS5zaG93KCl9KSksUC5vbih3aW5kb3csInJlc2l6ZS5icy5vZmZjYW52YXMiLCgoKT0+e2Zvcihjb25zdCB0IG9mIFEuZmluZCgiW2FyaWEtbW9kYWxdW2NsYXNzKj1zaG93XVtjbGFzcyo9b2ZmY2FudmFzLV0iKSkiZml4ZWQiIT09Z2V0Q29tcHV0ZWRTdHlsZSh0KS5wb3NpdGlvbiYmemkuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0KS5oaWRlKCl9KSkscSh6aSksZyh6aSk7Y29uc3QgcWk9bmV3IFNldChbImJhY2tncm91bmQiLCJjaXRlIiwiaHJlZiIsIml0ZW10eXBlIiwibG9uZ2Rlc2MiLCJwb3N0ZXIiLCJzcmMiLCJ4bGluazpocmVmIl0pLFJpPS9eKD86KD86aHR0cHM/fG1haWx0b3xmdHB8dGVsfGZpbGV8c21zKTp8W14jJi86P10qKD86WyMvP118JCkpL2ksVmk9L15kYXRhOig/OmltYWdlXC8oPzpibXB8Z2lmfGpwZWd8anBnfHBuZ3x0aWZmfHdlYnApfHZpZGVvXC8oPzptcGVnfG1wNHxvZ2d8d2VibSl8YXVkaW9cLyg/Om1wM3xvZ2F8b2dnfG9wdXMpKTtiYXNlNjQsW1xkKy9hLXpdKz0qJC9pLEtpPSh0LGUpPT57Y29uc3QgaT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIGUuaW5jbHVkZXMoaSk/IXFpLmhhcyhpKXx8Qm9vbGVhbihSaS50ZXN0KHQubm9kZVZhbHVlKXx8VmkudGVzdCh0Lm5vZGVWYWx1ZSkpOmUuZmlsdGVyKCh0PT50IGluc3RhbmNlb2YgUmVnRXhwKSkuc29tZSgodD0+dC50ZXN0KGkpKSl9LFFpPXsiKiI6WyJjbGFzcyIsImRpciIsImlkIiwibGFuZyIsInJvbGUiLC9eYXJpYS1bXHctXSokL2ldLGE6WyJ0YXJnZXQiLCJocmVmIiwidGl0bGUiLCJyZWwiXSxhcmVhOltdLGI6W10sYnI6W10sY29sOltdLGNvZGU6W10sZGl2OltdLGVtOltdLGhyOltdLGgxOltdLGgyOltdLGgzOltdLGg0OltdLGg1OltdLGg2OltdLGk6W10saW1nOlsic3JjIiwic3Jjc2V0IiwiYWx0IiwidGl0bGUiLCJ3aWR0aCIsImhlaWdodCJdLGxpOltdLG9sOltdLHA6W10scHJlOltdLHM6W10sc21hbGw6W10sc3BhbjpbXSxzdWI6W10sc3VwOltdLHN0cm9uZzpbXSx1OltdLHVsOltdfSxYaT17YWxsb3dMaXN0OlFpLGNvbnRlbnQ6e30sZXh0cmFDbGFzczoiIixodG1sOiExLHNhbml0aXplOiEwLHNhbml0aXplRm46bnVsbCx0ZW1wbGF0ZToiPGRpdj48L2Rpdj4ifSxZaT17YWxsb3dMaXN0OiJvYmplY3QiLGNvbnRlbnQ6Im9iamVjdCIsZXh0cmFDbGFzczoiKHN0cmluZ3xmdW5jdGlvbikiLGh0bWw6ImJvb2xlYW4iLHNhbml0aXplOiJib29sZWFuIixzYW5pdGl6ZUZuOiIobnVsbHxmdW5jdGlvbikiLHRlbXBsYXRlOiJzdHJpbmcifSxVaT17ZW50cnk6IihzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbnxudWxsKSIsc2VsZWN0b3I6IihzdHJpbmd8ZWxlbWVudCkifTtjbGFzcyBHaSBleHRlbmRzIEZ7Y29uc3RydWN0b3IodCl7c3VwZXIoKSx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKHQpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBYaX1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIFlpfXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJUZW1wbGF0ZUZhY3RvcnkifWdldENvbnRlbnQoKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLl9jb25maWcuY29udGVudCkubWFwKCh0PT50aGlzLl9yZXNvbHZlUG9zc2libGVGdW5jdGlvbih0KSkpLmZpbHRlcihCb29sZWFuKX1oYXNDb250ZW50KCl7cmV0dXJuIHRoaXMuZ2V0Q29udGVudCgpLmxlbmd0aD4wfWNoYW5nZUNvbnRlbnQodCl7cmV0dXJuIHRoaXMuX2NoZWNrQ29udGVudCh0KSx0aGlzLl9jb25maWcuY29udGVudD17Li4udGhpcy5fY29uZmlnLmNvbnRlbnQsLi4udH0sdGhpc310b0h0bWwoKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuaW5uZXJIVE1MPXRoaXMuX21heWJlU2FuaXRpemUodGhpcy5fY29uZmlnLnRlbXBsYXRlKTtmb3IoY29uc3RbZSxpXW9mIE9iamVjdC5lbnRyaWVzKHRoaXMuX2NvbmZpZy5jb250ZW50KSl0aGlzLl9zZXRDb250ZW50KHQsaSxlKTtjb25zdCBlPXQuY2hpbGRyZW5bMF0saT10aGlzLl9yZXNvbHZlUG9zc2libGVGdW5jdGlvbih0aGlzLl9jb25maWcuZXh0cmFDbGFzcyk7cmV0dXJuIGkmJmUuY2xhc3NMaXN0LmFkZCguLi5pLnNwbGl0KCIgIikpLGV9X3R5cGVDaGVja0NvbmZpZyh0KXtzdXBlci5fdHlwZUNoZWNrQ29uZmlnKHQpLHRoaXMuX2NoZWNrQ29udGVudCh0LmNvbnRlbnQpfV9jaGVja0NvbnRlbnQodCl7Zm9yKGNvbnN0W2UsaV1vZiBPYmplY3QuZW50cmllcyh0KSlzdXBlci5fdHlwZUNoZWNrQ29uZmlnKHtzZWxlY3RvcjplLGVudHJ5Oml9LFVpKX1fc2V0Q29udGVudCh0LGUsaSl7Y29uc3Qgbj1RLmZpbmRPbmUoaSx0KTtuJiYoKGU9dGhpcy5fcmVzb2x2ZVBvc3NpYmxlRnVuY3Rpb24oZSkpP28oZSk/dGhpcy5fcHV0RWxlbWVudEluVGVtcGxhdGUocihlKSxuKTp0aGlzLl9jb25maWcuaHRtbD9uLmlubmVySFRNTD10aGlzLl9tYXliZVNhbml0aXplKGUpOm4udGV4dENvbnRlbnQ9ZTpuLnJlbW92ZSgpKX1fbWF5YmVTYW5pdGl6ZSh0KXtyZXR1cm4gdGhpcy5fY29uZmlnLnNhbml0aXplP2Z1bmN0aW9uKHQsZSxpKXtpZighdC5sZW5ndGgpcmV0dXJuIHQ7aWYoaSYmImZ1bmN0aW9uIj09dHlwZW9mIGkpcmV0dXJuIGkodCk7Y29uc3Qgbj0obmV3IHdpbmRvdy5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyh0LCJ0ZXh0L2h0bWwiKSxzPVtdLmNvbmNhdCguLi5uLmJvZHkucXVlcnlTZWxlY3RvckFsbCgiKiIpKTtmb3IoY29uc3QgdCBvZiBzKXtjb25zdCBpPXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtpZighT2JqZWN0LmtleXMoZSkuaW5jbHVkZXMoaSkpe3QucmVtb3ZlKCk7Y29udGludWV9Y29uc3Qgbj1bXS5jb25jYXQoLi4udC5hdHRyaWJ1dGVzKSxzPVtdLmNvbmNhdChlWyIqIl18fFtdLGVbaV18fFtdKTtmb3IoY29uc3QgZSBvZiBuKUtpKGUscyl8fHQucmVtb3ZlQXR0cmlidXRlKGUubm9kZU5hbWUpfXJldHVybiBuLmJvZHkuaW5uZXJIVE1MfSh0LHRoaXMuX2NvbmZpZy5hbGxvd0xpc3QsdGhpcy5fY29uZmlnLnNhbml0aXplRm4pOnR9X3Jlc29sdmVQb3NzaWJsZUZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3QodGhpcyk6dH1fcHV0RWxlbWVudEluVGVtcGxhdGUodCxlKXtpZih0aGlzLl9jb25maWcuaHRtbClyZXR1cm4gZS5pbm5lckhUTUw9IiIsdm9pZCBlLmFwcGVuZCh0KTtlLnRleHRDb250ZW50PXQudGV4dENvbnRlbnR9fWNvbnN0IEppPW5ldyBTZXQoWyJzYW5pdGl6ZSIsImFsbG93TGlzdCIsInNhbml0aXplRm4iXSksWmk9ImZhZGUiLHRuPSJzaG93Iixlbj0iLm1vZGFsIixubj0iaGlkZS5icy5tb2RhbCIsc249ImhvdmVyIixvbj0iZm9jdXMiLHJuPXtBVVRPOiJhdXRvIixUT1A6InRvcCIsUklHSFQ6cCgpPyJsZWZ0IjoicmlnaHQiLEJPVFRPTToiYm90dG9tIixMRUZUOnAoKT8icmlnaHQiOiJsZWZ0In0sYW49e2FsbG93TGlzdDpRaSxhbmltYXRpb246ITAsYm91bmRhcnk6ImNsaXBwaW5nUGFyZW50cyIsY29udGFpbmVyOiExLGN1c3RvbUNsYXNzOiIiLGRlbGF5OjAsZmFsbGJhY2tQbGFjZW1lbnRzOlsidG9wIiwicmlnaHQiLCJib3R0b20iLCJsZWZ0Il0saHRtbDohMSxvZmZzZXQ6WzAsMF0scGxhY2VtZW50OiJ0b3AiLHBvcHBlckNvbmZpZzpudWxsLHNhbml0aXplOiEwLHNhbml0aXplRm46bnVsbCxzZWxlY3RvcjohMSx0ZW1wbGF0ZTonPGRpdiBjbGFzcz0idG9vbHRpcCIgcm9sZT0idG9vbHRpcCI+PGRpdiBjbGFzcz0idG9vbHRpcC1hcnJvdyI+PC9kaXY+PGRpdiBjbGFzcz0idG9vbHRpcC1pbm5lciI+PC9kaXY+PC9kaXY+Jyx0aXRsZToiIix0cmlnZ2VyOiJob3ZlciBmb2N1cyJ9LGxuPXthbGxvd0xpc3Q6Im9iamVjdCIsYW5pbWF0aW9uOiJib29sZWFuIixib3VuZGFyeToiKHN0cmluZ3xlbGVtZW50KSIsY29udGFpbmVyOiIoc3RyaW5nfGVsZW1lbnR8Ym9vbGVhbikiLGN1c3RvbUNsYXNzOiIoc3RyaW5nfGZ1bmN0aW9uKSIsZGVsYXk6IihudW1iZXJ8b2JqZWN0KSIsZmFsbGJhY2tQbGFjZW1lbnRzOiJhcnJheSIsaHRtbDoiYm9vbGVhbiIsb2Zmc2V0OiIoYXJyYXl8c3RyaW5nfGZ1bmN0aW9uKSIscGxhY2VtZW50OiIoc3RyaW5nfGZ1bmN0aW9uKSIscG9wcGVyQ29uZmlnOiIobnVsbHxvYmplY3R8ZnVuY3Rpb24pIixzYW5pdGl6ZToiYm9vbGVhbiIsc2FuaXRpemVGbjoiKG51bGx8ZnVuY3Rpb24pIixzZWxlY3RvcjoiKHN0cmluZ3xib29sZWFuKSIsdGVtcGxhdGU6InN0cmluZyIsdGl0bGU6IihzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbikiLHRyaWdnZXI6InN0cmluZyJ9O2NsYXNzIGNuIGV4dGVuZHMgentjb25zdHJ1Y3Rvcih0LGUpe2lmKHZvaWQgMD09PUtlKXRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7c3VwZXIodCxlKSx0aGlzLl9pc0VuYWJsZWQ9ITAsdGhpcy5fdGltZW91dD0wLHRoaXMuX2lzSG92ZXJlZD1udWxsLHRoaXMuX2FjdGl2ZVRyaWdnZXI9e30sdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5fdGVtcGxhdGVGYWN0b3J5PW51bGwsdGhpcy5fbmV3Q29udGVudD1udWxsLHRoaXMudGlwPW51bGwsdGhpcy5fc2V0TGlzdGVuZXJzKCksdGhpcy5fY29uZmlnLnNlbGVjdG9yfHx0aGlzLl9maXhUaXRsZSgpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBhbn1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIGxufXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJ0b29sdGlwIn1lbmFibGUoKXt0aGlzLl9pc0VuYWJsZWQ9ITB9ZGlzYWJsZSgpe3RoaXMuX2lzRW5hYmxlZD0hMX10b2dnbGVFbmFibGVkKCl7dGhpcy5faXNFbmFibGVkPSF0aGlzLl9pc0VuYWJsZWR9dG9nZ2xlKCl7dGhpcy5faXNFbmFibGVkJiYodGhpcy5fYWN0aXZlVHJpZ2dlci5jbGljaz0hdGhpcy5fYWN0aXZlVHJpZ2dlci5jbGljayx0aGlzLl9pc1Nob3duKCk/dGhpcy5fbGVhdmUoKTp0aGlzLl9lbnRlcigpKX1kaXNwb3NlKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLFAub2ZmKHRoaXMuX2VsZW1lbnQuY2xvc2VzdChlbiksbm4sdGhpcy5faGlkZU1vZGFsSGFuZGxlciksdGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtYnMtb3JpZ2luYWwtdGl0bGUiKSYmdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoInRpdGxlIix0aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1icy1vcmlnaW5hbC10aXRsZSIpKSx0aGlzLl9kaXNwb3NlUG9wcGVyKCksc3VwZXIuZGlzcG9zZSgpfXNob3coKXtpZigibm9uZSI9PT10aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXkpdGhyb3cgbmV3IEVycm9yKCJQbGVhc2UgdXNlIHNob3cgb24gdmlzaWJsZSBlbGVtZW50cyIpO2lmKCF0aGlzLl9pc1dpdGhDb250ZW50KCl8fCF0aGlzLl9pc0VuYWJsZWQpcmV0dXJuO2NvbnN0IHQ9UC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5ldmVudE5hbWUoInNob3ciKSksZT0oYyh0aGlzLl9lbGVtZW50KXx8dGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuY29udGFpbnModGhpcy5fZWxlbWVudCk7aWYodC5kZWZhdWx0UHJldmVudGVkfHwhZSlyZXR1cm47dGhpcy5fZGlzcG9zZVBvcHBlcigpO2NvbnN0IGk9dGhpcy5fZ2V0VGlwRWxlbWVudCgpO3RoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IixpLmdldEF0dHJpYnV0ZSgiaWQiKSk7Y29uc3R7Y29udGFpbmVyOm59PXRoaXMuX2NvbmZpZztpZih0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNvbnRhaW5zKHRoaXMudGlwKXx8KG4uYXBwZW5kKGkpLFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuZXZlbnROYW1lKCJpbnNlcnRlZCIpKSksdGhpcy5fcG9wcGVyPXRoaXMuX2NyZWF0ZVBvcHBlcihpKSxpLmNsYXNzTGlzdC5hZGQodG4pLCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KWZvcihjb25zdCB0IG9mW10uY29uY2F0KC4uLmRvY3VtZW50LmJvZHkuY2hpbGRyZW4pKVAub24odCwibW91c2VvdmVyIixoKTt0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e1AudHJpZ2dlcih0aGlzLl9lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuZXZlbnROYW1lKCJzaG93biIpKSwhMT09PXRoaXMuX2lzSG92ZXJlZCYmdGhpcy5fbGVhdmUoKSx0aGlzLl9pc0hvdmVyZWQ9ITF9KSx0aGlzLnRpcCx0aGlzLl9pc0FuaW1hdGVkKCkpfWhpZGUoKXtpZih0aGlzLl9pc1Nob3duKCkmJiFQLnRyaWdnZXIodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLmV2ZW50TmFtZSgiaGlkZSIpKS5kZWZhdWx0UHJldmVudGVkKXtpZih0aGlzLl9nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LnJlbW92ZSh0biksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpZm9yKGNvbnN0IHQgb2ZbXS5jb25jYXQoLi4uZG9jdW1lbnQuYm9keS5jaGlsZHJlbikpUC5vZmYodCwibW91c2VvdmVyIixoKTt0aGlzLl9hY3RpdmVUcmlnZ2VyLmNsaWNrPSExLHRoaXMuX2FjdGl2ZVRyaWdnZXIuZm9jdXM9ITEsdGhpcy5fYWN0aXZlVHJpZ2dlci5ob3Zlcj0hMSx0aGlzLl9pc0hvdmVyZWQ9bnVsbCx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e3RoaXMuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKXx8KHRoaXMuX2lzSG92ZXJlZHx8dGhpcy5fZGlzcG9zZVBvcHBlcigpLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5ldmVudE5hbWUoImhpZGRlbiIpKSl9KSx0aGlzLnRpcCx0aGlzLl9pc0FuaW1hdGVkKCkpfX11cGRhdGUoKXt0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci51cGRhdGUoKX1faXNXaXRoQ29udGVudCgpe3JldHVybiBCb29sZWFuKHRoaXMuX2dldFRpdGxlKCkpfV9nZXRUaXBFbGVtZW50KCl7cmV0dXJuIHRoaXMudGlwfHwodGhpcy50aXA9dGhpcy5fY3JlYXRlVGlwRWxlbWVudCh0aGlzLl9uZXdDb250ZW50fHx0aGlzLl9nZXRDb250ZW50Rm9yVGVtcGxhdGUoKSkpLHRoaXMudGlwfV9jcmVhdGVUaXBFbGVtZW50KHQpe2NvbnN0IGU9dGhpcy5fZ2V0VGVtcGxhdGVGYWN0b3J5KHQpLnRvSHRtbCgpO2lmKCFlKXJldHVybiBudWxsO2UuY2xhc3NMaXN0LnJlbW92ZShaaSx0biksZS5jbGFzc0xpc3QuYWRkKGBicy0ke3RoaXMuY29uc3RydWN0b3IuTkFNRX0tYXV0b2ApO2NvbnN0IGk9KHQ9Pntkb3t0Kz1NYXRoLmZsb29yKDFlNipNYXRoLnJhbmRvbSgpKX13aGlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0KSk7cmV0dXJuIHR9KSh0aGlzLmNvbnN0cnVjdG9yLk5BTUUpLnRvU3RyaW5nKCk7cmV0dXJuIGUuc2V0QXR0cmlidXRlKCJpZCIsaSksdGhpcy5faXNBbmltYXRlZCgpJiZlLmNsYXNzTGlzdC5hZGQoWmkpLGV9c2V0Q29udGVudCh0KXt0aGlzLl9uZXdDb250ZW50PXQsdGhpcy5faXNTaG93bigpJiYodGhpcy5fZGlzcG9zZVBvcHBlcigpLHRoaXMuc2hvdygpKX1fZ2V0VGVtcGxhdGVGYWN0b3J5KHQpe3JldHVybiB0aGlzLl90ZW1wbGF0ZUZhY3Rvcnk/dGhpcy5fdGVtcGxhdGVGYWN0b3J5LmNoYW5nZUNvbnRlbnQodCk6dGhpcy5fdGVtcGxhdGVGYWN0b3J5PW5ldyBHaSh7Li4udGhpcy5fY29uZmlnLGNvbnRlbnQ6dCxleHRyYUNsYXNzOnRoaXMuX3Jlc29sdmVQb3NzaWJsZUZ1bmN0aW9uKHRoaXMuX2NvbmZpZy5jdXN0b21DbGFzcyl9KSx0aGlzLl90ZW1wbGF0ZUZhY3Rvcnl9X2dldENvbnRlbnRGb3JUZW1wbGF0ZSgpe3JldHVybnsiLnRvb2x0aXAtaW5uZXIiOnRoaXMuX2dldFRpdGxlKCl9fV9nZXRUaXRsZSgpe3JldHVybiB0aGlzLl9yZXNvbHZlUG9zc2libGVGdW5jdGlvbih0aGlzLl9jb25maWcudGl0bGUpfHx0aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1icy1vcmlnaW5hbC10aXRsZSIpfV9pbml0aWFsaXplT25EZWxlZ2F0ZWRUYXJnZXQodCl7cmV0dXJuIHRoaXMuY29uc3RydWN0b3IuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0LmRlbGVnYXRlVGFyZ2V0LHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpfV9pc0FuaW1hdGVkKCl7cmV0dXJuIHRoaXMuX2NvbmZpZy5hbmltYXRpb258fHRoaXMudGlwJiZ0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoWmkpfV9pc1Nob3duKCl7cmV0dXJuIHRoaXMudGlwJiZ0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnModG4pfV9jcmVhdGVQb3BwZXIodCl7Y29uc3QgZT0iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLnBsYWNlbWVudD90aGlzLl9jb25maWcucGxhY2VtZW50LmNhbGwodGhpcyx0LHRoaXMuX2VsZW1lbnQpOnRoaXMuX2NvbmZpZy5wbGFjZW1lbnQsaT1ybltlLnRvVXBwZXJDYXNlKCldO3JldHVybiBWZSh0aGlzLl9lbGVtZW50LHQsdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKGkpKX1fZ2V0T2Zmc2V0KCl7Y29uc3R7b2Zmc2V0OnR9PXRoaXMuX2NvbmZpZztyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiLCIpLm1hcCgodD0+TnVtYmVyLnBhcnNlSW50KHQsMTApKSk6ImZ1bmN0aW9uIj09dHlwZW9mIHQ/ZT0+dChlLHRoaXMuX2VsZW1lbnQpOnR9X3Jlc29sdmVQb3NzaWJsZUZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3QuY2FsbCh0aGlzLl9lbGVtZW50KTp0fV9nZXRQb3BwZXJDb25maWcodCl7Y29uc3QgZT17cGxhY2VtZW50OnQsbW9kaWZpZXJzOlt7bmFtZToiZmxpcCIsb3B0aW9uczp7ZmFsbGJhY2tQbGFjZW1lbnRzOnRoaXMuX2NvbmZpZy5mYWxsYmFja1BsYWNlbWVudHN9fSx7bmFtZToib2Zmc2V0IixvcHRpb25zOntvZmZzZXQ6dGhpcy5fZ2V0T2Zmc2V0KCl9fSx7bmFtZToicHJldmVudE92ZXJmbG93IixvcHRpb25zOntib3VuZGFyeTp0aGlzLl9jb25maWcuYm91bmRhcnl9fSx7bmFtZToiYXJyb3ciLG9wdGlvbnM6e2VsZW1lbnQ6YC4ke3RoaXMuY29uc3RydWN0b3IuTkFNRX0tYXJyb3dgfX0se25hbWU6InByZVNldFBsYWNlbWVudCIsZW5hYmxlZDohMCxwaGFzZToiYmVmb3JlTWFpbiIsZm46dD0+e3RoaXMuX2dldFRpcEVsZW1lbnQoKS5zZXRBdHRyaWJ1dGUoImRhdGEtcG9wcGVyLXBsYWNlbWVudCIsdC5zdGF0ZS5wbGFjZW1lbnQpfX1dfTtyZXR1cm57Li4uZSwuLi4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZz90aGlzLl9jb25maWcucG9wcGVyQ29uZmlnKGUpOnRoaXMuX2NvbmZpZy5wb3BwZXJDb25maWd9fV9zZXRMaXN0ZW5lcnMoKXtjb25zdCB0PXRoaXMuX2NvbmZpZy50cmlnZ2VyLnNwbGl0KCIgIik7Zm9yKGNvbnN0IGUgb2YgdClpZigiY2xpY2siPT09ZSlQLm9uKHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5ldmVudE5hbWUoImNsaWNrIiksdGhpcy5fY29uZmlnLnNlbGVjdG9yLCh0PT57dGhpcy5faW5pdGlhbGl6ZU9uRGVsZWdhdGVkVGFyZ2V0KHQpLnRvZ2dsZSgpfSkpO2Vsc2UgaWYoIm1hbnVhbCIhPT1lKXtjb25zdCB0PWU9PT1zbj90aGlzLmNvbnN0cnVjdG9yLmV2ZW50TmFtZSgibW91c2VlbnRlciIpOnRoaXMuY29uc3RydWN0b3IuZXZlbnROYW1lKCJmb2N1c2luIiksaT1lPT09c24/dGhpcy5jb25zdHJ1Y3Rvci5ldmVudE5hbWUoIm1vdXNlbGVhdmUiKTp0aGlzLmNvbnN0cnVjdG9yLmV2ZW50TmFtZSgiZm9jdXNvdXQiKTtQLm9uKHRoaXMuX2VsZW1lbnQsdCx0aGlzLl9jb25maWcuc2VsZWN0b3IsKHQ9Pntjb25zdCBlPXRoaXMuX2luaXRpYWxpemVPbkRlbGVnYXRlZFRhcmdldCh0KTtlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c2luIj09PXQudHlwZT9vbjpzbl09ITAsZS5fZW50ZXIoKX0pKSxQLm9uKHRoaXMuX2VsZW1lbnQsaSx0aGlzLl9jb25maWcuc2VsZWN0b3IsKHQ9Pntjb25zdCBlPXRoaXMuX2luaXRpYWxpemVPbkRlbGVnYXRlZFRhcmdldCh0KTtlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c291dCI9PT10LnR5cGU/b246c25dPWUuX2VsZW1lbnQuY29udGFpbnModC5yZWxhdGVkVGFyZ2V0KSxlLl9sZWF2ZSgpfSkpfXRoaXMuX2hpZGVNb2RhbEhhbmRsZXI9KCk9Pnt0aGlzLl9lbGVtZW50JiZ0aGlzLmhpZGUoKX0sUC5vbih0aGlzLl9lbGVtZW50LmNsb3Nlc3QoZW4pLG5uLHRoaXMuX2hpZGVNb2RhbEhhbmRsZXIpfV9maXhUaXRsZSgpe2NvbnN0IHQ9dGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoInRpdGxlIik7dCYmKHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIil8fHRoaXMuX2VsZW1lbnQudGV4dENvbnRlbnQudHJpbSgpfHx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdCksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImRhdGEtYnMtb3JpZ2luYWwtdGl0bGUiLHQpLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJ0aXRsZSIpKX1fZW50ZXIoKXt0aGlzLl9pc1Nob3duKCl8fHRoaXMuX2lzSG92ZXJlZD90aGlzLl9pc0hvdmVyZWQ9ITA6KHRoaXMuX2lzSG92ZXJlZD0hMCx0aGlzLl9zZXRUaW1lb3V0KCgoKT0+e3RoaXMuX2lzSG92ZXJlZCYmdGhpcy5zaG93KCl9KSx0aGlzLl9jb25maWcuZGVsYXkuc2hvdykpfV9sZWF2ZSgpe3RoaXMuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKXx8KHRoaXMuX2lzSG92ZXJlZD0hMSx0aGlzLl9zZXRUaW1lb3V0KCgoKT0+e3RoaXMuX2lzSG92ZXJlZHx8dGhpcy5oaWRlKCl9KSx0aGlzLl9jb25maWcuZGVsYXkuaGlkZSkpfV9zZXRUaW1lb3V0KHQsZSl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX3RpbWVvdXQ9c2V0VGltZW91dCh0LGUpfV9pc1dpdGhBY3RpdmVUcmlnZ2VyKCl7cmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy5fYWN0aXZlVHJpZ2dlcikuaW5jbHVkZXMoITApfV9nZXRDb25maWcodCl7Y29uc3QgZT1CLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpO2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKGUpKUppLmhhcyh0KSYmZGVsZXRlIGVbdF07cmV0dXJuIHQ9ey4uLmUsLi4uIm9iamVjdCI9PXR5cGVvZiB0JiZ0P3Q6e319LHQ9dGhpcy5fbWVyZ2VDb25maWdPYmoodCksdD10aGlzLl9jb25maWdBZnRlck1lcmdlKHQpLHRoaXMuX3R5cGVDaGVja0NvbmZpZyh0KSx0fV9jb25maWdBZnRlck1lcmdlKHQpe3JldHVybiB0LmNvbnRhaW5lcj0hMT09PXQuY29udGFpbmVyP2RvY3VtZW50LmJvZHk6cih0LmNvbnRhaW5lciksIm51bWJlciI9PXR5cGVvZiB0LmRlbGF5JiYodC5kZWxheT17c2hvdzp0LmRlbGF5LGhpZGU6dC5kZWxheX0pLCJudW1iZXIiPT10eXBlb2YgdC50aXRsZSYmKHQudGl0bGU9dC50aXRsZS50b1N0cmluZygpKSwibnVtYmVyIj09dHlwZW9mIHQuY29udGVudCYmKHQuY29udGVudD10LmNvbnRlbnQudG9TdHJpbmcoKSksdH1fZ2V0RGVsZWdhdGVDb25maWcoKXtjb25zdCB0PXt9O2Zvcihjb25zdCBlIGluIHRoaXMuX2NvbmZpZyl0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRbZV0hPT10aGlzLl9jb25maWdbZV0mJih0W2VdPXRoaXMuX2NvbmZpZ1tlXSk7cmV0dXJuIHQuc2VsZWN0b3I9ITEsdC50cmlnZ2VyPSJtYW51YWwiLHR9X2Rpc3Bvc2VQb3BwZXIoKXt0aGlzLl9wb3BwZXImJih0aGlzLl9wb3BwZXIuZGVzdHJveSgpLHRoaXMuX3BvcHBlcj1udWxsKSx0aGlzLnRpcCYmKHRoaXMudGlwLnJlbW92ZSgpLHRoaXMudGlwPW51bGwpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPWNuLmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9fWcoY24pO2NvbnN0IGhuPXsuLi5jbi5EZWZhdWx0LGNvbnRlbnQ6IiIsb2Zmc2V0OlswLDhdLHBsYWNlbWVudDoicmlnaHQiLHRlbXBsYXRlOic8ZGl2IGNsYXNzPSJwb3BvdmVyIiByb2xlPSJ0b29sdGlwIj48ZGl2IGNsYXNzPSJwb3BvdmVyLWFycm93Ij48L2Rpdj48aDMgY2xhc3M9InBvcG92ZXItaGVhZGVyIj48L2gzPjxkaXYgY2xhc3M9InBvcG92ZXItYm9keSI+PC9kaXY+PC9kaXY+Jyx0cmlnZ2VyOiJjbGljayJ9LGRuPXsuLi5jbi5EZWZhdWx0VHlwZSxjb250ZW50OiIobnVsbHxzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbikifTtjbGFzcyB1biBleHRlbmRzIGNue3N0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBobn1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIGRufXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJwb3BvdmVyIn1faXNXaXRoQ29udGVudCgpe3JldHVybiB0aGlzLl9nZXRUaXRsZSgpfHx0aGlzLl9nZXRDb250ZW50KCl9X2dldENvbnRlbnRGb3JUZW1wbGF0ZSgpe3JldHVybnsiLnBvcG92ZXItaGVhZGVyIjp0aGlzLl9nZXRUaXRsZSgpLCIucG9wb3Zlci1ib2R5Ijp0aGlzLl9nZXRDb250ZW50KCl9fV9nZXRDb250ZW50KCl7cmV0dXJuIHRoaXMuX3Jlc29sdmVQb3NzaWJsZUZ1bmN0aW9uKHRoaXMuX2NvbmZpZy5jb250ZW50KX1zdGF0aWMgalF1ZXJ5SW50ZXJmYWNlKHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT11bi5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMsdCk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdKXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHt0fSJgKTtlW3RdKCl9fSkpfX1nKHVuKTtjb25zdCBmbj0iY2xpY2suYnMuc2Nyb2xsc3B5Iixwbj0iYWN0aXZlIixnbj0iW2hyZWZdIixtbj17b2Zmc2V0Om51bGwscm9vdE1hcmdpbjoiMHB4IDBweCAtMjUlIixzbW9vdGhTY3JvbGw6ITEsdGFyZ2V0Om51bGwsdGhyZXNob2xkOlsuMSwuNSwxXX0sX249e29mZnNldDoiKG51bWJlcnxudWxsKSIscm9vdE1hcmdpbjoic3RyaW5nIixzbW9vdGhTY3JvbGw6ImJvb2xlYW4iLHRhcmdldDoiZWxlbWVudCIsdGhyZXNob2xkOiJhcnJheSJ9O2NsYXNzIGJuIGV4dGVuZHMgentjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQsZSksdGhpcy5fdGFyZ2V0TGlua3M9bmV3IE1hcCx0aGlzLl9vYnNlcnZhYmxlU2VjdGlvbnM9bmV3IE1hcCx0aGlzLl9yb290RWxlbWVudD0idmlzaWJsZSI9PT1nZXRDb21wdXRlZFN0eWxlKHRoaXMuX2VsZW1lbnQpLm92ZXJmbG93WT9udWxsOnRoaXMuX2VsZW1lbnQsdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdGhpcy5fb2JzZXJ2ZXI9bnVsbCx0aGlzLl9wcmV2aW91c1Njcm9sbERhdGE9e3Zpc2libGVFbnRyeVRvcDowLHBhcmVudFNjcm9sbFRvcDowfSx0aGlzLnJlZnJlc2goKX1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gbW59c3RhdGljIGdldCBEZWZhdWx0VHlwZSgpe3JldHVybiBfbn1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4ic2Nyb2xsc3B5In1yZWZyZXNoKCl7dGhpcy5faW5pdGlhbGl6ZVRhcmdldHNBbmRPYnNlcnZhYmxlcygpLHRoaXMuX21heWJlRW5hYmxlU21vb3RoU2Nyb2xsKCksdGhpcy5fb2JzZXJ2ZXI/dGhpcy5fb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOnRoaXMuX29ic2VydmVyPXRoaXMuX2dldE5ld09ic2VydmVyKCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5fb2JzZXJ2YWJsZVNlY3Rpb25zLnZhbHVlcygpKXRoaXMuX29ic2VydmVyLm9ic2VydmUodCl9ZGlzcG9zZSgpe3RoaXMuX29ic2VydmVyLmRpc2Nvbm5lY3QoKSxzdXBlci5kaXNwb3NlKCl9X2NvbmZpZ0FmdGVyTWVyZ2UodCl7cmV0dXJuIHQudGFyZ2V0PXIodC50YXJnZXQpfHxkb2N1bWVudC5ib2R5LHQucm9vdE1hcmdpbj10Lm9mZnNldD9gJHt0Lm9mZnNldH1weCAwcHggLTMwJWA6dC5yb290TWFyZ2luLCJzdHJpbmciPT10eXBlb2YgdC50aHJlc2hvbGQmJih0LnRocmVzaG9sZD10LnRocmVzaG9sZC5zcGxpdCgiLCIpLm1hcCgodD0+TnVtYmVyLnBhcnNlRmxvYXQodCkpKSksdH1fbWF5YmVFbmFibGVTbW9vdGhTY3JvbGwoKXt0aGlzLl9jb25maWcuc21vb3RoU2Nyb2xsJiYoUC5vZmYodGhpcy5fY29uZmlnLnRhcmdldCxmbiksUC5vbih0aGlzLl9jb25maWcudGFyZ2V0LGZuLGduLCh0PT57Y29uc3QgZT10aGlzLl9vYnNlcnZhYmxlU2VjdGlvbnMuZ2V0KHQudGFyZ2V0Lmhhc2gpO2lmKGUpe3QucHJldmVudERlZmF1bHQoKTtjb25zdCBpPXRoaXMuX3Jvb3RFbGVtZW50fHx3aW5kb3csbj1lLm9mZnNldFRvcC10aGlzLl9lbGVtZW50Lm9mZnNldFRvcDtpZihpLnNjcm9sbFRvKXJldHVybiB2b2lkIGkuc2Nyb2xsVG8oe3RvcDpuLGJlaGF2aW9yOiJzbW9vdGgifSk7aS5zY3JvbGxUb3A9bn19KSkpfV9nZXROZXdPYnNlcnZlcigpe2NvbnN0IHQ9e3Jvb3Q6dGhpcy5fcm9vdEVsZW1lbnQsdGhyZXNob2xkOnRoaXMuX2NvbmZpZy50aHJlc2hvbGQscm9vdE1hcmdpbjp0aGlzLl9jb25maWcucm9vdE1hcmdpbn07cmV0dXJuIG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigodD0+dGhpcy5fb2JzZXJ2ZXJDYWxsYmFjayh0KSksdCl9X29ic2VydmVyQ2FsbGJhY2sodCl7Y29uc3QgZT10PT50aGlzLl90YXJnZXRMaW5rcy5nZXQoYCMke3QudGFyZ2V0LmlkfWApLGk9dD0+e3RoaXMuX3ByZXZpb3VzU2Nyb2xsRGF0YS52aXNpYmxlRW50cnlUb3A9dC50YXJnZXQub2Zmc2V0VG9wLHRoaXMuX3Byb2Nlc3MoZSh0KSl9LG49KHRoaXMuX3Jvb3RFbGVtZW50fHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLnNjcm9sbFRvcCxzPW4+PXRoaXMuX3ByZXZpb3VzU2Nyb2xsRGF0YS5wYXJlbnRTY3JvbGxUb3A7dGhpcy5fcHJldmlvdXNTY3JvbGxEYXRhLnBhcmVudFNjcm9sbFRvcD1uO2Zvcihjb25zdCBvIG9mIHQpe2lmKCFvLmlzSW50ZXJzZWN0aW5nKXt0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9jbGVhckFjdGl2ZUNsYXNzKGUobykpO2NvbnRpbnVlfWNvbnN0IHQ9by50YXJnZXQub2Zmc2V0VG9wPj10aGlzLl9wcmV2aW91c1Njcm9sbERhdGEudmlzaWJsZUVudHJ5VG9wO2lmKHMmJnQpe2lmKGkobyksIW4pcmV0dXJufWVsc2Ugc3x8dHx8aShvKX19X2luaXRpYWxpemVUYXJnZXRzQW5kT2JzZXJ2YWJsZXMoKXt0aGlzLl90YXJnZXRMaW5rcz1uZXcgTWFwLHRoaXMuX29ic2VydmFibGVTZWN0aW9ucz1uZXcgTWFwO2NvbnN0IHQ9US5maW5kKGduLHRoaXMuX2NvbmZpZy50YXJnZXQpO2Zvcihjb25zdCBlIG9mIHQpe2lmKCFlLmhhc2h8fGwoZSkpY29udGludWU7Y29uc3QgdD1RLmZpbmRPbmUoZS5oYXNoLHRoaXMuX2VsZW1lbnQpO2EodCkmJih0aGlzLl90YXJnZXRMaW5rcy5zZXQoZS5oYXNoLGUpLHRoaXMuX29ic2VydmFibGVTZWN0aW9ucy5zZXQoZS5oYXNoLHQpKX19X3Byb2Nlc3ModCl7dGhpcy5fYWN0aXZlVGFyZ2V0IT09dCYmKHRoaXMuX2NsZWFyQWN0aXZlQ2xhc3ModGhpcy5fY29uZmlnLnRhcmdldCksdGhpcy5fYWN0aXZlVGFyZ2V0PXQsdC5jbGFzc0xpc3QuYWRkKHBuKSx0aGlzLl9hY3RpdmF0ZVBhcmVudHModCksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImFjdGl2YXRlLmJzLnNjcm9sbHNweSIse3JlbGF0ZWRUYXJnZXQ6dH0pKX1fYWN0aXZhdGVQYXJlbnRzKHQpe2lmKHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkcm9wZG93bi1pdGVtIikpUS5maW5kT25lKCIuZHJvcGRvd24tdG9nZ2xlIix0LmNsb3Nlc3QoIi5kcm9wZG93biIpKS5jbGFzc0xpc3QuYWRkKHBuKTtlbHNlIGZvcihjb25zdCBlIG9mIFEucGFyZW50cyh0LCIubmF2LCAubGlzdC1ncm91cCIpKWZvcihjb25zdCB0IG9mIFEucHJldihlLCIubmF2LWxpbmssIC5uYXYtaXRlbSA+IC5uYXYtbGluaywgLmxpc3QtZ3JvdXAtaXRlbSIpKXQuY2xhc3NMaXN0LmFkZChwbil9X2NsZWFyQWN0aXZlQ2xhc3ModCl7dC5jbGFzc0xpc3QucmVtb3ZlKHBuKTtjb25zdCBlPVEuZmluZCgiW2hyZWZdLmFjdGl2ZSIsdCk7Zm9yKGNvbnN0IHQgb2YgZSl0LmNsYXNzTGlzdC5yZW1vdmUocG4pfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPWJuLmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF18fHQuc3RhcnRzV2l0aCgiXyIpfHwiY29uc3RydWN0b3IiPT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7ZVt0XSgpfX0pKX19UC5vbih3aW5kb3csImxvYWQuYnMuc2Nyb2xsc3B5LmRhdGEtYXBpIiwoKCk9Pntmb3IoY29uc3QgdCBvZiBRLmZpbmQoJ1tkYXRhLWJzLXNweT0ic2Nyb2xsIl0nKSlibi5nZXRPckNyZWF0ZUluc3RhbmNlKHQpfSkpLGcoYm4pO2NvbnN0IHZuPSJBcnJvd0xlZnQiLHluPSJBcnJvd1JpZ2h0Iix3bj0iQXJyb3dVcCIsQW49IkFycm93RG93biIsRW49ImFjdGl2ZSIsVG49ImZhZGUiLENuPSJzaG93IixPbj0nW2RhdGEtYnMtdG9nZ2xlPSJ0YWIiXSwgW2RhdGEtYnMtdG9nZ2xlPSJwaWxsIl0sIFtkYXRhLWJzLXRvZ2dsZT0ibGlzdCJdJyx4bj1gLm5hdi1saW5rOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgLmxpc3QtZ3JvdXAtaXRlbTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksIFtyb2xlPSJ0YWIiXTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksICR7T259YDtjbGFzcyBrbiBleHRlbmRzIHp7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5fcGFyZW50PXRoaXMuX2VsZW1lbnQuY2xvc2VzdCgnLmxpc3QtZ3JvdXAsIC5uYXYsIFtyb2xlPSJ0YWJsaXN0Il0nKSx0aGlzLl9wYXJlbnQmJih0aGlzLl9zZXRJbml0aWFsQXR0cmlidXRlcyh0aGlzLl9wYXJlbnQsdGhpcy5fZ2V0Q2hpbGRyZW4oKSksUC5vbih0aGlzLl9lbGVtZW50LCJrZXlkb3duLmJzLnRhYiIsKHQ9PnRoaXMuX2tleWRvd24odCkpKSl9c3RhdGljIGdldCBOQU1FKCl7cmV0dXJuInRhYiJ9c2hvdygpe2NvbnN0IHQ9dGhpcy5fZWxlbWVudDtpZih0aGlzLl9lbGVtSXNBY3RpdmUodCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5fZ2V0QWN0aXZlRWxlbSgpLGk9ZT9QLnRyaWdnZXIoZSwiaGlkZS5icy50YWIiLHtyZWxhdGVkVGFyZ2V0OnR9KTpudWxsO1AudHJpZ2dlcih0LCJzaG93LmJzLnRhYiIse3JlbGF0ZWRUYXJnZXQ6ZX0pLmRlZmF1bHRQcmV2ZW50ZWR8fGkmJmkuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2RlYWN0aXZhdGUoZSx0KSx0aGlzLl9hY3RpdmF0ZSh0LGUpKX1fYWN0aXZhdGUodCxlKXt0JiYodC5jbGFzc0xpc3QuYWRkKEVuKSx0aGlzLl9hY3RpdmF0ZShuKHQpKSx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+eyJ0YWIiPT09dC5nZXRBdHRyaWJ1dGUoInJvbGUiKT8odC5yZW1vdmVBdHRyaWJ1dGUoInRhYmluZGV4IiksdC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCEwKSx0aGlzLl90b2dnbGVEcm9wRG93bih0LCEwKSxQLnRyaWdnZXIodCwic2hvd24uYnMudGFiIix7cmVsYXRlZFRhcmdldDplfSkpOnQuY2xhc3NMaXN0LmFkZChDbil9KSx0LHQuY2xhc3NMaXN0LmNvbnRhaW5zKFRuKSkpfV9kZWFjdGl2YXRlKHQsZSl7dCYmKHQuY2xhc3NMaXN0LnJlbW92ZShFbiksdC5ibHVyKCksdGhpcy5fZGVhY3RpdmF0ZShuKHQpKSx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+eyJ0YWIiPT09dC5nZXRBdHRyaWJ1dGUoInJvbGUiKT8odC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCExKSx0LnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLCItMSIpLHRoaXMuX3RvZ2dsZURyb3BEb3duKHQsITEpLFAudHJpZ2dlcih0LCJoaWRkZW4uYnMudGFiIix7cmVsYXRlZFRhcmdldDplfSkpOnQuY2xhc3NMaXN0LnJlbW92ZShDbil9KSx0LHQuY2xhc3NMaXN0LmNvbnRhaW5zKFRuKSkpfV9rZXlkb3duKHQpe2lmKCFbdm4seW4sd24sQW5dLmluY2x1ZGVzKHQua2V5KSlyZXR1cm47dC5zdG9wUHJvcGFnYXRpb24oKSx0LnByZXZlbnREZWZhdWx0KCk7Y29uc3QgZT1beW4sQW5dLmluY2x1ZGVzKHQua2V5KSxpPWIodGhpcy5fZ2V0Q2hpbGRyZW4oKS5maWx0ZXIoKHQ9PiFsKHQpKSksdC50YXJnZXQsZSwhMCk7aSYmKGkuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KSxrbi5nZXRPckNyZWF0ZUluc3RhbmNlKGkpLnNob3coKSl9X2dldENoaWxkcmVuKCl7cmV0dXJuIFEuZmluZCh4bix0aGlzLl9wYXJlbnQpfV9nZXRBY3RpdmVFbGVtKCl7cmV0dXJuIHRoaXMuX2dldENoaWxkcmVuKCkuZmluZCgodD0+dGhpcy5fZWxlbUlzQWN0aXZlKHQpKSl8fG51bGx9X3NldEluaXRpYWxBdHRyaWJ1dGVzKHQsZSl7dGhpcy5fc2V0QXR0cmlidXRlSWZOb3RFeGlzdHModCwicm9sZSIsInRhYmxpc3QiKTtmb3IoY29uc3QgdCBvZiBlKXRoaXMuX3NldEluaXRpYWxBdHRyaWJ1dGVzT25DaGlsZCh0KX1fc2V0SW5pdGlhbEF0dHJpYnV0ZXNPbkNoaWxkKHQpe3Q9dGhpcy5fZ2V0SW5uZXJFbGVtZW50KHQpO2NvbnN0IGU9dGhpcy5fZWxlbUlzQWN0aXZlKHQpLGk9dGhpcy5fZ2V0T3V0ZXJFbGVtZW50KHQpO3Quc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIixlKSxpIT09dCYmdGhpcy5fc2V0QXR0cmlidXRlSWZOb3RFeGlzdHMoaSwicm9sZSIsInByZXNlbnRhdGlvbiIpLGV8fHQuc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIi0xIiksdGhpcy5fc2V0QXR0cmlidXRlSWZOb3RFeGlzdHModCwicm9sZSIsInRhYiIpLHRoaXMuX3NldEluaXRpYWxBdHRyaWJ1dGVzT25UYXJnZXRQYW5lbCh0KX1fc2V0SW5pdGlhbEF0dHJpYnV0ZXNPblRhcmdldFBhbmVsKHQpe2NvbnN0IGU9bih0KTtlJiYodGhpcy5fc2V0QXR0cmlidXRlSWZOb3RFeGlzdHMoZSwicm9sZSIsInRhYnBhbmVsIiksdC5pZCYmdGhpcy5fc2V0QXR0cmlidXRlSWZOb3RFeGlzdHMoZSwiYXJpYS1sYWJlbGxlZGJ5IixgIyR7dC5pZH1gKSl9X3RvZ2dsZURyb3BEb3duKHQsZSl7Y29uc3QgaT10aGlzLl9nZXRPdXRlckVsZW1lbnQodCk7aWYoIWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJkcm9wZG93biIpKXJldHVybjtjb25zdCBuPSh0LG4pPT57Y29uc3Qgcz1RLmZpbmRPbmUodCxpKTtzJiZzLmNsYXNzTGlzdC50b2dnbGUobixlKX07bigiLmRyb3Bkb3duLXRvZ2dsZSIsRW4pLG4oIi5kcm9wZG93bi1tZW51IixDbiksaS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLGUpfV9zZXRBdHRyaWJ1dGVJZk5vdEV4aXN0cyh0LGUsaSl7dC5oYXNBdHRyaWJ1dGUoZSl8fHQuc2V0QXR0cmlidXRlKGUsaSl9X2VsZW1Jc0FjdGl2ZSh0KXtyZXR1cm4gdC5jbGFzc0xpc3QuY29udGFpbnMoRW4pfV9nZXRJbm5lckVsZW1lbnQodCl7cmV0dXJuIHQubWF0Y2hlcyh4bik/dDpRLmZpbmRPbmUoeG4sdCl9X2dldE91dGVyRWxlbWVudCh0KXtyZXR1cm4gdC5jbG9zZXN0KCIubmF2LWl0ZW0sIC5saXN0LWdyb3VwLWl0ZW0iKXx8dH1zdGF0aWMgalF1ZXJ5SW50ZXJmYWNlKHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT1rbi5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09ZVt0XXx8dC5zdGFydHNXaXRoKCJfIil8fCJjb25zdHJ1Y3RvciI9PT10KXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHt0fSJgKTtlW3RdKCl9fSkpfX1QLm9uKGRvY3VtZW50LCJjbGljay5icy50YWIiLE9uLChmdW5jdGlvbih0KXtbIkEiLCJBUkVBIl0uaW5jbHVkZXModGhpcy50YWdOYW1lKSYmdC5wcmV2ZW50RGVmYXVsdCgpLGwodGhpcyl8fGtuLmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcykuc2hvdygpfSkpLFAub24od2luZG93LCJsb2FkLmJzLnRhYiIsKCgpPT57Zm9yKGNvbnN0IHQgb2YgUS5maW5kKCcuYWN0aXZlW2RhdGEtYnMtdG9nZ2xlPSJ0YWIiXSwgLmFjdGl2ZVtkYXRhLWJzLXRvZ2dsZT0icGlsbCJdLCAuYWN0aXZlW2RhdGEtYnMtdG9nZ2xlPSJsaXN0Il0nKSlrbi5nZXRPckNyZWF0ZUluc3RhbmNlKHQpfSkpLGcoa24pO2NvbnN0IExuPSJoaWRlIixEbj0ic2hvdyIsU249InNob3dpbmciLEluPXthbmltYXRpb246ImJvb2xlYW4iLGF1dG9oaWRlOiJib29sZWFuIixkZWxheToibnVtYmVyIn0sTm49e2FuaW1hdGlvbjohMCxhdXRvaGlkZTohMCxkZWxheTo1ZTN9O2NsYXNzIFBuIGV4dGVuZHMgentjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQsZSksdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX2hhc01vdXNlSW50ZXJhY3Rpb249ITEsdGhpcy5faGFzS2V5Ym9hcmRJbnRlcmFjdGlvbj0hMSx0aGlzLl9zZXRMaXN0ZW5lcnMoKX1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gTm59c3RhdGljIGdldCBEZWZhdWx0VHlwZSgpe3JldHVybiBJbn1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4idG9hc3QifXNob3coKXtQLnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy50b2FzdCIpLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLl9jbGVhclRpbWVvdXQoKSx0aGlzLl9jb25maWcuYW5pbWF0aW9uJiZ0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoImZhZGUiKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoTG4pLGQodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKERuLFNuKSx0aGlzLl9xdWV1ZUNhbGxiYWNrKCgoKT0+e3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShTbiksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsInNob3duLmJzLnRvYXN0IiksdGhpcy5fbWF5YmVTY2hlZHVsZUhpZGUoKX0pLHRoaXMuX2VsZW1lbnQsdGhpcy5fY29uZmlnLmFuaW1hdGlvbikpfWhpZGUoKXt0aGlzLmlzU2hvd24oKSYmKFAudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJoaWRlLmJzLnRvYXN0IikuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChTbiksdGhpcy5fcXVldWVDYWxsYmFjaygoKCk9Pnt0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoTG4pLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShTbixEbiksUC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGRlbi5icy50b2FzdCIpfSksdGhpcy5fZWxlbWVudCx0aGlzLl9jb25maWcuYW5pbWF0aW9uKSkpfWRpc3Bvc2UoKXt0aGlzLl9jbGVhclRpbWVvdXQoKSx0aGlzLmlzU2hvd24oKSYmdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKERuKSxzdXBlci5kaXNwb3NlKCl9aXNTaG93bigpe3JldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhEbil9X21heWJlU2NoZWR1bGVIaWRlKCl7dGhpcy5fY29uZmlnLmF1dG9oaWRlJiYodGhpcy5faGFzTW91c2VJbnRlcmFjdGlvbnx8dGhpcy5faGFzS2V5Ym9hcmRJbnRlcmFjdGlvbnx8KHRoaXMuX3RpbWVvdXQ9c2V0VGltZW91dCgoKCk9Pnt0aGlzLmhpZGUoKX0pLHRoaXMuX2NvbmZpZy5kZWxheSkpKX1fb25JbnRlcmFjdGlvbih0LGUpe3N3aXRjaCh0LnR5cGUpe2Nhc2UibW91c2VvdmVyIjpjYXNlIm1vdXNlb3V0Ijp0aGlzLl9oYXNNb3VzZUludGVyYWN0aW9uPWU7YnJlYWs7Y2FzZSJmb2N1c2luIjpjYXNlImZvY3Vzb3V0Ijp0aGlzLl9oYXNLZXlib2FyZEludGVyYWN0aW9uPWV9aWYoZSlyZXR1cm4gdm9pZCB0aGlzLl9jbGVhclRpbWVvdXQoKTtjb25zdCBpPXQucmVsYXRlZFRhcmdldDt0aGlzLl9lbGVtZW50PT09aXx8dGhpcy5fZWxlbWVudC5jb250YWlucyhpKXx8dGhpcy5fbWF5YmVTY2hlZHVsZUhpZGUoKX1fc2V0TGlzdGVuZXJzKCl7UC5vbih0aGlzLl9lbGVtZW50LCJtb3VzZW92ZXIuYnMudG9hc3QiLCh0PT50aGlzLl9vbkludGVyYWN0aW9uKHQsITApKSksUC5vbih0aGlzLl9lbGVtZW50LCJtb3VzZW91dC5icy50b2FzdCIsKHQ9PnRoaXMuX29uSW50ZXJhY3Rpb24odCwhMSkpKSxQLm9uKHRoaXMuX2VsZW1lbnQsImZvY3VzaW4uYnMudG9hc3QiLCh0PT50aGlzLl9vbkludGVyYWN0aW9uKHQsITApKSksUC5vbih0aGlzLl9lbGVtZW50LCJmb2N1c291dC5icy50b2FzdCIsKHQ9PnRoaXMuX29uSW50ZXJhY3Rpb24odCwhMSkpKX1fY2xlYXJUaW1lb3V0KCl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX3RpbWVvdXQ9bnVsbH1zdGF0aWMgalF1ZXJ5SW50ZXJmYWNlKHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT1Qbi5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMsdCk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdKXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHt0fSJgKTtlW3RdKHRoaXMpfX0pKX19cmV0dXJuIHEoUG4pLGcoUG4pLHtBbGVydDpSLEJ1dHRvbjpLLENhcm91c2VsOmF0LENvbGxhcHNlOnB0LERyb3Bkb3duOmhpLE1vZGFsOk5pLE9mZmNhbnZhczp6aSxQb3BvdmVyOnVuLFNjcm9sbFNweTpibixUYWI6a24sVG9hc3Q6UG4sVG9vbHRpcDpjbn19KSk7DQovLyMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuYnVuZGxlLm1pbi5qcy5tYXA="}},"time_used":74,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":72,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/select2.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.825Z","timestamp":1785143153825,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/js/select2.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"11b24-67b374e4-7d8abd0be580d2f7;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 18324\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":72484,"size_decoded":18782,"mime_type":"application/x-javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (64124), with CRLF line terminators","md5":"002d7096a5353ec54b00a92c1c02fcca","sha1":"3e781ebd85a107103cf2fbd440c71222bd6a7b9e","sha256":"ef441c155322dfe5468805526352861626dac8cca78682b8697e8154912b9b4d","sha512":"c4e7b91be54bb88b19688d28fb4f2b50a253a3c929b56cf32843c647c21ba422d7afefa255d3573bdfdd6a52048a6b422ce014646c119ff603c5ccb04e249d47","ssdeep":"768:8oMZDhrrJ/Y6EvKqtB8Nnoc9DpPJRGookOlxNjuvSnJZdjVrMbusSzXAFo8Jw:+ACno0okOvht6b5KEc","tlshash":"2163b64c7a93723502af20e6346b180922376b3e500b9668b428cded5dbdd15736bf7e","first_seen":"2023-03-07T14:22:11Z","last_seen":"2026-07-30T06:02:32.541981Z","times_seen":253,"resource_available":true,"data":"LyohIFNlbGVjdDIgNC4xLjAtYmV0YS4xIHwgaHR0cHM6Ly9naXRodWIuY29tL3NlbGVjdDIvc2VsZWN0Mi9ibG9iL21hc3Rlci9MSUNFTlNFLm1kICovDQohZnVuY3Rpb24obil7ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJqcXVlcnkiXSxuKToib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/cmVxdWlyZSgianF1ZXJ5Iik6cmVxdWlyZSgianF1ZXJ5IikoZSkpLG4odCksdH06bihqUXVlcnkpfShmdW5jdGlvbih1KXt2YXIgZT1mdW5jdGlvbigpe2lmKHUmJnUuZm4mJnUuZm4uc2VsZWN0MiYmdS5mbi5zZWxlY3QyLmFtZCl2YXIgZT11LmZuLnNlbGVjdDIuYW1kO3ZhciB0LG4saSxoLHMsbyxmLGcsbSx2LHksXyxyLGEsYjtmdW5jdGlvbiB3KGUsdCl7cmV0dXJuIHIuY2FsbChlLHQpfWZ1bmN0aW9uIGwoZSx0KXt2YXIgbixpLHIscyxvLGEsbCxjLHUsZCxwLGg9dCYmdC5zcGxpdCgiLyIpLGY9eS5tYXAsZz1mJiZmWyIqIl18fHt9O2lmKGUpe2ZvcihvPShlPWUuc3BsaXQoIi8iKSkubGVuZ3RoLTEseS5ub2RlSWRDb21wYXQmJmIudGVzdChlW29dKSYmKGVbb109ZVtvXS5yZXBsYWNlKGIsIiIpKSwiLiI9PT1lWzBdLmNoYXJBdCgwKSYmaCYmKGU9aC5zbGljZSgwLGgubGVuZ3RoLTEpLmNvbmNhdChlKSksdT0wO3U8ZS5sZW5ndGg7dSsrKWlmKCIuIj09PShwPWVbdV0pKWUuc3BsaWNlKHUsMSksdS09MTtlbHNlIGlmKCIuLiI9PT1wKXtpZigwPT09dXx8MT09PXUmJiIuLiI9PT1lWzJdfHwiLi4iPT09ZVt1LTFdKWNvbnRpbnVlOzA8dSYmKGUuc3BsaWNlKHUtMSwyKSx1LT0yKX1lPWUuam9pbigiLyIpfWlmKChofHxnKSYmZil7Zm9yKHU9KG49ZS5zcGxpdCgiLyIpKS5sZW5ndGg7MDx1O3UtPTEpe2lmKGk9bi5zbGljZSgwLHUpLmpvaW4oIi8iKSxoKWZvcihkPWgubGVuZ3RoOzA8ZDtkLT0xKWlmKHI9KHI9ZltoLnNsaWNlKDAsZCkuam9pbigiLyIpXSkmJnJbaV0pe3M9cixhPXU7YnJlYWt9aWYocylicmVhazshbCYmZyYmZ1tpXSYmKGw9Z1tpXSxjPXUpfSFzJiZsJiYocz1sLGE9YykscyYmKG4uc3BsaWNlKDAsYSxzKSxlPW4uam9pbigiLyIpKX1yZXR1cm4gZX1mdW5jdGlvbiB4KHQsbil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGU9YS5jYWxsKGFyZ3VtZW50cywwKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGVbMF0mJjE9PT1lLmxlbmd0aCYmZS5wdXNoKG51bGwpLG8uYXBwbHkoaCxlLmNvbmNhdChbdCxuXSkpfX1mdW5jdGlvbiBBKHQpe3JldHVybiBmdW5jdGlvbihlKXttW3RdPWV9fWZ1bmN0aW9uIEQoZSl7aWYodyh2LGUpKXt2YXIgdD12W2VdO2RlbGV0ZSB2W2VdLF9bZV09ITAscy5hcHBseShoLHQpfWlmKCF3KG0sZSkmJiF3KF8sZSkpdGhyb3cgbmV3IEVycm9yKCJObyAiK2UpO3JldHVybiBtW2VdfWZ1bmN0aW9uIGMoZSl7dmFyIHQsbj1lP2UuaW5kZXhPZigiISIpOi0xO3JldHVybi0xPG4mJih0PWUuc3Vic3RyaW5nKDAsbiksZT1lLnN1YnN0cmluZyhuKzEsZS5sZW5ndGgpKSxbdCxlXX1mdW5jdGlvbiBTKGUpe3JldHVybiBlP2MoZSk6W119cmV0dXJuIGUmJmUucmVxdWlyZWpzfHwoZT9uPWU6ZT17fSxtPXt9LHY9e30seT17fSxfPXt9LHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxhPVtdLnNsaWNlLGI9L1wuanMkLyxmPWZ1bmN0aW9uKGUsdCl7dmFyIG4saT1jKGUpLHI9aVswXSxzPXRbMV07cmV0dXJuIGU9aVsxXSxyJiYobj1EKHI9bChyLHMpKSkscj9lPW4mJm4ubm9ybWFsaXplP24ubm9ybWFsaXplKGUsZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBsKGUsdCl9fShzKSk6bChlLHMpOihyPShpPWMoZT1sKGUscykpKVswXSxlPWlbMV0sciYmKG49RChyKSkpLHtmOnI/cisiISIrZTplLG46ZSxwcjpyLHA6bn19LGc9e3JlcXVpcmU6ZnVuY3Rpb24oZSl7cmV0dXJuIHgoZSl9LGV4cG9ydHM6ZnVuY3Rpb24oZSl7dmFyIHQ9bVtlXTtyZXR1cm4gdm9pZCAwIT09dD90Om1bZV09e319LG1vZHVsZTpmdW5jdGlvbihlKXtyZXR1cm57aWQ6ZSx1cmk6IiIsZXhwb3J0czptW2VdLGNvbmZpZzpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4geSYmeS5jb25maWcmJnkuY29uZmlnW2VdfHx7fX19KGUpfX19LHM9ZnVuY3Rpb24oZSx0LG4saSl7dmFyIHIscyxvLGEsbCxjLHUsZD1bXSxwPXR5cGVvZiBuO2lmKGM9UyhpPWl8fGUpLCJ1bmRlZmluZWQiPT1wfHwiZnVuY3Rpb24iPT1wKXtmb3IodD0hdC5sZW5ndGgmJm4ubGVuZ3RoP1sicmVxdWlyZSIsImV4cG9ydHMiLCJtb2R1bGUiXTp0LGw9MDtsPHQubGVuZ3RoO2wrPTEpaWYoInJlcXVpcmUiPT09KHM9KGE9Zih0W2xdLGMpKS5mKSlkW2xdPWcucmVxdWlyZShlKTtlbHNlIGlmKCJleHBvcnRzIj09PXMpZFtsXT1nLmV4cG9ydHMoZSksdT0hMDtlbHNlIGlmKCJtb2R1bGUiPT09cylyPWRbbF09Zy5tb2R1bGUoZSk7ZWxzZSBpZih3KG0scyl8fHcodixzKXx8dyhfLHMpKWRbbF09RChzKTtlbHNle2lmKCFhLnApdGhyb3cgbmV3IEVycm9yKGUrIiBtaXNzaW5nICIrcyk7YS5wLmxvYWQoYS5uLHgoaSwhMCksQShzKSx7fSksZFtsXT1tW3NdfW89bj9uLmFwcGx5KG1bZV0sZCk6dm9pZCAwLGUmJihyJiZyLmV4cG9ydHMhPT1oJiZyLmV4cG9ydHMhPT1tW2VdP21bZV09ci5leHBvcnRzOm89PT1oJiZ1fHwobVtlXT1vKSl9ZWxzZSBlJiYobVtlXT1uKX0sdD1uPW89ZnVuY3Rpb24oZSx0LG4saSxyKXtpZigic3RyaW5nIj09dHlwZW9mIGUpcmV0dXJuIGdbZV0/Z1tlXSh0KTpEKGYoZSxTKHQpKS5mKTtpZighZS5zcGxpY2Upe2lmKCh5PWUpLmRlcHMmJm8oeS5kZXBzLHkuY2FsbGJhY2spLCF0KXJldHVybjt0LnNwbGljZT8oZT10LHQ9bixuPW51bGwpOmU9aH1yZXR1cm4gdD10fHxmdW5jdGlvbigpe30sImZ1bmN0aW9uIj09dHlwZW9mIG4mJihuPWksaT1yKSxpP3MoaCxlLHQsbik6c2V0VGltZW91dChmdW5jdGlvbigpe3MoaCxlLHQsbil9LDQpLG99LG8uY29uZmlnPWZ1bmN0aW9uKGUpe3JldHVybiBvKGUpfSx0Ll9kZWZpbmVkPW0sKGk9ZnVuY3Rpb24oZSx0LG4pe2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgRXJyb3IoIlNlZSBhbG1vbmQgUkVBRE1FOiBpbmNvcnJlY3QgbW9kdWxlIGJ1aWxkLCBubyBtb2R1bGUgbmFtZSIpO3Quc3BsaWNlfHwobj10LHQ9W10pLHcobSxlKXx8dyh2LGUpfHwodltlXT1bZSx0LG5dKX0pLmFtZD17alF1ZXJ5OiEwfSxlLnJlcXVpcmVqcz10LGUucmVxdWlyZT1uLGUuZGVmaW5lPWkpLGUuZGVmaW5lKCJhbG1vbmQiLGZ1bmN0aW9uKCl7fSksZS5kZWZpbmUoImpxdWVyeSIsW10sZnVuY3Rpb24oKXt2YXIgZT11fHwkO3JldHVybiBudWxsPT1lJiZjb25zb2xlJiZjb25zb2xlLmVycm9yJiZjb25zb2xlLmVycm9yKCJTZWxlY3QyOiBBbiBpbnN0YW5jZSBvZiBqUXVlcnkgb3IgYSBqUXVlcnktY29tcGF0aWJsZSBsaWJyYXJ5IHdhcyBub3QgZm91bmQuIE1ha2Ugc3VyZSB0aGF0IHlvdSBhcmUgaW5jbHVkaW5nIGpRdWVyeSBiZWZvcmUgU2VsZWN0MiBvbiB5b3VyIHdlYiBwYWdlLiIpLGV9KSxlLmRlZmluZSgic2VsZWN0Mi91dGlscyIsWyJqcXVlcnkiXSxmdW5jdGlvbihzKXt2YXIgcj17fTtmdW5jdGlvbiB1KGUpe3ZhciB0PWUucHJvdG90eXBlLG49W107Zm9yKHZhciBpIGluIHQpeyJmdW5jdGlvbiI9PXR5cGVvZiB0W2ldJiYiY29uc3RydWN0b3IiIT09aSYmbi5wdXNoKGkpfXJldHVybiBufXIuRXh0ZW5kPWZ1bmN0aW9uKGUsdCl7dmFyIG49e30uaGFzT3duUHJvcGVydHk7ZnVuY3Rpb24gaSgpe3RoaXMuY29uc3RydWN0b3I9ZX1mb3IodmFyIHIgaW4gdCluLmNhbGwodCxyKSYmKGVbcl09dFtyXSk7cmV0dXJuIGkucHJvdG90eXBlPXQucHJvdG90eXBlLGUucHJvdG90eXBlPW5ldyBpLGUuX19zdXBlcl9fPXQucHJvdG90eXBlLGV9LHIuRGVjb3JhdGU9ZnVuY3Rpb24oaSxyKXt2YXIgZT11KHIpLHQ9dShpKTtmdW5jdGlvbiBzKCl7dmFyIGU9QXJyYXkucHJvdG90eXBlLnVuc2hpZnQsdD1yLnByb3RvdHlwZS5jb25zdHJ1Y3Rvci5sZW5ndGgsbj1pLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjswPHQmJihlLmNhbGwoYXJndW1lbnRzLGkucHJvdG90eXBlLmNvbnN0cnVjdG9yKSxuPXIucHJvdG90eXBlLmNvbnN0cnVjdG9yKSxuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1yLmRpc3BsYXlOYW1lPWkuZGlzcGxheU5hbWUscy5wcm90b3R5cGU9bmV3IGZ1bmN0aW9uKCl7dGhpcy5jb25zdHJ1Y3Rvcj1zfTtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIG89dFtuXTtzLnByb3RvdHlwZVtvXT1pLnByb3RvdHlwZVtvXX1mdW5jdGlvbiBhKGUpe3ZhciB0PWZ1bmN0aW9uKCl7fTtlIGluIHMucHJvdG90eXBlJiYodD1zLnByb3RvdHlwZVtlXSk7dmFyIG49ci5wcm90b3R5cGVbZV07cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS51bnNoaWZ0LmNhbGwoYXJndW1lbnRzLHQpLG4uYXBwbHkodGhpcyxhcmd1bWVudHMpfX1mb3IodmFyIGw9MDtsPGUubGVuZ3RoO2wrKyl7dmFyIGM9ZVtsXTtzLnByb3RvdHlwZVtjXT1hKGMpfXJldHVybiBzfTtmdW5jdGlvbiBlKCl7dGhpcy5saXN0ZW5lcnM9e319ZS5wcm90b3R5cGUub249ZnVuY3Rpb24oZSx0KXt0aGlzLmxpc3RlbmVycz10aGlzLmxpc3RlbmVyc3x8e30sZSBpbiB0aGlzLmxpc3RlbmVycz90aGlzLmxpc3RlbmVyc1tlXS5wdXNoKHQpOnRoaXMubGlzdGVuZXJzW2VdPVt0XX0sZS5wcm90b3R5cGUudHJpZ2dlcj1mdW5jdGlvbihlKXt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2Usbj10LmNhbGwoYXJndW1lbnRzLDEpO3RoaXMubGlzdGVuZXJzPXRoaXMubGlzdGVuZXJzfHx7fSxudWxsPT1uJiYobj1bXSksMD09PW4ubGVuZ3RoJiZuLnB1c2goe30pLChuWzBdLl90eXBlPWUpaW4gdGhpcy5saXN0ZW5lcnMmJnRoaXMuaW52b2tlKHRoaXMubGlzdGVuZXJzW2VdLHQuY2FsbChhcmd1bWVudHMsMSkpLCIqImluIHRoaXMubGlzdGVuZXJzJiZ0aGlzLmludm9rZSh0aGlzLmxpc3RlbmVyc1siKiJdLGFyZ3VtZW50cyl9LGUucHJvdG90eXBlLmludm9rZT1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wLGk9ZS5sZW5ndGg7bjxpO24rKyllW25dLmFwcGx5KHRoaXMsdCl9LHIuT2JzZXJ2YWJsZT1lLHIuZ2VuZXJhdGVDaGFycz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9IiIsbj0wO248ZTtuKyspe3QrPU1hdGguZmxvb3IoMzYqTWF0aC5yYW5kb20oKSkudG9TdHJpbmcoMzYpfXJldHVybiB0fSxyLmJpbmQ9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZnVuY3Rpb24oKXtlLmFwcGx5KHQsYXJndW1lbnRzKX19LHIuX2NvbnZlcnREYXRhPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdCBpbiBlKXt2YXIgbj10LnNwbGl0KCItIiksaT1lO2lmKDEhPT1uLmxlbmd0aCl7Zm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBzPW5bcl07KHM9cy5zdWJzdHJpbmcoMCwxKS50b0xvd2VyQ2FzZSgpK3Muc3Vic3RyaW5nKDEpKWluIGl8fChpW3NdPXt9KSxyPT1uLmxlbmd0aC0xJiYoaVtzXT1lW3RdKSxpPWlbc119ZGVsZXRlIGVbdF19fXJldHVybiBlfSxyLmhhc1Njcm9sbD1mdW5jdGlvbihlLHQpe3ZhciBuPXModCksaT10LnN0eWxlLm92ZXJmbG93WCxyPXQuc3R5bGUub3ZlcmZsb3dZO3JldHVybihpIT09cnx8ImhpZGRlbiIhPT1yJiYidmlzaWJsZSIhPT1yKSYmKCJzY3JvbGwiPT09aXx8InNjcm9sbCI9PT1yfHwobi5pbm5lckhlaWdodCgpPHQuc2Nyb2xsSGVpZ2h0fHxuLmlubmVyV2lkdGgoKTx0LnNjcm9sbFdpZHRoKSl9LHIuZXNjYXBlTWFya3VwPWZ1bmN0aW9uKGUpe3ZhciB0PXsiXFwiOiImIzkyOyIsIiYiOiImYW1wOyIsIjwiOiImbHQ7IiwiPiI6IiZndDsiLCciJzoiJnF1b3Q7IiwiJyI6IiYjMzk7IiwiLyI6IiYjNDc7In07cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlP2U6U3RyaW5nKGUpLnJlcGxhY2UoL1smPD4iJ1wvXFxdL2csZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19KX0sci5fX2NhY2hlPXt9O3ZhciBuPTA7cmV0dXJuIHIuR2V0VW5pcXVlRWxlbWVudElkPWZ1bmN0aW9uKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKCJkYXRhLXNlbGVjdDItaWQiKTtyZXR1cm4gbnVsbCE9dHx8KHQ9ZS5pZD8ic2VsZWN0Mi1kYXRhLSIrZS5pZDoic2VsZWN0Mi1kYXRhLSIrKCsrbikudG9TdHJpbmcoKSsiLSIrci5nZW5lcmF0ZUNoYXJzKDQpLGUuc2V0QXR0cmlidXRlKCJkYXRhLXNlbGVjdDItaWQiLHQpKSx0fSxyLlN0b3JlRGF0YT1mdW5jdGlvbihlLHQsbil7dmFyIGk9ci5HZXRVbmlxdWVFbGVtZW50SWQoZSk7ci5fX2NhY2hlW2ldfHwoci5fX2NhY2hlW2ldPXt9KSxyLl9fY2FjaGVbaV1bdF09bn0sci5HZXREYXRhPWZ1bmN0aW9uKGUsdCl7dmFyIG49ci5HZXRVbmlxdWVFbGVtZW50SWQoZSk7cmV0dXJuIHQ/ci5fX2NhY2hlW25dJiZudWxsIT1yLl9fY2FjaGVbbl1bdF0/ci5fX2NhY2hlW25dW3RdOnMoZSkuZGF0YSh0KTpyLl9fY2FjaGVbbl19LHIuUmVtb3ZlRGF0YT1mdW5jdGlvbihlKXt2YXIgdD1yLkdldFVuaXF1ZUVsZW1lbnRJZChlKTtudWxsIT1yLl9fY2FjaGVbdF0mJmRlbGV0ZSByLl9fY2FjaGVbdF0sZS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtc2VsZWN0Mi1pZCIpfSxyLmNvcHlOb25JbnRlcm5hbENzc0NsYXNzZXM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmdldEF0dHJpYnV0ZSgiY2xhc3MiKS50cmltKCkuc3BsaXQoL1xzKy8pO249bi5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIDA9PT1lLmluZGV4T2YoInNlbGVjdDItIil9KTt2YXIgaT10LmdldEF0dHJpYnV0ZSgiY2xhc3MiKS50cmltKCkuc3BsaXQoL1xzKy8pO2k9aS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIDAhPT1lLmluZGV4T2YoInNlbGVjdDItIil9KTt2YXIgcj1uLmNvbmNhdChpKTtlLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHIuam9pbigiICIpKX0scn0pLGUuZGVmaW5lKCJzZWxlY3QyL3Jlc3VsdHMiLFsianF1ZXJ5IiwiLi91dGlscyJdLGZ1bmN0aW9uKGgsZil7ZnVuY3Rpb24gaShlLHQsbil7dGhpcy4kZWxlbWVudD1lLHRoaXMuZGF0YT1uLHRoaXMub3B0aW9ucz10LGkuX19zdXBlcl9fLmNvbnN0cnVjdG9yLmNhbGwodGhpcyl9cmV0dXJuIGYuRXh0ZW5kKGksZi5PYnNlcnZhYmxlKSxpLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oKXt2YXIgZT1oKCc8dWwgY2xhc3M9InNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyIgcm9sZT0ibGlzdGJveCI+PC91bD4nKTtyZXR1cm4gdGhpcy5vcHRpb25zLmdldCgibXVsdGlwbGUiKSYmZS5hdHRyKCJhcmlhLW11bHRpc2VsZWN0YWJsZSIsInRydWUiKSx0aGlzLiRyZXN1bHRzPWV9LGkucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy4kcmVzdWx0cy5lbXB0eSgpfSxpLnByb3RvdHlwZS5kaXNwbGF5TWVzc2FnZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzLm9wdGlvbnMuZ2V0KCJlc2NhcGVNYXJrdXAiKTt0aGlzLmNsZWFyKCksdGhpcy5oaWRlTG9hZGluZygpO3ZhciBuPWgoJzxsaSByb2xlPSJhbGVydCIgYXJpYS1saXZlPSJhc3NlcnRpdmUiIGNsYXNzPSJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbiI+PC9saT4nKSxpPXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldChlLm1lc3NhZ2UpO24uYXBwZW5kKHQoaShlLmFyZ3MpKSksblswXS5jbGFzc05hbWUrPSIgc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIix0aGlzLiRyZXN1bHRzLmFwcGVuZChuKX0saS5wcm90b3R5cGUuaGlkZU1lc3NhZ2VzPWZ1bmN0aW9uKCl7dGhpcy4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIikucmVtb3ZlKCl9LGkucHJvdG90eXBlLmFwcGVuZD1mdW5jdGlvbihlKXt0aGlzLmhpZGVMb2FkaW5nKCk7dmFyIHQ9W107aWYobnVsbCE9ZS5yZXN1bHRzJiYwIT09ZS5yZXN1bHRzLmxlbmd0aCl7ZS5yZXN1bHRzPXRoaXMuc29ydChlLnJlc3VsdHMpO2Zvcih2YXIgbj0wO248ZS5yZXN1bHRzLmxlbmd0aDtuKyspe3ZhciBpPWUucmVzdWx0c1tuXSxyPXRoaXMub3B0aW9uKGkpO3QucHVzaChyKX10aGlzLiRyZXN1bHRzLmFwcGVuZCh0KX1lbHNlIDA9PT10aGlzLiRyZXN1bHRzLmNoaWxkcmVuKCkubGVuZ3RoJiZ0aGlzLnRyaWdnZXIoInJlc3VsdHM6bWVzc2FnZSIse21lc3NhZ2U6Im5vUmVzdWx0cyJ9KX0saS5wcm90b3R5cGUucG9zaXRpb249ZnVuY3Rpb24oZSx0KXt0LmZpbmQoIi5zZWxlY3QyLXJlc3VsdHMiKS5hcHBlbmQoZSl9LGkucHJvdG90eXBlLnNvcnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMub3B0aW9ucy5nZXQoInNvcnRlciIpKGUpfSxpLnByb3RvdHlwZS5oaWdobGlnaHRGaXJzdEl0ZW09ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRyZXN1bHRzLmZpbmQoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLHQ9ZS5maWx0ZXIoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKTswPHQubGVuZ3RoP3QuZmlyc3QoKS50cmlnZ2VyKCJtb3VzZWVudGVyIik6ZS5maXJzdCgpLnRyaWdnZXIoIm1vdXNlZW50ZXIiKSx0aGlzLmVuc3VyZUhpZ2hsaWdodFZpc2libGUoKX0saS5wcm90b3R5cGUuc2V0Q2xhc3Nlcz1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5kYXRhLmN1cnJlbnQoZnVuY3Rpb24oZSl7dmFyIGk9ZS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQudG9TdHJpbmcoKX0pO3QuJHJlc3VsdHMuZmluZCgiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIikuZWFjaChmdW5jdGlvbigpe3ZhciBlPWgodGhpcyksdD1mLkdldERhdGEodGhpcywiZGF0YSIpLG49IiIrdC5pZDtudWxsIT10LmVsZW1lbnQmJnQuZWxlbWVudC5zZWxlY3RlZHx8bnVsbD09dC5lbGVtZW50JiYtMTxpLmluZGV4T2Yobik/KHRoaXMuY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVkIiksZS5hdHRyKCJhcmlhLXNlbGVjdGVkIiwidHJ1ZSIpKToodGhpcy5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKSxlLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJmYWxzZSIpKX0pfSl9LGkucHJvdG90eXBlLnNob3dMb2FkaW5nPWZ1bmN0aW9uKGUpe3RoaXMuaGlkZUxvYWRpbmcoKTt2YXIgdD17ZGlzYWJsZWQ6ITAsbG9hZGluZzohMCx0ZXh0OnRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgic2VhcmNoaW5nIikoZSl9LG49dGhpcy5vcHRpb24odCk7bi5jbGFzc05hbWUrPSIgbG9hZGluZy1yZXN1bHRzIix0aGlzLiRyZXN1bHRzLnByZXBlbmQobil9LGkucHJvdG90eXBlLmhpZGVMb2FkaW5nPWZ1bmN0aW9uKCl7dGhpcy4kcmVzdWx0cy5maW5kKCIubG9hZGluZy1yZXN1bHRzIikucmVtb3ZlKCl9LGkucHJvdG90eXBlLm9wdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpO3QuY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24iKSx0LmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIik7dmFyIG49e3JvbGU6Im9wdGlvbiJ9LGk9d2luZG93LkVsZW1lbnQucHJvdG90eXBlLm1hdGNoZXN8fHdpbmRvdy5FbGVtZW50LnByb3RvdHlwZS5tc01hdGNoZXNTZWxlY3Rvcnx8d2luZG93LkVsZW1lbnQucHJvdG90eXBlLndlYmtpdE1hdGNoZXNTZWxlY3Rvcjtmb3IodmFyIHIgaW4obnVsbCE9ZS5lbGVtZW50JiZpLmNhbGwoZS5lbGVtZW50LCI6ZGlzYWJsZWQiKXx8bnVsbD09ZS5lbGVtZW50JiZlLmRpc2FibGVkKSYmKG5bImFyaWEtZGlzYWJsZWQiXT0idHJ1ZSIsdC5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLHQuY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWRpc2FibGVkIikpLG51bGw9PWUuaWQmJnQuY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKSxudWxsIT1lLl9yZXN1bHRJZCYmKHQuaWQ9ZS5fcmVzdWx0SWQpLGUudGl0bGUmJih0LnRpdGxlPWUudGl0bGUpLGUuY2hpbGRyZW4mJihuLnJvbGU9Imdyb3VwIixuWyJhcmlhLWxhYmVsIl09ZS50ZXh0LHQuY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiKSx0LmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cCIpKSxuKXt2YXIgcz1uW3JdO3Quc2V0QXR0cmlidXRlKHIscyl9aWYoZS5jaGlsZHJlbil7dmFyIG89aCh0KSxhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0cm9uZyIpO2EuY2xhc3NOYW1lPSJzZWxlY3QyLXJlc3VsdHNfX2dyb3VwIix0aGlzLnRlbXBsYXRlKGUsYSk7Zm9yKHZhciBsPVtdLGM9MDtjPGUuY2hpbGRyZW4ubGVuZ3RoO2MrKyl7dmFyIHU9ZS5jaGlsZHJlbltjXSxkPXRoaXMub3B0aW9uKHUpO2wucHVzaChkKX12YXIgcD1oKCI8dWw+PC91bD4iLHtjbGFzczoic2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHNlbGVjdDItcmVzdWx0c19fb3B0aW9ucy0tbmVzdGVkIn0pO3AuYXBwZW5kKGwpLG8uYXBwZW5kKGEpLG8uYXBwZW5kKHApfWVsc2UgdGhpcy50ZW1wbGF0ZShlLHQpO3JldHVybiBmLlN0b3JlRGF0YSh0LCJkYXRhIixlKSx0fSxpLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKHQsZSl7dmFyIGw9dGhpcyxuPXQuaWQrIi1yZXN1bHRzIjt0aGlzLiRyZXN1bHRzLmF0dHIoImlkIixuKSx0Lm9uKCJyZXN1bHRzOmFsbCIsZnVuY3Rpb24oZSl7bC5jbGVhcigpLGwuYXBwZW5kKGUuZGF0YSksdC5pc09wZW4oKSYmKGwuc2V0Q2xhc3NlcygpLGwuaGlnaGxpZ2h0Rmlyc3RJdGVtKCkpfSksdC5vbigicmVzdWx0czphcHBlbmQiLGZ1bmN0aW9uKGUpe2wuYXBwZW5kKGUuZGF0YSksdC5pc09wZW4oKSYmbC5zZXRDbGFzc2VzKCl9KSx0Lm9uKCJxdWVyeSIsZnVuY3Rpb24oZSl7bC5oaWRlTWVzc2FnZXMoKSxsLnNob3dMb2FkaW5nKGUpfSksdC5vbigic2VsZWN0IixmdW5jdGlvbigpe3QuaXNPcGVuKCkmJihsLnNldENsYXNzZXMoKSxsLm9wdGlvbnMuZ2V0KCJzY3JvbGxBZnRlclNlbGVjdCIpJiZsLmhpZ2hsaWdodEZpcnN0SXRlbSgpKX0pLHQub24oInVuc2VsZWN0IixmdW5jdGlvbigpe3QuaXNPcGVuKCkmJihsLnNldENsYXNzZXMoKSxsLm9wdGlvbnMuZ2V0KCJzY3JvbGxBZnRlclNlbGVjdCIpJiZsLmhpZ2hsaWdodEZpcnN0SXRlbSgpKX0pLHQub24oIm9wZW4iLGZ1bmN0aW9uKCl7bC4kcmVzdWx0cy5hdHRyKCJhcmlhLWV4cGFuZGVkIiwidHJ1ZSIpLGwuJHJlc3VsdHMuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpLGwuc2V0Q2xhc3NlcygpLGwuZW5zdXJlSGlnaGxpZ2h0VmlzaWJsZSgpfSksdC5vbigiY2xvc2UiLGZ1bmN0aW9uKCl7bC4kcmVzdWx0cy5hdHRyKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSxsLiRyZXN1bHRzLmF0dHIoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLGwuJHJlc3VsdHMucmVtb3ZlQXR0cigiYXJpYS1hY3RpdmVkZXNjZW5kYW50Iil9KSx0Lm9uKCJyZXN1bHRzOnRvZ2dsZSIsZnVuY3Rpb24oKXt2YXIgZT1sLmdldEhpZ2hsaWdodGVkUmVzdWx0cygpOzAhPT1lLmxlbmd0aCYmZS50cmlnZ2VyKCJtb3VzZXVwIil9KSx0Lm9uKCJyZXN1bHRzOnNlbGVjdCIsZnVuY3Rpb24oKXt2YXIgZT1sLmdldEhpZ2hsaWdodGVkUmVzdWx0cygpO2lmKDAhPT1lLmxlbmd0aCl7dmFyIHQ9Zi5HZXREYXRhKGVbMF0sImRhdGEiKTtlLmhhc0NsYXNzKCJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQiKT9sLnRyaWdnZXIoImNsb3NlIix7fSk6bC50cmlnZ2VyKCJzZWxlY3QiLHtkYXRhOnR9KX19KSx0Lm9uKCJyZXN1bHRzOnByZXZpb3VzIixmdW5jdGlvbigpe3ZhciBlPWwuZ2V0SGlnaGxpZ2h0ZWRSZXN1bHRzKCksdD1sLiRyZXN1bHRzLmZpbmQoIi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSIpLG49dC5pbmRleChlKTtpZighKG48PTApKXt2YXIgaT1uLTE7MD09PWUubGVuZ3RoJiYoaT0wKTt2YXIgcj10LmVxKGkpO3IudHJpZ2dlcigibW91c2VlbnRlciIpO3ZhciBzPWwuJHJlc3VsdHMub2Zmc2V0KCkudG9wLG89ci5vZmZzZXQoKS50b3AsYT1sLiRyZXN1bHRzLnNjcm9sbFRvcCgpKyhvLXMpOzA9PT1pP2wuJHJlc3VsdHMuc2Nyb2xsVG9wKDApOm8tczwwJiZsLiRyZXN1bHRzLnNjcm9sbFRvcChhKX19KSx0Lm9uKCJyZXN1bHRzOm5leHQiLGZ1bmN0aW9uKCl7dmFyIGU9bC5nZXRIaWdobGlnaHRlZFJlc3VsdHMoKSx0PWwuJHJlc3VsdHMuZmluZCgiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIiksbj10LmluZGV4KGUpKzE7aWYoIShuPj10Lmxlbmd0aCkpe3ZhciBpPXQuZXEobik7aS50cmlnZ2VyKCJtb3VzZWVudGVyIik7dmFyIHI9bC4kcmVzdWx0cy5vZmZzZXQoKS50b3ArbC4kcmVzdWx0cy5vdXRlckhlaWdodCghMSkscz1pLm9mZnNldCgpLnRvcCtpLm91dGVySGVpZ2h0KCExKSxvPWwuJHJlc3VsdHMuc2Nyb2xsVG9wKCkrcy1yOzA9PT1uP2wuJHJlc3VsdHMuc2Nyb2xsVG9wKDApOnI8cyYmbC4kcmVzdWx0cy5zY3JvbGxUb3Aobyl9fSksdC5vbigicmVzdWx0czpmb2N1cyIsZnVuY3Rpb24oZSl7ZS5lbGVtZW50WzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCIpLGUuZWxlbWVudFswXS5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCJ0cnVlIil9KSx0Lm9uKCJyZXN1bHRzOm1lc3NhZ2UiLGZ1bmN0aW9uKGUpe2wuZGlzcGxheU1lc3NhZ2UoZSl9KSxoLmZuLm1vdXNld2hlZWwmJnRoaXMuJHJlc3VsdHMub24oIm1vdXNld2hlZWwiLGZ1bmN0aW9uKGUpe3ZhciB0PWwuJHJlc3VsdHMuc2Nyb2xsVG9wKCksbj1sLiRyZXN1bHRzLmdldCgwKS5zY3JvbGxIZWlnaHQtdCtlLmRlbHRhWSxpPTA8ZS5kZWx0YVkmJnQtZS5kZWx0YVk8PTAscj1lLmRlbHRhWTwwJiZuPD1sLiRyZXN1bHRzLmhlaWdodCgpO2k/KGwuJHJlc3VsdHMuc2Nyb2xsVG9wKDApLGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKTpyJiYobC4kcmVzdWx0cy5zY3JvbGxUb3AobC4kcmVzdWx0cy5nZXQoMCkuc2Nyb2xsSGVpZ2h0LWwuJHJlc3VsdHMuaGVpZ2h0KCkpLGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKX0pLHRoaXMuJHJlc3VsdHMub24oIm1vdXNldXAiLCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUiLGZ1bmN0aW9uKGUpe3ZhciB0PWgodGhpcyksbj1mLkdldERhdGEodGhpcywiZGF0YSIpO3QuaGFzQ2xhc3MoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZCIpP2wub3B0aW9ucy5nZXQoIm11bHRpcGxlIik/bC50cmlnZ2VyKCJ1bnNlbGVjdCIse29yaWdpbmFsRXZlbnQ6ZSxkYXRhOm59KTpsLnRyaWdnZXIoImNsb3NlIix7fSk6bC50cmlnZ2VyKCJzZWxlY3QiLHtvcmlnaW5hbEV2ZW50OmUsZGF0YTpufSl9KSx0aGlzLiRyZXN1bHRzLm9uKCJtb3VzZWVudGVyIiwiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIixmdW5jdGlvbihlKXt2YXIgdD1mLkdldERhdGEodGhpcywiZGF0YSIpO2wuZ2V0SGlnaGxpZ2h0ZWRSZXN1bHRzKCkucmVtb3ZlQ2xhc3MoInNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCIpLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJmYWxzZSIpLGwudHJpZ2dlcigicmVzdWx0czpmb2N1cyIse2RhdGE6dCxlbGVtZW50OmgodGhpcyl9KX0pfSxpLnByb3RvdHlwZS5nZXRIaWdobGlnaHRlZFJlc3VsdHM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kcmVzdWx0cy5maW5kKCIuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIil9LGkucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLiRyZXN1bHRzLnJlbW92ZSgpfSxpLnByb3RvdHlwZS5lbnN1cmVIaWdobGlnaHRWaXNpYmxlPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5nZXRIaWdobGlnaHRlZFJlc3VsdHMoKTtpZigwIT09ZS5sZW5ndGgpe3ZhciB0PXRoaXMuJHJlc3VsdHMuZmluZCgiLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIikuaW5kZXgoZSksbj10aGlzLiRyZXN1bHRzLm9mZnNldCgpLnRvcCxpPWUub2Zmc2V0KCkudG9wLHI9dGhpcy4kcmVzdWx0cy5zY3JvbGxUb3AoKSsoaS1uKSxzPWktbjtyLT0yKmUub3V0ZXJIZWlnaHQoITEpLHQ8PTI/dGhpcy4kcmVzdWx0cy5zY3JvbGxUb3AoMCk6KHM+dGhpcy4kcmVzdWx0cy5vdXRlckhlaWdodCgpfHxzPDApJiZ0aGlzLiRyZXN1bHRzLnNjcm9sbFRvcChyKX19LGkucHJvdG90eXBlLnRlbXBsYXRlPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5vcHRpb25zLmdldCgidGVtcGxhdGVSZXN1bHQiKSxpPXRoaXMub3B0aW9ucy5nZXQoImVzY2FwZU1hcmt1cCIpLHI9bihlLHQpO251bGw9PXI/dC5zdHlsZS5kaXNwbGF5PSJub25lIjoic3RyaW5nIj09dHlwZW9mIHI/dC5pbm5lckhUTUw9aShyKTpoKHQpLmFwcGVuZChyKX0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2tleXMiLFtdLGZ1bmN0aW9uKCl7cmV0dXJue0JBQ0tTUEFDRTo4LFRBQjo5LEVOVEVSOjEzLFNISUZUOjE2LENUUkw6MTcsQUxUOjE4LEVTQzoyNyxTUEFDRTozMixQQUdFX1VQOjMzLFBBR0VfRE9XTjozNCxFTkQ6MzUsSE9NRTozNixMRUZUOjM3LFVQOjM4LFJJR0hUOjM5LERPV046NDAsREVMRVRFOjQ2fX0pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9iYXNlIixbImpxdWVyeSIsIi4uL3V0aWxzIiwiLi4va2V5cyJdLGZ1bmN0aW9uKG4saSxyKXtmdW5jdGlvbiBzKGUsdCl7dGhpcy4kZWxlbWVudD1lLHRoaXMub3B0aW9ucz10LHMuX19zdXBlcl9fLmNvbnN0cnVjdG9yLmNhbGwodGhpcyl9cmV0dXJuIGkuRXh0ZW5kKHMsaS5PYnNlcnZhYmxlKSxzLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oKXt2YXIgZT1uKCc8c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb24iIHJvbGU9ImNvbWJvYm94IiAgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPjwvc3Bhbj4nKTtyZXR1cm4gdGhpcy5fdGFiaW5kZXg9MCxudWxsIT1pLkdldERhdGEodGhpcy4kZWxlbWVudFswXSwib2xkLXRhYmluZGV4Iik/dGhpcy5fdGFiaW5kZXg9aS5HZXREYXRhKHRoaXMuJGVsZW1lbnRbMF0sIm9sZC10YWJpbmRleCIpOm51bGwhPXRoaXMuJGVsZW1lbnQuYXR0cigidGFiaW5kZXgiKSYmKHRoaXMuX3RhYmluZGV4PXRoaXMuJGVsZW1lbnQuYXR0cigidGFiaW5kZXgiKSksZS5hdHRyKCJ0aXRsZSIsdGhpcy4kZWxlbWVudC5hdHRyKCJ0aXRsZSIpKSxlLmF0dHIoInRhYmluZGV4Iix0aGlzLl90YWJpbmRleCksZS5hdHRyKCJhcmlhLWRpc2FibGVkIiwiZmFsc2UiKSx0aGlzLiRzZWxlY3Rpb249ZX0scy5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMsaT1lLmlkKyItcmVzdWx0cyI7dGhpcy5jb250YWluZXI9ZSx0aGlzLiRzZWxlY3Rpb24ub24oImZvY3VzIixmdW5jdGlvbihlKXtuLnRyaWdnZXIoImZvY3VzIixlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiYmx1ciIsZnVuY3Rpb24oZSl7bi5faGFuZGxlQmx1cihlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigia2V5ZG93biIsZnVuY3Rpb24oZSl7bi50cmlnZ2VyKCJrZXlwcmVzcyIsZSksZS53aGljaD09PXIuU1BBQ0UmJmUucHJldmVudERlZmF1bHQoKX0pLGUub24oInJlc3VsdHM6Zm9jdXMiLGZ1bmN0aW9uKGUpe24uJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLGUuZGF0YS5fcmVzdWx0SWQpfSksZS5vbigic2VsZWN0aW9uOnVwZGF0ZSIsZnVuY3Rpb24oZSl7bi51cGRhdGUoZS5kYXRhKX0pLGUub24oIm9wZW4iLGZ1bmN0aW9uKCl7bi4kc2VsZWN0aW9uLmF0dHIoImFyaWEtZXhwYW5kZWQiLCJ0cnVlIiksbi4kc2VsZWN0aW9uLmF0dHIoImFyaWEtb3ducyIsaSksbi5fYXR0YWNoQ2xvc2VIYW5kbGVyKGUpfSksZS5vbigiY2xvc2UiLGZ1bmN0aW9uKCl7bi4kc2VsZWN0aW9uLmF0dHIoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpLG4uJHNlbGVjdGlvbi5yZW1vdmVBdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiKSxuLiRzZWxlY3Rpb24ucmVtb3ZlQXR0cigiYXJpYS1vd25zIiksbi4kc2VsZWN0aW9uLnRyaWdnZXIoImZvY3VzIiksbi5fZGV0YWNoQ2xvc2VIYW5kbGVyKGUpfSksZS5vbigiZW5hYmxlIixmdW5jdGlvbigpe24uJHNlbGVjdGlvbi5hdHRyKCJ0YWJpbmRleCIsbi5fdGFiaW5kZXgpLG4uJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWRpc2FibGVkIiwiZmFsc2UiKX0pLGUub24oImRpc2FibGUiLGZ1bmN0aW9uKCl7bi4kc2VsZWN0aW9uLmF0dHIoInRhYmluZGV4IiwiLTEiKSxuLiRzZWxlY3Rpb24uYXR0cigiYXJpYS1kaXNhYmxlZCIsInRydWUiKX0pfSxzLnByb3RvdHlwZS5faGFuZGxlQmx1cj1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3dpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09dC4kc2VsZWN0aW9uWzBdfHxuLmNvbnRhaW5zKHQuJHNlbGVjdGlvblswXSxkb2N1bWVudC5hY3RpdmVFbGVtZW50KXx8dC50cmlnZ2VyKCJibHVyIixlKX0sMSl9LHMucHJvdG90eXBlLl9hdHRhY2hDbG9zZUhhbmRsZXI9ZnVuY3Rpb24oZSl7bihkb2N1bWVudC5ib2R5KS5vbigibW91c2Vkb3duLnNlbGVjdDIuIitlLmlkLGZ1bmN0aW9uKGUpe3ZhciB0PW4oZS50YXJnZXQpLmNsb3Nlc3QoIi5zZWxlY3QyIik7bigiLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXItLW9wZW4iKS5lYWNoKGZ1bmN0aW9uKCl7dGhpcyE9dFswXSYmaS5HZXREYXRhKHRoaXMsImVsZW1lbnQiKS5zZWxlY3QyKCJjbG9zZSIpfSl9KX0scy5wcm90b3R5cGUuX2RldGFjaENsb3NlSGFuZGxlcj1mdW5jdGlvbihlKXtuKGRvY3VtZW50LmJvZHkpLm9mZigibW91c2Vkb3duLnNlbGVjdDIuIitlLmlkKX0scy5wcm90b3R5cGUucG9zaXRpb249ZnVuY3Rpb24oZSx0KXt0LmZpbmQoIi5zZWxlY3Rpb24iKS5hcHBlbmQoZSl9LHMucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLl9kZXRhY2hDbG9zZUhhbmRsZXIodGhpcy5jb250YWluZXIpfSxzLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKCJUaGUgYHVwZGF0ZWAgbWV0aG9kIG11c3QgYmUgZGVmaW5lZCBpbiBjaGlsZCBjbGFzc2VzLiIpfSxzLnByb3RvdHlwZS5pc0VuYWJsZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc0Rpc2FibGVkKCl9LHMucHJvdG90eXBlLmlzRGlzYWJsZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5vcHRpb25zLmdldCgiZGlzYWJsZWQiKX0sc30pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9zaW5nbGUiLFsianF1ZXJ5IiwiLi9iYXNlIiwiLi4vdXRpbHMiLCIuLi9rZXlzIl0sZnVuY3Rpb24oZSx0LG4saSl7ZnVuY3Rpb24gcigpe3IuX19zdXBlcl9fLmNvbnN0cnVjdG9yLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1yZXR1cm4gbi5FeHRlbmQocix0KSxyLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oKXt2YXIgZT1yLl9fc3VwZXJfXy5yZW5kZXIuY2FsbCh0aGlzKTtyZXR1cm4gZVswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIiksZS5odG1sKCc8c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIj48L3NwYW4+PHNwYW4gY2xhc3M9InNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyIgcm9sZT0icHJlc2VudGF0aW9uIj48YiByb2xlPSJwcmVzZW50YXRpb24iPjwvYj48L3NwYW4+JyksZX0sci5wcm90b3R5cGUuYmluZD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7ci5fX3N1cGVyX18uYmluZC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIGk9dC5pZCsiLWNvbnRhaW5lciI7dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiKS5hdHRyKCJpZCIsaSkuYXR0cigicm9sZSIsInRleHRib3giKS5hdHRyKCJhcmlhLXJlYWRvbmx5IiwidHJ1ZSIpLHRoaXMuJHNlbGVjdGlvbi5hdHRyKCJhcmlhLWxhYmVsbGVkYnkiLGkpLHRoaXMuJHNlbGVjdGlvbi5vbigibW91c2Vkb3duIixmdW5jdGlvbihlKXsxPT09ZS53aGljaCYmbi50cmlnZ2VyKCJ0b2dnbGUiLHtvcmlnaW5hbEV2ZW50OmV9KX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXMiLGZ1bmN0aW9uKGUpe30pLHRoaXMuJHNlbGVjdGlvbi5vbigiYmx1ciIsZnVuY3Rpb24oZSl7fSksdC5vbigiZm9jdXMiLGZ1bmN0aW9uKGUpe3QuaXNPcGVuKCl8fG4uJHNlbGVjdGlvbi50cmlnZ2VyKCJmb2N1cyIpfSl9LHIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiKTtlLmVtcHR5KCksZS5yZW1vdmVBdHRyKCJ0aXRsZSIpfSxyLnByb3RvdHlwZS5kaXNwbGF5PWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5vcHRpb25zLmdldCgidGVtcGxhdGVTZWxlY3Rpb24iKTtyZXR1cm4gdGhpcy5vcHRpb25zLmdldCgiZXNjYXBlTWFya3VwIikobihlLHQpKX0sci5wcm90b3R5cGUuc2VsZWN0aW9uQ29udGFpbmVyPWZ1bmN0aW9uKCl7cmV0dXJuIGUoIjxzcGFuPjwvc3Bhbj4iKX0sci5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKGUpe2lmKDAhPT1lLmxlbmd0aCl7dmFyIHQ9ZVswXSxuPXRoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIiksaT10aGlzLmRpc3BsYXkodCxuKTtuLmVtcHR5KCkuYXBwZW5kKGkpO3ZhciByPXQudGl0bGV8fHQudGV4dDtyP24uYXR0cigidGl0bGUiLHIpOm4ucmVtb3ZlQXR0cigidGl0bGUiKX1lbHNlIHRoaXMuY2xlYXIoKX0scn0pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9tdWx0aXBsZSIsWyJqcXVlcnkiLCIuL2Jhc2UiLCIuLi91dGlscyJdLGZ1bmN0aW9uKHIsZSxkKXtmdW5jdGlvbiBzKGUsdCl7cy5fX3N1cGVyX18uY29uc3RydWN0b3IuYXBwbHkodGhpcyxhcmd1bWVudHMpfXJldHVybiBkLkV4dGVuZChzLGUpLHMucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXMuX19zdXBlcl9fLnJlbmRlci5jYWxsKHRoaXMpO3JldHVybiBlWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSIpLGUuaHRtbCgnPHVsIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiPjwvdWw+JyksZX0scy5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe3ZhciBpPXRoaXM7cy5fX3N1cGVyX18uYmluZC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIG49ZS5pZCsiLWNvbnRhaW5lciI7dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQiKS5hdHRyKCJpZCIsbiksdGhpcy4kc2VsZWN0aW9uLm9uKCJjbGljayIsZnVuY3Rpb24oZSl7aS50cmlnZ2VyKCJ0b2dnbGUiLHtvcmlnaW5hbEV2ZW50OmV9KX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiY2xpY2siLCIuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIixmdW5jdGlvbihlKXtpZighaS5pc0Rpc2FibGVkKCkpe3ZhciB0PXIodGhpcykucGFyZW50KCksbj1kLkdldERhdGEodFswXSwiZGF0YSIpO2kudHJpZ2dlcigidW5zZWxlY3QiLHtvcmlnaW5hbEV2ZW50OmUsZGF0YTpufSl9fSksdGhpcy4kc2VsZWN0aW9uLm9uKCJrZXlkb3duIiwiLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIsZnVuY3Rpb24oZSl7aS5pc0Rpc2FibGVkKCl8fGUuc3RvcFByb3BhZ2F0aW9uKCl9KX0scy5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpO2UuZW1wdHkoKSxlLnJlbW92ZUF0dHIoInRpdGxlIil9LHMucHJvdG90eXBlLmRpc3BsYXk9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLm9wdGlvbnMuZ2V0KCJ0ZW1wbGF0ZVNlbGVjdGlvbiIpO3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJlc2NhcGVNYXJrdXAiKShuKGUsdCkpfSxzLnByb3RvdHlwZS5zZWxlY3Rpb25Db250YWluZXI9ZnVuY3Rpb24oKXtyZXR1cm4gcignPGxpIGNsYXNzPSJzZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSIgdGFiaW5kZXg9Ii0xIj48c3BhbiBhcmlhLWhpZGRlbj0idHJ1ZSI+JnRpbWVzOzwvc3Bhbj48L2J1dHRvbj48c3BhbiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSI+PC9zcGFuPjwvbGk+Jyl9LHMucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihlKXtpZih0aGlzLmNsZWFyKCksMCE9PWUubGVuZ3RoKXtmb3IodmFyIHQ9W10sbj10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmF0dHIoImlkIikrIi1jaG9pY2UtIixpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciByPWVbaV0scz10aGlzLnNlbGVjdGlvbkNvbnRhaW5lcigpLG89dGhpcy5kaXNwbGF5KHIscyksYT1uK2QuZ2VuZXJhdGVDaGFycyg0KSsiLSI7ci5pZD9hKz1yLmlkOmErPWQuZ2VuZXJhdGVDaGFycyg0KSxzLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IikuYXBwZW5kKG8pLmF0dHIoImlkIixhKTt2YXIgbD1yLnRpdGxlfHxyLnRleHQ7bCYmcy5hdHRyKCJ0aXRsZSIsbCk7dmFyIGM9dGhpcy5vcHRpb25zLmdldCgidHJhbnNsYXRpb25zIikuZ2V0KCJyZW1vdmVJdGVtIiksdT1zLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUiKTt1LmF0dHIoInRpdGxlIixjKCkpLHUuYXR0cigiYXJpYS1sYWJlbCIsYygpKSx1LmF0dHIoImFyaWEtZGVzY3JpYmVkYnkiLGEpLGQuU3RvcmVEYXRhKHNbMF0sImRhdGEiLHIpLHQucHVzaChzKX10aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmFwcGVuZCh0KX19LHN9KSxlLmRlZmluZSgic2VsZWN0Mi9zZWxlY3Rpb24vcGxhY2Vob2xkZXIiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQsbil7dGhpcy5wbGFjZWhvbGRlcj10aGlzLm5vcm1hbGl6ZVBsYWNlaG9sZGVyKG4uZ2V0KCJwbGFjZWhvbGRlciIpKSxlLmNhbGwodGhpcyx0LG4pfXJldHVybiBlLnByb3RvdHlwZS5ub3JtYWxpemVQbGFjZWhvbGRlcj1mdW5jdGlvbihlLHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdCYmKHQ9e2lkOiIiLHRleHQ6dH0pLHR9LGUucHJvdG90eXBlLmNyZWF0ZVBsYWNlaG9sZGVyPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5zZWxlY3Rpb25Db250YWluZXIoKTtyZXR1cm4gbi5odG1sKHRoaXMuZGlzcGxheSh0KSksblswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIiKSxuWzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UiKSxufSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj0xPT10Lmxlbmd0aCYmdFswXS5pZCE9dGhpcy5wbGFjZWhvbGRlci5pZDtpZigxPHQubGVuZ3RofHxuKXJldHVybiBlLmNhbGwodGhpcyx0KTt0aGlzLmNsZWFyKCk7dmFyIGk9dGhpcy5jcmVhdGVQbGFjZWhvbGRlcih0aGlzLnBsYWNlaG9sZGVyKTt0aGlzLiRzZWxlY3Rpb24uZmluZCgiLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCIpLmFwcGVuZChpKX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9hbGxvd0NsZWFyIixbImpxdWVyeSIsIi4uL2tleXMiLCIuLi91dGlscyJdLGZ1bmN0aW9uKHMsaSxhKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzO2UuY2FsbCh0aGlzLHQsbiksbnVsbD09dGhpcy5wbGFjZWhvbGRlciYmdGhpcy5vcHRpb25zLmdldCgiZGVidWciKSYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUuZXJyb3ImJmNvbnNvbGUuZXJyb3IoIlNlbGVjdDI6IFRoZSBgYWxsb3dDbGVhcmAgb3B0aW9uIHNob3VsZCBiZSB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggdGhlIGBwbGFjZWhvbGRlcmAgb3B0aW9uLiIpLHRoaXMuJHNlbGVjdGlvbi5vbigibW91c2Vkb3duIiwiLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciIsZnVuY3Rpb24oZSl7aS5faGFuZGxlQ2xlYXIoZSl9KSx0Lm9uKCJrZXlwcmVzcyIsZnVuY3Rpb24oZSl7aS5faGFuZGxlS2V5Ym9hcmRDbGVhcihlLHQpfSl9LGUucHJvdG90eXBlLl9oYW5kbGVDbGVhcj1mdW5jdGlvbihlLHQpe2lmKCF0aGlzLmlzRGlzYWJsZWQoKSl7dmFyIG49dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIiKTtpZigwIT09bi5sZW5ndGgpe3Quc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGk9YS5HZXREYXRhKG5bMF0sImRhdGEiKSxyPXRoaXMuJGVsZW1lbnQudmFsKCk7dGhpcy4kZWxlbWVudC52YWwodGhpcy5wbGFjZWhvbGRlci5pZCk7dmFyIHM9e2RhdGE6aX07aWYodGhpcy50cmlnZ2VyKCJjbGVhciIscykscy5wcmV2ZW50ZWQpdGhpcy4kZWxlbWVudC52YWwocik7ZWxzZXtmb3IodmFyIG89MDtvPGkubGVuZ3RoO28rKylpZihzPXtkYXRhOmlbb119LHRoaXMudHJpZ2dlcigidW5zZWxlY3QiLHMpLHMucHJldmVudGVkKXJldHVybiB2b2lkIHRoaXMuJGVsZW1lbnQudmFsKHIpO3RoaXMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKSx0aGlzLnRyaWdnZXIoInRvZ2dsZSIse30pfX19fSxlLnByb3RvdHlwZS5faGFuZGxlS2V5Ym9hcmRDbGVhcj1mdW5jdGlvbihlLHQsbil7bi5pc09wZW4oKXx8dC53aGljaCE9aS5ERUxFVEUmJnQud2hpY2ghPWkuQkFDS1NQQUNFfHx0aGlzLl9oYW5kbGVDbGVhcih0KX0sZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKGUsdCl7aWYoZS5jYWxsKHRoaXMsdCksdGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIiKS5yZW1vdmUoKSwhKDA8dGhpcy4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIiKS5sZW5ndGh8fDA9PT10Lmxlbmd0aCkpe3ZhciBuPXRoaXMuJHNlbGVjdGlvbi5maW5kKCIuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIikuYXR0cigiaWQiKSxpPXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgicmVtb3ZlQWxsSXRlbXMiKSxyPXMoJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIiB0YWJpbmRleD0iLTEiPjxzcGFuIGFyaWEtaGlkZGVuPSJ0cnVlIj4mdGltZXM7PC9zcGFuPjwvYnV0dG9uPicpO3IuYXR0cigidGl0bGUiLGkoKSksci5hdHRyKCJhcmlhLWxhYmVsIixpKCkpLHIuYXR0cigiYXJpYS1kZXNjcmliZWRieSIsbiksYS5TdG9yZURhdGEoclswXSwiZGF0YSIsdCksdGhpcy4kc2VsZWN0aW9uLnByZXBlbmQocil9fSxlfSksZS5kZWZpbmUoInNlbGVjdDIvc2VsZWN0aW9uL3NlYXJjaCIsWyJqcXVlcnkiLCIuLi91dGlscyIsIi4uL2tleXMiXSxmdW5jdGlvbihpLGwsYyl7ZnVuY3Rpb24gZShlLHQsbil7ZS5jYWxsKHRoaXMsdCxuKX1yZXR1cm4gZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWkoJzxzcGFuIGNsYXNzPSJzZWxlY3QyLXNlYXJjaCBzZWxlY3QyLXNlYXJjaC0taW5saW5lIj48aW5wdXQgY2xhc3M9InNlbGVjdDItc2VhcmNoX19maWVsZCIgdHlwZT0ic2VhcmNoIiB0YWJpbmRleD0iLTEiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJub25lIiBzcGVsbGNoZWNrPSJmYWxzZSIgcm9sZT0ic2VhcmNoYm94IiBhcmlhLWF1dG9jb21wbGV0ZT0ibGlzdCIgLz48L3NwYW4+Jyk7dGhpcy4kc2VhcmNoQ29udGFpbmVyPXQsdGhpcy4kc2VhcmNoPXQuZmluZCgiaW5wdXQiKSx0aGlzLiRzZWFyY2gucHJvcCgiYXV0b2NvbXBsZXRlIix0aGlzLm9wdGlvbnMuZ2V0KCJhdXRvY29tcGxldGUiKSk7dmFyIG49ZS5jYWxsKHRoaXMpO3JldHVybiB0aGlzLl90cmFuc2ZlclRhYkluZGV4KCksbi5hcHBlbmQodGhpcy4kc2VhcmNoQ29udGFpbmVyKSxufSxlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzLHI9dC5pZCsiLXJlc3VsdHMiLHM9dC5pZCsiLWNvbnRhaW5lciI7ZS5jYWxsKHRoaXMsdCxuKSxpLiRzZWFyY2guYXR0cigiYXJpYS1kZXNjcmliZWRieSIscyksdC5vbigib3BlbiIsZnVuY3Rpb24oKXtpLiRzZWFyY2guYXR0cigiYXJpYS1jb250cm9scyIsciksaS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9KSx0Lm9uKCJjbG9zZSIsZnVuY3Rpb24oKXtpLiRzZWFyY2gudmFsKCIiKSxpLnJlc2l6ZVNlYXJjaCgpLGkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWNvbnRyb2xzIiksaS4kc2VhcmNoLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpLGkuJHNlYXJjaC50cmlnZ2VyKCJmb2N1cyIpfSksdC5vbigiZW5hYmxlIixmdW5jdGlvbigpe2kuJHNlYXJjaC5wcm9wKCJkaXNhYmxlZCIsITEpLGkuX3RyYW5zZmVyVGFiSW5kZXgoKX0pLHQub24oImRpc2FibGUiLGZ1bmN0aW9uKCl7aS4kc2VhcmNoLnByb3AoImRpc2FibGVkIiwhMCl9KSx0Lm9uKCJmb2N1cyIsZnVuY3Rpb24oZSl7aS4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIil9KSx0Lm9uKCJyZXN1bHRzOmZvY3VzIixmdW5jdGlvbihlKXtlLmRhdGEuX3Jlc3VsdElkP2kuJHNlYXJjaC5hdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLGUuZGF0YS5fcmVzdWx0SWQpOmkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXNpbiIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXtpLnRyaWdnZXIoImZvY3VzIixlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigiZm9jdXNvdXQiLCIuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSIsZnVuY3Rpb24oZSl7aS5faGFuZGxlQmx1cihlKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigia2V5ZG93biIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXtpZihlLnN0b3BQcm9wYWdhdGlvbigpLGkudHJpZ2dlcigia2V5cHJlc3MiLGUpLGkuX2tleVVwUHJldmVudGVkPWUuaXNEZWZhdWx0UHJldmVudGVkKCksZS53aGljaD09PWMuQkFDS1NQQUNFJiYiIj09PWkuJHNlYXJjaC52YWwoKSl7dmFyIHQ9aS4kc2VsZWN0aW9uLmZpbmQoIi5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIikubGFzdCgpO2lmKDA8dC5sZW5ndGgpe3ZhciBuPWwuR2V0RGF0YSh0WzBdLCJkYXRhIik7aS5zZWFyY2hSZW1vdmVDaG9pY2UobiksZS5wcmV2ZW50RGVmYXVsdCgpfX19KSx0aGlzLiRzZWxlY3Rpb24ub24oImNsaWNrIiwiLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUiLGZ1bmN0aW9uKGUpe2kuJHNlYXJjaC52YWwoKSYmZS5zdG9wUHJvcGFnYXRpb24oKX0pO3ZhciBvPWRvY3VtZW50LmRvY3VtZW50TW9kZSxhPW8mJm88PTExO3RoaXMuJHNlbGVjdGlvbi5vbigiaW5wdXQuc2VhcmNoY2hlY2siLCIuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSIsZnVuY3Rpb24oZSl7YT9pLiRzZWxlY3Rpb24ub2ZmKCJpbnB1dC5zZWFyY2ggaW5wdXQuc2VhcmNoY2hlY2siKTppLiRzZWxlY3Rpb24ub2ZmKCJrZXl1cC5zZWFyY2giKX0pLHRoaXMuJHNlbGVjdGlvbi5vbigia2V5dXAuc2VhcmNoIGlucHV0LnNlYXJjaCIsIi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIixmdW5jdGlvbihlKXtpZihhJiYiaW5wdXQiPT09ZS50eXBlKWkuJHNlbGVjdGlvbi5vZmYoImlucHV0LnNlYXJjaCBpbnB1dC5zZWFyY2hjaGVjayIpO2Vsc2V7dmFyIHQ9ZS53aGljaDt0IT1jLlNISUZUJiZ0IT1jLkNUUkwmJnQhPWMuQUxUJiZ0IT1jLlRBQiYmaS5oYW5kbGVTZWFyY2goZSl9fSl9LGUucHJvdG90eXBlLl90cmFuc2ZlclRhYkluZGV4PWZ1bmN0aW9uKGUpe3RoaXMuJHNlYXJjaC5hdHRyKCJ0YWJpbmRleCIsdGhpcy4kc2VsZWN0aW9uLmF0dHIoInRhYmluZGV4IikpLHRoaXMuJHNlbGVjdGlvbi5hdHRyKCJ0YWJpbmRleCIsIi0xIil9LGUucHJvdG90eXBlLmNyZWF0ZVBsYWNlaG9sZGVyPWZ1bmN0aW9uKGUsdCl7dGhpcy4kc2VhcmNoLmF0dHIoInBsYWNlaG9sZGVyIix0LnRleHQpfSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLiRzZWFyY2hbMF09PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dGhpcy4kc2VhcmNoLmF0dHIoInBsYWNlaG9sZGVyIiwiIiksZS5jYWxsKHRoaXMsdCksdGhpcy5yZXNpemVTZWFyY2goKSxuJiZ0aGlzLiRzZWFyY2gudHJpZ2dlcigiZm9jdXMiKX0sZS5wcm90b3R5cGUuaGFuZGxlU2VhcmNoPWZ1bmN0aW9uKCl7aWYodGhpcy5yZXNpemVTZWFyY2goKSwhdGhpcy5fa2V5VXBQcmV2ZW50ZWQpe3ZhciBlPXRoaXMuJHNlYXJjaC52YWwoKTt0aGlzLnRyaWdnZXIoInF1ZXJ5Iix7dGVybTplfSl9dGhpcy5fa2V5VXBQcmV2ZW50ZWQ9ITF9LGUucHJvdG90eXBlLnNlYXJjaFJlbW92ZUNob2ljZT1mdW5jdGlvbihlLHQpe3RoaXMudHJpZ2dlcigidW5zZWxlY3QiLHtkYXRhOnR9KSx0aGlzLiRzZWFyY2gudmFsKHQudGV4dCksdGhpcy5oYW5kbGVTZWFyY2goKX0sZS5wcm90b3R5cGUucmVzaXplU2VhcmNoPWZ1bmN0aW9uKCl7dGhpcy4kc2VhcmNoLmNzcygid2lkdGgiLCIyNXB4Iik7dmFyIGU9IjEwMCUiOyIiPT09dGhpcy4kc2VhcmNoLmF0dHIoInBsYWNlaG9sZGVyIikmJihlPS43NSoodGhpcy4kc2VhcmNoLnZhbCgpLmxlbmd0aCsxKSsiZW0iKTt0aGlzLiRzZWFyY2guY3NzKCJ3aWR0aCIsZSl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9zZWxlY3Rpb24vc2VsZWN0aW9uQ3NzIixbIi4uL3V0aWxzIl0sZnVuY3Rpb24oaSl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2FsbCh0aGlzKSxuPXRoaXMub3B0aW9ucy5nZXQoInNlbGVjdGlvbkNzc0NsYXNzIil8fCIiO3JldHVybi0xIT09bi5pbmRleE9mKCI6YWxsOiIpJiYobj1uLnJlcGxhY2UoIjphbGw6IiwiIiksaS5jb3B5Tm9uSW50ZXJuYWxDc3NDbGFzc2VzKHRbMF0sdGhpcy4kZWxlbWVudFswXSkpLHQuYWRkQ2xhc3MobiksdH0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL3NlbGVjdGlvbi9ldmVudFJlbGF5IixbImpxdWVyeSJdLGZ1bmN0aW9uKG8pe2Z1bmN0aW9uIGUoKXt9cmV0dXJuIGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXMscj1bIm9wZW4iLCJvcGVuaW5nIiwiY2xvc2UiLCJjbG9zaW5nIiwic2VsZWN0Iiwic2VsZWN0aW5nIiwidW5zZWxlY3QiLCJ1bnNlbGVjdGluZyIsImNsZWFyIiwiY2xlYXJpbmciXSxzPVsib3BlbmluZyIsImNsb3NpbmciLCJzZWxlY3RpbmciLCJ1bnNlbGVjdGluZyIsImNsZWFyaW5nIl07ZS5jYWxsKHRoaXMsdCxuKSx0Lm9uKCIqIixmdW5jdGlvbihlLHQpe2lmKC0xIT09ci5pbmRleE9mKGUpKXt0PXR8fHt9O3ZhciBuPW8uRXZlbnQoInNlbGVjdDI6IitlLHtwYXJhbXM6dH0pO2kuJGVsZW1lbnQudHJpZ2dlcihuKSwtMSE9PXMuaW5kZXhPZihlKSYmKHQucHJldmVudGVkPW4uaXNEZWZhdWx0UHJldmVudGVkKCkpfX0pfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvdHJhbnNsYXRpb24iLFsianF1ZXJ5IiwicmVxdWlyZSJdLGZ1bmN0aW9uKHQsbil7ZnVuY3Rpb24gaShlKXt0aGlzLmRpY3Q9ZXx8e319cmV0dXJuIGkucHJvdG90eXBlLmFsbD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmRpY3R9LGkucHJvdG90eXBlLmdldD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5kaWN0W2VdfSxpLnByb3RvdHlwZS5leHRlbmQ9ZnVuY3Rpb24oZSl7dGhpcy5kaWN0PXQuZXh0ZW5kKHt9LGUuYWxsKCksdGhpcy5kaWN0KX0saS5fY2FjaGU9e30saS5sb2FkUGF0aD1mdW5jdGlvbihlKXtpZighKGUgaW4gaS5fY2FjaGUpKXt2YXIgdD1uKGUpO2kuX2NhY2hlW2VdPXR9cmV0dXJuIG5ldyBpKGkuX2NhY2hlW2VdKX0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RpYWNyaXRpY3MiLFtdLGZ1bmN0aW9uKCl7cmV0dXJueyLikrYiOiJBIiwi77yhIjoiQSIsIsOAIjoiQSIsIsOBIjoiQSIsIsOCIjoiQSIsIuG6piI6IkEiLCLhuqQiOiJBIiwi4bqqIjoiQSIsIuG6qCI6IkEiLCLDgyI6IkEiLCLEgCI6IkEiLCLEgiI6IkEiLCLhurAiOiJBIiwi4bquIjoiQSIsIuG6tCI6IkEiLCLhurIiOiJBIiwiyKYiOiJBIiwix6AiOiJBIiwiw4QiOiJBIiwix54iOiJBIiwi4bqiIjoiQSIsIsOFIjoiQSIsIse6IjoiQSIsIseNIjoiQSIsIsiAIjoiQSIsIsiCIjoiQSIsIuG6oCI6IkEiLCLhuqwiOiJBIiwi4bq2IjoiQSIsIuG4gCI6IkEiLCLEhCI6IkEiLCLIuiI6IkEiLCLisa8iOiJBIiwi6pyyIjoiQUEiLCLDhiI6IkFFIiwix7wiOiJBRSIsIseiIjoiQUUiLCLqnLQiOiJBTyIsIuqctiI6IkFVIiwi6py4IjoiQVYiLCLqnLoiOiJBViIsIuqcvCI6IkFZIiwi4pK3IjoiQiIsIu+8oiI6IkIiLCLhuIIiOiJCIiwi4biEIjoiQiIsIuG4hiI6IkIiLCLJgyI6IkIiLCLGgiI6IkIiLCLGgSI6IkIiLCLikrgiOiJDIiwi77yjIjoiQyIsIsSGIjoiQyIsIsSIIjoiQyIsIsSKIjoiQyIsIsSMIjoiQyIsIsOHIjoiQyIsIuG4iCI6IkMiLCLGhyI6IkMiLCLIuyI6IkMiLCLqnL4iOiJDIiwi4pK5IjoiRCIsIu+8pCI6IkQiLCLhuIoiOiJEIiwixI4iOiJEIiwi4biMIjoiRCIsIuG4kCI6IkQiLCLhuJIiOiJEIiwi4biOIjoiRCIsIsSQIjoiRCIsIsaLIjoiRCIsIsaKIjoiRCIsIsaJIjoiRCIsIuqduSI6IkQiLCLHsSI6IkRaIiwix4QiOiJEWiIsIseyIjoiRHoiLCLHhSI6IkR6Iiwi4pK6IjoiRSIsIu+8pSI6IkUiLCLDiCI6IkUiLCLDiSI6IkUiLCLDiiI6IkUiLCLhu4AiOiJFIiwi4bq+IjoiRSIsIuG7hCI6IkUiLCLhu4IiOiJFIiwi4bq8IjoiRSIsIsSSIjoiRSIsIuG4lCI6IkUiLCLhuJYiOiJFIiwixJQiOiJFIiwixJYiOiJFIiwiw4siOiJFIiwi4bq6IjoiRSIsIsSaIjoiRSIsIsiEIjoiRSIsIsiGIjoiRSIsIuG6uCI6IkUiLCLhu4YiOiJFIiwiyKgiOiJFIiwi4bicIjoiRSIsIsSYIjoiRSIsIuG4mCI6IkUiLCLhuJoiOiJFIiwixpAiOiJFIiwixo4iOiJFIiwi4pK7IjoiRiIsIu+8piI6IkYiLCLhuJ4iOiJGIiwixpEiOiJGIiwi6p27IjoiRiIsIuKSvCI6IkciLCLvvKciOiJHIiwix7QiOiJHIiwixJwiOiJHIiwi4bigIjoiRyIsIsSeIjoiRyIsIsSgIjoiRyIsIsemIjoiRyIsIsSiIjoiRyIsIsekIjoiRyIsIsaTIjoiRyIsIuqeoCI6IkciLCLqnb0iOiJHIiwi6p2+IjoiRyIsIuKSvSI6IkgiLCLvvKgiOiJIIiwixKQiOiJIIiwi4biiIjoiSCIsIuG4piI6IkgiLCLIniI6IkgiLCLhuKQiOiJIIiwi4bioIjoiSCIsIuG4qiI6IkgiLCLEpiI6IkgiLCLisaciOiJIIiwi4rG1IjoiSCIsIuqejSI6IkgiLCLikr4iOiJJIiwi77ypIjoiSSIsIsOMIjoiSSIsIsONIjoiSSIsIsOOIjoiSSIsIsSoIjoiSSIsIsSqIjoiSSIsIsSsIjoiSSIsIsSwIjoiSSIsIsOPIjoiSSIsIuG4riI6IkkiLCLhu4giOiJJIiwix48iOiJJIiwiyIgiOiJJIiwiyIoiOiJJIiwi4buKIjoiSSIsIsSuIjoiSSIsIuG4rCI6IkkiLCLGlyI6IkkiLCLikr8iOiJKIiwi77yqIjoiSiIsIsS0IjoiSiIsIsmIIjoiSiIsIuKTgCI6IksiLCLvvKsiOiJLIiwi4biwIjoiSyIsIseoIjoiSyIsIuG4siI6IksiLCLEtiI6IksiLCLhuLQiOiJLIiwixpgiOiJLIiwi4rGpIjoiSyIsIuqdgCI6IksiLCLqnYIiOiJLIiwi6p2EIjoiSyIsIuqeoiI6IksiLCLik4EiOiJMIiwi77ysIjoiTCIsIsS/IjoiTCIsIsS5IjoiTCIsIsS9IjoiTCIsIuG4tiI6IkwiLCLhuLgiOiJMIiwixLsiOiJMIiwi4bi8IjoiTCIsIuG4uiI6IkwiLCLFgSI6IkwiLCLIvSI6IkwiLCLisaIiOiJMIiwi4rGgIjoiTCIsIuqdiCI6IkwiLCLqnYYiOiJMIiwi6p6AIjoiTCIsIseHIjoiTEoiLCLHiCI6IkxqIiwi4pOCIjoiTSIsIu+8rSI6Ik0iLCLhuL4iOiJNIiwi4bmAIjoiTSIsIuG5giI6Ik0iLCLisa4iOiJNIiwixpwiOiJNIiwi4pODIjoiTiIsIu+8riI6Ik4iLCLHuCI6Ik4iLCLFgyI6Ik4iLCLDkSI6Ik4iLCLhuYQiOiJOIiwixYciOiJOIiwi4bmGIjoiTiIsIsWFIjoiTiIsIuG5iiI6Ik4iLCLhuYgiOiJOIiwiyKAiOiJOIiwixp0iOiJOIiwi6p6QIjoiTiIsIuqepCI6Ik4iLCLHiiI6Ik5KIiwix4siOiJOaiIsIuKThCI6Ik8iLCLvvK8iOiJPIiwiw5IiOiJPIiwiw5MiOiJPIiwiw5QiOiJPIiwi4buSIjoiTyIsIuG7kCI6Ik8iLCLhu5YiOiJPIiwi4buUIjoiTyIsIsOVIjoiTyIsIuG5jCI6Ik8iLCLIrCI6Ik8iLCLhuY4iOiJPIiwixYwiOiJPIiwi4bmQIjoiTyIsIuG5kiI6Ik8iLCLFjiI6Ik8iLCLIriI6Ik8iLCLIsCI6Ik8iLCLDliI6Ik8iLCLIqiI6Ik8iLCLhu44iOiJPIiwixZAiOiJPIiwix5EiOiJPIiwiyIwiOiJPIiwiyI4iOiJPIiwixqAiOiJPIiwi4bucIjoiTyIsIuG7miI6Ik8iLCLhu6AiOiJPIiwi4bueIjoiTyIsIuG7oiI6Ik8iLCLhu4wiOiJPIiwi4buYIjoiTyIsIseqIjoiTyIsIsesIjoiTyIsIsOYIjoiTyIsIse+IjoiTyIsIsaGIjoiTyIsIsafIjoiTyIsIuqdiiI6Ik8iLCLqnYwiOiJPIiwixZIiOiJPRSIsIsaiIjoiT0kiLCLqnY4iOiJPTyIsIsiiIjoiT1UiLCLik4UiOiJQIiwi77ywIjoiUCIsIuG5lCI6IlAiLCLhuZYiOiJQIiwixqQiOiJQIiwi4rGjIjoiUCIsIuqdkCI6IlAiLCLqnZIiOiJQIiwi6p2UIjoiUCIsIuKThiI6IlEiLCLvvLEiOiJRIiwi6p2WIjoiUSIsIuqdmCI6IlEiLCLJiiI6IlEiLCLik4ciOiJSIiwi77yyIjoiUiIsIsWUIjoiUiIsIuG5mCI6IlIiLCLFmCI6IlIiLCLIkCI6IlIiLCLIkiI6IlIiLCLhuZoiOiJSIiwi4bmcIjoiUiIsIsWWIjoiUiIsIuG5niI6IlIiLCLJjCI6IlIiLCLisaQiOiJSIiwi6p2aIjoiUiIsIuqepiI6IlIiLCLqnoIiOiJSIiwi4pOIIjoiUyIsIu+8syI6IlMiLCLhup4iOiJTIiwixZoiOiJTIiwi4bmkIjoiUyIsIsWcIjoiUyIsIuG5oCI6IlMiLCLFoCI6IlMiLCLhuaYiOiJTIiwi4bmiIjoiUyIsIuG5qCI6IlMiLCLImCI6IlMiLCLFniI6IlMiLCLisb4iOiJTIiwi6p6oIjoiUyIsIuqehCI6IlMiLCLik4kiOiJUIiwi77y0IjoiVCIsIuG5qiI6IlQiLCLFpCI6IlQiLCLhuawiOiJUIiwiyJoiOiJUIiwixaIiOiJUIiwi4bmwIjoiVCIsIuG5riI6IlQiLCLFpiI6IlQiLCLGrCI6IlQiLCLGriI6IlQiLCLIviI6IlQiLCLqnoYiOiJUIiwi6pyoIjoiVFoiLCLik4oiOiJVIiwi77y1IjoiVSIsIsOZIjoiVSIsIsOaIjoiVSIsIsObIjoiVSIsIsWoIjoiVSIsIuG5uCI6IlUiLCLFqiI6IlUiLCLhuboiOiJVIiwixawiOiJVIiwiw5wiOiJVIiwix5siOiJVIiwix5ciOiJVIiwix5UiOiJVIiwix5kiOiJVIiwi4bumIjoiVSIsIsWuIjoiVSIsIsWwIjoiVSIsIseTIjoiVSIsIsiUIjoiVSIsIsiWIjoiVSIsIsavIjoiVSIsIuG7qiI6IlUiLCLhu6giOiJVIiwi4buuIjoiVSIsIuG7rCI6IlUiLCLhu7AiOiJVIiwi4bukIjoiVSIsIuG5siI6IlUiLCLFsiI6IlUiLCLhubYiOiJVIiwi4bm0IjoiVSIsIsmEIjoiVSIsIuKTiyI6IlYiLCLvvLYiOiJWIiwi4bm8IjoiViIsIuG5viI6IlYiLCLGsiI6IlYiLCLqnZ4iOiJWIiwiyYUiOiJWIiwi6p2gIjoiVlkiLCLik4wiOiJXIiwi77y3IjoiVyIsIuG6gCI6IlciLCLhuoIiOiJXIiwixbQiOiJXIiwi4bqGIjoiVyIsIuG6hCI6IlciLCLhuogiOiJXIiwi4rGyIjoiVyIsIuKTjSI6IlgiLCLvvLgiOiJYIiwi4bqKIjoiWCIsIuG6jCI6IlgiLCLik44iOiJZIiwi77y5IjoiWSIsIuG7siI6IlkiLCLDnSI6IlkiLCLFtiI6IlkiLCLhu7giOiJZIiwiyLIiOiJZIiwi4bqOIjoiWSIsIsW4IjoiWSIsIuG7tiI6IlkiLCLhu7QiOiJZIiwixrMiOiJZIiwiyY4iOiJZIiwi4bu+IjoiWSIsIuKTjyI6IloiLCLvvLoiOiJaIiwixbkiOiJaIiwi4bqQIjoiWiIsIsW7IjoiWiIsIsW9IjoiWiIsIuG6kiI6IloiLCLhupQiOiJaIiwixrUiOiJaIiwiyKQiOiJaIiwi4rG/IjoiWiIsIuKxqyI6IloiLCLqnaIiOiJaIiwi4pOQIjoiYSIsIu+9gSI6ImEiLCLhupoiOiJhIiwiw6AiOiJhIiwiw6EiOiJhIiwiw6IiOiJhIiwi4bqnIjoiYSIsIuG6pSI6ImEiLCLhuqsiOiJhIiwi4bqpIjoiYSIsIsOjIjoiYSIsIsSBIjoiYSIsIsSDIjoiYSIsIuG6sSI6ImEiLCLhuq8iOiJhIiwi4bq1IjoiYSIsIuG6syI6ImEiLCLIpyI6ImEiLCLHoSI6ImEiLCLDpCI6ImEiLCLHnyI6ImEiLCLhuqMiOiJhIiwiw6UiOiJhIiwix7siOiJhIiwix44iOiJhIiwiyIEiOiJhIiwiyIMiOiJhIiwi4bqhIjoiYSIsIuG6rSI6ImEiLCLhurciOiJhIiwi4biBIjoiYSIsIsSFIjoiYSIsIuKxpSI6ImEiLCLJkCI6ImEiLCLqnLMiOiJhYSIsIsOmIjoiYWUiLCLHvSI6ImFlIiwix6MiOiJhZSIsIuqctSI6ImFvIiwi6py3IjoiYXUiLCLqnLkiOiJhdiIsIuqcuyI6ImF2Iiwi6py9IjoiYXkiLCLik5EiOiJiIiwi772CIjoiYiIsIuG4gyI6ImIiLCLhuIUiOiJiIiwi4biHIjoiYiIsIsaAIjoiYiIsIsaDIjoiYiIsIsmTIjoiYiIsIuKTkiI6ImMiLCLvvYMiOiJjIiwixIciOiJjIiwixIkiOiJjIiwixIsiOiJjIiwixI0iOiJjIiwiw6ciOiJjIiwi4biJIjoiYyIsIsaIIjoiYyIsIsi8IjoiYyIsIuqcvyI6ImMiLCLihoQiOiJjIiwi4pOTIjoiZCIsIu+9hCI6ImQiLCLhuIsiOiJkIiwixI8iOiJkIiwi4biNIjoiZCIsIuG4kSI6ImQiLCLhuJMiOiJkIiwi4biPIjoiZCIsIsSRIjoiZCIsIsaMIjoiZCIsIsmWIjoiZCIsIsmXIjoiZCIsIuqduiI6ImQiLCLHsyI6ImR6Iiwix4YiOiJkeiIsIuKTlCI6ImUiLCLvvYUiOiJlIiwiw6giOiJlIiwiw6kiOiJlIiwiw6oiOiJlIiwi4buBIjoiZSIsIuG6vyI6ImUiLCLhu4UiOiJlIiwi4buDIjoiZSIsIuG6vSI6ImUiLCLEkyI6ImUiLCLhuJUiOiJlIiwi4biXIjoiZSIsIsSVIjoiZSIsIsSXIjoiZSIsIsOrIjoiZSIsIuG6uyI6ImUiLCLEmyI6ImUiLCLIhSI6ImUiLCLIhyI6ImUiLCLhurkiOiJlIiwi4buHIjoiZSIsIsipIjoiZSIsIuG4nSI6ImUiLCLEmSI6ImUiLCLhuJkiOiJlIiwi4bibIjoiZSIsIsmHIjoiZSIsIsmbIjoiZSIsIsedIjoiZSIsIuKTlSI6ImYiLCLvvYYiOiJmIiwi4bifIjoiZiIsIsaSIjoiZiIsIuqdvCI6ImYiLCLik5YiOiJnIiwi772HIjoiZyIsIse1IjoiZyIsIsSdIjoiZyIsIuG4oSI6ImciLCLEnyI6ImciLCLEoSI6ImciLCLHpyI6ImciLCLEoyI6ImciLCLHpSI6ImciLCLJoCI6ImciLCLqnqEiOiJnIiwi4bW5IjoiZyIsIuqdvyI6ImciLCLik5ciOiJoIiwi772IIjoiaCIsIsSlIjoiaCIsIuG4oyI6ImgiLCLhuKciOiJoIiwiyJ8iOiJoIiwi4bilIjoiaCIsIuG4qSI6ImgiLCLhuKsiOiJoIiwi4bqWIjoiaCIsIsSnIjoiaCIsIuKxqCI6ImgiLCLisbYiOiJoIiwiyaUiOiJoIiwixpUiOiJodiIsIuKTmCI6ImkiLCLvvYkiOiJpIiwiw6wiOiJpIiwiw60iOiJpIiwiw64iOiJpIiwixKkiOiJpIiwixKsiOiJpIiwixK0iOiJpIiwiw68iOiJpIiwi4bivIjoiaSIsIuG7iSI6ImkiLCLHkCI6ImkiLCLIiSI6ImkiLCLIiyI6ImkiLCLhu4siOiJpIiwixK8iOiJpIiwi4bitIjoiaSIsIsmoIjoiaSIsIsSxIjoiaSIsIuKTmSI6ImoiLCLvvYoiOiJqIiwixLUiOiJqIiwix7AiOiJqIiwiyYkiOiJqIiwi4pOaIjoiayIsIu+9iyI6ImsiLCLhuLEiOiJrIiwix6kiOiJrIiwi4bizIjoiayIsIsS3IjoiayIsIuG4tSI6ImsiLCLGmSI6ImsiLCLisaoiOiJrIiwi6p2BIjoiayIsIuqdgyI6ImsiLCLqnYUiOiJrIiwi6p6jIjoiayIsIuKTmyI6ImwiLCLvvYwiOiJsIiwixYAiOiJsIiwixLoiOiJsIiwixL4iOiJsIiwi4bi3IjoibCIsIuG4uSI6ImwiLCLEvCI6ImwiLCLhuL0iOiJsIiwi4bi7IjoibCIsIsW/IjoibCIsIsWCIjoibCIsIsaaIjoibCIsIsmrIjoibCIsIuKxoSI6ImwiLCLqnYkiOiJsIiwi6p6BIjoibCIsIuqdhyI6ImwiLCLHiSI6ImxqIiwi4pOcIjoibSIsIu+9jSI6Im0iLCLhuL8iOiJtIiwi4bmBIjoibSIsIuG5gyI6Im0iLCLJsSI6Im0iLCLJryI6Im0iLCLik50iOiJuIiwi772OIjoibiIsIse5IjoibiIsIsWEIjoibiIsIsOxIjoibiIsIuG5hSI6Im4iLCLFiCI6Im4iLCLhuYciOiJuIiwixYYiOiJuIiwi4bmLIjoibiIsIuG5iSI6Im4iLCLGniI6Im4iLCLJsiI6Im4iLCLFiSI6Im4iLCLqnpEiOiJuIiwi6p6lIjoibiIsIseMIjoibmoiLCLik54iOiJvIiwi772PIjoibyIsIsOyIjoibyIsIsOzIjoibyIsIsO0IjoibyIsIuG7kyI6Im8iLCLhu5EiOiJvIiwi4buXIjoibyIsIuG7lSI6Im8iLCLDtSI6Im8iLCLhuY0iOiJvIiwiyK0iOiJvIiwi4bmPIjoibyIsIsWNIjoibyIsIuG5kSI6Im8iLCLhuZMiOiJvIiwixY8iOiJvIiwiyK8iOiJvIiwiyLEiOiJvIiwiw7YiOiJvIiwiyKsiOiJvIiwi4buPIjoibyIsIsWRIjoibyIsIseSIjoibyIsIsiNIjoibyIsIsiPIjoibyIsIsahIjoibyIsIuG7nSI6Im8iLCLhu5siOiJvIiwi4buhIjoibyIsIuG7nyI6Im8iLCLhu6MiOiJvIiwi4buNIjoibyIsIuG7mSI6Im8iLCLHqyI6Im8iLCLHrSI6Im8iLCLDuCI6Im8iLCLHvyI6Im8iLCLJlCI6Im8iLCLqnYsiOiJvIiwi6p2NIjoibyIsIsm1IjoibyIsIsWTIjoib2UiLCLGoyI6Im9pIiwiyKMiOiJvdSIsIuqdjyI6Im9vIiwi4pOfIjoicCIsIu+9kCI6InAiLCLhuZUiOiJwIiwi4bmXIjoicCIsIsalIjoicCIsIuG1vSI6InAiLCLqnZEiOiJwIiwi6p2TIjoicCIsIuqdlSI6InAiLCLik6AiOiJxIiwi772RIjoicSIsIsmLIjoicSIsIuqdlyI6InEiLCLqnZkiOiJxIiwi4pOhIjoiciIsIu+9kiI6InIiLCLFlSI6InIiLCLhuZkiOiJyIiwixZkiOiJyIiwiyJEiOiJyIiwiyJMiOiJyIiwi4bmbIjoiciIsIuG5nSI6InIiLCLFlyI6InIiLCLhuZ8iOiJyIiwiyY0iOiJyIiwiyb0iOiJyIiwi6p2bIjoiciIsIuqepyI6InIiLCLqnoMiOiJyIiwi4pOiIjoicyIsIu+9kyI6InMiLCLDnyI6InMiLCLFmyI6InMiLCLhuaUiOiJzIiwixZ0iOiJzIiwi4bmhIjoicyIsIsWhIjoicyIsIuG5pyI6InMiLCLhuaMiOiJzIiwi4bmpIjoicyIsIsiZIjoicyIsIsWfIjoicyIsIsi/IjoicyIsIuqeqSI6InMiLCLqnoUiOiJzIiwi4bqbIjoicyIsIuKToyI6InQiLCLvvZQiOiJ0Iiwi4bmrIjoidCIsIuG6lyI6InQiLCLFpSI6InQiLCLhua0iOiJ0IiwiyJsiOiJ0IiwixaMiOiJ0Iiwi4bmxIjoidCIsIuG5ryI6InQiLCLFpyI6InQiLCLGrSI6InQiLCLKiCI6InQiLCLisaYiOiJ0Iiwi6p6HIjoidCIsIuqcqSI6InR6Iiwi4pOkIjoidSIsIu+9lSI6InUiLCLDuSI6InUiLCLDuiI6InUiLCLDuyI6InUiLCLFqSI6InUiLCLhubkiOiJ1IiwixasiOiJ1Iiwi4bm7IjoidSIsIsWtIjoidSIsIsO8IjoidSIsIsecIjoidSIsIseYIjoidSIsIseWIjoidSIsIseaIjoidSIsIuG7pyI6InUiLCLFryI6InUiLCLFsSI6InUiLCLHlCI6InUiLCLIlSI6InUiLCLIlyI6InUiLCLGsCI6InUiLCLhu6siOiJ1Iiwi4bupIjoidSIsIuG7ryI6InUiLCLhu60iOiJ1Iiwi4buxIjoidSIsIuG7pSI6InUiLCLhubMiOiJ1IiwixbMiOiJ1Iiwi4bm3IjoidSIsIuG5tSI6InUiLCLKiSI6InUiLCLik6UiOiJ2Iiwi772WIjoidiIsIuG5vSI6InYiLCLhub8iOiJ2IiwiyosiOiJ2Iiwi6p2fIjoidiIsIsqMIjoidiIsIuqdoSI6InZ5Iiwi4pOmIjoidyIsIu+9lyI6InciLCLhuoEiOiJ3Iiwi4bqDIjoidyIsIsW1IjoidyIsIuG6hyI6InciLCLhuoUiOiJ3Iiwi4bqYIjoidyIsIuG6iSI6InciLCLisbMiOiJ3Iiwi4pOnIjoieCIsIu+9mCI6IngiLCLhuosiOiJ4Iiwi4bqNIjoieCIsIuKTqCI6InkiLCLvvZkiOiJ5Iiwi4buzIjoieSIsIsO9IjoieSIsIsW3IjoieSIsIuG7uSI6InkiLCLIsyI6InkiLCLhuo8iOiJ5Iiwiw78iOiJ5Iiwi4bu3IjoieSIsIuG6mSI6InkiLCLhu7UiOiJ5IiwixrQiOiJ5IiwiyY8iOiJ5Iiwi4bu/IjoieSIsIuKTqSI6InoiLCLvvZoiOiJ6IiwixboiOiJ6Iiwi4bqRIjoieiIsIsW8IjoieiIsIsW+IjoieiIsIuG6kyI6InoiLCLhupUiOiJ6IiwixrYiOiJ6IiwiyKUiOiJ6IiwiyYAiOiJ6Iiwi4rGsIjoieiIsIuqdoyI6InoiLCLOhiI6Is6RIiwizogiOiLOlSIsIs6JIjoizpciLCLOiiI6Is6ZIiwizqoiOiLOmSIsIs6MIjoizp8iLCLOjiI6Is6lIiwizqsiOiLOpSIsIs6PIjoizqkiLCLOrCI6Is6xIiwizq0iOiLOtSIsIs6uIjoizrciLCLOryI6Is65Iiwiz4oiOiLOuSIsIs6QIjoizrkiLCLPjCI6Is6/Iiwiz40iOiLPhSIsIs+LIjoiz4UiLCLOsCI6Is+FIiwiz44iOiLPiSIsIs+CIjoiz4MiLCLigJkiOiInIn19KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL2Jhc2UiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihpKXtmdW5jdGlvbiBuKGUsdCl7bi5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gaS5FeHRlbmQobixpLk9ic2VydmFibGUpLG4ucHJvdG90eXBlLmN1cnJlbnQ9ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKCJUaGUgYGN1cnJlbnRgIG1ldGhvZCBtdXN0IGJlIGRlZmluZWQgaW4gY2hpbGQgY2xhc3Nlcy4iKX0sbi5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24oZSx0KXt0aHJvdyBuZXcgRXJyb3IoIlRoZSBgcXVlcnlgIG1ldGhvZCBtdXN0IGJlIGRlZmluZWQgaW4gY2hpbGQgY2xhc3Nlcy4iKX0sbi5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe30sbi5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe30sbi5wcm90b3R5cGUuZ2VuZXJhdGVSZXN1bHRJZD1mdW5jdGlvbihlLHQpe3ZhciBuPWUuaWQrIi1yZXN1bHQtIjtyZXR1cm4gbis9aS5nZW5lcmF0ZUNoYXJzKDQpLG51bGwhPXQuaWQ/bis9Ii0iK3QuaWQudG9TdHJpbmcoKTpuKz0iLSIraS5nZW5lcmF0ZUNoYXJzKDQpLG59LG59KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL3NlbGVjdCIsWyIuL2Jhc2UiLCIuLi91dGlscyIsImpxdWVyeSJdLGZ1bmN0aW9uKGUsbCxjKXtmdW5jdGlvbiBuKGUsdCl7dGhpcy4kZWxlbWVudD1lLHRoaXMub3B0aW9ucz10LG4uX19zdXBlcl9fLmNvbnN0cnVjdG9yLmNhbGwodGhpcyl9cmV0dXJuIGwuRXh0ZW5kKG4sZSksbi5wcm90b3R5cGUuY3VycmVudD1mdW5jdGlvbihlKXt2YXIgdD10aGlzO2UoQXJyYXkucHJvdG90eXBlLm1hcC5jYWxsKHRoaXMuJGVsZW1lbnRbMF0ucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKSxmdW5jdGlvbihlKXtyZXR1cm4gdC5pdGVtKGMoZSkpfSkpfSxuLnByb3RvdHlwZS5zZWxlY3Q9ZnVuY3Rpb24ocil7dmFyIHM9dGhpcztpZihyLnNlbGVjdGVkPSEwLG51bGwhPXIuZWxlbWVudCYmIm9wdGlvbiI9PT1yLmVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpKXJldHVybiByLmVsZW1lbnQuc2VsZWN0ZWQ9ITAsdm9pZCB0aGlzLiRlbGVtZW50LnRyaWdnZXIoImlucHV0IikudHJpZ2dlcigiY2hhbmdlIik7aWYodGhpcy4kZWxlbWVudC5wcm9wKCJtdWx0aXBsZSIpKXRoaXMuY3VycmVudChmdW5jdGlvbihlKXt2YXIgdD1bXTsocj1bcl0pLnB1c2guYXBwbHkocixlKTtmb3IodmFyIG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGk9cltuXS5pZDstMT09PXQuaW5kZXhPZihpKSYmdC5wdXNoKGkpfXMuJGVsZW1lbnQudmFsKHQpLHMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKX0pO2Vsc2V7dmFyIGU9ci5pZDt0aGlzLiRlbGVtZW50LnZhbChlKSx0aGlzLiRlbGVtZW50LnRyaWdnZXIoImlucHV0IikudHJpZ2dlcigiY2hhbmdlIil9fSxuLnByb3RvdHlwZS51bnNlbGVjdD1mdW5jdGlvbihyKXt2YXIgcz10aGlzO2lmKHRoaXMuJGVsZW1lbnQucHJvcCgibXVsdGlwbGUiKSl7aWYoci5zZWxlY3RlZD0hMSxudWxsIT1yLmVsZW1lbnQmJiJvcHRpb24iPT09ci5lbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKSlyZXR1cm4gci5lbGVtZW50LnNlbGVjdGVkPSExLHZvaWQgdGhpcy4kZWxlbWVudC50cmlnZ2VyKCJpbnB1dCIpLnRyaWdnZXIoImNoYW5nZSIpO3RoaXMuY3VycmVudChmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10sbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dLmlkO2khPT1yLmlkJiYtMT09PXQuaW5kZXhPZihpKSYmdC5wdXNoKGkpfXMuJGVsZW1lbnQudmFsKHQpLHMuJGVsZW1lbnQudHJpZ2dlcigiaW5wdXQiKS50cmlnZ2VyKCJjaGFuZ2UiKX0pfX0sbi5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7KHRoaXMuY29udGFpbmVyPWUpLm9uKCJzZWxlY3QiLGZ1bmN0aW9uKGUpe24uc2VsZWN0KGUuZGF0YSl9KSxlLm9uKCJ1bnNlbGVjdCIsZnVuY3Rpb24oZSl7bi51bnNlbGVjdChlLmRhdGEpfSl9LG4ucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLiRlbGVtZW50LmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCl7bC5SZW1vdmVEYXRhKHRoaXMpfSl9LG4ucHJvdG90eXBlLnF1ZXJ5PWZ1bmN0aW9uKGksZSl7dmFyIHI9W10scz10aGlzO3RoaXMuJGVsZW1lbnQuY2hpbGRyZW4oKS5lYWNoKGZ1bmN0aW9uKCl7aWYoIm9wdGlvbiI9PT10aGlzLnRhZ05hbWUudG9Mb3dlckNhc2UoKXx8Im9wdGdyb3VwIj09PXRoaXMudGFnTmFtZS50b0xvd2VyQ2FzZSgpKXt2YXIgZT1jKHRoaXMpLHQ9cy5pdGVtKGUpLG49cy5tYXRjaGVzKGksdCk7bnVsbCE9PW4mJnIucHVzaChuKX19KSxlKHtyZXN1bHRzOnJ9KX0sbi5wcm90b3R5cGUuYWRkT3B0aW9ucz1mdW5jdGlvbihlKXt0aGlzLiRlbGVtZW50LmFwcGVuZChlKX0sbi5wcm90b3R5cGUub3B0aW9uPWZ1bmN0aW9uKGUpe3ZhciB0O2UuY2hpbGRyZW4/KHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0Z3JvdXAiKSkubGFiZWw9ZS50ZXh0OnZvaWQgMCE9PSh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKS50ZXh0Q29udGVudD90LnRleHRDb250ZW50PWUudGV4dDp0LmlubmVyVGV4dD1lLnRleHQsdm9pZCAwIT09ZS5pZCYmKHQudmFsdWU9ZS5pZCksZS5kaXNhYmxlZCYmKHQuZGlzYWJsZWQ9ITApLGUuc2VsZWN0ZWQmJih0LnNlbGVjdGVkPSEwKSxlLnRpdGxlJiYodC50aXRsZT1lLnRpdGxlKTt2YXIgbj10aGlzLl9ub3JtYWxpemVJdGVtKGUpO3JldHVybiBuLmVsZW1lbnQ9dCxsLlN0b3JlRGF0YSh0LCJkYXRhIixuKSxjKHQpfSxuLnByb3RvdHlwZS5pdGVtPWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2lmKG51bGwhPSh0PWwuR2V0RGF0YShlWzBdLCJkYXRhIikpKXJldHVybiB0O3ZhciBuPWVbMF07aWYoIm9wdGlvbiI9PT1uLnRhZ05hbWUudG9Mb3dlckNhc2UoKSl0PXtpZDplLnZhbCgpLHRleHQ6ZS50ZXh0KCksZGlzYWJsZWQ6ZS5wcm9wKCJkaXNhYmxlZCIpLHNlbGVjdGVkOmUucHJvcCgic2VsZWN0ZWQiKSx0aXRsZTplLnByb3AoInRpdGxlIil9O2Vsc2UgaWYoIm9wdGdyb3VwIj09PW4udGFnTmFtZS50b0xvd2VyQ2FzZSgpKXt0PXt0ZXh0OmUucHJvcCgibGFiZWwiKSxjaGlsZHJlbjpbXSx0aXRsZTplLnByb3AoInRpdGxlIil9O2Zvcih2YXIgaT1lLmNoaWxkcmVuKCJvcHRpb24iKSxyPVtdLHM9MDtzPGkubGVuZ3RoO3MrKyl7dmFyIG89YyhpW3NdKSxhPXRoaXMuaXRlbShvKTtyLnB1c2goYSl9dC5jaGlsZHJlbj1yfXJldHVybih0PXRoaXMuX25vcm1hbGl6ZUl0ZW0odCkpLmVsZW1lbnQ9ZVswXSxsLlN0b3JlRGF0YShlWzBdLCJkYXRhIix0KSx0fSxuLnByb3RvdHlwZS5fbm9ybWFsaXplSXRlbT1mdW5jdGlvbihlKXtlIT09T2JqZWN0KGUpJiYoZT17aWQ6ZSx0ZXh0OmV9KTtyZXR1cm4gbnVsbCE9KGU9Yy5leHRlbmQoe30se3RleHQ6IiJ9LGUpKS5pZCYmKGUuaWQ9ZS5pZC50b1N0cmluZygpKSxudWxsIT1lLnRleHQmJihlLnRleHQ9ZS50ZXh0LnRvU3RyaW5nKCkpLG51bGw9PWUuX3Jlc3VsdElkJiZlLmlkJiZudWxsIT10aGlzLmNvbnRhaW5lciYmKGUuX3Jlc3VsdElkPXRoaXMuZ2VuZXJhdGVSZXN1bHRJZCh0aGlzLmNvbnRhaW5lcixlKSksYy5leHRlbmQoe30se3NlbGVjdGVkOiExLGRpc2FibGVkOiExfSxlKX0sbi5wcm90b3R5cGUubWF0Y2hlcz1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9wdGlvbnMuZ2V0KCJtYXRjaGVyIikoZSx0KX0sbn0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvYXJyYXkiLFsiLi9zZWxlY3QiLCIuLi91dGlscyIsImpxdWVyeSJdLGZ1bmN0aW9uKGUsdCxmKXtmdW5jdGlvbiBpKGUsdCl7dGhpcy5fZGF0YVRvQ29udmVydD10LmdldCgiZGF0YSIpfHxbXSxpLl9fc3VwZXJfXy5jb25zdHJ1Y3Rvci5jYWxsKHRoaXMsZSx0KX1yZXR1cm4gdC5FeHRlbmQoaSxlKSxpLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCl7aS5fX3N1cGVyX18uYmluZC5jYWxsKHRoaXMsZSx0KSx0aGlzLmFkZE9wdGlvbnModGhpcy5jb252ZXJ0VG9PcHRpb25zKHRoaXMuX2RhdGFUb0NvbnZlcnQpKX0saS5wcm90b3R5cGUuc2VsZWN0PWZ1bmN0aW9uKG4pe3ZhciBlPXRoaXMuJGVsZW1lbnQuZmluZCgib3B0aW9uIikuZmlsdGVyKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQudmFsdWU9PW4uaWQudG9TdHJpbmcoKX0pOzA9PT1lLmxlbmd0aCYmKGU9dGhpcy5vcHRpb24obiksdGhpcy5hZGRPcHRpb25zKGUpKSxpLl9fc3VwZXJfXy5zZWxlY3QuY2FsbCh0aGlzLG4pfSxpLnByb3RvdHlwZS5jb252ZXJ0VG9PcHRpb25zPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbj10aGlzLiRlbGVtZW50LmZpbmQoIm9wdGlvbiIpLGk9bi5tYXAoZnVuY3Rpb24oKXtyZXR1cm4gdC5pdGVtKGYodGhpcykpLmlkfSkuZ2V0KCkscj1bXTtmdW5jdGlvbiBzKGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBmKHRoaXMpLnZhbCgpPT1lLmlkfX1mb3IodmFyIG89MDtvPGUubGVuZ3RoO28rKyl7dmFyIGE9dGhpcy5fbm9ybWFsaXplSXRlbShlW29dKTtpZigwPD1pLmluZGV4T2YoYS5pZCkpe3ZhciBsPW4uZmlsdGVyKHMoYSkpLGM9dGhpcy5pdGVtKGwpLHU9Zi5leHRlbmQoITAse30sYSxjKSxkPXRoaXMub3B0aW9uKHUpO2wucmVwbGFjZVdpdGgoZCl9ZWxzZXt2YXIgcD10aGlzLm9wdGlvbihhKTtpZihhLmNoaWxkcmVuKXt2YXIgaD10aGlzLmNvbnZlcnRUb09wdGlvbnMoYS5jaGlsZHJlbik7cC5hcHBlbmQoaCl9ci5wdXNoKHApfX1yZXR1cm4gcn0saX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvYWpheCIsWyIuL2FycmF5IiwiLi4vdXRpbHMiLCJqcXVlcnkiXSxmdW5jdGlvbihlLHQscyl7ZnVuY3Rpb24gbihlLHQpe3RoaXMuYWpheE9wdGlvbnM9dGhpcy5fYXBwbHlEZWZhdWx0cyh0LmdldCgiYWpheCIpKSxudWxsIT10aGlzLmFqYXhPcHRpb25zLnByb2Nlc3NSZXN1bHRzJiYodGhpcy5wcm9jZXNzUmVzdWx0cz10aGlzLmFqYXhPcHRpb25zLnByb2Nlc3NSZXN1bHRzKSxuLl9fc3VwZXJfXy5jb25zdHJ1Y3Rvci5jYWxsKHRoaXMsZSx0KX1yZXR1cm4gdC5FeHRlbmQobixlKSxuLnByb3RvdHlwZS5fYXBwbHlEZWZhdWx0cz1mdW5jdGlvbihlKXt2YXIgdD17ZGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gcy5leHRlbmQoe30sZSx7cTplLnRlcm19KX0sdHJhbnNwb3J0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgaT1zLmFqYXgoZSk7cmV0dXJuIGkudGhlbih0KSxpLmZhaWwobiksaX19O3JldHVybiBzLmV4dGVuZCh7fSx0LGUsITApfSxuLnByb3RvdHlwZS5wcm9jZXNzUmVzdWx0cz1mdW5jdGlvbihlKXtyZXR1cm4gZX0sbi5wcm90b3R5cGUucXVlcnk9ZnVuY3Rpb24obixpKXt2YXIgcj10aGlzO251bGwhPXRoaXMuX3JlcXVlc3QmJihzLmlzRnVuY3Rpb24odGhpcy5fcmVxdWVzdC5hYm9ydCkmJnRoaXMuX3JlcXVlc3QuYWJvcnQoKSx0aGlzLl9yZXF1ZXN0PW51bGwpO3ZhciB0PXMuZXh0ZW5kKHt0eXBlOiJHRVQifSx0aGlzLmFqYXhPcHRpb25zKTtmdW5jdGlvbiBlKCl7dmFyIGU9dC50cmFuc3BvcnQodCxmdW5jdGlvbihlKXt2YXIgdD1yLnByb2Nlc3NSZXN1bHRzKGUsbik7ci5vcHRpb25zLmdldCgiZGVidWciKSYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUuZXJyb3ImJih0JiZ0LnJlc3VsdHMmJkFycmF5LmlzQXJyYXkodC5yZXN1bHRzKXx8Y29uc29sZS5lcnJvcigiU2VsZWN0MjogVGhlIEFKQVggcmVzdWx0cyBkaWQgbm90IHJldHVybiBhbiBhcnJheSBpbiB0aGUgYHJlc3VsdHNgIGtleSBvZiB0aGUgcmVzcG9uc2UuIikpLGkodCl9LGZ1bmN0aW9uKCl7InN0YXR1cyJpbiBlJiYoMD09PWUuc3RhdHVzfHwiMCI9PT1lLnN0YXR1cyl8fHIudHJpZ2dlcigicmVzdWx0czptZXNzYWdlIix7bWVzc2FnZToiZXJyb3JMb2FkaW5nIn0pfSk7ci5fcmVxdWVzdD1lfSJmdW5jdGlvbiI9PXR5cGVvZiB0LnVybCYmKHQudXJsPXQudXJsLmNhbGwodGhpcy4kZWxlbWVudCxuKSksImZ1bmN0aW9uIj09dHlwZW9mIHQuZGF0YSYmKHQuZGF0YT10LmRhdGEuY2FsbCh0aGlzLiRlbGVtZW50LG4pKSx0aGlzLmFqYXhPcHRpb25zLmRlbGF5JiZudWxsIT1uLnRlcm0/KHRoaXMuX3F1ZXJ5VGltZW91dCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9xdWVyeVRpbWVvdXQpLHRoaXMuX3F1ZXJ5VGltZW91dD13aW5kb3cuc2V0VGltZW91dChlLHRoaXMuYWpheE9wdGlvbnMuZGVsYXkpKTplKCl9LG59KSxlLmRlZmluZSgic2VsZWN0Mi9kYXRhL3RhZ3MiLFsianF1ZXJ5Il0sZnVuY3Rpb24odCl7ZnVuY3Rpb24gZShlLHQsbil7dmFyIGk9bi5nZXQoInRhZ3MiKSxyPW4uZ2V0KCJjcmVhdGVUYWciKTt2b2lkIDAhPT1yJiYodGhpcy5jcmVhdGVUYWc9cik7dmFyIHM9bi5nZXQoImluc2VydFRhZyIpO2lmKHZvaWQgMCE9PXMmJih0aGlzLmluc2VydFRhZz1zKSxlLmNhbGwodGhpcyx0LG4pLEFycmF5LmlzQXJyYXkoaSkpZm9yKHZhciBvPTA7bzxpLmxlbmd0aDtvKyspe3ZhciBhPWlbb10sbD10aGlzLl9ub3JtYWxpemVJdGVtKGEpLGM9dGhpcy5vcHRpb24obCk7dGhpcy4kZWxlbWVudC5hcHBlbmQoYyl9fXJldHVybiBlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLGMsdSl7dmFyIGQ9dGhpczt0aGlzLl9yZW1vdmVPbGRUYWdzKCksbnVsbCE9Yy50ZXJtJiZudWxsPT1jLnBhZ2U/ZS5jYWxsKHRoaXMsYyxmdW5jdGlvbiBlKHQsbil7Zm9yKHZhciBpPXQucmVzdWx0cyxyPTA7cjxpLmxlbmd0aDtyKyspe3ZhciBzPWlbcl0sbz1udWxsIT1zLmNoaWxkcmVuJiYhZSh7cmVzdWx0czpzLmNoaWxkcmVufSwhMCk7aWYoKHMudGV4dHx8IiIpLnRvVXBwZXJDYXNlKCk9PT0oYy50ZXJtfHwiIikudG9VcHBlckNhc2UoKXx8bylyZXR1cm4hbiYmKHQuZGF0YT1pLHZvaWQgdSh0KSl9aWYobilyZXR1cm4hMDt2YXIgYT1kLmNyZWF0ZVRhZyhjKTtpZihudWxsIT1hKXt2YXIgbD1kLm9wdGlvbihhKTtsLmF0dHIoImRhdGEtc2VsZWN0Mi10YWciLCEwKSxkLmFkZE9wdGlvbnMoW2xdKSxkLmluc2VydFRhZyhpLGEpfXQucmVzdWx0cz1pLHUodCl9KTplLmNhbGwodGhpcyxjLHUpfSxlLnByb3RvdHlwZS5jcmVhdGVUYWc9ZnVuY3Rpb24oZSx0KXtpZihudWxsPT10LnRlcm0pcmV0dXJuIG51bGw7dmFyIG49dC50ZXJtLnRyaW0oKTtyZXR1cm4iIj09PW4/bnVsbDp7aWQ6bix0ZXh0Om59fSxlLnByb3RvdHlwZS5pbnNlcnRUYWc9ZnVuY3Rpb24oZSx0LG4pe3QudW5zaGlmdChuKX0sZS5wcm90b3R5cGUuX3JlbW92ZU9sZFRhZ3M9ZnVuY3Rpb24oZSl7dGhpcy4kZWxlbWVudC5maW5kKCJvcHRpb25bZGF0YS1zZWxlY3QyLXRhZ10iKS5lYWNoKGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZHx8dCh0aGlzKS5yZW1vdmUoKX0pfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZGF0YS90b2tlbml6ZXIiLFsianF1ZXJ5Il0sZnVuY3Rpb24oZCl7ZnVuY3Rpb24gZShlLHQsbil7dmFyIGk9bi5nZXQoInRva2VuaXplciIpO3ZvaWQgMCE9PWkmJih0aGlzLnRva2VuaXplcj1pKSxlLmNhbGwodGhpcyx0LG4pfXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXtlLmNhbGwodGhpcyx0LG4pLHRoaXMuJHNlYXJjaD10LmRyb3Bkb3duLiRzZWFyY2h8fHQuc2VsZWN0aW9uLiRzZWFyY2h8fG4uZmluZCgiLnNlbGVjdDItc2VhcmNoX19maWVsZCIpfSxlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpczt0LnRlcm09dC50ZXJtfHwiIjt2YXIgcj10aGlzLnRva2VuaXplcih0LHRoaXMub3B0aW9ucyxmdW5jdGlvbihlKXt2YXIgdD1pLl9ub3JtYWxpemVJdGVtKGUpO2lmKCFpLiRlbGVtZW50LmZpbmQoIm9wdGlvbiIpLmZpbHRlcihmdW5jdGlvbigpe3JldHVybiBkKHRoaXMpLnZhbCgpPT09dC5pZH0pLmxlbmd0aCl7dmFyIG49aS5vcHRpb24odCk7bi5hdHRyKCJkYXRhLXNlbGVjdDItdGFnIiwhMCksaS5fcmVtb3ZlT2xkVGFncygpLGkuYWRkT3B0aW9ucyhbbl0pfSFmdW5jdGlvbihlKXtpLnRyaWdnZXIoInNlbGVjdCIse2RhdGE6ZX0pfSh0KX0pO3IudGVybSE9PXQudGVybSYmKHRoaXMuJHNlYXJjaC5sZW5ndGgmJih0aGlzLiRzZWFyY2gudmFsKHIudGVybSksdGhpcy4kc2VhcmNoLnRyaWdnZXIoImZvY3VzIikpLHQudGVybT1yLnRlcm0pLGUuY2FsbCh0aGlzLHQsbil9LGUucHJvdG90eXBlLnRva2VuaXplcj1mdW5jdGlvbihlLHQsbixpKXtmb3IodmFyIHI9bi5nZXQoInRva2VuU2VwYXJhdG9ycyIpfHxbXSxzPXQudGVybSxvPTAsYT10aGlzLmNyZWF0ZVRhZ3x8ZnVuY3Rpb24oZSl7cmV0dXJue2lkOmUudGVybSx0ZXh0OmUudGVybX19O288cy5sZW5ndGg7KXt2YXIgbD1zW29dO2lmKC0xIT09ci5pbmRleE9mKGwpKXt2YXIgYz1zLnN1YnN0cigwLG8pLHU9YShkLmV4dGVuZCh7fSx0LHt0ZXJtOmN9KSk7bnVsbCE9dT8oaSh1KSxzPXMuc3Vic3RyKG8rMSl8fCIiLG89MCk6bysrfWVsc2UgbysrfXJldHVybnt0ZXJtOnN9fSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZGF0YS9taW5pbXVtSW5wdXRMZW5ndGgiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQsbil7dGhpcy5taW5pbXVtSW5wdXRMZW5ndGg9bi5nZXQoIm1pbmltdW1JbnB1dExlbmd0aCIpLGUuY2FsbCh0aGlzLHQsbil9cmV0dXJuIGUucHJvdG90eXBlLnF1ZXJ5PWZ1bmN0aW9uKGUsdCxuKXt0LnRlcm09dC50ZXJtfHwiIix0LnRlcm0ubGVuZ3RoPHRoaXMubWluaW11bUlucHV0TGVuZ3RoP3RoaXMudHJpZ2dlcigicmVzdWx0czptZXNzYWdlIix7bWVzc2FnZToiaW5wdXRUb29TaG9ydCIsYXJnczp7bWluaW11bTp0aGlzLm1pbmltdW1JbnB1dExlbmd0aCxpbnB1dDp0LnRlcm0scGFyYW1zOnR9fSk6ZS5jYWxsKHRoaXMsdCxuKX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvbWF4aW11bUlucHV0TGVuZ3RoIixbXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0LG4pe3RoaXMubWF4aW11bUlucHV0TGVuZ3RoPW4uZ2V0KCJtYXhpbXVtSW5wdXRMZW5ndGgiKSxlLmNhbGwodGhpcyx0LG4pfXJldHVybiBlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLHQsbil7dC50ZXJtPXQudGVybXx8IiIsMDx0aGlzLm1heGltdW1JbnB1dExlbmd0aCYmdC50ZXJtLmxlbmd0aD50aGlzLm1heGltdW1JbnB1dExlbmd0aD90aGlzLnRyaWdnZXIoInJlc3VsdHM6bWVzc2FnZSIse21lc3NhZ2U6ImlucHV0VG9vTG9uZyIsYXJnczp7bWF4aW11bTp0aGlzLm1heGltdW1JbnB1dExlbmd0aCxpbnB1dDp0LnRlcm0scGFyYW1zOnR9fSk6ZS5jYWxsKHRoaXMsdCxuKX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2RhdGEvbWF4aW11bVNlbGVjdGlvbkxlbmd0aCIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuKXt0aGlzLm1heGltdW1TZWxlY3Rpb25MZW5ndGg9bi5nZXQoIm1heGltdW1TZWxlY3Rpb25MZW5ndGgiKSxlLmNhbGwodGhpcyx0LG4pfXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzO2UuY2FsbCh0aGlzLHQsbiksdC5vbigic2VsZWN0IixmdW5jdGlvbigpe2kuX2NoZWNrSWZNYXhpbXVtU2VsZWN0ZWQoKX0pfSxlLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpczt0aGlzLl9jaGVja0lmTWF4aW11bVNlbGVjdGVkKGZ1bmN0aW9uKCl7ZS5jYWxsKGksdCxuKX0pfSxlLnByb3RvdHlwZS5fY2hlY2tJZk1heGltdW1TZWxlY3RlZD1mdW5jdGlvbihlLG4pe3ZhciBpPXRoaXM7dGhpcy5jdXJyZW50KGZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPWU/ZS5sZW5ndGg6MDswPGkubWF4aW11bVNlbGVjdGlvbkxlbmd0aCYmdD49aS5tYXhpbXVtU2VsZWN0aW9uTGVuZ3RoP2kudHJpZ2dlcigicmVzdWx0czptZXNzYWdlIix7bWVzc2FnZToibWF4aW11bVNlbGVjdGVkIixhcmdzOnttYXhpbXVtOmkubWF4aW11bVNlbGVjdGlvbkxlbmd0aH19KTpuJiZuKCl9KX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duIixbImpxdWVyeSIsIi4vdXRpbHMiXSxmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIG4oZSx0KXt0aGlzLiRlbGVtZW50PWUsdGhpcy5vcHRpb25zPXQsbi5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKX1yZXR1cm4gZS5FeHRlbmQobixlLk9ic2VydmFibGUpLG4ucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbigpe3ZhciBlPXQoJzxzcGFuIGNsYXNzPSJzZWxlY3QyLWRyb3Bkb3duIj48c3BhbiBjbGFzcz0ic2VsZWN0Mi1yZXN1bHRzIj48L3NwYW4+PC9zcGFuPicpO3JldHVybiBlLmF0dHIoImRpciIsdGhpcy5vcHRpb25zLmdldCgiZGlyIikpLHRoaXMuJGRyb3Bkb3duPWV9LG4ucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt9LG4ucHJvdG90eXBlLnBvc2l0aW9uPWZ1bmN0aW9uKGUsdCl7fSxuLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy4kZHJvcGRvd24ucmVtb3ZlKCl9LG59KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9zZWFyY2giLFsianF1ZXJ5Il0sZnVuY3Rpb24ocyl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2FsbCh0aGlzKSxuPXMoJzxzcGFuIGNsYXNzPSJzZWxlY3QyLXNlYXJjaCBzZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24iPjxpbnB1dCBjbGFzcz0ic2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIiB0eXBlPSJzZWFyY2giIHRhYmluZGV4PSItMSIgYXV0b2NvcnJlY3Q9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im5vbmUiIHNwZWxsY2hlY2s9ImZhbHNlIiByb2xlPSJzZWFyY2hib3giIGFyaWEtYXV0b2NvbXBsZXRlPSJsaXN0IiAvPjwvc3Bhbj4nKTtyZXR1cm4gdGhpcy4kc2VhcmNoQ29udGFpbmVyPW4sdGhpcy4kc2VhcmNoPW4uZmluZCgiaW5wdXQiKSx0aGlzLiRzZWFyY2gucHJvcCgiYXV0b2NvbXBsZXRlIix0aGlzLm9wdGlvbnMuZ2V0KCJhdXRvY29tcGxldGUiKSksdC5wcmVwZW5kKG4pLHR9LGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXMscj10LmlkKyItcmVzdWx0cyI7ZS5jYWxsKHRoaXMsdCxuKSx0aGlzLiRzZWFyY2gub24oImtleWRvd24iLGZ1bmN0aW9uKGUpe2kudHJpZ2dlcigia2V5cHJlc3MiLGUpLGkuX2tleVVwUHJldmVudGVkPWUuaXNEZWZhdWx0UHJldmVudGVkKCl9KSx0aGlzLiRzZWFyY2gub24oImlucHV0IixmdW5jdGlvbihlKXtzKHRoaXMpLm9mZigia2V5dXAiKX0pLHRoaXMuJHNlYXJjaC5vbigia2V5dXAgaW5wdXQiLGZ1bmN0aW9uKGUpe2kuaGFuZGxlU2VhcmNoKGUpfSksdC5vbigib3BlbiIsZnVuY3Rpb24oKXtpLiRzZWFyY2guYXR0cigidGFiaW5kZXgiLDApLGkuJHNlYXJjaC5hdHRyKCJhcmlhLWNvbnRyb2xzIixyKSxpLiRzZWFyY2gudHJpZ2dlcigiZm9jdXMiKSx3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2kuJHNlYXJjaC50cmlnZ2VyKCJmb2N1cyIpfSwwKX0pLHQub24oImNsb3NlIixmdW5jdGlvbigpe2kuJHNlYXJjaC5hdHRyKCJ0YWJpbmRleCIsLTEpLGkuJHNlYXJjaC5yZW1vdmVBdHRyKCJhcmlhLWNvbnRyb2xzIiksaS4kc2VhcmNoLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpLGkuJHNlYXJjaC52YWwoIiIpLGkuJHNlYXJjaC50cmlnZ2VyKCJibHVyIil9KSx0Lm9uKCJmb2N1cyIsZnVuY3Rpb24oKXt0LmlzT3BlbigpfHxpLiRzZWFyY2gudHJpZ2dlcigiZm9jdXMiKX0pLHQub24oInJlc3VsdHM6YWxsIixmdW5jdGlvbihlKXtudWxsIT1lLnF1ZXJ5LnRlcm0mJiIiIT09ZS5xdWVyeS50ZXJtfHwoaS5zaG93U2VhcmNoKGUpP2kuJHNlYXJjaENvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLXNlYXJjaC0taGlkZSIpOmkuJHNlYXJjaENvbnRhaW5lclswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLXNlYXJjaC0taGlkZSIpKX0pLHQub24oInJlc3VsdHM6Zm9jdXMiLGZ1bmN0aW9uKGUpe2UuZGF0YS5fcmVzdWx0SWQ/aS4kc2VhcmNoLmF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIsZS5kYXRhLl9yZXN1bHRJZCk6aS4kc2VhcmNoLnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpfSl9LGUucHJvdG90eXBlLmhhbmRsZVNlYXJjaD1mdW5jdGlvbihlKXtpZighdGhpcy5fa2V5VXBQcmV2ZW50ZWQpe3ZhciB0PXRoaXMuJHNlYXJjaC52YWwoKTt0aGlzLnRyaWdnZXIoInF1ZXJ5Iix7dGVybTp0fSl9dGhpcy5fa2V5VXBQcmV2ZW50ZWQ9ITF9LGUucHJvdG90eXBlLnNob3dTZWFyY2g9ZnVuY3Rpb24oZSx0KXtyZXR1cm4hMH0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL2hpZGVQbGFjZWhvbGRlciIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuLGkpe3RoaXMucGxhY2Vob2xkZXI9dGhpcy5ub3JtYWxpemVQbGFjZWhvbGRlcihuLmdldCgicGxhY2Vob2xkZXIiKSksZS5jYWxsKHRoaXMsdCxuLGkpfXJldHVybiBlLnByb3RvdHlwZS5hcHBlbmQ9ZnVuY3Rpb24oZSx0KXt0LnJlc3VsdHM9dGhpcy5yZW1vdmVQbGFjZWhvbGRlcih0LnJlc3VsdHMpLGUuY2FsbCh0aGlzLHQpfSxlLnByb3RvdHlwZS5ub3JtYWxpemVQbGFjZWhvbGRlcj1mdW5jdGlvbihlLHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdCYmKHQ9e2lkOiIiLHRleHQ6dH0pLHR9LGUucHJvdG90eXBlLnJlbW92ZVBsYWNlaG9sZGVyPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPXQuc2xpY2UoMCksaT10Lmxlbmd0aC0xOzA8PWk7aS0tKXt2YXIgcj10W2ldO3RoaXMucGxhY2Vob2xkZXIuaWQ9PT1yLmlkJiZuLnNwbGljZShpLDEpfXJldHVybiBufSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZHJvcGRvd24vaW5maW5pdGVTY3JvbGwiLFsianF1ZXJ5Il0sZnVuY3Rpb24obil7ZnVuY3Rpb24gZShlLHQsbixpKXt0aGlzLmxhc3RQYXJhbXM9e30sZS5jYWxsKHRoaXMsdCxuLGkpLHRoaXMuJGxvYWRpbmdNb3JlPXRoaXMuY3JlYXRlTG9hZGluZ01vcmUoKSx0aGlzLmxvYWRpbmc9ITF9cmV0dXJuIGUucHJvdG90eXBlLmFwcGVuZD1mdW5jdGlvbihlLHQpe3RoaXMuJGxvYWRpbmdNb3JlLnJlbW92ZSgpLHRoaXMubG9hZGluZz0hMSxlLmNhbGwodGhpcyx0KSx0aGlzLnNob3dMb2FkaW5nTW9yZSh0KSYmKHRoaXMuJHJlc3VsdHMuYXBwZW5kKHRoaXMuJGxvYWRpbmdNb3JlKSx0aGlzLmxvYWRNb3JlSWZOZWVkZWQoKSl9LGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXM7ZS5jYWxsKHRoaXMsdCxuKSx0Lm9uKCJxdWVyeSIsZnVuY3Rpb24oZSl7aS5sYXN0UGFyYW1zPWUsaS5sb2FkaW5nPSEwfSksdC5vbigicXVlcnk6YXBwZW5kIixmdW5jdGlvbihlKXtpLmxhc3RQYXJhbXM9ZSxpLmxvYWRpbmc9ITB9KSx0aGlzLiRyZXN1bHRzLm9uKCJzY3JvbGwiLHRoaXMubG9hZE1vcmVJZk5lZWRlZC5iaW5kKHRoaXMpKX0sZS5wcm90b3R5cGUubG9hZE1vcmVJZk5lZWRlZD1mdW5jdGlvbigpe3ZhciBlPW4uY29udGFpbnMoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMuJGxvYWRpbmdNb3JlWzBdKTtpZighdGhpcy5sb2FkaW5nJiZlKXt2YXIgdD10aGlzLiRyZXN1bHRzLm9mZnNldCgpLnRvcCt0aGlzLiRyZXN1bHRzLm91dGVySGVpZ2h0KCExKTt0aGlzLiRsb2FkaW5nTW9yZS5vZmZzZXQoKS50b3ArdGhpcy4kbG9hZGluZ01vcmUub3V0ZXJIZWlnaHQoITEpPD10KzUwJiZ0aGlzLmxvYWRNb3JlKCl9fSxlLnByb3RvdHlwZS5sb2FkTW9yZT1mdW5jdGlvbigpe3RoaXMubG9hZGluZz0hMDt2YXIgZT1uLmV4dGVuZCh7fSx7cGFnZToxfSx0aGlzLmxhc3RQYXJhbXMpO2UucGFnZSsrLHRoaXMudHJpZ2dlcigicXVlcnk6YXBwZW5kIixlKX0sZS5wcm90b3R5cGUuc2hvd0xvYWRpbmdNb3JlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQucGFnaW5hdGlvbiYmdC5wYWdpbmF0aW9uLm1vcmV9LGUucHJvdG90eXBlLmNyZWF0ZUxvYWRpbmdNb3JlPWZ1bmN0aW9uKCl7dmFyIGU9bignPGxpIGNsYXNzPSJzZWxlY3QyLXJlc3VsdHNfX29wdGlvbiBzZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tbG9hZC1tb3JlInJvbGU9Im9wdGlvbiIgYXJpYS1kaXNhYmxlZD0idHJ1ZSI+PC9saT4nKSx0PXRoaXMub3B0aW9ucy5nZXQoInRyYW5zbGF0aW9ucyIpLmdldCgibG9hZGluZ01vcmUiKTtyZXR1cm4gZS5odG1sKHQodGhpcy5sYXN0UGFyYW1zKSksZX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL2F0dGFjaEJvZHkiLFsianF1ZXJ5IiwiLi4vdXRpbHMiXSxmdW5jdGlvbihmLGEpe2Z1bmN0aW9uIGUoZSx0LG4pe3RoaXMuJGRyb3Bkb3duUGFyZW50PWYobi5nZXQoImRyb3Bkb3duUGFyZW50Iil8fGRvY3VtZW50LmJvZHkpLGUuY2FsbCh0aGlzLHQsbil9cmV0dXJuIGUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXM7ZS5jYWxsKHRoaXMsdCxuKSx0Lm9uKCJvcGVuIixmdW5jdGlvbigpe2kuX3Nob3dEcm9wZG93bigpLGkuX2F0dGFjaFBvc2l0aW9uaW5nSGFuZGxlcih0KSxpLl9iaW5kQ29udGFpbmVyUmVzdWx0SGFuZGxlcnModCl9KSx0Lm9uKCJjbG9zZSIsZnVuY3Rpb24oKXtpLl9oaWRlRHJvcGRvd24oKSxpLl9kZXRhY2hQb3NpdGlvbmluZ0hhbmRsZXIodCl9KSx0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5vbigibW91c2Vkb3duIixmdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpfSl9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oZSl7ZS5jYWxsKHRoaXMpLHRoaXMuJGRyb3Bkb3duQ29udGFpbmVyLnJlbW92ZSgpfSxlLnByb3RvdHlwZS5wb3NpdGlvbj1mdW5jdGlvbihlLHQsbil7dC5hdHRyKCJjbGFzcyIsbi5hdHRyKCJjbGFzcyIpKSx0WzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDIiKSx0WzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS1vcGVuIiksdC5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOi05OTk5OTl9KSx0aGlzLiRjb250YWluZXI9bn0sZS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWYoIjxzcGFuPjwvc3Bhbj4iKSxuPWUuY2FsbCh0aGlzKTtyZXR1cm4gdC5hcHBlbmQobiksdGhpcy4kZHJvcGRvd25Db250YWluZXI9dH0sZS5wcm90b3R5cGUuX2hpZGVEcm9wZG93bj1mdW5jdGlvbihlKXt0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5kZXRhY2goKX0sZS5wcm90b3R5cGUuX2JpbmRDb250YWluZXJSZXN1bHRIYW5kbGVycz1mdW5jdGlvbihlLHQpe2lmKCF0aGlzLl9jb250YWluZXJSZXN1bHRzSGFuZGxlcnNCb3VuZCl7dmFyIG49dGhpczt0Lm9uKCJyZXN1bHRzOmFsbCIsZnVuY3Rpb24oKXtuLl9wb3NpdGlvbkRyb3Bkb3duKCksbi5fcmVzaXplRHJvcGRvd24oKX0pLHQub24oInJlc3VsdHM6YXBwZW5kIixmdW5jdGlvbigpe24uX3Bvc2l0aW9uRHJvcGRvd24oKSxuLl9yZXNpemVEcm9wZG93bigpfSksdC5vbigicmVzdWx0czptZXNzYWdlIixmdW5jdGlvbigpe24uX3Bvc2l0aW9uRHJvcGRvd24oKSxuLl9yZXNpemVEcm9wZG93bigpfSksdC5vbigic2VsZWN0IixmdW5jdGlvbigpe24uX3Bvc2l0aW9uRHJvcGRvd24oKSxuLl9yZXNpemVEcm9wZG93bigpfSksdC5vbigidW5zZWxlY3QiLGZ1bmN0aW9uKCl7bi5fcG9zaXRpb25Ecm9wZG93bigpLG4uX3Jlc2l6ZURyb3Bkb3duKCl9KSx0aGlzLl9jb250YWluZXJSZXN1bHRzSGFuZGxlcnNCb3VuZD0hMH19LGUucHJvdG90eXBlLl9hdHRhY2hQb3NpdGlvbmluZ0hhbmRsZXI9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLGk9InNjcm9sbC5zZWxlY3QyLiIrdC5pZCxyPSJyZXNpemUuc2VsZWN0Mi4iK3QuaWQscz0ib3JpZW50YXRpb25jaGFuZ2Uuc2VsZWN0Mi4iK3QuaWQsbz10aGlzLiRjb250YWluZXIucGFyZW50cygpLmZpbHRlcihhLmhhc1Njcm9sbCk7by5lYWNoKGZ1bmN0aW9uKCl7YS5TdG9yZURhdGEodGhpcywic2VsZWN0Mi1zY3JvbGwtcG9zaXRpb24iLHt4OmYodGhpcykuc2Nyb2xsTGVmdCgpLHk6Zih0aGlzKS5zY3JvbGxUb3AoKX0pfSksby5vbihpLGZ1bmN0aW9uKGUpe3ZhciB0PWEuR2V0RGF0YSh0aGlzLCJzZWxlY3QyLXNjcm9sbC1wb3NpdGlvbiIpO2YodGhpcykuc2Nyb2xsVG9wKHQueSl9KSxmKHdpbmRvdykub24oaSsiICIrcisiICIrcyxmdW5jdGlvbihlKXtuLl9wb3NpdGlvbkRyb3Bkb3duKCksbi5fcmVzaXplRHJvcGRvd24oKX0pfSxlLnByb3RvdHlwZS5fZGV0YWNoUG9zaXRpb25pbmdIYW5kbGVyPWZ1bmN0aW9uKGUsdCl7dmFyIG49InNjcm9sbC5zZWxlY3QyLiIrdC5pZCxpPSJyZXNpemUuc2VsZWN0Mi4iK3QuaWQscj0ib3JpZW50YXRpb25jaGFuZ2Uuc2VsZWN0Mi4iK3QuaWQ7dGhpcy4kY29udGFpbmVyLnBhcmVudHMoKS5maWx0ZXIoYS5oYXNTY3JvbGwpLm9mZihuKSxmKHdpbmRvdykub2ZmKG4rIiAiK2krIiAiK3IpfSxlLnByb3RvdHlwZS5fcG9zaXRpb25Ecm9wZG93bj1mdW5jdGlvbigpe3ZhciBlPWYod2luZG93KSx0PXRoaXMuJGRyb3Bkb3duWzBdLmNsYXNzTGlzdC5jb250YWlucygic2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUiKSxuPXRoaXMuJGRyb3Bkb3duWzBdLmNsYXNzTGlzdC5jb250YWlucygic2VsZWN0Mi1kcm9wZG93bi0tYmVsb3ciKSxpPW51bGwscj10aGlzLiRjb250YWluZXIub2Zmc2V0KCk7ci5ib3R0b209ci50b3ArdGhpcy4kY29udGFpbmVyLm91dGVySGVpZ2h0KCExKTt2YXIgcz17aGVpZ2h0OnRoaXMuJGNvbnRhaW5lci5vdXRlckhlaWdodCghMSl9O3MudG9wPXIudG9wLHMuYm90dG9tPXIudG9wK3MuaGVpZ2h0O3ZhciBvPXRoaXMuJGRyb3Bkb3duLm91dGVySGVpZ2h0KCExKSxhPWUuc2Nyb2xsVG9wKCksbD1lLnNjcm9sbFRvcCgpK2UuaGVpZ2h0KCksYz1hPHIudG9wLW8sdT1sPnIuYm90dG9tK28sZD17bGVmdDpyLmxlZnQsdG9wOnMuYm90dG9tfSxwPXRoaXMuJGRyb3Bkb3duUGFyZW50OyJzdGF0aWMiPT09cC5jc3MoInBvc2l0aW9uIikmJihwPXAub2Zmc2V0UGFyZW50KCkpO3ZhciBoPXt0b3A6MCxsZWZ0OjB9OyhmLmNvbnRhaW5zKGRvY3VtZW50LmJvZHkscFswXSl8fHBbMF0uaXNDb25uZWN0ZWQpJiYoaD1wLm9mZnNldCgpKSxkLnRvcC09aC50b3AsZC5sZWZ0LT1oLmxlZnQsdHx8bnx8KGk9ImJlbG93IiksdXx8IWN8fHQ/IWMmJnUmJnQmJihpPSJiZWxvdyIpOmk9ImFib3ZlIiwoImFib3ZlIj09aXx8dCYmImJlbG93IiE9PWkpJiYoZC50b3A9cy50b3AtaC50b3AtbyksbnVsbCE9aSYmKHRoaXMuJGRyb3Bkb3duWzBdLmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdDItZHJvcGRvd24tLWJlbG93IiksdGhpcy4kZHJvcGRvd25bMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUiKSx0aGlzLiRkcm9wZG93blswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWRyb3Bkb3duLS0iK2kpLHRoaXMuJGNvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWNvbnRhaW5lci0tYmVsb3ciKSx0aGlzLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1jb250YWluZXItLWFib3ZlIiksdGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS0iK2kpKSx0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5jc3MoZCl9LGUucHJvdG90eXBlLl9yZXNpemVEcm9wZG93bj1mdW5jdGlvbigpe3ZhciBlPXt3aWR0aDp0aGlzLiRjb250YWluZXIub3V0ZXJXaWR0aCghMSkrInB4In07dGhpcy5vcHRpb25zLmdldCgiZHJvcGRvd25BdXRvV2lkdGgiKSYmKGUubWluV2lkdGg9ZS53aWR0aCxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsZS53aWR0aD0iYXV0byIpLHRoaXMuJGRyb3Bkb3duLmNzcyhlKX0sZS5wcm90b3R5cGUuX3Nob3dEcm9wZG93bj1mdW5jdGlvbihlKXt0aGlzLiRkcm9wZG93bkNvbnRhaW5lci5hcHBlbmRUbyh0aGlzLiRkcm9wZG93blBhcmVudCksdGhpcy5fcG9zaXRpb25Ecm9wZG93bigpLHRoaXMuX3Jlc2l6ZURyb3Bkb3duKCl9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9kcm9wZG93bi9taW5pbXVtUmVzdWx0c0ZvclNlYXJjaCIsW10sZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxuLGkpe3RoaXMubWluaW11bVJlc3VsdHNGb3JTZWFyY2g9bi5nZXQoIm1pbmltdW1SZXN1bHRzRm9yU2VhcmNoIiksdGhpcy5taW5pbXVtUmVzdWx0c0ZvclNlYXJjaDwwJiYodGhpcy5taW5pbXVtUmVzdWx0c0ZvclNlYXJjaD0xLzApLGUuY2FsbCh0aGlzLHQsbixpKX1yZXR1cm4gZS5wcm90b3R5cGUuc2hvd1NlYXJjaD1mdW5jdGlvbihlLHQpe3JldHVybiEoZnVuY3Rpb24gZSh0KXtmb3IodmFyIG49MCxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciByPXRbaV07ci5jaGlsZHJlbj9uKz1lKHIuY2hpbGRyZW4pOm4rK31yZXR1cm4gbn0odC5kYXRhLnJlc3VsdHMpPHRoaXMubWluaW11bVJlc3VsdHNGb3JTZWFyY2gpJiZlLmNhbGwodGhpcyx0KX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL3NlbGVjdE9uQ2xvc2UiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihzKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10aGlzO2UuY2FsbCh0aGlzLHQsbiksdC5vbigiY2xvc2UiLGZ1bmN0aW9uKGUpe2kuX2hhbmRsZVNlbGVjdE9uQ2xvc2UoZSl9KX0sZS5wcm90b3R5cGUuX2hhbmRsZVNlbGVjdE9uQ2xvc2U9ZnVuY3Rpb24oZSx0KXtpZih0JiZudWxsIT10Lm9yaWdpbmFsU2VsZWN0MkV2ZW50KXt2YXIgbj10Lm9yaWdpbmFsU2VsZWN0MkV2ZW50O2lmKCJzZWxlY3QiPT09bi5fdHlwZXx8InVuc2VsZWN0Ij09PW4uX3R5cGUpcmV0dXJufXZhciBpPXRoaXMuZ2V0SGlnaGxpZ2h0ZWRSZXN1bHRzKCk7aWYoIShpLmxlbmd0aDwxKSl7dmFyIHI9cy5HZXREYXRhKGlbMF0sImRhdGEiKTtudWxsIT1yLmVsZW1lbnQmJnIuZWxlbWVudC5zZWxlY3RlZHx8bnVsbD09ci5lbGVtZW50JiZyLnNlbGVjdGVkfHx0aGlzLnRyaWdnZXIoInNlbGVjdCIse2RhdGE6cn0pfX0sZX0pLGUuZGVmaW5lKCJzZWxlY3QyL2Ryb3Bkb3duL2Nsb3NlT25TZWxlY3QiLFtdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihlLHQsbil7dmFyIGk9dGhpcztlLmNhbGwodGhpcyx0LG4pLHQub24oInNlbGVjdCIsZnVuY3Rpb24oZSl7aS5fc2VsZWN0VHJpZ2dlcmVkKGUpfSksdC5vbigidW5zZWxlY3QiLGZ1bmN0aW9uKGUpe2kuX3NlbGVjdFRyaWdnZXJlZChlKX0pfSxlLnByb3RvdHlwZS5fc2VsZWN0VHJpZ2dlcmVkPWZ1bmN0aW9uKGUsdCl7dmFyIG49dC5vcmlnaW5hbEV2ZW50O24mJihuLmN0cmxLZXl8fG4ubWV0YUtleSl8fHRoaXMudHJpZ2dlcigiY2xvc2UiLHtvcmlnaW5hbEV2ZW50Om4sb3JpZ2luYWxTZWxlY3QyRXZlbnQ6dH0pfSxlfSksZS5kZWZpbmUoInNlbGVjdDIvZHJvcGRvd24vZHJvcGRvd25Dc3MiLFsiLi4vdXRpbHMiXSxmdW5jdGlvbihpKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jYWxsKHRoaXMpLG49dGhpcy5vcHRpb25zLmdldCgiZHJvcGRvd25Dc3NDbGFzcyIpfHwiIjtyZXR1cm4tMSE9PW4uaW5kZXhPZigiOmFsbDoiKSYmKG49bi5yZXBsYWNlKCI6YWxsOiIsIiIpLGkuY29weU5vbkludGVybmFsQ3NzQ2xhc3Nlcyh0WzBdLHRoaXMuJGVsZW1lbnRbMF0pKSx0LmFkZENsYXNzKG4pLHR9LGV9KSxlLmRlZmluZSgic2VsZWN0Mi9pMThuL2VuIixbXSxmdW5jdGlvbigpe3JldHVybntlcnJvckxvYWRpbmc6ZnVuY3Rpb24oKXtyZXR1cm4iVGhlIHJlc3VsdHMgY291bGQgbm90IGJlIGxvYWRlZC4ifSxpbnB1dFRvb0xvbmc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pbnB1dC5sZW5ndGgtZS5tYXhpbXVtLG49IlBsZWFzZSBkZWxldGUgIit0KyIgY2hhcmFjdGVyIjtyZXR1cm4gMSE9dCYmKG4rPSJzIiksbn0saW5wdXRUb29TaG9ydDpmdW5jdGlvbihlKXtyZXR1cm4iUGxlYXNlIGVudGVyICIrKGUubWluaW11bS1lLmlucHV0Lmxlbmd0aCkrIiBvciBtb3JlIGNoYXJhY3RlcnMifSxsb2FkaW5nTW9yZTpmdW5jdGlvbigpe3JldHVybiJMb2FkaW5nIG1vcmUgcmVzdWx0c+KApiJ9LG1heGltdW1TZWxlY3RlZDpmdW5jdGlvbihlKXt2YXIgdD0iWW91IGNhbiBvbmx5IHNlbGVjdCAiK2UubWF4aW11bSsiIGl0ZW0iO3JldHVybiAxIT1lLm1heGltdW0mJih0Kz0icyIpLHR9LG5vUmVzdWx0czpmdW5jdGlvbigpe3JldHVybiJObyByZXN1bHRzIGZvdW5kIn0sc2VhcmNoaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIlNlYXJjaGluZ+KApiJ9LHJlbW92ZUFsbEl0ZW1zOmZ1bmN0aW9uKCl7cmV0dXJuIlJlbW92ZSBhbGwgaXRlbXMifSxyZW1vdmVJdGVtOmZ1bmN0aW9uKCl7cmV0dXJuIlJlbW92ZSBpdGVtIn19fSksZS5kZWZpbmUoInNlbGVjdDIvZGVmYXVsdHMiLFsianF1ZXJ5IiwiLi9yZXN1bHRzIiwiLi9zZWxlY3Rpb24vc2luZ2xlIiwiLi9zZWxlY3Rpb24vbXVsdGlwbGUiLCIuL3NlbGVjdGlvbi9wbGFjZWhvbGRlciIsIi4vc2VsZWN0aW9uL2FsbG93Q2xlYXIiLCIuL3NlbGVjdGlvbi9zZWFyY2giLCIuL3NlbGVjdGlvbi9zZWxlY3Rpb25Dc3MiLCIuL3NlbGVjdGlvbi9ldmVudFJlbGF5IiwiLi91dGlscyIsIi4vdHJhbnNsYXRpb24iLCIuL2RpYWNyaXRpY3MiLCIuL2RhdGEvc2VsZWN0IiwiLi9kYXRhL2FycmF5IiwiLi9kYXRhL2FqYXgiLCIuL2RhdGEvdGFncyIsIi4vZGF0YS90b2tlbml6ZXIiLCIuL2RhdGEvbWluaW11bUlucHV0TGVuZ3RoIiwiLi9kYXRhL21heGltdW1JbnB1dExlbmd0aCIsIi4vZGF0YS9tYXhpbXVtU2VsZWN0aW9uTGVuZ3RoIiwiLi9kcm9wZG93biIsIi4vZHJvcGRvd24vc2VhcmNoIiwiLi9kcm9wZG93bi9oaWRlUGxhY2Vob2xkZXIiLCIuL2Ryb3Bkb3duL2luZmluaXRlU2Nyb2xsIiwiLi9kcm9wZG93bi9hdHRhY2hCb2R5IiwiLi9kcm9wZG93bi9taW5pbXVtUmVzdWx0c0ZvclNlYXJjaCIsIi4vZHJvcGRvd24vc2VsZWN0T25DbG9zZSIsIi4vZHJvcGRvd24vY2xvc2VPblNlbGVjdCIsIi4vZHJvcGRvd24vZHJvcGRvd25Dc3MiLCIuL2kxOG4vZW4iXSxmdW5jdGlvbihsLHMsbyxhLGMsdSxkLHAsaCxmLGcsdCxtLHYseSxfLGIsJCx3LHgsQSxELFMsRSxPLEMsTCxULHEsZSl7ZnVuY3Rpb24gbigpe3RoaXMucmVzZXQoKX1yZXR1cm4gbi5wcm90b3R5cGUuYXBwbHk9ZnVuY3Rpb24oZSl7aWYobnVsbD09KGU9bC5leHRlbmQoITAse30sdGhpcy5kZWZhdWx0cyxlKSkuZGF0YUFkYXB0ZXImJihudWxsIT1lLmFqYXg/ZS5kYXRhQWRhcHRlcj15Om51bGwhPWUuZGF0YT9lLmRhdGFBZGFwdGVyPXY6ZS5kYXRhQWRhcHRlcj1tLDA8ZS5taW5pbXVtSW5wdXRMZW5ndGgmJihlLmRhdGFBZGFwdGVyPWYuRGVjb3JhdGUoZS5kYXRhQWRhcHRlciwkKSksMDxlLm1heGltdW1JbnB1dExlbmd0aCYmKGUuZGF0YUFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRhdGFBZGFwdGVyLHcpKSwwPGUubWF4aW11bVNlbGVjdGlvbkxlbmd0aCYmKGUuZGF0YUFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRhdGFBZGFwdGVyLHgpKSxlLnRhZ3MmJihlLmRhdGFBZGFwdGVyPWYuRGVjb3JhdGUoZS5kYXRhQWRhcHRlcixfKSksbnVsbD09ZS50b2tlblNlcGFyYXRvcnMmJm51bGw9PWUudG9rZW5pemVyfHwoZS5kYXRhQWRhcHRlcj1mLkRlY29yYXRlKGUuZGF0YUFkYXB0ZXIsYikpKSxudWxsPT1lLnJlc3VsdHNBZGFwdGVyJiYoZS5yZXN1bHRzQWRhcHRlcj1zLG51bGwhPWUuYWpheCYmKGUucmVzdWx0c0FkYXB0ZXI9Zi5EZWNvcmF0ZShlLnJlc3VsdHNBZGFwdGVyLEUpKSxudWxsIT1lLnBsYWNlaG9sZGVyJiYoZS5yZXN1bHRzQWRhcHRlcj1mLkRlY29yYXRlKGUucmVzdWx0c0FkYXB0ZXIsUykpLGUuc2VsZWN0T25DbG9zZSYmKGUucmVzdWx0c0FkYXB0ZXI9Zi5EZWNvcmF0ZShlLnJlc3VsdHNBZGFwdGVyLEwpKSksbnVsbD09ZS5kcm9wZG93bkFkYXB0ZXIpe2lmKGUubXVsdGlwbGUpZS5kcm9wZG93bkFkYXB0ZXI9QTtlbHNle3ZhciB0PWYuRGVjb3JhdGUoQSxEKTtlLmRyb3Bkb3duQWRhcHRlcj10fTAhPT1lLm1pbmltdW1SZXN1bHRzRm9yU2VhcmNoJiYoZS5kcm9wZG93bkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRyb3Bkb3duQWRhcHRlcixDKSksZS5jbG9zZU9uU2VsZWN0JiYoZS5kcm9wZG93bkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRyb3Bkb3duQWRhcHRlcixUKSksbnVsbCE9ZS5kcm9wZG93bkNzc0NsYXNzJiYoZS5kcm9wZG93bkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRyb3Bkb3duQWRhcHRlcixxKSksZS5kcm9wZG93bkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLmRyb3Bkb3duQWRhcHRlcixPKX1udWxsPT1lLnNlbGVjdGlvbkFkYXB0ZXImJihlLm11bHRpcGxlP2Uuc2VsZWN0aW9uQWRhcHRlcj1hOmUuc2VsZWN0aW9uQWRhcHRlcj1vLG51bGwhPWUucGxhY2Vob2xkZXImJihlLnNlbGVjdGlvbkFkYXB0ZXI9Zi5EZWNvcmF0ZShlLnNlbGVjdGlvbkFkYXB0ZXIsYykpLGUuYWxsb3dDbGVhciYmKGUuc2VsZWN0aW9uQWRhcHRlcj1mLkRlY29yYXRlKGUuc2VsZWN0aW9uQWRhcHRlcix1KSksZS5tdWx0aXBsZSYmKGUuc2VsZWN0aW9uQWRhcHRlcj1mLkRlY29yYXRlKGUuc2VsZWN0aW9uQWRhcHRlcixkKSksbnVsbCE9ZS5zZWxlY3Rpb25Dc3NDbGFzcyYmKGUuc2VsZWN0aW9uQWRhcHRlcj1mLkRlY29yYXRlKGUuc2VsZWN0aW9uQWRhcHRlcixwKSksZS5zZWxlY3Rpb25BZGFwdGVyPWYuRGVjb3JhdGUoZS5zZWxlY3Rpb25BZGFwdGVyLGgpKSxlLmxhbmd1YWdlPXRoaXMuX3Jlc29sdmVMYW5ndWFnZShlLmxhbmd1YWdlKSxlLmxhbmd1YWdlLnB1c2goImVuIik7Zm9yKHZhciBuPVtdLGk9MDtpPGUubGFuZ3VhZ2UubGVuZ3RoO2krKyl7dmFyIHI9ZS5sYW5ndWFnZVtpXTstMT09PW4uaW5kZXhPZihyKSYmbi5wdXNoKHIpfXJldHVybiBlLmxhbmd1YWdlPW4sZS50cmFuc2xhdGlvbnM9dGhpcy5fcHJvY2Vzc1RyYW5zbGF0aW9ucyhlLmxhbmd1YWdlLGUuZGVidWcpLGV9LG4ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZS5yZXBsYWNlKC9bXlx1MDAwMC1cdTAwN0VdL2csZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV18fGV9KX10aGlzLmRlZmF1bHRzPXthbWRMYW5ndWFnZUJhc2U6Ii4vaTE4bi8iLGF1dG9jb21wbGV0ZToib2ZmIixjbG9zZU9uU2VsZWN0OiEwLGRlYnVnOiExLGRyb3Bkb3duQXV0b1dpZHRoOiExLGVzY2FwZU1hcmt1cDpmLmVzY2FwZU1hcmt1cCxsYW5ndWFnZTp7fSxtYXRjaGVyOmZ1bmN0aW9uIGUodCxuKXtpZihudWxsPT10LnRlcm18fCIiPT09dC50ZXJtLnRyaW0oKSlyZXR1cm4gbjtpZihuLmNoaWxkcmVuJiYwPG4uY2hpbGRyZW4ubGVuZ3RoKXtmb3IodmFyIGk9bC5leHRlbmQoITAse30sbikscj1uLmNoaWxkcmVuLmxlbmd0aC0xOzA8PXI7ci0tKW51bGw9PWUodCxuLmNoaWxkcmVuW3JdKSYmaS5jaGlsZHJlbi5zcGxpY2UociwxKTtyZXR1cm4gMDxpLmNoaWxkcmVuLmxlbmd0aD9pOmUodCxpKX12YXIgcz1hKG4udGV4dCkudG9VcHBlckNhc2UoKSxvPWEodC50ZXJtKS50b1VwcGVyQ2FzZSgpO3JldHVybi0xPHMuaW5kZXhPZihvKT9uOm51bGx9LG1pbmltdW1JbnB1dExlbmd0aDowLG1heGltdW1JbnB1dExlbmd0aDowLG1heGltdW1TZWxlY3Rpb25MZW5ndGg6MCxtaW5pbXVtUmVzdWx0c0ZvclNlYXJjaDowLHNlbGVjdE9uQ2xvc2U6ITEsc2Nyb2xsQWZ0ZXJTZWxlY3Q6ITEsc29ydGVyOmZ1bmN0aW9uKGUpe3JldHVybiBlfSx0ZW1wbGF0ZVJlc3VsdDpmdW5jdGlvbihlKXtyZXR1cm4gZS50ZXh0fSx0ZW1wbGF0ZVNlbGVjdGlvbjpmdW5jdGlvbihlKXtyZXR1cm4gZS50ZXh0fSx0aGVtZToiZGVmYXVsdCIsd2lkdGg6InJlc29sdmUifX0sbi5wcm90b3R5cGUuYXBwbHlGcm9tRWxlbWVudD1mdW5jdGlvbihlLHQpe3ZhciBuPWUubGFuZ3VhZ2UsaT10aGlzLmRlZmF1bHRzLmxhbmd1YWdlLHI9dC5wcm9wKCJsYW5nIikscz10LmNsb3Nlc3QoIltsYW5nXSIpLnByb3AoImxhbmciKSxvPUFycmF5LnByb3RvdHlwZS5jb25jYXQuY2FsbCh0aGlzLl9yZXNvbHZlTGFuZ3VhZ2UociksdGhpcy5fcmVzb2x2ZUxhbmd1YWdlKG4pLHRoaXMuX3Jlc29sdmVMYW5ndWFnZShpKSx0aGlzLl9yZXNvbHZlTGFuZ3VhZ2UocykpO3JldHVybiBlLmxhbmd1YWdlPW8sZX0sbi5wcm90b3R5cGUuX3Jlc29sdmVMYW5ndWFnZT1mdW5jdGlvbihlKXtpZighZSlyZXR1cm5bXTtpZihsLmlzRW1wdHlPYmplY3QoZSkpcmV0dXJuW107aWYobC5pc1BsYWluT2JqZWN0KGUpKXJldHVybltlXTt2YXIgdDt0PUFycmF5LmlzQXJyYXkoZSk/ZTpbZV07Zm9yKHZhciBuPVtdLGk9MDtpPHQubGVuZ3RoO2krKylpZihuLnB1c2godFtpXSksInN0cmluZyI9PXR5cGVvZiB0W2ldJiYwPHRbaV0uaW5kZXhPZigiLSIpKXt2YXIgcj10W2ldLnNwbGl0KCItIilbMF07bi5wdXNoKHIpfXJldHVybiBufSxuLnByb3RvdHlwZS5fcHJvY2Vzc1RyYW5zbGF0aW9ucz1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj1uZXcgZyxpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciByPW5ldyBnLHM9ZVtpXTtpZigic3RyaW5nIj09dHlwZW9mIHMpdHJ5e3I9Zy5sb2FkUGF0aChzKX1jYXRjaChlKXt0cnl7cz10aGlzLmRlZmF1bHRzLmFtZExhbmd1YWdlQmFzZStzLHI9Zy5sb2FkUGF0aChzKX1jYXRjaChlKXt0JiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oJ1NlbGVjdDI6IFRoZSBsYW5ndWFnZSBmaWxlIGZvciAiJytzKyciIGNvdWxkIG5vdCBiZSBhdXRvbWF0aWNhbGx5IGxvYWRlZC4gQSBmYWxsYmFjayB3aWxsIGJlIHVzZWQgaW5zdGVhZC4nKX19ZWxzZSByPWwuaXNQbGFpbk9iamVjdChzKT9uZXcgZyhzKTpzO24uZXh0ZW5kKHIpfXJldHVybiBufSxuLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj17fTtuW2wuY2FtZWxDYXNlKGUpXT10O3ZhciBpPWYuX2NvbnZlcnREYXRhKG4pO2wuZXh0ZW5kKCEwLHRoaXMuZGVmYXVsdHMsaSl9LG5ldyBufSksZS5kZWZpbmUoInNlbGVjdDIvb3B0aW9ucyIsWyJqcXVlcnkiLCIuL2RlZmF1bHRzIiwiLi91dGlscyJdLGZ1bmN0aW9uKGQsbixwKXtmdW5jdGlvbiBlKGUsdCl7dGhpcy5vcHRpb25zPWUsbnVsbCE9dCYmdGhpcy5mcm9tRWxlbWVudCh0KSxudWxsIT10JiYodGhpcy5vcHRpb25zPW4uYXBwbHlGcm9tRWxlbWVudCh0aGlzLm9wdGlvbnMsdCkpLHRoaXMub3B0aW9ucz1uLmFwcGx5KHRoaXMub3B0aW9ucyl9cmV0dXJuIGUucHJvdG90eXBlLmZyb21FbGVtZW50PWZ1bmN0aW9uKGUpe3ZhciB0PVsic2VsZWN0MiJdO251bGw9PXRoaXMub3B0aW9ucy5tdWx0aXBsZSYmKHRoaXMub3B0aW9ucy5tdWx0aXBsZT1lLnByb3AoIm11bHRpcGxlIikpLG51bGw9PXRoaXMub3B0aW9ucy5kaXNhYmxlZCYmKHRoaXMub3B0aW9ucy5kaXNhYmxlZD1lLnByb3AoImRpc2FibGVkIikpLG51bGw9PXRoaXMub3B0aW9ucy5hdXRvY29tcGxldGUmJmUucHJvcCgiYXV0b2NvbXBsZXRlIikmJih0aGlzLm9wdGlvbnMuYXV0b2NvbXBsZXRlPWUucHJvcCgiYXV0b2NvbXBsZXRlIikpLG51bGw9PXRoaXMub3B0aW9ucy5kaXImJihlLnByb3AoImRpciIpP3RoaXMub3B0aW9ucy5kaXI9ZS5wcm9wKCJkaXIiKTplLmNsb3Nlc3QoIltkaXJdIikucHJvcCgiZGlyIik/dGhpcy5vcHRpb25zLmRpcj1lLmNsb3Nlc3QoIltkaXJdIikucHJvcCgiZGlyIik6dGhpcy5vcHRpb25zLmRpcj0ibHRyIiksZS5wcm9wKCJkaXNhYmxlZCIsdGhpcy5vcHRpb25zLmRpc2FibGVkKSxlLnByb3AoIm11bHRpcGxlIix0aGlzLm9wdGlvbnMubXVsdGlwbGUpLHAuR2V0RGF0YShlWzBdLCJzZWxlY3QyVGFncyIpJiYodGhpcy5vcHRpb25zLmRlYnVnJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oJ1NlbGVjdDI6IFRoZSBgZGF0YS1zZWxlY3QyLXRhZ3NgIGF0dHJpYnV0ZSBoYXMgYmVlbiBjaGFuZ2VkIHRvIHVzZSB0aGUgYGRhdGEtZGF0YWAgYW5kIGBkYXRhLXRhZ3M9InRydWUiYCBhdHRyaWJ1dGVzIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gZnV0dXJlIHZlcnNpb25zIG9mIFNlbGVjdDIuJykscC5TdG9yZURhdGEoZVswXSwiZGF0YSIscC5HZXREYXRhKGVbMF0sInNlbGVjdDJUYWdzIikpLHAuU3RvcmVEYXRhKGVbMF0sInRhZ3MiLCEwKSkscC5HZXREYXRhKGVbMF0sImFqYXhVcmwiKSYmKHRoaXMub3B0aW9ucy5kZWJ1ZyYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKCJTZWxlY3QyOiBUaGUgYGRhdGEtYWpheC11cmxgIGF0dHJpYnV0ZSBoYXMgYmVlbiBjaGFuZ2VkIHRvIGBkYXRhLWFqYXgtLXVybGAgYW5kIHN1cHBvcnQgZm9yIHRoZSBvbGQgYXR0cmlidXRlIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMgb2YgU2VsZWN0Mi4iKSxlLmF0dHIoImFqYXgtLXVybCIscC5HZXREYXRhKGVbMF0sImFqYXhVcmwiKSkscC5TdG9yZURhdGEoZVswXSwiYWpheC1VcmwiLHAuR2V0RGF0YShlWzBdLCJhamF4VXJsIikpKTt2YXIgbj17fTtmdW5jdGlvbiBpKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mb3IodmFyIHI9MDtyPGVbMF0uYXR0cmlidXRlcy5sZW5ndGg7cisrKXt2YXIgcz1lWzBdLmF0dHJpYnV0ZXNbcl0ubmFtZSxvPSJkYXRhLSI7aWYocy5zdWJzdHIoMCxvLmxlbmd0aCk9PW8pe3ZhciBhPXMuc3Vic3RyaW5nKG8ubGVuZ3RoKSxsPXAuR2V0RGF0YShlWzBdLGEpO25bYS5yZXBsYWNlKC8tKFthLXpdKS9nLGkpXT1sfX1kLmZuLmpxdWVyeSYmIjEuIj09ZC5mbi5qcXVlcnkuc3Vic3RyKDAsMikmJmVbMF0uZGF0YXNldCYmKG49ZC5leHRlbmQoITAse30sZVswXS5kYXRhc2V0LG4pKTt2YXIgYz1kLmV4dGVuZCghMCx7fSxwLkdldERhdGEoZVswXSksbik7Zm9yKHZhciB1IGluIGM9cC5fY29udmVydERhdGEoYykpLTE8dC5pbmRleE9mKHUpfHwoZC5pc1BsYWluT2JqZWN0KHRoaXMub3B0aW9uc1t1XSk/ZC5leHRlbmQodGhpcy5vcHRpb25zW3VdLGNbdV0pOnRoaXMub3B0aW9uc1t1XT1jW3VdKTtyZXR1cm4gdGhpc30sZS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9wdGlvbnNbZV19LGUucHJvdG90eXBlLnNldD1mdW5jdGlvbihlLHQpe3RoaXMub3B0aW9uc1tlXT10fSxlfSksZS5kZWZpbmUoInNlbGVjdDIvY29yZSIsWyJqcXVlcnkiLCIuL29wdGlvbnMiLCIuL3V0aWxzIiwiLi9rZXlzIl0sZnVuY3Rpb24odCxjLHUsaSl7dmFyIGQ9ZnVuY3Rpb24oZSx0KXtudWxsIT11LkdldERhdGEoZVswXSwic2VsZWN0MiIpJiZ1LkdldERhdGEoZVswXSwic2VsZWN0MiIpLmRlc3Ryb3koKSx0aGlzLiRlbGVtZW50PWUsdGhpcy5pZD10aGlzLl9nZW5lcmF0ZUlkKGUpLHQ9dHx8e30sdGhpcy5vcHRpb25zPW5ldyBjKHQsZSksZC5fX3N1cGVyX18uY29uc3RydWN0b3IuY2FsbCh0aGlzKTt2YXIgbj1lLmF0dHIoInRhYmluZGV4Iil8fDA7dS5TdG9yZURhdGEoZVswXSwib2xkLXRhYmluZGV4IixuKSxlLmF0dHIoInRhYmluZGV4IiwiLTEiKTt2YXIgaT10aGlzLm9wdGlvbnMuZ2V0KCJkYXRhQWRhcHRlciIpO3RoaXMuZGF0YUFkYXB0ZXI9bmV3IGkoZSx0aGlzLm9wdGlvbnMpO3ZhciByPXRoaXMucmVuZGVyKCk7dGhpcy5fcGxhY2VDb250YWluZXIocik7dmFyIHM9dGhpcy5vcHRpb25zLmdldCgic2VsZWN0aW9uQWRhcHRlciIpO3RoaXMuc2VsZWN0aW9uPW5ldyBzKGUsdGhpcy5vcHRpb25zKSx0aGlzLiRzZWxlY3Rpb249dGhpcy5zZWxlY3Rpb24ucmVuZGVyKCksdGhpcy5zZWxlY3Rpb24ucG9zaXRpb24odGhpcy4kc2VsZWN0aW9uLHIpO3ZhciBvPXRoaXMub3B0aW9ucy5nZXQoImRyb3Bkb3duQWRhcHRlciIpO3RoaXMuZHJvcGRvd249bmV3IG8oZSx0aGlzLm9wdGlvbnMpLHRoaXMuJGRyb3Bkb3duPXRoaXMuZHJvcGRvd24ucmVuZGVyKCksdGhpcy5kcm9wZG93bi5wb3NpdGlvbih0aGlzLiRkcm9wZG93bixyKTt2YXIgYT10aGlzLm9wdGlvbnMuZ2V0KCJyZXN1bHRzQWRhcHRlciIpO3RoaXMucmVzdWx0cz1uZXcgYShlLHRoaXMub3B0aW9ucyx0aGlzLmRhdGFBZGFwdGVyKSx0aGlzLiRyZXN1bHRzPXRoaXMucmVzdWx0cy5yZW5kZXIoKSx0aGlzLnJlc3VsdHMucG9zaXRpb24odGhpcy4kcmVzdWx0cyx0aGlzLiRkcm9wZG93bik7dmFyIGw9dGhpczt0aGlzLl9iaW5kQWRhcHRlcnMoKSx0aGlzLl9yZWdpc3RlckRvbUV2ZW50cygpLHRoaXMuX3JlZ2lzdGVyRGF0YUV2ZW50cygpLHRoaXMuX3JlZ2lzdGVyU2VsZWN0aW9uRXZlbnRzKCksdGhpcy5fcmVnaXN0ZXJEcm9wZG93bkV2ZW50cygpLHRoaXMuX3JlZ2lzdGVyUmVzdWx0c0V2ZW50cygpLHRoaXMuX3JlZ2lzdGVyRXZlbnRzKCksdGhpcy5kYXRhQWRhcHRlci5jdXJyZW50KGZ1bmN0aW9uKGUpe2wudHJpZ2dlcigic2VsZWN0aW9uOnVwZGF0ZSIse2RhdGE6ZX0pfSksZVswXS5jbGFzc0xpc3QuYWRkKCJzZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxlIiksZS5hdHRyKCJhcmlhLWhpZGRlbiIsInRydWUiKSx0aGlzLl9zeW5jQXR0cmlidXRlcygpLHUuU3RvcmVEYXRhKGVbMF0sInNlbGVjdDIiLHRoaXMpLGUuZGF0YSgic2VsZWN0MiIsdGhpcyl9O3JldHVybiB1LkV4dGVuZChkLHUuT2JzZXJ2YWJsZSksZC5wcm90b3R5cGUuX2dlbmVyYXRlSWQ9ZnVuY3Rpb24oZSl7cmV0dXJuInNlbGVjdDItIisobnVsbCE9ZS5hdHRyKCJpZCIpP2UuYXR0cigiaWQiKTpudWxsIT1lLmF0dHIoIm5hbWUiKT9lLmF0dHIoIm5hbWUiKSsiLSIrdS5nZW5lcmF0ZUNoYXJzKDIpOnUuZ2VuZXJhdGVDaGFycyg0KSkucmVwbGFjZSgvKDp8XC58XFt8XF18LCkvZywiIil9LGQucHJvdG90eXBlLl9wbGFjZUNvbnRhaW5lcj1mdW5jdGlvbihlKXtlLmluc2VydEFmdGVyKHRoaXMuJGVsZW1lbnQpO3ZhciB0PXRoaXMuX3Jlc29sdmVXaWR0aCh0aGlzLiRlbGVtZW50LHRoaXMub3B0aW9ucy5nZXQoIndpZHRoIikpO251bGwhPXQmJmUuY3NzKCJ3aWR0aCIsdCl9LGQucHJvdG90eXBlLl9yZXNvbHZlV2lkdGg9ZnVuY3Rpb24oZSx0KXt2YXIgbj0vXndpZHRoOigoWy0rXT8oWzAtOV0qXC4pP1swLTldKykocHh8ZW18ZXh8JXxpbnxjbXxtbXxwdHxwYykpL2k7aWYoInJlc29sdmUiPT10KXt2YXIgaT10aGlzLl9yZXNvbHZlV2lkdGgoZSwic3R5bGUiKTtyZXR1cm4gbnVsbCE9aT9pOnRoaXMuX3Jlc29sdmVXaWR0aChlLCJlbGVtZW50Iil9aWYoImVsZW1lbnQiPT10KXt2YXIgcj1lLm91dGVyV2lkdGgoITEpO3JldHVybiByPD0wPyJhdXRvIjpyKyJweCJ9aWYoInN0eWxlIiE9dClyZXR1cm4iY29tcHV0ZWRzdHlsZSIhPXQ/dDp3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlWzBdKS53aWR0aDt2YXIgcz1lLmF0dHIoInN0eWxlIik7aWYoInN0cmluZyIhPXR5cGVvZiBzKXJldHVybiBudWxsO2Zvcih2YXIgbz1zLnNwbGl0KCI7IiksYT0wLGw9by5sZW5ndGg7YTxsO2ErPTEpe3ZhciBjPW9bYV0ucmVwbGFjZSgvXHMvZywiIikubWF0Y2gobik7aWYobnVsbCE9PWMmJjE8PWMubGVuZ3RoKXJldHVybiBjWzFdfXJldHVybiBudWxsfSxkLnByb3RvdHlwZS5fYmluZEFkYXB0ZXJzPWZ1bmN0aW9uKCl7dGhpcy5kYXRhQWRhcHRlci5iaW5kKHRoaXMsdGhpcy4kY29udGFpbmVyKSx0aGlzLnNlbGVjdGlvbi5iaW5kKHRoaXMsdGhpcy4kY29udGFpbmVyKSx0aGlzLmRyb3Bkb3duLmJpbmQodGhpcyx0aGlzLiRjb250YWluZXIpLHRoaXMucmVzdWx0cy5iaW5kKHRoaXMsdGhpcy4kY29udGFpbmVyKX0sZC5wcm90b3R5cGUuX3JlZ2lzdGVyRG9tRXZlbnRzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRlbGVtZW50Lm9uKCJjaGFuZ2Uuc2VsZWN0MiIsZnVuY3Rpb24oKXt0LmRhdGFBZGFwdGVyLmN1cnJlbnQoZnVuY3Rpb24oZSl7dC50cmlnZ2VyKCJzZWxlY3Rpb246dXBkYXRlIix7ZGF0YTplfSl9KX0pLHRoaXMuJGVsZW1lbnQub24oImZvY3VzLnNlbGVjdDIiLGZ1bmN0aW9uKGUpe3QudHJpZ2dlcigiZm9jdXMiLGUpfSksdGhpcy5fc3luY0E9dS5iaW5kKHRoaXMuX3N5bmNBdHRyaWJ1dGVzLHRoaXMpLHRoaXMuX3N5bmNTPXUuYmluZCh0aGlzLl9zeW5jU3VidHJlZSx0aGlzKSx0aGlzLl9vYnNlcnZlcj1uZXcgd2luZG93Lk11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZSl7dC5fc3luY0EoKSx0Ll9zeW5jUyhlKX0pLHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy4kZWxlbWVudFswXSx7YXR0cmlidXRlczohMCxjaGlsZExpc3Q6ITAsc3VidHJlZTohMX0pfSxkLnByb3RvdHlwZS5fcmVnaXN0ZXJEYXRhRXZlbnRzPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLmRhdGFBZGFwdGVyLm9uKCIqIixmdW5jdGlvbihlLHQpe24udHJpZ2dlcihlLHQpfSl9LGQucHJvdG90eXBlLl9yZWdpc3RlclNlbGVjdGlvbkV2ZW50cz1mdW5jdGlvbigpe3ZhciBuPXRoaXMsaT1bInRvZ2dsZSIsImZvY3VzIl07dGhpcy5zZWxlY3Rpb24ub24oInRvZ2dsZSIsZnVuY3Rpb24oKXtuLnRvZ2dsZURyb3Bkb3duKCl9KSx0aGlzLnNlbGVjdGlvbi5vbigiZm9jdXMiLGZ1bmN0aW9uKGUpe24uZm9jdXMoZSl9KSx0aGlzLnNlbGVjdGlvbi5vbigiKiIsZnVuY3Rpb24oZSx0KXstMT09PWkuaW5kZXhPZihlKSYmbi50cmlnZ2VyKGUsdCl9KX0sZC5wcm90b3R5cGUuX3JlZ2lzdGVyRHJvcGRvd25FdmVudHM9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuZHJvcGRvd24ub24oIioiLGZ1bmN0aW9uKGUsdCl7bi50cmlnZ2VyKGUsdCl9KX0sZC5wcm90b3R5cGUuX3JlZ2lzdGVyUmVzdWx0c0V2ZW50cz1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5yZXN1bHRzLm9uKCIqIixmdW5jdGlvbihlLHQpe24udHJpZ2dlcihlLHQpfSl9LGQucHJvdG90eXBlLl9yZWdpc3RlckV2ZW50cz1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5vbigib3BlbiIsZnVuY3Rpb24oKXtuLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LmFkZCgic2VsZWN0Mi1jb250YWluZXItLW9wZW4iKX0pLHRoaXMub24oImNsb3NlIixmdW5jdGlvbigpe24uJGNvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWNvbnRhaW5lci0tb3BlbiIpfSksdGhpcy5vbigiZW5hYmxlIixmdW5jdGlvbigpe24uJGNvbnRhaW5lclswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQiKX0pLHRoaXMub24oImRpc2FibGUiLGZ1bmN0aW9uKCl7bi4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCIpfSksdGhpcy5vbigiYmx1ciIsZnVuY3Rpb24oKXtuLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0Mi1jb250YWluZXItLWZvY3VzIil9KSx0aGlzLm9uKCJxdWVyeSIsZnVuY3Rpb24odCl7bi5pc09wZW4oKXx8bi50cmlnZ2VyKCJvcGVuIix7fSksdGhpcy5kYXRhQWRhcHRlci5xdWVyeSh0LGZ1bmN0aW9uKGUpe24udHJpZ2dlcigicmVzdWx0czphbGwiLHtkYXRhOmUscXVlcnk6dH0pfSl9KSx0aGlzLm9uKCJxdWVyeTphcHBlbmQiLGZ1bmN0aW9uKHQpe3RoaXMuZGF0YUFkYXB0ZXIucXVlcnkodCxmdW5jdGlvbihlKXtuLnRyaWdnZXIoInJlc3VsdHM6YXBwZW5kIix7ZGF0YTplLHF1ZXJ5OnR9KX0pfSksdGhpcy5vbigia2V5cHJlc3MiLGZ1bmN0aW9uKGUpe3ZhciB0PWUud2hpY2g7bi5pc09wZW4oKT90PT09aS5FU0N8fHQ9PT1pLlRBQnx8dD09PWkuVVAmJmUuYWx0S2V5PyhuLmNsb3NlKGUpLGUucHJldmVudERlZmF1bHQoKSk6dD09PWkuRU5URVI/KG4udHJpZ2dlcigicmVzdWx0czpzZWxlY3QiLHt9KSxlLnByZXZlbnREZWZhdWx0KCkpOnQ9PT1pLlNQQUNFJiZlLmN0cmxLZXk/KG4udHJpZ2dlcigicmVzdWx0czp0b2dnbGUiLHt9KSxlLnByZXZlbnREZWZhdWx0KCkpOnQ9PT1pLlVQPyhuLnRyaWdnZXIoInJlc3VsdHM6cHJldmlvdXMiLHt9KSxlLnByZXZlbnREZWZhdWx0KCkpOnQ9PT1pLkRPV04mJihuLnRyaWdnZXIoInJlc3VsdHM6bmV4dCIse30pLGUucHJldmVudERlZmF1bHQoKSk6KHQ9PT1pLkVOVEVSfHx0PT09aS5TUEFDRXx8dD09PWkuRE9XTiYmZS5hbHRLZXkpJiYobi5vcGVuKCksZS5wcmV2ZW50RGVmYXVsdCgpKX0pfSxkLnByb3RvdHlwZS5fc3luY0F0dHJpYnV0ZXM9ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMuc2V0KCJkaXNhYmxlZCIsdGhpcy4kZWxlbWVudC5wcm9wKCJkaXNhYmxlZCIpKSx0aGlzLmlzRGlzYWJsZWQoKT8odGhpcy5pc09wZW4oKSYmdGhpcy5jbG9zZSgpLHRoaXMudHJpZ2dlcigiZGlzYWJsZSIse30pKTp0aGlzLnRyaWdnZXIoImVuYWJsZSIse30pfSxkLnByb3RvdHlwZS5faXNDaGFuZ2VNdXRhdGlvbj1mdW5jdGlvbihlKXt2YXIgdD10aGlzO2lmKGUuYWRkZWROb2RlcyYmMDxlLmFkZGVkTm9kZXMubGVuZ3RoKWZvcih2YXIgbj0wO248ZS5hZGRlZE5vZGVzLmxlbmd0aDtuKyspe2lmKGUuYWRkZWROb2Rlc1tuXS5zZWxlY3RlZClyZXR1cm4hMH1lbHNle2lmKGUucmVtb3ZlZE5vZGVzJiYwPGUucmVtb3ZlZE5vZGVzLmxlbmd0aClyZXR1cm4hMDtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIHQuX2lzQ2hhbmdlTXV0YXRpb24oZSl9KX1yZXR1cm4hMX0sZC5wcm90b3R5cGUuX3N5bmNTdWJ0cmVlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2lzQ2hhbmdlTXV0YXRpb24oZSksbj10aGlzO3QmJnRoaXMuZGF0YUFkYXB0ZXIuY3VycmVudChmdW5jdGlvbihlKXtuLnRyaWdnZXIoInNlbGVjdGlvbjp1cGRhdGUiLHtkYXRhOmV9KX0pfSxkLnByb3RvdHlwZS50cmlnZ2VyPWZ1bmN0aW9uKGUsdCl7dmFyIG49ZC5fX3N1cGVyX18udHJpZ2dlcixpPXtvcGVuOiJvcGVuaW5nIixjbG9zZToiY2xvc2luZyIsc2VsZWN0OiJzZWxlY3RpbmciLHVuc2VsZWN0OiJ1bnNlbGVjdGluZyIsY2xlYXI6ImNsZWFyaW5nIn07aWYodm9pZCAwPT09dCYmKHQ9e30pLGUgaW4gaSl7dmFyIHI9aVtlXSxzPXtwcmV2ZW50ZWQ6ITEsbmFtZTplLGFyZ3M6dH07aWYobi5jYWxsKHRoaXMscixzKSxzLnByZXZlbnRlZClyZXR1cm4gdm9pZCh0LnByZXZlbnRlZD0hMCl9bi5jYWxsKHRoaXMsZSx0KX0sZC5wcm90b3R5cGUudG9nZ2xlRHJvcGRvd249ZnVuY3Rpb24oKXt0aGlzLmlzRGlzYWJsZWQoKXx8KHRoaXMuaXNPcGVuKCk/dGhpcy5jbG9zZSgpOnRoaXMub3BlbigpKX0sZC5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3RoaXMuaXNPcGVuKCl8fHRoaXMuaXNEaXNhYmxlZCgpfHx0aGlzLnRyaWdnZXIoInF1ZXJ5Iix7fSl9LGQucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKGUpe3RoaXMuaXNPcGVuKCkmJnRoaXMudHJpZ2dlcigiY2xvc2UiLHtvcmlnaW5hbEV2ZW50OmV9KX0sZC5wcm90b3R5cGUuaXNFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuaXNEaXNhYmxlZCgpfSxkLnByb3RvdHlwZS5pc0Rpc2FibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5nZXQoImRpc2FibGVkIil9LGQucHJvdG90eXBlLmlzT3Blbj1mdW5jdGlvbigpe3JldHVybiB0aGlzLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LmNvbnRhaW5zKCJzZWxlY3QyLWNvbnRhaW5lci0tb3BlbiIpfSxkLnByb3RvdHlwZS5oYXNGb2N1cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLiRjb250YWluZXJbMF0uY2xhc3NMaXN0LmNvbnRhaW5zKCJzZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMiKX0sZC5wcm90b3R5cGUuZm9jdXM9ZnVuY3Rpb24oZSl7dGhpcy5oYXNGb2N1cygpfHwodGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS1mb2N1cyIpLHRoaXMudHJpZ2dlcigiZm9jdXMiLHt9KSl9LGQucHJvdG90eXBlLmVuYWJsZT1mdW5jdGlvbihlKXt0aGlzLm9wdGlvbnMuZ2V0KCJkZWJ1ZyIpJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oJ1NlbGVjdDI6IFRoZSBgc2VsZWN0MigiZW5hYmxlIilgIG1ldGhvZCBoYXMgYmVlbiBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gbGF0ZXIgU2VsZWN0MiB2ZXJzaW9ucy4gVXNlICRlbGVtZW50LnByb3AoImRpc2FibGVkIikgaW5zdGVhZC4nKSxudWxsIT1lJiYwIT09ZS5sZW5ndGh8fChlPVshMF0pO3ZhciB0PSFlWzBdO3RoaXMuJGVsZW1lbnQucHJvcCgiZGlzYWJsZWQiLHQpfSxkLnByb3RvdHlwZS5kYXRhPWZ1bmN0aW9uKCl7dGhpcy5vcHRpb25zLmdldCgiZGVidWciKSYmMDxhcmd1bWVudHMubGVuZ3RoJiZ3aW5kb3cuY29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oJ1NlbGVjdDI6IERhdGEgY2FuIG5vIGxvbmdlciBiZSBzZXQgdXNpbmcgYHNlbGVjdDIoImRhdGEiKWAuIFlvdSBzaG91bGQgY29uc2lkZXIgc2V0dGluZyB0aGUgdmFsdWUgaW5zdGVhZCB1c2luZyBgJGVsZW1lbnQudmFsKClgLicpO3ZhciB0PVtdO3JldHVybiB0aGlzLmRhdGFBZGFwdGVyLmN1cnJlbnQoZnVuY3Rpb24oZSl7dD1lfSksdH0sZC5wcm90b3R5cGUudmFsPWZ1bmN0aW9uKGUpe2lmKHRoaXMub3B0aW9ucy5nZXQoImRlYnVnIikmJndpbmRvdy5jb25zb2xlJiZjb25zb2xlLndhcm4mJmNvbnNvbGUud2FybignU2VsZWN0MjogVGhlIGBzZWxlY3QyKCJ2YWwiKWAgbWV0aG9kIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBsYXRlciBTZWxlY3QyIHZlcnNpb25zLiBVc2UgJGVsZW1lbnQudmFsKCkgaW5zdGVhZC4nKSxudWxsPT1lfHwwPT09ZS5sZW5ndGgpcmV0dXJuIHRoaXMuJGVsZW1lbnQudmFsKCk7dmFyIHQ9ZVswXTtBcnJheS5pc0FycmF5KHQpJiYodD10Lm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50b1N0cmluZygpfSkpLHRoaXMuJGVsZW1lbnQudmFsKHQpLnRyaWdnZXIoImlucHV0IikudHJpZ2dlcigiY2hhbmdlIil9LGQucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLiRjb250YWluZXIucmVtb3ZlKCksdGhpcy5fb2JzZXJ2ZXIuZGlzY29ubmVjdCgpLHRoaXMuX29ic2VydmVyPW51bGwsdGhpcy5fc3luY0E9bnVsbCx0aGlzLl9zeW5jUz1udWxsLHRoaXMuJGVsZW1lbnQub2ZmKCIuc2VsZWN0MiIpLHRoaXMuJGVsZW1lbnQuYXR0cigidGFiaW5kZXgiLHUuR2V0RGF0YSh0aGlzLiRlbGVtZW50WzBdLCJvbGQtdGFiaW5kZXgiKSksdGhpcy4kZWxlbWVudFswXS5jbGFzc0xpc3QucmVtb3ZlKCJzZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxlIiksdGhpcy4kZWxlbWVudC5hdHRyKCJhcmlhLWhpZGRlbiIsImZhbHNlIiksdS5SZW1vdmVEYXRhKHRoaXMuJGVsZW1lbnRbMF0pLHRoaXMuJGVsZW1lbnQucmVtb3ZlRGF0YSgic2VsZWN0MiIpLHRoaXMuZGF0YUFkYXB0ZXIuZGVzdHJveSgpLHRoaXMuc2VsZWN0aW9uLmRlc3Ryb3koKSx0aGlzLmRyb3Bkb3duLmRlc3Ryb3koKSx0aGlzLnJlc3VsdHMuZGVzdHJveSgpLHRoaXMuZGF0YUFkYXB0ZXI9bnVsbCx0aGlzLnNlbGVjdGlvbj1udWxsLHRoaXMuZHJvcGRvd249bnVsbCx0aGlzLnJlc3VsdHM9bnVsbH0sZC5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKCl7dmFyIGU9dCgnPHNwYW4gY2xhc3M9InNlbGVjdDIgc2VsZWN0Mi1jb250YWluZXIiPjxzcGFuIGNsYXNzPSJzZWxlY3Rpb24iPjwvc3Bhbj48c3BhbiBjbGFzcz0iZHJvcGRvd24td3JhcHBlciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L3NwYW4+Jyk7cmV0dXJuIGUuYXR0cigiZGlyIix0aGlzLm9wdGlvbnMuZ2V0KCJkaXIiKSksdGhpcy4kY29udGFpbmVyPWUsdGhpcy4kY29udGFpbmVyWzBdLmNsYXNzTGlzdC5hZGQoInNlbGVjdDItY29udGFpbmVyLS0iK3RoaXMub3B0aW9ucy5nZXQoInRoZW1lIikpLHUuU3RvcmVEYXRhKGVbMF0sImVsZW1lbnQiLHRoaXMuJGVsZW1lbnQpLGV9LGR9KSxlLmRlZmluZSgianF1ZXJ5LW1vdXNld2hlZWwiLFsianF1ZXJ5Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGV9KSxlLmRlZmluZSgianF1ZXJ5LnNlbGVjdDIiLFsianF1ZXJ5IiwianF1ZXJ5LW1vdXNld2hlZWwiLCIuL3NlbGVjdDIvY29yZSIsIi4vc2VsZWN0Mi9kZWZhdWx0cyIsIi4vc2VsZWN0Mi91dGlscyJdLGZ1bmN0aW9uKHIsZSxzLHQsbyl7aWYobnVsbD09ci5mbi5zZWxlY3QyKXt2YXIgYT1bIm9wZW4iLCJjbG9zZSIsImRlc3Ryb3kiXTtyLmZuLnNlbGVjdDI9ZnVuY3Rpb24odCl7aWYoIm9iamVjdCI9PXR5cGVvZih0PXR8fHt9KSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9ci5leHRlbmQoITAse30sdCk7bmV3IHMocih0aGlzKSxlKX0pLHRoaXM7aWYoInN0cmluZyIhPXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBhcmd1bWVudHMgZm9yIFNlbGVjdDI6ICIrdCk7dmFyIG4saT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBlPW8uR2V0RGF0YSh0aGlzLCJzZWxlY3QyIik7bnVsbD09ZSYmd2luZG93LmNvbnNvbGUmJmNvbnNvbGUuZXJyb3ImJmNvbnNvbGUuZXJyb3IoIlRoZSBzZWxlY3QyKCciK3QrIicpIG1ldGhvZCB3YXMgY2FsbGVkIG9uIGFuIGVsZW1lbnQgdGhhdCBpcyBub3QgdXNpbmcgU2VsZWN0Mi4iKSxuPWVbdF0uYXBwbHkoZSxpKX0pLC0xPGEuaW5kZXhPZih0KT90aGlzOm59fXJldHVybiBudWxsPT1yLmZuLnNlbGVjdDIuZGVmYXVsdHMmJihyLmZuLnNlbGVjdDIuZGVmYXVsdHM9dCksc30pLHtkZWZpbmU6ZS5kZWZpbmUscmVxdWlyZTplLnJlcXVpcmV9fSgpLHQ9ZS5yZXF1aXJlKCJqcXVlcnkuc2VsZWN0MiIpO3JldHVybiB1LmZuLnNlbGVjdDIuYW1kPWUsdH0pOw=="}},"time_used":74,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":36,"receive":38,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/firebase/firebase-8.3.2.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.832Z","timestamp":1785143153832,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/js/firebase/firebase-8.3.2.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"d1efd-67b374e4-9fc6d08a9aa3992c;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 235756\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":859901,"size_decoded":236215,"mime_type":"application/x-javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65535), with no line terminators","md5":"3aeb031c1d596281cfb0bc798ad68c35","sha1":"f3cbd0c473069e581705448366b33fcf71e0fdb9","sha256":"c6129ac86f15d92723bbb81e97f5ab4bcfd97f0744ea5898d2402087520c532b","sha512":"5fcc9700c5c7842dcd0f7c18a1028d6a6bc00536d03ced45d83c4ad7ed7b8530ddde45ec402f4fcb79c8ca87c4541af9786fed00817fb5437e08a4c75e9817ce","ssdeep":"6144:K8YqbosMLHtk4OLs/8wWaoFwApF+GzJXZaGQqdxQUdcujbva18nsLDMX4teWXs4v:nYqbrKOQ/YRQp18nl4sSG+z","tlshash":"5305b5ccb692b062439360b5507f410bf33b685da40e40acf669e9d67cb954e923bf78","first_seen":"2023-07-24T14:01:25Z","last_seen":"2026-07-30T06:02:32.545529Z","times_seen":171,"resource_available":true,"data":"IWZ1bmN0aW9uKHQsZSl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz1lKCk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoZSk6KHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6dHx8c2VsZikuZmlyZWJhc2U9ZSgpfSh0aGlzLGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOyFmdW5jdGlvbih0KXt2YXIgZSxuLHMscixpLG8sYSx1LGMsaDtmdW5jdGlvbiBsKHQpe2lmKCJzdHJpbmciIT10eXBlb2YgdCYmKHQ9U3RyaW5nKHQpKSwvW15hLXowLTlcLSMkJSYnKisuXF5fYHx+XS9pLnRlc3QodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBjaGFyYWN0ZXIgaW4gaGVhZGVyIGZpZWxkIG5hbWUiKTtyZXR1cm4gdC50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIGYodCl7cmV0dXJuIHQ9InN0cmluZyIhPXR5cGVvZiB0P1N0cmluZyh0KTp0fWZ1bmN0aW9uIHAoZSl7dmFyIHQ9e25leHQ6ZnVuY3Rpb24oKXt2YXIgdD1lLnNoaWZ0KCk7cmV0dXJue2RvbmU6dm9pZCAwPT09dCx2YWx1ZTp0fX19O3JldHVybiBuJiYodFtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHR9KSx0fWZ1bmN0aW9uIGQoZSl7dGhpcy5tYXA9e30sZSBpbnN0YW5jZW9mIGQ/ZS5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dGhpcy5hcHBlbmQoZSx0KX0sdGhpcyk6QXJyYXkuaXNBcnJheShlKT9lLmZvckVhY2goZnVuY3Rpb24odCl7dGhpcy5hcHBlbmQodFswXSx0WzFdKX0sdGhpcyk6ZSYmT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZSkuZm9yRWFjaChmdW5jdGlvbih0KXt0aGlzLmFwcGVuZCh0LGVbdF0pfSx0aGlzKX1mdW5jdGlvbiB2KHQpe2lmKHQuYm9keVVzZWQpcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IoIkFscmVhZHkgcmVhZCIpKTt0LmJvZHlVc2VkPSEwfWZ1bmN0aW9uIGcobil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7bi5vbmxvYWQ9ZnVuY3Rpb24oKXt0KG4ucmVzdWx0KX0sbi5vbmVycm9yPWZ1bmN0aW9uKCl7ZShuLmVycm9yKX19KX1mdW5jdGlvbiB5KHQpe3ZhciBlPW5ldyBGaWxlUmVhZGVyLG49ZyhlKTtyZXR1cm4gZS5yZWFkQXNBcnJheUJ1ZmZlcih0KSxufWZ1bmN0aW9uIG0odCl7aWYodC5zbGljZSlyZXR1cm4gdC5zbGljZSgwKTt2YXIgZT1uZXcgVWludDhBcnJheSh0LmJ5dGVMZW5ndGgpO3JldHVybiBlLnNldChuZXcgVWludDhBcnJheSh0KSksZS5idWZmZXJ9ZnVuY3Rpb24gYigpe3JldHVybiB0aGlzLmJvZHlVc2VkPSExLHRoaXMuX2luaXRCb2R5PWZ1bmN0aW9uKHQpe2lmKHRoaXMuX2JvZHlJbml0PXQpaWYoInN0cmluZyI9PXR5cGVvZiB0KXRoaXMuX2JvZHlUZXh0PXQ7ZWxzZSBpZihzJiZCbG9iLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpKXRoaXMuX2JvZHlCbG9iPXQ7ZWxzZSBpZihyJiZGb3JtRGF0YS5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih0KSl0aGlzLl9ib2R5Rm9ybURhdGE9dDtlbHNlIGlmKGUmJlVSTFNlYXJjaFBhcmFtcy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih0KSl0aGlzLl9ib2R5VGV4dD10LnRvU3RyaW5nKCk7ZWxzZSBpZihpJiZzJiZhKHQpKXRoaXMuX2JvZHlBcnJheUJ1ZmZlcj1tKHQuYnVmZmVyKSx0aGlzLl9ib2R5SW5pdD1uZXcgQmxvYihbdGhpcy5fYm9keUFycmF5QnVmZmVyXSk7ZWxzZXtpZighaXx8IUFycmF5QnVmZmVyLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpJiYhdSh0KSl0aHJvdyBuZXcgRXJyb3IoInVuc3VwcG9ydGVkIEJvZHlJbml0IHR5cGUiKTt0aGlzLl9ib2R5QXJyYXlCdWZmZXI9bSh0KX1lbHNlIHRoaXMuX2JvZHlUZXh0PSIiO3RoaXMuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwoInN0cmluZyI9PXR5cGVvZiB0P3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsInRleHQvcGxhaW47Y2hhcnNldD1VVEYtOCIpOnRoaXMuX2JvZHlCbG9iJiZ0aGlzLl9ib2R5QmxvYi50eXBlP3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsdGhpcy5fYm9keUJsb2IudHlwZSk6ZSYmVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpJiZ0aGlzLmhlYWRlcnMuc2V0KCJjb250ZW50LXR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD1VVEYtOCIpKX0scyYmKHRoaXMuYmxvYj1mdW5jdGlvbigpe3ZhciB0PXYodGhpcyk7aWYodClyZXR1cm4gdDtpZih0aGlzLl9ib2R5QmxvYilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlCbG9iKTtpZih0aGlzLl9ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgQmxvYihbdGhpcy5fYm9keUFycmF5QnVmZmVyXSkpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZWFkIEZvcm1EYXRhIGJvZHkgYXMgYmxvYiIpO3JldHVybiBQcm9taXNlLnJlc29sdmUobmV3IEJsb2IoW3RoaXMuX2JvZHlUZXh0XSkpfSx0aGlzLmFycmF5QnVmZmVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2JvZHlBcnJheUJ1ZmZlcj92KHRoaXMpfHxQcm9taXNlLnJlc29sdmUodGhpcy5fYm9keUFycmF5QnVmZmVyKTp0aGlzLmJsb2IoKS50aGVuKHkpfSksdGhpcy50ZXh0PWZ1bmN0aW9uKCl7dmFyIHQsZSxuPXYodGhpcyk7aWYobilyZXR1cm4gbjtpZih0aGlzLl9ib2R5QmxvYilyZXR1cm4gdD10aGlzLl9ib2R5QmxvYixlPW5ldyBGaWxlUmVhZGVyLG49ZyhlKSxlLnJlYWRBc1RleHQodCksbjtpZih0aGlzLl9ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShmdW5jdGlvbih0KXtmb3IodmFyIGU9bmV3IFVpbnQ4QXJyYXkodCksbj1uZXcgQXJyYXkoZS5sZW5ndGgpLHI9MDtyPGUubGVuZ3RoO3IrKyluW3JdPVN0cmluZy5mcm9tQ2hhckNvZGUoZVtyXSk7cmV0dXJuIG4uam9pbigiIil9KHRoaXMuX2JvZHlBcnJheUJ1ZmZlcikpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZWFkIEZvcm1EYXRhIGJvZHkgYXMgdGV4dCIpO3JldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fYm9keVRleHQpfSxyJiYodGhpcy5mb3JtRGF0YT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRleHQoKS50aGVuKF8pfSksdGhpcy5qc29uPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGV4dCgpLnRoZW4oSlNPTi5wYXJzZSl9LHRoaXN9ZnVuY3Rpb24gdyh0LGUpe3ZhciBuLHI9KGU9ZXx8e30pLmJvZHk7aWYodCBpbnN0YW5jZW9mIHcpe2lmKHQuYm9keVVzZWQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQWxyZWFkeSByZWFkIik7dGhpcy51cmw9dC51cmwsdGhpcy5jcmVkZW50aWFscz10LmNyZWRlbnRpYWxzLGUuaGVhZGVyc3x8KHRoaXMuaGVhZGVycz1uZXcgZCh0LmhlYWRlcnMpKSx0aGlzLm1ldGhvZD10Lm1ldGhvZCx0aGlzLm1vZGU9dC5tb2RlLHJ8fG51bGw9PXQuX2JvZHlJbml0fHwocj10Ll9ib2R5SW5pdCx0LmJvZHlVc2VkPSEwKX1lbHNlIHRoaXMudXJsPVN0cmluZyh0KTtpZih0aGlzLmNyZWRlbnRpYWxzPWUuY3JlZGVudGlhbHN8fHRoaXMuY3JlZGVudGlhbHN8fCJvbWl0IiwhZS5oZWFkZXJzJiZ0aGlzLmhlYWRlcnN8fCh0aGlzLmhlYWRlcnM9bmV3IGQoZS5oZWFkZXJzKSksdGhpcy5tZXRob2Q9KG49ZS5tZXRob2R8fHRoaXMubWV0aG9kfHwiR0VUIix0PW4udG9VcHBlckNhc2UoKSwtMTxjLmluZGV4T2YodCk/dDpuKSx0aGlzLm1vZGU9ZS5tb2RlfHx0aGlzLm1vZGV8fG51bGwsdGhpcy5yZWZlcnJlcj1udWxsLCgiR0VUIj09PXRoaXMubWV0aG9kfHwiSEVBRCI9PT10aGlzLm1ldGhvZCkmJnIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9keSBub3QgYWxsb3dlZCBmb3IgR0VUIG9yIEhFQUQgcmVxdWVzdHMiKTt0aGlzLl9pbml0Qm9keShyKX1mdW5jdGlvbiBfKHQpe3ZhciBuPW5ldyBGb3JtRGF0YTtyZXR1cm4gdC50cmltKCkuc3BsaXQoIiYiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlO3QmJih0PShlPXQuc3BsaXQoIj0iKSkuc2hpZnQoKS5yZXBsYWNlKC9cKy9nLCIgIiksZT1lLmpvaW4oIj0iKS5yZXBsYWNlKC9cKy9nLCIgIiksbi5hcHBlbmQoZGVjb2RlVVJJQ29tcG9uZW50KHQpLGRlY29kZVVSSUNvbXBvbmVudChlKSkpfSksbn1mdW5jdGlvbiBJKHQsZSl7ZT1lfHx7fSx0aGlzLnR5cGU9ImRlZmF1bHQiLHRoaXMuc3RhdHVzPXZvaWQgMD09PWUuc3RhdHVzPzIwMDplLnN0YXR1cyx0aGlzLm9rPTIwMDw9dGhpcy5zdGF0dXMmJnRoaXMuc3RhdHVzPDMwMCx0aGlzLnN0YXR1c1RleHQ9InN0YXR1c1RleHQiaW4gZT9lLnN0YXR1c1RleHQ6Ik9LIix0aGlzLmhlYWRlcnM9bmV3IGQoZS5oZWFkZXJzKSx0aGlzLnVybD1lLnVybHx8IiIsdGhpcy5faW5pdEJvZHkodCl9dC5mZXRjaHx8KGU9IlVSTFNlYXJjaFBhcmFtcyJpbiB0LG49IlN5bWJvbCJpbiB0JiYiaXRlcmF0b3IiaW4gU3ltYm9sLHM9IkZpbGVSZWFkZXIiaW4gdCYmIkJsb2IiaW4gdCYmZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBCbG9iLCEwfWNhdGNoKHQpe3JldHVybiExfX0oKSxyPSJGb3JtRGF0YSJpbiB0LChpPSJBcnJheUJ1ZmZlciJpbiB0KSYmKG89WyJbb2JqZWN0IEludDhBcnJheV0iLCJbb2JqZWN0IFVpbnQ4QXJyYXldIiwiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iLCJbb2JqZWN0IEludDE2QXJyYXldIiwiW29iamVjdCBVaW50MTZBcnJheV0iLCJbb2JqZWN0IEludDMyQXJyYXldIiwiW29iamVjdCBVaW50MzJBcnJheV0iLCJbb2JqZWN0IEZsb2F0MzJBcnJheV0iLCJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXSxhPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZEYXRhVmlldy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih0KX0sdT1BcnJheUJ1ZmZlci5pc1ZpZXd8fGZ1bmN0aW9uKHQpe3JldHVybiB0JiYtMTxvLmluZGV4T2YoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpKX0pLGQucHJvdG90eXBlLmFwcGVuZD1mdW5jdGlvbih0LGUpe3Q9bCh0KSxlPWYoZSk7dmFyIG49dGhpcy5tYXBbdF07dGhpcy5tYXBbdF09bj9uKyIsIitlOmV9LGQucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXtkZWxldGUgdGhpcy5tYXBbbCh0KV19LGQucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXtyZXR1cm4gdD1sKHQpLHRoaXMuaGFzKHQpP3RoaXMubWFwW3RdOm51bGx9LGQucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5tYXAuaGFzT3duUHJvcGVydHkobCh0KSl9LGQucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LGUpe3RoaXMubWFwW2wodCldPWYoZSl9LGQucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG4gaW4gdGhpcy5tYXApdGhpcy5tYXAuaGFzT3duUHJvcGVydHkobikmJnQuY2FsbChlLHRoaXMubWFwW25dLG4sdGhpcyl9LGQucHJvdG90eXBlLmtleXM9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7bi5wdXNoKGUpfSkscChuKX0sZC5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIHRoaXMuZm9yRWFjaChmdW5jdGlvbih0KXtlLnB1c2godCl9KSxwKGUpfSxkLnByb3RvdHlwZS5lbnRyaWVzPWZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIHRoaXMuZm9yRWFjaChmdW5jdGlvbih0LGUpe24ucHVzaChbZSx0XSl9KSxwKG4pfSxuJiYoZC5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1kLnByb3RvdHlwZS5lbnRyaWVzKSxjPVsiREVMRVRFIiwiR0VUIiwiSEVBRCIsIk9QVElPTlMiLCJQT1NUIiwiUFVUIl0sdy5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHcodGhpcyx7Ym9keTp0aGlzLl9ib2R5SW5pdH0pfSxiLmNhbGwody5wcm90b3R5cGUpLGIuY2FsbChJLnByb3RvdHlwZSksSS5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEkodGhpcy5fYm9keUluaXQse3N0YXR1czp0aGlzLnN0YXR1cyxzdGF0dXNUZXh0OnRoaXMuc3RhdHVzVGV4dCxoZWFkZXJzOm5ldyBkKHRoaXMuaGVhZGVycyksdXJsOnRoaXMudXJsfSl9LEkuZXJyb3I9ZnVuY3Rpb24oKXt2YXIgdD1uZXcgSShudWxsLHtzdGF0dXM6MCxzdGF0dXNUZXh0OiIifSk7cmV0dXJuIHQudHlwZT0iZXJyb3IiLHR9LGg9WzMwMSwzMDIsMzAzLDMwNywzMDhdLEkucmVkaXJlY3Q9ZnVuY3Rpb24odCxlKXtpZigtMT09PWguaW5kZXhPZihlKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCBzdGF0dXMgY29kZSIpO3JldHVybiBuZXcgSShudWxsLHtzdGF0dXM6ZSxoZWFkZXJzOntsb2NhdGlvbjp0fX0pfSx0LkhlYWRlcnM9ZCx0LlJlcXVlc3Q9dyx0LlJlc3BvbnNlPUksdC5mZXRjaD1mdW5jdGlvbihuLG8pe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyLHQpe3ZhciBlPW5ldyB3KG4sbyksaT1uZXcgWE1MSHR0cFJlcXVlc3Q7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgbix0PXtzdGF0dXM6aS5zdGF0dXMsc3RhdHVzVGV4dDppLnN0YXR1c1RleHQsaGVhZGVyczooZT1pLmdldEFsbFJlc3BvbnNlSGVhZGVycygpfHwiIixuPW5ldyBkLGUucmVwbGFjZSgvXHI/XG5bXHQgXSsvZywiICIpLnNwbGl0KC9ccj9cbi8pLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9dC5zcGxpdCgiOiIpLHQ9ZS5zaGlmdCgpLnRyaW0oKTt0JiYoZT1lLmpvaW4oIjoiKS50cmltKCksbi5hcHBlbmQodCxlKSl9KSxuKX07dC51cmw9InJlc3BvbnNlVVJMImluIGk/aS5yZXNwb25zZVVSTDp0LmhlYWRlcnMuZ2V0KCJYLVJlcXVlc3QtVVJMIik7dmFyIGU9InJlc3BvbnNlImluIGk/aS5yZXNwb25zZTppLnJlc3BvbnNlVGV4dDtyKG5ldyBJKGUsdCkpfSxpLm9uZXJyb3I9ZnVuY3Rpb24oKXt0KG5ldyBUeXBlRXJyb3IoIk5ldHdvcmsgcmVxdWVzdCBmYWlsZWQiKSl9LGkub250aW1lb3V0PWZ1bmN0aW9uKCl7dChuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSxpLm9wZW4oZS5tZXRob2QsZS51cmwsITApLCJpbmNsdWRlIj09PWUuY3JlZGVudGlhbHM/aS53aXRoQ3JlZGVudGlhbHM9ITA6Im9taXQiPT09ZS5jcmVkZW50aWFscyYmKGkud2l0aENyZWRlbnRpYWxzPSExKSwicmVzcG9uc2VUeXBlImluIGkmJnMmJihpLnJlc3BvbnNlVHlwZT0iYmxvYiIpLGUuaGVhZGVycy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7aS5zZXRSZXF1ZXN0SGVhZGVyKGUsdCl9KSxpLnNlbmQodm9pZCAwPT09ZS5fYm9keUluaXQ/bnVsbDplLl9ib2R5SW5pdCl9KX0sdC5mZXRjaC5wb2x5ZmlsbD0hMCl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOnZvaWQgMCk7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjp7fTtmdW5jdGlvbiBlKHQpe3ZhciBlPXtleHBvcnRzOnt9fTtyZXR1cm4gdChlLGUuZXhwb3J0cyksZS5leHBvcnRzfWZ1bmN0aW9uIGcodCl7dHJ5e3JldHVybiEhdCgpfWNhdGNoKHQpe3JldHVybiEwfX1mdW5jdGlvbiB2KHQsZSl7cmV0dXJue2VudW1lcmFibGU6ISgxJnQpLGNvbmZpZ3VyYWJsZTohKDImdCksd3JpdGFibGU6ISg0JnQpLHZhbHVlOmV9fWZ1bmN0aW9uIHIodCl7cmV0dXJuIGQuY2FsbCh0KS5zbGljZSg4LC0xKX1mdW5jdGlvbiBzKHQpe2lmKG51bGw9PXQpdGhyb3cgVHlwZUVycm9yKCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAiK3QpO3JldHVybiB0fWZ1bmN0aW9uIHUodCl7cmV0dXJuIF8ocyh0KSl9ZnVuY3Rpb24geSh0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQ/bnVsbCE9PXQ6ImZ1bmN0aW9uIj09dHlwZW9mIHR9ZnVuY3Rpb24gaSh0LGUpe2lmKCF5KHQpKXJldHVybiB0O3ZhciBuLHI7aWYoZSYmImZ1bmN0aW9uIj09dHlwZW9mKG49dC50b1N0cmluZykmJiF5KHI9bi5jYWxsKHQpKSlyZXR1cm4gcjtpZigiZnVuY3Rpb24iPT10eXBlb2Yobj10LnZhbHVlT2YpJiYheShyPW4uY2FsbCh0KSkpcmV0dXJuIHI7aWYoIWUmJiJmdW5jdGlvbiI9PXR5cGVvZihuPXQudG9TdHJpbmcpJiYheShyPW4uY2FsbCh0KSkpcmV0dXJuIHI7dGhyb3cgVHlwZUVycm9yKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX1mdW5jdGlvbiBjKHQsZSl7cmV0dXJuIEkuY2FsbCh0LGUpfWZ1bmN0aW9uIG4odCl7cmV0dXJuIEU/VC5jcmVhdGVFbGVtZW50KHQpOnt9fWZ1bmN0aW9uIG0odCl7aWYoIXkodCkpdGhyb3cgVHlwZUVycm9yKFN0cmluZyh0KSsiIGlzIG5vdCBhbiBvYmplY3QiKTtyZXR1cm4gdH1mdW5jdGlvbiBoKGUsbil7dHJ5e1IoYixlLG4pfWNhdGNoKHQpe2JbZV09bn1yZXR1cm4gbn12YXIgbz1mdW5jdGlvbih0KXtyZXR1cm4gdCYmdC5NYXRoPT1NYXRoJiZ0fSxiPW8oIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzKXx8bygib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93KXx8bygib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYpfHxvKCJvYmplY3QiPT10eXBlb2YgdCYmdCl8fGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCl8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksZj0hZyhmdW5jdGlvbigpe3JldHVybiA3IT1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sMSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSlbMV19KSxhPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLGw9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixwPXtmOmwmJiFhLmNhbGwoezE6Mn0sMSk/ZnVuY3Rpb24odCl7dD1sKHRoaXMsdCk7cmV0dXJuISF0JiZ0LmVudW1lcmFibGV9OmF9LGQ9e30udG9TdHJpbmcsdz0iIi5zcGxpdCxfPWcoZnVuY3Rpb24oKXtyZXR1cm4hT2JqZWN0KCJ6IikucHJvcGVydHlJc0VudW1lcmFibGUoMCl9KT9mdW5jdGlvbih0KXtyZXR1cm4iU3RyaW5nIj09cih0KT93LmNhbGwodCwiIik6T2JqZWN0KHQpfTpPYmplY3QsST17fS5oYXNPd25Qcm9wZXJ0eSxUPWIuZG9jdW1lbnQsRT15KFQpJiZ5KFQuY3JlYXRlRWxlbWVudCksUz0hZiYmIWcoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4oImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pLEM9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixOPXtmOmY/QzpmdW5jdGlvbih0LGUpe2lmKHQ9dSh0KSxlPWkoZSwhMCksUyl0cnl7cmV0dXJuIEModCxlKX1jYXRjaCh0KXt9aWYoYyh0LGUpKXJldHVybiB2KCFwLmYuY2FsbCh0LGUpLHRbZV0pfX0sQT1PYmplY3QuZGVmaW5lUHJvcGVydHksaz17ZjpmP0E6ZnVuY3Rpb24odCxlLG4pe2lmKG0odCksZT1pKGUsITApLG0obiksUyl0cnl7cmV0dXJuIEEodCxlLG4pfWNhdGNoKHQpe31pZigiZ2V0ImluIG58fCJzZXQiaW4gbil0aHJvdyBUeXBlRXJyb3IoIkFjY2Vzc29ycyBub3Qgc3VwcG9ydGVkIik7cmV0dXJuInZhbHVlImluIG4mJih0W2VdPW4udmFsdWUpLHR9fSxSPWY/ZnVuY3Rpb24odCxlLG4pe3JldHVybiBrLmYodCxlLHYoMSxuKSl9OmZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdFtlXT1uLHR9LFA9Il9fY29yZS1qc19zaGFyZWRfXyIsTz1iW1BdfHxoKFAse30pLEQ9RnVuY3Rpb24udG9TdHJpbmc7ImZ1bmN0aW9uIiE9dHlwZW9mIE8uaW5zcGVjdFNvdXJjZSYmKE8uaW5zcGVjdFNvdXJjZT1mdW5jdGlvbih0KXtyZXR1cm4gRC5jYWxsKHQpfSk7ZnVuY3Rpb24geCh0KXtyZXR1cm4iU3ltYm9sKCIrU3RyaW5nKHZvaWQgMD09PXQ/IiI6dCkrIilfIisoKytRK1kpLnRvU3RyaW5nKDM2KX12YXIgTCxNLEYsVSxqLHEsVixCLEs9Ty5pbnNwZWN0U291cmNlLFc9Yi5XZWFrTWFwLEg9ImZ1bmN0aW9uIj09dHlwZW9mIFcmJi9uYXRpdmUgY29kZS8udGVzdChLKFcpKSxHPSExLHo9ZShmdW5jdGlvbih0KXsodC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIE9bdF18fChPW3RdPXZvaWQgMCE9PWU/ZTp7fSl9KSgidmVyc2lvbnMiLFtdKS5wdXNoKHt2ZXJzaW9uOiIzLjguMSIsbW9kZToiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMjAgRGVuaXMgUHVzaGthcmV2ICh6bG9pcm9jay5ydSkifSl9KSxRPTAsWT1NYXRoLnJhbmRvbSgpLFg9eigia2V5cyIpLEo9ZnVuY3Rpb24odCl7cmV0dXJuIFhbdF18fChYW3RdPXgodCkpfSwkPXt9LFo9Yi5XZWFrTWFwO1Y9SD8oTD1PLnN0YXRlfHwoTy5zdGF0ZT1uZXcgWiksTT1MLmdldCxGPUwuaGFzLFU9TC5zZXQsaj1mdW5jdGlvbih0LGUpe3JldHVybiBlLmZhY2FkZT10LFUuY2FsbChMLHQsZSksZX0scT1mdW5jdGlvbih0KXtyZXR1cm4gTS5jYWxsKEwsdCl8fHt9fSxmdW5jdGlvbih0KXtyZXR1cm4gRi5jYWxsKEwsdCl9KTooQj1KKCJzdGF0ZSIpLCRbQl09ITAsaj1mdW5jdGlvbih0LGUpe3JldHVybiBlLmZhY2FkZT10LFIodCxCLGUpLGV9LHE9ZnVuY3Rpb24odCl7cmV0dXJuIGModCxCKT90W0JdOnt9fSxmdW5jdGlvbih0KXtyZXR1cm4gYyh0LEIpfSk7ZnVuY3Rpb24gdHQodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQ/dDp2b2lkIDB9ZnVuY3Rpb24gZXQodCxlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDwyP3R0KHB0W3RdKXx8dHQoYlt0XSk6cHRbdF0mJnB0W3RdW2VdfHxiW3RdJiZiW3RdW2VdfWZ1bmN0aW9uIG50KHQpe3JldHVybiBpc05hTih0PSt0KT8wOigwPHQ/dnQ6ZHQpKHQpfWZ1bmN0aW9uIHJ0KHQpe3JldHVybiAwPHQ/Z3QobnQodCksOTAwNzE5OTI1NDc0MDk5MSk6MH1mdW5jdGlvbiBpdCh0LGUpe3ZhciBuLHI9dSh0KSxpPTAsbz1bXTtmb3IobiBpbiByKSFjKCQsbikmJmMocixuKSYmby5wdXNoKG4pO2Zvcig7ZS5sZW5ndGg+aTspYyhyLG49ZVtpKytdKSYmKH53dChvLG4pfHxvLnB1c2gobikpO3JldHVybiBvfWZ1bmN0aW9uIG90KHQsZSl7Zm9yKHZhciBuPVN0KGUpLHI9ay5mLGk9Ti5mLG89MDtvPG4ubGVuZ3RoO28rKyl7dmFyIHM9bltvXTtjKHQscyl8fHIodCxzLGkoZSxzKSl9fWZ1bmN0aW9uIHN0KHQsZSl7dmFyIG4scixpLG89dC50YXJnZXQscz10Lmdsb2JhbCxhPXQuc3RhdCx1PXM/YjphP2Jbb118fGgobyx7fSk6KGJbb118fHt9KS5wcm90b3R5cGU7aWYodSlmb3IobiBpbiBlKXtpZihyPWVbbl0saT10Lm5vVGFyZ2V0R2V0PyhpPU90KHUsbikpJiZpLnZhbHVlOnVbbl0sIVB0KHM/bjpvKyhhPyIuIjoiIyIpK24sdC5mb3JjZWQpJiZ2b2lkIDAhPT1pKXtpZih0eXBlb2Ygcj09dHlwZW9mIGkpY29udGludWU7b3QocixpKX0odC5zaGFtfHxpJiZpLnNoYW0pJiZSKHIsInNoYW0iLCEwKSxmdCh1LG4scix0KX19ZnVuY3Rpb24gYXQodCl7cmV0dXJuIE9iamVjdChzKHQpKX1mdW5jdGlvbiB1dCgpe31mdW5jdGlvbiBjdCh0KXtyZXR1cm4iPHNjcmlwdD4iK3QrIjwvIitWdCsiPiJ9dmFyIGh0LGx0PXtzZXQ6aixnZXQ6cSxoYXM6VixlbmZvcmNlOmZ1bmN0aW9uKHQpe3JldHVybiBWKHQpP3EodCk6aih0LHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbih0KXt2YXIgZTtpZigheSh0KXx8KGU9cSh0KSkudHlwZSE9PW4pdGhyb3cgVHlwZUVycm9yKCJJbmNvbXBhdGlibGUgcmVjZWl2ZXIsICIrbisiIHJlcXVpcmVkIik7cmV0dXJuIGV9fX0sZnQ9ZShmdW5jdGlvbih0KXt2YXIgZT1sdC5nZXQsYT1sdC5lbmZvcmNlLHU9U3RyaW5nKFN0cmluZykuc3BsaXQoIlN0cmluZyIpOyh0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4scil7dmFyIGk9ISFyJiYhIXIudW5zYWZlLG89ISFyJiYhIXIuZW51bWVyYWJsZSxzPSEhciYmISFyLm5vVGFyZ2V0R2V0OyJmdW5jdGlvbiI9PXR5cGVvZiBuJiYoInN0cmluZyIhPXR5cGVvZiBlfHxjKG4sIm5hbWUiKXx8UihuLCJuYW1lIixlKSwocj1hKG4pKS5zb3VyY2V8fChyLnNvdXJjZT11LmpvaW4oInN0cmluZyI9PXR5cGVvZiBlP2U6IiIpKSksdCE9PWI/KGk/IXMmJnRbZV0mJihvPSEwKTpkZWxldGUgdFtlXSxvP3RbZV09bjpSKHQsZSxuKSk6bz90W2VdPW46aChlLG4pfSkoRnVuY3Rpb24ucHJvdG90eXBlLCJ0b1N0cmluZyIsZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcyYmZSh0aGlzKS5zb3VyY2V8fEsodGhpcyl9KX0pLHB0PWIsZHQ9TWF0aC5jZWlsLHZ0PU1hdGguZmxvb3IsZ3Q9TWF0aC5taW4seXQ9TWF0aC5tYXgsbXQ9TWF0aC5taW4sYnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuKXt2YXIgcixpPXUodCksbz1ydChpLmxlbmd0aCkscz1mdW5jdGlvbih0LGUpe3Q9bnQodCk7cmV0dXJuIHQ8MD95dCh0K2UsMCk6bXQodCxlKX0obixvKTtpZihhJiZlIT1lKXtmb3IoO3M8bzspaWYoKHI9aVtzKytdKSE9cilyZXR1cm4hMH1lbHNlIGZvcig7czxvO3MrKylpZigoYXx8cyBpbiBpKSYmaVtzXT09PWUpcmV0dXJuIGF8fHN8fDA7cmV0dXJuIWEmJi0xfX0sd3Q9e2luY2x1ZGVzOmJ0KCEwKSxpbmRleE9mOmJ0KCExKX0uaW5kZXhPZixfdD1bImNvbnN0cnVjdG9yIiwiaGFzT3duUHJvcGVydHkiLCJpc1Byb3RvdHlwZU9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJ0b0xvY2FsZVN0cmluZyIsInRvU3RyaW5nIiwidmFsdWVPZiJdLEl0PV90LmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIiksVHQ9e2Y6T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKHQpe3JldHVybiBpdCh0LEl0KX19LEV0PXtmOk9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHN9LFN0PWV0KCJSZWZsZWN0Iiwib3duS2V5cyIpfHxmdW5jdGlvbih0KXt2YXIgZT1UdC5mKG0odCkpLG49RXQuZjtyZXR1cm4gbj9lLmNvbmNhdChuKHQpKTplfSxDdD0vI3xcLnByb3RvdHlwZVwuLyxvPWZ1bmN0aW9uKHQsZSl7dD1BdFtOdCh0KV07cmV0dXJuIHQ9PVJ0fHx0IT1rdCYmKCJmdW5jdGlvbiI9PXR5cGVvZiBlP2coZSk6ISFlKX0sTnQ9by5ub3JtYWxpemU9ZnVuY3Rpb24odCl7cmV0dXJuIFN0cmluZyh0KS5yZXBsYWNlKEN0LCIuIikudG9Mb3dlckNhc2UoKX0sQXQ9by5kYXRhPXt9LGt0PW8uTkFUSVZFPSJOIixSdD1vLlBPTFlGSUxMPSJQIixQdD1vLE90PU4uZix0PSFnKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gdC5wcm90b3R5cGUuY29uc3RydWN0b3I9bnVsbCxPYmplY3QuZ2V0UHJvdG90eXBlT2YobmV3IHQpIT09dC5wcm90b3R5cGV9KSxEdD1KKCJJRV9QUk9UTyIpLHh0PU9iamVjdC5wcm90b3R5cGUsTHQ9dD9PYmplY3QuZ2V0UHJvdG90eXBlT2Y6ZnVuY3Rpb24odCl7cmV0dXJuIHQ9YXQodCksYyh0LER0KT90W0R0XToiZnVuY3Rpb24iPT10eXBlb2YgdC5jb25zdHJ1Y3RvciYmdCBpbnN0YW5jZW9mIHQuY29uc3RydWN0b3I/dC5jb25zdHJ1Y3Rvci5wcm90b3R5cGU6dCBpbnN0YW5jZW9mIE9iamVjdD94dDpudWxsfSxNdD1PYmplY3Quc2V0UHJvdG90eXBlT2Z8fCgiX19wcm90b19fImlue30/ZnVuY3Rpb24oKXt2YXIgbixyPSExLHQ9e307dHJ5eyhuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoT2JqZWN0LnByb3RvdHlwZSwiX19wcm90b19fIikuc2V0KS5jYWxsKHQsW10pLHI9dCBpbnN0YW5jZW9mIEFycmF5fWNhdGNoKHQpe31yZXR1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm4gbSh0KSxmdW5jdGlvbih0KXtpZigheSh0KSYmbnVsbCE9PXQpdGhyb3cgVHlwZUVycm9yKCJDYW4ndCBzZXQgIitTdHJpbmcodCkrIiBhcyBhIHByb3RvdHlwZSIpfShlKSxyP24uY2FsbCh0LGUpOnQuX19wcm90b19fPWUsdH19KCk6dm9pZCAwKSxGdD1PYmplY3Qua2V5c3x8ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHQsX3QpfSxVdD1mP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzOmZ1bmN0aW9uKHQsZSl7bSh0KTtmb3IodmFyIG4scj1GdChlKSxpPXIubGVuZ3RoLG89MDtvPGk7KWsuZih0LG49cltvKytdLGVbbl0pO3JldHVybiB0fSxqdD1ldCgiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiKSxxdD0icHJvdG90eXBlIixWdD0ic2NyaXB0IixCdD1KKCJJRV9QUk9UTyIpLEt0PWZ1bmN0aW9uKCl7dHJ5e2h0PWRvY3VtZW50LmRvbWFpbiYmbmV3IEFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIil9Y2F0Y2godCl7fXZhciB0O0t0PWh0P2Z1bmN0aW9uKHQpe3Qud3JpdGUoY3QoIiIpKSx0LmNsb3NlKCk7dmFyIGU9dC5wYXJlbnRXaW5kb3cuT2JqZWN0O3JldHVybiB0PW51bGwsZX0oaHQpOigodD1uKCJpZnJhbWUiKSkuc3R5bGUuZGlzcGxheT0ibm9uZSIsanQuYXBwZW5kQ2hpbGQodCksdC5zcmM9U3RyaW5nKCJqYXZhc2NyaXB0OiIpLCh0PXQuY29udGVudFdpbmRvdy5kb2N1bWVudCkub3BlbigpLHQud3JpdGUoY3QoImRvY3VtZW50LkY9T2JqZWN0IikpLHQuY2xvc2UoKSx0LkYpO2Zvcih2YXIgZT1fdC5sZW5ndGg7ZS0tOylkZWxldGUgS3RbcXRdW190W2VdXTtyZXR1cm4gS3QoKX07JFtCdF09ITA7ZnVuY3Rpb24gV3QodCl7cmV0dXJuIGMoWHQsdCl8fChZdCYmYyhKdCx0KT9YdFt0XT1KdFt0XTpYdFt0XT0kdCgiU3ltYm9sLiIrdCkpLFh0W3RdfWZ1bmN0aW9uIEh0KHQpe3JldHVybiB2b2lkIDAhPT10JiYoWnQuQXJyYXk9PT10fHxlZVt0ZV09PT10KX1mdW5jdGlvbiBHdCh0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBUeXBlRXJyb3IoU3RyaW5nKHQpKyIgaXMgbm90IGEgZnVuY3Rpb24iKTtyZXR1cm4gdH1mdW5jdGlvbiB6dChyLGksdCl7aWYoR3Qociksdm9pZCAwPT09aSlyZXR1cm4gcjtzd2l0Y2godCl7Y2FzZSAwOnJldHVybiBmdW5jdGlvbigpe3JldHVybiByLmNhbGwoaSl9O2Nhc2UgMTpyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIHIuY2FsbChpLHQpfTtjYXNlIDI6cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHIuY2FsbChpLHQsZSl9O2Nhc2UgMzpyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3JldHVybiByLmNhbGwoaSx0LGUsbil9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiByLmFwcGx5KGksYXJndW1lbnRzKX19dmFyIFF0PU9iamVjdC5jcmVhdGV8fGZ1bmN0aW9uKHQsZSl7dmFyIG47cmV0dXJuIG51bGwhPT10Pyh1dFtxdF09bSh0KSxuPW5ldyB1dCx1dFtxdF09bnVsbCxuW0J0XT10KTpuPUt0KCksdm9pZCAwPT09ZT9uOlV0KG4sZSl9LFl0PSEhT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyYmIWcoZnVuY3Rpb24oKXtyZXR1cm4hU3RyaW5nKFN5bWJvbCgpKX0pLGE9WXQmJiFTeW1ib2wuc2hhbSYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3IsWHQ9eigid2tzIiksSnQ9Yi5TeW1ib2wsJHQ9YT9KdDpKdCYmSnQud2l0aG91dFNldHRlcnx8eCxadD17fSx0ZT1XdCgiaXRlcmF0b3IiKSxlZT1BcnJheS5wcm90b3R5cGUsUD17fTtQW1d0KCJ0b1N0cmluZ1RhZyIpXT0ieiI7ZnVuY3Rpb24gbmUodCl7aWYobnVsbCE9dClyZXR1cm4gdFtjZV18fHRbIkBAaXRlcmF0b3IiXXx8WnRbdWUodCldfWZ1bmN0aW9uIHJlKHQpe3ZhciBlPXQucmV0dXJuO3JldHVybiB2b2lkIDAhPT1lJiZtKGUuY2FsbCh0KSkudmFsdWV9ZnVuY3Rpb24gaWUodCxlKXt0aGlzLnN0b3BwZWQ9dCx0aGlzLnJlc3VsdD1lfWZ1bmN0aW9uIG9lKHQsZSxuKXtmdW5jdGlvbiByKHQpe3JldHVybiBvJiZyZShvKSxuZXcgaWUoITAsdCl9ZnVuY3Rpb24gaSh0KXtyZXR1cm4gZj8obSh0KSxkP3YodFswXSx0WzFdLHIpOnYodFswXSx0WzFdKSk6ZD92KHQscik6dih0KX12YXIgbyxzLGEsdSxjLGgsbD1uJiZuLnRoYXQsZj0hKCFufHwhbi5BU19FTlRSSUVTKSxwPSEoIW58fCFuLklTX0lURVJBVE9SKSxkPSEoIW58fCFuLklOVEVSUlVQVEVEKSx2PXp0KGUsbCwxK2YrZCk7aWYocClvPXQ7ZWxzZXtpZigiZnVuY3Rpb24iIT10eXBlb2YocD1uZSh0KSkpdGhyb3cgVHlwZUVycm9yKCJUYXJnZXQgaXMgbm90IGl0ZXJhYmxlIik7aWYoSHQocCkpe2ZvcihzPTAsYT1ydCh0Lmxlbmd0aCk7czxhO3MrKylpZigodT1pKHRbc10pKSYmdSBpbnN0YW5jZW9mIGllKXJldHVybiB1O3JldHVybiBuZXcgaWUoITEpfW89cC5jYWxsKHQpfWZvcihjPW8ubmV4dDshKGg9Yy5jYWxsKG8pKS5kb25lOyl7dHJ5e3U9aShoLnZhbHVlKX1jYXRjaCh0KXt0aHJvdyByZShvKSx0fWlmKCJvYmplY3QiPT10eXBlb2YgdSYmdSYmdSBpbnN0YW5jZW9mIGllKXJldHVybiB1fXJldHVybiBuZXcgaWUoITEpfXZhciBXPSJbb2JqZWN0IHpdIj09PVN0cmluZyhQKSxzZT1XdCgidG9TdHJpbmdUYWciKSxhZT0iQXJndW1lbnRzIj09cihmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpLHVlPVc/cjpmdW5jdGlvbih0KXt2YXIgZTtyZXR1cm4gdm9pZCAwPT09dD8iVW5kZWZpbmVkIjpudWxsPT09dD8iTnVsbCI6InN0cmluZyI9PXR5cGVvZih0PWZ1bmN0aW9uKHQsZSl7dHJ5e3JldHVybiB0W2VdfWNhdGNoKHQpe319KGU9T2JqZWN0KHQpLHNlKSk/dDphZT9yKGUpOiJPYmplY3QiPT0odD1yKGUpKSYmImZ1bmN0aW9uIj09dHlwZW9mIGUuY2FsbGVlPyJBcmd1bWVudHMiOnR9LGNlPVd0KCJpdGVyYXRvciIpLGhlPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcztpZighKG4gaW5zdGFuY2VvZiBoZSkpcmV0dXJuIG5ldyBoZSh0LGUpO010JiYobj1NdChuZXcgRXJyb3Iodm9pZCAwKSxMdChuKSkpLHZvaWQgMCE9PWUmJlIobiwibWVzc2FnZSIsU3RyaW5nKGUpKTtlPVtdO3JldHVybiBvZSh0LGUucHVzaCx7dGhhdDplfSksUihuLCJlcnJvcnMiLGUpLG59O2hlLnByb3RvdHlwZT1RdChFcnJvci5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnYoNSxoZSksbWVzc2FnZTp2KDUsIiIpLG5hbWU6dig1LCJBZ2dyZWdhdGVFcnJvciIpfSksc3Qoe2dsb2JhbDohMH0se0FnZ3JlZ2F0ZUVycm9yOmhlfSk7SD1XP3t9LnRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgIit1ZSh0aGlzKSsiXSJ9O1d8fGZ0KE9iamVjdC5wcm90b3R5cGUsInRvU3RyaW5nIixILHt1bnNhZmU6ITB9KTtmdW5jdGlvbiBsZSh0LGUsbil7Zm9yKHZhciByIGluIGUpZnQodCxyLGVbcl0sbik7cmV0dXJuIHR9ZnVuY3Rpb24gZmUodCxlLG4pe3QmJiFjKHQ9bj90OnQucHJvdG90eXBlLHllKSYmZ2UodCx5ZSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOmV9KX1mdW5jdGlvbiBwZSh0KXt2YXIgZT1ldCh0KSx0PWsuZjtmJiZlJiYhZVttZV0mJnQoZSxtZSx7Y29uZmlndXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzfX0pfWZ1bmN0aW9uIGRlKHQsZSxuKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBUeXBlRXJyb3IoIkluY29ycmVjdCAiKyhuP24rIiAiOiIiKSsiaW52b2NhdGlvbiIpO3JldHVybiB0fXZhciB2ZT1iLlByb21pc2UsZ2U9ay5mLHllPVd0KCJ0b1N0cmluZ1RhZyIpLG1lPVd0KCJzcGVjaWVzIiksYmU9V3QoIml0ZXJhdG9yIiksd2U9ITE7dHJ5e3ZhciBfZT0wLEllPXtuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6ISFfZSsrfX0scmV0dXJuOmZ1bmN0aW9uKCl7d2U9ITB9fTtJZVtiZV09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sQXJyYXkuZnJvbShJZSxmdW5jdGlvbigpe3Rocm93IDJ9KX1jYXRjaChGcyl7fWZ1bmN0aW9uIFRlKHQsZSl7aWYoIWUmJiF3ZSlyZXR1cm4hMTt2YXIgbj0hMTt0cnl7dmFyIHI9e307cltiZV09ZnVuY3Rpb24oKXtyZXR1cm57bmV4dDpmdW5jdGlvbigpe3JldHVybntkb25lOm49ITB9fX19LHQocil9Y2F0Y2godCl7fXJldHVybiBufWZ1bmN0aW9uIEVlKHQsZSl7dmFyIG47cmV0dXJuIHZvaWQgMD09PSh0PW0odCkuY29uc3RydWN0b3IpfHxudWxsPT0obj1tKHQpW0FlXSk/ZTpHdChuKX1mdW5jdGlvbiBTZSh0KXt2YXIgZTt4ZS5oYXNPd25Qcm9wZXJ0eSh0KSYmKGU9eGVbdF0sZGVsZXRlIHhlW3RdLGUoKSl9ZnVuY3Rpb24gQ2UodCl7cmV0dXJuIGZ1bmN0aW9uKCl7U2UodCl9fXZhciBOZSxBZT1XdCgic3BlY2llcyIpLFo9ZXQoIm5hdmlnYXRvciIsInVzZXJBZ2VudCIpfHwiIixidD0vKGlwaG9uZXxpcG9kfGlwYWQpLiphcHBsZXdlYmtpdC9pLnRlc3QoWiksa2U9InByb2Nlc3MiPT1yKGIucHJvY2VzcyksUmU9Yi5sb2NhdGlvbixvPWIuc2V0SW1tZWRpYXRlLHQ9Yi5jbGVhckltbWVkaWF0ZSxQZT1iLnByb2Nlc3MsUD1iLk1lc3NhZ2VDaGFubmVsLE9lPWIuRGlzcGF0Y2gsRGU9MCx4ZT17fSxMZT0ib25yZWFkeXN0YXRlY2hhbmdlIixXPWZ1bmN0aW9uKHQpe1NlKHQuZGF0YSl9LEg9ZnVuY3Rpb24odCl7Yi5wb3N0TWVzc2FnZSh0KyIiLFJlLnByb3RvY29sKyIvLyIrUmUuaG9zdCl9O28mJnR8fChvPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTE7bjxhcmd1bWVudHMubGVuZ3RoOyllLnB1c2goYXJndW1lbnRzW24rK10pO3JldHVybiB4ZVsrK0RlXT1mdW5jdGlvbigpeygiZnVuY3Rpb24iPT10eXBlb2YgdD90OkZ1bmN0aW9uKHQpKS5hcHBseSh2b2lkIDAsZSl9LE5lKERlKSxEZX0sdD1mdW5jdGlvbih0KXtkZWxldGUgeGVbdF19LGtlP05lPWZ1bmN0aW9uKHQpe1BlLm5leHRUaWNrKENlKHQpKX06T2UmJk9lLm5vdz9OZT1mdW5jdGlvbih0KXtPZS5ub3coQ2UodCkpfTpQJiYhYnQ/KFdlPShQPW5ldyBQKS5wb3J0MixQLnBvcnQxLm9ubWVzc2FnZT1XLE5lPXp0KFdlLnBvc3RNZXNzYWdlLFdlLDEpKTpiLmFkZEV2ZW50TGlzdGVuZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBwb3N0TWVzc2FnZSYmIWIuaW1wb3J0U2NyaXB0cyYmUmUmJiJmaWxlOiIhPT1SZS5wcm90b2NvbCYmIWcoSCk/KE5lPUgsYi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixXLCExKSk6TmU9TGUgaW4gbigic2NyaXB0Iik/ZnVuY3Rpb24odCl7anQuYXBwZW5kQ2hpbGQobigic2NyaXB0IikpW0xlXT1mdW5jdGlvbigpe2p0LnJlbW92ZUNoaWxkKHRoaXMpLFNlKHQpfX06ZnVuY3Rpb24odCl7c2V0VGltZW91dChDZSh0KSwwKX0pO3ZhciBNZSxGZSxVZSxqZSxxZSxWZSxCZSxLZSxXZT17c2V0Om8sY2xlYXI6dH0sSD1OLmYsSGU9V2Uuc2V0LFc9Yi5NdXRhdGlvbk9ic2VydmVyfHxiLldlYktpdE11dGF0aW9uT2JzZXJ2ZXIsbz1iLmRvY3VtZW50LEdlPWIucHJvY2Vzcyx0PWIuUHJvbWlzZSxIPUgoYiwicXVldWVNaWNyb3Rhc2siKSxIPUgmJkgudmFsdWU7SHx8KE1lPWZ1bmN0aW9uKCl7dmFyIHQsZTtmb3Ioa2UmJih0PUdlLmRvbWFpbikmJnQuZXhpdCgpO0ZlOyl7ZT1GZS5mbixGZT1GZS5uZXh0O3RyeXtlKCl9Y2F0Y2godCl7dGhyb3cgRmU/amUoKTpVZT12b2lkIDAsdH19VWU9dm9pZCAwLHQmJnQuZW50ZXIoKX0samU9IWJ0JiYha2UmJlcmJm8/KHFlPSEwLFZlPW8uY3JlYXRlVGV4dE5vZGUoIiIpLG5ldyBXKE1lKS5vYnNlcnZlKFZlLHtjaGFyYWN0ZXJEYXRhOiEwfSksZnVuY3Rpb24oKXtWZS5kYXRhPXFlPSFxZX0pOnQmJnQucmVzb2x2ZT8oQmU9dC5yZXNvbHZlKHZvaWQgMCksS2U9QmUudGhlbixmdW5jdGlvbigpe0tlLmNhbGwoQmUsTWUpfSk6a2U/ZnVuY3Rpb24oKXtHZS5uZXh0VGljayhNZSl9OmZ1bmN0aW9uKCl7SGUuY2FsbChiLE1lKX0pO2Z1bmN0aW9uIHplKHQpe3ZhciBuLHI7dGhpcy5wcm9taXNlPW5ldyB0KGZ1bmN0aW9uKHQsZSl7aWYodm9pZCAwIT09bnx8dm9pZCAwIT09cil0aHJvdyBUeXBlRXJyb3IoIkJhZCBQcm9taXNlIGNvbnN0cnVjdG9yIik7bj10LHI9ZX0pLHRoaXMucmVzb2x2ZT1HdChuKSx0aGlzLnJlamVjdD1HdChyKX1mdW5jdGlvbiBRZSh0LGUpe3JldHVybiBtKHQpLHkoZSkmJmUuY29uc3RydWN0b3I9PT10P2U6KCgwLCh0PUplLmYodCkpLnJlc29sdmUpKGUpLHQucHJvbWlzZSl9ZnVuY3Rpb24gWWUodCl7dHJ5e3JldHVybntlcnJvcjohMSx2YWx1ZTp0KCl9fWNhdGNoKHQpe3JldHVybntlcnJvcjohMCx2YWx1ZTp0fX19dmFyIFhlPUh8fGZ1bmN0aW9uKHQpe3Q9e2ZuOnQsbmV4dDp2b2lkIDB9O1VlJiYoVWUubmV4dD10KSxGZXx8KEZlPXQsamUoKSksVWU9dH0sSmU9e2Y6ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyB6ZSh0KX19LEg9Yi5wcm9jZXNzLEg9SCYmSC52ZXJzaW9ucyxIPUgmJkgudjg7SD9Qbj0oU249SC5zcGxpdCgiLiIpKVswXStTblsxXTpaJiYoIShTbj1aLm1hdGNoKC9FZGdlXC8oXGQrKS8pKXx8NzQ8PVNuWzFdKSYmKFNuPVoubWF0Y2goL0Nocm9tZVwvKFxkKykvKSkmJihQbj1TblsxXSk7ZnVuY3Rpb24gJGUodCl7dmFyIGU7cmV0dXJuISgheSh0KXx8ImZ1bmN0aW9uIiE9dHlwZW9mKGU9dC50aGVuKSkmJmV9ZnVuY3Rpb24gWmUobCxmKXt2YXIgcDtsLm5vdGlmaWVkfHwobC5ub3RpZmllZD0hMCxwPWwucmVhY3Rpb25zLFhlKGZ1bmN0aW9uKCl7Zm9yKHZhciB0PWwudmFsdWUsZT0xPT1sLnN0YXRlLG49MDtwLmxlbmd0aD5uOyl7dmFyIHIsaSxvLHM9cFtuKytdLGE9ZT9zLm9rOnMuZmFpbCx1PXMucmVzb2x2ZSxjPXMucmVqZWN0LGg9cy5kb21haW47dHJ5e2E/KGV8fCgyPT09bC5yZWplY3Rpb24mJkFuKGwpLGwucmVqZWN0aW9uPTEpLCEwPT09YT9yPXQ6KGgmJmguZW50ZXIoKSxyPWEodCksaCYmKGguZXhpdCgpLG89ITApKSxyPT09cy5wcm9taXNlP2MoZ24oIlByb21pc2UtY2hhaW4gY3ljbGUiKSk6KGk9JGUocikpP2kuY2FsbChyLHUsYyk6dShyKSk6Yyh0KX1jYXRjaCh0KXtoJiYhbyYmaC5leGl0KCksYyh0KX19bC5yZWFjdGlvbnM9W10sbC5ub3RpZmllZD0hMSxmJiYhbC5yZWplY3Rpb24mJkNuKGwpfSkpfWZ1bmN0aW9uIHRuKHQsZSxuKXt2YXIgcixpO0luPygocj15bi5jcmVhdGVFdmVudCgiRXZlbnQiKSkucHJvbWlzZT1lLHIucmVhc29uPW4sci5pbml0RXZlbnQodCwhMSwhMCksYi5kaXNwYXRjaEV2ZW50KHIpKTpyPXtwcm9taXNlOmUscmVhc29uOm59LCFUbiYmKGk9Ylsib24iK3RdKT9pKHIpOnQ9PT1FbiYmZnVuY3Rpb24odCxlKXt2YXIgbj1iLmNvbnNvbGU7biYmbi5lcnJvciYmKDE9PT1hcmd1bWVudHMubGVuZ3RoP24uZXJyb3IodCk6bi5lcnJvcih0LGUpKX0oIlVuaGFuZGxlZCBwcm9taXNlIHJlamVjdGlvbiIsbil9ZnVuY3Rpb24gZW4oZSxuLHIpe3JldHVybiBmdW5jdGlvbih0KXtlKG4sdCxyKX19ZnVuY3Rpb24gbm4odCxlLG4pe3QuZG9uZXx8KHQuZG9uZT0hMCwodD1uP246dCkudmFsdWU9ZSx0LnN0YXRlPTIsWmUodCwhMCkpfXZhciBybixvbixzbixhbix1bj1QbiYmK1BuLGNuPVdlLnNldCxobj1XdCgic3BlY2llcyIpLGxuPSJQcm9taXNlIixmbj1sdC5nZXQscG49bHQuc2V0LGRuPWx0LmdldHRlckZvcihsbiksdm49dmUsZ249Yi5UeXBlRXJyb3IseW49Yi5kb2N1bWVudCxtbj1iLnByb2Nlc3MsYm49ZXQoImZldGNoIiksd249SmUuZixfbj13bixJbj0hISh5biYmeW4uY3JlYXRlRXZlbnQmJmIuZGlzcGF0Y2hFdmVudCksVG49ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2VSZWplY3Rpb25FdmVudCxFbj0idW5oYW5kbGVkcmVqZWN0aW9uIixaPVB0KGxuLGZ1bmN0aW9uKCl7aWYoIShLKHZuKSE9PVN0cmluZyh2bikpKXtpZig2Nj09PXVuKXJldHVybiEwO2lmKCFrZSYmIVRuKXJldHVybiEwfWlmKDUxPD11biYmL25hdGl2ZSBjb2RlLy50ZXN0KHZuKSlyZXR1cm4hMTtmdW5jdGlvbiB0KHQpe3QoZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKCl7fSl9dmFyIGU9dm4ucmVzb2x2ZSgxKTtyZXR1cm4oZS5jb25zdHJ1Y3Rvcj17fSlbaG5dPXQsIShlLnRoZW4oZnVuY3Rpb24oKXt9KWluc3RhbmNlb2YgdCl9KSxTbj1afHwhVGUoZnVuY3Rpb24odCl7dm4uYWxsKHQpLmNhdGNoKGZ1bmN0aW9uKCl7fSl9KSxDbj1mdW5jdGlvbihpKXtjbi5jYWxsKGIsZnVuY3Rpb24oKXt2YXIgdCxlPWkuZmFjYWRlLG49aS52YWx1ZSxyPU5uKGkpO2lmKHImJih0PVllKGZ1bmN0aW9uKCl7a2U/bW4uZW1pdCgidW5oYW5kbGVkUmVqZWN0aW9uIixuLGUpOnRuKEVuLGUsbil9KSxpLnJlamVjdGlvbj1rZXx8Tm4oaSk/MjoxLHQuZXJyb3IpKXRocm93IHQudmFsdWV9KX0sTm49ZnVuY3Rpb24odCl7cmV0dXJuIDEhPT10LnJlamVjdGlvbiYmIXQucGFyZW50fSxBbj1mdW5jdGlvbihlKXtjbi5jYWxsKGIsZnVuY3Rpb24oKXt2YXIgdD1lLmZhY2FkZTtrZT9tbi5lbWl0KCJyZWplY3Rpb25IYW5kbGVkIix0KTp0bigicmVqZWN0aW9uaGFuZGxlZCIsdCxlLnZhbHVlKX0pfSxrbj1mdW5jdGlvbihuLHQsZSl7aWYoIW4uZG9uZSl7bi5kb25lPSEwLGUmJihuPWUpO3RyeXtpZihuLmZhY2FkZT09PXQpdGhyb3cgZ24oIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7dmFyIHI9JGUodCk7cj9YZShmdW5jdGlvbigpe3ZhciBlPXtkb25lOiExfTt0cnl7ci5jYWxsKHQsZW4oa24sZSxuKSxlbihubixlLG4pKX1jYXRjaCh0KXtubihlLHQsbil9fSk6KG4udmFsdWU9dCxuLnN0YXRlPTEsWmUobiwhMSkpfWNhdGNoKHQpe25uKHtkb25lOiExfSx0LG4pfX19O1omJih2bj1mdW5jdGlvbih0KXtkZSh0aGlzLHZuLGxuKSxHdCh0KSxybi5jYWxsKHRoaXMpO3ZhciBlPWZuKHRoaXMpO3RyeXt0KGVuKGtuLGUpLGVuKG5uLGUpKX1jYXRjaCh0KXtubihlLHQpfX0sKHJuPWZ1bmN0aW9uKHQpe3BuKHRoaXMse3R5cGU6bG4sZG9uZTohMSxub3RpZmllZDohMSxwYXJlbnQ6ITEscmVhY3Rpb25zOltdLHJlamVjdGlvbjohMSxzdGF0ZTowLHZhbHVlOnZvaWQgMH0pfSkucHJvdG90eXBlPWxlKHZuLnByb3RvdHlwZSx7dGhlbjpmdW5jdGlvbih0LGUpe3ZhciBuPWRuKHRoaXMpLHI9d24oRWUodGhpcyx2bikpO3JldHVybiByLm9rPSJmdW5jdGlvbiIhPXR5cGVvZiB0fHx0LHIuZmFpbD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxyLmRvbWFpbj1rZT9tbi5kb21haW46dm9pZCAwLG4ucGFyZW50PSEwLG4ucmVhY3Rpb25zLnB1c2gociksMCE9bi5zdGF0ZSYmWmUobiwhMSksci5wcm9taXNlfSxjYXRjaDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCx0KX19KSxvbj1mdW5jdGlvbigpe3ZhciB0PW5ldyBybixlPWZuKHQpO3RoaXMucHJvbWlzZT10LHRoaXMucmVzb2x2ZT1lbihrbixlKSx0aGlzLnJlamVjdD1lbihubixlKX0sSmUuZj13bj1mdW5jdGlvbih0KXtyZXR1cm4gdD09PXZufHx0PT09c24/bmV3IG9uOl9uKHQpfSwiZnVuY3Rpb24iPT10eXBlb2YgdmUmJihhbj12ZS5wcm90b3R5cGUudGhlbixmdCh2ZS5wcm90b3R5cGUsInRoZW4iLGZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcztyZXR1cm4gbmV3IHZuKGZ1bmN0aW9uKHQsZSl7YW4uY2FsbChuLHQsZSl9KS50aGVuKHQsZSl9LHt1bnNhZmU6ITB9KSwiZnVuY3Rpb24iPT10eXBlb2YgYm4mJnN0KHtnbG9iYWw6ITAsZW51bWVyYWJsZTohMCxmb3JjZWQ6ITB9LHtmZXRjaDpmdW5jdGlvbih0KXtyZXR1cm4gUWUodm4sYm4uYXBwbHkoYixhcmd1bWVudHMpKX19KSkpLHN0KHtnbG9iYWw6ITAsd3JhcDohMCxmb3JjZWQ6Wn0se1Byb21pc2U6dm59KSxmZSh2bixsbiwhMSkscGUobG4pLHNuPWV0KGxuKSxzdCh7dGFyZ2V0OmxuLHN0YXQ6ITAsZm9yY2VkOlp9LHtyZWplY3Q6ZnVuY3Rpb24odCl7dmFyIGU9d24odGhpcyk7cmV0dXJuIGUucmVqZWN0LmNhbGwodm9pZCAwLHQpLGUucHJvbWlzZX19KSxzdCh7dGFyZ2V0OmxuLHN0YXQ6ITAsZm9yY2VkOlp9LHtyZXNvbHZlOmZ1bmN0aW9uKHQpe3JldHVybiBRZSh0aGlzLHQpfX0pLHN0KHt0YXJnZXQ6bG4sc3RhdDohMCxmb3JjZWQ6U259LHthbGw6ZnVuY3Rpb24odCl7dmFyIGE9dGhpcyxlPXduKGEpLHU9ZS5yZXNvbHZlLGM9ZS5yZWplY3Qsbj1ZZShmdW5jdGlvbigpe3ZhciByPUd0KGEucmVzb2x2ZSksaT1bXSxvPTAscz0xO29lKHQsZnVuY3Rpb24odCl7dmFyIGU9bysrLG49ITE7aS5wdXNoKHZvaWQgMCkscysrLHIuY2FsbChhLHQpLnRoZW4oZnVuY3Rpb24odCl7bnx8KG49ITAsaVtlXT10LC0tc3x8dShpKSl9LGMpfSksLS1zfHx1KGkpfSk7cmV0dXJuIG4uZXJyb3ImJmMobi52YWx1ZSksZS5wcm9taXNlfSxyYWNlOmZ1bmN0aW9uKHQpe3ZhciBuPXRoaXMscj13bihuKSxpPXIucmVqZWN0LGU9WWUoZnVuY3Rpb24oKXt2YXIgZT1HdChuLnJlc29sdmUpO29lKHQsZnVuY3Rpb24odCl7ZS5jYWxsKG4sdCkudGhlbihyLnJlc29sdmUsaSl9KX0pO3JldHVybiBlLmVycm9yJiZpKGUudmFsdWUpLHIucHJvbWlzZX19KSxzdCh7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwfSx7YWxsU2V0dGxlZDpmdW5jdGlvbih0KXt2YXIgYT10aGlzLGU9SmUuZihhKSx1PWUucmVzb2x2ZSxuPWUucmVqZWN0LHI9WWUoZnVuY3Rpb24oKXt2YXIgcj1HdChhLnJlc29sdmUpLGk9W10sbz0wLHM9MTtvZSh0LGZ1bmN0aW9uKHQpe3ZhciBlPW8rKyxuPSExO2kucHVzaCh2b2lkIDApLHMrKyxyLmNhbGwoYSx0KS50aGVuKGZ1bmN0aW9uKHQpe258fChuPSEwLGlbZV09e3N0YXR1czoiZnVsZmlsbGVkIix2YWx1ZTp0fSwtLXN8fHUoaSkpfSxmdW5jdGlvbih0KXtufHwobj0hMCxpW2VdPXtzdGF0dXM6InJlamVjdGVkIixyZWFzb246dH0sLS1zfHx1KGkpKX0pfSksLS1zfHx1KGkpfSk7cmV0dXJuIHIuZXJyb3ImJm4oci52YWx1ZSksZS5wcm9taXNlfX0pO3ZhciBSbj0iTm8gb25lIHByb21pc2UgcmVzb2x2ZWQiO3N0KHt0YXJnZXQ6IlByb21pc2UiLHN0YXQ6ITB9LHthbnk6ZnVuY3Rpb24odCl7dmFyIHU9dGhpcyxlPUplLmYodSksYz1lLnJlc29sdmUsaD1lLnJlamVjdCxuPVllKGZ1bmN0aW9uKCl7dmFyIHI9R3QodS5yZXNvbHZlKSxpPVtdLG89MCxzPTEsYT0hMTtvZSh0LGZ1bmN0aW9uKHQpe3ZhciBlPW8rKyxuPSExO2kucHVzaCh2b2lkIDApLHMrKyxyLmNhbGwodSx0KS50aGVuKGZ1bmN0aW9uKHQpe258fGF8fChhPSEwLGModCkpfSxmdW5jdGlvbih0KXtufHxhfHwobj0hMCxpW2VdPXQsLS1zfHxoKG5ldyhldCgiQWdncmVnYXRlRXJyb3IiKSkoaSxSbikpKX0pfSksLS1zfHxoKG5ldyhldCgiQWdncmVnYXRlRXJyb3IiKSkoaSxSbikpfSk7cmV0dXJuIG4uZXJyb3ImJmgobi52YWx1ZSksZS5wcm9taXNlfX0pO3ZhciBQbj0hIXZlJiZnKGZ1bmN0aW9uKCl7dmUucHJvdG90eXBlLmZpbmFsbHkuY2FsbCh7dGhlbjpmdW5jdGlvbigpe319LGZ1bmN0aW9uKCl7fSl9KTtzdCh7dGFyZ2V0OiJQcm9taXNlIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpQbn0se2ZpbmFsbHk6ZnVuY3Rpb24oZSl7dmFyIG49RWUodGhpcyxldCgiUHJvbWlzZSIpKSx0PSJmdW5jdGlvbiI9PXR5cGVvZiBlO3JldHVybiB0aGlzLnRoZW4odD9mdW5jdGlvbih0KXtyZXR1cm4gUWUobixlKCkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdH0pfTplLHQ/ZnVuY3Rpb24odCl7cmV0dXJuIFFlKG4sZSgpKS50aGVuKGZ1bmN0aW9uKCl7dGhyb3cgdH0pfTplKX19KSwiZnVuY3Rpb24iIT10eXBlb2YgdmV8fHZlLnByb3RvdHlwZS5maW5hbGx5fHxmdCh2ZS5wcm90b3R5cGUsImZpbmFsbHkiLGV0KCJQcm9taXNlIikucHJvdG90eXBlLmZpbmFsbHkpO1dlPWZ1bmN0aW9uKG8pe3JldHVybiBmdW5jdGlvbih0LGUpe3ZhciBuLHI9U3RyaW5nKHModCkpLGk9bnQoZSksdD1yLmxlbmd0aDtyZXR1cm4gaTwwfHx0PD1pP28/IiI6dm9pZCAwOihlPXIuY2hhckNvZGVBdChpKSk8NTUyOTZ8fDU2MzE5PGV8fGkrMT09PXR8fChuPXIuY2hhckNvZGVBdChpKzEpKTw1NjMyMHx8NTczNDM8bj9vP3IuY2hhckF0KGkpOmU6bz9yLnNsaWNlKGksaSsyKTpuLTU2MzIwKyhlLTU1Mjk2PDwxMCkrNjU1MzZ9fSxaPXtjb2RlQXQ6V2UoITEpLGNoYXJBdDpXZSghMCl9LFNuPVd0KCJpdGVyYXRvciIpLFBuPSExO1tdLmtleXMmJigibmV4dCJpbihRbj1bXS5rZXlzKCkpPyhscj1MdChMdChRbikpKSE9PU9iamVjdC5wcm90b3R5cGUmJihkcj1scik6UG49ITApLGMoZHI9bnVsbD09ZHI/e306ZHIsU24pfHxSKGRyLFNuLGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KTtmdW5jdGlvbiBPbigpe3JldHVybiB0aGlzfWZ1bmN0aW9uIERuKCl7cmV0dXJuIHRoaXN9ZnVuY3Rpb24geG4odCxlLG4scixpLG8scyl7ZnVuY3Rpb24gYSh0KXtpZih0PT09aSYmZClyZXR1cm4gZDtpZighRm4mJnQgaW4gZilyZXR1cm4gZlt0XTtzd2l0Y2godCl7Y2FzZSJrZXlzIjpjYXNlIGpuOmNhc2UgcW46cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsdCl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzKX19IWZ1bmN0aW9uKHQsZSxuKXtlKz0iIEl0ZXJhdG9yIjt0LnByb3RvdHlwZT1RdChMbix7bmV4dDp2KDEsbil9KSxmZSh0LGUsITEpLFp0W2VdPU9ufShuLGUscik7dmFyIHUsYyxoPWUrIiBJdGVyYXRvciIsbD0hMSxmPXQucHJvdG90eXBlLHA9ZltVbl18fGZbIkBAaXRlcmF0b3IiXXx8aSYmZltpXSxkPSFGbiYmcHx8YShpKTtpZigocj0iQXJyYXkiPT1lJiZmLmVudHJpZXN8fHApJiYodD1MdChyLmNhbGwobmV3IHQpKSxNbiE9PU9iamVjdC5wcm90b3R5cGUmJnQubmV4dCYmKEx0KHQpIT09TW4mJihNdD9NdCh0LE1uKToiZnVuY3Rpb24iIT10eXBlb2YgdFtVbl0mJlIodCxVbixEbikpLGZlKHQsaCwhMCkpKSxpPT1qbiYmcCYmcC5uYW1lIT09am4mJihsPSEwLGQ9ZnVuY3Rpb24oKXtyZXR1cm4gcC5jYWxsKHRoaXMpfSksZltVbl0hPT1kJiZSKGYsVW4sZCksWnRbZV09ZCxpKWlmKHU9e3ZhbHVlczphKGpuKSxrZXlzOm8/ZDphKCJrZXlzIiksZW50cmllczphKHFuKX0scylmb3IoYyBpbiB1KSFGbiYmIWwmJmMgaW4gZnx8ZnQoZixjLHVbY10pO2Vsc2Ugc3Qoe3RhcmdldDplLHByb3RvOiEwLGZvcmNlZDpGbnx8bH0sdSk7cmV0dXJuIHV9dmFyIFdlPXtJdGVyYXRvclByb3RvdHlwZTpkcixCVUdHWV9TQUZBUklfSVRFUkFUT1JTOlBufSxMbj1XZS5JdGVyYXRvclByb3RvdHlwZSxNbj1XZS5JdGVyYXRvclByb3RvdHlwZSxGbj1XZS5CVUdHWV9TQUZBUklfSVRFUkFUT1JTLFVuPVd0KCJpdGVyYXRvciIpLGpuPSJ2YWx1ZXMiLHFuPSJlbnRyaWVzIixWbj1aLmNoYXJBdCxCbj0iU3RyaW5nIEl0ZXJhdG9yIixLbj1sdC5zZXQsV249bHQuZ2V0dGVyRm9yKEJuKTt4bihTdHJpbmcsIlN0cmluZyIsZnVuY3Rpb24odCl7S24odGhpcyx7dHlwZTpCbixzdHJpbmc6U3RyaW5nKHQpLGluZGV4OjB9KX0sZnVuY3Rpb24oKXt2YXIgdD1Xbih0aGlzKSxlPXQuc3RyaW5nLG49dC5pbmRleDtyZXR1cm4gbj49ZS5sZW5ndGg/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfToobj1WbihlLG4pLHQuaW5kZXgrPW4ubGVuZ3RoLHt2YWx1ZTpuLGRvbmU6ITF9KX0pO3ZhciBIbj17Q1NTUnVsZUxpc3Q6MCxDU1NTdHlsZURlY2xhcmF0aW9uOjAsQ1NTVmFsdWVMaXN0OjAsQ2xpZW50UmVjdExpc3Q6MCxET01SZWN0TGlzdDowLERPTVN0cmluZ0xpc3Q6MCxET01Ub2tlbkxpc3Q6MSxEYXRhVHJhbnNmZXJJdGVtTGlzdDowLEZpbGVMaXN0OjAsSFRNTEFsbENvbGxlY3Rpb246MCxIVE1MQ29sbGVjdGlvbjowLEhUTUxGb3JtRWxlbWVudDowLEhUTUxTZWxlY3RFbGVtZW50OjAsTWVkaWFMaXN0OjAsTWltZVR5cGVBcnJheTowLE5hbWVkTm9kZU1hcDowLE5vZGVMaXN0OjEsUGFpbnRSZXF1ZXN0TGlzdDowLFBsdWdpbjowLFBsdWdpbkFycmF5OjAsU1ZHTGVuZ3RoTGlzdDowLFNWR051bWJlckxpc3Q6MCxTVkdQYXRoU2VnTGlzdDowLFNWR1BvaW50TGlzdDowLFNWR1N0cmluZ0xpc3Q6MCxTVkdUcmFuc2Zvcm1MaXN0OjAsU291cmNlQnVmZmVyTGlzdDowLFN0eWxlU2hlZXRMaXN0OjAsVGV4dFRyYWNrQ3VlTGlzdDowLFRleHRUcmFja0xpc3Q6MCxUb3VjaExpc3Q6MH0sR249V3QoInVuc2NvcGFibGVzIiksem49QXJyYXkucHJvdG90eXBlO251bGw9PXpuW0duXSYmay5mKHpuLEduLHtjb25maWd1cmFibGU6ITAsdmFsdWU6UXQobnVsbCl9KTt2YXIgUW49ZnVuY3Rpb24odCl7em5bR25dW3RdPSEwfSxZbj0iQXJyYXkgSXRlcmF0b3IiLFhuPWx0LnNldCxKbj1sdC5nZXR0ZXJGb3IoWW4pLCRuPXhuKEFycmF5LCJBcnJheSIsZnVuY3Rpb24odCxlKXtYbih0aGlzLHt0eXBlOlluLHRhcmdldDp1KHQpLGluZGV4OjAsa2luZDplfSl9LGZ1bmN0aW9uKCl7dmFyIHQ9Sm4odGhpcyksZT10LnRhcmdldCxuPXQua2luZCxyPXQuaW5kZXgrKztyZXR1cm4hZXx8cj49ZS5sZW5ndGg/e3ZhbHVlOnQudGFyZ2V0PXZvaWQgMCxkb25lOiEwfToia2V5cyI9PW4/e3ZhbHVlOnIsZG9uZTohMX06InZhbHVlcyI9PW4/e3ZhbHVlOmVbcl0sZG9uZTohMX06e3ZhbHVlOltyLGVbcl1dLGRvbmU6ITF9fSwidmFsdWVzIik7WnQuQXJndW1lbnRzPVp0LkFycmF5LFFuKCJrZXlzIiksUW4oInZhbHVlcyIpLFFuKCJlbnRyaWVzIik7dmFyIFpuLHRyPVd0KCJpdGVyYXRvciIpLGVyPVd0KCJ0b1N0cmluZ1RhZyIpLG5yPSRuLnZhbHVlcztmb3IoWm4gaW4gSG4pe3ZhciBycj1iW1puXSxpcj1yciYmcnIucHJvdG90eXBlO2lmKGlyKXtpZihpclt0cl0hPT1ucil0cnl7Uihpcix0cixucil9Y2F0Y2goRnMpe2lyW3RyXT1ucn1pZihpcltlcl18fFIoaXIsZXIsWm4pLEhuW1puXSlmb3IodmFyIG9yIGluICRuKWlmKGlyW29yXSE9PSRuW29yXSl0cnl7Uihpcixvciwkbltvcl0pfWNhdGNoKEZzKXtpcltvcl09JG5bb3JdfX19cHQuUHJvbWlzZTtzdCh7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwfSx7dHJ5OmZ1bmN0aW9uKHQpe3ZhciBlPUplLmYodGhpcyksdD1ZZSh0KTtyZXR1cm4odC5lcnJvcj9lLnJlamVjdDplLnJlc29sdmUpKHQudmFsdWUpLGUucHJvbWlzZX19KTtmdW5jdGlvbiBzcih0LGUpe3ZhciBuO3JldHVybiBuZXcodm9pZCAwPT09KG49dXIodCkmJigiZnVuY3Rpb24iPT10eXBlb2Yobj10LmNvbnN0cnVjdG9yKSYmKG49PT1BcnJheXx8dXIobi5wcm90b3R5cGUpKXx8eShuKSYmbnVsbD09PShuPW5bY3JdKSk/dm9pZCAwOm4pP0FycmF5Om4pKDA9PT1lPzA6ZSl9ZnVuY3Rpb24gYXIodCl7dGhyb3cgdH12YXIgdXI9QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24odCl7cmV0dXJuIkFycmF5Ij09cih0KX0sY3I9V3QoInNwZWNpZXMiKSxocj1bXS5wdXNoLGxyPWZ1bmN0aW9uKGYpe3ZhciBwPTE9PWYsZD0yPT1mLHY9Mz09ZixnPTQ9PWYseT02PT1mLG09Nz09ZixiPTU9PWZ8fHk7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuLHIpe2Zvcih2YXIgaSxvLHM9YXQodCksYT1fKHMpLHU9enQoZSxuLDMpLGM9cnQoYS5sZW5ndGgpLGg9MCxyPXJ8fHNyLGw9cD9yKHQsYyk6ZHx8bT9yKHQsMCk6dm9pZCAwO2g8YztoKyspaWYoKGJ8fGggaW4gYSkmJihvPXUoaT1hW2hdLGgscyksZikpaWYocClsW2hdPW87ZWxzZSBpZihvKXN3aXRjaChmKXtjYXNlIDM6cmV0dXJuITA7Y2FzZSA1OnJldHVybiBpO2Nhc2UgNjpyZXR1cm4gaDtjYXNlIDI6aHIuY2FsbChsLGkpfWVsc2Ugc3dpdGNoKGYpe2Nhc2UgNDpyZXR1cm4hMTtjYXNlIDc6aHIuY2FsbChsLGkpfXJldHVybiB5Py0xOnZ8fGc/ZzpsfX0sU249e2ZvckVhY2g6bHIoMCksbWFwOmxyKDEpLGZpbHRlcjpscigyKSxzb21lOmxyKDMpLGV2ZXJ5OmxyKDQpLGZpbmQ6bHIoNSksZmluZEluZGV4OmxyKDYpLGZpbHRlck91dDpscig3KX0sZnI9T2JqZWN0LmRlZmluZVByb3BlcnR5LHByPXt9LGRyPWZ1bmN0aW9uKHQsZSl7aWYoYyhwcix0KSlyZXR1cm4gcHJbdF07dmFyIG49W11bdF0scj0hIWMoZT1lfHx7fSwiQUNDRVNTT1JTIikmJmUuQUNDRVNTT1JTLGk9YyhlLDApP2VbMF06YXIsbz1jKGUsMSk/ZVsxXTp2b2lkIDA7cmV0dXJuIHByW3RdPSEhbiYmIWcoZnVuY3Rpb24oKXtpZihyJiYhZilyZXR1cm4gMTt2YXIgdD17bGVuZ3RoOi0xfTtyP2ZyKHQsMSx7ZW51bWVyYWJsZTohMCxnZXQ6YXJ9KTp0WzFdPTEsbi5jYWxsKHQsaSxvKX0pfSx2cj1Tbi5maW5kLFBuPSJmaW5kIixncj0hMCxXZT1kcihQbik7UG4gaW5bXSYmQXJyYXkoMSlbUG5dKGZ1bmN0aW9uKCl7Z3I9ITF9KSxzdCh7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOmdyfHwhV2V9LHtmaW5kOmZ1bmN0aW9uKHQpe3JldHVybiB2cih0aGlzLHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDApfX0pLFFuKFBuKTt2YXIgeXI9RnVuY3Rpb24uY2FsbCxaPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4genQoeXIsYlt0XS5wcm90b3R5cGVbZV0sbil9LG1yPShaKCJBcnJheSIsImZpbmQiKSxTbi5maW5kSW5kZXgpLGxyPSJmaW5kSW5kZXgiLGJyPSEwLFdlPWRyKGxyKTtsciBpbltdJiZBcnJheSgxKVtscl0oZnVuY3Rpb24oKXticj0hMX0pLHN0KHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6YnJ8fCFXZX0se2ZpbmRJbmRleDpmdW5jdGlvbih0KXtyZXR1cm4gbXIodGhpcyx0LDE8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMV06dm9pZCAwKX19KSxRbihscik7ZnVuY3Rpb24gd3IodCxlLG4peyhlPWkoZSkpaW4gdD9rLmYodCxlLHYoMCxuKSk6dFtlXT1ufVooIkFycmF5IiwiZmluZEluZGV4Iik7UG49IVRlKGZ1bmN0aW9uKHQpe0FycmF5LmZyb20odCl9KTtzdCh7dGFyZ2V0OiJBcnJheSIsc3RhdDohMCxmb3JjZWQ6UG59LHtmcm9tOmZ1bmN0aW9uKHQpe3ZhciBlLG4scixpLG8scyxhPWF0KHQpLHU9ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXM/dGhpczpBcnJheSxjPWFyZ3VtZW50cy5sZW5ndGgsaD0xPGM/YXJndW1lbnRzWzFdOnZvaWQgMCxsPXZvaWQgMCE9PWgsdD1uZShhKSxmPTA7aWYobCYmKGg9enQoaCwyPGM/YXJndW1lbnRzWzJdOnZvaWQgMCwyKSksbnVsbD09dHx8dT09QXJyYXkmJkh0KHQpKWZvcihuPW5ldyB1KGU9cnQoYS5sZW5ndGgpKTtmPGU7ZisrKXM9bD9oKGFbZl0sZik6YVtmXSx3cihuLGYscyk7ZWxzZSBmb3Iobz0oaT10LmNhbGwoYSkpLm5leHQsbj1uZXcgdTshKHI9by5jYWxsKGkpKS5kb25lO2YrKylzPWw/ZnVuY3Rpb24oZSx0LG4scil7dHJ5e3JldHVybiByP3QobShuKVswXSxuWzFdKTp0KG4pfWNhdGNoKHQpe3Rocm93IHJlKGUpLHR9fShpLGgsW3IudmFsdWUsZl0sITApOnIudmFsdWUsd3IobixmLHMpO3JldHVybiBuLmxlbmd0aD1mLG59fSk7cHQuQXJyYXkuZnJvbTt2YXIgX3IsSXIsVHI9U24uc29tZSxXZT0hIShJcj1bXVsic29tZSJdKSYmZyhmdW5jdGlvbigpe0lyLmNhbGwobnVsbCxfcnx8ZnVuY3Rpb24oKXt0aHJvdyAxfSwxKX0pLFFuPWRyKCJzb21lIik7c3Qoe3RhcmdldDoiQXJyYXkiLHByb3RvOiEwLGZvcmNlZDohV2V8fCFRbn0se3NvbWU6ZnVuY3Rpb24odCl7cmV0dXJuIFRyKHRoaXMsdCwxPGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSk7WigiQXJyYXkiLCJzb21lIik7ZnVuY3Rpb24gRXIodCl7cmV0dXJuISF5KHQpJiYodD11ZSh0KSxjKE9yLHQpfHxjKERyLHQpKX12YXIgU3IsbHI9InVuZGVmaW5lZCIhPXR5cGVvZiBBcnJheUJ1ZmZlciYmInVuZGVmaW5lZCIhPXR5cGVvZiBEYXRhVmlldyxQbj1rLmYsQ3I9Yi5JbnQ4QXJyYXksTnI9Q3ImJkNyLnByb3RvdHlwZSxkcj1iLlVpbnQ4Q2xhbXBlZEFycmF5LFdlPWRyJiZkci5wcm90b3R5cGUsQXI9Q3ImJkx0KENyKSxrcj1OciYmTHQoTnIpLFFuPU9iamVjdC5wcm90b3R5cGUsZHI9KFFuLmlzUHJvdG90eXBlT2YsV3QoInRvU3RyaW5nVGFnIikpLFJyPXgoIlRZUEVEX0FSUkFZX1RBRyIpLFByPWxyJiYhIU10JiYiT3BlcmEiIT09dWUoYi5vcGVyYSksbHI9ITEsT3I9e0ludDhBcnJheToxLFVpbnQ4QXJyYXk6MSxVaW50OENsYW1wZWRBcnJheToxLEludDE2QXJyYXk6MixVaW50MTZBcnJheToyLEludDMyQXJyYXk6NCxVaW50MzJBcnJheTo0LEZsb2F0MzJBcnJheTo0LEZsb2F0NjRBcnJheTo4fSxEcj17QmlnSW50NjRBcnJheTo4LEJpZ1VpbnQ2NEFycmF5Ojh9O2ZvcihTciBpbiBPciliW1NyXXx8KFByPSExKTtpZigoIVByfHwiZnVuY3Rpb24iIT10eXBlb2YgQXJ8fEFyPT09RnVuY3Rpb24ucHJvdG90eXBlKSYmKEFyPWZ1bmN0aW9uKCl7dGhyb3cgVHlwZUVycm9yKCJJbmNvcnJlY3QgaW52b2NhdGlvbiIpfSxQcikpZm9yKFNyIGluIE9yKWJbU3JdJiZNdChiW1NyXSxBcik7aWYoKCFQcnx8IWtyfHxrcj09PVFuKSYmKGtyPUFyLnByb3RvdHlwZSxQcikpZm9yKFNyIGluIE9yKWJbU3JdJiZNdChiW1NyXS5wcm90b3R5cGUsa3IpO2lmKFByJiZMdChXZSkhPT1rciYmTXQoV2Usa3IpLGYmJiFjKGtyLGRyKSlmb3IoU3IgaW4gbHI9ITAsUG4oa3IsZHIse2dldDpmdW5jdGlvbigpe3JldHVybiB5KHRoaXMpP3RoaXNbUnJdOnZvaWQgMH19KSxPciliW1NyXSYmUihiW1NyXSxScixTcik7dmFyIFdlPWZ1bmN0aW9uKHQpe2lmKEVyKHQpKXJldHVybiB0O3Rocm93IFR5cGVFcnJvcigiVGFyZ2V0IGlzIG5vdCBhIHR5cGVkIGFycmF5Iil9LFBuPWZ1bmN0aW9uKHQsZSxuKXtpZihmKXtpZihuKWZvcih2YXIgciBpbiBPcil7cj1iW3JdO3ImJmMoci5wcm90b3R5cGUsdCkmJmRlbGV0ZSByLnByb3RvdHlwZVt0XX1rclt0XSYmIW58fGZ0KGtyLHQsIW4mJlByJiZOclt0XXx8ZSl9fSxkcj1XdCgiaXRlcmF0b3IiKSxscj1iLlVpbnQ4QXJyYXkseHI9JG4udmFsdWVzLExyPSRuLmtleXMsTXI9JG4uZW50cmllcyxGcj1XZSxXZT1QbixQbj1sciYmbHIucHJvdG90eXBlW2RyXSxscj0hIVBuJiYoInZhbHVlcyI9PVBuLm5hbWV8fG51bGw9PVBuLm5hbWUpLFBuPWZ1bmN0aW9uKCl7cmV0dXJuIHhyLmNhbGwoRnIodGhpcykpfTtXZSgiZW50cmllcyIsZnVuY3Rpb24oKXtyZXR1cm4gTXIuY2FsbChGcih0aGlzKSl9KSxXZSgia2V5cyIsZnVuY3Rpb24oKXtyZXR1cm4gTHIuY2FsbChGcih0aGlzKSl9KSxXZSgidmFsdWVzIixQbiwhbHIpLFdlKGRyLFBuLCFscik7dmFyIFVyPU9iamVjdC5hc3NpZ24sanI9T2JqZWN0LmRlZmluZVByb3BlcnR5LFBuPSFVcnx8ZyhmdW5jdGlvbigpe2lmKGYmJjEhPT1Vcih7YjoxfSxVcihqcih7fSwiYSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7anIodGhpcywiYiIse3ZhbHVlOjMsZW51bWVyYWJsZTohMX0pfX0pLHtiOjJ9KSkuYilyZXR1cm4gMTt2YXIgdD17fSxlPXt9LG49U3ltYm9sKCkscj0iYWJjZGVmZ2hpamtsbW5vcHFyc3QiO3JldHVybiB0W25dPTcsci5zcGxpdCgiIikuZm9yRWFjaChmdW5jdGlvbih0KXtlW3RdPXR9KSw3IT1Vcih7fSx0KVtuXXx8RnQoVXIoe30sZSkpLmpvaW4oIiIpIT1yfSk/ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49YXQodCkscj1hcmd1bWVudHMubGVuZ3RoLGk9MSxvPUV0LmYscz1wLmY7aTxyOylmb3IodmFyIGEsdT1fKGFyZ3VtZW50c1tpKytdKSxjPW8/RnQodSkuY29uY2F0KG8odSkpOkZ0KHUpLGg9Yy5sZW5ndGgsbD0wO2w8aDspYT1jW2wrK10sZiYmIXMuY2FsbCh1LGEpfHwoblthXT11W2FdKTtyZXR1cm4gbn06VXI7c3Qoe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGZvcmNlZDpPYmplY3QuYXNzaWduIT09UG59LHthc3NpZ246UG59KTtwdC5PYmplY3QuYXNzaWduO3ZhciBxcj1wLmYsbHI9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuPXUodCkscj1GdChuKSxpPXIubGVuZ3RoLG89MCxzPVtdO288aTspZT1yW28rK10sZiYmIXFyLmNhbGwobixlKXx8cy5wdXNoKGE/W2UsbltlXV06bltlXSk7cmV0dXJuIHN9fSxQbj17ZW50cmllczpscighMCksdmFsdWVzOmxyKCExKX0sVnI9UG4uZW50cmllcztzdCh7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITB9LHtlbnRyaWVzOmZ1bmN0aW9uKHQpe3JldHVybiBWcih0KX19KTtwdC5PYmplY3QuZW50cmllczt2YXIgQnI9UG4udmFsdWVzO3N0KHt0YXJnZXQ6Ik9iamVjdCIsc3RhdDohMH0se3ZhbHVlczpmdW5jdGlvbih0KXtyZXR1cm4gQnIodCl9fSk7cHQuT2JqZWN0LnZhbHVlcztmdW5jdGlvbiBLcih0KXtpZih5KGU9dCkmJih2b2lkIDAhPT0obj1lW1dyXSk/ISFuOiJSZWdFeHAiPT1yKGUpKSl0aHJvdyBUeXBlRXJyb3IoIlRoZSBtZXRob2QgZG9lc24ndCBhY2NlcHQgcmVndWxhciBleHByZXNzaW9ucyIpO3ZhciBlLG47cmV0dXJuIHR9dmFyIFdyPVd0KCJtYXRjaCIpLEhyPVd0KCJtYXRjaCIpLGxyPWZ1bmN0aW9uKGUpe3ZhciBuPS8uLzt0cnl7Ii8uLyJbZV0obil9Y2F0Y2godCl7dHJ5e3JldHVybiBuW0hyXT0hMSwiLy4vIltlXShuKX1jYXRjaCh0KXt9fXJldHVybiExfTtzdCh7dGFyZ2V0OiJTdHJpbmciLHByb3RvOiEwLGZvcmNlZDohbHIoImluY2x1ZGVzIil9LHtpbmNsdWRlczpmdW5jdGlvbih0KXtyZXR1cm4hIX5TdHJpbmcocyh0aGlzKSkuaW5kZXhPZihLcih0KSwxPGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSk7WigiU3RyaW5nIiwiaW5jbHVkZXMiKTt2YXIgR3IsUG49Ti5mLHpyPSIiLnN0YXJ0c1dpdGgsUXI9TWF0aC5taW4sbHI9bHIoInN0YXJ0c1dpdGgiKSxHcj0hKGxyfHwoIShHcj1QbihTdHJpbmcucHJvdG90eXBlLCJzdGFydHNXaXRoIikpfHxHci53cml0YWJsZSkpO3N0KHt0YXJnZXQ6IlN0cmluZyIscHJvdG86ITAsZm9yY2VkOiFHciYmIWxyfSx7c3RhcnRzV2l0aDpmdW5jdGlvbih0KXt2YXIgZT1TdHJpbmcocyh0aGlzKSk7S3IodCk7dmFyIG49cnQoUXIoMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsZS5sZW5ndGgpKSx0PVN0cmluZyh0KTtyZXR1cm4genI/enIuY2FsbChlLHQsbik6ZS5zbGljZShuLG4rdC5sZW5ndGgpPT09dH19KTtaKCJTdHJpbmciLCJzdGFydHNXaXRoIik7c3Qoe3RhcmdldDoiU3RyaW5nIixwcm90bzohMH0se3JlcGVhdDoiIi5yZXBlYXR8fGZ1bmN0aW9uKHQpe3ZhciBlPVN0cmluZyhzKHRoaXMpKSxuPSIiLHI9bnQodCk7aWYocjwwfHxyPT0xLzApdGhyb3cgUmFuZ2VFcnJvcigiV3JvbmcgbnVtYmVyIG9mIHJlcGV0aXRpb25zIik7Zm9yKDswPHI7KHI+Pj49MSkmJihlKz1lKSkxJnImJihuKz1lKTtyZXR1cm4gbn19KTtaKCJTdHJpbmciLCJyZXBlYXQiKTt2YXIgWXIsWHI9V3QoInNwZWNpZXMiKSxKcj1XdCgiaXNDb25jYXRTcHJlYWRhYmxlIiksJHI9OTAwNzE5OTI1NDc0MDk5MSxacj0iTWF4aW11bSBhbGxvd2VkIGluZGV4IGV4Y2VlZGVkIixscj01MTw9dW58fCFnKGZ1bmN0aW9uKCl7dmFyIHQ9W107cmV0dXJuIHRbSnJdPSExLHQuY29uY2F0KClbMF0hPT10fSksWj0oWXI9ImNvbmNhdCIsNTE8PXVufHwhZyhmdW5jdGlvbigpe3ZhciB0PVtdO3JldHVybih0LmNvbnN0cnVjdG9yPXt9KVtYcl09ZnVuY3Rpb24oKXtyZXR1cm57Zm9vOjF9fSwxIT09dFtZcl0oQm9vbGVhbikuZm9vfSkpO3N0KHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6IWxyfHwhWn0se2NvbmNhdDpmdW5jdGlvbih0KXtmb3IodmFyIGUsbixyLGk9YXQodGhpcyksbz1zcihpLDApLHM9MCxhPS0xLHU9YXJndW1lbnRzLmxlbmd0aDthPHU7YSsrKWlmKGZ1bmN0aW9uKHQpe2lmKCF5KHQpKXJldHVybiExO3ZhciBlPXRbSnJdO3JldHVybiB2b2lkIDAhPT1lPyEhZTp1cih0KX0ocj0tMT09PWE/aTphcmd1bWVudHNbYV0pKXtpZihuPXJ0KHIubGVuZ3RoKSwkcjxzK24pdGhyb3cgVHlwZUVycm9yKFpyKTtmb3IoZT0wO2U8bjtlKysscysrKWUgaW4gciYmd3IobyxzLHJbZV0pfWVsc2V7aWYoJHI8PXMpdGhyb3cgVHlwZUVycm9yKFpyKTt3cihvLHMrKyxyKX1yZXR1cm4gby5sZW5ndGg9cyxvfX0pO2Z1bmN0aW9uIHRpKHQpe3ZhciBlPXB0LlN5bWJvbHx8KHB0LlN5bWJvbD17fSk7YyhlLHQpfHxhaShlLHQse3ZhbHVlOnNpLmYodCl9KX1mdW5jdGlvbiBlaSh0LGUpe3ZhciBuPV9pW3RdPVF0KHZpW2xpXSk7cmV0dXJuIGZpKG4se3R5cGU6aGksdGFnOnQsZGVzY3JpcHRpb246ZX0pLGZ8fChuLmRlc2NyaXB0aW9uPWUpLG59ZnVuY3Rpb24gbmkoZSx0KXttKGUpO3ZhciBuPXUodCksdD1GdChuKS5jb25jYXQoUmkobikpO3JldHVybiB1aSh0LGZ1bmN0aW9uKHQpe2YmJiFraS5jYWxsKG4sdCl8fEFpKGUsdCxuW3RdKX0pLGV9dmFyIHJpPVR0LmYsaWk9e30udG9TdHJpbmcsb2k9Im9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdyYmT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXM/T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMod2luZG93KTpbXSxaPXtmOmZ1bmN0aW9uKHQpe3JldHVybiBvaSYmIltvYmplY3QgV2luZG93XSI9PWlpLmNhbGwodCk/ZnVuY3Rpb24odCl7dHJ5e3JldHVybiByaSh0KX1jYXRjaCh0KXtyZXR1cm4gb2kuc2xpY2UoKX19KHQpOnJpKHUodCkpfX0sc2k9e2Y6V3R9LGFpPWsuZix1aT1Tbi5mb3JFYWNoLGNpPUooImhpZGRlbiIpLGhpPSJTeW1ib2wiLGxpPSJwcm90b3R5cGUiLFNuPVd0KCJ0b1ByaW1pdGl2ZSIpLGZpPWx0LnNldCxwaT1sdC5nZXR0ZXJGb3IoaGkpLGRpPU9iamVjdFtsaV0sdmk9Yi5TeW1ib2wsZ2k9ZXQoIkpTT04iLCJzdHJpbmdpZnkiKSx5aT1OLmYsbWk9ay5mLGJpPVouZix3aT1wLmYsX2k9eigic3ltYm9scyIpLElpPXooIm9wLXN5bWJvbHMiKSxUaT16KCJzdHJpbmctdG8tc3ltYm9sLXJlZ2lzdHJ5IiksRWk9eigic3ltYm9sLXRvLXN0cmluZy1yZWdpc3RyeSIpLEo9eigid2tzIiksej1iLlFPYmplY3QsU2k9IXp8fCF6W2xpXXx8IXpbbGldLmZpbmRDaGlsZCxDaT1mJiZnKGZ1bmN0aW9uKCl7cmV0dXJuIDchPVF0KG1pKHt9LCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG1pKHRoaXMsImEiLHt2YWx1ZTo3fSkuYX19KSkuYX0pP2Z1bmN0aW9uKHQsZSxuKXt2YXIgcj15aShkaSxlKTtyJiZkZWxldGUgZGlbZV0sbWkodCxlLG4pLHImJnQhPT1kaSYmbWkoZGksZSxyKX06bWksTmk9YT9mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QodClpbnN0YW5jZW9mIHZpfSxBaT1mdW5jdGlvbih0LGUsbil7dD09PWRpJiZBaShJaSxlLG4pLG0odCk7ZT1pKGUsITApO3JldHVybiBtKG4pLGMoX2ksZSk/KG4uZW51bWVyYWJsZT8oYyh0LGNpKSYmdFtjaV1bZV0mJih0W2NpXVtlXT0hMSksbj1RdChuLHtlbnVtZXJhYmxlOnYoMCwhMSl9KSk6KGModCxjaSl8fG1pKHQsY2ksdigxLHt9KSksdFtjaV1bZV09ITApLENpKHQsZSxuKSk6bWkodCxlLG4pfSxraT1mdW5jdGlvbih0KXt2YXIgZT1pKHQsITApLHQ9d2kuY2FsbCh0aGlzLGUpO3JldHVybiEodGhpcz09PWRpJiZjKF9pLGUpJiYhYyhJaSxlKSkmJighKHR8fCFjKHRoaXMsZSl8fCFjKF9pLGUpfHxjKHRoaXMsY2kpJiZ0aGlzW2NpXVtlXSl8fHQpfSx6PWZ1bmN0aW9uKHQsZSl7dmFyIG49dSh0KSx0PWkoZSwhMCk7aWYobiE9PWRpfHwhYyhfaSx0KXx8YyhJaSx0KSl7ZT15aShuLHQpO3JldHVybiFlfHwhYyhfaSx0KXx8YyhuLGNpKSYmbltjaV1bdF18fChlLmVudW1lcmFibGU9ITApLGV9fSxhPWZ1bmN0aW9uKHQpe3ZhciB0PWJpKHUodCkpLGU9W107cmV0dXJuIHVpKHQsZnVuY3Rpb24odCl7YyhfaSx0KXx8YygkLHQpfHxlLnB1c2godCl9KSxlfSxSaT1mdW5jdGlvbih0KXt2YXIgZT10PT09ZGksdD1iaShlP0lpOnUodCkpLG49W107cmV0dXJuIHVpKHQsZnVuY3Rpb24odCl7IWMoX2ksdCl8fGUmJiFjKGRpLHQpfHxuLnB1c2goX2lbdF0pfSksbn07WXR8fChmdCgodmk9ZnVuY3Rpb24oKXtpZih0aGlzIGluc3RhbmNlb2YgdmkpdGhyb3cgVHlwZUVycm9yKCJTeW1ib2wgaXMgbm90IGEgY29uc3RydWN0b3IiKTt2YXIgdD1hcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/U3RyaW5nKGFyZ3VtZW50c1swXSk6dm9pZCAwLGU9eCh0KSxuPWZ1bmN0aW9uKHQpe3RoaXM9PT1kaSYmbi5jYWxsKElpLHQpLGModGhpcyxjaSkmJmModGhpc1tjaV0sZSkmJih0aGlzW2NpXVtlXT0hMSksQ2kodGhpcyxlLHYoMSx0KSl9O3JldHVybiBmJiZTaSYmQ2koZGksZSx7Y29uZmlndXJhYmxlOiEwLHNldDpufSksZWkoZSx0KX0pW2xpXSwidG9TdHJpbmciLGZ1bmN0aW9uKCl7cmV0dXJuIHBpKHRoaXMpLnRhZ30pLGZ0KHZpLCJ3aXRob3V0U2V0dGVyIixmdW5jdGlvbih0KXtyZXR1cm4gZWkoeCh0KSx0KX0pLHAuZj1raSxrLmY9QWksTi5mPXosVHQuZj1aLmY9YSxFdC5mPVJpLHNpLmY9ZnVuY3Rpb24odCl7cmV0dXJuIGVpKFd0KHQpLHQpfSxmJiYobWkodmlbbGldLCJkZXNjcmlwdGlvbiIse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcGkodGhpcykuZGVzY3JpcHRpb259fSksZnQoZGksInByb3BlcnR5SXNFbnVtZXJhYmxlIixraSx7dW5zYWZlOiEwfSkpKSxzdCh7Z2xvYmFsOiEwLHdyYXA6ITAsZm9yY2VkOiFZdCxzaGFtOiFZdH0se1N5bWJvbDp2aX0pLHVpKEZ0KEopLGZ1bmN0aW9uKHQpe3RpKHQpfSksc3Qoe3RhcmdldDpoaSxzdGF0OiEwLGZvcmNlZDohWXR9LHtmb3I6ZnVuY3Rpb24odCl7dmFyIGU9U3RyaW5nKHQpO2lmKGMoVGksZSkpcmV0dXJuIFRpW2VdO3Q9dmkoZSk7cmV0dXJuIFRpW2VdPXQsRWlbdF09ZSx0fSxrZXlGb3I6ZnVuY3Rpb24odCl7aWYoIU5pKHQpKXRocm93IFR5cGVFcnJvcih0KyIgaXMgbm90IGEgc3ltYm9sIik7aWYoYyhFaSx0KSlyZXR1cm4gRWlbdF19LHVzZVNldHRlcjpmdW5jdGlvbigpe1NpPSEwfSx1c2VTaW1wbGU6ZnVuY3Rpb24oKXtTaT0hMX19KSxzdCh7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOiFZdCxzaGFtOiFmfSx7Y3JlYXRlOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHZvaWQgMD09PWU/UXQodCk6bmkoUXQodCksZSl9LGRlZmluZVByb3BlcnR5OkFpLGRlZmluZVByb3BlcnRpZXM6bmksZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOnp9KSxzdCh7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOiFZdH0se2dldE93blByb3BlcnR5TmFtZXM6YSxnZXRPd25Qcm9wZXJ0eVN5bWJvbHM6Uml9KSxzdCh7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOmcoZnVuY3Rpb24oKXtFdC5mKDEpfSl9LHtnZXRPd25Qcm9wZXJ0eVN5bWJvbHM6ZnVuY3Rpb24odCl7cmV0dXJuIEV0LmYoYXQodCkpfX0pLGdpJiYoS2k9IVl0fHxnKGZ1bmN0aW9uKCl7dmFyIHQ9dmkoKTtyZXR1cm4iW251bGxdIiE9Z2koW3RdKXx8Int9IiE9Z2koe2E6dH0pfHwie30iIT1naShPYmplY3QodCkpfSksc3Qoe3RhcmdldDoiSlNPTiIsc3RhdDohMCxmb3JjZWQ6S2l9LHtzdHJpbmdpZnk6ZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcixpPVt0XSxvPTE7bzxhcmd1bWVudHMubGVuZ3RoOylpLnB1c2goYXJndW1lbnRzW28rK10pO2lmKCh5KHI9ZSl8fHZvaWQgMCE9PXQpJiYhTmkodCkpcmV0dXJuIHVyKGUpfHwoZT1mdW5jdGlvbih0LGUpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiByJiYoZT1yLmNhbGwodGhpcyx0LGUpKSwhTmkoZSkpcmV0dXJuIGV9KSxpWzFdPWUsZ2kuYXBwbHkobnVsbCxpKX19KSksdmlbbGldW1NuXXx8Uih2aVtsaV0sU24sdmlbbGldLnZhbHVlT2YpLGZlKHZpLGhpKSwkW2NpXT0hMCx0aSgiYXN5bmNJdGVyYXRvciIpO3ZhciBQaSxPaSxEaSx4aSxMaSx6PWsuZixNaT1iLlN5bWJvbDshZnx8ImZ1bmN0aW9uIiE9dHlwZW9mIE1pfHwiZGVzY3JpcHRpb24iaW4gTWkucHJvdG90eXBlJiZ2b2lkIDA9PT1NaSgpLmRlc2NyaXB0aW9ufHwoUGk9e30sb3QoT2k9ZnVuY3Rpb24oKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPDF8fHZvaWQgMD09PWFyZ3VtZW50c1swXT92b2lkIDA6U3RyaW5nKGFyZ3VtZW50c1swXSksZT10aGlzIGluc3RhbmNlb2YgT2k/bmV3IE1pKHQpOnZvaWQgMD09PXQ/TWkoKTpNaSh0KTtyZXR1cm4iIj09PXQmJihQaVtlXT0hMCksZX0sTWkpLChHaT1PaS5wcm90b3R5cGU9TWkucHJvdG90eXBlKS5jb25zdHJ1Y3Rvcj1PaSxEaT1HaS50b1N0cmluZyx4aT0iU3ltYm9sKHRlc3QpIj09U3RyaW5nKE1pKCJ0ZXN0IikpLExpPS9eU3ltYm9sXCgoLiopXClbXildKyQvLHooR2ksImRlc2NyaXB0aW9uIix7Y29uZmlndXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3ZhciB0PXkodGhpcyk/dGhpcy52YWx1ZU9mKCk6dGhpcyxlPURpLmNhbGwodCk7aWYoYyhQaSx0KSlyZXR1cm4iIjtlPXhpP2Uuc2xpY2UoNywtMSk6ZS5yZXBsYWNlKExpLCIkMSIpO3JldHVybiIiPT09ZT92b2lkIDA6ZX19KSxzdCh7Z2xvYmFsOiEwLGZvcmNlZDohMH0se1N5bWJvbDpPaX0pKSx0aSgiaGFzSW5zdGFuY2UiKSx0aSgiaXNDb25jYXRTcHJlYWRhYmxlIiksdGkoIml0ZXJhdG9yIiksdGkoIm1hdGNoIiksdGkoIm1hdGNoQWxsIiksdGkoInJlcGxhY2UiKSx0aSgic2VhcmNoIiksdGkoInNwZWNpZXMiKSx0aSgic3BsaXQiKSx0aSgidG9QcmltaXRpdmUiKSx0aSgidG9TdHJpbmdUYWciKSx0aSgidW5zY29wYWJsZXMiKSxmZShiLkpTT04sIkpTT04iLCEwKSxmZShNYXRoLCJNYXRoIiwhMCksc3Qoe2dsb2JhbDohMH0se1JlZmxlY3Q6e319KSxmZShiLlJlZmxlY3QsIlJlZmxlY3QiLCEwKTtwdC5TeW1ib2w7dGkoImFzeW5jRGlzcG9zZSIpLHRpKCJkaXNwb3NlIiksdGkoIm9ic2VydmFibGUiKSx0aSgicGF0dGVybk1hdGNoIiksdGkoInJlcGxhY2VBbGwiKTtzaS5mKCJpdGVyYXRvciIpO3ZhciBGaT0hZyhmdW5jdGlvbigpe3JldHVybiBPYmplY3QuaXNFeHRlbnNpYmxlKE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyh7fSkpfSksVWk9ZShmdW5jdGlvbih0KXtmdW5jdGlvbiBuKHQpe2UodCxyLHt2YWx1ZTp7b2JqZWN0SUQ6Ik8iKyArK2ksd2Vha0RhdGE6e319fSl9dmFyIGU9ay5mLHI9eCgibWV0YSIpLGk9MCxvPU9iamVjdC5pc0V4dGVuc2libGV8fGZ1bmN0aW9uKCl7cmV0dXJuITB9LHM9dC5leHBvcnRzPXtSRVFVSVJFRDohMSxmYXN0S2V5OmZ1bmN0aW9uKHQsZSl7aWYoIXkodCkpcmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0P3Q6KCJzdHJpbmciPT10eXBlb2YgdD8iUyI6IlAiKSt0O2lmKCFjKHQscikpe2lmKCFvKHQpKXJldHVybiJGIjtpZighZSlyZXR1cm4iRSI7bih0KX1yZXR1cm4gdFtyXS5vYmplY3RJRH0sZ2V0V2Vha0RhdGE6ZnVuY3Rpb24odCxlKXtpZighYyh0LHIpKXtpZighbyh0KSlyZXR1cm4hMDtpZighZSlyZXR1cm4hMTtuKHQpfXJldHVybiB0W3JdLndlYWtEYXRhfSxvbkZyZWV6ZTpmdW5jdGlvbih0KXtyZXR1cm4gRmkmJnMuUkVRVUlSRUQmJm8odCkmJiFjKHQscikmJm4odCksdH19OyRbcl09ITB9KSxhPWZ1bmN0aW9uKHMsdCxlKXtmdW5jdGlvbiBuKHQpe3ZhciBuPXBbdF07ZnQocCx0LCJhZGQiPT10P2Z1bmN0aW9uKHQpe3JldHVybiBuLmNhbGwodGhpcywwPT09dD8wOnQpLHRoaXN9OiJkZWxldGUiPT10P2Z1bmN0aW9uKHQpe3JldHVybiEoaCYmIXkodCkpJiZuLmNhbGwodGhpcywwPT09dD8wOnQpfToiZ2V0Ij09dD9mdW5jdGlvbih0KXtyZXR1cm4gaCYmIXkodCk/dm9pZCAwOm4uY2FsbCh0aGlzLDA9PT10PzA6dCl9OiJoYXMiPT10P2Z1bmN0aW9uKHQpe3JldHVybiEoaCYmIXkodCkpJiZuLmNhbGwodGhpcywwPT09dD8wOnQpfTpmdW5jdGlvbih0LGUpe3JldHVybiBuLmNhbGwodGhpcywwPT09dD8wOnQsZSksdGhpc30pfXZhciByLGksbyxhLHUsYz0tMSE9PXMuaW5kZXhPZigiTWFwIiksaD0tMSE9PXMuaW5kZXhPZigiV2VhayIpLGw9Yz8ic2V0IjoiYWRkIixmPWJbc10scD1mJiZmLnByb3RvdHlwZSxkPWYsdj17fTtyZXR1cm4gUHQocywiZnVuY3Rpb24iIT10eXBlb2YgZnx8IShofHxwLmZvckVhY2gmJiFnKGZ1bmN0aW9uKCl7KG5ldyBmKS5lbnRyaWVzKCkubmV4dCgpfSkpKT8oZD1lLmdldENvbnN0cnVjdG9yKHQscyxjLGwpLFVpLlJFUVVJUkVEPSEwKTpQdChzLCEwKSYmKGk9KHI9bmV3IGQpW2xdKGg/e306LTAsMSkhPXIsbz1nKGZ1bmN0aW9uKCl7ci5oYXMoMSl9KSxhPVRlKGZ1bmN0aW9uKHQpe25ldyBmKHQpfSksdT0haCYmZyhmdW5jdGlvbigpe2Zvcih2YXIgdD1uZXcgZixlPTU7ZS0tOyl0W2xdKGUsZSk7cmV0dXJuIXQuaGFzKC0wKX0pLGF8fCgoKGQ9dChmdW5jdGlvbih0LGUpe2RlKHQsZCxzKTt2YXIgbixyLGksbyxuPShuPW5ldyBmLHI9dCx0PWQsTXQmJiJmdW5jdGlvbiI9PXR5cGVvZihpPXIuY29uc3RydWN0b3IpJiZpIT09dCYmeShvPWkucHJvdG90eXBlKSYmbyE9PXQucHJvdG90eXBlJiZNdChuLG8pLG4pO3JldHVybiBudWxsIT1lJiZvZShlLG5bbF0se3RoYXQ6bixBU19FTlRSSUVTOmN9KSxufSkpLnByb3RvdHlwZT1wKS5jb25zdHJ1Y3Rvcj1kKSwob3x8dSkmJihuKCJkZWxldGUiKSxuKCJoYXMiKSxjJiZuKCJnZXQiKSksKHV8fGkpJiZuKGwpLGgmJnAuY2xlYXImJmRlbGV0ZSBwLmNsZWFyKSx2W3NdPWQsc3Qoe2dsb2JhbDohMCxmb3JjZWQ6ZCE9Zn0sdiksZmUoZCxzKSxofHxlLnNldFN0cm9uZyhkLHMsYyksZH0samk9ay5mLHFpPVVpLmZhc3RLZXksVmk9bHQuc2V0LEJpPWx0LmdldHRlckZvcixLaT17Z2V0Q29uc3RydWN0b3I6ZnVuY3Rpb24odCxuLHIsaSl7ZnVuY3Rpb24gbyh0LGUsbil7dmFyIHIsaT1hKHQpLG89dSh0LGUpO3JldHVybiBvP28udmFsdWU9bjooaS5sYXN0PW89e2luZGV4OnI9cWkoZSwhMCksa2V5OmUsdmFsdWU6bixwcmV2aW91czpuPWkubGFzdCxuZXh0OnZvaWQgMCxyZW1vdmVkOiExfSxpLmZpcnN0fHwoaS5maXJzdD1vKSxuJiYobi5uZXh0PW8pLGY/aS5zaXplKys6dC5zaXplKyssIkYiIT09ciYmKGkuaW5kZXhbcl09bykpLHR9dmFyIHM9dChmdW5jdGlvbih0LGUpe2RlKHQscyxuKSxWaSh0LHt0eXBlOm4saW5kZXg6UXQobnVsbCksZmlyc3Q6dm9pZCAwLGxhc3Q6dm9pZCAwLHNpemU6MH0pLGZ8fCh0LnNpemU9MCksbnVsbCE9ZSYmb2UoZSx0W2ldLHt0aGF0OnQsQVNfRU5UUklFUzpyfSl9KSxhPUJpKG4pLHU9ZnVuY3Rpb24odCxlKXt2YXIgbixyPWEodCksdD1xaShlKTtpZigiRiIhPT10KXJldHVybiByLmluZGV4W3RdO2ZvcihuPXIuZmlyc3Q7bjtuPW4ubmV4dClpZihuLmtleT09ZSlyZXR1cm4gbn07cmV0dXJuIGxlKHMucHJvdG90eXBlLHtjbGVhcjpmdW5jdGlvbigpe2Zvcih2YXIgdD1hKHRoaXMpLGU9dC5pbmRleCxuPXQuZmlyc3Q7bjspbi5yZW1vdmVkPSEwLG4ucHJldmlvdXMmJihuLnByZXZpb3VzPW4ucHJldmlvdXMubmV4dD12b2lkIDApLGRlbGV0ZSBlW24uaW5kZXhdLG49bi5uZXh0O3QuZmlyc3Q9dC5sYXN0PXZvaWQgMCxmP3Quc2l6ZT0wOnRoaXMuc2l6ZT0wfSxkZWxldGU6ZnVuY3Rpb24odCl7dmFyIGUsbj1hKHRoaXMpLHI9dSh0aGlzLHQpO3JldHVybiByJiYoZT1yLm5leHQsdD1yLnByZXZpb3VzLGRlbGV0ZSBuLmluZGV4W3IuaW5kZXhdLHIucmVtb3ZlZD0hMCx0JiYodC5uZXh0PWUpLGUmJihlLnByZXZpb3VzPXQpLG4uZmlyc3Q9PXImJihuLmZpcnN0PWUpLG4ubGFzdD09ciYmKG4ubGFzdD10KSxmP24uc2l6ZS0tOnRoaXMuc2l6ZS0tKSwhIXJ9LGZvckVhY2g6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49YSh0aGlzKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyk7ZT1lP2UubmV4dDpuLmZpcnN0Oylmb3IocihlLnZhbHVlLGUua2V5LHRoaXMpO2UmJmUucmVtb3ZlZDspZT1lLnByZXZpb3VzfSxoYXM6ZnVuY3Rpb24odCl7cmV0dXJuISF1KHRoaXMsdCl9fSksbGUocy5wcm90b3R5cGUscj97Z2V0OmZ1bmN0aW9uKHQpe3Q9dSh0aGlzLHQpO3JldHVybiB0JiZ0LnZhbHVlfSxzZXQ6ZnVuY3Rpb24odCxlKXtyZXR1cm4gbyh0aGlzLDA9PT10PzA6dCxlKX19OnthZGQ6ZnVuY3Rpb24odCl7cmV0dXJuIG8odGhpcyx0PTA9PT10PzA6dCx0KX19KSxmJiZqaShzLnByb3RvdHlwZSwic2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiBhKHRoaXMpLnNpemV9fSksc30sc2V0U3Ryb25nOmZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1lKyIgSXRlcmF0b3IiLGk9QmkoZSksbz1CaShyKTt4bih0LGUsZnVuY3Rpb24odCxlKXtWaSh0aGlzLHt0eXBlOnIsdGFyZ2V0OnQsc3RhdGU6aSh0KSxraW5kOmUsbGFzdDp2b2lkIDB9KX0sZnVuY3Rpb24oKXtmb3IodmFyIHQ9byh0aGlzKSxlPXQua2luZCxuPXQubGFzdDtuJiZuLnJlbW92ZWQ7KW49bi5wcmV2aW91cztyZXR1cm4gdC50YXJnZXQmJih0Lmxhc3Q9bj1uP24ubmV4dDp0LnN0YXRlLmZpcnN0KT8ia2V5cyI9PWU/e3ZhbHVlOm4ua2V5LGRvbmU6ITF9OiJ2YWx1ZXMiPT1lP3t2YWx1ZTpuLnZhbHVlLGRvbmU6ITF9Ont2YWx1ZTpbbi5rZXksbi52YWx1ZV0sZG9uZTohMX06e3ZhbHVlOnQudGFyZ2V0PXZvaWQgMCxkb25lOiEwfX0sbj8iZW50cmllcyI6InZhbHVlcyIsIW4sITApLHBlKGUpfX0sU249KGEoIk1hcCIsZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIHQodGhpcyxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1swXTp2b2lkIDApfX0sS2kpLHB0Lk1hcCxmdW5jdGlvbih0KXt2YXIgZSxuLHIsaSxvPWFyZ3VtZW50cy5sZW5ndGgscz0xPG8/YXJndW1lbnRzWzFdOnZvaWQgMDtyZXR1cm4gR3QodGhpcyksKGU9dm9pZCAwIT09cykmJkd0KHMpLG51bGw9PXQ/bmV3IHRoaXM6KG49W10sZT8ocj0wLGk9enQocywyPG8/YXJndW1lbnRzWzJdOnZvaWQgMCwyKSxvZSh0LGZ1bmN0aW9uKHQpe24ucHVzaChpKHQscisrKSl9KSk6b2UodCxuLnB1c2gse3RoYXQ6bn0pLG5ldyB0aGlzKG4pKX0pO3N0KHt0YXJnZXQ6Ik1hcCIsc3RhdDohMH0se2Zyb206U259KTt6PWZ1bmN0aW9uKCl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkodCk7dC0tOyllW3RdPWFyZ3VtZW50c1t0XTtyZXR1cm4gbmV3IHRoaXMoZSl9O3N0KHt0YXJnZXQ6Ik1hcCIsc3RhdDohMH0se29mOnp9KTtmdW5jdGlvbiBXaSgpe2Zvcih2YXIgdCxlPW0odGhpcyksbj1HdChlLmRlbGV0ZSkscj0hMCxpPTAsbz1hcmd1bWVudHMubGVuZ3RoO2k8bztpKyspdD1uLmNhbGwoZSxhcmd1bWVudHNbaV0pLHI9ciYmdDtyZXR1cm4hIXJ9c3Qoe3RhcmdldDoiTWFwIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZGVsZXRlQWxsOmZ1bmN0aW9uKCl7cmV0dXJuIFdpLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KTtzdCh7dGFyZ2V0OiJNYXAiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtlbXBsYWNlOmZ1bmN0aW9uKHQsZSl7dmFyIG49bSh0aGlzKSxlPW4uaGFzKHQpJiYidXBkYXRlImluIGU/ZS51cGRhdGUobi5nZXQodCksdCxuKTplLmluc2VydCh0LG4pO3JldHVybiBuLnNldCh0LGUpLGV9fSk7ZnVuY3Rpb24gSGkodCl7cmV0dXJuIE1hcC5wcm90b3R5cGUuZW50cmllcy5jYWxsKHQpfXN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se2V2ZXJ5OmZ1bmN0aW9uKHQpe3ZhciByPW0odGhpcyksZT1IaShyKSxpPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyk7cmV0dXJuIW9lKGUsZnVuY3Rpb24odCxlLG4pe2lmKCFpKGUsdCxyKSlyZXR1cm4gbigpfSx7QVNfRU5UUklFUzohMCxJU19JVEVSQVRPUjohMCxJTlRFUlJVUFRFRDohMH0pLnN0b3BwZWR9fSksc3Qoe3RhcmdldDoiTWFwIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZmlsdGVyOmZ1bmN0aW9uKHQpe3ZhciBuPW0odGhpcyksZT1IaShuKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyksaT1uZXcoRWUobixldCgiTWFwIikpKSxvPUd0KGkuc2V0KTtyZXR1cm4gb2UoZSxmdW5jdGlvbih0LGUpe3IoZSx0LG4pJiZvLmNhbGwoaSx0LGUpfSx7QVNfRU5UUklFUzohMCxJU19JVEVSQVRPUjohMH0pLGl9fSksc3Qoe3RhcmdldDoiTWFwIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZmluZDpmdW5jdGlvbih0KXt2YXIgcj1tKHRoaXMpLGU9SGkociksaT16dCh0LDE8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMV06dm9pZCAwLDMpO3JldHVybiBvZShlLGZ1bmN0aW9uKHQsZSxuKXtpZihpKGUsdCxyKSlyZXR1cm4gbihlKX0se0FTX0VOVFJJRVM6ITAsSVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5yZXN1bHR9fSksc3Qoe3RhcmdldDoiTWFwIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZmluZEtleTpmdW5jdGlvbih0KXt2YXIgcj1tKHRoaXMpLGU9SGkociksaT16dCh0LDE8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMV06dm9pZCAwLDMpO3JldHVybiBvZShlLGZ1bmN0aW9uKHQsZSxuKXtpZihpKGUsdCxyKSlyZXR1cm4gbih0KX0se0FTX0VOVFJJRVM6ITAsSVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5yZXN1bHR9fSksc3Qoe3RhcmdldDoiTWFwIixzdGF0OiEwfSx7Z3JvdXBCeTpmdW5jdGlvbih0LG4pe3ZhciByPW5ldyB0aGlzO0d0KG4pO3ZhciBpPUd0KHIuaGFzKSxvPUd0KHIuZ2V0KSxzPUd0KHIuc2V0KTtyZXR1cm4gb2UodCxmdW5jdGlvbih0KXt2YXIgZT1uKHQpO2kuY2FsbChyLGUpP28uY2FsbChyLGUpLnB1c2godCk6cy5jYWxsKHIsZSxbdF0pfSkscn19KTtzdCh7dGFyZ2V0OiJNYXAiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtpbmNsdWRlczpmdW5jdGlvbihpKXtyZXR1cm4gb2UoSGkobSh0aGlzKSksZnVuY3Rpb24odCxlLG4pe2lmKChyPWUpPT09KGU9aSl8fHIhPXImJmUhPWUpcmV0dXJuIG4oKTt2YXIgcn0se0FTX0VOVFJJRVM6ITAsSVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5zdG9wcGVkfX0pLHN0KHt0YXJnZXQ6Ik1hcCIsc3RhdDohMH0se2tleUJ5OmZ1bmN0aW9uKHQsZSl7dmFyIG49bmV3IHRoaXM7R3QoZSk7dmFyIHI9R3Qobi5zZXQpO3JldHVybiBvZSh0LGZ1bmN0aW9uKHQpe3IuY2FsbChuLGUodCksdCl9KSxufX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se2tleU9mOmZ1bmN0aW9uKHIpe3JldHVybiBvZShIaShtKHRoaXMpKSxmdW5jdGlvbih0LGUsbil7aWYoZT09PXIpcmV0dXJuIG4odCl9LHtBU19FTlRSSUVTOiEwLElTX0lURVJBVE9SOiEwLElOVEVSUlVQVEVEOiEwfSkucmVzdWx0fX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se21hcEtleXM6ZnVuY3Rpb24odCl7dmFyIG49bSh0aGlzKSxlPUhpKG4pLHI9enQodCwxPGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzFdOnZvaWQgMCwzKSxpPW5ldyhFZShuLGV0KCJNYXAiKSkpLG89R3QoaS5zZXQpO3JldHVybiBvZShlLGZ1bmN0aW9uKHQsZSl7by5jYWxsKGkscihlLHQsbiksZSl9LHtBU19FTlRSSUVTOiEwLElTX0lURVJBVE9SOiEwfSksaX19KSxzdCh7dGFyZ2V0OiJNYXAiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHttYXBWYWx1ZXM6ZnVuY3Rpb24odCl7dmFyIG49bSh0aGlzKSxlPUhpKG4pLHI9enQodCwxPGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzFdOnZvaWQgMCwzKSxpPW5ldyhFZShuLGV0KCJNYXAiKSkpLG89R3QoaS5zZXQpO3JldHVybiBvZShlLGZ1bmN0aW9uKHQsZSl7by5jYWxsKGksdCxyKGUsdCxuKSl9LHtBU19FTlRSSUVTOiEwLElTX0lURVJBVE9SOiEwfSksaX19KSxzdCh7dGFyZ2V0OiJNYXAiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHttZXJnZTpmdW5jdGlvbih0KXtmb3IodmFyIGU9bSh0aGlzKSxuPUd0KGUuc2V0KSxyPTA7cjxhcmd1bWVudHMubGVuZ3RoOylvZShhcmd1bWVudHNbcisrXSxuLHt0aGF0OmUsQVNfRU5UUklFUzohMH0pO3JldHVybiBlfX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3JlZHVjZTpmdW5jdGlvbihuKXt2YXIgcj1tKHRoaXMpLHQ9SGkociksaT1hcmd1bWVudHMubGVuZ3RoPDIsbz1pP3ZvaWQgMDphcmd1bWVudHNbMV07aWYoR3Qobiksb2UodCxmdW5jdGlvbih0LGUpe289aT8oaT0hMSxlKTpuKG8sZSx0LHIpfSx7QVNfRU5UUklFUzohMCxJU19JVEVSQVRPUjohMH0pLGkpdGhyb3cgVHlwZUVycm9yKCJSZWR1Y2Ugb2YgZW1wdHkgbWFwIHdpdGggbm8gaW5pdGlhbCB2YWx1ZSIpO3JldHVybiBvfX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3NvbWU6ZnVuY3Rpb24odCl7dmFyIHI9bSh0aGlzKSxlPUhpKHIpLGk9enQodCwxPGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzFdOnZvaWQgMCwzKTtyZXR1cm4gb2UoZSxmdW5jdGlvbih0LGUsbil7aWYoaShlLHQscikpcmV0dXJuIG4oKX0se0FTX0VOVFJJRVM6ITAsSVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5zdG9wcGVkfX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3VwZGF0ZTpmdW5jdGlvbih0LGUpe3ZhciBuPW0odGhpcykscj1hcmd1bWVudHMubGVuZ3RoO0d0KGUpO3ZhciBpPW4uaGFzKHQpO2lmKCFpJiZyPDMpdGhyb3cgVHlwZUVycm9yKCJVcGRhdGluZyBhYnNlbnQgdmFsdWUiKTtyPWk/bi5nZXQodCk6R3QoMjxyP2FyZ3VtZW50c1syXTp2b2lkIDApKHQsbik7cmV0dXJuIG4uc2V0KHQsZShyLHQsbikpLG59fSk7dmFyIEdpPWZ1bmN0aW9uKHQsZSl7dmFyIG4scj1tKHRoaXMpLGk9Mjxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1syXTp2b2lkIDA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBpKXRocm93IFR5cGVFcnJvcigiQXQgbGVhc3Qgb25lIGNhbGxiYWNrIHJlcXVpcmVkIik7cmV0dXJuIHIuaGFzKHQpPyhuPXIuZ2V0KHQpLCJmdW5jdGlvbiI9PXR5cGVvZiBlJiYobj1lKG4pLHIuc2V0KHQsbikpKToiZnVuY3Rpb24iPT10eXBlb2YgaSYmKG49aSgpLHIuc2V0KHQsbikpLG59O3N0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3Vwc2VydDpHaX0pLHN0KHt0YXJnZXQ6Ik1hcCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3VwZGF0ZU9ySW5zZXJ0OkdpfSk7YSgiU2V0IixmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdCh0aGlzLGFyZ3VtZW50cy5sZW5ndGg/YXJndW1lbnRzWzBdOnZvaWQgMCl9fSxLaSkscHQuU2V0O3N0KHt0YXJnZXQ6IlNldCIsc3RhdDohMH0se2Zyb206U259KSxzdCh7dGFyZ2V0OiJTZXQiLHN0YXQ6ITB9LHtvZjp6fSk7c3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7YWRkQWxsOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciB0PW0odGhpcyksZT1HdCh0LmFkZCksbj0wLHI9YXJndW1lbnRzLmxlbmd0aDtuPHI7bisrKWUuY2FsbCh0LGFyZ3VtZW50c1tuXSk7cmV0dXJuIHR9LmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KSxzdCh7dGFyZ2V0OiJTZXQiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtkZWxldGVBbGw6ZnVuY3Rpb24oKXtyZXR1cm4gV2kuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0pO2Z1bmN0aW9uIHppKHQpe3JldHVybiBTZXQucHJvdG90eXBlLnZhbHVlcy5jYWxsKHQpfXN0KHt0YXJnZXQ6IlNldCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se2V2ZXJ5OmZ1bmN0aW9uKHQpe3ZhciBuPW0odGhpcyksZT16aShuKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyk7cmV0dXJuIW9lKGUsZnVuY3Rpb24odCxlKXtpZighcih0LHQsbikpcmV0dXJuIGUoKX0se0lTX0lURVJBVE9SOiEwLElOVEVSUlVQVEVEOiEwfSkuc3RvcHBlZH19KSxzdCh7dGFyZ2V0OiJTZXQiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtkaWZmZXJlbmNlOmZ1bmN0aW9uKHQpe3ZhciBlPW0odGhpcyksbj1uZXcoRWUoZSxldCgiU2V0IikpKShlKSxyPUd0KG4uZGVsZXRlKTtyZXR1cm4gb2UodCxmdW5jdGlvbih0KXtyLmNhbGwobix0KX0pLG59fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZmlsdGVyOmZ1bmN0aW9uKHQpe3ZhciBlPW0odGhpcyksbj16aShlKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyksaT1uZXcoRWUoZSxldCgiU2V0IikpKSxvPUd0KGkuYWRkKTtyZXR1cm4gb2UobixmdW5jdGlvbih0KXtyKHQsdCxlKSYmby5jYWxsKGksdCl9LHtJU19JVEVSQVRPUjohMH0pLGl9fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7ZmluZDpmdW5jdGlvbih0KXt2YXIgbj1tKHRoaXMpLGU9emkobikscj16dCh0LDE8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMV06dm9pZCAwLDMpO3JldHVybiBvZShlLGZ1bmN0aW9uKHQsZSl7aWYocih0LHQsbikpcmV0dXJuIGUodCl9LHtJU19JVEVSQVRPUjohMCxJTlRFUlJVUFRFRDohMH0pLnJlc3VsdH19KSxzdCh7dGFyZ2V0OiJTZXQiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtpbnRlcnNlY3Rpb246ZnVuY3Rpb24odCl7dmFyIGU9bSh0aGlzKSxuPW5ldyhFZShlLGV0KCJTZXQiKSkpLHI9R3QoZS5oYXMpLGk9R3Qobi5hZGQpO3JldHVybiBvZSh0LGZ1bmN0aW9uKHQpe3IuY2FsbChlLHQpJiZpLmNhbGwobix0KX0pLG59fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7aXNEaXNqb2ludEZyb206ZnVuY3Rpb24odCl7dmFyIG49bSh0aGlzKSxyPUd0KG4uaGFzKTtyZXR1cm4hb2UodCxmdW5jdGlvbih0LGUpe2lmKCEwPT09ci5jYWxsKG4sdCkpcmV0dXJuIGUoKX0se0lOVEVSUlVQVEVEOiEwfSkuc3RvcHBlZH19KSxzdCh7dGFyZ2V0OiJTZXQiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtpc1N1YnNldE9mOmZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQpe3ZhciBlPW5lKHQpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IFR5cGVFcnJvcihTdHJpbmcodCkrIiBpcyBub3QgaXRlcmFibGUiKTtyZXR1cm4gbShlLmNhbGwodCkpfSh0aGlzKSxuPW0odCkscj1uLmhhcztyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgciYmKG49bmV3KGV0KCJTZXQiKSkodCkscj1HdChuLmhhcykpLCFvZShlLGZ1bmN0aW9uKHQsZSl7aWYoITE9PT1yLmNhbGwobix0KSlyZXR1cm4gZSgpfSx7SVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5zdG9wcGVkfX0pLHN0KHt0YXJnZXQ6IlNldCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se2lzU3VwZXJzZXRPZjpmdW5jdGlvbih0KXt2YXIgbj1tKHRoaXMpLHI9R3Qobi5oYXMpO3JldHVybiFvZSh0LGZ1bmN0aW9uKHQsZSl7aWYoITE9PT1yLmNhbGwobix0KSlyZXR1cm4gZSgpfSx7SU5URVJSVVBURUQ6ITB9KS5zdG9wcGVkfX0pLHN0KHt0YXJnZXQ6IlNldCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se2pvaW46ZnVuY3Rpb24odCl7dmFyIGU9bSh0aGlzKSxuPXppKGUpLGU9dm9pZCAwPT09dD8iLCI6U3RyaW5nKHQpLHQ9W107cmV0dXJuIG9lKG4sdC5wdXNoLHt0aGF0OnQsSVNfSVRFUkFUT1I6ITB9KSx0LmpvaW4oZSl9fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7bWFwOmZ1bmN0aW9uKHQpe3ZhciBlPW0odGhpcyksbj16aShlKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyksaT1uZXcoRWUoZSxldCgiU2V0IikpKSxvPUd0KGkuYWRkKTtyZXR1cm4gb2UobixmdW5jdGlvbih0KXtvLmNhbGwoaSxyKHQsdCxlKSl9LHtJU19JVEVSQVRPUjohMH0pLGl9fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7cmVkdWNlOmZ1bmN0aW9uKGUpe3ZhciBuPW0odGhpcyksdD16aShuKSxyPWFyZ3VtZW50cy5sZW5ndGg8MixpPXI/dm9pZCAwOmFyZ3VtZW50c1sxXTtpZihHdChlKSxvZSh0LGZ1bmN0aW9uKHQpe2k9cj8ocj0hMSx0KTplKGksdCx0LG4pfSx7SVNfSVRFUkFUT1I6ITB9KSxyKXRocm93IFR5cGVFcnJvcigiUmVkdWNlIG9mIGVtcHR5IHNldCB3aXRoIG5vIGluaXRpYWwgdmFsdWUiKTtyZXR1cm4gaX19KSxzdCh7dGFyZ2V0OiJTZXQiLHByb3RvOiEwLHJlYWw6ITAsZm9yY2VkOkd9LHtzb21lOmZ1bmN0aW9uKHQpe3ZhciBuPW0odGhpcyksZT16aShuKSxyPXp0KHQsMTxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1sxXTp2b2lkIDAsMyk7cmV0dXJuIG9lKGUsZnVuY3Rpb24odCxlKXtpZihyKHQsdCxuKSlyZXR1cm4gZSgpfSx7SVNfSVRFUkFUT1I6ITAsSU5URVJSVVBURUQ6ITB9KS5zdG9wcGVkfX0pLHN0KHt0YXJnZXQ6IlNldCIscHJvdG86ITAscmVhbDohMCxmb3JjZWQ6R30se3N5bW1ldHJpY0RpZmZlcmVuY2U6ZnVuY3Rpb24odCl7dmFyIGU9bSh0aGlzKSxuPW5ldyhFZShlLGV0KCJTZXQiKSkpKGUpLHI9R3Qobi5kZWxldGUpLGk9R3Qobi5hZGQpO3JldHVybiBvZSh0LGZ1bmN0aW9uKHQpe3IuY2FsbChuLHQpfHxpLmNhbGwobix0KX0pLG59fSksc3Qoe3RhcmdldDoiU2V0Iixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDpHfSx7dW5pb246ZnVuY3Rpb24odCl7dmFyIGU9bSh0aGlzKSxlPW5ldyhFZShlLGV0KCJTZXQiKSkpKGUpO3JldHVybiBvZSh0LEd0KGUuYWRkKSx7dGhhdDplfSksZX19KTt2YXIgUWk9TWF0aC5mbG9vcjtzdCh7dGFyZ2V0OiJOdW1iZXIiLHN0YXQ6ITB9LHtpc0ludGVnZXI6ZnVuY3Rpb24odCl7cmV0dXJuIXkodCkmJmlzRmluaXRlKHQpJiZRaSh0KT09PXR9fSk7cHQuTnVtYmVyLmlzSW50ZWdlcjtzdCh7dGFyZ2V0OiJOdW1iZXIiLHN0YXQ6ITB9LHtpc05hTjpmdW5jdGlvbih0KXtyZXR1cm4gdCE9dH19KTtwdC5OdW1iZXIuaXNOYU47dmFyIFlpPWZ1bmN0aW9uKHQsZSl7cmV0dXJuKFlpPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8e19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5JiZmdW5jdGlvbih0LGUpe3QuX19wcm90b19fPWV9fHxmdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiYodFtuXT1lW25dKX0pKHQsZSl9O2Z1bmN0aW9uIFhpKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPT1lKXRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIitTdHJpbmcoZSkrIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7ZnVuY3Rpb24gbigpe3RoaXMuY29uc3RydWN0b3I9dH1ZaSh0LGUpLHQucHJvdG90eXBlPW51bGw9PT1lP09iamVjdC5jcmVhdGUoZSk6KG4ucHJvdG90eXBlPWUucHJvdG90eXBlLG5ldyBuKX12YXIgSmk9ZnVuY3Rpb24oKXtyZXR1cm4oSmk9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49MSxyPWFyZ3VtZW50cy5sZW5ndGg7bjxyO24rKylmb3IodmFyIGkgaW4gZT1hcmd1bWVudHNbbl0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsaSkmJih0W2ldPWVbaV0pO3JldHVybiB0fSkuYXBwbHkodGhpcyxhcmd1bWVudHMpfTtmdW5jdGlvbiAkaSh0LHMsYSx1KXtyZXR1cm4gbmV3KGE9YXx8UHJvbWlzZSkoZnVuY3Rpb24obixlKXtmdW5jdGlvbiByKHQpe3RyeXtvKHUubmV4dCh0KSl9Y2F0Y2godCl7ZSh0KX19ZnVuY3Rpb24gaSh0KXt0cnl7byh1LnRocm93KHQpKX1jYXRjaCh0KXtlKHQpfX1mdW5jdGlvbiBvKHQpe3ZhciBlO3QuZG9uZT9uKHQudmFsdWUpOigoZT10LnZhbHVlKWluc3RhbmNlb2YgYT9lOm5ldyBhKGZ1bmN0aW9uKHQpe3QoZSl9KSkudGhlbihyLGkpfW8oKHU9dS5hcHBseSh0LHN8fFtdKSkubmV4dCgpKX0pfWZ1bmN0aW9uIFppKG4scil7dmFyIGksbyxzLGE9e2xhYmVsOjAsc2VudDpmdW5jdGlvbigpe2lmKDEmc1swXSl0aHJvdyBzWzFdO3JldHVybiBzWzFdfSx0cnlzOltdLG9wczpbXX0sdD17bmV4dDplKDApLHRocm93OmUoMSkscmV0dXJuOmUoMil9O3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJih0W1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLHQ7ZnVuY3Rpb24gZShlKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKGkpdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpO2Zvcig7YTspdHJ5e2lmKGk9MSxvJiYocz0yJmVbMF0/by5yZXR1cm46ZVswXT9vLnRocm93fHwoKHM9by5yZXR1cm4pJiZzLmNhbGwobyksMCk6by5uZXh0KSYmIShzPXMuY2FsbChvLGVbMV0pKS5kb25lKXJldHVybiBzO3N3aXRjaChvPTAsKGU9cz9bMiZlWzBdLHMudmFsdWVdOmUpWzBdKXtjYXNlIDA6Y2FzZSAxOnM9ZTticmVhaztjYXNlIDQ6cmV0dXJuIGEubGFiZWwrKyx7dmFsdWU6ZVsxXSxkb25lOiExfTtjYXNlIDU6YS5sYWJlbCsrLG89ZVsxXSxlPVswXTtjb250aW51ZTtjYXNlIDc6ZT1hLm9wcy5wb3AoKSxhLnRyeXMucG9wKCk7Y29udGludWU7ZGVmYXVsdDppZighKHM9MDwocz1hLnRyeXMpLmxlbmd0aCYmc1tzLmxlbmd0aC0xXSkmJig2PT09ZVswXXx8Mj09PWVbMF0pKXthPTA7Y29udGludWV9aWYoMz09PWVbMF0mJighc3x8ZVsxXT5zWzBdJiZlWzFdPHNbM10pKXthLmxhYmVsPWVbMV07YnJlYWt9aWYoNj09PWVbMF0mJmEubGFiZWw8c1sxXSl7YS5sYWJlbD1zWzFdLHM9ZTticmVha31pZihzJiZhLmxhYmVsPHNbMl0pe2EubGFiZWw9c1syXSxhLm9wcy5wdXNoKGUpO2JyZWFrfXNbMl0mJmEub3BzLnBvcCgpLGEudHJ5cy5wb3AoKTtjb250aW51ZX1lPXIuY2FsbChuLGEpfWNhdGNoKHQpe2U9WzYsdF0sbz0wfWZpbmFsbHl7aT1zPTB9aWYoNSZlWzBdKXRocm93IGVbMV07cmV0dXJue3ZhbHVlOmVbMF0/ZVsxXTp2b2lkIDAsZG9uZTohMH19KFtlLHRdKX19fWZ1bmN0aW9uIHRvKHQpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5pdGVyYXRvcixuPWUmJnRbZV0scj0wO2lmKG4pcmV0dXJuIG4uY2FsbCh0KTtpZih0JiYibnVtYmVyIj09dHlwZW9mIHQubGVuZ3RoKXJldHVybntuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue3ZhbHVlOih0PXQmJnI+PXQubGVuZ3RoP3ZvaWQgMDp0KSYmdFtyKytdLGRvbmU6IXR9fX07dGhyb3cgbmV3IFR5cGVFcnJvcihlPyJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiI6IlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKX1mdW5jdGlvbiBlbyh0LGUpe3ZhciBuPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnRbU3ltYm9sLml0ZXJhdG9yXTtpZighbilyZXR1cm4gdDt2YXIgcixpLG89bi5jYWxsKHQpLHM9W107dHJ5e2Zvcig7KHZvaWQgMD09PWV8fDA8ZS0tKSYmIShyPW8ubmV4dCgpKS5kb25lOylzLnB1c2goci52YWx1ZSl9Y2F0Y2godCl7aT17ZXJyb3I6dH19ZmluYWxseXt0cnl7ciYmIXIuZG9uZSYmKG49by5yZXR1cm4pJiZuLmNhbGwobyl9ZmluYWxseXtpZihpKXRocm93IGkuZXJyb3J9fXJldHVybiBzfWZ1bmN0aW9uIG5vKHQsZSl7Zm9yKHZhciBuPTAscj1lLmxlbmd0aCxpPXQubGVuZ3RoO248cjtuKyssaSsrKXRbaV09ZVtuXTtyZXR1cm4gdH1mdW5jdGlvbiBybyh0KXtmb3IodmFyIGU9W10sbj0wLHI9MDtyPHQubGVuZ3RoO3IrKyl7dmFyIGk9dC5jaGFyQ29kZUF0KHIpO2k8MTI4P2VbbisrXT1pOihpPDIwNDg/ZVtuKytdPWk+PjZ8MTkyOig1NTI5Nj09KDY0NTEyJmkpJiZyKzE8dC5sZW5ndGgmJjU2MzIwPT0oNjQ1MTImdC5jaGFyQ29kZUF0KHIrMSkpPyhpPTY1NTM2KygoMTAyMyZpKTw8MTApKygxMDIzJnQuY2hhckNvZGVBdCgrK3IpKSxlW24rK109aT4+MTh8MjQwLGVbbisrXT1pPj4xMiY2M3wxMjgpOmVbbisrXT1pPj4xMnwyMjQsZVtuKytdPWk+PjYmNjN8MTI4KSxlW24rK109NjMmaXwxMjgpfXJldHVybiBlfWZ1bmN0aW9uIGlvKHQpe3RyeXtyZXR1cm4gdW8uZGVjb2RlU3RyaW5nKHQsITApfWNhdGNoKHQpe2NvbnNvbGUuZXJyb3IoImJhc2U2NERlY29kZSBmYWlsZWQ6ICIsdCl9cmV0dXJuIG51bGx9dmFyIG9vPXtOT0RFX0NMSUVOVDohMSxOT0RFX0FETUlOOiExLFNES19WRVJTSU9OOiIke0pTQ09SRV9WRVJTSU9OfSJ9LHNvPWZ1bmN0aW9uKHQsZSl7aWYoIXQpdGhyb3cgYW8oZSl9LGFvPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgRXJyb3IoIkZpcmViYXNlIERhdGFiYXNlICgiK29vLlNES19WRVJTSU9OKyIpIElOVEVSTkFMIEFTU0VSVCBGQUlMRUQ6ICIrdCl9LHVvPXtieXRlVG9DaGFyTWFwXzpudWxsLGNoYXJUb0J5dGVNYXBfOm51bGwsYnl0ZVRvQ2hhck1hcFdlYlNhZmVfOm51bGwsY2hhclRvQnl0ZU1hcFdlYlNhZmVfOm51bGwsRU5DT0RFRF9WQUxTX0JBU0U6IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IixnZXQgRU5DT0RFRF9WQUxTKCl7cmV0dXJuIHRoaXMuRU5DT0RFRF9WQUxTX0JBU0UrIisvPSJ9LGdldCBFTkNPREVEX1ZBTFNfV0VCU0FGRSgpe3JldHVybiB0aGlzLkVOQ09ERURfVkFMU19CQVNFKyItXy4ifSxIQVNfTkFUSVZFX1NVUFBPUlQ6ImZ1bmN0aW9uIj09dHlwZW9mIGF0b2IsZW5jb2RlQnl0ZUFycmF5OmZ1bmN0aW9uKHQsZSl7aWYoIUFycmF5LmlzQXJyYXkodCkpdGhyb3cgRXJyb3IoImVuY29kZUJ5dGVBcnJheSB0YWtlcyBhbiBhcnJheSBhcyBhIHBhcmFtZXRlciIpO3RoaXMuaW5pdF8oKTtmb3IodmFyIG49ZT90aGlzLmJ5dGVUb0NoYXJNYXBXZWJTYWZlXzp0aGlzLmJ5dGVUb0NoYXJNYXBfLHI9W10saT0wO2k8dC5sZW5ndGg7aSs9Myl7dmFyIG89dFtpXSxzPWkrMTx0Lmxlbmd0aCxhPXM/dFtpKzFdOjAsdT1pKzI8dC5sZW5ndGgsYz11P3RbaSsyXTowLGg9bz4+MixvPSgzJm8pPDw0fGE+PjQsYT0oMTUmYSk8PDJ8Yz4+NixjPTYzJmM7dXx8KGM9NjQsc3x8KGE9NjQpKSxyLnB1c2gobltoXSxuW29dLG5bYV0sbltjXSl9cmV0dXJuIHIuam9pbigiIil9LGVuY29kZVN0cmluZzpmdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLkhBU19OQVRJVkVfU1VQUE9SVCYmIWU/YnRvYSh0KTp0aGlzLmVuY29kZUJ5dGVBcnJheShybyh0KSxlKX0sZGVjb2RlU3RyaW5nOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuSEFTX05BVElWRV9TVVBQT1JUJiYhZT9hdG9iKHQpOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTAscj0wO248dC5sZW5ndGg7KXt2YXIgaSxvLHMsYT10W24rK107YTwxMjg/ZVtyKytdPVN0cmluZy5mcm9tQ2hhckNvZGUoYSk6MTkxPGEmJmE8MjI0PyhvPXRbbisrXSxlW3IrK109U3RyaW5nLmZyb21DaGFyQ29kZSgoMzEmYSk8PDZ8NjMmbykpOjIzOTxhJiZhPDM2NT8oaT0oKDcmYSk8PDE4fCg2MyYobz10W24rK10pKTw8MTJ8KDYzJihzPXRbbisrXSkpPDw2fDYzJnRbbisrXSktNjU1MzYsZVtyKytdPVN0cmluZy5mcm9tQ2hhckNvZGUoNTUyOTYrKGk+PjEwKSksZVtyKytdPVN0cmluZy5mcm9tQ2hhckNvZGUoNTYzMjArKDEwMjMmaSkpKToobz10W24rK10scz10W24rK10sZVtyKytdPVN0cmluZy5mcm9tQ2hhckNvZGUoKDE1JmEpPDwxMnwoNjMmbyk8PDZ8NjMmcykpfXJldHVybiBlLmpvaW4oIiIpfSh0aGlzLmRlY29kZVN0cmluZ1RvQnl0ZUFycmF5KHQsZSkpfSxkZWNvZGVTdHJpbmdUb0J5dGVBcnJheTpmdW5jdGlvbih0LGUpe3RoaXMuaW5pdF8oKTtmb3IodmFyIG49ZT90aGlzLmNoYXJUb0J5dGVNYXBXZWJTYWZlXzp0aGlzLmNoYXJUb0J5dGVNYXBfLHI9W10saT0wO2k8dC5sZW5ndGg7KXt2YXIgbz1uW3QuY2hhckF0KGkrKyldLHM9aTx0Lmxlbmd0aD9uW3QuY2hhckF0KGkpXTowLGE9KytpPHQubGVuZ3RoP25bdC5jaGFyQXQoaSldOjY0LHU9KytpPHQubGVuZ3RoP25bdC5jaGFyQXQoaSldOjY0O2lmKCsraSxudWxsPT1vfHxudWxsPT1zfHxudWxsPT1hfHxudWxsPT11KXRocm93IEVycm9yKCk7bz1vPDwyfHM+PjQ7ci5wdXNoKG8pLDY0IT09YSYmKHM9czw8NCYyNDB8YT4+MixyLnB1c2gocyksNjQhPT11JiYodT1hPDw2JjE5Mnx1LHIucHVzaCh1KSkpfXJldHVybiByfSxpbml0XzpmdW5jdGlvbigpe2lmKCF0aGlzLmJ5dGVUb0NoYXJNYXBfKXt0aGlzLmJ5dGVUb0NoYXJNYXBfPXt9LHRoaXMuY2hhclRvQnl0ZU1hcF89e30sdGhpcy5ieXRlVG9DaGFyTWFwV2ViU2FmZV89e30sdGhpcy5jaGFyVG9CeXRlTWFwV2ViU2FmZV89e307Zm9yKHZhciB0PTA7dDx0aGlzLkVOQ09ERURfVkFMUy5sZW5ndGg7dCsrKXRoaXMuYnl0ZVRvQ2hhck1hcF9bdF09dGhpcy5FTkNPREVEX1ZBTFMuY2hhckF0KHQpLHRoaXMuY2hhclRvQnl0ZU1hcF9bdGhpcy5ieXRlVG9DaGFyTWFwX1t0XV09dCx0aGlzLmJ5dGVUb0NoYXJNYXBXZWJTYWZlX1t0XT10aGlzLkVOQ09ERURfVkFMU19XRUJTQUZFLmNoYXJBdCh0KSwodGhpcy5jaGFyVG9CeXRlTWFwV2ViU2FmZV9bdGhpcy5ieXRlVG9DaGFyTWFwV2ViU2FmZV9bdF1dPXQpPj10aGlzLkVOQ09ERURfVkFMU19CQVNFLmxlbmd0aCYmKHRoaXMuY2hhclRvQnl0ZU1hcF9bdGhpcy5FTkNPREVEX1ZBTFNfV0VCU0FGRS5jaGFyQXQodCldPXQsdGhpcy5jaGFyVG9CeXRlTWFwV2ViU2FmZV9bdGhpcy5FTkNPREVEX1ZBTFMuY2hhckF0KHQpXT10KX19fTtmdW5jdGlvbiBjbyh0KXtyZXR1cm4gaG8odm9pZCAwLHQpfWZ1bmN0aW9uIGhvKHQsZSl7aWYoIShlIGluc3RhbmNlb2YgT2JqZWN0KSlyZXR1cm4gZTtzd2l0Y2goZS5jb25zdHJ1Y3Rvcil7Y2FzZSBEYXRlOnJldHVybiBuZXcgRGF0ZShlLmdldFRpbWUoKSk7Y2FzZSBPYmplY3Q6dm9pZCAwPT09dCYmKHQ9e30pO2JyZWFrO2Nhc2UgQXJyYXk6dD1bXTticmVhaztkZWZhdWx0OnJldHVybiBlfWZvcih2YXIgbiBpbiBlKWUuaGFzT3duUHJvcGVydHkobikmJiJfX3Byb3RvX18iIT09biYmKHRbbl09aG8odFtuXSxlW25dKSk7cmV0dXJuIHR9dmFyIGxvPShmby5wcm90b3R5cGUud3JhcENhbGxiYWNrPWZ1bmN0aW9uKG4pe3ZhciByPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7dD9yLnJlamVjdCh0KTpyLnJlc29sdmUoZSksImZ1bmN0aW9uIj09dHlwZW9mIG4mJihyLnByb21pc2UuY2F0Y2goZnVuY3Rpb24oKXt9KSwxPT09bi5sZW5ndGg/bih0KTpuKHQsZSkpfX0sZm8pO2Z1bmN0aW9uIGZvKCl7dmFyIG49dGhpczt0aGlzLnJlamVjdD1mdW5jdGlvbigpe30sdGhpcy5yZXNvbHZlPWZ1bmN0aW9uKCl7fSx0aGlzLnByb21pc2U9bmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXtuLnJlc29sdmU9dCxuLnJlamVjdD1lfSl9ZnVuY3Rpb24gcG8oKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmInN0cmluZyI9PXR5cGVvZiBuYXZpZ2F0b3IudXNlckFnZW50P25hdmlnYXRvci51c2VyQWdlbnQ6IiJ9ZnVuY3Rpb24gdm8oKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmKHdpbmRvdy5jb3Jkb3ZhfHx3aW5kb3cucGhvbmVnYXB8fHdpbmRvdy5QaG9uZUdhcCkmJi9pb3N8aXBob25lfGlwb2R8aXBhZHxhbmRyb2lkfGJsYWNrYmVycnl8aWVtb2JpbGUvaS50ZXN0KHBvKCkpfWZ1bmN0aW9uIGdvKCl7dmFyIHQ9Im9iamVjdCI9PXR5cGVvZiBjaHJvbWU/Y2hyb21lLnJ1bnRpbWU6Im9iamVjdCI9PXR5cGVvZiBicm93c2VyP2Jyb3dzZXIucnVudGltZTp2b2lkIDA7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZ2b2lkIDAhPT10LmlkfWZ1bmN0aW9uIHlvKCl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBuYXZpZ2F0b3ImJiJSZWFjdE5hdGl2ZSI9PT1uYXZpZ2F0b3IucHJvZHVjdH1mdW5jdGlvbiBtbygpe3JldHVybiEwPT09b28uTk9ERV9BRE1JTn1mdW5jdGlvbiBibygpe3JldHVybiJpbmRleGVkREIiaW4gc2VsZiYmbnVsbCE9aW5kZXhlZERCfWZ1bmN0aW9uIHdvKCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7dHJ5e3ZhciBuPSEwLHI9InZhbGlkYXRlLWJyb3dzZXItY29udGV4dC1mb3ItaW5kZXhlZGRiLWFuYWx5dGljcy1tb2R1bGUiLGk9d2luZG93LmluZGV4ZWREQi5vcGVuKHIpO2kub25zdWNjZXNzPWZ1bmN0aW9uKCl7aS5yZXN1bHQuY2xvc2UoKSxufHx3aW5kb3cuaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKHIpLHQoITApfSxpLm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbigpe249ITF9LGkub25lcnJvcj1mdW5jdGlvbigpe3ZhciB0O2UoKG51bGw9PT0odD1pLmVycm9yKXx8dm9pZCAwPT09dD92b2lkIDA6dC5tZXNzYWdlKXx8IiIpfX1jYXRjaCh0KXtlKHQpfX0pfWZ1bmN0aW9uIF9vKCl7cmV0dXJuISghbmF2aWdhdG9yfHwhbmF2aWdhdG9yLmNvb2tpZUVuYWJsZWQpfXZhciBJbyxUbz0iRmlyZWJhc2VFcnJvciIsRW89KFhpKFNvLElvPUVycm9yKSxTbyk7ZnVuY3Rpb24gU28odCxlLG4pe2U9SW8uY2FsbCh0aGlzLGUpfHx0aGlzO3JldHVybiBlLmNvZGU9dCxlLmN1c3RvbURhdGE9bixlLm5hbWU9VG8sT2JqZWN0LnNldFByb3RvdHlwZU9mKGUsU28ucHJvdG90eXBlKSxFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSYmRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UoZSxDby5wcm90b3R5cGUuY3JlYXRlKSxlfXZhciBDbz0oTm8ucHJvdG90eXBlLmNyZWF0ZT1mdW5jdGlvbih0KXtmb3IodmFyIGU9W10sbj0xO248YXJndW1lbnRzLmxlbmd0aDtuKyspZVtuLTFdPWFyZ3VtZW50c1tuXTt2YXIgcixpPWVbMF18fHt9LG89dGhpcy5zZXJ2aWNlKyIvIit0LHQ9dGhpcy5lcnJvcnNbdF0sdD10PyhyPWksdC5yZXBsYWNlKEFvLGZ1bmN0aW9uKHQsZSl7dmFyIG49cltlXTtyZXR1cm4gbnVsbCE9bj9TdHJpbmcobik6IjwiK2UrIj8+In0pKToiRXJyb3IiLHQ9dGhpcy5zZXJ2aWNlTmFtZSsiOiAiK3QrIiAoIitvKyIpLiI7cmV0dXJuIG5ldyBFbyhvLHQsaSl9LE5vKTtmdW5jdGlvbiBObyh0LGUsbil7dGhpcy5zZXJ2aWNlPXQsdGhpcy5zZXJ2aWNlTmFtZT1lLHRoaXMuZXJyb3JzPW59dmFyIEFvPS9ce1wkKFtefV0rKX0vZztmdW5jdGlvbiBrbyh0KXtyZXR1cm4gSlNPTi5wYXJzZSh0KX1mdW5jdGlvbiBSbyh0KXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodCl9ZnVuY3Rpb24gUG8odCl7dmFyIGU9e30sbj17fSxyPXt9LGk9IiI7dHJ5e3ZhciBvPXQuc3BsaXQoIi4iKSxlPWtvKGlvKG9bMF0pfHwiIiksbj1rbyhpbyhvWzFdKXx8IiIpLGk9b1syXSxyPW4uZHx8e307ZGVsZXRlIG4uZH1jYXRjaCh0KXt9cmV0dXJue2hlYWRlcjplLGNsYWltczpuLGRhdGE6cixzaWduYXR1cmU6aX19ZnVuY3Rpb24gT28odCxlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsZSl9ZnVuY3Rpb24gRG8odCxlKXtpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSlyZXR1cm4gdFtlXX1mdW5jdGlvbiB4byh0KXtmb3IodmFyIGUgaW4gdClpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSlyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBMbyh0LGUsbil7dmFyIHIsaT17fTtmb3IociBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LHIpJiYoaVtyXT1lLmNhbGwobix0W3JdLHIsdCkpO3JldHVybiBpfWZ1bmN0aW9uIE1vKHQpe2Zvcih2YXIgbj1bXSxlPTAscj1PYmplY3QuZW50cmllcyh0KTtlPHIubGVuZ3RoO2UrKyl7dmFyIGk9cltlXTshZnVuY3Rpb24oZSx0KXtBcnJheS5pc0FycmF5KHQpP3QuZm9yRWFjaChmdW5jdGlvbih0KXtuLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQodCkpfSk6bi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChlKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQpKX0oaVswXSxpWzFdKX1yZXR1cm4gbi5sZW5ndGg/IiYiK24uam9pbigiJiIpOiIifXZhciBGbz0oVW8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5jaGFpbl9bMF09MTczMjU4NDE5Myx0aGlzLmNoYWluX1sxXT00MDIzMjMzNDE3LHRoaXMuY2hhaW5fWzJdPTI1NjIzODMxMDIsdGhpcy5jaGFpbl9bM109MjcxNzMzODc4LHRoaXMuY2hhaW5fWzRdPTMyODUzNzc1MjAsdGhpcy5pbmJ1Zl89MCx0aGlzLnRvdGFsXz0wfSxVby5wcm90b3R5cGUuY29tcHJlc3NfPWZ1bmN0aW9uKHQsZSl7ZT1lfHwwO3ZhciBuPXRoaXMuV187aWYoInN0cmluZyI9PXR5cGVvZiB0KWZvcih2YXIgcj0wO3I8MTY7cisrKW5bcl09dC5jaGFyQ29kZUF0KGUpPDwyNHx0LmNoYXJDb2RlQXQoZSsxKTw8MTZ8dC5jaGFyQ29kZUF0KGUrMik8PDh8dC5jaGFyQ29kZUF0KGUrMyksZSs9NDtlbHNlIGZvcihyPTA7cjwxNjtyKyspbltyXT10W2VdPDwyNHx0W2UrMV08PDE2fHRbZSsyXTw8OHx0W2UrM10sZSs9NDtmb3Iocj0xNjtyPDgwO3IrKyl7dmFyIGk9bltyLTNdXm5bci04XV5uW3ItMTRdXm5bci0xNl07bltyXT00Mjk0OTY3Mjk1JihpPDwxfGk+Pj4zMSl9Zm9yKHZhciBvLHM9dGhpcy5jaGFpbl9bMF0sYT10aGlzLmNoYWluX1sxXSx1PXRoaXMuY2hhaW5fWzJdLGM9dGhpcy5jaGFpbl9bM10saD10aGlzLmNoYWluX1s0XSxyPTA7cjw4MDtyKyspdmFyIGw9cjw0MD9yPDIwPyhvPWNeYSYodV5jKSwxNTE4NTAwMjQ5KToobz1hXnVeYywxODU5Nzc1MzkzKTpyPDYwPyhvPWEmdXxjJihhfHUpLDI0MDA5NTk3MDgpOihvPWFedV5jLDMzOTU0Njk3ODIpLGk9KHM8PDV8cz4+PjI3KStvK2grbCtuW3JdJjQyOTQ5NjcyOTUsaD1jLGM9dSx1PTQyOTQ5NjcyOTUmKGE8PDMwfGE+Pj4yKSxhPXMscz1pO3RoaXMuY2hhaW5fWzBdPXRoaXMuY2hhaW5fWzBdK3MmNDI5NDk2NzI5NSx0aGlzLmNoYWluX1sxXT10aGlzLmNoYWluX1sxXSthJjQyOTQ5NjcyOTUsdGhpcy5jaGFpbl9bMl09dGhpcy5jaGFpbl9bMl0rdSY0Mjk0OTY3Mjk1LHRoaXMuY2hhaW5fWzNdPXRoaXMuY2hhaW5fWzNdK2MmNDI5NDk2NzI5NSx0aGlzLmNoYWluX1s0XT10aGlzLmNoYWluX1s0XStoJjQyOTQ5NjcyOTV9LFVvLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCxlKXtpZihudWxsIT10KXtmb3IodmFyIG49KGU9dm9pZCAwPT09ZT90Lmxlbmd0aDplKS10aGlzLmJsb2NrU2l6ZSxyPTAsaT10aGlzLmJ1Zl8sbz10aGlzLmluYnVmXztyPGU7KXtpZigwPT09bylmb3IoO3I8PW47KXRoaXMuY29tcHJlc3NfKHQscikscis9dGhpcy5ibG9ja1NpemU7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtmb3IoO3I8ZTspaWYoaVtvXT10LmNoYXJDb2RlQXQociksKytyLCsrbz09PXRoaXMuYmxvY2tTaXplKXt0aGlzLmNvbXByZXNzXyhpKSxvPTA7YnJlYWt9fWVsc2UgZm9yKDtyPGU7KWlmKGlbb109dFtyXSwrK3IsKytvPT09dGhpcy5ibG9ja1NpemUpe3RoaXMuY29tcHJlc3NfKGkpLG89MDticmVha319dGhpcy5pbmJ1Zl89byx0aGlzLnRvdGFsXys9ZX19LFVvLnByb3RvdHlwZS5kaWdlc3Q9ZnVuY3Rpb24oKXt2YXIgdD1bXSxlPTgqdGhpcy50b3RhbF87dGhpcy5pbmJ1Zl88NTY/dGhpcy51cGRhdGUodGhpcy5wYWRfLDU2LXRoaXMuaW5idWZfKTp0aGlzLnVwZGF0ZSh0aGlzLnBhZF8sdGhpcy5ibG9ja1NpemUtKHRoaXMuaW5idWZfLTU2KSk7Zm9yKHZhciBuPXRoaXMuYmxvY2tTaXplLTE7NTY8PW47bi0tKXRoaXMuYnVmX1tuXT0yNTUmZSxlLz0yNTY7dGhpcy5jb21wcmVzc18odGhpcy5idWZfKTtmb3IodmFyIHI9MCxuPTA7bjw1O24rKylmb3IodmFyIGk9MjQ7MDw9aTtpLT04KXRbcl09dGhpcy5jaGFpbl9bbl0+PmkmMjU1LCsrcjtyZXR1cm4gdH0sVW8pO2Z1bmN0aW9uIFVvKCl7dGhpcy5jaGFpbl89W10sdGhpcy5idWZfPVtdLHRoaXMuV189W10sdGhpcy5wYWRfPVtdLHRoaXMuaW5idWZfPTAsdGhpcy50b3RhbF89MCx0aGlzLmJsb2NrU2l6ZT02NCx0aGlzLnBhZF9bMF09MTI4O2Zvcih2YXIgdD0xO3Q8dGhpcy5ibG9ja1NpemU7Kyt0KXRoaXMucGFkX1t0XT0wO3RoaXMucmVzZXQoKX1mdW5jdGlvbiBqbyh0LGUpe2U9bmV3IHFvKHQsZSk7cmV0dXJuIGUuc3Vic2NyaWJlLmJpbmQoZSl9dmFyIHFvPShWby5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihlKXt0aGlzLmZvckVhY2hPYnNlcnZlcihmdW5jdGlvbih0KXt0Lm5leHQoZSl9KX0sVm8ucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKGUpe3RoaXMuZm9yRWFjaE9ic2VydmVyKGZ1bmN0aW9uKHQpe3QuZXJyb3IoZSl9KSx0aGlzLmNsb3NlKGUpfSxWby5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt0aGlzLmZvckVhY2hPYnNlcnZlcihmdW5jdGlvbih0KXt0LmNvbXBsZXRlKCl9KSx0aGlzLmNsb3NlKCl9LFZvLnByb3RvdHlwZS5zdWJzY3JpYmU9ZnVuY3Rpb24odCxlLG4pe3ZhciByLGk9dGhpcztpZih2b2lkIDA9PT10JiZ2b2lkIDA9PT1lJiZ2b2lkIDA9PT1uKXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBPYnNlcnZlci4iKTt2b2lkIDA9PT0ocj1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT10eXBlb2YgdHx8bnVsbD09PXQpcmV0dXJuITE7Zm9yKHZhciBuPTAscj1lO248ci5sZW5ndGg7bisrKXt2YXIgaT1yW25dO2lmKGkgaW4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHRbaV0pcmV0dXJuITB9cmV0dXJuITF9KHQsWyJuZXh0IiwiZXJyb3IiLCJjb21wbGV0ZSJdKT90OntuZXh0OnQsZXJyb3I6ZSxjb21wbGV0ZTpufSkubmV4dCYmKHIubmV4dD1Cbyksdm9pZCAwPT09ci5lcnJvciYmKHIuZXJyb3I9Qm8pLHZvaWQgMD09PXIuY29tcGxldGUmJihyLmNvbXBsZXRlPUJvKTtuPXRoaXMudW5zdWJzY3JpYmVPbmUuYmluZCh0aGlzLHRoaXMub2JzZXJ2ZXJzLmxlbmd0aCk7cmV0dXJuIHRoaXMuZmluYWxpemVkJiZ0aGlzLnRhc2sudGhlbihmdW5jdGlvbigpe3RyeXtpLmZpbmFsRXJyb3I/ci5lcnJvcihpLmZpbmFsRXJyb3IpOnIuY29tcGxldGUoKX1jYXRjaCh0KXt9fSksdGhpcy5vYnNlcnZlcnMucHVzaChyKSxufSxWby5wcm90b3R5cGUudW5zdWJzY3JpYmVPbmU9ZnVuY3Rpb24odCl7dm9pZCAwIT09dGhpcy5vYnNlcnZlcnMmJnZvaWQgMCE9PXRoaXMub2JzZXJ2ZXJzW3RdJiYoZGVsZXRlIHRoaXMub2JzZXJ2ZXJzW3RdLC0tdGhpcy5vYnNlcnZlckNvdW50LDA9PT10aGlzLm9ic2VydmVyQ291bnQmJnZvaWQgMCE9PXRoaXMub25Ob09ic2VydmVycyYmdGhpcy5vbk5vT2JzZXJ2ZXJzKHRoaXMpKX0sVm8ucHJvdG90eXBlLmZvckVhY2hPYnNlcnZlcj1mdW5jdGlvbih0KXtpZighdGhpcy5maW5hbGl6ZWQpZm9yKHZhciBlPTA7ZTx0aGlzLm9ic2VydmVycy5sZW5ndGg7ZSsrKXRoaXMuc2VuZE9uZShlLHQpfSxWby5wcm90b3R5cGUuc2VuZE9uZT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7dGhpcy50YXNrLnRoZW4oZnVuY3Rpb24oKXtpZih2b2lkIDAhPT1uLm9ic2VydmVycyYmdm9pZCAwIT09bi5vYnNlcnZlcnNbdF0pdHJ5e2Uobi5vYnNlcnZlcnNbdF0pfWNhdGNoKHQpeyJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS5lcnJvciYmY29uc29sZS5lcnJvcih0KX19KX0sVm8ucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5maW5hbGl6ZWR8fCh0aGlzLmZpbmFsaXplZD0hMCx2b2lkIDAhPT10JiYodGhpcy5maW5hbEVycm9yPXQpLHRoaXMudGFzay50aGVuKGZ1bmN0aW9uKCl7ZS5vYnNlcnZlcnM9dm9pZCAwLGUub25Ob09ic2VydmVycz12b2lkIDB9KSl9LFZvKTtmdW5jdGlvbiBWbyh0LGUpe3ZhciBuPXRoaXM7dGhpcy5vYnNlcnZlcnM9W10sdGhpcy51bnN1YnNjcmliZXM9W10sdGhpcy5vYnNlcnZlckNvdW50PTAsdGhpcy50YXNrPVByb21pc2UucmVzb2x2ZSgpLHRoaXMuZmluYWxpemVkPSExLHRoaXMub25Ob09ic2VydmVycz1lLHRoaXMudGFzay50aGVuKGZ1bmN0aW9uKCl7dChuKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe24uZXJyb3IodCl9KX1mdW5jdGlvbiBCbygpe31mdW5jdGlvbiBLbyh0LGUsbixyKXt2YXIgaTtpZihyPGU/aT0iYXQgbGVhc3QgIitlOm48ciYmKGk9MD09PW4/Im5vbmUiOiJubyBtb3JlIHRoYW4gIituKSxpKXRocm93IG5ldyBFcnJvcih0KyIgZmFpbGVkOiBXYXMgY2FsbGVkIHdpdGggIityKygxPT09cj8iIGFyZ3VtZW50LiI6IiBhcmd1bWVudHMuIikrIiBFeHBlY3RzICIraSsiLiIpfWZ1bmN0aW9uIFdvKHQsZSxuKXt2YXIgcj0iIjtzd2l0Y2goZSl7Y2FzZSAxOnI9bj8iZmlyc3QiOiJGaXJzdCI7YnJlYWs7Y2FzZSAyOnI9bj8ic2Vjb25kIjoiU2Vjb25kIjticmVhaztjYXNlIDM6cj1uPyJ0aGlyZCI6IlRoaXJkIjticmVhaztjYXNlIDQ6cj1uPyJmb3VydGgiOiJGb3VydGgiO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJlcnJvclByZWZpeCBjYWxsZWQgd2l0aCBhcmd1bWVudE51bWJlciA+IDQuICBOZWVkIHRvIHVwZGF0ZSBpdD8iKX10Kz0iIGZhaWxlZDogIjtyZXR1cm4gdCs9cisiIGFyZ3VtZW50ICJ9ZnVuY3Rpb24gSG8odCxlLG4scil7aWYoKCFyfHxuKSYmImZ1bmN0aW9uIiE9dHlwZW9mIG4pdGhyb3cgbmV3IEVycm9yKFdvKHQsZSxyKSsibXVzdCBiZSBhIHZhbGlkIGZ1bmN0aW9uLiIpfWZ1bmN0aW9uIEdvKHQsZSxuLHIpe2lmKCghcnx8bikmJigib2JqZWN0IiE9dHlwZW9mIG58fG51bGw9PT1uKSl0aHJvdyBuZXcgRXJyb3IoV28odCxlLHIpKyJtdXN0IGJlIGEgdmFsaWQgY29udGV4dCBvYmplY3QuIil9ZnVuY3Rpb24gem8odCl7Zm9yKHZhciBlPTAsbj0wO248dC5sZW5ndGg7bisrKXt2YXIgcj10LmNoYXJDb2RlQXQobik7cjwxMjg/ZSsrOnI8MjA0OD9lKz0yOjU1Mjk2PD1yJiZyPD01NjMxOT8oZSs9NCxuKyspOmUrPTN9cmV0dXJuIGV9dmFyIFFvPTFlMyxZbz0yLFhvPTE0NGU1LEpvPS41O2Z1bmN0aW9uICRvKHQsZSxuKXt2b2lkIDA9PT1uJiYobj1Zbyk7bj0oZT12b2lkIDA9PT1lP1FvOmUpKk1hdGgucG93KG4sdCksdD1NYXRoLnJvdW5kKEpvKm4qKE1hdGgucmFuZG9tKCktLjUpKjIpO3JldHVybiBNYXRoLm1pbihYbyxuK3QpfWZ1bmN0aW9uIFpvKHQpe3JldHVybiB0JiZ0Ll9kZWxlZ2F0ZT90Ll9kZWxlZ2F0ZTp0fXZhciB0cz0oZXMucHJvdG90eXBlLnNldEluc3RhbnRpYXRpb25Nb2RlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmluc3RhbnRpYXRpb25Nb2RlPXQsdGhpc30sZXMucHJvdG90eXBlLnNldE11bHRpcGxlSW5zdGFuY2VzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLm11bHRpcGxlSW5zdGFuY2VzPXQsdGhpc30sZXMucHJvdG90eXBlLnNldFNlcnZpY2VQcm9wcz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5zZXJ2aWNlUHJvcHM9dCx0aGlzfSxlcyk7ZnVuY3Rpb24gZXModCxlLG4pe3RoaXMubmFtZT10LHRoaXMuaW5zdGFuY2VGYWN0b3J5PWUsdGhpcy50eXBlPW4sdGhpcy5tdWx0aXBsZUluc3RhbmNlcz0hMSx0aGlzLnNlcnZpY2VQcm9wcz17fSx0aGlzLmluc3RhbnRpYXRpb25Nb2RlPSJMQVpZIn12YXIgbnM9IltERUZBVUxUXSIscnM9KGlzLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7dm9pZCAwPT09dCYmKHQ9bnMpO3ZhciBlPXRoaXMubm9ybWFsaXplSW5zdGFuY2VJZGVudGlmaWVyKHQpO2lmKCF0aGlzLmluc3RhbmNlc0RlZmVycmVkLmhhcyhlKSl7dmFyIG49bmV3IGxvO3RoaXMuaW5zdGFuY2VzRGVmZXJyZWQuc2V0KGUsbik7dHJ5e3ZhciByPXRoaXMuZ2V0T3JJbml0aWFsaXplU2VydmljZSh7aW5zdGFuY2VJZGVudGlmaWVyOmV9KTtyJiZuLnJlc29sdmUocil9Y2F0Y2godCl7fX1yZXR1cm4gdGhpcy5pbnN0YW5jZXNEZWZlcnJlZC5nZXQoZSkucHJvbWlzZX0saXMucHJvdG90eXBlLmdldEltbWVkaWF0ZT1mdW5jdGlvbih0KXt2YXIgZT1KaSh7aWRlbnRpZmllcjpucyxvcHRpb25hbDohMX0sdCksdD1lLmlkZW50aWZpZXIsbj1lLm9wdGlvbmFsLHI9dGhpcy5ub3JtYWxpemVJbnN0YW5jZUlkZW50aWZpZXIodCk7dHJ5e3ZhciBpPXRoaXMuZ2V0T3JJbml0aWFsaXplU2VydmljZSh7aW5zdGFuY2VJZGVudGlmaWVyOnJ9KTtpZihpKXJldHVybiBpO2lmKG4pcmV0dXJuIG51bGw7dGhyb3cgRXJyb3IoIlNlcnZpY2UgIit0aGlzLm5hbWUrIiBpcyBub3QgYXZhaWxhYmxlIil9Y2F0Y2godCl7aWYobilyZXR1cm4gbnVsbDt0aHJvdyB0fX0saXMucHJvdG90eXBlLmdldENvbXBvbmVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbXBvbmVudH0saXMucHJvdG90eXBlLnNldENvbXBvbmVudD1mdW5jdGlvbih0KXt2YXIgZSxuO2lmKHQubmFtZSE9PXRoaXMubmFtZSl0aHJvdyBFcnJvcigiTWlzbWF0Y2hpbmcgQ29tcG9uZW50ICIrdC5uYW1lKyIgZm9yIFByb3ZpZGVyICIrdGhpcy5uYW1lKyIuIik7aWYodGhpcy5jb21wb25lbnQpdGhyb3cgRXJyb3IoIkNvbXBvbmVudCBmb3IgIit0aGlzLm5hbWUrIiBoYXMgYWxyZWFkeSBiZWVuIHByb3ZpZGVkIik7aWYoIkVBR0VSIj09PSh0aGlzLmNvbXBvbmVudD10KS5pbnN0YW50aWF0aW9uTW9kZSl0cnl7dGhpcy5nZXRPckluaXRpYWxpemVTZXJ2aWNlKHtpbnN0YW5jZUlkZW50aWZpZXI6bnN9KX1jYXRjaCh0KXt9dHJ5e2Zvcih2YXIgcj10byh0aGlzLmluc3RhbmNlc0RlZmVycmVkLmVudHJpZXMoKSksaT1yLm5leHQoKTshaS5kb25lO2k9ci5uZXh0KCkpe3ZhciBvPWVvKGkudmFsdWUsMikscz1vWzBdLGE9b1sxXSx1PXRoaXMubm9ybWFsaXplSW5zdGFuY2VJZGVudGlmaWVyKHMpO3RyeXt2YXIgYz10aGlzLmdldE9ySW5pdGlhbGl6ZVNlcnZpY2Uoe2luc3RhbmNlSWRlbnRpZmllcjp1fSk7YS5yZXNvbHZlKGMpfWNhdGNoKHQpe319fWNhdGNoKHQpe2U9e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e2kmJiFpLmRvbmUmJihuPXIucmV0dXJuKSYmbi5jYWxsKHIpfWZpbmFsbHl7aWYoZSl0aHJvdyBlLmVycm9yfX19LGlzLnByb3RvdHlwZS5jbGVhckluc3RhbmNlPWZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PW5zKSx0aGlzLmluc3RhbmNlc0RlZmVycmVkLmRlbGV0ZSh0KSx0aGlzLmluc3RhbmNlcy5kZWxldGUodCl9LGlzLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1BcnJheS5mcm9tKHRoaXMuaW5zdGFuY2VzLnZhbHVlcygpKSxbNCxQcm9taXNlLmFsbChubyhubyhbXSxlbyhlLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4iSU5URVJOQUwiaW4gdH0pLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdC5JTlRFUk5BTC5kZWxldGUoKX0pKSksZW8oZS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIl9kZWxldGUiaW4gdH0pLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdC5fZGVsZXRlKCl9KSkpKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbMl19fSl9KX0saXMucHJvdG90eXBlLmlzQ29tcG9uZW50U2V0PWZ1bmN0aW9uKCl7cmV0dXJuIG51bGwhPXRoaXMuY29tcG9uZW50fSxpcy5wcm90b3R5cGUuaXNJbml0aWFsaXplZD1mdW5jdGlvbih0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9bnMpLHRoaXMuaW5zdGFuY2VzLmhhcyh0KX0saXMucHJvdG90eXBlLmluaXRpYWxpemU9ZnVuY3Rpb24odCl7dmFyIGU9KHQ9dm9pZCAwPT09dD97fTp0KS5pbnN0YW5jZUlkZW50aWZpZXIsZT12b2lkIDA9PT1lP25zOmUsdD10Lm9wdGlvbnMsdD12b2lkIDA9PT10P3t9OnQsZT10aGlzLm5vcm1hbGl6ZUluc3RhbmNlSWRlbnRpZmllcihlKTtpZih0aGlzLmlzSW5pdGlhbGl6ZWQoZSkpdGhyb3cgRXJyb3IodGhpcy5uYW1lKyIoIitlKyIpIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQiKTtpZighdGhpcy5pc0NvbXBvbmVudFNldCgpKXRocm93IEVycm9yKCJDb21wb25lbnQgIit0aGlzLm5hbWUrIiBoYXMgbm90IGJlZW4gcmVnaXN0ZXJlZCB5ZXQiKTtyZXR1cm4gdGhpcy5nZXRPckluaXRpYWxpemVTZXJ2aWNlKHtpbnN0YW5jZUlkZW50aWZpZXI6ZSxvcHRpb25zOnR9KX0saXMucHJvdG90eXBlLmdldE9ySW5pdGlhbGl6ZVNlcnZpY2U9ZnVuY3Rpb24odCl7dmFyIGU9dC5pbnN0YW5jZUlkZW50aWZpZXIsbj10Lm9wdGlvbnMscj12b2lkIDA9PT1uP3t9Om4sdD10aGlzLmluc3RhbmNlcy5nZXQoZSk7cmV0dXJuIXQmJnRoaXMuY29tcG9uZW50JiYodD10aGlzLmNvbXBvbmVudC5pbnN0YW5jZUZhY3RvcnkodGhpcy5jb250YWluZXIse2luc3RhbmNlSWRlbnRpZmllcjoobj1lKT09PW5zP3ZvaWQgMDpuLG9wdGlvbnM6cn0pLHRoaXMuaW5zdGFuY2VzLnNldChlLHQpKSx0fHxudWxsfSxpcy5wcm90b3R5cGUubm9ybWFsaXplSW5zdGFuY2VJZGVudGlmaWVyPWZ1bmN0aW9uKHQpe3JldHVybiF0aGlzLmNvbXBvbmVudHx8dGhpcy5jb21wb25lbnQubXVsdGlwbGVJbnN0YW5jZXM/dDpuc30saXMpO2Z1bmN0aW9uIGlzKHQsZSl7dGhpcy5uYW1lPXQsdGhpcy5jb250YWluZXI9ZSx0aGlzLmNvbXBvbmVudD1udWxsLHRoaXMuaW5zdGFuY2VzPW5ldyBNYXAsdGhpcy5pbnN0YW5jZXNEZWZlcnJlZD1uZXcgTWFwfXZhciBvcz0oc3MucHJvdG90eXBlLmFkZENvbXBvbmVudD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmdldFByb3ZpZGVyKHQubmFtZSk7aWYoZS5pc0NvbXBvbmVudFNldCgpKXRocm93IG5ldyBFcnJvcigiQ29tcG9uZW50ICIrdC5uYW1lKyIgaGFzIGFscmVhZHkgYmVlbiByZWdpc3RlcmVkIHdpdGggIit0aGlzLm5hbWUpO2Uuc2V0Q29tcG9uZW50KHQpfSxzcy5wcm90b3R5cGUuYWRkT3JPdmVyd3JpdGVDb21wb25lbnQ9ZnVuY3Rpb24odCl7dGhpcy5nZXRQcm92aWRlcih0Lm5hbWUpLmlzQ29tcG9uZW50U2V0KCkmJnRoaXMucHJvdmlkZXJzLmRlbGV0ZSh0Lm5hbWUpLHRoaXMuYWRkQ29tcG9uZW50KHQpfSxzcy5wcm90b3R5cGUuZ2V0UHJvdmlkZXI9ZnVuY3Rpb24odCl7aWYodGhpcy5wcm92aWRlcnMuaGFzKHQpKXJldHVybiB0aGlzLnByb3ZpZGVycy5nZXQodCk7dmFyIGU9bmV3IHJzKHQsdGhpcyk7cmV0dXJuIHRoaXMucHJvdmlkZXJzLnNldCh0LGUpLGV9LHNzLnByb3RvdHlwZS5nZXRQcm92aWRlcnM9ZnVuY3Rpb24oKXtyZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnByb3ZpZGVycy52YWx1ZXMoKSl9LHNzKTtmdW5jdGlvbiBzcyh0KXt0aGlzLm5hbWU9dCx0aGlzLnByb3ZpZGVycz1uZXcgTWFwfXZhciBhcyx1cz1bXTsoU249YXM9YXN8fHt9KVtTbi5ERUJVRz0wXT0iREVCVUciLFNuW1NuLlZFUkJPU0U9MV09IlZFUkJPU0UiLFNuW1NuLklORk89Ml09IklORk8iLFNuW1NuLldBUk49M109IldBUk4iLFNuW1NuLkVSUk9SPTRdPSJFUlJPUiIsU25bU24uU0lMRU5UPTVdPSJTSUxFTlQiO2Z1bmN0aW9uIGNzKHQsZSl7Zm9yKHZhciBuPVtdLHI9MjtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKW5bci0yXT1hcmd1bWVudHNbcl07aWYoIShlPHQubG9nTGV2ZWwpKXt2YXIgaT0obmV3IERhdGUpLnRvSVNPU3RyaW5nKCksbz1mc1tlXTtpZighbyl0aHJvdyBuZXcgRXJyb3IoIkF0dGVtcHRlZCB0byBsb2cgYSBtZXNzYWdlIHdpdGggYW4gaW52YWxpZCBsb2dUeXBlICh2YWx1ZTogIitlKyIpIik7Y29uc29sZVtvXS5hcHBseShjb25zb2xlLG5vKFsiWyIraSsiXSAgIit0Lm5hbWUrIjoiXSxuKSl9fXZhciBocz17ZGVidWc6YXMuREVCVUcsdmVyYm9zZTphcy5WRVJCT1NFLGluZm86YXMuSU5GTyx3YXJuOmFzLldBUk4sZXJyb3I6YXMuRVJST1Isc2lsZW50OmFzLlNJTEVOVH0sbHM9YXMuSU5GTyxmcz0oKHo9e30pW2FzLkRFQlVHXT0ibG9nIix6W2FzLlZFUkJPU0VdPSJsb2ciLHpbYXMuSU5GT109ImluZm8iLHpbYXMuV0FSTl09Indhcm4iLHpbYXMuRVJST1JdPSJlcnJvciIseikscHM9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkcy5wcm90b3R5cGUsImxvZ0xldmVsIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2xvZ0xldmVsfSxzZXQ6ZnVuY3Rpb24odCl7aWYoISh0IGluIGFzKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHZhbHVlICInK3QrJyIgYXNzaWduZWQgdG8gYGxvZ0xldmVsYCcpO3RoaXMuX2xvZ0xldmVsPXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksZHMucHJvdG90eXBlLnNldExvZ0xldmVsPWZ1bmN0aW9uKHQpe3RoaXMuX2xvZ0xldmVsPSJzdHJpbmciPT10eXBlb2YgdD9oc1t0XTp0fSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZHMucHJvdG90eXBlLCJsb2dIYW5kbGVyIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2xvZ0hhbmRsZXJ9LHNldDpmdW5jdGlvbih0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJWYWx1ZSBhc3NpZ25lZCB0byBgbG9nSGFuZGxlcmAgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dGhpcy5fbG9nSGFuZGxlcj10fSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkcy5wcm90b3R5cGUsInVzZXJMb2dIYW5kbGVyIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3VzZXJMb2dIYW5kbGVyfSxzZXQ6ZnVuY3Rpb24odCl7dGhpcy5fdXNlckxvZ0hhbmRsZXI9dH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxkcy5wcm90b3R5cGUuZGVidWc9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dGhpcy5fdXNlckxvZ0hhbmRsZXImJnRoaXMuX3VzZXJMb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuREVCVUddLHQpKSx0aGlzLl9sb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuREVCVUddLHQpKX0sZHMucHJvdG90eXBlLmxvZz1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTt0aGlzLl91c2VyTG9nSGFuZGxlciYmdGhpcy5fdXNlckxvZ0hhbmRsZXIuYXBwbHkodGhpcyxubyhbdGhpcyxhcy5WRVJCT1NFXSx0KSksdGhpcy5fbG9nSGFuZGxlci5hcHBseSh0aGlzLG5vKFt0aGlzLGFzLlZFUkJPU0VdLHQpKX0sZHMucHJvdG90eXBlLmluZm89ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dGhpcy5fdXNlckxvZ0hhbmRsZXImJnRoaXMuX3VzZXJMb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuSU5GT10sdCkpLHRoaXMuX2xvZ0hhbmRsZXIuYXBwbHkodGhpcyxubyhbdGhpcyxhcy5JTkZPXSx0KSl9LGRzLnByb3RvdHlwZS53YXJuPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3RoaXMuX3VzZXJMb2dIYW5kbGVyJiZ0aGlzLl91c2VyTG9nSGFuZGxlci5hcHBseSh0aGlzLG5vKFt0aGlzLGFzLldBUk5dLHQpKSx0aGlzLl9sb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuV0FSTl0sdCkpfSxkcy5wcm90b3R5cGUuZXJyb3I9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dGhpcy5fdXNlckxvZ0hhbmRsZXImJnRoaXMuX3VzZXJMb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuRVJST1JdLHQpKSx0aGlzLl9sb2dIYW5kbGVyLmFwcGx5KHRoaXMsbm8oW3RoaXMsYXMuRVJST1JdLHQpKX0sZHMpO2Z1bmN0aW9uIGRzKHQpe3RoaXMubmFtZT10LHRoaXMuX2xvZ0xldmVsPWxzLHRoaXMuX2xvZ0hhbmRsZXI9Y3MsdGhpcy5fdXNlckxvZ0hhbmRsZXI9bnVsbCx1cy5wdXNoKHRoaXMpfWZ1bmN0aW9uIHZzKGUpe3VzLmZvckVhY2goZnVuY3Rpb24odCl7dC5zZXRMb2dMZXZlbChlKX0pfWZ1bmN0aW9uIGdzKHMsZSl7Zm9yKHZhciB0PTAsbj11czt0PG4ubGVuZ3RoO3QrKykhZnVuY3Rpb24odCl7dmFyIG89bnVsbDtlJiZlLmxldmVsJiYobz1oc1tlLmxldmVsXSksdC51c2VyTG9nSGFuZGxlcj1udWxsPT09cz9udWxsOmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPVtdLHI9MjtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKW5bci0yXT1hcmd1bWVudHNbcl07dmFyIGk9bi5tYXAoZnVuY3Rpb24odCl7aWYobnVsbD09dClyZXR1cm4gbnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoIm51bWJlciI9PXR5cGVvZiB0fHwiYm9vbGVhbiI9PXR5cGVvZiB0KXJldHVybiB0LnRvU3RyaW5nKCk7aWYodCBpbnN0YW5jZW9mIEVycm9yKXJldHVybiB0Lm1lc3NhZ2U7dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1jYXRjaCh0KXtyZXR1cm4gbnVsbH19KS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHR9KS5qb2luKCIgIik7ZT49KG51bGwhPW8/bzp0LmxvZ0xldmVsKSYmcyh7bGV2ZWw6YXNbZV0udG9Mb3dlckNhc2UoKSxtZXNzYWdlOmksYXJnczpuLHR5cGU6dC5uYW1lfSl9fShuW3RdKX12YXIgU249KChHPXt9KVsibm8tYXBwIl09Ik5vIEZpcmViYXNlIEFwcCAneyRhcHBOYW1lfScgaGFzIGJlZW4gY3JlYXRlZCAtIGNhbGwgRmlyZWJhc2UgQXBwLmluaXRpYWxpemVBcHAoKSIsR1siYmFkLWFwcC1uYW1lIl09IklsbGVnYWwgQXBwIG5hbWU6ICd7JGFwcE5hbWV9IixHWyJkdXBsaWNhdGUtYXBwIl09IkZpcmViYXNlIEFwcCBuYW1lZCAneyRhcHBOYW1lfScgYWxyZWFkeSBleGlzdHMiLEdbImFwcC1kZWxldGVkIl09IkZpcmViYXNlIEFwcCBuYW1lZCAneyRhcHBOYW1lfScgYWxyZWFkeSBkZWxldGVkIixHWyJpbnZhbGlkLWFwcC1hcmd1bWVudCJdPSJmaXJlYmFzZS57JGFwcE5hbWV9KCkgdGFrZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgRmlyZWJhc2UgQXBwIGluc3RhbmNlLiIsR1siaW52YWxpZC1sb2ctYXJndW1lbnQiXT0iRmlyc3QgYXJndW1lbnQgdG8gYG9uTG9nYCBtdXN0IGJlIG51bGwgb3IgYSBmdW5jdGlvbi4iLEcpLHlzPW5ldyBDbygiYXBwIiwiRmlyZWJhc2UiLFNuKSxtcz0iQGZpcmViYXNlL2FwcCIsYnM9IltERUZBVUxUXSIsd3M9KCh6PXt9KVttc109ImZpcmUtY29yZSIselsiQGZpcmViYXNlL2FuYWx5dGljcyJdPSJmaXJlLWFuYWx5dGljcyIselsiQGZpcmViYXNlL2F1dGgiXT0iZmlyZS1hdXRoIix6WyJAZmlyZWJhc2UvZGF0YWJhc2UiXT0iZmlyZS1ydGRiIix6WyJAZmlyZWJhc2UvZnVuY3Rpb25zIl09ImZpcmUtZm4iLHpbIkBmaXJlYmFzZS9pbnN0YWxsYXRpb25zIl09ImZpcmUtaWlkIix6WyJAZmlyZWJhc2UvbWVzc2FnaW5nIl09ImZpcmUtZmNtIix6WyJAZmlyZWJhc2UvcGVyZm9ybWFuY2UiXT0iZmlyZS1wZXJmIix6WyJAZmlyZWJhc2UvcmVtb3RlLWNvbmZpZyJdPSJmaXJlLXJjIix6WyJAZmlyZWJhc2Uvc3RvcmFnZSJdPSJmaXJlLWdjcyIselsiQGZpcmViYXNlL2ZpcmVzdG9yZSJdPSJmaXJlLWZzdCIselsiZmlyZS1qcyJdPSJmaXJlLWpzIix6WyJmaXJlYmFzZS13cmFwcGVyIl09ImZpcmUtanMtYWxsIix6KSxfcz1uZXcgcHMoIkBmaXJlYmFzZS9hcHAiKSxJcz0oT2JqZWN0LmRlZmluZVByb3BlcnR5KFRzLnByb3RvdHlwZSwiYXV0b21hdGljRGF0YUNvbGxlY3Rpb25FbmFibGVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2hlY2tEZXN0cm95ZWRfKCksdGhpcy5hdXRvbWF0aWNEYXRhQ29sbGVjdGlvbkVuYWJsZWRffSxzZXQ6ZnVuY3Rpb24odCl7dGhpcy5jaGVja0Rlc3Ryb3llZF8oKSx0aGlzLmF1dG9tYXRpY0RhdGFDb2xsZWN0aW9uRW5hYmxlZF89dH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoVHMucHJvdG90eXBlLCJuYW1lIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2hlY2tEZXN0cm95ZWRfKCksdGhpcy5uYW1lX30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoVHMucHJvdG90eXBlLCJvcHRpb25zIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2hlY2tEZXN0cm95ZWRfKCksdGhpcy5vcHRpb25zX30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxUcy5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCl7ZS5jaGVja0Rlc3Ryb3llZF8oKSx0KCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuZmlyZWJhc2VfLklOVEVSTkFMLnJlbW92ZUFwcChlLm5hbWVfKSxQcm9taXNlLmFsbChlLmNvbnRhaW5lci5nZXRQcm92aWRlcnMoKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQuZGVsZXRlKCl9KSl9KS50aGVuKGZ1bmN0aW9uKCl7ZS5pc0RlbGV0ZWRfPSEwfSl9LFRzLnByb3RvdHlwZS5fZ2V0U2VydmljZT1mdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDA9PT1lJiYoZT1icyksdGhpcy5jaGVja0Rlc3Ryb3llZF8oKSx0aGlzLmNvbnRhaW5lci5nZXRQcm92aWRlcih0KS5nZXRJbW1lZGlhdGUoe2lkZW50aWZpZXI6ZX0pfSxUcy5wcm90b3R5cGUuX3JlbW92ZVNlcnZpY2VJbnN0YW5jZT1mdW5jdGlvbih0LGUpe3ZvaWQgMD09PWUmJihlPWJzKSx0aGlzLmNvbnRhaW5lci5nZXRQcm92aWRlcih0KS5jbGVhckluc3RhbmNlKGUpfSxUcy5wcm90b3R5cGUuX2FkZENvbXBvbmVudD1mdW5jdGlvbihlKXt0cnl7dGhpcy5jb250YWluZXIuYWRkQ29tcG9uZW50KGUpfWNhdGNoKHQpe19zLmRlYnVnKCJDb21wb25lbnQgIitlLm5hbWUrIiBmYWlsZWQgdG8gcmVnaXN0ZXIgd2l0aCBGaXJlYmFzZUFwcCAiK3RoaXMubmFtZSx0KX19LFRzLnByb3RvdHlwZS5fYWRkT3JPdmVyd3JpdGVDb21wb25lbnQ9ZnVuY3Rpb24odCl7dGhpcy5jb250YWluZXIuYWRkT3JPdmVyd3JpdGVDb21wb25lbnQodCl9LFRzLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bmFtZTp0aGlzLm5hbWUsYXV0b21hdGljRGF0YUNvbGxlY3Rpb25FbmFibGVkOnRoaXMuYXV0b21hdGljRGF0YUNvbGxlY3Rpb25FbmFibGVkLG9wdGlvbnM6dGhpcy5vcHRpb25zfX0sVHMucHJvdG90eXBlLmNoZWNrRGVzdHJveWVkXz1mdW5jdGlvbigpe2lmKHRoaXMuaXNEZWxldGVkXyl0aHJvdyB5cy5jcmVhdGUoImFwcC1kZWxldGVkIix7YXBwTmFtZTp0aGlzLm5hbWVffSl9LFRzKTtmdW5jdGlvbiBUcyh0LGUsbil7dmFyIHI9dGhpczt0aGlzLmZpcmViYXNlXz1uLHRoaXMuaXNEZWxldGVkXz0hMSx0aGlzLm5hbWVfPWUubmFtZSx0aGlzLmF1dG9tYXRpY0RhdGFDb2xsZWN0aW9uRW5hYmxlZF89ZS5hdXRvbWF0aWNEYXRhQ29sbGVjdGlvbkVuYWJsZWR8fCExLHRoaXMub3B0aW9uc189Y28odCksdGhpcy5jb250YWluZXI9bmV3IG9zKGUubmFtZSksdGhpcy5fYWRkQ29tcG9uZW50KG5ldyB0cygiYXBwIixmdW5jdGlvbigpe3JldHVybiByfSwiUFVCTElDIikpLHRoaXMuZmlyZWJhc2VfLklOVEVSTkFMLmNvbXBvbmVudHMuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gci5fYWRkQ29tcG9uZW50KHQpfSl9SXMucHJvdG90eXBlLm5hbWUmJklzLnByb3RvdHlwZS5vcHRpb25zfHxJcy5wcm90b3R5cGUuZGVsZXRlfHxjb25zb2xlLmxvZygiZGMiKTt2YXIgRXM9IjguMy4yIjtmdW5jdGlvbiBTcyhzKXt2YXIgYT17fSx1PW5ldyBNYXAsYz17X19lc01vZHVsZTohMCxpbml0aWFsaXplQXBwOmZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09ZSYmKGU9e30pOyJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWV8fChlPXtuYW1lOmV9KTt2YXIgbj1lO3ZvaWQgMD09PW4ubmFtZSYmKG4ubmFtZT1icyk7ZT1uLm5hbWU7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhZSl0aHJvdyB5cy5jcmVhdGUoImJhZC1hcHAtbmFtZSIse2FwcE5hbWU6U3RyaW5nKGUpfSk7aWYoT28oYSxlKSl0aHJvdyB5cy5jcmVhdGUoImR1cGxpY2F0ZS1hcHAiLHthcHBOYW1lOmV9KTtuPW5ldyBzKHQsbixjKTtyZXR1cm4gYVtlXT1ufSxhcHA6aCxyZWdpc3RlclZlcnNpb246ZnVuY3Rpb24odCxlLG4pe3ZhciByPW51bGwhPT0oaT13c1t0XSkmJnZvaWQgMCE9PWk/aTp0O24mJihyKz0iLSIrbik7dmFyIGk9ci5tYXRjaCgvXHN8XC8vKSx0PWUubWF0Y2goL1xzfFwvLyk7aWYoaXx8dCl7bj1bJ1VuYWJsZSB0byByZWdpc3RlciBsaWJyYXJ5ICInK3IrJyIgd2l0aCB2ZXJzaW9uICInK2UrJyI6J107cmV0dXJuIGkmJm4ucHVzaCgnbGlicmFyeSBuYW1lICInK3IrJyIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXJzICh3aGl0ZXNwYWNlIG9yICIvIiknKSxpJiZ0JiZuLnB1c2goImFuZCIpLHQmJm4ucHVzaCgndmVyc2lvbiBuYW1lICInK2UrJyIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXJzICh3aGl0ZXNwYWNlIG9yICIvIiknKSx2b2lkIF9zLndhcm4obi5qb2luKCIgIikpfW8obmV3IHRzKHIrIi12ZXJzaW9uIixmdW5jdGlvbigpe3JldHVybntsaWJyYXJ5OnIsdmVyc2lvbjplfX0sIlZFUlNJT04iKSl9LHNldExvZ0xldmVsOnZzLG9uTG9nOmZ1bmN0aW9uKHQsZSl7aWYobnVsbCE9PXQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IHlzLmNyZWF0ZSgiaW52YWxpZC1sb2ctYXJndW1lbnQiKTtncyh0LGUpfSxhcHBzOm51bGwsU0RLX1ZFUlNJT046RXMsSU5URVJOQUw6e3JlZ2lzdGVyQ29tcG9uZW50Om8scmVtb3ZlQXBwOmZ1bmN0aW9uKHQpe2RlbGV0ZSBhW3RdfSxjb21wb25lbnRzOnUsdXNlQXNTZXJ2aWNlOmZ1bmN0aW9uKHQsZSl7aWYoInNlcnZlckF1dGgiPT09ZSlyZXR1cm4gbnVsbDtyZXR1cm4gZX19fTtmdW5jdGlvbiBoKHQpe2lmKCFPbyhhLHQ9dHx8YnMpKXRocm93IHlzLmNyZWF0ZSgibm8tYXBwIix7YXBwTmFtZTp0fSk7cmV0dXJuIGFbdF19ZnVuY3Rpb24gbyhuKXt2YXIgdCxyPW4ubmFtZTtpZih1LmhhcyhyKSlyZXR1cm4gX3MuZGVidWcoIlRoZXJlIHdlcmUgbXVsdGlwbGUgYXR0ZW1wdHMgdG8gcmVnaXN0ZXIgY29tcG9uZW50ICIrcisiLiIpLCJQVUJMSUMiPT09bi50eXBlP2Nbcl06bnVsbDt1LnNldChyLG4pLCJQVUJMSUMiPT09bi50eXBlJiYodD1mdW5jdGlvbih0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YodD12b2lkIDA9PT10P2goKTp0KVtyXSl0aHJvdyB5cy5jcmVhdGUoImludmFsaWQtYXBwLWFyZ3VtZW50Iix7YXBwTmFtZTpyfSk7cmV0dXJuIHRbcl0oKX0sdm9pZCAwIT09bi5zZXJ2aWNlUHJvcHMmJmhvKHQsbi5zZXJ2aWNlUHJvcHMpLGNbcl09dCxzLnByb3RvdHlwZVtyXT1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTtyZXR1cm4gdGhpcy5fZ2V0U2VydmljZS5iaW5kKHRoaXMscikuYXBwbHkodGhpcyxuLm11bHRpcGxlSW5zdGFuY2VzP3Q6W10pfSk7Zm9yKHZhciBlPTAsaT1PYmplY3Qua2V5cyhhKTtlPGkubGVuZ3RoO2UrKyl7dmFyIG89aVtlXTthW29dLl9hZGRDb21wb25lbnQobil9cmV0dXJuIlBVQkxJQyI9PT1uLnR5cGU/Y1tyXTpudWxsfXJldHVybiBjLmRlZmF1bHQ9YyxPYmplY3QuZGVmaW5lUHJvcGVydHkoYywiYXBwcyIse2dldDpmdW5jdGlvbigpe3JldHVybiBPYmplY3Qua2V5cyhhKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGFbdF19KX19KSxoLkFwcD1zLGN9dmFyIEc9ZnVuY3Rpb24gdCgpe3ZhciBlPVNzKElzKTtyZXR1cm4gZS5JTlRFUk5BTD1KaShKaSh7fSxlLklOVEVSTkFMKSx7Y3JlYXRlRmlyZWJhc2VOYW1lc3BhY2U6dCxleHRlbmROYW1lc3BhY2U6ZnVuY3Rpb24odCl7aG8oZSx0KX0sY3JlYXRlU3Vic2NyaWJlOmpvLEVycm9yRmFjdG9yeTpDbyxkZWVwRXh0ZW5kOmhvfSksZX0oKSxDcz0oTnMucHJvdG90eXBlLmdldFBsYXRmb3JtSW5mb1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRhaW5lci5nZXRQcm92aWRlcnMoKS5tYXAoZnVuY3Rpb24odCl7aWYoZnVuY3Rpb24odCl7dD10LmdldENvbXBvbmVudCgpO3JldHVybiJWRVJTSU9OIj09PShudWxsPT10P3ZvaWQgMDp0LnR5cGUpfSh0KSl7dD10LmdldEltbWVkaWF0ZSgpO3JldHVybiB0LmxpYnJhcnkrIi8iK3QudmVyc2lvbn1yZXR1cm4gbnVsbH0pLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdH0pLmpvaW4oIiAiKX0sTnMpO2Z1bmN0aW9uIE5zKHQpe3RoaXMuY29udGFpbmVyPXR9Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLnNlbGY9PT1zZWxmJiZ2b2lkIDAhPT1zZWxmLmZpcmViYXNlJiYoX3Mud2FybigiXG4gICAgV2FybmluZzogRmlyZWJhc2UgaXMgYWxyZWFkeSBkZWZpbmVkIGluIHRoZSBnbG9iYWwgc2NvcGUuIFBsZWFzZSBtYWtlIHN1cmVcbiAgICBGaXJlYmFzZSBsaWJyYXJ5IGlzIG9ubHkgbG9hZGVkIG9uY2UuXG4gICIpLChHYT1zZWxmLmZpcmViYXNlLlNES19WRVJTSU9OKSYmMDw9R2EuaW5kZXhPZigiTElURSIpJiZfcy53YXJuKCJcbiAgICBXYXJuaW5nOiBZb3UgYXJlIHRyeWluZyB0byBsb2FkIEZpcmViYXNlIHdoaWxlIHVzaW5nIEZpcmViYXNlIFBlcmZvcm1hbmNlIHN0YW5kYWxvbmUgc2NyaXB0LlxuICAgIFlvdSBzaG91bGQgbG9hZCBGaXJlYmFzZSBQZXJmb3JtYW5jZSB3aXRoIHRoaXMgaW5zdGFuY2Ugb2YgRmlyZWJhc2UgdG8gYXZvaWQgbG9hZGluZyBkdXBsaWNhdGUgY29kZS5cbiAgICAiKSk7dmFyIEFzPUcuaW5pdGlhbGl6ZUFwcDtHLmluaXRpYWxpemVBcHA9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07cmV0dXJuIGZ1bmN0aW9uKCl7dHJ5e3JldHVybiJbb2JqZWN0IHByb2Nlc3NdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChnbG9iYWwucHJvY2Vzcyl9Y2F0Y2godCl7cmV0dXJufX0oKSYmX3Mud2FybignXG4gICAgICBXYXJuaW5nOiBUaGlzIGlzIGEgYnJvd3Nlci10YXJnZXRlZCBGaXJlYmFzZSBidW5kbGUgYnV0IGl0IGFwcGVhcnMgaXQgaXMgYmVpbmdcbiAgICAgIHJ1biBpbiBhIE5vZGUgZW52aXJvbm1lbnQuICBJZiBydW5uaW5nIGluIGEgTm9kZSBlbnZpcm9ubWVudCwgbWFrZSBzdXJlIHlvdVxuICAgICAgYXJlIHVzaW5nIHRoZSBidW5kbGUgc3BlY2lmaWVkIGJ5IHRoZSAibWFpbiIgZmllbGQgaW4gcGFja2FnZS5qc29uLlxuICAgICAgXG4gICAgICBJZiB5b3UgYXJlIHVzaW5nIFdlYnBhY2ssIHlvdSBjYW4gc3BlY2lmeSAibWFpbiIgYXMgdGhlIGZpcnN0IGl0ZW0gaW5cbiAgICAgICJyZXNvbHZlLm1haW5GaWVsZHMiOlxuICAgICAgaHR0cHM6Ly93ZWJwYWNrLmpzLm9yZy9jb25maWd1cmF0aW9uL3Jlc29sdmUvI3Jlc29sdmVtYWluZmllbGRzXG4gICAgICBcbiAgICAgIElmIHVzaW5nIFJvbGx1cCwgdXNlIHRoZSBAcm9sbHVwL3BsdWdpbi1ub2RlLXJlc29sdmUgcGx1Z2luIGFuZCBzcGVjaWZ5ICJtYWluIlxuICAgICAgYXMgdGhlIGZpcnN0IGl0ZW0gaW4gIm1haW5GaWVsZHMiLCBlLmcuIFtcJ21haW5cJywgXCdtb2R1bGVcJ10uXG4gICAgICBodHRwczovL2dpdGh1Yi5jb20vcm9sbHVwL0Byb2xsdXAvcGx1Z2luLW5vZGUtcmVzb2x2ZVxuICAgICAgJyksQXMuYXBwbHkodm9pZCAwLHQpfTt2YXIga3MsUnMsWGw9Rzsoa3M9WGwpLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygicGxhdGZvcm0tbG9nZ2VyIixmdW5jdGlvbih0KXtyZXR1cm4gbmV3IENzKHQpfSwiUFJJVkFURSIpKSxrcy5yZWdpc3RlclZlcnNpb24obXMsIjAuNi4xOCIsUnMpLGtzLnJlZ2lzdGVyVmVyc2lvbigiZmlyZS1qcyIsIiIpO1hsLnJlZ2lzdGVyVmVyc2lvbigiZmlyZWJhc2UiLCI4LjMuMiIsImFwcCIpOyFmdW5jdGlvbigpe3ZhciB0LG89ImZ1bmN0aW9uIj09dHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbih0LGUsbil7dCE9QXJyYXkucHJvdG90eXBlJiZ0IT1PYmplY3QucHJvdG90eXBlJiYodFtlXT1uLnZhbHVlKX07dmFyIHU9ZnVuY3Rpb24odCl7dD1bIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdywib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYsIm9iamVjdCI9PXR5cGVvZiBnbG9iYWwmJmdsb2JhbCx0XTtmb3IodmFyIGU9MDtlPHQubGVuZ3RoOysrZSl7dmFyIG49dFtlXTtpZihuJiZuLk1hdGg9PU1hdGgpcmV0dXJuIG59cmV0dXJuIGdsb2JhbFRoaXN9KHRoaXMpO2Z1bmN0aW9uIGModCl7dmFyIGUsbixyPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wuaXRlcmF0b3ImJnRbU3ltYm9sLml0ZXJhdG9yXTtyZXR1cm4gcj9yLmNhbGwodCk6e25leHQ6KGU9dCxuPTAsZnVuY3Rpb24oKXtyZXR1cm4gbjxlLmxlbmd0aD97ZG9uZTohMSx2YWx1ZTplW24rK119Ontkb25lOiEwfX0pfX0hZnVuY3Rpb24odCxlKXtpZihlKXt2YXIgbj11O3Q9dC5zcGxpdCgiLiIpO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGgtMTtyKyspe3ZhciBpPXRbcl07aSBpbiBufHwobltpXT17fSksbj1uW2ldfShlPWUocj1uW3Q9dFt0Lmxlbmd0aC0xXV0pKSE9ciYmbnVsbCE9ZSYmbyhuLHQse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTplfSl9fSgiUHJvbWlzZSIsZnVuY3Rpb24odCl7ZnVuY3Rpb24gcyh0KXt0aGlzLmI9MCx0aGlzLmM9dm9pZCAwLHRoaXMuYT1bXTt2YXIgZT10aGlzLmYoKTt0cnl7dChlLnJlc29sdmUsZS5yZWplY3QpfWNhdGNoKHQpe2UucmVqZWN0KHQpfX1mdW5jdGlvbiBlKCl7dGhpcy5hPW51bGx9ZnVuY3Rpb24gYShlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIHM/ZTpuZXcgcyhmdW5jdGlvbih0KXt0KGUpfSl9aWYodClyZXR1cm4gdDtlLnByb3RvdHlwZS5iPWZ1bmN0aW9uKHQpe3ZhciBlO251bGw9PXRoaXMuYSYmKHRoaXMuYT1bXSwoZT10aGlzKS5jKGZ1bmN0aW9uKCl7ZS5nKCl9KSksdGhpcy5hLnB1c2godCl9O3ZhciBuPXUuc2V0VGltZW91dDtlLnByb3RvdHlwZS5jPWZ1bmN0aW9uKHQpe24odCwwKX0sZS5wcm90b3R5cGUuZz1mdW5jdGlvbigpe2Zvcig7dGhpcy5hJiZ0aGlzLmEubGVuZ3RoOyl7dmFyIHQ9dGhpcy5hO3RoaXMuYT1bXTtmb3IodmFyIGU9MDtlPHQubGVuZ3RoOysrZSl7dmFyIG49dFtlXTt0W2VdPW51bGw7dHJ5e24oKX1jYXRjaCh0KXt0aGlzLmYodCl9fX10aGlzLmE9bnVsbH0sZS5wcm90b3R5cGUuZj1mdW5jdGlvbih0KXt0aGlzLmMoZnVuY3Rpb24oKXt0aHJvdyB0fSl9LHMucHJvdG90eXBlLmY9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGUpe3JldHVybiBmdW5jdGlvbih0KXtyfHwocj0hMCxlLmNhbGwobix0KSl9fXZhciBuPXRoaXMscj0hMTtyZXR1cm57cmVzb2x2ZTp0KHRoaXMubSkscmVqZWN0OnQodGhpcy5nKX19LHMucHJvdG90eXBlLm09ZnVuY3Rpb24odCl7aWYodD09PXRoaXMpdGhpcy5nKG5ldyBUeXBlRXJyb3IoIkEgUHJvbWlzZSBjYW5ub3QgcmVzb2x2ZSB0byBpdHNlbGYiKSk7ZWxzZSBpZih0IGluc3RhbmNlb2Ygcyl0aGlzLnModCk7ZWxzZXt0OnN3aXRjaCh0eXBlb2YgdCl7Y2FzZSJvYmplY3QiOnZhciBlPW51bGwhPXQ7YnJlYWsgdDtjYXNlImZ1bmN0aW9uIjplPSEwO2JyZWFrIHQ7ZGVmYXVsdDplPSExfWU/dGhpcy52KHQpOnRoaXMuaCh0KX19LHMucHJvdG90eXBlLnY9ZnVuY3Rpb24odCl7dmFyIGU9dm9pZCAwO3RyeXtlPXQudGhlbn1jYXRjaCh0KXtyZXR1cm4gdm9pZCB0aGlzLmcodCl9ImZ1bmN0aW9uIj09dHlwZW9mIGU/dGhpcy51KGUsdCk6dGhpcy5oKHQpfSxzLnByb3RvdHlwZS5nPWZ1bmN0aW9uKHQpe3RoaXMuaSgyLHQpfSxzLnByb3RvdHlwZS5oPWZ1bmN0aW9uKHQpe3RoaXMuaSgxLHQpfSxzLnByb3RvdHlwZS5pPWZ1bmN0aW9uKHQsZSl7aWYoMCE9dGhpcy5iKXRocm93IEVycm9yKCJDYW5ub3Qgc2V0dGxlKCIrdCsiLCAiK2UrIik6IFByb21pc2UgYWxyZWFkeSBzZXR0bGVkIGluIHN0YXRlIit0aGlzLmIpO3RoaXMuYj10LHRoaXMuYz1lLHRoaXMubCgpfSxzLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7aWYobnVsbCE9dGhpcy5hKXtmb3IodmFyIHQ9MDt0PHRoaXMuYS5sZW5ndGg7Kyt0KWkuYih0aGlzLmFbdF0pO3RoaXMuYT1udWxsfX07dmFyIGk9bmV3IGU7cmV0dXJuIHMucHJvdG90eXBlLnM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5mKCk7dC5RYShlLnJlc29sdmUsZS5yZWplY3QpfSxzLnByb3RvdHlwZS51PWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5mKCk7dHJ5e3QuY2FsbChlLG4ucmVzb2x2ZSxuLnJlamVjdCl9Y2F0Y2godCl7bi5yZWplY3QodCl9fSxzLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gbihlLHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlP2Z1bmN0aW9uKHQpe3RyeXtyKGUodCkpfWNhdGNoKHQpe2kodCl9fTp0fXZhciByLGksbz1uZXcgcyhmdW5jdGlvbih0LGUpe3I9dCxpPWV9KTtyZXR1cm4gdGhpcy5RYShuKHQsciksbihlLGkpKSxvfSxzLnByb3RvdHlwZS5jYXRjaD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCx0KX0scy5wcm90b3R5cGUuUWE9ZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBuKCl7c3dpdGNoKHIuYil7Y2FzZSAxOnQoci5jKTticmVhaztjYXNlIDI6ZShyLmMpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVuZXhwZWN0ZWQgc3RhdGU6ICIrci5iKX19dmFyIHI9dGhpcztudWxsPT10aGlzLmE/aS5iKG4pOnRoaXMuYS5wdXNoKG4pfSxzLnJlc29sdmU9YSxzLnJlamVjdD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IHMoZnVuY3Rpb24odCxlKXtlKG4pfSl9LHMucmFjZT1mdW5jdGlvbihpKXtyZXR1cm4gbmV3IHMoZnVuY3Rpb24odCxlKXtmb3IodmFyIG49YyhpKSxyPW4ubmV4dCgpOyFyLmRvbmU7cj1uLm5leHQoKSlhKHIudmFsdWUpLlFhKHQsZSl9KX0scy5hbGw9ZnVuY3Rpb24odCl7dmFyIGU9Yyh0KSxvPWUubmV4dCgpO3JldHVybiBvLmRvbmU/YShbXSk6bmV3IHMoZnVuY3Rpb24obix0KXtmb3IodmFyIHI9W10saT0wO3IucHVzaCh2b2lkIDApLGkrKyxhKG8udmFsdWUpLlFhKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0KXtyW2VdPXQsMD09LS1pJiZuKHIpfX0oci5sZW5ndGgtMSksdCksbz1lLm5leHQoKSwhby5kb25lOyk7fSl9LHN9KTt2YXIgaD1ofHx7fSxsPXRoaXN8fHNlbGYsZT0vXltcdysvXy1dK1s9XXswLDJ9JC8sYT1udWxsO2Z1bmN0aW9uIGYodCl7cmV0dXJuKHQ9dC5xdWVyeVNlbGVjdG9yJiZ0LnF1ZXJ5U2VsZWN0b3IoInNjcmlwdFtub25jZV0iKSkmJih0PXQubm9uY2V8fHQuZ2V0QXR0cmlidXRlKCJub25jZSIpKSYmZS50ZXN0KHQpP3Q6IiJ9ZnVuY3Rpb24gcygpe31mdW5jdGlvbiBwKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiJvYmplY3QiIT1lP2U6dD9BcnJheS5pc0FycmF5KHQpPyJhcnJheSI6ZToibnVsbCJ9ZnVuY3Rpb24gZCh0KXt2YXIgZT1wKHQpO3JldHVybiJhcnJheSI9PWV8fCJvYmplY3QiPT1lJiYibnVtYmVyIj09dHlwZW9mIHQubGVuZ3RofWZ1bmN0aW9uIHYodCl7cmV0dXJuImZ1bmN0aW9uIj09cCh0KX1mdW5jdGlvbiBnKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiJvYmplY3QiPT1lJiZudWxsIT10fHwiZnVuY3Rpb24iPT1lfXZhciBuPSJjbG9zdXJlX3VpZF8iKygxZTkqTWF0aC5yYW5kb20oKT4+PjApLHI9MDtmdW5jdGlvbiBpKHQsZSxuKXtyZXR1cm4gdC5jYWxsLmFwcGx5KHQuYmluZCxhcmd1bWVudHMpfWZ1bmN0aW9uIHkoZSxuLHQpe2lmKCFlKXRocm93IEVycm9yKCk7aWYoMjxhcmd1bWVudHMubGVuZ3RoKXt2YXIgcj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMik7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkodCxyKSxlLmFwcGx5KG4sdCl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KG4sYXJndW1lbnRzKX19ZnVuY3Rpb24gbSh0LGUsbil7cmV0dXJuKG09RnVuY3Rpb24ucHJvdG90eXBlLmJpbmQmJi0xIT1GdW5jdGlvbi5wcm90b3R5cGUuYmluZC50b1N0cmluZygpLmluZGV4T2YoIm5hdGl2ZSBjb2RlIik/aTp5KS5hcHBseShudWxsLGFyZ3VtZW50cyl9ZnVuY3Rpb24gYihlKXt2YXIgbj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9bi5zbGljZSgpO3JldHVybiB0LnB1c2guYXBwbHkodCxhcmd1bWVudHMpLGUuYXBwbHkodGhpcyx0KX19ZnVuY3Rpb24gdyh0LGUpe2Z1bmN0aW9uIG4oKXt9bi5wcm90b3R5cGU9ZS5wcm90b3R5cGUsdC5hYj1lLnByb3RvdHlwZSx0LnByb3RvdHlwZT1uZXcgbix0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10fWZ1bmN0aW9uIF8odCl7cmV0dXJuIHR9ZnVuY3Rpb24gSSh0LGUsbil7dGhpcy5jb2RlPVMrdCx0aGlzLm1lc3NhZ2U9ZXx8Q1t0XXx8IiIsdGhpcy5hPW58fG51bGx9ZnVuY3Rpb24gVCh0KXt2YXIgZT10JiZ0LmNvZGU7cmV0dXJuIGU/bmV3IEkoZS5zdWJzdHJpbmcoUy5sZW5ndGgpLHQubWVzc2FnZSx0LnNlcnZlclJlc3BvbnNlKTpudWxsfXcoSSxFcnJvciksSS5wcm90b3R5cGUudz1mdW5jdGlvbigpe3ZhciB0PXtjb2RlOnRoaXMuY29kZSxtZXNzYWdlOnRoaXMubWVzc2FnZX07cmV0dXJuIHRoaXMuYSYmKHQuc2VydmVyUmVzcG9uc2U9dGhpcy5hKSx0fSxJLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53KCl9O3ZhciBFLFM9ImF1dGgvIixDPXsiYWRtaW4tcmVzdHJpY3RlZC1vcGVyYXRpb24iOiJUaGlzIG9wZXJhdGlvbiBpcyByZXN0cmljdGVkIHRvIGFkbWluaXN0cmF0b3JzIG9ubHkuIiwiYXJndW1lbnQtZXJyb3IiOiIiLCJhcHAtbm90LWF1dGhvcml6ZWQiOiJUaGlzIGFwcCwgaWRlbnRpZmllZCBieSB0aGUgZG9tYWluIHdoZXJlIGl0J3MgaG9zdGVkLCBpcyBub3QgYXV0aG9yaXplZCB0byB1c2UgRmlyZWJhc2UgQXV0aGVudGljYXRpb24gd2l0aCB0aGUgcHJvdmlkZWQgQVBJIGtleS4gUmV2aWV3IHlvdXIga2V5IGNvbmZpZ3VyYXRpb24gaW4gdGhlIEdvb2dsZSBBUEkgY29uc29sZS4iLCJhcHAtbm90LWluc3RhbGxlZCI6IlRoZSByZXF1ZXN0ZWQgbW9iaWxlIGFwcGxpY2F0aW9uIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGlkZW50aWZpZXIgKEFuZHJvaWQgcGFja2FnZSBuYW1lIG9yIGlPUyBidW5kbGUgSUQpIHByb3ZpZGVkIGlzIG5vdCBpbnN0YWxsZWQgb24gdGhpcyBkZXZpY2UuIiwiY2FwdGNoYS1jaGVjay1mYWlsZWQiOiJUaGUgcmVDQVBUQ0hBIHJlc3BvbnNlIHRva2VuIHByb3ZpZGVkIGlzIGVpdGhlciBpbnZhbGlkLCBleHBpcmVkLCBhbHJlYWR5IHVzZWQgb3IgdGhlIGRvbWFpbiBhc3NvY2lhdGVkIHdpdGggaXQgZG9lcyBub3QgbWF0Y2ggdGhlIGxpc3Qgb2Ygd2hpdGVsaXN0ZWQgZG9tYWlucy4iLCJjb2RlLWV4cGlyZWQiOiJUaGUgU01TIGNvZGUgaGFzIGV4cGlyZWQuIFBsZWFzZSByZS1zZW5kIHRoZSB2ZXJpZmljYXRpb24gY29kZSB0byB0cnkgYWdhaW4uIiwiY29yZG92YS1ub3QtcmVhZHkiOiJDb3Jkb3ZhIGZyYW1ld29yayBpcyBub3QgcmVhZHkuIiwiY29ycy11bnN1cHBvcnRlZCI6IlRoaXMgYnJvd3NlciBpcyBub3Qgc3VwcG9ydGVkLiIsImNyZWRlbnRpYWwtYWxyZWFkeS1pbi11c2UiOiJUaGlzIGNyZWRlbnRpYWwgaXMgYWxyZWFkeSBhc3NvY2lhdGVkIHdpdGggYSBkaWZmZXJlbnQgdXNlciBhY2NvdW50LiIsImN1c3RvbS10b2tlbi1taXNtYXRjaCI6IlRoZSBjdXN0b20gdG9rZW4gY29ycmVzcG9uZHMgdG8gYSBkaWZmZXJlbnQgYXVkaWVuY2UuIiwicmVxdWlyZXMtcmVjZW50LWxvZ2luIjoiVGhpcyBvcGVyYXRpb24gaXMgc2Vuc2l0aXZlIGFuZCByZXF1aXJlcyByZWNlbnQgYXV0aGVudGljYXRpb24uIExvZyBpbiBhZ2FpbiBiZWZvcmUgcmV0cnlpbmcgdGhpcyByZXF1ZXN0LiIsImR5bmFtaWMtbGluay1ub3QtYWN0aXZhdGVkIjoiUGxlYXNlIGFjdGl2YXRlIER5bmFtaWMgTGlua3MgaW4gdGhlIEZpcmViYXNlIENvbnNvbGUgYW5kIGFncmVlIHRvIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucy4iLCJlbWFpbC1jaGFuZ2UtbmVlZHMtdmVyaWZpY2F0aW9uIjoiTXVsdGktZmFjdG9yIHVzZXJzIG11c3QgYWx3YXlzIGhhdmUgYSB2ZXJpZmllZCBlbWFpbC4iLCJlbWFpbC1hbHJlYWR5LWluLXVzZSI6IlRoZSBlbWFpbCBhZGRyZXNzIGlzIGFscmVhZHkgaW4gdXNlIGJ5IGFub3RoZXIgYWNjb3VudC4iLCJleHBpcmVkLWFjdGlvbi1jb2RlIjoiVGhlIGFjdGlvbiBjb2RlIGhhcyBleHBpcmVkLiAiLCJjYW5jZWxsZWQtcG9wdXAtcmVxdWVzdCI6IlRoaXMgb3BlcmF0aW9uIGhhcyBiZWVuIGNhbmNlbGxlZCBkdWUgdG8gYW5vdGhlciBjb25mbGljdGluZyBwb3B1cCBiZWluZyBvcGVuZWQuIiwiaW50ZXJuYWwtZXJyb3IiOiJBbiBpbnRlcm5hbCBlcnJvciBoYXMgb2NjdXJyZWQuIiwiaW52YWxpZC1hcHAtY3JlZGVudGlhbCI6IlRoZSBwaG9uZSB2ZXJpZmljYXRpb24gcmVxdWVzdCBjb250YWlucyBhbiBpbnZhbGlkIGFwcGxpY2F0aW9uIHZlcmlmaWVyLiBUaGUgcmVDQVBUQ0hBIHRva2VuIHJlc3BvbnNlIGlzIGVpdGhlciBpbnZhbGlkIG9yIGV4cGlyZWQuIiwiaW52YWxpZC1hcHAtaWQiOiJUaGUgbW9iaWxlIGFwcCBpZGVudGlmaWVyIGlzIG5vdCByZWdpc3RlZCBmb3IgdGhlIGN1cnJlbnQgcHJvamVjdC4iLCJpbnZhbGlkLXVzZXItdG9rZW4iOiJUaGlzIHVzZXIncyBjcmVkZW50aWFsIGlzbid0IHZhbGlkIGZvciB0aGlzIHByb2plY3QuIFRoaXMgY2FuIGhhcHBlbiBpZiB0aGUgdXNlcidzIHRva2VuIGhhcyBiZWVuIHRhbXBlcmVkIHdpdGgsIG9yIGlmIHRoZSB1c2VyIGlzbid0IGZvciB0aGUgcHJvamVjdCBhc3NvY2lhdGVkIHdpdGggdGhpcyBBUEkga2V5LiIsImludmFsaWQtYXV0aC1ldmVudCI6IkFuIGludGVybmFsIGVycm9yIGhhcyBvY2N1cnJlZC4iLCJpbnZhbGlkLXZlcmlmaWNhdGlvbi1jb2RlIjoiVGhlIFNNUyB2ZXJpZmljYXRpb24gY29kZSB1c2VkIHRvIGNyZWF0ZSB0aGUgcGhvbmUgYXV0aCBjcmVkZW50aWFsIGlzIGludmFsaWQuIFBsZWFzZSByZXNlbmQgdGhlIHZlcmlmaWNhdGlvbiBjb2RlIHNtcyBhbmQgYmUgc3VyZSB1c2UgdGhlIHZlcmlmaWNhdGlvbiBjb2RlIHByb3ZpZGVkIGJ5IHRoZSB1c2VyLiIsImludmFsaWQtY29udGludWUtdXJpIjoiVGhlIGNvbnRpbnVlIFVSTCBwcm92aWRlZCBpbiB0aGUgcmVxdWVzdCBpcyBpbnZhbGlkLiIsImludmFsaWQtY29yZG92YS1jb25maWd1cmF0aW9uIjoiVGhlIGZvbGxvd2luZyBDb3Jkb3ZhIHBsdWdpbnMgbXVzdCBiZSBpbnN0YWxsZWQgdG8gZW5hYmxlIE9BdXRoIHNpZ24taW46IGNvcmRvdmEtcGx1Z2luLWJ1aWxkaW5mbywgY29yZG92YS11bml2ZXJzYWwtbGlua3MtcGx1Z2luLCBjb3Jkb3ZhLXBsdWdpbi1icm93c2VydGFiLCBjb3Jkb3ZhLXBsdWdpbi1pbmFwcGJyb3dzZXIgYW5kIGNvcmRvdmEtcGx1Z2luLWN1c3RvbXVybHNjaGVtZS4iLCJpbnZhbGlkLWN1c3RvbS10b2tlbiI6IlRoZSBjdXN0b20gdG9rZW4gZm9ybWF0IGlzIGluY29ycmVjdC4gUGxlYXNlIGNoZWNrIHRoZSBkb2N1bWVudGF0aW9uLiIsImludmFsaWQtZHluYW1pYy1saW5rLWRvbWFpbiI6IlRoZSBwcm92aWRlZCBkeW5hbWljIGxpbmsgZG9tYWluIGlzIG5vdCBjb25maWd1cmVkIG9yIGF1dGhvcml6ZWQgZm9yIHRoZSBjdXJyZW50IHByb2plY3QuIiwiaW52YWxpZC1lbWFpbCI6IlRoZSBlbWFpbCBhZGRyZXNzIGlzIGJhZGx5IGZvcm1hdHRlZC4iLCJpbnZhbGlkLWFwaS1rZXkiOiJZb3VyIEFQSSBrZXkgaXMgaW52YWxpZCwgcGxlYXNlIGNoZWNrIHlvdSBoYXZlIGNvcGllZCBpdCBjb3JyZWN0bHkuIiwiaW52YWxpZC1jZXJ0LWhhc2giOiJUaGUgU0hBLTEgY2VydGlmaWNhdGUgaGFzaCBwcm92aWRlZCBpcyBpbnZhbGlkLiIsImludmFsaWQtY3JlZGVudGlhbCI6IlRoZSBzdXBwbGllZCBhdXRoIGNyZWRlbnRpYWwgaXMgbWFsZm9ybWVkIG9yIGhhcyBleHBpcmVkLiIsImludmFsaWQtbWVzc2FnZS1wYXlsb2FkIjoiVGhlIGVtYWlsIHRlbXBsYXRlIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBhY3Rpb24gY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzIGluIGl0cyBtZXNzYWdlLiBQbGVhc2UgZml4IGJ5IGdvaW5nIHRvIHRoZSBBdXRoIGVtYWlsIHRlbXBsYXRlcyBzZWN0aW9uIGluIHRoZSBGaXJlYmFzZSBDb25zb2xlLiIsImludmFsaWQtbXVsdGktZmFjdG9yLXNlc3Npb24iOiJUaGUgcmVxdWVzdCBkb2VzIG5vdCBjb250YWluIGEgdmFsaWQgcHJvb2Ygb2YgZmlyc3QgZmFjdG9yIHN1Y2Nlc3NmdWwgc2lnbi1pbi4iLCJpbnZhbGlkLW9hdXRoLXByb3ZpZGVyIjoiRW1haWxBdXRoUHJvdmlkZXIgaXMgbm90IHN1cHBvcnRlZCBmb3IgdGhpcyBvcGVyYXRpb24uIFRoaXMgb3BlcmF0aW9uIG9ubHkgc3VwcG9ydHMgT0F1dGggcHJvdmlkZXJzLiIsImludmFsaWQtb2F1dGgtY2xpZW50LWlkIjoiVGhlIE9BdXRoIGNsaWVudCBJRCBwcm92aWRlZCBpcyBlaXRoZXIgaW52YWxpZCBvciBkb2VzIG5vdCBtYXRjaCB0aGUgc3BlY2lmaWVkIEFQSSBrZXkuIiwidW5hdXRob3JpemVkLWRvbWFpbiI6IlRoaXMgZG9tYWluIGlzIG5vdCBhdXRob3JpemVkIGZvciBPQXV0aCBvcGVyYXRpb25zIGZvciB5b3VyIEZpcmViYXNlIHByb2plY3QuIEVkaXQgdGhlIGxpc3Qgb2YgYXV0aG9yaXplZCBkb21haW5zIGZyb20gdGhlIEZpcmViYXNlIGNvbnNvbGUuIiwiaW52YWxpZC1hY3Rpb24tY29kZSI6IlRoZSBhY3Rpb24gY29kZSBpcyBpbnZhbGlkLiBUaGlzIGNhbiBoYXBwZW4gaWYgdGhlIGNvZGUgaXMgbWFsZm9ybWVkLCBleHBpcmVkLCBvciBoYXMgYWxyZWFkeSBiZWVuIHVzZWQuIiwid3JvbmctcGFzc3dvcmQiOiJUaGUgcGFzc3dvcmQgaXMgaW52YWxpZCBvciB0aGUgdXNlciBkb2VzIG5vdCBoYXZlIGEgcGFzc3dvcmQuIiwiaW52YWxpZC1wZXJzaXN0ZW5jZS10eXBlIjoiVGhlIHNwZWNpZmllZCBwZXJzaXN0ZW5jZSB0eXBlIGlzIGludmFsaWQuIEl0IGNhbiBvbmx5IGJlIGxvY2FsLCBzZXNzaW9uIG9yIG5vbmUuIiwiaW52YWxpZC1waG9uZS1udW1iZXIiOiJUaGUgZm9ybWF0IG9mIHRoZSBwaG9uZSBudW1iZXIgcHJvdmlkZWQgaXMgaW5jb3JyZWN0LiBQbGVhc2UgZW50ZXIgdGhlIHBob25lIG51bWJlciBpbiBhIGZvcm1hdCB0aGF0IGNhbiBiZSBwYXJzZWQgaW50byBFLjE2NCBmb3JtYXQuIEUuMTY0IHBob25lIG51bWJlcnMgYXJlIHdyaXR0ZW4gaW4gdGhlIGZvcm1hdCBbK11bY291bnRyeSBjb2RlXVtzdWJzY3JpYmVyIG51bWJlciBpbmNsdWRpbmcgYXJlYSBjb2RlXS4iLCJpbnZhbGlkLXByb3ZpZGVyLWlkIjoiVGhlIHNwZWNpZmllZCBwcm92aWRlciBJRCBpcyBpbnZhbGlkLiIsImludmFsaWQtcmVjaXBpZW50LWVtYWlsIjoiVGhlIGVtYWlsIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBhY3Rpb24gZmFpbGVkIHRvIHNlbmQgYXMgdGhlIHByb3ZpZGVkIHJlY2lwaWVudCBlbWFpbCBhZGRyZXNzIGlzIGludmFsaWQuIiwiaW52YWxpZC1zZW5kZXIiOiJUaGUgZW1haWwgdGVtcGxhdGUgY29ycmVzcG9uZGluZyB0byB0aGlzIGFjdGlvbiBjb250YWlucyBhbiBpbnZhbGlkIHNlbmRlciBlbWFpbCBvciBuYW1lLiBQbGVhc2UgZml4IGJ5IGdvaW5nIHRvIHRoZSBBdXRoIGVtYWlsIHRlbXBsYXRlcyBzZWN0aW9uIGluIHRoZSBGaXJlYmFzZSBDb25zb2xlLiIsImludmFsaWQtdmVyaWZpY2F0aW9uLWlkIjoiVGhlIHZlcmlmaWNhdGlvbiBJRCB1c2VkIHRvIGNyZWF0ZSB0aGUgcGhvbmUgYXV0aCBjcmVkZW50aWFsIGlzIGludmFsaWQuIiwiaW52YWxpZC10ZW5hbnQtaWQiOiJUaGUgQXV0aCBpbnN0YW5jZSdzIHRlbmFudCBJRCBpcyBpbnZhbGlkLiIsIm11bHRpLWZhY3Rvci1pbmZvLW5vdC1mb3VuZCI6IlRoZSB1c2VyIGRvZXMgbm90IGhhdmUgYSBzZWNvbmQgZmFjdG9yIG1hdGNoaW5nIHRoZSBpZGVudGlmaWVyIHByb3ZpZGVkLiIsIm11bHRpLWZhY3Rvci1hdXRoLXJlcXVpcmVkIjoiUHJvb2Ygb2Ygb3duZXJzaGlwIG9mIGEgc2Vjb25kIGZhY3RvciBpcyByZXF1aXJlZCB0byBjb21wbGV0ZSBzaWduLWluLiIsIm1pc3NpbmctYW5kcm9pZC1wa2ctbmFtZSI6IkFuIEFuZHJvaWQgUGFja2FnZSBOYW1lIG11c3QgYmUgcHJvdmlkZWQgaWYgdGhlIEFuZHJvaWQgQXBwIGlzIHJlcXVpcmVkIHRvIGJlIGluc3RhbGxlZC4iLCJhdXRoLWRvbWFpbi1jb25maWctcmVxdWlyZWQiOiJCZSBzdXJlIHRvIGluY2x1ZGUgYXV0aERvbWFpbiB3aGVuIGNhbGxpbmcgZmlyZWJhc2UuaW5pdGlhbGl6ZUFwcCgpLCBieSBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUgRmlyZWJhc2UgY29uc29sZS4iLCJtaXNzaW5nLWFwcC1jcmVkZW50aWFsIjoiVGhlIHBob25lIHZlcmlmaWNhdGlvbiByZXF1ZXN0IGlzIG1pc3NpbmcgYW4gYXBwbGljYXRpb24gdmVyaWZpZXIgYXNzZXJ0aW9uLiBBIHJlQ0FQVENIQSByZXNwb25zZSB0b2tlbiBuZWVkcyB0byBiZSBwcm92aWRlZC4iLCJtaXNzaW5nLXZlcmlmaWNhdGlvbi1jb2RlIjoiVGhlIHBob25lIGF1dGggY3JlZGVudGlhbCB3YXMgY3JlYXRlZCB3aXRoIGFuIGVtcHR5IFNNUyB2ZXJpZmljYXRpb24gY29kZS4iLCJtaXNzaW5nLWNvbnRpbnVlLXVyaSI6IkEgY29udGludWUgVVJMIG11c3QgYmUgcHJvdmlkZWQgaW4gdGhlIHJlcXVlc3QuIiwibWlzc2luZy1pZnJhbWUtc3RhcnQiOiJBbiBpbnRlcm5hbCBlcnJvciBoYXMgb2NjdXJyZWQuIiwibWlzc2luZy1pb3MtYnVuZGxlLWlkIjoiQW4gaU9TIEJ1bmRsZSBJRCBtdXN0IGJlIHByb3ZpZGVkIGlmIGFuIEFwcCBTdG9yZSBJRCBpcyBwcm92aWRlZC4iLCJtaXNzaW5nLW11bHRpLWZhY3Rvci1pbmZvIjoiTm8gc2Vjb25kIGZhY3RvciBpZGVudGlmaWVyIGlzIHByb3ZpZGVkLiIsIm1pc3NpbmctbXVsdGktZmFjdG9yLXNlc3Npb24iOiJUaGUgcmVxdWVzdCBpcyBtaXNzaW5nIHByb29mIG9mIGZpcnN0IGZhY3RvciBzdWNjZXNzZnVsIHNpZ24taW4uIiwibWlzc2luZy1vci1pbnZhbGlkLW5vbmNlIjoiVGhlIHJlcXVlc3QgZG9lcyBub3QgY29udGFpbiBhIHZhbGlkIG5vbmNlLiBUaGlzIGNhbiBvY2N1ciBpZiB0aGUgU0hBLTI1NiBoYXNoIG9mIHRoZSBwcm92aWRlZCByYXcgbm9uY2UgZG9lcyBub3QgbWF0Y2ggdGhlIGhhc2hlZCBub25jZSBpbiB0aGUgSUQgdG9rZW4gcGF5bG9hZC4iLCJtaXNzaW5nLXBob25lLW51bWJlciI6IlRvIHNlbmQgdmVyaWZpY2F0aW9uIGNvZGVzLCBwcm92aWRlIGEgcGhvbmUgbnVtYmVyIGZvciB0aGUgcmVjaXBpZW50LiIsIm1pc3NpbmctdmVyaWZpY2F0aW9uLWlkIjoiVGhlIHBob25lIGF1dGggY3JlZGVudGlhbCB3YXMgY3JlYXRlZCB3aXRoIGFuIGVtcHR5IHZlcmlmaWNhdGlvbiBJRC4iLCJhcHAtZGVsZXRlZCI6IlRoaXMgaW5zdGFuY2Ugb2YgRmlyZWJhc2VBcHAgaGFzIGJlZW4gZGVsZXRlZC4iLCJhY2NvdW50LWV4aXN0cy13aXRoLWRpZmZlcmVudC1jcmVkZW50aWFsIjoiQW4gYWNjb3VudCBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3MgYnV0IGRpZmZlcmVudCBzaWduLWluIGNyZWRlbnRpYWxzLiBTaWduIGluIHVzaW5nIGEgcHJvdmlkZXIgYXNzb2NpYXRlZCB3aXRoIHRoaXMgZW1haWwgYWRkcmVzcy4iLCJuZXR3b3JrLXJlcXVlc3QtZmFpbGVkIjoiQSBuZXR3b3JrIGVycm9yIChzdWNoIGFzIHRpbWVvdXQsIGludGVycnVwdGVkIGNvbm5lY3Rpb24gb3IgdW5yZWFjaGFibGUgaG9zdCkgaGFzIG9jY3VycmVkLiIsIm5vLWF1dGgtZXZlbnQiOiJBbiBpbnRlcm5hbCBlcnJvciBoYXMgb2NjdXJyZWQuIiwibm8tc3VjaC1wcm92aWRlciI6IlVzZXIgd2FzIG5vdCBsaW5rZWQgdG8gYW4gYWNjb3VudCB3aXRoIHRoZSBnaXZlbiBwcm92aWRlci4iLCJudWxsLXVzZXIiOiJBIG51bGwgdXNlciBvYmplY3Qgd2FzIHByb3ZpZGVkIGFzIHRoZSBhcmd1bWVudCBmb3IgYW4gb3BlcmF0aW9uIHdoaWNoIHJlcXVpcmVzIGEgbm9uLW51bGwgdXNlciBvYmplY3QuIiwib3BlcmF0aW9uLW5vdC1hbGxvd2VkIjoiVGhlIGdpdmVuIHNpZ24taW4gcHJvdmlkZXIgaXMgZGlzYWJsZWQgZm9yIHRoaXMgRmlyZWJhc2UgcHJvamVjdC4gRW5hYmxlIGl0IGluIHRoZSBGaXJlYmFzZSBjb25zb2xlLCB1bmRlciB0aGUgc2lnbi1pbiBtZXRob2QgdGFiIG9mIHRoZSBBdXRoIHNlY3Rpb24uIiwib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCI6J1RoaXMgb3BlcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhlIGVudmlyb25tZW50IHRoaXMgYXBwbGljYXRpb24gaXMgcnVubmluZyBvbi4gImxvY2F0aW9uLnByb3RvY29sIiBtdXN0IGJlIGh0dHAsIGh0dHBzIG9yIGNocm9tZS1leHRlbnNpb24gYW5kIHdlYiBzdG9yYWdlIG11c3QgYmUgZW5hYmxlZC4nLCJwb3B1cC1ibG9ja2VkIjoiVW5hYmxlIHRvIGVzdGFibGlzaCBhIGNvbm5lY3Rpb24gd2l0aCB0aGUgcG9wdXAuIEl0IG1heSBoYXZlIGJlZW4gYmxvY2tlZCBieSB0aGUgYnJvd3Nlci4iLCJwb3B1cC1jbG9zZWQtYnktdXNlciI6IlRoZSBwb3B1cCBoYXMgYmVlbiBjbG9zZWQgYnkgdGhlIHVzZXIgYmVmb3JlIGZpbmFsaXppbmcgdGhlIG9wZXJhdGlvbi4iLCJwcm92aWRlci1hbHJlYWR5LWxpbmtlZCI6IlVzZXIgY2FuIG9ubHkgYmUgbGlua2VkIHRvIG9uZSBpZGVudGl0eSBmb3IgdGhlIGdpdmVuIHByb3ZpZGVyLiIsInF1b3RhLWV4Y2VlZGVkIjoiVGhlIHByb2plY3QncyBxdW90YSBmb3IgdGhpcyBvcGVyYXRpb24gaGFzIGJlZW4gZXhjZWVkZWQuIiwicmVkaXJlY3QtY2FuY2VsbGVkLWJ5LXVzZXIiOiJUaGUgcmVkaXJlY3Qgb3BlcmF0aW9uIGhhcyBiZWVuIGNhbmNlbGxlZCBieSB0aGUgdXNlciBiZWZvcmUgZmluYWxpemluZy4iLCJyZWRpcmVjdC1vcGVyYXRpb24tcGVuZGluZyI6IkEgcmVkaXJlY3Qgc2lnbi1pbiBvcGVyYXRpb24gaXMgYWxyZWFkeSBwZW5kaW5nLiIsInJlamVjdGVkLWNyZWRlbnRpYWwiOiJUaGUgcmVxdWVzdCBjb250YWlucyBtYWxmb3JtZWQgb3IgbWlzbWF0Y2hpbmcgY3JlZGVudGlhbHMuIiwic2Vjb25kLWZhY3Rvci1hbHJlYWR5LWluLXVzZSI6IlRoZSBzZWNvbmQgZmFjdG9yIGlzIGFscmVhZHkgZW5yb2xsZWQgb24gdGhpcyBhY2NvdW50LiIsIm1heGltdW0tc2Vjb25kLWZhY3Rvci1jb3VudC1leGNlZWRlZCI6IlRoZSBtYXhpbXVtIGFsbG93ZWQgbnVtYmVyIG9mIHNlY29uZCBmYWN0b3JzIG9uIGEgdXNlciBoYXMgYmVlbiBleGNlZWRlZC4iLCJ0ZW5hbnQtaWQtbWlzbWF0Y2giOiJUaGUgcHJvdmlkZWQgdGVuYW50IElEIGRvZXMgbm90IG1hdGNoIHRoZSBBdXRoIGluc3RhbmNlJ3MgdGVuYW50IElEIix0aW1lb3V0OiJUaGUgb3BlcmF0aW9uIGhhcyB0aW1lZCBvdXQuIiwidXNlci10b2tlbi1leHBpcmVkIjoiVGhlIHVzZXIncyBjcmVkZW50aWFsIGlzIG5vIGxvbmdlciB2YWxpZC4gVGhlIHVzZXIgbXVzdCBzaWduIGluIGFnYWluLiIsInRvby1tYW55LXJlcXVlc3RzIjoiV2UgaGF2ZSBibG9ja2VkIGFsbCByZXF1ZXN0cyBmcm9tIHRoaXMgZGV2aWNlIGR1ZSB0byB1bnVzdWFsIGFjdGl2aXR5LiBUcnkgYWdhaW4gbGF0ZXIuIiwidW5hdXRob3JpemVkLWNvbnRpbnVlLXVyaSI6IlRoZSBkb21haW4gb2YgdGhlIGNvbnRpbnVlIFVSTCBpcyBub3Qgd2hpdGVsaXN0ZWQuICBQbGVhc2Ugd2hpdGVsaXN0IHRoZSBkb21haW4gaW4gdGhlIEZpcmViYXNlIGNvbnNvbGUuIiwidW5zdXBwb3J0ZWQtZmlyc3QtZmFjdG9yIjoiRW5yb2xsaW5nIGEgc2Vjb25kIGZhY3RvciBvciBzaWduaW5nIGluIHdpdGggYSBtdWx0aS1mYWN0b3IgYWNjb3VudCByZXF1aXJlcyBzaWduLWluIHdpdGggYSBzdXBwb3J0ZWQgZmlyc3QgZmFjdG9yLiIsInVuc3VwcG9ydGVkLXBlcnNpc3RlbmNlLXR5cGUiOiJUaGUgY3VycmVudCBlbnZpcm9ubWVudCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBzcGVjaWZpZWQgcGVyc2lzdGVuY2UgdHlwZS4iLCJ1bnN1cHBvcnRlZC10ZW5hbnQtb3BlcmF0aW9uIjoiVGhpcyBvcGVyYXRpb24gaXMgbm90IHN1cHBvcnRlZCBpbiBhIG11bHRpLXRlbmFudCBjb250ZXh0LiIsInVudmVyaWZpZWQtZW1haWwiOiJUaGUgb3BlcmF0aW9uIHJlcXVpcmVzIGEgdmVyaWZpZWQgZW1haWwuIiwidXNlci1jYW5jZWxsZWQiOiJUaGUgdXNlciBkaWQgbm90IGdyYW50IHlvdXIgYXBwbGljYXRpb24gdGhlIHBlcm1pc3Npb25zIGl0IHJlcXVlc3RlZC4iLCJ1c2VyLW5vdC1mb3VuZCI6IlRoZXJlIGlzIG5vIHVzZXIgcmVjb3JkIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBpZGVudGlmaWVyLiBUaGUgdXNlciBtYXkgaGF2ZSBiZWVuIGRlbGV0ZWQuIiwidXNlci1kaXNhYmxlZCI6IlRoZSB1c2VyIGFjY291bnQgaGFzIGJlZW4gZGlzYWJsZWQgYnkgYW4gYWRtaW5pc3RyYXRvci4iLCJ1c2VyLW1pc21hdGNoIjoiVGhlIHN1cHBsaWVkIGNyZWRlbnRpYWxzIGRvIG5vdCBjb3JyZXNwb25kIHRvIHRoZSBwcmV2aW91c2x5IHNpZ25lZCBpbiB1c2VyLiIsInVzZXItc2lnbmVkLW91dCI6IiIsIndlYWstcGFzc3dvcmQiOiJUaGUgcGFzc3dvcmQgbXVzdCBiZSA2IGNoYXJhY3RlcnMgbG9uZyBvciBtb3JlLiIsIndlYi1zdG9yYWdlLXVuc3VwcG9ydGVkIjoiVGhpcyBicm93c2VyIGlzIG5vdCBzdXBwb3J0ZWQgb3IgM3JkIHBhcnR5IGNvb2tpZXMgYW5kIGRhdGEgbWF5IGJlIGRpc2FibGVkLiJ9LE49e2xkOntUYToiaHR0cHM6Ly9zdGFnaW5nLWlkZW50aXR5dG9vbGtpdC5zYW5kYm94Lmdvb2dsZWFwaXMuY29tL2lkZW50aXR5dG9vbGtpdC92My9yZWx5aW5ncGFydHkvIixaYToiaHR0cHM6Ly9zdGFnaW5nLXNlY3VyZXRva2VuLnNhbmRib3guZ29vZ2xlYXBpcy5jb20vdjEvdG9rZW4iLFdhOiJodHRwczovL3N0YWdpbmctaWRlbnRpdHl0b29sa2l0LnNhbmRib3guZ29vZ2xlYXBpcy5jb20vdjIvIixpZDoiYiJ9LHNkOntUYToiaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vaWRlbnRpdHl0b29sa2l0L3YzL3JlbHlpbmdwYXJ0eS8iLFphOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZWFwaXMuY29tL3YxL3Rva2VuIixXYToiaHR0cHM6Ly9pZGVudGl0eXRvb2xraXQuZ29vZ2xlYXBpcy5jb20vdjIvIixpZDoicCJ9LHVkOntUYToiaHR0cHM6Ly9zdGFnaW5nLXd3dy5zYW5kYm94Lmdvb2dsZWFwaXMuY29tL2lkZW50aXR5dG9vbGtpdC92My9yZWx5aW5ncGFydHkvIixaYToiaHR0cHM6Ly9zdGFnaW5nLXNlY3VyZXRva2VuLnNhbmRib3guZ29vZ2xlYXBpcy5jb20vdjEvdG9rZW4iLFdhOiJodHRwczovL3N0YWdpbmctaWRlbnRpdHl0b29sa2l0LnNhbmRib3guZ29vZ2xlYXBpcy5jb20vdjIvIixpZDoicyJ9LHZkOntUYToiaHR0cHM6Ly93d3ctZ29vZ2xlYXBpcy10ZXN0LnNhbmRib3guZ29vZ2xlLmNvbS9pZGVudGl0eXRvb2xraXQvdjMvcmVseWluZ3BhcnR5LyIsWmE6Imh0dHBzOi8vdGVzdC1zZWN1cmV0b2tlbi5zYW5kYm94Lmdvb2dsZWFwaXMuY29tL3YxL3Rva2VuIixXYToiaHR0cHM6Ly90ZXN0LWlkZW50aXR5dG9vbGtpdC5zYW5kYm94Lmdvb2dsZWFwaXMuY29tL3YyLyIsaWQ6InQifX07ZnVuY3Rpb24gQSh0KXtmb3IodmFyIGUgaW4gTilpZihOW2VdLmlkPT09dClyZXR1cm4gdD1OW2VdLHtmaXJlYmFzZUVuZHBvaW50OnQuVGEsc2VjdXJlVG9rZW5FbmRwb2ludDp0LlphLGlkZW50aXR5UGxhdGZvcm1FbmRwb2ludDp0LldhfTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBrKHQpe2lmKHQpdHJ5e3JldHVybiB0LiRnb29nX1RoZW5hYmxlfWNhdGNoKHQpe3JldHVybn19ZnVuY3Rpb24gUih0KXt2YXIgZTtFcnJvci5jYXB0dXJlU3RhY2tUcmFjZT9FcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLFIpOihlPUVycm9yKCkuc3RhY2spJiYodGhpcy5zdGFjaz1lKSx0JiYodGhpcy5tZXNzYWdlPVN0cmluZyh0KSl9ZnVuY3Rpb24gUCh0LGUpe2Zvcih2YXIgbj0iIixyPSh0PXQuc3BsaXQoIiVzIikpLmxlbmd0aC0xLGk9MDtpPHI7aSsrKW4rPXRbaV0rKGk8ZS5sZW5ndGg/ZVtpXToiJXMiKTtSLmNhbGwodGhpcyxuK3Rbcl0pfWZ1bmN0aW9uIE8odCl7dGhyb3cgbmV3IFAoIkZhaWx1cmUiKyh0PyI6ICIrdDoiIiksQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpKX1mdW5jdGlvbiBEKHQsZSl7dGhpcy5jPXQsdGhpcy5mPWUsdGhpcy5iPTAsdGhpcy5hPW51bGx9ZnVuY3Rpb24geCh0LGUpe3QuZihlKSx0LmI8MTAwJiYodC5iKyssZS5uZXh0PXQuYSx0LmE9ZSl9ZnVuY3Rpb24gTCgpe3RoaXMuYj10aGlzLmE9bnVsbH1FPUEoIl9fRUlEX18iKT8iX19FSURfXyI6dm9pZCAwLHcoUixFcnJvciksUi5wcm90b3R5cGUubmFtZT0iQ3VzdG9tRXJyb3IiLHcoUCxSKSxQLnByb3RvdHlwZS5uYW1lPSJBc3NlcnRpb25FcnJvciIsRC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7dmFyIHQ7cmV0dXJuIDA8dGhpcy5iPyh0aGlzLmItLSx0PXRoaXMuYSx0aGlzLmE9dC5uZXh0LHQubmV4dD1udWxsKTp0PXRoaXMuYygpLHR9O3ZhciBNPW5ldyBEKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBGfSxmdW5jdGlvbih0KXt0LnJlc2V0KCl9KTtmdW5jdGlvbiBGKCl7dGhpcy5uZXh0PXRoaXMuYj10aGlzLmE9bnVsbH1MLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24odCxlKXt2YXIgbj1NLmdldCgpO24uc2V0KHQsZSksdGhpcy5iP3RoaXMuYi5uZXh0PW46dGhpcy5hPW4sdGhpcy5iPW59LEYucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LGUpe3RoaXMuYT10LHRoaXMuYj1lLHRoaXMubmV4dD1udWxsfSxGLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLmI9dGhpcy5hPW51bGx9O3ZhciBVPUFycmF5LnByb3RvdHlwZS5pbmRleE9mP2Z1bmN0aW9uKHQsZSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwodCxlLHZvaWQgMCl9OmZ1bmN0aW9uKHQsZSl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiJzdHJpbmciIT10eXBlb2YgZXx8MSE9ZS5sZW5ndGg/LTE6dC5pbmRleE9mKGUsMCk7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspaWYobiBpbiB0JiZ0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX0saj1BcnJheS5wcm90b3R5cGUuZm9yRWFjaD9mdW5jdGlvbih0LGUsbil7QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0LGUsbil9OmZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIHI9dC5sZW5ndGgsaT0ic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiIik6dCxvPTA7bzxyO28rKylvIGluIGkmJmUuY2FsbChuLGlbb10sbyx0KX07dmFyIHE9QXJyYXkucHJvdG90eXBlLmZpbHRlcj9mdW5jdGlvbih0LGUpe3JldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwodCxlLHZvaWQgMCl9OmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuLHI9dC5sZW5ndGgsaT1bXSxvPTAscz0ic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiIik6dCxhPTA7YTxyO2ErKylhIGluIHMmJihuPXNbYV0sZS5jYWxsKHZvaWQgMCxuLGEsdCkmJihpW28rK109bikpO3JldHVybiBpfSxWPUFycmF5LnByb3RvdHlwZS5tYXA/ZnVuY3Rpb24odCxlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLm1hcC5jYWxsKHQsZSx2b2lkIDApfTpmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10Lmxlbmd0aCxyPUFycmF5KG4pLGk9InN0cmluZyI9PXR5cGVvZiB0P3Quc3BsaXQoIiIpOnQsbz0wO288bjtvKyspbyBpbiBpJiYocltvXT1lLmNhbGwodm9pZCAwLGlbb10sbyx0KSk7cmV0dXJuIHJ9LEI9QXJyYXkucHJvdG90eXBlLnNvbWU/ZnVuY3Rpb24odCxlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNvbWUuY2FsbCh0LGUsdm9pZCAwKX06ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dC5sZW5ndGgscj0ic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiIik6dCxpPTA7aTxuO2krKylpZihpIGluIHImJmUuY2FsbCh2b2lkIDAscltpXSxpLHQpKXJldHVybiEwO3JldHVybiExfTtmdW5jdGlvbiBLKHQsZSl7cmV0dXJuIDA8PVUodCxlKX1mdW5jdGlvbiBXKHQsZSl7dmFyIG47cmV0dXJuKG49MDw9KGU9VSh0LGUpKSkmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbCh0LGUsMSksbn1mdW5jdGlvbiBIKG4scil7IWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPSJzdHJpbmciPT10eXBlb2YgdD90LnNwbGl0KCIiKTp0LHI9dC5sZW5ndGgtMTswPD1yOy0tcilyIGluIG4mJmUuY2FsbCh2b2lkIDAsbltyXSxyLHQpfShuLGZ1bmN0aW9uKHQsZSl7ci5jYWxsKHZvaWQgMCx0LGUsbikmJjE9PUFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChuLGUsMSkubGVuZ3RoJiYwfSl9ZnVuY3Rpb24gRygpe3JldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGFyZ3VtZW50cyl9ZnVuY3Rpb24geih0KXt2YXIgZT10Lmxlbmd0aDtpZigwPGUpe2Zvcih2YXIgbj1BcnJheShlKSxyPTA7cjxlO3IrKyluW3JdPXRbcl07cmV0dXJuIG59cmV0dXJuW119dmFyIFEsWT1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24odCl7cmV0dXJuIHQudHJpbSgpfTpmdW5jdGlvbih0KXtyZXR1cm4vXltcc1x4YTBdKihbXHNcU10qPylbXHNceGEwXSokLy5leGVjKHQpWzFdfSxYPS8mL2csSj0vPC9nLCQ9Lz4vZyxaPS8iL2csdHQ9LycvZyxldD0vXHgwMC9nLG50PS9bXHgwMCY8PiInXS87ZnVuY3Rpb24gcnQodCxlKXtyZXR1cm4tMSE9dC5pbmRleE9mKGUpfWZ1bmN0aW9uIGl0KHQsZSl7cmV0dXJuIHQ8ZT8tMTplPHQ/MTowfXQ6e3ZhciBvdD1sLm5hdmlnYXRvcjtpZihvdCl7b3Q9b3QudXNlckFnZW50O2lmKG90KXtRPW90O2JyZWFrIHR9fVE9IiJ9ZnVuY3Rpb24gc3QodCl7cmV0dXJuIHJ0KFEsdCl9ZnVuY3Rpb24gYXQodCxlKXtmb3IodmFyIG4gaW4gdCllLmNhbGwodm9pZCAwLHRbbl0sbix0KX1mdW5jdGlvbiB1dCh0KXtmb3IodmFyIGUgaW4gdClyZXR1cm47cmV0dXJuIDF9ZnVuY3Rpb24gY3QodCl7dmFyIGUsbj17fTtmb3IoZSBpbiB0KW5bZV09dFtlXTtyZXR1cm4gbn12YXIgaHQ9ImNvbnN0cnVjdG9yIGhhc093blByb3BlcnR5IGlzUHJvdG90eXBlT2YgcHJvcGVydHlJc0VudW1lcmFibGUgdG9Mb2NhbGVTdHJpbmcgdG9TdHJpbmcgdmFsdWVPZiIuc3BsaXQoIiAiKTtmdW5jdGlvbiBsdCh0KXtmb3IodmFyIGUsbixyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl7Zm9yKGUgaW4gbj1hcmd1bWVudHNbcl0pdFtlXT1uW2VdO2Zvcih2YXIgaT0wO2k8aHQubGVuZ3RoO2krKyllPWh0W2ldLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLGUpJiYodFtlXT1uW2VdKX19ZnVuY3Rpb24gZnQodCxlKXt0Ont0cnl7dmFyIG49dCYmdC5vd25lckRvY3VtZW50LG49biYmKG4uZGVmYXVsdFZpZXd8fG4ucGFyZW50V2luZG93KTtpZigobj1ufHxsKS5FbGVtZW50JiZuLkxvY2F0aW9uKXt2YXIgcj1uO2JyZWFrIHR9fWNhdGNoKHQpe31yPW51bGx9aWYociYmdm9pZCAwIT09cltlXSYmKCF0fHwhKHQgaW5zdGFuY2VvZiByW2VdKSYmKHQgaW5zdGFuY2VvZiByLkxvY2F0aW9ufHx0IGluc3RhbmNlb2Ygci5FbGVtZW50KSkpe2lmKGcodCkpdHJ5e3ZhciBpPXQuY29uc3RydWN0b3IuZGlzcGxheU5hbWV8fHQuY29uc3RydWN0b3IubmFtZXx8T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWNhdGNoKHQpe2k9IjxvYmplY3QgY291bGQgbm90IGJlIHN0cmluZ2lmaWVkPiJ9ZWxzZSBpPXZvaWQgMD09PXQ/InVuZGVmaW5lZCI6bnVsbD09PXQ/Im51bGwiOnR5cGVvZiB0O08oIkFyZ3VtZW50IGlzIG5vdCBhICVzIChvciBhIG5vbi1FbGVtZW50LCBub24tTG9jYXRpb24gbW9jayk7IGdvdDogJXMiLGUsaSl9fWZ1bmN0aW9uIHB0KHQsZSl7dGhpcy5hPXQ9PT15dCYmZXx8IiIsdGhpcy5iPWd0fWZ1bmN0aW9uIGR0KHQpe3JldHVybiB0IGluc3RhbmNlb2YgcHQmJnQuY29uc3RydWN0b3I9PT1wdCYmdC5iPT09Z3Q/dC5hOihPKCJleHBlY3RlZCBvYmplY3Qgb2YgdHlwZSBDb25zdCwgZ290ICciK3QrIiciKSwidHlwZV9lcnJvcjpDb25zdCIpfXB0LnByb3RvdHlwZS5zYT0hMCxwdC5wcm90b3R5cGUucmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hfSxwdC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iQ29uc3R7Iit0aGlzLmErIn0ifTt2YXIgdnQsZ3Q9e30seXQ9e307ZnVuY3Rpb24gbXQoKXtpZih2b2lkIDA9PT12dCl7dmFyIHQ9bnVsbCxlPWwudHJ1c3RlZFR5cGVzO2lmKGUmJmUuY3JlYXRlUG9saWN5KXt0cnl7dD1lLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpfLGNyZWF0ZVNjcmlwdDpfLGNyZWF0ZVNjcmlwdFVSTDpffSl9Y2F0Y2godCl7bC5jb25zb2xlJiZsLmNvbnNvbGUuZXJyb3IodC5tZXNzYWdlKX12dD10fWVsc2UgdnQ9dH1yZXR1cm4gdnR9ZnVuY3Rpb24gYnQodCxlKXt0aGlzLmE9ZT09PUV0P3Q6IiJ9ZnVuY3Rpb24gd3QodCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBidCYmdC5jb25zdHJ1Y3Rvcj09PWJ0P3QuYTooTygiZXhwZWN0ZWQgb2JqZWN0IG9mIHR5cGUgVHJ1c3RlZFJlc291cmNlVXJsLCBnb3QgJyIrdCsiJyBvZiB0eXBlICIrcCh0KSksInR5cGVfZXJyb3I6VHJ1c3RlZFJlc291cmNlVXJsIil9ZnVuY3Rpb24gX3QodCxuKXt2YXIgZSxyPWR0KHQpO2lmKCFUdC50ZXN0KHIpKXRocm93IEVycm9yKCJJbnZhbGlkIFRydXN0ZWRSZXNvdXJjZVVybCBmb3JtYXQ6ICIrcik7cmV0dXJuIHQ9ci5yZXBsYWNlKEl0LGZ1bmN0aW9uKHQsZSl7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLGUpKXRocm93IEVycm9yKCdGb3VuZCBtYXJrZXIsICInK2UrJyIsIGluIGZvcm1hdCBzdHJpbmcsICInK3IrJyIsIGJ1dCBubyB2YWxpZCBsYWJlbCBtYXBwaW5nIGZvdW5kIGluIGFyZ3M6ICcrSlNPTi5zdHJpbmdpZnkobikpO3JldHVybih0PW5bZV0paW5zdGFuY2VvZiBwdD9kdCh0KTplbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKHQpKX0pLGU9dCx0PW10KCksbmV3IGJ0KGU9dD90LmNyZWF0ZVNjcmlwdFVSTChlKTplLEV0KX1idC5wcm90b3R5cGUuc2E9ITAsYnQucHJvdG90eXBlLnJhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYS50b1N0cmluZygpfSxidC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iVHJ1c3RlZFJlc291cmNlVXJseyIrdGhpcy5hKyJ9In07dmFyIEl0PS8leyhcdyspfS9nLFR0PS9eKChodHRwczopP1wvXC9bMC05YS16LjpbXF0tXStcL3xcL1teL1xcXXxbXjovXFwlXStcL3xbXjovXFwlXSpbPyNdfGFib3V0OmJsYW5rIykvaSxFdD17fTtmdW5jdGlvbiBTdCh0LGUpe3RoaXMuYT1lPT09T3Q/dDoiIn1mdW5jdGlvbiBDdCh0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIFN0JiZ0LmNvbnN0cnVjdG9yPT09U3Q/dC5hOihPKCJleHBlY3RlZCBvYmplY3Qgb2YgdHlwZSBTYWZlVXJsLCBnb3QgJyIrdCsiJyBvZiB0eXBlICIrcCh0KSksInR5cGVfZXJyb3I6U2FmZVVybCIpfVN0LnByb3RvdHlwZS5zYT0hMCxTdC5wcm90b3R5cGUucmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hLnRvU3RyaW5nKCl9LFN0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJTYWZlVXJseyIrdGhpcy5hKyJ9In07dmFyIE50PS9eKD86YXVkaW9cLyg/OjNncHAyfDNncHB8YWFjfEwxNnxtaWRpfG1wM3xtcDR8bXBlZ3xvZ2F8b2dnfG9wdXN8eC1tNGF8eC1tYXRyb3NrYXx4LXdhdnx3YXZ8d2VibSl8Zm9udFwvXHcrfGltYWdlXC8oPzpibXB8Z2lmfGpwZWd8anBnfHBuZ3x0aWZmfHdlYnB8eC1pY29uKXx0ZXh0XC9jc3Z8dmlkZW9cLyg/Om1wZWd8bXA0fG9nZ3x3ZWJtfHF1aWNrdGltZXx4LW1hdHJvc2thKSkoPzo7XHcrPSg/Olx3K3wiW1x3Oyw9IF0rIikpKiQvaSxBdD0vXmRhdGE6KC4qKTtiYXNlNjQsW2EtejAtOStcL10rPSokL2ksa3Q9L14oPzooPzpodHRwcz98bWFpbHRvfGZ0cCk6fFteOi8/I10qKD86Wy8/I118JCkpL2k7ZnVuY3Rpb24gUnQodCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBTdD90Oih0PSJvYmplY3QiPT10eXBlb2YgdCYmdC5zYT90LnJhKCk6U3RyaW5nKHQpLHQ9a3QudGVzdCh0KXx8KGU9KHQ9KHQ9U3RyaW5nKHQpKS5yZXBsYWNlKC8oJTBBfCUwRCkvZywiIikpLm1hdGNoKEF0KSkmJk50LnRlc3QoZVsxXSk/bmV3IFN0KHQsT3QpOm51bGwpO3ZhciBlfWZ1bmN0aW9uIFB0KHQpe3JldHVybiB0IGluc3RhbmNlb2YgU3Q/dDoodD0ib2JqZWN0Ij09dHlwZW9mIHQmJnQuc2E/dC5yYSgpOlN0cmluZyh0KSxuZXcgU3QodD0ha3QudGVzdCh0KT8iYWJvdXQ6aW52YWxpZCN6Q2xvc3VyZXoiOnQsT3QpKX12YXIgT3Q9e30sRHQ9bmV3IFN0KCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIsT3QpO2Z1bmN0aW9uIHh0KHQsZSxuKXt0aGlzLmE9bj09PUx0P3Q6IiJ9eHQucHJvdG90eXBlLnNhPSEwLHh0LnByb3RvdHlwZS5yYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmEudG9TdHJpbmcoKX0seHQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIlNhZmVIdG1seyIrdGhpcy5hKyJ9In07dmFyIEx0PXt9O2Z1bmN0aW9uIE10KHQsZSxuLHIpe3JldHVybiB0PXQgaW5zdGFuY2VvZiBTdD90OlB0KHQpLGU9ZXx8bCxuPW4gaW5zdGFuY2VvZiBwdD9kdChuKTpufHwiIixlLm9wZW4oQ3QodCksbixyLHZvaWQgMCl9ZnVuY3Rpb24gRnQodCl7Zm9yKHZhciBlPXQuc3BsaXQoIiVzIiksbj0iIixyPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyLmxlbmd0aCYmMTxlLmxlbmd0aDspbis9ZS5zaGlmdCgpK3Iuc2hpZnQoKTtyZXR1cm4gbitlLmpvaW4oIiVzIil9ZnVuY3Rpb24gVXQodCl7cmV0dXJuIG50LnRlc3QodCkmJigtMSE9KHQ9LTEhPSh0PS0xIT0odD0tMSE9KHQ9LTEhPSh0PS0xIT10LmluZGV4T2YoIiYiKT90LnJlcGxhY2UoWCwiJmFtcDsiKTp0KS5pbmRleE9mKCI8Iik/dC5yZXBsYWNlKEosIiZsdDsiKTp0KS5pbmRleE9mKCI+Iik/dC5yZXBsYWNlKCQsIiZndDsiKTp0KS5pbmRleE9mKCciJyk/dC5yZXBsYWNlKFosIiZxdW90OyIpOnQpLmluZGV4T2YoIiciKT90LnJlcGxhY2UodHQsIiYjMzk7Iik6dCkuaW5kZXhPZigiXDAiKSYmKHQ9dC5yZXBsYWNlKGV0LCImIzA7IikpKSx0fWZ1bmN0aW9uIGp0KHQpe3JldHVybiBqdFsiICJdKHQpLHR9anRbIiAiXT1zO3ZhciBxdCxWdD1zdCgiT3BlcmEiKSxCdD1zdCgiVHJpZGVudCIpfHxzdCgiTVNJRSIpLEt0PXN0KCJFZGdlIiksV3Q9S3R8fEJ0LEh0PXN0KCJHZWNrbyIpJiYhKHJ0KFEudG9Mb3dlckNhc2UoKSwid2Via2l0IikmJiFzdCgiRWRnZSIpKSYmIShzdCgiVHJpZGVudCIpfHxzdCgiTVNJRSIpKSYmIXN0KCJFZGdlIiksR3Q9cnQoUS50b0xvd2VyQ2FzZSgpLCJ3ZWJraXQiKSYmIXN0KCJFZGdlIik7ZnVuY3Rpb24genQoKXt2YXIgdD1sLmRvY3VtZW50O3JldHVybiB0P3QuZG9jdW1lbnRNb2RlOnZvaWQgMH10Ont2YXIgUXQ9IiIsWXQ9KFl0PVEsSHQ/L3J2OihbXlwpO10rKShcKXw7KS8uZXhlYyhZdCk6S3Q/L0VkZ2VcLyhbXGRcLl0rKS8uZXhlYyhZdCk6QnQ/L1xiKD86TVNJRXxydilbOiBdKFteXCk7XSspKFwpfDspLy5leGVjKFl0KTpHdD8vV2ViS2l0XC8oXFMrKS8uZXhlYyhZdCk6VnQ/Lyg/OlZlcnNpb24pWyBcL10/KFxTKykvLmV4ZWMoWXQpOnZvaWQgMCk7aWYoWXQmJihRdD1ZdD9ZdFsxXToiIiksQnQpe1l0PXp0KCk7aWYobnVsbCE9WXQmJll0PnBhcnNlRmxvYXQoUXQpKXtxdD1TdHJpbmcoWXQpO2JyZWFrIHR9fXF0PVF0fXZhciBYdD17fTtmdW5jdGlvbiBKdChhKXtyZXR1cm4gdD1hLGU9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9MCxlPVkoU3RyaW5nKHF0KSkuc3BsaXQoIi4iKSxuPVkoU3RyaW5nKGEpKS5zcGxpdCgiLiIpLHI9TWF0aC5tYXgoZS5sZW5ndGgsbi5sZW5ndGgpLGk9MDswPT10JiZpPHI7aSsrKWZvcih2YXIgbz1lW2ldfHwiIixzPW5baV18fCIiO289LyhcZCopKFxEKikoLiopLy5leGVjKG8pfHxbIiIsIiIsIiIsIiJdLHM9LyhcZCopKFxEKikoLiopLy5leGVjKHMpfHxbIiIsIiIsIiIsIiJdLCgwIT1vWzBdLmxlbmd0aHx8MCE9c1swXS5sZW5ndGgpJiYodD1pdCgwPT1vWzFdLmxlbmd0aD8wOnBhcnNlSW50KG9bMV0sMTApLDA9PXNbMV0ubGVuZ3RoPzA6cGFyc2VJbnQoc1sxXSwxMCkpfHxpdCgwPT1vWzJdLmxlbmd0aCwwPT1zWzJdLmxlbmd0aCl8fGl0KG9bMl0sc1syXSksbz1vWzNdLHM9c1szXSwwPT10KTspO3JldHVybiAwPD10fSxuPVh0LE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHQpP25bdF06blt0XT1lKHQpO3ZhciB0LGUsbn12YXIgJHQ9bC5kb2N1bWVudCYmQnQmJih6dCgpfHxwYXJzZUludChxdCwxMCkpfHx2b2lkIDA7dHJ5e25ldyBzZWxmLk9mZnNjcmVlbkNhbnZhcygwLDApLmdldENvbnRleHQoIjJkIil9Y2F0Y2godCl7fXZhciBadD0hQnR8fDk8PU51bWJlcigkdCk7ZnVuY3Rpb24gdGUodCl7dmFyIGU9ZG9jdW1lbnQ7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P2UuZ2V0RWxlbWVudEJ5SWQodCk6dH1mdW5jdGlvbiBlZShuLHQpe2F0KHQsZnVuY3Rpb24odCxlKXt0JiYib2JqZWN0Ij09dHlwZW9mIHQmJnQuc2EmJih0PXQucmEoKSksInN0eWxlIj09ZT9uLnN0eWxlLmNzc1RleHQ9dDoiY2xhc3MiPT1lP24uY2xhc3NOYW1lPXQ6ImZvciI9PWU/bi5odG1sRm9yPXQ6aWUuaGFzT3duUHJvcGVydHkoZSk/bi5zZXRBdHRyaWJ1dGUoaWVbZV0sdCk6MD09ZS5sYXN0SW5kZXhPZigiYXJpYS0iLDApfHwwPT1lLmxhc3RJbmRleE9mKCJkYXRhLSIsMCk/bi5zZXRBdHRyaWJ1dGUoZSx0KTpuW2VdPXR9KX12YXIgbmUscmUsaWU9e2NlbGxwYWRkaW5nOiJjZWxsUGFkZGluZyIsY2VsbHNwYWNpbmc6ImNlbGxTcGFjaW5nIixjb2xzcGFuOiJjb2xTcGFuIixmcmFtZWJvcmRlcjoiZnJhbWVCb3JkZXIiLGhlaWdodDoiaGVpZ2h0IixtYXhsZW5ndGg6Im1heExlbmd0aCIsbm9uY2U6Im5vbmNlIixyb2xlOiJyb2xlIixyb3dzcGFuOiJyb3dTcGFuIix0eXBlOiJ0eXBlIix1c2VtYXA6InVzZU1hcCIsdmFsaWduOiJ2QWxpZ24iLHdpZHRoOiJ3aWR0aCJ9O2Z1bmN0aW9uIG9lKCl7dmFyIHQsZT1hcmd1bWVudHMsbj1kb2N1bWVudCxyPVN0cmluZyhlWzBdKSxpPWVbMV07cmV0dXJuIVp0JiZpJiYoaS5uYW1lfHxpLnR5cGUpJiYocj1bIjwiLHJdLGkubmFtZSYmci5wdXNoKCcgbmFtZT0iJyxVdChpLm5hbWUpLCciJyksaS50eXBlJiYoci5wdXNoKCcgdHlwZT0iJyxVdChpLnR5cGUpLCciJyksbHQodD17fSxpKSxkZWxldGUgdC50eXBlLGk9dCksci5wdXNoKCI+Iikscj1yLmpvaW4oIiIpKSxyPXNlKG4sciksaSYmKCJzdHJpbmciPT10eXBlb2YgaT9yLmNsYXNzTmFtZT1pOkFycmF5LmlzQXJyYXkoaSk/ci5jbGFzc05hbWU9aS5qb2luKCIgIik6ZWUocixpKSksMjxlLmxlbmd0aCYmZnVuY3Rpb24oZSxuLHQpe2Z1bmN0aW9uIHIodCl7dCYmbi5hcHBlbmRDaGlsZCgic3RyaW5nIj09dHlwZW9mIHQ/ZS5jcmVhdGVUZXh0Tm9kZSh0KTp0KX1mb3IodmFyIGk9MjtpPHQubGVuZ3RoO2krKyl7dmFyIG89dFtpXTtpZighZChvKXx8ZyhvKSYmMDxvLm5vZGVUeXBlKXIobyk7ZWxzZXt0OntpZihvJiYibnVtYmVyIj09dHlwZW9mIG8ubGVuZ3RoKXtpZihnKG8pKXt2YXIgcz0iZnVuY3Rpb24iPT10eXBlb2Ygby5pdGVtfHwic3RyaW5nIj09dHlwZW9mIG8uaXRlbTticmVhayB0fWlmKHYobykpe3M9ImZ1bmN0aW9uIj09dHlwZW9mIG8uaXRlbTticmVhayB0fX1zPSExfWoocz96KG8pOm8scil9fX0obixyLGUpLHJ9ZnVuY3Rpb24gc2UodCxlKXtyZXR1cm4gZT1TdHJpbmcoZSksImFwcGxpY2F0aW9uL3hodG1sK3htbCI9PT10LmNvbnRlbnRUeXBlJiYoZT1lLnRvTG93ZXJDYXNlKCkpLHQuY3JlYXRlRWxlbWVudChlKX1mdW5jdGlvbiBhZSh0KXtsLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyB0fSwwKX1mdW5jdGlvbiB1ZSh0LGUpe3JlfHxmdW5jdGlvbigpe3t2YXIgdDtyZT1sLlByb21pc2UmJmwuUHJvbWlzZS5yZXNvbHZlPyh0PWwuUHJvbWlzZS5yZXNvbHZlKHZvaWQgMCksZnVuY3Rpb24oKXt0LnRoZW4obGUpfSk6ZnVuY3Rpb24oKXt2YXIgdD1sZTshdihsLnNldEltbWVkaWF0ZSl8fGwuV2luZG93JiZsLldpbmRvdy5wcm90b3R5cGUmJiFzdCgiRWRnZSIpJiZsLldpbmRvdy5wcm90b3R5cGUuc2V0SW1tZWRpYXRlPT1sLnNldEltbWVkaWF0ZT8obmU9bmV8fGZ1bmN0aW9uKCl7dmFyIHQ9bC5NZXNzYWdlQ2hhbm5lbDtpZih2b2lkIDA9PT0odD12b2lkIDA9PT10JiYidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93LnBvc3RNZXNzYWdlJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciYmIXN0KCJQcmVzdG8iKT9mdW5jdGlvbigpe3ZhciB0PXNlKGRvY3VtZW50LCJJRlJBTUUiKTt0LnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hcHBlbmRDaGlsZCh0KTt2YXIgZT10LmNvbnRlbnRXaW5kb3c7KHQ9ZS5kb2N1bWVudCkub3BlbigpLHQuY2xvc2UoKTt2YXIgbj0iY2FsbEltbWVkaWF0ZSIrTWF0aC5yYW5kb20oKSxyPSJmaWxlOiI9PWUubG9jYXRpb24ucHJvdG9jb2w/IioiOmUubG9jYXRpb24ucHJvdG9jb2wrIi8vIitlLmxvY2F0aW9uLmhvc3Q7dD1tKGZ1bmN0aW9uKHQpeyIqIiE9ciYmdC5vcmlnaW4hPXJ8fHQuZGF0YSE9bnx8dGhpcy5wb3J0MS5vbm1lc3NhZ2UoKX0sdGhpcyksZS5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0LCExKSx0aGlzLnBvcnQxPXt9LHRoaXMucG9ydDI9e3Bvc3RNZXNzYWdlOmZ1bmN0aW9uKCl7ZS5wb3N0TWVzc2FnZShuLHIpfX19OnQpfHxzdCgiVHJpZGVudCIpfHxzdCgiTVNJRSIpKXJldHVybiBmdW5jdGlvbih0KXtsLnNldFRpbWVvdXQodCwwKX07dmFyIGU9bmV3IHQsbj17fSxyPW47cmV0dXJuIGUucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKCl7dmFyIHQ7dm9pZCAwIT09bi5uZXh0JiYodD0obj1uLm5leHQpLkdiLG4uR2I9bnVsbCx0KCkpfSxmdW5jdGlvbih0KXtyLm5leHQ9e0diOnR9LHI9ci5uZXh0LGUucG9ydDIucG9zdE1lc3NhZ2UoMCl9fSgpKSh0KTpsLnNldEltbWVkaWF0ZSh0KX19fSgpLGNlfHwocmUoKSxjZT0hMCksaGUuYWRkKHQsZSl9dmFyIGNlPSExLGhlPW5ldyBMO2Z1bmN0aW9uIGxlKCl7Zm9yKHZhciB0LGUsbjtuPWU9dm9pZCAwLG49bnVsbCwoZT1oZSkuYSYmKG49ZS5hLGUuYT1lLmEubmV4dCxlLmF8fChlLmI9bnVsbCksbi5uZXh0PW51bGwpLHQ9bjspe3RyeXt0LmEuY2FsbCh0LmIpfWNhdGNoKHQpe2FlKHQpfXgoTSx0KX1jZT0hMX1mdW5jdGlvbiBmZSh0LGUpe2lmKHRoaXMuYT1wZSx0aGlzLmk9dm9pZCAwLHRoaXMuZj10aGlzLmI9dGhpcy5jPW51bGwsdGhpcy5nPXRoaXMuaD0hMSx0IT1zKXRyeXt2YXIgbj10aGlzO3QuY2FsbChlLGZ1bmN0aW9uKHQpe1NlKG4sZGUsdCl9LGZ1bmN0aW9uKHQpe2lmKCEodCBpbnN0YW5jZW9mIE9lKSl0cnl7aWYodCBpbnN0YW5jZW9mIEVycm9yKXRocm93IHQ7dGhyb3cgRXJyb3IoIlByb21pc2UgcmVqZWN0ZWQuIil9Y2F0Y2godCl7fVNlKG4sdmUsdCl9KX1jYXRjaCh0KXtTZSh0aGlzLHZlLHQpfX12YXIgcGU9MCxkZT0yLHZlPTM7ZnVuY3Rpb24gZ2UoKXt0aGlzLm5leHQ9dGhpcy5mPXRoaXMuYj10aGlzLmc9dGhpcy5hPW51bGwsdGhpcy5jPSExfWdlLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuZj10aGlzLmI9dGhpcy5nPXRoaXMuYT1udWxsLHRoaXMuYz0hMX07dmFyIHllPW5ldyBEKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBnZX0sZnVuY3Rpb24odCl7dC5yZXNldCgpfSk7ZnVuY3Rpb24gbWUodCxlLG4pe3ZhciByPXllLmdldCgpO3JldHVybiByLmc9dCxyLmI9ZSxyLmY9bixyfWZ1bmN0aW9uIGJlKHQpe2lmKHQgaW5zdGFuY2VvZiBmZSlyZXR1cm4gdDt2YXIgZT1uZXcgZmUocyk7cmV0dXJuIFNlKGUsZGUsdCksZX1mdW5jdGlvbiB3ZShuKXtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKHQsZSl7ZShuKX0pfWZ1bmN0aW9uIF9lKHQsZSxuKXtDZSh0LGUsbixudWxsKXx8dWUoYihlLHQpKX1mdW5jdGlvbiBJZShuKXtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKHIpe3ZhciBpPW4ubGVuZ3RoLG89W107aWYoaSlmb3IodmFyIHQ9ZnVuY3Rpb24odCxlLG4pe2ktLSxvW3RdPWU/e1BiOiEwLHZhbHVlOm59OntQYjohMSxyZWFzb246bn0sMD09aSYmcihvKX0sZT0wO2U8bi5sZW5ndGg7ZSsrKV9lKG5bZV0sYih0LGUsITApLGIodCxlLCExKSk7ZWxzZSByKG8pfSl9ZnVuY3Rpb24gVGUodCxlKXt0LmJ8fHQuYSE9ZGUmJnQuYSE9dmV8fE5lKHQpLHQuZj90LmYubmV4dD1lOnQuYj1lLHQuZj1lfWZ1bmN0aW9uIEVlKHQsaSxvLHMpe3ZhciBlPW1lKG51bGwsbnVsbCxudWxsKTtyZXR1cm4gZS5hPW5ldyBmZShmdW5jdGlvbihuLHIpe2UuZz1pP2Z1bmN0aW9uKHQpe3RyeXt2YXIgZT1pLmNhbGwocyx0KTtuKGUpfWNhdGNoKHQpe3IodCl9fTpuLGUuYj1vP2Z1bmN0aW9uKHQpe3RyeXt2YXIgZT1vLmNhbGwocyx0KTt2b2lkIDA9PT1lJiZ0IGluc3RhbmNlb2YgT2U/cih0KTpuKGUpfWNhdGNoKHQpe3IodCl9fTpyfSksVGUoZS5hLmM9dCxlKSxlLmF9ZnVuY3Rpb24gU2UodCxlLG4pe3ZhciByLGk7dC5hPT1wZSYmKHQ9PT1uJiYoZT12ZSxuPW5ldyBUeXBlRXJyb3IoIlByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmIikpLHQuYT0xLENlKG4sdC4kYyx0LmFkLHQpfHwodC5pPW4sdC5hPWUsdC5jPW51bGwsTmUodCksZSE9dmV8fG4gaW5zdGFuY2VvZiBPZXx8KGk9biwocj10KS5nPSEwLHVlKGZ1bmN0aW9uKCl7ci5nJiZQZS5jYWxsKG51bGwsaSl9KSkpKX1mdW5jdGlvbiBDZSh0LGUsbixyKXtpZih0IGluc3RhbmNlb2YgZmUpcmV0dXJuIFRlKHQsbWUoZXx8cyxufHxudWxsLHIpKSwxO2lmKGsodCkpcmV0dXJuIHQudGhlbihlLG4sciksMTtpZihnKHQpKXRyeXt2YXIgaT10LnRoZW47aWYodihpKSlyZXR1cm4gZnVuY3Rpb24odCxlLG4scixpKXtmdW5jdGlvbiBvKHQpe3N8fChzPSEwLHIuY2FsbChpLHQpKX12YXIgcz0hMTt0cnl7ZS5jYWxsKHQsZnVuY3Rpb24odCl7c3x8KHM9ITAsbi5jYWxsKGksdCkpfSxvKX1jYXRjaCh0KXtvKHQpfX0odCxpLGUsbixyKSwxfWNhdGNoKHQpe3JldHVybiBuLmNhbGwocix0KSwxfX1mdW5jdGlvbiBOZSh0KXt0Lmh8fCh0Lmg9ITAsdWUodC5nYyx0KSl9ZnVuY3Rpb24gQWUodCl7dmFyIGU9bnVsbDtyZXR1cm4gdC5iJiYoZT10LmIsdC5iPWUubmV4dCxlLm5leHQ9bnVsbCksdC5ifHwodC5mPW51bGwpLGV9ZnVuY3Rpb24ga2UodCxlLG4scil7aWYobj09dmUmJmUuYiYmIWUuYylmb3IoO3QmJnQuZzt0PXQuYyl0Lmc9ITE7aWYoZS5hKWUuYS5jPW51bGwsUmUoZSxuLHIpO2Vsc2UgdHJ5e2UuYz9lLmcuY2FsbChlLmYpOlJlKGUsbixyKX1jYXRjaCh0KXtQZS5jYWxsKG51bGwsdCl9eCh5ZSxlKX1mdW5jdGlvbiBSZSh0LGUsbil7ZT09ZGU/dC5nLmNhbGwodC5mLG4pOnQuYiYmdC5iLmNhbGwodC5mLG4pfWZlLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gRWUodGhpcyx2KHQpP3Q6bnVsbCx2KGUpP2U6bnVsbCxuKX0sZmUucHJvdG90eXBlLiRnb29nX1RoZW5hYmxlPSEwLCh0PWZlLnByb3RvdHlwZSkub2E9ZnVuY3Rpb24odCxlKXtyZXR1cm4odD1tZSh0LHQsZSkpLmM9ITAsVGUodGhpcyx0KSx0aGlzfSx0Lm89ZnVuY3Rpb24odCxlKXtyZXR1cm4gRWUodGhpcyxudWxsLHQsZSl9LHQuY2FuY2VsPWZ1bmN0aW9uKHQpe3ZhciBlO3RoaXMuYT09cGUmJihlPW5ldyBPZSh0KSx1ZShmdW5jdGlvbigpeyFmdW5jdGlvbiB0KGUsbil7aWYoZS5hPT1wZSlpZihlLmMpe3ZhciByPWUuYztpZihyLmIpe2Zvcih2YXIgaT0wLG89bnVsbCxzPW51bGwsYT1yLmI7YSYmKGEuY3x8KGkrKywhKChvPWEuYT09ZT9hOm8pJiYxPGkpKSk7YT1hLm5leHQpb3x8KHM9YSk7byYmKHIuYT09cGUmJjE9PWk/dChyLG4pOihzPygoaT1zKS5uZXh0PT1yLmYmJihyLmY9aSksaS5uZXh0PWkubmV4dC5uZXh0KTpBZShyKSxrZShyLG8sdmUsbikpKX1lLmM9bnVsbH1lbHNlIFNlKGUsdmUsbil9KHRoaXMsZSl9LHRoaXMpKX0sdC4kYz1mdW5jdGlvbih0KXt0aGlzLmE9cGUsU2UodGhpcyxkZSx0KX0sdC5hZD1mdW5jdGlvbih0KXt0aGlzLmE9cGUsU2UodGhpcyx2ZSx0KX0sdC5nYz1mdW5jdGlvbigpe2Zvcih2YXIgdDt0PUFlKHRoaXMpOylrZSh0aGlzLHQsdGhpcy5hLHRoaXMuaSk7dGhpcy5oPSExfTt2YXIgUGU9YWU7ZnVuY3Rpb24gT2UodCl7Ui5jYWxsKHRoaXMsdCl9ZnVuY3Rpb24gRGUoKXt0aGlzLnhhPXRoaXMueGEsdGhpcy5wYT10aGlzLnBhfXcoT2UsUik7dmFyIHhlPTA7ZnVuY3Rpb24gTGUodCl7dC54YXx8KHQueGE9ITAsdC5EYSgpLDA9PXhlKXx8KHQ9dCxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxuKSYmdFtuXXx8KHRbbl09KytyKSl9RGUucHJvdG90eXBlLnhhPSEoT2UucHJvdG90eXBlLm5hbWU9ImNhbmNlbCIpLERlLnByb3RvdHlwZS5EYT1mdW5jdGlvbigpe2lmKHRoaXMucGEpZm9yKDt0aGlzLnBhLmxlbmd0aDspdGhpcy5wYS5zaGlmdCgpKCl9O3ZhciBNZT1PYmplY3QuZnJlZXplfHxmdW5jdGlvbih0KXtyZXR1cm4gdH0sRmU9IUJ0fHw5PD1OdW1iZXIoJHQpLFVlPUJ0JiYhSnQoIjkiKSxqZT1mdW5jdGlvbigpe2lmKCFsLmFkZEV2ZW50TGlzdGVuZXJ8fCFPYmplY3QuZGVmaW5lUHJvcGVydHkpcmV0dXJuITE7dmFyIHQ9ITEsZT1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXt0PSEwfX0pO3RyeXtsLmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLHMsZSksbC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0ZXN0IixzLGUpfWNhdGNoKHQpe31yZXR1cm4gdH0oKTtmdW5jdGlvbiBxZSh0LGUpe3RoaXMudHlwZT10LHRoaXMuYj10aGlzLnRhcmdldD1lLHRoaXMuZGVmYXVsdFByZXZlbnRlZD0hMX1mdW5jdGlvbiBWZSh0LGUpe2lmKHFlLmNhbGwodGhpcyx0P3QudHlwZToiIiksdGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMuYj10aGlzLnRhcmdldD1udWxsLHRoaXMuYnV0dG9uPXRoaXMuc2NyZWVuWT10aGlzLnNjcmVlblg9dGhpcy5jbGllbnRZPXRoaXMuY2xpZW50WD0wLHRoaXMua2V5PSIiLHRoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT0hMSx0aGlzLnBvaW50ZXJJZD0wLHRoaXMucG9pbnRlclR5cGU9IiIsdGhpcy5hPW51bGwsdCl7dmFyIG49dGhpcy50eXBlPXQudHlwZSxyPXQuY2hhbmdlZFRvdWNoZXMmJnQuY2hhbmdlZFRvdWNoZXMubGVuZ3RoP3QuY2hhbmdlZFRvdWNoZXNbMF06bnVsbDtpZih0aGlzLnRhcmdldD10LnRhcmdldHx8dC5zcmNFbGVtZW50LHRoaXMuYj1lLGU9dC5yZWxhdGVkVGFyZ2V0KXtpZihIdCl7dDp7dHJ5e2p0KGUubm9kZU5hbWUpO3ZhciBpPSEwO2JyZWFrIHR9Y2F0Y2godCl7fWk9ITF9aXx8KGU9bnVsbCl9fWVsc2UibW91c2VvdmVyIj09bj9lPXQuZnJvbUVsZW1lbnQ6Im1vdXNlb3V0Ij09biYmKGU9dC50b0VsZW1lbnQpO3RoaXMucmVsYXRlZFRhcmdldD1lLHI/KHRoaXMuY2xpZW50WD12b2lkIDAhPT1yLmNsaWVudFg/ci5jbGllbnRYOnIucGFnZVgsdGhpcy5jbGllbnRZPXZvaWQgMCE9PXIuY2xpZW50WT9yLmNsaWVudFk6ci5wYWdlWSx0aGlzLnNjcmVlblg9ci5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1yLnNjcmVlbll8fDApOih0aGlzLmNsaWVudFg9dm9pZCAwIT09dC5jbGllbnRYP3QuY2xpZW50WDp0LnBhZ2VYLHRoaXMuY2xpZW50WT12b2lkIDAhPT10LmNsaWVudFk/dC5jbGllbnRZOnQucGFnZVksdGhpcy5zY3JlZW5YPXQuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9dC5zY3JlZW5ZfHwwKSx0aGlzLmJ1dHRvbj10LmJ1dHRvbix0aGlzLmtleT10LmtleXx8IiIsdGhpcy5jdHJsS2V5PXQuY3RybEtleSx0aGlzLmFsdEtleT10LmFsdEtleSx0aGlzLnNoaWZ0S2V5PXQuc2hpZnRLZXksdGhpcy5tZXRhS2V5PXQubWV0YUtleSx0aGlzLnBvaW50ZXJJZD10LnBvaW50ZXJJZHx8MCx0aGlzLnBvaW50ZXJUeXBlPSJzdHJpbmciPT10eXBlb2YgdC5wb2ludGVyVHlwZT90LnBvaW50ZXJUeXBlOkJlW3QucG9pbnRlclR5cGVdfHwiIiwodGhpcy5hPXQpLmRlZmF1bHRQcmV2ZW50ZWQmJnRoaXMucHJldmVudERlZmF1bHQoKX19cWUucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwfSx3KFZlLHFlKTt2YXIgQmU9TWUoezI6InRvdWNoIiwzOiJwZW4iLDQ6Im1vdXNlIn0pO1ZlLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe1ZlLmFiLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyk7dmFyIHQ9dGhpcy5hO2lmKHQucHJldmVudERlZmF1bHQpdC5wcmV2ZW50RGVmYXVsdCgpO2Vsc2UgaWYodC5yZXR1cm5WYWx1ZT0hMSxVZSl0cnl7KHQuY3RybEtleXx8MTEyPD10LmtleUNvZGUmJnQua2V5Q29kZTw9MTIzKSYmKHQua2V5Q29kZT0tMSl9Y2F0Y2godCl7fX0sVmUucHJvdG90eXBlLmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hfTt2YXIgS2U9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKygxZTYqTWF0aC5yYW5kb20oKXwwKSxXZT0wO2Z1bmN0aW9uIEhlKHQsZSxuLHIsaSl7dGhpcy5saXN0ZW5lcj10LHRoaXMucHJveHk9bnVsbCx0aGlzLnNyYz1lLHRoaXMudHlwZT1uLHRoaXMuY2FwdHVyZT0hIXIsdGhpcy5WYT1pLHRoaXMua2V5PSsrV2UsdGhpcy52YT10aGlzLlBhPSExfWZ1bmN0aW9uIEdlKHQpe3QudmE9ITAsdC5saXN0ZW5lcj1udWxsLHQucHJveHk9bnVsbCx0LnNyYz1udWxsLHQuVmE9bnVsbH1mdW5jdGlvbiB6ZSh0KXt0aGlzLnNyYz10LHRoaXMuYT17fSx0aGlzLmI9MH1mdW5jdGlvbiBRZSh0LGUpe3ZhciBuPWUudHlwZTtuIGluIHQuYSYmVyh0LmFbbl0sZSkmJihHZShlKSwwPT10LmFbbl0ubGVuZ3RoJiYoZGVsZXRlIHQuYVtuXSx0LmItLSkpfWZ1bmN0aW9uIFllKHQsZSxuLHIpe2Zvcih2YXIgaT0wO2k8dC5sZW5ndGg7KytpKXt2YXIgbz10W2ldO2lmKCFvLnZhJiZvLmxpc3RlbmVyPT1lJiZvLmNhcHR1cmU9PSEhbiYmby5WYT09cilyZXR1cm4gaX1yZXR1cm4tMX16ZS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKHQsZSxuLHIsaSl7dmFyIG89dC50b1N0cmluZygpOyh0PXRoaXMuYVtvXSl8fCh0PXRoaXMuYVtvXT1bXSx0aGlzLmIrKyk7dmFyIHM9WWUodCxlLHIsaSk7cmV0dXJuLTE8cz8oZT10W3NdLG58fChlLlBhPSExKSk6KChlPW5ldyBIZShlLHRoaXMuc3JjLG8sISFyLGkpKS5QYT1uLHQucHVzaChlKSksZX07dmFyIFhlPSJjbG9zdXJlX2xtXyIrKDFlNipNYXRoLnJhbmRvbSgpfDApLEplPXt9O2Z1bmN0aW9uICRlKHQsZSxuLHIsaSl7aWYociYmci5vbmNlKXRuKHQsZSxuLHIsaSk7ZWxzZSBpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgbz0wO288ZS5sZW5ndGg7bysrKSRlKHQsZVtvXSxuLHIsaSk7ZWxzZSBuPWhuKG4pLHQmJnRbS2VdP2ZuKHQsZSxuLGcocik/ISFyLmNhcHR1cmU6ISFyLGkpOlplKHQsZSxuLCExLHIsaSl9ZnVuY3Rpb24gWmUodCxlLG4scixpLG8pe2lmKCFlKXRocm93IEVycm9yKCJJbnZhbGlkIGV2ZW50IHR5cGUiKTt2YXIgcyxhLHU9ZyhpKT8hIWkuY2FwdHVyZTohIWksYz11bih0KTtpZihjfHwodFtYZV09Yz1uZXcgemUodCkpLCEobj1jLmFkZChlLG4scix1LG8pKS5wcm94eSlpZihzPWFuLHI9YT1GZT9mdW5jdGlvbih0KXtyZXR1cm4gcy5jYWxsKGEuc3JjLGEubGlzdGVuZXIsdCl9OmZ1bmN0aW9uKHQpe2lmKCEodD1zLmNhbGwoYS5zcmMsYS5saXN0ZW5lcix0KSkpcmV0dXJuIHR9LChuLnByb3h5PXIpLnNyYz10LHIubGlzdGVuZXI9bix0LmFkZEV2ZW50TGlzdGVuZXIpdm9pZCAwPT09KGk9IWplP3U6aSkmJihpPSExKSx0LmFkZEV2ZW50TGlzdGVuZXIoZS50b1N0cmluZygpLHIsaSk7ZWxzZSBpZih0LmF0dGFjaEV2ZW50KXQuYXR0YWNoRXZlbnQocm4oZS50b1N0cmluZygpKSxyKTtlbHNle2lmKCF0LmFkZExpc3RlbmVyfHwhdC5yZW1vdmVMaXN0ZW5lcil0aHJvdyBFcnJvcigiYWRkRXZlbnRMaXN0ZW5lciBhbmQgYXR0YWNoRXZlbnQgYXJlIHVuYXZhaWxhYmxlLiIpO3QuYWRkTGlzdGVuZXIocil9fWZ1bmN0aW9uIHRuKHQsZSxuLHIsaSl7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIG89MDtvPGUubGVuZ3RoO28rKyl0bih0LGVbb10sbixyLGkpO2Vsc2Ugbj1obihuKSx0JiZ0W0tlXT9wbih0LGUsbixnKHIpPyEhci5jYXB0dXJlOiEhcixpKTpaZSh0LGUsbiwhMCxyLGkpfWZ1bmN0aW9uIGVuKHQsZSxuLHIsaSl7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIG89MDtvPGUubGVuZ3RoO28rKyllbih0LGVbb10sbixyLGkpO2Vsc2Ugcj1nKHIpPyEhci5jYXB0dXJlOiEhcixuPWhuKG4pLHQmJnRbS2VdPyh0PXQudiwoZT1TdHJpbmcoZSkudG9TdHJpbmcoKSlpbiB0LmEmJigtMTwobj1ZZShvPXQuYVtlXSxuLHIsaSkpJiYoR2Uob1tuXSksQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKG8sbiwxKSwwPT1vLmxlbmd0aCYmKGRlbGV0ZSB0LmFbZV0sdC5iLS0pKSkpOih0PXQmJnVuKHQpKSYmKGU9dC5hW2UudG9TdHJpbmcoKV0sKG49KHQ9LTEpPCh0PWU/WWUoZSxuLHIsaSk6dCk/ZVt0XTpudWxsKSYmbm4obikpfWZ1bmN0aW9uIG5uKHQpe3ZhciBlLG4scjsibnVtYmVyIiE9dHlwZW9mIHQmJnQmJiF0LnZhJiYoKGU9dC5zcmMpJiZlW0tlXT9RZShlLnYsdCk6KG49dC50eXBlLHI9dC5wcm94eSxlLnJlbW92ZUV2ZW50TGlzdGVuZXI/ZS5yZW1vdmVFdmVudExpc3RlbmVyKG4scix0LmNhcHR1cmUpOmUuZGV0YWNoRXZlbnQ/ZS5kZXRhY2hFdmVudChybihuKSxyKTplLmFkZExpc3RlbmVyJiZlLnJlbW92ZUxpc3RlbmVyJiZlLnJlbW92ZUxpc3RlbmVyKHIpLChuPXVuKGUpKT8oUWUobix0KSwwPT1uLmImJihuLnNyYz1udWxsLGVbWGVdPW51bGwpKTpHZSh0KSkpfWZ1bmN0aW9uIHJuKHQpe3JldHVybiB0IGluIEplP0plW3RdOkplW3RdPSJvbiIrdH1mdW5jdGlvbiBvbih0LGUsbixyKXt2YXIgaT0hMDtpZigodD11bih0KSkmJihlPXQuYVtlLnRvU3RyaW5nKCldKSlmb3IoZT1lLmNvbmNhdCgpLHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG89ZVt0XTtvJiZvLmNhcHR1cmU9PW4mJiFvLnZhJiYobz1zbihvLHIpLGk9aSYmITEhPT1vKX1yZXR1cm4gaX1mdW5jdGlvbiBzbih0LGUpe3ZhciBuPXQubGlzdGVuZXIscj10LlZhfHx0LnNyYztyZXR1cm4gdC5QYSYmbm4odCksbi5jYWxsKHIsZSl9ZnVuY3Rpb24gYW4odCxlKXtpZih0LnZhKXJldHVybiEwO2lmKEZlKXJldHVybiBzbih0LG5ldyBWZShlLHRoaXMpKTtpZighZSl0OntlPVsid2luZG93IiwiZXZlbnQiXTtmb3IodmFyIG49bCxyPTA7cjxlLmxlbmd0aDtyKyspaWYobnVsbD09KG49bltlW3JdXSkpe2U9bnVsbDticmVhayB0fWU9bn1pZihlPW5ldyBWZShyPWUsdGhpcyksbj0hMCwhKHIua2V5Q29kZTwwfHxudWxsIT1yLnJldHVyblZhbHVlKSl7dDp7dmFyIGk9ITE7aWYoMD09ci5rZXlDb2RlKXRyeXtyLmtleUNvZGU9LTE7YnJlYWsgdH1jYXRjaCh0KXtpPSEwfSFpJiZudWxsIT1yLnJldHVyblZhbHVlfHwoci5yZXR1cm5WYWx1ZT0hMCl9Zm9yKHI9W10saT1lLmI7aTtpPWkucGFyZW50Tm9kZSlyLnB1c2goaSk7Zm9yKHQ9dC50eXBlLGk9ci5sZW5ndGgtMTswPD1pO2ktLSl7ZS5iPXJbaV07dmFyIG89b24ocltpXSx0LCEwLGUpLG49biYmb31mb3IoaT0wO2k8ci5sZW5ndGg7aSsrKWUuYj1yW2ldLG89b24ocltpXSx0LCExLGUpLG49biYmb31yZXR1cm4gbn1mdW5jdGlvbiB1bih0KXtyZXR1cm4odD10W1hlXSlpbnN0YW5jZW9mIHplP3Q6bnVsbH12YXIgY249Il9fY2xvc3VyZV9ldmVudHNfZm5fIisoMWU5Kk1hdGgucmFuZG9tKCk+Pj4wKTtmdW5jdGlvbiBobihlKXtyZXR1cm4gdihlKT9lOihlW2NuXXx8KGVbY25dPWZ1bmN0aW9uKHQpe3JldHVybiBlLmhhbmRsZUV2ZW50KHQpfSksZVtjbl0pfWZ1bmN0aW9uIGxuKCl7RGUuY2FsbCh0aGlzKSx0aGlzLnY9bmV3IHplKHRoaXMpLCh0aGlzLmFjPXRoaXMpLmdiPW51bGx9ZnVuY3Rpb24gZm4odCxlLG4scixpKXt0LnYuYWRkKFN0cmluZyhlKSxuLCExLHIsaSl9ZnVuY3Rpb24gcG4odCxlLG4scixpKXt0LnYuYWRkKFN0cmluZyhlKSxuLCEwLHIsaSl9ZnVuY3Rpb24gZG4odCxlLG4scil7aWYoIShlPXQudi5hW1N0cmluZyhlKV0pKXJldHVybiEwO2U9ZS5jb25jYXQoKTtmb3IodmFyIGk9ITAsbz0wO288ZS5sZW5ndGg7KytvKXt2YXIgcyxhLHU9ZVtvXTt1JiYhdS52YSYmdS5jYXB0dXJlPT1uJiYocz11Lmxpc3RlbmVyLGE9dS5WYXx8dS5zcmMsdS5QYSYmUWUodC52LHUpLGk9ITEhPT1zLmNhbGwoYSxyKSYmaSl9cmV0dXJuIGkmJiFyLmRlZmF1bHRQcmV2ZW50ZWR9ZnVuY3Rpb24gdm4odCxlLG4pe2lmKHYodCkpbiYmKHQ9bSh0LG4pKTtlbHNle2lmKCF0fHwiZnVuY3Rpb24iIT10eXBlb2YgdC5oYW5kbGVFdmVudCl0aHJvdyBFcnJvcigiSW52YWxpZCBsaXN0ZW5lciBhcmd1bWVudCIpO3Q9bSh0LmhhbmRsZUV2ZW50LHQpfXJldHVybiAyMTQ3NDgzNjQ3PE51bWJlcihlKT8tMTpsLnNldFRpbWVvdXQodCxlfHwwKX1mdW5jdGlvbiBnbihuKXt2YXIgcj1udWxsO3JldHVybiBuZXcgZmUoZnVuY3Rpb24odCxlKXstMT09KHI9dm4oZnVuY3Rpb24oKXt0KHZvaWQgMCl9LG4pKSYmZShFcnJvcigiRmFpbGVkIHRvIHNjaGVkdWxlIHRpbWVyLiIpKX0pLm8oZnVuY3Rpb24odCl7dGhyb3cgbC5jbGVhclRpbWVvdXQociksdH0pfWZ1bmN0aW9uIHluKHQpe2lmKHQuVyYmImZ1bmN0aW9uIj09dHlwZW9mIHQuVylyZXR1cm4gdC5XKCk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiB0LnNwbGl0KCIiKTtpZihkKHQpKXtmb3IodmFyIGU9W10sbj10Lmxlbmd0aCxyPTA7cjxuO3IrKyllLnB1c2godFtyXSk7cmV0dXJuIGV9Zm9yKHIgaW4gZT1bXSxuPTAsdCllW24rK109dFtyXTtyZXR1cm4gZX1mdW5jdGlvbiBtbih0KXtpZih0LlkmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LlkpcmV0dXJuIHQuWSgpO2lmKCF0Lld8fCJmdW5jdGlvbiIhPXR5cGVvZiB0Llcpe2lmKGQodCl8fCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIGU9W107dD10Lmxlbmd0aDtmb3IodmFyIG49MDtuPHQ7bisrKWUucHVzaChuKTtyZXR1cm4gZX1mb3IodmFyIHIgaW4gZT1bXSxuPTAsdCllW24rK109cjtyZXR1cm4gZX19ZnVuY3Rpb24gYm4odCxlKXt0aGlzLmI9e30sdGhpcy5hPVtdLHRoaXMuYz0wO3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg7aWYoMTxuKXtpZihuJTIpdGhyb3cgRXJyb3IoIlVuZXZlbiBudW1iZXIgb2YgYXJndW1lbnRzIik7Zm9yKHZhciByPTA7cjxuO3IrPTIpdGhpcy5zZXQoYXJndW1lbnRzW3JdLGFyZ3VtZW50c1tyKzFdKX1lbHNlIGlmKHQpaWYodCBpbnN0YW5jZW9mIGJuKWZvcihuPXQuWSgpLHI9MDtyPG4ubGVuZ3RoO3IrKyl0aGlzLnNldChuW3JdLHQuZ2V0KG5bcl0pKTtlbHNlIGZvcihyIGluIHQpdGhpcy5zZXQocix0W3JdKX1mdW5jdGlvbiB3bih0KXtpZih0LmMhPXQuYS5sZW5ndGgpe2Zvcih2YXIgZT0wLG49MDtlPHQuYS5sZW5ndGg7KXt2YXIgcj10LmFbZV07X24odC5iLHIpJiYodC5hW24rK109ciksZSsrfXQuYS5sZW5ndGg9bn1pZih0LmMhPXQuYS5sZW5ndGgpe2Zvcih2YXIgaT17fSxuPWU9MDtlPHQuYS5sZW5ndGg7KV9uKGkscj10LmFbZV0pfHwoaVt0LmFbbisrXT1yXT0xKSxlKys7dC5hLmxlbmd0aD1ufX1mdW5jdGlvbiBfbih0LGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKX13KGxuLERlKSxsbi5wcm90b3R5cGVbS2VdPSEwLGxuLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHQsZSxuLHIpeyRlKHRoaXMsdCxlLG4scil9LGxuLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHQsZSxuLHIpe2VuKHRoaXMsdCxlLG4scil9LGxuLnByb3RvdHlwZS5kaXNwYXRjaEV2ZW50PWZ1bmN0aW9uKHQpe3ZhciBlO2lmKG49dGhpcy5nYilmb3IoZT1bXTtuO249bi5nYillLnB1c2gobik7dmFyIG49dGhpcy5hYyxyPXQudHlwZXx8dDtpZigic3RyaW5nIj09dHlwZW9mIHQ/dD1uZXcgcWUodCxuKTp0IGluc3RhbmNlb2YgcWU/dC50YXJnZXQ9dC50YXJnZXR8fG46KHM9dCxsdCh0PW5ldyBxZShyLG4pLHMpKSxzPSEwLGUpZm9yKHZhciBpPWUubGVuZ3RoLTE7MDw9aTtpLS0pdmFyIG89dC5iPWVbaV0scz1kbihvLHIsITAsdCkmJnM7aWYocz1kbihvPXQuYj1uLHIsITAsdCkmJnMscz1kbihvLHIsITEsdCkmJnMsZSlmb3IoaT0wO2k8ZS5sZW5ndGg7aSsrKXM9ZG4obz10LmI9ZVtpXSxyLCExLHQpJiZzO3JldHVybiBzfSxsbi5wcm90b3R5cGUuRGE9ZnVuY3Rpb24oKXtpZihsbi5hYi5EYS5jYWxsKHRoaXMpLHRoaXMudil7dmFyIHQsZT10aGlzLnY7Zm9yKHQgaW4gZS5hKXtmb3IodmFyIG49ZS5hW3RdLHI9MDtyPG4ubGVuZ3RoO3IrKylHZShuW3JdKTtkZWxldGUgZS5hW3RdLGUuYi0tfX10aGlzLmdiPW51bGx9LCh0PWJuLnByb3RvdHlwZSkuVz1mdW5jdGlvbigpe3duKHRoaXMpO2Zvcih2YXIgdD1bXSxlPTA7ZTx0aGlzLmEubGVuZ3RoO2UrKyl0LnB1c2godGhpcy5iW3RoaXMuYVtlXV0pO3JldHVybiB0fSx0Llk9ZnVuY3Rpb24oKXtyZXR1cm4gd24odGhpcyksdGhpcy5hLmNvbmNhdCgpfSx0LmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5iPXt9LHRoaXMuYz10aGlzLmEubGVuZ3RoPTB9LHQuZ2V0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIF9uKHRoaXMuYix0KT90aGlzLmJbdF06ZX0sdC5zZXQ9ZnVuY3Rpb24odCxlKXtfbih0aGlzLmIsdCl8fCh0aGlzLmMrKyx0aGlzLmEucHVzaCh0KSksdGhpcy5iW3RdPWV9LHQuZm9yRWFjaD1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10aGlzLlkoKSxyPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBpPW5bcl0sbz10aGlzLmdldChpKTt0LmNhbGwoZSxvLGksdGhpcyl9fTt2YXIgSW49L14oPzooW146Lz8jLl0rKTopPyg/OlwvXC8oPzooW15cXC8/I10qKUApPyhbXlxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcLz8jXXwkKSk/KFtePyNdKyk/KD86XD8oW14jXSopKT8oPzojKFtcc1xTXSopKT8kLztmdW5jdGlvbiBUbih0LGUpe3ZhciBuO3RoaXMuYT10aGlzLmw9dGhpcy5jPSIiLHRoaXMuZz1udWxsLHRoaXMuaD10aGlzLmY9IiIsdGhpcy5pPSExLHQgaW5zdGFuY2VvZiBUbj8odGhpcy5pPXZvaWQgMCE9PWU/ZTp0LmksRW4odGhpcyx0LmMpLHRoaXMubD10LmwsdGhpcy5hPXQuYSxTbih0aGlzLHQuZyksdGhpcy5mPXQuZixDbih0aGlzLEhuKHQuYikpLHRoaXMuaD10LmgpOnQmJihuPVN0cmluZyh0KS5tYXRjaChJbikpPyh0aGlzLmk9ISFlLEVuKHRoaXMsblsxXXx8IiIsITApLHRoaXMubD1QbihuWzJdfHwiIiksdGhpcy5hPVBuKG5bM118fCIiLCEwKSxTbih0aGlzLG5bNF0pLHRoaXMuZj1QbihuWzVdfHwiIiwhMCksQ24odGhpcyxuWzZdfHwiIiwhMCksdGhpcy5oPVBuKG5bN118fCIiKSk6KHRoaXMuaT0hIWUsdGhpcy5iPW5ldyBqbihudWxsLHRoaXMuaSkpfWZ1bmN0aW9uIEVuKHQsZSxuKXt0LmM9bj9QbihlLCEwKTplLHQuYyYmKHQuYz10LmMucmVwbGFjZSgvOiQvLCIiKSl9ZnVuY3Rpb24gU24odCxlKXtpZihlKXtpZihlPU51bWJlcihlKSxpc05hTihlKXx8ZTwwKXRocm93IEVycm9yKCJCYWQgcG9ydCBudW1iZXIgIitlKTt0Lmc9ZX1lbHNlIHQuZz1udWxsfWZ1bmN0aW9uIENuKHQsZSxuKXt2YXIgcixpO2UgaW5zdGFuY2VvZiBqbj8odC5iPWUscj10LmIsKGk9dC5pKSYmIXIuZiYmKHFuKHIpLHIuYz1udWxsLHIuYS5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO2UhPW4mJihCbih0aGlzLGUpLFduKHRoaXMsbix0KSl9LHIpKSxyLmY9aSk6KG58fChlPU9uKGUsRm4pKSx0LmI9bmV3IGpuKGUsdC5pKSl9ZnVuY3Rpb24gTm4odCxlLG4pe3QuYi5zZXQoZSxuKX1mdW5jdGlvbiBBbih0LGUpe3JldHVybiB0LmIuZ2V0KGUpfWZ1bmN0aW9uIGtuKHQpe3JldHVybiB0IGluc3RhbmNlb2YgVG4/bmV3IFRuKHQpOm5ldyBUbih0LHZvaWQgMCl9ZnVuY3Rpb24gUm4odCxlLG4scil7dmFyIGk9bmV3IFRuKG51bGwsdm9pZCAwKTtyZXR1cm4gdCYmRW4oaSx0KSxlJiYoaS5hPWUpLG4mJlNuKGksbiksciYmKGkuZj1yKSxpfWZ1bmN0aW9uIFBuKHQsZSl7cmV0dXJuIHQ/ZT9kZWNvZGVVUkkodC5yZXBsYWNlKC8lMjUvZywiJTI1MjUiKSk6ZGVjb2RlVVJJQ29tcG9uZW50KHQpOiIifWZ1bmN0aW9uIE9uKHQsZSxuKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/KHQ9ZW5jb2RlVVJJKHQpLnJlcGxhY2UoZSxEbiksdD1uP3QucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKTp0KTpudWxsfWZ1bmN0aW9uIERuKHQpe3JldHVybiIlIisoKHQ9dC5jaGFyQ29kZUF0KDApKT4+NCYxNSkudG9TdHJpbmcoMTYpKygxNSZ0KS50b1N0cmluZygxNil9VG4ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHQ9W10sZT10aGlzLmM7ZSYmdC5wdXNoKE9uKGUseG4sITApLCI6Iik7dmFyIG49dGhpcy5hO3JldHVybiFuJiYiZmlsZSIhPWV8fCh0LnB1c2goIi8vIiksKGU9dGhpcy5sKSYmdC5wdXNoKE9uKGUseG4sITApLCJAIiksdC5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcobikpLnJlcGxhY2UoLyUyNShbMC05YS1mQS1GXXsyfSkvZywiJSQxIikpLG51bGwhPShuPXRoaXMuZykmJnQucHVzaCgiOiIsU3RyaW5nKG4pKSksKG49dGhpcy5mKSYmKHRoaXMuYSYmIi8iIT1uLmNoYXJBdCgwKSYmdC5wdXNoKCIvIiksdC5wdXNoKE9uKG4sIi8iPT1uLmNoYXJBdCgwKT9NbjpMbiwhMCkpKSwobj10aGlzLmIudG9TdHJpbmcoKSkmJnQucHVzaCgiPyIsbiksKG49dGhpcy5oKSYmdC5wdXNoKCIjIixPbihuLFVuKSksdC5qb2luKCIiKX0sVG4ucHJvdG90eXBlLnJlc29sdmU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IFRuKHRoaXMpLG49ISF0LmM7bj9FbihlLHQuYyk6bj0hIXQubCxuP2UubD10Lmw6bj0hIXQuYSxuP2UuYT10LmE6bj1udWxsIT10Lmc7dmFyIHI9dC5mO2lmKG4pU24oZSx0LmcpO2Vsc2UgaWYobj0hIXQuZilpZigiLyIhPXIuY2hhckF0KDApJiYodGhpcy5hJiYhdGhpcy5mP3I9Ii8iK3I6LTEhPShpPWUuZi5sYXN0SW5kZXhPZigiLyIpKSYmKHI9ZS5mLnN1YnN0cigwLGkrMSkrcikpLCIuLiI9PShpPXIpfHwiLiI9PWkpcj0iIjtlbHNlIGlmKHJ0KGksIi4vIil8fHJ0KGksIi8uIikpe2Zvcih2YXIgcj0wPT1pLmxhc3RJbmRleE9mKCIvIiwwKSxpPWkuc3BsaXQoIi8iKSxvPVtdLHM9MDtzPGkubGVuZ3RoOyl7dmFyIGE9aVtzKytdOyIuIj09YT9yJiZzPT1pLmxlbmd0aCYmby5wdXNoKCIiKToiLi4iPT1hPygoMTxvLmxlbmd0aHx8MT09by5sZW5ndGgmJiIiIT1vWzBdKSYmby5wb3AoKSxyJiZzPT1pLmxlbmd0aCYmby5wdXNoKCIiKSk6KG8ucHVzaChhKSxyPSEwKX1yPW8uam9pbigiLyIpfWVsc2Ugcj1pO3JldHVybiBuP2UuZj1yOm49IiIhPT10LmIudG9TdHJpbmcoKSxuP0NuKGUsSG4odC5iKSk6bj0hIXQuaCxuJiYoZS5oPXQuaCksZX07dmFyIHhuPS9bI1wvXD9AXS9nLExuPS9bI1w/Ol0vZyxNbj0vWyNcP10vZyxGbj0vWyNcP0BdL2csVW49LyMvZztmdW5jdGlvbiBqbih0LGUpe3RoaXMuYj10aGlzLmE9bnVsbCx0aGlzLmM9dHx8bnVsbCx0aGlzLmY9ISFlfWZ1bmN0aW9uIHFuKG4pe24uYXx8KG4uYT1uZXcgYm4sbi5iPTAsbi5jJiZmdW5jdGlvbih0LGUpe2lmKHQpe3Q9dC5zcGxpdCgiJiIpO2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKXt2YXIgcixpPXRbbl0uaW5kZXhPZigiPSIpLG89bnVsbDswPD1pPyhyPXRbbl0uc3Vic3RyaW5nKDAsaSksbz10W25dLnN1YnN0cmluZyhpKzEpKTpyPXRbbl0sZShyLG8/ZGVjb2RlVVJJQ29tcG9uZW50KG8ucmVwbGFjZSgvXCsvZywiICIpKToiIil9fX0obi5jLGZ1bmN0aW9uKHQsZSl7bi5hZGQoZGVjb2RlVVJJQ29tcG9uZW50KHQucmVwbGFjZSgvXCsvZywiICIpKSxlKX0pKX1mdW5jdGlvbiBWbih0KXt2YXIgZT1tbih0KTtpZih2b2lkIDA9PT1lKXRocm93IEVycm9yKCJLZXlzIGFyZSB1bmRlZmluZWQiKTt2YXIgbj1uZXcgam4obnVsbCx2b2lkIDApO3Q9eW4odCk7Zm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl0sbz10W3JdO0FycmF5LmlzQXJyYXkobyk/V24obixpLG8pOm4uYWRkKGksbyl9cmV0dXJuIG59ZnVuY3Rpb24gQm4odCxlKXtxbih0KSxlPUduKHQsZSksX24odC5hLmIsZSkmJih0LmM9bnVsbCx0LmItPXQuYS5nZXQoZSkubGVuZ3RoLF9uKCh0PXQuYSkuYixlKSYmKGRlbGV0ZSB0LmJbZV0sdC5jLS0sdC5hLmxlbmd0aD4yKnQuYyYmd24odCkpKX1mdW5jdGlvbiBLbih0LGUpe3JldHVybiBxbih0KSxlPUduKHQsZSksX24odC5hLmIsZSl9ZnVuY3Rpb24gV24odCxlLG4pe0JuKHQsZSksMDxuLmxlbmd0aCYmKHQuYz1udWxsLHQuYS5zZXQoR24odCxlKSx6KG4pKSx0LmIrPW4ubGVuZ3RoKX1mdW5jdGlvbiBIbih0KXt2YXIgZT1uZXcgam47cmV0dXJuIGUuYz10LmMsdC5hJiYoZS5hPW5ldyBibih0LmEpLGUuYj10LmIpLGV9ZnVuY3Rpb24gR24odCxlKXtyZXR1cm4gZT1TdHJpbmcoZSksZT10LmY/ZS50b0xvd2VyQ2FzZSgpOmV9ZnVuY3Rpb24gem4odCl7dmFyIGU9W107cmV0dXJuIGZ1bmN0aW9uIHQoZSxuLHIpe2lmKG51bGw9PW4pci5wdXNoKCJudWxsIik7ZWxzZXtpZigib2JqZWN0Ij09dHlwZW9mIG4pe2lmKEFycmF5LmlzQXJyYXkobikpe3ZhciBpPW47bj1pLmxlbmd0aCxyLnB1c2goIlsiKTtmb3IodmFyIG89IiIscz0wO3M8bjtzKyspci5wdXNoKG8pLHQoZSxpW3NdLHIpLG89IiwiO3JldHVybiB2b2lkIHIucHVzaCgiXSIpfWlmKCEobiBpbnN0YW5jZW9mIFN0cmluZ3x8biBpbnN0YW5jZW9mIE51bWJlcnx8biBpbnN0YW5jZW9mIEJvb2xlYW4pKXtmb3IoaSBpbiByLnB1c2goInsiKSxvPSIiLG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4saSkmJihzPW5baV0sImZ1bmN0aW9uIiE9dHlwZW9mIHMmJihyLnB1c2gobyksSm4oaSxyKSxyLnB1c2goIjoiKSx0KGUscyxyKSxvPSIsIikpO3JldHVybiB2b2lkIHIucHVzaCgifSIpfW49bi52YWx1ZU9mKCl9c3dpdGNoKHR5cGVvZiBuKXtjYXNlInN0cmluZyI6Sm4obixyKTticmVhaztjYXNlIm51bWJlciI6ci5wdXNoKGlzRmluaXRlKG4pJiYhaXNOYU4obik/U3RyaW5nKG4pOiJudWxsIik7YnJlYWs7Y2FzZSJib29sZWFuIjpyLnB1c2goU3RyaW5nKG4pKTticmVhaztjYXNlImZ1bmN0aW9uIjpyLnB1c2goIm51bGwiKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJVbmtub3duIHR5cGU6ICIrdHlwZW9mIG4pfX19KG5ldyBRbix0LGUpLGUuam9pbigiIil9ZnVuY3Rpb24gUW4oKXt9KHQ9am4ucHJvdG90eXBlKS5hZGQ9ZnVuY3Rpb24odCxlKXtxbih0aGlzKSx0aGlzLmM9bnVsbCx0PUduKHRoaXMsdCk7dmFyIG49dGhpcy5hLmdldCh0KTtyZXR1cm4gbnx8dGhpcy5hLnNldCh0LG49W10pLG4ucHVzaChlKSx0aGlzLmIrPTEsdGhpc30sdC5jbGVhcj1mdW5jdGlvbigpe3RoaXMuYT10aGlzLmM9bnVsbCx0aGlzLmI9MH0sdC5mb3JFYWNoPWZ1bmN0aW9uKG4scil7cW4odGhpcyksdGhpcy5hLmZvckVhY2goZnVuY3Rpb24odCxlKXtqKHQsZnVuY3Rpb24odCl7bi5jYWxsKHIsdCxlLHRoaXMpfSx0aGlzKX0sdGhpcyl9LHQuWT1mdW5jdGlvbigpe3FuKHRoaXMpO2Zvcih2YXIgdD10aGlzLmEuVygpLGU9dGhpcy5hLlkoKSxuPVtdLHI9MDtyPGUubGVuZ3RoO3IrKylmb3IodmFyIGk9dFtyXSxvPTA7bzxpLmxlbmd0aDtvKyspbi5wdXNoKGVbcl0pO3JldHVybiBufSx0Llc9ZnVuY3Rpb24odCl7cW4odGhpcyk7dmFyIGU9W107aWYoInN0cmluZyI9PXR5cGVvZiB0KUtuKHRoaXMsdCkmJihlPUcoZSx0aGlzLmEuZ2V0KEduKHRoaXMsdCkpKSk7ZWxzZXt0PXRoaXMuYS5XKCk7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspZT1HKGUsdFtuXSl9cmV0dXJuIGV9LHQuc2V0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHFuKHRoaXMpLHRoaXMuYz1udWxsLEtuKHRoaXMsdD1Hbih0aGlzLHQpKSYmKHRoaXMuYi09dGhpcy5hLmdldCh0KS5sZW5ndGgpLHRoaXMuYS5zZXQodCxbZV0pLHRoaXMuYis9MSx0aGlzfSx0LmdldD1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYwPCh0PXRoaXMuVyh0KSkubGVuZ3RoP1N0cmluZyh0WzBdKTplfSx0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5jKXJldHVybiB0aGlzLmM7aWYoIXRoaXMuYSlyZXR1cm4iIjtmb3IodmFyIHQ9W10sZT10aGlzLmEuWSgpLG49MDtuPGUubGVuZ3RoO24rKylmb3IodmFyIHI9ZVtuXSxpPWVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcocikpLHI9dGhpcy5XKHIpLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIHM9aTsiIiE9PXJbb10mJihzKz0iPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhyW29dKSkpLHQucHVzaChzKX1yZXR1cm4gdGhpcy5jPXQuam9pbigiJiIpfTt2YXIgWW49eyciJzonXFwiJywiXFwiOiJcXFxcIiwiLyI6IlxcLyIsIlxiIjoiXFxiIiwiXGYiOiJcXGYiLCJcbiI6IlxcbiIsIlxyIjoiXFxyIiwiXHQiOiJcXHQiLCJcdiI6IlxcdTAwMGIifSxYbj0vXHVmZmZmLy50ZXN0KCLvv78iKT8vW1xcIlx4MDAtXHgxZlx4N2YtXHVmZmZmXS9nOi9bXFwiXHgwMC1ceDFmXHg3Zi1ceGZmXS9nO2Z1bmN0aW9uIEpuKHQsZSl7ZS5wdXNoKCciJyx0LnJlcGxhY2UoWG4sZnVuY3Rpb24odCl7dmFyIGU9WW5bdF07cmV0dXJuIGV8fChlPSJcXHUiKyg2NTUzNnx0LmNoYXJDb2RlQXQoMCkpLnRvU3RyaW5nKDE2KS5zdWJzdHIoMSksWW5bdF09ZSksZX0pLCciJyl9ZnVuY3Rpb24gJG4oKXt2YXIgdD15cigpO3JldHVybiBCdCYmJHQmJjExPT0kdHx8L0VkZ2VcL1xkKy8udGVzdCh0KX1mdW5jdGlvbiBabigpe3JldHVybiBsLndpbmRvdyYmbC53aW5kb3cubG9jYXRpb24uaHJlZnx8c2VsZiYmc2VsZi5sb2NhdGlvbiYmc2VsZi5sb2NhdGlvbi5ocmVmfHwiIn1mdW5jdGlvbiB0cih0LGUpe2U9ZXx8bC53aW5kb3c7dmFyIG49ImFib3V0OmJsYW5rIjt0JiYobj1DdChSdCh0KXx8RHQpKSxlLmxvY2F0aW9uLmhyZWY9bn1mdW5jdGlvbiBlcih0KXtyZXR1cm4hISgodD0odHx8eXIoKSkudG9Mb3dlckNhc2UoKSkubWF0Y2goL2FuZHJvaWQvKXx8dC5tYXRjaCgvd2Vib3MvKXx8dC5tYXRjaCgvaXBob25lfGlwYWR8aXBvZC8pfHx0Lm1hdGNoKC9ibGFja2JlcnJ5Lyl8fHQubWF0Y2goL3dpbmRvd3MgcGhvbmUvKXx8dC5tYXRjaCgvaWVtb2JpbGUvKSl9ZnVuY3Rpb24gbnIodCl7dD10fHxsLndpbmRvdzt0cnl7dC5jbG9zZSgpfWNhdGNoKHQpe319ZnVuY3Rpb24gcnIodCxlLG4pe3ZhciByPU1hdGguZmxvb3IoMWU5Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKCk7ZT1lfHw1MDAsbj1ufHw2MDA7dmFyIGk9KHdpbmRvdy5zY3JlZW4uYXZhaWxIZWlnaHQtbikvMixvPSh3aW5kb3cuc2NyZWVuLmF2YWlsV2lkdGgtZSkvMjtmb3IocyBpbiBlPXt3aWR0aDplLGhlaWdodDpuLHRvcDowPGk/aTowLGxlZnQ6MDxvP286MCxsb2NhdGlvbjohMCxyZXNpemFibGU6ITAsc3RhdHVzYmFyOiEwLHRvb2xiYXI6ITF9LG49eXIoKS50b0xvd2VyQ2FzZSgpLHImJihlLnRhcmdldD1yLHJ0KG4sImNyaW9zLyIpJiYoZS50YXJnZXQ9Il9ibGFuayIpKSxkcih5cigpKT09ZnImJih0PXR8fCJodHRwOi8vbG9jYWxob3N0IixlLnNjcm9sbGJhcnM9ITApLG49dHx8IiIsKHQ9ZSl8fCh0PXt9KSxyPXdpbmRvdyxlPW4gaW5zdGFuY2VvZiBTdD9uOlJ0KHZvaWQgMCE9PW4uaHJlZj9uLmhyZWY6U3RyaW5nKG4pKXx8RHQsbj10LnRhcmdldHx8bi50YXJnZXQsaT1bXSx0KXN3aXRjaChzKXtjYXNlIndpZHRoIjpjYXNlImhlaWdodCI6Y2FzZSJ0b3AiOmNhc2UibGVmdCI6aS5wdXNoKHMrIj0iK3Rbc10pO2JyZWFrO2Nhc2UidGFyZ2V0IjpjYXNlIm5vb3BlbmVyIjpjYXNlIm5vcmVmZXJyZXIiOmJyZWFrO2RlZmF1bHQ6aS5wdXNoKHMrIj0iKyh0W3NdPzE6MCkpfXZhciBzPWkuam9pbigiLCIpO2lmKChzdCgiaVBob25lIikmJiFzdCgiaVBvZCIpJiYhc3QoImlQYWQiKXx8c3QoImlQYWQiKXx8c3QoImlQb2QiKSkmJnIubmF2aWdhdG9yJiZyLm5hdmlnYXRvci5zdGFuZGFsb25lJiZuJiYiX3NlbGYiIT1uPyhmdChzPXNlKGRvY3VtZW50LCJBIiksIkhUTUxBbmNob3JFbGVtZW50IiksZT1lIGluc3RhbmNlb2YgU3Q/ZTpQdChlKSxzLmhyZWY9Q3QoZSkscy5zZXRBdHRyaWJ1dGUoInRhcmdldCIsbiksdC5ub3JlZmVycmVyJiZzLnNldEF0dHJpYnV0ZSgicmVsIiwibm9yZWZlcnJlciIpLCh0PWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50IikpLmluaXRNb3VzZUV2ZW50KCJjbGljayIsITAsITAsciwxKSxzLmRpc3BhdGNoRXZlbnQodCkscz17fSk6dC5ub3JlZmVycmVyPyhzPU10KCIiLHIsbixzKSx0PUN0KGUpLHMmJihXdCYmcnQodCwiOyIpJiYodD0iJyIrdC5yZXBsYWNlKC8nL2csIiUyNyIpKyInIikscy5vcGVuZXI9bnVsbCx0PSc8bWV0YSBuYW1lPSJyZWZlcnJlciIgY29udGVudD0ibm8tcmVmZXJyZXIiPjxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjA7IHVybD0nK1V0KHQpKyciPicsdD1uZXcgeHQodD0ocj1tdCgpKT9yLmNyZWF0ZUhUTUwodCk6dCwwLEx0KSxyPXMuZG9jdW1lbnQpJiYoci53cml0ZSgobz10KWluc3RhbmNlb2YgeHQmJm8uY29uc3RydWN0b3I9PT14dD9vLmE6KE8oImV4cGVjdGVkIG9iamVjdCBvZiB0eXBlIFNhZmVIdG1sLCBnb3QgJyIrbysiJyBvZiB0eXBlICIrcChvKSksInR5cGVfZXJyb3I6U2FmZUh0bWwiKSksci5jbG9zZSgpKSk6KHM9TXQoZSxyLG4scykpJiZ0Lm5vb3BlbmVyJiYocy5vcGVuZXI9bnVsbCkscyl0cnl7cy5mb2N1cygpfWNhdGNoKHQpe31yZXR1cm4gc312YXIgaXI9L15cZHsxLDN9XC5cZHsxLDN9XC5cZHsxLDN9XC5cZHsxLDN9JC8sb3I9L15bXkBdK0BbXkBdKyQvO2Z1bmN0aW9uIHNyKCl7dmFyIGU9bnVsbDtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKHQpeyJjb21wbGV0ZSI9PWwuZG9jdW1lbnQucmVhZHlTdGF0ZT90KCk6KGU9ZnVuY3Rpb24oKXt0KCl9LHRuKHdpbmRvdywibG9hZCIsZSkpfSkubyhmdW5jdGlvbih0KXt0aHJvdyBlbih3aW5kb3csImxvYWQiLGUpLHR9KX1mdW5jdGlvbiBhcih0KXtyZXR1cm4gdD10fHx5cigpLCEoImZpbGU6IiE9PUlyKCkmJiJpb25pYzoiIT09SXIoKXx8IXQudG9Mb3dlckNhc2UoKS5tYXRjaCgvaXBob25lfGlwYWR8aXBvZHxhbmRyb2lkLykpfWZ1bmN0aW9uIHVyKCl7dmFyIHQ9bC53aW5kb3c7dHJ5e3JldHVybiB0JiZ0IT10LnRvcH1jYXRjaCh0KXtyZXR1cm59fWZ1bmN0aW9uIGNyKCl7cmV0dXJuIHZvaWQgMCE9PWwuV29ya2VyR2xvYmFsU2NvcGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLmltcG9ydFNjcmlwdHN9ZnVuY3Rpb24gaHIoKXtyZXR1cm4gWGwuSU5URVJOQUwuaGFzT3duUHJvcGVydHkoInJlYWN0TmF0aXZlIik/IlJlYWN0TmF0aXZlIjpYbC5JTlRFUk5BTC5oYXNPd25Qcm9wZXJ0eSgibm9kZSIpPyJOb2RlIjpjcigpPyJXb3JrZXIiOiJCcm93c2VyIn1mdW5jdGlvbiBscigpe3ZhciB0PWhyKCk7cmV0dXJuIlJlYWN0TmF0aXZlIj09PXR8fCJOb2RlIj09PXR9dmFyIGZyPSJGaXJlZm94Iixwcj0iQ2hyb21lIjtmdW5jdGlvbiBkcih0KXt2YXIgZT10LnRvTG93ZXJDYXNlKCk7cmV0dXJuIHJ0KGUsIm9wZXJhLyIpfHxydChlLCJvcHIvIil8fHJ0KGUsIm9waW9zLyIpPyJPcGVyYSI6cnQoZSwiaWVtb2JpbGUiKT8iSUVNb2JpbGUiOnJ0KGUsIm1zaWUiKXx8cnQoZSwidHJpZGVudC8iKT8iSUUiOnJ0KGUsImVkZ2UvIik/IkVkZ2UiOnJ0KGUsImZpcmVmb3gvIik/ZnI6cnQoZSwic2lsay8iKT8iU2lsayI6cnQoZSwiYmxhY2tiZXJyeSIpPyJCbGFja2JlcnJ5IjpydChlLCJ3ZWJvcyIpPyJXZWJvcyI6IXJ0KGUsInNhZmFyaS8iKXx8cnQoZSwiY2hyb21lLyIpfHxydChlLCJjcmlvcy8iKXx8cnQoZSwiYW5kcm9pZCIpPyFydChlLCJjaHJvbWUvIikmJiFydChlLCJjcmlvcy8iKXx8cnQoZSwiZWRnZS8iKT9ydChlLCJhbmRyb2lkIik/IkFuZHJvaWQiOih0PXQubWF0Y2goLyhbYS16QS1aXGRcLl0rKVwvW2EtekEtWlxkXC5dKiQvKSkmJjI9PXQubGVuZ3RoP3RbMV06Ik90aGVyIjpwcjoiU2FmYXJpIn12YXIgdnI9e21kOiJGaXJlYmFzZUNvcmUtd2ViIixvZDoiRmlyZWJhc2VVSS13ZWIifTtmdW5jdGlvbiBncih0LGUpe2U9ZXx8W107dmFyIG4scj1bXSxpPXt9O2ZvcihuIGluIHZyKWlbdnJbbl1dPSEwO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspdm9pZCAwIT09aVtlW25dXSYmKGRlbGV0ZSBpW2Vbbl1dLHIucHVzaChlW25dKSk7cmV0dXJuIHIuc29ydCgpLChlPXIpLmxlbmd0aHx8KGU9WyJGaXJlYmFzZUNvcmUtd2ViIl0pLCJCcm93c2VyIj09PShyPWhyKCkpP3I9ZHIoaT15cigpKToiV29ya2VyIj09PXImJihyPWRyKGk9eXIoKSkrIi0iK3IpLHIrIi9Kc0NvcmUvIit0KyIvIitlLmpvaW4oIiwiKX1mdW5jdGlvbiB5cigpe3JldHVybiBsLm5hdmlnYXRvciYmbC5uYXZpZ2F0b3IudXNlckFnZW50fHwiIn1mdW5jdGlvbiBtcih0LGUpe3Q9dC5zcGxpdCgiLiIpLGU9ZXx8bDtmb3IodmFyIG49MDtuPHQubGVuZ3RoJiYib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPWU7bisrKWU9ZVt0W25dXTtyZXR1cm4gZT1uIT10Lmxlbmd0aD92b2lkIDA6ZX1mdW5jdGlvbiBicigpe3RyeXt2YXIgdD1sLmxvY2FsU3RvcmFnZSxlPU5yKCk7aWYodClyZXR1cm4gdC5zZXRJdGVtKGUsIjEiKSx0LnJlbW92ZUl0ZW0oZSksISRuKCl8fCEhbC5pbmRleGVkREJ9Y2F0Y2godCl7cmV0dXJuIGNyKCkmJiEhbC5pbmRleGVkREJ9cmV0dXJuITF9ZnVuY3Rpb24gd3IoKXtyZXR1cm4oX3IoKXx8ImNocm9tZS1leHRlbnNpb246Ij09PUlyKCl8fGFyKCkpJiYhbHIoKSYmYnIoKSYmIWNyKCl9ZnVuY3Rpb24gX3IoKXtyZXR1cm4iaHR0cDoiPT09SXIoKXx8Imh0dHBzOiI9PT1JcigpfWZ1bmN0aW9uIElyKCl7cmV0dXJuIGwubG9jYXRpb24mJmwubG9jYXRpb24ucHJvdG9jb2x8fG51bGx9ZnVuY3Rpb24gVHIodCl7cmV0dXJuIWVyKHQ9dHx8eXIoKSkmJmRyKHQpIT1mcn1mdW5jdGlvbiBFcih0KXtyZXR1cm4gdm9pZCAwPT09dD9udWxsOnpuKHQpfWZ1bmN0aW9uIFNyKHQpe3ZhciBlLG49e307Zm9yKGUgaW4gdCl0Lmhhc093blByb3BlcnR5KGUpJiZudWxsIT09dFtlXSYmdm9pZCAwIT09dFtlXSYmKG5bZV09dFtlXSk7cmV0dXJuIG59ZnVuY3Rpb24gQ3IodCl7aWYobnVsbCE9PXQpcmV0dXJuIEpTT04ucGFyc2UodCl9ZnVuY3Rpb24gTnIodCl7cmV0dXJuIHR8fE1hdGguZmxvb3IoMWU5Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKCl9ZnVuY3Rpb24gQXIodCl7cmV0dXJuIlNhZmFyaSIhPWRyKHQ9dHx8eXIoKSkmJiF0LnRvTG93ZXJDYXNlKCkubWF0Y2goL2lwaG9uZXxpcGFkfGlwb2QvKX1mdW5jdGlvbiBrcigpe3ZhciB0PWwuX19fanNsO2lmKHQmJnQuSClmb3IodmFyIGUgaW4gdC5IKWlmKHQuSFtlXS5yPXQuSFtlXS5yfHxbXSx0LkhbZV0uTD10LkhbZV0uTHx8W10sdC5IW2VdLnI9dC5IW2VdLkwuY29uY2F0KCksdC5DUClmb3IodmFyIG49MDtuPHQuQ1AubGVuZ3RoO24rKyl0LkNQW25dPW51bGx9ZnVuY3Rpb24gUnIodCxlKXtpZihlPHQpdGhyb3cgRXJyb3IoIlNob3J0IGRlbGF5IHNob3VsZCBiZSBsZXNzIHRoYW4gbG9uZyBkZWxheSEiKTt0aGlzLmE9dCx0aGlzLmM9ZSx0PXlyKCksZT1ocigpLHRoaXMuYj1lcih0KXx8IlJlYWN0TmF0aXZlIj09PWV9ZnVuY3Rpb24gUHIoKXt2YXIgdD1sLmRvY3VtZW50O3JldHVybiF0fHx2b2lkIDA9PT10LnZpc2liaWxpdHlTdGF0ZXx8InZpc2libGUiPT10LnZpc2liaWxpdHlTdGF0ZX1mdW5jdGlvbiBPcigpe3ZhciBlPWwuZG9jdW1lbnQsbj1udWxsO3JldHVybiBQcigpfHwhZT9iZSgpOm5ldyBmZShmdW5jdGlvbih0KXtuPWZ1bmN0aW9uKCl7UHIoKSYmKGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsbiwhMSksdCgpKX0sZS5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixuLCExKX0pLm8oZnVuY3Rpb24odCl7dGhyb3cgZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixuLCExKSx0fSl9ZnVuY3Rpb24gRHIodCl7dHJ5e3ZhciBlPW5ldyBEYXRlKHBhcnNlSW50KHQsMTApKTtpZighaXNOYU4oZS5nZXRUaW1lKCkpJiYhL1teMC05XS8udGVzdCh0KSlyZXR1cm4gZS50b1VUQ1N0cmluZygpfWNhdGNoKHQpe31yZXR1cm4gbnVsbH1mdW5jdGlvbiB4cigpe3JldHVybiBtcigiZmlyZWF1dGgub2F1dGhoZWxwZXIiLGwpfHxtcigiZmlyZWF1dGguaWZyYW1lIixsKX1Sci5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7dmFyIHQ9bC5uYXZpZ2F0b3I7cmV0dXJuIXR8fCJib29sZWFuIiE9dHlwZW9mIHQub25MaW5lfHwhX3IoKSYmImNocm9tZS1leHRlbnNpb246IiE9PUlyKCkmJnZvaWQgMD09PXQuY29ubmVjdGlvbnx8dC5vbkxpbmU/dGhpcy5iP3RoaXMuYzp0aGlzLmE6TWF0aC5taW4oNWUzLHRoaXMuYSl9O3ZhciBMcixNcj17fTtmdW5jdGlvbiBGcih0KXtNclt0XXx8KE1yW3RdPSEwLCJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmImZ1bmN0aW9uIj09dHlwZW9mIGNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKHQpKX10cnl7dmFyIFVyPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShVciwiYWJjZCIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLHZhbHVlOjF9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoVXIsImFiY2QiLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZToyfSksTHI9Mj09VXIuYWJjZH1jYXRjaCh0KXtMcj0hMX1mdW5jdGlvbiBqcih0LGUsbil7THI/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6bn0pOnRbZV09bn1mdW5jdGlvbiBxcih0LGUpe2lmKGUpZm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmanIodCxuLGVbbl0pfWZ1bmN0aW9uIFZyKHQpe3ZhciBlPXt9O3JldHVybiBxcihlLHQpLGV9ZnVuY3Rpb24gQnIodCl7dmFyIGU9dDtpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPXQpZm9yKHZhciBuIGluIGU9Imxlbmd0aCJpbiB0P1tdOnt9LHQpanIoZSxuLEJyKHRbbl0pKTtyZXR1cm4gZX1mdW5jdGlvbiBLcih0KXt2YXIgZT10JiYodFtRcl0/InBob25lIjpudWxsKTtpZighKGUmJnQmJnRbenJdKSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiLCJJbnRlcm5hbCBhc3NlcnQ6IGludmFsaWQgTXVsdGlGYWN0b3JJbmZvIG9iamVjdCIpO2pyKHRoaXMsInVpZCIsdFt6cl0pLGpyKHRoaXMsImRpc3BsYXlOYW1lIix0W0hyXXx8bnVsbCk7dmFyIG49bnVsbDtqcih0aGlzLCJlbnJvbGxtZW50VGltZSIsbj10W0dyXT9uZXcgRGF0ZSh0W0dyXSkudG9VVENTdHJpbmcoKTpuKSxqcih0aGlzLCJmYWN0b3JJZCIsZSl9ZnVuY3Rpb24gV3IodCl7dHJ5e3ZhciBlPW5ldyBZcih0KX1jYXRjaCh0KXtlPW51bGx9cmV0dXJuIGV9S3IucHJvdG90eXBlLnc9ZnVuY3Rpb24oKXtyZXR1cm57dWlkOnRoaXMudWlkLGRpc3BsYXlOYW1lOnRoaXMuZGlzcGxheU5hbWUsZmFjdG9ySWQ6dGhpcy5mYWN0b3JJZCxlbnJvbGxtZW50VGltZTp0aGlzLmVucm9sbG1lbnRUaW1lfX07dmFyIEhyPSJkaXNwbGF5TmFtZSIsR3I9ImVucm9sbGVkQXQiLHpyPSJtZmFFbnJvbGxtZW50SWQiLFFyPSJwaG9uZUluZm8iO2Z1bmN0aW9uIFlyKHQpe0tyLmNhbGwodGhpcyx0KSxqcih0aGlzLCJwaG9uZU51bWJlciIsdFtRcl0pfWZ1bmN0aW9uIFhyKHQpe3ZhciBlPXt9LG49dFt0aV0scj10W25pXSxpPXRbcmldO2lmKHQ9V3IodFtlaV0pLCFpfHxpIT0kciYmaSE9WnImJiFufHxpPT1aciYmIXJ8fGk9PUpyJiYhdCl0aHJvdyBFcnJvcigiSW52YWxpZCBjaGVja0FjdGlvbkNvZGUgcmVzcG9uc2UhIik7aT09WnI/KGVbb2ldPW58fG51bGwsZVthaV09bnx8bnVsbCxlW2lpXT1yKTooZVtvaV09cnx8bnVsbCxlW2FpXT1yfHxudWxsLGVbaWldPW58fG51bGwpLGVbc2ldPXR8fG51bGwsanIodGhpcyxjaSxpKSxqcih0aGlzLHVpLEJyKGUpKX13KFlyLEtyKSxZci5wcm90b3R5cGUudz1mdW5jdGlvbigpe3ZhciB0PVlyLmFiLncuY2FsbCh0aGlzKTtyZXR1cm4gdC5waG9uZU51bWJlcj10aGlzLnBob25lTnVtYmVyLHR9O3ZhciBKcj0iUkVWRVJUX1NFQ09ORF9GQUNUT1JfQURESVRJT04iLCRyPSJFTUFJTF9TSUdOSU4iLFpyPSJWRVJJRllfQU5EX0NIQU5HRV9FTUFJTCIsdGk9ImVtYWlsIixlaT0ibWZhSW5mbyIsbmk9Im5ld0VtYWlsIixyaT0icmVxdWVzdFR5cGUiLGlpPSJlbWFpbCIsb2k9ImZyb21FbWFpbCIsc2k9Im11bHRpRmFjdG9ySW5mbyIsYWk9InByZXZpb3VzRW1haWwiLHVpPSJkYXRhIixjaT0ib3BlcmF0aW9uIjtmdW5jdGlvbiBoaSh0KXt2YXIgZT1Bbih0PWtuKHQpLGxpKXx8bnVsbCxuPUFuKHQsZmkpfHxudWxsLHI9KHI9QW4odCx2aSl8fG51bGwpJiZ5aVtyXXx8bnVsbDtpZighZXx8IW58fCFyKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsbGkrIiwgIitmaSsiYW5kICIrdmkrIiBhcmUgcmVxdWlyZWQgaW4gYSB2YWxpZCBhY3Rpb24gY29kZSBVUkwuIik7cXIodGhpcyx7YXBpS2V5OmUsb3BlcmF0aW9uOnIsY29kZTpuLGNvbnRpbnVlVXJsOkFuKHQscGkpfHxudWxsLGxhbmd1YWdlQ29kZTpBbih0LGRpKXx8bnVsbCx0ZW5hbnRJZDpBbih0LGdpKXx8bnVsbH0pfXZhciBsaT0iYXBpS2V5IixmaT0ib29iQ29kZSIscGk9ImNvbnRpbnVlVXJsIixkaT0ibGFuZ3VhZ2VDb2RlIix2aT0ibW9kZSIsZ2k9InRlbmFudElkIix5aT17cmVjb3ZlckVtYWlsOiJSRUNPVkVSX0VNQUlMIixyZXNldFBhc3N3b3JkOiJQQVNTV09SRF9SRVNFVCIscmV2ZXJ0U2Vjb25kRmFjdG9yQWRkaXRpb246SnIsc2lnbkluOiRyLHZlcmlmeUFuZENoYW5nZUVtYWlsOlpyLHZlcmlmeUVtYWlsOiJWRVJJRllfRU1BSUwifTtmdW5jdGlvbiBtaSh0KXt0cnl7cmV0dXJuIG5ldyBoaSh0KX1jYXRjaCh0KXtyZXR1cm4gbnVsbH19ZnVuY3Rpb24gYmkodCl7aWYodm9pZCAwPT09KGU9dFtFaV0pKXRocm93IG5ldyBJKCJtaXNzaW5nLWNvbnRpbnVlLXVyaSIpO2lmKCJzdHJpbmciIT10eXBlb2YgZXx8InN0cmluZyI9PXR5cGVvZiBlJiYhZS5sZW5ndGgpdGhyb3cgbmV3IEkoImludmFsaWQtY29udGludWUtdXJpIik7aWYodGhpcy5oPWUsdGhpcy5iPXRoaXMuYT1udWxsLHRoaXMuZz0hMSwocj10W3dpXSkmJiJvYmplY3QiPT10eXBlb2Ygcil7dmFyIGU9cltOaV0sbj1yW1NpXSxyPXJbQ2ldO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmZS5sZW5ndGgpe2lmKHRoaXMuYT1lLHZvaWQgMCE9PW4mJiJib29sZWFuIiE9dHlwZW9mIG4pdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIixTaSsiIHByb3BlcnR5IG11c3QgYmUgYSBib29sZWFuIHdoZW4gc3BlY2lmaWVkLiIpO2lmKHRoaXMuZz0hIW4sdm9pZCAwIT09ciYmKCJzdHJpbmciIT10eXBlb2Ygcnx8InN0cmluZyI9PXR5cGVvZiByJiYhci5sZW5ndGgpKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsQ2krIiBwcm9wZXJ0eSBtdXN0IGJlIGEgbm9uIGVtcHR5IHN0cmluZyB3aGVuIHNwZWNpZmllZC4iKTt0aGlzLmI9cnx8bnVsbH1lbHNle2lmKHZvaWQgMCE9PWUpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIixOaSsiIHByb3BlcnR5IG11c3QgYmUgYSBub24gZW1wdHkgc3RyaW5nIHdoZW4gc3BlY2lmaWVkLiIpO2lmKHZvaWQgMCE9PW58fHZvaWQgMCE9PXIpdGhyb3cgbmV3IEkoIm1pc3NpbmctYW5kcm9pZC1wa2ctbmFtZSIpfX1lbHNlIGlmKHZvaWQgMCE9PXIpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIix3aSsiIHByb3BlcnR5IG11c3QgYmUgYSBub24gbnVsbCBvYmplY3Qgd2hlbiBzcGVjaWZpZWQuIik7aWYodGhpcy5mPW51bGwsKGU9dFtUaV0pJiYib2JqZWN0Ij09dHlwZW9mIGUpe2lmKCJzdHJpbmciPT10eXBlb2YoZT1lW0FpXSkmJmUubGVuZ3RoKXRoaXMuZj1lO2Vsc2UgaWYodm9pZCAwIT09ZSl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLEFpKyIgcHJvcGVydHkgbXVzdCBiZSBhIG5vbiBlbXB0eSBzdHJpbmcgd2hlbiBzcGVjaWZpZWQuIil9ZWxzZSBpZih2b2lkIDAhPT1lKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsVGkrIiBwcm9wZXJ0eSBtdXN0IGJlIGEgbm9uIG51bGwgb2JqZWN0IHdoZW4gc3BlY2lmaWVkLiIpO2lmKHZvaWQgMCE9PShlPXRbSWldKSYmImJvb2xlYW4iIT10eXBlb2YgZSl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLElpKyIgcHJvcGVydHkgbXVzdCBiZSBhIGJvb2xlYW4gd2hlbiBzcGVjaWZpZWQuIik7aWYodGhpcy5jPSEhZSx2b2lkIDAhPT0odD10W19pXSkmJigic3RyaW5nIiE9dHlwZW9mIHR8fCJzdHJpbmciPT10eXBlb2YgdCYmIXQubGVuZ3RoKSl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLF9pKyIgcHJvcGVydHkgbXVzdCBiZSBhIG5vbiBlbXB0eSBzdHJpbmcgd2hlbiBzcGVjaWZpZWQuIik7dGhpcy5pPXR8fG51bGx9dmFyIHdpPSJhbmRyb2lkIixfaT0iZHluYW1pY0xpbmtEb21haW4iLElpPSJoYW5kbGVDb2RlSW5BcHAiLFRpPSJpT1MiLEVpPSJ1cmwiLFNpPSJpbnN0YWxsQXBwIixDaT0ibWluaW11bVZlcnNpb24iLE5pPSJwYWNrYWdlTmFtZSIsQWk9ImJ1bmRsZUlkIjtmdW5jdGlvbiBraSh0KXt2YXIgZSxuPXt9O2ZvcihlIGluIG4uY29udGludWVVcmw9dC5oLG4uY2FuSGFuZGxlQ29kZUluQXBwPXQuYywobi5hbmRyb2lkUGFja2FnZU5hbWU9dC5hKSYmKG4uYW5kcm9pZE1pbmltdW1WZXJzaW9uPXQuYixuLmFuZHJvaWRJbnN0YWxsQXBwPXQuZyksbi5pT1NCdW5kbGVJZD10LmYsbi5keW5hbWljTGlua0RvbWFpbj10LmksbiludWxsPT09bltlXSYmZGVsZXRlIG5bZV07cmV0dXJuIG59dmFyIFJpPW51bGw7ZnVuY3Rpb24gUGkodCl7dmFyIGU9W107cmV0dXJuIGZ1bmN0aW9uKHIsdCl7ZnVuY3Rpb24gZSh0KXtmb3IoO2k8ci5sZW5ndGg7KXt2YXIgZT1yLmNoYXJBdChpKyspLG49UmlbZV07aWYobnVsbCE9bilyZXR1cm4gbjtpZighL15bXHNceGEwXSokLy50ZXN0KGUpKXRocm93IEVycm9yKCJVbmtub3duIGJhc2U2NCBlbmNvZGluZyBhdCBjaGFyOiAiK2UpfXJldHVybiB0fSFmdW5jdGlvbigpe2lmKCFSaSl7Umk9e307Zm9yKHZhciB0PSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGU9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl0sbj0wO248NTtuKyspZm9yKHZhciByPXQuY29uY2F0KGVbbl0uc3BsaXQoIiIpKSxpPTA7aTxyLmxlbmd0aDtpKyspe3ZhciBvPXJbaV07dm9pZCAwPT09Umlbb10mJihSaVtvXT1pKX19fSgpO2Zvcih2YXIgaT0wOzspe3ZhciBuPWUoLTEpLG89ZSgwKSxzPWUoNjQpLGE9ZSg2NCk7aWYoNjQ9PT1hJiYtMT09PW4pYnJlYWs7dChuPDwyfG8+PjQpLDY0IT1zJiYodChvPDw0JjI0MHxzPj4yKSw2NCE9YSYmdChzPDw2JjE5MnxhKSl9fSh0LGZ1bmN0aW9uKHQpe2UucHVzaCh0KX0pLGV9ZnVuY3Rpb24gT2kodCl7dmFyIGU9eGkodCk7aWYoIShlJiZlLnN1YiYmZS5pc3MmJmUuYXVkJiZlLmV4cCkpdGhyb3cgRXJyb3IoIkludmFsaWQgSldUIik7dGhpcy5oPXQsdGhpcy5hPWUuZXhwLHRoaXMuaT1lLnN1Yix0PURhdGUubm93KCkvMWUzLHRoaXMuZz1lLmlhdHx8KHQ+dGhpcy5hP3RoaXMuYTp0KSx0aGlzLmI9ZS5wcm92aWRlcl9pZHx8ZS5maXJlYmFzZSYmZS5maXJlYmFzZS5zaWduX2luX3Byb3ZpZGVyfHxudWxsLHRoaXMuZj1lLmZpcmViYXNlJiZlLmZpcmViYXNlLnRlbmFudHx8bnVsbCx0aGlzLmM9ISFlLmlzX2Fub255bW91c3x8ImFub255bW91cyI9PXRoaXMuYn1mdW5jdGlvbiBEaSh0KXt0cnl7cmV0dXJuIG5ldyBPaSh0KX1jYXRjaCh0KXtyZXR1cm4gbnVsbH19ZnVuY3Rpb24geGkodCl7aWYoIXQpcmV0dXJuIG51bGw7aWYoMyE9KHQ9dC5zcGxpdCgiLiIpKS5sZW5ndGgpcmV0dXJuIG51bGw7Zm9yKHZhciBlPSg0LSh0PXRbMV0pLmxlbmd0aCU0KSU0LG49MDtuPGU7bisrKXQrPSIuIjt0cnl7dmFyIHI9UGkodCk7Zm9yKHQ9W10sbj1lPTA7ZTxyLmxlbmd0aDspe3ZhciBpLG8scyxhPXJbZSsrXTthPDEyOD90W24rK109U3RyaW5nLmZyb21DaGFyQ29kZShhKToxOTE8YSYmYTwyMjQ/KGk9cltlKytdLHRbbisrXT1TdHJpbmcuZnJvbUNoYXJDb2RlKCgzMSZhKTw8Nnw2MyZpKSk6MjM5PGEmJmE8MzY1PyhzPSgoNyZhKTw8MTh8KDYzJihpPXJbZSsrXSkpPDwxMnwoNjMmKG89cltlKytdKSk8PDZ8NjMmcltlKytdKS02NTUzNix0W24rK109U3RyaW5nLmZyb21DaGFyQ29kZSg1NTI5Nisocz4+MTApKSx0W24rK109U3RyaW5nLmZyb21DaGFyQ29kZSg1NjMyMCsoMTAyMyZzKSkpOihpPXJbZSsrXSxvPXJbZSsrXSx0W24rK109U3RyaW5nLmZyb21DaGFyQ29kZSgoMTUmYSk8PDEyfCg2MyZpKTw8Nnw2MyZvKSl9cmV0dXJuIEpTT04ucGFyc2UodC5qb2luKCIiKSl9Y2F0Y2godCl7fXJldHVybiBudWxsfU9pLnByb3RvdHlwZS5UPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZn0sT2kucHJvdG90eXBlLmw9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jfSxPaS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ofTt2YXIgTGk9Im9hdXRoX2NvbnN1bWVyX2tleSBvYXV0aF9ub25jZSBvYXV0aF9zaWduYXR1cmUgb2F1dGhfc2lnbmF0dXJlX21ldGhvZCBvYXV0aF90aW1lc3RhbXAgb2F1dGhfdG9rZW4gb2F1dGhfdmVyc2lvbiIuc3BsaXQoIiAiKSxNaT1bImNsaWVudF9pZCIsInJlc3BvbnNlX3R5cGUiLCJzY29wZSIsInJlZGlyZWN0X3VyaSIsInN0YXRlIl0sRmk9e25kOntKYToibG9jYWxlIix1YTo3MDAsdGE6NjAwLGZhOiJmYWNlYm9vay5jb20iLFhhOk1pfSxwZDp7SmE6bnVsbCx1YTo1MDAsdGE6NzUwLGZhOiJnaXRodWIuY29tIixYYTpNaX0scWQ6e0phOiJobCIsdWE6NTE1LHRhOjY4MCxmYToiZ29vZ2xlLmNvbSIsWGE6TWl9LHdkOntKYToibGFuZyIsdWE6NDg1LHRhOjcwNSxmYToidHdpdHRlci5jb20iLFhhOkxpfSxrZDp7SmE6ImxvY2FsZSIsdWE6NjQwLHRhOjYwMCxmYToiYXBwbGUuY29tIixYYTpbXX19O2Z1bmN0aW9uIFVpKHQpe2Zvcih2YXIgZSBpbiBGaSlpZihGaVtlXS5mYT09dClyZXR1cm4gRmlbZV07cmV0dXJuIG51bGx9ZnVuY3Rpb24gamkodCl7dmFyIGU9e307ZVsiZmFjZWJvb2suY29tIl09V2ksZVsiZ29vZ2xlLmNvbSJdPUdpLGVbImdpdGh1Yi5jb20iXT1IaSxlWyJ0d2l0dGVyLmNvbSJdPXppO3ZhciBuPXQmJnRbVmldO3RyeXtpZihuKXJldHVybiBuZXcoZVtuXXx8S2kpKHQpO2lmKHZvaWQgMCE9PXRbcWldKXJldHVybiBuZXcgQmkodCl9Y2F0Y2godCl7fXJldHVybiBudWxsfXZhciBxaT0iaWRUb2tlbiIsVmk9InByb3ZpZGVySWQiO2Z1bmN0aW9uIEJpKHQpe3ZhciBlLG49dFtWaV07aWYobnx8IXRbcWldfHwoZT1EaSh0W3FpXSkpJiZlLmImJihuPWUuYiksIW4pdGhyb3cgRXJyb3IoIkludmFsaWQgYWRkaXRpb25hbCB1c2VyIGluZm8hIik7ImFub255bW91cyIhPW4mJiJjdXN0b20iIT1ufHwobj1udWxsKSxlPSExLHZvaWQgMCE9PXQuaXNOZXdVc2VyP2U9ISF0LmlzTmV3VXNlcjoiaWRlbnRpdHl0b29sa2l0I1NpZ251cE5ld1VzZXJSZXNwb25zZSI9PT10LmtpbmQmJihlPSEwKSxqcih0aGlzLCJwcm92aWRlcklkIixuKSxqcih0aGlzLCJpc05ld1VzZXIiLGUpfWZ1bmN0aW9uIEtpKHQpe0JpLmNhbGwodGhpcyx0KSxqcih0aGlzLCJwcm9maWxlIixCcigodD1Dcih0LnJhd1VzZXJJbmZvfHwie30iKSl8fHt9KSl9ZnVuY3Rpb24gV2kodCl7aWYoS2kuY2FsbCh0aGlzLHQpLCJmYWNlYm9vay5jb20iIT10aGlzLnByb3ZpZGVySWQpdGhyb3cgRXJyb3IoIkludmFsaWQgcHJvdmlkZXIgSUQhIil9ZnVuY3Rpb24gSGkodCl7aWYoS2kuY2FsbCh0aGlzLHQpLCJnaXRodWIuY29tIiE9dGhpcy5wcm92aWRlcklkKXRocm93IEVycm9yKCJJbnZhbGlkIHByb3ZpZGVyIElEISIpO2pyKHRoaXMsInVzZXJuYW1lIix0aGlzLnByb2ZpbGUmJnRoaXMucHJvZmlsZS5sb2dpbnx8bnVsbCl9ZnVuY3Rpb24gR2kodCl7aWYoS2kuY2FsbCh0aGlzLHQpLCJnb29nbGUuY29tIiE9dGhpcy5wcm92aWRlcklkKXRocm93IEVycm9yKCJJbnZhbGlkIHByb3ZpZGVyIElEISIpfWZ1bmN0aW9uIHppKHQpe2lmKEtpLmNhbGwodGhpcyx0KSwidHdpdHRlci5jb20iIT10aGlzLnByb3ZpZGVySWQpdGhyb3cgRXJyb3IoIkludmFsaWQgcHJvdmlkZXIgSUQhIik7anIodGhpcywidXNlcm5hbWUiLHQuc2NyZWVuTmFtZXx8bnVsbCl9ZnVuY3Rpb24gUWkodCl7dmFyIGU9QW4ocj1rbih0KSwibGluayIpLG49QW4oa24oZSksImxpbmsiKSxyPUFuKHIsImRlZXBfbGlua19pZCIpO3JldHVybiBBbihrbihyKSwibGluayIpfHxyfHxufHxlfHx0fWZ1bmN0aW9uIFlpKHQsZSl7aWYoIXQmJiFlKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsIkludGVybmFsIGFzc2VydDogbm8gcmF3IHNlc3Npb24gc3RyaW5nIGF2YWlsYWJsZSIpO2lmKHQmJmUpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIiwiSW50ZXJuYWwgYXNzZXJ0OiB1bmFibGUgdG8gZGV0ZXJtaW5lIHRoZSBzZXNzaW9uIHR5cGUiKTt0aGlzLmE9dHx8bnVsbCx0aGlzLmI9ZXx8bnVsbCx0aGlzLnR5cGU9dGhpcy5hP1hpOkppfXcoS2ksQmkpLHcoV2ksS2kpLHcoSGksS2kpLHcoR2ksS2kpLHcoemksS2kpO3ZhciBYaT0iZW5yb2xsIixKaT0ic2lnbmluIjtmdW5jdGlvbiAkaSgpe31mdW5jdGlvbiBaaSh0LG4pe3JldHVybiB0LnRoZW4oZnVuY3Rpb24odCl7aWYodFtCc10pe3ZhciBlPURpKHRbQnNdKTtpZighZXx8biE9ZS5pKXRocm93IG5ldyBJKCJ1c2VyLW1pc21hdGNoIik7cmV0dXJuIHR9dGhyb3cgbmV3IEkoInVzZXItbWlzbWF0Y2giKX0pLm8oZnVuY3Rpb24odCl7dGhyb3cgdCYmdC5jb2RlJiZ0LmNvZGU9PVMrInVzZXItbm90LWZvdW5kIj9uZXcgSSgidXNlci1taXNtYXRjaCIpOnR9KX1mdW5jdGlvbiB0byh0LGUpe2lmKCFlKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsImZhaWxlZCB0byBjb25zdHJ1Y3QgYSBjcmVkZW50aWFsIik7dGhpcy5hPWUsanIodGhpcywicHJvdmlkZXJJZCIsdCksanIodGhpcywic2lnbkluTWV0aG9kIix0KX1mdW5jdGlvbiBlbyh0KXtyZXR1cm57cGVuZGluZ1Rva2VuOnQuYSxyZXF1ZXN0VXJpOiJodHRwOi8vbG9jYWxob3N0In19ZnVuY3Rpb24gbm8odCl7aWYodCYmdC5wcm92aWRlcklkJiZ0LnNpZ25Jbk1ldGhvZCYmMD09dC5wcm92aWRlcklkLmluZGV4T2YoInNhbWwuIikmJnQucGVuZGluZ1Rva2VuKXRyeXtyZXR1cm4gbmV3IHRvKHQucHJvdmlkZXJJZCx0LnBlbmRpbmdUb2tlbil9Y2F0Y2godCl7fXJldHVybiBudWxsfWZ1bmN0aW9uIHJvKHQsZSxuKXtpZih0aGlzLmE9bnVsbCxlLmlkVG9rZW58fGUuYWNjZXNzVG9rZW4pZS5pZFRva2VuJiZqcih0aGlzLCJpZFRva2VuIixlLmlkVG9rZW4pLGUuYWNjZXNzVG9rZW4mJmpyKHRoaXMsImFjY2Vzc1Rva2VuIixlLmFjY2Vzc1Rva2VuKSxlLm5vbmNlJiYhZS5wZW5kaW5nVG9rZW4mJmpyKHRoaXMsIm5vbmNlIixlLm5vbmNlKSxlLnBlbmRpbmdUb2tlbiYmKHRoaXMuYT1lLnBlbmRpbmdUb2tlbik7ZWxzZXtpZighZS5vYXV0aFRva2VufHwhZS5vYXV0aFRva2VuU2VjcmV0KXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsImZhaWxlZCB0byBjb25zdHJ1Y3QgYSBjcmVkZW50aWFsIik7anIodGhpcywiYWNjZXNzVG9rZW4iLGUub2F1dGhUb2tlbiksanIodGhpcywic2VjcmV0IixlLm9hdXRoVG9rZW5TZWNyZXQpfWpyKHRoaXMsInByb3ZpZGVySWQiLHQpLGpyKHRoaXMsInNpZ25Jbk1ldGhvZCIsbil9ZnVuY3Rpb24gaW8odCl7dmFyIGU9e307cmV0dXJuIHQuaWRUb2tlbiYmKGUuaWRfdG9rZW49dC5pZFRva2VuKSx0LmFjY2Vzc1Rva2VuJiYoZS5hY2Nlc3NfdG9rZW49dC5hY2Nlc3NUb2tlbiksdC5zZWNyZXQmJihlLm9hdXRoX3Rva2VuX3NlY3JldD10LnNlY3JldCksZS5wcm92aWRlcklkPXQucHJvdmlkZXJJZCx0Lm5vbmNlJiYhdC5hJiYoZS5ub25jZT10Lm5vbmNlKSxlPXtwb3N0Qm9keTpWbihlKS50b1N0cmluZygpLHJlcXVlc3RVcmk6Imh0dHA6Ly9sb2NhbGhvc3QifSx0LmEmJihkZWxldGUgZS5wb3N0Qm9keSxlLnBlbmRpbmdUb2tlbj10LmEpLGV9ZnVuY3Rpb24gb28odCl7aWYodCYmdC5wcm92aWRlcklkJiZ0LnNpZ25Jbk1ldGhvZCl7dmFyIGU9e2lkVG9rZW46dC5vYXV0aElkVG9rZW4sYWNjZXNzVG9rZW46dC5vYXV0aFRva2VuU2VjcmV0P251bGw6dC5vYXV0aEFjY2Vzc1Rva2VuLG9hdXRoVG9rZW5TZWNyZXQ6dC5vYXV0aFRva2VuU2VjcmV0LG9hdXRoVG9rZW46dC5vYXV0aFRva2VuU2VjcmV0JiZ0Lm9hdXRoQWNjZXNzVG9rZW4sbm9uY2U6dC5ub25jZSxwZW5kaW5nVG9rZW46dC5wZW5kaW5nVG9rZW59O3RyeXtyZXR1cm4gbmV3IHJvKHQucHJvdmlkZXJJZCxlLHQuc2lnbkluTWV0aG9kKX1jYXRjaCh0KXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHNvKHQsZSl7dGhpcy5RYz1lfHxbXSxxcih0aGlzLHtwcm92aWRlcklkOnQsaXNPQXV0aFByb3ZpZGVyOiEwfSksdGhpcy5JYj17fSx0aGlzLnBiPShVaSh0KXx8e30pLkphfHxudWxsLHRoaXMub2I9bnVsbH1mdW5jdGlvbiBhbyh0KXtpZigic3RyaW5nIiE9dHlwZW9mIHR8fDAhPXQuaW5kZXhPZigic2FtbC4iKSl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLCdTQU1MIHByb3ZpZGVyIElEcyBtdXN0IGJlIHByZWZpeGVkIHdpdGggInNhbWwuIicpO3NvLmNhbGwodGhpcyx0LFtdKX1mdW5jdGlvbiB1byh0KXtzby5jYWxsKHRoaXMsdCxNaSksdGhpcy5hPVtdfWZ1bmN0aW9uIGNvKCl7dW8uY2FsbCh0aGlzLCJmYWNlYm9vay5jb20iKX1mdW5jdGlvbiBobyh0KXtpZighdCl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLCJjcmVkZW50aWFsIGZhaWxlZDogZXhwZWN0ZWQgMSBhcmd1bWVudCAodGhlIE9BdXRoIGFjY2VzcyB0b2tlbikuIik7dmFyIGU9dDtyZXR1cm4gZyh0KSYmKGU9dC5hY2Nlc3NUb2tlbiksKG5ldyBjbykuY3JlZGVudGlhbCh7YWNjZXNzVG9rZW46ZX0pfWZ1bmN0aW9uIGxvKCl7dW8uY2FsbCh0aGlzLCJnaXRodWIuY29tIil9ZnVuY3Rpb24gZm8odCl7aWYoIXQpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIiwiY3JlZGVudGlhbCBmYWlsZWQ6IGV4cGVjdGVkIDEgYXJndW1lbnQgKHRoZSBPQXV0aCBhY2Nlc3MgdG9rZW4pLiIpO3ZhciBlPXQ7cmV0dXJuIGcodCkmJihlPXQuYWNjZXNzVG9rZW4pLChuZXcgbG8pLmNyZWRlbnRpYWwoe2FjY2Vzc1Rva2VuOmV9KX1mdW5jdGlvbiBwbygpe3VvLmNhbGwodGhpcywiZ29vZ2xlLmNvbSIpLHRoaXMuQ2EoInByb2ZpbGUiKX1mdW5jdGlvbiB2byh0LGUpe3ZhciBuPXQ7cmV0dXJuIGcodCkmJihuPXQuaWRUb2tlbixlPXQuYWNjZXNzVG9rZW4pLChuZXcgcG8pLmNyZWRlbnRpYWwoe2lkVG9rZW46bixhY2Nlc3NUb2tlbjplfSl9ZnVuY3Rpb24gZ28oKXtzby5jYWxsKHRoaXMsInR3aXR0ZXIuY29tIixMaSl9ZnVuY3Rpb24geW8odCxlKXt2YXIgbj10O2lmKCEobj0hZyhuKT97b2F1dGhUb2tlbjp0LG9hdXRoVG9rZW5TZWNyZXQ6ZX06bikub2F1dGhUb2tlbnx8IW4ub2F1dGhUb2tlblNlY3JldCl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLCJjcmVkZW50aWFsIGZhaWxlZDogZXhwZWN0ZWQgMiBhcmd1bWVudHMgKHRoZSBPQXV0aCBhY2Nlc3MgdG9rZW4gYW5kIHNlY3JldCkuIik7cmV0dXJuIG5ldyBybygidHdpdHRlci5jb20iLG4sInR3aXR0ZXIuY29tIil9ZnVuY3Rpb24gbW8odCxlLG4pe3RoaXMuYT10LHRoaXMuZj1lLGpyKHRoaXMsInByb3ZpZGVySWQiLCJwYXNzd29yZCIpLGpyKHRoaXMsInNpZ25Jbk1ldGhvZCIsbj09PXdvLkVNQUlMX0xJTktfU0lHTl9JTl9NRVRIT0Q/d28uRU1BSUxfTElOS19TSUdOX0lOX01FVEhPRDp3by5FTUFJTF9QQVNTV09SRF9TSUdOX0lOX01FVEhPRCl9ZnVuY3Rpb24gYm8odCl7cmV0dXJuIHQmJnQuZW1haWwmJnQucGFzc3dvcmQ/bmV3IG1vKHQuZW1haWwsdC5wYXNzd29yZCx0LnNpZ25Jbk1ldGhvZCk6bnVsbH1mdW5jdGlvbiB3bygpe3FyKHRoaXMse3Byb3ZpZGVySWQ6InBhc3N3b3JkIixpc09BdXRoUHJvdmlkZXI6ITF9KX1mdW5jdGlvbiBfbyh0LGUpe2lmKCEoZT1JbyhlKSkpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIiwiSW52YWxpZCBlbWFpbCBsaW5rISIpO3JldHVybiBuZXcgbW8odCxlLmNvZGUsd28uRU1BSUxfTElOS19TSUdOX0lOX01FVEhPRCl9ZnVuY3Rpb24gSW8odCl7cmV0dXJuKHQ9bWkodD1RaSh0KSkpJiZ0Lm9wZXJhdGlvbj09PSRyP3Q6bnVsbH1mdW5jdGlvbiBUbyh0KXtpZighKHQuZWImJnQuY2J8fHQuTGEmJnQuZWEpKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpO3RoaXMuYT10LGpyKHRoaXMsInByb3ZpZGVySWQiLCJwaG9uZSIpLHRoaXMuZmE9InBob25lIixqcih0aGlzLCJzaWduSW5NZXRob2QiLCJwaG9uZSIpfWZ1bmN0aW9uIEVvKGUpe2lmKGUmJiJwaG9uZSI9PT1lLnByb3ZpZGVySWQmJihlLnZlcmlmaWNhdGlvbklkJiZlLnZlcmlmaWNhdGlvbkNvZGV8fGUudGVtcG9yYXJ5UHJvb2YmJmUucGhvbmVOdW1iZXIpKXt2YXIgbj17fTtyZXR1cm4gaihbInZlcmlmaWNhdGlvbklkIiwidmVyaWZpY2F0aW9uQ29kZSIsInRlbXBvcmFyeVByb29mIiwicGhvbmVOdW1iZXIiXSxmdW5jdGlvbih0KXtlW3RdJiYoblt0XT1lW3RdKX0pLG5ldyBUbyhuKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBTbyh0KXtyZXR1cm4gdC5hLkxhJiZ0LmEuZWE/e3RlbXBvcmFyeVByb29mOnQuYS5MYSxwaG9uZU51bWJlcjp0LmEuZWF9OntzZXNzaW9uSW5mbzp0LmEuZWIsY29kZTp0LmEuY2J9fWZ1bmN0aW9uIENvKHQpe3RyeXt0aGlzLmE9dHx8WGwuYXV0aCgpfWNhdGNoKHQpe3Rocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsIkVpdGhlciBhbiBpbnN0YW5jZSBvZiBmaXJlYmFzZS5hdXRoLkF1dGggbXVzdCBiZSBwYXNzZWQgYXMgYW4gYXJndW1lbnQgdG8gdGhlIGZpcmViYXNlLmF1dGguUGhvbmVBdXRoUHJvdmlkZXIgY29uc3RydWN0b3IsIG9yIHRoZSBkZWZhdWx0IGZpcmViYXNlIEFwcCBpbnN0YW5jZSBtdXN0IGJlIGluaXRpYWxpemVkIHZpYSBmaXJlYmFzZS5pbml0aWFsaXplQXBwKCkuIil9cXIodGhpcyx7cHJvdmlkZXJJZDoicGhvbmUiLGlzT0F1dGhQcm92aWRlcjohMX0pfWZ1bmN0aW9uIE5vKHQsZSl7aWYoIXQpdGhyb3cgbmV3IEkoIm1pc3NpbmctdmVyaWZpY2F0aW9uLWlkIik7aWYoIWUpdGhyb3cgbmV3IEkoIm1pc3NpbmctdmVyaWZpY2F0aW9uLWNvZGUiKTtyZXR1cm4gbmV3IFRvKHtlYjp0LGNiOmV9KX1mdW5jdGlvbiBBbyh0KXtpZih0LnRlbXBvcmFyeVByb29mJiZ0LnBob25lTnVtYmVyKXJldHVybiBuZXcgVG8oe0xhOnQudGVtcG9yYXJ5UHJvb2YsZWE6dC5waG9uZU51bWJlcn0pO3ZhciBlPXQmJnQucHJvdmlkZXJJZDtpZighZXx8InBhc3N3b3JkIj09PWUpcmV0dXJuIG51bGw7dmFyIG49dCYmdC5vYXV0aEFjY2Vzc1Rva2VuLHI9dCYmdC5vYXV0aFRva2VuU2VjcmV0LGk9dCYmdC5ub25jZSxvPXQmJnQub2F1dGhJZFRva2VuLHM9dCYmdC5wZW5kaW5nVG9rZW47dHJ5e3N3aXRjaChlKXtjYXNlImdvb2dsZS5jb20iOnJldHVybiB2byhvLG4pO2Nhc2UiZmFjZWJvb2suY29tIjpyZXR1cm4gaG8obik7Y2FzZSJnaXRodWIuY29tIjpyZXR1cm4gZm8obik7Y2FzZSJ0d2l0dGVyLmNvbSI6cmV0dXJuIHlvKG4scik7ZGVmYXVsdDpyZXR1cm4gbnx8cnx8b3x8cz9zPzA9PWUuaW5kZXhPZigic2FtbC4iKT9uZXcgdG8oZSxzKTpuZXcgcm8oZSx7cGVuZGluZ1Rva2VuOnMsaWRUb2tlbjp0Lm9hdXRoSWRUb2tlbixhY2Nlc3NUb2tlbjp0Lm9hdXRoQWNjZXNzVG9rZW59LGUpOm5ldyB1byhlKS5jcmVkZW50aWFsKHtpZFRva2VuOm8sYWNjZXNzVG9rZW46bixyYXdOb25jZTppfSk6bnVsbH19Y2F0Y2godCl7cmV0dXJuIG51bGx9fWZ1bmN0aW9uIGtvKHQpe2lmKCF0LmlzT0F1dGhQcm92aWRlcil0aHJvdyBuZXcgSSgiaW52YWxpZC1vYXV0aC1wcm92aWRlciIpfWZ1bmN0aW9uIFJvKHQsZSxuLHIsaSxvLHMpe2lmKHRoaXMuYz10LHRoaXMuYj1lfHxudWxsLHRoaXMuZz1ufHxudWxsLHRoaXMuZj1yfHxudWxsLHRoaXMuaT1vfHxudWxsLHRoaXMuaD1zfHxudWxsLHRoaXMuYT1pfHxudWxsLCF0aGlzLmcmJiF0aGlzLmEpdGhyb3cgbmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpO2lmKHRoaXMuZyYmdGhpcy5hKXRocm93IG5ldyBJKCJpbnZhbGlkLWF1dGgtZXZlbnQiKTtpZih0aGlzLmcmJiF0aGlzLmYpdGhyb3cgbmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpfWZ1bmN0aW9uIFBvKHQpe3JldHVybih0PXR8fHt9KS50eXBlP25ldyBSbyh0LnR5cGUsdC5ldmVudElkLHQudXJsUmVzcG9uc2UsdC5zZXNzaW9uSWQsdC5lcnJvciYmVCh0LmVycm9yKSx0LnBvc3RCb2R5LHQudGVuYW50SWQpOm51bGx9ZnVuY3Rpb24gT28oKXt0aGlzLmI9bnVsbCx0aGlzLmE9W119WWkucHJvdG90eXBlLkhhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYT9iZSh0aGlzLmEpOmJlKHRoaXMuYil9LFlpLnByb3RvdHlwZS53PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudHlwZT09WGk/e211bHRpRmFjdG9yU2Vzc2lvbjp7aWRUb2tlbjp0aGlzLmF9fTp7bXVsdGlGYWN0b3JTZXNzaW9uOntwZW5kaW5nQ3JlZGVudGlhbDp0aGlzLmJ9fX0sJGkucHJvdG90eXBlLmthPWZ1bmN0aW9uKCl7fSwkaS5wcm90b3R5cGUuYj1mdW5jdGlvbigpe30sJGkucHJvdG90eXBlLmM9ZnVuY3Rpb24oKXt9LCRpLnByb3RvdHlwZS53PWZ1bmN0aW9uKCl7fSx0by5wcm90b3R5cGUua2E9ZnVuY3Rpb24odCl7cmV0dXJuIGhhKHQsZW8odGhpcykpfSx0by5wcm90b3R5cGUuYj1mdW5jdGlvbih0LGUpe3ZhciBuPWVvKHRoaXMpO3JldHVybiBuLmlkVG9rZW49ZSxsYSh0LG4pfSx0by5wcm90b3R5cGUuYz1mdW5jdGlvbih0LGUpe3JldHVybiBaaShmYSh0LGVvKHRoaXMpKSxlKX0sdG8ucHJvdG90eXBlLnc9ZnVuY3Rpb24oKXtyZXR1cm57cHJvdmlkZXJJZDp0aGlzLnByb3ZpZGVySWQsc2lnbkluTWV0aG9kOnRoaXMuc2lnbkluTWV0aG9kLHBlbmRpbmdUb2tlbjp0aGlzLmF9fSxyby5wcm90b3R5cGUua2E9ZnVuY3Rpb24odCl7cmV0dXJuIGhhKHQsaW8odGhpcykpfSxyby5wcm90b3R5cGUuYj1mdW5jdGlvbih0LGUpe3ZhciBuPWlvKHRoaXMpO3JldHVybiBuLmlkVG9rZW49ZSxsYSh0LG4pfSxyby5wcm90b3R5cGUuYz1mdW5jdGlvbih0LGUpe3JldHVybiBaaShmYSh0LGlvKHRoaXMpKSxlKX0scm8ucHJvdG90eXBlLnc9ZnVuY3Rpb24oKXt2YXIgdD17cHJvdmlkZXJJZDp0aGlzLnByb3ZpZGVySWQsc2lnbkluTWV0aG9kOnRoaXMuc2lnbkluTWV0aG9kfTtyZXR1cm4gdGhpcy5pZFRva2VuJiYodC5vYXV0aElkVG9rZW49dGhpcy5pZFRva2VuKSx0aGlzLmFjY2Vzc1Rva2VuJiYodC5vYXV0aEFjY2Vzc1Rva2VuPXRoaXMuYWNjZXNzVG9rZW4pLHRoaXMuc2VjcmV0JiYodC5vYXV0aFRva2VuU2VjcmV0PXRoaXMuc2VjcmV0KSx0aGlzLm5vbmNlJiYodC5ub25jZT10aGlzLm5vbmNlKSx0aGlzLmEmJih0LnBlbmRpbmdUb2tlbj10aGlzLmEpLHR9LHNvLnByb3RvdHlwZS5LYT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5JYj1jdCh0KSx0aGlzfSx3KGFvLHNvKSx3KHVvLHNvKSx1by5wcm90b3R5cGUuQ2E9ZnVuY3Rpb24odCl7cmV0dXJuIEsodGhpcy5hLHQpfHx0aGlzLmEucHVzaCh0KSx0aGlzfSx1by5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oKXtyZXR1cm4geih0aGlzLmEpfSx1by5wcm90b3R5cGUuY3JlZGVudGlhbD1mdW5jdGlvbih0LGUpe2U9Zyh0KT97aWRUb2tlbjp0LmlkVG9rZW58fG51bGwsYWNjZXNzVG9rZW46dC5hY2Nlc3NUb2tlbnx8bnVsbCxub25jZTp0LnJhd05vbmNlfHxudWxsfTp7aWRUb2tlbjp0fHxudWxsLGFjY2Vzc1Rva2VuOmV8fG51bGx9O2lmKCFlLmlkVG9rZW4mJiFlLmFjY2Vzc1Rva2VuKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsImNyZWRlbnRpYWwgZmFpbGVkOiBtdXN0IHByb3ZpZGUgdGhlIElEIHRva2VuIGFuZC9vciB0aGUgYWNjZXNzIHRva2VuLiIpO3JldHVybiBuZXcgcm8odGhpcy5wcm92aWRlcklkLGUsdGhpcy5wcm92aWRlcklkKX0sdyhjbyx1byksanIoY28sIlBST1ZJREVSX0lEIiwiZmFjZWJvb2suY29tIiksanIoY28sIkZBQ0VCT09LX1NJR05fSU5fTUVUSE9EIiwiZmFjZWJvb2suY29tIiksdyhsbyx1byksanIobG8sIlBST1ZJREVSX0lEIiwiZ2l0aHViLmNvbSIpLGpyKGxvLCJHSVRIVUJfU0lHTl9JTl9NRVRIT0QiLCJnaXRodWIuY29tIiksdyhwbyx1byksanIocG8sIlBST1ZJREVSX0lEIiwiZ29vZ2xlLmNvbSIpLGpyKHBvLCJHT09HTEVfU0lHTl9JTl9NRVRIT0QiLCJnb29nbGUuY29tIiksdyhnbyxzbyksanIoZ28sIlBST1ZJREVSX0lEIiwidHdpdHRlci5jb20iKSxqcihnbywiVFdJVFRFUl9TSUdOX0lOX01FVEhPRCIsInR3aXR0ZXIuY29tIiksbW8ucHJvdG90eXBlLmthPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnNpZ25Jbk1ldGhvZD09d28uRU1BSUxfTElOS19TSUdOX0lOX01FVEhPRD96YSh0LHdhLHtlbWFpbDp0aGlzLmEsb29iQ29kZTp0aGlzLmZ9KTp6YSh0LEJhLHtlbWFpbDp0aGlzLmEscGFzc3dvcmQ6dGhpcy5mfSl9LG1vLnByb3RvdHlwZS5iPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuc2lnbkluTWV0aG9kPT13by5FTUFJTF9MSU5LX1NJR05fSU5fTUVUSE9EP3phKHQsX2Ese2lkVG9rZW46ZSxlbWFpbDp0aGlzLmEsb29iQ29kZTp0aGlzLmZ9KTp6YSh0LHhhLHtpZFRva2VuOmUsZW1haWw6dGhpcy5hLHBhc3N3b3JkOnRoaXMuZn0pfSxtby5wcm90b3R5cGUuYz1mdW5jdGlvbih0LGUpe3JldHVybiBaaSh0aGlzLmthKHQpLGUpfSxtby5wcm90b3R5cGUudz1mdW5jdGlvbigpe3JldHVybntlbWFpbDp0aGlzLmEscGFzc3dvcmQ6dGhpcy5mLHNpZ25Jbk1ldGhvZDp0aGlzLnNpZ25Jbk1ldGhvZH19LHFyKHdvLHtQUk9WSURFUl9JRDoicGFzc3dvcmQifSkscXIod28se0VNQUlMX0xJTktfU0lHTl9JTl9NRVRIT0Q6ImVtYWlsTGluayJ9KSxxcih3byx7RU1BSUxfUEFTU1dPUkRfU0lHTl9JTl9NRVRIT0Q6InBhc3N3b3JkIn0pLFRvLnByb3RvdHlwZS5rYT1mdW5jdGlvbih0KXtyZXR1cm4gdC5mYihTbyh0aGlzKSl9LFRvLnByb3RvdHlwZS5iPWZ1bmN0aW9uKHQsZSl7dmFyIG49U28odGhpcyk7cmV0dXJuIG4uaWRUb2tlbj1lLHphKHQsV2Esbil9LFRvLnByb3RvdHlwZS5jPWZ1bmN0aW9uKHQsZSl7dmFyIG49U28odGhpcyk7cmV0dXJuIG4ub3BlcmF0aW9uPSJSRUFVVEgiLFppKHQ9emEodCxIYSxuKSxlKX0sVG8ucHJvdG90eXBlLnc9ZnVuY3Rpb24oKXt2YXIgdD17cHJvdmlkZXJJZDoicGhvbmUifTtyZXR1cm4gdGhpcy5hLmViJiYodC52ZXJpZmljYXRpb25JZD10aGlzLmEuZWIpLHRoaXMuYS5jYiYmKHQudmVyaWZpY2F0aW9uQ29kZT10aGlzLmEuY2IpLHRoaXMuYS5MYSYmKHQudGVtcG9yYXJ5UHJvb2Y9dGhpcy5hLkxhKSx0aGlzLmEuZWEmJih0LnBob25lTnVtYmVyPXRoaXMuYS5lYSksdH0sQ28ucHJvdG90eXBlLmZiPWZ1bmN0aW9uKHIsaSl7dmFyIG89dGhpcy5hLmE7cmV0dXJuIGJlKGkudmVyaWZ5KCkpLnRoZW4oZnVuY3Rpb24obil7aWYoInN0cmluZyIhPXR5cGVvZiBuKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsIkFuIGltcGxlbWVudGF0aW9uIG9mIGZpcmViYXNlLmF1dGguQXBwbGljYXRpb25WZXJpZmllci5wcm90b3R5cGUudmVyaWZ5KCkgbXVzdCByZXR1cm4gYSBmaXJlYmFzZS5Qcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCBhIHN0cmluZy4iKTtpZigicmVjYXB0Y2hhIiE9PWkudHlwZSl0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLCdPbmx5IGZpcmViYXNlLmF1dGguQXBwbGljYXRpb25WZXJpZmllcnMgd2l0aCB0eXBlPSJyZWNhcHRjaGEiIGFyZSBjdXJyZW50bHkgc3VwcG9ydGVkLicpO3ZhciB0PWcocik/ci5zZXNzaW9uOm51bGwsZT1nKHIpP3IucGhvbmVOdW1iZXI6cix0PXQmJnQudHlwZT09WGk/dC5IYSgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHphKG8sTWEse2lkVG9rZW46dCxwaG9uZUVucm9sbG1lbnRJbmZvOntwaG9uZU51bWJlcjplLHJlY2FwdGNoYVRva2VuOm59fSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5waG9uZVNlc3Npb25JbmZvLnNlc3Npb25JbmZvfSl9KTp0JiZ0LnR5cGU9PUppP3QuSGEoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlPW8sdD17bWZhUGVuZGluZ0NyZWRlbnRpYWw6dCxtZmFFbnJvbGxtZW50SWQ6ci5tdWx0aUZhY3RvckhpbnQmJnIubXVsdGlGYWN0b3JIaW50LnVpZHx8ci5tdWx0aUZhY3RvclVpZCxwaG9uZVNpZ25JbkluZm86e3JlY2FwdGNoYVRva2VuOm59fSx6YShlLEZhLHQpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQucGhvbmVSZXNwb25zZUluZm8uc2Vzc2lvbkluZm99KTt2YXIgZX0pOnphKG8sT2Ese3Bob25lTnVtYmVyOmUscmVjYXB0Y2hhVG9rZW46bn0pO3JldHVybiB0LnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGkucmVzZXQmJmkucmVzZXQoKSx0fSxmdW5jdGlvbih0KXt0aHJvdyJmdW5jdGlvbiI9PXR5cGVvZiBpLnJlc2V0JiZpLnJlc2V0KCksdH0pfSl9LHFyKENvLHtQUk9WSURFUl9JRDoicGhvbmUifSkscXIoQ28se1BIT05FX1NJR05fSU5fTUVUSE9EOiJwaG9uZSJ9KSxSby5wcm90b3R5cGUuZ2V0VWlkPWZ1bmN0aW9uKCl7dmFyIHQ9W107cmV0dXJuIHQucHVzaCh0aGlzLmMpLHRoaXMuYiYmdC5wdXNoKHRoaXMuYiksdGhpcy5mJiZ0LnB1c2godGhpcy5mKSx0aGlzLmgmJnQucHVzaCh0aGlzLmgpLHQuam9pbigiLSIpfSxSby5wcm90b3R5cGUuVD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9LFJvLnByb3RvdHlwZS53PWZ1bmN0aW9uKCl7cmV0dXJue3R5cGU6dGhpcy5jLGV2ZW50SWQ6dGhpcy5iLHVybFJlc3BvbnNlOnRoaXMuZyxzZXNzaW9uSWQ6dGhpcy5mLHBvc3RCb2R5OnRoaXMuaSx0ZW5hbnRJZDp0aGlzLmgsZXJyb3I6dGhpcy5hJiZ0aGlzLmEudygpfX07dmFyIERvLHhvPW51bGw7ZnVuY3Rpb24gTG8odCl7dmFyIGU9InVuYXV0aG9yaXplZC1kb21haW4iLG49dm9pZCAwLHI9a24odCk7dD1yLmEsImNocm9tZS1leHRlbnNpb24iPT0ocj1yLmMpP249RnQoIlRoaXMgY2hyb21lIGV4dGVuc2lvbiBJRCAoY2hyb21lLWV4dGVuc2lvbjovLyVzKSBpcyBub3QgYXV0aG9yaXplZCB0byBydW4gdGhpcyBvcGVyYXRpb24uIEFkZCBpdCB0byB0aGUgT0F1dGggcmVkaXJlY3QgZG9tYWlucyBsaXN0IGluIHRoZSBGaXJlYmFzZSBjb25zb2xlIC0+IEF1dGggc2VjdGlvbiAtPiBTaWduIGluIG1ldGhvZCB0YWIuIix0KToiaHR0cCI9PXJ8fCJodHRwcyI9PXI/bj1GdCgiVGhpcyBkb21haW4gKCVzKSBpcyBub3QgYXV0aG9yaXplZCB0byBydW4gdGhpcyBvcGVyYXRpb24uIEFkZCBpdCB0byB0aGUgT0F1dGggcmVkaXJlY3QgZG9tYWlucyBsaXN0IGluIHRoZSBGaXJlYmFzZSBjb25zb2xlIC0+IEF1dGggc2VjdGlvbiAtPiBTaWduIGluIG1ldGhvZCB0YWIuIix0KTplPSJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IixJLmNhbGwodGhpcyxlLG4pfWZ1bmN0aW9uIE1vKHQsZSxuKXtJLmNhbGwodGhpcyx0LG4pLCh0PWV8fHt9KS5KYiYmanIodGhpcywiZW1haWwiLHQuSmIpLHQuZWEmJmpyKHRoaXMsInBob25lTnVtYmVyIix0LmVhKSx0LmNyZWRlbnRpYWwmJmpyKHRoaXMsImNyZWRlbnRpYWwiLHQuY3JlZGVudGlhbCksdC5aYiYmanIodGhpcywidGVuYW50SWQiLHQuWmIpfWZ1bmN0aW9uIEZvKHQpe2lmKHQuY29kZSl7dmFyIGU9dC5jb2RlfHwiIjswPT1lLmluZGV4T2YoUykmJihlPWUuc3Vic3RyaW5nKFMubGVuZ3RoKSk7dmFyIG49e2NyZWRlbnRpYWw6QW8odCksWmI6dC50ZW5hbnRJZH07aWYodC5lbWFpbCluLkpiPXQuZW1haWw7ZWxzZSBpZih0LnBob25lTnVtYmVyKW4uZWE9dC5waG9uZU51bWJlcjtlbHNlIGlmKCFuLmNyZWRlbnRpYWwpcmV0dXJuIG5ldyBJKGUsdC5tZXNzYWdlfHx2b2lkIDApO3JldHVybiBuZXcgTW8oZSxuLHQubWVzc2FnZSl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gVW8oKXt9ZnVuY3Rpb24gam8odCl7cmV0dXJuIHQuY3x8KHQuYz10LmIoKSl9ZnVuY3Rpb24gcW8oKXt9ZnVuY3Rpb24gVm8odCl7aWYodC5mfHwidW5kZWZpbmVkIiE9dHlwZW9mIFhNTEh0dHBSZXF1ZXN0fHwidW5kZWZpbmVkIj09dHlwZW9mIEFjdGl2ZVhPYmplY3QpcmV0dXJuIHQuZjtmb3IodmFyIGU9WyJNU1hNTDIuWE1MSFRUUC42LjAiLCJNU1hNTDIuWE1MSFRUUC4zLjAiLCJNU1hNTDIuWE1MSFRUUCIsIk1pY3Jvc29mdC5YTUxIVFRQIl0sbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dO3RyeXtyZXR1cm4gbmV3IEFjdGl2ZVhPYmplY3QociksdC5mPXJ9Y2F0Y2godCl7fX10aHJvdyBFcnJvcigiQ291bGQgbm90IGNyZWF0ZSBBY3RpdmVYT2JqZWN0LiBBY3RpdmVYIG1pZ2h0IGJlIGRpc2FibGVkLCBvciBNU1hNTCBtaWdodCBub3QgYmUgaW5zdGFsbGVkIil9ZnVuY3Rpb24gQm8oKXt9ZnVuY3Rpb24gS28oKXt0aGlzLmE9bmV3IFhEb21haW5SZXF1ZXN0LHRoaXMucmVhZHlTdGF0ZT0wLHRoaXMub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsdGhpcy5yZXNwb25zZVR5cGU9dGhpcy5yZXNwb25zZVRleHQ9dGhpcy5yZXNwb25zZT0iIix0aGlzLnN0YXR1cz0tMSx0aGlzLnN0YXR1c1RleHQ9IiIsdGhpcy5hLm9ubG9hZD1tKHRoaXMucWMsdGhpcyksdGhpcy5hLm9uZXJyb3I9bSh0aGlzLlNiLHRoaXMpLHRoaXMuYS5vbnByb2dyZXNzPW0odGhpcy5yYyx0aGlzKSx0aGlzLmEub250aW1lb3V0PW0odGhpcy52Yyx0aGlzKX1mdW5jdGlvbiBXbyh0LGUpe3QucmVhZHlTdGF0ZT1lLHQub25yZWFkeXN0YXRlY2hhbmdlJiZ0Lm9ucmVhZHlzdGF0ZWNoYW5nZSgpfWZ1bmN0aW9uIEhvKHQsZSxuKXt0aGlzLnJlc2V0KHQsZSxuLHZvaWQgMCx2b2lkIDApfWZ1bmN0aW9uIEdvKHQpe3RoaXMuZj10LHRoaXMuYj10aGlzLmM9dGhpcy5hPW51bGx9ZnVuY3Rpb24gem8odCxlKXt0aGlzLm5hbWU9dCx0aGlzLnZhbHVlPWV9dyhMbyxJKSx3KE1vLEkpLE1vLnByb3RvdHlwZS53PWZ1bmN0aW9uKCl7dmFyIHQ9e2NvZGU6dGhpcy5jb2RlLG1lc3NhZ2U6dGhpcy5tZXNzYWdlfTt0aGlzLmVtYWlsJiYodC5lbWFpbD10aGlzLmVtYWlsKSx0aGlzLnBob25lTnVtYmVyJiYodC5waG9uZU51bWJlcj10aGlzLnBob25lTnVtYmVyKSx0aGlzLnRlbmFudElkJiYodC50ZW5hbnRJZD10aGlzLnRlbmFudElkKTt2YXIgZT10aGlzLmNyZWRlbnRpYWwmJnRoaXMuY3JlZGVudGlhbC53KCk7cmV0dXJuIGUmJmx0KHQsZSksdH0sTW8ucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiB0aGlzLncoKX0sVW8ucHJvdG90eXBlLmM9bnVsbCx3KHFvLFVvKSxxby5wcm90b3R5cGUuYT1mdW5jdGlvbigpe3ZhciB0PVZvKHRoaXMpO3JldHVybiB0P25ldyBBY3RpdmVYT2JqZWN0KHQpOm5ldyBYTUxIdHRwUmVxdWVzdH0scW8ucHJvdG90eXBlLmI9ZnVuY3Rpb24oKXt2YXIgdD17fTtyZXR1cm4gVm8odGhpcykmJih0WzBdPSEwLHRbMV09ITApLHR9LERvPW5ldyBxbyx3KEJvLFVvKSxCby5wcm90b3R5cGUuYT1mdW5jdGlvbigpe3ZhciB0PW5ldyBYTUxIdHRwUmVxdWVzdDtpZigid2l0aENyZWRlbnRpYWxzImluIHQpcmV0dXJuIHQ7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBYRG9tYWluUmVxdWVzdClyZXR1cm4gbmV3IEtvO3Rocm93IEVycm9yKCJVbnN1cHBvcnRlZCBicm93c2VyIil9LEJvLnByb3RvdHlwZS5iPWZ1bmN0aW9uKCl7cmV0dXJue319LCh0PUtvLnByb3RvdHlwZSkub3Blbj1mdW5jdGlvbih0LGUsbil7aWYobnVsbCE9biYmIW4pdGhyb3cgRXJyb3IoIk9ubHkgYXN5bmMgcmVxdWVzdHMgYXJlIHN1cHBvcnRlZC4iKTt0aGlzLmEub3Blbih0LGUpfSx0LnNlbmQ9ZnVuY3Rpb24odCl7aWYodCl7aWYoInN0cmluZyIhPXR5cGVvZiB0KXRocm93IEVycm9yKCJPbmx5IHN0cmluZyBkYXRhIGlzIHN1cHBvcnRlZCIpO3RoaXMuYS5zZW5kKHQpfWVsc2UgdGhpcy5hLnNlbmQoKX0sdC5hYm9ydD1mdW5jdGlvbigpe3RoaXMuYS5hYm9ydCgpfSx0LnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24oKXt9LHQuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24odCl7cmV0dXJuImNvbnRlbnQtdHlwZSI9PXQudG9Mb3dlckNhc2UoKT90aGlzLmEuY29udGVudFR5cGU6IiJ9LHQucWM9ZnVuY3Rpb24oKXt0aGlzLnN0YXR1cz0yMDAsdGhpcy5yZXNwb25zZT10aGlzLnJlc3BvbnNlVGV4dD10aGlzLmEucmVzcG9uc2VUZXh0LFdvKHRoaXMsNCl9LHQuU2I9ZnVuY3Rpb24oKXt0aGlzLnN0YXR1cz01MDAsdGhpcy5yZXNwb25zZT10aGlzLnJlc3BvbnNlVGV4dD0iIixXbyh0aGlzLDQpfSx0LnZjPWZ1bmN0aW9uKCl7dGhpcy5TYigpfSx0LnJjPWZ1bmN0aW9uKCl7dGhpcy5zdGF0dXM9MjAwLFdvKHRoaXMsMSl9LHQuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzPWZ1bmN0aW9uKCl7cmV0dXJuImNvbnRlbnQtdHlwZTogIit0aGlzLmEuY29udGVudFR5cGV9LEhvLnByb3RvdHlwZS5hPW51bGwsSG8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKHQsZSxuLHIsaSl7ZGVsZXRlIHRoaXMuYX0sem8ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIFFvPW5ldyB6bygiU0VWRVJFIiwxZTMpLFlvPW5ldyB6bygiV0FSTklORyIsOTAwKSxYbz1uZXcgem8oIkNPTkZJRyIsNzAwKSxKbz1uZXcgem8oIkZJTkUiLDUwMCk7R28ucHJvdG90eXBlLmxvZz1mdW5jdGlvbih0LGUsbil7aWYodC52YWx1ZT49ZnVuY3Rpb24gdChlKXtyZXR1cm4gZS5jfHwoZS5hP3QoZS5hKTooTygiUm9vdCBsb2dnZXIgaGFzIG5vIGxldmVsIHNldC4iKSxudWxsKSl9KHRoaXMpLnZhbHVlKWZvcih2KGUpJiYoZT1lKCkpLHQ9bmV3IEhvKHQsU3RyaW5nKGUpLHRoaXMuZiksbiYmKHQuYT1uKSxuPXRoaXM7bjspbj1uLmF9O3ZhciAkbyxabz17fSx0cz1udWxsO2Z1bmN0aW9uIGVzKHQpe3ZhciBlLG4scjtyZXR1cm4gdHN8fCh0cz1uZXcgR28oIiIpLChab1siIl09dHMpLmM9WG8pLChlPVpvW3RdKXx8KGU9bmV3IEdvKHQpLHI9dC5sYXN0SW5kZXhPZigiLiIpLG49dC5zdWJzdHIocisxKSwocj1lcyh0LnN1YnN0cigwLHIpKSkuYnx8KHIuYj17fSksKHIuYltuXT1lKS5hPXIsWm9bdF09ZSksZX1mdW5jdGlvbiBucyh0LGUpe3QmJnQubG9nKEpvLGUsdm9pZCAwKX1mdW5jdGlvbiBycyh0KXt0aGlzLmY9dH1mdW5jdGlvbiBpcyh0KXtsbi5jYWxsKHRoaXMpLHRoaXMudT10LHRoaXMuaD12b2lkIDAsdGhpcy5yZWFkeVN0YXRlPW9zLHRoaXMuc3RhdHVzPTAsdGhpcy5yZXNwb25zZVR5cGU9dGhpcy5yZXNwb25zZVRleHQ9dGhpcy5yZXNwb25zZT10aGlzLnN0YXR1c1RleHQ9IiIsdGhpcy5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCx0aGlzLmw9bmV3IEhlYWRlcnMsdGhpcy5iPW51bGwsdGhpcy5zPSJHRVQiLHRoaXMuZj0iIix0aGlzLmE9ITEsdGhpcy5pPWVzKCJnb29nLm5ldC5GZXRjaFhtbEh0dHAiKSx0aGlzLm09dGhpcy5jPXRoaXMuZz1udWxsfXcocnMsVW8pLHJzLnByb3RvdHlwZS5hPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpcyh0aGlzLmYpfSxycy5wcm90b3R5cGUuYj0oJG89e30sZnVuY3Rpb24oKXtyZXR1cm4gJG99KSx3KGlzLGxuKTt2YXIgb3M9MDtmdW5jdGlvbiBzcyh0KXt0LmMucmVhZCgpLnRoZW4odC5wYy5iaW5kKHQpKS5jYXRjaCh0LlVhLmJpbmQodCkpfWZ1bmN0aW9uIGFzKHQpe3QucmVhZHlTdGF0ZT00LHQuZz1udWxsLHQuYz1udWxsLHQubT1udWxsLHVzKHQpfWZ1bmN0aW9uIHVzKHQpe3Qub25yZWFkeXN0YXRlY2hhbmdlJiZ0Lm9ucmVhZHlzdGF0ZWNoYW5nZS5jYWxsKHQpfWZ1bmN0aW9uIGNzKHQpe2xuLmNhbGwodGhpcyksdGhpcy5oZWFkZXJzPW5ldyBibix0aGlzLkQ9dHx8bnVsbCx0aGlzLmM9ITEsdGhpcy5DPXRoaXMuYT1udWxsLHRoaXMuaD10aGlzLlI9dGhpcy5sPSIiLHRoaXMuZj10aGlzLk89dGhpcy5pPXRoaXMuSj0hMSx0aGlzLmc9MCx0aGlzLnM9bnVsbCx0aGlzLm09aHMsdGhpcy51PXRoaXMuUz0hMX0odD1pcy5wcm90b3R5cGUpLm9wZW49ZnVuY3Rpb24odCxlKXtpZih0aGlzLnJlYWR5U3RhdGUhPW9zKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigiRXJyb3IgcmVvcGVuaW5nIGEgY29ubmVjdGlvbiIpO3RoaXMucz10LHRoaXMuZj1lLHRoaXMucmVhZHlTdGF0ZT0xLHVzKHRoaXMpfSx0LnNlbmQ9ZnVuY3Rpb24odCl7aWYoMSE9dGhpcy5yZWFkeVN0YXRlKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigibmVlZCB0byBjYWxsIG9wZW4oKSBmaXJzdC4gIik7dGhpcy5hPSEwO3ZhciBlPXtoZWFkZXJzOnRoaXMubCxtZXRob2Q6dGhpcy5zLGNyZWRlbnRpYWxzOnRoaXMuaCxjYWNoZTp2b2lkIDB9O3QmJihlLmJvZHk9dCksdGhpcy51LmZldGNoKG5ldyBSZXF1ZXN0KHRoaXMuZixlKSkudGhlbih0aGlzLnVjLmJpbmQodGhpcyksdGhpcy5VYS5iaW5kKHRoaXMpKX0sdC5hYm9ydD1mdW5jdGlvbigpe3RoaXMucmVzcG9uc2U9dGhpcy5yZXNwb25zZVRleHQ9IiIsdGhpcy5sPW5ldyBIZWFkZXJzLHRoaXMuc3RhdHVzPTAsdGhpcy5jJiZ0aGlzLmMuY2FuY2VsKCJSZXF1ZXN0IHdhcyBhYm9ydGVkLiIpLDE8PXRoaXMucmVhZHlTdGF0ZSYmdGhpcy5hJiY0IT10aGlzLnJlYWR5U3RhdGUmJih0aGlzLmE9ITEsYXModGhpcykpLHRoaXMucmVhZHlTdGF0ZT1vc30sdC51Yz1mdW5jdGlvbih0KXt0aGlzLmEmJih0aGlzLmc9dCx0aGlzLmJ8fCh0aGlzLnN0YXR1cz10aGlzLmcuc3RhdHVzLHRoaXMuc3RhdHVzVGV4dD10aGlzLmcuc3RhdHVzVGV4dCx0aGlzLmI9dC5oZWFkZXJzLHRoaXMucmVhZHlTdGF0ZT0yLHVzKHRoaXMpKSx0aGlzLmEmJih0aGlzLnJlYWR5U3RhdGU9Myx1cyh0aGlzKSx0aGlzLmEmJigiYXJyYXlidWZmZXIiPT09dGhpcy5yZXNwb25zZVR5cGU/dC5hcnJheUJ1ZmZlcigpLnRoZW4odGhpcy5zYy5iaW5kKHRoaXMpLHRoaXMuVWEuYmluZCh0aGlzKSk6dm9pZCAwIT09bC5SZWFkYWJsZVN0cmVhbSYmImJvZHkiaW4gdD8odGhpcy5yZXNwb25zZT10aGlzLnJlc3BvbnNlVGV4dD0iIix0aGlzLmM9dC5ib2R5LmdldFJlYWRlcigpLHRoaXMubT1uZXcgVGV4dERlY29kZXIsc3ModGhpcykpOnQudGV4dCgpLnRoZW4odGhpcy50Yy5iaW5kKHRoaXMpLHRoaXMuVWEuYmluZCh0aGlzKSkpKSl9LHQucGM9ZnVuY3Rpb24odCl7dmFyIGU7dGhpcy5hJiYoKGU9dGhpcy5tLmRlY29kZSh0LnZhbHVlfHxuZXcgVWludDhBcnJheSgwKSx7c3RyZWFtOiF0LmRvbmV9KSkmJih0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0Kz1lKSwodC5kb25lP2FzOnVzKSh0aGlzKSwzPT10aGlzLnJlYWR5U3RhdGUmJnNzKHRoaXMpKX0sdC50Yz1mdW5jdGlvbih0KXt0aGlzLmEmJih0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PXQsYXModGhpcykpfSx0LnNjPWZ1bmN0aW9uKHQpe3RoaXMuYSYmKHRoaXMucmVzcG9uc2U9dCxhcyh0aGlzKSl9LHQuVWE9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5pO2UmJmUubG9nKFlvLCJGYWlsZWQgdG8gZmV0Y2ggdXJsICIrdGhpcy5mLHQgaW5zdGFuY2VvZiBFcnJvcj90OkVycm9yKHQpKSx0aGlzLmEmJmFzKHRoaXMpfSx0LnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24odCxlKXt0aGlzLmwuYXBwZW5kKHQsZSl9LHQuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYj90aGlzLmIuZ2V0KHQudG9Mb3dlckNhc2UoKSl8fCIiOigodD10aGlzLmkpJiZ0LmxvZyhZbywiQXR0ZW1wdGluZyB0byBnZXQgcmVzcG9uc2UgaGVhZGVyIGJ1dCBubyBoZWFkZXJzIGhhdmUgYmVlbiByZWNlaXZlZCBmb3IgdXJsOiAiK3RoaXMuZix2b2lkIDApLCIiKX0sdC5nZXRBbGxSZXNwb25zZUhlYWRlcnM9ZnVuY3Rpb24oKXtpZighdGhpcy5iKXt2YXIgdD10aGlzLmk7cmV0dXJuIHQmJnQubG9nKFlvLCJBdHRlbXB0aW5nIHRvIGdldCBhbGwgcmVzcG9uc2UgaGVhZGVycyBidXQgbm8gaGVhZGVycyBoYXZlIGJlZW4gcmVjZWl2ZWQgZm9yIHVybDogIit0aGlzLmYsdm9pZCAwKSwiIn1mb3IodmFyIHQ9W10sZT10aGlzLmIuZW50cmllcygpLG49ZS5uZXh0KCk7IW4uZG9uZTspbj1uLnZhbHVlLHQucHVzaChuWzBdKyI6ICIrblsxXSksbj1lLm5leHQoKTtyZXR1cm4gdC5qb2luKCJcclxuIil9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShpcy5wcm90b3R5cGUsIndpdGhDcmVkZW50aWFscyIse2dldDpmdW5jdGlvbigpe3JldHVybiJpbmNsdWRlIj09PXRoaXMuaH0sc2V0OmZ1bmN0aW9uKHQpe3RoaXMuaD10PyJpbmNsdWRlIjoic2FtZS1vcmlnaW4ifX0pLHcoY3MsbG4pO3ZhciBocz0iIjtjcy5wcm90b3R5cGUuYj1lcygiZ29vZy5uZXQuWGhySW8iKTt2YXIgbHM9L15odHRwcz8kL2ksZnM9WyJQT1NUIiwiUFVUIl07ZnVuY3Rpb24gcHMoZSx0LG4scixpKXtpZihlLmEpdGhyb3cgRXJyb3IoIltnb29nLm5ldC5YaHJJb10gT2JqZWN0IGlzIGFjdGl2ZSB3aXRoIGFub3RoZXIgcmVxdWVzdD0iK2UubCsiOyBuZXdVcmk9Iit0KTtuPW4/bi50b1VwcGVyQ2FzZSgpOiJHRVQiLGUubD10LGUuaD0iIixlLlI9bixlLko9ITEsZS5jPSEwLGUuYT0oZS5EfHxEbykuYSgpLGUuQz1lLkQ/am8oZS5EKTpqbyhEbyksZS5hLm9ucmVhZHlzdGF0ZWNoYW5nZT1tKGUuVmIsZSk7dHJ5e25zKGUuYixJcyhlLCJPcGVuaW5nIFhociIpKSxlLk89ITAsZS5hLm9wZW4obixTdHJpbmcodCksITApLGUuTz0hMX1jYXRjaCh0KXtyZXR1cm4gbnMoZS5iLElzKGUsIkVycm9yIG9wZW5pbmcgWGhyOiAiK3QubWVzc2FnZSkpLHZvaWQgdnMoZSx0KX10PXJ8fCIiO3ZhciBvLHM9bmV3IGJuKGUuaGVhZGVycyk7aSYmZnVuY3Rpb24odCxlKXtpZih0LmZvckVhY2gmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvckVhY2gpdC5mb3JFYWNoKGUsdm9pZCAwKTtlbHNlIGlmKGQodCl8fCJzdHJpbmciPT10eXBlb2YgdClqKHQsZSx2b2lkIDApO2Vsc2UgZm9yKHZhciBuPW1uKHQpLHI9eW4odCksaT1yLmxlbmd0aCxvPTA7bzxpO28rKyllLmNhbGwodm9pZCAwLHJbb10sbiYmbltvXSx0KX0oaSxmdW5jdGlvbih0LGUpe3Muc2V0KGUsdCl9KSxpPWZ1bmN0aW9uKHQpe3Q6e2Zvcih2YXIgZT1kcyxuPXQubGVuZ3RoLHI9InN0cmluZyI9PXR5cGVvZiB0P3Quc3BsaXQoIiIpOnQsaT0wO2k8bjtpKyspaWYoaSBpbiByJiZlLmNhbGwodm9pZCAwLHJbaV0saSx0KSl7ZT1pO2JyZWFrIHR9ZT0tMX1yZXR1cm4gZTwwP251bGw6InN0cmluZyI9PXR5cGVvZiB0P3QuY2hhckF0KGUpOnRbZV19KHMuWSgpKSxyPWwuRm9ybURhdGEmJnQgaW5zdGFuY2VvZiBsLkZvcm1EYXRhLCFLKGZzLG4pfHxpfHxyfHxzLnNldCgiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTgiKSxzLmZvckVhY2goZnVuY3Rpb24odCxlKXt0aGlzLmEuc2V0UmVxdWVzdEhlYWRlcihlLHQpfSxlKSxlLm0mJihlLmEucmVzcG9uc2VUeXBlPWUubSksIndpdGhDcmVkZW50aWFscyJpbiBlLmEmJmUuYS53aXRoQ3JlZGVudGlhbHMhPT1lLlMmJihlLmEud2l0aENyZWRlbnRpYWxzPWUuUyk7dHJ5e2JzKGUpLDA8ZS5nJiYoZS51PShvPWUuYSxCdCYmSnQoOSkmJiJudW1iZXIiPT10eXBlb2Ygby50aW1lb3V0JiZ2b2lkIDAhPT1vLm9udGltZW91dCksbnMoZS5iLElzKGUsIldpbGwgYWJvcnQgYWZ0ZXIgIitlLmcrIm1zIGlmIGluY29tcGxldGUsIHhocjIgIitlLnUpKSxlLnU/KGUuYS50aW1lb3V0PWUuZyxlLmEub250aW1lb3V0PW0oZS5NYSxlKSk6ZS5zPXZuKGUuTWEsZS5nLGUpKSxucyhlLmIsSXMoZSwiU2VuZGluZyByZXF1ZXN0IikpLGUuaT0hMCxlLmEuc2VuZCh0KSxlLmk9ITF9Y2F0Y2godCl7bnMoZS5iLElzKGUsIlNlbmQgZXJyb3I6ICIrdC5tZXNzYWdlKSksdnMoZSx0KX19ZnVuY3Rpb24gZHModCl7cmV0dXJuImNvbnRlbnQtdHlwZSI9PXQudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiB2cyh0LGUpe3QuYz0hMSx0LmEmJih0LmY9ITAsdC5hLmFib3J0KCksdC5mPSExKSx0Lmg9ZSxncyh0KSxtcyh0KX1mdW5jdGlvbiBncyh0KXt0Lkp8fCh0Lko9ITAsdC5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHQuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9ZnVuY3Rpb24geXMoZSl7aWYoZS5jJiZ2b2lkIDAhPT1oKWlmKGUuQ1sxXSYmND09d3MoZSkmJjI9PV9zKGUpKW5zKGUuYixJcyhlLCJMb2NhbCByZXF1ZXN0IGVycm9yIGRldGVjdGVkIGFuZCBpZ25vcmVkIikpO2Vsc2UgaWYoZS5pJiY0PT13cyhlKSl2bihlLlZiLDAsZSk7ZWxzZSBpZihlLmRpc3BhdGNoRXZlbnQoInJlYWR5c3RhdGVjaGFuZ2UiKSw0PT13cyhlKSl7bnMoZS5iLElzKGUsIlJlcXVlc3QgY29tcGxldGUiKSksZS5jPSExO3RyeXt2YXIgdCxuLHIsaSxvPV9zKGUpO3Q6c3dpdGNoKG8pe2Nhc2UgMjAwOmNhc2UgMjAxOmNhc2UgMjAyOmNhc2UgMjA0OmNhc2UgMjA2OmNhc2UgMzA0OmNhc2UgMTIyMzp2YXIgcz0hMDticmVhayB0O2RlZmF1bHQ6cz0hMX1pZigodD1zKXx8KChuPTA9PT1vKSYmKCEoaT1TdHJpbmcoZS5sKS5tYXRjaChJbilbMV18fG51bGwpJiZsLnNlbGYmJmwuc2VsZi5sb2NhdGlvbiYmKGk9KHI9bC5zZWxmLmxvY2F0aW9uLnByb3RvY29sKS5zdWJzdHIoMCxyLmxlbmd0aC0xKSksbj0hbHMudGVzdChpP2kudG9Mb3dlckNhc2UoKToiIikpLHQ9biksdCllLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksZS5kaXNwYXRjaEV2ZW50KCJzdWNjZXNzIik7ZWxzZXt0cnl7dmFyIGE9Mjx3cyhlKT9lLmEuc3RhdHVzVGV4dDoiIn1jYXRjaCh0KXtucyhlLmIsIkNhbiBub3QgZ2V0IHN0YXR1czogIit0Lm1lc3NhZ2UpLGE9IiJ9ZS5oPWErIiBbIitfcyhlKSsiXSIsZ3MoZSl9fWZpbmFsbHl7bXMoZSl9fX1mdW5jdGlvbiBtcyhlLHQpe2lmKGUuYSl7YnMoZSk7dmFyIG49ZS5hLHI9ZS5DWzBdP3M6bnVsbDtlLmE9bnVsbCxlLkM9bnVsbCx0fHxlLmRpc3BhdGNoRXZlbnQoInJlYWR5Iik7dHJ5e24ub25yZWFkeXN0YXRlY2hhbmdlPXJ9Y2F0Y2godCl7KGU9ZS5iKSYmZS5sb2coUW8sIlByb2JsZW0gZW5jb3VudGVyZWQgcmVzZXR0aW5nIG9ucmVhZHlzdGF0ZWNoYW5nZTogIit0Lm1lc3NhZ2Usdm9pZCAwKX19fWZ1bmN0aW9uIGJzKHQpe3QuYSYmdC51JiYodC5hLm9udGltZW91dD1udWxsKSx0LnMmJihsLmNsZWFyVGltZW91dCh0LnMpLHQucz1udWxsKX1mdW5jdGlvbiB3cyh0KXtyZXR1cm4gdC5hP3QuYS5yZWFkeVN0YXRlOjB9ZnVuY3Rpb24gX3ModCl7dHJ5e3JldHVybiAyPHdzKHQpP3QuYS5zdGF0dXM6LTF9Y2F0Y2godCl7cmV0dXJuLTF9fWZ1bmN0aW9uIElzKHQsZSl7cmV0dXJuIGUrIiBbIit0LlIrIiAiK3QubCsiICIrX3ModCkrIl0ifWZ1bmN0aW9uIFRzKHQpe3ZhciBlPXhzO3RoaXMuZz1bXSx0aGlzLnU9ZSx0aGlzLnM9dHx8bnVsbCx0aGlzLmY9dGhpcy5hPSExLHRoaXMuYz12b2lkIDAsdGhpcy52PXRoaXMuQz10aGlzLmk9ITEsdGhpcy5oPTAsdGhpcy5iPW51bGwsdGhpcy5sPTB9ZnVuY3Rpb24gRXModCxlLG4pe3QuYT0hMCx0LmM9bix0LmY9IWUsQXModCl9ZnVuY3Rpb24gU3ModCl7aWYodC5hKXtpZighdC52KXRocm93IG5ldyBrczt0LnY9ITF9fWZ1bmN0aW9uIENzKHQsZSxuLHIpe3QuZy5wdXNoKFtlLG4scl0pLHQuYSYmQXModCl9ZnVuY3Rpb24gTnModCl7cmV0dXJuIEIodC5nLGZ1bmN0aW9uKHQpe3JldHVybiB2KHRbMV0pfSl9ZnVuY3Rpb24gQXMoZSl7dmFyIG47ZS5oJiZlLmEmJk5zKGUpJiYocj1lLmgsKG49T3Nbcl0pJiYobC5jbGVhclRpbWVvdXQobi5hKSxkZWxldGUgT3Nbcl0pLGUuaD0wKSxlLmImJihlLmIubC0tLGRlbGV0ZSBlLmIpO2Zvcih2YXIgcj1lLmMsdD1uPSExO2UuZy5sZW5ndGgmJiFlLmk7KXt2YXIgaT0ocz1lLmcuc2hpZnQoKSlbMF0sbz1zWzFdLHM9c1syXTtpZihpPWUuZj9vOmkpdHJ5e3ZhciBhPWkuY2FsbChzfHxlLnMscik7dm9pZCAwIT09YSYmKGUuZj1lLmYmJihhPT1yfHxhIGluc3RhbmNlb2YgRXJyb3IpLGUuYz1yPWEpLChrKHIpfHwiZnVuY3Rpb24iPT10eXBlb2YgbC5Qcm9taXNlJiZyIGluc3RhbmNlb2YgbC5Qcm9taXNlKSYmKHQ9ITAsZS5pPSEwKX1jYXRjaCh0KXtyPXQsZS5mPSEwLE5zKGUpfHwobj0hMCl9fWUuYz1yLHQmJihhPW0oZS5tLGUsITApLHQ9bShlLm0sZSwhMSksciBpbnN0YW5jZW9mIFRzPyhDcyhyLGEsdCksci5DPSEwKTpyLnRoZW4oYSx0KSksbiYmKHI9bmV3IFBzKHIpLE9zW3IuYV09cixlLmg9ci5hKX1mdW5jdGlvbiBrcygpe1IuY2FsbCh0aGlzKX1mdW5jdGlvbiBScygpe1IuY2FsbCh0aGlzKX1mdW5jdGlvbiBQcyh0KXt0aGlzLmE9bC5zZXRUaW1lb3V0KG0odGhpcy5jLHRoaXMpLDApLHRoaXMuYj10fSh0PWNzLnByb3RvdHlwZSkuTWE9ZnVuY3Rpb24oKXt2b2lkIDAhPT1oJiZ0aGlzLmEmJih0aGlzLmg9IlRpbWVkIG91dCBhZnRlciAiK3RoaXMuZysibXMsIGFib3J0aW5nIixucyh0aGlzLmIsSXModGhpcyx0aGlzLmgpKSx0aGlzLmRpc3BhdGNoRXZlbnQoInRpbWVvdXQiKSx0aGlzLmFib3J0KDgpKX0sdC5hYm9ydD1mdW5jdGlvbigpe3RoaXMuYSYmdGhpcy5jJiYobnModGhpcy5iLElzKHRoaXMsIkFib3J0aW5nIikpLHRoaXMuYz0hMSx0aGlzLmY9ITAsdGhpcy5hLmFib3J0KCksdGhpcy5mPSExLHRoaXMuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSx0aGlzLmRpc3BhdGNoRXZlbnQoImFib3J0IiksbXModGhpcykpfSx0LkRhPWZ1bmN0aW9uKCl7dGhpcy5hJiYodGhpcy5jJiYodGhpcy5jPSExLHRoaXMuZj0hMCx0aGlzLmEuYWJvcnQoKSx0aGlzLmY9ITEpLG1zKHRoaXMsITApKSxjcy5hYi5EYS5jYWxsKHRoaXMpfSx0LlZiPWZ1bmN0aW9uKCl7dGhpcy54YXx8KHRoaXMuT3x8dGhpcy5pfHx0aGlzLmY/eXModGhpcyk6dGhpcy5KYygpKX0sdC5KYz1mdW5jdGlvbigpe3lzKHRoaXMpfSx0LmdldFJlc3BvbnNlPWZ1bmN0aW9uKCl7dHJ5e2lmKCF0aGlzLmEpcmV0dXJuIG51bGw7aWYoInJlc3BvbnNlImluIHRoaXMuYSlyZXR1cm4gdGhpcy5hLnJlc3BvbnNlO3N3aXRjaCh0aGlzLm0pe2Nhc2UgaHM6Y2FzZSJ0ZXh0IjpyZXR1cm4gdGhpcy5hLnJlc3BvbnNlVGV4dDtjYXNlImFycmF5YnVmZmVyIjppZigibW96UmVzcG9uc2VBcnJheUJ1ZmZlciJpbiB0aGlzLmEpcmV0dXJuIHRoaXMuYS5tb3pSZXNwb25zZUFycmF5QnVmZmVyfXZhciB0PXRoaXMuYjtyZXR1cm4gdCYmdC5sb2coUW8sIlJlc3BvbnNlIHR5cGUgIit0aGlzLm0rIiBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgYnJvd3NlciIsdm9pZCAwKSxudWxsfWNhdGNoKHQpe3JldHVybiBucyh0aGlzLmIsIkNhbiBub3QgZ2V0IHJlc3BvbnNlOiAiK3QubWVzc2FnZSksbnVsbH19LFRzLnByb3RvdHlwZS5jYW5jZWw9ZnVuY3Rpb24odCl7dmFyIGU7dGhpcy5hP3RoaXMuYyBpbnN0YW5jZW9mIFRzJiZ0aGlzLmMuY2FuY2VsKCk6KHRoaXMuYiYmKGU9dGhpcy5iLGRlbGV0ZSB0aGlzLmIsdD9lLmNhbmNlbCh0KTooZS5sLS0sZS5sPD0wJiZlLmNhbmNlbCgpKSksdGhpcy51P3RoaXMudS5jYWxsKHRoaXMucyx0aGlzKTp0aGlzLnY9ITAsdGhpcy5hfHwodD1uZXcgUnMsU3ModGhpcyksRXModGhpcywhMSx0KSkpfSxUcy5wcm90b3R5cGUubT1mdW5jdGlvbih0LGUpe3RoaXMuaT0hMSxFcyh0aGlzLHQsZSl9LFRzLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcixpLG89bmV3IGZlKGZ1bmN0aW9uKHQsZSl7cj10LGk9ZX0pO3JldHVybiBDcyh0aGlzLHIsZnVuY3Rpb24odCl7dCBpbnN0YW5jZW9mIFJzP28uY2FuY2VsKCk6aSh0KX0pLG8udGhlbih0LGUsbil9LFRzLnByb3RvdHlwZS4kZ29vZ19UaGVuYWJsZT0hMCx3KGtzLFIpLGtzLnByb3RvdHlwZS5tZXNzYWdlPSJEZWZlcnJlZCBoYXMgYWxyZWFkeSBmaXJlZCIsa3MucHJvdG90eXBlLm5hbWU9IkFscmVhZHlDYWxsZWRFcnJvciIsdyhScyxSKSxScy5wcm90b3R5cGUubWVzc2FnZT0iRGVmZXJyZWQgd2FzIGNhbmNlbGVkIixScy5wcm90b3R5cGUubmFtZT0iQ2FuY2VsZWRFcnJvciIsUHMucHJvdG90eXBlLmM9ZnVuY3Rpb24oKXt0aHJvdyBkZWxldGUgT3NbdGhpcy5hXSx0aGlzLmJ9O3ZhciBPcz17fTtmdW5jdGlvbiBEcyh0KXt2YXIgZT1kb2N1bWVudCxuPXd0KHQpLnRvU3RyaW5nKCkscj1zZShkb2N1bWVudCwiU0NSSVBUIiksaT17V2I6cixNYTp2b2lkIDB9LG89bmV3IFRzKGkpLHM9d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtMcyhyLCEwKTt2YXIgdD1uZXcgVXMoRnMsIlRpbWVvdXQgcmVhY2hlZCBmb3IgbG9hZGluZyBzY3JpcHQgIituKTtTcyhvKSxFcyhvLCExLHQpfSw1ZTMpO3JldHVybiBpLk1hPXMsci5vbmxvYWQ9ci5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtyLnJlYWR5U3RhdGUmJiJsb2FkZWQiIT1yLnJlYWR5U3RhdGUmJiJjb21wbGV0ZSIhPXIucmVhZHlTdGF0ZXx8KExzKHIsITEscyksU3MobyksRXMobywhMCxudWxsKSl9LHIub25lcnJvcj1mdW5jdGlvbigpe0xzKHIsITAscyk7dmFyIHQ9bmV3IFVzKE1zLCJFcnJvciB3aGlsZSBsb2FkaW5nIHNjcmlwdCAiK24pO1NzKG8pLEVzKG8sITEsdCl9LGx0KGk9e30se3R5cGU6InRleHQvamF2YXNjcmlwdCIsY2hhcnNldDoiVVRGLTgifSksZWUocixpKSxpPXQsZnQodD1yLCJIVE1MU2NyaXB0RWxlbWVudCIpLHQuc3JjPXd0KGkpLChpPShpPXQub3duZXJEb2N1bWVudCYmdC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3KSYmaSE9bD9mKGkuZG9jdW1lbnQpOmE9bnVsbD09PWE/ZihsLmRvY3VtZW50KTphKSYmdC5zZXRBdHRyaWJ1dGUoIm5vbmNlIixpKSwoKGU9KChpPWUpfHxkb2N1bWVudCkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKSkmJjAhPWUubGVuZ3RoP2VbMF06aS5kb2N1bWVudEVsZW1lbnQpLmFwcGVuZENoaWxkKHIpLG99ZnVuY3Rpb24geHMoKXt2YXIgdDt0aGlzJiZ0aGlzLldiJiYoKHQ9dGhpcy5XYikmJiJTQ1JJUFQiPT10LnRhZ05hbWUmJkxzKHQsITAsdGhpcy5NYSkpfWZ1bmN0aW9uIExzKHQsZSxuKXtudWxsIT1uJiZsLmNsZWFyVGltZW91dChuKSx0Lm9ubG9hZD1zLHQub25lcnJvcj1zLHQub25yZWFkeXN0YXRlY2hhbmdlPXMsZSYmd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KX0sMCl9dmFyIE1zPTAsRnM9MTtmdW5jdGlvbiBVcyh0LGUpe3ZhciBuPSJKc2xvYWRlciBlcnJvciAoY29kZSAjIit0KyIpIjtlJiYobis9IjogIitlKSxSLmNhbGwodGhpcyxuKSx0aGlzLmNvZGU9dH1mdW5jdGlvbiBqcyh0KXt0aGlzLmY9dH1mdW5jdGlvbiBxcyh0LGUsbil7aWYodGhpcy5jPXQsdD1lfHx7fSx0aGlzLmw9dC5zZWN1cmVUb2tlbkVuZHBvaW50fHwiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGVhcGlzLmNvbS92MS90b2tlbiIsdGhpcy5tPXQuc2VjdXJlVG9rZW5UaW1lb3V0fHxLcyx0aGlzLmc9Y3QodC5zZWN1cmVUb2tlbkhlYWRlcnN8fFdzKSx0aGlzLmg9dC5maXJlYmFzZUVuZHBvaW50fHwiaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vaWRlbnRpdHl0b29sa2l0L3YzL3JlbHlpbmdwYXJ0eS8iLHRoaXMuaT10LmlkZW50aXR5UGxhdGZvcm1FbmRwb2ludHx8Imh0dHBzOi8vaWRlbnRpdHl0b29sa2l0Lmdvb2dsZWFwaXMuY29tL3YyLyIsdGhpcy52PXQuZmlyZWJhc2VUaW1lb3V0fHxIcyx0aGlzLmE9Y3QodC5maXJlYmFzZUhlYWRlcnN8fEdzKSxuJiYodGhpcy5hWyJYLUNsaWVudC1WZXJzaW9uIl09bix0aGlzLmdbIlgtQ2xpZW50LVZlcnNpb24iXT1uKSxuPSJOb2RlIj09aHIoKSwhKG49bC5YTUxIdHRwUmVxdWVzdHx8biYmWGwuSU5URVJOQUwubm9kZSYmWGwuSU5URVJOQUwubm9kZS5YTUxIdHRwUmVxdWVzdCkmJiFjcigpKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsIlRoZSBYTUxIdHRwUmVxdWVzdCBjb21wYXRpYmlsaXR5IGxpYnJhcnkgd2FzIG5vdCBmb3VuZC4iKTt0aGlzLmY9dm9pZCAwLGNyKCk/dGhpcy5mPW5ldyBycyhzZWxmKTpscigpP3RoaXMuZj1uZXcganMobik6dGhpcy5mPW5ldyBCbyx0aGlzLmI9bnVsbH13KFVzLFIpLHcoanMsVW8pLGpzLnByb3RvdHlwZS5hPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0aGlzLmZ9LGpzLnByb3RvdHlwZS5iPWZ1bmN0aW9uKCl7cmV0dXJue319O3ZhciBWcyxCcz0iaWRUb2tlbiIsS3M9bmV3IFJyKDNlNCw2ZTQpLFdzPXsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0sSHM9bmV3IFJyKDNlNCw2ZTQpLEdzPXsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9O2Z1bmN0aW9uIHpzKHQsZSl7ZT90LmFbIlgtRmlyZWJhc2UtTG9jYWxlIl09ZTpkZWxldGUgdC5hWyJYLUZpcmViYXNlLUxvY2FsZSJdfWZ1bmN0aW9uIFFzKHQsZSl7ZSYmKHQubD1ZcygiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGVhcGlzLmNvbS92MS90b2tlbiIsZSksdC5oPVlzKCJodHRwczovL3d3dy5nb29nbGVhcGlzLmNvbS9pZGVudGl0eXRvb2xraXQvdjMvcmVseWluZ3BhcnR5LyIsZSksdC5pPVlzKCJodHRwczovL2lkZW50aXR5dG9vbGtpdC5nb29nbGVhcGlzLmNvbS92Mi8iLGUpKX1mdW5jdGlvbiBZcyh0LGUpe3JldHVybiB0PWtuKHQpLGU9a24oZS51cmwpLHQuZj10LmErdC5mLEVuKHQsZS5jKSx0LmE9ZS5hLFNuKHQsZS5nKSx0LnRvU3RyaW5nKCl9ZnVuY3Rpb24gWHModCxlKXtlPyh0LmFbIlgtQ2xpZW50LVZlcnNpb24iXT1lLHQuZ1siWC1DbGllbnQtVmVyc2lvbiJdPWUpOihkZWxldGUgdC5hWyJYLUNsaWVudC1WZXJzaW9uIl0sZGVsZXRlIHQuZ1siWC1DbGllbnQtVmVyc2lvbiJdKX1mdW5jdGlvbiBKcyh0LGUsbixyLGksbyxzKXt2YXIgYTsodD0oKGE9ZHIoYT15cigpKT09cHImJihhPWEubWF0Y2goL1xzQ2hyb21lXC8oXGQrKS9pKSkmJjI9PWEubGVuZ3RoP3BhcnNlSW50KGFbMV0sMTApOm51bGwpJiZhPDMwfHxCdCYmJHQmJiEoOTwkdCkpJiYhY3IoKT8oVnM9VnN8fG5ldyBmZShmdW5jdGlvbih0LGUpe3ZhciBuLHI7bj10LHI9ZSwoKHdpbmRvdy5nYXBpfHx7fSkuY2xpZW50fHx7fSkucmVxdWVzdD9uKCk6KGxbWnNdPWZ1bmN0aW9uKCl7KCh3aW5kb3cuZ2FwaXx8e30pLmNsaWVudHx8e30pLnJlcXVlc3Q/bigpOnIoRXJyb3IoIkNPUlNfVU5TVVBQT1JURUQiKSl9LGZ1bmN0aW9uKHQsZSl7Q3ModCxudWxsLGUsdm9pZCAwKX0oRHMoX3QoJHMse29ubG9hZDpac30pKSxmdW5jdGlvbigpe3IoRXJyb3IoIkNPUlNfVU5TVVBQT1JURUQiKSl9KSl9KSxtKHQucyx0KSk6bSh0LnUsdCkpKGUsbixyLGksbyxzKX1xcy5wcm90b3R5cGUuVD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmJ9LHFzLnByb3RvdHlwZS51PWZ1bmN0aW9uKHQsbixlLHIsaSxvKXtpZihjcigpJiYodm9pZCAwPT09bC5mZXRjaHx8dm9pZCAwPT09bC5IZWFkZXJzfHx2b2lkIDA9PT1sLlJlcXVlc3QpKXRocm93IG5ldyBJKCJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IiwiZmV0Y2gsIEhlYWRlcnMgYW5kIFJlcXVlc3QgbmF0aXZlIEFQSXMgb3IgZXF1aXZhbGVudCBQb2x5ZmlsbHMgbXVzdCBiZSBhdmFpbGFibGUgdG8gc3VwcG9ydCBIVFRQIHJlcXVlc3RzIGZyb20gYSBXb3JrZXIgZW52aXJvbm1lbnQuIik7dmFyIHMsYT1uZXcgY3ModGhpcy5mKTtvJiYoYS5nPU1hdGgubWF4KDAsbykscz1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5kaXNwYXRjaEV2ZW50KCJ0aW1lb3V0Iil9LG8pKSxmbihhLCJjb21wbGV0ZSIsZnVuY3Rpb24oKXtzJiZjbGVhclRpbWVvdXQocyk7dmFyIGU9bnVsbDt0cnl7ZT1KU09OLnBhcnNlKGZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gZS5hP2UuYS5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2godCl7cmV0dXJuIG5zKGUuYiwiQ2FuIG5vdCBnZXQgcmVzcG9uc2VUZXh0OiAiK3QubWVzc2FnZSksIiJ9fSh0aGlzKSl8fG51bGx9Y2F0Y2godCl7ZT1udWxsfW4mJm4oZSl9KSxwbihhLCJyZWFkeSIsZnVuY3Rpb24oKXtzJiZjbGVhclRpbWVvdXQocyksTGUodGhpcyl9KSxwbihhLCJ0aW1lb3V0IixmdW5jdGlvbigpe3MmJmNsZWFyVGltZW91dChzKSxMZSh0aGlzKSxuJiZuKG51bGwpfSkscHMoYSx0LGUscixpKX07dmFyICRzPW5ldyBwdCh5dCwiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20vanMvY2xpZW50LmpzP29ubG9hZD0le29ubG9hZH0iKSxacz0iX19mY2IiK01hdGguZmxvb3IoMWU2Kk1hdGgucmFuZG9tKCkpLnRvU3RyaW5nKCk7ZnVuY3Rpb24gdGEodCxlLG4scixpLG8scyl7dmFyIGE9a24oZStuKTtObihhLCJrZXkiLHQuYykscyYmTm4oYSwiY2IiLERhdGUubm93KCkudG9TdHJpbmcoKSk7dmFyIHU9IkdFVCI9PXI7aWYodSlmb3IodmFyIGMgaW4gaSlpLmhhc093blByb3BlcnR5KGMpJiZObihhLGMsaVtjXSk7cmV0dXJuIG5ldyBmZShmdW5jdGlvbihlLG4pe0pzKHQsYS50b1N0cmluZygpLGZ1bmN0aW9uKHQpe3Q/dC5lcnJvcj9uKFlhKHQsb3x8e30pKTplKHQpOm4obmV3IEkoIm5ldHdvcmstcmVxdWVzdC1mYWlsZWQiKSl9LHIsdT92b2lkIDA6em4oU3IoaSkpLHQuYSx0LnYuZ2V0KCkpfSl9ZnVuY3Rpb24gZWEodCl7aWYoInN0cmluZyIhPXR5cGVvZih0PXQuZW1haWwpfHwhb3IudGVzdCh0KSl0aHJvdyBuZXcgSSgiaW52YWxpZC1lbWFpbCIpfWZ1bmN0aW9uIG5hKHQpeyJlbWFpbCJpbiB0JiZlYSh0KX1mdW5jdGlvbiByYSh0KXtpZighdFtCc10pe2lmKHQubWZhUGVuZGluZ0NyZWRlbnRpYWwpdGhyb3cgbmV3IEkoIm11bHRpLWZhY3Rvci1hdXRoLXJlcXVpcmVkIixudWxsLGN0KHQpKTt0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKX19ZnVuY3Rpb24gaWEodCl7aWYodC5waG9uZU51bWJlcnx8dC50ZW1wb3JhcnlQcm9vZil7aWYoIXQucGhvbmVOdW1iZXJ8fCF0LnRlbXBvcmFyeVByb29mKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpfWVsc2V7aWYoIXQuc2Vzc2lvbkluZm8pdGhyb3cgbmV3IEkoIm1pc3NpbmctdmVyaWZpY2F0aW9uLWlkIik7aWYoIXQuY29kZSl0aHJvdyBuZXcgSSgibWlzc2luZy12ZXJpZmljYXRpb24tY29kZSIpfX1xcy5wcm90b3R5cGUucz1mdW5jdGlvbih0LG4scixpLG8pe3ZhciBzPXRoaXM7VnMudGhlbihmdW5jdGlvbigpe3dpbmRvdy5nYXBpLmNsaWVudC5zZXRBcGlLZXkocy5jKTt2YXIgZT13aW5kb3cuZ2FwaS5hdXRoLmdldFRva2VuKCk7d2luZG93LmdhcGkuYXV0aC5zZXRUb2tlbihudWxsKSx3aW5kb3cuZ2FwaS5jbGllbnQucmVxdWVzdCh7cGF0aDp0LG1ldGhvZDpyLGJvZHk6aSxoZWFkZXJzOm8sYXV0aFR5cGU6Im5vbmUiLGNhbGxiYWNrOmZ1bmN0aW9uKHQpe3dpbmRvdy5nYXBpLmF1dGguc2V0VG9rZW4oZSksbiYmbih0KX19KX0pLm8oZnVuY3Rpb24odCl7biYmbih7ZXJyb3I6e21lc3NhZ2U6dCYmdC5tZXNzYWdlfHwiQ09SU19VTlNVUFBPUlRFRCJ9fSl9KX0scXMucHJvdG90eXBlLnpiPWZ1bmN0aW9uKCl7cmV0dXJuIHphKHRoaXMsTGEse30pfSxxcy5wcm90b3R5cGUuQmI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gemEodGhpcyxEYSx7aWRUb2tlbjp0LGVtYWlsOmV9KX0scXMucHJvdG90eXBlLkNiPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHphKHRoaXMseGEse2lkVG9rZW46dCxwYXNzd29yZDplfSl9O3ZhciBvYT17ZGlzcGxheU5hbWU6IkRJU1BMQVlfTkFNRSIscGhvdG9Vcmw6IlBIT1RPX1VSTCJ9O2Z1bmN0aW9uIHNhKHQpe2lmKCF0LnBob25lVmVyaWZpY2F0aW9uSW5mbyl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKTtpZighdC5waG9uZVZlcmlmaWNhdGlvbkluZm8uc2Vzc2lvbkluZm8pdGhyb3cgbmV3IEkoIm1pc3NpbmctdmVyaWZpY2F0aW9uLWlkIik7aWYoIXQucGhvbmVWZXJpZmljYXRpb25JbmZvLmNvZGUpdGhyb3cgbmV3IEkoIm1pc3NpbmctdmVyaWZpY2F0aW9uLWNvZGUiKX1mdW5jdGlvbiBhYSh0KXtpZighdC5yZXF1ZXN0VXJpfHwhdC5zZXNzaW9uSWQmJiF0LnBvc3RCb2R5JiYhdC5wZW5kaW5nVG9rZW4pdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIil9ZnVuY3Rpb24gdWEodCxlKXtyZXR1cm4gZS5vYXV0aElkVG9rZW4mJmUucHJvdmlkZXJJZCYmMD09ZS5wcm92aWRlcklkLmluZGV4T2YoIm9pZGMuIikmJiFlLnBlbmRpbmdUb2tlbiYmKHQuc2Vzc2lvbklkP2Uubm9uY2U9dC5zZXNzaW9uSWQ6dC5wb3N0Qm9keSYmKEtuKHQ9bmV3IGpuKHQucG9zdEJvZHkpLCJub25jZSIpJiYoZS5ub25jZT10LmdldCgibm9uY2UiKSkpKSxlfWZ1bmN0aW9uIGNhKHQpe3ZhciBlPW51bGw7aWYodC5uZWVkQ29uZmlybWF0aW9uPyh0LmNvZGU9ImFjY291bnQtZXhpc3RzLXdpdGgtZGlmZmVyZW50LWNyZWRlbnRpYWwiLGU9Rm8odCkpOiJGRURFUkFURURfVVNFUl9JRF9BTFJFQURZX0xJTktFRCI9PXQuZXJyb3JNZXNzYWdlPyh0LmNvZGU9ImNyZWRlbnRpYWwtYWxyZWFkeS1pbi11c2UiLGU9Rm8odCkpOiJFTUFJTF9FWElTVFMiPT10LmVycm9yTWVzc2FnZT8odC5jb2RlPSJlbWFpbC1hbHJlYWR5LWluLXVzZSIsZT1Gbyh0KSk6dC5lcnJvck1lc3NhZ2UmJihlPVFhKHQuZXJyb3JNZXNzYWdlKSksZSl0aHJvdyBlO3JhKHQpfWZ1bmN0aW9uIGhhKHQsZSl7cmV0dXJuIGUucmV0dXJuSWRwQ3JlZGVudGlhbD0hMCx6YSh0LFVhLGUpfWZ1bmN0aW9uIGxhKHQsZSl7cmV0dXJuIGUucmV0dXJuSWRwQ3JlZGVudGlhbD0hMCx6YSh0LHFhLGUpfWZ1bmN0aW9uIGZhKHQsZSl7cmV0dXJuIGUucmV0dXJuSWRwQ3JlZGVudGlhbD0hMCxlLmF1dG9DcmVhdGU9ITEsemEodCxqYSxlKX1mdW5jdGlvbiBwYSh0KXtpZighdC5vb2JDb2RlKXRocm93IG5ldyBJKCJpbnZhbGlkLWFjdGlvbi1jb2RlIil9KHQ9cXMucHJvdG90eXBlKS5EYj1mdW5jdGlvbih0LHIpe3ZhciBpPXtpZFRva2VuOnR9LG89W107cmV0dXJuIGF0KG9hLGZ1bmN0aW9uKHQsZSl7dmFyIG49cltlXTtudWxsPT09bj9vLnB1c2godCk6ZSBpbiByJiYoaVtlXT1uKX0pLG8ubGVuZ3RoJiYoaS5kZWxldGVBdHRyaWJ1dGU9byksemEodGhpcyxEYSxpKX0sdC52Yj1mdW5jdGlvbih0LGUpe3JldHVybiBsdCh0PXtyZXF1ZXN0VHlwZToiUEFTU1dPUkRfUkVTRVQiLGVtYWlsOnR9LGUpLHphKHRoaXMsQWEsdCl9LHQud2I9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbHQodD17cmVxdWVzdFR5cGU6IkVNQUlMX1NJR05JTiIsZW1haWw6dH0sZSksemEodGhpcyxTYSx0KX0sdC51Yj1mdW5jdGlvbih0LGUpe3JldHVybiBsdCh0PXtyZXF1ZXN0VHlwZToiVkVSSUZZX0VNQUlMIixpZFRva2VuOnR9LGUpLHphKHRoaXMsQ2EsdCl9LHQuRWI9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBsdCh0PXtyZXF1ZXN0VHlwZToiVkVSSUZZX0FORF9DSEFOR0VfRU1BSUwiLGlkVG9rZW46dCxuZXdFbWFpbDplfSxuKSx6YSh0aGlzLE5hLHQpfSx0LmZiPWZ1bmN0aW9uKHQpe3JldHVybiB6YSh0aGlzLEthLHQpfSx0Lm5iPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHphKHRoaXMsUGEse29vYkNvZGU6dCxuZXdQYXNzd29yZDplfSl9LHQuUmE9ZnVuY3Rpb24odCl7cmV0dXJuIHphKHRoaXMsdmEse29vYkNvZGU6dH0pfSx0LmpiPWZ1bmN0aW9uKHQpe3JldHVybiB6YSh0aGlzLGRhLHtvb2JDb2RlOnR9KX07dmFyIGRhPXtlbmRwb2ludDoic2V0QWNjb3VudEluZm8iLEE6cGEsWjoiZW1haWwiLEI6ITB9LHZhPXtlbmRwb2ludDoicmVzZXRQYXNzd29yZCIsQTpwYSxHOmZ1bmN0aW9uKHQpe3ZhciBlPXQucmVxdWVzdFR5cGU7aWYoIWV8fCF0LmVtYWlsJiYiRU1BSUxfU0lHTklOIiE9ZSYmIlZFUklGWV9BTkRfQ0hBTkdFX0VNQUlMIiE9ZSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKX0sQjohMH0sZ2E9e2VuZHBvaW50OiJzaWdudXBOZXdVc2VyIixBOmZ1bmN0aW9uKHQpe2lmKGVhKHQpLCF0LnBhc3N3b3JkKXRocm93IG5ldyBJKCJ3ZWFrLXBhc3N3b3JkIil9LEc6cmEsVjohMCxCOiEwfSx5YT17ZW5kcG9pbnQ6ImNyZWF0ZUF1dGhVcmkiLEI6ITB9LG1hPXtlbmRwb2ludDoiZGVsZXRlQWNjb3VudCIsTjpbImlkVG9rZW4iXX0sYmE9e2VuZHBvaW50OiJzZXRBY2NvdW50SW5mbyIsTjpbImlkVG9rZW4iLCJkZWxldGVQcm92aWRlciJdLEE6ZnVuY3Rpb24odCl7aWYoIUFycmF5LmlzQXJyYXkodC5kZWxldGVQcm92aWRlcikpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIil9fSx3YT17ZW5kcG9pbnQ6ImVtYWlsTGlua1NpZ25pbiIsTjpbImVtYWlsIiwib29iQ29kZSJdLEE6ZWEsRzpyYSxWOiEwLEI6ITB9LF9hPXtlbmRwb2ludDoiZW1haWxMaW5rU2lnbmluIixOOlsiaWRUb2tlbiIsImVtYWlsIiwib29iQ29kZSJdLEE6ZWEsRzpyYSxWOiEwfSxJYT17ZW5kcG9pbnQ6ImFjY291bnRzL21mYUVucm9sbG1lbnQ6ZmluYWxpemUiLE46WyJpZFRva2VuIiwicGhvbmVWZXJpZmljYXRpb25JbmZvIl0sQTpzYSxHOnJhLEI6ITAsTmE6ITB9LFRhPXtlbmRwb2ludDoiYWNjb3VudHMvbWZhU2lnbkluOmZpbmFsaXplIixOOlsibWZhUGVuZGluZ0NyZWRlbnRpYWwiLCJwaG9uZVZlcmlmaWNhdGlvbkluZm8iXSxBOnNhLEc6cmEsQjohMCxOYTohMH0sRWE9e2VuZHBvaW50OiJnZXRBY2NvdW50SW5mbyJ9LFNhPXtlbmRwb2ludDoiZ2V0T29iQ29uZmlybWF0aW9uQ29kZSIsTjpbInJlcXVlc3RUeXBlIl0sQTpmdW5jdGlvbih0KXtpZigiRU1BSUxfU0lHTklOIiE9dC5yZXF1ZXN0VHlwZSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKTtlYSh0KX0sWjoiZW1haWwiLEI6ITB9LENhPXtlbmRwb2ludDoiZ2V0T29iQ29uZmlybWF0aW9uQ29kZSIsTjpbImlkVG9rZW4iLCJyZXF1ZXN0VHlwZSJdLEE6ZnVuY3Rpb24odCl7aWYoIlZFUklGWV9FTUFJTCIhPXQucmVxdWVzdFR5cGUpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIil9LFo6ImVtYWlsIixCOiEwfSxOYT17ZW5kcG9pbnQ6ImdldE9vYkNvbmZpcm1hdGlvbkNvZGUiLE46WyJpZFRva2VuIiwibmV3RW1haWwiLCJyZXF1ZXN0VHlwZSJdLEE6ZnVuY3Rpb24odCl7aWYoIlZFUklGWV9BTkRfQ0hBTkdFX0VNQUlMIiE9dC5yZXF1ZXN0VHlwZSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKX0sWjoiZW1haWwiLEI6ITB9LEFhPXtlbmRwb2ludDoiZ2V0T29iQ29uZmlybWF0aW9uQ29kZSIsTjpbInJlcXVlc3RUeXBlIl0sQTpmdW5jdGlvbih0KXtpZigiUEFTU1dPUkRfUkVTRVQiIT10LnJlcXVlc3RUeXBlKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpO2VhKHQpfSxaOiJlbWFpbCIsQjohMH0sa2E9e2xiOiEwLGVuZHBvaW50OiJnZXRQcm9qZWN0Q29uZmlnIixVYjoiR0VUIn0sUmE9e2xiOiEwLGVuZHBvaW50OiJnZXRSZWNhcHRjaGFQYXJhbSIsVWI6IkdFVCIsRzpmdW5jdGlvbih0KXtpZighdC5yZWNhcHRjaGFTaXRlS2V5KXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpfX0sUGE9e2VuZHBvaW50OiJyZXNldFBhc3N3b3JkIixBOnBhLFo6ImVtYWlsIixCOiEwfSxPYT17ZW5kcG9pbnQ6InNlbmRWZXJpZmljYXRpb25Db2RlIixOOlsicGhvbmVOdW1iZXIiLCJyZWNhcHRjaGFUb2tlbiJdLFo6InNlc3Npb25JbmZvIixCOiEwfSxEYT17ZW5kcG9pbnQ6InNldEFjY291bnRJbmZvIixOOlsiaWRUb2tlbiJdLEE6bmEsVjohMH0seGE9e2VuZHBvaW50OiJzZXRBY2NvdW50SW5mbyIsTjpbImlkVG9rZW4iXSxBOmZ1bmN0aW9uKHQpe2lmKG5hKHQpLCF0LnBhc3N3b3JkKXRocm93IG5ldyBJKCJ3ZWFrLXBhc3N3b3JkIil9LEc6cmEsVjohMH0sTGE9e2VuZHBvaW50OiJzaWdudXBOZXdVc2VyIixHOnJhLFY6ITAsQjohMH0sTWE9e2VuZHBvaW50OiJhY2NvdW50cy9tZmFFbnJvbGxtZW50OnN0YXJ0IixOOlsiaWRUb2tlbiIsInBob25lRW5yb2xsbWVudEluZm8iXSxBOmZ1bmN0aW9uKHQpe2lmKCF0LnBob25lRW5yb2xsbWVudEluZm8pdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIik7aWYoIXQucGhvbmVFbnJvbGxtZW50SW5mby5waG9uZU51bWJlcil0aHJvdyBuZXcgSSgibWlzc2luZy1waG9uZS1udW1iZXIiKTtpZighdC5waG9uZUVucm9sbG1lbnRJbmZvLnJlY2FwdGNoYVRva2VuKXRocm93IG5ldyBJKCJtaXNzaW5nLWFwcC1jcmVkZW50aWFsIil9LEc6ZnVuY3Rpb24odCl7aWYoIXQucGhvbmVTZXNzaW9uSW5mb3x8IXQucGhvbmVTZXNzaW9uSW5mby5zZXNzaW9uSW5mbyl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKX0sQjohMCxOYTohMH0sRmE9e2VuZHBvaW50OiJhY2NvdW50cy9tZmFTaWduSW46c3RhcnQiLE46WyJtZmFQZW5kaW5nQ3JlZGVudGlhbCIsIm1mYUVucm9sbG1lbnRJZCIsInBob25lU2lnbkluSW5mbyJdLEE6ZnVuY3Rpb24odCl7aWYoIXQucGhvbmVTaWduSW5JbmZvfHwhdC5waG9uZVNpZ25JbkluZm8ucmVjYXB0Y2hhVG9rZW4pdGhyb3cgbmV3IEkoIm1pc3NpbmctYXBwLWNyZWRlbnRpYWwiKX0sRzpmdW5jdGlvbih0KXtpZighdC5waG9uZVJlc3BvbnNlSW5mb3x8IXQucGhvbmVSZXNwb25zZUluZm8uc2Vzc2lvbkluZm8pdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIil9LEI6ITAsTmE6ITB9LFVhPXtlbmRwb2ludDoidmVyaWZ5QXNzZXJ0aW9uIixBOmFhLFlhOnVhLEc6Y2EsVjohMCxCOiEwfSxqYT17ZW5kcG9pbnQ6InZlcmlmeUFzc2VydGlvbiIsQTphYSxZYTp1YSxHOmZ1bmN0aW9uKHQpe2lmKHQuZXJyb3JNZXNzYWdlJiYiVVNFUl9OT1RfRk9VTkQiPT10LmVycm9yTWVzc2FnZSl0aHJvdyBuZXcgSSgidXNlci1ub3QtZm91bmQiKTtpZih0LmVycm9yTWVzc2FnZSl0aHJvdyBRYSh0LmVycm9yTWVzc2FnZSk7cmEodCl9LFY6ITAsQjohMH0scWE9e2VuZHBvaW50OiJ2ZXJpZnlBc3NlcnRpb24iLEE6ZnVuY3Rpb24odCl7aWYoYWEodCksIXQuaWRUb2tlbil0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKX0sWWE6dWEsRzpjYSxWOiEwfSxWYT17ZW5kcG9pbnQ6InZlcmlmeUN1c3RvbVRva2VuIixBOmZ1bmN0aW9uKHQpe2lmKCF0LnRva2VuKXRocm93IG5ldyBJKCJpbnZhbGlkLWN1c3RvbS10b2tlbiIpfSxHOnJhLFY6ITAsQjohMH0sQmE9e2VuZHBvaW50OiJ2ZXJpZnlQYXNzd29yZCIsQTpmdW5jdGlvbih0KXtpZihlYSh0KSwhdC5wYXNzd29yZCl0aHJvdyBuZXcgSSgid3JvbmctcGFzc3dvcmQiKX0sRzpyYSxWOiEwLEI6ITB9LEthPXtlbmRwb2ludDoidmVyaWZ5UGhvbmVOdW1iZXIiLEE6aWEsRzpyYSxCOiEwfSxXYT17ZW5kcG9pbnQ6InZlcmlmeVBob25lTnVtYmVyIixBOmZ1bmN0aW9uKHQpe2lmKCF0LmlkVG9rZW4pdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIik7aWEodCl9LEc6ZnVuY3Rpb24odCl7aWYodC50ZW1wb3JhcnlQcm9vZil0aHJvdyB0LmNvZGU9ImNyZWRlbnRpYWwtYWxyZWFkeS1pbi11c2UiLEZvKHQpO3JhKHQpfX0sSGE9e0hiOntVU0VSX05PVF9GT1VORDoidXNlci1ub3QtZm91bmQifSxlbmRwb2ludDoidmVyaWZ5UGhvbmVOdW1iZXIiLEE6aWEsRzpyYSxCOiEwfSxHYT17ZW5kcG9pbnQ6ImFjY291bnRzL21mYUVucm9sbG1lbnQ6d2l0aGRyYXciLE46WyJpZFRva2VuIiwibWZhRW5yb2xsbWVudElkIl0sRzpmdW5jdGlvbih0KXtpZighIXRbQnNdXiEhdC5yZWZyZXNoVG9rZW4pdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIil9LEI6ITAsTmE6ITB9O2Z1bmN0aW9uIHphKHQsZSxuKXtpZighZnVuY3Rpb24odCxlKXtpZighZXx8IWUubGVuZ3RoKXJldHVybiAxO2lmKHQpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj10W2Vbbl1dO2lmKG51bGw9PXJ8fCIiPT09cilyZXR1cm59cmV0dXJuIDF9fShuLGUuTikpcmV0dXJuIHdlKG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpKTt2YXIgcixpPSEhZS5OYSxvPWUuVWJ8fCJQT1NUIjtyZXR1cm4gYmUobikudGhlbihlLkEpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5WJiYobi5yZXR1cm5TZWN1cmVUb2tlbj0hMCksZS5CJiZ0LmImJnZvaWQgMD09PW4udGVuYW50SWQmJihuLnRlbmFudElkPXQuYiksdGEodCxpP3QuaTp0LmgsZS5lbmRwb2ludCxvLG4sZS5IYixlLmxifHwhMSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiByPXQsZS5ZYT9lLllhKG4scik6cn0pLnRoZW4oZS5HKS50aGVuKGZ1bmN0aW9uKCl7aWYoIWUuWilyZXR1cm4gcjtpZighKGUuWiBpbiByKSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKTtyZXR1cm4gcltlLlpdfSl9ZnVuY3Rpb24gUWEodCl7cmV0dXJuIFlhKHtlcnJvcjp7ZXJyb3JzOlt7bWVzc2FnZTp0fV0sY29kZTo0MDAsbWVzc2FnZTp0fX0pfWZ1bmN0aW9uIFlhKHQsZSl7dmFyIG4scj0odC5lcnJvciYmdC5lcnJvci5lcnJvcnMmJnQuZXJyb3IuZXJyb3JzWzBdfHx7fSkucmVhc29ufHwiIixpPXtrZXlJbnZhbGlkOiJpbnZhbGlkLWFwaS1rZXkiLGlwUmVmZXJlckJsb2NrZWQ6ImFwcC1ub3QtYXV0aG9yaXplZCJ9O2lmKHI9aVtyXT9uZXcgSShpW3JdKTpudWxsKXJldHVybiByO2ZvcihuIGluIHI9dC5lcnJvciYmdC5lcnJvci5tZXNzYWdlfHwiIixsdChpPXtJTlZBTElEX0NVU1RPTV9UT0tFTjoiaW52YWxpZC1jdXN0b20tdG9rZW4iLENSRURFTlRJQUxfTUlTTUFUQ0g6ImN1c3RvbS10b2tlbi1taXNtYXRjaCIsTUlTU0lOR19DVVNUT01fVE9LRU46ImludGVybmFsLWVycm9yIixJTlZBTElEX0lERU5USUZJRVI6ImludmFsaWQtZW1haWwiLE1JU1NJTkdfQ09OVElOVUVfVVJJOiJpbnRlcm5hbC1lcnJvciIsSU5WQUxJRF9FTUFJTDoiaW52YWxpZC1lbWFpbCIsSU5WQUxJRF9QQVNTV09SRDoid3JvbmctcGFzc3dvcmQiLFVTRVJfRElTQUJMRUQ6InVzZXItZGlzYWJsZWQiLE1JU1NJTkdfUEFTU1dPUkQ6ImludGVybmFsLWVycm9yIixFTUFJTF9FWElTVFM6ImVtYWlsLWFscmVhZHktaW4tdXNlIixQQVNTV09SRF9MT0dJTl9ESVNBQkxFRDoib3BlcmF0aW9uLW5vdC1hbGxvd2VkIixJTlZBTElEX0lEUF9SRVNQT05TRToiaW52YWxpZC1jcmVkZW50aWFsIixJTlZBTElEX1BFTkRJTkdfVE9LRU46ImludmFsaWQtY3JlZGVudGlhbCIsRkVERVJBVEVEX1VTRVJfSURfQUxSRUFEWV9MSU5LRUQ6ImNyZWRlbnRpYWwtYWxyZWFkeS1pbi11c2UiLE1JU1NJTkdfT1JfSU5WQUxJRF9OT05DRToibWlzc2luZy1vci1pbnZhbGlkLW5vbmNlIixJTlZBTElEX01FU1NBR0VfUEFZTE9BRDoiaW52YWxpZC1tZXNzYWdlLXBheWxvYWQiLElOVkFMSURfUkVDSVBJRU5UX0VNQUlMOiJpbnZhbGlkLXJlY2lwaWVudC1lbWFpbCIsSU5WQUxJRF9TRU5ERVI6ImludmFsaWQtc2VuZGVyIixFTUFJTF9OT1RfRk9VTkQ6InVzZXItbm90LWZvdW5kIixSRVNFVF9QQVNTV09SRF9FWENFRURfTElNSVQ6InRvby1tYW55LXJlcXVlc3RzIixFWFBJUkVEX09PQl9DT0RFOiJleHBpcmVkLWFjdGlvbi1jb2RlIixJTlZBTElEX09PQl9DT0RFOiJpbnZhbGlkLWFjdGlvbi1jb2RlIixNSVNTSU5HX09PQl9DT0RFOiJpbnRlcm5hbC1lcnJvciIsSU5WQUxJRF9QUk9WSURFUl9JRDoiaW52YWxpZC1wcm92aWRlci1pZCIsQ1JFREVOVElBTF9UT09fT0xEX0xPR0lOX0FHQUlOOiJyZXF1aXJlcy1yZWNlbnQtbG9naW4iLElOVkFMSURfSURfVE9LRU46ImludmFsaWQtdXNlci10b2tlbiIsVE9LRU5fRVhQSVJFRDoidXNlci10b2tlbi1leHBpcmVkIixVU0VSX05PVF9GT1VORDoidXNlci10b2tlbi1leHBpcmVkIixDT1JTX1VOU1VQUE9SVEVEOiJjb3JzLXVuc3VwcG9ydGVkIixEWU5BTUlDX0xJTktfTk9UX0FDVElWQVRFRDoiZHluYW1pYy1saW5rLW5vdC1hY3RpdmF0ZWQiLElOVkFMSURfQVBQX0lEOiJpbnZhbGlkLWFwcC1pZCIsVE9PX01BTllfQVRURU1QVFNfVFJZX0xBVEVSOiJ0b28tbWFueS1yZXF1ZXN0cyIsV0VBS19QQVNTV09SRDoid2Vhay1wYXNzd29yZCIsT1BFUkFUSU9OX05PVF9BTExPV0VEOiJvcGVyYXRpb24tbm90LWFsbG93ZWQiLFVTRVJfQ0FOQ0VMTEVEOiJ1c2VyLWNhbmNlbGxlZCIsQ0FQVENIQV9DSEVDS19GQUlMRUQ6ImNhcHRjaGEtY2hlY2stZmFpbGVkIixJTlZBTElEX0FQUF9DUkVERU5USUFMOiJpbnZhbGlkLWFwcC1jcmVkZW50aWFsIixJTlZBTElEX0NPREU6ImludmFsaWQtdmVyaWZpY2F0aW9uLWNvZGUiLElOVkFMSURfUEhPTkVfTlVNQkVSOiJpbnZhbGlkLXBob25lLW51bWJlciIsSU5WQUxJRF9TRVNTSU9OX0lORk86ImludmFsaWQtdmVyaWZpY2F0aW9uLWlkIixJTlZBTElEX1RFTVBPUkFSWV9QUk9PRjoiaW52YWxpZC1jcmVkZW50aWFsIixNSVNTSU5HX0FQUF9DUkVERU5USUFMOiJtaXNzaW5nLWFwcC1jcmVkZW50aWFsIixNSVNTSU5HX0NPREU6Im1pc3NpbmctdmVyaWZpY2F0aW9uLWNvZGUiLE1JU1NJTkdfUEhPTkVfTlVNQkVSOiJtaXNzaW5nLXBob25lLW51bWJlciIsTUlTU0lOR19TRVNTSU9OX0lORk86Im1pc3NpbmctdmVyaWZpY2F0aW9uLWlkIixRVU9UQV9FWENFRURFRDoicXVvdGEtZXhjZWVkZWQiLFNFU1NJT05fRVhQSVJFRDoiY29kZS1leHBpcmVkIixSRUpFQ1RFRF9DUkVERU5USUFMOiJyZWplY3RlZC1jcmVkZW50aWFsIixJTlZBTElEX0NPTlRJTlVFX1VSSToiaW52YWxpZC1jb250aW51ZS11cmkiLE1JU1NJTkdfQU5EUk9JRF9QQUNLQUdFX05BTUU6Im1pc3NpbmctYW5kcm9pZC1wa2ctbmFtZSIsTUlTU0lOR19JT1NfQlVORExFX0lEOiJtaXNzaW5nLWlvcy1idW5kbGUtaWQiLFVOQVVUSE9SSVpFRF9ET01BSU46InVuYXV0aG9yaXplZC1jb250aW51ZS11cmkiLElOVkFMSURfRFlOQU1JQ19MSU5LX0RPTUFJTjoiaW52YWxpZC1keW5hbWljLWxpbmstZG9tYWluIixJTlZBTElEX09BVVRIX0NMSUVOVF9JRDoiaW52YWxpZC1vYXV0aC1jbGllbnQtaWQiLElOVkFMSURfQ0VSVF9IQVNIOiJpbnZhbGlkLWNlcnQtaGFzaCIsVU5TVVBQT1JURURfVEVOQU5UX09QRVJBVElPTjoidW5zdXBwb3J0ZWQtdGVuYW50LW9wZXJhdGlvbiIsSU5WQUxJRF9URU5BTlRfSUQ6ImludmFsaWQtdGVuYW50LWlkIixURU5BTlRfSURfTUlTTUFUQ0g6InRlbmFudC1pZC1taXNtYXRjaCIsQURNSU5fT05MWV9PUEVSQVRJT046ImFkbWluLXJlc3RyaWN0ZWQtb3BlcmF0aW9uIixJTlZBTElEX01GQV9QRU5ESU5HX0NSRURFTlRJQUw6ImludmFsaWQtbXVsdGktZmFjdG9yLXNlc3Npb24iLE1GQV9FTlJPTExNRU5UX05PVF9GT1VORDoibXVsdGktZmFjdG9yLWluZm8tbm90LWZvdW5kIixNSVNTSU5HX01GQV9QRU5ESU5HX0NSRURFTlRJQUw6Im1pc3NpbmctbXVsdGktZmFjdG9yLXNlc3Npb24iLE1JU1NJTkdfTUZBX0VOUk9MTE1FTlRfSUQ6Im1pc3NpbmctbXVsdGktZmFjdG9yLWluZm8iLEVNQUlMX0NIQU5HRV9ORUVEU19WRVJJRklDQVRJT046ImVtYWlsLWNoYW5nZS1uZWVkcy12ZXJpZmljYXRpb24iLFNFQ09ORF9GQUNUT1JfRVhJU1RTOiJzZWNvbmQtZmFjdG9yLWFscmVhZHktaW4tdXNlIixTRUNPTkRfRkFDVE9SX0xJTUlUX0VYQ0VFREVEOiJtYXhpbXVtLXNlY29uZC1mYWN0b3ItY291bnQtZXhjZWVkZWQiLFVOU1VQUE9SVEVEX0ZJUlNUX0ZBQ1RPUjoidW5zdXBwb3J0ZWQtZmlyc3QtZmFjdG9yIixVTlZFUklGSUVEX0VNQUlMOiJ1bnZlcmlmaWVkLWVtYWlsIn0sZXx8e30pLGU9KGU9ci5tYXRjaCgvXlteXHNdK1xzKjpccyooW1xzXFNdKikkLykpJiYxPGUubGVuZ3RoP2VbMV06dm9pZCAwLGkpaWYoMD09PXIuaW5kZXhPZihuKSlyZXR1cm4gbmV3IEkoaVtuXSxlKTtyZXR1cm4gbmV3IEkoImludGVybmFsLWVycm9yIixlPSFlJiZ0P0VyKHQpOmUpfWZ1bmN0aW9uIFhhKHQpe3ZhciBvO3RoaXMuYj10LHRoaXMuYT1udWxsLHRoaXMucmI9KG89dGhpcywodHU9dHV8fG5ldyBmZShmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIG4oKXtrcigpLG1yKCJnYXBpLmxvYWQiKSgiZ2FwaS5pZnJhbWVzIix7Y2FsbGJhY2s6dCxvbnRpbWVvdXQ6ZnVuY3Rpb24oKXtrcigpLGUoRXJyb3IoIk5ldHdvcmsgRXJyb3IiKSl9LHRpbWVvdXQ6JGEuZ2V0KCl9KX12YXIgcjttcigiZ2FwaS5pZnJhbWVzLklmcmFtZSIpP3QoKTptcigiZ2FwaS5sb2FkIik/bigpOihyPSJfX2lmcmFtZWZjYiIrTWF0aC5mbG9vcigxZTYqTWF0aC5yYW5kb20oKSkudG9TdHJpbmcoKSxsW3JdPWZ1bmN0aW9uKCl7bXIoImdhcGkubG9hZCIpP24oKTplKEVycm9yKCJOZXR3b3JrIEVycm9yIikpfSxiZShEcyhyPV90KEphLHtvbmxvYWQ6cn0pKSkubyhmdW5jdGlvbigpe2UoRXJyb3IoIk5ldHdvcmsgRXJyb3IiKSl9KSl9KS5vKGZ1bmN0aW9uKHQpe3Rocm93IHR1PW51bGwsdH0pKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbihyLGkpe21yKCJnYXBpLmlmcmFtZXMuZ2V0Q29udGV4dCIpKCkub3Blbih7d2hlcmU6ZG9jdW1lbnQuYm9keSx1cmw6by5iLG1lc3NhZ2VIYW5kbGVyc0ZpbHRlcjptcigiZ2FwaS5pZnJhbWVzLkNST1NTX09SSUdJTl9JRlJBTUVTX0ZJTFRFUiIpLGF0dHJpYnV0ZXM6e3N0eWxlOntwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDoiLTEwMHB4Iix3aWR0aDoiMXB4IixoZWlnaHQ6IjFweCJ9fSxkb250Y2xlYXI6ITB9LGZ1bmN0aW9uKHQpe2Z1bmN0aW9uIGUoKXtjbGVhclRpbWVvdXQobikscigpfW8uYT10LG8uYS5yZXN0eWxlKHtzZXRIaWRlT25MZWF2ZTohMX0pO3ZhciBuPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtpKEVycm9yKCJOZXR3b3JrIEVycm9yIikpfSxaYS5nZXQoKSk7dC5waW5nKGUpLnRoZW4oZSxmdW5jdGlvbigpe2koRXJyb3IoIk5ldHdvcmsgRXJyb3IiKSl9KX0pfSl9KSl9dmFyIEphPW5ldyBwdCh5dCwiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20vanMvYXBpLmpzP29ubG9hZD0le29ubG9hZH0iKSwkYT1uZXcgUnIoM2U0LDZlNCksWmE9bmV3IFJyKDVlMywxNWUzKSx0dT1udWxsO2Z1bmN0aW9uIGV1KHQsZSxuLHIpe3RoaXMubD10LHRoaXMuaD1lLHRoaXMuaT1uLHRoaXMuZz1yLHRoaXMuZj1udWxsLHQ9dGhpcy5nP1JuKCh0PWtuKHRoaXMuZy51cmwpKS5jLHQuYSx0LmcsIi9lbXVsYXRvci9hdXRoL2lmcmFtZSIpOlJuKCJodHRwcyIsdGhpcy5sLG51bGwsIi9fXy9hdXRoL2lmcmFtZSIpLHRoaXMuYT10LE5uKHRoaXMuYSwiYXBpS2V5Iix0aGlzLmgpLE5uKHRoaXMuYSwiYXBwTmFtZSIsdGhpcy5pKSx0aGlzLmI9bnVsbCx0aGlzLmM9W119ZnVuY3Rpb24gbnUodCxlLG4scixpLG8pe3RoaXMudT10LHRoaXMucz1lLHRoaXMuYz1uLHRoaXMubT1yLHRoaXMudj1vLHRoaXMuaT10aGlzLmc9dGhpcy5sPW51bGwsdGhpcy5hPWksdGhpcy5oPXRoaXMuZj1udWxsfWZ1bmN0aW9uIHJ1KHQpe3RyeXtyZXR1cm4gWGwuYXBwKHQpLmF1dGgoKS5HYSgpfWNhdGNoKHQpe3JldHVybltdfX1mdW5jdGlvbiBpdSh0LGUsbixyLGksbyl7dGhpcy5zPXQsdGhpcy5nPWUsdGhpcy5iPW4sdGhpcy5mPW8sdGhpcy5jPXJ8fG51bGwsdGhpcy5pPWl8fG51bGwsdGhpcy5sPXRoaXMudT10aGlzLkM9bnVsbCx0aGlzLmg9W10sdGhpcy5tPXRoaXMuYT1udWxsfWZ1bmN0aW9uIG91KHQpe3ZhciBhPVpuKCk7cmV0dXJuIHphKHQsa2Ese30pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuYXV0aG9yaXplZERvbWFpbnN8fFtdfSkudGhlbihmdW5jdGlvbih0KXt0Ontmb3IodmFyIGU9KG49a24oYSkpLmMsbj1uLmEscj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgaT10W3JdLG89bixzPWU7aWYobz0wPT1pLmluZGV4T2YoImNocm9tZS1leHRlbnNpb246Ly8iKT9rbihpKS5hPT1vJiYiY2hyb21lLWV4dGVuc2lvbiI9PXM6KCJodHRwIj09c3x8Imh0dHBzIj09cykmJihpci50ZXN0KGkpP289PWk6KGk9aS5zcGxpdCgiLiIpLmpvaW4oIlxcLiIpLG5ldyBSZWdFeHAoIl4oLitcXC4iK2krInwiK2krIikkIiwiaSIpLnRlc3QobykpKSl7dD0hMDticmVhayB0fX10PSExfWlmKCF0KXRocm93IG5ldyBMbyhabigpKX0pfWZ1bmN0aW9uIHN1KGkpe3JldHVybiBpLm18fChpLm09c3IoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIHQsZSxuLHI7aS51fHwodD1pLmMsZT1pLmksbj1ydShpLmIpLChyPW5ldyBldShpLnMsaS5nLGkuYixpLmYpKS5mPXQsci5iPWUsci5jPXoobnx8W10pLGkudT1yLnRvU3RyaW5nKCkpLGkudj1uZXcgWGEoaS51KSxmdW5jdGlvbihyKXtpZighci52KXRocm93IEVycm9yKCJJZmNIYW5kbGVyIG11c3QgYmUgaW5pdGlhbGl6ZWQhIik7IWZ1bmN0aW9uKHQsZSl7dC5yYi50aGVuKGZ1bmN0aW9uKCl7dC5hLnJlZ2lzdGVyKCJhdXRoRXZlbnQiLGUsbXIoImdhcGkuaWZyYW1lcy5DUk9TU19PUklHSU5fSUZSQU1FU19GSUxURVIiKSl9KX0oci52LGZ1bmN0aW9uKHQpe3ZhciBlPXt9O2lmKHQmJnQuYXV0aEV2ZW50KXt2YXIgbj0hMTtmb3IodD1Qbyh0LmF1dGhFdmVudCksZT0wO2U8ci5oLmxlbmd0aDtlKyspbj1yLmhbZV0odCl8fG47cmV0dXJuKGU9e30pLnN0YXR1cz1uPyJBQ0siOiJFUlJPUiIsYmUoZSl9cmV0dXJuIGUuc3RhdHVzPSJFUlJPUiIsYmUoZSl9KX0oaSl9KSxpLm0pfWZ1bmN0aW9uIGF1KHQpe3JldHVybiB0Lmx8fCh0LkM9dC5jP2dyKHQuYyxydSh0LmIpKTpudWxsLHQubD1uZXcgcXModC5nLEEodC5pKSx0LkMpLHQuZiYmUXModC5sLHQuZikpLHQubH1mdW5jdGlvbiB1dSh0LGUsbixyLGksbyxzLGEsdSxjLGgsbCl7cmV0dXJuKHQ9bmV3IG51KHQsZSxuLHIsaSxsKSkubD1vLHQuZz1zLHQuaT1hLHQuYj1jdCh1fHxudWxsKSx0LmY9Yyx0LnliKGgpLnRvU3RyaW5nKCl9ZnVuY3Rpb24gY3UodCl7aWYodGhpcy5hPXR8fFhsLklOVEVSTkFMLnJlYWN0TmF0aXZlJiZYbC5JTlRFUk5BTC5yZWFjdE5hdGl2ZS5Bc3luY1N0b3JhZ2UsIXRoaXMuYSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiLCJUaGUgUmVhY3QgTmF0aXZlIGNvbXBhdGliaWxpdHkgbGlicmFyeSB3YXMgbm90IGZvdW5kLiIpO3RoaXMudHlwZT0iYXN5bmNTdG9yYWdlIn1mdW5jdGlvbiBodSh0KXt0aGlzLmI9dCx0aGlzLmE9e30sdGhpcy5mPW0odGhpcy5jLHRoaXMpfWV1LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmY/Tm4odGhpcy5hLCJ2Iix0aGlzLmYpOkJuKHRoaXMuYS5iLCJ2IiksdGhpcy5iP05uKHRoaXMuYSwiZWlkIix0aGlzLmIpOkJuKHRoaXMuYS5iLCJlaWQiKSx0aGlzLmMubGVuZ3RoP05uKHRoaXMuYSwiZnciLHRoaXMuYy5qb2luKCIsIikpOkJuKHRoaXMuYS5iLCJmdyIpLHRoaXMuYS50b1N0cmluZygpfSxudS5wcm90b3R5cGUueWI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuaD10LHRoaXN9LG51LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3ZhciB0O2lmKE5uKHQ9dGhpcy52P1JuKCh0PWtuKHRoaXMudi51cmwpKS5jLHQuYSx0LmcsIi9lbXVsYXRvci9hdXRoL2hhbmRsZXIiKTpSbigiaHR0cHMiLHRoaXMudSxudWxsLCIvX18vYXV0aC9oYW5kbGVyIiksImFwaUtleSIsdGhpcy5zKSxObih0LCJhcHBOYW1lIix0aGlzLmMpLE5uKHQsImF1dGhUeXBlIix0aGlzLm0pLHRoaXMuYS5pc09BdXRoUHJvdmlkZXIpe3ZhciBlPXRoaXMuYTt0cnl7dmFyIG49WGwuYXBwKHRoaXMuYykuYXV0aCgpLmxhKCl9Y2F0Y2godCl7bj1udWxsfWZvcihyIGluIGUub2I9bixObih0LCJwcm92aWRlcklkIix0aGlzLmEucHJvdmlkZXJJZCksZT1Tcigobj10aGlzLmEpLkliKSllW3JdPWVbcl0udG9TdHJpbmcoKTtmb3IodmFyIHI9bi5RYyxlPWN0KGUpLGk9MDtpPHIubGVuZ3RoO2krKyl7dmFyIG89cltpXTtvIGluIGUmJmRlbGV0ZSBlW29dfW4ucGImJm4ub2ImJiFlW24ucGJdJiYoZVtuLnBiXT1uLm9iKSx1dChlKXx8Tm4odCwiY3VzdG9tUGFyYW1ldGVycyIsRXIoZSkpfWlmKCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmEuUWImJigobj10aGlzLmEuUWIoKSkubGVuZ3RoJiZObih0LCJzY29wZXMiLG4uam9pbigiLCIpKSksdGhpcy5sP05uKHQsInJlZGlyZWN0VXJsIix0aGlzLmwpOkJuKHQuYiwicmVkaXJlY3RVcmwiKSx0aGlzLmc/Tm4odCwiZXZlbnRJZCIsdGhpcy5nKTpCbih0LmIsImV2ZW50SWQiKSx0aGlzLmk/Tm4odCwidiIsdGhpcy5pKTpCbih0LmIsInYiKSx0aGlzLmIpZm9yKHZhciBzIGluIHRoaXMuYil0aGlzLmIuaGFzT3duUHJvcGVydHkocykmJiFBbih0LHMpJiZObih0LHMsdGhpcy5iW3NdKTtyZXR1cm4gdGhpcy5oP05uKHQsInRpZCIsdGhpcy5oKTpCbih0LmIsInRpZCIpLHRoaXMuZj9Obih0LCJlaWQiLHRoaXMuZik6Qm4odC5iLCJlaWQiKSwocz1ydSh0aGlzLmMpKS5sZW5ndGgmJk5uKHQsImZ3IixzLmpvaW4oIiwiKSksdC50b1N0cmluZygpfSwodD1pdS5wcm90b3R5cGUpLk9iPWZ1bmN0aW9uKGUsbix0KXt2YXIgcj1uZXcgSSgicG9wdXAtY2xvc2VkLWJ5LXVzZXIiKSxpPW5ldyBJKCJ3ZWItc3RvcmFnZS11bnN1cHBvcnRlZCIpLG89dGhpcyxzPSExO3JldHVybiB0aGlzLm1hKCkudGhlbihmdW5jdGlvbigpe3ZhciB0LHI7cj17dHlwZToid2ViU3RvcmFnZVN1cHBvcnQifSxzdSh0PW8pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZT10LnYsbj1yLGUucmIudGhlbihmdW5jdGlvbigpe3JldHVybiBuZXcgZmUoZnVuY3Rpb24odCl7ZS5hLnNlbmQobi50eXBlLG4sdCxtcigiZ2FwaS5pZnJhbWVzLkNST1NTX09SSUdJTl9JRlJBTUVTX0ZJTFRFUiIpKX0pfSk7dmFyIGUsbn0pLnRoZW4oZnVuY3Rpb24odCl7aWYodCYmdC5sZW5ndGgmJnZvaWQgMCE9PXRbMF0ud2ViU3RvcmFnZVN1cHBvcnQpcmV0dXJuIHRbMF0ud2ViU3RvcmFnZVN1cHBvcnQ7dGhyb3cgRXJyb3IoKX0pLnRoZW4oZnVuY3Rpb24odCl7dHx8KGUmJm5yKGUpLG4oaSkscz0hMCl9KX0pLm8oZnVuY3Rpb24oKXt9KS50aGVuKGZ1bmN0aW9uKCl7aWYoIXMpcmV0dXJuIG49ZSxuZXcgZmUoZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uIHQoKXtnbigyZTMpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbiYmIW4uY2xvc2VkP3QoKTp2b2lkIGUoKX0pfSgpfSk7dmFyIG59KS50aGVuKGZ1bmN0aW9uKCl7aWYoIXMpcmV0dXJuIGduKHQpLnRoZW4oZnVuY3Rpb24oKXtuKHIpfSl9KX0sdC5YYj1mdW5jdGlvbigpe3ZhciB0PXlyKCk7cmV0dXJuIVRyKHQpJiYhQXIodCl9LHQuVGI9ZnVuY3Rpb24oKXtyZXR1cm4hMX0sdC5NYj1mdW5jdGlvbihlLHQsbixyLGksbyxzLGEpe2lmKCFlKXJldHVybiB3ZShuZXcgSSgicG9wdXAtYmxvY2tlZCIpKTtpZihzJiYhVHIoKSlyZXR1cm4gdGhpcy5tYSgpLm8oZnVuY3Rpb24odCl7bnIoZSksaSh0KX0pLHIoKSxiZSgpO3RoaXMuYXx8KHRoaXMuYT1vdShhdSh0aGlzKSkpO3ZhciB1PXRoaXM7cmV0dXJuIHRoaXMuYS50aGVuKGZ1bmN0aW9uKCl7dmFyIHQ9dS5tYSgpLm8oZnVuY3Rpb24odCl7dGhyb3cgbnIoZSksaSh0KSx0fSk7cmV0dXJuIHIoKSx0fSkudGhlbihmdW5jdGlvbigpe2tvKG4pLHN8fHRyKHV1KHUucyx1LmcsdS5iLHQsbixudWxsLG8sdS5jLHZvaWQgMCx1LmksYSx1LmYpLGUpfSkubyhmdW5jdGlvbih0KXt0aHJvdyJhdXRoL25ldHdvcmstcmVxdWVzdC1mYWlsZWQiPT10LmNvZGUmJih1LmE9bnVsbCksdH0pfSx0Lk5iPWZ1bmN0aW9uKHQsZSxuLHIpe3RoaXMuYXx8KHRoaXMuYT1vdShhdSh0aGlzKSkpO3ZhciBpPXRoaXM7cmV0dXJuIHRoaXMuYS50aGVuKGZ1bmN0aW9uKCl7a28oZSksdHIodXUoaS5zLGkuZyxpLmIsdCxlLFpuKCksbixpLmMsdm9pZCAwLGkuaSxyLGkuZikpfSkubyhmdW5jdGlvbih0KXt0aHJvdyJhdXRoL25ldHdvcmstcmVxdWVzdC1mYWlsZWQiPT10LmNvZGUmJihpLmE9bnVsbCksdH0pfSx0Lm1hPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXR1cm4gc3UodGhpcykudGhlbihmdW5jdGlvbigpe3JldHVybiB0LnYucmJ9KS5vKGZ1bmN0aW9uKCl7dGhyb3cgdC5hPW51bGwsbmV3IEkoIm5ldHdvcmstcmVxdWVzdC1mYWlsZWQiKX0pfSx0LiRiPWZ1bmN0aW9uKCl7cmV0dXJuITB9LHQuRWE9ZnVuY3Rpb24odCl7dGhpcy5oLnB1c2godCl9LHQuU2E9ZnVuY3Rpb24oZSl7SCh0aGlzLmgsZnVuY3Rpb24odCl7cmV0dXJuIHQ9PWV9KX0sKHQ9Y3UucHJvdG90eXBlKS5nZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIGJlKHRoaXMuYS5nZXRJdGVtKHQpKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0JiZDcih0KX0pfSx0LnNldD1mdW5jdGlvbih0LGUpe3JldHVybiBiZSh0aGlzLmEuc2V0SXRlbSh0LEVyKGUpKSl9LHQuVT1mdW5jdGlvbih0KXtyZXR1cm4gYmUodGhpcy5hLnJlbW92ZUl0ZW0odCkpfSx0LmNhPWZ1bmN0aW9uKCl7fSx0LmlhPWZ1bmN0aW9uKCl7fTt2YXIgbHUsZnU9W107ZnVuY3Rpb24gcHUodCxlLG4pe3V0KHQuYSkmJnQuYi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0LmYpLHZvaWQgMD09PXQuYVtlXSYmKHQuYVtlXT1bXSksdC5hW2VdLnB1c2gobil9ZnVuY3Rpb24gZHUodCl7dGhpcy5hPXR9ZnVuY3Rpb24gdnUodCl7dGhpcy5jPXQsdGhpcy5iPSExLHRoaXMuYT1bXX1mdW5jdGlvbiBndShyLHQsZSxuKXt2YXIgaSxvLHMsYSx1PWV8fHt9LGM9bnVsbDtpZihyLmIpcmV0dXJuIHdlKEVycm9yKCJjb25uZWN0aW9uX3VuYXZhaWxhYmxlIikpO3ZhciBoPW4/ODAwOjUwLGw9InVuZGVmaW5lZCIhPXR5cGVvZiBNZXNzYWdlQ2hhbm5lbD9uZXcgTWVzc2FnZUNoYW5uZWw6bnVsbDtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKGUsbil7bD8oaT1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqTWF0aC5wb3coMTAsMjApKS50b1N0cmluZygpLGwucG9ydDEuc3RhcnQoKSxzPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuKEVycm9yKCJ1bnN1cHBvcnRlZF9ldmVudCIpKX0saCksYz17bWVzc2FnZUNoYW5uZWw6bCxvbk1lc3NhZ2U6bz1mdW5jdGlvbih0KXt0LmRhdGEuZXZlbnRJZD09PWkmJigiYWNrIj09PXQuZGF0YS5zdGF0dXM/KGNsZWFyVGltZW91dChzKSxhPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuKEVycm9yKCJ0aW1lb3V0IikpfSwzZTMpKToiZG9uZSI9PT10LmRhdGEuc3RhdHVzPyhjbGVhclRpbWVvdXQoYSksdm9pZCAwIT09dC5kYXRhLnJlc3BvbnNlP2UodC5kYXRhLnJlc3BvbnNlKTpuKEVycm9yKCJ1bmtub3duX2Vycm9yIikpKTooY2xlYXJUaW1lb3V0KHMpLGNsZWFyVGltZW91dChhKSxuKEVycm9yKCJpbnZhbGlkX3Jlc3BvbnNlIikpKSl9fSxyLmEucHVzaChjKSxsLnBvcnQxLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLG8pLHIuYy5wb3N0TWVzc2FnZSh7ZXZlbnRUeXBlOnQsZXZlbnRJZDppLGRhdGE6dX0sW2wucG9ydDJdKSk6bihFcnJvcigiY29ubmVjdGlvbl91bmF2YWlsYWJsZSIpKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHl1KHIsYyksdH0pLm8oZnVuY3Rpb24odCl7dGhyb3cgeXUocixjKSx0fSl9ZnVuY3Rpb24geXUodCxlKXt2YXIgbixyO2UmJihuPWUubWVzc2FnZUNoYW5uZWwscj1lLm9uTWVzc2FnZSxuJiYobi5wb3J0MS5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixyKSxuLnBvcnQxLmNsb3NlKCkpLEgodC5hLGZ1bmN0aW9uKHQpe3JldHVybiB0PT1lfSkpfWZ1bmN0aW9uIG11KCl7aWYoIUl1KCkpdGhyb3cgbmV3IEkoIndlYi1zdG9yYWdlLXVuc3VwcG9ydGVkIik7dGhpcy5jPXt9LHRoaXMuYT1bXSx0aGlzLmI9MCx0aGlzLm09bC5pbmRleGVkREIsdGhpcy50eXBlPSJpbmRleGVkREIiLHRoaXMuZz10aGlzLnY9dGhpcy5mPXRoaXMubD1udWxsLHRoaXMucz0hMSx0aGlzLmg9bnVsbDt2YXIgdCxlLG4scj10aGlzO2NyKCkmJnNlbGY/KHRoaXMudj0obj1jcigpP3NlbGY6bnVsbCxqKGZ1LGZ1bmN0aW9uKHQpe3QuYj09biYmKGU9dCl9KSxlfHwoZT1uZXcgaHUobiksZnUucHVzaChlKSksZSkscHUodGhpcy52LCJrZXlDaGFuZ2VkIixmdW5jdGlvbih0LG4pe3JldHVybiBOdShyKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiAwPGUubGVuZ3RoJiZqKHIuYSxmdW5jdGlvbih0KXt0KGUpfSkse2tleVByb2Nlc3NlZDpLKGUsbi5rZXkpfX0pfSkscHUodGhpcy52LCJwaW5nIixmdW5jdGlvbigpe3JldHVybiBiZShbImtleUNoYW5nZWQiXSl9KSk6KCh0PWwubmF2aWdhdG9yKSYmdC5zZXJ2aWNlV29ya2VyP2JlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiB0LnNlcnZpY2VXb3JrZXIucmVhZHl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LmFjdGl2ZXx8bnVsbH0pLm8oZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pOmJlKG51bGwpKS50aGVuKGZ1bmN0aW9uKHQpeyhyLmg9dCkmJihyLmc9bmV3IHZ1KG5ldyBkdSh0KSksZ3Uoci5nLCJwaW5nIixudWxsLCEwKS50aGVuKGZ1bmN0aW9uKHQpe3RbMF0uZnVsZmlsbGVkJiZLKHRbMF0udmFsdWUsImtleUNoYW5nZWQiKSYmKHIucz0hMCl9KS5vKGZ1bmN0aW9uKCl7fSkpfSl9ZnVuY3Rpb24gYnUoaSl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbihlLG4pe3ZhciB0PWkubS5vcGVuKCJmaXJlYmFzZUxvY2FsU3RvcmFnZURiIiwxKTt0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7dHJ5e3QucHJldmVudERlZmF1bHQoKX1jYXRjaCh0KXt9bihFcnJvcih0LnRhcmdldC5lcnJvcikpfSx0Lm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbih0KXt0PXQudGFyZ2V0LnJlc3VsdDt0cnl7dC5jcmVhdGVPYmplY3RTdG9yZSgiZmlyZWJhc2VMb2NhbFN0b3JhZ2UiLHtrZXlQYXRoOiJmYmFzZV9rZXkifSl9Y2F0Y2godCl7bih0KX19LHQub25zdWNjZXNzPWZ1bmN0aW9uKHQpe3ZhciByOyh0PXQudGFyZ2V0LnJlc3VsdCkub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygiZmlyZWJhc2VMb2NhbFN0b3JhZ2UiKT9lKHQpOihyPWksbmV3IGZlKGZ1bmN0aW9uKHQsZSl7dmFyIG49ci5tLmRlbGV0ZURhdGFiYXNlKCJmaXJlYmFzZUxvY2FsU3RvcmFnZURiIik7bi5vbnN1Y2Nlc3M9ZnVuY3Rpb24oKXt0KCl9LG4ub25lcnJvcj1mdW5jdGlvbih0KXtlKEVycm9yKHQudGFyZ2V0LmVycm9yKSl9fSkudGhlbihmdW5jdGlvbigpe3JldHVybiBidShpKX0pLnRoZW4oZnVuY3Rpb24odCl7ZSh0KX0pLm8oZnVuY3Rpb24odCl7bih0KX0pKX19KX1mdW5jdGlvbiB3dSh0KXtyZXR1cm4gdC5pfHwodC5pPWJ1KHQpKSx0Lml9ZnVuY3Rpb24gX3UoaSx0KXt2YXIgbz0wO3JldHVybiBuZXcgZmUoZnVuY3Rpb24gZShuLHIpe3d1KGkpLnRoZW4odCkudGhlbihuKS5vKGZ1bmN0aW9uKHQpe3JldHVybiAzPCsrbz92b2lkIHIodCk6d3UoaSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5jbG9zZSgpLGkuaT12b2lkIDAsZShuLHIpfSkubyhmdW5jdGlvbih0KXtyKHQpfSl9KX0pfWZ1bmN0aW9uIEl1KCl7dHJ5e3JldHVybiBsLmluZGV4ZWREQn1jYXRjaCh0KXtyZXR1cm59fWZ1bmN0aW9uIFR1KHQpe3JldHVybiB0Lm9iamVjdFN0b3JlKCJmaXJlYmFzZUxvY2FsU3RvcmFnZSIpfWZ1bmN0aW9uIEV1KHQsZSl7cmV0dXJuIHQudHJhbnNhY3Rpb24oWyJmaXJlYmFzZUxvY2FsU3RvcmFnZSJdLGU/InJlYWR3cml0ZSI6InJlYWRvbmx5Iil9ZnVuY3Rpb24gU3UodCl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbihlLG4pe3Qub25zdWNjZXNzPWZ1bmN0aW9uKHQpe3QmJnQudGFyZ2V0P2UodC50YXJnZXQucmVzdWx0KTplKCl9LHQub25lcnJvcj1mdW5jdGlvbih0KXtuKHQudGFyZ2V0LmVycm9yKX19KX1mdW5jdGlvbiBDdSh0LGUpe3JldHVybiB0LmcmJnQuaCYmKChuPWwubmF2aWdhdG9yKSYmbi5zZXJ2aWNlV29ya2VyJiZuLnNlcnZpY2VXb3JrZXIuY29udHJvbGxlcnx8bnVsbCk9PT10Lmg/Z3UodC5nLCJrZXlDaGFuZ2VkIix7a2V5OmV9LHQucykudGhlbihmdW5jdGlvbigpe30pLm8oZnVuY3Rpb24oKXt9KTpiZSgpO3ZhciBufWZ1bmN0aW9uIE51KHIpe3JldHVybiB3dShyKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBpPVR1KEV1KHQsITEpKTtyZXR1cm4gaS5nZXRBbGw/U3UoaS5nZXRBbGwoKSk6bmV3IGZlKGZ1bmN0aW9uKGUsbil7dmFyIHI9W10sdD1pLm9wZW5DdXJzb3IoKTt0Lm9uc3VjY2Vzcz1mdW5jdGlvbih0KXsodD10LnRhcmdldC5yZXN1bHQpPyhyLnB1c2godC52YWx1ZSksdC5jb250aW51ZSgpKTplKHIpfSx0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7bih0LnRhcmdldC5lcnJvcil9fSl9KS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBlPXt9LG49W107aWYoMD09ci5iKXtmb3Iobj0wO248dC5sZW5ndGg7bisrKWVbdFtuXS5mYmFzZV9rZXldPXRbbl0udmFsdWU7bj1mdW5jdGlvbiB0KGUsbil7dmFyIHIsaT1bXTtmb3IociBpbiBlKXIgaW4gbiYmdHlwZW9mIGVbcl09PXR5cGVvZiBuW3JdPyJvYmplY3QiPT10eXBlb2YgZVtyXSYmbnVsbCE9ZVtyXSYmbnVsbCE9bltyXT8wPHQoZVtyXSxuW3JdKS5sZW5ndGgmJmkucHVzaChyKTplW3JdIT09bltyXSYmaS5wdXNoKHIpOmkucHVzaChyKTtmb3IociBpbiBuKXIgaW4gZXx8aS5wdXNoKHIpO3JldHVybiBpfShyLmMsZSksci5jPWV9cmV0dXJuIG59KX1mdW5jdGlvbiBBdSh0KXt0LmwmJnQubC5jYW5jZWwoIlNUT1BfRVZFTlQiKSx0LmYmJihjbGVhclRpbWVvdXQodC5mKSx0LmY9bnVsbCl9ZnVuY3Rpb24ga3UodCl7dmFyIHI9dGhpcyxpPW51bGw7dGhpcy5hPVtdLHRoaXMudHlwZT0iaW5kZXhlZERCIix0aGlzLmM9dCx0aGlzLmI9YmUoKS50aGVuKGZ1bmN0aW9uKCl7aWYoSXUoKSl7dmFyIGU9TnIoKSxuPSJfX3NhayIrZTtyZXR1cm4gbHU9bHV8fG5ldyBtdSwoaT1sdSkuc2V0KG4sZSkudGhlbihmdW5jdGlvbigpe3JldHVybiBpLmdldChuKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYodCE9PWUpdGhyb3cgRXJyb3IoImluZGV4ZWREQiBub3Qgc3VwcG9ydGVkISIpO3JldHVybiBpLlUobil9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KS5vKGZ1bmN0aW9uKCl7cmV0dXJuIHIuY30pfXJldHVybiByLmN9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiByLnR5cGU9dC50eXBlLHQuY2EoZnVuY3Rpb24oZSl7aihyLmEsZnVuY3Rpb24odCl7dChlKX0pfSksdH0pfWZ1bmN0aW9uIFJ1KCl7dGhpcy5hPXt9LHRoaXMudHlwZT0iaW5NZW1vcnkifWZ1bmN0aW9uIFB1KCl7aWYoIWZ1bmN0aW9uKCl7dmFyIHQ9Ik5vZGUiPT1ocigpO2lmKCEodD1PdSgpfHx0JiZYbC5JTlRFUk5BTC5ub2RlJiZYbC5JTlRFUk5BTC5ub2RlLmxvY2FsU3RvcmFnZSkpcmV0dXJuITE7dHJ5e3JldHVybiB0LnNldEl0ZW0oIl9fc2FrIiwiMSIpLHQucmVtb3ZlSXRlbSgiX19zYWsiKSwhMH1jYXRjaCh0KXtyZXR1cm4hMX19KCkpe2lmKCJOb2RlIj09aHIoKSl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiLCJUaGUgTG9jYWxTdG9yYWdlIGNvbXBhdGliaWxpdHkgbGlicmFyeSB3YXMgbm90IGZvdW5kLiIpO3Rocm93IG5ldyBJKCJ3ZWItc3RvcmFnZS11bnN1cHBvcnRlZCIpfXRoaXMuYT1PdSgpfHxYbC5JTlRFUk5BTC5ub2RlLmxvY2FsU3RvcmFnZSx0aGlzLnR5cGU9ImxvY2FsU3RvcmFnZSJ9ZnVuY3Rpb24gT3UoKXt0cnl7dmFyIHQ9bC5sb2NhbFN0b3JhZ2UsZT1OcigpO3JldHVybiB0JiYodC5zZXRJdGVtKGUsIjEiKSx0LnJlbW92ZUl0ZW0oZSkpLHR9Y2F0Y2godCl7cmV0dXJuIG51bGx9fWZ1bmN0aW9uIER1KCl7dGhpcy50eXBlPSJudWxsU3RvcmFnZSJ9ZnVuY3Rpb24geHUoKXtpZighZnVuY3Rpb24oKXt2YXIgdD0iTm9kZSI9PWhyKCk7aWYoISh0PUx1KCl8fHQmJlhsLklOVEVSTkFMLm5vZGUmJlhsLklOVEVSTkFMLm5vZGUuc2Vzc2lvblN0b3JhZ2UpKXJldHVybiExO3RyeXtyZXR1cm4gdC5zZXRJdGVtKCJfX3NhayIsIjEiKSx0LnJlbW92ZUl0ZW0oIl9fc2FrIiksITB9Y2F0Y2godCl7cmV0dXJuITF9fSgpKXtpZigiTm9kZSI9PWhyKCkpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIiwiVGhlIFNlc3Npb25TdG9yYWdlIGNvbXBhdGliaWxpdHkgbGlicmFyeSB3YXMgbm90IGZvdW5kLiIpO3Rocm93IG5ldyBJKCJ3ZWItc3RvcmFnZS11bnN1cHBvcnRlZCIpfXRoaXMuYT1MdSgpfHxYbC5JTlRFUk5BTC5ub2RlLnNlc3Npb25TdG9yYWdlLHRoaXMudHlwZT0ic2Vzc2lvblN0b3JhZ2UifWZ1bmN0aW9uIEx1KCl7dHJ5e3ZhciB0PWwuc2Vzc2lvblN0b3JhZ2UsZT1OcigpO3JldHVybiB0JiYodC5zZXRJdGVtKGUsIjEiKSx0LnJlbW92ZUl0ZW0oZSkpLHR9Y2F0Y2godCl7cmV0dXJuIG51bGx9fWZ1bmN0aW9uIE11KCl7dmFyIHQ9e307dC5Ccm93c2VyPWp1LHQuTm9kZT1xdSx0LlJlYWN0TmF0aXZlPVZ1LHQuV29ya2VyPUJ1LHRoaXMuYT10W2hyKCldfWh1LnByb3RvdHlwZS5jPWZ1bmN0aW9uKG4pe3ZhciBlLHI9bi5kYXRhLmV2ZW50VHlwZSxpPW4uZGF0YS5ldmVudElkLHQ9dGhpcy5hW3JdO3QmJjA8dC5sZW5ndGgmJihuLnBvcnRzWzBdLnBvc3RNZXNzYWdlKHtzdGF0dXM6ImFjayIsZXZlbnRJZDppLGV2ZW50VHlwZTpyLHJlc3BvbnNlOm51bGx9KSxlPVtdLGoodCxmdW5jdGlvbih0KXtlLnB1c2goYmUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHQobi5vcmlnaW4sbi5kYXRhLmRhdGEpfSkpfSksSWUoZSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT1bXTtqKHQsZnVuY3Rpb24odCl7ZS5wdXNoKHtmdWxmaWxsZWQ6dC5QYix2YWx1ZTp0LnZhbHVlLHJlYXNvbjp0LnJlYXNvbj90LnJlYXNvbi5tZXNzYWdlOnZvaWQgMH0pfSksaihlLGZ1bmN0aW9uKHQpe2Zvcih2YXIgZSBpbiB0KXZvaWQgMD09PXRbZV0mJmRlbGV0ZSB0W2VdfSksbi5wb3J0c1swXS5wb3N0TWVzc2FnZSh7c3RhdHVzOiJkb25lIixldmVudElkOmksZXZlbnRUeXBlOnIscmVzcG9uc2U6ZX0pfSkpfSxkdS5wcm90b3R5cGUucG9zdE1lc3NhZ2U9ZnVuY3Rpb24odCxlKXt0aGlzLmEucG9zdE1lc3NhZ2UodCxlKX0sdnUucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7Zm9yKDswPHRoaXMuYS5sZW5ndGg7KXl1KHRoaXMsdGhpcy5hWzBdKTt0aGlzLmI9ITB9LCh0PW11LnByb3RvdHlwZSkuc2V0PWZ1bmN0aW9uKHIsaSl7dmFyIG89dGhpcyxzPSExO3JldHVybiBfdSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVybiBTdSgodD1UdShFdSh0LCEwKSkpLmdldChyKSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBfdShvLGZ1bmN0aW9uKHQpe2lmKHQ9VHUoRXUodCwhMCkpLG4pcmV0dXJuIG4udmFsdWU9aSxTdSh0LnB1dChuKSk7by5iKysscz0hMDt2YXIgZT17fTtyZXR1cm4gZS5mYmFzZV9rZXk9cixlLnZhbHVlPWksU3UodC5hZGQoZSkpfSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG8uY1tyXT1pLEN1KG8scil9KS5vYShmdW5jdGlvbigpe3MmJm8uYi0tfSl9LHQuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBfdSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVybiBTdShUdShFdSh0LCExKSkuZ2V0KGUpKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQmJnQudmFsdWV9KX0sdC5VPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXMscj0hMTtyZXR1cm4gX3UodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gcj0hMCxuLmIrKyxTdShUdShFdSh0LCEwKSkuZGVsZXRlKGUpKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZGVsZXRlIG4uY1tlXSxDdShuLGUpfSkub2EoZnVuY3Rpb24oKXtyJiZuLmItLX0pfSx0LmNhPWZ1bmN0aW9uKHQpe3ZhciBuOzA9PXRoaXMuYS5sZW5ndGgmJihBdShuPXRoaXMpLGZ1bmN0aW9uIGUoKXtuLmY9c2V0VGltZW91dChmdW5jdGlvbigpe24ubD1OdShuKS50aGVuKGZ1bmN0aW9uKGUpezA8ZS5sZW5ndGgmJmoobi5hLGZ1bmN0aW9uKHQpe3QoZSl9KX0pLnRoZW4oZnVuY3Rpb24oKXtlKCl9KS5vKGZ1bmN0aW9uKHQpeyJTVE9QX0VWRU5UIiE9dC5tZXNzYWdlJiZlKCl9KX0sODAwKX0oKSksdGhpcy5hLnB1c2godCl9LHQuaWE9ZnVuY3Rpb24oZSl7SCh0aGlzLmEsZnVuY3Rpb24odCl7cmV0dXJuIHQ9PWV9KSwwPT10aGlzLmEubGVuZ3RoJiZBdSh0aGlzKX0sKHQ9a3UucHJvdG90eXBlKS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYi50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LmdldChlKX0pfSx0LnNldD1mdW5jdGlvbihlLG4pe3JldHVybiB0aGlzLmIudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5zZXQoZSxuKX0pfSx0LlU9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYi50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LlUoZSl9KX0sdC5jYT1mdW5jdGlvbih0KXt0aGlzLmEucHVzaCh0KX0sdC5pYT1mdW5jdGlvbihlKXtIKHRoaXMuYSxmdW5jdGlvbih0KXtyZXR1cm4gdD09ZX0pfSwodD1SdS5wcm90b3R5cGUpLmdldD1mdW5jdGlvbih0KXtyZXR1cm4gYmUodGhpcy5hW3RdKX0sdC5zZXQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5hW3RdPWUsYmUoKX0sdC5VPWZ1bmN0aW9uKHQpe3JldHVybiBkZWxldGUgdGhpcy5hW3RdLGJlKCl9LHQuY2E9ZnVuY3Rpb24oKXt9LHQuaWE9ZnVuY3Rpb24oKXt9LCh0PVB1LnByb3RvdHlwZSkuZ2V0PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIGJlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBDcihlLmEuZ2V0SXRlbSh0KSl9KX0sdC5zZXQ9ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO3JldHVybiBiZSgpLnRoZW4oZnVuY3Rpb24oKXt2YXIgdD1FcihuKTtudWxsPT09dD9yLlUoZSk6ci5hLnNldEl0ZW0oZSx0KX0pfSx0LlU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gYmUoKS50aGVuKGZ1bmN0aW9uKCl7ZS5hLnJlbW92ZUl0ZW0odCl9KX0sdC5jYT1mdW5jdGlvbih0KXtsLndpbmRvdyYmJGUobC53aW5kb3csInN0b3JhZ2UiLHQpfSx0LmlhPWZ1bmN0aW9uKHQpe2wud2luZG93JiZlbihsLndpbmRvdywic3RvcmFnZSIsdCl9LCh0PUR1LnByb3RvdHlwZSkuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIGJlKG51bGwpfSx0LnNldD1mdW5jdGlvbigpe3JldHVybiBiZSgpfSx0LlU9ZnVuY3Rpb24oKXtyZXR1cm4gYmUoKX0sdC5jYT1mdW5jdGlvbigpe30sdC5pYT1mdW5jdGlvbigpe30sKHQ9eHUucHJvdG90eXBlKS5nZXQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gYmUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIENyKGUuYS5nZXRJdGVtKHQpKX0pfSx0LnNldD1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXM7cmV0dXJuIGJlKCkudGhlbihmdW5jdGlvbigpe3ZhciB0PUVyKG4pO251bGw9PT10P3IuVShlKTpyLmEuc2V0SXRlbShlLHQpfSl9LHQuVT1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3JldHVybiBiZSgpLnRoZW4oZnVuY3Rpb24oKXtlLmEucmVtb3ZlSXRlbSh0KX0pfSx0LmNhPWZ1bmN0aW9uKCl7fSx0LmlhPWZ1bmN0aW9uKCl7fTt2YXIgRnUsVXUsanU9e0Y6UHUsYmI6eHV9LHF1PXtGOlB1LGJiOnh1fSxWdT17RjpjdSxiYjpEdX0sQnU9e0Y6UHUsYmI6RHV9LEt1PXtyZDoibG9jYWwiLE5PTkU6Im5vbmUiLHRkOiJzZXNzaW9uIn07ZnVuY3Rpb24gV3UoKXt2YXIgdD0hKEFyKHlyKCkpfHwhdXIoKSksZT1UcigpLG49YnIoKTt0aGlzLm09dCx0aGlzLmg9ZSx0aGlzLmw9bix0aGlzLmE9e30sdD1GdT1GdXx8bmV3IE11O3RyeXt0aGlzLmc9ISRuKCkmJnhyKCl8fCFsLmluZGV4ZWREQj9uZXcgdC5hLkY6bmV3IGt1KG5ldyhjcigpP1J1OnQuYS5GKSl9Y2F0Y2godCl7dGhpcy5nPW5ldyBSdSx0aGlzLmg9ITB9dHJ5e3RoaXMuaT1uZXcgdC5hLmJifWNhdGNoKHQpe3RoaXMuaT1uZXcgUnV9dGhpcy52PW5ldyBSdSx0aGlzLmY9bSh0aGlzLlliLHRoaXMpLHRoaXMuYj17fX1mdW5jdGlvbiBIdSgpe3JldHVybiBVdT1VdXx8bmV3IFd1fWZ1bmN0aW9uIEd1KHQsZSl7c3dpdGNoKGUpe2Nhc2Uic2Vzc2lvbiI6cmV0dXJuIHQuaTtjYXNlIm5vbmUiOnJldHVybiB0LnY7ZGVmYXVsdDpyZXR1cm4gdC5nfX1mdW5jdGlvbiB6dSh0LGUpe3JldHVybiJmaXJlYmFzZToiK3QubmFtZSsoZT8iOiIrZToiIil9ZnVuY3Rpb24gUXUodCxlLG4pe3JldHVybiBuPXp1KGUsbiksImxvY2FsIj09ZS5GJiYodC5iW25dPW51bGwpLEd1KHQsZS5GKS5VKG4pfWZ1bmN0aW9uIFl1KHQpe3QuYyYmKGNsZWFySW50ZXJ2YWwodC5jKSx0LmM9bnVsbCl9ZnVuY3Rpb24gWHUodCl7dGhpcy5hPXQsdGhpcy5iPUh1KCl9KHQ9V3UucHJvdG90eXBlKS5nZXQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gR3UodGhpcyx0LkYpLmdldCh6dSh0LGUpKX0sdC5zZXQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXp1KGUsbiksaT10aGlzLG89R3UodGhpcyxlLkYpO3JldHVybiBvLnNldChyLHQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gby5nZXQocil9KS50aGVuKGZ1bmN0aW9uKHQpeyJsb2NhbCI9PWUuRiYmKGkuYltyXT10KX0pfSx0LmFkZExpc3RlbmVyPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcjt0PXp1KHQsZSksdGhpcy5sJiYodGhpcy5iW3RdPWwubG9jYWxTdG9yYWdlLmdldEl0ZW0odCkpLHV0KHRoaXMuYSkmJihHdSh0aGlzLCJsb2NhbCIpLmNhKHRoaXMuZiksdGhpcy5ofHwoJG4oKXx8IXhyKCkpJiZsLmluZGV4ZWREQnx8IXRoaXMubHx8KFl1KHI9dGhpcyksci5jPXNldEludGVydmFsKGZ1bmN0aW9uKCl7Zm9yKHZhciB0IGluIHIuYSl7dmFyIGU9bC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0KSxuPXIuYlt0XTtlIT1uJiYoci5iW3RdPWUsZT1uZXcgVmUoe3R5cGU6InN0b3JhZ2UiLGtleTp0LHRhcmdldDp3aW5kb3csb2xkVmFsdWU6bixuZXdWYWx1ZTplLGE6ITB9KSxyLlliKGUpKX19LDFlMykpKSx0aGlzLmFbdF18fCh0aGlzLmFbdF09W10pLHRoaXMuYVt0XS5wdXNoKG4pfSx0LnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKHQsZSxuKXt0PXp1KHQsZSksdGhpcy5hW3RdJiYoSCh0aGlzLmFbdF0sZnVuY3Rpb24odCl7cmV0dXJuIHQ9PW59KSwwPT10aGlzLmFbdF0ubGVuZ3RoJiZkZWxldGUgdGhpcy5hW3RdKSx1dCh0aGlzLmEpJiYoR3UodGhpcywibG9jYWwiKS5pYSh0aGlzLmYpLFl1KHRoaXMpKX0sdC5ZYj1mdW5jdGlvbih0KXtpZih0JiZ0Lmcpe3ZhciBlPXQuYS5rZXk7aWYobnVsbD09ZSlmb3IodmFyIG4gaW4gdGhpcy5hKXt2YXIgcj10aGlzLmJbbl07dm9pZCAwPT09ciYmKHI9bnVsbCk7dmFyIGk9bC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShuKTtpIT09ciYmKHRoaXMuYltuXT1pLHRoaXMubWIobikpfWVsc2UgaWYoMD09ZS5pbmRleE9mKCJmaXJlYmFzZToiKSYmdGhpcy5hW2VdKXtpZih2b2lkIDAhPT10LmEuYT9HdSh0aGlzLCJsb2NhbCIpLmlhKHRoaXMuZik6WXUodGhpcyksdGhpcy5tKWlmKG49bC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKSwocj10LmEubmV3VmFsdWUpIT09biludWxsIT09cj9sLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGUscik6bC5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShlKTtlbHNlIGlmKHRoaXMuYltlXT09PXImJnZvaWQgMD09PXQuYS5hKXJldHVybjt2YXIgbz10aGlzLG49ZnVuY3Rpb24oKXt2b2lkIDA9PT10LmEuYSYmby5iW2VdPT09bC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKXx8KG8uYltlXT1sLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpLG8ubWIoZSkpfTtCdCYmJHQmJjEwPT0kdCYmbC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKSE9PXQuYS5uZXdWYWx1ZSYmdC5hLm5ld1ZhbHVlIT09dC5hLm9sZFZhbHVlP3NldFRpbWVvdXQobiwxMCk6bigpfX1lbHNlIGoodCxtKHRoaXMubWIsdGhpcykpfSx0Lm1iPWZ1bmN0aW9uKHQpe3RoaXMuYVt0XSYmaih0aGlzLmFbdF0sZnVuY3Rpb24odCl7dCgpfSl9O3ZhciBKdSwkdT17bmFtZToiYXV0aEV2ZW50IixGOiJsb2NhbCJ9O2Z1bmN0aW9uIFp1KCl7dGhpcy5hPUh1KCl9ZnVuY3Rpb24gdGModCxlKXt0aGlzLmI9ZWMsdGhpcy5mPWwuVWludDhBcnJheT9uZXcgVWludDhBcnJheSh0aGlzLmIpOkFycmF5KHRoaXMuYiksdGhpcy5nPXRoaXMuYz0wLHRoaXMuYT1bXSx0aGlzLmk9dCx0aGlzLmg9ZSx0aGlzLmw9bC5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCksdm9pZCAwPT09SnUmJihKdT1sLkludDMyQXJyYXk/bmV3IEludDMyQXJyYXkodWMpOnVjKSx0aGlzLnJlc2V0KCl9dyh0YyxmdW5jdGlvbigpe3RoaXMuYj0tMX0pO2Zvcih2YXIgZWM9NjQsbmM9ZWMtMSxyYz1bXSxpYz0wO2ljPG5jO2ljKyspcmNbaWNdPTA7dmFyIG9jPUcoMTI4LHJjKTtmdW5jdGlvbiBzYyh0KXtmb3IodmFyIGU9dC5mLG49dC5sLHI9MCxpPTA7aTxlLmxlbmd0aDspbltyKytdPWVbaV08PDI0fGVbaSsxXTw8MTZ8ZVtpKzJdPDw4fGVbaSszXSxpPTQqcjtmb3IoZT0xNjtlPDY0O2UrKyl7dmFyIGk9MHxuW2UtMTVdLHI9MHxuW2UtMl0sbz0oMHxuW2UtMTZdKSsoKGk+Pj43fGk8PDI1KV4oaT4+PjE4fGk8PDE0KV5pPj4+Myl8MCxzPSgwfG5bZS03XSkrKChyPj4+MTd8cjw8MTUpXihyPj4+MTl8cjw8MTMpXnI+Pj4xMCl8MDtuW2VdPW8rc3wwfXI9MHx0LmFbMF0saT0wfHQuYVsxXTt2YXIgYT0wfHQuYVsyXSx1PTB8dC5hWzNdLGM9MHx0LmFbNF0saD0wfHQuYVs1XSxsPTB8dC5hWzZdO2ZvcihvPTB8dC5hWzddLGU9MDtlPDY0O2UrKyl7dmFyIGY9KChyPj4+MnxyPDwzMCleKHI+Pj4xM3xyPDwxOSleKHI+Pj4yMnxyPDwxMCkpKyhyJmleciZhXmkmYSl8MDtzPShvPW8rKChjPj4+NnxjPDwyNileKGM+Pj4xMXxjPDwyMSleKGM+Pj4yNXxjPDw3KSl8MCkrKChzPShzPWMmaF5+YyZsKSsoMHxKdVtlXSl8MCkrKDB8bltlXSl8MCl8MCxvPWwsbD1oLGg9YyxjPXUrc3wwLHU9YSxhPWksaT1yLHI9cytmfDB9dC5hWzBdPXQuYVswXStyfDAsdC5hWzFdPXQuYVsxXStpfDAsdC5hWzJdPXQuYVsyXSthfDAsdC5hWzNdPXQuYVszXSt1fDAsdC5hWzRdPXQuYVs0XStjfDAsdC5hWzVdPXQuYVs1XStofDAsdC5hWzZdPXQuYVs2XStsfDAsdC5hWzddPXQuYVs3XStvfDB9ZnVuY3Rpb24gYWModCxlLG4pe3ZvaWQgMD09PW4mJihuPWUubGVuZ3RoKTt2YXIgcj0wLGk9dC5jO2lmKCJzdHJpbmciPT10eXBlb2YgZSlmb3IoO3I8bjspdC5mW2krK109ZS5jaGFyQ29kZUF0KHIrKyksaT09dC5iJiYoc2ModCksaT0wKTtlbHNle2lmKCFkKGUpKXRocm93IEVycm9yKCJtZXNzYWdlIG11c3QgYmUgc3RyaW5nIG9yIGFycmF5Iik7Zm9yKDtyPG47KXt2YXIgbz1lW3IrK107aWYoISgibnVtYmVyIj09dHlwZW9mIG8mJjA8PW8mJm88PTI1NSYmbz09KDB8bykpKXRocm93IEVycm9yKCJtZXNzYWdlIG11c3QgYmUgYSBieXRlIGFycmF5Iik7dC5mW2krK109byxpPT10LmImJihzYyh0KSxpPTApfX10LmM9aSx0LmcrPW59dGMucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5nPXRoaXMuYz0wLHRoaXMuYT1sLkludDMyQXJyYXk/bmV3IEludDMyQXJyYXkodGhpcy5oKTp6KHRoaXMuaCl9O3ZhciB1Yz1bMTExNjM1MjQwOCwxODk5NDQ3NDQxLDMwNDkzMjM0NzEsMzkyMTAwOTU3Myw5NjE5ODcxNjMsMTUwODk3MDk5MywyNDUzNjM1NzQ4LDI4NzA3NjMyMjEsMzYyNDM4MTA4MCwzMTA1OTg0MDEsNjA3MjI1Mjc4LDE0MjY4ODE5ODcsMTkyNTA3ODM4OCwyMTYyMDc4MjA2LDI2MTQ4ODgxMDMsMzI0ODIyMjU4MCwzODM1MzkwNDAxLDQwMjIyMjQ3NzQsMjY0MzQ3MDc4LDYwNDgwNzYyOCw3NzAyNTU5ODMsMTI0OTE1MDEyMiwxNTU1MDgxNjkyLDE5OTYwNjQ5ODYsMjU1NDIyMDg4MiwyODIxODM0MzQ5LDI5NTI5OTY4MDgsMzIxMDMxMzY3MSwzMzM2NTcxODkxLDM1ODQ1Mjg3MTEsMTEzOTI2OTkzLDMzODI0MTg5NSw2NjYzMDcyMDUsNzczNTI5OTEyLDEyOTQ3NTczNzIsMTM5NjE4MjI5MSwxNjk1MTgzNzAwLDE5ODY2NjEwNTEsMjE3NzAyNjM1MCwyNDU2OTU2MDM3LDI3MzA0ODU5MjEsMjgyMDMwMjQxMSwzMjU5NzMwODAwLDMzNDU3NjQ3NzEsMzUxNjA2NTgxNywzNjAwMzUyODA0LDQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XTtmdW5jdGlvbiBjYygpe3RjLmNhbGwodGhpcyw4LGhjKX13KGNjLHRjKTt2YXIgaGM9WzE3NzkwMzM3MDMsMzE0NDEzNDI3NywxMDEzOTA0MjQyLDI3NzM0ODA3NjIsMTM1OTg5MzExOSwyNjAwODIyOTI0LDUyODczNDYzNSwxNTQxNDU5MjI1XTtmdW5jdGlvbiBsYyh0LGUsbixyLGksbyl7dGhpcy52PXQsdGhpcy5pPWUsdGhpcy5sPW4sdGhpcy5tPXJ8fG51bGwsdGhpcy51PWl8fG51bGwsdGhpcy5zPW8sdGhpcy5oPWUrIjoiK24sdGhpcy5DPW5ldyBadSx0aGlzLmc9bmV3IFh1KHRoaXMuaCksdGhpcy5mPW51bGwsdGhpcy5iPVtdLHRoaXMuYT10aGlzLmM9bnVsbH1mdW5jdGlvbiBmYyh0KXtyZXR1cm4gbmV3IEkoImludmFsaWQtY29yZG92YS1jb25maWd1cmF0aW9uIix0KX1mdW5jdGlvbiBwYyh0KXt2YXIgZT1uZXcgY2M7YWMoZSx0KSx0PVtdO3ZhciBuPTgqZS5nO2UuYzw1Nj9hYyhlLG9jLDU2LWUuYyk6YWMoZSxvYyxlLmItKGUuYy01NikpO2Zvcih2YXIgcj02Mzs1Njw9cjtyLS0pZS5mW3JdPTI1NSZuLG4vPTI1Njtmb3Ioc2MoZSkscj1uPTA7cjxlLmk7cisrKWZvcih2YXIgaT0yNDswPD1pO2ktPTgpdFtuKytdPWUuYVtyXT4+aSYyNTU7cmV0dXJuIFYodCxmdW5jdGlvbih0KXtyZXR1cm4gMTwodD10LnRvU3RyaW5nKDE2KSkubGVuZ3RoP3Q6IjAiK3R9KS5qb2luKCIiKX1mdW5jdGlvbiBkYyh0LGUpe2Zvcih2YXIgbj0wO248dC5iLmxlbmd0aDtuKyspdHJ5e3QuYltuXShlKX1jYXRjaCh0KXt9fWZ1bmN0aW9uIHZjKGEpe3JldHVybiBhLmZ8fChhLmY9YS5tYSgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKG4pe2Z1bmN0aW9uIGUocil7dD0hMCxzJiZzLmNhbmNlbCgpLGdjKGkpLnRoZW4oZnVuY3Rpb24odCl7dmFyIGUsbj1vO3QmJnImJnIudXJsJiYoZT1udWxsLG49KGU9LTEhPShuPVFpKHIudXJsKSkuaW5kZXhPZigiL19fL2F1dGgvY2FsbGJhY2siKT8oZT0ib2JqZWN0Ij09dHlwZW9mKGU9Q3IoQW4oZT1rbihuKSwiZmlyZWJhc2VFcnJvciIpfHxudWxsKSk/VChlKTpudWxsKT9uZXcgUm8odC5jLHQuYixudWxsLG51bGwsZSxudWxsLHQuVCgpKTpuZXcgUm8odC5jLHQuYixuLHQuZixudWxsLG51bGwsdC5UKCkpOmUpfHxvKSxkYyhpLG4pfSl9dmFyIGksbyx0LHMscjthLkVhKGZ1bmN0aW9uIHQoZSl7cmV0dXJuIG4oZSksYS5TYSh0KSwhMX0pLGk9YSxvPW5ldyBSbygidW5rbm93biIsbnVsbCxudWxsLG51bGwsbmV3IEkoIm5vLWF1dGgtZXZlbnQiKSksdD0hMSxzPWduKDUwMCkudGhlbihmdW5jdGlvbigpe3JldHVybiBnYyhpKS50aGVuKGZ1bmN0aW9uKCl7dHx8ZGMoaSxvKX0pfSkscj1sLmhhbmRsZU9wZW5VUkwsbC5oYW5kbGVPcGVuVVJMPWZ1bmN0aW9uKHQpe2lmKDA9PXQudG9Mb3dlckNhc2UoKS5pbmRleE9mKG1yKCJCdWlsZEluZm8ucGFja2FnZU5hbWUiLGwpLnRvTG93ZXJDYXNlKCkrIjovLyIpJiZlKHt1cmw6dH0pLCJmdW5jdGlvbiI9PXR5cGVvZiByKXRyeXtyKHQpfWNhdGNoKHQpe2NvbnNvbGUuZXJyb3IodCl9fSx4bz14b3x8bmV3IE9vLGZ1bmN0aW9uKHQpe3ZhciBuPXhvO24uYS5wdXNoKHQpLG4uYnx8KG4uYj1mdW5jdGlvbih0KXtmb3IodmFyIGU9MDtlPG4uYS5sZW5ndGg7ZSsrKW4uYVtlXSh0KX0sImZ1bmN0aW9uIj09dHlwZW9mKHQ9bXIoInVuaXZlcnNhbExpbmtzLnN1YnNjcmliZSIsbCkpJiZ0KG51bGwsbi5iKSl9KGUpfSl9KSksYS5mfWZ1bmN0aW9uIGdjKGUpe3ZhciB0LG49bnVsbDtyZXR1cm4odD1lLmcpLmIuZ2V0KCR1LHQuYSkudGhlbihQbykudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbj10LFF1KCh0PWUuZykuYiwkdSx0LmEpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBufSl9ZnVuY3Rpb24geWModCl7dGhpcy5hPXQsdGhpcy5iPUh1KCl9KHQ9bGMucHJvdG90eXBlKS5tYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLklhfHwodGhpcy5JYT0oYXIodm9pZCAwKT9zcigpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKHQsZSl7dmFyIG49bC5kb2N1bWVudCxyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKEVycm9yKCJDb3Jkb3ZhIGZyYW1ld29yayBpcyBub3QgcmVhZHkuIikpfSwxZTMpO24uYWRkRXZlbnRMaXN0ZW5lcigiZGV2aWNlcmVhZHkiLGZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIpLHQoKX0sITEpfSl9KTp3ZShFcnJvcigiQ29yZG92YSBtdXN0IHJ1biBpbiBhbiBBbmRyb2lkIG9yIGlPUyBmaWxlIHNjaGVtZS4iKSkpLnRoZW4oZnVuY3Rpb24oKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgbXIoInVuaXZlcnNhbExpbmtzLnN1YnNjcmliZSIsbCkpdGhyb3cgZmMoImNvcmRvdmEtdW5pdmVyc2FsLWxpbmtzLXBsdWdpbi1maXggaXMgbm90IGluc3RhbGxlZCIpO2lmKHZvaWQgMD09PW1yKCJCdWlsZEluZm8ucGFja2FnZU5hbWUiLGwpKXRocm93IGZjKCJjb3Jkb3ZhLXBsdWdpbi1idWlsZGluZm8gaXMgbm90IGluc3RhbGxlZCIpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBtcigiY29yZG92YS5wbHVnaW5zLmJyb3dzZXJ0YWIub3BlblVybCIsbCkpdGhyb3cgZmMoImNvcmRvdmEtcGx1Z2luLWJyb3dzZXJ0YWIgaXMgbm90IGluc3RhbGxlZCIpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBtcigiY29yZG92YS5JbkFwcEJyb3dzZXIub3BlbiIsbCkpdGhyb3cgZmMoImNvcmRvdmEtcGx1Z2luLWluYXBwYnJvd3NlciBpcyBub3QgaW5zdGFsbGVkIil9LGZ1bmN0aW9uKCl7dGhyb3cgbmV3IEkoImNvcmRvdmEtbm90LXJlYWR5Iil9KSl9LHQuT2I9ZnVuY3Rpb24odCxlKXtyZXR1cm4gZShuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIpKSxiZSgpfSx0Lk1iPWZ1bmN0aW9uKCl7cmV0dXJuIHdlKG5ldyBJKCJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IikpfSx0LiRiPWZ1bmN0aW9uKCl7cmV0dXJuITF9LHQuWGI9ZnVuY3Rpb24oKXtyZXR1cm4hMH0sdC5UYj1mdW5jdGlvbigpe3JldHVybiEwfSx0Lk5iPWZ1bmN0aW9uKHQsZSxuLHIpe2lmKHRoaXMuYylyZXR1cm4gd2UobmV3IEkoInJlZGlyZWN0LW9wZXJhdGlvbi1wZW5kaW5nIikpO3ZhciBpPXRoaXMsbz1sLmRvY3VtZW50LHM9bnVsbCxhPW51bGwsdT1udWxsLGM9bnVsbDtyZXR1cm4gdGhpcy5jPWJlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBrbyhlKSx2YyhpKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24obix0LGUscixpKXt2YXIgbz1mdW5jdGlvbigpe2Zvcih2YXIgdD0yMCxlPVtdOzA8dDspZS5wdXNoKCIxMjM0NTY3ODkwYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIuY2hhckF0KE1hdGguZmxvb3IoNjIqTWF0aC5yYW5kb20oKSkpKSx0LS07cmV0dXJuIGUuam9pbigiIil9KCkscz1uZXcgUm8odCxyLG51bGwsbyxuZXcgSSgibm8tYXV0aC1ldmVudCIpLG51bGwsaSksYT1tcigiQnVpbGRJbmZvLnBhY2thZ2VOYW1lIixsKTtpZigic3RyaW5nIiE9dHlwZW9mIGEpdGhyb3cgbmV3IEkoImludmFsaWQtY29yZG92YS1jb25maWd1cmF0aW9uIik7dmFyIHU9bXIoIkJ1aWxkSW5mby5kaXNwbGF5TmFtZSIsbCksYz17fTtpZih5cigpLnRvTG93ZXJDYXNlKCkubWF0Y2goL2lwaG9uZXxpcGFkfGlwb2QvKSljLmliaT1hO2Vsc2V7aWYoIXlyKCkudG9Mb3dlckNhc2UoKS5tYXRjaCgvYW5kcm9pZC8pKXJldHVybiB3ZShuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIpKTtjLmFwbj1hfXUmJihjLmFwcERpc3BsYXlOYW1lPXUpLG89cGMobyksYy5zZXNzaW9uSWQ9bzt2YXIgaD11dShuLnYsbi5pLG4ubCx0LGUsbnVsbCxyLG4ubSxjLG4udSxpLG4ucyk7cmV0dXJuIG4ubWEoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIHQ9bi5oO3JldHVybiBuLkMuYS5zZXQoJHUscy53KCksdCl9KS50aGVuKGZ1bmN0aW9uKCl7dmFyIHQ9bXIoImNvcmRvdmEucGx1Z2lucy5icm93c2VydGFiLmlzQXZhaWxhYmxlIixsKTtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgSSgiaW52YWxpZC1jb3Jkb3ZhLWNvbmZpZ3VyYXRpb24iKTt2YXIgZT1udWxsO3QoZnVuY3Rpb24odCl7aWYodCl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mKGU9bXIoImNvcmRvdmEucGx1Z2lucy5icm93c2VydGFiLm9wZW5VcmwiLGwpKSl0aHJvdyBuZXcgSSgiaW52YWxpZC1jb3Jkb3ZhLWNvbmZpZ3VyYXRpb24iKTtlKGgpfWVsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mKGU9bXIoImNvcmRvdmEuSW5BcHBCcm93c2VyLm9wZW4iLGwpKSl0aHJvdyBuZXcgSSgiaW52YWxpZC1jb3Jkb3ZhLWNvbmZpZ3VyYXRpb24iKTt0PXlyKCksbi5hPWUoaCx0Lm1hdGNoKC8oaVBhZHxpUGhvbmV8aVBvZCkuKk9TIDdfXGQvaSl8fHQubWF0Y2goLyhpUGFkfGlQaG9uZXxpUG9kKS4qT1MgOF9cZC9pKT8iX2JsYW5rIjoiX3N5c3RlbSIsImxvY2F0aW9uPXllcyIpfX0pfSl9KGksdCxlLG4scil9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbihlLHQpe2E9ZnVuY3Rpb24oKXt2YXIgdD1tcigiY29yZG92YS5wbHVnaW5zLmJyb3dzZXJ0YWIuY2xvc2UiLGwpO3JldHVybiBlKCksImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQoKSxpLmEmJiJmdW5jdGlvbiI9PXR5cGVvZiBpLmEuY2xvc2UmJihpLmEuY2xvc2UoKSxpLmE9bnVsbCksITF9LGkuRWEoYSksdT1mdW5jdGlvbigpe3M9c3x8Z24oMmUzKS50aGVuKGZ1bmN0aW9uKCl7dChuZXcgSSgicmVkaXJlY3QtY2FuY2VsbGVkLWJ5LXVzZXIiKSl9KX0sYz1mdW5jdGlvbigpe1ByKCkmJnUoKX0sby5hZGRFdmVudExpc3RlbmVyKCJyZXN1bWUiLHUsITEpLHlyKCkudG9Mb3dlckNhc2UoKS5tYXRjaCgvYW5kcm9pZC8pfHxvLmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLGMsITEpfSkubyhmdW5jdGlvbih0KXtyZXR1cm4gZ2MoaSkudGhlbihmdW5jdGlvbigpe3Rocm93IHR9KX0pfSkub2EoZnVuY3Rpb24oKXt1JiZvLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc3VtZSIsdSwhMSksYyYmby5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixjLCExKSxzJiZzLmNhbmNlbCgpLGEmJmkuU2EoYSksaS5jPW51bGx9KX0sdC5FYT1mdW5jdGlvbihlKXt0aGlzLmIucHVzaChlKSx2Yyh0aGlzKS5vKGZ1bmN0aW9uKHQpeyJhdXRoL2ludmFsaWQtY29yZG92YS1jb25maWd1cmF0aW9uIj09PXQuY29kZSYmKHQ9bmV3IFJvKCJ1bmtub3duIixudWxsLG51bGwsbnVsbCxuZXcgSSgibm8tYXV0aC1ldmVudCIpKSxlKHQpKX0pfSx0LlNhPWZ1bmN0aW9uKGUpe0godGhpcy5iLGZ1bmN0aW9uKHQpe3JldHVybiB0PT1lfSl9O3ZhciBtYz17bmFtZToicGVuZGluZ1JlZGlyZWN0IixGOiJzZXNzaW9uIn07ZnVuY3Rpb24gYmModCl7cmV0dXJuIFF1KHQuYixtYyx0LmEpfWZ1bmN0aW9uIHdjKHQsZSxuLHIpe3RoaXMuaT17fSx0aGlzLnU9MCx0aGlzLkQ9dCx0aGlzLnY9ZSx0aGlzLm09bix0aGlzLko9cix0aGlzLmg9W10sdGhpcy5mPSExLHRoaXMubD1tKHRoaXMucyx0aGlzKSx0aGlzLmI9bmV3IExjLHRoaXMuQz1uZXcgcWMsdGhpcy5nPW5ldyB5YyhEYyh0aGlzLnYsdGhpcy5tKSksdGhpcy5jPXt9LHRoaXMuYy51bmtub3duPXRoaXMuYix0aGlzLmMuc2lnbkluVmlhUmVkaXJlY3Q9dGhpcy5iLHRoaXMuYy5saW5rVmlhUmVkaXJlY3Q9dGhpcy5iLHRoaXMuYy5yZWF1dGhWaWFSZWRpcmVjdD10aGlzLmIsdGhpcy5jLnNpZ25JblZpYVBvcHVwPXRoaXMuQyx0aGlzLmMubGlua1ZpYVBvcHVwPXRoaXMuQyx0aGlzLmMucmVhdXRoVmlhUG9wdXA9dGhpcy5DLHRoaXMuYT1fYyh0aGlzLkQsdGhpcy52LHRoaXMubSxFLHRoaXMuSil9ZnVuY3Rpb24gX2ModCxlLG4scixpKXt2YXIgbz1YbC5TREtfVkVSU0lPTnx8bnVsbDtyZXR1cm4gbmV3KGFyKCk/bGM6aXUpKHQsZSxuLG8scixpKX1mdW5jdGlvbiBJYyhlKXtlLmZ8fChlLmY9ITAsZS5hLkVhKGUubCkpO3ZhciBuPWUuYTtyZXR1cm4gZS5hLm1hKCkubyhmdW5jdGlvbih0KXt0aHJvdyBlLmE9PW4mJmUucmVzZXQoKSx0fSl9ZnVuY3Rpb24gVGMobil7bi5hLlhiKCkmJkljKG4pLm8oZnVuY3Rpb24odCl7dmFyIGU9bmV3IFJvKCJ1bmtub3duIixudWxsLG51bGwsbnVsbCxuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIpKTtrYyh0KSYmbi5zKGUpfSksbi5hLlRiKCl8fE1jKG4uYil9ZnVuY3Rpb24gRWMobix0KXtLKG4uaCx0KXx8bi5oLnB1c2godCksbi5mfHwodD1uLmcpLmIuZ2V0KG1jLHQuYSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4icGVuZGluZyI9PXR9KS50aGVuKGZ1bmN0aW9uKHQpe3Q/YmMobi5nKS50aGVuKGZ1bmN0aW9uKCl7SWMobikubyhmdW5jdGlvbih0KXt2YXIgZT1uZXcgUm8oInVua25vd24iLG51bGwsbnVsbCxudWxsLG5ldyBJKCJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IikpO2tjKHQpJiZuLnMoZSl9KX0pOlRjKG4pfSkubyhmdW5jdGlvbigpe1RjKG4pfSl9ZnVuY3Rpb24gU2ModCxlKXtIKHQuaCxmdW5jdGlvbih0KXtyZXR1cm4gdD09ZX0pfXdjLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuZj0hMSx0aGlzLmEuU2EodGhpcy5sKSx0aGlzLmE9X2ModGhpcy5ELHRoaXMudix0aGlzLm0sbnVsbCx0aGlzLkopLHRoaXMuaT17fX0sd2MucHJvdG90eXBlLnM9ZnVuY3Rpb24odCl7aWYoIXQpdGhyb3cgbmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpO2lmKDZlNTw9RGF0ZS5ub3coKS10aGlzLnUmJih0aGlzLmk9e30sdGhpcy51PTApLHQmJnQuZ2V0VWlkKCkmJnRoaXMuaS5oYXNPd25Qcm9wZXJ0eSh0LmdldFVpZCgpKSlyZXR1cm4hMTtmb3IodmFyIGU9ITEsbj0wO248dGhpcy5oLmxlbmd0aDtuKyspe3ZhciByPXRoaXMuaFtuXTtpZihyLkZiKHQuYyx0LmIpKXsoZT10aGlzLmNbdC5jXSkmJihlLmgodCxyKSx0JiYodC5mfHx0LmIpJiYodGhpcy5pW3QuZ2V0VWlkKCldPSEwLHRoaXMudT1EYXRlLm5vdygpKSksZT0hMDticmVha319cmV0dXJuIE1jKHRoaXMuYiksZX07dmFyIENjPW5ldyBScigyZTMsMWU0KSxOYz1uZXcgUnIoM2U0LDZlNCk7ZnVuY3Rpb24gQWModCxlLG4scixpLG8scyl7cmV0dXJuIHQuYS5NYihlLG4scixmdW5jdGlvbigpe3QuZnx8KHQuZj0hMCx0LmEuRWEodC5sKSl9LGZ1bmN0aW9uKCl7dC5yZXNldCgpfSxpLG8scyl9ZnVuY3Rpb24ga2ModCl7cmV0dXJuISghdHx8ImF1dGgvY29yZG92YS1ub3QtcmVhZHkiIT10LmNvZGUpfWZ1bmN0aW9uIFJjKGUsdCxuLHIsaSl7dmFyIG8scztyZXR1cm4ocz1lLmcpLmIuc2V0KG1jLCJwZW5kaW5nIixzLmEpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5hLk5iKHQsbixyLGkpLm8oZnVuY3Rpb24odCl7aWYoa2ModCkpdGhyb3cgbmV3IEkoIm9wZXJhdGlvbi1ub3Qtc3VwcG9ydGVkLWluLXRoaXMtZW52aXJvbm1lbnQiKTtyZXR1cm4gbz10LGJjKGUuZykudGhlbihmdW5jdGlvbigpe3Rocm93IG99KX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5hLiRiKCk/bmV3IGZlKGZ1bmN0aW9uKCl7fSk6YmMoZS5nKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUucWEoKX0pLnRoZW4oZnVuY3Rpb24oKXt9KS5vKGZ1bmN0aW9uKCl7fSl9KX0pfWZ1bmN0aW9uIFBjKHQsZSxuLHIsaSl7cmV0dXJuIHQuYS5PYihyLGZ1bmN0aW9uKHQpe2UubmEobixudWxsLHQsaSl9LENjLmdldCgpKX13Yy5wcm90b3R5cGUucWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5iLnFhKCl9O3ZhciBPYz17fTtmdW5jdGlvbiBEYyh0LGUsbil7cmV0dXJuIHQ9dCsiOiIrZSx0PW4/dCsiOiIrbi51cmw6dH1mdW5jdGlvbiB4Yyh0LGUsbixyKXt2YXIgaT1EYyhlLG4scik7cmV0dXJuIE9jW2ldfHwoT2NbaV09bmV3IHdjKHQsZSxuLHIpKSxPY1tpXX1mdW5jdGlvbiBMYygpe3RoaXMuYj1udWxsLHRoaXMuZj1bXSx0aGlzLmM9W10sdGhpcy5hPW51bGwsdGhpcy5pPXRoaXMuZz0hMX1mdW5jdGlvbiBNYyh0KXt0Lmd8fCh0Lmc9ITAsamModCwhMSxudWxsLG51bGwpKX1mdW5jdGlvbiBGYyh0KXt0LmcmJiF0LmkmJmpjKHQsITEsbnVsbCxudWxsKX1mdW5jdGlvbiBVYyh0LGUpe2lmKHQuYj1mdW5jdGlvbigpe3JldHVybiBiZShlKX0sdC5mLmxlbmd0aClmb3IodmFyIG49MDtuPHQuZi5sZW5ndGg7bisrKXQuZltuXShlKX1mdW5jdGlvbiBqYyh0LGUsbixyKXtlP3I/ZnVuY3Rpb24odCxlKXtpZih0LmI9ZnVuY3Rpb24oKXtyZXR1cm4gd2UoZSl9LHQuYy5sZW5ndGgpZm9yKHZhciBuPTA7bjx0LmMubGVuZ3RoO24rKyl0LmNbbl0oZSl9KHQscik6VWModCxuKTpVYyh0LHt1c2VyOm51bGx9KSx0LmY9W10sdC5jPVtdfWZ1bmN0aW9uIHFjKCl7fWZ1bmN0aW9uIFZjKCl7dGhpcy5pYj0hMSxPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiYXBwVmVyaWZpY2F0aW9uRGlzYWJsZWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pYn0sc2V0OmZ1bmN0aW9uKHQpe3RoaXMuaWI9dH0sZW51bWVyYWJsZTohMX0pfWZ1bmN0aW9uIEJjKHQsZSl7dGhpcy5hPWUsanIodGhpcywidmVyaWZpY2F0aW9uSWQiLHQpfWZ1bmN0aW9uIEtjKHQsZSxuLHIpe3JldHVybiBuZXcgQ28odCkuZmIoZSxuKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgQmModCxyKX0pfWZ1bmN0aW9uIFdjKHQpe3ZhciBlPXhpKHQpO2lmKCEoZSYmZS5leHAmJmUuYXV0aF90aW1lJiZlLmlhdCkpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIiwiQW4gaW50ZXJuYWwgZXJyb3Igb2NjdXJyZWQuIFRoZSB0b2tlbiBvYnRhaW5lZCBieSBGaXJlYmFzZSBhcHBlYXJzIHRvIGJlIG1hbGZvcm1lZC4gUGxlYXNlIHJldHJ5IHRoZSBvcGVyYXRpb24uIik7cXIodGhpcyx7dG9rZW46dCxleHBpcmF0aW9uVGltZTpEcigxZTMqZS5leHApLGF1dGhUaW1lOkRyKDFlMyplLmF1dGhfdGltZSksaXNzdWVkQXRUaW1lOkRyKDFlMyplLmlhdCksc2lnbkluUHJvdmlkZXI6ZS5maXJlYmFzZSYmZS5maXJlYmFzZS5zaWduX2luX3Byb3ZpZGVyP2UuZmlyZWJhc2Uuc2lnbl9pbl9wcm92aWRlcjpudWxsLHNpZ25JblNlY29uZEZhY3RvcjplLmZpcmViYXNlJiZlLmZpcmViYXNlLnNpZ25faW5fc2Vjb25kX2ZhY3Rvcj9lLmZpcmViYXNlLnNpZ25faW5fc2Vjb25kX2ZhY3RvcjpudWxsLGNsYWltczplfSl9ZnVuY3Rpb24gSGModCxlLG4pe3ZhciByPWUmJmVbemNdO2lmKCFyKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsIkludGVybmFsIGFzc2VydDogSW52YWxpZCBNdWx0aUZhY3RvclJlc29sdmVyIik7dGhpcy5hPXQsdGhpcy5mPWN0KGUpLHRoaXMuZz1uLHRoaXMuYz1uZXcgWWkobnVsbCxyKSx0aGlzLmI9W107dmFyIGk9dGhpcztqKGVbR2NdfHxbXSxmdW5jdGlvbih0KXsodD1Xcih0KSkmJmkuYi5wdXNoKHQpfSksanIodGhpcywiYXV0aCIsdGhpcy5hKSxqcih0aGlzLCJzZXNzaW9uIix0aGlzLmMpLGpyKHRoaXMsImhpbnRzIix0aGlzLmIpfUxjLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuYj1udWxsLHRoaXMuYSYmKHRoaXMuYS5jYW5jZWwoKSx0aGlzLmE9bnVsbCl9LExjLnByb3RvdHlwZS5oPWZ1bmN0aW9uKHQsZSl7dmFyIG4scixpLG87dD8odGhpcy5yZXNldCgpLHRoaXMuZz0hMCxuPXQuYyxyPXQuYixpPXQuYSYmImF1dGgvd2ViLXN0b3JhZ2UtdW5zdXBwb3J0ZWQiPT10LmEuY29kZSxvPXQuYSYmImF1dGgvb3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCI9PXQuYS5jb2RlLHRoaXMuaT0hKCFpJiYhbyksInVua25vd24iIT1ufHxpfHxvP3QuYT8oamModGhpcywhMCxudWxsLHQuYSksYmUoKSk6ZS5GYShuLHIpP2Z1bmN0aW9uKGUsdCxuKXtuPW4uRmEodC5jLHQuYik7dmFyIHI9dC5nLGk9dC5mLG89dC5pLHM9dC5UKCksYT0hIXQuYy5tYXRjaCgvUmVkaXJlY3QkLyk7bihyLGkscyxvKS50aGVuKGZ1bmN0aW9uKHQpe2pjKGUsYSx0LG51bGwpfSkubyhmdW5jdGlvbih0KXtqYyhlLGEsbnVsbCx0KX0pfSh0aGlzLHQsZSk6d2UobmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpKTooamModGhpcywhMSxudWxsLG51bGwpLGJlKCkpKTp3ZShuZXcgSSgiaW52YWxpZC1hdXRoLWV2ZW50IikpfSxMYy5wcm90b3R5cGUucWE9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO3JldHVybiBuZXcgZmUoZnVuY3Rpb24odCxlKXt2YXIgbixyO2kuYj9pLmIoKS50aGVuKHQsZSk6KGkuZi5wdXNoKHQpLGkuYy5wdXNoKGUpLG49aSxyPW5ldyBJKCJ0aW1lb3V0Iiksbi5hJiZuLmEuY2FuY2VsKCksbi5hPWduKE5jLmdldCgpKS50aGVuKGZ1bmN0aW9uKCl7bi5ifHwobi5nPSEwLGpjKG4sITAsbnVsbCxyKSl9KSl9KX0scWMucHJvdG90eXBlLmg9ZnVuY3Rpb24odCxlKXt2YXIgbixyLGksbyxzO3Q/KG49dC5jLHI9dC5iLHQuYT8oZS5uYSh0LmMsbnVsbCx0LmEsdC5iKSxiZSgpKTplLkZhKG4scik/KGk9ZSxvPSh0PXQpLmIscz10LmMsaS5GYShzLG8pKHQuZyx0LmYsdC5UKCksdC5pKS50aGVuKGZ1bmN0aW9uKHQpe2kubmEocyx0LG51bGwsbyl9KS5vKGZ1bmN0aW9uKHQpe2kubmEocyxudWxsLHQsbyl9KSk6d2UobmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpKSk6d2UobmV3IEkoImludmFsaWQtYXV0aC1ldmVudCIpKX0sQmMucHJvdG90eXBlLmNvbmZpcm09ZnVuY3Rpb24odCl7cmV0dXJuIHQ9Tm8odGhpcy52ZXJpZmljYXRpb25JZCx0KSx0aGlzLmEodCl9O3ZhciBHYz0ibWZhSW5mbyIsemM9Im1mYVBlbmRpbmdDcmVkZW50aWFsIjtmdW5jdGlvbiBRYyh0LGUsbixyKXtJLmNhbGwodGhpcywibXVsdGktZmFjdG9yLWF1dGgtcmVxdWlyZWQiLHIsZSksdGhpcy5iPW5ldyBIYyh0LGUsbiksanIodGhpcywicmVzb2x2ZXIiLHRoaXMuYil9ZnVuY3Rpb24gWWModCxlLG4pe2lmKHQmJmcodC5zZXJ2ZXJSZXNwb25zZSkmJiJhdXRoL211bHRpLWZhY3Rvci1hdXRoLXJlcXVpcmVkIj09PXQuY29kZSl0cnl7cmV0dXJuIG5ldyBRYyhlLHQuc2VydmVyUmVzcG9uc2Usbix0Lm1lc3NhZ2UpfWNhdGNoKHQpe31yZXR1cm4gbnVsbH1mdW5jdGlvbiBYYygpe31mdW5jdGlvbiBKYyh0KXtqcih0aGlzLCJmYWN0b3JJZCIsdC5mYSksdGhpcy5hPXR9ZnVuY3Rpb24gJGModCl7aWYoSmMuY2FsbCh0aGlzLHQpLHRoaXMuYS5mYSE9Q28uUFJPVklERVJfSUQpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIiwiZmlyZWJhc2UuYXV0aC5QaG9uZU11bHRpRmFjdG9yQXNzZXJ0aW9uIHJlcXVpcmVzIGEgdmFsaWQgZmlyZWJhc2UuYXV0aC5QaG9uZUF1dGhDcmVkZW50aWFsIil9ZnVuY3Rpb24gWmModCxlKXtmb3IodmFyIG4gaW4gcWUuY2FsbCh0aGlzLHQpLGUpdGhpc1tuXT1lW25dfWZ1bmN0aW9uIHRoKHQsZSl7dGhpcy5hPXQsdGhpcy5iPVtdLHRoaXMuYz1tKHRoaXMueWMsdGhpcyksJGUodGhpcy5hLCJ1c2VyUmVsb2FkZWQiLHRoaXMuYyk7dmFyIHI9W107ZSYmZS5tdWx0aUZhY3RvciYmZS5tdWx0aUZhY3Rvci5lbnJvbGxlZEZhY3RvcnMmJmooZS5tdWx0aUZhY3Rvci5lbnJvbGxlZEZhY3RvcnMsZnVuY3Rpb24odCl7dmFyIGU9bnVsbCxuPXt9O2lmKHQpe3QudWlkJiYoblt6cl09dC51aWQpLHQuZGlzcGxheU5hbWUmJihuW0hyXT10LmRpc3BsYXlOYW1lKSx0LmVucm9sbG1lbnRUaW1lJiYobltHcl09bmV3IERhdGUodC5lbnJvbGxtZW50VGltZSkudG9JU09TdHJpbmcoKSksdC5waG9uZU51bWJlciYmKG5bUXJdPXQucGhvbmVOdW1iZXIpO3RyeXtlPW5ldyBZcihuKX1jYXRjaCh0KXt9dD1lfWVsc2UgdD1udWxsO3QmJnIucHVzaCh0KX0pLGVoKHRoaXMscil9ZnVuY3Rpb24gZWgodCxlKXt0LmI9ZSxqcih0LCJlbnJvbGxlZEZhY3RvcnMiLGUpfWZ1bmN0aW9uIG5oKHQsZSxuKXtpZih0aGlzLmg9dCx0aGlzLmk9ZSx0aGlzLmc9bix0aGlzLmM9M2U0LHRoaXMuZj05NmU0LHRoaXMuYj1udWxsLHRoaXMuYT10aGlzLmMsdGhpcy5mPHRoaXMuYyl0aHJvdyBFcnJvcigiUHJvYWN0aXZlIHJlZnJlc2ggbG93ZXIgYm91bmQgZ3JlYXRlciB0aGFuIHVwcGVyIGJvdW5kISIpfWZ1bmN0aW9uIHJoKHQsZSl7cmV0dXJuIGU/KHQuYT10LmMsdC5nKCkpOihlPXQuYSx0LmEqPTIsdC5hPnQuZiYmKHQuYT10LmYpLGUpfWZ1bmN0aW9uIGloKHQpe3RoaXMuZj10LHRoaXMuYj10aGlzLmE9bnVsbCx0aGlzLmM9RGF0ZS5ub3coKX1mdW5jdGlvbiBvaCh0LGUpe3ZvaWQgMD09PWUmJihlPXQuYj8oZT10LmIpLmEtZS5nOjApLHQuYz1EYXRlLm5vdygpKzFlMyplfWZ1bmN0aW9uIHNoKHQsZSl7dC5iPURpKGVbQnNdfHwiIiksdC5hPWUucmVmcmVzaFRva2VuLG9oKHQsdm9pZCAwIT09KGU9ZS5leHBpcmVzSW4pP051bWJlcihlKTp2b2lkIDApfWZ1bmN0aW9uIGFoKGUsdCl7cmV0dXJuIHI9ZS5mLGk9dCxuZXcgZmUoZnVuY3Rpb24oZSxuKXsicmVmcmVzaF90b2tlbiI9PWkuZ3JhbnRfdHlwZSYmaS5yZWZyZXNoX3Rva2VufHwiYXV0aG9yaXphdGlvbl9jb2RlIj09aS5ncmFudF90eXBlJiZpLmNvZGU/SnMocixyLmwrIj9rZXk9IitlbmNvZGVVUklDb21wb25lbnQoci5jKSxmdW5jdGlvbih0KXt0P3QuZXJyb3I/bihZYSh0KSk6dC5hY2Nlc3NfdG9rZW4mJnQucmVmcmVzaF90b2tlbj9lKHQpOm4obmV3IEkoImludGVybmFsLWVycm9yIikpOm4obmV3IEkoIm5ldHdvcmstcmVxdWVzdC1mYWlsZWQiKSl9LCJQT1NUIixWbihpKS50b1N0cmluZygpLHIuZyxyLm0uZ2V0KCkpOm4obmV3IEkoImludGVybmFsLWVycm9yIikpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gZS5iPURpKHQuYWNjZXNzX3Rva2VuKSxlLmE9dC5yZWZyZXNoX3Rva2VuLG9oKGUsdC5leHBpcmVzX2luKSx7YWNjZXNzVG9rZW46ZS5iLnRvU3RyaW5nKCkscmVmcmVzaFRva2VuOmUuYX19KS5vKGZ1bmN0aW9uKHQpe3Rocm93ImF1dGgvdXNlci10b2tlbi1leHBpcmVkIj09dC5jb2RlJiYoZS5hPW51bGwpLHR9KTt2YXIgcixpfWZ1bmN0aW9uIHVoKHQsZSl7dGhpcy5hPXR8fG51bGwsdGhpcy5iPWV8fG51bGwscXIodGhpcyx7bGFzdFNpZ25JblRpbWU6RHIoZXx8bnVsbCksY3JlYXRpb25UaW1lOkRyKHR8fG51bGwpfSl9ZnVuY3Rpb24gY2godCxlLG4scixpLG8pe3FyKHRoaXMse3VpZDp0LGRpc3BsYXlOYW1lOnJ8fG51bGwscGhvdG9VUkw6aXx8bnVsbCxlbWFpbDpufHxudWxsLHBob25lTnVtYmVyOm98fG51bGwscHJvdmlkZXJJZDplfSl9ZnVuY3Rpb24gaGgodCxlLG4pe3RoaXMuSj1bXSx0aGlzLmw9dC5hcGlLZXksdGhpcy5tPXQuYXBwTmFtZSx0aGlzLnM9dC5hdXRoRG9tYWlufHxudWxsO3ZhciByLGk9WGwuU0RLX1ZFUlNJT04/Z3IoWGwuU0RLX1ZFUlNJT04pOm51bGw7dGhpcy5hPW5ldyBxcyh0aGlzLmwsQShFKSxpKSx0LmVtdWxhdG9yQ29uZmlnJiZRcyh0aGlzLmEsdC5lbXVsYXRvckNvbmZpZyksdGhpcy5iPW5ldyBpaCh0aGlzLmEpLG1oKHRoaXMsZVtCc10pLHNoKHRoaXMuYixlKSxqcih0aGlzLCJyZWZyZXNoVG9rZW4iLHRoaXMuYi5hKSxfaCh0aGlzLG58fHt9KSxsbi5jYWxsKHRoaXMpLHRoaXMuUj0hMSx0aGlzLnMmJndyKCkmJih0aGlzLmk9eGModGhpcy5zLHRoaXMubCx0aGlzLm0pKSx0aGlzLlM9W10sdGhpcy5oPW51bGwsdGhpcy51PShyPXRoaXMsbmV3IG5oKGZ1bmN0aW9uKCl7cmV0dXJuIHIuSSghMCl9LGZ1bmN0aW9uKHQpe3JldHVybiEoIXR8fCJhdXRoL25ldHdvcmstcmVxdWVzdC1mYWlsZWQiIT10LmNvZGUpfSxmdW5jdGlvbigpe3ZhciB0PXIuYi5jLURhdGUubm93KCktM2U1O3JldHVybiAwPHQ/dDowfSkpLHRoaXMuYWE9bSh0aGlzLmhiLHRoaXMpO3ZhciBvPXRoaXM7dGhpcy55YT1udWxsLHRoaXMuT2E9ZnVuY3Rpb24odCl7by53YSh0LmgpfSx0aGlzLmphPW51bGwsdGhpcy5BYT1mdW5jdGlvbih0KXtRcyhvLmEsdC5jKX0sdGhpcy5YPW51bGwsdGhpcy4kPVtdLHRoaXMuQmE9ZnVuY3Rpb24odCl7cGgobyx0LmYpfSx0aGlzLmJhPW51bGwsdGhpcy5PPW5ldyB0aCh0aGlzLG4pLGpyKHRoaXMsIm11bHRpRmFjdG9yIix0aGlzLk8pfWZ1bmN0aW9uIGxoKHQsZSl7dC5qYSYmZW4odC5qYSwibGFuZ3VhZ2VDb2RlQ2hhbmdlZCIsdC5PYSksKHQuamE9ZSkmJiRlKGUsImxhbmd1YWdlQ29kZUNoYW5nZWQiLHQuT2EpfWZ1bmN0aW9uIGZoKHQsZSl7dC5YJiZlbih0LlgsImVtdWxhdG9yQ29uZmlnQ2hhbmdlZCIsdC5BYSksKHQuWD1lKSYmJGUoZSwiZW11bGF0b3JDb25maWdDaGFuZ2VkIix0LkFhKX1mdW5jdGlvbiBwaCh0LGUpe3QuJD1lLFhzKHQuYSxYbC5TREtfVkVSU0lPTj9ncihYbC5TREtfVkVSU0lPTix0LiQpOm51bGwpfWZ1bmN0aW9uIGRoKHQsZSl7dC5iYSYmZW4odC5iYSwiZnJhbWV3b3JrQ2hhbmdlZCIsdC5CYSksKHQuYmE9ZSkmJiRlKGUsImZyYW1ld29ya0NoYW5nZWQiLHQuQmEpfWZ1bmN0aW9uIHZoKGUpe3RyeXtyZXR1cm4gWGwuYXBwKGUubSkuYXV0aCgpfWNhdGNoKHQpe3Rocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsIk5vIGZpcmViYXNlLmF1dGguQXV0aCBpbnN0YW5jZSBpcyBhdmFpbGFibGUgZm9yIHRoZSBGaXJlYmFzZSBBcHAgJyIrZS5tKyInISIpfX1mdW5jdGlvbiBnaCh0KXt0LkR8fHQudS5ifHwodC51LnN0YXJ0KCksZW4odCwidG9rZW5DaGFuZ2VkIix0LmFhKSwkZSh0LCJ0b2tlbkNoYW5nZWQiLHQuYWEpKX1mdW5jdGlvbiB5aCh0KXtlbih0LCJ0b2tlbkNoYW5nZWQiLHQuYWEpLHQudS5zdG9wKCl9ZnVuY3Rpb24gbWgodCxlKXt0LnphPWUsanIodCwiX2xhdCIsZSl9ZnVuY3Rpb24gYmgodCl7Zm9yKHZhciBlPVtdLG49MDtuPHQuUy5sZW5ndGg7bisrKWUucHVzaCh0LlNbbl0odCkpO3JldHVybiBJZShlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHR9KX1mdW5jdGlvbiB3aCh0KXt0LmkmJiF0LlImJih0LlI9ITAsRWModC5pLHQpKX1mdW5jdGlvbiBfaCh0LGUpe3FyKHQse3VpZDplLnVpZCxkaXNwbGF5TmFtZTplLmRpc3BsYXlOYW1lfHxudWxsLHBob3RvVVJMOmUucGhvdG9VUkx8fG51bGwsZW1haWw6ZS5lbWFpbHx8bnVsbCxlbWFpbFZlcmlmaWVkOmUuZW1haWxWZXJpZmllZHx8ITEscGhvbmVOdW1iZXI6ZS5waG9uZU51bWJlcnx8bnVsbCxpc0Fub255bW91czplLmlzQW5vbnltb3VzfHwhMSx0ZW5hbnRJZDplLnRlbmFudElkfHxudWxsLG1ldGFkYXRhOm5ldyB1aChlLmNyZWF0ZWRBdCxlLmxhc3RMb2dpbkF0KSxwcm92aWRlckRhdGE6W119KSx0LmEuYj10LnRlbmFudElkfWZ1bmN0aW9uIEloKCl7fWZ1bmN0aW9uIFRoKHQpe3JldHVybiBiZSgpLnRoZW4oZnVuY3Rpb24oKXtpZih0LkQpdGhyb3cgbmV3IEkoImFwcC1kZWxldGVkIil9KX1mdW5jdGlvbiBFaCh0KXtyZXR1cm4gVih0LnByb3ZpZGVyRGF0YSxmdW5jdGlvbih0KXtyZXR1cm4gdC5wcm92aWRlcklkfSl9ZnVuY3Rpb24gU2godCxlKXtlJiYoQ2godCxlLnByb3ZpZGVySWQpLHQucHJvdmlkZXJEYXRhLnB1c2goZSkpfWZ1bmN0aW9uIENoKHQsZSl7SCh0LnByb3ZpZGVyRGF0YSxmdW5jdGlvbih0KXtyZXR1cm4gdC5wcm92aWRlcklkPT1lfSl9ZnVuY3Rpb24gTmgodCxlLG4peygidWlkIiE9ZXx8bikmJnQuaGFzT3duUHJvcGVydHkoZSkmJmpyKHQsZSxuKX1mdW5jdGlvbiBBaChlLHQpe3ZhciBuLHI7ZSE9dCYmKHFyKGUse3VpZDp0LnVpZCxkaXNwbGF5TmFtZTp0LmRpc3BsYXlOYW1lLHBob3RvVVJMOnQucGhvdG9VUkwsZW1haWw6dC5lbWFpbCxlbWFpbFZlcmlmaWVkOnQuZW1haWxWZXJpZmllZCxwaG9uZU51bWJlcjp0LnBob25lTnVtYmVyLGlzQW5vbnltb3VzOnQuaXNBbm9ueW1vdXMsdGVuYW50SWQ6dC50ZW5hbnRJZCxwcm92aWRlckRhdGE6W119KSx0Lm1ldGFkYXRhP2pyKGUsIm1ldGFkYXRhIixuZXcgdWgoKHI9dC5tZXRhZGF0YSkuYSxyLmIpKTpqcihlLCJtZXRhZGF0YSIsbmV3IHVoKSxqKHQucHJvdmlkZXJEYXRhLGZ1bmN0aW9uKHQpe1NoKGUsdCl9KSxuPWUuYixyPXQuYixuLmI9ci5iLG4uYT1yLmEsbi5jPXIuYyxqcihlLCJyZWZyZXNoVG9rZW4iLGUuYi5hKSxlaChlLk8sdC5PLmIpKX1mdW5jdGlvbiBraChpKXtyZXR1cm4gaS5JKCkudGhlbihmdW5jdGlvbih0KXt2YXIgZSxuLHI9aS5pc0Fub255bW91cztyZXR1cm4gbj10LHphKChlPWkpLmEsRWEse2lkVG9rZW46bn0pLnRoZW4obShlLktjLGUpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHJ8fE5oKGksImlzQW5vbnltb3VzIiwhMSksdH0pfSl9ZnVuY3Rpb24gUmgodCxlKXtlW0JzXSYmdC56YSE9ZVtCc10mJihzaCh0LmIsZSksdC5kaXNwYXRjaEV2ZW50KG5ldyBaYygidG9rZW5DaGFuZ2VkIikpLG1oKHQsZVtCc10pLE5oKHQsInJlZnJlc2hUb2tlbiIsdC5iLmEpKX1mdW5jdGlvbiBQaCh0LGUpe3JldHVybiBraCh0KS50aGVuKGZ1bmN0aW9uKCl7aWYoSyhFaCh0KSxlKSlyZXR1cm4gYmgodCkudGhlbihmdW5jdGlvbigpe3Rocm93IG5ldyBJKCJwcm92aWRlci1hbHJlYWR5LWxpbmtlZCIpfSl9KX1mdW5jdGlvbiBPaCh0LGUsbil7cmV0dXJuIFZyKHt1c2VyOnQsY3JlZGVudGlhbDpBbyhlKSxhZGRpdGlvbmFsVXNlckluZm86ZT1qaShlKSxvcGVyYXRpb25UeXBlOm59KX1mdW5jdGlvbiBEaCh0LGUpe3JldHVybiBSaCh0LGUpLHQucmVsb2FkKCkudGhlbihmdW5jdGlvbigpe3JldHVybiB0fSl9ZnVuY3Rpb24geGgobixyLHQsZSxpKXtpZighd3IoKSlyZXR1cm4gd2UobmV3IEkoIm9wZXJhdGlvbi1ub3Qtc3VwcG9ydGVkLWluLXRoaXMtZW52aXJvbm1lbnQiKSk7aWYobi5oJiYhaSlyZXR1cm4gd2Uobi5oKTt2YXIgbz1VaSh0LnByb3ZpZGVySWQpLHM9TnIobi51aWQrIjo6OiIpLGE9bnVsbCx1PXJyKGE9KCFUcigpfHx1cigpKSYmbi5zJiZ0LmlzT0F1dGhQcm92aWRlcj91dShuLnMsbi5sLG4ubSxyLHQsbnVsbCxzLFhsLlNES19WRVJTSU9OfHxudWxsLG51bGwsbnVsbCxuLnRlbmFudElkKTphLG8mJm8udWEsbyYmby50YSk7cmV0dXJuIGU9ZSgpLnRoZW4oZnVuY3Rpb24oKXtpZihNaChuKSwhaSlyZXR1cm4gbi5JKCkudGhlbihmdW5jdGlvbigpe30pfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBBYyhuLmksdSxyLHQscywhIWEsbi50ZW5hbnRJZCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbih0LGUpe24ubmEocixudWxsLG5ldyBJKCJjYW5jZWxsZWQtcG9wdXAtcmVxdWVzdCIpLG4uZ3x8bnVsbCksbi5mPXQsbi5DPWUsbi5nPXMsbi5jPVBjKG4uaSxuLHIsdSxzKX0pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdSYmbnIodSksdD9Wcih0KTpudWxsfSkubyhmdW5jdGlvbih0KXt0aHJvdyB1JiZucih1KSx0fSksRmgobixlLGkpfWZ1bmN0aW9uIExoKGUsdCxuLHIsaSl7aWYoIXdyKCkpcmV0dXJuIHdlKG5ldyBJKCJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IikpO2lmKGUuaCYmIWkpcmV0dXJuIHdlKGUuaCk7dmFyIG89bnVsbCxzPU5yKGUudWlkKyI6OjoiKTtyZXR1cm4gcj1yKCkudGhlbihmdW5jdGlvbigpe2lmKE1oKGUpLCFpKXJldHVybiBlLkkoKS50aGVuKGZ1bmN0aW9uKCl7fSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuZ2E9cyxiaChlKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQ9ZS5oYT8odD1lLmhhKS5iLnNldChxaCxlLncoKSx0LmEpOnR9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFJjKGUuaSx0LG4scyxlLnRlbmFudElkKX0pLm8oZnVuY3Rpb24odCl7aWYobz10LGUuaGEpcmV0dXJuIFZoKGUuaGEpO3Rocm93IG99KS50aGVuKGZ1bmN0aW9uKCl7aWYobyl0aHJvdyBvfSksRmgoZSxyLGkpfWZ1bmN0aW9uIE1oKHQpe2lmKCF0Lml8fCF0LlIpe2lmKHQuaSYmIXQuUil0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKTt0aHJvdyBuZXcgSSgiYXV0aC1kb21haW4tY29uZmlnLXJlcXVpcmVkIil9fWZ1bmN0aW9uIEZoKG4sdCxlKXt2YXIgcixpPSh0PXQsZT1lLChyPW4pLmgmJiFlPyh0LmNhbmNlbCgpLHdlKHIuaCkpOnQubyhmdW5jdGlvbih0KXt0aHJvdyF0fHwiYXV0aC91c2VyLWRpc2FibGVkIiE9dC5jb2RlJiYiYXV0aC91c2VyLXRva2VuLWV4cGlyZWQiIT10LmNvZGV8fChyLmh8fHIuZGlzcGF0Y2hFdmVudChuZXcgWmMoInVzZXJJbnZhbGlkYXRlZCIpKSxyLmg9dCksdH0pKTtyZXR1cm4gbi5KLnB1c2goaSksaS5vYShmdW5jdGlvbigpe1cobi5KLGkpfSksaS5vKGZ1bmN0aW9uKHQpe3ZhciBlPW51bGw7dGhyb3coZT10JiYiYXV0aC9tdWx0aS1mYWN0b3ItYXV0aC1yZXF1aXJlZCI9PT10LmNvZGU/WWModC53KCksdmgobiksbShuLmpjLG4pKTplKXx8dH0pfWZ1bmN0aW9uIFVoKHQpe2lmKCF0LmFwaUtleSlyZXR1cm4gbnVsbDt2YXIgZT17YXBpS2V5OnQuYXBpS2V5LGF1dGhEb21haW46dC5hdXRoRG9tYWluLGFwcE5hbWU6dC5hcHBOYW1lLGVtdWxhdG9yQ29uZmlnOnQuZW11bGF0b3JDb25maWd9LG49e307aWYoIXQuc3RzVG9rZW5NYW5hZ2VyfHwhdC5zdHNUb2tlbk1hbmFnZXIuYWNjZXNzVG9rZW4pcmV0dXJuIG51bGw7bltCc109dC5zdHNUb2tlbk1hbmFnZXIuYWNjZXNzVG9rZW4sbi5yZWZyZXNoVG9rZW49dC5zdHNUb2tlbk1hbmFnZXIucmVmcmVzaFRva2VufHxudWxsO3ZhciByPXQuc3RzVG9rZW5NYW5hZ2VyLmV4cGlyYXRpb25UaW1lO3ImJihuLmV4cGlyZXNJbj0oci1EYXRlLm5vdygpKS8xZTMpO3ZhciBpPW5ldyBoaChlLG4sdCk7cmV0dXJuIHQucHJvdmlkZXJEYXRhJiZqKHQucHJvdmlkZXJEYXRhLGZ1bmN0aW9uKHQpe3QmJlNoKGksVnIodCkpfSksdC5yZWRpcmVjdEV2ZW50SWQmJihpLmdhPXQucmVkaXJlY3RFdmVudElkKSxpfWZ1bmN0aW9uIGpoKHQpe3RoaXMuYT10LHRoaXMuYj1IdSgpfUhjLnByb3RvdHlwZS5SYz1mdW5jdGlvbih0KXt2YXIgbj10aGlzO3JldHVybiB0LnNiKHRoaXMuYS5hLHRoaXMuYykudGhlbihmdW5jdGlvbih0KXt2YXIgZT1jdChuLmYpO3JldHVybiBkZWxldGUgZVtHY10sZGVsZXRlIGVbemNdLGx0KGUsdCksbi5nKGUpfSl9LHcoUWMsSSksWGMucHJvdG90eXBlLnNiPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZS50eXBlPT1YaT8obz10aGlzLHM9dCxhPW4sZS5IYSgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQ9e2lkVG9rZW46dH0sdm9pZCAwIT09YSYmKHQuZGlzcGxheU5hbWU9YSksbHQodCx7cGhvbmVWZXJpZmljYXRpb25JbmZvOlNvKG8uYSl9KSx6YShzLElhLHQpfSkpOihyPXRoaXMsaT10LGUuSGEoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBsdCh0PXttZmFQZW5kaW5nQ3JlZGVudGlhbDp0fSx7cGhvbmVWZXJpZmljYXRpb25JbmZvOlNvKHIuYSl9KSx6YShpLFRhLHQpfSkpO3ZhciByLGksbyxzLGF9LHcoSmMsWGMpLHcoJGMsSmMpLHcoWmMscWUpLCh0PXRoLnByb3RvdHlwZSkueWM9ZnVuY3Rpb24odCl7dmFyIGU7ZWgodGhpcywodD10LmhkLGU9W10saih0Lm1mYUluZm98fFtdLGZ1bmN0aW9uKHQpeyh0PVdyKHQpKSYmZS5wdXNoKHQpfSksZSkpfSx0LlJiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYS5JKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFlpKHQsbnVsbCl9KX0sdC5mYz1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXMsaT10aGlzLmEuYTtyZXR1cm4gdGhpcy5SYigpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGUuc2IoaSx0LG4pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gUmgoci5hLHQpLHIuYS5yZWxvYWQoKX0pfSx0LmJkPWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXMscj0ic3RyaW5nIj09dHlwZW9mIHQ/dDp0LnVpZCxlPXRoaXMuYS5hO3JldHVybiB0aGlzLmEuSSgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHphKGUsR2Ese2lkVG9rZW46dCxtZmFFbnJvbGxtZW50SWQ6cn0pfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT1xKG4uYixmdW5jdGlvbih0KXtyZXR1cm4gdC51aWQhPXJ9KTtyZXR1cm4gZWgobixlKSxSaChuLmEsdCksbi5hLnJlbG9hZCgpLm8oZnVuY3Rpb24odCl7aWYoImF1dGgvdXNlci10b2tlbi1leHBpcmVkIiE9dC5jb2RlKXRocm93IHR9KX0pfSx0Lnc9ZnVuY3Rpb24oKXtyZXR1cm57bXVsdGlGYWN0b3I6e2Vucm9sbGVkRmFjdG9yczpWKHRoaXMuYixmdW5jdGlvbih0KXtyZXR1cm4gdC53KCl9KX19fSxuaC5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXt0aGlzLmE9dGhpcy5jLGZ1bmN0aW9uIGUobix0KXtuLnN0b3AoKTtuLmI9Z24ocmgobix0KSkudGhlbihPcikudGhlbihmdW5jdGlvbigpe3JldHVybiBuLmgoKX0pLnRoZW4oZnVuY3Rpb24oKXtlKG4sITApfSkubyhmdW5jdGlvbih0KXtuLmkodCkmJmUobiwhMSl9KX0odGhpcywhMCl9LG5oLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5iJiYodGhpcy5iLmNhbmNlbCgpLHRoaXMuYj1udWxsKX0saWgucHJvdG90eXBlLnc9ZnVuY3Rpb24oKXtyZXR1cm57YXBpS2V5OnRoaXMuZi5jLHJlZnJlc2hUb2tlbjp0aGlzLmEsYWNjZXNzVG9rZW46dGhpcy5iJiZ0aGlzLmIudG9TdHJpbmcoKSxleHBpcmF0aW9uVGltZTp0aGlzLmN9fSxpaC5wcm90b3R5cGUuZ2V0VG9rZW49ZnVuY3Rpb24odCl7cmV0dXJuIHQ9ISF0LHRoaXMuYiYmIXRoaXMuYT93ZShuZXcgSSgidXNlci10b2tlbi1leHBpcmVkIikpOnR8fCF0aGlzLmJ8fERhdGUubm93KCk+dGhpcy5jLTNlND90aGlzLmE/YWgodGhpcyx7Z3JhbnRfdHlwZToicmVmcmVzaF90b2tlbiIscmVmcmVzaF90b2tlbjp0aGlzLmF9KTpiZShudWxsKTpiZSh7YWNjZXNzVG9rZW46dGhpcy5iLnRvU3RyaW5nKCkscmVmcmVzaFRva2VuOnRoaXMuYX0pfSx1aC5wcm90b3R5cGUudz1mdW5jdGlvbigpe3JldHVybntsYXN0TG9naW5BdDp0aGlzLmIsY3JlYXRlZEF0OnRoaXMuYX19LHcoaGgsbG4pLGhoLnByb3RvdHlwZS53YT1mdW5jdGlvbih0KXt0aGlzLnlhPXQsenModGhpcy5hLHQpfSxoaC5wcm90b3R5cGUubGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy55YX0saGgucHJvdG90eXBlLkdhPWZ1bmN0aW9uKCl7cmV0dXJuIHoodGhpcy4kKX0saGgucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7dGhpcy51LmImJih0aGlzLnUuc3RvcCgpLHRoaXMudS5zdGFydCgpKX0sanIoaGgucHJvdG90eXBlLCJwcm92aWRlcklkIiwiZmlyZWJhc2UiKSwodD1oaC5wcm90b3R5cGUpLnJlbG9hZD1mdW5jdGlvbigpe3ZhciB0PXRoaXM7cmV0dXJuIEZoKHRoaXMsVGgodGhpcykudGhlbihmdW5jdGlvbigpe3JldHVybiBraCh0KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGJoKHQpfSkudGhlbihJaCl9KSl9LHQub2M9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuSSh0KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgV2ModCl9KX0sdC5JPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIEZoKHRoaXMsVGgodGhpcykudGhlbihmdW5jdGlvbigpe3JldHVybiBlLmIuZ2V0VG9rZW4odCl9KS50aGVuKGZ1bmN0aW9uKHQpe2lmKCF0KXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIpO3JldHVybiB0LmFjY2Vzc1Rva2VuIT1lLnphJiYobWgoZSx0LmFjY2Vzc1Rva2VuKSxlLmRpc3BhdGNoRXZlbnQobmV3IFpjKCJ0b2tlbkNoYW5nZWQiKSkpLE5oKGUsInJlZnJlc2hUb2tlbiIsdC5yZWZyZXNoVG9rZW4pLHQuYWNjZXNzVG9rZW59KSl9LHQuS2M9ZnVuY3Rpb24odCl7aWYoISh0PXQudXNlcnMpfHwhdC5sZW5ndGgpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIik7X2godGhpcyx7dWlkOih0PXRbMF0pLmxvY2FsSWQsZGlzcGxheU5hbWU6dC5kaXNwbGF5TmFtZSxwaG90b1VSTDp0LnBob3RvVXJsLGVtYWlsOnQuZW1haWwsZW1haWxWZXJpZmllZDohIXQuZW1haWxWZXJpZmllZCxwaG9uZU51bWJlcjp0LnBob25lTnVtYmVyLGxhc3RMb2dpbkF0OnQubGFzdExvZ2luQXQsY3JlYXRlZEF0OnQuY3JlYXRlZEF0LHRlbmFudElkOnQudGVuYW50SWR9KTtmb3IodmFyIGUsbj0oZT0oZT10KS5wcm92aWRlclVzZXJJbmZvKSYmZS5sZW5ndGg/VihlLGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgY2godC5yYXdJZCx0LnByb3ZpZGVySWQsdC5lbWFpbCx0LmRpc3BsYXlOYW1lLHQucGhvdG9VcmwsdC5waG9uZU51bWJlcil9KTpbXSxyPTA7cjxuLmxlbmd0aDtyKyspU2godGhpcyxuW3JdKTtOaCh0aGlzLCJpc0Fub255bW91cyIsISh0aGlzLmVtYWlsJiZ0LnBhc3N3b3JkSGFzaHx8dGhpcy5wcm92aWRlckRhdGEmJnRoaXMucHJvdmlkZXJEYXRhLmxlbmd0aCkpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgWmMoInVzZXJSZWxvYWRlZCIse2hkOnR9KSl9LHQuTGM9ZnVuY3Rpb24odCl7cmV0dXJuIEZyKCJmaXJlYmFzZS5Vc2VyLnByb3RvdHlwZS5yZWF1dGhlbnRpY2F0ZUFuZFJldHJpZXZlRGF0YVdpdGhDcmVkZW50aWFsIGlzIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgZmlyZWJhc2UuVXNlci5wcm90b3R5cGUucmVhdXRoZW50aWNhdGVXaXRoQ3JlZGVudGlhbCBpbnN0ZWFkLiIpLHRoaXMudGIodCl9LHQudGI9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPW51bGw7cmV0dXJuIEZoKHRoaXMsdC5jKHRoaXMuYSx0aGlzLnVpZCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gUmgoZSx0KSxuPU9oKGUsdCwicmVhdXRoZW50aWNhdGUiKSxlLmg9bnVsbCxlLnJlbG9hZCgpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBufSksITApfSx0LkNjPWZ1bmN0aW9uKHQpe3JldHVybiBGcigiZmlyZWJhc2UuVXNlci5wcm90b3R5cGUubGlua0FuZFJldHJpZXZlRGF0YVdpdGhDcmVkZW50aWFsIGlzIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgZmlyZWJhc2UuVXNlci5wcm90b3R5cGUubGlua1dpdGhDcmVkZW50aWFsIGluc3RlYWQuIiksdGhpcy5xYih0KX0sdC5xYj1mdW5jdGlvbihlKXt2YXIgbj10aGlzLHI9bnVsbDtyZXR1cm4gRmgodGhpcyxQaCh0aGlzLGUucHJvdmlkZXJJZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBuLkkoKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGUuYihuLmEsdCl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiByPU9oKG4sdCwibGluayIpLERoKG4sdCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LHQuRGM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiBGaCh0aGlzLFBoKHRoaXMsInBob25lIikudGhlbihmdW5jdGlvbigpe3JldHVybiBLYyh2aChuKSx0LGUsbShuLnFiLG4pKX0pKX0sdC5NYz1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuIEZoKHRoaXMsYmUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIEtjKHZoKG4pLHQsZSxtKG4udGIsbikpfSksITApfSx0LkJiPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7cmV0dXJuIEZoKHRoaXMsdGhpcy5JKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbi5hLkJiKHQsZSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBSaChuLHQpLG4ucmVsb2FkKCl9KSl9LHQuZWQ9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcztyZXR1cm4gRmgodGhpcyx0aGlzLkkoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlLmIobi5hLHQpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gUmgobix0KSxuLnJlbG9hZCgpfSkpfSx0LkNiPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7cmV0dXJuIEZoKHRoaXMsdGhpcy5JKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbi5hLkNiKHQsZSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBSaChuLHQpLG4ucmVsb2FkKCl9KSl9LHQuRGI9ZnVuY3Rpb24oZSl7aWYodm9pZCAwPT09ZS5kaXNwbGF5TmFtZSYmdm9pZCAwPT09ZS5waG90b1VSTClyZXR1cm4gVGgodGhpcyk7dmFyIG49dGhpcztyZXR1cm4gRmgodGhpcyx0aGlzLkkoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuLmEuRGIodCx7ZGlzcGxheU5hbWU6ZS5kaXNwbGF5TmFtZSxwaG90b1VybDplLnBob3RvVVJMfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBSaChuLHQpLE5oKG4sImRpc3BsYXlOYW1lIix0LmRpc3BsYXlOYW1lfHxudWxsKSxOaChuLCJwaG90b1VSTCIsdC5waG90b1VybHx8bnVsbCksaihuLnByb3ZpZGVyRGF0YSxmdW5jdGlvbih0KXsicGFzc3dvcmQiPT09dC5wcm92aWRlcklkJiYoanIodCwiZGlzcGxheU5hbWUiLG4uZGlzcGxheU5hbWUpLGpyKHQsInBob3RvVVJMIixuLnBob3RvVVJMKSl9KSxiaChuKX0pLnRoZW4oSWgpKX0sdC5jZD1mdW5jdGlvbihlKXt2YXIgbj10aGlzO3JldHVybiBGaCh0aGlzLGtoKHRoaXMpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIEsoRWgobiksZSk/emEobi5hLGJhLHtpZFRva2VuOnQsZGVsZXRlUHJvdmlkZXI6W2VdfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT17fTtyZXR1cm4gaih0LnByb3ZpZGVyVXNlckluZm98fFtdLGZ1bmN0aW9uKHQpe2VbdC5wcm92aWRlcklkXT0hMH0pLGooRWgobiksZnVuY3Rpb24odCl7ZVt0XXx8Q2gobix0KX0pLGVbQ28uUFJPVklERVJfSURdfHxqcihuLCJwaG9uZU51bWJlciIsbnVsbCksYmgobil9KTpiaChuKS50aGVuKGZ1bmN0aW9uKCl7dGhyb3cgbmV3IEkoIm5vLXN1Y2gtcHJvdmlkZXIiKX0pfSkpfSx0LmRlbGV0ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIEZoKHRoaXMsdGhpcy5JKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gemEoZS5hLG1hLHtpZFRva2VuOnR9KX0pLnRoZW4oZnVuY3Rpb24oKXtlLmRpc3BhdGNoRXZlbnQobmV3IFpjKCJ1c2VyRGVsZXRlZCIpKX0pKS50aGVuKGZ1bmN0aW9uKCl7Zm9yKHZhciB0PTA7dDxlLkoubGVuZ3RoO3QrKyllLkpbdF0uY2FuY2VsKCJhcHAtZGVsZXRlZCIpO2xoKGUsbnVsbCksZmgoZSxudWxsKSxkaChlLG51bGwpLGUuSj1bXSxlLkQ9ITAseWgoZSksanIoZSwicmVmcmVzaFRva2VuIixudWxsKSxlLmkmJlNjKGUuaSxlKX0pfSx0LkZiPWZ1bmN0aW9uKHQsZSl7cmV0dXJuISEoImxpbmtWaWFQb3B1cCI9PXQmJih0aGlzLmd8fG51bGwpPT1lJiZ0aGlzLmZ8fCJyZWF1dGhWaWFQb3B1cCI9PXQmJih0aGlzLmd8fG51bGwpPT1lJiZ0aGlzLmZ8fCJsaW5rVmlhUmVkaXJlY3QiPT10JiYodGhpcy5nYXx8bnVsbCk9PWV8fCJyZWF1dGhWaWFSZWRpcmVjdCI9PXQmJih0aGlzLmdhfHxudWxsKT09ZSl9LHQubmE9ZnVuY3Rpb24odCxlLG4scil7ImxpbmtWaWFQb3B1cCIhPXQmJiJyZWF1dGhWaWFQb3B1cCIhPXR8fHIhPSh0aGlzLmd8fG51bGwpfHwobiYmdGhpcy5DP3RoaXMuQyhuKTplJiYhbiYmdGhpcy5mJiZ0aGlzLmYoZSksdGhpcy5jJiYodGhpcy5jLmNhbmNlbCgpLHRoaXMuYz1udWxsKSxkZWxldGUgdGhpcy5mLGRlbGV0ZSB0aGlzLkMpfSx0LkZhPWZ1bmN0aW9uKHQsZSl7cmV0dXJuImxpbmtWaWFQb3B1cCI9PXQmJmU9PSh0aGlzLmd8fG51bGwpP20odGhpcy5LYix0aGlzKToicmVhdXRoVmlhUG9wdXAiPT10JiZlPT0odGhpcy5nfHxudWxsKT9tKHRoaXMuTGIsdGhpcyk6ImxpbmtWaWFSZWRpcmVjdCI9PXQmJih0aGlzLmdhfHxudWxsKT09ZT9tKHRoaXMuS2IsdGhpcyk6InJlYXV0aFZpYVJlZGlyZWN0Ij09dCYmKHRoaXMuZ2F8fG51bGwpPT1lP20odGhpcy5MYix0aGlzKTpudWxsfSx0LkVjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIHhoKHRoaXMsImxpbmtWaWFQb3B1cCIsdCxmdW5jdGlvbigpe3JldHVybiBQaChlLHQucHJvdmlkZXJJZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBiaChlKX0pfSwhMSl9LHQuTmM9ZnVuY3Rpb24odCl7cmV0dXJuIHhoKHRoaXMsInJlYXV0aFZpYVBvcHVwIix0LGZ1bmN0aW9uKCl7cmV0dXJuIGJlKCl9LCEwKX0sdC5GYz1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3JldHVybiBMaCh0aGlzLCJsaW5rVmlhUmVkaXJlY3QiLHQsZnVuY3Rpb24oKXtyZXR1cm4gUGgoZSx0LnByb3ZpZGVySWQpfSwhMSl9LHQuT2M9ZnVuY3Rpb24odCl7cmV0dXJuIExoKHRoaXMsInJlYXV0aFZpYVJlZGlyZWN0Iix0LGZ1bmN0aW9uKCl7cmV0dXJuIGJlKCl9LCEwKX0sdC5LYj1mdW5jdGlvbihlLG4sdCxyKXt2YXIgaT10aGlzO3RoaXMuYyYmKHRoaXMuYy5jYW5jZWwoKSx0aGlzLmM9bnVsbCk7dmFyIG89bnVsbDtyZXR1cm4gdD10aGlzLkkoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBsYShpLmEse3JlcXVlc3RVcmk6ZSxwb3N0Qm9keTpyLHNlc3Npb25JZDpuLGlkVG9rZW46dH0pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbz1PaChpLHQsImxpbmsiKSxEaChpLHQpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBvfSksRmgodGhpcyx0KX0sdC5MYj1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT10aGlzO3RoaXMuYyYmKHRoaXMuYy5jYW5jZWwoKSx0aGlzLmM9bnVsbCk7dmFyIG89bnVsbDtyZXR1cm4gRmgodGhpcyxiZSgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gWmkoZmEoaS5hLHtyZXF1ZXN0VXJpOnQsc2Vzc2lvbklkOmUscG9zdEJvZHk6cix0ZW5hbnRJZDpufSksaS51aWQpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbz1PaChpLHQsInJlYXV0aGVudGljYXRlIiksUmgoaSx0KSxpLmg9bnVsbCxpLnJlbG9hZCgpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBvfSksITApfSx0LnViPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXMscj1udWxsO3JldHVybiBGaCh0aGlzLHRoaXMuSSgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHI9dCx2b2lkIDA9PT1lfHx1dChlKT97fTpraShuZXcgYmkoZSkpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbi5hLnViKHIsdCl9KS50aGVuKGZ1bmN0aW9uKHQpe2lmKG4uZW1haWwhPXQpcmV0dXJuIG4ucmVsb2FkKCl9KS50aGVuKGZ1bmN0aW9uKCl7fSkpfSx0LkViPWZ1bmN0aW9uKGUsbil7dmFyIHI9dGhpcyxpPW51bGw7cmV0dXJuIEZoKHRoaXMsdGhpcy5JKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gaT10LHZvaWQgMD09PW58fHV0KG4pP3t9OmtpKG5ldyBiaShuKSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiByLmEuRWIoaSxlLHQpfSkudGhlbihmdW5jdGlvbih0KXtpZihyLmVtYWlsIT10KXJldHVybiByLnJlbG9hZCgpfSkudGhlbihmdW5jdGlvbigpe30pKX0sdC5qYz1mdW5jdGlvbih0KXt2YXIgZT1udWxsLG49dGhpcztyZXR1cm4gRmgodGhpcyx0PVppKGJlKHQpLG4udWlkKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlPU9oKG4sdCwicmVhdXRoZW50aWNhdGUiKSxSaChuLHQpLG4uaD1udWxsLG4ucmVsb2FkKCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGV9KSwhMCl9LHQudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudygpfSx0Lnc9ZnVuY3Rpb24oKXt2YXIgZT17dWlkOnRoaXMudWlkLGRpc3BsYXlOYW1lOnRoaXMuZGlzcGxheU5hbWUscGhvdG9VUkw6dGhpcy5waG90b1VSTCxlbWFpbDp0aGlzLmVtYWlsLGVtYWlsVmVyaWZpZWQ6dGhpcy5lbWFpbFZlcmlmaWVkLHBob25lTnVtYmVyOnRoaXMucGhvbmVOdW1iZXIsaXNBbm9ueW1vdXM6dGhpcy5pc0Fub255bW91cyx0ZW5hbnRJZDp0aGlzLnRlbmFudElkLHByb3ZpZGVyRGF0YTpbXSxhcGlLZXk6dGhpcy5sLGFwcE5hbWU6dGhpcy5tLGF1dGhEb21haW46dGhpcy5zLHN0c1Rva2VuTWFuYWdlcjp0aGlzLmIudygpLHJlZGlyZWN0RXZlbnRJZDp0aGlzLmdhfHxudWxsfTtyZXR1cm4gdGhpcy5tZXRhZGF0YSYmbHQoZSx0aGlzLm1ldGFkYXRhLncoKSksaih0aGlzLnByb3ZpZGVyRGF0YSxmdW5jdGlvbih0KXtlLnByb3ZpZGVyRGF0YS5wdXNoKGZ1bmN0aW9uKHQpe3ZhciBlLG49e307Zm9yKGUgaW4gdCl0Lmhhc093blByb3BlcnR5KGUpJiYobltlXT10W2VdKTtyZXR1cm4gbn0odCkpfSksbHQoZSx0aGlzLk8udygpKSxlfTt2YXIgcWg9e25hbWU6InJlZGlyZWN0VXNlciIsRjoic2Vzc2lvbiJ9O2Z1bmN0aW9uIFZoKHQpe3JldHVybiBRdSh0LmIscWgsdC5hKX1mdW5jdGlvbiBCaCh0KXt2YXIgZSxuLHIsaTt0aGlzLmE9dCx0aGlzLmI9SHUoKSx0aGlzLmM9bnVsbCx0aGlzLmY9KG49SGgoImxvY2FsIikscj1IaCgic2Vzc2lvbiIpLGk9SGgoIm5vbmUiKSxmdW5jdGlvbihuLHIsaSl7dmFyIG89enUocixpKSxzPUd1KG4sci5GKTtyZXR1cm4gbi5nZXQocixpKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBlPW51bGw7dHJ5e2U9Q3IobC5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShvKSl9Y2F0Y2godCl7fWlmKGUmJiF0KXJldHVybiBsLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG8pLG4uc2V0KHIsZSxpKTtlJiZ0JiYibG9jYWxTdG9yYWdlIiE9cy50eXBlJiZsLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG8pfSl9KChlPXRoaXMpLmIsbixlLmEpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5iLmdldChyLGUuYSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0P3I6ZS5iLmdldChpLGUuYSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdD9pOmUuYi5nZXQobixlLmEpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQ/bjplLmIuZ2V0KFdoLGUuYSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdD9IaCh0KTpufSl9KX0pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gZS5jPXQsS2goZSx0LkYpfSkubyhmdW5jdGlvbigpe2UuY3x8KGUuYz1uKX0pKSx0aGlzLmIuYWRkTGlzdGVuZXIoSGgoImxvY2FsIiksdGhpcy5hLG0odGhpcy5nLHRoaXMpKX1mdW5jdGlvbiBLaCh0LGUpe3ZhciBuLGEscj1bXTtmb3IobiBpbiBLdSlLdVtuXSE9PWUmJnIucHVzaChRdSh0LmIsSGgoS3Vbbl0pLHQuYSkpO3JldHVybiByLnB1c2goUXUodC5iLFdoLHQuYSkpLGE9cixuZXcgZmUoZnVuY3Rpb24obixlKXt2YXIgcj1hLmxlbmd0aCxpPVtdO2lmKHIpZm9yKHZhciB0PWZ1bmN0aW9uKHQsZSl7ci0tLGlbdF09ZSwwPT1yJiZuKGkpfSxvPWZ1bmN0aW9uKHQpe2UodCl9LHM9MDtzPGEubGVuZ3RoO3MrKylfZShhW3NdLGIodCxzKSxvKTtlbHNlIG4oaSl9KX1CaC5wcm90b3R5cGUuZz1mdW5jdGlvbigpe3ZhciBlPXRoaXMsbj1IaCgibG9jYWwiKTtZaCh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGJlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBlLmMmJiJsb2NhbCIhPWUuYy5GP2UuYi5nZXQobixlLmEpOm51bGx9KS50aGVuKGZ1bmN0aW9uKHQpe2lmKHQpcmV0dXJuIEtoKGUsImxvY2FsIikudGhlbihmdW5jdGlvbigpe2UuYz1ufSl9KX0pfTt2YXIgV2g9e25hbWU6InBlcnNpc3RlbmNlIixGOiJzZXNzaW9uIn07ZnVuY3Rpb24gSGgodCl7cmV0dXJue25hbWU6ImF1dGhVc2VyIixGOnR9fWZ1bmN0aW9uIEdoKHQsZSl7cmV0dXJuIFloKHQsZnVuY3Rpb24oKXtyZXR1cm4gdC5iLnNldCh0LmMsZS53KCksdC5hKX0pfWZ1bmN0aW9uIHpoKHQpe3JldHVybiBZaCh0LGZ1bmN0aW9uKCl7cmV0dXJuIFF1KHQuYix0LmMsdC5hKX0pfWZ1bmN0aW9uIFFoKHQsZSxuKXtyZXR1cm4gWWgodCxmdW5jdGlvbigpe3JldHVybiB0LmIuZ2V0KHQuYyx0LmEpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQmJmUmJih0LmF1dGhEb21haW49ZSksdCYmbiYmKHQuZW11bGF0b3JDb25maWc9biksVWgodHx8e30pfSl9KX1mdW5jdGlvbiBZaCh0LGUpe3JldHVybiB0LmY9dC5mLnRoZW4oZSxlKSx0LmZ9ZnVuY3Rpb24gWGgodCl7aWYodGhpcy5sPSExLGpyKHRoaXMsInNldHRpbmdzIixuZXcgVmMpLGpyKHRoaXMsImFwcCIsdCksIXRoaXMuYXBwLm9wdGlvbnN8fCF0aGlzLmFwcC5vcHRpb25zLmFwaUtleSl0aHJvdyBuZXcgSSgiaW52YWxpZC1hcGkta2V5Iik7dmFyIG4sZSxyLGksbyxzO3Q9WGwuU0RLX1ZFUlNJT04/Z3IoWGwuU0RLX1ZFUlNJT04pOm51bGwsdGhpcy5hPW5ldyBxcyh0aGlzLmFwcC5vcHRpb25zJiZ0aGlzLmFwcC5vcHRpb25zLmFwaUtleSxBKEUpLHQpLHRoaXMuUj1bXSx0aGlzLnM9W10sdGhpcy5PPVtdLHRoaXMuaGI9WGwuSU5URVJOQUwuY3JlYXRlU3Vic2NyaWJlKG0odGhpcy56Yyx0aGlzKSksdGhpcy5YPXZvaWQgMCx0aGlzLmJjPVhsLklOVEVSTkFMLmNyZWF0ZVN1YnNjcmliZShtKHRoaXMuQWMsdGhpcykpLHJsKHRoaXMsbnVsbCksdGhpcy5pPW5ldyBCaCh0aGlzLmFwcC5vcHRpb25zLmFwaUtleSsiOiIrdGhpcy5hcHAubmFtZSksdGhpcy5EPW5ldyBqaCh0aGlzLmFwcC5vcHRpb25zLmFwaUtleSsiOiIrdGhpcy5hcHAubmFtZSksdGhpcy4kPXVsKHRoaXMsKGU9KG49dGhpcykuYXBwLm9wdGlvbnMuYXV0aERvbWFpbix0PWZ1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuYi5nZXQocWgsdC5hKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0JiZlJiYodC5hdXRoRG9tYWluPWUpLFVoKHR8fHt9KX0pfShlLkQsZS5hcHAub3B0aW9ucy5hdXRoRG9tYWluKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybihlLm09dCkmJih0LmhhPWUuRCksVmgoZS5EKX0pO3JldHVybiB1bChlLHQpfShuKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFFoKG4uaSxlLG4uUCl9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlPyhlLmhhPW4uRCxuLm0mJihuLm0uZ2F8fG51bGwpPT0oZS5nYXx8bnVsbCk/ZTplLnJlbG9hZCgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gR2gobi5pLGUpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZX0pfSkubyhmdW5jdGlvbih0KXtyZXR1cm4iYXV0aC9uZXR3b3JrLXJlcXVlc3QtZmFpbGVkIj09dC5jb2RlP2U6emgobi5pKX0pKTpudWxsfSkudGhlbihmdW5jdGlvbih0KXtybChuLHR8fG51bGwpfSksdWwobix0KSkpLHRoaXMuaD11bCh0aGlzLChyPXRoaXMpLiQudGhlbihmdW5jdGlvbigpe3JldHVybiBlbChyKX0pLm8oZnVuY3Rpb24oKXt9KS50aGVuKGZ1bmN0aW9uKCl7aWYoIXIubClyZXR1cm4gci5qYSgpfSkubyhmdW5jdGlvbigpe30pLnRoZW4oZnVuY3Rpb24oKXt2YXIgdDtyLmx8fChyLmJhPSEwLCh0PXIuaSkuYi5hZGRMaXN0ZW5lcihIaCgibG9jYWwiKSx0LmEsci5qYSkpfSkpLHRoaXMuYmE9ITEsdGhpcy5qYT1tKHRoaXMuWmMsdGhpcyksdGhpcy5CYT1tKHRoaXMuZGEsdGhpcyksdGhpcy55YT1tKHRoaXMubWMsdGhpcyksdGhpcy56YT1tKHRoaXMud2MsdGhpcyksdGhpcy5BYT1tKHRoaXMueGMsdGhpcyksdGhpcy5iPW51bGwsbz0oaT10aGlzKS5hcHAub3B0aW9ucy5hdXRoRG9tYWluLHM9aS5hcHAub3B0aW9ucy5hcGlLZXksbyYmd3IoKSYmKGkuT2E9aS4kLnRoZW4oZnVuY3Rpb24oKXt2YXIgdDtpZighaS5sKXJldHVybiBpLmI9eGMobyxzLGkuYXBwLm5hbWUsaS5QKSxFYyhpLmIsaSksb2woaSkmJndoKG9sKGkpKSxpLm0mJih3aChpLm0pLCh0PWkubSkud2EoaS5sYSgpKSxsaCh0LGkpLHBoKHQ9aS5tLGkuSiksZGgodCxpKSxRcygodD1pLm0pLmEsaS5QKSxmaCh0LGkpLGkubT1udWxsKSxpLmJ9KSksdGhpcy5JTlRFUk5BTD17fSx0aGlzLklOVEVSTkFMLmRlbGV0ZT1tKHRoaXMuZGVsZXRlLHRoaXMpLHRoaXMuSU5URVJOQUwubG9nRnJhbWV3b3JrPW0odGhpcy5HYyx0aGlzKSx0aGlzLnU9MCxsbi5jYWxsKHRoaXMpLHQ9dGhpcyxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwibGMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYSgpfSxzZXQ6ZnVuY3Rpb24odCl7dGhpcy53YSh0KX0sZW51bWVyYWJsZTohMX0pLHQuYWE9bnVsbCxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwidGkiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5UKCl9LHNldDpmdW5jdGlvbih0KXt0aGlzLnliKHQpfSxlbnVtZXJhYmxlOiExfSksdC5TPW51bGwsT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsImVtdWxhdG9yQ29uZmlnIix7Z2V0OmZ1bmN0aW9uKCl7dmFyIHQ7cmV0dXJuIHQ9dGhpcy5QP1ZyKHtwcm90b2NvbDoodD1rbih0aGlzLlAudXJsKSkuYyxob3N0OnQuYSxwb3J0OnQuZyxvcHRpb25zOlZyKHtkaXNhYmxlV2FybmluZ3M6dGhpcy5QLmVjfSl9KTpudWxsfSxlbnVtZXJhYmxlOiExfSksdGhpcy5KPVtdLHRoaXMuUD1udWxsfWZ1bmN0aW9uIEpoKHQpe3FlLmNhbGwodGhpcywibGFuZ3VhZ2VDb2RlQ2hhbmdlZCIpLHRoaXMuaD10fWZ1bmN0aW9uICRoKHQpe3FlLmNhbGwodGhpcywiZW11bGF0b3JDb25maWdDaGFuZ2VkIiksdGhpcy5jPXR9ZnVuY3Rpb24gWmgodCl7cWUuY2FsbCh0aGlzLCJmcmFtZXdvcmtDaGFuZ2VkIiksdGhpcy5mPXR9ZnVuY3Rpb24gdGwodCl7cmV0dXJuIHQuT2F8fHdlKG5ldyBJKCJhdXRoLWRvbWFpbi1jb25maWctcmVxdWlyZWQiKSl9ZnVuY3Rpb24gZWwodCl7aWYoIXdyKCkpcmV0dXJuIHdlKG5ldyBJKCJvcGVyYXRpb24tbm90LXN1cHBvcnRlZC1pbi10aGlzLWVudmlyb25tZW50IikpO3ZhciBlPXRsKHQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdC5iLnFhKCl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0P1ZyKHQpOm51bGx9KTtyZXR1cm4gdWwodCxlKX1mdW5jdGlvbiBubChvLHMpe3ZhciBhPXt9O3JldHVybiBhLmFwaUtleT1vLmFwcC5vcHRpb25zLmFwaUtleSxhLmF1dGhEb21haW49by5hcHAub3B0aW9ucy5hdXRoRG9tYWluLGEuYXBwTmFtZT1vLmFwcC5uYW1lLG8uUCYmKGEuZW11bGF0b3JDb25maWc9by5QKSxvLiQudGhlbihmdW5jdGlvbigpe3JldHVybiB0PWEsZT1zLG49by5ELHI9by5HYSgpLGk9bmV3IGhoKHQsZSksbiYmKGkuaGE9biksciYmcGgoaSxyKSxpLnJlbG9hZCgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaX0pO3ZhciB0LGUsbixyLGl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBvbChvKSYmdC51aWQ9PW9sKG8pLnVpZD9BaChvbChvKSx0KToocmwobyx0KSx3aCh0KSksby5kYSh0KX0pLnRoZW4oZnVuY3Rpb24oKXthbChvKX0pfWZ1bmN0aW9uIHJsKHQsZSl7dmFyIG4scjtvbCh0KSYmKG49b2wodCkscj10LkJhLEgobi5TLGZ1bmN0aW9uKHQpe3JldHVybiB0PT1yfSksZW4ob2wodCksInRva2VuQ2hhbmdlZCIsdC55YSksZW4ob2wodCksInVzZXJEZWxldGVkIix0LnphKSxlbihvbCh0KSwidXNlckludmFsaWRhdGVkIix0LkFhKSx5aChvbCh0KSkpLGUmJihlLlMucHVzaCh0LkJhKSwkZShlLCJ0b2tlbkNoYW5nZWQiLHQueWEpLCRlKGUsInVzZXJEZWxldGVkIix0LnphKSwkZShlLCJ1c2VySW52YWxpZGF0ZWQiLHQuQWEpLDA8dC51JiZnaChlKSksanIodCwiY3VycmVudFVzZXIiLGUpLGUmJihlLndhKHQubGEoKSksbGgoZSx0KSxwaChlLHQuSiksZGgoZSx0KSxRcyhlLmEsdC5QKSxmaChlLHQpKX1mdW5jdGlvbiBpbChuLHQpe3ZhciBlPW51bGwscj1udWxsO3JldHVybiB1bChuLHQudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gZT1Bbyh0KSxyPWppKHQpLG5sKG4sdCl9LGZ1bmN0aW9uKHQpe3ZhciBlPW51bGw7dGhyb3coZT10JiYiYXV0aC9tdWx0aS1mYWN0b3ItYXV0aC1yZXF1aXJlZCI9PT10LmNvZGU/WWModC53KCksbixtKG4ua2MsbikpOmUpfHx0fSkudGhlbihmdW5jdGlvbigpe3JldHVybiBWcih7dXNlcjpvbChuKSxjcmVkZW50aWFsOmUsYWRkaXRpb25hbFVzZXJJbmZvOnIsb3BlcmF0aW9uVHlwZToic2lnbkluIn0pfSkpfWZ1bmN0aW9uIG9sKHQpe3JldHVybiB0LmN1cnJlbnRVc2VyfWZ1bmN0aW9uIHNsKHQpe3JldHVybiBvbCh0KSYmb2wodCkuX2xhdHx8bnVsbH1mdW5jdGlvbiBhbCh0KXtpZih0LmJhKXtmb3IodmFyIGU9MDtlPHQucy5sZW5ndGg7ZSsrKXQuc1tlXSYmdC5zW2VdKHNsKHQpKTtpZih0LlghPT10LmdldFVpZCgpJiZ0Lk8ubGVuZ3RoKWZvcih0Llg9dC5nZXRVaWQoKSxlPTA7ZTx0Lk8ubGVuZ3RoO2UrKyl0Lk9bZV0mJnQuT1tlXShzbCh0KSl9fWZ1bmN0aW9uIHVsKHQsZSl7cmV0dXJuIHQuUi5wdXNoKGUpLGUub2EoZnVuY3Rpb24oKXtXKHQuUixlKX0pLGV9ZnVuY3Rpb24gY2woKXt9ZnVuY3Rpb24gaGwoKXt0aGlzLmE9e30sdGhpcy5iPTFlMTJ9QmgucHJvdG90eXBlLnhiPWZ1bmN0aW9uKGUpe3ZhciBuPW51bGwscj10aGlzO3JldHVybiBmdW5jdGlvbih0KXt2YXIgZT1uZXcgSSgiaW52YWxpZC1wZXJzaXN0ZW5jZS10eXBlIiksbj1uZXcgSSgidW5zdXBwb3J0ZWQtcGVyc2lzdGVuY2UtdHlwZSIpO3Q6e2ZvcihyIGluIEt1KWlmKEt1W3JdPT10KXt2YXIgcj0hMDticmVhayB0fXI9ITF9aWYoIXJ8fCJzdHJpbmciIT10eXBlb2YgdCl0aHJvdyBlO3N3aXRjaChocigpKXtjYXNlIlJlYWN0TmF0aXZlIjppZigic2Vzc2lvbiI9PT10KXRocm93IG47YnJlYWs7Y2FzZSJOb2RlIjppZigibm9uZSIhPT10KXRocm93IG47YnJlYWs7Y2FzZSJXb3JrZXIiOmlmKCJzZXNzaW9uIj09PXR8fCFJdSgpJiYibm9uZSIhPT10KXRocm93IG47YnJlYWs7ZGVmYXVsdDppZighYnIoKSYmIm5vbmUiIT09dCl0aHJvdyBufX0oZSksWWgodGhpcyxmdW5jdGlvbigpe3JldHVybiBlIT1yLmMuRj9yLmIuZ2V0KHIuYyxyLmEpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIG49dCxLaChyLGUpfSkudGhlbihmdW5jdGlvbigpe2lmKHIuYz1IaChlKSxuKXJldHVybiByLmIuc2V0KHIuYyxuLHIuYSl9KTpiZSgpfSl9LHcoWGgsbG4pLHcoSmgscWUpLHcoJGgscWUpLHcoWmgscWUpLCh0PVhoLnByb3RvdHlwZSkueGI9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9dGhpcy5pLnhiKHQpLHVsKHRoaXMsdCl9LHQud2E9ZnVuY3Rpb24odCl7dGhpcy5hYT09PXR8fHRoaXMubHx8KHRoaXMuYWE9dCx6cyh0aGlzLmEsdGhpcy5hYSksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBKaCh0aGlzLmxhKCkpKSl9LHQubGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hYX0sdC5mZD1mdW5jdGlvbigpe3ZhciB0PWwubmF2aWdhdG9yO3RoaXMud2EodCYmKHQubGFuZ3VhZ2VzJiZ0Lmxhbmd1YWdlc1swXXx8dC5sYW5ndWFnZXx8dC51c2VyTGFuZ3VhZ2UpfHxudWxsKX0sdC5nZD1mdW5jdGlvbih0LGUpe2lmKCF0aGlzLlApe2lmKCEvXmh0dHBzPzpcL1wvLy50ZXN0KHQpKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsIkVtdWxhdG9yIFVSTCBtdXN0IHN0YXJ0IHdpdGggYSB2YWxpZCBzY2hlbWUgKGh0dHA6Ly8gb3IgaHR0cHM6Ly8pLiIpO2U9ISFlJiYhIWUuZGlzYWJsZVdhcm5pbmdzLG49ZSwidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBjb25zb2xlLmluZm8mJmNvbnNvbGUuaW5mbygiV0FSTklORzogWW91IGFyZSB1c2luZyB0aGUgQXV0aCBFbXVsYXRvciwgd2hpY2ggaXMgaW50ZW5kZWQgZm9yIGxvY2FsIHRlc3Rpbmcgb25seS4gIERvIG5vdCB1c2Ugd2l0aCBwcm9kdWN0aW9uIGNyZWRlbnRpYWxzLiIpLGwuZG9jdW1lbnQmJiFuJiZzcigpLnRoZW4oZnVuY3Rpb24oKXt2YXIgdD1sLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuaW5uZXJUZXh0PSJSdW5uaW5nIGluIGVtdWxhdG9yIG1vZGUuIERvIG5vdCB1c2Ugd2l0aCBwcm9kdWN0aW9uIGNyZWRlbnRpYWxzLiIsdC5zdHlsZS5wb3NpdGlvbj0iZml4ZWQiLHQuc3R5bGUud2lkdGg9IjEwMCUiLHQuc3R5bGUuYmFja2dyb3VuZENvbG9yPSIjZmZmZmZmIix0LnN0eWxlLmJvcmRlcj0iLjFlbSBzb2xpZCAjMDAwMDAwIix0LnN0eWxlLmNvbG9yPSIjZmYwMDAwIix0LnN0eWxlLmJvdHRvbT0iMHB4Iix0LnN0eWxlLmxlZnQ9IjBweCIsdC5zdHlsZS5tYXJnaW49IjBweCIsdC5zdHlsZS56SW5kZXg9MWU0LHQuc3R5bGUudGV4dEFsaWduPSJjZW50ZXIiLHQuY2xhc3NMaXN0LmFkZCgiZmlyZWJhc2UtZW11bGF0b3Itd2FybmluZyIpLGwuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KX0pLHRoaXMuUD17dXJsOnQsZWM6ZX0sdGhpcy5zZXR0aW5ncy5pYj0hMCxRcyh0aGlzLmEsdGhpcy5QKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3ICRoKHRoaXMuUCkpfXZhciBufSx0LkdjPWZ1bmN0aW9uKHQpe3RoaXMuSi5wdXNoKHQpLFhzKHRoaXMuYSxYbC5TREtfVkVSU0lPTj9ncihYbC5TREtfVkVSU0lPTix0aGlzLkopOm51bGwpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgWmgodGhpcy5KKSl9LHQuR2E9ZnVuY3Rpb24oKXtyZXR1cm4geih0aGlzLkopfSx0LnliPWZ1bmN0aW9uKHQpe3RoaXMuUz09PXR8fHRoaXMubHx8KHRoaXMuUz10LHRoaXMuYS5iPXRoaXMuUyl9LHQuVD1mdW5jdGlvbigpe3JldHVybiB0aGlzLlN9LHQudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJue2FwaUtleTp0aGlzLmFwcC5vcHRpb25zLmFwaUtleSxhdXRoRG9tYWluOnRoaXMuYXBwLm9wdGlvbnMuYXV0aERvbWFpbixhcHBOYW1lOnRoaXMuYXBwLm5hbWUsY3VycmVudFVzZXI6b2wodGhpcykmJm9sKHRoaXMpLncoKX19LHQuRmI9ZnVuY3Rpb24odCxlKXtzd2l0Y2godCl7Y2FzZSJ1bmtub3duIjpjYXNlInNpZ25JblZpYVJlZGlyZWN0IjpyZXR1cm4hMDtjYXNlInNpZ25JblZpYVBvcHVwIjpyZXR1cm4gdGhpcy5nPT1lJiYhIXRoaXMuZjtkZWZhdWx0OnJldHVybiExfX0sdC5uYT1mdW5jdGlvbih0LGUsbixyKXsic2lnbkluVmlhUG9wdXAiPT10JiZ0aGlzLmc9PXImJihuJiZ0aGlzLkM/dGhpcy5DKG4pOmUmJiFuJiZ0aGlzLmYmJnRoaXMuZihlKSx0aGlzLmMmJih0aGlzLmMuY2FuY2VsKCksdGhpcy5jPW51bGwpLGRlbGV0ZSB0aGlzLmYsZGVsZXRlIHRoaXMuQyl9LHQuRmE9ZnVuY3Rpb24odCxlKXtyZXR1cm4ic2lnbkluVmlhUmVkaXJlY3QiPT10fHwic2lnbkluVmlhUG9wdXAiPT10JiZ0aGlzLmc9PWUmJnRoaXMuZj9tKHRoaXMuaWMsdGhpcyk6bnVsbH0sdC5pYz1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT10aGlzLG89e3JlcXVlc3RVcmk6dCxwb3N0Qm9keTpyLHNlc3Npb25JZDplLHRlbmFudElkOm59O3JldHVybiB0aGlzLmMmJih0aGlzLmMuY2FuY2VsKCksdGhpcy5jPW51bGwpLGkuJC50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGlsKGksaGEoaS5hLG8pKX0pfSx0LlhjPWZ1bmN0aW9uKGUpe2lmKCF3cigpKXJldHVybiB3ZShuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIpKTt2YXIgbj10aGlzLHQ9VWkoZS5wcm92aWRlcklkKSxyPU5yKCksaT1udWxsLG89cnIoaT0oIVRyKCl8fHVyKCkpJiZ0aGlzLmFwcC5vcHRpb25zLmF1dGhEb21haW4mJmUuaXNPQXV0aFByb3ZpZGVyP3V1KHRoaXMuYXBwLm9wdGlvbnMuYXV0aERvbWFpbix0aGlzLmFwcC5vcHRpb25zLmFwaUtleSx0aGlzLmFwcC5uYW1lLCJzaWduSW5WaWFQb3B1cCIsZSxudWxsLHIsWGwuU0RLX1ZFUlNJT058fG51bGwsbnVsbCxudWxsLHRoaXMuVCgpLHRoaXMuUCk6aSx0JiZ0LnVhLHQmJnQudGEpO3JldHVybiB1bCh0aGlzLHQ9dGwodGhpcykudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gQWModCxvLCJzaWduSW5WaWFQb3B1cCIsZSxyLCEhaSxuLlQoKSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBmZShmdW5jdGlvbih0LGUpe24ubmEoInNpZ25JblZpYVBvcHVwIixudWxsLG5ldyBJKCJjYW5jZWxsZWQtcG9wdXAtcmVxdWVzdCIpLG4uZyksbi5mPXQsbi5DPWUsbi5nPXIsbi5jPVBjKG4uYixuLCJzaWduSW5WaWFQb3B1cCIsbyxyKX0pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbyYmbnIobyksdD9Wcih0KTpudWxsfSkubyhmdW5jdGlvbih0KXt0aHJvdyBvJiZucihvKSx0fSkpfSx0LlljPWZ1bmN0aW9uKHQpe2lmKCF3cigpKXJldHVybiB3ZShuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIpKTt2YXIgZT10aGlzO3JldHVybiB1bCh0aGlzLHRsKHRoaXMpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gWWgodD1lLmksZnVuY3Rpb24oKXtyZXR1cm4gdC5iLnNldChXaCx0LmMuRix0LmEpfSk7dmFyIHR9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFJjKGUuYiwic2lnbkluVmlhUmVkaXJlY3QiLHQsdm9pZCAwLGUuVCgpKX0pKX0sdC5xYT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIGVsKHRoaXMpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGUuYiYmRmMoZS5iLmIpLHR9KS5vKGZ1bmN0aW9uKHQpe3Rocm93IGUuYiYmRmMoZS5iLmIpLHR9KX0sdC5kZD1mdW5jdGlvbih0KXtpZighdClyZXR1cm4gd2UobmV3IEkoIm51bGwtdXNlciIpKTtpZih0aGlzLlMhPXQudGVuYW50SWQpcmV0dXJuIHdlKG5ldyBJKCJ0ZW5hbnQtaWQtbWlzbWF0Y2giKSk7dmFyIGU9dGhpcyxuPXt9O24uYXBpS2V5PXRoaXMuYXBwLm9wdGlvbnMuYXBpS2V5LG4uYXV0aERvbWFpbj10aGlzLmFwcC5vcHRpb25zLmF1dGhEb21haW4sbi5hcHBOYW1lPXRoaXMuYXBwLm5hbWU7dmFyIHIsaSxvLHMsYSx1PShyPXQsaT1uLG89ZS5ELHM9ZS5HYSgpLGE9ci5iLChuPXt9KVtCc109YS5iJiZhLmIudG9TdHJpbmcoKSxuLnJlZnJlc2hUb2tlbj1hLmEsaT1uZXcgaGgoaXx8e2FwaUtleTpyLmwsYXV0aERvbWFpbjpyLnMsYXBwTmFtZTpyLm19LG4pLG8mJihpLmhhPW8pLHMmJnBoKGkscyksQWgoaSxyKSxpKTtyZXR1cm4gdWwodGhpcyx0aGlzLmgudGhlbihmdW5jdGlvbigpe2lmKGUuYXBwLm9wdGlvbnMuYXBpS2V5IT10LmwpcmV0dXJuIHUucmVsb2FkKCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG9sKGUpJiZ0LnVpZD09b2woZSkudWlkPyhBaChvbChlKSx0KSxlLmRhKHQpKToocmwoZSx1KSx3aCh1KSxlLmRhKHUpKX0pLnRoZW4oZnVuY3Rpb24oKXthbChlKX0pKX0sdC5BYj1mdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10aGlzLmgudGhlbihmdW5jdGlvbigpe3JldHVybiB0LmImJkZjKHQuYi5iKSxvbCh0KT8ocmwodCxudWxsKSx6aCh0LmkpLnRoZW4oZnVuY3Rpb24oKXthbCh0KX0pKTpiZSgpfSk7cmV0dXJuIHVsKHRoaXMsZSl9LHQuWmM9ZnVuY3Rpb24oKXt2YXIgcj10aGlzO3JldHVybiBRaCh0aGlzLmksdGhpcy5hcHAub3B0aW9ucy5hdXRoRG9tYWluKS50aGVuKGZ1bmN0aW9uKHQpe2lmKCFyLmwpe3ZhciBlLG47aWYoKGU9b2wocikmJnQpJiYoZT1vbChyKS51aWQsbj10LnVpZCxlPW51bGwhPWUmJiIiIT09ZSYmbnVsbCE9biYmIiIhPT1uJiZlPT1uKSxlKXJldHVybiBBaChvbChyKSx0KSxvbChyKS5JKCk7KG9sKHIpfHx0KSYmKHJsKHIsdCksdCYmKHdoKHQpLHQuaGE9ci5EKSxyLmImJkVjKHIuYixyKSxhbChyKSl9fSl9LHQuZGE9ZnVuY3Rpb24odCl7cmV0dXJuIEdoKHRoaXMuaSx0KX0sdC5tYz1mdW5jdGlvbigpe2FsKHRoaXMpLHRoaXMuZGEob2wodGhpcykpfSx0LndjPWZ1bmN0aW9uKCl7dGhpcy5BYigpfSx0LnhjPWZ1bmN0aW9uKCl7dGhpcy5BYigpfSx0LmtjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuaC50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGlsKGUsYmUodCkpfSl9LHQuemM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpczt0aGlzLmFkZEF1dGhUb2tlbkxpc3RlbmVyKGZ1bmN0aW9uKCl7dC5uZXh0KG9sKGUpKX0pfSx0LkFjPWZ1bmN0aW9uKHQpe3ZhciBlLG4scj10aGlzO249ZnVuY3Rpb24oKXt0Lm5leHQob2wocikpfSwoZT10aGlzKS5PLnB1c2gobiksdWwoZSxlLmgudGhlbihmdW5jdGlvbigpeyFlLmwmJksoZS5PLG4pJiZlLlghPT1lLmdldFVpZCgpJiYoZS5YPWUuZ2V0VWlkKCksbihzbChlKSkpfSkpfSx0LkljPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybiB0aGlzLmJhJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCl7ImZ1bmN0aW9uIj09dHlwZW9mIHQ/dChvbChyKSk6ImZ1bmN0aW9uIj09dHlwZW9mIHQubmV4dCYmdC5uZXh0KG9sKHIpKX0pLHRoaXMuaGIodCxlLG4pfSx0LkhjPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybiB0aGlzLmJhJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCl7ci5YPXIuZ2V0VWlkKCksImZ1bmN0aW9uIj09dHlwZW9mIHQ/dChvbChyKSk6ImZ1bmN0aW9uIj09dHlwZW9mIHQubmV4dCYmdC5uZXh0KG9sKHIpKX0pLHRoaXMuYmModCxlLG4pfSx0Lm5jPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj10aGlzLmgudGhlbihmdW5jdGlvbigpe3JldHVybiBvbChlKT9vbChlKS5JKHQpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJue2FjY2Vzc1Rva2VuOnR9fSk6bnVsbH0pO3JldHVybiB1bCh0aGlzLG4pfSx0LlRjPWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXM7cmV0dXJuIHRoaXMuaC50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGlsKG4semEobi5hLFZhLHt0b2tlbjp0fSkpfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT10LnVzZXI7cmV0dXJuIE5oKGUsImlzQW5vbnltb3VzIiwhMSksbi5kYShlKSx0fSl9LHQuVWM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLmgudGhlbihmdW5jdGlvbigpe3JldHVybiBpbChuLHphKG4uYSxCYSx7ZW1haWw6dCxwYXNzd29yZDplfSkpfSl9LHQuZGM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLmgudGhlbihmdW5jdGlvbigpe3JldHVybiBpbChuLHphKG4uYSxnYSx7ZW1haWw6dCxwYXNzd29yZDplfSkpfSl9LHQuJGE9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5oLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaWwoZSx0LmthKGUuYSkpfSl9LHQuU2M9ZnVuY3Rpb24odCl7cmV0dXJuIEZyKCJmaXJlYmFzZS5hdXRoLkF1dGgucHJvdG90eXBlLnNpZ25JbkFuZFJldHJpZXZlRGF0YVdpdGhDcmVkZW50aWFsIGlzIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgZmlyZWJhc2UuYXV0aC5BdXRoLnByb3RvdHlwZS5zaWduSW5XaXRoQ3JlZGVudGlhbCBpbnN0ZWFkLiIpLHRoaXMuJGEodCl9LHQuemI9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLmgudGhlbihmdW5jdGlvbigpe3ZhciB0PW9sKG4pO2lmKHQmJnQuaXNBbm9ueW1vdXMpe3ZhciBlPVZyKHtwcm92aWRlcklkOm51bGwsaXNOZXdVc2VyOiExfSk7cmV0dXJuIFZyKHt1c2VyOnQsY3JlZGVudGlhbDpudWxsLGFkZGl0aW9uYWxVc2VySW5mbzplLG9wZXJhdGlvblR5cGU6InNpZ25JbiJ9KX1yZXR1cm4gaWwobixuLmEuemIoKSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT10LnVzZXI7cmV0dXJuIE5oKGUsImlzQW5vbnltb3VzIiwhMCksbi5kYShlKSx0fSl9KX0sdC5nZXRVaWQ9ZnVuY3Rpb24oKXtyZXR1cm4gb2wodGhpcykmJm9sKHRoaXMpLnVpZHx8bnVsbH0sdC5jYz1mdW5jdGlvbih0KXt0aGlzLmFkZEF1dGhUb2tlbkxpc3RlbmVyKHQpLHRoaXMudSsrLDA8dGhpcy51JiZvbCh0aGlzKSYmZ2gob2wodGhpcykpfSx0LlBjPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7aih0aGlzLnMsZnVuY3Rpb24odCl7dD09ZSYmbi51LS19KSx0aGlzLnU8MCYmKHRoaXMudT0wKSwwPT10aGlzLnUmJm9sKHRoaXMpJiZ5aChvbCh0aGlzKSksdGhpcy5yZW1vdmVBdXRoVG9rZW5MaXN0ZW5lcihlKX0sdC5hZGRBdXRoVG9rZW5MaXN0ZW5lcj1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3RoaXMucy5wdXNoKHQpLHVsKHRoaXMsdGhpcy5oLnRoZW4oZnVuY3Rpb24oKXtlLmx8fEsoZS5zLHQpJiZ0KHNsKGUpKX0pKX0sdC5yZW1vdmVBdXRoVG9rZW5MaXN0ZW5lcj1mdW5jdGlvbihlKXtIKHRoaXMucyxmdW5jdGlvbih0KXtyZXR1cm4gdD09ZX0pfSx0LmRlbGV0ZT1mdW5jdGlvbigpe3RoaXMubD0hMDtmb3IodmFyIHQ9MDt0PHRoaXMuUi5sZW5ndGg7dCsrKXRoaXMuUlt0XS5jYW5jZWwoImFwcC1kZWxldGVkIik7cmV0dXJuIHRoaXMuUj1bXSx0aGlzLmkmJih0PXRoaXMuaSkuYi5yZW1vdmVMaXN0ZW5lcihIaCgibG9jYWwiKSx0LmEsdGhpcy5qYSksdGhpcy5iJiYoU2ModGhpcy5iLHRoaXMpLEZjKHRoaXMuYi5iKSksUHJvbWlzZS5yZXNvbHZlKCl9LHQuaGM9ZnVuY3Rpb24odCl7cmV0dXJuIHVsKHRoaXMsemEodGhpcy5hLHlhLHtpZGVudGlmaWVyOnQsY29udGludWVVcmk6X3IoKT9abigpOiJodHRwOi8vbG9jYWxob3N0In0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuc2lnbmluTWV0aG9kc3x8W119KSl9LHQuQmM9ZnVuY3Rpb24odCl7cmV0dXJuISFJbyh0KX0sdC53Yj1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXM7cmV0dXJuIHVsKHRoaXMsYmUoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIHQ9bmV3IGJpKG4pO2lmKCF0LmMpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIixJaSsiIG11c3QgYmUgdHJ1ZSB3aGVuIHNlbmRpbmcgc2lnbiBpbiBsaW5rIHRvIGVtYWlsIik7cmV0dXJuIGtpKHQpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gci5hLndiKGUsdCl9KS50aGVuKGZ1bmN0aW9uKCl7fSkpfSx0LmpkPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLlJhKHQpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuZGF0YS5lbWFpbH0pfSx0Lm5iPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHVsKHRoaXMsdGhpcy5hLm5iKHQsZSkudGhlbihmdW5jdGlvbigpe30pKX0sdC5SYT1mdW5jdGlvbih0KXtyZXR1cm4gdWwodGhpcyx0aGlzLmEuUmEodCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFhyKHQpfSkpfSx0LmpiPWZ1bmN0aW9uKHQpe3JldHVybiB1bCh0aGlzLHRoaXMuYS5qYih0KS50aGVuKGZ1bmN0aW9uKCl7fSkpfSx0LnZiPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gdWwodGhpcyxiZSgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwPT09dHx8dXQodCk/e306a2kobmV3IGJpKHQpKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIG4uYS52YihlLHQpfSkudGhlbihmdW5jdGlvbigpe30pKX0sdC5XYz1mdW5jdGlvbih0LGUpe3JldHVybiB1bCh0aGlzLEtjKHRoaXMsdCxlLG0odGhpcy4kYSx0aGlzKSkpfSx0LlZjPWZ1bmN0aW9uKG4scil7dmFyIGk9dGhpcztyZXR1cm4gdWwodGhpcyxiZSgpLnRoZW4oZnVuY3Rpb24oKXt2YXIgdD1yfHxabigpLGU9X28obix0KTtpZighKHQ9SW8odCkpKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsIkludmFsaWQgZW1haWwgbGluayEiKTtpZih0LnRlbmFudElkIT09aS5UKCkpdGhyb3cgbmV3IEkoInRlbmFudC1pZC1taXNtYXRjaCIpO3JldHVybiBpLiRhKGUpfSkpfSxjbC5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKCl7fSxjbC5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt9LGNsLnByb3RvdHlwZS5nZXRSZXNwb25zZT1mdW5jdGlvbigpe30sY2wucHJvdG90eXBlLmV4ZWN1dGU9ZnVuY3Rpb24oKXt9O3ZhciBsbD1udWxsO2Z1bmN0aW9uIGZsKHQsZSl7cmV0dXJuKGU9cGwoZSkpJiZ0LmFbZV18fG51bGx9ZnVuY3Rpb24gcGwodCl7cmV0dXJuKHQ9dm9pZCAwPT09dD8xZTEyOnQpP3QudG9TdHJpbmcoKTpudWxsfWZ1bmN0aW9uIGRsKHQsZSl7dGhpcy5nPSExLHRoaXMuYz1lLHRoaXMuYT10aGlzLmI9bnVsbCx0aGlzLmg9ImludmlzaWJsZSIhPT10aGlzLmMuc2l6ZSx0aGlzLmY9dGUodCk7dmFyIG49dGhpczt0aGlzLmk9ZnVuY3Rpb24oKXtuLmV4ZWN1dGUoKX0sdGhpcy5oP3RoaXMuZXhlY3V0ZSgpOiRlKHRoaXMuZiwiY2xpY2siLHRoaXMuaSl9ZnVuY3Rpb24gdmwodCl7aWYodC5nKXRocm93IEVycm9yKCJyZUNBUFRDSEEgbW9jayB3YXMgYWxyZWFkeSBkZWxldGVkISIpfWZ1bmN0aW9uIGdsKCl7fWZ1bmN0aW9uIHlsKCl7fWhsLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5hW3RoaXMuYi50b1N0cmluZygpXT1uZXcgZGwodCxlKSx0aGlzLmIrK30saGwucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKHQpe3ZhciBlPWZsKHRoaXMsdCk7dD1wbCh0KSxlJiZ0JiYoZS5kZWxldGUoKSxkZWxldGUgdGhpcy5hW3RdKX0saGwucHJvdG90eXBlLmdldFJlc3BvbnNlPWZ1bmN0aW9uKHQpe3JldHVybih0PWZsKHRoaXMsdCkpP3QuZ2V0UmVzcG9uc2UoKTpudWxsfSxobC5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbih0KXsodD1mbCh0aGlzLHQpKSYmdC5leGVjdXRlKCl9LGRsLnByb3RvdHlwZS5nZXRSZXNwb25zZT1mdW5jdGlvbigpe3JldHVybiB2bCh0aGlzKSx0aGlzLmJ9LGRsLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKCl7dmwodGhpcyk7dmFyIG49dGhpczt0aGlzLmF8fCh0aGlzLmE9c2V0VGltZW91dChmdW5jdGlvbigpe24uYj1mdW5jdGlvbigpe2Zvcih2YXIgdD01MCxlPVtdOzA8dDspZS5wdXNoKCIxMjM0NTY3ODkwYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIuY2hhckF0KE1hdGguZmxvb3IoNjIqTWF0aC5yYW5kb20oKSkpKSx0LS07cmV0dXJuIGUuam9pbigiIil9KCk7dmFyIHQ9bi5jLmNhbGxiYWNrLGU9bi5jWyJleHBpcmVkLWNhbGxiYWNrIl07aWYodCl0cnl7dChuLmIpfWNhdGNoKHQpe31uLmE9c2V0VGltZW91dChmdW5jdGlvbigpe2lmKG4uYT1udWxsLG4uYj1udWxsLGUpdHJ5e2UoKX1jYXRjaCh0KXt9bi5oJiZuLmV4ZWN1dGUoKX0sNmU0KX0sNTAwKSl9LGRsLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oKXt2bCh0aGlzKSx0aGlzLmc9ITAsY2xlYXJUaW1lb3V0KHRoaXMuYSksdGhpcy5hPW51bGwsZW4odGhpcy5mLCJjbGljayIsdGhpcy5pKX0sanIoZ2wsIkZBQ1RPUl9JRCIsInBob25lIikseWwucHJvdG90eXBlLmc9ZnVuY3Rpb24oKXtyZXR1cm4gYmUobGw9bGx8fG5ldyBobCl9LHlsLnByb3RvdHlwZS5jPWZ1bmN0aW9uKCl7fTt2YXIgbWw9bnVsbDtmdW5jdGlvbiBibCgpe3RoaXMuYj1sLmdyZWNhcHRjaGE/MS8wOjAsdGhpcy5mPW51bGwsdGhpcy5hPSJfX3JjYiIrTWF0aC5mbG9vcigxZTYqTWF0aC5yYW5kb20oKSkudG9TdHJpbmcoKX12YXIgd2w9bmV3IHB0KHl0LCJodHRwczovL3d3dy5nb29nbGUuY29tL3JlY2FwdGNoYS9hcGkuanM/b25sb2FkPSV7b25sb2FkfSZyZW5kZXI9ZXhwbGljaXQmaGw9JXtobH0iKSxfbD1uZXcgUnIoM2U0LDZlNCk7YmwucHJvdG90eXBlLmc9ZnVuY3Rpb24oaSl7dmFyIG89dGhpcztyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKHQsZSl7dmFyIHI9c2V0VGltZW91dChmdW5jdGlvbigpe2UobmV3IEkoIm5ldHdvcmstcmVxdWVzdC1mYWlsZWQiKSl9LF9sLmdldCgpKTshbC5ncmVjYXB0Y2hhfHxpIT09by5mJiYhby5iPyhsW28uYV09ZnVuY3Rpb24oKXt2YXIgbjtsLmdyZWNhcHRjaGE/KG8uZj1pLG49bC5ncmVjYXB0Y2hhLnJlbmRlcixsLmdyZWNhcHRjaGEucmVuZGVyPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ9bih0LGUpLG8uYisrLHR9LGNsZWFyVGltZW91dChyKSx0KGwuZ3JlY2FwdGNoYSkpOihjbGVhclRpbWVvdXQociksZShuZXcgSSgiaW50ZXJuYWwtZXJyb3IiKSkpLGRlbGV0ZSBsW28uYV19LGJlKERzKF90KHdsLHtvbmxvYWQ6by5hLGhsOml8fCIifSkpKS5vKGZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIpLGUobmV3IEkoImludGVybmFsLWVycm9yIiwiVW5hYmxlIHRvIGxvYWQgZXh0ZXJuYWwgcmVDQVBUQ0hBIGRlcGVuZGVuY2llcyEiKSl9KSk6KGNsZWFyVGltZW91dChyKSx0KGwuZ3JlY2FwdGNoYSkpfSl9LGJsLnByb3RvdHlwZS5jPWZ1bmN0aW9uKCl7dGhpcy5iLS19O3ZhciBJbD1udWxsO2Z1bmN0aW9uIFRsKHQsZSxuLHIsaSxvLHMpe2lmKGpyKHRoaXMsInR5cGUiLCJyZWNhcHRjaGEiKSx0aGlzLmM9dGhpcy5mPW51bGwsdGhpcy5EPSExLHRoaXMudj1lLHRoaXMuZz1udWxsLHM9cz9tbD1tbHx8bmV3IHlsOklsPUlsfHxuZXcgYmwsdGhpcy5tPXMsdGhpcy5hPW58fHt0aGVtZToibGlnaHQiLHR5cGU6ImltYWdlIn0sdGhpcy5oPVtdLHRoaXMuYVtDbF0pdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIiwic2l0ZWtleSBzaG91bGQgbm90IGJlIHByb3ZpZGVkIGZvciByZUNBUFRDSEEgYXMgb25lIGlzIGF1dG9tYXRpY2FsbHkgcHJvdmlzaW9uZWQgZm9yIHRoZSBjdXJyZW50IHByb2plY3QuIik7aWYodGhpcy5pPSJpbnZpc2libGUiPT09dGhpcy5hW05sXSwhbC5kb2N1bWVudCl0aHJvdyBuZXcgSSgib3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQtaW4tdGhpcy1lbnZpcm9ubWVudCIsIlJlY2FwdGNoYVZlcmlmaWVyIGlzIG9ubHkgc3VwcG9ydGVkIGluIGEgYnJvd3NlciBIVFRQL0hUVFBTIGVudmlyb25tZW50IHdpdGggRE9NIHN1cHBvcnQuIik7aWYoIXRlKGUpfHwhdGhpcy5pJiZ0ZShlKS5oYXNDaGlsZE5vZGVzKCkpdGhyb3cgbmV3IEkoImFyZ3VtZW50LWVycm9yIiwicmVDQVBUQ0hBIGNvbnRhaW5lciBpcyBlaXRoZXIgbm90IGZvdW5kIG9yIGFscmVhZHkgY29udGFpbnMgaW5uZXIgZWxlbWVudHMhIik7dGhpcy5zPW5ldyBxcyh0LG98fG51bGwsaXx8bnVsbCksdGhpcy51PXJ8fGZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O3ZhciBhPXRoaXM7dGhpcy5sPVtdO3ZhciB1PXRoaXMuYVtFbF07dGhpcy5hW0VsXT1mdW5jdGlvbih0KXt2YXIgZTtBbChhLHQpLCJmdW5jdGlvbiI9PXR5cGVvZiB1P3UodCk6InN0cmluZyIhPXR5cGVvZiB1fHwiZnVuY3Rpb24iPT10eXBlb2YoZT1tcih1LGwpKSYmZSh0KX07dmFyIGM9dGhpcy5hW1NsXTt0aGlzLmFbU2xdPWZ1bmN0aW9uKCl7dmFyIHQ7QWwoYSxudWxsKSwiZnVuY3Rpb24iPT10eXBlb2YgYz9jKCk6InN0cmluZyIhPXR5cGVvZiBjfHwiZnVuY3Rpb24iPT10eXBlb2YodD1tcihjLGwpKSYmdCgpfX12YXIgRWw9ImNhbGxiYWNrIixTbD0iZXhwaXJlZC1jYWxsYmFjayIsQ2w9InNpdGVrZXkiLE5sPSJzaXplIjtmdW5jdGlvbiBBbCh0LGUpe2Zvcih2YXIgbj0wO248dC5sLmxlbmd0aDtuKyspdHJ5e3QubFtuXShlKX1jYXRjaCh0KXt9fWZ1bmN0aW9uIGtsKHQsZSl7cmV0dXJuIHQuaC5wdXNoKGUpLGUub2EoZnVuY3Rpb24oKXtXKHQuaCxlKX0pLGV9ZnVuY3Rpb24gUmwodCl7aWYodC5EKXRocm93IG5ldyBJKCJpbnRlcm5hbC1lcnJvciIsIlJlY2FwdGNoYVZlcmlmaWVyIGluc3RhbmNlIGhhcyBiZWVuIGRlc3Ryb3llZC4iKX1mdW5jdGlvbiBQbCh0LGUsbil7dmFyIHI9ITE7dHJ5e3RoaXMuYj1ufHxYbC5hcHAoKX1jYXRjaCh0KXt0aHJvdyBuZXcgSSgiYXJndW1lbnQtZXJyb3IiLCJObyBmaXJlYmFzZS5hcHAuQXBwIGluc3RhbmNlIGlzIGN1cnJlbnRseSBpbml0aWFsaXplZC4iKX1pZighdGhpcy5iLm9wdGlvbnN8fCF0aGlzLmIub3B0aW9ucy5hcGlLZXkpdGhyb3cgbmV3IEkoImludmFsaWQtYXBpLWtleSIpO249dGhpcy5iLm9wdGlvbnMuYXBpS2V5O3ZhciBpPXRoaXMsbz1udWxsO3RyeXtvPXRoaXMuYi5hdXRoKCkuR2EoKX1jYXRjaCh0KXt9dHJ5e3I9dGhpcy5iLmF1dGgoKS5zZXR0aW5ncy5hcHBWZXJpZmljYXRpb25EaXNhYmxlZEZvclRlc3Rpbmd9Y2F0Y2godCl7fW89WGwuU0RLX1ZFUlNJT04/Z3IoWGwuU0RLX1ZFUlNJT04sbyk6bnVsbCxUbC5jYWxsKHRoaXMsbix0LGUsZnVuY3Rpb24oKXt0cnl7dmFyIGU9aS5iLmF1dGgoKS5sYSgpfWNhdGNoKHQpe2U9bnVsbH1yZXR1cm4gZX0sbyxBKEUpLHIpfWZ1bmN0aW9uIE9sKHQsZSxuLHIpe3Q6e249QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobik7Zm9yKHZhciBpPTAsbz0hMSxzPTA7czxlLmxlbmd0aDtzKyspaWYoZVtzXS5vcHRpb25hbClvPSEwO2Vsc2V7aWYobyl0aHJvdyBuZXcgSSgiaW50ZXJuYWwtZXJyb3IiLCJBcmd1bWVudCB2YWxpZGF0b3IgZW5jb3VudGVyZWQgYSByZXF1aXJlZCBhcmd1bWVudCBhZnRlciBhbiBvcHRpb25hbCBhcmd1bWVudC4iKTtpKyt9aWYobz1lLmxlbmd0aCxuLmxlbmd0aDxpfHxvPG4ubGVuZ3RoKXI9IkV4cGVjdGVkICIrKGk9PW8/MT09aT8iMSBhcmd1bWVudCI6aSsiIGFyZ3VtZW50cyI6aSsiLSIrbysiIGFyZ3VtZW50cyIpKyIgYnV0IGdvdCAiK24ubGVuZ3RoKyIuIjtlbHNle2ZvcihpPTA7aTxuLmxlbmd0aDtpKyspaWYobz1lW2ldLm9wdGlvbmFsJiZ2b2lkIDA9PT1uW2ldLCFlW2ldLk0obltpXSkmJiFvKXtpZihlPWVbaV0saTwwfHxpPj1EbC5sZW5ndGgpdGhyb3cgbmV3IEkoImludGVybmFsLWVycm9yIiwiQXJndW1lbnQgdmFsaWRhdG9yIHJlY2VpdmVkIGFuIHVuc3VwcG9ydGVkIG51bWJlciBvZiBhcmd1bWVudHMuIik7bj1EbFtpXSxyPShyPyIiOm4rIiBhcmd1bWVudCAiKSsoZS5uYW1lPyciJytlLm5hbWUrJyIgJzoiIikrIm11c3QgYmUgIitlLksrIi4iO2JyZWFrIHR9cj1udWxsfX1pZihyKXRocm93IG5ldyBJKCJhcmd1bWVudC1lcnJvciIsdCsiIGZhaWxlZDogIityKX0odD1UbC5wcm90b3R5cGUpLklhPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5mfHwodGhpcy5mPWtsKHRoaXMsYmUoKS50aGVuKGZ1bmN0aW9uKCl7aWYoX3IoKSYmIWNyKCkpcmV0dXJuIHNyKCk7dGhyb3cgbmV3IEkoIm9wZXJhdGlvbi1ub3Qtc3VwcG9ydGVkLWluLXRoaXMtZW52aXJvbm1lbnQiLCJSZWNhcHRjaGFWZXJpZmllciBpcyBvbmx5IHN1cHBvcnRlZCBpbiBhIGJyb3dzZXIgSFRUUC9IVFRQUyBlbnZpcm9ubWVudC4iKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5tLmcoZS51KCkpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gZS5nPXQsemEoZS5zLFJhLHt9KX0pLnRoZW4oZnVuY3Rpb24odCl7ZS5hW0NsXT10LnJlY2FwdGNoYVNpdGVLZXl9KS5vKGZ1bmN0aW9uKHQpe3Rocm93IGUuZj1udWxsLHR9KSkpfSx0LnJlbmRlcj1mdW5jdGlvbigpe1JsKHRoaXMpO3ZhciBuPXRoaXM7cmV0dXJuIGtsKHRoaXMsdGhpcy5JYSgpLnRoZW4oZnVuY3Rpb24oKXt2YXIgdCxlO3JldHVybiBudWxsPT09bi5jJiYoZT1uLnYsbi5pfHwodD10ZShlKSxlPW9lKCJESVYiKSx0LmFwcGVuZENoaWxkKGUpKSxuLmM9bi5nLnJlbmRlcihlLG4uYSkpLG4uY30pKX0sdC52ZXJpZnk9ZnVuY3Rpb24oKXtSbCh0aGlzKTt2YXIgaT10aGlzO3JldHVybiBrbCh0aGlzLHRoaXMucmVuZGVyKCkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gbmV3IGZlKGZ1bmN0aW9uKG4pe3ZhciByLHQ9aS5nLmdldFJlc3BvbnNlKGUpO3Q/bih0KToocj1mdW5jdGlvbih0KXt2YXIgZTt0JiYoZT1yLEgoaS5sLGZ1bmN0aW9uKHQpe3JldHVybiB0PT1lfSksbih0KSl9LGkubC5wdXNoKHIpLGkuaSYmaS5nLmV4ZWN1dGUoaS5jKSl9KX0pKX0sdC5yZXNldD1mdW5jdGlvbigpe1JsKHRoaXMpLG51bGwhPT10aGlzLmMmJnRoaXMuZy5yZXNldCh0aGlzLmMpfSx0LmNsZWFyPWZ1bmN0aW9uKCl7UmwodGhpcyksdGhpcy5EPSEwLHRoaXMubS5jKCk7Zm9yKHZhciB0LGU9MDtlPHRoaXMuaC5sZW5ndGg7ZSsrKXRoaXMuaFtlXS5jYW5jZWwoIlJlY2FwdGNoYVZlcmlmaWVyIGluc3RhbmNlIGhhcyBiZWVuIGRlc3Ryb3llZC4iKTtpZighdGhpcy5pKXtlPXRlKHRoaXMudik7Zm9yKDt0PWUuZmlyc3RDaGlsZDspZS5yZW1vdmVDaGlsZCh0KX19LHcoUGwsVGwpO3ZhciBEbD0iRmlyc3QgU2Vjb25kIFRoaXJkIEZvdXJ0aCBGaWZ0aCBTaXh0aCBTZXZlbnRoIEVpZ2h0aCBOaW50aCIuc3BsaXQoIiAiKTtmdW5jdGlvbiB4bCh0LGUpe3JldHVybntuYW1lOnR8fCIiLEs6ImEgdmFsaWQgc3RyaW5nIixvcHRpb25hbDohIWUsTTpmdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHR9fX1mdW5jdGlvbiBMbCh0LGUpe3JldHVybntuYW1lOnR8fCIiLEs6ImEgYm9vbGVhbiIsb3B0aW9uYWw6ISFlLE06ZnVuY3Rpb24odCl7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdH19fWZ1bmN0aW9uIE1sKHQsZSl7cmV0dXJue25hbWU6dHx8IiIsSzoiYSB2YWxpZCBvYmplY3QiLG9wdGlvbmFsOiEhZSxNOmd9fWZ1bmN0aW9uIEZsKHQsZSl7cmV0dXJue25hbWU6dHx8IiIsSzoiYSBmdW5jdGlvbiIsb3B0aW9uYWw6ISFlLE06ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHR9fX1mdW5jdGlvbiBVbCh0LGUpe3JldHVybntuYW1lOnR8fCIiLEs6Im51bGwiLG9wdGlvbmFsOiEhZSxNOmZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT09dH19fWZ1bmN0aW9uIGpsKG4pe3JldHVybntuYW1lOm4/bisiQ3JlZGVudGlhbCI6ImNyZWRlbnRpYWwiLEs6bj8iYSB2YWxpZCAiK24rIiBjcmVkZW50aWFsIjoiYSB2YWxpZCBjcmVkZW50aWFsIixvcHRpb25hbDohMSxNOmZ1bmN0aW9uKHQpe2lmKCF0KXJldHVybiExO3ZhciBlPSFufHx0LnByb3ZpZGVySWQ9PT1uO3JldHVybiEoIXQua2F8fCFlKX19fWZ1bmN0aW9uIHFsKCl7cmV0dXJue25hbWU6Im11bHRpRmFjdG9yQXNzZXJ0aW9uIixLOiJhIHZhbGlkIG11bHRpRmFjdG9yQXNzZXJ0aW9uIixvcHRpb25hbDohMSxNOmZ1bmN0aW9uKHQpe3JldHVybiEhdCYmISF0LnNifX19ZnVuY3Rpb24gVmwoKXtyZXR1cm57bmFtZToiYXV0aFByb3ZpZGVyIixLOiJhIHZhbGlkIEF1dGggcHJvdmlkZXIiLG9wdGlvbmFsOiExLE06ZnVuY3Rpb24odCl7cmV0dXJuISEodCYmdC5wcm92aWRlcklkJiZ0Lmhhc093blByb3BlcnR5JiZ0Lmhhc093blByb3BlcnR5KCJpc09BdXRoUHJvdmlkZXIiKSl9fX1mdW5jdGlvbiBCbCh0LGUpe3JldHVybiBnKHQpJiYic3RyaW5nIj09dHlwZW9mIHQudHlwZSYmdC50eXBlPT09ZSYmImZ1bmN0aW9uIj09dHlwZW9mIHQuSGF9ZnVuY3Rpb24gS2wodCl7cmV0dXJuIGcodCkmJiJzdHJpbmciPT10eXBlb2YgdC51aWR9ZnVuY3Rpb24gV2woKXtyZXR1cm57bmFtZToiYXBwbGljYXRpb25WZXJpZmllciIsSzoiYW4gaW1wbGVtZW50YXRpb24gb2YgZmlyZWJhc2UuYXV0aC5BcHBsaWNhdGlvblZlcmlmaWVyIixvcHRpb25hbDohMSxNOmZ1bmN0aW9uKHQpe3JldHVybiEoIXR8fCJzdHJpbmciIT10eXBlb2YgdC50eXBlfHwiZnVuY3Rpb24iIT10eXBlb2YgdC52ZXJpZnkpfX19ZnVuY3Rpb24gSGwoZSxuLHQscil7cmV0dXJue25hbWU6dHx8IiIsSzplLksrIiBvciAiK24uSyxvcHRpb25hbDohIXIsTTpmdW5jdGlvbih0KXtyZXR1cm4gZS5NKHQpfHxuLk0odCl9fX1mdW5jdGlvbiBHbCh0LGUpe2Zvcih2YXIgbiBpbiBlKXt2YXIgcj1lW25dLm5hbWU7dFtyXT1ZbChyLHRbbl0sZVtuXS5qKX19ZnVuY3Rpb24gemwodCxlKXtmb3IodmFyIG4gaW4gZSl7dmFyIHI9ZVtuXS5uYW1lO3IhPT1uJiZPYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHtnZXQ6YihmdW5jdGlvbih0KXtyZXR1cm4gdGhpc1t0XX0sbiksc2V0OmIoZnVuY3Rpb24odCxlLG4scil7T2wodCxbbl0sW3JdLCEwKSx0aGlzW2VdPXJ9LHIsbixlW25dLmtiKSxlbnVtZXJhYmxlOiEwfSl9fWZ1bmN0aW9uIFFsKHQsZSxuLHIpe3RbZV09WWwoZSxuLHIpfWZ1bmN0aW9uIFlsKHQsZSxuKXtmdW5jdGlvbiByKCl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gT2wobyxuLHQpLGUuYXBwbHkodGhpcyx0KX1pZighbilyZXR1cm4gZTt2YXIgaSxvPSh0PSh0PXQpLnNwbGl0KCIuIikpW3QubGVuZ3RoLTFdO2ZvcihpIGluIGUpcltpXT1lW2ldO2ZvcihpIGluIGUucHJvdG90eXBlKXIucHJvdG90eXBlW2ldPWUucHJvdG90eXBlW2ldO3JldHVybiByfUdsKFhoLnByb3RvdHlwZSx7amI6e25hbWU6ImFwcGx5QWN0aW9uQ29kZSIsajpbeGwoImNvZGUiKV19LFJhOntuYW1lOiJjaGVja0FjdGlvbkNvZGUiLGo6W3hsKCJjb2RlIildfSxuYjp7bmFtZToiY29uZmlybVBhc3N3b3JkUmVzZXQiLGo6W3hsKCJjb2RlIikseGwoIm5ld1Bhc3N3b3JkIildfSxkYzp7bmFtZToiY3JlYXRlVXNlcldpdGhFbWFpbEFuZFBhc3N3b3JkIixqOlt4bCgiZW1haWwiKSx4bCgicGFzc3dvcmQiKV19LGhjOntuYW1lOiJmZXRjaFNpZ25Jbk1ldGhvZHNGb3JFbWFpbCIsajpbeGwoImVtYWlsIildfSxxYTp7bmFtZToiZ2V0UmVkaXJlY3RSZXN1bHQiLGo6W119LEJjOntuYW1lOiJpc1NpZ25JbldpdGhFbWFpbExpbmsiLGo6W3hsKCJlbWFpbExpbmsiKV19LEhjOntuYW1lOiJvbkF1dGhTdGF0ZUNoYW5nZWQiLGo6W0hsKE1sKCksRmwoKSwibmV4dE9yT2JzZXJ2ZXIiKSxGbCgib3B0X2Vycm9yIiwhMCksRmwoIm9wdF9jb21wbGV0ZWQiLCEwKV19LEljOntuYW1lOiJvbklkVG9rZW5DaGFuZ2VkIixqOltIbChNbCgpLEZsKCksIm5leHRPck9ic2VydmVyIiksRmwoIm9wdF9lcnJvciIsITApLEZsKCJvcHRfY29tcGxldGVkIiwhMCldfSx2Yjp7bmFtZToic2VuZFBhc3N3b3JkUmVzZXRFbWFpbCIsajpbeGwoImVtYWlsIiksSGwoTWwoIm9wdF9hY3Rpb25Db2RlU2V0dGluZ3MiLCEwKSxVbChudWxsLCEwKSwib3B0X2FjdGlvbkNvZGVTZXR0aW5ncyIsITApXX0sd2I6e25hbWU6InNlbmRTaWduSW5MaW5rVG9FbWFpbCIsajpbeGwoImVtYWlsIiksTWwoImFjdGlvbkNvZGVTZXR0aW5ncyIpXX0seGI6e25hbWU6InNldFBlcnNpc3RlbmNlIixqOlt4bCgicGVyc2lzdGVuY2UiKV19LFNjOntuYW1lOiJzaWduSW5BbmRSZXRyaWV2ZURhdGFXaXRoQ3JlZGVudGlhbCIsajpbamwoKV19LHpiOntuYW1lOiJzaWduSW5Bbm9ueW1vdXNseSIsajpbXX0sJGE6e25hbWU6InNpZ25JbldpdGhDcmVkZW50aWFsIixqOltqbCgpXX0sVGM6e25hbWU6InNpZ25JbldpdGhDdXN0b21Ub2tlbiIsajpbeGwoInRva2VuIildfSxVYzp7bmFtZToic2lnbkluV2l0aEVtYWlsQW5kUGFzc3dvcmQiLGo6W3hsKCJlbWFpbCIpLHhsKCJwYXNzd29yZCIpXX0sVmM6e25hbWU6InNpZ25JbldpdGhFbWFpbExpbmsiLGo6W3hsKCJlbWFpbCIpLHhsKCJlbWFpbExpbmsiLCEwKV19LFdjOntuYW1lOiJzaWduSW5XaXRoUGhvbmVOdW1iZXIiLGo6W3hsKCJwaG9uZU51bWJlciIpLFdsKCldfSxYYzp7bmFtZToic2lnbkluV2l0aFBvcHVwIixqOltWbCgpXX0sWWM6e25hbWU6InNpZ25JbldpdGhSZWRpcmVjdCIsajpbVmwoKV19LGRkOntuYW1lOiJ1cGRhdGVDdXJyZW50VXNlciIsajpbSGwoe25hbWU6InVzZXIiLEs6ImFuIGluc3RhbmNlIG9mIEZpcmViYXNlIFVzZXIiLG9wdGlvbmFsOiExLE06ZnVuY3Rpb24odCl7cmV0dXJuISEodCYmdCBpbnN0YW5jZW9mIGhoKX19LFVsKCksInVzZXIiKV19LEFiOntuYW1lOiJzaWduT3V0IixqOltdfSx0b0pTT046e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfSxmZDp7bmFtZToidXNlRGV2aWNlTGFuZ3VhZ2UiLGo6W119LGdkOntuYW1lOiJ1c2VFbXVsYXRvciIsajpbeGwoInVybCIpLE1sKCJvcHRpb25zIiwhMCldfSxqZDp7bmFtZToidmVyaWZ5UGFzc3dvcmRSZXNldENvZGUiLGo6W3hsKCJjb2RlIildfX0pLHpsKFhoLnByb3RvdHlwZSx7bGM6e25hbWU6Imxhbmd1YWdlQ29kZSIsa2I6SGwoeGwoKSxVbCgpLCJsYW5ndWFnZUNvZGUiKX0sdGk6e25hbWU6InRlbmFudElkIixrYjpIbCh4bCgpLFVsKCksInRlbmFudElkIil9fSksKFhoLlBlcnNpc3RlbmNlPUt1KS5MT0NBTD0ibG9jYWwiLFhoLlBlcnNpc3RlbmNlLlNFU1NJT049InNlc3Npb24iLFhoLlBlcnNpc3RlbmNlLk5PTkU9Im5vbmUiLEdsKGhoLnByb3RvdHlwZSx7ZGVsZXRlOntuYW1lOiJkZWxldGUiLGo6W119LG9jOntuYW1lOiJnZXRJZFRva2VuUmVzdWx0IixqOltMbCgib3B0X2ZvcmNlUmVmcmVzaCIsITApXX0sSTp7bmFtZToiZ2V0SWRUb2tlbiIsajpbTGwoIm9wdF9mb3JjZVJlZnJlc2giLCEwKV19LENjOntuYW1lOiJsaW5rQW5kUmV0cmlldmVEYXRhV2l0aENyZWRlbnRpYWwiLGo6W2psKCldfSxxYjp7bmFtZToibGlua1dpdGhDcmVkZW50aWFsIixqOltqbCgpXX0sRGM6e25hbWU6ImxpbmtXaXRoUGhvbmVOdW1iZXIiLGo6W3hsKCJwaG9uZU51bWJlciIpLFdsKCldfSxFYzp7bmFtZToibGlua1dpdGhQb3B1cCIsajpbVmwoKV19LEZjOntuYW1lOiJsaW5rV2l0aFJlZGlyZWN0IixqOltWbCgpXX0sTGM6e25hbWU6InJlYXV0aGVudGljYXRlQW5kUmV0cmlldmVEYXRhV2l0aENyZWRlbnRpYWwiLGo6W2psKCldfSx0Yjp7bmFtZToicmVhdXRoZW50aWNhdGVXaXRoQ3JlZGVudGlhbCIsajpbamwoKV19LE1jOntuYW1lOiJyZWF1dGhlbnRpY2F0ZVdpdGhQaG9uZU51bWJlciIsajpbeGwoInBob25lTnVtYmVyIiksV2woKV19LE5jOntuYW1lOiJyZWF1dGhlbnRpY2F0ZVdpdGhQb3B1cCIsajpbVmwoKV19LE9jOntuYW1lOiJyZWF1dGhlbnRpY2F0ZVdpdGhSZWRpcmVjdCIsajpbVmwoKV19LHJlbG9hZDp7bmFtZToicmVsb2FkIixqOltdfSx1Yjp7bmFtZToic2VuZEVtYWlsVmVyaWZpY2F0aW9uIixqOltIbChNbCgib3B0X2FjdGlvbkNvZGVTZXR0aW5ncyIsITApLFVsKG51bGwsITApLCJvcHRfYWN0aW9uQ29kZVNldHRpbmdzIiwhMCldfSx0b0pTT046e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfSxjZDp7bmFtZToidW5saW5rIixqOlt4bCgicHJvdmlkZXIiKV19LEJiOntuYW1lOiJ1cGRhdGVFbWFpbCIsajpbeGwoImVtYWlsIildfSxDYjp7bmFtZToidXBkYXRlUGFzc3dvcmQiLGo6W3hsKCJwYXNzd29yZCIpXX0sZWQ6e25hbWU6InVwZGF0ZVBob25lTnVtYmVyIixqOltqbCgicGhvbmUiKV19LERiOntuYW1lOiJ1cGRhdGVQcm9maWxlIixqOltNbCgicHJvZmlsZSIpXX0sRWI6e25hbWU6InZlcmlmeUJlZm9yZVVwZGF0ZUVtYWlsIixqOlt4bCgiZW1haWwiKSxIbChNbCgib3B0X2FjdGlvbkNvZGVTZXR0aW5ncyIsITApLFVsKG51bGwsITApLCJvcHRfYWN0aW9uQ29kZVNldHRpbmdzIiwhMCldfX0pLEdsKGhsLnByb3RvdHlwZSx7ZXhlY3V0ZTp7bmFtZToiZXhlY3V0ZSJ9LHJlbmRlcjp7bmFtZToicmVuZGVyIn0scmVzZXQ6e25hbWU6InJlc2V0In0sZ2V0UmVzcG9uc2U6e25hbWU6ImdldFJlc3BvbnNlIn19KSxHbChjbC5wcm90b3R5cGUse2V4ZWN1dGU6e25hbWU6ImV4ZWN1dGUifSxyZW5kZXI6e25hbWU6InJlbmRlciJ9LHJlc2V0OntuYW1lOiJyZXNldCJ9LGdldFJlc3BvbnNlOntuYW1lOiJnZXRSZXNwb25zZSJ9fSksR2woZmUucHJvdG90eXBlLHtvYTp7bmFtZToiZmluYWxseSJ9LG86e25hbWU6ImNhdGNoIn0sdGhlbjp7bmFtZToidGhlbiJ9fSksemwoVmMucHJvdG90eXBlLHthcHBWZXJpZmljYXRpb25EaXNhYmxlZDp7bmFtZToiYXBwVmVyaWZpY2F0aW9uRGlzYWJsZWRGb3JUZXN0aW5nIixrYjpMbCgiYXBwVmVyaWZpY2F0aW9uRGlzYWJsZWRGb3JUZXN0aW5nIil9fSksR2woQmMucHJvdG90eXBlLHtjb25maXJtOntuYW1lOiJjb25maXJtIixqOlt4bCgidmVyaWZpY2F0aW9uQ29kZSIpXX19KSxRbCgkaSwiZnJvbUpTT04iLGZ1bmN0aW9uKHQpe3Q9InN0cmluZyI9PXR5cGVvZiB0P0pTT04ucGFyc2UodCk6dDtmb3IodmFyIGUsbj1bb28sYm8sRW8sbm9dLHI9MDtyPG4ubGVuZ3RoO3IrKylpZihlPW5bcl0odCkpcmV0dXJuIGU7cmV0dXJuIG51bGx9LFtIbCh4bCgpLE1sKCksImpzb24iKV0pLFFsKHdvLCJjcmVkZW50aWFsIixmdW5jdGlvbih0LGUpe3JldHVybiBuZXcgbW8odCxlKX0sW3hsKCJlbWFpbCIpLHhsKCJwYXNzd29yZCIpXSksR2wobW8ucHJvdG90eXBlLHt3OntuYW1lOiJ0b0pTT04iLGo6W3hsKG51bGwsITApXX19KSxHbChjby5wcm90b3R5cGUse0NhOntuYW1lOiJhZGRTY29wZSIsajpbeGwoInNjb3BlIildfSxLYTp7bmFtZToic2V0Q3VzdG9tUGFyYW1ldGVycyIsajpbTWwoImN1c3RvbU9BdXRoUGFyYW1ldGVycyIpXX19KSxRbChjbywiY3JlZGVudGlhbCIsaG8sW0hsKHhsKCksTWwoKSwidG9rZW4iKV0pLFFsKHdvLCJjcmVkZW50aWFsV2l0aExpbmsiLF9vLFt4bCgiZW1haWwiKSx4bCgiZW1haWxMaW5rIildKSxHbChsby5wcm90b3R5cGUse0NhOntuYW1lOiJhZGRTY29wZSIsajpbeGwoInNjb3BlIildfSxLYTp7bmFtZToic2V0Q3VzdG9tUGFyYW1ldGVycyIsajpbTWwoImN1c3RvbU9BdXRoUGFyYW1ldGVycyIpXX19KSxRbChsbywiY3JlZGVudGlhbCIsZm8sW0hsKHhsKCksTWwoKSwidG9rZW4iKV0pLEdsKHBvLnByb3RvdHlwZSx7Q2E6e25hbWU6ImFkZFNjb3BlIixqOlt4bCgic2NvcGUiKV19LEthOntuYW1lOiJzZXRDdXN0b21QYXJhbWV0ZXJzIixqOltNbCgiY3VzdG9tT0F1dGhQYXJhbWV0ZXJzIildfX0pLFFsKHBvLCJjcmVkZW50aWFsIix2byxbSGwoeGwoKSxIbChNbCgpLFVsKCkpLCJpZFRva2VuIiksSGwoeGwoKSxVbCgpLCJhY2Nlc3NUb2tlbiIsITApXSksR2woZ28ucHJvdG90eXBlLHtLYTp7bmFtZToic2V0Q3VzdG9tUGFyYW1ldGVycyIsajpbTWwoImN1c3RvbU9BdXRoUGFyYW1ldGVycyIpXX19KSxRbChnbywiY3JlZGVudGlhbCIseW8sW0hsKHhsKCksTWwoKSwidG9rZW4iKSx4bCgic2VjcmV0IiwhMCldKSxHbCh1by5wcm90b3R5cGUse0NhOntuYW1lOiJhZGRTY29wZSIsajpbeGwoInNjb3BlIildfSxjcmVkZW50aWFsOntuYW1lOiJjcmVkZW50aWFsIixqOltIbCh4bCgpLEhsKE1sKCksVWwoKSksIm9wdGlvbnNPcklkVG9rZW4iKSxIbCh4bCgpLFVsKCksImFjY2Vzc1Rva2VuIiwhMCldfSxLYTp7bmFtZToic2V0Q3VzdG9tUGFyYW1ldGVycyIsajpbTWwoImN1c3RvbU9BdXRoUGFyYW1ldGVycyIpXX19KSxHbChyby5wcm90b3R5cGUse3c6e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfX0pLEdsKHRvLnByb3RvdHlwZSx7dzp7bmFtZToidG9KU09OIixqOlt4bChudWxsLCEwKV19fSksUWwoQ28sImNyZWRlbnRpYWwiLE5vLFt4bCgidmVyaWZpY2F0aW9uSWQiKSx4bCgidmVyaWZpY2F0aW9uQ29kZSIpXSksR2woQ28ucHJvdG90eXBlLHtmYjp7bmFtZToidmVyaWZ5UGhvbmVOdW1iZXIiLGo6W0hsKHhsKCkse25hbWU6InBob25lSW5mb09wdGlvbnMiLEs6InZhbGlkIHBob25lIGluZm8gb3B0aW9ucyIsb3B0aW9uYWw6ITEsTTpmdW5jdGlvbih0KXtyZXR1cm4hIXQmJih0LnNlc3Npb24mJnQucGhvbmVOdW1iZXI/QmwodC5zZXNzaW9uLFhpKSYmInN0cmluZyI9PXR5cGVvZiB0LnBob25lTnVtYmVyOnQuc2Vzc2lvbiYmdC5tdWx0aUZhY3RvckhpbnQ/QmwodC5zZXNzaW9uLEppKSYmS2wodC5tdWx0aUZhY3RvckhpbnQpOnQuc2Vzc2lvbiYmdC5tdWx0aUZhY3RvclVpZD9CbCh0LnNlc3Npb24sSmkpJiYic3RyaW5nIj09dHlwZW9mIHQubXVsdGlGYWN0b3JVaWQ6ISF0LnBob25lTnVtYmVyJiYic3RyaW5nIj09dHlwZW9mIHQucGhvbmVOdW1iZXIpfX0sInBob25lSW5mb09wdGlvbnMiKSxXbCgpXX19KSxHbChUby5wcm90b3R5cGUse3c6e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfX0pLEdsKEkucHJvdG90eXBlLHt0b0pTT046e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfX0pLEdsKE1vLnByb3RvdHlwZSx7dG9KU09OOntuYW1lOiJ0b0pTT04iLGo6W3hsKG51bGwsITApXX19KSxHbChMby5wcm90b3R5cGUse3RvSlNPTjp7bmFtZToidG9KU09OIixqOlt4bChudWxsLCEwKV19fSksR2woUWMucHJvdG90eXBlLHt0b0pTT046e25hbWU6InRvSlNPTiIsajpbeGwobnVsbCwhMCldfX0pLEdsKEhjLnByb3RvdHlwZSx7UmM6e25hbWU6InJlc29sdmVTaWduSW4iLGo6W3FsKCldfX0pLEdsKHRoLnByb3RvdHlwZSx7UmI6e25hbWU6ImdldFNlc3Npb24iLGo6W119LGZjOntuYW1lOiJlbnJvbGwiLGo6W3FsKCkseGwoImRpc3BsYXlOYW1lIiwhMCldfSxiZDp7bmFtZToidW5lbnJvbGwiLGo6W0hsKHtuYW1lOiJtdWx0aUZhY3RvckluZm8iLEs6ImEgdmFsaWQgbXVsdGlGYWN0b3JJbmZvIixvcHRpb25hbDohMSxNOktsfSx4bCgpLCJtdWx0aUZhY3RvckluZm9JZGVudGlmaWVyIildfX0pLEdsKFBsLnByb3RvdHlwZSx7Y2xlYXI6e25hbWU6ImNsZWFyIixqOltdfSxyZW5kZXI6e25hbWU6InJlbmRlciIsajpbXX0sdmVyaWZ5OntuYW1lOiJ2ZXJpZnkiLGo6W119fSksUWwoaGksInBhcnNlTGluayIsbWksW3hsKCJsaW5rIildKSxRbChnbCwiYXNzZXJ0aW9uIixmdW5jdGlvbih0KXtyZXR1cm4gbmV3ICRjKHQpfSxbamwoInBob25lIildKSxmdW5jdGlvbigpe2lmKHZvaWQgMD09PVhsfHwhWGwuSU5URVJOQUx8fCFYbC5JTlRFUk5BTC5yZWdpc3RlckNvbXBvbmVudCl0aHJvdyBFcnJvcigiQ2Fubm90IGZpbmQgdGhlIGZpcmViYXNlIG5hbWVzcGFjZTsgYmUgc3VyZSB0byBpbmNsdWRlIGZpcmViYXNlLWFwcC5qcyBiZWZvcmUgdGhpcyBsaWJyYXJ5LiIpO3ZhciB0PXtBY3Rpb25Db2RlSW5mbzp7T3BlcmF0aW9uOntFTUFJTF9TSUdOSU46JHIsUEFTU1dPUkRfUkVTRVQ6IlBBU1NXT1JEX1JFU0VUIixSRUNPVkVSX0VNQUlMOiJSRUNPVkVSX0VNQUlMIixSRVZFUlRfU0VDT05EX0ZBQ1RPUl9BRERJVElPTjpKcixWRVJJRllfQU5EX0NIQU5HRV9FTUFJTDpacixWRVJJRllfRU1BSUw6IlZFUklGWV9FTUFJTCJ9fSxBdXRoOlhoLEF1dGhDcmVkZW50aWFsOiRpLEVycm9yOkl9O1FsKHQsIkVtYWlsQXV0aFByb3ZpZGVyIix3byxbXSksUWwodCwiRmFjZWJvb2tBdXRoUHJvdmlkZXIiLGNvLFtdKSxRbCh0LCJHaXRodWJBdXRoUHJvdmlkZXIiLGxvLFtdKSxRbCh0LCJHb29nbGVBdXRoUHJvdmlkZXIiLHBvLFtdKSxRbCh0LCJUd2l0dGVyQXV0aFByb3ZpZGVyIixnbyxbXSksUWwodCwiT0F1dGhQcm92aWRlciIsdW8sW3hsKCJwcm92aWRlcklkIildKSxRbCh0LCJTQU1MQXV0aFByb3ZpZGVyIixhbyxbeGwoInByb3ZpZGVySWQiKV0pLFFsKHQsIlBob25lQXV0aFByb3ZpZGVyIixDbyxbe25hbWU6ImF1dGgiLEs6ImFuIGluc3RhbmNlIG9mIEZpcmViYXNlIEF1dGgiLG9wdGlvbmFsOiEwLE06ZnVuY3Rpb24odCl7cmV0dXJuISEodCYmdCBpbnN0YW5jZW9mIFhoKX19XSksUWwodCwiUmVjYXB0Y2hhVmVyaWZpZXIiLFBsLFtIbCh4bCgpLHtuYW1lOiIiLEs6ImFuIEhUTUwgZWxlbWVudCIsb3B0aW9uYWw6ITEsTTpmdW5jdGlvbih0KXtyZXR1cm4hISh0JiZ0IGluc3RhbmNlb2YgRWxlbWVudCl9fSwicmVjYXB0Y2hhQ29udGFpbmVyIiksTWwoInJlY2FwdGNoYVBhcmFtZXRlcnMiLCEwKSx7bmFtZToiYXBwIixLOiJhbiBpbnN0YW5jZSBvZiBGaXJlYmFzZSBBcHAiLG9wdGlvbmFsOiEwLE06ZnVuY3Rpb24odCl7cmV0dXJuISEodCYmdCBpbnN0YW5jZW9mIFhsLmFwcC5BcHApfX1dKSxRbCh0LCJBY3Rpb25Db2RlVVJMIixoaSxbXSksUWwodCwiUGhvbmVNdWx0aUZhY3RvckdlbmVyYXRvciIsZ2wsW10pLFhsLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KHtuYW1lOiJhdXRoIixpbnN0YW5jZUZhY3Rvcnk6ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBYaCh0PXQuZ2V0UHJvdmlkZXIoImFwcCIpLmdldEltbWVkaWF0ZSgpKX0sbXVsdGlwbGVJbnN0YW5jZXM6ITEsc2VydmljZVByb3BzOnQsaW5zdGFudGlhdGlvbk1vZGU6IkxBWlkiLHR5cGU6IlBVQkxJQyJ9KSxYbC5JTlRFUk5BTC5yZWdpc3RlckNvbXBvbmVudCh7bmFtZToiYXV0aC1pbnRlcm5hbCIsaW5zdGFuY2VGYWN0b3J5OmZ1bmN0aW9uKHQpe3JldHVybntnZXRVaWQ6bSgodD10LmdldFByb3ZpZGVyKCJhdXRoIikuZ2V0SW1tZWRpYXRlKCkpLmdldFVpZCx0KSxnZXRUb2tlbjptKHQubmMsdCksYWRkQXV0aFRva2VuTGlzdGVuZXI6bSh0LmNjLHQpLHJlbW92ZUF1dGhUb2tlbkxpc3RlbmVyOm0odC5QYyx0KX19LG11bHRpcGxlSW5zdGFuY2VzOiExLGluc3RhbnRpYXRpb25Nb2RlOiJMQVpZIix0eXBlOiJQUklWQVRFIn0pLFhsLnJlZ2lzdGVyVmVyc2lvbigiQGZpcmViYXNlL2F1dGgiLCIwLjE2LjQiKSxYbC5JTlRFUk5BTC5leHRlbmROYW1lc3BhY2Uoe1VzZXI6aGh9KX0oKX0uYXBwbHkoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWw/Z2xvYmFsOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fSk7dmFyIFBzPShPcy5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7bnVsbD09ZT90aGlzLmRvbVN0b3JhZ2VfLnJlbW92ZUl0ZW0odGhpcy5wcmVmaXhlZE5hbWVfKHQpKTp0aGlzLmRvbVN0b3JhZ2VfLnNldEl0ZW0odGhpcy5wcmVmaXhlZE5hbWVfKHQpLFJvKGUpKX0sT3MucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXt0PXRoaXMuZG9tU3RvcmFnZV8uZ2V0SXRlbSh0aGlzLnByZWZpeGVkTmFtZV8odCkpO3JldHVybiBudWxsPT10P251bGw6a28odCl9LE9zLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24odCl7dGhpcy5kb21TdG9yYWdlXy5yZW1vdmVJdGVtKHRoaXMucHJlZml4ZWROYW1lXyh0KSl9LE9zLnByb3RvdHlwZS5wcmVmaXhlZE5hbWVfPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnByZWZpeF8rdH0sT3MucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tU3RvcmFnZV8udG9TdHJpbmcoKX0sT3MpO2Z1bmN0aW9uIE9zKHQpe3RoaXMuZG9tU3RvcmFnZV89dCx0aGlzLnByZWZpeF89ImZpcmViYXNlOiJ9dmFyIERzPSh4cy5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7bnVsbD09ZT9kZWxldGUgdGhpcy5jYWNoZV9bdF06dGhpcy5jYWNoZV9bdF09ZX0seHMucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXtyZXR1cm4gT28odGhpcy5jYWNoZV8sdCk/dGhpcy5jYWNoZV9bdF06bnVsbH0seHMucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0KXtkZWxldGUgdGhpcy5jYWNoZV9bdF19LHhzKTtmdW5jdGlvbiB4cygpe3RoaXMuY2FjaGVfPXt9LHRoaXMuaXNJbk1lbW9yeVN0b3JhZ2U9ITB9ZnVuY3Rpb24gTHModCl7dmFyIGU9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdLG49MCxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpLG89dC5jaGFyQ29kZUF0KHIpOzU1Mjk2PD1vJiZvPD01NjMxOSYmKGk9by01NTI5NixzbygrK3I8dC5sZW5ndGgsIlN1cnJvZ2F0ZSBwYWlyIG1pc3NpbmcgdHJhaWwgc3Vycm9nYXRlLiIpLG89NjU1MzYrKGk8PDEwKSsodC5jaGFyQ29kZUF0KHIpLTU2MzIwKSksbzwxMjg/ZVtuKytdPW86KG88MjA0OD9lW24rK109bz4+NnwxOTI6KG88NjU1MzY/ZVtuKytdPW8+PjEyfDIyNDooZVtuKytdPW8+PjE4fDI0MCxlW24rK109bz4+MTImNjN8MTI4KSxlW24rK109bz4+NiY2M3wxMjgpLGVbbisrXT02MyZvfDEyOCl9cmV0dXJuIGV9KHQpO3JldHVybih0PW5ldyBGbykudXBkYXRlKGUpLHQ9dC5kaWdlc3QoKSx1by5lbmNvZGVCeXRlQXJyYXkodCl9ZnVuY3Rpb24gTXModCxlKXtzbyghZXx8ITA9PT10fHwhMT09PXQsIkNhbid0IHR1cm4gb24gY3VzdG9tIGxvZ2dlcnMgcGVyc2lzdGVudGx5LiIpLCEwPT09dD8oSHMubG9nTGV2ZWw9YXMuVkVSQk9TRSxRcz1Icy5sb2cuYmluZChIcyksZSYmV3Muc2V0KCJsb2dnaW5nX2VuYWJsZWQiLCEwKSk6ImZ1bmN0aW9uIj09dHlwZW9mIHQ/UXM9dDooUXM9bnVsbCxXcy5yZW1vdmUoImxvZ2dpbmdfZW5hYmxlZCIpKX1mdW5jdGlvbiBGcygpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTt2YXIgbj0iRklSRUJBU0UgSU5URVJOQUwgRVJST1I6ICIrenMuYXBwbHkodm9pZCAwLG5vKFtdLGVvKHQpKSk7SHMuZXJyb3Iobil9ZnVuY3Rpb24gVXModCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiYodCE9dHx8dD09PU51bWJlci5QT1NJVElWRV9JTkZJTklUWXx8dD09PU51bWJlci5ORUdBVElWRV9JTkZJTklUWSl9ZnVuY3Rpb24ganModCxlKXtyZXR1cm4gdD09PWU/MDp0PGU/LTE6MX1mdW5jdGlvbiBxcyh0LGUpe2lmKGUmJnQgaW4gZSlyZXR1cm4gZVt0XTt0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgcmVxdWlyZWQga2V5ICgiK3QrIikgaW4gb2JqZWN0OiAiK1JvKGUpKX1mdW5jdGlvbiBWcyh0LGUpe3ZhciBuPXQubGVuZ3RoO2lmKG48PWUpcmV0dXJuW3RdO2Zvcih2YXIgcj1bXSxpPTA7aTxuO2krPWUpbjxpK2U/ci5wdXNoKHQuc3Vic3RyaW5nKGksbikpOnIucHVzaCh0LnN1YnN0cmluZyhpLGkrZSkpO3JldHVybiByfXZhciBCcyxTbj1mdW5jdGlvbih0KXt0cnl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJnZvaWQgMCE9PXdpbmRvd1t0XSl7dmFyIGU9d2luZG93W3RdO3JldHVybiBlLnNldEl0ZW0oImZpcmViYXNlOnNlbnRpbmVsIiwiY2FjaGUiKSxlLnJlbW92ZUl0ZW0oImZpcmViYXNlOnNlbnRpbmVsIiksbmV3IFBzKGUpfX1jYXRjaCh0KXt9cmV0dXJuIG5ldyBEc30sS3M9U24oImxvY2FsU3RvcmFnZSIpLFdzPVNuKCJzZXNzaW9uU3RvcmFnZSIpLEhzPW5ldyBwcygiQGZpcmViYXNlL2RhdGFiYXNlIiksR3M9KEJzPTEsZnVuY3Rpb24oKXtyZXR1cm4gQnMrK30pLHpzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2Zvcih2YXIgbj0iIixyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl07QXJyYXkuaXNBcnJheShpKXx8aSYmIm9iamVjdCI9PXR5cGVvZiBpJiYibnVtYmVyIj09dHlwZW9mIGkubGVuZ3RoP24rPXpzLmFwcGx5KG51bGwsaSk6bis9Im9iamVjdCI9PXR5cGVvZiBpP1JvKGkpOmksbis9IiAifXJldHVybiBufSxRcz1udWxsLFlzPSEwLFhzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0LGU9W10sbj0wO248YXJndW1lbnRzLmxlbmd0aDtuKyspZVtuXT1hcmd1bWVudHNbbl07ITA9PT1ZcyYmKFlzPSExLG51bGw9PT1RcyYmITA9PT1Xcy5nZXQoImxvZ2dpbmdfZW5hYmxlZCIpJiZNcyghMCkpLFFzJiYodD16cy5hcHBseShudWxsLGUpLFFzKHQpKX0sSnM9ZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO1hzLmFwcGx5KHZvaWQgMCxubyhbbl0sZW8odCkpKX19LCRzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3ZhciBuPSJGSVJFQkFTRSBGQVRBTCBFUlJPUjogIit6cy5hcHBseSh2b2lkIDAsbm8oW10sZW8odCkpKTt0aHJvdyBIcy5lcnJvcihuKSxuZXcgRXJyb3Iobil9LFpzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3ZhciBuPSJGSVJFQkFTRSBXQVJOSU5HOiAiK3pzLmFwcGx5KHZvaWQgMCxubyhbXSxlbyh0KSkpO0hzLndhcm4obil9LHRhPSJbTUlOX05BTUVdIixlYT0iW01BWF9OQU1FXSIsbmE9ZnVuY3Rpb24odCxlKXtpZih0PT09ZSlyZXR1cm4gMDtpZih0PT09dGF8fGU9PT1lYSlyZXR1cm4tMTtpZihlPT09dGF8fHQ9PT1lYSlyZXR1cm4gMTt2YXIgbj1sYSh0KSxyPWxhKGUpO3JldHVybiBudWxsIT09bj9udWxsIT09cj9uLXI9PTA/dC5sZW5ndGgtZS5sZW5ndGg6bi1yOi0xOm51bGw9PT1yJiZ0PGU/LTE6MX0scmE9ZnVuY3Rpb24odCl7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dClyZXR1cm4gUm8odCk7dmFyIGUsbj1bXTtmb3IoZSBpbiB0KW4ucHVzaChlKTtuLnNvcnQoKTtmb3IodmFyIHI9InsiLGk9MDtpPG4ubGVuZ3RoO2krKykwIT09aSYmKHIrPSIsIikscis9Um8obltpXSkscis9IjoiLHIrPXJhKHRbbltpXV0pO3JldHVybiByKz0ifSJ9O2Z1bmN0aW9uIGlhKHQsZSl7Zm9yKHZhciBuIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShuKSYmZShuLHRbbl0pfWZ1bmN0aW9uIG9hKHQpe3ZhciBlLG4scixpO3NvKCFVcyh0KSwiSW52YWxpZCBKU09OIG51bWJlciIpLDA9PT10P2U9MS90PT0tMS8ocj1uPTApPzE6MDooZT10PDAscj0odD1NYXRoLmFicyh0KSk+PU1hdGgucG93KDIsLTEwMjIpPyhuPShpPU1hdGgubWluKE1hdGguZmxvb3IoTWF0aC5sb2codCkvTWF0aC5MTjIpLDEwMjMpKSsxMDIzLE1hdGgucm91bmQodCpNYXRoLnBvdygyLDUyLWkpLU1hdGgucG93KDIsNTIpKSk6KG49MCxNYXRoLnJvdW5kKHQvTWF0aC5wb3coMiwtMTA3NCkpKSk7Zm9yKHZhciBvPVtdLHM9NTI7czstLXMpby5wdXNoKHIlMj8xOjApLHI9TWF0aC5mbG9vcihyLzIpO2ZvcihzPTExO3M7LS1zKW8ucHVzaChuJTI/MTowKSxuPU1hdGguZmxvb3Iobi8yKTtvLnB1c2goZT8xOjApLG8ucmV2ZXJzZSgpO3ZhciBhPW8uam9pbigiIiksdT0iIjtmb3Iocz0wO3M8NjQ7cys9OCl7dmFyIGM9cGFyc2VJbnQoYS5zdWJzdHIocyw4KSwyKS50b1N0cmluZygxNik7dSs9Yz0xPT09Yy5sZW5ndGg/IjAiK2M6Y31yZXR1cm4gdS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIHNhKHQsZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPXNldFRpbWVvdXQodCxlKSkmJmUudW5yZWYmJmUudW5yZWYoKSxlfXZhciBhYT1mdW5jdGlvbih0LGUpe3ZhciBuPSJVbmtub3duIEVycm9yIjsidG9vX2JpZyI9PT10P249IlRoZSBkYXRhIHJlcXVlc3RlZCBleGNlZWRzIHRoZSBtYXhpbXVtIHNpemUgdGhhdCBjYW4gYmUgYWNjZXNzZWQgd2l0aCBhIHNpbmdsZSByZXF1ZXN0LiI6InBlcm1pc3Npb25fZGVuaWVkIj09PXQ/bj0iQ2xpZW50IGRvZXNuJ3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGUgZGVzaXJlZCBkYXRhLiI6InVuYXZhaWxhYmxlIj09PXQmJihuPSJUaGUgc2VydmljZSBpcyB1bmF2YWlsYWJsZSIpO249bmV3IEVycm9yKHQrIiBhdCAiK2UucGF0aC50b1N0cmluZygpKyI6ICIrbik7cmV0dXJuIG4uY29kZT10LnRvVXBwZXJDYXNlKCksbn0sdWE9bmV3IFJlZ0V4cCgiXi0/KDAqKVxcZHsxLDEwfSQiKSxjYT0tMjE0NzQ4MzY0OCxoYT0yMTQ3NDgzNjQ3LGxhPWZ1bmN0aW9uKHQpe2lmKHVhLnRlc3QodCkpe3Q9TnVtYmVyKHQpO2lmKGNhPD10JiZ0PD1oYSlyZXR1cm4gdH1yZXR1cm4gbnVsbH0sZmE9ZnVuY3Rpb24odCl7dHJ5e3QoKX1jYXRjaChlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHQ9ZS5zdGFja3x8IiI7dGhyb3cgWnMoIkV4Y2VwdGlvbiB3YXMgdGhyb3duIGJ5IHVzZXIgY2FsbGJhY2suIix0KSxlfSxNYXRoLmZsb29yKDApKX19LHBhPShkYS5wcm90b3R5cGUuZ2V0VG9rZW49ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYXV0aF8/dGhpcy5hdXRoXy5nZXRUb2tlbih0KS5jYXRjaChmdW5jdGlvbih0KXtyZXR1cm4gdCYmImF1dGgvdG9rZW4tbm90LWluaXRpYWxpemVkIj09PXQuY29kZT8oWHMoIkdvdCBhdXRoL3Rva2VuLW5vdC1pbml0aWFsaXplZCBlcnJvci4gIFRyZWF0aW5nIGFzIG51bGwgdG9rZW4uIiksbnVsbCk6UHJvbWlzZS5yZWplY3QodCl9KTpQcm9taXNlLnJlc29sdmUobnVsbCl9LGRhLnByb3RvdHlwZS5hZGRUb2tlbkNoYW5nZUxpc3RlbmVyPWZ1bmN0aW9uKGUpe3RoaXMuYXV0aF8/dGhpcy5hdXRoXy5hZGRBdXRoVG9rZW5MaXN0ZW5lcihlKTooc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiBlKG51bGwpfSwwKSx0aGlzLmF1dGhQcm92aWRlcl8uZ2V0KCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5hZGRBdXRoVG9rZW5MaXN0ZW5lcihlKX0pKX0sZGEucHJvdG90eXBlLnJlbW92ZVRva2VuQ2hhbmdlTGlzdGVuZXI9ZnVuY3Rpb24oZSl7dGhpcy5hdXRoUHJvdmlkZXJfLmdldCgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQucmVtb3ZlQXV0aFRva2VuTGlzdGVuZXIoZSl9KX0sZGEucHJvdG90eXBlLm5vdGlmeUZvckludmFsaWRUb2tlbj1mdW5jdGlvbigpe3ZhciB0PSdQcm92aWRlZCBhdXRoZW50aWNhdGlvbiBjcmVkZW50aWFscyBmb3IgdGhlIGFwcCBuYW1lZCAiJyt0aGlzLmFwcF8ubmFtZSsnIiBhcmUgaW52YWxpZC4gVGhpcyB1c3VhbGx5IGluZGljYXRlcyB5b3VyIGFwcCB3YXMgbm90IGluaXRpYWxpemVkIGNvcnJlY3RseS4gJzsiY3JlZGVudGlhbCJpbiB0aGlzLmFwcF8ub3B0aW9ucz90Kz0nTWFrZSBzdXJlIHRoZSAiY3JlZGVudGlhbCIgcHJvcGVydHkgcHJvdmlkZWQgdG8gaW5pdGlhbGl6ZUFwcCgpIGlzIGF1dGhvcml6ZWQgdG8gYWNjZXNzIHRoZSBzcGVjaWZpZWQgImRhdGFiYXNlVVJMIiBhbmQgaXMgZnJvbSB0aGUgY29ycmVjdCBwcm9qZWN0Lic6InNlcnZpY2VBY2NvdW50ImluIHRoaXMuYXBwXy5vcHRpb25zP3QrPSdNYWtlIHN1cmUgdGhlICJzZXJ2aWNlQWNjb3VudCIgcHJvcGVydHkgcHJvdmlkZWQgdG8gaW5pdGlhbGl6ZUFwcCgpIGlzIGF1dGhvcml6ZWQgdG8gYWNjZXNzIHRoZSBzcGVjaWZpZWQgImRhdGFiYXNlVVJMIiBhbmQgaXMgZnJvbSB0aGUgY29ycmVjdCBwcm9qZWN0Lic6dCs9J01ha2Ugc3VyZSB0aGUgImFwaUtleSIgYW5kICJkYXRhYmFzZVVSTCIgcHJvcGVydGllcyBwcm92aWRlZCB0byBpbml0aWFsaXplQXBwKCkgbWF0Y2ggdGhlIHZhbHVlcyBwcm92aWRlZCBmb3IgeW91ciBhcHAgYXQgaHR0cHM6Ly9jb25zb2xlLmZpcmViYXNlLmdvb2dsZS5jb20vLicsWnModCl9LGRhKTtmdW5jdGlvbiBkYSh0LGUpe3ZhciBuPXRoaXM7dGhpcy5hcHBfPXQsdGhpcy5hdXRoUHJvdmlkZXJfPWUsdGhpcy5hdXRoXz1udWxsLHRoaXMuYXV0aF89ZS5nZXRJbW1lZGlhdGUoe29wdGlvbmFsOiEwfSksdGhpcy5hdXRoX3x8ZS5nZXQoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuLmF1dGhfPXR9KX12YXIgdmE9KGdhLnByb3RvdHlwZS5nZXRUb2tlbj1mdW5jdGlvbih0KXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHthY2Nlc3NUb2tlbjpnYS5FTVVMQVRPUl9BVVRIX1RPS0VOfSl9LGdhLnByb3RvdHlwZS5hZGRUb2tlbkNoYW5nZUxpc3RlbmVyPWZ1bmN0aW9uKHQpe3QoZ2EuRU1VTEFUT1JfQVVUSF9UT0tFTil9LGdhLnByb3RvdHlwZS5yZW1vdmVUb2tlbkNoYW5nZUxpc3RlbmVyPWZ1bmN0aW9uKHQpe30sZ2EucHJvdG90eXBlLm5vdGlmeUZvckludmFsaWRUb2tlbj1mdW5jdGlvbigpe30sZ2EuRU1VTEFUT1JfQVVUSF9UT0tFTj0ib3duZXIiLGdhKTtmdW5jdGlvbiBnYSgpe312YXIgeWE9Lyhjb25zb2xlXC5maXJlYmFzZXxmaXJlYmFzZS1jb25zb2xlLVx3K1wuY29ycHxmaXJlYmFzZVwuY29ycClcLmdvb2dsZVwuY29tLyxtYT0id2Vic29ja2V0IixiYT0ibG9uZ19wb2xsaW5nIix3YT0oX2EucHJvdG90eXBlLmlzQ2FjaGVhYmxlSG9zdD1mdW5jdGlvbigpe3JldHVybiJzLSI9PT10aGlzLmludGVybmFsSG9zdC5zdWJzdHIoMCwyKX0sX2EucHJvdG90eXBlLmlzQ3VzdG9tSG9zdD1mdW5jdGlvbigpe3JldHVybiJmaXJlYmFzZWlvLmNvbSIhPT10aGlzLl9kb21haW4mJiJmaXJlYmFzZWlvLWRlbW8uY29tIiE9PXRoaXMuX2RvbWFpbn0sT2JqZWN0LmRlZmluZVByb3BlcnR5KF9hLnByb3RvdHlwZSwiaG9zdCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9ob3N0fSxzZXQ6ZnVuY3Rpb24odCl7dCE9PXRoaXMuaW50ZXJuYWxIb3N0JiYodGhpcy5pbnRlcm5hbEhvc3Q9dCx0aGlzLmlzQ2FjaGVhYmxlSG9zdCgpJiZLcy5zZXQoImhvc3Q6Iit0aGlzLl9ob3N0LHRoaXMuaW50ZXJuYWxIb3N0KSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksX2EucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy50b1VSTFN0cmluZygpO3JldHVybiB0aGlzLnBlcnNpc3RlbmNlS2V5JiYodCs9IjwiK3RoaXMucGVyc2lzdGVuY2VLZXkrIj4iKSx0fSxfYS5wcm90b3R5cGUudG9VUkxTdHJpbmc9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnNlY3VyZT8iaHR0cHM6Ly8iOiJodHRwOi8vIixlPXRoaXMuaW5jbHVkZU5hbWVzcGFjZUluUXVlcnlQYXJhbXM/Ij9ucz0iK3RoaXMubmFtZXNwYWNlOiIiO3JldHVybiB0K3RoaXMuaG9zdCsiLyIrZX0sX2EpO2Z1bmN0aW9uIF9hKHQsZSxuLHIsaSxvLHMpe3ZvaWQgMD09PWkmJihpPSExKSx2b2lkIDA9PT1vJiYobz0iIiksdm9pZCAwPT09cyYmKHM9ITEpLHRoaXMuc2VjdXJlPWUsdGhpcy5uYW1lc3BhY2U9bix0aGlzLndlYlNvY2tldE9ubHk9cix0aGlzLm5vZGVBZG1pbj1pLHRoaXMucGVyc2lzdGVuY2VLZXk9byx0aGlzLmluY2x1ZGVOYW1lc3BhY2VJblF1ZXJ5UGFyYW1zPXMsdGhpcy5faG9zdD10LnRvTG93ZXJDYXNlKCksdGhpcy5fZG9tYWluPXRoaXMuX2hvc3Quc3Vic3RyKHRoaXMuX2hvc3QuaW5kZXhPZigiLiIpKzEpLHRoaXMuaW50ZXJuYWxIb3N0PUtzLmdldCgiaG9zdDoiK3QpfHx0aGlzLl9ob3N0fWZ1bmN0aW9uIElhKHQsZSxuKXt2YXIgcjtpZihzbygic3RyaW5nIj09dHlwZW9mIGUsInR5cGVvZiB0eXBlIG11c3QgPT0gc3RyaW5nIiksc28oIm9iamVjdCI9PXR5cGVvZiBuLCJ0eXBlb2YgcGFyYW1zIG11c3QgPT0gb2JqZWN0IiksZT09PW1hKXI9KHQuc2VjdXJlPyJ3c3M6Ly8iOiJ3czovLyIpK3QuaW50ZXJuYWxIb3N0KyIvLndzPyI7ZWxzZXtpZihlIT09YmEpdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIGNvbm5lY3Rpb24gdHlwZTogIitlKTtyPSh0LnNlY3VyZT8iaHR0cHM6Ly8iOiJodHRwOi8vIikrdC5pbnRlcm5hbEhvc3QrIi8ubHA/In0oKGU9dCkuaG9zdCE9PWUuaW50ZXJuYWxIb3N0fHxlLmlzQ3VzdG9tSG9zdCgpfHxlLmluY2x1ZGVOYW1lc3BhY2VJblF1ZXJ5UGFyYW1zKSYmKG4ubnM9dC5uYW1lc3BhY2UpO3ZhciBpPVtdO3JldHVybiBpYShuLGZ1bmN0aW9uKHQsZSl7aS5wdXNoKHQrIj0iK2UpfSkscitpLmpvaW4oIiYiKX12YXIgVGE9KEVhLnByb3RvdHlwZS5pbmNyZW1lbnRDb3VudGVyPWZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09ZSYmKGU9MSksT28odGhpcy5jb3VudGVyc18sdCl8fCh0aGlzLmNvdW50ZXJzX1t0XT0wKSx0aGlzLmNvdW50ZXJzX1t0XSs9ZX0sRWEucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe3JldHVybiBjbyh0aGlzLmNvdW50ZXJzXyl9LEVhKTtmdW5jdGlvbiBFYSgpe3RoaXMuY291bnRlcnNfPXt9fXZhciBTYT17fSxDYT17fTtmdW5jdGlvbiBOYSh0KXt0PXQudG9TdHJpbmcoKTtyZXR1cm4gU2FbdF18fChTYVt0XT1uZXcgVGEpLFNhW3RdfXZhciBBYT0oa2EucHJvdG90eXBlLmNsb3NlQWZ0ZXI9ZnVuY3Rpb24odCxlKXt0aGlzLmNsb3NlQWZ0ZXJSZXNwb25zZT10LHRoaXMub25DbG9zZT1lLHRoaXMuY2xvc2VBZnRlclJlc3BvbnNlPHRoaXMuY3VycmVudFJlc3BvbnNlTnVtJiYodGhpcy5vbkNsb3NlKCksdGhpcy5vbkNsb3NlPW51bGwpfSxrYS5wcm90b3R5cGUuaGFuZGxlUmVzcG9uc2U9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3RoaXMucGVuZGluZ1Jlc3BvbnNlc1t0XT1lO2Zvcih2YXIgcj10aGlzO3RoaXMucGVuZGluZ1Jlc3BvbnNlc1t0aGlzLmN1cnJlbnRSZXNwb25zZU51bV07KWlmKCJicmVhayI9PT1mdW5jdGlvbigpe3ZhciBlPXIucGVuZGluZ1Jlc3BvbnNlc1tyLmN1cnJlbnRSZXNwb25zZU51bV07ZGVsZXRlIHIucGVuZGluZ1Jlc3BvbnNlc1tyLmN1cnJlbnRSZXNwb25zZU51bV07Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDsrK3QpIWZ1bmN0aW9uKHQpe2VbdF0mJmZhKGZ1bmN0aW9uKCl7bi5vbk1lc3NhZ2VfKGVbdF0pfSl9KHQpO2lmKHIuY3VycmVudFJlc3BvbnNlTnVtPT09ci5jbG9zZUFmdGVyUmVzcG9uc2UpcmV0dXJuIHIub25DbG9zZSYmKHIub25DbG9zZSgpLHIub25DbG9zZT1udWxsKSwiYnJlYWsiO3IuY3VycmVudFJlc3BvbnNlTnVtKyt9KCkpYnJlYWt9LGthKTtmdW5jdGlvbiBrYSh0KXt0aGlzLm9uTWVzc2FnZV89dCx0aGlzLnBlbmRpbmdSZXNwb25zZXM9W10sdGhpcy5jdXJyZW50UmVzcG9uc2VOdW09MCx0aGlzLmNsb3NlQWZ0ZXJSZXNwb25zZT0tMSx0aGlzLm9uQ2xvc2U9bnVsbH12YXIgUmE9InBMUENvbW1hbmQiLFBhPSJwUlRMUENCIixPYT0oRGEucHJvdG90eXBlLm9wZW49ZnVuY3Rpb24odCxlKXt2YXIgbixyLGkscz10aGlzO3RoaXMuY3VyU2VnbWVudE51bT0wLHRoaXMub25EaXNjb25uZWN0Xz1lLHRoaXMubXlQYWNrZXRPcmRlcmVyPW5ldyBBYSh0KSx0aGlzLmlzQ2xvc2VkXz0hMSx0aGlzLmNvbm5lY3RUaW1lb3V0VGltZXJfPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtzLmxvZ18oIlRpbWVkIG91dCB0cnlpbmcgdG8gY29ubmVjdC4iKSxzLm9uQ2xvc2VkXygpLHMuY29ubmVjdFRpbWVvdXRUaW1lcl89bnVsbH0sTWF0aC5mbG9vcigzZTQpKSxuPWZ1bmN0aW9uKCl7dmFyIHQ7cy5pc0Nsb3NlZF98fChzLnNjcmlwdFRhZ0hvbGRlcj1uZXcgeGEoZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dmFyIG49ZW8odCw1KSxyPW5bMF0saT1uWzFdLG89blsyXTtuWzNdLG5bNF07aWYocy5pbmNyZW1lbnRJbmNvbWluZ0J5dGVzXyh0KSxzLnNjcmlwdFRhZ0hvbGRlcilpZihzLmNvbm5lY3RUaW1lb3V0VGltZXJfJiYoY2xlYXJUaW1lb3V0KHMuY29ubmVjdFRpbWVvdXRUaW1lcl8pLHMuY29ubmVjdFRpbWVvdXRUaW1lcl89bnVsbCkscy5ldmVyQ29ubmVjdGVkXz0hMCwic3RhcnQiPT09cilzLmlkPWkscy5wYXNzd29yZD1vO2Vsc2V7aWYoImNsb3NlIiE9PXIpdGhyb3cgbmV3IEVycm9yKCJVbnJlY29nbml6ZWQgY29tbWFuZCByZWNlaXZlZDogIityKTtpPyhzLnNjcmlwdFRhZ0hvbGRlci5zZW5kTmV3UG9sbHM9ITEscy5teVBhY2tldE9yZGVyZXIuY2xvc2VBZnRlcihpLGZ1bmN0aW9uKCl7cy5vbkNsb3NlZF8oKX0pKTpzLm9uQ2xvc2VkXygpfX0sZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dmFyIG49ZW8odCwyKSxyPW5bMF0sbj1uWzFdO3MuaW5jcmVtZW50SW5jb21pbmdCeXRlc18odCkscy5teVBhY2tldE9yZGVyZXIuaGFuZGxlUmVzcG9uc2UocixuKX0sZnVuY3Rpb24oKXtzLm9uQ2xvc2VkXygpfSxzLnVybEZuKSwodD17c3RhcnQ6InQifSkuc2VyPU1hdGguZmxvb3IoMWU4Kk1hdGgucmFuZG9tKCkpLHMuc2NyaXB0VGFnSG9sZGVyLnVuaXF1ZUNhbGxiYWNrSWRlbnRpZmllciYmKHQuY2I9cy5zY3JpcHRUYWdIb2xkZXIudW5pcXVlQ2FsbGJhY2tJZGVudGlmaWVyKSx0LnY9IjUiLHMudHJhbnNwb3J0U2Vzc2lvbklkJiYodC5zPXMudHJhbnNwb3J0U2Vzc2lvbklkKSxzLmxhc3RTZXNzaW9uSWQmJih0LmxzPXMubGFzdFNlc3Npb25JZCkscy5hcHBsaWNhdGlvbklkJiYodC5wPXMuYXBwbGljYXRpb25JZCksInVuZGVmaW5lZCIhPXR5cGVvZiBsb2NhdGlvbiYmbG9jYXRpb24uaG9zdG5hbWUmJnlhLnRlc3QobG9jYXRpb24uaG9zdG5hbWUpJiYodC5yPSJmIiksdD1zLnVybEZuKHQpLHMubG9nXygiQ29ubmVjdGluZyB2aWEgbG9uZy1wb2xsIHRvICIrdCkscy5zY3JpcHRUYWdIb2xkZXIuYWRkVGFnKHQsZnVuY3Rpb24oKXt9KSl9LCJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlP24oKToocj0hMSxpPWZ1bmN0aW9uKCl7ZG9jdW1lbnQuYm9keT9yfHwocj0hMCxuKCkpOnNldFRpbWVvdXQoaSxNYXRoLmZsb29yKDEwKSl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXI/KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGksITEpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixpLCExKSk6ZG9jdW1lbnQuYXR0YWNoRXZlbnQmJihkb2N1bWVudC5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlJiZpKCl9KSx3aW5kb3cuYXR0YWNoRXZlbnQoIm9ubG9hZCIsaSkpKX0sRGEucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7dGhpcy5zY3JpcHRUYWdIb2xkZXIuc3RhcnRMb25nUG9sbCh0aGlzLmlkLHRoaXMucGFzc3dvcmQpLHRoaXMuYWRkRGlzY29ubmVjdFBpbmdGcmFtZSh0aGlzLmlkLHRoaXMucGFzc3dvcmQpfSxEYS5mb3JjZUFsbG93PWZ1bmN0aW9uKCl7RGEuZm9yY2VBbGxvd189ITB9LERhLmZvcmNlRGlzYWxsb3c9ZnVuY3Rpb24oKXtEYS5mb3JjZURpc2FsbG93Xz0hMH0sRGEuaXNBdmFpbGFibGU9ZnVuY3Rpb24oKXtyZXR1cm4hIURhLmZvcmNlQWxsb3dffHwhKERhLmZvcmNlRGlzYWxsb3dffHwidW5kZWZpbmVkIj09dHlwZW9mIGRvY3VtZW50fHxudWxsPT1kb2N1bWVudC5jcmVhdGVFbGVtZW50fHwib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93LmNocm9tZSYmd2luZG93LmNocm9tZS5leHRlbnNpb24mJiEvXmNocm9tZS8udGVzdCh3aW5kb3cubG9jYXRpb24uaHJlZil8fCJvYmplY3QiPT10eXBlb2YgV2luZG93cyYmIm9iamVjdCI9PXR5cGVvZiBXaW5kb3dzLlVJKX0sRGEucHJvdG90eXBlLm1hcmtDb25uZWN0aW9uSGVhbHRoeT1mdW5jdGlvbigpe30sRGEucHJvdG90eXBlLnNodXRkb3duXz1mdW5jdGlvbigpe3RoaXMuaXNDbG9zZWRfPSEwLHRoaXMuc2NyaXB0VGFnSG9sZGVyJiYodGhpcy5zY3JpcHRUYWdIb2xkZXIuY2xvc2UoKSx0aGlzLnNjcmlwdFRhZ0hvbGRlcj1udWxsKSx0aGlzLm15RGlzY29ubkZyYW1lJiYoZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0aGlzLm15RGlzY29ubkZyYW1lKSx0aGlzLm15RGlzY29ubkZyYW1lPW51bGwpLHRoaXMuY29ubmVjdFRpbWVvdXRUaW1lcl8mJihjbGVhclRpbWVvdXQodGhpcy5jb25uZWN0VGltZW91dFRpbWVyXyksdGhpcy5jb25uZWN0VGltZW91dFRpbWVyXz1udWxsKX0sRGEucHJvdG90eXBlLm9uQ2xvc2VkXz1mdW5jdGlvbigpe3RoaXMuaXNDbG9zZWRffHwodGhpcy5sb2dfKCJMb25ncG9sbCBpcyBjbG9zaW5nIGl0c2VsZiIpLHRoaXMuc2h1dGRvd25fKCksdGhpcy5vbkRpc2Nvbm5lY3RfJiYodGhpcy5vbkRpc2Nvbm5lY3RfKHRoaXMuZXZlckNvbm5lY3RlZF8pLHRoaXMub25EaXNjb25uZWN0Xz1udWxsKSl9LERhLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3RoaXMuaXNDbG9zZWRffHwodGhpcy5sb2dfKCJMb25ncG9sbCBpcyBiZWluZyBjbG9zZWQuIiksdGhpcy5zaHV0ZG93bl8oKSl9LERhLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKHQpe3Q9Um8odCk7dGhpcy5ieXRlc1NlbnQrPXQubGVuZ3RoLHRoaXMuc3RhdHNfLmluY3JlbWVudENvdW50ZXIoImJ5dGVzX3NlbnQiLHQubGVuZ3RoKTtmb3IodmFyIHQ9ZnVuY3Rpb24odCl7dD1ybyh0KTtyZXR1cm4gdW8uZW5jb2RlQnl0ZUFycmF5KHQsITApfSh0KSxlPVZzKHQsMTg0MCksbj0wO248ZS5sZW5ndGg7bisrKXRoaXMuc2NyaXB0VGFnSG9sZGVyLmVucXVldWVTZWdtZW50KHRoaXMuY3VyU2VnbWVudE51bSxlLmxlbmd0aCxlW25dKSx0aGlzLmN1clNlZ21lbnROdW0rK30sRGEucHJvdG90eXBlLmFkZERpc2Nvbm5lY3RQaW5nRnJhbWU9ZnVuY3Rpb24odCxlKXt0aGlzLm15RGlzY29ubkZyYW1lPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpO3ZhciBuPXtkZnJhbWU6InQifTtuLmlkPXQsbi5wdz1lLHRoaXMubXlEaXNjb25uRnJhbWUuc3JjPXRoaXMudXJsRm4obiksdGhpcy5teURpc2Nvbm5GcmFtZS5zdHlsZS5kaXNwbGF5PSJub25lIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMubXlEaXNjb25uRnJhbWUpfSxEYS5wcm90b3R5cGUuaW5jcmVtZW50SW5jb21pbmdCeXRlc189ZnVuY3Rpb24odCl7dD1Sbyh0KS5sZW5ndGg7dGhpcy5ieXRlc1JlY2VpdmVkKz10LHRoaXMuc3RhdHNfLmluY3JlbWVudENvdW50ZXIoImJ5dGVzX3JlY2VpdmVkIix0KX0sRGEpO2Z1bmN0aW9uIERhKHQsZSxuLHIsaSl7dGhpcy5jb25uSWQ9dCx0aGlzLnJlcG9JbmZvPWUsdGhpcy5hcHBsaWNhdGlvbklkPW4sdGhpcy50cmFuc3BvcnRTZXNzaW9uSWQ9cix0aGlzLmxhc3RTZXNzaW9uSWQ9aSx0aGlzLmJ5dGVzU2VudD0wLHRoaXMuYnl0ZXNSZWNlaXZlZD0wLHRoaXMuZXZlckNvbm5lY3RlZF89ITEsdGhpcy5sb2dfPUpzKHQpLHRoaXMuc3RhdHNfPU5hKGUpLHRoaXMudXJsRm49ZnVuY3Rpb24odCl7cmV0dXJuIElhKGUsYmEsdCl9fXZhciB4YT0oTGEuY3JlYXRlSUZyYW1lXz1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpO2lmKGUuc3R5bGUuZGlzcGxheT0ibm9uZSIsIWRvY3VtZW50LmJvZHkpdGhyb3ciRG9jdW1lbnQgYm9keSBoYXMgbm90IGluaXRpYWxpemVkLiBXYWl0IHRvIGluaXRpYWxpemUgRmlyZWJhc2UgdW50aWwgYWZ0ZXIgdGhlIGRvY3VtZW50IGlzIHJlYWR5LiI7ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKTt0cnl7ZS5jb250ZW50V2luZG93LmRvY3VtZW50fHxYcygiTm8gSUUgZG9tYWluIHNldHRpbmcgcmVxdWlyZWQiKX1jYXRjaCh0KXt2YXIgbj1kb2N1bWVudC5kb21haW47ZS5zcmM9ImphdmFzY3JpcHQ6dm9pZCgoZnVuY3Rpb24oKXtkb2N1bWVudC5vcGVuKCk7ZG9jdW1lbnQuZG9tYWluPSciK24rIic7ZG9jdW1lbnQuY2xvc2UoKTt9KSgpKSJ9cmV0dXJuIGUuY29udGVudERvY3VtZW50P2UuZG9jPWUuY29udGVudERvY3VtZW50OmUuY29udGVudFdpbmRvdz9lLmRvYz1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ6ZS5kb2N1bWVudCYmKGUuZG9jPWUuZG9jdW1lbnQpLGV9LExhLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5hbGl2ZT0hMSx0aGlzLm15SUZyYW1lJiYodGhpcy5teUlGcmFtZS5kb2MuYm9keS5pbm5lckhUTUw9IiIsc2V0VGltZW91dChmdW5jdGlvbigpe251bGwhPT10Lm15SUZyYW1lJiYoZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0Lm15SUZyYW1lKSx0Lm15SUZyYW1lPW51bGwpfSxNYXRoLmZsb29yKDApKSk7dmFyIGU9dGhpcy5vbkRpc2Nvbm5lY3Q7ZSYmKHRoaXMub25EaXNjb25uZWN0PW51bGwsZSgpKX0sTGEucHJvdG90eXBlLnN0YXJ0TG9uZ1BvbGw9ZnVuY3Rpb24odCxlKXtmb3IodGhpcy5teUlEPXQsdGhpcy5teVBXPWUsdGhpcy5hbGl2ZT0hMDt0aGlzLm5ld1JlcXVlc3RfKCk7KTt9LExhLnByb3RvdHlwZS5uZXdSZXF1ZXN0Xz1mdW5jdGlvbigpe2lmKHRoaXMuYWxpdmUmJnRoaXMuc2VuZE5ld1BvbGxzJiZ0aGlzLm91dHN0YW5kaW5nUmVxdWVzdHMuc2l6ZTwoMDx0aGlzLnBlbmRpbmdTZWdzLmxlbmd0aD8yOjEpKXt0aGlzLmN1cnJlbnRTZXJpYWwrKzt2YXIgdD17fTt0LmlkPXRoaXMubXlJRCx0LnB3PXRoaXMubXlQVyx0LnNlcj10aGlzLmN1cnJlbnRTZXJpYWw7Zm9yKHZhciB0PXRoaXMudXJsRm4odCksZT0iIixuPTA7MDx0aGlzLnBlbmRpbmdTZWdzLmxlbmd0aDspe2lmKCEodGhpcy5wZW5kaW5nU2Vnc1swXS5kLmxlbmd0aCszMCtlLmxlbmd0aDw9MTg3MCkpYnJlYWs7dmFyIHI9dGhpcy5wZW5kaW5nU2Vncy5zaGlmdCgpLGU9ZSsiJnNlZyIrbisiPSIrci5zZWcrIiZ0cyIrbisiPSIrci50cysiJmQiK24rIj0iK3IuZDtuKyt9cmV0dXJuIHQrPWUsdGhpcy5hZGRMb25nUG9sbFRhZ18odCx0aGlzLmN1cnJlbnRTZXJpYWwpLCEwfXJldHVybiExfSxMYS5wcm90b3R5cGUuZW5xdWV1ZVNlZ21lbnQ9ZnVuY3Rpb24odCxlLG4pe3RoaXMucGVuZGluZ1NlZ3MucHVzaCh7c2VnOnQsdHM6ZSxkOm59KSx0aGlzLmFsaXZlJiZ0aGlzLm5ld1JlcXVlc3RfKCl9LExhLnByb3RvdHlwZS5hZGRMb25nUG9sbFRhZ189ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3RoaXMub3V0c3RhbmRpbmdSZXF1ZXN0cy5hZGQoZSk7ZnVuY3Rpb24gcigpe24ub3V0c3RhbmRpbmdSZXF1ZXN0cy5kZWxldGUoZSksbi5uZXdSZXF1ZXN0XygpfXZhciBpPXNldFRpbWVvdXQocixNYXRoLmZsb29yKDI1ZTMpKTt0aGlzLmFkZFRhZyh0LGZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGkpLHIoKX0pfSxMYS5wcm90b3R5cGUuYWRkVGFnPWZ1bmN0aW9uKHQsbil7dmFyIHI9dGhpcztzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dHJ5e2lmKCFyLnNlbmROZXdQb2xscylyZXR1cm47dmFyIGU9ci5teUlGcmFtZS5kb2MuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ZS50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGUuYXN5bmM9ITAsZS5zcmM9dCxlLm9ubG9hZD1lLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe3ZhciB0PWUucmVhZHlTdGF0ZTt0JiYibG9hZGVkIiE9PXQmJiJjb21wbGV0ZSIhPT10fHwoZS5vbmxvYWQ9ZS5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCxlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlKSxuKCkpfSxlLm9uZXJyb3I9ZnVuY3Rpb24oKXtYcygiTG9uZy1wb2xsIHNjcmlwdCBmYWlsZWQgdG8gbG9hZDogIit0KSxyLnNlbmROZXdQb2xscz0hMSxyLmNsb3NlKCl9LHIubXlJRnJhbWUuZG9jLmJvZHkuYXBwZW5kQ2hpbGQoZSl9Y2F0Y2godCl7fX0sTWF0aC5mbG9vcigxKSl9LExhKTtmdW5jdGlvbiBMYSh0LGUsbixyKXt0aGlzLm9uRGlzY29ubmVjdD1uLHRoaXMudXJsRm49cix0aGlzLm91dHN0YW5kaW5nUmVxdWVzdHM9bmV3IFNldCx0aGlzLnBlbmRpbmdTZWdzPVtdLHRoaXMuY3VycmVudFNlcmlhbD1NYXRoLmZsb29yKDFlOCpNYXRoLnJhbmRvbSgpKSx0aGlzLnNlbmROZXdQb2xscz0hMCx0aGlzLnVuaXF1ZUNhbGxiYWNrSWRlbnRpZmllcj1HcygpLHdpbmRvd1tSYSt0aGlzLnVuaXF1ZUNhbGxiYWNrSWRlbnRpZmllcl09dCx3aW5kb3dbUGErdGhpcy51bmlxdWVDYWxsYmFja0lkZW50aWZpZXJdPWUsdGhpcy5teUlGcmFtZT1MYS5jcmVhdGVJRnJhbWVfKCk7dmFyIGU9IiIsaT0iPGh0bWw+PGJvZHk+IisoZT10aGlzLm15SUZyYW1lLnNyYyYmImphdmFzY3JpcHQ6Ij09PXRoaXMubXlJRnJhbWUuc3JjLnN1YnN0cigwLCJqYXZhc2NyaXB0OiIubGVuZ3RoKT8nPHNjcmlwdD5kb2N1bWVudC5kb21haW49IicrZG9jdW1lbnQuZG9tYWluKyciOzxcL3NjcmlwdD4nOmUpKyI8L2JvZHk+PC9odG1sPiI7dHJ5e3RoaXMubXlJRnJhbWUuZG9jLm9wZW4oKSx0aGlzLm15SUZyYW1lLmRvYy53cml0ZShpKSx0aGlzLm15SUZyYW1lLmRvYy5jbG9zZSgpfWNhdGNoKHQpe1hzKCJmcmFtZSB3cml0aW5nIGV4Y2VwdGlvbiIpLHQuc3RhY2smJlhzKHQuc3RhY2spLFhzKHQpfX12YXIgTWE9IiI7ZnVuY3Rpb24gRmEodCl7TWE9dH12YXIgVWE9bnVsbDsidW5kZWZpbmVkIiE9dHlwZW9mIE1veldlYlNvY2tldD9VYT1Nb3pXZWJTb2NrZXQ6InVuZGVmaW5lZCIhPXR5cGVvZiBXZWJTb2NrZXQmJihVYT1XZWJTb2NrZXQpO3ZhciBqYT0ocWEuY29ubmVjdGlvblVSTF89ZnVuY3Rpb24odCxlLG4pe3ZhciByPXt2OiI1In07cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBsb2NhdGlvbiYmbG9jYXRpb24uaG9zdG5hbWUmJnlhLnRlc3QobG9jYXRpb24uaG9zdG5hbWUpJiYoci5yPSJmIiksZSYmKHIucz1lKSxuJiYoci5scz1uKSxJYSh0LG1hLHIpfSxxYS5wcm90b3R5cGUub3Blbj1mdW5jdGlvbihlLHQpe3ZhciBuLHI9dGhpczt0aGlzLm9uRGlzY29ubmVjdD10LHRoaXMub25NZXNzYWdlPWUsdGhpcy5sb2dfKCJXZWJzb2NrZXQgY29ubmVjdGluZyB0byAiK3RoaXMuY29ublVSTCksdGhpcy5ldmVyQ29ubmVjdGVkXz0hMSxLcy5zZXQoInByZXZpb3VzX3dlYnNvY2tldF9mYWlsdXJlIiwhMCk7dHJ5e21vKCl8fChuPXtoZWFkZXJzOnsiWC1GaXJlYmFzZS1HTVBJRCI6dGhpcy5hcHBsaWNhdGlvbklkfHwiIn19LHRoaXMubXlTb2NrPW5ldyBVYSh0aGlzLmNvbm5VUkwsW10sbikpfWNhdGNoKHQpe3RoaXMubG9nXygiRXJyb3IgaW5zdGFudGlhdGluZyBXZWJTb2NrZXQuIik7ZT10Lm1lc3NhZ2V8fHQuZGF0YTtyZXR1cm4gZSYmdGhpcy5sb2dfKGUpLHZvaWQgdGhpcy5vbkNsb3NlZF8oKX10aGlzLm15U29jay5vbm9wZW49ZnVuY3Rpb24oKXtyLmxvZ18oIldlYnNvY2tldCBjb25uZWN0ZWQuIiksci5ldmVyQ29ubmVjdGVkXz0hMH0sdGhpcy5teVNvY2sub25jbG9zZT1mdW5jdGlvbigpe3IubG9nXygiV2Vic29ja2V0IGNvbm5lY3Rpb24gd2FzIGRpc2Nvbm5lY3RlZC4iKSxyLm15U29jaz1udWxsLHIub25DbG9zZWRfKCl9LHRoaXMubXlTb2NrLm9ubWVzc2FnZT1mdW5jdGlvbih0KXtyLmhhbmRsZUluY29taW5nRnJhbWUodCl9LHRoaXMubXlTb2NrLm9uZXJyb3I9ZnVuY3Rpb24odCl7ci5sb2dfKCJXZWJTb2NrZXQgZXJyb3IuICBDbG9zaW5nIGNvbm5lY3Rpb24uIik7dD10Lm1lc3NhZ2V8fHQuZGF0YTt0JiZyLmxvZ18odCksci5vbkNsb3NlZF8oKX19LHFhLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe30scWEuZm9yY2VEaXNhbGxvdz1mdW5jdGlvbigpe3FhLmZvcmNlRGlzYWxsb3dfPSEwfSxxYS5pc0F2YWlsYWJsZT1mdW5jdGlvbigpe3ZhciB0LGU9ITE7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJm5hdmlnYXRvci51c2VyQWdlbnQmJigodD1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9BbmRyb2lkIChbMC05XXswLH1cLlswLTldezAsfSkvKSkmJjE8dC5sZW5ndGgmJnBhcnNlRmxvYXQodFsxXSk8NC40JiYoZT0hMCkpLCFlJiZudWxsIT09VWEmJiFxYS5mb3JjZURpc2FsbG93X30scWEucHJldmlvdXNseUZhaWxlZD1mdW5jdGlvbigpe3JldHVybiBLcy5pc0luTWVtb3J5U3RvcmFnZXx8ITA9PT1Lcy5nZXQoInByZXZpb3VzX3dlYnNvY2tldF9mYWlsdXJlIil9LHFhLnByb3RvdHlwZS5tYXJrQ29ubmVjdGlvbkhlYWx0aHk9ZnVuY3Rpb24oKXtLcy5yZW1vdmUoInByZXZpb3VzX3dlYnNvY2tldF9mYWlsdXJlIil9LHFhLnByb3RvdHlwZS5hcHBlbmRGcmFtZV89ZnVuY3Rpb24odCl7dGhpcy5mcmFtZXMucHVzaCh0KSx0aGlzLmZyYW1lcy5sZW5ndGg9PT10aGlzLnRvdGFsRnJhbWVzJiYodD10aGlzLmZyYW1lcy5qb2luKCIiKSx0aGlzLmZyYW1lcz1udWxsLHQ9a28odCksdGhpcy5vbk1lc3NhZ2UodCkpfSxxYS5wcm90b3R5cGUuaGFuZGxlTmV3RnJhbWVDb3VudF89ZnVuY3Rpb24odCl7dGhpcy50b3RhbEZyYW1lcz10LHRoaXMuZnJhbWVzPVtdfSxxYS5wcm90b3R5cGUuZXh0cmFjdEZyYW1lQ291bnRfPWZ1bmN0aW9uKHQpe2lmKHNvKG51bGw9PT10aGlzLmZyYW1lcywiV2UgYWxyZWFkeSBoYXZlIGEgZnJhbWUgYnVmZmVyIiksdC5sZW5ndGg8PTYpe3ZhciBlPU51bWJlcih0KTtpZighaXNOYU4oZSkpcmV0dXJuIHRoaXMuaGFuZGxlTmV3RnJhbWVDb3VudF8oZSksbnVsbH1yZXR1cm4gdGhpcy5oYW5kbGVOZXdGcmFtZUNvdW50XygxKSx0fSxxYS5wcm90b3R5cGUuaGFuZGxlSW5jb21pbmdGcmFtZT1mdW5jdGlvbih0KXtudWxsIT09dGhpcy5teVNvY2smJih0PXQuZGF0YSx0aGlzLmJ5dGVzUmVjZWl2ZWQrPXQubGVuZ3RoLHRoaXMuc3RhdHNfLmluY3JlbWVudENvdW50ZXIoImJ5dGVzX3JlY2VpdmVkIix0Lmxlbmd0aCksdGhpcy5yZXNldEtlZXBBbGl2ZSgpLG51bGwhPT10aGlzLmZyYW1lcz90aGlzLmFwcGVuZEZyYW1lXyh0KTpudWxsIT09KHQ9dGhpcy5leHRyYWN0RnJhbWVDb3VudF8odCkpJiZ0aGlzLmFwcGVuZEZyYW1lXyh0KSl9LHFhLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKHQpe3RoaXMucmVzZXRLZWVwQWxpdmUoKTt0PVJvKHQpO3RoaXMuYnl0ZXNTZW50Kz10Lmxlbmd0aCx0aGlzLnN0YXRzXy5pbmNyZW1lbnRDb3VudGVyKCJieXRlc19zZW50Iix0Lmxlbmd0aCk7dmFyIGU9VnModCwxNjM4NCk7MTxlLmxlbmd0aCYmdGhpcy5zZW5kU3RyaW5nXyhTdHJpbmcoZS5sZW5ndGgpKTtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl0aGlzLnNlbmRTdHJpbmdfKGVbbl0pfSxxYS5wcm90b3R5cGUuc2h1dGRvd25fPWZ1bmN0aW9uKCl7dGhpcy5pc0Nsb3NlZF89ITAsdGhpcy5rZWVwYWxpdmVUaW1lciYmKGNsZWFySW50ZXJ2YWwodGhpcy5rZWVwYWxpdmVUaW1lciksdGhpcy5rZWVwYWxpdmVUaW1lcj1udWxsKSx0aGlzLm15U29jayYmKHRoaXMubXlTb2NrLmNsb3NlKCksdGhpcy5teVNvY2s9bnVsbCl9LHFhLnByb3RvdHlwZS5vbkNsb3NlZF89ZnVuY3Rpb24oKXt0aGlzLmlzQ2xvc2VkX3x8KHRoaXMubG9nXygiV2ViU29ja2V0IGlzIGNsb3NpbmcgaXRzZWxmIiksdGhpcy5zaHV0ZG93bl8oKSx0aGlzLm9uRGlzY29ubmVjdCYmKHRoaXMub25EaXNjb25uZWN0KHRoaXMuZXZlckNvbm5lY3RlZF8pLHRoaXMub25EaXNjb25uZWN0PW51bGwpKX0scWEucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7dGhpcy5pc0Nsb3NlZF98fCh0aGlzLmxvZ18oIldlYlNvY2tldCBpcyBiZWluZyBjbG9zZWQiKSx0aGlzLnNodXRkb3duXygpKX0scWEucHJvdG90eXBlLnJlc2V0S2VlcEFsaXZlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztjbGVhckludGVydmFsKHRoaXMua2VlcGFsaXZlVGltZXIpLHRoaXMua2VlcGFsaXZlVGltZXI9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt0Lm15U29jayYmdC5zZW5kU3RyaW5nXygiMCIpLHQucmVzZXRLZWVwQWxpdmUoKX0sTWF0aC5mbG9vcig0NWUzKSl9LHFhLnByb3RvdHlwZS5zZW5kU3RyaW5nXz1mdW5jdGlvbih0KXt0cnl7dGhpcy5teVNvY2suc2VuZCh0KX1jYXRjaCh0KXt0aGlzLmxvZ18oIkV4Y2VwdGlvbiB0aHJvd24gZnJvbSBXZWJTb2NrZXQuc2VuZCgpOiIsdC5tZXNzYWdlfHx0LmRhdGEsIkNsb3NpbmcgY29ubmVjdGlvbi4iKSxzZXRUaW1lb3V0KHRoaXMub25DbG9zZWRfLmJpbmQodGhpcyksMCl9fSxxYS5yZXNwb25zZXNSZXF1aXJlZFRvQmVIZWFsdGh5PTIscWEuaGVhbHRoeVRpbWVvdXQ9M2U0LHFhKTtmdW5jdGlvbiBxYSh0LGUsbixyLGkpe3RoaXMuY29ubklkPXQsdGhpcy5hcHBsaWNhdGlvbklkPW4sdGhpcy5rZWVwYWxpdmVUaW1lcj1udWxsLHRoaXMuZnJhbWVzPW51bGwsdGhpcy50b3RhbEZyYW1lcz0wLHRoaXMuYnl0ZXNTZW50PTAsdGhpcy5ieXRlc1JlY2VpdmVkPTAsdGhpcy5sb2dfPUpzKHRoaXMuY29ubklkKSx0aGlzLnN0YXRzXz1OYShlKSx0aGlzLmNvbm5VUkw9cWEuY29ubmVjdGlvblVSTF8oZSxyLGkpLHRoaXMubm9kZUFkbWluPWUubm9kZUFkbWlufXZhciBWYT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KEJhLCJBTExfVFJBTlNQT1JUUyIse2dldDpmdW5jdGlvbigpe3JldHVybltPYSxqYV19LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksQmEucHJvdG90eXBlLmluaXRUcmFuc3BvcnRzXz1mdW5jdGlvbih0KXt2YXIgZSxuLHI9amEmJmphLmlzQXZhaWxhYmxlKCksaT1yJiYhamEucHJldmlvdXNseUZhaWxlZCgpO2lmKHQud2ViU29ja2V0T25seSYmKHJ8fFpzKCJ3c3M6Ly8gVVJMIHVzZWQsIGJ1dCBicm93c2VyIGlzbid0IGtub3duIHRvIHN1cHBvcnQgd2Vic29ja2V0cy4gIFRyeWluZyBhbnl3YXkuIiksaT0hMCksaSl0aGlzLnRyYW5zcG9ydHNfPVtqYV07ZWxzZXt2YXIgbz10aGlzLnRyYW5zcG9ydHNfPVtdO3RyeXtmb3IodmFyIHM9dG8oQmEuQUxMX1RSQU5TUE9SVFMpLGE9cy5uZXh0KCk7IWEuZG9uZTthPXMubmV4dCgpKXt2YXIgdT1hLnZhbHVlO3UmJnUuaXNBdmFpbGFibGUoKSYmby5wdXNoKHUpfX1jYXRjaCh0KXtlPXtlcnJvcjp0fX1maW5hbGx5e3RyeXthJiYhYS5kb25lJiYobj1zLnJldHVybikmJm4uY2FsbChzKX1maW5hbGx5e2lmKGUpdGhyb3cgZS5lcnJvcn19fX0sQmEucHJvdG90eXBlLmluaXRpYWxUcmFuc3BvcnQ9ZnVuY3Rpb24oKXtpZigwPHRoaXMudHJhbnNwb3J0c18ubGVuZ3RoKXJldHVybiB0aGlzLnRyYW5zcG9ydHNfWzBdO3Rocm93IG5ldyBFcnJvcigiTm8gdHJhbnNwb3J0cyBhdmFpbGFibGUiKX0sQmEucHJvdG90eXBlLnVwZ3JhZGVUcmFuc3BvcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gMTx0aGlzLnRyYW5zcG9ydHNfLmxlbmd0aD90aGlzLnRyYW5zcG9ydHNfWzFdOm51bGx9LEJhKTtmdW5jdGlvbiBCYSh0KXt0aGlzLmluaXRUcmFuc3BvcnRzXyh0KX12YXIgS2E9KFdhLnByb3RvdHlwZS5zdGFydF89ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dGhpcy50cmFuc3BvcnRNYW5hZ2VyXy5pbml0aWFsVHJhbnNwb3J0KCk7dGhpcy5jb25uXz1uZXcgZSh0aGlzLm5leHRUcmFuc3BvcnRJZF8oKSx0aGlzLnJlcG9JbmZvXyx0aGlzLmFwcGxpY2F0aW9uSWRfLHZvaWQgMCx0aGlzLmxhc3RTZXNzaW9uSWQpLHRoaXMucHJpbWFyeVJlc3BvbnNlc1JlcXVpcmVkXz1lLnJlc3BvbnNlc1JlcXVpcmVkVG9CZUhlYWx0aHl8fDA7dmFyIG49dGhpcy5jb25uUmVjZWl2ZXJfKHRoaXMuY29ubl8pLHI9dGhpcy5kaXNjb25uUmVjZWl2ZXJfKHRoaXMuY29ubl8pO3RoaXMudHhfPXRoaXMuY29ubl8sdGhpcy5yeF89dGhpcy5jb25uXyx0aGlzLnNlY29uZGFyeUNvbm5fPW51bGwsdGhpcy5pc0hlYWx0aHlfPSExLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNvbm5fJiZ0LmNvbm5fLm9wZW4obixyKX0sTWF0aC5mbG9vcigwKSk7ZT1lLmhlYWx0aHlUaW1lb3V0fHwwOzA8ZSYmKHRoaXMuaGVhbHRoeVRpbWVvdXRfPXNhKGZ1bmN0aW9uKCl7dC5oZWFsdGh5VGltZW91dF89bnVsbCx0LmlzSGVhbHRoeV98fCh0LmNvbm5fJiYxMDI0MDA8dC5jb25uXy5ieXRlc1JlY2VpdmVkPyh0LmxvZ18oIkNvbm5lY3Rpb24gZXhjZWVkZWQgaGVhbHRoeSB0aW1lb3V0IGJ1dCBoYXMgcmVjZWl2ZWQgIit0LmNvbm5fLmJ5dGVzUmVjZWl2ZWQrIiBieXRlcy4gIE1hcmtpbmcgY29ubmVjdGlvbiBoZWFsdGh5LiIpLHQuaXNIZWFsdGh5Xz0hMCx0LmNvbm5fLm1hcmtDb25uZWN0aW9uSGVhbHRoeSgpKTp0LmNvbm5fJiYxMDI0MDx0LmNvbm5fLmJ5dGVzU2VudD90LmxvZ18oIkNvbm5lY3Rpb24gZXhjZWVkZWQgaGVhbHRoeSB0aW1lb3V0IGJ1dCBoYXMgc2VudCAiK3QuY29ubl8uYnl0ZXNTZW50KyIgYnl0ZXMuICBMZWF2aW5nIGNvbm5lY3Rpb24gYWxpdmUuIik6KHQubG9nXygiQ2xvc2luZyB1bmhlYWx0aHkgY29ubmVjdGlvbiBhZnRlciB0aW1lb3V0LiIpLHQuY2xvc2UoKSkpfSxNYXRoLmZsb29yKGUpKSl9LFdhLnByb3RvdHlwZS5uZXh0VHJhbnNwb3J0SWRfPWZ1bmN0aW9uKCl7cmV0dXJuImM6Iit0aGlzLmlkKyI6Iit0aGlzLmNvbm5lY3Rpb25Db3VudCsrfSxXYS5wcm90b3R5cGUuZGlzY29ublJlY2VpdmVyXz1mdW5jdGlvbihlKXt2YXIgbj10aGlzO3JldHVybiBmdW5jdGlvbih0KXtlPT09bi5jb25uXz9uLm9uQ29ubmVjdGlvbkxvc3RfKHQpOmU9PT1uLnNlY29uZGFyeUNvbm5fPyhuLmxvZ18oIlNlY29uZGFyeSBjb25uZWN0aW9uIGxvc3QuIiksbi5vblNlY29uZGFyeUNvbm5lY3Rpb25Mb3N0XygpKTpuLmxvZ18oImNsb3NpbmcgYW4gb2xkIGNvbm5lY3Rpb24iKX19LFdhLnByb3RvdHlwZS5jb25uUmVjZWl2ZXJfPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKHQpezIhPT1uLnN0YXRlXyYmKGU9PT1uLnJ4Xz9uLm9uUHJpbWFyeU1lc3NhZ2VSZWNlaXZlZF8odCk6ZT09PW4uc2Vjb25kYXJ5Q29ubl8/bi5vblNlY29uZGFyeU1lc3NhZ2VSZWNlaXZlZF8odCk6bi5sb2dfKCJtZXNzYWdlIG9uIG9sZCBjb25uZWN0aW9uIikpfX0sV2EucHJvdG90eXBlLnNlbmRSZXF1ZXN0PWZ1bmN0aW9uKHQpe3Q9e3Q6ImQiLGQ6dH07dGhpcy5zZW5kRGF0YV8odCl9LFdhLnByb3RvdHlwZS50cnlDbGVhbnVwQ29ubmVjdGlvbj1mdW5jdGlvbigpe3RoaXMudHhfPT09dGhpcy5zZWNvbmRhcnlDb25uXyYmdGhpcy5yeF89PT10aGlzLnNlY29uZGFyeUNvbm5fJiYodGhpcy5sb2dfKCJjbGVhbmluZyB1cCBhbmQgcHJvbW90aW5nIGEgY29ubmVjdGlvbjogIit0aGlzLnNlY29uZGFyeUNvbm5fLmNvbm5JZCksdGhpcy5jb25uXz10aGlzLnNlY29uZGFyeUNvbm5fLHRoaXMuc2Vjb25kYXJ5Q29ubl89bnVsbCl9LFdhLnByb3RvdHlwZS5vblNlY29uZGFyeUNvbnRyb2xfPWZ1bmN0aW9uKHQpeyJ0ImluIHQmJigiYSI9PT0odD10LnQpP3RoaXMudXBncmFkZUlmU2Vjb25kYXJ5SGVhbHRoeV8oKToiciI9PT10Pyh0aGlzLmxvZ18oIkdvdCBhIHJlc2V0IG9uIHNlY29uZGFyeSwgY2xvc2luZyBpdCIpLHRoaXMuc2Vjb25kYXJ5Q29ubl8uY2xvc2UoKSx0aGlzLnR4XyE9PXRoaXMuc2Vjb25kYXJ5Q29ubl8mJnRoaXMucnhfIT09dGhpcy5zZWNvbmRhcnlDb25uX3x8dGhpcy5jbG9zZSgpKToibyI9PT10JiYodGhpcy5sb2dfKCJnb3QgcG9uZyBvbiBzZWNvbmRhcnkuIiksdGhpcy5zZWNvbmRhcnlSZXNwb25zZXNSZXF1aXJlZF8tLSx0aGlzLnVwZ3JhZGVJZlNlY29uZGFyeUhlYWx0aHlfKCkpKX0sV2EucHJvdG90eXBlLm9uU2Vjb25kYXJ5TWVzc2FnZVJlY2VpdmVkXz1mdW5jdGlvbih0KXt2YXIgZT1xcygidCIsdCksdD1xcygiZCIsdCk7aWYoImMiPT09ZSl0aGlzLm9uU2Vjb25kYXJ5Q29udHJvbF8odCk7ZWxzZXtpZigiZCIhPT1lKXRocm93IG5ldyBFcnJvcigiVW5rbm93biBwcm90b2NvbCBsYXllcjogIitlKTt0aGlzLnBlbmRpbmdEYXRhTWVzc2FnZXMucHVzaCh0KX19LFdhLnByb3RvdHlwZS51cGdyYWRlSWZTZWNvbmRhcnlIZWFsdGh5Xz1mdW5jdGlvbigpe3RoaXMuc2Vjb25kYXJ5UmVzcG9uc2VzUmVxdWlyZWRfPD0wPyh0aGlzLmxvZ18oIlNlY29uZGFyeSBjb25uZWN0aW9uIGlzIGhlYWx0aHkuIiksdGhpcy5pc0hlYWx0aHlfPSEwLHRoaXMuc2Vjb25kYXJ5Q29ubl8ubWFya0Nvbm5lY3Rpb25IZWFsdGh5KCksdGhpcy5wcm9jZWVkV2l0aFVwZ3JhZGVfKCkpOih0aGlzLmxvZ18oInNlbmRpbmcgcGluZyBvbiBzZWNvbmRhcnkuIiksdGhpcy5zZWNvbmRhcnlDb25uXy5zZW5kKHt0OiJjIixkOnt0OiJwIixkOnt9fX0pKX0sV2EucHJvdG90eXBlLnByb2NlZWRXaXRoVXBncmFkZV89ZnVuY3Rpb24oKXt0aGlzLnNlY29uZGFyeUNvbm5fLnN0YXJ0KCksdGhpcy5sb2dfKCJzZW5kaW5nIGNsaWVudCBhY2sgb24gc2Vjb25kYXJ5IiksdGhpcy5zZWNvbmRhcnlDb25uXy5zZW5kKHt0OiJjIixkOnt0OiJhIixkOnt9fX0pLHRoaXMubG9nXygiRW5kaW5nIHRyYW5zbWlzc2lvbiBvbiBwcmltYXJ5IiksdGhpcy5jb25uXy5zZW5kKHt0OiJjIixkOnt0OiJuIixkOnt9fX0pLHRoaXMudHhfPXRoaXMuc2Vjb25kYXJ5Q29ubl8sdGhpcy50cnlDbGVhbnVwQ29ubmVjdGlvbigpfSxXYS5wcm90b3R5cGUub25QcmltYXJ5TWVzc2FnZVJlY2VpdmVkXz1mdW5jdGlvbih0KXt2YXIgZT1xcygidCIsdCksdD1xcygiZCIsdCk7ImMiPT09ZT90aGlzLm9uQ29udHJvbF8odCk6ImQiPT09ZSYmdGhpcy5vbkRhdGFNZXNzYWdlXyh0KX0sV2EucHJvdG90eXBlLm9uRGF0YU1lc3NhZ2VfPWZ1bmN0aW9uKHQpe3RoaXMub25QcmltYXJ5UmVzcG9uc2VfKCksdGhpcy5vbk1lc3NhZ2VfKHQpfSxXYS5wcm90b3R5cGUub25QcmltYXJ5UmVzcG9uc2VfPWZ1bmN0aW9uKCl7dGhpcy5pc0hlYWx0aHlffHwodGhpcy5wcmltYXJ5UmVzcG9uc2VzUmVxdWlyZWRfLS0sdGhpcy5wcmltYXJ5UmVzcG9uc2VzUmVxdWlyZWRfPD0wJiYodGhpcy5sb2dfKCJQcmltYXJ5IGNvbm5lY3Rpb24gaXMgaGVhbHRoeS4iKSx0aGlzLmlzSGVhbHRoeV89ITAsdGhpcy5jb25uXy5tYXJrQ29ubmVjdGlvbkhlYWx0aHkoKSkpfSxXYS5wcm90b3R5cGUub25Db250cm9sXz1mdW5jdGlvbih0KXt2YXIgZT1xcygidCIsdCk7aWYoImQiaW4gdCl7dD10LmQ7aWYoImgiPT09ZSl0aGlzLm9uSGFuZHNoYWtlXyh0KTtlbHNlIGlmKCJuIj09PWUpe3RoaXMubG9nXygicmVjdmQgZW5kIHRyYW5zbWlzc2lvbiBvbiBwcmltYXJ5IiksdGhpcy5yeF89dGhpcy5zZWNvbmRhcnlDb25uXztmb3IodmFyIG49MDtuPHRoaXMucGVuZGluZ0RhdGFNZXNzYWdlcy5sZW5ndGg7KytuKXRoaXMub25EYXRhTWVzc2FnZV8odGhpcy5wZW5kaW5nRGF0YU1lc3NhZ2VzW25dKTt0aGlzLnBlbmRpbmdEYXRhTWVzc2FnZXM9W10sdGhpcy50cnlDbGVhbnVwQ29ubmVjdGlvbigpfWVsc2UicyI9PT1lP3RoaXMub25Db25uZWN0aW9uU2h1dGRvd25fKHQpOiJyIj09PWU/dGhpcy5vblJlc2V0Xyh0KToiZSI9PT1lP0ZzKCJTZXJ2ZXIgRXJyb3I6ICIrdCk6Im8iPT09ZT8odGhpcy5sb2dfKCJnb3QgcG9uZyBvbiBwcmltYXJ5LiIpLHRoaXMub25QcmltYXJ5UmVzcG9uc2VfKCksdGhpcy5zZW5kUGluZ09uUHJpbWFyeUlmTmVjZXNzYXJ5XygpKTpGcygiVW5rbm93biBjb250cm9sIHBhY2tldCBjb21tYW5kOiAiK2UpfX0sV2EucHJvdG90eXBlLm9uSGFuZHNoYWtlXz1mdW5jdGlvbih0KXt2YXIgZT10LnRzLG49dC52LHI9dC5oO3RoaXMuc2Vzc2lvbklkPXQucyx0aGlzLnJlcG9JbmZvXy5ob3N0PXIsMD09PXRoaXMuc3RhdGVfJiYodGhpcy5jb25uXy5zdGFydCgpLHRoaXMub25Db25uZWN0aW9uRXN0YWJsaXNoZWRfKHRoaXMuY29ubl8sZSksIjUiIT09biYmWnMoIlByb3RvY29sIHZlcnNpb24gbWlzbWF0Y2ggZGV0ZWN0ZWQiKSx0aGlzLnRyeVN0YXJ0VXBncmFkZV8oKSl9LFdhLnByb3RvdHlwZS50cnlTdGFydFVwZ3JhZGVfPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy50cmFuc3BvcnRNYW5hZ2VyXy51cGdyYWRlVHJhbnNwb3J0KCk7dCYmdGhpcy5zdGFydFVwZ3JhZGVfKHQpfSxXYS5wcm90b3R5cGUuc3RhcnRVcGdyYWRlXz1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3RoaXMuc2Vjb25kYXJ5Q29ubl89bmV3IHQodGhpcy5uZXh0VHJhbnNwb3J0SWRfKCksdGhpcy5yZXBvSW5mb18sdGhpcy5hcHBsaWNhdGlvbklkXyx0aGlzLnNlc3Npb25JZCksdGhpcy5zZWNvbmRhcnlSZXNwb25zZXNSZXF1aXJlZF89dC5yZXNwb25zZXNSZXF1aXJlZFRvQmVIZWFsdGh5fHwwO3ZhciBuPXRoaXMuY29ublJlY2VpdmVyXyh0aGlzLnNlY29uZGFyeUNvbm5fKSx0PXRoaXMuZGlzY29ublJlY2VpdmVyXyh0aGlzLnNlY29uZGFyeUNvbm5fKTt0aGlzLnNlY29uZGFyeUNvbm5fLm9wZW4obix0KSxzYShmdW5jdGlvbigpe2Uuc2Vjb25kYXJ5Q29ubl8mJihlLmxvZ18oIlRpbWVkIG91dCB0cnlpbmcgdG8gdXBncmFkZS4iKSxlLnNlY29uZGFyeUNvbm5fLmNsb3NlKCkpfSxNYXRoLmZsb29yKDZlNCkpfSxXYS5wcm90b3R5cGUub25SZXNldF89ZnVuY3Rpb24odCl7dGhpcy5sb2dfKCJSZXNldCBwYWNrZXQgcmVjZWl2ZWQuICBOZXcgaG9zdDogIit0KSx0aGlzLnJlcG9JbmZvXy5ob3N0PXQsMT09PXRoaXMuc3RhdGVfP3RoaXMuY2xvc2UoKToodGhpcy5jbG9zZUNvbm5lY3Rpb25zXygpLHRoaXMuc3RhcnRfKCkpfSxXYS5wcm90b3R5cGUub25Db25uZWN0aW9uRXN0YWJsaXNoZWRfPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpczt0aGlzLmxvZ18oIlJlYWx0aW1lIGNvbm5lY3Rpb24gZXN0YWJsaXNoZWQuIiksdGhpcy5jb25uXz10LHRoaXMuc3RhdGVfPTEsdGhpcy5vblJlYWR5XyYmKHRoaXMub25SZWFkeV8oZSx0aGlzLnNlc3Npb25JZCksdGhpcy5vblJlYWR5Xz1udWxsKSwwPT09dGhpcy5wcmltYXJ5UmVzcG9uc2VzUmVxdWlyZWRfPyh0aGlzLmxvZ18oIlByaW1hcnkgY29ubmVjdGlvbiBpcyBoZWFsdGh5LiIpLHRoaXMuaXNIZWFsdGh5Xz0hMCk6c2EoZnVuY3Rpb24oKXtuLnNlbmRQaW5nT25QcmltYXJ5SWZOZWNlc3NhcnlfKCl9LE1hdGguZmxvb3IoNWUzKSl9LFdhLnByb3RvdHlwZS5zZW5kUGluZ09uUHJpbWFyeUlmTmVjZXNzYXJ5Xz1mdW5jdGlvbigpe3RoaXMuaXNIZWFsdGh5X3x8MSE9PXRoaXMuc3RhdGVffHwodGhpcy5sb2dfKCJzZW5kaW5nIHBpbmcgb24gcHJpbWFyeS4iKSx0aGlzLnNlbmREYXRhXyh7dDoiYyIsZDp7dDoicCIsZDp7fX19KSl9LFdhLnByb3RvdHlwZS5vblNlY29uZGFyeUNvbm5lY3Rpb25Mb3N0Xz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuc2Vjb25kYXJ5Q29ubl87dGhpcy5zZWNvbmRhcnlDb25uXz1udWxsLHRoaXMudHhfIT09dCYmdGhpcy5yeF8hPT10fHx0aGlzLmNsb3NlKCl9LFdhLnByb3RvdHlwZS5vbkNvbm5lY3Rpb25Mb3N0Xz1mdW5jdGlvbih0KXt0aGlzLmNvbm5fPW51bGwsdHx8MCE9PXRoaXMuc3RhdGVfPzE9PT10aGlzLnN0YXRlXyYmdGhpcy5sb2dfKCJSZWFsdGltZSBjb25uZWN0aW9uIGxvc3QuIik6KHRoaXMubG9nXygiUmVhbHRpbWUgY29ubmVjdGlvbiBmYWlsZWQuIiksdGhpcy5yZXBvSW5mb18uaXNDYWNoZWFibGVIb3N0KCkmJihLcy5yZW1vdmUoImhvc3Q6Iit0aGlzLnJlcG9JbmZvXy5ob3N0KSx0aGlzLnJlcG9JbmZvXy5pbnRlcm5hbEhvc3Q9dGhpcy5yZXBvSW5mb18uaG9zdCkpLHRoaXMuY2xvc2UoKX0sV2EucHJvdG90eXBlLm9uQ29ubmVjdGlvblNodXRkb3duXz1mdW5jdGlvbih0KXt0aGlzLmxvZ18oIkNvbm5lY3Rpb24gc2h1dGRvd24gY29tbWFuZCByZWNlaXZlZC4gU2h1dHRpbmcgZG93bi4uLiIpLHRoaXMub25LaWxsXyYmKHRoaXMub25LaWxsXyh0KSx0aGlzLm9uS2lsbF89bnVsbCksdGhpcy5vbkRpc2Nvbm5lY3RfPW51bGwsdGhpcy5jbG9zZSgpfSxXYS5wcm90b3R5cGUuc2VuZERhdGFfPWZ1bmN0aW9uKHQpe2lmKDEhPT10aGlzLnN0YXRlXyl0aHJvdyJDb25uZWN0aW9uIGlzIG5vdCBjb25uZWN0ZWQiO3RoaXMudHhfLnNlbmQodCl9LFdhLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpezIhPT10aGlzLnN0YXRlXyYmKHRoaXMubG9nXygiQ2xvc2luZyByZWFsdGltZSBjb25uZWN0aW9uLiIpLHRoaXMuc3RhdGVfPTIsdGhpcy5jbG9zZUNvbm5lY3Rpb25zXygpLHRoaXMub25EaXNjb25uZWN0XyYmKHRoaXMub25EaXNjb25uZWN0XygpLHRoaXMub25EaXNjb25uZWN0Xz1udWxsKSl9LFdhLnByb3RvdHlwZS5jbG9zZUNvbm5lY3Rpb25zXz1mdW5jdGlvbigpe3RoaXMubG9nXygiU2h1dHRpbmcgZG93biBhbGwgY29ubmVjdGlvbnMiKSx0aGlzLmNvbm5fJiYodGhpcy5jb25uXy5jbG9zZSgpLHRoaXMuY29ubl89bnVsbCksdGhpcy5zZWNvbmRhcnlDb25uXyYmKHRoaXMuc2Vjb25kYXJ5Q29ubl8uY2xvc2UoKSx0aGlzLnNlY29uZGFyeUNvbm5fPW51bGwpLHRoaXMuaGVhbHRoeVRpbWVvdXRfJiYoY2xlYXJUaW1lb3V0KHRoaXMuaGVhbHRoeVRpbWVvdXRfKSx0aGlzLmhlYWx0aHlUaW1lb3V0Xz1udWxsKX0sV2EpO2Z1bmN0aW9uIFdhKHQsZSxuLHIsaSxvLHMsYSl7dGhpcy5pZD10LHRoaXMucmVwb0luZm9fPWUsdGhpcy5hcHBsaWNhdGlvbklkXz1uLHRoaXMub25NZXNzYWdlXz1yLHRoaXMub25SZWFkeV89aSx0aGlzLm9uRGlzY29ubmVjdF89byx0aGlzLm9uS2lsbF89cyx0aGlzLmxhc3RTZXNzaW9uSWQ9YSx0aGlzLmNvbm5lY3Rpb25Db3VudD0wLHRoaXMucGVuZGluZ0RhdGFNZXNzYWdlcz1bXSx0aGlzLnN0YXRlXz0wLHRoaXMubG9nXz1KcygiYzoiK3RoaXMuaWQrIjoiKSx0aGlzLnRyYW5zcG9ydE1hbmFnZXJfPW5ldyBWYShlKSx0aGlzLmxvZ18oIkNvbm5lY3Rpb24gY3JlYXRlZCIpLHRoaXMuc3RhcnRfKCl9SGEucHJvdG90eXBlLnB1dD1mdW5jdGlvbih0LGUsbixyKXt9LEhhLnByb3RvdHlwZS5tZXJnZT1mdW5jdGlvbih0LGUsbixyKXt9LEhhLnByb3RvdHlwZS5yZWZyZXNoQXV0aFRva2VuPWZ1bmN0aW9uKHQpe30sSGEucHJvdG90eXBlLm9uRGlzY29ubmVjdFB1dD1mdW5jdGlvbih0LGUsbil7fSxIYS5wcm90b3R5cGUub25EaXNjb25uZWN0TWVyZ2U9ZnVuY3Rpb24odCxlLG4pe30sSGEucHJvdG90eXBlLm9uRGlzY29ubmVjdENhbmNlbD1mdW5jdGlvbih0LGUpe30sSGEucHJvdG90eXBlLnJlcG9ydFN0YXRzPWZ1bmN0aW9uKHQpe30sej1IYTtmdW5jdGlvbiBIYSgpe312YXIgR2E9KHphLnByb3RvdHlwZS50cmlnZ2VyPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyllW24tMV09YXJndW1lbnRzW25dO2lmKEFycmF5LmlzQXJyYXkodGhpcy5saXN0ZW5lcnNfW3RdKSlmb3IodmFyIHI9bm8oW10sZW8odGhpcy5saXN0ZW5lcnNfW3RdKSksaT0wO2k8ci5sZW5ndGg7aSsrKXJbaV0uY2FsbGJhY2suYXBwbHkocltpXS5jb250ZXh0LGUpfSx6YS5wcm90b3R5cGUub249ZnVuY3Rpb24odCxlLG4pe3RoaXMudmFsaWRhdGVFdmVudFR5cGVfKHQpLHRoaXMubGlzdGVuZXJzX1t0XT10aGlzLmxpc3RlbmVyc19bdF18fFtdLHRoaXMubGlzdGVuZXJzX1t0XS5wdXNoKHtjYWxsYmFjazplLGNvbnRleHQ6bn0pO3Q9dGhpcy5nZXRJbml0aWFsRXZlbnQodCk7dCYmZS5hcHBseShuLHQpfSx6YS5wcm90b3R5cGUub2ZmPWZ1bmN0aW9uKHQsZSxuKXt0aGlzLnZhbGlkYXRlRXZlbnRUeXBlXyh0KTtmb3IodmFyIHI9dGhpcy5saXN0ZW5lcnNfW3RdfHxbXSxpPTA7aTxyLmxlbmd0aDtpKyspaWYocltpXS5jYWxsYmFjaz09PWUmJighbnx8bj09PXJbaV0uY29udGV4dCkpcmV0dXJuIHZvaWQgci5zcGxpY2UoaSwxKX0semEucHJvdG90eXBlLnZhbGlkYXRlRXZlbnRUeXBlXz1mdW5jdGlvbihlKXtzbyh0aGlzLmFsbG93ZWRFdmVudHNfLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1lfSksIlVua25vd24gZXZlbnQ6ICIrZSl9LHphKTtmdW5jdGlvbiB6YSh0KXt0aGlzLmFsbG93ZWRFdmVudHNfPXQsdGhpcy5saXN0ZW5lcnNfPXt9LHNvKEFycmF5LmlzQXJyYXkodCkmJjA8dC5sZW5ndGgsIlJlcXVpcmVzIGEgbm9uLWVtcHR5IGFycmF5Iil9dmFyIFFhLFlhPShYaShYYSxRYT1HYSksWGEuZ2V0SW5zdGFuY2U9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFhhfSxYYS5wcm90b3R5cGUuZ2V0SW5pdGlhbEV2ZW50PWZ1bmN0aW9uKHQpe3JldHVybiBzbygib25saW5lIj09PXQsIlVua25vd24gZXZlbnQgdHlwZTogIit0KSxbdGhpcy5vbmxpbmVfXX0sWGEucHJvdG90eXBlLmN1cnJlbnRseU9ubGluZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm9ubGluZV99LFhhKTtmdW5jdGlvbiBYYSgpe3ZhciB0PVFhLmNhbGwodGhpcyxbIm9ubGluZSJdKXx8dGhpcztyZXR1cm4gdC5vbmxpbmVfPSEwLCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93fHx2b2lkIDA9PT13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcnx8dm8oKXx8KHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLGZ1bmN0aW9uKCl7dC5vbmxpbmVffHwodC5vbmxpbmVfPSEwLHQudHJpZ2dlcigib25saW5lIiwhMCkpfSwhMSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLGZ1bmN0aW9uKCl7dC5vbmxpbmVfJiYodC5vbmxpbmVfPSExLHQudHJpZ2dlcigib25saW5lIiwhMSkpfSwhMSkpLHR9dmFyIEphPTMyLCRhPTc2OCxaYT0odHUucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PSIiLGU9dGhpcy5waWVjZU51bV87ZTx0aGlzLnBpZWNlc18ubGVuZ3RoO2UrKykiIiE9PXRoaXMucGllY2VzX1tlXSYmKHQrPSIvIit0aGlzLnBpZWNlc19bZV0pO3JldHVybiB0fHwiLyJ9LHR1KTtmdW5jdGlvbiB0dSh0LGUpe2lmKHZvaWQgMD09PWUpe3RoaXMucGllY2VzXz10LnNwbGl0KCIvIik7Zm9yKHZhciBuPTAscj0wO3I8dGhpcy5waWVjZXNfLmxlbmd0aDtyKyspMDx0aGlzLnBpZWNlc19bcl0ubGVuZ3RoJiYodGhpcy5waWVjZXNfW25dPXRoaXMucGllY2VzX1tyXSxuKyspO3RoaXMucGllY2VzXy5sZW5ndGg9bix0aGlzLnBpZWNlTnVtXz0wfWVsc2UgdGhpcy5waWVjZXNfPXQsdGhpcy5waWVjZU51bV89ZX1mdW5jdGlvbiBldSgpe3JldHVybiBuZXcgWmEoIiIpfWZ1bmN0aW9uIG51KHQpe3JldHVybiB0LnBpZWNlTnVtXz49dC5waWVjZXNfLmxlbmd0aD9udWxsOnQucGllY2VzX1t0LnBpZWNlTnVtX119ZnVuY3Rpb24gcnUodCl7cmV0dXJuIHQucGllY2VzXy5sZW5ndGgtdC5waWVjZU51bV99ZnVuY3Rpb24gaXUodCl7dmFyIGU9dC5waWVjZU51bV87cmV0dXJuIGU8dC5waWVjZXNfLmxlbmd0aCYmZSsrLG5ldyBaYSh0LnBpZWNlc18sZSl9ZnVuY3Rpb24gb3UodCl7cmV0dXJuIHQucGllY2VOdW1fPHQucGllY2VzXy5sZW5ndGg/dC5waWVjZXNfW3QucGllY2VzXy5sZW5ndGgtMV06bnVsbH1mdW5jdGlvbiBzdSh0LGUpe3JldHVybiB2b2lkIDA9PT1lJiYoZT0wKSx0LnBpZWNlc18uc2xpY2UodC5waWVjZU51bV8rZSl9ZnVuY3Rpb24gYXUodCl7aWYodC5waWVjZU51bV8+PXQucGllY2VzXy5sZW5ndGgpcmV0dXJuIG51bGw7Zm9yKHZhciBlPVtdLG49dC5waWVjZU51bV87bjx0LnBpZWNlc18ubGVuZ3RoLTE7bisrKWUucHVzaCh0LnBpZWNlc19bbl0pO3JldHVybiBuZXcgWmEoZSwwKX1mdW5jdGlvbiB1dSh0LGUpe2Zvcih2YXIgbj1bXSxyPXQucGllY2VOdW1fO3I8dC5waWVjZXNfLmxlbmd0aDtyKyspbi5wdXNoKHQucGllY2VzX1tyXSk7aWYoZSBpbnN0YW5jZW9mIFphKWZvcihyPWUucGllY2VOdW1fO3I8ZS5waWVjZXNfLmxlbmd0aDtyKyspbi5wdXNoKGUucGllY2VzX1tyXSk7ZWxzZSBmb3IodmFyIGk9ZS5zcGxpdCgiLyIpLHI9MDtyPGkubGVuZ3RoO3IrKykwPGlbcl0ubGVuZ3RoJiZuLnB1c2goaVtyXSk7cmV0dXJuIG5ldyBaYShuLDApfWZ1bmN0aW9uIGN1KHQpe3JldHVybiB0LnBpZWNlTnVtXz49dC5waWVjZXNfLmxlbmd0aH1mdW5jdGlvbiBodSh0LGUpe3ZhciBuPW51KHQpLHI9bnUoZSk7aWYobnVsbD09PW4pcmV0dXJuIGU7aWYobj09PXIpcmV0dXJuIGh1KGl1KHQpLGl1KGUpKTt0aHJvdyBuZXcgRXJyb3IoIklOVEVSTkFMIEVSUk9SOiBpbm5lclBhdGggKCIrZSsiKSBpcyBub3Qgd2l0aGluIG91dGVyUGF0aCAoIit0KyIpIil9ZnVuY3Rpb24gbHUodCxlKXtmb3IodmFyIG49c3UodCwwKSxyPXN1KGUsMCksaT0wO2k8bi5sZW5ndGgmJmk8ci5sZW5ndGg7aSsrKXt2YXIgbz1uYShuW2ldLHJbaV0pO2lmKDAhPT1vKXJldHVybiBvfXJldHVybiBuLmxlbmd0aD09PXIubGVuZ3RoPzA6bi5sZW5ndGg8ci5sZW5ndGg/LTE6MX1mdW5jdGlvbiBmdSh0LGUpe2lmKHJ1KHQpIT09cnUoZSkpcmV0dXJuITE7Zm9yKHZhciBuPXQucGllY2VOdW1fLHI9ZS5waWVjZU51bV87bjw9dC5waWVjZXNfLmxlbmd0aDtuKysscisrKWlmKHQucGllY2VzX1tuXSE9PWUucGllY2VzX1tyXSlyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBwdSh0LGUpe3ZhciBuPXQucGllY2VOdW1fLHI9ZS5waWVjZU51bV87aWYocnUodCk+cnUoZSkpcmV0dXJuITE7Zm9yKDtuPHQucGllY2VzXy5sZW5ndGg7KXtpZih0LnBpZWNlc19bbl0hPT1lLnBpZWNlc19bcl0pcmV0dXJuITE7KytuLCsrcn1yZXR1cm4hMH12YXIgZHU9ZnVuY3Rpb24odCxlKXt0aGlzLmVycm9yUHJlZml4Xz1lLHRoaXMucGFydHNfPXN1KHQsMCksdGhpcy5ieXRlTGVuZ3RoXz1NYXRoLm1heCgxLHRoaXMucGFydHNfLmxlbmd0aCk7Zm9yKHZhciBuPTA7bjx0aGlzLnBhcnRzXy5sZW5ndGg7bisrKXRoaXMuYnl0ZUxlbmd0aF8rPXpvKHRoaXMucGFydHNfW25dKTt2dSh0aGlzKX07ZnVuY3Rpb24gdnUodCl7aWYodC5ieXRlTGVuZ3RoXz4kYSl0aHJvdyBuZXcgRXJyb3IodC5lcnJvclByZWZpeF8rImhhcyBhIGtleSBwYXRoIGxvbmdlciB0aGFuICIrJGErIiBieXRlcyAoIit0LmJ5dGVMZW5ndGhfKyIpLiIpO2lmKHQucGFydHNfLmxlbmd0aD5KYSl0aHJvdyBuZXcgRXJyb3IodC5lcnJvclByZWZpeF8rInBhdGggc3BlY2lmaWVkIGV4Y2VlZHMgdGhlIG1heGltdW0gZGVwdGggdGhhdCBjYW4gYmUgd3JpdHRlbiAoIitKYSsiKSBvciBvYmplY3QgY29udGFpbnMgYSBjeWNsZSAiK2d1KHQpKX1mdW5jdGlvbiBndSh0KXtyZXR1cm4gMD09PXQucGFydHNfLmxlbmd0aD8iIjoiaW4gcHJvcGVydHkgJyIrdC5wYXJ0c18uam9pbigiLiIpKyInIn12YXIgeXUsbXU9KFhpKGJ1LHl1PUdhKSxidS5nZXRJbnN0YW5jZT1mdW5jdGlvbigpe3JldHVybiBuZXcgYnV9LGJ1LnByb3RvdHlwZS5nZXRJbml0aWFsRXZlbnQ9ZnVuY3Rpb24odCl7cmV0dXJuIHNvKCJ2aXNpYmxlIj09PXQsIlVua25vd24gZXZlbnQgdHlwZTogIit0KSxbdGhpcy52aXNpYmxlX119LGJ1KTtmdW5jdGlvbiBidSgpe3ZhciBlLHQsbj15dS5jYWxsKHRoaXMsWyJ2aXNpYmxlIl0pfHx0aGlzO3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJnZvaWQgMCE9PWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXImJih2b2lkIDAhPT1kb2N1bWVudC5oaWRkZW4/KHQ9InZpc2liaWxpdHljaGFuZ2UiLGU9ImhpZGRlbiIpOnZvaWQgMCE9PWRvY3VtZW50Lm1vekhpZGRlbj8odD0ibW96dmlzaWJpbGl0eWNoYW5nZSIsZT0ibW96SGlkZGVuIik6dm9pZCAwIT09ZG9jdW1lbnQubXNIaWRkZW4/KHQ9Im1zdmlzaWJpbGl0eWNoYW5nZSIsZT0ibXNIaWRkZW4iKTp2b2lkIDAhPT1kb2N1bWVudC53ZWJraXRIaWRkZW4mJih0PSJ3ZWJraXR2aXNpYmlsaXR5Y2hhbmdlIixlPSJ3ZWJraXRIaWRkZW4iKSksbi52aXNpYmxlXz0hMCx0JiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKHQsZnVuY3Rpb24oKXt2YXIgdD0hZG9jdW1lbnRbZV07dCE9PW4udmlzaWJsZV8mJihuLnZpc2libGVfPXQsbi50cmlnZ2VyKCJ2aXNpYmxlIix0KSl9LCExKSxufXZhciB3dSxfdT0xZTMsSXU9M2U1LFR1PShYaShFdSx3dT16KSxFdS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24odCxlLG4pe3ZhciByPSsrdGhpcy5yZXF1ZXN0TnVtYmVyXyxlPXtyOnIsYTp0LGI6ZX07dGhpcy5sb2dfKFJvKGUpKSxzbyh0aGlzLmNvbm5lY3RlZF8sInNlbmRSZXF1ZXN0IGNhbGwgd2hlbiB3ZSdyZSBub3QgY29ubmVjdGVkIG5vdCBhbGxvd2VkLiIpLHRoaXMucmVhbHRpbWVfLnNlbmRSZXF1ZXN0KGUpLG4mJih0aGlzLnJlcXVlc3RDQkhhc2hfW3JdPW4pfSxFdS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXMscj1uZXcgbG8saT17cDp0LnBhdGgudG9TdHJpbmcoKSxxOnQucXVlcnlPYmplY3QoKX0sZT17YWN0aW9uOiJnIixyZXF1ZXN0Omksb25Db21wbGV0ZTpmdW5jdGlvbih0KXt2YXIgZT10LmQ7Im9rIj09PXQucz8obi5vbkRhdGFVcGRhdGVfKGkucCxlLCExLG51bGwpLHIucmVzb2x2ZShlKSk6ci5yZWplY3QoZSl9fTt0aGlzLm91dHN0YW5kaW5nR2V0c18ucHVzaChlKSx0aGlzLm91dHN0YW5kaW5nR2V0Q291bnRfKys7dmFyIG89dGhpcy5vdXRzdGFuZGluZ0dldHNfLmxlbmd0aC0xO3JldHVybiB0aGlzLmNvbm5lY3RlZF98fHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdD1uLm91dHN0YW5kaW5nR2V0c19bb107dm9pZCAwIT09dCYmZT09PXQmJihkZWxldGUgbi5vdXRzdGFuZGluZ0dldHNfW29dLG4ub3V0c3RhbmRpbmdHZXRDb3VudF8tLSwwPT09bi5vdXRzdGFuZGluZ0dldENvdW50XyYmKG4ub3V0c3RhbmRpbmdHZXRzXz1bXSksbi5sb2dfKCJnZXQgIitvKyIgdGltZWQgb3V0IG9uIGNvbm5lY3Rpb24iKSxyLnJlamVjdChuZXcgRXJyb3IoIkNsaWVudCBpcyBvZmZsaW5lLiIpKSl9LDNlMyksdGhpcy5jb25uZWN0ZWRfJiZ0aGlzLnNlbmRHZXRfKG8pLHIucHJvbWlzZX0sRXUucHJvdG90eXBlLmxpc3Rlbj1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT10LnF1ZXJ5SWRlbnRpZmllcigpLG89dC5wYXRoLnRvU3RyaW5nKCk7dGhpcy5sb2dfKCJMaXN0ZW4gY2FsbGVkIGZvciAiK28rIiAiK2kpLHRoaXMubGlzdGVucy5oYXMobyl8fHRoaXMubGlzdGVucy5zZXQobyxuZXcgTWFwKSxzbyh0LmdldFF1ZXJ5UGFyYW1zKCkuaXNEZWZhdWx0KCl8fCF0LmdldFF1ZXJ5UGFyYW1zKCkubG9hZHNBbGxEYXRhKCksImxpc3RlbigpIGNhbGxlZCBmb3Igbm9uLWRlZmF1bHQgYnV0IGNvbXBsZXRlIHF1ZXJ5Iiksc28oIXRoaXMubGlzdGVucy5nZXQobykuaGFzKGkpLCJsaXN0ZW4oKSBjYWxsZWQgdHdpY2UgZm9yIHNhbWUgcGF0aC9xdWVyeUlkLiIpO249e29uQ29tcGxldGU6cixoYXNoRm46ZSxxdWVyeTp0LHRhZzpufTt0aGlzLmxpc3RlbnMuZ2V0KG8pLnNldChpLG4pLHRoaXMuY29ubmVjdGVkXyYmdGhpcy5zZW5kTGlzdGVuXyhuKX0sRXUucHJvdG90eXBlLnNlbmRHZXRfPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXMscj10aGlzLm91dHN0YW5kaW5nR2V0c19bZV07dGhpcy5zZW5kUmVxdWVzdCgiZyIsci5yZXF1ZXN0LGZ1bmN0aW9uKHQpe2RlbGV0ZSBuLm91dHN0YW5kaW5nR2V0c19bZV0sbi5vdXRzdGFuZGluZ0dldENvdW50Xy0tLDA9PT1uLm91dHN0YW5kaW5nR2V0Q291bnRfJiYobi5vdXRzdGFuZGluZ0dldHNfPVtdKSxyLm9uQ29tcGxldGUmJnIub25Db21wbGV0ZSh0KX0pfSxFdS5wcm90b3R5cGUuc2VuZExpc3Rlbl89ZnVuY3Rpb24ocil7dmFyIGk9dGhpcyxvPXIucXVlcnkscz1vLnBhdGgudG9TdHJpbmcoKSxhPW8ucXVlcnlJZGVudGlmaWVyKCk7dGhpcy5sb2dfKCJMaXN0ZW4gb24gIitzKyIgZm9yICIrYSk7dmFyIHQ9e3A6c307ci50YWcmJih0LnE9by5xdWVyeU9iamVjdCgpLHQudD1yLnRhZyksdC5oPXIuaGFzaEZuKCksdGhpcy5zZW5kUmVxdWVzdCgicSIsdCxmdW5jdGlvbih0KXt2YXIgZT10LmQsbj10LnM7RXUud2Fybk9uTGlzdGVuV2FybmluZ3NfKGUsbyksKGkubGlzdGVucy5nZXQocykmJmkubGlzdGVucy5nZXQocykuZ2V0KGEpKT09PXImJihpLmxvZ18oImxpc3RlbiByZXNwb25zZSIsdCksIm9rIiE9PW4mJmkucmVtb3ZlTGlzdGVuXyhzLGEpLHIub25Db21wbGV0ZSYmci5vbkNvbXBsZXRlKG4sZSkpfSl9LEV1Lndhcm5Pbkxpc3Rlbldhcm5pbmdzXz1mdW5jdGlvbih0LGUpe3QmJiJvYmplY3QiPT10eXBlb2YgdCYmT28odCwidyIpJiYodD1Ebyh0LCJ3IiksQXJyYXkuaXNBcnJheSh0KSYmfnQuaW5kZXhPZigibm9faW5kZXgiKSYmKHQ9JyIuaW5kZXhPbiI6ICInK2UuZ2V0UXVlcnlQYXJhbXMoKS5nZXRJbmRleCgpLnRvU3RyaW5nKCkrJyInLGU9ZS5wYXRoLnRvU3RyaW5nKCksWnMoIlVzaW5nIGFuIHVuc3BlY2lmaWVkIGluZGV4LiBZb3VyIGRhdGEgd2lsbCBiZSBkb3dubG9hZGVkIGFuZCBmaWx0ZXJlZCBvbiB0aGUgY2xpZW50LiBDb25zaWRlciBhZGRpbmcgIit0KyIgYXQgIitlKyIgdG8geW91ciBzZWN1cml0eSBydWxlcyBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlLiIpKSl9LEV1LnByb3RvdHlwZS5yZWZyZXNoQXV0aFRva2VuPWZ1bmN0aW9uKHQpe3RoaXMuYXV0aFRva2VuXz10LHRoaXMubG9nXygiQXV0aCB0b2tlbiByZWZyZXNoZWQiKSx0aGlzLmF1dGhUb2tlbl8/dGhpcy50cnlBdXRoKCk6dGhpcy5jb25uZWN0ZWRfJiZ0aGlzLnNlbmRSZXF1ZXN0KCJ1bmF1dGgiLHt9LGZ1bmN0aW9uKCl7fSksdGhpcy5yZWR1Y2VSZWNvbm5lY3REZWxheUlmQWRtaW5DcmVkZW50aWFsXyh0KX0sRXUucHJvdG90eXBlLnJlZHVjZVJlY29ubmVjdERlbGF5SWZBZG1pbkNyZWRlbnRpYWxfPWZ1bmN0aW9uKHQpeyh0JiY0MD09PXQubGVuZ3RofHxmdW5jdGlvbih0KXt0PVBvKHQpLmNsYWltcztyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQmJiEwPT09dC5hZG1pbn0odCkpJiYodGhpcy5sb2dfKCJBZG1pbiBhdXRoIGNyZWRlbnRpYWwgZGV0ZWN0ZWQuICBSZWR1Y2luZyBtYXggcmVjb25uZWN0IHRpbWUuIiksdGhpcy5tYXhSZWNvbm5lY3REZWxheV89M2U0KX0sRXUucHJvdG90eXBlLnRyeUF1dGg9ZnVuY3Rpb24oKXt2YXIgbix0LGUscj10aGlzO3RoaXMuY29ubmVjdGVkXyYmdGhpcy5hdXRoVG9rZW5fJiYodD1mdW5jdGlvbih0KXt0PVBvKHQpLmNsYWltcztyZXR1cm4hIXQmJiJvYmplY3QiPT10eXBlb2YgdCYmdC5oYXNPd25Qcm9wZXJ0eSgiaWF0Iil9KG49dGhpcy5hdXRoVG9rZW5fKT8iYXV0aCI6ImdhdXRoIixlPXtjcmVkOm59LG51bGw9PT10aGlzLmF1dGhPdmVycmlkZV8/ZS5ub2F1dGg9ITA6Im9iamVjdCI9PXR5cGVvZiB0aGlzLmF1dGhPdmVycmlkZV8mJihlLmF1dGh2YXI9dGhpcy5hdXRoT3ZlcnJpZGVfKSx0aGlzLnNlbmRSZXF1ZXN0KHQsZSxmdW5jdGlvbih0KXt2YXIgZT10LnMsdD10LmR8fCJlcnJvciI7ci5hdXRoVG9rZW5fPT09biYmKCJvayI9PT1lP3IuaW52YWxpZEF1dGhUb2tlbkNvdW50Xz0wOnIub25BdXRoUmV2b2tlZF8oZSx0KSl9KSl9LEV1LnByb3RvdHlwZS51bmxpc3Rlbj1mdW5jdGlvbih0LGUpe3ZhciBuPXQucGF0aC50b1N0cmluZygpLHI9dC5xdWVyeUlkZW50aWZpZXIoKTt0aGlzLmxvZ18oIlVubGlzdGVuIGNhbGxlZCBmb3IgIituKyIgIityKSxzbyh0LmdldFF1ZXJ5UGFyYW1zKCkuaXNEZWZhdWx0KCl8fCF0LmdldFF1ZXJ5UGFyYW1zKCkubG9hZHNBbGxEYXRhKCksInVubGlzdGVuKCkgY2FsbGVkIGZvciBub24tZGVmYXVsdCBidXQgY29tcGxldGUgcXVlcnkiKSx0aGlzLnJlbW92ZUxpc3Rlbl8obixyKSYmdGhpcy5jb25uZWN0ZWRfJiZ0aGlzLnNlbmRVbmxpc3Rlbl8obixyLHQucXVlcnlPYmplY3QoKSxlKX0sRXUucHJvdG90eXBlLnNlbmRVbmxpc3Rlbl89ZnVuY3Rpb24odCxlLG4scil7dGhpcy5sb2dfKCJVbmxpc3RlbiBvbiAiK3QrIiBmb3IgIitlKTt0PXtwOnR9O3ImJih0LnE9bix0LnQ9ciksdGhpcy5zZW5kUmVxdWVzdCgibiIsdCl9LEV1LnByb3RvdHlwZS5vbkRpc2Nvbm5lY3RQdXQ9ZnVuY3Rpb24odCxlLG4pe3RoaXMuY29ubmVjdGVkXz90aGlzLnNlbmRPbkRpc2Nvbm5lY3RfKCJvIix0LGUsbik6dGhpcy5vbkRpc2Nvbm5lY3RSZXF1ZXN0UXVldWVfLnB1c2goe3BhdGhTdHJpbmc6dCxhY3Rpb246Im8iLGRhdGE6ZSxvbkNvbXBsZXRlOm59KX0sRXUucHJvdG90eXBlLm9uRGlzY29ubmVjdE1lcmdlPWZ1bmN0aW9uKHQsZSxuKXt0aGlzLmNvbm5lY3RlZF8/dGhpcy5zZW5kT25EaXNjb25uZWN0Xygib20iLHQsZSxuKTp0aGlzLm9uRGlzY29ubmVjdFJlcXVlc3RRdWV1ZV8ucHVzaCh7cGF0aFN0cmluZzp0LGFjdGlvbjoib20iLGRhdGE6ZSxvbkNvbXBsZXRlOm59KX0sRXUucHJvdG90eXBlLm9uRGlzY29ubmVjdENhbmNlbD1mdW5jdGlvbih0LGUpe3RoaXMuY29ubmVjdGVkXz90aGlzLnNlbmRPbkRpc2Nvbm5lY3RfKCJvYyIsdCxudWxsLGUpOnRoaXMub25EaXNjb25uZWN0UmVxdWVzdFF1ZXVlXy5wdXNoKHtwYXRoU3RyaW5nOnQsYWN0aW9uOiJvYyIsZGF0YTpudWxsLG9uQ29tcGxldGU6ZX0pfSxFdS5wcm90b3R5cGUuc2VuZE9uRGlzY29ubmVjdF89ZnVuY3Rpb24odCxlLG4scil7bj17cDplLGQ6bn07dGhpcy5sb2dfKCJvbkRpc2Nvbm5lY3QgIit0LG4pLHRoaXMuc2VuZFJlcXVlc3QodCxuLGZ1bmN0aW9uKHQpe3ImJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyKHQucyx0LmQpfSxNYXRoLmZsb29yKDApKX0pfSxFdS5wcm90b3R5cGUucHV0PWZ1bmN0aW9uKHQsZSxuLHIpe3RoaXMucHV0SW50ZXJuYWwoInAiLHQsZSxuLHIpfSxFdS5wcm90b3R5cGUubWVyZ2U9ZnVuY3Rpb24odCxlLG4scil7dGhpcy5wdXRJbnRlcm5hbCgibSIsdCxlLG4scil9LEV1LnByb3RvdHlwZS5wdXRJbnRlcm5hbD1mdW5jdGlvbih0LGUsbixyLGkpe249e3A6ZSxkOm59O3ZvaWQgMCE9PWkmJihuLmg9aSksdGhpcy5vdXRzdGFuZGluZ1B1dHNfLnB1c2goe2FjdGlvbjp0LHJlcXVlc3Q6bixvbkNvbXBsZXRlOnJ9KSx0aGlzLm91dHN0YW5kaW5nUHV0Q291bnRfKys7cj10aGlzLm91dHN0YW5kaW5nUHV0c18ubGVuZ3RoLTE7dGhpcy5jb25uZWN0ZWRfP3RoaXMuc2VuZFB1dF8ocik6dGhpcy5sb2dfKCJCdWZmZXJpbmcgcHV0OiAiK2UpfSxFdS5wcm90b3R5cGUuc2VuZFB1dF89ZnVuY3Rpb24oZSl7dmFyIG49dGhpcyxyPXRoaXMub3V0c3RhbmRpbmdQdXRzX1tlXS5hY3Rpb24sdD10aGlzLm91dHN0YW5kaW5nUHV0c19bZV0ucmVxdWVzdCxpPXRoaXMub3V0c3RhbmRpbmdQdXRzX1tlXS5vbkNvbXBsZXRlO3RoaXMub3V0c3RhbmRpbmdQdXRzX1tlXS5xdWV1ZWQ9dGhpcy5jb25uZWN0ZWRfLHRoaXMuc2VuZFJlcXVlc3Qocix0LGZ1bmN0aW9uKHQpe24ubG9nXyhyKyIgcmVzcG9uc2UiLHQpLGRlbGV0ZSBuLm91dHN0YW5kaW5nUHV0c19bZV0sbi5vdXRzdGFuZGluZ1B1dENvdW50Xy0tLDA9PT1uLm91dHN0YW5kaW5nUHV0Q291bnRfJiYobi5vdXRzdGFuZGluZ1B1dHNfPVtdKSxpJiZpKHQucyx0LmQpfSl9LEV1LnByb3RvdHlwZS5yZXBvcnRTdGF0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3RoaXMuY29ubmVjdGVkXyYmKHQ9e2M6dH0sdGhpcy5sb2dfKCJyZXBvcnRTdGF0cyIsdCksdGhpcy5zZW5kUmVxdWVzdCgicyIsdCxmdW5jdGlvbih0KXsib2siIT09dC5zJiYodD10LmQsZS5sb2dfKCJyZXBvcnRTdGF0cyIsIkVycm9yIHNlbmRpbmcgc3RhdHM6ICIrdCkpfSkpfSxFdS5wcm90b3R5cGUub25EYXRhTWVzc2FnZV89ZnVuY3Rpb24odCl7aWYoInIiaW4gdCl7dGhpcy5sb2dfKCJmcm9tIHNlcnZlcjogIitSbyh0KSk7dmFyIGU9dC5yLG49dGhpcy5yZXF1ZXN0Q0JIYXNoX1tlXTtuJiYoZGVsZXRlIHRoaXMucmVxdWVzdENCSGFzaF9bZV0sbih0LmIpKX1lbHNle2lmKCJlcnJvciJpbiB0KXRocm93IkEgc2VydmVyLXNpZGUgZXJyb3IgaGFzIG9jY3VycmVkOiAiK3QuZXJyb3I7ImEiaW4gdCYmdGhpcy5vbkRhdGFQdXNoXyh0LmEsdC5iKX19LEV1LnByb3RvdHlwZS5vbkRhdGFQdXNoXz1mdW5jdGlvbih0LGUpe3RoaXMubG9nXygiaGFuZGxlU2VydmVyTWVzc2FnZSIsdCxlKSwiZCI9PT10P3RoaXMub25EYXRhVXBkYXRlXyhlLnAsZS5kLCExLGUudCk6Im0iPT09dD90aGlzLm9uRGF0YVVwZGF0ZV8oZS5wLGUuZCwhMCxlLnQpOiJjIj09PXQ/dGhpcy5vbkxpc3RlblJldm9rZWRfKGUucCxlLnEpOiJhYyI9PT10P3RoaXMub25BdXRoUmV2b2tlZF8oZS5zLGUuZCk6InNkIj09PXQ/dGhpcy5vblNlY3VyaXR5RGVidWdQYWNrZXRfKGUpOkZzKCJVbnJlY29nbml6ZWQgYWN0aW9uIHJlY2VpdmVkIGZyb20gc2VydmVyOiAiK1JvKHQpKyJcbkFyZSB5b3UgdXNpbmcgdGhlIGxhdGVzdCBjbGllbnQ/Iil9LEV1LnByb3RvdHlwZS5vblJlYWR5Xz1mdW5jdGlvbih0LGUpe3RoaXMubG9nXygiY29ubmVjdGlvbiByZWFkeSIpLHRoaXMuY29ubmVjdGVkXz0hMCx0aGlzLmxhc3RDb25uZWN0aW9uRXN0YWJsaXNoZWRUaW1lXz0obmV3IERhdGUpLmdldFRpbWUoKSx0aGlzLmhhbmRsZVRpbWVzdGFtcF8odCksdGhpcy5sYXN0U2Vzc2lvbklkPWUsdGhpcy5maXJzdENvbm5lY3Rpb25fJiZ0aGlzLnNlbmRDb25uZWN0U3RhdHNfKCksdGhpcy5yZXN0b3JlU3RhdGVfKCksdGhpcy5maXJzdENvbm5lY3Rpb25fPSExLHRoaXMub25Db25uZWN0U3RhdHVzXyghMCl9LEV1LnByb3RvdHlwZS5zY2hlZHVsZUNvbm5lY3RfPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7c28oIXRoaXMucmVhbHRpbWVfLCJTY2hlZHVsaW5nIGEgY29ubmVjdCB3aGVuIHdlJ3JlIGFscmVhZHkgY29ubmVjdGVkL2luZz8iKSx0aGlzLmVzdGFibGlzaENvbm5lY3Rpb25UaW1lcl8mJmNsZWFyVGltZW91dCh0aGlzLmVzdGFibGlzaENvbm5lY3Rpb25UaW1lcl8pLHRoaXMuZXN0YWJsaXNoQ29ubmVjdGlvblRpbWVyXz1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5lc3RhYmxpc2hDb25uZWN0aW9uVGltZXJfPW51bGwsZS5lc3RhYmxpc2hDb25uZWN0aW9uXygpfSxNYXRoLmZsb29yKHQpKX0sRXUucHJvdG90eXBlLm9uVmlzaWJsZV89ZnVuY3Rpb24odCl7dCYmIXRoaXMudmlzaWJsZV8mJnRoaXMucmVjb25uZWN0RGVsYXlfPT09dGhpcy5tYXhSZWNvbm5lY3REZWxheV8mJih0aGlzLmxvZ18oIldpbmRvdyBiZWNhbWUgdmlzaWJsZS4gIFJlZHVjaW5nIGRlbGF5LiIpLHRoaXMucmVjb25uZWN0RGVsYXlfPV91LHRoaXMucmVhbHRpbWVffHx0aGlzLnNjaGVkdWxlQ29ubmVjdF8oMCkpLHRoaXMudmlzaWJsZV89dH0sRXUucHJvdG90eXBlLm9uT25saW5lXz1mdW5jdGlvbih0KXt0Pyh0aGlzLmxvZ18oIkJyb3dzZXIgd2VudCBvbmxpbmUuIiksdGhpcy5yZWNvbm5lY3REZWxheV89X3UsdGhpcy5yZWFsdGltZV98fHRoaXMuc2NoZWR1bGVDb25uZWN0XygwKSk6KHRoaXMubG9nXygiQnJvd3NlciB3ZW50IG9mZmxpbmUuICBLaWxsaW5nIGNvbm5lY3Rpb24uIiksdGhpcy5yZWFsdGltZV8mJnRoaXMucmVhbHRpbWVfLmNsb3NlKCkpfSxFdS5wcm90b3R5cGUub25SZWFsdGltZURpc2Nvbm5lY3RfPWZ1bmN0aW9uKCl7dmFyIHQ7dGhpcy5sb2dfKCJkYXRhIGNsaWVudCBkaXNjb25uZWN0ZWQiKSx0aGlzLmNvbm5lY3RlZF89ITEsdGhpcy5yZWFsdGltZV89bnVsbCx0aGlzLmNhbmNlbFNlbnRUcmFuc2FjdGlvbnNfKCksdGhpcy5yZXF1ZXN0Q0JIYXNoXz17fSx0aGlzLnNob3VsZFJlY29ubmVjdF8oKSYmKHRoaXMudmlzaWJsZV8/dGhpcy5sYXN0Q29ubmVjdGlvbkVzdGFibGlzaGVkVGltZV8mJigzZTQ8KG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5sYXN0Q29ubmVjdGlvbkVzdGFibGlzaGVkVGltZV8mJih0aGlzLnJlY29ubmVjdERlbGF5Xz1fdSksdGhpcy5sYXN0Q29ubmVjdGlvbkVzdGFibGlzaGVkVGltZV89bnVsbCk6KHRoaXMubG9nXygiV2luZG93IGlzbid0IHZpc2libGUuICBEZWxheWluZyByZWNvbm5lY3QuIiksdGhpcy5yZWNvbm5lY3REZWxheV89dGhpcy5tYXhSZWNvbm5lY3REZWxheV8sdGhpcy5sYXN0Q29ubmVjdGlvbkF0dGVtcHRUaW1lXz0obmV3IERhdGUpLmdldFRpbWUoKSksdD0obmV3IERhdGUpLmdldFRpbWUoKS10aGlzLmxhc3RDb25uZWN0aW9uQXR0ZW1wdFRpbWVfLHQ9TWF0aC5tYXgoMCx0aGlzLnJlY29ubmVjdERlbGF5Xy10KSx0PU1hdGgucmFuZG9tKCkqdCx0aGlzLmxvZ18oIlRyeWluZyB0byByZWNvbm5lY3QgaW4gIit0KyJtcyIpLHRoaXMuc2NoZWR1bGVDb25uZWN0Xyh0KSx0aGlzLnJlY29ubmVjdERlbGF5Xz1NYXRoLm1pbih0aGlzLm1heFJlY29ubmVjdERlbGF5XywxLjMqdGhpcy5yZWNvbm5lY3REZWxheV8pKSx0aGlzLm9uQ29ubmVjdFN0YXR1c18oITEpfSxFdS5wcm90b3R5cGUuZXN0YWJsaXNoQ29ubmVjdGlvbl89ZnVuY3Rpb24oKXt2YXIgZSxuLHIsaSxvLHMsYSx1LGMsdCxoPXRoaXM7dGhpcy5zaG91bGRSZWNvbm5lY3RfKCkmJih0aGlzLmxvZ18oIk1ha2luZyBhIGNvbm5lY3Rpb24gYXR0ZW1wdCIpLHRoaXMubGFzdENvbm5lY3Rpb25BdHRlbXB0VGltZV89KG5ldyBEYXRlKS5nZXRUaW1lKCksdGhpcy5sYXN0Q29ubmVjdGlvbkVzdGFibGlzaGVkVGltZV89bnVsbCxlPXRoaXMub25EYXRhTWVzc2FnZV8uYmluZCh0aGlzKSxuPXRoaXMub25SZWFkeV8uYmluZCh0aGlzKSxyPXRoaXMub25SZWFsdGltZURpc2Nvbm5lY3RfLmJpbmQodGhpcyksaT10aGlzLmlkKyI6IitFdS5uZXh0Q29ubmVjdGlvbklkXysrLHM9KG89dGhpcykubGFzdFNlc3Npb25JZCxhPSExLHU9bnVsbCxjPWZ1bmN0aW9uKCl7dT91LmNsb3NlKCk6KGE9ITAscigpKX0sdGhpcy5yZWFsdGltZV89e2Nsb3NlOmMsc2VuZFJlcXVlc3Q6ZnVuY3Rpb24odCl7c28odSwic2VuZFJlcXVlc3QgY2FsbCB3aGVuIHdlJ3JlIG5vdCBjb25uZWN0ZWQgbm90IGFsbG93ZWQuIiksdS5zZW5kUmVxdWVzdCh0KX19LHQ9dGhpcy5mb3JjZVRva2VuUmVmcmVzaF8sdGhpcy5mb3JjZVRva2VuUmVmcmVzaF89ITEsdGhpcy5hdXRoVG9rZW5Qcm92aWRlcl8uZ2V0VG9rZW4odCkudGhlbihmdW5jdGlvbih0KXthP1hzKCJnZXRUb2tlbigpIGNvbXBsZXRlZCBidXQgd2FzIGNhbmNlbGVkIik6KFhzKCJnZXRUb2tlbigpIGNvbXBsZXRlZC4gQ3JlYXRpbmcgY29ubmVjdGlvbi4iKSxvLmF1dGhUb2tlbl89dCYmdC5hY2Nlc3NUb2tlbix1PW5ldyBLYShpLG8ucmVwb0luZm9fLG8uYXBwbGljYXRpb25JZF8sZSxuLHIsZnVuY3Rpb24odCl7WnModCsiICgiK28ucmVwb0luZm9fLnRvU3RyaW5nKCkrIikiKSxvLmludGVycnVwdCgic2VydmVyX2tpbGwiKX0scykpfSkudGhlbihudWxsLGZ1bmN0aW9uKHQpe28ubG9nXygiRmFpbGVkIHRvIGdldCB0b2tlbjogIit0KSxhfHwoaC5yZXBvSW5mb18ubm9kZUFkbWluJiZacyh0KSxjKCkpfSkpfSxFdS5wcm90b3R5cGUuaW50ZXJydXB0PWZ1bmN0aW9uKHQpe1hzKCJJbnRlcnJ1cHRpbmcgY29ubmVjdGlvbiBmb3IgcmVhc29uOiAiK3QpLHRoaXMuaW50ZXJydXB0UmVhc29uc19bdF09ITAsdGhpcy5yZWFsdGltZV8/dGhpcy5yZWFsdGltZV8uY2xvc2UoKToodGhpcy5lc3RhYmxpc2hDb25uZWN0aW9uVGltZXJfJiYoY2xlYXJUaW1lb3V0KHRoaXMuZXN0YWJsaXNoQ29ubmVjdGlvblRpbWVyXyksdGhpcy5lc3RhYmxpc2hDb25uZWN0aW9uVGltZXJfPW51bGwpLHRoaXMuY29ubmVjdGVkXyYmdGhpcy5vblJlYWx0aW1lRGlzY29ubmVjdF8oKSl9LEV1LnByb3RvdHlwZS5yZXN1bWU9ZnVuY3Rpb24odCl7WHMoIlJlc3VtaW5nIGNvbm5lY3Rpb24gZm9yIHJlYXNvbjogIit0KSxkZWxldGUgdGhpcy5pbnRlcnJ1cHRSZWFzb25zX1t0XSx4byh0aGlzLmludGVycnVwdFJlYXNvbnNfKSYmKHRoaXMucmVjb25uZWN0RGVsYXlfPV91LHRoaXMucmVhbHRpbWVffHx0aGlzLnNjaGVkdWxlQ29ubmVjdF8oMCkpfSxFdS5wcm90b3R5cGUuaGFuZGxlVGltZXN0YW1wXz1mdW5jdGlvbih0KXt0LT0obmV3IERhdGUpLmdldFRpbWUoKTt0aGlzLm9uU2VydmVySW5mb1VwZGF0ZV8oe3NlcnZlclRpbWVPZmZzZXQ6dH0pfSxFdS5wcm90b3R5cGUuY2FuY2VsU2VudFRyYW5zYWN0aW9uc189ZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDt0PHRoaXMub3V0c3RhbmRpbmdQdXRzXy5sZW5ndGg7dCsrKXt2YXIgZT10aGlzLm91dHN0YW5kaW5nUHV0c19bdF07ZSYmImgiaW4gZS5yZXF1ZXN0JiZlLnF1ZXVlZCYmKGUub25Db21wbGV0ZSYmZS5vbkNvbXBsZXRlKCJkaXNjb25uZWN0IiksZGVsZXRlIHRoaXMub3V0c3RhbmRpbmdQdXRzX1t0XSx0aGlzLm91dHN0YW5kaW5nUHV0Q291bnRfLS0pfTA9PT10aGlzLm91dHN0YW5kaW5nUHV0Q291bnRfJiYodGhpcy5vdXRzdGFuZGluZ1B1dHNfPVtdKX0sRXUucHJvdG90eXBlLm9uTGlzdGVuUmV2b2tlZF89ZnVuY3Rpb24odCxlKXtlPWU/ZS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHJhKHQpfSkuam9pbigiJCIpOiJkZWZhdWx0IixlPXRoaXMucmVtb3ZlTGlzdGVuXyh0LGUpO2UmJmUub25Db21wbGV0ZSYmZS5vbkNvbXBsZXRlKCJwZXJtaXNzaW9uX2RlbmllZCIpfSxFdS5wcm90b3R5cGUucmVtb3ZlTGlzdGVuXz1mdW5jdGlvbih0LGUpe3ZhciBuLHI9bmV3IFphKHQpLnRvU3RyaW5nKCk7cmV0dXJuIHRoaXMubGlzdGVucy5oYXMocik/KG49KHQ9dGhpcy5saXN0ZW5zLmdldChyKSkuZ2V0KGUpLHQuZGVsZXRlKGUpLDA9PT10LnNpemUmJnRoaXMubGlzdGVucy5kZWxldGUocikpOm49dm9pZCAwLG59LEV1LnByb3RvdHlwZS5vbkF1dGhSZXZva2VkXz1mdW5jdGlvbih0LGUpe1hzKCJBdXRoIHRva2VuIHJldm9rZWQ6ICIrdCsiLyIrZSksdGhpcy5hdXRoVG9rZW5fPW51bGwsdGhpcy5mb3JjZVRva2VuUmVmcmVzaF89ITAsdGhpcy5yZWFsdGltZV8uY2xvc2UoKSwiaW52YWxpZF90b2tlbiIhPT10JiYicGVybWlzc2lvbl9kZW5pZWQiIT09dHx8KHRoaXMuaW52YWxpZEF1dGhUb2tlbkNvdW50XysrLDM8PXRoaXMuaW52YWxpZEF1dGhUb2tlbkNvdW50XyYmKHRoaXMucmVjb25uZWN0RGVsYXlfPTNlNCx0aGlzLmF1dGhUb2tlblByb3ZpZGVyXy5ub3RpZnlGb3JJbnZhbGlkVG9rZW4oKSkpfSxFdS5wcm90b3R5cGUub25TZWN1cml0eURlYnVnUGFja2V0Xz1mdW5jdGlvbih0KXt0aGlzLnNlY3VyaXR5RGVidWdDYWxsYmFja18/dGhpcy5zZWN1cml0eURlYnVnQ2FsbGJhY2tfKHQpOiJtc2ciaW4gdCYmY29uc29sZS5sb2coIkZJUkVCQVNFOiAiK3QubXNnLnJlcGxhY2UoIlxuIiwiXG5GSVJFQkFTRTogIikpfSxFdS5wcm90b3R5cGUucmVzdG9yZVN0YXRlXz1mdW5jdGlvbigpe3ZhciBlLHQsbixyO3RoaXMudHJ5QXV0aCgpO3RyeXtmb3IodmFyIGk9dG8odGhpcy5saXN0ZW5zLnZhbHVlcygpKSxvPWkubmV4dCgpOyFvLmRvbmU7bz1pLm5leHQoKSl7dmFyIHM9by52YWx1ZTt0cnl7Zm9yKHZhciBhPShuPXZvaWQgMCx0byhzLnZhbHVlcygpKSksdT1hLm5leHQoKTshdS5kb25lO3U9YS5uZXh0KCkpe3ZhciBjPXUudmFsdWU7dGhpcy5zZW5kTGlzdGVuXyhjKX19Y2F0Y2godCl7bj17ZXJyb3I6dH19ZmluYWxseXt0cnl7dSYmIXUuZG9uZSYmKHI9YS5yZXR1cm4pJiZyLmNhbGwoYSl9ZmluYWxseXtpZihuKXRocm93IG4uZXJyb3J9fX19Y2F0Y2godCl7ZT17ZXJyb3I6dH19ZmluYWxseXt0cnl7byYmIW8uZG9uZSYmKHQ9aS5yZXR1cm4pJiZ0LmNhbGwoaSl9ZmluYWxseXtpZihlKXRocm93IGUuZXJyb3J9fWZvcih2YXIgaD0wO2g8dGhpcy5vdXRzdGFuZGluZ1B1dHNfLmxlbmd0aDtoKyspdGhpcy5vdXRzdGFuZGluZ1B1dHNfW2hdJiZ0aGlzLnNlbmRQdXRfKGgpO2Zvcig7dGhpcy5vbkRpc2Nvbm5lY3RSZXF1ZXN0UXVldWVfLmxlbmd0aDspe3ZhciBsPXRoaXMub25EaXNjb25uZWN0UmVxdWVzdFF1ZXVlXy5zaGlmdCgpO3RoaXMuc2VuZE9uRGlzY29ubmVjdF8obC5hY3Rpb24sbC5wYXRoU3RyaW5nLGwuZGF0YSxsLm9uQ29tcGxldGUpfWZvcihoPTA7aDx0aGlzLm91dHN0YW5kaW5nR2V0c18ubGVuZ3RoO2grKyl0aGlzLm91dHN0YW5kaW5nR2V0c19baF0mJnRoaXMuc2VuZEdldF8oaCl9LEV1LnByb3RvdHlwZS5zZW5kQ29ubmVjdFN0YXRzXz1mdW5jdGlvbigpe3ZhciB0PXt9O3RbInNkay5qcy4iK01hLnJlcGxhY2UoL1wuL2csIi0iKV09MSx2bygpP3RbImZyYW1ld29yay5jb3Jkb3ZhIl09MTp5bygpJiYodFsiZnJhbWV3b3JrLnJlYWN0bmF0aXZlIl09MSksdGhpcy5yZXBvcnRTdGF0cyh0KX0sRXUucHJvdG90eXBlLnNob3VsZFJlY29ubmVjdF89ZnVuY3Rpb24oKXt2YXIgdD1ZYS5nZXRJbnN0YW5jZSgpLmN1cnJlbnRseU9ubGluZSgpO3JldHVybiB4byh0aGlzLmludGVycnVwdFJlYXNvbnNfKSYmdH0sRXUubmV4dFBlcnNpc3RlbnRDb25uZWN0aW9uSWRfPTAsRXUubmV4dENvbm5lY3Rpb25JZF89MCxFdSk7ZnVuY3Rpb24gRXUodCxlLG4scixpLG8scyl7dmFyIGE9d3UuY2FsbCh0aGlzKXx8dGhpcztpZihhLnJlcG9JbmZvXz10LGEuYXBwbGljYXRpb25JZF89ZSxhLm9uRGF0YVVwZGF0ZV89bixhLm9uQ29ubmVjdFN0YXR1c189cixhLm9uU2VydmVySW5mb1VwZGF0ZV89aSxhLmF1dGhUb2tlblByb3ZpZGVyXz1vLGEuYXV0aE92ZXJyaWRlXz1zLGEuaWQ9RXUubmV4dFBlcnNpc3RlbnRDb25uZWN0aW9uSWRfKyssYS5sb2dfPUpzKCJwOiIrYS5pZCsiOiIpLGEuaW50ZXJydXB0UmVhc29uc189e30sYS5saXN0ZW5zPW5ldyBNYXAsYS5vdXRzdGFuZGluZ1B1dHNfPVtdLGEub3V0c3RhbmRpbmdHZXRzXz1bXSxhLm91dHN0YW5kaW5nUHV0Q291bnRfPTAsYS5vdXRzdGFuZGluZ0dldENvdW50Xz0wLGEub25EaXNjb25uZWN0UmVxdWVzdFF1ZXVlXz1bXSxhLmNvbm5lY3RlZF89ITEsYS5yZWNvbm5lY3REZWxheV89X3UsYS5tYXhSZWNvbm5lY3REZWxheV89SXUsYS5zZWN1cml0eURlYnVnQ2FsbGJhY2tfPW51bGwsYS5sYXN0U2Vzc2lvbklkPW51bGwsYS5lc3RhYmxpc2hDb25uZWN0aW9uVGltZXJfPW51bGwsYS52aXNpYmxlXz0hMSxhLnJlcXVlc3RDQkhhc2hfPXt9LGEucmVxdWVzdE51bWJlcl89MCxhLnJlYWx0aW1lXz1udWxsLGEuYXV0aFRva2VuXz1udWxsLGEuZm9yY2VUb2tlblJlZnJlc2hfPSExLGEuaW52YWxpZEF1dGhUb2tlbkNvdW50Xz0wLGEuZmlyc3RDb25uZWN0aW9uXz0hMCxhLmxhc3RDb25uZWN0aW9uQXR0ZW1wdFRpbWVfPW51bGwsYS5sYXN0Q29ubmVjdGlvbkVzdGFibGlzaGVkVGltZV89bnVsbCxzJiYhbW8oKSl0aHJvdyBuZXcgRXJyb3IoIkF1dGggb3ZlcnJpZGUgc3BlY2lmaWVkIGluIG9wdGlvbnMsIGJ1dCBub3Qgc3VwcG9ydGVkIG9uIG5vbiBOb2RlLmpzIHBsYXRmb3JtcyIpO3JldHVybiBhLnNjaGVkdWxlQ29ubmVjdF8oMCksbXUuZ2V0SW5zdGFuY2UoKS5vbigidmlzaWJsZSIsYS5vblZpc2libGVfLGEpLC0xPT09dC5ob3N0LmluZGV4T2YoImZibG9jYWwiKSYmWWEuZ2V0SW5zdGFuY2UoKS5vbigib25saW5lIixhLm9uT25saW5lXyxhKSxhfXZhciBTdT0oQ3UuV3JhcD1mdW5jdGlvbih0LGUpe3JldHVybiBuZXcgQ3UodCxlKX0sQ3UpO2Z1bmN0aW9uIEN1KHQsZSl7dGhpcy5uYW1lPXQsdGhpcy5ub2RlPWV9dmFyIE51LEc9KEF1LnByb3RvdHlwZS5nZXRDb21wYXJlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29tcGFyZS5iaW5kKHRoaXMpfSxBdS5wcm90b3R5cGUuaW5kZXhlZFZhbHVlQ2hhbmdlZD1mdW5jdGlvbih0LGUpe3Q9bmV3IFN1KHRhLHQpLGU9bmV3IFN1KHRhLGUpO3JldHVybiAwIT09dGhpcy5jb21wYXJlKHQsZSl9LEF1LnByb3RvdHlwZS5taW5Qb3N0PWZ1bmN0aW9uKCl7cmV0dXJuIFN1Lk1JTn0sQXUpO2Z1bmN0aW9uIEF1KCl7fXZhciBrdSxTbj0oWGkoUnUsa3U9RyksT2JqZWN0LmRlZmluZVByb3BlcnR5KFJ1LCJfX0VNUFRZX05PREUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gTnV9LHNldDpmdW5jdGlvbih0KXtOdT10fSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLFJ1LnByb3RvdHlwZS5jb21wYXJlPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5hKHQubmFtZSxlLm5hbWUpfSxSdS5wcm90b3R5cGUuaXNEZWZpbmVkT249ZnVuY3Rpb24odCl7dGhyb3cgYW8oIktleUluZGV4LmlzRGVmaW5lZE9uIG5vdCBleHBlY3RlZCB0byBiZSBjYWxsZWQuIil9LFJ1LnByb3RvdHlwZS5pbmRleGVkVmFsdWVDaGFuZ2VkPWZ1bmN0aW9uKHQsZSl7cmV0dXJuITF9LFJ1LnByb3RvdHlwZS5taW5Qb3N0PWZ1bmN0aW9uKCl7cmV0dXJuIFN1Lk1JTn0sUnUucHJvdG90eXBlLm1heFBvc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFN1KGVhLE51KX0sUnUucHJvdG90eXBlLm1ha2VQb3N0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHNvKCJzdHJpbmciPT10eXBlb2YgdCwiS2V5SW5kZXggaW5kZXhWYWx1ZSBtdXN0IGFsd2F5cyBiZSBhIHN0cmluZy4iKSxuZXcgU3UodCxOdSl9LFJ1LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiIua2V5In0sUnUpO2Z1bmN0aW9uIFJ1KCl7cmV0dXJuIG51bGwhPT1rdSYma3UuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfXZhciBQdT1uZXcgU24sT3U9KER1LnByb3RvdHlwZS5nZXROZXh0PWZ1bmN0aW9uKCl7aWYoMD09PXRoaXMubm9kZVN0YWNrXy5sZW5ndGgpcmV0dXJuIG51bGw7dmFyIHQ9dGhpcy5ub2RlU3RhY2tfLnBvcCgpLGU9dGhpcy5yZXN1bHRHZW5lcmF0b3JfP3RoaXMucmVzdWx0R2VuZXJhdG9yXyh0LmtleSx0LnZhbHVlKTp7a2V5OnQua2V5LHZhbHVlOnQudmFsdWV9O2lmKHRoaXMuaXNSZXZlcnNlXylmb3IodD10LmxlZnQ7IXQuaXNFbXB0eSgpOyl0aGlzLm5vZGVTdGFja18ucHVzaCh0KSx0PXQucmlnaHQ7ZWxzZSBmb3IodD10LnJpZ2h0OyF0LmlzRW1wdHkoKTspdGhpcy5ub2RlU3RhY2tfLnB1c2godCksdD10LmxlZnQ7cmV0dXJuIGV9LER1LnByb3RvdHlwZS5oYXNOZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIDA8dGhpcy5ub2RlU3RhY2tfLmxlbmd0aH0sRHUucHJvdG90eXBlLnBlZWs9ZnVuY3Rpb24oKXtpZigwPT09dGhpcy5ub2RlU3RhY2tfLmxlbmd0aClyZXR1cm4gbnVsbDt2YXIgdD10aGlzLm5vZGVTdGFja19bdGhpcy5ub2RlU3RhY2tfLmxlbmd0aC0xXTtyZXR1cm4gdGhpcy5yZXN1bHRHZW5lcmF0b3JfP3RoaXMucmVzdWx0R2VuZXJhdG9yXyh0LmtleSx0LnZhbHVlKTp7a2V5OnQua2V5LHZhbHVlOnQudmFsdWV9fSxEdSk7ZnVuY3Rpb24gRHUodCxlLG4scixpKXt2b2lkIDA9PT1pJiYoaT1udWxsKSx0aGlzLmlzUmV2ZXJzZV89cix0aGlzLnJlc3VsdEdlbmVyYXRvcl89aSx0aGlzLm5vZGVTdGFja189W107Zm9yKHZhciBvPTE7IXQuaXNFbXB0eSgpOylpZihvPWU/bih0LmtleSxlKToxLHImJihvKj0tMSksbzwwKXQ9dGhpcy5pc1JldmVyc2VfP3QubGVmdDp0LnJpZ2h0O2Vsc2V7aWYoMD09PW8pe3RoaXMubm9kZVN0YWNrXy5wdXNoKHQpO2JyZWFrfXRoaXMubm9kZVN0YWNrXy5wdXNoKHQpLHQ9dGhpcy5pc1JldmVyc2VfP3QucmlnaHQ6dC5sZWZ0fX12YXIgeHU9KEx1LnByb3RvdHlwZS5jb3B5PWZ1bmN0aW9uKHQsZSxuLHIsaSl7cmV0dXJuIG5ldyBMdShudWxsIT10P3Q6dGhpcy5rZXksbnVsbCE9ZT9lOnRoaXMudmFsdWUsbnVsbCE9bj9uOnRoaXMuY29sb3IsbnVsbCE9cj9yOnRoaXMubGVmdCxudWxsIT1pP2k6dGhpcy5yaWdodCl9LEx1LnByb3RvdHlwZS5jb3VudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxlZnQuY291bnQoKSsxK3RoaXMucmlnaHQuY291bnQoKX0sTHUucHJvdG90eXBlLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4hMX0sTHUucHJvdG90eXBlLmlub3JkZXJUcmF2ZXJzYWw9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMubGVmdC5pbm9yZGVyVHJhdmVyc2FsKHQpfHwhIXQodGhpcy5rZXksdGhpcy52YWx1ZSl8fHRoaXMucmlnaHQuaW5vcmRlclRyYXZlcnNhbCh0KX0sTHUucHJvdG90eXBlLnJldmVyc2VUcmF2ZXJzYWw9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMucmlnaHQucmV2ZXJzZVRyYXZlcnNhbCh0KXx8dCh0aGlzLmtleSx0aGlzLnZhbHVlKXx8dGhpcy5sZWZ0LnJldmVyc2VUcmF2ZXJzYWwodCl9LEx1LnByb3RvdHlwZS5taW5fPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGVmdC5pc0VtcHR5KCk/dGhpczp0aGlzLmxlZnQubWluXygpfSxMdS5wcm90b3R5cGUubWluS2V5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWluXygpLmtleX0sTHUucHJvdG90eXBlLm1heEtleT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJpZ2h0LmlzRW1wdHkoKT90aGlzLmtleTp0aGlzLnJpZ2h0Lm1heEtleSgpfSxMdS5wcm90b3R5cGUuaW5zZXJ0PWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzLGk9bih0LHIua2V5KTtyZXR1cm4ocj1pPDA/ci5jb3B5KG51bGwsbnVsbCxudWxsLHIubGVmdC5pbnNlcnQodCxlLG4pLG51bGwpOjA9PT1pP3IuY29weShudWxsLGUsbnVsbCxudWxsLG51bGwpOnIuY29weShudWxsLG51bGwsbnVsbCxudWxsLHIucmlnaHQuaW5zZXJ0KHQsZSxuKSkpLmZpeFVwXygpfSxMdS5wcm90b3R5cGUucmVtb3ZlTWluXz1mdW5jdGlvbigpe2lmKHRoaXMubGVmdC5pc0VtcHR5KCkpcmV0dXJuIFV1LkVNUFRZX05PREU7dmFyIHQ9dGhpcztyZXR1cm4odD0odD0hdC5sZWZ0LmlzUmVkXygpJiYhdC5sZWZ0LmxlZnQuaXNSZWRfKCk/dC5tb3ZlUmVkTGVmdF8oKTp0KS5jb3B5KG51bGwsbnVsbCxudWxsLHQubGVmdC5yZW1vdmVNaW5fKCksbnVsbCkpLmZpeFVwXygpfSxMdS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKHQsZSl7dmFyIG4scj10aGlzO2lmKGUodCxyLmtleSk8MClyPShyPSEoci5sZWZ0LmlzRW1wdHkoKXx8ci5sZWZ0LmlzUmVkXygpfHxyLmxlZnQubGVmdC5pc1JlZF8oKSk/ci5tb3ZlUmVkTGVmdF8oKTpyKS5jb3B5KG51bGwsbnVsbCxudWxsLHIubGVmdC5yZW1vdmUodCxlKSxudWxsKTtlbHNle2lmKDA9PT1lKHQsKHI9ISgocj1yLmxlZnQuaXNSZWRfKCk/ci5yb3RhdGVSaWdodF8oKTpyKS5yaWdodC5pc0VtcHR5KCl8fHIucmlnaHQuaXNSZWRfKCl8fHIucmlnaHQubGVmdC5pc1JlZF8oKSk/ci5tb3ZlUmVkUmlnaHRfKCk6cikua2V5KSl7aWYoci5yaWdodC5pc0VtcHR5KCkpcmV0dXJuIFV1LkVNUFRZX05PREU7bj1yLnJpZ2h0Lm1pbl8oKSxyPXIuY29weShuLmtleSxuLnZhbHVlLG51bGwsbnVsbCxyLnJpZ2h0LnJlbW92ZU1pbl8oKSl9cj1yLmNvcHkobnVsbCxudWxsLG51bGwsbnVsbCxyLnJpZ2h0LnJlbW92ZSh0LGUpKX1yZXR1cm4gci5maXhVcF8oKX0sTHUucHJvdG90eXBlLmlzUmVkXz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbG9yfSxMdS5wcm90b3R5cGUuZml4VXBfPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXR1cm4gdD0odD0odD10LnJpZ2h0LmlzUmVkXygpJiYhdC5sZWZ0LmlzUmVkXygpP3Qucm90YXRlTGVmdF8oKTp0KS5sZWZ0LmlzUmVkXygpJiZ0LmxlZnQubGVmdC5pc1JlZF8oKT90LnJvdGF0ZVJpZ2h0XygpOnQpLmxlZnQuaXNSZWRfKCkmJnQucmlnaHQuaXNSZWRfKCk/dC5jb2xvckZsaXBfKCk6dH0sTHUucHJvdG90eXBlLm1vdmVSZWRMZWZ0Xz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuY29sb3JGbGlwXygpO3JldHVybiB0PXQucmlnaHQubGVmdC5pc1JlZF8oKT8odD0odD10LmNvcHkobnVsbCxudWxsLG51bGwsbnVsbCx0LnJpZ2h0LnJvdGF0ZVJpZ2h0XygpKSkucm90YXRlTGVmdF8oKSkuY29sb3JGbGlwXygpOnR9LEx1LnByb3RvdHlwZS5tb3ZlUmVkUmlnaHRfPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5jb2xvckZsaXBfKCk7cmV0dXJuIHQ9dC5sZWZ0LmxlZnQuaXNSZWRfKCk/KHQ9dC5yb3RhdGVSaWdodF8oKSkuY29sb3JGbGlwXygpOnR9LEx1LnByb3RvdHlwZS5yb3RhdGVMZWZ0Xz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuY29weShudWxsLG51bGwsTHUuUkVELG51bGwsdGhpcy5yaWdodC5sZWZ0KTtyZXR1cm4gdGhpcy5yaWdodC5jb3B5KG51bGwsbnVsbCx0aGlzLmNvbG9yLHQsbnVsbCl9LEx1LnByb3RvdHlwZS5yb3RhdGVSaWdodF89ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmNvcHkobnVsbCxudWxsLEx1LlJFRCx0aGlzLmxlZnQucmlnaHQsbnVsbCk7cmV0dXJuIHRoaXMubGVmdC5jb3B5KG51bGwsbnVsbCx0aGlzLmNvbG9yLG51bGwsdCl9LEx1LnByb3RvdHlwZS5jb2xvckZsaXBfPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5sZWZ0LmNvcHkobnVsbCxudWxsLCF0aGlzLmxlZnQuY29sb3IsbnVsbCxudWxsKSxlPXRoaXMucmlnaHQuY29weShudWxsLG51bGwsIXRoaXMucmlnaHQuY29sb3IsbnVsbCxudWxsKTtyZXR1cm4gdGhpcy5jb3B5KG51bGwsbnVsbCwhdGhpcy5jb2xvcix0LGUpfSxMdS5wcm90b3R5cGUuY2hlY2tNYXhEZXB0aF89ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmNoZWNrXygpO3JldHVybiBNYXRoLnBvdygyLHQpPD10aGlzLmNvdW50KCkrMX0sTHUucHJvdG90eXBlLmNoZWNrXz1mdW5jdGlvbigpe2lmKHRoaXMuaXNSZWRfKCkmJnRoaXMubGVmdC5pc1JlZF8oKSl0aHJvdyBuZXcgRXJyb3IoIlJlZCBub2RlIGhhcyByZWQgY2hpbGQoIit0aGlzLmtleSsiLCIrdGhpcy52YWx1ZSsiKSIpO2lmKHRoaXMucmlnaHQuaXNSZWRfKCkpdGhyb3cgbmV3IEVycm9yKCJSaWdodCBjaGlsZCBvZiAoIit0aGlzLmtleSsiLCIrdGhpcy52YWx1ZSsiKSBpcyByZWQiKTt2YXIgdD10aGlzLmxlZnQuY2hlY2tfKCk7aWYodCE9PXRoaXMucmlnaHQuY2hlY2tfKCkpdGhyb3cgbmV3IEVycm9yKCJCbGFjayBkZXB0aHMgZGlmZmVyIik7cmV0dXJuIHQrKHRoaXMuaXNSZWRfKCk/MDoxKX0sTHUuUkVEPSEwLEx1LkJMQUNLPSExLEx1KTtmdW5jdGlvbiBMdSh0LGUsbixyLGkpe3RoaXMua2V5PXQsdGhpcy52YWx1ZT1lLHRoaXMuY29sb3I9bnVsbCE9bj9uOkx1LlJFRCx0aGlzLmxlZnQ9bnVsbCE9cj9yOlV1LkVNUFRZX05PREUsdGhpcy5yaWdodD1udWxsIT1pP2k6VXUuRU1QVFlfTk9ERX1NdS5wcm90b3R5cGUuY29weT1mdW5jdGlvbih0LGUsbixyLGkpe3JldHVybiB0aGlzfSxNdS5wcm90b3R5cGUuaW5zZXJ0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbmV3IHh1KHQsZSxudWxsKX0sTXUucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzfSxNdS5wcm90b3R5cGUuY291bnQ9ZnVuY3Rpb24oKXtyZXR1cm4gMH0sTXUucHJvdG90eXBlLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4hMH0sTXUucHJvdG90eXBlLmlub3JkZXJUcmF2ZXJzYWw9ZnVuY3Rpb24odCl7cmV0dXJuITF9LE11LnByb3RvdHlwZS5yZXZlcnNlVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiExfSxNdS5wcm90b3R5cGUubWluS2V5PWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LE11LnByb3RvdHlwZS5tYXhLZXk9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sTXUucHJvdG90eXBlLmNoZWNrXz1mdW5jdGlvbigpe3JldHVybiAwfSxNdS5wcm90b3R5cGUuaXNSZWRfPWZ1bmN0aW9uKCl7cmV0dXJuITF9LEdhPU11O2Z1bmN0aW9uIE11KCl7fXZhciBGdSxVdT0oanUucHJvdG90eXBlLmluc2VydD1mdW5jdGlvbih0LGUpe3JldHVybiBuZXcganUodGhpcy5jb21wYXJhdG9yXyx0aGlzLnJvb3RfLmluc2VydCh0LGUsdGhpcy5jb21wYXJhdG9yXykuY29weShudWxsLG51bGwseHUuQkxBQ0ssbnVsbCxudWxsKSl9LGp1LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBqdSh0aGlzLmNvbXBhcmF0b3JfLHRoaXMucm9vdF8ucmVtb3ZlKHQsdGhpcy5jb21wYXJhdG9yXykuY29weShudWxsLG51bGwseHUuQkxBQ0ssbnVsbCxudWxsKSl9LGp1LnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49dGhpcy5yb290Xzshbi5pc0VtcHR5KCk7KXtpZigwPT09KGU9dGhpcy5jb21wYXJhdG9yXyh0LG4ua2V5KSkpcmV0dXJuIG4udmFsdWU7ZTwwP249bi5sZWZ0OjA8ZSYmKG49bi5yaWdodCl9cmV0dXJuIG51bGx9LGp1LnByb3RvdHlwZS5nZXRQcmVkZWNlc3NvcktleT1mdW5jdGlvbih0KXtmb3IodmFyIGUsbj10aGlzLnJvb3RfLHI9bnVsbDshbi5pc0VtcHR5KCk7KXtpZigwPT09KGU9dGhpcy5jb21wYXJhdG9yXyh0LG4ua2V5KSkpe2lmKG4ubGVmdC5pc0VtcHR5KCkpcmV0dXJuIHI/ci5rZXk6bnVsbDtmb3Iobj1uLmxlZnQ7IW4ucmlnaHQuaXNFbXB0eSgpOyluPW4ucmlnaHQ7cmV0dXJuIG4ua2V5fWU8MD9uPW4ubGVmdDowPGUmJihuPShyPW4pLnJpZ2h0KX10aHJvdyBuZXcgRXJyb3IoIkF0dGVtcHRlZCB0byBmaW5kIHByZWRlY2Vzc29yIGtleSBmb3IgYSBub25leGlzdGVudCBrZXkuICBXaGF0IGdpdmVzPyIpfSxqdS5wcm90b3R5cGUuaXNFbXB0eT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJvb3RfLmlzRW1wdHkoKX0sanUucHJvdG90eXBlLmNvdW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucm9vdF8uY291bnQoKX0sanUucHJvdG90eXBlLm1pbktleT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJvb3RfLm1pbktleSgpfSxqdS5wcm90b3R5cGUubWF4S2V5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucm9vdF8ubWF4S2V5KCl9LGp1LnByb3RvdHlwZS5pbm9yZGVyVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnJvb3RfLmlub3JkZXJUcmF2ZXJzYWwodCl9LGp1LnByb3RvdHlwZS5yZXZlcnNlVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnJvb3RfLnJldmVyc2VUcmF2ZXJzYWwodCl9LGp1LnByb3RvdHlwZS5nZXRJdGVyYXRvcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IE91KHRoaXMucm9vdF8sbnVsbCx0aGlzLmNvbXBhcmF0b3JfLCExLHQpfSxqdS5wcm90b3R5cGUuZ2V0SXRlcmF0b3JGcm9tPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBPdSh0aGlzLnJvb3RfLHQsdGhpcy5jb21wYXJhdG9yXywhMSxlKX0sanUucHJvdG90eXBlLmdldFJldmVyc2VJdGVyYXRvckZyb209ZnVuY3Rpb24odCxlKXtyZXR1cm4gbmV3IE91KHRoaXMucm9vdF8sdCx0aGlzLmNvbXBhcmF0b3JfLCEwLGUpfSxqdS5wcm90b3R5cGUuZ2V0UmV2ZXJzZUl0ZXJhdG9yPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgT3UodGhpcy5yb290XyxudWxsLHRoaXMuY29tcGFyYXRvcl8sITAsdCl9LGp1LkVNUFRZX05PREU9bmV3IEdhLGp1KTtmdW5jdGlvbiBqdSh0LGUpe3ZvaWQgMD09PWUmJihlPWp1LkVNUFRZX05PREUpLHRoaXMuY29tcGFyYXRvcl89dCx0aGlzLnJvb3RfPWV9ZnVuY3Rpb24gcXUodCxlKXtyZXR1cm4gbmEodC5uYW1lLGUubmFtZSl9ZnVuY3Rpb24gVnUodCxlKXtyZXR1cm4gbmEodCxlKX1mdW5jdGlvbiBCdSh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/Im51bWJlcjoiK29hKHQpOiJzdHJpbmc6Iit0fXZhciBLdSxXdSxIdSxHdSx6dT1mdW5jdGlvbih0KXt2YXIgZTt0LmlzTGVhZk5vZGUoKT8oZT10LnZhbCgpLHNvKCJzdHJpbmciPT10eXBlb2YgZXx8Im51bWJlciI9PXR5cGVvZiBlfHwib2JqZWN0Ij09dHlwZW9mIGUmJk9vKGUsIi5zdiIpLCJQcmlvcml0eSBtdXN0IGJlIGEgc3RyaW5nIG9yIG51bWJlci4iKSk6c28odD09PUZ1fHx0LmlzRW1wdHkoKSwicHJpb3JpdHkgb2YgdW5leHBlY3RlZCB0eXBlLiIpLHNvKHQ9PT1GdXx8dC5nZXRQcmlvcml0eSgpLmlzRW1wdHkoKSwiUHJpb3JpdHkgbm9kZXMgY2FuJ3QgaGF2ZSBhIHByaW9yaXR5IG9mIHRoZWlyIG93bi4iKX0sUXU9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShZdSwiX19jaGlsZHJlbk5vZGVDb25zdHJ1Y3RvciIse2dldDpmdW5jdGlvbigpe3JldHVybiBLdX0sc2V0OmZ1bmN0aW9uKHQpe0t1PXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksWXUucHJvdG90eXBlLmlzTGVhZk5vZGU9ZnVuY3Rpb24oKXtyZXR1cm4hMH0sWXUucHJvdG90eXBlLmdldFByaW9yaXR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJpb3JpdHlOb2RlX30sWXUucHJvdG90eXBlLnVwZGF0ZVByaW9yaXR5PWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgWXUodGhpcy52YWx1ZV8sdCl9LFl1LnByb3RvdHlwZS5nZXRJbW1lZGlhdGVDaGlsZD1mdW5jdGlvbih0KXtyZXR1cm4iLnByaW9yaXR5Ij09PXQ/dGhpcy5wcmlvcml0eU5vZGVfOll1Ll9fY2hpbGRyZW5Ob2RlQ29uc3RydWN0b3IuRU1QVFlfTk9ERX0sWXUucHJvdG90eXBlLmdldENoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiBjdSh0KT90aGlzOiIucHJpb3JpdHkiPT09bnUodCk/dGhpcy5wcmlvcml0eU5vZGVfOll1Ll9fY2hpbGRyZW5Ob2RlQ29uc3RydWN0b3IuRU1QVFlfTk9ERX0sWXUucHJvdG90eXBlLmhhc0NoaWxkPWZ1bmN0aW9uKCl7cmV0dXJuITF9LFl1LnByb3RvdHlwZS5nZXRQcmVkZWNlc3NvckNoaWxkTmFtZT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsfSxZdS5wcm90b3R5cGUudXBkYXRlSW1tZWRpYXRlQ2hpbGQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4iLnByaW9yaXR5Ij09PXQ/dGhpcy51cGRhdGVQcmlvcml0eShlKTplLmlzRW1wdHkoKSYmIi5wcmlvcml0eSIhPT10P3RoaXM6WXUuX19jaGlsZHJlbk5vZGVDb25zdHJ1Y3Rvci5FTVBUWV9OT0RFLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKHQsZSkudXBkYXRlUHJpb3JpdHkodGhpcy5wcmlvcml0eU5vZGVfKX0sWXUucHJvdG90eXBlLnVwZGF0ZUNoaWxkPWZ1bmN0aW9uKHQsZSl7dmFyIG49bnUodCk7cmV0dXJuIG51bGw9PT1uP2U6ZS5pc0VtcHR5KCkmJiIucHJpb3JpdHkiIT09bj90aGlzOihzbygiLnByaW9yaXR5IiE9PW58fDE9PT1ydSh0KSwiLnByaW9yaXR5IG11c3QgYmUgdGhlIGxhc3QgdG9rZW4gaW4gYSBwYXRoIiksdGhpcy51cGRhdGVJbW1lZGlhdGVDaGlsZChuLFl1Ll9fY2hpbGRyZW5Ob2RlQ29uc3RydWN0b3IuRU1QVFlfTk9ERS51cGRhdGVDaGlsZChpdSh0KSxlKSkpfSxZdS5wcm90b3R5cGUuaXNFbXB0eT1mdW5jdGlvbigpe3JldHVybiExfSxZdS5wcm90b3R5cGUubnVtQ2hpbGRyZW49ZnVuY3Rpb24oKXtyZXR1cm4gMH0sWXUucHJvdG90eXBlLmZvckVhY2hDaGlsZD1mdW5jdGlvbih0LGUpe3JldHVybiExfSxZdS5wcm90b3R5cGUudmFsPWZ1bmN0aW9uKHQpe3JldHVybiB0JiYhdGhpcy5nZXRQcmlvcml0eSgpLmlzRW1wdHkoKT97Ii52YWx1ZSI6dGhpcy5nZXRWYWx1ZSgpLCIucHJpb3JpdHkiOnRoaXMuZ2V0UHJpb3JpdHkoKS52YWwoKX06dGhpcy5nZXRWYWx1ZSgpfSxZdS5wcm90b3R5cGUuaGFzaD1mdW5jdGlvbigpe3ZhciB0LGU7cmV0dXJuIG51bGw9PT10aGlzLmxhenlIYXNoXyYmKHQ9IiIsdGhpcy5wcmlvcml0eU5vZGVfLmlzRW1wdHkoKXx8KHQrPSJwcmlvcml0eToiK0J1KHRoaXMucHJpb3JpdHlOb2RlXy52YWwoKSkrIjoiKSx0Kz0oZT10eXBlb2YgdGhpcy52YWx1ZV8pKyI6Iix0Kz0ibnVtYmVyIj09ZT9vYSh0aGlzLnZhbHVlXyk6dGhpcy52YWx1ZV8sdGhpcy5sYXp5SGFzaF89THModCkpLHRoaXMubGF6eUhhc2hffSxZdS5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZV99LFl1LnByb3RvdHlwZS5jb21wYXJlVG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1ZdS5fX2NoaWxkcmVuTm9kZUNvbnN0cnVjdG9yLkVNUFRZX05PREU/MTp0IGluc3RhbmNlb2YgWXUuX19jaGlsZHJlbk5vZGVDb25zdHJ1Y3Rvcj8tMTooc28odC5pc0xlYWZOb2RlKCksIlVua25vd24gbm9kZSB0eXBlIiksdGhpcy5jb21wYXJlVG9MZWFmTm9kZV8odCkpfSxZdS5wcm90b3R5cGUuY29tcGFyZVRvTGVhZk5vZGVfPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0LnZhbHVlXyxuPXR5cGVvZiB0aGlzLnZhbHVlXyxyPVl1LlZBTFVFX1RZUEVfT1JERVIuaW5kZXhPZihlKSxpPVl1LlZBTFVFX1RZUEVfT1JERVIuaW5kZXhPZihuKTtyZXR1cm4gc28oMDw9ciwiVW5rbm93biBsZWFmIHR5cGU6ICIrZSksc28oMDw9aSwiVW5rbm93biBsZWFmIHR5cGU6ICIrbikscj09PWk/Im9iamVjdCI9PW4/MDp0aGlzLnZhbHVlXzx0LnZhbHVlXz8tMTp0aGlzLnZhbHVlXz09PXQudmFsdWVfPzA6MTppLXJ9LFl1LnByb3RvdHlwZS53aXRoSW5kZXg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sWXUucHJvdG90eXBlLmlzSW5kZXhlZD1mdW5jdGlvbigpe3JldHVybiEwfSxZdS5wcm90b3R5cGUuZXF1YWxzPWZ1bmN0aW9uKHQpe3JldHVybiB0PT09dGhpc3x8ISF0LmlzTGVhZk5vZGUoKSYmKHRoaXMudmFsdWVfPT09dC52YWx1ZV8mJnRoaXMucHJpb3JpdHlOb2RlXy5lcXVhbHModC5wcmlvcml0eU5vZGVfKSl9LFl1LlZBTFVFX1RZUEVfT1JERVI9WyJvYmplY3QiLCJib29sZWFuIiwibnVtYmVyIiwic3RyaW5nIl0sWXUpO2Z1bmN0aW9uIFl1KHQsZSl7dm9pZCAwPT09ZSYmKGU9WXUuX19jaGlsZHJlbk5vZGVDb25zdHJ1Y3Rvci5FTVBUWV9OT0RFKSx0aGlzLnZhbHVlXz10LHRoaXMucHJpb3JpdHlOb2RlXz1lLHRoaXMubGF6eUhhc2hfPW51bGwsc28odm9pZCAwIT09dGhpcy52YWx1ZV8mJm51bGwhPT10aGlzLnZhbHVlXywiTGVhZk5vZGUgc2hvdWxkbid0IGJlIGNyZWF0ZWQgd2l0aCBudWxsL3VuZGVmaW5lZCB2YWx1ZS4iKSx6dSh0aGlzLnByaW9yaXR5Tm9kZV8pfWZ1bmN0aW9uIFh1KCl7cmV0dXJuIG51bGwhPT1HdSYmR3UuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfXZhciBKdT1uZXcoWGkoWHUsR3U9RyksWHUucHJvdG90eXBlLmNvbXBhcmU9ZnVuY3Rpb24odCxlKXt2YXIgbj10Lm5vZGUuZ2V0UHJpb3JpdHkoKSxyPWUubm9kZS5nZXRQcmlvcml0eSgpLHI9bi5jb21wYXJlVG8ocik7cmV0dXJuIDA9PT1yP25hKHQubmFtZSxlLm5hbWUpOnJ9LFh1LnByb3RvdHlwZS5pc0RlZmluZWRPbj1mdW5jdGlvbih0KXtyZXR1cm4hdC5nZXRQcmlvcml0eSgpLmlzRW1wdHkoKX0sWHUucHJvdG90eXBlLmluZGV4ZWRWYWx1ZUNoYW5nZWQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4hdC5nZXRQcmlvcml0eSgpLmVxdWFscyhlLmdldFByaW9yaXR5KCkpfSxYdS5wcm90b3R5cGUubWluUG9zdD1mdW5jdGlvbigpe3JldHVybiBTdS5NSU59LFh1LnByb3RvdHlwZS5tYXhQb3N0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBTdShlYSxuZXcgUXUoIltQUklPUklUWS1QT1NUXSIsSHUpKX0sWHUucHJvdG90eXBlLm1ha2VQb3N0PWZ1bmN0aW9uKHQsZSl7dD1XdSh0KTtyZXR1cm4gbmV3IFN1KGUsbmV3IFF1KCJbUFJJT1JJVFktUE9TVF0iLHQpKX0sWHUucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIi5wcmlvcml0eSJ9LFh1KSwkdT1NYXRoLmxvZygyKSxadT0odGMucHJvdG90eXBlLm5leHRCaXRJc09uZT1mdW5jdGlvbigpe3ZhciB0PSEodGhpcy5iaXRzXyYxPDx0aGlzLmN1cnJlbnRfKTtyZXR1cm4gdGhpcy5jdXJyZW50Xy0tLHR9LHRjKTtmdW5jdGlvbiB0Yyh0KXt2YXIgZTt0aGlzLmNvdW50PShlPXQrMSxwYXJzZUludChNYXRoLmxvZyhlKS8kdSwxMCkpLHRoaXMuY3VycmVudF89dGhpcy5jb3VudC0xO3ZhciBuLHI9KG49dGhpcy5jb3VudCxwYXJzZUludChBcnJheShuKzEpLmpvaW4oIjEiKSwyKSk7dGhpcy5iaXRzXz10KzEmcn12YXIgZWMsbmMscmM9ZnVuY3Rpb24oYyx0LGgsZSl7Yy5zb3J0KHQpO3ZhciBsPWZ1bmN0aW9uKHQsZSl7dmFyIG49ZS10O2lmKDA9PW4pcmV0dXJuIG51bGw7aWYoMT09bilyZXR1cm4gcj1jW3RdLGk9aD9oKHIpOnIsbmV3IHh1KGksci5ub2RlLHh1LkJMQUNLLG51bGwsbnVsbCk7dmFyIG49cGFyc2VJbnQobi8yLDEwKSt0LHQ9bCh0LG4pLGU9bChuKzEsZSkscj1jW25dLGk9aD9oKHIpOnI7cmV0dXJuIG5ldyB4dShpLHIubm9kZSx4dS5CTEFDSyx0LGUpfSxuPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1udWxsLG49bnVsbCxpPWMubGVuZ3RoLHI9ZnVuY3Rpb24odCxlKXt2YXIgbj1pLXQscj1pO2ktPXQ7dD1sKDErbixyKSxyPWNbbl0sbj1oP2gocik6cjtvKG5ldyB4dShuLHIubm9kZSxlLG51bGwsdCkpfSxvPWZ1bmN0aW9uKHQpe2U9ZT9lLmxlZnQ9dDpuPXR9LHM9MDtzPHQuY291bnQ7KytzKXt2YXIgYT10Lm5leHRCaXRJc09uZSgpLHU9TWF0aC5wb3coMix0LmNvdW50LShzKzEpKTthP3IodSx4dS5CTEFDSyk6KHIodSx4dS5CTEFDSykscih1LHh1LlJFRCkpfXJldHVybiBufShuZXcgWnUoYy5sZW5ndGgpKTtyZXR1cm4gbmV3IFV1KGV8fHQsbil9LGljPXt9LG9jPShPYmplY3QuZGVmaW5lUHJvcGVydHkoc2MsIkRlZmF1bHQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc28oSnUsIkNoaWxkcmVuTm9kZS50cyBoYXMgbm90IGJlZW4gbG9hZGVkIiksZWM9ZWN8fG5ldyBzYyh7Ii5wcmlvcml0eSI6aWN9LHsiLnByaW9yaXR5IjpKdX0pfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHNjLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7dmFyIGU9RG8odGhpcy5pbmRleGVzXyx0KTtpZighZSl0aHJvdyBuZXcgRXJyb3IoIk5vIGluZGV4IGRlZmluZWQgZm9yICIrdCk7cmV0dXJuIGUgaW5zdGFuY2VvZiBVdT9lOm51bGx9LHNjLnByb3RvdHlwZS5oYXNJbmRleD1mdW5jdGlvbih0KXtyZXR1cm4gT28odGhpcy5pbmRleFNldF8sdC50b1N0cmluZygpKX0sc2MucHJvdG90eXBlLmFkZEluZGV4PWZ1bmN0aW9uKHQsZSl7c28odCE9PVB1LCJLZXlJbmRleCBhbHdheXMgZXhpc3RzIGFuZCBpc24ndCBtZWFudCB0byBiZSBhZGRlZCB0byB0aGUgSW5kZXhNYXAuIik7Zm9yKHZhciBuPVtdLHI9ITEsaT1lLmdldEl0ZXJhdG9yKFN1LldyYXApLG89aS5nZXROZXh0KCk7bzspcj1yfHx0LmlzRGVmaW5lZE9uKG8ubm9kZSksbi5wdXNoKG8pLG89aS5nZXROZXh0KCk7dmFyIHM9cj9yYyhuLHQuZ2V0Q29tcGFyZSgpKTppYyxhPXQudG9TdHJpbmcoKSx1PUppKHt9LHRoaXMuaW5kZXhTZXRfKTt1W2FdPXQ7ZT1KaSh7fSx0aGlzLmluZGV4ZXNfKTtyZXR1cm4gZVthXT1zLG5ldyBzYyhlLHUpfSxzYy5wcm90b3R5cGUuYWRkVG9JbmRleGVzPWZ1bmN0aW9uKHMsYSl7dmFyIHU9dGhpcztyZXR1cm4gbmV3IHNjKExvKHRoaXMuaW5kZXhlc18sZnVuY3Rpb24odCxlKXt2YXIgbj1Ebyh1LmluZGV4U2V0XyxlKTtpZihzbyhuLCJNaXNzaW5nIGluZGV4IGltcGxlbWVudGF0aW9uIGZvciAiK2UpLHQ9PT1pYyl7aWYobi5pc0RlZmluZWRPbihzLm5vZGUpKXtmb3IodmFyIHI9W10saT1hLmdldEl0ZXJhdG9yKFN1LldyYXApLG89aS5nZXROZXh0KCk7bzspby5uYW1lIT09cy5uYW1lJiZyLnB1c2gobyksbz1pLmdldE5leHQoKTtyZXR1cm4gci5wdXNoKHMpLHJjKHIsbi5nZXRDb21wYXJlKCkpfXJldHVybiBpY31uPWEuZ2V0KHMubmFtZSk7cmV0dXJuKHQ9bj90LnJlbW92ZShuZXcgU3Uocy5uYW1lLG4pKTp0KS5pbnNlcnQocyxzLm5vZGUpfSksdGhpcy5pbmRleFNldF8pfSxzYy5wcm90b3R5cGUucmVtb3ZlRnJvbUluZGV4ZXM9ZnVuY3Rpb24obixyKXtyZXR1cm4gbmV3IHNjKExvKHRoaXMuaW5kZXhlc18sZnVuY3Rpb24odCl7aWYodD09PWljKXJldHVybiB0O3ZhciBlPXIuZ2V0KG4ubmFtZSk7cmV0dXJuIGU/dC5yZW1vdmUobmV3IFN1KG4ubmFtZSxlKSk6dH0pLHRoaXMuaW5kZXhTZXRfKX0sc2MpO2Z1bmN0aW9uIHNjKHQsZSl7dGhpcy5pbmRleGVzXz10LHRoaXMuaW5kZXhTZXRfPWV9dmFyIGFjLHVjPShPYmplY3QuZGVmaW5lUHJvcGVydHkoY2MsIkVNUFRZX05PREUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbmM9bmN8fG5ldyBjYyhuZXcgVXUoVnUpLG51bGwsb2MuRGVmYXVsdCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksY2MucHJvdG90eXBlLmlzTGVhZk5vZGU9ZnVuY3Rpb24oKXtyZXR1cm4hMX0sY2MucHJvdG90eXBlLmdldFByaW9yaXR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJpb3JpdHlOb2RlX3x8bmN9LGNjLnByb3RvdHlwZS51cGRhdGVQcmlvcml0eT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jaGlsZHJlbl8uaXNFbXB0eSgpP3RoaXM6bmV3IGNjKHRoaXMuY2hpbGRyZW5fLHQsdGhpcy5pbmRleE1hcF8pfSxjYy5wcm90b3R5cGUuZ2V0SW1tZWRpYXRlQ2hpbGQ9ZnVuY3Rpb24odCl7aWYoIi5wcmlvcml0eSI9PT10KXJldHVybiB0aGlzLmdldFByaW9yaXR5KCk7dD10aGlzLmNoaWxkcmVuXy5nZXQodCk7cmV0dXJuIG51bGw9PT10P25jOnR9LGNjLnByb3RvdHlwZS5nZXRDaGlsZD1mdW5jdGlvbih0KXt2YXIgZT1udSh0KTtyZXR1cm4gbnVsbD09PWU/dGhpczp0aGlzLmdldEltbWVkaWF0ZUNoaWxkKGUpLmdldENoaWxkKGl1KHQpKX0sY2MucHJvdG90eXBlLmhhc0NoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT09dGhpcy5jaGlsZHJlbl8uZ2V0KHQpfSxjYy5wcm90b3R5cGUudXBkYXRlSW1tZWRpYXRlQ2hpbGQ9ZnVuY3Rpb24odCxlKXtpZihzbyhlLCJXZSBzaG91bGQgYWx3YXlzIGJlIHBhc3Npbmcgc25hcHNob3Qgbm9kZXMiKSwiLnByaW9yaXR5Ij09PXQpcmV0dXJuIHRoaXMudXBkYXRlUHJpb3JpdHkoZSk7dmFyIG49bmV3IFN1KHQsZSkscj12b2lkIDAsaT12b2lkIDAsaT1lLmlzRW1wdHkoKT8ocj10aGlzLmNoaWxkcmVuXy5yZW1vdmUodCksdGhpcy5pbmRleE1hcF8ucmVtb3ZlRnJvbUluZGV4ZXMobix0aGlzLmNoaWxkcmVuXykpOihyPXRoaXMuY2hpbGRyZW5fLmluc2VydCh0LGUpLHRoaXMuaW5kZXhNYXBfLmFkZFRvSW5kZXhlcyhuLHRoaXMuY2hpbGRyZW5fKSksbj1yLmlzRW1wdHkoKT9uYzp0aGlzLnByaW9yaXR5Tm9kZV87cmV0dXJuIG5ldyBjYyhyLG4saSl9LGNjLnByb3RvdHlwZS51cGRhdGVDaGlsZD1mdW5jdGlvbih0LGUpe3ZhciBuPW51KHQpO2lmKG51bGw9PT1uKXJldHVybiBlO3NvKCIucHJpb3JpdHkiIT09bnUodCl8fDE9PT1ydSh0KSwiLnByaW9yaXR5IG11c3QgYmUgdGhlIGxhc3QgdG9rZW4gaW4gYSBwYXRoIik7ZT10aGlzLmdldEltbWVkaWF0ZUNoaWxkKG4pLnVwZGF0ZUNoaWxkKGl1KHQpLGUpO3JldHVybiB0aGlzLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKG4sZSl9LGNjLnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2hpbGRyZW5fLmlzRW1wdHkoKX0sY2MucHJvdG90eXBlLm51bUNoaWxkcmVuPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2hpbGRyZW5fLmNvdW50KCl9LGNjLnByb3RvdHlwZS52YWw9ZnVuY3Rpb24obil7aWYodGhpcy5pc0VtcHR5KCkpcmV0dXJuIG51bGw7dmFyIHI9e30saT0wLG89MCxzPSEwO2lmKHRoaXMuZm9yRWFjaENoaWxkKEp1LGZ1bmN0aW9uKHQsZSl7clt0XT1lLnZhbChuKSxpKysscyYmY2MuSU5URUdFUl9SRUdFWFBfLnRlc3QodCk/bz1NYXRoLm1heChvLE51bWJlcih0KSk6cz0hMX0pLCFuJiZzJiZvPDIqaSl7dmFyIHQsZT1bXTtmb3IodCBpbiByKWVbdF09clt0XTtyZXR1cm4gZX1yZXR1cm4gbiYmIXRoaXMuZ2V0UHJpb3JpdHkoKS5pc0VtcHR5KCkmJihyWyIucHJpb3JpdHkiXT10aGlzLmdldFByaW9yaXR5KCkudmFsKCkpLHJ9LGNjLnByb3RvdHlwZS5oYXNoPWZ1bmN0aW9uKCl7dmFyIG47cmV0dXJuIG51bGw9PT10aGlzLmxhenlIYXNoXyYmKG49IiIsdGhpcy5nZXRQcmlvcml0eSgpLmlzRW1wdHkoKXx8KG4rPSJwcmlvcml0eToiK0J1KHRoaXMuZ2V0UHJpb3JpdHkoKS52YWwoKSkrIjoiKSx0aGlzLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe2U9ZS5oYXNoKCk7IiIhPT1lJiYobis9IjoiK3QrIjoiK2UpfSksdGhpcy5sYXp5SGFzaF89IiI9PT1uPyIiOkxzKG4pKSx0aGlzLmxhenlIYXNoX30sY2MucHJvdG90eXBlLmdldFByZWRlY2Vzc29yQ2hpbGROYW1lPWZ1bmN0aW9uKHQsZSxuKXtuPXRoaXMucmVzb2x2ZUluZGV4XyhuKTtpZihuKXtlPW4uZ2V0UHJlZGVjZXNzb3JLZXkobmV3IFN1KHQsZSkpO3JldHVybiBlP2UubmFtZTpudWxsfXJldHVybiB0aGlzLmNoaWxkcmVuXy5nZXRQcmVkZWNlc3NvcktleSh0KX0sY2MucHJvdG90eXBlLmdldEZpcnN0Q2hpbGROYW1lPWZ1bmN0aW9uKHQpe3Q9dGhpcy5yZXNvbHZlSW5kZXhfKHQpO2lmKHQpe3Q9dC5taW5LZXkoKTtyZXR1cm4gdCYmdC5uYW1lfXJldHVybiB0aGlzLmNoaWxkcmVuXy5taW5LZXkoKX0sY2MucHJvdG90eXBlLmdldEZpcnN0Q2hpbGQ9ZnVuY3Rpb24odCl7dD10aGlzLmdldEZpcnN0Q2hpbGROYW1lKHQpO3JldHVybiB0P25ldyBTdSh0LHRoaXMuY2hpbGRyZW5fLmdldCh0KSk6bnVsbH0sY2MucHJvdG90eXBlLmdldExhc3RDaGlsZE5hbWU9ZnVuY3Rpb24odCl7dD10aGlzLnJlc29sdmVJbmRleF8odCk7aWYodCl7dD10Lm1heEtleSgpO3JldHVybiB0JiZ0Lm5hbWV9cmV0dXJuIHRoaXMuY2hpbGRyZW5fLm1heEtleSgpfSxjYy5wcm90b3R5cGUuZ2V0TGFzdENoaWxkPWZ1bmN0aW9uKHQpe3Q9dGhpcy5nZXRMYXN0Q2hpbGROYW1lKHQpO3JldHVybiB0P25ldyBTdSh0LHRoaXMuY2hpbGRyZW5fLmdldCh0KSk6bnVsbH0sY2MucHJvdG90eXBlLmZvckVhY2hDaGlsZD1mdW5jdGlvbih0LGUpe3Q9dGhpcy5yZXNvbHZlSW5kZXhfKHQpO3JldHVybiB0P3QuaW5vcmRlclRyYXZlcnNhbChmdW5jdGlvbih0KXtyZXR1cm4gZSh0Lm5hbWUsdC5ub2RlKX0pOnRoaXMuY2hpbGRyZW5fLmlub3JkZXJUcmF2ZXJzYWwoZSl9LGNjLnByb3RvdHlwZS5nZXRJdGVyYXRvcj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5nZXRJdGVyYXRvckZyb20odC5taW5Qb3N0KCksdCl9LGNjLnByb3RvdHlwZS5nZXRJdGVyYXRvckZyb209ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLnJlc29sdmVJbmRleF8oZSk7aWYobilyZXR1cm4gbi5nZXRJdGVyYXRvckZyb20odCxmdW5jdGlvbih0KXtyZXR1cm4gdH0pO2Zvcih2YXIgcj10aGlzLmNoaWxkcmVuXy5nZXRJdGVyYXRvckZyb20odC5uYW1lLFN1LldyYXApLGk9ci5wZWVrKCk7bnVsbCE9aSYmZS5jb21wYXJlKGksdCk8MDspci5nZXROZXh0KCksaT1yLnBlZWsoKTtyZXR1cm4gcn0sY2MucHJvdG90eXBlLmdldFJldmVyc2VJdGVyYXRvcj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5nZXRSZXZlcnNlSXRlcmF0b3JGcm9tKHQubWF4UG9zdCgpLHQpfSxjYy5wcm90b3R5cGUuZ2V0UmV2ZXJzZUl0ZXJhdG9yRnJvbT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMucmVzb2x2ZUluZGV4XyhlKTtpZihuKXJldHVybiBuLmdldFJldmVyc2VJdGVyYXRvckZyb20odCxmdW5jdGlvbih0KXtyZXR1cm4gdH0pO2Zvcih2YXIgcj10aGlzLmNoaWxkcmVuXy5nZXRSZXZlcnNlSXRlcmF0b3JGcm9tKHQubmFtZSxTdS5XcmFwKSxpPXIucGVlaygpO251bGwhPWkmJjA8ZS5jb21wYXJlKGksdCk7KXIuZ2V0TmV4dCgpLGk9ci5wZWVrKCk7cmV0dXJuIHJ9LGNjLnByb3RvdHlwZS5jb21wYXJlVG89ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuaXNFbXB0eSgpP3QuaXNFbXB0eSgpPzA6LTE6dC5pc0xlYWZOb2RlKCl8fHQuaXNFbXB0eSgpPzE6dD09PWxjPy0xOjB9LGNjLnByb3RvdHlwZS53aXRoSW5kZXg9ZnVuY3Rpb24odCl7aWYodD09PVB1fHx0aGlzLmluZGV4TWFwXy5oYXNJbmRleCh0KSlyZXR1cm4gdGhpczt0PXRoaXMuaW5kZXhNYXBfLmFkZEluZGV4KHQsdGhpcy5jaGlsZHJlbl8pO3JldHVybiBuZXcgY2ModGhpcy5jaGlsZHJlbl8sdGhpcy5wcmlvcml0eU5vZGVfLHQpfSxjYy5wcm90b3R5cGUuaXNJbmRleGVkPWZ1bmN0aW9uKHQpe3JldHVybiB0PT09UHV8fHRoaXMuaW5kZXhNYXBfLmhhc0luZGV4KHQpfSxjYy5wcm90b3R5cGUuZXF1YWxzPWZ1bmN0aW9uKHQpe2lmKHQ9PT10aGlzKXJldHVybiEwO2lmKHQuaXNMZWFmTm9kZSgpKXJldHVybiExO2lmKHRoaXMuZ2V0UHJpb3JpdHkoKS5lcXVhbHModC5nZXRQcmlvcml0eSgpKSl7aWYodGhpcy5jaGlsZHJlbl8uY291bnQoKSE9PXQuY2hpbGRyZW5fLmNvdW50KCkpcmV0dXJuITE7Zm9yKHZhciBlPXRoaXMuZ2V0SXRlcmF0b3IoSnUpLG49dC5nZXRJdGVyYXRvcihKdSkscj1lLmdldE5leHQoKSxpPW4uZ2V0TmV4dCgpO3ImJmk7KXtpZihyLm5hbWUhPT1pLm5hbWV8fCFyLm5vZGUuZXF1YWxzKGkubm9kZSkpcmV0dXJuITE7cj1lLmdldE5leHQoKSxpPW4uZ2V0TmV4dCgpfXJldHVybiBudWxsPT09ciYmbnVsbD09PWl9cmV0dXJuITF9LGNjLnByb3RvdHlwZS5yZXNvbHZlSW5kZXhfPWZ1bmN0aW9uKHQpe3JldHVybiB0PT09UHU/bnVsbDp0aGlzLmluZGV4TWFwXy5nZXQodC50b1N0cmluZygpKX0sY2MuSU5URUdFUl9SRUdFWFBfPS9eKDB8WzEtOV1cZCopJC8sY2MpO2Z1bmN0aW9uIGNjKHQsZSxuKXt0aGlzLmNoaWxkcmVuXz10LHRoaXMucHJpb3JpdHlOb2RlXz1lLHRoaXMuaW5kZXhNYXBfPW4sdGhpcy5sYXp5SGFzaF89bnVsbCx0aGlzLnByaW9yaXR5Tm9kZV8mJnp1KHRoaXMucHJpb3JpdHlOb2RlXyksdGhpcy5jaGlsZHJlbl8uaXNFbXB0eSgpJiZzbyghdGhpcy5wcmlvcml0eU5vZGVffHx0aGlzLnByaW9yaXR5Tm9kZV8uaXNFbXB0eSgpLCJBbiBlbXB0eSBub2RlIGNhbm5vdCBoYXZlIGEgcHJpb3JpdHkiKX1mdW5jdGlvbiBoYygpe3JldHVybiBhYy5jYWxsKHRoaXMsbmV3IFV1KFZ1KSx1Yy5FTVBUWV9OT0RFLG9jLkRlZmF1bHQpfHx0aGlzfXZhciBsYz1uZXcoWGkoaGMsYWM9dWMpLGhjLnByb3RvdHlwZS5jb21wYXJlVG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT10aGlzPzA6MX0saGMucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbih0KXtyZXR1cm4gdD09PXRoaXN9LGhjLnByb3RvdHlwZS5nZXRQcmlvcml0eT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxoYy5wcm90b3R5cGUuZ2V0SW1tZWRpYXRlQ2hpbGQ9ZnVuY3Rpb24odCl7cmV0dXJuIHVjLkVNUFRZX05PREV9LGhjLnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuITF9LGhjKTtPYmplY3QuZGVmaW5lUHJvcGVydGllcyhTdSx7TUlOOnt2YWx1ZTpuZXcgU3UodGEsdWMuRU1QVFlfTk9ERSl9LE1BWDp7dmFsdWU6bmV3IFN1KGVhLGxjKX19KSxTbi5fX0VNUFRZX05PREU9dWMuRU1QVFlfTk9ERSxRdS5fX2NoaWxkcmVuTm9kZUNvbnN0cnVjdG9yPXVjLEZ1PWxjLEh1PWxjO3ZhciBmYz0hMDtmdW5jdGlvbiBwYyhuLHQpe2lmKHZvaWQgMD09PXQmJih0PW51bGwpLG51bGw9PT1uKXJldHVybiB1Yy5FTVBUWV9OT0RFO2lmKCJvYmplY3QiPT10eXBlb2YgbiYmIi5wcmlvcml0eSJpbiBuJiYodD1uWyIucHJpb3JpdHkiXSksc28obnVsbD09PXR8fCJzdHJpbmciPT10eXBlb2YgdHx8Im51bWJlciI9PXR5cGVvZiB0fHwib2JqZWN0Ij09dHlwZW9mIHQmJiIuc3YiaW4gdCwiSW52YWxpZCBwcmlvcml0eSB0eXBlIGZvdW5kOiAiK3R5cGVvZiB0KSwib2JqZWN0Ij09dHlwZW9mIG4mJiIudmFsdWUiaW4gbiYmbnVsbCE9PW5bIi52YWx1ZSJdJiYobj1uWyIudmFsdWUiXSksIm9iamVjdCIhPXR5cGVvZiBufHwiLnN2ImluIG4pcmV0dXJuIG5ldyBRdShuLHBjKHQpKTtpZihuIGluc3RhbmNlb2YgQXJyYXl8fCFmYyl7dmFyIHI9dWMuRU1QVFlfTk9ERTtyZXR1cm4gaWEobixmdW5jdGlvbih0LGUpe09vKG4sdCkmJiIuIiE9PXQuc3Vic3RyaW5nKDAsMSkmJighKGU9cGMoZSkpLmlzTGVhZk5vZGUoKSYmZS5pc0VtcHR5KCl8fChyPXIudXBkYXRlSW1tZWRpYXRlQ2hpbGQodCxlKSkpfSksci51cGRhdGVQcmlvcml0eShwYyh0KSl9dmFyIGk9W10sbz0hMTtpZihpYShuLGZ1bmN0aW9uKHQsZSl7Ii4iIT09dC5zdWJzdHJpbmcoMCwxKSYmKChlPXBjKGUpKS5pc0VtcHR5KCl8fChvPW98fCFlLmdldFByaW9yaXR5KCkuaXNFbXB0eSgpLGkucHVzaChuZXcgU3UodCxlKSkpKX0pLDA9PT1pLmxlbmd0aClyZXR1cm4gdWMuRU1QVFlfTk9ERTt2YXIgZT1yYyhpLHF1LGZ1bmN0aW9uKHQpe3JldHVybiB0Lm5hbWV9LFZ1KTtpZihvKXt2YXIgcz1yYyhpLEp1LmdldENvbXBhcmUoKSk7cmV0dXJuIG5ldyB1YyhlLHBjKHQpLG5ldyBvYyh7Ii5wcmlvcml0eSI6c30seyIucHJpb3JpdHkiOkp1fSkpfXJldHVybiBuZXcgdWMoZSxwYyh0KSxvYy5EZWZhdWx0KX1XdT1wYzt2YXIgZGMsdmMsZ2M9KFhpKHljLGRjPUcpLHljLnByb3RvdHlwZS5leHRyYWN0Q2hpbGQ9ZnVuY3Rpb24odCl7cmV0dXJuIHQuZ2V0Q2hpbGQodGhpcy5pbmRleFBhdGhfKX0seWMucHJvdG90eXBlLmlzRGVmaW5lZE9uPWZ1bmN0aW9uKHQpe3JldHVybiF0LmdldENoaWxkKHRoaXMuaW5kZXhQYXRoXykuaXNFbXB0eSgpfSx5Yy5wcm90b3R5cGUuY29tcGFyZT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuZXh0cmFjdENoaWxkKHQubm9kZSkscj10aGlzLmV4dHJhY3RDaGlsZChlLm5vZGUpLHI9bi5jb21wYXJlVG8ocik7cmV0dXJuIDA9PT1yP25hKHQubmFtZSxlLm5hbWUpOnJ9LHljLnByb3RvdHlwZS5tYWtlUG9zdD1mdW5jdGlvbih0LGUpe3Q9cGModCksdD11Yy5FTVBUWV9OT0RFLnVwZGF0ZUNoaWxkKHRoaXMuaW5kZXhQYXRoXyx0KTtyZXR1cm4gbmV3IFN1KGUsdCl9LHljLnByb3RvdHlwZS5tYXhQb3N0PWZ1bmN0aW9uKCl7dmFyIHQ9dWMuRU1QVFlfTk9ERS51cGRhdGVDaGlsZCh0aGlzLmluZGV4UGF0aF8sbGMpO3JldHVybiBuZXcgU3UoZWEsdCl9LHljLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBzdSh0aGlzLmluZGV4UGF0aF8sMCkuam9pbigiLyIpfSx5Yyk7ZnVuY3Rpb24geWModCl7dmFyIGU9ZGMuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gZS5pbmRleFBhdGhfPXQsc28oIWN1KHQpJiYiLnByaW9yaXR5IiE9PW51KHQpLCJDYW4ndCBjcmVhdGUgUGF0aEluZGV4IHdpdGggZW1wdHkgcGF0aCBvciAucHJpb3JpdHkga2V5IiksZX1mdW5jdGlvbiBtYygpe3JldHVybiBudWxsIT09dmMmJnZjLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc31mdW5jdGlvbiBiYyh0KXtpZih0PT09IiIraGEpcmV0dXJuIi0iO3ZhciBlPWxhKHQpO2lmKG51bGwhPWUpcmV0dXJuIiIrKGUrMSk7Zm9yKHZhciBuPW5ldyBBcnJheSh0Lmxlbmd0aCkscj0wO3I8bi5sZW5ndGg7cisrKW5bcl09dC5jaGFyQXQocik7aWYobi5sZW5ndGg8Nzg2KXJldHVybiBuLnB1c2goIi0iKSxuLmpvaW4oIiIpO2Zvcih2YXIgaT1uLmxlbmd0aC0xOzA8PWkmJiJ6Ij09PW5baV07KWktLTtyZXR1cm4tMT09PWk/ZWE6KGU9bltpXSxlPUVjLmNoYXJBdChFYy5pbmRleE9mKGUpKzEpLG5baV09ZSxuLnNsaWNlKDAsaSsxKS5qb2luKCIiKSl9ZnVuY3Rpb24gd2ModCl7aWYodD09PSIiK2NhKXJldHVybiB0YTt2YXIgZT1sYSh0KTtpZihudWxsIT1lKXJldHVybiIiKyhlLTEpO2Zvcih2YXIgbj1uZXcgQXJyYXkodC5sZW5ndGgpLHI9MDtyPG4ubGVuZ3RoO3IrKyluW3JdPXQuY2hhckF0KHIpO3JldHVybiItIj09PW5bbi5sZW5ndGgtMV0/MT09PW4ubGVuZ3RoPyIiK2hhOihkZWxldGUgbltuLmxlbmd0aC0xXSxuLmpvaW4oIiIpKToobltuLmxlbmd0aC0xXT1FYy5jaGFyQXQoRWMuaW5kZXhPZihuW24ubGVuZ3RoLTFdKS0xKSxuLmpvaW4oIiIpKyJ6Ii5yZXBlYXQoNzg2LW4ubGVuZ3RoKSl9dmFyIF9jLEljLFRjPW5ldyhYaShtYyx2Yz1HKSxtYy5wcm90b3R5cGUuY29tcGFyZT1mdW5jdGlvbih0LGUpe3ZhciBuPXQubm9kZS5jb21wYXJlVG8oZS5ub2RlKTtyZXR1cm4gMD09PW4/bmEodC5uYW1lLGUubmFtZSk6bn0sbWMucHJvdG90eXBlLmlzRGVmaW5lZE9uPWZ1bmN0aW9uKHQpe3JldHVybiEwfSxtYy5wcm90b3R5cGUuaW5kZXhlZFZhbHVlQ2hhbmdlZD1mdW5jdGlvbih0LGUpe3JldHVybiF0LmVxdWFscyhlKX0sbWMucHJvdG90eXBlLm1pblBvc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gU3UuTUlOfSxtYy5wcm90b3R5cGUubWF4UG9zdD1mdW5jdGlvbigpe3JldHVybiBTdS5NQVh9LG1jLnByb3RvdHlwZS5tYWtlUG9zdD1mdW5jdGlvbih0LGUpe3Q9cGModCk7cmV0dXJuIG5ldyBTdShlLHQpfSxtYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iLnZhbHVlIn0sbWMpLEVjPSItMDEyMzQ1Njc4OUFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaX2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IixTYz0oX2M9MCxJYz1bXSxmdW5jdGlvbih0KXt2YXIgZT10PT09X2M7X2M9dDtmb3IodmFyIG49bmV3IEFycmF5KDgpLHI9NzswPD1yO3ItLSluW3JdPUVjLmNoYXJBdCh0JTY0KSx0PU1hdGguZmxvb3IodC82NCk7c28oMD09PXQsIkNhbm5vdCBwdXNoIGF0IHRpbWUgPT0gMCIpO3ZhciBpPW4uam9pbigiIik7aWYoZSl7Zm9yKHI9MTE7MDw9ciYmNjM9PT1JY1tyXTtyLS0pSWNbcl09MDtJY1tyXSsrfWVsc2UgZm9yKHI9MDtyPDEyO3IrKylJY1tyXT1NYXRoLmZsb29yKDY0Kk1hdGgucmFuZG9tKCkpO2ZvcihyPTA7cjwxMjtyKyspaSs9RWMuY2hhckF0KEljW3JdKTtyZXR1cm4gc28oMjA9PT1pLmxlbmd0aCwibmV4dFB1c2hJZDogTGVuZ3RoIHNob3VsZCBiZSAyMC4iKSxpfSk7ZnVuY3Rpb24gQ2ModCl7cmV0dXJue3R5cGU6InZhbHVlIixzbmFwc2hvdE5vZGU6dH19ZnVuY3Rpb24gTmModCxlKXtyZXR1cm57dHlwZToiY2hpbGRfYWRkZWQiLHNuYXBzaG90Tm9kZTplLGNoaWxkTmFtZTp0fX1mdW5jdGlvbiBBYyh0LGUpe3JldHVybnt0eXBlOiJjaGlsZF9yZW1vdmVkIixzbmFwc2hvdE5vZGU6ZSxjaGlsZE5hbWU6dH19ZnVuY3Rpb24ga2ModCxlLG4pe3JldHVybnt0eXBlOiJjaGlsZF9jaGFuZ2VkIixzbmFwc2hvdE5vZGU6ZSxjaGlsZE5hbWU6dCxvbGRTbmFwOm59fXZhciBSYz0oUGMucHJvdG90eXBlLnVwZGF0ZUNoaWxkPWZ1bmN0aW9uKHQsZSxuLHIsaSxvKXtzbyh0LmlzSW5kZXhlZCh0aGlzLmluZGV4XyksIkEgbm9kZSBtdXN0IGJlIGluZGV4ZWQgaWYgb25seSBhIGNoaWxkIGlzIHVwZGF0ZWQiKTt2YXIgcz10LmdldEltbWVkaWF0ZUNoaWxkKGUpO3JldHVybiBzLmdldENoaWxkKHIpLmVxdWFscyhuLmdldENoaWxkKHIpKSYmcy5pc0VtcHR5KCk9PT1uLmlzRW1wdHkoKT90OihudWxsIT1vJiYobi5pc0VtcHR5KCk/dC5oYXNDaGlsZChlKT9vLnRyYWNrQ2hpbGRDaGFuZ2UoQWMoZSxzKSk6c28odC5pc0xlYWZOb2RlKCksIkEgY2hpbGQgcmVtb3ZlIHdpdGhvdXQgYW4gb2xkIGNoaWxkIG9ubHkgbWFrZXMgc2Vuc2Ugb24gYSBsZWFmIG5vZGUiKTpzLmlzRW1wdHkoKT9vLnRyYWNrQ2hpbGRDaGFuZ2UoTmMoZSxuKSk6by50cmFja0NoaWxkQ2hhbmdlKGtjKGUsbixzKSkpLHQuaXNMZWFmTm9kZSgpJiZuLmlzRW1wdHkoKT90OnQudXBkYXRlSW1tZWRpYXRlQ2hpbGQoZSxuKS53aXRoSW5kZXgodGhpcy5pbmRleF8pKX0sUGMucHJvdG90eXBlLnVwZGF0ZUZ1bGxOb2RlPWZ1bmN0aW9uKHIsbixpKXtyZXR1cm4gbnVsbCE9aSYmKHIuaXNMZWFmTm9kZSgpfHxyLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe24uaGFzQ2hpbGQodCl8fGkudHJhY2tDaGlsZENoYW5nZShBYyh0LGUpKX0pLG4uaXNMZWFmTm9kZSgpfHxuLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe3ZhciBuO3IuaGFzQ2hpbGQodCk/KG49ci5nZXRJbW1lZGlhdGVDaGlsZCh0KSkuZXF1YWxzKGUpfHxpLnRyYWNrQ2hpbGRDaGFuZ2Uoa2ModCxlLG4pKTppLnRyYWNrQ2hpbGRDaGFuZ2UoTmModCxlKSl9KSksbi53aXRoSW5kZXgodGhpcy5pbmRleF8pfSxQYy5wcm90b3R5cGUudXBkYXRlUHJpb3JpdHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5pc0VtcHR5KCk/dWMuRU1QVFlfTk9ERTp0LnVwZGF0ZVByaW9yaXR5KGUpfSxQYy5wcm90b3R5cGUuZmlsdGVyc05vZGVzPWZ1bmN0aW9uKCl7cmV0dXJuITF9LFBjLnByb3RvdHlwZS5nZXRJbmRleGVkRmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LFBjLnByb3RvdHlwZS5nZXRJbmRleD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmluZGV4X30sUGMpO2Z1bmN0aW9uIFBjKHQpe3RoaXMuaW5kZXhfPXR9dmFyIE9jPShEYy5wcm90b3R5cGUuZ2V0U3RhcnRQb3N0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhcnRQb3N0X30sRGMucHJvdG90eXBlLmdldEVuZFBvc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbmRQb3N0X30sRGMucHJvdG90eXBlLm1hdGNoZXM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuaW5kZXhfLmNvbXBhcmUodGhpcy5nZXRTdGFydFBvc3QoKSx0KTw9MCYmdGhpcy5pbmRleF8uY29tcGFyZSh0LHRoaXMuZ2V0RW5kUG9zdCgpKTw9MH0sRGMucHJvdG90eXBlLnVwZGF0ZUNoaWxkPWZ1bmN0aW9uKHQsZSxuLHIsaSxvKXtyZXR1cm4gdGhpcy5tYXRjaGVzKG5ldyBTdShlLG4pKXx8KG49dWMuRU1QVFlfTk9ERSksdGhpcy5pbmRleGVkRmlsdGVyXy51cGRhdGVDaGlsZCh0LGUsbixyLGksbyl9LERjLnByb3RvdHlwZS51cGRhdGVGdWxsTm9kZT1mdW5jdGlvbih0LGUsbil7ZS5pc0xlYWZOb2RlKCkmJihlPXVjLkVNUFRZX05PREUpO3ZhciByPShyPWUud2l0aEluZGV4KHRoaXMuaW5kZXhfKSkudXBkYXRlUHJpb3JpdHkodWMuRU1QVFlfTk9ERSksaT10aGlzO3JldHVybiBlLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe2kubWF0Y2hlcyhuZXcgU3UodCxlKSl8fChyPXIudXBkYXRlSW1tZWRpYXRlQ2hpbGQodCx1Yy5FTVBUWV9OT0RFKSl9KSx0aGlzLmluZGV4ZWRGaWx0ZXJfLnVwZGF0ZUZ1bGxOb2RlKHQscixuKX0sRGMucHJvdG90eXBlLnVwZGF0ZVByaW9yaXR5PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHR9LERjLnByb3RvdHlwZS5maWx0ZXJzTm9kZXM9ZnVuY3Rpb24oKXtyZXR1cm4hMH0sRGMucHJvdG90eXBlLmdldEluZGV4ZWRGaWx0ZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbmRleGVkRmlsdGVyX30sRGMucHJvdG90eXBlLmdldEluZGV4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaW5kZXhffSxEYy5nZXRTdGFydFBvc3RfPWZ1bmN0aW9uKHQpe2lmKHQuaGFzU3RhcnQoKSl7dmFyIGU9dC5nZXRJbmRleFN0YXJ0TmFtZSgpO3JldHVybiB0LmdldEluZGV4KCkubWFrZVBvc3QodC5nZXRJbmRleFN0YXJ0VmFsdWUoKSxlKX1yZXR1cm4gdC5nZXRJbmRleCgpLm1pblBvc3QoKX0sRGMuZ2V0RW5kUG9zdF89ZnVuY3Rpb24odCl7aWYodC5oYXNFbmQoKSl7dmFyIGU9dC5nZXRJbmRleEVuZE5hbWUoKTtyZXR1cm4gdC5nZXRJbmRleCgpLm1ha2VQb3N0KHQuZ2V0SW5kZXhFbmRWYWx1ZSgpLGUpfXJldHVybiB0LmdldEluZGV4KCkubWF4UG9zdCgpfSxEYyk7ZnVuY3Rpb24gRGModCl7dGhpcy5pbmRleGVkRmlsdGVyXz1uZXcgUmModC5nZXRJbmRleCgpKSx0aGlzLmluZGV4Xz10LmdldEluZGV4KCksdGhpcy5zdGFydFBvc3RfPURjLmdldFN0YXJ0UG9zdF8odCksdGhpcy5lbmRQb3N0Xz1EYy5nZXRFbmRQb3N0Xyh0KX12YXIgeGM9KExjLnByb3RvdHlwZS51cGRhdGVDaGlsZD1mdW5jdGlvbih0LGUsbixyLGksbyl7cmV0dXJuIHRoaXMucmFuZ2VkRmlsdGVyXy5tYXRjaGVzKG5ldyBTdShlLG4pKXx8KG49dWMuRU1QVFlfTk9ERSksdC5nZXRJbW1lZGlhdGVDaGlsZChlKS5lcXVhbHMobik/dDp0Lm51bUNoaWxkcmVuKCk8dGhpcy5saW1pdF8/dGhpcy5yYW5nZWRGaWx0ZXJfLmdldEluZGV4ZWRGaWx0ZXIoKS51cGRhdGVDaGlsZCh0LGUsbixyLGksbyk6dGhpcy5mdWxsTGltaXRVcGRhdGVDaGlsZF8odCxlLG4saSxvKX0sTGMucHJvdG90eXBlLnVwZGF0ZUZ1bGxOb2RlPWZ1bmN0aW9uKHQsZSxuKXtpZihlLmlzTGVhZk5vZGUoKXx8ZS5pc0VtcHR5KCkpcj11Yy5FTVBUWV9OT0RFLndpdGhJbmRleCh0aGlzLmluZGV4Xyk7ZWxzZSBpZigyKnRoaXMubGltaXRfPGUubnVtQ2hpbGRyZW4oKSYmZS5pc0luZGV4ZWQodGhpcy5pbmRleF8pKXt2YXIgcj11Yy5FTVBUWV9OT0RFLndpdGhJbmRleCh0aGlzLmluZGV4XyksaT12b2lkIDA7aT10aGlzLnJldmVyc2VfP2UuZ2V0UmV2ZXJzZUl0ZXJhdG9yRnJvbSh0aGlzLnJhbmdlZEZpbHRlcl8uZ2V0RW5kUG9zdCgpLHRoaXMuaW5kZXhfKTplLmdldEl0ZXJhdG9yRnJvbSh0aGlzLnJhbmdlZEZpbHRlcl8uZ2V0U3RhcnRQb3N0KCksdGhpcy5pbmRleF8pO2Zvcih2YXIgbz0wO2kuaGFzTmV4dCgpJiZvPHRoaXMubGltaXRfOyl7dmFyIHM9aS5nZXROZXh0KCk7aWYoISh0aGlzLnJldmVyc2VfP3RoaXMuaW5kZXhfLmNvbXBhcmUodGhpcy5yYW5nZWRGaWx0ZXJfLmdldFN0YXJ0UG9zdCgpLHMpPD0wOnRoaXMuaW5kZXhfLmNvbXBhcmUocyx0aGlzLnJhbmdlZEZpbHRlcl8uZ2V0RW5kUG9zdCgpKTw9MCkpYnJlYWs7cj1yLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKHMubmFtZSxzLm5vZGUpLG8rK319ZWxzZXtyPShyPWUud2l0aEluZGV4KHRoaXMuaW5kZXhfKSkudXBkYXRlUHJpb3JpdHkodWMuRU1QVFlfTk9ERSk7dmFyIGEsdT12b2lkIDAsYz12b2lkIDAsaD12b2lkIDAsaT12b2lkIDA7aD10aGlzLnJldmVyc2VfPyhpPXIuZ2V0UmV2ZXJzZUl0ZXJhdG9yKHRoaXMuaW5kZXhfKSx1PXRoaXMucmFuZ2VkRmlsdGVyXy5nZXRFbmRQb3N0KCksYz10aGlzLnJhbmdlZEZpbHRlcl8uZ2V0U3RhcnRQb3N0KCksYT10aGlzLmluZGV4Xy5nZXRDb21wYXJlKCksZnVuY3Rpb24odCxlKXtyZXR1cm4gYShlLHQpfSk6KGk9ci5nZXRJdGVyYXRvcih0aGlzLmluZGV4XyksdT10aGlzLnJhbmdlZEZpbHRlcl8uZ2V0U3RhcnRQb3N0KCksYz10aGlzLnJhbmdlZEZpbHRlcl8uZ2V0RW5kUG9zdCgpLHRoaXMuaW5kZXhfLmdldENvbXBhcmUoKSk7Zm9yKHZhciBvPTAsbD0hMTtpLmhhc05leHQoKTspe3M9aS5nZXROZXh0KCk7KGw9IWwmJmgodSxzKTw9MD8hMDpsKSYmbzx0aGlzLmxpbWl0XyYmaChzLGMpPD0wP28rKzpyPXIudXBkYXRlSW1tZWRpYXRlQ2hpbGQocy5uYW1lLHVjLkVNUFRZX05PREUpfX1yZXR1cm4gdGhpcy5yYW5nZWRGaWx0ZXJfLmdldEluZGV4ZWRGaWx0ZXIoKS51cGRhdGVGdWxsTm9kZSh0LHIsbil9LExjLnByb3RvdHlwZS51cGRhdGVQcmlvcml0eT1mdW5jdGlvbih0LGUpe3JldHVybiB0fSxMYy5wcm90b3R5cGUuZmlsdGVyc05vZGVzPWZ1bmN0aW9uKCl7cmV0dXJuITB9LExjLnByb3RvdHlwZS5nZXRJbmRleGVkRmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmFuZ2VkRmlsdGVyXy5nZXRJbmRleGVkRmlsdGVyKCl9LExjLnByb3RvdHlwZS5nZXRJbmRleD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmluZGV4X30sTGMucHJvdG90eXBlLmZ1bGxMaW1pdFVwZGF0ZUNoaWxkXz1mdW5jdGlvbih0LGUsbixyLGkpe3ZhciBvLHM7cz10aGlzLnJldmVyc2VfPyhvPXRoaXMuaW5kZXhfLmdldENvbXBhcmUoKSxmdW5jdGlvbih0LGUpe3JldHVybiBvKGUsdCl9KTp0aGlzLmluZGV4Xy5nZXRDb21wYXJlKCk7dmFyIGE9dDtzbyhhLm51bUNoaWxkcmVuKCk9PT10aGlzLmxpbWl0XywiIik7dmFyIHU9bmV3IFN1KGUsbiksYz10aGlzLnJldmVyc2VfP2EuZ2V0Rmlyc3RDaGlsZCh0aGlzLmluZGV4Xyk6YS5nZXRMYXN0Q2hpbGQodGhpcy5pbmRleF8pLGg9dGhpcy5yYW5nZWRGaWx0ZXJfLm1hdGNoZXModSk7aWYoYS5oYXNDaGlsZChlKSl7Zm9yKHZhciBsPWEuZ2V0SW1tZWRpYXRlQ2hpbGQoZSksZj1yLmdldENoaWxkQWZ0ZXJDaGlsZCh0aGlzLmluZGV4XyxjLHRoaXMucmV2ZXJzZV8pO251bGwhPWYmJihmLm5hbWU9PT1lfHxhLmhhc0NoaWxkKGYubmFtZSkpOylmPXIuZ2V0Q2hpbGRBZnRlckNoaWxkKHRoaXMuaW5kZXhfLGYsdGhpcy5yZXZlcnNlXyk7dmFyIHA9bnVsbD09Zj8xOnMoZix1KTtpZihoJiYhbi5pc0VtcHR5KCkmJjA8PXApcmV0dXJuIG51bGwhPWkmJmkudHJhY2tDaGlsZENoYW5nZShrYyhlLG4sbCkpLGEudXBkYXRlSW1tZWRpYXRlQ2hpbGQoZSxuKTtudWxsIT1pJiZpLnRyYWNrQ2hpbGRDaGFuZ2UoQWMoZSxsKSk7bD1hLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKGUsdWMuRU1QVFlfTk9ERSk7cmV0dXJuIG51bGwhPWYmJnRoaXMucmFuZ2VkRmlsdGVyXy5tYXRjaGVzKGYpPyhudWxsIT1pJiZpLnRyYWNrQ2hpbGRDaGFuZ2UoTmMoZi5uYW1lLGYubm9kZSkpLGwudXBkYXRlSW1tZWRpYXRlQ2hpbGQoZi5uYW1lLGYubm9kZSkpOmx9cmV0dXJuIW4uaXNFbXB0eSgpJiZoJiYwPD1zKGMsdSk/KG51bGwhPWkmJihpLnRyYWNrQ2hpbGRDaGFuZ2UoQWMoYy5uYW1lLGMubm9kZSkpLGkudHJhY2tDaGlsZENoYW5nZShOYyhlLG4pKSksYS51cGRhdGVJbW1lZGlhdGVDaGlsZChlLG4pLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKGMubmFtZSx1Yy5FTVBUWV9OT0RFKSk6dH0sTGMpO2Z1bmN0aW9uIExjKHQpe3RoaXMucmFuZ2VkRmlsdGVyXz1uZXcgT2ModCksdGhpcy5pbmRleF89dC5nZXRJbmRleCgpLHRoaXMubGltaXRfPXQuZ2V0TGltaXQoKSx0aGlzLnJldmVyc2VfPSF0LmlzVmlld0Zyb21MZWZ0KCl9dmFyIE1jPShGYy5wcm90b3R5cGUuaGFzU3RhcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zdGFydFNldF99LEZjLnByb3RvdHlwZS5oYXNTdGFydEFmdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhcnRBZnRlclNldF99LEZjLnByb3RvdHlwZS5oYXNFbmRCZWZvcmU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbmRCZWZvcmVTZXRffSxGYy5wcm90b3R5cGUuaXNWaWV3RnJvbUxlZnQ9ZnVuY3Rpb24oKXtyZXR1cm4iIj09PXRoaXMudmlld0Zyb21fP3RoaXMuc3RhcnRTZXRfOiJsIj09PXRoaXMudmlld0Zyb21ffSxGYy5wcm90b3R5cGUuZ2V0SW5kZXhTdGFydFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHNvKHRoaXMuc3RhcnRTZXRfLCJPbmx5IHZhbGlkIGlmIHN0YXJ0IGhhcyBiZWVuIHNldCIpLHRoaXMuaW5kZXhTdGFydFZhbHVlX30sRmMucHJvdG90eXBlLmdldEluZGV4U3RhcnROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHNvKHRoaXMuc3RhcnRTZXRfLCJPbmx5IHZhbGlkIGlmIHN0YXJ0IGhhcyBiZWVuIHNldCIpLHRoaXMuc3RhcnROYW1lU2V0Xz90aGlzLmluZGV4U3RhcnROYW1lXzp0YX0sRmMucHJvdG90eXBlLmhhc0VuZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVuZFNldF99LEZjLnByb3RvdHlwZS5nZXRJbmRleEVuZFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHNvKHRoaXMuZW5kU2V0XywiT25seSB2YWxpZCBpZiBlbmQgaGFzIGJlZW4gc2V0IiksdGhpcy5pbmRleEVuZFZhbHVlX30sRmMucHJvdG90eXBlLmdldEluZGV4RW5kTmFtZT1mdW5jdGlvbigpe3JldHVybiBzbyh0aGlzLmVuZFNldF8sIk9ubHkgdmFsaWQgaWYgZW5kIGhhcyBiZWVuIHNldCIpLHRoaXMuZW5kTmFtZVNldF8/dGhpcy5pbmRleEVuZE5hbWVfOmVhfSxGYy5wcm90b3R5cGUuaGFzTGltaXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5saW1pdFNldF99LEZjLnByb3RvdHlwZS5oYXNBbmNob3JlZExpbWl0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGltaXRTZXRfJiYiIiE9PXRoaXMudmlld0Zyb21ffSxGYy5wcm90b3R5cGUuZ2V0TGltaXQ9ZnVuY3Rpb24oKXtyZXR1cm4gc28odGhpcy5saW1pdFNldF8sIk9ubHkgdmFsaWQgaWYgbGltaXQgaGFzIGJlZW4gc2V0IiksdGhpcy5saW1pdF99LEZjLnByb3RvdHlwZS5nZXRJbmRleD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmluZGV4X30sRmMucHJvdG90eXBlLmxvYWRzQWxsRGF0YT1mdW5jdGlvbigpe3JldHVybiEodGhpcy5zdGFydFNldF98fHRoaXMuZW5kU2V0X3x8dGhpcy5saW1pdFNldF8pfSxGYy5wcm90b3R5cGUuaXNEZWZhdWx0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubG9hZHNBbGxEYXRhKCkmJnRoaXMuaW5kZXhfPT09SnV9LEZjLnByb3RvdHlwZS5jb3B5PWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IEZjO3JldHVybiB0LmxpbWl0U2V0Xz10aGlzLmxpbWl0U2V0Xyx0LmxpbWl0Xz10aGlzLmxpbWl0Xyx0LnN0YXJ0U2V0Xz10aGlzLnN0YXJ0U2V0Xyx0LmluZGV4U3RhcnRWYWx1ZV89dGhpcy5pbmRleFN0YXJ0VmFsdWVfLHQuc3RhcnROYW1lU2V0Xz10aGlzLnN0YXJ0TmFtZVNldF8sdC5pbmRleFN0YXJ0TmFtZV89dGhpcy5pbmRleFN0YXJ0TmFtZV8sdC5lbmRTZXRfPXRoaXMuZW5kU2V0Xyx0LmluZGV4RW5kVmFsdWVfPXRoaXMuaW5kZXhFbmRWYWx1ZV8sdC5lbmROYW1lU2V0Xz10aGlzLmVuZE5hbWVTZXRfLHQuaW5kZXhFbmROYW1lXz10aGlzLmluZGV4RW5kTmFtZV8sdC5pbmRleF89dGhpcy5pbmRleF8sdC52aWV3RnJvbV89dGhpcy52aWV3RnJvbV8sdH0sRmMpO2Z1bmN0aW9uIEZjKCl7dGhpcy5saW1pdFNldF89ITEsdGhpcy5zdGFydFNldF89ITEsdGhpcy5zdGFydE5hbWVTZXRfPSExLHRoaXMuc3RhcnRBZnRlclNldF89ITEsdGhpcy5lbmRTZXRfPSExLHRoaXMuZW5kTmFtZVNldF89ITEsdGhpcy5lbmRCZWZvcmVTZXRfPSExLHRoaXMubGltaXRfPTAsdGhpcy52aWV3RnJvbV89IiIsdGhpcy5pbmRleFN0YXJ0VmFsdWVfPW51bGwsdGhpcy5pbmRleFN0YXJ0TmFtZV89IiIsdGhpcy5pbmRleEVuZFZhbHVlXz1udWxsLHRoaXMuaW5kZXhFbmROYW1lXz0iIix0aGlzLmluZGV4Xz1KdX1mdW5jdGlvbiBVYyh0LGUsbil7dD10LmNvcHkoKTtyZXR1cm4gdC5zdGFydFNldF89ITAsdm9pZCAwPT09ZSYmKGU9bnVsbCksdC5pbmRleFN0YXJ0VmFsdWVfPWUsbnVsbCE9bj8odC5zdGFydE5hbWVTZXRfPSEwLHQuaW5kZXhTdGFydE5hbWVfPW4pOih0LnN0YXJ0TmFtZVNldF89ITEsdC5pbmRleFN0YXJ0TmFtZV89IiIpLHR9ZnVuY3Rpb24gamModCxlLG4pe3Q9dC5jb3B5KCk7cmV0dXJuIHQuZW5kU2V0Xz0hMCx2b2lkIDA9PT1lJiYoZT1udWxsKSx0LmluZGV4RW5kVmFsdWVfPWUsdm9pZCAwIT09bj8odC5lbmROYW1lU2V0Xz0hMCx0LmluZGV4RW5kTmFtZV89bik6KHQuZW5kTmFtZVNldF89ITEsdC5pbmRleEVuZE5hbWVfPSIiKSx0fWZ1bmN0aW9uIHFjKHQsZSl7dD10LmNvcHkoKTtyZXR1cm4gdC5pbmRleF89ZSx0fWZ1bmN0aW9uIFZjKHQpe3ZhciBlLG49e307cmV0dXJuIHQuaXNEZWZhdWx0KCl8fChlPXQuaW5kZXhfPT09SnU/IiRwcmlvcml0eSI6dC5pbmRleF89PT1UYz8iJHZhbHVlIjp0LmluZGV4Xz09PVB1PyIka2V5Ijooc28odC5pbmRleF8gaW5zdGFuY2VvZiBnYywiVW5yZWNvZ25pemVkIGluZGV4IHR5cGUhIiksdC5pbmRleF8udG9TdHJpbmcoKSksbi5vcmRlckJ5PVJvKGUpLHQuc3RhcnRTZXRfJiYobi5zdGFydEF0PVJvKHQuaW5kZXhTdGFydFZhbHVlXyksdC5zdGFydE5hbWVTZXRfJiYobi5zdGFydEF0Kz0iLCIrUm8odC5pbmRleFN0YXJ0TmFtZV8pKSksdC5lbmRTZXRfJiYobi5lbmRBdD1Sbyh0LmluZGV4RW5kVmFsdWVfKSx0LmVuZE5hbWVTZXRfJiYobi5lbmRBdCs9IiwiK1JvKHQuaW5kZXhFbmROYW1lXykpKSx0LmxpbWl0U2V0XyYmKHQuaXNWaWV3RnJvbUxlZnQoKT9uLmxpbWl0VG9GaXJzdD10LmxpbWl0XzpuLmxpbWl0VG9MYXN0PXQubGltaXRfKSksbn12YXIgQmMsS2M9KFhpKFdjLEJjPXopLFdjLnByb3RvdHlwZS5yZXBvcnRTdGF0cz1mdW5jdGlvbih0KXt0aHJvdyBuZXcgRXJyb3IoIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuIil9LFdjLmdldExpc3RlbklkXz1mdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDAhPT1lPyJ0YWckIitlOihzbyh0LmdldFF1ZXJ5UGFyYW1zKCkuaXNEZWZhdWx0KCksInNob3VsZCBoYXZlIGEgdGFnIGlmIGl0J3Mgbm90IGEgZGVmYXVsdCBxdWVyeS4iKSx0LnBhdGgudG9TdHJpbmcoKSl9LFdjLnByb3RvdHlwZS5saXN0ZW49ZnVuY3Rpb24odCxlLG4scil7dmFyIGk9dGhpcyxvPXQucGF0aC50b1N0cmluZygpO3RoaXMubG9nXygiTGlzdGVuIGNhbGxlZCBmb3IgIitvKyIgIit0LnF1ZXJ5SWRlbnRpZmllcigpKTt2YXIgcz1XYy5nZXRMaXN0ZW5JZF8odCxuKSxhPXt9O3RoaXMubGlzdGVuc19bc109YTt0PVZjKHQuZ2V0UXVlcnlQYXJhbXMoKSk7dGhpcy5yZXN0UmVxdWVzdF8obysiLmpzb24iLHQsZnVuY3Rpb24odCxlKXtudWxsPT09KHQ9NDA0PT09dD9lPW51bGw6dCkmJmkub25EYXRhVXBkYXRlXyhvLGUsITEsbiksRG8oaS5saXN0ZW5zXyxzKT09PWEmJnIodD80MDE9PT10PyJwZXJtaXNzaW9uX2RlbmllZCI6InJlc3RfZXJyb3I6Iit0OiJvayIsbnVsbCl9KX0sV2MucHJvdG90eXBlLnVubGlzdGVuPWZ1bmN0aW9uKHQsZSl7ZT1XYy5nZXRMaXN0ZW5JZF8odCxlKTtkZWxldGUgdGhpcy5saXN0ZW5zX1tlXX0sV2MucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXt2YXIgbj10aGlzLGU9VmModC5nZXRRdWVyeVBhcmFtcygpKSxyPXQucGF0aC50b1N0cmluZygpLGk9bmV3IGxvO3JldHVybiB0aGlzLnJlc3RSZXF1ZXN0XyhyKyIuanNvbiIsZSxmdW5jdGlvbih0LGUpe251bGw9PT0odD00MDQ9PT10P2U9bnVsbDp0KT8obi5vbkRhdGFVcGRhdGVfKHIsZSwhMSxudWxsKSxpLnJlc29sdmUoZSkpOmkucmVqZWN0KG5ldyBFcnJvcihlKSl9KSxpLnByb21pc2V9LFdjLnByb3RvdHlwZS5yZWZyZXNoQXV0aFRva2VuPWZ1bmN0aW9uKHQpe30sV2MucHJvdG90eXBlLnJlc3RSZXF1ZXN0Xz1mdW5jdGlvbihyLGksbyl7dmFyIHM9dGhpczsoaT12b2lkIDA9PT1pP3t9OmkpLmZvcm1hdD0iZXhwb3J0Iix0aGlzLmF1dGhUb2tlblByb3ZpZGVyXy5nZXRUb2tlbighMSkudGhlbihmdW5jdGlvbih0KXt0PXQmJnQuYWNjZXNzVG9rZW47dCYmKGkuYXV0aD10KTt2YXIgZT0ocy5yZXBvSW5mb18uc2VjdXJlPyJodHRwczovLyI6Imh0dHA6Ly8iKStzLnJlcG9JbmZvXy5ob3N0K3IrIj9ucz0iK3MucmVwb0luZm9fLm5hbWVzcGFjZStNbyhpKTtzLmxvZ18oIlNlbmRpbmcgUkVTVCByZXF1ZXN0IGZvciAiK2UpO3ZhciBuPW5ldyBYTUxIdHRwUmVxdWVzdDtuLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe2lmKG8mJjQ9PT1uLnJlYWR5U3RhdGUpe3MubG9nXygiUkVTVCBSZXNwb25zZSBmb3IgIitlKyIgcmVjZWl2ZWQuIHN0YXR1czoiLG4uc3RhdHVzLCJyZXNwb25zZToiLG4ucmVzcG9uc2VUZXh0KTt2YXIgdD1udWxsO2lmKDIwMDw9bi5zdGF0dXMmJm4uc3RhdHVzPDMwMCl7dHJ5e3Q9a28obi5yZXNwb25zZVRleHQpfWNhdGNoKHQpe1pzKCJGYWlsZWQgdG8gcGFyc2UgSlNPTiByZXNwb25zZSBmb3IgIitlKyI6ICIrbi5yZXNwb25zZVRleHQpfW8obnVsbCx0KX1lbHNlIDQwMSE9PW4uc3RhdHVzJiY0MDQhPT1uLnN0YXR1cyYmWnMoIkdvdCB1bnN1Y2Nlc3NmdWwgUkVTVCByZXNwb25zZSBmb3IgIitlKyIgU3RhdHVzOiAiK24uc3RhdHVzKSxvKG4uc3RhdHVzKTtvPW51bGx9fSxuLm9wZW4oIkdFVCIsZSwhMCksbi5zZW5kKCl9KX0sV2MpO2Z1bmN0aW9uIFdjKHQsZSxuKXt2YXIgcj1CYy5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiByLnJlcG9JbmZvXz10LHIub25EYXRhVXBkYXRlXz1lLHIuYXV0aFRva2VuUHJvdmlkZXJfPW4sci5sb2dfPUpzKCJwOnJlc3Q6Iiksci5saXN0ZW5zXz17fSxyfXZhciBIYz0oR2MucHJvdG90eXBlLmdldE5vZGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMucm9vdE5vZGVfLmdldENoaWxkKHQpfSxHYy5wcm90b3R5cGUudXBkYXRlU25hcHNob3Q9ZnVuY3Rpb24odCxlKXt0aGlzLnJvb3ROb2RlXz10aGlzLnJvb3ROb2RlXy51cGRhdGVDaGlsZCh0LGUpfSxHYyk7ZnVuY3Rpb24gR2MoKXt0aGlzLnJvb3ROb2RlXz11Yy5FTVBUWV9OT0RFfWZ1bmN0aW9uIHpjKCl7cmV0dXJue3ZhbHVlOm51bGwsY2hpbGRyZW46bmV3IE1hcH19ZnVuY3Rpb24gUWModCxlLG4pe3ZhciByO2N1KGUpPyh0LnZhbHVlPW4sdC5jaGlsZHJlbi5jbGVhcigpKTpudWxsIT09dC52YWx1ZT90LnZhbHVlPXQudmFsdWUudXBkYXRlQ2hpbGQoZSxuKToocj1udShlKSx0LmNoaWxkcmVuLmhhcyhyKXx8dC5jaGlsZHJlbi5zZXQocix6YygpKSxRYyh0LmNoaWxkcmVuLmdldChyKSxlPWl1KGUpLG4pKX1mdW5jdGlvbiBZYyh0LG4scil7dmFyIGk7bnVsbCE9PXQudmFsdWU/cihuLHQudmFsdWUpOihpPWZ1bmN0aW9uKHQsZSl7WWMoZSxuZXcgWmEobi50b1N0cmluZygpKyIvIit0KSxyKX0sdC5jaGlsZHJlbi5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7aShlLHQpfSkpfXZhciBYYz0oSmMucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe3ZhciB0PXRoaXMuY29sbGVjdGlvbl8uZ2V0KCksbj1KaSh7fSx0KTtyZXR1cm4gdGhpcy5sYXN0XyYmaWEodGhpcy5sYXN0XyxmdW5jdGlvbih0LGUpe25bdF09blt0XS1lfSksdGhpcy5sYXN0Xz10LG59LEpjKTtmdW5jdGlvbiBKYyh0KXt0aGlzLmNvbGxlY3Rpb25fPXQsdGhpcy5sYXN0Xz1udWxsfXZhciAkYyxaYz0odGgucHJvdG90eXBlLnJlcG9ydFN0YXRzXz1mdW5jdGlvbigpe3ZhciBuPXRoaXMsdD10aGlzLnN0YXRzTGlzdGVuZXJfLmdldCgpLHI9e30saT0hMTtpYSh0LGZ1bmN0aW9uKHQsZSl7MDxlJiZPbyhuLnN0YXRzVG9SZXBvcnRfLHQpJiYoclt0XT1lLGk9ITApfSksaSYmdGhpcy5zZXJ2ZXJfLnJlcG9ydFN0YXRzKHIpLHNhKHRoaXMucmVwb3J0U3RhdHNfLmJpbmQodGhpcyksTWF0aC5mbG9vcigyKk1hdGgucmFuZG9tKCkqM2U1KSl9LHRoKTtmdW5jdGlvbiB0aCh0LGUpe3RoaXMuc2VydmVyXz1lLHRoaXMuc3RhdHNUb1JlcG9ydF89e30sdGhpcy5zdGF0c0xpc3RlbmVyXz1uZXcgWGModCk7dD0xZTQrMmU0Kk1hdGgucmFuZG9tKCk7c2EodGhpcy5yZXBvcnRTdGF0c18uYmluZCh0aGlzKSxNYXRoLmZsb29yKHQpKX1mdW5jdGlvbiBlaCgpe3JldHVybntmcm9tVXNlcjohMCxmcm9tU2VydmVyOiExLHF1ZXJ5SWQ6bnVsbCx0YWdnZWQ6ITF9fWZ1bmN0aW9uIG5oKCl7cmV0dXJue2Zyb21Vc2VyOiExLGZyb21TZXJ2ZXI6ITAscXVlcnlJZDpudWxsLHRhZ2dlZDohMX19ZnVuY3Rpb24gcmgodCl7cmV0dXJue2Zyb21Vc2VyOiExLGZyb21TZXJ2ZXI6ITAscXVlcnlJZDp0LHRhZ2dlZDohMH19KEdhPSRjPSRjfHx7fSlbR2EuT1ZFUldSSVRFPTBdPSJPVkVSV1JJVEUiLEdhW0dhLk1FUkdFPTFdPSJNRVJHRSIsR2FbR2EuQUNLX1VTRVJfV1JJVEU9Ml09IkFDS19VU0VSX1dSSVRFIixHYVtHYS5MSVNURU5fQ09NUExFVEU9M109IkxJU1RFTl9DT01QTEVURSI7dmFyIGloPShvaC5wcm90b3R5cGUub3BlcmF0aW9uRm9yQ2hpbGQ9ZnVuY3Rpb24odCl7aWYoY3UodGhpcy5wYXRoKSl7aWYobnVsbCE9dGhpcy5hZmZlY3RlZFRyZWUudmFsdWUpcmV0dXJuIHNvKHRoaXMuYWZmZWN0ZWRUcmVlLmNoaWxkcmVuLmlzRW1wdHkoKSwiYWZmZWN0ZWRUcmVlIHNob3VsZCBub3QgaGF2ZSBvdmVybGFwcGluZyBhZmZlY3RlZCBwYXRocy4iKSx0aGlzO3ZhciBlPXRoaXMuYWZmZWN0ZWRUcmVlLnN1YnRyZWUobmV3IFphKHQpKTtyZXR1cm4gbmV3IG9oKGV1KCksZSx0aGlzLnJldmVydCl9cmV0dXJuIHNvKG51KHRoaXMucGF0aCk9PT10LCJvcGVyYXRpb25Gb3JDaGlsZCBjYWxsZWQgZm9yIHVucmVsYXRlZCBjaGlsZC4iKSxuZXcgb2goaXUodGhpcy5wYXRoKSx0aGlzLmFmZmVjdGVkVHJlZSx0aGlzLnJldmVydCl9LG9oKTtmdW5jdGlvbiBvaCh0LGUsbil7dGhpcy5wYXRoPXQsdGhpcy5hZmZlY3RlZFRyZWU9ZSx0aGlzLnJldmVydD1uLHRoaXMudHlwZT0kYy5BQ0tfVVNFUl9XUklURSx0aGlzLnNvdXJjZT1laCgpfXZhciBzaD0oYWgucHJvdG90eXBlLm9wZXJhdGlvbkZvckNoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiBjdSh0aGlzLnBhdGgpP25ldyBhaCh0aGlzLnNvdXJjZSxldSgpKTpuZXcgYWgodGhpcy5zb3VyY2UsaXUodGhpcy5wYXRoKSl9LGFoKTtmdW5jdGlvbiBhaCh0LGUpe3RoaXMuc291cmNlPXQsdGhpcy5wYXRoPWUsdGhpcy50eXBlPSRjLkxJU1RFTl9DT01QTEVURX12YXIgdWg9KGNoLnByb3RvdHlwZS5vcGVyYXRpb25Gb3JDaGlsZD1mdW5jdGlvbih0KXtyZXR1cm4gY3UodGhpcy5wYXRoKT9uZXcgY2godGhpcy5zb3VyY2UsZXUoKSx0aGlzLnNuYXAuZ2V0SW1tZWRpYXRlQ2hpbGQodCkpOm5ldyBjaCh0aGlzLnNvdXJjZSxpdSh0aGlzLnBhdGgpLHRoaXMuc25hcCl9LGNoKTtmdW5jdGlvbiBjaCh0LGUsbil7dGhpcy5zb3VyY2U9dCx0aGlzLnBhdGg9ZSx0aGlzLnNuYXA9bix0aGlzLnR5cGU9JGMuT1ZFUldSSVRFfXZhciBoaD0obGgucHJvdG90eXBlLm9wZXJhdGlvbkZvckNoaWxkPWZ1bmN0aW9uKHQpe2lmKGN1KHRoaXMucGF0aCkpe3ZhciBlPXRoaXMuY2hpbGRyZW4uc3VidHJlZShuZXcgWmEodCkpO3JldHVybiBlLmlzRW1wdHkoKT9udWxsOmUudmFsdWU/bmV3IHVoKHRoaXMuc291cmNlLGV1KCksZS52YWx1ZSk6bmV3IGxoKHRoaXMuc291cmNlLGV1KCksZSl9cmV0dXJuIHNvKG51KHRoaXMucGF0aCk9PT10LCJDYW4ndCBnZXQgYSBtZXJnZSBmb3IgYSBjaGlsZCBub3Qgb24gdGhlIHBhdGggb2YgdGhlIG9wZXJhdGlvbiIpLG5ldyBsaCh0aGlzLnNvdXJjZSxpdSh0aGlzLnBhdGgpLHRoaXMuY2hpbGRyZW4pfSxsaC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iT3BlcmF0aW9uKCIrdGhpcy5wYXRoKyI6ICIrdGhpcy5zb3VyY2UudG9TdHJpbmcoKSsiIG1lcmdlOiAiK3RoaXMuY2hpbGRyZW4udG9TdHJpbmcoKSsiKSJ9LGxoKTtmdW5jdGlvbiBsaCh0LGUsbil7dGhpcy5zb3VyY2U9dCx0aGlzLnBhdGg9ZSx0aGlzLmNoaWxkcmVuPW4sdGhpcy50eXBlPSRjLk1FUkdFfXZhciBmaD0ocGgucHJvdG90eXBlLmlzRnVsbHlJbml0aWFsaXplZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bGx5SW5pdGlhbGl6ZWRffSxwaC5wcm90b3R5cGUuaXNGaWx0ZXJlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZpbHRlcmVkX30scGgucHJvdG90eXBlLmlzQ29tcGxldGVGb3JQYXRoPWZ1bmN0aW9uKHQpe2lmKGN1KHQpKXJldHVybiB0aGlzLmlzRnVsbHlJbml0aWFsaXplZCgpJiYhdGhpcy5maWx0ZXJlZF87dD1udSh0KTtyZXR1cm4gdGhpcy5pc0NvbXBsZXRlRm9yQ2hpbGQodCl9LHBoLnByb3RvdHlwZS5pc0NvbXBsZXRlRm9yQ2hpbGQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuaXNGdWxseUluaXRpYWxpemVkKCkmJiF0aGlzLmZpbHRlcmVkX3x8dGhpcy5ub2RlXy5oYXNDaGlsZCh0KX0scGgucHJvdG90eXBlLmdldE5vZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ub2RlX30scGgpO2Z1bmN0aW9uIHBoKHQsZSxuKXt0aGlzLm5vZGVfPXQsdGhpcy5mdWxseUluaXRpYWxpemVkXz1lLHRoaXMuZmlsdGVyZWRfPW59dmFyIGRoLHZoPWZ1bmN0aW9uKHQpe3RoaXMucXVlcnlfPXQsdGhpcy5pbmRleF89dGhpcy5xdWVyeV8uZ2V0UXVlcnlQYXJhbXMoKS5nZXRJbmRleCgpfTtmdW5jdGlvbiBnaChuLHQsZSxyKXt2YXIgaT1bXSxvPVtdO3JldHVybiB0LmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU7ImNoaWxkX2NoYW5nZWQiPT09dC50eXBlJiZuLmluZGV4Xy5pbmRleGVkVmFsdWVDaGFuZ2VkKHQub2xkU25hcCx0LnNuYXBzaG90Tm9kZSkmJm8ucHVzaCgoZT10LmNoaWxkTmFtZSx7dHlwZToiY2hpbGRfbW92ZWQiLHNuYXBzaG90Tm9kZTp0LnNuYXBzaG90Tm9kZSxjaGlsZE5hbWU6ZX0pKX0pLHloKG4saSwiY2hpbGRfcmVtb3ZlZCIsdCxyLGUpLHloKG4saSwiY2hpbGRfYWRkZWQiLHQscixlKSx5aChuLGksImNoaWxkX21vdmVkIixvLHIsZSkseWgobixpLCJjaGlsZF9jaGFuZ2VkIix0LHIsZSkseWgobixpLCJ2YWx1ZSIsdCxyLGUpLGl9ZnVuY3Rpb24geWgobyxzLGUsdCxhLHUpe3Q9dC5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHQudHlwZT09PWV9KTt0LnNvcnQoZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4pe2lmKG51bGw9PWUuY2hpbGROYW1lfHxudWxsPT1uLmNoaWxkTmFtZSl0aHJvdyBhbygiU2hvdWxkIG9ubHkgY29tcGFyZSBjaGlsZF8gZXZlbnRzLiIpO2U9bmV3IFN1KGUuY2hpbGROYW1lLGUuc25hcHNob3ROb2RlKSxuPW5ldyBTdShuLmNoaWxkTmFtZSxuLnNuYXBzaG90Tm9kZSk7cmV0dXJuIHQuaW5kZXhfLmNvbXBhcmUoZSxuKX0obyx0LGUpfSksdC5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG4scixpPSh0PW8scj11LCJ2YWx1ZSI9PT0obj1lKS50eXBlfHwiY2hpbGRfcmVtb3ZlZCI9PT1uLnR5cGV8fChuLnByZXZOYW1lPXIuZ2V0UHJlZGVjZXNzb3JDaGlsZE5hbWUobi5jaGlsZE5hbWUsbi5zbmFwc2hvdE5vZGUsdC5pbmRleF8pKSxuKTthLmZvckVhY2goZnVuY3Rpb24odCl7dC5yZXNwb25kc1RvKGUudHlwZSkmJnMucHVzaCh0LmNyZWF0ZUV2ZW50KGksby5xdWVyeV8pKX0pfSl9ZnVuY3Rpb24gbWgodCxlKXtyZXR1cm57ZXZlbnRDYWNoZTp0LHNlcnZlckNhY2hlOmV9fWZ1bmN0aW9uIGJoKHQsZSxuLHIpe3JldHVybiBtaChuZXcgZmgoZSxuLHIpLHQuc2VydmVyQ2FjaGUpfWZ1bmN0aW9uIHdoKHQsZSxuLHIpe3JldHVybiBtaCh0LmV2ZW50Q2FjaGUsbmV3IGZoKGUsbixyKSl9ZnVuY3Rpb24gX2godCl7cmV0dXJuIHQuZXZlbnRDYWNoZS5pc0Z1bGx5SW5pdGlhbGl6ZWQoKT90LmV2ZW50Q2FjaGUuZ2V0Tm9kZSgpOm51bGx9ZnVuY3Rpb24gSWgodCl7cmV0dXJuIHQuc2VydmVyQ2FjaGUuaXNGdWxseUluaXRpYWxpemVkKCk/dC5zZXJ2ZXJDYWNoZS5nZXROb2RlKCk6bnVsbH12YXIgVGg9KEVoLmZyb21PYmplY3Q9ZnVuY3Rpb24odCl7dmFyIG49bmV3IEVoKG51bGwpO3JldHVybiBpYSh0LGZ1bmN0aW9uKHQsZSl7bj1uLnNldChuZXcgWmEodCksZSl9KSxufSxFaC5wcm90b3R5cGUuaXNFbXB0eT1mdW5jdGlvbigpe3JldHVybiBudWxsPT09dGhpcy52YWx1ZSYmdGhpcy5jaGlsZHJlbi5pc0VtcHR5KCl9LEVoLnByb3RvdHlwZS5maW5kUm9vdE1vc3RNYXRjaGluZ1BhdGhBbmRWYWx1ZT1mdW5jdGlvbih0LGUpe2lmKG51bGwhPXRoaXMudmFsdWUmJmUodGhpcy52YWx1ZSkpcmV0dXJue3BhdGg6ZXUoKSx2YWx1ZTp0aGlzLnZhbHVlfTtpZihjdSh0KSlyZXR1cm4gbnVsbDt2YXIgbj1udSh0KSxyPXRoaXMuY2hpbGRyZW4uZ2V0KG4pO2lmKG51bGw9PT1yKXJldHVybiBudWxsO2U9ci5maW5kUm9vdE1vc3RNYXRjaGluZ1BhdGhBbmRWYWx1ZShpdSh0KSxlKTtyZXR1cm4gbnVsbD09ZT9udWxsOntwYXRoOnV1KG5ldyBaYShuKSxlLnBhdGgpLHZhbHVlOmUudmFsdWV9fSxFaC5wcm90b3R5cGUuZmluZFJvb3RNb3N0VmFsdWVBbmRQYXRoPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmZpbmRSb290TW9zdE1hdGNoaW5nUGF0aEFuZFZhbHVlKHQsZnVuY3Rpb24oKXtyZXR1cm4hMH0pfSxFaC5wcm90b3R5cGUuc3VidHJlZT1mdW5jdGlvbih0KXtpZihjdSh0KSlyZXR1cm4gdGhpczt2YXIgZT1udSh0KSxlPXRoaXMuY2hpbGRyZW4uZ2V0KGUpO3JldHVybiBudWxsIT09ZT9lLnN1YnRyZWUoaXUodCkpOm5ldyBFaChudWxsKX0sRWgucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LGUpe2lmKGN1KHQpKXJldHVybiBuZXcgRWgoZSx0aGlzLmNoaWxkcmVuKTt2YXIgbj1udSh0KSxlPSh0aGlzLmNoaWxkcmVuLmdldChuKXx8bmV3IEVoKG51bGwpKS5zZXQoaXUodCksZSksZT10aGlzLmNoaWxkcmVuLmluc2VydChuLGUpO3JldHVybiBuZXcgRWgodGhpcy52YWx1ZSxlKX0sRWgucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0KXtpZihjdSh0KSlyZXR1cm4gdGhpcy5jaGlsZHJlbi5pc0VtcHR5KCk/bmV3IEVoKG51bGwpOm5ldyBFaChudWxsLHRoaXMuY2hpbGRyZW4pO3ZhciBlPW51KHQpLG49dGhpcy5jaGlsZHJlbi5nZXQoZSk7aWYobil7bj1uLnJlbW92ZShpdSh0KSksdD12b2lkIDAsdD1uLmlzRW1wdHkoKT90aGlzLmNoaWxkcmVuLnJlbW92ZShlKTp0aGlzLmNoaWxkcmVuLmluc2VydChlLG4pO3JldHVybiBudWxsPT09dGhpcy52YWx1ZSYmdC5pc0VtcHR5KCk/bmV3IEVoKG51bGwpOm5ldyBFaCh0aGlzLnZhbHVlLHQpfXJldHVybiB0aGlzfSxFaC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe2lmKGN1KHQpKXJldHVybiB0aGlzLnZhbHVlO3ZhciBlPW51KHQpLGU9dGhpcy5jaGlsZHJlbi5nZXQoZSk7cmV0dXJuIGU/ZS5nZXQoaXUodCkpOm51bGx9LEVoLnByb3RvdHlwZS5zZXRUcmVlPWZ1bmN0aW9uKHQsZSl7aWYoY3UodCkpcmV0dXJuIGU7dmFyIG49bnUodCksdD0odGhpcy5jaGlsZHJlbi5nZXQobil8fG5ldyBFaChudWxsKSkuc2V0VHJlZShpdSh0KSxlKSxlPXZvaWQgMCxlPXQuaXNFbXB0eSgpP3RoaXMuY2hpbGRyZW4ucmVtb3ZlKG4pOnRoaXMuY2hpbGRyZW4uaW5zZXJ0KG4sdCk7cmV0dXJuIG5ldyBFaCh0aGlzLnZhbHVlLGUpfSxFaC5wcm90b3R5cGUuZm9sZD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5mb2xkXyhldSgpLHQpfSxFaC5wcm90b3R5cGUuZm9sZF89ZnVuY3Rpb24obixyKXt2YXIgaT17fTtyZXR1cm4gdGhpcy5jaGlsZHJlbi5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7aVt0XT1lLmZvbGRfKHV1KG4sdCkscil9KSxyKG4sdGhpcy52YWx1ZSxpKX0sRWgucHJvdG90eXBlLmZpbmRPblBhdGg9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5maW5kT25QYXRoXyh0LGV1KCksZSl9LEVoLnByb3RvdHlwZS5maW5kT25QYXRoXz1mdW5jdGlvbih0LGUsbil7dmFyIHI9ISF0aGlzLnZhbHVlJiZuKGUsdGhpcy52YWx1ZSk7aWYocilyZXR1cm4gcjtpZihjdSh0KSlyZXR1cm4gbnVsbDt2YXIgaT1udSh0KSxyPXRoaXMuY2hpbGRyZW4uZ2V0KGkpO3JldHVybiByP3IuZmluZE9uUGF0aF8oaXUodCksdXUoZSxpKSxuKTpudWxsfSxFaC5wcm90b3R5cGUuZm9yZWFjaE9uUGF0aD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLmZvcmVhY2hPblBhdGhfKHQsZXUoKSxlKX0sRWgucHJvdG90eXBlLmZvcmVhY2hPblBhdGhfPWZ1bmN0aW9uKHQsZSxuKXtpZihjdSh0KSlyZXR1cm4gdGhpczt0aGlzLnZhbHVlJiZuKGUsdGhpcy52YWx1ZSk7dmFyIHI9bnUodCksaT10aGlzLmNoaWxkcmVuLmdldChyKTtyZXR1cm4gaT9pLmZvcmVhY2hPblBhdGhfKGl1KHQpLHV1KGUsciksbik6bmV3IEVoKG51bGwpfSxFaC5wcm90b3R5cGUuZm9yZWFjaD1mdW5jdGlvbih0KXt0aGlzLmZvcmVhY2hfKGV1KCksdCl9LEVoLnByb3RvdHlwZS5mb3JlYWNoXz1mdW5jdGlvbihuLHIpe3RoaXMuY2hpbGRyZW4uaW5vcmRlclRyYXZlcnNhbChmdW5jdGlvbih0LGUpe2UuZm9yZWFjaF8odXUobix0KSxyKX0pLHRoaXMudmFsdWUmJnIobix0aGlzLnZhbHVlKX0sRWgucHJvdG90eXBlLmZvcmVhY2hDaGlsZD1mdW5jdGlvbihuKXt0aGlzLmNoaWxkcmVuLmlub3JkZXJUcmF2ZXJzYWwoZnVuY3Rpb24odCxlKXtlLnZhbHVlJiZuKHQsZS52YWx1ZSl9KX0sRWgpO2Z1bmN0aW9uIEVoKHQsZSl7dm9pZCAwPT09ZSYmKGU9ZGg9ZGh8fG5ldyBVdShqcykpLHRoaXMudmFsdWU9dCx0aGlzLmNoaWxkcmVuPWV9dmFyIFNoPShDaC5lbXB0eT1mdW5jdGlvbigpe3JldHVybiBuZXcgQ2gobmV3IFRoKG51bGwpKX0sQ2gpO2Z1bmN0aW9uIENoKHQpe3RoaXMud3JpdGVUcmVlXz10fWZ1bmN0aW9uIE5oKHQsZSxuKXtpZihjdShlKSlyZXR1cm4gbmV3IFNoKG5ldyBUaChuKSk7dmFyIHI9dC53cml0ZVRyZWVfLmZpbmRSb290TW9zdFZhbHVlQW5kUGF0aChlKTtpZihudWxsIT1yKXt2YXIgaT1yLnBhdGgsbz1yLnZhbHVlLHI9aHUoaSxlKSxvPW8udXBkYXRlQ2hpbGQocixuKTtyZXR1cm4gbmV3IFNoKHQud3JpdGVUcmVlXy5zZXQoaSxvKSl9bj1uZXcgVGgobiksbj10LndyaXRlVHJlZV8uc2V0VHJlZShlLG4pO3JldHVybiBuZXcgU2gobil9ZnVuY3Rpb24gQWgodCxuLGUpe3ZhciByPXQ7cmV0dXJuIGlhKGUsZnVuY3Rpb24odCxlKXtyPU5oKHIsdXUobix0KSxlKX0pLHJ9ZnVuY3Rpb24ga2godCxlKXtpZihjdShlKSlyZXR1cm4gU2guZW1wdHkoKTtlPXQud3JpdGVUcmVlXy5zZXRUcmVlKGUsbmV3IFRoKG51bGwpKTtyZXR1cm4gbmV3IFNoKGUpfWZ1bmN0aW9uIFJoKHQsZSl7cmV0dXJuIG51bGwhPVBoKHQsZSl9ZnVuY3Rpb24gUGgodCxlKXt2YXIgbj10LndyaXRlVHJlZV8uZmluZFJvb3RNb3N0VmFsdWVBbmRQYXRoKGUpO3JldHVybiBudWxsIT1uP3Qud3JpdGVUcmVlXy5nZXQobi5wYXRoKS5nZXRDaGlsZChodShuLnBhdGgsZSkpOm51bGx9ZnVuY3Rpb24gT2godCl7dmFyIG49W10sZT10LndyaXRlVHJlZV8udmFsdWU7cmV0dXJuIG51bGwhPWU/ZS5pc0xlYWZOb2RlKCl8fGUuZm9yRWFjaENoaWxkKEp1LGZ1bmN0aW9uKHQsZSl7bi5wdXNoKG5ldyBTdSh0LGUpKX0pOnQud3JpdGVUcmVlXy5jaGlsZHJlbi5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7bnVsbCE9ZS52YWx1ZSYmbi5wdXNoKG5ldyBTdSh0LGUudmFsdWUpKX0pLG59ZnVuY3Rpb24gRGgodCxlKXtpZihjdShlKSlyZXR1cm4gdDt2YXIgbj1QaCh0LGUpO3JldHVybiBuZXcgU2gobnVsbCE9bj9uZXcgVGgobik6dC53cml0ZVRyZWVfLnN1YnRyZWUoZSkpfWZ1bmN0aW9uIHhoKHQpe3JldHVybiB0LndyaXRlVHJlZV8uaXNFbXB0eSgpfWZ1bmN0aW9uIExoKHQsZSl7cmV0dXJuIGZ1bmN0aW9uIG4ocix0LGkpe3tpZihudWxsIT10LnZhbHVlKXJldHVybiBpLnVwZGF0ZUNoaWxkKHIsdC52YWx1ZSk7dmFyIG89bnVsbDtyZXR1cm4gdC5jaGlsZHJlbi5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7Ii5wcmlvcml0eSI9PT10PyhzbyhudWxsIT09ZS52YWx1ZSwiUHJpb3JpdHkgd3JpdGVzIG11c3QgYWx3YXlzIGJlIGxlYWYgbm9kZXMiKSxvPWUudmFsdWUpOmk9bih1dShyLHQpLGUsaSl9KSxpPSFpLmdldENoaWxkKHIpLmlzRW1wdHkoKSYmbnVsbCE9PW8/aS51cGRhdGVDaGlsZCh1dShyLCIucHJpb3JpdHkiKSxvKTppfX0oZXUoKSx0LndyaXRlVHJlZV8sZSl9ZnVuY3Rpb24gTWgodCxlKXtyZXR1cm4gUWgoZSx0KX1mdW5jdGlvbiBGaChlLG4pe3ZhciB0PWUuYWxsV3JpdGVzLmZpbmRJbmRleChmdW5jdGlvbih0KXtyZXR1cm4gdC53cml0ZUlkPT09bn0pO3NvKDA8PXQsInJlbW92ZVdyaXRlIGNhbGxlZCB3aXRoIG5vbmV4aXN0ZW50IHdyaXRlSWQuIik7dmFyIHI9ZS5hbGxXcml0ZXNbdF07ZS5hbGxXcml0ZXMuc3BsaWNlKHQsMSk7Zm9yKHZhciBpLG89ci52aXNpYmxlLHM9ITEsYT1lLmFsbFdyaXRlcy5sZW5ndGgtMTtvJiYwPD1hOyl7dmFyIHU9ZS5hbGxXcml0ZXNbYV07dS52aXNpYmxlJiYodDw9YSYmZnVuY3Rpb24odCxlKXt7aWYodC5zbmFwKXJldHVybiBwdSh0LnBhdGgsZSk7Zm9yKHZhciBuIGluIHQuY2hpbGRyZW4paWYodC5jaGlsZHJlbi5oYXNPd25Qcm9wZXJ0eShuKSYmcHUodXUodC5wYXRoLG4pLGUpKXJldHVybiEwO3JldHVybiExfX0odSxyLnBhdGgpP289ITE6cHUoci5wYXRoLHUucGF0aCkmJihzPSEwKSksYS0tfXJldHVybiEhbyYmKHM/KChpPWUpLnZpc2libGVXcml0ZXM9amgoaS5hbGxXcml0ZXMsVWgsZXUoKSksMDxpLmFsbFdyaXRlcy5sZW5ndGg/aS5sYXN0V3JpdGVJZD1pLmFsbFdyaXRlc1tpLmFsbFdyaXRlcy5sZW5ndGgtMV0ud3JpdGVJZDppLmxhc3RXcml0ZUlkPS0xKTpyLnNuYXA/ZS52aXNpYmxlV3JpdGVzPWtoKGUudmlzaWJsZVdyaXRlcyxyLnBhdGgpOmlhKHIuY2hpbGRyZW4sZnVuY3Rpb24odCl7ZS52aXNpYmxlV3JpdGVzPWtoKGUudmlzaWJsZVdyaXRlcyx1dShyLnBhdGgsdCkpfSksITApfWZ1bmN0aW9uIFVoKHQpe3JldHVybiB0LnZpc2libGV9ZnVuY3Rpb24gamgodCxlLG4pe2Zvcih2YXIgcj1TaC5lbXB0eSgpLGk9MDtpPHQubGVuZ3RoOysraSl7dmFyIG89dFtpXTtpZihlKG8pKXt2YXIgcz1vLnBhdGgsYT12b2lkIDA7aWYoby5zbmFwKXB1KG4scyk/cj1OaChyLGE9aHUobixzKSxvLnNuYXApOnB1KHMsbikmJihhPWh1KHMsbikscj1OaChyLGV1KCksby5zbmFwLmdldENoaWxkKGEpKSk7ZWxzZXtpZighby5jaGlsZHJlbil0aHJvdyBhbygiV3JpdGVSZWNvcmQgc2hvdWxkIGhhdmUgLnNuYXAgb3IgLmNoaWxkcmVuIik7cHUobixzKT9yPUFoKHIsYT1odShuLHMpLG8uY2hpbGRyZW4pOnB1KHMsbikmJihjdShhPWh1KHMsbikpP3I9QWgocixldSgpLG8uY2hpbGRyZW4pOihvPURvKG8uY2hpbGRyZW4sbnUoYSkpKSYmKGE9by5nZXRDaGlsZChpdShhKSkscj1OaChyLGV1KCksYSkpKX19fXJldHVybiByfWZ1bmN0aW9uIHFoKHQsZSxuLHIsaSl7aWYocnx8aSl7dmFyIG89RGgodC52aXNpYmxlV3JpdGVzLGUpO2lmKCFpJiZ4aChvKSlyZXR1cm4gbjtpZihpfHxudWxsIT1ufHxSaChvLGV1KCkpKXJldHVybiBMaChqaCh0LmFsbFdyaXRlcyxmdW5jdGlvbih0KXtyZXR1cm4odC52aXNpYmxlfHxpKSYmKCFyfHwhfnIuaW5kZXhPZih0LndyaXRlSWQpKSYmKHB1KHQucGF0aCxlKXx8cHUoZSx0LnBhdGgpKX0sZSksbnx8dWMuRU1QVFlfTk9ERSk7cmV0dXJuIG51bGx9bz1QaCh0LnZpc2libGVXcml0ZXMsZSk7aWYobnVsbCE9bylyZXR1cm4gbzt0PURoKHQudmlzaWJsZVdyaXRlcyxlKTtyZXR1cm4geGgodCk/bjpudWxsIT1ufHxSaCh0LGV1KCkpP0xoKHQsbnx8dWMuRU1QVFlfTk9ERSk6bnVsbH1mdW5jdGlvbiBWaCh0LGUsbixyKXtyZXR1cm4gcWgodC53cml0ZVRyZWUsdC50cmVlUGF0aCxlLG4scil9ZnVuY3Rpb24gQmgodCxlKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3ZhciByPXVjLkVNUFRZX05PREUsaT1QaCh0LnZpc2libGVXcml0ZXMsZSk7aWYoaSlyZXR1cm4gaS5pc0xlYWZOb2RlKCl8fGkuZm9yRWFjaENoaWxkKEp1LGZ1bmN0aW9uKHQsZSl7cj1yLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKHQsZSl9KSxyO2lmKG4pe3ZhciBvPURoKHQudmlzaWJsZVdyaXRlcyxlKTtyZXR1cm4gbi5mb3JFYWNoQ2hpbGQoSnUsZnVuY3Rpb24odCxlKXtlPUxoKERoKG8sbmV3IFphKHQpKSxlKTtyPXIudXBkYXRlSW1tZWRpYXRlQ2hpbGQodCxlKX0pLE9oKG8pLmZvckVhY2goZnVuY3Rpb24odCl7cj1yLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKHQubmFtZSx0Lm5vZGUpfSkscn1yZXR1cm4gT2goRGgodC52aXNpYmxlV3JpdGVzLGUpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3I9ci51cGRhdGVJbW1lZGlhdGVDaGlsZCh0Lm5hbWUsdC5ub2RlKX0pLHJ9KHQud3JpdGVUcmVlLHQudHJlZVBhdGgsZSl9ZnVuY3Rpb24gS2godCxlLG4scil7cmV0dXJuIGk9dC53cml0ZVRyZWUsdD10LnRyZWVQYXRoLGU9ZSxyPXIsc28obnx8ciwiRWl0aGVyIGV4aXN0aW5nRXZlbnRTbmFwIG9yIGV4aXN0aW5nU2VydmVyU25hcCBtdXN0IGV4aXN0IiksdD11dSh0LGUpLFJoKGkudmlzaWJsZVdyaXRlcyx0KT9udWxsOnhoKHQ9RGgoaS52aXNpYmxlV3JpdGVzLHQpKT9yLmdldENoaWxkKGUpOkxoKHQsci5nZXRDaGlsZChlKSk7dmFyIGl9ZnVuY3Rpb24gV2godCxlKXtyZXR1cm4gbj10LndyaXRlVHJlZSxlPXV1KHQudHJlZVBhdGgsZSksUGgobi52aXNpYmxlV3JpdGVzLGUpO3ZhciBufWZ1bmN0aW9uIEhoKHQsZSxuLHIsaSxvKXtyZXR1cm4gZnVuY3Rpb24odCxlLG4scixpLG8scyl7dmFyIGEsdD1EaCh0LnZpc2libGVXcml0ZXMsZSk7aWYobnVsbCE9KGU9UGgodCxldSgpKSkpYT1lO2Vsc2V7aWYobnVsbD09bilyZXR1cm5bXTthPUxoKHQsbil9aWYoKGE9YS53aXRoSW5kZXgocykpLmlzRW1wdHkoKXx8YS5pc0xlYWZOb2RlKCkpcmV0dXJuW107Zm9yKHZhciB1PVtdLGM9cy5nZXRDb21wYXJlKCksaD1vP2EuZ2V0UmV2ZXJzZUl0ZXJhdG9yRnJvbShyLHMpOmEuZ2V0SXRlcmF0b3JGcm9tKHIscyksbD1oLmdldE5leHQoKTtsJiZ1Lmxlbmd0aDxpOykwIT09YyhsLHIpJiZ1LnB1c2gobCksbD1oLmdldE5leHQoKTtyZXR1cm4gdX0odC53cml0ZVRyZWUsdC50cmVlUGF0aCxlLG4scixpLG8pfWZ1bmN0aW9uIEdoKHQsZSxuKXtyZXR1cm4gcj10LndyaXRlVHJlZSxpPXQudHJlZVBhdGgsdD1uLGU9dXUoaSxuPWUpLG51bGwhPShpPVBoKHIudmlzaWJsZVdyaXRlcyxlKSk/aTp0LmlzQ29tcGxldGVGb3JDaGlsZChuKT9MaChEaChyLnZpc2libGVXcml0ZXMsZSksdC5nZXROb2RlKCkuZ2V0SW1tZWRpYXRlQ2hpbGQobikpOm51bGw7dmFyIHIsaX1mdW5jdGlvbiB6aCh0LGUpe3JldHVybiBRaCh1dSh0LnRyZWVQYXRoLGUpLHQud3JpdGVUcmVlKX1mdW5jdGlvbiBRaCh0LGUpe3JldHVybnt0cmVlUGF0aDp0LHdyaXRlVHJlZTplfX12YXIgWWg9KFhoLnByb3RvdHlwZS50cmFja0NoaWxkQ2hhbmdlPWZ1bmN0aW9uKHQpe3ZhciBlPXQudHlwZSxuPXQuY2hpbGROYW1lO3NvKCJjaGlsZF9hZGRlZCI9PT1lfHwiY2hpbGRfY2hhbmdlZCI9PT1lfHwiY2hpbGRfcmVtb3ZlZCI9PT1lLCJPbmx5IGNoaWxkIGNoYW5nZXMgc3VwcG9ydGVkIGZvciB0cmFja2luZyIpLHNvKCIucHJpb3JpdHkiIT09biwiT25seSBub24tcHJpb3JpdHkgY2hpbGQgY2hhbmdlcyBjYW4gYmUgdHJhY2tlZC4iKTt2YXIgcj10aGlzLmNoYW5nZU1hcC5nZXQobik7aWYocil7dmFyIGk9ci50eXBlO2lmKCJjaGlsZF9hZGRlZCI9PT1lJiYiY2hpbGRfcmVtb3ZlZCI9PT1pKXRoaXMuY2hhbmdlTWFwLnNldChuLGtjKG4sdC5zbmFwc2hvdE5vZGUsci5zbmFwc2hvdE5vZGUpKTtlbHNlIGlmKCJjaGlsZF9yZW1vdmVkIj09PWUmJiJjaGlsZF9hZGRlZCI9PT1pKXRoaXMuY2hhbmdlTWFwLmRlbGV0ZShuKTtlbHNlIGlmKCJjaGlsZF9yZW1vdmVkIj09PWUmJiJjaGlsZF9jaGFuZ2VkIj09PWkpdGhpcy5jaGFuZ2VNYXAuc2V0KG4sQWMobixyLm9sZFNuYXApKTtlbHNlIGlmKCJjaGlsZF9jaGFuZ2VkIj09PWUmJiJjaGlsZF9hZGRlZCI9PT1pKXRoaXMuY2hhbmdlTWFwLnNldChuLE5jKG4sdC5zbmFwc2hvdE5vZGUpKTtlbHNle2lmKCJjaGlsZF9jaGFuZ2VkIiE9PWV8fCJjaGlsZF9jaGFuZ2VkIiE9PWkpdGhyb3cgYW8oIklsbGVnYWwgY29tYmluYXRpb24gb2YgY2hhbmdlczogIit0KyIgb2NjdXJyZWQgYWZ0ZXIgIityKTt0aGlzLmNoYW5nZU1hcC5zZXQobixrYyhuLHQuc25hcHNob3ROb2RlLHIub2xkU25hcCkpfX1lbHNlIHRoaXMuY2hhbmdlTWFwLnNldChuLHQpfSxYaC5wcm90b3R5cGUuZ2V0Q2hhbmdlcz1mdW5jdGlvbigpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuY2hhbmdlTWFwLnZhbHVlcygpKX0sWGgpO2Z1bmN0aW9uIFhoKCl7dGhpcy5jaGFuZ2VNYXA9bmV3IE1hcH1mdW5jdGlvbiBKaCgpe312YXIgJGg9bmV3KEpoLnByb3RvdHlwZS5nZXRDb21wbGV0ZUNoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsfSxKaC5wcm90b3R5cGUuZ2V0Q2hpbGRBZnRlckNoaWxkPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbnVsbH0sSmgpLFpoPSh0bC5wcm90b3R5cGUuZ2V0Q29tcGxldGVDaGlsZD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLnZpZXdDYWNoZV8uZXZlbnRDYWNoZTtpZihlLmlzQ29tcGxldGVGb3JDaGlsZCh0KSlyZXR1cm4gZS5nZXROb2RlKCkuZ2V0SW1tZWRpYXRlQ2hpbGQodCk7ZT1udWxsIT10aGlzLm9wdENvbXBsZXRlU2VydmVyQ2FjaGVfP25ldyBmaCh0aGlzLm9wdENvbXBsZXRlU2VydmVyQ2FjaGVfLCEwLCExKTp0aGlzLnZpZXdDYWNoZV8uc2VydmVyQ2FjaGU7cmV0dXJuIEdoKHRoaXMud3JpdGVzXyx0LGUpfSx0bC5wcm90b3R5cGUuZ2V0Q2hpbGRBZnRlckNoaWxkPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1udWxsIT10aGlzLm9wdENvbXBsZXRlU2VydmVyQ2FjaGVfP3RoaXMub3B0Q29tcGxldGVTZXJ2ZXJDYWNoZV86SWgodGhpcy52aWV3Q2FjaGVfKSx0PUhoKHRoaXMud3JpdGVzXyxyLGUsMSxuLHQpO3JldHVybiAwPT09dC5sZW5ndGg/bnVsbDp0WzBdfSx0bCk7ZnVuY3Rpb24gdGwodCxlLG4pe3ZvaWQgMD09PW4mJihuPW51bGwpLHRoaXMud3JpdGVzXz10LHRoaXMudmlld0NhY2hlXz1lLHRoaXMub3B0Q29tcGxldGVTZXJ2ZXJDYWNoZV89bn1mdW5jdGlvbiBlbCh0LGUsbixyLGkpe3ZhciBvLHMsYSx1LGMsaCxsLGYscD1uZXcgWWg7aWYobi50eXBlPT09JGMuT1ZFUldSSVRFKXZhciBkPW4sdj1kLnNvdXJjZS5mcm9tVXNlcj9pbCh0LGUsZC5wYXRoLGQuc25hcCxyLGkscCk6KHNvKGQuc291cmNlLmZyb21TZXJ2ZXIsIlVua25vd24gc291cmNlLiIpLG89ZC5zb3VyY2UudGFnZ2VkfHxlLnNlcnZlckNhY2hlLmlzRmlsdGVyZWQoKSYmIWN1KGQucGF0aCkscmwodCxlLGQucGF0aCxkLnNuYXAscixpLG8scCkpO2Vsc2UgaWYobi50eXBlPT09JGMuTUVSR0Upe3ZhciBnPW47dj1nLnNvdXJjZS5mcm9tVXNlcj8ocz10LGE9ZSx1PWcucGF0aCxkPWcuY2hpbGRyZW4sYz1yLGg9aSxsPXAsZj1hLGQuZm9yZWFjaChmdW5jdGlvbih0LGUpe3Q9dXUodSx0KTtvbChhLG51KHQpKSYmKGY9aWwocyxmLHQsZSxjLGgsbCkpfSksZC5mb3JlYWNoKGZ1bmN0aW9uKHQsZSl7dD11dSh1LHQpO29sKGEsbnUodCkpfHwoZj1pbChzLGYsdCxlLGMsaCxsKSl9KSxmKTooc28oZy5zb3VyY2UuZnJvbVNlcnZlciwiVW5rbm93biBzb3VyY2UuIiksbz1nLnNvdXJjZS50YWdnZWR8fGUuc2VydmVyQ2FjaGUuaXNGaWx0ZXJlZCgpLGFsKHQsZSxnLnBhdGgsZy5jaGlsZHJlbixyLGksbyxwKSl9ZWxzZSBpZihuLnR5cGU9PT0kYy5BQ0tfVVNFUl9XUklURSl7dmFyIHk9bjt2PXkucmV2ZXJ0P2Z1bmN0aW9uKHQsZSxuLHIsaSxvKXt2YXIgczt7aWYobnVsbCE9V2gocixuKSlyZXR1cm4gZTt2YXIgYSx1LGM9bmV3IFpoKHIsZSxpKSxoPWUuZXZlbnRDYWNoZS5nZXROb2RlKCksaT12b2lkIDA7cmV0dXJuIGN1KG4pfHwiLnByaW9yaXR5Ij09PW51KG4pPyh1PXZvaWQgMCx1PWUuc2VydmVyQ2FjaGUuaXNGdWxseUluaXRpYWxpemVkKCk/VmgocixJaChlKSk6KGE9ZS5zZXJ2ZXJDYWNoZS5nZXROb2RlKCksc28oYSBpbnN0YW5jZW9mIHVjLCJzZXJ2ZXJDaGlsZHJlbiB3b3VsZCBiZSBjb21wbGV0ZSBpZiBsZWFmIG5vZGUiKSxCaChyLGEpKSxpPXQuZmlsdGVyLnVwZGF0ZUZ1bGxOb2RlKGgsdSxvKSk6KGE9bnUobiksbnVsbD09KHU9R2gocixhLGUuc2VydmVyQ2FjaGUpKSYmZS5zZXJ2ZXJDYWNoZS5pc0NvbXBsZXRlRm9yQ2hpbGQoYSkmJih1PWguZ2V0SW1tZWRpYXRlQ2hpbGQoYSkpLChpPW51bGwhPXU/dC5maWx0ZXIudXBkYXRlQ2hpbGQoaCxhLHUsaXUobiksYyxvKTplLmV2ZW50Q2FjaGUuZ2V0Tm9kZSgpLmhhc0NoaWxkKGEpP3QuZmlsdGVyLnVwZGF0ZUNoaWxkKGgsYSx1Yy5FTVBUWV9OT0RFLGl1KG4pLGMsbyk6aCkuaXNFbXB0eSgpJiZlLnNlcnZlckNhY2hlLmlzRnVsbHlJbml0aWFsaXplZCgpJiYocz1WaChyLEloKGUpKSkuaXNMZWFmTm9kZSgpJiYoaT10LmZpbHRlci51cGRhdGVGdWxsTm9kZShpLHMsbykpKSxzPWUuc2VydmVyQ2FjaGUuaXNGdWxseUluaXRpYWxpemVkKCl8fG51bGwhPVdoKHIsZXUoKSksYmgoZSxpLHMsdC5maWx0ZXIuZmlsdGVyc05vZGVzKCkpfX0odCxlLHkucGF0aCxyLGkscCk6ZnVuY3Rpb24odCxlLHIsbixpLG8scyl7aWYobnVsbCE9V2goaSxyKSlyZXR1cm4gZTt2YXIgYT1lLnNlcnZlckNhY2hlLmlzRmlsdGVyZWQoKSx1PWUuc2VydmVyQ2FjaGU7e2lmKG51bGwhPW4udmFsdWUpe2lmKGN1KHIpJiZ1LmlzRnVsbHlJbml0aWFsaXplZCgpfHx1LmlzQ29tcGxldGVGb3JQYXRoKHIpKXJldHVybiBybCh0LGUscix1LmdldE5vZGUoKS5nZXRDaGlsZChyKSxpLG8sYSxzKTtpZihjdShyKSl7dmFyIGM9bmV3IFRoKG51bGwpO3JldHVybiB1LmdldE5vZGUoKS5mb3JFYWNoQ2hpbGQoUHUsZnVuY3Rpb24odCxlKXtjPWMuc2V0KG5ldyBaYSh0KSxlKX0pLGFsKHQsZSxyLGMsaSxvLGEscyl9cmV0dXJuIGV9dmFyIGg9bmV3IFRoKG51bGwpO3JldHVybiBuLmZvcmVhY2goZnVuY3Rpb24odCxlKXt2YXIgbj11dShyLHQpO3UuaXNDb21wbGV0ZUZvclBhdGgobikmJihoPWguc2V0KHQsdS5nZXROb2RlKCkuZ2V0Q2hpbGQobikpKX0pLGFsKHQsZSxyLGgsaSxvLGEscyl9fSh0LGUseS5wYXRoLHkuYWZmZWN0ZWRUcmVlLHIsaSxwKX1lbHNle2lmKG4udHlwZSE9PSRjLkxJU1RFTl9DT01QTEVURSl0aHJvdyBhbygiVW5rbm93biBvcGVyYXRpb24gdHlwZTogIituLnR5cGUpO289dCx5PWUsaT1uLnBhdGgsdD1yLG49cCxyPXkuc2VydmVyQ2FjaGUscj13aCh5LHIuZ2V0Tm9kZSgpLHIuaXNGdWxseUluaXRpYWxpemVkKCl8fGN1KGkpLHIuaXNGaWx0ZXJlZCgpKSx2PW5sKG8scixpLHQsJGgsbil9cD1wLmdldENoYW5nZXMoKTtyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3ZhciByPWUuZXZlbnRDYWNoZTt7dmFyIGksbztyLmlzRnVsbHlJbml0aWFsaXplZCgpJiYoaT1yLmdldE5vZGUoKS5pc0xlYWZOb2RlKCl8fHIuZ2V0Tm9kZSgpLmlzRW1wdHkoKSxvPV9oKHQpLCgwPG4ubGVuZ3RofHwhdC5ldmVudENhY2hlLmlzRnVsbHlJbml0aWFsaXplZCgpfHxpJiYhci5nZXROb2RlKCkuZXF1YWxzKG8pfHwhci5nZXROb2RlKCkuZ2V0UHJpb3JpdHkoKS5lcXVhbHMoby5nZXRQcmlvcml0eSgpKSkmJm4ucHVzaChDYyhfaChlKSkpKX19KGUsdixwKSx7dmlld0NhY2hlOnYsY2hhbmdlczpwfX1mdW5jdGlvbiBubCh0LGUsbixyLGksbyl7dmFyIHM9ZS5ldmVudENhY2hlO2lmKG51bGwhPVdoKHIsbikpcmV0dXJuIGU7dmFyIGEsdSxjLGgsbD12b2lkIDAsZj12b2lkIDA7cmV0dXJuIGw9Y3Uobik/KHNvKGUuc2VydmVyQ2FjaGUuaXNGdWxseUluaXRpYWxpemVkKCksIklmIGNoYW5nZSBwYXRoIGlzIGVtcHR5LCB3ZSBtdXN0IGhhdmUgY29tcGxldGUgc2VydmVyIGRhdGEiKSxlLnNlcnZlckNhY2hlLmlzRmlsdGVyZWQoKT8oYT1CaChyLChhPUloKGUpKWluc3RhbmNlb2YgdWM/YTp1Yy5FTVBUWV9OT0RFKSx0LmZpbHRlci51cGRhdGVGdWxsTm9kZShlLmV2ZW50Q2FjaGUuZ2V0Tm9kZSgpLGEsbykpOih1PVZoKHIsSWgoZSkpLHQuZmlsdGVyLnVwZGF0ZUZ1bGxOb2RlKGUuZXZlbnRDYWNoZS5nZXROb2RlKCksdSxvKSkpOiIucHJpb3JpdHkiPT09KHU9bnUobikpPyhzbygxPT09cnUobiksIkNhbid0IGhhdmUgYSBwcmlvcml0eSB3aXRoIGFkZGl0aW9uYWwgcGF0aCBjb21wb25lbnRzIiksbnVsbCE9KGg9S2gocixuLGM9cy5nZXROb2RlKCksZj1lLnNlcnZlckNhY2hlLmdldE5vZGUoKSkpP3QuZmlsdGVyLnVwZGF0ZVByaW9yaXR5KGMsaCk6cy5nZXROb2RlKCkpOihjPWl1KG4pLGg9dm9pZCAwLG51bGwhPShoPXMuaXNDb21wbGV0ZUZvckNoaWxkKHUpPyhmPWUuc2VydmVyQ2FjaGUuZ2V0Tm9kZSgpLG51bGwhPShmPUtoKHIsbixzLmdldE5vZGUoKSxmKSk/cy5nZXROb2RlKCkuZ2V0SW1tZWRpYXRlQ2hpbGQodSkudXBkYXRlQ2hpbGQoYyxmKTpzLmdldE5vZGUoKS5nZXRJbW1lZGlhdGVDaGlsZCh1KSk6R2gocix1LGUuc2VydmVyQ2FjaGUpKT90LmZpbHRlci51cGRhdGVDaGlsZChzLmdldE5vZGUoKSx1LGgsYyxpLG8pOnMuZ2V0Tm9kZSgpKSxiaChlLGwscy5pc0Z1bGx5SW5pdGlhbGl6ZWQoKXx8Y3UobiksdC5maWx0ZXIuZmlsdGVyc05vZGVzKCkpfWZ1bmN0aW9uIHJsKHQsZSxuLHIsaSxvLHMsYSl7dmFyIHU9ZS5zZXJ2ZXJDYWNoZSxjPXM/dC5maWx0ZXI6dC5maWx0ZXIuZ2V0SW5kZXhlZEZpbHRlcigpO2lmKGN1KG4pKWw9Yy51cGRhdGVGdWxsTm9kZSh1LmdldE5vZGUoKSxyLG51bGwpO2Vsc2UgaWYoYy5maWx0ZXJzTm9kZXMoKSYmIXUuaXNGaWx0ZXJlZCgpKXZhciBoPXUuZ2V0Tm9kZSgpLnVwZGF0ZUNoaWxkKG4sciksbD1jLnVwZGF0ZUZ1bGxOb2RlKHUuZ2V0Tm9kZSgpLGgsbnVsbCk7ZWxzZXtzPW51KG4pO2lmKCF1LmlzQ29tcGxldGVGb3JQYXRoKG4pJiYxPHJ1KG4pKXJldHVybiBlO2g9aXUobikscj11LmdldE5vZGUoKS5nZXRJbW1lZGlhdGVDaGlsZChzKS51cGRhdGVDaGlsZChoLHIpO2w9Ii5wcmlvcml0eSI9PT1zP2MudXBkYXRlUHJpb3JpdHkodS5nZXROb2RlKCkscik6Yy51cGRhdGVDaGlsZCh1LmdldE5vZGUoKSxzLHIsaCwkaCxudWxsKX1jPXdoKGUsbCx1LmlzRnVsbHlJbml0aWFsaXplZCgpfHxjdShuKSxjLmZpbHRlcnNOb2RlcygpKTtyZXR1cm4gbmwodCxjLG4saSxuZXcgWmgoaSxjLG8pLGEpfWZ1bmN0aW9uIGlsKHQsZSxuLHIsaSxvLHMpe3ZhciBhLHUsYz1lLmV2ZW50Q2FjaGUsaD1uZXcgWmgoaSxlLG8pO3JldHVybiBjdShuKT8odT10LmZpbHRlci51cGRhdGVGdWxsTm9kZShlLmV2ZW50Q2FjaGUuZ2V0Tm9kZSgpLHIscyksYmgoZSx1LCEwLHQuZmlsdGVyLmZpbHRlcnNOb2RlcygpKSk6Ii5wcmlvcml0eSI9PT0oYT1udShuKSk/KHU9dC5maWx0ZXIudXBkYXRlUHJpb3JpdHkoZS5ldmVudENhY2hlLmdldE5vZGUoKSxyKSxiaChlLHUsYy5pc0Z1bGx5SW5pdGlhbGl6ZWQoKSxjLmlzRmlsdGVyZWQoKSkpOihpPWl1KG4pLG89Yy5nZXROb2RlKCkuZ2V0SW1tZWRpYXRlQ2hpbGQoYSksdT12b2lkIDAsdT1jdShpKT9yOm51bGwhPShuPWguZ2V0Q29tcGxldGVDaGlsZChhKSk/Ii5wcmlvcml0eSI9PT1vdShpKSYmbi5nZXRDaGlsZChhdShpKSkuaXNFbXB0eSgpP246bi51cGRhdGVDaGlsZChpLHIpOnVjLkVNUFRZX05PREUsby5lcXVhbHModSk/ZTpiaChlLHQuZmlsdGVyLnVwZGF0ZUNoaWxkKGMuZ2V0Tm9kZSgpLGEsdSxpLGgscyksYy5pc0Z1bGx5SW5pdGlhbGl6ZWQoKSx0LmZpbHRlci5maWx0ZXJzTm9kZXMoKSkpfWZ1bmN0aW9uIG9sKHQsZSl7cmV0dXJuIHQuZXZlbnRDYWNoZS5pc0NvbXBsZXRlRm9yQ2hpbGQoZSl9ZnVuY3Rpb24gc2wodCxuLGUpe3JldHVybiBlLmZvcmVhY2goZnVuY3Rpb24odCxlKXtuPW4udXBkYXRlQ2hpbGQodCxlKX0pLG59ZnVuY3Rpb24gYWwocixpLHQsZSxvLHMsYSx1KXtpZihpLnNlcnZlckNhY2hlLmdldE5vZGUoKS5pc0VtcHR5KCkmJiFpLnNlcnZlckNhY2hlLmlzRnVsbHlJbml0aWFsaXplZCgpKXJldHVybiBpO3ZhciBjPWksZT1jdSh0KT9lOm5ldyBUaChudWxsKS5zZXRUcmVlKHQsZSksaD1pLnNlcnZlckNhY2hlLmdldE5vZGUoKTtyZXR1cm4gZS5jaGlsZHJlbi5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7aC5oYXNDaGlsZCh0KSYmKGU9c2woMCxpLnNlcnZlckNhY2hlLmdldE5vZGUoKS5nZXRJbW1lZGlhdGVDaGlsZCh0KSxlKSxjPXJsKHIsYyxuZXcgWmEodCksZSxvLHMsYSx1KSl9KSxlLmNoaWxkcmVuLmlub3JkZXJUcmF2ZXJzYWwoZnVuY3Rpb24odCxlKXt2YXIgbj0haS5zZXJ2ZXJDYWNoZS5pc0NvbXBsZXRlRm9yQ2hpbGQodCkmJnZvaWQgMD09PWUudmFsdWU7aC5oYXNDaGlsZCh0KXx8bnx8KGU9c2woMCxpLnNlcnZlckNhY2hlLmdldE5vZGUoKS5nZXRJbW1lZGlhdGVDaGlsZCh0KSxlKSxjPXJsKHIsYyxuZXcgWmEodCksZSxvLHMsYSx1KSl9KSxjfXZhciB1bCxjbD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGhsLnByb3RvdHlwZSwicXVlcnkiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5xdWVyeV99LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksaGwpO2Z1bmN0aW9uIGhsKHQsZSl7dGhpcy5xdWVyeV89dCx0aGlzLmV2ZW50UmVnaXN0cmF0aW9uc189W107dmFyIG49dGhpcy5xdWVyeV8uZ2V0UXVlcnlQYXJhbXMoKSxyPW5ldyBSYyhuLmdldEluZGV4KCkpLGk9KG89bikubG9hZHNBbGxEYXRhKCk/bmV3IFJjKG8uZ2V0SW5kZXgoKSk6bmV3KG8uaGFzTGltaXQoKT94YzpPYykobyk7dGhpcy5wcm9jZXNzb3JfPXtmaWx0ZXI6aX07dmFyIHQ9ZS5zZXJ2ZXJDYWNoZSxuPWUuZXZlbnRDYWNoZSxvPXIudXBkYXRlRnVsbE5vZGUodWMuRU1QVFlfTk9ERSx0LmdldE5vZGUoKSxudWxsKSxlPWkudXBkYXRlRnVsbE5vZGUodWMuRU1QVFlfTk9ERSxuLmdldE5vZGUoKSxudWxsKSxyPW5ldyBmaChvLHQuaXNGdWxseUluaXRpYWxpemVkKCksci5maWx0ZXJzTm9kZXMoKSksaT1uZXcgZmgoZSxuLmlzRnVsbHlJbml0aWFsaXplZCgpLGkuZmlsdGVyc05vZGVzKCkpO3RoaXMudmlld0NhY2hlXz1taChpLHIpLHRoaXMuZXZlbnRHZW5lcmF0b3JfPW5ldyB2aCh0aGlzLnF1ZXJ5Xyl9ZnVuY3Rpb24gbGwodCl7cmV0dXJuIDA9PT10LmV2ZW50UmVnaXN0cmF0aW9uc18ubGVuZ3RofWZ1bmN0aW9uIGZsKHQsZSxuKXt2YXIgcixpPVtdO2lmKG4mJihzbyhudWxsPT1lLCJBIGNhbmNlbCBzaG91bGQgY2FuY2VsIGFsbCBldmVudCByZWdpc3RyYXRpb25zLiIpLHI9dC5xdWVyeS5wYXRoLHQuZXZlbnRSZWdpc3RyYXRpb25zXy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3Q9dC5jcmVhdGVDYW5jZWxFdmVudChuLHIpO3QmJmkucHVzaCh0KX0pKSxlKXtmb3IodmFyIG89W10scz0wO3M8dC5ldmVudFJlZ2lzdHJhdGlvbnNfLmxlbmd0aDsrK3Mpe3ZhciBhPXQuZXZlbnRSZWdpc3RyYXRpb25zX1tzXTtpZihhLm1hdGNoZXMoZSkpe2lmKGUuaGFzQW55Q2FsbGJhY2soKSl7bz1vLmNvbmNhdCh0LmV2ZW50UmVnaXN0cmF0aW9uc18uc2xpY2UocysxKSk7YnJlYWt9fWVsc2Ugby5wdXNoKGEpfXQuZXZlbnRSZWdpc3RyYXRpb25zXz1vfWVsc2UgdC5ldmVudFJlZ2lzdHJhdGlvbnNfPVtdO3JldHVybiBpfWZ1bmN0aW9uIHBsKHQsZSxuLHIpe2UudHlwZT09PSRjLk1FUkdFJiZudWxsIT09ZS5zb3VyY2UucXVlcnlJZCYmKHNvKEloKHQudmlld0NhY2hlXyksIldlIHNob3VsZCBhbHdheXMgaGF2ZSBhIGZ1bGwgY2FjaGUgYmVmb3JlIGhhbmRsaW5nIG1lcmdlcyIpLHNvKF9oKHQudmlld0NhY2hlXyksIk1pc3NpbmcgZXZlbnQgY2FjaGUsIGV2ZW4gdGhvdWdoIHdlIGhhdmUgYSBzZXJ2ZXIgY2FjaGUiKSk7dmFyIGk9dC52aWV3Q2FjaGVfLGU9ZWwodC5wcm9jZXNzb3JfLGksZSxuLHIpO3JldHVybiBuPXQucHJvY2Vzc29yXyxyPWUudmlld0NhY2hlLHNvKHIuZXZlbnRDYWNoZS5nZXROb2RlKCkuaXNJbmRleGVkKG4uZmlsdGVyLmdldEluZGV4KCkpLCJFdmVudCBzbmFwIG5vdCBpbmRleGVkIiksc28oci5zZXJ2ZXJDYWNoZS5nZXROb2RlKCkuaXNJbmRleGVkKG4uZmlsdGVyLmdldEluZGV4KCkpLCJTZXJ2ZXIgc25hcCBub3QgaW5kZXhlZCIpLHNvKGUudmlld0NhY2hlLnNlcnZlckNhY2hlLmlzRnVsbHlJbml0aWFsaXplZCgpfHwhaS5zZXJ2ZXJDYWNoZS5pc0Z1bGx5SW5pdGlhbGl6ZWQoKSwiT25jZSBhIHNlcnZlciBzbmFwIGlzIGNvbXBsZXRlLCBpdCBzaG91bGQgbmV2ZXIgZ28gYmFjayIpLHQudmlld0NhY2hlXz1lLnZpZXdDYWNoZSxkbCh0LGUuY2hhbmdlcyxlLnZpZXdDYWNoZS5ldmVudENhY2hlLmdldE5vZGUoKSxudWxsKX1mdW5jdGlvbiBkbCh0LGUsbixyKXtyPXI/W3JdOnQuZXZlbnRSZWdpc3RyYXRpb25zXztyZXR1cm4gZ2godC5ldmVudEdlbmVyYXRvcl8sZSxuLHIpfXZhciB2bD1mdW5jdGlvbigpe3RoaXMudmlld3M9bmV3IE1hcH07ZnVuY3Rpb24gZ2wodCxlLG4scil7dmFyIGksbyxzPWUuc291cmNlLnF1ZXJ5SWQ7aWYobnVsbCE9PXMpe3ZhciBhPXQudmlld3MuZ2V0KHMpO3JldHVybiBzbyhudWxsIT1hLCJTeW5jVHJlZSBnYXZlIHVzIGFuIG9wIGZvciBhbiBpbnZhbGlkIHF1ZXJ5LiIpLHBsKGEsZSxuLHIpfXZhciB1PVtdO3RyeXtmb3IodmFyIGM9dG8odC52aWV3cy52YWx1ZXMoKSksaD1jLm5leHQoKTshaC5kb25lO2g9Yy5uZXh0KCkpYT1oLnZhbHVlLHU9dS5jb25jYXQocGwoYSxlLG4scikpfWNhdGNoKHQpe2k9e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e2gmJiFoLmRvbmUmJihvPWMucmV0dXJuKSYmby5jYWxsKGMpfWZpbmFsbHl7aWYoaSl0aHJvdyBpLmVycm9yfX1yZXR1cm4gdX1mdW5jdGlvbiB5bCh0LGUsbixyLGkpe3ZhciBvPWUucXVlcnlJZGVudGlmaWVyKCksdD10LnZpZXdzLmdldChvKTtpZih0KXJldHVybiB0O289VmgobixpP3I6bnVsbCksdD0hMSx0PSEhb3x8KG89ciBpbnN0YW5jZW9mIHVjP0JoKG4scik6dWMuRU1QVFlfTk9ERSwhMSksaT1taChuZXcgZmgobyx0LCExKSxuZXcgZmgocixpLCExKSk7cmV0dXJuIG5ldyBjbChlLGkpfWZ1bmN0aW9uIG1sKHQsZSxuLHIsaSxvKXt2YXIgcyxvPXlsKHQsZSxyLGksbyk7cmV0dXJuIHQudmlld3MuaGFzKGUucXVlcnlJZGVudGlmaWVyKCkpfHx0LnZpZXdzLnNldChlLnF1ZXJ5SWRlbnRpZmllcigpLG8pLGU9bixvLmV2ZW50UmVnaXN0cmF0aW9uc18ucHVzaChlKSxlPW4sbz0obj1vKS52aWV3Q2FjaGVfLmV2ZW50Q2FjaGUscz1bXSxvLmdldE5vZGUoKS5pc0xlYWZOb2RlKCl8fG8uZ2V0Tm9kZSgpLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe3MucHVzaChOYyh0LGUpKX0pLG8uaXNGdWxseUluaXRpYWxpemVkKCkmJnMucHVzaChDYyhvLmdldE5vZGUoKSkpLGRsKG4scyxvLmdldE5vZGUoKSxlKX1mdW5jdGlvbiBibCh0LGUsbixyKXt2YXIgaSxvLHM9ZS5xdWVyeUlkZW50aWZpZXIoKSxhPVtdLHU9W10sYz1FbCh0KTtpZigiZGVmYXVsdCI9PT1zKXRyeXtmb3IodmFyIGg9dG8odC52aWV3cy5lbnRyaWVzKCkpLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKXt2YXIgZj1lbyhsLnZhbHVlLDIpLHA9ZlswXSxkPWZbMV0sdT11LmNvbmNhdChmbChkLG4scikpO2xsKGQpJiYodC52aWV3cy5kZWxldGUocCksZC5xdWVyeS5nZXRRdWVyeVBhcmFtcygpLmxvYWRzQWxsRGF0YSgpfHxhLnB1c2goZC5xdWVyeSkpfX1jYXRjaCh0KXtpPXtlcnJvcjp0fX1maW5hbGx5e3RyeXtsJiYhbC5kb25lJiYobz1oLnJldHVybikmJm8uY2FsbChoKX1maW5hbGx5e2lmKGkpdGhyb3cgaS5lcnJvcn19ZWxzZShkPXQudmlld3MuZ2V0KHMpKSYmKHU9dS5jb25jYXQoZmwoZCxuLHIpKSxsbChkKSYmKHQudmlld3MuZGVsZXRlKHMpLGQucXVlcnkuZ2V0UXVlcnlQYXJhbXMoKS5sb2Fkc0FsbERhdGEoKXx8YS5wdXNoKGQucXVlcnkpKSk7cmV0dXJuIGMmJiFFbCh0KSYmYS5wdXNoKChzbyh1bCwiUmVmZXJlbmNlLnRzIGhhcyBub3QgYmVlbiBsb2FkZWQiKSxuZXcgdWwoZS5kYXRhYmFzZSxlLnBhdGgpKSkse3JlbW92ZWQ6YSxldmVudHM6dX19ZnVuY3Rpb24gd2wodCl7dmFyIGUsbixyPVtdO3RyeXtmb3IodmFyIGk9dG8odC52aWV3cy52YWx1ZXMoKSksbz1pLm5leHQoKTshby5kb25lO289aS5uZXh0KCkpe3ZhciBzPW8udmFsdWU7cy5xdWVyeS5nZXRRdWVyeVBhcmFtcygpLmxvYWRzQWxsRGF0YSgpfHxyLnB1c2gocyl9fWNhdGNoKHQpe2U9e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e28mJiFvLmRvbmUmJihuPWkucmV0dXJuKSYmbi5jYWxsKGkpfWZpbmFsbHl7aWYoZSl0aHJvdyBlLmVycm9yfX1yZXR1cm4gcn1mdW5jdGlvbiBfbCh0LGUpe3ZhciBuLHIsaSxvLHM9bnVsbDt0cnl7Zm9yKHZhciBhPXRvKHQudmlld3MudmFsdWVzKCkpLHU9YS5uZXh0KCk7IXUuZG9uZTt1PWEubmV4dCgpKXZhciBjPXUudmFsdWUscz1zfHwoaT1lLG89dm9pZCAwLChvPUloKChjPWMpLnZpZXdDYWNoZV8pKSYmKGMucXVlcnkuZ2V0UXVlcnlQYXJhbXMoKS5sb2Fkc0FsbERhdGEoKXx8IWN1KGkpJiYhby5nZXRJbW1lZGlhdGVDaGlsZChudShpKSkuaXNFbXB0eSgpKT9vLmdldENoaWxkKGkpOm51bGwpfWNhdGNoKHQpe249e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e3UmJiF1LmRvbmUmJihyPWEucmV0dXJuKSYmci5jYWxsKGEpfWZpbmFsbHl7aWYobil0aHJvdyBuLmVycm9yfX1yZXR1cm4gc31mdW5jdGlvbiBJbCh0LGUpe2lmKGUuZ2V0UXVlcnlQYXJhbXMoKS5sb2Fkc0FsbERhdGEoKSlyZXR1cm4gU2wodCk7ZT1lLnF1ZXJ5SWRlbnRpZmllcigpO3JldHVybiB0LnZpZXdzLmdldChlKX1mdW5jdGlvbiBUbCh0LGUpe3JldHVybiBudWxsIT1JbCh0LGUpfWZ1bmN0aW9uIEVsKHQpe3JldHVybiBudWxsIT1TbCh0KX1mdW5jdGlvbiBTbCh0KXt2YXIgZSxuO3RyeXtmb3IodmFyIHI9dG8odC52aWV3cy52YWx1ZXMoKSksaT1yLm5leHQoKTshaS5kb25lO2k9ci5uZXh0KCkpe3ZhciBvPWkudmFsdWU7aWYoby5xdWVyeS5nZXRRdWVyeVBhcmFtcygpLmxvYWRzQWxsRGF0YSgpKXJldHVybiBvfX1jYXRjaCh0KXtlPXtlcnJvcjp0fX1maW5hbGx5e3RyeXtpJiYhaS5kb25lJiYobj1yLnJldHVybikmJm4uY2FsbChyKX1maW5hbGx5e2lmKGUpdGhyb3cgZS5lcnJvcn19cmV0dXJuIG51bGx9dmFyIENsPTEsTmw9ZnVuY3Rpb24odCl7dGhpcy5saXN0ZW5Qcm92aWRlcl89dCx0aGlzLnN5bmNQb2ludFRyZWVfPW5ldyBUaChudWxsKSx0aGlzLnBlbmRpbmdXcml0ZVRyZWVfPXt2aXNpYmxlV3JpdGVzOlNoLmVtcHR5KCksYWxsV3JpdGVzOltdLGxhc3RXcml0ZUlkOi0xfSx0aGlzLnRhZ1RvUXVlcnlNYXA9bmV3IE1hcCx0aGlzLnF1ZXJ5VG9UYWdNYXA9bmV3IE1hcH07ZnVuY3Rpb24gQWwodCxlLG4scixpKXt2YXIgbyxzLGEsdTtyZXR1cm4gbz10LnBlbmRpbmdXcml0ZVRyZWVfLHM9ZSxhPW4sdT1pLHNvKChyPXIpPm8ubGFzdFdyaXRlSWQsIlN0YWNraW5nIGFuIG9sZGVyIHdyaXRlIG9uIHRvcCBvZiBuZXdlciBvbmVzIiksdm9pZCAwPT09dSYmKHU9ITApLG8uYWxsV3JpdGVzLnB1c2goe3BhdGg6cyxzbmFwOmEsd3JpdGVJZDpyLHZpc2libGU6dX0pLHUmJihvLnZpc2libGVXcml0ZXM9Tmgoby52aXNpYmxlV3JpdGVzLHMsYSkpLG8ubGFzdFdyaXRlSWQ9cixpP01sKHQsbmV3IHVoKGVoKCksZSxuKSk6W119ZnVuY3Rpb24ga2wodCxlLG4scil7dmFyIGksbyxzO2k9dC5wZW5kaW5nV3JpdGVUcmVlXyxvPWUscz1uLHNvKChyPXIpPmkubGFzdFdyaXRlSWQsIlN0YWNraW5nIGFuIG9sZGVyIG1lcmdlIG9uIHRvcCBvZiBuZXdlciBvbmVzIiksaS5hbGxXcml0ZXMucHVzaCh7cGF0aDpvLGNoaWxkcmVuOnMsd3JpdGVJZDpyLHZpc2libGU6ITB9KSxpLnZpc2libGVXcml0ZXM9QWgoaS52aXNpYmxlV3JpdGVzLG8scyksaS5sYXN0V3JpdGVJZD1yO249VGguZnJvbU9iamVjdChuKTtyZXR1cm4gTWwodCxuZXcgaGgoZWgoKSxlLG4pKX1mdW5jdGlvbiBSbCh0LGUsbil7dm9pZCAwPT09biYmKG49ITEpO3ZhciByPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTA7bjx0LmFsbFdyaXRlcy5sZW5ndGg7bisrKXt2YXIgcj10LmFsbFdyaXRlc1tuXTtpZihyLndyaXRlSWQ9PT1lKXJldHVybiByfXJldHVybiBudWxsfSh0LnBlbmRpbmdXcml0ZVRyZWVfLGUpO2lmKEZoKHQucGVuZGluZ1dyaXRlVHJlZV8sZSkpe3ZhciBpPW5ldyBUaChudWxsKTtyZXR1cm4gbnVsbCE9ci5zbmFwP2k9aS5zZXQoZXUoKSwhMCk6aWEoci5jaGlsZHJlbixmdW5jdGlvbih0KXtpPWkuc2V0KG5ldyBaYSh0KSwhMCl9KSxNbCh0LG5ldyBpaChyLnBhdGgsaSxuKSl9cmV0dXJuW119ZnVuY3Rpb24gUGwodCxlLG4pe3JldHVybiBNbCh0LG5ldyB1aChuaCgpLGUsbikpfWZ1bmN0aW9uIE9sKG4sdCxlLHIpe3ZhciBpPXQucGF0aCxvPW4uc3luY1BvaW50VHJlZV8uZ2V0KGkpLHM9W107aWYobyYmKCJkZWZhdWx0Ij09PXQucXVlcnlJZGVudGlmaWVyKCl8fFRsKG8sdCkpKXt2YXIgYT1ibChvLHQsZSxyKTswPT09by52aWV3cy5zaXplJiYobi5zeW5jUG9pbnRUcmVlXz1uLnN5bmNQb2ludFRyZWVfLnJlbW92ZShpKSk7ZT1hLnJlbW92ZWQscz1hLmV2ZW50cyxvPS0xIT09ZS5maW5kSW5kZXgoZnVuY3Rpb24odCl7cmV0dXJuIHQuZ2V0UXVlcnlQYXJhbXMoKS5sb2Fkc0FsbERhdGEoKX0pLGE9bi5zeW5jUG9pbnRUcmVlXy5maW5kT25QYXRoKGksZnVuY3Rpb24odCxlKXtyZXR1cm4gRWwoZSl9KTtpZihvJiYhYSl7aT1uLnN5bmNQb2ludFRyZWVfLnN1YnRyZWUoaSk7aWYoIWkuaXNFbXB0eSgpKWZvcih2YXIgdT1pLmZvbGQoZnVuY3Rpb24odCxlLG4pe2lmKGUmJkVsKGUpKXJldHVybltTbChlKV07dmFyIHI9W107cmV0dXJuIGUmJihyPXdsKGUpKSxpYShuLGZ1bmN0aW9uKHQsZSl7cj1yLmNvbmNhdChlKX0pLHJ9KSxjPTA7Yzx1Lmxlbmd0aDsrK2Mpe3ZhciBoPXVbY10sbD1oLnF1ZXJ5LGg9VWwobixoKTtuLmxpc3RlblByb3ZpZGVyXy5zdGFydExpc3RlbmluZyhXbChsKSxqbChuLGwpLGguaGFzaEZuLGgub25Db21wbGV0ZSl9fSFhJiYwPGUubGVuZ3RoJiYhciYmKG8/bi5saXN0ZW5Qcm92aWRlcl8uc3RvcExpc3RlbmluZyhXbCh0KSxudWxsKTplLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9bi5xdWVyeVRvVGFnTWFwLmdldChxbCh0KSk7bi5saXN0ZW5Qcm92aWRlcl8uc3RvcExpc3RlbmluZyhXbCh0KSxlKX0pKSxmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7KytuKXt2YXIgcixpPWVbbl07aS5nZXRRdWVyeVBhcmFtcygpLmxvYWRzQWxsRGF0YSgpfHwocj1xbChpKSxpPXQucXVlcnlUb1RhZ01hcC5nZXQociksdC5xdWVyeVRvVGFnTWFwLmRlbGV0ZShyKSx0LnRhZ1RvUXVlcnlNYXAuZGVsZXRlKGkpKX19KG4sZSl9cmV0dXJuIHN9ZnVuY3Rpb24gRGwodCxlLG4pe3ZhciByPWUucGF0aCxpPW51bGwsbz0hMTt0LnN5bmNQb2ludFRyZWVfLmZvcmVhY2hPblBhdGgocixmdW5jdGlvbih0LGUpe3Q9aHUodCxyKTtpPWl8fF9sKGUsdCksbz1vfHxFbChlKX0pO3ZhciBzPXQuc3luY1BvaW50VHJlZV8uZ2V0KHIpO3M/KG89b3x8RWwocyksaT1pfHxfbChzLGV1KCkpKToocz1uZXcgdmwsdC5zeW5jUG9pbnRUcmVlXz10LnN5bmNQb2ludFRyZWVfLnNldChyLHMpKSxudWxsIT1pP2g9ITA6KGg9ITEsaT11Yy5FTVBUWV9OT0RFLHQuc3luY1BvaW50VHJlZV8uc3VidHJlZShyKS5mb3JlYWNoQ2hpbGQoZnVuY3Rpb24odCxlKXtlPV9sKGUsZXUoKSk7ZSYmKGk9aS51cGRhdGVJbW1lZGlhdGVDaGlsZCh0LGUpKX0pKTt2YXIgYSx1LGM9VGwocyxlKTtjfHxlLmdldFF1ZXJ5UGFyYW1zKCkubG9hZHNBbGxEYXRhKCl8fChhPXFsKGUpLHNvKCF0LnF1ZXJ5VG9UYWdNYXAuaGFzKGEpLCJWaWV3IGRvZXMgbm90IGV4aXN0LCBidXQgd2UgaGF2ZSBhIHRhZyIpLHU9Q2wrKyx0LnF1ZXJ5VG9UYWdNYXAuc2V0KGEsdSksdC50YWdUb1F1ZXJ5TWFwLnNldCh1LGEpKTt2YXIgaD1tbChzLGUsbixNaCh0LnBlbmRpbmdXcml0ZVRyZWVfLHIpLGksaCk7cmV0dXJuIGN8fG98fChzPUlsKHMsZSksaD1oLmNvbmNhdChmdW5jdGlvbih0LGUsbil7dmFyIHI9ZS5wYXRoLGk9amwodCxlKSxuPVVsKHQsbiksbj10Lmxpc3RlblByb3ZpZGVyXy5zdGFydExpc3RlbmluZyhXbChlKSxpLG4uaGFzaEZuLG4ub25Db21wbGV0ZSkscj10LnN5bmNQb2ludFRyZWVfLnN1YnRyZWUocik7aWYoaSlzbyghRWwoci52YWx1ZSksIklmIHdlJ3JlIGFkZGluZyBhIHF1ZXJ5LCBpdCBzaG91bGRuJ3QgYmUgc2hhZG93ZWQiKTtlbHNlIGZvcih2YXIgbz1yLmZvbGQoZnVuY3Rpb24odCxlLG4pe2lmKCFjdSh0KSYmZSYmRWwoZSkpcmV0dXJuW1NsKGUpLnF1ZXJ5XTt2YXIgcj1bXTtyZXR1cm4gZSYmKHI9ci5jb25jYXQod2woZSkubWFwKGZ1bmN0aW9uKHQpe3JldHVybiB0LnF1ZXJ5fSkpKSxpYShuLGZ1bmN0aW9uKHQsZSl7cj1yLmNvbmNhdChlKX0pLHJ9KSxzPTA7czxvLmxlbmd0aDsrK3Mpe3ZhciBhPW9bc107dC5saXN0ZW5Qcm92aWRlcl8uc3RvcExpc3RlbmluZyhXbChhKSxqbCh0LGEpKX1yZXR1cm4gbn0odCxlLHMpKSksaH1mdW5jdGlvbiB4bCh0LG4sZSl7dmFyIHI9dC5wZW5kaW5nV3JpdGVUcmVlXyx0PXQuc3luY1BvaW50VHJlZV8uZmluZE9uUGF0aChuLGZ1bmN0aW9uKHQsZSl7dD1fbChlLGh1KHQsbikpO2lmKHQpcmV0dXJuIHR9KTtyZXR1cm4gcWgocixuLHQsZSwhMCl9ZnVuY3Rpb24gTGwodCxlKXt2YXIgbj1lLnBhdGgscj1udWxsO3Quc3luY1BvaW50VHJlZV8uZm9yZWFjaE9uUGF0aChuLGZ1bmN0aW9uKHQsZSl7dD1odSh0LG4pO3I9cnx8X2woZSx0KX0pO3ZhciBpPXQuc3luY1BvaW50VHJlZV8uZ2V0KG4pO2k/cj1yfHxfbChpLGV1KCkpOihpPW5ldyB2bCx0LnN5bmNQb2ludFRyZWVfPXQuc3luY1BvaW50VHJlZV8uc2V0KG4saSkpO3ZhciBvPW51bGwhPXIscz1vP25ldyBmaChyLCEwLCExKTpudWxsLG89eWwoaSxlLE1oKHQucGVuZGluZ1dyaXRlVHJlZV8sZS5wYXRoKSxvP3MuZ2V0Tm9kZSgpOnVjLkVNUFRZX05PREUsbyk7cmV0dXJuIF9oKG8udmlld0NhY2hlXyl9ZnVuY3Rpb24gTWwodCxlKXtyZXR1cm4gZnVuY3Rpb24gdChlLG4scixpKXt7aWYoY3UoZS5wYXRoKSlyZXR1cm4gRmwoZSxuLHIsaSk7dmFyIG89bi5nZXQoZXUoKSk7bnVsbD09ciYmbnVsbCE9byYmKHI9X2wobyxldSgpKSk7dmFyIHM9W10sYT1udShlLnBhdGgpLHU9ZS5vcGVyYXRpb25Gb3JDaGlsZChhKSxjPW4uY2hpbGRyZW4uZ2V0KGEpO3JldHVybiBjJiZ1JiYobj1yP3IuZ2V0SW1tZWRpYXRlQ2hpbGQoYSk6bnVsbCxhPXpoKGksYSkscz1zLmNvbmNhdCh0KHUsYyxuLGEpKSkscz1vP3MuY29uY2F0KGdsKG8sZSxpLHIpKTpzfX0oZSx0LnN5bmNQb2ludFRyZWVfLG51bGwsTWgodC5wZW5kaW5nV3JpdGVUcmVlXyxldSgpKSl9ZnVuY3Rpb24gRmwoaSx0LG8scyl7dmFyIGU9dC5nZXQoZXUoKSk7bnVsbD09byYmbnVsbCE9ZSYmKG89X2woZSxldSgpKSk7dmFyIGE9W107cmV0dXJuIHQuY2hpbGRyZW4uaW5vcmRlclRyYXZlcnNhbChmdW5jdGlvbih0LGUpe3ZhciBuPW8/by5nZXRJbW1lZGlhdGVDaGlsZCh0KTpudWxsLHI9emgocyx0KSx0PWkub3BlcmF0aW9uRm9yQ2hpbGQodCk7dCYmKGE9YS5jb25jYXQoRmwodCxlLG4scikpKX0pLGE9ZT9hLmNvbmNhdChnbChlLGkscyxvKSk6YX1mdW5jdGlvbiBVbChyLHQpe3ZhciBpPXQucXVlcnksbz1qbChyLGkpO3JldHVybntoYXNoRm46ZnVuY3Rpb24oKXtyZXR1cm4odC52aWV3Q2FjaGVfLnNlcnZlckNhY2hlLmdldE5vZGUoKXx8dWMuRU1QVFlfTk9ERSkuaGFzaCgpfSxvbkNvbXBsZXRlOmZ1bmN0aW9uKHQpe2lmKCJvayI9PT10KXJldHVybiBvP2Z1bmN0aW9uKHQsZSxuKXt2YXIgcj1WbCh0LG4pO2lmKHIpe249Qmwocikscj1uLnBhdGgsbj1uLnF1ZXJ5SWQsZT1odShyLGUpO3JldHVybiBLbCh0LHIsbmV3IHNoKHJoKG4pLGUpKX1yZXR1cm5bXX0ocixpLnBhdGgsbyk6KGU9cixuPWkucGF0aCxNbChlLG5ldyBzaChuaCgpLG4pKSk7dmFyIGUsbix0PWFhKHQsaSk7cmV0dXJuIE9sKHIsaSxudWxsLHQpfX19ZnVuY3Rpb24gamwodCxlKXtlPXFsKGUpO3JldHVybiB0LnF1ZXJ5VG9UYWdNYXAuZ2V0KGUpfWZ1bmN0aW9uIHFsKHQpe3JldHVybiB0LnBhdGgudG9TdHJpbmcoKSsiJCIrdC5xdWVyeUlkZW50aWZpZXIoKX1mdW5jdGlvbiBWbCh0LGUpe3JldHVybiB0LnRhZ1RvUXVlcnlNYXAuZ2V0KGUpfWZ1bmN0aW9uIEJsKHQpe3ZhciBlPXQuaW5kZXhPZigiJCIpO3JldHVybiBzbygtMSE9PWUmJmU8dC5sZW5ndGgtMSwiQmFkIHF1ZXJ5S2V5LiIpLHtxdWVyeUlkOnQuc3Vic3RyKGUrMSkscGF0aDpuZXcgWmEodC5zdWJzdHIoMCxlKSl9fWZ1bmN0aW9uIEtsKHQsZSxuKXt2YXIgcj10LnN5bmNQb2ludFRyZWVfLmdldChlKTtyZXR1cm4gc28ociwiTWlzc2luZyBzeW5jIHBvaW50IGZvciBxdWVyeSB0YWcgdGhhdCB3ZSdyZSB0cmFja2luZyIpLGdsKHIsbixNaCh0LnBlbmRpbmdXcml0ZVRyZWVfLGUpLG51bGwpfWZ1bmN0aW9uIFdsKHQpe3JldHVybiB0LmdldFF1ZXJ5UGFyYW1zKCkubG9hZHNBbGxEYXRhKCkmJiF0LmdldFF1ZXJ5UGFyYW1zKCkuaXNEZWZhdWx0KCk/dC5nZXRSZWYoKTp0fXZhciBIbD0oR2wucHJvdG90eXBlLmdldEltbWVkaWF0ZUNoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgR2wodGhpcy5ub2RlXy5nZXRJbW1lZGlhdGVDaGlsZCh0KSl9LEdsLnByb3RvdHlwZS5ub2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubm9kZV99LEdsKTtmdW5jdGlvbiBHbCh0KXt0aGlzLm5vZGVfPXR9dmFyIHpsPShRbC5wcm90b3R5cGUuZ2V0SW1tZWRpYXRlQ2hpbGQ9ZnVuY3Rpb24odCl7dD11dSh0aGlzLnBhdGhfLHQpO3JldHVybiBuZXcgUWwodGhpcy5zeW5jVHJlZV8sdCl9LFFsLnByb3RvdHlwZS5ub2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHhsKHRoaXMuc3luY1RyZWVfLHRoaXMucGF0aF8pfSxRbCk7ZnVuY3Rpb24gUWwodCxlKXt0aGlzLnN5bmNUcmVlXz10LHRoaXMucGF0aF89ZX12YXIgWWw9ZnVuY3Rpb24odCl7cmV0dXJuKHQ9dHx8e30pLnRpbWVzdGFtcD10LnRpbWVzdGFtcHx8KG5ldyBEYXRlKS5nZXRUaW1lKCksdH0sSmw9ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0JiYib2JqZWN0Ij09dHlwZW9mIHQ/KHNvKCIuc3YiaW4gdCwiVW5leHBlY3RlZCBsZWFmIG5vZGUgb3IgcHJpb3JpdHkgY29udGVudHMiKSwic3RyaW5nIj09dHlwZW9mIHRbIi5zdiJdPyRsKHRbIi5zdiJdLGUsbik6Im9iamVjdCI9PXR5cGVvZiB0WyIuc3YiXT9abCh0WyIuc3YiXSxlKTp2b2lkIHNvKCExLCJVbmV4cGVjdGVkIHNlcnZlciB2YWx1ZTogIitKU09OLnN0cmluZ2lmeSh0LG51bGwsMikpKTp0fSwkbD1mdW5jdGlvbih0LGUsbil7aWYoInRpbWVzdGFtcCI9PT10KXJldHVybiBuLnRpbWVzdGFtcDtzbyghMSwiVW5leHBlY3RlZCBzZXJ2ZXIgdmFsdWU6ICIrdCl9LFpsPWZ1bmN0aW9uKHQsZSxuKXt0Lmhhc093blByb3BlcnR5KCJpbmNyZW1lbnQiKXx8c28oITEsIlVuZXhwZWN0ZWQgc2VydmVyIHZhbHVlOiAiK0pTT04uc3RyaW5naWZ5KHQsbnVsbCwyKSk7dD10LmluY3JlbWVudDsibnVtYmVyIiE9dHlwZW9mIHQmJnNvKCExLCJVbmV4cGVjdGVkIGluY3JlbWVudCB2YWx1ZTogIit0KTtlPWUubm9kZSgpO2lmKHNvKG51bGwhPWUsIkV4cGVjdGVkIENoaWxkcmVuTm9kZS5FTVBUWV9OT0RFIGZvciBudWxscyIpLCFlLmlzTGVhZk5vZGUoKSlyZXR1cm4gdDtlPWUuZ2V0VmFsdWUoKTtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIGU/dDplK3R9LHRmPWZ1bmN0aW9uKHQsZSxuLHIpe3JldHVybiBuZihlLG5ldyB6bChuLHQpLHIpfSxlZj1mdW5jdGlvbih0LGUsbil7cmV0dXJuIG5mKHQsbmV3IEhsKGUpLG4pfTtmdW5jdGlvbiBuZih0LHIsaSl7dmFyIGU9dC5nZXRQcmlvcml0eSgpLnZhbCgpLG49SmwoZSxyLmdldEltbWVkaWF0ZUNoaWxkKCIucHJpb3JpdHkiKSxpKTtpZih0LmlzTGVhZk5vZGUoKSl7dmFyIG89dCxlPUpsKG8uZ2V0VmFsdWUoKSxyLGkpO3JldHVybiBlIT09by5nZXRWYWx1ZSgpfHxuIT09by5nZXRQcmlvcml0eSgpLnZhbCgpP25ldyBRdShlLHBjKG4pKTp0fXZhciB0PXQscz10O3JldHVybiBuIT09dC5nZXRQcmlvcml0eSgpLnZhbCgpJiYocz1zLnVwZGF0ZVByaW9yaXR5KG5ldyBRdShuKSkpLHQuZm9yRWFjaENoaWxkKEp1LGZ1bmN0aW9uKHQsZSl7dmFyIG49bmYoZSxyLmdldEltbWVkaWF0ZUNoaWxkKHQpLGkpO24hPT1lJiYocz1zLnVwZGF0ZUltbWVkaWF0ZUNoaWxkKHQsbikpfSksc312YXIgcmY9ZnVuY3Rpb24odCxlLG4pe3ZvaWQgMD09PXQmJih0PSIiKSx2b2lkIDA9PT1lJiYoZT1udWxsKSx2b2lkIDA9PT1uJiYobj17Y2hpbGRyZW46e30sY2hpbGRDb3VudDowfSksdGhpcy5uYW1lPXQsdGhpcy5wYXJlbnQ9ZSx0aGlzLm5vZGU9bn07ZnVuY3Rpb24gb2YodCxlKXtmb3IodmFyIG49ZSBpbnN0YW5jZW9mIFphP2U6bmV3IFphKGUpLHI9dCxpPW51KG4pO251bGwhPT1pOyl2YXIgbz1EbyhyLm5vZGUuY2hpbGRyZW4saSl8fHtjaGlsZHJlbjp7fSxjaGlsZENvdW50OjB9LHI9bmV3IHJmKGkscixvKSxpPW51KG49aXUobikpO3JldHVybiByfWZ1bmN0aW9uIHNmKHQpe3JldHVybiB0Lm5vZGUudmFsdWV9ZnVuY3Rpb24gYWYodCxlKXt0Lm5vZGUudmFsdWU9ZSxsZih0KX1mdW5jdGlvbiB1Zih0KXtyZXR1cm4gMDx0Lm5vZGUuY2hpbGRDb3VudH1mdW5jdGlvbiBjZihuLHIpe2lhKG4ubm9kZS5jaGlsZHJlbixmdW5jdGlvbih0LGUpe3IobmV3IHJmKHQsbixlKSl9KX1mdW5jdGlvbiBoZih0KXtyZXR1cm4gbmV3IFphKG51bGw9PT10LnBhcmVudD90Lm5hbWU6aGYodC5wYXJlbnQpKyIvIit0Lm5hbWUpfWZ1bmN0aW9uIGxmKHQpe3ZhciBlLG4scixpO251bGwhPT10LnBhcmVudCYmKGU9dC5wYXJlbnQsbj10Lm5hbWUsaT1mdW5jdGlvbih0KXtyZXR1cm4gdm9pZCAwPT09c2YodCkmJiF1Zih0KX0ocj10KSx0PU9vKGUubm9kZS5jaGlsZHJlbixuKSxpJiZ0PyhkZWxldGUgZS5ub2RlLmNoaWxkcmVuW25dLGUubm9kZS5jaGlsZENvdW50LS0sbGYoZSkpOml8fHR8fChlLm5vZGUuY2hpbGRyZW5bbl09ci5ub2RlLGUubm9kZS5jaGlsZENvdW50KyssbGYoZSkpKX1mdW5jdGlvbiBmZih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQmJjAhPT10Lmxlbmd0aCYmIUlmLnRlc3QodCl9ZnVuY3Rpb24gcGYodCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0JiYwIT09dC5sZW5ndGgmJiFUZi50ZXN0KHQpfWZ1bmN0aW9uIGRmKHQpe3JldHVybiBudWxsPT09dHx8InN0cmluZyI9PXR5cGVvZiB0fHwibnVtYmVyIj09dHlwZW9mIHQmJiFVcyh0KXx8dCYmIm9iamVjdCI9PXR5cGVvZiB0JiZPbyh0LCIuc3YiKX1mdW5jdGlvbiB2Zih0LGUsbixyLGkpe2kmJnZvaWQgMD09PW58fFNmKFdvKHQsZSxpKSxuLHIpfWZ1bmN0aW9uIGdmKHQsZSxuLHIsaSl7aWYoIWl8fHZvaWQgMCE9PW4pe3ZhciBvPVdvKHQsZSxpKTtpZighbnx8Im9iamVjdCIhPXR5cGVvZiBufHxBcnJheS5pc0FycmF5KG4pKXRocm93IG5ldyBFcnJvcihvKyIgbXVzdCBiZSBhbiBvYmplY3QgY29udGFpbmluZyB0aGUgY2hpbGRyZW4gdG8gcmVwbGFjZS4iKTt2YXIgcz1bXTtpYShuLGZ1bmN0aW9uKHQsZSl7dD1uZXcgWmEodCk7aWYoU2YobyxlLHV1KHIsdCkpLCIucHJpb3JpdHkiPT09b3UodCkmJiFkZihlKSl0aHJvdyBuZXcgRXJyb3IobysiY29udGFpbnMgYW4gaW52YWxpZCB2YWx1ZSBmb3IgJyIrdC50b1N0cmluZygpKyInLCB3aGljaCBtdXN0IGJlIGEgdmFsaWQgRmlyZWJhc2UgcHJpb3JpdHkgKGEgc3RyaW5nLCBmaW5pdGUgbnVtYmVyLCBzZXJ2ZXIgdmFsdWUsIG9yIG51bGwpLiIpO3MucHVzaCh0KX0pLGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspZm9yKHZhciByLGk9c3Uocj1lW25dKSxvPTA7bzxpLmxlbmd0aDtvKyspaWYoKCIucHJpb3JpdHkiIT09aVtvXXx8byE9PWkubGVuZ3RoLTEpJiYhZmYoaVtvXSkpdGhyb3cgbmV3IEVycm9yKHQrImNvbnRhaW5zIGFuIGludmFsaWQga2V5ICgiK2lbb10rIikgaW4gcGF0aCAiK3IudG9TdHJpbmcoKSsnLiBLZXlzIG11c3QgYmUgbm9uLWVtcHR5IHN0cmluZ3MgYW5kIGNhblwndCBjb250YWluICIuIiwgIiMiLCAiJCIsICIvIiwgIlsiLCBvciAiXSInKTtlLnNvcnQobHUpO3ZhciBzPW51bGw7Zm9yKG49MDtuPGUubGVuZ3RoO24rKyl7aWYocj1lW25dLG51bGwhPT1zJiZwdShzLHIpKXRocm93IG5ldyBFcnJvcih0KyJjb250YWlucyBhIHBhdGggIitzLnRvU3RyaW5nKCkrIiB0aGF0IGlzIGFuY2VzdG9yIG9mIGFub3RoZXIgcGF0aCAiK3IudG9TdHJpbmcoKSk7cz1yfX0obyxzKX19ZnVuY3Rpb24geWYodCxlLG4scil7aWYoIXJ8fHZvaWQgMCE9PW4pe2lmKFVzKG4pKXRocm93IG5ldyBFcnJvcihXbyh0LGUscikrImlzICIrbi50b1N0cmluZygpKyIsIGJ1dCBtdXN0IGJlIGEgdmFsaWQgRmlyZWJhc2UgcHJpb3JpdHkgKGEgc3RyaW5nLCBmaW5pdGUgbnVtYmVyLCBzZXJ2ZXIgdmFsdWUsIG9yIG51bGwpLiIpO2lmKCFkZihuKSl0aHJvdyBuZXcgRXJyb3IoV28odCxlLHIpKyJtdXN0IGJlIGEgdmFsaWQgRmlyZWJhc2UgcHJpb3JpdHkgKGEgc3RyaW5nLCBmaW5pdGUgbnVtYmVyLCBzZXJ2ZXIgdmFsdWUsIG9yIG51bGwpLiIpfX1mdW5jdGlvbiBtZih0LGUsbixyKXtpZighcnx8dm9pZCAwIT09bilzd2l0Y2gobil7Y2FzZSJ2YWx1ZSI6Y2FzZSJjaGlsZF9hZGRlZCI6Y2FzZSJjaGlsZF9yZW1vdmVkIjpjYXNlImNoaWxkX2NoYW5nZWQiOmNhc2UiY2hpbGRfbW92ZWQiOmJyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKFdvKHQsZSxyKSsnbXVzdCBiZSBhIHZhbGlkIGV2ZW50IHR5cGUgPSAidmFsdWUiLCAiY2hpbGRfYWRkZWQiLCAiY2hpbGRfcmVtb3ZlZCIsICJjaGlsZF9jaGFuZ2VkIiwgb3IgImNoaWxkX21vdmVkIi4nKX19ZnVuY3Rpb24gYmYodCxlLG4scil7aWYoIShyJiZ2b2lkIDA9PT1ufHxmZihuKSkpdGhyb3cgbmV3IEVycm9yKFdvKHQsZSxyKSsnd2FzIGFuIGludmFsaWQga2V5ID0gIicrbisnIi4gIEZpcmViYXNlIGtleXMgbXVzdCBiZSBub24tZW1wdHkgc3RyaW5ncyBhbmQgY2FuXCd0IGNvbnRhaW4gIi4iLCAiIyIsICIkIiwgIi8iLCAiWyIsIG9yICJdIikuJyl9ZnVuY3Rpb24gd2YodCxlLG4scil7aWYoIShyJiZ2b2lkIDA9PT1ufHxwZihuKSkpdGhyb3cgbmV3IEVycm9yKFdvKHQsZSxyKSsnd2FzIGFuIGludmFsaWQgcGF0aCA9ICInK24rJyIuIFBhdGhzIG11c3QgYmUgbm9uLWVtcHR5IHN0cmluZ3MgYW5kIGNhblwndCBjb250YWluICIuIiwgIiMiLCAiJCIsICJbIiwgb3IgIl0iJyl9ZnVuY3Rpb24gX2YodCxlKXtpZigiLmluZm8iPT09bnUoZSkpdGhyb3cgbmV3IEVycm9yKHQrIiBmYWlsZWQgPSBDYW4ndCBtb2RpZnkgZGF0YSB1bmRlciAvLmluZm8vIil9dmFyIElmPS9bXFtcXS4jJFwvXHUwMDAwLVx1MDAxRlx1MDA3Rl0vLFRmPS9bXFtcXS4jJFx1MDAwMC1cdTAwMUZcdTAwN0ZdLyxFZj0xMDQ4NTc2MCxTZj1mdW5jdGlvbihyLHQsZSl7dmFyIGk9ZSBpbnN0YW5jZW9mIFphP25ldyBkdShlLHIpOmU7aWYodm9pZCAwPT09dCl0aHJvdyBuZXcgRXJyb3IocisiY29udGFpbnMgdW5kZWZpbmVkICIrZ3UoaSkpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcihyKyJjb250YWlucyBhIGZ1bmN0aW9uICIrZ3UoaSkrIiB3aXRoIGNvbnRlbnRzID0gIit0LnRvU3RyaW5nKCkpO2lmKFVzKHQpKXRocm93IG5ldyBFcnJvcihyKyJjb250YWlucyAiK3QudG9TdHJpbmcoKSsiICIrZ3UoaSkpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmdC5sZW5ndGg+RWYvMyYmem8odCk+RWYpdGhyb3cgbmV3IEVycm9yKHIrImNvbnRhaW5zIGEgc3RyaW5nIGdyZWF0ZXIgdGhhbiAiK0VmKyIgdXRmOCBieXRlcyAiK2d1KGkpKyIgKCciK3Quc3Vic3RyaW5nKDAsNTApKyIuLi4nKSIpO2lmKHQmJiJvYmplY3QiPT10eXBlb2YgdCl7dmFyIG89ITEscz0hMTtpZihpYSh0LGZ1bmN0aW9uKHQsZSl7aWYoIi52YWx1ZSI9PT10KW89ITA7ZWxzZSBpZigiLnByaW9yaXR5IiE9PXQmJiIuc3YiIT09dCYmKHM9ITAsIWZmKHQpKSl0aHJvdyBuZXcgRXJyb3IocisiIGNvbnRhaW5zIGFuIGludmFsaWQga2V5ICgiK3QrIikgIitndShpKSsnLiAgS2V5cyBtdXN0IGJlIG5vbi1lbXB0eSBzdHJpbmdzIGFuZCBjYW5cJ3QgY29udGFpbiAiLiIsICIjIiwgIiQiLCAiLyIsICJbIiwgb3IgIl0iJyk7dmFyIG47bj10LDA8KHQ9aSkucGFydHNfLmxlbmd0aCYmKHQuYnl0ZUxlbmd0aF8rPTEpLHQucGFydHNfLnB1c2gobiksdC5ieXRlTGVuZ3RoXys9em8obiksdnUodCksU2YocixlLGkpLGU9KHQ9aSkucGFydHNfLnBvcCgpLHQuYnl0ZUxlbmd0aF8tPXpvKGUpLDA8dC5wYXJ0c18ubGVuZ3RoJiYtLXQuYnl0ZUxlbmd0aF99KSxvJiZzKXRocm93IG5ldyBFcnJvcihyKycgY29udGFpbnMgIi52YWx1ZSIgY2hpbGQgJytndShpKSsiIGluIGFkZGl0aW9uIHRvIGFjdHVhbCBjaGlsZHJlbi4iKX19LENmPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1uLnBhdGgudG9TdHJpbmcoKTtpZigic3RyaW5nIiE9dHlwZW9mIG4ucmVwb0luZm8uaG9zdHx8MD09PW4ucmVwb0luZm8uaG9zdC5sZW5ndGh8fCFmZihuLnJlcG9JbmZvLm5hbWVzcGFjZSkmJiJsb2NhbGhvc3QiIT09bi5yZXBvSW5mby5ob3N0LnNwbGl0KCI6IilbMF18fDAhPT1yLmxlbmd0aCYmKHI9KHI9cikmJnIucmVwbGFjZSgvXlwvKlwuaW5mbyhcL3wkKS8sIi8iKSwhcGYocikpKXRocm93IG5ldyBFcnJvcihXbyh0LGUsITEpKydtdXN0IGJlIGEgdmFsaWQgZmlyZWJhc2UgVVJMIGFuZCB0aGUgcGF0aCBjYW5cJ3QgY29udGFpbiAiLiIsICIjIiwgIiQiLCAiWyIsIG9yICJdIi4nKX0sTmY9ZnVuY3Rpb24oKXt0aGlzLmV2ZW50TGlzdHNfPVtdLHRoaXMucmVjdXJzaW9uRGVwdGhfPTB9O2Z1bmN0aW9uIEFmKHQsZSl7Zm9yKHZhciBuPW51bGwscj0wO3I8ZS5sZW5ndGg7cisrKXt2YXIgaT1lW3JdLG89aS5nZXRQYXRoKCk7bnVsbD09PW58fGZ1KG8sbi5wYXRoKXx8KHQuZXZlbnRMaXN0c18ucHVzaChuKSxuPW51bGwpLChuPW51bGw9PT1uP3tldmVudHM6W10scGF0aDpvfTpuKS5ldmVudHMucHVzaChpKX1uJiZ0LmV2ZW50TGlzdHNfLnB1c2gobil9ZnVuY3Rpb24ga2YodCxlLG4pe0FmKHQsbiksUGYodCxmdW5jdGlvbih0KXtyZXR1cm4gZnUodCxlKX0pfWZ1bmN0aW9uIFJmKHQsZSxuKXtBZih0LG4pLFBmKHQsZnVuY3Rpb24odCl7cmV0dXJuIHB1KHQsZSl8fHB1KGUsdCl9KX1mdW5jdGlvbiBQZih0LGUpe3QucmVjdXJzaW9uRGVwdGhfKys7Zm9yKHZhciBuPSEwLHI9MDtyPHQuZXZlbnRMaXN0c18ubGVuZ3RoO3IrKyl7dmFyIGk9dC5ldmVudExpc3RzX1tyXTtpJiYoZShpLnBhdGgpPyhmdW5jdGlvbih0KXtmb3IodmFyIGU9MDtlPHQuZXZlbnRzLmxlbmd0aDtlKyspe3ZhciBuLHI9dC5ldmVudHNbZV07bnVsbCE9PXImJih0LmV2ZW50c1tlXT1udWxsLG49ci5nZXRFdmVudFJ1bm5lcigpLFFzJiZYcygiZXZlbnQ6ICIrci50b1N0cmluZygpKSxmYShuKSl9fSh0LmV2ZW50TGlzdHNfW3JdKSx0LmV2ZW50TGlzdHNfW3JdPW51bGwpOm49ITEpfW4mJih0LmV2ZW50TGlzdHNfPVtdKSx0LnJlY3Vyc2lvbkRlcHRoXy0tfXZhciBPZj0icmVwb19pbnRlcnJ1cHQiLERmPTI1LHhmPShMZi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4odGhpcy5yZXBvSW5mb18uc2VjdXJlPyJodHRwczovLyI6Imh0dHA6Ly8iKSt0aGlzLnJlcG9JbmZvXy5ob3N0fSxMZik7ZnVuY3Rpb24gTGYodCxlLG4scil7dGhpcy5yZXBvSW5mb189dCx0aGlzLmZvcmNlUmVzdENsaWVudF89ZSx0aGlzLmFwcD1uLHRoaXMuYXV0aFRva2VuUHJvdmlkZXJfPXIsdGhpcy5kYXRhVXBkYXRlQ291bnQ9MCx0aGlzLnN0YXRzTGlzdGVuZXJfPW51bGwsdGhpcy5ldmVudFF1ZXVlXz1uZXcgTmYsdGhpcy5uZXh0V3JpdGVJZF89MSx0aGlzLmludGVyY2VwdFNlcnZlckRhdGFDYWxsYmFja189bnVsbCx0aGlzLm9uRGlzY29ubmVjdF89emMoKSx0aGlzLnRyYW5zYWN0aW9uUXVldWVUcmVlXz1uZXcgcmYsdGhpcy5wZXJzaXN0ZW50Q29ubmVjdGlvbl89bnVsbCx0aGlzLmtleT10aGlzLnJlcG9JbmZvXy50b1VSTFN0cmluZygpfWZ1bmN0aW9uIE1mKHMpe2lmKHMuc3RhdHNfPU5hKHMucmVwb0luZm9fKSxzLmZvcmNlUmVzdENsaWVudF98fDA8PSgib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93Lm5hdmlnYXRvciYmd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnR8fCIiKS5zZWFyY2goL2dvb2dsZWJvdHxnb29nbGUgd2VibWFzdGVyIHRvb2xzfGJpbmdib3R8eWFob28hIHNsdXJwfGJhaWR1c3BpZGVyfHlhbmRleGJvdHxkdWNrZHVja2JvdC9pKSlzLnNlcnZlcl89bmV3IEtjKHMucmVwb0luZm9fLGZ1bmN0aW9uKHQsZSxuLHIpe2pmKHMsdCxlLG4scil9LHMuYXV0aFRva2VuUHJvdmlkZXJfKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHFmKHMsITApfSwwKTtlbHNle3ZhciB0PXMuYXBwLm9wdGlvbnMuZGF0YWJhc2VBdXRoVmFyaWFibGVPdmVycmlkZTtpZihudWxsIT10KXtpZigib2JqZWN0IiE9dHlwZW9mIHQpdGhyb3cgbmV3IEVycm9yKCJPbmx5IG9iamVjdHMgYXJlIHN1cHBvcnRlZCBmb3Igb3B0aW9uIGRhdGFiYXNlQXV0aFZhcmlhYmxlT3ZlcnJpZGUiKTt0cnl7Um8odCl9Y2F0Y2godCl7dGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGF1dGhPdmVycmlkZSBwcm92aWRlZDogIit0KX19cy5wZXJzaXN0ZW50Q29ubmVjdGlvbl89bmV3IFR1KHMucmVwb0luZm9fLHMuYXBwLm9wdGlvbnMuYXBwSWQsZnVuY3Rpb24odCxlLG4scil7amYocyx0LGUsbixyKX0sZnVuY3Rpb24odCl7cWYocyx0KX0sZnVuY3Rpb24odCl7dmFyIG47bj1zLGlhKHQsZnVuY3Rpb24odCxlKXtWZihuLHQsZSl9KX0scy5hdXRoVG9rZW5Qcm92aWRlcl8sdCkscy5zZXJ2ZXJfPXMucGVyc2lzdGVudENvbm5lY3Rpb25ffXZhciBlLG47cy5hdXRoVG9rZW5Qcm92aWRlcl8uYWRkVG9rZW5DaGFuZ2VMaXN0ZW5lcihmdW5jdGlvbih0KXtzLnNlcnZlcl8ucmVmcmVzaEF1dGhUb2tlbih0KX0pLHMuc3RhdHNSZXBvcnRlcl89KGU9cy5yZXBvSW5mb18sbj1mdW5jdGlvbigpe3JldHVybiBuZXcgWmMocy5zdGF0c18scy5zZXJ2ZXJfKX0sZT1lLnRvU3RyaW5nKCksQ2FbZV18fChDYVtlXT1uKCkpLENhW2VdKSxzLmluZm9EYXRhXz1uZXcgSGMscy5pbmZvU3luY1RyZWVfPW5ldyBObCh7c3RhcnRMaXN0ZW5pbmc6ZnVuY3Rpb24odCxlLG4scil7dmFyIGk9W10sbz1zLmluZm9EYXRhXy5nZXROb2RlKHQucGF0aCk7cmV0dXJuIG8uaXNFbXB0eSgpfHwoaT1QbChzLmluZm9TeW5jVHJlZV8sdC5wYXRoLG8pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtyKCJvayIpfSwwKSksaX0sc3RvcExpc3RlbmluZzpmdW5jdGlvbigpe319KSxWZihzLCJjb25uZWN0ZWQiLCExKSxzLnNlcnZlclN5bmNUcmVlXz1uZXcgTmwoe3N0YXJ0TGlzdGVuaW5nOmZ1bmN0aW9uKG4sdCxlLHIpe3JldHVybiBzLnNlcnZlcl8ubGlzdGVuKG4sZSx0LGZ1bmN0aW9uKHQsZSl7ZT1yKHQsZSk7UmYocy5ldmVudFF1ZXVlXyxuLnBhdGgsZSl9KSxbXX0sc3RvcExpc3RlbmluZzpmdW5jdGlvbih0LGUpe3Muc2VydmVyXy51bmxpc3Rlbih0LGUpfX0pfWZ1bmN0aW9uIEZmKHQpe3Q9dC5pbmZvRGF0YV8uZ2V0Tm9kZShuZXcgWmEoIi5pbmZvL3NlcnZlclRpbWVPZmZzZXQiKSkudmFsKCl8fDA7cmV0dXJuKG5ldyBEYXRlKS5nZXRUaW1lKCkrdH1mdW5jdGlvbiBVZih0KXtyZXR1cm4gWWwoe3RpbWVzdGFtcDpGZih0KX0pfWZ1bmN0aW9uIGpmKHQsZSxuLHIsaSl7dC5kYXRhVXBkYXRlQ291bnQrKzt2YXIgbz1uZXcgWmEoZSk7bj10LmludGVyY2VwdFNlcnZlckRhdGFDYWxsYmFja18/dC5pbnRlcmNlcHRTZXJ2ZXJEYXRhQ2FsbGJhY2tfKGUsbik6bjt2YXIgcyxhLHUsYz1bXSxoPW87MDwoYz1pP3I/KHM9TG8obixmdW5jdGlvbih0KXtyZXR1cm4gcGModCl9KSxmdW5jdGlvbih0LGUsbixyKXt2YXIgaT1WbCh0LHIpO2lmKGkpe3I9QmwoaSksaT1yLnBhdGgscj1yLnF1ZXJ5SWQsZT1odShpLGUpLG49VGguZnJvbU9iamVjdChuKTtyZXR1cm4gS2wodCxpLG5ldyBoaChyaChyKSxlLG4pKX1yZXR1cm5bXX0odC5zZXJ2ZXJTeW5jVHJlZV8sbyxzLGkpKTooZT1wYyhuKSxzPXQuc2VydmVyU3luY1RyZWVfLGE9byx1PWUsbnVsbD09KGk9VmwocyxlPWkpKT9bXTooZT1CbChpKSxpPWUucGF0aCxlPWUucXVlcnlJZCxhPWh1KGksYSksS2wocyxpLG5ldyB1aChyaChlKSxhLHUpKSkpOnI/KGE9TG8obixmdW5jdGlvbih0KXtyZXR1cm4gcGModCl9KSx1PXQuc2VydmVyU3luY1RyZWVfLHI9byxhPWEsYT1UaC5mcm9tT2JqZWN0KGEpLE1sKHUsbmV3IGhoKG5oKCkscixhKSkpOihuPXBjKG4pLFBsKHQuc2VydmVyU3luY1RyZWVfLG8sbikpKS5sZW5ndGgmJihoPSRmKHQsbykpLFJmKHQuZXZlbnRRdWV1ZV8saCxjKX1mdW5jdGlvbiBxZih0LGUpe1ZmKHQsImNvbm5lY3RlZCIsZSksITE9PT1lJiZmdW5jdGlvbihuKXtRZihuLCJvbkRpc2Nvbm5lY3RFdmVudHMiKTt2YXIgcj1VZihuKSxpPXpjKCk7WWMobi5vbkRpc2Nvbm5lY3RfLGV1KCksZnVuY3Rpb24odCxlKXtlPXRmKHQsZSxuLnNlcnZlclN5bmNUcmVlXyxyKTtRYyhpLHQsZSl9KTt2YXIgbz1bXTtZYyhpLGV1KCksZnVuY3Rpb24odCxlKXtvPW8uY29uY2F0KFBsKG4uc2VydmVyU3luY1RyZWVfLHQsZSkpO3Q9bnAobix0KTskZihuLHQpfSksbi5vbkRpc2Nvbm5lY3RfPXpjKCksUmYobi5ldmVudFF1ZXVlXyxldSgpLG8pfSh0KX1mdW5jdGlvbiBWZih0LGUsbil7ZT1uZXcgWmEoIi8uaW5mby8iK2UpLG49cGMobik7dC5pbmZvRGF0YV8udXBkYXRlU25hcHNob3QoZSxuKTtuPVBsKHQuaW5mb1N5bmNUcmVlXyxlLG4pO1JmKHQuZXZlbnRRdWV1ZV8sZSxuKX1mdW5jdGlvbiBCZih0KXtyZXR1cm4gdC5uZXh0V3JpdGVJZF8rK31mdW5jdGlvbiBLZihyLGksdCxlLG8pe1FmKHIsInNldCIse3BhdGg6aS50b1N0cmluZygpLHZhbHVlOnQscHJpb3JpdHk6ZX0pO3ZhciBuPVVmKHIpLHQ9cGModCxlKSxlPXhsKHIuc2VydmVyU3luY1RyZWVfLGkpLG49ZWYodCxlLG4pLHM9QmYociksbj1BbChyLnNlcnZlclN5bmNUcmVlXyxpLG4scywhMCk7QWYoci5ldmVudFF1ZXVlXyxuKSxyLnNlcnZlcl8ucHV0KGkudG9TdHJpbmcoKSx0LnZhbCghMCksZnVuY3Rpb24odCxlKXt2YXIgbj0ib2siPT09dDtufHxacygic2V0IGF0ICIraSsiIGZhaWxlZDogIit0KTtuPVJsKHIuc2VydmVyU3luY1RyZWVfLHMsIW4pO1JmKHIuZXZlbnRRdWV1ZV8saSxuKSxZZigwLG8sdCxlKX0pO3Q9bnAocixpKTskZihyLHQpLFJmKHIuZXZlbnRRdWV1ZV8sdCxbXSl9ZnVuY3Rpb24gV2YobixyLGkpe24uc2VydmVyXy5vbkRpc2Nvbm5lY3RDYW5jZWwoci50b1N0cmluZygpLGZ1bmN0aW9uKHQsZSl7Im9rIj09PXQmJiFmdW5jdGlvbiB0KG4sZSl7aWYoY3UoZSkpcmV0dXJuIG4udmFsdWU9bnVsbCxuLmNoaWxkcmVuLmNsZWFyKCksITA7aWYobnVsbCE9PW4udmFsdWUpe2lmKG4udmFsdWUuaXNMZWFmTm9kZSgpKXJldHVybiExO3ZhciByPW4udmFsdWU7cmV0dXJuIG4udmFsdWU9bnVsbCxyLmZvckVhY2hDaGlsZChKdSxmdW5jdGlvbih0LGUpe1FjKG4sbmV3IFphKHQpLGUpfSksdChuLGUpfWlmKDA8bi5jaGlsZHJlbi5zaXplKXJldHVybiByPW51KGUpLGU9aXUoZSksbi5jaGlsZHJlbi5oYXMocikmJnQobi5jaGlsZHJlbi5nZXQociksZSkmJm4uY2hpbGRyZW4uZGVsZXRlKHIpLDA9PT1uLmNoaWxkcmVuLnNpemU7cmV0dXJuITB9KG4ub25EaXNjb25uZWN0XyxyKSxZZigwLGksdCxlKX0pfWZ1bmN0aW9uIEhmKG4scix0LGkpe3ZhciBvPXBjKHQpO24uc2VydmVyXy5vbkRpc2Nvbm5lY3RQdXQoci50b1N0cmluZygpLG8udmFsKCEwKSxmdW5jdGlvbih0LGUpeyJvayI9PT10JiZRYyhuLm9uRGlzY29ubmVjdF8scixvKSxZZigwLGksdCxlKX0pfWZ1bmN0aW9uIEdmKHQsZSxuKXtuPSIuaW5mbyI9PT1udShlLnBhdGgpP0RsKHQuaW5mb1N5bmNUcmVlXyxlLG4pOkRsKHQuc2VydmVyU3luY1RyZWVfLGUsbik7a2YodC5ldmVudFF1ZXVlXyxlLnBhdGgsbil9ZnVuY3Rpb24gemYodCl7dC5wZXJzaXN0ZW50Q29ubmVjdGlvbl8mJnQucGVyc2lzdGVudENvbm5lY3Rpb25fLmludGVycnVwdChPZil9ZnVuY3Rpb24gUWYodCl7Zm9yKHZhciBlPVtdLG49MTtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKWVbbi0xXT1hcmd1bWVudHNbbl07dmFyIHI9IiI7dC5wZXJzaXN0ZW50Q29ubmVjdGlvbl8mJihyPXQucGVyc2lzdGVudENvbm5lY3Rpb25fLmlkKyI6IiksWHMuYXBwbHkodm9pZCAwLG5vKFtyXSxlbyhlKSkpfWZ1bmN0aW9uIFlmKHQsbixyLGkpe24mJmZhKGZ1bmN0aW9uKCl7dmFyIHQsZTsib2siPT09cj9uKG51bGwpOihlPXQ9KHJ8fCJlcnJvciIpLnRvVXBwZXJDYXNlKCksaSYmKGUrPSI6ICIraSksKGU9bmV3IEVycm9yKGUpKS5jb2RlPXQsbihlKSl9KX1mdW5jdGlvbiBYZih0LGUsbil7cmV0dXJuIHhsKHQuc2VydmVyU3luY1RyZWVfLGUsbil8fHVjLkVNUFRZX05PREV9ZnVuY3Rpb24gSmYoZSx0KXt2YXIgbjsodD12b2lkIDA9PT10P2UudHJhbnNhY3Rpb25RdWV1ZVRyZWVfOnQpfHxlcChlLHQpLHNmKHQpPyhuPXRwKGUsdCksc28oMDxuLmxlbmd0aCwiU2VuZGluZyB6ZXJvIGxlbmd0aCB0cmFuc2FjdGlvbiBxdWV1ZSIpLG4uZXZlcnkoZnVuY3Rpb24odCl7cmV0dXJuIDA9PT10LnN0YXR1c30pJiZmdW5jdGlvbihpLG8scyl7Zm9yKHZhciB0PXMubWFwKGZ1bmN0aW9uKHQpe3JldHVybiB0LmN1cnJlbnRXcml0ZUlkfSksZT1YZihpLG8sdCksbj1lLHQ9ZS5oYXNoKCkscj0wO3I8cy5sZW5ndGg7cisrKXt2YXIgYT1zW3JdO3NvKDA9PT1hLnN0YXR1cywidHJ5VG9TZW5kVHJhbnNhY3Rpb25RdWV1ZV86IGl0ZW1zIGluIHF1ZXVlIHNob3VsZCBhbGwgYmUgcnVuLiIpLGEuc3RhdHVzPTEsYS5yZXRyeUNvdW50Kys7dmFyIHU9aHUobyxhLnBhdGgpO249bi51cGRhdGVDaGlsZCh1LGEuY3VycmVudE91dHB1dFNuYXBzaG90UmF3KX12YXIgZT1uLnZhbCghMCksYz1vO2kuc2VydmVyXy5wdXQoYy50b1N0cmluZygpLGUsZnVuY3Rpb24odCl7UWYoaSwidHJhbnNhY3Rpb24gcHV0IHJlc3BvbnNlIix7cGF0aDpjLnRvU3RyaW5nKCksc3RhdHVzOnR9KTt2YXIgZT1bXTtpZigib2siPT09dCl7Zm9yKHZhciBuPVtdLHI9MDtyPHMubGVuZ3RoO3IrKykhZnVuY3Rpb24odCl7c1t0XS5zdGF0dXM9MixlPWUuY29uY2F0KFJsKGkuc2VydmVyU3luY1RyZWVfLHNbdF0uY3VycmVudFdyaXRlSWQpKSxzW3RdLm9uQ29tcGxldGUmJm4ucHVzaChmdW5jdGlvbigpe3JldHVybiBzW3RdLm9uQ29tcGxldGUobnVsbCwhMCxzW3RdLmN1cnJlbnRPdXRwdXRTbmFwc2hvdFJlc29sdmVkKX0pLHNbdF0udW53YXRjaGVyKCl9KHIpO2VwKGksb2YoaS50cmFuc2FjdGlvblF1ZXVlVHJlZV8sbykpLEpmKGksaS50cmFuc2FjdGlvblF1ZXVlVHJlZV8pLFJmKGkuZXZlbnRRdWV1ZV8sbyxlKTtmb3Iocj0wO3I8bi5sZW5ndGg7cisrKWZhKG5bcl0pfWVsc2V7aWYoImRhdGFzdGFsZSI9PT10KWZvcihyPTA7cjxzLmxlbmd0aDtyKyspMz09PXNbcl0uc3RhdHVzP3Nbcl0uc3RhdHVzPTQ6c1tyXS5zdGF0dXM9MDtlbHNle1pzKCJ0cmFuc2FjdGlvbiBhdCAiK2MudG9TdHJpbmcoKSsiIGZhaWxlZDogIit0KTtmb3Iocj0wO3I8cy5sZW5ndGg7cisrKXNbcl0uc3RhdHVzPTQsc1tyXS5hYm9ydFJlYXNvbj10fSRmKGksbyl9fSx0KX0oZSxoZih0KSxuKSk6dWYodCkmJmNmKHQsZnVuY3Rpb24odCl7SmYoZSx0KX0pfWZ1bmN0aW9uICRmKHQsZSl7dmFyIG49WmYodCxlKSxlPWhmKG4pO3JldHVybiBmdW5jdGlvbih1LGMsaCl7aWYoMD09PWMubGVuZ3RoKXJldHVybjtmb3IodmFyIGw9W10sZj1bXSxwPWMuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiAwPT09dC5zdGF0dXN9KS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQuY3VycmVudFdyaXRlSWR9KSx0PTA7dDxjLmxlbmd0aDt0KyspIWZ1bmN0aW9uKHQpe3ZhciBlLG4scixpLG89Y1t0XSxzPWh1KGgsby5wYXRoKSxhPSExO3NvKG51bGwhPT1zLCJyZXJ1blRyYW5zYWN0aW9uc1VuZGVyTm9kZV86IHJlbGF0aXZlUGF0aCBzaG91bGQgbm90IGJlIG51bGwuIiksND09PW8uc3RhdHVzPyhhPSEwLGU9by5hYm9ydFJlYXNvbixmPWYuY29uY2F0KFJsKHUuc2VydmVyU3luY1RyZWVfLG8uY3VycmVudFdyaXRlSWQsITApKSk6MD09PW8uc3RhdHVzJiYoZj1vLnJldHJ5Q291bnQ+PURmPyhhPSEwLGU9Im1heHJldHJ5IixmLmNvbmNhdChSbCh1LnNlcnZlclN5bmNUcmVlXyxvLmN1cnJlbnRXcml0ZUlkLCEwKSkpOihuPVhmKHUsby5wYXRoLHApLG8uY3VycmVudElucHV0U25hcHNob3Q9bix2b2lkIDAhPT0oaT1jW3RdLnVwZGF0ZShuLnZhbCgpKSk/KFNmKCJ0cmFuc2FjdGlvbiBmYWlsZWQ6IERhdGEgcmV0dXJuZWQgIixpLG8ucGF0aCkscj1wYyhpKSwib2JqZWN0Ij09dHlwZW9mIGkmJm51bGwhPWkmJk9vKGksIi5wcmlvcml0eSIpfHwocj1yLnVwZGF0ZVByaW9yaXR5KG4uZ2V0UHJpb3JpdHkoKSkpLHM9by5jdXJyZW50V3JpdGVJZCxpPVVmKHUpLGk9ZWYocixuLGkpLG8uY3VycmVudE91dHB1dFNuYXBzaG90UmF3PXIsby5jdXJyZW50T3V0cHV0U25hcHNob3RSZXNvbHZlZD1pLG8uY3VycmVudFdyaXRlSWQ9QmYodSkscC5zcGxpY2UocC5pbmRleE9mKHMpLDEpLChmPWYuY29uY2F0KEFsKHUuc2VydmVyU3luY1RyZWVfLG8ucGF0aCxpLG8uY3VycmVudFdyaXRlSWQsby5hcHBseUxvY2FsbHkpKSkuY29uY2F0KFJsKHUuc2VydmVyU3luY1RyZWVfLHMsITApKSk6KGE9ITAsZT0ibm9kYXRhIixmLmNvbmNhdChSbCh1LnNlcnZlclN5bmNUcmVlXyxvLmN1cnJlbnRXcml0ZUlkLCEwKSkpKSksUmYodS5ldmVudFF1ZXVlXyxoLGYpLGY9W10sYSYmKGNbdF0uc3RhdHVzPTIsYT1jW3RdLnVud2F0Y2hlcixzZXRUaW1lb3V0KGEsTWF0aC5mbG9vcigwKSksY1t0XS5vbkNvbXBsZXRlJiYoIm5vZGF0YSI9PT1lP2wucHVzaChmdW5jdGlvbigpe3JldHVybiBjW3RdLm9uQ29tcGxldGUobnVsbCwhMSxjW3RdLmN1cnJlbnRJbnB1dFNuYXBzaG90KX0pOmwucHVzaChmdW5jdGlvbigpe3JldHVybiBjW3RdLm9uQ29tcGxldGUobmV3IEVycm9yKGUpLCExLG51bGwpfSkpKX0odCk7ZXAodSx1LnRyYW5zYWN0aW9uUXVldWVUcmVlXyk7Zm9yKHQ9MDt0PGwubGVuZ3RoO3QrKylmYShsW3RdKTtKZih1LHUudHJhbnNhY3Rpb25RdWV1ZVRyZWVfKX0odCx0cCh0LG4pLGUpLGV9ZnVuY3Rpb24gWmYodCxlKXtmb3IodmFyIG49dC50cmFuc2FjdGlvblF1ZXVlVHJlZV8scj1udShlKTtudWxsIT09ciYmdm9pZCAwPT09c2Yobik7KW49b2YobixyKSxyPW51KGU9aXUoZSkpO3JldHVybiBufWZ1bmN0aW9uIHRwKHQsZSl7dmFyIG49W107cmV0dXJuIGZ1bmN0aW9uIGUobix0LHIpe3ZhciBpPXNmKHQpO2lmKGkpZm9yKHZhciBvPTA7bzxpLmxlbmd0aDtvKyspci5wdXNoKGlbb10pO2NmKHQsZnVuY3Rpb24odCl7ZShuLHQscil9KX0odCxlLG4pLG4uc29ydChmdW5jdGlvbih0LGUpe3JldHVybiB0Lm9yZGVyLWUub3JkZXJ9KSxufWZ1bmN0aW9uIGVwKGUsdCl7dmFyIG49c2YodCk7aWYobil7Zm9yKHZhciByPTAsaT0wO2k8bi5sZW5ndGg7aSsrKTIhPT1uW2ldLnN0YXR1cyYmKG5bcl09bltpXSxyKyspO24ubGVuZ3RoPXIsYWYodCwwPG4ubGVuZ3RoP246dm9pZCAwKX1jZih0LGZ1bmN0aW9uKHQpe2VwKGUsdCl9KX1mdW5jdGlvbiBucChlLHQpe3ZhciBuPWhmKFpmKGUsdCkpLHQ9b2YoZS50cmFuc2FjdGlvblF1ZXVlVHJlZV8sdCk7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIHI9bj90OnQucGFyZW50O251bGwhPT1yOyl7aWYoZShyKSlyZXR1cm47cj1yLnBhcmVudH19KHQsZnVuY3Rpb24odCl7cnAoZSx0KX0pLHJwKGUsdCksZnVuY3Rpb24gZSh0LG4scixpKXtyJiYhaSYmbih0KSxjZih0LGZ1bmN0aW9uKHQpe2UodCxuLCEwLGkpfSksciYmaSYmbih0KX0odCxmdW5jdGlvbih0KXtycChlLHQpfSksbn1mdW5jdGlvbiBycCh0LGUpe3ZhciBuPXNmKGUpO2lmKG4pe2Zvcih2YXIgcj1bXSxpPVtdLG89LTEscz0wO3M8bi5sZW5ndGg7cysrKTM9PT1uW3NdLnN0YXR1c3x8KDE9PT1uW3NdLnN0YXR1cz8oc28obz09PXMtMSwiQWxsIFNFTlQgaXRlbXMgc2hvdWxkIGJlIGF0IGJlZ2lubmluZyBvZiBxdWV1ZS4iKSxuW289c10uc3RhdHVzPTMsbltzXS5hYm9ydFJlYXNvbj0ic2V0Iik6KHNvKDA9PT1uW3NdLnN0YXR1cywiVW5leHBlY3RlZCB0cmFuc2FjdGlvbiBzdGF0dXMgaW4gYWJvcnQiKSxuW3NdLnVud2F0Y2hlcigpLGk9aS5jb25jYXQoUmwodC5zZXJ2ZXJTeW5jVHJlZV8sbltzXS5jdXJyZW50V3JpdGVJZCwhMCkpLG5bc10ub25Db21wbGV0ZSYmci5wdXNoKG5bc10ub25Db21wbGV0ZS5iaW5kKG51bGwsbmV3IEVycm9yKCJzZXQiKSwhMSxudWxsKSkpKTstMT09PW8/YWYoZSx2b2lkIDApOm4ubGVuZ3RoPW8rMSxSZih0LmV2ZW50UXVldWVfLGhmKGUpLGkpO2ZvcihzPTA7czxyLmxlbmd0aDtzKyspZmEocltzXSl9fXZhciBpcD1mdW5jdGlvbih0LGUpe3ZhciBuPW9wKHQpLHI9bi5uYW1lc3BhY2U7ImZpcmViYXNlLmNvbSI9PT1uLmRvbWFpbiYmJHMobi5ob3N0KyIgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSA8WU9VUiBGSVJFQkFTRT4uZmlyZWJhc2Vpby5jb20gaW5zdGVhZCIpLHImJiJ1bmRlZmluZWQiIT09cnx8ImxvY2FsaG9zdCI9PT1uLmRvbWFpbnx8JHMoIkNhbm5vdCBwYXJzZSBGaXJlYmFzZSB1cmwuIFBsZWFzZSB1c2UgaHR0cHM6Ly88WU9VUiBGSVJFQkFTRT4uZmlyZWJhc2Vpby5jb20iKSxuLnNlY3VyZXx8InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLnByb3RvY29sJiYtMSE9PXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbC5pbmRleE9mKCJodHRwczoiKSYmWnMoIkluc2VjdXJlIEZpcmViYXNlIGFjY2VzcyBmcm9tIGEgc2VjdXJlIHBhZ2UuIFBsZWFzZSB1c2UgaHR0cHMgaW4gY2FsbHMgdG8gbmV3IEZpcmViYXNlKCkuIik7dD0id3MiPT09bi5zY2hlbWV8fCJ3c3MiPT09bi5zY2hlbWU7cmV0dXJue3JlcG9JbmZvOm5ldyB3YShuLmhvc3Qsbi5zZWN1cmUscixlLHQsIiIsciE9PW4uc3ViZG9tYWluKSxwYXRoOm5ldyBaYShuLnBhdGhTdHJpbmcpfX0sb3A9ZnVuY3Rpb24odCl7dmFyIGUsbixyLGk9IiIsbz0iIixzPSIiLGE9IiIsdT0iIixjPSEwLGg9Imh0dHBzIixsPTQ0MztyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQmJigwPD0ocj10LmluZGV4T2YoIi8vIikpJiYoaD10LnN1YnN0cmluZygwLHItMSksdD10LnN1YnN0cmluZyhyKzIpKSwtMT09PShlPXQuaW5kZXhPZigiLyIpKSYmKGU9dC5sZW5ndGgpLC0xPT09KG49dC5pbmRleE9mKCI/IikpJiYobj10Lmxlbmd0aCksaT10LnN1YnN0cmluZygwLE1hdGgubWluKGUsbikpLGU8biYmKGE9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPSIiLG49dC5zcGxpdCgiLyIpLHI9MDtyPG4ubGVuZ3RoO3IrKylpZigwPG5bcl0ubGVuZ3RoKXt2YXIgaT1uW3JdO3RyeXtpPWRlY29kZVVSSUNvbXBvbmVudChpLnJlcGxhY2UoL1wrL2csIiAiKSl9Y2F0Y2godCl7fWUrPSIvIitpfXJldHVybiBlfSh0LnN1YnN0cmluZyhlLG4pKSksbj1mdW5jdGlvbih0KXt2YXIgZSxuLHI9e307Ij8iPT09dC5jaGFyQXQoMCkmJih0PXQuc3Vic3RyaW5nKDEpKTt0cnl7Zm9yKHZhciBpPXRvKHQuc3BsaXQoIiYiKSksbz1pLm5leHQoKTshby5kb25lO289aS5uZXh0KCkpe3ZhciBzLGE9by52YWx1ZTswIT09YS5sZW5ndGgmJigyPT09KHM9YS5zcGxpdCgiPSIpKS5sZW5ndGg/cltkZWNvZGVVUklDb21wb25lbnQoc1swXSldPWRlY29kZVVSSUNvbXBvbmVudChzWzFdKTpacygiSW52YWxpZCBxdWVyeSBzZWdtZW50ICciK2ErIicgaW4gcXVlcnkgJyIrdCsiJyIpKX19Y2F0Y2godCl7ZT17ZXJyb3I6dH19ZmluYWxseXt0cnl7byYmIW8uZG9uZSYmKG49aS5yZXR1cm4pJiZuLmNhbGwoaSl9ZmluYWxseXtpZihlKXRocm93IGUuZXJyb3J9fXJldHVybiByfSh0LnN1YnN0cmluZyhNYXRoLm1pbih0Lmxlbmd0aCxuKSkpLDA8PShyPWkuaW5kZXhPZigiOiIpKT8oYz0iaHR0cHMiPT09aHx8IndzcyI9PT1oLGw9cGFyc2VJbnQoaS5zdWJzdHJpbmcocisxKSwxMCkpOnI9aS5sZW5ndGgsImxvY2FsaG9zdCI9PT0ocj1pLnNsaWNlKDAscikpLnRvTG93ZXJDYXNlKCk/bz0ibG9jYWxob3N0IjpyLnNwbGl0KCIuIikubGVuZ3RoPD0yP289cjoocj1pLmluZGV4T2YoIi4iKSxzPWkuc3Vic3RyaW5nKDAscikudG9Mb3dlckNhc2UoKSxvPWkuc3Vic3RyaW5nKHIrMSksdT1zKSwibnMiaW4gbiYmKHU9bi5ucykpLHtob3N0OmkscG9ydDpsLGRvbWFpbjpvLHN1YmRvbWFpbjpzLHNlY3VyZTpjLHNjaGVtZTpoLHBhdGhTdHJpbmc6YSxuYW1lc3BhY2U6dX19LHNwPShhcC5wcm90b3R5cGUudmFsPWZ1bmN0aW9uKCl7cmV0dXJuIEtvKCJEYXRhU25hcHNob3QudmFsIiwwLDAsYXJndW1lbnRzLmxlbmd0aCksdGhpcy5ub2RlXy52YWwoKX0sYXAucHJvdG90eXBlLmV4cG9ydFZhbD1mdW5jdGlvbigpe3JldHVybiBLbygiRGF0YVNuYXBzaG90LmV4cG9ydFZhbCIsMCwwLGFyZ3VtZW50cy5sZW5ndGgpLHRoaXMubm9kZV8udmFsKCEwKX0sYXAucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiBLbygiRGF0YVNuYXBzaG90LnRvSlNPTiIsMCwxLGFyZ3VtZW50cy5sZW5ndGgpLHRoaXMuZXhwb3J0VmFsKCl9LGFwLnByb3RvdHlwZS5leGlzdHM9ZnVuY3Rpb24oKXtyZXR1cm4gS28oIkRhdGFTbmFwc2hvdC5leGlzdHMiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSwhdGhpcy5ub2RlXy5pc0VtcHR5KCl9LGFwLnByb3RvdHlwZS5jaGlsZD1mdW5jdGlvbih0KXtLbygiRGF0YVNuYXBzaG90LmNoaWxkIiwwLDEsYXJndW1lbnRzLmxlbmd0aCksdD1TdHJpbmcodCksd2YoIkRhdGFTbmFwc2hvdC5jaGlsZCIsMSx0LCExKTt2YXIgZT1uZXcgWmEodCksdD10aGlzLnJlZl8uY2hpbGQoZSk7cmV0dXJuIG5ldyBhcCh0aGlzLm5vZGVfLmdldENoaWxkKGUpLHQsSnUpfSxhcC5wcm90b3R5cGUuaGFzQ2hpbGQ9ZnVuY3Rpb24odCl7S28oIkRhdGFTbmFwc2hvdC5oYXNDaGlsZCIsMSwxLGFyZ3VtZW50cy5sZW5ndGgpLHdmKCJEYXRhU25hcHNob3QuaGFzQ2hpbGQiLDEsdCwhMSk7dD1uZXcgWmEodCk7cmV0dXJuIXRoaXMubm9kZV8uZ2V0Q2hpbGQodCkuaXNFbXB0eSgpfSxhcC5wcm90b3R5cGUuZ2V0UHJpb3JpdHk9ZnVuY3Rpb24oKXtyZXR1cm4gS28oIkRhdGFTbmFwc2hvdC5nZXRQcmlvcml0eSIsMCwwLGFyZ3VtZW50cy5sZW5ndGgpLHRoaXMubm9kZV8uZ2V0UHJpb3JpdHkoKS52YWwoKX0sYXAucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24obil7dmFyIHI9dGhpcztyZXR1cm4gS28oIkRhdGFTbmFwc2hvdC5mb3JFYWNoIiwxLDEsYXJndW1lbnRzLmxlbmd0aCksSG8oIkRhdGFTbmFwc2hvdC5mb3JFYWNoIiwxLG4sITEpLCF0aGlzLm5vZGVfLmlzTGVhZk5vZGUoKSYmISF0aGlzLm5vZGVfLmZvckVhY2hDaGlsZCh0aGlzLmluZGV4XyxmdW5jdGlvbih0LGUpe3JldHVybiBuKG5ldyBhcChlLHIucmVmXy5jaGlsZCh0KSxKdSkpfSl9LGFwLnByb3RvdHlwZS5oYXNDaGlsZHJlbj1mdW5jdGlvbigpe3JldHVybiBLbygiRGF0YVNuYXBzaG90Lmhhc0NoaWxkcmVuIiwwLDAsYXJndW1lbnRzLmxlbmd0aCksIXRoaXMubm9kZV8uaXNMZWFmTm9kZSgpJiYhdGhpcy5ub2RlXy5pc0VtcHR5KCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhcC5wcm90b3R5cGUsImtleSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnJlZl8uZ2V0S2V5KCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksYXAucHJvdG90eXBlLm51bUNoaWxkcmVuPWZ1bmN0aW9uKCl7cmV0dXJuIEtvKCJEYXRhU25hcHNob3QubnVtQ2hpbGRyZW4iLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLm5vZGVfLm51bUNoaWxkcmVuKCl9LGFwLnByb3RvdHlwZS5nZXRSZWY9ZnVuY3Rpb24oKXtyZXR1cm4gS28oIkRhdGFTbmFwc2hvdC5yZWYiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLnJlZl99LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhcC5wcm90b3R5cGUsInJlZiIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFJlZigpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGFwKTtmdW5jdGlvbiBhcCh0LGUsbil7dGhpcy5ub2RlXz10LHRoaXMucmVmXz1lLHRoaXMuaW5kZXhfPW59dmFyIHVwPShjcC5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKHQpe0tvKCJPbkRpc2Nvbm5lY3QuY2FuY2VsIiwwLDEsYXJndW1lbnRzLmxlbmd0aCksSG8oIk9uRGlzY29ubmVjdC5jYW5jZWwiLDEsdCwhMCk7dmFyIGU9bmV3IGxvO3JldHVybiBXZih0aGlzLnJlcG9fLHRoaXMucGF0aF8sZS53cmFwQ2FsbGJhY2sodCkpLGUucHJvbWlzZX0sY3AucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0KXtLbygiT25EaXNjb25uZWN0LnJlbW92ZSIsMCwxLGFyZ3VtZW50cy5sZW5ndGgpLF9mKCJPbkRpc2Nvbm5lY3QucmVtb3ZlIix0aGlzLnBhdGhfKSxIbygiT25EaXNjb25uZWN0LnJlbW92ZSIsMSx0LCEwKTt2YXIgZT1uZXcgbG87cmV0dXJuIEhmKHRoaXMucmVwb18sdGhpcy5wYXRoXyxudWxsLGUud3JhcENhbGxiYWNrKHQpKSxlLnByb21pc2V9LGNwLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxlKXtLbygiT25EaXNjb25uZWN0LnNldCIsMSwyLGFyZ3VtZW50cy5sZW5ndGgpLF9mKCJPbkRpc2Nvbm5lY3Quc2V0Iix0aGlzLnBhdGhfKSx2ZigiT25EaXNjb25uZWN0LnNldCIsMSx0LHRoaXMucGF0aF8sITEpLEhvKCJPbkRpc2Nvbm5lY3Quc2V0IiwyLGUsITApO3ZhciBuPW5ldyBsbztyZXR1cm4gSGYodGhpcy5yZXBvXyx0aGlzLnBhdGhfLHQsbi53cmFwQ2FsbGJhY2soZSkpLG4ucHJvbWlzZX0sY3AucHJvdG90eXBlLnNldFdpdGhQcmlvcml0eT1mdW5jdGlvbih0LGUsbil7S28oIk9uRGlzY29ubmVjdC5zZXRXaXRoUHJpb3JpdHkiLDIsMyxhcmd1bWVudHMubGVuZ3RoKSxfZigiT25EaXNjb25uZWN0LnNldFdpdGhQcmlvcml0eSIsdGhpcy5wYXRoXyksdmYoIk9uRGlzY29ubmVjdC5zZXRXaXRoUHJpb3JpdHkiLDEsdCx0aGlzLnBhdGhfLCExKSx5ZigiT25EaXNjb25uZWN0LnNldFdpdGhQcmlvcml0eSIsMixlLCExKSxIbygiT25EaXNjb25uZWN0LnNldFdpdGhQcmlvcml0eSIsMyxuLCEwKTt2YXIgcixpLG8scyxhPW5ldyBsbztyZXR1cm4gcj10aGlzLnJlcG9fLGk9dGhpcy5wYXRoXyx0PXQsZT1lLG89YS53cmFwQ2FsbGJhY2sobikscz1wYyh0LGUpLHIuc2VydmVyXy5vbkRpc2Nvbm5lY3RQdXQoaS50b1N0cmluZygpLHMudmFsKCEwKSxmdW5jdGlvbih0LGUpeyJvayI9PT10JiZRYyhyLm9uRGlzY29ubmVjdF8saSxzKSxZZigwLG8sdCxlKX0pLGEucHJvbWlzZX0sY3AucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbih0LGUpe2lmKEtvKCJPbkRpc2Nvbm5lY3QudXBkYXRlIiwxLDIsYXJndW1lbnRzLmxlbmd0aCksX2YoIk9uRGlzY29ubmVjdC51cGRhdGUiLHRoaXMucGF0aF8pLEFycmF5LmlzQXJyYXkodCkpe2Zvcih2YXIgbj17fSxyPTA7cjx0Lmxlbmd0aDsrK3IpblsiIityXT10W3JdO3Q9bixacygiUGFzc2luZyBhbiBBcnJheSB0byBmaXJlYmFzZS5kYXRhYmFzZS5vbkRpc2Nvbm5lY3QoKS51cGRhdGUoKSBpcyBkZXByZWNhdGVkLiBVc2Ugc2V0KCkgaWYgeW91IHdhbnQgdG8gb3ZlcndyaXRlIHRoZSBleGlzdGluZyBkYXRhLCBvciBhbiBPYmplY3Qgd2l0aCBpbnRlZ2VyIGtleXMgaWYgeW91IHJlYWxseSBkbyB3YW50IHRvIG9ubHkgdXBkYXRlIHNvbWUgb2YgdGhlIGNoaWxkcmVuLiIpfWdmKCJPbkRpc2Nvbm5lY3QudXBkYXRlIiwxLHQsdGhpcy5wYXRoXywhMSksSG8oIk9uRGlzY29ubmVjdC51cGRhdGUiLDIsZSwhMCk7dmFyIGk9bmV3IGxvO3JldHVybiBmdW5jdGlvbihuLHIsaSxvKXtpZih4byhpKSlyZXR1cm4gWHMoIm9uRGlzY29ubmVjdCgpLnVwZGF0ZSgpIGNhbGxlZCB3aXRoIGVtcHR5IGRhdGEuICBEb24ndCBkbyBhbnl0aGluZy4iKSxZZigwLG8sIm9rIix2b2lkIDApO24uc2VydmVyXy5vbkRpc2Nvbm5lY3RNZXJnZShyLnRvU3RyaW5nKCksaSxmdW5jdGlvbih0LGUpeyJvayI9PT10JiZpYShpLGZ1bmN0aW9uKHQsZSl7ZT1wYyhlKTtRYyhuLm9uRGlzY29ubmVjdF8sdXUocix0KSxlKX0pLFlmKDAsbyx0LGUpfSl9KHRoaXMucmVwb18sdGhpcy5wYXRoXyx0LGkud3JhcENhbGxiYWNrKGUpKSxpLnByb21pc2V9LGNwKTtmdW5jdGlvbiBjcCh0LGUpe3RoaXMucmVwb189dCx0aGlzLnBhdGhfPWV9dmFyIGhwPShscC5wcm90b3R5cGUuZ2V0UGF0aD1mdW5jdGlvbigpe3ZhciB0PXRoaXMuc25hcHNob3QuZ2V0UmVmKCk7cmV0dXJuKCJ2YWx1ZSI9PT10aGlzLmV2ZW50VHlwZT90OnQuZ2V0UGFyZW50KCkpLnBhdGh9LGxwLnByb3RvdHlwZS5nZXRFdmVudFR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ldmVudFR5cGV9LGxwLnByb3RvdHlwZS5nZXRFdmVudFJ1bm5lcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmV2ZW50UmVnaXN0cmF0aW9uLmdldEV2ZW50UnVubmVyKHRoaXMpfSxscC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRQYXRoKCkudG9TdHJpbmcoKSsiOiIrdGhpcy5ldmVudFR5cGUrIjoiK1JvKHRoaXMuc25hcHNob3QuZXhwb3J0VmFsKCkpfSxscCk7ZnVuY3Rpb24gbHAodCxlLG4scil7dGhpcy5ldmVudFR5cGU9dCx0aGlzLmV2ZW50UmVnaXN0cmF0aW9uPWUsdGhpcy5zbmFwc2hvdD1uLHRoaXMucHJldk5hbWU9cn12YXIgZnA9KHBwLnByb3RvdHlwZS5nZXRQYXRoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGF0aH0scHAucHJvdG90eXBlLmdldEV2ZW50VHlwZT1mdW5jdGlvbigpe3JldHVybiJjYW5jZWwifSxwcC5wcm90b3R5cGUuZ2V0RXZlbnRSdW5uZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ldmVudFJlZ2lzdHJhdGlvbi5nZXRFdmVudFJ1bm5lcih0aGlzKX0scHAucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGF0aC50b1N0cmluZygpKyI6Y2FuY2VsIn0scHApO2Z1bmN0aW9uIHBwKHQsZSxuKXt0aGlzLmV2ZW50UmVnaXN0cmF0aW9uPXQsdGhpcy5lcnJvcj1lLHRoaXMucGF0aD1ufXZhciBkcD0odnAucHJvdG90eXBlLnJlc3BvbmRzVG89ZnVuY3Rpb24odCl7cmV0dXJuInZhbHVlIj09PXR9LHZwLnByb3RvdHlwZS5jcmVhdGVFdmVudD1mdW5jdGlvbih0LGUpe3ZhciBuPWUuZ2V0UXVlcnlQYXJhbXMoKS5nZXRJbmRleCgpO3JldHVybiBuZXcgaHAoInZhbHVlIix0aGlzLG5ldyBzcCh0LnNuYXBzaG90Tm9kZSxlLmdldFJlZigpLG4pKX0sdnAucHJvdG90eXBlLmdldEV2ZW50UnVubmVyPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuY29udGV4dF87aWYoImNhbmNlbCI9PT10LmdldEV2ZW50VHlwZSgpKXtzbyh0aGlzLmNhbmNlbENhbGxiYWNrXywiUmFpc2luZyBhIGNhbmNlbCBldmVudCBvbiBhIGxpc3RlbmVyIHdpdGggbm8gY2FuY2VsIGNhbGxiYWNrIik7dmFyIG49dGhpcy5jYW5jZWxDYWxsYmFja187cmV0dXJuIGZ1bmN0aW9uKCl7bi5jYWxsKGUsdC5lcnJvcil9fXZhciByPXRoaXMuY2FsbGJhY2tfO3JldHVybiBmdW5jdGlvbigpe3IuY2FsbChlLHQuc25hcHNob3QpfX0sdnAucHJvdG90eXBlLmNyZWF0ZUNhbmNlbEV2ZW50PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuY2FuY2VsQ2FsbGJhY2tfP25ldyBmcCh0aGlzLHQsZSk6bnVsbH0sdnAucHJvdG90eXBlLm1hdGNoZXM9ZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiB2cCYmKCF0LmNhbGxiYWNrX3x8IXRoaXMuY2FsbGJhY2tffHx0LmNhbGxiYWNrXz09PXRoaXMuY2FsbGJhY2tfJiZ0LmNvbnRleHRfPT09dGhpcy5jb250ZXh0Xyl9LHZwLnByb3RvdHlwZS5oYXNBbnlDYWxsYmFjaz1mdW5jdGlvbigpe3JldHVybiBudWxsIT09dGhpcy5jYWxsYmFja199LHZwKTtmdW5jdGlvbiB2cCh0LGUsbil7dGhpcy5jYWxsYmFja189dCx0aGlzLmNhbmNlbENhbGxiYWNrXz1lLHRoaXMuY29udGV4dF89bn12YXIgZ3AseXA9KG1wLnByb3RvdHlwZS5yZXNwb25kc1RvPWZ1bmN0aW9uKHQpe3Q9ImNoaWxkcmVuX3JlbW92ZWQiPT09KHQ9ImNoaWxkcmVuX2FkZGVkIj09PXQ/ImNoaWxkX2FkZGVkIjp0KT8iY2hpbGRfcmVtb3ZlZCI6dDtyZXR1cm4gT28odGhpcy5jYWxsYmFja3NfLHQpfSxtcC5wcm90b3R5cGUuY3JlYXRlQ2FuY2VsRXZlbnQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5jYW5jZWxDYWxsYmFja18/bmV3IGZwKHRoaXMsdCxlKTpudWxsfSxtcC5wcm90b3R5cGUuY3JlYXRlRXZlbnQ9ZnVuY3Rpb24odCxlKXtzbyhudWxsIT10LmNoaWxkTmFtZSwiQ2hpbGQgZXZlbnRzIHNob3VsZCBoYXZlIGEgY2hpbGROYW1lLiIpO3ZhciBuPWUuZ2V0UmVmKCkuY2hpbGQodC5jaGlsZE5hbWUpLGU9ZS5nZXRRdWVyeVBhcmFtcygpLmdldEluZGV4KCk7cmV0dXJuIG5ldyBocCh0LnR5cGUsdGhpcyxuZXcgc3AodC5zbmFwc2hvdE5vZGUsbixlKSx0LnByZXZOYW1lKX0sbXAucHJvdG90eXBlLmdldEV2ZW50UnVubmVyPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuY29udGV4dF87aWYoImNhbmNlbCI9PT10LmdldEV2ZW50VHlwZSgpKXtzbyh0aGlzLmNhbmNlbENhbGxiYWNrXywiUmFpc2luZyBhIGNhbmNlbCBldmVudCBvbiBhIGxpc3RlbmVyIHdpdGggbm8gY2FuY2VsIGNhbGxiYWNrIik7dmFyIG49dGhpcy5jYW5jZWxDYWxsYmFja187cmV0dXJuIGZ1bmN0aW9uKCl7bi5jYWxsKGUsdC5lcnJvcil9fXZhciByPXRoaXMuY2FsbGJhY2tzX1t0LmV2ZW50VHlwZV07cmV0dXJuIGZ1bmN0aW9uKCl7ci5jYWxsKGUsdC5zbmFwc2hvdCx0LnByZXZOYW1lKX19LG1wLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7aWYoZSBpbnN0YW5jZW9mIG1wKXtpZighdGhpcy5jYWxsYmFja3NffHwhZS5jYWxsYmFja3NfKXJldHVybiEwO2lmKHRoaXMuY29udGV4dF89PT1lLmNvbnRleHRfKXt2YXIgdD1PYmplY3Qua2V5cyhlLmNhbGxiYWNrc18pLHI9T2JqZWN0LmtleXModGhpcy5jYWxsYmFja3NfKSxpPXQubGVuZ3RoO2lmKGk9PT1yLmxlbmd0aCl7aWYoMSE9PWkpcmV0dXJuIHIuZXZlcnkoZnVuY3Rpb24odCl7cmV0dXJuIGUuY2FsbGJhY2tzX1t0XT09PW4uY2FsbGJhY2tzX1t0XX0pO3Q9dFswXSxyPXJbMF07cmV0dXJuIShyIT09dHx8ZS5jYWxsYmFja3NfW3RdJiZ0aGlzLmNhbGxiYWNrc19bcl0mJmUuY2FsbGJhY2tzX1t0XSE9PXRoaXMuY2FsbGJhY2tzX1tyXSl9fX1yZXR1cm4hMX0sbXAucHJvdG90eXBlLmhhc0FueUNhbGxiYWNrPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGwhPT10aGlzLmNhbGxiYWNrc199LG1wKTtmdW5jdGlvbiBtcCh0LGUsbil7dGhpcy5jYWxsYmFja3NfPXQsdGhpcy5jYW5jZWxDYWxsYmFja189ZSx0aGlzLmNvbnRleHRfPW59dmFyIGJwPShPYmplY3QuZGVmaW5lUHJvcGVydHkod3AsIl9fcmVmZXJlbmNlQ29uc3RydWN0b3IiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc28oZ3AsIlJlZmVyZW5jZS50cyBoYXMgbm90IGJlZW4gbG9hZGVkIiksZ3B9LHNldDpmdW5jdGlvbih0KXtncD10fSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHdwLnZhbGlkYXRlUXVlcnlFbmRwb2ludHNfPWZ1bmN0aW9uKHQpe3ZhciBlPW51bGwsbj1udWxsO2lmKHQuaGFzU3RhcnQoKSYmKGU9dC5nZXRJbmRleFN0YXJ0VmFsdWUoKSksdC5oYXNFbmQoKSYmKG49dC5nZXRJbmRleEVuZFZhbHVlKCkpLHQuZ2V0SW5kZXgoKT09PVB1KXt2YXIgcj0iUXVlcnk6IFdoZW4gb3JkZXJpbmcgYnkga2V5LCB5b3UgbWF5IG9ubHkgcGFzcyBvbmUgYXJndW1lbnQgdG8gc3RhcnRBdCgpLCBlbmRBdCgpLCBvciBlcXVhbFRvKCkuIixpPSJRdWVyeTogV2hlbiBvcmRlcmluZyBieSBrZXksIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8gc3RhcnRBdCgpLCBzdGFydEFmdGVyKCksIGVuZEF0KCksIGVuZEJlZm9yZSgpLCBvciBlcXVhbFRvKCkgbXVzdCBiZSBhIHN0cmluZy4iO2lmKHQuaGFzU3RhcnQoKSl7aWYodC5nZXRJbmRleFN0YXJ0TmFtZSgpIT09dGEpdGhyb3cgbmV3IEVycm9yKHIpO2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgRXJyb3IoaSl9aWYodC5oYXNFbmQoKSl7aWYodC5nZXRJbmRleEVuZE5hbWUoKSE9PWVhKXRocm93IG5ldyBFcnJvcihyKTtpZigic3RyaW5nIiE9dHlwZW9mIG4pdGhyb3cgbmV3IEVycm9yKGkpfX1lbHNlIGlmKHQuZ2V0SW5kZXgoKT09PUp1KXtpZihudWxsIT1lJiYhZGYoZSl8fG51bGwhPW4mJiFkZihuKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5OiBXaGVuIG9yZGVyaW5nIGJ5IHByaW9yaXR5LCB0aGUgZmlyc3QgYXJndW1lbnQgcGFzc2VkIHRvIHN0YXJ0QXQoKSwgc3RhcnRBZnRlcigpIGVuZEF0KCksIGVuZEJlZm9yZSgpLCBvciBlcXVhbFRvKCkgbXVzdCBiZSBhIHZhbGlkIHByaW9yaXR5IHZhbHVlIChudWxsLCBhIG51bWJlciwgb3IgYSBzdHJpbmcpLiIpfWVsc2UgaWYoc28odC5nZXRJbmRleCgpaW5zdGFuY2VvZiBnY3x8dC5nZXRJbmRleCgpPT09VGMsInVua25vd24gaW5kZXggdHlwZS4iKSxudWxsIT1lJiYib2JqZWN0Ij09dHlwZW9mIGV8fG51bGwhPW4mJiJvYmplY3QiPT10eXBlb2Ygbil0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5OiBGaXJzdCBhcmd1bWVudCBwYXNzZWQgdG8gc3RhcnRBdCgpLCBzdGFydEFmdGVyKCksIGVuZEF0KCksIGVuZEJlZm9yZSgpLCBvciBlcXVhbFRvKCkgY2Fubm90IGJlIGFuIG9iamVjdC4iKX0sd3AudmFsaWRhdGVMaW1pdF89ZnVuY3Rpb24odCl7aWYodC5oYXNTdGFydCgpJiZ0Lmhhc0VuZCgpJiZ0Lmhhc0xpbWl0KCkmJiF0Lmhhc0FuY2hvcmVkTGltaXQoKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5OiBDYW4ndCBjb21iaW5lIHN0YXJ0QXQoKSwgc3RhcnRBZnRlcigpLCBlbmRBdCgpLCBlbmRCZWZvcmUoKSwgYW5kIGxpbWl0KCkuIFVzZSBsaW1pdFRvRmlyc3QoKSBvciBsaW1pdFRvTGFzdCgpIGluc3RlYWQuIil9LHdwLnByb3RvdHlwZS52YWxpZGF0ZU5vUHJldmlvdXNPcmRlckJ5Q2FsbF89ZnVuY3Rpb24odCl7aWYoITA9PT10aGlzLm9yZGVyQnlDYWxsZWRfKXRocm93IG5ldyBFcnJvcih0KyI6IFlvdSBjYW4ndCBjb21iaW5lIG11bHRpcGxlIG9yZGVyQnkgY2FsbHMuIil9LHdwLnByb3RvdHlwZS5nZXRRdWVyeVBhcmFtcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnF1ZXJ5UGFyYW1zX30sd3AucHJvdG90eXBlLmdldFJlZj1mdW5jdGlvbigpe3JldHVybiBLbygiUXVlcnkucmVmIiwwLDAsYXJndW1lbnRzLmxlbmd0aCksbmV3IHdwLl9fcmVmZXJlbmNlQ29uc3RydWN0b3IodGhpcy5kYXRhYmFzZSx0aGlzLnBhdGgpfSx3cC5wcm90b3R5cGUub249ZnVuY3Rpb24odCxlLG4scil7S28oIlF1ZXJ5Lm9uIiwyLDQsYXJndW1lbnRzLmxlbmd0aCksbWYoIlF1ZXJ5Lm9uIiwxLHQsITEpLEhvKCJRdWVyeS5vbiIsMixlLCExKTtuPXdwLmdldENhbmNlbEFuZENvbnRleHRBcmdzXygiUXVlcnkub24iLG4scik7cmV0dXJuInZhbHVlIj09PXQ/dGhpcy5vblZhbHVlRXZlbnQoZSxuLmNhbmNlbCxuLmNvbnRleHQpOigocj17fSlbdF09ZSx0aGlzLm9uQ2hpbGRFdmVudChyLG4uY2FuY2VsLG4uY29udGV4dCkpLGV9LHdwLnByb3RvdHlwZS5vblZhbHVlRXZlbnQ9ZnVuY3Rpb24odCxlLG4pe249bmV3IGRwKHQsZXx8bnVsbCxufHxudWxsKTtHZih0aGlzLnJlcG8sdGhpcyxuKX0sd3AucHJvdG90eXBlLm9uQ2hpbGRFdmVudD1mdW5jdGlvbih0LGUsbil7bj1uZXcgeXAodCxlLG4pO0dmKHRoaXMucmVwbyx0aGlzLG4pfSx3cC5wcm90b3R5cGUub2ZmPWZ1bmN0aW9uKHQsZSxuKXtLbygiUXVlcnkub2ZmIiwwLDMsYXJndW1lbnRzLmxlbmd0aCksbWYoIlF1ZXJ5Lm9mZiIsMSx0LCEwKSxIbygiUXVlcnkub2ZmIiwyLGUsITApLEdvKCJRdWVyeS5vZmYiLDMsbiwhMCk7dmFyIHI9bnVsbCxpPW51bGw7InZhbHVlIj09PXQ/cj1uZXcgZHAoZXx8bnVsbCxudWxsLG58fG51bGwpOnQmJihlJiYoKGk9e30pW3RdPWUpLHI9bmV3IHlwKGksbnVsbCxufHxudWxsKSksaT10aGlzLnJlcG8sbj1yLG49Ii5pbmZvIj09PW51KChyPXRoaXMpLnBhdGgpP09sKGkuaW5mb1N5bmNUcmVlXyxyLG4pOk9sKGkuc2VydmVyU3luY1RyZWVfLHIsbiksa2YoaS5ldmVudFF1ZXVlXyxyLnBhdGgsbil9LHdwLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXt2YXIgbixyLHQsZT10aGlzO3JldHVybiBuPXRoaXMucmVwbyxyPXRoaXMsKG51bGwhPSh0PUxsKG4uc2VydmVyU3luY1RyZWVfLHIpKT9Qcm9taXNlLnJlc29sdmUodCk6bi5zZXJ2ZXJfLmdldChyKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBlPXBjKHQpLHQ9UGwobi5zZXJ2ZXJTeW5jVHJlZV8sci5wYXRoLGUpO3JldHVybiBrZihuLmV2ZW50UXVldWVfLHIucGF0aCx0KSxQcm9taXNlLnJlc29sdmUoZSl9LGZ1bmN0aW9uKHQpe3JldHVybiBRZihuLCJnZXQgZm9yIHF1ZXJ5ICIrUm8ocikrIiBmYWlsZWQ6ICIrdCksUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKHQpKX0pKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgc3AodCxlLmdldFJlZigpLGUuZ2V0UXVlcnlQYXJhbXMoKS5nZXRJbmRleCgpKX0pfSx3cC5wcm90b3R5cGUub25jZT1mdW5jdGlvbihlLG4sdCxyKXt2YXIgaT10aGlzO0tvKCJRdWVyeS5vbmNlIiwxLDQsYXJndW1lbnRzLmxlbmd0aCksbWYoIlF1ZXJ5Lm9uY2UiLDEsZSwhMSksSG8oIlF1ZXJ5Lm9uY2UiLDIsbiwhMCk7dmFyIG89d3AuZ2V0Q2FuY2VsQW5kQ29udGV4dEFyZ3NfKCJRdWVyeS5vbmNlIix0LHIpLHM9ITAsYT1uZXcgbG87YS5wcm9taXNlLmNhdGNoKGZ1bmN0aW9uKCl7fSk7dmFyIHU9ZnVuY3Rpb24odCl7cyYmKHM9ITEsaS5vZmYoZSx1KSxuJiZuLmJpbmQoby5jb250ZXh0KSh0KSxhLnJlc29sdmUodCkpfTtyZXR1cm4gdGhpcy5vbihlLHUsZnVuY3Rpb24odCl7aS5vZmYoZSx1KSxvLmNhbmNlbCYmby5jYW5jZWwuYmluZChvLmNvbnRleHQpKHQpLGEucmVqZWN0KHQpfSksYS5wcm9taXNlfSx3cC5wcm90b3R5cGUubGltaXRUb0ZpcnN0PWZ1bmN0aW9uKHQpe2lmKEtvKCJRdWVyeS5saW1pdFRvRmlyc3QiLDEsMSxhcmd1bWVudHMubGVuZ3RoKSwibnVtYmVyIiE9dHlwZW9mIHR8fE1hdGguZmxvb3IodCkhPT10fHx0PD0wKXRocm93IG5ldyBFcnJvcigiUXVlcnkubGltaXRUb0ZpcnN0OiBGaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlci4iKTtpZih0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNMaW1pdCgpKXRocm93IG5ldyBFcnJvcigiUXVlcnkubGltaXRUb0ZpcnN0OiBMaW1pdCB3YXMgYWxyZWFkeSBzZXQgKGJ5IGFub3RoZXIgY2FsbCB0byBsaW1pdCwgbGltaXRUb0ZpcnN0LCBvciBsaW1pdFRvTGFzdCkuIik7cmV0dXJuIG5ldyB3cCh0aGlzLmRhdGFiYXNlLHRoaXMucGF0aCwoZT10aGlzLnF1ZXJ5UGFyYW1zXyx0PXQsKGU9ZS5jb3B5KCkpLmxpbWl0U2V0Xz0hMCxlLmxpbWl0Xz10LGUudmlld0Zyb21fPSJsIixlKSx0aGlzLm9yZGVyQnlDYWxsZWRfKTt2YXIgZX0sd3AucHJvdG90eXBlLmxpbWl0VG9MYXN0PWZ1bmN0aW9uKHQpe2lmKEtvKCJRdWVyeS5saW1pdFRvTGFzdCIsMSwxLGFyZ3VtZW50cy5sZW5ndGgpLCJudW1iZXIiIT10eXBlb2YgdHx8TWF0aC5mbG9vcih0KSE9PXR8fHQ8PTApdGhyb3cgbmV3IEVycm9yKCJRdWVyeS5saW1pdFRvTGFzdDogRmlyc3QgYXJndW1lbnQgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIuIik7aWYodGhpcy5xdWVyeVBhcmFtc18uaGFzTGltaXQoKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5LmxpbWl0VG9MYXN0OiBMaW1pdCB3YXMgYWxyZWFkeSBzZXQgKGJ5IGFub3RoZXIgY2FsbCB0byBsaW1pdCwgbGltaXRUb0ZpcnN0LCBvciBsaW1pdFRvTGFzdCkuIik7cmV0dXJuIG5ldyB3cCh0aGlzLmRhdGFiYXNlLHRoaXMucGF0aCwoZT10aGlzLnF1ZXJ5UGFyYW1zXyx0PXQsKGU9ZS5jb3B5KCkpLmxpbWl0U2V0Xz0hMCxlLmxpbWl0Xz10LGUudmlld0Zyb21fPSJyIixlKSx0aGlzLm9yZGVyQnlDYWxsZWRfKTt2YXIgZX0sd3AucHJvdG90eXBlLm9yZGVyQnlDaGlsZD1mdW5jdGlvbih0KXtpZihLbygiUXVlcnkub3JkZXJCeUNoaWxkIiwxLDEsYXJndW1lbnRzLmxlbmd0aCksIiRrZXkiPT09dCl0aHJvdyBuZXcgRXJyb3IoJ1F1ZXJ5Lm9yZGVyQnlDaGlsZDogIiRrZXkiIGlzIGludmFsaWQuICBVc2UgUXVlcnkub3JkZXJCeUtleSgpIGluc3RlYWQuJyk7aWYoIiRwcmlvcml0eSI9PT10KXRocm93IG5ldyBFcnJvcignUXVlcnkub3JkZXJCeUNoaWxkOiAiJHByaW9yaXR5IiBpcyBpbnZhbGlkLiAgVXNlIFF1ZXJ5Lm9yZGVyQnlQcmlvcml0eSgpIGluc3RlYWQuJyk7aWYoIiR2YWx1ZSI9PT10KXRocm93IG5ldyBFcnJvcignUXVlcnkub3JkZXJCeUNoaWxkOiAiJHZhbHVlIiBpcyBpbnZhbGlkLiAgVXNlIFF1ZXJ5Lm9yZGVyQnlWYWx1ZSgpIGluc3RlYWQuJyk7d2YoIlF1ZXJ5Lm9yZGVyQnlDaGlsZCIsMSx0LCExKSx0aGlzLnZhbGlkYXRlTm9QcmV2aW91c09yZGVyQnlDYWxsXygiUXVlcnkub3JkZXJCeUNoaWxkIik7dD1uZXcgWmEodCk7aWYoY3UodCkpdGhyb3cgbmV3IEVycm9yKCJRdWVyeS5vcmRlckJ5Q2hpbGQ6IGNhbm5vdCBwYXNzIGluIGVtcHR5IHBhdGguICBVc2UgUXVlcnkub3JkZXJCeVZhbHVlKCkgaW5zdGVhZC4iKTt0PW5ldyBnYyh0KSx0PXFjKHRoaXMucXVlcnlQYXJhbXNfLHQpO3JldHVybiB3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyh0KSxuZXcgd3AodGhpcy5kYXRhYmFzZSx0aGlzLnBhdGgsdCwhMCl9LHdwLnByb3RvdHlwZS5vcmRlckJ5S2V5PWZ1bmN0aW9uKCl7S28oIlF1ZXJ5Lm9yZGVyQnlLZXkiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLnZhbGlkYXRlTm9QcmV2aW91c09yZGVyQnlDYWxsXygiUXVlcnkub3JkZXJCeUtleSIpO3ZhciB0PXFjKHRoaXMucXVlcnlQYXJhbXNfLFB1KTtyZXR1cm4gd3AudmFsaWRhdGVRdWVyeUVuZHBvaW50c18odCksbmV3IHdwKHRoaXMuZGF0YWJhc2UsdGhpcy5wYXRoLHQsITApfSx3cC5wcm90b3R5cGUub3JkZXJCeVByaW9yaXR5PWZ1bmN0aW9uKCl7S28oIlF1ZXJ5Lm9yZGVyQnlQcmlvcml0eSIsMCwwLGFyZ3VtZW50cy5sZW5ndGgpLHRoaXMudmFsaWRhdGVOb1ByZXZpb3VzT3JkZXJCeUNhbGxfKCJRdWVyeS5vcmRlckJ5UHJpb3JpdHkiKTt2YXIgdD1xYyh0aGlzLnF1ZXJ5UGFyYW1zXyxKdSk7cmV0dXJuIHdwLnZhbGlkYXRlUXVlcnlFbmRwb2ludHNfKHQpLG5ldyB3cCh0aGlzLmRhdGFiYXNlLHRoaXMucGF0aCx0LCEwKX0sd3AucHJvdG90eXBlLm9yZGVyQnlWYWx1ZT1mdW5jdGlvbigpe0tvKCJRdWVyeS5vcmRlckJ5VmFsdWUiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLnZhbGlkYXRlTm9QcmV2aW91c09yZGVyQnlDYWxsXygiUXVlcnkub3JkZXJCeVZhbHVlIik7dmFyIHQ9cWModGhpcy5xdWVyeVBhcmFtc18sVGMpO3JldHVybiB3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyh0KSxuZXcgd3AodGhpcy5kYXRhYmFzZSx0aGlzLnBhdGgsdCwhMCl9LHdwLnByb3RvdHlwZS5zdGFydEF0PWZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09dCYmKHQ9bnVsbCksS28oIlF1ZXJ5LnN0YXJ0QXQiLDAsMixhcmd1bWVudHMubGVuZ3RoKSx2ZigiUXVlcnkuc3RhcnRBdCIsMSx0LHRoaXMucGF0aCwhMCksYmYoIlF1ZXJ5LnN0YXJ0QXQiLDIsZSwhMCk7dmFyIG49VWModGhpcy5xdWVyeVBhcmFtc18sdCxlKTtpZih3cC52YWxpZGF0ZUxpbWl0XyhuKSx3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyhuKSx0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNTdGFydCgpKXRocm93IG5ldyBFcnJvcigiUXVlcnkuc3RhcnRBdDogU3RhcnRpbmcgcG9pbnQgd2FzIGFscmVhZHkgc2V0IChieSBhbm90aGVyIGNhbGwgdG8gc3RhcnRBdCBvciBlcXVhbFRvKS4iKTtyZXR1cm4gdm9pZCAwPT09dCYmKGU9dD1udWxsKSxuZXcgd3AodGhpcy5kYXRhYmFzZSx0aGlzLnBhdGgsbix0aGlzLm9yZGVyQnlDYWxsZWRfKX0sd3AucHJvdG90eXBlLnN0YXJ0QWZ0ZXI9ZnVuY3Rpb24odCxlKXt2b2lkIDA9PT10JiYodD1udWxsKSxLbygiUXVlcnkuc3RhcnRBZnRlciIsMCwyLGFyZ3VtZW50cy5sZW5ndGgpLHZmKCJRdWVyeS5zdGFydEFmdGVyIiwxLHQsdGhpcy5wYXRoLCExKSxiZigiUXVlcnkuc3RhcnRBZnRlciIsMixlLCEwKTt2YXIgbixlPShuPXRoaXMucXVlcnlQYXJhbXNfLHQ9dCxlPWUsKGU9bi5pbmRleF89PT1QdT9VYyhuLHQ9InN0cmluZyI9PXR5cGVvZiB0P2JjKHQpOnQsZSk6VWMobix0LG51bGw9PWU/ZWE6YmMoZSkpKS5zdGFydEFmdGVyU2V0Xz0hMCxlKTtpZih3cC52YWxpZGF0ZUxpbWl0XyhlKSx3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyhlKSx0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNTdGFydCgpKXRocm93IG5ldyBFcnJvcigiUXVlcnkuc3RhcnRBZnRlcjogU3RhcnRpbmcgcG9pbnQgd2FzIGFscmVhZHkgc2V0IChieSBhbm90aGVyIGNhbGwgdG8gc3RhcnRBdCwgc3RhcnRBZnRlciBvciBlcXVhbFRvKS4iKTtyZXR1cm4gbmV3IHdwKHRoaXMuZGF0YWJhc2UsdGhpcy5wYXRoLGUsdGhpcy5vcmRlckJ5Q2FsbGVkXyl9LHdwLnByb3RvdHlwZS5lbmRBdD1mdW5jdGlvbih0LGUpe3ZvaWQgMD09PXQmJih0PW51bGwpLEtvKCJRdWVyeS5lbmRBdCIsMCwyLGFyZ3VtZW50cy5sZW5ndGgpLHZmKCJRdWVyeS5lbmRBdCIsMSx0LHRoaXMucGF0aCwhMCksYmYoIlF1ZXJ5LmVuZEF0IiwyLGUsITApO2U9amModGhpcy5xdWVyeVBhcmFtc18sdCxlKTtpZih3cC52YWxpZGF0ZUxpbWl0XyhlKSx3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyhlKSx0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNFbmQoKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5LmVuZEF0OiBFbmRpbmcgcG9pbnQgd2FzIGFscmVhZHkgc2V0IChieSBhbm90aGVyIGNhbGwgdG8gZW5kQXQsIGVuZEJlZm9yZSwgb3IgZXF1YWxUbykuIik7cmV0dXJuIG5ldyB3cCh0aGlzLmRhdGFiYXNlLHRoaXMucGF0aCxlLHRoaXMub3JkZXJCeUNhbGxlZF8pfSx3cC5wcm90b3R5cGUuZW5kQmVmb3JlPWZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09dCYmKHQ9bnVsbCksS28oIlF1ZXJ5LmVuZEJlZm9yZSIsMCwyLGFyZ3VtZW50cy5sZW5ndGgpLHZmKCJRdWVyeS5lbmRCZWZvcmUiLDEsdCx0aGlzLnBhdGgsITEpLGJmKCJRdWVyeS5lbmRCZWZvcmUiLDIsZSwhMCk7dmFyIG4sZT0obj10aGlzLnF1ZXJ5UGFyYW1zXyx0PXQsZT1lLChlPW4uaW5kZXhfPT09UHU/amMobix0PSJzdHJpbmciPT10eXBlb2YgdD93Yyh0KTp0LGUpOmpjKG4sdCxudWxsPT1lP3RhOndjKGUpKSkuZW5kQmVmb3JlU2V0Xz0hMCxlKTtpZih3cC52YWxpZGF0ZUxpbWl0XyhlKSx3cC52YWxpZGF0ZVF1ZXJ5RW5kcG9pbnRzXyhlKSx0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNFbmQoKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5LmVuZEJlZm9yZTogRW5kaW5nIHBvaW50IHdhcyBhbHJlYWR5IHNldCAoYnkgYW5vdGhlciBjYWxsIHRvIGVuZEF0LCBlbmRCZWZvcmUsIG9yIGVxdWFsVG8pLiIpO3JldHVybiBuZXcgd3AodGhpcy5kYXRhYmFzZSx0aGlzLnBhdGgsZSx0aGlzLm9yZGVyQnlDYWxsZWRfKX0sd3AucHJvdG90eXBlLmVxdWFsVG89ZnVuY3Rpb24odCxlKXtpZihLbygiUXVlcnkuZXF1YWxUbyIsMSwyLGFyZ3VtZW50cy5sZW5ndGgpLHZmKCJRdWVyeS5lcXVhbFRvIiwxLHQsdGhpcy5wYXRoLCExKSxiZigiUXVlcnkuZXF1YWxUbyIsMixlLCEwKSx0aGlzLnF1ZXJ5UGFyYW1zXy5oYXNTdGFydCgpKXRocm93IG5ldyBFcnJvcigiUXVlcnkuZXF1YWxUbzogU3RhcnRpbmcgcG9pbnQgd2FzIGFscmVhZHkgc2V0IChieSBhbm90aGVyIGNhbGwgdG8gc3RhcnRBdC9zdGFydEFmdGVyIG9yIGVxdWFsVG8pLiIpO2lmKHRoaXMucXVlcnlQYXJhbXNfLmhhc0VuZCgpKXRocm93IG5ldyBFcnJvcigiUXVlcnkuZXF1YWxUbzogRW5kaW5nIHBvaW50IHdhcyBhbHJlYWR5IHNldCAoYnkgYW5vdGhlciBjYWxsIHRvIGVuZEF0L2VuZEJlZm9yZSBvciBlcXVhbFRvKS4iKTtyZXR1cm4gdGhpcy5zdGFydEF0KHQsZSkuZW5kQXQodCxlKX0sd3AucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIEtvKCJRdWVyeS50b1N0cmluZyIsMCwwLGFyZ3VtZW50cy5sZW5ndGgpLHRoaXMucmVwby50b1N0cmluZygpK2Z1bmN0aW9uKHQpe2Zvcih2YXIgZT0iIixuPXQucGllY2VOdW1fO248dC5waWVjZXNfLmxlbmd0aDtuKyspIiIhPT10LnBpZWNlc19bbl0mJihlKz0iLyIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyh0LnBpZWNlc19bbl0pKSk7cmV0dXJuIGV8fCIvIn0odGhpcy5wYXRoKX0sd3AucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiBLbygiUXVlcnkudG9KU09OIiwwLDEsYXJndW1lbnRzLmxlbmd0aCksdGhpcy50b1N0cmluZygpfSx3cC5wcm90b3R5cGUucXVlcnlPYmplY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdD10aGlzLnF1ZXJ5UGFyYW1zXyxuPXt9LHQuc3RhcnRTZXRfJiYobi5zcD10LmluZGV4U3RhcnRWYWx1ZV8sdC5zdGFydE5hbWVTZXRfJiYobi5zbj10LmluZGV4U3RhcnROYW1lXykpLHQuZW5kU2V0XyYmKG4uZXA9dC5pbmRleEVuZFZhbHVlXyx0LmVuZE5hbWVTZXRfJiYobi5lbj10LmluZGV4RW5kTmFtZV8pKSx0LmxpbWl0U2V0XyYmKG4ubD10LmxpbWl0XywiIj09PShlPXQudmlld0Zyb21fKSYmKGU9dC5pc1ZpZXdGcm9tTGVmdCgpPyJsIjoiciIpLG4udmY9ZSksdC5pbmRleF8hPT1KdSYmKG4uaT10LmluZGV4Xy50b1N0cmluZygpKSxuO3ZhciB0LGUsbn0sd3AucHJvdG90eXBlLnF1ZXJ5SWRlbnRpZmllcj1mdW5jdGlvbigpe3ZhciB0PXRoaXMucXVlcnlPYmplY3QoKSx0PXJhKHQpO3JldHVybiJ7fSI9PT10PyJkZWZhdWx0Ijp0fSx3cC5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtpZihLbygiUXVlcnkuaXNFcXVhbCIsMSwxLGFyZ3VtZW50cy5sZW5ndGgpLCEodCBpbnN0YW5jZW9mIHdwKSl0aHJvdyBuZXcgRXJyb3IoIlF1ZXJ5LmlzRXF1YWwgZmFpbGVkOiBGaXJzdCBhcmd1bWVudCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIGZpcmViYXNlLmRhdGFiYXNlLlF1ZXJ5LiIpO3ZhciBlPXRoaXMucmVwbz09PXQucmVwbyxuPWZ1KHRoaXMucGF0aCx0LnBhdGgpLHQ9dGhpcy5xdWVyeUlkZW50aWZpZXIoKT09PXQucXVlcnlJZGVudGlmaWVyKCk7cmV0dXJuIGUmJm4mJnR9LHdwLmdldENhbmNlbEFuZENvbnRleHRBcmdzXz1mdW5jdGlvbih0LGUsbil7dmFyIHI9e2NhbmNlbDpudWxsLGNvbnRleHQ6bnVsbH07aWYoZSYmbilyLmNhbmNlbD1lLEhvKHQsMyxyLmNhbmNlbCwhMCksci5jb250ZXh0PW4sR28odCw0LHIuY29udGV4dCwhMCk7ZWxzZSBpZihlKWlmKCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUpci5jb250ZXh0PWU7ZWxzZXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgRXJyb3IoV28odCwzLCEwKSsiIG11c3QgZWl0aGVyIGJlIGEgY2FuY2VsIGNhbGxiYWNrIG9yIGEgY29udGV4dCBvYmplY3QuIik7ci5jYW5jZWw9ZX1yZXR1cm4gcn0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHdwLnByb3RvdHlwZSwicmVmIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0UmVmKCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksd3ApO2Z1bmN0aW9uIHdwKHQsZSxuLHIpe3RoaXMuZGF0YWJhc2U9dCx0aGlzLnBhdGg9ZSx0aGlzLnF1ZXJ5UGFyYW1zXz1uLHRoaXMub3JkZXJCeUNhbGxlZF89cix0aGlzLnJlcG89dC5yZXBvX312YXIgX3A9KElwLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm4gS28oIlRyYW5zYWN0aW9uUmVzdWx0LnRvSlNPTiIsMCwxLGFyZ3VtZW50cy5sZW5ndGgpLHtjb21taXR0ZWQ6dGhpcy5jb21taXR0ZWQsc25hcHNob3Q6dGhpcy5zbmFwc2hvdC50b0pTT04oKX19LElwKTtmdW5jdGlvbiBJcCh0LGUpe3RoaXMuY29tbWl0dGVkPXQsdGhpcy5zbmFwc2hvdD1lfXZhciBUcCxFcCxTcD0oWGkoQ3AsVHA9YnApLENwLnByb3RvdHlwZS5nZXRLZXk9ZnVuY3Rpb24oKXtyZXR1cm4gS28oIlJlZmVyZW5jZS5rZXkiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSxjdSh0aGlzLnBhdGgpP251bGw6b3UodGhpcy5wYXRoKX0sQ3AucHJvdG90eXBlLmNoaWxkPWZ1bmN0aW9uKHQpe3ZhciBlLG4scixpO3JldHVybiBLbygiUmVmZXJlbmNlLmNoaWxkIiwxLDEsYXJndW1lbnRzLmxlbmd0aCksIm51bWJlciI9PXR5cGVvZiB0P3Q9U3RyaW5nKHQpOnQgaW5zdGFuY2VvZiBaYXx8KG51bGw9PT1udSh0aGlzLnBhdGgpPyhlPSJSZWZlcmVuY2UuY2hpbGQiLGk9IShuPTEpLHI9KHI9dCkmJnIucmVwbGFjZSgvXlwvKlwuaW5mbyhcL3wkKS8sIi8iKSx3ZihlLG4scixpKSk6d2YoIlJlZmVyZW5jZS5jaGlsZCIsMSx0LCExKSksbmV3IENwKHRoaXMuZGF0YWJhc2UsdXUodGhpcy5wYXRoLHQpKX0sQ3AucHJvdG90eXBlLmdldFBhcmVudD1mdW5jdGlvbigpe0tvKCJSZWZlcmVuY2UucGFyZW50IiwwLDAsYXJndW1lbnRzLmxlbmd0aCk7dmFyIHQ9YXUodGhpcy5wYXRoKTtyZXR1cm4gbnVsbD09PXQ/bnVsbDpuZXcgQ3AodGhpcy5kYXRhYmFzZSx0KX0sQ3AucHJvdG90eXBlLmdldFJvb3Q9ZnVuY3Rpb24oKXtLbygiUmVmZXJlbmNlLnJvb3QiLDAsMCxhcmd1bWVudHMubGVuZ3RoKTtmb3IodmFyIHQ9dGhpcztudWxsIT09dC5nZXRQYXJlbnQoKTspdD10LmdldFBhcmVudCgpO3JldHVybiB0fSxDcC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7S28oIlJlZmVyZW5jZS5zZXQiLDEsMixhcmd1bWVudHMubGVuZ3RoKSxfZigiUmVmZXJlbmNlLnNldCIsdGhpcy5wYXRoKSx2ZigiUmVmZXJlbmNlLnNldCIsMSx0LHRoaXMucGF0aCwhMSksSG8oIlJlZmVyZW5jZS5zZXQiLDIsZSwhMCk7dmFyIG49bmV3IGxvO3JldHVybiBLZih0aGlzLnJlcG8sdGhpcy5wYXRoLHQsbnVsbCxuLndyYXBDYWxsYmFjayhlKSksbi5wcm9taXNlfSxDcC5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKHQsZSl7aWYoS28oIlJlZmVyZW5jZS51cGRhdGUiLDEsMixhcmd1bWVudHMubGVuZ3RoKSxfZigiUmVmZXJlbmNlLnVwZGF0ZSIsdGhpcy5wYXRoKSxBcnJheS5pc0FycmF5KHQpKXtmb3IodmFyIG49e30scj0wO3I8dC5sZW5ndGg7KytyKW5bIiIrcl09dFtyXTt0PW4sWnMoIlBhc3NpbmcgYW4gQXJyYXkgdG8gRmlyZWJhc2UudXBkYXRlKCkgaXMgZGVwcmVjYXRlZC4gVXNlIHNldCgpIGlmIHlvdSB3YW50IHRvIG92ZXJ3cml0ZSB0aGUgZXhpc3RpbmcgZGF0YSwgb3IgYW4gT2JqZWN0IHdpdGggaW50ZWdlciBrZXlzIGlmIHlvdSByZWFsbHkgZG8gd2FudCB0byBvbmx5IHVwZGF0ZSBzb21lIG9mIHRoZSBjaGlsZHJlbi4iKX1nZigiUmVmZXJlbmNlLnVwZGF0ZSIsMSx0LHRoaXMucGF0aCwhMSksSG8oIlJlZmVyZW5jZS51cGRhdGUiLDIsZSwhMCk7dmFyIGk9bmV3IGxvO3JldHVybiBmdW5jdGlvbihpLG8sdCxzKXtRZihpLCJ1cGRhdGUiLHtwYXRoOm8udG9TdHJpbmcoKSx2YWx1ZTp0fSk7dmFyIGEsZSxuPSEwLHI9VWYoaSksdT17fTtpYSh0LGZ1bmN0aW9uKHQsZSl7bj0hMSx1W3RdPXRmKHV1KG8sdCkscGMoZSksaS5zZXJ2ZXJTeW5jVHJlZV8scil9KSxuPyhYcygidXBkYXRlKCkgY2FsbGVkIHdpdGggZW1wdHkgZGF0YS4gIERvbid0IGRvIGFueXRoaW5nLiIpLFlmKDAscywib2siLHZvaWQgMCkpOihhPUJmKGkpLGU9a2woaS5zZXJ2ZXJTeW5jVHJlZV8sbyx1LGEpLEFmKGkuZXZlbnRRdWV1ZV8sZSksaS5zZXJ2ZXJfLm1lcmdlKG8udG9TdHJpbmcoKSx0LGZ1bmN0aW9uKHQsZSl7dmFyIG49Im9rIj09PXQ7bnx8WnMoInVwZGF0ZSBhdCAiK28rIiBmYWlsZWQ6ICIrdCk7dmFyIHI9UmwoaS5zZXJ2ZXJTeW5jVHJlZV8sYSwhbiksbj0wPHIubGVuZ3RoPyRmKGksbyk6bztSZihpLmV2ZW50UXVldWVfLG4sciksWWYoMCxzLHQsZSl9KSxpYSh0LGZ1bmN0aW9uKHQpe3Q9bnAoaSx1dShvLHQpKTskZihpLHQpfSksUmYoaS5ldmVudFF1ZXVlXyxvLFtdKSl9KHRoaXMucmVwbyx0aGlzLnBhdGgsdCxpLndyYXBDYWxsYmFjayhlKSksaS5wcm9taXNlfSxDcC5wcm90b3R5cGUuc2V0V2l0aFByaW9yaXR5PWZ1bmN0aW9uKHQsZSxuKXtpZihLbygiUmVmZXJlbmNlLnNldFdpdGhQcmlvcml0eSIsMiwzLGFyZ3VtZW50cy5sZW5ndGgpLF9mKCJSZWZlcmVuY2Uuc2V0V2l0aFByaW9yaXR5Iix0aGlzLnBhdGgpLHZmKCJSZWZlcmVuY2Uuc2V0V2l0aFByaW9yaXR5IiwxLHQsdGhpcy5wYXRoLCExKSx5ZigiUmVmZXJlbmNlLnNldFdpdGhQcmlvcml0eSIsMixlLCExKSxIbygiUmVmZXJlbmNlLnNldFdpdGhQcmlvcml0eSIsMyxuLCEwKSwiLmxlbmd0aCI9PT10aGlzLmdldEtleSgpfHwiLmtleXMiPT09dGhpcy5nZXRLZXkoKSl0aHJvdyJSZWZlcmVuY2Uuc2V0V2l0aFByaW9yaXR5IGZhaWxlZDogIit0aGlzLmdldEtleSgpKyIgaXMgYSByZWFkLW9ubHkgb2JqZWN0LiI7dmFyIHI9bmV3IGxvO3JldHVybiBLZih0aGlzLnJlcG8sdGhpcy5wYXRoLHQsZSxyLndyYXBDYWxsYmFjayhuKSksci5wcm9taXNlfSxDcC5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKHQpe3JldHVybiBLbygiUmVmZXJlbmNlLnJlbW92ZSIsMCwxLGFyZ3VtZW50cy5sZW5ndGgpLF9mKCJSZWZlcmVuY2UucmVtb3ZlIix0aGlzLnBhdGgpLEhvKCJSZWZlcmVuY2UucmVtb3ZlIiwxLHQsITApLHRoaXMuc2V0KG51bGwsdCl9LENwLnByb3RvdHlwZS50cmFuc2FjdGlvbj1mdW5jdGlvbih0LHIsZSl7dmFyIGk9dGhpcztpZihLbygiUmVmZXJlbmNlLnRyYW5zYWN0aW9uIiwxLDMsYXJndW1lbnRzLmxlbmd0aCksX2YoIlJlZmVyZW5jZS50cmFuc2FjdGlvbiIsdGhpcy5wYXRoKSxIbygiUmVmZXJlbmNlLnRyYW5zYWN0aW9uIiwxLHQsITEpLEhvKCJSZWZlcmVuY2UudHJhbnNhY3Rpb24iLDIsciwhMCksZnVuY3Rpb24odCxlLG4scil7aWYoKCFyfHx2b2lkIDAhPT1uKSYmImJvb2xlYW4iIT10eXBlb2Ygbil0aHJvdyBuZXcgRXJyb3IoV28odCxlLHIpKyJtdXN0IGJlIGEgYm9vbGVhbi4iKX0oIlJlZmVyZW5jZS50cmFuc2FjdGlvbiIsMyxlLCEwKSwiLmxlbmd0aCI9PT10aGlzLmdldEtleSgpfHwiLmtleXMiPT09dGhpcy5nZXRLZXkoKSl0aHJvdyJSZWZlcmVuY2UudHJhbnNhY3Rpb24gZmFpbGVkOiAiK3RoaXMuZ2V0S2V5KCkrIiBpcyBhIHJlYWQtb25seSBvYmplY3QuIjt2b2lkIDA9PT1lJiYoZT0hMCk7dmFyIG89bmV3IGxvOyJmdW5jdGlvbiI9PXR5cGVvZiByJiZvLnByb21pc2UuY2F0Y2goZnVuY3Rpb24oKXt9KTtmdW5jdGlvbiBuKCl7fXZhciBzPW5ldyBDcCh0aGlzLmRhdGFiYXNlLHRoaXMucGF0aCk7cy5vbigidmFsdWUiLG4pO3JldHVybiBmdW5jdGlvbih0LGUsbixyLGksbyl7UWYodCwidHJhbnNhY3Rpb24gb24gIitlKTt2YXIgcz17cGF0aDplLHVwZGF0ZTpuLG9uQ29tcGxldGU6cixzdGF0dXM6bnVsbCxvcmRlcjpHcygpLGFwcGx5TG9jYWxseTpvLHJldHJ5Q291bnQ6MCx1bndhdGNoZXI6aSxhYm9ydFJlYXNvbjpudWxsLGN1cnJlbnRXcml0ZUlkOm51bGwsY3VycmVudElucHV0U25hcHNob3Q6bnVsbCxjdXJyZW50T3V0cHV0U25hcHNob3RSYXc6bnVsbCxjdXJyZW50T3V0cHV0U25hcHNob3RSZXNvbHZlZDpudWxsfSxuPVhmKHQsZSx2b2lkIDApO3MuY3VycmVudElucHV0U25hcHNob3Q9bix2b2lkIDA9PT0ocj1zLnVwZGF0ZShuLnZhbCgpKSk/KHMudW53YXRjaGVyKCkscy5jdXJyZW50T3V0cHV0U25hcHNob3RSYXc9bnVsbCxzLmN1cnJlbnRPdXRwdXRTbmFwc2hvdFJlc29sdmVkPW51bGwscy5vbkNvbXBsZXRlJiZzLm9uQ29tcGxldGUobnVsbCwhMSxzLmN1cnJlbnRJbnB1dFNuYXBzaG90KSk6KFNmKCJ0cmFuc2FjdGlvbiBmYWlsZWQ6IERhdGEgcmV0dXJuZWQgIixyLHMucGF0aCkscy5zdGF0dXM9MCwoaT1zZihvPW9mKHQudHJhbnNhY3Rpb25RdWV1ZVRyZWVfLGUpKXx8W10pLnB1c2gocyksYWYobyxpKSxvPXZvaWQgMCwib2JqZWN0Ij09dHlwZW9mIHImJm51bGwhPT1yJiZPbyhyLCIucHJpb3JpdHkiKT8obz1EbyhyLCIucHJpb3JpdHkiKSxzbyhkZihvKSwiSW52YWxpZCBwcmlvcml0eSByZXR1cm5lZCBieSB0cmFuc2FjdGlvbi4gUHJpb3JpdHkgbXVzdCBiZSBhIHZhbGlkIHN0cmluZywgZmluaXRlIG51bWJlciwgc2VydmVyIHZhbHVlLCBvciBudWxsLiIpKTpvPSh4bCh0LnNlcnZlclN5bmNUcmVlXyxlKXx8dWMuRU1QVFlfTk9ERSkuZ2V0UHJpb3JpdHkoKS52YWwoKSxpPVVmKHQpLG89cGMocixvKSxpPWVmKG8sbixpKSxzLmN1cnJlbnRPdXRwdXRTbmFwc2hvdFJhdz1vLHMuY3VycmVudE91dHB1dFNuYXBzaG90UmVzb2x2ZWQ9aSxzLmN1cnJlbnRXcml0ZUlkPUJmKHQpLHM9QWwodC5zZXJ2ZXJTeW5jVHJlZV8sZSxpLHMuY3VycmVudFdyaXRlSWQscy5hcHBseUxvY2FsbHkpLFJmKHQuZXZlbnRRdWV1ZV8sZSxzKSxKZih0LHQudHJhbnNhY3Rpb25RdWV1ZVRyZWVfKSl9KHRoaXMucmVwbyx0aGlzLnBhdGgsdCxmdW5jdGlvbih0LGUsbil7dD8oby5yZWplY3QodCksImZ1bmN0aW9uIj09dHlwZW9mIHImJnIodCxlLG51bGwpKToobj1uZXcgc3AobixuZXcgQ3AoaS5kYXRhYmFzZSxpLnBhdGgpLEp1KSxvLnJlc29sdmUobmV3IF9wKGUsbikpLCJmdW5jdGlvbiI9PXR5cGVvZiByJiZyKG51bGwsZSxuKSl9LGZ1bmN0aW9uKCl7cy5vZmYoInZhbHVlIixuKX0sZSksby5wcm9taXNlfSxDcC5wcm90b3R5cGUuc2V0UHJpb3JpdHk9ZnVuY3Rpb24odCxlKXtLbygiUmVmZXJlbmNlLnNldFByaW9yaXR5IiwxLDIsYXJndW1lbnRzLmxlbmd0aCksX2YoIlJlZmVyZW5jZS5zZXRQcmlvcml0eSIsdGhpcy5wYXRoKSx5ZigiUmVmZXJlbmNlLnNldFByaW9yaXR5IiwxLHQsITEpLEhvKCJSZWZlcmVuY2Uuc2V0UHJpb3JpdHkiLDIsZSwhMCk7dmFyIG49bmV3IGxvO3JldHVybiBLZih0aGlzLnJlcG8sdXUodGhpcy5wYXRoLCIucHJpb3JpdHkiKSx0LG51bGwsbi53cmFwQ2FsbGJhY2soZSkpLG4ucHJvbWlzZX0sQ3AucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24odCxlKXtLbygiUmVmZXJlbmNlLnB1c2giLDAsMixhcmd1bWVudHMubGVuZ3RoKSxfZigiUmVmZXJlbmNlLnB1c2giLHRoaXMucGF0aCksdmYoIlJlZmVyZW5jZS5wdXNoIiwxLHQsdGhpcy5wYXRoLCEwKSxIbygiUmVmZXJlbmNlLnB1c2giLDIsZSwhMCk7dmFyIG49RmYodGhpcy5yZXBvKSxyPVNjKG4pLG49dGhpcy5jaGlsZChyKSxpPXRoaXMuY2hpbGQociksdD1udWxsIT10P24uc2V0KHQsZSkudGhlbihmdW5jdGlvbigpe3JldHVybiBpfSk6UHJvbWlzZS5yZXNvbHZlKGkpO3JldHVybiBuLnRoZW49dC50aGVuLmJpbmQodCksbi5jYXRjaD10LnRoZW4uYmluZCh0LHZvaWQgMCksImZ1bmN0aW9uIj09dHlwZW9mIGUmJnQuY2F0Y2goZnVuY3Rpb24oKXt9KSxufSxDcC5wcm90b3R5cGUub25EaXNjb25uZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIF9mKCJSZWZlcmVuY2Uub25EaXNjb25uZWN0Iix0aGlzLnBhdGgpLG5ldyB1cCh0aGlzLnJlcG8sdGhpcy5wYXRoKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KENwLnByb3RvdHlwZSwia2V5Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0S2V5KCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KENwLnByb3RvdHlwZSwicGFyZW50Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0UGFyZW50KCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KENwLnByb3RvdHlwZSwicm9vdCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFJvb3QoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxDcCk7ZnVuY3Rpb24gQ3AodCxlKXtyZXR1cm4gVHAuY2FsbCh0aGlzLHQsZSxuZXcgTWMsITEpfHx0aGlzfWJwLl9fcmVmZXJlbmNlQ29uc3RydWN0b3I9U3AsRXA9U3Asc28oIXVsLCJfX3JlZmVyZW5jZUNvbnN0cnVjdG9yIGhhcyBhbHJlYWR5IGJlZW4gZGVmaW5lZCIpLHVsPUVwO3ZhciBOcD0iRklSRUJBU0VfREFUQUJBU0VfRU1VTEFUT1JfSE9TVCIsQXA9e30sa3A9ITE7ZnVuY3Rpb24gUnAodCxlLG4scil7dmFyIGk9bnx8dC5vcHRpb25zLmRhdGFiYXNlVVJMO3ZvaWQgMD09PWkmJih0Lm9wdGlvbnMucHJvamVjdElkfHwkcygiQ2FuJ3QgZGV0ZXJtaW5lIEZpcmViYXNlIERhdGFiYXNlIFVSTC4gQmUgc3VyZSB0byBpbmNsdWRlICBhIFByb2plY3QgSUQgd2hlbiBjYWxsaW5nIGZpcmViYXNlLmluaXRpYWxpemVBcHAoKS4iKSxYcygiVXNpbmcgZGVmYXVsdCBob3N0IGZvciBwcm9qZWN0ICIsdC5vcHRpb25zLnByb2plY3RJZCksaT10Lm9wdGlvbnMucHJvamVjdElkKyItZGVmYXVsdC1ydGRiLmZpcmViYXNlaW8uY29tIik7dmFyIG8scz1pcChpLHIpLGE9cy5yZXBvSW5mbyxuPXZvaWQgMDsobj0idW5kZWZpbmVkIiE9dHlwZW9mIHByb2Nlc3M/cHJvY2Vzcy5lbnZbTnBdOm4pPyhvPSEwLGk9Imh0dHA6Ly8iK24rIj9ucz0iK2EubmFtZXNwYWNlLGE9KHM9aXAoaSxyKSkucmVwb0luZm8pOm89IXMucmVwb0luZm8uc2VjdXJlO2U9ciYmbz9uZXcgdmE6bmV3IHBhKHQsZSk7Q2YoIkludmFsaWQgRmlyZWJhc2UgRGF0YWJhc2UgVVJMIiwxLHMpLGN1KHMucGF0aCl8fCRzKCJEYXRhYmFzZSBVUkwgbXVzdCBwb2ludCB0byB0aGUgcm9vdCBvZiBhIEZpcmViYXNlIERhdGFiYXNlIChub3QgaW5jbHVkaW5nIGEgY2hpbGQgcGF0aCkuIik7ZT1mdW5jdGlvbih0LGUsbil7dmFyIHI9RG8oQXAsZS5uYW1lKTtyfHwocj17fSxBcFtlLm5hbWVdPXIpO3ZhciBpPURvKHIsdC50b1VSTFN0cmluZygpKTtpJiYkcygiRGF0YWJhc2UgaW5pdGlhbGl6ZWQgbXVsdGlwbGUgdGltZXMuIFBsZWFzZSBtYWtlIHN1cmUgdGhlIGZvcm1hdCBvZiB0aGUgZGF0YWJhc2UgVVJMIG1hdGNoZXMgd2l0aCBlYWNoIGRhdGFiYXNlKCkgY2FsbC4iKTtyZXR1cm4gaT1uZXcgeGYodCxrcCxlLG4pLHJbdC50b1VSTFN0cmluZygpXT1pfShhLHQsZSk7cmV0dXJuIG5ldyBQcChlKX12YXIgUHA9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPcC5wcm90b3R5cGUsInJlcG9fIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaW5zdGFuY2VTdGFydGVkX3x8KE1mKHRoaXMucmVwb0ludGVybmFsXyksdGhpcy5pbnN0YW5jZVN0YXJ0ZWRfPSEwKSx0aGlzLnJlcG9JbnRlcm5hbF99LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KE9wLnByb3RvdHlwZSwicm9vdF8iLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yb290SW50ZXJuYWxffHwodGhpcy5yb290SW50ZXJuYWxfPW5ldyBTcCh0aGlzLGV1KCkpKSx0aGlzLnJvb3RJbnRlcm5hbF99LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KE9wLnByb3RvdHlwZSwiYXBwIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVwb18uYXBwfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9wLnByb3RvdHlwZS51c2VFbXVsYXRvcj1mdW5jdGlvbih0LGUpe3ZhciBuO3RoaXMuY2hlY2tEZWxldGVkXygidXNlRW11bGF0b3IiKSx0aGlzLmluc3RhbmNlU3RhcnRlZF8/JHMoIkNhbm5vdCBjYWxsIHVzZUVtdWxhdG9yKCkgYWZ0ZXIgaW5zdGFuY2UgaGFzIGFscmVhZHkgYmVlbiBpbml0aWFsaXplZC4iKToobj10aGlzLnJlcG9JbnRlcm5hbF8sdD10LGU9ZSxuLnJlcG9JbmZvXz1uZXcgd2EodCsiOiIrZSwhMSxuLnJlcG9JbmZvXy5uYW1lc3BhY2Usbi5yZXBvSW5mb18ud2ViU29ja2V0T25seSxuLnJlcG9JbmZvXy5ub2RlQWRtaW4sbi5yZXBvSW5mb18ucGVyc2lzdGVuY2VLZXksbi5yZXBvSW5mb18uaW5jbHVkZU5hbWVzcGFjZUluUXVlcnlQYXJhbXMpLG4ucmVwb0luZm9fLm5vZGVBZG1pbiYmKG4uYXV0aFRva2VuUHJvdmlkZXJfPW5ldyB2YSkpfSxPcC5wcm90b3R5cGUucmVmPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmNoZWNrRGVsZXRlZF8oInJlZiIpLEtvKCJkYXRhYmFzZS5yZWYiLDAsMSxhcmd1bWVudHMubGVuZ3RoKSx0IGluc3RhbmNlb2YgU3A/dGhpcy5yZWZGcm9tVVJMKHQudG9TdHJpbmcoKSk6dm9pZCAwIT09dD90aGlzLnJvb3RfLmNoaWxkKHQpOnRoaXMucm9vdF99LE9wLnByb3RvdHlwZS5yZWZGcm9tVVJMPWZ1bmN0aW9uKHQpe3ZhciBlPSJkYXRhYmFzZS5yZWZGcm9tVVJMIjt0aGlzLmNoZWNrRGVsZXRlZF8oZSksS28oZSwxLDEsYXJndW1lbnRzLmxlbmd0aCk7dmFyIG49aXAodCx0aGlzLnJlcG9fLnJlcG9JbmZvXy5ub2RlQWRtaW4pO0NmKGUsMSxuKTt0PW4ucmVwb0luZm87cmV0dXJuIHRoaXMucmVwb18ucmVwb0luZm9fLmlzQ3VzdG9tSG9zdCgpfHx0Lmhvc3Q9PT10aGlzLnJlcG9fLnJlcG9JbmZvXy5ob3N0fHwkcyhlKyI6IEhvc3QgbmFtZSBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBkYXRhYmFzZTogKGZvdW5kICIrdC5ob3N0KyIgYnV0IGV4cGVjdGVkICIrdGhpcy5yZXBvXy5yZXBvSW5mb18uaG9zdCsiKSIpLHRoaXMucmVmKG4ucGF0aC50b1N0cmluZygpKX0sT3AucHJvdG90eXBlLmNoZWNrRGVsZXRlZF89ZnVuY3Rpb24odCl7bnVsbD09PXRoaXMucmVwb0ludGVybmFsXyYmJHMoIkNhbm5vdCBjYWxsICIrdCsiIG9uIGEgZGVsZXRlZCBkYXRhYmFzZS4iKX0sT3AucHJvdG90eXBlLmdvT2ZmbGluZT1mdW5jdGlvbigpe0tvKCJkYXRhYmFzZS5nb09mZmxpbmUiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLmNoZWNrRGVsZXRlZF8oImdvT2ZmbGluZSIpLHpmKHRoaXMucmVwb18pfSxPcC5wcm90b3R5cGUuZ29PbmxpbmU9ZnVuY3Rpb24oKXt2YXIgdDtLbygiZGF0YWJhc2UuZ29PbmxpbmUiLDAsMCxhcmd1bWVudHMubGVuZ3RoKSx0aGlzLmNoZWNrRGVsZXRlZF8oImdvT25saW5lIiksKHQ9dGhpcy5yZXBvXykucGVyc2lzdGVudENvbm5lY3Rpb25fJiZ0LnBlcnNpc3RlbnRDb25uZWN0aW9uXy5yZXN1bWUoT2YpfSxPcC5TZXJ2ZXJWYWx1ZT17VElNRVNUQU1QOnsiLnN2IjoidGltZXN0YW1wIn0saW5jcmVtZW50OmZ1bmN0aW9uKHQpe3JldHVybnsiLnN2Ijp7aW5jcmVtZW50OnR9fX19LE9wKTtmdW5jdGlvbiBPcCh0KXt2YXIgZT10aGlzO3RoaXMucmVwb0ludGVybmFsXz10LHRoaXMuaW5zdGFuY2VTdGFydGVkXz0hMSx0aGlzLklOVEVSTkFMPXtkZWxldGU6ZnVuY3Rpb24oKXtyZXR1cm4gJGkoZSx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7dmFyIGUsbjtyZXR1cm4gdGhpcy5jaGVja0RlbGV0ZWRfKCJkZWxldGUiKSxlPXRoaXMucmVwb18sKG49RG8oQXAsZS5hcHAubmFtZSkpJiZEbyhuLGUua2V5KT09PWV8fCRzKCJEYXRhYmFzZSAiK2UuYXBwLm5hbWUrIigiK2UucmVwb0luZm9fKyIpIGhhcyBhbHJlYWR5IGJlZW4gZGVsZXRlZC4iKSx6ZihlKSxkZWxldGUgbltlLmtleV0sdGhpcy5yZXBvSW50ZXJuYWxfPW51bGwsdGhpcy5yb290SW50ZXJuYWxfPW51bGwsWzJdfSl9KX19LHQgaW5zdGFuY2VvZiB4Znx8JHMoIkRvbid0IGNhbGwgbmV3IERhdGFiYXNlKCkgZGlyZWN0bHkgLSBwbGVhc2UgdXNlIGZpcmViYXNlLmRhdGFiYXNlKCkuIil9dmFyIERwPU9iamVjdC5mcmVlemUoe19fcHJvdG9fXzpudWxsLGZvcmNlTG9uZ1BvbGxpbmc6ZnVuY3Rpb24oKXtqYS5mb3JjZURpc2FsbG93KCksT2EuZm9yY2VBbGxvdygpfSxmb3JjZVdlYlNvY2tldHM6ZnVuY3Rpb24oKXtPYS5mb3JjZURpc2FsbG93KCl9LGlzV2ViU29ja2V0c0F2YWlsYWJsZTpmdW5jdGlvbigpe3JldHVybiBqYS5pc0F2YWlsYWJsZSgpfSxzZXRTZWN1cml0eURlYnVnQ2FsbGJhY2s6ZnVuY3Rpb24odCxlKXt0LnJlcG8ucGVyc2lzdGVudENvbm5lY3Rpb25fLnNlY3VyaXR5RGVidWdDYWxsYmFja189ZX0sc3RhdHM6ZnVuY3Rpb24odCxlKXt2YXIgaTt0PXQucmVwbyx2b2lkIDA9PT0oZT1lKSYmKGU9ITEpLCJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmKHQ9ZT8odC5zdGF0c0xpc3RlbmVyX3x8KHQuc3RhdHNMaXN0ZW5lcl89bmV3IFhjKHQuc3RhdHNfKSksdC5zdGF0c0xpc3RlbmVyXy5nZXQoKSk6dC5zdGF0c18uZ2V0KCksaT1PYmplY3Qua2V5cyh0KS5yZWR1Y2UoZnVuY3Rpb24odCxlKXtyZXR1cm4gTWF0aC5tYXgoZS5sZW5ndGgsdCl9LDApLGlhKHQsZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dCxyPXQubGVuZ3RoO3I8aSsyO3IrKyluKz0iICI7Y29uc29sZS5sb2cobitlKX0pKX0sc3RhdHNJbmNyZW1lbnRDb3VudGVyOmZ1bmN0aW9uKHQsZSl7dD10LnJlcG8sZT1lLHQuc3RhdHNfLmluY3JlbWVudENvdW50ZXIoZSksdD10LnN0YXRzUmVwb3J0ZXJfLGU9ZSx0LnN0YXRzVG9SZXBvcnRfW2VdPSEwfSxkYXRhVXBkYXRlQ291bnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVwby5kYXRhVXBkYXRlQ291bnR9LGludGVyY2VwdFNlcnZlckRhdGE6ZnVuY3Rpb24odCxlKXt0PXQucmVwbyxlPWUsdC5pbnRlcmNlcHRTZXJ2ZXJEYXRhQ2FsbGJhY2tfPWV9LGluaXRTdGFuZGFsb25lOmZ1bmN0aW9uKHQpe3ZhciBlPXQuYXBwLG49dC51cmwscj10LnZlcnNpb24saT10LmN1c3RvbUF1dGhJbXBsLG89dC5uYW1lc3BhY2UsdD12b2lkIDAhPT0odD10Lm5vZGVBZG1pbikmJnQ7cmV0dXJuIEZhKHIpLChyPW5ldyBycygiYXV0aC1pbnRlcm5hbCIsbmV3IG9zKCJkYXRhYmFzZS1zdGFuZGFsb25lIikpKS5zZXRDb21wb25lbnQobmV3IHRzKCJhdXRoLWludGVybmFsIixmdW5jdGlvbigpe3JldHVybiBpfSwiUFJJVkFURSIpKSx7aW5zdGFuY2U6UnAoZSxyLG4sdCksbmFtZXNwYWNlOm99fX0pLFNuPVR1O1R1LnByb3RvdHlwZS5zaW1wbGVMaXN0ZW49ZnVuY3Rpb24odCxlKXt0aGlzLnNlbmRSZXF1ZXN0KCJxIix7cDp0fSxlKX0sVHUucHJvdG90eXBlLmVjaG89ZnVuY3Rpb24odCxlKXt0aGlzLnNlbmRSZXF1ZXN0KCJlY2hvIix7ZDp0fSxlKX07dmFyIHhwLExwPU9iamVjdC5mcmVlemUoe19fcHJvdG9fXzpudWxsLERhdGFDb25uZWN0aW9uOlNuLFJlYWxUaW1lQ29ubmVjdGlvbjpLYSxoaWphY2tIYXNoOmZ1bmN0aW9uKGkpe3ZhciBvPVR1LnByb3RvdHlwZS5wdXQ7cmV0dXJuIFR1LnByb3RvdHlwZS5wdXQ9ZnVuY3Rpb24odCxlLG4scil7dm9pZCAwIT09ciYmKHI9aSgpKSxvLmNhbGwodGhpcyx0LGUsbixyKX0sZnVuY3Rpb24oKXtUdS5wcm90b3R5cGUucHV0PW99fSxDb25uZWN0aW9uVGFyZ2V0OndhLHF1ZXJ5SWRlbnRpZmllcjpmdW5jdGlvbih0KXtyZXR1cm4gdC5xdWVyeUlkZW50aWZpZXIoKX0sZm9yY2VSZXN0Q2xpZW50OmZ1bmN0aW9uKHQpe2twPXR9fSksTXA9UHAuU2VydmVyVmFsdWU7RmEoKHhwPVhsKS5TREtfVkVSU0lPTikseHAuSU5URVJOQUwucmVnaXN0ZXJDb21wb25lbnQobmV3IHRzKCJkYXRhYmFzZSIsZnVuY3Rpb24odCxlKXtlPWUuaW5zdGFuY2VJZGVudGlmaWVyO3JldHVybiBScCh0LmdldFByb3ZpZGVyKCJhcHAiKS5nZXRJbW1lZGlhdGUoKSx0LmdldFByb3ZpZGVyKCJhdXRoLWludGVybmFsIiksZSx2b2lkIDApfSwiUFVCTElDIikuc2V0U2VydmljZVByb3BzKHtSZWZlcmVuY2U6U3AsUXVlcnk6YnAsRGF0YWJhc2U6UHAsRGF0YVNuYXBzaG90OnNwLGVuYWJsZUxvZ2dpbmc6TXMsSU5URVJOQUw6RHAsU2VydmVyVmFsdWU6TXAsVEVTVF9BQ0NFU1M6THB9KS5zZXRNdWx0aXBsZUluc3RhbmNlcyghMCkpLHhwLnJlZ2lzdGVyVmVyc2lvbigiQGZpcmViYXNlL2RhdGFiYXNlIiwiMC45LjciKTt2YXIgRnA9ZnVuY3Rpb24odCxlKXtyZXR1cm4oRnA9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKHQsZSl7dC5fX3Byb3RvX189ZX18fGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikmJih0W25dPWVbbl0pfSkodCxlKX07ZnVuY3Rpb24gVXAodCl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmU3ltYm9sLml0ZXJhdG9yLG49ZSYmdFtlXSxyPTA7aWYobilyZXR1cm4gbi5jYWxsKHQpO2lmKHQmJiJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGgpcmV0dXJue25leHQ6ZnVuY3Rpb24oKXtyZXR1cm57dmFsdWU6KHQ9dCYmcj49dC5sZW5ndGg/dm9pZCAwOnQpJiZ0W3IrK10sZG9uZTohdH19fTt0aHJvdyBuZXcgVHlwZUVycm9yKGU/Ik9iamVjdCBpcyBub3QgaXRlcmFibGUuIjoiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpfXZhciBHPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e30sanA9e30scXA9R3x8c2VsZjtmdW5jdGlvbiBWcCgpe31mdW5jdGlvbiBCcCh0KXt2YXIgZT10eXBlb2YgdDtyZXR1cm4iYXJyYXkiPT0oZT0ib2JqZWN0IiE9ZT9lOnQ/QXJyYXkuaXNBcnJheSh0KT8iYXJyYXkiOmU6Im51bGwiKXx8Im9iamVjdCI9PWUmJiJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGh9ZnVuY3Rpb24gS3AodCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuIm9iamVjdCI9PWUmJm51bGwhPXR8fCJmdW5jdGlvbiI9PWV9dmFyIFdwPSJjbG9zdXJlX3VpZF8iKygxZTkqTWF0aC5yYW5kb20oKT4+PjApLEhwPTA7ZnVuY3Rpb24gR3AodCxlLG4pe3JldHVybiB0LmNhbGwuYXBwbHkodC5iaW5kLGFyZ3VtZW50cyl9ZnVuY3Rpb24genAoZSxuLHQpe2lmKCFlKXRocm93IEVycm9yKCk7aWYoMjxhcmd1bWVudHMubGVuZ3RoKXt2YXIgcj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMik7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkodCxyKSxlLmFwcGx5KG4sdCl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KG4sYXJndW1lbnRzKX19ZnVuY3Rpb24gUXAodCxlLG4pe3JldHVybihRcD1GdW5jdGlvbi5wcm90b3R5cGUuYmluZCYmLTEhPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kLnRvU3RyaW5nKCkuaW5kZXhPZigibmF0aXZlIGNvZGUiKT9HcDp6cCkuYXBwbHkobnVsbCxhcmd1bWVudHMpfWZ1bmN0aW9uIFlwKGUpe3ZhciBuPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgdD1uLnNsaWNlKCk7cmV0dXJuIHQucHVzaC5hcHBseSh0LGFyZ3VtZW50cyksZS5hcHBseSh0aGlzLHQpfX1mdW5jdGlvbiBYcCgpe3JldHVybiBEYXRlLm5vdygpfWZ1bmN0aW9uIEpwKHQsbyl7ZnVuY3Rpb24gZSgpe31lLnByb3RvdHlwZT1vLnByb3RvdHlwZSx0Llg9by5wcm90b3R5cGUsdC5wcm90b3R5cGU9bmV3IGUsKHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQpLktiPWZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIHI9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0yKSxpPTI7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktMl09YXJndW1lbnRzW2ldO3JldHVybiBvLnByb3RvdHlwZVtlXS5hcHBseSh0LHIpfX1mdW5jdGlvbiAkcCgpe3RoaXMuaj10aGlzLmosdGhpcy5pPXRoaXMuaX0kcC5wcm90b3R5cGUuaj0hMSwkcC5wcm90b3R5cGUuamE9ZnVuY3Rpb24oKXt2YXIgdDshdGhpcy5qJiYodGhpcy5qPSEwLHRoaXMuRygpLDApJiYodD10aGlzLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LFdwKSYmdFtXcF18fCh0W1dwXT0rK0hwKSl9LCRwLnByb3RvdHlwZS5HPWZ1bmN0aW9uKCl7aWYodGhpcy5pKWZvcig7dGhpcy5pLmxlbmd0aDspdGhpcy5pLnNoaWZ0KCkoKX07dmFyIFpwPUFycmF5LnByb3RvdHlwZS5pbmRleE9mP2Z1bmN0aW9uKHQsZSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwodCxlLHZvaWQgMCl9OmZ1bmN0aW9uKHQsZSl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiJzdHJpbmciIT10eXBlb2YgZXx8MSE9ZS5sZW5ndGg/LTE6dC5pbmRleE9mKGUsMCk7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspaWYobiBpbiB0JiZ0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX0sdGQ9QXJyYXkucHJvdG90eXBlLmZvckVhY2g/ZnVuY3Rpb24odCxlLG4pe0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodCxlLG4pfTpmdW5jdGlvbih0LGUsbil7Zm9yKHZhciByPXQubGVuZ3RoLGk9InN0cmluZyI9PXR5cGVvZiB0P3Quc3BsaXQoIiIpOnQsbz0wO288cjtvKyspbyBpbiBpJiZlLmNhbGwobixpW29dLG8sdCl9O2Z1bmN0aW9uIGVkKCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sYXJndW1lbnRzKX1mdW5jdGlvbiBuZCh0KXt2YXIgZT10Lmxlbmd0aDtpZigwPGUpe2Zvcih2YXIgbj1BcnJheShlKSxyPTA7cjxlO3IrKyluW3JdPXRbcl07cmV0dXJuIG59cmV0dXJuW119ZnVuY3Rpb24gcmQodCl7cmV0dXJuL15bXHNceGEwXSokLy50ZXN0KHQpfXZhciBpZCxvZD1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24odCl7cmV0dXJuIHQudHJpbSgpfTpmdW5jdGlvbih0KXtyZXR1cm4vXltcc1x4YTBdKihbXHNcU10qPylbXHNceGEwXSokLy5leGVjKHQpWzFdfTtmdW5jdGlvbiBzZCh0LGUpe3JldHVybi0xIT10LmluZGV4T2YoZSl9ZnVuY3Rpb24gYWQodCxlKXtyZXR1cm4gdDxlPy0xOmU8dD8xOjB9dDp7dmFyIHVkPXFwLm5hdmlnYXRvcjtpZih1ZCl7dWQ9dWQudXNlckFnZW50O2lmKHVkKXtpZD11ZDticmVhayB0fX1pZD0iIn1mdW5jdGlvbiBjZCh0LGUsbil7Zm9yKHZhciByIGluIHQpZS5jYWxsKG4sdFtyXSxyLHQpfWZ1bmN0aW9uIGhkKHQpe3ZhciBlLG49e307Zm9yKGUgaW4gdCluW2VdPXRbZV07cmV0dXJuIG59dmFyIGxkPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIik7ZnVuY3Rpb24gZmQodCl7Zm9yKHZhciBlLG4scj0xO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspe2ZvcihlIGluIG49YXJndW1lbnRzW3JdKXRbZV09bltlXTtmb3IodmFyIGk9MDtpPGxkLmxlbmd0aDtpKyspZT1sZFtpXSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixlKSYmKHRbZV09bltlXSl9fWZ1bmN0aW9uIHBkKHQpe3JldHVybiBwZFsiICJdKHQpLHR9cGRbIiAiXT1WcDt2YXIgZGQsdmQ9c2QoaWQsIk9wZXJhIiksZ2Q9c2QoaWQsIlRyaWRlbnQiKXx8c2QoaWQsIk1TSUUiKSx5ZD1zZChpZCwiRWRnZSIpLG1kPXlkfHxnZCxiZD1zZChpZCwiR2Vja28iKSYmIShzZChpZC50b0xvd2VyQ2FzZSgpLCJ3ZWJraXQiKSYmIXNkKGlkLCJFZGdlIikpJiYhKHNkKGlkLCJUcmlkZW50Iil8fHNkKGlkLCJNU0lFIikpJiYhc2QoaWQsIkVkZ2UiKSx3ZD1zZChpZC50b0xvd2VyQ2FzZSgpLCJ3ZWJraXQiKSYmIXNkKGlkLCJFZGdlIik7ZnVuY3Rpb24gX2QoKXt2YXIgdD1xcC5kb2N1bWVudDtyZXR1cm4gdD90LmRvY3VtZW50TW9kZTp2b2lkIDB9dDp7dmFyIElkPSIiLFRkPShUZD1pZCxiZD8vcnY6KFteXCk7XSspKFwpfDspLy5leGVjKFRkKTp5ZD8vRWRnZVwvKFtcZFwuXSspLy5leGVjKFRkKTpnZD8vXGIoPzpNU0lFfHJ2KVs6IF0oW15cKTtdKykoXCl8OykvLmV4ZWMoVGQpOndkPy9XZWJLaXRcLyhcUyspLy5leGVjKFRkKTp2ZD8vKD86VmVyc2lvbilbIFwvXT8oXFMrKS8uZXhlYyhUZCk6dm9pZCAwKTtpZihUZCYmKElkPVRkP1RkWzFdOiIiKSxnZCl7VGQ9X2QoKTtpZihudWxsIT1UZCYmVGQ+cGFyc2VGbG9hdChJZCkpe2RkPVN0cmluZyhUZCk7YnJlYWsgdH19ZGQ9SWR9dmFyIEVkPXt9O2Z1bmN0aW9uIFNkKGEpe3JldHVybiB0PWEsZT1mdW5jdGlvbigpe2Zvcih2YXIgdD0wLGU9b2QoU3RyaW5nKGRkKSkuc3BsaXQoIi4iKSxuPW9kKFN0cmluZyhhKSkuc3BsaXQoIi4iKSxyPU1hdGgubWF4KGUubGVuZ3RoLG4ubGVuZ3RoKSxpPTA7MD09dCYmaTxyO2krKylmb3IodmFyIG89ZVtpXXx8IiIscz1uW2ldfHwiIjtvPS8oXGQqKShcRCopKC4qKS8uZXhlYyhvKXx8WyIiLCIiLCIiLCIiXSxzPS8oXGQqKShcRCopKC4qKS8uZXhlYyhzKXx8WyIiLCIiLCIiLCIiXSwoMCE9b1swXS5sZW5ndGh8fDAhPXNbMF0ubGVuZ3RoKSYmKHQ9YWQoMD09b1sxXS5sZW5ndGg/MDpwYXJzZUludChvWzFdLDEwKSwwPT1zWzFdLmxlbmd0aD8wOnBhcnNlSW50KHNbMV0sMTApKXx8YWQoMD09b1syXS5sZW5ndGgsMD09c1syXS5sZW5ndGgpfHxhZChvWzJdLHNbMl0pLG89b1szXSxzPXNbM10sMD09dCk7KTtyZXR1cm4gMDw9dH0sbj1FZCxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobix0KT9uW3RdOm5bdF09ZSh0KTt2YXIgdCxlLG59dmFyIENkPXFwLmRvY3VtZW50JiZnZCYmKF9kKCl8fHBhcnNlSW50KGRkLDEwKSl8fHZvaWQgMCxOZD0hZ2R8fDk8PU51bWJlcihDZCksQWQ9Z2QmJiFTZCgiOSIpLGtkPWZ1bmN0aW9uKCl7aWYoIXFwLmFkZEV2ZW50TGlzdGVuZXJ8fCFPYmplY3QuZGVmaW5lUHJvcGVydHkpcmV0dXJuITE7dmFyIHQ9ITEsZT1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXt0PSEwfX0pO3RyeXtxcC5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixWcCxlKSxxcC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0ZXN0IixWcCxlKX1jYXRjaCh0KXt9cmV0dXJuIHR9KCk7ZnVuY3Rpb24gUmQodCxlKXt0aGlzLnR5cGU9dCx0aGlzLmE9dGhpcy50YXJnZXQ9ZSx0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9ITF9ZnVuY3Rpb24gUGQodCxlKXtpZihSZC5jYWxsKHRoaXMsdD90LnR5cGU6IiIpLHRoaXMucmVsYXRlZFRhcmdldD10aGlzLmE9dGhpcy50YXJnZXQ9bnVsbCx0aGlzLmJ1dHRvbj10aGlzLnNjcmVlblk9dGhpcy5zY3JlZW5YPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9MCx0aGlzLmtleT0iIix0aGlzLm1ldGFLZXk9dGhpcy5zaGlmdEtleT10aGlzLmFsdEtleT10aGlzLmN0cmxLZXk9ITEsdGhpcy5wb2ludGVySWQ9MCx0aGlzLnBvaW50ZXJUeXBlPSIiLHRoaXMuYz1udWxsLHQpe3ZhciBuPXRoaXMudHlwZT10LnR5cGUscj10LmNoYW5nZWRUb3VjaGVzJiZ0LmNoYW5nZWRUb3VjaGVzLmxlbmd0aD90LmNoYW5nZWRUb3VjaGVzWzBdOm51bGw7aWYodGhpcy50YXJnZXQ9dC50YXJnZXR8fHQuc3JjRWxlbWVudCx0aGlzLmE9ZSxlPXQucmVsYXRlZFRhcmdldCl7aWYoYmQpe3Q6e3RyeXtwZChlLm5vZGVOYW1lKTt2YXIgaT0hMDticmVhayB0fWNhdGNoKHQpe31pPSExfWl8fChlPW51bGwpfX1lbHNlIm1vdXNlb3ZlciI9PW4/ZT10LmZyb21FbGVtZW50OiJtb3VzZW91dCI9PW4mJihlPXQudG9FbGVtZW50KTt0aGlzLnJlbGF0ZWRUYXJnZXQ9ZSxyPyh0aGlzLmNsaWVudFg9dm9pZCAwIT09ci5jbGllbnRYP3IuY2xpZW50WDpyLnBhZ2VYLHRoaXMuY2xpZW50WT12b2lkIDAhPT1yLmNsaWVudFk/ci5jbGllbnRZOnIucGFnZVksdGhpcy5zY3JlZW5YPXIuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9ci5zY3JlZW5ZfHwwKToodGhpcy5jbGllbnRYPXZvaWQgMCE9PXQuY2xpZW50WD90LmNsaWVudFg6dC5wYWdlWCx0aGlzLmNsaWVudFk9dm9pZCAwIT09dC5jbGllbnRZP3QuY2xpZW50WTp0LnBhZ2VZLHRoaXMuc2NyZWVuWD10LnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPXQuc2NyZWVuWXx8MCksdGhpcy5idXR0b249dC5idXR0b24sdGhpcy5rZXk9dC5rZXl8fCIiLHRoaXMuY3RybEtleT10LmN0cmxLZXksdGhpcy5hbHRLZXk9dC5hbHRLZXksdGhpcy5zaGlmdEtleT10LnNoaWZ0S2V5LHRoaXMubWV0YUtleT10Lm1ldGFLZXksdGhpcy5wb2ludGVySWQ9dC5wb2ludGVySWR8fDAsdGhpcy5wb2ludGVyVHlwZT0ic3RyaW5nIj09dHlwZW9mIHQucG9pbnRlclR5cGU/dC5wb2ludGVyVHlwZTpPZFt0LnBvaW50ZXJUeXBlXXx8IiIsKHRoaXMuYz10KS5kZWZhdWx0UHJldmVudGVkJiZ0aGlzLmIoKX19UmQucHJvdG90eXBlLmI9ZnVuY3Rpb24oKXt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9ITB9LEpwKFBkLFJkKTt2YXIgT2Q9ezI6InRvdWNoIiwzOiJwZW4iLDQ6Im1vdXNlIn07UGQucHJvdG90eXBlLmI9ZnVuY3Rpb24oKXtQZC5YLmIuY2FsbCh0aGlzKTt2YXIgdD10aGlzLmM7aWYodC5wcmV2ZW50RGVmYXVsdCl0LnByZXZlbnREZWZhdWx0KCk7ZWxzZSBpZih0LnJldHVyblZhbHVlPSExLEFkKXRyeXsodC5jdHJsS2V5fHwxMTI8PXQua2V5Q29kZSYmdC5rZXlDb2RlPD0xMjMpJiYodC5rZXlDb2RlPS0xKX1jYXRjaCh0KXt9fTt2YXIgRGQ9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKygxZTYqTWF0aC5yYW5kb20oKXwwKSx4ZD0wO2Z1bmN0aW9uIExkKHQsZSxuLHIsaSl7dGhpcy5saXN0ZW5lcj10LHRoaXMucHJveHk9bnVsbCx0aGlzLnNyYz1lLHRoaXMudHlwZT1uLHRoaXMuY2FwdHVyZT0hIXIsdGhpcy5jYT1pLHRoaXMua2V5PSsreGQsdGhpcy5ZPXRoaXMuWj0hMX1mdW5jdGlvbiBNZCh0KXt0Llk9ITAsdC5saXN0ZW5lcj1udWxsLHQucHJveHk9bnVsbCx0LnNyYz1udWxsLHQuY2E9bnVsbH1mdW5jdGlvbiBGZCh0KXt0aGlzLnNyYz10LHRoaXMuYT17fSx0aGlzLmI9MH1mdW5jdGlvbiBVZCh0LGUpe3ZhciBuLHIsaSxvPWUudHlwZTtvIGluIHQuYSYmKG49dC5hW29dLChpPTA8PShyPVpwKG4sZSkpKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKG4sciwxKSxpJiYoTWQoZSksMD09dC5hW29dLmxlbmd0aCYmKGRlbGV0ZSB0LmFbb10sdC5iLS0pKSl9ZnVuY3Rpb24gamQodCxlLG4scil7Zm9yKHZhciBpPTA7aTx0Lmxlbmd0aDsrK2kpe3ZhciBvPXRbaV07aWYoIW8uWSYmby5saXN0ZW5lcj09ZSYmby5jYXB0dXJlPT0hIW4mJm8uY2E9PXIpcmV0dXJuIGl9cmV0dXJuLTF9RmQucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0LGUsbixyLGkpe3ZhciBvPXQudG9TdHJpbmcoKTsodD10aGlzLmFbb10pfHwodD10aGlzLmFbb109W10sdGhpcy5iKyspO3ZhciBzPWpkKHQsZSxyLGkpO3JldHVybi0xPHM/KGU9dFtzXSxufHwoZS5aPSExKSk6KChlPW5ldyBMZChlLHRoaXMuc3JjLG8sISFyLGkpKS5aPW4sdC5wdXNoKGUpKSxlfTt2YXIgcWQ9ImNsb3N1cmVfbG1fIisoMWU2Kk1hdGgucmFuZG9tKCl8MCksVmQ9e307ZnVuY3Rpb24gQmQodCxlLG4scixpKXtpZihyJiZyLm9uY2UpcmV0dXJuIGZ1bmN0aW9uIHQoZSxuLHIsaSxvKXtpZihBcnJheS5pc0FycmF5KG4pKXtmb3IodmFyIHM9MDtzPG4ubGVuZ3RoO3MrKyl0KGUsbltzXSxyLGksbyk7cmV0dXJuIG51bGx9cj1YZChyKTtyZXR1cm4gZSYmZVtEZF0/ZS53YShuLHIsS3AoaSk/ISFpLmNhcHR1cmU6ISFpLG8pOktkKGUsbixyLCEwLGksbyl9KHQsZSxuLHIsaSk7aWYoQXJyYXkuaXNBcnJheShlKSl7Zm9yKHZhciBvPTA7bzxlLmxlbmd0aDtvKyspQmQodCxlW29dLG4scixpKTtyZXR1cm4gbnVsbH1yZXR1cm4gbj1YZChuKSx0JiZ0W0RkXT90LnZhKGUsbixLcChyKT8hIXIuY2FwdHVyZTohIXIsaSk6S2QodCxlLG4sITEscixpKX1mdW5jdGlvbiBLZCh0LGUsbixyLGksbyl7aWYoIWUpdGhyb3cgRXJyb3IoIkludmFsaWQgZXZlbnQgdHlwZSIpO3ZhciBzPUtwKGkpPyEhaS5jYXB0dXJlOiEhaTtpZihzJiYhTmQpcmV0dXJuIG51bGw7dmFyIGEsdSxjPVFkKHQpO2lmKGN8fCh0W3FkXT1jPW5ldyBGZCh0KSksKG49Yy5hZGQoZSxuLHIscyxvKSkucHJveHkpcmV0dXJuIG47aWYoYT16ZCxyPXU9TmQ/ZnVuY3Rpb24odCl7cmV0dXJuIGEuY2FsbCh1LnNyYyx1Lmxpc3RlbmVyLHQpfTpmdW5jdGlvbih0KXtpZighKHQ9YS5jYWxsKHUuc3JjLHUubGlzdGVuZXIsdCkpKXJldHVybiB0fSwobi5wcm94eT1yKS5zcmM9dCxyLmxpc3RlbmVyPW4sdC5hZGRFdmVudExpc3RlbmVyKXZvaWQgMD09PShpPSFrZD9zOmkpJiYoaT0hMSksdC5hZGRFdmVudExpc3RlbmVyKGUudG9TdHJpbmcoKSxyLGkpO2Vsc2UgaWYodC5hdHRhY2hFdmVudCl0LmF0dGFjaEV2ZW50KEhkKGUudG9TdHJpbmcoKSkscik7ZWxzZXtpZighdC5hZGRMaXN0ZW5lcnx8IXQucmVtb3ZlTGlzdGVuZXIpdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTt0LmFkZExpc3RlbmVyKHIpfXJldHVybiBufWZ1bmN0aW9uIFdkKHQpe3ZhciBlLG4scjsibnVtYmVyIiE9dHlwZW9mIHQmJnQmJiF0LlkmJigoZT10LnNyYykmJmVbRGRdP1VkKGUuYyx0KToobj10LnR5cGUscj10LnByb3h5LGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj9lLnJlbW92ZUV2ZW50TGlzdGVuZXIobixyLHQuY2FwdHVyZSk6ZS5kZXRhY2hFdmVudD9lLmRldGFjaEV2ZW50KEhkKG4pLHIpOmUuYWRkTGlzdGVuZXImJmUucmVtb3ZlTGlzdGVuZXImJmUucmVtb3ZlTGlzdGVuZXIociksKG49UWQoZSkpPyhVZChuLHQpLDA9PW4uYiYmKG4uc3JjPW51bGwsZVtxZF09bnVsbCkpOk1kKHQpKSl9ZnVuY3Rpb24gSGQodCl7cmV0dXJuIHQgaW4gVmQ/VmRbdF06VmRbdF09Im9uIit0fWZ1bmN0aW9uIEdkKHQsZSl7dmFyIG49dC5saXN0ZW5lcixyPXQuY2F8fHQuc3JjO3JldHVybiB0LlomJldkKHQpLG4uY2FsbChyLGUpfWZ1bmN0aW9uIHpkKHQsZSl7aWYodC5ZKXJldHVybiEwO2lmKE5kKXJldHVybiBHZCh0LG5ldyBQZChlLHRoaXMpKTtpZighZSl0OntlPVsid2luZG93IiwiZXZlbnQiXTtmb3IodmFyIG49cXAscj0wO3I8ZS5sZW5ndGg7cisrKWlmKG51bGw9PShuPW5bZVtyXV0pKXtlPW51bGw7YnJlYWsgdH1lPW59cmV0dXJuIEdkKHQsZT1uZXcgUGQoZSx0aGlzKSl9ZnVuY3Rpb24gUWQodCl7cmV0dXJuKHQ9dFtxZF0paW5zdGFuY2VvZiBGZD90Om51bGx9dmFyIFlkPSJfX2Nsb3N1cmVfZXZlbnRzX2ZuXyIrKDFlOSpNYXRoLnJhbmRvbSgpPj4+MCk7ZnVuY3Rpb24gWGQoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGU/ZTooZVtZZF18fChlW1lkXT1mdW5jdGlvbih0KXtyZXR1cm4gZS5oYW5kbGVFdmVudCh0KX0pLGVbWWRdKX1mdW5jdGlvbiBKZCgpeyRwLmNhbGwodGhpcyksdGhpcy5jPW5ldyBGZCh0aGlzKSwodGhpcy5KPXRoaXMpLkM9bnVsbH1mdW5jdGlvbiAkZCh0LGUpe3ZhciBuLHI9dC5DO2lmKHIpZm9yKG49W107cjtyPXIuQyluLnB1c2gocik7aWYodD10Lkoscj1lLnR5cGV8fGUsInN0cmluZyI9PXR5cGVvZiBlP2U9bmV3IFJkKGUsdCk6ZSBpbnN0YW5jZW9mIFJkP2UudGFyZ2V0PWUudGFyZ2V0fHx0OihzPWUsZmQoZT1uZXcgUmQocix0KSxzKSkscz0hMCxuKWZvcih2YXIgaT1uLmxlbmd0aC0xOzA8PWk7aS0tKXZhciBvPWUuYT1uW2ldLHM9WmQobyxyLCEwLGUpJiZzO2lmKHM9WmQobz1lLmE9dCxyLCEwLGUpJiZzLHM9WmQobyxyLCExLGUpJiZzLG4pZm9yKGk9MDtpPG4ubGVuZ3RoO2krKylzPVpkKG89ZS5hPW5baV0sciwhMSxlKSYmc31mdW5jdGlvbiBaZCh0LGUsbixyKXtpZighKGU9dC5jLmFbU3RyaW5nKGUpXSkpcmV0dXJuITA7ZT1lLmNvbmNhdCgpO2Zvcih2YXIgaT0hMCxvPTA7bzxlLmxlbmd0aDsrK28pe3ZhciBzLGEsdT1lW29dO3UmJiF1LlkmJnUuY2FwdHVyZT09biYmKHM9dS5saXN0ZW5lcixhPXUuY2F8fHUuc3JjLHUuWiYmVWQodC5jLHUpLGk9ITEhPT1zLmNhbGwoYSxyKSYmaSl9cmV0dXJuIGkmJiFyLmRlZmF1bHRQcmV2ZW50ZWR9SnAoSmQsJHApLEpkLnByb3RvdHlwZVtEZF09ITAsKHo9SmQucHJvdG90eXBlKS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHQsZSxuLHIpe0JkKHRoaXMsdCxlLG4scil9LHoucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbih0LGUsbixyKXshZnVuY3Rpb24gdChlLG4scixpLG8pe2lmKEFycmF5LmlzQXJyYXkobikpZm9yKHZhciBzPTA7czxuLmxlbmd0aDtzKyspdChlLG5bc10scixpLG8pO2Vsc2UgaT1LcChpKT8hIWkuY2FwdHVyZTohIWkscj1YZChyKSxlJiZlW0RkXT8oZT1lLmMsKG49U3RyaW5nKG4pLnRvU3RyaW5nKCkpaW4gZS5hJiYtMTwocj1qZChzPWUuYVtuXSxyLGksbykpJiYoTWQoc1tyXSksQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKHMsciwxKSwwPT1zLmxlbmd0aCYmKGRlbGV0ZSBlLmFbbl0sZS5iLS0pKSk6KGU9ZSYmUWQoZSkpJiYobj1lLmFbbi50b1N0cmluZygpXSwocj0oZT0tMSk8KGU9bj9qZChuLHIsaSxvKTplKT9uW2VdOm51bGwpJiZXZChyKSl9KHRoaXMsdCxlLG4scil9LHouRz1mdW5jdGlvbigpe2lmKEpkLlguRy5jYWxsKHRoaXMpLHRoaXMuYyl7dmFyIHQsZT10aGlzLmM7Zm9yKHQgaW4gZS5hKXtmb3IodmFyIG49ZS5hW3RdLHI9MDtyPG4ubGVuZ3RoO3IrKylNZChuW3JdKTtkZWxldGUgZS5hW3RdLGUuYi0tfX10aGlzLkM9bnVsbH0sei52YT1mdW5jdGlvbih0LGUsbixyKXtyZXR1cm4gdGhpcy5jLmFkZChTdHJpbmcodCksZSwhMSxuLHIpfSx6LndhPWZ1bmN0aW9uKHQsZSxuLHIpe3JldHVybiB0aGlzLmMuYWRkKFN0cmluZyh0KSxlLCEwLG4scil9O3ZhciB0dj1xcC5KU09OLnN0cmluZ2lmeTtmdW5jdGlvbiBldigpe3RoaXMuYj10aGlzLmE9bnVsbH12YXIgbnYscnY9KGl2LnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXt2YXIgdDtyZXR1cm4gMDx0aGlzLmI/KHRoaXMuYi0tLHQ9dGhpcy5hLHRoaXMuYT10Lm5leHQsdC5uZXh0PW51bGwpOnQ9dGhpcy5jKCksdH0sbmV3IGl2KGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBvdn0sZnVuY3Rpb24odCl7dC5yZXNldCgpfSkpO2Z1bmN0aW9uIGl2KHQsZSl7dGhpcy5jPXQsdGhpcy5mPWUsdGhpcy5iPTAsdGhpcy5hPW51bGx9ZnVuY3Rpb24gb3YoKXt0aGlzLm5leHQ9dGhpcy5iPXRoaXMuYT1udWxsfWZ1bmN0aW9uIHN2KHQsZSl7dmFyIG47bnZ8fChuPXFwLlByb21pc2UucmVzb2x2ZSh2b2lkIDApLG52PWZ1bmN0aW9uKCl7bi50aGVuKGN2KX0pLGF2fHwobnYoKSxhdj0hMCksdXYuYWRkKHQsZSl9ZXYucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0LGUpe3ZhciBuPXJ2LmdldCgpO24uc2V0KHQsZSksdGhpcy5iP3RoaXMuYi5uZXh0PW46dGhpcy5hPW4sdGhpcy5iPW59LG92LnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxlKXt0aGlzLmE9dCx0aGlzLmI9ZSx0aGlzLm5leHQ9bnVsbH07dmFyIGF2PSEob3YucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuYj10aGlzLmE9bnVsbH0pLHV2PW5ldyBldjtmdW5jdGlvbiBjdigpe2Zvcih2YXIgdCxlO249ZT12b2lkIDAsbj1udWxsLChlPXV2KS5hJiYobj1lLmEsZS5hPWUuYS5uZXh0LGUuYXx8KGUuYj1udWxsKSxuLm5leHQ9bnVsbCksdD1uOyl7dHJ5e3QuYS5jYWxsKHQuYil9Y2F0Y2godCl7IWZ1bmN0aW9uKHQpe3FwLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyB0fSwwKX0odCl9dmFyIG49cnY7bi5mKHQpLG4uYjwxMDAmJihuLmIrKyx0Lm5leHQ9bi5hLG4uYT10KX1hdj0hMX1mdW5jdGlvbiBodih0LGUpe0pkLmNhbGwodGhpcyksdGhpcy5iPXR8fDEsdGhpcy5hPWV8fHFwLHRoaXMuZj1RcCh0aGlzLlphLHRoaXMpLHRoaXMuZz1YcCgpfWZ1bmN0aW9uIGx2KHQpe3QuYWE9ITEsdC5NJiYodC5hLmNsZWFyVGltZW91dCh0Lk0pLHQuTT1udWxsKX1mdW5jdGlvbiBmdih0LGUsbil7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpbiYmKHQ9UXAodCxuKSk7ZWxzZXtpZighdHx8ImZ1bmN0aW9uIiE9dHlwZW9mIHQuaGFuZGxlRXZlbnQpdGhyb3cgRXJyb3IoIkludmFsaWQgbGlzdGVuZXIgYXJndW1lbnQiKTt0PVFwKHQuaGFuZGxlRXZlbnQsdCl9cmV0dXJuIDIxNDc0ODM2NDc8TnVtYmVyKGUpPy0xOnFwLnNldFRpbWVvdXQodCxlfHwwKX1KcChodixKZCksKHo9aHYucHJvdG90eXBlKS5hYT0hMSx6Lk09bnVsbCx6LlphPWZ1bmN0aW9uKCl7dmFyIHQ7dGhpcy5hYSYmKDA8KHQ9WHAoKS10aGlzLmcpJiZ0PC44KnRoaXMuYj90aGlzLk09dGhpcy5hLnNldFRpbWVvdXQodGhpcy5mLHRoaXMuYi10KToodGhpcy5NJiYodGhpcy5hLmNsZWFyVGltZW91dCh0aGlzLk0pLHRoaXMuTT1udWxsKSwkZCh0aGlzLCJ0aWNrIiksdGhpcy5hYSYmKGx2KHRoaXMpLHRoaXMuc3RhcnQoKSkpKX0sei5zdGFydD1mdW5jdGlvbigpe3RoaXMuYWE9ITAsdGhpcy5NfHwodGhpcy5NPXRoaXMuYS5zZXRUaW1lb3V0KHRoaXMuZix0aGlzLmIpLHRoaXMuZz1YcCgpKX0sei5HPWZ1bmN0aW9uKCl7aHYuWC5HLmNhbGwodGhpcyksbHYodGhpcyksZGVsZXRlIHRoaXMuYX07dmFyIHB2LGR2LHZ2LGd2PShGcChkdj1tdix2dj1wdj0kcCksZHYucHJvdG90eXBlPW51bGw9PT12dj9PYmplY3QuY3JlYXRlKHZ2KTooeXYucHJvdG90eXBlPXZ2LnByb3RvdHlwZSxuZXcgeXYpLG12LnByb3RvdHlwZS5mPWZ1bmN0aW9uKHQpe3RoaXMuYj1hcmd1bWVudHMsdGhpcy5hP3RoaXMuYz0hMDpmdW5jdGlvbiB0KGUpe2UuYT1mdihmdW5jdGlvbigpe2UuYT1udWxsLGUuYyYmKGUuYz0hMSx0KGUpKX0sZS5oKTt2YXIgbj1lLmI7ZS5iPW51bGwsZS5nLmFwcGx5KG51bGwsbil9KHRoaXMpfSxtdi5wcm90b3R5cGUuRz1mdW5jdGlvbigpe3B2LnByb3RvdHlwZS5HLmNhbGwodGhpcyksdGhpcy5hJiYocXAuY2xlYXJUaW1lb3V0KHRoaXMuYSksdGhpcy5hPW51bGwsdGhpcy5jPSExLHRoaXMuYj1udWxsKX0sbXYpO2Z1bmN0aW9uIHl2KCl7dGhpcy5jb25zdHJ1Y3Rvcj1kdn1mdW5jdGlvbiBtdih0LGUpe3ZhciBuPXB2LmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIG4uZz10LG4uaD1lLG4uYj1udWxsLG4uYz0hMSxuLmE9bnVsbCxufWZ1bmN0aW9uIGJ2KHQpeyRwLmNhbGwodGhpcyksdGhpcy5iPXQsdGhpcy5hPXt9fUpwKGJ2LCRwKTt2YXIgd3Y9W107ZnVuY3Rpb24gX3YodCxlLG4scil7QXJyYXkuaXNBcnJheShuKXx8KG4mJih3dlswXT1uLnRvU3RyaW5nKCkpLG49d3YpO2Zvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgbz1CZChlLG5baV0scnx8dC5oYW5kbGVFdmVudCwhMSx0LmJ8fHQpO2lmKCFvKWJyZWFrO3QuYVtvLmtleV09b319ZnVuY3Rpb24gSXYodCl7Y2QodC5hLGZ1bmN0aW9uKHQsZSl7dGhpcy5hLmhhc093blByb3BlcnR5KGUpJiZXZCh0KX0sdCksdC5hPXt9fWZ1bmN0aW9uIFR2KCl7dGhpcy5hPSEwfWZ1bmN0aW9uIEV2KHQsZSxuLHIpe3QuaW5mbyhmdW5jdGlvbigpe3JldHVybiJYTUxIVFRQIFRFWFQgKCIrZSsiKTogIitmdW5jdGlvbih0LGUpe2lmKCF0LmEpcmV0dXJuIGU7aWYoIWUpcmV0dXJuIG51bGw7dHJ5e3ZhciBuPUpTT04ucGFyc2UoZSk7aWYobilmb3IodD0wO3Q8bi5sZW5ndGg7dCsrKWlmKEFycmF5LmlzQXJyYXkoblt0XSkpe3ZhciByPW5bdF07aWYoIShyLmxlbmd0aDwyKSl7dmFyIGk9clsxXTtpZihBcnJheS5pc0FycmF5KGkpJiYhKGkubGVuZ3RoPDEpKXtyPWlbMF07aWYoIm5vb3AiIT1yJiYic3RvcCIhPXImJiJjbG9zZSIhPXIpZm9yKHZhciBvPTE7bzxpLmxlbmd0aDtvKyspaVtvXT0iIn19fXJldHVybiB0dihuKX1jYXRjaCh0KXtyZXR1cm4gZX19KHQsbikrKHI/IiAiK3I6IiIpfSl9YnYucHJvdG90eXBlLkc9ZnVuY3Rpb24oKXtidi5YLkcuY2FsbCh0aGlzKSxJdih0aGlzKX0sYnYucHJvdG90eXBlLmhhbmRsZUV2ZW50PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIkV2ZW50SGFuZGxlci5oYW5kbGVFdmVudCBub3QgaW1wbGVtZW50ZWQiKX0sVHYucHJvdG90eXBlLmluZm89ZnVuY3Rpb24oKXt9O3ZhciBTdj17fSxDdj1udWxsO2Z1bmN0aW9uIE52KCl7cmV0dXJuIEN2PUN2fHxuZXcgSmR9ZnVuY3Rpb24gQXYodCl7UmQuY2FsbCh0aGlzLFN2LkZhLHQpfWZ1bmN0aW9uIGt2KHQpe3ZhciBlPU52KCk7JGQoZSxuZXcgQXYoZSkpfWZ1bmN0aW9uIFJ2KHQsZSl7UmQuY2FsbCh0aGlzLFN2LlNUQVRfRVZFTlQsdCksdGhpcy5zdGF0PWV9ZnVuY3Rpb24gUHYodCl7dmFyIGU9TnYoKTskZChlLG5ldyBSdihlLHQpKX1mdW5jdGlvbiBPdih0KXtSZC5jYWxsKHRoaXMsU3YuR2EsdCl9ZnVuY3Rpb24gRHYodCxlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBFcnJvcigiRm4gbXVzdCBub3QgYmUgbnVsbCBhbmQgbXVzdCBiZSBhIGZ1bmN0aW9uIik7cmV0dXJuIHFwLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0KCl9LGUpfVN2LkZhPSJzZXJ2ZXJyZWFjaGFiaWxpdHkiLEpwKEF2LFJkKSxTdi5TVEFUX0VWRU5UPSJzdGF0ZXZlbnQiLEpwKFJ2LFJkKSxTdi5HYT0idGltaW5nZXZlbnQiLEpwKE92LFJkKTtHYT17Tk9fRVJST1I6MCwkYToxLG5iOjIsbWI6MyxoYjo0LGxiOjUsb2I6NixEYTo3LFRJTUVPVVQ6OCxyYjo5fSxTbj17ZmI6ImNvbXBsZXRlIixCYjoic3VjY2VzcyIsRWE6ImVycm9yIixEYToiYWJvcnQiLHRiOiJyZWFkeSIsdWI6InJlYWR5c3RhdGVjaGFuZ2UiLFRJTUVPVVQ6InRpbWVvdXQiLHBiOiJpbmNyZW1lbnRhbGRhdGEiLHNiOiJwcm9ncmVzcyIsaWI6ImRvd25sb2FkcHJvZ3Jlc3MiLEpiOiJ1cGxvYWRwcm9ncmVzcyJ9O2Z1bmN0aW9uIHh2KCl7fWZ1bmN0aW9uIEx2KHQpe3ZhciBlO3JldHVybiBlPSEoZT10LmEpP3QuYT17fTplfWZ1bmN0aW9uIE12KCl7fXh2LnByb3RvdHlwZS5hPW51bGw7Rz17T1BFTjoiYSIsZWI6ImIiLEVhOiJjIixxYjoiZCJ9O2Z1bmN0aW9uIEZ2KCl7UmQuY2FsbCh0aGlzLCJkIil9ZnVuY3Rpb24gVXYoKXtSZC5jYWxsKHRoaXMsImMiKX1mdW5jdGlvbiBqdigpe31mdW5jdGlvbiBxdih0LGUsbixyKXt0aGlzLmc9dCx0aGlzLmM9ZSx0aGlzLmY9bix0aGlzLlM9cnx8MSx0aGlzLko9bmV3IGJ2KHRoaXMpLHRoaXMuUD1Cdix0PW1kPzEyNTp2b2lkIDAsdGhpcy5SPW5ldyBodih0KSx0aGlzLkI9bnVsbCx0aGlzLmI9ITEsdGhpcy5qPXRoaXMubD10aGlzLmk9dGhpcy5IPXRoaXMudT10aGlzLlQ9dGhpcy5vPW51bGwsdGhpcy5zPVtdLHRoaXMuYT1udWxsLHRoaXMuRD0wLHRoaXMuaD10aGlzLm09bnVsbCx0aGlzLk49LTEsdGhpcy5BPSExLHRoaXMuTz0wLHRoaXMuRj1udWxsLHRoaXMuVj10aGlzLkM9dGhpcy5VPXRoaXMuST0hMX1KcChGdixSZCksSnAoVXYsUmQpLEpwKGp2LHh2KTt2YXIgVnY9bmV3IGp2LEJ2PTQ1ZTMsS3Y9e30sV3Y9e307ZnVuY3Rpb24gSHYodCxlLG4pe3QuSD0xLHQuaT1mZyhzZyhlKSksdC5qPW4sdC5JPSEwLEd2KHQsbnVsbCl9ZnVuY3Rpb24gR3YodCxlKXt0LnU9WHAoKSxRdih0KSx0Lmw9c2codC5pKTt2YXIgcyxhLHUsYyxoLGwsbj10Lmwscj10LlM7QXJyYXkuaXNBcnJheShyKXx8KHI9W1N0cmluZyhyKV0pLFNnKG4uYiwidCIsciksdC5EPTAsdC5hPW15KHQuZyx0LmcuQz9lOm51bGwpLDA8dC5PJiYodC5GPW5ldyBndihRcCh0LkNhLHQsdC5hKSx0Lk8pKSxfdih0LkosdC5hLCJyZWFkeXN0YXRlY2hhbmdlIix0LlhhKSxlPXQuQj9oZCh0LkIpOnt9LHQuaj8odC5tfHwodC5tPSJQT1NUIiksZVsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIsdC5hLmJhKHQubCx0Lm0sdC5qLGUpKToodC5tPSJHRVQiLHQuYS5iYSh0LmwsdC5tLG51bGwsZSkpLGt2KDEpLHM9dC5jLGE9dC5tLHU9dC5sLGM9dC5mLGg9dC5TLGw9dC5qLHMuaW5mbyhmdW5jdGlvbigpe2lmKHMuYSlpZihsKWZvcih2YXIgdD0iIixlPWwuc3BsaXQoIiYiKSxuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciByLGksbz1lW25dLnNwbGl0KCI9Iik7MTxvLmxlbmd0aCYmKHI9b1swXSxvPW9bMV0sdD0yPD0oaT1yLnNwbGl0KCJfIikpLmxlbmd0aCYmInR5cGUiPT1pWzFdP3QrKHIrIj0iKStvKyImIjp0KyhyKyI9cmVkYWN0ZWQmIikpfWVsc2UgdD1udWxsO2Vsc2UgdD1sO3JldHVybiJYTUxIVFRQIFJFUSAoIitjKyIpIFthdHRlbXB0ICIraCsiXTogIithKyJcbiIrdSsiXG4iK3R9KX1mdW5jdGlvbiB6dih0LGUsbil7Zm9yKHZhciByLGksbyxzPSEwOyF0LkEmJnQuRDxuLmxlbmd0aDspe3ZhciBhPShhPW4sbz1pPXZvaWQgMCxpPShyPXQpLkQsLTE9PShvPWEuaW5kZXhPZigiXG4iLGkpKT9XdjooaT1OdW1iZXIoYS5zdWJzdHJpbmcoaSxvKSksaXNOYU4oaSk/S3Y6KG8rPTEpK2k+YS5sZW5ndGg/V3Y6KGE9YS5zdWJzdHIobyxpKSxyLkQ9bytpLGEpKSk7aWYoYT09V3YpezQ9PWUmJih0Lmg9NCxQdigxNCkscz0hMSksRXYodC5jLHQuZixudWxsLCJbSW5jb21wbGV0ZSBSZXNwb25zZV0iKTticmVha31pZihhPT1Ldil7dC5oPTQsUHYoMTUpLEV2KHQuYyx0LmYsbiwiW0ludmFsaWQgQ2h1bmtdIikscz0hMTticmVha31Fdih0LmMsdC5mLGEsbnVsbCksWnYodCxhKX00PT1lJiYwPT1uLmxlbmd0aCYmKHQuaD0xLFB2KDE2KSxzPSExKSx0LmI9dC5iJiZzLHM/MDxuLmxlbmd0aCYmIXQuViYmKHQuVj0hMCwoZT10LmcpLmE9PXQmJmUuVSYmIWUuRiYmKGUuYy5pbmZvKCJHcmVhdCwgbm8gYnVmZmVyaW5nIHByb3h5IGRldGVjdGVkLiBCeXRlcyByZWNlaXZlZDogIituLmxlbmd0aCksaHkoZSksZS5GPSEwLFB2KDExKSkpOihFdih0LmMsdC5mLG4sIltJbnZhbGlkIENodW5rZWQgUmVzcG9uc2VdIiksJHYodCksSnYodCkpfWZ1bmN0aW9uIFF2KHQpe3QuVD1YcCgpK3QuUCxZdih0LHQuUCl9ZnVuY3Rpb24gWXYodCxlKXtpZihudWxsIT10Lm8pdGhyb3cgRXJyb3IoIldhdGNoRG9nIHRpbWVyIG5vdCBudWxsIik7dC5vPUR2KFFwKHQuVmEsdCksZSl9ZnVuY3Rpb24gWHYodCl7dC5vJiYocXAuY2xlYXJUaW1lb3V0KHQubyksdC5vPW51bGwpfWZ1bmN0aW9uIEp2KHQpezA9PXQuZy52fHx0LkF8fHB5KHQuZyx0KX1mdW5jdGlvbiAkdih0KXtYdih0KTt2YXIgZT10LkY7ZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUuamEmJmUuamEoKSx0LkY9bnVsbCxsdih0LlIpLEl2KHQuSiksdC5hJiYoZT10LmEsdC5hPW51bGwsZS5hYm9ydCgpLGUuamEoKSl9ZnVuY3Rpb24gWnYodCxlKXt0cnl7dmFyIG4scixpLG8scyxhPXQuZztpZigwIT1hLnYmJihhLmE9PXR8fE9nKGEuYix0KSkpaWYoYS5JPXQuTiwhdC5DJiZPZyhhLmIsdCkmJjM9PWEudil7dHJ5e3ZhciB1PWEua2EuYS5wYXJzZShlKX1jYXRjaCh0KXt1PW51bGx9aWYoQXJyYXkuaXNBcnJheSh1KSYmMz09dS5sZW5ndGgpe3ZhciBjPXU7aWYoMD09Y1swXSl7dDppZighYS5qKXtpZihhLmEpe2lmKCEoYS5hLnUrM2UzPHQudSkpYnJlYWsgdDtmeShhKSxleShhKX1jeShhKSxQdigxOCl9fWVsc2UgYS5vYT1jWzFdLDA8YS5vYS1hLlAmJmNbMl08Mzc1MDAmJmEuSCYmMD09YS5vJiYhYS5tJiYoYS5tPUR2KFFwKGEuU2EsYSksNmUzKSk7aWYoUGcoYS5iKTw9MSYmYS5lYSl7dHJ5e2EuZWEoKX1jYXRjaCh0KXt9YS5lYT12b2lkIDB9fWVsc2UgdnkoYSwxMSl9ZWxzZSBpZighdC5DJiZhLmEhPXR8fGZ5KGEpLCFyZChlKSlmb3IoZT11PWEua2EuYS5wYXJzZShlKSx1PTA7dTxlLmxlbmd0aDt1KyspYz1lW3VdLGEuUD1jWzBdLGM9Y1sxXSwyPT1hLnY/ImMiPT1jWzBdPyhhLko9Y1sxXSxhLmdhPWNbMl0sbnVsbCE9KHI9Y1szXSkmJihhLmhhPXIsYS5jLmluZm8oIlZFUj0iK2EuaGEpKSxudWxsIT0obz1jWzRdKSYmKGEucGE9byxhLmMuaW5mbygiU1ZFUj0iK2EucGEpKSxudWxsIT0ocj1jWzVdKSYmIm51bWJlciI9PXR5cGVvZiByJiYwPHImJihuPTEuNSpyLGEuRD1uLGEuYy5pbmZvKCJiYWNrQ2hhbm5lbFJlcXVlc3RUaW1lb3V0TXNfPSIrbikpLG49YSwobz10LmEpJiYoIShyPW8uYT9vLmEuZ2V0UmVzcG9uc2VIZWFkZXIoIlgtQ2xpZW50LVdpcmUtUHJvdG9jb2wiKTpudWxsKXx8IShpPW4uYikuYSYmKHNkKHIsInNwZHkiKXx8c2QociwicXVpYyIpfHxzZChyLCJoMiIpKSYmKGkuZj1pLmcsaS5hPW5ldyBTZXQsaS5iJiYoRGcoaSxpLmIpLGkuYj1udWxsKSksIW4uQXx8KHM9by5hP28uYS5nZXRSZXNwb25zZUhlYWRlcigiWC1IVFRQLVNlc3Npb24tSWQiKTpudWxsKSYmKG4ubmE9cyxsZyhuLkIsbi5BLHMpKSksYS52PTMsYS5mJiZhLmYudGEoKSxhLlUmJihhLk49WHAoKS10LnUsYS5jLmluZm8oIkhhbmRzaGFrZSBSVFQ6ICIrYS5OKyJtcyIpKSxpPXQsKG49YSkubGE9eXkobixuLkM/bi5nYTpudWxsLG4uZmEpLGkuQz8oeGcobi5iLGkpLG89aSwocz1uLkQpJiZvLnNldFRpbWVvdXQocyksby5vJiYoWHYobyksUXYobykpLG4uYT1pKTp1eShuKSwwPGEuZy5sZW5ndGgmJml5KGEpKToic3RvcCIhPWNbMF0mJiJjbG9zZSIhPWNbMF18fHZ5KGEsNyk6Mz09YS52JiYoInN0b3AiPT1jWzBdfHwiY2xvc2UiPT1jWzBdPyJzdG9wIj09Y1swXT92eShhLDcpOnR5KGEpOiJub29wIiE9Y1swXSYmYS5mJiZhLmYuc2EoYyksYS5vPTApO2t2KDQpfWNhdGNoKHQpe319ZnVuY3Rpb24gdGcodCxlKXtpZih0LmZvckVhY2gmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvckVhY2gpdC5mb3JFYWNoKGUsdm9pZCAwKTtlbHNlIGlmKEJwKHQpfHwic3RyaW5nIj09dHlwZW9mIHQpdGQodCxlLHZvaWQgMCk7ZWxzZXtpZih0LkwmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LkwpdmFyIG49dC5MKCk7ZWxzZSBpZih0LksmJiJmdW5jdGlvbiI9PXR5cGVvZiB0Lkspbj12b2lkIDA7ZWxzZSBpZihCcCh0KXx8InN0cmluZyI9PXR5cGVvZiB0KWZvcih2YXIgbj1bXSxyPXQubGVuZ3RoLGk9MDtpPHI7aSsrKW4ucHVzaChpKTtlbHNlIGZvcihpIGluIG49W10scj0wLHQpbltyKytdPWk7Zm9yKHZhciBpPShyPWZ1bmN0aW9uKHQpe2lmKHQuSyYmImZ1bmN0aW9uIj09dHlwZW9mIHQuSylyZXR1cm4gdC5LKCk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiB0LnNwbGl0KCIiKTtpZihCcCh0KSl7Zm9yKHZhciBlPVtdLG49dC5sZW5ndGgscj0wO3I8bjtyKyspZS5wdXNoKHRbcl0pO3JldHVybiBlfWZvcihyIGluIGU9W10sbj0wLHQpZVtuKytdPXRbcl07cmV0dXJuIGV9KHQpKS5sZW5ndGgsbz0wO288aTtvKyspZS5jYWxsKHZvaWQgMCxyW29dLG4mJm5bb10sdCl9fWZ1bmN0aW9uIGVnKHQsZSl7dGhpcy5iPXt9LHRoaXMuYT1bXSx0aGlzLmM9MDt2YXIgbj1hcmd1bWVudHMubGVuZ3RoO2lmKDE8bil7aWYobiUyKXRocm93IEVycm9yKCJVbmV2ZW4gbnVtYmVyIG9mIGFyZ3VtZW50cyIpO2Zvcih2YXIgcj0wO3I8bjtyKz0yKXRoaXMuc2V0KGFyZ3VtZW50c1tyXSxhcmd1bWVudHNbcisxXSl9ZWxzZSBpZih0KWlmKHQgaW5zdGFuY2VvZiBlZylmb3Iobj10LkwoKSxyPTA7cjxuLmxlbmd0aDtyKyspdGhpcy5zZXQobltyXSx0LmdldChuW3JdKSk7ZWxzZSBmb3IociBpbiB0KXRoaXMuc2V0KHIsdFtyXSl9ZnVuY3Rpb24gbmcodCl7aWYodC5jIT10LmEubGVuZ3RoKXtmb3IodmFyIGU9MCxuPTA7ZTx0LmEubGVuZ3RoOyl7dmFyIHI9dC5hW2VdO3JnKHQuYixyKSYmKHQuYVtuKytdPXIpLGUrK310LmEubGVuZ3RoPW59aWYodC5jIT10LmEubGVuZ3RoKXtmb3IodmFyIGk9e30sbj1lPTA7ZTx0LmEubGVuZ3RoOylyZyhpLHI9dC5hW2VdKXx8KGlbdC5hW24rK109cl09MSksZSsrO3QuYS5sZW5ndGg9bn19ZnVuY3Rpb24gcmcodCxlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsZSl9KHo9cXYucHJvdG90eXBlKS5zZXRUaW1lb3V0PWZ1bmN0aW9uKHQpe3RoaXMuUD10fSx6LlhhPWZ1bmN0aW9uKHQpe3Q9dC50YXJnZXQ7dmFyIGU9dGhpcy5GO2UmJjM9PVhnKHQpP2UuZigpOnRoaXMuQ2EodCl9LHouQ2E9ZnVuY3Rpb24odCl7dHJ5e2lmKHQ9PXRoaXMuYSl0Ont2YXIgZT1YZyh0aGlzLmEpLG49dGhpcy5hLnVhKCkscj10aGlzLmEuVygpO2lmKCEoZTwzfHwzPT1lJiYhbWQmJiF0aGlzLmEuJCgpKSl7dGhpcy5BfHw0IT1lfHw3PT1ufHxrdig4PT1ufHxyPD0wPzM6MiksWHYodGhpcyk7dmFyIGk9dGhpcy5hLlcoKTt0aGlzLk49aTt2YXIgbz10aGlzLmEuJCgpO2lmKHRoaXMuYj0yMDA9PWkscj10aGlzLmMsdT10aGlzLm0sYz10aGlzLmwsaD10aGlzLmYsbD10aGlzLlMsZj1lLHA9aSxyLmluZm8oZnVuY3Rpb24oKXtyZXR1cm4iWE1MSFRUUCBSRVNQICgiK2grIikgWyBhdHRlbXB0ICIrbCsiXTogIit1KyJcbiIrYysiXG4iK2YrIiAiK3B9KSx0aGlzLmIpe2lmKHRoaXMuVSYmIXRoaXMuQyl7ZTp7aWYodGhpcy5hKXt2YXIgcz10aGlzLmE7aWYoKHM9cy5hP3MuYS5nZXRSZXNwb25zZUhlYWRlcigiWC1IVFRQLUluaXRpYWwtUmVzcG9uc2UiKTpudWxsKSYmIXJkKHMpKXt2YXIgYT1zO2JyZWFrIGV9fWE9bnVsbH1pZighYSl7dGhpcy5iPSExLHRoaXMuaD0zLFB2KDEyKSwkdih0aGlzKSxKdih0aGlzKTticmVhayB0fUV2KHRoaXMuYyx0aGlzLmYsYSwiSW5pdGlhbCBoYW5kc2hha2UgcmVzcG9uc2UgdmlhIFgtSFRUUC1Jbml0aWFsLVJlc3BvbnNlIiksdGhpcy5DPSEwLFp2KHRoaXMsYSl9dGhpcy5JPyh6dih0aGlzLGUsbyksbWQmJnRoaXMuYiYmMz09ZSYmKF92KHRoaXMuSix0aGlzLlIsInRpY2siLHRoaXMuV2EpLHRoaXMuUi5zdGFydCgpKSk6KEV2KHRoaXMuYyx0aGlzLmYsbyxudWxsKSxadih0aGlzLG8pKSw0PT1lJiYkdih0aGlzKSx0aGlzLmImJiF0aGlzLkEmJig0PT1lP3B5KHRoaXMuZyx0aGlzKToodGhpcy5iPSExLFF2KHRoaXMpKSl9ZWxzZSA0MDA9PWkmJjA8by5pbmRleE9mKCJVbmtub3duIFNJRCIpPyh0aGlzLmg9MyxQdigxMikpOih0aGlzLmg9MCxQdigxMykpLCR2KHRoaXMpLEp2KHRoaXMpfX19Y2F0Y2godCl7fXZhciB1LGMsaCxsLGYscH0sei5XYT1mdW5jdGlvbigpe3ZhciB0LGU7dGhpcy5hJiYodD1YZyh0aGlzLmEpLGU9dGhpcy5hLiQoKSx0aGlzLkQ8ZS5sZW5ndGgmJihYdih0aGlzKSx6dih0aGlzLHQsZSksdGhpcy5iJiY0IT10JiZRdih0aGlzKSkpfSx6LmNhbmNlbD1mdW5jdGlvbigpe3RoaXMuQT0hMCwkdih0aGlzKX0sei5WYT1mdW5jdGlvbigpe3RoaXMubz1udWxsO3ZhciB0LGUsbj1YcCgpOzA8PW4tdGhpcy5UPyh0PXRoaXMuYyxlPXRoaXMubCx0LmluZm8oZnVuY3Rpb24oKXtyZXR1cm4iVElNRU9VVDogIitlfSksMiE9dGhpcy5IJiYoa3YoMyksUHYoMTcpKSwkdih0aGlzKSx0aGlzLmg9MixKdih0aGlzKSk6WXYodGhpcyx0aGlzLlQtbil9LCh6PWVnLnByb3RvdHlwZSkuSz1mdW5jdGlvbigpe25nKHRoaXMpO2Zvcih2YXIgdD1bXSxlPTA7ZTx0aGlzLmEubGVuZ3RoO2UrKyl0LnB1c2godGhpcy5iW3RoaXMuYVtlXV0pO3JldHVybiB0fSx6Lkw9ZnVuY3Rpb24oKXtyZXR1cm4gbmcodGhpcyksdGhpcy5hLmNvbmNhdCgpfSx6LmdldD1mdW5jdGlvbih0LGUpe3JldHVybiByZyh0aGlzLmIsdCk/dGhpcy5iW3RdOmV9LHouc2V0PWZ1bmN0aW9uKHQsZSl7cmcodGhpcy5iLHQpfHwodGhpcy5jKyssdGhpcy5hLnB1c2godCkpLHRoaXMuYlt0XT1lfSx6LmZvckVhY2g9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy5MKCkscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgaT1uW3JdLG89dGhpcy5nZXQoaSk7dC5jYWxsKGUsbyxpLHRoaXMpfX07dmFyIGlnPS9eKD86KFteOi8/Iy5dKyk6KT8oPzpcL1wvKD86KFteXFwvPyNdKilAKT8oW15cXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXC8/I118JCkpPyhbXj8jXSspPyg/Olw/KFteI10qKSk/KD86IyhbXHNcU10qKSk/JC87ZnVuY3Rpb24gb2codCxlKXt2YXIgbjt0aGlzLmM9dGhpcy5qPXRoaXMuZj0iIix0aGlzLmg9bnVsbCx0aGlzLmk9dGhpcy5nPSIiLHRoaXMuYT0hMSx0IGluc3RhbmNlb2Ygb2c/KHRoaXMuYT12b2lkIDAhPT1lP2U6dC5hLGFnKHRoaXMsdC5mKSx0aGlzLmo9dC5qLHVnKHRoaXMsdC5jKSxjZyh0aGlzLHQuaCksdGhpcy5nPXQuZyxlPXQuYiwobj1uZXcgX2cpLmM9ZS5jLGUuYSYmKG4uYT1uZXcgZWcoZS5hKSxuLmI9ZS5iKSxoZyh0aGlzLG4pLHRoaXMuaT10LmkpOnQmJihuPVN0cmluZyh0KS5tYXRjaChpZykpPyh0aGlzLmE9ISFlLGFnKHRoaXMsblsxXXx8IiIsITApLHRoaXMuaj1wZyhuWzJdfHwiIiksdWcodGhpcyxuWzNdfHwiIiwhMCksY2codGhpcyxuWzRdKSx0aGlzLmc9cGcobls1XXx8IiIsITApLGhnKHRoaXMsbls2XXx8IiIsITApLHRoaXMuaT1wZyhuWzddfHwiIikpOih0aGlzLmE9ISFlLHRoaXMuYj1uZXcgX2cobnVsbCx0aGlzLmEpKX1mdW5jdGlvbiBzZyh0KXtyZXR1cm4gbmV3IG9nKHQpfWZ1bmN0aW9uIGFnKHQsZSxuKXt0LmY9bj9wZyhlLCEwKTplLHQuZiYmKHQuZj10LmYucmVwbGFjZSgvOiQvLCIiKSl9ZnVuY3Rpb24gdWcodCxlLG4pe3QuYz1uP3BnKGUsITApOmV9ZnVuY3Rpb24gY2codCxlKXtpZihlKXtpZihlPU51bWJlcihlKSxpc05hTihlKXx8ZTwwKXRocm93IEVycm9yKCJCYWQgcG9ydCBudW1iZXIgIitlKTt0Lmg9ZX1lbHNlIHQuaD1udWxsfWZ1bmN0aW9uIGhnKHQsZSxuKXt2YXIgcixpO2UgaW5zdGFuY2VvZiBfZz8odC5iPWUscj10LmIsKGk9dC5hKSYmIXIuZiYmKElnKHIpLHIuYz1udWxsLHIuYS5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO2UhPW4mJihUZyh0aGlzLGUpLFNnKHRoaXMsbix0KSl9LHIpKSxyLmY9aSk6KG58fChlPWRnKGUsYmcpKSx0LmI9bmV3IF9nKGUsdC5hKSl9ZnVuY3Rpb24gbGcodCxlLG4pe3QuYi5zZXQoZSxuKX1mdW5jdGlvbiBmZyh0KXtyZXR1cm4gbGcodCwiengiLE1hdGguZmxvb3IoMjE0NzQ4MzY0OCpNYXRoLnJhbmRvbSgpKS50b1N0cmluZygzNikrTWF0aC5hYnMoTWF0aC5mbG9vcigyMTQ3NDgzNjQ4Kk1hdGgucmFuZG9tKCkpXlhwKCkpLnRvU3RyaW5nKDM2KSksdH1mdW5jdGlvbiBwZyh0LGUpe3JldHVybiB0P2U/ZGVjb2RlVVJJKHQucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudCh0KToiIn1mdW5jdGlvbiBkZyh0LGUsbil7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0Pyh0PWVuY29kZVVSSSh0KS5yZXBsYWNlKGUsdmcpLHQ9bj90LnJlcGxhY2UoLyUyNShbMC05YS1mQS1GXXsyfSkvZywiJSQxIik6dCk6bnVsbH1mdW5jdGlvbiB2Zyh0KXtyZXR1cm4iJSIrKCh0PXQuY2hhckNvZGVBdCgwKSk+PjQmMTUpLnRvU3RyaW5nKDE2KSsoMTUmdCkudG9TdHJpbmcoMTYpfW9nLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3ZhciB0PVtdLGU9dGhpcy5mO2UmJnQucHVzaChkZyhlLGdnLCEwKSwiOiIpO3ZhciBuPXRoaXMuYztyZXR1cm4hbiYmImZpbGUiIT1lfHwodC5wdXNoKCIvLyIpLChlPXRoaXMuaikmJnQucHVzaChkZyhlLGdnLCEwKSwiQCIpLHQucHVzaChlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKG4pKS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxudWxsIT0obj10aGlzLmgpJiZ0LnB1c2goIjoiLFN0cmluZyhuKSkpLChuPXRoaXMuZykmJih0aGlzLmMmJiIvIiE9bi5jaGFyQXQoMCkmJnQucHVzaCgiLyIpLHQucHVzaChkZyhuLCIvIj09bi5jaGFyQXQoMCk/bWc6eWcsITApKSksKG49dGhpcy5iLnRvU3RyaW5nKCkpJiZ0LnB1c2goIj8iLG4pLChuPXRoaXMuaSkmJnQucHVzaCgiIyIsZGcobix3ZykpLHQuam9pbigiIil9O3ZhciBnZz0vWyNcL1w/QF0vZyx5Zz0vWyNcPzpdL2csbWc9L1sjXD9dL2csYmc9L1sjXD9AXS9nLHdnPS8jL2c7ZnVuY3Rpb24gX2codCxlKXt0aGlzLmI9dGhpcy5hPW51bGwsdGhpcy5jPXR8fG51bGwsdGhpcy5mPSEhZX1mdW5jdGlvbiBJZyhuKXtuLmF8fChuLmE9bmV3IGVnLG4uYj0wLG4uYyYmZnVuY3Rpb24odCxlKXtpZih0KXt0PXQuc3BsaXQoIiYiKTtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIHIsaT10W25dLmluZGV4T2YoIj0iKSxvPW51bGw7MDw9aT8ocj10W25dLnN1YnN0cmluZygwLGkpLG89dFtuXS5zdWJzdHJpbmcoaSsxKSk6cj10W25dLGUocixvP2RlY29kZVVSSUNvbXBvbmVudChvLnJlcGxhY2UoL1wrL2csIiAiKSk6IiIpfX19KG4uYyxmdW5jdGlvbih0LGUpe24uYWRkKGRlY29kZVVSSUNvbXBvbmVudCh0LnJlcGxhY2UoL1wrL2csIiAiKSksZSl9KSl9ZnVuY3Rpb24gVGcodCxlKXtJZyh0KSxlPUNnKHQsZSkscmcodC5hLmIsZSkmJih0LmM9bnVsbCx0LmItPXQuYS5nZXQoZSkubGVuZ3RoLHJnKCh0PXQuYSkuYixlKSYmKGRlbGV0ZSB0LmJbZV0sdC5jLS0sdC5hLmxlbmd0aD4yKnQuYyYmbmcodCkpKX1mdW5jdGlvbiBFZyh0LGUpe3JldHVybiBJZyh0KSxlPUNnKHQsZSkscmcodC5hLmIsZSl9ZnVuY3Rpb24gU2codCxlLG4pe1RnKHQsZSksMDxuLmxlbmd0aCYmKHQuYz1udWxsLHQuYS5zZXQoQ2codCxlKSxuZChuKSksdC5iKz1uLmxlbmd0aCl9ZnVuY3Rpb24gQ2codCxlKXtyZXR1cm4gZT1TdHJpbmcoZSksZT10LmY/ZS50b0xvd2VyQ2FzZSgpOmV9KHo9X2cucHJvdG90eXBlKS5hZGQ9ZnVuY3Rpb24odCxlKXtJZyh0aGlzKSx0aGlzLmM9bnVsbCx0PUNnKHRoaXMsdCk7dmFyIG49dGhpcy5hLmdldCh0KTtyZXR1cm4gbnx8dGhpcy5hLnNldCh0LG49W10pLG4ucHVzaChlKSx0aGlzLmIrPTEsdGhpc30sei5mb3JFYWNoPWZ1bmN0aW9uKG4scil7SWcodGhpcyksdGhpcy5hLmZvckVhY2goZnVuY3Rpb24odCxlKXt0ZCh0LGZ1bmN0aW9uKHQpe24uY2FsbChyLHQsZSx0aGlzKX0sdGhpcyl9LHRoaXMpfSx6Lkw9ZnVuY3Rpb24oKXtJZyh0aGlzKTtmb3IodmFyIHQ9dGhpcy5hLksoKSxlPXRoaXMuYS5MKCksbj1bXSxyPTA7cjxlLmxlbmd0aDtyKyspZm9yKHZhciBpPXRbcl0sbz0wO288aS5sZW5ndGg7bysrKW4ucHVzaChlW3JdKTtyZXR1cm4gbn0sei5LPWZ1bmN0aW9uKHQpe0lnKHRoaXMpO3ZhciBlPVtdO2lmKCJzdHJpbmciPT10eXBlb2YgdClFZyh0aGlzLHQpJiYoZT1lZChlLHRoaXMuYS5nZXQoQ2codGhpcyx0KSkpKTtlbHNle3Q9dGhpcy5hLksoKTtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyllPWVkKGUsdFtuXSl9cmV0dXJuIGV9LHouc2V0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIElnKHRoaXMpLHRoaXMuYz1udWxsLEVnKHRoaXMsdD1DZyh0aGlzLHQpKSYmKHRoaXMuYi09dGhpcy5hLmdldCh0KS5sZW5ndGgpLHRoaXMuYS5zZXQodCxbZV0pLHRoaXMuYis9MSx0aGlzfSx6LmdldD1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYwPCh0PXRoaXMuSyh0KSkubGVuZ3RoP1N0cmluZyh0WzBdKTplfSx6LnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5jKXJldHVybiB0aGlzLmM7aWYoIXRoaXMuYSlyZXR1cm4iIjtmb3IodmFyIHQ9W10sZT10aGlzLmEuTCgpLG49MDtuPGUubGVuZ3RoO24rKylmb3IodmFyIHI9ZVtuXSxpPWVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcocikpLHI9dGhpcy5LKHIpLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIHM9aTsiIiE9PXJbb10mJihzKz0iPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhyW29dKSkpLHQucHVzaChzKX1yZXR1cm4gdGhpcy5jPXQuam9pbigiJiIpfTt2YXIgTmc9ZnVuY3Rpb24odCxlKXt0aGlzLmI9dCx0aGlzLmE9ZX07ZnVuY3Rpb24gQWcodCl7dGhpcy5nPXR8fGtnLHQ9cXAuUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPzA8KHQ9cXAucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpKS5sZW5ndGgmJigiaHEiPT10WzBdLm5leHRIb3BQcm90b2NvbHx8ImgyIj09dFswXS5uZXh0SG9wUHJvdG9jb2wpOiEhKHFwLmlhJiZxcC5pYS55YSYmcXAuaWEueWEoKSYmcXAuaWEueWEoKS5MYiksdGhpcy5mPXQ/dGhpcy5nOjEsdGhpcy5hPW51bGwsMTx0aGlzLmYmJih0aGlzLmE9bmV3IFNldCksdGhpcy5iPW51bGwsdGhpcy5jPVtdfXZhciBrZz0xMDtmdW5jdGlvbiBSZyh0KXtyZXR1cm4gdC5ifHx0LmEmJnQuYS5zaXplPj10LmZ9ZnVuY3Rpb24gUGcodCl7cmV0dXJuIHQuYj8xOnQuYT90LmEuc2l6ZTowfWZ1bmN0aW9uIE9nKHQsZSl7cmV0dXJuIHQuYj90LmI9PWU6dC5hJiZ0LmEuaGFzKGUpfWZ1bmN0aW9uIERnKHQsZSl7dC5hP3QuYS5hZGQoZSk6dC5iPWV9ZnVuY3Rpb24geGcodCxlKXt0LmImJnQuYj09ZT90LmI9bnVsbDp0LmEmJnQuYS5oYXMoZSkmJnQuYS5kZWxldGUoZSl9ZnVuY3Rpb24gTGcodCl7dmFyIGUsbjtpZihudWxsIT10LmIpcmV0dXJuIHQuYy5jb25jYXQodC5iLnMpO2lmKG51bGw9PXQuYXx8MD09PXQuYS5zaXplKXJldHVybiBuZCh0LmMpO3ZhciByPXQuYzt0cnl7Zm9yKHZhciBpPVVwKHQuYS52YWx1ZXMoKSksbz1pLm5leHQoKTshby5kb25lO289aS5uZXh0KCkpdmFyIHM9by52YWx1ZSxyPXIuY29uY2F0KHMucyl9Y2F0Y2godCl7ZT17ZXJyb3I6dH19ZmluYWxseXt0cnl7byYmIW8uZG9uZSYmKG49aS5yZXR1cm4pJiZuLmNhbGwoaSl9ZmluYWxseXtpZihlKXRocm93IGUuZXJyb3J9fXJldHVybiByfWZ1bmN0aW9uIE1nKCl7fWZ1bmN0aW9uIEZnKCl7dGhpcy5hPW5ldyBNZ31mdW5jdGlvbiBVZyh0LGUsbixyLGkpe3RyeXtlLm9ubG9hZD1udWxsLGUub25lcnJvcj1udWxsLGUub25hYm9ydD1udWxsLGUub250aW1lb3V0PW51bGwsaShyKX1jYXRjaCh0KXt9fUFnLnByb3RvdHlwZS5jYW5jZWw9ZnVuY3Rpb24oKXt2YXIgZSx0O2lmKHRoaXMuYz1MZyh0aGlzKSx0aGlzLmIpdGhpcy5iLmNhbmNlbCgpLHRoaXMuYj1udWxsO2Vsc2UgaWYodGhpcy5hJiYwIT09dGhpcy5hLnNpemUpe3RyeXtmb3IodmFyIG49VXAodGhpcy5hLnZhbHVlcygpKSxyPW4ubmV4dCgpOyFyLmRvbmU7cj1uLm5leHQoKSlyLnZhbHVlLmNhbmNlbCgpfWNhdGNoKHQpe2U9e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e3ImJiFyLmRvbmUmJih0PW4ucmV0dXJuKSYmdC5jYWxsKG4pfWZpbmFsbHl7aWYoZSl0aHJvdyBlLmVycm9yfX10aGlzLmEuY2xlYXIoKX19LE1nLnByb3RvdHlwZS5zdHJpbmdpZnk9ZnVuY3Rpb24odCl7cmV0dXJuIHFwLkpTT04uc3RyaW5naWZ5KHQsdm9pZCAwKX0sTWcucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKHQpe3JldHVybiBxcC5KU09OLnBhcnNlKHQsdm9pZCAwKX07dmFyIGpnPXFwLkpTT04ucGFyc2U7ZnVuY3Rpb24gcWcodCl7SmQuY2FsbCh0aGlzKSx0aGlzLmhlYWRlcnM9bmV3IGVnLHRoaXMuSD10fHxudWxsLHRoaXMuYj0hMSx0aGlzLnM9dGhpcy5hPW51bGwsdGhpcy5CPSIiLHRoaXMuaD0wLHRoaXMuZj0iIix0aGlzLmc9dGhpcy5BPXRoaXMubD10aGlzLnU9ITEsdGhpcy5vPTAsdGhpcy5tPW51bGwsdGhpcy5JPVZnLHRoaXMuRD10aGlzLkY9ITF9SnAocWcsSmQpO3ZhciBWZz0iIixCZz0vXmh0dHBzPyQvaSxLZz1bIlBPU1QiLCJQVVQiXTtmdW5jdGlvbiBXZyh0KXtyZXR1cm4iY29udGVudC10eXBlIj09dC50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIEhnKHQsZSl7dC5iPSExLHQuYSYmKHQuZz0hMCx0LmEuYWJvcnQoKSx0Lmc9ITEpLHQuZj1lLHQuaD01LEdnKHQpLFFnKHQpfWZ1bmN0aW9uIEdnKHQpe3QudXx8KHQudT0hMCwkZCh0LCJjb21wbGV0ZSIpLCRkKHQsImVycm9yIikpfWZ1bmN0aW9uIHpnKHQpe2lmKHQuYiYmdm9pZCAwIT09anAmJighdC5zWzFdfHw0IT1YZyh0KXx8MiE9dC5XKCkpKWlmKHQubCYmND09WGcodCkpZnYodC56YSwwLHQpO2Vsc2UgaWYoJGQodCwicmVhZHlzdGF0ZWNoYW5nZSIpLDQ9PVhnKHQpKXt0LmI9ITE7dHJ5e3ZhciBlLG4scixpLG89dC5XKCk7dDpzd2l0Y2gobyl7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDQ6Y2FzZSAyMDY6Y2FzZSAzMDQ6Y2FzZSAxMjIzOnZhciBzPSEwO2JyZWFrIHQ7ZGVmYXVsdDpzPSExfShlPXMpfHwoKG49MD09PW8pJiYoIShpPVN0cmluZyh0LkIpLm1hdGNoKGlnKVsxXXx8bnVsbCkmJnFwLnNlbGYmJnFwLnNlbGYubG9jYXRpb24mJihpPShyPXFwLnNlbGYubG9jYXRpb24ucHJvdG9jb2wpLnN1YnN0cigwLHIubGVuZ3RoLTEpKSxuPSFCZy50ZXN0KGk/aS50b0xvd2VyQ2FzZSgpOiIiKSksZT1uKTtpZihlKSRkKHQsImNvbXBsZXRlIiksJGQodCwic3VjY2VzcyIpO2Vsc2V7dC5oPTY7dHJ5e3ZhciBhPTI8WGcodCk/dC5hLnN0YXR1c1RleHQ6IiJ9Y2F0Y2gobyl7YT0iIn10LmY9YSsiIFsiK3QuVygpKyJdIixHZyh0KX19ZmluYWxseXtRZyh0KX19fWZ1bmN0aW9uIFFnKHQsZSl7aWYodC5hKXtZZyh0KTt2YXIgbj10LmEscj10LnNbMF0/VnA6bnVsbDt0LmE9bnVsbCx0LnM9bnVsbCxlfHwkZCh0LCJyZWFkeSIpO3RyeXtuLm9ucmVhZHlzdGF0ZWNoYW5nZT1yfWNhdGNoKHQpe319fWZ1bmN0aW9uIFlnKHQpe3QuYSYmdC5EJiYodC5hLm9udGltZW91dD1udWxsKSx0Lm0mJihxcC5jbGVhclRpbWVvdXQodC5tKSx0Lm09bnVsbCl9ZnVuY3Rpb24gWGcodCl7cmV0dXJuIHQuYT90LmEucmVhZHlTdGF0ZTowfWZ1bmN0aW9uIEpnKHQsZSxuKXt0Ontmb3IociBpbiBuKXt2YXIgcj0hMTticmVhayB0fXI9ITB9dmFyIGk7cnx8KGk9IiIsY2QobixmdW5jdGlvbih0LGUpe2krPWUsaSs9IjoiLGkrPXQsaSs9IlxyXG4ifSksbj1pLCJzdHJpbmciPT10eXBlb2YgdD9udWxsIT1uJiZlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKG4pKTpsZyh0LGUsbikpfWZ1bmN0aW9uICRnKHQsZSxuKXtyZXR1cm4gbiYmbi5pbnRlcm5hbENoYW5uZWxQYXJhbXMmJm4uaW50ZXJuYWxDaGFubmVsUGFyYW1zW3RdfHxlfWZ1bmN0aW9uIFpnKHQpe3RoaXMucGE9MCx0aGlzLmc9W10sdGhpcy5jPW5ldyBUdix0aGlzLmdhPXRoaXMubGE9dGhpcy5CPXRoaXMuZmE9dGhpcy5hPXRoaXMubmE9dGhpcy5BPXRoaXMuVj10aGlzLmk9dGhpcy5PPXRoaXMubD1udWxsLHRoaXMuT2E9dGhpcy5SPTAsdGhpcy5MYT0kZygiZmFpbEZhc3QiLCExLHQpLHRoaXMuSD10aGlzLm09dGhpcy5qPXRoaXMuaD10aGlzLmY9bnVsbCx0aGlzLlM9ITAsdGhpcy5JPXRoaXMub2E9dGhpcy5QPS0xLHRoaXMuVD10aGlzLm89dGhpcy51PTAsdGhpcy5IYT0kZygiYmFzZVJldHJ5RGVsYXlNcyIsNWUzLHQpLHRoaXMuUmE9JGcoInJldHJ5RGVsYXlTZWVkTXMiLDFlNCx0KSx0aGlzLk1hPSRnKCJmb3J3YXJkQ2hhbm5lbE1heFJldHJpZXMiLDIsdCksdGhpcy5tYT0kZygiZm9yd2FyZENoYW5uZWxSZXF1ZXN0VGltZW91dE1zIiwyZTQsdCksdGhpcy5OYT10JiZ0Lmd8fHZvaWQgMCx0aGlzLkQ9dm9pZCAwLHRoaXMuQz10JiZ0LnN1cHBvcnRzQ3Jvc3NEb21haW5YaHJ8fCExLHRoaXMuSj0iIix0aGlzLmI9bmV3IEFnKHQmJnQuY29uY3VycmVudFJlcXVlc3RMaW1pdCksdGhpcy5rYT1uZXcgRmcsdGhpcy5kYT10JiZ0LmZhc3RIYW5kc2hha2V8fCExLHRoaXMuSWE9dCYmdC5ifHwhMSx0JiZ0LmYmJih0aGlzLmMuYT0hMSksdCYmdC5mb3JjZUxvbmdQb2xsaW5nJiYodGhpcy5TPSExKSx0aGlzLlU9IXRoaXMuZGEmJnRoaXMuUyYmdCYmdC5kZXRlY3RCdWZmZXJpbmdQcm94eXx8ITEsdGhpcy5lYT12b2lkIDAsdGhpcy5OPTAsdGhpcy5GPSExLHRoaXMucz1udWxsLCh0aGlzLkthPXQmJnQuY3x8ITEpJiZ0aGlzLmMuaW5mbygiT3B0LWluIHRvIGVuYWJsZSBDaHJvbWUgT3JpZ2luIFRyaWFscy4iKX1mdW5jdGlvbiB0eSh0KXt2YXIgZSxuO255KHQpLDM9PXQudiYmKGU9dC5SKyssbGcobj1zZyh0LkIpLCJTSUQiLHQuSiksbGcobiwiUklEIixlKSxsZyhuLCJUWVBFIiwidGVybWluYXRlIiksc3kodCxuKSwoZT1uZXcgcXYodCx0LmMsZSx2b2lkIDApKS5IPTIsZS5pPWZnKHNnKG4pKSxuPSExLCEobj1xcC5uYXZpZ2F0b3ImJnFwLm5hdmlnYXRvci5zZW5kQmVhY29uP3FwLm5hdmlnYXRvci5zZW5kQmVhY29uKGUuaS50b1N0cmluZygpLCIiKTpuKSYmcXAuSW1hZ2UmJigobmV3IEltYWdlKS5zcmM9ZS5pLG49ITApLG58fChlLmE9bXkoZS5nLG51bGwpLGUuYS5iYShlLmkpKSxlLnU9WHAoKSxRdihlKSksZ3kodCl9ZnVuY3Rpb24gZXkodCl7dC5hJiYoaHkodCksdC5hLmNhbmNlbCgpLHQuYT1udWxsKX1mdW5jdGlvbiBueSh0KXtleSh0KSx0LmomJihxcC5jbGVhclRpbWVvdXQodC5qKSx0Lmo9bnVsbCksZnkodCksdC5iLmNhbmNlbCgpLHQuaCYmKCJudW1iZXIiPT10eXBlb2YgdC5oJiZxcC5jbGVhclRpbWVvdXQodC5oKSx0Lmg9bnVsbCl9ZnVuY3Rpb24gcnkodCxlKXt0LmcucHVzaChuZXcgTmcodC5PYSsrLGUpKSwzPT10LnYmJml5KHQpfWZ1bmN0aW9uIGl5KHQpe1JnKHQuYil8fHQuaHx8KHQuaD0hMCxzdih0LkJhLHQpLHQudT0wKX1mdW5jdGlvbiBveSh0LGUpe3ZhciBuPWU/ZS5mOnQuUisrLHI9c2codC5CKTtsZyhyLCJTSUQiLHQuSiksbGcociwiUklEIixuKSxsZyhyLCJBSUQiLHQuUCksc3kodCxyKSx0LmkmJnQubCYmSmcocix0LmksdC5sKSxuPW5ldyBxdih0LHQuYyxuLHQudSsxKSxudWxsPT09dC5pJiYobi5CPXQubCksZSYmKHQuZz1lLnMuY29uY2F0KHQuZykpLGU9YXkodCxuLDFlMyksbi5zZXRUaW1lb3V0KE1hdGgucm91bmQoLjUqdC5tYSkrTWF0aC5yb3VuZCguNSp0Lm1hKk1hdGgucmFuZG9tKCkpKSxEZyh0LmIsbiksSHYobixyLGUpfWZ1bmN0aW9uIHN5KHQsbil7dC5mJiZ0Zyh7fSxmdW5jdGlvbih0LGUpe2xnKG4sZSx0KX0pfWZ1bmN0aW9uIGF5KHQsZSxuKXtuPU1hdGgubWluKHQuZy5sZW5ndGgsbik7dmFyIHI9dC5mP1FwKHQuZi5KYSx0LmYsdCk6bnVsbDt0OmZvcih2YXIgaT10Lmcsbz0tMTs7KXt2YXIgcz1bImNvdW50PSIrbl07LTE9PW8/MDxuPyhvPWlbMF0uYixzLnB1c2goIm9mcz0iK28pKTpvPTA6cy5wdXNoKCJvZnM9IitvKTtmb3IodmFyIGE9ITAsdT0wO3U8bjt1Kyspe3ZhciBjPWlbdV0uYixoPWlbdV0uYTtpZigoYy09byk8MClvPU1hdGgubWF4KDAsaVt1XS5iLTEwMCksYT0hMTtlbHNlIHRyeXshZnVuY3Rpb24odCxyLGUpe3ZhciBpPWV8fCIiO3RyeXt0Zyh0LGZ1bmN0aW9uKHQsZSl7dmFyIG49dDtLcCh0KSYmKG49dHYodCkpLHIucHVzaChpK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChuKSl9KX1jYXRjaCh0KXt0aHJvdyByLnB1c2goaSsidHlwZT0iK2VuY29kZVVSSUNvbXBvbmVudCgiX2JhZG1hcCIpKSx0fX0oaCxzLCJyZXEiK2MrIl8iKX1jYXRjaCh0KXtyJiZyKGgpfX1pZihhKXtyPXMuam9pbigiJiIpO2JyZWFrIHR9fXJldHVybiB0PXQuZy5zcGxpY2UoMCxuKSxlLnM9dCxyfWZ1bmN0aW9uIHV5KHQpe3QuYXx8dC5qfHwodC5UPTEsc3YodC5BYSx0KSx0Lm89MCl9ZnVuY3Rpb24gY3kodCl7cmV0dXJuISh0LmF8fHQuanx8Mzw9dC5vKSYmKHQuVCsrLHQuaj1EdihRcCh0LkFhLHQpLGR5KHQsdC5vKSksdC5vKyssMSl9ZnVuY3Rpb24gaHkodCl7bnVsbCE9dC5zJiYocXAuY2xlYXJUaW1lb3V0KHQucyksdC5zPW51bGwpfWZ1bmN0aW9uIGx5KHQpe3QuYT1uZXcgcXYodCx0LmMsInJwYyIsdC5UKSxudWxsPT09dC5pJiYodC5hLkI9dC5sKSx0LmEuTz0wO3ZhciBlPXNnKHQubGEpO2xnKGUsIlJJRCIsInJwYyIpLGxnKGUsIlNJRCIsdC5KKSxsZyhlLCJDSSIsdC5IPyIwIjoiMSIpLGxnKGUsIkFJRCIsdC5QKSxzeSh0LGUpLGxnKGUsIlRZUEUiLCJ4bWxodHRwIiksdC5pJiZ0LmwmJkpnKGUsdC5pLHQubCksdC5EJiZ0LmEuc2V0VGltZW91dCh0LkQpO3ZhciBuPXQuYTt0PXQuZ2Esbi5IPTEsbi5pPWZnKHNnKGUpKSxuLmo9bnVsbCxuLkk9ITAsR3Yobix0KX1mdW5jdGlvbiBmeSh0KXtudWxsIT10Lm0mJihxcC5jbGVhclRpbWVvdXQodC5tKSx0Lm09bnVsbCl9ZnVuY3Rpb24gcHkodCxlKXt2YXIgbixyLGksbz1udWxsO2lmKHQuYT09ZSl7ZnkodCksaHkodCksdC5hPW51bGw7dmFyIHM9Mn1lbHNle2lmKCFPZyh0LmIsZSkpcmV0dXJuO289ZS5zLHhnKHQuYixlKSxzPTF9aWYodC5JPWUuTiwwIT10LnYpaWYoZS5iKTE9PXM/KG89ZS5qP2Uuai5sZW5ndGg6MCxlPVhwKCktZS51LG49dC51LCRkKHM9TnYoKSxuZXcgT3YocykpLGl5KHQpKTp1eSh0KTtlbHNlIGlmKDM9PShuPWUuaCl8fDA9PW4mJjA8dC5JfHwoMSE9c3x8KGk9ZSxQZygocj10KS5iKT49ci5iLmYtKHIuaD8xOjApfHwoci5oPyhyLmc9aS5zLmNvbmNhdChyLmcpLDApOjE9PXIudnx8Mj09ci52fHxyLnU+PShyLkxhPzA6ci5NYSl8fChyLmg9RHYoUXAoci5CYSxyLGkpLGR5KHIsci51KSksci51KyssMCkpKSkmJigyIT1zfHwhY3kodCkpKXN3aXRjaChvJiYwPG8ubGVuZ3RoJiYoZT10LmIsZS5jPWUuYy5jb25jYXQobykpLG4pe2Nhc2UgMTp2eSh0LDUpO2JyZWFrO2Nhc2UgNDp2eSh0LDEwKTticmVhaztjYXNlIDM6dnkodCw2KTticmVhaztkZWZhdWx0OnZ5KHQsMil9fWZ1bmN0aW9uIGR5KHQsZSl7dmFyIG49dC5IYStNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqdC5SYSk7cmV0dXJuIHQuZnx8KG4qPTIpLG4qZX1mdW5jdGlvbiB2eSh0LGUpe3ZhciBuLHIsaSxvO3QuYy5pbmZvKCJFcnJvciBjb2RlICIrZSksMj09ZT8ocj1udWxsLHQuZiYmKHI9bnVsbCksbz1RcCh0LllhLHQpLHJ8fChyPW5ldyBvZygiLy93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIikscXAubG9jYXRpb24mJiJodHRwIj09cXAubG9jYXRpb24ucHJvdG9jb2x8fGFnKHIsImh0dHBzIiksZmcocikpLG49ci50b1N0cmluZygpLHI9byxvPW5ldyBUdixxcC5JbWFnZT8oKGk9bmV3IEltYWdlKS5vbmxvYWQ9WXAoVWcsbyxpLCJUZXN0TG9hZEltYWdlOiBsb2FkZWQiLCEwLHIpLGkub25lcnJvcj1ZcChVZyxvLGksIlRlc3RMb2FkSW1hZ2U6IGVycm9yIiwhMSxyKSxpLm9uYWJvcnQ9WXAoVWcsbyxpLCJUZXN0TG9hZEltYWdlOiBhYm9ydCIsITEsciksaS5vbnRpbWVvdXQ9WXAoVWcsbyxpLCJUZXN0TG9hZEltYWdlOiB0aW1lb3V0IiwhMSxyKSxxcC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aS5vbnRpbWVvdXQmJmkub250aW1lb3V0KCl9LDFlNCksaS5zcmM9bik6cighMSkpOlB2KDIpLHQudj0wLHQuZiYmdC5mLnJhKGUpLGd5KHQpLG55KHQpfWZ1bmN0aW9uIGd5KHQpe3Qudj0wLHQuST0tMSx0LmYmJigwPT1MZyh0LmIpLmxlbmd0aCYmMD09dC5nLmxlbmd0aHx8KHQuYi5jLmxlbmd0aD0wLG5kKHQuZyksdC5nLmxlbmd0aD0wKSx0LmYucWEoKSl9ZnVuY3Rpb24geXkodCxlLG4pe3ZhciByLGksbyxzLGEsdT0ocz1uKWluc3RhbmNlb2Ygb2c/c2cocyk6bmV3IG9nKHMsdm9pZCAwKTtyZXR1cm4iIiE9dS5jPyhlJiZ1Zyh1LGUrIi4iK3UuYyksY2codSx1LmgpKTooYT1xcC5sb2NhdGlvbixyPWEucHJvdG9jb2wsaT1lP2UrIi4iK2EuaG9zdG5hbWU6YS5ob3N0bmFtZSxvPSthLnBvcnQscz1uLGE9bmV3IG9nKG51bGwsdm9pZCAwKSxyJiZhZyhhLHIpLGkmJnVnKGEsaSksbyYmY2coYSxvKSxzJiYoYS5nPXMpLHU9YSksdC5WJiZjZCh0LlYsZnVuY3Rpb24odCxlKXtsZyh1LGUsdCl9KSxlPXQuQSxuPXQubmEsZSYmbiYmbGcodSxlLG4pLGxnKHUsIlZFUiIsdC5oYSksc3kodCx1KSx1fWZ1bmN0aW9uIG15KHQsZSl7aWYoZSYmIXQuQyl0aHJvdyBFcnJvcigiQ2FuJ3QgY3JlYXRlIHNlY29uZGFyeSBkb21haW4gY2FwYWJsZSBYaHJJbyBvYmplY3QuIik7cmV0dXJuKGU9bmV3IHFnKHQuTmEpKS5GPXQuQyxlfWZ1bmN0aW9uIGJ5KCl7fWZ1bmN0aW9uIHd5KCl7aWYoZ2QmJiEoMTA8PU51bWJlcihDZCkpKXRocm93IEVycm9yKCJFbnZpcm9ubWVudGFsIGVycm9yOiBubyBhdmFpbGFibGUgdHJhbnNwb3J0LiIpfWZ1bmN0aW9uIF95KHQsZSl7SmQuY2FsbCh0aGlzKSx0aGlzLmE9bmV3IFpnKGUpLHRoaXMubz10LHRoaXMuYj1lJiZlLm1lc3NhZ2VVcmxQYXJhbXN8fG51bGwsdD1lJiZlLm1lc3NhZ2VIZWFkZXJzfHxudWxsLGUmJmUuY2xpZW50UHJvdG9jb2xIZWFkZXJSZXF1aXJlZCYmKHQ/dFsiWC1DbGllbnQtUHJvdG9jb2wiXT0id2ViY2hhbm5lbCI6dD17IlgtQ2xpZW50LVByb3RvY29sIjoid2ViY2hhbm5lbCJ9KSx0aGlzLmEubD10LHQ9ZSYmZS5pbml0TWVzc2FnZUhlYWRlcnN8fG51bGwsZSYmZS5tZXNzYWdlQ29udGVudFR5cGUmJih0P3RbIlgtV2ViQ2hhbm5lbC1Db250ZW50LVR5cGUiXT1lLm1lc3NhZ2VDb250ZW50VHlwZTp0PXsiWC1XZWJDaGFubmVsLUNvbnRlbnQtVHlwZSI6ZS5tZXNzYWdlQ29udGVudFR5cGV9KSxlJiZlLmEmJih0P3RbIlgtV2ViQ2hhbm5lbC1DbGllbnQtUHJvZmlsZSJdPWUuYTp0PXsiWC1XZWJDaGFubmVsLUNsaWVudC1Qcm9maWxlIjplLmF9KSx0aGlzLmEuTz10LCh0PWUmJmUuaHR0cEhlYWRlcnNPdmVyd3JpdGVQYXJhbSkmJiFyZCh0KSYmKHRoaXMuYS5pPXQpLHRoaXMubT1lJiZlLnN1cHBvcnRzQ3Jvc3NEb21haW5YaHJ8fCExLHRoaXMubD1lJiZlLnNlbmRSYXdKc29ufHwhMSwoZT1lJiZlLmh0dHBTZXNzaW9uSWRQYXJhbSkmJiFyZChlKSYmKHRoaXMuYS5BPWUsbnVsbCE9PSh0PXRoaXMuYikmJmUgaW4gdCYmKGUgaW4odD10aGlzLmIpJiZkZWxldGUgdFtlXSkpLHRoaXMuZj1uZXcgRXkodGhpcyl9ZnVuY3Rpb24gSXkodCl7RnYuY2FsbCh0aGlzKTt2YXIgZT10Ll9fc21fXztpZihlKXt0Ontmb3IodmFyIG4gaW4gZSl7dD1uO2JyZWFrIHR9dD12b2lkIDB9KHRoaXMuYz10KT8odD10aGlzLmMsdGhpcy5kYXRhPW51bGwhPT1lJiZ0IGluIGU/ZVt0XTp2b2lkIDApOnRoaXMuZGF0YT1lfWVsc2UgdGhpcy5kYXRhPXR9ZnVuY3Rpb24gVHkoKXtVdi5jYWxsKHRoaXMpLHRoaXMuc3RhdHVzPTF9ZnVuY3Rpb24gRXkodCl7dGhpcy5hPXR9KHo9cWcucHJvdG90eXBlKS5iYT1mdW5jdGlvbih0LGUsbixyKXtpZih0aGlzLmEpdGhyb3cgRXJyb3IoIltnb29nLm5ldC5YaHJJb10gT2JqZWN0IGlzIGFjdGl2ZSB3aXRoIGFub3RoZXIgcmVxdWVzdD0iK3RoaXMuQisiOyBuZXdVcmk9Iit0KTtlPWU/ZS50b1VwcGVyQ2FzZSgpOiJHRVQiLHRoaXMuQj10LHRoaXMuZj0iIix0aGlzLmg9MCx0aGlzLnU9ITEsdGhpcy5iPSEwLHRoaXMuYT1uZXcgWE1MSHR0cFJlcXVlc3QsdGhpcy5zPXRoaXMuSD9Mdih0aGlzLkgpOkx2KFZ2KSx0aGlzLmEub25yZWFkeXN0YXRlY2hhbmdlPVFwKHRoaXMuemEsdGhpcyk7dHJ5e3RoaXMuQT0hMCx0aGlzLmEub3BlbihlLFN0cmluZyh0KSwhMCksdGhpcy5BPSExfWNhdGNoKHQpe3JldHVybiB2b2lkIEhnKHRoaXMsdCl9dD1ufHwiIjt2YXIgaSxvPW5ldyBlZyh0aGlzLmhlYWRlcnMpO3ImJnRnKHIsZnVuY3Rpb24odCxlKXtvLnNldChlLHQpfSkscj1mdW5jdGlvbih0KXt0Ontmb3IodmFyIGU9V2csbj10Lmxlbmd0aCxyPSJzdHJpbmciPT10eXBlb2YgdD90LnNwbGl0KCIiKTp0LGk9MDtpPG47aSsrKWlmKGkgaW4gciYmZS5jYWxsKHZvaWQgMCxyW2ldLGksdCkpe2U9aTticmVhayB0fWU9LTF9cmV0dXJuIGU8MD9udWxsOiJzdHJpbmciPT10eXBlb2YgdD90LmNoYXJBdChlKTp0W2VdfShvLkwoKSksbj1xcC5Gb3JtRGF0YSYmdCBpbnN0YW5jZW9mIHFwLkZvcm1EYXRhLDA8PVpwKEtnLGUpJiYhciYmIW4mJm8uc2V0KCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtOCIpLG8uZm9yRWFjaChmdW5jdGlvbih0LGUpe3RoaXMuYS5zZXRSZXF1ZXN0SGVhZGVyKGUsdCl9LHRoaXMpLHRoaXMuSSYmKHRoaXMuYS5yZXNwb25zZVR5cGU9dGhpcy5JKSwid2l0aENyZWRlbnRpYWxzImluIHRoaXMuYSYmdGhpcy5hLndpdGhDcmVkZW50aWFscyE9PXRoaXMuRiYmKHRoaXMuYS53aXRoQ3JlZGVudGlhbHM9dGhpcy5GKTt0cnl7WWcodGhpcyksMDx0aGlzLm8mJigodGhpcy5EPShpPXRoaXMuYSxnZCYmU2QoOSkmJiJudW1iZXIiPT10eXBlb2YgaS50aW1lb3V0JiZ2b2lkIDAhPT1pLm9udGltZW91dCkpPyh0aGlzLmEudGltZW91dD10aGlzLm8sdGhpcy5hLm9udGltZW91dD1RcCh0aGlzLnhhLHRoaXMpKTp0aGlzLm09ZnYodGhpcy54YSx0aGlzLm8sdGhpcykpLHRoaXMubD0hMCx0aGlzLmEuc2VuZCh0KSx0aGlzLmw9ITF9Y2F0Y2godCl7SGcodGhpcyx0KX19LHoueGE9ZnVuY3Rpb24oKXt2b2lkIDAhPT1qcCYmdGhpcy5hJiYodGhpcy5mPSJUaW1lZCBvdXQgYWZ0ZXIgIit0aGlzLm8rIm1zLCBhYm9ydGluZyIsdGhpcy5oPTgsJGQodGhpcywidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfSx6LmFib3J0PWZ1bmN0aW9uKHQpe3RoaXMuYSYmdGhpcy5iJiYodGhpcy5iPSExLHRoaXMuZz0hMCx0aGlzLmEuYWJvcnQoKSx0aGlzLmc9ITEsdGhpcy5oPXR8fDcsJGQodGhpcywiY29tcGxldGUiKSwkZCh0aGlzLCJhYm9ydCIpLFFnKHRoaXMpKX0sei5HPWZ1bmN0aW9uKCl7dGhpcy5hJiYodGhpcy5iJiYodGhpcy5iPSExLHRoaXMuZz0hMCx0aGlzLmEuYWJvcnQoKSx0aGlzLmc9ITEpLFFnKHRoaXMsITApKSxxZy5YLkcuY2FsbCh0aGlzKX0sei56YT1mdW5jdGlvbigpe3RoaXMuanx8KHRoaXMuQXx8dGhpcy5sfHx0aGlzLmc/emcodGhpcyk6dGhpcy5VYSgpKX0sei5VYT1mdW5jdGlvbigpe3pnKHRoaXMpfSx6Llc9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIDI8WGcodGhpcyk/dGhpcy5hLnN0YXR1czotMX1jYXRjaCh0KXtyZXR1cm4tMX19LHouJD1mdW5jdGlvbigpe3RyeXtyZXR1cm4gdGhpcy5hP3RoaXMuYS5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2godCl7cmV0dXJuIiJ9fSx6LlBhPWZ1bmN0aW9uKHQpe2lmKHRoaXMuYSl7dmFyIGU9dGhpcy5hLnJlc3BvbnNlVGV4dDtyZXR1cm4gdCYmMD09ZS5pbmRleE9mKHQpJiYoZT1lLnN1YnN0cmluZyh0Lmxlbmd0aCkpLGpnKGUpfX0sei51YT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9LHouUWE9ZnVuY3Rpb24oKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHRoaXMuZj90aGlzLmY6U3RyaW5nKHRoaXMuZil9LCh6PVpnLnByb3RvdHlwZSkuaGE9OCx6LnY9MSx6LkJhPWZ1bmN0aW9uKHQpe2lmKHRoaXMuaClpZih0aGlzLmg9bnVsbCwxPT10aGlzLnYpe2lmKCF0KXt0aGlzLlI9TWF0aC5mbG9vcigxZTUqTWF0aC5yYW5kb20oKSksdD10aGlzLlIrKzt2YXIgZSxuPW5ldyBxdih0aGlzLHRoaXMuYyx0LHZvaWQgMCkscj10aGlzLmw7aWYodGhpcy5PJiYocj9mZChyPWhkKHIpLHRoaXMuTyk6cj10aGlzLk8pLG51bGw9PT10aGlzLmkmJihuLkI9ciksdGhpcy5kYSl0Ontmb3IodmFyIGk9ZT0wO2k8dGhpcy5nLmxlbmd0aDtpKyspe3ZhciBvPXRoaXMuZ1tpXTtpZigiX19kYXRhX18iaW4gby5hJiYic3RyaW5nIj09dHlwZW9mKG89by5hLl9fZGF0YV9fKT9vPW8ubGVuZ3RoOm89dm9pZCAwLHZvaWQgMD09PW8pYnJlYWs7aWYoNDA5NjwoZSs9bykpe2U9aTticmVhayB0fWlmKDQwOTY9PT1lfHxpPT09dGhpcy5nLmxlbmd0aC0xKXtlPWkrMTticmVhayB0fX1lPTFlM31lbHNlIGU9MWUzO2U9YXkodGhpcyxuLGUpLGxnKGk9c2codGhpcy5CKSwiUklEIix0KSxsZyhpLCJDVkVSIiwyMiksdGhpcy5BJiZsZyhpLCJYLUhUVFAtU2Vzc2lvbi1JZCIsdGhpcy5BKSxzeSh0aGlzLGkpLHRoaXMuaSYmciYmSmcoaSx0aGlzLmksciksRGcodGhpcy5iLG4pLHRoaXMuSWEmJmxnKGksIlRZUEUiLCJpbml0IiksdGhpcy5kYT8obGcoaSwiJHJlcSIsZSksbGcoaSwiU0lEIiwibnVsbCIpLG4uVT0hMCxIdihuLGksbnVsbCkpOkh2KG4saSxlKSx0aGlzLnY9Mn19ZWxzZSAzPT10aGlzLnYmJih0P295KHRoaXMsdCk6MD09dGhpcy5nLmxlbmd0aHx8UmcodGhpcy5iKXx8b3kodGhpcykpfSx6LkFhPWZ1bmN0aW9uKCl7dmFyIHQ7dGhpcy5qPW51bGwsbHkodGhpcyksdGhpcy5VJiYhKHRoaXMuRnx8bnVsbD09dGhpcy5hfHx0aGlzLk48PTApJiYodD0yKnRoaXMuTix0aGlzLmMuaW5mbygiQlAgZGV0ZWN0aW9uIHRpbWVyIGVuYWJsZWQ6ICIrdCksdGhpcy5zPUR2KFFwKHRoaXMuVGEsdGhpcyksdCkpfSx6LlRhPWZ1bmN0aW9uKCl7dGhpcy5zJiYodGhpcy5zPW51bGwsdGhpcy5jLmluZm8oIkJQIGRldGVjdGlvbiB0aW1lb3V0IHJlYWNoZWQuIiksdGhpcy5jLmluZm8oIkJ1ZmZlcmluZyBwcm94eSBkZXRlY3RlZCBhbmQgc3dpdGNoIHRvIGxvbmctcG9sbGluZyEiKSx0aGlzLkg9ITEsdGhpcy5GPSEwLFB2KDEwKSxleSh0aGlzKSxseSh0aGlzKSl9LHouU2E9ZnVuY3Rpb24oKXtudWxsIT10aGlzLm0mJih0aGlzLm09bnVsbCxleSh0aGlzKSxjeSh0aGlzKSxQdigxOSkpfSx6LllhPWZ1bmN0aW9uKHQpe3Q/KHRoaXMuYy5pbmZvKCJTdWNjZXNzZnVsbHkgcGluZ2VkIGdvb2dsZS5jb20iKSxQdigyKSk6KHRoaXMuYy5pbmZvKCJGYWlsZWQgdG8gcGluZyBnb29nbGUuY29tIiksUHYoMSkpfSwoej1ieS5wcm90b3R5cGUpLnRhPWZ1bmN0aW9uKCl7fSx6LnNhPWZ1bmN0aW9uKCl7fSx6LnJhPWZ1bmN0aW9uKCl7fSx6LnFhPWZ1bmN0aW9uKCl7fSx6LkphPWZ1bmN0aW9uKCl7fSx3eS5wcm90b3R5cGUuYT1mdW5jdGlvbih0LGUpe3JldHVybiBuZXcgX3kodCxlKX0sSnAoX3ksSmQpLF95LnByb3RvdHlwZS5nPWZ1bmN0aW9uKCl7dGhpcy5hLmY9dGhpcy5mLHRoaXMubSYmKHRoaXMuYS5DPSEwKTt2YXIgdD10aGlzLmEsZT10aGlzLm8sbj10aGlzLmJ8fHZvaWQgMDtQdigwKSx0LmZhPWUsdC5WPW58fHt9LHQuSD10LlMsdC5CPXl5KHQsbnVsbCx0LmZhKSxpeSh0KX0sX3kucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7dHkodGhpcy5hKX0sX3kucHJvdG90eXBlLmg9ZnVuY3Rpb24odCl7dmFyIGU7InN0cmluZyI9PXR5cGVvZiB0PygoZT17fSkuX19kYXRhX189dCxyeSh0aGlzLmEsZSkpOnRoaXMubD8oKGU9e30pLl9fZGF0YV9fPXR2KHQpLHJ5KHRoaXMuYSxlKSk6cnkodGhpcy5hLHQpfSxfeS5wcm90b3R5cGUuRz1mdW5jdGlvbigpe3RoaXMuYS5mPW51bGwsZGVsZXRlIHRoaXMuZix0eSh0aGlzLmEpLGRlbGV0ZSB0aGlzLmEsX3kuWC5HLmNhbGwodGhpcyl9LEpwKEl5LEZ2KSxKcChUeSxVdiksSnAoRXksYnkpLEV5LnByb3RvdHlwZS50YT1mdW5jdGlvbigpeyRkKHRoaXMuYSwiYSIpfSxFeS5wcm90b3R5cGUuc2E9ZnVuY3Rpb24odCl7JGQodGhpcy5hLG5ldyBJeSh0KSl9LEV5LnByb3RvdHlwZS5yYT1mdW5jdGlvbih0KXskZCh0aGlzLmEsbmV3IFR5KX0sRXkucHJvdG90eXBlLnFhPWZ1bmN0aW9uKCl7JGQodGhpcy5hLCJiIil9LHd5LnByb3RvdHlwZS5jcmVhdGVXZWJDaGFubmVsPXd5LnByb3RvdHlwZS5hLF95LnByb3RvdHlwZS5zZW5kPV95LnByb3RvdHlwZS5oLF95LnByb3RvdHlwZS5vcGVuPV95LnByb3RvdHlwZS5nLEdhLk5PX0VSUk9SPTAsR2EuVElNRU9VVD04LEdhLkhUVFBfRVJST1I9NixTbi5DT01QTEVURT0iY29tcGxldGUiLChNdi5FdmVudFR5cGU9RykuT1BFTj0iYSIsRy5DTE9TRT0iYiIsRy5FUlJPUj0iYyIsRy5NRVNTQUdFPSJkIixKZC5wcm90b3R5cGUubGlzdGVuPUpkLnByb3RvdHlwZS52YSxxZy5wcm90b3R5cGUubGlzdGVuT25jZT1xZy5wcm90b3R5cGUud2EscWcucHJvdG90eXBlLmdldExhc3RFcnJvcj1xZy5wcm90b3R5cGUuUWEscWcucHJvdG90eXBlLmdldExhc3RFcnJvckNvZGU9cWcucHJvdG90eXBlLnVhLHFnLnByb3RvdHlwZS5nZXRTdGF0dXM9cWcucHJvdG90eXBlLlcscWcucHJvdG90eXBlLmdldFJlc3BvbnNlSnNvbj1xZy5wcm90b3R5cGUuUGEscWcucHJvdG90eXBlLmdldFJlc3BvbnNlVGV4dD1xZy5wcm90b3R5cGUuJCxxZy5wcm90b3R5cGUuc2VuZD1xZy5wcm90b3R5cGUuYmE7dmFyIFN5PU52LEN5PUdhLE55PVNuLEF5PVN2LGt5PTEwLFJ5PTExLFB5PU12LE95PXFnLER5PSh4eS5wcm90b3R5cGUudD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5wcmV2aW91c1ZhbHVlPU1hdGgubWF4KHQsdGhpcy5wcmV2aW91c1ZhbHVlKSx0aGlzLnByZXZpb3VzVmFsdWV9LHh5LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7dmFyIHQ9Kyt0aGlzLnByZXZpb3VzVmFsdWU7cmV0dXJuIHRoaXMuaSYmdGhpcy5pKHQpLHR9LHh5KTtmdW5jdGlvbiB4eSh0LGUpe3ZhciBuPXRoaXM7dGhpcy5wcmV2aW91c1ZhbHVlPXQsZSYmKGUuc2VxdWVuY2VOdW1iZXJIYW5kbGVyPWZ1bmN0aW9uKHQpe3JldHVybiBuLnQodCl9LHRoaXMuaT1mdW5jdGlvbih0KXtyZXR1cm4gZS53cml0ZVNlcXVlbmNlTnVtYmVyKHQpfSl9RHkubz0tMTt2YXIgTHksTXk9e09LOiJvayIsQ0FOQ0VMTEVEOiJjYW5jZWxsZWQiLFVOS05PV046InVua25vd24iLElOVkFMSURfQVJHVU1FTlQ6ImludmFsaWQtYXJndW1lbnQiLERFQURMSU5FX0VYQ0VFREVEOiJkZWFkbGluZS1leGNlZWRlZCIsTk9UX0ZPVU5EOiJub3QtZm91bmQiLEFMUkVBRFlfRVhJU1RTOiJhbHJlYWR5LWV4aXN0cyIsUEVSTUlTU0lPTl9ERU5JRUQ6InBlcm1pc3Npb24tZGVuaWVkIixVTkFVVEhFTlRJQ0FURUQ6InVuYXV0aGVudGljYXRlZCIsUkVTT1VSQ0VfRVhIQVVTVEVEOiJyZXNvdXJjZS1leGhhdXN0ZWQiLEZBSUxFRF9QUkVDT05ESVRJT046ImZhaWxlZC1wcmVjb25kaXRpb24iLEFCT1JURUQ6ImFib3J0ZWQiLE9VVF9PRl9SQU5HRToib3V0LW9mLXJhbmdlIixVTklNUExFTUVOVEVEOiJ1bmltcGxlbWVudGVkIixJTlRFUk5BTDoiaW50ZXJuYWwiLFVOQVZBSUxBQkxFOiJ1bmF2YWlsYWJsZSIsREFUQV9MT1NTOiJkYXRhLWxvc3MifSxGeT0oWGkoanksTHk9RXJyb3IpLGp5KSxVeT1uZXcgcHMoIkBmaXJlYmFzZS9maXJlc3RvcmUiKTtmdW5jdGlvbiBqeSh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49THkuY2FsbCh0aGlzLGUpfHx0aGlzKS5jb2RlPXQsbi5tZXNzYWdlPWUsbi5uYW1lPSJGaXJlYmFzZUVycm9yIixuLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIG4ubmFtZSsiOiBbY29kZT0iK24uY29kZSsiXTogIituLm1lc3NhZ2V9LG59ZnVuY3Rpb24gcXkoKXtyZXR1cm4gVXkubG9nTGV2ZWx9ZnVuY3Rpb24gVnkodCl7Zm9yKHZhciBlLG49W10scj0xO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTtVeS5sb2dMZXZlbDw9YXMuREVCVUcmJihlPW4ubWFwKFd5KSxVeS5kZWJ1Zy5hcHBseShVeSxubyhbIkZpcmVzdG9yZSAoOC4zLjIpOiAiK3RdLGUpKSl9ZnVuY3Rpb24gQnkodCl7Zm9yKHZhciBlLG49W10scj0xO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTtVeS5sb2dMZXZlbDw9YXMuRVJST1ImJihlPW4ubWFwKFd5KSxVeS5lcnJvci5hcHBseShVeSxubyhbIkZpcmVzdG9yZSAoOC4zLjIpOiAiK3RdLGUpKSl9ZnVuY3Rpb24gS3kodCl7Zm9yKHZhciBlLG49W10scj0xO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTtVeS5sb2dMZXZlbDw9YXMuV0FSTiYmKGU9bi5tYXAoV3kpLFV5Lndhcm4uYXBwbHkoVXksbm8oWyJGaXJlc3RvcmUgKDguMy4yKTogIit0XSxlKSkpfWZ1bmN0aW9uIFd5KGUpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTt0cnl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWNhdGNoKHQpe3JldHVybiBlfX1mdW5jdGlvbiBIeSh0KXt0PSJGSVJFU1RPUkUgKDguMy4yKSBJTlRFUk5BTCBBU1NFUlRJT04gRkFJTEVEOiAiKyh0PXZvaWQgMD09PXQ/IlVuZXhwZWN0ZWQgc3RhdGUiOnQpO3Rocm93IEJ5KHQpLG5ldyBFcnJvcih0KX1mdW5jdGlvbiBHeSh0KXt0fHxIeSgpfXZhciB6eT0oUXkudT1mdW5jdGlvbigpe2Zvcih2YXIgdD0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkiLGU9TWF0aC5mbG9vcigyNTYvdC5sZW5ndGgpKnQubGVuZ3RoLG49IiI7bi5sZW5ndGg8MjA7KWZvcih2YXIgcj1mdW5jdGlvbih0KXt2YXIgZT0idW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJihzZWxmLmNyeXB0b3x8c2VsZi5tc0NyeXB0byksbj1uZXcgVWludDhBcnJheSh0KTtpZihlJiYiZnVuY3Rpb24iPT10eXBlb2YgZS5nZXRSYW5kb21WYWx1ZXMpZS5nZXRSYW5kb21WYWx1ZXMobik7ZWxzZSBmb3IodmFyIHI9MDtyPHQ7cisrKW5bcl09TWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSk7cmV0dXJuIG59KDQwKSxpPTA7aTxyLmxlbmd0aDsrK2kpbi5sZW5ndGg8MjAmJnJbaV08ZSYmKG4rPXQuY2hhckF0KHJbaV0ldC5sZW5ndGgpKTtyZXR1cm4gbn0sUXkpO2Z1bmN0aW9uIFF5KCl7fWZ1bmN0aW9uIFl5KHQsZSl7cmV0dXJuIHQ8ZT8tMTplPHQ/MTowfWZ1bmN0aW9uIFh5KHQsbixyKXtyZXR1cm4gdC5sZW5ndGg9PT1uLmxlbmd0aCYmdC5ldmVyeShmdW5jdGlvbih0LGUpe3JldHVybiByKHQsbltlXSl9KX1mdW5jdGlvbiBKeSh0KXtyZXR1cm4gdCsiXDAifXZhciAkeT0oZW0ubm93PWZ1bmN0aW9uKCl7cmV0dXJuIGVtLmZyb21NaWxsaXMoRGF0ZS5ub3coKSl9LGVtLmZyb21EYXRlPWZ1bmN0aW9uKHQpe3JldHVybiBlbS5mcm9tTWlsbGlzKHQuZ2V0VGltZSgpKX0sZW0uZnJvbU1pbGxpcz1mdW5jdGlvbih0KXt2YXIgZT1NYXRoLmZsb29yKHQvMWUzKTtyZXR1cm4gbmV3IGVtKGUsMWU2Kih0LTFlMyplKSl9LGVtLnByb3RvdHlwZS50b0RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IERhdGUodGhpcy50b01pbGxpcygpKX0sZW0ucHJvdG90eXBlLnRvTWlsbGlzPWZ1bmN0aW9uKCl7cmV0dXJuIDFlMyp0aGlzLnNlY29uZHMrdGhpcy5uYW5vc2Vjb25kcy8xZTZ9LGVtLnByb3RvdHlwZS5fY29tcGFyZVRvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnNlY29uZHM9PT10LnNlY29uZHM/WXkodGhpcy5uYW5vc2Vjb25kcyx0Lm5hbm9zZWNvbmRzKTpZeSh0aGlzLnNlY29uZHMsdC5zZWNvbmRzKX0sZW0ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIHQuc2Vjb25kcz09PXRoaXMuc2Vjb25kcyYmdC5uYW5vc2Vjb25kcz09PXRoaXMubmFub3NlY29uZHN9LGVtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJUaW1lc3RhbXAoc2Vjb25kcz0iK3RoaXMuc2Vjb25kcysiLCBuYW5vc2Vjb25kcz0iK3RoaXMubmFub3NlY29uZHMrIikifSxlbS5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJue3NlY29uZHM6dGhpcy5zZWNvbmRzLG5hbm9zZWNvbmRzOnRoaXMubmFub3NlY29uZHN9fSxlbS5wcm90b3R5cGUudmFsdWVPZj1mdW5jdGlvbigpe3ZhciB0PXRoaXMuc2Vjb25kcy0gLTYyMTM1NTk2ODAwO3JldHVybiBTdHJpbmcodCkucGFkU3RhcnQoMTIsIjAiKSsiLiIrU3RyaW5nKHRoaXMubmFub3NlY29uZHMpLnBhZFN0YXJ0KDksIjAiKX0sZW0pLFp5PSh0bS5mcm9tVGltZXN0YW1wPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgdG0odCl9LHRtLm1pbj1mdW5jdGlvbigpe3JldHVybiBuZXcgdG0obmV3ICR5KDAsMCkpfSx0bS5wcm90b3R5cGUuY29tcGFyZVRvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnRpbWVzdGFtcC5fY29tcGFyZVRvKHQudGltZXN0YW1wKX0sdG0ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMudGltZXN0YW1wLmlzRXF1YWwodC50aW1lc3RhbXApfSx0bS5wcm90b3R5cGUudG9NaWNyb3NlY29uZHM9ZnVuY3Rpb24oKXtyZXR1cm4gMWU2KnRoaXMudGltZXN0YW1wLnNlY29uZHMrdGhpcy50aW1lc3RhbXAubmFub3NlY29uZHMvMWUzfSx0bS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iU25hcHNob3RWZXJzaW9uKCIrdGhpcy50aW1lc3RhbXAudG9TdHJpbmcoKSsiKSJ9LHRtLnByb3RvdHlwZS50b1RpbWVzdGFtcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRpbWVzdGFtcH0sdG0pO2Z1bmN0aW9uIHRtKHQpe3RoaXMudGltZXN0YW1wPXR9ZnVuY3Rpb24gZW0odCxlKXtpZih0aGlzLnNlY29uZHM9dCwodGhpcy5uYW5vc2Vjb25kcz1lKTwwKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJUaW1lc3RhbXAgbmFub3NlY29uZHMgb3V0IG9mIHJhbmdlOiAiK2UpO2lmKDFlOTw9ZSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiVGltZXN0YW1wIG5hbm9zZWNvbmRzIG91dCBvZiByYW5nZTogIitlKTtpZih0PC02MjEzNTU5NjgwMCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiVGltZXN0YW1wIHNlY29uZHMgb3V0IG9mIHJhbmdlOiAiK3QpO2lmKDI1MzQwMjMwMDgwMDw9dCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiVGltZXN0YW1wIHNlY29uZHMgb3V0IG9mIHJhbmdlOiAiK3QpfWZ1bmN0aW9uIG5tKHQpe3ZhciBlLG49MDtmb3IoZSBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpJiZuKys7cmV0dXJuIG59ZnVuY3Rpb24gcm0odCxlKXtmb3IodmFyIG4gaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxuKSYmZShuLHRbbl0pfWZ1bmN0aW9uIGltKHQpe2Zvcih2YXIgZSBpbiB0KWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpKXJldHVybiExO3JldHVybiEwfXZhciBvbSxzbSxHYT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGdtLnByb3RvdHlwZSwibGVuZ3RoIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGVufSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGdtLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiAwPT09Z20uY29tcGFyYXRvcih0aGlzLHQpfSxnbS5wcm90b3R5cGUuY2hpbGQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5zZWdtZW50cy5zbGljZSh0aGlzLm9mZnNldCx0aGlzLmxpbWl0KCkpO3JldHVybiB0IGluc3RhbmNlb2YgZ20/dC5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UucHVzaCh0KX0pOmUucHVzaCh0KSx0aGlzLmNvbnN0cnVjdChlKX0sZ20ucHJvdG90eXBlLmxpbWl0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub2Zmc2V0K3RoaXMubGVuZ3RofSxnbS5wcm90b3R5cGUucG9wRmlyc3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9dm9pZCAwPT09dD8xOnQsdGhpcy5jb25zdHJ1Y3QodGhpcy5zZWdtZW50cyx0aGlzLm9mZnNldCt0LHRoaXMubGVuZ3RoLXQpfSxnbS5wcm90b3R5cGUucG9wTGFzdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnN0cnVjdCh0aGlzLnNlZ21lbnRzLHRoaXMub2Zmc2V0LHRoaXMubGVuZ3RoLTEpfSxnbS5wcm90b3R5cGUuZmlyc3RTZWdtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2VnbWVudHNbdGhpcy5vZmZzZXRdfSxnbS5wcm90b3R5cGUubGFzdFNlZ21lbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXQodGhpcy5sZW5ndGgtMSl9LGdtLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc2VnbWVudHNbdGhpcy5vZmZzZXQrdF19LGdtLnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLmxlbmd0aH0sZ20ucHJvdG90eXBlLmlzUHJlZml4T2Y9ZnVuY3Rpb24odCl7aWYodC5sZW5ndGg8dGhpcy5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBlPTA7ZTx0aGlzLmxlbmd0aDtlKyspaWYodGhpcy5nZXQoZSkhPT10LmdldChlKSlyZXR1cm4hMTtyZXR1cm4hMH0sZ20ucHJvdG90eXBlLmlzSW1tZWRpYXRlUGFyZW50T2Y9ZnVuY3Rpb24odCl7aWYodGhpcy5sZW5ndGgrMSE9PXQubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgZT0wO2U8dGhpcy5sZW5ndGg7ZSsrKWlmKHRoaXMuZ2V0KGUpIT09dC5nZXQoZSkpcmV0dXJuITE7cmV0dXJuITB9LGdtLnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLm9mZnNldCxuPXRoaXMubGltaXQoKTtlPG47ZSsrKXQodGhpcy5zZWdtZW50c1tlXSl9LGdtLnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2VnbWVudHMuc2xpY2UodGhpcy5vZmZzZXQsdGhpcy5saW1pdCgpKX0sZ20uY29tcGFyYXRvcj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj1NYXRoLm1pbih0Lmxlbmd0aCxlLmxlbmd0aCkscj0wO3I8bjtyKyspe3ZhciBpPXQuZ2V0KHIpLG89ZS5nZXQocik7aWYoaTxvKXJldHVybi0xO2lmKG88aSlyZXR1cm4gMX1yZXR1cm4gdC5sZW5ndGg8ZS5sZW5ndGg/LTE6dC5sZW5ndGg+ZS5sZW5ndGg/MTowfSxnbSksYW09KFhpKHZtLHNtPUdhKSx2bS5wcm90b3R5cGUuY29uc3RydWN0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbmV3IHZtKHQsZSxuKX0sdm0ucHJvdG90eXBlLmNhbm9uaWNhbFN0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvQXJyYXkoKS5qb2luKCIvIil9LHZtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNhbm9uaWNhbFN0cmluZygpfSx2bS5mcm9tU3RyaW5nPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2Zvcih2YXIgbj1bXSxyPTAsaT10O3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdO2lmKDA8PW8uaW5kZXhPZigiLy8iKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBzZWdtZW50ICgiK28rIikuIFBhdGhzIG11c3Qgbm90IGNvbnRhaW4gLy8gaW4gdGhlbS4iKTtuLnB1c2guYXBwbHkobixvLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiAwPHQubGVuZ3RofSkpfXJldHVybiBuZXcgdm0obil9LHZtLmVtcHR5UGF0aD1mdW5jdGlvbigpe3JldHVybiBuZXcgdm0oW10pfSx2bSksdW09L15bX2EtekEtWl1bX2EtekEtWjAtOV0qJC8sY209KFhpKGRtLG9tPUdhKSxkbS5wcm90b3R5cGUuY29uc3RydWN0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbmV3IGRtKHQsZSxuKX0sZG0uaXNWYWxpZElkZW50aWZpZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHVtLnRlc3QodCl9LGRtLnByb3RvdHlwZS5jYW5vbmljYWxTdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b0FycmF5KCkubWFwKGZ1bmN0aW9uKHQpe3JldHVybiB0PXQucmVwbGFjZSgvXFwvZywiXFxcXCIpLnJlcGxhY2UoL2AvZywiXFxgIiksdD0hZG0uaXNWYWxpZElkZW50aWZpZXIodCk/ImAiK3QrImAiOnR9KS5qb2luKCIuIil9LGRtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNhbm9uaWNhbFN0cmluZygpfSxkbS5wcm90b3R5cGUuaXNLZXlGaWVsZD1mdW5jdGlvbigpe3JldHVybiAxPT09dGhpcy5sZW5ndGgmJiJfX25hbWVfXyI9PT10aGlzLmdldCgwKX0sZG0ua2V5RmllbGQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGRtKFsiX19uYW1lX18iXSl9LGRtLmZyb21TZXJ2ZXJGb3JtYXQ9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdLG49IiIscj0wLGk9ZnVuY3Rpb24oKXtpZigwPT09bi5sZW5ndGgpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgZmllbGQgcGF0aCAoIit0KyIpLiBQYXRocyBtdXN0IG5vdCBiZSBlbXB0eSwgYmVnaW4gd2l0aCAnLicsIGVuZCB3aXRoICcuJywgb3IgY29udGFpbiAnLi4nIik7ZS5wdXNoKG4pLG49IiJ9LG89ITE7cjx0Lmxlbmd0aDspe3ZhciBzPXRbcl07aWYoIlxcIj09PXMpe2lmKHIrMT09PXQubGVuZ3RoKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJQYXRoIGhhcyB0cmFpbGluZyBlc2NhcGUgY2hhcmFjdGVyOiAiK3QpO3ZhciBhPXRbcisxXTtpZigiXFwiIT09YSYmIi4iIT09YSYmImAiIT09YSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiUGF0aCBoYXMgaW52YWxpZCBlc2NhcGUgc2VxdWVuY2U6ICIrdCk7bis9YSxyKz0yfWVsc2UiYCI9PT1zP289IW86Ii4iIT09c3x8bz9uKz1zOmkoKSxyKyt9aWYoaSgpLG8pdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIlVudGVybWluYXRlZCBgIGluIHBhdGg6ICIrdCk7cmV0dXJuIG5ldyBkbShlKX0sZG0uZW1wdHlQYXRoPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkbShbXSl9LGRtKSxobT0ocG0ucHJvdG90eXBlLmNvdmVycz1mdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPXRoaXMuZmllbGRzO2U8bi5sZW5ndGg7ZSsrKWlmKG5bZV0uaXNQcmVmaXhPZih0KSlyZXR1cm4hMDtyZXR1cm4hMX0scG0ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIFh5KHRoaXMuZmllbGRzLHQuZmllbGRzLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaXNFcXVhbChlKX0pfSxwbSksbG09KGZtLmZyb21CYXNlNjRTdHJpbmc9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBmbShhdG9iKHQpKX0sZm0uZnJvbVVpbnQ4QXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBmbShmdW5jdGlvbih0KXtmb3IodmFyIGU9IiIsbj0wO248dC5sZW5ndGg7KytuKWUrPVN0cmluZy5mcm9tQ2hhckNvZGUodFtuXSk7cmV0dXJuIGV9KHQpKX0sZm0ucHJvdG90eXBlLnRvQmFzZTY0PWZ1bmN0aW9uKCl7cmV0dXJuIHQ9dGhpcy5iaW5hcnlTdHJpbmcsYnRvYSh0KTt2YXIgdH0sZm0ucHJvdG90eXBlLnRvVWludDhBcnJheT1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbih0KXtmb3IodmFyIGU9bmV3IFVpbnQ4QXJyYXkodC5sZW5ndGgpLG49MDtuPHQubGVuZ3RoO24rKyllW25dPXQuY2hhckNvZGVBdChuKTtyZXR1cm4gZX0odGhpcy5iaW5hcnlTdHJpbmcpfSxmbS5wcm90b3R5cGUuYXBwcm94aW1hdGVCeXRlU2l6ZT1mdW5jdGlvbigpe3JldHVybiAyKnRoaXMuYmluYXJ5U3RyaW5nLmxlbmd0aH0sZm0ucHJvdG90eXBlLmNvbXBhcmVUbz1mdW5jdGlvbih0KXtyZXR1cm4gWXkodGhpcy5iaW5hcnlTdHJpbmcsdC5iaW5hcnlTdHJpbmcpfSxmbS5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5iaW5hcnlTdHJpbmc9PT10LmJpbmFyeVN0cmluZ30sZm0pO2Z1bmN0aW9uIGZtKHQpe3RoaXMuYmluYXJ5U3RyaW5nPXR9ZnVuY3Rpb24gcG0odCl7KHRoaXMuZmllbGRzPXQpLnNvcnQoY20uY29tcGFyYXRvcil9ZnVuY3Rpb24gZG0oKXtyZXR1cm4gbnVsbCE9PW9tJiZvbS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gdm0oKXtyZXR1cm4gbnVsbCE9PXNtJiZzbS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gZ20odCxlLG4pe3ZvaWQgMD09PWU/ZT0wOmU+dC5sZW5ndGgmJkh5KCksdm9pZCAwPT09bj9uPXQubGVuZ3RoLWU6bj50Lmxlbmd0aC1lJiZIeSgpLHRoaXMuc2VnbWVudHM9dCx0aGlzLm9mZnNldD1lLHRoaXMubGVuPW59bG0uRU1QVFlfQllURV9TVFJJTkc9bmV3IGxtKCIiKTt2YXIgeW09bmV3IFJlZ0V4cCgvXlxkezR9LVxkXGQtXGRcZFRcZFxkOlxkXGQ6XGRcZCg/OlwuKFxkKykpP1okLyk7ZnVuY3Rpb24gbW0odCl7aWYoR3koISF0KSwic3RyaW5nIiE9dHlwZW9mIHQpcmV0dXJue3NlY29uZHM6Ym0odC5zZWNvbmRzKSxuYW5vczpibSh0Lm5hbm9zKX07dmFyIGU9MCxuPXltLmV4ZWModCk7R3koISFuKSxuWzFdJiYobj0oKG49blsxXSkrIjAwMDAwMDAwMCIpLnN1YnN0cigwLDkpLGU9TnVtYmVyKG4pKTt0PW5ldyBEYXRlKHQpO3JldHVybntzZWNvbmRzOk1hdGguZmxvb3IodC5nZXRUaW1lKCkvMWUzKSxuYW5vczplfX1mdW5jdGlvbiBibSh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/dDoic3RyaW5nIj09dHlwZW9mIHQ/TnVtYmVyKHQpOjB9ZnVuY3Rpb24gd20odCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P2xtLmZyb21CYXNlNjRTdHJpbmcodCk6bG0uZnJvbVVpbnQ4QXJyYXkodCl9ZnVuY3Rpb24gX20odCl7cmV0dXJuInNlcnZlcl90aW1lc3RhbXAiPT09KG51bGw9PT0odD0oKG51bGw9PT0odD1udWxsPT10P3ZvaWQgMDp0Lm1hcFZhbHVlKXx8dm9pZCAwPT09dD92b2lkIDA6dC5maWVsZHMpfHx7fSkuX190eXBlX18pfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnN0cmluZ1ZhbHVlKX1mdW5jdGlvbiBJbSh0KXt0PW1tKHQubWFwVmFsdWUuZmllbGRzLl9fbG9jYWxfd3JpdGVfdGltZV9fLnRpbWVzdGFtcFZhbHVlKTtyZXR1cm4gbmV3ICR5KHQuc2Vjb25kcyx0Lm5hbm9zKX1mdW5jdGlvbiBUbSh0KXtyZXR1cm4gbnVsbD09dH1mdW5jdGlvbiBFbSh0KXtyZXR1cm4gMD09PXQmJjEvdD09LTEvMH1mdW5jdGlvbiBTbSh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJk51bWJlci5pc0ludGVnZXIodCkmJiFFbSh0KSYmdDw9TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVImJnQ+PU51bWJlci5NSU5fU0FGRV9JTlRFR0VSfXZhciBDbT0oTm0uZnJvbVBhdGg9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBObShhbS5mcm9tU3RyaW5nKHQpKX0sTm0uZnJvbU5hbWU9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBObShhbS5mcm9tU3RyaW5nKHQpLnBvcEZpcnN0KDUpKX0sTm0ucHJvdG90eXBlLmhhc0NvbGxlY3Rpb25JZD1mdW5jdGlvbih0KXtyZXR1cm4gMjw9dGhpcy5wYXRoLmxlbmd0aCYmdGhpcy5wYXRoLmdldCh0aGlzLnBhdGgubGVuZ3RoLTIpPT09dH0sTm0ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPT10JiYwPT09YW0uY29tcGFyYXRvcih0aGlzLnBhdGgsdC5wYXRoKX0sTm0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGF0aC50b1N0cmluZygpfSxObS5jb21wYXJhdG9yPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGFtLmNvbXBhcmF0b3IodC5wYXRoLGUucGF0aCl9LE5tLmlzRG9jdW1lbnRLZXk9ZnVuY3Rpb24odCl7cmV0dXJuIHQubGVuZ3RoJTI9PTB9LE5tLmZyb21TZWdtZW50cz1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IE5tKG5ldyBhbSh0LnNsaWNlKCkpKX0sTm0pO2Z1bmN0aW9uIE5tKHQpe3RoaXMucGF0aD10fWZ1bmN0aW9uIEFtKHQpe3JldHVybiJudWxsVmFsdWUiaW4gdD8wOiJib29sZWFuVmFsdWUiaW4gdD8xOiJpbnRlZ2VyVmFsdWUiaW4gdHx8ImRvdWJsZVZhbHVlImluIHQ/MjoidGltZXN0YW1wVmFsdWUiaW4gdD8zOiJzdHJpbmdWYWx1ZSJpbiB0PzU6ImJ5dGVzVmFsdWUiaW4gdD82OiJyZWZlcmVuY2VWYWx1ZSJpbiB0Pzc6Imdlb1BvaW50VmFsdWUiaW4gdD84OiJhcnJheVZhbHVlImluIHQ/OToibWFwVmFsdWUiaW4gdD9fbSh0KT80OjEwOkh5KCl9ZnVuY3Rpb24ga20ocixpKXt2YXIgdCxlLG49QW0ocik7aWYobiE9PUFtKGkpKXJldHVybiExO3N3aXRjaChuKXtjYXNlIDA6cmV0dXJuITA7Y2FzZSAxOnJldHVybiByLmJvb2xlYW5WYWx1ZT09PWkuYm9vbGVhblZhbHVlO2Nhc2UgNDpyZXR1cm4gSW0ocikuaXNFcXVhbChJbShpKSk7Y2FzZSAzOnJldHVybiBmdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHIudGltZXN0YW1wVmFsdWUmJiJzdHJpbmciPT10eXBlb2YgdC50aW1lc3RhbXBWYWx1ZSYmci50aW1lc3RhbXBWYWx1ZS5sZW5ndGg9PT10LnRpbWVzdGFtcFZhbHVlLmxlbmd0aClyZXR1cm4gci50aW1lc3RhbXBWYWx1ZT09PXQudGltZXN0YW1wVmFsdWU7dmFyIGU9bW0oci50aW1lc3RhbXBWYWx1ZSksdD1tbSh0LnRpbWVzdGFtcFZhbHVlKTtyZXR1cm4gZS5zZWNvbmRzPT09dC5zZWNvbmRzJiZlLm5hbm9zPT09dC5uYW5vc30oaSk7Y2FzZSA1OnJldHVybiByLnN0cmluZ1ZhbHVlPT09aS5zdHJpbmdWYWx1ZTtjYXNlIDY6cmV0dXJuIGU9aSx3bShyLmJ5dGVzVmFsdWUpLmlzRXF1YWwod20oZS5ieXRlc1ZhbHVlKSk7Y2FzZSA3OnJldHVybiByLnJlZmVyZW5jZVZhbHVlPT09aS5yZWZlcmVuY2VWYWx1ZTtjYXNlIDg6cmV0dXJuIHQ9aSxibSgoZT1yKS5nZW9Qb2ludFZhbHVlLmxhdGl0dWRlKT09PWJtKHQuZ2VvUG9pbnRWYWx1ZS5sYXRpdHVkZSkmJmJtKGUuZ2VvUG9pbnRWYWx1ZS5sb25naXR1ZGUpPT09Ym0odC5nZW9Qb2ludFZhbHVlLmxvbmdpdHVkZSk7Y2FzZSAyOnJldHVybiBmdW5jdGlvbih0LGUpe2lmKCJpbnRlZ2VyVmFsdWUiaW4gdCYmImludGVnZXJWYWx1ZSJpbiBlKXJldHVybiBibSh0LmludGVnZXJWYWx1ZSk9PT1ibShlLmludGVnZXJWYWx1ZSk7aWYoImRvdWJsZVZhbHVlImluIHQmJiJkb3VibGVWYWx1ZSJpbiBlKXt0PWJtKHQuZG91YmxlVmFsdWUpLGU9Ym0oZS5kb3VibGVWYWx1ZSk7cmV0dXJuIHQ9PT1lP0VtKHQpPT09RW0oZSk6aXNOYU4odCkmJmlzTmFOKGUpfXJldHVybiExfShyLGkpO2Nhc2UgOTpyZXR1cm4gWHkoci5hcnJheVZhbHVlLnZhbHVlc3x8W10saS5hcnJheVZhbHVlLnZhbHVlc3x8W10sa20pO2Nhc2UgMTA6cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQsZT1yLm1hcFZhbHVlLmZpZWxkc3x8e30sbj1pLm1hcFZhbHVlLmZpZWxkc3x8e307aWYobm0oZSkhPT1ubShuKSlyZXR1cm4hMTtmb3IodCBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkodCkmJih2b2lkIDA9PT1uW3RdfHwha20oZVt0XSxuW3RdKSkpcmV0dXJuITE7cmV0dXJuITB9KCk7ZGVmYXVsdDpyZXR1cm4gSHkoKX19ZnVuY3Rpb24gUm0odCxlKXtyZXR1cm4gdm9pZCAwIT09KHQudmFsdWVzfHxbXSkuZmluZChmdW5jdGlvbih0KXtyZXR1cm4ga20odCxlKX0pfWZ1bmN0aW9uIFBtKHQsZSl7dmFyIG4scixpLG89QW0odCkscz1BbShlKTtpZihvIT09cylyZXR1cm4gWXkobyxzKTtzd2l0Y2gobyl7Y2FzZSAwOnJldHVybiAwO2Nhc2UgMTpyZXR1cm4gWXkodC5ib29sZWFuVmFsdWUsZS5ib29sZWFuVmFsdWUpO2Nhc2UgMjpyZXR1cm4gcj1lLGk9Ym0odC5pbnRlZ2VyVmFsdWV8fHQuZG91YmxlVmFsdWUpLHI9Ym0oci5pbnRlZ2VyVmFsdWV8fHIuZG91YmxlVmFsdWUpLGk8cj8tMTpyPGk/MTppPT09cj8wOmlzTmFOKGkpP2lzTmFOKHIpPzA6LTE6MTtjYXNlIDM6cmV0dXJuIE9tKHQudGltZXN0YW1wVmFsdWUsZS50aW1lc3RhbXBWYWx1ZSk7Y2FzZSA0OnJldHVybiBPbShJbSh0KSxJbShlKSk7Y2FzZSA1OnJldHVybiBZeSh0LnN0cmluZ1ZhbHVlLGUuc3RyaW5nVmFsdWUpO2Nhc2UgNjpyZXR1cm4gZnVuY3Rpb24odCxlKXt0PXdtKHQpLGU9d20oZSk7cmV0dXJuIHQuY29tcGFyZVRvKGUpfSh0LmJ5dGVzVmFsdWUsZS5ieXRlc1ZhbHVlKTtjYXNlIDc6cmV0dXJuIGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQuc3BsaXQoIi8iKSxyPWUuc3BsaXQoIi8iKSxpPTA7aTxuLmxlbmd0aCYmaTxyLmxlbmd0aDtpKyspe3ZhciBvPVl5KG5baV0scltpXSk7aWYoMCE9PW8pcmV0dXJuIG99cmV0dXJuIFl5KG4ubGVuZ3RoLHIubGVuZ3RoKX0odC5yZWZlcmVuY2VWYWx1ZSxlLnJlZmVyZW5jZVZhbHVlKTtjYXNlIDg6cmV0dXJuIG49dC5nZW9Qb2ludFZhbHVlLGk9ZS5nZW9Qb2ludFZhbHVlLDAhPT0ocj1ZeShibShuLmxhdGl0dWRlKSxibShpLmxhdGl0dWRlKSkpP3I6WXkoYm0obi5sb25naXR1ZGUpLGJtKGkubG9uZ2l0dWRlKSk7Y2FzZSA5OnJldHVybiBmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10LnZhbHVlc3x8W10scj1lLnZhbHVlc3x8W10saT0wO2k8bi5sZW5ndGgmJmk8ci5sZW5ndGg7KytpKXt2YXIgbz1QbShuW2ldLHJbaV0pO2lmKG8pcmV0dXJuIG99cmV0dXJuIFl5KG4ubGVuZ3RoLHIubGVuZ3RoKX0odC5hcnJheVZhbHVlLGUuYXJyYXlWYWx1ZSk7Y2FzZSAxMDpyZXR1cm4gZnVuY3Rpb24odCxlKXt2YXIgbj10LmZpZWxkc3x8e30scj1PYmplY3Qua2V5cyhuKSxpPWUuZmllbGRzfHx7fSxvPU9iamVjdC5rZXlzKGkpO3Iuc29ydCgpLG8uc29ydCgpO2Zvcih2YXIgcz0wO3M8ci5sZW5ndGgmJnM8by5sZW5ndGg7KytzKXt2YXIgYT1ZeShyW3NdLG9bc10pO2lmKDAhPT1hKXJldHVybiBhO2E9UG0obltyW3NdXSxpW29bc11dKTtpZigwIT09YSlyZXR1cm4gYX1yZXR1cm4gWXkoci5sZW5ndGgsby5sZW5ndGgpfSh0Lm1hcFZhbHVlLGUubWFwVmFsdWUpO2RlZmF1bHQ6dGhyb3cgSHkoKX19ZnVuY3Rpb24gT20odCxlKXtpZigic3RyaW5nIj09dHlwZW9mIHQmJiJzdHJpbmciPT10eXBlb2YgZSYmdC5sZW5ndGg9PT1lLmxlbmd0aClyZXR1cm4gWXkodCxlKTt2YXIgbj1tbSh0KSx0PW1tKGUpLGU9WXkobi5zZWNvbmRzLHQuc2Vjb25kcyk7cmV0dXJuIDAhPT1lP2U6WXkobi5uYW5vcyx0Lm5hbm9zKX1mdW5jdGlvbiBEbSh0KXtyZXR1cm4gZnVuY3Rpb24gcyh0KXtyZXR1cm4ibnVsbFZhbHVlImluIHQ/Im51bGwiOiJib29sZWFuVmFsdWUiaW4gdD8iIit0LmJvb2xlYW5WYWx1ZToiaW50ZWdlclZhbHVlImluIHQ/IiIrdC5pbnRlZ2VyVmFsdWU6ImRvdWJsZVZhbHVlImluIHQ/IiIrdC5kb3VibGVWYWx1ZToidGltZXN0YW1wVmFsdWUiaW4gdD9mdW5jdGlvbih0KXt2YXIgdD1tbSh0KTtyZXR1cm4idGltZSgiK3Quc2Vjb25kcysiLCIrdC5uYW5vcysiKSJ9KHQudGltZXN0YW1wVmFsdWUpOiJzdHJpbmdWYWx1ZSJpbiB0P3Quc3RyaW5nVmFsdWU6ImJ5dGVzVmFsdWUiaW4gdD93bSh0LmJ5dGVzVmFsdWUpLnRvQmFzZTY0KCk6InJlZmVyZW5jZVZhbHVlImluIHQ/KGU9dC5yZWZlcmVuY2VWYWx1ZSxDbS5mcm9tTmFtZShlKS50b1N0cmluZygpKToiZ2VvUG9pbnRWYWx1ZSJpbiB0PyJnZW8oIisoZT10Lmdlb1BvaW50VmFsdWUpLmxhdGl0dWRlKyIsIitlLmxvbmdpdHVkZSsiKSI6ImFycmF5VmFsdWUiaW4gdD9mdW5jdGlvbih0KXtmb3IodmFyIGU9IlsiLG49ITAscj0wLGk9dC52YWx1ZXN8fFtdO3I8aS5sZW5ndGg7cisrKW4/bj0hMTplKz0iLCIsZSs9cyhpW3JdKTtyZXR1cm4gZSsiXSJ9KHQuYXJyYXlWYWx1ZSk6Im1hcFZhbHVlImluIHQ/ZnVuY3Rpb24odCl7Zm9yKHZhciBlPSJ7IixuPSEwLHI9MCxpPU9iamVjdC5rZXlzKHQuZmllbGRzfHx7fSkuc29ydCgpO3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdO24/bj0hMTplKz0iLCIsZSs9bysiOiIrcyh0LmZpZWxkc1tvXSl9cmV0dXJuIGUrIn0ifSh0Lm1hcFZhbHVlKTpIeSgpO3ZhciBlfSh0KX1mdW5jdGlvbiB4bSh0LGUpe3JldHVybntyZWZlcmVuY2VWYWx1ZToicHJvamVjdHMvIit0LnByb2plY3RJZCsiL2RhdGFiYXNlcy8iK3QuZGF0YWJhc2UrIi9kb2N1bWVudHMvIitlLnBhdGguY2Fub25pY2FsU3RyaW5nKCl9fWZ1bmN0aW9uIExtKHQpe3JldHVybiB0JiYiaW50ZWdlclZhbHVlImluIHR9ZnVuY3Rpb24gTW0odCl7cmV0dXJuISF0JiYiYXJyYXlWYWx1ZSJpbiB0fWZ1bmN0aW9uIEZtKHQpe3JldHVybiB0JiYibnVsbFZhbHVlImluIHR9ZnVuY3Rpb24gVW0odCl7cmV0dXJuIHQmJiJkb3VibGVWYWx1ZSJpbiB0JiZpc05hTihOdW1iZXIodC5kb3VibGVWYWx1ZSkpfWZ1bmN0aW9uIGptKHQpe3JldHVybiB0JiYibWFwVmFsdWUiaW4gdH12YXIgcW09KFZtLmVtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBWbSh7bWFwVmFsdWU6e319KX0sVm0ucHJvdG90eXBlLmZpZWxkPWZ1bmN0aW9uKHQpe3JldHVybiBWbS5leHRyYWN0TmVzdGVkVmFsdWUodGhpcy5idWlsZFByb3RvKCksdCl9LFZtLnByb3RvdHlwZS50b1Byb3RvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmllbGQoY20uZW1wdHlQYXRoKCkpfSxWbS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7dGhpcy5zZXRPdmVybGF5KHQsZSl9LFZtLnByb3RvdHlwZS5zZXRBbGw9ZnVuY3Rpb24odCl7dmFyIG49dGhpczt0LmZvckVhY2goZnVuY3Rpb24odCxlKXt0P24uc2V0KGUsdCk6bi5kZWxldGUoZSl9KX0sVm0ucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXt0aGlzLnNldE92ZXJsYXkodCxudWxsKX0sVm0ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIGttKHRoaXMuYnVpbGRQcm90bygpLHQuYnVpbGRQcm90bygpKX0sVm0ucHJvdG90eXBlLnNldE92ZXJsYXk9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy5vdmVybGF5TWFwLHI9MDtyPHQubGVuZ3RoLTE7KytyKXZhciBpPXQuZ2V0KHIpLG89bi5nZXQoaSksbj0obyBpbnN0YW5jZW9mIE1hcHx8KG89byYmMTA9PT1BbShvKT9uZXcgTWFwKE9iamVjdC5lbnRyaWVzKG8ubWFwVmFsdWUuZmllbGRzfHx7fSkpOm5ldyBNYXAsbi5zZXQoaSxvKSksbyk7bi5zZXQodC5sYXN0U2VnbWVudCgpLGUpfSxWbS5wcm90b3R5cGUuYXBwbHlPdmVybGF5PWZ1bmN0aW9uKHIsdCl7dmFyIGk9dGhpcyxvPSExLGU9Vm0uZXh0cmFjdE5lc3RlZFZhbHVlKHRoaXMucGFydGlhbFZhbHVlLHIpLHM9am0oZSk/T2JqZWN0LmFzc2lnbih7fSxlLm1hcFZhbHVlLmZpZWxkcyk6e307cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbih0LGUpe3ZhciBuO3QgaW5zdGFuY2VvZiBNYXA/bnVsbCE9KG49aS5hcHBseU92ZXJsYXkoci5jaGlsZChlKSx0KSkmJihzW2VdPW4sbz0hMCk6bnVsbCE9PXQ/KHNbZV09dCxvPSEwKTpzLmhhc093blByb3BlcnR5KGUpJiYoZGVsZXRlIHNbZV0sbz0hMCl9KSxvP3ttYXBWYWx1ZTp7ZmllbGRzOnN9fTpudWxsfSxWbS5wcm90b3R5cGUuYnVpbGRQcm90bz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuYXBwbHlPdmVybGF5KGNtLmVtcHR5UGF0aCgpLHRoaXMub3ZlcmxheU1hcCk7cmV0dXJuIG51bGwhPXQmJih0aGlzLnBhcnRpYWxWYWx1ZT10LHRoaXMub3ZlcmxheU1hcC5jbGVhcigpKSx0aGlzLnBhcnRpYWxWYWx1ZX0sVm0uZXh0cmFjdE5lc3RlZFZhbHVlPWZ1bmN0aW9uKHQsZSl7aWYoZS5pc0VtcHR5KCkpcmV0dXJuIHQ7Zm9yKHZhciBuPXQscj0wO3I8ZS5sZW5ndGgtMTsrK3Ipe2lmKCFuLm1hcFZhbHVlLmZpZWxkcylyZXR1cm4gbnVsbDtpZigham0obj1uLm1hcFZhbHVlLmZpZWxkc1tlLmdldChyKV0pKXJldHVybiBudWxsfXJldHVybihuPShuLm1hcFZhbHVlLmZpZWxkc3x8e30pW2UubGFzdFNlZ21lbnQoKV0pfHxudWxsfSxWbS5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFZtKHRoaXMuYnVpbGRQcm90bygpKX0sVm0pO2Z1bmN0aW9uIFZtKHQpe3RoaXMub3ZlcmxheU1hcD1uZXcgTWFwLHRoaXMucGFydGlhbFZhbHVlPXR9dmFyIEJtPShXbS5uZXdJbnZhbGlkRG9jdW1lbnQ9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBXbSh0LDAsWnkubWluKCkscW0uZW1wdHkoKSwwKX0sV20ubmV3Rm91bmREb2N1bWVudD1mdW5jdGlvbih0LGUsbil7cmV0dXJuIG5ldyBXbSh0LDEsZSxuLDApfSxXbS5uZXdOb0RvY3VtZW50PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBXbSh0LDIsZSxxbS5lbXB0eSgpLDApfSxXbS5uZXdVbmtub3duRG9jdW1lbnQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbmV3IFdtKHQsMyxlLHFtLmVtcHR5KCksMil9LFdtLnByb3RvdHlwZS5jb252ZXJ0VG9Gb3VuZERvY3VtZW50PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMudmVyc2lvbj10LHRoaXMuZG9jdW1lbnRUeXBlPTEsdGhpcy5kYXRhPWUsdGhpcy5kb2N1bWVudFN0YXRlPTAsdGhpc30sV20ucHJvdG90eXBlLmNvbnZlcnRUb05vRG9jdW1lbnQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMudmVyc2lvbj10LHRoaXMuZG9jdW1lbnRUeXBlPTIsdGhpcy5kYXRhPXFtLmVtcHR5KCksdGhpcy5kb2N1bWVudFN0YXRlPTAsdGhpc30sV20ucHJvdG90eXBlLmNvbnZlcnRUb1Vua25vd25Eb2N1bWVudD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy52ZXJzaW9uPXQsdGhpcy5kb2N1bWVudFR5cGU9Myx0aGlzLmRhdGE9cW0uZW1wdHkoKSx0aGlzLmRvY3VtZW50U3RhdGU9Mix0aGlzfSxXbS5wcm90b3R5cGUuc2V0SGFzQ29tbWl0dGVkTXV0YXRpb25zPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9jdW1lbnRTdGF0ZT0yLHRoaXN9LFdtLnByb3RvdHlwZS5zZXRIYXNMb2NhbE11dGF0aW9ucz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmRvY3VtZW50U3RhdGU9MSx0aGlzfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoV20ucHJvdG90eXBlLCJoYXNMb2NhbE11dGF0aW9ucyIse2dldDpmdW5jdGlvbigpe3JldHVybiAxPT09dGhpcy5kb2N1bWVudFN0YXRlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXbS5wcm90b3R5cGUsImhhc0NvbW1pdHRlZE11dGF0aW9ucyIse2dldDpmdW5jdGlvbigpe3JldHVybiAyPT09dGhpcy5kb2N1bWVudFN0YXRlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXbS5wcm90b3R5cGUsImhhc1BlbmRpbmdXcml0ZXMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5oYXNMb2NhbE11dGF0aW9uc3x8dGhpcy5oYXNDb21taXR0ZWRNdXRhdGlvbnN9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksV20ucHJvdG90eXBlLmlzVmFsaWREb2N1bWVudD1mdW5jdGlvbigpe3JldHVybiAwIT09dGhpcy5kb2N1bWVudFR5cGV9LFdtLnByb3RvdHlwZS5pc0ZvdW5kRG9jdW1lbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gMT09PXRoaXMuZG9jdW1lbnRUeXBlfSxXbS5wcm90b3R5cGUuaXNOb0RvY3VtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIDI9PT10aGlzLmRvY3VtZW50VHlwZX0sV20ucHJvdG90eXBlLmlzVW5rbm93bkRvY3VtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIDM9PT10aGlzLmRvY3VtZW50VHlwZX0sV20ucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBXbSYmdGhpcy5rZXkuaXNFcXVhbCh0LmtleSkmJnRoaXMudmVyc2lvbi5pc0VxdWFsKHQudmVyc2lvbikmJnRoaXMuZG9jdW1lbnRUeXBlPT09dC5kb2N1bWVudFR5cGUmJnRoaXMuZG9jdW1lbnRTdGF0ZT09PXQuZG9jdW1lbnRTdGF0ZSYmdGhpcy5kYXRhLmlzRXF1YWwodC5kYXRhKX0sV20ucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBXbSh0aGlzLmtleSx0aGlzLmRvY3VtZW50VHlwZSx0aGlzLnZlcnNpb24sdGhpcy5kYXRhLmNsb25lKCksdGhpcy5kb2N1bWVudFN0YXRlKX0sV20ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIkRvY3VtZW50KCIrdGhpcy5rZXkrIiwgIit0aGlzLnZlcnNpb24rIiwgIitKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGEudG9Qcm90bygpKSsiLCB7ZG9jdW1lbnRUeXBlOiAiK3RoaXMuZG9jdW1lbnRUeXBlKyJ9KSwge2RvY3VtZW50U3RhdGU6ICIrdGhpcy5kb2N1bWVudFN0YXRlKyJ9KSJ9LFdtKSxLbT1mdW5jdGlvbih0LGUsbixyLGksbyxzKXt2b2lkIDA9PT1lJiYoZT1udWxsKSx2b2lkIDA9PT1uJiYobj1bXSksdm9pZCAwPT09ciYmKHI9W10pLHZvaWQgMD09PWkmJihpPW51bGwpLHZvaWQgMD09PW8mJihvPW51bGwpLHZvaWQgMD09PXMmJihzPW51bGwpLHRoaXMucGF0aD10LHRoaXMuY29sbGVjdGlvbkdyb3VwPWUsdGhpcy5vcmRlckJ5PW4sdGhpcy5maWx0ZXJzPXIsdGhpcy5saW1pdD1pLHRoaXMuc3RhcnRBdD1vLHRoaXMuZW5kQXQ9cyx0aGlzLmg9bnVsbH07ZnVuY3Rpb24gV20odCxlLG4scixpKXt0aGlzLmtleT10LHRoaXMuZG9jdW1lbnRUeXBlPWUsdGhpcy52ZXJzaW9uPW4sdGhpcy5kYXRhPXIsdGhpcy5kb2N1bWVudFN0YXRlPWl9ZnVuY3Rpb24gSG0odCxlLG4scixpLG8scyl7cmV0dXJuIG5ldyBLbSh0LGU9dm9pZCAwPT09ZT9udWxsOmUsbj12b2lkIDA9PT1uP1tdOm4scj12b2lkIDA9PT1yP1tdOnIsaT12b2lkIDA9PT1pP251bGw6aSxvPXZvaWQgMD09PW8/bnVsbDpvLHM9dm9pZCAwPT09cz9udWxsOnMpfWZ1bmN0aW9uIEdtKHQpe3ZhciBlPXQ7cmV0dXJuIG51bGw9PT1lLmgmJih0PWUucGF0aC5jYW5vbmljYWxTdHJpbmcoKSxudWxsIT09ZS5jb2xsZWN0aW9uR3JvdXAmJih0Kz0ifGNnOiIrZS5jb2xsZWN0aW9uR3JvdXApLHQrPSJ8ZjoiLHQrPWUuZmlsdGVycy5tYXAoZnVuY3Rpb24odCl7cmV0dXJuKHQ9dCkuZmllbGQuY2Fub25pY2FsU3RyaW5nKCkrdC5vcC50b1N0cmluZygpK0RtKHQudmFsdWUpfSkuam9pbigiLCIpLHQrPSJ8b2I6Iix0Kz1lLm9yZGVyQnkubWFwKGZ1bmN0aW9uKHQpe3JldHVybih0PXQpLmZpZWxkLmNhbm9uaWNhbFN0cmluZygpK3QuZGlyfSkuam9pbigiLCIpLFRtKGUubGltaXQpfHwodCs9InxsOiIsdCs9ZS5saW1pdCksZS5zdGFydEF0JiYodCs9InxsYjoiLHQrPV9iKGUuc3RhcnRBdCkpLGUuZW5kQXQmJih0Kz0ifHViOiIsdCs9X2IoZS5lbmRBdCkpLGUuaD10KSxlLmh9ZnVuY3Rpb24gem0odCxlKXtpZih0LmxpbWl0IT09ZS5saW1pdClyZXR1cm4hMTtpZih0Lm9yZGVyQnkubGVuZ3RoIT09ZS5vcmRlckJ5Lmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIG4scixpPTA7aTx0Lm9yZGVyQnkubGVuZ3RoO2krKylpZihuPXQub3JkZXJCeVtpXSxyPWUub3JkZXJCeVtpXSxuLmRpciE9PXIuZGlyfHwhbi5maWVsZC5pc0VxdWFsKHIuZmllbGQpKXJldHVybiExO2lmKHQuZmlsdGVycy5sZW5ndGghPT1lLmZpbHRlcnMubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbyxzLGE9MDthPHQuZmlsdGVycy5sZW5ndGg7YSsrKWlmKG89dC5maWx0ZXJzW2FdLHM9ZS5maWx0ZXJzW2FdLG8ub3AhPT1zLm9wfHwhby5maWVsZC5pc0VxdWFsKHMuZmllbGQpfHwha20oby52YWx1ZSxzLnZhbHVlKSlyZXR1cm4hMTtyZXR1cm4gdC5jb2xsZWN0aW9uR3JvdXA9PT1lLmNvbGxlY3Rpb25Hcm91cCYmISF0LnBhdGguaXNFcXVhbChlLnBhdGgpJiYhIUViKHQuc3RhcnRBdCxlLnN0YXJ0QXQpJiZFYih0LmVuZEF0LGUuZW5kQXQpfWZ1bmN0aW9uIFFtKHQpe3JldHVybiBDbS5pc0RvY3VtZW50S2V5KHQucGF0aCkmJm51bGw9PT10LmNvbGxlY3Rpb25Hcm91cCYmMD09PXQuZmlsdGVycy5sZW5ndGh9dmFyIFltLFhtPShYaShKbSxZbT1mdW5jdGlvbigpe30pLEptLmNyZWF0ZT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIHQuaXNLZXlGaWVsZCgpPyJpbiI9PT1lfHwibm90LWluIj09PWU/dGhpcy5sKHQsZSxuKTpuZXcgZWIodCxlLG4pOiJhcnJheS1jb250YWlucyI9PT1lP25ldyBmYih0LG4pOiJpbiI9PT1lP25ldyBwYih0LG4pOiJub3QtaW4iPT09ZT9uZXcgZGIodCxuKToiYXJyYXktY29udGFpbnMtYW55Ij09PWU/bmV3IHZiKHQsbik6bmV3IEptKHQsZSxuKX0sSm0ubD1mdW5jdGlvbih0LGUsbil7cmV0dXJuIG5ldygiaW4iPT09ZT9uYjpyYikodCxuKX0sSm0ucHJvdG90eXBlLm1hdGNoZXM9ZnVuY3Rpb24odCl7dD10LmRhdGEuZmllbGQodGhpcy5maWVsZCk7cmV0dXJuIiE9Ij09PXRoaXMub3A/bnVsbCE9PXQmJnRoaXMubShQbSh0LHRoaXMudmFsdWUpKTpudWxsIT09dCYmQW0odGhpcy52YWx1ZSk9PT1BbSh0KSYmdGhpcy5tKFBtKHQsdGhpcy52YWx1ZSkpfSxKbS5wcm90b3R5cGUubT1mdW5jdGlvbih0KXtzd2l0Y2godGhpcy5vcCl7Y2FzZSI8IjpyZXR1cm4gdDwwO2Nhc2UiPD0iOnJldHVybiB0PD0wO2Nhc2UiPT0iOnJldHVybiAwPT09dDtjYXNlIiE9IjpyZXR1cm4gMCE9PXQ7Y2FzZSI+IjpyZXR1cm4gMDx0O2Nhc2UiPj0iOnJldHVybiAwPD10O2RlZmF1bHQ6cmV0dXJuIEh5KCl9fSxKbS5wcm90b3R5cGUuZz1mdW5jdGlvbigpe3JldHVybiAwPD1bIjwiLCI8PSIsIj4iLCI+PSIsIiE9Iiwibm90LWluIl0uaW5kZXhPZih0aGlzLm9wKX0sSm0pO2Z1bmN0aW9uIEptKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybihyPVltLmNhbGwodGhpcyl8fHRoaXMpLmZpZWxkPXQsci5vcD1lLHIudmFsdWU9bixyfXZhciAkbSxabSx0YixlYj0oWGkoc2IsdGI9WG0pLHNiLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKHQpe3Q9Q20uY29tcGFyYXRvcih0LmtleSx0aGlzLmtleSk7cmV0dXJuIHRoaXMubSh0KX0sc2IpLG5iPShYaShvYixabT1YbSksb2IucHJvdG90eXBlLm1hdGNoZXM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMua2V5cy5zb21lKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlzRXF1YWwoZS5rZXkpfSl9LG9iKSxyYj0oWGkoaWIsJG09WG0pLGliLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKGUpe3JldHVybiF0aGlzLmtleXMuc29tZShmdW5jdGlvbih0KXtyZXR1cm4gdC5pc0VxdWFsKGUua2V5KX0pfSxpYik7ZnVuY3Rpb24gaWIodCxlKXt2YXIgbj10aGlzO3JldHVybihuPSRtLmNhbGwodGhpcyx0LCJub3QtaW4iLGUpfHx0aGlzKS5rZXlzPWFiKDAsZSksbn1mdW5jdGlvbiBvYih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49Wm0uY2FsbCh0aGlzLHQsImluIixlKXx8dGhpcykua2V5cz1hYigwLGUpLG59ZnVuY3Rpb24gc2IodCxlLG4pe3ZhciByPXRoaXM7cmV0dXJuKHI9dGIuY2FsbCh0aGlzLHQsZSxuKXx8dGhpcykua2V5PUNtLmZyb21OYW1lKG4ucmVmZXJlbmNlVmFsdWUpLHJ9ZnVuY3Rpb24gYWIodCxlKXtyZXR1cm4oKG51bGw9PT0oZT1lLmFycmF5VmFsdWUpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnZhbHVlcyl8fFtdKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIENtLmZyb21OYW1lKHQucmVmZXJlbmNlVmFsdWUpfSl9dmFyIHViLGNiLGhiLGxiLGZiPShYaSh3YixsYj1YbSksd2IucHJvdG90eXBlLm1hdGNoZXM9ZnVuY3Rpb24odCl7dD10LmRhdGEuZmllbGQodGhpcy5maWVsZCk7cmV0dXJuIE1tKHQpJiZSbSh0LmFycmF5VmFsdWUsdGhpcy52YWx1ZSl9LHdiKSxwYj0oWGkoYmIsaGI9WG0pLGJiLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKHQpe3Q9dC5kYXRhLmZpZWxkKHRoaXMuZmllbGQpO3JldHVybiBudWxsIT09dCYmUm0odGhpcy52YWx1ZS5hcnJheVZhbHVlLHQpfSxiYiksZGI9KFhpKG1iLGNiPVhtKSxtYi5wcm90b3R5cGUubWF0Y2hlcz1mdW5jdGlvbih0KXtpZihSbSh0aGlzLnZhbHVlLmFycmF5VmFsdWUse251bGxWYWx1ZToiTlVMTF9WQUxVRSJ9KSlyZXR1cm4hMTt0PXQuZGF0YS5maWVsZCh0aGlzLmZpZWxkKTtyZXR1cm4gbnVsbCE9PXQmJiFSbSh0aGlzLnZhbHVlLmFycmF5VmFsdWUsdCl9LG1iKSx2Yj0oWGkoeWIsdWI9WG0pLHliLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsdD10LmRhdGEuZmllbGQodGhpcy5maWVsZCk7cmV0dXJuISghTW0odCl8fCF0LmFycmF5VmFsdWUudmFsdWVzKSYmdC5hcnJheVZhbHVlLnZhbHVlcy5zb21lKGZ1bmN0aW9uKHQpe3JldHVybiBSbShlLnZhbHVlLmFycmF5VmFsdWUsdCl9KX0seWIpLGdiPWZ1bmN0aW9uKHQsZSl7dGhpcy5wb3NpdGlvbj10LHRoaXMuYmVmb3JlPWV9O2Z1bmN0aW9uIHliKHQsZSl7cmV0dXJuIHViLmNhbGwodGhpcyx0LCJhcnJheS1jb250YWlucy1hbnkiLGUpfHx0aGlzfWZ1bmN0aW9uIG1iKHQsZSl7cmV0dXJuIGNiLmNhbGwodGhpcyx0LCJub3QtaW4iLGUpfHx0aGlzfWZ1bmN0aW9uIGJiKHQsZSl7cmV0dXJuIGhiLmNhbGwodGhpcyx0LCJpbiIsZSl8fHRoaXN9ZnVuY3Rpb24gd2IodCxlKXtyZXR1cm4gbGIuY2FsbCh0aGlzLHQsImFycmF5LWNvbnRhaW5zIixlKXx8dGhpc31mdW5jdGlvbiBfYih0KXtyZXR1cm4odC5iZWZvcmU/ImIiOiJhIikrIjoiK3QucG9zaXRpb24ubWFwKERtKS5qb2luKCIsIil9dmFyIEliPWZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09ZSYmKGU9ImFzYyIpLHRoaXMuZmllbGQ9dCx0aGlzLmRpcj1lfTtmdW5jdGlvbiBUYih0LGUsbil7Zm9yKHZhciByPTAsaT0wO2k8dC5wb3NpdGlvbi5sZW5ndGg7aSsrKXt2YXIgbz1lW2ldLHM9dC5wb3NpdGlvbltpXSxyPW8uZmllbGQuaXNLZXlGaWVsZCgpP0NtLmNvbXBhcmF0b3IoQ20uZnJvbU5hbWUocy5yZWZlcmVuY2VWYWx1ZSksbi5rZXkpOlBtKHMsbi5kYXRhLmZpZWxkKG8uZmllbGQpKTtpZigiZGVzYyI9PT1vLmRpciYmKHIqPS0xKSwwIT09cilicmVha31yZXR1cm4gdC5iZWZvcmU/cjw9MDpyPDB9ZnVuY3Rpb24gRWIodCxlKXtpZihudWxsPT09dClyZXR1cm4gbnVsbD09PWU7aWYobnVsbD09PWUpcmV0dXJuITE7aWYodC5iZWZvcmUhPT1lLmJlZm9yZXx8dC5wb3NpdGlvbi5sZW5ndGghPT1lLnBvc2l0aW9uLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIG49MDtuPHQucG9zaXRpb24ubGVuZ3RoO24rKylpZigha20odC5wb3NpdGlvbltuXSxlLnBvc2l0aW9uW25dKSlyZXR1cm4hMTtyZXR1cm4hMH12YXIgU2I9ZnVuY3Rpb24odCxlLG4scixpLG8scyxhKXt2b2lkIDA9PT1lJiYoZT1udWxsKSx2b2lkIDA9PT1uJiYobj1bXSksdm9pZCAwPT09ciYmKHI9W10pLHZvaWQgMD09PWkmJihpPW51bGwpLHZvaWQgMD09PW8mJihvPSJGIiksdm9pZCAwPT09cyYmKHM9bnVsbCksdm9pZCAwPT09YSYmKGE9bnVsbCksdGhpcy5wYXRoPXQsdGhpcy5jb2xsZWN0aW9uR3JvdXA9ZSx0aGlzLmV4cGxpY2l0T3JkZXJCeT1uLHRoaXMuZmlsdGVycz1yLHRoaXMubGltaXQ9aSx0aGlzLmxpbWl0VHlwZT1vLHRoaXMuc3RhcnRBdD1zLHRoaXMuZW5kQXQ9YSx0aGlzLnA9bnVsbCx0aGlzLlQ9bnVsbCx0aGlzLnN0YXJ0QXQsdGhpcy5lbmRBdH07ZnVuY3Rpb24gQ2IodCxlLG4scixpLG8scyxhKXtyZXR1cm4gbmV3IFNiKHQsZSxuLHIsaSxvLHMsYSl9ZnVuY3Rpb24gTmIodCl7cmV0dXJuIG5ldyBTYih0KX1mdW5jdGlvbiBBYih0KXtyZXR1cm4hVG0odC5saW1pdCkmJiJGIj09PXQubGltaXRUeXBlfWZ1bmN0aW9uIGtiKHQpe3JldHVybiFUbSh0LmxpbWl0KSYmIkwiPT09dC5saW1pdFR5cGV9ZnVuY3Rpb24gUmIodCl7cmV0dXJuIDA8dC5leHBsaWNpdE9yZGVyQnkubGVuZ3RoP3QuZXhwbGljaXRPcmRlckJ5WzBdLmZpZWxkOm51bGx9ZnVuY3Rpb24gUGIodCl7Zm9yKHZhciBlPTAsbj10LmZpbHRlcnM7ZTxuLmxlbmd0aDtlKyspe3ZhciByPW5bZV07aWYoci5nKCkpcmV0dXJuIHIuZmllbGR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gT2IodCl7cmV0dXJuIG51bGwhPT10LmNvbGxlY3Rpb25Hcm91cH1mdW5jdGlvbiBEYih0KXt2YXIgZT10O2lmKG51bGw9PT1lLnApe2UucD1bXTt2YXIgbj1QYihlKSx0PVJiKGUpO2lmKG51bGwhPT1uJiZudWxsPT09dCluLmlzS2V5RmllbGQoKXx8ZS5wLnB1c2gobmV3IEliKG4pKSxlLnAucHVzaChuZXcgSWIoY20ua2V5RmllbGQoKSwiYXNjIikpO2Vsc2V7Zm9yKHZhciByPSExLGk9MCxvPWUuZXhwbGljaXRPcmRlckJ5O2k8by5sZW5ndGg7aSsrKXt2YXIgcz1vW2ldO2UucC5wdXNoKHMpLHMuZmllbGQuaXNLZXlGaWVsZCgpJiYocj0hMCl9cnx8KG49MDxlLmV4cGxpY2l0T3JkZXJCeS5sZW5ndGg/ZS5leHBsaWNpdE9yZGVyQnlbZS5leHBsaWNpdE9yZGVyQnkubGVuZ3RoLTFdLmRpcjoiYXNjIixlLnAucHVzaChuZXcgSWIoY20ua2V5RmllbGQoKSxuKSkpfX1yZXR1cm4gZS5wfWZ1bmN0aW9uIHhiKHQpe3ZhciBlPXQ7aWYoIWUuVClpZigiRiI9PT1lLmxpbWl0VHlwZSllLlQ9SG0oZS5wYXRoLGUuY29sbGVjdGlvbkdyb3VwLERiKGUpLGUuZmlsdGVycyxlLmxpbWl0LGUuc3RhcnRBdCxlLmVuZEF0KTtlbHNle2Zvcih2YXIgbj1bXSxyPTAsaT1EYihlKTtyPGkubGVuZ3RoO3IrKyl7dmFyIG89aVtyXSxzPSJkZXNjIj09PW8uZGlyPyJhc2MiOiJkZXNjIjtuLnB1c2gobmV3IEliKG8uZmllbGQscykpfXZhciBhPWUuZW5kQXQ/bmV3IGdiKGUuZW5kQXQucG9zaXRpb24sIWUuZW5kQXQuYmVmb3JlKTpudWxsLHQ9ZS5zdGFydEF0P25ldyBnYihlLnN0YXJ0QXQucG9zaXRpb24sIWUuc3RhcnRBdC5iZWZvcmUpOm51bGw7ZS5UPUhtKGUucGF0aCxlLmNvbGxlY3Rpb25Hcm91cCxuLGUuZmlsdGVycyxlLmxpbWl0LGEsdCl9cmV0dXJuIGUuVH1mdW5jdGlvbiBMYih0LGUsbil7cmV0dXJuIG5ldyBTYih0LnBhdGgsdC5jb2xsZWN0aW9uR3JvdXAsdC5leHBsaWNpdE9yZGVyQnkuc2xpY2UoKSx0LmZpbHRlcnMuc2xpY2UoKSxlLG4sdC5zdGFydEF0LHQuZW5kQXQpfWZ1bmN0aW9uIE1iKHQsZSl7cmV0dXJuIHptKHhiKHQpLHhiKGUpKSYmdC5saW1pdFR5cGU9PT1lLmxpbWl0VHlwZX1mdW5jdGlvbiBGYih0KXtyZXR1cm4gR20oeGIodCkpKyJ8bHQ6Iit0LmxpbWl0VHlwZX1mdW5jdGlvbiBVYih0KXtyZXR1cm4iUXVlcnkodGFyZ2V0PSIrKGU9eGIodCksbj1lLnBhdGguY2Fub25pY2FsU3RyaW5nKCksbnVsbCE9PWUuY29sbGVjdGlvbkdyb3VwJiYobis9IiBjb2xsZWN0aW9uR3JvdXA9IitlLmNvbGxlY3Rpb25Hcm91cCksMDxlLmZpbHRlcnMubGVuZ3RoJiYobis9IiwgZmlsdGVyczogWyIrZS5maWx0ZXJzLm1hcChmdW5jdGlvbih0KXtyZXR1cm4odD10KS5maWVsZC5jYW5vbmljYWxTdHJpbmcoKSsiICIrdC5vcCsiICIrRG0odC52YWx1ZSl9KS5qb2luKCIsICIpKyJdIiksVG0oZS5saW1pdCl8fChuKz0iLCBsaW1pdDogIitlLmxpbWl0KSwwPGUub3JkZXJCeS5sZW5ndGgmJihuKz0iLCBvcmRlckJ5OiBbIitlLm9yZGVyQnkubWFwKGZ1bmN0aW9uKHQpe3JldHVybih0PXQpLmZpZWxkLmNhbm9uaWNhbFN0cmluZygpKyIgKCIrdC5kaXIrIikifSkuam9pbigiLCAiKSsiXSIpLGUuc3RhcnRBdCYmKG4rPSIsIHN0YXJ0QXQ6ICIrX2IoZS5zdGFydEF0KSksZS5lbmRBdCYmKG4rPSIsIGVuZEF0OiAiK19iKGUuZW5kQXQpKSwiVGFyZ2V0KCIrbisiKSIpKyI7IGxpbWl0VHlwZT0iK3QubGltaXRUeXBlKyIpIjt2YXIgZSxufWZ1bmN0aW9uIGpiKGksdCl7cmV0dXJuIHQuaXNGb3VuZERvY3VtZW50KCkmJihlPWksbj10LmtleS5wYXRoLG51bGwhPT1lLmNvbGxlY3Rpb25Hcm91cD90LmtleS5oYXNDb2xsZWN0aW9uSWQoZS5jb2xsZWN0aW9uR3JvdXApJiZlLnBhdGguaXNQcmVmaXhPZihuKTpDbS5pc0RvY3VtZW50S2V5KGUucGF0aCk/ZS5wYXRoLmlzRXF1YWwobik6ZS5wYXRoLmlzSW1tZWRpYXRlUGFyZW50T2YobikpJiZmdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPWkuZXhwbGljaXRPcmRlckJ5O2U8bi5sZW5ndGg7ZSsrKXt2YXIgcj1uW2VdO2lmKCFyLmZpZWxkLmlzS2V5RmllbGQoKSYmbnVsbD09PXQuZGF0YS5maWVsZChyLmZpZWxkKSlyZXR1cm59cmV0dXJuIDF9KHQpJiZmdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPWkuZmlsdGVycztlPG4ubGVuZ3RoO2UrKylpZighbltlXS5tYXRjaGVzKHQpKXJldHVybjtyZXR1cm4gMX0odCkmJihuPXQsKCEodD1pKS5zdGFydEF0fHxUYih0LnN0YXJ0QXQsRGIodCksbikpJiYoIXQuZW5kQXR8fCFUYih0LmVuZEF0LERiKHQpLG4pKSk7dmFyIGUsbn1mdW5jdGlvbiBxYihhKXtyZXR1cm4gZnVuY3Rpb24odCxlKXtmb3IodmFyIG49ITEscj0wLGk9RGIoYSk7cjxpLmxlbmd0aDtyKyspe3ZhciBvPWlbcl0scz1mdW5jdGlvbih0LHIsZSl7dmFyIG49dC5maWVsZC5pc0tleUZpZWxkKCk/Q20uY29tcGFyYXRvcihyLmtleSxlLmtleSk6ZnVuY3Rpb24odCxlKXt2YXIgbj1yLmRhdGEuZmllbGQodCksdD1lLmRhdGEuZmllbGQodCk7cmV0dXJuIG51bGwhPT1uJiZudWxsIT09dD9QbShuLHQpOkh5KCl9KHQuZmllbGQsZSk7c3dpdGNoKHQuZGlyKXtjYXNlImFzYyI6cmV0dXJuIG47Y2FzZSJkZXNjIjpyZXR1cm4tMSpuO2RlZmF1bHQ6cmV0dXJuIEh5KCl9fShvLHQsZSk7aWYoMCE9PXMpcmV0dXJuIHM7bj1ufHxvLmZpZWxkLmlzS2V5RmllbGQoKX1yZXR1cm4gMH19ZnVuY3Rpb24gVmIodCxlKXtpZih0Lkkpe2lmKGlzTmFOKGUpKXJldHVybntkb3VibGVWYWx1ZToiTmFOIn07aWYoZT09PTEvMClyZXR1cm57ZG91YmxlVmFsdWU6IkluZmluaXR5In07aWYoZT09PS0xLzApcmV0dXJue2RvdWJsZVZhbHVlOiItSW5maW5pdHkifX1yZXR1cm57ZG91YmxlVmFsdWU6RW0oZSk/Ii0wIjplfX1mdW5jdGlvbiBCYih0KXtyZXR1cm57aW50ZWdlclZhbHVlOiIiK3R9fWZ1bmN0aW9uIEtiKHQsZSl7cmV0dXJuIFNtKGUpP0JiKGUpOlZiKHQsZSl9U249ZnVuY3Rpb24oKXt0aGlzLl89dm9pZCAwfTtmdW5jdGlvbiBXYih0LGUpe3JldHVybiB0IGluc3RhbmNlb2Ygcnc/TG0odD1lKXx8dCYmImRvdWJsZVZhbHVlImluIHQ/ZTp7aW50ZWdlclZhbHVlOjB9Om51bGx9dmFyIEhiLEdiLHpiPShYaShYYixHYj1TbiksWGIpLFFiPShYaShZYixIYj1TbiksWWIpO2Z1bmN0aW9uIFliKHQpe3ZhciBlPXRoaXM7cmV0dXJuKGU9SGIuY2FsbCh0aGlzKXx8dGhpcykuZWxlbWVudHM9dCxlfWZ1bmN0aW9uIFhiKCl7cmV0dXJuIG51bGwhPT1HYiYmR2IuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfWZ1bmN0aW9uIEpiKHQsZSl7Zm9yKHZhciBuPXN3KGUpLHI9MCxpPXQuZWxlbWVudHM7cjxpLmxlbmd0aDtyKyspIWZ1bmN0aW9uKGUpe24uc29tZShmdW5jdGlvbih0KXtyZXR1cm4ga20odCxlKX0pfHxuLnB1c2goZSl9KGlbcl0pO3JldHVybnthcnJheVZhbHVlOnt2YWx1ZXM6bn19fXZhciAkYixaYj0oWGkodHcsJGI9U24pLHR3KTtmdW5jdGlvbiB0dyh0KXt2YXIgZT10aGlzO3JldHVybihlPSRiLmNhbGwodGhpcyl8fHRoaXMpLmVsZW1lbnRzPXQsZX1mdW5jdGlvbiBldyh0LGUpe2Zvcih2YXIgbj1zdyhlKSxyPTAsaT10LmVsZW1lbnRzO3I8aS5sZW5ndGg7cisrKSFmdW5jdGlvbihlKXtuPW4uZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiFrbSh0LGUpfSl9KGlbcl0pO3JldHVybnthcnJheVZhbHVlOnt2YWx1ZXM6bn19fXZhciBudyxydz0oWGkoaXcsbnc9U24pLGl3KTtmdW5jdGlvbiBpdyh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49bncuY2FsbCh0aGlzKXx8dGhpcykuUj10LG4uQT1lLG59ZnVuY3Rpb24gb3codCl7cmV0dXJuIGJtKHQuaW50ZWdlclZhbHVlfHx0LmRvdWJsZVZhbHVlKX1mdW5jdGlvbiBzdyh0KXtyZXR1cm4gTW0odCkmJnQuYXJyYXlWYWx1ZS52YWx1ZXM/dC5hcnJheVZhbHVlLnZhbHVlcy5zbGljZSgpOltdfWZ1bmN0aW9uIGF3KHQsZSl7dGhpcy52ZXJzaW9uPXQsdGhpcy50cmFuc2Zvcm1SZXN1bHRzPWV9dmFyIHV3PWZ1bmN0aW9uKHQsZSl7dGhpcy5maWVsZD10LHRoaXMudHJhbnNmb3JtPWV9LGN3PShody5ub25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBod30saHcuZXhpc3RzPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgaHcodm9pZCAwLHQpfSxody51cGRhdGVUaW1lPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgaHcodCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShody5wcm90b3R5cGUsImlzTm9uZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB2b2lkIDA9PT10aGlzLnVwZGF0ZVRpbWUmJnZvaWQgMD09PXRoaXMuZXhpc3RzfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGh3LnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmV4aXN0cz09PXQuZXhpc3RzJiYodGhpcy51cGRhdGVUaW1lPyEhdC51cGRhdGVUaW1lJiZ0aGlzLnVwZGF0ZVRpbWUuaXNFcXVhbCh0LnVwZGF0ZVRpbWUpOiF0LnVwZGF0ZVRpbWUpfSxodyk7ZnVuY3Rpb24gaHcodCxlKXt0aGlzLnVwZGF0ZVRpbWU9dCx0aGlzLmV4aXN0cz1lfWZ1bmN0aW9uIGx3KHQsZSl7cmV0dXJuIHZvaWQgMCE9PXQudXBkYXRlVGltZT9lLmlzRm91bmREb2N1bWVudCgpJiZlLnZlcnNpb24uaXNFcXVhbCh0LnVwZGF0ZVRpbWUpOnZvaWQgMD09PXQuZXhpc3RzfHx0LmV4aXN0cz09PWUuaXNGb3VuZERvY3VtZW50KCl9R2E9ZnVuY3Rpb24oKXt9O2Z1bmN0aW9uIGZ3KHQsZSxuKXt2YXIgcixpLG8sczt0IGluc3RhbmNlb2YgeXc/KGk9ZSxvPW4sbHcoKHI9dCkucHJlY29uZGl0aW9uLGkpJiYocz1yLnZhbHVlLmNsb25lKCksbz1UdyhyLmZpZWxkVHJhbnNmb3JtcyxvLGkpLHMuc2V0QWxsKG8pLGkuY29udmVydFRvRm91bmREb2N1bWVudChkdyhpKSxzKS5zZXRIYXNMb2NhbE11dGF0aW9ucygpKSk6dCBpbnN0YW5jZW9mIG13PyhvPWUsaT1uLGx3KChzPXQpLnByZWNvbmRpdGlvbixvKSYmKG49VHcocy5maWVsZFRyYW5zZm9ybXMsaSxvKSwoaT1vLmRhdGEpLnNldEFsbChfdyhzKSksaS5zZXRBbGwobiksby5jb252ZXJ0VG9Gb3VuZERvY3VtZW50KGR3KG8pLGkpLnNldEhhc0xvY2FsTXV0YXRpb25zKCkpKTooZT1lLGx3KHQucHJlY29uZGl0aW9uLGUpJiZlLmNvbnZlcnRUb05vRG9jdW1lbnQoWnkubWluKCkpKX1mdW5jdGlvbiBwdyh0LGUpe3JldHVybiB0LnR5cGU9PT1lLnR5cGUmJiEhdC5rZXkuaXNFcXVhbChlLmtleSkmJiEhdC5wcmVjb25kaXRpb24uaXNFcXVhbChlLnByZWNvbmRpdGlvbikmJihuPXQuZmllbGRUcmFuc2Zvcm1zLHI9ZS5maWVsZFRyYW5zZm9ybXMsISEodm9pZCAwPT09biYmdm9pZCAwPT09cnx8biYmciYmWHkobixyLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGU9ZSwodD10KS5maWVsZC5pc0VxdWFsKGUuZmllbGQpJiYodD10LnRyYW5zZm9ybSxlPWUudHJhbnNmb3JtLHQgaW5zdGFuY2VvZiBRYiYmZSBpbnN0YW5jZW9mIFFifHx0IGluc3RhbmNlb2YgWmImJmUgaW5zdGFuY2VvZiBaYj9YeSh0LmVsZW1lbnRzLGUuZWxlbWVudHMsa20pOnQgaW5zdGFuY2VvZiBydyYmZSBpbnN0YW5jZW9mIHJ3P2ttKHQuQSxlLkEpOnQgaW5zdGFuY2VvZiB6YiYmZSBpbnN0YW5jZW9mIHpiKX0pKSkmJigwPT09dC50eXBlP3QudmFsdWUuaXNFcXVhbChlLnZhbHVlKToxIT09dC50eXBlfHx0LmRhdGEuaXNFcXVhbChlLmRhdGEpJiZ0LmZpZWxkTWFzay5pc0VxdWFsKGUuZmllbGRNYXNrKSk7dmFyIG4scn1mdW5jdGlvbiBkdyh0KXtyZXR1cm4gdC5pc0ZvdW5kRG9jdW1lbnQoKT90LnZlcnNpb246WnkubWluKCl9dmFyIHZ3LGd3LHl3PShYaSh3dyxndz1HYSksd3cpLG13PShYaShidyx2dz1HYSksYncpO2Z1bmN0aW9uIGJ3KHQsZSxuLHIsaSl7dm9pZCAwPT09aSYmKGk9W10pO3ZhciBvPXRoaXM7cmV0dXJuKG89dncuY2FsbCh0aGlzKXx8dGhpcykua2V5PXQsby5kYXRhPWUsby5maWVsZE1hc2s9bixvLnByZWNvbmRpdGlvbj1yLG8uZmllbGRUcmFuc2Zvcm1zPWksby50eXBlPTEsb31mdW5jdGlvbiB3dyh0LGUsbixyKXt2b2lkIDA9PT1yJiYocj1bXSk7dmFyIGk9dGhpcztyZXR1cm4oaT1ndy5jYWxsKHRoaXMpfHx0aGlzKS5rZXk9dCxpLnZhbHVlPWUsaS5wcmVjb25kaXRpb249bixpLmZpZWxkVHJhbnNmb3Jtcz1yLGkudHlwZT0wLGl9ZnVuY3Rpb24gX3cobil7dmFyIHI9bmV3IE1hcDtyZXR1cm4gbi5maWVsZE1hc2suZmllbGRzLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU7dC5pc0VtcHR5KCl8fChlPW4uZGF0YS5maWVsZCh0KSxyLnNldCh0LGUpKX0pLHJ9ZnVuY3Rpb24gSXcodCxlLG4pe3ZhciByPW5ldyBNYXA7R3kodC5sZW5ndGg9PT1uLmxlbmd0aCk7Zm9yKHZhciBpPTA7aTxuLmxlbmd0aDtpKyspe3ZhciBvPXRbaV0scz1vLnRyYW5zZm9ybSxhPWUuZGF0YS5maWVsZChvLmZpZWxkKTtyLnNldChvLmZpZWxkLChvPXMscz1hLGE9bltpXSxvIGluc3RhbmNlb2YgUWI/SmIobyxzKTpvIGluc3RhbmNlb2YgWmI/ZXcobyxzKTphKSl9cmV0dXJuIHJ9ZnVuY3Rpb24gVHcodCxlLG4pe2Zvcih2YXIgcixpPW5ldyBNYXAsbz0wLHM9dDtvPHMubGVuZ3RoO28rKyl7dmFyIGE9c1tvXSx1PWEudHJhbnNmb3JtLGM9bi5kYXRhLmZpZWxkKGEuZmllbGQpO2kuc2V0KGEuZmllbGQsKHI9YyxhPWUsYz12b2lkIDAsKHU9dSlpbnN0YW5jZW9mIHpiPyhjPXtmaWVsZHM6e19fdHlwZV9fOntzdHJpbmdWYWx1ZToic2VydmVyX3RpbWVzdGFtcCJ9LF9fbG9jYWxfd3JpdGVfdGltZV9fOnt0aW1lc3RhbXBWYWx1ZTp7c2Vjb25kczphLnNlY29uZHMsbmFub3M6YS5uYW5vc2Vjb25kc319fX0sciYmKGMuZmllbGRzLl9fcHJldmlvdXNfdmFsdWVfXz1yKSx7bWFwVmFsdWU6Y30pOnUgaW5zdGFuY2VvZiBRYj9KYih1LHIpOnUgaW5zdGFuY2VvZiBaYj9ldyh1LHIpOih1PVdiKGM9dSxyKSxyPW93KHUpK293KGMuQSksTG0odSkmJkxtKGMuQSk/QmIocik6VmIoYy5SLHIpKSkpfXJldHVybiBpfWZ1bmN0aW9uIEV3KHQpe3RoaXMuY291bnQ9dH12YXIgU3csQ3csTncsQXc9KFhpKFB3LE53PUdhKSxQdyksa3c9KFhpKFJ3LEN3PUdhKSxSdyk7ZnVuY3Rpb24gUncodCxlKXt2YXIgbj10aGlzO3JldHVybihuPUN3LmNhbGwodGhpcyl8fHRoaXMpLmtleT10LG4ucHJlY29uZGl0aW9uPWUsbi50eXBlPTMsbi5maWVsZFRyYW5zZm9ybXM9W10sbn1mdW5jdGlvbiBQdyh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49TncuY2FsbCh0aGlzKXx8dGhpcykua2V5PXQsbi5wcmVjb25kaXRpb249ZSxuLnR5cGU9MixuLmZpZWxkVHJhbnNmb3Jtcz1bXSxufWZ1bmN0aW9uIE93KHQpe3N3aXRjaCh0KXtjYXNlIE15Lk9LOnJldHVybiBIeSgpLDA7Y2FzZSBNeS5DQU5DRUxMRUQ6Y2FzZSBNeS5VTktOT1dOOmNhc2UgTXkuREVBRExJTkVfRVhDRUVERUQ6Y2FzZSBNeS5SRVNPVVJDRV9FWEhBVVNURUQ6Y2FzZSBNeS5JTlRFUk5BTDpjYXNlIE15LlVOQVZBSUxBQkxFOmNhc2UgTXkuVU5BVVRIRU5USUNBVEVEOnJldHVybjtjYXNlIE15LklOVkFMSURfQVJHVU1FTlQ6Y2FzZSBNeS5OT1RfRk9VTkQ6Y2FzZSBNeS5BTFJFQURZX0VYSVNUUzpjYXNlIE15LlBFUk1JU1NJT05fREVOSUVEOmNhc2UgTXkuRkFJTEVEX1BSRUNPTkRJVElPTjpjYXNlIE15LkFCT1JURUQ6Y2FzZSBNeS5PVVRfT0ZfUkFOR0U6Y2FzZSBNeS5VTklNUExFTUVOVEVEOmNhc2UgTXkuREFUQV9MT1NTOnJldHVybiAxO2RlZmF1bHQ6cmV0dXJuIEh5KCksMH19ZnVuY3Rpb24gRHcodCl7aWYodm9pZCAwPT09dClyZXR1cm4gQnkoIkdSUEMgZXJyb3IgaGFzIG5vIC5jb2RlIiksTXkuVU5LTk9XTjtzd2l0Y2godCl7Y2FzZSBTdy5PSzpyZXR1cm4gTXkuT0s7Y2FzZSBTdy5DQU5DRUxMRUQ6cmV0dXJuIE15LkNBTkNFTExFRDtjYXNlIFN3LlVOS05PV046cmV0dXJuIE15LlVOS05PV047Y2FzZSBTdy5ERUFETElORV9FWENFRURFRDpyZXR1cm4gTXkuREVBRExJTkVfRVhDRUVERUQ7Y2FzZSBTdy5SRVNPVVJDRV9FWEhBVVNURUQ6cmV0dXJuIE15LlJFU09VUkNFX0VYSEFVU1RFRDtjYXNlIFN3LklOVEVSTkFMOnJldHVybiBNeS5JTlRFUk5BTDtjYXNlIFN3LlVOQVZBSUxBQkxFOnJldHVybiBNeS5VTkFWQUlMQUJMRTtjYXNlIFN3LlVOQVVUSEVOVElDQVRFRDpyZXR1cm4gTXkuVU5BVVRIRU5USUNBVEVEO2Nhc2UgU3cuSU5WQUxJRF9BUkdVTUVOVDpyZXR1cm4gTXkuSU5WQUxJRF9BUkdVTUVOVDtjYXNlIFN3Lk5PVF9GT1VORDpyZXR1cm4gTXkuTk9UX0ZPVU5EO2Nhc2UgU3cuQUxSRUFEWV9FWElTVFM6cmV0dXJuIE15LkFMUkVBRFlfRVhJU1RTO2Nhc2UgU3cuUEVSTUlTU0lPTl9ERU5JRUQ6cmV0dXJuIE15LlBFUk1JU1NJT05fREVOSUVEO2Nhc2UgU3cuRkFJTEVEX1BSRUNPTkRJVElPTjpyZXR1cm4gTXkuRkFJTEVEX1BSRUNPTkRJVElPTjtjYXNlIFN3LkFCT1JURUQ6cmV0dXJuIE15LkFCT1JURUQ7Y2FzZSBTdy5PVVRfT0ZfUkFOR0U6cmV0dXJuIE15Lk9VVF9PRl9SQU5HRTtjYXNlIFN3LlVOSU1QTEVNRU5URUQ6cmV0dXJuIE15LlVOSU1QTEVNRU5URUQ7Y2FzZSBTdy5EQVRBX0xPU1M6cmV0dXJuIE15LkRBVEFfTE9TUztkZWZhdWx0OnJldHVybiBIeSgpfX0oU249U3c9U3d8fHt9KVtTbi5PSz0wXT0iT0siLFNuW1NuLkNBTkNFTExFRD0xXT0iQ0FOQ0VMTEVEIixTbltTbi5VTktOT1dOPTJdPSJVTktOT1dOIixTbltTbi5JTlZBTElEX0FSR1VNRU5UPTNdPSJJTlZBTElEX0FSR1VNRU5UIixTbltTbi5ERUFETElORV9FWENFRURFRD00XT0iREVBRExJTkVfRVhDRUVERUQiLFNuW1NuLk5PVF9GT1VORD01XT0iTk9UX0ZPVU5EIixTbltTbi5BTFJFQURZX0VYSVNUUz02XT0iQUxSRUFEWV9FWElTVFMiLFNuW1NuLlBFUk1JU1NJT05fREVOSUVEPTddPSJQRVJNSVNTSU9OX0RFTklFRCIsU25bU24uVU5BVVRIRU5USUNBVEVEPTE2XT0iVU5BVVRIRU5USUNBVEVEIixTbltTbi5SRVNPVVJDRV9FWEhBVVNURUQ9OF09IlJFU09VUkNFX0VYSEFVU1RFRCIsU25bU24uRkFJTEVEX1BSRUNPTkRJVElPTj05XT0iRkFJTEVEX1BSRUNPTkRJVElPTiIsU25bU24uQUJPUlRFRD0xMF09IkFCT1JURUQiLFNuW1NuLk9VVF9PRl9SQU5HRT0xMV09Ik9VVF9PRl9SQU5HRSIsU25bU24uVU5JTVBMRU1FTlRFRD0xMl09IlVOSU1QTEVNRU5URUQiLFNuW1NuLklOVEVSTkFMPTEzXT0iSU5URVJOQUwiLFNuW1NuLlVOQVZBSUxBQkxFPTE0XT0iVU5BVkFJTEFCTEUiLFNuW1NuLkRBVEFfTE9TUz0xNV09IkRBVEFfTE9TUyI7dmFyIHh3PShqdy5wcm90b3R5cGUuaW5zZXJ0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBqdyh0aGlzLmNvbXBhcmF0b3IsdGhpcy5yb290Lmluc2VydCh0LGUsdGhpcy5jb21wYXJhdG9yKS5jb3B5KG51bGwsbnVsbCxNdy5CTEFDSyxudWxsLG51bGwpKX0sancucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGp3KHRoaXMuY29tcGFyYXRvcix0aGlzLnJvb3QucmVtb3ZlKHQsdGhpcy5jb21wYXJhdG9yKS5jb3B5KG51bGwsbnVsbCxNdy5CTEFDSyxudWxsLG51bGwpKX0sancucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy5yb290OyFlLmlzRW1wdHkoKTspe3ZhciBuPXRoaXMuY29tcGFyYXRvcih0LGUua2V5KTtpZigwPT09bilyZXR1cm4gZS52YWx1ZTtuPDA/ZT1lLmxlZnQ6MDxuJiYoZT1lLnJpZ2h0KX1yZXR1cm4gbnVsbH0sancucHJvdG90eXBlLmluZGV4T2Y9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPTAsbj10aGlzLnJvb3Q7IW4uaXNFbXB0eSgpOyl7dmFyIHI9dGhpcy5jb21wYXJhdG9yKHQsbi5rZXkpO2lmKDA9PT1yKXJldHVybiBlK24ubGVmdC5zaXplO249cjwwP24ubGVmdDooZSs9bi5sZWZ0LnNpemUrMSxuLnJpZ2h0KX1yZXR1cm4tMX0sancucHJvdG90eXBlLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yb290LmlzRW1wdHkoKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGp3LnByb3RvdHlwZSwic2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnJvb3Quc2l6ZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxqdy5wcm90b3R5cGUubWluS2V5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucm9vdC5taW5LZXkoKX0sancucHJvdG90eXBlLm1heEtleT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJvb3QubWF4S2V5KCl9LGp3LnByb3RvdHlwZS5pbm9yZGVyVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnJvb3QuaW5vcmRlclRyYXZlcnNhbCh0KX0sancucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24obil7dGhpcy5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG4odCxlKSwhMX0pfSxqdy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gdGhpcy5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG4ucHVzaCh0KyI6IitlKSwhMX0pLCJ7IituLmpvaW4oIiwgIikrIn0ifSxqdy5wcm90b3R5cGUucmV2ZXJzZVRyYXZlcnNhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5yb290LnJldmVyc2VUcmF2ZXJzYWwodCl9LGp3LnByb3RvdHlwZS5nZXRJdGVyYXRvcj1mdW5jdGlvbigpe3JldHVybiBuZXcgTHcodGhpcy5yb290LG51bGwsdGhpcy5jb21wYXJhdG9yLCExKX0sancucHJvdG90eXBlLmdldEl0ZXJhdG9yRnJvbT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IEx3KHRoaXMucm9vdCx0LHRoaXMuY29tcGFyYXRvciwhMSl9LGp3LnByb3RvdHlwZS5nZXRSZXZlcnNlSXRlcmF0b3I9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEx3KHRoaXMucm9vdCxudWxsLHRoaXMuY29tcGFyYXRvciwhMCl9LGp3LnByb3RvdHlwZS5nZXRSZXZlcnNlSXRlcmF0b3JGcm9tPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgTHcodGhpcy5yb290LHQsdGhpcy5jb21wYXJhdG9yLCEwKX0sancpLEx3PShVdy5wcm90b3R5cGUuZ2V0TmV4dD1mdW5jdGlvbigpe3ZhciB0PXRoaXMubm9kZVN0YWNrLnBvcCgpLGU9e2tleTp0LmtleSx2YWx1ZTp0LnZhbHVlfTtpZih0aGlzLmlzUmV2ZXJzZSlmb3IodD10LmxlZnQ7IXQuaXNFbXB0eSgpOyl0aGlzLm5vZGVTdGFjay5wdXNoKHQpLHQ9dC5yaWdodDtlbHNlIGZvcih0PXQucmlnaHQ7IXQuaXNFbXB0eSgpOyl0aGlzLm5vZGVTdGFjay5wdXNoKHQpLHQ9dC5sZWZ0O3JldHVybiBlfSxVdy5wcm90b3R5cGUuaGFzTmV4dD1mdW5jdGlvbigpe3JldHVybiAwPHRoaXMubm9kZVN0YWNrLmxlbmd0aH0sVXcucHJvdG90eXBlLnBlZWs9ZnVuY3Rpb24oKXtpZigwPT09dGhpcy5ub2RlU3RhY2subGVuZ3RoKXJldHVybiBudWxsO3ZhciB0PXRoaXMubm9kZVN0YWNrW3RoaXMubm9kZVN0YWNrLmxlbmd0aC0xXTtyZXR1cm57a2V5OnQua2V5LHZhbHVlOnQudmFsdWV9fSxVdyksTXc9KEZ3LnByb3RvdHlwZS5jb3B5PWZ1bmN0aW9uKHQsZSxuLHIsaSl7cmV0dXJuIG5ldyBGdyhudWxsIT10P3Q6dGhpcy5rZXksbnVsbCE9ZT9lOnRoaXMudmFsdWUsbnVsbCE9bj9uOnRoaXMuY29sb3IsbnVsbCE9cj9yOnRoaXMubGVmdCxudWxsIT1pP2k6dGhpcy5yaWdodCl9LEZ3LnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuITF9LEZ3LnByb3RvdHlwZS5pbm9yZGVyVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmxlZnQuaW5vcmRlclRyYXZlcnNhbCh0KXx8dCh0aGlzLmtleSx0aGlzLnZhbHVlKXx8dGhpcy5yaWdodC5pbm9yZGVyVHJhdmVyc2FsKHQpfSxGdy5wcm90b3R5cGUucmV2ZXJzZVRyYXZlcnNhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5yaWdodC5yZXZlcnNlVHJhdmVyc2FsKHQpfHx0KHRoaXMua2V5LHRoaXMudmFsdWUpfHx0aGlzLmxlZnQucmV2ZXJzZVRyYXZlcnNhbCh0KX0sRncucHJvdG90eXBlLm1pbj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxlZnQuaXNFbXB0eSgpP3RoaXM6dGhpcy5sZWZ0Lm1pbigpfSxGdy5wcm90b3R5cGUubWluS2V5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWluKCkua2V5fSxGdy5wcm90b3R5cGUubWF4S2V5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmlnaHQuaXNFbXB0eSgpP3RoaXMua2V5OnRoaXMucmlnaHQubWF4S2V5KCl9LEZ3LnByb3RvdHlwZS5pbnNlcnQ9ZnVuY3Rpb24odCxlLG4pe3ZhciByPXRoaXMsaT1uKHQsci5rZXkpO3JldHVybihyPWk8MD9yLmNvcHkobnVsbCxudWxsLG51bGwsci5sZWZ0Lmluc2VydCh0LGUsbiksbnVsbCk6MD09PWk/ci5jb3B5KG51bGwsZSxudWxsLG51bGwsbnVsbCk6ci5jb3B5KG51bGwsbnVsbCxudWxsLG51bGwsci5yaWdodC5pbnNlcnQodCxlLG4pKSkuZml4VXAoKX0sRncucHJvdG90eXBlLnJlbW92ZU1pbj1mdW5jdGlvbigpe2lmKHRoaXMubGVmdC5pc0VtcHR5KCkpcmV0dXJuIEZ3LkVNUFRZO3ZhciB0PXRoaXM7cmV0dXJuKHQ9KHQ9IXQubGVmdC5pc1JlZCgpJiYhdC5sZWZ0LmxlZnQuaXNSZWQoKT90Lm1vdmVSZWRMZWZ0KCk6dCkuY29weShudWxsLG51bGwsbnVsbCx0LmxlZnQucmVtb3ZlTWluKCksbnVsbCkpLmZpeFVwKCl9LEZ3LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24odCxlKXt2YXIgbixyPXRoaXM7aWYoZSh0LHIua2V5KTwwKXI9KHI9IShyLmxlZnQuaXNFbXB0eSgpfHxyLmxlZnQuaXNSZWQoKXx8ci5sZWZ0LmxlZnQuaXNSZWQoKSk/ci5tb3ZlUmVkTGVmdCgpOnIpLmNvcHkobnVsbCxudWxsLG51bGwsci5sZWZ0LnJlbW92ZSh0LGUpLG51bGwpO2Vsc2V7aWYoMD09PWUodCwocj0hKChyPXIubGVmdC5pc1JlZCgpP3Iucm90YXRlUmlnaHQoKTpyKS5yaWdodC5pc0VtcHR5KCl8fHIucmlnaHQuaXNSZWQoKXx8ci5yaWdodC5sZWZ0LmlzUmVkKCkpP3IubW92ZVJlZFJpZ2h0KCk6cikua2V5KSl7aWYoci5yaWdodC5pc0VtcHR5KCkpcmV0dXJuIEZ3LkVNUFRZO249ci5yaWdodC5taW4oKSxyPXIuY29weShuLmtleSxuLnZhbHVlLG51bGwsbnVsbCxyLnJpZ2h0LnJlbW92ZU1pbigpKX1yPXIuY29weShudWxsLG51bGwsbnVsbCxudWxsLHIucmlnaHQucmVtb3ZlKHQsZSkpfXJldHVybiByLmZpeFVwKCl9LEZ3LnByb3RvdHlwZS5pc1JlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbG9yfSxGdy5wcm90b3R5cGUuZml4VXA9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3JldHVybiB0PSh0PSh0PXQucmlnaHQuaXNSZWQoKSYmIXQubGVmdC5pc1JlZCgpP3Qucm90YXRlTGVmdCgpOnQpLmxlZnQuaXNSZWQoKSYmdC5sZWZ0LmxlZnQuaXNSZWQoKT90LnJvdGF0ZVJpZ2h0KCk6dCkubGVmdC5pc1JlZCgpJiZ0LnJpZ2h0LmlzUmVkKCk/dC5jb2xvckZsaXAoKTp0fSxGdy5wcm90b3R5cGUubW92ZVJlZExlZnQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmNvbG9yRmxpcCgpO3JldHVybiB0PXQucmlnaHQubGVmdC5pc1JlZCgpPyh0PSh0PXQuY29weShudWxsLG51bGwsbnVsbCxudWxsLHQucmlnaHQucm90YXRlUmlnaHQoKSkpLnJvdGF0ZUxlZnQoKSkuY29sb3JGbGlwKCk6dH0sRncucHJvdG90eXBlLm1vdmVSZWRSaWdodD1mdW5jdGlvbigpe3ZhciB0PXRoaXMuY29sb3JGbGlwKCk7cmV0dXJuIHQ9dC5sZWZ0LmxlZnQuaXNSZWQoKT8odD10LnJvdGF0ZVJpZ2h0KCkpLmNvbG9yRmxpcCgpOnR9LEZ3LnByb3RvdHlwZS5yb3RhdGVMZWZ0PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5jb3B5KG51bGwsbnVsbCxGdy5SRUQsbnVsbCx0aGlzLnJpZ2h0LmxlZnQpO3JldHVybiB0aGlzLnJpZ2h0LmNvcHkobnVsbCxudWxsLHRoaXMuY29sb3IsdCxudWxsKX0sRncucHJvdG90eXBlLnJvdGF0ZVJpZ2h0PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5jb3B5KG51bGwsbnVsbCxGdy5SRUQsdGhpcy5sZWZ0LnJpZ2h0LG51bGwpO3JldHVybiB0aGlzLmxlZnQuY29weShudWxsLG51bGwsdGhpcy5jb2xvcixudWxsLHQpfSxGdy5wcm90b3R5cGUuY29sb3JGbGlwPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5sZWZ0LmNvcHkobnVsbCxudWxsLCF0aGlzLmxlZnQuY29sb3IsbnVsbCxudWxsKSxlPXRoaXMucmlnaHQuY29weShudWxsLG51bGwsIXRoaXMucmlnaHQuY29sb3IsbnVsbCxudWxsKTtyZXR1cm4gdGhpcy5jb3B5KG51bGwsbnVsbCwhdGhpcy5jb2xvcix0LGUpfSxGdy5wcm90b3R5cGUuY2hlY2tNYXhEZXB0aD1mdW5jdGlvbigpe3ZhciB0PXRoaXMuY2hlY2soKTtyZXR1cm4gTWF0aC5wb3coMix0KTw9dGhpcy5zaXplKzF9LEZ3LnByb3RvdHlwZS5jaGVjaz1mdW5jdGlvbigpe2lmKHRoaXMuaXNSZWQoKSYmdGhpcy5sZWZ0LmlzUmVkKCkpdGhyb3cgSHkoKTtpZih0aGlzLnJpZ2h0LmlzUmVkKCkpdGhyb3cgSHkoKTt2YXIgdD10aGlzLmxlZnQuY2hlY2soKTtpZih0IT09dGhpcy5yaWdodC5jaGVjaygpKXRocm93IEh5KCk7cmV0dXJuIHQrKHRoaXMuaXNSZWQoKT8wOjEpfSxGdyk7ZnVuY3Rpb24gRncodCxlLG4scixpKXt0aGlzLmtleT10LHRoaXMudmFsdWU9ZSx0aGlzLmNvbG9yPW51bGwhPW4/bjpGdy5SRUQsdGhpcy5sZWZ0PW51bGwhPXI/cjpGdy5FTVBUWSx0aGlzLnJpZ2h0PW51bGwhPWk/aTpGdy5FTVBUWSx0aGlzLnNpemU9dGhpcy5sZWZ0LnNpemUrMSt0aGlzLnJpZ2h0LnNpemV9ZnVuY3Rpb24gVXcodCxlLG4scil7dGhpcy5pc1JldmVyc2U9cix0aGlzLm5vZGVTdGFjaz1bXTtmb3IodmFyIGk9MTshdC5pc0VtcHR5KCk7KWlmKGk9ZT9uKHQua2V5LGUpOjEsciYmKGkqPS0xKSxpPDApdD10aGlzLmlzUmV2ZXJzZT90LmxlZnQ6dC5yaWdodDtlbHNle2lmKDA9PT1pKXt0aGlzLm5vZGVTdGFjay5wdXNoKHQpO2JyZWFrfXRoaXMubm9kZVN0YWNrLnB1c2godCksdD10aGlzLmlzUmV2ZXJzZT90LnJpZ2h0OnQubGVmdH19ZnVuY3Rpb24gancodCxlKXt0aGlzLmNvbXBhcmF0b3I9dCx0aGlzLnJvb3Q9ZXx8TXcuRU1QVFl9ZnVuY3Rpb24gcXcoKXt0aGlzLnNpemU9MH1Ndy5FTVBUWT1udWxsLE13LlJFRD0hMCxNdy5CTEFDSz0hMSxNdy5FTVBUWT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHF3LnByb3RvdHlwZSwia2V5Iix7Z2V0OmZ1bmN0aW9uKCl7dGhyb3cgSHkoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkocXcucHJvdG90eXBlLCJ2YWx1ZSIse2dldDpmdW5jdGlvbigpe3Rocm93IEh5KCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHF3LnByb3RvdHlwZSwiY29sb3IiLHtnZXQ6ZnVuY3Rpb24oKXt0aHJvdyBIeSgpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShxdy5wcm90b3R5cGUsImxlZnQiLHtnZXQ6ZnVuY3Rpb24oKXt0aHJvdyBIeSgpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShxdy5wcm90b3R5cGUsInJpZ2h0Iix7Z2V0OmZ1bmN0aW9uKCl7dGhyb3cgSHkoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxxdy5wcm90b3R5cGUuY29weT1mdW5jdGlvbih0LGUsbixyLGkpe3JldHVybiB0aGlzfSxxdy5wcm90b3R5cGUuaW5zZXJ0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbmV3IE13KHQsZSl9LHF3LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpc30scXcucHJvdG90eXBlLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4hMH0scXcucHJvdG90eXBlLmlub3JkZXJUcmF2ZXJzYWw9ZnVuY3Rpb24odCl7cmV0dXJuITF9LHF3LnByb3RvdHlwZS5yZXZlcnNlVHJhdmVyc2FsPWZ1bmN0aW9uKHQpe3JldHVybiExfSxxdy5wcm90b3R5cGUubWluS2V5PWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LHF3LnByb3RvdHlwZS5tYXhLZXk9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0scXcucHJvdG90eXBlLmlzUmVkPWZ1bmN0aW9uKCl7cmV0dXJuITF9LHF3LnByb3RvdHlwZS5jaGVja01heERlcHRoPWZ1bmN0aW9uKCl7cmV0dXJuITB9LHF3LnByb3RvdHlwZS5jaGVjaz1mdW5jdGlvbigpe3JldHVybiAwfSxuZXcgcXcpO3ZhciBWdz0oSHcucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9PXRoaXMuZGF0YS5nZXQodCl9LEh3LnByb3RvdHlwZS5maXJzdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmRhdGEubWluS2V5KCl9LEh3LnByb3RvdHlwZS5sYXN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZGF0YS5tYXhLZXkoKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KEh3LnByb3RvdHlwZSwic2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmRhdGEuc2l6ZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxIdy5wcm90b3R5cGUuaW5kZXhPZj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5kYXRhLmluZGV4T2YodCl9LEh3LnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKG4pe3RoaXMuZGF0YS5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG4odCksITF9KX0sSHcucHJvdG90eXBlLmZvckVhY2hJblJhbmdlPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXRoaXMuZGF0YS5nZXRJdGVyYXRvckZyb20odFswXSk7bi5oYXNOZXh0KCk7KXt2YXIgcj1uLmdldE5leHQoKTtpZigwPD10aGlzLmNvbXBhcmF0b3Ioci5rZXksdFsxXSkpcmV0dXJuO2Uoci5rZXkpfX0sSHcucHJvdG90eXBlLmZvckVhY2hXaGlsZT1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj12b2lkIDAhPT1lP3RoaXMuZGF0YS5nZXRJdGVyYXRvckZyb20oZSk6dGhpcy5kYXRhLmdldEl0ZXJhdG9yKCk7bi5oYXNOZXh0KCk7KWlmKCF0KG4uZ2V0TmV4dCgpLmtleSkpcmV0dXJufSxIdy5wcm90b3R5cGUuZmlyc3RBZnRlck9yRXF1YWw9ZnVuY3Rpb24odCl7dD10aGlzLmRhdGEuZ2V0SXRlcmF0b3JGcm9tKHQpO3JldHVybiB0Lmhhc05leHQoKT90LmdldE5leHQoKS5rZXk6bnVsbH0sSHcucHJvdG90eXBlLmdldEl0ZXJhdG9yPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBCdyh0aGlzLmRhdGEuZ2V0SXRlcmF0b3IoKSl9LEh3LnByb3RvdHlwZS5nZXRJdGVyYXRvckZyb209ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBCdyh0aGlzLmRhdGEuZ2V0SXRlcmF0b3JGcm9tKHQpKX0sSHcucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jb3B5KHRoaXMuZGF0YS5yZW1vdmUodCkuaW5zZXJ0KHQsITApKX0sSHcucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5oYXModCk/dGhpcy5jb3B5KHRoaXMuZGF0YS5yZW1vdmUodCkpOnRoaXN9LEh3LnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZGF0YS5pc0VtcHR5KCl9LEh3LnByb3RvdHlwZS51bmlvbldpdGg9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gZS5zaXplPHQuc2l6ZSYmKGU9dCx0PXRoaXMpLHQuZm9yRWFjaChmdW5jdGlvbih0KXtlPWUuYWRkKHQpfSksZX0sSHcucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7aWYoISh0IGluc3RhbmNlb2YgSHcpKXJldHVybiExO2lmKHRoaXMuc2l6ZSE9PXQuc2l6ZSlyZXR1cm4hMTtmb3IodmFyIGU9dGhpcy5kYXRhLmdldEl0ZXJhdG9yKCksbj10LmRhdGEuZ2V0SXRlcmF0b3IoKTtlLmhhc05leHQoKTspe3ZhciByPWUuZ2V0TmV4dCgpLmtleSxpPW4uZ2V0TmV4dCgpLmtleTtpZigwIT09dGhpcy5jb21wYXJhdG9yKHIsaSkpcmV0dXJuITF9cmV0dXJuITB9LEh3LnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIHRoaXMuZm9yRWFjaChmdW5jdGlvbih0KXtlLnB1c2godCl9KSxlfSxIdy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiBlLnB1c2godCl9KSwiU29ydGVkU2V0KCIrZS50b1N0cmluZygpKyIpIn0sSHcucHJvdG90eXBlLmNvcHk9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IEh3KHRoaXMuY29tcGFyYXRvcik7cmV0dXJuIGUuZGF0YT10LGV9LEh3KSxCdz0oV3cucHJvdG90eXBlLmdldE5leHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pdGVyLmdldE5leHQoKS5rZXl9LFd3LnByb3RvdHlwZS5oYXNOZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaXRlci5oYXNOZXh0KCl9LFd3KSxLdz1uZXcgeHcoQ20uY29tcGFyYXRvcik7ZnVuY3Rpb24gV3codCl7dGhpcy5pdGVyPXR9ZnVuY3Rpb24gSHcodCl7dGhpcy5jb21wYXJhdG9yPXQsdGhpcy5kYXRhPW5ldyB4dyh0aGlzLmNvbXBhcmF0b3IpfXZhciBHdz1uZXcgeHcoQ20uY29tcGFyYXRvcik7dmFyIHp3PW5ldyB4dyhDbS5jb21wYXJhdG9yKTt2YXIgUXc9bmV3IFZ3KENtLmNvbXBhcmF0b3IpO2Z1bmN0aW9uIFl3KCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2Zvcih2YXIgbj1RdyxyPTAsaT10O3I8aS5sZW5ndGg7cisrKXZhciBvPWlbcl0sbj1uLmFkZChvKTtyZXR1cm4gbn12YXIgWHc9bmV3IFZ3KFl5KTt2YXIgSnc9KGFfLmNyZWF0ZVN5bnRoZXNpemVkUmVtb3RlRXZlbnRGb3JDdXJyZW50Q2hhbmdlPWZ1bmN0aW9uKHQsZSl7dmFyIG49bmV3IE1hcDtyZXR1cm4gbi5zZXQodCwkdy5jcmVhdGVTeW50aGVzaXplZFRhcmdldENoYW5nZUZvckN1cnJlbnRDaGFuZ2UodCxlKSksbmV3IGFfKFp5Lm1pbigpLG4sWHcsS3csWXcoKSl9LGFfKSwkdz0oc18uY3JlYXRlU3ludGhlc2l6ZWRUYXJnZXRDaGFuZ2VGb3JDdXJyZW50Q2hhbmdlPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBzXyhsbS5FTVBUWV9CWVRFX1NUUklORyxlLFl3KCksWXcoKSxZdygpKX0sc18pLFp3PWZ1bmN0aW9uKHQsZSxuLHIpe3RoaXMudj10LHRoaXMucmVtb3ZlZFRhcmdldElkcz1lLHRoaXMua2V5PW4sdGhpcy5QPXJ9LHRfPWZ1bmN0aW9uKHQsZSl7dGhpcy50YXJnZXRJZD10LHRoaXMuVj1lfSxlXz1mdW5jdGlvbih0LGUsbixyKXt2b2lkIDA9PT1uJiYobj1sbS5FTVBUWV9CWVRFX1NUUklORyksdm9pZCAwPT09ciYmKHI9bnVsbCksdGhpcy5zdGF0ZT10LHRoaXMudGFyZ2V0SWRzPWUsdGhpcy5yZXN1bWVUb2tlbj1uLHRoaXMuY2F1c2U9cn0sbl89KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvXy5wcm90b3R5cGUsImN1cnJlbnQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvXy5wcm90b3R5cGUsInJlc3VtZVRva2VuIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQ30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkob18ucHJvdG90eXBlLCJrIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDAhPT10aGlzLlN9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KG9fLnByb3RvdHlwZSwiTyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLkZ9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksb18ucHJvdG90eXBlLiQ9ZnVuY3Rpb24odCl7MDx0LmFwcHJveGltYXRlQnl0ZVNpemUoKSYmKHRoaXMuRj0hMCx0aGlzLkM9dCl9LG9fLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7dmFyIG49WXcoKSxyPVl3KCksaT1ZdygpO3JldHVybiB0aGlzLkQuZm9yRWFjaChmdW5jdGlvbih0LGUpe3N3aXRjaChlKXtjYXNlIDA6bj1uLmFkZCh0KTticmVhaztjYXNlIDI6cj1yLmFkZCh0KTticmVhaztjYXNlIDE6aT1pLmFkZCh0KTticmVhaztkZWZhdWx0Okh5KCl9fSksbmV3ICR3KHRoaXMuQyx0aGlzLk4sbixyLGkpfSxvXy5wcm90b3R5cGUuTD1mdW5jdGlvbigpe3RoaXMuRj0hMSx0aGlzLkQ9Y18oKX0sb18ucHJvdG90eXBlLkI9ZnVuY3Rpb24odCxlKXt0aGlzLkY9ITAsdGhpcy5EPXRoaXMuRC5pbnNlcnQodCxlKX0sb18ucHJvdG90eXBlLnE9ZnVuY3Rpb24odCl7dGhpcy5GPSEwLHRoaXMuRD10aGlzLkQucmVtb3ZlKHQpfSxvXy5wcm90b3R5cGUuVT1mdW5jdGlvbigpe3RoaXMuUys9MX0sb18ucHJvdG90eXBlLks9ZnVuY3Rpb24oKXstLXRoaXMuU30sb18ucHJvdG90eXBlLmo9ZnVuY3Rpb24oKXt0aGlzLkY9ITAsdGhpcy5OPSEwfSxvXykscl89KGlfLnByb3RvdHlwZS5YPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wLG49dC52O2U8bi5sZW5ndGg7ZSsrKXt2YXIgcj1uW2VdO3QuUCYmdC5QLmlzRm91bmREb2N1bWVudCgpP3RoaXMuWihyLHQuUCk6dGhpcy50dChyLHQua2V5LHQuUCl9Zm9yKHZhciBpPTAsbz10LnJlbW92ZWRUYXJnZXRJZHM7aTxvLmxlbmd0aDtpKyspcj1vW2ldLHRoaXMudHQocix0LmtleSx0LlApfSxpXy5wcm90b3R5cGUuZXQ9ZnVuY3Rpb24obil7dmFyIHI9dGhpczt0aGlzLmZvckVhY2hUYXJnZXQobixmdW5jdGlvbih0KXt2YXIgZT1yLm50KHQpO3N3aXRjaChuLnN0YXRlKXtjYXNlIDA6ci5zdCh0KSYmZS4kKG4ucmVzdW1lVG9rZW4pO2JyZWFrO2Nhc2UgMTplLksoKSxlLmt8fGUuTCgpLGUuJChuLnJlc3VtZVRva2VuKTticmVhaztjYXNlIDI6ZS5LKCksZS5rfHxyLnJlbW92ZVRhcmdldCh0KTticmVhaztjYXNlIDM6ci5zdCh0KSYmKGUuaigpLGUuJChuLnJlc3VtZVRva2VuKSk7YnJlYWs7Y2FzZSA0OnIuc3QodCkmJihyLml0KHQpLGUuJChuLnJlc3VtZVRva2VuKSk7YnJlYWs7ZGVmYXVsdDpIeSgpfX0pfSxpXy5wcm90b3R5cGUuZm9yRWFjaFRhcmdldD1mdW5jdGlvbih0LG4pe3ZhciByPXRoaXM7MDx0LnRhcmdldElkcy5sZW5ndGg/dC50YXJnZXRJZHMuZm9yRWFjaChuKTp0aGlzLkcuZm9yRWFjaChmdW5jdGlvbih0LGUpe3Iuc3QoZSkmJm4oZSl9KX0saV8ucHJvdG90eXBlLnJ0PWZ1bmN0aW9uKHQpe3ZhciBlPXQudGFyZ2V0SWQsbj10LlYuY291bnQsdD10aGlzLm90KGUpO3QmJihRbSh0PXQudGFyZ2V0KT8wPT09bj8odD1uZXcgQ20odC5wYXRoKSx0aGlzLnR0KGUsdCxCbS5uZXdOb0RvY3VtZW50KHQsWnkubWluKCkpKSk6R3koMT09PW4pOnRoaXMuY3QoZSkhPT1uJiYodGhpcy5pdChlKSx0aGlzLlk9dGhpcy5ZLmFkZChlKSkpfSxpXy5wcm90b3R5cGUudXQ9ZnVuY3Rpb24ocil7dmFyIGk9dGhpcyxvPW5ldyBNYXA7dGhpcy5HLmZvckVhY2goZnVuY3Rpb24odCxlKXt2YXIgbj1pLm90KGUpO24mJih0LmN1cnJlbnQmJlFtKG4udGFyZ2V0KSYmKG49bmV3IENtKG4udGFyZ2V0LnBhdGgpLG51bGwhPT1pLkguZ2V0KG4pfHxpLmF0KGUsbil8fGkudHQoZSxuLEJtLm5ld05vRG9jdW1lbnQobixyKSkpLHQuTyYmKG8uc2V0KGUsdC5NKCkpLHQuTCgpKSl9KTt2YXIgcz1ZdygpO3RoaXMuSi5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49ITA7ZS5mb3JFYWNoV2hpbGUoZnVuY3Rpb24odCl7dD1pLm90KHQpO3JldHVybiF0fHwyPT09dC5wdXJwb3NlfHwobj0hMSl9KSxuJiYocz1zLmFkZCh0KSl9KTt2YXIgdD1uZXcgSncocixvLHRoaXMuWSx0aGlzLkgscyk7cmV0dXJuIHRoaXMuSD1Ldyx0aGlzLko9dV8oKSx0aGlzLlk9bmV3IFZ3KFl5KSx0fSxpXy5wcm90b3R5cGUuWj1mdW5jdGlvbih0LGUpe3ZhciBuO3RoaXMuc3QodCkmJihuPXRoaXMuYXQodCxlLmtleSk/MjowLHRoaXMubnQodCkuQihlLmtleSxuKSx0aGlzLkg9dGhpcy5ILmluc2VydChlLmtleSxlKSx0aGlzLko9dGhpcy5KLmluc2VydChlLmtleSx0aGlzLmh0KGUua2V5KS5hZGQodCkpKX0saV8ucHJvdG90eXBlLnR0PWZ1bmN0aW9uKHQsZSxuKXt2YXIgcjt0aGlzLnN0KHQpJiYocj10aGlzLm50KHQpLHRoaXMuYXQodCxlKT9yLkIoZSwxKTpyLnEoZSksdGhpcy5KPXRoaXMuSi5pbnNlcnQoZSx0aGlzLmh0KGUpLmRlbGV0ZSh0KSksbiYmKHRoaXMuSD10aGlzLkguaW5zZXJ0KGUsbikpKX0saV8ucHJvdG90eXBlLnJlbW92ZVRhcmdldD1mdW5jdGlvbih0KXt0aGlzLkcuZGVsZXRlKHQpfSxpXy5wcm90b3R5cGUuY3Q9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5udCh0KS5NKCk7cmV0dXJuIHRoaXMuVy5nZXRSZW1vdGVLZXlzRm9yVGFyZ2V0KHQpLnNpemUrZS5hZGRlZERvY3VtZW50cy5zaXplLWUucmVtb3ZlZERvY3VtZW50cy5zaXplfSxpXy5wcm90b3R5cGUuVT1mdW5jdGlvbih0KXt0aGlzLm50KHQpLlUoKX0saV8ucHJvdG90eXBlLm50PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuRy5nZXQodCk7cmV0dXJuIGV8fChlPW5ldyBuXyx0aGlzLkcuc2V0KHQsZSkpLGV9LGlfLnByb3RvdHlwZS5odD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLkouZ2V0KHQpO3JldHVybiBlfHwoZT1uZXcgVncoWXkpLHRoaXMuSj10aGlzLkouaW5zZXJ0KHQsZSkpLGV9LGlfLnByb3RvdHlwZS5zdD1mdW5jdGlvbih0KXt2YXIgZT1udWxsIT09dGhpcy5vdCh0KTtyZXR1cm4gZXx8VnkoIldhdGNoQ2hhbmdlQWdncmVnYXRvciIsIkRldGVjdGVkIGluYWN0aXZlIHRhcmdldCIsdCksZX0saV8ucHJvdG90eXBlLm90PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuRy5nZXQodCk7cmV0dXJuIGUmJmUuaz9udWxsOnRoaXMuVy5sdCh0KX0saV8ucHJvdG90eXBlLml0PWZ1bmN0aW9uKGUpe3ZhciBuPXRoaXM7dGhpcy5HLnNldChlLG5ldyBuXyksdGhpcy5XLmdldFJlbW90ZUtleXNGb3JUYXJnZXQoZSkuZm9yRWFjaChmdW5jdGlvbih0KXtuLnR0KGUsdCxudWxsKX0pfSxpXy5wcm90b3R5cGUuYXQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5XLmdldFJlbW90ZUtleXNGb3JUYXJnZXQodCkuaGFzKGUpfSxpXyk7ZnVuY3Rpb24gaV8odCl7dGhpcy5XPXQsdGhpcy5HPW5ldyBNYXAsdGhpcy5IPUt3LHRoaXMuSj11XygpLHRoaXMuWT1uZXcgVncoWXkpfWZ1bmN0aW9uIG9fKCl7dGhpcy5TPTAsdGhpcy5EPWNfKCksdGhpcy5DPWxtLkVNUFRZX0JZVEVfU1RSSU5HLHRoaXMuTj0hMSx0aGlzLkY9ITB9ZnVuY3Rpb24gc18odCxlLG4scixpKXt0aGlzLnJlc3VtZVRva2VuPXQsdGhpcy5jdXJyZW50PWUsdGhpcy5hZGRlZERvY3VtZW50cz1uLHRoaXMubW9kaWZpZWREb2N1bWVudHM9cix0aGlzLnJlbW92ZWREb2N1bWVudHM9aX1mdW5jdGlvbiBhXyh0LGUsbixyLGkpe3RoaXMuc25hcHNob3RWZXJzaW9uPXQsdGhpcy50YXJnZXRDaGFuZ2VzPWUsdGhpcy50YXJnZXRNaXNtYXRjaGVzPW4sdGhpcy5kb2N1bWVudFVwZGF0ZXM9cix0aGlzLnJlc29sdmVkTGltYm9Eb2N1bWVudHM9aX1mdW5jdGlvbiB1Xygpe3JldHVybiBuZXcgeHcoQ20uY29tcGFyYXRvcil9ZnVuY3Rpb24gY18oKXtyZXR1cm4gbmV3IHh3KENtLmNvbXBhcmF0b3IpfXZhciBoXz17YXNjOiJBU0NFTkRJTkciLGRlc2M6IkRFU0NFTkRJTkcifSxsXz17IjwiOiJMRVNTX1RIQU4iLCI8PSI6IkxFU1NfVEhBTl9PUl9FUVVBTCIsIj4iOiJHUkVBVEVSX1RIQU4iLCI+PSI6IkdSRUFURVJfVEhBTl9PUl9FUVVBTCIsIj09IjoiRVFVQUwiLCIhPSI6Ik5PVF9FUVVBTCIsImFycmF5LWNvbnRhaW5zIjoiQVJSQVlfQ09OVEFJTlMiLGluOiJJTiIsIm5vdC1pbiI6Ik5PVF9JTiIsImFycmF5LWNvbnRhaW5zLWFueSI6IkFSUkFZX0NPTlRBSU5TX0FOWSJ9LGZfPWZ1bmN0aW9uKHQsZSl7dGhpcy5kYXRhYmFzZUlkPXQsdGhpcy5JPWV9O2Z1bmN0aW9uIHBfKHQsZSl7cmV0dXJuIHQuST9uZXcgRGF0ZSgxZTMqZS5zZWNvbmRzKS50b0lTT1N0cmluZygpLnJlcGxhY2UoL1wuXGQqLywiIikucmVwbGFjZSgiWiIsIiIpKyIuIisoIjAwMDAwMDAwMCIrZS5uYW5vc2Vjb25kcykuc2xpY2UoLTkpKyJaIjp7c2Vjb25kczoiIitlLnNlY29uZHMsbmFub3M6ZS5uYW5vc2Vjb25kc319ZnVuY3Rpb24gZF8odCxlKXtyZXR1cm4gdC5JP2UudG9CYXNlNjQoKTplLnRvVWludDhBcnJheSgpfWZ1bmN0aW9uIHZfKHQpe3JldHVybiBHeSghIXQpLFp5LmZyb21UaW1lc3RhbXAoKHQ9bW0odCksbmV3ICR5KHQuc2Vjb25kcyx0Lm5hbm9zKSkpfWZ1bmN0aW9uIGdfKHQsZSl7cmV0dXJuIG5ldyBhbShbInByb2plY3RzIix0LnByb2plY3RJZCwiZGF0YWJhc2VzIix0LmRhdGFiYXNlXSkuY2hpbGQoImRvY3VtZW50cyIpLmNoaWxkKGUpLmNhbm9uaWNhbFN0cmluZygpfWZ1bmN0aW9uIHlfKHQpe3Q9YW0uZnJvbVN0cmluZyh0KTtyZXR1cm4gR3koRl8odCkpLHR9ZnVuY3Rpb24gbV8odCxlKXtyZXR1cm4gZ18odC5kYXRhYmFzZUlkLGUucGF0aCl9ZnVuY3Rpb24gYl8odCxlKXtlPXlfKGUpO2lmKGUuZ2V0KDEpIT09dC5kYXRhYmFzZUlkLnByb2plY3RJZCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiVHJpZWQgdG8gZGVzZXJpYWxpemUga2V5IGZyb20gZGlmZmVyZW50IHByb2plY3Q6ICIrZS5nZXQoMSkrIiB2cyAiK3QuZGF0YWJhc2VJZC5wcm9qZWN0SWQpO2lmKGUuZ2V0KDMpIT09dC5kYXRhYmFzZUlkLmRhdGFiYXNlKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJUcmllZCB0byBkZXNlcmlhbGl6ZSBrZXkgZnJvbSBkaWZmZXJlbnQgZGF0YWJhc2U6ICIrZS5nZXQoMykrIiB2cyAiK3QuZGF0YWJhc2VJZC5kYXRhYmFzZSk7cmV0dXJuIG5ldyBDbShUXyhlKSl9ZnVuY3Rpb24gd18odCxlKXtyZXR1cm4gZ18odC5kYXRhYmFzZUlkLGUpfWZ1bmN0aW9uIF9fKHQpe3Q9eV8odCk7cmV0dXJuIDQ9PT10Lmxlbmd0aD9hbS5lbXB0eVBhdGgoKTpUXyh0KX1mdW5jdGlvbiBJXyh0KXtyZXR1cm4gbmV3IGFtKFsicHJvamVjdHMiLHQuZGF0YWJhc2VJZC5wcm9qZWN0SWQsImRhdGFiYXNlcyIsdC5kYXRhYmFzZUlkLmRhdGFiYXNlXSkuY2Fub25pY2FsU3RyaW5nKCl9ZnVuY3Rpb24gVF8odCl7cmV0dXJuIEd5KDQ8dC5sZW5ndGgmJiJkb2N1bWVudHMiPT09dC5nZXQoNCkpLHQucG9wRmlyc3QoNSl9ZnVuY3Rpb24gRV8odCxlLG4pe3JldHVybntuYW1lOm1fKHQsZSksZmllbGRzOm4udG9Qcm90bygpLm1hcFZhbHVlLmZpZWxkc319ZnVuY3Rpb24gU18odCxlLG4pe3ZhciByPWJfKHQsZS5uYW1lKSx0PXZfKGUudXBkYXRlVGltZSksZT1uZXcgcW0oe21hcFZhbHVlOntmaWVsZHM6ZS5maWVsZHN9fSksZT1CbS5uZXdGb3VuZERvY3VtZW50KHIsdCxlKTtyZXR1cm4gbiYmZS5zZXRIYXNDb21taXR0ZWRNdXRhdGlvbnMoKSxuP2Uuc2V0SGFzQ29tbWl0dGVkTXV0YXRpb25zKCk6ZX1mdW5jdGlvbiBDXyh0LGUpe3ZhciBuLHIsaTtpZihlIGluc3RhbmNlb2YgeXcpbj17dXBkYXRlOkVfKHQsZS5rZXksZS52YWx1ZSl9O2Vsc2UgaWYoZSBpbnN0YW5jZW9mIEF3KW49e2RlbGV0ZTptXyh0LGUua2V5KX07ZWxzZSBpZihlIGluc3RhbmNlb2YgbXcpbj17dXBkYXRlOkVfKHQsZS5rZXksZS5kYXRhKSx1cGRhdGVNYXNrOihpPWUuZmllbGRNYXNrLHI9W10saS5maWVsZHMuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gci5wdXNoKHQuY2Fub25pY2FsU3RyaW5nKCkpfSkse2ZpZWxkUGF0aHM6cn0pfTtlbHNle2lmKCEoZSBpbnN0YW5jZW9mIGt3KSlyZXR1cm4gSHkoKTtuPXt2ZXJpZnk6bV8odCxlLmtleSl9fXJldHVybiAwPGUuZmllbGRUcmFuc2Zvcm1zLmxlbmd0aCYmKG4udXBkYXRlVHJhbnNmb3Jtcz1lLmZpZWxkVHJhbnNmb3Jtcy5tYXAoZnVuY3Rpb24odCl7dmFyIGU9dC50cmFuc2Zvcm07aWYoZSBpbnN0YW5jZW9mIHpiKXJldHVybntmaWVsZFBhdGg6dC5maWVsZC5jYW5vbmljYWxTdHJpbmcoKSxzZXRUb1NlcnZlclZhbHVlOiJSRVFVRVNUX1RJTUUifTtpZihlIGluc3RhbmNlb2YgUWIpcmV0dXJue2ZpZWxkUGF0aDp0LmZpZWxkLmNhbm9uaWNhbFN0cmluZygpLGFwcGVuZE1pc3NpbmdFbGVtZW50czp7dmFsdWVzOmUuZWxlbWVudHN9fTtpZihlIGluc3RhbmNlb2YgWmIpcmV0dXJue2ZpZWxkUGF0aDp0LmZpZWxkLmNhbm9uaWNhbFN0cmluZygpLHJlbW92ZUFsbEZyb21BcnJheTp7dmFsdWVzOmUuZWxlbWVudHN9fTtpZihlIGluc3RhbmNlb2YgcncpcmV0dXJue2ZpZWxkUGF0aDp0LmZpZWxkLmNhbm9uaWNhbFN0cmluZygpLGluY3JlbWVudDplLkF9O3Rocm93IEh5KCl9KSksZS5wcmVjb25kaXRpb24uaXNOb25lfHwobi5jdXJyZW50RG9jdW1lbnQ9dm9pZCAwIT09KGk9ZS5wcmVjb25kaXRpb24pLnVwZGF0ZVRpbWU/e3VwZGF0ZVRpbWU6KGU9dCx0PWkudXBkYXRlVGltZSxwXyhlLHQudG9UaW1lc3RhbXAoKSkpfTp2b2lkIDAhPT1pLmV4aXN0cz97ZXhpc3RzOmkuZXhpc3RzfTpIeSgpKSxufWZ1bmN0aW9uIE5fKGUsdCl7dmFyIG49dC5jdXJyZW50RG9jdW1lbnQ/dm9pZCAwIT09KHM9dC5jdXJyZW50RG9jdW1lbnQpLnVwZGF0ZVRpbWU/Y3cudXBkYXRlVGltZSh2XyhzLnVwZGF0ZVRpbWUpKTp2b2lkIDAhPT1zLmV4aXN0cz9jdy5leGlzdHMocy5leGlzdHMpOmN3Lm5vbmUoKTpjdy5ub25lKCkscj10LnVwZGF0ZVRyYW5zZm9ybXM/dC51cGRhdGVUcmFuc2Zvcm1zLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24odCxlKXt2YXIgbixyPW51bGw7InNldFRvU2VydmVyVmFsdWUiaW4gZT8oR3koIlJFUVVFU1RfVElNRSI9PT1lLnNldFRvU2VydmVyVmFsdWUpLHI9bmV3IHpiKToiYXBwZW5kTWlzc2luZ0VsZW1lbnRzImluIGU/KG49ZS5hcHBlbmRNaXNzaW5nRWxlbWVudHMudmFsdWVzfHxbXSxyPW5ldyBRYihuKSk6InJlbW92ZUFsbEZyb21BcnJheSJpbiBlPyhuPWUucmVtb3ZlQWxsRnJvbUFycmF5LnZhbHVlc3x8W10scj1uZXcgWmIobikpOiJpbmNyZW1lbnQiaW4gZT9yPW5ldyBydyh0LGUuaW5jcmVtZW50KTpIeSgpO2U9Y20uZnJvbVNlcnZlckZvcm1hdChlLmZpZWxkUGF0aCk7cmV0dXJuIG5ldyB1dyhlLHIpfShlLHQpfSk6W107aWYodC51cGRhdGUpe3QudXBkYXRlLm5hbWU7dmFyIGk9Yl8oZSx0LnVwZGF0ZS5uYW1lKSxvPW5ldyBxbSh7bWFwVmFsdWU6e2ZpZWxkczp0LnVwZGF0ZS5maWVsZHN9fSk7aWYodC51cGRhdGVNYXNrKXt2YXIgcz0ocz10LnVwZGF0ZU1hc2suZmllbGRQYXRoc3x8W10sbmV3IGhtKHMubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBjbS5mcm9tU2VydmVyRm9ybWF0KHQpfSkpKTtyZXR1cm4gbmV3IG13KGksbyxzLG4scil9cmV0dXJuIG5ldyB5dyhpLG8sbixyKX1pZih0LmRlbGV0ZSl7cj1iXyhlLHQuZGVsZXRlKTtyZXR1cm4gbmV3IEF3KHIsbil9aWYodC52ZXJpZnkpe3Q9Yl8oZSx0LnZlcmlmeSk7cmV0dXJuIG5ldyBrdyh0LG4pfXJldHVybiBIeSgpfWZ1bmN0aW9uIEFfKHQsZSl7cmV0dXJue2RvY3VtZW50czpbd18odCxlLnBhdGgpXX19ZnVuY3Rpb24ga18odCxlKXt2YXIgbj17c3RydWN0dXJlZFF1ZXJ5Ont9fSxyPWUucGF0aDtudWxsIT09ZS5jb2xsZWN0aW9uR3JvdXA/KG4ucGFyZW50PXdfKHQsciksbi5zdHJ1Y3R1cmVkUXVlcnkuZnJvbT1be2NvbGxlY3Rpb25JZDplLmNvbGxlY3Rpb25Hcm91cCxhbGxEZXNjZW5kYW50czohMH1dKToobi5wYXJlbnQ9d18odCxyLnBvcExhc3QoKSksbi5zdHJ1Y3R1cmVkUXVlcnkuZnJvbT1be2NvbGxlY3Rpb25JZDpyLmxhc3RTZWdtZW50KCl9XSk7cj1mdW5jdGlvbih0KXtpZigwIT09dC5sZW5ndGgpe3Q9dC5tYXAoZnVuY3Rpb24odCl7aWYoIj09Ij09PXQub3Ape2lmKFVtKHQudmFsdWUpKXJldHVybnt1bmFyeUZpbHRlcjp7ZmllbGQ6RF8odC5maWVsZCksb3A6IklTX05BTiJ9fTtpZihGbSh0LnZhbHVlKSlyZXR1cm57dW5hcnlGaWx0ZXI6e2ZpZWxkOkRfKHQuZmllbGQpLG9wOiJJU19OVUxMIn19fWVsc2UgaWYoIiE9Ij09PXQub3Ape2lmKFVtKHQudmFsdWUpKXJldHVybnt1bmFyeUZpbHRlcjp7ZmllbGQ6RF8odC5maWVsZCksb3A6IklTX05PVF9OQU4ifX07aWYoRm0odC52YWx1ZSkpcmV0dXJue3VuYXJ5RmlsdGVyOntmaWVsZDpEXyh0LmZpZWxkKSxvcDoiSVNfTk9UX05VTEwifX19cmV0dXJue2ZpZWxkRmlsdGVyOntmaWVsZDpEXyh0LmZpZWxkKSxvcDooZT10Lm9wLGxfW2VdKSx2YWx1ZTp0LnZhbHVlfX07dmFyIGV9KTtyZXR1cm4gMT09PXQubGVuZ3RoP3RbMF06e2NvbXBvc2l0ZUZpbHRlcjp7b3A6IkFORCIsZmlsdGVyczp0fX19fShlLmZpbHRlcnMpO3ImJihuLnN0cnVjdHVyZWRRdWVyeS53aGVyZT1yKTtyPWZ1bmN0aW9uKHQpe2lmKDAhPT10Lmxlbmd0aClyZXR1cm4gdC5tYXAoZnVuY3Rpb24odCl7cmV0dXJue2ZpZWxkOkRfKCh0PXQpLmZpZWxkKSxkaXJlY3Rpb246KHQ9dC5kaXIsaF9bdF0pfX0pfShlLm9yZGVyQnkpO3ImJihuLnN0cnVjdHVyZWRRdWVyeS5vcmRlckJ5PXIpO3I9ZS5saW1pdCxyPXQuSXx8VG0ocik/cjp7dmFsdWU6cn07cmV0dXJuIG51bGwhPT1yJiYobi5zdHJ1Y3R1cmVkUXVlcnkubGltaXQ9ciksZS5zdGFydEF0JiYobi5zdHJ1Y3R1cmVkUXVlcnkuc3RhcnRBdD1QXyhlLnN0YXJ0QXQpKSxlLmVuZEF0JiYobi5zdHJ1Y3R1cmVkUXVlcnkuZW5kQXQ9UF8oZS5lbmRBdCkpLG59ZnVuY3Rpb24gUl8odCl7dmFyIGU9X18odC5wYXJlbnQpLG49dC5zdHJ1Y3R1cmVkUXVlcnkscj1uLmZyb20/bi5mcm9tLmxlbmd0aDowLGk9bnVsbDswPHImJihHeSgxPT09ciksKGE9bi5mcm9tWzBdKS5hbGxEZXNjZW5kYW50cz9pPWEuY29sbGVjdGlvbklkOmU9ZS5jaGlsZChhLmNvbGxlY3Rpb25JZCkpO3ZhciBvPVtdO24ud2hlcmUmJihvPWZ1bmN0aW9uIGUodCl7cmV0dXJuIHQ/dm9pZCAwIT09dC51bmFyeUZpbHRlcj9bTV8odCldOnZvaWQgMCE9PXQuZmllbGRGaWx0ZXI/W0xfKHQpXTp2b2lkIDAhPT10LmNvbXBvc2l0ZUZpbHRlcj90LmNvbXBvc2l0ZUZpbHRlci5maWx0ZXJzLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZSh0KX0pLnJlZHVjZShmdW5jdGlvbih0LGUpe3JldHVybiB0LmNvbmNhdChlKX0pOkh5KCk6W119KG4ud2hlcmUpKTt2YXIgcz1bXSx0PW51bGwscj1udWxsLGE9bnVsbDtyZXR1cm4gQ2IoZSxpLHM9bi5vcmRlckJ5P24ub3JkZXJCeS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBJYih4XygoZT10KS5maWVsZCksZnVuY3Rpb24oKXtzd2l0Y2goZS5kaXJlY3Rpb24pe2Nhc2UiQVNDRU5ESU5HIjpyZXR1cm4iYXNjIjtjYXNlIkRFU0NFTkRJTkciOnJldHVybiJkZXNjIjtkZWZhdWx0OnJldHVybn19KCkpO3ZhciBlfSk6cyxvLHQ9bi5saW1pdD9UbShvPSJvYmplY3QiPT10eXBlb2Yobz1uLmxpbWl0KT9vLnZhbHVlOm8pP251bGw6bzp0LCJGIixyPW4uc3RhcnRBdD9PXyhuLnN0YXJ0QXQpOnIsYT1uLmVuZEF0P09fKG4uZW5kQXQpOmEpfWZ1bmN0aW9uIFBfKHQpe3JldHVybntiZWZvcmU6dC5iZWZvcmUsdmFsdWVzOnQucG9zaXRpb259fWZ1bmN0aW9uIE9fKHQpe3ZhciBlPSEhdC5iZWZvcmUsdD10LnZhbHVlc3x8W107cmV0dXJuIG5ldyBnYih0LGUpfWZ1bmN0aW9uIERfKHQpe3JldHVybntmaWVsZFBhdGg6dC5jYW5vbmljYWxTdHJpbmcoKX19ZnVuY3Rpb24geF8odCl7cmV0dXJuIGNtLmZyb21TZXJ2ZXJGb3JtYXQodC5maWVsZFBhdGgpfWZ1bmN0aW9uIExfKHQpe3JldHVybiBYbS5jcmVhdGUoeF8odC5maWVsZEZpbHRlci5maWVsZCksZnVuY3Rpb24oKXtzd2l0Y2godC5maWVsZEZpbHRlci5vcCl7Y2FzZSJFUVVBTCI6cmV0dXJuIj09IjtjYXNlIk5PVF9FUVVBTCI6cmV0dXJuIiE9IjtjYXNlIkdSRUFURVJfVEhBTiI6cmV0dXJuIj4iO2Nhc2UiR1JFQVRFUl9USEFOX09SX0VRVUFMIjpyZXR1cm4iPj0iO2Nhc2UiTEVTU19USEFOIjpyZXR1cm4iPCI7Y2FzZSJMRVNTX1RIQU5fT1JfRVFVQUwiOnJldHVybiI8PSI7Y2FzZSJBUlJBWV9DT05UQUlOUyI6cmV0dXJuImFycmF5LWNvbnRhaW5zIjtjYXNlIklOIjpyZXR1cm4iaW4iO2Nhc2UiTk9UX0lOIjpyZXR1cm4ibm90LWluIjtjYXNlIkFSUkFZX0NPTlRBSU5TX0FOWSI6cmV0dXJuImFycmF5LWNvbnRhaW5zLWFueSI7Y2FzZSJPUEVSQVRPUl9VTlNQRUNJRklFRCI6ZGVmYXVsdDpyZXR1cm4gSHkoKX19KCksdC5maWVsZEZpbHRlci52YWx1ZSl9ZnVuY3Rpb24gTV8odCl7c3dpdGNoKHQudW5hcnlGaWx0ZXIub3Ape2Nhc2UiSVNfTkFOIjp2YXIgZT14Xyh0LnVuYXJ5RmlsdGVyLmZpZWxkKTtyZXR1cm4gWG0uY3JlYXRlKGUsIj09Iix7ZG91YmxlVmFsdWU6TmFOfSk7Y2FzZSJJU19OVUxMIjplPXhfKHQudW5hcnlGaWx0ZXIuZmllbGQpO3JldHVybiBYbS5jcmVhdGUoZSwiPT0iLHtudWxsVmFsdWU6Ik5VTExfVkFMVUUifSk7Y2FzZSJJU19OT1RfTkFOIjp2YXIgbj14Xyh0LnVuYXJ5RmlsdGVyLmZpZWxkKTtyZXR1cm4gWG0uY3JlYXRlKG4sIiE9Iix7ZG91YmxlVmFsdWU6TmFOfSk7Y2FzZSJJU19OT1RfTlVMTCI6bj14Xyh0LnVuYXJ5RmlsdGVyLmZpZWxkKTtyZXR1cm4gWG0uY3JlYXRlKG4sIiE9Iix7bnVsbFZhbHVlOiJOVUxMX1ZBTFVFIn0pO2Nhc2UiT1BFUkFUT1JfVU5TUEVDSUZJRUQiOmRlZmF1bHQ6cmV0dXJuIEh5KCl9fWZ1bmN0aW9uIEZfKHQpe3JldHVybiA0PD10Lmxlbmd0aCYmInByb2plY3RzIj09PXQuZ2V0KDApJiYiZGF0YWJhc2VzIj09PXQuZ2V0KDIpfWZ1bmN0aW9uIFVfKHQpe2Zvcih2YXIgZT0iIixuPTA7bjx0Lmxlbmd0aDtuKyspMDxlLmxlbmd0aCYmKGU9al8oZSkpLGU9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49ZSxyPXQubGVuZ3RoLGk9MDtpPHI7aSsrKXt2YXIgbz10LmNoYXJBdChpKTtzd2l0Y2gobyl7Y2FzZSJcMCI6bis9IgEQIjticmVhaztjYXNlIgEiOm4rPSIBESI7YnJlYWs7ZGVmYXVsdDpuKz1vfX1yZXR1cm4gbn0odC5nZXQobiksZSk7cmV0dXJuIGpfKGUpfWZ1bmN0aW9uIGpfKHQpe3JldHVybiB0KyIBASJ9ZnVuY3Rpb24gcV8odCl7dmFyIGU9dC5sZW5ndGg7aWYoR3koMjw9ZSksMj09PWUpcmV0dXJuIEd5KCIBIj09PXQuY2hhckF0KDApJiYiASI9PT10LmNoYXJBdCgxKSksYW0uZW1wdHlQYXRoKCk7Zm9yKHZhciBuPWUtMixyPVtdLGk9IiIsbz0wO288ZTspe3ZhciBzPXQuaW5kZXhPZigiASIsbyk7c3dpdGNoKChzPDB8fG48cykmJkh5KCksdC5jaGFyQXQocysxKSl7Y2FzZSIBIjp2YXIgYT10LnN1YnN0cmluZyhvLHMpLHU9dm9pZCAwOzA9PT1pLmxlbmd0aD91PWE6KHU9aSs9YSxpPSIiKSxyLnB1c2godSk7YnJlYWs7Y2FzZSIQIjppKz10LnN1YnN0cmluZyhvLHMpLGkrPSJcMCI7YnJlYWs7Y2FzZSIRIjppKz10LnN1YnN0cmluZyhvLHMrMSk7YnJlYWs7ZGVmYXVsdDpIeSgpfW89cysyfXJldHVybiBuZXcgYW0ocil9ZnVuY3Rpb24gVl8odCxlLG4pe3RoaXMub3duZXJJZD10LHRoaXMuYWxsb3dUYWJTeW5jaHJvbml6YXRpb249ZSx0aGlzLmxlYXNlVGltZXN0YW1wTXM9bn12YXIgQl89ZnVuY3Rpb24odCxlKXt0aGlzLnNlY29uZHM9dCx0aGlzLm5hbm9zZWNvbmRzPWV9O1ZfLnN0b3JlPSJvd25lciIsVl8ua2V5PSJvd25lciI7ZnVuY3Rpb24gS18odCxlLG4pe3RoaXMudXNlcklkPXQsdGhpcy5sYXN0QWNrbm93bGVkZ2VkQmF0Y2hJZD1lLHRoaXMubGFzdFN0cmVhbVRva2VuPW59S18uc3RvcmU9Im11dGF0aW9uUXVldWVzIixLXy5rZXlQYXRoPSJ1c2VySWQiO2Z1bmN0aW9uIFdfKHQsZSxuLHIsaSl7dGhpcy51c2VySWQ9dCx0aGlzLmJhdGNoSWQ9ZSx0aGlzLmxvY2FsV3JpdGVUaW1lTXM9bix0aGlzLmJhc2VNdXRhdGlvbnM9cix0aGlzLm11dGF0aW9ucz1pfVdfLnN0b3JlPSJtdXRhdGlvbnMiLFdfLmtleVBhdGg9ImJhdGNoSWQiLFdfLnVzZXJNdXRhdGlvbnNJbmRleD0idXNlck11dGF0aW9uc0luZGV4IixXXy51c2VyTXV0YXRpb25zS2V5UGF0aD1bInVzZXJJZCIsImJhdGNoSWQiXTt2YXIgSF89KEdfLnByZWZpeEZvclVzZXI9ZnVuY3Rpb24odCl7cmV0dXJuW3RdfSxHXy5wcmVmaXhGb3JQYXRoPWZ1bmN0aW9uKHQsZSl7cmV0dXJuW3QsVV8oZSldfSxHXy5rZXk9ZnVuY3Rpb24odCxlLG4pe3JldHVyblt0LFVfKGUpLG5dfSxHXyk7ZnVuY3Rpb24gR18oKXt9SF8uc3RvcmU9ImRvY3VtZW50TXV0YXRpb25zIixIXy5QTEFDRUhPTERFUj1uZXcgSF87ZnVuY3Rpb24gel8odCxlKXt0aGlzLnBhdGg9dCx0aGlzLnJlYWRUaW1lPWV9ZnVuY3Rpb24gUV8odCxlKXt0aGlzLnBhdGg9dCx0aGlzLnZlcnNpb249ZX12YXIgWV89ZnVuY3Rpb24odCxlLG4scixpLG8pe3RoaXMudW5rbm93bkRvY3VtZW50PXQsdGhpcy5ub0RvY3VtZW50PWUsdGhpcy5kb2N1bWVudD1uLHRoaXMuaGFzQ29tbWl0dGVkTXV0YXRpb25zPXIsdGhpcy5yZWFkVGltZT1pLHRoaXMucGFyZW50UGF0aD1vfTtZXy5zdG9yZT0icmVtb3RlRG9jdW1lbnRzIixZXy5yZWFkVGltZUluZGV4PSJyZWFkVGltZUluZGV4IixZXy5yZWFkVGltZUluZGV4UGF0aD0icmVhZFRpbWUiLFlfLmNvbGxlY3Rpb25SZWFkVGltZUluZGV4PSJjb2xsZWN0aW9uUmVhZFRpbWVJbmRleCIsWV8uY29sbGVjdGlvblJlYWRUaW1lSW5kZXhQYXRoPVsicGFyZW50UGF0aCIsInJlYWRUaW1lIl07ZnVuY3Rpb24gWF8odCl7dGhpcy5ieXRlU2l6ZT10fVhfLnN0b3JlPSJyZW1vdGVEb2N1bWVudEdsb2JhbCIsWF8ua2V5PSJyZW1vdGVEb2N1bWVudEdsb2JhbEtleSI7ZnVuY3Rpb24gSl8odCxlLG4scixpLG8scyl7dGhpcy50YXJnZXRJZD10LHRoaXMuY2Fub25pY2FsSWQ9ZSx0aGlzLnJlYWRUaW1lPW4sdGhpcy5yZXN1bWVUb2tlbj1yLHRoaXMubGFzdExpc3RlblNlcXVlbmNlTnVtYmVyPWksdGhpcy5sYXN0TGltYm9GcmVlU25hcHNob3RWZXJzaW9uPW8sdGhpcy5xdWVyeT1zfUpfLnN0b3JlPSJ0YXJnZXRzIixKXy5rZXlQYXRoPSJ0YXJnZXRJZCIsSl8ucXVlcnlUYXJnZXRzSW5kZXhOYW1lPSJxdWVyeVRhcmdldHNJbmRleCIsSl8ucXVlcnlUYXJnZXRzS2V5UGF0aD1bImNhbm9uaWNhbElkIiwidGFyZ2V0SWQiXTt2YXIgJF89ZnVuY3Rpb24odCxlLG4pe3RoaXMudGFyZ2V0SWQ9dCx0aGlzLnBhdGg9ZSx0aGlzLnNlcXVlbmNlTnVtYmVyPW59OyRfLnN0b3JlPSJ0YXJnZXREb2N1bWVudHMiLCRfLmtleVBhdGg9WyJ0YXJnZXRJZCIsInBhdGgiXSwkXy5kb2N1bWVudFRhcmdldHNJbmRleD0iZG9jdW1lbnRUYXJnZXRzSW5kZXgiLCRfLmRvY3VtZW50VGFyZ2V0c0tleVBhdGg9WyJwYXRoIiwidGFyZ2V0SWQiXTtmdW5jdGlvbiBaXyh0LGUsbixyKXt0aGlzLmhpZ2hlc3RUYXJnZXRJZD10LHRoaXMuaGlnaGVzdExpc3RlblNlcXVlbmNlTnVtYmVyPWUsdGhpcy5sYXN0UmVtb3RlU25hcHNob3RWZXJzaW9uPW4sdGhpcy50YXJnZXRDb3VudD1yfVpfLmtleT0idGFyZ2V0R2xvYmFsS2V5IixaXy5zdG9yZT0idGFyZ2V0R2xvYmFsIjtmdW5jdGlvbiB0SSh0LGUpe3RoaXMuY29sbGVjdGlvbklkPXQsdGhpcy5wYXJlbnQ9ZX10SS5zdG9yZT0iY29sbGVjdGlvblBhcmVudHMiLHRJLmtleVBhdGg9WyJjb2xsZWN0aW9uSWQiLCJwYXJlbnQiXTtmdW5jdGlvbiBlSSh0LGUsbixyKXt0aGlzLmNsaWVudElkPXQsdGhpcy51cGRhdGVUaW1lTXM9ZSx0aGlzLm5ldHdvcmtFbmFibGVkPW4sdGhpcy5pbkZvcmVncm91bmQ9cn1lSS5zdG9yZT0iY2xpZW50TWV0YWRhdGEiLGVJLmtleVBhdGg9ImNsaWVudElkIjtmdW5jdGlvbiBuSSh0LGUsbil7dGhpcy5idW5kbGVJZD10LHRoaXMuY3JlYXRlVGltZT1lLHRoaXMudmVyc2lvbj1ufW5JLnN0b3JlPSJidW5kbGVzIixuSS5rZXlQYXRoPSJidW5kbGVJZCI7ZnVuY3Rpb24gckkodCxlLG4pe3RoaXMubmFtZT10LHRoaXMucmVhZFRpbWU9ZSx0aGlzLmJ1bmRsZWRRdWVyeT1ufXJJLnN0b3JlPSJuYW1lZFF1ZXJpZXMiLHJJLmtleVBhdGg9Im5hbWUiO3ZhciBpSSxvST1ubyhubyhbXSxubyhubyhbXSxubyhubyhbXSxubyhubyhbXSxbS18uc3RvcmUsV18uc3RvcmUsSF8uc3RvcmUsWV8uc3RvcmUsSl8uc3RvcmUsVl8uc3RvcmUsWl8uc3RvcmUsJF8uc3RvcmVdKSxbZUkuc3RvcmVdKSksW1hfLnN0b3JlXSkpLFt0SS5zdG9yZV0pKSxbbkkuc3RvcmUsckkuc3RvcmVdKSxzST0iVGhlIGN1cnJlbnQgdGFiIGlzIG5vdCBpbiB0aGUgcmVxdWlyZWQgc3RhdGUgdG8gcGVyZm9ybSB0aGlzIG9wZXJhdGlvbi4gSXQgbWlnaHQgYmUgbmVjZXNzYXJ5IHRvIHJlZnJlc2ggdGhlIGJyb3dzZXIgdGFiLiIsR2E9KG1JLnByb3RvdHlwZS5hZGRPbkNvbW1pdHRlZExpc3RlbmVyPWZ1bmN0aW9uKHQpe3RoaXMub25Db21taXR0ZWRMaXN0ZW5lcnMucHVzaCh0KX0sbUkucHJvdG90eXBlLnJhaXNlT25Db21taXR0ZWRFdmVudD1mdW5jdGlvbigpe3RoaXMub25Db21taXR0ZWRMaXN0ZW5lcnMuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gdCgpfSl9LG1JKSxhST1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5wcm9taXNlPW5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7bi5yZXNvbHZlPXQsbi5yZWplY3Q9ZX0pfSx1ST0oeUkucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLm5leHQodm9pZCAwLHQpfSx5SS5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihyLGkpe3ZhciBvPXRoaXM7cmV0dXJuIHRoaXMuY2FsbGJhY2tBdHRhY2hlZCYmSHkoKSx0aGlzLmNhbGxiYWNrQXR0YWNoZWQ9ITAsdGhpcy5pc0RvbmU/dGhpcy5lcnJvcj90aGlzLndyYXBGYWlsdXJlKGksdGhpcy5lcnJvcik6dGhpcy53cmFwU3VjY2VzcyhyLHRoaXMucmVzdWx0KTpuZXcgeUkoZnVuY3Rpb24oZSxuKXtvLm5leHRDYWxsYmFjaz1mdW5jdGlvbih0KXtvLndyYXBTdWNjZXNzKHIsdCkubmV4dChlLG4pfSxvLmNhdGNoQ2FsbGJhY2s9ZnVuY3Rpb24odCl7by53cmFwRmFpbHVyZShpLHQpLm5leHQoZSxuKX19KX0seUkucHJvdG90eXBlLnRvUHJvbWlzZT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7bi5uZXh0KHQsZSl9KX0seUkucHJvdG90eXBlLndyYXBVc2VyRnVuY3Rpb249ZnVuY3Rpb24odCl7dHJ5e3ZhciBlPXQoKTtyZXR1cm4gZSBpbnN0YW5jZW9mIHlJP2U6eUkucmVzb2x2ZShlKX1jYXRjaCh0KXtyZXR1cm4geUkucmVqZWN0KHQpfX0seUkucHJvdG90eXBlLndyYXBTdWNjZXNzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ/dGhpcy53cmFwVXNlckZ1bmN0aW9uKGZ1bmN0aW9uKCl7cmV0dXJuIHQoZSl9KTp5SS5yZXNvbHZlKGUpfSx5SS5wcm90b3R5cGUud3JhcEZhaWx1cmU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD90aGlzLndyYXBVc2VyRnVuY3Rpb24oZnVuY3Rpb24oKXtyZXR1cm4gdChlKX0pOnlJLnJlamVjdChlKX0seUkucmVzb2x2ZT1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IHlJKGZ1bmN0aW9uKHQsZSl7dChuKX0pfSx5SS5yZWplY3Q9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyB5SShmdW5jdGlvbih0LGUpe2Uobil9KX0seUkud2FpdEZvcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHlJKGZ1bmN0aW9uKGUsbil7dmFyIHI9MCxpPTAsbz0hMTt0LmZvckVhY2goZnVuY3Rpb24odCl7KytyLHQubmV4dChmdW5jdGlvbigpeysraSxvJiZpPT09ciYmZSgpfSxmdW5jdGlvbih0KXtyZXR1cm4gbih0KX0pfSksbz0hMCxpPT09ciYmZSgpfSl9LHlJLm9yPWZ1bmN0aW9uKHQpe2Zvcih2YXIgbj15SS5yZXNvbHZlKCExKSxlPTAscj10O2U8ci5sZW5ndGg7ZSsrKSFmdW5jdGlvbihlKXtuPW4ubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdD95SS5yZXNvbHZlKHQpOmUoKX0pfShyW2VdKTtyZXR1cm4gbn0seUkuZm9yRWFjaD1mdW5jdGlvbih0LG4pe3ZhciByPXRoaXMsaT1bXTtyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7aS5wdXNoKG4uY2FsbChyLHQsZSkpfSksdGhpcy53YWl0Rm9yKGkpfSx5SSksY0k9KGdJLm9wZW49ZnVuY3Rpb24odCxlLG4scil7dHJ5e3JldHVybiBuZXcgZ0koZSx0LnRyYW5zYWN0aW9uKHIsbikpfWNhdGNoKHQpe3Rocm93IG5ldyBmSShlLHQpfX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGdJLnByb3RvdHlwZSwiZHQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mdC5wcm9taXNlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGdJLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbih0KXt0JiZ0aGlzLmZ0LnJlamVjdCh0KSx0aGlzLmFib3J0ZWR8fChWeSgiU2ltcGxlRGIiLCJBYm9ydGluZyB0cmFuc2FjdGlvbjoiLHQ/dC5tZXNzYWdlOiJDbGllbnQtaW5pdGlhdGVkIGFib3J0IiksdGhpcy5hYm9ydGVkPSEwLHRoaXMudHJhbnNhY3Rpb24uYWJvcnQoKSl9LGdJLnByb3RvdHlwZS5zdG9yZT1mdW5jdGlvbih0KXt0PXRoaXMudHJhbnNhY3Rpb24ub2JqZWN0U3RvcmUodCk7cmV0dXJuIG5ldyB3SSh0KX0sZ0kpLGhJPSh2SS5kZWxldGU9ZnVuY3Rpb24odCl7cmV0dXJuIFZ5KCJTaW1wbGVEYiIsIlJlbW92aW5nIGRhdGFiYXNlOiIsdCksSUkod2luZG93LmluZGV4ZWREQi5kZWxldGVEYXRhYmFzZSh0KSkudG9Qcm9taXNlKCl9LHZJLnl0PWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBpbmRleGVkREIpcmV0dXJuITE7aWYodkkuZ3QoKSlyZXR1cm4hMDt2YXIgdD1wbygpLGU9dkkuX3QodCksbj0wPGUmJmU8MTAsZT12SS5FdCh0KSxlPTA8ZSYmZTw0LjU7cmV0dXJuISgwPHQuaW5kZXhPZigiTVNJRSAiKXx8MDx0LmluZGV4T2YoIlRyaWRlbnQvIil8fDA8dC5pbmRleE9mKCJFZGdlLyIpfHxufHxlKX0sdkkuZ3Q9ZnVuY3Rpb24oKXt2YXIgdDtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHByb2Nlc3MmJiJZRVMiPT09KG51bGw9PT0odD1wcm9jZXNzLmVudil8fHZvaWQgMD09PXQ/dm9pZCAwOnQuVHQpfSx2SS5JdD1mdW5jdGlvbih0LGUpe3JldHVybiB0LnN0b3JlKGUpfSx2SS5fdD1mdW5jdGlvbih0KXt0PXQubWF0Y2goL2koPzpwaG9uZXxwYWR8cG9kKSBvcyAoW1xkX10rKS9pKSx0PXQ/dFsxXS5zcGxpdCgiXyIpLnNsaWNlKDAsMikuam9pbigiLiIpOiItMSI7cmV0dXJuIE51bWJlcih0KX0sdkkuRXQ9ZnVuY3Rpb24odCl7dD10Lm1hdGNoKC9BbmRyb2lkIChbXGQuXSspL2kpLHQ9dD90WzFdLnNwbGl0KCIuIikuc2xpY2UoMCwyKS5qb2luKCIuIik6Ii0xIjtyZXR1cm4gTnVtYmVyKHQpfSx2SS5wcm90b3R5cGUuQXQ9ZnVuY3Rpb24obyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLGk9dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLmRiP1szLDJdOihWeSgiU2ltcGxlRGIiLCJPcGVuaW5nIGRhdGFiYXNlOiIsdGhpcy5uYW1lKSxlPXRoaXMsWzQsbmV3IFByb21pc2UoZnVuY3Rpb24oZSxuKXt2YXIgcj1pbmRleGVkREIub3BlbihpLm5hbWUsaS52ZXJzaW9uKTtyLm9uc3VjY2Vzcz1mdW5jdGlvbih0KXt0PXQudGFyZ2V0LnJlc3VsdDtlKHQpfSxyLm9uYmxvY2tlZD1mdW5jdGlvbigpe24obmV3IGZJKG8sIkNhbm5vdCB1cGdyYWRlIEluZGV4ZWREQiBzY2hlbWEgd2hpbGUgYW5vdGhlciB0YWIgaXMgb3Blbi4gQ2xvc2UgYWxsIHRhYnMgdGhhdCBhY2Nlc3MgRmlyZXN0b3JlIGFuZCByZWxvYWQgdGhpcyBwYWdlIHRvIHByb2NlZWQuIikpfSxyLm9uZXJyb3I9ZnVuY3Rpb24odCl7dD10LnRhcmdldC5lcnJvcjsiVmVyc2lvbkVycm9yIj09PXQubmFtZT9uKG5ldyBGeShNeS5GQUlMRURfUFJFQ09ORElUSU9OLCJBIG5ld2VyIHZlcnNpb24gb2YgdGhlIEZpcmVzdG9yZSBTREsgd2FzIHByZXZpb3VzbHkgdXNlZCBhbmQgc28gdGhlIHBlcnNpc3RlZCBkYXRhIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggdGhlIHZlcnNpb24gb2YgdGhlIFNESyB5b3UgYXJlIG5vdyB1c2luZy4gVGhlIFNESyB3aWxsIG9wZXJhdGUgd2l0aCBwZXJzaXN0ZW5jZSBkaXNhYmxlZC4gSWYgeW91IG5lZWQgcGVyc2lzdGVuY2UsIHBsZWFzZSByZS11cGdyYWRlIHRvIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgU0RLIG9yIGVsc2UgY2xlYXIgdGhlIHBlcnNpc3RlZCBJbmRleGVkREIgZGF0YSBmb3IgeW91ciBhcHAgdG8gc3RhcnQgZnJlc2guIikpOm4obmV3IGZJKG8sdCkpfSxyLm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbih0KXtWeSgiU2ltcGxlRGIiLCdEYXRhYmFzZSAiJytpLm5hbWUrJyIgcmVxdWlyZXMgdXBncmFkZSBmcm9tIHZlcnNpb246Jyx0Lm9sZFZlcnNpb24pO3ZhciBlPXQudGFyZ2V0LnJlc3VsdDtpLnd0LlJ0KGUsci50cmFuc2FjdGlvbix0Lm9sZFZlcnNpb24saS52ZXJzaW9uKS5uZXh0KGZ1bmN0aW9uKCl7VnkoIlNpbXBsZURiIiwiRGF0YWJhc2UgdXBncmFkZSB0byB2ZXJzaW9uICIraS52ZXJzaW9uKyIgY29tcGxldGUiKX0pfX0pXSk7Y2FzZSAxOmUuZGI9dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMiwodGhpcy5idCYmKHRoaXMuZGIub252ZXJzaW9uY2hhbmdlPWZ1bmN0aW9uKHQpe3JldHVybiBpLmJ0KHQpfSksdGhpcy5kYildfX0pfSl9LHZJLnByb3RvdHlwZS52dD1mdW5jdGlvbihlKXt0aGlzLmJ0PWUsdGhpcy5kYiYmKHRoaXMuZGIub252ZXJzaW9uY2hhbmdlPWZ1bmN0aW9uKHQpe3JldHVybiBlKHQpfSl9LHZJLnByb3RvdHlwZS5ydW5UcmFuc2FjdGlvbj1mdW5jdGlvbihhLG4sdSxjKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGksbyxzLGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppPSJyZWFkb25seSI9PT1uLG89MCxlPWZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6KytvLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDQsLDVdKSxbNCxzLkF0KGEpXTtjYXNlIDI6cmV0dXJuIHMuZGI9dC5zZW50KCksZT1jSS5vcGVuKHMuZGIsYSxpPyJyZWFkb25seSI6InJlYWR3cml0ZSIsdSksbj1jKGUpLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiBlLmFib3J0KHQpLHVJLnJlamVjdCh0KX0pLnRvUHJvbWlzZSgpLHI9e30sbi5jYXRjaChmdW5jdGlvbigpe30pLFs0LGUuZHRdO2Nhc2UgMzpyZXR1cm5bMiwoci52YWx1ZT0odC5zZW50KCksbikscildO2Nhc2UgNDpyZXR1cm4gbj10LnNlbnQoKSxyPSJGaXJlYmFzZUVycm9yIiE9PW4ubmFtZSYmbzwzLFZ5KCJTaW1wbGVEYiIsIlRyYW5zYWN0aW9uIGZhaWxlZCB3aXRoIGVycm9yOiIsbi5tZXNzYWdlLCJSZXRyeWluZzoiLHIpLHMuY2xvc2UoKSxyP1szLDVdOlsyLHt2YWx1ZTpQcm9taXNlLnJlamVjdChuKX1dO2Nhc2UgNTpyZXR1cm5bMl19fSl9LHM9dGhpcyx0LmxhYmVsPTE7Y2FzZSAxOnJldHVybls1LGUoKV07Y2FzZSAyOmlmKCJvYmplY3QiPT10eXBlb2YoZT10LnNlbnQoKSkpcmV0dXJuWzIsZS52YWx1ZV07dC5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMywxXTtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9LHZJLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3RoaXMuZGImJnRoaXMuZGIuY2xvc2UoKSx0aGlzLmRiPXZvaWQgMH0sdkkpLGxJPShPYmplY3QuZGVmaW5lUHJvcGVydHkoZEkucHJvdG90eXBlLCJpc0RvbmUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5WdH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZEkucHJvdG90eXBlLCJEdCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLlN0fSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkSS5wcm90b3R5cGUsImN1cnNvciIse3NldDpmdW5jdGlvbih0KXt0aGlzLlB0PXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksZEkucHJvdG90eXBlLmRvbmU9ZnVuY3Rpb24oKXt0aGlzLlZ0PSEwfSxkSS5wcm90b3R5cGUuQ3Q9ZnVuY3Rpb24odCl7dGhpcy5TdD10fSxkSS5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKCl7cmV0dXJuIElJKHRoaXMuUHQuZGVsZXRlKCkpfSxkSSksZkk9KFhpKHBJLGlJPUZ5KSxwSSk7ZnVuY3Rpb24gcEkodCxlKXt2YXIgbj10aGlzO3JldHVybihuPWlJLmNhbGwodGhpcyxNeS5VTkFWQUlMQUJMRSwiSW5kZXhlZERCIHRyYW5zYWN0aW9uICciK3QrIicgZmFpbGVkOiAiK2UpfHx0aGlzKS5uYW1lPSJJbmRleGVkRGJUcmFuc2FjdGlvbkVycm9yIixufWZ1bmN0aW9uIGRJKHQpe3RoaXMuUHQ9dCx0aGlzLlZ0PSExLHRoaXMuU3Q9bnVsbH1mdW5jdGlvbiB2SSh0LGUsbil7dGhpcy5uYW1lPXQsdGhpcy52ZXJzaW9uPWUsdGhpcy53dD1uLDEyLjI9PT12SS5fdChwbygpKSYmQnkoIkZpcmVzdG9yZSBwZXJzaXN0ZW5jZSBzdWZmZXJzIGZyb20gYSBidWcgaW4gaU9TIDEyLjIgU2FmYXJpIHRoYXQgbWF5IGNhdXNlIHlvdXIgYXBwIHRvIHN0b3Agd29ya2luZy4gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcS81NjQ5NjI5Ni8xMTA5MTUgZm9yIGRldGFpbHMgYW5kIGEgcG90ZW50aWFsIHdvcmthcm91bmQuIil9ZnVuY3Rpb24gZ0koZSx0KXt2YXIgbj10aGlzO3RoaXMuYWN0aW9uPWUsdGhpcy50cmFuc2FjdGlvbj10LHRoaXMuYWJvcnRlZD0hMSx0aGlzLmZ0PW5ldyBhSSx0aGlzLnRyYW5zYWN0aW9uLm9uY29tcGxldGU9ZnVuY3Rpb24oKXtuLmZ0LnJlc29sdmUoKX0sdGhpcy50cmFuc2FjdGlvbi5vbmFib3J0PWZ1bmN0aW9uKCl7dC5lcnJvcj9uLmZ0LnJlamVjdChuZXcgZkkoZSx0LmVycm9yKSk6bi5mdC5yZXNvbHZlKCl9LHRoaXMudHJhbnNhY3Rpb24ub25lcnJvcj1mdW5jdGlvbih0KXt0PUVJKHQudGFyZ2V0LmVycm9yKTtuLmZ0LnJlamVjdChuZXcgZkkoZSx0KSl9fWZ1bmN0aW9uIHlJKHQpe3ZhciBlPXRoaXM7dGhpcy5uZXh0Q2FsbGJhY2s9bnVsbCx0aGlzLmNhdGNoQ2FsbGJhY2s9bnVsbCx0aGlzLnJlc3VsdD12b2lkIDAsdGhpcy5lcnJvcj12b2lkIDAsdGhpcy5pc0RvbmU9ITEsdGhpcy5jYWxsYmFja0F0dGFjaGVkPSExLHQoZnVuY3Rpb24odCl7ZS5pc0RvbmU9ITAsZS5yZXN1bHQ9dCxlLm5leHRDYWxsYmFjayYmZS5uZXh0Q2FsbGJhY2sodCl9LGZ1bmN0aW9uKHQpe2UuaXNEb25lPSEwLGUuZXJyb3I9dCxlLmNhdGNoQ2FsbGJhY2smJmUuY2F0Y2hDYWxsYmFjayh0KX0pfWZ1bmN0aW9uIG1JKCl7dGhpcy5vbkNvbW1pdHRlZExpc3RlbmVycz1bXX1mdW5jdGlvbiBiSSh0KXtyZXR1cm4iSW5kZXhlZERiVHJhbnNhY3Rpb25FcnJvciI9PT10Lm5hbWV9dmFyIHdJPShfSS5wcm90b3R5cGUucHV0PWZ1bmN0aW9uKHQsZSl7dD12b2lkIDAhPT1lPyhWeSgiU2ltcGxlRGIiLCJQVVQiLHRoaXMuc3RvcmUubmFtZSx0LGUpLHRoaXMuc3RvcmUucHV0KGUsdCkpOihWeSgiU2ltcGxlRGIiLCJQVVQiLHRoaXMuc3RvcmUubmFtZSwiPGF1dG8ta2V5PiIsdCksdGhpcy5zdG9yZS5wdXQodCkpO3JldHVybiBJSSh0KX0sX0kucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXtyZXR1cm4gVnkoIlNpbXBsZURiIiwiQUREIix0aGlzLnN0b3JlLm5hbWUsdCx0KSxJSSh0aGlzLnN0b3JlLmFkZCh0KSl9LF9JLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcztyZXR1cm4gSUkodGhpcy5zdG9yZS5nZXQoZSkpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMD09PXQmJih0PW51bGwpLFZ5KCJTaW1wbGVEYiIsIkdFVCIsbi5zdG9yZS5uYW1lLGUsdCksdH0pfSxfSS5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKHQpe3JldHVybiBWeSgiU2ltcGxlRGIiLCJERUxFVEUiLHRoaXMuc3RvcmUubmFtZSx0KSxJSSh0aGlzLnN0b3JlLmRlbGV0ZSh0KSl9LF9JLnByb3RvdHlwZS5jb3VudD1mdW5jdGlvbigpe3JldHVybiBWeSgiU2ltcGxlRGIiLCJDT1VOVCIsdGhpcy5zdG9yZS5uYW1lKSxJSSh0aGlzLnN0b3JlLmNvdW50KCkpfSxfSS5wcm90b3R5cGUuTnQ9ZnVuY3Rpb24odCxlKXt2YXIgZT10aGlzLmN1cnNvcih0aGlzLm9wdGlvbnModCxlKSksbj1bXTtyZXR1cm4gdGhpcy54dChlLGZ1bmN0aW9uKHQsZSl7bi5wdXNoKGUpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBufSl9LF9JLnByb3RvdHlwZS5GdD1mdW5jdGlvbih0LGUpe1Z5KCJTaW1wbGVEYiIsIkRFTEVURSBBTEwiLHRoaXMuc3RvcmUubmFtZSk7ZT10aGlzLm9wdGlvbnModCxlKTtlLmt0PSExO2U9dGhpcy5jdXJzb3IoZSk7cmV0dXJuIHRoaXMueHQoZSxmdW5jdGlvbih0LGUsbil7cmV0dXJuIG4uZGVsZXRlKCl9KX0sX0kucHJvdG90eXBlLk90PWZ1bmN0aW9uKHQsZSl7ZT9uPXQ6KG49e30sZT10KTt2YXIgbj10aGlzLmN1cnNvcihuKTtyZXR1cm4gdGhpcy54dChuLGUpfSxfSS5wcm90b3R5cGUuJHQ9ZnVuY3Rpb24ocil7dmFyIHQ9dGhpcy5jdXJzb3Ioe30pO3JldHVybiBuZXcgdUkoZnVuY3Rpb24obixlKXt0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7dD1FSSh0LnRhcmdldC5lcnJvcik7ZSh0KX0sdC5vbnN1Y2Nlc3M9ZnVuY3Rpb24odCl7dmFyIGU9dC50YXJnZXQucmVzdWx0O2U/cihlLnByaW1hcnlLZXksZS52YWx1ZSkubmV4dChmdW5jdGlvbih0KXt0P2UuY29udGludWUoKTpuKCl9KTpuKCl9fSl9LF9JLnByb3RvdHlwZS54dD1mdW5jdGlvbih0LGkpe3ZhciBvPVtdO3JldHVybiBuZXcgdUkoZnVuY3Rpb24ocixlKXt0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7ZSh0LnRhcmdldC5lcnJvcil9LHQub25zdWNjZXNzPWZ1bmN0aW9uKHQpe3ZhciBlLG49dC50YXJnZXQucmVzdWx0O24/KGU9bmV3IGxJKG4pLCh0PWkobi5wcmltYXJ5S2V5LG4udmFsdWUsZSkpaW5zdGFuY2VvZiB1SSYmKHQ9dC5jYXRjaChmdW5jdGlvbih0KXtyZXR1cm4gZS5kb25lKCksdUkucmVqZWN0KHQpfSksby5wdXNoKHQpKSxlLmlzRG9uZT9yKCk6bnVsbD09PWUuRHQ/bi5jb250aW51ZSgpOm4uY29udGludWUoZS5EdCkpOnIoKX19KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHVJLndhaXRGb3Iobyl9KX0sX0kucHJvdG90eXBlLm9wdGlvbnM9ZnVuY3Rpb24odCxlKXt2YXIgbjtyZXR1cm4gdm9pZCAwIT09dCYmKCJzdHJpbmciPT10eXBlb2YgdD9uPXQ6ZT10KSx7aW5kZXg6bixyYW5nZTplfX0sX0kucHJvdG90eXBlLmN1cnNvcj1mdW5jdGlvbih0KXt2YXIgZT0ibmV4dCI7aWYodC5yZXZlcnNlJiYoZT0icHJldiIpLHQuaW5kZXgpe3ZhciBuPXRoaXMuc3RvcmUuaW5kZXgodC5pbmRleCk7cmV0dXJuIHQua3Q/bi5vcGVuS2V5Q3Vyc29yKHQucmFuZ2UsZSk6bi5vcGVuQ3Vyc29yKHQucmFuZ2UsZSl9cmV0dXJuIHRoaXMuc3RvcmUub3BlbkN1cnNvcih0LnJhbmdlLGUpfSxfSSk7ZnVuY3Rpb24gX0kodCl7dGhpcy5zdG9yZT10fWZ1bmN0aW9uIElJKHQpe3JldHVybiBuZXcgdUkoZnVuY3Rpb24oZSxuKXt0Lm9uc3VjY2Vzcz1mdW5jdGlvbih0KXt0PXQudGFyZ2V0LnJlc3VsdDtlKHQpfSx0Lm9uZXJyb3I9ZnVuY3Rpb24odCl7dD1FSSh0LnRhcmdldC5lcnJvcik7bih0KX19KX12YXIgVEk9ITE7ZnVuY3Rpb24gRUkodCl7dmFyIGU9aEkuX3QocG8oKSk7aWYoMTIuMjw9ZSYmZTwxMyl7ZT0iQW4gaW50ZXJuYWwgZXJyb3Igd2FzIGVuY291bnRlcmVkIGluIHRoZSBJbmRleGVkIERhdGFiYXNlIHNlcnZlciI7aWYoMDw9dC5tZXNzYWdlLmluZGV4T2YoZSkpe3ZhciBuPW5ldyBGeSgiaW50ZXJuYWwiLCJJT1NfSU5ERVhFRERCX0JVRzE6IEluZGV4ZWREYiBoYXMgdGhyb3duICciK2UrIicuIFRoaXMgaXMgbGlrZWx5IGR1ZSB0byBhbiB1bmF2b2lkYWJsZSBidWcgaW4gaU9TLiBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xLzU2NDk2Mjk2LzExMDkxNSBmb3IgZGV0YWlscyBhbmQgYSBwb3RlbnRpYWwgd29ya2Fyb3VuZC4iKTtyZXR1cm4gVEl8fChUST0hMCxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgbn0sMCkpLG59fXJldHVybiB0fXZhciBTSSxDST0oWGkoTkksU0k9R2EpLE5JKTtmdW5jdGlvbiBOSSh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49U0kuY2FsbCh0aGlzKXx8dGhpcykuTXQ9dCxuLmN1cnJlbnRTZXF1ZW5jZU51bWJlcj1lLG59ZnVuY3Rpb24gQUkodCxlKXtyZXR1cm4gaEkuSXQodC5NdCxlKX12YXIga0k9KExJLnByb3RvdHlwZS5hcHBseVRvUmVtb3RlRG9jdW1lbnQ9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG4scixpLG8scyxhLHU9ZS5tdXRhdGlvblJlc3VsdHMsYz0wO2M8dGhpcy5tdXRhdGlvbnMubGVuZ3RoO2MrKyl7dmFyIGg9dGhpcy5tdXRhdGlvbnNbY107aC5rZXkuaXNFcXVhbCh0LmtleSkmJihuPWgscj10LGk9dVtjXSxoPWE9cz1vPXZvaWQgMCxuIGluc3RhbmNlb2YgeXc/KHM9cixhPWksaD0obz1uKS52YWx1ZS5jbG9uZSgpLG89SXcoby5maWVsZFRyYW5zZm9ybXMscyxhLnRyYW5zZm9ybVJlc3VsdHMpLGguc2V0QWxsKG8pLHMuY29udmVydFRvRm91bmREb2N1bWVudChhLnZlcnNpb24saCkuc2V0SGFzQ29tbWl0dGVkTXV0YXRpb25zKCkpOm4gaW5zdGFuY2VvZiBtdz8obz1yLHM9aSxsdygoYT1uKS5wcmVjb25kaXRpb24sbyk/KGg9SXcoYS5maWVsZFRyYW5zZm9ybXMsbyxzLnRyYW5zZm9ybVJlc3VsdHMpLChuPW8uZGF0YSkuc2V0QWxsKF93KGEpKSxuLnNldEFsbChoKSxvLmNvbnZlcnRUb0ZvdW5kRG9jdW1lbnQocy52ZXJzaW9uLG4pLnNldEhhc0NvbW1pdHRlZE11dGF0aW9ucygpKTpvLmNvbnZlcnRUb1Vua25vd25Eb2N1bWVudChzLnZlcnNpb24pKTpyLmNvbnZlcnRUb05vRG9jdW1lbnQoaS52ZXJzaW9uKS5zZXRIYXNDb21taXR0ZWRNdXRhdGlvbnMoKSl9fSxMSS5wcm90b3R5cGUuYXBwbHlUb0xvY2FsVmlldz1mdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPXRoaXMuYmFzZU11dGF0aW9ucztlPG4ubGVuZ3RoO2UrKykocj1uW2VdKS5rZXkuaXNFcXVhbCh0LmtleSkmJmZ3KHIsdCx0aGlzLmxvY2FsV3JpdGVUaW1lKTtmb3IodmFyIHIsaT0wLG89dGhpcy5tdXRhdGlvbnM7aTxvLmxlbmd0aDtpKyspKHI9b1tpXSkua2V5LmlzRXF1YWwodC5rZXkpJiZmdyhyLHQsdGhpcy5sb2NhbFdyaXRlVGltZSl9LExJLnByb3RvdHlwZS5hcHBseVRvTG9jYWxEb2N1bWVudFNldD1mdW5jdGlvbihuKXt2YXIgcj10aGlzO3RoaXMubXV0YXRpb25zLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9bi5nZXQodC5rZXkpLHQ9ZTtyLmFwcGx5VG9Mb2NhbFZpZXcodCksZS5pc1ZhbGlkRG9jdW1lbnQoKXx8dC5jb252ZXJ0VG9Ob0RvY3VtZW50KFp5Lm1pbigpKX0pfSxMSS5wcm90b3R5cGUua2V5cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm11dGF0aW9ucy5yZWR1Y2UoZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5hZGQoZS5rZXkpfSxZdygpKX0sTEkucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYmF0Y2hJZD09PXQuYmF0Y2hJZCYmWHkodGhpcy5tdXRhdGlvbnMsdC5tdXRhdGlvbnMscHcpJiZYeSh0aGlzLmJhc2VNdXRhdGlvbnMsdC5iYXNlTXV0YXRpb25zLHB3KX0sTEkpLFJJPSh4SS5mcm9tPWZ1bmN0aW9uKHQsZSxuKXtHeSh0Lm11dGF0aW9ucy5sZW5ndGg9PT1uLmxlbmd0aCk7Zm9yKHZhciByPXp3LGk9dC5tdXRhdGlvbnMsbz0wO288aS5sZW5ndGg7bysrKXI9ci5pbnNlcnQoaVtvXS5rZXksbltvXS52ZXJzaW9uKTtyZXR1cm4gbmV3IHhJKHQsZSxuLHIpfSx4SSksUEk9KERJLnByb3RvdHlwZS53aXRoU2VxdWVuY2VOdW1iZXI9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBESSh0aGlzLnRhcmdldCx0aGlzLnRhcmdldElkLHRoaXMucHVycG9zZSx0LHRoaXMuc25hcHNob3RWZXJzaW9uLHRoaXMubGFzdExpbWJvRnJlZVNuYXBzaG90VmVyc2lvbix0aGlzLnJlc3VtZVRva2VuKX0sREkucHJvdG90eXBlLndpdGhSZXN1bWVUb2tlbj1mdW5jdGlvbih0LGUpe3JldHVybiBuZXcgREkodGhpcy50YXJnZXQsdGhpcy50YXJnZXRJZCx0aGlzLnB1cnBvc2UsdGhpcy5zZXF1ZW5jZU51bWJlcixlLHRoaXMubGFzdExpbWJvRnJlZVNuYXBzaG90VmVyc2lvbix0KX0sREkucHJvdG90eXBlLndpdGhMYXN0TGltYm9GcmVlU25hcHNob3RWZXJzaW9uPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgREkodGhpcy50YXJnZXQsdGhpcy50YXJnZXRJZCx0aGlzLnB1cnBvc2UsdGhpcy5zZXF1ZW5jZU51bWJlcix0aGlzLnNuYXBzaG90VmVyc2lvbix0LHRoaXMucmVzdW1lVG9rZW4pfSxESSksT0k9ZnVuY3Rpb24odCl7dGhpcy5MdD10fTtmdW5jdGlvbiBESSh0LGUsbixyLGksbyxzKXt2b2lkIDA9PT1pJiYoaT1aeS5taW4oKSksdm9pZCAwPT09byYmKG89WnkubWluKCkpLHZvaWQgMD09PXMmJihzPWxtLkVNUFRZX0JZVEVfU1RSSU5HKSx0aGlzLnRhcmdldD10LHRoaXMudGFyZ2V0SWQ9ZSx0aGlzLnB1cnBvc2U9bix0aGlzLnNlcXVlbmNlTnVtYmVyPXIsdGhpcy5zbmFwc2hvdFZlcnNpb249aSx0aGlzLmxhc3RMaW1ib0ZyZWVTbmFwc2hvdFZlcnNpb249byx0aGlzLnJlc3VtZVRva2VuPXN9ZnVuY3Rpb24geEkodCxlLG4scil7dGhpcy5iYXRjaD10LHRoaXMuY29tbWl0VmVyc2lvbj1lLHRoaXMubXV0YXRpb25SZXN1bHRzPW4sdGhpcy5kb2NWZXJzaW9ucz1yfWZ1bmN0aW9uIExJKHQsZSxuLHIpe3RoaXMuYmF0Y2hJZD10LHRoaXMubG9jYWxXcml0ZVRpbWU9ZSx0aGlzLmJhc2VNdXRhdGlvbnM9bix0aGlzLm11dGF0aW9ucz1yfWZ1bmN0aW9uIE1JKHQsZSl7aWYoZS5kb2N1bWVudClyZXR1cm4gU18odC5MdCxlLmRvY3VtZW50LCEhZS5oYXNDb21taXR0ZWRNdXRhdGlvbnMpO2lmKGUubm9Eb2N1bWVudCl7dmFyIG49Q20uZnJvbVNlZ21lbnRzKGUubm9Eb2N1bWVudC5wYXRoKSxyPVZJKGUubm9Eb2N1bWVudC5yZWFkVGltZSksbj1CbS5uZXdOb0RvY3VtZW50KG4scik7cmV0dXJuIGUuaGFzQ29tbWl0dGVkTXV0YXRpb25zP24uc2V0SGFzQ29tbWl0dGVkTXV0YXRpb25zKCk6bn1pZihlLnVua25vd25Eb2N1bWVudCl7bj1DbS5mcm9tU2VnbWVudHMoZS51bmtub3duRG9jdW1lbnQucGF0aCkscj1WSShlLnVua25vd25Eb2N1bWVudC52ZXJzaW9uKTtyZXR1cm4gQm0ubmV3VW5rbm93bkRvY3VtZW50KG4scil9cmV0dXJuIEh5KCl9ZnVuY3Rpb24gRkkodCxlLG4pe3ZhciByPVVJKG4pLG49ZS5rZXkucGF0aC5wb3BMYXN0KCkudG9BcnJheSgpO2lmKGUuaXNGb3VuZERvY3VtZW50KCkpe3ZhciBpPXtuYW1lOm1fKG89dC5MdCwocz1lKS5rZXkpLGZpZWxkczpzLmRhdGEudG9Qcm90bygpLm1hcFZhbHVlLmZpZWxkcyx1cGRhdGVUaW1lOnBfKG8scy52ZXJzaW9uLnRvVGltZXN0YW1wKCkpfSxvPWUuaGFzQ29tbWl0dGVkTXV0YXRpb25zO3JldHVybiBuZXcgWV8obnVsbCxudWxsLGksbyxyLG4pfWlmKGUuaXNOb0RvY3VtZW50KCkpe3ZhciBzPWUua2V5LnBhdGgudG9BcnJheSgpLGk9cUkoZS52ZXJzaW9uKSxvPWUuaGFzQ29tbWl0dGVkTXV0YXRpb25zO3JldHVybiBuZXcgWV8obnVsbCxuZXcgel8ocyxpKSxudWxsLG8scixuKX1pZihlLmlzVW5rbm93bkRvY3VtZW50KCkpe289ZS5rZXkucGF0aC50b0FycmF5KCksZT1xSShlLnZlcnNpb24pO3JldHVybiBuZXcgWV8obmV3IFFfKG8sZSksbnVsbCxudWxsLCEwLHIsbil9cmV0dXJuIEh5KCl9ZnVuY3Rpb24gVUkodCl7dD10LnRvVGltZXN0YW1wKCk7cmV0dXJuW3Quc2Vjb25kcyx0Lm5hbm9zZWNvbmRzXX1mdW5jdGlvbiBqSSh0KXt0PW5ldyAkeSh0WzBdLHRbMV0pO3JldHVybiBaeS5mcm9tVGltZXN0YW1wKHQpfWZ1bmN0aW9uIHFJKHQpe3Q9dC50b1RpbWVzdGFtcCgpO3JldHVybiBuZXcgQl8odC5zZWNvbmRzLHQubmFub3NlY29uZHMpfWZ1bmN0aW9uIFZJKHQpe3Q9bmV3ICR5KHQuc2Vjb25kcyx0Lm5hbm9zZWNvbmRzKTtyZXR1cm4gWnkuZnJvbVRpbWVzdGFtcCh0KX1mdW5jdGlvbiBCSShlLHQpe2Zvcih2YXIgbj0odC5iYXNlTXV0YXRpb25zfHxbXSkubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBOXyhlLkx0LHQpfSkscj0wO3I8dC5tdXRhdGlvbnMubGVuZ3RoLTE7KytyKXt2YXIgaSxvPXQubXV0YXRpb25zW3JdO3IrMTx0Lm11dGF0aW9ucy5sZW5ndGgmJnZvaWQgMCE9PXQubXV0YXRpb25zW3IrMV0udHJhbnNmb3JtJiYoaT10Lm11dGF0aW9uc1tyKzFdLG8udXBkYXRlVHJhbnNmb3Jtcz1pLnRyYW5zZm9ybS5maWVsZFRyYW5zZm9ybXMsdC5tdXRhdGlvbnMuc3BsaWNlKHIrMSwxKSwrK3IpfXZhciBzPXQubXV0YXRpb25zLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gTl8oZS5MdCx0KX0pLGE9JHkuZnJvbU1pbGxpcyh0LmxvY2FsV3JpdGVUaW1lTXMpO3JldHVybiBuZXcga0kodC5iYXRjaElkLGEsbixzKX1mdW5jdGlvbiBLSSh0KXt2YXIgZT1WSSh0LnJlYWRUaW1lKSxuPXZvaWQgMCE9PXQubGFzdExpbWJvRnJlZVNuYXBzaG90VmVyc2lvbj9WSSh0Lmxhc3RMaW1ib0ZyZWVTbmFwc2hvdFZlcnNpb24pOlp5Lm1pbigpLHI9dm9pZCAwIT09dC5xdWVyeS5kb2N1bWVudHM/KEd5KDE9PT0ocj10LnF1ZXJ5KS5kb2N1bWVudHMubGVuZ3RoKSx4YihOYihfXyhyLmRvY3VtZW50c1swXSkpKSk6eGIoUl8odC5xdWVyeSkpO3JldHVybiBuZXcgUEkocix0LnRhcmdldElkLDAsdC5sYXN0TGlzdGVuU2VxdWVuY2VOdW1iZXIsZSxuLGxtLmZyb21CYXNlNjRTdHJpbmcodC5yZXN1bWVUb2tlbikpfWZ1bmN0aW9uIFdJKHQsZSl7dmFyIG49cUkoZS5zbmFwc2hvdFZlcnNpb24pLHI9cUkoZS5sYXN0TGltYm9GcmVlU25hcHNob3RWZXJzaW9uKSxpPShRbShlLnRhcmdldCk/QV86a18pKHQuTHQsZS50YXJnZXQpLHQ9ZS5yZXN1bWVUb2tlbi50b0Jhc2U2NCgpO3JldHVybiBuZXcgSl8oZS50YXJnZXRJZCxHbShlLnRhcmdldCksbix0LGUuc2VxdWVuY2VOdW1iZXIscixpKX1mdW5jdGlvbiBISSh0KXt2YXIgZT1SXyh7cGFyZW50OnQucGFyZW50LHN0cnVjdHVyZWRRdWVyeTp0LnN0cnVjdHVyZWRRdWVyeX0pO3JldHVybiJMQVNUIj09PXQubGltaXRUeXBlP0xiKGUsZS5saW1pdCwiTCIpOmV9dmFyIEdJPSh6SS5wcm90b3R5cGUuZ2V0QnVuZGxlTWV0YWRhdGE9ZnVuY3Rpb24odCxlKXtyZXR1cm4gUUkodCkuZ2V0KGUpLm5leHQoZnVuY3Rpb24odCl7aWYodClyZXR1cm57aWQ6KHQ9dCkuYnVuZGxlSWQsY3JlYXRlVGltZTpWSSh0LmNyZWF0ZVRpbWUpLHZlcnNpb246dC52ZXJzaW9ufX0pfSx6SS5wcm90b3R5cGUuc2F2ZUJ1bmRsZU1ldGFkYXRhPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIFFJKHQpLnB1dCh7YnVuZGxlSWQ6KGU9ZSkuaWQsY3JlYXRlVGltZTpxSSh2XyhlLmNyZWF0ZVRpbWUpKSx2ZXJzaW9uOmUudmVyc2lvbn0pfSx6SS5wcm90b3R5cGUuZ2V0TmFtZWRRdWVyeT1mdW5jdGlvbih0LGUpe3JldHVybiBZSSh0KS5nZXQoZSkubmV4dChmdW5jdGlvbih0KXtpZih0KXJldHVybntuYW1lOih0PXQpLm5hbWUscXVlcnk6SEkodC5idW5kbGVkUXVlcnkpLHJlYWRUaW1lOlZJKHQucmVhZFRpbWUpfX0pfSx6SS5wcm90b3R5cGUuc2F2ZU5hbWVkUXVlcnk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gWUkodCkucHV0KHtuYW1lOihlPWUpLm5hbWUscmVhZFRpbWU6cUkodl8oZS5yZWFkVGltZSkpLGJ1bmRsZWRRdWVyeTplLmJ1bmRsZWRRdWVyeX0pfSx6SSk7ZnVuY3Rpb24gekkoKXt9ZnVuY3Rpb24gUUkodCl7cmV0dXJuIEFJKHQsbkkuc3RvcmUpfWZ1bmN0aW9uIFlJKHQpe3JldHVybiBBSSh0LHJJLnN0b3JlKX12YXIgWEk9KGVULnByb3RvdHlwZS5hZGRUb0NvbGxlY3Rpb25QYXJlbnRJbmRleD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLkJ0LmFkZChlKSx1SS5yZXNvbHZlKCl9LGVULnByb3RvdHlwZS5nZXRDb2xsZWN0aW9uUGFyZW50cz1mdW5jdGlvbih0LGUpe3JldHVybiB1SS5yZXNvbHZlKHRoaXMuQnQuZ2V0RW50cmllcyhlKSl9LGVUKSxKST0odFQucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXt2YXIgZT10Lmxhc3RTZWdtZW50KCksbj10LnBvcExhc3QoKSxyPXRoaXMuaW5kZXhbZV18fG5ldyBWdyhhbS5jb21wYXJhdG9yKSx0PSFyLmhhcyhuKTtyZXR1cm4gdGhpcy5pbmRleFtlXT1yLmFkZChuKSx0fSx0VC5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKHQpe3ZhciBlPXQubGFzdFNlZ21lbnQoKSx0PXQucG9wTGFzdCgpLGU9dGhpcy5pbmRleFtlXTtyZXR1cm4gZSYmZS5oYXModCl9LHRULnByb3RvdHlwZS5nZXRFbnRyaWVzPWZ1bmN0aW9uKHQpe3JldHVybih0aGlzLmluZGV4W3RdfHxuZXcgVncoYW0uY29tcGFyYXRvcikpLnRvQXJyYXkoKX0sdFQpLCRJPShaSS5wcm90b3R5cGUuYWRkVG9Db2xsZWN0aW9uUGFyZW50SW5kZXg9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO2lmKHRoaXMucXQuaGFzKGUpKXJldHVybiB1SS5yZXNvbHZlKCk7dmFyIHI9ZS5sYXN0U2VnbWVudCgpLGk9ZS5wb3BMYXN0KCk7dC5hZGRPbkNvbW1pdHRlZExpc3RlbmVyKGZ1bmN0aW9uKCl7bi5xdC5hZGQoZSl9KTtpPXtjb2xsZWN0aW9uSWQ6cixwYXJlbnQ6VV8oaSl9O3JldHVybiBuVCh0KS5wdXQoaSl9LFpJLnByb3RvdHlwZS5nZXRDb2xsZWN0aW9uUGFyZW50cz1mdW5jdGlvbih0LGkpe3ZhciBvPVtdLGU9SURCS2V5UmFuZ2UuYm91bmQoW2ksIiJdLFtKeShpKSwiIl0sITEsITApO3JldHVybiBuVCh0KS5OdChlKS5uZXh0KGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wLG49dDtlPG4ubGVuZ3RoO2UrKyl7dmFyIHI9bltlXTtpZihyLmNvbGxlY3Rpb25JZCE9PWkpYnJlYWs7by5wdXNoKHFfKHIucGFyZW50KSl9cmV0dXJuIG99KX0sWkkpO2Z1bmN0aW9uIFpJKCl7dGhpcy5xdD1uZXcgSkl9ZnVuY3Rpb24gdFQoKXt0aGlzLmluZGV4PXt9fWZ1bmN0aW9uIGVUKCl7dGhpcy5CdD1uZXcgSkl9ZnVuY3Rpb24gblQodCl7cmV0dXJuIEFJKHQsdEkuc3RvcmUpfXZhciByVD17ZGlkUnVuOiExLHNlcXVlbmNlTnVtYmVyc0NvbGxlY3RlZDowLHRhcmdldHNSZW1vdmVkOjAsZG9jdW1lbnRzUmVtb3ZlZDowfSxpVD0ob1Qud2l0aENhY2hlU2l6ZT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IG9UKHQsb1QuREVGQVVMVF9DT0xMRUNUSU9OX1BFUkNFTlRJTEUsb1QuREVGQVVMVF9NQVhfU0VRVUVOQ0VfTlVNQkVSU19UT19DT0xMRUNUKX0sb1QpO2Z1bmN0aW9uIG9UKHQsZSxuKXt0aGlzLmNhY2hlU2l6ZUNvbGxlY3Rpb25UaHJlc2hvbGQ9dCx0aGlzLnBlcmNlbnRpbGVUb0NvbGxlY3Q9ZSx0aGlzLm1heGltdW1TZXF1ZW5jZU51bWJlcnNUb0NvbGxlY3Q9bn1mdW5jdGlvbiBzVCh0LGUsbil7dmFyIHI9dC5zdG9yZShXXy5zdG9yZSksaT10LnN0b3JlKEhfLnN0b3JlKSxvPVtdLHQ9SURCS2V5UmFuZ2Uub25seShuLmJhdGNoSWQpLHM9MCx0PXIuT3Qoe3JhbmdlOnR9LGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gcysrLG4uZGVsZXRlKCl9KTtvLnB1c2godC5uZXh0KGZ1bmN0aW9uKCl7R3koMT09PXMpfSkpO2Zvcih2YXIgYT1bXSx1PTAsYz1uLm11dGF0aW9uczt1PGMubGVuZ3RoO3UrKyl7dmFyIGg9Y1t1XSxsPUhfLmtleShlLGgua2V5LnBhdGgsbi5iYXRjaElkKTtvLnB1c2goaS5kZWxldGUobCkpLGEucHVzaChoLmtleSl9cmV0dXJuIHVJLndhaXRGb3IobykubmV4dChmdW5jdGlvbigpe3JldHVybiBhfSl9ZnVuY3Rpb24gYVQodCl7aWYoIXQpcmV0dXJuIDA7dmFyIGU7aWYodC5kb2N1bWVudCllPXQuZG9jdW1lbnQ7ZWxzZSBpZih0LnVua25vd25Eb2N1bWVudCllPXQudW5rbm93bkRvY3VtZW50O2Vsc2V7aWYoIXQubm9Eb2N1bWVudCl0aHJvdyBIeSgpO2U9dC5ub0RvY3VtZW50fXJldHVybiBKU09OLnN0cmluZ2lmeShlKS5sZW5ndGh9aVQuREVGQVVMVF9DT0xMRUNUSU9OX1BFUkNFTlRJTEU9MTAsaVQuREVGQVVMVF9NQVhfU0VRVUVOQ0VfTlVNQkVSU19UT19DT0xMRUNUPTFlMyxpVC5ERUZBVUxUPW5ldyBpVCg0MTk0MzA0MCxpVC5ERUZBVUxUX0NPTExFQ1RJT05fUEVSQ0VOVElMRSxpVC5ERUZBVUxUX01BWF9TRVFVRU5DRV9OVU1CRVJTX1RPX0NPTExFQ1QpLGlULkRJU0FCTEVEPW5ldyBpVCgtMSwwLDApO3ZhciB1VD0oY1QuS3Q9ZnVuY3Rpb24odCxlLG4scil7cmV0dXJuIEd5KCIiIT09dC51aWQpLG5ldyBjVCh0LmlzQXV0aGVudGljYXRlZCgpP3QudWlkOiIiLGUsbixyKX0sY1QucHJvdG90eXBlLmNoZWNrRW1wdHk9ZnVuY3Rpb24odCl7dmFyIHI9ITAsZT1JREJLZXlSYW5nZS5ib3VuZChbdGhpcy51c2VySWQsTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXSxbdGhpcy51c2VySWQsTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZXSk7cmV0dXJuIGxUKHQpLk90KHtpbmRleDpXXy51c2VyTXV0YXRpb25zSW5kZXgscmFuZ2U6ZX0sZnVuY3Rpb24odCxlLG4pe3I9ITEsbi5kb25lKCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KX0sY1QucHJvdG90eXBlLmFkZE11dGF0aW9uQmF0Y2g9ZnVuY3Rpb24oZCx2LGcseSl7dmFyIG09dGhpcyxiPWZUKGQpLHc9bFQoZCk7cmV0dXJuIHcuYWRkKHt9KS5uZXh0KGZ1bmN0aW9uKHQpe0d5KCJudW1iZXIiPT10eXBlb2YgdCk7Zm9yKHZhciBlLG4scixpLG8scz1uZXcga0kodCx2LGcseSksYT0oZT1tLlIsbj1tLnVzZXJJZCxpPShyPXMpLmJhc2VNdXRhdGlvbnMubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBDXyhlLkx0LHQpfSksbz1yLm11dGF0aW9ucy5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIENfKGUuTHQsdCl9KSxuZXcgV18obixyLmJhdGNoSWQsci5sb2NhbFdyaXRlVGltZS50b01pbGxpcygpLGksbykpLHU9W10sYz1uZXcgVncoZnVuY3Rpb24odCxlKXtyZXR1cm4gWXkodC5jYW5vbmljYWxTdHJpbmcoKSxlLmNhbm9uaWNhbFN0cmluZygpKX0pLGg9MCxsPXk7aDxsLmxlbmd0aDtoKyspe3ZhciBmPWxbaF0scD1IXy5rZXkobS51c2VySWQsZi5rZXkucGF0aCx0KSxjPWMuYWRkKGYua2V5LnBhdGgucG9wTGFzdCgpKTt1LnB1c2gody5wdXQoYSkpLHUucHVzaChiLnB1dChwLEhfLlBMQUNFSE9MREVSKSl9cmV0dXJuIGMuZm9yRWFjaChmdW5jdGlvbih0KXt1LnB1c2gobS5VdC5hZGRUb0NvbGxlY3Rpb25QYXJlbnRJbmRleChkLHQpKX0pLGQuYWRkT25Db21taXR0ZWRMaXN0ZW5lcihmdW5jdGlvbigpe20uUXRbdF09cy5rZXlzKCl9KSx1SS53YWl0Rm9yKHUpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gc30pfSl9LGNULnByb3RvdHlwZS5sb29rdXBNdXRhdGlvbkJhdGNoPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcztyZXR1cm4gbFQodCkuZ2V0KGUpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHQ/KEd5KHQudXNlcklkPT09bi51c2VySWQpLEJJKG4uUix0KSk6bnVsbH0pfSxjVC5wcm90b3R5cGUuanQ9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLlF0W2VdP3VJLnJlc29sdmUodGhpcy5RdFtlXSk6dGhpcy5sb29rdXBNdXRhdGlvbkJhdGNoKHQsZSkubmV4dChmdW5jdGlvbih0KXtpZih0KXt0PXQua2V5cygpO3JldHVybiBuLlF0W2VdPXR9cmV0dXJuIG51bGx9KX0sY1QucHJvdG90eXBlLmdldE5leHRNdXRhdGlvbkJhdGNoQWZ0ZXJCYXRjaElkPWZ1bmN0aW9uKHQsZSl7dmFyIHI9dGhpcyxpPWUrMSxlPUlEQktleVJhbmdlLmxvd2VyQm91bmQoW3RoaXMudXNlcklkLGldKSxvPW51bGw7cmV0dXJuIGxUKHQpLk90KHtpbmRleDpXXy51c2VyTXV0YXRpb25zSW5kZXgscmFuZ2U6ZX0sZnVuY3Rpb24odCxlLG4pe2UudXNlcklkPT09ci51c2VySWQmJihHeShlLmJhdGNoSWQ+PWkpLG89Qkkoci5SLGUpKSxuLmRvbmUoKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gb30pfSxjVC5wcm90b3R5cGUuZ2V0SGlnaGVzdFVuYWNrbm93bGVkZ2VkQmF0Y2hJZD1mdW5jdGlvbih0KXt2YXIgZT1JREJLZXlSYW5nZS51cHBlckJvdW5kKFt0aGlzLnVzZXJJZCxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFldKSxyPS0xO3JldHVybiBsVCh0KS5PdCh7aW5kZXg6V18udXNlck11dGF0aW9uc0luZGV4LHJhbmdlOmUscmV2ZXJzZTohMH0sZnVuY3Rpb24odCxlLG4pe3I9ZS5iYXRjaElkLG4uZG9uZSgpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiByfSl9LGNULnByb3RvdHlwZS5nZXRBbGxNdXRhdGlvbkJhdGNoZXM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPUlEQktleVJhbmdlLmJvdW5kKFt0aGlzLnVzZXJJZCwtMV0sW3RoaXMudXNlcklkLE51bWJlci5QT1NJVElWRV9JTkZJTklUWV0pO3JldHVybiBsVCh0KS5OdChXXy51c2VyTXV0YXRpb25zSW5kZXgsbikubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIEJJKGUuUix0KX0pfSl9LGNULnByb3RvdHlwZS5nZXRBbGxNdXRhdGlvbkJhdGNoZXNBZmZlY3RpbmdEb2N1bWVudEtleT1mdW5jdGlvbihvLHMpe3ZhciBhPXRoaXMsdD1IXy5wcmVmaXhGb3JQYXRoKHRoaXMudXNlcklkLHMucGF0aCksdD1JREJLZXlSYW5nZS5sb3dlckJvdW5kKHQpLHU9W107cmV0dXJuIGZUKG8pLk90KHtyYW5nZTp0fSxmdW5jdGlvbih0LGUsbil7dmFyIHI9dFswXSxpPXRbMV0sdD10WzJdLGk9cV8oaSk7aWYocj09PWEudXNlcklkJiZzLnBhdGguaXNFcXVhbChpKSlyZXR1cm4gbFQobykuZ2V0KHQpLm5leHQoZnVuY3Rpb24odCl7aWYoIXQpdGhyb3cgSHkoKTtHeSh0LnVzZXJJZD09PWEudXNlcklkKSx1LnB1c2goQkkoYS5SLHQpKX0pO24uZG9uZSgpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiB1fSl9LGNULnByb3RvdHlwZS5nZXRBbGxNdXRhdGlvbkJhdGNoZXNBZmZlY3RpbmdEb2N1bWVudEtleXM9ZnVuY3Rpb24oZSx0KXt2YXIgcz10aGlzLGE9bmV3IFZ3KFl5KSxuPVtdO3JldHVybiB0LmZvckVhY2goZnVuY3Rpb24obyl7dmFyIHQ9SF8ucHJlZml4Rm9yUGF0aChzLnVzZXJJZCxvLnBhdGgpLHQ9SURCS2V5UmFuZ2UubG93ZXJCb3VuZCh0KSx0PWZUKGUpLk90KHtyYW5nZTp0fSxmdW5jdGlvbih0LGUsbil7dmFyIHI9dFswXSxpPXRbMV0sdD10WzJdLGk9cV8oaSk7cj09PXMudXNlcklkJiZvLnBhdGguaXNFcXVhbChpKT9hPWEuYWRkKHQpOm4uZG9uZSgpfSk7bi5wdXNoKHQpfSksdUkud2FpdEZvcihuKS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHMuV3QoZSxhKX0pfSxjVC5wcm90b3R5cGUuZ2V0QWxsTXV0YXRpb25CYXRjaGVzQWZmZWN0aW5nUXVlcnk9ZnVuY3Rpb24odCxlKXt2YXIgbz10aGlzLHM9ZS5wYXRoLGE9cy5sZW5ndGgrMSxlPUhfLnByZWZpeEZvclBhdGgodGhpcy51c2VySWQscyksZT1JREJLZXlSYW5nZS5sb3dlckJvdW5kKGUpLHU9bmV3IFZ3KFl5KTtyZXR1cm4gZlQodCkuT3Qoe3JhbmdlOmV9LGZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10WzBdLGk9dFsxXSx0PXRbMl0saT1xXyhpKTtyPT09by51c2VySWQmJnMuaXNQcmVmaXhPZihpKT9pLmxlbmd0aD09PWEmJih1PXUuYWRkKHQpKTpuLmRvbmUoKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gby5XdCh0LHUpfSl9LGNULnByb3RvdHlwZS5XdD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMscj1bXSxpPVtdO3JldHVybiB0LmZvckVhY2goZnVuY3Rpb24odCl7aS5wdXNoKGxUKGUpLmdldCh0KS5uZXh0KGZ1bmN0aW9uKHQpe2lmKG51bGw9PT10KXRocm93IEh5KCk7R3kodC51c2VySWQ9PT1uLnVzZXJJZCksci5wdXNoKEJJKG4uUix0KSl9KSl9KSx1SS53YWl0Rm9yKGkpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gcn0pfSxjVC5wcm90b3R5cGUucmVtb3ZlTXV0YXRpb25CYXRjaD1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXM7cmV0dXJuIHNUKGUuTXQsdGhpcy51c2VySWQsbikubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gZS5hZGRPbkNvbW1pdHRlZExpc3RlbmVyKGZ1bmN0aW9uKCl7ci5HdChuLmJhdGNoSWQpfSksdUkuZm9yRWFjaCh0LGZ1bmN0aW9uKHQpe3JldHVybiByLnJlZmVyZW5jZURlbGVnYXRlLm1hcmtQb3RlbnRpYWxseU9ycGhhbmVkKGUsdCl9KX0pfSxjVC5wcm90b3R5cGUuR3Q9ZnVuY3Rpb24odCl7ZGVsZXRlIHRoaXMuUXRbdF19LGNULnByb3RvdHlwZS5wZXJmb3JtQ29uc2lzdGVuY3lDaGVjaz1mdW5jdGlvbihlKXt2YXIgaT10aGlzO3JldHVybiB0aGlzLmNoZWNrRW1wdHkoZSkubmV4dChmdW5jdGlvbih0KXtpZighdClyZXR1cm4gdUkucmVzb2x2ZSgpO3ZhciB0PUlEQktleVJhbmdlLmxvd2VyQm91bmQoSF8ucHJlZml4Rm9yVXNlcihpLnVzZXJJZCkpLHI9W107cmV0dXJuIGZUKGUpLk90KHtyYW5nZTp0fSxmdW5jdGlvbih0LGUsbil7dFswXT09PWkudXNlcklkPyh0PXFfKHRbMV0pLHIucHVzaCh0KSk6bi5kb25lKCl9KS5uZXh0KGZ1bmN0aW9uKCl7R3koMD09PXIubGVuZ3RoKX0pfSl9LGNULnByb3RvdHlwZS5jb250YWluc0tleT1mdW5jdGlvbih0LGUpe3JldHVybiBoVCh0LHRoaXMudXNlcklkLGUpfSxjVC5wcm90b3R5cGUuenQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gcFQodCkuZ2V0KHRoaXMudXNlcklkKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0fHxuZXcgS18oZS51c2VySWQsLTEsIiIpfSl9LGNUKTtmdW5jdGlvbiBjVCh0LGUsbixyKXt0aGlzLnVzZXJJZD10LHRoaXMuUj1lLHRoaXMuVXQ9bix0aGlzLnJlZmVyZW5jZURlbGVnYXRlPXIsdGhpcy5RdD17fX1mdW5jdGlvbiBoVCh0LG8sZSl7dmFyIGU9SF8ucHJlZml4Rm9yUGF0aChvLGUucGF0aCkscz1lWzFdLGU9SURCS2V5UmFuZ2UubG93ZXJCb3VuZChlKSxhPSExO3JldHVybiBmVCh0KS5PdCh7cmFuZ2U6ZSxrdDohMH0sZnVuY3Rpb24odCxlLG4pe3ZhciByPXRbMF0saT10WzFdO3RbMl0scj09PW8mJmk9PT1zJiYoYT0hMCksbi5kb25lKCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGF9KX1mdW5jdGlvbiBsVCh0KXtyZXR1cm4gQUkodCxXXy5zdG9yZSl9ZnVuY3Rpb24gZlQodCl7cmV0dXJuIEFJKHQsSF8uc3RvcmUpfWZ1bmN0aW9uIHBUKHQpe3JldHVybiBBSSh0LEtfLnN0b3JlKX12YXIgZFQ9KHlULnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSHQrPTIsdGhpcy5IdH0seVQuSnQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHlUKDApfSx5VC5ZdD1mdW5jdGlvbigpe3JldHVybiBuZXcgeVQoLTEpfSx5VCksdlQ9KGdULnByb3RvdHlwZS5hbGxvY2F0ZVRhcmdldElkPWZ1bmN0aW9uKG4pe3ZhciByPXRoaXM7cmV0dXJuIHRoaXMuWHQobikubmV4dChmdW5jdGlvbih0KXt2YXIgZT1uZXcgZFQodC5oaWdoZXN0VGFyZ2V0SWQpO3JldHVybiB0LmhpZ2hlc3RUYXJnZXRJZD1lLm5leHQoKSxyLlp0KG4sdCkubmV4dChmdW5jdGlvbigpe3JldHVybiB0LmhpZ2hlc3RUYXJnZXRJZH0pfSl9LGdULnByb3RvdHlwZS5nZXRMYXN0UmVtb3RlU25hcHNob3RWZXJzaW9uPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLlh0KHQpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIFp5LmZyb21UaW1lc3RhbXAobmV3ICR5KHQubGFzdFJlbW90ZVNuYXBzaG90VmVyc2lvbi5zZWNvbmRzLHQubGFzdFJlbW90ZVNuYXBzaG90VmVyc2lvbi5uYW5vc2Vjb25kcykpfSl9LGdULnByb3RvdHlwZS5nZXRIaWdoZXN0U2VxdWVuY2VOdW1iZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuWHQodCkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdC5oaWdoZXN0TGlzdGVuU2VxdWVuY2VOdW1iZXJ9KX0sZ1QucHJvdG90eXBlLnNldFRhcmdldHNNZXRhZGF0YT1mdW5jdGlvbihlLG4scil7dmFyIGk9dGhpcztyZXR1cm4gdGhpcy5YdChlKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0LmhpZ2hlc3RMaXN0ZW5TZXF1ZW5jZU51bWJlcj1uLHImJih0Lmxhc3RSZW1vdGVTbmFwc2hvdFZlcnNpb249ci50b1RpbWVzdGFtcCgpKSxuPnQuaGlnaGVzdExpc3RlblNlcXVlbmNlTnVtYmVyJiYodC5oaWdoZXN0TGlzdGVuU2VxdWVuY2VOdW1iZXI9biksaS5adChlLHQpfSl9LGdULnByb3RvdHlwZS5hZGRUYXJnZXREYXRhPWZ1bmN0aW9uKGUsbil7dmFyIHI9dGhpcztyZXR1cm4gdGhpcy50ZShlLG4pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gci5YdChlKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0LnRhcmdldENvdW50Kz0xLHIuZWUobix0KSxyLlp0KGUsdCl9KX0pfSxnVC5wcm90b3R5cGUudXBkYXRlVGFyZ2V0RGF0YT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnRlKHQsZSl9LGdULnByb3RvdHlwZS5yZW1vdmVUYXJnZXREYXRhPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gdGhpcy5yZW1vdmVNYXRjaGluZ0tleXNGb3JUYXJnZXRJZChlLHQudGFyZ2V0SWQpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gbVQoZSkuZGVsZXRlKHQudGFyZ2V0SWQpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBuLlh0KGUpfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gR3koMDx0LnRhcmdldENvdW50KSwtLXQudGFyZ2V0Q291bnQsbi5adChlLHQpfSl9LGdULnByb3RvdHlwZS5yZW1vdmVUYXJnZXRzPWZ1bmN0aW9uKG4scixpKXt2YXIgbz10aGlzLHM9MCxhPVtdO3JldHVybiBtVChuKS5PdChmdW5jdGlvbih0LGUpe2U9S0koZSk7ZS5zZXF1ZW5jZU51bWJlcjw9ciYmbnVsbD09PWkuZ2V0KGUudGFyZ2V0SWQpJiYocysrLGEucHVzaChvLnJlbW92ZVRhcmdldERhdGEobixlKSkpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiB1SS53YWl0Rm9yKGEpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBzfSl9LGdULnByb3RvdHlwZS5mb3JFYWNoVGFyZ2V0PWZ1bmN0aW9uKHQsbil7cmV0dXJuIG1UKHQpLk90KGZ1bmN0aW9uKHQsZSl7ZT1LSShlKTtuKGUpfSl9LGdULnByb3RvdHlwZS5YdD1mdW5jdGlvbih0KXtyZXR1cm4gYlQodCkuZ2V0KFpfLmtleSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gR3kobnVsbCE9PXQpLHR9KX0sZ1QucHJvdG90eXBlLlp0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGJUKHQpLnB1dChaXy5rZXksZSl9LGdULnByb3RvdHlwZS50ZT1mdW5jdGlvbih0LGUpe3JldHVybiBtVCh0KS5wdXQoV0kodGhpcy5SLGUpKX0sZ1QucHJvdG90eXBlLmVlPWZ1bmN0aW9uKHQsZSl7dmFyIG49ITE7cmV0dXJuIHQudGFyZ2V0SWQ+ZS5oaWdoZXN0VGFyZ2V0SWQmJihlLmhpZ2hlc3RUYXJnZXRJZD10LnRhcmdldElkLG49ITApLHQuc2VxdWVuY2VOdW1iZXI+ZS5oaWdoZXN0TGlzdGVuU2VxdWVuY2VOdW1iZXImJihlLmhpZ2hlc3RMaXN0ZW5TZXF1ZW5jZU51bWJlcj10LnNlcXVlbmNlTnVtYmVyLG49ITApLG59LGdULnByb3RvdHlwZS5nZXRUYXJnZXRDb3VudD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5YdCh0KS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0LnRhcmdldENvdW50fSl9LGdULnByb3RvdHlwZS5nZXRUYXJnZXREYXRhPWZ1bmN0aW9uKHQscil7dmFyIGU9R20ociksZT1JREJLZXlSYW5nZS5ib3VuZChbZSxOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFldLFtlLE51bWJlci5QT1NJVElWRV9JTkZJTklUWV0pLGk9bnVsbDtyZXR1cm4gbVQodCkuT3Qoe3JhbmdlOmUsaW5kZXg6Sl8ucXVlcnlUYXJnZXRzSW5kZXhOYW1lfSxmdW5jdGlvbih0LGUsbil7ZT1LSShlKTt6bShyLGUudGFyZ2V0KSYmKGk9ZSxuLmRvbmUoKSl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGl9KX0sZ1QucHJvdG90eXBlLmFkZE1hdGNoaW5nS2V5cz1mdW5jdGlvbihuLHQscil7dmFyIGk9dGhpcyxvPVtdLHM9d1Qobik7cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT1VXyh0LnBhdGgpO28ucHVzaChzLnB1dChuZXcgJF8ocixlKSkpLG8ucHVzaChpLnJlZmVyZW5jZURlbGVnYXRlLmFkZFJlZmVyZW5jZShuLHIsdCkpfSksdUkud2FpdEZvcihvKX0sZ1QucHJvdG90eXBlLnJlbW92ZU1hdGNoaW5nS2V5cz1mdW5jdGlvbihuLHQscil7dmFyIGk9dGhpcyxvPXdUKG4pO3JldHVybiB1SS5mb3JFYWNoKHQsZnVuY3Rpb24odCl7dmFyIGU9VV8odC5wYXRoKTtyZXR1cm4gdUkud2FpdEZvcihbby5kZWxldGUoW3IsZV0pLGkucmVmZXJlbmNlRGVsZWdhdGUucmVtb3ZlUmVmZXJlbmNlKG4scix0KV0pfSl9LGdULnByb3RvdHlwZS5yZW1vdmVNYXRjaGluZ0tleXNGb3JUYXJnZXRJZD1mdW5jdGlvbih0LGUpe3Q9d1QodCksZT1JREJLZXlSYW5nZS5ib3VuZChbZV0sW2UrMV0sITEsITApO3JldHVybiB0LmRlbGV0ZShlKX0sZ1QucHJvdG90eXBlLmdldE1hdGNoaW5nS2V5c0ZvclRhcmdldElkPWZ1bmN0aW9uKHQsZSl7dmFyIGU9SURCS2V5UmFuZ2UuYm91bmQoW2VdLFtlKzFdLCExLCEwKSx0PXdUKHQpLHI9WXcoKTtyZXR1cm4gdC5PdCh7cmFuZ2U6ZSxrdDohMH0sZnVuY3Rpb24odCxlLG4pe3Q9cV8odFsxXSksdD1uZXcgQ20odCk7cj1yLmFkZCh0KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gcn0pfSxnVC5wcm90b3R5cGUuY29udGFpbnNLZXk9ZnVuY3Rpb24odCxlKXt2YXIgZT1VXyhlLnBhdGgpLGU9SURCS2V5UmFuZ2UuYm91bmQoW2VdLFtKeShlKV0sITEsITApLGk9MDtyZXR1cm4gd1QodCkuT3Qoe2luZGV4OiRfLmRvY3VtZW50VGFyZ2V0c0luZGV4LGt0OiEwLHJhbmdlOmV9LGZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10WzBdO3RbMV0sMCE9PXImJihpKyssbi5kb25lKCkpfSkubmV4dChmdW5jdGlvbigpe3JldHVybiAwPGl9KX0sZ1QucHJvdG90eXBlLmx0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG1UKHQpLmdldChlKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0P0tJKHQpOm51bGx9KX0sZ1QpO2Z1bmN0aW9uIGdUKHQsZSl7dGhpcy5yZWZlcmVuY2VEZWxlZ2F0ZT10LHRoaXMuUj1lfWZ1bmN0aW9uIHlUKHQpe3RoaXMuSHQ9dH1mdW5jdGlvbiBtVCh0KXtyZXR1cm4gQUkodCxKXy5zdG9yZSl9ZnVuY3Rpb24gYlQodCl7cmV0dXJuIEFJKHQsWl8uc3RvcmUpfWZ1bmN0aW9uIHdUKHQpe3JldHVybiBBSSh0LCRfLnN0b3JlKX1mdW5jdGlvbiBfVChlKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7aWYoZS5jb2RlIT09TXkuRkFJTEVEX1BSRUNPTkRJVElPTnx8ZS5tZXNzYWdlIT09c0kpdGhyb3cgZTtyZXR1cm4gVnkoIkxvY2FsU3RvcmUiLCJVbmV4cGVjdGVkbHkgbG9zdCBwcmltYXJ5IGxlYXNlIiksWzJdfSl9KX1mdW5jdGlvbiBJVCh0LGUpe3ZhciBuPXRbMF0scj10WzFdLHQ9ZVswXSxlPWVbMV0sdD1ZeShuLHQpO3JldHVybiAwPT09dD9ZeShyLGUpOnR9dmFyIFRUPShSVC5wcm90b3R5cGUuaWU9ZnVuY3Rpb24oKXtyZXR1cm4rK3RoaXMuc2V9LFJULnByb3RvdHlwZS5yZT1mdW5jdGlvbih0KXt2YXIgZT1bdCx0aGlzLmllKCldO3RoaXMuYnVmZmVyLnNpemU8dGhpcy5uZT90aGlzLmJ1ZmZlcj10aGlzLmJ1ZmZlci5hZGQoZSk6SVQoZSx0PXRoaXMuYnVmZmVyLmxhc3QoKSk8MCYmKHRoaXMuYnVmZmVyPXRoaXMuYnVmZmVyLmRlbGV0ZSh0KS5hZGQoZSkpfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoUlQucHJvdG90eXBlLCJtYXhWYWx1ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmJ1ZmZlci5sYXN0KClbMF19LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksUlQpLEVUPShrVC5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24odCl7LTEhPT10aGlzLmdhcmJhZ2VDb2xsZWN0b3IucGFyYW1zLmNhY2hlU2l6ZUNvbGxlY3Rpb25UaHJlc2hvbGQmJnRoaXMudWUodCl9LGtULnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5jZSYmKHRoaXMuY2UuY2FuY2VsKCksdGhpcy5jZT1udWxsKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGtULnByb3RvdHlwZSwic3RhcnRlZCIse2dldDpmdW5jdGlvbigpe3JldHVybiBudWxsIT09dGhpcy5jZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxrVC5wcm90b3R5cGUudWU9ZnVuY3Rpb24obil7dmFyIHQ9dGhpcyxlPXRoaXMub2U/M2U1OjZlNDtWeSgiTHJ1R2FyYmFnZUNvbGxlY3RvciIsIkdhcmJhZ2UgY29sbGVjdGlvbiBzY2hlZHVsZWQgaW4gIitlKyJtcyIpLHRoaXMuY2U9dGhpcy5hc3luY1F1ZXVlLmVucXVldWVBZnRlckRlbGF5KCJscnVfZ2FyYmFnZV9jb2xsZWN0aW9uIixlLGZ1bmN0aW9uKCl7cmV0dXJuICRpKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6dGhpcy5jZT1udWxsLHRoaXMub2U9ITAsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsMywsN10pLFs0LG4uY29sbGVjdEdhcmJhZ2UodGhpcy5nYXJiYWdlQ29sbGVjdG9yKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbMyw3XTtjYXNlIDM6cmV0dXJuIGJJKGU9dC5zZW50KCkpPyhWeSgiTHJ1R2FyYmFnZUNvbGxlY3RvciIsIklnbm9yaW5nIEluZGV4ZWREQiBlcnJvciBkdXJpbmcgZ2FyYmFnZSBjb2xsZWN0aW9uOiAiLGUpLFszLDZdKTpbMyw0XTtjYXNlIDQ6cmV0dXJuWzQsX1QoZSldO2Nhc2UgNTp0LnNlbnQoKSx0LmxhYmVsPTY7Y2FzZSA2OnJldHVyblszLDddO2Nhc2UgNzpyZXR1cm5bNCx0aGlzLnVlKG4pXTtjYXNlIDg6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSl9LGtUKSxTVD0oQVQucHJvdG90eXBlLmNhbGN1bGF0ZVRhcmdldENvdW50PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuYWUuaGUodCkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gTWF0aC5mbG9vcihlLzEwMCp0KX0pfSxBVC5wcm90b3R5cGUubnRoU2VxdWVuY2VOdW1iZXI9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO2lmKDA9PT1lKXJldHVybiB1SS5yZXNvbHZlKER5Lm8pO3ZhciByPW5ldyBUVChlKTtyZXR1cm4gdGhpcy5hZS5mb3JFYWNoVGFyZ2V0KHQsZnVuY3Rpb24odCl7cmV0dXJuIHIucmUodC5zZXF1ZW5jZU51bWJlcil9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG4uYWUubGUodCxmdW5jdGlvbih0KXtyZXR1cm4gci5yZSh0KX0pfSkubmV4dChmdW5jdGlvbigpe3JldHVybiByLm1heFZhbHVlfSl9LEFULnByb3RvdHlwZS5yZW1vdmVUYXJnZXRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdGhpcy5hZS5yZW1vdmVUYXJnZXRzKHQsZSxuKX0sQVQucHJvdG90eXBlLnJlbW92ZU9ycGhhbmVkRG9jdW1lbnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuYWUucmVtb3ZlT3JwaGFuZWREb2N1bWVudHModCxlKX0sQVQucHJvdG90eXBlLmNvbGxlY3Q9ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO3JldHVybi0xPT09dGhpcy5wYXJhbXMuY2FjaGVTaXplQ29sbGVjdGlvblRocmVzaG9sZD8oVnkoIkxydUdhcmJhZ2VDb2xsZWN0b3IiLCJHYXJiYWdlIGNvbGxlY3Rpb24gc2tpcHBlZDsgZGlzYWJsZWQiKSx1SS5yZXNvbHZlKHJUKSk6dGhpcy5nZXRDYWNoZVNpemUoZSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdDxyLnBhcmFtcy5jYWNoZVNpemVDb2xsZWN0aW9uVGhyZXNob2xkPyhWeSgiTHJ1R2FyYmFnZUNvbGxlY3RvciIsIkdhcmJhZ2UgY29sbGVjdGlvbiBza2lwcGVkOyBDYWNoZSBzaXplICIrdCsiIGlzIGxvd2VyIHRoYW4gdGhyZXNob2xkICIrci5wYXJhbXMuY2FjaGVTaXplQ29sbGVjdGlvblRocmVzaG9sZCksclQpOnIuZmUoZSxuKX0pfSxBVC5wcm90b3R5cGUuZ2V0Q2FjaGVTaXplPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmFlLmdldENhY2hlU2l6ZSh0KX0sQVQucHJvdG90eXBlLmZlPWZ1bmN0aW9uKGUsbil7dmFyIHIsaSxvLHMsYSx1LGMsaD10aGlzLGw9RGF0ZS5ub3coKTtyZXR1cm4gdGhpcy5jYWxjdWxhdGVUYXJnZXRDb3VudChlLHRoaXMucGFyYW1zLnBlcmNlbnRpbGVUb0NvbGxlY3QpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIGk9dD5oLnBhcmFtcy5tYXhpbXVtU2VxdWVuY2VOdW1iZXJzVG9Db2xsZWN0PyhWeSgiTHJ1R2FyYmFnZUNvbGxlY3RvciIsIkNhcHBpbmcgc2VxdWVuY2UgbnVtYmVycyB0byBjb2xsZWN0IGRvd24gdG8gdGhlIG1heGltdW0gb2YgIitoLnBhcmFtcy5tYXhpbXVtU2VxdWVuY2VOdW1iZXJzVG9Db2xsZWN0KyIgZnJvbSAiK3QpLGgucGFyYW1zLm1heGltdW1TZXF1ZW5jZU51bWJlcnNUb0NvbGxlY3QpOnQscz1EYXRlLm5vdygpLGgubnRoU2VxdWVuY2VOdW1iZXIoZSxpKX0pLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHI9dCxhPURhdGUubm93KCksaC5yZW1vdmVUYXJnZXRzKGUscixuKX0pLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIG89dCx1PURhdGUubm93KCksaC5yZW1vdmVPcnBoYW5lZERvY3VtZW50cyhlLHIpfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gYz1EYXRlLm5vdygpLHF5KCk8PWFzLkRFQlVHJiZWeSgiTHJ1R2FyYmFnZUNvbGxlY3RvciIsIkxSVSBHYXJiYWdlIENvbGxlY3Rpb25cblx0Q291bnRlZCB0YXJnZXRzIGluICIrKHMtbCkrIm1zXG5cdERldGVybWluZWQgbGVhc3QgcmVjZW50bHkgdXNlZCAiK2krIiBpbiAiKyhhLXMpKyJtc1xuXHRSZW1vdmVkICIrbysiIHRhcmdldHMgaW4gIisodS1hKSsibXNcblx0UmVtb3ZlZCAiK3QrIiBkb2N1bWVudHMgaW4gIisoYy11KSsibXNcblRvdGFsIER1cmF0aW9uOiAiKyhjLWwpKyJtcyIpLHVJLnJlc29sdmUoe2RpZFJ1bjohMCxzZXF1ZW5jZU51bWJlcnNDb2xsZWN0ZWQ6aSx0YXJnZXRzUmVtb3ZlZDpvLGRvY3VtZW50c1JlbW92ZWQ6dH0pfSl9LEFUKSxDVD0oTlQucHJvdG90eXBlLmhlPWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXMuZGUodCk7cmV0dXJuIHRoaXMuZGIuZ2V0VGFyZ2V0Q2FjaGUoKS5nZXRUYXJnZXRDb3VudCh0KS5uZXh0KGZ1bmN0aW9uKGUpe3JldHVybiBuLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIGUrdH0pfSl9LE5ULnByb3RvdHlwZS5kZT1mdW5jdGlvbih0KXt2YXIgZT0wO3JldHVybiB0aGlzLmxlKHQsZnVuY3Rpb24odCl7ZSsrfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBlfSl9LE5ULnByb3RvdHlwZS5mb3JFYWNoVGFyZ2V0PWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuZGIuZ2V0VGFyZ2V0Q2FjaGUoKS5mb3JFYWNoVGFyZ2V0KHQsZSl9LE5ULnByb3RvdHlwZS5sZT1mdW5jdGlvbih0LG4pe3JldHVybiB0aGlzLndlKHQsZnVuY3Rpb24odCxlKXtyZXR1cm4gbihlKX0pfSxOVC5wcm90b3R5cGUuYWRkUmVmZXJlbmNlPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gUFQodCxuKX0sTlQucHJvdG90eXBlLnJlbW92ZVJlZmVyZW5jZT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIFBUKHQsbil9LE5ULnByb3RvdHlwZS5yZW1vdmVUYXJnZXRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdGhpcy5kYi5nZXRUYXJnZXRDYWNoZSgpLnJlbW92ZVRhcmdldHModCxlLG4pfSxOVC5wcm90b3R5cGUubWFya1BvdGVudGlhbGx5T3JwaGFuZWQ9UFQsTlQucHJvdG90eXBlLl9lPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHI9ZSxpPSExLHBUKG49dCkuJHQoZnVuY3Rpb24odCl7cmV0dXJuIGhUKG4sdCxyKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0JiYoaT0hMCksdUkucmVzb2x2ZSghdCl9KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gaX0pO3ZhciBuLHIsaX0sTlQucHJvdG90eXBlLnJlbW92ZU9ycGhhbmVkRG9jdW1lbnRzPWZ1bmN0aW9uKG4scil7dmFyIGk9dGhpcyxvPXRoaXMuZGIuZ2V0UmVtb3RlRG9jdW1lbnRDYWNoZSgpLm5ld0NoYW5nZUJ1ZmZlcigpLHM9W10sYT0wO3JldHVybiB0aGlzLndlKG4sZnVuY3Rpb24oZSx0KXt0PD1yJiYodD1pLl9lKG4sZSkubmV4dChmdW5jdGlvbih0KXtpZighdClyZXR1cm4gYSsrLG8uZ2V0RW50cnkobixlKS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG8ucmVtb3ZlRW50cnkoZSksd1QobikuZGVsZXRlKFswLFVfKGUucGF0aCldKX0pfSkscy5wdXNoKHQpKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gdUkud2FpdEZvcihzKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gby5hcHBseShuKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gYX0pfSxOVC5wcm90b3R5cGUucmVtb3ZlVGFyZ2V0PWZ1bmN0aW9uKHQsZSl7ZT1lLndpdGhTZXF1ZW5jZU51bWJlcih0LmN1cnJlbnRTZXF1ZW5jZU51bWJlcik7cmV0dXJuIHRoaXMuZGIuZ2V0VGFyZ2V0Q2FjaGUoKS51cGRhdGVUYXJnZXREYXRhKHQsZSl9LE5ULnByb3RvdHlwZS51cGRhdGVMaW1ib0RvY3VtZW50PVBULE5ULnByb3RvdHlwZS53ZT1mdW5jdGlvbih0LHIpe3ZhciBpLHQ9d1QodCksbz1EeS5vO3JldHVybiB0Lk90KHtpbmRleDokXy5kb2N1bWVudFRhcmdldHNJbmRleH0sZnVuY3Rpb24odCxlKXt2YXIgbj10WzBdLHQ9KHRbMV0sZS5wYXRoKSxlPWUuc2VxdWVuY2VOdW1iZXI7MD09PW4/KG8hPT1EeS5vJiZyKG5ldyBDbShxXyhpKSksbyksbz1lLGk9dCk6bz1EeS5vfSkubmV4dChmdW5jdGlvbigpe28hPT1EeS5vJiZyKG5ldyBDbShxXyhpKSksbyl9KX0sTlQucHJvdG90eXBlLmdldENhY2hlU2l6ZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5kYi5nZXRSZW1vdGVEb2N1bWVudENhY2hlKCkuZ2V0U2l6ZSh0KX0sTlQpO2Z1bmN0aW9uIE5UKHQsZSl7dGhpcy5kYj10LHRoaXMuZ2FyYmFnZUNvbGxlY3Rvcj1uZXcgU1QodGhpcyxlKX1mdW5jdGlvbiBBVCh0LGUpe3RoaXMuYWU9dCx0aGlzLnBhcmFtcz1lfWZ1bmN0aW9uIGtUKHQsZSl7dGhpcy5nYXJiYWdlQ29sbGVjdG9yPXQsdGhpcy5hc3luY1F1ZXVlPWUsdGhpcy5vZT0hMSx0aGlzLmNlPW51bGx9ZnVuY3Rpb24gUlQodCl7dGhpcy5uZT10LHRoaXMuYnVmZmVyPW5ldyBWdyhJVCksdGhpcy5zZT0wfWZ1bmN0aW9uIFBUKHQsZSl7cmV0dXJuIHdUKHQpLnB1dCgodD10LmN1cnJlbnRTZXF1ZW5jZU51bWJlcixuZXcgJF8oMCxVXyhlLnBhdGgpLHQpKSl9dmFyIE9ULERUPShqVC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMubWFwS2V5Rm4odCksZT10aGlzLmlubmVyW2VdO2lmKHZvaWQgMCE9PWUpZm9yKHZhciBuPTAscj1lO248ci5sZW5ndGg7bisrKXt2YXIgaT1yW25dLG89aVswXSxpPWlbMV07aWYodGhpcy5lcXVhbHNGbihvLHQpKXJldHVybiBpfX0salQucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXtyZXR1cm4gdm9pZCAwIT09dGhpcy5nZXQodCl9LGpULnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLm1hcEtleUZuKHQpLHI9dGhpcy5pbm5lcltuXTtpZih2b2lkIDAhPT1yKXtmb3IodmFyIGk9MDtpPHIubGVuZ3RoO2krKylpZih0aGlzLmVxdWFsc0ZuKHJbaV1bMF0sdCkpcmV0dXJuIHZvaWQocltpXT1bdCxlXSk7ci5wdXNoKFt0LGVdKX1lbHNlIHRoaXMuaW5uZXJbbl09W1t0LGVdXX0salQucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLm1hcEtleUZuKHQpLG49dGhpcy5pbm5lcltlXTtpZih2b2lkIDA9PT1uKXJldHVybiExO2Zvcih2YXIgcj0wO3I8bi5sZW5ndGg7cisrKWlmKHRoaXMuZXF1YWxzRm4obltyXVswXSx0KSlyZXR1cm4gMT09PW4ubGVuZ3RoP2RlbGV0ZSB0aGlzLmlubmVyW2VdOm4uc3BsaWNlKHIsMSksITA7cmV0dXJuITF9LGpULnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKHMpe3JtKHRoaXMuaW5uZXIsZnVuY3Rpb24odCxlKXtmb3IodmFyIG49MCxyPWU7bjxyLmxlbmd0aDtuKyspe3ZhciBpPXJbbl0sbz1pWzBdLGk9aVsxXTtzKG8saSl9fSl9LGpULnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIGltKHRoaXMuaW5uZXIpfSxqVCksU249KFVULnByb3RvdHlwZS5nZXRSZWFkVGltZT1mdW5jdGlvbih0KXt0PXRoaXMuY2hhbmdlcy5nZXQodCk7cmV0dXJuIHQ/dC5yZWFkVGltZTpaeS5taW4oKX0sVVQucHJvdG90eXBlLmFkZEVudHJ5PWZ1bmN0aW9uKHQsZSl7dGhpcy5hc3NlcnROb3RBcHBsaWVkKCksdGhpcy5jaGFuZ2VzLnNldCh0LmtleSx7ZG9jdW1lbnQ6dCxyZWFkVGltZTplfSl9LFVULnByb3RvdHlwZS5yZW1vdmVFbnRyeT1mdW5jdGlvbih0LGUpe3ZvaWQgMD09PWUmJihlPW51bGwpLHRoaXMuYXNzZXJ0Tm90QXBwbGllZCgpLHRoaXMuY2hhbmdlcy5zZXQodCx7ZG9jdW1lbnQ6Qm0ubmV3SW52YWxpZERvY3VtZW50KHQpLHJlYWRUaW1lOmV9KX0sVVQucHJvdG90eXBlLmdldEVudHJ5PWZ1bmN0aW9uKHQsZSl7dGhpcy5hc3NlcnROb3RBcHBsaWVkKCk7dmFyIG49dGhpcy5jaGFuZ2VzLmdldChlKTtyZXR1cm4gdm9pZCAwIT09bj91SS5yZXNvbHZlKG4uZG9jdW1lbnQpOnRoaXMuZ2V0RnJvbUNhY2hlKHQsZSl9LFVULnByb3RvdHlwZS5nZXRFbnRyaWVzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuZ2V0QWxsRnJvbUNhY2hlKHQsZSl9LFVULnByb3RvdHlwZS5hcHBseT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5hc3NlcnROb3RBcHBsaWVkKCksdGhpcy5jaGFuZ2VzQXBwbGllZD0hMCx0aGlzLmFwcGx5Q2hhbmdlcyh0KX0sVVQucHJvdG90eXBlLmFzc2VydE5vdEFwcGxpZWQ9ZnVuY3Rpb24oKXt9LFVUKSx4VD0oRlQucHJvdG90eXBlLmFkZEVudHJ5PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gVlQodCkucHV0KEJUKGUpLG4pfSxGVC5wcm90b3R5cGUucmVtb3ZlRW50cnk9ZnVuY3Rpb24odCxlKXt0PVZUKHQpLGU9QlQoZSk7cmV0dXJuIHQuZGVsZXRlKGUpfSxGVC5wcm90b3R5cGUudXBkYXRlTWV0YWRhdGE9ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO3JldHVybiB0aGlzLmdldE1ldGFkYXRhKGUpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHQuYnl0ZVNpemUrPW4sci5tZShlLHQpfSl9LEZULnByb3RvdHlwZS5nZXRFbnRyeT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuIFZUKHQpLmdldChCVChlKSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gbi55ZShlLHQpfSl9LEZULnByb3RvdHlwZS5nZT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuIFZUKHQpLmdldChCVChlKSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm57ZG9jdW1lbnQ6bi55ZShlLHQpLHNpemU6YVQodCl9fSl9LEZULnByb3RvdHlwZS5nZXRFbnRyaWVzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcyxyPUt3O3JldHVybiB0aGlzLnBlKHQsZSxmdW5jdGlvbih0LGUpe2U9bi55ZSh0LGUpO3I9ci5pbnNlcnQodCxlKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gcn0pfSxGVC5wcm90b3R5cGUuRWU9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLGk9S3csbz1uZXcgeHcoQ20uY29tcGFyYXRvcik7cmV0dXJuIHRoaXMucGUodCxlLGZ1bmN0aW9uKHQsZSl7dmFyIG49ci55ZSh0LGUpO2k9aS5pbnNlcnQodCxuKSxvPW8uaW5zZXJ0KHQsYVQoZSkpfSkubmV4dChmdW5jdGlvbigpe3JldHVybntkb2N1bWVudHM6aSxUZTpvfX0pfSxGVC5wcm90b3R5cGUucGU9ZnVuY3Rpb24odCxlLGkpe2lmKGUuaXNFbXB0eSgpKXJldHVybiB1SS5yZXNvbHZlKCk7dmFyIG49SURCS2V5UmFuZ2UuYm91bmQoZS5maXJzdCgpLnBhdGgudG9BcnJheSgpLGUubGFzdCgpLnBhdGgudG9BcnJheSgpKSxvPWUuZ2V0SXRlcmF0b3IoKSxzPW8uZ2V0TmV4dCgpO3JldHVybiBWVCh0KS5PdCh7cmFuZ2U6bn0sZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcj1DbS5mcm9tU2VnbWVudHModCk7cyYmQ20uY29tcGFyYXRvcihzLHIpPDA7KWkocyxudWxsKSxzPW8uZ2V0TmV4dCgpO3MmJnMuaXNFcXVhbChyKSYmKGkocyxlKSxzPW8uaGFzTmV4dCgpP28uZ2V0TmV4dCgpOm51bGwpLHM/bi5DdChzLnBhdGgudG9BcnJheSgpKTpuLmRvbmUoKX0pLm5leHQoZnVuY3Rpb24oKXtmb3IoO3M7KWkocyxudWxsKSxzPW8uaGFzTmV4dCgpP28uZ2V0TmV4dCgpOm51bGx9KX0sRlQucHJvdG90eXBlLmdldERvY3VtZW50c01hdGNoaW5nUXVlcnk9ZnVuY3Rpb24odCxyLGUpe3ZhciBuLGk9dGhpcyxvPUt3LHM9ci5wYXRoLmxlbmd0aCsxLGE9e307cmV0dXJuIGUuaXNFcXVhbChaeS5taW4oKSk/KG49ci5wYXRoLnRvQXJyYXkoKSxhLnJhbmdlPUlEQktleVJhbmdlLmxvd2VyQm91bmQobikpOihuPXIucGF0aC50b0FycmF5KCksZT1VSShlKSxhLnJhbmdlPUlEQktleVJhbmdlLmxvd2VyQm91bmQoW24sZV0sITApLGEuaW5kZXg9WV8uY29sbGVjdGlvblJlYWRUaW1lSW5kZXgpLFZUKHQpLk90KGEsZnVuY3Rpb24odCxlLG4pe3QubGVuZ3RoPT09cyYmKGU9TUkoaS5SLGUpLHIucGF0aC5pc1ByZWZpeE9mKGUua2V5LnBhdGgpP2piKHIsZSkmJihvPW8uaW5zZXJ0KGUua2V5LGUpKTpuLmRvbmUoKSl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG99KX0sRlQucHJvdG90eXBlLm5ld0NoYW5nZUJ1ZmZlcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IExUKHRoaXMsISF0JiZ0LnRyYWNrUmVtb3ZhbHMpfSxGVC5wcm90b3R5cGUuZ2V0U2l6ZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5nZXRNZXRhZGF0YSh0KS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0LmJ5dGVTaXplfSl9LEZULnByb3RvdHlwZS5nZXRNZXRhZGF0YT1mdW5jdGlvbih0KXtyZXR1cm4gcVQodCkuZ2V0KFhfLmtleSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gR3koISF0KSx0fSl9LEZULnByb3RvdHlwZS5tZT1mdW5jdGlvbih0LGUpe3JldHVybiBxVCh0KS5wdXQoWF8ua2V5LGUpfSxGVC5wcm90b3R5cGUueWU9ZnVuY3Rpb24odCxlKXtpZihlKXtlPU1JKHRoaXMuUixlKTtpZighZS5pc05vRG9jdW1lbnQoKXx8IWUudmVyc2lvbi5pc0VxdWFsKFp5Lm1pbigpKSlyZXR1cm4gZX1yZXR1cm4gQm0ubmV3SW52YWxpZERvY3VtZW50KHQpfSxGVCksTFQ9KFhpKE1ULE9UPVNuKSxNVC5wcm90b3R5cGUuYXBwbHlDaGFuZ2VzPWZ1bmN0aW9uKGkpe3ZhciBvPXRoaXMscz1bXSxhPTAsdT1uZXcgVncoZnVuY3Rpb24odCxlKXtyZXR1cm4gWXkodC5jYW5vbmljYWxTdHJpbmcoKSxlLmNhbm9uaWNhbFN0cmluZygpKX0pO3JldHVybiB0aGlzLmNoYW5nZXMuZm9yRWFjaChmdW5jdGlvbih0LGUpe3ZhciBuLHI9by5BZS5nZXQodCk7ZS5kb2N1bWVudC5pc1ZhbGlkRG9jdW1lbnQoKT8obj1GSShvLkllLlIsZS5kb2N1bWVudCxvLmdldFJlYWRUaW1lKHQpKSx1PXUuYWRkKHQucGF0aC5wb3BMYXN0KCkpLGU9YVQobiksYSs9ZS1yLHMucHVzaChvLkllLmFkZEVudHJ5KGksdCxuKSkpOihhLT1yLG8udHJhY2tSZW1vdmFscz8ocj1GSShvLkllLlIsQm0ubmV3Tm9Eb2N1bWVudCh0LFp5Lm1pbigpKSxvLmdldFJlYWRUaW1lKHQpKSxzLnB1c2goby5JZS5hZGRFbnRyeShpLHQscikpKTpzLnB1c2goby5JZS5yZW1vdmVFbnRyeShpLHQpKSl9KSx1LmZvckVhY2goZnVuY3Rpb24odCl7cy5wdXNoKG8uSWUuVXQuYWRkVG9Db2xsZWN0aW9uUGFyZW50SW5kZXgoaSx0KSl9KSxzLnB1c2godGhpcy5JZS51cGRhdGVNZXRhZGF0YShpLGEpKSx1SS53YWl0Rm9yKHMpfSxNVC5wcm90b3R5cGUuZ2V0RnJvbUNhY2hlPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcztyZXR1cm4gdGhpcy5JZS5nZSh0LGUpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIG4uQWUuc2V0KGUsdC5zaXplKSx0LmRvY3VtZW50fSl9LE1ULnByb3RvdHlwZS5nZXRBbGxGcm9tQ2FjaGU9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLkllLkVlKHQsZSkubmV4dChmdW5jdGlvbih0KXt2YXIgZT10LmRvY3VtZW50cztyZXR1cm4gdC5UZS5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7bi5BZS5zZXQodCxlKX0pLGV9KX0sTVQpO2Z1bmN0aW9uIE1UKHQsZSl7dmFyIG49dGhpcztyZXR1cm4obj1PVC5jYWxsKHRoaXMpfHx0aGlzKS5JZT10LG4udHJhY2tSZW1vdmFscz1lLG4uQWU9bmV3IERUKGZ1bmN0aW9uKHQpe3JldHVybiB0LnRvU3RyaW5nKCl9LGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaXNFcXVhbChlKX0pLG59ZnVuY3Rpb24gRlQodCxlKXt0aGlzLlI9dCx0aGlzLlV0PWV9ZnVuY3Rpb24gVVQoKXt0aGlzLmNoYW5nZXM9bmV3IERUKGZ1bmN0aW9uKHQpe3JldHVybiB0LnRvU3RyaW5nKCl9LGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaXNFcXVhbChlKX0pLHRoaXMuY2hhbmdlc0FwcGxpZWQ9ITF9ZnVuY3Rpb24galQodCxlKXt0aGlzLm1hcEtleUZuPXQsdGhpcy5lcXVhbHNGbj1lLHRoaXMuaW5uZXI9e319ZnVuY3Rpb24gcVQodCl7cmV0dXJuIEFJKHQsWF8uc3RvcmUpfWZ1bmN0aW9uIFZUKHQpe3JldHVybiBBSSh0LFlfLnN0b3JlKX1mdW5jdGlvbiBCVCh0KXtyZXR1cm4gdC5wYXRoLnRvQXJyYXkoKX12YXIgS1Q9KFdULnByb3RvdHlwZS5SdD1mdW5jdGlvbihlLG4sdCxyKXt2YXIgaT10aGlzO0d5KHQ8ciYmMDw9dCYmcjw9MTEpO3ZhciBvPW5ldyBjSSgiY3JlYXRlT3JVcGdyYWRlIixuKTt0PDEmJjE8PXImJihlLmNyZWF0ZU9iamVjdFN0b3JlKFZfLnN0b3JlKSwocz1lKS5jcmVhdGVPYmplY3RTdG9yZShLXy5zdG9yZSx7a2V5UGF0aDpLXy5rZXlQYXRofSkscy5jcmVhdGVPYmplY3RTdG9yZShXXy5zdG9yZSx7a2V5UGF0aDpXXy5rZXlQYXRoLGF1dG9JbmNyZW1lbnQ6ITB9KS5jcmVhdGVJbmRleChXXy51c2VyTXV0YXRpb25zSW5kZXgsV18udXNlck11dGF0aW9uc0tleVBhdGgse3VuaXF1ZTohMH0pLHMuY3JlYXRlT2JqZWN0U3RvcmUoSF8uc3RvcmUpLEhUKGUpLGUuY3JlYXRlT2JqZWN0U3RvcmUoWV8uc3RvcmUpKTt2YXIgcyxhPXVJLnJlc29sdmUoKTtyZXR1cm4gdDwzJiYzPD1yJiYoMCE9PXQmJigocz1lKS5kZWxldGVPYmplY3RTdG9yZSgkXy5zdG9yZSkscy5kZWxldGVPYmplY3RTdG9yZShKXy5zdG9yZSkscy5kZWxldGVPYmplY3RTdG9yZShaXy5zdG9yZSksSFQoZSkpLGE9YS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHQ9by5zdG9yZShaXy5zdG9yZSksZT1uZXcgWl8oMCwwLFp5Lm1pbigpLnRvVGltZXN0YW1wKCksMCksdC5wdXQoWl8ua2V5LGUpO3ZhciB0LGV9KSksdDw0JiY0PD1yJiYoYT0oYT0wIT09dD9hLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gbj1lLChyPW8pLnN0b3JlKFdfLnN0b3JlKS5OdCgpLm5leHQoZnVuY3Rpb24odCl7bi5kZWxldGVPYmplY3RTdG9yZShXXy5zdG9yZSksbi5jcmVhdGVPYmplY3RTdG9yZShXXy5zdG9yZSx7a2V5UGF0aDpXXy5rZXlQYXRoLGF1dG9JbmNyZW1lbnQ6ITB9KS5jcmVhdGVJbmRleChXXy51c2VyTXV0YXRpb25zSW5kZXgsV18udXNlck11dGF0aW9uc0tleVBhdGgse3VuaXF1ZTohMH0pO3ZhciBlPXIuc3RvcmUoV18uc3RvcmUpLHQ9dC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGUucHV0KHQpfSk7cmV0dXJuIHVJLndhaXRGb3IodCl9KTt2YXIgbixyfSk6YSkubmV4dChmdW5jdGlvbigpe2UuY3JlYXRlT2JqZWN0U3RvcmUoZUkuc3RvcmUse2tleVBhdGg6ZUkua2V5UGF0aH0pfSkpLHQ8NSYmNTw9ciYmKGE9YS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGkuUmUobyl9KSksdDw2JiY2PD1yJiYoYT1hLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gZS5jcmVhdGVPYmplY3RTdG9yZShYXy5zdG9yZSksaS5iZShvKX0pKSx0PDcmJjc8PXImJihhPWEubmV4dChmdW5jdGlvbigpe3JldHVybiBpLnZlKG8pfSkpLHQ8OCYmODw9ciYmKGE9YS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGkuUGUoZSxvKX0pKSx0PDkmJjk8PXImJihhPWEubmV4dChmdW5jdGlvbigpe3ZhciB0Oyh0PWUpLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoInJlbW90ZURvY3VtZW50Q2hhbmdlcyIpJiZ0LmRlbGV0ZU9iamVjdFN0b3JlKCJyZW1vdGVEb2N1bWVudENoYW5nZXMiKSwodD1uLm9iamVjdFN0b3JlKFlfLnN0b3JlKSkuY3JlYXRlSW5kZXgoWV8ucmVhZFRpbWVJbmRleCxZXy5yZWFkVGltZUluZGV4UGF0aCx7dW5pcXVlOiExfSksdC5jcmVhdGVJbmRleChZXy5jb2xsZWN0aW9uUmVhZFRpbWVJbmRleCxZXy5jb2xsZWN0aW9uUmVhZFRpbWVJbmRleFBhdGgse3VuaXF1ZTohMX0pfSkpLHQ8MTAmJjEwPD1yJiYoYT1hLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gaS5WZShvKX0pKSxhPXQ8MTEmJjExPD1yP2EubmV4dChmdW5jdGlvbigpe2UuY3JlYXRlT2JqZWN0U3RvcmUobkkuc3RvcmUse2tleVBhdGg6bkkua2V5UGF0aH0pLGUuY3JlYXRlT2JqZWN0U3RvcmUockkuc3RvcmUse2tleVBhdGg6ckkua2V5UGF0aH0pfSk6YX0sV1QucHJvdG90eXBlLmJlPWZ1bmN0aW9uKGUpe3ZhciBuPTA7cmV0dXJuIGUuc3RvcmUoWV8uc3RvcmUpLk90KGZ1bmN0aW9uKHQsZSl7bis9YVQoZSl9KS5uZXh0KGZ1bmN0aW9uKCl7dmFyIHQ9bmV3IFhfKG4pO3JldHVybiBlLnN0b3JlKFhfLnN0b3JlKS5wdXQoWF8ua2V5LHQpfSl9LFdULnByb3RvdHlwZS5SZT1mdW5jdGlvbihuKXt2YXIgcj10aGlzLHQ9bi5zdG9yZShLXy5zdG9yZSksaT1uLnN0b3JlKFdfLnN0b3JlKTtyZXR1cm4gdC5OdCgpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHVJLmZvckVhY2godCxmdW5jdGlvbihlKXt2YXIgdD1JREJLZXlSYW5nZS5ib3VuZChbZS51c2VySWQsLTFdLFtlLnVzZXJJZCxlLmxhc3RBY2tub3dsZWRnZWRCYXRjaElkXSk7cmV0dXJuIGkuTnQoV18udXNlck11dGF0aW9uc0luZGV4LHQpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHVJLmZvckVhY2godCxmdW5jdGlvbih0KXtHeSh0LnVzZXJJZD09PWUudXNlcklkKTt0PUJJKHIuUix0KTtyZXR1cm4gc1QobixlLnVzZXJJZCx0KS5uZXh0KGZ1bmN0aW9uKCl7fSl9KX0pfSl9KX0sV1QucHJvdG90eXBlLnZlPWZ1bmN0aW9uKHQpe3ZhciBvPXQuc3RvcmUoJF8uc3RvcmUpLGU9dC5zdG9yZShZXy5zdG9yZSk7cmV0dXJuIHQuc3RvcmUoWl8uc3RvcmUpLmdldChaXy5rZXkpLm5leHQoZnVuY3Rpb24ocil7dmFyIGk9W107cmV0dXJuIGUuT3QoZnVuY3Rpb24odCxlKXt2YXIgbj1uZXcgYW0odCksdD1bMCxVXyhuKV07aS5wdXNoKG8uZ2V0KHQpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHQ/dUkucmVzb2x2ZSgpOm8ucHV0KG5ldyAkXygwLFVfKG4pLHIuaGlnaGVzdExpc3RlblNlcXVlbmNlTnVtYmVyKSl9KSl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHVJLndhaXRGb3IoaSl9KX0pfSxXVC5wcm90b3R5cGUuUGU9ZnVuY3Rpb24odCxlKXt0LmNyZWF0ZU9iamVjdFN0b3JlKHRJLnN0b3JlLHtrZXlQYXRoOnRJLmtleVBhdGh9KTtmdW5jdGlvbiByKHQpe2lmKGkuYWRkKHQpKXt2YXIgZT10Lmxhc3RTZWdtZW50KCksdD10LnBvcExhc3QoKTtyZXR1cm4gbi5wdXQoe2NvbGxlY3Rpb25JZDplLHBhcmVudDpVXyh0KX0pfX12YXIgbj1lLnN0b3JlKHRJLnN0b3JlKSxpPW5ldyBKSTtyZXR1cm4gZS5zdG9yZShZXy5zdG9yZSkuT3Qoe2t0OiEwfSxmdW5jdGlvbih0LGUpe3Q9bmV3IGFtKHQpO3JldHVybiByKHQucG9wTGFzdCgpKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gZS5zdG9yZShIXy5zdG9yZSkuT3Qoe2t0OiEwfSxmdW5jdGlvbih0LGUpe3RbMF07dmFyIG49dFsxXSxuPSh0WzJdLHFfKG4pKTtyZXR1cm4gcihuLnBvcExhc3QoKSl9KX0pfSxXVC5wcm90b3R5cGUuVmU9ZnVuY3Rpb24odCl7dmFyIG49dGhpcyxyPXQuc3RvcmUoSl8uc3RvcmUpO3JldHVybiByLk90KGZ1bmN0aW9uKHQsZSl7ZT1LSShlKSxlPVdJKG4uUixlKTtyZXR1cm4gci5wdXQoZSl9KX0sV1QpO2Z1bmN0aW9uIFdUKHQpe3RoaXMuUj10fWZ1bmN0aW9uIEhUKHQpe3QuY3JlYXRlT2JqZWN0U3RvcmUoJF8uc3RvcmUse2tleVBhdGg6JF8ua2V5UGF0aH0pLmNyZWF0ZUluZGV4KCRfLmRvY3VtZW50VGFyZ2V0c0luZGV4LCRfLmRvY3VtZW50VGFyZ2V0c0tleVBhdGgse3VuaXF1ZTohMH0pLHQuY3JlYXRlT2JqZWN0U3RvcmUoSl8uc3RvcmUse2tleVBhdGg6Sl8ua2V5UGF0aH0pLmNyZWF0ZUluZGV4KEpfLnF1ZXJ5VGFyZ2V0c0luZGV4TmFtZSxKXy5xdWVyeVRhcmdldHNLZXlQYXRoLHt1bmlxdWU6ITB9KSx0LmNyZWF0ZU9iamVjdFN0b3JlKFpfLnN0b3JlKX12YXIgR1Q9IkZhaWxlZCB0byBvYnRhaW4gZXhjbHVzaXZlIGFjY2VzcyB0byB0aGUgcGVyc2lzdGVuY2UgbGF5ZXIuIFRvIGFsbG93IHNoYXJlZCBhY2Nlc3MsIG11bHRpLXRhYiBzeW5jaHJvbml6YXRpb24gaGFzIHRvIGJlIGVuYWJsZWQgaW4gYWxsIHRhYnMuIElmIHlvdSBhcmUgdXNpbmcgYGV4cGVyaW1lbnRhbEZvcmNlT3duaW5nVGFiOnRydWVgLCBtYWtlIHN1cmUgdGhhdCBvbmx5IG9uZSB0YWIgaGFzIHBlcnNpc3RlbmNlIGVuYWJsZWQgYXQgYW55IGdpdmVuIHRpbWUuIix6VD0oUVQucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5qZSgpLnRoZW4oZnVuY3Rpb24oKXtpZighZS5pc1ByaW1hcnkmJiFlLmFsbG93VGFiU3luY2hyb25pemF0aW9uKXRocm93IG5ldyBGeShNeS5GQUlMRURfUFJFQ09ORElUSU9OLEdUKTtyZXR1cm4gZS5XZSgpLGUuR2UoKSxlLnplKCksZS5ydW5UcmFuc2FjdGlvbigiZ2V0SGlnaGVzdExpc3RlblNlcXVlbmNlTnVtYmVyIiwicmVhZG9ubHkiLGZ1bmN0aW9uKHQpe3JldHVybiBlLnFlLmdldEhpZ2hlc3RTZXF1ZW5jZU51bWJlcih0KX0pfSkudGhlbihmdW5jdGlvbih0KXtlLk5lPW5ldyBEeSh0LGUuRGUpfSkudGhlbihmdW5jdGlvbigpe2UueGU9ITB9KS5jYXRjaChmdW5jdGlvbih0KXtyZXR1cm4gZS5CZSYmZS5CZS5jbG9zZSgpLFByb21pc2UucmVqZWN0KHQpfSl9LFFULnByb3RvdHlwZS5IZT1mdW5jdGlvbihuKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLk1lPWZ1bmN0aW9uKGUpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5zdGFydGVkP1syLG4oZSldOlsyXX0pfSl9LG4odGhpcy5pc1ByaW1hcnkpfSxRVC5wcm90b3R5cGUuc2V0RGF0YWJhc2VEZWxldGVkTGlzdGVuZXI9ZnVuY3Rpb24obil7dmFyIHQ9dGhpczt0aGlzLkJlLnZ0KGZ1bmN0aW9uKGUpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBudWxsPT09ZS5uZXdWZXJzaW9uP1s0LG4oKV06WzMsMl07Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzJdfX0pfSl9KX0sUVQucHJvdG90eXBlLnNldE5ldHdvcmtFbmFibGVkPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5uZXR3b3JrRW5hYmxlZCE9PXQmJih0aGlzLm5ldHdvcmtFbmFibGVkPXQsdGhpcy5TZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuICRpKGUsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHRoaXMuc3RhcnRlZD9bNCx0aGlzLmplKCldOlszLDJdO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyXX19KX0pfSkpfSxRVC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLnJ1blRyYW5zYWN0aW9uKCJ1cGRhdGVDbGllbnRNZXRhZGF0YUFuZFRyeUJlY29tZVByaW1hcnkiLCJyZWFkd3JpdGUiLGZ1bmN0aW9uKGUpe3JldHVybiBYVChlKS5wdXQobmV3IGVJKG4uY2xpZW50SWQsRGF0ZS5ub3coKSxuLm5ldHdvcmtFbmFibGVkLG4uaW5Gb3JlZ3JvdW5kKSkubmV4dChmdW5jdGlvbigpe2lmKG4uaXNQcmltYXJ5KXJldHVybiBuLkplKGUpLm5leHQoZnVuY3Rpb24odCl7dHx8KG4uaXNQcmltYXJ5PSExLG4uU2UuZW5xdWV1ZVJldHJ5YWJsZShmdW5jdGlvbigpe3JldHVybiBuLk1lKCExKX0pKX0pfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBuLlllKGUpfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gbi5pc1ByaW1hcnkmJiF0P24uWGUoZSkubmV4dChmdW5jdGlvbigpe3JldHVybiExfSk6ISF0JiZuLlplKGUpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4hMH0pfSl9KS5jYXRjaChmdW5jdGlvbih0KXtpZihiSSh0KSlyZXR1cm4gVnkoIkluZGV4ZWREYlBlcnNpc3RlbmNlIiwiRmFpbGVkIHRvIGV4dGVuZCBvd25lciBsZWFzZTogIix0KSxuLmlzUHJpbWFyeTtpZighbi5hbGxvd1RhYlN5bmNocm9uaXphdGlvbil0aHJvdyB0O3JldHVybiBWeSgiSW5kZXhlZERiUGVyc2lzdGVuY2UiLCJSZWxlYXNpbmcgb3duZXIgbGVhc2UgYWZ0ZXIgZXJyb3IgZHVyaW5nIGxlYXNlIHJlZnJlc2giLHQpLCExfSkudGhlbihmdW5jdGlvbih0KXtuLmlzUHJpbWFyeSE9PXQmJm4uU2UuZW5xdWV1ZVJldHJ5YWJsZShmdW5jdGlvbigpe3JldHVybiBuLk1lKHQpfSksbi5pc1ByaW1hcnk9dH0pfSxRVC5wcm90b3R5cGUuSmU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gWVQodCkuZ2V0KFZfLmtleSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdUkucmVzb2x2ZShlLnRuKHQpKX0pfSxRVC5wcm90b3R5cGUuZW49ZnVuY3Rpb24odCl7cmV0dXJuIFhUKHQpLmRlbGV0ZSh0aGlzLmNsaWVudElkKX0sUVQucHJvdG90eXBlLm5uPWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpLG89dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiF0aGlzLmlzUHJpbWFyeXx8dGhpcy5zbih0aGlzLiRlLDE4ZTUpP1szLDJdOih0aGlzLiRlPURhdGUubm93KCksWzQsdGhpcy5ydW5UcmFuc2FjdGlvbigibWF5YmVHYXJiYWdlQ29sbGVjdE11bHRpQ2xpZW50U3RhdGUiLCJyZWFkd3JpdGUtcHJpbWFyeSIsZnVuY3Rpb24odCl7dmFyIHI9QUkodCxlSS5zdG9yZSk7cmV0dXJuIHIuTnQoKS5uZXh0KGZ1bmN0aW9uKHQpe3ZhciBlPW8ucm4odCwxOGU1KSxuPXQuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybi0xPT09ZS5pbmRleE9mKHQpfSk7cmV0dXJuIHVJLmZvckVhY2gobixmdW5jdGlvbih0KXtyZXR1cm4gci5kZWxldGUodC5jbGllbnRJZCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG59KX0pfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm5bXX0pXSk7Y2FzZSAxOmlmKGU9dC5zZW50KCksdGhpcy5LZSlmb3Iobj0wLHI9ZTtuPHIubGVuZ3RoO24rKylpPXJbbl0sdGhpcy5LZS5yZW1vdmVJdGVtKHRoaXMub24oaS5jbGllbnRJZCkpO3QubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzJdfX0pfSl9LFFULnByb3RvdHlwZS56ZT1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5PZT10aGlzLlNlLmVucXVldWVBZnRlckRlbGF5KCJjbGllbnRfbWV0YWRhdGFfcmVmcmVzaCIsNGUzLGZ1bmN0aW9uKCl7cmV0dXJuIHQuamUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHQubm4oKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdC56ZSgpfSl9KX0sUVQucHJvdG90eXBlLnRuPWZ1bmN0aW9uKHQpe3JldHVybiEhdCYmdC5vd25lcklkPT09dGhpcy5jbGllbnRJZH0sUVQucHJvdG90eXBlLlllPWZ1bmN0aW9uKGUpe3ZhciByPXRoaXM7cmV0dXJuIHRoaXMuQ2U/dUkucmVzb2x2ZSghMCk6WVQoZSkuZ2V0KFZfLmtleSkubmV4dChmdW5jdGlvbih0KXtpZihudWxsIT09dCYmci5zbih0LmxlYXNlVGltZXN0YW1wTXMsNWUzKSYmIXIuY24odC5vd25lcklkKSl7aWYoci50bih0KSYmci5uZXR3b3JrRW5hYmxlZClyZXR1cm4hMDtpZighci50bih0KSl7aWYoIXQuYWxsb3dUYWJTeW5jaHJvbml6YXRpb24pdGhyb3cgbmV3IEZ5KE15LkZBSUxFRF9QUkVDT05ESVRJT04sR1QpO3JldHVybiExfX1yZXR1cm4hKCFyLm5ldHdvcmtFbmFibGVkfHwhci5pbkZvcmVncm91bmQpfHxYVChlKS5OdCgpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMD09PXIucm4odCw1ZTMpLmZpbmQoZnVuY3Rpb24odCl7aWYoci5jbGllbnRJZCE9PXQuY2xpZW50SWQpe3ZhciBlPSFyLm5ldHdvcmtFbmFibGVkJiZ0Lm5ldHdvcmtFbmFibGVkLG49IXIuaW5Gb3JlZ3JvdW5kJiZ0LmluRm9yZWdyb3VuZCx0PXIubmV0d29ya0VuYWJsZWQ9PT10Lm5ldHdvcmtFbmFibGVkO2lmKGV8fG4mJnQpcmV0dXJuITB9cmV0dXJuITF9KX0pfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gci5pc1ByaW1hcnkhPT10JiZWeSgiSW5kZXhlZERiUGVyc2lzdGVuY2UiLCJDbGllbnQgIisodD8iaXMiOiJpcyBub3QiKSsiIGVsaWdpYmxlIGZvciBhIHByaW1hcnkgbGVhc2UuIiksdH0pfSxRVC5wcm90b3R5cGUuc2h1dGRvd249ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG49dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLnhlPSExLHRoaXMudW4oKSx0aGlzLk9lJiYodGhpcy5PZS5jYW5jZWwoKSx0aGlzLk9lPW51bGwpLHRoaXMuYW4oKSx0aGlzLmhuKCksWzQsdGhpcy5CZS5ydW5UcmFuc2FjdGlvbigic2h1dGRvd24iLCJyZWFkd3JpdGUiLFtWXy5zdG9yZSxlSS5zdG9yZV0sZnVuY3Rpb24odCl7dmFyIGU9bmV3IENJKHQsRHkubyk7cmV0dXJuIG4uWGUoZSkubmV4dChmdW5jdGlvbigpe3JldHVybiBuLmVuKGUpfSl9KV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSx0aGlzLkJlLmNsb3NlKCksdGhpcy5sbigpLFsyXX19KX0pfSxRVC5wcm90b3R5cGUucm49ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0LmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gbi5zbih0LnVwZGF0ZVRpbWVNcyxlKSYmIW4uY24odC5jbGllbnRJZCl9KX0sUVQucHJvdG90eXBlLmZuPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5ydW5UcmFuc2FjdGlvbigiZ2V0QWN0aXZlQ2xpZW50cyIsInJlYWRvbmx5IixmdW5jdGlvbih0KXtyZXR1cm4gWFQodCkuTnQoKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBlLnJuKHQsMThlNSkubWFwKGZ1bmN0aW9uKHQpe3JldHVybiB0LmNsaWVudElkfSl9KX0pfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoUVQucHJvdG90eXBlLCJzdGFydGVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksUVQucHJvdG90eXBlLmdldE11dGF0aW9uUXVldWU9ZnVuY3Rpb24odCl7cmV0dXJuIHVULkt0KHQsdGhpcy5SLHRoaXMuVXQsdGhpcy5yZWZlcmVuY2VEZWxlZ2F0ZSl9LFFULnByb3RvdHlwZS5nZXRUYXJnZXRDYWNoZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnFlfSxRVC5wcm90b3R5cGUuZ2V0UmVtb3RlRG9jdW1lbnRDYWNoZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlVlfSxRVC5wcm90b3R5cGUuZ2V0SW5kZXhNYW5hZ2VyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVXR9LFFULnByb3RvdHlwZS5nZXRCdW5kbGVDYWNoZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlFlfSxRVC5wcm90b3R5cGUucnVuVHJhbnNhY3Rpb249ZnVuY3Rpb24oZSxuLHIpe3ZhciBpPXRoaXM7VnkoIkluZGV4ZWREYlBlcnNpc3RlbmNlIiwiU3RhcnRpbmcgdHJhbnNhY3Rpb246IixlKTt2YXIgbyx0PSJyZWFkb25seSI9PT1uPyJyZWFkb25seSI6InJlYWR3cml0ZSI7cmV0dXJuIHRoaXMuQmUucnVuVHJhbnNhY3Rpb24oZSx0LG9JLGZ1bmN0aW9uKHQpe3JldHVybiBvPW5ldyBDSSh0LGkuTmU/aS5OZS5uZXh0KCk6RHkubyksInJlYWR3cml0ZS1wcmltYXJ5Ij09PW4/aS5KZShvKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiEhdHx8aS5ZZShvKX0pLm5leHQoZnVuY3Rpb24odCl7aWYoIXQpdGhyb3cgQnkoIkZhaWxlZCB0byBvYnRhaW4gcHJpbWFyeSBsZWFzZSBmb3IgYWN0aW9uICciK2UrIicuIiksaS5pc1ByaW1hcnk9ITEsaS5TZS5lbnF1ZXVlUmV0cnlhYmxlKGZ1bmN0aW9uKCl7cmV0dXJuIGkuTWUoITEpfSksbmV3IEZ5KE15LkZBSUxFRF9QUkVDT05ESVRJT04sc0kpO3JldHVybiByKG8pfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gaS5aZShvKS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHR9KX0pOmkuZG4obykubmV4dChmdW5jdGlvbigpe3JldHVybiByKG8pfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBvLnJhaXNlT25Db21taXR0ZWRFdmVudCgpLHR9KX0sUVQucHJvdG90eXBlLmRuPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIFlUKHQpLmdldChWXy5rZXkpLm5leHQoZnVuY3Rpb24odCl7aWYobnVsbCE9PXQmJmUuc24odC5sZWFzZVRpbWVzdGFtcE1zLDVlMykmJiFlLmNuKHQub3duZXJJZCkmJiFlLnRuKHQpJiYhKGUuQ2V8fGUuYWxsb3dUYWJTeW5jaHJvbml6YXRpb24mJnQuYWxsb3dUYWJTeW5jaHJvbml6YXRpb24pKXRocm93IG5ldyBGeShNeS5GQUlMRURfUFJFQ09ORElUSU9OLEdUKX0pfSxRVC5wcm90b3R5cGUuWmU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IFZfKHRoaXMuY2xpZW50SWQsdGhpcy5hbGxvd1RhYlN5bmNocm9uaXphdGlvbixEYXRlLm5vdygpKTtyZXR1cm4gWVQodCkucHV0KFZfLmtleSxlKX0sUVQueXQ9ZnVuY3Rpb24oKXtyZXR1cm4gaEkueXQoKX0sUVQucHJvdG90eXBlLlhlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj1ZVCh0KTtyZXR1cm4gbi5nZXQoVl8ua2V5KS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBlLnRuKHQpPyhWeSgiSW5kZXhlZERiUGVyc2lzdGVuY2UiLCJSZWxlYXNpbmcgcHJpbWFyeSBsZWFzZS4iKSxuLmRlbGV0ZShWXy5rZXkpKTp1SS5yZXNvbHZlKCl9KX0sUVQucHJvdG90eXBlLnNuPWZ1bmN0aW9uKHQsZSl7dmFyIG49RGF0ZS5ub3coKTtyZXR1cm4hKHQ8bi1lfHxuPHQmJihCeSgiRGV0ZWN0ZWQgYW4gdXBkYXRlIHRpbWUgdGhhdCBpcyBpbiB0aGUgZnV0dXJlOiAiK3QrIiA+ICIrbiksMSkpfSxRVC5wcm90b3R5cGUuV2U9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO251bGwhPT10aGlzLmRvY3VtZW50JiYiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyJiYodGhpcy5rZT1mdW5jdGlvbigpe3QuU2UuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiB0LmluRm9yZWdyb3VuZD0idmlzaWJsZSI9PT10LmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSx0LmplKCl9KX0sdGhpcy5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLmtlKSx0aGlzLmluRm9yZWdyb3VuZD0idmlzaWJsZSI9PT10aGlzLmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSl9LFFULnByb3RvdHlwZS5hbj1mdW5jdGlvbigpe3RoaXMua2UmJih0aGlzLmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMua2UpLHRoaXMua2U9bnVsbCl9LFFULnByb3RvdHlwZS5HZT1mdW5jdGlvbigpe3ZhciB0LGU9dGhpczsiZnVuY3Rpb24iPT10eXBlb2YobnVsbD09PSh0PXRoaXMud2luZG93KXx8dm9pZCAwPT09dD92b2lkIDA6dC5hZGRFdmVudExpc3RlbmVyKSYmKHRoaXMuRmU9ZnVuY3Rpb24oKXtlLnVuKCksZS5TZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuIGUuc2h1dGRvd24oKX0pfSx0aGlzLndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ1bmxvYWQiLHRoaXMuRmUpKX0sUVQucHJvdG90eXBlLmhuPWZ1bmN0aW9uKCl7dGhpcy5GZSYmKHRoaXMud2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInVubG9hZCIsdGhpcy5GZSksdGhpcy5GZT1udWxsKX0sUVQucHJvdG90eXBlLmNuPWZ1bmN0aW9uKHQpe3RyeXt2YXIgZT1udWxsIT09KG51bGw9PT0oZT10aGlzLktlKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5nZXRJdGVtKHRoaXMub24odCkpKTtyZXR1cm4gVnkoIkluZGV4ZWREYlBlcnNpc3RlbmNlIiwiQ2xpZW50ICciK3QrIicgIisoZT8iaXMiOiJpcyBub3QiKSsiIHpvbWJpZWQgaW4gTG9jYWxTdG9yYWdlIiksZX1jYXRjaCh0KXtyZXR1cm4gQnkoIkluZGV4ZWREYlBlcnNpc3RlbmNlIiwiRmFpbGVkIHRvIGdldCB6b21iaWVkIGNsaWVudCBpZC4iLHQpLCExfX0sUVQucHJvdG90eXBlLnVuPWZ1bmN0aW9uKCl7aWYodGhpcy5LZSl0cnl7dGhpcy5LZS5zZXRJdGVtKHRoaXMub24odGhpcy5jbGllbnRJZCksU3RyaW5nKERhdGUubm93KCkpKX1jYXRjaCh0KXtCeSgiRmFpbGVkIHRvIHNldCB6b21iaWUgY2xpZW50IGlkLiIsdCl9fSxRVC5wcm90b3R5cGUubG49ZnVuY3Rpb24oKXtpZih0aGlzLktlKXRyeXt0aGlzLktlLnJlbW92ZUl0ZW0odGhpcy5vbih0aGlzLmNsaWVudElkKSl9Y2F0Y2godCl7fX0sUVQucHJvdG90eXBlLm9uPWZ1bmN0aW9uKHQpe3JldHVybiJmaXJlc3RvcmVfem9tYmllXyIrdGhpcy5wZXJzaXN0ZW5jZUtleSsiXyIrdH0sUVQpO2Z1bmN0aW9uIFFUKHQsZSxuLHIsaSxvLHMsYSx1LGMpe2lmKHRoaXMuYWxsb3dUYWJTeW5jaHJvbml6YXRpb249dCx0aGlzLnBlcnNpc3RlbmNlS2V5PWUsdGhpcy5jbGllbnRJZD1uLHRoaXMuU2U9aSx0aGlzLndpbmRvdz1vLHRoaXMuZG9jdW1lbnQ9cyx0aGlzLkRlPXUsdGhpcy5DZT1jLHRoaXMuTmU9bnVsbCx0aGlzLnhlPSExLHRoaXMuaXNQcmltYXJ5PSExLHRoaXMubmV0d29ya0VuYWJsZWQ9ITAsdGhpcy5GZT1udWxsLHRoaXMuaW5Gb3JlZ3JvdW5kPSExLHRoaXMua2U9bnVsbCx0aGlzLk9lPW51bGwsdGhpcy4kZT1OdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFksdGhpcy5NZT1mdW5jdGlvbih0KXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCl9LCFRVC55dCgpKXRocm93IG5ldyBGeShNeS5VTklNUExFTUVOVEVELCJUaGlzIHBsYXRmb3JtIGlzIGVpdGhlciBtaXNzaW5nIEluZGV4ZWREQiBvciBpcyBrbm93biB0byBoYXZlIGFuIGluY29tcGxldGUgaW1wbGVtZW50YXRpb24uIE9mZmxpbmUgcGVyc2lzdGVuY2UgaGFzIGJlZW4gZGlzYWJsZWQuIik7dGhpcy5yZWZlcmVuY2VEZWxlZ2F0ZT1uZXcgQ1QodGhpcyxyKSx0aGlzLkxlPWUrIm1haW4iLHRoaXMuUj1uZXcgT0koYSksdGhpcy5CZT1uZXcgaEkodGhpcy5MZSwxMSxuZXcgS1QodGhpcy5SKSksdGhpcy5xZT1uZXcgdlQodGhpcy5yZWZlcmVuY2VEZWxlZ2F0ZSx0aGlzLlIpLHRoaXMuVXQ9bmV3ICRJLHRoaXMuVWU9KGU9dGhpcy5SLGE9dGhpcy5VdCxuZXcgeFQoZSxhKSksdGhpcy5RZT1uZXcgR0ksdGhpcy53aW5kb3cmJnRoaXMud2luZG93LmxvY2FsU3RvcmFnZT90aGlzLktlPXRoaXMud2luZG93LmxvY2FsU3RvcmFnZToodGhpcy5LZT1udWxsLCExPT09YyYmQnkoIkluZGV4ZWREYlBlcnNpc3RlbmNlIiwiTG9jYWxTdG9yYWdlIGlzIHVuYXZhaWxhYmxlLiBBcyBhIHJlc3VsdCwgcGVyc2lzdGVuY2UgbWF5IG5vdCB3b3JrIHJlbGlhYmx5LiBJbiBwYXJ0aWN1bGFyIGVuYWJsZVBlcnNpc3RlbmNlKCkgY291bGQgZmFpbCBpbW1lZGlhdGVseSBhZnRlciByZWZyZXNoaW5nIHRoZSBwYWdlLiIpKX1mdW5jdGlvbiBZVCh0KXtyZXR1cm4gQUkodCxWXy5zdG9yZSl9ZnVuY3Rpb24gWFQodCl7cmV0dXJuIEFJKHQsZUkuc3RvcmUpfWZ1bmN0aW9uIEpUKHQsZSl7dmFyIG49dC5wcm9qZWN0SWQ7cmV0dXJuIHQuaXNEZWZhdWx0RGF0YWJhc2V8fChuKz0iLiIrdC5kYXRhYmFzZSksImZpcmVzdG9yZS8iK2UrIi8iK24rIi8ifWZ1bmN0aW9uICRUKHQsZSl7dGhpcy5wcm9ncmVzcz10LHRoaXMud249ZX12YXIgWlQ9KHNFLnByb3RvdHlwZS5tbj1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXM7cmV0dXJuIHRoaXMuX24uZ2V0QWxsTXV0YXRpb25CYXRjaGVzQWZmZWN0aW5nRG9jdW1lbnRLZXkoZSxuKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiByLnluKGUsbix0KX0pfSxzRS5wcm90b3R5cGUueW49ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0aGlzLlVlLmdldEVudHJ5KHQsZSkubmV4dChmdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPXI7ZTxuLmxlbmd0aDtlKyspbltlXS5hcHBseVRvTG9jYWxWaWV3KHQpO3JldHVybiB0fSl9LHNFLnByb3RvdHlwZS5nbj1mdW5jdGlvbih0LGkpe3QuZm9yRWFjaChmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0wLHI9aTtuPHIubGVuZ3RoO24rKylyW25dLmFwcGx5VG9Mb2NhbFZpZXcoZSl9KX0sc0UucHJvdG90eXBlLnBuPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gdGhpcy5VZS5nZXRFbnRyaWVzKGUsdCkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gbi5FbihlLHQpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gdH0pfSl9LHNFLnByb3RvdHlwZS5Fbj1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuIHRoaXMuX24uZ2V0QWxsTXV0YXRpb25CYXRjaGVzQWZmZWN0aW5nRG9jdW1lbnRLZXlzKHQsZSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gbi5nbihlLHQpfSl9LHNFLnByb3RvdHlwZS5nZXREb2N1bWVudHNNYXRjaGluZ1F1ZXJ5PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gcj1lLENtLmlzRG9jdW1lbnRLZXkoci5wYXRoKSYmbnVsbD09PXIuY29sbGVjdGlvbkdyb3VwJiYwPT09ci5maWx0ZXJzLmxlbmd0aD90aGlzLlRuKHQsZS5wYXRoKTpPYihlKT90aGlzLkluKHQsZSxuKTp0aGlzLkFuKHQsZSxuKTt2YXIgcn0sc0UucHJvdG90eXBlLlRuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMubW4odCxuZXcgQ20oZSkpLm5leHQoZnVuY3Rpb24odCl7dmFyIGU9R3c7cmV0dXJuIGU9dC5pc0ZvdW5kRG9jdW1lbnQoKT9lLmluc2VydCh0LmtleSx0KTplfSl9LHNFLnByb3RvdHlwZS5Jbj1mdW5jdGlvbihuLHIsaSl7dmFyIG89dGhpcyxzPXIuY29sbGVjdGlvbkdyb3VwLGE9R3c7cmV0dXJuIHRoaXMuVXQuZ2V0Q29sbGVjdGlvblBhcmVudHMobixzKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB1SS5mb3JFYWNoKHQsZnVuY3Rpb24odCl7dmFyIGUsZT0oZT1yLHQ9dC5jaGlsZChzKSxuZXcgU2IodCxudWxsLGUuZXhwbGljaXRPcmRlckJ5LnNsaWNlKCksZS5maWx0ZXJzLnNsaWNlKCksZS5saW1pdCxlLmxpbWl0VHlwZSxlLnN0YXJ0QXQsZS5lbmRBdCkpO3JldHVybiBvLkFuKG4sZSxpKS5uZXh0KGZ1bmN0aW9uKHQpe3QuZm9yRWFjaChmdW5jdGlvbih0LGUpe2E9YS5pbnNlcnQodCxlKX0pfSl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGF9KX0pfSxzRS5wcm90b3R5cGUuQW49ZnVuY3Rpb24oZSxuLHQpe3ZhciBjLGgscj10aGlzO3JldHVybiB0aGlzLlVlLmdldERvY3VtZW50c01hdGNoaW5nUXVlcnkoZSxuLHQpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIGM9dCxyLl9uLmdldEFsbE11dGF0aW9uQmF0Y2hlc0FmZmVjdGluZ1F1ZXJ5KGUsbil9KS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBoPXQsci5SbihlLGgsYykubmV4dChmdW5jdGlvbih0KXtjPXQ7Zm9yKHZhciBlPTAsbj1oO2U8bi5sZW5ndGg7ZSsrKWZvcih2YXIgcj1uW2VdLGk9MCxvPXIubXV0YXRpb25zO2k8by5sZW5ndGg7aSsrKXt2YXIgcz1vW2ldLGE9cy5rZXksdT1jLmdldChhKTtudWxsPT11JiYodT1CbS5uZXdJbnZhbGlkRG9jdW1lbnQoYSksYz1jLmluc2VydChhLHUpKSxmdyhzLHUsci5sb2NhbFdyaXRlVGltZSksdS5pc0ZvdW5kRG9jdW1lbnQoKXx8KGM9Yy5yZW1vdmUoYSkpfX0pfSkubmV4dChmdW5jdGlvbigpe3JldHVybiBjLmZvckVhY2goZnVuY3Rpb24odCxlKXtqYihuLGUpfHwoYz1jLnJlbW92ZSh0KSl9KSxjfSl9LHNFLnByb3RvdHlwZS5Sbj1mdW5jdGlvbih0LGUsbil7Zm9yKHZhciByPVl3KCksaT0wLG89ZTtpPG8ubGVuZ3RoO2krKylmb3IodmFyIHM9MCxhPW9baV0ubXV0YXRpb25zO3M8YS5sZW5ndGg7cysrKXt2YXIgdT1hW3NdO3UgaW5zdGFuY2VvZiBtdyYmbnVsbD09PW4uZ2V0KHUua2V5KSYmKHI9ci5hZGQodS5rZXkpKX12YXIgYz1uO3JldHVybiB0aGlzLlVlLmdldEVudHJpZXModCxyKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB0LmZvckVhY2goZnVuY3Rpb24odCxlKXtlLmlzRm91bmREb2N1bWVudCgpJiYoYz1jLmluc2VydCh0LGUpKX0pLGN9KX0sc0UpLHRFPShvRS5Qbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj1ZdygpLHI9WXcoKSxpPTAsbz1lLmRvY0NoYW5nZXM7aTxvLmxlbmd0aDtpKyspe3ZhciBzPW9baV07c3dpdGNoKHMudHlwZSl7Y2FzZSAwOm49bi5hZGQocy5kb2Mua2V5KTticmVhaztjYXNlIDE6cj1yLmFkZChzLmRvYy5rZXkpfX1yZXR1cm4gbmV3IG9FKHQsZS5mcm9tQ2FjaGUsbixyKX0sb0UpLGVFPShpRS5wcm90b3R5cGUuVm49ZnVuY3Rpb24odCl7dGhpcy5Tbj10fSxpRS5wcm90b3R5cGUuZ2V0RG9jdW1lbnRzTWF0Y2hpbmdRdWVyeT1mdW5jdGlvbihlLHIsaSxvKXt2YXIgcz10aGlzO3JldHVybiAwPT09ci5maWx0ZXJzLmxlbmd0aCYmbnVsbD09PXIubGltaXQmJm51bGw9PXIuc3RhcnRBdCYmbnVsbD09ci5lbmRBdCYmKDA9PT1yLmV4cGxpY2l0T3JkZXJCeS5sZW5ndGh8fDE9PT1yLmV4cGxpY2l0T3JkZXJCeS5sZW5ndGgmJnIuZXhwbGljaXRPcmRlckJ5WzBdLmZpZWxkLmlzS2V5RmllbGQoKSl8fGkuaXNFcXVhbChaeS5taW4oKSk/dGhpcy5EbihlLHIpOnRoaXMuU24ucG4oZSxvKS5uZXh0KGZ1bmN0aW9uKHQpe3ZhciBuPXMuQ24ocix0KTtyZXR1cm4oQWIocil8fGtiKHIpKSYmcy5ObihyLmxpbWl0VHlwZSxuLG8saSk/cy5EbihlLHIpOihxeSgpPD1hcy5ERUJVRyYmVnkoIlF1ZXJ5RW5naW5lIiwiUmUtdXNpbmcgcHJldmlvdXMgcmVzdWx0IGZyb20gJXMgdG8gZXhlY3V0ZSBxdWVyeTogJXMiLGkudG9TdHJpbmcoKSxVYihyKSkscy5Tbi5nZXREb2N1bWVudHNNYXRjaGluZ1F1ZXJ5KGUscixpKS5uZXh0KGZ1bmN0aW9uKGUpe3JldHVybiBuLmZvckVhY2goZnVuY3Rpb24odCl7ZT1lLmluc2VydCh0LmtleSx0KX0pLGV9KSl9KX0saUUucHJvdG90eXBlLkNuPWZ1bmN0aW9uKG4sdCl7dmFyIHI9bmV3IFZ3KHFiKG4pKTtyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7amIobixlKSYmKHI9ci5hZGQoZSkpfSkscn0saUUucHJvdG90eXBlLk5uPWZ1bmN0aW9uKHQsZSxuLHIpe2lmKG4uc2l6ZSE9PWUuc2l6ZSlyZXR1cm4hMDtlPSJGIj09PXQ/ZS5sYXN0KCk6ZS5maXJzdCgpO3JldHVybiEhZSYmKGUuaGFzUGVuZGluZ1dyaXRlc3x8MDxlLnZlcnNpb24uY29tcGFyZVRvKHIpKX0saUUucHJvdG90eXBlLkRuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHF5KCk8PWFzLkRFQlVHJiZWeSgiUXVlcnlFbmdpbmUiLCJVc2luZyBmdWxsIGNvbGxlY3Rpb24gc2NhbiB0byBleGVjdXRlIHF1ZXJ5OiIsVWIoZSkpLHRoaXMuU24uZ2V0RG9jdW1lbnRzTWF0Y2hpbmdRdWVyeSh0LGUsWnkubWluKCkpfSxpRSksbkU9KHJFLnByb3RvdHlwZS5jb2xsZWN0R2FyYmFnZT1mdW5jdGlvbihlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJDb2xsZWN0IGdhcmJhZ2UiLCJyZWFkd3JpdGUtcHJpbWFyeSIsZnVuY3Rpb24odCl7cmV0dXJuIGUuY29sbGVjdCh0LG4uRm4pfSl9LHJFKTtmdW5jdGlvbiByRSh0LGUsbixyKXt0aGlzLnBlcnNpc3RlbmNlPXQsdGhpcy54bj1lLHRoaXMuUj1yLHRoaXMuRm49bmV3IHh3KFl5KSx0aGlzLmtuPW5ldyBEVChHbSx6bSksdGhpcy5Pbj1aeS5taW4oKSx0aGlzLl9uPXQuZ2V0TXV0YXRpb25RdWV1ZShuKSx0aGlzLiRuPXQuZ2V0UmVtb3RlRG9jdW1lbnRDYWNoZSgpLHRoaXMucWU9dC5nZXRUYXJnZXRDYWNoZSgpLHRoaXMuTW49bmV3IFpUKHRoaXMuJG4sdGhpcy5fbix0aGlzLnBlcnNpc3RlbmNlLmdldEluZGV4TWFuYWdlcigpKSx0aGlzLlFlPXQuZ2V0QnVuZGxlQ2FjaGUoKSx0aGlzLnhuLlZuKHRoaXMuTW4pfWZ1bmN0aW9uIGlFKCl7fWZ1bmN0aW9uIG9FKHQsZSxuLHIpe3RoaXMudGFyZ2V0SWQ9dCx0aGlzLmZyb21DYWNoZT1lLHRoaXMuYm49bix0aGlzLnZuPXJ9ZnVuY3Rpb24gc0UodCxlLG4pe3RoaXMuVWU9dCx0aGlzLl9uPWUsdGhpcy5VdD1ufWZ1bmN0aW9uIGFFKHQsZSxuLHIpe3JldHVybiBuZXcgbkUodCxlLG4scil9ZnVuY3Rpb24gdUUoaSxvKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixtLHI7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gbj0oZT1pKS5fbixtPWUuTW4sWzQsZS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiSGFuZGxlIHVzZXIgY2hhbmdlIiwicmVhZG9ubHkiLGZ1bmN0aW9uKGcpe3ZhciB5O3JldHVybiBlLl9uLmdldEFsbE11dGF0aW9uQmF0Y2hlcyhnKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiB5PXQsbj1lLnBlcnNpc3RlbmNlLmdldE11dGF0aW9uUXVldWUobyksbT1uZXcgWlQoZS4kbixuLGUucGVyc2lzdGVuY2UuZ2V0SW5kZXhNYW5hZ2VyKCkpLG4uZ2V0QWxsTXV0YXRpb25CYXRjaGVzKGcpfSkubmV4dChmdW5jdGlvbih0KXtmb3IodmFyIGU9W10sbj1bXSxyPVl3KCksaT0wLG89eTtpPG8ubGVuZ3RoO2krKyl7dmFyIHM9b1tpXTtlLnB1c2gocy5iYXRjaElkKTtmb3IodmFyIGE9MCx1PXMubXV0YXRpb25zO2E8dS5sZW5ndGg7YSsrKXZhciBjPXVbYV0scj1yLmFkZChjLmtleSl9Zm9yKHZhciBoPTAsbD10O2g8bC5sZW5ndGg7aCsrKXt2YXIgZj1sW2hdO24ucHVzaChmLmJhdGNoSWQpO2Zvcih2YXIgcD0wLGQ9Zi5tdXRhdGlvbnM7cDxkLmxlbmd0aDtwKyspe3ZhciB2PWRbcF07cj1yLmFkZCh2LmtleSl9fXJldHVybiBtLnBuKGcscikubmV4dChmdW5jdGlvbih0KXtyZXR1cm57TG46dCxyZW1vdmVkQmF0Y2hJZHM6ZSxhZGRlZEJhdGNoSWRzOm59fSl9KX0pXTtjYXNlIDE6cmV0dXJuIHI9dC5zZW50KCksWzIsKGUuX249bixlLk1uPW0sZS54bi5WbihlLk1uKSxyKV19fSl9KX1mdW5jdGlvbiBjRSh0LGgpe3ZhciBsPXQ7cmV0dXJuIGwucGVyc2lzdGVuY2UucnVuVHJhbnNhY3Rpb24oIkFja25vd2xlZGdlIGJhdGNoIiwicmVhZHdyaXRlLXByaW1hcnkiLGZ1bmN0aW9uKHQpe3ZhciBlLHIsaSxvLHMsbixhLHU9aC5iYXRjaC5rZXlzKCksYz1sLiRuLm5ld0NoYW5nZUJ1ZmZlcih7dHJhY2tSZW1vdmFsczohMH0pO3JldHVybiBlPWwscj10LG89YyxzPShpPWgpLmJhdGNoLG49cy5rZXlzKCksYT11SS5yZXNvbHZlKCksbi5mb3JFYWNoKGZ1bmN0aW9uKG4pe2E9YS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG8uZ2V0RW50cnkocixuKX0pLm5leHQoZnVuY3Rpb24odCl7dmFyIGU9aS5kb2NWZXJzaW9ucy5nZXQobik7R3kobnVsbCE9PWUpLHQudmVyc2lvbi5jb21wYXJlVG8oZSk8MCYmKHMuYXBwbHlUb1JlbW90ZURvY3VtZW50KHQsaSksdC5pc1ZhbGlkRG9jdW1lbnQoKSYmby5hZGRFbnRyeSh0LGkuY29tbWl0VmVyc2lvbikpfSl9KSxhLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gZS5fbi5yZW1vdmVNdXRhdGlvbkJhdGNoKHIscyl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkodCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGwuX24ucGVyZm9ybUNvbnNpc3RlbmN5Q2hlY2sodCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGwuTW4ucG4odCx1KX0pfSl9ZnVuY3Rpb24gaEUodCl7dmFyIGU9dDtyZXR1cm4gZS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiR2V0IGxhc3QgcmVtb3RlIHNuYXBzaG90IHZlcnNpb24iLCJyZWFkb25seSIsZnVuY3Rpb24odCl7cmV0dXJuIGUucWUuZ2V0TGFzdFJlbW90ZVNuYXBzaG90VmVyc2lvbih0KX0pfWZ1bmN0aW9uIGxFKHQscil7dmFyIHU9dCxjPXIuc25hcHNob3RWZXJzaW9uLGg9dS5GbjtyZXR1cm4gdS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiQXBwbHkgcmVtb3RlIGV2ZW50IiwicmVhZHdyaXRlLXByaW1hcnkiLGZ1bmN0aW9uKHMpe3ZhciB0PXUuJG4ubmV3Q2hhbmdlQnVmZmVyKHt0cmFja1JlbW92YWxzOiEwfSk7aD11LkZuO3ZhciBhPVtdO3IudGFyZ2V0Q2hhbmdlcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG4scixpLG89aC5nZXQoZSk7byYmKGEucHVzaCh1LnFlLnJlbW92ZU1hdGNoaW5nS2V5cyhzLHQucmVtb3ZlZERvY3VtZW50cyxlKS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHUucWUuYWRkTWF0Y2hpbmdLZXlzKHMsdC5hZGRlZERvY3VtZW50cyxlKX0pKSwwPChpPXQucmVzdW1lVG9rZW4pLmFwcHJveGltYXRlQnl0ZVNpemUoKSYmKG49by53aXRoUmVzdW1lVG9rZW4oaSxjKS53aXRoU2VxdWVuY2VOdW1iZXIocy5jdXJyZW50U2VxdWVuY2VOdW1iZXIpLGg9aC5pbnNlcnQoZSxuKSxyPW8saT10LEd5KDA8KG89bikucmVzdW1lVG9rZW4uYXBwcm94aW1hdGVCeXRlU2l6ZSgpKSwoMD09PXIucmVzdW1lVG9rZW4uYXBwcm94aW1hdGVCeXRlU2l6ZSgpfHwzZTg8PW8uc25hcHNob3RWZXJzaW9uLnRvTWljcm9zZWNvbmRzKCktci5zbmFwc2hvdFZlcnNpb24udG9NaWNyb3NlY29uZHMoKXx8MDxpLmFkZGVkRG9jdW1lbnRzLnNpemUraS5tb2RpZmllZERvY3VtZW50cy5zaXplK2kucmVtb3ZlZERvY3VtZW50cy5zaXplKSYmYS5wdXNoKHUucWUudXBkYXRlVGFyZ2V0RGF0YShzLG4pKSkpfSk7dmFyIGUsbj1LdztyZXR1cm4gci5kb2N1bWVudFVwZGF0ZXMuZm9yRWFjaChmdW5jdGlvbih0LGUpe3IucmVzb2x2ZWRMaW1ib0RvY3VtZW50cy5oYXModCkmJmEucHVzaCh1LnBlcnNpc3RlbmNlLnJlZmVyZW5jZURlbGVnYXRlLnVwZGF0ZUxpbWJvRG9jdW1lbnQocyx0KSl9KSxhLnB1c2goZkUocyx0LHIuZG9jdW1lbnRVcGRhdGVzLGMsdm9pZCAwKS5uZXh0KGZ1bmN0aW9uKHQpe249dH0pKSxjLmlzRXF1YWwoWnkubWluKCkpfHwoZT11LnFlLmdldExhc3RSZW1vdGVTbmFwc2hvdFZlcnNpb24ocykubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdS5xZS5zZXRUYXJnZXRzTWV0YWRhdGEocyxzLmN1cnJlbnRTZXF1ZW5jZU51bWJlcixjKX0pLGEucHVzaChlKSksdUkud2FpdEZvcihhKS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHQuYXBwbHkocyl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHUuTW4uRW4ocyxuKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gbn0pfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdS5Gbj1oLHR9KX1mdW5jdGlvbiBmRSh0LHMsZSxhLHUpe3ZhciBuPVl3KCk7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gbj1uLmFkZCh0KX0pLHMuZ2V0RW50cmllcyh0LG4pLm5leHQoZnVuY3Rpb24oaSl7dmFyIG89S3c7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPWkuZ2V0KHQpLHI9KG51bGw9PXU/dm9pZCAwOnUuZ2V0KHQpKXx8YTtlLmlzTm9Eb2N1bWVudCgpJiZlLnZlcnNpb24uaXNFcXVhbChaeS5taW4oKSk/KHMucmVtb3ZlRW50cnkodCxyKSxvPW8uaW5zZXJ0KHQsZSkpOiFuLmlzVmFsaWREb2N1bWVudCgpfHwwPGUudmVyc2lvbi5jb21wYXJlVG8obi52ZXJzaW9uKXx8MD09PWUudmVyc2lvbi5jb21wYXJlVG8obi52ZXJzaW9uKSYmbi5oYXNQZW5kaW5nV3JpdGVzPyhzLmFkZEVudHJ5KGUsciksbz1vLmluc2VydCh0LGUpKTpWeSgiTG9jYWxTdG9yZSIsIklnbm9yaW5nIG91dGRhdGVkIHdhdGNoIHVwZGF0ZSBmb3IgIix0LCIuIEN1cnJlbnQgdmVyc2lvbjoiLG4udmVyc2lvbiwiIFdhdGNoIHZlcnNpb246IixlLnZlcnNpb24pfSksb30pfWZ1bmN0aW9uIHBFKHQscil7dmFyIGk9dDtyZXR1cm4gaS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiQWxsb2NhdGUgdGFyZ2V0IiwicmVhZHdyaXRlIixmdW5jdGlvbihlKXt2YXIgbjtyZXR1cm4gaS5xZS5nZXRUYXJnZXREYXRhKGUscikubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gdD8obj10LHVJLnJlc29sdmUobikpOmkucWUuYWxsb2NhdGVUYXJnZXRJZChlKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBuPW5ldyBQSShyLHQsMCxlLmN1cnJlbnRTZXF1ZW5jZU51bWJlciksaS5xZS5hZGRUYXJnZXREYXRhKGUsbikubmV4dChmdW5jdGlvbigpe3JldHVybiBufSl9KX0pfSkudGhlbihmdW5jdGlvbih0KXt2YXIgZT1pLkZuLmdldCh0LnRhcmdldElkKTtyZXR1cm4obnVsbD09PWV8fDA8dC5zbmFwc2hvdFZlcnNpb24uY29tcGFyZVRvKGUuc25hcHNob3RWZXJzaW9uKSkmJihpLkZuPWkuRm4uaW5zZXJ0KHQudGFyZ2V0SWQsdCksaS5rbi5zZXQocix0LnRhcmdldElkKSksdH0pfWZ1bmN0aW9uIGRFKGksbyxzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6bj0oZT1pKS5Gbi5nZXQobykscj1zPyJyZWFkd3JpdGUiOiJyZWFkd3JpdGUtcHJpbWFyeSIsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsNCwsNV0pLHM/WzMsM106WzQsZS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiUmVsZWFzZSB0YXJnZXQiLHIsZnVuY3Rpb24odCl7cmV0dXJuIGUucGVyc2lzdGVuY2UucmVmZXJlbmNlRGVsZWdhdGUucmVtb3ZlVGFyZ2V0KHQsbil9KV07Y2FzZSAyOnQuc2VudCgpLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzMsNV07Y2FzZSA0OmlmKCFiSShyPXQuc2VudCgpKSl0aHJvdyByO3JldHVybiBWeSgiTG9jYWxTdG9yZSIsIkZhaWxlZCB0byB1cGRhdGUgc2VxdWVuY2UgbnVtYmVycyBmb3IgdGFyZ2V0ICIrbysiOiAiK3IpLFszLDVdO2Nhc2UgNTpyZXR1cm4gZS5Gbj1lLkZuLnJlbW92ZShvKSxlLmtuLmRlbGV0ZShuLnRhcmdldCksWzJdfX0pfSl9ZnVuY3Rpb24gdkUodCxvLHMpe3ZhciBhPXQsdT1aeS5taW4oKSxjPVl3KCk7cmV0dXJuIGEucGVyc2lzdGVuY2UucnVuVHJhbnNhY3Rpb24oIkV4ZWN1dGUgcXVlcnkiLCJyZWFkb25seSIsZnVuY3Rpb24oZSl7cmV0dXJuIHQ9YSxuPWUscj14YihvKSwodm9pZCAwIT09KHQ9KGk9dCkua24uZ2V0KHIpKT91SS5yZXNvbHZlKGkuRm4uZ2V0KHQpKTppLnFlLmdldFRhcmdldERhdGEobixyKSkubmV4dChmdW5jdGlvbih0KXtpZih0KXJldHVybiB1PXQubGFzdExpbWJvRnJlZVNuYXBzaG90VmVyc2lvbixhLnFlLmdldE1hdGNoaW5nS2V5c0ZvclRhcmdldElkKGUsdC50YXJnZXRJZCkubmV4dChmdW5jdGlvbih0KXtjPXR9KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gYS54bi5nZXREb2N1bWVudHNNYXRjaGluZ1F1ZXJ5KGUsbyxzP3U6WnkubWluKCkscz9jOll3KCkpfSkubmV4dChmdW5jdGlvbih0KXtyZXR1cm57ZG9jdW1lbnRzOnQsQm46Y319KTt2YXIgdCxuLHIsaX0pfWZ1bmN0aW9uIGdFKHQsZSl7dmFyIG49dCxyPW4ucWUsdD1uLkZuLmdldChlKTtyZXR1cm4gdD9Qcm9taXNlLnJlc29sdmUodC50YXJnZXQpOm4ucGVyc2lzdGVuY2UucnVuVHJhbnNhY3Rpb24oIkdldCB0YXJnZXQgZGF0YSIsInJlYWRvbmx5IixmdW5jdGlvbih0KXtyZXR1cm4gci5sdCh0LGUpLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC50YXJnZXQ6bnVsbH0pfSl9ZnVuY3Rpb24geUUodCl7dmFyIHM9dDtyZXR1cm4gcy5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiR2V0IG5ldyBkb2N1bWVudCBjaGFuZ2VzIiwicmVhZG9ubHkiLGZ1bmN0aW9uKHQpe3JldHVybiBlPXMuJG4sbj10LHQ9cy5PbixyPWUsaT1LdyxvPVVJKHQpLHQ9VlQobiksbj1JREJLZXlSYW5nZS5sb3dlckJvdW5kKG8sITApLHQuT3Qoe2luZGV4OllfLnJlYWRUaW1lSW5kZXgscmFuZ2U6bn0sZnVuY3Rpb24odCxlKXt2YXIgbj1NSShyLlIsZSk7aT1pLmluc2VydChuLmtleSxuKSxvPWUucmVhZFRpbWV9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJue3duOmkscmVhZFRpbWU6akkobyl9fSk7dmFyIGUsbixyLGksb30pLnRoZW4oZnVuY3Rpb24odCl7dmFyIGU9dC53bix0PXQucmVhZFRpbWU7cmV0dXJuIHMuT249dCxlfSl9ZnVuY3Rpb24gbUUobil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVyblsyLChlPW4pLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJTeW5jaHJvbml6ZSBsYXN0IGRvY3VtZW50IGNoYW5nZSByZWFkIHRpbWUiLCJyZWFkb25seSIsZnVuY3Rpb24odCl7cmV0dXJuIHQ9VlQodCkscj1aeS5taW4oKSx0Lk90KHtpbmRleDpZXy5yZWFkVGltZUluZGV4LHJldmVyc2U6ITB9LGZ1bmN0aW9uKHQsZSxuKXtlLnJlYWRUaW1lJiYocj1qSShlLnJlYWRUaW1lKSksbi5kb25lKCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KTt2YXIgcn0pLnRoZW4oZnVuY3Rpb24odCl7ZS5Pbj10fSldfSl9KX12YXIgYkUsd0UsX0U9KEJFLnByb3RvdHlwZS5nZXRCdW5kbGVNZXRhZGF0YT1mdW5jdGlvbih0LGUpe3JldHVybiB1SS5yZXNvbHZlKHRoaXMuS24uZ2V0KGUpKX0sQkUucHJvdG90eXBlLnNhdmVCdW5kbGVNZXRhZGF0YT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLktuLnNldChlLmlkLHtpZDplLmlkLHZlcnNpb246ZS52ZXJzaW9uLGNyZWF0ZVRpbWU6dl8oZS5jcmVhdGVUaW1lKX0pLHVJLnJlc29sdmUoKX0sQkUucHJvdG90eXBlLmdldE5hbWVkUXVlcnk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdUkucmVzb2x2ZSh0aGlzLmpuLmdldChlKSl9LEJFLnByb3RvdHlwZS5zYXZlTmFtZWRRdWVyeT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLmpuLnNldChlLm5hbWUse25hbWU6KGU9ZSkubmFtZSxxdWVyeTpISShlLmJ1bmRsZWRRdWVyeSkscmVhZFRpbWU6dl8oZS5yZWFkVGltZSl9KSx1SS5yZXNvbHZlKCl9LEJFKSxJRT0oVkUucHJvdG90eXBlLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5Xbi5pc0VtcHR5KCl9LFZFLnByb3RvdHlwZS5hZGRSZWZlcmVuY2U9ZnVuY3Rpb24odCxlKXtlPW5ldyBURSh0LGUpO3RoaXMuV249dGhpcy5Xbi5hZGQoZSksdGhpcy56bj10aGlzLnpuLmFkZChlKX0sVkUucHJvdG90eXBlLkpuPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpczt0LmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIG4uYWRkUmVmZXJlbmNlKHQsZSl9KX0sVkUucHJvdG90eXBlLnJlbW92ZVJlZmVyZW5jZT1mdW5jdGlvbih0LGUpe3RoaXMuWW4obmV3IFRFKHQsZSkpfSxWRS5wcm90b3R5cGUuWG49ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3QuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gbi5yZW1vdmVSZWZlcmVuY2UodCxlKX0pfSxWRS5wcm90b3R5cGUuWm49ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPW5ldyBDbShuZXcgYW0oW10pKSxyPW5ldyBURShuLHQpLHQ9bmV3IFRFKG4sdCsxKSxpPVtdO3JldHVybiB0aGlzLnpuLmZvckVhY2hJblJhbmdlKFtyLHRdLGZ1bmN0aW9uKHQpe2UuWW4odCksaS5wdXNoKHQua2V5KX0pLGl9LFZFLnByb3RvdHlwZS50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5Xbi5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiBlLlluKHQpfSl9LFZFLnByb3RvdHlwZS5Zbj1mdW5jdGlvbih0KXt0aGlzLlduPXRoaXMuV24uZGVsZXRlKHQpLHRoaXMuem49dGhpcy56bi5kZWxldGUodCl9LFZFLnByb3RvdHlwZS5lcz1mdW5jdGlvbih0KXt2YXIgZT1uZXcgQ20obmV3IGFtKFtdKSksbj1uZXcgVEUoZSx0KSx0PW5ldyBURShlLHQrMSkscj1ZdygpO3JldHVybiB0aGlzLnpuLmZvckVhY2hJblJhbmdlKFtuLHRdLGZ1bmN0aW9uKHQpe3I9ci5hZGQodC5rZXkpfSkscn0sVkUucHJvdG90eXBlLmNvbnRhaW5zS2V5PWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBURSh0LDApLGU9dGhpcy5Xbi5maXJzdEFmdGVyT3JFcXVhbChlKTtyZXR1cm4gbnVsbCE9PWUmJnQuaXNFcXVhbChlLmtleSl9LFZFKSxURT0ocUUuR249ZnVuY3Rpb24odCxlKXtyZXR1cm4gQ20uY29tcGFyYXRvcih0LmtleSxlLmtleSl8fFl5KHQubnMsZS5ucyl9LHFFLkhuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIFl5KHQubnMsZS5ucyl8fENtLmNvbXBhcmF0b3IodC5rZXksZS5rZXkpfSxxRSksRUU9KGpFLnByb3RvdHlwZS5jaGVja0VtcHR5PWZ1bmN0aW9uKHQpe3JldHVybiB1SS5yZXNvbHZlKDA9PT10aGlzLl9uLmxlbmd0aCl9LGpFLnByb3RvdHlwZS5hZGRNdXRhdGlvbkJhdGNoPWZ1bmN0aW9uKHQsZSxuLHIpe3ZhciBpPXRoaXMuc3M7dGhpcy5zcysrLDA8dGhpcy5fbi5sZW5ndGgmJnRoaXMuX25bdGhpcy5fbi5sZW5ndGgtMV07bj1uZXcga0koaSxlLG4scik7dGhpcy5fbi5wdXNoKG4pO2Zvcih2YXIgbz0wLHM9cjtvPHMubGVuZ3RoO28rKyl7dmFyIGE9c1tvXTt0aGlzLnJzPXRoaXMucnMuYWRkKG5ldyBURShhLmtleSxpKSksdGhpcy5VdC5hZGRUb0NvbGxlY3Rpb25QYXJlbnRJbmRleCh0LGEua2V5LnBhdGgucG9wTGFzdCgpKX1yZXR1cm4gdUkucmVzb2x2ZShuKX0sakUucHJvdG90eXBlLmxvb2t1cE11dGF0aW9uQmF0Y2g9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdUkucmVzb2x2ZSh0aGlzLm9zKGUpKX0sakUucHJvdG90eXBlLmdldE5leHRNdXRhdGlvbkJhdGNoQWZ0ZXJCYXRjaElkPWZ1bmN0aW9uKHQsZSl7ZSs9MSxlPXRoaXMuY3MoZSksZT1lPDA/MDplO3JldHVybiB1SS5yZXNvbHZlKHRoaXMuX24ubGVuZ3RoPmU/dGhpcy5fbltlXTpudWxsKX0sakUucHJvdG90eXBlLmdldEhpZ2hlc3RVbmFja25vd2xlZGdlZEJhdGNoSWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdUkucmVzb2x2ZSgwPT09dGhpcy5fbi5sZW5ndGg/LTE6dGhpcy5zcy0xKX0sakUucHJvdG90eXBlLmdldEFsbE11dGF0aW9uQmF0Y2hlcz1mdW5jdGlvbih0KXtyZXR1cm4gdUkucmVzb2x2ZSh0aGlzLl9uLnNsaWNlKCkpfSxqRS5wcm90b3R5cGUuZ2V0QWxsTXV0YXRpb25CYXRjaGVzQWZmZWN0aW5nRG9jdW1lbnRLZXk9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLHI9bmV3IFRFKGUsMCksZT1uZXcgVEUoZSxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpLGk9W107cmV0dXJuIHRoaXMucnMuZm9yRWFjaEluUmFuZ2UoW3IsZV0sZnVuY3Rpb24odCl7dD1uLm9zKHQubnMpO2kucHVzaCh0KX0pLHVJLnJlc29sdmUoaSl9LGpFLnByb3RvdHlwZS5nZXRBbGxNdXRhdGlvbkJhdGNoZXNBZmZlY3RpbmdEb2N1bWVudEtleXM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLHI9bmV3IFZ3KFl5KTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBURSh0LDApLHQ9bmV3IFRFKHQsTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKTtuLnJzLmZvckVhY2hJblJhbmdlKFtlLHRdLGZ1bmN0aW9uKHQpe3I9ci5hZGQodC5ucyl9KX0pLHVJLnJlc29sdmUodGhpcy51cyhyKSl9LGpFLnByb3RvdHlwZS5nZXRBbGxNdXRhdGlvbkJhdGNoZXNBZmZlY3RpbmdRdWVyeT1mdW5jdGlvbih0LGUpe3ZhciBuPWUucGF0aCxyPW4ubGVuZ3RoKzEsZT1uO0NtLmlzRG9jdW1lbnRLZXkoZSl8fChlPWUuY2hpbGQoIiIpKTt2YXIgZT1uZXcgVEUobmV3IENtKGUpLDApLGk9bmV3IFZ3KFl5KTtyZXR1cm4gdGhpcy5ycy5mb3JFYWNoV2hpbGUoZnVuY3Rpb24odCl7dmFyIGU9dC5rZXkucGF0aDtyZXR1cm4hIW4uaXNQcmVmaXhPZihlKSYmKGUubGVuZ3RoPT09ciYmKGk9aS5hZGQodC5ucykpLCEwKX0sZSksdUkucmVzb2x2ZSh0aGlzLnVzKGkpKX0sakUucHJvdG90eXBlLnVzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj1bXTtyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKHQpe3Q9ZS5vcyh0KTtudWxsIT09dCYmbi5wdXNoKHQpfSksbn0sakUucHJvdG90eXBlLnJlbW92ZU11dGF0aW9uQmF0Y2g9ZnVuY3Rpb24obixyKXt2YXIgaT10aGlzO0d5KDA9PT10aGlzLmhzKHIuYmF0Y2hJZCwicmVtb3ZlZCIpKSx0aGlzLl9uLnNoaWZ0KCk7dmFyIG89dGhpcy5ycztyZXR1cm4gdUkuZm9yRWFjaChyLm11dGF0aW9ucyxmdW5jdGlvbih0KXt2YXIgZT1uZXcgVEUodC5rZXksci5iYXRjaElkKTtyZXR1cm4gbz1vLmRlbGV0ZShlKSxpLnJlZmVyZW5jZURlbGVnYXRlLm1hcmtQb3RlbnRpYWxseU9ycGhhbmVkKG4sdC5rZXkpfSkubmV4dChmdW5jdGlvbigpe2kucnM9b30pfSxqRS5wcm90b3R5cGUuR3Q9ZnVuY3Rpb24odCl7fSxqRS5wcm90b3R5cGUuY29udGFpbnNLZXk9ZnVuY3Rpb24odCxlKXt2YXIgbj1uZXcgVEUoZSwwKSxuPXRoaXMucnMuZmlyc3RBZnRlck9yRXF1YWwobik7cmV0dXJuIHVJLnJlc29sdmUoZS5pc0VxdWFsKG4mJm4ua2V5KSl9LGpFLnByb3RvdHlwZS5wZXJmb3JtQ29uc2lzdGVuY3lDaGVjaz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fbi5sZW5ndGgsdUkucmVzb2x2ZSgpfSxqRS5wcm90b3R5cGUuaHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5jcyh0KX0sakUucHJvdG90eXBlLmNzPWZ1bmN0aW9uKHQpe3JldHVybiAwPT09dGhpcy5fbi5sZW5ndGg/MDp0LXRoaXMuX25bMF0uYmF0Y2hJZH0sakUucHJvdG90eXBlLm9zPWZ1bmN0aW9uKHQpe3Q9dGhpcy5jcyh0KTtyZXR1cm4gdDwwfHx0Pj10aGlzLl9uLmxlbmd0aD9udWxsOnRoaXMuX25bdF19LGpFKSxTRT0oVUUucHJvdG90eXBlLmFkZEVudHJ5PWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1lLmtleSxpPXRoaXMuZG9jcy5nZXQociksbz1pP2kuc2l6ZTowLGk9dGhpcy5scyhlKTtyZXR1cm4gdGhpcy5kb2NzPXRoaXMuZG9jcy5pbnNlcnQocix7ZG9jdW1lbnQ6ZS5jbG9uZSgpLHNpemU6aSxyZWFkVGltZTpufSksdGhpcy5zaXplKz1pLW8sdGhpcy5VdC5hZGRUb0NvbGxlY3Rpb25QYXJlbnRJbmRleCh0LHIucGF0aC5wb3BMYXN0KCkpfSxVRS5wcm90b3R5cGUucmVtb3ZlRW50cnk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5kb2NzLmdldCh0KTtlJiYodGhpcy5kb2NzPXRoaXMuZG9jcy5yZW1vdmUodCksdGhpcy5zaXplLT1lLnNpemUpfSxVRS5wcm90b3R5cGUuZ2V0RW50cnk9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLmRvY3MuZ2V0KGUpO3JldHVybiB1SS5yZXNvbHZlKG4/bi5kb2N1bWVudC5jbG9uZSgpOkJtLm5ld0ludmFsaWREb2N1bWVudChlKSl9LFVFLnByb3RvdHlwZS5nZXRFbnRyaWVzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcyxyPUt3O3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9bi5kb2NzLmdldCh0KTtyPXIuaW5zZXJ0KHQsZT9lLmRvY3VtZW50LmNsb25lKCk6Qm0ubmV3SW52YWxpZERvY3VtZW50KHQpKX0pLHVJLnJlc29sdmUocil9LFVFLnByb3RvdHlwZS5nZXREb2N1bWVudHNNYXRjaGluZ1F1ZXJ5PWZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIHI9S3csaT1uZXcgQ20oZS5wYXRoLmNoaWxkKCIiKSksbz10aGlzLmRvY3MuZ2V0SXRlcmF0b3JGcm9tKGkpO28uaGFzTmV4dCgpOyl7dmFyIHM9by5nZXROZXh0KCksYT1zLmtleSx1PXMudmFsdWUscz11LmRvY3VtZW50LHU9dS5yZWFkVGltZTtpZighZS5wYXRoLmlzUHJlZml4T2YoYS5wYXRoKSlicmVhazt1LmNvbXBhcmVUbyhuKTw9MHx8amIoZSxzKSYmKHI9ci5pbnNlcnQocy5rZXkscy5jbG9uZSgpKSl9cmV0dXJuIHVJLnJlc29sdmUocil9LFVFLnByb3RvdHlwZS5mcz1mdW5jdGlvbih0LGUpe3JldHVybiB1SS5mb3JFYWNoKHRoaXMuZG9jcyxmdW5jdGlvbih0KXtyZXR1cm4gZSh0KX0pfSxVRS5wcm90b3R5cGUubmV3Q2hhbmdlQnVmZmVyPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgQ0UodGhpcyl9LFVFLnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKHQpe3JldHVybiB1SS5yZXNvbHZlKHRoaXMuc2l6ZSl9LFVFKSxDRT0oWGkoRkUsd0U9U24pLEZFLnByb3RvdHlwZS5hcHBseUNoYW5nZXM9ZnVuY3Rpb24obil7dmFyIHI9dGhpcyxpPVtdO3JldHVybiB0aGlzLmNoYW5nZXMuZm9yRWFjaChmdW5jdGlvbih0LGUpe2UuZG9jdW1lbnQuaXNWYWxpZERvY3VtZW50KCk/aS5wdXNoKHIuSWUuYWRkRW50cnkobixlLmRvY3VtZW50LHIuZ2V0UmVhZFRpbWUodCkpKTpyLkllLnJlbW92ZUVudHJ5KHQpfSksdUkud2FpdEZvcihpKX0sRkUucHJvdG90eXBlLmdldEZyb21DYWNoZT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLkllLmdldEVudHJ5KHQsZSl9LEZFLnByb3RvdHlwZS5nZXRBbGxGcm9tQ2FjaGU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5JZS5nZXRFbnRyaWVzKHQsZSl9LEZFKSxORT0oTUUucHJvdG90eXBlLmZvckVhY2hUYXJnZXQ9ZnVuY3Rpb24odCxuKXtyZXR1cm4gdGhpcy5kcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG4oZSl9KSx1SS5yZXNvbHZlKCl9LE1FLnByb3RvdHlwZS5nZXRMYXN0UmVtb3RlU25hcHNob3RWZXJzaW9uPWZ1bmN0aW9uKHQpe3JldHVybiB1SS5yZXNvbHZlKHRoaXMubGFzdFJlbW90ZVNuYXBzaG90VmVyc2lvbil9LE1FLnByb3RvdHlwZS5nZXRIaWdoZXN0U2VxdWVuY2VOdW1iZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHVJLnJlc29sdmUodGhpcy53cyl9LE1FLnByb3RvdHlwZS5hbGxvY2F0ZVRhcmdldElkPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmhpZ2hlc3RUYXJnZXRJZD10aGlzLnlzLm5leHQoKSx1SS5yZXNvbHZlKHRoaXMuaGlnaGVzdFRhcmdldElkKX0sTUUucHJvdG90eXBlLnNldFRhcmdldHNNZXRhZGF0YT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIG4mJih0aGlzLmxhc3RSZW1vdGVTbmFwc2hvdFZlcnNpb249biksZT50aGlzLndzJiYodGhpcy53cz1lKSx1SS5yZXNvbHZlKCl9LE1FLnByb3RvdHlwZS50ZT1mdW5jdGlvbih0KXt0aGlzLmRzLnNldCh0LnRhcmdldCx0KTt2YXIgZT10LnRhcmdldElkO2U+dGhpcy5oaWdoZXN0VGFyZ2V0SWQmJih0aGlzLnlzPW5ldyBkVChlKSx0aGlzLmhpZ2hlc3RUYXJnZXRJZD1lKSx0LnNlcXVlbmNlTnVtYmVyPnRoaXMud3MmJih0aGlzLndzPXQuc2VxdWVuY2VOdW1iZXIpfSxNRS5wcm90b3R5cGUuYWRkVGFyZ2V0RGF0YT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnRlKGUpLHRoaXMudGFyZ2V0Q291bnQrPTEsdUkucmVzb2x2ZSgpfSxNRS5wcm90b3R5cGUudXBkYXRlVGFyZ2V0RGF0YT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnRlKGUpLHVJLnJlc29sdmUoKX0sTUUucHJvdG90eXBlLnJlbW92ZVRhcmdldERhdGE9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5kcy5kZWxldGUoZS50YXJnZXQpLHRoaXMuX3MuWm4oZS50YXJnZXRJZCksLS10aGlzLnRhcmdldENvdW50LHVJLnJlc29sdmUoKX0sTUUucHJvdG90eXBlLnJlbW92ZVRhcmdldHM9ZnVuY3Rpb24obixyLGkpe3ZhciBvPXRoaXMscz0wLGE9W107cmV0dXJuIHRoaXMuZHMuZm9yRWFjaChmdW5jdGlvbih0LGUpe2Uuc2VxdWVuY2VOdW1iZXI8PXImJm51bGw9PT1pLmdldChlLnRhcmdldElkKSYmKG8uZHMuZGVsZXRlKHQpLGEucHVzaChvLnJlbW92ZU1hdGNoaW5nS2V5c0ZvclRhcmdldElkKG4sZS50YXJnZXRJZCkpLHMrKyl9KSx1SS53YWl0Rm9yKGEpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gc30pfSxNRS5wcm90b3R5cGUuZ2V0VGFyZ2V0Q291bnQ9ZnVuY3Rpb24odCl7cmV0dXJuIHVJLnJlc29sdmUodGhpcy50YXJnZXRDb3VudCl9LE1FLnByb3RvdHlwZS5nZXRUYXJnZXREYXRhPWZ1bmN0aW9uKHQsZSl7ZT10aGlzLmRzLmdldChlKXx8bnVsbDtyZXR1cm4gdUkucmVzb2x2ZShlKX0sTUUucHJvdG90eXBlLmFkZE1hdGNoaW5nS2V5cz1mdW5jdGlvbih0LGUsbil7cmV0dXJuIHRoaXMuX3MuSm4oZSxuKSx1SS5yZXNvbHZlKCl9LE1FLnByb3RvdHlwZS5yZW1vdmVNYXRjaGluZ0tleXM9ZnVuY3Rpb24oZSx0LG4pe3RoaXMuX3MuWG4odCxuKTt2YXIgcj10aGlzLnBlcnNpc3RlbmNlLnJlZmVyZW5jZURlbGVnYXRlLGk9W107cmV0dXJuIHImJnQuZm9yRWFjaChmdW5jdGlvbih0KXtpLnB1c2goci5tYXJrUG90ZW50aWFsbHlPcnBoYW5lZChlLHQpKX0pLHVJLndhaXRGb3IoaSl9LE1FLnByb3RvdHlwZS5yZW1vdmVNYXRjaGluZ0tleXNGb3JUYXJnZXRJZD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLl9zLlpuKGUpLHVJLnJlc29sdmUoKX0sTUUucHJvdG90eXBlLmdldE1hdGNoaW5nS2V5c0ZvclRhcmdldElkPWZ1bmN0aW9uKHQsZSl7ZT10aGlzLl9zLmVzKGUpO3JldHVybiB1SS5yZXNvbHZlKGUpfSxNRS5wcm90b3R5cGUuY29udGFpbnNLZXk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdUkucmVzb2x2ZSh0aGlzLl9zLmNvbnRhaW5zS2V5KGUpKX0sTUUpLEFFPShMRS5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCl9LExFLnByb3RvdHlwZS5zaHV0ZG93bj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnhlPSExLFByb21pc2UucmVzb2x2ZSgpfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoTEUucHJvdG90eXBlLCJzdGFydGVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksTEUucHJvdG90eXBlLnNldERhdGFiYXNlRGVsZXRlZExpc3RlbmVyPWZ1bmN0aW9uKCl7fSxMRS5wcm90b3R5cGUuc2V0TmV0d29ya0VuYWJsZWQ9ZnVuY3Rpb24oKXt9LExFLnByb3RvdHlwZS5nZXRJbmRleE1hbmFnZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5VdH0sTEUucHJvdG90eXBlLmdldE11dGF0aW9uUXVldWU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5nc1t0LnRvS2V5KCldO3JldHVybiBlfHwoZT1uZXcgRUUodGhpcy5VdCx0aGlzLnJlZmVyZW5jZURlbGVnYXRlKSx0aGlzLmdzW3QudG9LZXkoKV09ZSksZX0sTEUucHJvdG90eXBlLmdldFRhcmdldENhY2hlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWV9LExFLnByb3RvdHlwZS5nZXRSZW1vdGVEb2N1bWVudENhY2hlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVWV9LExFLnByb3RvdHlwZS5nZXRCdW5kbGVDYWNoZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlFlfSxMRS5wcm90b3R5cGUucnVuVHJhbnNhY3Rpb249ZnVuY3Rpb24odCxlLG4pe3ZhciByPXRoaXM7VnkoIk1lbW9yeVBlcnNpc3RlbmNlIiwiU3RhcnRpbmcgdHJhbnNhY3Rpb246Iix0KTt2YXIgaT1uZXcga0UodGhpcy5OZS5uZXh0KCkpO3JldHVybiB0aGlzLnJlZmVyZW5jZURlbGVnYXRlLkVzKCksbihpKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiByLnJlZmVyZW5jZURlbGVnYXRlLlRzKGkpLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gdH0pfSkudG9Qcm9taXNlKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gaS5yYWlzZU9uQ29tbWl0dGVkRXZlbnQoKSx0fSl9LExFLnByb3RvdHlwZS5Jcz1mdW5jdGlvbihlLG4pe3JldHVybiB1SS5vcihPYmplY3QudmFsdWVzKHRoaXMuZ3MpLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdC5jb250YWluc0tleShlLG4pfX0pKX0sTEUpLGtFPShYaSh4RSxiRT1HYSkseEUpLFJFPShERS5icz1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IERFKHQpfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoREUucHJvdG90eXBlLCJ2cyIse2dldDpmdW5jdGlvbigpe2lmKHRoaXMuUnMpcmV0dXJuIHRoaXMuUnM7dGhyb3cgSHkoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxERS5wcm90b3R5cGUuYWRkUmVmZXJlbmNlPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdGhpcy5Bcy5hZGRSZWZlcmVuY2UobixlKSx0aGlzLnZzLmRlbGV0ZShuLnRvU3RyaW5nKCkpLHVJLnJlc29sdmUoKX0sREUucHJvdG90eXBlLnJlbW92ZVJlZmVyZW5jZT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIHRoaXMuQXMucmVtb3ZlUmVmZXJlbmNlKG4sZSksdGhpcy52cy5hZGQobi50b1N0cmluZygpKSx1SS5yZXNvbHZlKCl9LERFLnByb3RvdHlwZS5tYXJrUG90ZW50aWFsbHlPcnBoYW5lZD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnZzLmFkZChlLnRvU3RyaW5nKCkpLHVJLnJlc29sdmUoKX0sREUucHJvdG90eXBlLnJlbW92ZVRhcmdldD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7dGhpcy5Bcy5abihlLnRhcmdldElkKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiBuLnZzLmFkZCh0LnRvU3RyaW5nKCkpfSk7dmFyIHI9dGhpcy5wZXJzaXN0ZW5jZS5nZXRUYXJnZXRDYWNoZSgpO3JldHVybiByLmdldE1hdGNoaW5nS2V5c0ZvclRhcmdldElkKHQsZS50YXJnZXRJZCkubmV4dChmdW5jdGlvbih0KXt0LmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIG4udnMuYWRkKHQudG9TdHJpbmcoKSl9KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gci5yZW1vdmVUYXJnZXREYXRhKHQsZSl9KX0sREUucHJvdG90eXBlLkVzPWZ1bmN0aW9uKCl7dGhpcy5Scz1uZXcgU2V0fSxERS5wcm90b3R5cGUuVHM9ZnVuY3Rpb24obil7dmFyIHI9dGhpcyxpPXRoaXMucGVyc2lzdGVuY2UuZ2V0UmVtb3RlRG9jdW1lbnRDYWNoZSgpLm5ld0NoYW5nZUJ1ZmZlcigpO3JldHVybiB1SS5mb3JFYWNoKHRoaXMudnMsZnVuY3Rpb24odCl7dmFyIGU9Q20uZnJvbVBhdGgodCk7cmV0dXJuIHIuUHMobixlKS5uZXh0KGZ1bmN0aW9uKHQpe3R8fGkucmVtb3ZlRW50cnkoZSl9KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gci5Scz1udWxsLGkuYXBwbHkobil9KX0sREUucHJvdG90eXBlLnVwZGF0ZUxpbWJvRG9jdW1lbnQ9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3JldHVybiB0aGlzLlBzKHQsZSkubmV4dChmdW5jdGlvbih0KXt0P24udnMuZGVsZXRlKGUudG9TdHJpbmcoKSk6bi52cy5hZGQoZS50b1N0cmluZygpKX0pfSxERS5wcm90b3R5cGUucHM9ZnVuY3Rpb24odCl7cmV0dXJuIDB9LERFLnByb3RvdHlwZS5Qcz1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuIHVJLm9yKFtmdW5jdGlvbigpe3JldHVybiB1SS5yZXNvbHZlKG4uQXMuY29udGFpbnNLZXkoZSkpfSxmdW5jdGlvbigpe3JldHVybiBuLnBlcnNpc3RlbmNlLmdldFRhcmdldENhY2hlKCkuY29udGFpbnNLZXkodCxlKX0sZnVuY3Rpb24oKXtyZXR1cm4gbi5wZXJzaXN0ZW5jZS5Jcyh0LGUpfV0pfSxERSksUEU9KE9FLnByb3RvdHlwZS5pc0F1dGhlbnRpY2F0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbCE9dGhpcy51aWR9LE9FLnByb3RvdHlwZS50b0tleT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzQXV0aGVudGljYXRlZCgpPyJ1aWQ6Iit0aGlzLnVpZDoiYW5vbnltb3VzLXVzZXIifSxPRS5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdC51aWQ9PT10aGlzLnVpZH0sT0UpO2Z1bmN0aW9uIE9FKHQpe3RoaXMudWlkPXR9ZnVuY3Rpb24gREUodCl7dGhpcy5wZXJzaXN0ZW5jZT10LHRoaXMuQXM9bmV3IElFLHRoaXMuUnM9bnVsbH1mdW5jdGlvbiB4RSh0KXt2YXIgZT10aGlzO3JldHVybihlPWJFLmNhbGwodGhpcyl8fHRoaXMpLmN1cnJlbnRTZXF1ZW5jZU51bWJlcj10LGV9ZnVuY3Rpb24gTEUodCxlKXt2YXIgbj10aGlzO3RoaXMuZ3M9e30sdGhpcy5OZT1uZXcgRHkoMCksdGhpcy54ZT0hMSx0aGlzLnhlPSEwLHRoaXMucmVmZXJlbmNlRGVsZWdhdGU9dCh0aGlzKSx0aGlzLnFlPW5ldyBORSh0aGlzKSx0aGlzLlV0PW5ldyBYSSx0aGlzLlVlPSh0PXRoaXMuVXQsbmV3IFNFKHQsZnVuY3Rpb24odCl7cmV0dXJuIG4ucmVmZXJlbmNlRGVsZWdhdGUucHModCl9KSksdGhpcy5SPW5ldyBPSShlKSx0aGlzLlFlPW5ldyBfRSh0aGlzLlIpfWZ1bmN0aW9uIE1FKHQpe3RoaXMucGVyc2lzdGVuY2U9dCx0aGlzLmRzPW5ldyBEVChHbSx6bSksdGhpcy5sYXN0UmVtb3RlU25hcHNob3RWZXJzaW9uPVp5Lm1pbigpLHRoaXMuaGlnaGVzdFRhcmdldElkPTAsdGhpcy53cz0wLHRoaXMuX3M9bmV3IElFLHRoaXMudGFyZ2V0Q291bnQ9MCx0aGlzLnlzPWRULkp0KCl9ZnVuY3Rpb24gRkUodCl7dmFyIGU9dGhpcztyZXR1cm4oZT13RS5jYWxsKHRoaXMpfHx0aGlzKS5JZT10LGV9ZnVuY3Rpb24gVUUodCxlKXt0aGlzLlV0PXQsdGhpcy5scz1lLHRoaXMuZG9jcz1uZXcgeHcoQ20uY29tcGFyYXRvciksdGhpcy5zaXplPTB9ZnVuY3Rpb24gakUodCxlKXt0aGlzLlV0PXQsdGhpcy5yZWZlcmVuY2VEZWxlZ2F0ZT1lLHRoaXMuX249W10sdGhpcy5zcz0xLHRoaXMucnM9bmV3IFZ3KFRFLkduKX1mdW5jdGlvbiBxRSh0LGUpe3RoaXMua2V5PXQsdGhpcy5ucz1lfWZ1bmN0aW9uIFZFKCl7dGhpcy5Xbj1uZXcgVncoVEUuR24pLHRoaXMuem49bmV3IFZ3KFRFLkhuKX1mdW5jdGlvbiBCRSh0KXt0aGlzLlI9dCx0aGlzLktuPW5ldyBNYXAsdGhpcy5qbj1uZXcgTWFwfWZ1bmN0aW9uIEtFKHQsZSl7cmV0dXJuImZpcmVzdG9yZV9jbGllbnRzXyIrdCsiXyIrZX1mdW5jdGlvbiBXRSh0LGUsbil7bj0iZmlyZXN0b3JlX211dGF0aW9uc18iK3QrIl8iK247cmV0dXJuIGUuaXNBdXRoZW50aWNhdGVkKCkmJihuKz0iXyIrZS51aWQpLG59ZnVuY3Rpb24gSEUodCxlKXtyZXR1cm4iZmlyZXN0b3JlX3RhcmdldHNfIit0KyJfIitlfVBFLlVOQVVUSEVOVElDQVRFRD1uZXcgUEUobnVsbCksUEUuR09PR0xFX0NSRURFTlRJQUxTPW5ldyBQRSgiZ29vZ2xlLWNyZWRlbnRpYWxzLXVpZCIpLFBFLkZJUlNUX1BBUlRZPW5ldyBQRSgiZmlyc3QtcGFydHktdWlkIik7dmFyIEdFLHpFPShnUy5Wcz1mdW5jdGlvbih0LGUsbil7dmFyIHIsaT1KU09OLnBhcnNlKG4pLG89Im9iamVjdCI9PXR5cGVvZiBpJiYtMSE9PVsicGVuZGluZyIsImFja25vd2xlZGdlZCIsInJlamVjdGVkIl0uaW5kZXhPZihpLnN0YXRlKSYmKHZvaWQgMD09PWkuZXJyb3J8fCJvYmplY3QiPT10eXBlb2YgaS5lcnJvcik7cmV0dXJuIG8mJmkuZXJyb3ImJihvPSJzdHJpbmciPT10eXBlb2YgaS5lcnJvci5tZXNzYWdlJiYic3RyaW5nIj09dHlwZW9mIGkuZXJyb3IuY29kZSkmJihyPW5ldyBGeShpLmVycm9yLmNvZGUsaS5lcnJvci5tZXNzYWdlKSksbz9uZXcgZ1ModCxlLGkuc3RhdGUscik6KEJ5KCJTaGFyZWRDbGllbnRTdGF0ZSIsIkZhaWxlZCB0byBwYXJzZSBtdXRhdGlvbiBzdGF0ZSBmb3IgSUQgJyIrZSsiJzogIituKSxudWxsKX0sZ1MucHJvdG90eXBlLlNzPWZ1bmN0aW9uKCl7dmFyIHQ9e3N0YXRlOnRoaXMuc3RhdGUsdXBkYXRlVGltZU1zOkRhdGUubm93KCl9O3JldHVybiB0aGlzLmVycm9yJiYodC5lcnJvcj17Y29kZTp0aGlzLmVycm9yLmNvZGUsbWVzc2FnZTp0aGlzLmVycm9yLm1lc3NhZ2V9KSxKU09OLnN0cmluZ2lmeSh0KX0sZ1MpLFFFPSh2Uy5Wcz1mdW5jdGlvbih0LGUpe3ZhciBuLHI9SlNPTi5wYXJzZShlKSxpPSJvYmplY3QiPT10eXBlb2YgciYmLTEhPT1bIm5vdC1jdXJyZW50IiwiY3VycmVudCIsInJlamVjdGVkIl0uaW5kZXhPZihyLnN0YXRlKSYmKHZvaWQgMD09PXIuZXJyb3J8fCJvYmplY3QiPT10eXBlb2Ygci5lcnJvcik7cmV0dXJuIGkmJnIuZXJyb3ImJihpPSJzdHJpbmciPT10eXBlb2Ygci5lcnJvci5tZXNzYWdlJiYic3RyaW5nIj09dHlwZW9mIHIuZXJyb3IuY29kZSkmJihuPW5ldyBGeShyLmVycm9yLmNvZGUsci5lcnJvci5tZXNzYWdlKSksaT9uZXcgdlModCxyLnN0YXRlLG4pOihCeSgiU2hhcmVkQ2xpZW50U3RhdGUiLCJGYWlsZWQgdG8gcGFyc2UgdGFyZ2V0IHN0YXRlIGZvciBJRCAnIit0KyInOiAiK2UpLG51bGwpfSx2Uy5wcm90b3R5cGUuU3M9ZnVuY3Rpb24oKXt2YXIgdD17c3RhdGU6dGhpcy5zdGF0ZSx1cGRhdGVUaW1lTXM6RGF0ZS5ub3coKX07cmV0dXJuIHRoaXMuZXJyb3ImJih0LmVycm9yPXtjb2RlOnRoaXMuZXJyb3IuY29kZSxtZXNzYWdlOnRoaXMuZXJyb3IubWVzc2FnZX0pLEpTT04uc3RyaW5naWZ5KHQpfSx2UyksWUU9KGRTLlZzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPUpTT04ucGFyc2UoZSkscj0ib2JqZWN0Ij09dHlwZW9mIG4mJm4uYWN0aXZlVGFyZ2V0SWRzIGluc3RhbmNlb2YgQXJyYXksaT1YdyxvPTA7ciYmbzxuLmFjdGl2ZVRhcmdldElkcy5sZW5ndGg7KytvKXI9U20obi5hY3RpdmVUYXJnZXRJZHNbb10pLGk9aS5hZGQobi5hY3RpdmVUYXJnZXRJZHNbb10pO3JldHVybiByP25ldyBkUyh0LGkpOihCeSgiU2hhcmVkQ2xpZW50U3RhdGUiLCJGYWlsZWQgdG8gcGFyc2UgY2xpZW50IGRhdGEgZm9yIGluc3RhbmNlICciK3QrIic6ICIrZSksbnVsbCl9LGRTKSxYRT0ocFMuVnM9ZnVuY3Rpb24odCl7dmFyIGU9SlNPTi5wYXJzZSh0KTtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJi0xIT09WyJVbmtub3duIiwiT25saW5lIiwiT2ZmbGluZSJdLmluZGV4T2YoZS5vbmxpbmVTdGF0ZSkmJiJzdHJpbmciPT10eXBlb2YgZS5jbGllbnRJZD9uZXcgcFMoZS5jbGllbnRJZCxlLm9ubGluZVN0YXRlKTooQnkoIlNoYXJlZENsaWVudFN0YXRlIiwiRmFpbGVkIHRvIHBhcnNlIG9ubGluZSBzdGF0ZTogIit0KSxudWxsKX0scFMpLEpFPShmUy5wcm90b3R5cGUuRHM9ZnVuY3Rpb24odCl7dGhpcy5hY3RpdmVUYXJnZXRJZHM9dGhpcy5hY3RpdmVUYXJnZXRJZHMuYWRkKHQpfSxmUy5wcm90b3R5cGUuQ3M9ZnVuY3Rpb24odCl7dGhpcy5hY3RpdmVUYXJnZXRJZHM9dGhpcy5hY3RpdmVUYXJnZXRJZHMuZGVsZXRlKHQpfSxmUy5wcm90b3R5cGUuU3M9ZnVuY3Rpb24oKXt2YXIgdD17YWN0aXZlVGFyZ2V0SWRzOnRoaXMuYWN0aXZlVGFyZ2V0SWRzLnRvQXJyYXkoKSx1cGRhdGVUaW1lTXM6RGF0ZS5ub3coKX07cmV0dXJuIEpTT04uc3RyaW5naWZ5KHQpfSxmUyksJEU9KGxTLnl0PWZ1bmN0aW9uKHQpe3JldHVybiEoIXR8fCF0LmxvY2FsU3RvcmFnZSl9LGxTLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHIsaSxvLHMsYSx1LGMsaCxsPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCx0aGlzLnN5bmNFbmdpbmUuZm4oKV07Y2FzZSAxOmZvcihzPXQuc2VudCgpLGU9MCxuPXM7ZTxuLmxlbmd0aDtlKyspKHI9bltlXSkhPT10aGlzLk5zJiYoaT10aGlzLmdldEl0ZW0oS0UodGhpcy5wZXJzaXN0ZW5jZUtleSxyKSkpJiYobz1ZRS5WcyhyLGkpKSYmKHRoaXMua3M9dGhpcy5rcy5pbnNlcnQoby5jbGllbnRJZCxvKSk7Zm9yKHRoaXMuS3MoKSwocz10aGlzLnN0b3JhZ2UuZ2V0SXRlbSh0aGlzLlVzKSkmJihhPXRoaXMuanMocykpJiZ0aGlzLldzKGEpLHU9MCxjPXRoaXMuT3M7dTxjLmxlbmd0aDt1KyspaD1jW3VdLHRoaXMuRnMoaCk7cmV0dXJuIHRoaXMuT3M9W10sdGhpcy53aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIixmdW5jdGlvbigpe3JldHVybiBsLnNodXRkb3duKCl9KSx0aGlzLnN0YXJ0ZWQ9ITAsWzJdfX0pfSl9LGxTLnByb3RvdHlwZS53cml0ZVNlcXVlbmNlTnVtYmVyPWZ1bmN0aW9uKHQpe3RoaXMuc2V0SXRlbSh0aGlzLk1zLEpTT04uc3RyaW5naWZ5KHQpKX0sbFMucHJvdG90eXBlLmdldEFsbEFjdGl2ZVF1ZXJ5VGFyZ2V0cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkdzKHRoaXMua3MpfSxsUy5wcm90b3R5cGUuaXNBY3RpdmVRdWVyeVRhcmdldD1mdW5jdGlvbihuKXt2YXIgcj0hMTtyZXR1cm4gdGhpcy5rcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7ZS5hY3RpdmVUYXJnZXRJZHMuaGFzKG4pJiYocj0hMCl9KSxyfSxsUy5wcm90b3R5cGUuYWRkUGVuZGluZ011dGF0aW9uPWZ1bmN0aW9uKHQpe3RoaXMuenModCwicGVuZGluZyIpfSxsUy5wcm90b3R5cGUudXBkYXRlTXV0YXRpb25TdGF0ZT1mdW5jdGlvbih0LGUsbil7dGhpcy56cyh0LGUsbiksdGhpcy5Icyh0KX0sbFMucHJvdG90eXBlLmFkZExvY2FsUXVlcnlUYXJnZXQ9ZnVuY3Rpb24odCl7dmFyIGUsbj0ibm90LWN1cnJlbnQiO3JldHVybiB0aGlzLmlzQWN0aXZlUXVlcnlUYXJnZXQodCkmJighKGU9dGhpcy5zdG9yYWdlLmdldEl0ZW0oSEUodGhpcy5wZXJzaXN0ZW5jZUtleSx0KSkpfHwoZT1RRS5Wcyh0LGUpKSYmKG49ZS5zdGF0ZSkpLHRoaXMuSnMuRHModCksdGhpcy5LcygpLG59LGxTLnByb3RvdHlwZS5yZW1vdmVMb2NhbFF1ZXJ5VGFyZ2V0PWZ1bmN0aW9uKHQpe3RoaXMuSnMuQ3ModCksdGhpcy5LcygpfSxsUy5wcm90b3R5cGUuaXNMb2NhbFF1ZXJ5VGFyZ2V0PWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLkpzLmFjdGl2ZVRhcmdldElkcy5oYXModCl9LGxTLnByb3RvdHlwZS5jbGVhclF1ZXJ5U3RhdGU9ZnVuY3Rpb24odCl7dGhpcy5yZW1vdmVJdGVtKEhFKHRoaXMucGVyc2lzdGVuY2VLZXksdCkpfSxsUy5wcm90b3R5cGUudXBkYXRlUXVlcnlTdGF0ZT1mdW5jdGlvbih0LGUsbil7dGhpcy5Zcyh0LGUsbil9LGxTLnByb3RvdHlwZS5oYW5kbGVVc2VyQ2hhbmdlPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO2UuZm9yRWFjaChmdW5jdGlvbih0KXtyLkhzKHQpfSksdGhpcy5jdXJyZW50VXNlcj10LG4uZm9yRWFjaChmdW5jdGlvbih0KXtyLmFkZFBlbmRpbmdNdXRhdGlvbih0KX0pfSxsUy5wcm90b3R5cGUuc2V0T25saW5lU3RhdGU9ZnVuY3Rpb24odCl7dGhpcy5Ycyh0KX0sbFMucHJvdG90eXBlLm5vdGlmeUJ1bmRsZUxvYWRlZD1mdW5jdGlvbigpe3RoaXMuWnMoKX0sbFMucHJvdG90eXBlLnNodXRkb3duPWZ1bmN0aW9uKCl7dGhpcy5zdGFydGVkJiYodGhpcy53aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsdGhpcy54cyksdGhpcy5yZW1vdmVJdGVtKHRoaXMuJHMpLHRoaXMuc3RhcnRlZD0hMSl9LGxTLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuc3RvcmFnZS5nZXRJdGVtKHQpO3JldHVybiBWeSgiU2hhcmVkQ2xpZW50U3RhdGUiLCJSRUFEIix0LGUpLGV9LGxTLnByb3RvdHlwZS5zZXRJdGVtPWZ1bmN0aW9uKHQsZSl7VnkoIlNoYXJlZENsaWVudFN0YXRlIiwiU0VUIix0LGUpLHRoaXMuc3RvcmFnZS5zZXRJdGVtKHQsZSl9LGxTLnByb3RvdHlwZS5yZW1vdmVJdGVtPWZ1bmN0aW9uKHQpe1Z5KCJTaGFyZWRDbGllbnRTdGF0ZSIsIlJFTU9WRSIsdCksdGhpcy5zdG9yYWdlLnJlbW92ZUl0ZW0odCl9LGxTLnByb3RvdHlwZS5Gcz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLG89dDtvLnN0b3JhZ2VBcmVhPT09dGhpcy5zdG9yYWdlJiYoVnkoIlNoYXJlZENsaWVudFN0YXRlIiwiRVZFTlQiLG8ua2V5LG8ubmV3VmFsdWUpLG8ua2V5IT09dGhpcy4kcz90aGlzLlNlLmVucXVldWVSZXRyeWFibGUoZnVuY3Rpb24oKXtyZXR1cm4gJGkoZSx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7aWYodGhpcy5zdGFydGVkKXtpZihudWxsIT09by5rZXkpaWYodGhpcy5Mcy50ZXN0KG8ua2V5KSl7aWYobnVsbD09by5uZXdWYWx1ZSlyZXR1cm4gZT10aGlzLnRpKG8ua2V5KSxbMix0aGlzLmVpKGUsbnVsbCldO2lmKGU9dGhpcy5uaShvLmtleSxvLm5ld1ZhbHVlKSlyZXR1cm5bMix0aGlzLmVpKGUuY2xpZW50SWQsZSldfWVsc2UgaWYodGhpcy5Ccy50ZXN0KG8ua2V5KSl7aWYobnVsbCE9PW8ubmV3VmFsdWUmJihuPXRoaXMuc2koby5rZXksby5uZXdWYWx1ZSkpKXJldHVyblsyLHRoaXMuaWkobildfWVsc2UgaWYodGhpcy5xcy50ZXN0KG8ua2V5KSl7aWYobnVsbCE9PW8ubmV3VmFsdWUmJihyPXRoaXMucmkoby5rZXksby5uZXdWYWx1ZSkpKXJldHVyblsyLHRoaXMub2kocildfWVsc2UgaWYoby5rZXk9PT10aGlzLlVzKXtpZihudWxsIT09by5uZXdWYWx1ZSYmKGk9dGhpcy5qcyhvLm5ld1ZhbHVlKSkpcmV0dXJuWzIsdGhpcy5XcyhpKV19ZWxzZSBpZihvLmtleT09PXRoaXMuTXMpKGk9ZnVuY3Rpb24odCl7dmFyIGU9RHkubztpZihudWxsIT10KXRyeXt2YXIgbj1KU09OLnBhcnNlKHQpO0d5KCJudW1iZXIiPT10eXBlb2YgbiksZT1ufWNhdGNoKHQpe0J5KCJTaGFyZWRDbGllbnRTdGF0ZSIsIkZhaWxlZCB0byByZWFkIHNlcXVlbmNlIG51bWJlciBmcm9tIFdlYlN0b3JhZ2UiLHQpfXJldHVybiBlfShvLm5ld1ZhbHVlKSkhPT1EeS5vJiZ0aGlzLnNlcXVlbmNlTnVtYmVySGFuZGxlcihpKTtlbHNlIGlmKG8ua2V5PT09dGhpcy5RcylyZXR1cm5bMix0aGlzLnN5bmNFbmdpbmUuY2koKV19ZWxzZSB0aGlzLk9zLnB1c2gobyk7cmV0dXJuWzJdfSl9KX0pOkJ5KCJSZWNlaXZlZCBXZWJTdG9yYWdlIG5vdGlmaWNhdGlvbiBmb3IgbG9jYWwgY2hhbmdlLiBBbm90aGVyIGNsaWVudCBtaWdodCBoYXZlIGdhcmJhZ2UtY29sbGVjdGVkIG91ciBzdGF0ZSIpKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGxTLnByb3RvdHlwZSwiSnMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5rcy5nZXQodGhpcy5Ocyl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksbFMucHJvdG90eXBlLktzPWZ1bmN0aW9uKCl7dGhpcy5zZXRJdGVtKHRoaXMuJHMsdGhpcy5Kcy5TcygpKX0sbFMucHJvdG90eXBlLnpzPWZ1bmN0aW9uKHQsZSxuKXtuPW5ldyB6RSh0aGlzLmN1cnJlbnRVc2VyLHQsZSxuKSx0PVdFKHRoaXMucGVyc2lzdGVuY2VLZXksdGhpcy5jdXJyZW50VXNlcix0KTt0aGlzLnNldEl0ZW0odCxuLlNzKCkpfSxsUy5wcm90b3R5cGUuSHM9ZnVuY3Rpb24odCl7dD1XRSh0aGlzLnBlcnNpc3RlbmNlS2V5LHRoaXMuY3VycmVudFVzZXIsdCk7dGhpcy5yZW1vdmVJdGVtKHQpfSxsUy5wcm90b3R5cGUuWHM9ZnVuY3Rpb24odCl7dD17Y2xpZW50SWQ6dGhpcy5OcyxvbmxpbmVTdGF0ZTp0fTt0aGlzLnN0b3JhZ2Uuc2V0SXRlbSh0aGlzLlVzLEpTT04uc3RyaW5naWZ5KHQpKX0sbFMucHJvdG90eXBlLllzPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj1IRSh0aGlzLnBlcnNpc3RlbmNlS2V5LHQpLG49bmV3IFFFKHQsZSxuKTt0aGlzLnNldEl0ZW0ocixuLlNzKCkpfSxsUy5wcm90b3R5cGUuWnM9ZnVuY3Rpb24oKXt0aGlzLnNldEl0ZW0odGhpcy5RcywidmFsdWUtbm90LXVzZWQiKX0sbFMucHJvdG90eXBlLnRpPWZ1bmN0aW9uKHQpe3Q9dGhpcy5Mcy5leGVjKHQpO3JldHVybiB0P3RbMV06bnVsbH0sbFMucHJvdG90eXBlLm5pPWZ1bmN0aW9uKHQsZSl7dD10aGlzLnRpKHQpO3JldHVybiBZRS5Wcyh0LGUpfSxsUy5wcm90b3R5cGUuc2k9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLkJzLmV4ZWModCksdD1OdW1iZXIoblsxXSksbj12b2lkIDAhPT1uWzJdP25bMl06bnVsbDtyZXR1cm4gekUuVnMobmV3IFBFKG4pLHQsZSl9LGxTLnByb3RvdHlwZS5yaT1mdW5jdGlvbih0LGUpe3Q9dGhpcy5xcy5leGVjKHQpLHQ9TnVtYmVyKHRbMV0pO3JldHVybiBRRS5Wcyh0LGUpfSxsUy5wcm90b3R5cGUuanM9ZnVuY3Rpb24odCl7cmV0dXJuIFhFLlZzKHQpfSxsUy5wcm90b3R5cGUuaWk9ZnVuY3Rpb24oZSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVybiBlLnVzZXIudWlkPT09dGhpcy5jdXJyZW50VXNlci51aWQ/WzIsdGhpcy5zeW5jRW5naW5lLnVpKGUuYmF0Y2hJZCxlLnN0YXRlLGUuZXJyb3IpXTooVnkoIlNoYXJlZENsaWVudFN0YXRlIiwiSWdub3JpbmcgbXV0YXRpb24gZm9yIG5vbi1hY3RpdmUgdXNlciAiK2UudXNlci51aWQpLFsyXSl9KX0pfSxsUy5wcm90b3R5cGUub2k9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc3luY0VuZ2luZS5haSh0LnRhcmdldElkLHQuc3RhdGUsdC5lcnJvcil9LGxTLnByb3RvdHlwZS5laT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMscj1lP3RoaXMua3MuaW5zZXJ0KHQsZSk6dGhpcy5rcy5yZW1vdmUodCksaT10aGlzLkdzKHRoaXMua3MpLG89dGhpcy5HcyhyKSxzPVtdLGE9W107cmV0dXJuIG8uZm9yRWFjaChmdW5jdGlvbih0KXtpLmhhcyh0KXx8cy5wdXNoKHQpfSksaS5mb3JFYWNoKGZ1bmN0aW9uKHQpe28uaGFzKHQpfHxhLnB1c2godCl9KSx0aGlzLnN5bmNFbmdpbmUuaGkocyxhKS50aGVuKGZ1bmN0aW9uKCl7bi5rcz1yfSl9LGxTLnByb3RvdHlwZS5Xcz1mdW5jdGlvbih0KXt0aGlzLmtzLmdldCh0LmNsaWVudElkKSYmdGhpcy5vbmxpbmVTdGF0ZUhhbmRsZXIodC5vbmxpbmVTdGF0ZSl9LGxTLnByb3RvdHlwZS5Hcz1mdW5jdGlvbih0KXt2YXIgbj1YdztyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7bj1uLnVuaW9uV2l0aChlLmFjdGl2ZVRhcmdldElkcyl9KSxufSxsUyksWkU9KGhTLnByb3RvdHlwZS5hZGRQZW5kaW5nTXV0YXRpb249ZnVuY3Rpb24odCl7fSxoUy5wcm90b3R5cGUudXBkYXRlTXV0YXRpb25TdGF0ZT1mdW5jdGlvbih0LGUsbil7fSxoUy5wcm90b3R5cGUuYWRkTG9jYWxRdWVyeVRhcmdldD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5saS5Ecyh0KSx0aGlzLmZpW3RdfHwibm90LWN1cnJlbnQifSxoUy5wcm90b3R5cGUudXBkYXRlUXVlcnlTdGF0ZT1mdW5jdGlvbih0LGUsbil7dGhpcy5maVt0XT1lfSxoUy5wcm90b3R5cGUucmVtb3ZlTG9jYWxRdWVyeVRhcmdldD1mdW5jdGlvbih0KXt0aGlzLmxpLkNzKHQpfSxoUy5wcm90b3R5cGUuaXNMb2NhbFF1ZXJ5VGFyZ2V0PWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmxpLmFjdGl2ZVRhcmdldElkcy5oYXModCl9LGhTLnByb3RvdHlwZS5jbGVhclF1ZXJ5U3RhdGU9ZnVuY3Rpb24odCl7ZGVsZXRlIHRoaXMuZmlbdF19LGhTLnByb3RvdHlwZS5nZXRBbGxBY3RpdmVRdWVyeVRhcmdldHM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5saS5hY3RpdmVUYXJnZXRJZHN9LGhTLnByb3RvdHlwZS5pc0FjdGl2ZVF1ZXJ5VGFyZ2V0PWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmxpLmFjdGl2ZVRhcmdldElkcy5oYXModCl9LGhTLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxpPW5ldyBKRSxQcm9taXNlLnJlc29sdmUoKX0saFMucHJvdG90eXBlLmhhbmRsZVVzZXJDaGFuZ2U9ZnVuY3Rpb24odCxlLG4pe30saFMucHJvdG90eXBlLnNldE9ubGluZVN0YXRlPWZ1bmN0aW9uKHQpe30saFMucHJvdG90eXBlLnNodXRkb3duPWZ1bmN0aW9uKCl7fSxoUy5wcm90b3R5cGUud3JpdGVTZXF1ZW5jZU51bWJlcj1mdW5jdGlvbih0KXt9LGhTLnByb3RvdHlwZS5ub3RpZnlCdW5kbGVMb2FkZWQ9ZnVuY3Rpb24oKXt9LGhTKSx0Uz0oY1MucHJvdG90eXBlLmRpPWZ1bmN0aW9uKHQpe30sY1MucHJvdG90eXBlLnNodXRkb3duPWZ1bmN0aW9uKCl7fSxjUyksZVM9KHVTLnByb3RvdHlwZS5kaT1mdW5jdGlvbih0KXt0aGlzLmdpLnB1c2godCl9LHVTLnByb3RvdHlwZS5zaHV0ZG93bj1mdW5jdGlvbigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLHRoaXMud2kpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvZmZsaW5lIix0aGlzLm1pKX0sdVMucHJvdG90eXBlLnBpPWZ1bmN0aW9uKCl7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy53aSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMubWkpfSx1Uy5wcm90b3R5cGUuX2k9ZnVuY3Rpb24oKXtWeSgiQ29ubmVjdGl2aXR5TW9uaXRvciIsIk5ldHdvcmsgY29ubmVjdGl2aXR5IGNoYW5nZWQ6IEFWQUlMQUJMRSIpO2Zvcih2YXIgdD0wLGU9dGhpcy5naTt0PGUubGVuZ3RoO3QrKykoMCxlW3RdKSgwKX0sdVMucHJvdG90eXBlLnlpPWZ1bmN0aW9uKCl7VnkoIkNvbm5lY3Rpdml0eU1vbml0b3IiLCJOZXR3b3JrIGNvbm5lY3Rpdml0eSBjaGFuZ2VkOiBVTkFWQUlMQUJMRSIpO2Zvcih2YXIgdD0wLGU9dGhpcy5naTt0PGUubGVuZ3RoO3QrKykoMCxlW3RdKSgxKX0sdVMueXQ9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmdm9pZCAwIT09d2luZG93LmFkZEV2ZW50TGlzdGVuZXImJnZvaWQgMCE9PXdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyfSx1UyksblM9e0JhdGNoR2V0RG9jdW1lbnRzOiJiYXRjaEdldCIsQ29tbWl0OiJjb21taXQiLFJ1blF1ZXJ5OiJydW5RdWVyeSJ9LHJTPShhUy5wcm90b3R5cGUuSWk9ZnVuY3Rpb24odCl7dGhpcy5BaT10fSxhUy5wcm90b3R5cGUuUmk9ZnVuY3Rpb24odCl7dGhpcy5iaT10fSxhUy5wcm90b3R5cGUub25NZXNzYWdlPWZ1bmN0aW9uKHQpe3RoaXMudmk9dH0sYVMucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7dGhpcy5UaSgpfSxhUy5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbih0KXt0aGlzLkVpKHQpfSxhUy5wcm90b3R5cGUuUGk9ZnVuY3Rpb24oKXt0aGlzLkFpKCl9LGFTLnByb3RvdHlwZS5WaT1mdW5jdGlvbih0KXt0aGlzLmJpKHQpfSxhUy5wcm90b3R5cGUuU2k9ZnVuY3Rpb24odCl7dGhpcy52aSh0KX0sYVMpLGlTPShzUy5wcm90b3R5cGUuTmk9ZnVuY3Rpb24oZSx0LG4scil7dmFyIGk9dGhpcy54aShlLHQpO1Z5KCJSZXN0Q29ubmVjdGlvbiIsIlNlbmRpbmc6ICIsaSxuKTt0PXt9O3JldHVybiB0aGlzLkZpKHQsciksdGhpcy5raShlLGksdCxuKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBWeSgiUmVzdENvbm5lY3Rpb24iLCJSZWNlaXZlZDogIix0KSx0fSxmdW5jdGlvbih0KXt0aHJvdyBLeSgiUmVzdENvbm5lY3Rpb24iLGUrIiBmYWlsZWQgd2l0aCBlcnJvcjogIix0LCJ1cmw6ICIsaSwicmVxdWVzdDoiLG4pLHR9KX0sc1MucHJvdG90eXBlLk9pPWZ1bmN0aW9uKHQsZSxuLHIpe3JldHVybiB0aGlzLk5pKHQsZSxuLHIpfSxzUy5wcm90b3R5cGUuRmk9ZnVuY3Rpb24odCxlKXtpZih0WyJYLUdvb2ctQXBpLUNsaWVudCJdPSJnbC1qcy8gZmlyZS84LjMuMiIsdFsiWC1GaXJlYmFzZS1HTVBJRCJdPXRoaXMuZGF0YWJhc2VJbmZvLmFwcElkLHRbIkNvbnRlbnQtVHlwZSJdPSJ0ZXh0L3BsYWluIixlKWZvcih2YXIgbiBpbiBlLmF1dGhIZWFkZXJzKWUuYXV0aEhlYWRlcnMuaGFzT3duUHJvcGVydHkobikmJih0W25dPWUuYXV0aEhlYWRlcnNbbl0pfSxzUy5wcm90b3R5cGUueGk9ZnVuY3Rpb24odCxlKXt0PW5TW3RdO3JldHVybiB0aGlzLkRpKyIvdjEvIitlKyI6Iit0fSxYaShvUyxHRT1zUyksb1MucHJvdG90eXBlLmtpPWZ1bmN0aW9uKG8sZSxzLGEpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuLHIpe3ZhciBpPW5ldyBPeTtpLmxpc3Rlbk9uY2UoTnkuQ09NUExFVEUsZnVuY3Rpb24oKXt0cnl7c3dpdGNoKGkuZ2V0TGFzdEVycm9yQ29kZSgpKXtjYXNlIEN5Lk5PX0VSUk9SOnZhciB0PWkuZ2V0UmVzcG9uc2VKc29uKCk7VnkoIkNvbm5lY3Rpb24iLCJYSFIgcmVjZWl2ZWQ6IixKU09OLnN0cmluZ2lmeSh0KSksbih0KTticmVhaztjYXNlIEN5LlRJTUVPVVQ6VnkoIkNvbm5lY3Rpb24iLCdSUEMgIicrbysnIiB0aW1lZCBvdXQnKSxyKG5ldyBGeShNeS5ERUFETElORV9FWENFRURFRCwiUmVxdWVzdCB0aW1lIG91dCIpKTticmVhaztjYXNlIEN5LkhUVFBfRVJST1I6dmFyIGU9aS5nZXRTdGF0dXMoKTtWeSgiQ29ubmVjdGlvbiIsJ1JQQyAiJytvKyciIGZhaWxlZCB3aXRoIHN0YXR1czonLGUsInJlc3BvbnNlIHRleHQ6IixpLmdldFJlc3BvbnNlVGV4dCgpKSwwPGU/KHQ9aS5nZXRSZXNwb25zZUpzb24oKS5lcnJvcikmJnQuc3RhdHVzJiZ0Lm1lc3NhZ2U/KGU9dC5zdGF0dXMudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9fL2csIi0iKSxlPTA8PU9iamVjdC52YWx1ZXMoTXkpLmluZGV4T2YoZSk/ZTpNeS5VTktOT1dOLHIobmV3IEZ5KGUsdC5tZXNzYWdlKSkpOnIobmV3IEZ5KE15LlVOS05PV04sIlNlcnZlciByZXNwb25kZWQgd2l0aCBzdGF0dXMgIitpLmdldFN0YXR1cygpKSk6cihuZXcgRnkoTXkuVU5BVkFJTEFCTEUsIkNvbm5lY3Rpb24gZmFpbGVkLiIpKTticmVhaztkZWZhdWx0Okh5KCl9fWZpbmFsbHl7VnkoIkNvbm5lY3Rpb24iLCdSUEMgIicrbysnIiBjb21wbGV0ZWQuJyl9fSk7dmFyIHQ9SlNPTi5zdHJpbmdpZnkoYSk7aS5zZW5kKGUsIlBPU1QiLHQscywxNSl9KX0sb1MucHJvdG90eXBlLiRpPWZ1bmN0aW9uKHQsZSl7dmFyIG49W3RoaXMuRGksIi8iLCJnb29nbGUuZmlyZXN0b3JlLnYxLkZpcmVzdG9yZSIsIi8iLHQsIi9jaGFubmVsIl0scj1uZXcgd3ksaT1TeSgpLHQ9e2h0dHBTZXNzaW9uSWRQYXJhbToiZ3Nlc3Npb25pZCIsaW5pdE1lc3NhZ2VIZWFkZXJzOnt9LG1lc3NhZ2VVcmxQYXJhbXM6e2RhdGFiYXNlOiJwcm9qZWN0cy8iK3RoaXMuZGF0YWJhc2VJZC5wcm9qZWN0SWQrIi9kYXRhYmFzZXMvIit0aGlzLmRhdGFiYXNlSWQuZGF0YWJhc2V9LHNlbmRSYXdKc29uOiEwLHN1cHBvcnRzQ3Jvc3NEb21haW5YaHI6ITAsaW50ZXJuYWxDaGFubmVsUGFyYW1zOntmb3J3YXJkQ2hhbm5lbFJlcXVlc3RUaW1lb3V0TXM6NmU1fSxmb3JjZUxvbmdQb2xsaW5nOnRoaXMuZm9yY2VMb25nUG9sbGluZyxkZXRlY3RCdWZmZXJpbmdQcm94eTp0aGlzLmF1dG9EZXRlY3RMb25nUG9sbGluZ307dGhpcy5GaSh0LmluaXRNZXNzYWdlSGVhZGVycyxlKSx2bygpfHx5bygpfHwwPD1wbygpLmluZGV4T2YoIkVsZWN0cm9uLyIpfHwoMDw9KGU9cG8oKSkuaW5kZXhPZigiTVNJRSAiKXx8MDw9ZS5pbmRleE9mKCJUcmlkZW50LyIpKXx8MDw9cG8oKS5pbmRleE9mKCJNU0FwcEhvc3QvIil8fGdvKCl8fCh0Lmh0dHBIZWFkZXJzT3ZlcndyaXRlUGFyYW09IiRodHRwSGVhZGVycyIpO249bi5qb2luKCIiKTtWeSgiQ29ubmVjdGlvbiIsIkNyZWF0aW5nIFdlYkNoYW5uZWw6ICIrbix0KTt2YXIgbz1yLmNyZWF0ZVdlYkNoYW5uZWwobix0KSxzPSExLGE9ITEsdT1uZXcgclMoe0VpOmZ1bmN0aW9uKHQpe2E/VnkoIkNvbm5lY3Rpb24iLCJOb3Qgc2VuZGluZyBiZWNhdXNlIFdlYkNoYW5uZWwgaXMgY2xvc2VkOiIsdCk6KHN8fChWeSgiQ29ubmVjdGlvbiIsIk9wZW5pbmcgV2ViQ2hhbm5lbCB0cmFuc3BvcnQuIiksby5vcGVuKCkscz0hMCksVnkoIkNvbm5lY3Rpb24iLCJXZWJDaGFubmVsIHNlbmRpbmc6Iix0KSxvLnNlbmQodCkpfSxUaTpmdW5jdGlvbigpe3JldHVybiBvLmNsb3NlKCl9fSksdD1mdW5jdGlvbih0LGUsbil7dC5saXN0ZW4oZSxmdW5jdGlvbih0KXt0cnl7bih0KX1jYXRjaCh0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgdH0sMCl9fSl9O3JldHVybiB0KG8sUHkuRXZlbnRUeXBlLk9QRU4sZnVuY3Rpb24oKXthfHxWeSgiQ29ubmVjdGlvbiIsIldlYkNoYW5uZWwgdHJhbnNwb3J0IG9wZW5lZC4iKX0pLHQobyxQeS5FdmVudFR5cGUuQ0xPU0UsZnVuY3Rpb24oKXthfHwoYT0hMCxWeSgiQ29ubmVjdGlvbiIsIldlYkNoYW5uZWwgdHJhbnNwb3J0IGNsb3NlZCIpLHUuVmkoKSl9KSx0KG8sUHkuRXZlbnRUeXBlLkVSUk9SLGZ1bmN0aW9uKHQpe2F8fChhPSEwLEt5KCJDb25uZWN0aW9uIiwiV2ViQ2hhbm5lbCB0cmFuc3BvcnQgZXJyb3JlZDoiLHQpLHUuVmkobmV3IEZ5KE15LlVOQVZBSUxBQkxFLCJUaGUgb3BlcmF0aW9uIGNvdWxkIG5vdCBiZSBjb21wbGV0ZWQiKSkpfSksdChvLFB5LkV2ZW50VHlwZS5NRVNTQUdFLGZ1bmN0aW9uKHQpe3ZhciBlLG4scixpO2F8fChHeSghIShlPXQuZGF0YVswXSkpLChuPWUuZXJyb3J8fChudWxsPT09KGk9ZVswXSl8fHZvaWQgMD09PWk/dm9pZCAwOmkuZXJyb3IpKT8oVnkoIkNvbm5lY3Rpb24iLCJXZWJDaGFubmVsIHJlY2VpdmVkIGVycm9yOiIsbikscj1uLnN0YXR1cyx0PWZ1bmN0aW9uKCl7dmFyIHQ9U3dbcl07aWYodm9pZCAwIT09dClyZXR1cm4gRHcodCl9KCksaT1uLm1lc3NhZ2Usdm9pZCAwPT09dCYmKHQ9TXkuSU5URVJOQUwsaT0iVW5rbm93biBlcnJvciBzdGF0dXM6ICIrcisiIHdpdGggbWVzc2FnZSAiK24ubWVzc2FnZSksYT0hMCx1LlZpKG5ldyBGeSh0LGkpKSxvLmNsb3NlKCkpOihWeSgiQ29ubmVjdGlvbiIsIldlYkNoYW5uZWwgcmVjZWl2ZWQ6IixlKSx1LlNpKGUpKSl9KSx0KGksQXkuU1RBVF9FVkVOVCxmdW5jdGlvbih0KXt0LnN0YXQ9PT1reT9WeSgiQ29ubmVjdGlvbiIsIkRldGVjdGVkIGJ1ZmZlcmluZyBwcm94eSIpOnQuc3RhdD09PVJ5JiZWeSgiQ29ubmVjdGlvbiIsIkRldGVjdGVkIG5vIGJ1ZmZlcmluZyBwcm94eSIpfSksc2V0VGltZW91dChmdW5jdGlvbigpe3UuUGkoKX0sMCksdX0sb1MpO2Z1bmN0aW9uIG9TKHQpe3ZhciBlPXRoaXM7cmV0dXJuKGU9R0UuY2FsbCh0aGlzLHQpfHx0aGlzKS5mb3JjZUxvbmdQb2xsaW5nPXQuZm9yY2VMb25nUG9sbGluZyxlLmF1dG9EZXRlY3RMb25nUG9sbGluZz10LmF1dG9EZXRlY3RMb25nUG9sbGluZyxlfWZ1bmN0aW9uIHNTKHQpe3RoaXMuZGF0YWJhc2VJbmZvPXQsdGhpcy5kYXRhYmFzZUlkPXQuZGF0YWJhc2VJZDt2YXIgZT10LnNzbD8iaHR0cHMiOiJodHRwIjt0aGlzLkRpPWUrIjovLyIrdC5ob3N0LHRoaXMuQ2k9InByb2plY3RzLyIrdGhpcy5kYXRhYmFzZUlkLnByb2plY3RJZCsiL2RhdGFiYXNlcy8iK3RoaXMuZGF0YWJhc2VJZC5kYXRhYmFzZSsiL2RvY3VtZW50cyJ9ZnVuY3Rpb24gYVModCl7dGhpcy5FaT10LkVpLHRoaXMuVGk9dC5UaX1mdW5jdGlvbiB1Uygpe3ZhciB0PXRoaXM7dGhpcy53aT1mdW5jdGlvbigpe3JldHVybiB0Ll9pKCl9LHRoaXMubWk9ZnVuY3Rpb24oKXtyZXR1cm4gdC55aSgpfSx0aGlzLmdpPVtdLHRoaXMucGkoKX1mdW5jdGlvbiBjUygpe31mdW5jdGlvbiBoUygpe3RoaXMubGk9bmV3IEpFLHRoaXMuZmk9e30sdGhpcy5vbmxpbmVTdGF0ZUhhbmRsZXI9bnVsbCx0aGlzLnNlcXVlbmNlTnVtYmVySGFuZGxlcj1udWxsfWZ1bmN0aW9uIGxTKHQsZSxuLHIsaSl7dGhpcy53aW5kb3c9dCx0aGlzLlNlPWUsdGhpcy5wZXJzaXN0ZW5jZUtleT1uLHRoaXMuTnM9cix0aGlzLnN5bmNFbmdpbmU9bnVsbCx0aGlzLm9ubGluZVN0YXRlSGFuZGxlcj1udWxsLHRoaXMuc2VxdWVuY2VOdW1iZXJIYW5kbGVyPW51bGwsdGhpcy54cz10aGlzLkZzLmJpbmQodGhpcyksdGhpcy5rcz1uZXcgeHcoWXkpLHRoaXMuc3RhcnRlZD0hMSx0aGlzLk9zPVtdO249bi5yZXBsYWNlKC9bLiorP14ke30oKXxbXF1cXF0vZywiXFwkJiIpO3RoaXMuc3RvcmFnZT10aGlzLndpbmRvdy5sb2NhbFN0b3JhZ2UsdGhpcy5jdXJyZW50VXNlcj1pLHRoaXMuJHM9S0UodGhpcy5wZXJzaXN0ZW5jZUtleSx0aGlzLk5zKSx0aGlzLk1zPSJmaXJlc3RvcmVfc2VxdWVuY2VfbnVtYmVyXyIrdGhpcy5wZXJzaXN0ZW5jZUtleSx0aGlzLmtzPXRoaXMua3MuaW5zZXJ0KHRoaXMuTnMsbmV3IEpFKSx0aGlzLkxzPW5ldyBSZWdFeHAoIl5maXJlc3RvcmVfY2xpZW50c18iK24rIl8oW15fXSopJCIpLHRoaXMuQnM9bmV3IFJlZ0V4cCgiXmZpcmVzdG9yZV9tdXRhdGlvbnNfIituKyJfKFxcZCspKD86XyguKikpPyQiKSx0aGlzLnFzPW5ldyBSZWdFeHAoIl5maXJlc3RvcmVfdGFyZ2V0c18iK24rIl8oXFxkKykkIiksdGhpcy5Vcz0iZmlyZXN0b3JlX29ubGluZV9zdGF0ZV8iK3RoaXMucGVyc2lzdGVuY2VLZXksdGhpcy5Rcz0iZmlyZXN0b3JlX2J1bmRsZV9sb2FkZWRfIit0aGlzLnBlcnNpc3RlbmNlS2V5LHRoaXMud2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0b3JhZ2UiLHRoaXMueHMpfWZ1bmN0aW9uIGZTKCl7dGhpcy5hY3RpdmVUYXJnZXRJZHM9WHd9ZnVuY3Rpb24gcFModCxlKXt0aGlzLmNsaWVudElkPXQsdGhpcy5vbmxpbmVTdGF0ZT1lfWZ1bmN0aW9uIGRTKHQsZSl7dGhpcy5jbGllbnRJZD10LHRoaXMuYWN0aXZlVGFyZ2V0SWRzPWV9ZnVuY3Rpb24gdlModCxlLG4pe3RoaXMudGFyZ2V0SWQ9dCx0aGlzLnN0YXRlPWUsdGhpcy5lcnJvcj1ufWZ1bmN0aW9uIGdTKHQsZSxuLHIpe3RoaXMudXNlcj10LHRoaXMuYmF0Y2hJZD1lLHRoaXMuc3RhdGU9bix0aGlzLmVycm9yPXJ9ZnVuY3Rpb24geVMoKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6bnVsbH1mdW5jdGlvbiBtUygpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQ/ZG9jdW1lbnQ6bnVsbH1mdW5jdGlvbiBiUyh0KXtyZXR1cm4gbmV3IGZfKHQsITApfWZ1bmN0aW9uIHdTKHQsZSxuLHIsaSl7dmFyIG89dGhpczt0aGlzLmxvY2FsU3RvcmU9dCx0aGlzLmRhdGFzdG9yZT1lLHRoaXMuYXN5bmNRdWV1ZT1uLHRoaXMucmVtb3RlU3luY2VyPXt9LHRoaXMua3I9W10sdGhpcy5Pcj1uZXcgTWFwLHRoaXMuJHI9bmV3IFNldCx0aGlzLk1yPVtdLHRoaXMuTHI9aSx0aGlzLkxyLmRpKGZ1bmN0aW9uKHQpe24uZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaShvLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBLUyh0aGlzKT8oVnkoIlJlbW90ZVN0b3JlIiwiUmVzdGFydGluZyBzdHJlYW1zIGZvciBuZXR3b3JrIHJlYWNoYWJpbGl0eSBjaGFuZ2UuIiksWzQsZnVuY3Rpb24obil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKGU9bikuJHIuYWRkKDQpLFs0LE1TKGUpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLGUuQnIuc2V0KCJVbmtub3duIiksZS4kci5kZWxldGUoNCksWzQsTFMoZSldO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzJdfX0pfSl9KHRoaXMpXSk6WzMsMl07Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzJdfX0pfSl9KX0pLHRoaXMuQnI9bmV3IEFTKG4scil9dmFyIF9TLElTLFRTLEVTPSh4Uy5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLnFpPTB9LHhTLnByb3RvdHlwZS5LaT1mdW5jdGlvbigpe3RoaXMucWk9dGhpcy5CaX0seFMucHJvdG90eXBlLmppPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5jYW5jZWwoKTt2YXIgbj1NYXRoLmZsb29yKHRoaXMucWkrdGhpcy5XaSgpKSxyPU1hdGgubWF4KDAsRGF0ZS5ub3coKS10aGlzLlFpKSxpPU1hdGgubWF4KDAsbi1yKTswPGkmJlZ5KCJFeHBvbmVudGlhbEJhY2tvZmYiLCJCYWNraW5nIG9mZiBmb3IgIitpKyIgbXMgKGJhc2UgZGVsYXk6ICIrdGhpcy5xaSsiIG1zLCBkZWxheSB3aXRoIGppdHRlcjogIituKyIgbXMsIGxhc3QgYXR0ZW1wdDogIityKyIgbXMgYWdvKSIpLHRoaXMuVWk9dGhpcy5TZS5lbnF1ZXVlQWZ0ZXJEZWxheSh0aGlzLnRpbWVySWQsaSxmdW5jdGlvbigpe3JldHVybiBlLlFpPURhdGUubm93KCksdCgpfSksdGhpcy5xaSo9dGhpcy5MaSx0aGlzLnFpPHRoaXMuTWkmJih0aGlzLnFpPXRoaXMuTWkpLHRoaXMucWk+dGhpcy5CaSYmKHRoaXMucWk9dGhpcy5CaSl9LHhTLnByb3RvdHlwZS5HaT1mdW5jdGlvbigpe251bGwhPT10aGlzLlVpJiYodGhpcy5VaS5za2lwRGVsYXkoKSx0aGlzLlVpPW51bGwpfSx4Uy5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuVWkmJih0aGlzLlVpLmNhbmNlbCgpLHRoaXMuVWk9bnVsbCl9LHhTLnByb3RvdHlwZS5XaT1mdW5jdGlvbigpe3JldHVybihNYXRoLnJhbmRvbSgpLS41KSp0aGlzLnFpfSx4UyksU249KERTLnByb3RvdHlwZS50cj1mdW5jdGlvbigpe3JldHVybiAxPT09dGhpcy5zdGF0ZXx8Mj09PXRoaXMuc3RhdGV8fDQ9PT10aGlzLnN0YXRlfSxEUy5wcm90b3R5cGUuZXI9ZnVuY3Rpb24oKXtyZXR1cm4gMj09PXRoaXMuc3RhdGV9LERTLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpezMhPT10aGlzLnN0YXRlP3RoaXMuYXV0aCgpOnRoaXMubnIoKX0sRFMucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdGhpcy50cigpP1s0LHRoaXMuY2xvc2UoMCldOlszLDJdO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyXX19KX0pfSxEUy5wcm90b3R5cGUuc3I9ZnVuY3Rpb24oKXt0aGlzLnN0YXRlPTAsdGhpcy5aaS5yZXNldCgpfSxEUy5wcm90b3R5cGUuaXI9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuZXIoKSYmbnVsbD09PXRoaXMuWGkmJih0aGlzLlhpPXRoaXMuU2UuZW5xdWV1ZUFmdGVyRGVsYXkodGhpcy56aSw2ZTQsZnVuY3Rpb24oKXtyZXR1cm4gdC5ycigpfSkpfSxEUy5wcm90b3R5cGUuY3I9ZnVuY3Rpb24odCl7dGhpcy51cigpLHRoaXMuc3RyZWFtLnNlbmQodCl9LERTLnByb3RvdHlwZS5ycj1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lcigpP1syLHRoaXMuY2xvc2UoMCldOlsyXX0pfSl9LERTLnByb3RvdHlwZS51cj1mdW5jdGlvbigpe3RoaXMuWGkmJih0aGlzLlhpLmNhbmNlbCgpLHRoaXMuWGk9bnVsbCl9LERTLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbihlLG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLnVyKCksdGhpcy5aaS5jYW5jZWwoKSx0aGlzLllpKyssMyE9PWU/dGhpcy5aaS5yZXNldCgpOm4mJm4uY29kZT09PU15LlJFU09VUkNFX0VYSEFVU1RFRD8oQnkobi50b1N0cmluZygpKSxCeSgiVXNpbmcgbWF4aW11bSBiYWNrb2ZmIGRlbGF5IHRvIHByZXZlbnQgb3ZlcmxvYWRpbmcgdGhlIGJhY2tlbmQuIiksdGhpcy5aaS5LaSgpKTpuJiZuLmNvZGU9PT1NeS5VTkFVVEhFTlRJQ0FURUQmJnRoaXMuSmkuaW52YWxpZGF0ZVRva2VuKCksbnVsbCE9PXRoaXMuc3RyZWFtJiYodGhpcy5hcigpLHRoaXMuc3RyZWFtLmNsb3NlKCksdGhpcy5zdHJlYW09bnVsbCksdGhpcy5zdGF0ZT1lLFs0LHRoaXMubGlzdGVuZXIuUmkobildO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksWzJdfX0pfSl9LERTLnByb3RvdHlwZS5hcj1mdW5jdGlvbigpe30sRFMucHJvdG90eXBlLmF1dGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuc3RhdGU9MTt2YXIgdD10aGlzLmhyKHRoaXMuWWkpLGU9dGhpcy5ZaTt0aGlzLkppLmdldFRva2VuKCkudGhlbihmdW5jdGlvbih0KXtuLllpPT09ZSYmbi5scih0KX0sZnVuY3Rpb24oZSl7dChmdW5jdGlvbigpe3ZhciB0PW5ldyBGeShNeS5VTktOT1dOLCJGZXRjaGluZyBhdXRoIHRva2VuIGZhaWxlZDogIitlLm1lc3NhZ2UpO3JldHVybiBuLmRyKHQpfSl9KX0sRFMucHJvdG90eXBlLmxyPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj10aGlzLmhyKHRoaXMuWWkpO3RoaXMuc3RyZWFtPXRoaXMud3IodCksdGhpcy5zdHJlYW0uSWkoZnVuY3Rpb24oKXtuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuc3RhdGU9MixlLmxpc3RlbmVyLklpKCl9KX0pLHRoaXMuc3RyZWFtLlJpKGZ1bmN0aW9uKHQpe24oZnVuY3Rpb24oKXtyZXR1cm4gZS5kcih0KX0pfSksdGhpcy5zdHJlYW0ub25NZXNzYWdlKGZ1bmN0aW9uKHQpe24oZnVuY3Rpb24oKXtyZXR1cm4gZS5vbk1lc3NhZ2UodCl9KX0pfSxEUy5wcm90b3R5cGUubnI9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuc3RhdGU9NCx0aGlzLlppLmppKGZ1bmN0aW9uKCl7cmV0dXJuICRpKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnN0YXRlPTAsdGhpcy5zdGFydCgpLFsyXX0pfSl9KX0sRFMucHJvdG90eXBlLmRyPWZ1bmN0aW9uKHQpe3JldHVybiBWeSgiUGVyc2lzdGVudFN0cmVhbSIsImNsb3NlIHdpdGggZXJyb3I6ICIrdCksdGhpcy5zdHJlYW09bnVsbCx0aGlzLmNsb3NlKDMsdCl9LERTLnByb3RvdHlwZS5ocj1mdW5jdGlvbihlKXt2YXIgbj10aGlzO3JldHVybiBmdW5jdGlvbih0KXtuLlNlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gbi5ZaT09PWU/dCgpOihWeSgiUGVyc2lzdGVudFN0cmVhbSIsInN0cmVhbSBjYWxsYmFjayBza2lwcGVkIGJ5IGdldENsb3NlR3VhcmRlZERpc3BhdGNoZXIuIiksUHJvbWlzZS5yZXNvbHZlKCkpfSl9fSxEUyksU1M9KFhpKE9TLFRTPVNuKSxPUy5wcm90b3R5cGUud3I9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuSGkuJGkoIkxpc3RlbiIsdCl9LE9TLnByb3RvdHlwZS5vbk1lc3NhZ2U9ZnVuY3Rpb24odCl7dGhpcy5aaS5yZXNldCgpO3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoInRhcmdldENoYW5nZSJpbiBlKXtlLnRhcmdldENoYW5nZTt2YXIgbj0iTk9fQ0hBTkdFIj09PShvPWUudGFyZ2V0Q2hhbmdlLnRhcmdldENoYW5nZVR5cGV8fCJOT19DSEFOR0UiKT8wOiJBREQiPT09bz8xOiJSRU1PVkUiPT09bz8yOiJDVVJSRU5UIj09PW8/MzoiUkVTRVQiPT09bz80Okh5KCkscj1lLnRhcmdldENoYW5nZS50YXJnZXRJZHN8fFtdLGk9KHM9ZS50YXJnZXRDaGFuZ2UucmVzdW1lVG9rZW4sdC5JPyhHeSh2b2lkIDA9PT1zfHwic3RyaW5nIj09dHlwZW9mIHMpLGxtLmZyb21CYXNlNjRTdHJpbmcoc3x8IiIpKTooR3kodm9pZCAwPT09c3x8cyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpLGxtLmZyb21VaW50OEFycmF5KHN8fG5ldyBVaW50OEFycmF5KSkpLG89KGE9ZS50YXJnZXRDaGFuZ2UuY2F1c2UpJiYodT12b2lkIDA9PT0oYz1hKS5jb2RlP015LlVOS05PV046RHcoYy5jb2RlKSxuZXcgRnkodSxjLm1lc3NhZ2V8fCIiKSkscz1uZXcgZV8obixyLGksb3x8bnVsbCl9ZWxzZSBpZigiZG9jdW1lbnRDaGFuZ2UiaW4gZSl7ZS5kb2N1bWVudENoYW5nZSwobj1lLmRvY3VtZW50Q2hhbmdlKS5kb2N1bWVudCxuLmRvY3VtZW50Lm5hbWUsbi5kb2N1bWVudC51cGRhdGVUaW1lO3ZhciByPWJfKHQsbi5kb2N1bWVudC5uYW1lKSxpPXZfKG4uZG9jdW1lbnQudXBkYXRlVGltZSksYT1uZXcgcW0oe21hcFZhbHVlOntmaWVsZHM6bi5kb2N1bWVudC5maWVsZHN9fSksdT0obz1CbS5uZXdGb3VuZERvY3VtZW50KHIsaSxhKSxuLnRhcmdldElkc3x8W10pLGM9bi5yZW1vdmVkVGFyZ2V0SWRzfHxbXTtzPW5ldyBadyh1LGMsby5rZXksbyl9ZWxzZSBpZigiZG9jdW1lbnREZWxldGUiaW4gZSllLmRvY3VtZW50RGVsZXRlLChuPWUuZG9jdW1lbnREZWxldGUpLmRvY3VtZW50LHI9Yl8odCxuLmRvY3VtZW50KSxpPW4ucmVhZFRpbWU/dl8obi5yZWFkVGltZSk6WnkubWluKCksYT1CbS5uZXdOb0RvY3VtZW50KHIsaSksbz1uLnJlbW92ZWRUYXJnZXRJZHN8fFtdLHM9bmV3IFp3KFtdLG8sYS5rZXksYSk7ZWxzZSBpZigiZG9jdW1lbnRSZW1vdmUiaW4gZSllLmRvY3VtZW50UmVtb3ZlLChuPWUuZG9jdW1lbnRSZW1vdmUpLmRvY3VtZW50LHI9Yl8odCxuLmRvY3VtZW50KSxpPW4ucmVtb3ZlZFRhcmdldElkc3x8W10scz1uZXcgWncoW10saSxyLG51bGwpO2Vsc2V7aWYoISgiZmlsdGVyImluIGUpKXJldHVybiBIeSgpO2UuZmlsdGVyO2U9ZS5maWx0ZXI7ZS50YXJnZXRJZCxuPWUuY291bnR8fDAscj1uZXcgRXcobiksaT1lLnRhcmdldElkLHM9bmV3IHRfKGkscil9cmV0dXJuIHN9KHRoaXMuUix0KSx0PWZ1bmN0aW9uKHQpe2lmKCEoInRhcmdldENoYW5nZSJpbiB0KSlyZXR1cm4gWnkubWluKCk7dD10LnRhcmdldENoYW5nZTtyZXR1cm4oIXQudGFyZ2V0SWRzfHwhdC50YXJnZXRJZHMubGVuZ3RoKSYmdC5yZWFkVGltZT92Xyh0LnJlYWRUaW1lKTpaeS5taW4oKX0odCk7cmV0dXJuIHRoaXMubGlzdGVuZXIuX3IoZSx0KX0sT1MucHJvdG90eXBlLm1yPWZ1bmN0aW9uKHQpe3ZhciBlLG4scixpPXt9O2kuZGF0YWJhc2U9SV8odGhpcy5SKSxpLmFkZFRhcmdldD0oZT10aGlzLlIsKHI9UW0ocj0obj10KS50YXJnZXQpP3tkb2N1bWVudHM6QV8oZSxyKX06e3F1ZXJ5OmtfKGUscil9KS50YXJnZXRJZD1uLnRhcmdldElkLDA8bi5yZXN1bWVUb2tlbi5hcHByb3hpbWF0ZUJ5dGVTaXplKCk/ci5yZXN1bWVUb2tlbj1kXyhlLG4ucmVzdW1lVG9rZW4pOjA8bi5zbmFwc2hvdFZlcnNpb24uY29tcGFyZVRvKFp5Lm1pbigpKSYmKHIucmVhZFRpbWU9cF8oZSxuLnNuYXBzaG90VmVyc2lvbi50b1RpbWVzdGFtcCgpKSkscik7dmFyIG8sdD0odGhpcy5SLG89dCxudWxsPT0odD1mdW5jdGlvbigpe3N3aXRjaChvLnB1cnBvc2Upe2Nhc2UgMDpyZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuImV4aXN0ZW5jZS1maWx0ZXItbWlzbWF0Y2giO2Nhc2UgMjpyZXR1cm4ibGltYm8tZG9jdW1lbnQiO2RlZmF1bHQ6cmV0dXJuIEh5KCl9fSgpKT9udWxsOnsiZ29vZy1saXN0ZW4tdGFncyI6dH0pO3QmJihpLmxhYmVscz10KSx0aGlzLmNyKGkpfSxPUy5wcm90b3R5cGUueXI9ZnVuY3Rpb24odCl7dmFyIGU9e307ZS5kYXRhYmFzZT1JXyh0aGlzLlIpLGUucmVtb3ZlVGFyZ2V0PXQsdGhpcy5jcihlKX0sT1MpLENTPShYaShQUyxJUz1TbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KFBTLnByb3RvdHlwZSwicHIiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ncn0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxQUy5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXt0aGlzLmdyPSExLHRoaXMubGFzdFN0cmVhbVRva2VuPXZvaWQgMCxJUy5wcm90b3R5cGUuc3RhcnQuY2FsbCh0aGlzKX0sUFMucHJvdG90eXBlLmFyPWZ1bmN0aW9uKCl7dGhpcy5nciYmdGhpcy5FcihbXSl9LFBTLnByb3RvdHlwZS53cj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5IaS4kaSgiV3JpdGUiLHQpfSxQUy5wcm90b3R5cGUub25NZXNzYWdlPWZ1bmN0aW9uKHQpe2lmKEd5KCEhdC5zdHJlYW1Ub2tlbiksdGhpcy5sYXN0U3RyZWFtVG9rZW49dC5zdHJlYW1Ub2tlbix0aGlzLmdyKXt0aGlzLlppLnJlc2V0KCk7dmFyIGU9KG49dC53cml0ZVJlc3VsdHMscj10LmNvbW1pdFRpbWUsbiYmMDxuLmxlbmd0aD8oR3kodm9pZCAwIT09ciksbi5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG49ciwodD0oZT10KS51cGRhdGVUaW1lP3ZfKGUudXBkYXRlVGltZSk6dl8obikpLmlzRXF1YWwoWnkubWluKCkpJiYodD12XyhuKSksbmV3IGF3KHQsZS50cmFuc2Zvcm1SZXN1bHRzfHxbXSk7dmFyIGUsbn0pKTpbXSksbj12Xyh0LmNvbW1pdFRpbWUpO3JldHVybiB0aGlzLmxpc3RlbmVyLlRyKG4sZSl9dmFyIG4scjtyZXR1cm4gR3koIXQud3JpdGVSZXN1bHRzfHwwPT09dC53cml0ZVJlc3VsdHMubGVuZ3RoKSx0aGlzLmdyPSEwLHRoaXMubGlzdGVuZXIuSXIoKX0sUFMucHJvdG90eXBlLkFyPWZ1bmN0aW9uKCl7dmFyIHQ9e307dC5kYXRhYmFzZT1JXyh0aGlzLlIpLHRoaXMuY3IodCl9LFBTLnByb3RvdHlwZS5Fcj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLHQ9e3N0cmVhbVRva2VuOnRoaXMubGFzdFN0cmVhbVRva2VuLHdyaXRlczp0Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gQ18oZS5SLHQpfSl9O3RoaXMuY3IodCl9LFBTKSxOUz0oWGkoUlMsX1M9ZnVuY3Rpb24oKXt9KSxSUy5wcm90b3R5cGUuYnI9ZnVuY3Rpb24oKXtpZih0aGlzLlJyKXRocm93IG5ldyBGeShNeS5GQUlMRURfUFJFQ09ORElUSU9OLCJUaGUgY2xpZW50IGhhcyBhbHJlYWR5IGJlZW4gdGVybWluYXRlZC4iKX0sUlMucHJvdG90eXBlLk5pPWZ1bmN0aW9uKGUsbixyKXt2YXIgaT10aGlzO3JldHVybiB0aGlzLmJyKCksdGhpcy5jcmVkZW50aWFscy5nZXRUb2tlbigpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGkuSGkuTmkoZSxuLHIsdCl9KS5jYXRjaChmdW5jdGlvbih0KXt0aHJvdyB0LmNvZGU9PT1NeS5VTkFVVEhFTlRJQ0FURUQmJmkuY3JlZGVudGlhbHMuaW52YWxpZGF0ZVRva2VuKCksdH0pfSxSUy5wcm90b3R5cGUuT2k9ZnVuY3Rpb24oZSxuLHIpe3ZhciBpPXRoaXM7cmV0dXJuIHRoaXMuYnIoKSx0aGlzLmNyZWRlbnRpYWxzLmdldFRva2VuKCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gaS5IaS5PaShlLG4scix0KX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3Rocm93IHQuY29kZT09PU15LlVOQVVUSEVOVElDQVRFRCYmaS5jcmVkZW50aWFscy5pbnZhbGlkYXRlVG9rZW4oKSx0fSl9LFJTLnByb3RvdHlwZS50ZXJtaW5hdGU9ZnVuY3Rpb24oKXt0aGlzLlJyPSExfSxSUyksQVM9KGtTLnByb3RvdHlwZS5Tcj1mdW5jdGlvbigpe3ZhciB0PXRoaXM7MD09PXRoaXMudnImJih0aGlzLkRyKCJVbmtub3duIiksdGhpcy5Qcj10aGlzLmFzeW5jUXVldWUuZW5xdWV1ZUFmdGVyRGVsYXkoIm9ubGluZV9zdGF0ZV90aW1lb3V0IiwxZTQsZnVuY3Rpb24oKXtyZXR1cm4gdC5Qcj1udWxsLHQuQ3IoIkJhY2tlbmQgZGlkbid0IHJlc3BvbmQgd2l0aGluIDEwIHNlY29uZHMuIiksdC5EcigiT2ZmbGluZSIpLFByb21pc2UucmVzb2x2ZSgpfSkpfSxrUy5wcm90b3R5cGUuTnI9ZnVuY3Rpb24odCl7Ik9ubGluZSI9PT10aGlzLnN0YXRlP3RoaXMuRHIoIlVua25vd24iKToodGhpcy52cisrLDE8PXRoaXMudnImJih0aGlzLkZyKCksdGhpcy5DcigiQ29ubmVjdGlvbiBmYWlsZWQgMSB0aW1lcy4gTW9zdCByZWNlbnQgZXJyb3I6ICIrdC50b1N0cmluZygpKSx0aGlzLkRyKCJPZmZsaW5lIikpKX0sa1MucHJvdG90eXBlLnNldD1mdW5jdGlvbih0KXt0aGlzLkZyKCksdGhpcy52cj0wLCJPbmxpbmUiPT09dCYmKHRoaXMuVnI9ITEpLHRoaXMuRHIodCl9LGtTLnByb3RvdHlwZS5Ecj1mdW5jdGlvbih0KXt0IT09dGhpcy5zdGF0ZSYmKHRoaXMuc3RhdGU9dCx0aGlzLm9ubGluZVN0YXRlSGFuZGxlcih0KSl9LGtTLnByb3RvdHlwZS5Dcj1mdW5jdGlvbih0KXt0PSJDb3VsZCBub3QgcmVhY2ggQ2xvdWQgRmlyZXN0b3JlIGJhY2tlbmQuICIrdCsiXG5UaGlzIHR5cGljYWxseSBpbmRpY2F0ZXMgdGhhdCB5b3VyIGRldmljZSBkb2VzIG5vdCBoYXZlIGEgaGVhbHRoeSBJbnRlcm5ldCBjb25uZWN0aW9uIGF0IHRoZSBtb21lbnQuIFRoZSBjbGllbnQgd2lsbCBvcGVyYXRlIGluIG9mZmxpbmUgbW9kZSB1bnRpbCBpdCBpcyBhYmxlIHRvIHN1Y2Nlc3NmdWxseSBjb25uZWN0IHRvIHRoZSBiYWNrZW5kLiI7dGhpcy5Wcj8oQnkodCksdGhpcy5Wcj0hMSk6VnkoIk9ubGluZVN0YXRlVHJhY2tlciIsdCl9LGtTLnByb3RvdHlwZS5Gcj1mdW5jdGlvbigpe251bGwhPT10aGlzLlByJiYodGhpcy5Qci5jYW5jZWwoKSx0aGlzLlByPW51bGwpfSxrUyk7ZnVuY3Rpb24ga1ModCxlKXt0aGlzLmFzeW5jUXVldWU9dCx0aGlzLm9ubGluZVN0YXRlSGFuZGxlcj1lLHRoaXMuc3RhdGU9IlVua25vd24iLHRoaXMudnI9MCx0aGlzLlByPW51bGwsdGhpcy5Wcj0hMH1mdW5jdGlvbiBSUyh0LGUsbil7dmFyIHI9dGhpcztyZXR1cm4ocj1fUy5jYWxsKHRoaXMpfHx0aGlzKS5jcmVkZW50aWFscz10LHIuSGk9ZSxyLlI9bixyLlJyPSExLHJ9ZnVuY3Rpb24gUFModCxlLG4scixpKXt2YXIgbz10aGlzO3JldHVybihvPUlTLmNhbGwodGhpcyx0LCJ3cml0ZV9zdHJlYW1fY29ubmVjdGlvbl9iYWNrb2ZmIiwid3JpdGVfc3RyZWFtX2lkbGUiLGUsbixpKXx8dGhpcykuUj1yLG8uZ3I9ITEsb31mdW5jdGlvbiBPUyh0LGUsbixyLGkpe3ZhciBvPXRoaXM7cmV0dXJuKG89VFMuY2FsbCh0aGlzLHQsImxpc3Rlbl9zdHJlYW1fY29ubmVjdGlvbl9iYWNrb2ZmIiwibGlzdGVuX3N0cmVhbV9pZGxlIixlLG4saSl8fHRoaXMpLlI9cixvfWZ1bmN0aW9uIERTKHQsZSxuLHIsaSxvKXt0aGlzLlNlPXQsdGhpcy56aT1uLHRoaXMuSGk9cix0aGlzLkppPWksdGhpcy5saXN0ZW5lcj1vLHRoaXMuc3RhdGU9MCx0aGlzLllpPTAsdGhpcy5YaT1udWxsLHRoaXMuc3RyZWFtPW51bGwsdGhpcy5aaT1uZXcgRVModCxlKX1mdW5jdGlvbiB4Uyh0LGUsbixyLGkpe3ZvaWQgMD09PW4mJihuPTFlMyksdm9pZCAwPT09ciYmKHI9MS41KSx2b2lkIDA9PT1pJiYoaT02ZTQpLHRoaXMuU2U9dCx0aGlzLnRpbWVySWQ9ZSx0aGlzLk1pPW4sdGhpcy5MaT1yLHRoaXMuQmk9aSx0aGlzLnFpPTAsdGhpcy5VaT1udWxsLHRoaXMuUWk9RGF0ZS5ub3coKSx0aGlzLnJlc2V0KCl9ZnVuY3Rpb24gTFMocil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZighS1MocikpcmV0dXJuWzMsNF07ZT0wLG49ci5Ncix0LmxhYmVsPTE7Y2FzZSAxOnJldHVybiBlPG4ubGVuZ3RoP1s0LCgwLG5bZV0pKCEwKV06WzMsNF07Y2FzZSAyOnQuc2VudCgpLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuIGUrKyxbMywxXTtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9ZnVuY3Rpb24gTVMocil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDplPTAsbj1yLk1yLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIGU8bi5sZW5ndGg/WzQsKDAsbltlXSkoITEpXTpbMyw0XTtjYXNlIDI6dC5zZW50KCksdC5sYWJlbD0zO2Nhc2UgMzpyZXR1cm4gZSsrLFszLDFdO2Nhc2UgNDpyZXR1cm5bMl19fSl9KX1mdW5jdGlvbiBGUyh0LGUpe3QuT3IuaGFzKGUudGFyZ2V0SWQpfHwodC5Pci5zZXQoZS50YXJnZXRJZCxlKSxCUyh0KT9WUyh0KTokUyh0KS5lcigpJiZqUyh0LGUpKX1mdW5jdGlvbiBVUyh0LGUpe3ZhciBuPXQsdD0kUyhuKTtuLk9yLmRlbGV0ZShlKSx0LmVyKCkmJnFTKG4sZSksMD09PW4uT3Iuc2l6ZSYmKHQuZXIoKT90LmlyKCk6S1MobikmJm4uQnIuc2V0KCJVbmtub3duIikpfWZ1bmN0aW9uIGpTKHQsZSl7dC5xci5VKGUudGFyZ2V0SWQpLCRTKHQpLm1yKGUpfWZ1bmN0aW9uIHFTKHQsZSl7dC5xci5VKGUpLCRTKHQpLnlyKGUpfWZ1bmN0aW9uIFZTKGUpe2UucXI9bmV3IHJfKHtnZXRSZW1vdGVLZXlzRm9yVGFyZ2V0OmZ1bmN0aW9uKHQpe3JldHVybiBlLnJlbW90ZVN5bmNlci5nZXRSZW1vdGVLZXlzRm9yVGFyZ2V0KHQpfSxsdDpmdW5jdGlvbih0KXtyZXR1cm4gZS5Pci5nZXQodCl8fG51bGx9fSksJFMoZSkuc3RhcnQoKSxlLkJyLlNyKCl9ZnVuY3Rpb24gQlModCl7cmV0dXJuIEtTKHQpJiYhJFModCkudHIoKSYmMDx0Lk9yLnNpemV9ZnVuY3Rpb24gS1ModCl7cmV0dXJuIDA9PT10LiRyLnNpemV9ZnVuY3Rpb24gV1ModCl7dC5xcj12b2lkIDB9ZnVuY3Rpb24gSFMocyxhLHUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixvO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6aWYocy5Cci5zZXQoIk9ubGluZSIpLCEoYSBpbnN0YW5jZW9mIGVfJiYyPT09YS5zdGF0ZSYmYS5jYXVzZSkpcmV0dXJuWzMsNl07dC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsMywsNV0pLFs0LGZ1bmN0aW9uKG8scyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6ZT1zLmNhdXNlLG49MCxyPXMudGFyZ2V0SWRzLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIG48ci5sZW5ndGg/KGk9cltuXSxvLk9yLmhhcyhpKT9bNCxvLnJlbW90ZVN5bmNlci5yZWplY3RMaXN0ZW4oaSxlKV06WzMsM10pOlszLDVdO2Nhc2UgMjp0LnNlbnQoKSxvLk9yLmRlbGV0ZShpKSxvLnFyLnJlbW92ZVRhcmdldChpKSx0LmxhYmVsPTM7Y2FzZSAzOnQubGFiZWw9NDtjYXNlIDQ6cmV0dXJuIG4rKyxbMywxXTtjYXNlIDU6cmV0dXJuWzJdfX0pfSl9KHMsYSldO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzMsNV07Y2FzZSAzOnJldHVybiBuPXQuc2VudCgpLFZ5KCJSZW1vdGVTdG9yZSIsIkZhaWxlZCB0byByZW1vdmUgdGFyZ2V0cyAlczogJXMgIixhLnRhcmdldElkcy5qb2luKCIsIiksbiksWzQsR1MocyxuKV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbMyw1XTtjYXNlIDU6cmV0dXJuWzMsMTNdO2Nhc2UgNjppZihhIGluc3RhbmNlb2YgWnc/cy5xci5YKGEpOmEgaW5zdGFuY2VvZiB0Xz9zLnFyLnJ0KGEpOnMucXIuZXQoYSksdS5pc0VxdWFsKFp5Lm1pbigpKSlyZXR1cm5bMywxM107dC5sYWJlbD03O2Nhc2UgNzpyZXR1cm4gdC50cnlzLnB1c2goWzcsMTEsLDEzXSksWzQsaEUocy5sb2NhbFN0b3JlKV07Y2FzZSA4OnJldHVybiBvPXQuc2VudCgpLDA8PXUuY29tcGFyZVRvKG8pP1s0LChpPXUsKGU9KHI9cykucXIudXQoaSkpLnRhcmdldENoYW5nZXMuZm9yRWFjaChmdW5jdGlvbih0LGUpe3ZhciBuOzA8dC5yZXN1bWVUb2tlbi5hcHByb3hpbWF0ZUJ5dGVTaXplKCkmJigobj1yLk9yLmdldChlKSkmJnIuT3Iuc2V0KGUsbi53aXRoUmVzdW1lVG9rZW4odC5yZXN1bWVUb2tlbixpKSkpfSksZS50YXJnZXRNaXNtYXRjaGVzLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9ci5Pci5nZXQodCk7ZSYmKHIuT3Iuc2V0KHQsZS53aXRoUmVzdW1lVG9rZW4obG0uRU1QVFlfQllURV9TVFJJTkcsZS5zbmFwc2hvdFZlcnNpb24pKSxxUyhyLHQpLGU9bmV3IFBJKGUudGFyZ2V0LHQsMSxlLnNlcXVlbmNlTnVtYmVyKSxqUyhyLGUpKX0pLHIucmVtb3RlU3luY2VyLmFwcGx5UmVtb3RlRXZlbnQoZSkpXTpbMywxMF07Y2FzZSA5OnQuc2VudCgpLHQubGFiZWw9MTA7Y2FzZSAxMDpyZXR1cm5bMywxM107Y2FzZSAxMTpyZXR1cm4gVnkoIlJlbW90ZVN0b3JlIiwiRmFpbGVkIHRvIHJhaXNlIHNuYXBzaG90OiIsbz10LnNlbnQoKSksWzQsR1MocyxvKV07Y2FzZSAxMjpyZXR1cm4gdC5zZW50KCksWzMsMTNdO2Nhc2UgMTM6cmV0dXJuWzJdfXZhciByLGksZX0pfSl9ZnVuY3Rpb24gR1MobixyLGkpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6aWYoIWJJKHIpKXRocm93IHI7cmV0dXJuIG4uJHIuYWRkKDEpLFs0LE1TKG4pXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLG4uQnIuc2V0KCJPZmZsaW5lIiksaT1pfHxmdW5jdGlvbigpe3JldHVybiBoRShuLmxvY2FsU3RvcmUpfSxuLmFzeW5jUXVldWUuZW5xdWV1ZVJldHJ5YWJsZShmdW5jdGlvbigpe3JldHVybiAkaShlLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBWeSgiUmVtb3RlU3RvcmUiLCJSZXRyeWluZyBJbmRleGVkREIgYWNjZXNzIiksWzQsaSgpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLG4uJHIuZGVsZXRlKDEpLFs0LExTKG4pXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSksWzJdfX0pfSl9ZnVuY3Rpb24gelMoZSxuKXtyZXR1cm4gbigpLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiBHUyhlLHQsbil9KX1mdW5jdGlvbiBRUyh1KXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGksbyxzLGE7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpvPVpTKGk9dSkscz0wPGkua3IubGVuZ3RoP2kua3JbaS5rci5sZW5ndGgtMV0uYmF0Y2hJZDotMSx0LmxhYmVsPTE7Y2FzZSAxOmlmKCEoS1MoaSkmJmkua3IubGVuZ3RoPDEwKSlyZXR1cm5bMyw3XTt0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiB0LnRyeXMucHVzaChbMiw0LCw2XSksWzQsKGU9aS5sb2NhbFN0b3JlLG49cywocj1lKS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiR2V0IG5leHQgbXV0YXRpb24gYmF0Y2giLCJyZWFkb25seSIsZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMD09PW4mJihuPS0xKSxyLl9uLmdldE5leHRNdXRhdGlvbkJhdGNoQWZ0ZXJCYXRjaElkKHQsbil9KSldO2Nhc2UgMzpyZXR1cm4gbnVsbD09PShhPXQuc2VudCgpKT8oMD09PWkua3IubGVuZ3RoJiZvLmlyKCksWzMsN10pOihzPWEuYmF0Y2hJZCxmdW5jdGlvbih0LGUpe3Qua3IucHVzaChlKTt0PVpTKHQpO3QuZXIoKSYmdC5wciYmdC5FcihlLm11dGF0aW9ucyl9KGksYSksWzMsNl0pO2Nhc2UgNDpyZXR1cm4gYT10LnNlbnQoKSxbNCxHUyhpLGEpXTtjYXNlIDU6cmV0dXJuIHQuc2VudCgpLFszLDZdO2Nhc2UgNjpyZXR1cm5bMywxXTtjYXNlIDc6cmV0dXJuIFlTKGkpJiZYUyhpKSxbMl19dmFyIGUsbixyfSl9KX1mdW5jdGlvbiBZUyh0KXtyZXR1cm4gS1ModCkmJiFaUyh0KS50cigpJiYwPHQua3IubGVuZ3RofWZ1bmN0aW9uIFhTKHQpe1pTKHQpLnN0YXJ0KCl9ZnVuY3Rpb24gSlMobixyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1uLHI/KGUuJHIuZGVsZXRlKDIpLFs0LExTKGUpXSk6WzMsMl07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbMyw1XTtjYXNlIDI6cmV0dXJuIHI/WzMsNF06KGUuJHIuYWRkKDIpLFs0LE1TKGUpXSk7Y2FzZSAzOnQuc2VudCgpLGUuQnIuc2V0KCJVbmtub3duIiksdC5sYWJlbD00O2Nhc2UgNDp0LmxhYmVsPTU7Y2FzZSA1OnJldHVyblsyXX19KX0pfWZ1bmN0aW9uICRTKG4pe3ZhciB0LGUscixpPXRoaXM7cmV0dXJuIG4uVXJ8fChuLlVyPSh0PW4uZGF0YXN0b3JlLGU9bi5hc3luY1F1ZXVlLHI9e0lpOmZ1bmN0aW9uKG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gbi5Pci5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7alMobix0KX0pLFsyXX0pfSl9LmJpbmQobnVsbCxuKSxSaTpmdW5jdGlvbihlLG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gV1MoZSksQlMoZSk/KGUuQnIuTnIobiksVlMoZSkpOmUuQnIuc2V0KCJVbmtub3duIiksWzJdfSl9KX0uYmluZChudWxsLG4pLF9yOkhTLmJpbmQobnVsbCxuKX0sdC5icigpLG5ldyBTUyhlLHQuSGksdC5jcmVkZW50aWFscyx0LlIscikpLG4uTXIucHVzaChmdW5jdGlvbihlKXtyZXR1cm4gJGkoaSx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT8obi5Vci5zcigpLEJTKG4pP1ZTKG4pOm4uQnIuc2V0KCJVbmtub3duIiksWzMsM10pOlszLDFdO2Nhc2UgMTpyZXR1cm5bNCxuLlVyLnN0b3AoKV07Y2FzZSAyOnQuc2VudCgpLFdTKG4pLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfX0pfSl9KSksbi5Vcn1mdW5jdGlvbiBaUyhuKXt2YXIgdCxlLHIsaT10aGlzO3JldHVybiBuLlFyfHwobi5Rcj0odD1uLmRhdGFzdG9yZSxlPW4uYXN5bmNRdWV1ZSxyPXtJaTpmdW5jdGlvbihlKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7cmV0dXJuIFpTKGUpLkFyKCksWzJdfSl9KX0uYmluZChudWxsLG4pLFJpOmZ1bmN0aW9uKGUsbil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIG4mJlpTKGUpLnByP1s0LGZ1bmN0aW9uKHIsaSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gT3cobj1pLmNvZGUpJiZuIT09TXkuQUJPUlRFRD8oZT1yLmtyLnNoaWZ0KCksWlMocikuc3IoKSxbNCx6UyhyLGZ1bmN0aW9uKCl7cmV0dXJuIHIucmVtb3RlU3luY2VyLnJlamVjdEZhaWxlZFdyaXRlKGUuYmF0Y2hJZCxpKX0pXSk6WzMsM107Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbNCxRUyhyKV07Y2FzZSAyOnQuc2VudCgpLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfX0pfSl9KGUsbildOlszLDJdO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiBZUyhlKSYmWFMoZSksWzJdfX0pfSl9LmJpbmQobnVsbCxuKSxJcjpmdW5jdGlvbihvKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7Zm9yKGU9WlMobyksbj0wLHI9by5rcjtuPHIubGVuZ3RoO24rKylpPXJbbl0sZS5FcihpLm11dGF0aW9ucyk7cmV0dXJuWzJdfSl9KX0uYmluZChudWxsLG4pLFRyOmZ1bmN0aW9uKHIsaSxvKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPXIua3Iuc2hpZnQoKSxuPVJJLmZyb20oZSxpLG8pLFs0LHpTKHIsZnVuY3Rpb24oKXtyZXR1cm4gci5yZW1vdGVTeW5jZXIuYXBwbHlTdWNjZXNzZnVsV3JpdGUobil9KV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbNCxRUyhyKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbMl19fSl9KX0uYmluZChudWxsLG4pfSx0LmJyKCksbmV3IENTKGUsdC5IaSx0LmNyZWRlbnRpYWxzLHQuUixyKSksbi5Nci5wdXNoKGZ1bmN0aW9uKGUpe3JldHVybiAkaShpLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPyhuLlFyLnNyKCksWzQsUVMobildKTpbMywyXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLFszLDRdO2Nhc2UgMjpyZXR1cm5bNCxuLlFyLnN0b3AoKV07Y2FzZSAzOnQuc2VudCgpLDA8bi5rci5sZW5ndGgmJihWeSgiUmVtb3RlU3RvcmUiLCJTdG9wcGluZyB3cml0ZSBzdHJlYW0gd2l0aCAiK24ua3IubGVuZ3RoKyIgcGVuZGluZyB3cml0ZXMiKSxuLmtyPVtdKSx0LmxhYmVsPTQ7Y2FzZSA0OnJldHVyblsyXX19KX0pfSkpLG4uUXJ9dmFyIHRDPShlQy5jcmVhdGVBbmRTY2hlZHVsZT1mdW5jdGlvbih0LGUsbixyLGkpe2k9bmV3IGVDKHQsZSxEYXRlLm5vdygpK24scixpKTtyZXR1cm4gaS5zdGFydChuKSxpfSxlQy5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpczt0aGlzLnRpbWVySGFuZGxlPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gZS5oYW5kbGVEZWxheUVsYXBzZWQoKX0sdCl9LGVDLnByb3RvdHlwZS5za2lwRGVsYXk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5oYW5kbGVEZWxheUVsYXBzZWQoKX0sZUMucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbih0KXtudWxsIT09dGhpcy50aW1lckhhbmRsZSYmKHRoaXMuY2xlYXJUaW1lb3V0KCksdGhpcy5kZWZlcnJlZC5yZWplY3QobmV3IEZ5KE15LkNBTkNFTExFRCwiT3BlcmF0aW9uIGNhbmNlbGxlZCIrKHQ/IjogIit0OiIiKSkpKX0sZUMucHJvdG90eXBlLmhhbmRsZURlbGF5RWxhcHNlZD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gbnVsbCE9PWUudGltZXJIYW5kbGU/KGUuY2xlYXJUaW1lb3V0KCksZS5vcCgpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGUuZGVmZXJyZWQucmVzb2x2ZSh0KX0pKTpQcm9taXNlLnJlc29sdmUoKX0pfSxlQy5wcm90b3R5cGUuY2xlYXJUaW1lb3V0PWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMudGltZXJIYW5kbGUmJih0aGlzLnJlbW92YWxDYWxsYmFjayh0aGlzKSxjbGVhclRpbWVvdXQodGhpcy50aW1lckhhbmRsZSksdGhpcy50aW1lckhhbmRsZT1udWxsKX0sZUMpO2Z1bmN0aW9uIGVDKHQsZSxuLHIsaSl7dGhpcy5hc3luY1F1ZXVlPXQsdGhpcy50aW1lcklkPWUsdGhpcy50YXJnZXRUaW1lTXM9bix0aGlzLm9wPXIsdGhpcy5yZW1vdmFsQ2FsbGJhY2s9aSx0aGlzLmRlZmVycmVkPW5ldyBhSSx0aGlzLnRoZW49dGhpcy5kZWZlcnJlZC5wcm9taXNlLnRoZW4uYmluZCh0aGlzLmRlZmVycmVkLnByb21pc2UpLHRoaXMuZGVmZXJyZWQucHJvbWlzZS5jYXRjaChmdW5jdGlvbih0KXt9KX1mdW5jdGlvbiBuQyh0LGUpe2lmKEJ5KCJBc3luY1F1ZXVlIixlKyI6ICIrdCksYkkodCkpcmV0dXJuIG5ldyBGeShNeS5VTkFWQUlMQUJMRSxlKyI6ICIrdCk7dGhyb3cgdH1mdW5jdGlvbiByQygpe3RoaXMucXVlcmllcz1uZXcgRFQoRmIsTWIpLHRoaXMub25saW5lU3RhdGU9IlVua25vd24iLHRoaXMuR3I9bmV3IFNldH12YXIgaUM9KGhDLmVtcHR5U2V0PWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgaEModC5jb21wYXJhdG9yKX0saEMucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dGhpcy5rZXllZE1hcC5nZXQodCl9LGhDLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMua2V5ZWRNYXAuZ2V0KHQpfSxoQy5wcm90b3R5cGUuZmlyc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zb3J0ZWRTZXQubWluS2V5KCl9LGhDLnByb3RvdHlwZS5sYXN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc29ydGVkU2V0Lm1heEtleSgpfSxoQy5wcm90b3R5cGUuaXNFbXB0eT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNvcnRlZFNldC5pc0VtcHR5KCl9LGhDLnByb3RvdHlwZS5pbmRleE9mPWZ1bmN0aW9uKHQpe3Q9dGhpcy5rZXllZE1hcC5nZXQodCk7cmV0dXJuIHQ/dGhpcy5zb3J0ZWRTZXQuaW5kZXhPZih0KTotMX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGhDLnByb3RvdHlwZSwic2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNvcnRlZFNldC5zaXplfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGhDLnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKG4pe3RoaXMuc29ydGVkU2V0Lmlub3JkZXJUcmF2ZXJzYWwoZnVuY3Rpb24odCxlKXtyZXR1cm4gbih0KSwhMX0pfSxoQy5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuZGVsZXRlKHQua2V5KTtyZXR1cm4gZS5jb3B5KGUua2V5ZWRNYXAuaW5zZXJ0KHQua2V5LHQpLGUuc29ydGVkU2V0Lmluc2VydCh0LG51bGwpKX0saEMucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmdldCh0KTtyZXR1cm4gZT90aGlzLmNvcHkodGhpcy5rZXllZE1hcC5yZW1vdmUodCksdGhpcy5zb3J0ZWRTZXQucmVtb3ZlKGUpKTp0aGlzfSxoQy5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtpZighKHQgaW5zdGFuY2VvZiBoQykpcmV0dXJuITE7aWYodGhpcy5zaXplIT09dC5zaXplKXJldHVybiExO2Zvcih2YXIgZT10aGlzLnNvcnRlZFNldC5nZXRJdGVyYXRvcigpLG49dC5zb3J0ZWRTZXQuZ2V0SXRlcmF0b3IoKTtlLmhhc05leHQoKTspe3ZhciByPWUuZ2V0TmV4dCgpLmtleSxpPW4uZ2V0TmV4dCgpLmtleTtpZighci5pc0VxdWFsKGkpKXJldHVybiExfXJldHVybiEwfSxoQy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UucHVzaCh0LnRvU3RyaW5nKCkpfSksMD09PWUubGVuZ3RoPyJEb2N1bWVudFNldCAoKSI6IkRvY3VtZW50U2V0IChcbiAgIitlLmpvaW4oIiAgXG4iKSsiXG4pIn0saEMucHJvdG90eXBlLmNvcHk9ZnVuY3Rpb24odCxlKXt2YXIgbj1uZXcgaEM7cmV0dXJuIG4uY29tcGFyYXRvcj10aGlzLmNvbXBhcmF0b3Isbi5rZXllZE1hcD10LG4uc29ydGVkU2V0PWUsbn0saEMpLG9DPShjQy5wcm90b3R5cGUudHJhY2s9ZnVuY3Rpb24odCl7dmFyIGU9dC5kb2Mua2V5LG49dGhpcy5Lci5nZXQoZSk7IW58fDAhPT10LnR5cGUmJjM9PT1uLnR5cGU/dGhpcy5Lcj10aGlzLktyLmluc2VydChlLHQpOjM9PT10LnR5cGUmJjEhPT1uLnR5cGU/dGhpcy5Lcj10aGlzLktyLmluc2VydChlLHt0eXBlOm4udHlwZSxkb2M6dC5kb2N9KToyPT09dC50eXBlJiYyPT09bi50eXBlP3RoaXMuS3I9dGhpcy5Lci5pbnNlcnQoZSx7dHlwZToyLGRvYzp0LmRvY30pOjI9PT10LnR5cGUmJjA9PT1uLnR5cGU/dGhpcy5Lcj10aGlzLktyLmluc2VydChlLHt0eXBlOjAsZG9jOnQuZG9jfSk6MT09PXQudHlwZSYmMD09PW4udHlwZT90aGlzLktyPXRoaXMuS3IucmVtb3ZlKGUpOjE9PT10LnR5cGUmJjI9PT1uLnR5cGU/dGhpcy5Lcj10aGlzLktyLmluc2VydChlLHt0eXBlOjEsZG9jOm4uZG9jfSk6MD09PXQudHlwZSYmMT09PW4udHlwZT90aGlzLktyPXRoaXMuS3IuaW5zZXJ0KGUse3R5cGU6Mixkb2M6dC5kb2N9KTpIeSgpfSxjQy5wcm90b3R5cGUuanI9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gdGhpcy5Lci5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7bi5wdXNoKGUpfSksbn0sY0MpLHNDPSh1Qy5mcm9tSW5pdGlhbERvY3VtZW50cz1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT1bXTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKHQpe2kucHVzaCh7dHlwZTowLGRvYzp0fSl9KSxuZXcgdUModCxlLGlDLmVtcHR5U2V0KGUpLGksbixyLCEwLCExKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHVDLnByb3RvdHlwZSwiaGFzUGVuZGluZ1dyaXRlcyIse2dldDpmdW5jdGlvbigpe3JldHVybiF0aGlzLm11dGF0ZWRLZXlzLmlzRW1wdHkoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx1Qy5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtpZighKHRoaXMuZnJvbUNhY2hlPT09dC5mcm9tQ2FjaGUmJnRoaXMuc3luY1N0YXRlQ2hhbmdlZD09PXQuc3luY1N0YXRlQ2hhbmdlZCYmdGhpcy5tdXRhdGVkS2V5cy5pc0VxdWFsKHQubXV0YXRlZEtleXMpJiZNYih0aGlzLnF1ZXJ5LHQucXVlcnkpJiZ0aGlzLmRvY3MuaXNFcXVhbCh0LmRvY3MpJiZ0aGlzLm9sZERvY3MuaXNFcXVhbCh0Lm9sZERvY3MpKSlyZXR1cm4hMTt2YXIgZT10aGlzLmRvY0NoYW5nZXMsbj10LmRvY0NoYW5nZXM7aWYoZS5sZW5ndGghPT1uLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKylpZihlW3JdLnR5cGUhPT1uW3JdLnR5cGV8fCFlW3JdLmRvYy5pc0VxdWFsKG5bcl0uZG9jKSlyZXR1cm4hMTtyZXR1cm4hMH0sdUMpLGFDPWZ1bmN0aW9uKCl7dGhpcy5Xcj12b2lkIDAsdGhpcy5saXN0ZW5lcnM9W119O2Z1bmN0aW9uIHVDKHQsZSxuLHIsaSxvLHMsYSl7dGhpcy5xdWVyeT10LHRoaXMuZG9jcz1lLHRoaXMub2xkRG9jcz1uLHRoaXMuZG9jQ2hhbmdlcz1yLHRoaXMubXV0YXRlZEtleXM9aSx0aGlzLmZyb21DYWNoZT1vLHRoaXMuc3luY1N0YXRlQ2hhbmdlZD1zLHRoaXMuZXhjbHVkZXNNZXRhZGF0YUNoYW5nZXM9YX1mdW5jdGlvbiBjQygpe3RoaXMuS3I9bmV3IHh3KENtLmNvbXBhcmF0b3IpfWZ1bmN0aW9uIGhDKG4pe3RoaXMuY29tcGFyYXRvcj1uP2Z1bmN0aW9uKHQsZSl7cmV0dXJuIG4odCxlKXx8Q20uY29tcGFyYXRvcih0LmtleSxlLmtleSl9OmZ1bmN0aW9uKHQsZSl7cmV0dXJuIENtLmNvbXBhcmF0b3IodC5rZXksZS5rZXkpfSx0aGlzLmtleWVkTWFwPUd3LHRoaXMuc29ydGVkU2V0PW5ldyB4dyh0aGlzLmNvbXBhcmF0b3IpfWZ1bmN0aW9uIGxDKHMsYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZihlPXMsbj1hLnF1ZXJ5LHI9ITEsKGk9ZS5xdWVyaWVzLmdldChuKSl8fChyPSEwLGk9bmV3IGFDKSwhcilyZXR1cm5bMyw0XTt0LmxhYmVsPTE7Y2FzZSAxOnJldHVybiB0LnRyeXMucHVzaChbMSwzLCw0XSksbz1pLFs0LGUub25MaXN0ZW4obildO2Nhc2UgMjpyZXR1cm4gby5Xcj10LnNlbnQoKSxbMyw0XTtjYXNlIDM6cmV0dXJuIG89dC5zZW50KCksbz1uQyhvLCJJbml0aWFsaXphdGlvbiBvZiBxdWVyeSAnIitVYihhLnF1ZXJ5KSsiJyBmYWlsZWQiKSxbMix2b2lkIGEub25FcnJvcihvKV07Y2FzZSA0OnJldHVybiBlLnF1ZXJpZXMuc2V0KG4saSksaS5saXN0ZW5lcnMucHVzaChhKSxhLnpyKGUub25saW5lU3RhdGUpLGkuV3ImJmEuSHIoaS5XcikmJnBDKGUpLFsyXX19KX0pfWZ1bmN0aW9uIGZDKHMsYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7cmV0dXJuIGU9cyxuPWEucXVlcnkscj0hMSwoaT1lLnF1ZXJpZXMuZ2V0KG4pKSYmMDw9KG89aS5saXN0ZW5lcnMuaW5kZXhPZihhKSkmJihpLmxpc3RlbmVycy5zcGxpY2UobywxKSxyPTA9PT1pLmxpc3RlbmVycy5sZW5ndGgpLHI/WzIsKGUucXVlcmllcy5kZWxldGUobiksZS5vblVubGlzdGVuKG4pKV06WzJdfSl9KX1mdW5jdGlvbiBwQyh0KXt0LkdyLmZvckVhY2goZnVuY3Rpb24odCl7dC5uZXh0KCl9KX12YXIgZEM9KF9DLnByb3RvdHlwZS5Icj1mdW5jdGlvbih0KXtpZighdGhpcy5vcHRpb25zLmluY2x1ZGVNZXRhZGF0YUNoYW5nZXMpe2Zvcih2YXIgZT1bXSxuPTAscj10LmRvY0NoYW5nZXM7bjxyLmxlbmd0aDtuKyspe3ZhciBpPXJbbl07MyE9PWkudHlwZSYmZS5wdXNoKGkpfXQ9bmV3IHNDKHQucXVlcnksdC5kb2NzLHQub2xkRG9jcyxlLHQubXV0YXRlZEtleXMsdC5mcm9tQ2FjaGUsdC5zeW5jU3RhdGVDaGFuZ2VkLCEwKX12YXIgbz0hMTtyZXR1cm4gdGhpcy5Zcj90aGlzLlpyKHQpJiYodGhpcy5Kci5uZXh0KHQpLG89ITApOnRoaXMuZW8odCx0aGlzLm9ubGluZVN0YXRlKSYmKHRoaXMubm8odCksbz0hMCksdGhpcy5Ycj10LG99LF9DLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKHQpe3RoaXMuSnIuZXJyb3IodCl9LF9DLnByb3RvdHlwZS56cj1mdW5jdGlvbih0KXt0aGlzLm9ubGluZVN0YXRlPXQ7dmFyIGU9ITE7cmV0dXJuIHRoaXMuWHImJiF0aGlzLllyJiZ0aGlzLmVvKHRoaXMuWHIsdCkmJih0aGlzLm5vKHRoaXMuWHIpLGU9ITApLGV9LF9DLnByb3RvdHlwZS5lbz1mdW5jdGlvbih0LGUpe2lmKCF0LmZyb21DYWNoZSlyZXR1cm4hMDt2YXIgbj0iT2ZmbGluZSIhPT1lO3JldHVybiEodGhpcy5vcHRpb25zLnNvJiZufHx0LmRvY3MuaXNFbXB0eSgpJiYiT2ZmbGluZSIhPT1lKX0sX0MucHJvdG90eXBlLlpyPWZ1bmN0aW9uKHQpe2lmKDA8dC5kb2NDaGFuZ2VzLmxlbmd0aClyZXR1cm4hMDt2YXIgZT10aGlzLlhyJiZ0aGlzLlhyLmhhc1BlbmRpbmdXcml0ZXMhPT10Lmhhc1BlbmRpbmdXcml0ZXM7cmV0dXJuISghdC5zeW5jU3RhdGVDaGFuZ2VkJiYhZSkmJiEwPT09dGhpcy5vcHRpb25zLmluY2x1ZGVNZXRhZGF0YUNoYW5nZXN9LF9DLnByb3RvdHlwZS5ubz1mdW5jdGlvbih0KXt0PXNDLmZyb21Jbml0aWFsRG9jdW1lbnRzKHQucXVlcnksdC5kb2NzLHQubXV0YXRlZEtleXMsdC5mcm9tQ2FjaGUpLHRoaXMuWXI9ITAsdGhpcy5Kci5uZXh0KHQpfSxfQyksdkM9KHdDLnByb3RvdHlwZS5pbz1mdW5jdGlvbigpe3JldHVybiJtZXRhZGF0YSJpbiB0aGlzLnBheWxvYWR9LHdDKSxnQz0oYkMucHJvdG90eXBlLnFuPWZ1bmN0aW9uKHQpe3JldHVybiBiXyh0aGlzLlIsdCl9LGJDLnByb3RvdHlwZS5Vbj1mdW5jdGlvbih0KXtyZXR1cm4gdC5tZXRhZGF0YS5leGlzdHM/U18odGhpcy5SLHQuZG9jdW1lbnQsITEpOkJtLm5ld05vRG9jdW1lbnQodGhpcy5xbih0Lm1ldGFkYXRhLm5hbWUpLHRoaXMuUW4odC5tZXRhZGF0YS5yZWFkVGltZSkpfSxiQy5wcm90b3R5cGUuUW49dl8sYkMpLHlDPShtQy5wcm90b3R5cGUub289ZnVuY3Rpb24odCl7dGhpcy5wcm9ncmVzcy5ieXRlc0xvYWRlZCs9dC5ieXRlTGVuZ3RoO3ZhciBlPXRoaXMucHJvZ3Jlc3MuZG9jdW1lbnRzTG9hZGVkO3JldHVybiB0LnBheWxvYWQubmFtZWRRdWVyeT90aGlzLnF1ZXJpZXMucHVzaCh0LnBheWxvYWQubmFtZWRRdWVyeSk6dC5wYXlsb2FkLmRvY3VtZW50TWV0YWRhdGE/KHRoaXMuZG9jdW1lbnRzLnB1c2goe21ldGFkYXRhOnQucGF5bG9hZC5kb2N1bWVudE1ldGFkYXRhfSksdC5wYXlsb2FkLmRvY3VtZW50TWV0YWRhdGEuZXhpc3RzfHwrK2UpOnQucGF5bG9hZC5kb2N1bWVudCYmKHRoaXMuZG9jdW1lbnRzW3RoaXMuZG9jdW1lbnRzLmxlbmd0aC0xXS5kb2N1bWVudD10LnBheWxvYWQuZG9jdW1lbnQsKytlKSxlIT09dGhpcy5wcm9ncmVzcy5kb2N1bWVudHNMb2FkZWQ/KHRoaXMucHJvZ3Jlc3MuZG9jdW1lbnRzTG9hZGVkPWUsT2JqZWN0LmFzc2lnbih7fSx0aGlzLnByb2dyZXNzKSk6bnVsbH0sbUMucHJvdG90eXBlLmNvPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1uZXcgTWFwLG49bmV3IGdDKHRoaXMuUikscj0wLGk9dDtyPGkubGVuZ3RoO3IrKyl7dmFyIG89aVtyXTtpZihvLm1ldGFkYXRhLnF1ZXJpZXMpZm9yKHZhciBzPW4ucW4oby5tZXRhZGF0YS5uYW1lKSxhPTAsdT1vLm1ldGFkYXRhLnF1ZXJpZXM7YTx1Lmxlbmd0aDthKyspe3ZhciBjPXVbYV0saD0oZS5nZXQoYyl8fFl3KCkpLmFkZChzKTtlLnNldChjLGgpfX1yZXR1cm4gZX0sbUMucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsZnVuY3Rpb24obCxmLHAsZCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLHIsaSxvLGUscyxhLHUsYyxoO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6Zm9yKG49bCxyPVl3KCksaT1LdyxvPXp3LGU9MCxzPXA7ZTxzLmxlbmd0aDtlKyspYT1zW2VdLHU9Zi5xbihhLm1ldGFkYXRhLm5hbWUpLGEuZG9jdW1lbnQmJihyPXIuYWRkKHUpKSxpPWkuaW5zZXJ0KHUsZi5VbihhKSksbz1vLmluc2VydCh1LGYuUW4oYS5tZXRhZGF0YS5yZWFkVGltZSkpO3JldHVybiBjPW4uJG4ubmV3Q2hhbmdlQnVmZmVyKHt0cmFja1JlbW92YWxzOiEwfSksWzQscEUobix4YihOYihhbS5mcm9tU3RyaW5nKCJfX2J1bmRsZV9fL2RvY3MvIitkKSkpKV07Y2FzZSAxOnJldHVybiBoPXQuc2VudCgpLFsyLG4ucGVyc2lzdGVuY2UucnVuVHJhbnNhY3Rpb24oIkFwcGx5IGJ1bmRsZSBkb2N1bWVudHMiLCJyZWFkd3JpdGUiLGZ1bmN0aW9uKGUpe3JldHVybiBmRShlLGMsaSxaeS5taW4oKSxvKS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBjLmFwcGx5KGUpLHR9KS5uZXh0KGZ1bmN0aW9uKHQpe3JldHVybiBuLnFlLnJlbW92ZU1hdGNoaW5nS2V5c0ZvclRhcmdldElkKGUsaC50YXJnZXRJZCkubmV4dChmdW5jdGlvbigpe3JldHVybiBuLnFlLmFkZE1hdGNoaW5nS2V5cyhlLHIsaC50YXJnZXRJZCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIG4uTW4uRW4oZSx0KX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gdH0pfSl9KV19fSl9KX0odGhpcy5sb2NhbFN0b3JlLG5ldyBnQyh0aGlzLlIpLHRoaXMuZG9jdW1lbnRzLHRoaXMucm8uaWQpXTtjYXNlIDE6ZT10LnNlbnQoKSxuPXRoaXMuY28odGhpcy5kb2N1bWVudHMpLHI9MCxpPXRoaXMucXVlcmllcyx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiByPGkubGVuZ3RoPyhpPWlbcl0sWzQsZnVuY3Rpb24oZSxpLG8pe3JldHVybiB2b2lkIDA9PT1vJiYobz1ZdygpKSwkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQscEUoZSx4YihISShpLmJ1bmRsZWRRdWVyeSkpKV07Y2FzZSAxOnJldHVybiBuPXQuc2VudCgpLFsyLChyPWUpLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJTYXZlIG5hbWVkIHF1ZXJ5IiwicmVhZHdyaXRlIixmdW5jdGlvbih0KXt2YXIgZT12XyhpLnJlYWRUaW1lKTtpZigwPD1uLnNuYXBzaG90VmVyc2lvbi5jb21wYXJlVG8oZSkpcmV0dXJuIHIuUWUuc2F2ZU5hbWVkUXVlcnkodCxpKTtlPW4ud2l0aFJlc3VtZVRva2VuKGxtLkVNUFRZX0JZVEVfU1RSSU5HLGUpO3JldHVybiByLkZuPXIuRm4uaW5zZXJ0KGUudGFyZ2V0SWQsZSksci5xZS51cGRhdGVUYXJnZXREYXRhKHQsZSkubmV4dChmdW5jdGlvbigpe3JldHVybiByLnFlLnJlbW92ZU1hdGNoaW5nS2V5c0ZvclRhcmdldElkKHQsbi50YXJnZXRJZCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHIucWUuYWRkTWF0Y2hpbmdLZXlzKHQsbyxuLnRhcmdldElkKX0pLm5leHQoZnVuY3Rpb24oKXtyZXR1cm4gci5RZS5zYXZlTmFtZWRRdWVyeSh0LGkpfSl9KV19fSl9KX0odGhpcy5sb2NhbFN0b3JlLGksbi5nZXQoaS5uYW1lKSldKTpbMyw1XTtjYXNlIDM6dC5zZW50KCksdC5sYWJlbD00O2Nhc2UgNDpyZXR1cm4gcisrLFszLDJdO2Nhc2UgNTpyZXR1cm5bMiwodGhpcy5wcm9ncmVzcy50YXNrU3RhdGU9IlN1Y2Nlc3MiLG5ldyAkVChPYmplY3QuYXNzaWduKHt9LHRoaXMucHJvZ3Jlc3MpLGUpKV19fSl9KX0sbUMpO2Z1bmN0aW9uIG1DKHQsZSxuKXt0aGlzLnJvPXQsdGhpcy5sb2NhbFN0b3JlPWUsdGhpcy5SPW4sdGhpcy5xdWVyaWVzPVtdLHRoaXMuZG9jdW1lbnRzPVtdLHRoaXMucHJvZ3Jlc3M9SUModCl9ZnVuY3Rpb24gYkModCl7dGhpcy5SPXR9ZnVuY3Rpb24gd0ModCxlKXt0aGlzLnBheWxvYWQ9dCx0aGlzLmJ5dGVMZW5ndGg9ZX1mdW5jdGlvbiBfQyh0LGUsbil7dGhpcy5xdWVyeT10LHRoaXMuSnI9ZSx0aGlzLllyPSExLHRoaXMuWHI9bnVsbCx0aGlzLm9ubGluZVN0YXRlPSJVbmtub3duIix0aGlzLm9wdGlvbnM9bnx8e319ZnVuY3Rpb24gSUModCl7cmV0dXJue3Rhc2tTdGF0ZToiUnVubmluZyIsZG9jdW1lbnRzTG9hZGVkOjAsYnl0ZXNMb2FkZWQ6MCx0b3RhbERvY3VtZW50czp0LnRvdGFsRG9jdW1lbnRzLHRvdGFsQnl0ZXM6dC50b3RhbEJ5dGVzfX12YXIgVEM9ZnVuY3Rpb24odCl7dGhpcy5rZXk9dH0sRUM9ZnVuY3Rpb24odCl7dGhpcy5rZXk9dH0sU0M9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShSQy5wcm90b3R5cGUsIndvIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudW99LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksUkMucHJvdG90eXBlLl9vPWZ1bmN0aW9uKHQsZSl7dmFyIHM9dGhpcyxhPWU/ZS5tbzpuZXcgb0MsdT0oZXx8dGhpcykuZm8sYz0oZXx8dGhpcykubXV0YXRlZEtleXMsaD11LGw9ITEsZj1BYih0aGlzLnF1ZXJ5KSYmdS5zaXplPT09dGhpcy5xdWVyeS5saW1pdD91Lmxhc3QoKTpudWxsLHA9a2IodGhpcy5xdWVyeSkmJnUuc2l6ZT09PXRoaXMucXVlcnkubGltaXQ/dS5maXJzdCgpOm51bGw7aWYodC5pbm9yZGVyVHJhdmVyc2FsKGZ1bmN0aW9uKHQsZSl7dmFyIG49dS5nZXQodCkscj1qYihzLnF1ZXJ5LGUpP2U6bnVsbCxpPSEhbiYmcy5tdXRhdGVkS2V5cy5oYXMobi5rZXkpLG89ISFyJiYoci5oYXNMb2NhbE11dGF0aW9uc3x8cy5tdXRhdGVkS2V5cy5oYXMoci5rZXkpJiZyLmhhc0NvbW1pdHRlZE11dGF0aW9ucyksZT0hMTtuJiZyP24uZGF0YS5pc0VxdWFsKHIuZGF0YSk/aSE9PW8mJihhLnRyYWNrKHt0eXBlOjMsZG9jOnJ9KSxlPSEwKTpzLnlvKG4scil8fChhLnRyYWNrKHt0eXBlOjIsZG9jOnJ9KSxlPSEwLChmJiYwPHMubG8ocixmKXx8cCYmcy5sbyhyLHApPDApJiYobD0hMCkpOiFuJiZyPyhhLnRyYWNrKHt0eXBlOjAsZG9jOnJ9KSxlPSEwKTpuJiYhciYmKGEudHJhY2soe3R5cGU6MSxkb2M6bn0pLGU9ITAsKGZ8fHApJiYobD0hMCkpLGUmJihjPXI/KGg9aC5hZGQociksbz9jLmFkZCh0KTpjLmRlbGV0ZSh0KSk6KGg9aC5kZWxldGUodCksYy5kZWxldGUodCkpKX0pLEFiKHRoaXMucXVlcnkpfHxrYih0aGlzLnF1ZXJ5KSlmb3IoO2guc2l6ZT50aGlzLnF1ZXJ5LmxpbWl0Oyl7dmFyIG49QWIodGhpcy5xdWVyeSk/aC5sYXN0KCk6aC5maXJzdCgpLGg9aC5kZWxldGUobi5rZXkpLGM9Yy5kZWxldGUobi5rZXkpO2EudHJhY2soe3R5cGU6MSxkb2M6bn0pfXJldHVybntmbzpoLG1vOmEsTm46bCxtdXRhdGVkS2V5czpjfX0sUkMucHJvdG90eXBlLnlvPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzTG9jYWxNdXRhdGlvbnMmJmUuaGFzQ29tbWl0dGVkTXV0YXRpb25zJiYhZS5oYXNMb2NhbE11dGF0aW9uc30sUkMucHJvdG90eXBlLmFwcGx5Q2hhbmdlcz1mdW5jdGlvbih0LGUsbil7dmFyIG89dGhpcyxyPXRoaXMuZm87dGhpcy5mbz10LmZvLHRoaXMubXV0YXRlZEtleXM9dC5tdXRhdGVkS2V5czt2YXIgaT10Lm1vLmpyKCk7aS5zb3J0KGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHI9dC50eXBlLGk9ZS50eXBlLG4ociktbihpKXx8by5sbyh0LmRvYyxlLmRvYyk7ZnVuY3Rpb24gbih0KXtzd2l0Y2godCl7Y2FzZSAwOnJldHVybiAxO2Nhc2UgMjpjYXNlIDM6cmV0dXJuIDI7Y2FzZSAxOnJldHVybiAwO2RlZmF1bHQ6cmV0dXJuIEh5KCl9fXZhciByLGl9KSx0aGlzLnBvKG4pO3ZhciBzPWU/dGhpcy5FbygpOltdLG49MD09PXRoaXMuaG8uc2l6ZSYmdGhpcy5jdXJyZW50PzE6MCxlPW4hPT10aGlzLmFvO3JldHVybiB0aGlzLmFvPW4sMCE9PWkubGVuZ3RofHxlP3tzbmFwc2hvdDpuZXcgc0ModGhpcy5xdWVyeSx0LmZvLHIsaSx0Lm11dGF0ZWRLZXlzLDA9PW4sZSwhMSksVG86c306e1RvOnN9fSxSQy5wcm90b3R5cGUuenI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY3VycmVudCYmIk9mZmxpbmUiPT09dD8odGhpcy5jdXJyZW50PSExLHRoaXMuYXBwbHlDaGFuZ2VzKHtmbzp0aGlzLmZvLG1vOm5ldyBvQyxtdXRhdGVkS2V5czp0aGlzLm11dGF0ZWRLZXlzLE5uOiExfSwhMSkpOntUbzpbXX19LFJDLnByb3RvdHlwZS5Jbz1mdW5jdGlvbih0KXtyZXR1cm4hdGhpcy51by5oYXModCkmJiEhdGhpcy5mby5oYXModCkmJiF0aGlzLmZvLmdldCh0KS5oYXNMb2NhbE11dGF0aW9uc30sUkMucHJvdG90eXBlLnBvPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dCYmKHQuYWRkZWREb2N1bWVudHMuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gZS51bz1lLnVvLmFkZCh0KX0pLHQubW9kaWZpZWREb2N1bWVudHMuZm9yRWFjaChmdW5jdGlvbih0KXt9KSx0LnJlbW92ZWREb2N1bWVudHMuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gZS51bz1lLnVvLmRlbGV0ZSh0KX0pLHRoaXMuY3VycmVudD10LmN1cnJlbnQpfSxSQy5wcm90b3R5cGUuRW89ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKCF0aGlzLmN1cnJlbnQpcmV0dXJuW107dmFyIG49dGhpcy5obzt0aGlzLmhvPVl3KCksdGhpcy5mby5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UuSW8odC5rZXkpJiYoZS5obz1lLmhvLmFkZCh0LmtleSkpfSk7dmFyIHI9W107cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbih0KXtlLmhvLmhhcyh0KXx8ci5wdXNoKG5ldyBFQyh0KSl9KSx0aGlzLmhvLmZvckVhY2goZnVuY3Rpb24odCl7bi5oYXModCl8fHIucHVzaChuZXcgVEModCkpfSkscn0sUkMucHJvdG90eXBlLkFvPWZ1bmN0aW9uKHQpe3RoaXMudW89dC5Cbix0aGlzLmhvPVl3KCk7dD10aGlzLl9vKHQuZG9jdW1lbnRzKTtyZXR1cm4gdGhpcy5hcHBseUNoYW5nZXModCwhMCl9LFJDLnByb3RvdHlwZS5Sbz1mdW5jdGlvbigpe3JldHVybiBzQy5mcm9tSW5pdGlhbERvY3VtZW50cyh0aGlzLnF1ZXJ5LHRoaXMuZm8sdGhpcy5tdXRhdGVkS2V5cywwPT09dGhpcy5hbyl9LFJDKSxDQz1mdW5jdGlvbih0LGUsbil7dGhpcy5xdWVyeT10LHRoaXMudGFyZ2V0SWQ9ZSx0aGlzLnZpZXc9bn0sTkM9ZnVuY3Rpb24odCl7dGhpcy5rZXk9dCx0aGlzLmJvPSExfSxBQz0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGtDLnByb3RvdHlwZSwiaXNQcmltYXJ5Q2xpZW50Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuITA9PT10aGlzLk9vfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGtDKTtmdW5jdGlvbiBrQyh0LGUsbixyLGksbyl7dGhpcy5sb2NhbFN0b3JlPXQsdGhpcy5yZW1vdGVTdG9yZT1lLHRoaXMuZXZlbnRNYW5hZ2VyPW4sdGhpcy5zaGFyZWRDbGllbnRTdGF0ZT1yLHRoaXMuY3VycmVudFVzZXI9aSx0aGlzLm1heENvbmN1cnJlbnRMaW1ib1Jlc29sdXRpb25zPW8sdGhpcy52bz17fSx0aGlzLlBvPW5ldyBEVChGYixNYiksdGhpcy5Wbz1uZXcgTWFwLHRoaXMuU289bmV3IFNldCx0aGlzLkRvPW5ldyB4dyhDbS5jb21wYXJhdG9yKSx0aGlzLkNvPW5ldyBNYXAsdGhpcy5Obz1uZXcgSUUsdGhpcy54bz17fSx0aGlzLkZvPW5ldyBNYXAsdGhpcy5rbz1kVC5ZdCgpLHRoaXMub25saW5lU3RhdGU9IlVua25vd24iLHRoaXMuT289dm9pZCAwfWZ1bmN0aW9uIFJDKHQsZSl7dGhpcy5xdWVyeT10LHRoaXMudW89ZSx0aGlzLmFvPW51bGwsdGhpcy5jdXJyZW50PSExLHRoaXMuaG89WXcoKSx0aGlzLm11dGF0ZWRLZXlzPVl3KCksdGhpcy5sbz1xYih0KSx0aGlzLmZvPW5ldyBpQyh0aGlzLmxvKX1mdW5jdGlvbiBQQyhpLG8scyxhKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGkuJG89ZnVuY3Rpb24odCxlLG4pe3JldHVybiBmdW5jdGlvbihyLGksbyxzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihlPWkudmlldy5fbyhvKSkuTm4/WzQsdkUoci5sb2NhbFN0b3JlLGkucXVlcnksITEpLnRoZW4oZnVuY3Rpb24odCl7dD10LmRvY3VtZW50cztyZXR1cm4gaS52aWV3Ll9vKHQsZSl9KV06WzMsMl07Y2FzZSAxOmU9dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm4gbj1zJiZzLnRhcmdldENoYW5nZXMuZ2V0KGkudGFyZ2V0SWQpLG49aS52aWV3LmFwcGx5Q2hhbmdlcyhlLHIuaXNQcmltYXJ5Q2xpZW50LG4pLFsyLChWQyhyLGkudGFyZ2V0SWQsbi5Ubyksbi5zbmFwc2hvdCldfX0pfSl9KGksdCxlLG4pfSxbNCx2RShpLmxvY2FsU3RvcmUsbywhMCldO2Nhc2UgMTpyZXR1cm4gbj10LnNlbnQoKSxyPW5ldyBTQyhvLG4uQm4pLGU9ci5fbyhuLmRvY3VtZW50cyksbj0kdy5jcmVhdGVTeW50aGVzaXplZFRhcmdldENoYW5nZUZvckN1cnJlbnRDaGFuZ2UocyxhJiYiT2ZmbGluZSIhPT1pLm9ubGluZVN0YXRlKSxuPXIuYXBwbHlDaGFuZ2VzKGUsaS5pc1ByaW1hcnlDbGllbnQsbiksVkMoaSxzLG4uVG8pLHI9bmV3IENDKG8scyxyKSxbMiwoaS5Qby5zZXQobyxyKSxpLlZvLmhhcyhzKT9pLlZvLmdldChzKS5wdXNoKG8pOmkuVm8uc2V0KHMsW29dKSxuLnNuYXBzaG90KV19fSl9KX1mdW5jdGlvbiBPQyhmLHAsZCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBzLGw7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpsPVhDKGYpLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDUsLDZdKSxbNCwoaT1sLmxvY2FsU3RvcmUsYT1wLGM9aSxoPSR5Lm5vdygpLG89YS5yZWR1Y2UoZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5hZGQoZS5rZXkpfSxZdygpKSxjLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJMb2NhbGx5IHdyaXRlIG11dGF0aW9ucyIsInJlYWR3cml0ZSIsZnVuY3Rpb24ocyl7cmV0dXJuIGMuTW4ucG4ocyxvKS5uZXh0KGZ1bmN0aW9uKHQpe3U9dDtmb3IodmFyIGU9W10sbj0wLHI9YTtuPHIubGVuZ3RoO24rKyl7dmFyIGk9cltuXSxvPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPW51bGwscj0wLGk9dC5maWVsZFRyYW5zZm9ybXM7cjxpLmxlbmd0aDtyKyspe3ZhciBvPWlbcl0scz1lLmRhdGEuZmllbGQoby5maWVsZCkscz1XYihvLnRyYW5zZm9ybSxzfHxudWxsKTtudWxsIT1zJiYobj1udWxsPT1uP3FtLmVtcHR5KCk6bikuc2V0KG8uZmllbGQscyl9cmV0dXJuIG58fG51bGx9KGksdS5nZXQoaS5rZXkpKTtudWxsIT1vJiZlLnB1c2gobmV3IG13KGkua2V5LG8sZnVuY3Rpb24gcyh0KXt2YXIgYT1bXTtyZXR1cm4gcm0odC5maWVsZHN8fHt9LGZ1bmN0aW9uKHQsZSl7dmFyIG49bmV3IGNtKFt0XSk7aWYoam0oZSkpaWYoMD09PShlPXMoZS5tYXBWYWx1ZSkuZmllbGRzKS5sZW5ndGgpYS5wdXNoKG4pO2Vsc2UgZm9yKHZhciByPTAsaT1lO3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdO2EucHVzaChuLmNoaWxkKG8pKX1lbHNlIGEucHVzaChuKX0pLG5ldyBobShhKX0oby50b1Byb3RvKCkubWFwVmFsdWUpLGN3LmV4aXN0cyghMCkpKX1yZXR1cm4gYy5fbi5hZGRNdXRhdGlvbkJhdGNoKHMsaCxlLGEpfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LmFwcGx5VG9Mb2NhbERvY3VtZW50U2V0KHUpLHtiYXRjaElkOnQuYmF0Y2hJZCxjaGFuZ2VzOnV9fSkpXTtjYXNlIDI6cmV0dXJuIHM9dC5zZW50KCksbC5zaGFyZWRDbGllbnRTdGF0ZS5hZGRQZW5kaW5nTXV0YXRpb24ocy5iYXRjaElkKSxlPWwsbj1zLmJhdGNoSWQscj1kLGk9KGk9KGk9ZS54b1tlLmN1cnJlbnRVc2VyLnRvS2V5KCldKXx8bmV3IHh3KFl5KSkuaW5zZXJ0KG4sciksZS54b1tlLmN1cnJlbnRVc2VyLnRvS2V5KCldPWksWzQsS0MobCxzLmNoYW5nZXMpXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFs0LFFTKGwucmVtb3RlU3RvcmUpXTtjYXNlIDQ6cmV0dXJuIHQuc2VudCgpLFszLDZdO2Nhc2UgNTpyZXR1cm4gbD10LnNlbnQoKSxsPW5DKGwsIkZhaWxlZCB0byBwZXJzaXN0IHdyaXRlIiksZC5yZWplY3QobCksWzMsNl07Y2FzZSA2OnJldHVyblsyXX12YXIgZSxuLHIsaSxhLHUsYyxoLG99KX0pfWZ1bmN0aW9uIERDKHIsaSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpuPXIsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsNCwsNl0pLFs0LGxFKG4ubG9jYWxTdG9yZSxpKV07Y2FzZSAyOnJldHVybiBlPXQuc2VudCgpLGkudGFyZ2V0Q2hhbmdlcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7ZT1uLkNvLmdldChlKTtlJiYoR3kodC5hZGRlZERvY3VtZW50cy5zaXplK3QubW9kaWZpZWREb2N1bWVudHMuc2l6ZSt0LnJlbW92ZWREb2N1bWVudHMuc2l6ZTw9MSksMDx0LmFkZGVkRG9jdW1lbnRzLnNpemU/ZS5ibz0hMDowPHQubW9kaWZpZWREb2N1bWVudHMuc2l6ZT9HeShlLmJvKTowPHQucmVtb3ZlZERvY3VtZW50cy5zaXplJiYoR3koZS5ibyksZS5ibz0hMSkpfSksWzQsS0MobixlLGkpXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFszLDZdO2Nhc2UgNDpyZXR1cm5bNCxfVCh0LnNlbnQoKSldO2Nhc2UgNTpyZXR1cm4gdC5zZW50KCksWzMsNl07Y2FzZSA2OnJldHVyblsyXX19KX0pfWZ1bmN0aW9uIHhDKHQsbixlKXt2YXIgcix0PXQ7KHQuaXNQcmltYXJ5Q2xpZW50JiYwPT09ZXx8IXQuaXNQcmltYXJ5Q2xpZW50JiYxPT09ZSkmJihyPVtdLHQuUG8uZm9yRWFjaChmdW5jdGlvbih0LGUpe2U9ZS52aWV3LnpyKG4pO2Uuc25hcHNob3QmJnIucHVzaChlLnNuYXBzaG90KX0pLGZ1bmN0aW9uKHQsaSl7dC5vbmxpbmVTdGF0ZT1pO3ZhciBvPSExO3QucXVlcmllcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTAscj1lLmxpc3RlbmVycztuPHIubGVuZ3RoO24rKylyW25dLnpyKGkpJiYobz0hMCl9KSxvJiZwQyh0KX0odC5ldmVudE1hbmFnZXIsbiksci5sZW5ndGgmJnQudm8uX3IociksdC5vbmxpbmVTdGF0ZT1uLHQuaXNQcmltYXJ5Q2xpZW50JiZ0LnNoYXJlZENsaWVudFN0YXRlLnNldE9ubGluZVN0YXRlKG4pKX1mdW5jdGlvbiBMQyhzLGEsdSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpuPXMsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsNCwsNl0pLFs0LChlPW4ubG9jYWxTdG9yZSxyPWEsKGk9ZSkucGVyc2lzdGVuY2UucnVuVHJhbnNhY3Rpb24oIlJlamVjdCBiYXRjaCIsInJlYWR3cml0ZS1wcmltYXJ5IixmdW5jdGlvbihlKXt2YXIgbjtyZXR1cm4gaS5fbi5sb29rdXBNdXRhdGlvbkJhdGNoKGUscikubmV4dChmdW5jdGlvbih0KXtyZXR1cm4gR3kobnVsbCE9PXQpLG49dC5rZXlzKCksaS5fbi5yZW1vdmVNdXRhdGlvbkJhdGNoKGUsdCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGkuX24ucGVyZm9ybUNvbnNpc3RlbmN5Q2hlY2soZSl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIGkuTW4ucG4oZSxuKX0pfSkpXTtjYXNlIDI6cmV0dXJuIG89dC5zZW50KCksVUMobixhLHUpLEZDKG4sYSksbi5zaGFyZWRDbGllbnRTdGF0ZS51cGRhdGVNdXRhdGlvblN0YXRlKGEsInJlamVjdGVkIix1KSxbNCxLQyhuLG8pXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFszLDZdO2Nhc2UgNDpyZXR1cm5bNCxfVCh0LnNlbnQoKSldO2Nhc2UgNTpyZXR1cm4gdC5zZW50KCksWzMsNl07Y2FzZSA2OnJldHVyblsyXX12YXIgZSxyLGl9KX0pfWZ1bmN0aW9uIE1DKG8scyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLHIsaTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOktTKChuPW8pLnJlbW90ZVN0b3JlKXx8VnkoIlN5bmNFbmdpbmUiLCJUaGUgbmV0d29yayBpcyBkaXNhYmxlZC4gVGhlIHRhc2sgcmV0dXJuZWQgYnkgJ2F3YWl0UGVuZGluZ1dyaXRlcygpJyB3aWxsIG5vdCBjb21wbGV0ZSB1bnRpbCB0aGUgbmV0d29yayBpcyBlbmFibGVkLiIpLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCwoZT1uLmxvY2FsU3RvcmUpLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJHZXQgaGlnaGVzdCB1bmFja25vd2xlZGdlZCBiYXRjaCBpZCIsInJlYWRvbmx5IixmdW5jdGlvbih0KXtyZXR1cm4gZS5fbi5nZXRIaWdoZXN0VW5hY2tub3dsZWRnZWRCYXRjaElkKHQpfSldO2Nhc2UgMjpyZXR1cm4tMT09PShyPXQuc2VudCgpKT9bMix2b2lkIHMucmVzb2x2ZSgpXTooKGk9bi5Gby5nZXQocil8fFtdKS5wdXNoKHMpLG4uRm8uc2V0KHIsaSksWzMsNF0pO2Nhc2UgMzpyZXR1cm4gaT10LnNlbnQoKSxpPW5DKGksIkluaXRpYWxpemF0aW9uIG9mIHdhaXRGb3JQZW5kaW5nV3JpdGVzKCkgb3BlcmF0aW9uIGZhaWxlZCIpLHMucmVqZWN0KGkpLFszLDRdO2Nhc2UgNDpyZXR1cm5bMl19dmFyIGV9KX0pfWZ1bmN0aW9uIEZDKHQsZSl7KHQuRm8uZ2V0KGUpfHxbXSkuZm9yRWFjaChmdW5jdGlvbih0KXt0LnJlc29sdmUoKX0pLHQuRm8uZGVsZXRlKGUpfWZ1bmN0aW9uIFVDKHQsZSxuKXt2YXIgcj10LGk9ci54b1tyLmN1cnJlbnRVc2VyLnRvS2V5KCldO2kmJigodD1pLmdldChlKSkmJihuP3QucmVqZWN0KG4pOnQucmVzb2x2ZSgpLGk9aS5yZW1vdmUoZSkpLHIueG9bci5jdXJyZW50VXNlci50b0tleSgpXT1pKX1mdW5jdGlvbiBqQyhlLHQsbil7dm9pZCAwPT09biYmKG49bnVsbCksZS5zaGFyZWRDbGllbnRTdGF0ZS5yZW1vdmVMb2NhbFF1ZXJ5VGFyZ2V0KHQpO2Zvcih2YXIgcj0wLGk9ZS5Wby5nZXQodCk7cjxpLmxlbmd0aDtyKyspe3ZhciBvPWlbcl07ZS5Qby5kZWxldGUobyksbiYmZS52by5NbyhvLG4pfWUuVm8uZGVsZXRlKHQpLGUuaXNQcmltYXJ5Q2xpZW50JiZlLk5vLlpuKHQpLmZvckVhY2goZnVuY3Rpb24odCl7ZS5Oby5jb250YWluc0tleSh0KXx8cUMoZSx0KX0pfWZ1bmN0aW9uIHFDKHQsZSl7dC5Tby5kZWxldGUoZS5wYXRoLmNhbm9uaWNhbFN0cmluZygpKTt2YXIgbj10LkRvLmdldChlKTtudWxsIT09biYmKFVTKHQucmVtb3RlU3RvcmUsbiksdC5Ebz10LkRvLnJlbW92ZShlKSx0LkNvLmRlbGV0ZShuKSxCQyh0KSl9ZnVuY3Rpb24gVkModCxlLG4pe2Zvcih2YXIgcixpLG8scz0wLGE9bjtzPGEubGVuZ3RoO3MrKyl7dmFyIHU9YVtzXTt1IGluc3RhbmNlb2YgVEM/KHQuTm8uYWRkUmVmZXJlbmNlKHUua2V5LGUpLHI9dCxvPXZvaWQgMCxpPShvPShpPXUpLmtleSkucGF0aC5jYW5vbmljYWxTdHJpbmcoKSxyLkRvLmdldChvKXx8ci5Tby5oYXMoaSl8fChWeSgiU3luY0VuZ2luZSIsIk5ldyBkb2N1bWVudCBpbiBsaW1ibzogIitvKSxyLlNvLmFkZChpKSxCQyhyKSkpOnUgaW5zdGFuY2VvZiBFQz8oVnkoIlN5bmNFbmdpbmUiLCJEb2N1bWVudCBubyBsb25nZXIgaW4gbGltYm86ICIrdS5rZXkpLHQuTm8ucmVtb3ZlUmVmZXJlbmNlKHUua2V5LGUpLHQuTm8uY29udGFpbnNLZXkodS5rZXkpfHxxQyh0LHUua2V5KSk6SHkoKX19ZnVuY3Rpb24gQkModCl7Zm9yKDswPHQuU28uc2l6ZSYmdC5Eby5zaXplPHQubWF4Q29uY3VycmVudExpbWJvUmVzb2x1dGlvbnM7KXt2YXIgZT10LlNvLnZhbHVlcygpLm5leHQoKS52YWx1ZTt0LlNvLmRlbGV0ZShlKTt2YXIgbj1uZXcgQ20oYW0uZnJvbVN0cmluZyhlKSksZT10LmtvLm5leHQoKTt0LkNvLnNldChlLG5ldyBOQyhuKSksdC5Ebz10LkRvLmluc2VydChuLGUpLEZTKHQucmVtb3RlU3RvcmUsbmV3IFBJKHhiKE5iKG4ucGF0aCkpLGUsMixEeS5vKSl9fWZ1bmN0aW9uIEtDKGUscyxhKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG4scixpLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gcj1bXSxpPVtdLG89W10sKG49ZSkuUG8uaXNFbXB0eSgpP1szLDNdOihuLlBvLmZvckVhY2goZnVuY3Rpb24odCxlKXtvLnB1c2gobi4kbyhlLHMsYSkudGhlbihmdW5jdGlvbih0KXt0JiYobi5pc1ByaW1hcnlDbGllbnQmJm4uc2hhcmVkQ2xpZW50U3RhdGUudXBkYXRlUXVlcnlTdGF0ZShlLnRhcmdldElkLHQuZnJvbUNhY2hlPyJub3QtY3VycmVudCI6ImN1cnJlbnQiKSxyLnB1c2godCksdD10RS5QbihlLnRhcmdldElkLHQpLGkucHVzaCh0KSl9KSl9KSxbNCxQcm9taXNlLmFsbChvKV0pO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksbi52by5fcihyKSxbNCxmdW5jdGlvbih1LGMpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgcixlLG4saSxvLHMsYTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnI9dSx0LmxhYmVsPTE7Y2FzZSAxOnJldHVybiB0LnRyeXMucHVzaChbMSwzLCw0XSksWzQsci5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigibm90aWZ5TG9jYWxWaWV3Q2hhbmdlcyIsInJlYWR3cml0ZSIsZnVuY3Rpb24obil7cmV0dXJuIHVJLmZvckVhY2goYyxmdW5jdGlvbihlKXtyZXR1cm4gdUkuZm9yRWFjaChlLmJuLGZ1bmN0aW9uKHQpe3JldHVybiByLnBlcnNpc3RlbmNlLnJlZmVyZW5jZURlbGVnYXRlLmFkZFJlZmVyZW5jZShuLGUudGFyZ2V0SWQsdCl9KS5uZXh0KGZ1bmN0aW9uKCl7cmV0dXJuIHVJLmZvckVhY2goZS52bixmdW5jdGlvbih0KXtyZXR1cm4gci5wZXJzaXN0ZW5jZS5yZWZlcmVuY2VEZWxlZ2F0ZS5yZW1vdmVSZWZlcmVuY2UobixlLnRhcmdldElkLHQpfSl9KX0pfSldO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzMsNF07Y2FzZSAzOmlmKCFiSShlPXQuc2VudCgpKSl0aHJvdyBlO3JldHVybiBWeSgiTG9jYWxTdG9yZSIsIkZhaWxlZCB0byB1cGRhdGUgc2VxdWVuY2UgbnVtYmVyczogIitlKSxbMyw0XTtjYXNlIDQ6Zm9yKG49MCxpPWM7bjxpLmxlbmd0aDtuKyspYT1pW25dLG89YS50YXJnZXRJZCxhLmZyb21DYWNoZXx8KHM9ci5Gbi5nZXQobyksYT1zLnNuYXBzaG90VmVyc2lvbixhPXMud2l0aExhc3RMaW1ib0ZyZWVTbmFwc2hvdFZlcnNpb24oYSksci5Gbj1yLkZuLmluc2VydChvLGEpKTtyZXR1cm5bMl19fSl9KX0obi5sb2NhbFN0b3JlLGkpXTtjYXNlIDI6dC5zZW50KCksdC5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX1mdW5jdGlvbiBXQyhpLG8pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKG49aSkuY3VycmVudFVzZXIuaXNFcXVhbChvKT9bMywzXTooVnkoIlN5bmNFbmdpbmUiLCJVc2VyIGNoYW5nZS4gTmV3IHVzZXI6IixvLnRvS2V5KCkpLFs0LHVFKG4ubG9jYWxTdG9yZSxvKV0pO2Nhc2UgMTpyZXR1cm4gcj10LnNlbnQoKSxuLmN1cnJlbnRVc2VyPW8sKGU9bikuRm8uZm9yRWFjaChmdW5jdGlvbih0KXt0LmZvckVhY2goZnVuY3Rpb24odCl7dC5yZWplY3QobmV3IEZ5KE15LkNBTkNFTExFRCwiJ3dhaXRGb3JQZW5kaW5nV3JpdGVzJyBwcm9taXNlIGlzIHJlamVjdGVkIGR1ZSB0byBhIHVzZXIgY2hhbmdlLiIpKX0pfSksZS5Gby5jbGVhcigpLG4uc2hhcmVkQ2xpZW50U3RhdGUuaGFuZGxlVXNlckNoYW5nZShvLHIucmVtb3ZlZEJhdGNoSWRzLHIuYWRkZWRCYXRjaElkcyksWzQsS0MobixyLkxuKV07Y2FzZSAyOnQuc2VudCgpLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfXZhciBlfSl9KX1mdW5jdGlvbiBIQyhhLHUsYyxoKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG8scztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LChlPShvPWEpLmxvY2FsU3RvcmUsbj11LGk9KHI9ZSkuX24sci5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiTG9va3VwIG11dGF0aW9uIGRvY3VtZW50cyIsInJlYWRvbmx5IixmdW5jdGlvbihlKXtyZXR1cm4gaS5qdChlLG4pLm5leHQoZnVuY3Rpb24odCl7cmV0dXJuIHQ/ci5Nbi5wbihlLHQpOnVJLnJlc29sdmUobnVsbCl9KX0pKV07Y2FzZSAxOnJldHVybiBudWxsPT09KHM9dC5zZW50KCkpP1szLDZdOiJwZW5kaW5nIiE9PWM/WzMsM106WzQsUVMoby5yZW1vdGVTdG9yZSldO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzMsNF07Y2FzZSAzOiJhY2tub3dsZWRnZWQiPT09Y3x8InJlamVjdGVkIj09PWM/KFVDKG8sdSxofHxudWxsKSxGQyhvLHUpLG8ubG9jYWxTdG9yZS5fbi5HdCh1KSk6SHkoKSx0LmxhYmVsPTQ7Y2FzZSA0OnJldHVybls0LEtDKG8scyldO2Nhc2UgNTpyZXR1cm4gdC5zZW50KCksWzMsN107Y2FzZSA2OlZ5KCJTeW5jRW5naW5lIiwiQ2Fubm90IGFwcGx5IG11dGF0aW9uIGJhdGNoIHdpdGggaWQ6ICIrdSksdC5sYWJlbD03O2Nhc2UgNzpyZXR1cm5bMl19dmFyIGUsbixyLGl9KX0pfWZ1bmN0aW9uIEdDKGgsbCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciByLGUsaSxvLHMsYSx1LGM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gWUMocj1oKSxYQyhyKSwhMCE9PWx8fCEwPT09ci5Pbz9bMywzXTooZT1yLnNoYXJlZENsaWVudFN0YXRlLmdldEFsbEFjdGl2ZVF1ZXJ5VGFyZ2V0cygpLFs0LHpDKHIsZS50b0FycmF5KCkpXSk7Y2FzZSAxOnJldHVybiBpPXQuc2VudCgpLHIuT289ITAsWzQsSlMoci5yZW1vdGVTdG9yZSwhMCldO2Nhc2UgMjpmb3IodC5zZW50KCksbz0wLHM9aTtvPHMubGVuZ3RoO28rKylhPXNbb10sRlMoci5yZW1vdGVTdG9yZSxhKTtyZXR1cm5bMyw3XTtjYXNlIDM6cmV0dXJuITEhPT1sfHwhMT09PXIuT28/WzMsN106KHU9W10sYz1Qcm9taXNlLnJlc29sdmUoKSxyLlZvLmZvckVhY2goZnVuY3Rpb24odCxlKXtyLnNoYXJlZENsaWVudFN0YXRlLmlzTG9jYWxRdWVyeVRhcmdldChlKT91LnB1c2goZSk6Yz1jLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gakMocixlKSxkRShyLmxvY2FsU3RvcmUsZSwhMCl9KSxVUyhyLnJlbW90ZVN0b3JlLGUpfSksWzQsY10pO2Nhc2UgNDpyZXR1cm4gdC5zZW50KCksWzQsekMocix1KV07Y2FzZSA1OnJldHVybiB0LnNlbnQoKSwobj1yKS5Dby5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7VVMobi5yZW1vdGVTdG9yZSxlKX0pLG4uTm8udHMoKSxuLkNvPW5ldyBNYXAsbi5Ebz1uZXcgeHcoQ20uY29tcGFyYXRvciksci5Pbz0hMSxbNCxKUyhyLnJlbW90ZVN0b3JlLCExKV07Y2FzZSA2OnQuc2VudCgpLHQubGFiZWw9NztjYXNlIDc6cmV0dXJuWzJdfXZhciBufSl9KX1mdW5jdGlvbiB6QyhwLGQpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHIsaSxvLHMsYSx1LGMsaCxsLGY7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDplPXAsbj1bXSxyPVtdLGk9MCxvPWQsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gaTxvLmxlbmd0aD8ocz1vW2ldLGE9dm9pZCAwLCh1PWUuVm8uZ2V0KHMpKSYmMCE9PXUubGVuZ3RoP1s0LHBFKGUubG9jYWxTdG9yZSx4Yih1WzBdKSldOlszLDddKTpbMywxM107Y2FzZSAyOmE9dC5zZW50KCksYz0wLGg9dSx0LmxhYmVsPTM7Y2FzZSAzOnJldHVybiBjPGgubGVuZ3RoPyhsPWhbY10sbD1lLlBvLmdldChsKSxbNCxmdW5jdGlvbihyLGkpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdkUoKGU9cikubG9jYWxTdG9yZSxpLnF1ZXJ5LCEwKV07Y2FzZSAxOnJldHVybiBuPXQuc2VudCgpLG49aS52aWV3LkFvKG4pLFsyLChlLmlzUHJpbWFyeUNsaWVudCYmVkMoZSxpLnRhcmdldElkLG4uVG8pLG4pXX19KX0pfShlLGwpXSk6WzMsNl07Y2FzZSA0OihsPXQuc2VudCgpKS5zbmFwc2hvdCYmci5wdXNoKGwuc25hcHNob3QpLHQubGFiZWw9NTtjYXNlIDU6cmV0dXJuIGMrKyxbMywzXTtjYXNlIDY6cmV0dXJuWzMsMTFdO2Nhc2UgNzpyZXR1cm5bNCxnRShlLmxvY2FsU3RvcmUscyldO2Nhc2UgODpyZXR1cm4gZj10LnNlbnQoKSxbNCxwRShlLmxvY2FsU3RvcmUsZildO2Nhc2UgOTpyZXR1cm4gYT10LnNlbnQoKSxbNCxQQyhlLFFDKGYpLHMsITEpXTtjYXNlIDEwOnQuc2VudCgpLHQubGFiZWw9MTE7Y2FzZSAxMTpuLnB1c2goYSksdC5sYWJlbD0xMjtjYXNlIDEyOnJldHVybiBpKyssWzMsMV07Y2FzZSAxMzpyZXR1cm5bMiwoZS52by5fcihyKSxuKV19fSl9KX1mdW5jdGlvbiBRQyh0KXtyZXR1cm4gQ2IodC5wYXRoLHQuY29sbGVjdGlvbkdyb3VwLHQub3JkZXJCeSx0LmZpbHRlcnMsdC5saW1pdCwiRiIsdC5zdGFydEF0LHQuZW5kQXQpfWZ1bmN0aW9uIFlDKHQpe3JldHVybiB0LnJlbW90ZVN0b3JlLnJlbW90ZVN5bmNlci5hcHBseVJlbW90ZUV2ZW50PURDLmJpbmQobnVsbCx0KSx0LnJlbW90ZVN0b3JlLnJlbW90ZVN5bmNlci5nZXRSZW1vdGVLZXlzRm9yVGFyZ2V0PWZ1bmN0aW9uKHQsZSl7dmFyIG49dDtpZigodD1uLkNvLmdldChlKSkmJnQuYm8pcmV0dXJuIFl3KCkuYWRkKHQua2V5KTt2YXIgcj1ZdygpO2lmKCEoZT1uLlZvLmdldChlKSkpcmV0dXJuIHI7Zm9yKHZhciBpPTAsbz1lO2k8by5sZW5ndGg7aSsrKXZhciBzPW9baV0scz1uLlBvLmdldChzKSxyPXIudW5pb25XaXRoKHMudmlldy53byk7cmV0dXJuIHJ9LmJpbmQobnVsbCx0KSx0LnJlbW90ZVN0b3JlLnJlbW90ZVN5bmNlci5yZWplY3RMaXN0ZW49ZnVuY3Rpb24obyxzLGEpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHIsaTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihlPW8pLnNoYXJlZENsaWVudFN0YXRlLnVwZGF0ZVF1ZXJ5U3RhdGUocywicmVqZWN0ZWQiLGEpLGk9ZS5Dby5nZXQocyksKG49aSYmaS5rZXkpPyhyPShyPW5ldyB4dyhDbS5jb21wYXJhdG9yKSkuaW5zZXJ0KG4sQm0ubmV3Tm9Eb2N1bWVudChuLFp5Lm1pbigpKSksaT1ZdygpLmFkZChuKSxpPW5ldyBKdyhaeS5taW4oKSxuZXcgTWFwLG5ldyBWdyhZeSkscixpKSxbNCxEQyhlLGkpXSk6WzMsMl07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxlLkRvPWUuRG8ucmVtb3ZlKG4pLGUuQ28uZGVsZXRlKHMpLEJDKGUpLFszLDRdO2Nhc2UgMjpyZXR1cm5bNCxkRShlLmxvY2FsU3RvcmUscywhMSkudGhlbihmdW5jdGlvbigpe3JldHVybiBqQyhlLHMsYSl9KS5jYXRjaChfVCldO2Nhc2UgMzp0LnNlbnQoKSx0LmxhYmVsPTQ7Y2FzZSA0OnJldHVyblsyXX19KX0pfS5iaW5kKG51bGwsdCksdC52by5fcj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10LHI9ITEsaT0wLG89ZTtpPG8ubGVuZ3RoO2krKyl7dmFyIHM9b1tpXSxhPXMucXVlcnksYT1uLnF1ZXJpZXMuZ2V0KGEpO2lmKGEpe2Zvcih2YXIgdT0wLGM9YS5saXN0ZW5lcnM7dTxjLmxlbmd0aDt1KyspY1t1XS5IcihzKSYmKHI9ITApO2EuV3I9c319ciYmcEMobil9LmJpbmQobnVsbCx0LmV2ZW50TWFuYWdlciksdC52by5Nbz1mdW5jdGlvbih0LGUsbil7dmFyIHI9dDtpZih0PXIucXVlcmllcy5nZXQoZSkpZm9yKHZhciBpPTAsbz10Lmxpc3RlbmVycztpPG8ubGVuZ3RoO2krKylvW2ldLm9uRXJyb3Iobik7ci5xdWVyaWVzLmRlbGV0ZShlKX0uYmluZChudWxsLHQuZXZlbnRNYW5hZ2VyKSx0fWZ1bmN0aW9uIFhDKHQpe3JldHVybiB0LnJlbW90ZVN0b3JlLnJlbW90ZVN5bmNlci5hcHBseVN1Y2Nlc3NmdWxXcml0ZT1mdW5jdGlvbihpLG8pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHI7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDplPWksbj1vLmJhdGNoLmJhdGNoSWQsdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsNCwsNl0pLFs0LGNFKGUubG9jYWxTdG9yZSxvKV07Y2FzZSAyOnJldHVybiByPXQuc2VudCgpLFVDKGUsbixudWxsKSxGQyhlLG4pLGUuc2hhcmVkQ2xpZW50U3RhdGUudXBkYXRlTXV0YXRpb25TdGF0ZShuLCJhY2tub3dsZWRnZWQiKSxbNCxLQyhlLHIpXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFszLDZdO2Nhc2UgNDpyZXR1cm5bNCxfVCh0LnNlbnQoKSldO2Nhc2UgNTpyZXR1cm4gdC5zZW50KCksWzMsNl07Y2FzZSA2OnJldHVyblsyXX19KX0pfS5iaW5kKG51bGwsdCksdC5yZW1vdGVTdG9yZS5yZW1vdGVTeW5jZXIucmVqZWN0RmFpbGVkV3JpdGU9TEMuYmluZChudWxsLHQpLHR9ZnVuY3Rpb24gSkModCxlLG4pe3ZhciByPXQ7IWZ1bmN0aW9uKGYscCxkKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGEsdSxjLGgsbDtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCwxNCwsMTVdKSxbNCxwLmdldE1ldGFkYXRhKCldO2Nhc2UgMTpyZXR1cm4gYT10LnNlbnQoKSxbNCwocj1mLmxvY2FsU3RvcmUsbz1yLHM9dl8oKGk9YSkuY3JlYXRlVGltZSksby5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiaGFzTmV3ZXJCdW5kbGUiLCJyZWFkb25seSIsZnVuY3Rpb24odCl7cmV0dXJuIG8uUWUuZ2V0QnVuZGxlTWV0YWRhdGEodCxpLmlkKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuISF0JiYwPD10LmNyZWF0ZVRpbWUuY29tcGFyZVRvKHMpfSkpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpP1s0LHAuY2xvc2UoKV06WzMsNF07Y2FzZSAzOnJldHVyblsyLCh0LnNlbnQoKSx2b2lkIGQuX2NvbXBsZXRlV2l0aCh7dGFza1N0YXRlOiJTdWNjZXNzIixkb2N1bWVudHNMb2FkZWQ6YS50b3RhbERvY3VtZW50cyxieXRlc0xvYWRlZDphLnRvdGFsQnl0ZXMsdG90YWxEb2N1bWVudHM6YS50b3RhbERvY3VtZW50cyx0b3RhbEJ5dGVzOmEudG90YWxCeXRlc30pKV07Y2FzZSA0OnJldHVybiBkLl91cGRhdGVQcm9ncmVzcyhJQyhhKSksdT1uZXcgeUMoYSxmLmxvY2FsU3RvcmUscC5SKSxbNCxwLkxvKCldO2Nhc2UgNTpjPXQuc2VudCgpLHQubGFiZWw9NjtjYXNlIDY6cmV0dXJuIGM/WzQsdS5vbyhjKV06WzMsMTBdO2Nhc2UgNzpyZXR1cm4oaD10LnNlbnQoKSkmJmQuX3VwZGF0ZVByb2dyZXNzKGgpLFs0LHAuTG8oKV07Y2FzZSA4OmM9dC5zZW50KCksdC5sYWJlbD05O2Nhc2UgOTpyZXR1cm5bMyw2XTtjYXNlIDEwOnJldHVybls0LHUuY29tcGxldGUoKV07Y2FzZSAxMTpyZXR1cm4gbD10LnNlbnQoKSxbNCxLQyhmLGwud24sdm9pZCAwKV07Y2FzZSAxMjpyZXR1cm4gdC5zZW50KCksWzQsKHI9Zi5sb2NhbFN0b3JlLGU9YSwobj1yKS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigiU2F2ZSBidW5kbGUiLCJyZWFkd3JpdGUiLGZ1bmN0aW9uKHQpe3JldHVybiBuLlFlLnNhdmVCdW5kbGVNZXRhZGF0YSh0LGUpfSkpXTtjYXNlIDEzOnJldHVybiB0LnNlbnQoKSxkLl9jb21wbGV0ZVdpdGgobC5wcm9ncmVzcyksWzMsMTVdO2Nhc2UgMTQ6cmV0dXJuIEt5KCJTeW5jRW5naW5lIiwiTG9hZGluZyBidW5kbGUgZmFpbGVkIHdpdGggIisobD10LnNlbnQoKSkpLGQuX2ZhaWxXaXRoKGwpLFszLDE1XTtjYXNlIDE1OnJldHVyblsyXX12YXIgZSxuLHIsaSxvLHN9KX0pfShyLGUsbikudGhlbihmdW5jdGlvbigpe3Iuc2hhcmVkQ2xpZW50U3RhdGUubm90aWZ5QnVuZGxlTG9hZGVkKCl9KX12YXIgJEMsWkMsdE49KGFOLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKGUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLlI9YlMoZS5kYXRhYmFzZUluZm8uZGF0YWJhc2VJZCksdGhpcy5zaGFyZWRDbGllbnRTdGF0ZT10aGlzLkJvKGUpLHRoaXMucGVyc2lzdGVuY2U9dGhpcy5xbyhlKSxbNCx0aGlzLnBlcnNpc3RlbmNlLnN0YXJ0KCldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksdGhpcy5nY1NjaGVkdWxlcj10aGlzLlVvKGUpLHRoaXMubG9jYWxTdG9yZT10aGlzLlFvKGUpLFsyXX19KX0pfSxhTi5wcm90b3R5cGUuVW89ZnVuY3Rpb24odCl7cmV0dXJuIG51bGx9LGFOLnByb3RvdHlwZS5Rbz1mdW5jdGlvbih0KXtyZXR1cm4gYUUodGhpcy5wZXJzaXN0ZW5jZSxuZXcgZUUsdC5pbml0aWFsVXNlcix0aGlzLlIpfSxhTi5wcm90b3R5cGUucW89ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBBRShSRS5icyx0aGlzLlIpfSxhTi5wcm90b3R5cGUuQm89ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBaRX0sYU4ucHJvdG90eXBlLnRlcm1pbmF0ZT1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLmdjU2NoZWR1bGVyJiZ0aGlzLmdjU2NoZWR1bGVyLnN0b3AoKSxbNCx0aGlzLnNoYXJlZENsaWVudFN0YXRlLnNodXRkb3duKCldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksWzQsdGhpcy5wZXJzaXN0ZW5jZS5zaHV0ZG93bigpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSxhTiksZU49KFhpKHNOLFpDPXROKSxzTi5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbihlKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCxaQy5wcm90b3R5cGUuaW5pdGlhbGl6ZS5jYWxsKHRoaXMsZSldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksWzQsbUUodGhpcy5sb2NhbFN0b3JlKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbNCx0aGlzLktvLmluaXRpYWxpemUodGhpcyxlKV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbNCxYQyh0aGlzLktvLnN5bmNFbmdpbmUpXTtjYXNlIDQ6cmV0dXJuIHQuc2VudCgpLFs0LFFTKHRoaXMuS28ucmVtb3RlU3RvcmUpXTtjYXNlIDU6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSxzTi5wcm90b3R5cGUuUW89ZnVuY3Rpb24odCl7cmV0dXJuIGFFKHRoaXMucGVyc2lzdGVuY2UsbmV3IGVFLHQuaW5pdGlhbFVzZXIsdGhpcy5SKX0sc04ucHJvdG90eXBlLlVvPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMucGVyc2lzdGVuY2UucmVmZXJlbmNlRGVsZWdhdGUuZ2FyYmFnZUNvbGxlY3RvcjtyZXR1cm4gbmV3IEVUKGUsdC5hc3luY1F1ZXVlKX0sc04ucHJvdG90eXBlLnFvPWZ1bmN0aW9uKHQpe3ZhciBlPUpUKHQuZGF0YWJhc2VJbmZvLmRhdGFiYXNlSWQsdC5kYXRhYmFzZUluZm8ucGVyc2lzdGVuY2VLZXkpLG49dm9pZCAwIT09dGhpcy5jYWNoZVNpemVCeXRlcz9pVC53aXRoQ2FjaGVTaXplKHRoaXMuY2FjaGVTaXplQnl0ZXMpOmlULkRFRkFVTFQ7cmV0dXJuIG5ldyB6VCh0aGlzLnN5bmNocm9uaXplVGFicyxlLHQuY2xpZW50SWQsbix0LmFzeW5jUXVldWUseVMoKSxtUygpLHRoaXMuUix0aGlzLnNoYXJlZENsaWVudFN0YXRlLCEhdGhpcy5mb3JjZU93bmVyc2hpcCl9LHNOLnByb3RvdHlwZS5Cbz1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IFpFfSxzTiksbk49KFhpKG9OLCRDPWVOKSxvTi5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbihyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbj10aGlzO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsJEMucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLHIpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLGU9dGhpcy5Lby5zeW5jRW5naW5lLHRoaXMuc2hhcmVkQ2xpZW50U3RhdGUgaW5zdGFuY2VvZiAkRT8odGhpcy5zaGFyZWRDbGllbnRTdGF0ZS5zeW5jRW5naW5lPXt1aTpIQy5iaW5kKG51bGwsZSksYWk6ZnVuY3Rpb24oaSxvLHMsYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihlPWkpLk9vPyhWeSgiU3luY0VuZ2luZSIsIklnbm9yaW5nIHVuZXhwZWN0ZWQgcXVlcnkgc3RhdGUgbm90aWZpY2F0aW9uLiIpLFszLDhdKTpbMywxXTtjYXNlIDE6aWYoIWUuVm8uaGFzKG8pKXJldHVyblszLDhdO3N3aXRjaChzKXtjYXNlImN1cnJlbnQiOmNhc2Uibm90LWN1cnJlbnQiOnJldHVyblszLDJdO2Nhc2UicmVqZWN0ZWQiOnJldHVyblszLDVdfXJldHVyblszLDddO2Nhc2UgMjpyZXR1cm5bNCx5RShlLmxvY2FsU3RvcmUpXTtjYXNlIDM6cmV0dXJuIG49dC5zZW50KCkscj1Kdy5jcmVhdGVTeW50aGVzaXplZFJlbW90ZUV2ZW50Rm9yQ3VycmVudENoYW5nZShvLCJjdXJyZW50Ij09PXMpLFs0LEtDKGUsbixyKV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbMyw4XTtjYXNlIDU6cmV0dXJuWzQsZEUoZS5sb2NhbFN0b3JlLG8sITApXTtjYXNlIDY6cmV0dXJuIHQuc2VudCgpLGpDKGUsbyxhKSxbMyw4XTtjYXNlIDc6SHkoKSx0LmxhYmVsPTg7Y2FzZSA4OnJldHVyblsyXX19KX0pfS5iaW5kKG51bGwsZSksaGk6ZnVuY3Rpb24oYyxoLGwpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixlLHIsaSxvLHMsYSx1O3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6aWYoIShuPVlDKGMpKS5PbylyZXR1cm5bMywxMF07ZT0wLHI9aCx0LmxhYmVsPTE7Y2FzZSAxOnJldHVybiBlPHIubGVuZ3RoPyhyPXJbZV0sbi5Wby5oYXMocik/KFZ5KCJTeW5jRW5naW5lIiwiQWRkaW5nIGFuIGFscmVhZHkgYWN0aXZlIHRhcmdldCAiK3IpLFszLDVdKTpbNCxnRShuLmxvY2FsU3RvcmUscildKTpbMyw2XTtjYXNlIDI6cmV0dXJuIGk9dC5zZW50KCksWzQscEUobi5sb2NhbFN0b3JlLGkpXTtjYXNlIDM6cmV0dXJuIG89dC5zZW50KCksWzQsUEMobixRQyhpKSxvLnRhcmdldElkLCExKV07Y2FzZSA0OnQuc2VudCgpLEZTKG4ucmVtb3RlU3RvcmUsbyksdC5sYWJlbD01O2Nhc2UgNTpyZXR1cm4gZSsrLFszLDFdO2Nhc2UgNjpzPWZ1bmN0aW9uKGUpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIG4uVm8uaGFzKGUpP1s0LGRFKG4ubG9jYWxTdG9yZSxlLCExKS50aGVuKGZ1bmN0aW9uKCl7VVMobi5yZW1vdGVTdG9yZSxlKSxqQyhuLGUpfSkuY2F0Y2goX1QpXTpbMywyXTtjYXNlIDE6dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMl19fSl9LGE9MCx1PWwsdC5sYWJlbD03O2Nhc2UgNzpyZXR1cm4gYTx1Lmxlbmd0aD8odT11W2FdLFs1LHModSldKTpbMywxMF07Y2FzZSA4OnQuc2VudCgpLHQubGFiZWw9OTtjYXNlIDk6cmV0dXJuIGErKyxbMyw3XTtjYXNlIDEwOnJldHVyblsyXX19KX0pfS5iaW5kKG51bGwsZSksZm46ZnVuY3Rpb24odCl7cmV0dXJuIHQubG9jYWxTdG9yZS5wZXJzaXN0ZW5jZS5mbigpfS5iaW5kKG51bGwsZSksY2k6ZnVuY3Rpb24obil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVyblsyLHlFKChlPW4pLmxvY2FsU3RvcmUpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIEtDKGUsdCl9KV19KX0pfS5iaW5kKG51bGwsZSl9LFs0LHRoaXMuc2hhcmVkQ2xpZW50U3RhdGUuc3RhcnQoKV0pOlszLDNdO2Nhc2UgMjp0LnNlbnQoKSx0LmxhYmVsPTM7Y2FzZSAzOnJldHVybls0LHRoaXMucGVyc2lzdGVuY2UuSGUoZnVuY3Rpb24oZSl7cmV0dXJuICRpKG4sdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsR0ModGhpcy5Lby5zeW5jRW5naW5lLGUpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLHRoaXMuZ2NTY2hlZHVsZXImJihlJiYhdGhpcy5nY1NjaGVkdWxlci5zdGFydGVkP3RoaXMuZ2NTY2hlZHVsZXIuc3RhcnQodGhpcy5sb2NhbFN0b3JlKTplfHx0aGlzLmdjU2NoZWR1bGVyLnN0b3AoKSksWzJdfX0pfSl9KV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbMl19fSl9KX0sb04ucHJvdG90eXBlLkJvPWZ1bmN0aW9uKHQpe3ZhciBlPXlTKCk7aWYoISRFLnl0KGUpKXRocm93IG5ldyBGeShNeS5VTklNUExFTUVOVEVELCJJbmRleGVkREIgcGVyc2lzdGVuY2UgaXMgb25seSBhdmFpbGFibGUgb24gcGxhdGZvcm1zIHRoYXQgc3VwcG9ydCBMb2NhbFN0b3JhZ2UuIik7dmFyIG49SlQodC5kYXRhYmFzZUluZm8uZGF0YWJhc2VJZCx0LmRhdGFiYXNlSW5mby5wZXJzaXN0ZW5jZUtleSk7cmV0dXJuIG5ldyAkRShlLHQuYXN5bmNRdWV1ZSxuLHQuY2xpZW50SWQsdC5pbml0aWFsVXNlcil9LG9OKSxyTj0oaU4ucHJvdG90eXBlLmluaXRpYWxpemU9ZnVuY3Rpb24obixyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLmxvY2FsU3RvcmU/WzMsMl06KHRoaXMubG9jYWxTdG9yZT1uLmxvY2FsU3RvcmUsdGhpcy5zaGFyZWRDbGllbnRTdGF0ZT1uLnNoYXJlZENsaWVudFN0YXRlLHRoaXMuZGF0YXN0b3JlPXRoaXMuY3JlYXRlRGF0YXN0b3JlKHIpLHRoaXMucmVtb3RlU3RvcmU9dGhpcy5jcmVhdGVSZW1vdGVTdG9yZShyKSx0aGlzLmV2ZW50TWFuYWdlcj10aGlzLmNyZWF0ZUV2ZW50TWFuYWdlcihyKSx0aGlzLnN5bmNFbmdpbmU9dGhpcy5jcmVhdGVTeW5jRW5naW5lKHIsIW4uc3luY2hyb25pemVUYWJzKSx0aGlzLnNoYXJlZENsaWVudFN0YXRlLm9ubGluZVN0YXRlSGFuZGxlcj1mdW5jdGlvbih0KXtyZXR1cm4geEMoZS5zeW5jRW5naW5lLHQsMSl9LHRoaXMucmVtb3RlU3RvcmUucmVtb3RlU3luY2VyLmhhbmRsZUNyZWRlbnRpYWxDaGFuZ2U9V0MuYmluZChudWxsLHRoaXMuc3luY0VuZ2luZSksWzQsSlModGhpcy5yZW1vdGVTdG9yZSx0aGlzLnN5bmNFbmdpbmUuaXNQcmltYXJ5Q2xpZW50KV0pO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyXX19KX0pfSxpTi5wcm90b3R5cGUuY3JlYXRlRXZlbnRNYW5hZ2VyPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgckN9LGlOLnByb3RvdHlwZS5jcmVhdGVEYXRhc3RvcmU9ZnVuY3Rpb24odCl7dmFyIGU9YlModC5kYXRhYmFzZUluZm8uZGF0YWJhc2VJZCksbj0obj10LmRhdGFiYXNlSW5mbyxuZXcgaVMobikpO3JldHVybiB0PXQuY3JlZGVudGlhbHMsbmV3IE5TKHQsbixlKX0saU4ucHJvdG90eXBlLmNyZWF0ZVJlbW90ZVN0b3JlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj10aGlzLmxvY2FsU3RvcmUscj10aGlzLmRhdGFzdG9yZSxpPXQuYXN5bmNRdWV1ZSxvPWZ1bmN0aW9uKHQpe3JldHVybiB4QyhlLnN5bmNFbmdpbmUsdCwwKX0sdD1uZXcoZVMueXQoKT9lUzp0Uyk7cmV0dXJuIG5ldyB3UyhuLHIsaSxvLHQpfSxpTi5wcm90b3R5cGUuY3JlYXRlU3luY0VuZ2luZT1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbih0LGUsbixyLGksbyxzKXtvPW5ldyBBQyh0LGUsbixyLGksbyk7cmV0dXJuIHMmJihvLk9vPSEwKSxvfSh0aGlzLmxvY2FsU3RvcmUsdGhpcy5yZW1vdGVTdG9yZSx0aGlzLmV2ZW50TWFuYWdlcix0aGlzLnNoYXJlZENsaWVudFN0YXRlLHQuaW5pdGlhbFVzZXIsdC5tYXhDb25jdXJyZW50TGltYm9SZXNvbHV0aW9ucyxlKX0saU4ucHJvdG90eXBlLnRlcm1pbmF0ZT1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1uLFZ5KCJSZW1vdGVTdG9yZSIsIlJlbW90ZVN0b3JlIHNodXR0aW5nIGRvd24uIiksZS4kci5hZGQoNSksWzQsTVMoZSldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksZS5Mci5zaHV0ZG93bigpLGUuQnIuc2V0KCJVbmtub3duIiksWzJdfX0pfSl9KHRoaXMucmVtb3RlU3RvcmUpfSxpTik7ZnVuY3Rpb24gaU4oKXt9ZnVuY3Rpb24gb04odCxlKXt2YXIgbj10aGlzO3JldHVybihuPSRDLmNhbGwodGhpcyx0LGUsITEpfHx0aGlzKS5Lbz10LG4uY2FjaGVTaXplQnl0ZXM9ZSxuLnN5bmNocm9uaXplVGFicz0hMCxufWZ1bmN0aW9uIHNOKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybihyPVpDLmNhbGwodGhpcyl8fHRoaXMpLktvPXQsci5jYWNoZVNpemVCeXRlcz1lLHIuZm9yY2VPd25lcnNoaXA9bixyLnN5bmNocm9uaXplVGFicz0hMSxyfWZ1bmN0aW9uIGFOKCl7dGhpcy5zeW5jaHJvbml6ZVRhYnM9ITF9ZnVuY3Rpb24gdU4obixyKXt2b2lkIDA9PT1yJiYocj0xMDI0MCk7dmFyIGk9MDtyZXR1cm57cmVhZDpmdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gaTxuLmJ5dGVMZW5ndGg/KGU9e3ZhbHVlOm4uc2xpY2UoaSxpK3IpLGRvbmU6ITF9LFsyLChpKz1yLGUpXSk6WzIse2RvbmU6ITB9XX0pfSl9LGNhbmNlbDpmdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm5bMl19KX0pfSxyZWxlYXNlTG9jazpmdW5jdGlvbigpe30sY2xvc2VkOlByb21pc2UucmVqZWN0KCJ1bmltcGxlbWVudGVkIil9fXZhciBjTj0obU4ucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24odCl7dGhpcy5vYnNlcnZlci5uZXh0JiZ0aGlzLmpvKHRoaXMub2JzZXJ2ZXIubmV4dCx0KX0sbU4ucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHQpe3RoaXMub2JzZXJ2ZXIuZXJyb3I/dGhpcy5qbyh0aGlzLm9ic2VydmVyLmVycm9yLHQpOmNvbnNvbGUuZXJyb3IoIlVuY2F1Z2h0IEVycm9yIGluIHNuYXBzaG90IGxpc3RlbmVyOiIsdCl9LG1OLnByb3RvdHlwZS5Xbz1mdW5jdGlvbigpe3RoaXMubXV0ZWQ9ITB9LG1OLnByb3RvdHlwZS5qbz1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7dGhpcy5tdXRlZHx8c2V0VGltZW91dChmdW5jdGlvbigpe24ubXV0ZWR8fHQoZSl9LDApfSxtTiksaE49KHlOLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkdvLmNhbmNlbCgpfSx5Ti5wcm90b3R5cGUuZ2V0TWV0YWRhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7cmV0dXJuWzIsdGhpcy5tZXRhZGF0YS5wcm9taXNlXX0pfSl9LHlOLnByb3RvdHlwZS5Mbz1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LHRoaXMuZ2V0TWV0YWRhdGEoKV07Y2FzZSAxOnJldHVyblsyLCh0LnNlbnQoKSx0aGlzLkhvKCkpXX19KX0pfSx5Ti5wcm90b3R5cGUuSG89ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdGhpcy5KbygpXTtjYXNlIDE6cmV0dXJuIG51bGw9PT0oZT10LnNlbnQoKSk/WzIsbnVsbF06KHI9dGhpcy56by5kZWNvZGUoZSksbj1OdW1iZXIociksaXNOYU4obikmJnRoaXMuWW8oImxlbmd0aCBzdHJpbmcgKCIrcisiKSBpcyBub3QgdmFsaWQgbnVtYmVyIiksWzQsdGhpcy5YbyhuKV0pO2Nhc2UgMjpyZXR1cm4gcj10LnNlbnQoKSxbMixuZXcgdkMoSlNPTi5wYXJzZShyKSxlLmxlbmd0aCtuKV19fSl9KX0seU4ucHJvdG90eXBlLlpvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYnVmZmVyLmZpbmRJbmRleChmdW5jdGlvbih0KXtyZXR1cm4gdD09PSJ7Ii5jaGFyQ29kZUF0KDApfSl9LHlOLnByb3RvdHlwZS5Kbz1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHRoaXMuWm8oKTwwP1s0LHRoaXMudGMoKV06WzMsM107Y2FzZSAxOmlmKHQuc2VudCgpKXJldHVyblszLDNdO3QubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzMsMF07Y2FzZSAzOnJldHVybiAwPT09dGhpcy5idWZmZXIubGVuZ3RoP1syLG51bGxdOigoZT10aGlzLlpvKCkpPDAmJnRoaXMuWW8oIlJlYWNoZWQgdGhlIGVuZCBvZiBidW5kbGUgd2hlbiBhIGxlbmd0aCBzdHJpbmcgaXMgZXhwZWN0ZWQuIiksbj10aGlzLmJ1ZmZlci5zbGljZSgwLGUpLFsyLCh0aGlzLmJ1ZmZlcj10aGlzLmJ1ZmZlci5zbGljZShlKSxuKV0pfX0pfSl9LHlOLnByb3RvdHlwZS5Ybz1mdW5jdGlvbihuKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdGhpcy5idWZmZXIubGVuZ3RoPG4/WzQsdGhpcy50YygpXTpbMywzXTtjYXNlIDE6dC5zZW50KCkmJnRoaXMuWW8oIlJlYWNoZWQgdGhlIGVuZCBvZiBidW5kbGUgd2hlbiBtb3JlIGlzIGV4cGVjdGVkLiIpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzMsMF07Y2FzZSAzOnJldHVybiBlPXRoaXMuem8uZGVjb2RlKHRoaXMuYnVmZmVyLnNsaWNlKDAsbikpLFsyLCh0aGlzLmJ1ZmZlcj10aGlzLmJ1ZmZlci5zbGljZShuKSxlKV19fSl9KX0seU4ucHJvdG90eXBlLllvPWZ1bmN0aW9uKHQpe3Rocm93IHRoaXMuR28uY2FuY2VsKCksbmV3IEVycm9yKCJJbnZhbGlkIGJ1bmRsZSBmb3JtYXQ6ICIrdCl9LHlOLnByb3RvdHlwZS50Yz1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdGhpcy5Hby5yZWFkKCldO2Nhc2UgMTpyZXR1cm4oZT10LnNlbnQoKSkuZG9uZXx8KChuPW5ldyBVaW50OEFycmF5KHRoaXMuYnVmZmVyLmxlbmd0aCtlLnZhbHVlLmxlbmd0aCkpLnNldCh0aGlzLmJ1ZmZlciksbi5zZXQoZS52YWx1ZSx0aGlzLmJ1ZmZlci5sZW5ndGgpLHRoaXMuYnVmZmVyPW4pLFsyLGUuZG9uZV19fSl9KX0seU4pLGxOPShnTi5wcm90b3R5cGUubG9va3VwPWZ1bmN0aW9uKHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZih0aGlzLmVuc3VyZUNvbW1pdE5vdENhbGxlZCgpLDA8dGhpcy5tdXRhdGlvbnMubGVuZ3RoKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJGaXJlc3RvcmUgdHJhbnNhY3Rpb25zIHJlcXVpcmUgYWxsIHJlYWRzIHRvIGJlIGV4ZWN1dGVkIGJlZm9yZSBhbGwgd3JpdGVzLiIpO3JldHVybls0LGZ1bmN0aW9uKHMsYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLGUscixpLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1JXygobj1zKS5SKSsiL2RvY3VtZW50cyIscj17ZG9jdW1lbnRzOmEubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBtXyhuLlIsdCl9KX0sWzQsbi5PaSgiQmF0Y2hHZXREb2N1bWVudHMiLGUscildO2Nhc2UgMTpyZXR1cm4gcj10LnNlbnQoKSxpPW5ldyBNYXAsci5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlLHQ9KGU9bi5SLCJmb3VuZCJpbih0PXQpP2Z1bmN0aW9uKHQsZSl7R3koISFlLmZvdW5kKSxlLmZvdW5kLm5hbWUsZS5mb3VuZC51cGRhdGVUaW1lO3ZhciBuPWJfKHQsZS5mb3VuZC5uYW1lKSx0PXZfKGUuZm91bmQudXBkYXRlVGltZSksZT1uZXcgcW0oe21hcFZhbHVlOntmaWVsZHM6ZS5mb3VuZC5maWVsZHN9fSk7cmV0dXJuIEJtLm5ld0ZvdW5kRG9jdW1lbnQobix0LGUpfShlLHQpOiJtaXNzaW5nImluIHQ/ZnVuY3Rpb24odCxlKXtHeSghIWUubWlzc2luZyksR3koISFlLnJlYWRUaW1lKTt0PWJfKHQsZS5taXNzaW5nKSxlPXZfKGUucmVhZFRpbWUpO3JldHVybiBCbS5uZXdOb0RvY3VtZW50KHQsZSl9KGUsdCk6SHkoKSk7aS5zZXQodC5rZXkudG9TdHJpbmcoKSx0KX0pLG89W10sWzIsKGEuZm9yRWFjaChmdW5jdGlvbih0KXt0PWkuZ2V0KHQudG9TdHJpbmcoKSk7R3koISF0KSxvLnB1c2godCl9KSxvKV19fSl9KX0odGhpcy5kYXRhc3RvcmUscildO2Nhc2UgMTpyZXR1cm5bMiwoKGU9dC5zZW50KCkpLmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIG4ucmVjb3JkVmVyc2lvbih0KX0pLGUpXX19KX0pfSxnTi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7dGhpcy53cml0ZShlLnRvTXV0YXRpb24odCx0aGlzLnByZWNvbmRpdGlvbih0KSkpLHRoaXMud3JpdHRlbkRvY3MuYWRkKHQudG9TdHJpbmcoKSl9LGdOLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCxlKXt0cnl7dGhpcy53cml0ZShlLnRvTXV0YXRpb24odCx0aGlzLnByZWNvbmRpdGlvbkZvclVwZGF0ZSh0KSkpfWNhdGNoKHQpe3RoaXMubGFzdFdyaXRlRXJyb3I9dH10aGlzLndyaXR0ZW5Eb2NzLmFkZCh0LnRvU3RyaW5nKCkpfSxnTi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKHQpe3RoaXMud3JpdGUobmV3IEF3KHQsdGhpcy5wcmVjb25kaXRpb24odCkpKSx0aGlzLndyaXR0ZW5Eb2NzLmFkZCh0LnRvU3RyaW5nKCkpfSxnTi5wcm90b3R5cGUuY29tbWl0PWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG49dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOmlmKHRoaXMuZW5zdXJlQ29tbWl0Tm90Q2FsbGVkKCksdGhpcy5sYXN0V3JpdGVFcnJvcil0aHJvdyB0aGlzLmxhc3RXcml0ZUVycm9yO3JldHVybiBlPXRoaXMucmVhZFZlcnNpb25zLHRoaXMubXV0YXRpb25zLmZvckVhY2goZnVuY3Rpb24odCl7ZS5kZWxldGUodC5rZXkudG9TdHJpbmcoKSl9KSxlLmZvckVhY2goZnVuY3Rpb24odCxlKXtlPUNtLmZyb21QYXRoKGUpO24ubXV0YXRpb25zLnB1c2gobmV3IGt3KGUsbi5wcmVjb25kaXRpb24oZSkpKX0pLFs0LGZ1bmN0aW9uKGksbyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBuPUlfKChlPWkpLlIpKyIvZG9jdW1lbnRzIixyPXt3cml0ZXM6by5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIENfKGUuUix0KX0pfSxbNCxlLk5pKCJDb21taXQiLG4scildO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksWzJdfX0pfSl9KHRoaXMuZGF0YXN0b3JlLHRoaXMubXV0YXRpb25zKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSx0aGlzLmNvbW1pdHRlZD0hMCxbMl19fSl9KX0sZ04ucHJvdG90eXBlLnJlY29yZFZlcnNpb249ZnVuY3Rpb24odCl7dmFyIGU7aWYodC5pc0ZvdW5kRG9jdW1lbnQoKSllPXQudmVyc2lvbjtlbHNle2lmKCF0LmlzTm9Eb2N1bWVudCgpKXRocm93IEh5KCk7ZT1aeS5taW4oKX12YXIgbj10aGlzLnJlYWRWZXJzaW9ucy5nZXQodC5rZXkudG9TdHJpbmcoKSk7aWYobil7aWYoIWUuaXNFcXVhbChuKSl0aHJvdyBuZXcgRnkoTXkuQUJPUlRFRCwiRG9jdW1lbnQgdmVyc2lvbiBjaGFuZ2VkIGJldHdlZW4gdHdvIHJlYWRzLiIpfWVsc2UgdGhpcy5yZWFkVmVyc2lvbnMuc2V0KHQua2V5LnRvU3RyaW5nKCksZSl9LGdOLnByb3RvdHlwZS5wcmVjb25kaXRpb249ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5yZWFkVmVyc2lvbnMuZ2V0KHQudG9TdHJpbmcoKSk7cmV0dXJuIXRoaXMud3JpdHRlbkRvY3MuaGFzKHQudG9TdHJpbmcoKSkmJmU/Y3cudXBkYXRlVGltZShlKTpjdy5ub25lKCl9LGdOLnByb3RvdHlwZS5wcmVjb25kaXRpb25Gb3JVcGRhdGU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5yZWFkVmVyc2lvbnMuZ2V0KHQudG9TdHJpbmcoKSk7aWYodGhpcy53cml0dGVuRG9jcy5oYXModC50b1N0cmluZygpKXx8IWUpcmV0dXJuIGN3LmV4aXN0cyghMCk7aWYoZS5pc0VxdWFsKFp5Lm1pbigpKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiQ2FuJ3QgdXBkYXRlIGEgZG9jdW1lbnQgdGhhdCBkb2Vzbid0IGV4aXN0LiIpO3JldHVybiBjdy51cGRhdGVUaW1lKGUpfSxnTi5wcm90b3R5cGUud3JpdGU9ZnVuY3Rpb24odCl7dGhpcy5lbnN1cmVDb21taXROb3RDYWxsZWQoKSx0aGlzLm11dGF0aW9ucy5wdXNoKHQpfSxnTi5wcm90b3R5cGUuZW5zdXJlQ29tbWl0Tm90Q2FsbGVkPWZ1bmN0aW9uKCl7fSxnTiksZk49KHZOLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXt0aGlzLm5jKCl9LHZOLnByb3RvdHlwZS5uYz1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5aaS5qaShmdW5jdGlvbigpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHI9dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gZT1uZXcgbE4odGhpcy5kYXRhc3RvcmUpLChuPXRoaXMuc2MoZSkpJiZuLnRoZW4oZnVuY3Rpb24odCl7ci5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gZS5jb21taXQoKS50aGVuKGZ1bmN0aW9uKCl7ci5kZWZlcnJlZC5yZXNvbHZlKHQpfSkuY2F0Y2goZnVuY3Rpb24odCl7ci5pYyh0KX0pfSl9KS5jYXRjaChmdW5jdGlvbih0KXtyLmljKHQpfSksWzJdfSl9KX0pfSx2Ti5wcm90b3R5cGUuc2M9ZnVuY3Rpb24odCl7dHJ5e3ZhciBlPXRoaXMudXBkYXRlRnVuY3Rpb24odCk7cmV0dXJuIVRtKGUpJiZlLmNhdGNoJiZlLnRoZW4/ZToodGhpcy5kZWZlcnJlZC5yZWplY3QoRXJyb3IoIlRyYW5zYWN0aW9uIGNhbGxiYWNrIG11c3QgcmV0dXJuIGEgUHJvbWlzZSIpKSxudWxsKX1jYXRjaCh0KXtyZXR1cm4gdGhpcy5kZWZlcnJlZC5yZWplY3QodCksbnVsbH19LHZOLnByb3RvdHlwZS5pYz1mdW5jdGlvbih0KXt2YXIgZT10aGlzOzA8dGhpcy5lYyYmdGhpcy5yYyh0KT8oLS10aGlzLmVjLHRoaXMuYXN5bmNRdWV1ZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuIGUubmMoKSxQcm9taXNlLnJlc29sdmUoKX0pKTp0aGlzLmRlZmVycmVkLnJlamVjdCh0KX0sdk4ucHJvdG90eXBlLnJjPWZ1bmN0aW9uKHQpe2lmKCJGaXJlYmFzZUVycm9yIiE9PXQubmFtZSlyZXR1cm4hMTt0PXQuY29kZTtyZXR1cm4iYWJvcnRlZCI9PT10fHwiZmFpbGVkLXByZWNvbmRpdGlvbiI9PT10fHwhT3codCl9LHZOKSxwTj0oZE4ucHJvdG90eXBlLmdldENvbmZpZ3VyYXRpb249ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCx0aGlzLnJlY2VpdmVkSW5pdGlhbFVzZXIucHJvbWlzZV07Y2FzZSAxOnJldHVyblsyLCh0LnNlbnQoKSx7YXN5bmNRdWV1ZTp0aGlzLmFzeW5jUXVldWUsZGF0YWJhc2VJbmZvOnRoaXMuZGF0YWJhc2VJbmZvLGNsaWVudElkOnRoaXMuY2xpZW50SWQsY3JlZGVudGlhbHM6dGhpcy5jcmVkZW50aWFscyxpbml0aWFsVXNlcjp0aGlzLnVzZXIsbWF4Q29uY3VycmVudExpbWJvUmVzb2x1dGlvbnM6MTAwfSldfX0pfSl9LGROLnByb3RvdHlwZS5zZXRDcmVkZW50aWFsQ2hhbmdlTGlzdGVuZXI9ZnVuY3Rpb24odCl7dmFyIGU9dGhpczt0aGlzLmNyZWRlbnRpYWxMaXN0ZW5lcj10LHRoaXMucmVjZWl2ZWRJbml0aWFsVXNlci5wcm9taXNlLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5jcmVkZW50aWFsTGlzdGVuZXIoZS51c2VyKX0pfSxkTi5wcm90b3R5cGUudmVyaWZ5Tm90VGVybWluYXRlZD1mdW5jdGlvbigpe2lmKHRoaXMuYXN5bmNRdWV1ZS5pc1NodXR0aW5nRG93bil0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwiVGhlIGNsaWVudCBoYXMgYWxyZWFkeSBiZWVuIHRlcm1pbmF0ZWQuIil9LGROLnByb3RvdHlwZS50ZXJtaW5hdGU9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuYXN5bmNRdWV1ZS5lbnRlclJlc3RyaWN0ZWRNb2RlKCk7dmFyIG49bmV3IGFJO3JldHVybiB0aGlzLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldEV2ZW5XaGlsZVJlc3RyaWN0ZWQoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdC50cnlzLnB1c2goWzAsNSwsNl0pLHRoaXMub25saW5lQ29tcG9uZW50cz9bNCx0aGlzLm9ubGluZUNvbXBvbmVudHMudGVybWluYXRlKCldOlszLDJdO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiB0aGlzLm9mZmxpbmVDb21wb25lbnRzP1s0LHRoaXMub2ZmbGluZUNvbXBvbmVudHMudGVybWluYXRlKCldOlszLDRdO2Nhc2UgMzp0LnNlbnQoKSx0LmxhYmVsPTQ7Y2FzZSA0OnJldHVybiB0aGlzLmNyZWRlbnRpYWxzLnJlbW92ZUNoYW5nZUxpc3RlbmVyKCksbi5yZXNvbHZlKCksWzMsNl07Y2FzZSA1OnJldHVybiBlPXQuc2VudCgpLGU9bkMoZSwiRmFpbGVkIHRvIHNodXRkb3duIHBlcnNpc3RlbmNlIiksbi5yZWplY3QoZSksWzMsNl07Y2FzZSA2OnJldHVyblsyXX19KX0pfSksbi5wcm9taXNlfSxkTik7ZnVuY3Rpb24gZE4odCxlLG4pe3ZhciByPXRoaXM7dGhpcy5jcmVkZW50aWFscz10LHRoaXMuYXN5bmNRdWV1ZT1lLHRoaXMuZGF0YWJhc2VJbmZvPW4sdGhpcy51c2VyPVBFLlVOQVVUSEVOVElDQVRFRCx0aGlzLmNsaWVudElkPXp5LnUoKSx0aGlzLmNyZWRlbnRpYWxMaXN0ZW5lcj1mdW5jdGlvbigpe30sdGhpcy5yZWNlaXZlZEluaXRpYWxVc2VyPW5ldyBhSSx0aGlzLmNyZWRlbnRpYWxzLnNldENoYW5nZUxpc3RlbmVyKGZ1bmN0aW9uKHQpe1Z5KCJGaXJlc3RvcmVDbGllbnQiLCJSZWNlaXZlZCB1c2VyPSIsdC51aWQpLHIudXNlcj10LHIuY3JlZGVudGlhbExpc3RlbmVyKHQpLHIucmVjZWl2ZWRJbml0aWFsVXNlci5yZXNvbHZlKCl9KX1mdW5jdGlvbiB2Tih0LGUsbixyKXt0aGlzLmFzeW5jUXVldWU9dCx0aGlzLmRhdGFzdG9yZT1lLHRoaXMudXBkYXRlRnVuY3Rpb249bix0aGlzLmRlZmVycmVkPXIsdGhpcy5lYz01LHRoaXMuWmk9bmV3IEVTKHRoaXMuYXN5bmNRdWV1ZSwidHJhbnNhY3Rpb25fcmV0cnkiKX1mdW5jdGlvbiBnTih0KXt0aGlzLmRhdGFzdG9yZT10LHRoaXMucmVhZFZlcnNpb25zPW5ldyBNYXAsdGhpcy5tdXRhdGlvbnM9W10sdGhpcy5jb21taXR0ZWQ9ITEsdGhpcy5sYXN0V3JpdGVFcnJvcj1udWxsLHRoaXMud3JpdHRlbkRvY3M9bmV3IFNldH1mdW5jdGlvbiB5Tih0LGUpe3ZhciBuPXRoaXM7dGhpcy5Hbz10LHRoaXMuUj1lLHRoaXMubWV0YWRhdGE9bmV3IGFJLHRoaXMuYnVmZmVyPW5ldyBVaW50OEFycmF5LHRoaXMuem89bmV3IFRleHREZWNvZGVyKCJ1dGYtOCIpLHRoaXMuSG8oKS50aGVuKGZ1bmN0aW9uKHQpe3QmJnQuaW8oKT9uLm1ldGFkYXRhLnJlc29sdmUodC5wYXlsb2FkLm1ldGFkYXRhKTpuLm1ldGFkYXRhLnJlamVjdChuZXcgRXJyb3IoIlRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBidW5kbGUgaXMgbm90IGEgbWV0YWRhdGEsIGl0IGlzXG4gICAgICAgICAgICAgIitKU09OLnN0cmluZ2lmeShudWxsPT10P3ZvaWQgMDp0LnBheWxvYWQpKSl9LGZ1bmN0aW9uKHQpe3JldHVybiBuLm1ldGFkYXRhLnJlamVjdCh0KX0pfWZ1bmN0aW9uIG1OKHQpe3RoaXMub2JzZXJ2ZXI9dCx0aGlzLm11dGVkPSExfWZ1bmN0aW9uIGJOKGksbyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scj10aGlzO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGkuYXN5bmNRdWV1ZS52ZXJpZnlPcGVyYXRpb25JblByb2dyZXNzKCksVnkoIkZpcmVzdG9yZUNsaWVudCIsIkluaXRpYWxpemluZyBPZmZsaW5lQ29tcG9uZW50UHJvdmlkZXIiKSxbNCxpLmdldENvbmZpZ3VyYXRpb24oKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLFs0LG8uaW5pdGlhbGl6ZShlKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxuPWUuaW5pdGlhbFVzZXIsaS5zZXRDcmVkZW50aWFsQ2hhbmdlTGlzdGVuZXIoZnVuY3Rpb24oZSl7bi5pc0VxdWFsKGUpfHwobj1lLGkuYXN5bmNRdWV1ZS5lbnF1ZXVlUmV0cnlhYmxlKGZ1bmN0aW9uKCl7cmV0dXJuICRpKHIsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdUUoby5sb2NhbFN0b3JlLGUpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSkpfSksby5wZXJzaXN0ZW5jZS5zZXREYXRhYmFzZURlbGV0ZWRMaXN0ZW5lcihmdW5jdGlvbigpe3JldHVybiBpLnRlcm1pbmF0ZSgpfSksaS5vZmZsaW5lQ29tcG9uZW50cz1vLFsyXX19KX0pfWZ1bmN0aW9uIHdOKHIsaSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gci5hc3luY1F1ZXVlLnZlcmlmeU9wZXJhdGlvbkluUHJvZ3Jlc3MoKSxbNCxfTihyKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLFZ5KCJGaXJlc3RvcmVDbGllbnQiLCJJbml0aWFsaXppbmcgT25saW5lQ29tcG9uZW50UHJvdmlkZXIiKSxbNCxyLmdldENvbmZpZ3VyYXRpb24oKV07Y2FzZSAyOnJldHVybiBuPXQuc2VudCgpLFs0LGkuaW5pdGlhbGl6ZShlLG4pXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLHIuc2V0Q3JlZGVudGlhbENoYW5nZUxpc3RlbmVyKGZ1bmN0aW9uKHQpe3JldHVybiByLmFzeW5jUXVldWUuZW5xdWV1ZVJldHJ5YWJsZShmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihyLGkpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKGU9cikuYXN5bmNRdWV1ZS52ZXJpZnlPcGVyYXRpb25JblByb2dyZXNzKCksVnkoIlJlbW90ZVN0b3JlIiwiUmVtb3RlU3RvcmUgcmVjZWl2ZWQgbmV3IGNyZWRlbnRpYWxzIiksbj1LUyhlKSxlLiRyLmFkZCgzKSxbNCxNUyhlKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxuJiZlLkJyLnNldCgiVW5rbm93biIpLFs0LGUucmVtb3RlU3luY2VyLmhhbmRsZUNyZWRlbnRpYWxDaGFuZ2UoaSldO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksZS4kci5kZWxldGUoMyksWzQsTFMoZSldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzJdfX0pfSl9KGkucmVtb3RlU3RvcmUsdCl9KX0pLHIub25saW5lQ29tcG9uZW50cz1pLFsyXX19KX0pfWZ1bmN0aW9uIF9OKGUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlLm9mZmxpbmVDb21wb25lbnRzP1szLDJdOihWeSgiRmlyZXN0b3JlQ2xpZW50IiwiVXNpbmcgZGVmYXVsdCBPZmZsaW5lQ29tcG9uZW50UHJvdmlkZXIiKSxbNCxiTihlLG5ldyB0TildKTtjYXNlIDE6dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixlLm9mZmxpbmVDb21wb25lbnRzXX19KX0pfWZ1bmN0aW9uIElOKGUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlLm9ubGluZUNvbXBvbmVudHM/WzMsMl06KFZ5KCJGaXJlc3RvcmVDbGllbnQiLCJVc2luZyBkZWZhdWx0IE9ubGluZUNvbXBvbmVudFByb3ZpZGVyIiksWzQsd04oZSxuZXcgck4pXSk7Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzIsZS5vbmxpbmVDb21wb25lbnRzXX19KX0pfWZ1bmN0aW9uIFROKHQpe3JldHVybiBfTih0KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LnBlcnNpc3RlbmNlfSl9ZnVuY3Rpb24gRU4odCl7cmV0dXJuIF9OKHQpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQubG9jYWxTdG9yZX0pfWZ1bmN0aW9uIFNOKHQpe3JldHVybiBJTih0KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LnJlbW90ZVN0b3JlfSl9ZnVuY3Rpb24gQ04odCl7cmV0dXJuIElOKHQpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuc3luY0VuZ2luZX0pfWZ1bmN0aW9uIE5OKHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsSU4ocildO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKSxbMiwoKG49ZS5ldmVudE1hbmFnZXIpLm9uTGlzdGVuPWZ1bmN0aW9uKHMsYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpLG87cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1ZQyhzKSwobz1lLlBvLmdldChhKSk/KG49by50YXJnZXRJZCxlLnNoYXJlZENsaWVudFN0YXRlLmFkZExvY2FsUXVlcnlUYXJnZXQobikscj1vLnZpZXcuUm8oKSxbMyw0XSk6WzMsMV07Y2FzZSAxOnJldHVybls0LHBFKGUubG9jYWxTdG9yZSx4YihhKSldO2Nhc2UgMjpyZXR1cm4gaT10LnNlbnQoKSxvPWUuc2hhcmVkQ2xpZW50U3RhdGUuYWRkTG9jYWxRdWVyeVRhcmdldChpLnRhcmdldElkKSxuPWkudGFyZ2V0SWQsWzQsUEMoZSxhLG4sImN1cnJlbnQiPT09byldO2Nhc2UgMzpyPXQuc2VudCgpLGUuaXNQcmltYXJ5Q2xpZW50JiZGUyhlLnJlbW90ZVN0b3JlLGkpLHQubGFiZWw9NDtjYXNlIDQ6cmV0dXJuWzIscl19fSl9KX0uYmluZChudWxsLGUuc3luY0VuZ2luZSksbi5vblVubGlzdGVuPWZ1bmN0aW9uKGksbyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBuPShlPWkpLlBvLmdldChvKSwxPChyPWUuVm8uZ2V0KG4udGFyZ2V0SWQpKS5sZW5ndGg/WzIsKGUuVm8uc2V0KG4udGFyZ2V0SWQsci5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIU1iKHQsbyl9KSksdm9pZCBlLlBvLmRlbGV0ZShvKSldOmUuaXNQcmltYXJ5Q2xpZW50PyhlLnNoYXJlZENsaWVudFN0YXRlLnJlbW92ZUxvY2FsUXVlcnlUYXJnZXQobi50YXJnZXRJZCksZS5zaGFyZWRDbGllbnRTdGF0ZS5pc0FjdGl2ZVF1ZXJ5VGFyZ2V0KG4udGFyZ2V0SWQpP1szLDJdOls0LGRFKGUubG9jYWxTdG9yZSxuLnRhcmdldElkLCExKS50aGVuKGZ1bmN0aW9uKCl7ZS5zaGFyZWRDbGllbnRTdGF0ZS5jbGVhclF1ZXJ5U3RhdGUobi50YXJnZXRJZCksVVMoZS5yZW1vdGVTdG9yZSxuLnRhcmdldElkKSxqQyhlLG4udGFyZ2V0SWQpfSkuY2F0Y2goX1QpXSk6WzMsM107Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzMsNV07Y2FzZSAzOnJldHVybiBqQyhlLG4udGFyZ2V0SWQpLFs0LGRFKGUubG9jYWxTdG9yZSxuLnRhcmdldElkLCEwKV07Y2FzZSA0OnQuc2VudCgpLHQubGFiZWw9NTtjYXNlIDU6cmV0dXJuWzJdfX0pfSl9LmJpbmQobnVsbCxlLnN5bmNFbmdpbmUpLG4pXX19KX0pfWZ1bmN0aW9uIEFOKG4scixpKXt2YXIgdD10aGlzO3ZvaWQgMD09PWkmJihpPXt9KTt2YXIgbz1uZXcgYUk7cmV0dXJuIG4uYXN5bmNRdWV1ZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuICRpKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9ZnVuY3Rpb24obixyLGksbyxzKXt2YXIgdD1uZXcgY04oe25leHQ6ZnVuY3Rpb24odCl7ci5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuIGZDKG4sYSl9KTt2YXIgZT10LmRvY3MuaGFzKGkpOyFlJiZ0LmZyb21DYWNoZT9zLnJlamVjdChuZXcgRnkoTXkuVU5BVkFJTEFCTEUsIkZhaWxlZCB0byBnZXQgZG9jdW1lbnQgYmVjYXVzZSB0aGUgY2xpZW50IGlzIG9mZmxpbmUuIikpOmUmJnQuZnJvbUNhY2hlJiZvJiYic2VydmVyIj09PW8uc291cmNlP3MucmVqZWN0KG5ldyBGeShNeS5VTkFWQUlMQUJMRSwnRmFpbGVkIHRvIGdldCBkb2N1bWVudCBmcm9tIHNlcnZlci4gKEhvd2V2ZXIsIHRoaXMgZG9jdW1lbnQgZG9lcyBleGlzdCBpbiB0aGUgbG9jYWwgY2FjaGUuIFJ1biBhZ2FpbiB3aXRob3V0IHNldHRpbmcgc291cmNlIHRvICJzZXJ2ZXIiIHRvIHJldHJpZXZlIHRoZSBjYWNoZWQgZG9jdW1lbnQuKScpKTpzLnJlc29sdmUodCl9LGVycm9yOmZ1bmN0aW9uKHQpe3JldHVybiBzLnJlamVjdCh0KX19KSxhPW5ldyBkQyhOYihpLnBhdGgpLHQse2luY2x1ZGVNZXRhZGF0YUNoYW5nZXM6ITAsc286ITB9KTtyZXR1cm4gbEMobixhKX0sWzQsTk4obildO2Nhc2UgMTpyZXR1cm5bMixlLmFwcGx5KHZvaWQgMCxbdC5zZW50KCksbi5hc3luY1F1ZXVlLHIsaSxvXSldfX0pfSl9KSxvLnByb21pc2V9ZnVuY3Rpb24ga04obixyLGkpe3ZhciB0PXRoaXM7dm9pZCAwPT09aSYmKGk9e30pO3ZhciBvPW5ldyBhSTtyZXR1cm4gbi5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1mdW5jdGlvbihlLG4sdCxyLGkpe3ZhciBvPW5ldyBjTih7bmV4dDpmdW5jdGlvbih0KXtuLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gZkMoZSxzKX0pLHQuZnJvbUNhY2hlJiYic2VydmVyIj09PXIuc291cmNlP2kucmVqZWN0KG5ldyBGeShNeS5VTkFWQUlMQUJMRSwnRmFpbGVkIHRvIGdldCBkb2N1bWVudHMgZnJvbSBzZXJ2ZXIuIChIb3dldmVyLCB0aGVzZSBkb2N1bWVudHMgbWF5IGV4aXN0IGluIHRoZSBsb2NhbCBjYWNoZS4gUnVuIGFnYWluIHdpdGhvdXQgc2V0dGluZyBzb3VyY2UgdG8gInNlcnZlciIgdG8gcmV0cmlldmUgdGhlIGNhY2hlZCBkb2N1bWVudHMuKScpKTppLnJlc29sdmUodCl9LGVycm9yOmZ1bmN0aW9uKHQpe3JldHVybiBpLnJlamVjdCh0KX19KSxzPW5ldyBkQyh0LG8se2luY2x1ZGVNZXRhZGF0YUNoYW5nZXM6ITAsc286ITB9KTtyZXR1cm4gbEMoZSxzKX0sWzQsTk4obildO2Nhc2UgMTpyZXR1cm5bMixlLmFwcGx5KHZvaWQgMCxbdC5zZW50KCksbi5hc3luY1F1ZXVlLHIsaSxvXSldfX0pfSl9KSxvLnByb21pc2V9ZnVuY3Rpb24gUk4odCxlKXt0aGlzLnVzZXI9ZSx0aGlzLnR5cGU9Ik9BdXRoIix0aGlzLmF1dGhIZWFkZXJzPXt9LHRoaXMuYXV0aEhlYWRlcnMuQXV0aG9yaXphdGlvbj0iQmVhcmVyICIrdH12YXIgUE49ZnVuY3Rpb24odCxlLG4scixpLG8scyl7dGhpcy5kYXRhYmFzZUlkPXQsdGhpcy5hcHBJZD1lLHRoaXMucGVyc2lzdGVuY2VLZXk9bix0aGlzLmhvc3Q9cix0aGlzLnNzbD1pLHRoaXMuZm9yY2VMb25nUG9sbGluZz1vLHRoaXMuYXV0b0RldGVjdExvbmdQb2xsaW5nPXN9LE9OPShPYmplY3QuZGVmaW5lUHJvcGVydHkoQk4ucHJvdG90eXBlLCJpc0RlZmF1bHREYXRhYmFzZSIse2dldDpmdW5jdGlvbigpe3JldHVybiIoZGVmYXVsdCkiPT09dGhpcy5kYXRhYmFzZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxCTi5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIEJOJiZ0LnByb2plY3RJZD09PXRoaXMucHJvamVjdElkJiZ0LmRhdGFiYXNlPT09dGhpcy5kYXRhYmFzZX0sQk4pLEROPW5ldyBNYXAseE49KFZOLnByb3RvdHlwZS5nZXRUb2tlbj1mdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCl9LFZOLnByb3RvdHlwZS5pbnZhbGlkYXRlVG9rZW49ZnVuY3Rpb24oKXt9LFZOLnByb3RvdHlwZS5zZXRDaGFuZ2VMaXN0ZW5lcj1mdW5jdGlvbih0KXsodGhpcy5jaGFuZ2VMaXN0ZW5lcj10KShQRS5VTkFVVEhFTlRJQ0FURUQpfSxWTi5wcm90b3R5cGUucmVtb3ZlQ2hhbmdlTGlzdGVuZXI9ZnVuY3Rpb24oKXt0aGlzLmNoYW5nZUxpc3RlbmVyPW51bGx9LFZOKSxMTj0ocU4ucHJvdG90eXBlLmdldFRva2VuPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyxuPXRoaXMuY2MsdD10aGlzLmZvcmNlUmVmcmVzaDtyZXR1cm4gdGhpcy5mb3JjZVJlZnJlc2g9ITEsdGhpcy5hdXRoP3RoaXMuYXV0aC5nZXRUb2tlbih0KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlLmNjIT09bj8oVnkoIkZpcmViYXNlQ3JlZGVudGlhbHNQcm92aWRlciIsImdldFRva2VuIGFib3J0ZWQgZHVlIHRvIHRva2VuIGNoYW5nZS4iKSxlLmdldFRva2VuKCkpOnQ/KEd5KCJzdHJpbmciPT10eXBlb2YgdC5hY2Nlc3NUb2tlbiksbmV3IFJOKHQuYWNjZXNzVG9rZW4sZS5jdXJyZW50VXNlcikpOm51bGx9KTpQcm9taXNlLnJlc29sdmUobnVsbCl9LHFOLnByb3RvdHlwZS5pbnZhbGlkYXRlVG9rZW49ZnVuY3Rpb24oKXt0aGlzLmZvcmNlUmVmcmVzaD0hMH0scU4ucHJvdG90eXBlLnNldENoYW5nZUxpc3RlbmVyPWZ1bmN0aW9uKHQpe3RoaXMuY2hhbmdlTGlzdGVuZXI9dCx0aGlzLnJlY2VpdmVkSW5pdGlhbFVzZXImJnQodGhpcy5jdXJyZW50VXNlcil9LHFOLnByb3RvdHlwZS5yZW1vdmVDaGFuZ2VMaXN0ZW5lcj1mdW5jdGlvbigpe3RoaXMuYXV0aCYmdGhpcy5hdXRoLnJlbW92ZUF1dGhUb2tlbkxpc3RlbmVyKHRoaXMub2MpLHRoaXMub2M9bnVsbCx0aGlzLmNoYW5nZUxpc3RlbmVyPW51bGx9LHFOLnByb3RvdHlwZS51Yz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuYXV0aCYmdGhpcy5hdXRoLmdldFVpZCgpO3JldHVybiBHeShudWxsPT09dHx8InN0cmluZyI9PXR5cGVvZiB0KSxuZXcgUEUodCl9LHFOKSxNTj0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGpOLnByb3RvdHlwZSwiYXV0aEhlYWRlcnMiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgdD17IlgtR29vZy1BdXRoVXNlciI6dGhpcy5oY30sZT10aGlzLmFjLmF1dGguZ2V0QXV0aEhlYWRlclZhbHVlRm9yRmlyc3RQYXJ0eShbXSk7cmV0dXJuIGUmJih0LkF1dGhvcml6YXRpb249ZSksdH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxqTiksRk49KFVOLnByb3RvdHlwZS5nZXRUb2tlbj1mdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlc29sdmUobmV3IE1OKHRoaXMuYWMsdGhpcy5oYykpfSxVTi5wcm90b3R5cGUuc2V0Q2hhbmdlTGlzdGVuZXI9ZnVuY3Rpb24odCl7dChQRS5GSVJTVF9QQVJUWSl9LFVOLnByb3RvdHlwZS5yZW1vdmVDaGFuZ2VMaXN0ZW5lcj1mdW5jdGlvbigpe30sVU4ucHJvdG90eXBlLmludmFsaWRhdGVUb2tlbj1mdW5jdGlvbigpe30sVU4pO2Z1bmN0aW9uIFVOKHQsZSl7dGhpcy5hYz10LHRoaXMuaGM9ZX1mdW5jdGlvbiBqTih0LGUpe3RoaXMuYWM9dCx0aGlzLmhjPWUsdGhpcy50eXBlPSJGaXJzdFBhcnR5Iix0aGlzLnVzZXI9UEUuRklSU1RfUEFSVFl9ZnVuY3Rpb24gcU4odCl7dmFyIGU9dGhpczt0aGlzLm9jPW51bGwsdGhpcy5jdXJyZW50VXNlcj1QRS5VTkFVVEhFTlRJQ0FURUQsdGhpcy5yZWNlaXZlZEluaXRpYWxVc2VyPSExLHRoaXMuY2M9MCx0aGlzLmNoYW5nZUxpc3RlbmVyPW51bGwsdGhpcy5mb3JjZVJlZnJlc2g9ITEsdGhpcy5vYz1mdW5jdGlvbigpe2UuY2MrKyxlLmN1cnJlbnRVc2VyPWUudWMoKSxlLnJlY2VpdmVkSW5pdGlhbFVzZXI9ITAsZS5jaGFuZ2VMaXN0ZW5lciYmZS5jaGFuZ2VMaXN0ZW5lcihlLmN1cnJlbnRVc2VyKX0sdGhpcy5jYz0wLHRoaXMuYXV0aD10LmdldEltbWVkaWF0ZSh7b3B0aW9uYWw6ITB9KSx0aGlzLmF1dGg/dGhpcy5hdXRoLmFkZEF1dGhUb2tlbkxpc3RlbmVyKHRoaXMub2MpOih0aGlzLm9jKG51bGwpLHQuZ2V0KCkudGhlbihmdW5jdGlvbih0KXtlLmF1dGg9dCxlLm9jJiZlLmF1dGguYWRkQXV0aFRva2VuTGlzdGVuZXIoZS5vYyl9LGZ1bmN0aW9uKCl7fSkpfWZ1bmN0aW9uIFZOKCl7dGhpcy5jaGFuZ2VMaXN0ZW5lcj1udWxsfWZ1bmN0aW9uIEJOKHQsZSl7dGhpcy5wcm9qZWN0SWQ9dCx0aGlzLmRhdGFiYXNlPWV8fCIoZGVmYXVsdCkifWZ1bmN0aW9uIEtOKHQsZSxuKXtpZighbil0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiRnVuY3Rpb24gIit0KyIoKSBjYW5ub3QgYmUgY2FsbGVkIHdpdGggYW4gZW1wdHkgIitlKyIuIil9ZnVuY3Rpb24gV04odCxlKXtpZih2b2lkIDA9PT1lKXJldHVybnttZXJnZTohMX07aWYodm9pZCAwIT09ZS5tZXJnZUZpZWxkcyYmdm9pZCAwIT09ZS5tZXJnZSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBvcHRpb25zIHBhc3NlZCB0byBmdW5jdGlvbiAiK3QrJygpOiBZb3UgY2Fubm90IHNwZWNpZnkgYm90aCAibWVyZ2UiIGFuZCAibWVyZ2VGaWVsZHMiLicpO3JldHVybiBlfWZ1bmN0aW9uIEhOKHQsZSxuLHIpe2lmKCEwPT09ZSYmITA9PT1yKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULHQrIiBhbmQgIituKyIgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIil9ZnVuY3Rpb24gR04odCl7aWYoIUNtLmlzRG9jdW1lbnRLZXkodCkpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgZG9jdW1lbnQgcmVmZXJlbmNlLiBEb2N1bWVudCByZWZlcmVuY2VzIG11c3QgaGF2ZSBhbiBldmVuIG51bWJlciBvZiBzZWdtZW50cywgYnV0ICIrdCsiIGhhcyAiK3QubGVuZ3RoKyIuIil9ZnVuY3Rpb24gek4odCl7aWYoQ20uaXNEb2N1bWVudEtleSh0KSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBjb2xsZWN0aW9uIHJlZmVyZW5jZS4gQ29sbGVjdGlvbiByZWZlcmVuY2VzIG11c3QgaGF2ZSBhbiBvZGQgbnVtYmVyIG9mIHNlZ21lbnRzLCBidXQgIit0KyIgaGFzICIrdC5sZW5ndGgrIi4iKX1mdW5jdGlvbiBRTihlKXtpZih2b2lkIDA9PT1lKXJldHVybiJ1bmRlZmluZWQiO2lmKG51bGw9PT1lKXJldHVybiJudWxsIjtpZigic3RyaW5nIj09dHlwZW9mIGUpcmV0dXJuIDIwPGUubGVuZ3RoJiYoZT1lLnN1YnN0cmluZygwLDIwKSsiLi4uIiksSlNPTi5zdHJpbmdpZnkoZSk7aWYoIm51bWJlciI9PXR5cGVvZiBlfHwiYm9vbGVhbiI9PXR5cGVvZiBlKXJldHVybiIiK2U7aWYoIm9iamVjdCIhPXR5cGVvZiBlKXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlPyJhIGZ1bmN0aW9uIjpIeSgpO2lmKGUgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4iYW4gYXJyYXkiO3ZhciB0PWZ1bmN0aW9uKCl7aWYoZS5jb25zdHJ1Y3Rvcil7dmFyIHQ9L2Z1bmN0aW9uXHMrKFteXHMoXSspXHMqXCgvLmV4ZWMoZS5jb25zdHJ1Y3Rvci50b1N0cmluZygpKTtpZih0JiYxPHQubGVuZ3RoKXJldHVybiB0WzFdfXJldHVybiBudWxsfSgpO3JldHVybiB0PyJhIGN1c3RvbSAiK3QrIiBvYmplY3QiOiJhbiBvYmplY3QifWZ1bmN0aW9uIFlOKHQsZSl7aWYoKHQ9Il9kZWxlZ2F0ZSJpbiB0P3QuX2RlbGVnYXRlOnQpaW5zdGFuY2VvZiBlKXJldHVybiB0O2lmKGUubmFtZT09PXQuY29uc3RydWN0b3IubmFtZSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiVHlwZSBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgaW5zdGFuY2UuIERpZCB5b3UgcGFzcyBhIHJlZmVyZW5jZSBmcm9tIGEgZGlmZmVyZW50IEZpcmVzdG9yZSBTREs/Iik7dD1RTih0KTt0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiRXhwZWN0ZWQgdHlwZSAnIitlLm5hbWUrIicsIGJ1dCBpdCB3YXM6ICIrdCl9ZnVuY3Rpb24gWE4odCxlKXtpZihlPD0wKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJGdW5jdGlvbiAiK3QrIigpIHJlcXVpcmVzIGEgcG9zaXRpdmUgbnVtYmVyLCBidXQgaXQgd2FzOiAiK2UrIi4iKX12YXIgSk4sJE49KGFBLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmhvc3Q9PT10Lmhvc3QmJnRoaXMuc3NsPT09dC5zc2wmJnRoaXMuY3JlZGVudGlhbHM9PT10LmNyZWRlbnRpYWxzJiZ0aGlzLmNhY2hlU2l6ZUJ5dGVzPT09dC5jYWNoZVNpemVCeXRlcyYmdGhpcy5leHBlcmltZW50YWxGb3JjZUxvbmdQb2xsaW5nPT09dC5leHBlcmltZW50YWxGb3JjZUxvbmdQb2xsaW5nJiZ0aGlzLmV4cGVyaW1lbnRhbEF1dG9EZXRlY3RMb25nUG9sbGluZz09PXQuZXhwZXJpbWVudGFsQXV0b0RldGVjdExvbmdQb2xsaW5nJiZ0aGlzLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXM9PT10Lmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXN9LGFBKSxaTj0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHNBLnByb3RvdHlwZSwiYXBwIix7Z2V0OmZ1bmN0aW9uKCl7aWYoIXRoaXMuX2FwcCl0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwiRmlyZXN0b3JlIHdhcyBub3QgaW5pdGlhbGl6ZWQgdXNpbmcgdGhlIEZpcmViYXNlIFNESy4gJ2FwcCcgaXMgbm90IGF2YWlsYWJsZSIpO3JldHVybiB0aGlzLl9hcHB9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHNBLnByb3RvdHlwZSwiX2luaXRpYWxpemVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NldHRpbmdzRnJvemVufSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzQS5wcm90b3R5cGUsIl90ZXJtaW5hdGVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3Rlcm1pbmF0ZVRhc2t9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksc0EucHJvdG90eXBlLl9zZXRTZXR0aW5ncz1mdW5jdGlvbih0KXtpZih0aGlzLl9zZXR0aW5nc0Zyb3plbil0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwiRmlyZXN0b3JlIGhhcyBhbHJlYWR5IGJlZW4gc3RhcnRlZCBhbmQgaXRzIHNldHRpbmdzIGNhbiBubyBsb25nZXIgYmUgY2hhbmdlZC4gWW91IGNhbiBvbmx5IG1vZGlmeSBzZXR0aW5ncyBiZWZvcmUgY2FsbGluZyBhbnkgb3RoZXIgbWV0aG9kcyBvbiBhIEZpcmVzdG9yZSBvYmplY3QuIik7dGhpcy5fc2V0dGluZ3M9bmV3ICROKHQpLHZvaWQgMCE9PXQuY3JlZGVudGlhbHMmJih0aGlzLl9jcmVkZW50aWFscz1mdW5jdGlvbih0KXtpZighdClyZXR1cm4gbmV3IHhOO3N3aXRjaCh0LnR5cGUpe2Nhc2UiZ2FwaSI6dmFyIGU9dC5jbGllbnQ7cmV0dXJuIEd5KCEoIm9iamVjdCIhPXR5cGVvZiBlfHxudWxsPT09ZXx8IWUuYXV0aHx8IWUuYXV0aC5nZXRBdXRoSGVhZGVyVmFsdWVGb3JGaXJzdFBhcnR5KSksbmV3IEZOKGUsdC5zZXNzaW9uSW5kZXh8fCIwIik7Y2FzZSJwcm92aWRlciI6cmV0dXJuIHQuY2xpZW50O2RlZmF1bHQ6dGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIm1ha2VDcmVkZW50aWFsc1Byb3ZpZGVyIGZhaWxlZCBkdWUgdG8gaW52YWxpZCBjcmVkZW50aWFsIHR5cGUiKX19KHQuY3JlZGVudGlhbHMpKX0sc0EucHJvdG90eXBlLl9nZXRTZXR0aW5ncz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zZXR0aW5nc30sc0EucHJvdG90eXBlLl9mcmVlemVTZXR0aW5ncz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zZXR0aW5nc0Zyb3plbj0hMCx0aGlzLl9zZXR0aW5nc30sc0EucHJvdG90eXBlLl9kZWxldGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fdGVybWluYXRlVGFza3x8KHRoaXMuX3Rlcm1pbmF0ZVRhc2s9dGhpcy5fdGVybWluYXRlKCkpLHRoaXMuX3Rlcm1pbmF0ZVRhc2t9LHNBLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57YXBwOnRoaXMuX2FwcCxkYXRhYmFzZUlkOnRoaXMuX2RhdGFiYXNlSWQsc2V0dGluZ3M6dGhpcy5fc2V0dGluZ3N9fSxzQS5wcm90b3R5cGUuX3Rlcm1pbmF0ZT1mdW5jdGlvbigpe3JldHVybih0PUROLmdldCh0aGlzKSkmJihWeSgiQ29tcG9uZW50UHJvdmlkZXIiLCJSZW1vdmluZyBEYXRhc3RvcmUiKSxETi5kZWxldGUodGhpcyksdC50ZXJtaW5hdGUoKSksUHJvbWlzZS5yZXNvbHZlKCk7dmFyIHR9LHNBKSx0QT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KG9BLnByb3RvdHlwZSwiX3BhdGgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fa2V5LnBhdGh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KG9BLnByb3RvdHlwZSwiaWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fa2V5LnBhdGgubGFzdFNlZ21lbnQoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkob0EucHJvdG90eXBlLCJwYXRoIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2tleS5wYXRoLmNhbm9uaWNhbFN0cmluZygpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvQS5wcm90b3R5cGUsInBhcmVudCIse2dldDpmdW5jdGlvbigpe3JldHVybiBuZXcgbkEodGhpcy5maXJlc3RvcmUsdGhpcy5fY29udmVydGVyLHRoaXMuX2tleS5wYXRoLnBvcExhc3QoKSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksb0EucHJvdG90eXBlLndpdGhDb252ZXJ0ZXI9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBvQSh0aGlzLmZpcmVzdG9yZSx0LHRoaXMuX2tleSl9LG9BKSxlQT0oaUEucHJvdG90eXBlLndpdGhDb252ZXJ0ZXI9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBpQSh0aGlzLmZpcmVzdG9yZSx0LHRoaXMuX3F1ZXJ5KX0saUEpLG5BPShYaShyQSxKTj1lQSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHJBLnByb3RvdHlwZSwiaWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fcXVlcnkucGF0aC5sYXN0U2VnbWVudCgpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyQS5wcm90b3R5cGUsInBhdGgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fcXVlcnkucGF0aC5jYW5vbmljYWxTdHJpbmcoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkockEucHJvdG90eXBlLCJwYXJlbnQiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9wYXRoLnBvcExhc3QoKTtyZXR1cm4gdC5pc0VtcHR5KCk/bnVsbDpuZXcgdEEodGhpcy5maXJlc3RvcmUsbnVsbCxuZXcgQ20odCkpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHJBLnByb3RvdHlwZS53aXRoQ29udmVydGVyPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgckEodGhpcy5maXJlc3RvcmUsdCx0aGlzLl9wYXRoKX0sckEpO2Z1bmN0aW9uIHJBKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybihyPUpOLmNhbGwodGhpcyx0LGUsTmIobikpfHx0aGlzKS5maXJlc3RvcmU9dCxyLl9wYXRoPW4sci50eXBlPSJjb2xsZWN0aW9uIixyfWZ1bmN0aW9uIGlBKHQsZSxuKXt0aGlzLl9jb252ZXJ0ZXI9ZSx0aGlzLl9xdWVyeT1uLHRoaXMudHlwZT0icXVlcnkiLHRoaXMuZmlyZXN0b3JlPXR9ZnVuY3Rpb24gb0EodCxlLG4pe3RoaXMuX2NvbnZlcnRlcj1lLHRoaXMuX2tleT1uLHRoaXMudHlwZT0iZG9jdW1lbnQiLHRoaXMuZmlyZXN0b3JlPXR9ZnVuY3Rpb24gc0EodCxlKXt0aGlzLl9wZXJzaXN0ZW5jZUtleT0iKGxpdGUpIix0aGlzLl9zZXR0aW5ncz1uZXcgJE4oe30pLHRoaXMuX3NldHRpbmdzRnJvemVuPSExLHQgaW5zdGFuY2VvZiBPTj8odGhpcy5fZGF0YWJhc2VJZD10LHRoaXMuX2NyZWRlbnRpYWxzPW5ldyB4Tik6KHRoaXMuX2FwcD10LHRoaXMuX2RhdGFiYXNlSWQ9ZnVuY3Rpb24odCl7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuYXBwbHkodC5vcHRpb25zLFsicHJvamVjdElkIl0pKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCcicHJvamVjdElkIiBub3QgcHJvdmlkZWQgaW4gZmlyZWJhc2UuaW5pdGlhbGl6ZUFwcC4nKTtyZXR1cm4gbmV3IE9OKHQub3B0aW9ucy5wcm9qZWN0SWQpfSh0KSx0aGlzLl9jcmVkZW50aWFscz1uZXcgTE4oZSkpfWZ1bmN0aW9uIGFBKHQpe3ZhciBlO2lmKHZvaWQgMD09PXQuaG9zdCl7aWYodm9pZCAwIT09dC5zc2wpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkNhbid0IHByb3ZpZGUgc3NsIG9wdGlvbiBpZiBob3N0IG9wdGlvbiBpcyBub3Qgc2V0Iik7dGhpcy5ob3N0PSJmaXJlc3RvcmUuZ29vZ2xlYXBpcy5jb20iLHRoaXMuc3NsPSEwfWVsc2UgdGhpcy5ob3N0PXQuaG9zdCx0aGlzLnNzbD1udWxsPT09KGU9dC5zc2wpfHx2b2lkIDA9PT1lfHxlO2lmKHRoaXMuY3JlZGVudGlhbHM9dC5jcmVkZW50aWFscyx0aGlzLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXM9ISF0Lmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXMsdm9pZCAwPT09dC5jYWNoZVNpemVCeXRlcyl0aGlzLmNhY2hlU2l6ZUJ5dGVzPTQxOTQzMDQwO2Vsc2V7aWYoLTEhPT10LmNhY2hlU2l6ZUJ5dGVzJiZ0LmNhY2hlU2l6ZUJ5dGVzPDEwNDg1NzYpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsImNhY2hlU2l6ZUJ5dGVzIG11c3QgYmUgYXQgbGVhc3QgMTA0ODU3NiIpO3RoaXMuY2FjaGVTaXplQnl0ZXM9dC5jYWNoZVNpemVCeXRlc310aGlzLmV4cGVyaW1lbnRhbEZvcmNlTG9uZ1BvbGxpbmc9ISF0LmV4cGVyaW1lbnRhbEZvcmNlTG9uZ1BvbGxpbmcsdGhpcy5leHBlcmltZW50YWxBdXRvRGV0ZWN0TG9uZ1BvbGxpbmc9ISF0LmV4cGVyaW1lbnRhbEF1dG9EZXRlY3RMb25nUG9sbGluZyxITigiZXhwZXJpbWVudGFsRm9yY2VMb25nUG9sbGluZyIsdC5leHBlcmltZW50YWxGb3JjZUxvbmdQb2xsaW5nLCJleHBlcmltZW50YWxBdXRvRGV0ZWN0TG9uZ1BvbGxpbmciLHQuZXhwZXJpbWVudGFsQXV0b0RldGVjdExvbmdQb2xsaW5nKX1mdW5jdGlvbiB1QSh0LGUpe2Zvcih2YXIgbixyPVtdLGk9MjtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKXJbaS0yXT1hcmd1bWVudHNbaV07aWYodD1abyh0KSxLTigiY29sbGVjdGlvbiIsInBhdGgiLGUpLHQgaW5zdGFuY2VvZiBaTilyZXR1cm4gek4obj1hbS5mcm9tU3RyaW5nLmFwcGx5KGFtLG5vKFtlXSxyKSkpLG5ldyBuQSh0LG51bGwsbik7aWYoISh0IGluc3RhbmNlb2YgdEF8fHQgaW5zdGFuY2VvZiBuQSkpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkV4cGVjdGVkIGZpcnN0IGFyZ3VtZW50IHRvIGNvbGxlY3Rpb24oKSB0byBiZSBhIENvbGxlY3Rpb25SZWZlcmVuY2UsIGEgRG9jdW1lbnRSZWZlcmVuY2Ugb3IgRmlyZWJhc2VGaXJlc3RvcmUiKTtyZXR1cm4gek4obj1hbS5mcm9tU3RyaW5nLmFwcGx5KGFtLG5vKFt0LnBhdGhdLHIpKS5jaGlsZChhbS5mcm9tU3RyaW5nKGUpKSksbmV3IG5BKHQuZmlyZXN0b3JlLG51bGwsbil9ZnVuY3Rpb24gY0EodCxlKXtmb3IodmFyIG4scj1bXSxpPTI7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktMl09YXJndW1lbnRzW2ldO2lmKHQ9Wm8odCksS04oImRvYyIsInBhdGgiLGU9MT09PWFyZ3VtZW50cy5sZW5ndGg/enkudSgpOmUpLHQgaW5zdGFuY2VvZiBaTilyZXR1cm4gR04obj1hbS5mcm9tU3RyaW5nLmFwcGx5KGFtLG5vKFtlXSxyKSkpLG5ldyB0QSh0LG51bGwsbmV3IENtKG4pKTtpZighKHQgaW5zdGFuY2VvZiB0QXx8dCBpbnN0YW5jZW9mIG5BKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiRXhwZWN0ZWQgZmlyc3QgYXJndW1lbnQgdG8gY29sbGVjdGlvbigpIHRvIGJlIGEgQ29sbGVjdGlvblJlZmVyZW5jZSwgYSBEb2N1bWVudFJlZmVyZW5jZSBvciBGaXJlYmFzZUZpcmVzdG9yZSIpO3JldHVybiBHTihuPXQuX3BhdGguY2hpbGQoYW0uZnJvbVN0cmluZy5hcHBseShhbSxubyhbZV0scikpKSksbmV3IHRBKHQuZmlyZXN0b3JlLHQgaW5zdGFuY2VvZiBuQT90Ll9jb252ZXJ0ZXI6bnVsbCxuZXcgQ20obikpfWZ1bmN0aW9uIGhBKHQsZSl7cmV0dXJuIHQ9Wm8odCksZT1abyhlKSwodCBpbnN0YW5jZW9mIHRBfHx0IGluc3RhbmNlb2YgbkEpJiYoZSBpbnN0YW5jZW9mIHRBfHxlIGluc3RhbmNlb2YgbkEpJiZ0LmZpcmVzdG9yZT09PWUuZmlyZXN0b3JlJiZ0LnBhdGg9PT1lLnBhdGgmJnQuX2NvbnZlcnRlcj09PWUuX2NvbnZlcnRlcn1mdW5jdGlvbiBsQSh0LGUpe3JldHVybiB0PVpvKHQpLGU9Wm8oZSksdCBpbnN0YW5jZW9mIGVBJiZlIGluc3RhbmNlb2YgZUEmJnQuZmlyZXN0b3JlPT09ZS5maXJlc3RvcmUmJk1iKHQuX3F1ZXJ5LGUuX3F1ZXJ5KSYmdC5fY29udmVydGVyPT09ZS5fY29udmVydGVyfXZhciBmQT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHBBLnByb3RvdHlwZSwiaXNTaHV0dGluZ0Rvd24iLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kY30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxwQS5wcm90b3R5cGUuZW5xdWV1ZUFuZEZvcmdldD1mdW5jdGlvbih0KXt0aGlzLmVucXVldWUodCl9LHBBLnByb3RvdHlwZS5lbnF1ZXVlQW5kRm9yZ2V0RXZlbldoaWxlUmVzdHJpY3RlZD1mdW5jdGlvbih0KXt0aGlzLkVjKCksdGhpcy5UYyh0KX0scEEucHJvdG90eXBlLmVudGVyUmVzdHJpY3RlZE1vZGU9ZnVuY3Rpb24oKXt2YXIgdDt0aGlzLmRjfHwodGhpcy5kYz0hMCwodD1tUygpKSYmImZ1bmN0aW9uIj09dHlwZW9mIHQucmVtb3ZlRXZlbnRMaXN0ZW5lciYmdC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLmdjKSl9LHBBLnByb3RvdHlwZS5lbnF1ZXVlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLkVjKCksdGhpcy5kYz9uZXcgUHJvbWlzZShmdW5jdGlvbih0KXt9KTp0aGlzLlRjKHQpfSxwQS5wcm90b3R5cGUuZW5xdWV1ZVJldHJ5YWJsZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3RoaXMuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiBlLmZjLnB1c2godCksZS5JYygpfSl9LHBBLnByb3RvdHlwZS5JYz1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZigwPT09dGhpcy5mYy5sZW5ndGgpcmV0dXJuWzMsNV07dC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsMywsNF0pLFs0LHRoaXMuZmNbMF0oKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSx0aGlzLmZjLnNoaWZ0KCksdGhpcy5aaS5yZXNldCgpLFszLDRdO2Nhc2UgMzppZighYkkoZT10LnNlbnQoKSkpdGhyb3cgZTtyZXR1cm4gVnkoIkFzeW5jUXVldWUiLCJPcGVyYXRpb24gZmFpbGVkIHdpdGggcmV0cnlhYmxlIGVycm9yOiAiK2UpLFszLDRdO2Nhc2UgNDowPHRoaXMuZmMubGVuZ3RoJiZ0aGlzLlppLmppKGZ1bmN0aW9uKCl7cmV0dXJuIG4uSWMoKX0pLHQubGFiZWw9NTtjYXNlIDU6cmV0dXJuWzJdfX0pfSl9LHBBLnByb3RvdHlwZS5UYz1mdW5jdGlvbih0KXt2YXIgcj10aGlzLGU9dGhpcy5sYy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHIubWM9ITAsdCgpLmNhdGNoKGZ1bmN0aW9uKHQpe3Rocm93IHIuX2M9dCxyLm1jPSExLEJ5KCJJTlRFUk5BTCBVTkhBTkRMRUQgRVJST1I6ICIsKG49KGU9dCkubWVzc2FnZXx8IiIsbj1lLnN0YWNrP2Uuc3RhY2suaW5jbHVkZXMoZS5tZXNzYWdlKT9lLnN0YWNrOmUubWVzc2FnZSsiXG4iK2Uuc3RhY2s6bikpLHQ7dmFyIGUsbn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHIubWM9ITEsdH0pfSk7cmV0dXJuIHRoaXMubGM9ZX0scEEucHJvdG90eXBlLmVucXVldWVBZnRlckRlbGF5PWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO3RoaXMuRWMoKSwtMTx0aGlzLnljLmluZGV4T2YodCkmJihlPTApO249dEMuY3JlYXRlQW5kU2NoZWR1bGUodGhpcyx0LGUsbixmdW5jdGlvbih0KXtyZXR1cm4gci5BYyh0KX0pO3JldHVybiB0aGlzLndjLnB1c2gobiksbn0scEEucHJvdG90eXBlLkVjPWZ1bmN0aW9uKCl7dGhpcy5fYyYmSHkoKX0scEEucHJvdG90eXBlLnZlcmlmeU9wZXJhdGlvbkluUHJvZ3Jlc3M9ZnVuY3Rpb24oKXt9LHBBLnByb3RvdHlwZS5SYz1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LGU9dGhpcy5sY107Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6aWYoZSE9PXRoaXMubGMpcmV0dXJuWzMsMF07dC5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX0scEEucHJvdG90eXBlLmJjPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wLG49dGhpcy53YztlPG4ubGVuZ3RoO2UrKylpZihuW2VdLnRpbWVySWQ9PT10KXJldHVybiEwO3JldHVybiExfSxwQS5wcm90b3R5cGUudmM9ZnVuY3Rpb24ocil7dmFyIGk9dGhpcztyZXR1cm4gdGhpcy5SYygpLnRoZW4oZnVuY3Rpb24oKXtpLndjLnNvcnQoZnVuY3Rpb24odCxlKXtyZXR1cm4gdC50YXJnZXRUaW1lTXMtZS50YXJnZXRUaW1lTXN9KTtmb3IodmFyIHQ9MCxlPWkud2M7dDxlLmxlbmd0aDt0Kyspe3ZhciBuPWVbdF07aWYobi5za2lwRGVsYXkoKSwiYWxsIiE9PXImJm4udGltZXJJZD09PXIpYnJlYWt9cmV0dXJuIGkuUmMoKX0pfSxwQS5wcm90b3R5cGUuUGM9ZnVuY3Rpb24odCl7dGhpcy55Yy5wdXNoKHQpfSxwQS5wcm90b3R5cGUuQWM9ZnVuY3Rpb24odCl7dD10aGlzLndjLmluZGV4T2YodCk7dGhpcy53Yy5zcGxpY2UodCwxKX0scEEpO2Z1bmN0aW9uIHBBKCl7dmFyIGU9dGhpczt0aGlzLmxjPVByb21pc2UucmVzb2x2ZSgpLHRoaXMuZmM9W10sdGhpcy5kYz0hMSx0aGlzLndjPVtdLHRoaXMuX2M9bnVsbCx0aGlzLm1jPSExLHRoaXMueWM9W10sdGhpcy5aaT1uZXcgRVModGhpcywiYXN5bmNfcXVldWVfcmV0cnkiKSx0aGlzLmdjPWZ1bmN0aW9uKCl7dmFyIHQ9bVMoKTt0JiZWeSgiQXN5bmNRdWV1ZSIsIlZpc2liaWxpdHkgc3RhdGUgY2hhbmdlZCB0byAiK3QudmlzaWJpbGl0eVN0YXRlKSxlLlppLkdpKCl9O3ZhciB0PW1TKCk7dCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuYWRkRXZlbnRMaXN0ZW5lciYmdC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLmdjKX1mdW5jdGlvbiBkQShpKXtyZXR1cm4gZnVuY3Rpb24oKXtpZigib2JqZWN0Ij09dHlwZW9mIGkmJm51bGwhPT1pKWZvcih2YXIgdD1pLGU9MCxuPVsibmV4dCIsImVycm9yIiwiY29tcGxldGUiXTtlPG4ubGVuZ3RoO2UrKyl7dmFyIHI9bltlXTtpZihyIGluIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0W3JdKXJldHVybiAxfX0oKX12YXIgdkEsZ0E9KGJBLnByb3RvdHlwZS5vblByb2dyZXNzPWZ1bmN0aW9uKHQsZSxuKXt0aGlzLl9wcm9ncmVzc09ic2VydmVyPXtuZXh0OnQsZXJyb3I6ZSxjb21wbGV0ZTpufX0sYkEucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl90YXNrQ29tcGxldGlvblJlc29sdmVyLnByb21pc2UuY2F0Y2godCl9LGJBLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuX3Rhc2tDb21wbGV0aW9uUmVzb2x2ZXIucHJvbWlzZS50aGVuKHQsZSl9LGJBLnByb3RvdHlwZS5fY29tcGxldGVXaXRoPWZ1bmN0aW9uKHQpe3RoaXMuX3VwZGF0ZVByb2dyZXNzKHQpLHRoaXMuX3Byb2dyZXNzT2JzZXJ2ZXIuY29tcGxldGUmJnRoaXMuX3Byb2dyZXNzT2JzZXJ2ZXIuY29tcGxldGUoKSx0aGlzLl90YXNrQ29tcGxldGlvblJlc29sdmVyLnJlc29sdmUodCl9LGJBLnByb3RvdHlwZS5fZmFpbFdpdGg9ZnVuY3Rpb24odCl7dGhpcy5fbGFzdFByb2dyZXNzLnRhc2tTdGF0ZT0iRXJyb3IiLHRoaXMuX3Byb2dyZXNzT2JzZXJ2ZXIubmV4dCYmdGhpcy5fcHJvZ3Jlc3NPYnNlcnZlci5uZXh0KHRoaXMuX2xhc3RQcm9ncmVzcyksdGhpcy5fcHJvZ3Jlc3NPYnNlcnZlci5lcnJvciYmdGhpcy5fcHJvZ3Jlc3NPYnNlcnZlci5lcnJvcih0KSx0aGlzLl90YXNrQ29tcGxldGlvblJlc29sdmVyLnJlamVjdCh0KX0sYkEucHJvdG90eXBlLl91cGRhdGVQcm9ncmVzcz1mdW5jdGlvbih0KXt0aGlzLl9sYXN0UHJvZ3Jlc3M9dCx0aGlzLl9wcm9ncmVzc09ic2VydmVyLm5leHQmJnRoaXMuX3Byb2dyZXNzT2JzZXJ2ZXIubmV4dCh0KX0sYkEpLHlBPShYaShtQSx2QT1aTiksbUEucHJvdG90eXBlLl90ZXJtaW5hdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZmlyZXN0b3JlQ2xpZW50fHxfQSh0aGlzKSx0aGlzLl9maXJlc3RvcmVDbGllbnQudGVybWluYXRlKCl9LG1BKTtmdW5jdGlvbiBtQSh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49dkEuY2FsbCh0aGlzLHQsZSl8fHRoaXMpLl9xdWV1ZT1uZXcgZkEsbi5fcGVyc2lzdGVuY2VLZXk9Im5hbWUiaW4gdD90Lm5hbWU6IltERUZBVUxUXSIsbn1mdW5jdGlvbiBiQSgpe3RoaXMuX3Byb2dyZXNzT2JzZXJ2ZXI9e30sdGhpcy5fdGFza0NvbXBsZXRpb25SZXNvbHZlcj1uZXcgYUksdGhpcy5fbGFzdFByb2dyZXNzPXt0YXNrU3RhdGU6IlJ1bm5pbmciLHRvdGFsQnl0ZXM6MCx0b3RhbERvY3VtZW50czowLGJ5dGVzTG9hZGVkOjAsZG9jdW1lbnRzTG9hZGVkOjB9fWZ1bmN0aW9uIHdBKHQpe3JldHVybiB0Ll9maXJlc3RvcmVDbGllbnR8fF9BKHQpLHQuX2ZpcmVzdG9yZUNsaWVudC52ZXJpZnlOb3RUZXJtaW5hdGVkKCksdC5fZmlyZXN0b3JlQ2xpZW50fWZ1bmN0aW9uIF9BKHQpe3ZhciBlLG4scixpPXQuX2ZyZWV6ZVNldHRpbmdzKCksaT0oZT10Ll9kYXRhYmFzZUlkLG49KG51bGw9PT0ocj10Ll9hcHApfHx2b2lkIDA9PT1yP3ZvaWQgMDpyLm9wdGlvbnMuYXBwSWQpfHwiIixyPXQuX3BlcnNpc3RlbmNlS2V5LG5ldyBQTihlLG4scixpLmhvc3QsaS5zc2wsaS5leHBlcmltZW50YWxGb3JjZUxvbmdQb2xsaW5nLGkuZXhwZXJpbWVudGFsQXV0b0RldGVjdExvbmdQb2xsaW5nKSk7dC5fZmlyZXN0b3JlQ2xpZW50PW5ldyBwTih0Ll9jcmVkZW50aWFscyx0Ll9xdWV1ZSxpKX1mdW5jdGlvbiBJQShyLGksbyl7dmFyIHQ9dGhpcyxzPW5ldyBhSTtyZXR1cm4gci5hc3luY1F1ZXVlLmVucXVldWUoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdC50cnlzLnB1c2goWzAsMywsNF0pLFs0LGJOKHIsbyldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksWzQsd04ocixpKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxzLnJlc29sdmUoKSxbMyw0XTtjYXNlIDM6aWYoISgiRmlyZWJhc2VFcnJvciI9PT0oZT1uPXQuc2VudCgpKS5uYW1lP2UuY29kZT09PU15LkZBSUxFRF9QUkVDT05ESVRJT058fGUuY29kZT09PU15LlVOSU1QTEVNRU5URUQ6ISgidW5kZWZpbmVkIiE9dHlwZW9mIERPTUV4Y2VwdGlvbiYmZSBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbil8fDIyPT09ZS5jb2RlfHwyMD09PWUuY29kZXx8MTE9PT1lLmNvZGUpKXRocm93IG47cmV0dXJuIGNvbnNvbGUud2FybigiRXJyb3IgZW5hYmxpbmcgb2ZmbGluZSBwZXJzaXN0ZW5jZS4gRmFsbGluZyBiYWNrIHRvIHBlcnNpc3RlbmNlIGRpc2FibGVkOiAiK24pLHMucmVqZWN0KG4pLFszLDRdO2Nhc2UgNDpyZXR1cm5bMl19dmFyIGV9KX0pfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBzLnByb21pc2V9KX1mdW5jdGlvbiBUQSh0KXtpZih0Ll9pbml0aWFsaXplZHx8dC5fdGVybWluYXRlZCl0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwiRmlyZXN0b3JlIGhhcyBhbHJlYWR5IGJlZW4gc3RhcnRlZCBhbmQgcGVyc2lzdGVuY2UgY2FuIG5vIGxvbmdlciBiZSBlbmFibGVkLiBZb3UgY2FuIG9ubHkgZW5hYmxlIHBlcnNpc3RlbmNlIGJlZm9yZSBjYWxsaW5nIGFueSBvdGhlciBtZXRob2RzIG9uIGEgRmlyZXN0b3JlIG9iamVjdC4iKX12YXIgRUE9KExBLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pbnRlcm5hbFBhdGguaXNFcXVhbCh0Ll9pbnRlcm5hbFBhdGgpfSxMQSksU0E9KHhBLmZyb21CYXNlNjRTdHJpbmc9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBuZXcgeEEobG0uZnJvbUJhc2U2NFN0cmluZyh0KSl9Y2F0Y2godCl7dGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkZhaWxlZCB0byBjb25zdHJ1Y3QgZGF0YSBmcm9tIEJhc2U2NCBzdHJpbmc6ICIrdCl9fSx4QS5mcm9tVWludDhBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHhBKGxtLmZyb21VaW50OEFycmF5KHQpKX0seEEucHJvdG90eXBlLnRvQmFzZTY0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2J5dGVTdHJpbmcudG9CYXNlNjQoKX0seEEucHJvdG90eXBlLnRvVWludDhBcnJheT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ieXRlU3RyaW5nLnRvVWludDhBcnJheSgpfSx4QS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iQnl0ZXMoYmFzZTY0OiAiK3RoaXMudG9CYXNlNjQoKSsiKSJ9LHhBLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9ieXRlU3RyaW5nLmlzRXF1YWwodC5fYnl0ZVN0cmluZyl9LHhBKSxDQT1mdW5jdGlvbih0KXt0aGlzLl9tZXRob2ROYW1lPXR9LE5BPShPYmplY3QuZGVmaW5lUHJvcGVydHkoREEucHJvdG90eXBlLCJsYXRpdHVkZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9sYXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KERBLnByb3RvdHlwZSwibG9uZ2l0dWRlIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2xvbmd9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksREEucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2xhdD09PXQuX2xhdCYmdGhpcy5fbG9uZz09PXQuX2xvbmd9LERBLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bGF0aXR1ZGU6dGhpcy5fbGF0LGxvbmdpdHVkZTp0aGlzLl9sb25nfX0sREEucHJvdG90eXBlLl9jb21wYXJlVG89ZnVuY3Rpb24odCl7cmV0dXJuIFl5KHRoaXMuX2xhdCx0Ll9sYXQpfHxZeSh0aGlzLl9sb25nLHQuX2xvbmcpfSxEQSksQUE9L15fXy4qX18kLyxrQT0oT0EucHJvdG90eXBlLnRvTXV0YXRpb249ZnVuY3Rpb24odCxlKXtyZXR1cm4gbnVsbCE9PXRoaXMuZmllbGRNYXNrP25ldyBtdyh0LHRoaXMuZGF0YSx0aGlzLmZpZWxkTWFzayxlLHRoaXMuZmllbGRUcmFuc2Zvcm1zKTpuZXcgeXcodCx0aGlzLmRhdGEsZSx0aGlzLmZpZWxkVHJhbnNmb3Jtcyl9LE9BKSxSQT0oUEEucHJvdG90eXBlLnRvTXV0YXRpb249ZnVuY3Rpb24odCxlKXtyZXR1cm4gbmV3IG13KHQsdGhpcy5kYXRhLHRoaXMuZmllbGRNYXNrLGUsdGhpcy5maWVsZFRyYW5zZm9ybXMpfSxQQSk7ZnVuY3Rpb24gUEEodCxlLG4pe3RoaXMuZGF0YT10LHRoaXMuZmllbGRNYXNrPWUsdGhpcy5maWVsZFRyYW5zZm9ybXM9bn1mdW5jdGlvbiBPQSh0LGUsbil7dGhpcy5kYXRhPXQsdGhpcy5maWVsZE1hc2s9ZSx0aGlzLmZpZWxkVHJhbnNmb3Jtcz1ufWZ1bmN0aW9uIERBKHQsZSl7aWYoIWlzRmluaXRlKHQpfHx0PC05MHx8OTA8dCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiTGF0aXR1ZGUgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIC05MCBhbmQgOTAsIGJ1dCB3YXM6ICIrdCk7aWYoIWlzRmluaXRlKGUpfHxlPC0xODB8fDE4MDxlKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJMb25naXR1ZGUgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIC0xODAgYW5kIDE4MCwgYnV0IHdhczogIitlKTt0aGlzLl9sYXQ9dCx0aGlzLl9sb25nPWV9ZnVuY3Rpb24geEEodCl7dGhpcy5fYnl0ZVN0cmluZz10fWZ1bmN0aW9uIExBKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2Zvcih2YXIgbj0wO248dC5sZW5ndGg7KytuKWlmKDA9PT10W25dLmxlbmd0aCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBmaWVsZCBuYW1lIGF0IGFyZ3VtZW50ICQoaSArIDEpLiBGaWVsZCBuYW1lcyBtdXN0IG5vdCBiZSBlbXB0eS4iKTt0aGlzLl9pbnRlcm5hbFBhdGg9bmV3IGNtKHQpfWZ1bmN0aW9uIE1BKHQpe3N3aXRjaCh0KXtjYXNlIDA6Y2FzZSAyOmNhc2UgMTpyZXR1cm4gMTtjYXNlIDM6Y2FzZSA0OnJldHVybjtkZWZhdWx0OnRocm93IEh5KCl9fXZhciBGQT0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHFBLnByb3RvdHlwZSwicGF0aCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNldHRpbmdzLnBhdGh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHFBLnByb3RvdHlwZSwiU2MiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zZXR0aW5ncy5TY30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxxQS5wcm90b3R5cGUuRGM9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBxQShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdGhpcy5zZXR0aW5ncyksdCksdGhpcy5kYXRhYmFzZUlkLHRoaXMuUix0aGlzLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXMsdGhpcy5maWVsZFRyYW5zZm9ybXMsdGhpcy5maWVsZE1hc2spfSxxQS5wcm90b3R5cGUuQ2M9ZnVuY3Rpb24odCl7dmFyIGU9bnVsbD09PShlPXRoaXMucGF0aCl8fHZvaWQgMD09PWU/dm9pZCAwOmUuY2hpbGQodCksZT10aGlzLkRjKHtwYXRoOmUsTmM6ITF9KTtyZXR1cm4gZS54Yyh0KSxlfSxxQS5wcm90b3R5cGUuRmM9ZnVuY3Rpb24odCl7dmFyIGUsdD1udWxsPT09KGU9dGhpcy5wYXRoKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5jaGlsZCh0KSx0PXRoaXMuRGMoe3BhdGg6dCxOYzohMX0pO3JldHVybiB0LlZjKCksdH0scUEucHJvdG90eXBlLmtjPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLkRjKHtwYXRoOnZvaWQgMCxOYzohMH0pfSxxQS5wcm90b3R5cGUuT2M9ZnVuY3Rpb24odCl7cmV0dXJuIHZrKHQsdGhpcy5zZXR0aW5ncy5tZXRob2ROYW1lLHRoaXMuc2V0dGluZ3MuJGN8fCExLHRoaXMucGF0aCx0aGlzLnNldHRpbmdzLk1jKX0scUEucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDAhPT10aGlzLmZpZWxkTWFzay5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiBlLmlzUHJlZml4T2YodCl9KXx8dm9pZCAwIT09dGhpcy5maWVsZFRyYW5zZm9ybXMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gZS5pc1ByZWZpeE9mKHQuZmllbGQpfSl9LHFBLnByb3RvdHlwZS5WYz1mdW5jdGlvbigpe2lmKHRoaXMucGF0aClmb3IodmFyIHQ9MDt0PHRoaXMucGF0aC5sZW5ndGg7dCsrKXRoaXMueGModGhpcy5wYXRoLmdldCh0KSl9LHFBLnByb3RvdHlwZS54Yz1mdW5jdGlvbih0KXtpZigwPT09dC5sZW5ndGgpdGhyb3cgdGhpcy5PYygiRG9jdW1lbnQgZmllbGRzIG11c3Qgbm90IGJlIGVtcHR5Iik7aWYoTUEodGhpcy5TYykmJkFBLnRlc3QodCkpdGhyb3cgdGhpcy5PYygnRG9jdW1lbnQgZmllbGRzIGNhbm5vdCBiZWdpbiBhbmQgZW5kIHdpdGggIl9fIicpfSxxQSksVUE9KGpBLnByb3RvdHlwZS5MYz1mdW5jdGlvbih0LGUsbixyKXtyZXR1cm4gdm9pZCAwPT09ciYmKHI9ITEpLG5ldyBGQSh7U2M6dCxtZXRob2ROYW1lOmUsTWM6bixwYXRoOmNtLmVtcHR5UGF0aCgpLE5jOiExLCRjOnJ9LHRoaXMuZGF0YWJhc2VJZCx0aGlzLlIsdGhpcy5pZ25vcmVVbmRlZmluZWRQcm9wZXJ0aWVzKX0sakEpO2Z1bmN0aW9uIGpBKHQsZSxuKXt0aGlzLmRhdGFiYXNlSWQ9dCx0aGlzLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXM9ZSx0aGlzLlI9bnx8YlModCl9ZnVuY3Rpb24gcUEodCxlLG4scixpLG8pe3RoaXMuc2V0dGluZ3M9dCx0aGlzLmRhdGFiYXNlSWQ9ZSx0aGlzLlI9bix0aGlzLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXM9cix2b2lkIDA9PT1pJiZ0aGlzLlZjKCksdGhpcy5maWVsZFRyYW5zZm9ybXM9aXx8W10sdGhpcy5maWVsZE1hc2s9b3x8W119ZnVuY3Rpb24gVkEodCl7dmFyIGU9dC5fZnJlZXplU2V0dGluZ3MoKSxuPWJTKHQuX2RhdGFiYXNlSWQpO3JldHVybiBuZXcgVUEodC5fZGF0YWJhc2VJZCwhIWUuaWdub3JlVW5kZWZpbmVkUHJvcGVydGllcyxuKX1mdW5jdGlvbiBCQSh0LGUsbixyLGksbyl7dm9pZCAwPT09byYmKG89e30pO3ZhciBzPXQuTGMoby5tZXJnZXx8by5tZXJnZUZpZWxkcz8yOjAsZSxuLGkpO2xrKCJEYXRhIG11c3QgYmUgYW4gb2JqZWN0LCBidXQgaXQgd2FzOiIscyxyKTt2YXIgYSx1LHI9Y2socixzKTtpZihvLm1lcmdlKWE9bmV3IGhtKHMuZmllbGRNYXNrKSx1PXMuZmllbGRUcmFuc2Zvcm1zO2Vsc2UgaWYoby5tZXJnZUZpZWxkcyl7Zm9yKHZhciBjPVtdLGg9MCxsPW8ubWVyZ2VGaWVsZHM7aDxsLmxlbmd0aDtoKyspe3ZhciBmPWZrKGUsbFtoXSxuKTtpZighcy5jb250YWlucyhmKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiRmllbGQgJyIrZisiJyBpcyBzcGVjaWZpZWQgaW4geW91ciBmaWVsZCBtYXNrIGJ1dCBtaXNzaW5nIGZyb20geW91ciBpbnB1dCBkYXRhLiIpO2drKGMsZil8fGMucHVzaChmKX1hPW5ldyBobShjKSx1PXMuZmllbGRUcmFuc2Zvcm1zLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gYS5jb3ZlcnModC5maWVsZCl9KX1lbHNlIGE9bnVsbCx1PXMuZmllbGRUcmFuc2Zvcm1zO3JldHVybiBuZXcga0EobmV3IHFtKHIpLGEsdSl9dmFyIEtBLFdBPShYaShIQSxLQT1DQSksSEEucHJvdG90eXBlLl90b0ZpZWxkVHJhbnNmb3JtPWZ1bmN0aW9uKHQpe2lmKDIhPT10LlNjKXRocm93IDE9PT10LlNjP3QuT2ModGhpcy5fbWV0aG9kTmFtZSsiKCkgY2FuIG9ubHkgYXBwZWFyIGF0IHRoZSB0b3AgbGV2ZWwgb2YgeW91ciB1cGRhdGUgZGF0YSIpOnQuT2ModGhpcy5fbWV0aG9kTmFtZSsiKCkgY2Fubm90IGJlIHVzZWQgd2l0aCBzZXQoKSB1bmxlc3MgeW91IHBhc3Mge21lcmdlOnRydWV9Iik7cmV0dXJuIHQuZmllbGRNYXNrLnB1c2godC5wYXRoKSxudWxsfSxIQS5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIEhBfSxIQSk7ZnVuY3Rpb24gSEEoKXtyZXR1cm4gbnVsbCE9PUtBJiZLQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gR0EodCxlLG4pe3JldHVybiBuZXcgRkEoe1NjOjMsTWM6ZS5zZXR0aW5ncy5NYyxtZXRob2ROYW1lOnQuX21ldGhvZE5hbWUsTmM6bn0sZS5kYXRhYmFzZUlkLGUuUixlLmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXMpfXZhciB6QSxRQSxZQSxYQSxKQT0oWGkoaWssWEE9Q0EpLGlrLnByb3RvdHlwZS5fdG9GaWVsZFRyYW5zZm9ybT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHV3KHQucGF0aCxuZXcgemIpfSxpay5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIGlrfSxpayksJEE9KFhpKHJrLFlBPUNBKSxyay5wcm90b3R5cGUuX3RvRmllbGRUcmFuc2Zvcm09ZnVuY3Rpb24odCl7dmFyIGU9R0EodGhpcyx0LCEwKSxuPXRoaXMuQmMubWFwKGZ1bmN0aW9uKHQpe3JldHVybiB1ayh0LGUpfSksbj1uZXcgUWIobik7cmV0dXJuIG5ldyB1dyh0LnBhdGgsbil9LHJrLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzPT09dH0scmspLFpBPShYaShuayxRQT1DQSksbmsucHJvdG90eXBlLl90b0ZpZWxkVHJhbnNmb3JtPWZ1bmN0aW9uKHQpe3ZhciBlPUdBKHRoaXMsdCwhMCksbj10aGlzLkJjLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdWsodCxlKX0pLG49bmV3IFpiKG4pO3JldHVybiBuZXcgdXcodC5wYXRoLG4pfSxuay5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcz09PXR9LG5rKSx0az0oWGkoZWssekE9Q0EpLGVrLnByb3RvdHlwZS5fdG9GaWVsZFRyYW5zZm9ybT1mdW5jdGlvbih0KXt2YXIgZT1uZXcgcncodC5SLEtiKHQuUix0aGlzLnFjKSk7cmV0dXJuIG5ldyB1dyh0LnBhdGgsZSl9LGVrLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzPT09dH0sZWspO2Z1bmN0aW9uIGVrKHQsZSl7dmFyIG49dGhpcztyZXR1cm4obj16QS5jYWxsKHRoaXMsdCl8fHRoaXMpLnFjPWUsbn1mdW5jdGlvbiBuayh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49UUEuY2FsbCh0aGlzLHQpfHx0aGlzKS5CYz1lLG59ZnVuY3Rpb24gcmsodCxlKXt2YXIgbj10aGlzO3JldHVybihuPVlBLmNhbGwodGhpcyx0KXx8dGhpcykuQmM9ZSxufWZ1bmN0aW9uIGlrKCl7cmV0dXJuIG51bGwhPT1YQSYmWEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfHx0aGlzfWZ1bmN0aW9uIG9rKHQscixpLGUpe3ZhciBvPXQuTGMoMSxyLGkpO2xrKCJEYXRhIG11c3QgYmUgYW4gb2JqZWN0LCBidXQgaXQgd2FzOiIsbyxlKTt2YXIgcz1bXSxhPXFtLmVtcHR5KCk7cm0oZSxmdW5jdGlvbih0LGUpe3ZhciBuPWRrKHIsdCxpKTtlPVpvKGUpO3Q9by5GYyhuKTtlIGluc3RhbmNlb2YgV0E/cy5wdXNoKG4pOm51bGwhPSh0PXVrKGUsdCkpJiYocy5wdXNoKG4pLGEuc2V0KG4sdCkpfSk7ZT1uZXcgaG0ocyk7cmV0dXJuIG5ldyBSQShhLGUsby5maWVsZFRyYW5zZm9ybXMpfWZ1bmN0aW9uIHNrKHQsZSxuLHIsaSxvKXt2YXIgcz10LkxjKDEsZSxuKSxhPVtmayhlLHIsbildLHU9W2ldO2lmKG8ubGVuZ3RoJTIhPTApdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkZ1bmN0aW9uICIrZSsiKCkgbmVlZHMgdG8gYmUgY2FsbGVkIHdpdGggYW4gZXZlbiBudW1iZXIgb2YgYXJndW1lbnRzIHRoYXQgYWx0ZXJuYXRlIGJldHdlZW4gZmllbGQgbmFtZXMgYW5kIHZhbHVlcy4iKTtmb3IodmFyIGM9MDtjPG8ubGVuZ3RoO2MrPTIpYS5wdXNoKGZrKGUsb1tjXSkpLHUucHVzaChvW2MrMV0pO2Zvcih2YXIgaCxsLGYscD1bXSxkPXFtLmVtcHR5KCksdj1hLmxlbmd0aC0xOzA8PXY7LS12KWdrKHAsYVt2XSl8fChoPWFbdl0sbD1abyhsPXVbdl0pLGY9cy5GYyhoKSxsIGluc3RhbmNlb2YgV0E/cC5wdXNoKGgpOm51bGwhPShmPXVrKGwsZikpJiYocC5wdXNoKGgpLGQuc2V0KGgsZikpKTtpPW5ldyBobShwKTtyZXR1cm4gbmV3IFJBKGQsaSxzLmZpZWxkVHJhbnNmb3Jtcyl9ZnVuY3Rpb24gYWsodCxlLG4scil7cmV0dXJuIHZvaWQgMD09PXImJihyPSExKSx1ayhuLHQuTGMocj80OjMsZSkpfWZ1bmN0aW9uIHVrKHMsdCl7aWYoaGsocz1abyhzKSkpcmV0dXJuIGxrKCJVbnN1cHBvcnRlZCBmaWVsZCB2YWx1ZToiLHQscyksY2socyx0KTtpZihzIGluc3RhbmNlb2YgQ0EpcmV0dXJuIGZ1bmN0aW9uKHQsZSl7aWYoIU1BKGUuU2MpKXRocm93IGUuT2ModC5fbWV0aG9kTmFtZSsiKCkgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHVwZGF0ZSgpIGFuZCBzZXQoKSIpO2lmKCFlLnBhdGgpdGhyb3cgZS5PYyh0Ll9tZXRob2ROYW1lKyIoKSBpcyBub3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbnNpZGUgYXJyYXlzIik7dD10Ll90b0ZpZWxkVHJhbnNmb3JtKGUpO3QmJmUuZmllbGRUcmFuc2Zvcm1zLnB1c2godCl9KHMsdCksbnVsbDtpZih2b2lkIDA9PT1zJiZ0Lmlnbm9yZVVuZGVmaW5lZFByb3BlcnRpZXMpcmV0dXJuIG51bGw7aWYodC5wYXRoJiZ0LmZpZWxkTWFzay5wdXNoKHQucGF0aCkscyBpbnN0YW5jZW9mIEFycmF5KXtpZih0LnNldHRpbmdzLk5jJiY0IT09dC5TYyl0aHJvdyB0Lk9jKCJOZXN0ZWQgYXJyYXlzIGFyZSBub3Qgc3VwcG9ydGVkIik7cmV0dXJuIGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTAscj0wLGk9cztyPGkubGVuZ3RoO3IrKyl7dmFyIG89dWsoaVtyXSx0LmtjKG4pKTtudWxsPT1vJiYobz17bnVsbFZhbHVlOiJOVUxMX1ZBTFVFIn0pLGUucHVzaChvKSxuKyt9cmV0dXJue2FycmF5VmFsdWU6e3ZhbHVlczplfX19KHQpfXJldHVybiBmdW5jdGlvbih0LGUpe2lmKG51bGw9PT0odD1abyh0KSkpcmV0dXJue251bGxWYWx1ZToiTlVMTF9WQUxVRSJ9O2lmKCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gS2IoZS5SLHQpO2lmKCJib29sZWFuIj09dHlwZW9mIHQpcmV0dXJue2Jvb2xlYW5WYWx1ZTp0fTtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJue3N0cmluZ1ZhbHVlOnR9O2lmKHQgaW5zdGFuY2VvZiBEYXRlKXt2YXIgbj0keS5mcm9tRGF0ZSh0KTtyZXR1cm57dGltZXN0YW1wVmFsdWU6cF8oZS5SLG4pfX1pZih0IGluc3RhbmNlb2YgJHkpcmV0dXJuIG49bmV3ICR5KHQuc2Vjb25kcywxZTMqTWF0aC5mbG9vcih0Lm5hbm9zZWNvbmRzLzFlMykpLHt0aW1lc3RhbXBWYWx1ZTpwXyhlLlIsbil9O2lmKHQgaW5zdGFuY2VvZiBOQSlyZXR1cm57Z2VvUG9pbnRWYWx1ZTp7bGF0aXR1ZGU6dC5sYXRpdHVkZSxsb25naXR1ZGU6dC5sb25naXR1ZGV9fTtpZih0IGluc3RhbmNlb2YgU0EpcmV0dXJue2J5dGVzVmFsdWU6ZF8oZS5SLHQuX2J5dGVTdHJpbmcpfTtpZih0IGluc3RhbmNlb2YgdEEpe3ZhciBuPWUuZGF0YWJhc2VJZCxyPXQuZmlyZXN0b3JlLl9kYXRhYmFzZUlkO2lmKCFyLmlzRXF1YWwobikpdGhyb3cgZS5PYygiRG9jdW1lbnQgcmVmZXJlbmNlIGlzIGZvciBkYXRhYmFzZSAiK3IucHJvamVjdElkKyIvIityLmRhdGFiYXNlKyIgYnV0IHNob3VsZCBiZSBmb3IgZGF0YWJhc2UgIituLnByb2plY3RJZCsiLyIrbi5kYXRhYmFzZSk7cmV0dXJue3JlZmVyZW5jZVZhbHVlOmdfKHQuZmlyZXN0b3JlLl9kYXRhYmFzZUlkfHxlLmRhdGFiYXNlSWQsdC5fa2V5LnBhdGgpfX10aHJvdyBlLk9jKCJVbnN1cHBvcnRlZCBmaWVsZCB2YWx1ZTogIitRTih0KSl9KHMsdCl9ZnVuY3Rpb24gY2sodCxuKXt2YXIgcj17fTtyZXR1cm4gaW0odCk/bi5wYXRoJiYwPG4ucGF0aC5sZW5ndGgmJm4uZmllbGRNYXNrLnB1c2gobi5wYXRoKTpybSh0LGZ1bmN0aW9uKHQsZSl7ZT11ayhlLG4uQ2ModCkpO251bGwhPWUmJihyW3RdPWUpfSkse21hcFZhbHVlOntmaWVsZHM6cn19fWZ1bmN0aW9uIGhrKHQpe3JldHVybiEoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dHx8dCBpbnN0YW5jZW9mIEFycmF5fHx0IGluc3RhbmNlb2YgRGF0ZXx8dCBpbnN0YW5jZW9mICR5fHx0IGluc3RhbmNlb2YgTkF8fHQgaW5zdGFuY2VvZiBTQXx8dCBpbnN0YW5jZW9mIHRBfHx0IGluc3RhbmNlb2YgQ0EpfWZ1bmN0aW9uIGxrKHQsZSxuKXtpZighaGsobil8fCgib2JqZWN0IiE9dHlwZW9mKHI9bil8fG51bGw9PT1yfHxPYmplY3QuZ2V0UHJvdG90eXBlT2YocikhPT1PYmplY3QucHJvdG90eXBlJiZudWxsIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKHIpKSl7bj1RTihuKTt0aHJvdyJhbiBvYmplY3QiPT09bj9lLk9jKHQrIiBhIGN1c3RvbSBvYmplY3QiKTplLk9jKHQrIiAiK24pfXZhciByfWZ1bmN0aW9uIGZrKHQsZSxuKXtpZigoZT1abyhlKSlpbnN0YW5jZW9mIEVBKXJldHVybiBlLl9pbnRlcm5hbFBhdGg7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBkayh0LGUpO3Rocm93IHZrKCJGaWVsZCBwYXRoIGFyZ3VtZW50cyBtdXN0IGJlIG9mIHR5cGUgc3RyaW5nIG9yIEZpZWxkUGF0aC4iLHQsITEsdm9pZCAwLG4pfXZhciBwaz1uZXcgUmVnRXhwKCJbflxcKi9cXFtcXF1dIik7ZnVuY3Rpb24gZGsoZSxuLHIpe2lmKDA8PW4uc2VhcmNoKHBrKSl0aHJvdyB2aygiSW52YWxpZCBmaWVsZCBwYXRoICgiK24rIikuIFBhdGhzIG11c3Qgbm90IGNvbnRhaW4gJ34nLCAnKicsICcvJywgJ1snLCBvciAnXSciLGUsITEsdm9pZCAwLHIpO3RyeXtyZXR1cm4obmV3KEVBLmJpbmQuYXBwbHkoRUEsbm8oW3ZvaWQgMF0sbi5zcGxpdCgiLiIpKSkpKS5faW50ZXJuYWxQYXRofWNhdGNoKHQpe3Rocm93IHZrKCJJbnZhbGlkIGZpZWxkIHBhdGggKCIrbisiKS4gUGF0aHMgbXVzdCBub3QgYmUgZW1wdHksIGJlZ2luIHdpdGggJy4nLCBlbmQgd2l0aCAnLicsIG9yIGNvbnRhaW4gJy4uJyIsZSwhMSx2b2lkIDAscil9fWZ1bmN0aW9uIHZrKHQsZSxuLHIsaSl7dmFyIG89ciYmIXIuaXNFbXB0eSgpLHM9dm9pZCAwIT09aSxlPSJGdW5jdGlvbiAiK2UrIigpIGNhbGxlZCB3aXRoIGludmFsaWQgZGF0YSI7biYmKGUrPSIgKHZpYSBgdG9GaXJlc3RvcmUoKWApIik7bj0iIjtyZXR1cm4ob3x8cykmJihuKz0iIChmb3VuZCIsbyYmKG4rPSIgaW4gZmllbGQgIityKSxzJiYobis9IiBpbiBkb2N1bWVudCAiK2kpLG4rPSIpIiksbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsKGUrPSIuICIpK3Qrbil9ZnVuY3Rpb24gZ2sodCxlKXtyZXR1cm4gdC5zb21lKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlzRXF1YWwoZSl9KX12YXIgeWssbWs9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShfay5wcm90b3R5cGUsImlkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2tleS5wYXRoLmxhc3RTZWdtZW50KCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KF9rLnByb3RvdHlwZSwicmVmIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0QSh0aGlzLl9maXJlc3RvcmUsdGhpcy5fY29udmVydGVyLHRoaXMuX2tleSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksX2sucHJvdG90eXBlLmV4aXN0cz1mdW5jdGlvbigpe3JldHVybiBudWxsIT09dGhpcy5fZG9jdW1lbnR9LF9rLnByb3RvdHlwZS5kYXRhPWZ1bmN0aW9uKCl7aWYodGhpcy5fZG9jdW1lbnQpe2lmKHRoaXMuX2NvbnZlcnRlcil7dmFyIHQ9bmV3IGJrKHRoaXMuX2ZpcmVzdG9yZSx0aGlzLl91c2VyRGF0YVdyaXRlcix0aGlzLl9rZXksdGhpcy5fZG9jdW1lbnQsbnVsbCk7cmV0dXJuIHRoaXMuX2NvbnZlcnRlci5mcm9tRmlyZXN0b3JlKHQpfXJldHVybiB0aGlzLl91c2VyRGF0YVdyaXRlci5jb252ZXJ0VmFsdWUodGhpcy5fZG9jdW1lbnQuZGF0YS50b1Byb3RvKCkpfX0sX2sucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXtpZih0aGlzLl9kb2N1bWVudCl7dD10aGlzLl9kb2N1bWVudC5kYXRhLmZpZWxkKElrKCJEb2N1bWVudFNuYXBzaG90LmdldCIsdCkpO2lmKG51bGwhPT10KXJldHVybiB0aGlzLl91c2VyRGF0YVdyaXRlci5jb252ZXJ0VmFsdWUodCl9fSxfayksYms9KFhpKHdrLHlrPW1rKSx3ay5wcm90b3R5cGUuZGF0YT1mdW5jdGlvbigpe3JldHVybiB5ay5wcm90b3R5cGUuZGF0YS5jYWxsKHRoaXMpfSx3ayk7ZnVuY3Rpb24gd2soKXtyZXR1cm4gbnVsbCE9PXlrJiZ5ay5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gX2sodCxlLG4scixpKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl91c2VyRGF0YVdyaXRlcj1lLHRoaXMuX2tleT1uLHRoaXMuX2RvY3VtZW50PXIsdGhpcy5fY29udmVydGVyPWl9ZnVuY3Rpb24gSWsodCxlKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/ZGsodCxlKTooZSBpbnN0YW5jZW9mIEVBP2U6ZS5fZGVsZWdhdGUpLl9pbnRlcm5hbFBhdGh9dmFyIFRrLEVrLFNrPShPay5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5oYXNQZW5kaW5nV3JpdGVzPT09dC5oYXNQZW5kaW5nV3JpdGVzJiZ0aGlzLmZyb21DYWNoZT09PXQuZnJvbUNhY2hlfSxPayksQ2s9KFhpKFBrLEVrPW1rKSxQay5wcm90b3R5cGUuZXhpc3RzPWZ1bmN0aW9uKCl7cmV0dXJuIEVrLnByb3RvdHlwZS5leGlzdHMuY2FsbCh0aGlzKX0sUGsucHJvdG90eXBlLmRhdGE9ZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dCYmKHQ9e30pLHRoaXMuX2RvY3VtZW50KXtpZih0aGlzLl9jb252ZXJ0ZXIpe3ZhciBlPW5ldyBOayh0aGlzLl9maXJlc3RvcmUsdGhpcy5fdXNlckRhdGFXcml0ZXIsdGhpcy5fa2V5LHRoaXMuX2RvY3VtZW50LHRoaXMubWV0YWRhdGEsbnVsbCk7cmV0dXJuIHRoaXMuX2NvbnZlcnRlci5mcm9tRmlyZXN0b3JlKGUsdCl9cmV0dXJuIHRoaXMuX3VzZXJEYXRhV3JpdGVyLmNvbnZlcnRWYWx1ZSh0aGlzLl9kb2N1bWVudC5kYXRhLnRvUHJvdG8oKSx0LnNlcnZlclRpbWVzdGFtcHMpfX0sUGsucHJvdG90eXBlLmdldD1mdW5jdGlvbih0LGUpe2lmKHZvaWQgMD09PWUmJihlPXt9KSx0aGlzLl9kb2N1bWVudCl7dD10aGlzLl9kb2N1bWVudC5kYXRhLmZpZWxkKElrKCJEb2N1bWVudFNuYXBzaG90LmdldCIsdCkpO2lmKG51bGwhPT10KXJldHVybiB0aGlzLl91c2VyRGF0YVdyaXRlci5jb252ZXJ0VmFsdWUodCxlLnNlcnZlclRpbWVzdGFtcHMpfX0sUGspLE5rPShYaShSayxUaz1DayksUmsucHJvdG90eXBlLmRhdGE9ZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMD09PXQmJih0PXt9KSxUay5wcm90b3R5cGUuZGF0YS5jYWxsKHRoaXMsdCl9LFJrKSxBaz0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGtrLnByb3RvdHlwZSwiZG9jcyIse2dldDpmdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybiB0aGlzLmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIGUucHVzaCh0KX0pLGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGtrLnByb3RvdHlwZSwic2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9zbmFwc2hvdC5kb2NzLnNpemV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGtrLnByb3RvdHlwZSwiZW1wdHkiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gMD09PXRoaXMuc2l6ZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxray5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihlLG4pe3ZhciByPXRoaXM7dGhpcy5fc25hcHNob3QuZG9jcy5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UuY2FsbChuLG5ldyBOayhyLl9maXJlc3RvcmUsci5fdXNlckRhdGFXcml0ZXIsdC5rZXksdCxuZXcgU2soci5fc25hcHNob3QubXV0YXRlZEtleXMuaGFzKHQua2V5KSxyLl9zbmFwc2hvdC5mcm9tQ2FjaGUpLHIucXVlcnkuX2NvbnZlcnRlcikpfSl9LGtrLnByb3RvdHlwZS5kb2NDaGFuZ2VzPWZ1bmN0aW9uKHQpe3Q9ISEodD12b2lkIDA9PT10P3t9OnQpLmluY2x1ZGVNZXRhZGF0YUNoYW5nZXM7aWYodCYmdGhpcy5fc25hcHNob3QuZXhjbHVkZXNNZXRhZGF0YUNoYW5nZXMpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIlRvIGluY2x1ZGUgbWV0YWRhdGEgY2hhbmdlcyB3aXRoIHlvdXIgZG9jdW1lbnQgY2hhbmdlcywgeW91IG11c3QgYWxzbyBwYXNzIHsgaW5jbHVkZU1ldGFkYXRhQ2hhbmdlczp0cnVlIH0gdG8gb25TbmFwc2hvdCgpLiIpO3JldHVybiB0aGlzLl9jYWNoZWRDaGFuZ2VzJiZ0aGlzLl9jYWNoZWRDaGFuZ2VzSW5jbHVkZU1ldGFkYXRhQ2hhbmdlcz09PXR8fCh0aGlzLl9jYWNoZWRDaGFuZ2VzPWZ1bmN0aW9uKGksZSl7aWYoaS5fc25hcHNob3Qub2xkRG9jcy5pc0VtcHR5KCkpe3ZhciBuPTA7cmV0dXJuIGkuX3NuYXBzaG90LmRvY0NoYW5nZXMubWFwKGZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBOayhpLl9maXJlc3RvcmUsaS5fdXNlckRhdGFXcml0ZXIsdC5kb2Mua2V5LHQuZG9jLG5ldyBTayhpLl9zbmFwc2hvdC5tdXRhdGVkS2V5cy5oYXModC5kb2Mua2V5KSxpLl9zbmFwc2hvdC5mcm9tQ2FjaGUpLGkucXVlcnkuX2NvbnZlcnRlcik7cmV0dXJuIHQuZG9jLHt0eXBlOiJhZGRlZCIsZG9jOmUsb2xkSW5kZXg6LTEsbmV3SW5kZXg6bisrfX0pfXZhciBvPWkuX3NuYXBzaG90Lm9sZERvY3M7cmV0dXJuIGkuX3NuYXBzaG90LmRvY0NoYW5nZXMuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiBlfHwzIT09dC50eXBlfSkubWFwKGZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBOayhpLl9maXJlc3RvcmUsaS5fdXNlckRhdGFXcml0ZXIsdC5kb2Mua2V5LHQuZG9jLG5ldyBTayhpLl9zbmFwc2hvdC5tdXRhdGVkS2V5cy5oYXModC5kb2Mua2V5KSxpLl9zbmFwc2hvdC5mcm9tQ2FjaGUpLGkucXVlcnkuX2NvbnZlcnRlciksbj0tMSxyPS0xO3JldHVybiAwIT09dC50eXBlJiYobj1vLmluZGV4T2YodC5kb2Mua2V5KSxvPW8uZGVsZXRlKHQuZG9jLmtleSkpLDEhPT10LnR5cGUmJihyPShvPW8uYWRkKHQuZG9jKSkuaW5kZXhPZih0LmRvYy5rZXkpKSx7dHlwZTpmdW5jdGlvbih0KXtzd2l0Y2godCl7Y2FzZSAwOnJldHVybiJhZGRlZCI7Y2FzZSAyOmNhc2UgMzpyZXR1cm4ibW9kaWZpZWQiO2Nhc2UgMTpyZXR1cm4icmVtb3ZlZCI7ZGVmYXVsdDpyZXR1cm4gSHkoKX19KHQudHlwZSksZG9jOmUsb2xkSW5kZXg6bixuZXdJbmRleDpyfX0pfSh0aGlzLHQpLHRoaXMuX2NhY2hlZENoYW5nZXNJbmNsdWRlTWV0YWRhdGFDaGFuZ2VzPXQpLHRoaXMuX2NhY2hlZENoYW5nZXN9LGtrKTtmdW5jdGlvbiBrayh0LGUsbixyKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl91c2VyRGF0YVdyaXRlcj1lLHRoaXMuX3NuYXBzaG90PXIsdGhpcy5tZXRhZGF0YT1uZXcgU2soci5oYXNQZW5kaW5nV3JpdGVzLHIuZnJvbUNhY2hlKSx0aGlzLnF1ZXJ5PW59ZnVuY3Rpb24gUmsoKXtyZXR1cm4gbnVsbCE9PVRrJiZUay5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gUGsodCxlLG4scixpLG8pe3ZhciBzPXRoaXM7cmV0dXJuKHM9RWsuY2FsbCh0aGlzLHQsZSxuLHIsbyl8fHRoaXMpLl9maXJlc3RvcmU9dCxzLl9maXJlc3RvcmVJbXBsPXQscy5tZXRhZGF0YT1pLHN9ZnVuY3Rpb24gT2sodCxlKXt0aGlzLmhhc1BlbmRpbmdXcml0ZXM9dCx0aGlzLmZyb21DYWNoZT1lfWZ1bmN0aW9uIERrKHQsZSl7cmV0dXJuIHQgaW5zdGFuY2VvZiBDayYmZSBpbnN0YW5jZW9mIENrP3QuX2ZpcmVzdG9yZT09PWUuX2ZpcmVzdG9yZSYmdC5fa2V5LmlzRXF1YWwoZS5fa2V5KSYmKG51bGw9PT10Ll9kb2N1bWVudD9udWxsPT09ZS5fZG9jdW1lbnQ6dC5fZG9jdW1lbnQuaXNFcXVhbChlLl9kb2N1bWVudCkpJiZ0Ll9jb252ZXJ0ZXI9PT1lLl9jb252ZXJ0ZXI6dCBpbnN0YW5jZW9mIEFrJiZlIGluc3RhbmNlb2YgQWsmJnQuX2ZpcmVzdG9yZT09PWUuX2ZpcmVzdG9yZSYmbEEodC5xdWVyeSxlLnF1ZXJ5KSYmdC5tZXRhZGF0YS5pc0VxdWFsKGUubWV0YWRhdGEpJiZ0Ll9zbmFwc2hvdC5pc0VxdWFsKGUuX3NuYXBzaG90KX1mdW5jdGlvbiB4ayh0KXtpZihrYih0KSYmMD09PXQuZXhwbGljaXRPcmRlckJ5Lmxlbmd0aCl0aHJvdyBuZXcgRnkoTXkuVU5JTVBMRU1FTlRFRCwibGltaXRUb0xhc3QoKSBxdWVyaWVzIHJlcXVpcmUgc3BlY2lmeWluZyBhdCBsZWFzdCBvbmUgb3JkZXJCeSgpIGNsYXVzZSIpfUdhPWZ1bmN0aW9uKCl7fTtmdW5jdGlvbiBMayh0KXtmb3IodmFyIGU9W10sbj0xO248YXJndW1lbnRzLmxlbmd0aDtuKyspZVtuLTFdPWFyZ3VtZW50c1tuXTtmb3IodmFyIHI9MCxpPWU7cjxpLmxlbmd0aDtyKyspdD1pW3JdLl9hcHBseSh0KTtyZXR1cm4gdH12YXIgTWssRmssVWssamsscWssVms9KFhpKFhrLHFrPUdhKSxYay5wcm90b3R5cGUuX2FwcGx5PWZ1bmN0aW9uKHQpe3ZhciBlPVZBKHQuZmlyZXN0b3JlKSxlPWZ1bmN0aW9uKHQsZSxuLHIsaSxvKXtpZihyLmlzS2V5RmllbGQoKSl7aWYoImFycmF5LWNvbnRhaW5zIj09PWl8fCJhcnJheS1jb250YWlucy1hbnkiPT09aSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBRdWVyeS4gWW91IGNhbid0IHBlcmZvcm0gJyIraSsiJyBxdWVyaWVzIG9uIEZpZWxkUGF0aC5kb2N1bWVudElkKCkuIik7aWYoImluIj09PWl8fCJub3QtaW4iPT09aSl7WmsobyxpKTtmb3IodmFyIHM9W10sYT0wLHU9bzthPHUubGVuZ3RoO2ErKyl7dmFyIGM9dVthXTtzLnB1c2goJGsobix0LGMpKX1oPXthcnJheVZhbHVlOnt2YWx1ZXM6c319fWVsc2UgaD0kayhuLHQsbyl9ZWxzZSJpbiIhPT1pJiYibm90LWluIiE9PWkmJiJhcnJheS1jb250YWlucy1hbnkiIT09aXx8WmsobyxpKSxoPWFrKGUsIndoZXJlIixvLCJpbiI9PT1pfHwibm90LWluIj09PWkpO3ZhciBoPVhtLmNyZWF0ZShyLGksaCk7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7aWYoZS5nKCkpe3ZhciBuPVBiKHQpO2lmKG51bGwhPT1uJiYhbi5pc0VxdWFsKGUuZmllbGQpKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIHF1ZXJ5LiBBbGwgd2hlcmUgZmlsdGVycyB3aXRoIGFuIGluZXF1YWxpdHkgKDwsIDw9LCAhPSwgbm90LWluLCA+LCBvciA+PSkgbXVzdCBiZSBvbiB0aGUgc2FtZSBmaWVsZC4gQnV0IHlvdSBoYXZlIGluZXF1YWxpdHkgZmlsdGVycyBvbiAnIituLnRvU3RyaW5nKCkrIicgYW5kICciK2UuZmllbGQudG9TdHJpbmcoKSsiJyIpO249UmIodCk7bnVsbCE9PW4mJnRSKDAsZS5maWVsZCxuKX10PWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTAscj10LmZpbHRlcnM7bjxyLmxlbmd0aDtuKyspe3ZhciBpPXJbbl07aWYoMDw9ZS5pbmRleE9mKGkub3ApKXJldHVybiBpLm9wfXJldHVybiBudWxsfSh0LGZ1bmN0aW9uKCl7c3dpdGNoKGUub3Ape2Nhc2UiIT0iOnJldHVyblsiIT0iLCJub3QtaW4iXTtjYXNlImFycmF5LWNvbnRhaW5zIjpyZXR1cm5bImFycmF5LWNvbnRhaW5zIiwiYXJyYXktY29udGFpbnMtYW55Iiwibm90LWluIl07Y2FzZSJpbiI6cmV0dXJuWyJhcnJheS1jb250YWlucy1hbnkiLCJpbiIsIm5vdC1pbiJdO2Nhc2UiYXJyYXktY29udGFpbnMtYW55IjpyZXR1cm5bImFycmF5LWNvbnRhaW5zIiwiYXJyYXktY29udGFpbnMtYW55IiwiaW4iLCJub3QtaW4iXTtjYXNlIm5vdC1pbiI6cmV0dXJuWyJhcnJheS1jb250YWlucyIsImFycmF5LWNvbnRhaW5zLWFueSIsImluIiwibm90LWluIiwiIT0iXTtkZWZhdWx0OnJldHVybltdfX0oKSk7aWYobnVsbCE9PXQpdGhyb3cgdD09PWUub3A/bmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgcXVlcnkuIFlvdSBjYW5ub3QgdXNlIG1vcmUgdGhhbiBvbmUgJyIrZS5vcC50b1N0cmluZygpKyInIGZpbHRlci4iKTpuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBxdWVyeS4gWW91IGNhbm5vdCB1c2UgJyIrZS5vcC50b1N0cmluZygpKyInIGZpbHRlcnMgd2l0aCAnIit0LnRvU3RyaW5nKCkrIicgZmlsdGVycy4iKX0odCxoKSxofSh0Ll9xdWVyeSxlLHQuZmlyZXN0b3JlLl9kYXRhYmFzZUlkLHRoaXMuVWMsdGhpcy5RYyx0aGlzLktjKTtyZXR1cm4gbmV3IGVBKHQuZmlyZXN0b3JlLHQuX2NvbnZlcnRlciwodD10Ll9xdWVyeSxlPXQuZmlsdGVycy5jb25jYXQoW2VdKSxuZXcgU2IodC5wYXRoLHQuY29sbGVjdGlvbkdyb3VwLHQuZXhwbGljaXRPcmRlckJ5LnNsaWNlKCksZSx0LmxpbWl0LHQubGltaXRUeXBlLHQuc3RhcnRBdCx0LmVuZEF0KSkpfSxYayksQms9KFhpKFlrLGprPUdhKSxZay5wcm90b3R5cGUuX2FwcGx5PWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSxuKXtpZihudWxsIT09dC5zdGFydEF0KXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIHF1ZXJ5LiBZb3UgbXVzdCBub3QgY2FsbCBzdGFydEF0KCkgb3Igc3RhcnRBZnRlcigpIGJlZm9yZSBjYWxsaW5nIG9yZGVyQnkoKS4iKTtpZihudWxsIT09dC5lbmRBdCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBxdWVyeS4gWW91IG11c3Qgbm90IGNhbGwgZW5kQXQoKSBvciBlbmRCZWZvcmUoKSBiZWZvcmUgY2FsbGluZyBvcmRlckJ5KCkuIik7dmFyIHI9bmV3IEliKGUsbik7cmV0dXJuIGU9cixudWxsIT09UmIobj10KXx8bnVsbCE9PSh0PVBiKG4pKSYmdFIoMCx0LGUuZmllbGQpLHJ9KHQuX3F1ZXJ5LHRoaXMuVWMsdGhpcy5qYyk7cmV0dXJuIG5ldyBlQSh0LmZpcmVzdG9yZSx0Ll9jb252ZXJ0ZXIsKHQ9dC5fcXVlcnksZT10LmV4cGxpY2l0T3JkZXJCeS5jb25jYXQoW2VdKSxuZXcgU2IodC5wYXRoLHQuY29sbGVjdGlvbkdyb3VwLGUsdC5maWx0ZXJzLnNsaWNlKCksdC5saW1pdCx0LmxpbWl0VHlwZSx0LnN0YXJ0QXQsdC5lbmRBdCkpKX0sWWspLEtrPShYaShRayxVaz1HYSksUWsucHJvdG90eXBlLl9hcHBseT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGVBKHQuZmlyZXN0b3JlLHQuX2NvbnZlcnRlcixMYih0Ll9xdWVyeSx0aGlzLldjLHRoaXMuR2MpKX0sUWspLFdrPShYaSh6ayxGaz1HYSksemsucHJvdG90eXBlLl9hcHBseT1mdW5jdGlvbih0KXt2YXIgZT1Kayh0LHRoaXMudHlwZSx0aGlzLnpjLHRoaXMuSGMpO3JldHVybiBuZXcgZUEodC5maXJlc3RvcmUsdC5fY29udmVydGVyLCh0PXQuX3F1ZXJ5LGU9ZSxuZXcgU2IodC5wYXRoLHQuY29sbGVjdGlvbkdyb3VwLHQuZXhwbGljaXRPcmRlckJ5LnNsaWNlKCksdC5maWx0ZXJzLnNsaWNlKCksdC5saW1pdCx0LmxpbWl0VHlwZSxlLHQuZW5kQXQpKSl9LHprKSxIaz0oWGkoR2ssTWs9R2EpLEdrLnByb3RvdHlwZS5fYXBwbHk9ZnVuY3Rpb24odCl7dmFyIGU9SmsodCx0aGlzLnR5cGUsdGhpcy56Yyx0aGlzLkhjKTtyZXR1cm4gbmV3IGVBKHQuZmlyZXN0b3JlLHQuX2NvbnZlcnRlciwodD10Ll9xdWVyeSxlPWUsbmV3IFNiKHQucGF0aCx0LmNvbGxlY3Rpb25Hcm91cCx0LmV4cGxpY2l0T3JkZXJCeS5zbGljZSgpLHQuZmlsdGVycy5zbGljZSgpLHQubGltaXQsdC5saW1pdFR5cGUsdC5zdGFydEF0LGUpKSl9LEdrKTtmdW5jdGlvbiBHayh0LGUsbil7dmFyIHI9dGhpcztyZXR1cm4ocj1Nay5jYWxsKHRoaXMpfHx0aGlzKS50eXBlPXQsci56Yz1lLHIuSGM9bixyfWZ1bmN0aW9uIHprKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybihyPUZrLmNhbGwodGhpcyl8fHRoaXMpLnR5cGU9dCxyLnpjPWUsci5IYz1uLHJ9ZnVuY3Rpb24gUWsodCxlLG4pe3ZhciByPXRoaXM7cmV0dXJuKHI9VWsuY2FsbCh0aGlzKXx8dGhpcykudHlwZT10LHIuV2M9ZSxyLkdjPW4scn1mdW5jdGlvbiBZayh0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKG49amsuY2FsbCh0aGlzKXx8dGhpcykuVWM9dCxuLmpjPWUsbi50eXBlPSJvcmRlckJ5IixufWZ1bmN0aW9uIFhrKHQsZSxuKXt2YXIgcj10aGlzO3JldHVybihyPXFrLmNhbGwodGhpcyl8fHRoaXMpLlVjPXQsci5RYz1lLHIuS2M9bixyLnR5cGU9IndoZXJlIixyfWZ1bmN0aW9uIEprKHQsYyxlLG4pe2lmKGVbMF09Wm8oZVswXSksZVswXWluc3RhbmNlb2YgbWspcmV0dXJuIGZ1bmN0aW9uKHQsZSxuLHIpe2lmKCFuKXRocm93IG5ldyBGeShNeS5OT1RfRk9VTkQsIkNhbid0IHVzZSBhIERvY3VtZW50U25hcHNob3QgdGhhdCBkb2Vzbid0IGV4aXN0IGZvciAiK2MrIigpLiIpO2Zvcih2YXIgaT1bXSxvPTAscz1EYih0KTtvPHMubGVuZ3RoO28rKyl7dmFyIGE9c1tvXTtpZihhLmZpZWxkLmlzS2V5RmllbGQoKSlpLnB1c2goeG0oZSxuLmtleSkpO2Vsc2V7dmFyIHU9bi5kYXRhLmZpZWxkKGEuZmllbGQpO2lmKF9tKHUpKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCdJbnZhbGlkIHF1ZXJ5LiBZb3UgYXJlIHRyeWluZyB0byBzdGFydCBvciBlbmQgYSBxdWVyeSB1c2luZyBhIGRvY3VtZW50IGZvciB3aGljaCB0aGUgZmllbGQgIicrYS5maWVsZCsnIiBpcyBhbiB1bmNvbW1pdHRlZCBzZXJ2ZXIgdGltZXN0YW1wLiAoU2luY2UgdGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgaXMgdW5rbm93biwgeW91IGNhbm5vdCBzdGFydC9lbmQgYSBxdWVyeSB3aXRoIGl0LiknKTtpZihudWxsPT09dSl7YT1hLmZpZWxkLmNhbm9uaWNhbFN0cmluZygpO3Rocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIHF1ZXJ5LiBZb3UgYXJlIHRyeWluZyB0byBzdGFydCBvciBlbmQgYSBxdWVyeSB1c2luZyBhIGRvY3VtZW50IGZvciB3aGljaCB0aGUgZmllbGQgJyIrYSsiJyAodXNlZCBhcyB0aGUgb3JkZXJCeSkgZG9lcyBub3QgZXhpc3QuIil9aS5wdXNoKHUpfX1yZXR1cm4gbmV3IGdiKGkscil9KHQuX3F1ZXJ5LHQuZmlyZXN0b3JlLl9kYXRhYmFzZUlkLGVbMF0uX2RvY3VtZW50LG4pO3ZhciByPVZBKHQuZmlyZXN0b3JlKTtyZXR1cm4gZnVuY3Rpb24odCxlLG4scixpLG8pe3ZhciBzPXQuZXhwbGljaXRPcmRlckJ5O2lmKGkubGVuZ3RoPnMubGVuZ3RoKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJUb28gbWFueSBhcmd1bWVudHMgcHJvdmlkZWQgdG8gIityKyIoKS4gVGhlIG51bWJlciBvZiBhcmd1bWVudHMgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBvcmRlckJ5KCkgY2xhdXNlcyIpO2Zvcih2YXIgYT1bXSx1PTA7dTxpLmxlbmd0aDt1Kyspe3ZhciBjPWlbdV07aWYoc1t1XS5maWVsZC5pc0tleUZpZWxkKCkpe2lmKCJzdHJpbmciIT10eXBlb2YgYyl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBxdWVyeS4gRXhwZWN0ZWQgYSBzdHJpbmcgZm9yIGRvY3VtZW50IElEIGluICIrcisiKCksIGJ1dCBnb3QgYSAiK3R5cGVvZiBjKTtpZighT2IodCkmJi0xIT09Yy5pbmRleE9mKCIvIikpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgcXVlcnkuIFdoZW4gcXVlcnlpbmcgYSBjb2xsZWN0aW9uIGFuZCBvcmRlcmluZyBieSBGaWVsZFBhdGguZG9jdW1lbnRJZCgpLCB0aGUgdmFsdWUgcGFzc2VkIHRvICIrcisiKCkgbXVzdCBiZSBhIHBsYWluIGRvY3VtZW50IElELCBidXQgJyIrYysiJyBjb250YWlucyBhIHNsYXNoLiIpO3ZhciBoPXQucGF0aC5jaGlsZChhbS5mcm9tU3RyaW5nKGMpKTtpZighQ20uaXNEb2N1bWVudEtleShoKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBxdWVyeS4gV2hlbiBxdWVyeWluZyBhIGNvbGxlY3Rpb24gZ3JvdXAgYW5kIG9yZGVyaW5nIGJ5IEZpZWxkUGF0aC5kb2N1bWVudElkKCksIHRoZSB2YWx1ZSBwYXNzZWQgdG8gIityKyIoKSBtdXN0IHJlc3VsdCBpbiBhIHZhbGlkIGRvY3VtZW50IHBhdGgsIGJ1dCAnIitoKyInIGlzIG5vdCBiZWNhdXNlIGl0IGNvbnRhaW5zIGFuIG9kZCBudW1iZXIgb2Ygc2VnbWVudHMuIik7aD1uZXcgQ20oaCk7YS5wdXNoKHhtKGUsaCkpfWVsc2V7Yz1hayhuLHIsYyk7YS5wdXNoKGMpfX1yZXR1cm4gbmV3IGdiKGEsbyl9KHQuX3F1ZXJ5LHQuZmlyZXN0b3JlLl9kYXRhYmFzZUlkLHIsYyxlLG4pfWZ1bmN0aW9uICRrKHQsZSxuKXtpZigic3RyaW5nIj09dHlwZW9mKG49Wm8obikpKXtpZigiIj09PW4pdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgcXVlcnkuIFdoZW4gcXVlcnlpbmcgd2l0aCBGaWVsZFBhdGguZG9jdW1lbnRJZCgpLCB5b3UgbXVzdCBwcm92aWRlIGEgdmFsaWQgZG9jdW1lbnQgSUQsIGJ1dCBpdCB3YXMgYW4gZW1wdHkgc3RyaW5nLiIpO2lmKCFPYihlKSYmLTEhPT1uLmluZGV4T2YoIi8iKSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBxdWVyeS4gV2hlbiBxdWVyeWluZyBhIGNvbGxlY3Rpb24gYnkgRmllbGRQYXRoLmRvY3VtZW50SWQoKSwgeW91IG11c3QgcHJvdmlkZSBhIHBsYWluIGRvY3VtZW50IElELCBidXQgJyIrbisiJyBjb250YWlucyBhICcvJyBjaGFyYWN0ZXIuIik7ZT1lLnBhdGguY2hpbGQoYW0uZnJvbVN0cmluZyhuKSk7aWYoIUNtLmlzRG9jdW1lbnRLZXkoZSkpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgcXVlcnkuIFdoZW4gcXVlcnlpbmcgYSBjb2xsZWN0aW9uIGdyb3VwIGJ5IEZpZWxkUGF0aC5kb2N1bWVudElkKCksIHRoZSB2YWx1ZSBwcm92aWRlZCBtdXN0IHJlc3VsdCBpbiBhIHZhbGlkIGRvY3VtZW50IHBhdGgsIGJ1dCAnIitlKyInIGlzIG5vdCBiZWNhdXNlIGl0IGhhcyBhbiBvZGQgbnVtYmVyIG9mIHNlZ21lbnRzICgiK2UubGVuZ3RoKyIpLiIpO3JldHVybiB4bSh0LG5ldyBDbShlKSl9aWYobiBpbnN0YW5jZW9mIHRBKXJldHVybiB4bSh0LG4uX2tleSk7dGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgcXVlcnkuIFdoZW4gcXVlcnlpbmcgd2l0aCBGaWVsZFBhdGguZG9jdW1lbnRJZCgpLCB5b3UgbXVzdCBwcm92aWRlIGEgdmFsaWQgc3RyaW5nIG9yIGEgRG9jdW1lbnRSZWZlcmVuY2UsIGJ1dCBpdCB3YXM6ICIrUU4obikrIi4iKX1mdW5jdGlvbiBaayh0LGUpe2lmKCFBcnJheS5pc0FycmF5KHQpfHwwPT09dC5sZW5ndGgpdGhyb3cgbmV3IEZ5KE15LklOVkFMSURfQVJHVU1FTlQsIkludmFsaWQgUXVlcnkuIEEgbm9uLWVtcHR5IGFycmF5IGlzIHJlcXVpcmVkIGZvciAnIitlLnRvU3RyaW5nKCkrIicgZmlsdGVycy4iKTtpZigxMDx0Lmxlbmd0aCl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiSW52YWxpZCBRdWVyeS4gJyIrZS50b1N0cmluZygpKyInIGZpbHRlcnMgc3VwcG9ydCBhIG1heGltdW0gb2YgMTAgZWxlbWVudHMgaW4gdGhlIHZhbHVlIGFycmF5LiIpfWZ1bmN0aW9uIHRSKHQsZSxuKXtpZighbi5pc0VxdWFsKGUpKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIHF1ZXJ5LiBZb3UgaGF2ZSBhIHdoZXJlIGZpbHRlciB3aXRoIGFuIGluZXF1YWxpdHkgKDwsIDw9LCAhPSwgbm90LWluLCA+LCBvciA+PSkgb24gZmllbGQgJyIrZS50b1N0cmluZygpKyInIGFuZCBzbyB5b3UgbXVzdCBhbHNvIHVzZSAnIitlLnRvU3RyaW5nKCkrIicgYXMgeW91ciBmaXJzdCBhcmd1bWVudCB0byBvcmRlckJ5KCksIGJ1dCB5b3VyIGZpcnN0IG9yZGVyQnkoKSBpcyBvbiBmaWVsZCAnIituLnRvU3RyaW5nKCkrIicgaW5zdGVhZC4iKX1lUi5wcm90b3R5cGUuY29udmVydFZhbHVlPWZ1bmN0aW9uKHQsZSl7c3dpdGNoKHZvaWQgMD09PWUmJihlPSJub25lIiksQW0odCkpe2Nhc2UgMDpyZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIHQuYm9vbGVhblZhbHVlO2Nhc2UgMjpyZXR1cm4gYm0odC5pbnRlZ2VyVmFsdWV8fHQuZG91YmxlVmFsdWUpO2Nhc2UgMzpyZXR1cm4gdGhpcy5jb252ZXJ0VGltZXN0YW1wKHQudGltZXN0YW1wVmFsdWUpO2Nhc2UgNDpyZXR1cm4gdGhpcy5jb252ZXJ0U2VydmVyVGltZXN0YW1wKHQsZSk7Y2FzZSA1OnJldHVybiB0LnN0cmluZ1ZhbHVlO2Nhc2UgNjpyZXR1cm4gdGhpcy5jb252ZXJ0Qnl0ZXMod20odC5ieXRlc1ZhbHVlKSk7Y2FzZSA3OnJldHVybiB0aGlzLmNvbnZlcnRSZWZlcmVuY2UodC5yZWZlcmVuY2VWYWx1ZSk7Y2FzZSA4OnJldHVybiB0aGlzLmNvbnZlcnRHZW9Qb2ludCh0Lmdlb1BvaW50VmFsdWUpO2Nhc2UgOTpyZXR1cm4gdGhpcy5jb252ZXJ0QXJyYXkodC5hcnJheVZhbHVlLGUpO2Nhc2UgMTA6cmV0dXJuIHRoaXMuY29udmVydE9iamVjdCh0Lm1hcFZhbHVlLGUpO2RlZmF1bHQ6dGhyb3cgSHkoKX19LGVSLnByb3RvdHlwZS5jb252ZXJ0T2JqZWN0PWZ1bmN0aW9uKHQsbil7dmFyIHI9dGhpcyxpPXt9O3JldHVybiBybSh0LmZpZWxkc3x8e30sZnVuY3Rpb24odCxlKXtpW3RdPXIuY29udmVydFZhbHVlKGUsbil9KSxpfSxlUi5wcm90b3R5cGUuY29udmVydEdlb1BvaW50PWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgTkEoYm0odC5sYXRpdHVkZSksYm0odC5sb25naXR1ZGUpKX0sZVIucHJvdG90eXBlLmNvbnZlcnRBcnJheT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7cmV0dXJuKHQudmFsdWVzfHxbXSkubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBuLmNvbnZlcnRWYWx1ZSh0LGUpfSl9LGVSLnByb3RvdHlwZS5jb252ZXJ0U2VydmVyVGltZXN0YW1wPWZ1bmN0aW9uKHQsZSl7c3dpdGNoKGUpe2Nhc2UicHJldmlvdXMiOnZhciBuPWZ1bmN0aW9uIHQoZSl7ZT1lLm1hcFZhbHVlLmZpZWxkcy5fX3ByZXZpb3VzX3ZhbHVlX187cmV0dXJuIF9tKGUpP3QoZSk6ZX0odCk7cmV0dXJuIG51bGw9PW4/bnVsbDp0aGlzLmNvbnZlcnRWYWx1ZShuLGUpO2Nhc2UiZXN0aW1hdGUiOnJldHVybiB0aGlzLmNvbnZlcnRUaW1lc3RhbXAoSW0odCkpO2RlZmF1bHQ6cmV0dXJuIG51bGx9fSxlUi5wcm90b3R5cGUuY29udmVydFRpbWVzdGFtcD1mdW5jdGlvbih0KXt0PW1tKHQpO3JldHVybiBuZXcgJHkodC5zZWNvbmRzLHQubmFub3MpfSxlUi5wcm90b3R5cGUuY29udmVydERvY3VtZW50S2V5PWZ1bmN0aW9uKHQsZSl7dmFyIG49YW0uZnJvbVN0cmluZyh0KTtHeShGXyhuKSk7dD1uZXcgT04obi5nZXQoMSksbi5nZXQoMykpLG49bmV3IENtKG4ucG9wRmlyc3QoNSkpO3JldHVybiB0LmlzRXF1YWwoZSl8fEJ5KCJEb2N1bWVudCAiK24rIiBjb250YWlucyBhIGRvY3VtZW50IHJlZmVyZW5jZSB3aXRoaW4gYSBkaWZmZXJlbnQgZGF0YWJhc2UgKCIrdC5wcm9qZWN0SWQrIi8iK3QuZGF0YWJhc2UrIikgd2hpY2ggaXMgbm90IHN1cHBvcnRlZC4gSXQgd2lsbCBiZSB0cmVhdGVkIGFzIGEgcmVmZXJlbmNlIGluIHRoZSBjdXJyZW50IGRhdGFiYXNlICgiK2UucHJvamVjdElkKyIvIitlLmRhdGFiYXNlKyIpIGluc3RlYWQuIiksbn0sU249ZVI7ZnVuY3Rpb24gZVIoKXt9ZnVuY3Rpb24gblIodCxlLG4pe3JldHVybiB0P24mJihuLm1lcmdlfHxuLm1lcmdlRmllbGRzKT90LnRvRmlyZXN0b3JlKGUsbik6dC50b0ZpcmVzdG9yZShlKTplfXZhciByUixpUj0oWGkoYVIsclI9U24pLGFSLnByb3RvdHlwZS5jb252ZXJ0Qnl0ZXM9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBTQSh0KX0sYVIucHJvdG90eXBlLmNvbnZlcnRSZWZlcmVuY2U9ZnVuY3Rpb24odCl7dD10aGlzLmNvbnZlcnREb2N1bWVudEtleSh0LHRoaXMuZmlyZXN0b3JlLl9kYXRhYmFzZUlkKTtyZXR1cm4gbmV3IHRBKHRoaXMuZmlyZXN0b3JlLG51bGwsdCl9LGFSKSxvUj0oc1IucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LGUsbil7dGhpcy5fdmVyaWZ5Tm90Q29tbWl0dGVkKCk7dD11Uih0LHRoaXMuX2ZpcmVzdG9yZSksZT1uUih0Ll9jb252ZXJ0ZXIsZSxuKSxuPUJBKHRoaXMuX2RhdGFSZWFkZXIsIldyaXRlQmF0Y2guc2V0Iix0Ll9rZXksZSxudWxsIT09dC5fY29udmVydGVyLG4pO3JldHVybiB0aGlzLl9tdXRhdGlvbnMucHVzaChuLnRvTXV0YXRpb24odC5fa2V5LGN3Lm5vbmUoKSkpLHRoaXN9LHNSLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcj1bXSxpPTM7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktM109YXJndW1lbnRzW2ldO3RoaXMuX3ZlcmlmeU5vdENvbW1pdHRlZCgpO3Q9dVIodCx0aGlzLl9maXJlc3RvcmUpLGU9InN0cmluZyI9PXR5cGVvZihlPVpvKGUpKXx8ZSBpbnN0YW5jZW9mIEVBP3NrKHRoaXMuX2RhdGFSZWFkZXIsIldyaXRlQmF0Y2gudXBkYXRlIix0Ll9rZXksZSxuLHIpOm9rKHRoaXMuX2RhdGFSZWFkZXIsIldyaXRlQmF0Y2gudXBkYXRlIix0Ll9rZXksZSk7cmV0dXJuIHRoaXMuX211dGF0aW9ucy5wdXNoKGUudG9NdXRhdGlvbih0Ll9rZXksY3cuZXhpc3RzKCEwKSkpLHRoaXN9LHNSLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24odCl7dGhpcy5fdmVyaWZ5Tm90Q29tbWl0dGVkKCk7dD11Uih0LHRoaXMuX2ZpcmVzdG9yZSk7cmV0dXJuIHRoaXMuX211dGF0aW9ucz10aGlzLl9tdXRhdGlvbnMuY29uY2F0KG5ldyBBdyh0Ll9rZXksY3cubm9uZSgpKSksdGhpc30sc1IucHJvdG90eXBlLmNvbW1pdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl92ZXJpZnlOb3RDb21taXR0ZWQoKSx0aGlzLl9jb21taXR0ZWQ9ITAsMDx0aGlzLl9tdXRhdGlvbnMubGVuZ3RoP3RoaXMuX2NvbW1pdEhhbmRsZXIodGhpcy5fbXV0YXRpb25zKTpQcm9taXNlLnJlc29sdmUoKX0sc1IucHJvdG90eXBlLl92ZXJpZnlOb3RDb21taXR0ZWQ9ZnVuY3Rpb24oKXtpZih0aGlzLl9jb21taXR0ZWQpdGhyb3cgbmV3IEZ5KE15LkZBSUxFRF9QUkVDT05ESVRJT04sIkEgd3JpdGUgYmF0Y2ggY2FuIG5vIGxvbmdlciBiZSB1c2VkIGFmdGVyIGNvbW1pdCgpIGhhcyBiZWVuIGNhbGxlZC4iKX0sc1IpO2Z1bmN0aW9uIHNSKHQsZSl7dGhpcy5fZmlyZXN0b3JlPXQsdGhpcy5fY29tbWl0SGFuZGxlcj1lLHRoaXMuX211dGF0aW9ucz1bXSx0aGlzLl9jb21taXR0ZWQ9ITEsdGhpcy5fZGF0YVJlYWRlcj1WQSh0KX1mdW5jdGlvbiBhUih0KXt2YXIgZT10aGlzO3JldHVybihlPXJSLmNhbGwodGhpcyl8fHRoaXMpLmZpcmVzdG9yZT10LGV9ZnVuY3Rpb24gdVIodCxlKXtpZigodD1abyh0KSkuZmlyZXN0b3JlIT09ZSl0aHJvdyBuZXcgRnkoTXkuSU5WQUxJRF9BUkdVTUVOVCwiUHJvdmlkZWQgZG9jdW1lbnQgcmVmZXJlbmNlIGlzIGZyb20gYSBkaWZmZXJlbnQgRmlyZXN0b3JlIGluc3RhbmNlLiIpO3JldHVybiB0fXZhciBjUixoUj0oWGkobFIsY1I9U24pLGxSLnByb3RvdHlwZS5jb252ZXJ0Qnl0ZXM9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBTQSh0KX0sbFIucHJvdG90eXBlLmNvbnZlcnRSZWZlcmVuY2U9ZnVuY3Rpb24odCl7dD10aGlzLmNvbnZlcnREb2N1bWVudEtleSh0LHRoaXMuZmlyZXN0b3JlLl9kYXRhYmFzZUlkKTtyZXR1cm4gbmV3IHRBKHRoaXMuZmlyZXN0b3JlLG51bGwsdCl9LGxSKTtmdW5jdGlvbiBsUih0KXt2YXIgZT10aGlzO3JldHVybihlPWNSLmNhbGwodGhpcyl8fHRoaXMpLmZpcmVzdG9yZT10LGV9ZnVuY3Rpb24gZlIodCxlLG4pe2Zvcih2YXIgcj1bXSxpPTM7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktM109YXJndW1lbnRzW2ldO3Q9WU4odCx0QSk7dmFyIG89WU4odC5maXJlc3RvcmUseUEpLHM9VkEobyk7cmV0dXJuIGRSKG8sWygic3RyaW5nIj09dHlwZW9mKGU9Wm8oZSkpfHxlIGluc3RhbmNlb2YgRUE/c2socywidXBkYXRlRG9jIix0Ll9rZXksZSxuLHIpOm9rKHMsInVwZGF0ZURvYyIsdC5fa2V5LGUpKS50b011dGF0aW9uKHQuX2tleSxjdy5leGlzdHMoITApKV0pfWZ1bmN0aW9uIHBSKGUpe2Zvcih2YXIgbj1bXSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyluW3QtMV09YXJndW1lbnRzW3RdO2U9Wm8oZSk7dmFyIHI9e2luY2x1ZGVNZXRhZGF0YUNoYW5nZXM6ITF9LGk9MDsib2JqZWN0IiE9dHlwZW9mIG5baV18fGRBKG5baV0pfHwocj1uW2ldLGkrKyk7dmFyIG8scyxhLHUsYyxoLGw9e2luY2x1ZGVNZXRhZGF0YUNoYW5nZXM6ci5pbmNsdWRlTWV0YWRhdGFDaGFuZ2VzfTtyZXR1cm4gZEEobltpXSkmJihvPW5baV0sbltpXT1udWxsPT09KHI9by5uZXh0KXx8dm9pZCAwPT09cj92b2lkIDA6ci5iaW5kKG8pLG5baSsxXT1udWxsPT09KHI9by5lcnJvcil8fHZvaWQgMD09PXI/dm9pZCAwOnIuYmluZChvKSxuW2krMl09bnVsbD09PShyPW8uY29tcGxldGUpfHx2b2lkIDA9PT1yP3ZvaWQgMDpyLmJpbmQobykpLGUgaW5zdGFuY2VvZiB0QT8oYT1ZTihlLmZpcmVzdG9yZSx5QSksdT1OYihlLl9rZXkucGF0aCksaD17bmV4dDpmdW5jdGlvbih0KXtuW2ldJiZuW2ldKHZSKGEsZSx0KSl9LGVycm9yOm5baSsxXSxjb21wbGV0ZTpuW2krMl19KToocz1ZTihlLGVBKSxhPVlOKHMuZmlyZXN0b3JlLHlBKSx1PXMuX3F1ZXJ5LGM9bmV3IGhSKGEpLGg9e25leHQ6ZnVuY3Rpb24odCl7bltpXSYmbltpXShuZXcgQWsoYSxjLHMsdCkpfSxlcnJvcjpuW2krMV0sY29tcGxldGU6bltpKzJdfSx4ayhlLl9xdWVyeSkpLGZ1bmN0aW9uKG4sdCxlKXt2YXIgcj10aGlzLGk9bmV3IGNOKGgpLG89bmV3IGRDKHQsaSxlKTtyZXR1cm4gbi5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gJGkocix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1sQyxbNCxOTihuKV07Y2FzZSAxOnJldHVyblsyLGUuYXBwbHkodm9pZCAwLFt0LnNlbnQoKSxvXSldfX0pfSl9KSxmdW5jdGlvbigpe2kuV28oKSxuLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaShyLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPWZDLFs0LE5OKG4pXTtjYXNlIDE6cmV0dXJuWzIsZS5hcHBseSh2b2lkIDAsW3Quc2VudCgpLG9dKV19fSl9KX0pfX0od0EoYSksdSxsKX1mdW5jdGlvbiBkUih0LGUpe3JldHVybiBmdW5jdGlvbihuLHIpe3ZhciB0PXRoaXMsaT1uZXcgYUk7cmV0dXJuIG4uYXN5bmNRdWV1ZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuICRpKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9T0MsWzQsQ04obildO2Nhc2UgMTpyZXR1cm5bMixlLmFwcGx5KHZvaWQgMCxbdC5zZW50KCkscixpXSldfX0pfSl9KSxpLnByb21pc2V9KHdBKHQpLGUpfWZ1bmN0aW9uIHZSKHQsZSxuKXt2YXIgcj1uLmRvY3MuZ2V0KGUuX2tleSksaT1uZXcgaFIodCk7cmV0dXJuIG5ldyBDayh0LGksZS5fa2V5LHIsbmV3IFNrKG4uaGFzUGVuZGluZ1dyaXRlcyxuLmZyb21DYWNoZSksZS5fY29udmVydGVyKX12YXIgZ1IseVI9KGJSLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPXVSKHQsdGhpcy5fZmlyZXN0b3JlKSxyPW5ldyBpUih0aGlzLl9maXJlc3RvcmUpO3JldHVybiB0aGlzLl90cmFuc2FjdGlvbi5sb29rdXAoW24uX2tleV0pLnRoZW4oZnVuY3Rpb24odCl7aWYoIXR8fDEhPT10Lmxlbmd0aClyZXR1cm4gSHkoKTt0PXRbMF07aWYodC5pc0ZvdW5kRG9jdW1lbnQoKSlyZXR1cm4gbmV3IG1rKGUuX2ZpcmVzdG9yZSxyLHQua2V5LHQsbi5fY29udmVydGVyKTtpZih0LmlzTm9Eb2N1bWVudCgpKXJldHVybiBuZXcgbWsoZS5fZmlyZXN0b3JlLHIsbi5fa2V5LG51bGwsbi5fY29udmVydGVyKTt0aHJvdyBIeSgpfSl9LGJSLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxlLG4pe3Q9dVIodCx0aGlzLl9maXJlc3RvcmUpLGU9blIodC5fY29udmVydGVyLGUsbiksbj1CQSh0aGlzLl9kYXRhUmVhZGVyLCJUcmFuc2FjdGlvbi5zZXQiLHQuX2tleSxlLG51bGwhPT10Ll9jb252ZXJ0ZXIsbik7cmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uLnNldCh0Ll9rZXksbiksdGhpc30sYlIucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbih0LGUsbil7Zm9yKHZhciByPVtdLGk9MztpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKXJbaS0zXT1hcmd1bWVudHNbaV07dD11Uih0LHRoaXMuX2ZpcmVzdG9yZSksZT0ic3RyaW5nIj09dHlwZW9mKGU9Wm8oZSkpfHxlIGluc3RhbmNlb2YgRUE/c2sodGhpcy5fZGF0YVJlYWRlciwiVHJhbnNhY3Rpb24udXBkYXRlIix0Ll9rZXksZSxuLHIpOm9rKHRoaXMuX2RhdGFSZWFkZXIsIlRyYW5zYWN0aW9uLnVwZGF0ZSIsdC5fa2V5LGUpO3JldHVybiB0aGlzLl90cmFuc2FjdGlvbi51cGRhdGUodC5fa2V5LGUpLHRoaXN9LGJSLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24odCl7dD11Uih0LHRoaXMuX2ZpcmVzdG9yZSk7cmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uLmRlbGV0ZSh0Ll9rZXkpLHRoaXN9LFhpKG1SLGdSPWJSKSxtUi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj11Uih0LHRoaXMuX2ZpcmVzdG9yZSkscj1uZXcgaFIodGhpcy5fZmlyZXN0b3JlKTtyZXR1cm4gZ1IucHJvdG90eXBlLmdldC5jYWxsKHRoaXMsdCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IENrKGUuX2ZpcmVzdG9yZSxyLG4uX2tleSx0Ll9kb2N1bWVudCxuZXcgU2soITEsITEpLG4uX2NvbnZlcnRlcil9KX0sbVIpO2Z1bmN0aW9uIG1SKHQsZSl7dmFyIG49dGhpcztyZXR1cm4obj1nUi5jYWxsKHRoaXMsdCxlKXx8dGhpcykuX2ZpcmVzdG9yZT10LG59ZnVuY3Rpb24gYlIodCxlKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl90cmFuc2FjdGlvbj1lLHRoaXMuX2RhdGFSZWFkZXI9VkEodCl9ZnVuY3Rpb24gd1IoKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFVpbnQ4QXJyYXkpdGhyb3cgbmV3IEZ5KE15LlVOSU1QTEVNRU5URUQsIlVpbnQ4QXJyYXlzIGFyZSBub3QgYXZhaWxhYmxlIGluIHRoaXMgZW52aXJvbm1lbnQuIil9ZnVuY3Rpb24gX1IoKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIGF0b2IpdGhyb3cgbmV3IEZ5KE15LlVOSU1QTEVNRU5URUQsIkJsb2JzIGFyZSB1bmF2YWlsYWJsZSBpbiBGaXJlc3RvcmUgaW4gdGhpcyBlbnZpcm9ubWVudC4iKX12YXIgSVIsVFI9KFJSLmZyb21CYXNlNjRTdHJpbmc9ZnVuY3Rpb24odCl7cmV0dXJuIF9SKCksbmV3IFJSKFNBLmZyb21CYXNlNjRTdHJpbmcodCkpfSxSUi5mcm9tVWludDhBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4gd1IoKSxuZXcgUlIoU0EuZnJvbVVpbnQ4QXJyYXkodCkpfSxSUi5wcm90b3R5cGUudG9CYXNlNjQ9ZnVuY3Rpb24oKXtyZXR1cm4gX1IoKSx0aGlzLl9kZWxlZ2F0ZS50b0Jhc2U2NCgpfSxSUi5wcm90b3R5cGUudG9VaW50OEFycmF5PWZ1bmN0aW9uKCl7cmV0dXJuIHdSKCksdGhpcy5fZGVsZWdhdGUudG9VaW50OEFycmF5KCl9LFJSLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0VxdWFsKHQuX2RlbGVnYXRlKX0sUlIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIkJsb2IoYmFzZTY0OiAiK3RoaXMudG9CYXNlNjQoKSsiKSJ9LFJSKSxFUj0oa1IucHJvdG90eXBlLmVuYWJsZUluZGV4ZWREYlBlcnNpc3RlbmNlPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7VEEodD1ZTih0LHlBKSk7dmFyIG49d0EodCkscj10Ll9mcmVlemVTZXR0aW5ncygpLHQ9bmV3IHJOO3JldHVybiBJQShuLHQsbmV3IGVOKHQsci5jYWNoZVNpemVCeXRlcyxudWxsPT1lP3ZvaWQgMDplLmZvcmNlT3duZXJzaGlwKSl9KHQuX2RlbGVnYXRlLHtmb3JjZU93bmVyc2hpcDplfSl9LGtSLnByb3RvdHlwZS5lbmFibGVNdWx0aVRhYkluZGV4ZWREYlBlcnNpc3RlbmNlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbih0KXtUQSh0PVlOKHQseUEpKTt2YXIgZT13QSh0KSxuPXQuX2ZyZWV6ZVNldHRpbmdzKCksdD1uZXcgck47cmV0dXJuIElBKGUsdCxuZXcgbk4odCxuLmNhY2hlU2l6ZUJ5dGVzKSl9KHQuX2RlbGVnYXRlKX0sa1IucHJvdG90eXBlLmNsZWFySW5kZXhlZERiUGVyc2lzdGVuY2U9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3ZhciB0PXRoaXM7aWYobi5faW5pdGlhbGl6ZWQmJiFuLl90ZXJtaW5hdGVkKXRocm93IG5ldyBGeShNeS5GQUlMRURfUFJFQ09ORElUSU9OLCJQZXJzaXN0ZW5jZSBjYW4gb25seSBiZSBjbGVhcmVkIGJlZm9yZSBhIEZpcmVzdG9yZSBpbnN0YW5jZSBpcyBpbml0aWFsaXplZCBvciBhZnRlciBpdCBpcyB0ZXJtaW5hdGVkLiIpO3ZhciByPW5ldyBhSTtyZXR1cm4gbi5fcXVldWUuZW5xdWV1ZUFuZEZvcmdldEV2ZW5XaGlsZVJlc3RyaWN0ZWQoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdC50cnlzLnB1c2goWzAsMiwsM10pLFs0LGZ1bmN0aW9uKG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBoSS55dCgpPyhlPW4rIm1haW4iLFs0LGhJLmRlbGV0ZShlKV0pOlsyLFByb21pc2UucmVzb2x2ZSgpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfShKVChuLl9kYXRhYmFzZUlkLG4uX3BlcnNpc3RlbmNlS2V5KSldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCksci5yZXNvbHZlKCksWzMsM107Y2FzZSAyOnJldHVybiBlPXQuc2VudCgpLHIucmVqZWN0KGUpLFszLDNdO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX0pLHIucHJvbWlzZX0odC5fZGVsZWdhdGUpfSxrUiksU1I9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBUi5wcm90b3R5cGUsIl9kYXRhYmFzZUlkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLl9kYXRhYmFzZUlkfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLEFSLnByb3RvdHlwZS5zZXR0aW5ncz1mdW5jdGlvbih0KXt0Lm1lcmdlJiZkZWxldGUodD1PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdGhpcy5fZGVsZWdhdGUuX2dldFNldHRpbmdzKCkpLHQpKS5tZXJnZSx0aGlzLl9kZWxlZ2F0ZS5fc2V0U2V0dGluZ3ModCl9LEFSLnByb3RvdHlwZS51c2VFbXVsYXRvcj1mdW5jdGlvbih0LGUpe3ZhciBuLHI7bj10aGlzLl9kZWxlZ2F0ZSxyPXQsdD1lLCJmaXJlc3RvcmUuZ29vZ2xlYXBpcy5jb20iIT09KGU9KG49WU4obixaTikpLl9nZXRTZXR0aW5ncygpKS5ob3N0JiZlLmhvc3QhPT1yJiZLeSgiSG9zdCBoYXMgYmVlbiBzZXQgaW4gYm90aCBzZXR0aW5ncygpIGFuZCB1c2VFbXVsYXRvcigpLCBlbXVsYXRvciBob3N0IHdpbGwgYmUgdXNlZCIpLG4uX3NldFNldHRpbmdzKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7aG9zdDpyKyI6Iit0LHNzbDohMX0pKX0sQVIucHJvdG90eXBlLmVuYWJsZU5ldHdvcms9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oaSl7dmFyIHQ9dGhpcztyZXR1cm4gaS5hc3luY1F1ZXVlLmVucXVldWUoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LFROKGkpXTtjYXNlIDE6cmV0dXJuIG49dC5zZW50KCksWzQsU04oaSldO2Nhc2UgMjpyZXR1cm4gcj10LnNlbnQoKSxbMiwobi5zZXROZXR3b3JrRW5hYmxlZCghMCksKGU9cikuJHIuZGVsZXRlKDApLExTKGUpKV19dmFyIGV9KX0pfSl9KHdBKFlOKHRoaXMuX2RlbGVnYXRlLHlBKSkpfSxBUi5wcm90b3R5cGUuZGlzYWJsZU5ldHdvcms9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24ocil7dmFyIHQ9dGhpcztyZXR1cm4gci5hc3luY1F1ZXVlLmVucXVldWUoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LFROKHIpXTtjYXNlIDE6cmV0dXJuIGU9dC5zZW50KCksWzQsU04ocildO2Nhc2UgMjpyZXR1cm4gbj10LnNlbnQoKSxbMiwoZS5zZXROZXR3b3JrRW5hYmxlZCghMSksZnVuY3Rpb24obil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKGU9bikuJHIuYWRkKDApLFs0LE1TKGUpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLGUuQnIuc2V0KCJPZmZsaW5lIiksWzJdfX0pfSl9KG4pKV19fSl9KX0pfSh3QShZTih0aGlzLl9kZWxlZ2F0ZSx5QSkpKX0sQVIucHJvdG90eXBlLmVuYWJsZVBlcnNpc3RlbmNlPWZ1bmN0aW9uKHQpe3ZhciBlPSExLG49ITE7cmV0dXJuIHQmJkhOKCJzeW5jaHJvbml6ZVRhYnMiLGU9ISF0LnN5bmNocm9uaXplVGFicywiZXhwZXJpbWVudGFsRm9yY2VPd25pbmdUYWIiLG49ISF0LmV4cGVyaW1lbnRhbEZvcmNlT3duaW5nVGFiKSxlP3RoaXMuSmMuZW5hYmxlTXVsdGlUYWJJbmRleGVkRGJQZXJzaXN0ZW5jZSh0aGlzKTp0aGlzLkpjLmVuYWJsZUluZGV4ZWREYlBlcnNpc3RlbmNlKHRoaXMsbil9LEFSLnByb3RvdHlwZS5jbGVhclBlcnNpc3RlbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSmMuY2xlYXJJbmRleGVkRGJQZXJzaXN0ZW5jZSh0aGlzKX0sQVIucHJvdG90eXBlLnRlcm1pbmF0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlljJiYodGhpcy5ZYy5fcmVtb3ZlU2VydmljZUluc3RhbmNlKCJmaXJlc3RvcmUiKSx0aGlzLlljLl9yZW1vdmVTZXJ2aWNlSW5zdGFuY2UoImZpcmVzdG9yZS1leHAiKSksdGhpcy5fZGVsZWdhdGUuX2RlbGV0ZSgpfSxBUi5wcm90b3R5cGUud2FpdEZvclBlbmRpbmdXcml0ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24obil7dmFyIHQ9dGhpcyxyPW5ldyBhSTtyZXR1cm4gbi5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gJGkodCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1NQyxbNCxDTihuKV07Y2FzZSAxOnJldHVyblsyLGUuYXBwbHkodm9pZCAwLFt0LnNlbnQoKSxyXSldfX0pfSl9KSxyLnByb21pc2V9KHdBKFlOKHRoaXMuX2RlbGVnYXRlLHlBKSkpfSxBUi5wcm90b3R5cGUub25TbmFwc2hvdHNJblN5bmM9ZnVuY3Rpb24odCl7cmV0dXJuIGU9dGhpcy5fZGVsZWdhdGUsdD10LGZ1bmN0aW9uKG4sdCl7dmFyIGU9dGhpcyxyPW5ldyBjTih0KTtyZXR1cm4gbi5hc3luY1F1ZXVlLmVucXVldWVBbmRGb3JnZXQoZnVuY3Rpb24oKXtyZXR1cm4gJGkoZSx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1mdW5jdGlvbih0LGUpe3QuR3IuYWRkKGUpLGUubmV4dCgpfSxbNCxOTihuKV07Y2FzZSAxOnJldHVyblsyLGUuYXBwbHkodm9pZCAwLFt0LnNlbnQoKSxyXSldfX0pfSl9KSxmdW5jdGlvbigpe3IuV28oKSxuLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaShlLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPWZ1bmN0aW9uKHQsZSl7dC5Hci5kZWxldGUoZSl9LFs0LE5OKG4pXTtjYXNlIDE6cmV0dXJuWzIsZS5hcHBseSh2b2lkIDAsW3Quc2VudCgpLHJdKV19fSl9KX0pfX0od0EoWU4oZSx5QSkpLGRBKHQpP3Q6e25leHQ6dH0pO3ZhciBlfSxPYmplY3QuZGVmaW5lUHJvcGVydHkoQVIucHJvdG90eXBlLCJhcHAiLHtnZXQ6ZnVuY3Rpb24oKXtpZighdGhpcy5ZYyl0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwiRmlyZXN0b3JlIHdhcyBub3QgaW5pdGlhbGl6ZWQgdXNpbmcgdGhlIEZpcmViYXNlIFNESy4gJ2FwcCcgaXMgbm90IGF2YWlsYWJsZSIpO3JldHVybiB0aGlzLlljfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLEFSLnByb3RvdHlwZS5jb2xsZWN0aW9uPWZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4gbmV3IFlSKHRoaXMsdUEodGhpcy5fZGVsZWdhdGUsdCkpfWNhdGNoKHQpe3Rocm93IGpSKHQsImNvbGxlY3Rpb24oKSIsIkZpcmVzdG9yZS5jb2xsZWN0aW9uKCkiKX19LEFSLnByb3RvdHlwZS5kb2M9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBuZXcgRlIodGhpcyxjQSh0aGlzLl9kZWxlZ2F0ZSx0KSl9Y2F0Y2godCl7dGhyb3cgalIodCwiZG9jKCkiLCJGaXJlc3RvcmUuZG9jKCkiKX19LEFSLnByb3RvdHlwZS5jb2xsZWN0aW9uR3JvdXA9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBuZXcgR1IodGhpcyxmdW5jdGlvbih0LGUpe2lmKHQ9WU4odCxaTiksS04oImNvbGxlY3Rpb25Hcm91cCIsImNvbGxlY3Rpb24gaWQiLGUpLDA8PWUuaW5kZXhPZigiLyIpKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIGNvbGxlY3Rpb24gSUQgJyIrZSsiJyBwYXNzZWQgdG8gZnVuY3Rpb24gY29sbGVjdGlvbkdyb3VwKCkuIENvbGxlY3Rpb24gSURzIG11c3Qgbm90IGNvbnRhaW4gJy8nLiIpO3JldHVybiBuZXcgZUEodCxudWxsLChlPWUsbmV3IFNiKGFtLmVtcHR5UGF0aCgpLGUpKSl9KHRoaXMuX2RlbGVnYXRlLHQpKX1jYXRjaCh0KXt0aHJvdyBqUih0LCJjb2xsZWN0aW9uR3JvdXAoKSIsIkZpcmVzdG9yZS5jb2xsZWN0aW9uR3JvdXAoKSIpfX0sQVIucHJvdG90eXBlLnJ1blRyYW5zYWN0aW9uPWZ1bmN0aW9uKGUpe3ZhciBuLHI9dGhpcztyZXR1cm4gZnVuY3Rpb24obixyKXt2YXIgdD10aGlzLGk9bmV3IGFJO3JldHVybiBuLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LElOKG4pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuZGF0YXN0b3JlfSldO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKSxuZXcgZk4obi5hc3luY1F1ZXVlLGUscixpKS5ydW4oKSxbMl19fSl9KX0pLGkucHJvbWlzZX0od0Eobj10aGlzLl9kZWxlZ2F0ZSksZnVuY3Rpb24odCl7cmV0dXJuIHQ9bmV3IHlSKG4sdCksZShuZXcgUFIocix0KSl9KX0sQVIucHJvdG90eXBlLmJhdGNoPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gd0EodGhpcy5fZGVsZWdhdGUpLG5ldyBPUihuZXcgb1IodGhpcy5fZGVsZWdhdGUsZnVuY3Rpb24odCl7cmV0dXJuIGRSKGUuX2RlbGVnYXRlLHQpfSkpfSxBUi5wcm90b3R5cGUubG9hZEJ1bmRsZT1mdW5jdGlvbih0KXt0aHJvdyBuZXcgRnkoTXkuRkFJTEVEX1BSRUNPTkRJVElPTiwnImxvYWRCdW5kbGUoKSIgZG9lcyBub3QgZXhpc3QsIGhhdmUgeW91IGltcG9ydGVkICJmaXJlYmFzZS9maXJlc3RvcmUvYnVuZGxlIj8nKX0sQVIucHJvdG90eXBlLm5hbWVkUXVlcnk9ZnVuY3Rpb24odCl7dGhyb3cgbmV3IEZ5KE15LkZBSUxFRF9QUkVDT05ESVRJT04sJyJuYW1lZFF1ZXJ5KCkiIGRvZXMgbm90IGV4aXN0LCBoYXZlIHlvdSBpbXBvcnRlZCAiZmlyZWJhc2UvZmlyZXN0b3JlL2J1bmRsZSI/Jyl9LEFSKSxDUj0oWGkoTlIsSVI9U24pLE5SLnByb3RvdHlwZS5jb252ZXJ0Qnl0ZXM9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBUUihuZXcgU0EodCkpfSxOUi5wcm90b3R5cGUuY29udmVydFJlZmVyZW5jZT1mdW5jdGlvbih0KXt0PXRoaXMuY29udmVydERvY3VtZW50S2V5KHQsdGhpcy5maXJlc3RvcmUuX2RhdGFiYXNlSWQpO3JldHVybiBGUi5YYyh0LHRoaXMuZmlyZXN0b3JlLG51bGwpfSxOUik7ZnVuY3Rpb24gTlIodCl7dmFyIGU9dGhpcztyZXR1cm4oZT1JUi5jYWxsKHRoaXMpfHx0aGlzKS5maXJlc3RvcmU9dCxlfWZ1bmN0aW9uIEFSKHQsZSxuKXt2YXIgcj10aGlzO3RoaXMuX2RlbGVnYXRlPWUsdGhpcy5KYz1uLHRoaXMuSU5URVJOQUw9e2RlbGV0ZTpmdW5jdGlvbigpe3JldHVybiByLnRlcm1pbmF0ZSgpfX0sdCBpbnN0YW5jZW9mIE9OfHwodGhpcy5ZYz10KX1mdW5jdGlvbiBrUigpe31mdW5jdGlvbiBSUih0KXt0aGlzLl9kZWxlZ2F0ZT10fXZhciBQUj0oTVIucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLG49blAodCk7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmdldChuKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgV1IoZS5fZmlyZXN0b3JlLG5ldyBDayhlLl9maXJlc3RvcmUuX2RlbGVnYXRlLGUuX3VzZXJEYXRhV3JpdGVyLHQuX2tleSx0Ll9kb2N1bWVudCx0Lm1ldGFkYXRhLG4uX2NvbnZlcnRlcikpfSl9LE1SLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxlLG4pe3Q9blAodCk7cmV0dXJuIG4/KFdOKCJUcmFuc2FjdGlvbi5zZXQiLG4pLHRoaXMuX2RlbGVnYXRlLnNldCh0LGUsbikpOnRoaXMuX2RlbGVnYXRlLnNldCh0LGUpLHRoaXN9LE1SLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcj1bXSxpPTM7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktM109YXJndW1lbnRzW2ldO3ZhciBvPW5QKHQpO3JldHVybiAyPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLl9kZWxlZ2F0ZS51cGRhdGUobyxlKToodD10aGlzLl9kZWxlZ2F0ZSkudXBkYXRlLmFwcGx5KHQsbm8oW28sZSxuXSxyKSksdGhpc30sTVIucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXt0PW5QKHQpO3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5kZWxldGUodCksdGhpc30sTVIpLE9SPShMUi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSxuKXt0PW5QKHQpO3JldHVybiBuPyhXTigiV3JpdGVCYXRjaC5zZXQiLG4pLHRoaXMuX2RlbGVnYXRlLnNldCh0LGUsbikpOnRoaXMuX2RlbGVnYXRlLnNldCh0LGUpLHRoaXN9LExSLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgcj1bXSxpPTM7aTxhcmd1bWVudHMubGVuZ3RoO2krKylyW2ktM109YXJndW1lbnRzW2ldO3ZhciBvPW5QKHQpO3JldHVybiAyPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLl9kZWxlZ2F0ZS51cGRhdGUobyxlKToodD10aGlzLl9kZWxlZ2F0ZSkudXBkYXRlLmFwcGx5KHQsbm8oW28sZSxuXSxyKSksdGhpc30sTFIucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbih0KXt0PW5QKHQpO3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5kZWxldGUodCksdGhpc30sTFIucHJvdG90eXBlLmNvbW1pdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5jb21taXQoKX0sTFIpLERSPSh4Ui5wcm90b3R5cGUuZnJvbUZpcmVzdG9yZT1mdW5jdGlvbih0LGUpe3Q9bmV3IE5rKHRoaXMuX2ZpcmVzdG9yZS5fZGVsZWdhdGUsdGhpcy5fdXNlckRhdGFXcml0ZXIsdC5fa2V5LHQuX2RvY3VtZW50LHQubWV0YWRhdGEsbnVsbCk7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmZyb21GaXJlc3RvcmUobmV3IEhSKHRoaXMuX2ZpcmVzdG9yZSx0KSxudWxsIT1lP2U6e30pfSx4Ui5wcm90b3R5cGUudG9GaXJlc3RvcmU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gZT90aGlzLl9kZWxlZ2F0ZS50b0ZpcmVzdG9yZSh0LGUpOnRoaXMuX2RlbGVnYXRlLnRvRmlyZXN0b3JlKHQpfSx4Ui5aYz1mdW5jdGlvbih0LGUpe3ZhciBuPXhSLnR1LHI9bi5nZXQodCk7cnx8KHI9bmV3IFdlYWtNYXAsbi5zZXQodCxyKSk7bj1yLmdldChlKTtyZXR1cm4gbnx8KG49bmV3IHhSKHQsbmV3IENSKHQpLGUpLHIuc2V0KGUsbikpLG59LHhSKTtmdW5jdGlvbiB4Uih0LGUsbil7dGhpcy5fZmlyZXN0b3JlPXQsdGhpcy5fdXNlckRhdGFXcml0ZXI9ZSx0aGlzLl9kZWxlZ2F0ZT1ufWZ1bmN0aW9uIExSKHQpe3RoaXMuX2RlbGVnYXRlPXR9ZnVuY3Rpb24gTVIodCxlKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl9kZWxlZ2F0ZT1lLHRoaXMuX3VzZXJEYXRhV3JpdGVyPW5ldyBDUih0KX1EUi50dT1uZXcgV2Vha01hcDt2YXIgRlI9KFVSLmV1PWZ1bmN0aW9uKHQsZSxuKXtpZih0Lmxlbmd0aCUyIT0wKXRocm93IG5ldyBGeShNeS5JTlZBTElEX0FSR1VNRU5ULCJJbnZhbGlkIGRvY3VtZW50IHJlZmVyZW5jZS4gRG9jdW1lbnQgcmVmZXJlbmNlcyBtdXN0IGhhdmUgYW4gZXZlbiBudW1iZXIgb2Ygc2VnbWVudHMsIGJ1dCAiK3QuY2Fub25pY2FsU3RyaW5nKCkrIiBoYXMgIit0Lmxlbmd0aCk7cmV0dXJuIG5ldyBVUihlLG5ldyB0QShlLl9kZWxlZ2F0ZSxuLG5ldyBDbSh0KSkpfSxVUi5YYz1mdW5jdGlvbih0LGUsbil7cmV0dXJuIG5ldyBVUihlLG5ldyB0QShlLl9kZWxlZ2F0ZSxuLHQpKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KFVSLnByb3RvdHlwZSwiaWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuaWR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFVSLnByb3RvdHlwZSwicGFyZW50Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBZUih0aGlzLmZpcmVzdG9yZSx0aGlzLl9kZWxlZ2F0ZS5wYXJlbnQpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUi5wcm90b3R5cGUsInBhdGgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUucGF0aH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxVUi5wcm90b3R5cGUuY29sbGVjdGlvbj1mdW5jdGlvbih0KXt0cnl7cmV0dXJuIG5ldyBZUih0aGlzLmZpcmVzdG9yZSx1QSh0aGlzLl9kZWxlZ2F0ZSx0KSl9Y2F0Y2godCl7dGhyb3cgalIodCwiY29sbGVjdGlvbigpIiwiRG9jdW1lbnRSZWZlcmVuY2UuY29sbGVjdGlvbigpIil9fSxVUi5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4odD1abyh0KSlpbnN0YW5jZW9mIHRBJiZoQSh0aGlzLl9kZWxlZ2F0ZSx0KX0sVVIucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LGUpe2U9V04oIkRvY3VtZW50UmVmZXJlbmNlLnNldCIsZSk7dHJ5e3JldHVybiBmdW5jdGlvbih0LGUsbil7dD1ZTih0LHRBKTt2YXIgcj1ZTih0LmZpcmVzdG9yZSx5QSksZT1uUih0Ll9jb252ZXJ0ZXIsZSxuKTtyZXR1cm4gZFIocixbQkEoVkEociksInNldERvYyIsdC5fa2V5LGUsbnVsbCE9PXQuX2NvbnZlcnRlcixuKS50b011dGF0aW9uKHQuX2tleSxjdy5ub25lKCkpXSl9KHRoaXMuX2RlbGVnYXRlLHQsZSl9Y2F0Y2godCl7dGhyb3cgalIodCwic2V0RG9jKCkiLCJEb2N1bWVudFJlZmVyZW5jZS5zZXQoKSIpfX0sVVIucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj1bXSxyPTI7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyluW3ItMl09YXJndW1lbnRzW3JdO3RyeXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndGg/ZlIodGhpcy5fZGVsZWdhdGUsdCk6ZlIuYXBwbHkodm9pZCAwLG5vKFt0aGlzLl9kZWxlZ2F0ZSx0LGVdLG4pKX1jYXRjaCh0KXt0aHJvdyBqUih0LCJ1cGRhdGVEb2MoKSIsIkRvY3VtZW50UmVmZXJlbmNlLnVwZGF0ZSgpIil9fSxVUi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKCl7cmV0dXJuIGRSKFlOKCh0PXRoaXMuX2RlbGVnYXRlKS5maXJlc3RvcmUseUEpLFtuZXcgQXcodC5fa2V5LGN3Lm5vbmUoKSldKTt2YXIgdH0sVVIucHJvdG90eXBlLm9uU25hcHNob3Q9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcyx0PVtdLG49MDtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXRbbl09YXJndW1lbnRzW25dO3ZhciByPXFSKHQpLGk9VlIodCxmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFdSKGUuZmlyZXN0b3JlLG5ldyBDayhlLmZpcmVzdG9yZS5fZGVsZWdhdGUsZS5fdXNlckRhdGFXcml0ZXIsdC5fa2V5LHQuX2RvY3VtZW50LHQubWV0YWRhdGEsZS5fZGVsZWdhdGUuX2NvbnZlcnRlcikpfSk7cmV0dXJuIHBSKHRoaXMuX2RlbGVnYXRlLHIsaSl9LFVSLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4oImNhY2hlIj09PShudWxsPT10P3ZvaWQgMDp0LnNvdXJjZSk/ZnVuY3Rpb24oZSl7ZT1ZTihlLHRBKTt2YXIgbj1ZTihlLmZpcmVzdG9yZSx5QSksdD13QShuKSxyPW5ldyBoUihuKTtyZXR1cm4gZnVuY3Rpb24obixyKXt2YXIgdD10aGlzLGk9bmV3IGFJO3JldHVybiBuLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPWZ1bmN0aW9uKG8scyxhKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHIsaTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCwyLCwzXSksWzQsKGU9cywobj1vKS5wZXJzaXN0ZW5jZS5ydW5UcmFuc2FjdGlvbigicmVhZCBkb2N1bWVudCIsInJlYWRvbmx5IixmdW5jdGlvbih0KXtyZXR1cm4gbi5Nbi5tbih0LGUpfSkpXTtjYXNlIDE6cmV0dXJuKGk9dC5zZW50KCkpLmlzRm91bmREb2N1bWVudCgpP2EucmVzb2x2ZShpKTppLmlzTm9Eb2N1bWVudCgpP2EucmVzb2x2ZShudWxsKTphLnJlamVjdChuZXcgRnkoTXkuVU5BVkFJTEFCTEUsIkZhaWxlZCB0byBnZXQgZG9jdW1lbnQgZnJvbSBjYWNoZS4gKEhvd2V2ZXIsIHRoaXMgZG9jdW1lbnQgbWF5IGV4aXN0IG9uIHRoZSBzZXJ2ZXIuIFJ1biBhZ2FpbiB3aXRob3V0IHNldHRpbmcgJ3NvdXJjZScgaW4gdGhlIEdldE9wdGlvbnMgdG8gYXR0ZW1wdCB0byByZXRyaWV2ZSB0aGUgZG9jdW1lbnQgZnJvbSB0aGUgc2VydmVyLikiKSksWzMsM107Y2FzZSAyOnJldHVybiByPXQuc2VudCgpLGk9bkMociwiRmFpbGVkIHRvIGdldCBkb2N1bWVudCAnIitzKyIgZnJvbSBjYWNoZSIpLGEucmVqZWN0KGkpLFszLDNdO2Nhc2UgMzpyZXR1cm5bMl19dmFyIGUsbn0pfSl9LFs0LEVOKG4pXTtjYXNlIDE6cmV0dXJuWzIsZS5hcHBseSh2b2lkIDAsW3Quc2VudCgpLHIsaV0pXX19KX0pfSksaS5wcm9taXNlfSh0LGUuX2tleSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IENrKG4scixlLl9rZXksdCxuZXcgU2sobnVsbCE9PXQmJnQuaGFzTG9jYWxNdXRhdGlvbnMsITApLGUuX2NvbnZlcnRlcil9KX06InNlcnZlciI9PT0obnVsbD09dD92b2lkIDA6dC5zb3VyY2UpP2Z1bmN0aW9uKGUpe2U9WU4oZSx0QSk7dmFyIG49WU4oZS5maXJlc3RvcmUseUEpO3JldHVybiBBTih3QShuKSxlLl9rZXkse3NvdXJjZToic2VydmVyIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHZSKG4sZSx0KX0pfTpmdW5jdGlvbihlKXtlPVlOKGUsdEEpO3ZhciBuPVlOKGUuZmlyZXN0b3JlLHlBKTtyZXR1cm4gQU4od0EobiksZS5fa2V5KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB2UihuLGUsdCl9KX0pKHRoaXMuX2RlbGVnYXRlKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgV1IoZS5maXJlc3RvcmUsbmV3IENrKGUuZmlyZXN0b3JlLl9kZWxlZ2F0ZSxlLl91c2VyRGF0YVdyaXRlcix0Ll9rZXksdC5fZG9jdW1lbnQsdC5tZXRhZGF0YSxlLl9kZWxlZ2F0ZS5fY29udmVydGVyKSl9KX0sVVIucHJvdG90eXBlLndpdGhDb252ZXJ0ZXI9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBVUih0aGlzLmZpcmVzdG9yZSx0P3RoaXMuX2RlbGVnYXRlLndpdGhDb252ZXJ0ZXIoRFIuWmModGhpcy5maXJlc3RvcmUsdCkpOnRoaXMuX2RlbGVnYXRlLndpdGhDb252ZXJ0ZXIobnVsbCkpfSxVUik7ZnVuY3Rpb24gVVIodCxlKXt0aGlzLmZpcmVzdG9yZT10LHRoaXMuX2RlbGVnYXRlPWUsdGhpcy5fdXNlckRhdGFXcml0ZXI9bmV3IENSKHQpfWZ1bmN0aW9uIGpSKHQsZSxuKXtyZXR1cm4gdC5tZXNzYWdlPXQubWVzc2FnZS5yZXBsYWNlKGUsbiksdH1mdW5jdGlvbiBxUih0KXtmb3IodmFyIGU9MCxuPXQ7ZTxuLmxlbmd0aDtlKyspe3ZhciByPW5bZV07aWYoIm9iamVjdCI9PXR5cGVvZiByJiYhZEEocikpcmV0dXJuIHJ9cmV0dXJue319ZnVuY3Rpb24gVlIodCxlKXt2YXIgbjtyZXR1cm57bmV4dDpmdW5jdGlvbih0KXtuLm5leHQmJm4ubmV4dChlKHQpKX0sZXJyb3I6bnVsbD09PSh0PShuPWRBKHRbMF0pP3RbMF06ZEEodFsxXSk/dFsxXToiZnVuY3Rpb24iPT10eXBlb2YgdFswXT97bmV4dDp0WzBdLGVycm9yOnRbMV0sY29tcGxldGU6dFsyXX06e25leHQ6dFsxXSxlcnJvcjp0WzJdLGNvbXBsZXRlOnRbM119KS5lcnJvcil8fHZvaWQgMD09PXQ/dm9pZCAwOnQuYmluZChuKSxjb21wbGV0ZTpudWxsPT09KHQ9bi5jb21wbGV0ZSl8fHZvaWQgMD09PXQ/dm9pZCAwOnQuYmluZChuKX19dmFyIEJSLEtSLFdSPShPYmplY3QuZGVmaW5lUHJvcGVydHkoZVAucHJvdG90eXBlLCJyZWYiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEZSKHRoaXMuX2ZpcmVzdG9yZSx0aGlzLl9kZWxlZ2F0ZS5yZWYpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlUC5wcm90b3R5cGUsImlkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlkfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlUC5wcm90b3R5cGUsIm1ldGFkYXRhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLm1ldGFkYXRhfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlUC5wcm90b3R5cGUsImV4aXN0cyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxlUC5wcm90b3R5cGUuZGF0YT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGF0YSh0KX0sZVAucHJvdG90eXBlLmdldD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5nZXQodCxlKX0sZVAucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIERrKHRoaXMuX2RlbGVnYXRlLHQuX2RlbGVnYXRlKX0sZVApLEhSPShYaSh0UCxLUj1XUiksdFAucHJvdG90eXBlLmRhdGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmRhdGEodCl9LHRQKSxHUj0oWlIucHJvdG90eXBlLndoZXJlPWZ1bmN0aW9uKHQsZSxuKXt0cnl7cmV0dXJuIG5ldyBaUih0aGlzLmZpcmVzdG9yZSxMayh0aGlzLl9kZWxlZ2F0ZSwocj1uLGk9ZSxvPUlrKCJ3aGVyZSIsdCksbmV3IFZrKG8saSxyKSkpKX1jYXRjaCh0KXt0aHJvdyBqUih0LC8ob3JkZXJCeXx3aGVyZSlcKFwpLywiUXVlcnkuJDEoKSIpfXZhciByLGksb30sWlIucHJvdG90eXBlLm9yZGVyQnk9ZnVuY3Rpb24odCxlKXt0cnl7cmV0dXJuIG5ldyBaUih0aGlzLmZpcmVzdG9yZSxMayh0aGlzLl9kZWxlZ2F0ZSwobj12b2lkIDA9PT1lPyJhc2MiOmUscj1Jaygib3JkZXJCeSIsdCksbmV3IEJrKHIsbikpKSl9Y2F0Y2godCl7dGhyb3cgalIodCwvKG9yZGVyQnl8d2hlcmUpXChcKS8sIlF1ZXJ5LiQxKCkiKX12YXIgbixyfSxaUi5wcm90b3R5cGUubGltaXQ9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBuZXcgWlIodGhpcy5maXJlc3RvcmUsTGsodGhpcy5fZGVsZWdhdGUsKFhOKCJsaW1pdCIsZT10KSxuZXcgS2soImxpbWl0IixlLCJGIikpKSl9Y2F0Y2godCl7dGhyb3cgalIodCwibGltaXQoKSIsIlF1ZXJ5LmxpbWl0KCkiKX12YXIgZX0sWlIucHJvdG90eXBlLmxpbWl0VG9MYXN0PWZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4gbmV3IFpSKHRoaXMuZmlyZXN0b3JlLExrKHRoaXMuX2RlbGVnYXRlLChYTigibGltaXRUb0xhc3QiLGU9dCksbmV3IEtrKCJsaW1pdFRvTGFzdCIsZSwiTCIpKSkpfWNhdGNoKHQpe3Rocm93IGpSKHQsImxpbWl0VG9MYXN0KCkiLCJRdWVyeS5saW1pdFRvTGFzdCgpIil9dmFyIGV9LFpSLnByb3RvdHlwZS5zdGFydEF0PWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3RyeXtyZXR1cm4gbmV3IFpSKHRoaXMuZmlyZXN0b3JlLExrKHRoaXMuX2RlbGVnYXRlLGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3JldHVybiBuZXcgV2soInN0YXJ0QXQiLHQsITApfS5hcHBseSh2b2lkIDAsdCkpKX1jYXRjaCh0KXt0aHJvdyBqUih0LCJzdGFydEF0KCkiLCJRdWVyeS5zdGFydEF0KCkiKX19LFpSLnByb3RvdHlwZS5zdGFydEFmdGVyPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3RyeXtyZXR1cm4gbmV3IFpSKHRoaXMuZmlyZXN0b3JlLExrKHRoaXMuX2RlbGVnYXRlLGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3JldHVybiBuZXcgV2soInN0YXJ0QWZ0ZXIiLHQsITEpfS5hcHBseSh2b2lkIDAsdCkpKX1jYXRjaCh0KXt0aHJvdyBqUih0LCJzdGFydEFmdGVyKCkiLCJRdWVyeS5zdGFydEFmdGVyKCkiKX19LFpSLnByb3RvdHlwZS5lbmRCZWZvcmU9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dHJ5e3JldHVybiBuZXcgWlIodGhpcy5maXJlc3RvcmUsTGsodGhpcy5fZGVsZWdhdGUsZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07cmV0dXJuIG5ldyBIaygiZW5kQmVmb3JlIix0LCEwKX0uYXBwbHkodm9pZCAwLHQpKSl9Y2F0Y2godCl7dGhyb3cgalIodCwiZW5kQmVmb3JlKCkiLCJRdWVyeS5lbmRCZWZvcmUoKSIpfX0sWlIucHJvdG90eXBlLmVuZEF0PWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3RyeXtyZXR1cm4gbmV3IFpSKHRoaXMuZmlyZXN0b3JlLExrKHRoaXMuX2RlbGVnYXRlLGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3JldHVybiBuZXcgSGsoImVuZEF0Iix0LCExKX0uYXBwbHkodm9pZCAwLHQpKSl9Y2F0Y2godCl7dGhyb3cgalIodCwiZW5kQXQoKSIsIlF1ZXJ5LmVuZEF0KCkiKX19LFpSLnByb3RvdHlwZS5pc0VxdWFsPWZ1bmN0aW9uKHQpe3JldHVybiBsQSh0aGlzLl9kZWxlZ2F0ZSx0Ll9kZWxlZ2F0ZSl9LFpSLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4oImNhY2hlIj09PShudWxsPT10P3ZvaWQgMDp0LnNvdXJjZSk/ZnVuY3Rpb24oZSl7ZT1ZTihlLGVBKTt2YXIgbj1ZTihlLmZpcmVzdG9yZSx5QSksdD13QShuKSxyPW5ldyBoUihuKTtyZXR1cm4gZnVuY3Rpb24obixyKXt2YXIgdD10aGlzLGk9bmV3IGFJO3JldHVybiBuLmFzeW5jUXVldWUuZW5xdWV1ZUFuZEZvcmdldChmdW5jdGlvbigpe3JldHVybiAkaSh0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPWZ1bmN0aW9uKGksbyxzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHQudHJ5cy5wdXNoKFswLDIsLDNdKSxbNCx2RShpLG8sITApXTtjYXNlIDE6cmV0dXJuIHI9dC5zZW50KCksZT1uZXcgU0MobyxyLkJuKSxuPWUuX28oci5kb2N1bWVudHMpLG49ZS5hcHBseUNoYW5nZXMobiwhMSkscy5yZXNvbHZlKG4uc25hcHNob3QpLFszLDNdO2Nhc2UgMjpyZXR1cm4gbj10LnNlbnQoKSxyPW5DKG4sIkZhaWxlZCB0byBleGVjdXRlIHF1ZXJ5ICciK28rIiBhZ2FpbnN0IGNhY2hlIikscy5yZWplY3QociksWzMsM107Y2FzZSAzOnJldHVyblsyXX19KX0pfSxbNCxFTihuKV07Y2FzZSAxOnJldHVyblsyLGUuYXBwbHkodm9pZCAwLFt0LnNlbnQoKSxyLGldKV19fSl9KX0pLGkucHJvbWlzZX0odCxlLl9xdWVyeSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEFrKG4scixlLHQpfSl9OiJzZXJ2ZXIiPT09KG51bGw9PXQ/dm9pZCAwOnQuc291cmNlKT9mdW5jdGlvbihlKXtlPVlOKGUsZUEpO3ZhciBuPVlOKGUuZmlyZXN0b3JlLHlBKSx0PXdBKG4pLHI9bmV3IGhSKG4pO3JldHVybiBrTih0LGUuX3F1ZXJ5LHtzb3VyY2U6InNlcnZlciJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgQWsobixyLGUsdCl9KX06ZnVuY3Rpb24oZSl7ZT1ZTihlLGVBKTt2YXIgbj1ZTihlLmZpcmVzdG9yZSx5QSksdD13QShuKSxyPW5ldyBoUihuKTtyZXR1cm4geGsoZS5fcXVlcnkpLGtOKHQsZS5fcXVlcnkpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBBayhuLHIsZSx0KX0pfSkodGhpcy5fZGVsZWdhdGUpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBRUihlLmZpcmVzdG9yZSxuZXcgQWsoZS5maXJlc3RvcmUuX2RlbGVnYXRlLGUuX3VzZXJEYXRhV3JpdGVyLGUuX2RlbGVnYXRlLHQuX3NuYXBzaG90KSl9KX0sWlIucHJvdG90eXBlLm9uU25hcHNob3Q9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcyx0PVtdLG49MDtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXRbbl09YXJndW1lbnRzW25dO3ZhciByPXFSKHQpLGk9VlIodCxmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFFSKGUuZmlyZXN0b3JlLG5ldyBBayhlLmZpcmVzdG9yZS5fZGVsZWdhdGUsZS5fdXNlckRhdGFXcml0ZXIsZS5fZGVsZWdhdGUsdC5fc25hcHNob3QpKX0pO3JldHVybiBwUih0aGlzLl9kZWxlZ2F0ZSxyLGkpfSxaUi5wcm90b3R5cGUud2l0aENvbnZlcnRlcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IFpSKHRoaXMuZmlyZXN0b3JlLHQ/dGhpcy5fZGVsZWdhdGUud2l0aENvbnZlcnRlcihEUi5aYyh0aGlzLmZpcmVzdG9yZSx0KSk6dGhpcy5fZGVsZWdhdGUud2l0aENvbnZlcnRlcihudWxsKSl9LFpSKSx6Uj0oT2JqZWN0LmRlZmluZVByb3BlcnR5KCRSLnByb3RvdHlwZSwidHlwZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS50eXBlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSgkUi5wcm90b3R5cGUsImRvYyIse2dldDpmdW5jdGlvbigpe3JldHVybiBuZXcgSFIodGhpcy5fZmlyZXN0b3JlLHRoaXMuX2RlbGVnYXRlLmRvYyl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KCRSLnByb3RvdHlwZSwib2xkSW5kZXgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUub2xkSW5kZXh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KCRSLnByb3RvdHlwZSwibmV3SW5kZXgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUubmV3SW5kZXh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksJFIpLFFSPShPYmplY3QuZGVmaW5lUHJvcGVydHkoSlIucHJvdG90eXBlLCJxdWVyeSIse2dldDpmdW5jdGlvbigpe3JldHVybiBuZXcgR1IodGhpcy5fZmlyZXN0b3JlLHRoaXMuX2RlbGVnYXRlLnF1ZXJ5KX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoSlIucHJvdG90eXBlLCJtZXRhZGF0YSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5tZXRhZGF0YX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoSlIucHJvdG90eXBlLCJzaXplIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLnNpemV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KEpSLnByb3RvdHlwZSwiZW1wdHkiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuZW1wdHl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KEpSLnByb3RvdHlwZSwiZG9jcyIse2dldDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmRvY3MubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgSFIoZS5fZmlyZXN0b3JlLHQpfSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksSlIucHJvdG90eXBlLmRvY0NoYW5nZXM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5fZGVsZWdhdGUuZG9jQ2hhbmdlcyh0KS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG5ldyB6UihlLl9maXJlc3RvcmUsdCl9KX0sSlIucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO3RoaXMuX2RlbGVnYXRlLmZvckVhY2goZnVuY3Rpb24odCl7ZS5jYWxsKG4sbmV3IEhSKHIuX2ZpcmVzdG9yZSx0KSl9KX0sSlIucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIERrKHRoaXMuX2RlbGVnYXRlLHQuX2RlbGVnYXRlKX0sSlIpLFlSPShYaShYUixCUj1HUiksT2JqZWN0LmRlZmluZVByb3BlcnR5KFhSLnByb3RvdHlwZSwiaWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuaWR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFhSLnByb3RvdHlwZSwicGF0aCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5wYXRofSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShYUi5wcm90b3R5cGUsInBhcmVudCIse2dldDpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2RlbGVnYXRlLnBhcmVudDtyZXR1cm4gdD9uZXcgRlIodGhpcy5maXJlc3RvcmUsdCk6bnVsbH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxYUi5wcm90b3R5cGUuZG9jPWZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4gbmV3IEZSKHRoaXMuZmlyZXN0b3JlLHZvaWQgMD09PXQ/Y0EodGhpcy5fZGVsZWdhdGUpOmNBKHRoaXMuX2RlbGVnYXRlLHQpKX1jYXRjaCh0KXt0aHJvdyBqUih0LCJkb2MoKSIsIkNvbGxlY3Rpb25SZWZlcmVuY2UuZG9jKCkiKX19LFhSLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24odCl7dmFyIGUsbixyLGk9dGhpcztyZXR1cm4gZT10aGlzLl9kZWxlZ2F0ZSxuPXQsdD1ZTihlLmZpcmVzdG9yZSx5QSkscj1jQShlKSxuPW5SKGUuX2NvbnZlcnRlcixuKSxkUih0LFtCQShWQShlLmZpcmVzdG9yZSksImFkZERvYyIsci5fa2V5LG4sbnVsbCE9PWUuX2NvbnZlcnRlcix7fSkudG9NdXRhdGlvbihyLl9rZXksY3cuZXhpc3RzKCExKSldKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgRlIoaS5maXJlc3RvcmUsdCl9KX0sWFIucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuIGhBKHRoaXMuX2RlbGVnYXRlLHQuX2RlbGVnYXRlKX0sWFIucHJvdG90eXBlLndpdGhDb252ZXJ0ZXI9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBYUih0aGlzLmZpcmVzdG9yZSx0P3RoaXMuX2RlbGVnYXRlLndpdGhDb252ZXJ0ZXIoRFIuWmModGhpcy5maXJlc3RvcmUsdCkpOnRoaXMuX2RlbGVnYXRlLndpdGhDb252ZXJ0ZXIobnVsbCkpfSxYUik7ZnVuY3Rpb24gWFIodCxlKXt2YXIgbj10aGlzO3JldHVybihuPUJSLmNhbGwodGhpcyx0LGUpfHx0aGlzKS5maXJlc3RvcmU9dCxuLl9kZWxlZ2F0ZT1lLG59ZnVuY3Rpb24gSlIodCxlKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl9kZWxlZ2F0ZT1lfWZ1bmN0aW9uICRSKHQsZSl7dGhpcy5fZmlyZXN0b3JlPXQsdGhpcy5fZGVsZWdhdGU9ZX1mdW5jdGlvbiBaUih0LGUpe3RoaXMuZmlyZXN0b3JlPXQsdGhpcy5fZGVsZWdhdGU9ZSx0aGlzLl91c2VyRGF0YVdyaXRlcj1uZXcgQ1IodCl9ZnVuY3Rpb24gdFAoKXtyZXR1cm4gbnVsbCE9PUtSJiZLUi5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9ZnVuY3Rpb24gZVAodCxlKXt0aGlzLl9maXJlc3RvcmU9dCx0aGlzLl9kZWxlZ2F0ZT1lfWZ1bmN0aW9uIG5QKHQpe3JldHVybiBZTih0LHRBKX1pUC5kb2N1bWVudElkPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpUChjbS5rZXlGaWVsZCgpLmNhbm9uaWNhbFN0cmluZygpKX0saVAucHJvdG90eXBlLmlzRXF1YWw9ZnVuY3Rpb24odCl7cmV0dXJuKHQ9Wm8odCkpaW5zdGFuY2VvZiBFQSYmdGhpcy5fZGVsZWdhdGUuX2ludGVybmFsUGF0aC5pc0VxdWFsKHQuX2ludGVybmFsUGF0aCl9LEdhPWlQLHJQLnNlcnZlclRpbWVzdGFtcD1mdW5jdGlvbigpe3ZhciB0PW5ldyBKQSgic2VydmVyVGltZXN0YW1wIik7cmV0dXJuIHQuX21ldGhvZE5hbWU9IkZpZWxkVmFsdWUuc2VydmVyVGltZXN0YW1wIixuZXcgclAodCl9LHJQLmRlbGV0ZT1mdW5jdGlvbigpe3ZhciB0PW5ldyBXQSgiZGVsZXRlRmllbGQiKTtyZXR1cm4gdC5fbWV0aG9kTmFtZT0iRmllbGRWYWx1ZS5kZWxldGUiLG5ldyByUCh0KX0sclAuYXJyYXlVbmlvbj1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTt2YXIgbj1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTtyZXR1cm4gbmV3ICRBKCJhcnJheVVuaW9uIix0KX0uYXBwbHkodm9pZCAwLHQpO3JldHVybiBuLl9tZXRob2ROYW1lPSJGaWVsZFZhbHVlLmFycmF5VW5pb24iLG5ldyByUChuKX0sclAuYXJyYXlSZW1vdmU9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dmFyIG49ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07cmV0dXJuIG5ldyBaQSgiYXJyYXlSZW1vdmUiLHQpfS5hcHBseSh2b2lkIDAsdCk7cmV0dXJuIG4uX21ldGhvZE5hbWU9IkZpZWxkVmFsdWUuYXJyYXlSZW1vdmUiLG5ldyByUChuKX0sclAuaW5jcmVtZW50PWZ1bmN0aW9uKHQpe3Q9bmV3IHRrKCJpbmNyZW1lbnQiLHQpO3JldHVybiB0Ll9tZXRob2ROYW1lPSJGaWVsZFZhbHVlLmluY3JlbWVudCIsbmV3IHJQKHQpfSxyUC5wcm90b3R5cGUuaXNFcXVhbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNFcXVhbCh0Ll9kZWxlZ2F0ZSl9LFNuPXJQO2Z1bmN0aW9uIHJQKHQpe3RoaXMuX2RlbGVnYXRlPXR9ZnVuY3Rpb24gaVAoKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dGhpcy5fZGVsZWdhdGU9bmV3KEVBLmJpbmQuYXBwbHkoRUEsbm8oW3ZvaWQgMF0sdCkpKX1mdW5jdGlvbiBvUCh0KXtyZXR1cm4gZT10aGlzLl9kZWxlZ2F0ZSxzPXQsbj13QShlPVlOKGUseUEpKSx0PW5ldyBnQSxmdW5jdGlvbihuLHQscil7dmFyIGUsaT10aGlzLG89KGU9cyx0PWJTKHQpLGU9ZnVuY3Rpb24odCl7aWYodCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcmV0dXJuIHVOKHQsdm9pZCAwKTtpZih0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpcmV0dXJuIHVOKG5ldyBVaW50OEFycmF5KHQpLHZvaWQgMCk7aWYodCBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtKXJldHVybiB0LmdldFJlYWRlcigpO3Rocm93IG5ldyBFcnJvcigiU291cmNlIG9mIGB0b0J5dGVTdHJlYW1SZWFkZXJgIGhhcyB0byBiZSBhIEFycmF5QnVmZmVyIG9yIFJlYWRhYmxlU3RyZWFtIil9KCJzdHJpbmciPT10eXBlb2YgZT8obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoZSk6ZSksbmV3IGhOKGUsdCkpO24uYXN5bmNRdWV1ZS5lbnF1ZXVlQW5kRm9yZ2V0KGZ1bmN0aW9uKCl7cmV0dXJuICRpKGksdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9SkMsWzQsQ04obildO2Nhc2UgMTpyZXR1cm4gZS5hcHBseSh2b2lkIDAsW3Quc2VudCgpLG8scl0pLFsyXX19KX0pfSl9KG4sZS5fZGF0YWJhc2VJZCx0KSx0O3ZhciBlLHMsbn1mdW5jdGlvbiBzUCh0KXt2YXIgZT10aGlzLG49dGhpcy5fZGVsZWdhdGUsdD10O3JldHVybiBmdW5jdGlvbihuLHIpe3ZhciB0PXRoaXM7cmV0dXJuIG4uYXN5bmNRdWV1ZS5lbnF1ZXVlKGZ1bmN0aW9uKCl7cmV0dXJuICRpKHQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9ZnVuY3Rpb24odCxlKXt2YXIgbj10O3JldHVybiBuLnBlcnNpc3RlbmNlLnJ1blRyYW5zYWN0aW9uKCJHZXQgbmFtZWQgcXVlcnkiLCJyZWFkb25seSIsZnVuY3Rpb24odCl7cmV0dXJuIG4uUWUuZ2V0TmFtZWRRdWVyeSh0LGUpfSl9LFs0LEVOKG4pXTtjYXNlIDE6cmV0dXJuWzIsZS5hcHBseSh2b2lkIDAsW3Quc2VudCgpLHJdKV19fSl9KX0pfSh3QShuPVlOKG4seUEpKSx0KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0P25ldyBlQShuLG51bGwsdC5xdWVyeSk6bnVsbH0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQ/bmV3IEdSKGUsdCk6bnVsbH0pfXZhciBhUCx1UCxjUD17RmlyZXN0b3JlOlNSLEdlb1BvaW50Ok5BLFRpbWVzdGFtcDokeSxCbG9iOlRSLFRyYW5zYWN0aW9uOlBSLFdyaXRlQmF0Y2g6T1IsRG9jdW1lbnRSZWZlcmVuY2U6RlIsRG9jdW1lbnRTbmFwc2hvdDpXUixRdWVyeTpHUixRdWVyeURvY3VtZW50U25hcHNob3Q6SFIsUXVlcnlTbmFwc2hvdDpRUixDb2xsZWN0aW9uUmVmZXJlbmNlOllSLEZpZWxkUGF0aDpHYSxGaWVsZFZhbHVlOlNuLHNldExvZ0xldmVsOmZ1bmN0aW9uKHQpe1V5LnNldExvZ0xldmVsKHQpfSxDQUNIRV9TSVpFX1VOTElNSVRFRDotMX07KGFQPVhsKS5JTlRFUk5BTC5yZWdpc3RlckNvbXBvbmVudChuZXcgdHMoImZpcmVzdG9yZSIsZnVuY3Rpb24odCl7dmFyIGU9dC5nZXRQcm92aWRlcigiYXBwIikuZ2V0SW1tZWRpYXRlKCk7cmV0dXJuIGU9ZSx0PXQuZ2V0UHJvdmlkZXIoImF1dGgtaW50ZXJuYWwiKSxuZXcgU1IoZSxuZXcgeUEoZSx0KSxuZXcgRVIpfSwiUFVCTElDIikuc2V0U2VydmljZVByb3BzKE9iamVjdC5hc3NpZ24oe30sY1ApKSksYVAucmVnaXN0ZXJWZXJzaW9uKCJAZmlyZWJhc2UvZmlyZXN0b3JlIiwiMi4yLjIiKSwodVA9U1IpLnByb3RvdHlwZS5sb2FkQnVuZGxlPW9QLHVQLnByb3RvdHlwZS5uYW1lZFF1ZXJ5PXNQO3ZhciBoUCxsUD17T0s6Im9rIixDQU5DRUxMRUQ6ImNhbmNlbGxlZCIsVU5LTk9XTjoidW5rbm93biIsSU5WQUxJRF9BUkdVTUVOVDoiaW52YWxpZC1hcmd1bWVudCIsREVBRExJTkVfRVhDRUVERUQ6ImRlYWRsaW5lLWV4Y2VlZGVkIixOT1RfRk9VTkQ6Im5vdC1mb3VuZCIsQUxSRUFEWV9FWElTVFM6ImFscmVhZHktZXhpc3RzIixQRVJNSVNTSU9OX0RFTklFRDoicGVybWlzc2lvbi1kZW5pZWQiLFVOQVVUSEVOVElDQVRFRDoidW5hdXRoZW50aWNhdGVkIixSRVNPVVJDRV9FWEhBVVNURUQ6InJlc291cmNlLWV4aGF1c3RlZCIsRkFJTEVEX1BSRUNPTkRJVElPTjoiZmFpbGVkLXByZWNvbmRpdGlvbiIsQUJPUlRFRDoiYWJvcnRlZCIsT1VUX09GX1JBTkdFOiJvdXQtb2YtcmFuZ2UiLFVOSU1QTEVNRU5URUQ6InVuaW1wbGVtZW50ZWQiLElOVEVSTkFMOiJpbnRlcm5hbCIsVU5BVkFJTEFCTEU6InVuYXZhaWxhYmxlIixEQVRBX0xPU1M6ImRhdGEtbG9zcyJ9LGZQPShYaShwUCxoUD1FcnJvcikscFApO2Z1bmN0aW9uIHBQKHQsZSxuKXtlPWhQLmNhbGwodGhpcyxlKXx8dGhpcztyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKGUscFAucHJvdG90eXBlKSxlLmNvZGU9dCxlLmRldGFpbHM9bixlfWZ1bmN0aW9uIGRQKHQsZSxuKXt2YXIgcj1mdW5jdGlvbih0KXtpZigyMDA8PXQmJnQ8MzAwKXJldHVybiJvayI7c3dpdGNoKHQpe2Nhc2UgMDpyZXR1cm4iaW50ZXJuYWwiO2Nhc2UgNDAwOnJldHVybiJpbnZhbGlkLWFyZ3VtZW50IjtjYXNlIDQwMTpyZXR1cm4idW5hdXRoZW50aWNhdGVkIjtjYXNlIDQwMzpyZXR1cm4icGVybWlzc2lvbi1kZW5pZWQiO2Nhc2UgNDA0OnJldHVybiJub3QtZm91bmQiO2Nhc2UgNDA5OnJldHVybiJhYm9ydGVkIjtjYXNlIDQyOTpyZXR1cm4icmVzb3VyY2UtZXhoYXVzdGVkIjtjYXNlIDQ5OTpyZXR1cm4iY2FuY2VsbGVkIjtjYXNlIDUwMDpyZXR1cm4iaW50ZXJuYWwiO2Nhc2UgNTAxOnJldHVybiJ1bmltcGxlbWVudGVkIjtjYXNlIDUwMzpyZXR1cm4idW5hdmFpbGFibGUiO2Nhc2UgNTA0OnJldHVybiJkZWFkbGluZS1leGNlZWRlZCJ9cmV0dXJuInVua25vd24ifSh0KSxpPXIsbz12b2lkIDA7dHJ5e3ZhciBzPWUmJmUuZXJyb3I7aWYocyl7dmFyIGE9cy5zdGF0dXM7aWYoInN0cmluZyI9PXR5cGVvZiBhKXtpZighbFBbYV0pcmV0dXJuIG5ldyBmUCgiaW50ZXJuYWwiLCJpbnRlcm5hbCIpO3I9bFBbYV0saT1hfWE9cy5tZXNzYWdlOyJzdHJpbmciPT10eXBlb2YgYSYmKGk9YSksdm9pZCAwIT09KG89cy5kZXRhaWxzKSYmKG89bi5kZWNvZGUobykpfX1jYXRjaCh0KXt9cmV0dXJuIm9rIj09PXI/bnVsbDpuZXcgZlAocixpLG8pfXZhciB2UD0oZ1AucHJvdG90eXBlLmdldEF1dGhUb2tlbj1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOmlmKCF0aGlzLmF1dGgpcmV0dXJuWzIsdm9pZCAwXTt0LmxhYmVsPTE7Y2FzZSAxOnJldHVybiB0LnRyeXMucHVzaChbMSwzLCw0XSksWzQsdGhpcy5hdXRoLmdldFRva2VuKCldO2Nhc2UgMjpyZXR1cm4oZT10LnNlbnQoKSk/WzIsZS5hY2Nlc3NUb2tlbl06WzIsdm9pZCAwXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFsyLHZvaWQgMF07Y2FzZSA0OnJldHVyblsyXX19KX0pfSxnUC5wcm90b3R5cGUuZ2V0SW5zdGFuY2VJZFRva2VuPWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe2lmKCEodGhpcy5tZXNzYWdpbmcmJiJOb3RpZmljYXRpb24iaW4gc2VsZiYmImdyYW50ZWQiPT09Tm90aWZpY2F0aW9uLnBlcm1pc3Npb24pKXJldHVyblsyLHZvaWQgMF07dHJ5e3JldHVyblsyLHRoaXMubWVzc2FnaW5nLmdldFRva2VuKCldfWNhdGNoKHQpe3JldHVyblsyLHZvaWQgMF19cmV0dXJuWzJdfSl9KX0sZ1AucHJvdG90eXBlLmdldENvbnRleHQ9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LHRoaXMuZ2V0QXV0aFRva2VuKCldO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKSxbNCx0aGlzLmdldEluc3RhbmNlSWRUb2tlbigpXTtjYXNlIDI6cmV0dXJuIG49dC5zZW50KCksWzIse2F1dGhUb2tlbjplLGluc3RhbmNlSWRUb2tlbjpufV19fSl9KX0sZ1ApO2Z1bmN0aW9uIGdQKHQsZSl7dmFyIG49dGhpczt0aGlzLmF1dGg9bnVsbCx0aGlzLm1lc3NhZ2luZz1udWxsLHRoaXMuYXV0aD10LmdldEltbWVkaWF0ZSh7b3B0aW9uYWw6ITB9KSx0aGlzLm1lc3NhZ2luZz1lLmdldEltbWVkaWF0ZSh7b3B0aW9uYWw6ITB9KSx0aGlzLmF1dGh8fHQuZ2V0KCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbi5hdXRoPXR9LGZ1bmN0aW9uKCl7fSksdGhpcy5tZXNzYWdpbmd8fGUuZ2V0KCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbi5tZXNzYWdpbmc9dH0sZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiB5UCh0LGUpe3ZhciBuLHI9e307Zm9yKG4gaW4gdCl0Lmhhc093blByb3BlcnR5KG4pJiYocltuXT1lKHRbbl0pKTtyZXR1cm4gcn12YXIgbVA9KGJQLnByb3RvdHlwZS5lbmNvZGU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztpZihudWxsPT10KXJldHVybiBudWxsO2lmKCJudW1iZXIiPT10eXBlb2YodD10IGluc3RhbmNlb2YgTnVtYmVyP3QudmFsdWVPZigpOnQpJiZpc0Zpbml0ZSh0KSlyZXR1cm4gdDtpZighMD09PXR8fCExPT09dClyZXR1cm4gdDtpZigiW29iamVjdCBTdHJpbmddIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KSlyZXR1cm4gdDtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZS5lbmNvZGUodCl9KTtpZigiZnVuY3Rpb24iPT10eXBlb2YgdHx8Im9iamVjdCI9PXR5cGVvZiB0KXJldHVybiB5UCh0LGZ1bmN0aW9uKHQpe3JldHVybiBlLmVuY29kZSh0KX0pO3Rocm93IG5ldyBFcnJvcigiRGF0YSBjYW5ub3QgYmUgZW5jb2RlZCBpbiBKU09OOiAiK3QpfSxiUC5wcm90b3R5cGUuZGVjb2RlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7aWYobnVsbD09dClyZXR1cm4gdDtpZih0WyJAdHlwZSJdKXN3aXRjaCh0WyJAdHlwZSJdKXtjYXNlInR5cGUuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLnByb3RvYnVmLkludDY0VmFsdWUiOmNhc2UidHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucHJvdG9idWYuVUludDY0VmFsdWUiOnZhciBuPU51bWJlcih0LnZhbHVlKTtpZihpc05hTihuKSl0aHJvdyBuZXcgRXJyb3IoIkRhdGEgY2Fubm90IGJlIGRlY29kZWQgZnJvbSBKU09OOiAiK3QpO3JldHVybiBuO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJEYXRhIGNhbm5vdCBiZSBkZWNvZGVkIGZyb20gSlNPTjogIit0KX1yZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZS5kZWNvZGUodCl9KToiZnVuY3Rpb24iPT10eXBlb2YgdHx8Im9iamVjdCI9PXR5cGVvZiB0P3lQKHQsZnVuY3Rpb24odCl7cmV0dXJuIGUuZGVjb2RlKHQpfSk6dH0sYlApO2Z1bmN0aW9uIGJQKCl7fXZhciB3UD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KF9QLnByb3RvdHlwZSwiYXBwIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYXBwX30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxfUC5wcm90b3R5cGUuX3VybD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmFwcF8ub3B0aW9ucy5wcm9qZWN0SWQ7cmV0dXJuIG51bGw9PT10aGlzLmVtdWxhdG9yT3JpZ2luP251bGwhPT10aGlzLmN1c3RvbURvbWFpbj90aGlzLmN1c3RvbURvbWFpbisiLyIrdDoiaHR0cHM6Ly8iK3RoaXMucmVnaW9uKyItIitlKyIuY2xvdWRmdW5jdGlvbnMubmV0LyIrdDp0aGlzLmVtdWxhdG9yT3JpZ2luKyIvIitlKyIvIit0aGlzLnJlZ2lvbisiLyIrdH0sX1AucHJvdG90eXBlLnVzZUVtdWxhdG9yPWZ1bmN0aW9uKHQsZSl7dGhpcy5lbXVsYXRvck9yaWdpbj0iaHR0cDovLyIrdCsiOiIrZX0sX1AucHJvdG90eXBlLnVzZUZ1bmN0aW9uc0VtdWxhdG9yPWZ1bmN0aW9uKHQpe3RoaXMuZW11bGF0b3JPcmlnaW49dH0sX1AucHJvdG90eXBlLmh0dHBzQ2FsbGFibGU9ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gci5jYWxsKGUsdCxufHx7fSl9fSxfUC5wcm90b3R5cGUucG9zdEpTT049ZnVuY3Rpb24ocixpLG8pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6b1siQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2pzb24iLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCx0aGlzLmZldGNoSW1wbChyLHttZXRob2Q6IlBPU1QiLGJvZHk6SlNPTi5zdHJpbmdpZnkoaSksaGVhZGVyczpvfSldO2Nhc2UgMjpyZXR1cm4gZT10LnNlbnQoKSxbMyw0XTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFsyLHtzdGF0dXM6MCxqc29uOm51bGx9XTtjYXNlIDQ6bj1udWxsLHQubGFiZWw9NTtjYXNlIDU6cmV0dXJuIHQudHJ5cy5wdXNoKFs1LDcsLDhdKSxbNCxlLmpzb24oKV07Y2FzZSA2OnJldHVybiBuPXQuc2VudCgpLFszLDhdO2Nhc2UgNzpyZXR1cm4gdC5zZW50KCksWzMsOF07Y2FzZSA4OnJldHVyblsyLHtzdGF0dXM6ZS5zdGF0dXMsanNvbjpufV19fSl9KX0sX1AucHJvdG90eXBlLmNhbGw9ZnVuY3Rpb24oYyxoLGwpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgaSxvLHMsYSx1O3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGk9dGhpcy5fdXJsKGMpLGg9dGhpcy5zZXJpYWxpemVyLmVuY29kZShoKSxvPXtkYXRhOmh9LHM9e30sWzQsdGhpcy5jb250ZXh0UHJvdmlkZXIuZ2V0Q29udGV4dCgpXTtjYXNlIDE6cmV0dXJuKGE9dC5zZW50KCkpLmF1dGhUb2tlbiYmKHMuQXV0aG9yaXphdGlvbj0iQmVhcmVyICIrYS5hdXRoVG9rZW4pLGEuaW5zdGFuY2VJZFRva2VuJiYoc1siRmlyZWJhc2UtSW5zdGFuY2UtSUQtVG9rZW4iXT1hLmluc3RhbmNlSWRUb2tlbiksdT1sLnRpbWVvdXR8fDdlNCxuPXUsZT1uZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe3I9c2V0VGltZW91dChmdW5jdGlvbigpe2UobmV3IGZQKCJkZWFkbGluZS1leGNlZWRlZCIsImRlYWRsaW5lLWV4Y2VlZGVkIikpfSxuKX0pLHU9KGE9e3RpbWVyOnIscHJvbWlzZTplfSkudGltZXIsYT1hLnByb21pc2UsWzQsUHJvbWlzZS5yYWNlKFtJUCh1LHRoaXMucG9zdEpTT04oaSxvLHMpKSxhLElQKHUsdGhpcy5jYW5jZWxBbGxSZXF1ZXN0cyldKV07Y2FzZSAyOmlmKCEoYT10LnNlbnQoKSkpdGhyb3cgbmV3IGZQKCJjYW5jZWxsZWQiLCJGaXJlYmFzZSBGdW5jdGlvbnMgaW5zdGFuY2Ugd2FzIGRlbGV0ZWQuIik7aWYodT1kUChhLnN0YXR1cyxhLmpzb24sdGhpcy5zZXJpYWxpemVyKSl0aHJvdyB1O2lmKCFhLmpzb24pdGhyb3cgbmV3IGZQKCJpbnRlcm5hbCIsIlJlc3BvbnNlIGlzIG5vdCB2YWxpZCBKU09OIG9iamVjdC4iKTtpZih2b2lkIDA9PT0odT12b2lkIDA9PT0odT1hLmpzb24uZGF0YSk/YS5qc29uLnJlc3VsdDp1KSl0aHJvdyBuZXcgZlAoImludGVybmFsIiwiUmVzcG9uc2UgaXMgbWlzc2luZyBkYXRhIGZpZWxkLiIpO3JldHVyblsyLHtkYXRhOnRoaXMuc2VyaWFsaXplci5kZWNvZGUodSl9XX12YXIgbixyLGV9KX0pfSxfUCk7ZnVuY3Rpb24gX1AodCxlLG4scixpKXt2YXIgbz10aGlzO3ZvaWQgMD09PXImJihyPSJ1cy1jZW50cmFsMSIpLHRoaXMuYXBwXz10LHRoaXMuZmV0Y2hJbXBsPWksdGhpcy5zZXJpYWxpemVyPW5ldyBtUCx0aGlzLmVtdWxhdG9yT3JpZ2luPW51bGwsdGhpcy5JTlRFUk5BTD17ZGVsZXRlOmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZShvLmRlbGV0ZVNlcnZpY2UoKSl9fSx0aGlzLmNvbnRleHRQcm92aWRlcj1uZXcgdlAoZSxuKSx0aGlzLmNhbmNlbEFsbFJlcXVlc3RzPW5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe28uZGVsZXRlU2VydmljZT1mdW5jdGlvbigpe3JldHVybiB0KCl9fSk7dHJ5e3ZhciBzPW5ldyBVUkwocik7dGhpcy5jdXN0b21Eb21haW49cy5vcmlnaW4sdGhpcy5yZWdpb249InVzLWNlbnRyYWwxIn1jYXRjaCh0KXt0aGlzLmN1c3RvbURvbWFpbj1udWxsLHRoaXMucmVnaW9uPXJ9fWZ1bmN0aW9uIElQKG4scil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQscl07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLGNsZWFyVGltZW91dChuKSxbMixlXX19KX0pfXZhciBUUCxFUCxTUDtmdW5jdGlvbiBDUChuKXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXtuLm9uc3VjY2Vzcz1mdW5jdGlvbigpe3Qobi5yZXN1bHQpfSxuLm9uZXJyb3I9ZnVuY3Rpb24oKXtlKG4uZXJyb3IpfX0pfWZ1bmN0aW9uIE5QKG4scixpKXt2YXIgbyx0PW5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7Q1Aobz1uW3JdLmFwcGx5KG4saSkpLnRoZW4odCxlKX0pO3JldHVybiB0LnJlcXVlc3Q9byx0fWZ1bmN0aW9uIEFQKHQsbixlKXtlLmZvckVhY2goZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQucHJvdG90eXBlLGUse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzW25dW2VdfSxzZXQ6ZnVuY3Rpb24odCl7dGhpc1tuXVtlXT10fX0pfSl9ZnVuY3Rpb24ga1AoZSxuLHIsdCl7dC5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QgaW4gci5wcm90b3R5cGUmJihlLnByb3RvdHlwZVt0XT1mdW5jdGlvbigpe3JldHVybiBOUCh0aGlzW25dLHQsYXJndW1lbnRzKX0pfSl9ZnVuY3Rpb24gUlAoZSxuLHIsdCl7dC5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QgaW4gci5wcm90b3R5cGUmJihlLnByb3RvdHlwZVt0XT1mdW5jdGlvbigpe3JldHVybiB0aGlzW25dW3RdLmFwcGx5KHRoaXNbbl0sYXJndW1lbnRzKX0pfSl9ZnVuY3Rpb24gUFAodCxyLGUsbil7bi5mb3JFYWNoKGZ1bmN0aW9uKG4pe24gaW4gZS5wcm90b3R5cGUmJih0LnByb3RvdHlwZVtuXT1mdW5jdGlvbigpe3JldHVybiB0PXRoaXNbcl0sKGU9TlAodCxuLGFyZ3VtZW50cykpLnRoZW4oZnVuY3Rpb24odCl7aWYodClyZXR1cm4gbmV3IERQKHQsZS5yZXF1ZXN0KX0pO3ZhciB0LGV9KX0pfWZ1bmN0aW9uIE9QKHQpe3RoaXMuX2luZGV4PXR9ZnVuY3Rpb24gRFAodCxlKXt0aGlzLl9jdXJzb3I9dCx0aGlzLl9yZXF1ZXN0PWV9ZnVuY3Rpb24geFAodCl7dGhpcy5fc3RvcmU9dH1mdW5jdGlvbiBMUChuKXt0aGlzLl90eD1uLHRoaXMuY29tcGxldGU9bmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXtuLm9uY29tcGxldGU9ZnVuY3Rpb24oKXt0KCl9LG4ub25lcnJvcj1mdW5jdGlvbigpe2Uobi5lcnJvcil9LG4ub25hYm9ydD1mdW5jdGlvbigpe2Uobi5lcnJvcil9fSl9ZnVuY3Rpb24gTVAodCxlLG4pe3RoaXMuX2RiPXQsdGhpcy5vbGRWZXJzaW9uPWUsdGhpcy50cmFuc2FjdGlvbj1uZXcgTFAobil9ZnVuY3Rpb24gRlAodCl7dGhpcy5fZGI9dH1mdW5jdGlvbiBVUCh0LGUsbil7dmFyIGU9TlAoaW5kZXhlZERCLCJvcGVuIixbdCxlXSkscj1lLnJlcXVlc3Q7cmV0dXJuIHImJihyLm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbih0KXtuJiZuKG5ldyBNUChyLnJlc3VsdCx0Lm9sZFZlcnNpb24sci50cmFuc2FjdGlvbikpfSksZS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBuZXcgRlAodCl9KX1mdW5jdGlvbiBqUCh0KXtyZXR1cm4gTlAoaW5kZXhlZERCLCJkZWxldGVEYXRhYmFzZSIsW3RdKX1UUD1YbCxFUD1mZXRjaC5iaW5kKHNlbGYpLFNQPXtGdW5jdGlvbnM6d1B9LFRQLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygiZnVuY3Rpb25zIixmdW5jdGlvbih0LGUpe3ZhciBuPWUuaW5zdGFuY2VJZGVudGlmaWVyLHI9dC5nZXRQcm92aWRlcigiYXBwIikuZ2V0SW1tZWRpYXRlKCksZT10LmdldFByb3ZpZGVyKCJhdXRoLWludGVybmFsIiksdD10LmdldFByb3ZpZGVyKCJtZXNzYWdpbmciKTtyZXR1cm4gbmV3IHdQKHIsZSx0LG4sRVApfSwiUFVCTElDIikuc2V0U2VydmljZVByb3BzKFNQKS5zZXRNdWx0aXBsZUluc3RhbmNlcyghMCkpLFhsLnJlZ2lzdGVyVmVyc2lvbigiQGZpcmViYXNlL2Z1bmN0aW9ucyIsIjAuNi41IiksQVAoT1AsIl9pbmRleCIsWyJuYW1lIiwia2V5UGF0aCIsIm11bHRpRW50cnkiLCJ1bmlxdWUiXSksa1AoT1AsIl9pbmRleCIsSURCSW5kZXgsWyJnZXQiLCJnZXRLZXkiLCJnZXRBbGwiLCJnZXRBbGxLZXlzIiwiY291bnQiXSksUFAoT1AsIl9pbmRleCIsSURCSW5kZXgsWyJvcGVuQ3Vyc29yIiwib3BlbktleUN1cnNvciJdKSxBUChEUCwiX2N1cnNvciIsWyJkaXJlY3Rpb24iLCJrZXkiLCJwcmltYXJ5S2V5IiwidmFsdWUiXSksa1AoRFAsIl9jdXJzb3IiLElEQkN1cnNvcixbInVwZGF0ZSIsImRlbGV0ZSJdKSxbImFkdmFuY2UiLCJjb250aW51ZSIsImNvbnRpbnVlUHJpbWFyeUtleSJdLmZvckVhY2goZnVuY3Rpb24obil7biBpbiBJREJDdXJzb3IucHJvdG90eXBlJiYoRFAucHJvdG90eXBlW25dPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWFyZ3VtZW50cztyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBlLl9jdXJzb3Jbbl0uYXBwbHkoZS5fY3Vyc29yLHQpLENQKGUuX3JlcXVlc3QpLnRoZW4oZnVuY3Rpb24odCl7aWYodClyZXR1cm4gbmV3IERQKHQsZS5fcmVxdWVzdCl9KX0pfSl9KSx4UC5wcm90b3R5cGUuY3JlYXRlSW5kZXg9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE9QKHRoaXMuX3N0b3JlLmNyZWF0ZUluZGV4LmFwcGx5KHRoaXMuX3N0b3JlLGFyZ3VtZW50cykpfSx4UC5wcm90b3R5cGUuaW5kZXg9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE9QKHRoaXMuX3N0b3JlLmluZGV4LmFwcGx5KHRoaXMuX3N0b3JlLGFyZ3VtZW50cykpfSxBUCh4UCwiX3N0b3JlIixbIm5hbWUiLCJrZXlQYXRoIiwiaW5kZXhOYW1lcyIsImF1dG9JbmNyZW1lbnQiXSksa1AoeFAsIl9zdG9yZSIsSURCT2JqZWN0U3RvcmUsWyJwdXQiLCJhZGQiLCJkZWxldGUiLCJjbGVhciIsImdldCIsImdldEFsbCIsImdldEtleSIsImdldEFsbEtleXMiLCJjb3VudCJdKSxQUCh4UCwiX3N0b3JlIixJREJPYmplY3RTdG9yZSxbIm9wZW5DdXJzb3IiLCJvcGVuS2V5Q3Vyc29yIl0pLFJQKHhQLCJfc3RvcmUiLElEQk9iamVjdFN0b3JlLFsiZGVsZXRlSW5kZXgiXSksTFAucHJvdG90eXBlLm9iamVjdFN0b3JlPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB4UCh0aGlzLl90eC5vYmplY3RTdG9yZS5hcHBseSh0aGlzLl90eCxhcmd1bWVudHMpKX0sQVAoTFAsIl90eCIsWyJvYmplY3RTdG9yZU5hbWVzIiwibW9kZSJdKSxSUChMUCwiX3R4IixJREJUcmFuc2FjdGlvbixbImFib3J0Il0pLE1QLnByb3RvdHlwZS5jcmVhdGVPYmplY3RTdG9yZT1mdW5jdGlvbigpe3JldHVybiBuZXcgeFAodGhpcy5fZGIuY3JlYXRlT2JqZWN0U3RvcmUuYXBwbHkodGhpcy5fZGIsYXJndW1lbnRzKSl9LEFQKE1QLCJfZGIiLFsibmFtZSIsInZlcnNpb24iLCJvYmplY3RTdG9yZU5hbWVzIl0pLFJQKE1QLCJfZGIiLElEQkRhdGFiYXNlLFsiZGVsZXRlT2JqZWN0U3RvcmUiLCJjbG9zZSJdKSxGUC5wcm90b3R5cGUudHJhbnNhY3Rpb249ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IExQKHRoaXMuX2RiLnRyYW5zYWN0aW9uLmFwcGx5KHRoaXMuX2RiLGFyZ3VtZW50cykpfSxBUChGUCwiX2RiIixbIm5hbWUiLCJ2ZXJzaW9uIiwib2JqZWN0U3RvcmVOYW1lcyJdKSxSUChGUCwiX2RiIixJREJEYXRhYmFzZSxbImNsb3NlIl0pLFsib3BlbkN1cnNvciIsIm9wZW5LZXlDdXJzb3IiXS5mb3JFYWNoKGZ1bmN0aW9uKGkpe1t4UCxPUF0uZm9yRWFjaChmdW5jdGlvbih0KXtpIGluIHQucHJvdG90eXBlJiYodC5wcm90b3R5cGVbaS5yZXBsYWNlKCJvcGVuIiwiaXRlcmF0ZSIpXT1mdW5jdGlvbigpe3ZhciB0PShuPWFyZ3VtZW50cyxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuKSksZT10W3QubGVuZ3RoLTFdLG49dGhpcy5fc3RvcmV8fHRoaXMuX2luZGV4LHI9bltpXS5hcHBseShuLHQuc2xpY2UoMCwtMSkpO3Iub25zdWNjZXNzPWZ1bmN0aW9uKCl7ZShyLnJlc3VsdCl9fSl9KX0pLFtPUCx4UF0uZm9yRWFjaChmdW5jdGlvbih0KXt0LnByb3RvdHlwZS5nZXRBbGx8fCh0LnByb3RvdHlwZS5nZXRBbGw9ZnVuY3Rpb24odCxuKXt2YXIgcj10aGlzLGk9W107cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3IuaXRlcmF0ZUN1cnNvcih0LGZ1bmN0aW9uKHQpe3Q/KGkucHVzaCh0LnZhbHVlKSx2b2lkIDA9PT1ufHxpLmxlbmd0aCE9bj90LmNvbnRpbnVlKCk6ZShpKSk6ZShpKX0pfSl9KX0pO3ZhciBxUD0xZTQsVlA9Inc6MC40LjIzIixCUD0iRklTX3YyIixLUD0iaHR0cHM6Ly9maXJlYmFzZWluc3RhbGxhdGlvbnMuZ29vZ2xlYXBpcy5jb20vdjEiLFdQPTM2ZTUsU249KChHYT17fSlbIm1pc3NpbmctYXBwLWNvbmZpZy12YWx1ZXMiXT0nTWlzc2luZyBBcHAgY29uZmlndXJhdGlvbiB2YWx1ZTogInskdmFsdWVOYW1lfSInLEdhWyJub3QtcmVnaXN0ZXJlZCJdPSJGaXJlYmFzZSBJbnN0YWxsYXRpb24gaXMgbm90IHJlZ2lzdGVyZWQuIixHYVsiaW5zdGFsbGF0aW9uLW5vdC1mb3VuZCJdPSJGaXJlYmFzZSBJbnN0YWxsYXRpb24gbm90IGZvdW5kLiIsR2FbInJlcXVlc3QtZmFpbGVkIl09J3skcmVxdWVzdE5hbWV9IHJlcXVlc3QgZmFpbGVkIHdpdGggZXJyb3IgInskc2VydmVyQ29kZX0geyRzZXJ2ZXJTdGF0dXN9OiB7JHNlcnZlck1lc3NhZ2V9IicsR2FbImFwcC1vZmZsaW5lIl09IkNvdWxkIG5vdCBwcm9jZXNzIHJlcXVlc3QuIEFwcGxpY2F0aW9uIG9mZmxpbmUuIixHYVsiZGVsZXRlLXBlbmRpbmctcmVnaXN0cmF0aW9uIl09IkNhbid0IGRlbGV0ZSBpbnN0YWxsYXRpb24gd2hpbGUgdGhlcmUgaXMgYSBwZW5kaW5nIHJlZ2lzdHJhdGlvbiByZXF1ZXN0LiIsR2EpLEhQPW5ldyBDbygiaW5zdGFsbGF0aW9ucyIsIkluc3RhbGxhdGlvbnMiLFNuKTtmdW5jdGlvbiBHUCh0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIEVvJiZ0LmNvZGUuaW5jbHVkZXMoInJlcXVlc3QtZmFpbGVkIil9ZnVuY3Rpb24gelAodCl7dD10LnByb2plY3RJZDtyZXR1cm4gS1ArIi9wcm9qZWN0cy8iK3QrIi9pbnN0YWxsYXRpb25zIn1mdW5jdGlvbiBRUCh0KXtyZXR1cm57dG9rZW46dC50b2tlbixyZXF1ZXN0U3RhdHVzOjIsZXhwaXJlc0luOih0PXQuZXhwaXJlc0luLE51bWJlcih0LnJlcGxhY2UoInMiLCIwMDAiKSkpLGNyZWF0aW9uVGltZTpEYXRlLm5vdygpfX1mdW5jdGlvbiBZUChuLHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LHIuanNvbigpXTtjYXNlIDE6cmV0dXJuIGU9dC5zZW50KCksZT1lLmVycm9yLFsyLEhQLmNyZWF0ZSgicmVxdWVzdC1mYWlsZWQiLHtyZXF1ZXN0TmFtZTpuLHNlcnZlckNvZGU6ZS5jb2RlLHNlcnZlck1lc3NhZ2U6ZS5tZXNzYWdlLHNlcnZlclN0YXR1czplLnN0YXR1c30pXX19KX0pfWZ1bmN0aW9uIFhQKHQpe3Q9dC5hcGlLZXk7cmV0dXJuIG5ldyBIZWFkZXJzKHsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiIsQWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwieC1nb29nLWFwaS1rZXkiOnR9KX1mdW5jdGlvbiBKUCh0LGUpe2U9ZS5yZWZyZXNoVG9rZW4sdD1YUCh0KTtyZXR1cm4gdC5hcHBlbmQoIkF1dGhvcml6YXRpb24iLEJQKyIgIitlKSx0fWZ1bmN0aW9uICRQKG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LG4oKV07Y2FzZSAxOnJldHVybiA1MDA8PShlPXQuc2VudCgpKS5zdGF0dXMmJmUuc3RhdHVzPDYwMD9bMixuKCldOlsyLGVdfX0pfSl9ZnVuY3Rpb24gWlAoZSl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe3NldFRpbWVvdXQodCxlKX0pfXZhciB0Tz0vXltjZGVmXVtcdy1dezIxfSQvLGVPPSIiO2Z1bmN0aW9uIG5PKCl7dHJ5e3ZhciB0PW5ldyBVaW50OEFycmF5KDE3KTsoc2VsZi5jcnlwdG98fHNlbGYubXNDcnlwdG8pLmdldFJhbmRvbVZhbHVlcyh0KSx0WzBdPTExMit0WzBdJTE2O3Q9ZnVuY3Rpb24odCl7cmV0dXJuIGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsbm8oW10sZW8odCkpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKX0odCkuc3Vic3RyKDAsMjIpO3JldHVybiB0Ty50ZXN0KHQpP3Q6ZU99Y2F0Y2godCl7cmV0dXJuIGVPfX1mdW5jdGlvbiByTyh0KXtyZXR1cm4gdC5hcHBOYW1lKyIhIit0LmFwcElkfXZhciBpTz1uZXcgTWFwO2Z1bmN0aW9uIG9PKHQsZSl7dD1yTyh0KTtzTyh0LGUpLGZ1bmN0aW9uKHQsZSl7dmFyIG49dU8oKTtuJiZuLnBvc3RNZXNzYWdlKHtrZXk6dCxmaWQ6ZX0pO2NPKCl9KHQsZSl9ZnVuY3Rpb24gc08odCxlKXt2YXIgbixyLGk9aU8uZ2V0KHQpO2lmKGkpdHJ5e2Zvcih2YXIgbz10byhpKSxzPW8ubmV4dCgpOyFzLmRvbmU7cz1vLm5leHQoKSkoMCxzLnZhbHVlKShlKX1jYXRjaCh0KXtuPXtlcnJvcjp0fX1maW5hbGx5e3RyeXtzJiYhcy5kb25lJiYocj1vLnJldHVybikmJnIuY2FsbChvKX1maW5hbGx5e2lmKG4pdGhyb3cgbi5lcnJvcn19fXZhciBhTz1udWxsO2Z1bmN0aW9uIHVPKCl7cmV0dXJuIWFPJiYiQnJvYWRjYXN0Q2hhbm5lbCJpbiBzZWxmJiYoKGFPPW5ldyBCcm9hZGNhc3RDaGFubmVsKCJbRmlyZWJhc2VdIEZJRCBDaGFuZ2UiKSkub25tZXNzYWdlPWZ1bmN0aW9uKHQpe3NPKHQuZGF0YS5rZXksdC5kYXRhLmZpZCl9KSxhT31mdW5jdGlvbiBjTygpezA9PT1pTy5zaXplJiZhTyYmKGFPLmNsb3NlKCksYU89bnVsbCl9dmFyIGhPLGxPPSJmaXJlYmFzZS1pbnN0YWxsYXRpb25zLWRhdGFiYXNlIixmTz0xLHBPPSJmaXJlYmFzZS1pbnN0YWxsYXRpb25zLXN0b3JlIixkTz1udWxsO2Z1bmN0aW9uIHZPKCl7cmV0dXJuIGRPPWRPfHxVUChsTyxmTyxmdW5jdGlvbih0KXswPT09dC5vbGRWZXJzaW9uJiZ0LmNyZWF0ZU9iamVjdFN0b3JlKHBPKX0pfWZ1bmN0aW9uIGdPKG8scyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9ck8obyksWzQsdk8oKV07Y2FzZSAxOnJldHVybiByPXQuc2VudCgpLG49ci50cmFuc2FjdGlvbihwTywicmVhZHdyaXRlIiksWzQsKHI9bi5vYmplY3RTdG9yZShwTykpLmdldChlKV07Y2FzZSAyOnJldHVybiBpPXQuc2VudCgpLFs0LHIucHV0KHMsZSldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzQsbi5jb21wbGV0ZV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxpJiZpLmZpZD09PXMuZmlkfHxvTyhvLHMuZmlkKSxbMixzXX19KX0pfWZ1bmN0aW9uIHlPKHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9ck8ociksWzQsdk8oKV07Y2FzZSAxOnJldHVybiBuPXQuc2VudCgpLFs0LChuPW4udHJhbnNhY3Rpb24ocE8sInJlYWR3cml0ZSIpKS5vYmplY3RTdG9yZShwTykuZGVsZXRlKGUpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFs0LG4uY29tcGxldGVdO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzJdfX0pfSl9ZnVuY3Rpb24gbU8ocyxhKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGksbztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPXJPKHMpLFs0LHZPKCldO2Nhc2UgMTpyZXR1cm4gcj10LnNlbnQoKSxuPXIudHJhbnNhY3Rpb24ocE8sInJlYWR3cml0ZSIpLFs0LChyPW4ub2JqZWN0U3RvcmUocE8pKS5nZXQoZSldO2Nhc2UgMjpyZXR1cm4gaT10LnNlbnQoKSx2b2lkIDAhPT0obz1hKGkpKT9bMyw0XTpbNCxyLmRlbGV0ZShlKV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbMyw2XTtjYXNlIDQ6cmV0dXJuWzQsci5wdXQobyxlKV07Y2FzZSA1OnQuc2VudCgpLHQubGFiZWw9NjtjYXNlIDY6cmV0dXJuWzQsbi5jb21wbGV0ZV07Y2FzZSA3OnJldHVybiB0LnNlbnQoKSwhb3x8aSYmaS5maWQ9PT1vLmZpZHx8b08ocyxvLmZpZCksWzIsb119fSl9KX1mdW5jdGlvbiBiTyhpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsbU8oaSxmdW5jdGlvbih0KXt0PV9PKHR8fHtmaWQ6bk8oKSxyZWdpc3RyYXRpb25TdGF0dXM6MH0pLHQ9ZnVuY3Rpb24odCxlKXt7aWYoMCE9PWUucmVnaXN0cmF0aW9uU3RhdHVzKXJldHVybiAxPT09ZS5yZWdpc3RyYXRpb25TdGF0dXM/e2luc3RhbGxhdGlvbkVudHJ5OmUscmVnaXN0cmF0aW9uUHJvbWlzZTpmdW5jdGlvbihpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsd08oaSldO2Nhc2UgMTplPXQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuIDEhPT1lLnJlZ2lzdHJhdGlvblN0YXR1cz9bMyw1XTpbNCxaUCgxMDApXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFs0LHdPKGkpXTtjYXNlIDQ6cmV0dXJuIGU9dC5zZW50KCksWzMsMl07Y2FzZSA1OnJldHVybiAwIT09ZS5yZWdpc3RyYXRpb25TdGF0dXM/WzMsN106WzQsYk8oaSldO2Nhc2UgNjpyZXR1cm4gcj10LnNlbnQoKSxuPXIuaW5zdGFsbGF0aW9uRW50cnksKHI9ci5yZWdpc3RyYXRpb25Qcm9taXNlKT9bMixyXTpbMixuXTtjYXNlIDc6cmV0dXJuWzIsZV19fSl9KX0odCl9OntpbnN0YWxsYXRpb25FbnRyeTplfTtpZighbmF2aWdhdG9yLm9uTGluZSl7dmFyIG49UHJvbWlzZS5yZWplY3QoSFAuY3JlYXRlKCJhcHAtb2ZmbGluZSIpKTtyZXR1cm57aW5zdGFsbGF0aW9uRW50cnk6ZSxyZWdpc3RyYXRpb25Qcm9taXNlOm59fWU9e2ZpZDplLmZpZCxyZWdpc3RyYXRpb25TdGF0dXM6MSxyZWdpc3RyYXRpb25UaW1lOkRhdGUubm93KCl9LHQ9ZnVuY3Rpb24ocixpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCwyLCw3XSksWzQsZnVuY3Rpb24ocyx0KXt2YXIgYT10LmZpZDtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGksbztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPXpQKHMpLG49WFAocyksbz17ZmlkOmEsYXV0aFZlcnNpb246QlAsYXBwSWQ6cy5hcHBJZCxzZGtWZXJzaW9uOlZQfSxyPXttZXRob2Q6IlBPU1QiLGhlYWRlcnM6bixib2R5OkpTT04uc3RyaW5naWZ5KG8pfSxbNCwkUChmdW5jdGlvbigpe3JldHVybiBmZXRjaChlLHIpfSldO2Nhc2UgMTpyZXR1cm4oaT10LnNlbnQoKSkub2s/WzQsaS5qc29uKCldOlszLDNdO2Nhc2UgMjpyZXR1cm4gbz10LnNlbnQoKSxbMix7ZmlkOm8uZmlkfHxhLHJlZ2lzdHJhdGlvblN0YXR1czoyLHJlZnJlc2hUb2tlbjpvLnJlZnJlc2hUb2tlbixhdXRoVG9rZW46UVAoby5hdXRoVG9rZW4pfV07Y2FzZSAzOnJldHVybls0LFlQKCJDcmVhdGUgSW5zdGFsbGF0aW9uIixpKV07Y2FzZSA0OnRocm93IHQuc2VudCgpfX0pfSl9KHIsaSldO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKSxbMixnTyhyLGUpXTtjYXNlIDI6cmV0dXJuIEdQKG49dC5zZW50KCkpJiY0MDk9PT1uLmN1c3RvbURhdGEuc2VydmVyQ29kZT9bNCx5TyhyKV06WzMsNF07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbMyw2XTtjYXNlIDQ6cmV0dXJuWzQsZ08ocix7ZmlkOmkuZmlkLHJlZ2lzdHJhdGlvblN0YXR1czowfSldO2Nhc2UgNTp0LnNlbnQoKSx0LmxhYmVsPTY7Y2FzZSA2OnRocm93IG47Y2FzZSA3OnJldHVyblsyXX19KX0pfSh0LGUpO3JldHVybntpbnN0YWxsYXRpb25FbnRyeTplLHJlZ2lzdHJhdGlvblByb21pc2U6dH19fShpLHQpO3JldHVybiBlPXQucmVnaXN0cmF0aW9uUHJvbWlzZSx0Lmluc3RhbGxhdGlvbkVudHJ5fSldO2Nhc2UgMTpyZXR1cm4obj10LnNlbnQoKSkuZmlkIT09ZU8/WzMsM106KHI9e30sWzQsZV0pO2Nhc2UgMjpyZXR1cm5bMiwoci5pbnN0YWxsYXRpb25FbnRyeT10LnNlbnQoKSxyKV07Y2FzZSAzOnJldHVyblsyLHtpbnN0YWxsYXRpb25FbnRyeTpuLHJlZ2lzdHJhdGlvblByb21pc2U6ZX1dfX0pfSl9ZnVuY3Rpb24gd08odCl7cmV0dXJuIG1PKHQsZnVuY3Rpb24odCl7aWYoIXQpdGhyb3cgSFAuY3JlYXRlKCJpbnN0YWxsYXRpb24tbm90LWZvdW5kIik7cmV0dXJuIF9PKHQpfSl9ZnVuY3Rpb24gX08odCl7cmV0dXJuIDE9PT0oZT10KS5yZWdpc3RyYXRpb25TdGF0dXMmJmUucmVnaXN0cmF0aW9uVGltZStxUDxEYXRlLm5vdygpP3tmaWQ6dC5maWQscmVnaXN0cmF0aW9uU3RhdHVzOjB9OnQ7dmFyIGV9ZnVuY3Rpb24gSU8odCxzKXt2YXIgYT10LmFwcENvbmZpZyx1PXQucGxhdGZvcm1Mb2dnZXJQcm92aWRlcjtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGksbztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPWZ1bmN0aW9uKHQsZSl7ZT1lLmZpZDtyZXR1cm4gelAodCkrIi8iK2UrIi9hdXRoVG9rZW5zOmdlbmVyYXRlIn0oYSxzKSxuPUpQKGEscyksKG89dS5nZXRJbW1lZGlhdGUoe29wdGlvbmFsOiEwfSkpJiZuLmFwcGVuZCgieC1maXJlYmFzZS1jbGllbnQiLG8uZ2V0UGxhdGZvcm1JbmZvU3RyaW5nKCkpLG89e2luc3RhbGxhdGlvbjp7c2RrVmVyc2lvbjpWUH19LHI9e21ldGhvZDoiUE9TVCIsaGVhZGVyczpuLGJvZHk6SlNPTi5zdHJpbmdpZnkobyl9LFs0LCRQKGZ1bmN0aW9uKCl7cmV0dXJuIGZldGNoKGUscil9KV07Y2FzZSAxOnJldHVybihpPXQuc2VudCgpKS5vaz9bNCxpLmpzb24oKV06WzMsM107Y2FzZSAyOnJldHVybiBvPXQuc2VudCgpLFsyLFFQKG8pXTtjYXNlIDM6cmV0dXJuWzQsWVAoIkdlbmVyYXRlIEF1dGggVG9rZW4iLGkpXTtjYXNlIDQ6dGhyb3cgdC5zZW50KCl9fSl9KX1mdW5jdGlvbiBUTyhpLG8pe3JldHVybiB2b2lkIDA9PT1vJiYobz0hMSksJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHIsZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsbU8oaS5hcHBDb25maWcsZnVuY3Rpb24odCl7aWYoIVNPKHQpKXRocm93IEhQLmNyZWF0ZSgibm90LXJlZ2lzdGVyZWQiKTt2YXIgZSxuPXQuYXV0aFRva2VuO2lmKG98fDIhPT0oZT1uKS5yZXF1ZXN0U3RhdHVzfHxmdW5jdGlvbih0KXt2YXIgZT1EYXRlLm5vdygpO3JldHVybiBlPHQuY3JlYXRpb25UaW1lfHx0LmNyZWF0aW9uVGltZSt0LmV4cGlyZXNJbjxlK1dQfShlKSl7aWYoMT09PW4ucmVxdWVzdFN0YXR1cylyZXR1cm4gcj1mdW5jdGlvbihuLHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LEVPKG4uYXBwQ29uZmlnKV07Y2FzZSAxOmU9dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm4gMSE9PWUuYXV0aFRva2VuLnJlcXVlc3RTdGF0dXM/WzMsNV06WzQsWlAoMTAwKV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbNCxFTyhuLmFwcENvbmZpZyldO2Nhc2UgNDpyZXR1cm4gZT10LnNlbnQoKSxbMywyXTtjYXNlIDU6cmV0dXJuIDA9PT0oZT1lLmF1dGhUb2tlbikucmVxdWVzdFN0YXR1cz9bMixUTyhuLHIpXTpbMixlXX19KX0pfShpLG8pLHQ7aWYoIW5hdmlnYXRvci5vbkxpbmUpdGhyb3cgSFAuY3JlYXRlKCJhcHAtb2ZmbGluZSIpO249KGU9dCxuPXtyZXF1ZXN0U3RhdHVzOjEscmVxdWVzdFRpbWU6RGF0ZS5ub3coKX0sSmkoSmkoe30sZSkse2F1dGhUb2tlbjpufSkpO3JldHVybiByPWZ1bmN0aW9uKGksbyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCwzLCw4XSksWzQsSU8oaSxvKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLHI9SmkoSmkoe30sbykse2F1dGhUb2tlbjplfSksWzQsZ08oaS5hcHBDb25maWcscildO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzIsZV07Y2FzZSAzOnJldHVybiFHUChuPXQuc2VudCgpKXx8NDAxIT09bi5jdXN0b21EYXRhLnNlcnZlckNvZGUmJjQwNCE9PW4uY3VzdG9tRGF0YS5zZXJ2ZXJDb2RlP1szLDVdOls0LHlPKGkuYXBwQ29uZmlnKV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbMyw3XTtjYXNlIDU6cmV0dXJuIHI9SmkoSmkoe30sbykse2F1dGhUb2tlbjp7cmVxdWVzdFN0YXR1czowfX0pLFs0LGdPKGkuYXBwQ29uZmlnLHIpXTtjYXNlIDY6dC5zZW50KCksdC5sYWJlbD03O2Nhc2UgNzp0aHJvdyBuO2Nhc2UgODpyZXR1cm5bMl19fSl9KX0oaSxuKSxufXJldHVybiB0fSldO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKSxyP1s0LHJdOlszLDNdO2Nhc2UgMjpyZXR1cm4gbj10LnNlbnQoKSxbMyw0XTtjYXNlIDM6bj1lLmF1dGhUb2tlbix0LmxhYmVsPTQ7Y2FzZSA0OnJldHVyblsyLG5dfX0pfSl9ZnVuY3Rpb24gRU8odCl7cmV0dXJuIG1PKHQsZnVuY3Rpb24odCl7aWYoIVNPKHQpKXRocm93IEhQLmNyZWF0ZSgibm90LXJlZ2lzdGVyZWQiKTt2YXIgZT10LmF1dGhUb2tlbjtyZXR1cm4gMT09PShlPWUpLnJlcXVlc3RTdGF0dXMmJmUucmVxdWVzdFRpbWUrcVA8RGF0ZS5ub3coKT9KaShKaSh7fSx0KSx7YXV0aFRva2VuOntyZXF1ZXN0U3RhdHVzOjB9fSk6dH0pfWZ1bmN0aW9uIFNPKHQpe3JldHVybiB2b2lkIDAhPT10JiYyPT09dC5yZWdpc3RyYXRpb25TdGF0dXN9ZnVuY3Rpb24gQ08oZSxuKXtyZXR1cm4gdm9pZCAwPT09biYmKG49ITEpLCRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsZnVuY3Rpb24obil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsYk8obildO2Nhc2UgMTpyZXR1cm4oZT10LnNlbnQoKS5yZWdpc3RyYXRpb25Qcm9taXNlKT9bNCxlXTpbMywzXTtjYXNlIDI6dC5zZW50KCksdC5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMl19fSl9KX0oZS5hcHBDb25maWcpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLFs0LFRPKGUsbildO2Nhc2UgMjpyZXR1cm5bMix0LnNlbnQoKS50b2tlbl19fSl9KX1mdW5jdGlvbiBOTyhpLG8pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHI7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1mdW5jdGlvbih0LGUpe2U9ZS5maWQ7cmV0dXJuIHpQKHQpKyIvIitlfShpLG8pLHI9SlAoaSxvKSxuPXttZXRob2Q6IkRFTEVURSIsaGVhZGVyczpyfSxbNCwkUChmdW5jdGlvbigpe3JldHVybiBmZXRjaChlLG4pfSldO2Nhc2UgMTpyZXR1cm4ocj10LnNlbnQoKSkub2s/WzMsM106WzQsWVAoIkRlbGV0ZSBJbnN0YWxsYXRpb24iLHIpXTtjYXNlIDI6dGhyb3cgdC5zZW50KCk7Y2FzZSAzOnJldHVyblsyXX19KX0pfWZ1bmN0aW9uIEFPKHQscil7dmFyIGk9dC5hcHBDb25maWc7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7dU8oKTt2YXIgbj1yTyh0KTsodD1pTy5nZXQobikpfHwodD1uZXcgU2V0LGlPLnNldChuLHQpKSx0LmFkZChlKX0oaSxyKSxmdW5jdGlvbigpe3ZhciB0LGUsbjtlPXIsbj1yTyh0PWkpLCh0PWlPLmdldChuKSkmJih0LmRlbGV0ZShlKSwwPT09dC5zaXplJiZpTy5kZWxldGUobiksY08oKSl9fWZ1bmN0aW9uIGtPKHQpe3JldHVybiBIUC5jcmVhdGUoIm1pc3NpbmctYXBwLWNvbmZpZy12YWx1ZXMiLHt2YWx1ZU5hbWU6dH0pfShoTz1YbCkuSU5URVJOQUwucmVnaXN0ZXJDb21wb25lbnQobmV3IHRzKCJpbnN0YWxsYXRpb25zIixmdW5jdGlvbih0KXt2YXIgZT10LmdldFByb3ZpZGVyKCJhcHAiKS5nZXRJbW1lZGlhdGUoKSxuPXthcHBDb25maWc6ZnVuY3Rpb24odCl7dmFyIGUsbjtpZighdHx8IXQub3B0aW9ucyl0aHJvdyBrTygiQXBwIENvbmZpZ3VyYXRpb24iKTtpZighdC5uYW1lKXRocm93IGtPKCJBcHAgTmFtZSIpO3RyeXtmb3IodmFyIHI9dG8oWyJwcm9qZWN0SWQiLCJhcGlLZXkiLCJhcHBJZCJdKSxpPXIubmV4dCgpOyFpLmRvbmU7aT1yLm5leHQoKSl7dmFyIG89aS52YWx1ZTtpZighdC5vcHRpb25zW29dKXRocm93IGtPKG8pfX1jYXRjaCh0KXtlPXtlcnJvcjp0fX1maW5hbGx5e3RyeXtpJiYhaS5kb25lJiYobj1yLnJldHVybikmJm4uY2FsbChyKX1maW5hbGx5e2lmKGUpdGhyb3cgZS5lcnJvcn19cmV0dXJue2FwcE5hbWU6dC5uYW1lLHByb2plY3RJZDp0Lm9wdGlvbnMucHJvamVjdElkLGFwaUtleTp0Lm9wdGlvbnMuYXBpS2V5LGFwcElkOnQub3B0aW9ucy5hcHBJZH19KGUpLHBsYXRmb3JtTG9nZ2VyUHJvdmlkZXI6dC5nZXRQcm92aWRlcigicGxhdGZvcm0tbG9nZ2VyIil9O3JldHVybnthcHA6ZSxnZXRJZDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LGJPKHIuYXBwQ29uZmlnKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLG49ZS5pbnN0YWxsYXRpb25FbnRyeSwoZS5yZWdpc3RyYXRpb25Qcm9taXNlfHxUTyhyKSkuY2F0Y2goY29uc29sZS5lcnJvciksWzIsbi5maWRdfX0pfSl9KG4pfSxnZXRUb2tlbjpmdW5jdGlvbih0KXtyZXR1cm4gQ08obix0KX0sZGVsZXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsbU8oZT1yLmFwcENvbmZpZyxmdW5jdGlvbih0KXtpZighdHx8MCE9PXQucmVnaXN0cmF0aW9uU3RhdHVzKXJldHVybiB0fSldO2Nhc2UgMTppZighKG49dC5zZW50KCkpKXJldHVyblszLDZdO2lmKDEhPT1uLnJlZ2lzdHJhdGlvblN0YXR1cylyZXR1cm5bMywyXTt0aHJvdyBIUC5jcmVhdGUoImRlbGV0ZS1wZW5kaW5nLXJlZ2lzdHJhdGlvbiIpO2Nhc2UgMjppZigyIT09bi5yZWdpc3RyYXRpb25TdGF0dXMpcmV0dXJuWzMsNl07aWYobmF2aWdhdG9yLm9uTGluZSlyZXR1cm5bMywzXTt0aHJvdyBIUC5jcmVhdGUoImFwcC1vZmZsaW5lIik7Y2FzZSAzOnJldHVybls0LE5PKGUsbildO2Nhc2UgNDpyZXR1cm4gdC5zZW50KCksWzQseU8oZSldO2Nhc2UgNTp0LnNlbnQoKSx0LmxhYmVsPTY7Y2FzZSA2OnJldHVyblsyXX19KX0pfShuKX0sb25JZENoYW5nZTpmdW5jdGlvbih0KXtyZXR1cm4gQU8obix0KX19fSwiUFVCTElDIikpLGhPLnJlZ2lzdGVyVmVyc2lvbigiQGZpcmViYXNlL2luc3RhbGxhdGlvbnMiLCIwLjQuMjMiKTt2YXIgUk8sU249KChHYT17fSlbIm1pc3NpbmctYXBwLWNvbmZpZy12YWx1ZXMiXT0nTWlzc2luZyBBcHAgY29uZmlndXJhdGlvbiB2YWx1ZTogInskdmFsdWVOYW1lfSInLEdhWyJvbmx5LWF2YWlsYWJsZS1pbi13aW5kb3ciXT0iVGhpcyBtZXRob2QgaXMgYXZhaWxhYmxlIGluIGEgV2luZG93IGNvbnRleHQuIixHYVsib25seS1hdmFpbGFibGUtaW4tc3ciXT0iVGhpcyBtZXRob2QgaXMgYXZhaWxhYmxlIGluIGEgc2VydmljZSB3b3JrZXIgY29udGV4dC4iLEdhWyJwZXJtaXNzaW9uLWRlZmF1bHQiXT0iVGhlIG5vdGlmaWNhdGlvbiBwZXJtaXNzaW9uIHdhcyBub3QgZ3JhbnRlZCBhbmQgZGlzbWlzc2VkIGluc3RlYWQuIixHYVsicGVybWlzc2lvbi1ibG9ja2VkIl09IlRoZSBub3RpZmljYXRpb24gcGVybWlzc2lvbiB3YXMgbm90IGdyYW50ZWQgYW5kIGJsb2NrZWQgaW5zdGVhZC4iLEdhWyJ1bnN1cHBvcnRlZC1icm93c2VyIl09IlRoaXMgYnJvd3NlciBkb2Vzbid0IHN1cHBvcnQgdGhlIEFQSSdzIHJlcXVpcmVkIHRvIHVzZSB0aGUgZmlyZWJhc2UgU0RLLiIsR2FbImZhaWxlZC1zZXJ2aWNlLXdvcmtlci1yZWdpc3RyYXRpb24iXT0iV2UgYXJlIHVuYWJsZSB0byByZWdpc3RlciB0aGUgZGVmYXVsdCBzZXJ2aWNlIHdvcmtlci4geyRicm93c2VyRXJyb3JNZXNzYWdlfSIsR2FbInRva2VuLXN1YnNjcmliZS1mYWlsZWQiXT0iQSBwcm9ibGVtIG9jY3VycmVkIHdoaWxlIHN1YnNjcmliaW5nIHRoZSB1c2VyIHRvIEZDTTogeyRlcnJvckluZm99IixHYVsidG9rZW4tc3Vic2NyaWJlLW5vLXRva2VuIl09IkZDTSByZXR1cm5lZCBubyB0b2tlbiB3aGVuIHN1YnNjcmliaW5nIHRoZSB1c2VyIHRvIHB1c2guIixHYVsidG9rZW4tdW5zdWJzY3JpYmUtZmFpbGVkIl09IkEgcHJvYmxlbSBvY2N1cnJlZCB3aGlsZSB1bnN1YnNjcmliaW5nIHRoZSB1c2VyIGZyb20gRkNNOiB7JGVycm9ySW5mb30iLEdhWyJ0b2tlbi11cGRhdGUtZmFpbGVkIl09IkEgcHJvYmxlbSBvY2N1cnJlZCB3aGlsZSB1cGRhdGluZyB0aGUgdXNlciBmcm9tIEZDTTogeyRlcnJvckluZm99IixHYVsidG9rZW4tdXBkYXRlLW5vLXRva2VuIl09IkZDTSByZXR1cm5lZCBubyB0b2tlbiB3aGVuIHVwZGF0aW5nIHRoZSB1c2VyIHRvIHB1c2guIixHYVsidXNlLXN3LWFmdGVyLWdldC10b2tlbiJdPSJUaGUgdXNlU2VydmljZVdvcmtlcigpIG1ldGhvZCBtYXkgb25seSBiZSBjYWxsZWQgb25jZSBhbmQgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGNhbGxpbmcgZ2V0VG9rZW4oKSB0byBlbnN1cmUgeW91ciBzZXJ2aWNlIHdvcmtlciBpcyB1c2VkLiIsR2FbImludmFsaWQtc3ctcmVnaXN0cmF0aW9uIl09IlRoZSBpbnB1dCB0byB1c2VTZXJ2aWNlV29ya2VyKCkgbXVzdCBiZSBhIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24uIixHYVsiaW52YWxpZC1iZy1oYW5kbGVyIl09IlRoZSBpbnB1dCB0byBzZXRCYWNrZ3JvdW5kTWVzc2FnZUhhbmRsZXIoKSBtdXN0IGJlIGEgZnVuY3Rpb24uIixHYVsiaW52YWxpZC12YXBpZC1rZXkiXT0iVGhlIHB1YmxpYyBWQVBJRCBrZXkgbXVzdCBiZSBhIHN0cmluZy4iLEdhWyJ1c2UtdmFwaWQta2V5LWFmdGVyLWdldC10b2tlbiJdPSJUaGUgdXNlUHVibGljVmFwaWRLZXkoKSBtZXRob2QgbWF5IG9ubHkgYmUgY2FsbGVkIG9uY2UgYW5kIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBjYWxsaW5nIGdldFRva2VuKCkgdG8gZW5zdXJlIHlvdXIgVkFQSUQga2V5IGlzIHVzZWQuIixHYSksUE89bmV3IENvKCJtZXNzYWdpbmciLCJNZXNzYWdpbmciLFNuKSxPTz0iQkRPVTk5LWg2N0hjQTZKZUZYSGJTTk11N2UyeU5OdTNSem9NajhUTTRXODhqSVRmcTdabVB2SU0xSXYtNF9sMkx4UWNZd2hxYnkyeEdwV3d6amZBbkc0IixETz0iaHR0cHM6Ly9mY21yZWdpc3RyYXRpb25zLmdvb2dsZWFwaXMuY29tL3YxIix4Tz0iRkNNX01TRyIsTE89Imdvb2dsZS5jLmEuY19pZCI7ZnVuY3Rpb24gTU8odCl7dD1uZXcgVWludDhBcnJheSh0KTtyZXR1cm4gYnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyxubyhbXSxlbyh0KSkpKS5yZXBsYWNlKC89L2csIiIpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIil9KEdhPVJPPVJPfHx7fSkuUFVTSF9SRUNFSVZFRD0icHVzaC1yZWNlaXZlZCIsR2EuTk9USUZJQ0FUSU9OX0NMSUNLRUQ9Im5vdGlmaWNhdGlvbi1jbGlja2VkIjt2YXIgRk89ImZjbV90b2tlbl9kZXRhaWxzX2RiIixVTz01LGpPPSJmY21fdG9rZW5fb2JqZWN0X1N0b3JlIjtmdW5jdGlvbiBxTyhzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbyxuPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4iZGF0YWJhc2VzImluIGluZGV4ZWREQj9bNCxpbmRleGVkREIuZGF0YWJhc2VzKCldOlszLDJdO2Nhc2UgMTppZihlPXQuc2VudCgpLCFlLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdC5uYW1lfSkuaW5jbHVkZXMoRk8pKXJldHVyblsyLG51bGxdO3QubGFiZWw9MjtjYXNlIDI6cmV0dXJuIG89bnVsbCxbNCxVUChGTyxVTyxmdW5jdGlvbihpKXtyZXR1cm4gJGkobix2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGkub2xkVmVyc2lvbjwyP1syXTppLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoak8pP1s0LChyPWkudHJhbnNhY3Rpb24ub2JqZWN0U3RvcmUoak8pKS5pbmRleCgiZmNtU2VuZGVySWQiKS5nZXQocyldOlsyXTtjYXNlIDE6cmV0dXJuIGU9dC5zZW50KCksWzQsci5jbGVhcigpXTtjYXNlIDI6aWYodC5zZW50KCksIWUpcmV0dXJuWzJdO2lmKDI9PT1pLm9sZFZlcnNpb24pe2lmKCEobj1lKS5hdXRofHwhbi5wMjU2ZGh8fCFuLmVuZHBvaW50KXJldHVyblsyXTtvPXt0b2tlbjpuLmZjbVRva2VuLGNyZWF0ZVRpbWU6bnVsbCE9PShyPW4uY3JlYXRlVGltZSkmJnZvaWQgMCE9PXI/cjpEYXRlLm5vdygpLHN1YnNjcmlwdGlvbk9wdGlvbnM6e2F1dGg6bi5hdXRoLHAyNTZkaDpuLnAyNTZkaCxlbmRwb2ludDpuLmVuZHBvaW50LHN3U2NvcGU6bi5zd1Njb3BlLHZhcGlkS2V5OiJzdHJpbmciPT10eXBlb2Ygbi52YXBpZEtleT9uLnZhcGlkS2V5Ok1PKG4udmFwaWRLZXkpfX19ZWxzZSgzPT09aS5vbGRWZXJzaW9ufHw0PT09aS5vbGRWZXJzaW9uKSYmKG89e3Rva2VuOihuPWUpLmZjbVRva2VuLGNyZWF0ZVRpbWU6bi5jcmVhdGVUaW1lLHN1YnNjcmlwdGlvbk9wdGlvbnM6e2F1dGg6TU8obi5hdXRoKSxwMjU2ZGg6TU8obi5wMjU2ZGgpLGVuZHBvaW50Om4uZW5kcG9pbnQsc3dTY29wZTpuLnN3U2NvcGUsdmFwaWRLZXk6TU8obi52YXBpZEtleSl9fSk7cmV0dXJuWzJdfX0pfSl9KV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKS5jbG9zZSgpLFs0LGpQKEZPKV07Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbNCxqUCgiZmNtX3ZhcGlkX2RldGFpbHNfZGIiKV07Y2FzZSA1OnJldHVybiB0LnNlbnQoKSxbNCxqUCgidW5kZWZpbmVkIildO2Nhc2UgNjpyZXR1cm4gdC5zZW50KCksWzIsZnVuY3Rpb24odCl7aWYoIXR8fCF0LnN1YnNjcmlwdGlvbk9wdGlvbnMpcmV0dXJuITE7dmFyIGU9dC5zdWJzY3JpcHRpb25PcHRpb25zO3JldHVybiJudW1iZXIiPT10eXBlb2YgdC5jcmVhdGVUaW1lJiYwPHQuY3JlYXRlVGltZSYmInN0cmluZyI9PXR5cGVvZiB0LnRva2VuJiYwPHQudG9rZW4ubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIGUuYXV0aCYmMDxlLmF1dGgubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIGUucDI1NmRoJiYwPGUucDI1NmRoLmxlbmd0aCYmInN0cmluZyI9PXR5cGVvZiBlLmVuZHBvaW50JiYwPGUuZW5kcG9pbnQubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIGUuc3dTY29wZSYmMDxlLnN3U2NvcGUubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIGUudmFwaWRLZXkmJjA8ZS52YXBpZEtleS5sZW5ndGh9KG8pP286bnVsbF19fSl9KX12YXIgVk89ImZpcmViYXNlLW1lc3NhZ2luZy1kYXRhYmFzZSIsQk89MSxLTz0iZmlyZWJhc2UtbWVzc2FnaW5nLXN0b3JlIixXTz1udWxsO2Z1bmN0aW9uIEhPKCl7cmV0dXJuIFdPPVdPfHxVUChWTyxCTyxmdW5jdGlvbih0KXswPT09dC5vbGRWZXJzaW9uJiZ0LmNyZWF0ZU9iamVjdFN0b3JlKEtPKX0pfWZ1bmN0aW9uIEdPKHIpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIGU9UU8ociksWzQsSE8oKV07Y2FzZSAxOnJldHVybls0LHQuc2VudCgpLnRyYW5zYWN0aW9uKEtPKS5vYmplY3RTdG9yZShLTykuZ2V0KGUpXTtjYXNlIDI6cmV0dXJuKGU9dC5zZW50KCkpP1syLGVdOlszLDNdO2Nhc2UgMzpyZXR1cm5bNCxxTyhyLmFwcENvbmZpZy5zZW5kZXJJZCldO2Nhc2UgNDpyZXR1cm4obj10LnNlbnQoKSk/WzQsek8ocixuKV06WzMsNl07Y2FzZSA1OnJldHVybiB0LnNlbnQoKSxbMixuXTtjYXNlIDY6cmV0dXJuWzJdfX0pfSl9ZnVuY3Rpb24gek8ocixpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPVFPKHIpLFs0LEhPKCldO2Nhc2UgMTpyZXR1cm4gbj10LnNlbnQoKSxbNCwobj1uLnRyYW5zYWN0aW9uKEtPLCJyZWFkd3JpdGUiKSkub2JqZWN0U3RvcmUoS08pLnB1dChpLGUpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFs0LG4uY29tcGxldGVdO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzIsaV19fSl9KX1mdW5jdGlvbiBRTyh0KXtyZXR1cm4gdC5hcHBDb25maWcuYXBwSWR9ZnVuY3Rpb24gWU8ocixpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LEpPKHIpXTtjYXNlIDE6ZT10LnNlbnQoKSxlPXttZXRob2Q6IkRFTEVURSIsaGVhZGVyczplfSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiB0LnRyeXMucHVzaChbMiw1LCw2XSksWzQsZmV0Y2goWE8oci5hcHBDb25maWcpKyIvIitpLGUpXTtjYXNlIDM6cmV0dXJuWzQsdC5zZW50KCkuanNvbigpXTtjYXNlIDQ6aWYoKGU9dC5zZW50KCkpLmVycm9yKXRocm93IG49ZS5lcnJvci5tZXNzYWdlLFBPLmNyZWF0ZSgidG9rZW4tdW5zdWJzY3JpYmUtZmFpbGVkIix7ZXJyb3JJbmZvOm59KTtyZXR1cm5bMyw2XTtjYXNlIDU6dGhyb3cgbj10LnNlbnQoKSxQTy5jcmVhdGUoInRva2VuLXVuc3Vic2NyaWJlLWZhaWxlZCIse2Vycm9ySW5mbzpufSk7Y2FzZSA2OnJldHVyblsyXX19KX0pfWZ1bmN0aW9uIFhPKHQpe3Q9dC5wcm9qZWN0SWQ7cmV0dXJuIERPKyIvcHJvamVjdHMvIit0KyIvcmVnaXN0cmF0aW9ucyJ9ZnVuY3Rpb24gSk8odCl7dmFyIG49dC5hcHBDb25maWcscj10Lmluc3RhbGxhdGlvbnM7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsci5nZXRUb2tlbigpXTtjYXNlIDE6cmV0dXJuIGU9dC5zZW50KCksWzIsbmV3IEhlYWRlcnMoeyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIixBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24iLCJ4LWdvb2ctYXBpLWtleSI6bi5hcGlLZXksIngtZ29vZy1maXJlYmFzZS1pbnN0YWxsYXRpb25zLWF1dGgiOiJGSVMgIitlfSldfX0pfSl9ZnVuY3Rpb24gJE8odCl7dmFyIGU9dC5wMjU2ZGgsbj10LmF1dGgscj10LmVuZHBvaW50LHQ9dC52YXBpZEtleSxlPXt3ZWI6e2VuZHBvaW50OnIsYXV0aDpuLHAyNTZkaDplfX07cmV0dXJuIHQhPT1PTyYmKGUud2ViLmFwcGxpY2F0aW9uUHViS2V5PXQpLGV9ZnVuY3Rpb24gWk8oYyxoLGwpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgcyxhLHU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZigiZ3JhbnRlZCIhPT1Ob3RpZmljYXRpb24ucGVybWlzc2lvbil0aHJvdyBQTy5jcmVhdGUoInBlcm1pc3Npb24tYmxvY2tlZCIpO3JldHVybls0LGZ1bmN0aW9uKG4scil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsbi5wdXNoTWFuYWdlci5nZXRTdWJzY3JpcHRpb24oKV07Y2FzZSAxOnJldHVybihlPXQuc2VudCgpKT9bMixlXTpbMixuLnB1c2hNYW5hZ2VyLnN1YnNjcmliZSh7dXNlclZpc2libGVPbmx5OiEwLGFwcGxpY2F0aW9uU2VydmVyS2V5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgdD0odCsiPSIucmVwZWF0KCg0LXQubGVuZ3RoJTQpJTQpKS5yZXBsYWNlKC9cLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIiksZT1hdG9iKHQpLG49bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpLHI9MDtyPGUubGVuZ3RoOysrciluW3JdPWUuY2hhckNvZGVBdChyKTtyZXR1cm4gbn0ocil9KV19fSl9KX0oaCxsKV07Y2FzZSAxOnJldHVybiB1PXQuc2VudCgpLFs0LEdPKGMpXTtjYXNlIDI6cmV0dXJuIHM9dC5zZW50KCksYT17dmFwaWRLZXk6bCxzd1Njb3BlOmguc2NvcGUsZW5kcG9pbnQ6dS5lbmRwb2ludCxhdXRoOk1PKHUuZ2V0S2V5KCJhdXRoIikpLHAyNTZkaDpNTyh1LmdldEtleSgicDI1NmRoIikpfSxzP1szLDNdOlsyLGVEKGMsYSldO2Nhc2UgMzppZihlPXMuc3Vic2NyaXB0aW9uT3B0aW9ucyxyPShuPWEpLnZhcGlkS2V5PT09ZS52YXBpZEtleSxpPW4uZW5kcG9pbnQ9PT1lLmVuZHBvaW50LG89bi5hdXRoPT09ZS5hdXRoLGU9bi5wMjU2ZGg9PT1lLnAyNTZkaCxyJiZpJiZvJiZlKXJldHVyblszLDhdO3QubGFiZWw9NDtjYXNlIDQ6cmV0dXJuIHQudHJ5cy5wdXNoKFs0LDYsLDddKSxbNCxZTyhjLHMudG9rZW4pXTtjYXNlIDU6cmV0dXJuIHQuc2VudCgpLFszLDddO2Nhc2UgNjpyZXR1cm4gdT10LnNlbnQoKSxjb25zb2xlLndhcm4odSksWzMsN107Y2FzZSA3OnJldHVyblsyLGVEKGMsYSldO2Nhc2UgODpyZXR1cm4gRGF0ZS5ub3coKT49cy5jcmVhdGVUaW1lKzYwNDhlNT9bMixmdW5jdGlvbihpLG8scyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCwzLCw1XSksWzQsZnVuY3Rpb24obyxzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCxKTyhvKV07Y2FzZSAxOmU9dC5zZW50KCksbj0kTyhzLnN1YnNjcmlwdGlvbk9wdGlvbnMpLG49e21ldGhvZDoiUEFUQ0giLGhlYWRlcnM6ZSxib2R5OkpTT04uc3RyaW5naWZ5KG4pfSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiB0LnRyeXMucHVzaChbMiw1LCw2XSksWzQsZmV0Y2goWE8oby5hcHBDb25maWcpKyIvIitzLnRva2VuLG4pXTtjYXNlIDM6cmV0dXJuWzQsdC5zZW50KCkuanNvbigpXTtjYXNlIDQ6cmV0dXJuIHI9dC5zZW50KCksWzMsNl07Y2FzZSA1OnRocm93IGk9dC5zZW50KCksUE8uY3JlYXRlKCJ0b2tlbi11cGRhdGUtZmFpbGVkIix7ZXJyb3JJbmZvOml9KTtjYXNlIDY6aWYoci5lcnJvcil0aHJvdyBpPXIuZXJyb3IubWVzc2FnZSxQTy5jcmVhdGUoInRva2VuLXVwZGF0ZS1mYWlsZWQiLHtlcnJvckluZm86aX0pO2lmKCFyLnRva2VuKXRocm93IFBPLmNyZWF0ZSgidG9rZW4tdXBkYXRlLW5vLXRva2VuIik7cmV0dXJuWzIsci50b2tlbl19fSl9KX0obyxpKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLG49SmkoSmkoe30saSkse3Rva2VuOmUsY3JlYXRlVGltZTpEYXRlLm5vdygpfSksWzQsek8obyxuKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbMixlXTtjYXNlIDM6cmV0dXJuIHI9dC5zZW50KCksWzQsdEQobyxzKV07Y2FzZSA0OnRocm93IHQuc2VudCgpLHI7Y2FzZSA1OnJldHVyblsyXX19KX0pfSh7dG9rZW46cy50b2tlbixjcmVhdGVUaW1lOkRhdGUubm93KCksc3Vic2NyaXB0aW9uT3B0aW9uczphfSxjLGgpXTpbMixzLnRva2VuXTtjYXNlIDk6cmV0dXJuWzJdfXZhciBlLG4scixpLG99KX0pfWZ1bmN0aW9uIHREKG4scil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsR08obildO2Nhc2UgMTpyZXR1cm4oZT10LnNlbnQoKSk/WzQsWU8obixlLnRva2VuKV06WzMsNF07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbNCxmdW5jdGlvbihyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBlPVFPKHIpLFs0LEhPKCldO2Nhc2UgMTpyZXR1cm4gbj10LnNlbnQoKSxbNCwobj1uLnRyYW5zYWN0aW9uKEtPLCJyZWFkd3JpdGUiKSkub2JqZWN0U3RvcmUoS08pLmRlbGV0ZShlKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbNCxuLmNvbXBsZXRlXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfShuKV07Y2FzZSAzOnQuc2VudCgpLHQubGFiZWw9NDtjYXNlIDQ6cmV0dXJuWzQsci5wdXNoTWFuYWdlci5nZXRTdWJzY3JpcHRpb24oKV07Y2FzZSA1OnJldHVybihlPXQuc2VudCgpKT9bMixlLnVuc3Vic2NyaWJlKCldOlsyLCEwXX19KX0pfWZ1bmN0aW9uIGVEKG4scil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsZnVuY3Rpb24obyxzKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCxKTyhvKV07Y2FzZSAxOmU9dC5zZW50KCksbj0kTyhzKSxuPXttZXRob2Q6IlBPU1QiLGhlYWRlcnM6ZSxib2R5OkpTT04uc3RyaW5naWZ5KG4pfSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiB0LnRyeXMucHVzaChbMiw1LCw2XSksWzQsZmV0Y2goWE8oby5hcHBDb25maWcpLG4pXTtjYXNlIDM6cmV0dXJuWzQsdC5zZW50KCkuanNvbigpXTtjYXNlIDQ6cmV0dXJuIHI9dC5zZW50KCksWzMsNl07Y2FzZSA1OnRocm93IGk9dC5zZW50KCksUE8uY3JlYXRlKCJ0b2tlbi1zdWJzY3JpYmUtZmFpbGVkIix7ZXJyb3JJbmZvOml9KTtjYXNlIDY6aWYoci5lcnJvcil0aHJvdyBpPXIuZXJyb3IubWVzc2FnZSxQTy5jcmVhdGUoInRva2VuLXN1YnNjcmliZS1mYWlsZWQiLHtlcnJvckluZm86aX0pO2lmKCFyLnRva2VuKXRocm93IFBPLmNyZWF0ZSgidG9rZW4tc3Vic2NyaWJlLW5vLXRva2VuIik7cmV0dXJuWzIsci50b2tlbl19fSl9KX0obixyKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLGU9e3Rva2VuOmUsY3JlYXRlVGltZTpEYXRlLm5vdygpLHN1YnNjcmlwdGlvbk9wdGlvbnM6cn0sWzQsek8obixlKV07Y2FzZSAyOnJldHVybiB0LnNlbnQoKSxbMixlLnRva2VuXX19KX0pfWZ1bmN0aW9uIG5EKHQpe3ZhciBlPXtmcm9tOnQuZnJvbSxjb2xsYXBzZUtleTp0LmNvbGxhcHNlX2tleX07cmV0dXJuIGZ1bmN0aW9uKHQsZSl7aWYoIWUubm90aWZpY2F0aW9uKXJldHVybjt0Lm5vdGlmaWNhdGlvbj17fTt2YXIgbj1lLm5vdGlmaWNhdGlvbi50aXRsZTtuJiYodC5ub3RpZmljYXRpb24udGl0bGU9bik7bj1lLm5vdGlmaWNhdGlvbi5ib2R5O24mJih0Lm5vdGlmaWNhdGlvbi5ib2R5PW4pO2U9ZS5ub3RpZmljYXRpb24uaW1hZ2U7ZSYmKHQubm90aWZpY2F0aW9uLmltYWdlPWUpfShlLHQpLGZ1bmN0aW9uKHQsZSl7aWYoIWUuZGF0YSlyZXR1cm47dC5kYXRhPWUuZGF0YX0oZSx0KSxmdW5jdGlvbih0LGUpe2lmKCFlLmZjbU9wdGlvbnMpcmV0dXJuO3QuZmNtT3B0aW9ucz17fTt2YXIgbj1lLmZjbU9wdGlvbnMubGluaztuJiYodC5mY21PcHRpb25zLmxpbms9bik7ZT1lLmZjbU9wdGlvbnMuYW5hbHl0aWNzX2xhYmVsO2UmJih0LmZjbU9wdGlvbnMuYW5hbHl0aWNzTGFiZWw9ZSl9KGUsdCksZX1mdW5jdGlvbiByRCh0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQmJnQmJkxPIGluIHR9ZnVuY3Rpb24gaUQoZSl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe3NldFRpbWVvdXQodCxlKX0pfXZhciBvRD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHNELnByb3RvdHlwZSwiYXBwIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMuYXBwfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHNELnByb3RvdHlwZS5zZXRCYWNrZ3JvdW5kTWVzc2FnZUhhbmRsZXI9ZnVuY3Rpb24odCl7aWYodGhpcy5pc09uQmFja2dyb3VuZE1lc3NhZ2VVc2VkPSExLCF0fHwiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBQTy5jcmVhdGUoImludmFsaWQtYmctaGFuZGxlciIpO3RoaXMuYmdNZXNzYWdlSGFuZGxlcj10fSxzRC5wcm90b3R5cGUub25CYWNrZ3JvdW5kTWVzc2FnZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3JldHVybiB0aGlzLmlzT25CYWNrZ3JvdW5kTWVzc2FnZVVzZWQ9ITAsdGhpcy5iZ01lc3NhZ2VIYW5kbGVyPXQsZnVuY3Rpb24oKXtlLmJnTWVzc2FnZUhhbmRsZXI9bnVsbH19LHNELnByb3RvdHlwZS5nZXRUb2tlbj1mdW5jdGlvbigpe3ZhciBuO3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLnZhcGlkS2V5P1szLDJdOls0LEdPKHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMpXTtjYXNlIDE6ZT10LnNlbnQoKSx0aGlzLnZhcGlkS2V5PW51bGwhPT0obj1udWxsPT09KG49bnVsbD09ZT92b2lkIDA6ZS5zdWJzY3JpcHRpb25PcHRpb25zKXx8dm9pZCAwPT09bj92b2lkIDA6bi52YXBpZEtleSkmJnZvaWQgMCE9PW4/bjpPTyx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyLFpPKHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMsc2VsZi5yZWdpc3RyYXRpb24sdGhpcy52YXBpZEtleSldfX0pfSl9LHNELnByb3RvdHlwZS5kZWxldGVUb2tlbj1mdW5jdGlvbigpe3JldHVybiB0RCh0aGlzLmZpcmViYXNlRGVwZW5kZW5jaWVzLHNlbGYucmVnaXN0cmF0aW9uKX0sc0QucHJvdG90eXBlLnJlcXVlc3RQZXJtaXNzaW9uPWZ1bmN0aW9uKCl7dGhyb3cgUE8uY3JlYXRlKCJvbmx5LWF2YWlsYWJsZS1pbi13aW5kb3ciKX0sc0QucHJvdG90eXBlLnVzZVB1YmxpY1ZhcGlkS2V5PWZ1bmN0aW9uKHQpe2lmKG51bGwhPT10aGlzLnZhcGlkS2V5KXRocm93IFBPLmNyZWF0ZSgidXNlLXZhcGlkLWtleS1hZnRlci1nZXQtdG9rZW4iKTtpZigic3RyaW5nIiE9dHlwZW9mIHR8fDA9PT10Lmxlbmd0aCl0aHJvdyBQTy5jcmVhdGUoImludmFsaWQtdmFwaWQta2V5Iik7dGhpcy52YXBpZEtleT10fSxzRC5wcm90b3R5cGUudXNlU2VydmljZVdvcmtlcj1mdW5jdGlvbigpe3Rocm93IFBPLmNyZWF0ZSgib25seS1hdmFpbGFibGUtaW4td2luZG93Iil9LHNELnByb3RvdHlwZS5vbk1lc3NhZ2U9ZnVuY3Rpb24oKXt0aHJvdyBQTy5jcmVhdGUoIm9ubHktYXZhaWxhYmxlLWluLXdpbmRvdyIpfSxzRC5wcm90b3R5cGUub25Ub2tlblJlZnJlc2g9ZnVuY3Rpb24oKXt0aHJvdyBQTy5jcmVhdGUoIm9ubHktYXZhaWxhYmxlLWluLXdpbmRvdyIpfSxzRC5wcm90b3R5cGUub25QdXNoPWZ1bmN0aW9uKGEpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgaSxvLHM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4ocz1mdW5jdGlvbih0KXt2YXIgZT10LmRhdGE7aWYoIWUpcmV0dXJuIG51bGw7dHJ5e3JldHVybiBlLmpzb24oKX1jYXRjaCh0KXtyZXR1cm4gbnVsbH19KGEpKT9bNCxhRCgpXTooY29uc29sZS5kZWJ1ZygiRmlyZWJhc2VNZXNzYWdpbmc6IGZhaWxlZCB0byBnZXQgcGFyc2VkIE1lc3NhZ2VQYXlsb2FkIGZyb20gdGhlIFB1c2hFdmVudC4gU2tpcCBoYW5kbGluZyB0aGUgcHVzaC4iKSxbMl0pO2Nhc2UgMTpyZXR1cm4oaT10LnNlbnQoKSxpLnNvbWUoZnVuY3Rpb24odCl7cmV0dXJuInZpc2libGUiPT09dC52aXNpYmlsaXR5U3RhdGUmJiF0LnVybC5zdGFydHNXaXRoKCJjaHJvbWUtZXh0ZW5zaW9uOi8vIil9KSk/WzIsZnVuY3Rpb24odCxlKXt2YXIgbixyO2UuaXNGaXJlYmFzZU1lc3NhZ2luZz0hMCxlLm1lc3NhZ2VUeXBlPVJPLlBVU0hfUkVDRUlWRUQ7dHJ5e2Zvcih2YXIgaT10byh0KSxvPWkubmV4dCgpOyFvLmRvbmU7bz1pLm5leHQoKSlvLnZhbHVlLnBvc3RNZXNzYWdlKGUpfWNhdGNoKHQpe249e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e28mJiFvLmRvbmUmJihyPWkucmV0dXJuKSYmci5jYWxsKGkpfWZpbmFsbHl7aWYobil0aHJvdyBuLmVycm9yfX19KGkscyldOihvPSExLHMubm90aWZpY2F0aW9uP1s0LGZ1bmN0aW9uKHQpe3ZhciBlPXQuYWN0aW9ucyxuPU5vdGlmaWNhdGlvbi5tYXhBY3Rpb25zO2UmJm4mJmUubGVuZ3RoPm4mJmNvbnNvbGUud2FybigiVGhpcyBicm93c2VyIG9ubHkgc3VwcG9ydHMgIituKyIgYWN0aW9ucy4gVGhlIHJlbWFpbmluZyBhY3Rpb25zIHdpbGwgbm90IGJlIGRpc3BsYXllZC4iKTtyZXR1cm4gc2VsZi5yZWdpc3RyYXRpb24uc2hvd05vdGlmaWNhdGlvbihudWxsIT09KG49dC50aXRsZSkmJnZvaWQgMCE9PW4/bjoiIix0KX0oKChyPUppKHt9LChlPXMpLm5vdGlmaWNhdGlvbikpLmRhdGE9KChuPXt9KVt4T109ZSxuKSxyKSldOlszLDNdKTtjYXNlIDI6dC5zZW50KCksbz0hMCx0LmxhYmVsPTM7Y2FzZSAzOnJldHVybiEwPT09byYmITE9PT10aGlzLmlzT25CYWNrZ3JvdW5kTWVzc2FnZVVzZWQ/WzJdOih0aGlzLmJnTWVzc2FnZUhhbmRsZXImJihzPW5EKHMpLCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmJnTWVzc2FnZUhhbmRsZXI/dGhpcy5iZ01lc3NhZ2VIYW5kbGVyKHMpOnRoaXMuYmdNZXNzYWdlSGFuZGxlci5uZXh0KHMpKSxbNCxpRCgxZTMpXSk7Y2FzZSA0OnJldHVybiB0LnNlbnQoKSxbMl19dmFyIGUsbixyfSl9KX0sc0QucHJvdG90eXBlLm9uU3ViQ2hhbmdlPWZ1bmN0aW9uKG4pe3ZhciByO3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBuLm5ld1N1YnNjcmlwdGlvbj9bMywyXTpbNCx0RCh0aGlzLmZpcmViYXNlRGVwZW5kZW5jaWVzLHNlbGYucmVnaXN0cmF0aW9uKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbMl07Y2FzZSAyOnJldHVybls0LEdPKHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMpXTtjYXNlIDM6cmV0dXJuIGU9dC5zZW50KCksWzQsdEQodGhpcy5maXJlYmFzZURlcGVuZGVuY2llcyxzZWxmLnJlZ2lzdHJhdGlvbildO2Nhc2UgNDpyZXR1cm4gdC5zZW50KCksWzQsWk8odGhpcy5maXJlYmFzZURlcGVuZGVuY2llcyxzZWxmLnJlZ2lzdHJhdGlvbixudWxsIT09KHI9bnVsbD09PShyPW51bGw9PWU/dm9pZCAwOmUuc3Vic2NyaXB0aW9uT3B0aW9ucyl8fHZvaWQgMD09PXI/dm9pZCAwOnIudmFwaWRLZXkpJiZ2b2lkIDAhPT1yP3I6T08pXTtjYXNlIDU6cmV0dXJuIHQuc2VudCgpLFsyXX19KX0pfSxzRC5wcm90b3R5cGUub25Ob3RpZmljYXRpb25DbGljaz1mdW5jdGlvbihzKXt2YXIgYTtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGksbztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihlPW51bGw9PT0oYT1udWxsPT09KGE9cy5ub3RpZmljYXRpb24pfHx2b2lkIDA9PT1hP3ZvaWQgMDphLmRhdGEpfHx2b2lkIDA9PT1hP3ZvaWQgMDphW3hPXSk/cy5hY3Rpb24/WzJdOihzLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLHMubm90aWZpY2F0aW9uLmNsb3NlKCksKG49ZnVuY3Rpb24odCl7dmFyIGUsbj1udWxsIT09KGU9bnVsbD09PShlPXQuZmNtT3B0aW9ucyl8fHZvaWQgMD09PWU/dm9pZCAwOmUubGluaykmJnZvaWQgMCE9PWU/ZTpudWxsPT09KG49dC5ub3RpZmljYXRpb24pfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLmNsaWNrX2FjdGlvbjtpZihuKXJldHVybiBuO3JldHVybiByRCh0LmRhdGEpP3NlbGYubG9jYXRpb24ub3JpZ2luOm51bGx9KGUpKT8ocj1uZXcgVVJMKG4sc2VsZi5sb2NhdGlvbi5ocmVmKSxpPW5ldyBVUkwoc2VsZi5sb2NhdGlvbi5vcmlnaW4pLHIuaG9zdCE9PWkuaG9zdD9bMl06WzQsZnVuY3Rpb24odSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scixpLG8scyxhO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsYUQoKV07Y2FzZSAxOmU9dC5zZW50KCk7dHJ5e2ZvcihuPXRvKGUpLHI9bi5uZXh0KCk7IXIuZG9uZTtyPW4ubmV4dCgpKWlmKGk9ci52YWx1ZSxvPW5ldyBVUkwoaS51cmwsc2VsZi5sb2NhdGlvbi5ocmVmKSx1Lmhvc3Q9PT1vLmhvc3QpcmV0dXJuWzIsaV19Y2F0Y2godCl7cz17ZXJyb3I6dH19ZmluYWxseXt0cnl7ciYmIXIuZG9uZSYmKGE9bi5yZXR1cm4pJiZhLmNhbGwobil9ZmluYWxseXtpZihzKXRocm93IHMuZXJyb3J9fXJldHVyblsyLG51bGxdfX0pfSl9KHIpXSk6WzJdKTpbMl07Y2FzZSAxOnJldHVybihvPXQuc2VudCgpKT9bMyw0XTpbNCxzZWxmLmNsaWVudHMub3BlbldpbmRvdyhuKV07Y2FzZSAyOnJldHVybiBvPXQuc2VudCgpLFs0LGlEKDNlMyldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzMsNl07Y2FzZSA0OnJldHVybls0LG8uZm9jdXMoKV07Y2FzZSA1Om89dC5zZW50KCksdC5sYWJlbD02O2Nhc2UgNjpyZXR1cm4gbz8oZS5tZXNzYWdlVHlwZT1STy5OT1RJRklDQVRJT05fQ0xJQ0tFRCxlLmlzRmlyZWJhc2VNZXNzYWdpbmc9ITAsWzIsby5wb3N0TWVzc2FnZShlKV0pOlsyXX19KX0pfSxzRCk7ZnVuY3Rpb24gc0QodCl7dmFyIGU9dGhpczt0aGlzLmZpcmViYXNlRGVwZW5kZW5jaWVzPXQsdGhpcy5pc09uQmFja2dyb3VuZE1lc3NhZ2VVc2VkPW51bGwsdGhpcy52YXBpZEtleT1udWxsLHRoaXMuYmdNZXNzYWdlSGFuZGxlcj1udWxsLHNlbGYuYWRkRXZlbnRMaXN0ZW5lcigicHVzaCIsZnVuY3Rpb24odCl7dC53YWl0VW50aWwoZS5vblB1c2godCkpfSksc2VsZi5hZGRFdmVudExpc3RlbmVyKCJwdXNoc3Vic2NyaXB0aW9uY2hhbmdlIixmdW5jdGlvbih0KXt0LndhaXRVbnRpbChlLm9uU3ViQ2hhbmdlKHQpKX0pLHNlbGYuYWRkRXZlbnRMaXN0ZW5lcigibm90aWZpY2F0aW9uY2xpY2siLGZ1bmN0aW9uKHQpe3Qud2FpdFVudGlsKGUub25Ob3RpZmljYXRpb25DbGljayh0KSl9KX1mdW5jdGlvbiBhRCgpe3JldHVybiBzZWxmLmNsaWVudHMubWF0Y2hBbGwoe3R5cGU6IndpbmRvdyIsaW5jbHVkZVVuY29udHJvbGxlZDohMH0pfXZhciB1RD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KGNELnByb3RvdHlwZSwiYXBwIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMuYXBwfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGNELnByb3RvdHlwZS5tZXNzYWdlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihpKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihuPWkuZGF0YSkuaXNGaXJlYmFzZU1lc3NhZ2luZz8odGhpcy5vbk1lc3NhZ2VDYWxsYmFjayYmbi5tZXNzYWdlVHlwZT09PVJPLlBVU0hfUkVDRUlWRUQmJigiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5vbk1lc3NhZ2VDYWxsYmFjaz90aGlzLm9uTWVzc2FnZUNhbGxiYWNrKChkZWxldGUoZT1PYmplY3QuYXNzaWduKHt9LG4pKS5tZXNzYWdlVHlwZSxkZWxldGUgZS5pc0ZpcmViYXNlTWVzc2FnaW5nLGUpKTp0aGlzLm9uTWVzc2FnZUNhbGxiYWNrLm5leHQoT2JqZWN0LmFzc2lnbih7fSxuKSkpLHJEKHI9bi5kYXRhKSYmIjEiPT09clsiZ29vZ2xlLmMuYS5lIl0/WzQsdGhpcy5sb2dFdmVudChuLm1lc3NhZ2VUeXBlLHIpXTpbMywyXSk6WzJdO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyXX12YXIgZX0pfSl9LGNELnByb3RvdHlwZS5nZXRWYXBpZEtleT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhcGlkS2V5fSxjRC5wcm90b3R5cGUuZ2V0U3dSZWc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zd1JlZ2lzdHJhdGlvbn0sY0QucHJvdG90eXBlLmdldFRva2VuPWZ1bmN0aW9uKGUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiJkZWZhdWx0IiE9PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uP1szLDJdOls0LE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpXTtjYXNlIDE6dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjppZigiZ3JhbnRlZCIhPT1Ob3RpZmljYXRpb24ucGVybWlzc2lvbil0aHJvdyBQTy5jcmVhdGUoInBlcm1pc3Npb24tYmxvY2tlZCIpO3JldHVybls0LHRoaXMudXBkYXRlVmFwaWRLZXkobnVsbD09ZT92b2lkIDA6ZS52YXBpZEtleSldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzQsdGhpcy51cGRhdGVTd1JlZyhudWxsPT1lP3ZvaWQgMDplLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24pXTtjYXNlIDQ6cmV0dXJuIHQuc2VudCgpLFsyLFpPKHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMsdGhpcy5zd1JlZ2lzdHJhdGlvbix0aGlzLnZhcGlkS2V5KV19fSl9KX0sY0QucHJvdG90eXBlLnVwZGF0ZVZhcGlkS2V5PWZ1bmN0aW9uKGUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtyZXR1cm4gZT90aGlzLnZhcGlkS2V5PWU6dGhpcy52YXBpZEtleXx8KHRoaXMudmFwaWRLZXk9T08pLFsyXX0pfSl9LGNELnByb3RvdHlwZS51cGRhdGVTd1JlZz1mdW5jdGlvbihlKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZXx8dGhpcy5zd1JlZ2lzdHJhdGlvbj9bMywyXTpbNCx0aGlzLnJlZ2lzdGVyRGVmYXVsdFN3KCldO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOmlmKCFlJiZ0aGlzLnN3UmVnaXN0cmF0aW9uKXJldHVyblsyXTtpZighKGUgaW5zdGFuY2VvZiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uKSl0aHJvdyBQTy5jcmVhdGUoImludmFsaWQtc3ctcmVnaXN0cmF0aW9uIik7cmV0dXJuIHRoaXMuc3dSZWdpc3RyYXRpb249ZSxbMl19fSl9KX0sY0QucHJvdG90eXBlLnJlZ2lzdGVyRGVmYXVsdFN3PWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHQudHJ5cy5wdXNoKFswLDIsLDNdKSxlPXRoaXMsWzQsbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoIi9maXJlYmFzZS1tZXNzYWdpbmctc3cuanMiLHtzY29wZToiL2ZpcmViYXNlLWNsb3VkLW1lc3NhZ2luZy1wdXNoLXNjb3BlIn0pXTtjYXNlIDE6cmV0dXJuIGUuc3dSZWdpc3RyYXRpb249dC5zZW50KCksdGhpcy5zd1JlZ2lzdHJhdGlvbi51cGRhdGUoKS5jYXRjaChmdW5jdGlvbigpe30pLFszLDNdO2Nhc2UgMjp0aHJvdyBlPXQuc2VudCgpLFBPLmNyZWF0ZSgiZmFpbGVkLXNlcnZpY2Utd29ya2VyLXJlZ2lzdHJhdGlvbiIse2Jyb3dzZXJFcnJvck1lc3NhZ2U6ZS5tZXNzYWdlfSk7Y2FzZSAzOnJldHVyblsyXX19KX0pfSxjRC5wcm90b3R5cGUuZGVsZXRlVG9rZW49ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdGhpcy5zd1JlZ2lzdHJhdGlvbj9bMywyXTpbNCx0aGlzLnJlZ2lzdGVyRGVmYXVsdFN3KCldO2Nhc2UgMTp0LnNlbnQoKSx0LmxhYmVsPTI7Y2FzZSAyOnJldHVyblsyLHREKHRoaXMuZmlyZWJhc2VEZXBlbmRlbmNpZXMsdGhpcy5zd1JlZ2lzdHJhdGlvbildfX0pfSl9LGNELnByb3RvdHlwZS5yZXF1ZXN0UGVybWlzc2lvbj1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiJncmFudGVkIj09PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uP1syXTpbNCxOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKV07Y2FzZSAxOmlmKCJncmFudGVkIj09PShlPXQuc2VudCgpKSlyZXR1cm5bMl07dGhyb3ciZGVuaWVkIj09PWU/UE8uY3JlYXRlKCJwZXJtaXNzaW9uLWJsb2NrZWQiKTpQTy5jcmVhdGUoInBlcm1pc3Npb24tZGVmYXVsdCIpfX0pfSl9LGNELnByb3RvdHlwZS51c2VQdWJsaWNWYXBpZEtleT1mdW5jdGlvbih0KXtpZihudWxsIT09dGhpcy52YXBpZEtleSl0aHJvdyBQTy5jcmVhdGUoInVzZS12YXBpZC1rZXktYWZ0ZXItZ2V0LXRva2VuIik7aWYoInN0cmluZyIhPXR5cGVvZiB0fHwwPT09dC5sZW5ndGgpdGhyb3cgUE8uY3JlYXRlKCJpbnZhbGlkLXZhcGlkLWtleSIpO3RoaXMudmFwaWRLZXk9dH0sY0QucHJvdG90eXBlLnVzZVNlcnZpY2VXb3JrZXI9ZnVuY3Rpb24odCl7aWYoISh0IGluc3RhbmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbikpdGhyb3cgUE8uY3JlYXRlKCJpbnZhbGlkLXN3LXJlZ2lzdHJhdGlvbiIpO2lmKHRoaXMuc3dSZWdpc3RyYXRpb24pdGhyb3cgUE8uY3JlYXRlKCJ1c2Utc3ctYWZ0ZXItZ2V0LXRva2VuIik7dGhpcy5zd1JlZ2lzdHJhdGlvbj10fSxjRC5wcm90b3R5cGUub25NZXNzYWdlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMub25NZXNzYWdlQ2FsbGJhY2s9dCxmdW5jdGlvbigpe2Uub25NZXNzYWdlQ2FsbGJhY2s9bnVsbH19LGNELnByb3RvdHlwZS5zZXRCYWNrZ3JvdW5kTWVzc2FnZUhhbmRsZXI9ZnVuY3Rpb24oKXt0aHJvdyBQTy5jcmVhdGUoIm9ubHktYXZhaWxhYmxlLWluLXN3Iil9LGNELnByb3RvdHlwZS5vbkJhY2tncm91bmRNZXNzYWdlPWZ1bmN0aW9uKCl7dGhyb3cgUE8uY3JlYXRlKCJvbmx5LWF2YWlsYWJsZS1pbi1zdyIpfSxjRC5wcm90b3R5cGUub25Ub2tlblJlZnJlc2g9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt9fSxjRC5wcm90b3R5cGUubG9nRXZlbnQ9ZnVuY3Rpb24obixyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1mdW5jdGlvbih0KXtzd2l0Y2godCl7Y2FzZSBSTy5OT1RJRklDQVRJT05fQ0xJQ0tFRDpyZXR1cm4ibm90aWZpY2F0aW9uX29wZW4iO2Nhc2UgUk8uUFVTSF9SRUNFSVZFRDpyZXR1cm4ibm90aWZpY2F0aW9uX2ZvcmVncm91bmQiO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yfX0obiksWzQsdGhpcy5maXJlYmFzZURlcGVuZGVuY2llcy5hbmFseXRpY3NQcm92aWRlci5nZXQoKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKS5sb2dFdmVudChlLHttZXNzYWdlX2lkOnJbTE9dLG1lc3NhZ2VfbmFtZTpyWyJnb29nbGUuYy5hLmNfbCJdLG1lc3NhZ2VfdGltZTpyWyJnb29nbGUuYy5hLnRzIl0sbWVzc2FnZV9kZXZpY2VfdGltZTpNYXRoLmZsb29yKERhdGUubm93KCkvMWUzKX0pLFsyXX19KX0pfSxjRCk7ZnVuY3Rpb24gY0QodCl7dmFyIGU9dGhpczt0aGlzLmZpcmViYXNlRGVwZW5kZW5jaWVzPXQsdGhpcy52YXBpZEtleT1udWxsLHRoaXMub25NZXNzYWdlQ2FsbGJhY2s9bnVsbCxuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbih0KXtyZXR1cm4gZS5tZXNzYWdlRXZlbnRMaXN0ZW5lcih0KX0pfWZ1bmN0aW9uIGhEKHQpe3JldHVybiBQTy5jcmVhdGUoIm1pc3NpbmctYXBwLWNvbmZpZy12YWx1ZXMiLHt2YWx1ZU5hbWU6dH0pfVNuPXtpc1N1cHBvcnRlZDpsRH07ZnVuY3Rpb24gbEQoKXtyZXR1cm4gc2VsZiYmIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJpbiBzZWxmPyJpbmRleGVkREIiaW4gc2VsZiYmbnVsbCE9PWluZGV4ZWREQiYmIlB1c2hNYW5hZ2VyImluIHNlbGYmJiJOb3RpZmljYXRpb24iaW4gc2VsZiYmU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbi5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoInNob3dOb3RpZmljYXRpb24iKSYmUHVzaFN1YnNjcmlwdGlvbi5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoImdldEtleSIpOiJpbmRleGVkREIiaW4gd2luZG93JiZudWxsIT09aW5kZXhlZERCJiZuYXZpZ2F0b3IuY29va2llRW5hYmxlZCYmInNlcnZpY2VXb3JrZXIiaW4gbmF2aWdhdG9yJiYiUHVzaE1hbmFnZXIiaW4gd2luZG93JiYiTm90aWZpY2F0aW9uImluIHdpbmRvdyYmImZldGNoImluIHdpbmRvdyYmU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbi5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoInNob3dOb3RpZmljYXRpb24iKSYmUHVzaFN1YnNjcmlwdGlvbi5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoImdldEtleSIpfVhsLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygibWVzc2FnaW5nIixmdW5jdGlvbih0KXt2YXIgZT10LmdldFByb3ZpZGVyKCJhcHAiKS5nZXRJbW1lZGlhdGUoKSx0PXthcHA6ZSxhcHBDb25maWc6ZnVuY3Rpb24odCl7dmFyIGUsbjtpZighdHx8IXQub3B0aW9ucyl0aHJvdyBoRCgiQXBwIENvbmZpZ3VyYXRpb24gT2JqZWN0Iik7aWYoIXQubmFtZSl0aHJvdyBoRCgiQXBwIE5hbWUiKTt2YXIgcj10Lm9wdGlvbnM7dHJ5e2Zvcih2YXIgaT10byhbInByb2plY3RJZCIsImFwaUtleSIsImFwcElkIiwibWVzc2FnaW5nU2VuZGVySWQiXSksbz1pLm5leHQoKTshby5kb25lO289aS5uZXh0KCkpe3ZhciBzPW8udmFsdWU7aWYoIXJbc10pdGhyb3cgaEQocyl9fWNhdGNoKHQpe2U9e2Vycm9yOnR9fWZpbmFsbHl7dHJ5e28mJiFvLmRvbmUmJihuPWkucmV0dXJuKSYmbi5jYWxsKGkpfWZpbmFsbHl7aWYoZSl0aHJvdyBlLmVycm9yfX1yZXR1cm57YXBwTmFtZTp0Lm5hbWUscHJvamVjdElkOnIucHJvamVjdElkLGFwaUtleTpyLmFwaUtleSxhcHBJZDpyLmFwcElkLHNlbmRlcklkOnIubWVzc2FnaW5nU2VuZGVySWR9fShlKSxpbnN0YWxsYXRpb25zOnQuZ2V0UHJvdmlkZXIoImluc3RhbGxhdGlvbnMiKS5nZXRJbW1lZGlhdGUoKSxhbmFseXRpY3NQcm92aWRlcjp0LmdldFByb3ZpZGVyKCJhbmFseXRpY3MtaW50ZXJuYWwiKX07aWYoIWxEKCkpdGhyb3cgUE8uY3JlYXRlKCJ1bnN1cHBvcnRlZC1icm93c2VyIik7cmV0dXJuIG5ldyhzZWxmJiYiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlImluIHNlbGY/b0Q6dUQpKHQpfSwiUFVCTElDIikuc2V0U2VydmljZVByb3BzKFNuKSk7dmFyIGZELHBEPSJmaXJlYmFzZXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20iLGREPSJzdG9yYWdlQnVja2V0Iix2RD0oWGkoZ0QsZkQ9RW8pLGdELnByb3RvdHlwZS5fY29kZUVxdWFscz1mdW5jdGlvbih0KXtyZXR1cm4geUQodCk9PT10aGlzLmNvZGV9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnRC5wcm90b3R5cGUsIm1lc3NhZ2UiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jdXN0b21EYXRhLnNlcnZlclJlc3BvbnNlP3RoaXMubWVzc2FnZSsiXG4iK3RoaXMuY3VzdG9tRGF0YS5zZXJ2ZXJSZXNwb25zZTp0aGlzLm1lc3NhZ2V9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGdELnByb3RvdHlwZSwic2VydmVyUmVzcG9uc2UiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jdXN0b21EYXRhLnNlcnZlclJlc3BvbnNlfSxzZXQ6ZnVuY3Rpb24odCl7dGhpcy5jdXN0b21EYXRhLnNlcnZlclJlc3BvbnNlPXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksZ0QpO2Z1bmN0aW9uIGdEKHQsZSl7dD1mRC5jYWxsKHRoaXMseUQodCksIkZpcmViYXNlIFN0b3JhZ2U6ICIrZSsiICgiK3lEKHQpKyIpIil8fHRoaXM7cmV0dXJuIHQuY3VzdG9tRGF0YT17c2VydmVyUmVzcG9uc2U6bnVsbH0sT2JqZWN0LnNldFByb3RvdHlwZU9mKHQsZ0QucHJvdG90eXBlKSx0fWZ1bmN0aW9uIHlEKHQpe3JldHVybiJzdG9yYWdlLyIrdH1mdW5jdGlvbiBtRCgpe3JldHVybiBuZXcgdkQoInVua25vd24iLCJBbiB1bmtub3duIGVycm9yIG9jY3VycmVkLCBwbGVhc2UgY2hlY2sgdGhlIGVycm9yIHBheWxvYWQgZm9yIHNlcnZlciByZXNwb25zZS4iKX1mdW5jdGlvbiBiRCgpe3JldHVybiBuZXcgdkQoImNhbmNlbGVkIiwiVXNlciBjYW5jZWxlZCB0aGUgdXBsb2FkL2Rvd25sb2FkLiIpfWZ1bmN0aW9uIHdEKCl7cmV0dXJuIG5ldyB2RCgiY2Fubm90LXNsaWNlLWJsb2IiLCJDYW5ub3Qgc2xpY2UgYmxvYiBmb3IgdXBsb2FkLiBQbGVhc2UgcmV0cnkgdGhlIHVwbG9hZC4iKX1mdW5jdGlvbiBfRCh0KXtyZXR1cm4gbmV3IHZEKCJpbnZhbGlkLWFyZ3VtZW50Iix0KX1mdW5jdGlvbiBJRCgpe3JldHVybiBuZXcgdkQoImFwcC1kZWxldGVkIiwiVGhlIEZpcmViYXNlIGFwcCB3YXMgZGVsZXRlZC4iKX1mdW5jdGlvbiBURCh0KXtyZXR1cm4gbmV3IHZEKCJpbnZhbGlkLXJvb3Qtb3BlcmF0aW9uIiwiVGhlIG9wZXJhdGlvbiAnIit0KyInIGNhbm5vdCBiZSBwZXJmb3JtZWQgb24gYSByb290IHJlZmVyZW5jZSwgY3JlYXRlIGEgbm9uLXJvb3QgcmVmZXJlbmNlIHVzaW5nIGNoaWxkLCBzdWNoIGFzIC5jaGlsZCgnZmlsZS5wbmcnKS4iKX1mdW5jdGlvbiBFRCh0LGUpe3JldHVybiBuZXcgdkQoImludmFsaWQtZm9ybWF0IiwiU3RyaW5nIGRvZXMgbm90IG1hdGNoIGZvcm1hdCAnIit0KyInOiAiK2UpfWZ1bmN0aW9uIFNEKHQpe3Rocm93IG5ldyB2RCgiaW50ZXJuYWwtZXJyb3IiLCJJbnRlcm5hbCBlcnJvcjogIit0KX12YXIgQ0Q9e1JBVzoicmF3IixCQVNFNjQ6ImJhc2U2NCIsQkFTRTY0VVJMOiJiYXNlNjR1cmwiLERBVEFfVVJMOiJkYXRhX3VybCJ9LE5EPWZ1bmN0aW9uKHQsZSl7dGhpcy5kYXRhPXQsdGhpcy5jb250ZW50VHlwZT1lfHxudWxsfTtmdW5jdGlvbiBBRCh0LGUpe3N3aXRjaCh0KXtjYXNlIENELlJBVzpyZXR1cm4gbmV3IE5EKGtEKGUpKTtjYXNlIENELkJBU0U2NDpjYXNlIENELkJBU0U2NFVSTDpyZXR1cm4gbmV3IE5EKFJEKHQsZSkpO2Nhc2UgQ0QuREFUQV9VUkw6cmV0dXJuIG5ldyBORChmdW5jdGlvbih0KXt0PW5ldyBQRCh0KTtyZXR1cm4gdC5iYXNlNjQ/UkQoQ0QuQkFTRTY0LHQucmVzdCk6ZnVuY3Rpb24odCl7dmFyIGU7dHJ5e2U9ZGVjb2RlVVJJQ29tcG9uZW50KHQpfWNhdGNoKHQpe3Rocm93IEVEKENELkRBVEFfVVJMLCJNYWxmb3JtZWQgZGF0YSBVUkwuIil9cmV0dXJuIGtEKGUpfSh0LnJlc3QpfShlKSxuZXcgUEQoZSkuY29udGVudFR5cGUpfXRocm93IG1EKCl9ZnVuY3Rpb24ga0QodCl7Zm9yKHZhciBlPVtdLG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIHI9dC5jaGFyQ29kZUF0KG4pO3I8PTEyNz9lLnB1c2gocik6cjw9MjA0Nz9lLnB1c2goMTkyfHI+PjYsMTI4fDYzJnIpOjU1Mjk2PT0oNjQ1MTImcik/bjx0Lmxlbmd0aC0xJiY1NjMyMD09KDY0NTEyJnQuY2hhckNvZGVBdChuKzEpKT8ocj02NTUzNnwoMTAyMyZyKTw8MTB8MTAyMyZ0LmNoYXJDb2RlQXQoKytuKSxlLnB1c2goMjQwfHI+PjE4LDEyOHxyPj4xMiY2MywxMjh8cj4+NiY2MywxMjh8NjMmcikpOmUucHVzaCgyMzksMTkxLDE4OSk6NTYzMjA9PSg2NDUxMiZyKT9lLnB1c2goMjM5LDE5MSwxODkpOmUucHVzaCgyMjR8cj4+MTIsMTI4fHI+PjYmNjMsMTI4fDYzJnIpfXJldHVybiBuZXcgVWludDhBcnJheShlKX1mdW5jdGlvbiBSRChlLHQpe3N3aXRjaChlKXtjYXNlIENELkJBU0U2NDp2YXIgbj0tMSE9PXQuaW5kZXhPZigiLSIpLHI9LTEhPT10LmluZGV4T2YoIl8iKTtpZihufHxyKXRocm93IEVEKGUsIkludmFsaWQgY2hhcmFjdGVyICciKyhuPyItIjoiXyIpKyInIGZvdW5kOiBpcyBpdCBiYXNlNjR1cmwgZW5jb2RlZD8iKTticmVhaztjYXNlIENELkJBU0U2NFVSTDpyPS0xIT09dC5pbmRleE9mKCIrIiksbj0tMSE9PXQuaW5kZXhPZigiLyIpO2lmKHJ8fG4pdGhyb3cgRUQoZSwiSW52YWxpZCBjaGFyYWN0ZXIgJyIrKHI/IisiOiIvIikrIicgZm91bmQ6IGlzIGl0IGJhc2U2NCBlbmNvZGVkPyIpO3Q9dC5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKX12YXIgaTt0cnl7aT1hdG9iKHQpfWNhdGNoKHQpe3Rocm93IEVEKGUsIkludmFsaWQgY2hhcmFjdGVyIGZvdW5kIil9Zm9yKHZhciBvPW5ldyBVaW50OEFycmF5KGkubGVuZ3RoKSxzPTA7czxpLmxlbmd0aDtzKyspb1tzXT1pLmNoYXJDb2RlQXQocyk7cmV0dXJuIG99dmFyIFBEPWZ1bmN0aW9uKHQpe3ZhciBlO2lmKHRoaXMuYmFzZTY0PSExLCh0aGlzLmNvbnRlbnRUeXBlPW51bGwpPT09KGU9dC5tYXRjaCgvXmRhdGE6KFteLF0rKT8sLykpKXRocm93IEVEKENELkRBVEFfVVJMLCJNdXN0IGJlIGZvcm1hdHRlZCAnZGF0YTpbPG1lZGlhdHlwZT5dWztiYXNlNjRdLDxkYXRhPiIpO3ZhciBuLHI9ZVsxXXx8bnVsbDtudWxsIT1yJiYodGhpcy5iYXNlNjQ9KG49IjtiYXNlNjQiLChlPXIpLmxlbmd0aD49bi5sZW5ndGgmJmUuc3Vic3RyaW5nKGUubGVuZ3RoLW4ubGVuZ3RoKT09PW4pLHRoaXMuY29udGVudFR5cGU9dGhpcy5iYXNlNjQ/ci5zdWJzdHJpbmcoMCxyLmxlbmd0aC0iO2Jhc2U2NCIubGVuZ3RoKTpyKSx0aGlzLnJlc3Q9dC5zdWJzdHJpbmcodC5pbmRleE9mKCIsIikrMSl9O3ZhciBPRCxERD17U1RBVEVfQ0hBTkdFRDoic3RhdGVfY2hhbmdlZCJ9LHhEPXtSVU5OSU5HOiJydW5uaW5nIixQQVVTRUQ6InBhdXNlZCIsU1VDQ0VTUzoic3VjY2VzcyIsQ0FOQ0VMRUQ6ImNhbmNlbGVkIixFUlJPUjoiZXJyb3IifTtmdW5jdGlvbiBMRCh0KXtzd2l0Y2godCl7Y2FzZSJydW5uaW5nIjpjYXNlInBhdXNpbmciOmNhc2UiY2FuY2VsaW5nIjpyZXR1cm4geEQuUlVOTklORztjYXNlInBhdXNlZCI6cmV0dXJuIHhELlBBVVNFRDtjYXNlInN1Y2Nlc3MiOnJldHVybiB4RC5TVUNDRVNTO2Nhc2UiY2FuY2VsZWQiOnJldHVybiB4RC5DQU5DRUxFRDtjYXNlImVycm9yIjpkZWZhdWx0OnJldHVybiB4RC5FUlJPUn19KEdhPU9EPU9EfHx7fSlbR2EuTk9fRVJST1I9MF09Ik5PX0VSUk9SIixHYVtHYS5ORVRXT1JLX0VSUk9SPTFdPSJORVRXT1JLX0VSUk9SIixHYVtHYS5BQk9SVD0yXT0iQUJPUlQiO3ZhciBNRD0oRkQucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24odCxlLG4scil7aWYodGhpcy5zZW50Xyl0aHJvdyBTRCgiY2Fubm90IC5zZW5kKCkgbW9yZSB0aGFuIG9uY2UiKTtpZih0aGlzLnNlbnRfPSEwLHRoaXMueGhyXy5vcGVuKGUsdCwhMCksdm9pZCAwIT09cilmb3IodmFyIGkgaW4gcilyLmhhc093blByb3BlcnR5KGkpJiZ0aGlzLnhocl8uc2V0UmVxdWVzdEhlYWRlcihpLHJbaV0udG9TdHJpbmcoKSk7cmV0dXJuIHZvaWQgMCE9PW4/dGhpcy54aHJfLnNlbmQobik6dGhpcy54aHJfLnNlbmQoKSx0aGlzLnNlbmRQcm9taXNlX30sRkQucHJvdG90eXBlLmdldEVycm9yQ29kZT1mdW5jdGlvbigpe2lmKCF0aGlzLnNlbnRfKXRocm93IFNEKCJjYW5ub3QgLmdldEVycm9yQ29kZSgpIGJlZm9yZSBzZW5kaW5nIik7cmV0dXJuIHRoaXMuZXJyb3JDb2RlX30sRkQucHJvdG90eXBlLmdldFN0YXR1cz1mdW5jdGlvbigpe2lmKCF0aGlzLnNlbnRfKXRocm93IFNEKCJjYW5ub3QgLmdldFN0YXR1cygpIGJlZm9yZSBzZW5kaW5nIik7dHJ5e3JldHVybiB0aGlzLnhocl8uc3RhdHVzfWNhdGNoKHQpe3JldHVybi0xfX0sRkQucHJvdG90eXBlLmdldFJlc3BvbnNlVGV4dD1mdW5jdGlvbigpe2lmKCF0aGlzLnNlbnRfKXRocm93IFNEKCJjYW5ub3QgLmdldFJlc3BvbnNlVGV4dCgpIGJlZm9yZSBzZW5kaW5nIik7cmV0dXJuIHRoaXMueGhyXy5yZXNwb25zZVRleHR9LEZELnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMueGhyXy5hYm9ydCgpfSxGRC5wcm90b3R5cGUuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMueGhyXy5nZXRSZXNwb25zZUhlYWRlcih0KX0sRkQucHJvdG90eXBlLmFkZFVwbG9hZFByb2dyZXNzTGlzdGVuZXI9ZnVuY3Rpb24odCl7bnVsbCE9dGhpcy54aHJfLnVwbG9hZCYmdGhpcy54aHJfLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCJwcm9ncmVzcyIsdCl9LEZELnByb3RvdHlwZS5yZW1vdmVVcGxvYWRQcm9ncmVzc0xpc3RlbmVyPWZ1bmN0aW9uKHQpe251bGwhPXRoaXMueGhyXy51cGxvYWQmJnRoaXMueGhyXy51cGxvYWQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicHJvZ3Jlc3MiLHQpfSxGRCk7ZnVuY3Rpb24gRkQoKXt2YXIgZT10aGlzO3RoaXMuc2VudF89ITEsdGhpcy54aHJfPW5ldyBYTUxIdHRwUmVxdWVzdCx0aGlzLmVycm9yQ29kZV89T0QuTk9fRVJST1IsdGhpcy5zZW5kUHJvbWlzZV89bmV3IFByb21pc2UoZnVuY3Rpb24odCl7ZS54aHJfLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixmdW5jdGlvbigpe2UuZXJyb3JDb2RlXz1PRC5BQk9SVCx0KGUpfSksZS54aHJfLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixmdW5jdGlvbigpe2UuZXJyb3JDb2RlXz1PRC5ORVRXT1JLX0VSUk9SLHQoZSl9KSxlLnhocl8uYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXt0KGUpfSl9KX12YXIgVUQ9KGpELnByb3RvdHlwZS5jcmVhdGVYaHJJbz1mdW5jdGlvbigpe3JldHVybiBuZXcgTUR9LGpEKTtmdW5jdGlvbiBqRCgpe312YXIgcUQ9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWRC5wcm90b3R5cGUsInBhdGgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wYXRoX30sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoVkQucHJvdG90eXBlLCJpc1Jvb3QiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gMD09PXRoaXMucGF0aC5sZW5ndGh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksVkQucHJvdG90eXBlLmZ1bGxTZXJ2ZXJVcmw9ZnVuY3Rpb24oKXt2YXIgdD1lbmNvZGVVUklDb21wb25lbnQ7cmV0dXJuIi9iLyIrdCh0aGlzLmJ1Y2tldCkrIi9vLyIrdCh0aGlzLnBhdGgpfSxWRC5wcm90b3R5cGUuYnVja2V0T25seVNlcnZlclVybD1mdW5jdGlvbigpe3JldHVybiIvYi8iK2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLmJ1Y2tldCkrIi9vIn0sVkQubWFrZUZyb21CdWNrZXRTcGVjPWZ1bmN0aW9uKGUpe3ZhciB0O3RyeXt0PVZELm1ha2VGcm9tVXJsKGUpfWNhdGNoKHQpe3JldHVybiBuZXcgVkQoZSwiIil9aWYoIiI9PT10LnBhdGgpcmV0dXJuIHQ7dGhyb3cgbmV3IHZEKCJpbnZhbGlkLWRlZmF1bHQtYnVja2V0IiwiSW52YWxpZCBkZWZhdWx0IGJ1Y2tldCAnIitlKyInLiIpfSxWRC5tYWtlRnJvbVVybD1mdW5jdGlvbih0KXt2YXIgZT1udWxsLG49IihbQS1aYS16MC05LlxcLV9dKykiO3ZhciByPW5ldyBSZWdFeHAoIl5nczovLyIrbisiKC8oLiopKT8kIiwiaSIpO2Z1bmN0aW9uIGkodCl7dC5wYXRoXz1kZWNvZGVVUklDb21wb25lbnQodC5wYXRoKX1mb3IodmFyIG89cEQucmVwbGFjZSgvWy5dL2csIlxcLiIpLHM9W3tyZWdleDpyLGluZGljZXM6e2J1Y2tldDoxLHBhdGg6M30scG9zdE1vZGlmeTpmdW5jdGlvbih0KXsiLyI9PT10LnBhdGguY2hhckF0KHQucGF0aC5sZW5ndGgtMSkmJih0LnBhdGhfPXQucGF0aF8uc2xpY2UoMCwtMSkpfX0se3JlZ2V4Om5ldyBSZWdFeHAoIl5odHRwcz86Ly8iK28rIi92W0EtWmEtejAtOV9dKy9iLyIrbisiL28oLyhbXj8jXSopLiopPyQiLCJpIiksaW5kaWNlczp7YnVja2V0OjEscGF0aDozfSxwb3N0TW9kaWZ5Oml9LHtyZWdleDpuZXcgUmVnRXhwKCJeaHR0cHM/Oi8vKD86c3RvcmFnZS5nb29nbGVhcGlzLmNvbXxzdG9yYWdlLmNsb3VkLmdvb2dsZS5jb20pLyIrbisiLyhbXj8jXSopIiwiaSIpLGluZGljZXM6e2J1Y2tldDoxLHBhdGg6Mn0scG9zdE1vZGlmeTppfV0sYT0wO2E8cy5sZW5ndGg7YSsrKXt2YXIgdT1zW2FdLGM9dS5yZWdleC5leGVjKHQpO2lmKGMpe2U9bmV3IFZEKGNbdS5pbmRpY2VzLmJ1Y2tldF0sY1t1LmluZGljZXMucGF0aF18fCIiKTt1LnBvc3RNb2RpZnkoZSk7YnJlYWt9fWlmKG51bGw9PWUpdGhyb3cgbmV3IHZEKCJpbnZhbGlkLXVybCIsIkludmFsaWQgVVJMICciK3QrIicuIik7cmV0dXJuIGV9LFZEKTtmdW5jdGlvbiBWRCh0LGUpe3RoaXMuYnVja2V0PXQsdGhpcy5wYXRoXz1lfXZhciBCRD0oS0QucHJvdG90eXBlLmdldFByb21pc2U9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcm9taXNlX30sS0QucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbih0KXt9LEtEKTtmdW5jdGlvbiBLRCh0KXt0aGlzLnByb21pc2VfPVByb21pc2UucmVqZWN0KHQpfWZ1bmN0aW9uIFdEKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdHx8dCBpbnN0YW5jZW9mIFN0cmluZ31mdW5jdGlvbiBIRCh0KXtyZXR1cm4gR0QoKSYmdCBpbnN0YW5jZW9mIEJsb2J9ZnVuY3Rpb24gR0QoKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEJsb2J9ZnVuY3Rpb24gekQodCxlLG4scil7aWYocjxlKXRocm93IF9EKCJJbnZhbGlkIHZhbHVlIGZvciAnIit0KyInLiBFeHBlY3RlZCAiK2UrIiBvciBncmVhdGVyLiIpO2lmKG48cil0aHJvdyBfRCgiSW52YWxpZCB2YWx1ZSBmb3IgJyIrdCsiJy4gRXhwZWN0ZWQgIituKyIgb3IgbGVzcy4iKX1mdW5jdGlvbiBRRCh0KXtyZXR1cm4iaHR0cHM6Ly8iK3BEKyIvdjAiK3R9ZnVuY3Rpb24gWUQodCl7dmFyIGUsbj1lbmNvZGVVUklDb21wb25lbnQscj0iPyI7Zm9yKGUgaW4gdCl0Lmhhc093blByb3BlcnR5KGUpJiYocj1yKyhuKGUpKyI9IituKHRbZV0pKSsiJiIpO3JldHVybiByPXIuc2xpY2UoMCwtMSl9dmFyIFhEPShKRC5wcm90b3R5cGUuc3RhcnRfPWZ1bmN0aW9uKCl7dmFyIGUsbix0LHIsaSxvLHMsYSx1LGM9dGhpcztmdW5jdGlvbiBoKHQsZSl7dmFyIG4scj1jLnJlc29sdmVfLGk9Yy5yZWplY3RfLG89ZS54aHI7aWYoZS53YXNTdWNjZXNzQ29kZSl0cnl7dmFyIHM9Yy5jYWxsYmFja18obyxvLmdldFJlc3BvbnNlVGV4dCgpKTt2b2lkIDAhPT1zP3Iocyk6cigpfWNhdGNoKHQpe2kodCl9ZWxzZSBudWxsIT09bz8oKG49bUQoKSkuc2VydmVyUmVzcG9uc2U9by5nZXRSZXNwb25zZVRleHQoKSxjLmVycm9yQ2FsbGJhY2tfP2koYy5lcnJvckNhbGxiYWNrXyhvLG4pKTppKG4pKTplLmNhbmNlbGVkP2kobj0oYy5hcHBEZWxldGVfP0lEOmJEKSgpKTppKG49bmV3IHZEKCJyZXRyeS1saW1pdC1leGNlZWRlZCIsIk1heCByZXRyeSB0aW1lIGZvciBvcGVyYXRpb24gZXhjZWVkZWQsIHBsZWFzZSB0cnkgYWdhaW4uIikpfWZ1bmN0aW9uIGwoKXtyZXR1cm4gMj09PXN9ZnVuY3Rpb24gZigpe2Zvcih2YXIgdD1bXSxlPTA7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl0W2VdPWFyZ3VtZW50c1tlXTthfHwoYT0hMCxuLmFwcGx5KG51bGwsdCkpfWZ1bmN0aW9uIHAodCl7aT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aT1udWxsLGUoZCxsKCkpfSx0KX1mdW5jdGlvbiBkKHQpe2Zvcih2YXIgZT1bXSxuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyllW24tMV09YXJndW1lbnRzW25dO2F8fCh0fHxsKCl8fG8/Zi5jYWxsLmFwcGx5KGYsbm8oW251bGwsdF0sZSkpOihyPDY0JiYocio9MikscCgxPT09cz8ocz0yLDApOjFlMyoocitNYXRoLnJhbmRvbSgpKSkpKX1mdW5jdGlvbiB2KHQpe3V8fCh1PSEwLGF8fChudWxsIT09aT8odHx8KHM9MiksY2xlYXJUaW1lb3V0KGkpLHAoMCkpOnR8fChzPTEpKSl9dGhpcy5jYW5jZWxlZF8/aCgwLG5ldyAkRCghMSxudWxsLCEwKSk6dGhpcy5iYWNrb2ZmSWRfPShlPWZ1bmN0aW9uKHIsdCl7ZnVuY3Rpb24gaSh0KXt2YXIgZT10LmxvYWRlZCx0PXQubGVuZ3RoQ29tcHV0YWJsZT90LnRvdGFsOi0xO251bGwhPT1jLnByb2dyZXNzQ2FsbGJhY2tfJiZjLnByb2dyZXNzQ2FsbGJhY2tfKGUsdCl9dD9yKCExLG5ldyAkRCghMSxudWxsLCEwKSk6KHQ9Yy5wb29sXy5jcmVhdGVYaHJJbygpLGMucGVuZGluZ1hocl89dCxudWxsIT09Yy5wcm9ncmVzc0NhbGxiYWNrXyYmdC5hZGRVcGxvYWRQcm9ncmVzc0xpc3RlbmVyKGkpLHQuc2VuZChjLnVybF8sYy5tZXRob2RfLGMuYm9keV8sYy5oZWFkZXJzXykudGhlbihmdW5jdGlvbih0KXtudWxsIT09Yy5wcm9ncmVzc0NhbGxiYWNrXyYmdC5yZW1vdmVVcGxvYWRQcm9ncmVzc0xpc3RlbmVyKGkpLGMucGVuZGluZ1hocl89bnVsbDt2YXIgZT10LmdldEVycm9yQ29kZSgpPT09T0QuTk9fRVJST1Isbj10LmdldFN0YXR1cygpO2UmJiFjLmlzUmV0cnlTdGF0dXNDb2RlXyhuKT8obj0tMSE9PWMuc3VjY2Vzc0NvZGVzXy5pbmRleE9mKG4pLHIoITAsbmV3ICREKG4sdCkpKToodD10LmdldEVycm9yQ29kZSgpPT09T0QuQUJPUlQscighMSxuZXcgJEQoITEsbnVsbCx0KSkpfSkpfSxuPWgsdD10aGlzLnRpbWVvdXRfLGk9bnVsbCx1PWE9bz0hKHI9MSkscChzPTApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtvPSEwLHYoITApfSx0KSx2KX0sSkQucHJvdG90eXBlLmdldFByb21pc2U9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcm9taXNlX30sSkQucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbih0KXt0aGlzLmNhbmNlbGVkXz0hMCx0aGlzLmFwcERlbGV0ZV89dHx8ITEsbnVsbCE9PXRoaXMuYmFja29mZklkXyYmKDAsdGhpcy5iYWNrb2ZmSWRfKSghMSksbnVsbCE9PXRoaXMucGVuZGluZ1hocl8mJnRoaXMucGVuZGluZ1hocl8uYWJvcnQoKX0sSkQucHJvdG90eXBlLmlzUmV0cnlTdGF0dXNDb2RlXz1mdW5jdGlvbih0KXt2YXIgZT01MDA8PXQmJnQ8NjAwLG49LTEhPT1bNDA4LDQyOV0uaW5kZXhPZih0KSx0PS0xIT09dGhpcy5hZGRpdGlvbmFsUmV0cnlDb2Rlc18uaW5kZXhPZih0KTtyZXR1cm4gZXx8bnx8dH0sSkQpO2Z1bmN0aW9uIEpEKHQsZSxuLHIsaSxvLHMsYSx1LGMsaCl7dmFyIGw9dGhpczt0aGlzLnBlbmRpbmdYaHJfPW51bGwsdGhpcy5iYWNrb2ZmSWRfPW51bGwsdGhpcy5jYW5jZWxlZF89ITEsdGhpcy5hcHBEZWxldGVfPSExLHRoaXMudXJsXz10LHRoaXMubWV0aG9kXz1lLHRoaXMuaGVhZGVyc189bix0aGlzLmJvZHlfPXIsdGhpcy5zdWNjZXNzQ29kZXNfPWkuc2xpY2UoKSx0aGlzLmFkZGl0aW9uYWxSZXRyeUNvZGVzXz1vLnNsaWNlKCksdGhpcy5jYWxsYmFja189cyx0aGlzLmVycm9yQ2FsbGJhY2tfPWEsdGhpcy5wcm9ncmVzc0NhbGxiYWNrXz1jLHRoaXMudGltZW91dF89dSx0aGlzLnBvb2xfPWgsdGhpcy5wcm9taXNlXz1uZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe2wucmVzb2x2ZV89dCxsLnJlamVjdF89ZSxsLnN0YXJ0XygpfSl9dmFyICREPWZ1bmN0aW9uKHQsZSxuKXt0aGlzLndhc1N1Y2Nlc3NDb2RlPXQsdGhpcy54aHI9ZSx0aGlzLmNhbmNlbGVkPSEhbn07ZnVuY3Rpb24gWkQoKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dmFyIG49InVuZGVmaW5lZCIhPXR5cGVvZiBCbG9iQnVpbGRlcj9CbG9iQnVpbGRlcjoidW5kZWZpbmVkIiE9dHlwZW9mIFdlYktpdEJsb2JCdWlsZGVyP1dlYktpdEJsb2JCdWlsZGVyOnZvaWQgMDtpZih2b2lkIDAhPT1uKXtmb3IodmFyIHI9bmV3IG4saT0wO2k8dC5sZW5ndGg7aSsrKXIuYXBwZW5kKHRbaV0pO3JldHVybiByLmdldEJsb2IoKX1pZihHRCgpKXJldHVybiBuZXcgQmxvYih0KTt0aHJvdyBuZXcgdkQoInVuc3VwcG9ydGVkLWVudmlyb25tZW50IiwiVGhpcyBicm93c2VyIGRvZXNuJ3Qgc2VlbSB0byBzdXBwb3J0IGNyZWF0aW5nIEJsb2JzIil9dmFyIHR4PShleC5wcm90b3R5cGUuc2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNpemVffSxleC5wcm90b3R5cGUudHlwZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnR5cGVffSxleC5wcm90b3R5cGUuc2xpY2U9ZnVuY3Rpb24odCxlKXtpZihIRCh0aGlzLmRhdGFfKSl7dmFyIG49dGhpcy5kYXRhXyxyPShpPXQscj1lLChuPW4pLndlYmtpdFNsaWNlP24ud2Via2l0U2xpY2UoaSxyKTpuLm1velNsaWNlP24ubW96U2xpY2UoaSxyKTpuLnNsaWNlP24uc2xpY2UoaSxyKTpudWxsKTtyZXR1cm4gbnVsbD09PXI/bnVsbDpuZXcgZXgocil9dmFyIGkscjtyZXR1cm4gbmV3IGV4KG5ldyBVaW50OEFycmF5KHRoaXMuZGF0YV8uYnVmZmVyLHQsZS10KSwhMCl9LGV4LmdldEJsb2I9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07aWYoR0QoKSl7dmFyIG49dC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBleD90LmRhdGFfOnR9KTtyZXR1cm4gbmV3IGV4KFpELmFwcGx5KG51bGwsbikpfXZhciBuPXQubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBXRCh0KT9BRChDRC5SQVcsdCkuZGF0YTp0LmRhdGFffSkscj0wO24uZm9yRWFjaChmdW5jdGlvbih0KXtyKz10LmJ5dGVMZW5ndGh9KTt2YXIgaT1uZXcgVWludDhBcnJheShyKSxvPTA7cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbih0KXtmb3IodmFyIGU9MDtlPHQubGVuZ3RoO2UrKylpW28rK109dFtlXX0pLG5ldyBleChpLCEwKX0sZXgucHJvdG90eXBlLnVwbG9hZERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kYXRhX30sZXgpO2Z1bmN0aW9uIGV4KHQsZSl7dmFyIG49MCxyPSIiO0hEKHQpPyhuPSh0aGlzLmRhdGFfPXQpLnNpemUscj10LnR5cGUpOnQgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcj8oZT90aGlzLmRhdGFfPW5ldyBVaW50OEFycmF5KHQpOih0aGlzLmRhdGFfPW5ldyBVaW50OEFycmF5KHQuYnl0ZUxlbmd0aCksdGhpcy5kYXRhXy5zZXQobmV3IFVpbnQ4QXJyYXkodCkpKSxuPXRoaXMuZGF0YV8ubGVuZ3RoKTp0IGluc3RhbmNlb2YgVWludDhBcnJheSYmKGU/dGhpcy5kYXRhXz10Oih0aGlzLmRhdGFfPW5ldyBVaW50OEFycmF5KHQubGVuZ3RoKSx0aGlzLmRhdGFfLnNldCh0KSksbj10Lmxlbmd0aCksdGhpcy5zaXplXz1uLHRoaXMudHlwZV89cn1mdW5jdGlvbiBueCh0KXt2YXIgZSxuO3RyeXtlPUpTT04ucGFyc2UodCl9Y2F0Y2godCl7cmV0dXJuIG51bGx9cmV0dXJuIm9iamVjdCIhPXR5cGVvZihuPWUpfHxBcnJheS5pc0FycmF5KG4pP251bGw6ZX1mdW5jdGlvbiByeCh0KXt2YXIgZT10Lmxhc3RJbmRleE9mKCIvIix0Lmxlbmd0aC0yKTtyZXR1cm4tMT09PWU/dDp0LnNsaWNlKGUrMSl9ZnVuY3Rpb24gaXgodCxlKXtyZXR1cm4gZX12YXIgb3g9ZnVuY3Rpb24odCxlLG4scil7dGhpcy5zZXJ2ZXI9dCx0aGlzLmxvY2FsPWV8fHQsdGhpcy53cml0YWJsZT0hIW4sdGhpcy54Zm9ybT1yfHxpeH0sc3g9bnVsbDtmdW5jdGlvbiBheCgpe2lmKHN4KXJldHVybiBzeDt2YXIgdD1bXTt0LnB1c2gobmV3IG94KCJidWNrZXQiKSksdC5wdXNoKG5ldyBveCgiZ2VuZXJhdGlvbiIpKSx0LnB1c2gobmV3IG94KCJtZXRhZ2VuZXJhdGlvbiIpKSx0LnB1c2gobmV3IG94KCJuYW1lIiwiZnVsbFBhdGgiLCEwKSk7dmFyIGU9bmV3IG94KCJuYW1lIik7ZS54Zm9ybT1mdW5jdGlvbih0LGUpe3JldHVybiFXRChlPWUpfHxlLmxlbmd0aDwyP2U6cngoZSl9LHQucHVzaChlKTtlPW5ldyBveCgic2l6ZSIpO3JldHVybiBlLnhmb3JtPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHZvaWQgMCE9PWU/TnVtYmVyKGUpOmV9LHQucHVzaChlKSx0LnB1c2gobmV3IG94KCJ0aW1lQ3JlYXRlZCIpKSx0LnB1c2gobmV3IG94KCJ1cGRhdGVkIikpLHQucHVzaChuZXcgb3goIm1kNUhhc2giLG51bGwsITApKSx0LnB1c2gobmV3IG94KCJjYWNoZUNvbnRyb2wiLG51bGwsITApKSx0LnB1c2gobmV3IG94KCJjb250ZW50RGlzcG9zaXRpb24iLG51bGwsITApKSx0LnB1c2gobmV3IG94KCJjb250ZW50RW5jb2RpbmciLG51bGwsITApKSx0LnB1c2gobmV3IG94KCJjb250ZW50TGFuZ3VhZ2UiLG51bGwsITApKSx0LnB1c2gobmV3IG94KCJjb250ZW50VHlwZSIsbnVsbCwhMCkpLHQucHVzaChuZXcgb3goIm1ldGFkYXRhIiwiY3VzdG9tTWV0YWRhdGEiLCEwKSksc3g9dH1mdW5jdGlvbiB1eChuLHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJyZWYiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgdD1uLmJ1Y2tldCxlPW4uZnVsbFBhdGgsZT1uZXcgcUQodCxlKTtyZXR1cm4gci5fbWFrZVN0b3JhZ2VSZWZlcmVuY2UoZSl9fSl9ZnVuY3Rpb24gY3godCxlLG4pe2U9bngoZSk7aWYobnVsbD09PWUpcmV0dXJuIG51bGw7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIHI9e3R5cGU6ImZpbGUifSxpPW4ubGVuZ3RoLG89MDtvPGk7bysrKXt2YXIgcz1uW29dO3Jbcy5sb2NhbF09cy54Zm9ybShyLGVbcy5zZXJ2ZXJdKX1yZXR1cm4gdXgocix0KSxyfSh0LGUsbil9ZnVuY3Rpb24gaHgodCxlKXtmb3IodmFyIG49e30scj1lLmxlbmd0aCxpPTA7aTxyO2krKyl7dmFyIG89ZVtpXTtvLndyaXRhYmxlJiYobltvLnNlcnZlcl09dFtvLmxvY2FsXSl9cmV0dXJuIEpTT04uc3RyaW5naWZ5KG4pfXZhciBseD0icHJlZml4ZXMiLGZ4PSJpdGVtcyI7ZnVuY3Rpb24gcHgodCxlLG4pe249bngobik7aWYobnVsbD09PW4pcmV0dXJuIG51bGw7cmV0dXJuIGZ1bmN0aW9uKHQsZSxuKXt2YXIgcj17cHJlZml4ZXM6W10saXRlbXM6W10sbmV4dFBhZ2VUb2tlbjpuLm5leHRQYWdlVG9rZW59O2lmKG5bbHhdKWZvcih2YXIgaT0wLG89bltseF07aTxvLmxlbmd0aDtpKyspe3ZhciBzPW9baV0ucmVwbGFjZSgvXC8kLywiIiksYT10Ll9tYWtlU3RvcmFnZVJlZmVyZW5jZShuZXcgcUQoZSxzKSk7ci5wcmVmaXhlcy5wdXNoKGEpfWlmKG5bZnhdKWZvcih2YXIgdT0wLGM9bltmeF07dTxjLmxlbmd0aDt1Kyspe3ZhciBoPWNbdV0sYT10Ll9tYWtlU3RvcmFnZVJlZmVyZW5jZShuZXcgcUQoZSxoLm5hbWUpKTtyLml0ZW1zLnB1c2goYSl9cmV0dXJuIHJ9KHQsZSxuKX12YXIgZHg9ZnVuY3Rpb24odCxlLG4scil7dGhpcy51cmw9dCx0aGlzLm1ldGhvZD1lLHRoaXMuaGFuZGxlcj1uLHRoaXMudGltZW91dD1yLHRoaXMudXJsUGFyYW1zPXt9LHRoaXMuaGVhZGVycz17fSx0aGlzLmJvZHk9bnVsbCx0aGlzLmVycm9ySGFuZGxlcj1udWxsLHRoaXMucHJvZ3Jlc3NDYWxsYmFjaz1udWxsLHRoaXMuc3VjY2Vzc0NvZGVzPVsyMDBdLHRoaXMuYWRkaXRpb25hbFJldHJ5Q29kZXM9W119O2Z1bmN0aW9uIHZ4KHQpe2lmKCF0KXRocm93IG1EKCl9ZnVuY3Rpb24gZ3gobixyKXtyZXR1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm4gdngobnVsbCE9PShlPWN4KG4sZSxyKSkpLGV9fWZ1bmN0aW9uIHl4KG4scil7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHZ4KG51bGwhPT0oZT1weChuLHIsZSkpKSxlfX1mdW5jdGlvbiBteChyLGkpe3JldHVybiBmdW5jdGlvbih0LGUpe3ZhciBuPWN4KHIsZSxpKTtyZXR1cm4gdngobnVsbCE9PW4pLGZ1bmN0aW9uKHIsdCl7aWYobnVsbD09PSh0PW54KHQpKSlyZXR1cm4gbnVsbDtpZighV0QodC5kb3dubG9hZFRva2VucykpcmV0dXJuIG51bGw7aWYoMD09PSh0PXQuZG93bmxvYWRUb2tlbnMpLmxlbmd0aClyZXR1cm4gbnVsbDt2YXIgaT1lbmNvZGVVUklDb21wb25lbnQ7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoZnVuY3Rpb24odCl7dmFyIGU9ci5idWNrZXQsbj1yLmZ1bGxQYXRoO3JldHVybiBRRCgiL2IvIitpKGUpKyIvby8iK2kobikpK1lEKHthbHQ6Im1lZGlhIix0b2tlbjp0fSl9KVswXX0obixlKX19ZnVuY3Rpb24gYngoaSl7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7dmFyIG4scj00MDE9PT10LmdldFN0YXR1cygpP25ldyB2RCgidW5hdXRoZW50aWNhdGVkIiwiVXNlciBpcyBub3QgYXV0aGVudGljYXRlZCwgcGxlYXNlIGF1dGhlbnRpY2F0ZSB1c2luZyBGaXJlYmFzZSBBdXRoZW50aWNhdGlvbiBhbmQgdHJ5IGFnYWluLiIpOjQwMj09PXQuZ2V0U3RhdHVzKCk/KG49aS5idWNrZXQsbmV3IHZEKCJxdW90YS1leGNlZWRlZCIsIlF1b3RhIGZvciBidWNrZXQgJyIrbisiJyBleGNlZWRlZCwgcGxlYXNlIHZpZXcgcXVvdGEgb24gaHR0cHM6Ly9maXJlYmFzZS5nb29nbGUuY29tL3ByaWNpbmcvLiIpKTo0MDM9PT10LmdldFN0YXR1cygpPyhyPWkucGF0aCxuZXcgdkQoInVuYXV0aG9yaXplZCIsIlVzZXIgZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyAnIityKyInLiIpKTplO3JldHVybiByLnNlcnZlclJlc3BvbnNlPWUuc2VydmVyUmVzcG9uc2Uscn19ZnVuY3Rpb24gd3gocil7dmFyIGk9Yngocik7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7dmFyIG49aSh0LGUpO3JldHVybiA0MDQ9PT10LmdldFN0YXR1cygpJiYodD1yLnBhdGgsbj1uZXcgdkQoIm9iamVjdC1ub3QtZm91bmQiLCJPYmplY3QgJyIrdCsiJyBkb2VzIG5vdCBleGlzdC4iKSksbi5zZXJ2ZXJSZXNwb25zZT1lLnNlcnZlclJlc3BvbnNlLG59fWZ1bmN0aW9uIF94KHQsZSxuKXt2YXIgcj1RRChlLmZ1bGxTZXJ2ZXJVcmwoKSksaT10Lm1heE9wZXJhdGlvblJldHJ5VGltZSxpPW5ldyBkeChyLCJHRVQiLGd4KHQsbiksaSk7cmV0dXJuIGkuZXJyb3JIYW5kbGVyPXd4KGUpLGl9ZnVuY3Rpb24gSXgodCxlLG4pe249T2JqZWN0LmFzc2lnbih7fSxuKTtyZXR1cm4gbi5mdWxsUGF0aD10LnBhdGgsbi5zaXplPWUuc2l6ZSgpLG4uY29udGVudFR5cGV8fChuLmNvbnRlbnRUeXBlPSh0PWUsKGU9bnVsbCkmJmUuY29udGVudFR5cGV8fHQmJnQudHlwZSgpfHwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIikpLG59ZnVuY3Rpb24gVHgodCxlLG4scixpKXt2YXIgbz1lLmJ1Y2tldE9ubHlTZXJ2ZXJVcmwoKSxzPXsiWC1Hb29nLVVwbG9hZC1Qcm90b2NvbCI6Im11bHRpcGFydCJ9O3ZhciBhPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PSIiLGU9MDtlPDI7ZSsrKXQrPU1hdGgucmFuZG9tKCkudG9TdHJpbmcoKS5zbGljZSgyKTtyZXR1cm4gdH0oKTtzWyJDb250ZW50LVR5cGUiXT0ibXVsdGlwYXJ0L3JlbGF0ZWQ7IGJvdW5kYXJ5PSIrYTt2YXIgdT1JeChlLHIsaSksaT0iLS0iK2ErIlxyXG5Db250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLThcclxuXHJcbiIraHgodSxuKSsiXHJcbi0tIithKyJcclxuQ29udGVudC1UeXBlOiAiK3UuY29udGVudFR5cGUrIlxyXG5cclxuIixhPSJcclxuLS0iK2ErIi0tIixyPXR4LmdldEJsb2IoaSxyLGEpO2lmKG51bGw9PT1yKXRocm93IHdEKCk7YT17bmFtZTp1LmZ1bGxQYXRofSx1PVFEKG8pLG89dC5tYXhVcGxvYWRSZXRyeVRpbWUsbz1uZXcgZHgodSwiUE9TVCIsZ3godCxuKSxvKTtyZXR1cm4gby51cmxQYXJhbXM9YSxvLmhlYWRlcnM9cyxvLmJvZHk9ci51cGxvYWREYXRhKCksby5lcnJvckhhbmRsZXI9YngoZSksb312YXIgRXg9ZnVuY3Rpb24odCxlLG4scil7dGhpcy5jdXJyZW50PXQsdGhpcy50b3RhbD1lLHRoaXMuZmluYWxpemVkPSEhbix0aGlzLm1ldGFkYXRhPXJ8fG51bGx9O2Z1bmN0aW9uIFN4KHQsZSl7dmFyIG49bnVsbDt0cnl7bj10LmdldFJlc3BvbnNlSGVhZGVyKCJYLUdvb2ctVXBsb2FkLVN0YXR1cyIpfWNhdGNoKHQpe3Z4KCExKX1yZXR1cm4gdngoISFuJiYtMSE9PShlfHxbImFjdGl2ZSJdKS5pbmRleE9mKG4pKSxufWZ1bmN0aW9uIEN4KHQsZSxuLHIsaSl7dmFyIG89ZS5idWNrZXRPbmx5U2VydmVyVXJsKCkscz1JeChlLHIsaSksaT17bmFtZTpzLmZ1bGxQYXRofSxvPVFEKG8pLHI9eyJYLUdvb2ctVXBsb2FkLVByb3RvY29sIjoicmVzdW1hYmxlIiwiWC1Hb29nLVVwbG9hZC1Db21tYW5kIjoic3RhcnQiLCJYLUdvb2ctVXBsb2FkLUhlYWRlci1Db250ZW50LUxlbmd0aCI6ci5zaXplKCksIlgtR29vZy1VcGxvYWQtSGVhZGVyLUNvbnRlbnQtVHlwZSI6cy5jb250ZW50VHlwZSwiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCJ9LG49aHgocyxuKSx0PXQubWF4VXBsb2FkUmV0cnlUaW1lO3Q9bmV3IGR4KG8sIlBPU1QiLGZ1bmN0aW9uKHQpe3ZhciBlO1N4KHQpO3RyeXtlPXQuZ2V0UmVzcG9uc2VIZWFkZXIoIlgtR29vZy1VcGxvYWQtVVJMIil9Y2F0Y2godCl7dngoITEpfXJldHVybiB2eChXRChlKSksZX0sdCk7cmV0dXJuIHQudXJsUGFyYW1zPWksdC5oZWFkZXJzPXIsdC5ib2R5PW4sdC5lcnJvckhhbmRsZXI9YngoZSksdH1mdW5jdGlvbiBOeCh0LGUsbixpKXt0PXQubWF4VXBsb2FkUmV0cnlUaW1lLHQ9bmV3IGR4KG4sIlBPU1QiLGZ1bmN0aW9uKHQpe3ZhciBlPVN4KHQsWyJhY3RpdmUiLCJmaW5hbCJdKSxuPW51bGw7dHJ5e249dC5nZXRSZXNwb25zZUhlYWRlcigiWC1Hb29nLVVwbG9hZC1TaXplLVJlY2VpdmVkIil9Y2F0Y2godCl7dngoITEpfW58fHZ4KCExKTt2YXIgcj1OdW1iZXIobik7cmV0dXJuIHZ4KCFpc05hTihyKSksbmV3IEV4KHIsaS5zaXplKCksImZpbmFsIj09PWUpfSx0KTtyZXR1cm4gdC5oZWFkZXJzPXsiWC1Hb29nLVVwbG9hZC1Db21tYW5kIjoicXVlcnkifSx0LmVycm9ySGFuZGxlcj1ieChlKSx0fWZ1bmN0aW9uIEF4KHQsbyxlLHMsbixhLHIsaSl7dmFyIHU9bmV3IEV4KDAsMCk7aWYocj8odS5jdXJyZW50PXIuY3VycmVudCx1LnRvdGFsPXIudG90YWwpOih1LmN1cnJlbnQ9MCx1LnRvdGFsPXMuc2l6ZSgpKSxzLnNpemUoKSE9PXUudG90YWwpdGhyb3cgbmV3IHZEKCJzZXJ2ZXItZmlsZS13cm9uZy1zaXplIiwiU2VydmVyIHJlY29yZGVkIGluY29ycmVjdCB1cGxvYWQgZmlsZSBzaXplLCBwbGVhc2UgcmV0cnkgdGhlIHVwbG9hZC4iKTt2YXIgYz11LnRvdGFsLXUuY3VycmVudCxoPWM7MDxuJiYoaD1NYXRoLm1pbihoLG4pKTtyPXUuY3VycmVudCxuPXIraCxjPXsiWC1Hb29nLVVwbG9hZC1Db21tYW5kIjpoPT09Yz8idXBsb2FkLCBmaW5hbGl6ZSI6InVwbG9hZCIsIlgtR29vZy1VcGxvYWQtT2Zmc2V0Ijp1LmN1cnJlbnR9LHI9cy5zbGljZShyLG4pO2lmKG51bGw9PT1yKXRocm93IHdEKCk7bj1vLm1heFVwbG9hZFJldHJ5VGltZSxuPW5ldyBkeChlLCJQT1NUIixmdW5jdGlvbih0LGUpe3ZhciBuPVN4KHQsWyJhY3RpdmUiLCJmaW5hbCJdKSxyPXUuY3VycmVudCtoLGk9cy5zaXplKCksZT0iZmluYWwiPT09bj9neChvLGEpKHQsZSk6bnVsbDtyZXR1cm4gbmV3IEV4KHIsaSwiZmluYWwiPT09bixlKX0sbik7cmV0dXJuIG4uaGVhZGVycz1jLG4uYm9keT1yLnVwbG9hZERhdGEoKSxuLnByb2dyZXNzQ2FsbGJhY2s9aXx8bnVsbCxuLmVycm9ySGFuZGxlcj1ieCh0KSxufXZhciBreD1mdW5jdGlvbih0LGUsbil7ImZ1bmN0aW9uIj09dHlwZW9mIHR8fG51bGwhPWV8fG51bGwhPW4/KHRoaXMubmV4dD10LHRoaXMuZXJyb3I9ZSx0aGlzLmNvbXBsZXRlPW4pOih0PXQsdGhpcy5uZXh0PXQubmV4dCx0aGlzLmVycm9yPXQuZXJyb3IsdGhpcy5jb21wbGV0ZT10LmNvbXBsZXRlKX07ZnVuY3Rpb24gUngobil7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbi5hcHBseSh2b2lkIDAsdCl9KX19dmFyIFB4PShPeC5wcm90b3R5cGUuX21ha2VQcm9ncmVzc0NhbGxiYWNrPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyxuPXRoaXMuX3RyYW5zZmVycmVkO3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZS5fdXBkYXRlUHJvZ3Jlc3Mobit0KX19LE94LnByb3RvdHlwZS5fc2hvdWxkRG9SZXN1bWFibGU9ZnVuY3Rpb24odCl7cmV0dXJuIDI2MjE0NDx0LnNpemUoKX0sT3gucHJvdG90eXBlLl9zdGFydD1mdW5jdGlvbigpeyJydW5uaW5nIj09PXRoaXMuX3N0YXRlJiZ2b2lkIDA9PT10aGlzLl9yZXF1ZXN0JiYodGhpcy5fcmVzdW1hYmxlP3ZvaWQgMD09PXRoaXMuX3VwbG9hZFVybD90aGlzLl9jcmVhdGVSZXN1bWFibGUoKTp0aGlzLl9uZWVkVG9GZXRjaFN0YXR1cz90aGlzLl9mZXRjaFN0YXR1cygpOnRoaXMuX25lZWRUb0ZldGNoTWV0YWRhdGE/dGhpcy5fZmV0Y2hNZXRhZGF0YSgpOnRoaXMuX2NvbnRpbnVlVXBsb2FkKCk6dGhpcy5fb25lU2hvdFVwbG9hZCgpKX0sT3gucHJvdG90eXBlLl9yZXNvbHZlVG9rZW49ZnVuY3Rpb24oZSl7dmFyIG49dGhpczt0aGlzLl9yZWYuc3RvcmFnZS5fZ2V0QXV0aFRva2VuKCkudGhlbihmdW5jdGlvbih0KXtzd2l0Y2gobi5fc3RhdGUpe2Nhc2UicnVubmluZyI6ZSh0KTticmVhaztjYXNlImNhbmNlbGluZyI6bi5fdHJhbnNpdGlvbigiY2FuY2VsZWQiKTticmVhaztjYXNlInBhdXNpbmciOm4uX3RyYW5zaXRpb24oInBhdXNlZCIpfX0pfSxPeC5wcm90b3R5cGUuX2NyZWF0ZVJlc3VtYWJsZT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5fcmVzb2x2ZVRva2VuKGZ1bmN0aW9uKHQpe3ZhciBlPUN4KG4uX3JlZi5zdG9yYWdlLG4uX3JlZi5fbG9jYXRpb24sbi5fbWFwcGluZ3Msbi5fYmxvYixuLl9tZXRhZGF0YSksdD1uLl9yZWYuc3RvcmFnZS5fbWFrZVJlcXVlc3QoZSx0KTsobi5fcmVxdWVzdD10KS5nZXRQcm9taXNlKCkudGhlbihmdW5jdGlvbih0KXtuLl9yZXF1ZXN0PXZvaWQgMCxuLl91cGxvYWRVcmw9dCxuLl9uZWVkVG9GZXRjaFN0YXR1cz0hMSxuLmNvbXBsZXRlVHJhbnNpdGlvbnNfKCl9LG4uX2Vycm9ySGFuZGxlcil9KX0sT3gucHJvdG90eXBlLl9mZXRjaFN0YXR1cz1mdW5jdGlvbigpe3ZhciBuPXRoaXMscj10aGlzLl91cGxvYWRVcmw7dGhpcy5fcmVzb2x2ZVRva2VuKGZ1bmN0aW9uKHQpe3ZhciBlPU54KG4uX3JlZi5zdG9yYWdlLG4uX3JlZi5fbG9jYXRpb24scixuLl9ibG9iKSx0PW4uX3JlZi5zdG9yYWdlLl9tYWtlUmVxdWVzdChlLHQpOyhuLl9yZXF1ZXN0PXQpLmdldFByb21pc2UoKS50aGVuKGZ1bmN0aW9uKHQpe24uX3JlcXVlc3Q9dm9pZCAwLG4uX3VwZGF0ZVByb2dyZXNzKHQuY3VycmVudCksbi5fbmVlZFRvRmV0Y2hTdGF0dXM9ITEsdC5maW5hbGl6ZWQmJihuLl9uZWVkVG9GZXRjaE1ldGFkYXRhPSEwKSxuLmNvbXBsZXRlVHJhbnNpdGlvbnNfKCl9LG4uX2Vycm9ySGFuZGxlcil9KX0sT3gucHJvdG90eXBlLl9jb250aW51ZVVwbG9hZD1mdW5jdGlvbigpe3ZhciBuPXRoaXMscj0yNjIxNDQqdGhpcy5fY2h1bmtNdWx0aXBsaWVyLGk9bmV3IEV4KHRoaXMuX3RyYW5zZmVycmVkLHRoaXMuX2Jsb2Iuc2l6ZSgpKSxvPXRoaXMuX3VwbG9hZFVybDt0aGlzLl9yZXNvbHZlVG9rZW4oZnVuY3Rpb24odCl7dmFyIGU7dHJ5e2U9QXgobi5fcmVmLl9sb2NhdGlvbixuLl9yZWYuc3RvcmFnZSxvLG4uX2Jsb2IscixuLl9tYXBwaW5ncyxpLG4uX21ha2VQcm9ncmVzc0NhbGxiYWNrKCkpfWNhdGNoKHQpe3JldHVybiBuLl9lcnJvcj10LHZvaWQgbi5fdHJhbnNpdGlvbigiZXJyb3IiKX10PW4uX3JlZi5zdG9yYWdlLl9tYWtlUmVxdWVzdChlLHQpOyhuLl9yZXF1ZXN0PXQpLmdldFByb21pc2UoKS50aGVuKGZ1bmN0aW9uKHQpe24uX2luY3JlYXNlTXVsdGlwbGllcigpLG4uX3JlcXVlc3Q9dm9pZCAwLG4uX3VwZGF0ZVByb2dyZXNzKHQuY3VycmVudCksdC5maW5hbGl6ZWQ/KG4uX21ldGFkYXRhPXQubWV0YWRhdGEsbi5fdHJhbnNpdGlvbigic3VjY2VzcyIpKTpuLmNvbXBsZXRlVHJhbnNpdGlvbnNfKCl9LG4uX2Vycm9ySGFuZGxlcil9KX0sT3gucHJvdG90eXBlLl9pbmNyZWFzZU11bHRpcGxpZXI9ZnVuY3Rpb24oKXsyNjIxNDQqdGhpcy5fY2h1bmtNdWx0aXBsaWVyPDMzNTU0NDMyJiYodGhpcy5fY2h1bmtNdWx0aXBsaWVyKj0yKX0sT3gucHJvdG90eXBlLl9mZXRjaE1ldGFkYXRhPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLl9yZXNvbHZlVG9rZW4oZnVuY3Rpb24odCl7dmFyIGU9X3gobi5fcmVmLnN0b3JhZ2Usbi5fcmVmLl9sb2NhdGlvbixuLl9tYXBwaW5ncyksdD1uLl9yZWYuc3RvcmFnZS5fbWFrZVJlcXVlc3QoZSx0KTsobi5fcmVxdWVzdD10KS5nZXRQcm9taXNlKCkudGhlbihmdW5jdGlvbih0KXtuLl9yZXF1ZXN0PXZvaWQgMCxuLl9tZXRhZGF0YT10LG4uX3RyYW5zaXRpb24oInN1Y2Nlc3MiKX0sbi5fbWV0YWRhdGFFcnJvckhhbmRsZXIpfSl9LE94LnByb3RvdHlwZS5fb25lU2hvdFVwbG9hZD1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5fcmVzb2x2ZVRva2VuKGZ1bmN0aW9uKHQpe3ZhciBlPVR4KG4uX3JlZi5zdG9yYWdlLG4uX3JlZi5fbG9jYXRpb24sbi5fbWFwcGluZ3Msbi5fYmxvYixuLl9tZXRhZGF0YSksdD1uLl9yZWYuc3RvcmFnZS5fbWFrZVJlcXVlc3QoZSx0KTsobi5fcmVxdWVzdD10KS5nZXRQcm9taXNlKCkudGhlbihmdW5jdGlvbih0KXtuLl9yZXF1ZXN0PXZvaWQgMCxuLl9tZXRhZGF0YT10LG4uX3VwZGF0ZVByb2dyZXNzKG4uX2Jsb2Iuc2l6ZSgpKSxuLl90cmFuc2l0aW9uKCJzdWNjZXNzIil9LG4uX2Vycm9ySGFuZGxlcil9KX0sT3gucHJvdG90eXBlLl91cGRhdGVQcm9ncmVzcz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl90cmFuc2ZlcnJlZDt0aGlzLl90cmFuc2ZlcnJlZD10LHRoaXMuX3RyYW5zZmVycmVkIT09ZSYmdGhpcy5fbm90aWZ5T2JzZXJ2ZXJzKCl9LE94LnByb3RvdHlwZS5fdHJhbnNpdGlvbj1mdW5jdGlvbih0KXtpZih0aGlzLl9zdGF0ZSE9PXQpc3dpdGNoKHQpe2Nhc2UiY2FuY2VsaW5nIjpjYXNlInBhdXNpbmciOnRoaXMuX3N0YXRlPXQsdm9pZCAwIT09dGhpcy5fcmVxdWVzdCYmdGhpcy5fcmVxdWVzdC5jYW5jZWwoKTticmVhaztjYXNlInJ1bm5pbmciOnZhciBlPSJwYXVzZWQiPT09dGhpcy5fc3RhdGU7dGhpcy5fc3RhdGU9dCxlJiYodGhpcy5fbm90aWZ5T2JzZXJ2ZXJzKCksdGhpcy5fc3RhcnQoKSk7YnJlYWs7Y2FzZSJwYXVzZWQiOnRoaXMuX3N0YXRlPXQsdGhpcy5fbm90aWZ5T2JzZXJ2ZXJzKCk7YnJlYWs7Y2FzZSJjYW5jZWxlZCI6dGhpcy5fZXJyb3I9YkQoKSx0aGlzLl9zdGF0ZT10LHRoaXMuX25vdGlmeU9ic2VydmVycygpO2JyZWFrO2Nhc2UiZXJyb3IiOmNhc2Uic3VjY2VzcyI6dGhpcy5fc3RhdGU9dCx0aGlzLl9ub3RpZnlPYnNlcnZlcnMoKX19LE94LnByb3RvdHlwZS5jb21wbGV0ZVRyYW5zaXRpb25zXz1mdW5jdGlvbigpe3N3aXRjaCh0aGlzLl9zdGF0ZSl7Y2FzZSJwYXVzaW5nIjp0aGlzLl90cmFuc2l0aW9uKCJwYXVzZWQiKTticmVhaztjYXNlImNhbmNlbGluZyI6dGhpcy5fdHJhbnNpdGlvbigiY2FuY2VsZWQiKTticmVhaztjYXNlInJ1bm5pbmciOnRoaXMuX3N0YXJ0KCl9fSxPYmplY3QuZGVmaW5lUHJvcGVydHkoT3gucHJvdG90eXBlLCJzbmFwc2hvdCIse2dldDpmdW5jdGlvbigpe3ZhciB0PUxEKHRoaXMuX3N0YXRlKTtyZXR1cm57Ynl0ZXNUcmFuc2ZlcnJlZDp0aGlzLl90cmFuc2ZlcnJlZCx0b3RhbEJ5dGVzOnRoaXMuX2Jsb2Iuc2l6ZSgpLHN0YXRlOnQsbWV0YWRhdGE6dGhpcy5fbWV0YWRhdGEsdGFzazp0aGlzLHJlZjp0aGlzLl9yZWZ9fSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE94LnByb3RvdHlwZS5vbj1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT10aGlzLG89bmV3IGt4KGUsbixyKTtyZXR1cm4gdGhpcy5fYWRkT2JzZXJ2ZXIobyksZnVuY3Rpb24oKXtpLl9yZW1vdmVPYnNlcnZlcihvKX19LE94LnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuX3Byb21pc2UudGhlbih0LGUpfSxPeC5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMudGhlbihudWxsLHQpfSxPeC5wcm90b3R5cGUuX2FkZE9ic2VydmVyPWZ1bmN0aW9uKHQpe3RoaXMuX29ic2VydmVycy5wdXNoKHQpLHRoaXMuX25vdGlmeU9ic2VydmVyKHQpfSxPeC5wcm90b3R5cGUuX3JlbW92ZU9ic2VydmVyPWZ1bmN0aW9uKHQpe3Q9dGhpcy5fb2JzZXJ2ZXJzLmluZGV4T2YodCk7LTEhPT10JiZ0aGlzLl9vYnNlcnZlcnMuc3BsaWNlKHQsMSl9LE94LnByb3RvdHlwZS5fbm90aWZ5T2JzZXJ2ZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9maW5pc2hQcm9taXNlKCksdGhpcy5fb2JzZXJ2ZXJzLnNsaWNlKCkuZm9yRWFjaChmdW5jdGlvbih0KXtlLl9ub3RpZnlPYnNlcnZlcih0KX0pfSxPeC5wcm90b3R5cGUuX2ZpbmlzaFByb21pc2U9ZnVuY3Rpb24oKXtpZih2b2lkIDAhPT10aGlzLl9yZXNvbHZlKXt2YXIgdD0hMDtzd2l0Y2goTEQodGhpcy5fc3RhdGUpKXtjYXNlIHhELlNVQ0NFU1M6UngodGhpcy5fcmVzb2x2ZS5iaW5kKG51bGwsdGhpcy5zbmFwc2hvdCkpKCk7YnJlYWs7Y2FzZSB4RC5DQU5DRUxFRDpjYXNlIHhELkVSUk9SOlJ4KHRoaXMuX3JlamVjdC5iaW5kKG51bGwsdGhpcy5fZXJyb3IpKSgpO2JyZWFrO2RlZmF1bHQ6dD0hMX10JiYodGhpcy5fcmVzb2x2ZT12b2lkIDAsdGhpcy5fcmVqZWN0PXZvaWQgMCl9fSxPeC5wcm90b3R5cGUuX25vdGlmeU9ic2VydmVyPWZ1bmN0aW9uKHQpe3N3aXRjaChMRCh0aGlzLl9zdGF0ZSkpe2Nhc2UgeEQuUlVOTklORzpjYXNlIHhELlBBVVNFRDp0Lm5leHQmJlJ4KHQubmV4dC5iaW5kKHQsdGhpcy5zbmFwc2hvdCkpKCk7YnJlYWs7Y2FzZSB4RC5TVUNDRVNTOnQuY29tcGxldGUmJlJ4KHQuY29tcGxldGUuYmluZCh0KSkoKTticmVhaztjYXNlIHhELkNBTkNFTEVEOmNhc2UgeEQuRVJST1I6dC5lcnJvciYmUngodC5lcnJvci5iaW5kKHQsdGhpcy5fZXJyb3IpKSgpO2JyZWFrO2RlZmF1bHQ6dC5lcnJvciYmUngodC5lcnJvci5iaW5kKHQsdGhpcy5fZXJyb3IpKSgpfX0sT3gucHJvdG90eXBlLnJlc3VtZT1mdW5jdGlvbigpe3ZhciB0PSJwYXVzZWQiPT09dGhpcy5fc3RhdGV8fCJwYXVzaW5nIj09PXRoaXMuX3N0YXRlO3JldHVybiB0JiZ0aGlzLl90cmFuc2l0aW9uKCJydW5uaW5nIiksdH0sT3gucHJvdG90eXBlLnBhdXNlPWZ1bmN0aW9uKCl7dmFyIHQ9InJ1bm5pbmciPT09dGhpcy5fc3RhdGU7cmV0dXJuIHQmJnRoaXMuX3RyYW5zaXRpb24oInBhdXNpbmciKSx0fSxPeC5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKCl7dmFyIHQ9InJ1bm5pbmciPT09dGhpcy5fc3RhdGV8fCJwYXVzaW5nIj09PXRoaXMuX3N0YXRlO3JldHVybiB0JiZ0aGlzLl90cmFuc2l0aW9uKCJjYW5jZWxpbmciKSx0fSxPeCk7ZnVuY3Rpb24gT3godCxlLG4pe3ZhciByPXRoaXM7dm9pZCAwPT09biYmKG49bnVsbCksdGhpcy5fdHJhbnNmZXJyZWQ9MCx0aGlzLl9uZWVkVG9GZXRjaFN0YXR1cz0hMSx0aGlzLl9uZWVkVG9GZXRjaE1ldGFkYXRhPSExLHRoaXMuX29ic2VydmVycz1bXSx0aGlzLl9lcnJvcj12b2lkIDAsdGhpcy5fdXBsb2FkVXJsPXZvaWQgMCx0aGlzLl9yZXF1ZXN0PXZvaWQgMCx0aGlzLl9jaHVua011bHRpcGxpZXI9MSx0aGlzLl9yZXNvbHZlPXZvaWQgMCx0aGlzLl9yZWplY3Q9dm9pZCAwLHRoaXMuX3JlZj10LHRoaXMuX2Jsb2I9ZSx0aGlzLl9tZXRhZGF0YT1uLHRoaXMuX21hcHBpbmdzPWF4KCksdGhpcy5fcmVzdW1hYmxlPXRoaXMuX3Nob3VsZERvUmVzdW1hYmxlKHRoaXMuX2Jsb2IpLHRoaXMuX3N0YXRlPSJydW5uaW5nIix0aGlzLl9lcnJvckhhbmRsZXI9ZnVuY3Rpb24odCl7ci5fcmVxdWVzdD12b2lkIDAsci5fY2h1bmtNdWx0aXBsaWVyPTEsdC5fY29kZUVxdWFscygiY2FuY2VsZWQiKT8oci5fbmVlZFRvRmV0Y2hTdGF0dXM9ITAsci5jb21wbGV0ZVRyYW5zaXRpb25zXygpKTooci5fZXJyb3I9dCxyLl90cmFuc2l0aW9uKCJlcnJvciIpKX0sdGhpcy5fbWV0YWRhdGFFcnJvckhhbmRsZXI9ZnVuY3Rpb24odCl7ci5fcmVxdWVzdD12b2lkIDAsdC5fY29kZUVxdWFscygiY2FuY2VsZWQiKT9yLmNvbXBsZXRlVHJhbnNpdGlvbnNfKCk6KHIuX2Vycm9yPXQsci5fdHJhbnNpdGlvbigiZXJyb3IiKSl9LHRoaXMuX3Byb21pc2U9bmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXtyLl9yZXNvbHZlPXQsci5fcmVqZWN0PWUsci5fc3RhcnQoKX0pLHRoaXMuX3Byb21pc2UudGhlbihudWxsLGZ1bmN0aW9uKCl7fSl9dmFyIER4PSh4eC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iZ3M6Ly8iK3RoaXMuX2xvY2F0aW9uLmJ1Y2tldCsiLyIrdGhpcy5fbG9jYXRpb24ucGF0aH0seHgucHJvdG90eXBlLl9uZXdSZWY9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbmV3IHh4KHQsZSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4eC5wcm90b3R5cGUsInJvb3QiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgdD1uZXcgcUQodGhpcy5fbG9jYXRpb24uYnVja2V0LCIiKTtyZXR1cm4gdGhpcy5fbmV3UmVmKHRoaXMuX3NlcnZpY2UsdCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHh4LnByb3RvdHlwZSwiYnVja2V0Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2xvY2F0aW9uLmJ1Y2tldH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoeHgucHJvdG90eXBlLCJmdWxsUGF0aCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9sb2NhdGlvbi5wYXRofSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4eC5wcm90b3R5cGUsIm5hbWUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcngodGhpcy5fbG9jYXRpb24ucGF0aCl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHh4LnByb3RvdHlwZSwic3RvcmFnZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9zZXJ2aWNlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4eC5wcm90b3R5cGUsInBhcmVudCIse2dldDpmdW5jdGlvbigpe3ZhciB0PWZ1bmN0aW9uKHQpe2lmKDA9PT10Lmxlbmd0aClyZXR1cm4gbnVsbDt2YXIgZT10Lmxhc3RJbmRleE9mKCIvIik7cmV0dXJuLTE9PT1lPyIiOnQuc2xpY2UoMCxlKX0odGhpcy5fbG9jYXRpb24ucGF0aCk7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7dD1uZXcgcUQodGhpcy5fbG9jYXRpb24uYnVja2V0LHQpO3JldHVybiBuZXcgeHgodGhpcy5fc2VydmljZSx0KX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx4eC5wcm90b3R5cGUuX3Rocm93SWZSb290PWZ1bmN0aW9uKHQpe2lmKCIiPT09dGhpcy5fbG9jYXRpb24ucGF0aCl0aHJvdyBURCh0KX0seHgpO2Z1bmN0aW9uIHh4KHQsZSl7dGhpcy5fc2VydmljZT10LHRoaXMuX2xvY2F0aW9uPWUgaW5zdGFuY2VvZiBxRD9lOnFELm1ha2VGcm9tVXJsKGUpfWZ1bmN0aW9uIEx4KHQpe3ZhciBlPXtwcmVmaXhlczpbXSxpdGVtczpbXX07cmV0dXJuIGZ1bmN0aW9uIHIoaSxvLHMpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsTXgoaSx7cGFnZVRva2VuOnN9KV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLChuPW8ucHJlZml4ZXMpLnB1c2guYXBwbHkobixlLnByZWZpeGVzKSwobj1vLml0ZW1zKS5wdXNoLmFwcGx5KG4sZS5pdGVtcyksbnVsbD09ZS5uZXh0UGFnZVRva2VuP1szLDNdOls0LHIoaSxvLGUubmV4dFBhZ2VUb2tlbildO2Nhc2UgMjp0LnNlbnQoKSx0LmxhYmVsPTM7Y2FzZSAzOnJldHVyblsyXX19KX0pfSh0LGUpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZX0pfWZ1bmN0aW9uIE14KGMsaCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBhLHU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gbnVsbCE9aCYmIm51bWJlciI9PXR5cGVvZiBoLm1heFJlc3VsdHMmJnpEKCJvcHRpb25zLm1heFJlc3VsdHMiLDEsMWUzLGgubWF4UmVzdWx0cyksWzQsYy5zdG9yYWdlLl9nZXRBdXRoVG9rZW4oKV07Y2FzZSAxOnJldHVybiBhPXQuc2VudCgpLHU9aHx8e30sZT1jLnN0b3JhZ2Usbj1jLl9sb2NhdGlvbixyPSIvIixpPXUucGFnZVRva2VuLG89dS5tYXhSZXN1bHRzLHM9e30sbi5pc1Jvb3Q/cy5wcmVmaXg9IiI6cy5wcmVmaXg9bi5wYXRoKyIvIixyJiYwPHIubGVuZ3RoJiYocy5kZWxpbWl0ZXI9ciksaSYmKHMucGFnZVRva2VuPWkpLG8mJihzLm1heFJlc3VsdHM9byksaT1RRChuLmJ1Y2tldE9ubHlTZXJ2ZXJVcmwoKSksbz1lLm1heE9wZXJhdGlvblJldHJ5VGltZSwobz1uZXcgZHgoaSwiR0VUIix5eChlLG4uYnVja2V0KSxvKSkudXJsUGFyYW1zPXMsby5lcnJvckhhbmRsZXI9YngobiksWzIsYy5zdG9yYWdlLl9tYWtlUmVxdWVzdChvLGEpLmdldFByb21pc2UoKV19dmFyIGUsbixyLGksbyxzfSl9KX1mdW5jdGlvbiBGeCh1LGMpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgYTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB1Ll90aHJvd0lmUm9vdCgidXBkYXRlTWV0YWRhdGEiKSxbNCx1LnN0b3JhZ2UuX2dldEF1dGhUb2tlbigpXTtjYXNlIDE6cmV0dXJuIGE9dC5zZW50KCksZT11LnN0b3JhZ2Usbj11Ll9sb2NhdGlvbixyPWMsaT1heCgpLG89UUQobi5mdWxsU2VydmVyVXJsKCkpLHM9aHgocixpKSxyPWUubWF4T3BlcmF0aW9uUmV0cnlUaW1lLChyPW5ldyBkeChvLCJQQVRDSCIsZ3goZSxpKSxyKSkuaGVhZGVycz17IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgifSxyLmJvZHk9cyxyLmVycm9ySGFuZGxlcj13eChuKSxbMix1LnN0b3JhZ2UuX21ha2VSZXF1ZXN0KHIsYSkuZ2V0UHJvbWlzZSgpXX12YXIgZSxuLHIsaSxvLHN9KX0pfWZ1bmN0aW9uIFV4KGEpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiBhLl90aHJvd0lmUm9vdCgiZ2V0RG93bmxvYWRVUkwiKSxbNCxhLnN0b3JhZ2UuX2dldEF1dGhUb2tlbigpXTtjYXNlIDE6cmV0dXJuIHM9dC5zZW50KCksZT1hLnN0b3JhZ2Usbj1hLl9sb2NhdGlvbixyPWF4KCksaT1RRChuLmZ1bGxTZXJ2ZXJVcmwoKSksbz1lLm1heE9wZXJhdGlvblJldHJ5VGltZSwobz1uZXcgZHgoaSwiR0VUIixteChlLHIpLG8pKS5lcnJvckhhbmRsZXI9d3gobiksWzIsYS5zdG9yYWdlLl9tYWtlUmVxdWVzdChvLHMpLmdldFByb21pc2UoKS50aGVuKGZ1bmN0aW9uKHQpe2lmKG51bGw9PT10KXRocm93IG5ldyB2RCgibm8tZG93bmxvYWQtdXJsIiwiVGhlIGdpdmVuIGZpbGUgZG9lcyBub3QgaGF2ZSBhbnkgZG93bmxvYWQgVVJMcy4iKTtyZXR1cm4gdH0pXX12YXIgZSxuLHIsaSxvfSl9KX1mdW5jdGlvbiBqeChvKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gby5fdGhyb3dJZlJvb3QoImRlbGV0ZU9iamVjdCIpLFs0LG8uc3RvcmFnZS5fZ2V0QXV0aFRva2VuKCldO2Nhc2UgMTpyZXR1cm4gaT10LnNlbnQoKSxlPW8uc3RvcmFnZSxuPW8uX2xvY2F0aW9uLHI9UUQobi5mdWxsU2VydmVyVXJsKCkpLGU9ZS5tYXhPcGVyYXRpb25SZXRyeVRpbWUsKGU9bmV3IGR4KHIsIkRFTEVURSIsZnVuY3Rpb24odCxlKXt9LGUpKS5zdWNjZXNzQ29kZXM9WzIwMCwyMDRdLGUuZXJyb3JIYW5kbGVyPXd4KG4pLFsyLG8uc3RvcmFnZS5fbWFrZVJlcXVlc3QoZSxpKS5nZXRQcm9taXNlKCldfXZhciBlLG4scn0pfSl9ZnVuY3Rpb24gcXgodCxlKXt2YXIgbixlPShuPXQuX2xvY2F0aW9uLnBhdGgsZT0oZT1lKS5zcGxpdCgiLyIpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gMDx0Lmxlbmd0aH0pLmpvaW4oIi8iKSwwPT09bi5sZW5ndGg/ZTpuKyIvIitlKSxlPW5ldyBxRCh0Ll9sb2NhdGlvbi5idWNrZXQsZSk7cmV0dXJuIG5ldyBEeCh0LnN0b3JhZ2UsZSl9ZnVuY3Rpb24gVngodCl7cmV0dXJuL15bQS1aYS16XSs6XC9cLy8udGVzdCh0KX1mdW5jdGlvbiBCeCh0LGUpe2lmKHQgaW5zdGFuY2VvZiBXeCl7dmFyIG49dDtpZihudWxsPT1uLl9idWNrZXQpdGhyb3cgbmV3IHZEKCJuby1kZWZhdWx0LWJ1Y2tldCIsIk5vIGRlZmF1bHQgYnVja2V0IGZvdW5kLiBEaWQgeW91IHNldCB0aGUgJyIrZEQrIicgcHJvcGVydHkgd2hlbiBpbml0aWFsaXppbmcgdGhlIGFwcD8iKTtuPW5ldyBEeChuLG4uX2J1Y2tldCk7cmV0dXJuIG51bGwhPWU/QngobixlKTpufWlmKHZvaWQgMD09PWUpcmV0dXJuIHQ7aWYoZS5pbmNsdWRlcygiLi4iKSl0aHJvdyBfRCgnYHBhdGhgIHBhcmFtIGNhbm5vdCBjb250YWluICIuLiInKTtyZXR1cm4gcXgodCxlKX1mdW5jdGlvbiBLeCh0LGUpe2lmKGUmJlZ4KGUpKXtpZih0IGluc3RhbmNlb2YgV3gpcmV0dXJuIG5ldyBEeCh0LGUpO3Rocm93IF9EKCJUbyB1c2UgcmVmKHNlcnZpY2UsIHVybCksIHRoZSBmaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgU3RvcmFnZSBpbnN0YW5jZS4iKX1yZXR1cm4gQngodCxlKX12YXIgV3g9KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShIeC5wcm90b3R5cGUsIm1heFVwbG9hZFJldHJ5VGltZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9tYXhVcGxvYWRSZXRyeVRpbWV9LHNldDpmdW5jdGlvbih0KXt6RCgidGltZSIsMCxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksdCksdGhpcy5fbWF4VXBsb2FkUmV0cnlUaW1lPXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KEh4LnByb3RvdHlwZSwibWF4T3BlcmF0aW9uUmV0cnlUaW1lIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX21heE9wZXJhdGlvblJldHJ5VGltZX0sc2V0OmZ1bmN0aW9uKHQpe3pEKCJ0aW1lIiwwLE51bWJlci5QT1NJVElWRV9JTkZJTklUWSx0KSx0aGlzLl9tYXhPcGVyYXRpb25SZXRyeVRpbWU9dH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxIeC5wcm90b3R5cGUuX2dldEF1dGhUb2tlbj1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybihlPXRoaXMuX2F1dGhQcm92aWRlci5nZXRJbW1lZGlhdGUoe29wdGlvbmFsOiEwfSkpP1s0LGUuZ2V0VG9rZW4oKV06WzMsMl07Y2FzZSAxOmlmKG51bGwhPT0oZT10LnNlbnQoKSkpcmV0dXJuWzIsZS5hY2Nlc3NUb2tlbl07dC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixudWxsXX19KX0pfSxIeC5wcm90b3R5cGUuX2RlbGV0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxldGVkPSEwLHRoaXMuX3JlcXVlc3RzLmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIHQuY2FuY2VsKCl9KSx0aGlzLl9yZXF1ZXN0cy5jbGVhcigpLFByb21pc2UucmVzb2x2ZSgpfSxIeC5wcm90b3R5cGUuX21ha2VTdG9yYWdlUmVmZXJlbmNlPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgRHgodGhpcyx0KX0sSHgucHJvdG90eXBlLl9tYWtlUmVxdWVzdD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7aWYodGhpcy5fZGVsZXRlZClyZXR1cm4gbmV3IEJEKElEKCkpO3ZhciByLGksbyxzLGEsdSxjPShyPXQsaT10aGlzLl9hcHBJZCxvPWUscz10aGlzLl9wb29sLGE9dGhpcy5fZmlyZWJhc2VWZXJzaW9uLHU9WUQoci51cmxQYXJhbXMpLHQ9ci51cmwrdSxlPU9iamVjdC5hc3NpZ24oe30sci5oZWFkZXJzKSx1PWUsKGk9aSkmJih1WyJYLUZpcmViYXNlLUdNUElEIl09aSksaT1lLG51bGwhPT0obz1vKSYmMDxvLmxlbmd0aCYmKGkuQXV0aG9yaXphdGlvbj0iRmlyZWJhc2UgIitvKSxhPWEsZVsiWC1GaXJlYmFzZS1TdG9yYWdlLVZlcnNpb24iXT0id2VianMvIisobnVsbCE9YT9hOiJBcHBNYW5hZ2VyIiksbmV3IFhEKHQsci5tZXRob2QsZSxyLmJvZHksci5zdWNjZXNzQ29kZXMsci5hZGRpdGlvbmFsUmV0cnlDb2RlcyxyLmhhbmRsZXIsci5lcnJvckhhbmRsZXIsci50aW1lb3V0LHIucHJvZ3Jlc3NDYWxsYmFjayxzKSk7cmV0dXJuIHRoaXMuX3JlcXVlc3RzLmFkZChjKSxjLmdldFByb21pc2UoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG4uX3JlcXVlc3RzLmRlbGV0ZShjKX0sZnVuY3Rpb24oKXtyZXR1cm4gbi5fcmVxdWVzdHMuZGVsZXRlKGMpfSksY30sSHgpO2Z1bmN0aW9uIEh4KHQsZSxuLHIsaSl7dGhpcy5hcHA9dCx0aGlzLl9hdXRoUHJvdmlkZXI9ZSx0aGlzLl9wb29sPW4sdGhpcy5fdXJsPXIsdGhpcy5fZmlyZWJhc2VWZXJzaW9uPWksdGhpcy5fYnVja2V0PW51bGwsdGhpcy5fYXBwSWQ9bnVsbCx0aGlzLl9kZWxldGVkPSExLHRoaXMuX21heE9wZXJhdGlvblJldHJ5VGltZT0xMmU0LHRoaXMuX21heFVwbG9hZFJldHJ5VGltZT02ZTUsdGhpcy5fcmVxdWVzdHM9bmV3IFNldCx0aGlzLl9idWNrZXQ9bnVsbCE9cj9xRC5tYWtlRnJvbUJ1Y2tldFNwZWMocik6bnVsbD09KHI9bnVsbD09KHI9dGhpcy5hcHAub3B0aW9ucyk/dm9pZCAwOnJbZERdKT9udWxsOnFELm1ha2VGcm9tQnVja2V0U3BlYyhyKX1mdW5jdGlvbiBHeCh0LGUsbil7cmV0dXJuIGU9ZSxuPW4sKHQ9dCkuX3Rocm93SWZSb290KCJ1cGxvYWRCeXRlc1Jlc3VtYWJsZSIpLG5ldyBQeCh0LG5ldyB0eChlKSxuKX1mdW5jdGlvbiB6eCh0KXtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG47cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gci5fdGhyb3dJZlJvb3QoImdldE1ldGFkYXRhIiksWzQsci5zdG9yYWdlLl9nZXRBdXRoVG9rZW4oKV07Y2FzZSAxOnJldHVybiBlPXQuc2VudCgpLG49X3goci5zdG9yYWdlLHIuX2xvY2F0aW9uLGF4KCkpLFsyLHIuc3RvcmFnZS5fbWFrZVJlcXVlc3QobixlKS5nZXRQcm9taXNlKCldfX0pfSl9KHQpfWZ1bmN0aW9uIFF4KHQsZSl7cmV0dXJuIEt4KHQsZSl9dmFyIFl4PShPYmplY3QuZGVmaW5lUHJvcGVydHkoWHgucHJvdG90eXBlLCJieXRlc1RyYW5zZmVycmVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLmJ5dGVzVHJhbnNmZXJyZWR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFh4LnByb3RvdHlwZSwibWV0YWRhdGEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUubWV0YWRhdGF9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFh4LnByb3RvdHlwZSwic3RhdGUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFh4LnByb3RvdHlwZSwidG90YWxCeXRlcyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS50b3RhbEJ5dGVzfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLFh4KTtmdW5jdGlvbiBYeCh0LGUsbil7dGhpcy5fZGVsZWdhdGU9dCx0aGlzLnRhc2s9ZSx0aGlzLnJlZj1ufXZhciBKeD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KCR4LnByb3RvdHlwZSwic25hcHNob3QiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFl4KHRoaXMuX2RlbGVnYXRlLnNuYXBzaG90LHRoaXMsdGhpcy5fcmVmKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSwkeC5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLnRoZW4oZnVuY3Rpb24odCl7aWYoZSlyZXR1cm4gZShuZXcgWXgodCxuLG4uX3JlZikpfSx0KX0sJHgucHJvdG90eXBlLm9uPWZ1bmN0aW9uKHQsZSxuLHIpe3ZhciBpPXRoaXMsbz12b2lkIDA7cmV0dXJuIGUmJihvPSJmdW5jdGlvbiI9PXR5cGVvZiBlP2Z1bmN0aW9uKHQpe3JldHVybiBlKG5ldyBZeCh0LGksaS5fcmVmKSl9OntuZXh0OmUubmV4dD9mdW5jdGlvbih0KXtyZXR1cm4gZS5uZXh0KG5ldyBZeCh0LGksaS5fcmVmKSl9OnZvaWQgMCxjb21wbGV0ZTplLmNvbXBsZXRlfHx2b2lkIDAsZXJyb3I6ZS5lcnJvcnx8dm9pZCAwfSksdGhpcy5fZGVsZWdhdGUub24odCxvLG58fHZvaWQgMCxyfHx2b2lkIDApfSwkeCk7ZnVuY3Rpb24gJHgodCxlKXt0aGlzLl9kZWxlZ2F0ZT10LHRoaXMuX3JlZj1lLHRoaXMuY2FuY2VsPXRoaXMuX2RlbGVnYXRlLmNhbmNlbC5iaW5kKHRoaXMuX2RlbGVnYXRlKSx0aGlzLmNhdGNoPXRoaXMuX2RlbGVnYXRlLmNhdGNoLmJpbmQodGhpcy5fZGVsZWdhdGUpLHRoaXMucGF1c2U9dGhpcy5fZGVsZWdhdGUucGF1c2UuYmluZCh0aGlzLl9kZWxlZ2F0ZSksdGhpcy5yZXN1bWU9dGhpcy5fZGVsZWdhdGUucmVzdW1lLmJpbmQodGhpcy5fZGVsZWdhdGUpfXZhciBaeD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KHRMLnByb3RvdHlwZSwicHJlZml4ZXMiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5wcmVmaXhlcy5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBlTCh0LGUuX3NlcnZpY2UpfSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHRMLnByb3RvdHlwZSwiaXRlbXMiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5pdGVtcy5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBlTCh0LGUuX3NlcnZpY2UpfSl9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHRMLnByb3RvdHlwZSwibmV4dFBhZ2VUb2tlbiIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5uZXh0UGFnZVRva2VufHxudWxsfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHRMKTtmdW5jdGlvbiB0TCh0LGUpe3RoaXMuX2RlbGVnYXRlPXQsdGhpcy5fc2VydmljZT1lfXZhciBlTD0oT2JqZWN0LmRlZmluZVByb3BlcnR5KG5MLnByb3RvdHlwZSwibmFtZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5uYW1lfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuTC5wcm90b3R5cGUsImJ1Y2tldCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5idWNrZXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KG5MLnByb3RvdHlwZSwiZnVsbFBhdGgiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUuZnVsbFBhdGh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksbkwucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RlbGVnYXRlLnRvU3RyaW5nKCl9LG5MLnByb3RvdHlwZS5jaGlsZD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IG5MKHF4KHRoaXMuX2RlbGVnYXRlLHQpLHRoaXMuc3RvcmFnZSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuTC5wcm90b3R5cGUsInJvb3QiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG5MKHRoaXMuX2RlbGVnYXRlLnJvb3QsdGhpcy5zdG9yYWdlKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobkwucHJvdG90eXBlLCJwYXJlbnQiLHtnZXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9kZWxlZ2F0ZS5wYXJlbnQ7cmV0dXJuIG51bGw9PXQ/bnVsbDpuZXcgbkwodCx0aGlzLnN0b3JhZ2UpfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLG5MLnByb3RvdHlwZS5wdXQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fdGhyb3dJZlJvb3QoInB1dCIpLG5ldyBKeChHeCh0aGlzLl9kZWxlZ2F0ZSx0LGUpLHRoaXMpfSxuTC5wcm90b3R5cGUucHV0U3RyaW5nPWZ1bmN0aW9uKHQsZSxuKXt2b2lkIDA9PT1lJiYoZT1DRC5SQVcpLHRoaXMuX3Rocm93SWZSb290KCJwdXRTdHJpbmciKTt0PUFEKGUsdCksbj1KaSh7fSxuKTtyZXR1cm4gbnVsbD09bi5jb250ZW50VHlwZSYmbnVsbCE9dC5jb250ZW50VHlwZSYmKG4uY29udGVudFR5cGU9dC5jb250ZW50VHlwZSksbmV3IEp4KG5ldyBQeCh0aGlzLl9kZWxlZ2F0ZSxuZXcgdHgodC5kYXRhLCEwKSxuKSx0aGlzKX0sbkwucHJvdG90eXBlLmxpc3RBbGw9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBMeCh0aGlzLl9kZWxlZ2F0ZSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFp4KHQsZS5zdG9yYWdlKX0pfSxuTC5wcm90b3R5cGUubGlzdD1mdW5jdGlvbih0KXt2YXIgZT10aGlzO3JldHVybiBNeCh0aGlzLl9kZWxlZ2F0ZSx0fHx2b2lkIDApLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBaeCh0LGUuc3RvcmFnZSl9KX0sbkwucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIHp4KHRoaXMuX2RlbGVnYXRlKX0sbkwucHJvdG90eXBlLnVwZGF0ZU1ldGFkYXRhPWZ1bmN0aW9uKHQpe3JldHVybiBGeCh0aGlzLl9kZWxlZ2F0ZSx0KX0sbkwucHJvdG90eXBlLmdldERvd25sb2FkVVJMPWZ1bmN0aW9uKCl7cmV0dXJuIFV4KHRoaXMuX2RlbGVnYXRlKX0sbkwucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl90aHJvd0lmUm9vdCgiZGVsZXRlIiksangodGhpcy5fZGVsZWdhdGUpfSxuTC5wcm90b3R5cGUuX3Rocm93SWZSb290PWZ1bmN0aW9uKHQpe2lmKCIiPT09dGhpcy5fZGVsZWdhdGUuX2xvY2F0aW9uLnBhdGgpdGhyb3cgVEQodCl9LG5MKTtmdW5jdGlvbiBuTCh0LGUpe3RoaXMuX2RlbGVnYXRlPXQsdGhpcy5zdG9yYWdlPWV9dmFyIHJMPShPYmplY3QuZGVmaW5lUHJvcGVydHkoaUwucHJvdG90eXBlLCJtYXhPcGVyYXRpb25SZXRyeVRpbWUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGVsZWdhdGUubWF4T3BlcmF0aW9uUmV0cnlUaW1lfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShpTC5wcm90b3R5cGUsIm1heFVwbG9hZFJldHJ5VGltZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kZWxlZ2F0ZS5tYXhVcGxvYWRSZXRyeVRpbWV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksaUwucHJvdG90eXBlLnJlZj1mdW5jdGlvbih0KXtpZihWeCh0KSl0aHJvdyBfRCgicmVmKCkgZXhwZWN0ZWQgYSBjaGlsZCBwYXRoIGJ1dCBnb3QgYSBVUkwsIHVzZSByZWZGcm9tVVJMIGluc3RlYWQuIik7cmV0dXJuIG5ldyBlTChReCh0aGlzLl9kZWxlZ2F0ZSx0KSx0aGlzKX0saUwucHJvdG90eXBlLnJlZkZyb21VUkw9ZnVuY3Rpb24odCl7aWYoIVZ4KHQpKXRocm93IF9EKCJyZWZGcm9tVVJMKCkgZXhwZWN0ZWQgYSBmdWxsIFVSTCBidXQgZ290IGEgY2hpbGQgcGF0aCwgdXNlIHJlZigpIGluc3RlYWQuIik7dHJ5e3FELm1ha2VGcm9tVXJsKHQpfWNhdGNoKHQpe3Rocm93IF9EKCJyZWZGcm9tVXJsKCkgZXhwZWN0ZWQgYSB2YWxpZCBmdWxsIFVSTCBidXQgZ290IGFuIGludmFsaWQgb25lLiIpfXJldHVybiBuZXcgZUwoUXgodGhpcy5fZGVsZWdhdGUsdCksdGhpcyl9LGlMLnByb3RvdHlwZS5zZXRNYXhVcGxvYWRSZXRyeVRpbWU9ZnVuY3Rpb24odCl7dGhpcy5fZGVsZWdhdGUubWF4VXBsb2FkUmV0cnlUaW1lPXR9LGlMLnByb3RvdHlwZS5zZXRNYXhPcGVyYXRpb25SZXRyeVRpbWU9ZnVuY3Rpb24odCl7dGhpcy5fZGVsZWdhdGUubWF4T3BlcmF0aW9uUmV0cnlUaW1lPXR9LGlMKTtmdW5jdGlvbiBpTCh0LGUpe3ZhciBuPXRoaXM7dGhpcy5hcHA9dCx0aGlzLl9kZWxlZ2F0ZT1lLHRoaXMuSU5URVJOQUw9e2RlbGV0ZTpmdW5jdGlvbigpe3JldHVybiBuLl9kZWxlZ2F0ZS5fZGVsZXRlKCl9fX12YXIgb0wsc0w7ZnVuY3Rpb24gYUwodCxlKXt2YXIgbj1lLmluc3RhbmNlSWRlbnRpZmllcixlPXQuZ2V0UHJvdmlkZXIoImFwcCIpLmdldEltbWVkaWF0ZSgpLHQ9dC5nZXRQcm92aWRlcigiYXV0aC1pbnRlcm5hbCIpO3JldHVybiBuZXcgckwoZSxuZXcgV3goZSx0LG5ldyBVRCxuLFhsLlNES19WRVJTSU9OKSl9c0w9e1Rhc2tTdGF0ZTp4RCxUYXNrRXZlbnQ6REQsU3RyaW5nRm9ybWF0OkNELFN0b3JhZ2U6V3gsUmVmZXJlbmNlOmVMfSwob0w9WGwpLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygic3RvcmFnZSIsYUwsIlBVQkxJQyIpLnNldFNlcnZpY2VQcm9wcyhzTCkuc2V0TXVsdGlwbGVJbnN0YW5jZXMoITApKSxvTC5yZWdpc3RlclZlcnNpb24oIkBmaXJlYmFzZS9zdG9yYWdlIiwiMC40LjYiKTt2YXIgdUwsY0wsaEw9IjAuNC45IixsTD0iRkItUEVSRi1UUkFDRS1NRUFTVVJFIixmTD0iQGZpcmViYXNlL3BlcmZvcm1hbmNlL2NvbmZpZyIscEw9IkBmaXJlYmFzZS9wZXJmb3JtYW5jZS9jb25maWdleHBpcmUiLFNuPSJQZXJmb3JtYW5jZSIsR2E9KChHYT17fSlbInRyYWNlIHN0YXJ0ZWQiXT0iVHJhY2UgeyR0cmFjZU5hbWV9IHdhcyBzdGFydGVkIGJlZm9yZS4iLEdhWyJ0cmFjZSBzdG9wcGVkIl09IlRyYWNlIHskdHJhY2VOYW1lfSBpcyBub3QgcnVubmluZy4iLEdhWyJub25wb3NpdGl2ZSB0cmFjZSBzdGFydFRpbWUiXT0iVHJhY2UgeyR0cmFjZU5hbWV9IHN0YXJ0VGltZSBzaG91bGQgYmUgcG9zaXRpdmUuIixHYVsibm9ucG9zaXRpdmUgdHJhY2UgZHVyYXRpb24iXT0iVHJhY2UgeyR0cmFjZU5hbWV9IGR1cmF0aW9uIHNob3VsZCBiZSBwb3NpdGl2ZS4iLEdhWyJubyB3aW5kb3ciXT0iV2luZG93IGlzIG5vdCBhdmFpbGFibGUuIixHYVsibm8gYXBwIGlkIl09IkFwcCBpZCBpcyBub3QgYXZhaWxhYmxlLiIsR2FbIm5vIHByb2plY3QgaWQiXT0iUHJvamVjdCBpZCBpcyBub3QgYXZhaWxhYmxlLiIsR2FbIm5vIGFwaSBrZXkiXT0iQXBpIGtleSBpcyBub3QgYXZhaWxhYmxlLiIsR2FbImludmFsaWQgY2MgbG9nIl09IkF0dGVtcHRlZCB0byBxdWV1ZSBpbnZhbGlkIGNjIGV2ZW50IixHYVsiRkIgbm90IGRlZmF1bHQiXT0iUGVyZm9ybWFuY2UgY2FuIG9ubHkgc3RhcnQgd2hlbiBGaXJlYmFzZSBhcHAgaW5zdGFuY2UgaXMgdGhlIGRlZmF1bHQgb25lLiIsR2FbIlJDIHJlc3BvbnNlIG5vdCBvayJdPSJSQyByZXNwb25zZSBpcyBub3Qgb2siLEdhWyJpbnZhbGlkIGF0dHJpYnV0ZSBuYW1lIl09IkF0dHJpYnV0ZSBuYW1lIHskYXR0cmlidXRlTmFtZX0gaXMgaW52YWxpZC4iLEdhWyJpbnZhbGlkIGF0dHJpYnV0ZSB2YWx1ZSJdPSJBdHRyaWJ1dGUgdmFsdWUgeyRhdHRyaWJ1dGVWYWx1ZX0gaXMgaW52YWxpZC4iLEdhWyJpbnZhbGlkIGN1c3RvbSBtZXRyaWMgbmFtZSJdPSJDdXN0b20gbWV0cmljIG5hbWUgeyRjdXN0b21NZXRyaWNOYW1lfSBpcyBpbnZhbGlkIixHYVsiaW52YWxpZCBTdHJpbmcgbWVyZ2VyIGlucHV0Il09IklucHV0IGZvciBTdHJpbmcgbWVyZ2VyIGlzIGludmFsaWQsIGNvbnRhY3Qgc3VwcG9ydCB0ZWFtIHRvIHJlc29sdmUuIixHYSksZEw9bmV3IENvKCJwZXJmb3JtYW5jZSIsU24sR2EpLHZMPW5ldyBwcyhTbik7dkwubG9nTGV2ZWw9YXMuSU5GTzt2YXIgZ0wseUw9KG1MLnByb3RvdHlwZS5nZXRVcmw9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aW5kb3dMb2NhdGlvbi5ocmVmLnNwbGl0KCI/IilbMF19LG1MLnByb3RvdHlwZS5tYXJrPWZ1bmN0aW9uKHQpe3RoaXMucGVyZm9ybWFuY2UmJnRoaXMucGVyZm9ybWFuY2UubWFyayYmdGhpcy5wZXJmb3JtYW5jZS5tYXJrKHQpfSxtTC5wcm90b3R5cGUubWVhc3VyZT1mdW5jdGlvbih0LGUsbil7dGhpcy5wZXJmb3JtYW5jZSYmdGhpcy5wZXJmb3JtYW5jZS5tZWFzdXJlJiZ0aGlzLnBlcmZvcm1hbmNlLm1lYXN1cmUodCxlLG4pfSxtTC5wcm90b3R5cGUuZ2V0RW50cmllc0J5VHlwZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5wZXJmb3JtYW5jZSYmdGhpcy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlP3RoaXMucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSh0KTpbXX0sbUwucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMucGVyZm9ybWFuY2UmJnRoaXMucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZT90aGlzLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUodCk6W119LG1MLnByb3RvdHlwZS5nZXRUaW1lT3JpZ2luPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGVyZm9ybWFuY2UmJih0aGlzLnBlcmZvcm1hbmNlLnRpbWVPcmlnaW58fHRoaXMucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCl9LG1MLnByb3RvdHlwZS5yZXF1aXJlZEFwaXNBdmFpbGFibGU9ZnVuY3Rpb24oKXtyZXR1cm4gZmV0Y2gmJlByb21pc2UmJnRoaXMubmF2aWdhdG9yJiZ0aGlzLm5hdmlnYXRvci5jb29raWVFbmFibGVkPyEhYm8oKXx8KHZMLmluZm8oIkluZGV4ZWREQiBpcyBub3Qgc3VwcG9ydGVkIGJ5IGN1cnJlbnQgYnJvd3N3ZXIiKSwhMSk6KHZMLmluZm8oIkZpcmViYXNlIFBlcmZvcm1hbmNlIGNhbm5vdCBzdGFydCBpZiBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgZmV0Y2ggYW5kIFByb21pc2Ugb3IgY29va2llIGlzIGRpc2FibGVkLiIpLCExKX0sbUwucHJvdG90eXBlLnNldHVwT2JzZXJ2ZXI9ZnVuY3Rpb24odCxpKXt0aGlzLlBlcmZvcm1hbmNlT2JzZXJ2ZXImJm5ldyB0aGlzLlBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24odCl7Zm9yKHZhciBlPTAsbj10LmdldEVudHJpZXMoKTtlPG4ubGVuZ3RoO2UrKyl7dmFyIHI9bltlXTtpKHIpfX0pLm9ic2VydmUoe2VudHJ5VHlwZXM6W3RdfSl9LG1MLmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIHVMPXZvaWQgMD09PXVMP25ldyBtTChjTCk6dUx9LG1MKTtmdW5jdGlvbiBtTCh0KXtpZighKHRoaXMud2luZG93PXQpKXRocm93IGRMLmNyZWF0ZSgibm8gd2luZG93Iik7dGhpcy5wZXJmb3JtYW5jZT10LnBlcmZvcm1hbmNlLHRoaXMuUGVyZm9ybWFuY2VPYnNlcnZlcj10LlBlcmZvcm1hbmNlT2JzZXJ2ZXIsdGhpcy53aW5kb3dMb2NhdGlvbj10LmxvY2F0aW9uLHRoaXMubmF2aWdhdG9yPXQubmF2aWdhdG9yLHRoaXMuZG9jdW1lbnQ9dC5kb2N1bWVudCx0aGlzLm5hdmlnYXRvciYmdGhpcy5uYXZpZ2F0b3IuY29va2llRW5hYmxlZCYmKHRoaXMubG9jYWxTdG9yYWdlPXQubG9jYWxTdG9yYWdlKSx0LnBlcmZNZXRyaWNzJiZ0LnBlcmZNZXRyaWNzLm9uRmlyc3RJbnB1dERlbGF5JiYodGhpcy5vbkZpcnN0SW5wdXREZWxheT10LnBlcmZNZXRyaWNzLm9uRmlyc3RJbnB1dERlbGF5KX1mdW5jdGlvbiBiTCh0LGUpe3ZhciBuPXQubGVuZ3RoLWUubGVuZ3RoO2lmKG48MHx8MTxuKXRocm93IGRMLmNyZWF0ZSgiaW52YWxpZCBTdHJpbmcgbWVyZ2VyIGlucHV0Iik7Zm9yKHZhciByPVtdLGk9MDtpPHQubGVuZ3RoO2krKylyLnB1c2godC5jaGFyQXQoaSkpLGUubGVuZ3RoPmkmJnIucHVzaChlLmNoYXJBdChpKSk7cmV0dXJuIHIuam9pbigiIil9dmFyIHdMLF9MLElMPShUTC5wcm90b3R5cGUuZ2V0QXBwSWQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmZpcmViYXNlQXBwSW5zdGFuY2UmJnRoaXMuZmlyZWJhc2VBcHBJbnN0YW5jZS5vcHRpb25zJiZ0aGlzLmZpcmViYXNlQXBwSW5zdGFuY2Uub3B0aW9ucy5hcHBJZDtpZighdCl0aHJvdyBkTC5jcmVhdGUoIm5vIGFwcCBpZCIpO3JldHVybiB0fSxUTC5wcm90b3R5cGUuZ2V0UHJvamVjdElkPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5maXJlYmFzZUFwcEluc3RhbmNlJiZ0aGlzLmZpcmViYXNlQXBwSW5zdGFuY2Uub3B0aW9ucyYmdGhpcy5maXJlYmFzZUFwcEluc3RhbmNlLm9wdGlvbnMucHJvamVjdElkO2lmKCF0KXRocm93IGRMLmNyZWF0ZSgibm8gcHJvamVjdCBpZCIpO3JldHVybiB0fSxUTC5wcm90b3R5cGUuZ2V0QXBpS2V5PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5maXJlYmFzZUFwcEluc3RhbmNlJiZ0aGlzLmZpcmViYXNlQXBwSW5zdGFuY2Uub3B0aW9ucyYmdGhpcy5maXJlYmFzZUFwcEluc3RhbmNlLm9wdGlvbnMuYXBpS2V5O2lmKCF0KXRocm93IGRMLmNyZWF0ZSgibm8gYXBpIGtleSIpO3JldHVybiB0fSxUTC5wcm90b3R5cGUuZ2V0RmxUcmFuc3BvcnRGdWxsVXJsPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmxUcmFuc3BvcnRFbmRwb2ludFVybC5jb25jYXQoIj9rZXk9Iix0aGlzLnRyYW5zcG9ydEtleSl9LFRMLmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIGdMPXZvaWQgMD09PWdMP25ldyBUTDpnTH0sVEwpO2Z1bmN0aW9uIFRMKCl7dGhpcy5pbnN0cnVtZW50YXRpb25FbmFibGVkPSEwLHRoaXMuZGF0YUNvbGxlY3Rpb25FbmFibGVkPSEwLHRoaXMubG9nZ2luZ0VuYWJsZWQ9ITEsdGhpcy50cmFjZXNTYW1wbGluZ1JhdGU9MSx0aGlzLm5ldHdvcmtSZXF1ZXN0c1NhbXBsaW5nUmF0ZT0xLHRoaXMubG9nRW5kUG9pbnRVcmw9Imh0dHBzOi8vZmlyZWJhc2Vsb2dnaW5nLmdvb2dsZWFwaXMuY29tL3YwY2MvbG9nP2Zvcm1hdD1qc29uX3Byb3RvIix0aGlzLmZsVHJhbnNwb3J0RW5kcG9pbnRVcmw9YkwoImh0cy9mcmJzbGdpZ3Aub2dlcHNjbXYvaWVvL2VheWxnIiwidHA6L2llYWVvZ24tYWdvbGFpLm8vMWZybGdsZ2MvbyIpLHRoaXMudHJhbnNwb3J0S2V5PWJMKCJBelNDOHI2UmVpR3FGTXlmdmdvdyIsIklheXgwdS1YVDN2a3NWTS1wSVYiKSx0aGlzLmxvZ1NvdXJjZT00NjIsdGhpcy5sb2dUcmFjZUFmdGVyU2FtcGxpbmc9ITEsdGhpcy5sb2dOZXR3b3JrQWZ0ZXJTYW1wbGluZz0hMSx0aGlzLmNvbmZpZ1RpbWVUb0xpdmU9MTJ9KFNuPV9MPV9MfHx7fSlbU24uVU5LTk9XTj0wXT0iVU5LTk9XTiIsU25bU24uVklTSUJMRT0xXT0iVklTSUJMRSIsU25bU24uSElEREVOPTJdPSJISURERU4iO3ZhciBFTD1bImZpcmViYXNlXyIsImdvb2dsZV8iLCJnYV8iXSxTTD1uZXcgUmVnRXhwKCJeW2EtekEtWl1cXHcqJCIpO2Z1bmN0aW9uIENMKCl7c3dpdGNoKHlMLmdldEluc3RhbmNlKCkuZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlKXtjYXNlInZpc2libGUiOnJldHVybiBfTC5WSVNJQkxFO2Nhc2UiaGlkZGVuIjpyZXR1cm4gX0wuSElEREVOO2RlZmF1bHQ6cmV0dXJuIF9MLlVOS05PV059fXZhciBOTD0iMC4wLjEiLEFMPXtsb2dnaW5nRW5hYmxlZDohMH0sa0w9IkZJUkVCQVNFX0lOU1RBTExBVElPTlNfQVVUSCI7ZnVuY3Rpb24gUkwodCl7dmFyIG4sZT1mdW5jdGlvbigpe3ZhciB0PXlMLmdldEluc3RhbmNlKCkubG9jYWxTdG9yYWdlO2lmKCF0KXJldHVybjt2YXIgZT10LmdldEl0ZW0ocEwpO2lmKCFlfHwhZnVuY3Rpb24odCl7cmV0dXJuIE51bWJlcih0KT5EYXRlLm5vdygpfShlKSlyZXR1cm47dmFyIG49dC5nZXRJdGVtKGZMKTtpZighbilyZXR1cm47dHJ5e3JldHVybiBKU09OLnBhcnNlKG4pfWNhdGNoKHQpe3JldHVybn19KCk7cmV0dXJuIGU/KE9MKGUpLFByb21pc2UucmVzb2x2ZSgpKToobj10LGZ1bmN0aW9uKCl7dmFyIHQ9SUwuZ2V0SW5zdGFuY2UoKS5pbnN0YWxsYXRpb25zU2VydmljZS5nZXRUb2tlbigpO3JldHVybiB0LnRoZW4oZnVuY3Rpb24odCl7fSksdH0oKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBlPSJodHRwczovL2ZpcmViYXNlcmVtb3RlY29uZmlnLmdvb2dsZWFwaXMuY29tL3YxL3Byb2plY3RzLyIrSUwuZ2V0SW5zdGFuY2UoKS5nZXRQcm9qZWN0SWQoKSsiL25hbWVzcGFjZXMvZmlyZXBlcmY6ZmV0Y2g/a2V5PSIrSUwuZ2V0SW5zdGFuY2UoKS5nZXRBcGlLZXkoKSx0PW5ldyBSZXF1ZXN0KGUse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7QXV0aG9yaXphdGlvbjprTCsiICIrdH0sYm9keTpKU09OLnN0cmluZ2lmeSh7YXBwX2luc3RhbmNlX2lkOm4sYXBwX2luc3RhbmNlX2lkX3Rva2VuOnQsYXBwX2lkOklMLmdldEluc3RhbmNlKCkuZ2V0QXBwSWQoKSxhcHBfdmVyc2lvbjpoTCxzZGtfdmVyc2lvbjpOTH0pfSk7cmV0dXJuIGZldGNoKHQpLnRoZW4oZnVuY3Rpb24odCl7aWYodC5vaylyZXR1cm4gdC5qc29uKCk7dGhyb3cgZEwuY3JlYXRlKCJSQyByZXNwb25zZSBub3Qgb2siKX0pfSkuY2F0Y2goZnVuY3Rpb24oKXt2TC5pbmZvKFBMKX0pLnRoZW4oT0wpLnRoZW4oZnVuY3Rpb24odCl7dmFyIGU9eUwuZ2V0SW5zdGFuY2UoKS5sb2NhbFN0b3JhZ2U7aWYoIXR8fCFlKXJldHVybjtlLnNldEl0ZW0oZkwsSlNPTi5zdHJpbmdpZnkodCkpLGUuc2V0SXRlbShwTCxTdHJpbmcoRGF0ZS5ub3coKSs2MCpJTC5nZXRJbnN0YW5jZSgpLmNvbmZpZ1RpbWVUb0xpdmUqNjAqMWUzKSl9LGZ1bmN0aW9uKCl7fSkpfXZhciBQTD0iQ291bGQgbm90IGZldGNoIGNvbmZpZywgd2lsbCB1c2UgZGVmYXVsdCBjb25maWdzIjtmdW5jdGlvbiBPTCh0KXtpZighdClyZXR1cm4gdDt2YXIgZT1JTC5nZXRJbnN0YW5jZSgpLG49dC5lbnRyaWVzfHx7fTtyZXR1cm4gZS5sb2dnaW5nRW5hYmxlZD12b2lkIDAhPT1uLmZwcl9lbmFibGVkPyJ0cnVlIj09PVN0cmluZyhuLmZwcl9lbmFibGVkKTpBTC5sb2dnaW5nRW5hYmxlZCxuLmZwcl9sb2dfc291cmNlJiYoZS5sb2dTb3VyY2U9TnVtYmVyKG4uZnByX2xvZ19zb3VyY2UpKSxuLmZwcl9sb2dfZW5kcG9pbnRfdXJsJiYoZS5sb2dFbmRQb2ludFVybD1uLmZwcl9sb2dfZW5kcG9pbnRfdXJsKSxuLmZwcl9sb2dfdHJhbnNwb3J0X2tleSYmKGUudHJhbnNwb3J0S2V5PW4uZnByX2xvZ190cmFuc3BvcnRfa2V5KSx2b2lkIDAhPT1uLmZwcl92Y19uZXR3b3JrX3JlcXVlc3Rfc2FtcGxpbmdfcmF0ZSYmKGUubmV0d29ya1JlcXVlc3RzU2FtcGxpbmdSYXRlPU51bWJlcihuLmZwcl92Y19uZXR3b3JrX3JlcXVlc3Rfc2FtcGxpbmdfcmF0ZSkpLHZvaWQgMCE9PW4uZnByX3ZjX3RyYWNlX3NhbXBsaW5nX3JhdGUmJihlLnRyYWNlc1NhbXBsaW5nUmF0ZT1OdW1iZXIobi5mcHJfdmNfdHJhY2Vfc2FtcGxpbmdfcmF0ZSkpLGUubG9nVHJhY2VBZnRlclNhbXBsaW5nPURMKGUudHJhY2VzU2FtcGxpbmdSYXRlKSxlLmxvZ05ldHdvcmtBZnRlclNhbXBsaW5nPURMKGUubmV0d29ya1JlcXVlc3RzU2FtcGxpbmdSYXRlKSx0fWZ1bmN0aW9uIERMKHQpe3JldHVybiBNYXRoLnJhbmRvbSgpPD10fXZhciB4TCxMTD0xO2Z1bmN0aW9uIE1MKCl7cmV0dXJuIExMPTIseEw9eEx8fGZ1bmN0aW9uKCl7dmFyIG49eUwuZ2V0SW5zdGFuY2UoKS5kb2N1bWVudDtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCl7dmFyIGU7biYmImNvbXBsZXRlIiE9PW4ucmVhZHlTdGF0ZT8oZT1mdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1uLnJlYWR5U3RhdGUmJihuLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlYWR5c3RhdGVjaGFuZ2UiLGUpLHQoKSl9LG4uYWRkRXZlbnRMaXN0ZW5lcigicmVhZHlzdGF0ZWNoYW5nZSIsZSkpOnQoKX0pfSgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4odD1JTC5nZXRJbnN0YW5jZSgpLmluc3RhbGxhdGlvbnNTZXJ2aWNlLmdldElkKCkpLnRoZW4oZnVuY3Rpb24odCl7d0w9dH0pLHQ7dmFyIHR9KS50aGVuKFJMKS50aGVuKEZMLEZMKX1mdW5jdGlvbiBGTCgpe0xMPTN9dmFyIFVMLGpMPTFlNCxxTD01NTAwLFZMPTMsQkw9MWUzLEtMPVZMLFdMPVtdLEhMPSExO2Z1bmN0aW9uIEdMKHQpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdCxlO2lmKDAhPT1LTClyZXR1cm4gV0wubGVuZ3RoPyh0PVdMLnNwbGljZSgwLEJMKSxlPXQubWFwKGZ1bmN0aW9uKHQpe3JldHVybntzb3VyY2VfZXh0ZW5zaW9uX2pzb25fcHJvdG8zOnQubWVzc2FnZSxldmVudF90aW1lX21zOlN0cmluZyh0LmV2ZW50VGltZSl9fSksdm9pZCBmdW5jdGlvbih0LHIpe3JldHVybiBmdW5jdGlvbih0KXt2YXIgZT1JTC5nZXRJbnN0YW5jZSgpLmdldEZsVHJhbnNwb3J0RnVsbFVybCgpO3JldHVybiBmZXRjaChlLHttZXRob2Q6IlBPU1QiLGJvZHk6SlNPTi5zdHJpbmdpZnkodCl9KX0odCkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5va3x8dkwuaW5mbygiQ2FsbCB0byBGaXJlYmFzZSBiYWNrZW5kIGZhaWxlZC4iKSx0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIGU9TnVtYmVyKHQubmV4dFJlcXVlc3RXYWl0TWlsbGlzKSxuPWpMO2lzTmFOKGUpfHwobj1NYXRoLm1heChlLG4pKTt0PXQubG9nUmVzcG9uc2VEZXRhaWxzO0FycmF5LmlzQXJyYXkodCkmJjA8dC5sZW5ndGgmJiJSRVRSWV9SRVFVRVNUX0xBVEVSIj09PXRbMF0ucmVzcG9uc2VBY3Rpb24mJihXTD1ubyhubyhbXSxyKSxXTCksdkwuaW5mbygiUmV0cnkgdHJhbnNwb3J0IHJlcXVlc3QgbGF0ZXIuIikpLEtMPVZMLEdMKG4pfSl9KHtyZXF1ZXN0X3RpbWVfbXM6U3RyaW5nKERhdGUubm93KCkpLGNsaWVudF9pbmZvOntjbGllbnRfdHlwZToxLGpzX2NsaWVudF9pbmZvOnt9fSxsb2dfc291cmNlOklMLmdldEluc3RhbmNlKCkubG9nU291cmNlLGxvZ19ldmVudDplfSx0KS5jYXRjaChmdW5jdGlvbigpe1dMPW5vKG5vKFtdLHQpLFdMKSxLTC0tLHZMLmluZm8oIlRyaWVzIGxlZnQ6ICIrS0wrIi4iKSxHTChqTCl9KSk6R0woakwpfSx0KX1mdW5jdGlvbiB6TChuKXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07IWZ1bmN0aW9uKHQpe2lmKCF0LmV2ZW50VGltZXx8IXQubWVzc2FnZSl0aHJvdyBkTC5jcmVhdGUoImludmFsaWQgY2MgbG9nIik7V0w9bm8obm8oW10sV0wpLFt0XSl9KHttZXNzYWdlOm4uYXBwbHkodm9pZCAwLHQpLGV2ZW50VGltZTpEYXRlLm5vdygpfSl9fWZ1bmN0aW9uIFFMKHQsZSl7KFVMPVVMfHx6TChKTCkpKHQsZSl9ZnVuY3Rpb24gWUwodCl7dmFyIGU9SUwuZ2V0SW5zdGFuY2UoKTshZS5pbnN0cnVtZW50YXRpb25FbmFibGVkJiZ0LmlzQXV0b3x8KGUuZGF0YUNvbGxlY3Rpb25FbmFibGVkfHx0LmlzQXV0bykmJnlMLmdldEluc3RhbmNlKCkucmVxdWlyZWRBcGlzQXZhaWxhYmxlKCkmJih0LmlzQXV0byYmQ0woKSE9PV9MLlZJU0lCTEV8fCgzPT09TEw/WEwodCk6TUwoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFhMKHQpfSxmdW5jdGlvbigpe3JldHVybiBYTCh0KX0pKSl9ZnVuY3Rpb24gWEwodCl7dmFyIGU7IXdMfHwoZT1JTC5nZXRJbnN0YW5jZSgpKS5sb2dnaW5nRW5hYmxlZCYmZS5sb2dUcmFjZUFmdGVyU2FtcGxpbmcmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gUUwodCwxKX0sMCl9ZnVuY3Rpb24gSkwodCxlKXtyZXR1cm4oMD09PWU/ZnVuY3Rpb24odCl7dD17dXJsOnQudXJsLGh0dHBfbWV0aG9kOnQuaHR0cE1ldGhvZHx8MCxodHRwX3Jlc3BvbnNlX2NvZGU6MjAwLHJlc3BvbnNlX3BheWxvYWRfYnl0ZXM6dC5yZXNwb25zZVBheWxvYWRCeXRlcyxjbGllbnRfc3RhcnRfdGltZV91czp0LnN0YXJ0VGltZVVzLHRpbWVfdG9fcmVzcG9uc2VfaW5pdGlhdGVkX3VzOnQudGltZVRvUmVzcG9uc2VJbml0aWF0ZWRVcyx0aW1lX3RvX3Jlc3BvbnNlX2NvbXBsZXRlZF91czp0LnRpbWVUb1Jlc3BvbnNlQ29tcGxldGVkVXN9LHQ9e2FwcGxpY2F0aW9uX2luZm86JEwoKSxuZXR3b3JrX3JlcXVlc3RfbWV0cmljOnR9O3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX06ZnVuY3Rpb24odCl7dmFyIGU9e25hbWU6dC5uYW1lLGlzX2F1dG86dC5pc0F1dG8sY2xpZW50X3N0YXJ0X3RpbWVfdXM6dC5zdGFydFRpbWVVcyxkdXJhdGlvbl91czp0LmR1cmF0aW9uVXN9OzAhPT1PYmplY3Qua2V5cyh0LmNvdW50ZXJzKS5sZW5ndGgmJihlLmNvdW50ZXJzPXQuY291bnRlcnMpO3Q9dC5nZXRBdHRyaWJ1dGVzKCk7MCE9PU9iamVjdC5rZXlzKHQpLmxlbmd0aCYmKGUuY3VzdG9tX2F0dHJpYnV0ZXM9dCk7ZT17YXBwbGljYXRpb25faW5mbzokTCgpLHRyYWNlX21ldHJpYzplfTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9KSh0KX1mdW5jdGlvbiAkTCgpe3JldHVybntnb29nbGVfYXBwX2lkOklMLmdldEluc3RhbmNlKCkuZ2V0QXBwSWQoKSxhcHBfaW5zdGFuY2VfaWQ6d0wsd2ViX2FwcF9pbmZvOntzZGtfdmVyc2lvbjpoTCxwYWdlX3VybDp5TC5nZXRJbnN0YW5jZSgpLmdldFVybCgpLHNlcnZpY2Vfd29ya2VyX3N0YXR1czoic2VydmljZVdvcmtlciJpbih0PXlMLmdldEluc3RhbmNlKCkubmF2aWdhdG9yKT90LnNlcnZpY2VXb3JrZXIuY29udHJvbGxlcj8yOjM6MSx2aXNpYmlsaXR5X3N0YXRlOkNMKCksZWZmZWN0aXZlX2Nvbm5lY3Rpb25fdHlwZTpmdW5jdGlvbigpe3ZhciB0PXlMLmdldEluc3RhbmNlKCkubmF2aWdhdG9yLmNvbm5lY3Rpb247c3dpdGNoKHQmJnQuZWZmZWN0aXZlVHlwZSl7Y2FzZSJzbG93LTJnIjpyZXR1cm4gMTtjYXNlIjJnIjpyZXR1cm4gMjtjYXNlIjNnIjpyZXR1cm4gMztjYXNlIjRnIjpyZXR1cm4gNDtkZWZhdWx0OnJldHVybiAwfX0oKX0sYXBwbGljYXRpb25fcHJvY2Vzc19zdGF0ZTowfTt2YXIgdH12YXIgWkw9WyJfZnAiLCJfZmNwIiwiX2ZpZCJdO3ZhciB0TT0oZU0ucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7aWYoMSE9PXRoaXMuc3RhdGUpdGhyb3cgZEwuY3JlYXRlKCJ0cmFjZSBzdGFydGVkIix7dHJhY2VOYW1lOnRoaXMubmFtZX0pO3RoaXMuYXBpLm1hcmsodGhpcy50cmFjZVN0YXJ0TWFyayksdGhpcy5zdGF0ZT0yfSxlTS5wcm90b3R5cGUuc3RvcD1mdW5jdGlvbigpe2lmKDIhPT10aGlzLnN0YXRlKXRocm93IGRMLmNyZWF0ZSgidHJhY2Ugc3RvcHBlZCIse3RyYWNlTmFtZTp0aGlzLm5hbWV9KTt0aGlzLnN0YXRlPTMsdGhpcy5hcGkubWFyayh0aGlzLnRyYWNlU3RvcE1hcmspLHRoaXMuYXBpLm1lYXN1cmUodGhpcy50cmFjZU1lYXN1cmUsdGhpcy50cmFjZVN0YXJ0TWFyayx0aGlzLnRyYWNlU3RvcE1hcmspLHRoaXMuY2FsY3VsYXRlVHJhY2VNZXRyaWNzKCksWUwodGhpcyl9LGVNLnByb3RvdHlwZS5yZWNvcmQ9ZnVuY3Rpb24odCxlLG4pe2lmKHQ8PTApdGhyb3cgZEwuY3JlYXRlKCJub25wb3NpdGl2ZSB0cmFjZSBzdGFydFRpbWUiLHt0cmFjZU5hbWU6dGhpcy5uYW1lfSk7aWYoZTw9MCl0aHJvdyBkTC5jcmVhdGUoIm5vbnBvc2l0aXZlIHRyYWNlIGR1cmF0aW9uIix7dHJhY2VOYW1lOnRoaXMubmFtZX0pO2lmKHRoaXMuZHVyYXRpb25Vcz1NYXRoLmZsb29yKDFlMyplKSx0aGlzLnN0YXJ0VGltZVVzPU1hdGguZmxvb3IoMWUzKnQpLG4mJm4uYXR0cmlidXRlcyYmKHRoaXMuY3VzdG9tQXR0cmlidXRlcz1KaSh7fSxuLmF0dHJpYnV0ZXMpKSxuJiZuLm1ldHJpY3MpZm9yKHZhciByPTAsaT1PYmplY3Qua2V5cyhuLm1ldHJpY3MpO3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdO2lzTmFOKE51bWJlcihuLm1ldHJpY3Nbb10pKXx8KHRoaXMuY291bnRlcnNbb109TnVtYmVyKE1hdGguZmxvb3Iobi5tZXRyaWNzW29dKSkpfVlMKHRoaXMpfSxlTS5wcm90b3R5cGUuaW5jcmVtZW50TWV0cmljPWZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09ZSYmKGU9MSksdm9pZCAwPT09dGhpcy5jb3VudGVyc1t0XT90aGlzLnB1dE1ldHJpYyh0LGUpOnRoaXMucHV0TWV0cmljKHQsdGhpcy5jb3VudGVyc1t0XStlKX0sZU0ucHJvdG90eXBlLnB1dE1ldHJpYz1mdW5jdGlvbih0LGUpe2lmKG49dCxyPXRoaXMubmFtZSwwPT09bi5sZW5ndGh8fDEwMDxuLmxlbmd0aHx8IShyJiZyLnN0YXJ0c1dpdGgoIl93dF8iKSYmLTE8WkwuaW5kZXhPZihuKSkmJm4uc3RhcnRzV2l0aCgiXyIpKXRocm93IGRMLmNyZWF0ZSgiaW52YWxpZCBjdXN0b20gbWV0cmljIG5hbWUiLHtjdXN0b21NZXRyaWNOYW1lOnR9KTt2YXIgbixyO3RoaXMuY291bnRlcnNbdF09KHQ9ZSwoZT1NYXRoLmZsb29yKHQpKTx0JiZ2TC5pbmZvKCJNZXRyaWMgdmFsdWUgc2hvdWxkIGJlIGFuIEludGVnZXIsIHNldHRpbmcgdGhlIHZhbHVlIGFzIDogIitlKyIuIiksZSl9LGVNLnByb3RvdHlwZS5nZXRNZXRyaWM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY291bnRlcnNbdF18fDB9LGVNLnByb3RvdHlwZS5wdXRBdHRyaWJ1dGU9ZnVuY3Rpb24odCxlKXt2YXIgbixyLGk9ISgwPT09KG49dCkubGVuZ3RofHw0MDxuLmxlbmd0aCkmJighRUwuc29tZShmdW5jdGlvbih0KXtyZXR1cm4gbi5zdGFydHNXaXRoKHQpfSkmJiEhbi5tYXRjaChTTCkpLHI9MCE9PShyPWUpLmxlbmd0aCYmci5sZW5ndGg8PTEwMDtpZihpJiZyKXRoaXMuY3VzdG9tQXR0cmlidXRlc1t0XT1lO2Vsc2V7aWYoIWkpdGhyb3cgZEwuY3JlYXRlKCJpbnZhbGlkIGF0dHJpYnV0ZSBuYW1lIix7YXR0cmlidXRlTmFtZTp0fSk7aWYoIXIpdGhyb3cgZEwuY3JlYXRlKCJpbnZhbGlkIGF0dHJpYnV0ZSB2YWx1ZSIse2F0dHJpYnV0ZVZhbHVlOmV9KX19LGVNLnByb3RvdHlwZS5nZXRBdHRyaWJ1dGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY3VzdG9tQXR0cmlidXRlc1t0XX0sZU0ucHJvdG90eXBlLnJlbW92ZUF0dHJpYnV0ZT1mdW5jdGlvbih0KXt2b2lkIDAhPT10aGlzLmN1c3RvbUF0dHJpYnV0ZXNbdF0mJmRlbGV0ZSB0aGlzLmN1c3RvbUF0dHJpYnV0ZXNbdF19LGVNLnByb3RvdHlwZS5nZXRBdHRyaWJ1dGVzPWZ1bmN0aW9uKCl7cmV0dXJuIEppKHt9LHRoaXMuY3VzdG9tQXR0cmlidXRlcyl9LGVNLnByb3RvdHlwZS5zZXRTdGFydFRpbWU9ZnVuY3Rpb24odCl7dGhpcy5zdGFydFRpbWVVcz10fSxlTS5wcm90b3R5cGUuc2V0RHVyYXRpb249ZnVuY3Rpb24odCl7dGhpcy5kdXJhdGlvblVzPXR9LGVNLnByb3RvdHlwZS5jYWxjdWxhdGVUcmFjZU1ldHJpY3M9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmFwaS5nZXRFbnRyaWVzQnlOYW1lKHRoaXMudHJhY2VNZWFzdXJlKSx0PXQmJnRbMF07dCYmKHRoaXMuZHVyYXRpb25Vcz1NYXRoLmZsb29yKDFlMyp0LmR1cmF0aW9uKSx0aGlzLnN0YXJ0VGltZVVzPU1hdGguZmxvb3IoMWUzKih0LnN0YXJ0VGltZSt0aGlzLmFwaS5nZXRUaW1lT3JpZ2luKCkpKSl9LGVNLmNyZWF0ZU9vYlRyYWNlPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcixpPXlMLmdldEluc3RhbmNlKCkuZ2V0VXJsKCk7aSYmKHI9bmV3IGVNKCJfd3RfIitpLCEwKSxpPU1hdGguZmxvb3IoMWUzKnlMLmdldEluc3RhbmNlKCkuZ2V0VGltZU9yaWdpbigpKSxyLnNldFN0YXJ0VGltZShpKSx0JiZ0WzBdJiYoci5zZXREdXJhdGlvbihNYXRoLmZsb29yKDFlMyp0WzBdLmR1cmF0aW9uKSksci5wdXRNZXRyaWMoImRvbUludGVyYWN0aXZlIixNYXRoLmZsb29yKDFlMyp0WzBdLmRvbUludGVyYWN0aXZlKSksci5wdXRNZXRyaWMoImRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCIsTWF0aC5mbG9vcigxZTMqdFswXS5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpKSxyLnB1dE1ldHJpYygibG9hZEV2ZW50RW5kIixNYXRoLmZsb29yKDFlMyp0WzBdLmxvYWRFdmVudEVuZCkpKSxlJiYoKHQ9ZS5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiJmaXJzdC1wYWludCI9PT10Lm5hbWV9KSkmJnQuc3RhcnRUaW1lJiZyLnB1dE1ldHJpYygiX2ZwIixNYXRoLmZsb29yKDFlMyp0LnN0YXJ0VGltZSkpLChlPWUuZmluZChmdW5jdGlvbih0KXtyZXR1cm4iZmlyc3QtY29udGVudGZ1bC1wYWludCI9PT10Lm5hbWV9KSkmJmUuc3RhcnRUaW1lJiZyLnB1dE1ldHJpYygiX2ZjcCIsTWF0aC5mbG9vcigxZTMqZS5zdGFydFRpbWUpKSxuJiZyLnB1dE1ldHJpYygiX2ZpZCIsTWF0aC5mbG9vcigxZTMqbikpKSxZTChyKSl9LGVNLmNyZWF0ZVVzZXJUaW1pbmdUcmFjZT1mdW5jdGlvbih0KXtZTChuZXcgZU0odCwhMSx0KSl9LGVNKTtmdW5jdGlvbiBlTSh0LGUsbil7dm9pZCAwPT09ZSYmKGU9ITEpLHRoaXMubmFtZT10LHRoaXMuaXNBdXRvPWUsdGhpcy5zdGF0ZT0xLHRoaXMuY3VzdG9tQXR0cmlidXRlcz17fSx0aGlzLmNvdW50ZXJzPXt9LHRoaXMuYXBpPXlMLmdldEluc3RhbmNlKCksdGhpcy5yYW5kb21JZD1NYXRoLmZsb29yKDFlNipNYXRoLnJhbmRvbSgpKSx0aGlzLmlzQXV0b3x8KHRoaXMudHJhY2VTdGFydE1hcms9IkZCLVBFUkYtVFJBQ0UtU1RBUlQtIit0aGlzLnJhbmRvbUlkKyItIit0aGlzLm5hbWUsdGhpcy50cmFjZVN0b3BNYXJrPSJGQi1QRVJGLVRSQUNFLVNUT1AtIit0aGlzLnJhbmRvbUlkKyItIit0aGlzLm5hbWUsdGhpcy50cmFjZU1lYXN1cmU9bnx8bEwrIi0iK3RoaXMucmFuZG9tSWQrIi0iK3RoaXMubmFtZSxuJiZ0aGlzLmNhbGN1bGF0ZVRyYWNlTWV0cmljcygpKX1mdW5jdGlvbiBuTSh0KXt2YXIgZSxuLHIsaT10O2kmJnZvaWQgMCE9PWkucmVzcG9uc2VTdGFydCYmKG49eUwuZ2V0SW5zdGFuY2UoKS5nZXRUaW1lT3JpZ2luKCkscj1NYXRoLmZsb29yKDFlMyooaS5zdGFydFRpbWUrbikpLHQ9aS5yZXNwb25zZVN0YXJ0P01hdGguZmxvb3IoMWUzKihpLnJlc3BvbnNlU3RhcnQtaS5zdGFydFRpbWUpKTp2b2lkIDAsbj1NYXRoLmZsb29yKDFlMyooaS5yZXNwb25zZUVuZC1pLnN0YXJ0VGltZSkpLGk9e3VybDppLm5hbWUmJmkubmFtZS5zcGxpdCgiPyIpWzBdLHJlc3BvbnNlUGF5bG9hZEJ5dGVzOmkudHJhbnNmZXJTaXplLHN0YXJ0VGltZVVzOnIsdGltZVRvUmVzcG9uc2VJbml0aWF0ZWRVczp0LHRpbWVUb1Jlc3BvbnNlQ29tcGxldGVkVXM6bn0sZT1pLChyPUlMLmdldEluc3RhbmNlKCkpLmluc3RydW1lbnRhdGlvbkVuYWJsZWQmJih0PWUudXJsLG49ci5sb2dFbmRQb2ludFVybC5zcGxpdCgiPyIpWzBdLGk9ci5mbFRyYW5zcG9ydEVuZHBvaW50VXJsLnNwbGl0KCI/IilbMF0sdCE9PW4mJnQhPT1pJiZyLmxvZ2dpbmdFbmFibGVkJiZyLmxvZ05ldHdvcmtBZnRlclNhbXBsaW5nJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIFFMKGUsMCl9LDApKSl9dmFyIHJNPTVlMztmdW5jdGlvbiBpTSgpe3dMJiYoc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB0PXlMLmdldEluc3RhbmNlKCksZT10LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSxuPXQuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKTt7dmFyIHI7dC5vbkZpcnN0SW5wdXREZWxheT8ocj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dE0uY3JlYXRlT29iVHJhY2UoZSxuKSxyPXZvaWQgMH0sck0pLHQub25GaXJzdElucHV0RGVsYXkoZnVuY3Rpb24odCl7ciYmKGNsZWFyVGltZW91dChyKSx0TS5jcmVhdGVPb2JUcmFjZShlLG4sdCkpfSkpOnRNLmNyZWF0ZU9vYlRyYWNlKGUsbil9fSwwKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Zm9yKHZhciB0PXlMLmdldEluc3RhbmNlKCksZT10LmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIiksbj0wLHI9ZTtuPHIubGVuZ3RoO24rKyluTShyW25dKTt0LnNldHVwT2JzZXJ2ZXIoInJlc291cmNlIixuTSl9LDApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmb3IodmFyIHQ9eUwuZ2V0SW5zdGFuY2UoKSxlPXQuZ2V0RW50cmllc0J5VHlwZSgibWVhc3VyZSIpLG49MCxyPWU7bjxyLmxlbmd0aDtuKyspb00ocltuXSk7dC5zZXR1cE9ic2VydmVyKCJtZWFzdXJlIixvTSl9LDApKX1mdW5jdGlvbiBvTSh0KXt0PXQubmFtZTt0LnN1YnN0cmluZygwLGxMLmxlbmd0aCkhPT1sTCYmdE0uY3JlYXRlVXNlclRpbWluZ1RyYWNlKHQpfXZhciBzTT0oYU0ucHJvdG90eXBlLnRyYWNlPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgdE0odCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhTS5wcm90b3R5cGUsImluc3RydW1lbnRhdGlvbkVuYWJsZWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gSUwuZ2V0SW5zdGFuY2UoKS5pbnN0cnVtZW50YXRpb25FbmFibGVkfSxzZXQ6ZnVuY3Rpb24odCl7SUwuZ2V0SW5zdGFuY2UoKS5pbnN0cnVtZW50YXRpb25FbmFibGVkPXR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGFNLnByb3RvdHlwZSwiZGF0YUNvbGxlY3Rpb25FbmFibGVkIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIElMLmdldEluc3RhbmNlKCkuZGF0YUNvbGxlY3Rpb25FbmFibGVkfSxzZXQ6ZnVuY3Rpb24odCl7SUwuZ2V0SW5zdGFuY2UoKS5kYXRhQ29sbGVjdGlvbkVuYWJsZWQ9dH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxhTSk7ZnVuY3Rpb24gYU0odCl7dGhpcy5hcHA9dCx5TC5nZXRJbnN0YW5jZSgpLnJlcXVpcmVkQXBpc0F2YWlsYWJsZSgpJiZ3bygpLnRoZW4oZnVuY3Rpb24odCl7dCYmKEhMfHwoR0wocUwpLEhMPSEwKSxNTCgpLnRoZW4oaU0saU0pKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3ZMLmluZm8oIkVudmlyb25tZW50IGRvZXNuJ3Qgc3VwcG9ydCBJbmRleGVkREI6ICIrdCl9KX12YXIgdU07ZnVuY3Rpb24gY00odCxlKXtpZigiW0RFRkFVTFRdIiE9PXQubmFtZSl0aHJvdyBkTC5jcmVhdGUoIkZCIG5vdCBkZWZhdWx0Iik7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3cpdGhyb3cgZEwuY3JlYXRlKCJubyB3aW5kb3ciKTtyZXR1cm4gY0w9d2luZG93LElMLmdldEluc3RhbmNlKCkuZmlyZWJhc2VBcHBJbnN0YW5jZT10LElMLmdldEluc3RhbmNlKCkuaW5zdGFsbGF0aW9uc1NlcnZpY2U9ZSxuZXcgc00odCl9KHVNPVhsKS5JTlRFUk5BTC5yZWdpc3RlckNvbXBvbmVudChuZXcgdHMoInBlcmZvcm1hbmNlIixmdW5jdGlvbih0KXt2YXIgZT10LmdldFByb3ZpZGVyKCJhcHAiKS5nZXRJbW1lZGlhdGUoKSx0PXQuZ2V0UHJvdmlkZXIoImluc3RhbGxhdGlvbnMiKS5nZXRJbW1lZGlhdGUoKTtyZXR1cm4gY00oZSx0KX0sIlBVQkxJQyIpKSx1TS5yZWdpc3RlclZlcnNpb24oIkBmaXJlYmFzZS9wZXJmb3JtYW5jZSIsIjAuNC45Iik7dmFyIGhNLGxNLGZNPSJmaXJlYmFzZV9pZCIscE09Im9yaWdpbiIsZE09NmU0LHZNPSJodHRwczovL2ZpcmViYXNlLmdvb2dsZWFwaXMuY29tL3YxYWxwaGEvcHJvamVjdHMvLS9hcHBzL3thcHAtaWR9L3dlYkNvbmZpZyIsZ009Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0YWcvanMiOyhTbj1oTT1oTXx8e30pLkVWRU5UPSJldmVudCIsU24uU0VUPSJzZXQiLFNuLkNPTkZJRz0iY29uZmlnIiwoU249bE09bE18fHt9KS5BRERfU0hJUFBJTkdfSU5GTz0iYWRkX3NoaXBwaW5nX2luZm8iLFNuLkFERF9QQVlNRU5UX0lORk89ImFkZF9wYXltZW50X2luZm8iLFNuLkFERF9UT19DQVJUPSJhZGRfdG9fY2FydCIsU24uQUREX1RPX1dJU0hMSVNUPSJhZGRfdG9fd2lzaGxpc3QiLFNuLkJFR0lOX0NIRUNLT1VUPSJiZWdpbl9jaGVja291dCIsU24uQ0hFQ0tPVVRfUFJPR1JFU1M9ImNoZWNrb3V0X3Byb2dyZXNzIixTbi5FWENFUFRJT049ImV4Y2VwdGlvbiIsU24uR0VORVJBVEVfTEVBRD0iZ2VuZXJhdGVfbGVhZCIsU24uTE9HSU49ImxvZ2luIixTbi5QQUdFX1ZJRVc9InBhZ2VfdmlldyIsU24uUFVSQ0hBU0U9InB1cmNoYXNlIixTbi5SRUZVTkQ9InJlZnVuZCIsU24uUkVNT1ZFX0ZST01fQ0FSVD0icmVtb3ZlX2Zyb21fY2FydCIsU24uU0NSRUVOX1ZJRVc9InNjcmVlbl92aWV3IixTbi5TRUFSQ0g9InNlYXJjaCIsU24uU0VMRUNUX0NPTlRFTlQ9InNlbGVjdF9jb250ZW50IixTbi5TRUxFQ1RfSVRFTT0ic2VsZWN0X2l0ZW0iLFNuLlNFTEVDVF9QUk9NT1RJT049InNlbGVjdF9wcm9tb3Rpb24iLFNuLlNFVF9DSEVDS09VVF9PUFRJT049InNldF9jaGVja291dF9vcHRpb24iLFNuLlNIQVJFPSJzaGFyZSIsU24uU0lHTl9VUD0ic2lnbl91cCIsU24uVElNSU5HX0NPTVBMRVRFPSJ0aW1pbmdfY29tcGxldGUiLFNuLlZJRVdfQ0FSVD0idmlld19jYXJ0IixTbi5WSUVXX0lURU09InZpZXdfaXRlbSIsU24uVklFV19JVEVNX0xJU1Q9InZpZXdfaXRlbV9saXN0IixTbi5WSUVXX1BST01PVElPTj0idmlld19wcm9tb3Rpb24iLFNuLlZJRVdfU0VBUkNIX1JFU1VMVFM9InZpZXdfc2VhcmNoX3Jlc3VsdHMiO3ZhciB5TT1uZXcgcHMoIkBmaXJlYmFzZS9hbmFseXRpY3MiKTtmdW5jdGlvbiBtTShvLHMsYSx1KXtyZXR1cm4gZnVuY3Rpb24obixyLGkpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0LnRyeXMucHVzaChbMCw2LCw3XSksbiE9PWhNLkVWRU5UP1szLDJdOls0LGZ1bmN0aW9uKHUsYyxoLGwsZil7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBuLHIsZSxpLG8scyxhO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuKHQudHJ5cy5wdXNoKFswLDQsLDVdKSxuPVtdLGYmJmYuc2VuZF90byk/KGE9Zi5zZW5kX3RvLEFycmF5LmlzQXJyYXkoYSl8fChhPVthXSksWzQsUHJvbWlzZS5hbGwoaCldKTpbMywyXTtjYXNlIDE6Zm9yKHI9dC5zZW50KCksZT1mdW5jdGlvbihlKXt2YXIgdD1yLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQubWVhc3VyZW1lbnRJZD09PWV9KSx0PXQmJmNbdC5hcHBJZF07aWYoIXQpcmV0dXJuIG49W10sImJyZWFrIjtuLnB1c2godCl9LGk9MCxvPWE7aTxvLmxlbmd0aCYmKHM9b1tpXSwiYnJlYWsiIT09ZShzKSk7aSsrKTt0LmxhYmVsPTI7Y2FzZSAyOnJldHVybiAwPT09bi5sZW5ndGgmJihuPU9iamVjdC52YWx1ZXMoYykpLFs0LFByb21pc2UuYWxsKG4pXTtjYXNlIDM6cmV0dXJuIHQuc2VudCgpLHUoaE0uRVZFTlQsbCxmfHx7fSksWzMsNV07Y2FzZSA0OnJldHVybiBhPXQuc2VudCgpLHlNLmVycm9yKGEpLFszLDVdO2Nhc2UgNTpyZXR1cm5bMl19fSl9KX0obyxzLGEscixpKV07Y2FzZSAxOnJldHVybiB0LnNlbnQoKSxbMyw1XTtjYXNlIDI6cmV0dXJuIG4hPT1oTS5DT05GSUc/WzMsNF06WzQsZnVuY3Rpb24ocixpLG8scyxhLHUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6ZT1zW2FdLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDcsLDhdKSxlP1s0LGlbZV1dOlszLDNdO2Nhc2UgMjpyZXR1cm4gdC5zZW50KCksWzMsNl07Y2FzZSAzOnJldHVybls0LFByb21pc2UuYWxsKG8pXTtjYXNlIDQ6cmV0dXJuIG49dC5zZW50KCksKG49bi5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0Lm1lYXN1cmVtZW50SWQ9PT1hfSkpP1s0LGlbbi5hcHBJZF1dOlszLDZdO2Nhc2UgNTp0LnNlbnQoKSx0LmxhYmVsPTY7Y2FzZSA2OnJldHVyblszLDhdO2Nhc2UgNzpyZXR1cm4gbj10LnNlbnQoKSx5TS5lcnJvcihuKSxbMyw4XTtjYXNlIDg6cmV0dXJuIHIoaE0uQ09ORklHLGEsdSksWzJdfX0pfSl9KG8scyxhLHUscixpKV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbMyw1XTtjYXNlIDQ6byhoTS5TRVQsciksdC5sYWJlbD01O2Nhc2UgNTpyZXR1cm5bMyw3XTtjYXNlIDY6cmV0dXJuIGU9dC5zZW50KCkseU0uZXJyb3IoZSksWzMsN107Y2FzZSA3OnJldHVyblsyXX19KX0pfX12YXIgU249KChTbj17fSlbImFscmVhZHktZXhpc3RzIl09IkEgRmlyZWJhc2UgQW5hbHl0aWNzIGluc3RhbmNlIHdpdGggdGhlIGFwcElkIHskaWR9ICBhbHJlYWR5IGV4aXN0cy4gT25seSBvbmUgRmlyZWJhc2UgQW5hbHl0aWNzIGluc3RhbmNlIGNhbiBiZSBjcmVhdGVkIGZvciBlYWNoIGFwcElkLiIsU25bImFscmVhZHktaW5pdGlhbGl6ZWQiXT0iRmlyZWJhc2UgQW5hbHl0aWNzIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQuc2V0dGluZ3MoKSBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgaW5pdGlhbGl6aW5nIGFueSBBbmFseXRpY3MgaW5zdGFuY2VvciBpdCB3aWxsIGhhdmUgbm8gZWZmZWN0LiIsU25bImludGVyb3AtY29tcG9uZW50LXJlZy1mYWlsZWQiXT0iRmlyZWJhc2UgQW5hbHl0aWNzIEludGVyb3AgQ29tcG9uZW50IGZhaWxlZCB0byBpbnN0YW50aWF0ZTogeyRyZWFzb259IixTblsiaW52YWxpZC1hbmFseXRpY3MtY29udGV4dCJdPSJGaXJlYmFzZSBBbmFseXRpY3MgaXMgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGVudmlyb25tZW50LiBXcmFwIGluaXRpYWxpemF0aW9uIG9mIGFuYWx5dGljcyBpbiBhbmFseXRpY3MuaXNTdXBwb3J0ZWQoKSB0byBwcmV2ZW50IGluaXRpYWxpemF0aW9uIGluIHVuc3VwcG9ydGVkIGVudmlyb25tZW50cy4gRGV0YWlsczogeyRlcnJvckluZm99IixTblsiaW5kZXhlZGRiLXVuYXZhaWxhYmxlIl09IkluZGV4ZWREQiB1bmF2YWlsYWJsZSBvciByZXN0cmljdGVkIGluIHRoaXMgZW52aXJvbm1lbnQuIFdyYXAgaW5pdGlhbGl6YXRpb24gb2YgYW5hbHl0aWNzIGluIGFuYWx5dGljcy5pc1N1cHBvcnRlZCgpIHRvIHByZXZlbnQgaW5pdGlhbGl6YXRpb24gaW4gdW5zdXBwb3J0ZWQgZW52aXJvbm1lbnRzLiBEZXRhaWxzOiB7JGVycm9ySW5mb30iLFNuWyJmZXRjaC10aHJvdHRsZSJdPSJUaGUgY29uZmlnIGZldGNoIHJlcXVlc3QgdGltZWQgb3V0IHdoaWxlIGluIGFuIGV4cG9uZW50aWFsIGJhY2tvZmYgc3RhdGUuIFVuaXggdGltZXN0YW1wIGluIG1pbGxpc2Vjb25kcyB3aGVuIGZldGNoIHJlcXVlc3QgdGhyb3R0bGluZyBlbmRzOiB7JHRocm90dGxlRW5kVGltZU1pbGxpc30uIixTblsiY29uZmlnLWZldGNoLWZhaWxlZCJdPSJEeW5hbWljIGNvbmZpZyBmZXRjaCBmYWlsZWQ6IFt7JGh0dHBTdGF0dXN9XSB7JHJlc3BvbnNlTWVzc2FnZX0iLFNuWyJuby1hcGkta2V5Il09J1RoZSAiYXBpS2V5IiBmaWVsZCBpcyBlbXB0eSBpbiB0aGUgbG9jYWwgRmlyZWJhc2UgY29uZmlnLiBGaXJlYmFzZSBBbmFseXRpY3MgcmVxdWlyZXMgdGhpcyBmaWVsZCB0b2NvbnRhaW4gYSB2YWxpZCBBUEkga2V5LicsU25bIm5vLWFwcC1pZCJdPSdUaGUgImFwcElkIiBmaWVsZCBpcyBlbXB0eSBpbiB0aGUgbG9jYWwgRmlyZWJhc2UgY29uZmlnLiBGaXJlYmFzZSBBbmFseXRpY3MgcmVxdWlyZXMgdGhpcyBmaWVsZCB0b2NvbnRhaW4gYSB2YWxpZCBhcHAgSUQuJyxTbiksYk09bmV3IENvKCJhbmFseXRpY3MiLCJBbmFseXRpY3MiLFNuKSx3TT0zMDtmdW5jdGlvbiBfTSh0LGUpe3ZvaWQgMD09PXQmJih0PXt9KSx2b2lkIDA9PT1lJiYoZT0xZTMpLHRoaXMudGhyb3R0bGVNZXRhZGF0YT10LHRoaXMuaW50ZXJ2YWxNaWxsaXM9ZX12YXIgSU09bmV3KF9NLnByb3RvdHlwZS5nZXRUaHJvdHRsZU1ldGFkYXRhPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnRocm90dGxlTWV0YWRhdGFbdF19LF9NLnByb3RvdHlwZS5zZXRUaHJvdHRsZU1ldGFkYXRhPWZ1bmN0aW9uKHQsZSl7dGhpcy50aHJvdHRsZU1ldGFkYXRhW3RdPWV9LF9NLnByb3RvdHlwZS5kZWxldGVUaHJvdHRsZU1ldGFkYXRhPWZ1bmN0aW9uKHQpe2RlbGV0ZSB0aGlzLnRocm90dGxlTWV0YWRhdGFbdF19LF9NKTtmdW5jdGlvbiBUTShvKXt2YXIgcztyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGk7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT1vLmFwcElkLGk9by5hcGlLZXksaT17bWV0aG9kOiJHRVQiLGhlYWRlcnM6bmV3IEhlYWRlcnMoe0FjY2VwdDoiYXBwbGljYXRpb24vanNvbiIsIngtZ29vZy1hcGkta2V5IjppfSl9LGU9dk0ucmVwbGFjZSgie2FwcC1pZH0iLGUpLFs0LGZldGNoKGUsaSldO2Nhc2UgMTppZigyMDA9PT0obj10LnNlbnQoKSkuc3RhdHVzfHwzMDQ9PT1uLnN0YXR1cylyZXR1cm5bMyw2XTtyPSIiLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuIHQudHJ5cy5wdXNoKFsyLDQsLDVdKSxbNCxuLmpzb24oKV07Y2FzZSAzOnJldHVybiBpPXQuc2VudCgpLG51bGwhPT0ocz1pLmVycm9yKSYmdm9pZCAwIT09cyYmcy5tZXNzYWdlJiYocj1pLmVycm9yLm1lc3NhZ2UpLFszLDVdO2Nhc2UgNDpyZXR1cm4gdC5zZW50KCksWzMsNV07Y2FzZSA1OnRocm93IGJNLmNyZWF0ZSgiY29uZmlnLWZldGNoLWZhaWxlZCIse2h0dHBTdGF0dXM6bi5zdGF0dXMscmVzcG9uc2VNZXNzYWdlOnJ9KTtjYXNlIDY6cmV0dXJuWzIsbi5qc29uKCldfX0pfSl9ZnVuY3Rpb24gRU0oYSx1LGMpe3JldHVybiB2b2lkIDA9PT11JiYodT1JTSksJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbixyLGksbyxzPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7aWYoaT1hLm9wdGlvbnMsZT1pLmFwcElkLG49aS5hcGlLZXkscj1pLm1lYXN1cmVtZW50SWQsIWUpdGhyb3cgYk0uY3JlYXRlKCJuby1hcHAtaWQiKTtpZihuKXJldHVybiBpPXUuZ2V0VGhyb3R0bGVNZXRhZGF0YShlKXx8e2JhY2tvZmZDb3VudDowLHRocm90dGxlRW5kVGltZU1pbGxpczpEYXRlLm5vdygpfSxvPW5ldyBOTSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuICRpKHMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3JldHVybiBvLmFib3J0KCksWzJdfSl9KX0sdm9pZCAwIT09Yz9jOmRNKSxbMixmdW5jdGlvbiBzKGEsdCx1LGMpe3ZhciBoPXQudGhyb3R0bGVFbmRUaW1lTWlsbGlzLGw9dC5iYWNrb2ZmQ291bnQ7dm9pZCAwPT09YyYmKGM9SU0pO3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHIsaSxvO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6ZT1hLmFwcElkLG49YS5tZWFzdXJlbWVudElkLHQubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCxTTSh1LGgpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFszLDRdO2Nhc2UgMzppZihpPXQuc2VudCgpLG4pcmV0dXJuIHlNLndhcm4oIlRpbWVkIG91dCBmZXRjaGluZyB0aGlzIEZpcmViYXNlIGFwcCdzIG1lYXN1cmVtZW50IElEIGZyb20gdGhlIHNlcnZlci4gRmFsbGluZyBiYWNrIHRvIHRoZSBtZWFzdXJlbWVudCBJRCAiK24rJyBwcm92aWRlZCBpbiB0aGUgIm1lYXN1cmVtZW50SWQiIGZpZWxkIGluIHRoZSBsb2NhbCBGaXJlYmFzZSBjb25maWcuIFsnK2kubWVzc2FnZSsiXSIpLFsyLHthcHBJZDplLG1lYXN1cmVtZW50SWQ6bn1dO3Rocm93IGk7Y2FzZSA0OnJldHVybiB0LnRyeXMucHVzaChbNCw2LCw3XSksWzQsVE0oYSldO2Nhc2UgNTpyZXR1cm4gbz10LnNlbnQoKSxjLmRlbGV0ZVRocm90dGxlTWV0YWRhdGEoZSksWzIsb107Y2FzZSA2OmlmKENNKHI9dC5zZW50KCkpKXJldHVybiBpPTUwMz09PU51bWJlcihyLmN1c3RvbURhdGEuaHR0cFN0YXR1cyk/JG8obCxjLmludGVydmFsTWlsbGlzLHdNKTokbyhsLGMuaW50ZXJ2YWxNaWxsaXMpLG89e3Rocm90dGxlRW5kVGltZU1pbGxpczpEYXRlLm5vdygpK2ksYmFja29mZkNvdW50OmwrMX0sYy5zZXRUaHJvdHRsZU1ldGFkYXRhKGUsbykseU0uZGVidWcoIkNhbGxpbmcgYXR0ZW1wdEZldGNoIGFnYWluIGluICIraSsiIG1pbGxpcyIpLFsyLHMoYSxvLHUsYyldO2lmKGMuZGVsZXRlVGhyb3R0bGVNZXRhZGF0YShlKSxuKXJldHVybiB5TS53YXJuKCJGYWlsZWQgdG8gZmV0Y2ggdGhpcyBGaXJlYmFzZSBhcHAncyBtZWFzdXJlbWVudCBJRCBmcm9tIHRoZSBzZXJ2ZXIuIEZhbGxpbmcgYmFjayB0byB0aGUgbWVhc3VyZW1lbnQgSUQgIituKycgcHJvdmlkZWQgaW4gdGhlICJtZWFzdXJlbWVudElkIiBmaWVsZCBpbiB0aGUgbG9jYWwgRmlyZWJhc2UgY29uZmlnLiBbJytyLm1lc3NhZ2UrIl0iKSxbMix7YXBwSWQ6ZSxtZWFzdXJlbWVudElkOm59XTt0aHJvdyByO2Nhc2UgNzpyZXR1cm5bMl19fSl9KX0oe2FwcElkOmUsYXBpS2V5Om4sbWVhc3VyZW1lbnRJZDpyfSxpLG8sdSldO2lmKHIpcmV0dXJuWzIse21lYXN1cmVtZW50SWQ6cixhcHBJZDplfV07dGhyb3cgYk0uY3JlYXRlKCJuby1hcGkta2V5Iil9KX0pfWZ1bmN0aW9uIFNNKGksbyl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7dmFyIG49TWF0aC5tYXgoby1EYXRlLm5vdygpLDApLHI9c2V0VGltZW91dCh0LG4pO2kuYWRkRXZlbnRMaXN0ZW5lcihmdW5jdGlvbigpe2NsZWFyVGltZW91dChyKSxlKGJNLmNyZWF0ZSgiZmV0Y2gtdGhyb3R0bGUiLHt0aHJvdHRsZUVuZFRpbWVNaWxsaXM6b30pKX0pfSl9ZnVuY3Rpb24gQ00odCl7aWYodCBpbnN0YW5jZW9mIEVvJiZ0LmN1c3RvbURhdGEpe3Q9TnVtYmVyKHQuY3VzdG9tRGF0YS5odHRwU3RhdHVzKTtyZXR1cm4gNDI5PT09dHx8NTAwPT09dHx8NTAzPT09dHx8NTA0PT09dH19dmFyIE5NPShBTS5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbih0KXt0aGlzLmxpc3RlbmVycy5wdXNoKHQpfSxBTS5wcm90b3R5cGUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLmxpc3RlbmVycy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiB0KCl9KX0sQU0pO2Z1bmN0aW9uIEFNKCl7dGhpcy5saXN0ZW5lcnM9W119ZnVuY3Rpb24ga00oYSx1LGMsaCxsLGYpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgaSxvLHM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4oaT1FTShhKSkudGhlbihmdW5jdGlvbih0KXtjW3QubWVhc3VyZW1lbnRJZF09dC5hcHBJZCxhLm9wdGlvbnMubWVhc3VyZW1lbnRJZCYmdC5tZWFzdXJlbWVudElkIT09YS5vcHRpb25zLm1lYXN1cmVtZW50SWQmJnlNLndhcm4oIlRoZSBtZWFzdXJlbWVudCBJRCBpbiB0aGUgbG9jYWwgRmlyZWJhc2UgY29uZmlnICgiK2Eub3B0aW9ucy5tZWFzdXJlbWVudElkKyIpIGRvZXMgbm90IG1hdGNoIHRoZSBtZWFzdXJlbWVudCBJRCBmZXRjaGVkIGZyb20gdGhlIHNlcnZlciAoIit0Lm1lYXN1cmVtZW50SWQrIikuIFRvIGVuc3VyZSBhbmFseXRpY3MgZXZlbnRzIGFyZSBhbHdheXMgc2VudCB0byB0aGUgY29ycmVjdCBBbmFseXRpY3MgcHJvcGVydHksIHVwZGF0ZSB0aGUgbWVhc3VyZW1lbnQgSUQgZmllbGQgaW4gdGhlIGxvY2FsIGNvbmZpZyBvciByZW1vdmUgaXQgZnJvbSB0aGUgbG9jYWwgY29uZmlnLiIpfSkuY2F0Y2goZnVuY3Rpb24odCl7cmV0dXJuIHlNLmVycm9yKHQpfSksdS5wdXNoKGkpLG89ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gYm8oKT9bMywxXTooeU0ud2FybihiTS5jcmVhdGUoImluZGV4ZWRkYi11bmF2YWlsYWJsZSIse2Vycm9ySW5mbzoiSW5kZXhlZERCIGlzIG5vdCBhdmFpbGFibGUgaW4gdGhpcyBlbnZpcm9ubWVudC4ifSkubWVzc2FnZSksWzIsITFdKTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCx3bygpXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFszLDRdO2Nhc2UgMzpyZXR1cm4gZT10LnNlbnQoKSx5TS53YXJuKGJNLmNyZWF0ZSgiaW5kZXhlZGRiLXVuYXZhaWxhYmxlIix7ZXJyb3JJbmZvOmV9KS5tZXNzYWdlKSxbMiwhMV07Y2FzZSA0OnJldHVyblsyLCEwXX19KX0pfSgpLnRoZW4oZnVuY3Rpb24odCl7aWYodClyZXR1cm4gaC5nZXRJZCgpfSksWzQsUHJvbWlzZS5hbGwoW2ksb10pXTtjYXNlIDE6cmV0dXJuIHM9dC5zZW50KCksaT1zWzBdLG89c1sxXSxmdW5jdGlvbigpe2Zvcih2YXIgdD13aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpLGU9MCxuPU9iamVjdC52YWx1ZXModCk7ZTxuLmxlbmd0aDtlKyspe3ZhciByPW5bZV07aWYoci5zcmMmJnIuc3JjLmluY2x1ZGVzKGdNKSlyZXR1cm4gcn19KCl8fChlPWYsbj1pLm1lYXN1cmVtZW50SWQsKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IikpLnNyYz1nTSsiP2w9IitlKyImaWQ9IituLHIuYXN5bmM9ITAsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChyKSksbCgianMiLG5ldyBEYXRlKSwocz17fSlbcE1dPSJmaXJlYmFzZSIscy51cGRhdGU9ITAscz1zLG51bGwhPW8mJihzW2ZNXT1vKSxsKGhNLkNPTkZJRyxpLm1lYXN1cmVtZW50SWQscyksWzIsaS5tZWFzdXJlbWVudElkXX12YXIgZSxuLHJ9KX0pfXZhciBSTSxQTSxPTT17fSxETT1bXSx4TT17fSxMTT0iZGF0YUxheWVyIixNTT0iZ3RhZyIsRk09ITE7ZnVuY3Rpb24gVU0odCl7aWYoRk0pdGhyb3cgYk0uY3JlYXRlKCJhbHJlYWR5LWluaXRpYWxpemVkIik7dC5kYXRhTGF5ZXJOYW1lJiYoTE09dC5kYXRhTGF5ZXJOYW1lKSx0Lmd0YWdOYW1lJiYoTU09dC5ndGFnTmFtZSl9ZnVuY3Rpb24gak0odCxlKXtpPVtdLGdvKCkmJmkucHVzaCgiVGhpcyBpcyBhIGJyb3dzZXIgZXh0ZW5zaW9uIGVudmlyb25tZW50LiIpLF9vKCl8fGkucHVzaCgiQ29va2llcyBhcmUgbm90IGF2YWlsYWJsZS4iKSwwPGkubGVuZ3RoJiYoaT1pLm1hcChmdW5jdGlvbih0LGUpe3JldHVybiIoIisoZSsxKSsiKSAiK3R9KS5qb2luKCIgIiksaT1iTS5jcmVhdGUoImludmFsaWQtYW5hbHl0aWNzLWNvbnRleHQiLHtlcnJvckluZm86aX0pLHlNLndhcm4oaS5tZXNzYWdlKSk7dmFyIG4scixpLG8scyxhLHU9dC5vcHRpb25zLmFwcElkO2lmKCF1KXRocm93IGJNLmNyZWF0ZSgibm8tYXBwLWlkIik7aWYoIXQub3B0aW9ucy5hcGlLZXkpe2lmKCF0Lm9wdGlvbnMubWVhc3VyZW1lbnRJZCl0aHJvdyBiTS5jcmVhdGUoIm5vLWFwaS1rZXkiKTt5TS53YXJuKCdUaGUgImFwaUtleSIgZmllbGQgaXMgZW1wdHkgaW4gdGhlIGxvY2FsIEZpcmViYXNlIGNvbmZpZy4gVGhpcyBpcyBuZWVkZWQgdG8gZmV0Y2ggdGhlIGxhdGVzdCBtZWFzdXJlbWVudCBJRCBmb3IgdGhpcyBGaXJlYmFzZSBhcHAuIEZhbGxpbmcgYmFjayB0byB0aGUgbWVhc3VyZW1lbnQgSUQgJyt0Lm9wdGlvbnMubWVhc3VyZW1lbnRJZCsnIHByb3ZpZGVkIGluIHRoZSAibWVhc3VyZW1lbnRJZCIgZmllbGQgaW4gdGhlIGxvY2FsIEZpcmViYXNlIGNvbmZpZy4nKX1pZihudWxsIT1PTVt1XSl0aHJvdyBiTS5jcmVhdGUoImFscmVhZHktZXhpc3RzIix7aWQ6dX0pO3JldHVybiBGTXx8KHM9TE0sYT1bXSxBcnJheS5pc0FycmF5KHdpbmRvd1tzXSk/YT13aW5kb3dbc106d2luZG93W3NdPWEsbj1PTSxyPURNLGk9eE0sbz1MTSxzPU1NLGE9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07d2luZG93W29dLnB1c2goYXJndW1lbnRzKX0sd2luZG93W3NdJiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93W3NdJiYoYT13aW5kb3dbc10pLHdpbmRvd1tzXT1tTShhLG4scixpKSxzPXtndGFnQ29yZTphLHdyYXBwZWRHdGFnOndpbmRvd1tzXX0sUE09cy53cmFwcGVkR3RhZyxSTT1zLmd0YWdDb3JlLEZNPSEwKSxPTVt1XT1rTSh0LERNLHhNLGUsUk0sTE0pLHthcHA6dCxsb2dFdmVudDpmdW5jdGlvbih0LGUsbil7IWZ1bmN0aW9uKG4scixpLG8scyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHMmJnMuZ2xvYmFsPyhuKGhNLkVWRU5ULGksbyksWzJdKTpbMywxXTtjYXNlIDE6cmV0dXJuWzQscl07Y2FzZSAyOmU9dC5zZW50KCksZT1KaShKaSh7fSxvKSx7c2VuZF90bzplfSksbihoTS5FVkVOVCxpLGUpLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfX0pfSl9KFBNLE9NW3VdLHQsZSxuKS5jYXRjaChmdW5jdGlvbih0KXtyZXR1cm4geU0uZXJyb3IodCl9KX0sc2V0Q3VycmVudFNjcmVlbjpmdW5jdGlvbih0LGUpeyFmdW5jdGlvbihuLHIsaSxvKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gbyYmby5nbG9iYWw/KG4oaE0uU0VULHtzY3JlZW5fbmFtZTppfSksWzIsUHJvbWlzZS5yZXNvbHZlKCldKTpbMywxXTtjYXNlIDE6cmV0dXJuWzQscl07Y2FzZSAyOmU9dC5zZW50KCksbihoTS5DT05GSUcsZSx7dXBkYXRlOiEwLHNjcmVlbl9uYW1lOml9KSx0LmxhYmVsPTM7Y2FzZSAzOnJldHVyblsyXX19KX0pfShQTSxPTVt1XSx0LGUpLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB5TS5lcnJvcih0KX0pfSxzZXRVc2VySWQ6ZnVuY3Rpb24odCxlKXshZnVuY3Rpb24obixyLGksbyl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIG8mJm8uZ2xvYmFsPyhuKGhNLlNFVCx7dXNlcl9pZDppfSksWzIsUHJvbWlzZS5yZXNvbHZlKCldKTpbMywxXTtjYXNlIDE6cmV0dXJuWzQscl07Y2FzZSAyOmU9dC5zZW50KCksbihoTS5DT05GSUcsZSx7dXBkYXRlOiEwLHVzZXJfaWQ6aX0pLHQubGFiZWw9MztjYXNlIDM6cmV0dXJuWzJdfX0pfSl9KFBNLE9NW3VdLHQsZSkuY2F0Y2goZnVuY3Rpb24odCl7cmV0dXJuIHlNLmVycm9yKHQpfSl9LHNldFVzZXJQcm9wZXJ0aWVzOmZ1bmN0aW9uKHQsZSl7IWZ1bmN0aW9uKHMsYSx1LGMpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHIsaSxvO3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6aWYoIWN8fCFjLmdsb2JhbClyZXR1cm5bMywxXTtmb3IoZT17fSxuPTAscj1PYmplY3Qua2V5cyh1KTtuPHIubGVuZ3RoO24rKylpPXJbbl0sZVsidXNlcl9wcm9wZXJ0aWVzLiIraV09dVtpXTtyZXR1cm4gcyhoTS5TRVQsZSksWzIsUHJvbWlzZS5yZXNvbHZlKCldO2Nhc2UgMTpyZXR1cm5bNCxhXTtjYXNlIDI6bz10LnNlbnQoKSxzKGhNLkNPTkZJRyxvLHt1cGRhdGU6ITAsdXNlcl9wcm9wZXJ0aWVzOnV9KSx0LmxhYmVsPTM7Y2FzZSAzOnJldHVyblsyXX19KX0pfShQTSxPTVt1XSx0LGUpLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB5TS5lcnJvcih0KX0pfSxzZXRBbmFseXRpY3NDb2xsZWN0aW9uRW5hYmxlZDpmdW5jdGlvbih0KXshZnVuY3Rpb24obixyKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCxuXTtjYXNlIDE6cmV0dXJuIGU9dC5zZW50KCksd2luZG93WyJnYS1kaXNhYmxlLSIrZV09IXIsWzJdfX0pfSl9KE9NW3VdLHQpLmNhdGNoKGZ1bmN0aW9uKHQpe3JldHVybiB5TS5lcnJvcih0KX0pfSxJTlRFUk5BTDp7ZGVsZXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGRlbGV0ZSBPTVt1XSxQcm9taXNlLnJlc29sdmUoKX19fX12YXIgcU0sVk09ImFuYWx5dGljcyI7ZnVuY3Rpb24gQk0oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDppZihnbygpKXJldHVyblsyLCExXTtpZighX28oKSlyZXR1cm5bMiwhMV07aWYoIWJvKCkpcmV0dXJuWzIsITFdO3QubGFiZWw9MTtjYXNlIDE6cmV0dXJuIHQudHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCx3bygpXTtjYXNlIDI6cmV0dXJuWzIsdC5zZW50KCldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzIsITFdO2Nhc2UgNDpyZXR1cm5bMl19fSl9KX0ocU09WGwpLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cyhWTSxmdW5jdGlvbih0KXtyZXR1cm4gak0odC5nZXRQcm92aWRlcigiYXBwIikuZ2V0SW1tZWRpYXRlKCksdC5nZXRQcm92aWRlcigiaW5zdGFsbGF0aW9ucyIpLmdldEltbWVkaWF0ZSgpKX0sIlBVQkxJQyIpLnNldFNlcnZpY2VQcm9wcyh7c2V0dGluZ3M6VU0sRXZlbnROYW1lOmxNLGlzU3VwcG9ydGVkOkJNfSkpLHFNLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygiYW5hbHl0aWNzLWludGVybmFsIixmdW5jdGlvbih0KXt0cnl7cmV0dXJue2xvZ0V2ZW50OnQuZ2V0UHJvdmlkZXIoVk0pLmdldEltbWVkaWF0ZSgpLmxvZ0V2ZW50fX1jYXRjaCh0KXt0aHJvdyBiTS5jcmVhdGUoImludGVyb3AtY29tcG9uZW50LXJlZy1mYWlsZWQiLHtyZWFzb246dH0pfX0sIlBSSVZBVEUiKSkscU0ucmVnaXN0ZXJWZXJzaW9uKCJAZmlyZWJhc2UvYW5hbHl0aWNzIiwiMC42LjciKTt2YXIgS009KFdNLnByb3RvdHlwZS5pc0NhY2hlZERhdGFGcmVzaD1mdW5jdGlvbih0LGUpe2lmKCFlKXJldHVybiB0aGlzLmxvZ2dlci5kZWJ1ZygiQ29uZmlnIGZldGNoIGNhY2hlIGNoZWNrLiBDYWNoZSB1bnBvcHVsYXRlZC4iKSwhMTt2YXIgbj1EYXRlLm5vdygpLWUsZT1uPD10O3JldHVybiB0aGlzLmxvZ2dlci5kZWJ1ZygiQ29uZmlnIGZldGNoIGNhY2hlIGNoZWNrLiBDYWNoZSBhZ2UgbWlsbGlzOiAiK24rIi4gQ2FjaGUgbWF4IGFnZSBtaWxsaXMgKG1pbmltdW1GZXRjaEludGVydmFsTWlsbGlzIHNldHRpbmcpOiAiK3QrIi4gSXMgY2FjaGUgaGl0OiAiK2UrIi4iKSxlfSxXTS5wcm90b3R5cGUuZmV0Y2g9ZnVuY3Rpb24oaSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlLG4scjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LFByb21pc2UuYWxsKFt0aGlzLnN0b3JhZ2UuZ2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpcygpLHRoaXMuc3RvcmFnZS5nZXRMYXN0U3VjY2Vzc2Z1bEZldGNoUmVzcG9uc2UoKV0pXTtjYXNlIDE6cmV0dXJuKHI9dC5zZW50KCksZT1yWzBdLChyPXJbMV0pJiZ0aGlzLmlzQ2FjaGVkRGF0YUZyZXNoKGkuY2FjaGVNYXhBZ2VNaWxsaXMsZSkpP1syLHJdOihpLmVUYWc9ciYmci5lVGFnLFs0LHRoaXMuY2xpZW50LmZldGNoKGkpXSk7Y2FzZSAyOnJldHVybiBuPXQuc2VudCgpLHI9W3RoaXMuc3RvcmFnZUNhY2hlLnNldExhc3RTdWNjZXNzZnVsRmV0Y2hUaW1lc3RhbXBNaWxsaXMoRGF0ZS5ub3coKSldLDIwMD09PW4uc3RhdHVzJiZyLnB1c2godGhpcy5zdG9yYWdlLnNldExhc3RTdWNjZXNzZnVsRmV0Y2hSZXNwb25zZShuKSksWzQsUHJvbWlzZS5hbGwocildO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzIsbl19fSl9KX0sV00pO2Z1bmN0aW9uIFdNKHQsZSxuLHIpe3RoaXMuY2xpZW50PXQsdGhpcy5zdG9yYWdlPWUsdGhpcy5zdG9yYWdlQ2FjaGU9bix0aGlzLmxvZ2dlcj1yfXZhciBTbj0oKFNuPXt9KVsicmVnaXN0cmF0aW9uLXdpbmRvdyJdPSJVbmRlZmluZWQgd2luZG93IG9iamVjdC4gVGhpcyBTREsgb25seSBzdXBwb3J0cyB1c2FnZSBpbiBhIGJyb3dzZXIgZW52aXJvbm1lbnQuIixTblsicmVnaXN0cmF0aW9uLXByb2plY3QtaWQiXT0iVW5kZWZpbmVkIHByb2plY3QgaWRlbnRpZmllci4gQ2hlY2sgRmlyZWJhc2UgYXBwIGluaXRpYWxpemF0aW9uLiIsU25bInJlZ2lzdHJhdGlvbi1hcGkta2V5Il09IlVuZGVmaW5lZCBBUEkga2V5LiBDaGVjayBGaXJlYmFzZSBhcHAgaW5pdGlhbGl6YXRpb24uIixTblsicmVnaXN0cmF0aW9uLWFwcC1pZCJdPSJVbmRlZmluZWQgYXBwIGlkZW50aWZpZXIuIENoZWNrIEZpcmViYXNlIGFwcCBpbml0aWFsaXphdGlvbi4iLFNuWyJzdG9yYWdlLW9wZW4iXT0iRXJyb3IgdGhyb3duIHdoZW4gb3BlbmluZyBzdG9yYWdlLiBPcmlnaW5hbCBlcnJvcjogeyRvcmlnaW5hbEVycm9yTWVzc2FnZX0uIixTblsic3RvcmFnZS1nZXQiXT0iRXJyb3IgdGhyb3duIHdoZW4gcmVhZGluZyBmcm9tIHN0b3JhZ2UuIE9yaWdpbmFsIGVycm9yOiB7JG9yaWdpbmFsRXJyb3JNZXNzYWdlfS4iLFNuWyJzdG9yYWdlLXNldCJdPSJFcnJvciB0aHJvd24gd2hlbiB3cml0aW5nIHRvIHN0b3JhZ2UuIE9yaWdpbmFsIGVycm9yOiB7JG9yaWdpbmFsRXJyb3JNZXNzYWdlfS4iLFNuWyJzdG9yYWdlLWRlbGV0ZSJdPSJFcnJvciB0aHJvd24gd2hlbiBkZWxldGluZyBmcm9tIHN0b3JhZ2UuIE9yaWdpbmFsIGVycm9yOiB7JG9yaWdpbmFsRXJyb3JNZXNzYWdlfS4iLFNuWyJmZXRjaC1jbGllbnQtbmV0d29yayJdPSJGZXRjaCBjbGllbnQgZmFpbGVkIHRvIGNvbm5lY3QgdG8gYSBuZXR3b3JrLiBDaGVjayBJbnRlcm5ldCBjb25uZWN0aW9uLiBPcmlnaW5hbCBlcnJvcjogeyRvcmlnaW5hbEVycm9yTWVzc2FnZX0uIixTblsiZmV0Y2gtdGltZW91dCJdPSdUaGUgY29uZmlnIGZldGNoIHJlcXVlc3QgdGltZWQgb3V0LiAgQ29uZmlndXJlIHRpbWVvdXQgdXNpbmcgImZldGNoVGltZW91dE1pbGxpcyIgU0RLIHNldHRpbmcuJyxTblsiZmV0Y2gtdGhyb3R0bGUiXT0nVGhlIGNvbmZpZyBmZXRjaCByZXF1ZXN0IHRpbWVkIG91dCB3aGlsZSBpbiBhbiBleHBvbmVudGlhbCBiYWNrb2ZmIHN0YXRlLiBDb25maWd1cmUgdGltZW91dCB1c2luZyAiZmV0Y2hUaW1lb3V0TWlsbGlzIiBTREsgc2V0dGluZy4gVW5peCB0aW1lc3RhbXAgaW4gbWlsbGlzZWNvbmRzIHdoZW4gZmV0Y2ggcmVxdWVzdCB0aHJvdHRsaW5nIGVuZHM6IHskdGhyb3R0bGVFbmRUaW1lTWlsbGlzfS4nLFNuWyJmZXRjaC1jbGllbnQtcGFyc2UiXT0iRmV0Y2ggY2xpZW50IGNvdWxkIG5vdCBwYXJzZSByZXNwb25zZS4gT3JpZ2luYWwgZXJyb3I6IHskb3JpZ2luYWxFcnJvck1lc3NhZ2V9LiIsU25bImZldGNoLXN0YXR1cyJdPSJGZXRjaCBzZXJ2ZXIgcmV0dXJuZWQgYW4gSFRUUCBlcnJvciBzdGF0dXMuIEhUVFAgc3RhdHVzOiB7JGh0dHBTdGF0dXN9LiIsU24pLEhNPW5ldyBDbygicmVtb3RlY29uZmlnIiwiUmVtb3RlIENvbmZpZyIsU24pO3ZhciBHTT0oek0ucHJvdG90eXBlLmZldGNoPWZ1bmN0aW9uKGYpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixyLGksbyxzLGEsdSxjLGgsbDtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LFByb21pc2UuYWxsKFt0aGlzLmZpcmViYXNlSW5zdGFsbGF0aW9ucy5nZXRJZCgpLHRoaXMuZmlyZWJhc2VJbnN0YWxsYXRpb25zLmdldFRva2VuKCldKV07Y2FzZSAxOm89dC5zZW50KCksbj1vWzBdLGk9b1sxXSxyPXdpbmRvdy5GSVJFQkFTRV9SRU1PVEVfQ09ORklHX1VSTF9CQVNFfHwiaHR0cHM6Ly9maXJlYmFzZXJlbW90ZWNvbmZpZy5nb29nbGVhcGlzLmNvbSIsbz1yKyIvdjEvcHJvamVjdHMvIit0aGlzLnByb2plY3RJZCsiL25hbWVzcGFjZXMvIit0aGlzLm5hbWVzcGFjZSsiOmZldGNoP2tleT0iK3RoaXMuYXBpS2V5LHI9eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIiwiQ29udGVudC1FbmNvZGluZyI6Imd6aXAiLCJJZi1Ob25lLU1hdGNoIjpmLmVUYWd8fCIqIn0saT17c2RrX3ZlcnNpb246dGhpcy5zZGtWZXJzaW9uLGFwcF9pbnN0YW5jZV9pZDpuLGFwcF9pbnN0YW5jZV9pZF90b2tlbjppLGFwcF9pZDp0aGlzLmFwcElkLGxhbmd1YWdlX2NvZGU6KGU9dm9pZCAwPT09ZT9uYXZpZ2F0b3I6ZSkubGFuZ3VhZ2VzJiZlLmxhbmd1YWdlc1swXXx8ZS5sYW5ndWFnZX0saT17bWV0aG9kOiJQT1NUIixoZWFkZXJzOnIsYm9keTpKU09OLnN0cmluZ2lmeShpKX0sbz1mZXRjaChvLGkpLGk9bmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXtmLnNpZ25hbC5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKCl7dmFyIHQ9bmV3IEVycm9yKCJUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkLiIpO3QubmFtZT0iQWJvcnRFcnJvciIsZSh0KX0pfSksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm4gdC50cnlzLnB1c2goWzIsNSwsNl0pLFs0LFByb21pc2UucmFjZShbbyxpXSldO2Nhc2UgMzpyZXR1cm4gdC5zZW50KCksWzQsb107Y2FzZSA0OnJldHVybiBsPXQuc2VudCgpLFszLDZdO2Nhc2UgNTp0aHJvdyBpPXQuc2VudCgpLG89ImZldGNoLWNsaWVudC1uZXR3b3JrIiwiQWJvcnRFcnJvciI9PT1pLm5hbWUmJihvPSJmZXRjaC10aW1lb3V0IiksSE0uY3JlYXRlKG8se29yaWdpbmFsRXJyb3JNZXNzYWdlOmkubWVzc2FnZX0pO2Nhc2UgNjppZihzPWwuc3RhdHVzLGE9bC5oZWFkZXJzLmdldCgiRVRhZyIpfHx2b2lkIDAsMjAwIT09bC5zdGF0dXMpcmV0dXJuWzMsMTFdO2g9dm9pZCAwLHQubGFiZWw9NztjYXNlIDc6cmV0dXJuIHQudHJ5cy5wdXNoKFs3LDksLDEwXSksWzQsbC5qc29uKCldO2Nhc2UgODpyZXR1cm4gaD10LnNlbnQoKSxbMywxMF07Y2FzZSA5OnRocm93IGw9dC5zZW50KCksSE0uY3JlYXRlKCJmZXRjaC1jbGllbnQtcGFyc2UiLHtvcmlnaW5hbEVycm9yTWVzc2FnZTpsLm1lc3NhZ2V9KTtjYXNlIDEwOnU9aC5lbnRyaWVzLGM9aC5zdGF0ZSx0LmxhYmVsPTExO2Nhc2UgMTE6aWYoIklOU1RBTkNFX1NUQVRFX1VOU1BFQ0lGSUVEIj09PWM/cz01MDA6Ik5PX0NIQU5HRSI9PT1jP3M9MzA0OiJOT19URU1QTEFURSIhPT1jJiYiRU1QVFlfQ09ORklHIiE9PWN8fCh1PXt9KSwzMDQhPT1zJiYyMDAhPT1zKXRocm93IEhNLmNyZWF0ZSgiZmV0Y2gtc3RhdHVzIix7aHR0cFN0YXR1czpzfSk7cmV0dXJuWzIse3N0YXR1czpzLGVUYWc6YSxjb25maWc6dX1dfXZhciBlfSl9KX0sek0pO2Z1bmN0aW9uIHpNKHQsZSxuLHIsaSxvKXt0aGlzLmZpcmViYXNlSW5zdGFsbGF0aW9ucz10LHRoaXMuc2RrVmVyc2lvbj1lLHRoaXMubmFtZXNwYWNlPW4sdGhpcy5wcm9qZWN0SWQ9cix0aGlzLmFwaUtleT1pLHRoaXMuYXBwSWQ9b312YXIgUU09KFlNLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHQpe3RoaXMubGlzdGVuZXJzLnB1c2godCl9LFlNLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMubGlzdGVuZXJzLmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIHQoKX0pfSxZTSk7ZnVuY3Rpb24gWU0oKXt0aGlzLmxpc3RlbmVycz1bXX12YXIgWE09WyIxIiwidHJ1ZSIsInQiLCJ5ZXMiLCJ5Iiwib24iXSxKTT0oJE0ucHJvdG90eXBlLmFzU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3ZhbHVlfSwkTS5wcm90b3R5cGUuYXNCb29sZWFuPWZ1bmN0aW9uKCl7cmV0dXJuInN0YXRpYyIhPT10aGlzLl9zb3VyY2UmJjA8PVhNLmluZGV4T2YodGhpcy5fdmFsdWUudG9Mb3dlckNhc2UoKSl9LCRNLnByb3RvdHlwZS5hc051bWJlcj1mdW5jdGlvbigpe2lmKCJzdGF0aWMiPT09dGhpcy5fc291cmNlKXJldHVybiAwO3ZhciB0PU51bWJlcih0aGlzLl92YWx1ZSk7cmV0dXJuIHQ9aXNOYU4odCk/MDp0fSwkTS5wcm90b3R5cGUuZ2V0U291cmNlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NvdXJjZX0sJE0pO2Z1bmN0aW9uICRNKHQsZSl7dm9pZCAwPT09ZSYmKGU9IiIpLHRoaXMuX3NvdXJjZT10LHRoaXMuX3ZhbHVlPWV9dmFyIFpNPSh0Ri5wcm90b3R5cGUuc2V0TG9nTGV2ZWw9ZnVuY3Rpb24odCl7c3dpdGNoKHQpe2Nhc2UiZGVidWciOnRoaXMuX2xvZ2dlci5sb2dMZXZlbD1hcy5ERUJVRzticmVhaztjYXNlInNpbGVudCI6dGhpcy5fbG9nZ2VyLmxvZ0xldmVsPWFzLlNJTEVOVDticmVhaztkZWZhdWx0OnRoaXMuX2xvZ2dlci5sb2dMZXZlbD1hcy5FUlJPUn19LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0Ri5wcm90b3R5cGUsImZldGNoVGltZU1pbGxpcyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9zdG9yYWdlQ2FjaGUuZ2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpcygpfHwtMX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodEYucHJvdG90eXBlLCJsYXN0RmV0Y2hTdGF0dXMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc3RvcmFnZUNhY2hlLmdldExhc3RGZXRjaFN0YXR1cygpfHwibm8tZmV0Y2gteWV0In0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx0Ri5wcm90b3R5cGUuYWN0aXZhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LFByb21pc2UuYWxsKFt0aGlzLl9zdG9yYWdlLmdldExhc3RTdWNjZXNzZnVsRmV0Y2hSZXNwb25zZSgpLHRoaXMuX3N0b3JhZ2UuZ2V0QWN0aXZlQ29uZmlnRXRhZygpXSldO2Nhc2UgMTpyZXR1cm4gbj10LnNlbnQoKSxlPW5bMF0sbj1uWzFdLGUmJmUuY29uZmlnJiZlLmVUYWcmJmUuZVRhZyE9PW4/WzQsUHJvbWlzZS5hbGwoW3RoaXMuX3N0b3JhZ2VDYWNoZS5zZXRBY3RpdmVDb25maWcoZS5jb25maWcpLHRoaXMuX3N0b3JhZ2Uuc2V0QWN0aXZlQ29uZmlnRXRhZyhlLmVUYWcpXSldOlsyLCExXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFsyLCEwXX19KX0pfSx0Ri5wcm90b3R5cGUuZW5zdXJlSW5pdGlhbGl6ZWQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLl9pbml0aWFsaXplUHJvbWlzZXx8KHRoaXMuX2luaXRpYWxpemVQcm9taXNlPXRoaXMuX3N0b3JhZ2VDYWNoZS5sb2FkRnJvbVN0b3JhZ2UoKS50aGVuKGZ1bmN0aW9uKCl7dC5faXNJbml0aWFsaXphdGlvbkNvbXBsZXRlPSEwfSkpLHRoaXMuX2luaXRpYWxpemVQcm9taXNlfSx0Ri5wcm90b3R5cGUuZmV0Y2g9ZnVuY3Rpb24oKXtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIHIsaSxvLHM9dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnI9bmV3IFFNLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gJGkocyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7cmV0dXJuIHIuYWJvcnQoKSxbMl19KX0pfSx0aGlzLnNldHRpbmdzLmZldGNoVGltZW91dE1pbGxpcyksdC5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gdC50cnlzLnB1c2goWzEsNCwsNl0pLFs0LHRoaXMuX2NsaWVudC5mZXRjaCh7Y2FjaGVNYXhBZ2VNaWxsaXM6dGhpcy5zZXR0aW5ncy5taW5pbXVtRmV0Y2hJbnRlcnZhbE1pbGxpcyxzaWduYWw6cn0pXTtjYXNlIDI6cmV0dXJuIHQuc2VudCgpLFs0LHRoaXMuX3N0b3JhZ2VDYWNoZS5zZXRMYXN0RmV0Y2hTdGF0dXMoInN1Y2Nlc3MiKV07Y2FzZSAzOnJldHVybiB0LnNlbnQoKSxbMyw2XTtjYXNlIDQ6cmV0dXJuIGk9dC5zZW50KCksbj0iZmV0Y2gtdGhyb3R0bGUiLG89KGU9aSlpbnN0YW5jZW9mIEVvJiYtMSE9PWUuY29kZS5pbmRleE9mKG4pPyJ0aHJvdHRsZSI6ImZhaWx1cmUiLFs0LHRoaXMuX3N0b3JhZ2VDYWNoZS5zZXRMYXN0RmV0Y2hTdGF0dXMobyldO2Nhc2UgNTp0aHJvdyB0LnNlbnQoKSxpO2Nhc2UgNjpyZXR1cm5bMl19dmFyIGUsbn0pfSl9LHRGLnByb3RvdHlwZS5mZXRjaEFuZEFjdGl2YXRlPWZ1bmN0aW9uKCl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBaaSh0aGlzLGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsdGhpcy5mZXRjaCgpXTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLFsyLHRoaXMuYWN0aXZhdGUoKV19fSl9KX0sdEYucHJvdG90eXBlLmdldEFsbD1mdW5jdGlvbigpe3ZhciBuPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09dCYmKHQ9e30pO3ZvaWQgMD09PWUmJihlPXt9KTtyZXR1cm4gT2JqZWN0LmtleXMoSmkoSmkoe30sdCksZSkpfSh0aGlzLl9zdG9yYWdlQ2FjaGUuZ2V0QWN0aXZlQ29uZmlnKCksdGhpcy5kZWZhdWx0Q29uZmlnKS5yZWR1Y2UoZnVuY3Rpb24odCxlKXtyZXR1cm4gdFtlXT1uLmdldFZhbHVlKGUpLHR9LHt9KX0sdEYucHJvdG90eXBlLmdldEJvb2xlYW49ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUodCkuYXNCb29sZWFuKCl9LHRGLnByb3RvdHlwZS5nZXROdW1iZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUodCkuYXNOdW1iZXIoKX0sdEYucHJvdG90eXBlLmdldFN0cmluZz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5nZXRWYWx1ZSh0KS5hc1N0cmluZygpfSx0Ri5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24odCl7dGhpcy5faXNJbml0aWFsaXphdGlvbkNvbXBsZXRlfHx0aGlzLl9sb2dnZXIuZGVidWcoJ0EgdmFsdWUgd2FzIHJlcXVlc3RlZCBmb3Iga2V5ICInK3QrJyIgYmVmb3JlIFNESyBpbml0aWFsaXphdGlvbiBjb21wbGV0ZWQuIEF3YWl0IG9uIGVuc3VyZUluaXRpYWxpemVkIGlmIHRoZSBpbnRlbnQgd2FzIHRvIGdldCBhIHByZXZpb3VzbHkgYWN0aXZhdGVkIHZhbHVlLicpO3ZhciBlPXRoaXMuX3N0b3JhZ2VDYWNoZS5nZXRBY3RpdmVDb25maWcoKTtyZXR1cm4gZSYmdm9pZCAwIT09ZVt0XT9uZXcgSk0oInJlbW90ZSIsZVt0XSk6dGhpcy5kZWZhdWx0Q29uZmlnJiZ2b2lkIDAhPT10aGlzLmRlZmF1bHRDb25maWdbdF0/bmV3IEpNKCJkZWZhdWx0IixTdHJpbmcodGhpcy5kZWZhdWx0Q29uZmlnW3RdKSk6KHRoaXMuX2xvZ2dlci5kZWJ1ZygnUmV0dXJuaW5nIHN0YXRpYyB2YWx1ZSBmb3Iga2V5ICInK3QrJyIuIERlZmluZSBhIGRlZmF1bHQgb3IgcmVtb3RlIHZhbHVlIGlmIHRoaXMgaXMgdW5pbnRlbnRpb25hbC4nKSxuZXcgSk0oInN0YXRpYyIpKX0sdEYpO2Z1bmN0aW9uIHRGKHQsZSxuLHIsaSl7dGhpcy5hcHA9dCx0aGlzLl9jbGllbnQ9ZSx0aGlzLl9zdG9yYWdlQ2FjaGU9bix0aGlzLl9zdG9yYWdlPXIsdGhpcy5fbG9nZ2VyPWksdGhpcy5faXNJbml0aWFsaXphdGlvbkNvbXBsZXRlPSExLHRoaXMuc2V0dGluZ3M9e2ZldGNoVGltZW91dE1pbGxpczo2ZTQsbWluaW11bUZldGNoSW50ZXJ2YWxNaWxsaXM6NDMyZTV9LHRoaXMuZGVmYXVsdENvbmZpZz17fX1mdW5jdGlvbiBlRih0LGUpe3Q9dC50YXJnZXQuZXJyb3J8fHZvaWQgMDtyZXR1cm4gSE0uY3JlYXRlKGUse29yaWdpbmFsRXJyb3JNZXNzYWdlOnQmJnQubWVzc2FnZX0pfXZhciBuRj0iYXBwX25hbWVzcGFjZV9zdG9yZSIsckY9ImZpcmViYXNlX3JlbW90ZV9jb25maWciLGlGPTE7dmFyIG9GPShzRi5wcm90b3R5cGUuZ2V0TGFzdEZldGNoU3RhdHVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0KCJsYXN0X2ZldGNoX3N0YXR1cyIpfSxzRi5wcm90b3R5cGUuc2V0TGFzdEZldGNoU3RhdHVzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnNldCgibGFzdF9mZXRjaF9zdGF0dXMiLHQpfSxzRi5wcm90b3R5cGUuZ2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldCgibGFzdF9zdWNjZXNzZnVsX2ZldGNoX3RpbWVzdGFtcF9taWxsaXMiKX0sc0YucHJvdG90eXBlLnNldExhc3RTdWNjZXNzZnVsRmV0Y2hUaW1lc3RhbXBNaWxsaXM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc2V0KCJsYXN0X3N1Y2Nlc3NmdWxfZmV0Y2hfdGltZXN0YW1wX21pbGxpcyIsdCl9LHNGLnByb3RvdHlwZS5nZXRMYXN0U3VjY2Vzc2Z1bEZldGNoUmVzcG9uc2U9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXQoImxhc3Rfc3VjY2Vzc2Z1bF9mZXRjaF9yZXNwb25zZSIpfSxzRi5wcm90b3R5cGUuc2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFJlc3BvbnNlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnNldCgibGFzdF9zdWNjZXNzZnVsX2ZldGNoX3Jlc3BvbnNlIix0KX0sc0YucHJvdG90eXBlLmdldEFjdGl2ZUNvbmZpZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldCgiYWN0aXZlX2NvbmZpZyIpfSxzRi5wcm90b3R5cGUuc2V0QWN0aXZlQ29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnNldCgiYWN0aXZlX2NvbmZpZyIsdCl9LHNGLnByb3RvdHlwZS5nZXRBY3RpdmVDb25maWdFdGFnPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0KCJhY3RpdmVfY29uZmlnX2V0YWciKX0sc0YucHJvdG90eXBlLnNldEFjdGl2ZUNvbmZpZ0V0YWc9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc2V0KCJhY3RpdmVfY29uZmlnX2V0YWciLHQpfSxzRi5wcm90b3R5cGUuZ2V0VGhyb3R0bGVNZXRhZGF0YT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldCgidGhyb3R0bGVfbWV0YWRhdGEiKX0sc0YucHJvdG90eXBlLnNldFRocm90dGxlTWV0YWRhdGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc2V0KCJ0aHJvdHRsZV9tZXRhZGF0YSIsdCl9LHNGLnByb3RvdHlwZS5kZWxldGVUaHJvdHRsZU1ldGFkYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZGVsZXRlKCJ0aHJvdHRsZV9tZXRhZGF0YSIpfSxzRi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbyxzPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCx0aGlzLm9wZW5EYlByb21pc2VdO2Nhc2UgMTpyZXR1cm4gbz10LnNlbnQoKSxbMixuZXcgUHJvbWlzZShmdW5jdGlvbihlLG4pe3ZhciB0PW8udHJhbnNhY3Rpb24oW25GXSwicmVhZG9ubHkiKS5vYmplY3RTdG9yZShuRikscj1zLmNyZWF0ZUNvbXBvc2l0ZUtleShhKTt0cnl7dmFyIGk9dC5nZXQocik7aS5vbmVycm9yPWZ1bmN0aW9uKHQpe24oZUYodCwic3RvcmFnZS1nZXQiKSl9LGkub25zdWNjZXNzPWZ1bmN0aW9uKHQpe3Q9dC50YXJnZXQucmVzdWx0O2UodD90LnZhbHVlOnZvaWQgMCl9fWNhdGNoKHQpe24oSE0uY3JlYXRlKCJzdG9yYWdlLWdldCIse29yaWdpbmFsRXJyb3JNZXNzYWdlOnQmJnQubWVzc2FnZX0pKX19KV19fSl9KX0sc0YucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLHUpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbyxzPXRoaXM7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCx0aGlzLm9wZW5EYlByb21pc2VdO2Nhc2UgMTpyZXR1cm4gbz10LnNlbnQoKSxbMixuZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe3ZhciBuPW8udHJhbnNhY3Rpb24oW25GXSwicmVhZHdyaXRlIikub2JqZWN0U3RvcmUobkYpLHI9cy5jcmVhdGVDb21wb3NpdGVLZXkoYSk7dHJ5e3ZhciBpPW4ucHV0KHtjb21wb3NpdGVLZXk6cix2YWx1ZTp1fSk7aS5vbmVycm9yPWZ1bmN0aW9uKHQpe2UoZUYodCwic3RvcmFnZS1zZXQiKSl9LGkub25zdWNjZXNzPWZ1bmN0aW9uKCl7dCgpfX1jYXRjaCh0KXtlKEhNLmNyZWF0ZSgic3RvcmFnZS1zZXQiLHtvcmlnaW5hbEVycm9yTWVzc2FnZTp0JiZ0Lm1lc3NhZ2V9KSl9fSldfX0pfSl9LHNGLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oYSl7cmV0dXJuICRpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBvLHM9dGhpcztyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LHRoaXMub3BlbkRiUHJvbWlzZV07Y2FzZSAxOnJldHVybiBvPXQuc2VudCgpLFsyLG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7dmFyIG49by50cmFuc2FjdGlvbihbbkZdLCJyZWFkd3JpdGUiKS5vYmplY3RTdG9yZShuRikscj1zLmNyZWF0ZUNvbXBvc2l0ZUtleShhKTt0cnl7dmFyIGk9bi5kZWxldGUocik7aS5vbmVycm9yPWZ1bmN0aW9uKHQpe2UoZUYodCwic3RvcmFnZS1kZWxldGUiKSl9LGkub25zdWNjZXNzPWZ1bmN0aW9uKCl7dCgpfX1jYXRjaCh0KXtlKEhNLmNyZWF0ZSgic3RvcmFnZS1kZWxldGUiLHtvcmlnaW5hbEVycm9yTWVzc2FnZTp0JiZ0Lm1lc3NhZ2V9KSl9fSldfX0pfSl9LHNGLnByb3RvdHlwZS5jcmVhdGVDb21wb3NpdGVLZXk9ZnVuY3Rpb24odCl7cmV0dXJuW3RoaXMuYXBwSWQsdGhpcy5hcHBOYW1lLHRoaXMubmFtZXNwYWNlLHRdLmpvaW4oKX0sc0YpO2Z1bmN0aW9uIHNGKHQsZSxuLHIpe3ZvaWQgMD09PXImJihyPW5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsbil7dmFyIHQ9aW5kZXhlZERCLm9wZW4ockYsaUYpO3Qub25lcnJvcj1mdW5jdGlvbih0KXtuKGVGKHQsInN0b3JhZ2Utb3BlbiIpKX0sdC5vbnN1Y2Nlc3M9ZnVuY3Rpb24odCl7ZSh0LnRhcmdldC5yZXN1bHQpfSx0Lm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbih0KXt2YXIgZT10LnRhcmdldC5yZXN1bHQ7MD09PXQub2xkVmVyc2lvbiYmZS5jcmVhdGVPYmplY3RTdG9yZShuRix7a2V5UGF0aDoiY29tcG9zaXRlS2V5In0pfX0pKSx0aGlzLmFwcElkPXQsdGhpcy5hcHBOYW1lPWUsdGhpcy5uYW1lc3BhY2U9bix0aGlzLm9wZW5EYlByb21pc2U9cn12YXIgYUY9KHVGLnByb3RvdHlwZS5nZXRMYXN0RmV0Y2hTdGF0dXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYXN0RmV0Y2hTdGF0dXN9LHVGLnByb3RvdHlwZS5nZXRMYXN0U3VjY2Vzc2Z1bEZldGNoVGltZXN0YW1wTWlsbGlzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpc30sdUYucHJvdG90eXBlLmdldEFjdGl2ZUNvbmZpZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmFjdGl2ZUNvbmZpZ30sdUYucHJvdG90eXBlLmxvYWRGcm9tU3RvcmFnZT1mdW5jdGlvbigpe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZSxuLHI7cmV0dXJuIFppKHRoaXMsZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gZT10aGlzLnN0b3JhZ2UuZ2V0TGFzdEZldGNoU3RhdHVzKCksbj10aGlzLnN0b3JhZ2UuZ2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpcygpLHI9dGhpcy5zdG9yYWdlLmdldEFjdGl2ZUNvbmZpZygpLFs0LGVdO2Nhc2UgMTpyZXR1cm4oZT10LnNlbnQoKSkmJih0aGlzLmxhc3RGZXRjaFN0YXR1cz1lKSxbNCxuXTtjYXNlIDI6cmV0dXJuKG49dC5zZW50KCkpJiYodGhpcy5sYXN0U3VjY2Vzc2Z1bEZldGNoVGltZXN0YW1wTWlsbGlzPW4pLFs0LHJdO2Nhc2UgMzpyZXR1cm4ocj10LnNlbnQoKSkmJih0aGlzLmFjdGl2ZUNvbmZpZz1yKSxbMl19fSl9KX0sdUYucHJvdG90eXBlLnNldExhc3RGZXRjaFN0YXR1cz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5sYXN0RmV0Y2hTdGF0dXM9dCx0aGlzLnN0b3JhZ2Uuc2V0TGFzdEZldGNoU3RhdHVzKHQpfSx1Ri5wcm90b3R5cGUuc2V0TGFzdFN1Y2Nlc3NmdWxGZXRjaFRpbWVzdGFtcE1pbGxpcz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5sYXN0U3VjY2Vzc2Z1bEZldGNoVGltZXN0YW1wTWlsbGlzPXQsdGhpcy5zdG9yYWdlLnNldExhc3RTdWNjZXNzZnVsRmV0Y2hUaW1lc3RhbXBNaWxsaXModCl9LHVGLnByb3RvdHlwZS5zZXRBY3RpdmVDb25maWc9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYWN0aXZlQ29uZmlnPXQsdGhpcy5zdG9yYWdlLnNldEFjdGl2ZUNvbmZpZyh0KX0sdUYpO2Z1bmN0aW9uIHVGKHQpe3RoaXMuc3RvcmFnZT10fXZhciBjRj0oaEYucHJvdG90eXBlLmZldGNoPWZ1bmN0aW9uKG4pe3JldHVybiAkaSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LHRoaXMuc3RvcmFnZS5nZXRUaHJvdHRsZU1ldGFkYXRhKCldO2Nhc2UgMTpyZXR1cm4gZT10LnNlbnQoKXx8e2JhY2tvZmZDb3VudDowLHRocm90dGxlRW5kVGltZU1pbGxpczpEYXRlLm5vdygpfSxbMix0aGlzLmF0dGVtcHRGZXRjaChuLGUpXX19KX0pfSxoRi5wcm90b3R5cGUuYXR0ZW1wdEZldGNoPWZ1bmN0aW9uKHIsdCl7dmFyIHM9dC50aHJvdHRsZUVuZFRpbWVNaWxsaXMsYT10LmJhY2tvZmZDb3VudDtyZXR1cm4gJGkodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIGUsbjtyZXR1cm4gWmkodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybls0LChpPXIuc2lnbmFsLG89cyxuZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe3ZhciBuPU1hdGgubWF4KG8tRGF0ZS5ub3coKSwwKSxyPXNldFRpbWVvdXQodCxuKTtpLmFkZEV2ZW50TGlzdGVuZXIoZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQociksZShITS5jcmVhdGUoImZldGNoLXRocm90dGxlIix7dGhyb3R0bGVFbmRUaW1lTWlsbGlzOm99KSl9KX0pKV07Y2FzZSAxOnQuc2VudCgpLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuIHQudHJ5cy5wdXNoKFsyLDUsLDddKSxbNCx0aGlzLmNsaWVudC5mZXRjaChyKV07Y2FzZSAzOnJldHVybiBlPXQuc2VudCgpLFs0LHRoaXMuc3RvcmFnZS5kZWxldGVUaHJvdHRsZU1ldGFkYXRhKCldO2Nhc2UgNDpyZXR1cm4gdC5zZW50KCksWzIsZV07Y2FzZSA1OmlmKCFmdW5jdGlvbih0KXtpZih0IGluc3RhbmNlb2YgRW8mJnQuY3VzdG9tRGF0YSl7dD1OdW1iZXIodC5jdXN0b21EYXRhLmh0dHBTdGF0dXMpO3JldHVybiA0Mjk9PT10fHw1MDA9PT10fHw1MDM9PT10fHw1MDQ9PT10fX0obj10LnNlbnQoKSkpdGhyb3cgbjtyZXR1cm4gbj17dGhyb3R0bGVFbmRUaW1lTWlsbGlzOkRhdGUubm93KCkrJG8oYSksYmFja29mZkNvdW50OmErMX0sWzQsdGhpcy5zdG9yYWdlLnNldFRocm90dGxlTWV0YWRhdGEobildO2Nhc2UgNjpyZXR1cm4gdC5zZW50KCksWzIsdGhpcy5hdHRlbXB0RmV0Y2gocixuKV07Y2FzZSA3OnJldHVyblsyXX12YXIgaSxvfSl9KX0saEYpO2Z1bmN0aW9uIGhGKHQsZSl7dGhpcy5jbGllbnQ9dCx0aGlzLnN0b3JhZ2U9ZX12YXIgbEYsZkY9IkBmaXJlYmFzZS9yZW1vdGUtY29uZmlnIjtyZXR1cm4obEY9WGwpLklOVEVSTkFMLnJlZ2lzdGVyQ29tcG9uZW50KG5ldyB0cygicmVtb3RlQ29uZmlnIixmdW5jdGlvbih0LGUpe3ZhciBuPWUuaW5zdGFuY2VJZGVudGlmaWVyLHI9dC5nZXRQcm92aWRlcigiYXBwIikuZ2V0SW1tZWRpYXRlKCksaT10LmdldFByb3ZpZGVyKCJpbnN0YWxsYXRpb25zIikuZ2V0SW1tZWRpYXRlKCk7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3cpdGhyb3cgSE0uY3JlYXRlKCJyZWdpc3RyYXRpb24td2luZG93Iik7dmFyIG89ci5vcHRpb25zLHM9by5wcm9qZWN0SWQsYT1vLmFwaUtleSx1PW8uYXBwSWQ7aWYoIXMpdGhyb3cgSE0uY3JlYXRlKCJyZWdpc3RyYXRpb24tcHJvamVjdC1pZCIpO2lmKCFhKXRocm93IEhNLmNyZWF0ZSgicmVnaXN0cmF0aW9uLWFwaS1rZXkiKTtpZighdSl0aHJvdyBITS5jcmVhdGUoInJlZ2lzdHJhdGlvbi1hcHAtaWQiKTtuPW58fCJmaXJlYmFzZSI7ZT1uZXcgb0YodSxyLm5hbWUsbiksdD1uZXcgYUYoZSksbz1uZXcgcHMoZkYpO28ubG9nTGV2ZWw9YXMuRVJST1I7dT1uZXcgR00oaSxsRi5TREtfVkVSU0lPTixuLHMsYSx1KSx1PW5ldyBjRih1LGUpLHU9bmV3IEtNKHUsZSx0LG8pLG89bmV3IFpNKHIsdSx0LGUsbyk7cmV0dXJuIG8uZW5zdXJlSW5pdGlhbGl6ZWQoKSxvfSwiUFVCTElDIikuc2V0TXVsdGlwbGVJbnN0YW5jZXMoITApKSxsRi5yZWdpc3RlclZlcnNpb24oZkYsIjAuMS4zNCIpLGNvbnNvbGUud2FybigiXG5JdCBsb29rcyBsaWtlIHlvdSdyZSB1c2luZyB0aGUgZGV2ZWxvcG1lbnQgYnVpbGQgb2YgdGhlIEZpcmViYXNlIEpTIFNESy5cbldoZW4gZGVwbG95aW5nIEZpcmViYXNlIGFwcHMgdG8gcHJvZHVjdGlvbiwgaXQgaXMgYWR2aXNhYmxlIHRvIG9ubHkgaW1wb3J0XG50aGUgaW5kaXZpZHVhbCBTREsgY29tcG9uZW50cyB5b3UgaW50ZW5kIHRvIHVzZS5cblxuRm9yIHRoZSBDRE4gYnVpbGRzLCB0aGVzZSBhcmUgYXZhaWxhYmxlIGluIHRoZSBmb2xsb3dpbmcgbWFubmVyXG4ocmVwbGFjZSA8UEFDS0FHRT4gd2l0aCB0aGUgbmFtZSBvZiBhIGNvbXBvbmVudCAtIGkuZS4gYXV0aCwgZGF0YWJhc2UsIGV0Yyk6XG5cbmh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ZpcmViYXNlanMvNS4wLjAvZmlyZWJhc2UtPFBBQ0tBR0U+LmpzXG4iKSxYbC5yZWdpc3RlclZlcnNpb24oImZpcmViYXNlIiwiOC4zLjIiLCJjZG4iKSxYbH0pOw0KLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmlyZWJhc2UuanMubWFwDQo="}},"time_used":123,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":65,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/logo_icon/logo.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.858Z","timestamp":1785143153858,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/logo_icon/logo.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 06:10:27 GMT\r\netag: \"ee2c-67b42453-cd43067001bf7efa;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 60972\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":60972,"size_decoded":61369,"mime_type":"image/png","magic":"PNG image data, 919 x 271, 8-bit/color RGBA, non-interlaced","md5":"2167c4e6411830e15b9c23f99c8144f8","sha1":"dc5c144188f52d3e941ba8114f44610fd58990ea","sha256":"52e3f9f925751eb28308925e17429de451e42e7e3235fc2b1033713c1c0624eb","sha512":"a22501c7ecaed9673610c84b48da79cebd9beb5dd46505973564c7d9ff4df90cf0681b801a0b6144ee16e780f72f07cfd4c465539367be838fe88f123df3362d","ssdeep":"1536:R44JeLKTUQFjFla1FgMSsJmKdPVJL638LN:R4L+UKjfaIMnmmdJLb","tlshash":"47530229e138d813b93b70702a69c7431f9bd5fc2fe2f064c486847d5adaf2565848ea","first_seen":"2025-12-19T04:10:19.00391Z","last_seen":"2026-07-27T09:07:02.794118Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":104,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":97,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/frontend/banner/67b41d656a3e31739857253.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.861Z","timestamp":1785143153861,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/frontend/banner/67b41d656a3e31739857253.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 05:40:53 GMT\r\netag: \"11412-67b41d65-e1bc82b31d6aaf35;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 70674\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":70674,"size_decoded":71072,"mime_type":"image/png","magic":"PNG image data, 700 x 1000, 8-bit/color RGBA, non-interlaced","md5":"c11240b8245b188d1f573fb2073959e3","sha1":"c5b7497b87a4fb5ba9d5f62b28f547e85401f56e","sha256":"5bcaeabd3dac973b1183e4c86ceaa1060eb4cc4bac25d54614ed1a28e120e19e","sha512":"414248bc1002fedf116abe20bf5d40c166762245a1449dabded19bb1ed6fae99c4135b66f09a1eb541539eaf7c1603f9c68c816b44879bb66406e49b4b7d2abf","ssdeep":"1536:yrpau1oIlmtIg9opvm9iwT+VXtYv1RnkbVliT3PAzjPtJ:mph1nAt3opvoiwT221VmV0T/mPtJ","tlshash":"c463f1d2988df69014fe9e207c7ee84118520e5547dbda2dc9d54db0239b23f6d23d3a","first_seen":"2025-12-19T04:10:18.953524Z","last_seen":"2026-07-27T09:07:02.76671Z","times_seen":5,"resource_available":false,"data":"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AAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFEjeAEAABA1ghcAAABRI3gBAAAQNYIXAAAAUSN4AQAAEDWCFwAAAFH7f/15XXxf4O77AAAAAElFTkSuQmCC"}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":39,"receive":63,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d224aff.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.334Z","timestamp":1785143155334,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d224aff.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"2fbd26af790f4021c222d285bca63f47\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30d96b0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":18392,"size_decoded":5824,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (18392), with no line terminators","md5":"2fbd26af790f4021c222d285bca63f47","sha1":"643fd2af6f8d4df46bcb7998c9638ab085df7736","sha256":"0ab3e6d58bc33ae6635954e6397b3423c301cd66b58a9c0badfb67c0301d701e","sha512":"d446c3026035e64159e877892a94f5f0456f766285142f65bf17bd6ec5d43cb35c8ded56560deccd82511caadfdc48b3c16326bc94209b3ff2ec77beb3dca855","ssdeep":"384:jqiSR0nIa0kIrCQl2kL3kC5GN//h6LiJq:SzP2DbSLi8","tlshash":"8a822ba6f149311bc925c750605f2228b33b19a9fa1ece7df2745df245a8cc2906af3d","first_seen":"2026-07-08T23:24:03.859246Z","last_seen":"2026-08-03T12:50:03.420771Z","times_seen":2530,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstMmQyMjRhZmYiXSx7ZTBjYTpmdW5jdGlvbih0LGksZSl7InVzZSBzdHJpY3QiO2UucihpKTt2YXIgbz1lKCIyZjYyIiksbj1lKCJmMGIwIikscz1lKCI1YTYwIik7ZnVuY3Rpb24gYSh0KXtyZXR1cm4oYT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIHIodCxpKXt2YXIgZT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2kmJihvPW8uZmlsdGVyKChmdW5jdGlvbihpKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGkpLmVudW1lcmFibGV9KSkpLGUucHVzaC5hcHBseShlLG8pfXJldHVybiBlfWZ1bmN0aW9uIGModCl7Zm9yKHZhciBpPTE7aTxhcmd1bWVudHMubGVuZ3RoO2krKyl7dmFyIGU9bnVsbCE9YXJndW1lbnRzW2ldP2FyZ3VtZW50c1tpXTp7fTtpJTI/cihPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKGkpe2godCxpLGVbaV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoZSkpOnIoT2JqZWN0KGUpKS5mb3JFYWNoKChmdW5jdGlvbihpKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxpLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxpKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gaCh0LGksZSl7cmV0dXJuKGk9ZnVuY3Rpb24odCl7dmFyIGk9ZnVuY3Rpb24odCxpKXtpZigib2JqZWN0IiE9YSh0KXx8IXQpcmV0dXJuIHQ7dmFyIGU9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWUpe3ZhciBvPWUuY2FsbCh0LGl8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWEobykpcmV0dXJuIG87dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1pP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09YShpKT9pOmkrIiJ9KGkpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaSx7dmFsdWU6ZSxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbaV09ZSx0fXZhciBsPXtuYW1lOiJtaW4tY29udGVudCIsY29tcG9uZW50czp7VGF3a0ltYWdlOm4uVGF3a0ltYWdlfSxwcm9wczp7bWluRGVza3RvcDp7dHlwZTpPYmplY3QscmVxdWlyZWQ6ITB9fSxjb21wdXRlZDpjKGMoe30sT2JqZWN0KG8uYykoe2FjdGl2ZVByb2ZpbGVzOiJjaGF0L2FjdGl2ZVByb2ZpbGVzIixjaGF0V2luZG93U3RhdGU6InNlc3Npb24vY2hhdFdpbmRvd1N0YXRlIixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLHN0YXRlczoid2lkZ2V0L3N0YXRlcyIsaXNSb3VuZFdpZGdldDoid2lkZ2V0L2lzUm91bmRXaWRnZXQiLGhhc0xpdmVDaGF0OiJ3aWRnZXQvaGFzTGl2ZUNoYXQiLG1vYmlsZUJyb3dzZXJOYW1lOiJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSIsaGFzQ2hhdFN0YXJ0ZWQ6ImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiLGFnZW50c0NvdW50OiJjaGF0L2FnZW50c0NvdW50Iixpc0JvdHRvbToid2lkZ2V0L2lzQm90dG9tIixpc0NlbnRlcjoid2lkZ2V0L2lzQ2VudGVyIixpc1JpZ2h0OiJ3aWRnZXQvaXNSaWdodCJ9KSkse30se2ZpcnN0QWN0aXZlUHJvZmlsZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmFjdGl2ZVByb2ZpbGVzLmxlbmd0aD90aGlzLmFjdGl2ZVByb2ZpbGVzWzBdOiIifSxtaW5pbWl6ZVRleHQ6ZnVuY3Rpb24oKXtpZih0aGlzLm1vYmlsZUJyb3dzZXJOYW1lKXJldHVybiJvZmZsaW5lIj09PXRoaXMucGFnZVN0YXR1cz90aGlzLiRpMThuKCJmb3JtIiwibWVzc2FnZSIpOnRoaXMuJGkxOG4oImNoYXQiLCJjaGF0X3RleHQiKTt2YXIgdD10aGlzLnN0YXRlc1t0aGlzLnBhZ2VTdGF0dXNdO3JldHVybiB0P3QubWluaW1pemVkVGV4dDoiIn0saXNMaXZlQ2hhdEZlYXR1cmVFbmFibGVkOmZ1bmN0aW9uKCl7cmV0dXJuISEodGhpcy5oYXNMaXZlQ2hhdHx8dGhpcy5oYXNDaGF0U3RhcnRlZCYmdGhpcy5hZ2VudHNDb3VudD4wKX0sZ2V0TW9kaWZpZXJDbGFzczpmdW5jdGlvbigpe3JldHVybiB0aGlzLmlzQm90dG9tfHx0aGlzLmlzQ2VudGVyP3RoaXMuaXNDZW50ZXI/dGhpcy5pc1JpZ2h0PyJ0YXdrLW1pbi1jaGF0LWljb24tcmlnaHQiOiJ0YXdrLW1pbi1jaGF0LWljb24tbGVmdCI6InRhd2stbWluLWNoYXQtaWNvbi1kb3duIjoidGF3ay1taW4tY2hhdC1pY29uLXVwIn19KSx3YXRjaDp7bWluaW1pemVUZXh0OmZ1bmN0aW9uKCl7dGhpcy4kZW1pdCgiY29udGVudENoYW5nZSIpfSxmaXJzdEFjdGl2ZVByb2ZpbGU6ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJjb250ZW50Q2hhbmdlIil9fSxtb3VudGVkOmZ1bmN0aW9uKCl7dGhpcy4kZW1pdCgiY29udGVudENoYW5nZSIpfX0sbT1lKCIyODc3IiksZD1PYmplY3QobS5hKShsLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsaT10Ll9zZWxmLl9jO3JldHVybiBpKCJkaXYiLFt0LmlzUm91bmRXaWRnZXQ/W3QuZmlyc3RBY3RpdmVQcm9maWxlP2koInRhd2staW1hZ2UiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZToibWluIj09PXQuY2hhdFdpbmRvd1N0YXRlJiZ0LmlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZCxleHByZXNzaW9uOiJjaGF0V2luZG93U3RhdGUgPT09ICdtaW4nICYmXG5cdFx0XHRcdGlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZCJ9XSxzdGF0aWNDbGFzczoidGF3ay1taW4tY2hhdC1pY29uIixhdHRyczp7c3JjOnQuZmlyc3RBY3RpdmVQcm9maWxlLnByb2ZpbGVJbWFnZSxhbHQ6IiIuY29uY2F0KHQuJGkxOG4oImNoYXQiLCJhZ2VudF9wcm9maWxlX2ltYWdlIikpfX0pOnQuX2UoKSxpKCJkaXYiLFt0LmZpcnN0QWN0aXZlUHJvZmlsZXx8Im1pbiIhPT10LmNoYXRXaW5kb3dTdGF0ZT8ibWF4Ij09PXQuY2hhdFdpbmRvd1N0YXRlP2koInN2ZyIse2tleToiY2xvc2UiLHN0YXRpY0NsYXNzOiJ0YXdrLW1pbi1jaGF0LWljb24iLGNsYXNzOnQuZ2V0TW9kaWZpZXJDbGFzcyxhdHRyczp7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix2aWV3Qm94OiIwIDAgMjQgMjQiLGhlaWdodDoiMjRweCIsd2lkdGg6IjI0cHgiLHJvbGU6ImltZyIsYWx0OnQuJGkxOG4oImNoYXQiLCJjbG9zZV9pY29uIiksImFyaWEtbGFiZWxsZWRieSI6ImNsb3NlSWNvblRpdGxlIGNsb3NlSWNvbkRlc2MifX0sW2koInRpdGxlIix7YXR0cnM6e2lkOiJjbG9zZUljb25UaXRsZSJ9fSxbdC5fdigiQ2xvc2UgQ2hhdCIpXSksaSgiZGVzYyIse2F0dHJzOntpZDoiY2xvc2VJY29uRGVzYyJ9fSxbdC5fdigiVGhpcyBpY29uIGNsb3NlcyB0aGUgY2hhdCB3aW5kb3cuIildKSxpKCJwYXRoIix7YXR0cnM6e2ZpbGw6ImN1cnJlbnRDb2xvciIsdHJhbnNmb3JtOiJzY2FsZSgxLjIpIHRyYW5zbGF0ZSgtMiwgLTIpIixkOiJNMi4wMDAwOSA2Ljk5OTg4QzIuMDAwMTIgNi43OTc2NSAyLjA2MTQ3IDYuNjAwMTggMi4xNzYwNCA2LjQzMzUzQzIuMjkwNjEgNi4yNjY4OCAyLjQ1MzAxIDYuMTM4ODkgMi42NDE4MSA2LjA2NjQzQzIuODMwNjIgNS45OTM5OCAzLjAzNjk1IDUuOTgwNDcgMy4yMzM1OSA2LjAyNzY5QzMuNDMwMjMgNi4wNzQ5MSAzLjYwNzk0IDYuMTgwNjQgMy43NDMyNSA2LjMzMDkzTDEyLjAwMDEgMTUuNTA0OEwyMC4yNTY5IDYuMzMwOTNDMjAuNDM0NCA2LjEzMzgzIDIwLjY4MjggNi4wMTUyOSAyMC45NDc2IDYuMDAxMzhDMjEuMjEyNSA1Ljk4NzQ3IDIxLjQ3MiA2LjA3OTMzIDIxLjY2OTEgNi4yNTY3NUMyMS44NjYyIDYuNDM0MTcgMjEuOTg0NyA2LjY4MjYzIDIxLjk5ODYgNi45NDc0NUMyMi4wMTI1IDcuMjEyMjggMjEuOTIwNyA3LjQ3MTc5IDIxLjc0MzMgNy42Njg4OEwxMi43NDMzIDE3LjY2ODlDMTIuNjQ5NSAxNy43NzMxIDEyLjUzNDkgMTcuODU2NCAxMi40MDY5IDE3LjkxMzRDMTIuMjc4OCAxNy45NzA1IDEyLjE0MDIgMTcuOTk5OSAxMi4wMDAxIDE3Ljk5OTlDMTEuODU5OSAxNy45OTk5IDExLjcyMTMgMTcuOTcwNSAxMS41OTMzIDE3LjkxMzRDMTEuNDY1MyAxNy44NTY0IDExLjM1MDcgMTcuNzczMSAxMS4yNTY5IDE3LjY2ODlMMi4yNTY5MyA3LjY2ODg4QzIuMDkxNDkgNy40ODUzNSAxLjk5OTk4IDcuMjQ2OTggMi4wMDAwOSA2Ljk5OTg4WiJ9fSldKTp0Ll9lKCk6aSgic3ZnIix7a2V5OiJjaGF0IixzdGF0aWNDbGFzczoidGF3ay1taW4tY2hhdC1pY29uIixhdHRyczp7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix2aWV3Qm94OiIwIDAgODAwIDgwMCIsaGVpZ2h0OiIzMnB4Iix3aWR0aDoiMzJweCIscm9sZToiaW1nIixhbHQ6dC4kaTE4bigiY2hhdCIsImNoYXRfaWNvbiIpLCJhcmlhLWxhYmVsbGVkYnkiOiJvcGVuSWNvblRpdGxlIG9wZW5JY29uRGVzYyJ9fSxbaSgidGl0bGUiLHthdHRyczp7aWQ6Im9wZW5JY29uVGl0bGUifX0sW3QuX3YoIk9wZW5zIENoYXQiKV0pLGkoImRlc2MiLHthdHRyczp7aWQ6Im9wZW5JY29uRGVzYyJ9fSxbdC5fdigiVGhpcyBpY29uIE9wZW5zIHRoZSBjaGF0IHdpbmRvdy4iKV0pLGkoInBhdGgiLHthdHRyczp7ImZpbGwtcnVsZSI6ImV2ZW5vZGQiLCJjbGlwLXJ1bGUiOiJldmVub2RkIixkOiJNNDAwIDI2LjJjLTE5My4zIDAtMzUwIDE1Ni43LTM1MCAzNTAgMCAxMzYuMiA3Ny45IDI1NC4zIDE5MS41IDMxMi4xIDE1LjQgOC4xIDMxLjQgMTUuMSA0OC4xIDIwLjhsLTE2LjUgNjMuNWMtMiA3LjggNS40IDE0LjcgMTMgMTIuMWwyMjkuOC03Ny42YzE0LjYtNS4zIDI4LjgtMTEuNiA0Mi40LTE4LjdDNjcyIDYzMC42IDc1MCA1MTIuNSA3NTAgMzc2LjJjMC0xOTMuMy0xNTYuNy0zNTAtMzUwLTM1MHptMjExLjEgNTEwLjdjLTEwLjggMjYuNS00MS45IDc3LjItMTIxLjUgNzcuMi03OS45IDAtMTEwLjktNTEtMTIxLjYtNzcuNC0yLjgtNi44IDUtMTMuNCAxMy44LTExLjggNzYuMiAxMy43IDE0Ny43IDEzIDIxNS4zLjMgOC45LTEuOCAxNi44IDQuOCAxNCAxMS43eiJ9fSldKV0pXTpbaSgiZGl2Iix7cmVmOiJmdWxsLWNvbnRlbnQiLHN0YXRpY0NsYXNzOiJ0YXdrLXRleHQtbGVmdCB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSJ9LFt0Lm1vYmlsZUJyb3dzZXJOYW1lP1tpKCJkaXYiLHtyZWY6ImNvbnRlbnQtaWNvbiJ9LFt0LmZpcnN0QWN0aXZlUHJvZmlsZT9pKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUgdGF3ay1mbGV4LW5vbmUifSxbdC5maXJzdEFjdGl2ZVByb2ZpbGUucHJvZmlsZUltYWdlJiZ0LmZpcnN0QWN0aXZlUHJvZmlsZS5wcm9maWxlSW1hZ2UubGVuZ3RoPjA/aSgidGF3ay1pbWFnZSIse3N0YXRpY0NsYXNzOiJ0YXdrLW1pbi1hZ2VudC1pbWFnZSB0YXdrLWZsZXgtbm9uZSIsYXR0cnM6e3NyYzp0LmZpcnN0QWN0aXZlUHJvZmlsZS5wcm9maWxlSW1hZ2UsYWx0OiIiLmNvbmNhdCh0LiRpMThuKCJjaGF0IiwiYWdlbnRfcHJvZmlsZV9pbWFnZSIpKX19KTp0Ll9lKCldLDEpOmkoInN2ZyIse2tleToiY2hhdCIsc3RhdGljQ2xhc3M6InRhd2stbWluLWNoYXQtaWNvbiIsYXR0cnM6e3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsdmlld0JveDoiMCAwIDgwMCA4MDAiLGhlaWdodDoiMjJweCIsd2lkdGg6IjIycHgiLHJvbGU6ImltZyIsYWx0OiIiLmNvbmNhdCh0LiRpMThuKCJjaGF0IiwiY2hhdF9pY29uIikpLCJhcmlhLWxhYmVsbGVkYnkiOiJjbG9zZUljb25UaXRsZSBjbG9zZUljb25EZXNjIn19LFtpKCJ0aXRsZSIse2F0dHJzOntpZDoiY2xvc2VJY29uVGl0bGUifX0sW3QuX3YoIkNsb3NlIENoYXQiKV0pLGkoImRlc2MiLHthdHRyczp7aWQ6ImNsb3NlSWNvbkRlc2MifX0sW3QuX3YoIlRoaXMgaWNvbiBjbG9zZXMgdGhlIGNoYXQgd2luZG93LiIpXSksaSgicGF0aCIse2F0dHJzOnsiZmlsbC1ydWxlIjoiZXZlbm9kZCIsImNsaXAtcnVsZSI6ImV2ZW5vZGQiLGQ6Ik00MDAgMjYuMmMtMTkzLjMgMC0zNTAgMTU2LjctMzUwIDM1MCAwIDEzNi4yIDc3LjkgMjU0LjMgMTkxLjUgMzEyLjEgMTUuNCA4LjEgMzEuNCAxNS4xIDQ4LjEgMjAuOGwtMTYuNSA2My41Yy0yIDcuOCA1LjQgMTQuNyAxMyAxMi4xbDIyOS44LTc3LjZjMTQuNi01LjMgMjguOC0xMS42IDQyLjQtMTguN0M2NzIgNjMwLjYgNzUwIDUxMi41IDc1MCAzNzYuMmMwLTE5My4zLTE1Ni43LTM1MC0zNTAtMzUwem0yMTEuMSA1MTAuN2MtMTAuOCAyNi41LTQxLjkgNzcuMi0xMjEuNSA3Ny4yLTc5LjkgMC0xMTAuOS01MS0xMjEuNi03Ny40LTIuOC02LjggNS0xMy40IDEzLjgtMTEuOCA3Ni4yIDEzLjcgMTQ3LjcgMTMgMjE1LjMuMyA4LjktMS44IDE2LjggNC44IDE0IDExLjd6In19KV0pXSksaSgic3BhbiIse3JlZjoiY29udGVudC10ZXh0IixzdGF0aWNDbGFzczoidGF3ay10ZXh0LWJvbGQtMyB0YXdrLW1hcmdpbi14c21hbGwtbGVmdCB0YXdrLXRleHQtdHJ1bmNhdGUiLHN0YXRpY1N0eWxlOntjb2xvcjoiaW5oZXJpdCIsIndoaXRlLXNwYWNlIjoibm93cmFwIn19LFt0Ll92KCIgIit0Ll9zKHQubWluaW1pemVUZXh0KSsiICIpXSldOltpKCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZToibWluIj09PXQuY2hhdFdpbmRvd1N0YXRlJiYhdC5maXJzdEFjdGl2ZVByb2ZpbGUsZXhwcmVzc2lvbjoiY2hhdFdpbmRvd1N0YXRlID09PSAnbWluJyAmJlxuXHRcdFx0XHRcdFx0IWZpcnN0QWN0aXZlUHJvZmlsZSJ9XSxzdGF0aWNDbGFzczoidGF3ay10ZXh0LXRydW5jYXRlIixzdHlsZTp7d2lkdGg6IjEwMCUiLGZsZXg6IjAgMCBhdXRvIn19LFt0Ll92KCIgIit0Ll9zKHQubWluaW1pemVUZXh0KSsiICIpXSksaSgiZGl2Iix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6Im1pbiI9PT10LmNoYXRXaW5kb3dTdGF0ZSYmdC5maXJzdEFjdGl2ZVByb2ZpbGUmJnQuaXNMaXZlQ2hhdEZlYXR1cmVFbmFibGVkLGV4cHJlc3Npb246ImNoYXRXaW5kb3dTdGF0ZSA9PT0gJ21pbicgJiZcblx0XHRcdFx0XHRmaXJzdEFjdGl2ZVByb2ZpbGUgJiZcblx0XHRcdFx0XHRpc0xpdmVDaGF0RmVhdHVyZUVuYWJsZWQifV0sc3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixzdHlsZTp7d2lkdGg6IjEwMCUifX0sW3QuZmlyc3RBY3RpdmVQcm9maWxlLnByb2ZpbGVJbWFnZSYmdC5maXJzdEFjdGl2ZVByb2ZpbGUucHJvZmlsZUltYWdlLmxlbmd0aD4wP2koInRhd2staW1hZ2UiLHtzdGF0aWNDbGFzczoidGF3ay1taW4tYWdlbnQtaW1hZ2UgdGF3ay1mbGV4LW5vbmUiLGF0dHJzOntzcmM6dC5maXJzdEFjdGl2ZVByb2ZpbGUucHJvZmlsZUltYWdlLGFsdDoiIi5jb25jYXQodC4kaTE4bigiY2hhdCIsImFnZW50X3Byb2ZpbGVfaW1hZ2UiKSl9fSk6dC5fZSgpLGkoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtbGVmdCIsc3R5bGU6e292ZXJmbG93OiJoaWRkZW4iLHdpZHRoOiIxMDAlIn19LFt0LmZpcnN0QWN0aXZlUHJvZmlsZS5kaXNwbGF5TmFtZSYmdC5maXJzdEFjdGl2ZVByb2ZpbGUuZGlzcGxheU5hbWUubGVuZ3RoPjA/aSgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLW1pbi1hZ2VudC1sYWJlbCB0YXdrLXRleHQtYm9sZCB0YXdrLXRleHQtdHJ1bmNhdGUifSxbdC5fdigiICIrdC5fcyh0LmZpcnN0QWN0aXZlUHJvZmlsZS5kaXNwbGF5TmFtZSkrIiAiKV0pOnQuX2UoKSx0LmZpcnN0QWN0aXZlUHJvZmlsZS5wcm9maWxlVGl0bGUmJnQuZmlyc3RBY3RpdmVQcm9maWxlLnByb2ZpbGVUaXRsZS5sZW5ndGg+MD9pKCJwIix7c3RhdGljQ2xhc3M6InRhd2stbWluLWFnZW50LWxhYmVsIHRhd2stdGV4dC1yZWd1bGFyLTIgdGF3ay10ZXh0LXRydW5jYXRlIn0sW3QuX3YoIiAiK3QuX3ModC5maXJzdEFjdGl2ZVByb2ZpbGUucHJvZmlsZVRpdGxlKSsiICIpXSk6dC5fZSgpXSldLDEpXV0sMildXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLGY9ZSgiODdkZCIpO2Z1bmN0aW9uIHAodCl7cmV0dXJuKHA9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiB1KHQsaSl7dmFyIGU9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG89T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtpJiYobz1vLmZpbHRlcigoZnVuY3Rpb24oaSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxpKS5lbnVtZXJhYmxlfSkpKSxlLnB1c2guYXBwbHkoZSxvKX1yZXR1cm4gZX1mdW5jdGlvbiBnKHQpe2Zvcih2YXIgaT0xO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe3ZhciBlPW51bGwhPWFyZ3VtZW50c1tpXT9hcmd1bWVudHNbaV06e307aSUyP3UoT2JqZWN0KGUpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihpKXt3KHQsaSxlW2ldKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGUpKTp1KE9iamVjdChlKSkuZm9yRWFjaCgoZnVuY3Rpb24oaSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsaSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIHcodCxpLGUpe3JldHVybihpPWZ1bmN0aW9uKHQpe3ZhciBpPWZ1bmN0aW9uKHQsaSl7aWYoIm9iamVjdCIhPXAodCl8fCF0KXJldHVybiB0O3ZhciBlPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1lKXt2YXIgbz1lLmNhbGwodCxpfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1wKG8pKXJldHVybiBvO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09aT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXAoaSk/aTppKyIifShpKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGkse3ZhbHVlOmUsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2ldPWUsdH12YXIgYj17bmFtZToiTWluaW1pemVXaWRnZXQiLGNvbXBvbmVudHM6e0lGcmFtZTpzLmEsVGF3a0JhZGdlOm4uVGF3a0JhZGdlLFRhd2tCdXR0b246bi5UYXdrQnV0dG9uLE1pbkNvbnRlbnQ6ZH0sbWl4aW5zOltmLmFdLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y3NzTGluazoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQiLCIvY3NzL21pbi13aWRnZXQuY3NzIiksaXNMb2FkZWQ6ITEsY2xpY2tFdmVudDoidG91Y2hlbmQiLHJlc2l6ZVdpZHRoOjAsa2V5Om4uSGVscGVyLmdlbmVyYXRlVVVJRCgpfX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy4kZXZlbnRCdXMuJG9uKCJzd2l0Y2hXaWRnZXQiLChmdW5jdGlvbigpe3Qua2V5PW4uSGVscGVyLmdlbmVyYXRlVVVJRCgpfSkpfSxjb21wdXRlZDpnKGcoe30sT2JqZWN0KG8uYykoe2NoYXRXaW5kb3dTdGF0ZToic2Vzc2lvbi9jaGF0V2luZG93U3RhdGUiLGlzUmlnaHQ6IndpZGdldC9pc1JpZ2h0Iixpc0JvdHRvbToid2lkZ2V0L2lzQm90dG9tIixpc0NlbnRlcjoid2lkZ2V0L2lzQ2VudGVyIixpc1JUTDoid2lkZ2V0L2lzUlRMIixpc1JvdW5kV2lkZ2V0OiJ3aWRnZXQvaXNSb3VuZFdpZGdldCIsbWluRGVza3RvcDoid2lkZ2V0L21pbkRlc2t0b3AiLG1pbk1vYmlsZToid2lkZ2V0L21pbk1vYmlsZSIsdW5yZWFkTWVzc2FnZUNvdW50OiJjaGF0L3VucmVhZE1lc3NhZ2VDb3VudCIsbW9iaWxlQnJvd3Nlck5hbWU6ImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLHpvb21SYXRpbzoid2lkZ2V0L3pvb21SYXRpbyIsaGFzTGl2ZUNoYXQ6IndpZGdldC9oYXNMaXZlQ2hhdCIsaGFzQ2hhdFN0YXJ0ZWQ6ImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiLGFnZW50c0NvdW50OiJjaGF0L2FnZW50c0NvdW50Iixpc01vYmlsZUxhbmRzY2FwZToid2lkZ2V0L2lzTW9iaWxlTGFuZHNjYXBlIixvczoiYnJvd3NlckRhdGEvb3MiLG9uQ2xpY2s6IndpZGdldC9vbkNsaWNrIn0pKSx7fSx7eE9mZnNldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MueE9mZnNldCgpfSx5T2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy55T2Zmc2V0KCl9LHhPZmZzZXRNb2JpbGU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kVGF3a1dpZGdldFNldHRpbmdzLnhPZmZzZXRNb2JpbGUoKX0seU9mZnNldE1vYmlsZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MueU9mZnNldE1vYmlsZSgpfSxidXR0b25TdHlsZXM6ZnVuY3Rpb24oKXt2YXIgdD17fTtyZXR1cm4gdGhpcy5pc1JvdW5kV2lkZ2V0fHwodGhpcy5tb2JpbGVCcm93c2VyTmFtZT8odC5ib3JkZXJSYWRpdXM9IjNweCIsdC53aWR0aD10aGlzLnJlc2l6ZVdpZHRoPyIiLmNvbmNhdCh0aGlzLnJlc2l6ZVdpZHRoLCJweCIpOiIiLmNvbmNhdCh0aGlzLm1pbk1vYmlsZS53aWR0aCwicHgiKSx0LmhlaWdodD0iIi5jb25jYXQodGhpcy5taW5Nb2JpbGUuaGVpZ2h0LCJweCIpLHQucGFkZGluZz0iMCA4cHgiKToodC5ib3JkZXJSYWRpdXM9IiIuY29uY2F0KHRoaXMubWluRGVza3RvcC5ib3JkZXJSYWRpdXNUb3AsInB4ICIpLmNvbmNhdCh0aGlzLm1pbkRlc2t0b3AuYm9yZGVyUmFkaXVzVG9wLCJweFxuXHRcdFx0XHRcdCIpLmNvbmNhdCh0aGlzLm1pbkRlc2t0b3AuYm9yZGVyUmFkaXVzQm90dG9tLCJweCAiKS5jb25jYXQodGhpcy5taW5EZXNrdG9wLmJvcmRlclJhZGl1c0JvdHRvbSwicHgiKSx0LndpZHRoPSIiLmNvbmNhdCh0aGlzLm1pbkRlc2t0b3Aud2lkdGgsInB4IiksdC5oZWlnaHQ9IiIuY29uY2F0KHRoaXMubWluRGVza3RvcC5oZWlnaHQsInB4IiksdC5wYWRkaW5nPSIwIDE1cHgiKSksdGhpcy5pc0JvdHRvbXx8dGhpcy5pc0NlbnRlcj90LmJvdHRvbT0iMCI6dC50b3A9IjAiLHRoaXMuaXNSVEw/dC5yaWdodD0iMCI6dC5sZWZ0PSIwIix0LnBvc2l0aW9uPSJhYnNvbHV0ZSIsdC56SW5kZXg9IjEwMDAiLHQuYm9yZGVyPSIwIix0fSxpRnJhbWVIZWlnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLmlzUm91bmRXaWRnZXQ/dGhpcy5pc01vYmlsZUxhbmRzY2FwZT8ic2FmYXJpIiE9PXRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fCJpcGhvbmUiIT09dGhpcy5vcy5pZGVudGl0eSYmIm1hYyIhPT10aGlzLm9zLmlkZW50aXR5PyJzYWZhcmkiPT09dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8ImlwaG9uZSIhPT10aGlzLm9zLmlkZW50aXR5JiYibWFjIiE9PXRoaXMub3MuaWRlbnRpdHk/IiIuY29uY2F0KCh0aGlzLm1pbk1vYmlsZS5oZWlnaHQrNCkqdGhpcy56b29tUmF0aW8sInB4Iik6IiIuY29uY2F0KCh0aGlzLm1pbk1vYmlsZS5oZWlnaHQrNCkqKHRoaXMuem9vbVJhdGlvLzEuNyksInB4Iik6IiIuY29uY2F0KCh0aGlzLm1pbk1vYmlsZS5oZWlnaHQrNCkqdGhpcy56b29tUmF0aW8qMS4yLCJweCIpOiIiLmNvbmNhdCgodGhpcy5taW5Nb2JpbGUuaGVpZ2h0KzQpKnRoaXMuem9vbVJhdGlvLCJweCIpOiIiLmNvbmNhdCgodGhpcy5taW5Nb2JpbGUuaGVpZ2h0KzYpKnRoaXMuem9vbVJhdGlvLCJweCIpOnRoaXMuaXNSb3VuZFdpZGdldD8iIi5jb25jYXQodGhpcy5taW5EZXNrdG9wLmhlaWdodCwicHgiKToiIi5jb25jYXQodGhpcy5taW5EZXNrdG9wLmhlaWdodCs0LCJweCIpfSxpRnJhbWVXaWR0aDpmdW5jdGlvbigpe2lmKHRoaXMubW9iaWxlQnJvd3Nlck5hbWUpe3ZhciB0PXRoaXMucmVzaXplV2lkdGh8fHRoaXMubWluTW9iaWxlLndpZHRoO3JldHVybiF0aGlzLmlzTW9iaWxlTGFuZHNjYXBlfHwiaXBob25lIiE9PXRoaXMub3MuaWRlbnRpdHkmJiJtYWMiIT09dGhpcy5vcy5pZGVudGl0eT8iIi5jb25jYXQoKHQrNykqdGhpcy56b29tUmF0aW8sInB4Iik6InNhZmFyaSI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lPyIiLmNvbmNhdCgodCs3KSooMS4yKnRoaXMuem9vbVJhdGlvKSwicHgiKToiIi5jb25jYXQoKHQrNykqKHRoaXMuem9vbVJhdGlvLzEuNyksInB4Iil9cmV0dXJuIiIuY29uY2F0KHRoaXMubWluRGVza3RvcC53aWR0aCs0LCJweCIpfSxzdHlsZU9iamVjdDpmdW5jdGlvbigpe3ZhciB0LGksZT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3RoaXMubWluTW9iaWxlOnRoaXMubWluRGVza3RvcCxvPXsicG9zaXRpb246IjoiZml4ZWQgIWltcG9ydGFudDsiLCJ6LWluZGV4OiI6IjEwMDAwMDMgIWltcG9ydGFudDsiLCJ3aWR0aDoiOiIiLmNvbmNhdCh0aGlzLmlGcmFtZVdpZHRoLCIgIWltcG9ydGFudDsiKSwiaGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lSGVpZ2h0LCIgIWltcG9ydGFudDsiKSwibWluLXdpZHRoOiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lV2lkdGgsIiAhaW1wb3J0YW50OyIpLCJtaW4taGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lSGVpZ2h0LCIgIWltcG9ydGFudDsiKSwibWF4LXdpZHRoOiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lV2lkdGgsIiAhaW1wb3J0YW50OyIpLCJtYXgtaGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lSGVpZ2h0LCIgIWltcG9ydGFudDsiKX07dGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLmlzTW9iaWxlTGFuZHNjYXBlPyJzYWZhcmkiPT09dGhpcy5tb2JpbGVCcm93c2VyTmFtZT8odD10aGlzLnhPZmZzZXRNb2JpbGUsaT10aGlzLnlPZmZzZXRNb2JpbGUpOih0PXRoaXMueE9mZnNldE1vYmlsZS8xLjcsaT10aGlzLnlPZmZzZXRNb2JpbGUvMS43KToodD10aGlzLnhPZmZzZXRNb2JpbGUsaT10aGlzLnlPZmZzZXRNb2JpbGUpOih0PXRoaXMueE9mZnNldCxpPXRoaXMueU9mZnNldCk7dmFyIG49dCp0aGlzLnpvb21SYXRpbztpZih0aGlzLmlzUmlnaHQ/b1sicmlnaHQ6Il09IiIuY29uY2F0KG4sInB4ICFpbXBvcnRhbnQ7Iik6b1sibGVmdDoiXT0iIi5jb25jYXQobiwicHggIWltcG9ydGFudDsiKSx0aGlzLmlzQ2VudGVyKXtpZihvWyJ0b3A6Il09ImNhbGMoKDUwJSAtICIuY29uY2F0KC41KmUuaGVpZ2h0LCJweCkgKyAiKS5jb25jYXQoaSwicHgpICFpbXBvcnRhbnQ7IiksIXRoaXMuaXNSb3VuZFdpZGdldCl7dmFyIHM9LjUqZS5oZWlnaHQtLjUqZS53aWR0aCt0LGE9IjQ5JSAhaW1wb3J0YW50IixyPSJyb3RhdGUoIi5jb25jYXQodGhpcy5pc1JpZ2h0PyItOTBkZWciOiI5MGRlZyIsIikgIWltcG9ydGFudCIpO3RoaXMubW9iaWxlQnJvd3Nlck5hbWU/KGE9IjAgMCAhaW1wb3J0YW50Iix0aGlzLmlzUmlnaHQ/KG9bImxlZnQ6Il09ImNhbGMoMTAwJSAtICIuY29uY2F0KHRoaXMuaUZyYW1lSGVpZ2h0LCIgLSAiKS5jb25jYXQodGhpcy54T2Zmc2V0TW9iaWxlKnRoaXMuem9vbVJhdGlvLCJweCkgIWltcG9ydGFudDsiKSxyPSJyb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVYKC01MCUpICFpbXBvcnRhbnQiKToob1sicmlnaHQ6Il09Ijg1JSAhaW1wb3J0YW50OyIsb1sibGVmdDoiXT0iY2FsYygiLmNvbmNhdCh0aGlzLmlGcmFtZUhlaWdodCwiICsgIikuY29uY2F0KHRoaXMueE9mZnNldE1vYmlsZSp0aGlzLnpvb21SYXRpbywicHgpICFpbXBvcnRhbnQ7Iikscj0icm90YXRlKDkwZGVnKSB0cmFuc2xhdGVYKC01MCUpICFpbXBvcnRhbnQiKSk6dGhpcy5pc1JpZ2h0P29bInJpZ2h0OiJdPSIiLmNvbmNhdChzLCJweCAhaW1wb3J0YW50OyIpOm9bImxlZnQ6Il09IiIuY29uY2F0KHMsInB4ICFpbXBvcnRhbnQ7Iiksb1sidHJhbnNmb3JtLW9yaWdpbjoiXT1hLG9bIi13ZWJraXQtdHJhbnNmb3JtOiJdPSIiLmNvbmNhdChyLCI7Iiksb1siLW1zLXRyYW5zZm9ybToiXT0iIi5jb25jYXQociwiOyIpLG9bInRyYW5zZm9ybToiXT0iIi5jb25jYXQociwiOyIpfX1lbHNlIHRoaXMuaXNCb3R0b20/b1siYm90dG9tOiJdPSIiLmNvbmNhdChpKnRoaXMuem9vbVJhdGlvLCJweCAhaW1wb3J0YW50OyIpOm9bInRvcDoiXT0iIi5jb25jYXQoaSp0aGlzLnpvb21SYXRpbywicHggIWltcG9ydGFudDsiKTtyZXR1cm4ibWF4IiE9PXRoaXMuY2hhdFdpbmRvd1N0YXRlfHx0aGlzLmlzUm91bmRXaWRnZXQmJiF0aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3RoaXMubW9iaWxlQnJvd3Nlck5hbWU/b1siZGlzcGxheToiXT0iYmxvY2sgIWltcG9ydGFudDsiOnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7b1siZGlzcGxheToiXT0iYmxvY2sgIWltcG9ydGFudDsifSksMjUwKTpvWyJkaXNwbGF5OiJdPSJub25lICFpbXBvcnRhbnQ7IixnKGcoe30sdGhpcy5nZW5lcmljU3R5bGVzKSxvKX0sYmFkZ2VQb3NpdGlvbjpmdW5jdGlvbigpe3ZhciB0LGksZT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3RoaXMubWluTW9iaWxlOnRoaXMubWluRGVza3RvcCxvPXt9O3JldHVybiB0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiZ0aGlzLnJlc2l6ZVdpZHRoJiYoZS53aWR0aD10aGlzLnJlc2l6ZVdpZHRoKzUpLHRoaXMuaXNSb3VuZFdpZGdldD8odD0iIi5jb25jYXQoZS53aWR0aC0yMCwicHgiKSxpPSIiLmNvbmNhdChlLmhlaWdodC0yMCwicHgiKSk6KHQ9IiIuY29uY2F0KGUud2lkdGgtMTYsInB4IiksaT0iIi5jb25jYXQoZS5oZWlnaHQtMTYsInB4IikpLHRoaXMuaXNCb3R0b218fHRoaXMuaXNDZW50ZXI/KG8ubGVmdD10LG8uYm90dG9tPWksby5yaWdodD0iYXV0byIsby50b3A9ImF1dG8iKTooby5sZWZ0PXQsby50b3A9IjBweCIsby5yaWdodD0iYXV0byIsby5ib3R0b209ImF1dG8iKSxvfSxpc0xpdmVDaGF0RmVhdHVyZUVuYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hISh0aGlzLmhhc0xpdmVDaGF0fHx0aGlzLmhhc0NoYXRTdGFydGVkJiZ0aGlzLmFnZW50c0NvdW50PjApfSxoaWRlTWluaW1pemVXaWRnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4ic2xpZGUiPT09dGhpcy5vbkNsaWNrJiYibWF4Ij09PXRoaXMuY2hhdFdpbmRvd1N0YXRlfX0pLHdhdGNoOnt6b29tUmF0aW86ZnVuY3Rpb24oKXt0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiZ0aGlzLmlzTG9hZGVkJiZ0aGlzLnNjYWxlQ29udGVudCgpfSxpc01vYmlsZUxhbmRzY2FwZTpmdW5jdGlvbigpe3RoaXMubW9iaWxlQnJvd3Nlck5hbWUmJnRoaXMuc2NhbGVDb250ZW50KCl9fSxtZXRob2RzOmcoZyh7fSxPYmplY3Qoby5iKSh7dG9nZ2xlV2lkZ2V0OiJzZXNzaW9uL3RvZ2dsZVdpZGdldCJ9KSkse30se2xvYWRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5pc0xvYWRlZD0hMCx0aGlzLiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LmNvbnRlbnRDaGFuZ2UoKX0pKSx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiZ0aGlzLnNjYWxlQ29udGVudCgpfSxzY2FsZUNvbnRlbnQ6ZnVuY3Rpb24oKXt2YXIgdCxpPXRoaXMuaXNSVEw/InJpZ2h0IjoibGVmdCIsZT0ic2NhbGUoIi5jb25jYXQodGhpcy56b29tUmF0aW8sIikiKTt0PXRoaXMuaXNCb3R0b218fHRoaXMuaXNDZW50ZXI/ImJvdHRvbSI6InRvcCIsdGhpcy5tb2JpbGVCcm93c2VyTmFtZSYmdGhpcy5pc01vYmlsZUxhbmRzY2FwZSYmKCJzYWZhcmkiIT09dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8ImlwaG9uZSIhPT10aGlzLm9zLmlkZW50aXR5JiYibWFjIiE9PXRoaXMub3MuaWRlbnRpdHk/InNhZmFyaSI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHwiaXBob25lIiE9PXRoaXMub3MuaWRlbnRpdHkmJiJtYWMiIT09dGhpcy5vcy5pZGVudGl0eXx8KGU9InNjYWxlKCIuY29uY2F0KHRoaXMuem9vbVJhdGlvLzEuNywiKSIpKTplPSJzY2FsZSgiLmNvbmNhdCgxLjIqdGhpcy56b29tUmF0aW8sIikiKSk7dmFyIG89Ii1tb3otdHJhbnNmb3JtOiAiLmNvbmNhdChlLCI7XG5cdFx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiAiKS5jb25jYXQoZSwiO1xuXHRcdFx0XHRcdFx0XHQtby10cmFuc2Zvcm06ICIpLmNvbmNhdChlLCI7XG5cdFx0XHRcdFx0XHRcdC1tcy10cmFuc2Zvcm06ICIpLmNvbmNhdChlLCI7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogIikuY29uY2F0KGUsIjsiKSxuPSItbW96LXRyYW5zZm9ybS1vcmlnaW46ICIuY29uY2F0KHQsIiAiKS5jb25jYXQoaSwiO1xuXHRcdFx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogIikuY29uY2F0KHQsIiAgIikuY29uY2F0KGksIjtcblx0XHRcdFx0XHRcdFx0XHQtby10cmFuc2Zvcm0tb3JnaW46ICIpLmNvbmNhdCh0LCIgICIpLmNvbmNhdChpLCI7XG5cdFx0XHRcdFx0XHRcdFx0LW1zLXRyYW5zZm9ybS1vcmlnaW46ICIpLmNvbmNhdCh0LCIgICIpLmNvbmNhdChpLCI7XG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogIikuY29uY2F0KHQsIiAgIikuY29uY2F0KGkpO3RoaXMuJHJlZnMuY29udGFpbmVyLnN0eWxlLmNzc1RleHQrPW8rbn0sY29udGVudENoYW5nZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5tb2JpbGVCcm93c2VyTmFtZSYmIXRoaXMuaXNSb3VuZFdpZGdldCYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtpZih0LiRyZWZzJiZ0LiRyZWZzWyJtaW4tY29udGVudCJdJiZ0LiRyZWZzWyJtaW4tY29udGVudCJdLiRyZWZzKXt2YXIgaT10LiRyZWZzWyJtaW4tY29udGVudCJdLiRyZWZzWyJjb250ZW50LWljb24iXSxlPXQuJHJlZnNbIm1pbi1jb250ZW50Il0uJHJlZnNbImNvbnRlbnQtdGV4dCJdO2lmKGkmJmUpe2UuY2xhc3NOYW1lPWUuY2xhc3NOYW1lLnJlcGxhY2UoL3Rhd2stdGV4dC10cnVuY2F0ZS9nLCIiKS50cmltKCk7dmFyIG89aS5jbGllbnRXaWR0aCtlLmNsaWVudFdpZHRoKzg7byYmbysxNj50Lm1pbk1vYmlsZS53aWR0aD90LnJlc2l6ZVdpZHRoPW8rMTY6dC5yZXNpemVXaWR0aD0wfXQucmVzaXplV2lkdGg+c2NyZWVuLndpZHRoJiYodC5yZXNpemVXaWR0aD1zY3JlZW4ud2lkdGgtMip0LnhPZmZzZXRNb2JpbGUsZS5jbGFzc05hbWUrPSIgdGF3ay10ZXh0LXRydW5jYXRlIil9fSksMWUzLzY2KX19KX0sdj1PYmplY3QobS5hKShiLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsaT10Ll9zZWxmLl9jO3JldHVybiBpKCJpLWZyYW1lIix7a2V5OnQua2V5LHJlZjoiaWZyYW1lIixhdHRyczp7d2lkdGg6dC5pRnJhbWVXaWR0aCxoZWlnaHQ6dC5pRnJhbWVIZWlnaHQsY3NzTGluazp0LmNzc0xpbmssc3R5bGVPYmplY3Q6dC5zdHlsZU9iamVjdH19LFtpKCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTp0LmlzTG9hZGVkJiYhdC5oaWRlTWluaW1pemVXaWRnZXQsZXhwcmVzc2lvbjoiaXNMb2FkZWQgJiYgIWhpZGVNaW5pbWl6ZVdpZGdldCJ9XSxyZWY6ImNvbnRhaW5lciIsc3RhdGljQ2xhc3M6InRhd2stbWluLWNvbnRhaW5lciJ9LFt0LnVucmVhZE1lc3NhZ2VDb3VudD4wJiYib2ZmbGluZSIhPT10LnBhZ2VTdGF0dXMmJiJtaW4iPT09dC5jaGF0V2luZG93U3RhdGUmJnQuaXNMaXZlQ2hhdEZlYXR1cmVFbmFibGVkP2koInRhd2stYmFkZ2UiLHtzdGF0aWNDbGFzczoidGF3ay1taW4tYmFkZ2UiLHN0eWxlOnQuYmFkZ2VQb3NpdGlvbixhdHRyczp7Y291bnQ6dC51bnJlYWRNZXNzYWdlQ291bnR9fSk6dC5fZSgpLGkoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stY3VzdG9tLWNvbG9yIHRhd2stY3VzdG9tLWJvcmRlci1jb2xvciB0YXdrLW91dGxpbmUiLHN0eWxlOnQuYnV0dG9uU3R5bGVzLGF0dHJzOntsYWJlbDp0LiRpMThuKCJjaGF0IiwiY2hhdF93aWRnZXQiKSxpc0NpcmNsZTp0LmlzUm91bmRXaWRnZXQsc2l6ZTp0LmlzUm91bmRXaWRnZXQ/ImxhcmdlIjoiIix0YWJpbmRleDoiMCJ9LG9uOntjbGljazp0LnRvZ2dsZVdpZGdldH19LFtpKCJtaW4tY29udGVudCIse3JlZjoibWluLWNvbnRlbnQiLGF0dHJzOnttaW5EZXNrdG9wOnQubWluRGVza3RvcCxpc1JvdW5kV2lkZ2V0OnQuaXNSb3VuZFdpZGdldH0sb246e2NvbnRlbnRDaGFuZ2U6dC5jb250ZW50Q2hhbmdlfX0pXSwxKV0sMSldKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTtpLmRlZmF1bHQ9di5leHBvcnRzfX1dKTs="}},"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":"profx.io/assets/global/css/iziToast.min.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.829Z","timestamp":1785143153829,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/iziToast.min.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"a221-67b374e4-4436cc34e4f39ca4;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 9907\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":41505,"size_decoded":10347,"mime_type":"text/css","magic":"ASCII text, with very long lines (41419), with CRLF line terminators","md5":"b2f7bdc3ed47f5956551ce0333925792","sha1":"d2c6cd54cf8a6c040c28844b306543b76eeab8b8","sha256":"7fa7d6e3b4039b59b4d4721ea7e523a42a4dc0b56405829df9f8696f8550fa01","sha512":"3b4de7b57a15a9a1944c07809af436612ce40af72564470f42ed5eaa5a0f6877c9e51b8d1a24b897edddb9a89d0fcd353f9d09dbc107ca89c2574e825254d26a","ssdeep":"384:wV5zpPVWahj8Ik/4kYip7pHRiJhkgL6LlG1oLzlRCPoA50UhLoMPFPsR4lweGbzi:MPVNhlHgppGf1oWQA1","tlshash":"b21345fd15f0124454c6ab4296da6a980e3fcd9770ea1cef32cd344b8b46b9e136532b","first_seen":"2023-04-10T01:55:59Z","last_seen":"2026-08-03T04:59:21.570253Z","times_seen":1677,"resource_available":false,"data":"LyoNCiogaXppVG9hc3QgfCB2MS40LjANCiogaHR0cDovL2l6aXRvYXN0Lm1hcmNlbG9kb2xjZS5jb20NCiogYnkgTWFyY2VsbyBEb2xjZS4NCiovDQouaXppVG9hc3QtY2Fwc3VsZXtmb250LXNpemU6MDtoZWlnaHQ6MDt3aWR0aDoxMDAlO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246dHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSxoZWlnaHQgLjVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5pemlUb2FzdC1jYXBzdWxlLC5pemlUb2FzdC1jYXBzdWxlICp7Ym94LXNpemluZzpib3JkZXItYm94fS5pemlUb2FzdC1vdmVybGF5e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246Zml4ZWQ7dG9wOi0xMDBweDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206LTEwMHB4O3otaW5kZXg6OTk3fS5pemlUb2FzdHtkaXNwbGF5OmlubGluZS1ibG9jaztjbGVhcjpib3RoO3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtZmFtaWx5OidMYXRvJyxUYWhvbWEsQXJpYWw7Zm9udC1zaXplOjE0cHg7cGFkZGluZzo4cHggNDVweCA5cHggMDtiYWNrZ3JvdW5kOnJnYmEoMjM4LDIzOCwyMzgsLjkpO2JvcmRlci1jb2xvcjpyZ2JhKDIzOCwyMzgsMjM4LC45KTt3aWR0aDoxMDAlO3BvaW50ZXItZXZlbnRzOmFsbDtjdXJzb3I6ZGVmYXVsdDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTstd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LWtodG1sLXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7bWluLWhlaWdodDo1NHB4fS5pemlUb2FzdD4uaXppVG9hc3QtcHJvZ3Jlc3NiYXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO3dpZHRoOjEwMCU7ei1pbmRleDoxO2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lml6aVRvYXN0Pi5pemlUb2FzdC1wcm9ncmVzc2Jhcj5kaXZ7aGVpZ2h0OjJweDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMyk7Ym9yZGVyLXJhZGl1czowIDAgM3B4IDNweH0uaXppVG9hc3QuaXppVG9hc3QtYmFsbG9vbjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo4cHg7bGVmdDphdXRvO3dpZHRoOjA7aGVpZ2h0OjA7dG9wOjEwMCU7Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWxlZnQ6MTVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItdG9wOjEwcHggc29saWQgIzAwMDtib3JkZXItdG9wLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLXJhZGl1czowfS5pemlUb2FzdC5pemlUb2FzdC1iYWxsb29uIC5pemlUb2FzdC1wcm9ncmVzc2Jhcnt0b3A6MDtib3R0b206YXV0b30uaXppVG9hc3QuaXppVG9hc3QtYmFsbG9vbj5kaXZ7Ym9yZGVyLXJhZGl1czowIDAgMCAzcHh9Lml6aVRvYXN0Pi5pemlUb2FzdC1jb3Zlcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7YmFja2dyb3VuZC1zaXplOjEwMCU7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCUgNTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjEpfS5pemlUb2FzdD4uaXppVG9hc3QtY2xvc2V7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtib3JkZXI6MDtwYWRkaW5nOjA7b3BhY2l0eTouNjt3aWR0aDo0MnB4O2hlaWdodDoxMDAlO2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBZ0NBWUFBQUJ6ZW5yMEFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUFBbHdTRmx6QUFBSlBBQUFDVHdCY0dmVzBRQUFBQmwwUlZoMFUyOW1kSGRoY21VQWQzZDNMbWx1YTNOallYQmxMbTl5WjV2dVBCb0FBQUQzU1VSQlZGaUYxWmR0RG9NZ0RFQmZkaTRQd0FYOHZMRm4wcVQ3d3hhbnRvakt1cG1RbUNpOFI0dFNBQ3BnakMySUNDVWJFQmE4aW5nanNVMUFYUkJlUjhhTE42NEZpa25zd044Q1llZkJCRFEzd2h1RkVTeTdXeVFNZUMwaXBFSTBBKzBGZUJ2SFVGTjh4UGFVaEFIL2lLb1dzblhIR2VneTRKMHl4aWFsT2ZhSEpBejRiaFJ6UXpnRHZkR256NEdiQW9uWmJDUU11Qm0xSy9rY0Z1OE1wMU4yY0ZGcHN4c011SnFxYklHRXhHbDRsb0FSYWpVMXR3c2tKTExoSXNJRDcrdHZVb0RuSWpUZzVUOURQSDlFQnJ6OHJ4alB6Y2lBbDkrTzhTeEk4Q3pKOEN4S0ZmaDN5bks4RHliOHdOSE0vWERxZWp4L0F0TnlQTzg3dE55YkFBQUFBRWxGVGtTdVFtQ0MpIG5vLXJlcGVhdCA1MCUgNTAlO2JhY2tncm91bmQtc2l6ZTo4cHg7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTowfS5pemlUb2FzdD4uaXppVG9hc3QtY2xvc2U6aG92ZXJ7b3BhY2l0eToxfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keXtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjAgMCAwIDEwcHg7aGVpZ2h0OmF1dG87bWluLWhlaWdodDozNnB4O21hcmdpbjowIDAgMCAxNXB4O3RleHQtYWxpZ246bGVmdH0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHk6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OnRhYmxlO2NsZWFyOmJvdGh9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC10ZXh0c3ttYXJnaW46MTBweCAwIDA7cGFkZGluZy1yaWdodDoycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bGVmdH0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWlucHV0c3ttaW4taGVpZ2h0OjE5cHg7ZmxvYXQ6bGVmdDttYXJnaW46M3B4IC0ycHh9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pbnB1dHM+aW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSksLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pbnB1dHM+c2VsZWN0e3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjoycHg7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjA7cGFkZGluZzo0cHggN3B4O2ZvbnQtc2l6ZToxM3B4O2xldHRlci1zcGFjaW5nOi4wMmVtO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7Y29sb3I6IzAwMDtib3gtc2hhZG93OjAgMCAwIDFweCByZ2JhKDAsMCwwLC4yKTttaW4taGVpZ2h0OjI2cHh9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pbnB1dHM+aW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6Zm9jdXMsLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pbnB1dHM+c2VsZWN0OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwwLDAsLjYpfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9uc3ttaW4taGVpZ2h0OjE3cHg7ZmxvYXQ6bGVmdDttYXJnaW46NHB4IC0ycHh9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1idXR0b25zPmEsLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1idXR0b25zPmJ1dHRvbiwuaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWJ1dHRvbnM+aW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSl7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjJweDtib3JkZXItcmFkaXVzOjJweDtib3JkZXI6MDtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZToxMnB4O2xldHRlci1zcGFjaW5nOi4wMmVtO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7Y29sb3I6IzAwMH0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWJ1dHRvbnM+YTpob3ZlciwuaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWJ1dHRvbnM+YnV0dG9uOmhvdmVyLC5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9ucz5pbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKTpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjIpfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9ucz5hOmZvY3VzLC5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9ucz5idXR0b246Zm9jdXMsLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1idXR0b25zPmlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwwLDAsLjYpfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9ucz5hOmFjdGl2ZSwuaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWJ1dHRvbnM+YnV0dG9uOmFjdGl2ZSwuaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWJ1dHRvbnM+aW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6YWN0aXZle3RvcDoxcHh9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6NTAlO2Rpc3BsYXk6dGFibGU7Zm9udC1zaXplOjIzcHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4tdG9wOi0xMnB4O2NvbG9yOiMwMDA7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWljb24uaWNvLWluZm97YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FNQUFBQ2R0NEhzQUFBQWZsQk1WRVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNDdG9Qc0FBQUFLWFJTVGxNQTZQc0l2RG9iK09hcGF2VmhXUllQcklyeTJNeEdROTdjenNPenBKYU1jRTBxSlFPd1Z0S2pmeENWRmVJQUFBSTNTVVJCVkZqRGxKUFpzb0l3RUVUbkNpR3liOHErcW1qbC8zL3dGbUdLd2pCUk9TOVFXYnRuT3FEREdQcTRNZE1rU2MwbTdnY0REaEY0TlJkdjhOb0w0RWNNcHpvSmdsUGwvS1REejRXVzNJZHZYRXZ4a2ZJS243Qk1aYjFiRks0eVpGcWdoWjAzamswbkc4TjVOQnd6eDl4VTVjeEFnOGZYaTIwL2hEZEMzMTZsY0E4bzd0MTZlUnVRdlcxWEdkMmQyUDhRU0hRRERiZElJSS85Q1IzbFVGK2xidWNmSnk0V2ZNUzY0RUpQT1Juclp4dGZjMnBqSmRuYnVhZ3MzbDA0VFR0Sk1YcmRUcGg0UHlnNFhBanVnQUpxTURmNVJmK29YeDIvcWk0dTZuaXBha0lpN0NzZ2l1TVNFRjlJR0tnOGhlUUpLa3hJZkZTVVUvZWdXU3dOclMxZlBEdExmb244c1pPY1lVUW1sMVF2OWEza2Z3c0VVeUpFTWdGQkt6ZFY4bzNJdzl5QWpnMWpkTFFDVjRxYmQzbm84eUQyR3VnYUMzb01iRjBOWUhDcEpZU0RoTkk1TjJEQVdCNEY0ejlBai8wNENuYS94N2VWQVExN3ZSalFaUGgrRy9rZGRZdjBoNDl5WTROV05EV01NT01VSVJZdmxURUNtck44cFVBam81UkNNbjhLb1BtYkovK0FwcGduay8vU3k5MEdZQkNHZ203SUFza1E3RDloRktXNEFwQjFlaTNGU1lEOVBqR0FLeWdBVitBUkZZQkg1QnNWZ0c5a2tCU0FRV0tVRllCUlpwa1VnR1ZpblJXQWRVWlFEQUJCUWRJY0FFbERWQlVBVVVYV0hRQlp4MWdNQUdNcHJNMEFzTGJWWEhzQTV0clplOTMvd3Azc3ZRMFlOYi9qV1YzQUlPTHNNdGx6blNOT0g3SnFqT3BEVmg3ejhxQ1pSMTBmdHZPNG54ZU92UExrcFN1dmZYbnh6S3R2WHI3ait2OEM1aWkwZTcxQXQ3Y0FBQUFBU1VWT1JLNUNZSUk9KSBuby1yZXBlYXQgNTAlIDUwJTtiYWNrZ3JvdW5kLXNpemU6ODUlfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtaWNvbi5pY28td2FybmluZ3tiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVRQUFBQkVDQU1BQUFBUHpXT0FBQUFBa0ZCTVZFVUFBQUFBQUFBQkFBSUFBQUFCQUFJQUFBTUFBQUFCQUFJQkFBSUJBQUlBQUFJQUFBQUJBQUlBQUFBQkFBSUNBQUlDQUFJQUFBSUFBQUFBQUFBQUFBQUJBQUlCQUFJQUFBTUFBQUFCQUFJQkFBTUJBQUVDQUFJQUFBSUFBQUlBQUFBQkFBSUJBQUlCQUFNQkFBSUJBQUVBQUFJQUFBTUFBQUFBQUFBQkFBRUNBQUlDQUFJQUFBSUFBQU1BQUFRQUFBRTA1eU5BQUFBQUwzUlNUbE1BQitrRDdWOFErUFhpY3d2N0k5aVloa0F6SnhueDAxSVY1Y21uazJ4bUhmemV4c0s0ZUV3NUw3R2VpMzlhUnc2NDBhd0FBQUhRU1VSQlZGakQ3WmZKZG9KQUVFV0pnQ2lJNG9EaVBNOG03Ly8vTGlkRXJSTzdzSHJZNXU3WVhMcjd2S3F1OWtUQzBIUG1vOW44Y0piRVFPenFxQWRBVUhlVVpBQ1F1VGtHRFFCb0RKd2tIWlIwWEJ6OUZrcGFmWHVIUDBTSjA5bUdlSkxaNXd3bFRtY2JBMFRIUG1kRUs3WFBHVEcxenhtSW5uM09pSjE5emtCMGpTVlRLRXhNSFQwd2pBd2xXekMwZlNQSEYxZ1dScEloV01ZbTdmWVRGY1FHbGJlbWY0ZEZmZFRHZzBCL0tYTThxQlUvM3dudGJxN3JTR3F2SjlrbGE2SXB1ZUZKZXQ4ZnhmZW01eWh5a2p5T2dOYVdGMXFTR2Q1Sk1OTnhwTkY3U1pRYVZoNUp6THJUQ1pJRUoxR3lFeVZ5ZCtwQ2xNamRhU0pLNU80MGdpU1J1NVBmRmlWeWQxcEFrc2pkS1JuclNzYlZkYmlIcmdUN3lzczMxNWZrVlFQTEZRckwrNEZIZU9YS081WVJGRUt2NUFpRmFNbEtMbEJwSnVWQ0psQzVzSmZ2Q2d6dHJ1LzNObUJZY2NQZ0dUeFJBenhuMVhHRU1VZjU4cFhadmpvT3NPQ2dqTDA4K2I1M210ZkFNL1NWc1pjaktMdHlzUVpQcUl5OUhQUDNtLzN6S0l0UndUMEx5UW84c1RyMjZ0Y084M0RJVU1XSUpqaWVySExzSmRhL3RiTkJGWTBCUC9iS3RjTThITklXQ0szYVlSNE9Nemd4bzV3NUVGTE9MS0RFeFhBbTlnSTRFM2lBTzk0L0N0L2xLV3VNMkxNR2JnQUFBQUJKUlU1RXJrSmdnZz09KSBuby1yZXBlYXQgNTAlIDUwJTtiYWNrZ3JvdW5kLXNpemU6ODUlfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtaWNvbi5pY28tZXJyb3J7YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FNQUFBQ2R0NEhzQUFBQWVGQk1WRVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVnlFaUlBQUFBSjNSU1RsTUEzQnNCOThRVjh1U3lXVlVGejcra2NXTU0yTHVaaW9CcFRVVkJOY3EycWFpYmo0ZDFhekxaWllBQkFBQUNaRWxFUVZSWXc3V1gyNUtDTUF5R0F4VW9GRGtwaW9oblY5Ny9EWGVHQnRvT1VwcloyZHlvMUs4MmZ4S2J3SkpWcCtLUVo3c28ybVg1b1RoVlFMS3dqRGU5WVp1NERGM3B0QW42cnhZMHFRUE9FcTlmTkM5aGEzeTc3YTIyYmEyNHYrOVhiZTh2OHgwM2RQT0MyL05kdkI2eGVTcmVMZkdKcG54MFR5b3RLcUxtMnM3SmQvV082aXZYTnAwdEN5MDJSL2FGejVWUTV3VVBsVUw1ZklmajVLSWxWR1UwbldIbS81UXRvVFZNV1k4bXpJVnUxSzlPN1hIMkppVS94bk9PVDM5Z25VZmorbEZIZGR4NHRGakwzL0g4amp6YUZDeTJSZjBjL2ZkUXlRc3pJOEJEUjk3M0l5TVNLYTRrcmp4QWlXL2xrUnZNUCtiS0s5V2JZUzFBU1FnOGRLamFVR2xZUHdSZS9Xb0lrejh0aVFjaEg1UUFFTXY2VDBrOE1ENG1VeVdyNEU3akFXcVoreFdjTUlZa1h2bHdnZ0ozSXZGSyt3SU9jcFhBbzhuOFAwQ09BYVh5S0g0T3NqQnVaQjRldzBJR3UrSDFTZWJoTmF6c1FCYldtOHlqK2hGdVVKQjVlTXNOMElVWG1ZZW5kQUZGZkpCNXVFa1JNWXd4bWNkNnpER1J0bVFlUEV5a0FndWJ5bU1SRm1NeENTSVBDUmJUdUZOTjVPR09SVGptTkdjMFBvMG04VXYwZ2NDcnk2eFVoUjJRZUxpaTl0b2ZiRWZoei9xdk50aStPZlBxTm0yTXE2MTA1RlVNdmRUNEdQbXVmTWlWOFBxQk1rYytEZFQxYmpZWWJqelUvZXcyM1ZQNG4zbUxBejRuOEp0di9VaTNjZVRUMm16ejVvMW1adDBnbkJwbXNkanFScVZsbXBsY1BkcWE3WDIza0w5YnJkbTJ0L3VCWURQbjIrdHl1NDhtdElHRDEwSlR1VXJ1a1ZyYkNGaXdEemNIclBqeEt0N1BXK0FaUXlUL1dFU08rMVdMN2YzbytXTEhMMmRZTVNac2c2ZGcvejM2MG9mdlA0Ly92MU5QemdzMjhXbFdBQUFBQUVsRlRrU3VRbUNDKSBuby1yZXBlYXQgNTAlIDUwJTtiYWNrZ3JvdW5kLXNpemU6ODAlfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtaWNvbi5pY28tc3VjY2Vzc3tiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFCQU1BQUFCWVIyenRBQUFBSVZCTVZFVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCdDBVakJBQUFBQ25SU1RsTUFwQVBoSUZuODJ3Z0d2OG1WdHdBQUFLVkpSRUZVU01mdDBMRUpBa0VBUk5GRkZFdzFORkpiOENLakF5MUFFT3pBeE53K2JFRUVnNm55RmpiWTRMT3pjQndYN1MvZ3dVeG9UZEluK0pidjRMdjhieDQ0NitrQjZWc0J0SzBCK3diTUNLeHJ3TDMzd09yVmVlQ2hYMjhuN0tUT1RqZ29FdTZEUlNZQWdBQUFBa0FtQUlBQUFBSUFDUUlrTWtBQ0FBZ0FJQUNBeUVDQktBT0p1Q2FnVEp3U1VDYVVBRU1BQUJFQlJ3QUFFUUZMYkNKZ080YlcrQVpLR25rdFIrakFGQUFBQUFCSlJVNUVya0pnZ2c9PSkgbm8tcmVwZWF0IDUwJSA1MCU7YmFja2dyb3VuZC1zaXplOjg1JX0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWljb24uaWNvLXF1ZXN0aW9ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBUUFBQUFBWUxsVkFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUFDQmpTRkpOQUFCNkpnQUFnSVFBQVBvQUFBQ0E2QUFBZFRBQUFPcGdBQUE2bUFBQUYzQ2N1bEU4QUFBQUFtSkxSMFFBQUtxTkl6SUFBQUFKY0VoWmN3QUFEZGNBQUEzWEFVSW9tM2dBQUFBSGRFbE5SUWZoQ1FrVUVoRm92eFR4QUFBRURrbEVRVlJvM3MyWlRXZ1RRUlRIZjAzaXBUUlVxZ2hOU2dzUmpIZ1FyRlVRQzZKZ0QxS2FrM2dRVVVvUHFSZEJnbGYxb0JlaEJ3czlDbjRjR2srMVNPbWgydXBCeEFZVm9lSkhyUjl0Z3EwaTFDcTBscVlla3M3TWJwUGRtVTAwL2M4aG05bjMzdi90N050NU0yK3FNRVdRSTBRSWliWktSclFwSHZMTDJLSTJ3blF6ekJLckRtMlJJZUtFeTAxZFRZS1VJN0cxWlJrblFYVjV5UDEwa1RZZ2x5MU5GLzVTNmR1WjhFUysxaVpvZHlhb2Nyalh4RTBPRmVpZllZZ3AwbVJJa3dGQ2hBa1JKc0l4R2dySVArSTBuODJmdlpXNWRjL3prc3MwTzJvMWM1bVg2L1RtYURXbDc3UkZlNVlrVVczdEtFbXlGdjBsT3ZYSi9mVFlubUNFRnVNUmJHSEVacVZITHlUOURGalVKbWt6Smw5REc1TVdXd002TGxpZi9nRjFudWtCNm5oZ0d3VVhkRnJFK3dpVVJBOFFvTTlpMHpFV1dwWFFXK1pzeWVSck9NdXlFbzVGdjRnbXk0ZFhQdnFjQytwSDJWUllhTXd5K09XRytpTEdDZ20wVzBLdjlIZHZSOEFTam1LQ1hwdUsvYnhpVi83NkEvdjVVZERJWnVLY0pHanJuZWM1S1o3d3dzV0ZPcDZ4UFgvOW10MnNxRGU3Rk8rS2YvZlhIQlBQRFdwZFhHaFRwTHZVRzlWS3doMXhNRERqa3Z1K2NOREZCVGs3cHRYMVFrS1o4NTBtM2R1dTZmY3JXeHdkYUZGeVJFSjJqNHZPcEtQNkR1Nno0dUpDdjhzWUpJVmtDbkpCR0daYUJPTk8zcm9ZMkVxTnJTZklQaTdTS1A0ZmRYeU5VZDZJNndiU0FIRWwzM3RGTGUrRmxTc3Vzbks5MEEwK29FUGN1dWZaZ1huT2krdTlMcktTSlFaUXc2THdxQm52MkNLc2ZIT1JiRmJ5UWhBNnhOL3BFdWloU2RqNTZDbzdMV1JqUGlLaWU2Z2tCMkxpS3VVcUs1a2lQa0xpejFRSjlLMWNOWEJBTW9VQ2lnTnBROUlxRHRNSTFIS0E0L2p5dlVzYW9TeVpMQTVrak9qRFBGWmVuOFFsNVRzdkJza1VnamNpSVBTWDNRQVhDODZEVDdWV3ZsRWgveForaWo5QkRWV0owUUwwU2JacTZRYUZ4b0xQY1hQbUJMdmVMQ2M0d1hkREs2cys2L3Z3aENTbmlGTFBYVzBOSmU1VUI4ektDc3ZpcXBjN3ZHUFZRRmN5WmJ5UHdHRCtkNVpueG1OV2xoRzR4U0JaWmppdmpJV0hFUWdvRGtTTWpNd1RvNTQ1NjlKU0U1SXBBN0V5SlNNVHlHVFVBVUZsTzFaS090YUhUTWVMMVBoWVlGVGNpaG1ZMmNRNSt1bGxqN0VEa2lWZlZlejJzQ1R6OHlpdjg0ZGpoZzdJSlZrODF4RldKbFBkZkhCRzBmbGtSQy96UUZaK0RTbGxOdGZEZFVzT01DbGl5R1g1dU96VTNaaElYRkRvZjRtMWdEdUtiRXgwdDJZUzI1Z1ZHcGNNbnIvSTFreDNjNnBpQjhQOFpvcUV3Zk1YM1p5Q1h5bkpUbXEvVTdOVVhxZlV6Q2JXTDF3cVZLQlFVZUVTelFZb1VsVzhUQWNWTDFSQ3hVdTFHNkJZWGZGeWZRNFZQYkRJNFQ4ZDJXemdRNnNjL3ZteG5Uc3FmSENaUXpVSnhtMWg1ZHhTNVR1NmxRZ1RaMGlwcVJWcVN3elRiYkxITXQrYzE5aU83NnRzeC9jTFp1YitBbGkrdFlDOTNvbEVBQUFBSlhSRldIUmtZWFJsT21OeVpXRjBaUUF5TURFM0xUQTVMVEE1VkRJd09qRTRPakUzS3pBeU9qQXdqS3RmamdBQUFDVjBSVmgwWkdGMFpUcHRiMlJwWm5rQU1qQXhOeTB3T1Mwd09WUXlNRG94T0RveE55c3dNam93TVAzMjV6SUFBQUFaZEVWWWRGTnZablIzWVhKbEFIZDNkeTVwYm10elkyRndaUzV2Y21lYjdqd2FBQUFBQUVsRlRrU3VRbUNDKSBuby1yZXBlYXQgNTAlIDUwJTtiYWNrZ3JvdW5kLXNpemU6ODUlfS5pemlUb2FzdD4uaXppVG9hc3QtYm9keSAuaXppVG9hc3QtbWVzc2FnZSwuaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LXRpdGxle3BhZGRpbmc6MDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxNnB4O3RleHQtYWxpZ246bGVmdDtmbG9hdDpsZWZ0O3doaXRlLXNwYWNlOm5vcm1hbH0uaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LXRpdGxle2NvbG9yOiMwMDA7bWFyZ2luOjB9Lml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1tZXNzYWdle21hcmdpbjowIDAgMTBweDtjb2xvcjpyZ2JhKDAsMCwwLC42KX0uaXppVG9hc3QuaXppVG9hc3QtYW5pbWF0ZUluc2lkZSAuaXppVG9hc3QtYnV0dG9ucy1jaGlsZCwuaXppVG9hc3QuaXppVG9hc3QtYW5pbWF0ZUluc2lkZSAuaXppVG9hc3QtaWNvbiwuaXppVG9hc3QuaXppVG9hc3QtYW5pbWF0ZUluc2lkZSAuaXppVG9hc3QtaW5wdXRzLWNoaWxkLC5pemlUb2FzdC5pemlUb2FzdC1hbmltYXRlSW5zaWRlIC5pemlUb2FzdC1tZXNzYWdlLC5pemlUb2FzdC5pemlUb2FzdC1hbmltYXRlSW5zaWRlIC5pemlUb2FzdC10aXRsZXtvcGFjaXR5OjB9Lml6aVRvYXN0LXRhcmdldHtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO21hcmdpbjowIGF1dG99Lml6aVRvYXN0LXRhcmdldCAuaXppVG9hc3QtY2Fwc3VsZXtvdmVyZmxvdzpoaWRkZW59Lml6aVRvYXN0LXRhcmdldCAuaXppVG9hc3QtY2Fwc3VsZTphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTowO2NvbnRlbnQ6IiAiO2NsZWFyOmJvdGg7aGVpZ2h0OjB9Lml6aVRvYXN0LXRhcmdldCAuaXppVG9hc3QtY2Fwc3VsZSAuaXppVG9hc3R7d2lkdGg6MTAwJTtmbG9hdDpsZWZ0fS5pemlUb2FzdC13cmFwcGVye3otaW5kZXg6OTk5OTk7cG9zaXRpb246Zml4ZWQ7d2lkdGg6MTAwJTtwb2ludGVyLWV2ZW50czpub25lO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lml6aVRvYXN0LXdyYXBwZXIgLml6aVRvYXN0Lml6aVRvYXN0LWJhbGxvb246YmVmb3Jle2JvcmRlci1yaWdodDowIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0OjE1cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDoxMHB4IHNvbGlkICMwMDA7Ym9yZGVyLXRvcC1jb2xvcjppbmhlcml0O3JpZ2h0OjhweDtsZWZ0OmF1dG99Lml6aVRvYXN0LXdyYXBwZXItYm90dG9tTGVmdHtsZWZ0OjA7Ym90dG9tOjA7dGV4dC1hbGlnbjpsZWZ0fS5pemlUb2FzdC13cmFwcGVyLWJvdHRvbUxlZnQgLml6aVRvYXN0Lml6aVRvYXN0LWJhbGxvb246YmVmb3JlLC5pemlUb2FzdC13cmFwcGVyLXRvcExlZnQgLml6aVRvYXN0Lml6aVRvYXN0LWJhbGxvb246YmVmb3Jle2JvcmRlci1yaWdodDoxNXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0OjAgc29saWQgdHJhbnNwYXJlbnQ7cmlnaHQ6YXV0bztsZWZ0OjhweH0uaXppVG9hc3Qtd3JhcHBlci1ib3R0b21SaWdodHtyaWdodDowO2JvdHRvbTowO3RleHQtYWxpZ246cmlnaHR9Lml6aVRvYXN0LXdyYXBwZXItdG9wTGVmdHtsZWZ0OjA7dG9wOjA7dGV4dC1hbGlnbjpsZWZ0fS5pemlUb2FzdC13cmFwcGVyLXRvcFJpZ2h0e3RvcDowO3JpZ2h0OjA7dGV4dC1hbGlnbjpyaWdodH0uaXppVG9hc3Qtd3JhcHBlci10b3BDZW50ZXJ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7dGV4dC1hbGlnbjpjZW50ZXJ9Lml6aVRvYXN0LXdyYXBwZXItYm90dG9tQ2VudGVyLC5pemlUb2FzdC13cmFwcGVyLWNlbnRlcntib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt0ZXh0LWFsaWduOmNlbnRlcn0uaXppVG9hc3Qtd3JhcHBlci1jZW50ZXJ7dG9wOjA7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LWZsb3c6Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcn0uaXppVG9hc3QtcnRse2RpcmVjdGlvbjpydGw7cGFkZGluZzo4cHggMCA5cHggNDVweDtmb250LWZhbWlseTpUYWhvbWEsJ0xhdG8nLEFyaWFsfS5pemlUb2FzdC1ydGwgLml6aVRvYXN0LWNvdmVye2xlZnQ6YXV0bztyaWdodDowfS5pemlUb2FzdC1ydGwgLml6aVRvYXN0LWNsb3Nle3JpZ2h0OmF1dG87bGVmdDowfS5pemlUb2FzdC1ydGwgLml6aVRvYXN0LWJvZHl7cGFkZGluZzowIDEwcHggMCAwO21hcmdpbjowIDE2cHggMCAwO3RleHQtYWxpZ246cmlnaHR9Lml6aVRvYXN0LXJ0bCAuaXppVG9hc3QtYm9keSAuaXppVG9hc3QtYnV0dG9ucywuaXppVG9hc3QtcnRsIC5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pbnB1dHMsLml6aVRvYXN0LXJ0bCAuaXppVG9hc3QtYm9keSAuaXppVG9hc3QtbWVzc2FnZSwuaXppVG9hc3QtcnRsIC5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC10ZXh0cywuaXppVG9hc3QtcnRsIC5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC10aXRsZXtmbG9hdDpyaWdodDt0ZXh0LWFsaWduOnJpZ2h0fS5pemlUb2FzdC1ydGwgLml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LWljb257bGVmdDphdXRvO3JpZ2h0OjB9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjU2OHB4KXsuaXppVG9hc3Qtd3JhcHBlcntwYWRkaW5nOjEwcHggMTVweH0uaXppVG9hc3R7bWFyZ2luOjVweCAwO2JvcmRlci1yYWRpdXM6M3B4O3dpZHRoOmF1dG99Lml6aVRvYXN0OmFmdGVye2NvbnRlbnQ6Jyc7ei1pbmRleDotMTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXItcmFkaXVzOjNweDtib3gtc2hhZG93Omluc2V0IDAgLTEwcHggMjBweCAtMTBweCByZ2JhKDAsMCwwLC4yKSxpbnNldCAwIDAgNXB4IHJnYmEoMCwwLDAsLjEpLDAgOHB4IDhweCAtNXB4IHJnYmEoMCwwLDAsLjI1KX0uaXppVG9hc3Q6bm90KC5pemlUb2FzdC1ydGwpIC5pemlUb2FzdC1jb3Zlcntib3JkZXItcmFkaXVzOjNweCAwIDAgM3B4fS5pemlUb2FzdC5pemlUb2FzdC1ydGwgLml6aVRvYXN0LWNvdmVye2JvcmRlci1yYWRpdXM6MCAzcHggM3B4IDB9Lml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLWRhcms6YWZ0ZXJ7Ym94LXNoYWRvdzppbnNldCAwIC0xMHB4IDIwcHggLTEwcHggcmdiYSgyNTUsMjU1LDI1NSwuMyksMCAxMHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yNSl9Lml6aVRvYXN0Lml6aVRvYXN0LWJhbGxvb24gLml6aVRvYXN0LXByb2dyZXNzYmFye2JhY2tncm91bmQ6MCAwfS5pemlUb2FzdC5pemlUb2FzdC1iYWxsb29uOmFmdGVye2JveC1zaGFkb3c6MCAxMHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yNSksaW5zZXQgMCAxMHB4IDIwcHggLTVweCByZ2JhKDAsMCwwLC4yNSl9Lml6aVRvYXN0LXRhcmdldCAuaXppVG9hc3Q6YWZ0ZXJ7Ym94LXNoYWRvdzppbnNldCAwIC0xMHB4IDIwcHggLTEwcHggcmdiYSgwLDAsMCwuMiksaW5zZXQgMCAwIDVweCByZ2JhKDAsMCwwLC4xKX19Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmt7YmFja2dyb3VuZDojNTY1YzcwO2JvcmRlci1jb2xvcjojNTY1YzcwfS5pemlUb2FzdC5pemlUb2FzdC10aGVtZS1kYXJrIC5pemlUb2FzdC10aXRsZXtjb2xvcjojZmZmfS5pemlUb2FzdC5pemlUb2FzdC10aGVtZS1kYXJrIC5pemlUb2FzdC1tZXNzYWdle2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjcpO2ZvbnQtd2VpZ2h0OjMwMH0uaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtY2xvc2V7YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFnQ0FRQUFBRFpjN0ovQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUNCalNGSk5BQUI2SmdBQWdJUUFBUG9BQUFDQTZBQUFkVEFBQU9wZ0FBQTZtQUFBRjNDY3VsRThBQUFBQW1KTFIwUUFBS3FOSXpJQUFBQUpjRWhaY3dBQURkY0FBQTNYQVVJb20zZ0FBQUFIZEVsTlJRZmdDUjRPSVFJUFNhbzZBQUFBd0VsRVFWUkl4NzJWVVE2RUlBd0ZtejJYQitBQ29uaGp6cVRKN0plR0toTFlseXgvQkdkb0JWcGpJcE1KTmpnSVpES1RrUUhZbVlmd21SMkFmQXFHRkJjTzJRalhaQ2QyNGJFZ2d2ZDFLQngreGx3b0RwWW12bkJVVXk2OERZWEQ3N0VTcjhXRHRZcXZ4UmV4N2E4b0hQNFdvMU1rdDVJNjhNYytxWXF2MWg1T3NabVpzUTNnai8wMmg2Y08vS0VZeDI5aHUzUitWVFR3ejZEM1R5bUlQMUU4UnZFaWlWZFpmRXppY3hZTGlsalN4S0lxbG5XNXNlaXRUVzZ1WW52L0FxaDR3aFgzbUVVckFBQUFKWFJGV0hSa1lYUmxPbU55WldGMFpRQXlNREUyTFRBNUxUTXdWREUwT2pNek9qQXlLekF5T2pBd2w2Uk1WZ0FBQUNWMFJWaDBaR0YwWlRwdGIyUnBabmtBTWpBeE5pMHdPUzB6TUZReE5Eb3pNem93TWlzd01qb3dNT2I1OU9vQUFBQVpkRVZZZEZOdlpuUjNZWEpsQUhkM2R5NXBibXR6WTJGd1pTNXZjbWViN2p3YUFBQUFBRWxGVGtTdVFtQ0MpIG5vLXJlcGVhdCA1MCUgNTAlO2JhY2tncm91bmQtc2l6ZTo4cHh9Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWljb257Y29sb3I6I2ZmZn0uaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtaWNvbi5pY28taW5mb3tiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQU1BQUFDZHQ0SHNBQUFBZmxCTVZFVUFBQUQvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3Zyb2FTQUFBQUtYUlNUbE1BNlBzSXZEb2IrT2FwYXZWaFdSWVBySXJ5Mk14R1E5N2N6c096cEphTWNFMHFKUU93VnRLamZ4Q1ZGZUlBQUFJM1NVUkJWRmpEbEpQWnNvSXdFRVRuQ2lHeWI4cStxbWpsLzMvd0ZtR0t3akJST1M5UVdidG5PcURER1BxNE1kTWtTYzBtN2djRERoRjROUmR2OE5vTDRFY01wem9KZ2xQbC9LVER6NFdXM0lkdlhFdnhrZklLbjdCTVpiMWJGSzR5WkZxZ2haMDNqazBuRzhONU5Cd3p4OXhVNWN4QWc4ZlhpMjAvaERkQzMxNmxjQThvN3QxNmVSdVF2VzFYR2QyZDJQOFFTSFFERGJkSUlJLzlDUjNsVUYrbGJ1Y2ZKeTRXZk1TNjRFSlBPUm5yWnh0ZmMycGpKZG5idWFnczNsMDRUVHRKTVhyZFRwaDRQeWc0WEFqdWdBSnFNRGY1UmYrb1h4Mi9xaTR1Nm5pcGFrSWk3Q3NnaXVNU0VGOUlHS2c4aGVRSktreElmRlNVVS9lZ1dTd05yUzFmUER0TGZvbjhzWk9jWVVRbWwxUXY5YTNrZndzRVV5SkVNZ0ZCS3pkVjhvM0l3OXlBamcxamRMUUNWNHFiZDNubzh5RDJHdWdhQzNvTWJGME5ZSENwSllTRGhOSTVOMkRBV0I0RjR6OUFqLzA0Q25hL3g3ZVZBUTE3dlJqUVpQaCtHL2tkZFl2MGg0OXlZNE5XTkRXTU1PTVVJUll2bFRFQ21yTjhwVUFqbzVSQ01uOEtvUG1iSi8rQXBwZ25rLy9TeTkwR1lCQ0dnbTdJQXNrUTdEOWhGS1c0QXBCMWVpM0ZTWUQ5UGpHQUt5Z0FWK0FSRllCSDVCc1ZnRzlra0JTQVFXS1VGWUJSWnBrVWdHVmluUldBZFVaUURBQkJRZEljQUVsRFZCVUFVVVhXSFFCWngxZ01BR01wck0wQXNMYlZYSHNBNXRyWmU5My93cDNzdlEwWU5iL2pXVjNBSU9Mc010bHpuU05PSDdKcWpPcERWaDd6OHFDWlIxMGZ0dk80bnhlT3ZQTGtwU3V2ZlhueHpLdHZYcjdqK3Y4QzVpaTBlNzFBdDdjQUFBQUFTVVZPUks1Q1lJST0pIG5vLXJlcGVhdCA1MCUgNTAlO2JhY2tncm91bmQtc2l6ZTo4NSV9Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWljb24uaWNvLXdhcm5pbmd7YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFUUFBQUJFQ0FNQUFBQVB6V09BQUFBQWxsQk1WRVVBQUFELy8vLysvLzMrLy8zKy8vMy8vLy8vLy96Ky8vMysvLzMrLy8zLy8vLy8vLy8vLy8vOS8vMy8vLy8rLy8zOS8vMy8vLzMvLy8vLy8vLy8vLy8rLy8zKy8vMzkvLzMvLy96Ky8veisvLzcvLy8zLy8vMy8vLzMvLy8zLy8vLy8vLy8rLy8zKy8vMysvLzMrLy96Ky8vMysvLzcvLy8zLy8vei8vLy8vLy8vKy8vNzkvLzMvLy8zLy8vei8vL3YrLy8zLy8vK3RyWG91QUFBQU1IUlNUbE1BQitqODdSQmYrUFhpQ3dRQ2xTUFloa0F6SnhueDA1dFN5YWR6Y214bUhSYnA1ZDdHd3JoNFREa3ZzWXQvV2tkUXpDSVRBQUFCMVVsRVFWUll3KzNYYVhLQ1FCQ0dZU0lJaWdob3hDVnFOSnJFUGZseS84dkZJbUtYZHVOc2YvTWM0SzF5N0Zud2xNTFFjL2JVYmo4NVI2YkExTFhSRElDZzZSakpjWmE3TlFZdG5MVUdUcEVSU2lPWHhyT1BrdjlzMzBpR0tEbXRiWWlyM0g3T1VISmEyeWxBdXZaelJ2elVmczdJaS8yY2dmVHQ1NHg4MnM4WlNNODQ4Z0ptWXRyb1F6QTJqSHdBK0xrQklFdU1HdCtRSW5nMWlnemx5TXJrdVAyQ3lPaTQ3YXhSYVlUTDVqaERKZWhvUithb3ZDMjlzM2lJeWx5M0ViK2hSQ3ZabzJxc0dUbmhLcjJjTERTK0o3M0dzcUJJOVc4MFVDbVdXcEV1aElqaDZaUkdqeU5SYXJqektHSjJPdTJoaW1DdmpId3FJK3JUcVFkbFJIMDZUWlFSOWVrMGhpcWlQcDA2bVY0a2U3UVBYNkVSVVp4TzhVbzNzcXJmaHh2b1JyQ3B2WHdML1VqUjlHUkhNSXZMZ2tlNGQ1UWJpd2hNNkpWMllLS0Y0dklsN1hJQmt3bTRrZXJ5SlZtdmsvVGZ3Y21Qd1FOa1VRdXlBMi9zWUd3blhMN0dQdTRiVzFqWXNtZXZyTmowOS9NR1pNT0VQWHNsUVZxTzhocXlrRDE3SmZQSFAvYm1vMnlHR3BkWmlIM0ladnpaYTdCMytJZERqanBqZXNISmN2YnM1ZFovZStjZGRWb0RkdmxxN3gxMk5hYytpTjdlNFI4T1hUanAwcHc1Q0duT0xOREV6ZUJzNWdWd0ZuaUFPKzhmOHd2ZmVYUDJoeXFubXdBQUFBQkpSVTVFcmtKZ2dnPT0pIG5vLXJlcGVhdCA1MCUgNTAlO2JhY2tncm91bmQtc2l6ZTo4NSV9Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWljb24uaWNvLWVycm9ye2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBTUFBQUNkdDRIc0FBQUFlRkJNVkVVQUFBRC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL0dxT1NzQUFBQUozUlNUbE1BM0JzQjk4UVY4dVN5V1ZVRno2UnhZd3pZdmJ1cG1ZcUFhVTFGUVRYS3Y3YWJqNGQxYXpLTlVpdDNBQUFDWkVsRVFWUll3N1dYYVpPQ01BeUd3MzBVT1JSUUJMeFgvdjgvM0JrYVdqclkyc3pPNW90S2ZHcnpKckVwNkt3NkY4ZjhzSStpL1NFL0Z1Y0tTQmFXaVQ4cDVpZGxhRXRuWFRCOXRLRExMSEF2ZFNhdE9hbjNqZTkzazlGMnZSRjM2K21yMWE2ZUgyTkZOeWRvSHEvaWVVL1VYY1dqams5WHlrZE5XcTJ5d3RwNHRYTDZXYjJUL01xdHp6WnV0c3JOeWZ2QTUxS29RUk9oVkNqZnJuQVNJUnBTVlVaaUQ1djRSYldFeGpSZEp6U21Pc1pGdnpZejU5a1JTcjZWNXpFKy9RRUxIa05kYjNWUng0NUhTMWIxdSt6ZmtrY2JSQVozcUo5bC9BNHFlZkhVRE1TaEplKzZrWktKREQycExROVE0bHUrNVE3cno3UGxwZXJkN0F0UUVnSVBJNm8yZHhyMkQ0R1h2eHFDaUtjbjhjRDRneElBRXQ3L0dZa0hMMTZLcWVKZDBOQjRnSmJYZmdWbnpDR0psekdjb2NDVlNMelV2b0FqOXhKNE5GNy9SOGd4b1ZRZXhjL2hnQnBTZWJqUGpnUHM1OWNIbVlmbjdOa0RiNndYbVVmMUkxeWdJUFB3NGd0Z0NFOHlEdzhlQW9wNEovUFFjQkV4alFtWngzN01zWkIyWkI0Y0xLUUNHNXZLWXhNV1N6TXhJZzhwTnRPeVVrdmtvY0VtWEdvNjltaDhGZ254UzR5QndNdkRySlNOSFpCNHVDM2F5ei9Za2NJUDRsZmx3VklUK09VMDdaU2pyYlRrWlE2ZFRQa1l1Ylo4R0MvQ3F4dTZXdkpaSUk5M2RjQ3c0NkdkTnFkcFRlRi90aU1PdURHQjl6L05JNk52eVdldEdQTTBnK2JWTmVvdkJtYW1IWFdqMG5DYkVhR2VUTU4yUFdycWQ2Y00yNlp4UDJEZUp2aitwaC8zMFppL0dtUmJ0bEs1U3B0SStud0dHbnZINmdVcnVUK0wxNk1KSEYrNThyd05JaWZUVjB2TTgraHdNZU9YQWI2WXgwd1hUK2I5OTlXWGZ2bis4L1gvRjdmV3pqZFRvcmQ1QUFBQUFFbEZUa1N1UW1DQykgbm8tcmVwZWF0IDUwJSA1MCU7YmFja2dyb3VuZC1zaXplOjgwJX0uaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtaWNvbi5pY28tc3VjY2Vzc3tiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFCQU1BQUFCWVIyenRBQUFBSVZCTVZFVUFBQUQvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vUElldjVBQUFBQ25SU1RsTUFwQVBoSUZuODJ3Z0d2OG1WdHdBQUFLVkpSRUZVU01mdDBMRUpBa0VBUk5GRkZFdzFORkpiOENLakF5MUFFT3pBeE53K2JFRUVnNm55RmpiWTRMT3pjQndYN1MvZ3dVeG9UZEluK0pidjRMdjhieDQ0NitrQjZWc0J0SzBCK3diTUNLeHJ3TDMzd09yVmVlQ2hYMjhuN0tUT1RqZ29FdTZEUlNZQWdBQUFBa0FtQUlBQUFBSUFDUUlrTWtBQ0FBZ0FJQUNBeUVDQktBT0p1Q2FnVEp3U1VDYVVBRU1BQUJFQlJ3QUFFUUZMYkNKZ080YlcrQVpLR25rdFIrakFGQUFBQUFCSlJVNUVya0pnZ2c9PSkgbm8tcmVwZWF0IDUwJSA1MCU7YmFja2dyb3VuZC1zaXplOjg1JX0uaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtaWNvbi5pY28tcXVlc3Rpb257YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FRQUFBQUFZTGxWQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUNCalNGSk5BQUI2SmdBQWdJUUFBUG9BQUFDQTZBQUFkVEFBQU9wZ0FBQTZtQUFBRjNDY3VsRThBQUFBQW1KTFIwUUFBS3FOSXpJQUFBQUpjRWhaY3dBQURkY0FBQTNYQVVJb20zZ0FBQUFIZEVsTlJRZmhDUWtVRWcxOHZraStBQUFFVFVsRVFWUm8zczFaVFdoYlJ4RCtWbEl1eHNMRkNZVklJUVlWb3BCRG9LNWJLRFdVQnVwRE1OYko1RkJLZy9GQnppVVFkRTl5YUMrRkhCcndzZENmUTlSVEdvTHh3V2wrRHFIRW9qVUZGeWR4bkI5YkluWkRxT3NFckJycjZ5R3ZzL3VlWDk3YmxkVEtvNFBlN3B1WmIzWjMzczdzcklJak1ZMWp5Q0VqUDZJbXZ5WDhwRjY0YXJTSHpuS0MwNnd6aWpZNXhTS3o3WWJ1WW9rVjJsT0RzeXl4cXozZ1NZNno2Z0N1cWNweEpsdUZIK1o4VStELzBqeUhveEZVQkhnZnZzR0hJUzlXTUlVbFZGRkRGVFVBR1dTUlFSWTVITWVCRVA2YitFdzlkaC83SU5kMmpHZU81OWtmS2RYUDg1emJJYmZHUVZmNHNZQzNOMWhtM2xvNnp6SWJQdms2eCt6Qms3d1FHTUVNQjV4bmNJQXpBUzBYckZ5U1NWNzJpUzF5eUJWY2RBMXgwYWZyc29VSmdkRmZZMit6OEFEQVhsN3p6MEtjd0ppUGZaS3BWdUFCZ0NsTytuUkcrUUlIRGRmYjRxbFd3VVh2S1c0Wjd2aTZMNEo5dmcrdmJmQ2VDZVpIMlJmT2RNT2MvSGJDQTRCdklXNkVNUXo3WEsvbHRkK2hQK1Z6UjltZ3ZhMllTZnlHSTE3ZkE3eW5ub2NxZVFORmZJSjBvSHNkdjZDQzIrclhHQk42Y1FkdmVZM2ZjVlJ0bXkvSERldGUrOTN6eThqQTh6VjdZa3dZTXJqSHpSZGRSc0NkaVZDd3dtaDZ3ZzlpVE5DN1k5WElGMWlTN2tiVXBzdnZHRWRQdVRmU2dBRWpScFIwOTZ4MGxpUEZEL0VxdDJOTXVCUXpCMlhockFDQUFwakZzdVFGaDlYZEdBWDcwQjNvU3VOZG5NVkJhWCtzb3BZeGp3VnBIRkJWQUN5S1RYTm9rdGpEKzZMbDh4aGVuUzlNQUFrQUkvTHV4MllOVU9zNEk0MTNZcGcxU2dFQXU3a3BGdldqYWVKZTBmSkhER2UvY05hWkJrZWt1ZHc4UE1BKzBmTXdsbmRaZUFzSjVLUi9xaFVEVUpDblNpeXZSc29sa0pIR1VndmpIOFFYRGdab3BFektNS0RxQ0tyd0VRNEM2TUg3R0VYQzY2NWJ1TEpHOGhsUWM0TFA0cGF4ZkpyT3FZVllZWTJVQVJmRUlhelRiZ0RnMmRCOThHZWJ6SmQ1NGI4TC9pV05kTHlvb2VSNkNIeVorNnhrMHlLeGtZZzZuRVZTVUc0Vko5UUo5Y3hSQ3hPKzlXaU95dmdVZWV4WFAxaExHSDVuR3VCV1Z0aVNwNHZxZTNWUDBVRldJOVdhbjRFcjN2OHE3ampQV1Z0bTRGdGNRUU1yT0tPMm5PUUNNNUF5RE1pNTZGRHJLSEEvMW55cHBTMXBwQnBZYUU4d2NpRWpHSTJBYWVNNDFrSTRkb0RYNFhpVDNRbTFnZXZ5cnVDZ1pnOVA4eEl2OG0xbkN6VEtxNm9pSjl4VE1pWjUwNVA1bThjZFowQ25aTVZYSFZsak03V01CenhweUR4eWd0ZHhvQ0VGVGFNSVdiWlU4NVV2QmpnVU1ZeTBmQmFBRjhWMUxqOXFXUTFhTVo1ZjRrOXIrQUdNU2tNUDF2Wm9aaWg2azZzaWNjNWgvT0ZITTl2RHFVL1ZJVTd6SlpkWVlzS0dINGc0bkFKTUdpWFpSZHMxcFZNb1o2OVJNNXZma2JoMHFrQmhzblMyUkxNTGlsUWRMOU1CSFM5VUFoMHYxZTZDWW5YSHkvV2VlQ2N2TER3bC85T1Z6ZTY5dFBLTStNK3Y3ZUpONk96RnBXZEVGMHVjRGJoVk5GWGFkblZybUpGbGtWTkdUUzJNNnB6bWhNdmx0ZlBobk4yQjYzc1Z1TDdmY05QM0QxVFNrMmlob3NQckFBQUFKWFJGV0hSa1lYUmxPbU55WldGMFpRQXlNREUzTFRBNUxUQTVWREl3T2pFNE9qRXpLekF5T2pBd2VPUjduUUFBQUNWMFJWaDBaR0YwWlRwdGIyUnBabmtBTWpBeE55MHdPUzB3T1ZReU1Eb3hPRG94TXlzd01qb3dNQW01d3lFQUFBQVpkRVZZZEZOdlpuUjNZWEpsQUhkM2R5NXBibXR6WTJGd1pTNXZjbWViN2p3YUFBQUFBRWxGVGtTdVFtQ0MpIG5vLXJlcGVhdCA1MCUgNTAlO2JhY2tncm91bmQtc2l6ZTo4NSV9Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWJ1dHRvbnM+YSwuaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtYnV0dG9ucz5idXR0b24sLml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWJ1dHRvbnM+aW5wdXR7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjEpfS5pemlUb2FzdC5pemlUb2FzdC10aGVtZS1kYXJrIC5pemlUb2FzdC1idXR0b25zPmE6aG92ZXIsLml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWJ1dHRvbnM+YnV0dG9uOmhvdmVyLC5pemlUb2FzdC5pemlUb2FzdC10aGVtZS1kYXJrIC5pemlUb2FzdC1idXR0b25zPmlucHV0OmhvdmVye2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWJ1dHRvbnM+YTpmb2N1cywuaXppVG9hc3QuaXppVG9hc3QtdGhlbWUtZGFyayAuaXppVG9hc3QtYnV0dG9ucz5idXR0b246Zm9jdXMsLml6aVRvYXN0Lml6aVRvYXN0LXRoZW1lLWRhcmsgLml6aVRvYXN0LWJ1dHRvbnM+aW5wdXQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNil9Lml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLXJlZHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDE3NSwxODAsLjkpO2JvcmRlci1jb2xvcjpyZ2JhKDI1NSwxNzUsMTgwLC45KX0uaXppVG9hc3QuaXppVG9hc3QtY29sb3Itb3Jhbmdle2JhY2tncm91bmQ6cmdiYSgyNTUsMjA3LDE2NSwuOSk7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDIwNywxNjUsLjkpfS5pemlUb2FzdC5pemlUb2FzdC1jb2xvci15ZWxsb3d7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNDksMTc4LC45KTtib3JkZXItY29sb3I6cmdiYSgyNTUsMjQ5LDE3OCwuOSl9Lml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLWJsdWV7YmFja2dyb3VuZDpyZ2JhKDE1NywyMjIsMjU1LC45KTtib3JkZXItY29sb3I6cmdiYSgxNTcsMjIyLDI1NSwuOSl9Lml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLWdyZWVue2JhY2tncm91bmQ6cmdiYSgxNjYsMjM5LDE4NCwuOSk7Ym9yZGVyLWNvbG9yOnJnYmEoMTY2LDIzOSwxODQsLjkpfS5pemlUb2FzdC5pemlUb2FzdC1sYXlvdXQyIC5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1tZXNzYWdlLC5pemlUb2FzdC5pemlUb2FzdC1sYXlvdXQyIC5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC10ZXh0c3t3aWR0aDoxMDAlfS5pemlUb2FzdC5pemlUb2FzdC1sYXlvdXQze2JvcmRlci1yYWRpdXM6MnB4fS5pemlUb2FzdC5pemlUb2FzdC1sYXlvdXQzOjphZnRlcntkaXNwbGF5Om5vbmV9Lml6aVRvYXN0IC5yZXZlYWxJbiwuaXppVG9hc3QucmV2ZWFsSW57LXdlYmtpdC1hbmltYXRpb246aXppVC1yZXZlYWxJbiAxcyBjdWJpYy1iZXppZXIoLjI1LDEuNiwuMjUsMSkgYm90aDstbW96LWFuaW1hdGlvbjppemlULXJldmVhbEluIDFzIGN1YmljLWJlemllciguMjUsMS42LC4yNSwxKSBib3RoO2FuaW1hdGlvbjppemlULXJldmVhbEluIDFzIGN1YmljLWJlemllciguMjUsMS42LC4yNSwxKSBib3RofS5pemlUb2FzdCAuc2xpZGVJbiwuaXppVG9hc3Quc2xpZGVJbnstd2Via2l0LWFuaW1hdGlvbjppemlULXNsaWRlSW4gMXMgY3ViaWMtYmV6aWVyKC4xNiwuODEsLjMyLDEpIGJvdGg7LW1vei1hbmltYXRpb246aXppVC1zbGlkZUluIDFzIGN1YmljLWJlemllciguMTYsLjgxLC4zMiwxKSBib3RoO2FuaW1hdGlvbjppemlULXNsaWRlSW4gMXMgY3ViaWMtYmV6aWVyKC4xNiwuODEsLjMyLDEpIGJvdGh9Lml6aVRvYXN0LmJvdW5jZUluTGVmdHstd2Via2l0LWFuaW1hdGlvbjppemlULWJvdW5jZUluTGVmdCAuN3MgZWFzZS1pbi1vdXQgYm90aDthbmltYXRpb246aXppVC1ib3VuY2VJbkxlZnQgLjdzIGVhc2UtaW4tb3V0IGJvdGh9Lml6aVRvYXN0LmJvdW5jZUluUmlnaHR7LXdlYmtpdC1hbmltYXRpb246aXppVC1ib3VuY2VJblJpZ2h0IC44NXMgZWFzZS1pbi1vdXQgYm90aDthbmltYXRpb246aXppVC1ib3VuY2VJblJpZ2h0IC44NXMgZWFzZS1pbi1vdXQgYm90aH0uaXppVG9hc3QuYm91bmNlSW5Eb3duey13ZWJraXQtYW5pbWF0aW9uOml6aVQtYm91bmNlSW5Eb3duIC43cyBlYXNlLWluLW91dCBib3RoO2FuaW1hdGlvbjppemlULWJvdW5jZUluRG93biAuN3MgZWFzZS1pbi1vdXQgYm90aH0uaXppVG9hc3QuYm91bmNlSW5VcHstd2Via2l0LWFuaW1hdGlvbjppemlULWJvdW5jZUluVXAgLjdzIGVhc2UtaW4tb3V0IGJvdGg7YW5pbWF0aW9uOml6aVQtYm91bmNlSW5VcCAuN3MgZWFzZS1pbi1vdXQgYm90aH0uaXppVG9hc3QgLmZhZGVJbiwuaXppVG9hc3QuZmFkZUluey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZUluIC41cyBlYXNlIGJvdGg7YW5pbWF0aW9uOml6aVQtZmFkZUluIC41cyBlYXNlIGJvdGh9Lml6aVRvYXN0LmZhZGVJblVwey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZUluVXAgLjdzIGVhc2UgYm90aDthbmltYXRpb246aXppVC1mYWRlSW5VcCAuN3MgZWFzZSBib3RofS5pemlUb2FzdC5mYWRlSW5Eb3duey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZUluRG93biAuN3MgZWFzZSBib3RoO2FuaW1hdGlvbjppemlULWZhZGVJbkRvd24gLjdzIGVhc2UgYm90aH0uaXppVG9hc3QuZmFkZUluTGVmdHstd2Via2l0LWFuaW1hdGlvbjppemlULWZhZGVJbkxlZnQgLjg1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBib3RoO2FuaW1hdGlvbjppemlULWZhZGVJbkxlZnQgLjg1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBib3RofS5pemlUb2FzdC5mYWRlSW5SaWdodHstd2Via2l0LWFuaW1hdGlvbjppemlULWZhZGVJblJpZ2h0IC44NXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSkgYm90aDthbmltYXRpb246aXppVC1mYWRlSW5SaWdodCAuODVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpIGJvdGh9Lml6aVRvYXN0LmZsaXBJblh7LXdlYmtpdC1hbmltYXRpb246aXppVC1mbGlwSW5YIC44NXMgY3ViaWMtYmV6aWVyKC4zNSwwLC4yNSwxKSBib3RoO2FuaW1hdGlvbjppemlULWZsaXBJblggLjg1cyBjdWJpYy1iZXppZXIoLjM1LDAsLjI1LDEpIGJvdGh9Lml6aVRvYXN0LmZhZGVPdXR7LXdlYmtpdC1hbmltYXRpb246aXppVC1mYWRlT3V0IC43cyBlYXNlIGJvdGg7YW5pbWF0aW9uOml6aVQtZmFkZU91dCAuN3MgZWFzZSBib3RofS5pemlUb2FzdC5mYWRlT3V0RG93bnstd2Via2l0LWFuaW1hdGlvbjppemlULWZhZGVPdXREb3duIC43cyBjdWJpYy1iZXppZXIoLjQsLjQ1LC4xNSwuOTEpIGJvdGg7YW5pbWF0aW9uOml6aVQtZmFkZU91dERvd24gLjdzIGN1YmljLWJlemllciguNCwuNDUsLjE1LC45MSkgYm90aH0uaXppVG9hc3QuZmFkZU91dFVwey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZU91dFVwIC43cyBjdWJpYy1iZXppZXIoLjQsLjQ1LC4xNSwuOTEpIGJvdGg7YW5pbWF0aW9uOml6aVQtZmFkZU91dFVwIC43cyBjdWJpYy1iZXppZXIoLjQsLjQ1LC4xNSwuOTEpIGJvdGh9Lml6aVRvYXN0LmZhZGVPdXRMZWZ0ey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZU91dExlZnQgLjVzIGVhc2UgYm90aDthbmltYXRpb246aXppVC1mYWRlT3V0TGVmdCAuNXMgZWFzZSBib3RofS5pemlUb2FzdC5mYWRlT3V0UmlnaHR7LXdlYmtpdC1hbmltYXRpb246aXppVC1mYWRlT3V0UmlnaHQgLjVzIGVhc2UgYm90aDthbmltYXRpb246aXppVC1mYWRlT3V0UmlnaHQgLjVzIGVhc2UgYm90aH0uaXppVG9hc3QuZmxpcE91dFh7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2JhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7LXdlYmtpdC1hbmltYXRpb246aXppVC1mbGlwT3V0WCAuN3MgY3ViaWMtYmV6aWVyKC40LC40NSwuMTUsLjkxKSBib3RoO2FuaW1hdGlvbjppemlULWZsaXBPdXRYIC43cyBjdWJpYy1iZXppZXIoLjQsLjQ1LC4xNSwuOTEpIGJvdGh9Lml6aVRvYXN0LW92ZXJsYXkuZmFkZUluey13ZWJraXQtYW5pbWF0aW9uOml6aVQtZmFkZUluIC41cyBlYXNlIGJvdGg7YW5pbWF0aW9uOml6aVQtZmFkZUluIC41cyBlYXNlIGJvdGh9Lml6aVRvYXN0LW92ZXJsYXkuZmFkZU91dHstd2Via2l0LWFuaW1hdGlvbjppemlULWZhZGVPdXQgLjdzIGVhc2UgYm90aDthbmltYXRpb246aXppVC1mYWRlT3V0IC43cyBlYXNlIGJvdGh9QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtcmV2ZWFsSW57MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsMSl9dG97b3BhY2l0eToxfX1ALW1vei1rZXlmcmFtZXMgaXppVC1yZXZlYWxJbnswJXtvcGFjaXR5OjA7LW1vei10cmFuc2Zvcm06c2NhbGUzZCguMywuMywxKX10b3tvcGFjaXR5OjF9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULXNsaWRlSW57MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUAtbW96LWtleWZyYW1lcyBpemlULXNsaWRlSW57MCV7b3BhY2l0eTowOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCl9dG97b3BhY2l0eToxOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWJvdW5jZUluTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgyODBweCl9NTAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMHB4KX03MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMHB4KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1ib3VuY2VJblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yODBweCl9NTAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDIwcHgpfTcwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMHB4KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1ib3VuY2VJbkRvd257MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTIwMHB4KX01MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTBweCl9NzAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5VcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgyMDBweCl9NTAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KX03MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSg1cHgpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1mYWRlSW5VcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJbkRvd257MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJbkxlZnR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZsaXBJblh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTtvcGFjaXR5OjB9NDAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDEwZGVnKTtvcGFjaXR5OjF9ODAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtNWRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZU91dERvd257MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZU91dFVwezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZU91dExlZnR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZsaXBPdXRYezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfTMwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyk7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7b3BhY2l0eTowfX1ALW1vei1rZXlmcmFtZXMgaXppVC1yZXZlYWxJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsMSl9dG97b3BhY2l0eToxfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1yZXZlYWxJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsMSl9dG97b3BhY2l0eToxfX1ALW8ta2V5ZnJhbWVzIGl6aVQtcmV2ZWFsSW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLDEpfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyBpemlULXJldmVhbEluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywxKX10b3tvcGFjaXR5OjF9fUAtbW96LWtleWZyYW1lcyBpemlULXNsaWRlSW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDUwcHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtc2xpZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1ALW8ta2V5ZnJhbWVzIGl6aVQtc2xpZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1Aa2V5ZnJhbWVzIGl6aVQtc2xpZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1ALW1vei1rZXlmcmFtZXMgaXppVC1ib3VuY2VJbkxlZnR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDI4MHB4KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTBweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWJvdW5jZUluTGVmdHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjgwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMHB4KX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC1vLWtleWZyYW1lcyBpemlULWJvdW5jZUluTGVmdHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjgwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMHB4KX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QGtleWZyYW1lcyBpemlULWJvdW5jZUluTGVmdHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjgwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMHB4KX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC1tb3ota2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5SaWdodHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTI4MHB4KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDIwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTBweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWJvdW5jZUluUmlnaHR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yODBweCl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwcHgpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX1ALW8ta2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5SaWdodHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTI4MHB4KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDIwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTBweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUBrZXlmcmFtZXMgaXppVC1ib3VuY2VJblJpZ2h0ezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjgwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjBweCl9NzAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMHB4KX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC1tb3ota2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5Eb3duezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjAwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTBweCl9NzAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01cHgpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1ib3VuY2VJbkRvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yMDBweCl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUAtby1rZXlmcmFtZXMgaXppVC1ib3VuY2VJbkRvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yMDBweCl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgaXppVC1ib3VuY2VJbkRvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yMDBweCl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUAtbW96LWtleWZyYW1lcyBpemlULWJvdW5jZUluVXB7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDIwMHB4KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KX03MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5VcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMjAwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSg1cHgpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX1ALW8ta2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5VcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMjAwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSg1cHgpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX1Aa2V5ZnJhbWVzIGl6aVQtYm91bmNlSW5VcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMjAwcHgpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpfTcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSg1cHgpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX1ALW1vei1rZXlmcmFtZXMgaXppVC1mYWRlSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZUluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUAtby1rZXlmcmFtZXMgaXppVC1mYWRlSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyBpemlULWZhZGVJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1ALW1vei1rZXlmcmFtZXMgaXppVC1mYWRlSW5VcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJblVwezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QC1vLWtleWZyYW1lcyBpemlULWZhZGVJblVwezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QGtleWZyYW1lcyBpemlULWZhZGVJblVwezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QC1tb3ota2V5ZnJhbWVzIGl6aVQtZmFkZUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QC1vLWtleWZyYW1lcyBpemlULWZhZGVJbkRvd257MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUBrZXlmcmFtZXMgaXppVC1mYWRlSW5Eb3duezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX1ALW1vei1rZXlmcmFtZXMgaXppVC1mYWRlSW5MZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgzMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgzMDBweCwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1mYWRlSW5MZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgzMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgzMDBweCwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX1ALW8ta2V5ZnJhbWVzIGl6aVQtZmFkZUluTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzAwcHgsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QGtleWZyYW1lcyBpemlULWZhZGVJbkxlZnR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtbW96LWtleWZyYW1lcyBpemlULWZhZGVJblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVJblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUAtby1rZXlmcmFtZXMgaXppVC1mYWRlSW5SaWdodHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0zMDBweCwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX1Aa2V5ZnJhbWVzIGl6aVQtZmFkZUluUmlnaHR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0zMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwcHgsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QC1tb3ota2V5ZnJhbWVzIGl6aVQtZmxpcEluWHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpfTYwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsMTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC01ZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC01ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmxpcEluWHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpfTYwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsMTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC01ZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC01ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX19QC1vLWtleWZyYW1lcyBpemlULWZsaXBJblh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTtvcGFjaXR5OjB9NDAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDEwZGVnKTtvcGFjaXR5OjF9ODAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtNWRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fUBrZXlmcmFtZXMgaXppVC1mbGlwSW5YezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7b3BhY2l0eTowfTQwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyl9NjAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwxMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwxMGRlZyk7b3BhY2l0eToxfTgwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTVkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfX1ALW1vei1rZXlmcmFtZXMgaXppVC1mYWRlT3V0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19QC1vLWtleWZyYW1lcyBpemlULWZhZGVPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19QGtleWZyYW1lcyBpemlULWZhZGVPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19QC1tb3ota2V5ZnJhbWVzIGl6aVQtZmFkZU91dERvd257MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX19QC13ZWJraXQta2V5ZnJhbWVzIGl6aVQtZmFkZU91dERvd257MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX19QC1vLWtleWZyYW1lcyBpemlULWZhZGVPdXREb3duezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9fUBrZXlmcmFtZXMgaXppVC1mYWRlT3V0RG93bnswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfX1ALW1vei1rZXlmcmFtZXMgaXppVC1mYWRlT3V0VXB7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1mYWRlT3V0VXB7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfX1ALW8ta2V5ZnJhbWVzIGl6aVQtZmFkZU91dFVwezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX19QGtleWZyYW1lcyBpemlULWZhZGVPdXRVcHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9fUAtbW96LWtleWZyYW1lcyBpemlULWZhZGVPdXRMZWZ0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDBweCwwLDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgaXppVC1mYWRlT3V0TGVmdHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwcHgsMCwwKX19QC1vLWtleWZyYW1lcyBpemlULWZhZGVPdXRMZWZ0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDBweCwwLDApfX1Aa2V5ZnJhbWVzIGl6aVQtZmFkZU91dExlZnR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCl9fUAtbW96LWtleWZyYW1lcyBpemlULWZhZGVPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCl9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZhZGVPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMHB4LDAsMCl9fUAtby1rZXlmcmFtZXMgaXppVC1mYWRlT3V0UmlnaHR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDBweCwwLDApfX1Aa2V5ZnJhbWVzIGl6aVQtZmFkZU91dFJpZ2h0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwcHgsMCwwKX19QC1tb3ota2V5ZnJhbWVzIGl6aVQtZmxpcE91dFh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9MzAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKTtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTtvcGFjaXR5OjB9fUAtd2Via2l0LWtleWZyYW1lcyBpemlULWZsaXBPdXRYezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfTMwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyk7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCw5MGRlZyk7b3BhY2l0eTowfX1ALW8ta2V5ZnJhbWVzIGl6aVQtZmxpcE91dFh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9MzAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsLTIwZGVnKTtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLDkwZGVnKTtvcGFjaXR5OjB9fUBrZXlmcmFtZXMgaXppVC1mbGlwT3V0WHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX0zMCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsMCwwLC0yMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLDAsMCwtMjBkZWcpO29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwwLDAsOTBkZWcpO29wYWNpdHk6MH19"}},"time_used":69,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":68,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/language/660b94fa876ac1712035066.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.857Z","timestamp":1785143153857,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/language/660b94fa876ac1712035066.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"304-67b374e4-e0da88847bae6795;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 772\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":772,"size_decoded":1166,"mime_type":"image/png","magic":"PNG image data, 50 x 50, 8-bit/color RGBA, non-interlaced","md5":"942a21b1e81a5311d07f73297a703047","sha1":"b99b72497f3aa5722940353425500cf3fba93488","sha256":"2475ac5d777c954b0d01225c637e53d65337402bb6dd4cb29ae2f4bee7ced4d6","sha512":"14f788a52e131114a10df5ecb9330b24ad8cfd87ac4f1de124b071a2cd5b75ac7924c17da3f99518cef8758db04054f7be289e904bdbaaaafd761dbfc4773215","ssdeep":"","tlshash":"630141d5d354524198b91eb9205740219630c2a2ce9e6bba093194379e1ce92265c394","first_seen":"2025-03-04T08:36:16.683249Z","last_seen":"2026-07-27T12:26:13.457573Z","times_seen":125,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACtklEQVRoge3aT0gUYRzG8e++bO0au2BJZavQQVrFtg0CveVJEDsXUkvlUSMzqNCLh0ioqINmqIcg+7NWeI1I8JSXMAjURViDLqVWkgRuuBU5HWQWh133nXFn1jfZ5zYzP953PjPvDPO+jOvTzX6tvLOV9VlcSlAf6WE6Po/VVB86QGy0i7nbg3y+NWA4Vt7ZSllHC6GGG8x8WLDcdigYYCzajjc2Q/z0JVZXkgCUdbQgMnW4d4+PsehljlQGLHfmVLIhyjtbEUDGq6cSRoYAEKLIC6iLMYMAEJXP7qEqxiwCQCRD1aiIsYJYXEog6iO9qIaxiqiP9CBis/OohNkMYjo+v/bWUgWzWQSwBlEBkwvCANlKTK6INMhWYOxAZITkE2MXYkNIPjB2IrJCnMTYjZBCNoMZunNeChm6e85WBID71Ilj0iKAweg4XW2NVD7v4+vDEQBW4h9JTEziqz2aqvN43PJOEz+Ze/GS4oY6APw1YUovnDXUaJrGYHScqopSqipKpW26NE3TTEksJtvEyolIh9b/km0Dcb0tDjsytPKdbXNHChDVUoColgJEtRQgqqXw0ahatg3E3XTxganCw8EAXW2NuFwuw/4vA09ZnpgEQHg9HOy+grtkt6WTSLybYqH/SWp7f/NJ/HW1dN9/TSw+Z6oN98ir99KiUDBA3/WmNMT650AUeQkO9/LX50c2R0z++oPXsyO17asJs6uqItXWj9E3BId7aYkcNz3VlQ4tfaFgX4lfivgdDtF87ZG00+arj/n2fdmwb/2cfXUlyeyZdnZOxUwvaGSFWEWYvXr6goadmA0hTiGcwmSEOI1wApMGyRfCbowBkm+EnZgUZKsQdmGECgg7MEIVRK4YoRIiF4xQDaHHKsbw1lIFoccKJgVRDaHHLCbt7yCVEHrMYITqCD0yzD9iLpEN77RmQwAAAABJRU5ErkJggg=="}},"time_used":54,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":54,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/logo_icon/favicon.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.398Z","timestamp":1785143154398,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/logo_icon/favicon.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos; _ga_SV56JW0DKX=GS2.1.s1785143154$o1$g0$t1785143154$j60$l0$h0; _ga=GA1.1.787021117.1785143154\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 09:05:54 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 06:11:31 GMT\r\netag: \"9a51-67b42493-551b0efcdfc31eaa;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 39505\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":39505,"size_decoded":39902,"mime_type":"image/png","magic":"PNG image data, 456 x 266, 8-bit/color RGBA, non-interlaced","md5":"6421bb957a2b3a5ab85b549647df05ab","sha1":"361ba99e60443f9d993c53c763a3cb9884738d57","sha256":"75cecb95adc960bacb7a1af3580220578459a643808fd4c6343f1c1afdfc2199","sha512":"6fdf8f34cc9da74b5d208caab6bf3b3aa032d055703206e6d389da53531be5b3c41d4f668728dd71350e59588eec25a82449fee81f6e74348b3cc71f2ba6d340","ssdeep":"768:EJ4wQVZN9CHLtvOER2NwhEiHV+Zgrwfq88Te+x3LELked7SCPVvOy5z3H3HOmZC+:g4rXSLdNXhEiHScwC7e+x3L+NSCPhbRj","tlshash":"2a03021882b78f874517c3961067e9c92dce20cce2764bf5218b29ac2b6a5df6d0fc0c","first_seen":"2025-12-19T04:10:18.946234Z","last_seen":"2026-07-27T09:07:02.776897Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":29,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":28,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/languages/en.json","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.694Z","timestamp":1785143154694,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/languages/en.json HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\r\nOrigin: https://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/json\r\nlast-modified: Wed, 08 Jul 2026 14:56:39 GMT\r\netag: W/\"17fa2497bdae7324a17eaedfe6fc8650\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11054\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=4,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2cdaff1a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":11596,"size_decoded":4377,"mime_type":"application/json","magic":"JSON text data","md5":"17fa2497bdae7324a17eaedfe6fc8650","sha1":"27bce6a96d49d0077bc16228801a3089fce5be2a","sha256":"cce37a30801a132937edb0ac257f4ed917559c00d6a648716bd9ac406cfc62b1","sha512":"f4155fcb97d0180daa46cb293cd70f01b984c39f9895f76a0acc098b0c5f86f883378620e75f8fb79b0e0b1e5033e4ace16046bc48ca2a9c2127053ae48be305","ssdeep":"192:wmr65/bLHzPrquLUVid+BCzfF+npqpe9KvKGC6KEt1aZwf1E:fCbLHzxUVid+BEfF+np59t3Zwfi","tlshash":"98323169ce504ea702d29646399f35437624829b1f54342eb78c91ac0f8ec6fa1f77ce","first_seen":"2026-05-13T09:28:21.606546Z","last_seen":"2026-08-03T13:22:13.499629Z","times_seen":10584,"resource_available":false,"data":"ewogICAgImJ1YmJsZSI6IHsKICAgICAgICAiYXR0ZW50aW9uX2dyYWJiZXIiOiAiQ2hhdCBhdHRlbnRpb24gZ3JhYmJlciIKICAgIH0sCiAgICAiY2hhdCI6IHsKICAgICAgICAiYWNjZXB0X2NhbGwiOiAiQWNjZXB0IiwKICAgICAgICAiYWN0aXZlIjogIkFjdGl2ZSIsCiAgICAgICAgImFnZW50X3Byb2ZpbGVfaW1hZ2UiOiAiQWdlbnQgcHJvZmlsZSBpbWFnZSIsCiAgICAgICAgImFnZW50X3JpbmdpbmciOiAiSW5jb21pbmcgQ2FsbCIsCiAgICAgICAgImFsbF9jb252ZXJzYXRpb25zIjogIlNlZSBhbGwgY29udmVyc2F0aW9ucyIsCiAgICAgICAgImNhbGxfZW5kX2RldGFpbHMiOiAiU3RhcnRlZCBhdCB7eyBzdGFydGVkT24gfX0gYW5kIGxhc3RlZCB7eyBkdXJhdGlvbiB9fSIsCiAgICAgICAgImNhbGxfZXJyb3JfbG9hZCI6ICJVbmFibGUgdG8gbG9hZCBjYWxsIGRldGFpbHMuIiwKICAgICAgICAiY2FsbF9zdGFydGVkX29uIjogIlN0YXJ0ZWQgYXQge3sgc3RhcnRlZE9uIH19IiwKICAgICAgICAiY2hhdF9lbmRlZCI6ICJZb3VyIGNoYXQgaGFzIGVuZGVkIiwKICAgICAgICAiY2hhdF9pY29uIjogIkNoYXQgaWNvbiIsCiAgICAgICAgImNoYXRfcW0iOiAiQ2hhdD8iLAogICAgICAgICJjaGF0X3RleHQiOiAiQ2hhdCIsCiAgICAgICAgImNsb3NlX2ljb24iOiAiQ2xvc2UgaWNvbiIsCiAgICAgICAgImNvbXBsZXRlZF9jYWxsIjogIkNhbGwgZW5kZWQiLAogICAgICAgICJjb252ZXJzYXRpb25fZW5kZWRfb24iOiAiQ29udmVyc2F0aW9uIGVuZGVkIG9uIiwKICAgICAgICAiZGVjbGluZV9jYWxsIjogIkRlY2xpbmUiLAogICAgICAgICJkZWZhdWx0X25hbWUiOiAiWW91IChjaGFuZ2UgbmFtZSkiLAogICAgICAgICJkZXBhcnRtZW50X2lzX2F3YXkiOiAiRGVwYXJ0bWVudCB7eyBzdHJvbmdTdGFydCB9fSB7eyBkZXBhcnRtZW50TmFtZSB9fSB7eyBzdHJvbmdFbmQgfX0gaXMgY3VycmVudGx5IGF3YXkuIiwKICAgICAgICAiZGVwYXJ0bWVudF9pc19vZmZsaW5lIjogIkRlcGFydG1lbnQge3sgc3Ryb25nU3RhcnQgfX0ge3sgZGVwYXJ0bWVudE5hbWUgfX0ge3sgc3Ryb25nRW5kIH19IGlzIGN1cnJlbnRseSBvZmZsaW5lLiBZb3UgbWlnaHQgYmUgc2VydmVkIGJ5IGFub3RoZXIgZGVwYXJ0bWVudC4iLAogICAgICAgICJkb3dubG9hZCI6ICJEb3dubG9hZCIsCiAgICAgICAgImRvd25sb2FkX2ZpbGUiOiAiRG93bmxvYWQgRmlsZSIsCiAgICAgICAgImRyYWdfZHJvcF90ZXh0IjogIkRyb3AgZmlsZXMgaGVyZSB0byB1cGxvYWQiLAogICAgICAgICJlbW9qaV9lcnJvcl9sb2FkIjogIlVuYWJsZSB0byBsb2FkIGVtb2ppcyIsCiAgICAgICAgImVycm9yX3RpdGxlIjogIkVycm9yIiwKICAgICAgICAiZmFpbGVkIjogIkZhaWxlZCIsCiAgICAgICAgImdlbmVyYWxfdXBsb2FkX2Vycm9yIjogIlwie3sgZmlsZU5hbWUgfX1cIiwgcGxlYXNlIHRyeSBhZ2Fpbi4iLAogICAgICAgICJnZW5lcmFsX3VwbG9hZF9lcnJvcl9sYWJlbCI6ICJVbmFibGUgdG8gdXBsb2FkIGZpbGUiLAogICAgICAgICJnb190b19sYXRlc3QiOiAiR28gdG8gbGF0ZXN0IiwKICAgICAgICAiaGlkZV9idXR0b24iOiAiSGlkZSBDaGF0IiwKICAgICAgICAiaG91cnNfb25lIjogInt7IGNvdW50IH19IGhvdXIiLAogICAgICAgICJob3Vyc19vdGhlciI6ICJ7eyBjb3VudCB9fSBob3VycyIsCiAgICAgICAgImluY29taW5nX2NhbGxfbWVzc2FnZSI6ICJJbmNvbWluZyBjYWxsIGZyb20ge3sgbmFtZSB9fSIsCiAgICAgICAgImluc2VydF9lbW9qaSI6ICJJbnNlcnQgZW1vamkiLAogICAgICAgICJqdXN0X25vdyI6ICJqdXN0IG5vdyIsCiAgICAgICAgImxpbWl0XzIiOiAiVGhlIG1heGltdW0gZmlsZSBzaXplIGlzIDJNQiBmb3IgbW9iaWxlIGJyb3dzZXJzLCBwbGVhc2UgdXBsb2FkIGEgc21hbGxlciBmaWxlLiIsCiAgICAgICAgImxpbWl0XzUwIjogIlRoZSBtYXhpbXVtIGZpbGUgc2l6ZSBpcyA1ME1CLCBwbGVhc2UgdXBsb2FkIGEgc21hbGxlciBmaWxlLiIsCiAgICAgICAgIm1lc3NhZ2Vfbm90X2RlbGl2ZXJlZCI6ICJNZXNzYWdlIG5vdCBkZWxpdmVyZWQsIGNsaWNrIGhlcmUgdG8gcmVzZW5kLiIsCiAgICAgICAgIm1lc3NhZ2VfcXVldWVkX3RleHRfb25lIjogIkVzdGltYXRlZCB3YWl0IHRpbWUgaXMge3sgc3Ryb25nU3RhcnQgfX0ge3sgY291bnQgfX0gbWludXRlIHt7IHN0cm9uZ0VuZCB9fSIsCiAgICAgICAgIm1lc3NhZ2VfcXVldWVkX3RleHRfb3RoZXIiOiAiRXN0aW1hdGVkIHdhaXQgdGltZSBpcyB7eyBzdHJvbmdTdGFydCB9fSB7eyBjb3VudCB9fSBtaW51dGVzIHt7IHN0cm9uZ0VuZCB9fSIsCiAgICAgICAgIm1lc3NhZ2VfdG9vX2xvbmciOiAiTWVzc2FnZSBjYW5ub3QgZXhjZWVkIDUwMDAgY2hhcmFjdGVycyIsCiAgICAgICAgIm1pbnV0ZXNfb25lIjogInt7IGNvdW50IH19IG1pbnV0ZSIsCiAgICAgICAgIm1pbnV0ZXNfb3RoZXIiOiAie3sgY291bnQgfX0gbWludXRlcyIsCiAgICAgICAgIm1pc3NlZF9hZ2VudCI6ICJZb3VyIGNhbGwgd2FzIG1pc3NlZCIsCiAgICAgICAgIm1pc3NlZF92aXNpdG9yIjogIllvdSBtaXNzZWQgYSBjYWxsIiwKICAgICAgICAibWlzc2VkX3Zpc2l0b3JfbWVzc2FnZV9wcmV2aWV3IjogIllvdSBtaXNzZWQgYSBjYWxsIGZyb20iLAogICAgICAgICJtb2JpbGVfbmFtZSI6ICJZb3UiLAogICAgICAgICJuZXdfY2hhdCI6ICJTdGFydCBOZXcgQ2hhdCIsCiAgICAgICAgIm5ld19jb252ZXJzYXRpb24iOiAiTmV3IENvbnZlcnNhdGlvbiIsCiAgICAgICAgIm5ld19tZXNzYWdlX29uZSI6ICJ7eyBjb3VudCB9fSBuZXcgbWVzc2FnZSIsCiAgICAgICAgIm5ld19tZXNzYWdlX290aGVyIjogInt7IGNvdW50IH19IG5ldyBtZXNzYWdlcyIsCiAgICAgICAgIm5ld19tZXNzYWdlcyI6ICJOZXcgbWVzc2FnZXMiLAogICAgICAgICJub3RpZmljYXRpb25fdGl0bGUiOiAibm90aWZpY2F0aW9uIiwKICAgICAgICAib25nb2luZ19jYWxsIjogIk9uZ29pbmcgQ2FsbCIsCiAgICAgICAgInBhc3QiOiAie3sgdGltZSB9fSBhZ28iLAogICAgICAgICJwYXN0ZWRfaW1hZ2VfdGl0bGUiOiAiUGFzdGVkIGltYWdlIGF0IHt7IGRhdGVUaW1lIH19IiwKICAgICAgICAicHJvZmlsZV9wcmVjaGF0X3RleHQiOiAiUGxlYXNlIGZpbGwgb3V0IHRoZSBmb3JtIGJlbG93IHRvIHN0YXJ0IGNoYXR0aW5nIHdpdGggbWUuIiwKICAgICAgICAicmVqZWN0ZWRfY2FsbCI6ICJZb3UgcmVqZWN0ZWQgdGhpcyBjYWxsIiwKICAgICAgICAicmVtb3ZlX3JhdGUiOiAiWW91IHJlbW92ZWQgeW91ciByYXRpbmcgZm9yIHRoaXMgY29udmVyc2F0aW9uIiwKICAgICAgICAicmVzZW5kIjogIlJlc2VuZCIsCiAgICAgICAgInJldHJ5IjogIlJldHJ5LiIsCiAgICAgICAgInJldHVybl90b19saXZlX2NoYXQiOiAiUmV0dXJuIHRvIGxpdmUgY2hhdCIsCiAgICAgICAgInNheV9zb21ldGhpbmciOiAiV3JpdGUgYSByZXBseS4uIiwKICAgICAgICAic2NyZWVuX3NoYXJlX2Vycm9yIjogIlNjcmVlbiBzaGFyZSBpcyBub3QgYXZhaWxhYmxlLiIsCiAgICAgICAgInNlY29uZHNfb25lIjogInt7IGNvdW50IH19IHNlY29uZCIsCiAgICAgICAgInNlY29uZHNfb3RoZXIiOiAie3sgY291bnQgfX0gc2Vjb25kcyIsCiAgICAgICAgInNlbmRfbWFpbCI6ICJTZW5kIE1haWwiLAogICAgICAgICJzZW50X2ZpbGUiOiAiU2VudCBhIGZpbGUiLAogICAgICAgICJzZW50X2Zvcm0iOiAiU2VudCBhIGZvcm0iLAogICAgICAgICJzZW50X3N1Z2dlc3RlZF9tZXNzYWdlIjogIlNlbnQgYSBzdWdnZXN0ZWQgbWVzc2FnZSIsCiAgICAgICAgInRvZGF5X3RpbWUiOiAiVG9kYXksIHt7IHRpbWUgfX0iLAogICAgICAgICJ0cnlfYWdhaW4iOiAiVHJ5IGFnYWluLiIsCiAgICAgICAgInVuYW5zd2VyZWQiOiAiVW5hbnN3ZXJlZCIsCiAgICAgICAgInVwbG9hZGluZyI6ICJVcGxvYWRpbmfigKYiLAogICAgICAgICJ2aWRlb19jYWxsX2Vycm9yIjogIlZpZGVvIGNhbGwgaXMgbm90IGF2YWlsYWJsZS4iLAogICAgICAgICJ2aXNpdG9yX3JpbmdpbmciOiAiQ2FsbGluZ+KApiIsCiAgICAgICAgInZvaWNlX2NhbGxfZXJyb3IiOiAiVm9pY2UgY2FsbCBpcyBub3QgYXZhaWxhYmxlLiIsCiAgICAgICAgIndhcm5pbmciOiAiV2FybmluZyIsCiAgICAgICAgIndlX2FyZV9saXZlIjogIldlIGFyZSBsaXZlIGFuZCByZWFkeSB0byBjaGF0IHdpdGggeW91IG5vdy4gU2F5IHNvbWV0aGluZyB0byBzdGFydCBhIGxpdmUgY2hhdC4iLAogICAgICAgICJjaGF0X3dpZGdldCI6ICJDaGF0IHdpZGdldCIsCiAgICAgICAgImVuZF9jYWxsIjogIkVuZCBjYWxsIiwKICAgICAgICAicmVjZW50IjogIlJlY2VudCIsCiAgICAgICAgInN0YXJ0X25ld19jaGF0IjogIlN0YXJ0IGEgbmV3IGNoYXQiLAogICAgICAgICJub3ciOiAibm93IgogICAgfSwKICAgICJkYXlzIjogewogICAgICAgICIwIjogIlN1bmRheSIsCiAgICAgICAgIjEiOiAiTW9uZGF5IiwKICAgICAgICAiMiI6ICJUdWVzZGF5IiwKICAgICAgICAiMyI6ICJXZWRuZXNkYXkiLAogICAgICAgICI0IjogIlRodXJzZGF5IiwKICAgICAgICAiNSI6ICJGcmlkYXkiLAogICAgICAgICI2IjogIlNhdHVyZGF5IgogICAgfSwKICAgICJmb3JtIjogewogICAgICAgICJhbnkiOiAiQW55IiwKICAgICAgICAiY2FuY2VsX2J1dHRvbiI6ICJDYW5jZWwiLAogICAgICAgICJjaGF0X2VuZGVkIjogIllvdXIgY2hhdCBoYXMgZW5kZWQiLAogICAgICAgICJjbG9zZV9idXR0b24iOiAiQ2xvc2UiLAogICAgICAgICJkZXBhcnRtZW50IjogIkRlcGFydG1lbnQiLAogICAgICAgICJkZXBhcnRtZW50c19lcnJvcl9tZXNzYWdlIjogIkRlcGFydG1lbnQgaXMgcmVxdWlyZWQuIiwKICAgICAgICAiZGVwYXJ0bWVudHNfcGxhY2Vob2xkZXIiOiAic2VsZWN0IGRlcGFydG1lbnQuLiIsCiAgICAgICAgImVtYWlsIjogIkVtYWlsIiwKICAgICAgICAiZW1haWxfZXJyb3JfbWVzc2FnZSI6ICJJbnZhbGlkIGVtYWlsIGFkZHJlc3MuIiwKICAgICAgICAiZW1haWxfcGxhY2Vob2xkZXIiOiAiRW1haWwgQWRkcmVzcyIsCiAgICAgICAgImVtYWlsX3RyYW5zY3JpcHRfZm9ybV9tZXNzYWdlIjogIlBsZWFzZSBmaWxsIG91dCB0aGUgZm9ybSBiZWxvdyB0byBoYXZlIHRoaXMgY29udmVyc2F0aW9uIHNlbnQgdG8geW91ciBlbWFpbCBhZGRyZXNzLiIsCiAgICAgICAgImVtYWlsX3RyYW5zY3JpcHRfc3VjY2VzcyI6ICJTZW50IGVtYWlsIHRyYW5zY3JpcHQgcmVxdWVzdC4iLAogICAgICAgICJlbWFpbF90cmFuc2NyaXB0X3RvIjogIkVtYWlsIHRyYW5zY3JpcHQgdG8iLAogICAgICAgICJlbmRfY2hhdF9tZXNzYWdlIjogIlRoYW5rIHlvdSBmb3IgY2hhdHRpbmcgd2l0aCB1cy4gRmVlbCBmcmVlIHRvIHN0YXJ0IGEgbmV3IGNoYXQgc2Vzc2lvbiBvciBlbnRlciB5b3VyIGVtYWlsIGFuZCBzZW5kIGEgdHJhbnNjcmlwdCBvZiB0aGlzIGNvbnZlcnNhdGlvbiB0byB5b3VyIGluYm94LiIsCiAgICAgICAgImVuZF9jaGF0X21lc3NhZ2VfMiI6ICJUaGFuayB5b3UgZm9yIGNoYXR0aW5nIHdpdGggdXMuIEZlZWwgZnJlZSB0byBzdGFydCBhIG5ldyBjaGF0IHNlc3Npb24uIiwKICAgICAgICAiZW5kX2NoYXRfdGl0bGUiOiAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGVuZCB0aGlzIGNoYXQ/IiwKICAgICAgICAiZXJyb3Jfc2F2aW5nIjogIlVuYWJsZSB0byBzYXZlLiBQbGVhc2UgdHJ5IGFnYWluIiwKICAgICAgICAibWVzc2FnZSI6ICJNZXNzYWdlIiwKICAgICAgICAibWVzc2FnZV9wbGFjZWhvbGRlciI6ICJ5b3VyIG1lc3NhZ2UuLiIsCiAgICAgICAgIm5hbWUiOiAiTmFtZSIsCiAgICAgICAgIm5hbWVfZXJyb3JfbWVzc2FnZSI6ICJOYW1lIG11c3QgYmUgcHJvdmlkZWQuIiwKICAgICAgICAibmFtZV9mb3JtX21lc3NhZ2UiOiAiUGxlYXNlIGNoYW5nZSB5b3VyIG5hbWUgc28gd2UgY2FuIHJlY29nbml6ZSB5b3UgdGhlIG5leHQgdGltZS4iLAogICAgICAgICJvZmZsaW5lX2Zvcm1fbWVzc2FnZSI6ICJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgYW5kIHdlIHdpbGwgZ2V0IGJhY2sgdG8geW91IGFzIHNvb24gYXMgcG9zc2libGUuIiwKICAgICAgICAib2ZmbGluZV9tZXNzYWdlX25vdF9zZW50IjogIllvdXIgbWVzc2FnZSB3YXMgbm90IGRlbGl2ZXJlZCwgcGxlYXNlIHJldHJ5IiwKICAgICAgICAib2ZmbGluZV9tZXNzYWdlX3NlbnQiOiAiWW91ciBtZXNzYWdlIHdhcyBzZW50IHN1Y2Nlc3NmdWxseSEiLAogICAgICAgICJwaG9uZV9lcnJvcl9tZXNzYWdlIjogIkNvdW50cnkgY29kZSBpcyByZXF1aXJlZCAoZS5nLiArMTIzNDU2Nzg5KSIsCiAgICAgICAgInByZV9jaGF0X2Zvcm1fbWVzc2FnZSI6ICJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgdG8gc3RhcnQgY2hhdHRpbmcgd2l0aCB0aGUgbmV4dCBhdmFpbGFibGUgYWdlbnQuIiwKICAgICAgICAicHJlX2NoYXRfZm9ybV9tZXNzYWdlX3Byb2ZpbGUiOiAiUGxlYXNlIGZpbGwgb3V0IHRoZSBmb3JtIGJlbG93IHRvIHN0YXJ0IGNoYXR0aW5nIHdpdGggbWUuIiwKICAgICAgICAicXVlc3Rpb25fcGxhY2Vob2xkZXIiOiAieW91ciBxdWVyeS4uIiwKICAgICAgICAicmVxdWlyZWRfZXJyb3JfbWVzc2FnZSI6ICJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkIiwKICAgICAgICAic2F2ZV9idXR0b24iOiAiU2F2ZSIsCiAgICAgICAgInNlbmRfYWdhaW4iOiAiU2VuZCBBZ2FpbiIsCiAgICAgICAgInNlbmRfYnV0dG9uIjogIlNlbmQiLAogICAgICAgICJzZW5kX21lc3NhZ2UiOiAiU2VuZCBtZXNzYWdlIiwKICAgICAgICAic3RhcnRfY2hhdF9idXR0b24iOiAiU3RhcnQgQ2hhdCIsCiAgICAgICAgInN1Ym1pdF9idXR0b24iOiAiU3VibWl0IiwKICAgICAgICAic3VibWl0dGVkX2Zyb20iOiAiU3VibWl0dGVkIEZyb20iLAogICAgICAgICJzdWJtaXR0aW5nX3Byb2Nlc3MiOiAiU3VibWl0dGluZyIsCiAgICAgICAgInRyYW5zY3JpcHRfbWVzc2FnZSI6ICJGZWVsIGZyZWUgdG8gZW50ZXIgeW91ciBlbWFpbCBhbmQgc2VuZCBhIHRyYW5zY3JpcHQgb2YgdGhpcyBjb252ZXJzYXRpb24gdG8geW91ciBpbmJveC4iLAogICAgICAgICJ2aXNpdF9idXR0b24iOiAiVmlzaXQgdGF3ay50byIsCiAgICAgICAgInRpY2tldF9mb3JtX3N1Y2Nlc3NfbWVzc2FnZSI6ICJZb3VyIHRpY2tldCBoYXMgYmVlbiBzdWJtaXR0ZWQuIFRoYW5rIHlvdSEiLAogICAgICAgICJyZXF1ZXN0X3NlbnQiOiAiWW91ciByZXF1ZXN0IGhhcyBiZWVuIHNlbnQiLAogICAgICAgICJwaG9uZSI6ICJQaG9uZSIsCiAgICAgICAgInN1YmplY3QiOiAiU3ViamVjdCIsCiAgICAgICAgImxlYWRfZm9ybV9zdWNjZXNzX21lc3NhZ2UiOiAiVGhhbmsgeW91IGZvciB5b3VyIGRldGFpbHMhIFdlJ2xsIGdldCBiYWNrIHRvIHlvdSBhcyBzb29uIGFzIHBvc3NpYmxlLiIsCiAgICAgICAgImluY29tcGxldGVfbnVtYmVyIjogIkluY29tcGxldGUgbnVtYmVyIiwKICAgICAgICAiYWxsX3JlcXVpcmVkX2Vycm9yX21lc3NhZ2UiOiAiRmlsbCBpbiBhbGwgcmVxdWlyZWQgZmllbGRzIHRvIHN1Ym1pdC4iLAogICAgICAgICJwaG9uZV9pbnZhbGlkX2NvdW50cnlfY29kZSI6ICJJbnZhbGlkIGNvdW50cnkgY29kZSIKICAgIH0sCiAgICAiaG9tZSI6IHsKICAgICAgICAiYmFubmVyX2ltYWdlIjogIkJhbm5lciBpbWFnZSIsCiAgICAgICAgImNoYXRfYnV0dG9uIjogIk5ldyBDb252ZXJzYXRpb24iLAogICAgICAgICJjaGF0X2lucHV0IjogIlR5cGUgaGVyZSBhbmQgcHJlc3MgZW50ZXIuLi4iLAogICAgICAgICJoZWFkaW5nX21haW4iOiAiSGkgdGhlcmUg8J+RiyIsCiAgICAgICAgImhlYWRpbmdfc3ViIjogIk5lZWQgaGVscD8gU2VhcmNoIG91ciBoZWxwIGNlbnRlciBmb3IgYW5zd2VycyBvciBzdGFydCBhIGNvbnZlcnNhdGlvbjoiLAogICAgICAgICJrYl9zZWFyY2giOiAiU2VhcmNoIGZvciBhbnN3ZXJzIiwKICAgICAgICAibG9nb19pbWFnZSI6ICJMb2dvIGltYWdlIiwKICAgICAgICAiY2hhdF9idXR0b25fc3VidGl0bGUiOiAiV2UgdHlwaWNhbGx5IHJlcGx5IGluIGEgZmV3IG1pbnV0ZXMiLAogICAgICAgICJyZWNlbnRfY29udmVyc2F0aW9ucyI6ICJSZWNlbnQgQ29udmVyc2F0aW9uIiwKICAgICAgICAia2JfZmVhdHVyZWRfYXJ0aWNsZXMiOiAiS25vd2xlZGdlIEJhc2UiLAogICAgICAgICJob21lIjogIkhvbWUiLAogICAgICAgICJtZXNzYWdlcyI6ICJNZXNzYWdlcyIsCiAgICAgICAgIm5vX3JlY2VudF9jb252ZXJzYXRpb25zIjogIk5vIHJlY2VudCBjb252ZXJzYXRpb25zIgogICAgfSwKICAgICJrYiI6IHsKICAgICAgICAiYXJ0aWNsZV9pbWFnZSI6ICJBcnRpY2xlIGltYWdlIiwKICAgICAgICAiYXJ0aWNsZV9yYXRpbmciOiAiV2FzIHRoaXMgYXJ0aWNsZSBoZWxwZnVsPyIsCiAgICAgICAgImFydGljbGVfcmF0aW5nX2NvdW50IjogInt7IHRvdGFsTGlrZXMgfX0gb3V0IG9mIHt7IHRvdGFsVm90ZXMgfX0gbGlrZWQgdGhpcyBhcnRpY2xlIiwKICAgICAgICAiYXV0aG9yX3Byb2ZpbGVfaW1hZ2UiOiAiQXV0aG9yIHByb2ZpbGUgaW1hZ2UiLAogICAgICAgICJjbGVhcl9zZWFyY2giOiAiQ2xlYXIgU2VhcmNoIiwKICAgICAgICAiZG93bnZvdGVfcmF0aW5nX2J1dHRvbiI6ICJObyIsCiAgICAgICAgImhlbHBfY2VudGVyIjogIkhlbHAgQ2VudGVyIiwKICAgICAgICAibmVnYXRpdmVfcmF0aW5nIjogIk5lZ2F0aXZlIiwKICAgICAgICAicG9zaXRpdmVfcmF0aW5nIjogIlBvc2l0aXZlIiwKICAgICAgICAicmVjZW50X3NlYXJjaGVzIjogIlJlY2VudCBTZWFyY2hlcyIsCiAgICAgICAgInNlYXJjaF9mYWlsX2Rlc2NyaXB0aW9uIjogIlBsZWFzZSwgdHJ5IGFnYWluIiwKICAgICAgICAic2VhcmNoX2ZhaWxfdGl0bGUiOiAiTm8gc2VhcmNoIHJlc3VsdHMiLAogICAgICAgICJzZWFyY2hfcGxhY2Vob2xkZXIiOiAiU2VhcmNoIGZvciBhbnN3ZXJzIiwKICAgICAgICAic2VhcmNoX3Jlc3VsdHMiOiAiU2VhcmNoIFJlc3VsdHMiLAogICAgICAgICJzaG93X2FsbF9yZXN1bHRzIjogIlNob3cgYWxsIHJlc3VsdHMgKHt7IG51bSB9fSkiLAogICAgICAgICJzdWJtaXRfc2VhcmNoIjogIlN1Ym1pdCBTZWFyY2giLAogICAgICAgICJ1cHZvdGVfcmF0aW5nX2J1dHRvbiI6ICJZZXMiLAogICAgICAgICJ2aWV3X2Z1bGwiOiAiVmlldyBpbiBmdWxsIgogICAgfSwKICAgICJtZW51IjogewogICAgICAgICJhZGRfY2hhdF90b195b3VyX3dlYnNpdGUiOiAiQWRkIENoYXQgdG8geW91ciB3ZWJzaXRlIiwKICAgICAgICAiY2hhbmdlX25hbWUiOiAiQ2hhbmdlIE5hbWUiLAogICAgICAgICJlbWFpbF90cmFuc2NyaXB0IjogIkVtYWlsIHRyYW5zY3JpcHQiLAogICAgICAgICJlbmRfY2hhdF9zZXNzaW9uIjogIkVuZCB0aGlzIGNoYXQgc2Vzc2lvbiIsCiAgICAgICAgInBvcG91dF93aWRnZXQiOiAiUG9wIG91dCB3aWRnZXQiLAogICAgICAgICJzb3VuZF9vZmYiOiAiU291bmQgT2ZmIiwKICAgICAgICAic291bmRfb24iOiAiU291bmQgT24iCiAgICB9LAogICAgIm1vbnRocyI6IHsKICAgICAgICAiMCI6ICJKYW51YXJ5IiwKICAgICAgICAiMSI6ICJGZWJydWFyeSIsCiAgICAgICAgIjEwIjogIk5vdmVtYmVyIiwKICAgICAgICAiMTEiOiAiRGVjZW1iZXIiLAogICAgICAgICIyIjogIk1hcmNoIiwKICAgICAgICAiMyI6ICJBcHJpbCIsCiAgICAgICAgIjQiOiAiTWF5IiwKICAgICAgICAiNSI6ICJKdW5lIiwKICAgICAgICAiNiI6ICJKdWx5IiwKICAgICAgICAiNyI6ICJBdWd1c3QiLAogICAgICAgICI4IjogIlNlcHRlbWJlciIsCiAgICAgICAgIjkiOiAiT2N0b2JlciIKICAgIH0sCiAgICAibm90aWZpY2F0aW9ucyI6IHsKICAgICAgICAiZGlzbWlzc19hbGVydCI6ICJEaXNtaXNzIEFsZXJ0IiwKICAgICAgICAibWF4aW11bV9maWxlX3VwbG9hZF93YXJuaW5nIjogIlNvcnJ5LCBmaWxlIHRyYW5zZmVyIGlzIGxpbWl0ZWQgdG8ge3sgbGltaXRGaWxlTnVtYmVyIH19IGZpbGVzIGF0IGEgdGltZS4gUGxlYXNlIHRyeSB0aGUgZm9sbG93aW5nIGZpbGUocykgYWdhaW4gOiIsCiAgICAgICAgIm1heGltdW1fc2l6ZV91cGxvYWRfd2FybmluZyI6ICJTb3JyeSwgZmlsZSB0cmFuc2ZlciBpcyBsaW1pdGVkIHRvIHt7IGxpbWl0RmlsZVNpemUgfX0gcGVyIGZpbGUuIFBsZWFzZSBjb21wcmVzcyB0aGUgZm9sbG93aW5nIGZpbGUocykgYW5kIHRyeSBhZ2Fpbi4iLAogICAgICAgICJyZWNvbm5lY3RpbmciOiAiUmVjb25uZWN0aW5nIiwKICAgICAgICAicmV0cnkiOiAiUmV0cnkiCiAgICB9LAogICAgIm92ZXJsYXkiOiB7CiAgICAgICAgImNvb2tpZXNfb2ZmIjogIllvdSBjYW4ndCB1c2UgdGhpcyBjaGF0IGJlY2F1c2UgeW91ciBicm93c2VyJ3MgY29va2llIGZ1bmN0aW9uYWxpdHkgaXMgdHVybmVkIG9mZi4gUGxlYXNlIHR1cm4gaXQgb24gYW5kIHJlZnJlc2ggeW91ciBicm93c2VyLiIsCiAgICAgICAgImluYWN0aXZlIjogIkNsaWNrIGhlcmUgdG8gcmVpbml0aWF0ZSB0aGUgY2hhdCIsCiAgICAgICAgIm1haW50ZW5hbmNlIjogIkNoYXQgaXMgaW4gbWFpbnRlbmFuY2UiLAogICAgICAgICJ0YXdrX2NvbnRlbnQiOiAiVGhpcyB3aWRnZXQgaXMgcG93ZXJlZCBieSB0YXdrLnRvIC0gYSBmcmVlIG1lc3NhZ2luZyBhcHBsaWNhdGlvbiB0aGF0IGxldHMgeW91IG1vbml0b3IgYW5kIGVuZ2FnZSB3aXRoIHRoZSB2aXNpdG9ycyBvbiB5b3VyIHdlYnNpdGUuIgogICAgfSwKICAgICJyb2xsb3ZlciI6IHsKICAgICAgICAiYmFjayI6ICJCYWNrIiwKICAgICAgICAiY2hhdF9tZW51IjogIk1lbnUiLAogICAgICAgICJlbWFpbF90cmFuc2NyaXB0X29wdGlvbiI6ICJFbWFpbCBUcmFuc2NyaXB0IiwKICAgICAgICAiZW5kIjogIkVuZCBDaGF0IiwKICAgICAgICAia25vd2xlZGdlX2Jhc2UiOiAia25vd2xlZGdlIEJhc2UiLAogICAgICAgICJtYXhpbWl6ZSI6ICJNYXhpbWl6ZSIsCiAgICAgICAgIm1pbmltaXplIjogIk1pbmltaXplIiwKICAgICAgICAibmVnYXRpdmVfcmF0aW5nIjogIlJhdGUgdGhpcyBjb252ZXJzYXRpb24gd2l0aCAtMSIsCiAgICAgICAgInBvcF9vdXQiOiAiUG9wIG91dCIsCiAgICAgICAgInBvc2l0aXZlX3JhdGluZyI6ICJSYXRlIHRoaXMgY29udmVyc2F0aW9uIHdpdGggKzEiLAogICAgICAgICJyYXRlX2NoYXQiOiAiUmF0ZSB0aGlzIGNoYXQiLAogICAgICAgICJyZXNlbmRfbWVzc2FnZSI6ICJSZXNlbmQgbWVzc2FnZSIsCiAgICAgICAgInJlc2l6ZSI6ICJSZXNpemUiLAogICAgICAgICJzY3JlZW5fc2hhcmUiOiAiU2NyZWVuIFNoYXJlIiwKICAgICAgICAidXBsb2FkX2ZpbGUiOiAiVXBsb2FkIEZpbGUiLAogICAgICAgICJ2aWRlb19jYWxsIjogIlZpZGVvIENhbGwiLAogICAgICAgICJ2b2ljZV9jYWxsIjogIlZvaWNlIENhbGwiCiAgICB9LAogICAgInJvdXRlcyI6IHsKICAgICAgICAiYWxsX2FnZW50cyI6ICJBbGwgQWdlbnRzIiwKICAgICAgICAiY29udmVyc2F0aW9ucyI6ICJDb252ZXJzYXRpb25zIiwKICAgICAgICAibG9hZF9tb3JlIjogIkxvYWQgTW9yZSIKICAgIH0sCiAgICAic3RhdHVzIjogewogICAgICAgICJhd2F5IjogIkF3YXkiLAogICAgICAgICJvZmZsaW5lIjogIk9mZmxpbmUiLAogICAgICAgICJvbmxpbmUiOiAiT25saW5lIgogICAgfQp9Cg=="}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"va.tawk.to/v1/session/start","fqdn":"va.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.701Z","timestamp":1785143154701,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"OPTIONS /v1/session/start HTTP/1.1\r\nHost: va.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\r\nOrigin: https://profx.io\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/3 200 \r\nx-served-by: visitor-application-preemptive-hvxz\r\naccess-control-allow-origin: https://profx.io\r\naccess-control-allow-credentials: true\r\naccess-control-max-age: 3600\r\naccess-control-allow-methods: POST,OPTIONS\r\naccess-control-allow-headers: content-type,x-tawk-token\r\ncache-control: public, s-maxage=600, max-age=600\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\npriority: u=4,i=?0\r\ncontent-encoding: br\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\ncf-cache-status: DYNAMIC\r\nserver: cloudflare\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2ceb031a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":706,"mime_type":"text/html; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-03T13:28:06.233495Z","times_seen":17690637,"resource_available":true,"data":""}},"time_used":157,"timings":{"blocked":3,"dns":0,"connect":0,"send":0,"wait":154,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-7941cc06.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.343Z","timestamp":1785143155343,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-7941cc06.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"0b7571445a752df762894d31268e7c12\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30e9720883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":54211,"size_decoded":14822,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (54092)","md5":"0b7571445a752df762894d31268e7c12","sha1":"54b956960bd4376f15523f25f586fc5478a626fc","sha256":"2a768547370a8933454d03757e1981e616d448234e06e5b9dcf1608f35bec644","sha512":"12e90c52c5cce1f2767060de43c8627fb789a49f5a1b1a681048e732f08ae67194f4ee0c7a80f305778c67e31a756555c54d463bbdab66f19b03f8f050aa4e71","ssdeep":"768:Vlxfu8+HYUmI+rT1Wf2z+y+Um/+VRJWf/W+Hc1lt7Gj67IW8/JGvgLCBxf6stK4/:xfuro0f20UJWfO+Et7GZrCi20k","tlshash":"8133d9cdb2d6f4258763632130af3006f27a4964a81dd155f334d8f6b9ece49a226f2d","first_seen":"2026-07-08T23:24:03.874474Z","last_seen":"2026-08-03T12:50:03.427326Z","times_seen":2490,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgdHdrLWNodW5rLTc5NDFjYzA2LmpzLkxJQ0VOU0UgKi8KKHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstNzk0MWNjMDYiXSx7MzUxOTpmdW5jdGlvbihlLHQscil7InVzZSBzdHJpY3QiO3ZhciBuPXIoIjJmNjIiKSxpPXIoImYwYjAiKSxhPXtuYW1lOiJUYXdrU3Bpbm5lciJ9LHM9cigiMjg3NyIpLG89T2JqZWN0KHMuYSkoYSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2VsZi5fYyx0aGlzLl9tKDApfSksW2Z1bmN0aW9uKCl7dmFyIGU9dGhpcy5fc2VsZi5fYztyZXR1cm4gZSgiZGl2Iix7c3RhdGljQ2xhc3M6Imxkcy1zcGlubmVyIGxvYWRlciIsYXR0cnM6e3JvbGU6InN0YXR1cyJ9fSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InNwaW4gc3Bpbi0xIn0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJzcGluIHNwaW4tMiJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoic3BpbiBzcGluLTMifSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InNwaW4gc3Bpbi00In0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJzcGluIHNwaW4tNSJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoic3BpbiBzcGluLTYifSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InNwaW4gc3Bpbi03In0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJzcGluIHNwaW4tOCJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoic3BpbiBzcGluLTkifSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InNwaW4gc3Bpbi0xMCJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoic3BpbiBzcGluLTExIn0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJzcGluIHNwaW4tMTIifSldKX1dLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzO2Z1bmN0aW9uIGwoZSl7cmV0dXJuKGw9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24oZSl7cmV0dXJuIHR5cGVvZiBlfTpmdW5jdGlvbihlKXtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmZS5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmZSE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9KShlKX1mdW5jdGlvbiBjKCl7Yz1mdW5jdGlvbigpe3JldHVybiB0fTt2YXIgZSx0PXt9LHI9T2JqZWN0LnByb3RvdHlwZSxuPXIuaGFzT3duUHJvcGVydHksaT1PYmplY3QuZGVmaW5lUHJvcGVydHl8fGZ1bmN0aW9uKGUsdCxyKXtlW3RdPXIudmFsdWV9LGE9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbD9TeW1ib2w6e30scz1hLml0ZXJhdG9yfHwiQEBpdGVyYXRvciIsbz1hLmFzeW5jSXRlcmF0b3J8fCJAQGFzeW5jSXRlcmF0b3IiLHU9YS50b1N0cmluZ1RhZ3x8IkBAdG9TdHJpbmdUYWciO2Z1bmN0aW9uIG0oZSx0LHIpe3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpyLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSksZVt0XX10cnl7bSh7fSwiIil9Y2F0Y2goZSl7bT1mdW5jdGlvbihlLHQscil7cmV0dXJuIGVbdF09cn19ZnVuY3Rpb24gZChlLHQscixuKXt2YXIgYT10JiZ0LnByb3RvdHlwZSBpbnN0YW5jZW9mIHk/dDp5LHM9T2JqZWN0LmNyZWF0ZShhLnByb3RvdHlwZSksbz1uZXcgTyhufHxbXSk7cmV0dXJuIGkocywiX2ludm9rZSIse3ZhbHVlOkUoZSxyLG8pfSksc31mdW5jdGlvbiBmKGUsdCxyKXt0cnl7cmV0dXJue3R5cGU6Im5vcm1hbCIsYXJnOmUuY2FsbCh0LHIpfX1jYXRjaChlKXtyZXR1cm57dHlwZToidGhyb3ciLGFyZzplfX19dC53cmFwPWQ7dmFyIHA9InN1c3BlbmRlZFN0YXJ0IixoPSJleGVjdXRpbmciLHY9ImNvbXBsZXRlZCIsZz17fTtmdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGIoKXt9ZnVuY3Rpb24gaygpe312YXIgdz17fTttKHcscywoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKTt2YXIgVD1PYmplY3QuZ2V0UHJvdG90eXBlT2YseD1UJiZUKFQoQyhbXSkpKTt4JiZ4IT09ciYmbi5jYWxsKHgscykmJih3PXgpO3ZhciBGPWsucHJvdG90eXBlPXkucHJvdG90eXBlPU9iamVjdC5jcmVhdGUodyk7ZnVuY3Rpb24gXyhlKXtbIm5leHQiLCJ0aHJvdyIsInJldHVybiJdLmZvckVhY2goKGZ1bmN0aW9uKHQpe20oZSx0LChmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5faW52b2tlKHQsZSl9KSl9KSl9ZnVuY3Rpb24gJChlLHQpe2Z1bmN0aW9uIHIoaSxhLHMsbyl7dmFyIGM9ZihlW2ldLGUsYSk7aWYoInRocm93IiE9PWMudHlwZSl7dmFyIHU9Yy5hcmcsbT11LnZhbHVlO3JldHVybiBtJiYib2JqZWN0Ij09bChtKSYmbi5jYWxsKG0sIl9fYXdhaXQiKT90LnJlc29sdmUobS5fX2F3YWl0KS50aGVuKChmdW5jdGlvbihlKXtyKCJuZXh0IixlLHMsbyl9KSwoZnVuY3Rpb24oZSl7cigidGhyb3ciLGUscyxvKX0pKTp0LnJlc29sdmUobSkudGhlbigoZnVuY3Rpb24oZSl7dS52YWx1ZT1lLHModSl9KSwoZnVuY3Rpb24oZSl7cmV0dXJuIHIoInRocm93IixlLHMsbyl9KSl9byhjLmFyZyl9dmFyIGE7aSh0aGlzLCJfaW52b2tlIix7dmFsdWU6ZnVuY3Rpb24oZSxuKXtmdW5jdGlvbiBpKCl7cmV0dXJuIG5ldyB0KChmdW5jdGlvbih0LGkpe3IoZSxuLHQsaSl9KSl9cmV0dXJuIGE9YT9hLnRoZW4oaSxpKTppKCl9fSl9ZnVuY3Rpb24gRSh0LHIsbil7dmFyIGk9cDtyZXR1cm4gZnVuY3Rpb24oYSxzKXtpZihpPT09aCl0aHJvdyBFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZyIpO2lmKGk9PT12KXtpZigidGhyb3ciPT09YSl0aHJvdyBzO3JldHVybnt2YWx1ZTplLGRvbmU6ITB9fWZvcihuLm1ldGhvZD1hLG4uYXJnPXM7Oyl7dmFyIG89bi5kZWxlZ2F0ZTtpZihvKXt2YXIgbD1JKG8sbik7aWYobCl7aWYobD09PWcpY29udGludWU7cmV0dXJuIGx9fWlmKCJuZXh0Ij09PW4ubWV0aG9kKW4uc2VudD1uLl9zZW50PW4uYXJnO2Vsc2UgaWYoInRocm93Ij09PW4ubWV0aG9kKXtpZihpPT09cCl0aHJvdyBpPXYsbi5hcmc7bi5kaXNwYXRjaEV4Y2VwdGlvbihuLmFyZyl9ZWxzZSJyZXR1cm4iPT09bi5tZXRob2QmJm4uYWJydXB0KCJyZXR1cm4iLG4uYXJnKTtpPWg7dmFyIGM9Zih0LHIsbik7aWYoIm5vcm1hbCI9PT1jLnR5cGUpe2lmKGk9bi5kb25lP3Y6InN1c3BlbmRlZFlpZWxkIixjLmFyZz09PWcpY29udGludWU7cmV0dXJue3ZhbHVlOmMuYXJnLGRvbmU6bi5kb25lfX0idGhyb3ciPT09Yy50eXBlJiYoaT12LG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9Yy5hcmcpfX19ZnVuY3Rpb24gSSh0LHIpe3ZhciBuPXIubWV0aG9kLGk9dC5pdGVyYXRvcltuXTtpZihpPT09ZSlyZXR1cm4gci5kZWxlZ2F0ZT1udWxsLCJ0aHJvdyI9PT1uJiZ0Lml0ZXJhdG9yLnJldHVybiYmKHIubWV0aG9kPSJyZXR1cm4iLHIuYXJnPWUsSSh0LHIpLCJ0aHJvdyI9PT1yLm1ldGhvZCl8fCJyZXR1cm4iIT09biYmKHIubWV0aG9kPSJ0aHJvdyIsci5hcmc9bmV3IFR5cGVFcnJvcigiVGhlIGl0ZXJhdG9yIGRvZXMgbm90IHByb3ZpZGUgYSAnIituKyInIG1ldGhvZCIpKSxnO3ZhciBhPWYoaSx0Lml0ZXJhdG9yLHIuYXJnKTtpZigidGhyb3ciPT09YS50eXBlKXJldHVybiByLm1ldGhvZD0idGhyb3ciLHIuYXJnPWEuYXJnLHIuZGVsZWdhdGU9bnVsbCxnO3ZhciBzPWEuYXJnO3JldHVybiBzP3MuZG9uZT8oclt0LnJlc3VsdE5hbWVdPXMudmFsdWUsci5uZXh0PXQubmV4dExvYywicmV0dXJuIiE9PXIubWV0aG9kJiYoci5tZXRob2Q9Im5leHQiLHIuYXJnPWUpLHIuZGVsZWdhdGU9bnVsbCxnKTpzOihyLm1ldGhvZD0idGhyb3ciLHIuYXJnPW5ldyBUeXBlRXJyb3IoIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0Iiksci5kZWxlZ2F0ZT1udWxsLGcpfWZ1bmN0aW9uIFMoZSl7dmFyIHQ9e3RyeUxvYzplWzBdfTsxIGluIGUmJih0LmNhdGNoTG9jPWVbMV0pLDIgaW4gZSYmKHQuZmluYWxseUxvYz1lWzJdLHQuYWZ0ZXJMb2M9ZVszXSksdGhpcy50cnlFbnRyaWVzLnB1c2godCl9ZnVuY3Rpb24gaihlKXt2YXIgdD1lLmNvbXBsZXRpb258fHt9O3QudHlwZT0ibm9ybWFsIixkZWxldGUgdC5hcmcsZS5jb21wbGV0aW9uPXR9ZnVuY3Rpb24gTyhlKXt0aGlzLnRyeUVudHJpZXM9W3t0cnlMb2M6InJvb3QifV0sZS5mb3JFYWNoKFMsdGhpcyksdGhpcy5yZXNldCghMCl9ZnVuY3Rpb24gQyh0KXtpZih0fHwiIj09PXQpe3ZhciByPXRbc107aWYocilyZXR1cm4gci5jYWxsKHQpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0Lm5leHQpcmV0dXJuIHQ7aWYoIWlzTmFOKHQubGVuZ3RoKSl7dmFyIGk9LTEsYT1mdW5jdGlvbiByKCl7Zm9yKDsrK2k8dC5sZW5ndGg7KWlmKG4uY2FsbCh0LGkpKXJldHVybiByLnZhbHVlPXRbaV0sci5kb25lPSExLHI7cmV0dXJuIHIudmFsdWU9ZSxyLmRvbmU9ITAscn07cmV0dXJuIGEubmV4dD1hfX10aHJvdyBuZXcgVHlwZUVycm9yKGwodCkrIiBpcyBub3QgaXRlcmFibGUiKX1yZXR1cm4gYi5wcm90b3R5cGU9ayxpKEYsImNvbnN0cnVjdG9yIix7dmFsdWU6ayxjb25maWd1cmFibGU6ITB9KSxpKGssImNvbnN0cnVjdG9yIix7dmFsdWU6Yixjb25maWd1cmFibGU6ITB9KSxiLmRpc3BsYXlOYW1lPW0oayx1LCJHZW5lcmF0b3JGdW5jdGlvbiIpLHQuaXNHZW5lcmF0b3JGdW5jdGlvbj1mdW5jdGlvbihlKXt2YXIgdD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZS5jb25zdHJ1Y3RvcjtyZXR1cm4hIXQmJih0PT09Ynx8IkdlbmVyYXRvckZ1bmN0aW9uIj09PSh0LmRpc3BsYXlOYW1lfHx0Lm5hbWUpKX0sdC5tYXJrPWZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mKGUsayk6KGUuX19wcm90b19fPWssbShlLHUsIkdlbmVyYXRvckZ1bmN0aW9uIikpLGUucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoRiksZX0sdC5hd3JhcD1mdW5jdGlvbihlKXtyZXR1cm57X19hd2FpdDplfX0sXygkLnByb3RvdHlwZSksbSgkLnByb3RvdHlwZSxvLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpLHQuQXN5bmNJdGVyYXRvcj0kLHQuYXN5bmM9ZnVuY3Rpb24oZSxyLG4saSxhKXt2b2lkIDA9PT1hJiYoYT1Qcm9taXNlKTt2YXIgcz1uZXcgJChkKGUscixuLGkpLGEpO3JldHVybiB0LmlzR2VuZXJhdG9yRnVuY3Rpb24ocik/czpzLm5leHQoKS50aGVuKChmdW5jdGlvbihlKXtyZXR1cm4gZS5kb25lP2UudmFsdWU6cy5uZXh0KCl9KSl9LF8oRiksbShGLHUsIkdlbmVyYXRvciIpLG0oRixzLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpLG0oRiwidG9TdHJpbmciLChmdW5jdGlvbigpe3JldHVybiJbb2JqZWN0IEdlbmVyYXRvcl0ifSkpLHQua2V5cz1mdW5jdGlvbihlKXt2YXIgdD1PYmplY3QoZSkscj1bXTtmb3IodmFyIG4gaW4gdClyLnB1c2gobik7cmV0dXJuIHIucmV2ZXJzZSgpLGZ1bmN0aW9uIGUoKXtmb3IoO3IubGVuZ3RoOyl7dmFyIG49ci5wb3AoKTtpZihuIGluIHQpcmV0dXJuIGUudmFsdWU9bixlLmRvbmU9ITEsZX1yZXR1cm4gZS5kb25lPSEwLGV9fSx0LnZhbHVlcz1DLE8ucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpPLHJlc2V0OmZ1bmN0aW9uKHQpe2lmKHRoaXMucHJldj0wLHRoaXMubmV4dD0wLHRoaXMuc2VudD10aGlzLl9zZW50PWUsdGhpcy5kb25lPSExLHRoaXMuZGVsZWdhdGU9bnVsbCx0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5hcmc9ZSx0aGlzLnRyeUVudHJpZXMuZm9yRWFjaChqKSwhdClmb3IodmFyIHIgaW4gdGhpcykidCI9PT1yLmNoYXJBdCgwKSYmbi5jYWxsKHRoaXMscikmJiFpc05hTigrci5zbGljZSgxKSkmJih0aGlzW3JdPWUpfSxzdG9wOmZ1bmN0aW9uKCl7dGhpcy5kb25lPSEwO3ZhciBlPXRoaXMudHJ5RW50cmllc1swXS5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT1lLnR5cGUpdGhyb3cgZS5hcmc7cmV0dXJuIHRoaXMucnZhbH0sZGlzcGF0Y2hFeGNlcHRpb246ZnVuY3Rpb24odCl7aWYodGhpcy5kb25lKXRocm93IHQ7dmFyIHI9dGhpcztmdW5jdGlvbiBpKG4saSl7cmV0dXJuIG8udHlwZT0idGhyb3ciLG8uYXJnPXQsci5uZXh0PW4saSYmKHIubWV0aG9kPSJuZXh0IixyLmFyZz1lKSwhIWl9Zm9yKHZhciBhPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTthPj0wOy0tYSl7dmFyIHM9dGhpcy50cnlFbnRyaWVzW2FdLG89cy5jb21wbGV0aW9uO2lmKCJyb290Ij09PXMudHJ5TG9jKXJldHVybiBpKCJlbmQiKTtpZihzLnRyeUxvYzw9dGhpcy5wcmV2KXt2YXIgbD1uLmNhbGwocywiY2F0Y2hMb2MiKSxjPW4uY2FsbChzLCJmaW5hbGx5TG9jIik7aWYobCYmYyl7aWYodGhpcy5wcmV2PHMuY2F0Y2hMb2MpcmV0dXJuIGkocy5jYXRjaExvYywhMCk7aWYodGhpcy5wcmV2PHMuZmluYWxseUxvYylyZXR1cm4gaShzLmZpbmFsbHlMb2MpfWVsc2UgaWYobCl7aWYodGhpcy5wcmV2PHMuY2F0Y2hMb2MpcmV0dXJuIGkocy5jYXRjaExvYywhMCl9ZWxzZXtpZighYyl0aHJvdyBFcnJvcigidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHkiKTtpZih0aGlzLnByZXY8cy5maW5hbGx5TG9jKXJldHVybiBpKHMuZmluYWxseUxvYyl9fX19LGFicnVwdDpmdW5jdGlvbihlLHQpe2Zvcih2YXIgcj10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7cj49MDstLXIpe3ZhciBpPXRoaXMudHJ5RW50cmllc1tyXTtpZihpLnRyeUxvYzw9dGhpcy5wcmV2JiZuLmNhbGwoaSwiZmluYWxseUxvYyIpJiZ0aGlzLnByZXY8aS5maW5hbGx5TG9jKXt2YXIgYT1pO2JyZWFrfX1hJiYoImJyZWFrIj09PWV8fCJjb250aW51ZSI9PT1lKSYmYS50cnlMb2M8PXQmJnQ8PWEuZmluYWxseUxvYyYmKGE9bnVsbCk7dmFyIHM9YT9hLmNvbXBsZXRpb246e307cmV0dXJuIHMudHlwZT1lLHMuYXJnPXQsYT8odGhpcy5tZXRob2Q9Im5leHQiLHRoaXMubmV4dD1hLmZpbmFsbHlMb2MsZyk6dGhpcy5jb21wbGV0ZShzKX0sY29tcGxldGU6ZnVuY3Rpb24oZSx0KXtpZigidGhyb3ciPT09ZS50eXBlKXRocm93IGUuYXJnO3JldHVybiJicmVhayI9PT1lLnR5cGV8fCJjb250aW51ZSI9PT1lLnR5cGU/dGhpcy5uZXh0PWUuYXJnOiJyZXR1cm4iPT09ZS50eXBlPyh0aGlzLnJ2YWw9dGhpcy5hcmc9ZS5hcmcsdGhpcy5tZXRob2Q9InJldHVybiIsdGhpcy5uZXh0PSJlbmQiKToibm9ybWFsIj09PWUudHlwZSYmdCYmKHRoaXMubmV4dD10KSxnfSxmaW5pc2g6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTt0Pj0wOy0tdCl7dmFyIHI9dGhpcy50cnlFbnRyaWVzW3RdO2lmKHIuZmluYWxseUxvYz09PWUpcmV0dXJuIHRoaXMuY29tcGxldGUoci5jb21wbGV0aW9uLHIuYWZ0ZXJMb2MpLGoociksZ319LGNhdGNoOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7dD49MDstLXQpe3ZhciByPXRoaXMudHJ5RW50cmllc1t0XTtpZihyLnRyeUxvYz09PWUpe3ZhciBuPXIuY29tcGxldGlvbjtpZigidGhyb3ciPT09bi50eXBlKXt2YXIgaT1uLmFyZztqKHIpfXJldHVybiBpfX10aHJvdyBFcnJvcigiaWxsZWdhbCBjYXRjaCBhdHRlbXB0Iil9LGRlbGVnYXRlWWllbGQ6ZnVuY3Rpb24odCxyLG4pe3JldHVybiB0aGlzLmRlbGVnYXRlPXtpdGVyYXRvcjpDKHQpLHJlc3VsdE5hbWU6cixuZXh0TG9jOm59LCJuZXh0Ij09PXRoaXMubWV0aG9kJiYodGhpcy5hcmc9ZSksZ319LHR9ZnVuY3Rpb24gdShlLHQscixuLGksYSxzKXt0cnl7dmFyIG89ZVthXShzKSxsPW8udmFsdWV9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgcihlKX1vLmRvbmU/dChsKTpQcm9taXNlLnJlc29sdmUobCkudGhlbihuLGkpfWZ1bmN0aW9uIG0oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxyPWFyZ3VtZW50cztyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKG4saSl7dmFyIGE9ZS5hcHBseSh0LHIpO2Z1bmN0aW9uIHMoZSl7dShhLG4saSxzLG8sIm5leHQiLGUpfWZ1bmN0aW9uIG8oZSl7dShhLG4saSxzLG8sInRocm93IixlKX1zKHZvaWQgMCl9KSl9fWZ1bmN0aW9uIGQoZSx0KXt2YXIgcj1PYmplY3Qua2V5cyhlKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO3QmJihuPW4uZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpLmVudW1lcmFibGV9KSkpLHIucHVzaC5hcHBseShyLG4pfXJldHVybiByfWZ1bmN0aW9uIGYoZSx0LHIpe3JldHVybih0PWZ1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPWwoZSl8fCFlKXJldHVybiBlO3ZhciByPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1yKXt2YXIgbj1yLmNhbGwoZSx0fHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1sKG4pKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PWwodCk/dDp0KyIifSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOnIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPXIsZX12YXIgcD17bmFtZToiSW5saW5lRm9ybSIsbWl4aW5zOltyKCJlNDljIikuYV0sY29tcG9uZW50czp7VGF3a0lucHV0OmkuVGF3a0lucHV0LFRhd2tQaG9uZUlucHV0OmkuVGF3a1Bob25lSW5wdXQsVGF3a1RleHRhcmVhOmkuVGF3a1RleHRhcmVhLFRhd2tSYWRpbzppLlRhd2tSYWRpbyxUYXdrQ2hlY2tib3g6aS5UYXdrQ2hlY2tib3gsVGF3a0J1dHRvbjppLlRhd2tCdXR0b24sVGF3a0ljb246aS5UYXdrSWNvbn0scHJvcHM6e2Zvcm06e3R5cGU6QXJyYXksZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybltdfX0saXNTdWJtaXR0aW5nOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sc3VibWlzc2lvbkVycm9yOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9fSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2Zvcm1GaWVsZHM6dGhpcy5mb3JtLHZhbHVlczpbXSxhc3NldFBhdGg6Imh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMifX0sd2F0Y2g6e2lzTm90VmFsaWRFbWFpbDpmdW5jdGlvbihlKXt2YXIgdD10aGlzO3RoaXMuZm9ybUZpZWxkcy5mb3JFYWNoKChmdW5jdGlvbihyKXsiZW1haWwiPT09ci50eXBlJiZudWxsIT10LmlzTm90VmFsaWRFbWFpbCYmKHIuaW52YWxpZFR5cGU9ZSl9KSl9LGlzTm90VmFsaWRQaG9uZTpmdW5jdGlvbihlKXt2YXIgdD10aGlzO3RoaXMuZm9ybUZpZWxkcy5mb3JFYWNoKChmdW5jdGlvbihyKXsicGhvbmUiPT09ci50eXBlJiZudWxsIT10LmlzTm90VmFsaWRQaG9uZSYmKHIuaW52YWxpZFR5cGU9ZSl9KSl9LG5hbWU6ZnVuY3Rpb24oZSx0KXtlIT09dCYmdGhpcy51cGRhdGVGb3JtVmFsdWVzKCl9LGVtYWlsOmZ1bmN0aW9uKGUsdCl7ZSE9PXQmJnRoaXMudXBkYXRlRm9ybVZhbHVlcygpfX0sbW91bnRlZDpmdW5jdGlvbigpe3RoaXMudXBkYXRlRm9ybVZhbHVlcygpfSxjb21wdXRlZDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgcj1udWxsIT1hcmd1bWVudHNbdF0/YXJndW1lbnRzW3RdOnt9O3QlMj9kKE9iamVjdChyKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZihlLHQsclt0XSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhyKSk6ZChPYmplY3QocikpLmZvckVhY2goKGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLHQpKX0pKX1yZXR1cm4gZX0oe30sT2JqZWN0KG4uYykoe25hbWU6InZpc2l0b3IvbmFtZSIsZW1haWw6InZpc2l0b3IvZ2V0RW1haWxWYWx1ZSIsaXNOb3RWYWxpZEVtYWlsOiJzZXNzaW9uL2lzTm90VmFsaWRFbWFpbCIsaXNOb3RWYWxpZFBob25lOiJzZXNzaW9uL2lzTm90VmFsaWRQaG9uZSIsY291bnRyeUNvZGU6InNlc3Npb24vY291bnRyeUNvZGUifSkpLG1ldGhvZHM6e3N1Ym1pdEZvcm06ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBtKGMoKS5tYXJrKChmdW5jdGlvbiB0KCl7dmFyIHIsbixpO3JldHVybiBjKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIHQubmV4dD0yLGUuZm9ybWF0SW5saW5lRm9ybURhdGEoKTtjYXNlIDI6aWYocj10LnNlbnQsbj1yLmZvcm1EYXRhLCEoaT1yLmVycm9yKXx8IWkuaGFzRXJyb3ImJiFpLm1lc3NhZ2Upe3QubmV4dD04O2JyZWFrfXJldHVybiBlLiRlbWl0KCJ1cGRhdGU6c3VibWlzc2lvbkVycm9yIixudWxsPT1pP3ZvaWQgMDppLm1lc3NhZ2UpLHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDg6ZS4kZW1pdCgidXBkYXRlOnN1Ym1pc3Npb25FcnJvciIsIiIpLGUuJGVtaXQoInN1Ym1pdCIsbik7Y2FzZSAxMDpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQpfSkpKSgpfSx1cGRhdGVGb3JtVmFsdWVzOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gbShjKCkubWFyaygoZnVuY3Rpb24gdCgpe3JldHVybiBjKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIHQubmV4dD0yLGUuZm9ybWF0RmllbGRzKGUuZm9ybUZpZWxkcyk7Y2FzZSAyOnJldHVybiBlLmZvcm1GaWVsZHM9dC5zZW50LHQubmV4dD01LGUuZm9ybUZpZWxkcy5mb3JFYWNoKChmdW5jdGlvbih0KXtlLiRzZXQoZS52YWx1ZXMsdC5pZCx0LnZhbHVlKX0pKTtjYXNlIDU6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0KX0pKSkoKX19fSxoPU9iamVjdChzLmEpKHAsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi1zbWFsbC10b3AifSxbdCgiZm9ybSIse3JlZjoidGF3ay1pbmxpbmUtZm9ybSIsYXR0cnM6e25hbWU6InRhd2staW5saW5lLWZvcm0ifX0sZS5fbChlLmZvcm1GaWVsZHMsKGZ1bmN0aW9uKHIsbil7cmV0dXJuIHQoImZpZWxkc2V0Iix7a2V5Om59LFsidGV4dCI9PT1yLnR5cGV8fCJjdXN0b20iPT09ci50eXBlP3QoInRhd2staW5wdXQiLHtyZWY6ci5pZCxyZWZJbkZvcjohMCxzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXRvcCB0YXdrLW1hcmdpbi14c21hbGwtYm90dG9tIixhdHRyczp7bGFiZWw6ci5sYWJlbCxpc1JlcXVpcmVkOnIuaXNSZXF1aXJlZCxlcnJvck1lc3NhZ2U6ci5lcnJvck1lc3NhZ2UsdmFsdWU6ZS52YWx1ZXNbci5pZF0saW52YWxpZFR5cGU6ci5pbnZhbGlkVHlwZX0sb246eyJ1cGRhdGU6ZXJyb3JNZXNzYWdlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KHIsImVycm9yTWVzc2FnZSIsdCl9LCJ1cGRhdGU6ZXJyb3ItbWVzc2FnZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJlcnJvck1lc3NhZ2UiLHQpfSwidXBkYXRlOmVycm9yIjpmdW5jdGlvbih0KXtyZXR1cm4gZS5zZXRFcnJvcih0LHIpfSwidXBkYXRlOmludmFsaWRUeXBlIjpbZnVuY3Rpb24odCl7cmV0dXJuIGUuc2V0SW52YWxpZFR5cGUodCxyKX0sZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJpbnZhbGlkVHlwZSIsdCl9XSwidXBkYXRlOmludmFsaWQtdHlwZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJpbnZhbGlkVHlwZSIsdCl9LGlucHV0OmZ1bmN0aW9uKHQpe3JldHVybiBlLnNldFZhbHVlKHQscil9fSxtb2RlbDp7dmFsdWU6ZS52YWx1ZXNbci5pZF0sY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS4kc2V0KGUudmFsdWVzLHIuaWQsdCl9LGV4cHJlc3Npb246InZhbHVlc1tmaWVsZC5pZF0ifX0pOmUuX2UoKSwibmFtZSI9PT1yLnR5cGV8fCJlbWFpbCI9PT1yLnR5cGU/dCgidGF3ay1pbnB1dCIse3JlZjpyLmlkLHJlZkluRm9yOiEwLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtdG9wIHRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b20iLGF0dHJzOnt2YWxpZGF0aW9uOnIudHlwZSxsYWJlbDpyLmxhYmVsLGlzUmVxdWlyZWQ6ci5pc1JlcXVpcmVkLGVycm9yTWVzc2FnZTpyLmVycm9yTWVzc2FnZSx2YWx1ZTplLnZhbHVlc1tyLmlkXSxpbnZhbGlkVHlwZTpyLmludmFsaWRUeXBlLG5hbWU6InBob25lIj09PXIudHlwZT8idGVsIjpyLnR5cGV9LG9uOnsidXBkYXRlOmVycm9yTWVzc2FnZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJlcnJvck1lc3NhZ2UiLHQpfSwidXBkYXRlOmVycm9yLW1lc3NhZ2UiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQociwiZXJyb3JNZXNzYWdlIix0KX0sInVwZGF0ZTplcnJvciI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuc2V0RXJyb3IodCxyKX0sInVwZGF0ZTppbnZhbGlkVHlwZSI6W2Z1bmN0aW9uKHQpe3JldHVybiBlLnNldEludmFsaWRUeXBlKHQscil9LGZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQociwiaW52YWxpZFR5cGUiLHQpfV0sInVwZGF0ZTppbnZhbGlkLXR5cGUiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQociwiaW52YWxpZFR5cGUiLHQpfSxpbnB1dDpmdW5jdGlvbih0KXtyZXR1cm4gZS5zZXRWYWx1ZSh0LHIpfX0sbW9kZWw6e3ZhbHVlOmUudmFsdWVzW3IuaWRdLGNhbGxiYWNrOmZ1bmN0aW9uKHQpe2UuJHNldChlLnZhbHVlcyxyLmlkLHQpfSxleHByZXNzaW9uOiJ2YWx1ZXNbZmllbGQuaWRdIn19KTplLl9lKCksInBob25lIj09PXIudHlwZT90KCJ0YXdrLXBob25lLWlucHV0Iix7cmVmOnIuaWQscmVmSW5Gb3I6ITAsc3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AgdGF3ay1tYXJnaW4teHNtYWxsLWJvdHRvbSIsYXR0cnM6e25hbWU6InRlbCIsdmFsdWU6ZS52YWx1ZXNbci5pZF0scHJlU2VsZWN0Q291bnRyeUNvZGU6ZS5jb3VudHJ5Q29kZSxsYWJlbDpyLmxhYmVsLGlzUmVxdWlyZWQ6ci5pc1JlcXVpcmVkLHZhbGlkYXRpb246ci50eXBlLGVycm9yTWVzc2FnZTpyLmVycm9yTWVzc2FnZSxpbnZhbGlkVHlwZTpyLmludmFsaWRUeXBlLGFzc2V0UGF0aDplLmFzc2V0UGF0aH0sb246eyJ1cGRhdGU6ZXJyb3JNZXNzYWdlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KHIsImVycm9yTWVzc2FnZSIsdCl9LCJ1cGRhdGU6ZXJyb3ItbWVzc2FnZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJlcnJvck1lc3NhZ2UiLHQpfSwidXBkYXRlOmludmFsaWRUeXBlIjpbZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJpbnZhbGlkVHlwZSIsdCl9LGZ1bmN0aW9uKHQpe3JldHVybiBlLnNldEludmFsaWRUeXBlKHQscil9XSwidXBkYXRlOmludmFsaWQtdHlwZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChyLCJpbnZhbGlkVHlwZSIsdCl9LGlucHV0OmZ1bmN0aW9uKHQpe3JldHVybiBlLnNldFZhbHVlKHQscil9LCJ1cGRhdGU6ZXJyb3IiOmZ1bmN0aW9uKHQpe3JldHVybiBlLnNldEVycm9yKHQscil9fSxtb2RlbDp7dmFsdWU6ZS52YWx1ZXNbci5pZF0sY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS4kc2V0KGUudmFsdWVzLHIuaWQsdCl9LGV4cHJlc3Npb246InZhbHVlc1tmaWVsZC5pZF0ifX0pOmUuX2UoKSwidGV4dGFyZWEiPT09ci50eXBlfHwibWVzc2FnZSI9PT1yLnR5cGU/dCgidGF3ay10ZXh0YXJlYSIse3JlZjpyLmlkLHJlZkluRm9yOiEwLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtdG9wIHRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b20iLGF0dHJzOntsYWJlbDpyLmxhYmVsLGlzUmVxdWlyZWQ6ci5pc1JlcXVpcmVkLGVycm9yTWVzc2FnZTpyLmVycm9yTWVzc2FnZSx2YWx1ZTplLnZhbHVlc1tyLmlkXSxpbnZhbGlkVHlwZTpyLmludmFsaWRUeXBlfSxvbjp7InVwZGF0ZTplcnJvck1lc3NhZ2UiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQociwiZXJyb3JNZXNzYWdlIix0KX0sInVwZGF0ZTplcnJvci1tZXNzYWdlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KHIsImVycm9yTWVzc2FnZSIsdCl9LCJ1cGRhdGU6ZXJyb3IiOmZ1bmN0aW9uKHQpe3JldHVybiBlLnNldEVycm9yKHQscil9LCJ1cGRhdGU6aW52YWxpZFR5cGUiOltmdW5jdGlvbih0KXtyZXR1cm4gZS5zZXRJbnZhbGlkVHlwZSh0LHIpfSxmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KHIsImludmFsaWRUeXBlIix0KX1dLCJ1cGRhdGU6aW52YWxpZC10eXBlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KHIsImludmFsaWRUeXBlIix0KX0saW5wdXQ6ZnVuY3Rpb24odCl7cmV0dXJuIGUuc2V0VmFsdWUodCxyKX19LG1vZGVsOnt2YWx1ZTplLnZhbHVlc1tyLmlkXSxjYWxsYmFjazpmdW5jdGlvbih0KXtlLiRzZXQoZS52YWx1ZXMsci5pZCx0KX0sZXhwcmVzc2lvbjoidmFsdWVzW2ZpZWxkLmlkXSJ9fSk6ZS5fZSgpLCJyYWRpbyI9PT1yLnR5cGU/dCgidGF3ay1yYWRpbyIse3JlZjpyLmlkLHJlZkluRm9yOiEwLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtdG9wIHRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b20iLGF0dHJzOntsYWJlbDpyLmxhYmVsLG9wdGlvbnM6ci5zZWxlY3Rpb25zLGlzUmVxdWlyZWQ6ci5pc1JlcXVpcmVkLGVycm9yTWVzc2FnZTpyLmVycm9yTWVzc2FnZX0sb246e2lucHV0OmZ1bmN0aW9uKHQpe3JldHVybiBlLnNldFZhbHVlKHQscil9fX0pOmUuX2UoKSwiY2hlY2tib3giPT09ci50eXBlP3QoInRhd2stY2hlY2tib3giLHtyZWY6ci5pZCxyZWZJbkZvcjohMCxzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXRvcCB0YXdrLW1hcmdpbi14c21hbGwtYm90dG9tIixhdHRyczp7bGFiZWw6ci5sYWJlbCx2YWx1ZTpyLnZhbHVlLG9wdGlvbnM6ci5zZWxlY3Rpb25zLGlzUmVxdWlyZWQ6ci5pc1JlcXVpcmVkLGVycm9yTWVzc2FnZTpyLmVycm9yTWVzc2FnZX19KTplLl9lKCksImRyb3Bkb3duIj09PXIudHlwZT90KCJzZWxlY3QiLHtyZWY6ci5pZCxyZWZJbkZvcjohMCxzdGF0aWNDbGFzczoidGF3ay1zZWxlY3QgdGF3ay1tYXJnaW4teHNtYWxsLXRvcCB0YXdrLW1hcmdpbi14c21hbGwtYm90dG9tIixvbjp7aW5wdXQ6ZnVuY3Rpb24odCl7cmV0dXJuIGUuc2V0VmFsdWUodC50YXJnZXQudmFsdWUscil9fX0sW3IubGFiZWw/dCgib3B0aW9uIix7YXR0cnM6e3NlbGVjdGVkOiIiLGRpc2FibGVkOiIifX0sW2UuX3YoIiAiK2UuX3Moci5sYWJlbCkrIiAiKV0pOmUuX2UoKSxlLl9sKHIuc2VsZWN0aW9ucywoZnVuY3Rpb24ocixuKXtyZXR1cm4gdCgib3B0aW9uIix7a2V5Om4sZG9tUHJvcHM6e3ZhbHVlOnIubGFiZWx9fSxbZS5fdigiICIrZS5fcyhyLmxhYmVsKSsiICIpXSl9KSldLDIpOmUuX2UoKV0sMSl9KSksMCksZS5zdWJtaXNzaW9uRXJyb3I/dCgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwgdGF3ay10ZXh0LXJlZC0xIHRhd2stdGV4dC1yZWd1bGFyLTEifSxbZS5fdigiICIrZS5fcyhlLnN1Ym1pc3Npb25FcnJvcikrIiAiKV0pOmUuX2UoKSx0KCJ0YXdrLWJ1dHRvbiIse2F0dHJzOntsYWJlbDplLiRpMThuKCJmb3JtIiwic3VibWl0X2J1dHRvbiIpLGRpc2FibGVkOmUuaXNTdWJtaXR0aW5nfSxvbjp7Y2xpY2s6ZS5zdWJtaXRGb3JtfX0sW2UuaXNTdWJtaXR0aW5nP3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LWNlbnRlciJ9LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zcGlubmVyLWxvYWRlciJ9KV0pOlt0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToic2VuZCJ9fSksZS5fdigiICIrZS5fcyhlLiRpMThuKCJmb3JtIiwic3VibWl0X2J1dHRvbiIpKSsiICIpXV0sMildLDEpfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHMsdj1yKCJiZGQwIiksZz1yKCIzYzQwIik7ZnVuY3Rpb24geShlKXtyZXR1cm4oeT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIGIoKXtiPWZ1bmN0aW9uKCl7cmV0dXJuIHR9O3ZhciBlLHQ9e30scj1PYmplY3QucHJvdG90eXBlLG49ci5oYXNPd25Qcm9wZXJ0eSxpPU9iamVjdC5kZWZpbmVQcm9wZXJ0eXx8ZnVuY3Rpb24oZSx0LHIpe2VbdF09ci52YWx1ZX0sYT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sP1N5bWJvbDp7fSxzPWEuaXRlcmF0b3J8fCJAQGl0ZXJhdG9yIixvPWEuYXN5bmNJdGVyYXRvcnx8IkBAYXN5bmNJdGVyYXRvciIsbD1hLnRvU3RyaW5nVGFnfHwiQEB0b1N0cmluZ1RhZyI7ZnVuY3Rpb24gYyhlLHQscil7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOnIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSxlW3RdfXRyeXtjKHt9LCIiKX1jYXRjaChlKXtjPWZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gZVt0XT1yfX1mdW5jdGlvbiB1KGUsdCxyLG4pe3ZhciBhPXQmJnQucHJvdG90eXBlIGluc3RhbmNlb2Ygdj90OnYscz1PYmplY3QuY3JlYXRlKGEucHJvdG90eXBlKSxvPW5ldyBPKG58fFtdKTtyZXR1cm4gaShzLCJfaW52b2tlIix7dmFsdWU6RShlLHIsbyl9KSxzfWZ1bmN0aW9uIG0oZSx0LHIpe3RyeXtyZXR1cm57dHlwZToibm9ybWFsIixhcmc6ZS5jYWxsKHQscil9fWNhdGNoKGUpe3JldHVybnt0eXBlOiJ0aHJvdyIsYXJnOmV9fX10LndyYXA9dTt2YXIgZD0ic3VzcGVuZGVkU3RhcnQiLGY9ImV4ZWN1dGluZyIscD0iY29tcGxldGVkIixoPXt9O2Z1bmN0aW9uIHYoKXt9ZnVuY3Rpb24gZygpe31mdW5jdGlvbiBrKCl7fXZhciB3PXt9O2ModyxzLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpO3ZhciBUPU9iamVjdC5nZXRQcm90b3R5cGVPZix4PVQmJlQoVChDKFtdKSkpO3gmJnghPT1yJiZuLmNhbGwoeCxzKSYmKHc9eCk7dmFyIEY9ay5wcm90b3R5cGU9di5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZSh3KTtmdW5jdGlvbiBfKGUpe1sibmV4dCIsInRocm93IiwicmV0dXJuIl0uZm9yRWFjaCgoZnVuY3Rpb24odCl7YyhlLHQsKGZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9pbnZva2UodCxlKX0pKX0pKX1mdW5jdGlvbiAkKGUsdCl7ZnVuY3Rpb24gcihpLGEscyxvKXt2YXIgbD1tKGVbaV0sZSxhKTtpZigidGhyb3ciIT09bC50eXBlKXt2YXIgYz1sLmFyZyx1PWMudmFsdWU7cmV0dXJuIHUmJiJvYmplY3QiPT15KHUpJiZuLmNhbGwodSwiX19hd2FpdCIpP3QucmVzb2x2ZSh1Ll9fYXdhaXQpLnRoZW4oKGZ1bmN0aW9uKGUpe3IoIm5leHQiLGUscyxvKX0pLChmdW5jdGlvbihlKXtyKCJ0aHJvdyIsZSxzLG8pfSkpOnQucmVzb2x2ZSh1KS50aGVuKChmdW5jdGlvbihlKXtjLnZhbHVlPWUscyhjKX0pLChmdW5jdGlvbihlKXtyZXR1cm4gcigidGhyb3ciLGUscyxvKX0pKX1vKGwuYXJnKX12YXIgYTtpKHRoaXMsIl9pbnZva2UiLHt2YWx1ZTpmdW5jdGlvbihlLG4pe2Z1bmN0aW9uIGkoKXtyZXR1cm4gbmV3IHQoKGZ1bmN0aW9uKHQsaSl7cihlLG4sdCxpKX0pKX1yZXR1cm4gYT1hP2EudGhlbihpLGkpOmkoKX19KX1mdW5jdGlvbiBFKHQscixuKXt2YXIgaT1kO3JldHVybiBmdW5jdGlvbihhLHMpe2lmKGk9PT1mKXRocm93IEVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nIik7aWYoaT09PXApe2lmKCJ0aHJvdyI9PT1hKXRocm93IHM7cmV0dXJue3ZhbHVlOmUsZG9uZTohMH19Zm9yKG4ubWV0aG9kPWEsbi5hcmc9czs7KXt2YXIgbz1uLmRlbGVnYXRlO2lmKG8pe3ZhciBsPUkobyxuKTtpZihsKXtpZihsPT09aCljb250aW51ZTtyZXR1cm4gbH19aWYoIm5leHQiPT09bi5tZXRob2Qpbi5zZW50PW4uX3NlbnQ9bi5hcmc7ZWxzZSBpZigidGhyb3ciPT09bi5tZXRob2Qpe2lmKGk9PT1kKXRocm93IGk9cCxuLmFyZztuLmRpc3BhdGNoRXhjZXB0aW9uKG4uYXJnKX1lbHNlInJldHVybiI9PT1uLm1ldGhvZCYmbi5hYnJ1cHQoInJldHVybiIsbi5hcmcpO2k9Zjt2YXIgYz1tKHQscixuKTtpZigibm9ybWFsIj09PWMudHlwZSl7aWYoaT1uLmRvbmU/cDoic3VzcGVuZGVkWWllbGQiLGMuYXJnPT09aCljb250aW51ZTtyZXR1cm57dmFsdWU6Yy5hcmcsZG9uZTpuLmRvbmV9fSJ0aHJvdyI9PT1jLnR5cGUmJihpPXAsbi5tZXRob2Q9InRocm93IixuLmFyZz1jLmFyZyl9fX1mdW5jdGlvbiBJKHQscil7dmFyIG49ci5tZXRob2QsaT10Lml0ZXJhdG9yW25dO2lmKGk9PT1lKXJldHVybiByLmRlbGVnYXRlPW51bGwsInRocm93Ij09PW4mJnQuaXRlcmF0b3IucmV0dXJuJiYoci5tZXRob2Q9InJldHVybiIsci5hcmc9ZSxJKHQsciksInRocm93Ij09PXIubWV0aG9kKXx8InJldHVybiIhPT1uJiYoci5tZXRob2Q9InRocm93IixyLmFyZz1uZXcgVHlwZUVycm9yKCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICciK24rIicgbWV0aG9kIikpLGg7dmFyIGE9bShpLHQuaXRlcmF0b3Isci5hcmcpO2lmKCJ0aHJvdyI9PT1hLnR5cGUpcmV0dXJuIHIubWV0aG9kPSJ0aHJvdyIsci5hcmc9YS5hcmcsci5kZWxlZ2F0ZT1udWxsLGg7dmFyIHM9YS5hcmc7cmV0dXJuIHM/cy5kb25lPyhyW3QucmVzdWx0TmFtZV09cy52YWx1ZSxyLm5leHQ9dC5uZXh0TG9jLCJyZXR1cm4iIT09ci5tZXRob2QmJihyLm1ldGhvZD0ibmV4dCIsci5hcmc9ZSksci5kZWxlZ2F0ZT1udWxsLGgpOnM6KHIubWV0aG9kPSJ0aHJvdyIsci5hcmc9bmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3QiKSxyLmRlbGVnYXRlPW51bGwsaCl9ZnVuY3Rpb24gUyhlKXt2YXIgdD17dHJ5TG9jOmVbMF19OzEgaW4gZSYmKHQuY2F0Y2hMb2M9ZVsxXSksMiBpbiBlJiYodC5maW5hbGx5TG9jPWVbMl0sdC5hZnRlckxvYz1lWzNdKSx0aGlzLnRyeUVudHJpZXMucHVzaCh0KX1mdW5jdGlvbiBqKGUpe3ZhciB0PWUuY29tcGxldGlvbnx8e307dC50eXBlPSJub3JtYWwiLGRlbGV0ZSB0LmFyZyxlLmNvbXBsZXRpb249dH1mdW5jdGlvbiBPKGUpe3RoaXMudHJ5RW50cmllcz1be3RyeUxvYzoicm9vdCJ9XSxlLmZvckVhY2goUyx0aGlzKSx0aGlzLnJlc2V0KCEwKX1mdW5jdGlvbiBDKHQpe2lmKHR8fCIiPT09dCl7dmFyIHI9dFtzXTtpZihyKXJldHVybiByLmNhbGwodCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQubmV4dClyZXR1cm4gdDtpZighaXNOYU4odC5sZW5ndGgpKXt2YXIgaT0tMSxhPWZ1bmN0aW9uIHIoKXtmb3IoOysraTx0Lmxlbmd0aDspaWYobi5jYWxsKHQsaSkpcmV0dXJuIHIudmFsdWU9dFtpXSxyLmRvbmU9ITEscjtyZXR1cm4gci52YWx1ZT1lLHIuZG9uZT0hMCxyfTtyZXR1cm4gYS5uZXh0PWF9fXRocm93IG5ldyBUeXBlRXJyb3IoeSh0KSsiIGlzIG5vdCBpdGVyYWJsZSIpfXJldHVybiBnLnByb3RvdHlwZT1rLGkoRiwiY29uc3RydWN0b3IiLHt2YWx1ZTprLGNvbmZpZ3VyYWJsZTohMH0pLGkoaywiY29uc3RydWN0b3IiLHt2YWx1ZTpnLGNvbmZpZ3VyYWJsZTohMH0pLGcuZGlzcGxheU5hbWU9YyhrLGwsIkdlbmVyYXRvckZ1bmN0aW9uIiksdC5pc0dlbmVyYXRvckZ1bmN0aW9uPWZ1bmN0aW9uKGUpe3ZhciB0PSJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlLmNvbnN0cnVjdG9yO3JldHVybiEhdCYmKHQ9PT1nfHwiR2VuZXJhdG9yRnVuY3Rpb24iPT09KHQuZGlzcGxheU5hbWV8fHQubmFtZSkpfSx0Lm1hcms9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YoZSxrKTooZS5fX3Byb3RvX189ayxjKGUsbCwiR2VuZXJhdG9yRnVuY3Rpb24iKSksZS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShGKSxlfSx0LmF3cmFwPWZ1bmN0aW9uKGUpe3JldHVybntfX2F3YWl0OmV9fSxfKCQucHJvdG90eXBlKSxjKCQucHJvdG90eXBlLG8sKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksdC5Bc3luY0l0ZXJhdG9yPSQsdC5hc3luYz1mdW5jdGlvbihlLHIsbixpLGEpe3ZvaWQgMD09PWEmJihhPVByb21pc2UpO3ZhciBzPW5ldyAkKHUoZSxyLG4saSksYSk7cmV0dXJuIHQuaXNHZW5lcmF0b3JGdW5jdGlvbihyKT9zOnMubmV4dCgpLnRoZW4oKGZ1bmN0aW9uKGUpe3JldHVybiBlLmRvbmU/ZS52YWx1ZTpzLm5leHQoKX0pKX0sXyhGKSxjKEYsbCwiR2VuZXJhdG9yIiksYyhGLHMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksYyhGLCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgR2VuZXJhdG9yXSJ9KSksdC5rZXlzPWZ1bmN0aW9uKGUpe3ZhciB0PU9iamVjdChlKSxyPVtdO2Zvcih2YXIgbiBpbiB0KXIucHVzaChuKTtyZXR1cm4gci5yZXZlcnNlKCksZnVuY3Rpb24gZSgpe2Zvcig7ci5sZW5ndGg7KXt2YXIgbj1yLnBvcCgpO2lmKG4gaW4gdClyZXR1cm4gZS52YWx1ZT1uLGUuZG9uZT0hMSxlfXJldHVybiBlLmRvbmU9ITAsZX19LHQudmFsdWVzPUMsTy5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOk8scmVzZXQ6ZnVuY3Rpb24odCl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9ZSx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz1lLHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKGopLCF0KWZvcih2YXIgciBpbiB0aGlzKSJ0Ij09PXIuY2hhckF0KDApJiZuLmNhbGwodGhpcyxyKSYmIWlzTmFOKCtyLnNsaWNlKDEpKSYmKHRoaXNbcl09ZSl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIGU9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PWUudHlwZSl0aHJvdyBlLmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbih0KXtpZih0aGlzLmRvbmUpdGhyb3cgdDt2YXIgcj10aGlzO2Z1bmN0aW9uIGkobixpKXtyZXR1cm4gby50eXBlPSJ0aHJvdyIsby5hcmc9dCxyLm5leHQ9bixpJiYoci5tZXRob2Q9Im5leHQiLHIuYXJnPWUpLCEhaX1mb3IodmFyIGE9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2E+PTA7LS1hKXt2YXIgcz10aGlzLnRyeUVudHJpZXNbYV0sbz1zLmNvbXBsZXRpb247aWYoInJvb3QiPT09cy50cnlMb2MpcmV0dXJuIGkoImVuZCIpO2lmKHMudHJ5TG9jPD10aGlzLnByZXYpe3ZhciBsPW4uY2FsbChzLCJjYXRjaExvYyIpLGM9bi5jYWxsKHMsImZpbmFsbHlMb2MiKTtpZihsJiZjKXtpZih0aGlzLnByZXY8cy5jYXRjaExvYylyZXR1cm4gaShzLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8cy5maW5hbGx5TG9jKXJldHVybiBpKHMuZmluYWxseUxvYyl9ZWxzZSBpZihsKXtpZih0aGlzLnByZXY8cy5jYXRjaExvYylyZXR1cm4gaShzLmNhdGNoTG9jLCEwKX1lbHNle2lmKCFjKXRocm93IEVycm9yKCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseSIpO2lmKHRoaXMucHJldjxzLmZpbmFsbHlMb2MpcmV0dXJuIGkocy5maW5hbGx5TG9jKX19fX0sYWJydXB0OmZ1bmN0aW9uKGUsdCl7Zm9yKHZhciByPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtyPj0wOy0tcil7dmFyIGk9dGhpcy50cnlFbnRyaWVzW3JdO2lmKGkudHJ5TG9jPD10aGlzLnByZXYmJm4uY2FsbChpLCJmaW5hbGx5TG9jIikmJnRoaXMucHJldjxpLmZpbmFsbHlMb2Mpe3ZhciBhPWk7YnJlYWt9fWEmJigiYnJlYWsiPT09ZXx8ImNvbnRpbnVlIj09PWUpJiZhLnRyeUxvYzw9dCYmdDw9YS5maW5hbGx5TG9jJiYoYT1udWxsKTt2YXIgcz1hP2EuY29tcGxldGlvbjp7fTtyZXR1cm4gcy50eXBlPWUscy5hcmc9dCxhPyh0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5uZXh0PWEuZmluYWxseUxvYyxoKTp0aGlzLmNvbXBsZXRlKHMpfSxjb21wbGV0ZTpmdW5jdGlvbihlLHQpe2lmKCJ0aHJvdyI9PT1lLnR5cGUpdGhyb3cgZS5hcmc7cmV0dXJuImJyZWFrIj09PWUudHlwZXx8ImNvbnRpbnVlIj09PWUudHlwZT90aGlzLm5leHQ9ZS5hcmc6InJldHVybiI9PT1lLnR5cGU/KHRoaXMucnZhbD10aGlzLmFyZz1lLmFyZyx0aGlzLm1ldGhvZD0icmV0dXJuIix0aGlzLm5leHQ9ImVuZCIpOiJub3JtYWwiPT09ZS50eXBlJiZ0JiYodGhpcy5uZXh0PXQpLGh9LGZpbmlzaDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO3Q+PTA7LS10KXt2YXIgcj10aGlzLnRyeUVudHJpZXNbdF07aWYoci5maW5hbGx5TG9jPT09ZSlyZXR1cm4gdGhpcy5jb21wbGV0ZShyLmNvbXBsZXRpb24sci5hZnRlckxvYyksaihyKSxofX0sY2F0Y2g6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTt0Pj0wOy0tdCl7dmFyIHI9dGhpcy50cnlFbnRyaWVzW3RdO2lmKHIudHJ5TG9jPT09ZSl7dmFyIG49ci5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT1uLnR5cGUpe3ZhciBpPW4uYXJnO2oocil9cmV0dXJuIGl9fXRocm93IEVycm9yKCJpbGxlZ2FsIGNhdGNoIGF0dGVtcHQiKX0sZGVsZWdhdGVZaWVsZDpmdW5jdGlvbih0LHIsbil7cmV0dXJuIHRoaXMuZGVsZWdhdGU9e2l0ZXJhdG9yOkModCkscmVzdWx0TmFtZTpyLG5leHRMb2M6bn0sIm5leHQiPT09dGhpcy5tZXRob2QmJih0aGlzLmFyZz1lKSxofX0sdH1mdW5jdGlvbiBrKGUsdCxyLG4saSxhLHMpe3RyeXt2YXIgbz1lW2FdKHMpLGw9by52YWx1ZX1jYXRjaChlKXtyZXR1cm4gdm9pZCByKGUpfW8uZG9uZT90KGwpOlByb21pc2UucmVzb2x2ZShsKS50aGVuKG4saSl9ZnVuY3Rpb24gdyhlKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgdD10aGlzLHI9YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24obixpKXt2YXIgYT1lLmFwcGx5KHQscik7ZnVuY3Rpb24gcyhlKXtrKGEsbixpLHMsbywibmV4dCIsZSl9ZnVuY3Rpb24gbyhlKXtrKGEsbixpLHMsbywidGhyb3ciLGUpfXModm9pZCAwKX0pKX19ZnVuY3Rpb24gVChlLHQpe3ZhciByPU9iamVjdC5rZXlzKGUpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7dCYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCkuZW51bWVyYWJsZX0pKSksci5wdXNoLmFwcGx5KHIsbil9cmV0dXJuIHJ9ZnVuY3Rpb24geChlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgcj1udWxsIT1hcmd1bWVudHNbdF0/YXJndW1lbnRzW3RdOnt9O3QlMj9UKE9iamVjdChyKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24odCl7RihlLHQsclt0XSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhyKSk6VChPYmplY3QocikpLmZvckVhY2goKGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLHQpKX0pKX1yZXR1cm4gZX1mdW5jdGlvbiBGKGUsdCxyKXtyZXR1cm4odD1mdW5jdGlvbihlKXt2YXIgdD1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT15KGUpfHwhZSlyZXR1cm4gZTt2YXIgcj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09cil7dmFyIG49ci5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9eShuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PXQ/U3RyaW5nOk51bWJlcikoZSl9KGUsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT15KHQpP3Q6dCsiIn0odCkpaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpyLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVt0XT1yLGV9dmFyIF89e25hbWU6ImNoYXQtYm9keS1tZXNzc2FnZS1idWJibGUiLGNvbXBvbmVudHM6e1Rhd2tDYXJkOmkuVGF3a0NhcmQsVGF3a1NwaW5uZXI6byxUYXdrQWxlcnQ6aS5UYXdrQWxlcnQsVGF3a0Vtb2ppOmkuVGF3a0Vtb2ppLFRhd2tJY29uOmkuVGF3a0ljb24sVGF3a0J1dHRvbjppLlRhd2tCdXR0b24sVGF3a0NoYXRCdWJibGU6aS5UYXdrQ2hhdEJ1YmJsZSxUYXdrSW5wdXQ6aS5UYXdrSW5wdXQsVGF3a1Bob25lSW5wdXQ6aS5UYXdrUGhvbmVJbnB1dCxUYXdrVGV4dGFyZWE6aS5UYXdrVGV4dGFyZWEsVGF3a1RpbWVhZ286aS5UYXdrVGltZWFnbyxUYXdrSW5saW5lRm9ybTpofSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue3RpY2tldEZvcm06e25hbWU6IiIsZW1haWw6IiIscGhvbmU6IiIsc3ViamVjdDoiIixtZXNzYWdlOiIiLHJlZmVyZW5jZUlkOnRoaXMubXNnLnRpY2tldEZvcm1SZWYsaXNTdWJtaXR0aW5nOiExLHN1Ym1pc3Npb25FcnJvcjpudWxsLHN1Ym1pc3Npb25TdWNjZXNzOiExLGludmFsaWQ6e25hbWU6bnVsbCxlbWFpbDpudWxsLHBob25lOm51bGwsc3ViamVjdDpudWxsLG1lc3NhZ2U6bnVsbH19LGxlYWRGb3JtOntuYW1lOiIiLGVtYWlsOiIiLHBob25lOiIiLG1lc3NhZ2U6IiIscmVmZXJlbmNlSWQ6dGhpcy5tc2cubGVhZEZvcm1SZWYsaXNTdWJtaXR0aW5nOiExLHN1Ym1pc3Npb25FcnJvcjpudWxsLHN1Ym1pc3Npb25TdWNjZXNzOiExLGludmFsaWQ6e25hbWU6bnVsbCxlbWFpbDpudWxsLHBob25lOm51bGwsbWVzc2FnZTpudWxsfX0sYXNzZXRQYXRoOiJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIn19LHByb3BzOnttc2c6e3R5cGU6T2JqZWN0LHJlcXVpcmVkOiEwfSxiYXJNZXNzYWdlUmVyZW5jZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSxlbW9qaUVuYWJsZWQ6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiEwfX0sbW91bnRlZDpmdW5jdGlvbigpe3RoaXMudGlja2V0Rm9ybS5uYW1lPXRoaXMubmFtZSx0aGlzLnRpY2tldEZvcm0uZW1haWw9dGhpcy5lbWFpbCx0aGlzLmxlYWRGb3JtLm5hbWU9dGhpcy5uYW1lLHRoaXMubGVhZEZvcm0uZW1haWw9dGhpcy5lbWFpbH0sd2F0Y2g6e25hbWU6ZnVuY3Rpb24oZSx0KXtlIT09dCYmKHRoaXMudGlja2V0Rm9ybS5uYW1lPWUsdGhpcy5sZWFkRm9ybS5uYW1lPWUpfSxlbWFpbDpmdW5jdGlvbihlLHQpe2UhPT10JiYodGhpcy50aWNrZXRGb3JtLmVtYWlsPWUsdGhpcy5sZWFkRm9ybS5lbWFpbD1lKX19LGNvbXB1dGVkOngoeCh7fSxPYmplY3Qobi5jKSh7bmFtZToidmlzaXRvci9uYW1lIixlbWFpbDoidmlzaXRvci9nZXRFbWFpbFZhbHVlIixmb3JtUmVmczoiY2hhdC9mb3JtUmVmcyIscHJvcGVydHlJZDoicHJvcGVydHkvaWQiLHdpZGdldElkOiJ3aWRnZXQvaWQiLG9zOiJicm93c2VyRGF0YS9vcyIsZm9ybXM6ImZvcm0vZm9ybXMiLGNvdW50cnlDb2RlOiJzZXNzaW9uL2NvdW50cnlDb2RlIn0pKSx7fSx7Z2V0VGlja2V0SW1hZ2VVcmw6ZnVuY3Rpb24oKXtyZXR1cm4iIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMiLCIvaW1hZ2VzL3RpY2tldC1zdWJtaXQtc3VjY2Vzcy5zdmciKX0saGFzVGlja2V0Rm9ybVN1Ym1pdDpmdW5jdGlvbigpe3JldHVybiEhdGhpcy5tc2cudGlja2V0Rm9ybVJlZiYmdGhpcy5mb3JtUmVmc1t0aGlzLm1zZy50aWNrZXRGb3JtUmVmXX0saGFzTGVhZEZvcm1TdWJtaXQ6ZnVuY3Rpb24oKXtyZXR1cm4hIXRoaXMubXNnLmxlYWRGb3JtUmVmJiZ0aGlzLmZvcm1SZWZzW3RoaXMubXNnLmxlYWRGb3JtUmVmXX0sZ2V0TGVhZEZvcm06ZnVuY3Rpb24oKXt2YXIgZTtpZih0aGlzLm1zZy5sZWFkRm9ybVJlZil7dmFyIHQ9dGhpcy5mb3Jtcy5maW5kKChmdW5jdGlvbihlKXtyZXR1cm4ibGVhZC1jYXB0dXJlLWZvcm0iPT09ZS5mb3JtSWR9KSk7cmV0dXJuKG51bGw9PXR8fG51bGw9PT0oZT10LmNvbnRlbnQpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLmZpZWxkcyl8fFtdfX19KSxtZXRob2RzOnt1cGRhdGVJbnZhbGlkVHlwZTpmdW5jdGlvbihlLHQpe2UmJmUubGVuZ3RoPjAmJih0aGlzLnRpY2tldEZvcm0uaW52YWxpZFt0XT1lKX0sdmFsaWRhdGVQaG9uZUZpZWxkOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy50aWNrZXRGb3JtLnBob25lO2lmKGUmJmUudHJpbSgpLmxlbmd0aD4wKXt2YXIgdD1lLnJlcGxhY2UoL1tcc1wtKCldL2csIiIpLHI9L15bMS05XVxkezEsMTR9JC8udGVzdCh0KSYmdC5sZW5ndGg+PTg7dGhpcy50aWNrZXRGb3JtLmludmFsaWQucGhvbmU9cj8iIjoicGhvbmUifWVsc2UgdGhpcy50aWNrZXRGb3JtLmludmFsaWQucGhvbmU9IiJ9LGhhbmRsZVBob25lSW5wdXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZTtpZih0JiZ0LnRyaW0oKS5sZW5ndGg+MCl7dmFyIHI9dC5yZXBsYWNlKC9bXHNcLSgpXS9nLCIiKSxuPS9eWzEtOV1cZHsxLDE0fSQvLnRlc3QocikmJnIubGVuZ3RoPj04O3RoaXMudGlja2V0Rm9ybS5pbnZhbGlkLnBob25lPW4/IiI6InBob25lIn1lbHNlIHRoaXMudGlja2V0Rm9ybS5pbnZhbGlkLnBob25lPSIifSxoYW5kbGVBdHRhY2htZW50UHJvcHM6ZnVuY3Rpb24oZSl7cmV0dXJuIHcoYigpLm1hcmsoKGZ1bmN0aW9uIHQoKXt2YXIgcixuO3JldHVybiBiKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIHI9ZS5maWxlVHlwZSxuPXt9LHQubmV4dD00LGUuYXR0YWNobWVudHMuZm9yRWFjaCgoZnVuY3Rpb24odCl7ImltYWdlIj09PXQudHlwZT9uLmltYWdlcy5wdXNoKHtzb3VyY2U6dC5maWxlTGluayxuYW1lOnQuZmlsZU5hbWV9KToidmlkZW8iPT09cj9uLnZpZGVvcy5wdXNoKHtuYW1lOmUuZmlsZU5hbWUsc291cmNlOiJzZWxmaG9zdGVkIix1cmw6ZS5maWxlTGluayxvcHRpb25zOntjb250cm9sczoiIixtdXRlOiEwLGxvb3A6ITEsc3RhcnRUaW1lOiIwIn0sc2l6ZTplLmh1bWFuaXplRmlsZVNpemV9KToiYXVkaW8iPT09cj9uLmF1ZGlvcy5wdXNoKHtzb3VyY2U6ZS5maWxlTGluayx0eXBlOmUuZGF0YS5maWxlLm1pbWV0eXBlLG5hbWU6ZS5maWxlTmFtZSxzaXplOmUuaHVtYW5pemVGaWxlU2l6ZX0pOm4uZmlsZXMucHVzaCh7c291cmNlOmUuZmlsZUxpbmssbmFtZTplLmZpbGVOYW1lLHNpemU6ZS5odW1hbml6ZUZpbGVTaXplfSl9KSk7Y2FzZSA0OnJldHVybiB0LmFicnVwdCgicmV0dXJuIixuKTtjYXNlIDU6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0KX0pKSkoKX0sc2VuZFRpY2tldEZvcm06ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiB3KGIoKS5tYXJrKChmdW5jdGlvbiB0KCl7dmFyIHIsbixpO3JldHVybiBiKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6aWYoZS50aWNrZXRGb3JtLnN1Ym1pc3Npb25FcnJvcj1udWxsLGUuJHJlZnNbInRpY2tldC1uYW1lLWlucHV0Il0mJmUuJHJlZnNbInRpY2tldC1uYW1lLWlucHV0Il0udmFsaWRhdGUoKSxlLiRyZWZzWyJ0aWNrZXQtZW1haWwtaW5wdXQiXSYmZS4kcmVmc1sidGlja2V0LWVtYWlsLWlucHV0Il0udmFsaWRhdGUoKSxlLiRyZWZzWyJ0aWNrZXQtcGhvbmUtaW5wdXQiXSYmZS52YWxpZGF0ZVBob25lRmllbGQoKSxlLiRyZWZzWyJ0aWNrZXQtc3ViamVjdC1pbnB1dCJdJiZlLiRyZWZzWyJ0aWNrZXQtc3ViamVjdC1pbnB1dCJdLnZhbGlkYXRlKCksZS4kcmVmc1sidGlja2V0LW1lc3NhZ2UtaW5wdXQiXSYmZS4kcmVmc1sidGlja2V0LW1lc3NhZ2UtaW5wdXQiXS52YWxpZGF0ZSgpLCEoZS50aWNrZXRGb3JtLmludmFsaWQubmFtZXx8ZS50aWNrZXRGb3JtLmludmFsaWQuZW1haWx8fGUudGlja2V0Rm9ybS5pbnZhbGlkLnBob25lfHxlLnRpY2tldEZvcm0uaW52YWxpZC5zdWJqZWN0fHxlLnRpY2tldEZvcm0uaW52YWxpZC5tZXNzYWdlKSl7dC5uZXh0PTg7YnJlYWt9cmV0dXJuIHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDg6cmV0dXJuIGUudGlja2V0Rm9ybS5pc1N1Ym1pdHRpbmc9ITAsdC5wcmV2PTksdC5uZXh0PTEyLGUuJHN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL2NoZWNrVG9rZW5WYWxpZGl0eSIpO2Nhc2UgMTI6dC5uZXh0PTE4O2JyZWFrO2Nhc2UgMTQ6cmV0dXJuIHQucHJldj0xNCx0LnQwPXQuY2F0Y2goOSksY29uc29sZS5lcnJvcigiW0pTQVBJL0xvZ2luXSIsdC50MCksdC5hYnJ1cHQoInJldHVybiIpO2Nhc2UgMTg6KHI9ZS4kVGF3a1Nlc3Npb25NYW5hZ2VyLmdldFN0b3JlZFRva2VuKCkpJiYobj17IlgtVGF3ay1Ub2tlbiI6cn0pLGk9e3JlZmVyZW5jZUlkOmUubXNnLnRpY2tldEZvcm1SZWYsbmFtZTplLnRpY2tldEZvcm0ubmFtZSxlbWFpbDplLnRpY2tldEZvcm0uZW1haWwscGhvbmU6ZS50aWNrZXRGb3JtLnBob25lPyIrIi5jb25jYXQoZS50aWNrZXRGb3JtLnBob25lKTp2b2lkIDAsc3ViamVjdDplLnRpY2tldEZvcm0uc3ViamVjdCxtZXNzYWdlOmUudGlja2V0Rm9ybS5tZXNzYWdlfSx2LmEucG9zdCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIsIi92MS90aWNrZXQvY3JlYXRlIiksaSxuLChmdW5jdGlvbih0LHIpe2lmKHR8fHIuZXJyb3Ipe2lmKGUudGlja2V0Rm9ybS5pc1N1Ym1pdHRpbmc9ITEsciYmci5lcnJvcil7aWYoIkludGVybmFsU2VydmVyRXJyb3IiPT09ci5lcnJvci5jb2RlKXJldHVybiB2b2lkKGUudGlja2V0Rm9ybS5zdWJtaXNzaW9uRXJyb3I9IlRoZSBzZXJ2ZXIgaXMgdW5hdmFpbGFibGUuIFBsZWFzZSB0cnkgYWdhaW4uIik7aWYoIlRvb01hbnlSZXF1ZXN0c0Vycm9yIj09PXIuZXJyb3IuY29kZSlyZXR1cm4gdm9pZChlLnRpY2tldEZvcm0uc3VibWlzc2lvbkVycm9yPSJZb3UgaGF2ZSBtYWRlIHRvbyBtYW55IHJlcXVlc3RzLiIpO2lmKCJHb25lRXJyb3IiPT09ci5lcnJvci5jb2RlKXJldHVybiB2b2lkKGUudGlja2V0Rm9ybS5zdWJtaXNzaW9uRXJyb3I9IlByb3BlcnR5IGlzIG5vdCBhdmFpbGFibGUiKTtpZigiTm90Rm91bmRFcnJvciI9PT1yLmVycm9yLmNvZGUpcmV0dXJuIHZvaWQoZS50aWNrZXRGb3JtLnN1Ym1pc3Npb25FcnJvcj0iU2Vzc2lvbiBub3QgZm91bmQiKX1lLnRpY2tldEZvcm0uc3VibWlzc2lvbkVycm9yPSJVbmFibGUgdG8gc3VibWl0IGZvcm0uIFBsZWFzZSB0cnkgYWdhaW4ifWVsc2UgZS50aWNrZXRGb3JtLmlzU3VibWl0dGluZz0hMSxlLnRpY2tldEZvcm0uc3VibWlzc2lvblN1Y2Nlc3M9ITAsZS4kc3RvcmUuY29tbWl0KCJjaGF0L3NldEZvcm1SZWZzIix7aWQ6ZS5tc2cudGlja2V0Rm9ybVJlZixkb25lOiEwfSksZS4kbmV4dFRpY2soKGZ1bmN0aW9uKCl7ZS4kZXZlbnRCdXMuJGVtaXQoInVwZGF0ZVNjcm9sbFBvc2l0aW9uIil9KSl9KSwhMSwhMCk7Y2FzZSAyMjpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQsbnVsbCxbWzksMTRdXSl9KSkpKCl9LHNlbmRMZWFkRm9ybTpmdW5jdGlvbihlKXt2YXIgdD10aGlzO3JldHVybiB3KGIoKS5tYXJrKChmdW5jdGlvbiByKCl7dmFyIG4saSxhO3JldHVybiBiKCkud3JhcCgoZnVuY3Rpb24ocil7Zm9yKDs7KXN3aXRjaChyLnByZXY9ci5uZXh0KXtjYXNlIDA6cmV0dXJuIHQubGVhZEZvcm0uaXNTdWJtaXR0aW5nPSEwLHQubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yPW51bGwsci5wcmV2PTIsci5uZXh0PTUsdC4kc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vY2hlY2tUb2tlblZhbGlkaXR5Iik7Y2FzZSA1OnIubmV4dD0xMTticmVhaztjYXNlIDc6cmV0dXJuIHIucHJldj03LHIudDA9ci5jYXRjaCgyKSxjb25zb2xlLmVycm9yKCJbSlNBUEkvTG9naW5dIixyLnQwKSxyLmFicnVwdCgicmV0dXJuIik7Y2FzZSAxMToobj10LiRUYXdrU2Vzc2lvbk1hbmFnZXIuZ2V0U3RvcmVkVG9rZW4oKSkmJihpPXsiWC1UYXdrLVRva2VuIjpufSksMD09PShudWxsPT0oYT14KHtyZWZlcmVuY2VJZDp0Lm1zZy5sZWFkRm9ybVJlZn0sZSkpP3ZvaWQgMDphLmFkZGl0aW9uYWxJbmZvLmxlbmd0aCkmJmRlbGV0ZSBhLmFkZGl0aW9uYWxJbmZvLHYuYS5wb3N0KCIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL3YxL2Zvcm0vbGVhZC1jYXB0dXJlL3N1Ym1pdCIpLGEsaSwoZnVuY3Rpb24oZSxyKXtpZihlfHxyLmVycm9yKXtpZih0LmxlYWRGb3JtLmlzU3VibWl0dGluZz0hMSxyJiZyLmVycm9yKXtpZigiQmFkUmVxdWVzdEVycm9yIj09PXIuZXJyb3IuY29kZSlyZXR1cm4gdm9pZCh0LmxlYWRGb3JtLnN1Ym1pc3Npb25FcnJvcj0iSW52YWxpZCBwYXJhbWV0ZXJzIik7aWYoIk5vdEZvdW5kRXJyb3IiPT09ci5lcnJvci5jb2RlKXJldHVybiB2b2lkKHQubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yPSJGb3JtIHJlZmVyZW5jZSBub3QgZm91bmQuIik7aWYoIkNvbmZsaWN0RXJyb3IiPT09ci5lcnJvci5jb2RlKXJldHVybiB2b2lkKHQubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yPSJGb3JtIGFscmVhZHkgc3VibWl0dGVkIik7aWYoIkludGVybmFsU2VydmVyRXJyb3IiPT09ci5lcnJvci5jb2RlKXJldHVybiB2b2lkKHQubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yPSJUaGUgc2VydmVyIGlzIHVuYXZhaWxhYmxlLiBQbGVhc2UgdHJ5IGFnYWluLiIpfXQubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yPSJVbmFibGUgdG8gc3VibWl0IGZvcm0uIFBsZWFzZSB0cnkgYWdhaW4ifWVsc2UgdC5sZWFkRm9ybS5pc1N1Ym1pdHRpbmc9ITEsdC5sZWFkRm9ybS5zdWJtaXNzaW9uU3VjY2Vzcz0hMCx0LiRzdG9yZS5jb21taXQoImNoYXQvc2V0Rm9ybVJlZnMiLHtpZDp0LmxlYWRGb3JtLnJlZmVyZW5jZUlkLGRvbmU6ITB9KSx0LiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LiRldmVudEJ1cy4kZW1pdCgidXBkYXRlU2Nyb2xsUG9zaXRpb24iKX0pKX0pLCExLCEwKTtjYXNlIDE2OmNhc2UiZW5kIjpyZXR1cm4gci5zdG9wKCl9fSkscixudWxsLFtbMiw3XV0pfSkpKSgpfSxoYW5kbGVSZXNlbmRNZXNzYWdlOmZ1bmN0aW9uKGUpe3RoaXMuJGVtaXQoInJlc2VuZE1lc3NhZ2UiLGUpfSxwYXJzZU1EVG9IVE1MOmZ1bmN0aW9uKGUpe3RyeXt2YXIgdCxyPU9iamVjdChnLmEpKGUsdGhpcy4kVGF3a1dpbmRvdy5tYWtlSHRtbCwhMCk7cmV0dXJuKHIgaW5zdGFuY2VvZiBFcnJvcnx8dm9pZCAwPT09cikmJnRoaXMuJFRhd2tMb2dnZXIucmVwb3J0RXJyb3Ioe2Vycm9yOnIsc291cmNlOntuYW1lOiJ2aWV3cy9jaGF0L2JvZHkvbWVzc2FnZS1idWJibGUudnVlIixtZXRob2Q6InBhcnNlTURUb0hUTUwoKSJ9LGRhdGE6e3Byb3BlcnR5SWQ6dGhpcy5wcm9wZXJ0eUlkLHdpZGdldElkOnRoaXMud2lkZ2V0SWQsb3M6dGhpcy5vcyx1c2VyQWdlbnQ6bnVsbD09PSh0PW5hdmlnYXRvcil8fHZvaWQgMD09PXQ/dm9pZCAwOnQudXNlckFnZW50fX0pLHJ9Y2F0Y2godCl7dmFyIG47cmV0dXJuIHRoaXMuJFRhd2tMb2dnZXIucmVwb3J0RXJyb3Ioe2Vycm9yOnQsc291cmNlOntuYW1lOiJ2aWV3cy9jaGF0L2JvZHkvbWVzc2FnZS1idWJibGUudnVlIixtZXRob2Q6InBhcnNlTURUb0hUTUwoKSJ9LGRhdGE6e3Byb3BlcnR5SWQ6dGhpcy5wcm9wZXJ0eUlkLHdpZGdldElkOnRoaXMud2lkZ2V0SWQsb3M6dGhpcy5vcyx1c2VyQWdlbnQ6bnVsbD09PShuPW5hdmlnYXRvcil8fHZvaWQgMD09PW4/dm9pZCAwOm4udXNlckFnZW50fX0pLGV9fX19LCQ9T2JqZWN0KHMuYSkoXywoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7cmVmOmUubXNnLm1lc3NhZ2VJZCxzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWJ1YmJsZSIsYXR0cnM6e2lkOiJtZXNzYWdlSWQtIi5jb25jYXQoZS5tc2cubWVzc2FnZUlkKX19LFtlLm1zZy5zaG93QmFyJiZlLmJhck1lc3NhZ2VSZXJlbmNlP3QoImRpdiIse3N0YXRpY1N0eWxlOntwb3NpdGlvbjoicmVsYXRpdmUifX0sW3QoImRpdiIsW3QoInNwYW4iLHtzdGF0aWNTdHlsZTp7cG9zaXRpb246ImFic29sdXRlIixyaWdodDoiMCIsYmFja2dyb3VuZDoiI2ZmZiIsdHJhbnNmb3JtOiJ0cmFuc2xhdGUoMCwgLTUwJSkiLHBhZGRpbmc6IjAgMTBweCJ9fSxbZS5fdihlLl9zKGUuJGkxOG4oImNoYXQiLCJuZXdfbWVzc2FnZXMiKSkpXSksdCgiaHIiKV0pXSk6ZS5fZSgpLCJjIj09PWUubXNnLnR5cGU/W3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSIsY2xhc3M6WyJ2Ij09ZS5tc2cuc2VuZGVyVHlwZT8idGF3ay12aXNpdG9yLWNoYXQiOiJ0YXdrLWFnZW50LWNoYXQiXSxvbjp7bW91c2VlbnRlcjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kZW1pdCgib25Nb3VzZUVudGVyIil9fX0sWyJ2Ij09PWUubXNnLnNlbmRlclR5cGU/dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleC1ub25lIixzdGF0aWNTdHlsZTp7Im1pbi13aWR0aCI6IjQwcHgifX0sW2UubXNnLnRpbWU/dCgidGF3ay10aW1lYWdvIix7c3RhdGljQ2xhc3M6InRhd2stdGltZS1kaXNwbGF5IixhdHRyczp7ZGF0ZXRpbWU6ZS5tc2cudGltZSxpc0xpdmU6ITEsdGltZU9ubHk6ITB9fSk6ZS5fZSgpXSwxKTplLl9lKCksdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1ib2R5IHRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0IixjbGFzczpbInYiIT09ZS5tc2cuc2VuZGVyVHlwZT8idGF3ay1tYXJnaW4teHNtYWxsLXJpZ2h0IjoiIl19LFtlLm1zZy5pc1BlbmRpbmc/dCgidGF3ay1zcGlubmVyIix7Y2xhc3M6WyJ2IiE9PWUubXNnLnNlbmRlclR5cGU/Imxkcy1zcGlubmVyLWxlZnQiOiIiXX0pOmUuX2UoKSxbZS5tc2cucmF3TWVzc2FnZS5tZCYmZS5tc2cucmF3TWVzc2FnZS5tZC5ydD90KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LXJhdGluZyJ9LFt0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZTplLm1zZy5tZXNzYWdlLHNpemU6Inh4bGFyZ2UifX0pXSwxKTplLm1zZy5hdHRjaHN8fGUubXNnLm1lc3NhZ2U/dCgidGF3ay1jaGF0LWJ1YmJsZSIse2NsYXNzOlsidiI9PT1lLm1zZy5zZW5kZXJUeXBlPyJ0YXdrLXZpc2l0b3ItY2hhdC1idWJibGUiOiJ0YXdrLWFnZW50LWNoYXQtYnViYmxlIiwidGF3ay10ZXh0LXJlZ3VsYXItNCJdLGF0dHJzOnthdHRhY2htZW50czplLm1zZy5hdHRjaHMsdGltZTplLm1zZy50aW1lfX0sW2UubXNnLm1lc3NhZ2U/dCgidGF3ay1lbW9qaSIse2F0dHJzOntlbW9qaTplLnBhcnNlTURUb0hUTUwoZS5tc2cubWVzc2FnZSksZW5hYmxlZDplLmVtb2ppRW5hYmxlZH19KTplLl9lKCldLDEpOmUuX2UoKSwidiIhPT1lLm1zZy5zZW5kZXJUeXBlJiZlLm1zZy50aWNrZXRGb3JtUmVmP3QoImRpdiIsW2UuaGFzVGlja2V0Rm9ybVN1Ym1pdHx8ZS50aWNrZXRGb3JtLnN1Ym1pc3Npb25TdWNjZXNzP1t0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LWFsZXJ0In0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXQtYWxlcnQtY29udGVudCJ9LFt0KCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1yZWd1bGFyLTIifSxbZS5fdihlLl9zKGUuJGkxOG4oImZvcm0iLCJ0aWNrZXRfZm9ybV9zdWNjZXNzX21lc3NhZ2UiKSkpXSksdCgidGF3ay10aW1lYWdvIix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AiLGF0dHJzOntkYXRldGltZTplLm1zZy50aW1lLGlzTGl2ZTohMCxpc0R1cmF0aW9uOiEwLHRpbWVPbmx5OiEwfX0pXSwxKV0pXTpbdCgidGF3ay1pbnB1dCIse3JlZjoidGlja2V0LW5hbWUtaW5wdXQiLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi1zbWFsbC10b3AgdGF3ay1tYXJnaW4tc21hbGwtYm90dG9tIixhdHRyczp7bGFiZWw6ZS4kaTE4bigiZm9ybSIsIm5hbWUiKSxpc1JlcXVpcmVkOiEwLHZhbHVlOmUudGlja2V0Rm9ybS5uYW1lLGludmFsaWRUeXBlOmUudGlja2V0Rm9ybS5pbnZhbGlkLm5hbWUsZXJyb3JNZXNzYWdlOntyZXF1aXJlZDplLiRpMThuKCJmb3JtIiwicmVxdWlyZWRfZXJyb3JfbWVzc2FnZSIpfX0sb246eyJ1cGRhdGU6aW52YWxpZFR5cGUiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQoZS50aWNrZXRGb3JtLmludmFsaWQsIm5hbWUiLHQpfSwidXBkYXRlOmludmFsaWQtdHlwZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChlLnRpY2tldEZvcm0uaW52YWxpZCwibmFtZSIsdCl9fSxtb2RlbDp7dmFsdWU6ZS50aWNrZXRGb3JtLm5hbWUsY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS4kc2V0KGUudGlja2V0Rm9ybSwibmFtZSIsdCl9LGV4cHJlc3Npb246InRpY2tldEZvcm0ubmFtZSJ9fSksdCgidGF3ay1pbnB1dCIse3JlZjoidGlja2V0LWVtYWlsLWlucHV0IixzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4tc21hbGwiLGF0dHJzOntsYWJlbDplLiRpMThuKCJmb3JtIiwiZW1haWwiKSxpc1JlcXVpcmVkOiEwLHZhbHVlOmUudGlja2V0Rm9ybS5lbWFpbCxpbnZhbGlkVHlwZTplLnRpY2tldEZvcm0uaW52YWxpZC5lbWFpbCxlcnJvck1lc3NhZ2U6e3JlcXVpcmVkOmUuJGkxOG4oImZvcm0iLCJyZXF1aXJlZF9lcnJvcl9tZXNzYWdlIiksZW1haWw6ZS4kaTE4bigiZm9ybSIsImVtYWlsX2Vycm9yX21lc3NhZ2UiKX19LG9uOnsidXBkYXRlOmludmFsaWRUeXBlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KGUudGlja2V0Rm9ybS5pbnZhbGlkLCJlbWFpbCIsdCl9LCJ1cGRhdGU6aW52YWxpZC10eXBlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KGUudGlja2V0Rm9ybS5pbnZhbGlkLCJlbWFpbCIsdCl9fSxtb2RlbDp7dmFsdWU6ZS50aWNrZXRGb3JtLmVtYWlsLGNhbGxiYWNrOmZ1bmN0aW9uKHQpe2UuJHNldChlLnRpY2tldEZvcm0sImVtYWlsIix0KX0sZXhwcmVzc2lvbjoidGlja2V0Rm9ybS5lbWFpbCJ9fSksdCgidGF3ay1waG9uZS1pbnB1dCIse3JlZjoidGlja2V0LXBob25lLWlucHV0IixzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4tc21hbGwiLGF0dHJzOntsYWJlbDplLiRpMThuKCJmb3JtIiwicGhvbmUiKSxpc1JlcXVpcmVkOiExLHZhbHVlOmUudGlja2V0Rm9ybS5waG9uZSxwcmVTZWxlY3RDb3VudHJ5Q29kZTplLmNvdW50cnlDb2RlLGludmFsaWRUeXBlOmUudGlja2V0Rm9ybS5pbnZhbGlkLnBob25lLGVycm9yTWVzc2FnZTp7cmVxdWlyZWQ6ZS4kaTE4bigiZm9ybSIsInJlcXVpcmVkX2Vycm9yX21lc3NhZ2UiKSxwaG9uZTplLiRpMThuKCJmb3JtIiwicGhvbmVfZXJyb3JfbWVzc2FnZSIpfSxhc3NldFBhdGg6ZS5hc3NldFBhdGh9LG9uOnsidXBkYXRlOmludmFsaWRUeXBlIjpbZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChlLnRpY2tldEZvcm0uaW52YWxpZCwicGhvbmUiLHQpfSxmdW5jdGlvbih0KXtyZXR1cm4gZS51cGRhdGVJbnZhbGlkVHlwZSh0LCJwaG9uZSIpfV0sInVwZGF0ZTppbnZhbGlkLXR5cGUiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQoZS50aWNrZXRGb3JtLmludmFsaWQsInBob25lIix0KX0saW5wdXQ6ZS5oYW5kbGVQaG9uZUlucHV0LGJsdXI6ZS52YWxpZGF0ZVBob25lRmllbGR9LG1vZGVsOnt2YWx1ZTplLnRpY2tldEZvcm0ucGhvbmUsY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS4kc2V0KGUudGlja2V0Rm9ybSwicGhvbmUiLHQpfSxleHByZXNzaW9uOiJ0aWNrZXRGb3JtLnBob25lIn19KSx0KCJ0YXdrLWlucHV0Iix7cmVmOiJ0aWNrZXQtc3ViamVjdC1pbnB1dCIsc3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXNtYWxsIixhdHRyczp7bGFiZWw6ZS4kaTE4bigiZm9ybSIsInN1YmplY3QiKSxpc1JlcXVpcmVkOiEwLHZhbHVlOmUudGlja2V0Rm9ybS5zdWJqZWN0LGludmFsaWRUeXBlOmUudGlja2V0Rm9ybS5pbnZhbGlkLnN1YmplY3QsZXJyb3JNZXNzYWdlOntyZXF1aXJlZDplLiRpMThuKCJmb3JtIiwicmVxdWlyZWRfZXJyb3JfbWVzc2FnZSIpfX0sb246eyJ1cGRhdGU6aW52YWxpZFR5cGUiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQoZS50aWNrZXRGb3JtLmludmFsaWQsInN1YmplY3QiLHQpfSwidXBkYXRlOmludmFsaWQtdHlwZSI6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJHNldChlLnRpY2tldEZvcm0uaW52YWxpZCwic3ViamVjdCIsdCl9fSxtb2RlbDp7dmFsdWU6ZS50aWNrZXRGb3JtLnN1YmplY3QsY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS4kc2V0KGUudGlja2V0Rm9ybSwic3ViamVjdCIsdCl9LGV4cHJlc3Npb246InRpY2tldEZvcm0uc3ViamVjdCJ9fSksdCgidGF3ay10ZXh0YXJlYSIse3JlZjoidGlja2V0LW1lc3NhZ2UtaW5wdXQiLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi1zbWFsbCIsYXR0cnM6e2xhYmVsOmUuJGkxOG4oImZvcm0iLCJtZXNzYWdlIiksaXNSZXF1aXJlZDohMCx2YWx1ZTplLnRpY2tldEZvcm0ubWVzc2FnZSxpbnZhbGlkVHlwZTplLnRpY2tldEZvcm0uaW52YWxpZC5tZXNzYWdlLGVycm9yTWVzc2FnZTp7cmVxdWlyZWQ6ZS4kaTE4bigiZm9ybSIsInJlcXVpcmVkX2Vycm9yX21lc3NhZ2UiKX19LG9uOnsidXBkYXRlOmludmFsaWRUeXBlIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KGUudGlja2V0Rm9ybS5pbnZhbGlkLCJtZXNzYWdlIix0KX0sInVwZGF0ZTppbnZhbGlkLXR5cGUiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQoZS50aWNrZXRGb3JtLmludmFsaWQsIm1lc3NhZ2UiLHQpfX0sbW9kZWw6e3ZhbHVlOmUudGlja2V0Rm9ybS5tZXNzYWdlLGNhbGxiYWNrOmZ1bmN0aW9uKHQpe2UuJHNldChlLnRpY2tldEZvcm0sIm1lc3NhZ2UiLHQpfSxleHByZXNzaW9uOiJ0aWNrZXRGb3JtLm1lc3NhZ2UifX0pLGUudGlja2V0Rm9ybS5zdWJtaXNzaW9uRXJyb3I/dCgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwgdGF3ay10ZXh0LXJlZC0xIHRhd2stdGV4dC1yZWd1bGFyLTEifSxbZS5fdihlLl9zKGUudGlja2V0Rm9ybS5zdWJtaXNzaW9uRXJyb3IpKV0pOmUuX2UoKSx0KCJ0YXdrLWJ1dHRvbiIse2F0dHJzOntsYWJlbDplLiRpMThuKCJmb3JtIiwic3VibWl0X2J1dHRvbiIpLGRpc2FibGVkOmUudGlja2V0Rm9ybS5pc1N1Ym1pdHRpbmd9LG9uOntjbGljazpmdW5jdGlvbih0KXtyZXR1cm4gZS5zZW5kVGlja2V0Rm9ybSgpfX19LFtlLnRpY2tldEZvcm0uaXNTdWJtaXR0aW5nP3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LWNlbnRlciJ9LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zcGlubmVyLWxvYWRlciJ9KV0pOlt0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToic2VuZCJ9fSksZS5fdigiICIrZS5fcyhlLiRpMThuKCJmb3JtIiwic3VibWl0X2J1dHRvbiIpKSsiICIpXV0sMildXSwyKTplLl9lKCksInYiIT09ZS5tc2cuc2VuZGVyVHlwZSYmZS5tc2cubGVhZEZvcm1SZWY/dCgiZGl2IixbZS5oYXNMZWFkRm9ybVN1Ym1pdHx8ZS5sZWFkRm9ybS5zdWJtaXNzaW9uU3VjY2Vzcz9bdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1hbGVydCJ9LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LWFsZXJ0LWNvbnRlbnQifSxbdCgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtcmVndWxhci0yIn0sW2UuX3YoZS5fcyhlLiRpMThuKCJmb3JtIiwibGVhZF9mb3JtX3N1Y2Nlc3NfbWVzc2FnZSIpKSldKSx0KCJ0YXdrLXRpbWVhZ28iLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXRvcCIsYXR0cnM6e2RhdGV0aW1lOmUubXNnLnRpbWUsaXNMaXZlOiEwLGlzRHVyYXRpb246ITAsdGltZU9ubHk6ITB9fSldLDEpXSldOltlLmdldExlYWRGb3JtLmxlbmd0aD90KCJ0YXdrLWlubGluZS1mb3JtIix7YXR0cnM6e2Zvcm06ZS5nZXRMZWFkRm9ybSxpc1N1Ym1pdHRpbmc6ZS5sZWFkRm9ybS5pc1N1Ym1pdHRpbmcsc3VibWlzc2lvbkVycm9yOmUubGVhZEZvcm0uc3VibWlzc2lvbkVycm9yfSxvbjp7InVwZGF0ZTpzdWJtaXNzaW9uRXJyb3IiOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRzZXQoZS5sZWFkRm9ybSwic3VibWlzc2lvbkVycm9yIix0KX0sInVwZGF0ZTpzdWJtaXNzaW9uLWVycm9yIjpmdW5jdGlvbih0KXtyZXR1cm4gZS4kc2V0KGUubGVhZEZvcm0sInN1Ym1pc3Npb25FcnJvciIsdCl9LHN1Ym1pdDplLnNlbmRMZWFkRm9ybX19KTplLl9lKCldXSwyKTplLl9lKCldXSwyKSwidiIhPT1lLm1zZy5zZW5kZXJUeXBlP3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXgtbm9uZSIsc3RhdGljU3R5bGU6eyJtaW4td2lkdGgiOiI0MHB4In19LFtlLm1zZy50aW1lP3QoInRhd2stdGltZWFnbyIse3N0YXRpY0NsYXNzOiJ0YXdrLXRpbWUtZGlzcGxheSIsYXR0cnM6e2RhdGV0aW1lOmUubXNnLnRpbWUsaXNMaXZlOiExLHRpbWVPbmx5OiEwfX0pOmUuX2UoKV0sMSk6ZS5fZSgpXSksZS5tc2cuc2VuZEZhaWxlZD90KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LXJlc2VuZCJ9LFt0KCJwIixbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImNsb3NlLWNpcmNsZSIsc2l6ZToic21hbGwifX0pLHQoInNwYW4iLFtlLl92KCJGYWlsZWQiKV0pXSwxKSx0KCJ0YXdrLWJ1dHRvbiIse2F0dHJzOntsYWJlbDplLiRpMThuKCJjaGF0IiwicmVzZW5kIiksaXNUZXh0OiEwfSxvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIGUuaGFuZGxlUmVzZW5kTWVzc2FnZShlLm1zZyl9fX0sW2UuX3YoIiBSZXNlbmQgIildKV0sMSk6ZS5fZSgpXTplLl9lKCksInYiPT09ZS5tc2cuc2VuZGVyVHlwZSYmIm4iPT09ZS5tc2cudHlwZT90KCJkaXYiLFt0KCJ0YXdrLWNhcmQiLHthdHRyczp7Y29sb3I6ImludmVyc2UiLHNpemU6InhzbWFsbCJ9fSxbdCgidGF3ay1hbGVydCIse2F0dHJzOnt0aXRsZTplLm1zZy5tZXNzYWdlLGRlc2NyaXB0aW9uOiIiLGljb246ImFsZXJ0In19LFt0KCJ0YXdrLXRpbWVhZ28iLHtzdGF0aWNDbGFzczoidGF3ay10aW1lLWRpc3BsYXkiLGF0dHJzOntzbG90OiJhbGVydC1kZXNjcmlwdGlvbiIsZGF0ZXRpbWU6ZS5tc2cudGltZSxpc0xpdmU6ITEsdGltZU9ubHk6ITB9LHNsb3Q6ImFsZXJ0LWRlc2NyaXB0aW9uIn0pXSwxKV0sMSldLDEpOmUuX2UoKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoiY2xlYXJmaXgifSldLDIpfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHMsRT1yKCIyOTY2Iik7ZnVuY3Rpb24gSShlKXtyZXR1cm4oST0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIFMoZSx0KXt2YXIgcj1PYmplY3Qua2V5cyhlKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO3QmJihuPW4uZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpLmVudW1lcmFibGV9KSkpLHIucHVzaC5hcHBseShyLG4pfXJldHVybiByfWZ1bmN0aW9uIGooZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIHI9bnVsbCE9YXJndW1lbnRzW3RdP2FyZ3VtZW50c1t0XTp7fTt0JTI/UyhPYmplY3QociksITApLmZvckVhY2goKGZ1bmN0aW9uKHQpe08oZSx0LHJbdF0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMocikpOlMoT2JqZWN0KHIpKS5mb3JFYWNoKChmdW5jdGlvbih0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iocix0KSl9KSl9cmV0dXJuIGV9ZnVuY3Rpb24gTyhlLHQscil7cmV0dXJuKHQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0IiE9SShlKXx8IWUpcmV0dXJuIGU7dmFyIHI9ZVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXIpe3ZhciBuPXIuY2FsbChlLHR8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPUkobikpcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT10P1N0cmluZzpOdW1iZXIpKGUpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09SSh0KT90OnQrIiJ9KHQpKWluIGU/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6cixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOmVbdF09cixlfWZ1bmN0aW9uIEMoZSx0KXt2YXIgcj0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYoIXIpe2lmKEFycmF5LmlzQXJyYXkoZSl8fChyPWZ1bmN0aW9uKGUsdCl7aWYoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBQKGUsdCk7dmFyIHI9e30udG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXImJmUuY29uc3RydWN0b3ImJihyPWUuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT1yfHwiU2V0Ij09PXI/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PXJ8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHIpP1AoZSx0KTp2b2lkIDB9fShlKSl8fHQmJmUmJiJudW1iZXIiPT10eXBlb2YgZS5sZW5ndGgpe3ImJihlPXIpO3ZhciBuPTAsaT1mdW5jdGlvbigpe307cmV0dXJue3M6aSxuOmZ1bmN0aW9uKCl7cmV0dXJuIG4+PWUubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTplW24rK119fSxlOmZ1bmN0aW9uKGUpe3Rocm93IGV9LGY6aX19dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfXZhciBhLHM9ITAsbz0hMTtyZXR1cm57czpmdW5jdGlvbigpe3I9ci5jYWxsKGUpfSxuOmZ1bmN0aW9uKCl7dmFyIGU9ci5uZXh0KCk7cmV0dXJuIHM9ZS5kb25lLGV9LGU6ZnVuY3Rpb24oZSl7bz0hMCxhPWV9LGY6ZnVuY3Rpb24oKXt0cnl7c3x8bnVsbD09ci5yZXR1cm58fHIucmV0dXJuKCl9ZmluYWxseXtpZihvKXRocm93IGF9fX19ZnVuY3Rpb24gUChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgcj0wLG49QXJyYXkodCk7cjx0O3IrKyluW3JdPWVbcl07cmV0dXJuIG59dmFyIEw9e25hbWU6ImNoYXQtYm9keSIscHJvcHM6e2lzTG9hZGluZzp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITB9LG1lc3NhZ2VCbG9ja3M6e3R5cGU6QXJyYXksZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybltdfX0sYmFyTWVzc2FnZVJlcmVuY2U6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH0saXNIaXN0b3J5Ont0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sZW1vamlFbmFibGVkOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMH19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57c2hvd1N1cnZlcnlPcHRpb25zOiEwfX0sY29tcG9uZW50czp7VGF3a0F2YXRhcjppLlRhd2tBdmF0YXIsVGF3a0ljb246aS5UYXdrSWNvbixTdXJ2ZXlPcHRpb25zOkUuYSxDaGF0TWVzc2FnZUJ1YmJsZTokfSxtZXRob2RzOntjYWxsU3RhdHVzOmZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTWlzc2VkfHxlLmlzUmVqZWN0ZWQ/ImRhbmdlciI6InN1Y2Nlc3MifSxjYWxsVGl0bGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuaXNEb25lP2UuaXNSZWplY3RlZD90aGlzLiRpMThuKCJjaGF0IiwicmVqZWN0ZWRfY2FsbCIpOmUuaXNNaXNzZWQ/dGhpcy4kaTE4bigiY2hhdCIsIm1pc3NlZF8iKygidiI9PT1lLmNhbGxlci50PyJhZ2VudCI6InZpc2l0b3IiKSk6dGhpcy4kaTE4bigiY2hhdCIsImNvbXBsZXRlZF9jYWxsIik6dGhpcy4kaTE4bigiY2hhdCIsIm9uZ29pbmdfY2FsbCIpfSxjYWxsRGVzY3JpcHRpb246ZnVuY3Rpb24oZSl7dmFyIHQ9bmV3IERhdGUoZS5zdGFydGVkQXQpLHI9dC5nZXRIb3VycygpLG49dC5nZXRNaW51dGVzKCk7aWYoZS5pc0RvbmUpe2lmKHI8MTAmJihyPSIwIityKSxuPDEwJiYobj0iMCIrbiksZS5pc1JlamVjdGVkfHxlLmlzTWlzc2VkKXJldHVybiB0aGlzLiRpMThuKCJjaGF0IiwiY2FsbF9zdGFydGVkX29uIix7c3RhcnRlZE9uOiIiLmNvbmNhdChyLCI6IikuY29uY2F0KG4pfSk7dmFyIGksYSxzLG89NmU0LGw9NjAqbyxjPW5ldyBEYXRlKGUuZW5kZWRBdCkuZ2V0VGltZSgpLW5ldyBEYXRlKGUuc3RhcnRlZEF0KS5nZXRUaW1lKCk7cmV0dXJuIGM+PWw/KGk9TWF0aC5yb3VuZChjL2wpLHM9ImhvdXJzIik6Yz49bz8oaT1NYXRoLnJvdW5kKGMvbykscz0ibWludXRlcyIpOihpPU1hdGgucm91bmQoYy8xZTMpLHM9InNlY29uZHMiKSxhPXRoaXMuJGkxOG4oImNoYXQiLHMse251bTppfSksdGhpcy4kaTE4bigiY2hhdCIsImNhbGxfZW5kX2RldGFpbHMiLHtzdGFydGVkT246IiIuY29uY2F0KHIsIjoiKS5jb25jYXQobiksZHVyYXRpb246YX0pfXJldHVybiIifSxjYWxsSWNvbjpmdW5jdGlvbihlKXtyZXR1cm4gZS5pc1ZpZGVvPyJ2aWRlby1jYWxsLW9uIjplLmlzU2NyZWVuc2hhcmU/InNoYXJlLXNjcmVlbiI6ImNhbGwifSxzdWJtaXRTdXJ2ZXk6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLmlzSGlzdG9yeXx8KHRoaXMuJFRhd2tDaGF0TWFuYWdlci5zZW5kTWVzc2FnZSh7bWVzc2FnZTplfSksdGhpcy5zaG93U3VydmVyeU9wdGlvbnM9ITEsdGhpcy4kbmV4dFRpY2soKGZ1bmN0aW9uKCl7dC4kZXZlbnRCdXMuJGVtaXQoInVwZGF0ZVNjcm9sbFBvc2l0aW9uIil9KSkpfSxpbWFnZUxvYWRlZDpmdW5jdGlvbigpe3RoaXMuJGVtaXQoImltYWdlTG9hZGVkIiwhMCl9LHJlc2VuZE1lc3NhZ2U6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTA7dDx0aGlzLm1lc3NhZ2VCbG9ja3MubGVuZ3RoO3QrKyl7dmFyIHI9dGhpcy5tZXNzYWdlQmxvY2tzW3RdO2lmKHIuYmxvY2tJZD09PWUuYmxvY2tJZCl7Zm9yKHZhciBuPTA7bjxyLm1lc3NhZ2VzLmxlbmd0aDtuKyspaWYoci5tZXNzYWdlc1tuXS5tZXNzYWdlSWQ9PT1lLm1lc3NhZ2VJZCl7ci5tZXNzYWdlcy5zcGxpY2UobiwxKTticmVha31icmVha319dGhpcy4kVGF3a0NoYXRNYW5hZ2VyLnNlbmRNZXNzYWdlKHttZXNzYWdlOmUucmF3TWVzc2FnZS5tLGF0dGFjaG1lbnRzOmUucmF3TWVzc2FnZS5hdHRjaHN9KX0sZ2V0TWVzc2FnZUJsb2NrQ2xhc3NlczpmdW5jdGlvbihlKXt2YXIgdD10aGlzLm1lc3NhZ2VCbG9ja3MuZmluZEluZGV4KChmdW5jdGlvbih0KXtyZXR1cm4gdC5ibG9ja0lkPT09ZS5ibG9ja0lkfSkpO2lmKHQrMTx0aGlzLm1lc3NhZ2VCbG9ja3MubGVuZ3RoKXt2YXIgcj10aGlzLm1lc3NhZ2VCbG9ja3NbdCsxXTtpZigidiI9PT1lLnNlbmRlclR5cGUmJiJhIj09PXIuc2VuZGVyVHlwZSYmMT09PXIubWVzc2FnZXMubGVuZ3RoJiYhdGhpcy5zaG93U2VuZGVyKHIubWVzc2FnZXMpKXJldHVybiJ0YXdrLWZsZXggdGF3ay1mbGV4LWJvdHRvbSB0YXdrLW1lc3NhZ2UtYmxvY2siO2lmKCJhIj09PWUuc2VuZGVyVHlwZSYmMT09PWUubWVzc2FnZXMubGVuZ3RoJiYhdGhpcy5zaG93U2VuZGVyKGUubWVzc2FnZXMpKXJldHVybiJ0YXdrLWZsZXggdGF3ay1mbGV4LWJvdHRvbSB0YXdrLW1lc3NhZ2UtYmxvY2sifXJldHVybiJ0YXdrLW1hcmdpbi1zbWFsbC1ib3R0b20gdGF3ay1mbGV4IHRhd2stZmxleC1ib3R0b20gdGF3ay1tZXNzYWdlLWJsb2NrIn0sc2hvd1NlbmRlcjpmdW5jdGlvbihlKXt2YXIgdCxyPSExLG49QyhlKTt0cnl7Zm9yKG4ucygpOyEodD1uLm4oKSkuZG9uZTspe3ZhciBpPXQudmFsdWU7aWYoaS5tZXNzYWdlLmxlbmd0aHx8aS5hdHRjaHMpe3I9ITA7YnJlYWt9fX1jYXRjaChlKXtuLmUoZSl9ZmluYWxseXtuLmYoKX1yZXR1cm4gcn0sc2hvd1NlbmRlck5hbWU6ZnVuY3Rpb24oZSx0KXt2YXIgcj10LmZpbmRJbmRleCgoZnVuY3Rpb24odCl7cmV0dXJuIHQubWVzc2FnZUlkPT09ZS5tZXNzYWdlSWR9KSk7cmV0dXJuIDA9PT1yfHx0W3ItMV0uc2VuZGVyVHlwZSE9PWUuc2VuZGVyVHlwZX19LGNvbXB1dGVkOmooaih7fSxPYmplY3Qobi5jKSh7YWdlbnRzOiJjaGF0L2FnZW50cyIsY2hhdFRyYW5zZmVyRGF0YToiY2hhdC9jaGF0VHJhbnNmZXJEYXRhIn0pKSx7fSx7Z2V0U3VydmV5T3B0aW9uczpmdW5jdGlvbigpe2Zvcih2YXIgZT10aGlzLHQ9e30scj1udWxsLG49MCxpPXRoaXMubWVzc2FnZUJsb2Nrcy5sZW5ndGgtMTtpPj0wJiZudWxsPT09ciYmbjw9MztpLS0pe3ZhciBhPXRoaXMubWVzc2FnZUJsb2Nrc1tpXTtpZigiY2FsbCI9PT1hLm1lc3NhZ2VUeXBlKWJyZWFrO2Zvcih2YXIgcz1hLm1lc3NhZ2VzLmxlbmd0aC0xO3M+PTAmJm48PTM7cy0tKXt2YXIgbz1hLm1lc3NhZ2VzW3NdO2lmKCFvLmRhdGF8fCEwIT09by5kYXRhLnBjcyl7cj1vO2JyZWFrfW4rK319cmV0dXJuIHImJnIuc3VydmV5T2JqJiYodD1qKGooe30sci5zdXJ2ZXlPYmopLHt9LHtzZW5kZXJUeXBlOnIuc2VuZGVyVHlwZX0pLHRoaXMuJG5leHRUaWNrKChmdW5jdGlvbigpe2UuJGV2ZW50QnVzLiRlbWl0KCJ1cGRhdGVTY3JvbGxQb3NpdGlvbiIpfSkpKSx0fX0pfSxNPU9iamVjdChzLmEpKEwsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJzaG93IixyYXdOYW1lOiJ2LXNob3ciLHZhbHVlOiFlLmlzTG9hZGluZyxleHByZXNzaW9uOiIhaXNMb2FkaW5nIn1dLHJlZjoidGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVyIixzdGF0aWNDbGFzczoidGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVyIn0sW251bGwhPT1lLmNoYXRUcmFuc2ZlckRhdGE/dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1pbmxpbmUtYWxlcnQtd3JhcHBlciJ9LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LWlubGluZS1hbGVydCJ9LFt0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiZGV0YWlscyIsc2l6ZToic21hbGwifX0pLHQoInAiLFtlLl92KCJZb3UncmUgYmVpbmcgdHJhbnNmZXJyZWQuIildKV0sMSldKTplLl9lKCksdCgidHJhbnNpdGlvbi1ncm91cCIse2F0dHJzOntuYW1lOiJsaXN0In19LGUuX2woZS5tZXNzYWdlQmxvY2tzLChmdW5jdGlvbihyKXtyZXR1cm4gdCgiZGl2Iix7a2V5OnIuYmxvY2tJZCxyZWY6ci5ibG9ja0lkLHJlZkluRm9yOiEwLGNsYXNzOmUuZ2V0TWVzc2FnZUJsb2NrQ2xhc3NlcyhyKSxhdHRyczp7aWQ6ImJsb2NrSWQtIi5jb25jYXQoci5ibG9ja0lkKX19LFsiY2FsbCI9PT1yLm1lc3NhZ2VUeXBlP1tyLmNhbGxEYXRhJiYhci5jYWxsRGF0YS5oYXNFcnJvcj90KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LWFsZXJ0IHRhd2stY2hhdC1hbGVydC1pY29uIHRhd2stbWFyZ2luLW1lZGl1bS10b3AgdGF3ay1tYXJnaW4tc21hbGwtYm90dG9tIn0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXQtYWxlcnQtZmxvYXRpbmctaWNvbiJ9LFt0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZTplLmNhbGxJY29uKHIuY2FsbERhdGEpfX0pXSwxKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LWFsZXJ0LWNvbnRlbnQifSxbdCgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtcmVndWxhci0zIn0sW2UuX3YoIiAiK2UuX3MoZS5jYWxsVGl0bGUoci5jYWxsRGF0YSkpKyIgIildKSx0KCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1yZWd1bGFyLTEgdGF3ay10ZXh0LWdyZXktMiJ9LFtlLl92KCIgIitlLl9zKGUuY2FsbERlc2NyaXB0aW9uKHIuY2FsbERhdGEpKSsiICIpXSldKV0pOnQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXQtYWxlcnQgdGF3ay1jaGF0LWFsZXJ0LWljb24gdGF3ay1tYXJnaW4teGxhcmdlLXRvcCB0YXdrLW1hcmdpbi1zbWFsbC1ib3R0b20ifSxbdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1hbGVydC1mbG9hdGluZy1pY29uIn0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJjYWxsIn19KV0sMSksdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1hbGVydC1jb250ZW50In0sW3QoInAiLFtlLl92KGUuX3MoZS4kaTE4bigiY2hhdCIsImVycm9yX3RpdGxlIikpKV0pLHQoInAiLFtlLl92KGUuX3MoZS4kaTE4bigiY2hhdCIsImNhbGxfZXJyb3JfbG9hZCIpKSldKV0pXSldOlsiYyI9PT1yLm1lc3NhZ2VUeXBlJiYidiIhPT1yLnNlbmRlclR5cGUmJmUuc2hvd1NlbmRlcihyLm1lc3NhZ2VzKT90KCJ0YXdrLWF2YXRhciIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtcHJvZmlsZSB0YXdrLWZsZXgtbm9uZSIsY2xhc3M6T2JqZWN0LmtleXMoZS5hZ2VudHMpLmxlbmd0aD4xPyJ0YXdrLW1hcmdpbi1ib3R0b20iOiIiLGF0dHJzOntzaXplOiJzbWFsbCIsc3JjOnIucHJvZmlsZUltYWdlLGFsdDoiIi5jb25jYXQoZS4kaTE4bigiY2hhdCIsImFnZW50X3Byb2ZpbGVfaW1hZ2UiKSl9fSk6ZS5fZSgpLHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtZ3JvdXAgdGF3ay1mbGV4LTEiLGNsYXNzOlsidiI9PT1yLnNlbmRlclR5cGU/InRhd2stbWFyZ2luLWF1dG8tbGVmdCI6IiJdfSxbdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZXMifSxlLl9sKHIubWVzc2FnZXMsKGZ1bmN0aW9uKG4pe3JldHVybiB0KCJkaXYiLHtrZXk6bi5tZXNzYWdlSWQsY2xhc3M6InYiPT09bi5zZW5kZXJUeXBlPyJ0YXdrLXZpc2l0b3IiOiJ0YXdrLWFnZW50In0sW2Uuc2hvd1NlbmRlck5hbWUobixyLm1lc3NhZ2VzKSYmInYiIT09bi5zZW5kZXJUeXBlP3QoInAiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLWxlZnQgdGF3ay1jaGF0LW5hbWUtbWFyZ2luIHRhd2stdGV4dC1yZWd1bGFyLTIgdGF3ay10ZXh0LXRydW5jYXRlIn0sW2UuX3YoIiAiK2UuX3Mobi5uYW1lKSsiICIpXSk6ZS5fZSgpLG4ubWVzc2FnZSYmbi5tZXNzYWdlLmxlbmd0aHx8bi50aWNrZXRGb3JtUmVmfHxuLmxlYWRGb3JtUmVmfHxuLmF0dGNocz90KCJjaGF0LW1lc3NhZ2UtYnViYmxlIix7YXR0cnM6e21zZzpuLGVtb2ppRW5hYmxlZDplLmVtb2ppRW5hYmxlZCxiYXJNZXNzYWdlUmVyZW5jZTplLmJhck1lc3NhZ2VSZXJlbmNlfSxvbjp7cmVzZW5kTWVzc2FnZTplLnJlc2VuZE1lc3NhZ2V9fSk6ZS5fZSgpXSwxKX0pKSwwKV0pXV0sMil9KSksMCksIWUuaXNIaXN0b3J5JiZPYmplY3Qua2V5cyhlLmdldFN1cnZleU9wdGlvbnMpLmxlbmd0aCYmInYiIT09ZS5nZXRTdXJ2ZXlPcHRpb25zLnNlbmRlclR5cGU/dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXRvcCB0YXdrLW1hcmdpbi1zbWFsbC1ib3R0b20gdGF3ay1mbGV4IHRhd2stZmxleC1ib3R0b20gdGF3ay1tZXNzYWdlLWJsb2NrIn0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtZ3JvdXAgdGF3ay1mbGV4LTEgdGF3ay1tYXJnaW4tYXV0by1sZWZ0In0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtYnViYmxlIn0sW3QoInN1cnZleS1vcHRpb25zIix7YXR0cnM6e29wdGlvbnM6ZS5nZXRTdXJ2ZXlPcHRpb25zLm9wdGlvbnN9LG9uOntzZWxlY3RTdXJ2ZXk6ZS5zdWJtaXRTdXJ2ZXl9fSldLDEpLHQoImRpdiIse3N0YXRpY0NsYXNzOiJjbGVhcmZpeCJ9KV0pXSk6ZS5fZSgpXSwxKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTt0LmE9TS5leHBvcnRzfSwiM2YwOSI6ZnVuY3Rpb24oZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSk7dmFyIG49cigiZjBiMCIpLGk9cigiMDI4ZSIpLGE9e2RhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aGVhZGVyQ2xhc3M6IiJ9fSxtZXRob2RzOntkaXNwbGF5TWVzc2FnZXM6ZnVuY3Rpb24oZSl7dmFyIHQscj1lLm1lc3NhZ2UsYT12b2lkIDA9PT1yP3t9OnIscz1lLmlzSW5jb21pbmcsbz12b2lkIDAhPT1zJiZzLGw9ZS5pc0xpdmUsYz12b2lkIDA9PT1sfHxsLHU9dGhpcy5pc1Njcm9sbEJhckJvdHRvbSgpLG09Yz90aGlzLiRzdG9yZS5nZXR0ZXJzWyJjaGF0L21lc3NhZ2VCbG9ja3MiXTp0aGlzLiRzdG9yZS5nZXR0ZXJzWyJoaXN0b3J5L21lc3NhZ2VCbG9ja3MiXTtpZighYS5wcm9maWxlSW1hZ2UmJmEuZGF0YSYmYS5kYXRhLnJzYyl7dmFyIGQ9dGhpcy4kc3RvcmUuZ2V0dGVyc1siY2hhdC9hZ2VudFByb2ZpbGUiXShhLmRhdGEucnNjKTtpZighZClyZXR1cm47YS5wcm9maWxlSW1hZ2U9ZC5wcm9maWxlSW1hZ2V9aWYobS5sZW5ndGg+MCYmImMiPT09YS50eXBlJiYoKHQ9bVttLmxlbmd0aC0xXSkub3duZXJJZD09PWEub3duZXJJZD8oYS5ibG9ja0lkPXQuYmxvY2tJZCx0Lm1lc3NhZ2VzLnB1c2goYSkpOnQ9bnVsbCksYS50aW1lU3RhbXA+dGhpcy5sYXN0TWVzc2FnZVRpbWVzdGFtcCYmKCJ2Ij09PWEuc2VuZGVyVHlwZT90aGlzLiRzdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi91cGRhdGVWaXNpdG9yQ2hhdFNlZW4iLGEudGltZVN0YW1wKToodGhpcy51bnNlZW5NZXNzYWdlcy5wdXNoKGEpLCJjaGF0Ij09PXRoaXMuY3VycmVudFJvdXRlJiZ1JiYhdGhpcy5pc0xvYWRpbmd8fHRoaXMuYmFyTWVzc2FnZUlkfHwoYS5zaG93QmFyPSEwLHRoaXMuYmFyTWVzc2FnZUlkPWEubWVzc2FnZUlkLHRoaXMuYmFyTWVzc2FnZVJlcmVuY2U9YSkpKSxvJiYiYSI9PT1hLnNlbmRlclR5cGUmJmEuZGF0YSYmYS5kYXRhLnJzYyYmdGhpcy5yZW1vdmVBZ2VudElzVHlwaW5nKGEuZGF0YS5yc2MpLGEuaXNDYWxsVmlldyl7aS5hLmNhbGxTdGF0dXNVcGRhdGUoe2NsaWQ6YS5jYWxsSWQsZjp7fX0pO3ZhciBmPXtvd25lcklkOmEuY2FsbElkLGNhbGxEYXRhOmEuY2FsbERhdGEsbWVzc2FnZVR5cGU6ImNhbGwiLGJsb2NrSWQ6bi5IZWxwZXIuZ2VuZXJhdGVVVUlEKCksY2FsbElkOmEuY2FsbElkfTtjP3RoaXMuJHN0b3JlLmRpc3BhdGNoKCJjaGF0L2FkZE1lc3NhZ2VCbG9jayIsZik6dGhpcy4kc3RvcmUuZGlzcGF0Y2goImhpc3RvcnkvYWRkTWVzc2FnZUJsb2NrIixmKX1lbHNlIGlmKCF0KXtpZih2b2lkIDA9PT1hLm93bmVySWQmJiJuIj09PWEudHlwZSlyZXR1cm47dmFyIHA9e293bmVySWQ6YS5vd25lcklkLG1lc3NhZ2VzOlthXSxzZW5kZXJUeXBlOmEuc2VuZGVyVHlwZSxtZXNzYWdlVHlwZTphLnR5cGUsYmxvY2tJZDpuLkhlbHBlci5nZW5lcmF0ZVVVSUQoKSxwcm9maWxlSW1hZ2U6YS5wcm9maWxlSW1hZ2V9O2EuYmxvY2tJZD1wLmJsb2NrSWQsYz90aGlzLiRzdG9yZS5kaXNwYXRjaCgiY2hhdC9hZGRNZXNzYWdlQmxvY2siLHApOnRoaXMuJHN0b3JlLmRpc3BhdGNoKCJoaXN0b3J5L2FkZE1lc3NhZ2VCbG9jayIscCl9byYmKCJ2Ij09PWEuc2VuZGVyVHlwZXx8dT90aGlzLnNjcm9sbFRvQm90dG9tKCk6dGhpcy5jaGVja0JhclBvc2l0aW9uKCkpfSxpc1Njcm9sbEJhckJvdHRvbTpmdW5jdGlvbigpe3ZhciBlPXRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdO2lmKGUpe3ZhciB0PWUub2Zmc2V0SGVpZ2h0KzEwO3JldHVybiBlLnNjcm9sbEhlaWdodC0oZS5zY3JvbGxUb3ArdCk8MzB9fX19fSxlNDljOmZ1bmN0aW9uKGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBhfSkpO3ZhciBuPXIoImYwYjAiKSxpPXIoIjdmNDYiKSxhPXttZXRob2RzOntzZXRFcnJvcjpmdW5jdGlvbihlLHQpe3QuaXNFcnJvcj1lfSxzZXRWYWx1ZTpmdW5jdGlvbihlLHQpe3QudmFsdWU9ZTt2YXIgcj10LnZhbHVlfHwiIjsic3RyaW5nIj09dHlwZW9mIGUmJihyPWUudHJpbSgpKSwoInRleHQiPT09dC50eXBlfHwiY3VzdG9tIj09PXQudHlwZXx8Im51bWJlciI9PT10LnR5cGV8fCJkYXRlIj09PXQudHlwZXx8InRleHRhcmVhIj09PXQudHlwZSkmJnQuaXNSZXF1aXJlZCYmci5sZW5ndGg+MCYmKHQuaW52YWxpZFR5cGU9IiIpfSxzZXRJbnZhbGlkVHlwZTpmdW5jdGlvbihlLHQpe3QuaW52YWxpZFR5cGVWYWx1ZT1lLGUmJmUubGVuZ3RoPjAmJih0LmlzRXJyb3I9ITApfSxpc1ZhbGlkRTE2NFBob25lTnVtYmVyOmZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZSgvW1xzXC0oKV0vZywiIik7cmV0dXJuL15bMS05XVxkezEsMTR9JC8udGVzdCh0KSYmdC5sZW5ndGg+PTh9LGZvcm1hdEZpZWxkczpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10scj0wO3I8ZS5sZW5ndGg7cisrKXt2YXIgaT1lW3JdLGE9e30scz0iIjtpZihpLnJlcXVpcmVkJiYoYS5yZXF1aXJlZD10aGlzLiRpMThuKCJmb3JtIiwicmVxdWlyZWRfZXJyb3JfbWVzc2FnZSIpKSxpLmNvbnRleHQmJiJlbWFpbCI9PT1pLmNvbnRleHQmJihhLmVtYWlsPXRoaXMuJGkxOG4oImZvcm0iLCJlbWFpbF9lcnJvcl9tZXNzYWdlIikscz10aGlzLmVtYWlsKSxpLmNvbnRleHQmJiJuYW1lIj09PWkuY29udGV4dCYmKHM9dGhpcy5uYW1lKSxpLmNvbnRleHQmJiJwaG9uZSI9PT1pLmNvbnRleHQmJihhLnBob25lPXRoaXMuJGkxOG4oImZvcm0iLCJpbnZhbGlkX2xlbmd0aCIpLGEuc3RhcnRzX3dpdGhfemVybz10aGlzLiRpMThuKCJmb3JtIiwicGhvbmVfZXJyb3JfbWVzc2FnZSIpLGEucmVxdWlyZWQ9dGhpcy4kaTE4bigiZm9ybSIsInJlcXVpcmVkX2Vycm9yX21lc3NhZ2UiKSxhLmludmFsaWRfbGVuZ3RoPXRoaXMuJGkxOG4oImZvcm0iLCJpbmNvbXBsZXRlX251bWJlciIpLGEuaW52YWxpZF9jb3VudHJ5X2NvZGU9dGhpcy4kaTE4bigiZm9ybSIsInBob25lX2ludmFsaWRfY291bnRyeV9jb2RlIikpLCJkZXBhcnRtZW50Ij09PWkuY29udGV4dCYmdGhpcy5kZXBhcnRtZW50cy5sZW5ndGgpe2Zvcih2YXIgbz17b25saW5lOltdLG9mZmxpbmU6W119LGw9MDtsPHRoaXMuZGVwYXJ0bWVudHMubGVuZ3RoO2wrKyl7dmFyIGM9dGhpcy5kZXBhcnRtZW50c1tsXTsib25saW5lIj09PWMuc3Q/by5vbmxpbmUucHVzaCh7c3RhdHVzOmMuc3QsdGV4dDpjLm4scmF3VGV4dDpjLm4sdmFsdWU6Yy5kaWR9KTpvLm9mZmxpbmUucHVzaCh7c3RhdHVzOmMuc3QsdGV4dDpjLm4scmF3VGV4dDpjLm4sdmFsdWU6Yy5kaWR9KX1mb3IodmFyIHUgaW4gbylvW3VdLnNvcnQoKGZ1bmN0aW9uKGUsdCl7dmFyIHI9ZS50ZXh0LnRvVXBwZXJDYXNlKCksbj10LnRleHQudG9VcHBlckNhc2UoKTtyZXR1cm4gcjxuPy0xOnI+bj8xOjB9KSk7dC5wdXNoKHtsYWJlbDppLmxhYmVsLHR5cGU6aS5jb250ZXh0LGlzUmVxdWlyZWQ6aS5yZXF1aXJlZCxzZWxlY3Rpb25zOm98fFtdLGlkOm4uSGVscGVyLmdlbmVyYXRlVVVJRCgpLGVycm9yTWVzc2FnZTphLGlzRXJyb3I6ITEsaW52YWxpZFR5cGVWYWx1ZToiIn0pfWVsc2V7dmFyIG09IVsibmFtZSIsImVtYWlsIiwicGhvbmUiLCJkZXBhcnRtZW50Il0uaW5jbHVkZXMoaS5jb250ZXh0KTt0LnB1c2goe2xhYmVsOmkubGFiZWwsYXR0cmlidXRlTWFwcGluZzoobnVsbD09aT92b2lkIDA6aS5hdHRyaWJ1dGVNYXBwaW5nKXx8bnVsbCx0eXBlOm0/aS50eXBlfHwidGV4dCI6aS5jb250ZXh0fHxpLnR5cGUsaXNDdXN0b206bSxpc1JlcXVpcmVkOmkucmVxdWlyZWQsc2VsZWN0aW9uczppLm9wdGlvbnM/dGhpcy5mb3JtYXRPcHRpb25zKGkub3B0aW9ucyxpLnR5cGUpOm51bGwsdmFsdWU6ImNoZWNrYm94Ij09PWkudHlwZT9bXTpzLGlkOm4uSGVscGVyLmdlbmVyYXRlVVVJRCgpLGVycm9yTWVzc2FnZTphLGludmFsaWRUeXBlVmFsdWU6IiJ9KX19cmV0dXJuIHR9LGZvcm1hdE9wdGlvbnM6ZnVuY3Rpb24oZSx0KXt2YXIgcixpPVtdOyJyYWRpbyI9PT10JiYocj1uLkhlbHBlci5nZW5lcmF0ZVVVSUQoKSk7Zm9yKHZhciBhPTA7YTxlLmxlbmd0aDthKyspe3ZhciBzPXt2YWx1ZTplW2FdLGxhYmVsOmVbYV0saWQ6bi5IZWxwZXIuZ2VuZXJhdGVVVUlEKCksbmFtZTpyfTtpLnB1c2gocyl9cmV0dXJuIGl9LGZvcm1hdEZvcm1EYXRhOmZ1bmN0aW9uKCl7dmFyIGU9e30sdD0hMSxyPVtdLG49InByZWNoYXQiPT09dGhpcy5zdGF0ZTtlLmN1c3RvbUF0dHJpYnV0ZXM9e30sbnx8KGUucXVlc3Rpb25zPVtdKTtmb3IodmFyIGE9MDthPHRoaXMuZm9ybUZpZWxkcy5sZW5ndGg7YSsrKXt2YXIgcz10aGlzLmZvcm1GaWVsZHNbYV0sbz1zLnZhbHVlfHwiIjtpZigic3RyaW5nIj09dHlwZW9mIG8mJihvPW8udHJpbSgpKSwibmFtZSI9PT1zLnR5cGUpby5sZW5ndGg+MCYmKGUubmFtZT1vKTtlbHNlIGlmKCJlbWFpbCI9PT1zLnR5cGUpby5sZW5ndGg+MCYmKGUuZW1haWw9byk7ZWxzZSBpZigicGhvbmUiPT09cy50eXBlJiZvLmxlbmd0aD4wKXt2YXIgbD1vLnJlcGxhY2UoL1tcc1wtKCldL2csIiIpO2lmKCF0aGlzLmlzVmFsaWRFMTY0UGhvbmVOdW1iZXIobykmJmwubGVuZ3RoPjgpe3MuaW52YWxpZFR5cGU9InBob25lIixzLmlzRXJyb3I9ITAsdD0hMDtjb250aW51ZX1lLnBob25lPSIrIi5jb25jYXQobCl9ZWxzZSBpZigiZGVwYXJ0bWVudCI9PT1zLnR5cGUpe2lmKHMuaXNSZXF1aXJlZCYmIXRoaXMuc2VsZWN0ZWREZXBhcnRtZW50KXtpZighcy5zZWxlY3Rpb25zfHwhcy5zZWxlY3Rpb25zLm9ubGluZS5sZW5ndGgmJiFzLnNlbGVjdGlvbnMub2ZmbGluZS5sZW5ndGgpY29udGludWU7cy5pc0Vycm9yPSEwLHQ9ITA7Y29udGludWV9aWYocy5pc0Vycm9yPSExLCF0aGlzLnNlbGVjdGVkRGVwYXJ0bWVudCljb250aW51ZTtlLmRlcGFydG1lbnQ9dGhpcy5zZWxlY3RlZERlcGFydG1lbnQudmFsdWUsbnx8ZS5xdWVzdGlvbnMucHVzaCh7bGFiZWw6aS5hLnJhd0RlY29kZShzLmxhYmVsKSxhbnN3ZXI6aS5hLnJhd0RlY29kZSh0aGlzLnNlbGVjdGVkRGVwYXJ0bWVudC5yYXdUZXh0KX0pfWlmKHMuaXNSZXF1aXJlZCYmMD09PW8ubGVuZ3RoJiYiZGVwYXJ0bWVudCIhPT1zLnR5cGUmJih0aGlzLiRyZWZzW3MuaWRdJiZ0aGlzLiRyZWZzW3MuaWRdLmxlbmd0aCYmdGhpcy4kcmVmc1tzLmlkXVswXSYmdGhpcy4kcmVmc1tzLmlkXVswXS52YWxpZGF0ZSYmdGhpcy4kcmVmc1tzLmlkXVswXS52YWxpZGF0ZSgpLHQ9ITApLHMuaXNFcnJvcil0PSEwO2Vsc2UgaWYobyYmby5sZW5ndGgpaWYocy5pc0N1c3RvbSl7dmFyIGM9aS5hLnJhd0RlY29kZShzLmxhYmVsKTtpZihyLnB1c2goe2xhYmVsOmMsdmFsdWU6b30pLHMuYXR0cmlidXRlTWFwcGluZyYmKGUuY3VzdG9tQXR0cmlidXRlc1tzLmF0dHJpYnV0ZU1hcHBpbmddPW8pLCFuKXt2YXIgdT0ic3RyaW5nIj09dHlwZW9mIG8/bzpvLmpvaW4oIiwgIik7ZS5xdWVzdGlvbnMucHVzaCh7bGFiZWw6YyxhbnN3ZXI6dX0pfX1lbHNlIGlmKCFuKXt2YXIgbT0ic3RyaW5nIj09dHlwZW9mIG8/bzpvLmpvaW4oIiwgIik7ZS5xdWVzdGlvbnMucHVzaCh7bGFiZWw6aS5hLnJhd0RlY29kZShzLmxhYmVsKSxhbnN3ZXI6bX0pfX1yZXR1cm4gMD09PU9iamVjdC5rZXlzKGUuY3VzdG9tQXR0cmlidXRlcykubGVuZ3RoJiZkZWxldGUgZS5jdXN0b21BdHRyaWJ1dGVzLHtmb3JtRGF0YTplLGhhc0Vycm9yOnQsdHJhbnNjcmlwdEN1c3RvbUZpZWxkczpyfX0sZm9ybWF0SW5saW5lRm9ybURhdGE6ZnVuY3Rpb24oKXtmb3IodmFyIGU9e2FkZGl0aW9uYWxJbmZvOltdfSx0PSExLHI9bnVsbCxuPTA7bjx0aGlzLmZvcm1GaWVsZHMubGVuZ3RoO24rKyl7dmFyIGE9dGhpcy5mb3JtRmllbGRzW25dLHM9YS52YWx1ZXx8IiI7aWYoInN0cmluZyI9PXR5cGVvZiBzJiYocz1zLnRyaW0oKSksYS5pc1JlcXVpcmVkJiYwPT09cy5sZW5ndGgpe3I9dGhpcy4kaTE4bigiZm9ybSIsImFsbF9yZXF1aXJlZF9lcnJvcl9tZXNzYWdlIiksdD0hMDticmVha31pZigibmFtZSI9PT1hLnR5cGUpZS5uYW1lPXMubGVuZ3RoP3M6dm9pZCAwO2Vsc2UgaWYoImVtYWlsIj09PWEudHlwZSllLmVtYWlsPXMubGVuZ3RoP3M6dm9pZCAwO2Vsc2UgaWYoInBob25lIj09PWEudHlwZSlpZihzLmxlbmd0aD4wKXt2YXIgbz1zLnJlcGxhY2UoL1tcc1wtKCldL2csIiIpO2lmKCF0aGlzLmlzVmFsaWRFMTY0UGhvbmVOdW1iZXIocykmJm8ubGVuZ3RoPjgpe2EuaW52YWxpZFR5cGU9InBob25lIixhLmlzRXJyb3I9ITAsdD0hMCxyPXRoaXMuJGkxOG4oImZvcm0iLCJwaG9uZV9pbnZhbGlkX2NvdW50cnlfY29kZSIpO2JyZWFrfWUucGhvbmU9IisiLmNvbmNhdChvKX1lbHNlIGUucGhvbmU9dm9pZCAwO2Vsc2UgaWYoIm1lc3NhZ2UiPT09YS50eXBlKWUubWVzc2FnZT1zLmxlbmd0aD9zOnZvaWQgMDtlbHNle3ZhciBsO251bGwhPT0obD1zKSYmdm9pZCAwIT09bCYmbC5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2Ygcz9hLnZhbHVlLmxlbmd0aCYmZS5hZGRpdGlvbmFsSW5mby5wdXNoKHtsYWJlbDppLmEucmF3RGVjb2RlKGEubGFiZWwpLHR5cGU6YS50eXBlLHZhbHVlOnN9KTphLnZhbHVlLmxlbmd0aCYmZS5hZGRpdGlvbmFsSW5mby5wdXNoKHtsYWJlbDppLmEucmF3RGVjb2RlKGEubGFiZWwpLHR5cGU6YS50eXBlLHZhbHVlOnMuam9pbigiLCAiKX0pfWEuaXNFcnJvciYmKHQ9ITApfXJldHVybntmb3JtRGF0YTplLGVycm9yOntoYXNFcnJvcjp0LG1lc3NhZ2U6cn19fX19fX1dKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dHdrLWNodW5rLTc5NDFjYzA2LmpzLm1hcA=="}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/message-preview.css","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.421Z","timestamp":1785143155421,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/css/message-preview.css HTTP/1.1\r\nHost: embed.tawk.to\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\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: text/css\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"39f38fff97bceb6dd38d255228384ab9\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c31698f0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":54016,"size_decoded":12897,"mime_type":"text/css","magic":"ASCII text, with very long lines (53968)","md5":"39f38fff97bceb6dd38d255228384ab9","sha1":"4f9d5ac34f834ec7f160fe555097691b45d47d39","sha256":"d9b57cfbaea5a38c3d279ba0a64a2fa0ccb499f94dfac8dc8845ac1c0f22f829","sha512":"cf1a36ed2530d962ee9a8013cfa3585dad4e85857e225c6a5670c92a574769d771b6a0f1ff2ae31c176ca078e7f747b704746996fe7dcbf826d906754e5545ed","ssdeep":"1536:fGUifm7kUdwddCriQiLc0Lg261F2BBCsEZf:J1V","tlshash":"cc3322b2f56710ccb363c22292d1f6bc202ae770d746ce96f427766c4ad12a63551fac","first_seen":"2026-01-16T00:46:03.995467Z","last_seen":"2026-08-03T12:50:03.42379Z","times_seen":33407,"resource_available":false,"data":"OnJvb3R7LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7LS10YXdrLWhlYWRlci10ZXh0LWNvbG9yOiNmZmZ9aHRtbHtmb250LWZhbWlseTpMYXRvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNjE4O2xldHRlci1zcGFjaW5nOm5vcm1hbDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMyNDI0MjQ7c2Nyb2xsLWJlaGF2aW9yOnNtb290aH1ib2R5e21hcmdpbjowfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZTpub25lfWE6Zm9jdXN7b3V0bGluZToxcHggc29saWQgIzA2Zn0udGF3ay1saW5rLGF7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stbGluaywudGF3ay1saW5rOmhvdmVyLGEsYTpob3Zlcntjb2xvcjojMDNhODRlO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfTpub3QocHJlKT5jb2RlLDpub3QocHJlKT5rYmQsOm5vdChwcmUpPnNhbXB7Zm9udC1mYW1pbHk6TGF0byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODEycmVtO2NvbG9yOiNiZjEyMTI7d2hpdGUtc3BhY2U6bm93cmFwfWVte2NvbG9yOiNiZjEyMTJ9aW5ze2JhY2tncm91bmQ6I2ZmZDtjb2xvcjojMTIxMjEyfW1hcmt7YmFja2dyb3VuZDpyZ2JhKDEwOSw1NSwyMTgsLjEpO2NvbG9yOiMwM2E4NGV9cXtmb250LXN0eWxlOml0YWxpY31zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1cHt0b3A6LS41ZW19c3Vie2JvdHRvbTouMjVlbX1hdWRpbyxjYW52YXMsaWZyYW1lLGltZyxzdmcsdmlkZW97dmVydGljYWwtYWxpZ246bWlkZGxlfWF1ZGlvLGNhbnZhcyxpbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87Ym94LXNpemluZzpib3JkZXItYm94fXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1pbWc6bm90KFtzcmNdKXt2aXNpYmlsaXR5OmhpZGRlbn1hZGRyZXNzLGRsLGZpZWxkc2V0LGZpZ3VyZSxvbCxwLHByZSx1bHttYXJnaW46MH0qK2FkZHJlc3MsKitkbCwqK2ZpZWxkc2V0LCorZmlndXJlLCorb2wsKitwLCorcHJlLCordWx7bWFyZ2luLXRvcDowfSorLnRhd2staDEsKisudGF3ay1oMiwqKy50YXdrLWgzLCorLnRhd2staDQsKisudGF3ay1oNSwqKy50YXdrLWg2LCoraDEsKitoMiwqK2gzLCoraDQsKitoNSwqK2g2e21hcmdpbi10b3A6MS41cmVtfS50YXdrLWgxLGgxe2ZvbnQtc2l6ZToxLjdyZW07bGluZS1oZWlnaHQ6MS4yfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjI3NXJlbTtsaW5lLWhlaWdodDoxLjM7Zm9udC13ZWlnaHQ6NDAwfS50YXdrLWgzLGgze2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo0MDB9LnRhd2staDQsaDR7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS40fS50YXdrLWg1LGg1e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNH0udGF3ay1oNixoNntmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjR9QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWgxLGgxe2ZvbnQtc2l6ZToycmVtfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjVyZW19fW9sLHVse3BhZGRpbmctbGVmdDoycmVtfW9sPmxpPm9sLG9sPmxpPnVsLHVsPmxpPm9sLHVsPmxpPnVse21hcmdpbi10b3A6MH1kdHtmb250LXdlaWdodDo4MDB9ZGR7bWFyZ2luLWxlZnQ6MH0udGF3ay1ocixocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGU7dGV4dC1hbGlnbjppbmhlcml0O21hcmdpbjowIDAgMXJlbTtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1fSorLnRhd2staHIsKitocnttYXJnaW4tdG9wOjFyZW19LnRhd2staHIudGF3ay1oci1kYXNoZWR7Ym9yZGVyLXN0eWxlOmRhc2hlZH1hZGRyZXNze2ZvbnQtc2l6ZTpub3JtYWx9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtc3R5bGU6aXRhbGljfSorYmxvY2txdW90ZXttYXJnaW4tdG9wOjFyZW19YmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjB9YmxvY2txdW90ZSBmb290ZXJ7bWFyZ2luLXRvcDouNnJlbTtmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjV9cHJle2ZvbnQ6LjgxMnJlbS8xLjUgTGF0byxzYW5zLXNlcmlmO2NvbG9yOiMxMjEyMTI7LW1vei10YWItc2l6ZTo0Oy1vLXRhYi1zaXplOjQ7dGFiLXNpemU6NDtvdmVyZmxvdzphdXRvfXByZSBjb2Rle2ZvbnQtZmFtaWx5OkxhdG8sc2Fucy1zZXJpZn06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6IzAzYTg0ZTtjb2xvcjojZmZmO3RleHQtc2hhZG93Om5vbmV9OjpzZWxlY3Rpb257YmFja2dyb3VuZDojMDNhODRlO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6bm9uZX1kZXRhaWxzLG1haW57ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1pZnJhbWV7Ym9yZGVyOjB9LnRhd2stZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS50YXdrLWZsZXgtaW5saW5le2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9LnRhd2stZmxleC1pbmxpbmU6YWZ0ZXIsLnRhd2stZmxleC1pbmxpbmU6YmVmb3JlLC50YXdrLWZsZXg6YWZ0ZXIsLnRhd2stZmxleDpiZWZvcmV7ZGlzcGxheTpub25lfS50YXdrLWZsZXgtbGVmdHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay1mbGV4LWxlZnRcQHN7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAc3stbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQHN7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAc3stbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHN7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtbGVmdFxAbXstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBtey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbXstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBtey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbXstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLWZsZXgtbGVmdFxAbHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBsey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBsey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLWZsZXgtbGVmdFxAeGx7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAeGx7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1mbGV4LXJpZ2h0XEB4bHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEB4bHstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHhsey1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfX0udGF3ay1mbGV4LXN0cmV0Y2h7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS50YXdrLWZsZXgtdG9wey1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnRhd2stZmxleC1taWRkbGV7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0udGF3ay1mbGV4LWJvdHRvbXstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9LnRhd2stZmxleC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnRhd2stZmxleC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LnRhd2stZmxleC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnRhd2stZmxleC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9LnRhd2stZmxleC1ub3dyYXB7LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0udGF3ay1mbGV4LXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS50YXdrLWZsZXgtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9LnRhd2stZmxleC13cmFwLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2g7YWxpZ24tY29udGVudDpzdHJldGNofS50YXdrLWZsZXgtd3JhcC10b3B7LW1zLWZsZXgtbGluZS1wYWNrOnN0YXJ0O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LXdyYXAtbWlkZGxley1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC13cmFwLWJvdHRvbXstbXMtZmxleC1saW5lLXBhY2s6ZW5kO2FsaWduLWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC13cmFwLWJldHdlZW57LW1zLWZsZXgtbGluZS1wYWNrOmp1c3RpZnk7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtd3JhcC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9LnRhd2stZmxleC1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3R7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NDBweCl7LnRhd2stZmxleC1maXJzdFxAc3stbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHN7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtZmlyc3RcQG17LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBtey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCl7LnRhd2stZmxleC1maXJzdFxAbHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQGx7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsudGF3ay1mbGV4LWZpcnN0XEB4bHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHhsey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX0udGF3ay1mbGV4LW5vbmV7LW1zLWZsZXg6bm9uZTtmbGV4Om5vbmV9LnRhd2stZmxleC1hdXRvey1tcy1mbGV4OmF1dG87ZmxleDphdXRvfS50YXdrLWZsZXgtMXstbXMtZmxleDoxO2ZsZXg6MX0udGF3ay1tYXJnaW57bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLC50YXdrLW1hcmdpbi10b3B7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1ib3R0b217bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sZWZ0e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbHttYXJnaW4tYm90dG9tOi42cmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14c21hbGwsLnRhd2stbWFyZ2luLXhzbWFsbC10b3B7bWFyZ2luLXRvcDouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b217bWFyZ2luLWJvdHRvbTouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0e21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tc21hbGx7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi1zbWFsbCwudGF3ay1tYXJnaW4tc21hbGwtdG9we21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXNtYWxsLWJvdHRvbXttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1sZWZ0e21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLXNtYWxsLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcnRsIC50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLW1lZGl1bSwudGF3ay1tYXJnaW4tbWVkaXVtLXRvcHttYXJnaW4tdG9wOjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1tZWRpdW0tYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbWVkaXVtLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1tZWRpdW0tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLWxhcmdlLC50YXdrLW1hcmdpbi1sYXJnZS10b3B7bWFyZ2luLXRvcDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbGFyZ2UtYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4tbGFyZ2UsLnRhd2stbWFyZ2luLWxhcmdlLXRvcHttYXJnaW4tdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoyLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXhsYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4teGxhcmdlLC50YXdrLW1hcmdpbi14bGFyZ2UtdG9we21hcmdpbi10b3A6Mi41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi14bGFyZ2V7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14bGFyZ2UsLnRhd2stbWFyZ2luLXhsYXJnZS10b3B7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXJlbW92ZXttYXJnaW46MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS10b3B7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWJvdHRvbXttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDowIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS1yaWdodHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLXZlcnRpY2Fse21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWFkamFjZW50Kyp7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tdG9we21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tYm90dG9te21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLWxlZnR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0by12ZXJ0aWNhbHttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stcGFkZGluZ3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctdG9we3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGVmdHtwYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1ib3R0b217cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yaWdodHtwYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay1wYWRkaW5ne3BhZGRpbmc6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy10b3B7cGFkZGluZy10b3A6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sZWZ0e3BhZGRpbmctbGVmdDoycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWJvdHRvbXtwYWRkaW5nLWJvdHRvbToycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MnJlbSFpbXBvcnRhbnR9fS50YXdrLXBhZGRpbmctc21hbGx7cGFkZGluZzouNnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1zbWFsbC10b3B7cGFkZGluZy10b3A6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtbGVmdHtwYWRkaW5nLWxlZnQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtYm90dG9te3BhZGRpbmctYm90dG9tOi42cmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXNtYWxsLXJpZ2h0e3BhZGRpbmctcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLXRvcHtwYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLWxlZnR7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtcmlnaHR7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtdG9we3BhZGRpbmctdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1sZWZ0e3BhZGRpbmctbGVmdDoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1yaWdodHtwYWRkaW5nLXRvcDoyLjVyZW0haW1wb3J0YW50fX0udGF3ay1wYWRkaW5nLXJlbW92ZXtwYWRkaW5nOjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXRvcHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ib3R0b217cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yZW1vdmUtbGVmdHtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1sZWZ0e3BhZGRpbmctbGVmdDphdXRvIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1yaWdodHtwYWRkaW5nLXJpZ2h0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFse3BhZGRpbmctbGVmdDowIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXRleHQtcmVndWxhci0xe2ZvbnQtc2l6ZTouNzVyZW19LnRhd2stdGV4dC1yZWd1bGFyLTEsLnRhd2stdGV4dC1yZWd1bGFyLTJ7bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1yZWd1bGFyLTJ7Zm9udC1zaXplOi44MTJyZW19LnRhd2stdGV4dC1yZWd1bGFyLTN7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTEsLnRhd2stdGV4dC1yZWd1bGFyLTR7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTJ7Zm9udC1zaXplOjEuMjVyZW19LnRhd2stdGV4dC1ib2xkLTIsLnRhd2stdGV4dC1ib2xkLTN7bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtYm9sZC0ze2ZvbnQtc2l6ZToxLjVyZW19LnRhd2stdGV4dC1ib2xkLTR7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtZ3JlZW4tMXtjb2xvcjojMDNhODRlIWltcG9ydGFudH0udGF3ay10ZXh0LXllbGxvdy0xe2NvbG9yOiNmZGMyMGYhaW1wb3J0YW50fS50YXdrLXRleHQtcmVkLTF7Y29sb3I6I2JmMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTB7Y29sb3I6IzI0MjQyNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTF7Y29sb3I6IzEyMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTJ7Y29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTN7Y29sb3I6IzU0NTQ1NCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTR7Y29sb3I6IzZlNmU2ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTV7Y29sb3I6IzgyODI4MiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTZ7Y29sb3I6I2IyYjJiMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTd7Y29sb3I6I2Q0ZDRkNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTh7Y29sb3I6I2U1ZTVlNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTl7Y29sb3I6I2Y1ZjVmNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTEwe2NvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS50YXdrLXRleHQtd2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ib2xke2ZvbnQtd2VpZ2h0OjYwMH0udGF3ay10ZXh0LWl0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGF3ay10ZXh0LW9ibGlxdWV7Zm9udC1zdHlsZTpvYmxpcXVlfS50YXdrLXRleHQtdW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stdGV4dC11cHBlcmNhc2V7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1sb3dlcmNhc2V7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGF3ay10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay10ZXh0LWxlZnRcQHN7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBzLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBze3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAc3t0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBze3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCl7LnRhd2stdGV4dC1sZWZ0XEBte3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1yaWdodFxAbSxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAbXt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLXRleHQtcmlnaHRcQG17dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LWNlbnRlclxAbXt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay10ZXh0LWxlZnRcQGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBsLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBse3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAbHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBse3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEB4bCxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEB4bHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEB4bHt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fS50YXdrLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRvcCFpbXBvcnRhbnR9LnRhd2stdGV4dC1taWRkbGV7dmVydGljYWwtYWxpZ246bWlkZGxlIWltcG9ydGFudH0udGF3ay10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS50YXdrLXRleHQtYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS50YXdrLXRleHQtbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1ib3gtc2hhZG93LXhzbWFsbHtib3gtc2hhZG93OjAgMnB4IDNweCByZ2JhKDAsMCwwLC4wOCl9LnRhd2stYm94LXNoYWRvdy1zbWFsbHtib3gtc2hhZG93OjAgMnB4IDhweCByZ2JhKDAsMCwwLC4xKX0udGF3ay1ib3gtc2hhZG93LW1lZGl1bXtib3gtc2hhZG93OjAgNXB4IDE1cHggcmdiYSgwLDAsMCwuMTIpfS50YXdrLWJveC1zaGFkb3ctbGFyZ2V7Ym94LXNoYWRvdzowIDE0cHggMjVweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stYm94LXNoYWRvdy14bGFyZ2V7Ym94LXNoYWRvdzowIDI4cHggNTBweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stdGV4dC10cnVuY2F0ZXttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS50YXdrLWZsb2F0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stZmxvYXQtbGVmdHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1mbG9hdC1yaWdodHtmbG9hdDpsZWZ0IWltcG9ydGFudH0udGF3ay1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YXdrLW91dGxpbmU6Zm9jdXMtdmlzaWJsZXtib3JkZXI6MXB4IHNvbGlkICMwNmYhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KSFpbXBvcnRhbnR9LnRhd2stY2FyZHtwb3NpdGlvbjpyZWxhdGl2ZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxLjNyZW07Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWNhcmQsLnRhd2stY2FyZC1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtjb2xvcjojNTQ1NDU0fS50YXdrLWNhcmQtaW52ZXJzZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzU0NTQ1NH0udGF3ay1jYXJkLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjojMDNhODRlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay1jYXJkLXhzbWFsbHtwYWRkaW5nOi42cmVtfS50YXdrLWNhcmQtc21hbGx7cGFkZGluZzoxcmVtfS50YXdrLWNhcmQtbWVkaXVte3BhZGRpbmc6MnJlbX0udGF3ay1jYXJkLWxhcmdle3BhZGRpbmc6Mi41cmVtfS50YXdrLWNoYXQtYnViYmxle3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOi42cmVtO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtjb2xvcjojMDAwO2JvcmRlci1yYWRpdXM6MTBweH0udGF3ay1jaGF0LWJ1YmJsZS50YXdrLWFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7Y29sb3I6I2ZmZn0udGF3ay1jaGF0LWJ1YmJsZS50YXdrLWFjdGl2ZSAudGF3ay10aW1lYWdve2NvbG9yOiNmZmZ9LnRhd2stY2hhdC1idWJibGU+KnttYXJnaW4tdG9wOjFyZW07bWFyZ2luLWJvdHRvbToxcmVtfS50YXdrLWNoYXQtYnViYmxlPjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnRhd2stY2hhdC1idWJibGU+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS50YXdrLWNoYXQtYnViYmxlIC50YXdrLWxpbmssLnRhd2stY2hhdC1idWJibGUgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXQtYnViYmxlIG9sLC50YXdrLWNoYXQtYnViYmxlIHVse2xpc3Qtc3R5bGUtcG9zaXRpb246aW5zaWRlfS50YXdrLWNoYXQtYnViYmxlIHVse2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS50YXdrLWNoYXQtYnViYmxlIHVsPnVse2xpc3Qtc3R5bGUtdHlwZTpjaXJjbGU7cGFkZGluZy1sZWZ0OjFyZW19LnRhd2stY2hhdC1idWJibGUgdWw+dWw+dWx7bGlzdC1zdHlsZS10eXBlOnNxdWFyZTtwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSB1bD51bD51bD51bHtsaXN0LXN0eWxlLXR5cGU6ZGlzYztwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSB1bD51bD51bD51bD51bHtsaXN0LXN0eWxlLXR5cGU6Y2lyY2xlO3BhZGRpbmctbGVmdDoxcmVtfS50YXdrLWNoYXQtYnViYmxlIG9se2xpc3Qtc3R5bGUtdHlwZTpkZWNpbWFsfS50YXdrLWNoYXQtYnViYmxlIG9sPm9se2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1hbHBoYTtwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSBvbD5vbD5vbHtsaXN0LXN0eWxlLXR5cGU6bG93ZXItcm9tYW47cGFkZGluZy1sZWZ0OjFyZW19LnRhd2stY2hhdC1idWJibGUgb2w+b2w+b2w+b2x7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWw7cGFkZGluZy1sZWZ0OjFyZW19LnRhd2stY2hhdC1idWJibGUgb2w+b2w+b2w+b2w+b2x7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhO3BhZGRpbmctbGVmdDoxcmVtfS50YXdrLWNoYXQtYnViYmxlIGJsb2NrcXVvdGV7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1sZWZ0Oi44cmVtO2ZvbnQtc3R5bGU6bm9ybWFsfS50YXdrLWNoYXQtYnViYmxlIGJsb2NrcXVvdGU6YWZ0ZXIsLnRhd2stY2hhdC1idWJibGUgYmxvY2txdW90ZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7aGVpZ2h0OjEwMCU7d2lkdGg6M3B4O2JvcmRlci1yYWRpdXM6M3B4O2JhY2tncm91bmQtY29sb3I6IzEyMTIxMn0udGF3ay1jaGF0LWJ1YmJsZSBjb2Rle2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOi4zcmVtfS50YXdrLWNoYXQtYnViYmxlIGNvZGUsLnRhd2stY2hhdC1idWJibGUgcHJle2JvcmRlcjoxcHggc29saWQgI2U1ZTVlNTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojMTIxMjEyO2NvbG9yOnZhcigtLXRhd2stdmlzaXRvci10ZXh0LWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC4xODgyMzUyOTQxMTc2NDcwNil9LnRhd2stY2hhdC1idWJibGUgcHJle3BhZGRpbmc6LjVyZW19LnRhd2stY2hhdC1idWJibGUgLnRhd2staWNvbntjb2xvcjojMDNhODRlfS50YXdrLWNoYXQtYnViYmxlLnRhd2stYWN0aXZlIC50YXdrLWljb24sLnRhd2stY2hhdC1idWJibGUudGF3ay1hY3RpdmUgLnRhd2stbGluaywudGF3ay1jaGF0LWJ1YmJsZS50YXdrLWFjdGl2ZSBhe2NvbG9yOiNmZmZ9LnRhd2stY2hhdC1idWJibGUgdWxbY2xhc3NePXRhd2stY2hhdC1idWJibGUtXXttYXJnaW4tbGVmdDowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmV9LnRhd2stY2hhdC1idWJibGUtaW1hZ2Vze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDYsMWZyKTtncmlkLWF1dG8tcm93czphdXRvO2dhcDo0cHggNHB4fS50YXdrLWNoYXQtYnViYmxlLWltYWdlcyBsaT5kaXZ7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0udGF3ay1jaGF0LWJ1YmJsZS1pbWFnZXMgbGkgLnRhd2staW1hZ2UsLnRhd2stY2hhdC1idWJibGUtaW1hZ2VzIGxpPmltZ3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21heC13aWR0aDpub25lOy1vLW9iamVjdC1maXQ6Y292ZXI7b2JqZWN0LWZpdDpjb3Zlcjstby1vYmplY3QtcG9zaXRpb246Y2VudGVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWdyaWQtMT5saXtncmlkLWFyZWE6MS8xLzIvNztoZWlnaHQ6MjUwcHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTI+bGk6Zmlyc3QtY2hpbGR7Z3JpZC1hcmVhOjEvMS8yLzQ7aGVpZ2h0OjEyNXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC0yPmxpOm50aC1jaGlsZCgyKXtncmlkLWFyZWE6MS80LzIvNztoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTM+bGk6Zmlyc3QtY2hpbGR7Z3JpZC1hcmVhOjEvMS8yLzc7aGVpZ2h0OjE1MHB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC0zPmxpOm50aC1jaGlsZCgyKXtncmlkLWFyZWE6Mi8xLzMvNDtoZWlnaHQ6MTAwcHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTM+bGk6bnRoLWNoaWxkKDMpe2dyaWQtYXJlYToyLzQvMy83O2hlaWdodDoxMDBweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtND5saTpmaXJzdC1jaGlsZHtncmlkLWFyZWE6MS8xLzIvNDtoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTQ+bGk6bnRoLWNoaWxkKDIpe2dyaWQtYXJlYToxLzQvMi83O2hlaWdodDoxMjVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtND5saTpudGgtY2hpbGQoMyl7Z3JpZC1hcmVhOjIvMS8zLzQ7aGVpZ2h0OjEyNXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC00PmxpOm50aC1jaGlsZCg0KXtncmlkLWFyZWE6Mi80LzMvNztoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTU+bGk6Zmlyc3QtY2hpbGR7Z3JpZC1hcmVhOjEvMS8yLzQ7aGVpZ2h0OjEyNXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC01PmxpOm50aC1jaGlsZCgyKXtncmlkLWFyZWE6MS80LzIvNztoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTU+bGk6bnRoLWNoaWxkKDMpe2dyaWQtYXJlYToyLzEvMy8zO2hlaWdodDo4NXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC01PmxpOm50aC1jaGlsZCg0KXtncmlkLWFyZWE6Mi8zLzMvNTtoZWlnaHQ6ODVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtNT5saTpudGgtY2hpbGQoNSl7Z3JpZC1hcmVhOjIvNS8zLzc7aGVpZ2h0Ojg1cHg7d2lkdGg6MTAwJX0udGF3ay1jaGF0LWJ1YmJsZS12aWRlb3MgbGl7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbn0udGF3ay1jaGF0LWJ1YmJsZS1hdWRpb3MgYXVkaW97aGVpZ2h0OjQwcHg7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjEwcHg7ZGlzcGxheTpibG9ja30udGF3ay1jaGF0LWJ1YmJsZS1maWxlcyBsaXttYXJnaW4tYm90dG9tOi42cmVtfS50YXdrLWNoYXQtYnViYmxlLWZpbGVzIGxpOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS50YXdrLWNoYXQtYnViYmxlLWF1ZGlvcyBsaSBhLC50YXdrLWNoYXQtYnViYmxlLWZpbGVzIGxpIGF7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tdmFyLWhlYWRlci10ZXh0LWNvbG9yKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tdmFyLWhlYWRlci10ZXh0LWNvbG9yKTtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tdmFyLWhlYWRlci10ZXh0LWNvbG9yKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXZhci1oZWFkZXItdGV4dC1jb2xvcik7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LnRhd2stY2hhdC1idWJibGUtYXVkaW9zIGxpIGE6aG92ZXIsLnRhd2stY2hhdC1idWJibGUtZmlsZXMgbGkgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0udGF3ay1jaGF0LWJ1YmJsZS1hdWRpb3MgbGkgaSwudGF3ay1jaGF0LWJ1YmJsZS1maWxlcyBsaSBpe3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTttYXJnaW4tdG9wOjFweH0udGF3ay1jaGF0aW5wdXR7d2lkdGg6MTAwJTtwYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmU7Ym94LXNpemluZzpib3JkZXItYm94fS50YXdrLWNoYXRpbnB1dC1lbW9qaXN7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjEwMCU7bGVmdDphdXRvO3JpZ2h0OjA7dG9wOmF1dG87bWFyZ2luOjAgYXV0byAuMjVyZW07ei1pbmRleDoyO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjE5Ljg3NXJlbX0udGF3ay1jaGF0aW5wdXQtZW1vamlzIC50YXdrLWVtb2ppLXBpY2tlcnttYXJnaW46MCBhdXRvO3dpZHRoOjEwMCV9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWR7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6LjZyZW19LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtbGlzdHtsaXN0LXN0eWxlOm5vbmU7cGFkZGluZzowO21hcmdpbjowfS50YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLWlucHV0LC50YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLXByZXZpZXd7bWFyZ2luLXJpZ2h0Oi42MjVyZW07d2lkdGg6My4xMjVyZW07aGVpZ2h0OjMuMTI1cmVtfS50YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLXByZXZpZXd7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQ6I2ZhZmFmYTtib3JkZXItcmFkaXVzOjEwcHh9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtcHJldmlldyAudGF3ay1pY29ue2NvbG9yOiMyMTIxMjF9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtcHJldmlldyBpbWd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstby1vYmplY3QtZml0OmNvdmVyO29iamVjdC1maXQ6Y292ZXI7LW8tb2JqZWN0LXBvc2l0aW9uOmNlbnRlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyO2JvcmRlci1yYWRpdXM6MTBweH0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1pbnB1dHtiYWNrZ3JvdW5kOiNmYWZhZmE7Ym9yZGVyLXJhZGl1czoxMHB4O2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLWlucHV0IC50YXdrLWljb24tYWRke2NvbG9yOiMyMTIxMjF9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtaW5wdXQ6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQgaW5wdXR7ZGlzcGxheTpub25lO2JveC1zaXppbmc6Ym9yZGVyLWJveH0udGF3ay1jaGF0aW5wdXQtZWRpdG9ye2ZvbnQ6NDAwIC44MTJyZW0gTGF0byxzYW5zLXNlcmlmO21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCU7bWluLWhlaWdodDoxcmVtO2hlaWdodDoxcmVtO21heC1oZWlnaHQ6OS4zNzVyZW07cmVzaXplOm5vbmU7b3V0bGluZTpub25lO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCA1LjVyZW0gMCAwO21hcmdpbjouMTVyZW0gMCAwfS50YXdrLWNoYXRpbnB1dC1hY3Rpb24tYnV0dG9uc3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowfS50YXdrLWNoYXRpbnB1dC1hY3Rpb24tYnV0dG9ucy5hY3RpdmV7dHJhbnNpdGlvbjphbGwgLjFzIGVhc2U7cmlnaHQ6MnJlbX0udGF3ay1jaGF0aW5wdXQtYnV0dG9ue2NvbG9yOiMyMTIxMjE7YmFja2dyb3VuZDpub25lO3BhZGRpbmc6MDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MTBweDtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxLjhyZW19LnRhd2stY2hhdGlucHV0LWJ1dHRvbi50YXdrLWNoYXRpbnB1dC1mb2N1c2Vke2NvbG9yOiMxMjEyMTJ9LnRhd2stY2hhdGlucHV0LWJ1dHRvbjpob3ZlcntjdXJzb3I6cG9pbnRlcn0udGF3ay1jaGF0aW5wdXQtYnV0dG9uOmZvY3Vze291dGxpbmU6bm9uZX0udGF3ay1jaGF0aW5wdXQtYnV0dG9uLmFjdGl2ZSAudGF3ay1jaGF0aW5wdXQtcmF0aW5nc3t3aWR0aDozLjgxMjVyZW07b3BhY2l0eToxfS50YXdrLWNoYXRpbnB1dC1idXR0b24uYWN0aXZlIC50YXdrLWNoYXRpbnB1dC1yYXRpbmd7b3BhY2l0eTowfS50YXdrLWNoYXRpbnB1dC1yYXRpbmd7dHJhbnNpdGlvbjpvcGFjaXR5IDFzIGVhc2UtaW4tb3V0fS50YXdrLWNoYXRpbnB1dC1yYXRpbmdze3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6I2ZmZjtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MDtib3R0b206LTEwcHg7dHJhbnNpdGlvbjphbGwgLjNzIGVhc2U7cmlnaHQ6MDtoZWlnaHQ6Mi41cmVtO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7ei1pbmRleDoxfS50YXdrLWNoYXRpbnB1dC1yYXRpbmdzIGlucHV0e2Rpc3BsYXk6bm9uZX0udGF3ay1jaGF0aW5wdXQtcmF0ZXtiYWNrZ3JvdW5kOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyOjA7cGFkZGluZzowfS50YXdrLWNoYXRpbnB1dC1yYXRlOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjQpO2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXRpbnB1dC1yYXRpbmdzLXRodW1icy1kb3due2NvbG9yOiNiZjEyMTJ9LnRhd2stY2hhdGlucHV0LXJhdGluZ3MtdGh1bWJzLXVwe2NvbG9yOiMwM2E4NGV9LnRhd2stY2hhdGlucHV0LXNlbmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjB9LnRhd2stY2hhdGlucHV0LXNlbmR7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojMDNhODRlO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7cGFkZGluZzowO3dpZHRoOjEuOHJlbX0udGF3ay1jaGF0aW5wdXQtc2VuZDpob3ZlcntjdXJzb3I6cG9pbnRlcn0udGF3ay1jaGF0aW5wdXQtc2VuZDpmb2N1c3tvdXRsaW5lOjFweCBzb2xpZCAjMDZmfS50YXdrLWNoYXRpbnB1dC1maWxlLXJlbW92ZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotNnB4O3RvcDotNnB4O2JhY2tncm91bmQ6I2ZmZjt3aWR0aDouODc1cmVtO2hlaWdodDouODc1cmVtO2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoxcHggc29saWQgI2JmMTIxMjtjdXJzb3I6cG9pbnRlcn0udGF3ay1jaGF0aW5wdXQtZmlsZS1yZW1vdmUgLnRhd2staWNvbi1jbG9zZXtmb250LXNpemU6LjM3NXJlbTtjb2xvcjojYmYxMjEyfS50YXdrLWNoYXRpbnB1dC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLXJ0bCAudGF3ay1jaGF0aW5wdXQtZWRpdG9ye3BhZGRpbmc6MCAwIDAgNS41cmVtfS50YXdrLXJ0bCAudGF3ay1jaGF0aW5wdXQtYWN0aW9uLWJ1dHRvbnN7bGVmdDowO3JpZ2h0OmF1dG99LnRhd2stcnRsIC50YXdrLWNoYXRpbnB1dC1hY3Rpb24tYnV0dG9ucy5hY3RpdmV7bGVmdDozMHB4fS50YXdrLXJ0bCAudGF3ay1jaGF0aW5wdXQtZW1vamlzLC50YXdrLXJ0bCAudGF3ay1jaGF0aW5wdXQtcmF0aW5ncywudGF3ay1ydGwgLnRhd2stY2hhdGlucHV0LXNlbmQtY29udGFpbmVye2xlZnQ6MDtyaWdodDphdXRvfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6dGF3ay1mb250LWljb247c3JjOnVybCgvZm9udHMvdGF3ay1mb250LWljb24tMy53b2ZmPzU1NzU1NzI4KSBmb3JtYXQoIndvZmYiKSx1cmwoL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMudHRmPzU1NzU1NzI4KSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC9mb250cy90YXdrLWZvbnQtaWNvbi0zLnN2Zz81NTc1NTcyOCN0YXdrLWZvbnQtaWNvbikgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC1kaXNwbGF5OnN3YXB9LnRhd2staWNvbntmb250LWZhbWlseTp0YXdrLWZvbnQtaWNvbjtmb250LXNpemU6MS4xMjVyZW07Y29sb3I6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXN0eWxlOm5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MCAuMmVtO3dpZHRoOjFlbTt0ZXh0LWFsaWduOmNlbnRlcn1ib2R5LnRhd2stcnRsIC50YXdrLWljb257dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnRhd2staWNvbi14c21hbGx7Zm9udC1zaXplOi43NXJlbX0udGF3ay1pY29uLXNtYWxse2ZvbnQtc2l6ZTouODEycmVtfS50YXdrLWljb24tbWVkaXVte2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWljb24tbGFyZ2V7Zm9udC1zaXplOjEuMjVyZW19LnRhd2staWNvbi14bGFyZ2V7Zm9udC1zaXplOjEuNXJlbX0udGF3ay1pY29uLXh4bGFyZ2V7Zm9udC1zaXplOjJyZW19LnRhd2staWNvbi1sYXllcnMxOmJlZm9yZXtjb250ZW50OiJcZTkwMCJ9LnRhd2staWNvbi1iYW46YmVmb3Jle2NvbnRlbnQ6IlxlOTAxIn0udGF3ay1pY29uLWNoZWNrLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDIifS50YXdrLWljb24tY2xvc2UtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkwMyJ9LnRhd2staWNvbi1oZWxwLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDQifS50YXdrLWljb24tZGV0YWlsczpiZWZvcmV7Y29udGVudDoiXGU5MDUifS50YXdrLWljb24td2FybmluZy10cmlhbmdsZTpiZWZvcmV7Y29udGVudDoiXGU5MDYifS50YXdrLWljb24tc2F2ZTpiZWZvcmV7Y29udGVudDoiXGU5MDcifS50YXdrLWljb24tdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOTA4In0udGF3ay1pY29uLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOTA5In0udGF3ay1pY29uLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZTkwYSJ9LnRhd2staWNvbi1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU5MGIifS50YXdrLWljb24teDpiZWZvcmV7Y29udGVudDoiXGU5MGMifS50YXdrLWljb24tYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5MGQifS50YXdrLWljb24tYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTBlIn0udGF3ay1pY29uLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZTkwZiJ9LnRhd2staWNvbi1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZTkxMCJ9LnRhd2staWNvbi1tb3JlLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTkxMSJ9LnRhd2staWNvbi1tZW51OmJlZm9yZXtjb250ZW50OiJcZTkxMiJ9LnRhd2staWNvbi1ob21lOmJlZm9yZXtjb250ZW50OiJcZTkxMyJ9LnRhd2staWNvbi1pbmJveDpiZWZvcmV7Y29udGVudDoiXGU5MTQifS50YXdrLWljb24tY29udGFjdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTE1In0udGF3ay1pY29uLWFkZE9uczpiZWZvcmV7Y29udGVudDoiXGU5MTYifS50YXdrLWljb24ta25vd2xlZGdlLWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTE3In0udGF3ay1pY29uLXNldHRpbmdzOmJlZm9yZXtjb250ZW50OiJcZTkxOCJ9LnRhd2staWNvbi1tb25pdG9yaW5nOmJlZm9yZXtjb250ZW50OiJcZTkxOSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZTpiZWZvcmV7Y29udGVudDoiXGU5MWEifS50YXdrLWljb24tc2VhcmNoOmJlZm9yZXtjb250ZW50OiJcZTkxYiJ9LnRhd2staWNvbi1ncm91cC1pbmNvbWluZy1jaGF0czpiZWZvcmV7Y29udGVudDoiXGU5MWMifS50YXdrLWljb24tYXNzaWduZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTFkIn0udGF3ay1pY29uLWZpbHRlci1saW5lOmJlZm9yZXtjb250ZW50OiJcZTkxZSJ9LnRhd2staWNvbi1maWx0ZXItZnVubmVsOmJlZm9yZXtjb250ZW50OiJcZTkxZiJ9LnRhd2staWNvbi1ub3RpZmljYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTIwIn0udGF3ay1pY29uLWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTkyMSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZS13LWRvdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTIyIn0udGF3ay1pY29uLWNhbGw6YmVmb3Jle2NvbnRlbnQ6IlxlOTIzIn0udGF3ay1pY29uLWVudmVsb3BlOmJlZm9yZXtjb250ZW50OiJcZTkyNCJ9LnRhd2staWNvbi1kcmFmdDpiZWZvcmV7Y29udGVudDoiXGU5MjUifS50YXdrLWljb24tc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5MjYifS50YXdrLWljb24tc2VnbWVudDpiZWZvcmV7Y29udGVudDoiXGU5MjcifS50YXdrLWljb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkyOCJ9LnRhd2staWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTI5In0udGF3ay1pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTJhIn0udGF3ay1pY29uLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTJiIn0udGF3ay1pY29uLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGU5MmMifS50YXdrLWljb24tcG9wb3V0OmJlZm9yZXtjb250ZW50OiJcZTkyZCJ9LnRhd2staWNvbi1tZXJnZS1pbjpiZWZvcmV7Y29udGVudDoiXGU5MmUifS50YXdrLWljb24taW1wb3J0OmJlZm9yZXtjb250ZW50OiJcZTkyZiJ9LnRhd2staWNvbi1leHBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTMwIn0udGF3ay1pY29uLXRodW1icy11cDpiZWZvcmV7Y29udGVudDoiXGU5MzEifS50YXdrLWljb24tdGh1bWJzLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTMyIn0udGF3ay1pY29uLXNvcnQtYXNjZW5kaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzMyJ9LnRhd2staWNvbi1zb3J0LWRlc2NlbmRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlOTM0In0udGF3ay1pY29uLWNvbHVtbi1zZXR0aW5nczpiZWZvcmV7Y29udGVudDoiXGU5MzUifS50YXdrLWljb24tY2FsbC1pbmdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNiJ9LnRhd2staWNvbi1jYWxsLW91dGdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNyJ9LnRhd2staWNvbi11c2VyLWRldGFpbHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTM4In0udGF3ay1pY29uLXNob3J0Y3V0OmJlZm9yZXtjb250ZW50OiJcZTkzOSJ9LnRhd2staWNvbi1oaXN0b3J5OmJlZm9yZXtjb250ZW50OiJcZTkzYSJ9LnRhd2staWNvbi1zaG9wcGluZy1iYWc6YmVmb3Jle2NvbnRlbnQ6IlxlOTNiIn0udGF3ay1pY29uLXNob3BpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlOTNjIn0udGF3ay1pY29uLWdyb3VwLWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTNkIn0udGF3ay1pY29uLXRhZzpiZWZvcmV7Y29udGVudDoiXGU5M2UifS50YXdrLWljb24tdXNlcjpiZWZvcmV7Y29udGVudDoiXGU5M2YifS50YXdrLWljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQwIn0udGF3ay1pY29uLW5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQxIn0udGF3ay1pY29uLWVkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQyIn0udGF3ay1pY29uLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZTk0MyJ9LnRhd2staWNvbi1vcmdhbml6YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ0In0udGF3ay1pY29uLXRyYW5zY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQ1In0udGF3ay1pY29uLXByaW50OmJlZm9yZXtjb250ZW50OiJcZTk0NiJ9LnRhd2staWNvbi1leWUtaGlkZTpiZWZvcmV7Y29udGVudDoiXGU5NDcifS50YXdrLWljb24td2hpc3BlcjpiZWZvcmV7Y29udGVudDoiXGU5NDgifS50YXdrLWljb24tam9pbi1jb252ZXJzYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ5In0udGF3ay1pY29uLW1lc3NhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTRhIn0udGF3ay1pY29uLXRleHQtZm9ybWF0dGluZy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk0YiJ9LnRhd2staWNvbi10ZXh0LWZvcm1hdHRpbmctc2hvdzpiZWZvcmV7Y29udGVudDoiXGU5NGMifS50YXdrLWljb24tZW1vamk6YmVmb3Jle2NvbnRlbnQ6IlxlOTRkIn0udGF3ay1pY29uLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTRlIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb246YmVmb3Jle2NvbnRlbnQ6IlxlOTRmIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb2ZmOmJlZm9yZXtjb250ZW50OiJcZTk1MCJ9LnRhd2staWNvbi1zaGFyZS1zY3JlZW46YmVmb3Jle2NvbnRlbnQ6IlxlOTUxIn0udGF3ay1pY29uLXNlbmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUyIn0udGF3ay1pY29uLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUzIn0udGF3ay1pY29uLWl0YWxpY3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTU0In0udGF3ay1pY29uLXVuZGVybGluZTpiZWZvcmV7Y29udGVudDoiXGU5NTUifS50YXdrLWljb24tY2FwaXRhbGl6ZTpiZWZvcmV7Y29udGVudDoiXGU5NTYifS50YXdrLWljb24tZXllOmJlZm9yZXtjb250ZW50OiJcZTk1NyJ9LnRhd2staWNvbi1zdHJpa2V0aHJvdWdoOmJlZm9yZXtjb250ZW50OiJcZTk1OCJ9LnRhd2staWNvbi1idWxsZXQtcG9pbnRzOmJlZm9yZXtjb250ZW50OiJcZTk1OSJ9LnRhd2staWNvbi1saW5rOmJlZm9yZXtjb250ZW50OiJcZTk1YSJ9LnRhd2staWNvbi1hcmNoaXZlOmJlZm9yZXtjb250ZW50OiJcZTk1YiJ9LnRhd2staWNvbi11bnJlYWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVjIn0udGF3ay1pY29uLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZTk1ZCJ9LnRhd2staWNvbi1tb3ZlLXRvOmJlZm9yZXtjb250ZW50OiJcZTk1ZSJ9LnRhd2staWNvbi1mb3J3YXJkLWFzLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVmIn0udGF3ay1pY29uLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlOTYwIn0udGF3ay1pY29uLXVubG9jazpiZWZvcmV7Y29udGVudDoiXGU5NjEifS50YXdrLWljb24tcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOTYyIn0udGF3ay1pY29uLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGU5NjMifS50YXdrLWljb24tdGV4dC1hcmVhOmJlZm9yZXtjb250ZW50OiJcZTk2NCJ9LnRhd2staWNvbi1zaHVmZmxlOmJlZm9yZXtjb250ZW50OiJcZTk2NSJ9LnRhd2staWNvbi1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTY2In0udGF3ay1pY29uLWFkZC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTY3In0udGF3ay1pY29uLWNoYW5nZS1hc3NpZ25lZTpiZWZvcmV7Y29udGVudDoiXGU5NjgifS50YXdrLWljb24tZmxhZzpiZWZvcmV7Y29udGVudDoiXGU5NjkifS50YXdrLWljb24td2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZTk2YSJ9LnRhd2staWNvbi1yZWZyZXNoOmJlZm9yZXtjb250ZW50OiJcZTk2YiJ9LnRhd2staWNvbi1yZXBvcnRzOmJlZm9yZXtjb250ZW50OiJcZTk2YyJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTk2ZCJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU5NmUifS50YXdrLWljb24tZG91YmxlLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTZmIn0udGF3ay1pY29uLWRvdWJsZS1jaGV2cm9uLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTcwIn0udGF3ay1pY29uLWxvY2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk3MSJ9LnRhd2staWNvbi1hZGQtbm90ZTpiZWZvcmV7Y29udGVudDoiXGU5NzIifS50YXdrLWljb24tYWdlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTczIn0udGF3ay1pY29uLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTc0In0udGF3ay1pY29uLWN1c3RvbS1maWVsZDpiZWZvcmV7Y29udGVudDoiXGU5NzUifS50YXdrLWljb24tYnJvd3NlcjpiZWZvcmV7Y29udGVudDoiXGU5NzYifS50YXdrLWljb24tbWluZTpiZWZvcmV7Y29udGVudDoiXGU5NzcifS50YXdrLWljb24tYWxsOmJlZm9yZXtjb250ZW50OiJcZTk3OCJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk3OSJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1zaG93OmJlZm9yZXtjb250ZW50OiJcZTk3YSJ9LnRhd2staWNvbi1tZWdhcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTdiIn0udGF3ay1pY29uLW5hdmlnYXRlOmJlZm9yZXtjb250ZW50OiJcZTk3YyJ9LnRhd2staWNvbi1jYWxlbmRhcjpiZWZvcmV7Y29udGVudDoiXGU5N2QifS50YXdrLWljb24tY2FsZW5kYXItc2VlbjpiZWZvcmV7Y29udGVudDoiXGU5N2UifS50YXdrLWljb24td2ViLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOTdmIn0udGF3ay1pY29uLWlwLWFkZHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTgwIn0udGF3ay1pY29uLWNvbXB1dGVyOmJlZm9yZXtjb250ZW50OiJcZTk4MSJ9LnRhd2staWNvbi1kYXRhYmFzZTpiZWZvcmV7Y29udGVudDoiXGU5ODIifS50YXdrLWljb24td2ViLXBhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTgzIn0udGF3ay1pY29uLXdlYi12aWV3OmJlZm9yZXtjb250ZW50OiJcZTk4NCJ9LnRhd2staWNvbi13ZWItdGltZS1zcGVudDpiZWZvcmV7Y29udGVudDoiXGU5ODUifS50YXdrLWljb24tcmVzdG9yZTpiZWZvcmV7Y29udGVudDoiXGU5ODYifS50YXdrLWljb24tY29weTpiZWZvcmV7Y29udGVudDoiXGU5ODcifS50YXdrLWljb24tZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTg4In0udGF3ay1pY29uLXJlc2l6ZS1sZWZ0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTk4OSJ9LnRhd2staWNvbi1yZXNpemUtdXAtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5OGEifS50YXdrLWljb24tbWF4aW1pc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOThiIn0udGF3ay1pY29uLW1pbmltaXNlOmJlZm9yZXtjb250ZW50OiJcZTk4YyJ9LnRhd2staWNvbi1wdXJnZTpiZWZvcmV7Y29udGVudDoiXGU5OGQifS50YXdrLWljb24tY2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZTk4ZSJ9LnRhd2staWNvbi12aXNpdG9yOmJlZm9yZXtjb250ZW50OiJcZTk4ZiJ9LnRhd2staWNvbi1uZXctaGlyZTpiZWZvcmV7Y29udGVudDoiXGU5OTAifS50YXdrLWljb24tcGluOmJlZm9yZXtjb250ZW50OiJcZTk5MSJ9LnRhd2staWNvbi1sZWFkZXJib2FyZDpiZWZvcmV7Y29udGVudDoiXGU5OTIifS50YXdrLWljb24tc3RhcjpiZWZvcmV7Y29udGVudDoiXGU5OTMifS50YXdrLWljb24tdmlkZW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTQifS50YXdrLWljb24tYXVkaW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTUifS50YXdrLWljb24tY3N2LWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk2In0udGF3ay1pY29uLXBkZi1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5NyJ9LnRhd2staWNvbi1kb2MtZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTgifS50YXdrLWljb24tdGV4dC1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5OSJ9LnRhd2staWNvbi1nZW5lcmljLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlhIn0udGF3ay1pY29uLXNwbGl0LXZpZXctc2luZ2xlOmJlZm9yZXtjb250ZW50OiJcZTk5YiJ9LnRhd2staWNvbi1zcGxpdC12aWV3LWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGU5OWMifS50YXdrLWljb24tc3BsaXQtdmlldy10cmlwbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlkIn0udGF3ay1pY29uLXNwbGl0LXZpZXctcXVhZHJ1cGxlOmJlZm9yZXtjb250ZW50OiJcZTk5ZSJ9LnRhd2staWNvbi10aW1lbGluZTpiZWZvcmV7Y29udGVudDoiXGU5OWYifS50YXdrLWljb24tY29udGFjdC1hdHRyaWJ1dGVzOmJlZm9yZXtjb250ZW50OiJcZTlhMCJ9LnRhd2staWNvbi1jb252ZXJ0ZWQtdGlja2V0OmJlZm9yZXtjb250ZW50OiJcZTlhMSJ9LnRhd2staWNvbi10cmVuZC11cDpiZWZvcmV7Y29udGVudDoiXGU5YTIifS50YXdrLWljb24tdHJlbmQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5YTMifS50YXdrLWljb24tb25nb2luZy1jYWxsOmJlZm9yZXtjb250ZW50OiJcZTlhNCJ9LnRhd2staWNvbi1jYXRlZ29yeTpiZWZvcmV7Y29udGVudDoiXGU5YTUifS50YXdrLWljb24tYXJ0aWNsZTpiZWZvcmV7Y29udGVudDoiXGU5YTYifS50YXdrLWljb24tZHJhZy1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE3In0udGF3ay1pY29uLWNoaWxkLXRyZWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE4In0udGF3ay1pY29uLXRyYW5zbGF0ZTpiZWZvcmV7Y29udGVudDoiXGU5YTkifS50YXdrLWljb24tYnVsYjpiZWZvcmV7Y29udGVudDoiXGU5YWEifS50YXdrLWljb24tbWVyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWFiIn0udGF3ay1pY29uLXRodW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWFjIn0udGF3ay1pY29uLW92ZXJ2aWV3OmJlZm9yZXtjb250ZW50OiJcZTlhZCJ9LnRhd2staWNvbi11c2VyLW1hbmFnZW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWFlIn0udGF3ay1pY29uLWFnZW50LWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTlhZiJ9LnRhd2staWNvbi1wcm9wZXJ0eS1tZW1iZXJzOmJlZm9yZXtjb250ZW50OiJcZTliMCJ9LnRhd2staWNvbi1kZXBhcnRtZW50czpiZWZvcmV7Y29udGVudDoiXGU5YjEifS50YXdrLWljb24tdGFiOmJlZm9yZXtjb250ZW50OiJcZTliMiJ9LnRhd2staWNvbi1tYWlsLW5vdGlmaWNhdGlvbjpiZWZvcmV7Y29udGVudDoiXGU5YjMifS50YXdrLWljb24taW4tY2hhdC1wYXltZW50OmJlZm9yZXtjb250ZW50OiJcZTliNCJ9LnRhd2staWNvbi1oaXJlLWxpdmUtYWdlbnRzOmJlZm9yZXtjb250ZW50OiJcZTliNSJ9LnRhd2staWNvbi1oaXJlLXZpcnR1YWwtYXNzaXN0YW50OmJlZm9yZXtjb250ZW50OiJcZTliNiJ9LnRhd2staWNvbi1wYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI3In0udGF3ay1pY29uLXNob3BwaW5nLWNhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI4In0udGF3ay1pY29uLWNoYW5uZWxzOmJlZm9yZXtjb250ZW50OiJcZTliOSJ9LnRhd2staWNvbi1wYWdlOmJlZm9yZXtjb250ZW50OiJcZTliYSJ9LnRhd2staWNvbi1wYXltZW50LW1ldGhvZDpiZWZvcmV7Y29udGVudDoiXGU5YmIifS50YXdrLWljb24tYmlsbC1vdmVydmlldzpiZWZvcmV7Y29udGVudDoiXGU5YmMifS50YXdrLWljb24tbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWJkIn0udGF3ay1pY29uLWFjdGl2YXRlLXBob25lLW51bWJlcjpiZWZvcmV7Y29udGVudDoiXGU5YmUifS50YXdrLWljb24tbW9iaWxlLXBob25lOmJlZm9yZXtjb250ZW50OiJcZTliZiJ9LnRhd2staWNvbi1zdGF0dXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWMwIn0udGF3ay1pY29uLWJyb3dzZXItdGl0bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWMxIn0udGF3ay1pY29uLWdlbmVyYWwtZmlsbC11cDpiZWZvcmV7Y29udGVudDoiXGU5YzIifS50YXdrLWljb24tY2FyZC1sYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWMzIn0udGF3ay1pY29uLXZlcmlmaWVkOmJlZm9yZXtjb250ZW50OiJcZTljNCJ9LnRhd2staWNvbi1icmFpbnN0b3JtOmJlZm9yZXtjb250ZW50OiJcZTljNSJ9LnRhd2staWNvbi1jaGFuZ2UtdG9uZTpiZWZvcmV7Y29udGVudDoiXGU5YzYifS50YXdrLWljb24tZml4LWdyYW1tYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWM3In0udGF3ay1pY29uLWJ1bGxldC1wb29pbnRzLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGU5YzgifS50YXdrLWljb24tcmV3cml0ZTpiZWZvcmV7Y29udGVudDoiXGU5YzkifS50YXdrLWljb24tc2VudGVuY2UtZXhwYW5kOmJlZm9yZXtjb250ZW50OiJcZTljYSJ9LnRhd2staWNvbi1zaW1wbGlmeTpiZWZvcmV7Y29udGVudDoiXGU5Y2IifS50YXdrLWljb24tc3RlcC1ieS1zdGVwOmJlZm9yZXtjb250ZW50OiJcZTljYyJ9LnRhd2staWNvbi1zdW1tYXJpemU6YmVmb3Jle2NvbnRlbnQ6IlxlOWNkIn0udGF3ay1pY29uLXN1Z2dlc3QtcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOWNlIn0udGF3ay1pY29uLVdyaXRlLWFib3V0OmJlZm9yZXtjb250ZW50OiJcZTljZiJ9LnRhd2staWNvbi1haS1Bc3Npc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWQwIn0udGF3ay1pY29uLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOWQxIn0udGF3ay1pY29uLXNtYXJ0LXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZTlkMiJ9LnRhd2staWNvbi1jYWxsLWVuZDpiZWZvcmV7Y29udGVudDoiXGU5ZDMifS50YXdrLWljb24tc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ0In0udGF3ay1pY29uLXN0YXR1cy1jaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ1In0udGF3ay1pY29uLXJlY29ubmVjdDpiZWZvcmV7Y29udGVudDoiXGU5ZDYifS50YXdrLWljb24tZGlzY29ubmVjdGVkOmJlZm9yZXtjb250ZW50OiJcZTlkNyJ9LnRhd2staWNvbi1ub3Qtc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5ZDgifS50YXdrLWljb24tc2VhcmNoZXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ5In0udGF3ay1pY29uLWNoYXQtZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWRhIn0udGF3ay1pY29uLWNoYXQtdm9sdW1lOmJlZm9yZXtjb250ZW50OiJcZTlkYiJ9LnRhd2staWNvbi1taXNzZWQtY2hhdDpiZWZvcmV7Y29udGVudDoiXGU5ZGMifS50YXdrLWljb24tb2ZmbGluZS1tZXNzYWdlOmJlZm9yZXtjb250ZW50OiJcZTlkZCJ9LnRhd2staWNvbi1maXJzdC1yZXNwb25zZS10aW1lOmJlZm9yZXtjb250ZW50OiJcZTlkZSJ9LnRhd2staWNvbi10aWNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWRmIn0udGF3ay1pY29uLXRpY2tldC1zb2x2ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWUwIn0udGF3ay1pY29uLXRpY2tldC1yZW9wZW5lZDpiZWZvcmV7Y29udGVudDoiXGU5ZTEifS50YXdrLWljb24tdGlja2V0LXJlc29sdXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWUyIn0udGF3ay1pY29uLXRpY2tldC1zb3VyY2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWUzIn0udGF3ay1pY29uLXRpY2tldC12b2x1bWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU0In0udGF3ay1pY29uLXVzZXItc2F0aXNmYWN0aW9uOmJlZm9yZXtjb250ZW50OiJcZTllNSJ9LnRhd2staWNvbi1ncm91cC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU2In0udGF3ay1pY29uLXJlbW92ZS1icmFuZGluZzpiZWZvcmV7Y29udGVudDoiXGU5ZTcifS50YXdrLWljb24tY2FyZXQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWU4In0udGF3ay1pY29uLWNoYXQtd2lkZ2V0OmJlZm9yZXtjb250ZW50OiJcZTllOSJ9LnRhd2staWNvbi11bmxpbms6YmVmb3Jle2NvbnRlbnQ6IlxlOWVhIn0udGF3ay1pY29uLWF1ZGlvOmJlZm9yZXtjb250ZW50OiJcZTllYiJ9LnRhd2staWNvbi1hdWRpby1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxlOWVjIn0udGF3ay1pY29uLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlxlOWVkIn0udGF3ay1pY29uLWNoYXRib3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWVlIn0udGF3ay1pY29uLXVzZXJzOmJlZm9yZXtjb250ZW50OiJcZTllZiJ9LnRhd2staWNvbi11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWYwIn0udGF3ay1pY29uLWxvZy1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWYxIn0udGF3ay1pY29uLWNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWYyIn0udGF3ay1pY29uLWxheWVyczpiZWZvcmV7Y29udGVudDoiXGU5ZjMifS50YXdrLWljb24tY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5ZjQifS50YXdrLWljb24tY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5ZjUifS50YXdrLWljb24tY2FyZXQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWY2In0udGF3ay1pY29uLW11dGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY3In0udGF3ay1pY29uLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTlmOCJ9LnRhd2staWNvbi1wdXp6bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY5In0udGF3ay1pY29uLXZvbHVtZS11cDpiZWZvcmV7Y29udGVudDoiXGU5ZmEifS5wc3tvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O292ZXJmbG93LWFuY2hvcjpub25lOy1tcy1vdmVyZmxvdy1zdHlsZTpub25lO3RvdWNoLWFjdGlvbjphdXRvOy1tcy10b3VjaC1hY3Rpb246YXV0b30ucHNfX3JhaWwteHtoZWlnaHQ6MTVweDtib3R0b206MH0ucHNfX3JhaWwteCwucHNfX3JhaWwteXtkaXNwbGF5Om5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLG9wYWNpdHkgLjJzIGxpbmVhcjstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLG9wYWNpdHkgLjJzIGxpbmVhcjtwb3NpdGlvbjphYnNvbHV0ZX0ucHNfX3JhaWwteXt3aWR0aDoxNXB4O3JpZ2h0OjB9LnBzLS1hY3RpdmUteD4ucHNfX3JhaWwteCwucHMtLWFjdGl2ZS15Pi5wc19fcmFpbC15e2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ucHMtLWZvY3VzPi5wc19fcmFpbC14LC5wcy0tZm9jdXM+LnBzX19yYWlsLXksLnBzLS1zY3JvbGxpbmcteD4ucHNfX3JhaWwteCwucHMtLXNjcm9sbGluZy15Pi5wc19fcmFpbC15LC5wczpob3Zlcj4ucHNfX3JhaWwteCwucHM6aG92ZXI+LnBzX19yYWlsLXl7b3BhY2l0eTouNn0ucHMgLnBzX19yYWlsLXgucHMtLWNsaWNraW5nLC5wcyAucHNfX3JhaWwteDpmb2N1cywucHMgLnBzX19yYWlsLXg6aG92ZXIsLnBzIC5wc19fcmFpbC15LnBzLS1jbGlja2luZywucHMgLnBzX19yYWlsLXk6Zm9jdXMsLnBzIC5wc19fcmFpbC15OmhvdmVye2JhY2tncm91bmQtY29sb3I6I2VlZTtvcGFjaXR5Oi45fS5wc19fdGh1bWIteHt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGxpbmVhcixoZWlnaHQgLjJzIGVhc2UtaW4tb3V0Oy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsaGVpZ2h0IC4ycyBlYXNlLWluLW91dDtoZWlnaHQ6NnB4O2JvdHRvbToycHh9LnBzX190aHVtYi14LC5wc19fdGh1bWIteXtiYWNrZ3JvdW5kLWNvbG9yOiNhYWE7Ym9yZGVyLXJhZGl1czo2cHg7cG9zaXRpb246YWJzb2x1dGV9LnBzX190aHVtYi15e3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLHdpZHRoIC4ycyBlYXNlLWluLW91dDstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLHdpZHRoIC4ycyBlYXNlLWluLW91dDt3aWR0aDo2cHg7cmlnaHQ6MnB4fS5wc19fcmFpbC14LnBzLS1jbGlja2luZyAucHNfX3RodW1iLXgsLnBzX19yYWlsLXg6Zm9jdXM+LnBzX190aHVtYi14LC5wc19fcmFpbC14OmhvdmVyPi5wc19fdGh1bWIteHtiYWNrZ3JvdW5kLWNvbG9yOiM5OTk7aGVpZ2h0OjExcHh9LnBzX19yYWlsLXkucHMtLWNsaWNraW5nIC5wc19fdGh1bWIteSwucHNfX3JhaWwteTpmb2N1cz4ucHNfX3RodW1iLXksLnBzX19yYWlsLXk6aG92ZXI+LnBzX190aHVtYi15e2JhY2tncm91bmQtY29sb3I6Izk5OTt3aWR0aDoxMXB4fUBzdXBwb3J0cyAoLW1zLW92ZXJmbG93LXN0eWxlOm5vbmUpey5wc3tvdmVyZmxvdzphdXRvIWltcG9ydGFudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDpub25lKSxzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey5wc3tvdmVyZmxvdzphdXRvIWltcG9ydGFudH19LnBzX19yYWlsLXl7bGVmdDphdXRvIWltcG9ydGFudDtyaWdodDowIWltcG9ydGFudDt6LWluZGV4OjI7YmFja2dyb3VuZDp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7b3BhY2l0eToxIWltcG9ydGFudH0ucHNfX3JhaWwteSAucHNfX3RodW1iLXl7d2lkdGg6NXB4IWltcG9ydGFudDtiYWNrZ3JvdW5kOiM5MjkyOWUhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnBzX19yYWlsLXl7bGVmdDowIWltcG9ydGFudDtyaWdodDphdXRvIWltcG9ydGFudDt3aWR0aDo1cHghaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnBzX19yYWlsLXkgLnBzX190aHVtYi15e2xlZnQ6MnB4IWltcG9ydGFudDtyaWdodDphdXRvIWltcG9ydGFudH0udGF3ay1lbW9qaS1waWNrZXJ7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTkuODc1cmVtO2JvcmRlcjoxcHggc29saWQgIzU0NTQ1NDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZmZmO3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLWVtb2ppLWxvYWRpbmd7d2lkdGg6MmVtO2hlaWdodDoyZW07cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTttYXJnaW46YXV0bztib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1sZWZ0LWNvbG9yOiMzMzM7YW5pbWF0aW9uOnJvdGF0ZUNpcmNsZUxvYWRlciAxLjFzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHJvdGF0ZUNpcmNsZUxvYWRlcnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0udGF3ay1lbW9qaS1ncm91cHtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNTQ1NDU0fS50YXdrLWVtb2ppLWdyb3VwLXRhYntwYWRkaW5nOi42cmVtfS50YXdrLWVtb2ppLWdyb3VwLXRhYjpob3ZlcntjdXJzb3I6cG9pbnRlcn0udGF3ay1lbW9qaS1ncm91cC10YWItYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLWVtb2ppLWdyb3VwLXRhYi1hY3RpdmU6YWZ0ZXJ7Y29udGVudDoiIjtiYWNrZ3JvdW5kOiMwM2E4NGU7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0Oi4xMjVyZW07d2lkdGg6ODAlO21hcmdpbjphdXRvO2xlZnQ6MDtyaWdodDowO3RvcDoxMDAlfS50YXdrLWVtb2ppLWdyb3VwLXRhYiBpbWd7d2lkdGg6MS4xMjVyZW07ZmlsbDojMDNhODRlfS50YXdrLWVtb2ppLXNlYXJjaC1jb250YWluZXJ7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MXJlbSAuNXJlbX0udGF3ay1lbW9qaS1zdGlja3ktaGVhZGVye3BhZGRpbmc6MCAuNXJlbX0udGF3ay1lbW9qaS1oZWFkZXIsLnRhd2stZW1vamktc3RpY2t5LWhlYWRlcnttYXJnaW46MDtmb250OjQwMCAuODEycmVtIExhdG8sc2Fucy1zZXJpZjtjb2xvcjojMTIxMjEyfS50YXdrLWVtb2ppLXNjcm9sbHtoZWlnaHQ6Ni43NXJlbTtwYWRkaW5nOjAgLjVyZW07cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6c2Nyb2xsfS50YXdrLWVtb2ppLXByZXZpZXd7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDozLjEyNXJlbTtiYWNrZ3JvdW5kOiNmYWZhZmE7cGFkZGluZzouNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEwcHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MTBweH0udGF3ay1lbW9qaS1wcmV2aWV3LWltYWdle2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXgtd2lkdGg6MTUlO2hlaWdodDoxMDAlfS50YXdrLWVtb2ppLXByZXZpZXctaW1hZ2UgaW1ne21heC13aWR0aDoxLjg3NXJlbX0udGF3ay1lbW9qaS1wcmV2aWV3LW5hbWV7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO2ZvbnQ6NjAwIC44MTJyZW0gTGF0byxzYW5zLXNlcmlmO21heC13aWR0aDoxNC4zNzVyZW07b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnRhd2stZW1vamktcHJldmlldy1zaG9ydG5hbWV7Zm9udDo2MDAgLjc1cmVtIExhdG8sc2Fucy1zZXJpZn0udGF3ay1lbW9qaXttYXJnaW46LjM3NXJlbSAuNXJlbTtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2JvcmRlci1yYWRpdXM6MTBweH0udGF3ay1lbW9qaTpob3ZlcntjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kOiMwM2E4NGV9LnRhd2stZW1vamk6Zm9jdXN7b3V0bGluZToxcHggc29saWQgIzA2Zn0udGF3ay1lbW9qaXtoZWlnaHQ6MS41cmVtO21heC1oZWlnaHQ6MS41cmVtO3dpZHRoOjEuNXJlbTttYXgtd2lkdGg6MS41cmVtfS50YXdrLWVtb2ppIGltZ3ttYXgtd2lkdGg6MS41cmVtO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50YXdrLWF2YXRhcntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6M3JlbTt3aWR0aDozcmVtO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjIuNzVyZW07dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZWZlZmVmO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjE1cHg7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OmhpZGRlbn0udGF3ay1hdmF0YXIudGF3ay1hdmF0YXItY291bnR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1hdmF0YXIgLnRhd2stYXZhdGFyLWltYWdle2xpbmUtaGVpZ2h0OjB9LnRhd2stYXZhdGFyIC50YXdrLWF2YXRhci1pbWFnZT5pbWd7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTstby1vYmplY3QtZml0OmNvdmVyO29iamVjdC1maXQ6Y292ZXI7LW8tb2JqZWN0LXBvc2l0aW9uOmNlbnRlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyfS50YXdrLWF2YXRhci14c21hbGx7aGVpZ2h0OjJyZW07d2lkdGg6MnJlbTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNzVyZW19LnRhd2stYXZhdGFyLXNtYWxse2hlaWdodDoyLjVyZW07d2lkdGg6Mi41cmVtO2ZvbnQtc2l6ZTouODEycmVtO2xpbmUtaGVpZ2h0OjIuMjVyZW19LnRhd2stYXZhdGFyLW1lZGl1bXtoZWlnaHQ6My41cmVtO3dpZHRoOjMuNXJlbTtmb250LXNpemU6LjkzN3JlbTtsaW5lLWhlaWdodDozLjI1cmVtfS50YXdrLWF2YXRhci1sYXJnZXtoZWlnaHQ6NHJlbTt3aWR0aDo0cmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjMuNzVyZW19LnRhd2staW1hZ2V7bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWltYWdlLWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50YXdrLWltYWdlLXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnRhd2staW1hZ2UtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50YXdrLWltYWdlLWxvYWRlciwudGF3ay1pbWFnZS1sb2FkZXI6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7d2lkdGg6MS4yNXJlbTtoZWlnaHQ6MS4yNXJlbX0udGF3ay1pbWFnZS1sb2FkZXJ7bWFyZ2luOjEuMjVyZW0gYXV0bztmb250LXNpemU6LjYyNXJlbTtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWluZGVudDotOTk5OXJlbTtib3JkZXI6NXB4IHNvbGlkICMyMTIxMjE7Ym9yZGVyLWxlZnQtY29sb3I6IzU0NTQ1NDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTthbmltYXRpb246bG9hZDggMS4xcyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBsb2FkOHswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0udGF3ay1idXR0b257bWFyZ2luOjA7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2ZvbnQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O3RleHQtdHJhbnNmb3JtOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6LjZyZW0gMXJlbTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Zm9udC1zaXplOjFyZW07Ym9yZGVyOjFweCBzb2xpZCAjMDNhODRlO2JvcmRlci1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtsaW5lLWhlaWdodDoxLjVyZW07dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMDNhODRlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay1idXR0b246bm90KC50YXdrLWJ1dHRvbi10ZXh0KXtib3gtc2hhZG93OjAgNHB4IDRweCAwIGhzbGEoMCwwJSw1MSUsLjA4KX0udGF3ay1idXR0b246bm90KDpkaXNhYmxlZCl7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stYnV0dG9uOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi43fS50YXdrLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9LnRhd2stYnV0dG9uOmhvdmVyLGEudGF3ay1idXR0b246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YS50YXdrLWJ1dHRvbjpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWJ1dHRvbjpmb2N1cy12aXNpYmxle2JvcmRlcjoxcHggc29saWQgIzA2Zjtib3gtc2hhZG93OjAgMCAwIDFweCByZ2JhKDAsMTAyLDI1NSwuNCl9LnRhd2stYnV0dG9uOmFjdGl2ZSwudGF3ay1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50YXdrLWJ1dHRvbi1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtjb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzAzYTg0ZX0udGF3ay1idXR0b24tZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2YwNTA1Yztjb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2YwNTA1Y30udGF3ay1idXR0b24tb3V0bGluZSxhLnRhd2stYnV0dG9uLW91dGxpbmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtib3JkZXItY29sb3I6IzAzYTg0ZTtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stYnV0dG9uLW91dGxpbmU6aG92ZXJ7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1idXR0b24tb3V0bGluZS1zdWNjZXNze2NvbG9yOiMwM2E4NGU7Ym9yZGVyOjEuNXB4IHNvbGlkICMwM2E4NGV9LnRhd2stYnV0dG9uLW91dGxpbmUtZGFuZ2Vye2NvbG9yOiNmMDUwNWM7Ym9yZGVyOjEuNXB4IHNvbGlkICNmMDUwNWN9LnRhd2stYnV0dG9uLWRhc2hlZHtib3JkZXItc3R5bGU6ZGFzaGVkO2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMDNhODRlO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLWJ1dHRvbi1zbWFsbHtwYWRkaW5nOi4yNXJlbSAxcmVtO2xpbmUtaGVpZ2h0OjEuNXJlbTtmb250LXNpemU6LjgxMnJlbX0udGF3ay1idXR0b24tbGFyZ2V7cGFkZGluZzoxcmVtIDJyZW07bGluZS1oZWlnaHQ6MS41cmVtO2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWJ1dHRvbi1yb3VuZGVke2JvcmRlci1yYWRpdXM6Mi41cmVtfS50YXdrLWJ1dHRvbi1zbWFsbC50YXdrLWJ1dHRvbi1yb3VuZGVke2JvcmRlci1yYWRpdXM6MS44NzVyZW19LnRhd2stYnV0dG9uLWxhcmdlLnRhd2stYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoyLjVyZW19LnRhd2stYnV0dG9uLXRleHR7cGFkZGluZzowO2xpbmUtaGVpZ2h0OjEuNjE4O2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZX0udGF3ay1idXR0b24tdGV4dCwudGF3ay1idXR0b24tdGV4dDpmb2N1cy12aXNpYmxlLC50YXdrLWJ1dHRvbi10ZXh0OmhvdmVye2NvbG9yOiMwM2E4NGU7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stYnV0dG9uLXRleHQ6YWN0aXZlLC50YXdrLWJ1dHRvbi10ZXh0OmZvY3VzLXZpc2libGV7b3V0bGluZTowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0udGF3ay1idXR0b24tdGV4dDpkaXNhYmxlZHtjb2xvcjojMjEyMTIxIWltcG9ydGFudDtjdXJzb3I6bm90LWFsbG93ZWQ7b3V0bGluZTpub25lfS50YXdrLWJ1dHRvbi1ncm91cHtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtwb3NpdGlvbjpyZWxhdGl2ZX0udGF3ay1idXR0b24tY2lyY2xle2hlaWdodDoyLjVyZW07d2lkdGg6Mi41cmVtO2xpbmUtaGVpZ2h0OjIuNXJlbTtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czoxMDAlfS50YXdrLWJ1dHRvbi1jaXJjbGUudGF3ay1idXR0b24tc21hbGx7aGVpZ2h0OjEuNjI1cmVtO3dpZHRoOjEuNjI1cmVtO2xpbmUtaGVpZ2h0OjEuNjI1cmVtfS50YXdrLWJ1dHRvbi1jaXJjbGUudGF3ay1idXR0b24tbGFyZ2V7aGVpZ2h0OjMuNzVyZW07d2lkdGg6My43NXJlbTtsaW5lLWhlaWdodDozLjc1cmVtfS50YXdrLWJ1dHRvbi1kYXNoZWQgLnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2UsLnRhd2stYnV0dG9uLW91dGxpbmUgLnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2V7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stYnV0dG9uLXRleHQudGF3ay1idXR0b24tY29sb3ItaW52ZXJzZSwudGF3ay1idXR0b24tdGV4dC50YXdrLWJ1dHRvbi1jb2xvci1pbnZlcnNlOmZvY3VzLC50YXdrLWJ1dHRvbi10ZXh0LnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2U6aG92ZXJ7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay10b29sdGlwOmhvdmVyIC50YXdrLXRvb2x0aXAtaG92ZXJ7b3BhY2l0eToxO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgbGluZWFyIC41c30udGF3ay10b29sdGlwIC50YXdrLXRvb2x0aXAtaG92ZXJ7cG9zaXRpb246Zml4ZWQ7bWFyZ2luLXRvcDo4cHg7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6NXB4O2JhY2tncm91bmQ6IzEyMTIxMjtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZTouNzVyZW07cmlnaHQ6MDtsZWZ0OmF1dG87b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAwcyBsaW5lYXI7ei1pbmRleDoyfS50YXdrLXRvb2x0aXAgLnRhd2stdG9vbHRpcC1ob3ZlciAudGF3ay10b29sdGlwLWFycm93e3RvcDotMTZweDtkaXNwbGF5OmJsb2NrO2xlZnQ6NTAlO2JvcmRlcjo4cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMTIxMjEyO3Bvc2l0aW9uOmFic29sdXRlfS50YXdrLXRvb2x0aXAgLnRhd2stdG9vbHRpcC1ob3Zlci5ib3R0b20gLnRhd2stdG9vbHRpcC1hcnJvd3tib3JkZXItY29sb3I6IzEyMTIxMiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtib3R0b206LTE2cHg7dG9wOmF1dG99YWJicixhZGRyZXNzLGFydGljbGUsYXNpZGUsYXVkaW8sYixibG9ja3F1b3RlLGJvZHksY2FudmFzLGNhcHRpb24sY2l0ZSxjb2RlLGRkLGRlbCxkZXRhaWxzLGRmbixkaXYsZGwsZHQsZW0sZmllbGRzZXQsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGZvcm0saDEsaDIsaDMsaDQsaDUsaDYsaGVhZGVyLGhncm91cCxodG1sLGksaWZyYW1lLGltZyxpbnMsa2JkLGxhYmVsLGxlZ2VuZCxsaSxtYXJrLG1lbnUsbmF2LG9iamVjdCxvbCxwLHByZSxxLHNhbXAsc2VjdGlvbixzbWFsbCxzcGFuLHN0cm9uZyxzdWIsc3VtbWFyeSxzdXAsdGFibGUsdGJvZHksdGQsdGZvb3QsdGgsdGhlYWQsdGltZSx0cix1bCx2YXIsdmlkZW97bWFyZ2luOjA7cGFkZGluZzowO2JvcmRlcjowO291dGxpbmU6MDtmb250LXNpemU6MTAwJTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dvcmQtYnJlYWs6YnJlYWstd29yZH1ib2R5e2xpbmUtaGVpZ2h0OjF9Ym9keS5mb250LWxhdG97Zm9udC1mYW1pbHk6TGF0byxPcGVuIFNhbnMsc2Fucy1zZXJpZiFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bHtkaXJlY3Rpb246cnRsO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6MTAyNHB4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjIycHghaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo0ODFweCkgYW5kIChtYXgtd2lkdGg6NzY3cHgpe2JvZHkudGF3ay1tb2JpbGUsaHRtbC50YXdrLW1vYmlsZXtmb250LXNpemU6MThweCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjQ4MHB4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjE4cHghaW1wb3J0YW50fX0qe2ZvbnQtZmFtaWx5OmluaGVyaXR9YXJ0aWNsZSxhc2lkZSxkZXRhaWxzLGZpZ2NhcHRpb24sZmlndXJlLGZvb3RlcixoZWFkZXIsaGdyb3VwLG1lbnUsbmF2LHNlY3Rpb257ZGlzcGxheTpibG9ja31uYXYgdWx7bGlzdC1zdHlsZTpub25lfWJsb2NrcXVvdGUscXtxdW90ZXM6bm9uZX1ibG9ja3F1b3RlOmFmdGVyLGJsb2NrcXVvdGU6YmVmb3JlLHE6YWZ0ZXIscTpiZWZvcmV7Y29udGVudDoiIjtjb250ZW50Om5vbmV9YXttYXJnaW46MDtwYWRkaW5nOjA7Zm9udC1zaXplOjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1pbnN7dGV4dC1kZWNvcmF0aW9uOm5vbmV9aW5zLG1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmY5O2NvbG9yOiMwMDB9bWFya3tmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDo3MDB9ZGVse3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2h9YWJiclt0aXRsZV0sZGZuW3RpdGxlXXtib3JkZXItYm90dG9tOjFweCBkb3R0ZWQ7Y3Vyc29yOmhlbHB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9aHJ7ZGlzcGxheTpibG9jaztoZWlnaHQ6MXB4O2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkICNjY2M7bWFyZ2luOjFlbSAwO3BhZGRpbmc6MH1pbnB1dCxzZWxlY3R7dmVydGljYWwtYWxpZ246bWlkZGxlfWJvZHksaHRtbHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7bGluZS1oZWlnaHQ6MTtwb3NpdGlvbjpyZWxhdGl2ZTtmb250OjQwMCAxNnB4IEhlbHZldGljYSxzYW5zLXNlcmlmIWltcG9ydGFudH1ib2R5LmZvbnQtbGF0byxodG1sLmZvbnQtbGF0b3tmb250OjQwMCAxNnB4IExhdG8sc2Fucy1zZXJpZiFpbXBvcnRhbnR9LmNsZWFye2NsZWFyOmJvdGh9LmNsZWFyZml4OmFmdGVye3Zpc2liaWxpdHk6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjA7Y29udGVudDoiICI7Y2xlYXI6Ym90aDtoZWlnaHQ6MH0uY2xlYXJmaXh7ZGlzcGxheTppbmxpbmUtYmxvY2t9KiBodG1sIC5jbGVhcmZpeHtoZWlnaHQ6MSV9LmNsZWFyZml4e2Rpc3BsYXk6YmxvY2t9QGZvbnQtZmFjZXtmb250LWZhbWlseTp0YXdrLWZvbnQtaWNvbjtzcmM6dXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy53b2ZmPzU1NzU1NzI4PSkgZm9ybWF0KCJ3b2ZmIiksdXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy50dGY/NTU3NTU3Mjg9KSBmb3JtYXQoInRydWV0eXBlIiksdXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy5zdmc/NTU3NTU3Mjg9I3Rhd2stZm9udC1pY29uKSBmb3JtYXQoInN2ZyIpO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0eWxlOm5vcm1hbDtmb250LWRpc3BsYXk6c3dhcH1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OnRhd2staWNvbjtzcmM6dXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy53b2ZmPzU1NzU1NzI4PSkgZm9ybWF0KCJ3b2ZmIiksdXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy50dGY/NTU3NTU3Mjg9KSBmb3JtYXQoInRydWV0eXBlIiksdXJsKGh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMvZm9udHMvdGF3ay1mb250LWljb24tMy5zdmc/NTU3NTU3Mjg9I3Rhd2stZm9udC1pY29uKSBmb3JtYXQoInN2ZyIpO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0eWxlOm5vcm1hbH0udGF3ay1pY29ue2ZvbnQtZmFtaWx5OnRhd2staWNvbiFpbXBvcnRhbnR9LnRhd2stY2FsbHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjkwMDA7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZC1jb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6NjBweCAyMHB4O2JvcmRlcjoxcHggc29saWQgI2ZhZmFmYTtib3JkZXItcmFkaXVzOjVweH0udGF3ay1jYWxsLWhlYWRlcnstbXMtZmxleDoyO2ZsZXg6Mn0udGF3ay1jYWxsLWZvb3RlcnstbXMtZmxleDoxO2ZsZXg6MX0udGF3ay1jYWxsLWFjY2VwdHt3aWR0aDoxMDAlfS50YXdrLWNhbGwtZGVjbGluZXt3aWR0aDo4MCV9LnRhd2stbWVzc2FnZS1wcmV2aWV3e21hcmdpbi10b3A6LTRweDtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MTAwJTtvdmVyZmxvdzp2aXNpYmxlfS50YXdrLWNoYXQtYnViYmxlLnRhd2stbWVzc2FnZS1wcmV2aWV3LWNoYXQtYnViYmxle3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOmluaXRpYWx9LnRhd2stbWVzc2FnZS1wcmV2aWV3LWNvbnRlbnR7d2lkdGg6Y2FsYygxMDAlIC0gMnB4KTttYXJnaW4tbGVmdDoxcHh9LnRhd2stbWVzc2FnZS1wcmV2aWV3LWNvbnRlbnQgLnRhd2stbWVzc2FnZS1ib3h7bWFyZ2luLWJvdHRvbToxNXB4fS50YXdrLW1lc3NhZ2UtcHJldmlldy1jb250ZW50IC50YXdrLW1lc3NhZ2UtYm94Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbToxcHh9LnRhd2stbWVzc2FnZS1wcmV2aWV3LWNvbnRlbnQgLnRhd2stbWVzc2FnZXt3aWR0aDpjYWxjKDEwMCUgLSAzLjNyZW0pO2JhY2tncm91bmQtY29sb3I6I2ZmZn0udGF3ay1tZXNzYWdlLXByZXZpZXctY29udGVudCAudGF3ay1tZXNzYWdlLnRhd2stc3VydmV5e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6aW5pdGlhbH0udGF3ay1tZXNzYWdlLXByZXZpZXctY29udGVudCAudGF3ay1hdmF0YXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmfS50YXdrLW1lc3NhZ2UtY29udGFpbmVye292ZXJmbG93OmF1dG99LnRhd2stY2hhdGlucHV0e3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206MH0udGF3ay1jaGF0aW5wdXQtY29udGFpbmVye3dpZHRoOmNhbGMoMTAwJSAtIDMuM3JlbSk7cGFkZGluZzoxcmVtO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OjJweDttYXJnaW4tdG9wOjE1cHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2ZhZmFmYTtib3JkZXItcmFkaXVzOjVweH0udGF3ay1jaGF0aW5wdXQtY29udGFpbmVyLmhhcy1kcmFnb3ZlcnttaW4taGVpZ2h0OjEwMHB4fWJvZHkudGF3ay1ydGwgLnRhd2stY2hhdGlucHV0LWNvbnRhaW5lcnttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OmF1dG99LnRhd2stbWVzc2FnZS1wcmV2aWV3LWNsb3Nle2hlaWdodDoyNXB4O3dpZHRoOjI1cHg7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206MXJlbTtwYWRkaW5nOjA7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2JvcmRlcjoxcHggc29saWQgI2ZmZn1ib2R5LnRhd2stcnRsIC50YXdrLW1lc3NhZ2UtcHJldmlldy1jbG9zZXttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDphdXRvfS50YXdrLWhhcy1hdmF0YXI6YWZ0ZXIsLnRhd2staGFzLWF2YXRhcjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMDAlO2JvdHRvbToxMHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7aGVpZ2h0OjA7d2lkdGg6MDtib3JkZXI6c29saWQgdHJhbnNwYXJlbnR9LnRhd2staGFzLWF2YXRhcjphZnRlcntib3R0b206MTNweDtib3JkZXItd2lkdGg6N3B4O2JvcmRlci1yaWdodC1jb2xvcjojZmZmfS50YXdrLWhhcy1hdmF0YXI6YmVmb3Jle2JvcmRlci13aWR0aDoxMHB4O2JvcmRlci1yaWdodC1jb2xvcjojZmZmfS50YXdrLXJ0bCAudGF3ay1oYXMtYXZhdGFyOmFmdGVyLC50YXdrLXJ0bCAudGF3ay1oYXMtYXZhdGFyOmJlZm9yZXtsZWZ0OjEwMCU7cmlnaHQ6dW5zZXR9LnRhd2stcnRsIC50YXdrLWhhcy1hdmF0YXI6YWZ0ZXJ7Ym9yZGVyLWxlZnQtY29sb3I6I2ZmZn0udGF3ay1ydGwgLnRhd2staGFzLWF2YXRhcjpiZWZvcmV7Ym9yZGVyLWxlZnQtY29sb3I6I2ZmZjtib3JkZXItcmlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LmVtb2ppb25le3ZlcnRpY2FsLWFsaWduOnRleHQtYm90dG9tO2hlaWdodDoxcmVtO21pbi13aWR0aDphdXRvO21pbi1oZWlnaHQ6YXV0b30uZW1vamlvbmx5IC5lbW9qaW9uZXtoZWlnaHQ6NC41ZXghaW1wb3J0YW50O3dpZHRoOmF1dG99dmlkZW97Ym9yZGVyLXJhZGl1czo1cHh9LnRhd2stZHJhZ292ZXItY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Zm9udC1zaXplOjE4cHg7Y29sb3I6IzEyMTIxMjtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC44KTtib3JkZXItcmFkaXVzOjVweH0udGF3ay1jYWxsLWNvbnRhaW5lcntoZWlnaHQ6YXV0byFpbXBvcnRhbnR9LnRhd2stY2FsbC1jYXJke2hlaWdodDoxODBweH0udGF3ay1jYWxsLWNhcmQgLnRhd2stY2FsbHtwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nOjIwcHh9LnRhd2stY2FsbC1jYXJkLnRhd2stbWVzc2FnZS1ib3h7bWFyZ2luLWJvdHRvbToxcHghaW1wb3J0YW50fS5saXN0LWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAxcyBsaW5lYXI7dHJhbnNpdGlvbi1kZWxheTouM3N9Lmxpc3QtZW50ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMjBweCk7b3BhY2l0eTowfS5saXN0LWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZS1pbn0ubGlzdC1sZWF2ZS10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjBweCk7b3BhY2l0eTowfS50YXdrLW1lc3NhZ2UtcHJldmlldyAudGF3ay1saW5re2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0udGF3ay1jaGF0aW5wdXQgLnRhd2stY2hhdGlucHV0LWVkaXRvcntjb2xvcjojMzMzfS50YXdrLXN1cnZleXtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0udGF3ay1zdXJ2ZXktb3B0aW9ue2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDplbmR9LnRhd2stc3VydmV5IC50YXdrLXN1cnZleS1vcHRpb257bWFyZ2luLWJvdHRvbTouNXJlbX0udGF3ay1zdXJ2ZXkgLnRhd2stc3VydmV5LW9wdGlvbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0udGF3ay1zdXJ2ZXktb3B0aW9uIC50YXdrLWJ1dHRvbntmb250LXNpemU6Ljg3NXJlbSFpbXBvcnRhbnQ7cGFkZGluZzouM3JlbSAxcmVtO2JvcmRlcjoxcHggc29saWQgdmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOiMxMjEyMTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1zdXJ2ZXktb3B0aW9uIC50YXdrLWJ1dHRvbjpob3Zlcntib3JkZXI6MXB4IHNvbGlkIHZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6IzU0NTQ1NDtjb2xvcjojMjQyNDI0O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnNsaWRlLWZhZGUtZW50ZXItYWN0aXZle3RyYW5zaXRpb246YWxsIC4ycyBlYXNlfS5zbGlkZS1mYWRlLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKDEsLjUsLjgsMSk7cG9zaXRpb246YWJzb2x1dGV9LnNsaWRlLWZhZGUtZW50ZXIsLnNsaWRlLWZhZGUtbGVhdmUtdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpO29wYWNpdHk6MH0uZmFkZS1lbnRlci1hY3RpdmUsLmZhZGUtbGVhdmUtYWN0aXZle3RyYW5zaXRpb246b3BhY2l0eSAuNXN9LmZhZGUtZW50ZXIsLmZhZGUtbGVhdmUtdG97b3BhY2l0eTowfS50YXdrLWZhZGVJbntvcGFjaXR5OjE7YW5pbWF0aW9uLW5hbWU6ZmFkZUluO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLWR1cmF0aW9uOjFzfUBrZXlmcmFtZXMgZmFkZUluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fQoKLyojIHNvdXJjZU1hcHBpbmdVUkw9bWVzc2FnZS1wcmV2aWV3LmNzcy5tYXAqLw=="}},"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":"profx.io/assets/global/css/line-awesome.min.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.622Z","timestamp":1785143153622,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/line-awesome.min.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"15e82-67b374e4-1f3f42a53f4189c6;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 15100\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":89730,"size_decoded":15542,"mime_type":"text/css","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"3ee291cb1d671da28325cbf3c0cfd80c","sha1":"e17a96acd4209fd62cd8a557f9f34239e4e36432","sha256":"f8d2b3fec465d6efe63660fa72a04f7dbe7364e47f4061d2627c187f36c046bf","sha512":"134238ec157a197b7e2987473512ab93d6189a277ddefe51417a10aca8cf74390901de8456aaba278a7cac5a5359f7bad8dcc1b940e66d87d6c325d3c53b0851","ssdeep":"768:1b+0d/C5eXnu2nnY8G3104xUse1LN9abc4VNRvTdgBngf79IcjJv5IopdUN:1b+754u2nOW4xUse1exx7HD9hUN","tlshash":"be938abbd52d69c4b321c847bf4133b92886f56daaa20d50f28f544cacc269612e4f7d","first_seen":"2023-04-18T19:56:15Z","last_seen":"2026-08-02T15:07:05.587262Z","times_seen":1052,"resource_available":false,"data":"LmxhLC5sYWIsLmxhZCwubGFsLC5sYXIsLmxhc3stbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO3RleHQtcmVuZGVyaW5nOmF1dG87bGluZS1oZWlnaHQ6MX0ubGEtbGd7Zm9udC1zaXplOjEuMzMzMzNlbTtsaW5lLWhlaWdodDouNzVlbTt2ZXJ0aWNhbC1hbGlnbjotLjA2NjdlbX0ubGEteHN7Zm9udC1zaXplOi43NWVtfS5sYS1zbXtmb250LXNpemU6Ljg3NWVtfS5sYS0xeHtmb250LXNpemU6MWVtfS5sYS0yeHtmb250LXNpemU6MmVtfS5sYS0zeHtmb250LXNpemU6M2VtfS5sYS00eHtmb250LXNpemU6NGVtfS5sYS01eHtmb250LXNpemU6NWVtfS5sYS02eHtmb250LXNpemU6NmVtfS5sYS03eHtmb250LXNpemU6N2VtfS5sYS04eHtmb250LXNpemU6OGVtfS5sYS05eHtmb250LXNpemU6OWVtfS5sYS0xMHh7Zm9udC1zaXplOjEwZW19LmxhLWZ3e3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEuMjVlbX0ubGEtdWx7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luLWxlZnQ6Mi41ZW07cGFkZGluZy1sZWZ0OjB9LmxhLXVsPmxpe3Bvc2l0aW9uOnJlbGF0aXZlfS5sYS1saXtsZWZ0Oi0yZW07cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MmVtO2xpbmUtaGVpZ2h0OmluaGVyaXR9LmxhLWJvcmRlcntib3JkZXI6c29saWQgLjA4ZW0gI2VlZTtib3JkZXItcmFkaXVzOi4xZW07cGFkZGluZzouMmVtIC4yNWVtIC4xNWVtfS5sYS1wdWxsLWxlZnR7ZmxvYXQ6bGVmdH0ubGEtcHVsbC1yaWdodHtmbG9hdDpyaWdodH0ubGEubGEtcHVsbC1sZWZ0LC5sYWIubGEtcHVsbC1sZWZ0LC5sYWwubGEtcHVsbC1sZWZ0LC5sYXIubGEtcHVsbC1sZWZ0LC5sYXMubGEtcHVsbC1sZWZ0e21hcmdpbi1yaWdodDouM2VtfS5sYS5sYS1wdWxsLXJpZ2h0LC5sYWIubGEtcHVsbC1yaWdodCwubGFsLmxhLXB1bGwtcmlnaHQsLmxhci5sYS1wdWxsLXJpZ2h0LC5sYXMubGEtcHVsbC1yaWdodHttYXJnaW4tbGVmdDouM2VtfS5sYS1zcGluey13ZWJraXQtYW5pbWF0aW9uOmxhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO2FuaW1hdGlvbjpsYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcn0ubGEtcHVsc2V7LXdlYmtpdC1hbmltYXRpb246bGEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTthbmltYXRpb246bGEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KX1ALXdlYmtpdC1rZXlmcmFtZXMgbGEtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMCk7dHJhbnNmb3JtOnJvdGF0ZSgwKX0xMDAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBsYS1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwKTt0cmFuc2Zvcm06cm90YXRlKDApfTEwMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0ubGEtcm90YXRlLTkwey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmxhLXJvdGF0ZS0xODB7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5sYS1yb3RhdGUtMjcwey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKX0ubGEtZmxpcC1ob3Jpem9udGFsey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC0xLDEpO3RyYW5zZm9ybTpzY2FsZSgtMSwxKX0ubGEtZmxpcC12ZXJ0aWNhbHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLC0xKTt0cmFuc2Zvcm06c2NhbGUoMSwtMSl9LmxhLWZsaXAtYm90aCwubGEtZmxpcC1ob3Jpem9udGFsLmxhLWZsaXAtdmVydGljYWx7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLTEsLTEpO3RyYW5zZm9ybTpzY2FsZSgtMSwtMSl9OnJvb3QgLmxhLWZsaXAtYm90aCw6cm9vdCAubGEtZmxpcC1ob3Jpem9udGFsLDpyb290IC5sYS1mbGlwLXZlcnRpY2FsLDpyb290IC5sYS1yb3RhdGUtMTgwLDpyb290IC5sYS1yb3RhdGUtMjcwLDpyb290IC5sYS1yb3RhdGUtOTB7LXdlYmtpdC1maWx0ZXI6bm9uZTtmaWx0ZXI6bm9uZX0ubGEtc3RhY2t7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoyZW07cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjIuNWVtfS5sYS1zdGFjay0xeCwubGEtc3RhY2stMnh7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LmxhLXN0YWNrLTF4e2xpbmUtaGVpZ2h0OmluaGVyaXR9LmxhLXN0YWNrLTJ4e2ZvbnQtc2l6ZToyZW19LmxhLWludmVyc2V7Y29sb3I6I2ZmZn0ubGEtNTAwcHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjZlIn0ubGEtYWNjZXNzaWJsZS1pY29uOmJlZm9yZXtjb250ZW50OiJcZjM2OCJ9LmxhLWFjY3Vzb2Z0OmJlZm9yZXtjb250ZW50OiJcZjM2OSJ9LmxhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmFmIn0ubGEtYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjQxIn0ubGEtYWRkcmVzcy1ib29rOmJlZm9yZXtjb250ZW50OiJcZjJiOSJ9LmxhLWFkZHJlc3MtY2FyZDpiZWZvcmV7Y29udGVudDoiXGYyYmIifS5sYS1hZGp1c3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDQyIn0ubGEtYWRuOmJlZm9yZXtjb250ZW50OiJcZjE3MCJ9LmxhLWFkb2JlOmJlZm9yZXtjb250ZW50OiJcZjc3OCJ9LmxhLWFkdmVyc2FsOmJlZm9yZXtjb250ZW50OiJcZjM2YSJ9LmxhLWFmZmlsaWF0ZXRoZW1lOmJlZm9yZXtjb250ZW50OiJcZjM2YiJ9LmxhLWFpci1mcmVzaGVuZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWQwIn0ubGEtYWlyYm5iOmJlZm9yZXtjb250ZW50OiJcZjgzNCJ9LmxhLWFsZ29saWE6YmVmb3Jle2NvbnRlbnQ6IlxmMzZjIn0ubGEtYWxpZ24tY2VudGVyOmJlZm9yZXtjb250ZW50OiJcZjAzNyJ9LmxhLWFsaWduLWp1c3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMDM5In0ubGEtYWxpZ24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwMzYifS5sYS1hbGlnbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwMzgifS5sYS1hbGlwYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNjQyIn0ubGEtYWxsZXJnaWVzOmJlZm9yZXtjb250ZW50OiJcZjQ2MSJ9LmxhLWFtYXpvbjpiZWZvcmV7Y29udGVudDoiXGYyNzAifS5sYS1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OiJcZjQyYyJ9LmxhLWFtYnVsYW5jZTpiZWZvcmV7Y29udGVudDoiXGYwZjkifS5sYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmV7Y29udGVudDoiXGYyYTMifS5sYS1hbWlsaWE6YmVmb3Jle2NvbnRlbnQ6IlxmMzZkIn0ubGEtYW5jaG9yOmJlZm9yZXtjb250ZW50OiJcZjEzZCJ9LmxhLWFuZHJvaWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTdiIn0ubGEtYW5nZWxsaXN0OmJlZm9yZXtjb250ZW50OiJcZjIwOSJ9LmxhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjEwMyJ9LmxhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwMCJ9LmxhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxMDEifS5sYS1hbmdsZS1kb3VibGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTAyIn0ubGEtYW5nbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxMDcifS5sYS1hbmdsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwNCJ9LmxhLWFuZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwNSJ9LmxhLWFuZ2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjEwNiJ9LmxhLWFuZ3J5OmJlZm9yZXtjb250ZW50OiJcZjU1NiJ9LmxhLWFuZ3J5Y3JlYXRpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMzZlIn0ubGEtYW5ndWxhcjpiZWZvcmV7Y29udGVudDoiXGY0MjAifS5sYS1hbmtoOmJlZm9yZXtjb250ZW50OiJcZjY0NCJ9LmxhLWFwcC1zdG9yZTpiZWZvcmV7Y29udGVudDoiXGYzNmYifS5sYS1hcHAtc3RvcmUtaW9zOmJlZm9yZXtjb250ZW50OiJcZjM3MCJ9LmxhLWFwcGVyOmJlZm9yZXtjb250ZW50OiJcZjM3MSJ9LmxhLWFwcGxlOmJlZm9yZXtjb250ZW50OiJcZjE3OSJ9LmxhLWFwcGxlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1ZDEifS5sYS1hcHBsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNDE1In0ubGEtYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGYxODcifS5sYS1hcmNod2F5OmJlZm9yZXtjb250ZW50OiJcZjU1NyJ9LmxhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYzNTgifS5sYS1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzU5In0ubGEtYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYzNWEifS5sYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjM1YiJ9LmxhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBhYiJ9LmxhLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjBhOCJ9LmxhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTkifS5sYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGFhIn0ubGEtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNjMifS5sYS1hcnJvdy1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjA2MCJ9LmxhLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjA2MSJ9LmxhLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjA2MiJ9LmxhLWFycm93cy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGIyIn0ubGEtYXJyb3dzLWFsdC1oOmJlZm9yZXtjb250ZW50OiJcZjMzNyJ9LmxhLWFycm93cy1hbHQtdjpiZWZvcmV7Y29udGVudDoiXGYzMzgifS5sYS1hcnRzdGF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjc3YSJ9LmxhLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmV7Y29udGVudDoiXGYyYTIifS5sYS1hc3RlcmlzazpiZWZvcmV7Y29udGVudDoiXGYwNjkifS5sYS1hc3ltbWV0cmlrOmJlZm9yZXtjb250ZW50OiJcZjM3MiJ9LmxhLWF0OmJlZm9yZXtjb250ZW50OiJcZjFmYSJ9LmxhLWF0bGFzOmJlZm9yZXtjb250ZW50OiJcZjU1OCJ9LmxhLWF0bGFzc2lhbjpiZWZvcmV7Y29udGVudDoiXGY3N2IifS5sYS1hdG9tOmJlZm9yZXtjb250ZW50OiJcZjVkMiJ9LmxhLWF1ZGlibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzczIn0ubGEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6IlxmMjllIn0ubGEtYXV0b3ByZWZpeGVyOmJlZm9yZXtjb250ZW50OiJcZjQxYyJ9LmxhLWF2aWFuZXg6YmVmb3Jle2NvbnRlbnQ6IlxmMzc0In0ubGEtYXZpYXRvOmJlZm9yZXtjb250ZW50OiJcZjQyMSJ9LmxhLWF3YXJkOmJlZm9yZXtjb250ZW50OiJcZjU1OSJ9LmxhLWF3czpiZWZvcmV7Y29udGVudDoiXGYzNzUifS5sYS1iYWJ5OmJlZm9yZXtjb250ZW50OiJcZjc3YyJ9LmxhLWJhYnktY2FycmlhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNzdkIn0ubGEtYmFja3NwYWNlOmJlZm9yZXtjb250ZW50OiJcZjU1YSJ9LmxhLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0YSJ9LmxhLWJhY29uOmJlZm9yZXtjb250ZW50OiJcZjdlNSJ9LmxhLWJhbGFuY2Utc2NhbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjRlIn0ubGEtYmFsYW5jZS1zY2FsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjUxNSJ9LmxhLWJhbGFuY2Utc2NhbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTE2In0ubGEtYmFuOmJlZm9yZXtjb250ZW50OiJcZjA1ZSJ9LmxhLWJhbmQtYWlkOmJlZm9yZXtjb250ZW50OiJcZjQ2MiJ9LmxhLWJhbmRjYW1wOmJlZm9yZXtjb250ZW50OiJcZjJkNSJ9LmxhLWJhcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDJhIn0ubGEtYmFyczpiZWZvcmV7Y29udGVudDoiXGYwYzkifS5sYS1iYXNlYmFsbC1iYWxsOmJlZm9yZXtjb250ZW50OiJcZjQzMyJ9LmxhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmV7Y29udGVudDoiXGY0MzQifS5sYS1iYXRoOmJlZm9yZXtjb250ZW50OiJcZjJjZCJ9LmxhLWJhdHRlcnktZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ0In0ubGEtYmF0dGVyeS1mdWxsOmJlZm9yZXtjb250ZW50OiJcZjI0MCJ9LmxhLWJhdHRlcnktaGFsZjpiZWZvcmV7Y29udGVudDoiXGYyNDIifS5sYS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjQzIn0ubGEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmV7Y29udGVudDoiXGYyNDEifS5sYS1iYXR0bGUtbmV0OmJlZm9yZXtjb250ZW50OiJcZjgzNSJ9LmxhLWJlZDpiZWZvcmV7Y29udGVudDoiXGYyMzYifS5sYS1iZWVyOmJlZm9yZXtjb250ZW50OiJcZjBmYyJ9LmxhLWJlaGFuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWI0In0ubGEtYmVoYW5jZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI1In0ubGEtYmVsbDpiZWZvcmV7Y29udGVudDoiXGYwZjMifS5sYS1iZWxsLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjFmNiJ9LmxhLWJlemllci1jdXJ2ZTpiZWZvcmV7Y29udGVudDoiXGY1NWIifS5sYS1iaWJsZTpiZWZvcmV7Y29udGVudDoiXGY2NDcifS5sYS1iaWN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjIwNiJ9LmxhLWJpa2luZzpiZWZvcmV7Y29udGVudDoiXGY4NGEifS5sYS1iaW1vYmplY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMzc4In0ubGEtYmlub2N1bGFyczpiZWZvcmV7Y29udGVudDoiXGYxZTUifS5sYS1iaW9oYXphcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNzgwIn0ubGEtYmlydGhkYXktY2FrZTpiZWZvcmV7Y29udGVudDoiXGYxZmQifS5sYS1iaXRidWNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTcxIn0ubGEtYml0Y29pbjpiZWZvcmV7Y29udGVudDoiXGYzNzkifS5sYS1iaXR5OmJlZm9yZXtjb250ZW50OiJcZjM3YSJ9LmxhLWJsYWNrLXRpZTpiZWZvcmV7Y29udGVudDoiXGYyN2UifS5sYS1ibGFja2JlcnJ5OmJlZm9yZXtjb250ZW50OiJcZjM3YiJ9LmxhLWJsZW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTE3In0ubGEtYmxlbmRlci1waG9uZTpiZWZvcmV7Y29udGVudDoiXGY2YjYifS5sYS1ibGluZDpiZWZvcmV7Y29udGVudDoiXGYyOWQifS5sYS1ibG9nOmJlZm9yZXtjb250ZW50OiJcZjc4MSJ9LmxhLWJsb2dnZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMzdjIn0ubGEtYmxvZ2dlci1iOmJlZm9yZXtjb250ZW50OiJcZjM3ZCJ9LmxhLWJsdWV0b290aDpiZWZvcmV7Y29udGVudDoiXGYyOTMifS5sYS1ibHVldG9vdGgtYjpiZWZvcmV7Y29udGVudDoiXGYyOTQifS5sYS1ib2xkOmJlZm9yZXtjb250ZW50OiJcZjAzMiJ9LmxhLWJvbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGU3In0ubGEtYm9tYjpiZWZvcmV7Y29udGVudDoiXGYxZTIifS5sYS1ib25lOmJlZm9yZXtjb250ZW50OiJcZjVkNyJ9LmxhLWJvbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNTVjIn0ubGEtYm9vazpiZWZvcmV7Y29udGVudDoiXGYwMmQifS5sYS1ib29rLWRlYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmI3In0ubGEtYm9vay1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjdlNiJ9LmxhLWJvb2stb3BlbjpiZWZvcmV7Y29udGVudDoiXGY1MTgifS5sYS1ib29rLXJlYWRlcjpiZWZvcmV7Y29udGVudDoiXGY1ZGEifS5sYS1ib29rbWFyazpiZWZvcmV7Y29udGVudDoiXGYwMmUifS5sYS1ib290c3RyYXA6YmVmb3Jle2NvbnRlbnQ6IlxmODM2In0ubGEtYm9yZGVyLWFsbDpiZWZvcmV7Y29udGVudDoiXGY4NGMifS5sYS1ib3JkZXItbm9uZTpiZWZvcmV7Y29udGVudDoiXGY4NTAifS5sYS1ib3JkZXItc3R5bGU6YmVmb3Jle2NvbnRlbnQ6IlxmODUzIn0ubGEtYm93bGluZy1iYWxsOmJlZm9yZXtjb250ZW50OiJcZjQzNiJ9LmxhLWJveDpiZWZvcmV7Y29udGVudDoiXGY0NjYifS5sYS1ib3gtb3BlbjpiZWZvcmV7Y29udGVudDoiXGY0OWUifS5sYS1ib3hlczpiZWZvcmV7Y29udGVudDoiXGY0NjgifS5sYS1icmFpbGxlOmJlZm9yZXtjb250ZW50OiJcZjJhMSJ9LmxhLWJyYWluOmJlZm9yZXtjb250ZW50OiJcZjVkYyJ9LmxhLWJyZWFkLXNsaWNlOmJlZm9yZXtjb250ZW50OiJcZjdlYyJ9LmxhLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGYwYjEifS5sYS1icmllZmNhc2UtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NjkifS5sYS1icm9hZGNhc3QtdG93ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTE5In0ubGEtYnJvb206YmVmb3Jle2NvbnRlbnQ6IlxmNTFhIn0ubGEtYnJ1c2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTVkIn0ubGEtYnRjOmJlZm9yZXtjb250ZW50OiJcZjE1YSJ9LmxhLWJ1ZmZlcjpiZWZvcmV7Y29udGVudDoiXGY4MzcifS5sYS1idWc6YmVmb3Jle2NvbnRlbnQ6IlxmMTg4In0ubGEtYnVpbGRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMWFkIn0ubGEtYnVsbGhvcm46YmVmb3Jle2NvbnRlbnQ6IlxmMGExIn0ubGEtYnVsbHNleWU6YmVmb3Jle2NvbnRlbnQ6IlxmMTQwIn0ubGEtYnVybjpiZWZvcmV7Y29udGVudDoiXGY0NmEifS5sYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZXtjb250ZW50OiJcZjM3ZiJ9LmxhLWJ1czpiZWZvcmV7Y29udGVudDoiXGYyMDcifS5sYS1idXMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjU1ZSJ9LmxhLWJ1c2luZXNzLXRpbWU6YmVmb3Jle2NvbnRlbnQ6IlxmNjRhIn0ubGEtYnV5LW4tbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmOGE2In0ubGEtYnV5c2VsbGFkczpiZWZvcmV7Y29udGVudDoiXGYyMGQifS5sYS1jYWxjdWxhdG9yOmJlZm9yZXtjb250ZW50OiJcZjFlYyJ9LmxhLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OiJcZjEzMyJ9LmxhLWNhbGVuZGFyLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwNzMifS5sYS1jYWxlbmRhci1jaGVjazpiZWZvcmV7Y29udGVudDoiXGYyNzQifS5sYS1jYWxlbmRhci1kYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNzgzIn0ubGEtY2FsZW5kYXItbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjcyIn0ubGEtY2FsZW5kYXItcGx1czpiZWZvcmV7Y29udGVudDoiXGYyNzEifS5sYS1jYWxlbmRhci10aW1lczpiZWZvcmV7Y29udGVudDoiXGYyNzMifS5sYS1jYWxlbmRhci13ZWVrOmJlZm9yZXtjb250ZW50OiJcZjc4NCJ9LmxhLWNhbWVyYTpiZWZvcmV7Y29udGVudDoiXGYwMzAifS5sYS1jYW1lcmEtcmV0cm86YmVmb3Jle2NvbnRlbnQ6IlxmMDgzIn0ubGEtY2FtcGdyb3VuZDpiZWZvcmV7Y29udGVudDoiXGY2YmIifS5sYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjc4NSJ9LmxhLWNhbmR5LWNhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmNzg2In0ubGEtY2FubmFiaXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTVmIn0ubGEtY2Fwc3VsZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNDZiIn0ubGEtY2FyOmJlZm9yZXtjb250ZW50OiJcZjFiOSJ9LmxhLWNhci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWRlIn0ubGEtY2FyLWJhdHRlcnk6YmVmb3Jle2NvbnRlbnQ6IlxmNWRmIn0ubGEtY2FyLWNyYXNoOmJlZm9yZXtjb250ZW50OiJcZjVlMSJ9LmxhLWNhci1zaWRlOmJlZm9yZXtjb250ZW50OiJcZjVlNCJ9LmxhLWNhcmV0LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMGQ3In0ubGEtY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwZDkifS5sYS1jYXJldC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwZGEifS5sYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNTAifS5sYS1jYXJldC1zcXVhcmUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxOTEifS5sYS1jYXJldC1zcXVhcmUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTUyIn0ubGEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZXtjb250ZW50OiJcZjE1MSJ9LmxhLWNhcmV0LXVwOmJlZm9yZXtjb250ZW50OiJcZjBkOCJ9LmxhLWNhcnJvdDpiZWZvcmV7Y29udGVudDoiXGY3ODcifS5sYS1jYXJ0LWFycm93LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMjE4In0ubGEtY2FydC1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjIxNyJ9LmxhLWNhc2gtcmVnaXN0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzg4In0ubGEtY2F0OmJlZm9yZXtjb250ZW50OiJcZjZiZSJ9LmxhLWNjLWFtYXpvbi1wYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNDJkIn0ubGEtY2MtYW1leDpiZWZvcmV7Y29udGVudDoiXGYxZjMifS5sYS1jYy1hcHBsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNDE2In0ubGEtY2MtZGluZXJzLWNsdWI6YmVmb3Jle2NvbnRlbnQ6IlxmMjRjIn0ubGEtY2MtZGlzY292ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWYyIn0ubGEtY2MtamNiOmJlZm9yZXtjb250ZW50OiJcZjI0YiJ9LmxhLWNjLW1hc3RlcmNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWYxIn0ubGEtY2MtcGF5cGFsOmJlZm9yZXtjb250ZW50OiJcZjFmNCJ9LmxhLWNjLXN0cmlwZTpiZWZvcmV7Y29udGVudDoiXGYxZjUifS5sYS1jYy12aXNhOmJlZm9yZXtjb250ZW50OiJcZjFmMCJ9LmxhLWNlbnRlcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzgwIn0ubGEtY2VudG9zOmJlZm9yZXtjb250ZW50OiJcZjc4OSJ9LmxhLWNlcnRpZmljYXRlOmJlZm9yZXtjb250ZW50OiJcZjBhMyJ9LmxhLWNoYWlyOmJlZm9yZXtjb250ZW50OiJcZjZjMCJ9LmxhLWNoYWxrYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTFiIn0ubGEtY2hhbGtib2FyZC10ZWFjaGVyOmJlZm9yZXtjb250ZW50OiJcZjUxYyJ9LmxhLWNoYXJnaW5nLXN0YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNWU3In0ubGEtY2hhcnQtYXJlYTpiZWZvcmV7Y29udGVudDoiXGYxZmUifS5sYS1jaGFydC1iYXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDgwIn0ubGEtY2hhcnQtbGluZTpiZWZvcmV7Y29udGVudDoiXGYyMDEifS5sYS1jaGFydC1waWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjAwIn0ubGEtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDBjIn0ubGEtY2hlY2stY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1OCJ9LmxhLWNoZWNrLWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGY1NjAifS5sYS1jaGVjay1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRhIn0ubGEtY2hlZXNlOmJlZm9yZXtjb250ZW50OiJcZjdlZiJ9LmxhLWNoZXNzOmJlZm9yZXtjb250ZW50OiJcZjQzOSJ9LmxhLWNoZXNzLWJpc2hvcDpiZWZvcmV7Y29udGVudDoiXGY0M2EifS5sYS1jaGVzcy1ib2FyZDpiZWZvcmV7Y29udGVudDoiXGY0M2MifS5sYS1jaGVzcy1raW5nOmJlZm9yZXtjb250ZW50OiJcZjQzZiJ9LmxhLWNoZXNzLWtuaWdodDpiZWZvcmV7Y29udGVudDoiXGY0NDEifS5sYS1jaGVzcy1wYXduOmJlZm9yZXtjb250ZW50OiJcZjQ0MyJ9LmxhLWNoZXNzLXF1ZWVuOmJlZm9yZXtjb250ZW50OiJcZjQ0NSJ9LmxhLWNoZXNzLXJvb2s6YmVmb3Jle2NvbnRlbnQ6IlxmNDQ3In0ubGEtY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxM2EifS5sYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEzNyJ9LmxhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEzOCJ9LmxhLWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjEzOSJ9LmxhLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNzgifS5sYS1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDUzIn0ubGEtY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwNTQifS5sYS1jaGV2cm9uLXVwOmJlZm9yZXtjb250ZW50OiJcZjA3NyJ9LmxhLWNoaWxkOmJlZm9yZXtjb250ZW50OiJcZjFhZSJ9LmxhLWNocm9tZTpiZWZvcmV7Y29udGVudDoiXGYyNjgifS5sYS1jaHJvbWVjYXN0OmJlZm9yZXtjb250ZW50OiJcZjgzOCJ9LmxhLWNodXJjaDpiZWZvcmV7Y29udGVudDoiXGY1MWQifS5sYS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTExIn0ubGEtY2lyY2xlLW5vdGNoOmJlZm9yZXtjb250ZW50OiJcZjFjZSJ9LmxhLWNpdHk6YmVmb3Jle2NvbnRlbnQ6IlxmNjRmIn0ubGEtY2xpbmljLW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmN2YyIn0ubGEtY2xpcGJvYXJkOmJlZm9yZXtjb250ZW50OiJcZjMyOCJ9LmxhLWNsaXBib2FyZC1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY0NmMifS5sYS1jbGlwYm9hcmQtbGlzdDpiZWZvcmV7Y29udGVudDoiXGY0NmQifS5sYS1jbG9jazpiZWZvcmV7Y29udGVudDoiXGYwMTcifS5sYS1jbG9uZTpiZWZvcmV7Y29udGVudDoiXGYyNGQifS5sYS1jbG9zZWQtY2FwdGlvbmluZzpiZWZvcmV7Y29udGVudDoiXGYyMGEifS5sYS1jbG91ZDpiZWZvcmV7Y29udGVudDoiXGYwYzIifS5sYS1jbG91ZC1kb3dubG9hZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzgxIn0ubGEtY2xvdWQtbWVhdGJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNzNiIn0ubGEtY2xvdWQtbW9vbjpiZWZvcmV7Y29udGVudDoiXGY2YzMifS5sYS1jbG91ZC1tb29uLXJhaW46YmVmb3Jle2NvbnRlbnQ6IlxmNzNjIn0ubGEtY2xvdWQtcmFpbjpiZWZvcmV7Y29udGVudDoiXGY3M2QifS5sYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZXtjb250ZW50OiJcZjc0MCJ9LmxhLWNsb3VkLXN1bjpiZWZvcmV7Y29udGVudDoiXGY2YzQifS5sYS1jbG91ZC1zdW4tcmFpbjpiZWZvcmV7Y29udGVudDoiXGY3NDMifS5sYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjM4MiJ9LmxhLWNsb3Vkc2NhbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzgzIn0ubGEtY2xvdWRzbWl0aDpiZWZvcmV7Y29udGVudDoiXGYzODQifS5sYS1jbG91ZHZlcnNpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMzg1In0ubGEtY29ja3RhaWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTYxIn0ubGEtY29kZTpiZWZvcmV7Y29udGVudDoiXGYxMjEifS5sYS1jb2RlLWJyYW5jaDpiZWZvcmV7Y29udGVudDoiXGYxMjYifS5sYS1jb2RlcGVuOmJlZm9yZXtjb250ZW50OiJcZjFjYiJ9LmxhLWNvZGllcGllOmJlZm9yZXtjb250ZW50OiJcZjI4NCJ9LmxhLWNvZmZlZTpiZWZvcmV7Y29udGVudDoiXGYwZjQifS5sYS1jb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMDEzIn0ubGEtY29nczpiZWZvcmV7Y29udGVudDoiXGYwODUifS5sYS1jb2luczpiZWZvcmV7Y29udGVudDoiXGY1MWUifS5sYS1jb2x1bW5zOmJlZm9yZXtjb250ZW50OiJcZjBkYiJ9LmxhLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc1In0ubGEtY29tbWVudC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjdhIn0ubGEtY29tbWVudC1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNjUxIn0ubGEtY29tbWVudC1kb3RzOmJlZm9yZXtjb250ZW50OiJcZjRhZCJ9LmxhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZjUifS5sYS1jb21tZW50LXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjRiMyJ9LmxhLWNvbW1lbnRzOmJlZm9yZXtjb250ZW50OiJcZjA4NiJ9LmxhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2NTMifS5sYS1jb21wYWN0LWRpc2M6YmVmb3Jle2NvbnRlbnQ6IlxmNTFmIn0ubGEtY29tcGFzczpiZWZvcmV7Y29udGVudDoiXGYxNGUifS5sYS1jb21wcmVzczpiZWZvcmV7Y29udGVudDoiXGYwNjYifS5sYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjc4YyJ9LmxhLWNvbmNpZXJnZS1iZWxsOmJlZm9yZXtjb250ZW50OiJcZjU2MiJ9LmxhLWNvbmZsdWVuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNzhkIn0ubGEtY29ubmVjdGRldmVsb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMjBlIn0ubGEtY29udGFvOmJlZm9yZXtjb250ZW50OiJcZjI2ZCJ9LmxhLWNvb2tpZTpiZWZvcmV7Y29udGVudDoiXGY1NjMifS5sYS1jb29raWUtYml0ZTpiZWZvcmV7Y29udGVudDoiXGY1NjQifS5sYS1jb3B5OmJlZm9yZXtjb250ZW50OiJcZjBjNSJ9LmxhLWNvcHlyaWdodDpiZWZvcmV7Y29udGVudDoiXGYxZjkifS5sYS1jb3R0b24tYnVyZWF1OmJlZm9yZXtjb250ZW50OiJcZjg5ZSJ9LmxhLWNvdWNoOmJlZm9yZXtjb250ZW50OiJcZjRiOCJ9LmxhLWNwYW5lbDpiZWZvcmV7Y29udGVudDoiXGYzODgifS5sYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZXtjb250ZW50OiJcZjI1ZSJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3Jle2NvbnRlbnQ6IlxmNGU3In0ubGEtY3JlYXRpdmUtY29tbW9ucy1uYzpiZWZvcmV7Y29udGVudDoiXGY0ZTgifS5sYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZXtjb250ZW50OiJcZjRlOSJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3Jle2NvbnRlbnQ6IlxmNGVhIn0ubGEtY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmV7Y29udGVudDoiXGY0ZWIifS5sYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZXtjb250ZW50OiJcZjRlYyJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjRlZCJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXg6YmVmb3Jle2NvbnRlbnQ6IlxmNGVlIn0ubGEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmV7Y29udGVudDoiXGY0ZWYifS5sYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZXtjb250ZW50OiJcZjRmMCJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmV7Y29udGVudDoiXGY0ZjEifS5sYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZXtjb250ZW50OiJcZjRmMiJ9LmxhLWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmV7Y29udGVudDoiXGY0ZjMifS5sYS1jcmVkaXQtY2FyZDpiZWZvcmV7Y29udGVudDoiXGYwOWQifS5sYS1jcml0aWNhbC1yb2xlOmJlZm9yZXtjb250ZW50OiJcZjZjOSJ9LmxhLWNyb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTI1In0ubGEtY3JvcC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTY1In0ubGEtY3Jvc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNjU0In0ubGEtY3Jvc3NoYWlyczpiZWZvcmV7Y29udGVudDoiXGYwNWIifS5sYS1jcm93OmJlZm9yZXtjb250ZW50OiJcZjUyMCJ9LmxhLWNyb3duOmJlZm9yZXtjb250ZW50OiJcZjUyMSJ9LmxhLWNydXRjaDpiZWZvcmV7Y29udGVudDoiXGY3ZjcifS5sYS1jc3MzOmJlZm9yZXtjb250ZW50OiJcZjEzYyJ9LmxhLWNzczMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjM4YiJ9LmxhLWN1YmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWIyIn0ubGEtY3ViZXM6YmVmb3Jle2NvbnRlbnQ6IlxmMWIzIn0ubGEtY3V0OmJlZm9yZXtjb250ZW50OiJcZjBjNCJ9LmxhLWN1dHRsZWZpc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMzhjIn0ubGEtZC1hbmQtZDpiZWZvcmV7Y29udGVudDoiXGYzOGQifS5sYS1kLWFuZC1kLWJleW9uZDpiZWZvcmV7Y29udGVudDoiXGY2Y2EifS5sYS1kYXNoY3ViZTpiZWZvcmV7Y29udGVudDoiXGYyMTAifS5sYS1kYXRhYmFzZTpiZWZvcmV7Y29udGVudDoiXGYxYzAifS5sYS1kZWFmOmJlZm9yZXtjb250ZW50OiJcZjJhNCJ9LmxhLWRlbGljaW91czpiZWZvcmV7Y29udGVudDoiXGYxYTUifS5sYS1kZW1vY3JhdDpiZWZvcmV7Y29udGVudDoiXGY3NDcifS5sYS1kZXBsb3lkb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMzhlIn0ubGEtZGVza3BybzpiZWZvcmV7Y29udGVudDoiXGYzOGYifS5sYS1kZXNrdG9wOmJlZm9yZXtjb250ZW50OiJcZjEwOCJ9LmxhLWRldjpiZWZvcmV7Y29udGVudDoiXGY2Y2MifS5sYS1kZXZpYW50YXJ0OmJlZm9yZXtjb250ZW50OiJcZjFiZCJ9LmxhLWRoYXJtYWNoYWtyYTpiZWZvcmV7Y29udGVudDoiXGY2NTUifS5sYS1kaGw6YmVmb3Jle2NvbnRlbnQ6IlxmNzkwIn0ubGEtZGlhZ25vc2VzOmJlZm9yZXtjb250ZW50OiJcZjQ3MCJ9LmxhLWRpYXNwb3JhOmJlZm9yZXtjb250ZW50OiJcZjc5MSJ9LmxhLWRpY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNTIyIn0ubGEtZGljZS1kMjA6YmVmb3Jle2NvbnRlbnQ6IlxmNmNmIn0ubGEtZGljZS1kNjpiZWZvcmV7Y29udGVudDoiXGY2ZDEifS5sYS1kaWNlLWZpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTIzIn0ubGEtZGljZS1mb3VyOmJlZm9yZXtjb250ZW50OiJcZjUyNCJ9LmxhLWRpY2Utb25lOmJlZm9yZXtjb250ZW50OiJcZjUyNSJ9LmxhLWRpY2Utc2l4OmJlZm9yZXtjb250ZW50OiJcZjUyNiJ9LmxhLWRpY2UtdGhyZWU6YmVmb3Jle2NvbnRlbnQ6IlxmNTI3In0ubGEtZGljZS10d286YmVmb3Jle2NvbnRlbnQ6IlxmNTI4In0ubGEtZGlnZzpiZWZvcmV7Y29udGVudDoiXGYxYTYifS5sYS1kaWdpdGFsLW9jZWFuOmJlZm9yZXtjb250ZW50OiJcZjM5MSJ9LmxhLWRpZ2l0YWwtdGFjaG9ncmFwaDpiZWZvcmV7Y29udGVudDoiXGY1NjYifS5sYS1kaXJlY3Rpb25zOmJlZm9yZXtjb250ZW50OiJcZjVlYiJ9LmxhLWRpc2NvcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzkyIn0ubGEtZGlzY291cnNlOmJlZm9yZXtjb250ZW50OiJcZjM5MyJ9LmxhLWRpdmlkZTpiZWZvcmV7Y29udGVudDoiXGY1MjkifS5sYS1kaXp6eTpiZWZvcmV7Y29udGVudDoiXGY1NjcifS5sYS1kbmE6YmVmb3Jle2NvbnRlbnQ6IlxmNDcxIn0ubGEtZG9jaHViOmJlZm9yZXtjb250ZW50OiJcZjM5NCJ9LmxhLWRvY2tlcjpiZWZvcmV7Y29udGVudDoiXGYzOTUifS5sYS1kb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNmQzIn0ubGEtZG9sbGFyLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTU1In0ubGEtZG9sbHk6YmVmb3Jle2NvbnRlbnQ6IlxmNDcyIn0ubGEtZG9sbHktZmxhdGJlZDpiZWZvcmV7Y29udGVudDoiXGY0NzQifS5sYS1kb25hdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGI5In0ubGEtZG9vci1jbG9zZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTJhIn0ubGEtZG9vci1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjUyYiJ9LmxhLWRvdC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTkyIn0ubGEtZG92ZTpiZWZvcmV7Y29udGVudDoiXGY0YmEifS5sYS1kb3dubG9hZDpiZWZvcmV7Y29udGVudDoiXGYwMTkifS5sYS1kcmFmdDJkaWdpdGFsOmJlZm9yZXtjb250ZW50OiJcZjM5NiJ9LmxhLWRyYWZ0aW5nLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNTY4In0ubGEtZHJhZ29uOmJlZm9yZXtjb250ZW50OiJcZjZkNSJ9LmxhLWRyYXctcG9seWdvbjpiZWZvcmV7Y29udGVudDoiXGY1ZWUifS5sYS1kcmliYmJsZTpiZWZvcmV7Y29udGVudDoiXGYxN2QifS5sYS1kcmliYmJsZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMzk3In0ubGEtZHJvcGJveDpiZWZvcmV7Y29udGVudDoiXGYxNmIifS5sYS1kcnVtOmJlZm9yZXtjb250ZW50OiJcZjU2OSJ9LmxhLWRydW0tc3RlZWxwYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTZhIn0ubGEtZHJ1bXN0aWNrLWJpdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNmQ3In0ubGEtZHJ1cGFsOmJlZm9yZXtjb250ZW50OiJcZjFhOSJ9LmxhLWR1bWJiZWxsOmJlZm9yZXtjb250ZW50OiJcZjQ0YiJ9LmxhLWR1bXBzdGVyOmJlZm9yZXtjb250ZW50OiJcZjc5MyJ9LmxhLWR1bXBzdGVyLWZpcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNzk0In0ubGEtZHVuZ2VvbjpiZWZvcmV7Y29udGVudDoiXGY2ZDkifS5sYS1keWFsb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMzk5In0ubGEtZWFybHliaXJkczpiZWZvcmV7Y29udGVudDoiXGYzOWEifS5sYS1lYmF5OmJlZm9yZXtjb250ZW50OiJcZjRmNCJ9LmxhLWVkZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMjgyIn0ubGEtZWRpdDpiZWZvcmV7Y29udGVudDoiXGYwNDQifS5sYS1lZ2c6YmVmb3Jle2NvbnRlbnQ6IlxmN2ZiIn0ubGEtZWplY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDUyIn0ubGEtZWxlbWVudG9yOmJlZm9yZXtjb250ZW50OiJcZjQzMCJ9LmxhLWVsbGlwc2lzLWg6YmVmb3Jle2NvbnRlbnQ6IlxmMTQxIn0ubGEtZWxsaXBzaXMtdjpiZWZvcmV7Y29udGVudDoiXGYxNDIifS5sYS1lbGxvOmJlZm9yZXtjb250ZW50OiJcZjVmMSJ9LmxhLWVtYmVyOmJlZm9yZXtjb250ZW50OiJcZjQyMyJ9LmxhLWVtcGlyZTpiZWZvcmV7Y29udGVudDoiXGYxZDEifS5sYS1lbnZlbG9wZTpiZWZvcmV7Y29udGVudDoiXGYwZTAifS5sYS1lbnZlbG9wZS1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjJiNiJ9LmxhLWVudmVsb3BlLW9wZW4tdGV4dDpiZWZvcmV7Y29udGVudDoiXGY2NTgifS5sYS1lbnZlbG9wZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTk5In0ubGEtZW52aXJhOmJlZm9yZXtjb250ZW50OiJcZjI5OSJ9LmxhLWVxdWFsczpiZWZvcmV7Y29udGVudDoiXGY1MmMifS5sYS1lcmFzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTJkIn0ubGEtZXJsYW5nOmJlZm9yZXtjb250ZW50OiJcZjM5ZCJ9LmxhLWV0aGVyZXVtOmJlZm9yZXtjb250ZW50OiJcZjQyZSJ9LmxhLWV0aGVybmV0OmJlZm9yZXtjb250ZW50OiJcZjc5NiJ9LmxhLWV0c3k6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ3In0ubGEtZXVyby1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1MyJ9LmxhLWV2ZXJub3RlOmJlZm9yZXtjb250ZW50OiJcZjgzOSJ9LmxhLWV4Y2hhbmdlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzNjIifS5sYS1leGNsYW1hdGlvbjpiZWZvcmV7Y29udGVudDoiXGYxMmEifS5sYS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDZhIn0ubGEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDcxIn0ubGEtZXhwYW5kOmJlZm9yZXtjb250ZW50OiJcZjA2NSJ9LmxhLWV4cGFuZC1hcnJvd3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjMxZSJ9LmxhLWV4cGVkaXRlZHNzbDpiZWZvcmV7Y29udGVudDoiXGYyM2UifS5sYS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzNWQifS5sYS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzYwIn0ubGEtZXllOmJlZm9yZXtjb250ZW50OiJcZjA2ZSJ9LmxhLWV5ZS1kcm9wcGVyOmJlZm9yZXtjb250ZW50OiJcZjFmYiJ9LmxhLWV5ZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYwNzAifS5sYS1mYWNlYm9vazpiZWZvcmV7Y29udGVudDoiXGYwOWEifS5sYS1mYWNlYm9vay1mOmJlZm9yZXtjb250ZW50OiJcZjM5ZSJ9LmxhLWZhY2Vib29rLW1lc3NlbmdlcjpiZWZvcmV7Y29udGVudDoiXGYzOWYifS5sYS1mYWNlYm9vay1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDgyIn0ubGEtZmFuOmJlZm9yZXtjb250ZW50OiJcZjg2MyJ9LmxhLWZhbnRhc3ktZmxpZ2h0LWdhbWVzOmJlZm9yZXtjb250ZW50OiJcZjZkYyJ9LmxhLWZhc3QtYmFja3dhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQ5In0ubGEtZmFzdC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA1MCJ9LmxhLWZheDpiZWZvcmV7Y29udGVudDoiXGYxYWMifS5sYS1mZWF0aGVyOmJlZm9yZXtjb250ZW50OiJcZjUyZCJ9LmxhLWZlYXRoZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjU2YiJ9LmxhLWZlZGV4OmJlZm9yZXtjb250ZW50OiJcZjc5NyJ9LmxhLWZlZG9yYTpiZWZvcmV7Y29udGVudDoiXGY3OTgifS5sYS1mZW1hbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTgyIn0ubGEtZmlnaHRlci1qZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGZiIn0ubGEtZmlnbWE6YmVmb3Jle2NvbnRlbnQ6IlxmNzk5In0ubGEtZmlsZTpiZWZvcmV7Y29udGVudDoiXGYxNWIifS5sYS1maWxlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxNWMifS5sYS1maWxlLWFyY2hpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWM2In0ubGEtZmlsZS1hdWRpbzpiZWZvcmV7Y29udGVudDoiXGYxYzcifS5sYS1maWxlLWNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWM5In0ubGEtZmlsZS1jb250cmFjdDpiZWZvcmV7Y29udGVudDoiXGY1NmMifS5sYS1maWxlLWNzdjpiZWZvcmV7Y29udGVudDoiXGY2ZGQifS5sYS1maWxlLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OiJcZjU2ZCJ9LmxhLWZpbGUtZXhjZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWMzIn0ubGEtZmlsZS1leHBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTZlIn0ubGEtZmlsZS1pbWFnZTpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5sYS1maWxlLWltcG9ydDpiZWZvcmV7Y29udGVudDoiXGY1NmYifS5sYS1maWxlLWludm9pY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNTcwIn0ubGEtZmlsZS1pbnZvaWNlLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY1NzEifS5sYS1maWxlLW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNDc3In0ubGEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0NzgifS5sYS1maWxlLXBkZjpiZWZvcmV7Y29udGVudDoiXGYxYzEifS5sYS1maWxlLXBvd2VycG9pbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWM0In0ubGEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNTcyIn0ubGEtZmlsZS1zaWduYXR1cmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTczIn0ubGEtZmlsZS11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTc0In0ubGEtZmlsZS12aWRlbzpiZWZvcmV7Y29udGVudDoiXGYxYzgifS5sYS1maWxlLXdvcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWMyIn0ubGEtZmlsbDpiZWZvcmV7Y29udGVudDoiXGY1NzUifS5sYS1maWxsLWRyaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTc2In0ubGEtZmlsbTpiZWZvcmV7Y29udGVudDoiXGYwMDgifS5sYS1maWx0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMGIwIn0ubGEtZmluZ2VycHJpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTc3In0ubGEtZmlyZTpiZWZvcmV7Y29udGVudDoiXGYwNmQifS5sYS1maXJlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY3ZTQifS5sYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmV7Y29udGVudDoiXGYxMzQifS5sYS1maXJlZm94OmJlZm9yZXtjb250ZW50OiJcZjI2OSJ9LmxhLWZpcnN0LWFpZDpiZWZvcmV7Y29udGVudDoiXGY0NzkifS5sYS1maXJzdC1vcmRlcjpiZWZvcmV7Y29udGVudDoiXGYyYjAifS5sYS1maXJzdC1vcmRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTBhIn0ubGEtZmlyc3RkcmFmdDpiZWZvcmV7Y29udGVudDoiXGYzYTEifS5sYS1maXNoOmJlZm9yZXtjb250ZW50OiJcZjU3OCJ9LmxhLWZpc3QtcmFpc2VkOmJlZm9yZXtjb250ZW50OiJcZjZkZSJ9LmxhLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxmMDI0In0ubGEtZmxhZy1jaGVja2VyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFlIn0ubGEtZmxhZy11c2E6YmVmb3Jle2NvbnRlbnQ6IlxmNzRkIn0ubGEtZmxhc2s6YmVmb3Jle2NvbnRlbnQ6IlxmMGMzIn0ubGEtZmxpY2tyOmJlZm9yZXtjb250ZW50OiJcZjE2ZSJ9LmxhLWZsaXBib2FyZDpiZWZvcmV7Y29udGVudDoiXGY0NGQifS5sYS1mbHVzaGVkOmJlZm9yZXtjb250ZW50OiJcZjU3OSJ9LmxhLWZseTpiZWZvcmV7Y29udGVudDoiXGY0MTcifS5sYS1mb2xkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDdiIn0ubGEtZm9sZGVyLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjY1ZCJ9LmxhLWZvbGRlci1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjA3YyJ9LmxhLWZvbGRlci1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjY1ZSJ9LmxhLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMxIn0ubGEtZm9udC1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZjJiNCJ9LmxhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzVjIn0ubGEtZm9udC1hd2Vzb21lLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxmNDI1In0ubGEtZm9udC1hd2Vzb21lLWxvZ28tZnVsbDpiZWZvcmV7Y29udGVudDoiXGY0ZTYifS5sYS1mb250aWNvbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjgwIn0ubGEtZm9udGljb25zLWZpOmJlZm9yZXtjb250ZW50OiJcZjNhMiJ9LmxhLWZvb3RiYWxsLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDRlIn0ubGEtZm9ydC1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZjI4NiJ9LmxhLWZvcnQtYXdlc29tZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2EzIn0ubGEtZm9ydW1iZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjExIn0ubGEtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNGUifS5sYS1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE4MCJ9LmxhLWZyZWUtY29kZS1jYW1wOmJlZm9yZXtjb250ZW50OiJcZjJjNSJ9LmxhLWZyZWVic2Q6YmVmb3Jle2NvbnRlbnQ6IlxmM2E0In0ubGEtZnJvZzpiZWZvcmV7Y29udGVudDoiXGY1MmUifS5sYS1mcm93bjpiZWZvcmV7Y29udGVudDoiXGYxMTkifS5sYS1mcm93bi1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjU3YSJ9LmxhLWZ1bGNydW06YmVmb3Jle2NvbnRlbnQ6IlxmNTBiIn0ubGEtZnVubmVsLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2NjIifS5sYS1mdXRib2w6YmVmb3Jle2NvbnRlbnQ6IlxmMWUzIn0ubGEtZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3Jle2NvbnRlbnQ6IlxmNTBjIn0ubGEtZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZXtjb250ZW50OiJcZjUwZCJ9LmxhLWdhbWVwYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFiIn0ubGEtZ2FzLXB1bXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTJmIn0ubGEtZ2F2ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGUzIn0ubGEtZ2VtOmJlZm9yZXtjb250ZW50OiJcZjNhNSJ9LmxhLWdlbmRlcmxlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMjJkIn0ubGEtZ2V0LXBvY2tldDpiZWZvcmV7Y29udGVudDoiXGYyNjUifS5sYS1nZzpiZWZvcmV7Y29udGVudDoiXGYyNjAifS5sYS1nZy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjYxIn0ubGEtZ2hvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNmUyIn0ubGEtZ2lmdDpiZWZvcmV7Y29udGVudDoiXGYwNmIifS5sYS1naWZ0czpiZWZvcmV7Y29udGVudDoiXGY3OWMifS5sYS1naXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWQzIn0ubGEtZ2l0LWFsdDpiZWZvcmV7Y29udGVudDoiXGY4NDEifS5sYS1naXQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFkMiJ9LmxhLWdpdGh1YjpiZWZvcmV7Y29udGVudDoiXGYwOWIifS5sYS1naXRodWItYWx0OmJlZm9yZXtjb250ZW50OiJcZjExMyJ9LmxhLWdpdGh1Yi1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDkyIn0ubGEtZ2l0a3Jha2VuOmJlZm9yZXtjb250ZW50OiJcZjNhNiJ9LmxhLWdpdGxhYjpiZWZvcmV7Y29udGVudDoiXGYyOTYifS5sYS1naXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDI2In0ubGEtZ2xhc3MtY2hlZXJzOmJlZm9yZXtjb250ZW50OiJcZjc5ZiJ9LmxhLWdsYXNzLW1hcnRpbmk6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIn0ubGEtZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTdiIn0ubGEtZ2xhc3Mtd2hpc2tleTpiZWZvcmV7Y29udGVudDoiXGY3YTAifS5sYS1nbGFzc2VzOmJlZm9yZXtjb250ZW50OiJcZjUzMCJ9LmxhLWdsaWRlOmJlZm9yZXtjb250ZW50OiJcZjJhNSJ9LmxhLWdsaWRlLWc6YmVmb3Jle2NvbnRlbnQ6IlxmMmE2In0ubGEtZ2xvYmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGFjIn0ubGEtZ2xvYmUtYWZyaWNhOmJlZm9yZXtjb250ZW50OiJcZjU3YyJ9LmxhLWdsb2JlLWFtZXJpY2FzOmJlZm9yZXtjb250ZW50OiJcZjU3ZCJ9LmxhLWdsb2JlLWFzaWE6YmVmb3Jle2NvbnRlbnQ6IlxmNTdlIn0ubGEtZ2xvYmUtZXVyb3BlOmJlZm9yZXtjb250ZW50OiJcZjdhMiJ9LmxhLWdvZm9yZTpiZWZvcmV7Y29udGVudDoiXGYzYTcifS5sYS1nb2xmLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDUwIn0ubGEtZ29vZHJlYWRzOmJlZm9yZXtjb250ZW50OiJcZjNhOCJ9LmxhLWdvb2RyZWFkcy1nOmJlZm9yZXtjb250ZW50OiJcZjNhOSJ9LmxhLWdvb2dsZTpiZWZvcmV7Y29udGVudDoiXGYxYTAifS5sYS1nb29nbGUtZHJpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2FhIn0ubGEtZ29vZ2xlLXBsYXk6YmVmb3Jle2NvbnRlbnQ6IlxmM2FiIn0ubGEtZ29vZ2xlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMmIzIn0ubGEtZ29vZ2xlLXBsdXMtZzpiZWZvcmV7Y29udGVudDoiXGYwZDUifS5sYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ0In0ubGEtZ29vZ2xlLXdhbGxldDpiZWZvcmV7Y29udGVudDoiXGYxZWUifS5sYS1nb3B1cmFtOmJlZm9yZXtjb250ZW50OiJcZjY2NCJ9LmxhLWdyYWR1YXRpb24tY2FwOmJlZm9yZXtjb250ZW50OiJcZjE5ZCJ9LmxhLWdyYXRpcGF5OmJlZm9yZXtjb250ZW50OiJcZjE4NCJ9LmxhLWdyYXY6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ2In0ubGEtZ3JlYXRlci10aGFuOmJlZm9yZXtjb250ZW50OiJcZjUzMSJ9LmxhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmV7Y29udGVudDoiXGY1MzIifS5sYS1ncmltYWNlOmJlZm9yZXtjb250ZW50OiJcZjU3ZiJ9LmxhLWdyaW46YmVmb3Jle2NvbnRlbnQ6IlxmNTgwIn0ubGEtZ3Jpbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTgxIn0ubGEtZ3Jpbi1iZWFtOmJlZm9yZXtjb250ZW50OiJcZjU4MiJ9LmxhLWdyaW4tYmVhbS1zd2VhdDpiZWZvcmV7Y29udGVudDoiXGY1ODMifS5sYS1ncmluLWhlYXJ0czpiZWZvcmV7Y29udGVudDoiXGY1ODQifS5sYS1ncmluLXNxdWludDpiZWZvcmV7Y29udGVudDoiXGY1ODUifS5sYS1ncmluLXNxdWludC10ZWFyczpiZWZvcmV7Y29udGVudDoiXGY1ODYifS5sYS1ncmluLXN0YXJzOmJlZm9yZXtjb250ZW50OiJcZjU4NyJ9LmxhLWdyaW4tdGVhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmNTg4In0ubGEtZ3Jpbi10b25ndWU6YmVmb3Jle2NvbnRlbnQ6IlxmNTg5In0ubGEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZXtjb250ZW50OiJcZjU4YSJ9LmxhLWdyaW4tdG9uZ3VlLXdpbms6YmVmb3Jle2NvbnRlbnQ6IlxmNThiIn0ubGEtZ3Jpbi13aW5rOmJlZm9yZXtjb250ZW50OiJcZjU4YyJ9LmxhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmV7Y29udGVudDoiXGY1OGQifS5sYS1ncmlwLWxpbmVzOmJlZm9yZXtjb250ZW50OiJcZjdhNCJ9LmxhLWdyaXAtbGluZXMtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmN2E1In0ubGEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGY1OGUifS5sYS1ncmlwZmlyZTpiZWZvcmV7Y29udGVudDoiXGYzYWMifS5sYS1ncnVudDpiZWZvcmV7Y29udGVudDoiXGYzYWQifS5sYS1ndWl0YXI6YmVmb3Jle2NvbnRlbnQ6IlxmN2E2In0ubGEtZ3VscDpiZWZvcmV7Y29udGVudDoiXGYzYWUifS5sYS1oLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYwZmQifS5sYS1oYWNrZXItbmV3czpiZWZvcmV7Y29udGVudDoiXGYxZDQifS5sYS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2FmIn0ubGEtaGFja2VycmFuazpiZWZvcmV7Y29udGVudDoiXGY1ZjcifS5sYS1oYW1idXJnZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODA1In0ubGEtaGFtbWVyOmJlZm9yZXtjb250ZW50OiJcZjZlMyJ9LmxhLWhhbXNhOmJlZm9yZXtjb250ZW50OiJcZjY2NSJ9LmxhLWhhbmQtaG9sZGluZzpiZWZvcmV7Y29udGVudDoiXGY0YmQifS5sYS1oYW5kLWhvbGRpbmctaGVhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGJlIn0ubGEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmV7Y29udGVudDoiXGY0YzAifS5sYS1oYW5kLWxpemFyZDpiZWZvcmV7Y29udGVudDoiXGYyNTgifS5sYS1oYW5kLW1pZGRsZS1maW5nZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODA2In0ubGEtaGFuZC1wYXBlcjpiZWZvcmV7Y29udGVudDoiXGYyNTYifS5sYS1oYW5kLXBlYWNlOmJlZm9yZXtjb250ZW50OiJcZjI1YiJ9LmxhLWhhbmQtcG9pbnQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYTcifS5sYS1oYW5kLXBvaW50LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE1In0ubGEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTQifS5sYS1oYW5kLXBvaW50LXVwOmJlZm9yZXtjb250ZW50OiJcZjBhNiJ9LmxhLWhhbmQtcG9pbnRlcjpiZWZvcmV7Y29udGVudDoiXGYyNWEifS5sYS1oYW5kLXJvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMjU1In0ubGEtaGFuZC1zY2lzc29yczpiZWZvcmV7Y29udGVudDoiXGYyNTcifS5sYS1oYW5kLXNwb2NrOmJlZm9yZXtjb250ZW50OiJcZjI1OSJ9LmxhLWhhbmRzOmJlZm9yZXtjb250ZW50OiJcZjRjMiJ9LmxhLWhhbmRzLWhlbHBpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGM0In0ubGEtaGFuZHNoYWtlOmJlZm9yZXtjb250ZW50OiJcZjJiNSJ9LmxhLWhhbnVraWFoOmJlZm9yZXtjb250ZW50OiJcZjZlNiJ9LmxhLWhhcmQtaGF0OmJlZm9yZXtjb250ZW50OiJcZjgwNyJ9LmxhLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlxmMjkyIn0ubGEtaGF0LWNvd2JveTpiZWZvcmV7Y29udGVudDoiXGY4YzAifS5sYS1oYXQtY293Ym95LXNpZGU6YmVmb3Jle2NvbnRlbnQ6IlxmOGMxIn0ubGEtaGF0LXdpemFyZDpiZWZvcmV7Y29udGVudDoiXGY2ZTgifS5sYS1oYXlrYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNjY2In0ubGEtaGRkOmJlZm9yZXtjb250ZW50OiJcZjBhMCJ9LmxhLWhlYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMWRjIn0ubGEtaGVhZHBob25lczpiZWZvcmV7Y29udGVudDoiXGYwMjUifS5sYS1oZWFkcGhvbmVzLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1OGYifS5sYS1oZWFkc2V0OmJlZm9yZXtjb250ZW50OiJcZjU5MCJ9LmxhLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZjAwNCJ9LmxhLWhlYXJ0LWJyb2tlbjpiZWZvcmV7Y29udGVudDoiXGY3YTkifS5sYS1oZWFydGJlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjFlIn0ubGEtaGVsaWNvcHRlcjpiZWZvcmV7Y29udGVudDoiXGY1MzMifS5sYS1oaWdobGlnaHRlcjpiZWZvcmV7Y29udGVudDoiXGY1OTEifS5sYS1oaWtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNmVjIn0ubGEtaGlwcG86YmVmb3Jle2NvbnRlbnQ6IlxmNmVkIn0ubGEtaGlwczpiZWZvcmV7Y29udGVudDoiXGY0NTIifS5sYS1oaXJlLWEtaGVscGVyOmJlZm9yZXtjb250ZW50OiJcZjNiMCJ9LmxhLWhpc3Rvcnk6YmVmb3Jle2NvbnRlbnQ6IlxmMWRhIn0ubGEtaG9ja2V5LXB1Y2s6YmVmb3Jle2NvbnRlbnQ6IlxmNDUzIn0ubGEtaG9sbHktYmVycnk6YmVmb3Jle2NvbnRlbnQ6IlxmN2FhIn0ubGEtaG9tZTpiZWZvcmV7Y29udGVudDoiXGYwMTUifS5sYS1ob29saTpiZWZvcmV7Y29udGVudDoiXGY0MjcifS5sYS1ob3JuYmlsbDpiZWZvcmV7Y29udGVudDoiXGY1OTIifS5sYS1ob3JzZTpiZWZvcmV7Y29udGVudDoiXGY2ZjAifS5sYS1ob3JzZS1oZWFkOmJlZm9yZXtjb250ZW50OiJcZjdhYiJ9LmxhLWhvc3BpdGFsOmJlZm9yZXtjb250ZW50OiJcZjBmOCJ9LmxhLWhvc3BpdGFsLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0N2QifS5sYS1ob3NwaXRhbC1zeW1ib2w6YmVmb3Jle2NvbnRlbnQ6IlxmNDdlIn0ubGEtaG90LXR1YjpiZWZvcmV7Y29udGVudDoiXGY1OTMifS5sYS1ob3Rkb2c6YmVmb3Jle2NvbnRlbnQ6IlxmODBmIn0ubGEtaG90ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTk0In0ubGEtaG90amFyOmJlZm9yZXtjb250ZW50OiJcZjNiMSJ9LmxhLWhvdXJnbGFzczpiZWZvcmV7Y29udGVudDoiXGYyNTQifS5sYS1ob3VyZ2xhc3MtZW5kOmJlZm9yZXtjb250ZW50OiJcZjI1MyJ9LmxhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjI1MiJ9LmxhLWhvdXJnbGFzcy1zdGFydDpiZWZvcmV7Y29udGVudDoiXGYyNTEifS5sYS1ob3VzZS1kYW1hZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNmYxIn0ubGEtaG91eno6YmVmb3Jle2NvbnRlbnQ6IlxmMjdjIn0ubGEtaHJ5dm5pYTpiZWZvcmV7Y29udGVudDoiXGY2ZjIifS5sYS1odG1sNTpiZWZvcmV7Y29udGVudDoiXGYxM2IifS5sYS1odWJzcG90OmJlZm9yZXtjb250ZW50OiJcZjNiMiJ9LmxhLWktY3Vyc29yOmJlZm9yZXtjb250ZW50OiJcZjI0NiJ9LmxhLWljZS1jcmVhbTpiZWZvcmV7Y29udGVudDoiXGY4MTAifS5sYS1pY2ljbGVzOmJlZm9yZXtjb250ZW50OiJcZjdhZCJ9LmxhLWljb25zOmJlZm9yZXtjb250ZW50OiJcZjg2ZCJ9LmxhLWlkLWJhZGdlOmJlZm9yZXtjb250ZW50OiJcZjJjMSJ9LmxhLWlkLWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmMyIn0ubGEtaWQtY2FyZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDdmIn0ubGEtaWdsb286YmVmb3Jle2NvbnRlbnQ6IlxmN2FlIn0ubGEtaW1hZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDNlIn0ubGEtaW1hZ2VzOmJlZm9yZXtjb250ZW50OiJcZjMwMiJ9LmxhLWltZGI6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ4In0ubGEtaW5ib3g6YmVmb3Jle2NvbnRlbnQ6IlxmMDFjIn0ubGEtaW5kZW50OmJlZm9yZXtjb250ZW50OiJcZjAzYyJ9LmxhLWluZHVzdHJ5OmJlZm9yZXtjb250ZW50OiJcZjI3NSJ9LmxhLWluZmluaXR5OmJlZm9yZXtjb250ZW50OiJcZjUzNCJ9LmxhLWluZm86YmVmb3Jle2NvbnRlbnQ6IlxmMTI5In0ubGEtaW5mby1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDVhIn0ubGEtaW5zdGFncmFtOmJlZm9yZXtjb250ZW50OiJcZjE2ZCJ9LmxhLWludGVyY29tOmJlZm9yZXtjb250ZW50OiJcZjdhZiJ9LmxhLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZXtjb250ZW50OiJcZjI2YiJ9LmxhLWludmlzaW9uOmJlZm9yZXtjb250ZW50OiJcZjdiMCJ9LmxhLWlveGhvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMjA4In0ubGEtaXRhbGljOmJlZm9yZXtjb250ZW50OiJcZjAzMyJ9LmxhLWl0Y2gtaW86YmVmb3Jle2NvbnRlbnQ6IlxmODNhIn0ubGEtaXR1bmVzOmJlZm9yZXtjb250ZW50OiJcZjNiNCJ9LmxhLWl0dW5lcy1ub3RlOmJlZm9yZXtjb250ZW50OiJcZjNiNSJ9LmxhLWphdmE6YmVmb3Jle2NvbnRlbnQ6IlxmNGU0In0ubGEtamVkaTpiZWZvcmV7Y29udGVudDoiXGY2NjkifS5sYS1qZWRpLW9yZGVyOmJlZm9yZXtjb250ZW50OiJcZjUwZSJ9LmxhLWplbmtpbnM6YmVmb3Jle2NvbnRlbnQ6IlxmM2I2In0ubGEtamlyYTpiZWZvcmV7Y29udGVudDoiXGY3YjEifS5sYS1qb2dldDpiZWZvcmV7Y29udGVudDoiXGYzYjcifS5sYS1qb2ludDpiZWZvcmV7Y29udGVudDoiXGY1OTUifS5sYS1qb29tbGE6YmVmb3Jle2NvbnRlbnQ6IlxmMWFhIn0ubGEtam91cm5hbC13aGlsbHM6YmVmb3Jle2NvbnRlbnQ6IlxmNjZhIn0ubGEtanM6YmVmb3Jle2NvbnRlbnQ6IlxmM2I4In0ubGEtanMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjNiOSJ9LmxhLWpzZmlkZGxlOmJlZm9yZXtjb250ZW50OiJcZjFjYyJ9LmxhLWthYWJhOmJlZm9yZXtjb250ZW50OiJcZjY2YiJ9LmxhLWthZ2dsZTpiZWZvcmV7Y29udGVudDoiXGY1ZmEifS5sYS1rZXk6YmVmb3Jle2NvbnRlbnQ6IlxmMDg0In0ubGEta2V5YmFzZTpiZWZvcmV7Y29udGVudDoiXGY0ZjUifS5sYS1rZXlib2FyZDpiZWZvcmV7Y29udGVudDoiXGYxMWMifS5sYS1rZXljZG46YmVmb3Jle2NvbnRlbnQ6IlxmM2JhIn0ubGEta2hhbmRhOmJlZm9yZXtjb250ZW50OiJcZjY2ZCJ9LmxhLWtpY2tzdGFydGVyOmJlZm9yZXtjb250ZW50OiJcZjNiYiJ9LmxhLWtpY2tzdGFydGVyLWs6YmVmb3Jle2NvbnRlbnQ6IlxmM2JjIn0ubGEta2lzczpiZWZvcmV7Y29udGVudDoiXGY1OTYifS5sYS1raXNzLWJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTk3In0ubGEta2lzcy13aW5rLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZjU5OCJ9LmxhLWtpd2ktYmlyZDpiZWZvcmV7Y29udGVudDoiXGY1MzUifS5sYS1rb3J2dWU6YmVmb3Jle2NvbnRlbnQ6IlxmNDJmIn0ubGEtbGFuZG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxmNjZmIn0ubGEtbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWFiIn0ubGEtbGFwdG9wOmJlZm9yZXtjb250ZW50OiJcZjEwOSJ9LmxhLWxhcHRvcC1jb2RlOmJlZm9yZXtjb250ZW50OiJcZjVmYyJ9LmxhLWxhcHRvcC1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjgxMiJ9LmxhLWxhcmF2ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmM2JkIn0ubGEtbGFzdGZtOmJlZm9yZXtjb250ZW50OiJcZjIwMiJ9LmxhLWxhc3RmbS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMjAzIn0ubGEtbGF1Z2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTk5In0ubGEtbGF1Z2gtYmVhbTpiZWZvcmV7Y29udGVudDoiXGY1OWEifS5sYS1sYXVnaC1zcXVpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTliIn0ubGEtbGF1Z2gtd2luazpiZWZvcmV7Y29udGVudDoiXGY1OWMifS5sYS1sYXllci1ncm91cDpiZWZvcmV7Y29udGVudDoiXGY1ZmQifS5sYS1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjA2YyJ9LmxhLWxlYW5wdWI6YmVmb3Jle2NvbnRlbnQ6IlxmMjEyIn0ubGEtbGVtb246YmVmb3Jle2NvbnRlbnQ6IlxmMDk0In0ubGEtbGVzczpiZWZvcmV7Y29udGVudDoiXGY0MWQifS5sYS1sZXNzLXRoYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTM2In0ubGEtbGVzcy10aGFuLWVxdWFsOmJlZm9yZXtjb250ZW50OiJcZjUzNyJ9LmxhLWxldmVsLWRvd24tYWx0OmJlZm9yZXtjb250ZW50OiJcZjNiZSJ9LmxhLWxldmVsLXVwLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzYmYifS5sYS1saWZlLXJpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMWNkIn0ubGEtbGlnaHRidWxiOmJlZm9yZXtjb250ZW50OiJcZjBlYiJ9LmxhLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2MwIn0ubGEtbGluazpiZWZvcmV7Y29udGVudDoiXGYwYzEifS5sYS1saW5rZWRpbjpiZWZvcmV7Y29udGVudDoiXGYwOGMifS5sYS1saW5rZWRpbi1pbjpiZWZvcmV7Y29udGVudDoiXGYwZTEifS5sYS1saW5vZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMmI4In0ubGEtbGludXg6YmVmb3Jle2NvbnRlbnQ6IlxmMTdjIn0ubGEtbGlyYS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE5NSJ9LmxhLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDNhIn0ubGEtbGlzdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDIyIn0ubGEtbGlzdC1vbDpiZWZvcmV7Y29udGVudDoiXGYwY2IifS5sYS1saXN0LXVsOmJlZm9yZXtjb250ZW50OiJcZjBjYSJ9LmxhLWxvY2F0aW9uLWFycm93OmJlZm9yZXtjb250ZW50OiJcZjEyNCJ9LmxhLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDIzIn0ubGEtbG9jay1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjNjMSJ9LmxhLWxvbmctYXJyb3ctYWx0LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMzA5In0ubGEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYzMGEifS5sYS1sb25nLWFycm93LWFsdC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYzMGIifS5sYS1sb25nLWFycm93LWFsdC11cDpiZWZvcmV7Y29udGVudDoiXGYzMGMifS5sYS1sb3ctdmlzaW9uOmJlZm9yZXtjb250ZW50OiJcZjJhOCJ9LmxhLWx1Z2dhZ2UtY2FydDpiZWZvcmV7Y29udGVudDoiXGY1OWQifS5sYS1seWZ0OmJlZm9yZXtjb250ZW50OiJcZjNjMyJ9LmxhLW1hZ2VudG86YmVmb3Jle2NvbnRlbnQ6IlxmM2M0In0ubGEtbWFnaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMGQwIn0ubGEtbWFnbmV0OmJlZm9yZXtjb250ZW50OiJcZjA3NiJ9LmxhLW1haWwtYnVsazpiZWZvcmV7Y29udGVudDoiXGY2NzQifS5sYS1tYWlsY2hpbXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTllIn0ubGEtbWFsZTpiZWZvcmV7Y29udGVudDoiXGYxODMifS5sYS1tYW5kYWxvcmlhbjpiZWZvcmV7Y29udGVudDoiXGY1MGYifS5sYS1tYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMjc5In0ubGEtbWFwLW1hcmtlZDpiZWZvcmV7Y29udGVudDoiXGY1OWYifS5sYS1tYXAtbWFya2VkLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1YTAifS5sYS1tYXAtbWFya2VyOmJlZm9yZXtjb250ZW50OiJcZjA0MSJ9LmxhLW1hcC1tYXJrZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjNjNSJ9LmxhLW1hcC1waW46YmVmb3Jle2NvbnRlbnQ6IlxmMjc2In0ubGEtbWFwLXNpZ25zOmJlZm9yZXtjb250ZW50OiJcZjI3NyJ9LmxhLW1hcmtkb3duOmJlZm9yZXtjb250ZW50OiJcZjYwZiJ9LmxhLW1hcmtlcjpiZWZvcmV7Y29udGVudDoiXGY1YTEifS5sYS1tYXJzOmJlZm9yZXtjb250ZW50OiJcZjIyMiJ9LmxhLW1hcnMtZG91YmxlOmJlZm9yZXtjb250ZW50OiJcZjIyNyJ9LmxhLW1hcnMtc3Ryb2tlOmJlZm9yZXtjb250ZW50OiJcZjIyOSJ9LmxhLW1hcnMtc3Ryb2tlLWg6YmVmb3Jle2NvbnRlbnQ6IlxmMjJiIn0ubGEtbWFycy1zdHJva2UtdjpiZWZvcmV7Y29udGVudDoiXGYyMmEifS5sYS1tYXNrOmJlZm9yZXtjb250ZW50OiJcZjZmYSJ9LmxhLW1hc3RvZG9uOmJlZm9yZXtjb250ZW50OiJcZjRmNiJ9LmxhLW1heGNkbjpiZWZvcmV7Y29udGVudDoiXGYxMzYifS5sYS1tZGI6YmVmb3Jle2NvbnRlbnQ6IlxmOGNhIn0ubGEtbWVkYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNWEyIn0ubGEtbWVkYXBwczpiZWZvcmV7Y29udGVudDoiXGYzYzYifS5sYS1tZWRpdW06YmVmb3Jle2NvbnRlbnQ6IlxmMjNhIn0ubGEtbWVkaXVtLW06YmVmb3Jle2NvbnRlbnQ6IlxmM2M3In0ubGEtbWVka2l0OmJlZm9yZXtjb250ZW50OiJcZjBmYSJ9LmxhLW1lZHJ0OmJlZm9yZXtjb250ZW50OiJcZjNjOCJ9LmxhLW1lZXR1cDpiZWZvcmV7Y29udGVudDoiXGYyZTAifS5sYS1tZWdhcG9ydDpiZWZvcmV7Y29udGVudDoiXGY1YTMifS5sYS1tZWg6YmVmb3Jle2NvbnRlbnQ6IlxmMTFhIn0ubGEtbWVoLWJsYW5rOmJlZm9yZXtjb250ZW50OiJcZjVhNCJ9LmxhLW1laC1yb2xsaW5nLWV5ZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNWE1In0ubGEtbWVtb3J5OmJlZm9yZXtjb250ZW50OiJcZjUzOCJ9LmxhLW1lbmRlbGV5OmJlZm9yZXtjb250ZW50OiJcZjdiMyJ9LmxhLW1lbm9yYWg6YmVmb3Jle2NvbnRlbnQ6IlxmNjc2In0ubGEtbWVyY3VyeTpiZWZvcmV7Y29udGVudDoiXGYyMjMifS5sYS1tZXRlb3I6YmVmb3Jle2NvbnRlbnQ6IlxmNzUzIn0ubGEtbWljcm9jaGlwOmJlZm9yZXtjb250ZW50OiJcZjJkYiJ9LmxhLW1pY3JvcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTMwIn0ubGEtbWljcm9waG9uZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2M5In0ubGEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTM5In0ubGEtbWljcm9waG9uZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxMzEifS5sYS1taWNyb3Njb3BlOmJlZm9yZXtjb250ZW50OiJcZjYxMCJ9LmxhLW1pY3Jvc29mdDpiZWZvcmV7Y29udGVudDoiXGYzY2EifS5sYS1taW51czpiZWZvcmV7Y29udGVudDoiXGYwNjgifS5sYS1taW51cy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU2In0ubGEtbWludXMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE0NiJ9LmxhLW1pdHRlbjpiZWZvcmV7Y29udGVudDoiXGY3YjUifS5sYS1taXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2NiIn0ubGEtbWl4Y2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjg5In0ubGEtbWl6dW5pOmJlZm9yZXtjb250ZW50OiJcZjNjYyJ9LmxhLW1vYmlsZTpiZWZvcmV7Y29udGVudDoiXGYxMGIifS5sYS1tb2JpbGUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNjZCJ9LmxhLW1vZHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjg1In0ubGEtbW9uZXJvOmJlZm9yZXtjb250ZW50OiJcZjNkMCJ9LmxhLW1vbmV5LWJpbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ2In0ubGEtbW9uZXktYmlsbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2QxIn0ubGEtbW9uZXktYmlsbC13YXZlOmJlZm9yZXtjb250ZW50OiJcZjUzYSJ9LmxhLW1vbmV5LWJpbGwtd2F2ZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTNiIn0ubGEtbW9uZXktY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNTNjIn0ubGEtbW9uZXktY2hlY2stYWx0OmJlZm9yZXtjb250ZW50OiJcZjUzZCJ9LmxhLW1vbnVtZW50OmJlZm9yZXtjb250ZW50OiJcZjVhNiJ9LmxhLW1vb246YmVmb3Jle2NvbnRlbnQ6IlxmMTg2In0ubGEtbW9ydGFyLXBlc3RsZTpiZWZvcmV7Y29udGVudDoiXGY1YTcifS5sYS1tb3NxdWU6YmVmb3Jle2NvbnRlbnQ6IlxmNjc4In0ubGEtbW90b3JjeWNsZTpiZWZvcmV7Y29udGVudDoiXGYyMWMifS5sYS1tb3VudGFpbjpiZWZvcmV7Y29udGVudDoiXGY2ZmMifS5sYS1tb3VzZTpiZWZvcmV7Y29udGVudDoiXGY4Y2MifS5sYS1tb3VzZS1wb2ludGVyOmJlZm9yZXtjb250ZW50OiJcZjI0NSJ9LmxhLW11Zy1ob3Q6YmVmb3Jle2NvbnRlbnQ6IlxmN2I2In0ubGEtbXVzaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMDAxIn0ubGEtbmFwc3RlcjpiZWZvcmV7Y29udGVudDoiXGYzZDIifS5sYS1uZW9zOmJlZm9yZXtjb250ZW50OiJcZjYxMiJ9LmxhLW5ldHdvcmstd2lyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmZmIn0ubGEtbmV1dGVyOmJlZm9yZXtjb250ZW50OiJcZjIyYyJ9LmxhLW5ld3NwYXBlcjpiZWZvcmV7Y29udGVudDoiXGYxZWEifS5sYS1uaW1ibHI6YmVmb3Jle2NvbnRlbnQ6IlxmNWE4In0ubGEtbm9kZTpiZWZvcmV7Y29udGVudDoiXGY0MTkifS5sYS1ub2RlLWpzOmJlZm9yZXtjb250ZW50OiJcZjNkMyJ9LmxhLW5vdC1lcXVhbDpiZWZvcmV7Y29udGVudDoiXGY1M2UifS5sYS1ub3Rlcy1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjQ4MSJ9LmxhLW5wbTpiZWZvcmV7Y29udGVudDoiXGYzZDQifS5sYS1uczg6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q1In0ubGEtbnV0cml0aW9uaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q2In0ubGEtb2JqZWN0LWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0NyJ9LmxhLW9iamVjdC11bmdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0OCJ9LmxhLW9kbm9rbGFzc25pa2k6YmVmb3Jle2NvbnRlbnQ6IlxmMjYzIn0ubGEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMjY0In0ubGEtb2lsLWNhbjpiZWZvcmV7Y29udGVudDoiXGY2MTMifS5sYS1vbGQtcmVwdWJsaWM6YmVmb3Jle2NvbnRlbnQ6IlxmNTEwIn0ubGEtb206YmVmb3Jle2NvbnRlbnQ6IlxmNjc5In0ubGEtb3BlbmNhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjNkIn0ubGEtb3BlbmlkOmJlZm9yZXtjb250ZW50OiJcZjE5YiJ9LmxhLW9wZXJhOmJlZm9yZXtjb250ZW50OiJcZjI2YSJ9LmxhLW9wdGluLW1vbnN0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjNjIn0ubGEtb3JjaWQ6YmVmb3Jle2NvbnRlbnQ6IlxmOGQyIn0ubGEtb3NpOmJlZm9yZXtjb250ZW50OiJcZjQxYSJ9LmxhLW90dGVyOmJlZm9yZXtjb250ZW50OiJcZjcwMCJ9LmxhLW91dGRlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNiIn0ubGEtcGFnZTQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q3In0ubGEtcGFnZWxpbmVzOmJlZm9yZXtjb250ZW50OiJcZjE4YyJ9LmxhLXBhZ2VyOmJlZm9yZXtjb250ZW50OiJcZjgxNSJ9LmxhLXBhaW50LWJydXNoOmJlZm9yZXtjb250ZW50OiJcZjFmYyJ9LmxhLXBhaW50LXJvbGxlcjpiZWZvcmV7Y29udGVudDoiXGY1YWEifS5sYS1wYWxldHRlOmJlZm9yZXtjb250ZW50OiJcZjUzZiJ9LmxhLXBhbGZlZDpiZWZvcmV7Y29udGVudDoiXGYzZDgifS5sYS1wYWxsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDgyIn0ubGEtcGFwZXItcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ4In0ubGEtcGFwZXJjbGlwOmJlZm9yZXtjb250ZW50OiJcZjBjNiJ9LmxhLXBhcmFjaHV0ZS1ib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNGNkIn0ubGEtcGFyYWdyYXBoOmJlZm9yZXtjb250ZW50OiJcZjFkZCJ9LmxhLXBhcmtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNTQwIn0ubGEtcGFzc3BvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWFiIn0ubGEtcGFzdGFmYXJpYW5pc206YmVmb3Jle2NvbnRlbnQ6IlxmNjdiIn0ubGEtcGFzdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGVhIn0ubGEtcGF0cmVvbjpiZWZvcmV7Y29udGVudDoiXGYzZDkifS5sYS1wYXVzZTpiZWZvcmV7Y29udGVudDoiXGYwNGMifS5sYS1wYXVzZS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjhiIn0ubGEtcGF3OmJlZm9yZXtjb250ZW50OiJcZjFiMCJ9LmxhLXBheXBhbDpiZWZvcmV7Y29udGVudDoiXGYxZWQifS5sYS1wZWFjZTpiZWZvcmV7Y29udGVudDoiXGY2N2MifS5sYS1wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMzA0In0ubGEtcGVuLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzMDUifS5sYS1wZW4tZmFuY3k6YmVmb3Jle2NvbnRlbnQ6IlxmNWFjIn0ubGEtcGVuLW5pYjpiZWZvcmV7Y29udGVudDoiXGY1YWQifS5sYS1wZW4tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE0YiJ9LmxhLXBlbmNpbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzAzIn0ubGEtcGVuY2lsLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjVhZSJ9LmxhLXBlbm55LWFyY2FkZTpiZWZvcmV7Y29udGVudDoiXGY3MDQifS5sYS1wZW9wbGUtY2Fycnk6YmVmb3Jle2NvbnRlbnQ6IlxmNGNlIn0ubGEtcGVwcGVyLWhvdDpiZWZvcmV7Y29udGVudDoiXGY4MTYifS5sYS1wZXJjZW50OmJlZm9yZXtjb250ZW50OiJcZjI5NSJ9LmxhLXBlcmNlbnRhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNTQxIn0ubGEtcGVyaXNjb3BlOmJlZm9yZXtjb250ZW50OiJcZjNkYSJ9LmxhLXBlcnNvbi1ib290aDpiZWZvcmV7Y29udGVudDoiXGY3NTYifS5sYS1waGFicmljYXRvcjpiZWZvcmV7Y29udGVudDoiXGYzZGIifS5sYS1waG9lbml4LWZyYW1ld29yazpiZWZvcmV7Y29udGVudDoiXGYzZGMifS5sYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZXtjb250ZW50OiJcZjUxMSJ9LmxhLXBob25lOmJlZm9yZXtjb250ZW50OiJcZjA5NSJ9LmxhLXBob25lLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4NzkifS5sYS1waG9uZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYzZGQifS5sYS1waG9uZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDk4In0ubGEtcGhvbmUtc3F1YXJlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4N2IifS5sYS1waG9uZS12b2x1bWU6YmVmb3Jle2NvbnRlbnQ6IlxmMmEwIn0ubGEtcGhvdG8tdmlkZW86YmVmb3Jle2NvbnRlbnQ6IlxmODdjIn0ubGEtcGhwOmJlZm9yZXtjb250ZW50OiJcZjQ1NyJ9LmxhLXBpZWQtcGlwZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMmFlIn0ubGEtcGllZC1waXBlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWE4In0ubGEtcGllZC1waXBlci1oYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGU1In0ubGEtcGllZC1waXBlci1wcDpiZWZvcmV7Y29udGVudDoiXGYxYTcifS5sYS1waWdneS1iYW5rOmJlZm9yZXtjb250ZW50OiJcZjRkMyJ9LmxhLXBpbGxzOmJlZm9yZXtjb250ZW50OiJcZjQ4NCJ9LmxhLXBpbnRlcmVzdDpiZWZvcmV7Y29udGVudDoiXGYwZDIifS5sYS1waW50ZXJlc3QtcDpiZWZvcmV7Y29udGVudDoiXGYyMzEifS5sYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjBkMyJ9LmxhLXBpenphLXNsaWNlOmJlZm9yZXtjb250ZW50OiJcZjgxOCJ9LmxhLXBsYWNlLW9mLXdvcnNoaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNjdmIn0ubGEtcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDcyIn0ubGEtcGxhbmUtYXJyaXZhbDpiZWZvcmV7Y29udGVudDoiXGY1YWYifS5sYS1wbGFuZS1kZXBhcnR1cmU6YmVmb3Jle2NvbnRlbnQ6IlxmNWIwIn0ubGEtcGxheTpiZWZvcmV7Y29udGVudDoiXGYwNGIifS5sYS1wbGF5LWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxNDQifS5sYS1wbGF5c3RhdGlvbjpiZWZvcmV7Y29udGVudDoiXGYzZGYifS5sYS1wbHVnOmJlZm9yZXtjb250ZW50OiJcZjFlNiJ9LmxhLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDY3In0ubGEtcGx1cy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU1In0ubGEtcGx1cy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGZlIn0ubGEtcG9kY2FzdDpiZWZvcmV7Y29udGVudDoiXGYyY2UifS5sYS1wb2xsOmJlZm9yZXtjb250ZW50OiJcZjY4MSJ9LmxhLXBvbGwtaDpiZWZvcmV7Y29udGVudDoiXGY2ODIifS5sYS1wb286YmVmb3Jle2NvbnRlbnQ6IlxmMmZlIn0ubGEtcG9vLXN0b3JtOmJlZm9yZXtjb250ZW50OiJcZjc1YSJ9LmxhLXBvb3A6YmVmb3Jle2NvbnRlbnQ6IlxmNjE5In0ubGEtcG9ydHJhaXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2UwIn0ubGEtcG91bmQtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNTQifS5sYS1wb3dlci1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDExIn0ubGEtcHJheTpiZWZvcmV7Y29udGVudDoiXGY2ODMifS5sYS1wcmF5aW5nLWhhbmRzOmJlZm9yZXtjb250ZW50OiJcZjY4NCJ9LmxhLXByZXNjcmlwdGlvbjpiZWZvcmV7Y29udGVudDoiXGY1YjEifS5sYS1wcmVzY3JpcHRpb24tYm90dGxlOmJlZm9yZXtjb250ZW50OiJcZjQ4NSJ9LmxhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjQ4NiJ9LmxhLXByaW50OmJlZm9yZXtjb250ZW50OiJcZjAyZiJ9LmxhLXByb2NlZHVyZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNDg3In0ubGEtcHJvZHVjdC1odW50OmJlZm9yZXtjb250ZW50OiJcZjI4OCJ9LmxhLXByb2plY3QtZGlhZ3JhbTpiZWZvcmV7Y29udGVudDoiXGY1NDIifS5sYS1wdXNoZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2UxIn0ubGEtcHV6emxlLXBpZWNlOmJlZm9yZXtjb250ZW50OiJcZjEyZSJ9LmxhLXB5dGhvbjpiZWZvcmV7Y29udGVudDoiXGYzZTIifS5sYS1xcTpiZWZvcmV7Y29udGVudDoiXGYxZDYifS5sYS1xcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDI5In0ubGEtcXVlc3Rpb246YmVmb3Jle2NvbnRlbnQ6IlxmMTI4In0ubGEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1OSJ9LmxhLXF1aWRkaXRjaDpiZWZvcmV7Y29udGVudDoiXGY0NTgifS5sYS1xdWluc2NhcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNDU5In0ubGEtcXVvcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMmM0In0ubGEtcXVvdGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxMGQifS5sYS1xdW90ZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxMGUifS5sYS1xdXJhbjpiZWZvcmV7Y29udGVudDoiXGY2ODcifS5sYS1yLXByb2plY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNGY3In0ubGEtcmFkaWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjdiOSJ9LmxhLXJhZGlhdGlvbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2JhIn0ubGEtcmFpbmJvdzpiZWZvcmV7Y29udGVudDoiXGY3NWIifS5sYS1yYW5kb206YmVmb3Jle2NvbnRlbnQ6IlxmMDc0In0ubGEtcmFzcGJlcnJ5LXBpOmJlZm9yZXtjb250ZW50OiJcZjdiYiJ9LmxhLXJhdmVscnk6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ5In0ubGEtcmVhY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNDFiIn0ubGEtcmVhY3RldXJvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNzVkIn0ubGEtcmVhZG1lOmJlZm9yZXtjb250ZW50OiJcZjRkNSJ9LmxhLXJlYmVsOmJlZm9yZXtjb250ZW50OiJcZjFkMCJ9LmxhLXJlY2VpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTQzIn0ubGEtcmVjb3JkLXZpbnlsOmJlZm9yZXtjb250ZW50OiJcZjhkOSJ9LmxhLXJlY3ljbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI4In0ubGEtcmVkLXJpdmVyOmJlZm9yZXtjb250ZW50OiJcZjNlMyJ9LmxhLXJlZGRpdDpiZWZvcmV7Y29udGVudDoiXGYxYTEifS5sYS1yZWRkaXQtYWxpZW46YmVmb3Jle2NvbnRlbnQ6IlxmMjgxIn0ubGEtcmVkZGl0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxYTIifS5sYS1yZWRoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2JjIn0ubGEtcmVkbzpiZWZvcmV7Y29udGVudDoiXGYwMWUifS5sYS1yZWRvLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjkifS5sYS1yZWdpc3RlcmVkOmJlZm9yZXtjb250ZW50OiJcZjI1ZCJ9LmxhLXJlbW92ZS1mb3JtYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmODdkIn0ubGEtcmVucmVuOmJlZm9yZXtjb250ZW50OiJcZjE4YiJ9LmxhLXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZjNlNSJ9LmxhLXJlcGx5LWFsbDpiZWZvcmV7Y29udGVudDoiXGYxMjIifS5sYS1yZXBseWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U2In0ubGEtcmVwdWJsaWNhbjpiZWZvcmV7Y29udGVudDoiXGY3NWUifS5sYS1yZXNlYXJjaGdhdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGY4In0ubGEtcmVzb2x2aW5nOmJlZm9yZXtjb250ZW50OiJcZjNlNyJ9LmxhLXJlc3Ryb29tOmJlZm9yZXtjb250ZW50OiJcZjdiZCJ9LmxhLXJldHdlZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc5In0ubGEtcmV2OmJlZm9yZXtjb250ZW50OiJcZjViMiJ9LmxhLXJpYmJvbjpiZWZvcmV7Y29udGVudDoiXGY0ZDYifS5sYS1yaW5nOmJlZm9yZXtjb250ZW50OiJcZjcwYiJ9LmxhLXJvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE4In0ubGEtcm9ib3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ0In0ubGEtcm9ja2V0OmJlZm9yZXtjb250ZW50OiJcZjEzNSJ9LmxhLXJvY2tldGNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U4In0ubGEtcm9ja3JtczpiZWZvcmV7Y29udGVudDoiXGYzZTkifS5sYS1yb3V0ZTpiZWZvcmV7Y29udGVudDoiXGY0ZDcifS5sYS1yc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDllIn0ubGEtcnNzLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNDMifS5sYS1ydWJsZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1OCJ9LmxhLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjU0NSJ9LmxhLXJ1bGVyLWNvbWJpbmVkOmJlZm9yZXtjb250ZW50OiJcZjU0NiJ9LmxhLXJ1bGVyLWhvcml6b250YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ3In0ubGEtcnVsZXItdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ4In0ubGEtcnVubmluZzpiZWZvcmV7Y29udGVudDoiXGY3MGMifS5sYS1ydXBlZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1NiJ9LmxhLXNhZC1jcnk6YmVmb3Jle2NvbnRlbnQ6IlxmNWIzIn0ubGEtc2FkLXRlYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWI0In0ubGEtc2FmYXJpOmJlZm9yZXtjb250ZW50OiJcZjI2NyJ9LmxhLXNhbGVzZm9yY2U6YmVmb3Jle2NvbnRlbnQ6IlxmODNiIn0ubGEtc2FzczpiZWZvcmV7Y29udGVudDoiXGY0MWUifS5sYS1zYXRlbGxpdGU6YmVmb3Jle2NvbnRlbnQ6IlxmN2JmIn0ubGEtc2F0ZWxsaXRlLWRpc2g6YmVmb3Jle2NvbnRlbnQ6IlxmN2MwIn0ubGEtc2F2ZTpiZWZvcmV7Y29udGVudDoiXGYwYzcifS5sYS1zY2hsaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2VhIn0ubGEtc2Nob29sOmJlZm9yZXtjb250ZW50OiJcZjU0OSJ9LmxhLXNjcmV3ZHJpdmVyOmJlZm9yZXtjb250ZW50OiJcZjU0YSJ9LmxhLXNjcmliZDpiZWZvcmV7Y29udGVudDoiXGYyOGEifS5sYS1zY3JvbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNzBlIn0ubGEtc2QtY2FyZDpiZWZvcmV7Y29udGVudDoiXGY3YzIifS5sYS1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDAyIn0ubGEtc2VhcmNoLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2ODgifS5sYS1zZWFyY2gtbG9jYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNjg5In0ubGEtc2VhcmNoLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjAxMCJ9LmxhLXNlYXJjaC1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjAwZSJ9LmxhLXNlYXJjaGVuZ2luOmJlZm9yZXtjb250ZW50OiJcZjNlYiJ9LmxhLXNlZWRsaW5nOmJlZm9yZXtjb250ZW50OiJcZjRkOCJ9LmxhLXNlbGxjYXN0OmJlZm9yZXtjb250ZW50OiJcZjJkYSJ9LmxhLXNlbGxzeTpiZWZvcmV7Y29udGVudDoiXGYyMTMifS5sYS1zZXJ2ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjMzIn0ubGEtc2VydmljZXN0YWNrOmJlZm9yZXtjb250ZW50OiJcZjNlYyJ9LmxhLXNoYXBlczpiZWZvcmV7Y29udGVudDoiXGY2MWYifS5sYS1zaGFyZTpiZWZvcmV7Y29udGVudDoiXGYwNjQifS5sYS1zaGFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWUwIn0ubGEtc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxZTEifS5sYS1zaGFyZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRkIn0ubGEtc2hla2VsLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMjBiIn0ubGEtc2hpZWxkLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzZWQifS5sYS1zaGlwOmJlZm9yZXtjb250ZW50OiJcZjIxYSJ9LmxhLXNoaXBwaW5nLWZhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNDhiIn0ubGEtc2hpcnRzaW5idWxrOmJlZm9yZXtjb250ZW50OiJcZjIxNCJ9LmxhLXNob2UtcHJpbnRzOmJlZm9yZXtjb250ZW50OiJcZjU0YiJ9LmxhLXNob3BwaW5nLWJhZzpiZWZvcmV7Y29udGVudDoiXGYyOTAifS5sYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjkxIn0ubGEtc2hvcHBpbmctY2FydDpiZWZvcmV7Y29udGVudDoiXGYwN2EifS5sYS1zaG9wd2FyZTpiZWZvcmV7Y29udGVudDoiXGY1YjUifS5sYS1zaG93ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMmNjIn0ubGEtc2h1dHRsZS12YW46YmVmb3Jle2NvbnRlbnQ6IlxmNWI2In0ubGEtc2lnbjpiZWZvcmV7Y29udGVudDoiXGY0ZDkifS5sYS1zaWduLWluLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjYifS5sYS1zaWduLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OiJcZjJhNyJ9LmxhLXNpZ24tb3V0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjUifS5sYS1zaWduYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMDEyIn0ubGEtc2lnbmF0dXJlOmJlZm9yZXtjb250ZW50OiJcZjViNyJ9LmxhLXNpbS1jYXJkOmJlZm9yZXtjb250ZW50OiJcZjdjNCJ9LmxhLXNpbXBseWJ1aWx0OmJlZm9yZXtjb250ZW50OiJcZjIxNSJ9LmxhLXNpc3RyaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2VlIn0ubGEtc2l0ZW1hcDpiZWZvcmV7Y29udGVudDoiXGYwZTgifS5sYS1zaXRoOmJlZm9yZXtjb250ZW50OiJcZjUxMiJ9LmxhLXNrYXRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmN2M1In0ubGEtc2tldGNoOmJlZm9yZXtjb250ZW50OiJcZjdjNiJ9LmxhLXNraWluZzpiZWZvcmV7Y29udGVudDoiXGY3YzkifS5sYS1za2lpbmctbm9yZGljOmJlZm9yZXtjb250ZW50OiJcZjdjYSJ9LmxhLXNrdWxsOmJlZm9yZXtjb250ZW50OiJcZjU0YyJ9LmxhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNzE0In0ubGEtc2t5YXRsYXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjE2In0ubGEtc2t5cGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTdlIn0ubGEtc2xhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMTk4In0ubGEtc2xhY2staGFzaDpiZWZvcmV7Y29udGVudDoiXGYzZWYifS5sYS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY3MTUifS5sYS1zbGVpZ2g6YmVmb3Jle2NvbnRlbnQ6IlxmN2NjIn0ubGEtc2xpZGVycy1oOmJlZm9yZXtjb250ZW50OiJcZjFkZSJ9LmxhLXNsaWRlc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWU3In0ubGEtc21pbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTE4In0ubGEtc21pbGUtYmVhbTpiZWZvcmV7Y29udGVudDoiXGY1YjgifS5sYS1zbWlsZS13aW5rOmJlZm9yZXtjb250ZW50OiJcZjRkYSJ9LmxhLXNtb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNzVmIn0ubGEtc21va2luZzpiZWZvcmV7Y29udGVudDoiXGY0OGQifS5sYS1zbW9raW5nLWJhbjpiZWZvcmV7Y29udGVudDoiXGY1NGQifS5sYS1zbXM6YmVmb3Jle2NvbnRlbnQ6IlxmN2NkIn0ubGEtc25hcGNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmFiIn0ubGEtc25hcGNoYXQtZ2hvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmFjIn0ubGEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjJhZCJ9LmxhLXNub3dib2FyZGluZzpiZWZvcmV7Y29udGVudDoiXGY3Y2UifS5sYS1zbm93Zmxha2U6YmVmb3Jle2NvbnRlbnQ6IlxmMmRjIn0ubGEtc25vd21hbjpiZWZvcmV7Y29udGVudDoiXGY3ZDAifS5sYS1zbm93cGxvdzpiZWZvcmV7Y29udGVudDoiXGY3ZDIifS5sYS1zb2NrczpiZWZvcmV7Y29udGVudDoiXGY2OTYifS5sYS1zb2xhci1wYW5lbDpiZWZvcmV7Y29udGVudDoiXGY1YmEifS5sYS1zb3J0OmJlZm9yZXtjb250ZW50OiJcZjBkYyJ9LmxhLXNvcnQtYWxwaGEtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNWQifS5sYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZXtjb250ZW50OiJcZjg4MSJ9LmxhLXNvcnQtYWxwaGEtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTVlIn0ubGEtc29ydC1hbHBoYS11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODgyIn0ubGEtc29ydC1hbW91bnQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNjAifS5sYS1zb3J0LWFtb3VudC1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODQifS5sYS1zb3J0LWFtb3VudC11cDpiZWZvcmV7Y29udGVudDoiXGYxNjEifS5sYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODg1In0ubGEtc29ydC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBkZCJ9LmxhLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE2MiJ9LmxhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODYifS5sYS1zb3J0LW51bWVyaWMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTYzIn0ubGEtc29ydC1udW1lcmljLXVwLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODcifS5sYS1zb3J0LXVwOmJlZm9yZXtjb250ZW50OiJcZjBkZSJ9LmxhLXNvdW5kY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWJlIn0ubGEtc291cmNldHJlZTpiZWZvcmV7Y29udGVudDoiXGY3ZDMifS5sYS1zcGE6YmVmb3Jle2NvbnRlbnQ6IlxmNWJiIn0ubGEtc3BhY2Utc2h1dHRsZTpiZWZvcmV7Y29udGVudDoiXGYxOTcifS5sYS1zcGVha2FwOmJlZm9yZXtjb250ZW50OiJcZjNmMyJ9LmxhLXNwZWFrZXItZGVjazpiZWZvcmV7Y29udGVudDoiXGY4M2MifS5sYS1zcGVsbC1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY4OTEifS5sYS1zcGlkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzE3In0ubGEtc3Bpbm5lcjpiZWZvcmV7Y29udGVudDoiXGYxMTAifS5sYS1zcGxvdGNoOmJlZm9yZXtjb250ZW50OiJcZjViYyJ9LmxhLXNwb3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMWJjIn0ubGEtc3ByYXktY2FuOmJlZm9yZXtjb250ZW50OiJcZjViZCJ9LmxhLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYwYzgifS5sYS1zcXVhcmUtZnVsbDpiZWZvcmV7Y29udGVudDoiXGY0NWMifS5sYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjk4In0ubGEtc3F1YXJlc3BhY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNWJlIn0ubGEtc3RhY2stZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMThkIn0ubGEtc3RhY2stb3ZlcmZsb3c6YmVmb3Jle2NvbnRlbnQ6IlxmMTZjIn0ubGEtc3RhY2twYXRoOmJlZm9yZXtjb250ZW50OiJcZjg0MiJ9LmxhLXN0YW1wOmJlZm9yZXtjb250ZW50OiJcZjViZiJ9LmxhLXN0YXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA1In0ubGEtc3Rhci1hbmQtY3Jlc2NlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjk5In0ubGEtc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjA4OSJ9LmxhLXN0YXItaGFsZi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWMwIn0ubGEtc3Rhci1vZi1kYXZpZDpiZWZvcmV7Y29udGVudDoiXGY2OWEifS5sYS1zdGFyLW9mLWxpZmU6YmVmb3Jle2NvbnRlbnQ6IlxmNjIxIn0ubGEtc3RheWxpbmtlZDpiZWZvcmV7Y29udGVudDoiXGYzZjUifS5sYS1zdGVhbTpiZWZvcmV7Y29udGVudDoiXGYxYjYifS5sYS1zdGVhbS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI3In0ubGEtc3RlYW0tc3ltYm9sOmJlZm9yZXtjb250ZW50OiJcZjNmNiJ9LmxhLXN0ZXAtYmFja3dhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQ4In0ubGEtc3RlcC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA1MSJ9LmxhLXN0ZXRob3Njb3BlOmJlZm9yZXtjb250ZW50OiJcZjBmMSJ9LmxhLXN0aWNrZXItbXVsZTpiZWZvcmV7Y29udGVudDoiXGYzZjcifS5sYS1zdGlja3ktbm90ZTpiZWZvcmV7Y29udGVudDoiXGYyNDkifS5sYS1zdG9wOmJlZm9yZXtjb250ZW50OiJcZjA0ZCJ9LmxhLXN0b3AtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjI4ZCJ9LmxhLXN0b3B3YXRjaDpiZWZvcmV7Y29udGVudDoiXGYyZjIifS5sYS1zdG9yZTpiZWZvcmV7Y29udGVudDoiXGY1NGUifS5sYS1zdG9yZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTRmIn0ubGEtc3RyYXZhOmJlZm9yZXtjb250ZW50OiJcZjQyOCJ9LmxhLXN0cmVhbTpiZWZvcmV7Y29udGVudDoiXGY1NTAifS5sYS1zdHJlZXQtdmlldzpiZWZvcmV7Y29udGVudDoiXGYyMWQifS5sYS1zdHJpa2V0aHJvdWdoOmJlZm9yZXtjb250ZW50OiJcZjBjYyJ9LmxhLXN0cmlwZTpiZWZvcmV7Y29udGVudDoiXGY0MjkifS5sYS1zdHJpcGUtczpiZWZvcmV7Y29udGVudDoiXGY0MmEifS5sYS1zdHJvb3B3YWZlbDpiZWZvcmV7Y29udGVudDoiXGY1NTEifS5sYS1zdHVkaW92aW5hcmk6YmVmb3Jle2NvbnRlbnQ6IlxmM2Y4In0ubGEtc3R1bWJsZXVwb246YmVmb3Jle2NvbnRlbnQ6IlxmMWE0In0ubGEtc3R1bWJsZXVwb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjFhMyJ9LmxhLXN1YnNjcmlwdDpiZWZvcmV7Y29udGVudDoiXGYxMmMifS5sYS1zdWJ3YXk6YmVmb3Jle2NvbnRlbnQ6IlxmMjM5In0ubGEtc3VpdGNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGYyIn0ubGEtc3VpdGNhc2Utcm9sbGluZzpiZWZvcmV7Y29udGVudDoiXGY1YzEifS5sYS1zdW46YmVmb3Jle2NvbnRlbnQ6IlxmMTg1In0ubGEtc3VwZXJwb3dlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMmRkIn0ubGEtc3VwZXJzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTJiIn0ubGEtc3VwcGxlOmJlZm9yZXtjb250ZW50OiJcZjNmOSJ9LmxhLXN1cnByaXNlOmJlZm9yZXtjb250ZW50OiJcZjVjMiJ9LmxhLXN1c2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q2In0ubGEtc3dhdGNoYm9vazpiZWZvcmV7Y29udGVudDoiXGY1YzMifS5sYS1zd2lmdDpiZWZvcmV7Y29udGVudDoiXGY4ZTEifS5sYS1zd2ltbWVyOmJlZm9yZXtjb250ZW50OiJcZjVjNCJ9LmxhLXN3aW1taW5nLXBvb2w6YmVmb3Jle2NvbnRlbnQ6IlxmNWM1In0ubGEtc3ltZm9ueTpiZWZvcmV7Y29udGVudDoiXGY4M2QifS5sYS1zeW5hZ29ndWU6YmVmb3Jle2NvbnRlbnQ6IlxmNjliIn0ubGEtc3luYzpiZWZvcmV7Y29udGVudDoiXGYwMjEifS5sYS1zeW5jLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjEifS5sYS1zeXJpbmdlOmJlZm9yZXtjb250ZW50OiJcZjQ4ZSJ9LmxhLXRhYmxlOmJlZm9yZXtjb250ZW50OiJcZjBjZSJ9LmxhLXRhYmxlLXRlbm5pczpiZWZvcmV7Y29udGVudDoiXGY0NWQifS5sYS10YWJsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTBhIn0ubGEtdGFibGV0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYzZmEifS5sYS10YWJsZXRzOmJlZm9yZXtjb250ZW50OiJcZjQ5MCJ9LmxhLXRhY2hvbWV0ZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjNmZCJ9LmxhLXRhZzpiZWZvcmV7Y29udGVudDoiXGYwMmIifS5sYS10YWdzOmJlZm9yZXtjb250ZW50OiJcZjAyYyJ9LmxhLXRhcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGRiIn0ubGEtdGFza3M6YmVmb3Jle2NvbnRlbnQ6IlxmMGFlIn0ubGEtdGF4aTpiZWZvcmV7Y29udGVudDoiXGYxYmEifS5sYS10ZWFtc3BlYWs6YmVmb3Jle2NvbnRlbnQ6IlxmNGY5In0ubGEtdGVldGg6YmVmb3Jle2NvbnRlbnQ6IlxmNjJlIn0ubGEtdGVldGgtb3BlbjpiZWZvcmV7Y29udGVudDoiXGY2MmYifS5sYS10ZWxlZ3JhbTpiZWZvcmV7Y29udGVudDoiXGYyYzYifS5sYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmV7Y29udGVudDoiXGYzZmUifS5sYS10ZW1wZXJhdHVyZS1oaWdoOmJlZm9yZXtjb250ZW50OiJcZjc2OSJ9LmxhLXRlbXBlcmF0dXJlLWxvdzpiZWZvcmV7Y29udGVudDoiXGY3NmIifS5sYS10ZW5jZW50LXdlaWJvOmJlZm9yZXtjb250ZW50OiJcZjFkNSJ9LmxhLXRlbmdlOmJlZm9yZXtjb250ZW50OiJcZjdkNyJ9LmxhLXRlcm1pbmFsOmJlZm9yZXtjb250ZW50OiJcZjEyMCJ9LmxhLXRleHQtaGVpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjAzNCJ9LmxhLXRleHQtd2lkdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMDM1In0ubGEtdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMDBhIn0ubGEtdGgtbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDA5In0ubGEtdGgtbGlzdDpiZWZvcmV7Y29udGVudDoiXGYwMGIifS5sYS10aGUtcmVkLXlldGk6YmVmb3Jle2NvbnRlbnQ6IlxmNjlkIn0ubGEtdGhlYXRlci1tYXNrczpiZWZvcmV7Y29udGVudDoiXGY2MzAifS5sYS10aGVtZWNvOmJlZm9yZXtjb250ZW50OiJcZjVjNiJ9LmxhLXRoZW1laXNsZTpiZWZvcmV7Y29udGVudDoiXGYyYjIifS5sYS10aGVybW9tZXRlcjpiZWZvcmV7Y29udGVudDoiXGY0OTEifS5sYS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGYyY2IifS5sYS10aGVybW9tZXRlci1mdWxsOmJlZm9yZXtjb250ZW50OiJcZjJjNyJ9LmxhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3Jle2NvbnRlbnQ6IlxmMmM5In0ubGEtdGhlcm1vbWV0ZXItcXVhcnRlcjpiZWZvcmV7Y29udGVudDoiXGYyY2EifS5sYS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmV7Y29udGVudDoiXGYyYzgifS5sYS10aGluay1wZWFrczpiZWZvcmV7Y29udGVudDoiXGY3MzEifS5sYS10aHVtYnMtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNjUifS5sYS10aHVtYnMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTY0In0ubGEtdGh1bWJ0YWNrOmJlZm9yZXtjb250ZW50OiJcZjA4ZCJ9LmxhLXRpY2tldC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2ZmIn0ubGEtdGltZXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDBkIn0ubGEtdGltZXMtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1NyJ9LmxhLXRpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQzIn0ubGEtdGludC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY1YzcifS5sYS10aXJlZDpiZWZvcmV7Y29udGVudDoiXGY1YzgifS5sYS10b2dnbGUtb2ZmOmJlZm9yZXtjb250ZW50OiJcZjIwNCJ9LmxhLXRvZ2dsZS1vbjpiZWZvcmV7Y29udGVudDoiXGYyMDUifS5sYS10b2lsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q4In0ubGEtdG9pbGV0LXBhcGVyOmJlZm9yZXtjb250ZW50OiJcZjcxZSJ9LmxhLXRvb2xib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNTUyIn0ubGEtdG9vbHM6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q5In0ubGEtdG9vdGg6YmVmb3Jle2NvbnRlbnQ6IlxmNWM5In0ubGEtdG9yYWg6YmVmb3Jle2NvbnRlbnQ6IlxmNmEwIn0ubGEtdG9yaWktZ2F0ZTpiZWZvcmV7Y29udGVudDoiXGY2YTEifS5sYS10cmFjdG9yOmJlZm9yZXtjb250ZW50OiJcZjcyMiJ9LmxhLXRyYWRlLWZlZGVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNTEzIn0ubGEtdHJhZGVtYXJrOmJlZm9yZXtjb250ZW50OiJcZjI1YyJ9LmxhLXRyYWZmaWMtbGlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjM3In0ubGEtdHJhaW46YmVmb3Jle2NvbnRlbnQ6IlxmMjM4In0ubGEtdHJhbTpiZWZvcmV7Y29udGVudDoiXGY3ZGEifS5sYS10cmFuc2dlbmRlcjpiZWZvcmV7Y29udGVudDoiXGYyMjQifS5sYS10cmFuc2dlbmRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjI1In0ubGEtdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWY4In0ubGEtdHJhc2gtYWx0OmJlZm9yZXtjb250ZW50OiJcZjJlZCJ9LmxhLXRyYXNoLXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmODI5In0ubGEtdHJhc2gtcmVzdG9yZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODJhIn0ubGEtdHJlZTpiZWZvcmV7Y29udGVudDoiXGYxYmIifS5sYS10cmVsbG86YmVmb3Jle2NvbnRlbnQ6IlxmMTgxIn0ubGEtdHJpcGFkdmlzb3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjYyIn0ubGEtdHJvcGh5OmJlZm9yZXtjb250ZW50OiJcZjA5MSJ9LmxhLXRydWNrOmJlZm9yZXtjb250ZW50OiJcZjBkMSJ9LmxhLXRydWNrLWxvYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGRlIn0ubGEtdHJ1Y2stbW9uc3RlcjpiZWZvcmV7Y29udGVudDoiXGY2M2IifS5sYS10cnVjay1tb3Zpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGRmIn0ubGEtdHJ1Y2stcGlja3VwOmJlZm9yZXtjb250ZW50OiJcZjYzYyJ9LmxhLXRzaGlydDpiZWZvcmV7Y29udGVudDoiXGY1NTMifS5sYS10dHk6YmVmb3Jle2NvbnRlbnQ6IlxmMWU0In0ubGEtdHVtYmxyOmJlZm9yZXtjb250ZW50OiJcZjE3MyJ9LmxhLXR1bWJsci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTc0In0ubGEtdHY6YmVmb3Jle2NvbnRlbnQ6IlxmMjZjIn0ubGEtdHdpdGNoOmJlZm9yZXtjb250ZW50OiJcZjFlOCJ9LmxhLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDk5In0ubGEtdHdpdHRlci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDgxIn0ubGEtdHlwbzM6YmVmb3Jle2NvbnRlbnQ6IlxmNDJiIn0ubGEtdWJlcjpiZWZvcmV7Y29udGVudDoiXGY0MDIifS5sYS11YnVudHU6YmVmb3Jle2NvbnRlbnQ6IlxmN2RmIn0ubGEtdWlraXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDAzIn0ubGEtdW1icmFjbzpiZWZvcmV7Y29udGVudDoiXGY4ZTgifS5sYS11bWJyZWxsYTpiZWZvcmV7Y29udGVudDoiXGYwZTkifS5sYS11bWJyZWxsYS1iZWFjaDpiZWZvcmV7Y29udGVudDoiXGY1Y2EifS5sYS11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNkIn0ubGEtdW5kbzpiZWZvcmV7Y29udGVudDoiXGYwZTIifS5sYS11bmRvLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZWEifS5sYS11bmlyZWdpc3RyeTpiZWZvcmV7Y29udGVudDoiXGY0MDQifS5sYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZXtjb250ZW50OiJcZjI5YSJ9LmxhLXVuaXZlcnNpdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMTljIn0ubGEtdW5saW5rOmJlZm9yZXtjb250ZW50OiJcZjEyNyJ9LmxhLXVubG9jazpiZWZvcmV7Y29udGVudDoiXGYwOWMifS5sYS11bmxvY2stYWx0OmJlZm9yZXtjb250ZW50OiJcZjEzZSJ9LmxhLXVudGFwcGQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDA1In0ubGEtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjA5MyJ9LmxhLXVwczpiZWZvcmV7Y29udGVudDoiXGY3ZTAifS5sYS11c2I6YmVmb3Jle2NvbnRlbnQ6IlxmMjg3In0ubGEtdXNlcjpiZWZvcmV7Y29udGVudDoiXGYwMDcifS5sYS11c2VyLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0MDYifS5sYS11c2VyLWFsdC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY0ZmEifS5sYS11c2VyLWFzdHJvbmF1dDpiZWZvcmV7Y29udGVudDoiXGY0ZmIifS5sYS11c2VyLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjRmYyJ9LmxhLXVzZXItY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjJiZCJ9LmxhLXVzZXItY2xvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNGZkIn0ubGEtdXNlci1jb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNGZlIn0ubGEtdXNlci1lZGl0OmJlZm9yZXtjb250ZW50OiJcZjRmZiJ9LmxhLXVzZXItZnJpZW5kczpiZWZvcmV7Y29udGVudDoiXGY1MDAifS5sYS11c2VyLWdyYWR1YXRlOmJlZm9yZXtjb250ZW50OiJcZjUwMSJ9LmxhLXVzZXItaW5qdXJlZDpiZWZvcmV7Y29udGVudDoiXGY3MjgifS5sYS11c2VyLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNTAyIn0ubGEtdXNlci1tZDpiZWZvcmV7Y29udGVudDoiXGYwZjAifS5sYS11c2VyLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjUwMyJ9LmxhLXVzZXItbmluamE6YmVmb3Jle2NvbnRlbnQ6IlxmNTA0In0ubGEtdXNlci1udXJzZTpiZWZvcmV7Y29udGVudDoiXGY4MmYifS5sYS11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjM0In0ubGEtdXNlci1zZWNyZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjFiIn0ubGEtdXNlci1zaGllbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTA1In0ubGEtdXNlci1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY1MDYifS5sYS11c2VyLXRhZzpiZWZvcmV7Y29udGVudDoiXGY1MDcifS5sYS11c2VyLXRpZTpiZWZvcmV7Y29udGVudDoiXGY1MDgifS5sYS11c2VyLXRpbWVzOmJlZm9yZXtjb250ZW50OiJcZjIzNSJ9LmxhLXVzZXJzOmJlZm9yZXtjb250ZW50OiJcZjBjMCJ9LmxhLXVzZXJzLWNvZzpiZWZvcmV7Y29udGVudDoiXGY1MDkifS5sYS11c3BzOmJlZm9yZXtjb250ZW50OiJcZjdlMSJ9LmxhLXVzc3VubmFoOmJlZm9yZXtjb250ZW50OiJcZjQwNyJ9LmxhLXV0ZW5zaWwtc3Bvb246YmVmb3Jle2NvbnRlbnQ6IlxmMmU1In0ubGEtdXRlbnNpbHM6YmVmb3Jle2NvbnRlbnQ6IlxmMmU3In0ubGEtdmFhZGluOmJlZm9yZXtjb250ZW50OiJcZjQwOCJ9LmxhLXZlY3Rvci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNWNiIn0ubGEtdmVudXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjIxIn0ubGEtdmVudXMtZG91YmxlOmJlZm9yZXtjb250ZW50OiJcZjIyNiJ9LmxhLXZlbnVzLW1hcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjI4In0ubGEtdmlhY29pbjpiZWZvcmV7Y29udGVudDoiXGYyMzcifS5sYS12aWFkZW86YmVmb3Jle2NvbnRlbnQ6IlxmMmE5In0ubGEtdmlhZGVvLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYyYWEifS5sYS12aWFsOmJlZm9yZXtjb250ZW50OiJcZjQ5MiJ9LmxhLXZpYWxzOmJlZm9yZXtjb250ZW50OiJcZjQ5MyJ9LmxhLXZpYmVyOmJlZm9yZXtjb250ZW50OiJcZjQwOSJ9LmxhLXZpZGVvOmJlZm9yZXtjb250ZW50OiJcZjAzZCJ9LmxhLXZpZGVvLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjRlMiJ9LmxhLXZpaGFyYTpiZWZvcmV7Y29udGVudDoiXGY2YTcifS5sYS12aW1lbzpiZWZvcmV7Y29udGVudDoiXGY0MGEifS5sYS12aW1lby1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTk0In0ubGEtdmltZW8tdjpiZWZvcmV7Y29udGVudDoiXGYyN2QifS5sYS12aW5lOmJlZm9yZXtjb250ZW50OiJcZjFjYSJ9LmxhLXZrOmJlZm9yZXtjb250ZW50OiJcZjE4OSJ9LmxhLXZudjpiZWZvcmV7Y29udGVudDoiXGY0MGIifS5sYS12b2ljZW1haWw6YmVmb3Jle2NvbnRlbnQ6IlxmODk3In0ubGEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZXtjb250ZW50OiJcZjQ1ZiJ9LmxhLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjAyNyJ9LmxhLXZvbHVtZS1tdXRlOmJlZm9yZXtjb250ZW50OiJcZjZhOSJ9LmxhLXZvbHVtZS1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDI2In0ubGEtdm9sdW1lLXVwOmJlZm9yZXtjb250ZW50OiJcZjAyOCJ9LmxhLXZvdGUteWVhOmJlZm9yZXtjb250ZW50OiJcZjc3MiJ9LmxhLXZyLWNhcmRib2FyZDpiZWZvcmV7Y29udGVudDoiXGY3MjkifS5sYS12dWVqczpiZWZvcmV7Y29udGVudDoiXGY0MWYifS5sYS13YWxraW5nOmJlZm9yZXtjb250ZW50OiJcZjU1NCJ9LmxhLXdhbGxldDpiZWZvcmV7Y29udGVudDoiXGY1NTUifS5sYS13YXJlaG91c2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDk0In0ubGEtd2F0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzczIn0ubGEtd2F2ZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmODNlIn0ubGEtd2F6ZTpiZWZvcmV7Y29udGVudDoiXGY4M2YifS5sYS13ZWVibHk6YmVmb3Jle2NvbnRlbnQ6IlxmNWNjIn0ubGEtd2VpYm86YmVmb3Jle2NvbnRlbnQ6IlxmMThhIn0ubGEtd2VpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjQ5NiJ9LmxhLXdlaWdodC1oYW5naW5nOmJlZm9yZXtjb250ZW50OiJcZjVjZCJ9LmxhLXdlaXhpbjpiZWZvcmV7Y29udGVudDoiXGYxZDcifS5sYS13aGF0c2FwcDpiZWZvcmV7Y29udGVudDoiXGYyMzIifS5sYS13aGF0c2FwcC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNDBjIn0ubGEtd2hlZWxjaGFpcjpiZWZvcmV7Y29udGVudDoiXGYxOTMifS5sYS13aG1jczpiZWZvcmV7Y29udGVudDoiXGY0MGQifS5sYS13aWZpOmJlZm9yZXtjb250ZW50OiJcZjFlYiJ9LmxhLXdpa2lwZWRpYS13OmJlZm9yZXtjb250ZW50OiJcZjI2NiJ9LmxhLXdpbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNzJlIn0ubGEtd2luZG93LWNsb3NlOmJlZm9yZXtjb250ZW50OiJcZjQxMCJ9LmxhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmV7Y29udGVudDoiXGYyZDAifS5sYS13aW5kb3ctbWluaW1pemU6YmVmb3Jle2NvbnRlbnQ6IlxmMmQxIn0ubGEtd2luZG93LXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMmQyIn0ubGEtd2luZG93czpiZWZvcmV7Y29udGVudDoiXGYxN2EifS5sYS13aW5lLWJvdHRsZTpiZWZvcmV7Y29udGVudDoiXGY3MmYifS5sYS13aW5lLWdsYXNzOmJlZm9yZXtjb250ZW50OiJcZjRlMyJ9LmxhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjVjZSJ9LmxhLXdpeDpiZWZvcmV7Y29udGVudDoiXGY1Y2YifS5sYS13aXphcmRzLW9mLXRoZS1jb2FzdDpiZWZvcmV7Y29udGVudDoiXGY3MzAifS5sYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZXtjb250ZW50OiJcZjUxNCJ9LmxhLXdvbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1OSJ9LmxhLXdvcmRwcmVzczpiZWZvcmV7Y29udGVudDoiXGYxOWEifS5sYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZXtjb250ZW50OiJcZjQxMSJ9LmxhLXdwYmVnaW5uZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjk3In0ubGEtd3BleHBsb3JlcjpiZWZvcmV7Y29udGVudDoiXGYyZGUifS5sYS13cGZvcm1zOmJlZm9yZXtjb250ZW50OiJcZjI5OCJ9LmxhLXdwcmVzc3I6YmVmb3Jle2NvbnRlbnQ6IlxmM2U0In0ubGEtd3JlbmNoOmJlZm9yZXtjb250ZW50OiJcZjBhZCJ9LmxhLXgtcmF5OmJlZm9yZXtjb250ZW50OiJcZjQ5NyJ9LmxhLXhib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNDEyIn0ubGEteGluZzpiZWZvcmV7Y29udGVudDoiXGYxNjgifS5sYS14aW5nLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNjkifS5sYS15LWNvbWJpbmF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjNiIn0ubGEteWFob286YmVmb3Jle2NvbnRlbnQ6IlxmMTllIn0ubGEteWFtbWVyOmJlZm9yZXtjb250ZW50OiJcZjg0MCJ9LmxhLXlhbmRleDpiZWZvcmV7Y29udGVudDoiXGY0MTMifS5sYS15YW5kZXgtaW50ZXJuYXRpb25hbDpiZWZvcmV7Y29udGVudDoiXGY0MTQifS5sYS15YXJuOmJlZm9yZXtjb250ZW50OiJcZjdlMyJ9LmxhLXllbHA6YmVmb3Jle2NvbnRlbnQ6IlxmMWU5In0ubGEteWVuLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTU3In0ubGEteWluLXlhbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNmFkIn0ubGEteW9hc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmIxIn0ubGEteW91dHViZTpiZWZvcmV7Y29udGVudDoiXGYxNjcifS5sYS15b3V0dWJlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGY0MzEifS5sYS16aGlodTpiZWZvcmV7Y29udGVudDoiXGY2M2YifS5zci1vbmx5e2JvcmRlcjowO2NsaXA6cmVjdCgwLDAsMCwwKTtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4fS5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsLnNyLW9ubHktZm9jdXNhYmxlOmZvY3Vze2NsaXA6YXV0bztoZWlnaHQ6YXV0bzttYXJnaW46MDtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnN0YXRpYzt3aWR0aDphdXRvfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6YXV0bztzcmM6dXJsKC4uL2ZvbnRzL2xhLWJyYW5kcy00MDAuZW90KTtzcmM6dXJsKC4uL2ZvbnRzL2xhLWJyYW5kcy00MDAuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLHVybCguLi9mb250cy9sYS1icmFuZHMtNDAwLndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL2ZvbnRzL2xhLWJyYW5kcy00MDAud29mZikgZm9ybWF0KCJ3b2ZmIiksdXJsKC4uL2ZvbnRzL2xhLWJyYW5kcy00MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC4uL2ZvbnRzL2xhLWJyYW5kcy00MDAuc3ZnI2xpbmVhd2Vzb21lKSBmb3JtYXQoInN2ZyIpfS5sYWJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OmF1dG87c3JjOnVybCguLi9mb250cy9sYS1yZWd1bGFyLTQwMC5lb3QpO3NyYzp1cmwoLi4vZm9udHMvbGEtcmVndWxhci00MDAuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLHVybCguLi9mb250cy9sYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9sYS1yZWd1bGFyLTQwMC53b2ZmKSBmb3JtYXQoIndvZmYiKSx1cmwoLi4vZm9udHMvbGEtcmVndWxhci00MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC4uL2ZvbnRzL2xhLXJlZ3VsYXItNDAwLnN2ZyNsaW5lYXdlc29tZSkgZm9ybWF0KCJzdmciKX0ubGFye2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo5MDA7Zm9udC1kaXNwbGF5OmF1dG87c3JjOnVybCguLi9mb250cy9sYS1zb2xpZC05MDAuZW90KTtzcmM6dXJsKC4uL2ZvbnRzL2xhLXNvbGlkLTkwMC5lb3Q/I2llZml4KSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksdXJsKC4uL2ZvbnRzL2xhLXNvbGlkLTkwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi9mb250cy9sYS1zb2xpZC05MDAud29mZikgZm9ybWF0KCJ3b2ZmIiksdXJsKC4uL2ZvbnRzL2xhLXNvbGlkLTkwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKSx1cmwoLi4vZm9udHMvbGEtc29saWQtOTAwLnN2ZyNsaW5lYXdlc29tZSkgZm9ybWF0KCJzdmciKX0ubGEsLmxhc3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjkwMH0ubGEubGEtZ2xhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIn0ubGEubGEtbWVldHVwe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXN0YXItb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3Rhci1vOmJlZm9yZXtjb250ZW50OiJcZjAwNSJ9LmxhLmxhLXJlbW92ZTpiZWZvcmV7Y29udGVudDoiXGYwMGQifS5sYS5sYS1jbG9zZTpiZWZvcmV7Y29udGVudDoiXGYwMGQifS5sYS5sYS1nZWFyOmJlZm9yZXtjb250ZW50OiJcZjAxMyJ9LmxhLmxhLXRyYXNoLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRyYXNoLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmVkIn0ubGEubGEtZmlsZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTViIn0ubGEubGEtY2xvY2stb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2xvY2stbzpiZWZvcmV7Y29udGVudDoiXGYwMTcifS5sYS5sYS1hcnJvdy1jaXJjbGUtby1kb3due2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZXtjb250ZW50OiJcZjM1OCJ9LmxhLmxhLWFycm93LWNpcmNsZS1vLXVwe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1hcnJvdy1jaXJjbGUtby11cDpiZWZvcmV7Y29udGVudDoiXGYzNWIifS5sYS5sYS1wbGF5LWNpcmNsZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1wbGF5LWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjE0NCJ9LmxhLmxhLXJlcGVhdDpiZWZvcmV7Y29udGVudDoiXGYwMWUifS5sYS5sYS1yb3RhdGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDFlIn0ubGEubGEtcmVmcmVzaDpiZWZvcmV7Y29udGVudDoiXGYwMjEifS5sYS5sYS1saXN0LWFsdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZGVkZW50OmJlZm9yZXtjb250ZW50OiJcZjAzYiJ9LmxhLmxhLXZpZGVvLWNhbWVyYTpiZWZvcmV7Y29udGVudDoiXGYwM2QifS5sYS5sYS1waWN0dXJlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXBpY3R1cmUtbzpiZWZvcmV7Y29udGVudDoiXGYwM2UifS5sYS5sYS1waG90b3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGhvdG86YmVmb3Jle2NvbnRlbnQ6IlxmMDNlIn0ubGEubGEtaW1hZ2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZjAzZSJ9LmxhLmxhLXBlbmNpbDpiZWZvcmV7Y29udGVudDoiXGYzMDMifS5sYS5sYS1tYXAtbWFya2VyOmJlZm9yZXtjb250ZW50OiJcZjNjNSJ9LmxhLmxhLXBlbmNpbC1zcXVhcmUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGVuY2lsLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjA0NCJ9LmxhLmxhLXNoYXJlLXNxdWFyZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zaGFyZS1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYxNGQifS5sYS5sYS1jaGVjay1zcXVhcmUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2hlY2stc3F1YXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTRhIn0ubGEubGEtYXJyb3dzOmJlZm9yZXtjb250ZW50OiJcZjBiMiJ9LmxhLmxhLXRpbWVzLWNpcmNsZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS10aW1lcy1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYwNTcifS5sYS5sYS1jaGVjay1jaXJjbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2hlY2stY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDU4In0ubGEubGEtbWFpbC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA2NCJ9LmxhLmxhLWV5ZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZXllLXNsYXNoe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS13YXJuaW5nOmJlZm9yZXtjb250ZW50OiJcZjA3MSJ9LmxhLmxhLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OiJcZjA3MyJ9LmxhLmxhLWFycm93cy12OmJlZm9yZXtjb250ZW50OiJcZjMzOCJ9LmxhLmxhLWFycm93cy1oOmJlZm9yZXtjb250ZW50OiJcZjMzNyJ9LmxhLmxhLWJhci1jaGFydHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYmFyLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjA4MCJ9LmxhLmxhLWJhci1jaGFydC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1iYXItY2hhcnQtbzpiZWZvcmV7Y29udGVudDoiXGYwODAifS5sYS5sYS10d2l0dGVyLXNxdWFyZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mYWNlYm9vay1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ2VhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMDg1In0ubGEubGEtdGh1bWJzLW8tdXB7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRodW1icy1vLXVwOmJlZm9yZXtjb250ZW50OiJcZjE2NCJ9LmxhLmxhLXRodW1icy1vLWRvd257Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRodW1icy1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTY1In0ubGEubGEtaGVhcnQtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGVhcnQtbzpiZWZvcmV7Y29udGVudDoiXGYwMDQifS5sYS5sYS1zaWduLW91dDpiZWZvcmV7Y29udGVudDoiXGYyZjUifS5sYS5sYS1saW5rZWRpbi1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGlua2VkaW4tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA4YyJ9LmxhLmxhLXRodW1iLXRhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDhkIn0ubGEubGEtZXh0ZXJuYWwtbGluazpiZWZvcmV7Y29udGVudDoiXGYzNWQifS5sYS5sYS1zaWduLWluOmJlZm9yZXtjb250ZW50OiJcZjJmNiJ9LmxhLmxhLWdpdGh1Yi1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGVtb24tb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGVtb24tbzpiZWZvcmV7Y29udGVudDoiXGYwOTQifS5sYS5sYS1zcXVhcmUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3F1YXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGM4In0ubGEubGEtYm9va21hcmstb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYm9va21hcmstbzpiZWZvcmV7Y29udGVudDoiXGYwMmUifS5sYS5sYS10d2l0dGVye2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZhY2Vib29re2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZhY2Vib29rOmJlZm9yZXtjb250ZW50OiJcZjM5ZSJ9LmxhLmxhLWZhY2Vib29rLWZ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZmFjZWJvb2stZjpiZWZvcmV7Y29udGVudDoiXGYzOWUifS5sYS5sYS1naXRodWJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY3JlZGl0LWNhcmR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZlZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDllIn0ubGEubGEtaGRkLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhkZC1vOmJlZm9yZXtjb250ZW50OiJcZjBhMCJ9LmxhLmxhLWhhbmQtby1yaWdodHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGFuZC1vLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBhNCJ9LmxhLmxhLWhhbmQtby1sZWZ0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1oYW5kLW8tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwYTUifS5sYS5sYS1oYW5kLW8tdXB7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhbmQtby11cDpiZWZvcmV7Y29udGVudDoiXGYwYTYifS5sYS5sYS1oYW5kLW8tZG93bntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGFuZC1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMGE3In0ubGEubGEtYXJyb3dzLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzMWUifS5sYS5sYS1ncm91cDpiZWZvcmV7Y29udGVudDoiXGYwYzAifS5sYS5sYS1jaGFpbjpiZWZvcmV7Y29udGVudDoiXGYwYzEifS5sYS5sYS1zY2lzc29yczpiZWZvcmV7Y29udGVudDoiXGYwYzQifS5sYS5sYS1maWxlcy1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlcy1vOmJlZm9yZXtjb250ZW50OiJcZjBjNSJ9LmxhLmxhLWZsb3BweS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mbG9wcHktbzpiZWZvcmV7Y29udGVudDoiXGYwYzcifS5sYS5sYS1uYXZpY29uOmJlZm9yZXtjb250ZW50OiJcZjBjOSJ9LmxhLmxhLXJlb3JkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMGM5In0ubGEubGEtcGludGVyZXN0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXBpbnRlcmVzdC1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ29vZ2xlLXBsdXMtc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdvb2dsZS1wbHVze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdvb2dsZS1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjBkNSJ9LmxhLmxhLW1vbmV5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1tb25leTpiZWZvcmV7Y29udGVudDoiXGYzZDEifS5sYS5sYS11bnNvcnRlZDpiZWZvcmV7Y29udGVudDoiXGYwZGMifS5sYS5sYS1zb3J0LWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMGRkIn0ubGEubGEtc29ydC1hc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMGRlIn0ubGEubGEtbGlua2VkaW57Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGlua2VkaW46YmVmb3Jle2NvbnRlbnQ6IlxmMGUxIn0ubGEubGEtcm90YXRlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGUyIn0ubGEubGEtbGVnYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGUzIn0ubGEubGEtdGFjaG9tZXRlcjpiZWZvcmV7Y29udGVudDoiXGYzZmQifS5sYS5sYS1kYXNoYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2ZkIn0ubGEubGEtY29tbWVudC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jb21tZW50LW86YmVmb3Jle2NvbnRlbnQ6IlxmMDc1In0ubGEubGEtY29tbWVudHMtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY29tbWVudHMtbzpiZWZvcmV7Y29udGVudDoiXGYwODYifS5sYS5sYS1mbGFzaDpiZWZvcmV7Y29udGVudDoiXGYwZTcifS5sYS5sYS1jbGlwYm9hcmR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXBhc3Rle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1wYXN0ZTpiZWZvcmV7Y29udGVudDoiXGYzMjgifS5sYS5sYS1saWdodGJ1bGItb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGlnaHRidWxiLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGViIn0ubGEubGEtZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMzYyIn0ubGEubGEtY2xvdWQtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzgxIn0ubGEubGEtY2xvdWQtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjM4MiJ9LmxhLmxhLWJlbGwtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYmVsbC1vOmJlZm9yZXtjb250ZW50OiJcZjBmMyJ9LmxhLmxhLWN1dGxlcnk6YmVmb3Jle2NvbnRlbnQ6IlxmMmU3In0ubGEubGEtZmlsZS10ZXh0LW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtdGV4dC1vOmJlZm9yZXtjb250ZW50OiJcZjE1YyJ9LmxhLmxhLWJ1aWxkaW5nLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWJ1aWxkaW5nLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWFkIn0ubGEubGEtaG9zcGl0YWwtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaG9zcGl0YWwtbzpiZWZvcmV7Y29udGVudDoiXGYwZjgifS5sYS5sYS10YWJsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2ZhIn0ubGEubGEtbW9iaWxlOmJlZm9yZXtjb250ZW50OiJcZjNjZCJ9LmxhLmxhLW1vYmlsZS1waG9uZTpiZWZvcmV7Y29udGVudDoiXGYzY2QifS5sYS5sYS1jaXJjbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTExIn0ubGEubGEtbWFpbC1yZXBseTpiZWZvcmV7Y29udGVudDoiXGYzZTUifS5sYS5sYS1naXRodWItYWx0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZvbGRlci1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mb2xkZXItbzpiZWZvcmV7Y29udGVudDoiXGYwN2IifS5sYS5sYS1mb2xkZXItb3Blbi1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mb2xkZXItb3Blbi1vOmJlZm9yZXtjb250ZW50OiJcZjA3YyJ9LmxhLmxhLXNtaWxlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNtaWxlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTE4In0ubGEubGEtZnJvd24tb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZnJvd24tbzpiZWZvcmV7Y29udGVudDoiXGYxMTkifS5sYS5sYS1tZWgtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbWVoLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTFhIn0ubGEubGEta2V5Ym9hcmQtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEta2V5Ym9hcmQtbzpiZWZvcmV7Y29udGVudDoiXGYxMWMifS5sYS5sYS1mbGFnLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZsYWctbzpiZWZvcmV7Y29udGVudDoiXGYwMjQifS5sYS5sYS1tYWlsLXJlcGx5LWFsbDpiZWZvcmV7Y29udGVudDoiXGYxMjIifS5sYS5sYS1zdGFyLWhhbGYtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3Rhci1oYWxmLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDg5In0ubGEubGEtc3Rhci1oYWxmLWVtcHR5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zdGFyLWhhbGYtZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMDg5In0ubGEubGEtc3Rhci1oYWxmLWZ1bGx7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXN0YXItaGFsZi1mdWxsOmJlZm9yZXtjb250ZW50OiJcZjA4OSJ9LmxhLmxhLWNvZGUtZm9yazpiZWZvcmV7Y29udGVudDoiXGYxMjYifS5sYS5sYS1jaGFpbi1icm9rZW46YmVmb3Jle2NvbnRlbnQ6IlxmMTI3In0ubGEubGEtc2hpZWxkOmJlZm9yZXtjb250ZW50OiJcZjNlZCJ9LmxhLmxhLWNhbGVuZGFyLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNhbGVuZGFyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTMzIn0ubGEubGEtbWF4Y2Rue2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWh0bWw1e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNzczN7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdGlja2V0OmJlZm9yZXtjb250ZW50OiJcZjNmZiJ9LmxhLmxhLW1pbnVzLXNxdWFyZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1taW51cy1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYxNDYifS5sYS5sYS1sZXZlbC11cDpiZWZvcmV7Y29udGVudDoiXGYzYmYifS5sYS5sYS1sZXZlbC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjNiZSJ9LmxhLmxhLXBlbmNpbC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRiIn0ubGEubGEtZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMzYwIn0ubGEubGEtY29tcGFzc3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2FyZXQtc3F1YXJlLW8tZG93bntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNTAifS5sYS5sYS10b2dnbGUtZG93bntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdG9nZ2xlLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTUwIn0ubGEubGEtY2FyZXQtc3F1YXJlLW8tdXB7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNhcmV0LXNxdWFyZS1vLXVwOmJlZm9yZXtjb250ZW50OiJcZjE1MSJ9LmxhLmxhLXRvZ2dsZS11cHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdG9nZ2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjE1MSJ9LmxhLmxhLWNhcmV0LXNxdWFyZS1vLXJpZ2h0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxNTIifS5sYS5sYS10b2dnbGUtcmlnaHR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRvZ2dsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxNTIifS5sYS5sYS1ldXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTUzIn0ubGEubGEtZXVybzpiZWZvcmV7Y29udGVudDoiXGYxNTMifS5sYS5sYS1nYnA6YmVmb3Jle2NvbnRlbnQ6IlxmMTU0In0ubGEubGEtdXNkOmJlZm9yZXtjb250ZW50OiJcZjE1NSJ9LmxhLmxhLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGYxNTUifS5sYS5sYS1pbnI6YmVmb3Jle2NvbnRlbnQ6IlxmMTU2In0ubGEubGEtcnVwZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMTU2In0ubGEubGEtanB5OmJlZm9yZXtjb250ZW50OiJcZjE1NyJ9LmxhLmxhLWNueTpiZWZvcmV7Y29udGVudDoiXGYxNTcifS5sYS5sYS1ybWI6YmVmb3Jle2NvbnRlbnQ6IlxmMTU3In0ubGEubGEteWVuOmJlZm9yZXtjb250ZW50OiJcZjE1NyJ9LmxhLmxhLXJ1YjpiZWZvcmV7Y29udGVudDoiXGYxNTgifS5sYS5sYS1ydWJsZTpiZWZvcmV7Y29udGVudDoiXGYxNTgifS5sYS5sYS1yb3VibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTU4In0ubGEubGEta3J3OmJlZm9yZXtjb250ZW50OiJcZjE1OSJ9LmxhLmxhLXdvbjpiZWZvcmV7Y29udGVudDoiXGYxNTkifS5sYS5sYS1idGN7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYml0Y29pbntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1iaXRjb2luOmJlZm9yZXtjb250ZW50OiJcZjE1YSJ9LmxhLmxhLWZpbGUtdGV4dDpiZWZvcmV7Y29udGVudDoiXGYxNWMifS5sYS5sYS1zb3J0LWFscGhhLWFzYzpiZWZvcmV7Y29udGVudDoiXGYxNWQifS5sYS5sYS1zb3J0LWFscGhhLWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmODgxIn0ubGEubGEtc29ydC1hbW91bnQtYXNjOmJlZm9yZXtjb250ZW50OiJcZjE2MCJ9LmxhLmxhLXNvcnQtYW1vdW50LWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmODg0In0ubGEubGEtc29ydC1udW1lcmljLWFzYzpiZWZvcmV7Y29udGVudDoiXGYxNjIifS5sYS5sYS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmV7Y29udGVudDoiXGY4ODYifS5sYS5sYS15b3V0dWJlLXNxdWFyZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS15b3V0dWJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXhpbmd7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEteGluZy1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEteW91dHViZS1wbGF5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXlvdXR1YmUtcGxheTpiZWZvcmV7Y29udGVudDoiXGYxNjcifS5sYS5sYS1kcm9wYm94e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXN0YWNrLW92ZXJmbG93e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWluc3RhZ3JhbXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mbGlja3J7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYWRue2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWJpdGJ1Y2tldHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1iaXRidWNrZXQtc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWJpdGJ1Y2tldC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTcxIn0ubGEubGEtdHVtYmxye2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXR1bWJsci1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbG9uZy1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjMwOSJ9LmxhLmxhLWxvbmctYXJyb3ctdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMzBjIn0ubGEubGEtbG9uZy1hcnJvdy1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjMwYSJ9LmxhLmxhLWxvbmctYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzBiIn0ubGEubGEtYXBwbGV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd2luZG93c3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1hbmRyb2lke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWxpbnV4e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWRyaWJiYmxle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNreXBle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZvdXJzcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdHJlbGxve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdyYXRpcGF5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdpdHRpcHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1naXR0aXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTg0In0ubGEubGEtc3VuLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXN1bi1vOmJlZm9yZXtjb250ZW50OiJcZjE4NSJ9LmxhLmxhLW1vb24tb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbW9vbi1vOmJlZm9yZXtjb250ZW50OiJcZjE4NiJ9LmxhLmxhLXZre2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXdlaWJve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXJlbnJlbntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1wYWdlbGluZXN7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RhY2stZXhjaGFuZ2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYXJyb3ctY2lyY2xlLW8tcmlnaHR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjM1YSJ9LmxhLmxhLWFycm93LWNpcmNsZS1vLWxlZnR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWFycm93LWNpcmNsZS1vLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzU5In0ubGEubGEtY2FyZXQtc3F1YXJlLW8tbGVmdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2FyZXQtc3F1YXJlLW8tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxOTEifS5sYS5sYS10b2dnbGUtbGVmdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdG9nZ2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTkxIn0ubGEubGEtZG90LWNpcmNsZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1kb3QtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTkyIn0ubGEubGEtdmltZW8tc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRyeTpiZWZvcmV7Y29udGVudDoiXGYxOTUifS5sYS5sYS10dXJraXNoLWxpcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMTk1In0ubGEubGEtcGx1cy1zcXVhcmUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGx1cy1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYwZmUifS5sYS5sYS1zbGFja3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS13b3JkcHJlc3N7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtb3Blbmlke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWluc3RpdHV0aW9uOmJlZm9yZXtjb250ZW50OiJcZjE5YyJ9LmxhLmxhLWJhbms6YmVmb3Jle2NvbnRlbnQ6IlxmMTljIn0ubGEubGEtbW9ydGFyLWJvYXJkOmJlZm9yZXtjb250ZW50OiJcZjE5ZCJ9LmxhLmxhLXlhaG9ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdvb2dsZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1yZWRkaXR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcmVkZGl0LXNxdWFyZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zdHVtYmxldXBvbi1jaXJjbGV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3R1bWJsZXVwb257Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZGVsaWNpb3Vze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWRpZ2d7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGllZC1waXBlci1wcHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1waWVkLXBpcGVyLWFsdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1kcnVwYWx7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtam9vbWxhe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNwb29uOmJlZm9yZXtjb250ZW50OiJcZjJlNSJ9LmxhLmxhLWJlaGFuY2V7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYmVoYW5jZS1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RlYW17Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RlYW0tc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWF1dG9tb2JpbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI5In0ubGEubGEtY2FiOmJlZm9yZXtjb250ZW50OiJcZjFiYSJ9LmxhLmxhLWVudmVsb3BlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWVudmVsb3BlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGUwIn0ubGEubGEtZGV2aWFudGFydHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zb3VuZGNsb3Vke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtcGRmLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtcGRmLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWMxIn0ubGEubGEtZmlsZS13b3JkLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtd29yZC1vOmJlZm9yZXtjb250ZW50OiJcZjFjMiJ9LmxhLmxhLWZpbGUtZXhjZWwtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZmlsZS1leGNlbC1vOmJlZm9yZXtjb250ZW50OiJcZjFjMyJ9LmxhLmxhLWZpbGUtcG93ZXJwb2ludC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLXBvd2VycG9pbnQtbzpiZWZvcmV7Y29udGVudDoiXGYxYzQifS5sYS5sYS1maWxlLWltYWdlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtaW1hZ2UtbzpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5sYS5sYS1maWxlLXBob3RvLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtcGhvdG8tbzpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5sYS5sYS1maWxlLXBpY3R1cmUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZmlsZS1waWN0dXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM1In0ubGEubGEtZmlsZS1hcmNoaXZlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtYXJjaGl2ZS1vOmJlZm9yZXtjb250ZW50OiJcZjFjNiJ9LmxhLmxhLWZpbGUtemlwLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtemlwLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM2In0ubGEubGEtZmlsZS1hdWRpby1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLWF1ZGlvLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM3In0ubGEubGEtZmlsZS1zb3VuZC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLXNvdW5kLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM3In0ubGEubGEtZmlsZS12aWRlby1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLXZpZGVvLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM4In0ubGEubGEtZmlsZS1tb3ZpZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maWxlLW1vdmllLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM4In0ubGEubGEtZmlsZS1jb2RlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZpbGUtY29kZS1vOmJlZm9yZXtjb250ZW50OiJcZjFjOSJ9LmxhLmxhLXZpbmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY29kZXBlbntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1qc2ZpZGRsZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1saWZlLXJpbmd7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWxpZmUtYm91eXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGlmZS1ib3V5OmJlZm9yZXtjb250ZW50OiJcZjFjZCJ9LmxhLmxhLWxpZmUtYnVveXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbGlmZS1idW95OmJlZm9yZXtjb250ZW50OiJcZjFjZCJ9LmxhLmxhLWxpZmUtc2F2ZXJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWxpZmUtc2F2ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWNkIn0ubGEubGEtc3VwcG9ydHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3VwcG9ydDpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5sYS5sYS1jaXJjbGUtby1ub3RjaDpiZWZvcmV7Y29udGVudDoiXGYxY2UifS5sYS5sYS1yZWJlbHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1yYXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1yYTpiZWZvcmV7Y29udGVudDoiXGYxZDAifS5sYS5sYS1yZXNpc3RhbmNle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXJlc2lzdGFuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWQwIn0ubGEubGEtZW1waXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdlOmJlZm9yZXtjb250ZW50OiJcZjFkMSJ9LmxhLmxhLWdpdC1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ2l0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhY2tlci1uZXdze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXktY29tYmluYXRvci1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEteS1jb21iaW5hdG9yLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxZDQifS5sYS5sYS15Yy1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEteWMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFkNCJ9LmxhLmxhLXRlbmNlbnQtd2VpYm97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcXF7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd2VpeGlue2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXdlY2hhdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS13ZWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ3In0ubGEubGEtc2VuZDpiZWZvcmV7Y29udGVudDoiXGYxZDgifS5sYS5sYS1wYXBlci1wbGFuZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1wYXBlci1wbGFuZS1vOmJlZm9yZXtjb250ZW50OiJcZjFkOCJ9LmxhLmxhLXNlbmQtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc2VuZC1vOmJlZm9yZXtjb250ZW50OiJcZjFkOCJ9LmxhLmxhLWNpcmNsZS10aGlue2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jaXJjbGUtdGhpbjpiZWZvcmV7Y29udGVudDoiXGYxMTEifS5sYS5sYS1oZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWRjIn0ubGEubGEtc2xpZGVyczpiZWZvcmV7Y29udGVudDoiXGYxZGUifS5sYS5sYS1mdXRib2wtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZnV0Ym9sLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWUzIn0ubGEubGEtc29jY2VyLWJhbGwtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc29jY2VyLWJhbGwtbzpiZWZvcmV7Y29udGVudDoiXGYxZTMifS5sYS5sYS1zbGlkZXNoYXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXR3aXRjaHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS15ZWxwe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLW5ld3NwYXBlci1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1uZXdzcGFwZXItbzpiZWZvcmV7Y29udGVudDoiXGYxZWEifS5sYS5sYS1wYXlwYWx7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ29vZ2xlLXdhbGxldHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYy12aXNhe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNjLW1hc3RlcmNhcmR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2MtZGlzY292ZXJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2MtYW1leHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYy1wYXlwYWx7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2Mtc3RyaXBle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWJlbGwtc2xhc2gtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYmVsbC1zbGFzaC1vOmJlZm9yZXtjb250ZW50OiJcZjFmNiJ9LmxhLmxhLXRyYXNoOmJlZm9yZXtjb250ZW50OiJcZjJlZCJ9LmxhLmxhLWNvcHlyaWdodHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZXllZHJvcHBlcjpiZWZvcmV7Y29udGVudDoiXGYxZmIifS5sYS5sYS1hcmVhLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjFmZSJ9LmxhLmxhLXBpZS1jaGFydDpiZWZvcmV7Y29udGVudDoiXGYyMDAifS5sYS5sYS1saW5lLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjIwMSJ9LmxhLmxhLWxhc3RmbXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1sYXN0Zm0tc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWlveGhvc3R7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYW5nZWxsaXN0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNje2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYzpiZWZvcmV7Y29udGVudDoiXGYyMGEifS5sYS5sYS1pbHM6YmVmb3Jle2NvbnRlbnQ6IlxmMjBiIn0ubGEubGEtc2hla2VsOmJlZm9yZXtjb250ZW50OiJcZjIwYiJ9LmxhLmxhLXNoZXFlbDpiZWZvcmV7Y29udGVudDoiXGYyMGIifS5sYS5sYS1tZWFucGF0aHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1tZWFucGF0aDpiZWZvcmV7Y29udGVudDoiXGYyYjQifS5sYS5sYS1idXlzZWxsYWRze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNvbm5lY3RkZXZlbG9we2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWRhc2hjdWJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZvcnVtYmVle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWxlYW5wdWJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc2VsbHN5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNoaXJ0c2luYnVsa3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zaW1wbHlidWlsdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1za3lhdGxhc3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1kaWFtb25ke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1kaWFtb25kOmJlZm9yZXtjb250ZW50OiJcZjNhNSJ9LmxhLmxhLWludGVyc2V4OmJlZm9yZXtjb250ZW50OiJcZjIyNCJ9LmxhLmxhLWZhY2Vib29rLW9mZmljaWFse2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZXtjb250ZW50OiJcZjA5YSJ9LmxhLmxhLXBpbnRlcmVzdC1we2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXdoYXRzYXBwe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhvdGVsOmJlZm9yZXtjb250ZW50OiJcZjIzNiJ9LmxhLmxhLXZpYWNvaW57Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbWVkaXVte2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXktY29tYmluYXRvcntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS15Y3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS15YzpiZWZvcmV7Y29udGVudDoiXGYyM2IifS5sYS5sYS1vcHRpbi1tb25zdGVye2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLW9wZW5jYXJ0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWV4cGVkaXRlZHNzbHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1iYXR0ZXJ5LTQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjQwIn0ubGEubGEtYmF0dGVyeTpiZWZvcmV7Y29udGVudDoiXGYyNDAifS5sYS5sYS1iYXR0ZXJ5LTM6YmVmb3Jle2NvbnRlbnQ6IlxmMjQxIn0ubGEubGEtYmF0dGVyeS0yOmJlZm9yZXtjb250ZW50OiJcZjI0MiJ9LmxhLmxhLWJhdHRlcnktMTpiZWZvcmV7Y29udGVudDoiXGYyNDMifS5sYS5sYS1iYXR0ZXJ5LTA6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ0In0ubGEubGEtb2JqZWN0LWdyb3Vwe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1vYmplY3QtdW5ncm91cHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RpY2t5LW5vdGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RpY2t5LW5vdGUtbzpiZWZvcmV7Y29udGVudDoiXGYyNDkifS5sYS5sYS1jYy1qY2J7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2MtZGluZXJzLWNsdWJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2xvbmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhvdXJnbGFzcy1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1ob3VyZ2xhc3MtbzpiZWZvcmV7Y29udGVudDoiXGYyNTQifS5sYS5sYS1ob3VyZ2xhc3MtMTpiZWZvcmV7Y29udGVudDoiXGYyNTEifS5sYS5sYS1ob3VyZ2xhc3MtMjpiZWZvcmV7Y29udGVudDoiXGYyNTIifS5sYS5sYS1ob3VyZ2xhc3MtMzpiZWZvcmV7Y29udGVudDoiXGYyNTMifS5sYS5sYS1oYW5kLXJvY2stb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGFuZC1yb2NrLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU1In0ubGEubGEtaGFuZC1ncmFiLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhbmQtZ3JhYi1vOmJlZm9yZXtjb250ZW50OiJcZjI1NSJ9LmxhLmxhLWhhbmQtcGFwZXItb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGFuZC1wYXBlci1vOmJlZm9yZXtjb250ZW50OiJcZjI1NiJ9LmxhLmxhLWhhbmQtc3RvcC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1oYW5kLXN0b3AtbzpiZWZvcmV7Y29udGVudDoiXGYyNTYifS5sYS5sYS1oYW5kLXNjaXNzb3JzLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhbmQtc2Npc3NvcnMtbzpiZWZvcmV7Y29udGVudDoiXGYyNTcifS5sYS5sYS1oYW5kLWxpemFyZC1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1oYW5kLWxpemFyZC1vOmJlZm9yZXtjb250ZW50OiJcZjI1OCJ9LmxhLmxhLWhhbmQtc3BvY2stb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaGFuZC1zcG9jay1vOmJlZm9yZXtjb250ZW50OiJcZjI1OSJ9LmxhLmxhLWhhbmQtcG9pbnRlci1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1oYW5kLXBvaW50ZXItbzpiZWZvcmV7Y29udGVudDoiXGYyNWEifS5sYS5sYS1oYW5kLXBlYWNlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhbmQtcGVhY2UtbzpiZWZvcmV7Y29udGVudDoiXGYyNWIifS5sYS5sYS1yZWdpc3RlcmVke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jcmVhdGl2ZS1jb21tb25ze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdne2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdnLWNpcmNsZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS10cmlwYWR2aXNvcntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1vZG5va2xhc3NuaWtpe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLW9kbm9rbGFzc25pa2ktc3F1YXJle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdldC1wb2NrZXR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd2lraXBlZGlhLXd7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc2FmYXJpe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNocm9tZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maXJlZm94e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLW9wZXJhe2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWludGVybmV0LWV4cGxvcmVye2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXRlbGV2aXNpb246YmVmb3Jle2NvbnRlbnQ6IlxmMjZjIn0ubGEubGEtY29udGFve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLTUwMHB4e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWFtYXpvbntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYWxlbmRhci1wbHVzLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNhbGVuZGFyLXBsdXMtbzpiZWZvcmV7Y29udGVudDoiXGYyNzEifS5sYS5sYS1jYWxlbmRhci1taW51cy1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZXtjb250ZW50OiJcZjI3MiJ9LmxhLmxhLWNhbGVuZGFyLXRpbWVzLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNhbGVuZGFyLXRpbWVzLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjczIn0ubGEubGEtY2FsZW5kYXItY2hlY2stb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtY2FsZW5kYXItY2hlY2stbzpiZWZvcmV7Y29udGVudDoiXGYyNzQifS5sYS5sYS1tYXAtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtbWFwLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjc5In0ubGEubGEtY29tbWVudGluZzpiZWZvcmV7Y29udGVudDoiXGY0YWQifS5sYS5sYS1jb21tZW50aW5nLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNvbW1lbnRpbmctbzpiZWZvcmV7Y29udGVudDoiXGY0YWQifS5sYS5sYS1ob3V6entmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS12aW1lb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS12aW1lbzpiZWZvcmV7Y29udGVudDoiXGYyN2QifS5sYS5sYS1ibGFjay10aWV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZm9udGljb25ze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXJlZGRpdC1hbGllbntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1lZGdle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWNyZWRpdC1jYXJkLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwOWQifS5sYS5sYS1jb2RpZXBpZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1tb2R4e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWZvcnQtYXdlc29tZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS11c2J7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcHJvZHVjdC1odW50e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLW1peGNsb3Vke2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNjcmliZHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1wYXVzZS1jaXJjbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGF1c2UtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjhiIn0ubGEubGEtc3RvcC1jaXJjbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3RvcC1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYyOGQifS5sYS5sYS1ibHVldG9vdGh7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYmx1ZXRvb3RoLWJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ2l0bGFie2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXdwYmVnaW5uZXJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd3Bmb3Jtc3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1lbnZpcmF7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd2hlZWxjaGFpci1hbHR7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtd2hlZWxjaGFpci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzY4In0ubGEubGEtcXVlc3Rpb24tY2lyY2xlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjA1OSJ9LmxhLmxhLXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZXtjb250ZW50OiJcZjJhMCJ9LmxhLmxhLWFzbC1pbnRlcnByZXRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMmEzIn0ubGEubGEtZGVhZm5lc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMmE0In0ubGEubGEtaGFyZC1vZi1oZWFyaW5nOmJlZm9yZXtjb250ZW50OiJcZjJhNCJ9LmxhLmxhLWdsaWRle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdsaWRlLWd7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc2lnbmluZzpiZWZvcmV7Y29udGVudDoiXGYyYTcifS5sYS5sYS12aWFkZW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdmlhZGVvLXNxdWFyZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zbmFwY2hhdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zbmFwY2hhdC1naG9zdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1zbmFwY2hhdC1zcXVhcmV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcGllZC1waXBlcntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1maXJzdC1vcmRlcntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS15b2FzdHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS10aGVtZWlzbGV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ29vZ2xlLXBsdXMtb2ZmaWNpYWx7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMmIzIn0ubGEubGEtZ29vZ2xlLXBsdXMtY2lyY2xle2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYyYjMifS5sYS5sYS1mb250LWF3ZXNvbWV7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZmF7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZmE6YmVmb3Jle2NvbnRlbnQ6IlxmMmI0In0ubGEubGEtaGFuZHNoYWtlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWhhbmRzaGFrZS1vOmJlZm9yZXtjb250ZW50OiJcZjJiNSJ9LmxhLmxhLWVudmVsb3BlLW9wZW4tb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZW52ZWxvcGUtb3Blbi1vOmJlZm9yZXtjb250ZW50OiJcZjJiNiJ9LmxhLmxhLWxpbm9kZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1hZGRyZXNzLWJvb2stb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtYWRkcmVzcy1ib29rLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmI5In0ubGEubGEtdmNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmJiIn0ubGEubGEtYWRkcmVzcy1jYXJkLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWFkZHJlc3MtY2FyZC1vOmJlZm9yZXtjb250ZW50OiJcZjJiYiJ9LmxhLmxhLXZjYXJkLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXZjYXJkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmJiIn0ubGEubGEtdXNlci1jaXJjbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdXNlci1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYyYmQifS5sYS5sYS11c2VyLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXVzZXItbzpiZWZvcmV7Y29udGVudDoiXGYwMDcifS5sYS5sYS1pZC1iYWRnZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZHJpdmVycy1saWNlbnNlOmJlZm9yZXtjb250ZW50OiJcZjJjMiJ9LmxhLmxhLWlkLWNhcmQtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtaWQtY2FyZC1vOmJlZm9yZXtjb250ZW50OiJcZjJjMiJ9LmxhLmxhLWRyaXZlcnMtbGljZW5zZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1kcml2ZXJzLWxpY2Vuc2UtbzpiZWZvcmV7Y29udGVudDoiXGYyYzIifS5sYS5sYS1xdW9yYXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1mcmVlLWNvZGUtY2FtcHtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS10ZWxlZ3JhbXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS10aGVybW9tZXRlci00OmJlZm9yZXtjb250ZW50OiJcZjJjNyJ9LmxhLmxhLXRoZXJtb21ldGVyOmJlZm9yZXtjb250ZW50OiJcZjJjNyJ9LmxhLmxhLXRoZXJtb21ldGVyLTM6YmVmb3Jle2NvbnRlbnQ6IlxmMmM4In0ubGEubGEtdGhlcm1vbWV0ZXItMjpiZWZvcmV7Y29udGVudDoiXGYyYzkifS5sYS5sYS10aGVybW9tZXRlci0xOmJlZm9yZXtjb250ZW50OiJcZjJjYSJ9LmxhLmxhLXRoZXJtb21ldGVyLTA6YmVmb3Jle2NvbnRlbnQ6IlxmMmNiIn0ubGEubGEtYmF0aHR1YjpiZWZvcmV7Y29udGVudDoiXGYyY2QifS5sYS5sYS1zMTU6YmVmb3Jle2NvbnRlbnQ6IlxmMmNkIn0ubGEubGEtd2luZG93LW1heGltaXple2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS13aW5kb3ctcmVzdG9yZXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdGltZXMtcmVjdGFuZ2xlOmJlZm9yZXtjb250ZW50OiJcZjQxMCJ9LmxhLmxhLXdpbmRvdy1jbG9zZS1ve2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgRnJlZSc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS13aW5kb3ctY2xvc2UtbzpiZWZvcmV7Y29udGVudDoiXGY0MTAifS5sYS5sYS10aW1lcy1yZWN0YW5nbGUtb3tmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEZyZWUnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtdGltZXMtcmVjdGFuZ2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0ubGEubGEtYmFuZGNhbXB7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtZ3Jhdntmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1ldHN5e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWltZGJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtcmF2ZWxyeXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfS5sYS5sYS1lZXJjYXN0e2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLWVlcmNhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmRhIn0ubGEubGEtc25vd2ZsYWtlLW97Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBGcmVlJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXNub3dmbGFrZS1vOmJlZm9yZXtjb250ZW50OiJcZjJkYyJ9LmxhLmxhLXN1cGVycG93ZXJze2ZvbnQtZmFtaWx5OidMaW5lIEF3ZXNvbWUgQnJhbmRzJztmb250LXdlaWdodDo0MDB9LmxhLmxhLXdwZXhwbG9yZXJ7Zm9udC1mYW1pbHk6J0xpbmUgQXdlc29tZSBCcmFuZHMnO2ZvbnQtd2VpZ2h0OjQwMH0ubGEubGEtc3BvdGlmeXtmb250LWZhbWlseTonTGluZSBBd2Vzb21lIEJyYW5kcyc7Zm9udC13ZWlnaHQ6NDAwfQ0K"}},"time_used":73,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":39,"receive":34,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/vendor/slick.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.631Z","timestamp":1785143153631,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/vendor/slick.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"6f0-67b374e4-cc7515ea0e8045a8;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 485\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":1776,"size_decoded":923,"mime_type":"text/css","magic":"ASCII text","md5":"f38b2db10e01b1572732a3191d538707","sha1":"a94a059b3178b4adec09e3281ace2819a30095a4","sha256":"de1e399b07289f3b0a8d35142e363e128124a1185770e214e25e58030dad48e5","sha512":"c11e283612c11dfeec9a3cb42b8a2acdd5ae99dfabe7ffba40efef0dd6bbe8c5b98ae8383d3eeff3a168124c922097eddd703401ee9ac6122f1ebab09bbf7737","ssdeep":"","tlshash":"c931294845b389468416808d5fd7ca6d2bfff0130829e199ba8d1306cfce7d8a9c26b2","first_seen":"2023-04-05T08:37:21Z","last_seen":"2026-08-03T13:21:16.275047Z","times_seen":73071,"resource_available":false,"data":"LyogU2xpZGVyICovCi5zbGljay1zbGlkZXIKewogICAgcG9zaXRpb246IHJlbGF0aXZlOwoKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKCiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwoKICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsKICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15OwogICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7CiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50Owp9Cgouc2xpY2stbGlzdAp7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CgogICAgZGlzcGxheTogYmxvY2s7CiAgICBvdmVyZmxvdzogaGlkZGVuOwoKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDA7Cn0KLnNsaWNrLWxpc3Q6Zm9jdXMKewogICAgb3V0bGluZTogbm9uZTsKfQouc2xpY2stbGlzdC5kcmFnZ2luZwp7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBjdXJzb3I6IGhhbmQ7Cn0KCi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLAouc2xpY2stc2xpZGVyIC5zbGljay1saXN0CnsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKfQoKLnNsaWNrLXRyYWNrCnsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CgogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgIG1hcmdpbi1yaWdodDogYXV0bzsKfQouc2xpY2stdHJhY2s6YmVmb3JlLAouc2xpY2stdHJhY2s6YWZ0ZXIKewogICAgZGlzcGxheTogdGFibGU7CgogICAgY29udGVudDogJyc7Cn0KLnNsaWNrLXRyYWNrOmFmdGVyCnsKICAgIGNsZWFyOiBib3RoOwp9Ci5zbGljay1sb2FkaW5nIC5zbGljay10cmFjawp7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47Cn0KCi5zbGljay1zbGlkZQp7CiAgICBkaXNwbGF5OiBub25lOwogICAgZmxvYXQ6IGxlZnQ7CgogICAgaGVpZ2h0OiAxMDAlOwogICAgbWluLWhlaWdodDogMXB4Owp9CltkaXI9J3J0bCddIC5zbGljay1zbGlkZQp7CiAgICBmbG9hdDogcmlnaHQ7Cn0KLnNsaWNrLXNsaWRlIGltZwp7CiAgICBkaXNwbGF5OiBibG9jazsKfQouc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcKewogICAgZGlzcGxheTogbm9uZTsKfQouc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nCnsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwp9Ci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUKewogICAgZGlzcGxheTogYmxvY2s7Cn0KLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlCnsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKfQouc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlCnsKICAgIGRpc3BsYXk6IGJsb2NrOwoKICAgIGhlaWdodDogYXV0bzsKCiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKfQouc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHsKICAgIGRpc3BsYXk6IG5vbmU7Cn0K"}},"time_used":68,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":66,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/user_rankings/67b43776497631739863926.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.868Z","timestamp":1785143153868,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/user_rankings/67b43776497631739863926.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 07:32:06 GMT\r\netag: \"333e-67b43776-46ef535e30d1b38f;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 13118\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":13118,"size_decoded":13515,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"f2a8e66e03ac00192437a40334035cb4","sha1":"9efeeb962d9ca33e0922e7b07d59a1715bc693af","sha256":"de7d92e4a0692fd336ef12be37e3cd9b0cdbcd264e562155039b91f65a533352","sha512":"b5f12cf4dea7543af20fc7f4969965192ed3f916f9cc4478b16c00b7b33b95577a0849c2b6c1fc3a4d413656c068b98d793a46326f7e153623013bf214401ec8","ssdeep":"384:hB5xABu9sGeh1r8jo3szXF4Dv+SP+HD2y1:v5xABgsGeh+jry7+SP+6K","tlshash":"f242d0675df98db4b851ad10b0a086e0da1538518bd51c1228fe06d6af7cbade9f303d","first_seen":"2025-09-30T11:01:26.492578Z","last_seen":"2026-07-27T12:18:57.827704Z","times_seen":16,"resource_available":false,"data":"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"}},"time_used":119,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":118,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-vendor.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.565Z","timestamp":1785143154565,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-vendor.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"3b341e35b39f6195793ecaf5db7c1d63\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11054\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2c0ae71a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":82913,"size_decoded":32880,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (65472)","md5":"3b341e35b39f6195793ecaf5db7c1d63","sha1":"3ef56ed9ac8bfbf5347dc4592653703f59763083","sha256":"548669d6434f5204dca25b9a6f8a02f63301b8c1b58a717b91fec8b6c2918305","sha512":"6b222121b74ffeabd4de7b69f354ad25283d0989376e8e3f6d97f829e28175291eab0a535ca77c22d3f65595250ad9ad3909525c2eb74bf9783f4955c3d7cde2","ssdeep":"768:kURUFvX9zXAfE4dm9+fuDosXRfMySUHM1ONdYO31hY6d/o6cyO4fefHvSAW64F:kURUZXGfzd1uU+8ODY6JORfHBWJF","tlshash":"b483e6dcb295b57117ab20b5417f050bf33a7815a80ac0a4f266f4da7c7848ea06bf7d","first_seen":"2024-03-08T05:46:53Z","last_seen":"2026-08-03T13:22:13.504154Z","times_seen":65967,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgdHdrLXZlbmRvci5qcy5MSUNFTlNFICovCih3aW5kb3cudGF3a0pzb25wPXdpbmRvdy50YXdrSnNvbnB8fFtdKS5wdXNoKFtbInZlbmRvciJdLHsiMmIwZSI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24odCl7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBRbn0pKTt2YXIgcj1PYmplY3QuZnJlZXplKHt9KSxvPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gaSh0KXtyZXR1cm4gbnVsbD09dH1mdW5jdGlvbiBhKHQpe3JldHVybiBudWxsIT10fWZ1bmN0aW9uIHModCl7cmV0dXJuITA9PT10fWZ1bmN0aW9uIGModCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0fHwibnVtYmVyIj09dHlwZW9mIHR8fCJzeW1ib2wiPT10eXBlb2YgdHx8ImJvb2xlYW4iPT10eXBlb2YgdH1mdW5jdGlvbiB1KHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0fWZ1bmN0aW9uIGwodCl7cmV0dXJuIG51bGwhPT10JiYib2JqZWN0Ij09dHlwZW9mIHR9dmFyIGY9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztmdW5jdGlvbiBwKHQpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09Zi5jYWxsKHQpfWZ1bmN0aW9uIGQodCl7dmFyIGU9cGFyc2VGbG9hdChTdHJpbmcodCkpO3JldHVybiBlPj0wJiZNYXRoLmZsb29yKGUpPT09ZSYmaXNGaW5pdGUodCl9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYSh0KSYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbiYmImZ1bmN0aW9uIj09dHlwZW9mIHQuY2F0Y2h9ZnVuY3Rpb24gaCh0KXtyZXR1cm4gbnVsbD09dD8iIjpBcnJheS5pc0FycmF5KHQpfHxwKHQpJiZ0LnRvU3RyaW5nPT09Zj9KU09OLnN0cmluZ2lmeSh0LG0sMik6U3RyaW5nKHQpfWZ1bmN0aW9uIG0odCxlKXtyZXR1cm4gZSYmZS5fX3ZfaXNSZWY/ZS52YWx1ZTplfWZ1bmN0aW9uIF8odCl7dmFyIGU9cGFyc2VGbG9hdCh0KTtyZXR1cm4gaXNOYU4oZSk/dDplfWZ1bmN0aW9uIHkodCxlKXtmb3IodmFyIG49T2JqZWN0LmNyZWF0ZShudWxsKSxyPXQuc3BsaXQoIiwiKSxvPTA7bzxyLmxlbmd0aDtvKyspbltyW29dXT0hMDtyZXR1cm4gZT9mdW5jdGlvbih0KXtyZXR1cm4gblt0LnRvTG93ZXJDYXNlKCldfTpmdW5jdGlvbih0KXtyZXR1cm4gblt0XX19eSgic2xvdCxjb21wb25lbnQiLCEwKTt2YXIgZz15KCJrZXkscmVmLHNsb3Qsc2xvdC1zY29wZSxpcyIpO2Z1bmN0aW9uIGIodCxlKXt2YXIgbj10Lmxlbmd0aDtpZihuKXtpZihlPT09dFtuLTFdKXJldHVybiB2b2lkKHQubGVuZ3RoPW4tMSk7dmFyIHI9dC5pbmRleE9mKGUpO2lmKHI+LTEpcmV0dXJuIHQuc3BsaWNlKHIsMSl9fXZhciB3PU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7ZnVuY3Rpb24gJCh0LGUpe3JldHVybiB3LmNhbGwodCxlKX1mdW5jdGlvbiBDKHQpe3ZhciBlPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlW25dfHwoZVtuXT10KG4pKX19dmFyIHg9Ly0oXHcpL2csTz1DKChmdW5jdGlvbih0KXtyZXR1cm4gdC5yZXBsYWNlKHgsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGU/ZS50b1VwcGVyQ2FzZSgpOiIifSkpfSkpLGs9QygoZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKX0pKSxTPS9cQihbQS1aXSkvZyxBPUMoKGZ1bmN0aW9uKHQpe3JldHVybiB0LnJlcGxhY2UoUywiLSQxIikudG9Mb3dlckNhc2UoKX0pKTt2YXIgaj1GdW5jdGlvbi5wcm90b3R5cGUuYmluZD9mdW5jdGlvbih0LGUpe3JldHVybiB0LmJpbmQoZSl9OmZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gbihuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO3JldHVybiByP3I+MT90LmFwcGx5KGUsYXJndW1lbnRzKTp0LmNhbGwoZSxuKTp0LmNhbGwoZSl9cmV0dXJuIG4uX2xlbmd0aD10Lmxlbmd0aCxufTtmdW5jdGlvbiBFKHQsZSl7ZT1lfHwwO2Zvcih2YXIgbj10Lmxlbmd0aC1lLHI9bmV3IEFycmF5KG4pO24tLTspcltuXT10W24rZV07cmV0dXJuIHJ9ZnVuY3Rpb24gVCh0LGUpe2Zvcih2YXIgbiBpbiBlKXRbbl09ZVtuXTtyZXR1cm4gdH1mdW5jdGlvbiBQKHQpe2Zvcih2YXIgZT17fSxuPTA7bjx0Lmxlbmd0aDtuKyspdFtuXSYmVChlLHRbbl0pO3JldHVybiBlfWZ1bmN0aW9uIE0odCxlLG4pe312YXIgST1mdW5jdGlvbih0LGUsbil7cmV0dXJuITF9LEQ9ZnVuY3Rpb24odCl7cmV0dXJuIHR9O2Z1bmN0aW9uIE4odCxlKXtpZih0PT09ZSlyZXR1cm4hMDt2YXIgbj1sKHQpLHI9bChlKTtpZighbnx8IXIpcmV0dXJuIW4mJiFyJiZTdHJpbmcodCk9PT1TdHJpbmcoZSk7dHJ5e3ZhciBvPUFycmF5LmlzQXJyYXkodCksaT1BcnJheS5pc0FycmF5KGUpO2lmKG8mJmkpcmV0dXJuIHQubGVuZ3RoPT09ZS5sZW5ndGgmJnQuZXZlcnkoKGZ1bmN0aW9uKHQsbil7cmV0dXJuIE4odCxlW25dKX0pKTtpZih0IGluc3RhbmNlb2YgRGF0ZSYmZSBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIHQuZ2V0VGltZSgpPT09ZS5nZXRUaW1lKCk7aWYob3x8aSlyZXR1cm4hMTt2YXIgYT1PYmplY3Qua2V5cyh0KSxzPU9iamVjdC5rZXlzKGUpO3JldHVybiBhLmxlbmd0aD09PXMubGVuZ3RoJiZhLmV2ZXJ5KChmdW5jdGlvbihuKXtyZXR1cm4gTih0W25dLGVbbl0pfSkpfWNhdGNoKHQpe3JldHVybiExfX1mdW5jdGlvbiBMKHQsZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspaWYoTih0W25dLGUpKXJldHVybiBuO3JldHVybi0xfWZ1bmN0aW9uIEYodCl7dmFyIGU9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7ZXx8KGU9ITAsdC5hcHBseSh0aGlzLGFyZ3VtZW50cykpfX1mdW5jdGlvbiBSKHQsZSl7cmV0dXJuIHQ9PT1lPzA9PT10JiYxL3QhPTEvZTp0PT10fHxlPT1lfXZhciBWPSJkYXRhLXNlcnZlci1yZW5kZXJlZCIsSD1bImNvbXBvbmVudCIsImRpcmVjdGl2ZSIsImZpbHRlciJdLFU9WyJiZWZvcmVDcmVhdGUiLCJjcmVhdGVkIiwiYmVmb3JlTW91bnQiLCJtb3VudGVkIiwiYmVmb3JlVXBkYXRlIiwidXBkYXRlZCIsImJlZm9yZURlc3Ryb3kiLCJkZXN0cm95ZWQiLCJhY3RpdmF0ZWQiLCJkZWFjdGl2YXRlZCIsImVycm9yQ2FwdHVyZWQiLCJzZXJ2ZXJQcmVmZXRjaCIsInJlbmRlclRyYWNrZWQiLCJyZW5kZXJUcmlnZ2VyZWQiXSxCPXtvcHRpb25NZXJnZVN0cmF0ZWdpZXM6T2JqZWN0LmNyZWF0ZShudWxsKSxzaWxlbnQ6ITEscHJvZHVjdGlvblRpcDohMSxkZXZ0b29sczohMSxwZXJmb3JtYW5jZTohMSxlcnJvckhhbmRsZXI6bnVsbCx3YXJuSGFuZGxlcjpudWxsLGlnbm9yZWRFbGVtZW50czpbXSxrZXlDb2RlczpPYmplY3QuY3JlYXRlKG51bGwpLGlzUmVzZXJ2ZWRUYWc6SSxpc1Jlc2VydmVkQXR0cjpJLGlzVW5rbm93bkVsZW1lbnQ6SSxnZXRUYWdOYW1lc3BhY2U6TSxwYXJzZVBsYXRmb3JtVGFnTmFtZTpELG11c3RVc2VQcm9wOkksYXN5bmM6ITAsX2xpZmVjeWNsZUhvb2tzOlV9O2Z1bmN0aW9uIEcodCl7dmFyIGU9KHQrIiIpLmNoYXJDb2RlQXQoMCk7cmV0dXJuIDM2PT09ZXx8OTU9PT1lfWZ1bmN0aW9uIHoodCxlLG4scil7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEhcix3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KX12YXIgSz1uZXcgUmVnRXhwKCJbXiIuY29uY2F0KC9hLXpBLVpcdTAwQjdcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAzN0RcdTAzN0YtXHUxRkZGXHUyMDBDLVx1MjAwRFx1MjAzRi1cdTIwNDBcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRC8uc291cmNlLCIuJF9cXGRdIikpO3ZhciBXPSJfX3Byb3RvX18iaW57fSxxPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93LEo9cSYmd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKSxaPUomJi9tc2llfHRyaWRlbnQvLnRlc3QoSiksWD1KJiZKLmluZGV4T2YoIm1zaWUgOS4wIik+MCxRPUomJkouaW5kZXhPZigiZWRnZS8iKT4wO0omJkouaW5kZXhPZigiYW5kcm9pZCIpO3ZhciBZPUomJi9pcGhvbmV8aXBhZHxpcG9kfGlvcy8udGVzdChKKTtKJiYvY2hyb21lXC9cZCsvLnRlc3QoSiksSiYmL3BoYW50b21qcy8udGVzdChKKTt2YXIgdHQsZXQ9SiYmSi5tYXRjaCgvZmlyZWZveFwvKFxkKykvKSxudD17fS53YXRjaCxydD0hMTtpZihxKXRyeXt2YXIgb3Q9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KG90LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7cnQ9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QtcGFzc2l2ZSIsbnVsbCxvdCl9Y2F0Y2godCl7fXZhciBpdD1mdW5jdGlvbigpe3JldHVybiB2b2lkIDA9PT10dCYmKHR0PSFxJiZ2b2lkIDAhPT10JiZ0LnByb2Nlc3MmJiJzZXJ2ZXIiPT09dC5wcm9jZXNzLmVudi5WVUVfRU5WKSx0dH0sYXQ9cSYmd2luZG93Ll9fVlVFX0RFVlRPT0xTX0dMT0JBTF9IT09LX187ZnVuY3Rpb24gc3QodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQmJi9uYXRpdmUgY29kZS8udGVzdCh0LnRvU3RyaW5nKCkpfXZhciBjdCx1dD0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmc3QoU3ltYm9sKSYmInVuZGVmaW5lZCIhPXR5cGVvZiBSZWZsZWN0JiZzdChSZWZsZWN0Lm93bktleXMpO2N0PSJ1bmRlZmluZWQiIT10eXBlb2YgU2V0JiZzdChTZXQpP1NldDpmdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt0aGlzLnNldD1PYmplY3QuY3JlYXRlKG51bGwpfXJldHVybiB0LnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24odCl7cmV0dXJuITA9PT10aGlzLnNldFt0XX0sdC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKHQpe3RoaXMuc2V0W3RdPSEwfSx0LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuc2V0PU9iamVjdC5jcmVhdGUobnVsbCl9LHR9KCk7dmFyIGx0PW51bGw7ZnVuY3Rpb24gZnQodCl7dm9pZCAwPT09dCYmKHQ9bnVsbCksdHx8bHQmJmx0Ll9zY29wZS5vZmYoKSxsdD10LHQmJnQuX3Njb3BlLm9uKCl9dmFyIHB0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0LGUsbixyLG8saSxhLHMpe3RoaXMudGFnPXQsdGhpcy5kYXRhPWUsdGhpcy5jaGlsZHJlbj1uLHRoaXMudGV4dD1yLHRoaXMuZWxtPW8sdGhpcy5ucz12b2lkIDAsdGhpcy5jb250ZXh0PWksdGhpcy5mbkNvbnRleHQ9dm9pZCAwLHRoaXMuZm5PcHRpb25zPXZvaWQgMCx0aGlzLmZuU2NvcGVJZD12b2lkIDAsdGhpcy5rZXk9ZSYmZS5rZXksdGhpcy5jb21wb25lbnRPcHRpb25zPWEsdGhpcy5jb21wb25lbnRJbnN0YW5jZT12b2lkIDAsdGhpcy5wYXJlbnQ9dm9pZCAwLHRoaXMucmF3PSExLHRoaXMuaXNTdGF0aWM9ITEsdGhpcy5pc1Jvb3RJbnNlcnQ9ITAsdGhpcy5pc0NvbW1lbnQ9ITEsdGhpcy5pc0Nsb25lZD0hMSx0aGlzLmlzT25jZT0hMSx0aGlzLmFzeW5jRmFjdG9yeT1zLHRoaXMuYXN5bmNNZXRhPXZvaWQgMCx0aGlzLmlzQXN5bmNQbGFjZWhvbGRlcj0hMX1yZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQucHJvdG90eXBlLCJjaGlsZCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbXBvbmVudEluc3RhbmNlfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHR9KCksZHQ9ZnVuY3Rpb24odCl7dm9pZCAwPT09dCYmKHQ9IiIpO3ZhciBlPW5ldyBwdDtyZXR1cm4gZS50ZXh0PXQsZS5pc0NvbW1lbnQ9ITAsZX07ZnVuY3Rpb24gdnQodCl7cmV0dXJuIG5ldyBwdCh2b2lkIDAsdm9pZCAwLHZvaWQgMCxTdHJpbmcodCkpfWZ1bmN0aW9uIGh0KHQpe3ZhciBlPW5ldyBwdCh0LnRhZyx0LmRhdGEsdC5jaGlsZHJlbiYmdC5jaGlsZHJlbi5zbGljZSgpLHQudGV4dCx0LmVsbSx0LmNvbnRleHQsdC5jb21wb25lbnRPcHRpb25zLHQuYXN5bmNGYWN0b3J5KTtyZXR1cm4gZS5ucz10Lm5zLGUuaXNTdGF0aWM9dC5pc1N0YXRpYyxlLmtleT10LmtleSxlLmlzQ29tbWVudD10LmlzQ29tbWVudCxlLmZuQ29udGV4dD10LmZuQ29udGV4dCxlLmZuT3B0aW9ucz10LmZuT3B0aW9ucyxlLmZuU2NvcGVJZD10LmZuU2NvcGVJZCxlLmFzeW5jTWV0YT10LmFzeW5jTWV0YSxlLmlzQ2xvbmVkPSEwLGV9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO3ZhciBtdD0wLF90PVtdLHl0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe3RoaXMuX3BlbmRpbmc9ITEsdGhpcy5pZD1tdCsrLHRoaXMuc3Vicz1bXX1yZXR1cm4gdC5wcm90b3R5cGUuYWRkU3ViPWZ1bmN0aW9uKHQpe3RoaXMuc3Vicy5wdXNoKHQpfSx0LnByb3RvdHlwZS5yZW1vdmVTdWI9ZnVuY3Rpb24odCl7dGhpcy5zdWJzW3RoaXMuc3Vicy5pbmRleE9mKHQpXT1udWxsLHRoaXMuX3BlbmRpbmd8fCh0aGlzLl9wZW5kaW5nPSEwLF90LnB1c2godGhpcykpfSx0LnByb3RvdHlwZS5kZXBlbmQ9ZnVuY3Rpb24oZSl7dC50YXJnZXQmJnQudGFyZ2V0LmFkZERlcCh0aGlzKX0sdC5wcm90b3R5cGUubm90aWZ5PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnN1YnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdH0pKSxuPTAscj1lLmxlbmd0aDtuPHI7bisrKXtlW25dLnVwZGF0ZSgpfX0sdH0oKTt5dC50YXJnZXQ9bnVsbDt2YXIgZ3Q9W107ZnVuY3Rpb24gYnQodCl7Z3QucHVzaCh0KSx5dC50YXJnZXQ9dH1mdW5jdGlvbiB3dCgpe2d0LnBvcCgpLHl0LnRhcmdldD1ndFtndC5sZW5ndGgtMV19dmFyICR0PUFycmF5LnByb3RvdHlwZSxDdD1PYmplY3QuY3JlYXRlKCR0KTtbInB1c2giLCJwb3AiLCJzaGlmdCIsInVuc2hpZnQiLCJzcGxpY2UiLCJzb3J0IiwicmV2ZXJzZSJdLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBlPSR0W3RdO3ooQ3QsdCwoZnVuY3Rpb24oKXtmb3IodmFyIG49W10scj0wO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspbltyXT1hcmd1bWVudHNbcl07dmFyIG8saT1lLmFwcGx5KHRoaXMsbiksYT10aGlzLl9fb2JfXztzd2l0Y2godCl7Y2FzZSJwdXNoIjpjYXNlInVuc2hpZnQiOm89bjticmVhaztjYXNlInNwbGljZSI6bz1uLnNsaWNlKDIpfXJldHVybiBvJiZhLm9ic2VydmVBcnJheShvKSxhLmRlcC5ub3RpZnkoKSxpfSkpfSkpO3ZhciB4dD1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhDdCksT3Q9e30sa3Q9ITA7ZnVuY3Rpb24gU3QodCl7a3Q9dH12YXIgQXQ9e25vdGlmeTpNLGRlcGVuZDpNLGFkZFN1YjpNLHJlbW92ZVN1YjpNfSxqdD1mdW5jdGlvbigpe2Z1bmN0aW9uIHQodCxlLG4pe2lmKHZvaWQgMD09PWUmJihlPSExKSx2b2lkIDA9PT1uJiYobj0hMSksdGhpcy52YWx1ZT10LHRoaXMuc2hhbGxvdz1lLHRoaXMubW9jaz1uLHRoaXMuZGVwPW4/QXQ6bmV3IHl0LHRoaXMudm1Db3VudD0wLHoodCwiX19vYl9fIix0aGlzKSxvKHQpKXtpZighbilpZihXKXQuX19wcm90b19fPUN0O2Vsc2UgZm9yKHZhciByPTAsaT14dC5sZW5ndGg7cjxpO3IrKyl7dmFyIGE9eHRbcl07eih0LGEsQ3RbYV0pfWV8fHRoaXMub2JzZXJ2ZUFycmF5KHQpfWVsc2V7dmFyIHM9T2JqZWN0LmtleXModCk7Zm9yKHI9MDtyPHMubGVuZ3RoO3IrKylUdCh0LGE9c1tyXSxPdCx2b2lkIDAsZSxuKX19cmV0dXJuIHQucHJvdG90eXBlLm9ic2VydmVBcnJheT1mdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPXQubGVuZ3RoO2U8bjtlKyspRXQodFtlXSwhMSx0aGlzLm1vY2spfSx0fSgpO2Z1bmN0aW9uIEV0KHQsZSxuKXtyZXR1cm4gdCYmJCh0LCJfX29iX18iKSYmdC5fX29iX18gaW5zdGFuY2VvZiBqdD90Ll9fb2JfXzoha3R8fCFuJiZpdCgpfHwhbyh0KSYmIXAodCl8fCFPYmplY3QuaXNFeHRlbnNpYmxlKHQpfHx0Ll9fdl9za2lwfHxMdCh0KXx8dCBpbnN0YW5jZW9mIHB0P3ZvaWQgMDpuZXcganQodCxlLG4pfWZ1bmN0aW9uIFR0KHQsZSxuLHIsaSxhLHMpe3ZvaWQgMD09PXMmJihzPSExKTt2YXIgYz1uZXcgeXQsdT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSk7aWYoIXV8fCExIT09dS5jb25maWd1cmFibGUpe3ZhciBsPXUmJnUuZ2V0LGY9dSYmdS5zZXQ7bCYmIWZ8fG4hPT1PdCYmMiE9PWFyZ3VtZW50cy5sZW5ndGh8fChuPXRbZV0pO3ZhciBwPWk/biYmbi5fX29iX186RXQobiwhMSxhKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dmFyIGU9bD9sLmNhbGwodCk6bjtyZXR1cm4geXQudGFyZ2V0JiYoYy5kZXBlbmQoKSxwJiYocC5kZXAuZGVwZW5kKCksbyhlKSYmSXQoZSkpKSxMdChlKSYmIWk/ZS52YWx1ZTplfSxzZXQ6ZnVuY3Rpb24oZSl7dmFyIHI9bD9sLmNhbGwodCk6bjtpZihSKHIsZSkpe2lmKGYpZi5jYWxsKHQsZSk7ZWxzZXtpZihsKXJldHVybjtpZighaSYmTHQocikmJiFMdChlKSlyZXR1cm4gdm9pZChyLnZhbHVlPWUpO249ZX1wPWk/ZSYmZS5fX29iX186RXQoZSwhMSxhKSxjLm5vdGlmeSgpfX19KSxjfX1mdW5jdGlvbiBQdCh0LGUsbil7aWYoIU50KHQpKXt2YXIgcj10Ll9fb2JfXztyZXR1cm4gbyh0KSYmZChlKT8odC5sZW5ndGg9TWF0aC5tYXgodC5sZW5ndGgsZSksdC5zcGxpY2UoZSwxLG4pLHImJiFyLnNoYWxsb3cmJnIubW9jayYmRXQobiwhMSwhMCksbik6ZSBpbiB0JiYhKGUgaW4gT2JqZWN0LnByb3RvdHlwZSk/KHRbZV09bixuKTp0Ll9pc1Z1ZXx8ciYmci52bUNvdW50P246cj8oVHQoci52YWx1ZSxlLG4sdm9pZCAwLHIuc2hhbGxvdyxyLm1vY2spLHIuZGVwLm5vdGlmeSgpLG4pOih0W2VdPW4sbil9fWZ1bmN0aW9uIE10KHQsZSl7aWYobyh0KSYmZChlKSl0LnNwbGljZShlLDEpO2Vsc2V7dmFyIG49dC5fX29iX187dC5faXNWdWV8fG4mJm4udm1Db3VudHx8TnQodCl8fCQodCxlKSYmKGRlbGV0ZSB0W2VdLG4mJm4uZGVwLm5vdGlmeSgpKX19ZnVuY3Rpb24gSXQodCl7Zm9yKHZhciBlPXZvaWQgMCxuPTAscj10Lmxlbmd0aDtuPHI7bisrKShlPXRbbl0pJiZlLl9fb2JfXyYmZS5fX29iX18uZGVwLmRlcGVuZCgpLG8oZSkmJkl0KGUpfWZ1bmN0aW9uIER0KHQpe3JldHVybiBmdW5jdGlvbih0LGUpe050KHQpfHxFdCh0LGUsaXQoKSl9KHQsITApLHoodCwiX192X2lzU2hhbGxvdyIsITApLHR9ZnVuY3Rpb24gTnQodCl7cmV0dXJuISghdHx8IXQuX192X2lzUmVhZG9ubHkpfWZ1bmN0aW9uIEx0KHQpe3JldHVybiEoIXR8fCEwIT09dC5fX3ZfaXNSZWYpfWZ1bmN0aW9uIEZ0KHQsZSxuKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxuLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXt2YXIgdD1lW25dO2lmKEx0KHQpKXJldHVybiB0LnZhbHVlO3ZhciByPXQmJnQuX19vYl9fO3JldHVybiByJiZyLmRlcC5kZXBlbmQoKSx0fSxzZXQ6ZnVuY3Rpb24odCl7dmFyIHI9ZVtuXTtMdChyKSYmIUx0KHQpP3IudmFsdWU9dDplW25dPXR9fSl9dmFyIFJ0LFZ0PSJ3YXRjaGVyIjsiIi5jb25jYXQoVnQsIiBjYWxsYmFjayIpLCIiLmNvbmNhdChWdCwiIGdldHRlciIpLCIiLmNvbmNhdChWdCwiIGNsZWFudXAiKTt2YXIgSHQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe3ZvaWQgMD09PXQmJih0PSExKSx0aGlzLmRldGFjaGVkPXQsdGhpcy5hY3RpdmU9ITAsdGhpcy5lZmZlY3RzPVtdLHRoaXMuY2xlYW51cHM9W10sdGhpcy5wYXJlbnQ9UnQsIXQmJlJ0JiYodGhpcy5pbmRleD0oUnQuc2NvcGVzfHwoUnQuc2NvcGVzPVtdKSkucHVzaCh0aGlzKS0xKX1yZXR1cm4gdC5wcm90b3R5cGUucnVuPWZ1bmN0aW9uKHQpe2lmKHRoaXMuYWN0aXZlKXt2YXIgZT1SdDt0cnl7cmV0dXJuIFJ0PXRoaXMsdCgpfWZpbmFsbHl7UnQ9ZX19fSx0LnByb3RvdHlwZS5vbj1mdW5jdGlvbigpe1J0PXRoaXN9LHQucHJvdG90eXBlLm9mZj1mdW5jdGlvbigpe1J0PXRoaXMucGFyZW50fSx0LnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKHQpe2lmKHRoaXMuYWN0aXZlKXt2YXIgZT12b2lkIDAsbj12b2lkIDA7Zm9yKGU9MCxuPXRoaXMuZWZmZWN0cy5sZW5ndGg7ZTxuO2UrKyl0aGlzLmVmZmVjdHNbZV0udGVhcmRvd24oKTtmb3IoZT0wLG49dGhpcy5jbGVhbnVwcy5sZW5ndGg7ZTxuO2UrKyl0aGlzLmNsZWFudXBzW2VdKCk7aWYodGhpcy5zY29wZXMpZm9yKGU9MCxuPXRoaXMuc2NvcGVzLmxlbmd0aDtlPG47ZSsrKXRoaXMuc2NvcGVzW2VdLnN0b3AoITApO2lmKCF0aGlzLmRldGFjaGVkJiZ0aGlzLnBhcmVudCYmIXQpe3ZhciByPXRoaXMucGFyZW50LnNjb3Blcy5wb3AoKTtyJiZyIT09dGhpcyYmKHRoaXMucGFyZW50LnNjb3Blc1t0aGlzLmluZGV4XT1yLHIuaW5kZXg9dGhpcy5pbmRleCl9dGhpcy5wYXJlbnQ9dm9pZCAwLHRoaXMuYWN0aXZlPSExfX0sdH0oKTt2YXIgVXQ9QygoZnVuY3Rpb24odCl7dmFyIGU9IiYiPT09dC5jaGFyQXQoMCksbj0ifiI9PT0odD1lP3Quc2xpY2UoMSk6dCkuY2hhckF0KDApLHI9IiEiPT09KHQ9bj90LnNsaWNlKDEpOnQpLmNoYXJBdCgwKTtyZXR1cm57bmFtZTp0PXI/dC5zbGljZSgxKTp0LG9uY2U6bixjYXB0dXJlOnIscGFzc2l2ZTplfX0pKTtmdW5jdGlvbiBCdCh0LGUpe2Z1bmN0aW9uIG4oKXt2YXIgdD1uLmZucztpZighbyh0KSlyZXR1cm4gU2UodCxudWxsLGFyZ3VtZW50cyxlLCJ2LW9uIGhhbmRsZXIiKTtmb3IodmFyIHI9dC5zbGljZSgpLGk9MDtpPHIubGVuZ3RoO2krKylTZShyW2ldLG51bGwsYXJndW1lbnRzLGUsInYtb24gaGFuZGxlciIpfXJldHVybiBuLmZucz10LG59ZnVuY3Rpb24gR3QodCxlLG4scixvLGEpe3ZhciBjLHUsbCxmO2ZvcihjIGluIHQpdT10W2NdLGw9ZVtjXSxmPVV0KGMpLGkodSl8fChpKGwpPyhpKHUuZm5zKSYmKHU9dFtjXT1CdCh1LGEpKSxzKGYub25jZSkmJih1PXRbY109byhmLm5hbWUsdSxmLmNhcHR1cmUpKSxuKGYubmFtZSx1LGYuY2FwdHVyZSxmLnBhc3NpdmUsZi5wYXJhbXMpKTp1IT09bCYmKGwuZm5zPXUsdFtjXT1sKSk7Zm9yKGMgaW4gZSlpKHRbY10pJiZyKChmPVV0KGMpKS5uYW1lLGVbY10sZi5jYXB0dXJlKX1mdW5jdGlvbiB6dCh0LGUsbil7dmFyIHI7dCBpbnN0YW5jZW9mIHB0JiYodD10LmRhdGEuaG9va3x8KHQuZGF0YS5ob29rPXt9KSk7dmFyIG89dFtlXTtmdW5jdGlvbiBjKCl7bi5hcHBseSh0aGlzLGFyZ3VtZW50cyksYihyLmZucyxjKX1pKG8pP3I9QnQoW2NdKTphKG8uZm5zKSYmcyhvLm1lcmdlZCk/KHI9bykuZm5zLnB1c2goYyk6cj1CdChbbyxjXSksci5tZXJnZWQ9ITAsdFtlXT1yfWZ1bmN0aW9uIEt0KHQsZSxuLHIsbyl7aWYoYShlKSl7aWYoJChlLG4pKXJldHVybiB0W25dPWVbbl0sb3x8ZGVsZXRlIGVbbl0sITA7aWYoJChlLHIpKXJldHVybiB0W25dPWVbcl0sb3x8ZGVsZXRlIGVbcl0sITB9cmV0dXJuITF9ZnVuY3Rpb24gV3QodCl7cmV0dXJuIGModCk/W3Z0KHQpXTpvKHQpP2Z1bmN0aW9uIHQoZSxuKXt2YXIgcix1LGwsZixwPVtdO2ZvcihyPTA7cjxlLmxlbmd0aDtyKyspaSh1PWVbcl0pfHwiYm9vbGVhbiI9PXR5cGVvZiB1fHwobD1wLmxlbmd0aC0xLGY9cFtsXSxvKHUpP3UubGVuZ3RoPjAmJihxdCgodT10KHUsIiIuY29uY2F0KG58fCIiLCJfIikuY29uY2F0KHIpKSlbMF0pJiZxdChmKSYmKHBbbF09dnQoZi50ZXh0K3VbMF0udGV4dCksdS5zaGlmdCgpKSxwLnB1c2guYXBwbHkocCx1KSk6Yyh1KT9xdChmKT9wW2xdPXZ0KGYudGV4dCt1KToiIiE9PXUmJnAucHVzaCh2dCh1KSk6cXQodSkmJnF0KGYpP3BbbF09dnQoZi50ZXh0K3UudGV4dCk6KHMoZS5faXNWTGlzdCkmJmEodS50YWcpJiZpKHUua2V5KSYmYShuKSYmKHUua2V5PSJfX3ZsaXN0Ii5jb25jYXQobiwiXyIpLmNvbmNhdChyLCJfXyIpKSxwLnB1c2godSkpKTtyZXR1cm4gcH0odCk6dm9pZCAwfWZ1bmN0aW9uIHF0KHQpe3JldHVybiBhKHQpJiZhKHQudGV4dCkmJmZ1bmN0aW9uKHQpe3JldHVybiExPT09dH0odC5pc0NvbW1lbnQpfWZ1bmN0aW9uIEp0KHQsZSl7dmFyIG4scixpLHMsYz1udWxsO2lmKG8odCl8fCJzdHJpbmciPT10eXBlb2YgdClmb3IoYz1uZXcgQXJyYXkodC5sZW5ndGgpLG49MCxyPXQubGVuZ3RoO248cjtuKyspY1tuXT1lKHRbbl0sbik7ZWxzZSBpZigibnVtYmVyIj09dHlwZW9mIHQpZm9yKGM9bmV3IEFycmF5KHQpLG49MDtuPHQ7bisrKWNbbl09ZShuKzEsbik7ZWxzZSBpZihsKHQpKWlmKHV0JiZ0W1N5bWJvbC5pdGVyYXRvcl0pe2M9W107Zm9yKHZhciB1PXRbU3ltYm9sLml0ZXJhdG9yXSgpLGY9dS5uZXh0KCk7IWYuZG9uZTspYy5wdXNoKGUoZi52YWx1ZSxjLmxlbmd0aCkpLGY9dS5uZXh0KCl9ZWxzZSBmb3IoaT1PYmplY3Qua2V5cyh0KSxjPW5ldyBBcnJheShpLmxlbmd0aCksbj0wLHI9aS5sZW5ndGg7bjxyO24rKylzPWlbbl0sY1tuXT1lKHRbc10scyxuKTtyZXR1cm4gYShjKXx8KGM9W10pLGMuX2lzVkxpc3Q9ITAsY31mdW5jdGlvbiBadCh0LGUsbixyKXt2YXIgbyxpPXRoaXMuJHNjb3BlZFNsb3RzW3RdO2k/KG49bnx8e30sciYmKG49VChUKHt9LHIpLG4pKSxvPWkobil8fCh1KGUpP2UoKTplKSk6bz10aGlzLiRzbG90c1t0XXx8KHUoZSk/ZSgpOmUpO3ZhciBhPW4mJm4uc2xvdDtyZXR1cm4gYT90aGlzLiRjcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIse3Nsb3Q6YX0sbyk6b31mdW5jdGlvbiBYdCh0KXtyZXR1cm4gTm4odGhpcy4kb3B0aW9ucywiZmlsdGVycyIsdCwhMCl8fER9ZnVuY3Rpb24gUXQodCxlKXtyZXR1cm4gbyh0KT8tMT09PXQuaW5kZXhPZihlKTp0IT09ZX1mdW5jdGlvbiBZdCh0LGUsbixyLG8pe3ZhciBpPUIua2V5Q29kZXNbZV18fG47cmV0dXJuIG8mJnImJiFCLmtleUNvZGVzW2VdP1F0KG8scik6aT9RdChpLHQpOnI/QShyKSE9PWU6dm9pZCAwPT09dH1mdW5jdGlvbiB0ZSh0LGUsbixyLGkpe2lmKG4mJmwobikpe28obikmJihuPVAobikpO3ZhciBhPXZvaWQgMCxzPWZ1bmN0aW9uKG8pe2lmKCJjbGFzcyI9PT1vfHwic3R5bGUiPT09b3x8ZyhvKSlhPXQ7ZWxzZXt2YXIgcz10LmF0dHJzJiZ0LmF0dHJzLnR5cGU7YT1yfHxCLm11c3RVc2VQcm9wKGUscyxvKT90LmRvbVByb3BzfHwodC5kb21Qcm9wcz17fSk6dC5hdHRyc3x8KHQuYXR0cnM9e30pfXZhciBjPU8obyksdT1BKG8pO2MgaW4gYXx8dSBpbiBhfHwoYVtvXT1uW29dLCFpKXx8KCh0Lm9ufHwodC5vbj17fSkpWyJ1cGRhdGU6Ii5jb25jYXQobyldPWZ1bmN0aW9uKHQpe25bb109dH0pfTtmb3IodmFyIGMgaW4gbilzKGMpfXJldHVybiB0fWZ1bmN0aW9uIGVlKHQsZSl7dmFyIG49dGhpcy5fc3RhdGljVHJlZXN8fCh0aGlzLl9zdGF0aWNUcmVlcz1bXSkscj1uW3RdO3JldHVybiByJiYhZXx8cmUocj1uW3RdPXRoaXMuJG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zW3RdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksdGhpcy5fYyx0aGlzKSwiX19zdGF0aWNfXyIuY29uY2F0KHQpLCExKSxyfWZ1bmN0aW9uIG5lKHQsZSxuKXtyZXR1cm4gcmUodCwiX19vbmNlX18iLmNvbmNhdChlKS5jb25jYXQobj8iXyIuY29uY2F0KG4pOiIiKSwhMCksdH1mdW5jdGlvbiByZSh0LGUsbil7aWYobyh0KSlmb3IodmFyIHI9MDtyPHQubGVuZ3RoO3IrKyl0W3JdJiYic3RyaW5nIiE9dHlwZW9mIHRbcl0mJm9lKHRbcl0sIiIuY29uY2F0KGUsIl8iKS5jb25jYXQociksbik7ZWxzZSBvZSh0LGUsbil9ZnVuY3Rpb24gb2UodCxlLG4pe3QuaXNTdGF0aWM9ITAsdC5rZXk9ZSx0LmlzT25jZT1ufWZ1bmN0aW9uIGllKHQsZSl7aWYoZSYmcChlKSl7dmFyIG49dC5vbj10Lm9uP1Qoe30sdC5vbik6e307Zm9yKHZhciByIGluIGUpe3ZhciBvPW5bcl0saT1lW3JdO25bcl09bz9bXS5jb25jYXQobyxpKTppfX1yZXR1cm4gdH1mdW5jdGlvbiBhZSh0LGUsbixyKXtlPWV8fHskc3RhYmxlOiFufTtmb3IodmFyIGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXTtvKGEpP2FlKGEsZSxuKTphJiYoYS5wcm94eSYmKGEuZm4ucHJveHk9ITApLGVbYS5rZXldPWEuZm4pfXJldHVybiByJiYoZS4ka2V5PXIpLGV9ZnVuY3Rpb24gc2UodCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rPTIpe3ZhciByPWVbbl07InN0cmluZyI9PXR5cGVvZiByJiZyJiYodFtlW25dXT1lW24rMV0pfXJldHVybiB0fWZ1bmN0aW9uIGNlKHQsZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P2UrdDp0fWZ1bmN0aW9uIHVlKHQpe3QuX289bmUsdC5fbj1fLHQuX3M9aCx0Ll9sPUp0LHQuX3Q9WnQsdC5fcT1OLHQuX2k9TCx0Ll9tPWVlLHQuX2Y9WHQsdC5faz1ZdCx0Ll9iPXRlLHQuX3Y9dnQsdC5fZT1kdCx0Ll91PWFlLHQuX2c9aWUsdC5fZD1zZSx0Ll9wPWNlfWZ1bmN0aW9uIGxlKHQsZSl7aWYoIXR8fCF0Lmxlbmd0aClyZXR1cm57fTtmb3IodmFyIG49e30scj0wLG89dC5sZW5ndGg7cjxvO3IrKyl7dmFyIGk9dFtyXSxhPWkuZGF0YTtpZihhJiZhLmF0dHJzJiZhLmF0dHJzLnNsb3QmJmRlbGV0ZSBhLmF0dHJzLnNsb3QsaS5jb250ZXh0IT09ZSYmaS5mbkNvbnRleHQhPT1lfHwhYXx8bnVsbD09YS5zbG90KShuLmRlZmF1bHR8fChuLmRlZmF1bHQ9W10pKS5wdXNoKGkpO2Vsc2V7dmFyIHM9YS5zbG90LGM9bltzXXx8KG5bc109W10pOyJ0ZW1wbGF0ZSI9PT1pLnRhZz9jLnB1c2guYXBwbHkoYyxpLmNoaWxkcmVufHxbXSk6Yy5wdXNoKGkpfX1mb3IodmFyIHUgaW4gbiluW3VdLmV2ZXJ5KGZlKSYmZGVsZXRlIG5bdV07cmV0dXJuIG59ZnVuY3Rpb24gZmUodCl7cmV0dXJuIHQuaXNDb21tZW50JiYhdC5hc3luY0ZhY3Rvcnl8fCIgIj09PXQudGV4dH1mdW5jdGlvbiBwZSh0KXtyZXR1cm4gdC5pc0NvbW1lbnQmJnQuYXN5bmNGYWN0b3J5fWZ1bmN0aW9uIGRlKHQsZSxuLG8pe3ZhciBpLGE9T2JqZWN0LmtleXMobikubGVuZ3RoPjAscz1lPyEhZS4kc3RhYmxlOiFhLGM9ZSYmZS4ka2V5O2lmKGUpe2lmKGUuX25vcm1hbGl6ZWQpcmV0dXJuIGUuX25vcm1hbGl6ZWQ7aWYocyYmbyYmbyE9PXImJmM9PT1vLiRrZXkmJiFhJiYhby4kaGFzTm9ybWFsKXJldHVybiBvO2Zvcih2YXIgdSBpbiBpPXt9LGUpZVt1XSYmIiQiIT09dVswXSYmKGlbdV09dmUodCxuLHUsZVt1XSkpfWVsc2UgaT17fTtmb3IodmFyIGwgaW4gbilsIGluIGl8fChpW2xdPWhlKG4sbCkpO3JldHVybiBlJiZPYmplY3QuaXNFeHRlbnNpYmxlKGUpJiYoZS5fbm9ybWFsaXplZD1pKSx6KGksIiRzdGFibGUiLHMpLHooaSwiJGtleSIsYykseihpLCIkaGFzTm9ybWFsIixhKSxpfWZ1bmN0aW9uIHZlKHQsZSxuLHIpe3ZhciBpPWZ1bmN0aW9uKCl7dmFyIGU9bHQ7ZnQodCk7dmFyIG49YXJndW1lbnRzLmxlbmd0aD9yLmFwcGx5KG51bGwsYXJndW1lbnRzKTpyKHt9KSxpPShuPW4mJiJvYmplY3QiPT10eXBlb2YgbiYmIW8obik/W25dOld0KG4pKSYmblswXTtyZXR1cm4gZnQoZSksbiYmKCFpfHwxPT09bi5sZW5ndGgmJmkuaXNDb21tZW50JiYhcGUoaSkpP3ZvaWQgMDpufTtyZXR1cm4gci5wcm94eSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsbix7Z2V0OmksZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KSxpfWZ1bmN0aW9uIGhlKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIHRbZV19fWZ1bmN0aW9uIG1lKHQpe3JldHVybntnZXQgYXR0cnMoKXtpZighdC5fYXR0cnNQcm94eSl7dmFyIGU9dC5fYXR0cnNQcm94eT17fTt6KGUsIl92X2F0dHJfcHJveHkiLCEwKSxfZShlLHQuJGF0dHJzLHIsdCwiJGF0dHJzIil9cmV0dXJuIHQuX2F0dHJzUHJveHl9LGdldCBsaXN0ZW5lcnMoKXt0Ll9saXN0ZW5lcnNQcm94eXx8X2UodC5fbGlzdGVuZXJzUHJveHk9e30sdC4kbGlzdGVuZXJzLHIsdCwiJGxpc3RlbmVycyIpO3JldHVybiB0Ll9saXN0ZW5lcnNQcm94eX0sZ2V0IHNsb3RzKCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiB0Ll9zbG90c1Byb3h5fHxnZSh0Ll9zbG90c1Byb3h5PXt9LHQuJHNjb3BlZFNsb3RzKSx0Ll9zbG90c1Byb3h5fSh0KX0sZW1pdDpqKHQuJGVtaXQsdCksZXhwb3NlOmZ1bmN0aW9uKGUpe2UmJk9iamVjdC5rZXlzKGUpLmZvckVhY2goKGZ1bmN0aW9uKG4pe3JldHVybiBGdCh0LGUsbil9KSl9fX1mdW5jdGlvbiBfZSh0LGUsbixyLG8pe3ZhciBpPSExO2Zvcih2YXIgYSBpbiBlKWEgaW4gdD9lW2FdIT09blthXSYmKGk9ITApOihpPSEwLHllKHQsYSxyLG8pKTtmb3IodmFyIGEgaW4gdClhIGluIGV8fChpPSEwLGRlbGV0ZSB0W2FdKTtyZXR1cm4gaX1mdW5jdGlvbiB5ZSh0LGUsbixyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbltyXVtlXX19KX1mdW5jdGlvbiBnZSh0LGUpe2Zvcih2YXIgbiBpbiBlKXRbbl09ZVtuXTtmb3IodmFyIG4gaW4gdCluIGluIGV8fGRlbGV0ZSB0W25dfXZhciBiZT1udWxsO2Z1bmN0aW9uIHdlKHQsZSl7cmV0dXJuKHQuX19lc01vZHVsZXx8dXQmJiJNb2R1bGUiPT09dFtTeW1ib2wudG9TdHJpbmdUYWddKSYmKHQ9dC5kZWZhdWx0KSxsKHQpP2UuZXh0ZW5kKHQpOnR9ZnVuY3Rpb24gJGUodCl7aWYobyh0KSlmb3IodmFyIGU9MDtlPHQubGVuZ3RoO2UrKyl7dmFyIG49dFtlXTtpZihhKG4pJiYoYShuLmNvbXBvbmVudE9wdGlvbnMpfHxwZShuKSkpcmV0dXJuIG59fWZ1bmN0aW9uIENlKHQsZSxuLHIsaSxhKXtyZXR1cm4obyhuKXx8YyhuKSkmJihpPXIscj1uLG49dm9pZCAwKSxzKGEpJiYoaT0yKSx4ZSh0LGUsbixyLGkpfWZ1bmN0aW9uIHhlKHQsZSxuLHIsaSl7aWYoYShuKSYmYShuLl9fb2JfXykpcmV0dXJuIGR0KCk7aWYoYShuKSYmYShuLmlzKSYmKGU9bi5pcyksIWUpcmV0dXJuIGR0KCk7dmFyIHMsYztpZihvKHIpJiZ1KHJbMF0pJiYoKG49bnx8e30pLnNjb3BlZFNsb3RzPXtkZWZhdWx0OnJbMF19LHIubGVuZ3RoPTApLDI9PT1pP3I9V3Qocik6MT09PWkmJihyPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8dC5sZW5ndGg7ZSsrKWlmKG8odFtlXSkpcmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sdCk7cmV0dXJuIHR9KHIpKSwic3RyaW5nIj09dHlwZW9mIGUpe3ZhciBmPXZvaWQgMDtjPXQuJHZub2RlJiZ0LiR2bm9kZS5uc3x8Qi5nZXRUYWdOYW1lc3BhY2UoZSkscz1CLmlzUmVzZXJ2ZWRUYWcoZSk/bmV3IHB0KEIucGFyc2VQbGF0Zm9ybVRhZ05hbWUoZSksbixyLHZvaWQgMCx2b2lkIDAsdCk6biYmbi5wcmV8fCFhKGY9Tm4odC4kb3B0aW9ucywiY29tcG9uZW50cyIsZSkpP25ldyBwdChlLG4scix2b2lkIDAsdm9pZCAwLHQpOkNuKGYsbix0LHIsZSl9ZWxzZSBzPUNuKGUsbix0LHIpO3JldHVybiBvKHMpP3M6YShzKT8oYShjKSYmT2UocyxjKSxhKG4pJiZmdW5jdGlvbih0KXtsKHQuc3R5bGUpJiZVZSh0LnN0eWxlKSxsKHQuY2xhc3MpJiZVZSh0LmNsYXNzKX0obikscyk6ZHQoKX1mdW5jdGlvbiBPZSh0LGUsbil7aWYodC5ucz1lLCJmb3JlaWduT2JqZWN0Ij09PXQudGFnJiYoZT12b2lkIDAsbj0hMCksYSh0LmNoaWxkcmVuKSlmb3IodmFyIHI9MCxvPXQuY2hpbGRyZW4ubGVuZ3RoO3I8bztyKyspe3ZhciBjPXQuY2hpbGRyZW5bcl07YShjLnRhZykmJihpKGMubnMpfHxzKG4pJiYic3ZnIiE9PWMudGFnKSYmT2UoYyxlLG4pfX1mdW5jdGlvbiBrZSh0LGUsbil7YnQoKTt0cnl7aWYoZSlmb3IodmFyIHI9ZTtyPXIuJHBhcmVudDspe3ZhciBvPXIuJG9wdGlvbnMuZXJyb3JDYXB0dXJlZDtpZihvKWZvcih2YXIgaT0wO2k8by5sZW5ndGg7aSsrKXRyeXtpZighMT09PW9baV0uY2FsbChyLHQsZSxuKSlyZXR1cm59Y2F0Y2godCl7QWUodCxyLCJlcnJvckNhcHR1cmVkIGhvb2siKX19QWUodCxlLG4pfWZpbmFsbHl7d3QoKX19ZnVuY3Rpb24gU2UodCxlLG4scixvKXt2YXIgaTt0cnl7KGk9bj90LmFwcGx5KGUsbik6dC5jYWxsKGUpKSYmIWkuX2lzVnVlJiZ2KGkpJiYhaS5faGFuZGxlZCYmKGkuY2F0Y2goKGZ1bmN0aW9uKHQpe3JldHVybiBrZSh0LHIsbysiIChQcm9taXNlL2FzeW5jKSIpfSkpLGkuX2hhbmRsZWQ9ITApfWNhdGNoKHQpe2tlKHQscixvKX1yZXR1cm4gaX1mdW5jdGlvbiBBZSh0LGUsbil7aWYoQi5lcnJvckhhbmRsZXIpdHJ5e3JldHVybiBCLmVycm9ySGFuZGxlci5jYWxsKG51bGwsdCxlLG4pfWNhdGNoKGUpe2UhPT10JiZqZShlLG51bGwsImNvbmZpZy5lcnJvckhhbmRsZXIiKX1qZSh0LGUsbil9ZnVuY3Rpb24gamUodCxlLG4pe2lmKCFxfHwidW5kZWZpbmVkIj09dHlwZW9mIGNvbnNvbGUpdGhyb3cgdDtjb25zb2xlLmVycm9yKHQpfXZhciBFZSxUZT0hMSxQZT1bXSxNZT0hMTtmdW5jdGlvbiBJZSgpe01lPSExO3ZhciB0PVBlLnNsaWNlKDApO1BlLmxlbmd0aD0wO2Zvcih2YXIgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0oKX1pZigidW5kZWZpbmVkIiE9dHlwZW9mIFByb21pc2UmJnN0KFByb21pc2UpKXt2YXIgRGU9UHJvbWlzZS5yZXNvbHZlKCk7RWU9ZnVuY3Rpb24oKXtEZS50aGVuKEllKSxZJiZzZXRUaW1lb3V0KE0pfSxUZT0hMH1lbHNlIGlmKFp8fCJ1bmRlZmluZWQiPT10eXBlb2YgTXV0YXRpb25PYnNlcnZlcnx8IXN0KE11dGF0aW9uT2JzZXJ2ZXIpJiYiW29iamVjdCBNdXRhdGlvbk9ic2VydmVyQ29uc3RydWN0b3JdIiE9PU11dGF0aW9uT2JzZXJ2ZXIudG9TdHJpbmcoKSlFZT0idW5kZWZpbmVkIiE9dHlwZW9mIHNldEltbWVkaWF0ZSYmc3Qoc2V0SW1tZWRpYXRlKT9mdW5jdGlvbigpe3NldEltbWVkaWF0ZShJZSl9OmZ1bmN0aW9uKCl7c2V0VGltZW91dChJZSwwKX07ZWxzZXt2YXIgTmU9MSxMZT1uZXcgTXV0YXRpb25PYnNlcnZlcihJZSksRmU9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKE5lKSk7TGUub2JzZXJ2ZShGZSx7Y2hhcmFjdGVyRGF0YTohMH0pLEVlPWZ1bmN0aW9uKCl7TmU9KE5lKzEpJTIsRmUuZGF0YT1TdHJpbmcoTmUpfSxUZT0hMH1mdW5jdGlvbiBSZSh0LGUpe3ZhciBuO2lmKFBlLnB1c2goKGZ1bmN0aW9uKCl7aWYodCl0cnl7dC5jYWxsKGUpfWNhdGNoKHQpe2tlKHQsZSwibmV4dFRpY2siKX1lbHNlIG4mJm4oZSl9KSksTWV8fChNZT0hMCxFZSgpKSwhdCYmInVuZGVmaW5lZCIhPXR5cGVvZiBQcm9taXNlKXJldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCl7bj10fSkpfWZ1bmN0aW9uIFZlKHQpe3JldHVybiBmdW5jdGlvbihlLG4pe2lmKHZvaWQgMD09PW4mJihuPWx0KSxuKXJldHVybiBmdW5jdGlvbih0LGUsbil7dmFyIHI9dC4kb3B0aW9ucztyW2VdPUVuKHJbZV0sbil9KG4sdCxlKX19VmUoImJlZm9yZU1vdW50IiksVmUoIm1vdW50ZWQiKSxWZSgiYmVmb3JlVXBkYXRlIiksVmUoInVwZGF0ZWQiKSxWZSgiYmVmb3JlRGVzdHJveSIpLFZlKCJkZXN0cm95ZWQiKSxWZSgiYWN0aXZhdGVkIiksVmUoImRlYWN0aXZhdGVkIiksVmUoInNlcnZlclByZWZldGNoIiksVmUoInJlbmRlclRyYWNrZWQiKSxWZSgicmVuZGVyVHJpZ2dlcmVkIiksVmUoImVycm9yQ2FwdHVyZWQiKTt2YXIgSGU9bmV3IGN0O2Z1bmN0aW9uIFVlKHQpe3JldHVybiBmdW5jdGlvbiB0KGUsbil7dmFyIHIsaSxhPW8oZSk7aWYoISghYSYmIWwoZSl8fGUuX192X3NraXB8fE9iamVjdC5pc0Zyb3plbihlKXx8ZSBpbnN0YW5jZW9mIHB0KSl7aWYoZS5fX29iX18pe3ZhciBzPWUuX19vYl9fLmRlcC5pZDtpZihuLmhhcyhzKSlyZXR1cm47bi5hZGQocyl9aWYoYSlmb3Iocj1lLmxlbmd0aDtyLS07KXQoZVtyXSxuKTtlbHNlIGlmKEx0KGUpKXQoZS52YWx1ZSxuKTtlbHNlIGZvcihpPU9iamVjdC5rZXlzKGUpLHI9aS5sZW5ndGg7ci0tOyl0KGVbaVtyXV0sbil9fSh0LEhlKSxIZS5jbGVhcigpLHR9dmFyIEJlLEdlPTAsemU9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQsZSxuLHIsbyl7KGZ1bmN0aW9uKHQsZSl7dm9pZCAwPT09ZSYmKGU9UnQpLGUmJmUuYWN0aXZlJiZlLmVmZmVjdHMucHVzaCh0KX0pKHRoaXMsUnQmJiFSdC5fdm0/UnQ6dD90Ll9zY29wZTp2b2lkIDApLCh0aGlzLnZtPXQpJiZvJiYodC5fd2F0Y2hlcj10aGlzKSxyPyh0aGlzLmRlZXA9ISFyLmRlZXAsdGhpcy51c2VyPSEhci51c2VyLHRoaXMubGF6eT0hIXIubGF6eSx0aGlzLnN5bmM9ISFyLnN5bmMsdGhpcy5iZWZvcmU9ci5iZWZvcmUpOnRoaXMuZGVlcD10aGlzLnVzZXI9dGhpcy5sYXp5PXRoaXMuc3luYz0hMSx0aGlzLmNiPW4sdGhpcy5pZD0rK0dlLHRoaXMuYWN0aXZlPSEwLHRoaXMucG9zdD0hMSx0aGlzLmRpcnR5PXRoaXMubGF6eSx0aGlzLmRlcHM9W10sdGhpcy5uZXdEZXBzPVtdLHRoaXMuZGVwSWRzPW5ldyBjdCx0aGlzLm5ld0RlcElkcz1uZXcgY3QsdGhpcy5leHByZXNzaW9uPSIiLHUoZSk/dGhpcy5nZXR0ZXI9ZToodGhpcy5nZXR0ZXI9ZnVuY3Rpb24odCl7aWYoIUsudGVzdCh0KSl7dmFyIGU9dC5zcGxpdCgiLiIpO3JldHVybiBmdW5jdGlvbih0KXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7aWYoIXQpcmV0dXJuO3Q9dFtlW25dXX1yZXR1cm4gdH19fShlKSx0aGlzLmdldHRlcnx8KHRoaXMuZ2V0dGVyPU0pKSx0aGlzLnZhbHVlPXRoaXMubGF6eT92b2lkIDA6dGhpcy5nZXQoKX1yZXR1cm4gdC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7dmFyIHQ7YnQodGhpcyk7dmFyIGU9dGhpcy52bTt0cnl7dD10aGlzLmdldHRlci5jYWxsKGUsZSl9Y2F0Y2godCl7aWYoIXRoaXMudXNlcil0aHJvdyB0O2tlKHQsZSwnZ2V0dGVyIGZvciB3YXRjaGVyICInLmNvbmNhdCh0aGlzLmV4cHJlc3Npb24sJyInKSl9ZmluYWxseXt0aGlzLmRlZXAmJlVlKHQpLHd0KCksdGhpcy5jbGVhbnVwRGVwcygpfXJldHVybiB0fSx0LnByb3RvdHlwZS5hZGREZXA9ZnVuY3Rpb24odCl7dmFyIGU9dC5pZDt0aGlzLm5ld0RlcElkcy5oYXMoZSl8fCh0aGlzLm5ld0RlcElkcy5hZGQoZSksdGhpcy5uZXdEZXBzLnB1c2godCksdGhpcy5kZXBJZHMuaGFzKGUpfHx0LmFkZFN1Yih0aGlzKSl9LHQucHJvdG90eXBlLmNsZWFudXBEZXBzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuZGVwcy5sZW5ndGg7dC0tOyl7dmFyIGU9dGhpcy5kZXBzW3RdO3RoaXMubmV3RGVwSWRzLmhhcyhlLmlkKXx8ZS5yZW1vdmVTdWIodGhpcyl9dmFyIG49dGhpcy5kZXBJZHM7dGhpcy5kZXBJZHM9dGhpcy5uZXdEZXBJZHMsdGhpcy5uZXdEZXBJZHM9bix0aGlzLm5ld0RlcElkcy5jbGVhcigpLG49dGhpcy5kZXBzLHRoaXMuZGVwcz10aGlzLm5ld0RlcHMsdGhpcy5uZXdEZXBzPW4sdGhpcy5uZXdEZXBzLmxlbmd0aD0wfSx0LnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXt0aGlzLmxhenk/dGhpcy5kaXJ0eT0hMDp0aGlzLnN5bmM/dGhpcy5ydW4oKTpmdW5jdGlvbih0KXt2YXIgZT10LmlkO2lmKG51bGw9PW9uW2VdJiYodCE9PXl0LnRhcmdldHx8IXQubm9SZWN1cnNlKSl7aWYob25bZV09ITAsc24pe2Zvcih2YXIgbj1ubi5sZW5ndGgtMTtuPmNuJiZubltuXS5pZD50LmlkOyluLS07bm4uc3BsaWNlKG4rMSwwLHQpfWVsc2Ugbm4ucHVzaCh0KTthbnx8KGFuPSEwLFJlKGRuKSl9fSh0aGlzKX0sdC5wcm90b3R5cGUucnVuPWZ1bmN0aW9uKCl7aWYodGhpcy5hY3RpdmUpe3ZhciB0PXRoaXMuZ2V0KCk7aWYodCE9PXRoaXMudmFsdWV8fGwodCl8fHRoaXMuZGVlcCl7dmFyIGU9dGhpcy52YWx1ZTtpZih0aGlzLnZhbHVlPXQsdGhpcy51c2VyKXt2YXIgbj0nY2FsbGJhY2sgZm9yIHdhdGNoZXIgIicuY29uY2F0KHRoaXMuZXhwcmVzc2lvbiwnIicpO1NlKHRoaXMuY2IsdGhpcy52bSxbdCxlXSx0aGlzLnZtLG4pfWVsc2UgdGhpcy5jYi5jYWxsKHRoaXMudm0sdCxlKX19fSx0LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbigpe3RoaXMudmFsdWU9dGhpcy5nZXQoKSx0aGlzLmRpcnR5PSExfSx0LnByb3RvdHlwZS5kZXBlbmQ9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5kZXBzLmxlbmd0aDt0LS07KXRoaXMuZGVwc1t0XS5kZXBlbmQoKX0sdC5wcm90b3R5cGUudGVhcmRvd249ZnVuY3Rpb24oKXtpZih0aGlzLnZtJiYhdGhpcy52bS5faXNCZWluZ0Rlc3Ryb3llZCYmYih0aGlzLnZtLl9zY29wZS5lZmZlY3RzLHRoaXMpLHRoaXMuYWN0aXZlKXtmb3IodmFyIHQ9dGhpcy5kZXBzLmxlbmd0aDt0LS07KXRoaXMuZGVwc1t0XS5yZW1vdmVTdWIodGhpcyk7dGhpcy5hY3RpdmU9ITEsdGhpcy5vblN0b3AmJnRoaXMub25TdG9wKCl9fSx0fSgpO2Z1bmN0aW9uIEtlKHQsZSl7QmUuJG9uKHQsZSl9ZnVuY3Rpb24gV2UodCxlKXtCZS4kb2ZmKHQsZSl9ZnVuY3Rpb24gcWUodCxlKXt2YXIgbj1CZTtyZXR1cm4gZnVuY3Rpb24gcigpe3ZhciBvPWUuYXBwbHkobnVsbCxhcmd1bWVudHMpO251bGwhPT1vJiZuLiRvZmYodCxyKX19ZnVuY3Rpb24gSmUodCxlLG4pe0JlPXQsR3QoZSxufHx7fSxLZSxXZSxxZSx0KSxCZT12b2lkIDB9dmFyIFplPW51bGw7ZnVuY3Rpb24gWGUodCl7dmFyIGU9WmU7cmV0dXJuIFplPXQsZnVuY3Rpb24oKXtaZT1lfX1mdW5jdGlvbiBRZSh0LGUsbixvLGkpe3ZhciBhPW8uZGF0YS5zY29wZWRTbG90cyxzPXQuJHNjb3BlZFNsb3RzLGM9ISEoYSYmIWEuJHN0YWJsZXx8cyE9PXImJiFzLiRzdGFibGV8fGEmJnQuJHNjb3BlZFNsb3RzLiRrZXkhPT1hLiRrZXl8fCFhJiZ0LiRzY29wZWRTbG90cy4ka2V5KSx1PSEhKGl8fHQuJG9wdGlvbnMuX3JlbmRlckNoaWxkcmVufHxjKSxsPXQuJHZub2RlO3QuJG9wdGlvbnMuX3BhcmVudFZub2RlPW8sdC4kdm5vZGU9byx0Ll92bm9kZSYmKHQuX3Zub2RlLnBhcmVudD1vKSx0LiRvcHRpb25zLl9yZW5kZXJDaGlsZHJlbj1pO3ZhciBmPW8uZGF0YS5hdHRyc3x8cjt0Ll9hdHRyc1Byb3h5JiZfZSh0Ll9hdHRyc1Byb3h5LGYsbC5kYXRhJiZsLmRhdGEuYXR0cnN8fHIsdCwiJGF0dHJzIikmJih1PSEwKSx0LiRhdHRycz1mLG49bnx8cjt2YXIgcD10LiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7aWYodC5fbGlzdGVuZXJzUHJveHkmJl9lKHQuX2xpc3RlbmVyc1Byb3h5LG4scHx8cix0LCIkbGlzdGVuZXJzIiksdC4kbGlzdGVuZXJzPXQuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycz1uLEplKHQsbixwKSxlJiZ0LiRvcHRpb25zLnByb3BzKXtTdCghMSk7Zm9yKHZhciBkPXQuX3Byb3BzLHY9dC4kb3B0aW9ucy5fcHJvcEtleXN8fFtdLGg9MDtoPHYubGVuZ3RoO2grKyl7dmFyIG09dltoXSxfPXQuJG9wdGlvbnMucHJvcHM7ZFttXT1MbihtLF8sZSx0KX1TdCghMCksdC4kb3B0aW9ucy5wcm9wc0RhdGE9ZX11JiYodC4kc2xvdHM9bGUoaSxvLmNvbnRleHQpLHQuJGZvcmNlVXBkYXRlKCkpfWZ1bmN0aW9uIFllKHQpe2Zvcig7dCYmKHQ9dC4kcGFyZW50KTspaWYodC5faW5hY3RpdmUpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gdG4odCxlKXtpZihlKXtpZih0Ll9kaXJlY3RJbmFjdGl2ZT0hMSxZZSh0KSlyZXR1cm59ZWxzZSBpZih0Ll9kaXJlY3RJbmFjdGl2ZSlyZXR1cm47aWYodC5faW5hY3RpdmV8fG51bGw9PT10Ll9pbmFjdGl2ZSl7dC5faW5hY3RpdmU9ITE7Zm9yKHZhciBuPTA7bjx0LiRjaGlsZHJlbi5sZW5ndGg7bisrKXRuKHQuJGNoaWxkcmVuW25dKTtlbih0LCJhY3RpdmF0ZWQiKX19ZnVuY3Rpb24gZW4odCxlLG4scil7dm9pZCAwPT09ciYmKHI9ITApLGJ0KCk7dmFyIG89bHQsaT1SdDtyJiZmdCh0KTt2YXIgYT10LiRvcHRpb25zW2VdLHM9IiIuY29uY2F0KGUsIiBob29rIik7aWYoYSlmb3IodmFyIGM9MCx1PWEubGVuZ3RoO2M8dTtjKyspU2UoYVtjXSx0LG58fG51bGwsdCxzKTt0Ll9oYXNIb29rRXZlbnQmJnQuJGVtaXQoImhvb2s6IitlKSxyJiYoZnQobyksaSYmaS5vbigpKSx3dCgpfXZhciBubj1bXSxybj1bXSxvbj17fSxhbj0hMSxzbj0hMSxjbj0wO3ZhciB1bj0wLGxuPURhdGUubm93O2lmKHEmJiFaKXt2YXIgZm49d2luZG93LnBlcmZvcm1hbmNlO2ZuJiYiZnVuY3Rpb24iPT10eXBlb2YgZm4ubm93JiZsbigpPmRvY3VtZW50LmNyZWF0ZUV2ZW50KCJFdmVudCIpLnRpbWVTdGFtcCYmKGxuPWZ1bmN0aW9uKCl7cmV0dXJuIGZuLm5vdygpfSl9dmFyIHBuPWZ1bmN0aW9uKHQsZSl7aWYodC5wb3N0KXtpZighZS5wb3N0KXJldHVybiAxfWVsc2UgaWYoZS5wb3N0KXJldHVybi0xO3JldHVybiB0LmlkLWUuaWR9O2Z1bmN0aW9uIGRuKCl7dmFyIHQsZTtmb3IodW49bG4oKSxzbj0hMCxubi5zb3J0KHBuKSxjbj0wO2NuPG5uLmxlbmd0aDtjbisrKSh0PW5uW2NuXSkuYmVmb3JlJiZ0LmJlZm9yZSgpLGU9dC5pZCxvbltlXT1udWxsLHQucnVuKCk7dmFyIG49cm4uc2xpY2UoKSxyPW5uLnNsaWNlKCk7Y249bm4ubGVuZ3RoPXJuLmxlbmd0aD0wLG9uPXt9LGFuPXNuPSExLGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0uX2luYWN0aXZlPSEwLHRuKHRbZV0sITApfShuKSxmdW5jdGlvbih0KXt2YXIgZT10Lmxlbmd0aDtmb3IoO2UtLTspe3ZhciBuPXRbZV0scj1uLnZtO3ImJnIuX3dhdGNoZXI9PT1uJiZyLl9pc01vdW50ZWQmJiFyLl9pc0Rlc3Ryb3llZCYmZW4ociwidXBkYXRlZCIpfX0ociksZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDt0PF90Lmxlbmd0aDt0Kyspe3ZhciBlPV90W3RdO2Uuc3Vicz1lLnN1YnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdH0pKSxlLl9wZW5kaW5nPSExfV90Lmxlbmd0aD0wfSgpLGF0JiZCLmRldnRvb2xzJiZhdC5lbWl0KCJmbHVzaCIpfWZ1bmN0aW9uIHZuKHQpe3ZhciBlPXQuJG9wdGlvbnMucHJvdmlkZTtpZihlKXt2YXIgbj11KGUpP2UuY2FsbCh0KTplO2lmKCFsKG4pKXJldHVybjtmb3IodmFyIHI9ZnVuY3Rpb24odCl7dmFyIGU9dC5fcHJvdmlkZWQsbj10LiRwYXJlbnQmJnQuJHBhcmVudC5fcHJvdmlkZWQ7cmV0dXJuIG49PT1lP3QuX3Byb3ZpZGVkPU9iamVjdC5jcmVhdGUobik6ZX0odCksbz11dD9SZWZsZWN0Lm93bktleXMobik6T2JqZWN0LmtleXMobiksaT0wO2k8by5sZW5ndGg7aSsrKXt2YXIgYT1vW2ldO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGEpKX19fWZ1bmN0aW9uIGhuKHQsZSl7aWYodCl7Zm9yKHZhciBuPU9iamVjdC5jcmVhdGUobnVsbCkscj11dD9SZWZsZWN0Lm93bktleXModCk6T2JqZWN0LmtleXModCksbz0wO288ci5sZW5ndGg7bysrKXt2YXIgaT1yW29dO2lmKCJfX29iX18iIT09aSl7dmFyIGE9dFtpXS5mcm9tO2lmKGEgaW4gZS5fcHJvdmlkZWQpbltpXT1lLl9wcm92aWRlZFthXTtlbHNlIGlmKCJkZWZhdWx0ImluIHRbaV0pe3ZhciBzPXRbaV0uZGVmYXVsdDtuW2ldPXUocyk/cy5jYWxsKGUpOnN9fX1yZXR1cm4gbn19ZnVuY3Rpb24gbW4odCxlLG4saSxhKXt2YXIgYyx1PXRoaXMsbD1hLm9wdGlvbnM7JChpLCJfdWlkIik/KGM9T2JqZWN0LmNyZWF0ZShpKSkuX29yaWdpbmFsPWk6KGM9aSxpPWkuX29yaWdpbmFsKTt2YXIgZj1zKGwuX2NvbXBpbGVkKSxwPSFmO3RoaXMuZGF0YT10LHRoaXMucHJvcHM9ZSx0aGlzLmNoaWxkcmVuPW4sdGhpcy5wYXJlbnQ9aSx0aGlzLmxpc3RlbmVycz10Lm9ufHxyLHRoaXMuaW5qZWN0aW9ucz1obihsLmluamVjdCxpKSx0aGlzLnNsb3RzPWZ1bmN0aW9uKCl7cmV0dXJuIHUuJHNsb3RzfHxkZShpLHQuc2NvcGVkU2xvdHMsdS4kc2xvdHM9bGUobixpKSksdS4kc2xvdHN9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJzY29wZWRTbG90cyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGRlKGksdC5zY29wZWRTbG90cyx0aGlzLnNsb3RzKCkpfX0pLGYmJih0aGlzLiRvcHRpb25zPWwsdGhpcy4kc2xvdHM9dGhpcy5zbG90cygpLHRoaXMuJHNjb3BlZFNsb3RzPWRlKGksdC5zY29wZWRTbG90cyx0aGlzLiRzbG90cykpLGwuX3Njb3BlSWQ/dGhpcy5fYz1mdW5jdGlvbih0LGUsbixyKXt2YXIgYT1DZShjLHQsZSxuLHIscCk7cmV0dXJuIGEmJiFvKGEpJiYoYS5mblNjb3BlSWQ9bC5fc2NvcGVJZCxhLmZuQ29udGV4dD1pKSxhfTp0aGlzLl9jPWZ1bmN0aW9uKHQsZSxuLHIpe3JldHVybiBDZShjLHQsZSxuLHIscCl9fWZ1bmN0aW9uIF9uKHQsZSxuLGkscyl7dmFyIGM9dC5vcHRpb25zLHU9e30sbD1jLnByb3BzO2lmKGEobCkpZm9yKHZhciBmIGluIGwpdVtmXT1MbihmLGwsZXx8cik7ZWxzZSBhKG4uYXR0cnMpJiZnbih1LG4uYXR0cnMpLGEobi5wcm9wcykmJmduKHUsbi5wcm9wcyk7dmFyIHA9bmV3IG1uKG4sdSxzLGksdCksZD1jLnJlbmRlci5jYWxsKG51bGwscC5fYyxwKTtpZihkIGluc3RhbmNlb2YgcHQpcmV0dXJuIHluKGQsbixwLnBhcmVudCxjLHApO2lmKG8oZCkpe2Zvcih2YXIgdj1XdChkKXx8W10saD1uZXcgQXJyYXkodi5sZW5ndGgpLG09MDttPHYubGVuZ3RoO20rKyloW21dPXluKHZbbV0sbixwLnBhcmVudCxjLHApO3JldHVybiBofX1mdW5jdGlvbiB5bih0LGUsbixyLG8pe3ZhciBpPWh0KHQpO3JldHVybiBpLmZuQ29udGV4dD1uLGkuZm5PcHRpb25zPXIsZS5zbG90JiYoKGkuZGF0YXx8KGkuZGF0YT17fSkpLnNsb3Q9ZS5zbG90KSxpfWZ1bmN0aW9uIGduKHQsZSl7Zm9yKHZhciBuIGluIGUpdFtPKG4pXT1lW25dfWZ1bmN0aW9uIGJuKHQpe3JldHVybiB0Lm5hbWV8fHQuX19uYW1lfHx0Ll9jb21wb25lbnRUYWd9dWUobW4ucHJvdG90eXBlKTt2YXIgd249e2luaXQ6ZnVuY3Rpb24odCxlKXtpZih0LmNvbXBvbmVudEluc3RhbmNlJiYhdC5jb21wb25lbnRJbnN0YW5jZS5faXNEZXN0cm95ZWQmJnQuZGF0YS5rZWVwQWxpdmUpe3ZhciBuPXQ7d24ucHJlcGF0Y2gobixuKX1lbHNleyh0LmNvbXBvbmVudEluc3RhbmNlPWZ1bmN0aW9uKHQsZSl7dmFyIG49e19pc0NvbXBvbmVudDohMCxfcGFyZW50Vm5vZGU6dCxwYXJlbnQ6ZX0scj10LmRhdGEuaW5saW5lVGVtcGxhdGU7cmV0dXJuIGEocikmJihuLnJlbmRlcj1yLnJlbmRlcixuLnN0YXRpY1JlbmRlckZucz1yLnN0YXRpY1JlbmRlckZucyksbmV3IHQuY29tcG9uZW50T3B0aW9ucy5DdG9yKG4pfSh0LFplKSkuJG1vdW50KGU/dC5lbG06dm9pZCAwLGUpfX0scHJlcGF0Y2g6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLmNvbXBvbmVudE9wdGlvbnM7UWUoZS5jb21wb25lbnRJbnN0YW5jZT10LmNvbXBvbmVudEluc3RhbmNlLG4ucHJvcHNEYXRhLG4ubGlzdGVuZXJzLGUsbi5jaGlsZHJlbil9LGluc2VydDpmdW5jdGlvbih0KXt2YXIgZT10LmNvbnRleHQsbj10LmNvbXBvbmVudEluc3RhbmNlO24uX2lzTW91bnRlZHx8KG4uX2lzTW91bnRlZD0hMCxlbihuLCJtb3VudGVkIikpLHQuZGF0YS5rZWVwQWxpdmUmJihlLl9pc01vdW50ZWQ/ZnVuY3Rpb24odCl7dC5faW5hY3RpdmU9ITEscm4ucHVzaCh0KX0obik6dG4obiwhMCkpfSxkZXN0cm95OmZ1bmN0aW9uKHQpe3ZhciBlPXQuY29tcG9uZW50SW5zdGFuY2U7ZS5faXNEZXN0cm95ZWR8fCh0LmRhdGEua2VlcEFsaXZlP2Z1bmN0aW9uIHQoZSxuKXtpZighKG4mJihlLl9kaXJlY3RJbmFjdGl2ZT0hMCxZZShlKSl8fGUuX2luYWN0aXZlKSl7ZS5faW5hY3RpdmU9ITA7Zm9yKHZhciByPTA7cjxlLiRjaGlsZHJlbi5sZW5ndGg7cisrKXQoZS4kY2hpbGRyZW5bcl0pO2VuKGUsImRlYWN0aXZhdGVkIil9fShlLCEwKTplLiRkZXN0cm95KCkpfX0sJG49T2JqZWN0LmtleXMod24pO2Z1bmN0aW9uIENuKHQsZSxuLHIsbyl7aWYoIWkodCkpe3ZhciBjPW4uJG9wdGlvbnMuX2Jhc2U7aWYobCh0KSYmKHQ9Yy5leHRlbmQodCkpLCJmdW5jdGlvbiI9PXR5cGVvZiB0KXt2YXIgdTtpZihpKHQuY2lkKSYmdm9pZCAwPT09KHQ9ZnVuY3Rpb24odCxlKXtpZihzKHQuZXJyb3IpJiZhKHQuZXJyb3JDb21wKSlyZXR1cm4gdC5lcnJvckNvbXA7aWYoYSh0LnJlc29sdmVkKSlyZXR1cm4gdC5yZXNvbHZlZDt2YXIgbj1iZTtpZihuJiZhKHQub3duZXJzKSYmLTE9PT10Lm93bmVycy5pbmRleE9mKG4pJiZ0Lm93bmVycy5wdXNoKG4pLHModC5sb2FkaW5nKSYmYSh0LmxvYWRpbmdDb21wKSlyZXR1cm4gdC5sb2FkaW5nQ29tcDtpZihuJiYhYSh0Lm93bmVycykpe3ZhciByPXQub3duZXJzPVtuXSxvPSEwLGM9bnVsbCx1PW51bGw7bi4kb24oImhvb2s6ZGVzdHJveWVkIiwoZnVuY3Rpb24oKXtyZXR1cm4gYihyLG4pfSkpO3ZhciBmPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wLG49ci5sZW5ndGg7ZTxuO2UrKylyW2VdLiRmb3JjZVVwZGF0ZSgpO3QmJihyLmxlbmd0aD0wLG51bGwhPT1jJiYoY2xlYXJUaW1lb3V0KGMpLGM9bnVsbCksbnVsbCE9PXUmJihjbGVhclRpbWVvdXQodSksdT1udWxsKSl9LHA9RigoZnVuY3Rpb24obil7dC5yZXNvbHZlZD13ZShuLGUpLG8/ci5sZW5ndGg9MDpmKCEwKX0pKSxkPUYoKGZ1bmN0aW9uKGUpe2EodC5lcnJvckNvbXApJiYodC5lcnJvcj0hMCxmKCEwKSl9KSksaD10KHAsZCk7cmV0dXJuIGwoaCkmJih2KGgpP2kodC5yZXNvbHZlZCkmJmgudGhlbihwLGQpOnYoaC5jb21wb25lbnQpJiYoaC5jb21wb25lbnQudGhlbihwLGQpLGEoaC5lcnJvcikmJih0LmVycm9yQ29tcD13ZShoLmVycm9yLGUpKSxhKGgubG9hZGluZykmJih0LmxvYWRpbmdDb21wPXdlKGgubG9hZGluZyxlKSwwPT09aC5kZWxheT90LmxvYWRpbmc9ITA6Yz1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2M9bnVsbCxpKHQucmVzb2x2ZWQpJiZpKHQuZXJyb3IpJiYodC5sb2FkaW5nPSEwLGYoITEpKX0pLGguZGVsYXl8fDIwMCkpLGEoaC50aW1lb3V0KSYmKHU9c2V0VGltZW91dCgoZnVuY3Rpb24oKXt1PW51bGwsaSh0LnJlc29sdmVkKSYmZChudWxsKX0pLGgudGltZW91dCkpKSksbz0hMSx0LmxvYWRpbmc/dC5sb2FkaW5nQ29tcDp0LnJlc29sdmVkfX0odT10LGMpKSlyZXR1cm4gZnVuY3Rpb24odCxlLG4scixvKXt2YXIgaT1kdCgpO3JldHVybiBpLmFzeW5jRmFjdG9yeT10LGkuYXN5bmNNZXRhPXtkYXRhOmUsY29udGV4dDpuLGNoaWxkcmVuOnIsdGFnOm99LGl9KHUsZSxuLHIsbyk7ZT1lfHx7fSxYbih0KSxhKGUubW9kZWwpJiZPbih0Lm9wdGlvbnMsZSk7dmFyIGY9ZnVuY3Rpb24odCxlLG4pe3ZhciByPWUub3B0aW9ucy5wcm9wcztpZighaShyKSl7dmFyIG89e30scz10LmF0dHJzLGM9dC5wcm9wcztpZihhKHMpfHxhKGMpKWZvcih2YXIgdSBpbiByKXt2YXIgbD1BKHUpO0t0KG8sYyx1LGwsITApfHxLdChvLHMsdSxsLCExKX1yZXR1cm4gb319KGUsdCk7aWYocyh0Lm9wdGlvbnMuZnVuY3Rpb25hbCkpcmV0dXJuIF9uKHQsZixlLG4scik7dmFyIHA9ZS5vbjtpZihlLm9uPWUubmF0aXZlT24scyh0Lm9wdGlvbnMuYWJzdHJhY3QpKXt2YXIgZD1lLnNsb3Q7ZT17fSxkJiYoZS5zbG90PWQpfSFmdW5jdGlvbih0KXtmb3IodmFyIGU9dC5ob29rfHwodC5ob29rPXt9KSxuPTA7bjwkbi5sZW5ndGg7bisrKXt2YXIgcj0kbltuXSxvPWVbcl0saT13bltyXTtvPT09aXx8byYmby5fbWVyZ2VkfHwoZVtyXT1vP3huKGksbyk6aSl9fShlKTt2YXIgaD1ibih0Lm9wdGlvbnMpfHxvO3JldHVybiBuZXcgcHQoInZ1ZS1jb21wb25lbnQtIi5jb25jYXQodC5jaWQpLmNvbmNhdChoPyItIi5jb25jYXQoaCk6IiIpLGUsdm9pZCAwLHZvaWQgMCx2b2lkIDAsbix7Q3Rvcjp0LHByb3BzRGF0YTpmLGxpc3RlbmVyczpwLHRhZzpvLGNoaWxkcmVuOnJ9LHUpfX19ZnVuY3Rpb24geG4odCxlKXt2YXIgbj1mdW5jdGlvbihuLHIpe3QobixyKSxlKG4scil9O3JldHVybiBuLl9tZXJnZWQ9ITAsbn1mdW5jdGlvbiBPbih0LGUpe3ZhciBuPXQubW9kZWwmJnQubW9kZWwucHJvcHx8InZhbHVlIixyPXQubW9kZWwmJnQubW9kZWwuZXZlbnR8fCJpbnB1dCI7KGUuYXR0cnN8fChlLmF0dHJzPXt9KSlbbl09ZS5tb2RlbC52YWx1ZTt2YXIgaT1lLm9ufHwoZS5vbj17fSkscz1pW3JdLGM9ZS5tb2RlbC5jYWxsYmFjazthKHMpPyhvKHMpPy0xPT09cy5pbmRleE9mKGMpOnMhPT1jKSYmKGlbcl09W2NdLmNvbmNhdChzKSk6aVtyXT1jfXZhciBrbj1NLFNuPUIub3B0aW9uTWVyZ2VTdHJhdGVnaWVzO2Z1bmN0aW9uIEFuKHQsZSxuKXtpZih2b2lkIDA9PT1uJiYobj0hMCksIWUpcmV0dXJuIHQ7Zm9yKHZhciByLG8saSxhPXV0P1JlZmxlY3Qub3duS2V5cyhlKTpPYmplY3Qua2V5cyhlKSxzPTA7czxhLmxlbmd0aDtzKyspIl9fb2JfXyIhPT0ocj1hW3NdKSYmKG89dFtyXSxpPWVbcl0sbiYmJCh0LHIpP28hPT1pJiZwKG8pJiZwKGkpJiZBbihvLGkpOlB0KHQscixpKSk7cmV0dXJuIHR9ZnVuY3Rpb24gam4odCxlLG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dmFyIHI9dShlKT9lLmNhbGwobixuKTplLG89dSh0KT90LmNhbGwobixuKTp0O3JldHVybiByP0FuKHIsbyk6b306ZT90P2Z1bmN0aW9uKCl7cmV0dXJuIEFuKHUoZSk/ZS5jYWxsKHRoaXMsdGhpcyk6ZSx1KHQpP3QuY2FsbCh0aGlzLHRoaXMpOnQpfTplOnR9ZnVuY3Rpb24gRW4odCxlKXt2YXIgbj1lP3Q/dC5jb25jYXQoZSk6byhlKT9lOltlXTp0O3JldHVybiBuP2Z1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTA7bjx0Lmxlbmd0aDtuKyspLTE9PT1lLmluZGV4T2YodFtuXSkmJmUucHVzaCh0W25dKTtyZXR1cm4gZX0obik6bn1mdW5jdGlvbiBUbih0LGUsbixyKXt2YXIgbz1PYmplY3QuY3JlYXRlKHR8fG51bGwpO3JldHVybiBlP1QobyxlKTpvfVNuLmRhdGE9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBuP2puKHQsZSxuKTplJiYiZnVuY3Rpb24iIT10eXBlb2YgZT90OmpuKHQsZSl9LFUuZm9yRWFjaCgoZnVuY3Rpb24odCl7U25bdF09RW59KSksSC5mb3JFYWNoKChmdW5jdGlvbih0KXtTblt0KyJzIl09VG59KSksU24ud2F0Y2g9ZnVuY3Rpb24odCxlLG4scil7aWYodD09PW50JiYodD12b2lkIDApLGU9PT1udCYmKGU9dm9pZCAwKSwhZSlyZXR1cm4gT2JqZWN0LmNyZWF0ZSh0fHxudWxsKTtpZighdClyZXR1cm4gZTt2YXIgaT17fTtmb3IodmFyIGEgaW4gVChpLHQpLGUpe3ZhciBzPWlbYV0sYz1lW2FdO3MmJiFvKHMpJiYocz1bc10pLGlbYV09cz9zLmNvbmNhdChjKTpvKGMpP2M6W2NdfXJldHVybiBpfSxTbi5wcm9wcz1Tbi5tZXRob2RzPVNuLmluamVjdD1Tbi5jb21wdXRlZD1mdW5jdGlvbih0LGUsbixyKXtpZighdClyZXR1cm4gZTt2YXIgbz1PYmplY3QuY3JlYXRlKG51bGwpO3JldHVybiBUKG8sdCksZSYmVChvLGUpLG99LFNuLnByb3ZpZGU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD9mdW5jdGlvbigpe3ZhciBuPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIEFuKG4sdSh0KT90LmNhbGwodGhpcyk6dCksZSYmQW4obix1KGUpP2UuY2FsbCh0aGlzKTplLCExKSxufTplfTt2YXIgUG49ZnVuY3Rpb24odCxlKXtyZXR1cm4gdm9pZCAwPT09ZT90OmV9O2Z1bmN0aW9uIE1uKHQsZSl7dmFyIG49dC5wcm9wcztpZihuKXt2YXIgcixpLGE9e307aWYobyhuKSlmb3Iocj1uLmxlbmd0aDtyLS07KSJzdHJpbmciPT10eXBlb2YoaT1uW3JdKSYmKGFbTyhpKV09e3R5cGU6bnVsbH0pO2Vsc2UgaWYocChuKSlmb3IodmFyIHMgaW4gbilpPW5bc10sYVtPKHMpXT1wKGkpP2k6e3R5cGU6aX07dC5wcm9wcz1hfX1mdW5jdGlvbiBJbih0LGUpe3ZhciBuPXQuaW5qZWN0O2lmKG4pe3ZhciByPXQuaW5qZWN0PXt9O2lmKG8obikpZm9yKHZhciBpPTA7aTxuLmxlbmd0aDtpKyspcltuW2ldXT17ZnJvbTpuW2ldfTtlbHNlIGlmKHAobikpZm9yKHZhciBhIGluIG4pe3ZhciBzPW5bYV07clthXT1wKHMpP1Qoe2Zyb206YX0scyk6e2Zyb206c319fX1mdW5jdGlvbiBEbih0LGUsbil7aWYodShlKSYmKGU9ZS5vcHRpb25zKSxNbihlKSxJbihlKSxmdW5jdGlvbih0KXt2YXIgZT10LmRpcmVjdGl2ZXM7aWYoZSlmb3IodmFyIG4gaW4gZSl7dmFyIHI9ZVtuXTt1KHIpJiYoZVtuXT17YmluZDpyLHVwZGF0ZTpyfSl9fShlKSwhZS5fYmFzZSYmKGUuZXh0ZW5kcyYmKHQ9RG4odCxlLmV4dGVuZHMsbikpLGUubWl4aW5zKSlmb3IodmFyIHI9MCxvPWUubWl4aW5zLmxlbmd0aDtyPG87cisrKXQ9RG4odCxlLm1peGluc1tyXSxuKTt2YXIgaSxhPXt9O2ZvcihpIGluIHQpcyhpKTtmb3IoaSBpbiBlKSQodCxpKXx8cyhpKTtmdW5jdGlvbiBzKHIpe3ZhciBvPVNuW3JdfHxQbjthW3JdPW8odFtyXSxlW3JdLG4scil9cmV0dXJuIGF9ZnVuY3Rpb24gTm4odCxlLG4scil7aWYoInN0cmluZyI9PXR5cGVvZiBuKXt2YXIgbz10W2VdO2lmKCQobyxuKSlyZXR1cm4gb1tuXTt2YXIgaT1PKG4pO2lmKCQobyxpKSlyZXR1cm4gb1tpXTt2YXIgYT1rKGkpO3JldHVybiAkKG8sYSk/b1thXTpvW25dfHxvW2ldfHxvW2FdfX1mdW5jdGlvbiBMbih0LGUsbixyKXt2YXIgbz1lW3RdLGk9ISQobix0KSxhPW5bdF0scz1IbihCb29sZWFuLG8udHlwZSk7aWYocz4tMSlpZihpJiYhJChvLCJkZWZhdWx0IikpYT0hMTtlbHNlIGlmKCIiPT09YXx8YT09PUEodCkpe3ZhciBjPUhuKFN0cmluZyxvLnR5cGUpOyhjPDB8fHM8YykmJihhPSEwKX1pZih2b2lkIDA9PT1hKXthPWZ1bmN0aW9uKHQsZSxuKXtpZigkKGUsImRlZmF1bHQiKSl7dmFyIHI9ZS5kZWZhdWx0O3JldHVybiB0JiZ0LiRvcHRpb25zLnByb3BzRGF0YSYmdm9pZCAwPT09dC4kb3B0aW9ucy5wcm9wc0RhdGFbbl0mJnZvaWQgMCE9PXQuX3Byb3BzW25dP3QuX3Byb3BzW25dOnUocikmJiJGdW5jdGlvbiIhPT1SbihlLnR5cGUpP3IuY2FsbCh0KTpyfX0ocixvLHQpO3ZhciBsPWt0O1N0KCEwKSxFdChhKSxTdChsKX1yZXR1cm4gYX12YXIgRm49L15ccypmdW5jdGlvbiAoXHcrKS87ZnVuY3Rpb24gUm4odCl7dmFyIGU9dCYmdC50b1N0cmluZygpLm1hdGNoKEZuKTtyZXR1cm4gZT9lWzFdOiIifWZ1bmN0aW9uIFZuKHQsZSl7cmV0dXJuIFJuKHQpPT09Um4oZSl9ZnVuY3Rpb24gSG4odCxlKXtpZighbyhlKSlyZXR1cm4gVm4oZSx0KT8wOi0xO2Zvcih2YXIgbj0wLHI9ZS5sZW5ndGg7bjxyO24rKylpZihWbihlW25dLHQpKXJldHVybiBuO3JldHVybi0xfXZhciBVbj17ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0Ok0sc2V0Ok19O2Z1bmN0aW9uIEJuKHQsZSxuKXtVbi5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc1tlXVtuXX0sVW4uc2V0PWZ1bmN0aW9uKHQpe3RoaXNbZV1bbl09dH0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsbixVbil9ZnVuY3Rpb24gR24odCl7dmFyIGU9dC4kb3B0aW9ucztpZihlLnByb3BzJiZmdW5jdGlvbih0LGUpe3ZhciBuPXQuJG9wdGlvbnMucHJvcHNEYXRhfHx7fSxyPXQuX3Byb3BzPUR0KHt9KSxvPXQuJG9wdGlvbnMuX3Byb3BLZXlzPVtdOyF0LiRwYXJlbnR8fFN0KCExKTt2YXIgaT1mdW5jdGlvbihpKXtvLnB1c2goaSk7dmFyIGE9TG4oaSxlLG4sdCk7VHQocixpLGEsdm9pZCAwLCEwKSxpIGluIHR8fEJuKHQsIl9wcm9wcyIsaSl9O2Zvcih2YXIgYSBpbiBlKWkoYSk7U3QoITApfSh0LGUucHJvcHMpLGZ1bmN0aW9uKHQpe3ZhciBlPXQuJG9wdGlvbnMsbj1lLnNldHVwO2lmKG4pe3ZhciByPXQuX3NldHVwQ29udGV4dD1tZSh0KTtmdCh0KSxidCgpO3ZhciBvPVNlKG4sbnVsbCxbdC5fcHJvcHN8fER0KHt9KSxyXSx0LCJzZXR1cCIpO2lmKHd0KCksZnQoKSx1KG8pKWUucmVuZGVyPW87ZWxzZSBpZihsKG8pKWlmKHQuX3NldHVwU3RhdGU9byxvLl9fc2ZjKXt2YXIgaT10Ll9zZXR1cFByb3h5PXt9O2Zvcih2YXIgYSBpbiBvKSJfX3NmYyIhPT1hJiZGdChpLG8sYSl9ZWxzZSBmb3IodmFyIGEgaW4gbylHKGEpfHxGdCh0LG8sYSl9fSh0KSxlLm1ldGhvZHMmJmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuIGluIHQuJG9wdGlvbnMucHJvcHMsZSl0W25dPSJmdW5jdGlvbiIhPXR5cGVvZiBlW25dP006aihlW25dLHQpfSh0LGUubWV0aG9kcyksZS5kYXRhKSFmdW5jdGlvbih0KXt2YXIgZT10LiRvcHRpb25zLmRhdGE7cChlPXQuX2RhdGE9dShlKT9mdW5jdGlvbih0LGUpe2J0KCk7dHJ5e3JldHVybiB0LmNhbGwoZSxlKX1jYXRjaCh0KXtyZXR1cm4ga2UodCxlLCJkYXRhKCkiKSx7fX1maW5hbGx5e3d0KCl9fShlLHQpOmV8fHt9KXx8KGU9e30pO3ZhciBuPU9iamVjdC5rZXlzKGUpLHI9dC4kb3B0aW9ucy5wcm9wcyxvPSh0LiRvcHRpb25zLm1ldGhvZHMsbi5sZW5ndGgpO2Zvcig7by0tOyl7dmFyIGk9bltvXTtyJiYkKHIsaSl8fEcoaSl8fEJuKHQsIl9kYXRhIixpKX12YXIgYT1FdChlKTthJiZhLnZtQ291bnQrK30odCk7ZWxzZXt2YXIgbj1FdCh0Ll9kYXRhPXt9KTtuJiZuLnZtQ291bnQrK31lLmNvbXB1dGVkJiZmdW5jdGlvbih0LGUpe3ZhciBuPXQuX2NvbXB1dGVkV2F0Y2hlcnM9T2JqZWN0LmNyZWF0ZShudWxsKSxyPWl0KCk7Zm9yKHZhciBvIGluIGUpe3ZhciBpPWVbb10sYT11KGkpP2k6aS5nZXQ7cnx8KG5bb109bmV3IHplKHQsYXx8TSxNLHpuKSksbyBpbiB0fHxLbih0LG8saSl9fSh0LGUuY29tcHV0ZWQpLGUud2F0Y2gmJmUud2F0Y2ghPT1udCYmZnVuY3Rpb24odCxlKXtmb3IodmFyIG4gaW4gZSl7dmFyIHI9ZVtuXTtpZihvKHIpKWZvcih2YXIgaT0wO2k8ci5sZW5ndGg7aSsrKUpuKHQsbixyW2ldKTtlbHNlIEpuKHQsbixyKX19KHQsZS53YXRjaCl9dmFyIHpuPXtsYXp5OiEwfTtmdW5jdGlvbiBLbih0LGUsbil7dmFyIHI9IWl0KCk7dShuKT8oVW4uZ2V0PXI/V24oZSk6cW4obiksVW4uc2V0PU0pOihVbi5nZXQ9bi5nZXQ/ciYmITEhPT1uLmNhY2hlP1duKGUpOnFuKG4uZ2V0KTpNLFVuLnNldD1uLnNldHx8TSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxVbil9ZnVuY3Rpb24gV24odCl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5fY29tcHV0ZWRXYXRjaGVycyYmdGhpcy5fY29tcHV0ZWRXYXRjaGVyc1t0XTtpZihlKXJldHVybiBlLmRpcnR5JiZlLmV2YWx1YXRlKCkseXQudGFyZ2V0JiZlLmRlcGVuZCgpLGUudmFsdWV9fWZ1bmN0aW9uIHFuKHQpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0LmNhbGwodGhpcyx0aGlzKX19ZnVuY3Rpb24gSm4odCxlLG4scil7cmV0dXJuIHAobikmJihyPW4sbj1uLmhhbmRsZXIpLCJzdHJpbmciPT10eXBlb2YgbiYmKG49dFtuXSksdC4kd2F0Y2goZSxuLHIpfXZhciBabj0wO2Z1bmN0aW9uIFhuKHQpe3ZhciBlPXQub3B0aW9ucztpZih0LnN1cGVyKXt2YXIgbj1Ybih0LnN1cGVyKTtpZihuIT09dC5zdXBlck9wdGlvbnMpe3Quc3VwZXJPcHRpb25zPW47dmFyIHI9ZnVuY3Rpb24odCl7dmFyIGUsbj10Lm9wdGlvbnMscj10LnNlYWxlZE9wdGlvbnM7Zm9yKHZhciBvIGluIG4pbltvXSE9PXJbb10mJihlfHwoZT17fSksZVtvXT1uW29dKTtyZXR1cm4gZX0odCk7ciYmVCh0LmV4dGVuZE9wdGlvbnMsciksKGU9dC5vcHRpb25zPURuKG4sdC5leHRlbmRPcHRpb25zKSkubmFtZSYmKGUuY29tcG9uZW50c1tlLm5hbWVdPXQpfX1yZXR1cm4gZX1mdW5jdGlvbiBRbih0KXt0aGlzLl9pbml0KHQpfWZ1bmN0aW9uIFluKHQpe3QuY2lkPTA7dmFyIGU9MTt0LmV4dGVuZD1mdW5jdGlvbih0KXt0PXR8fHt9O3ZhciBuPXRoaXMscj1uLmNpZCxvPXQuX0N0b3J8fCh0Ll9DdG9yPXt9KTtpZihvW3JdKXJldHVybiBvW3JdO3ZhciBpPWJuKHQpfHxibihuLm9wdGlvbnMpLGE9ZnVuY3Rpb24odCl7dGhpcy5faW5pdCh0KX07cmV0dXJuKGEucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobi5wcm90b3R5cGUpKS5jb25zdHJ1Y3Rvcj1hLGEuY2lkPWUrKyxhLm9wdGlvbnM9RG4obi5vcHRpb25zLHQpLGEuc3VwZXI9bixhLm9wdGlvbnMucHJvcHMmJmZ1bmN0aW9uKHQpe3ZhciBlPXQub3B0aW9ucy5wcm9wcztmb3IodmFyIG4gaW4gZSlCbih0LnByb3RvdHlwZSwiX3Byb3BzIixuKX0oYSksYS5vcHRpb25zLmNvbXB1dGVkJiZmdW5jdGlvbih0KXt2YXIgZT10Lm9wdGlvbnMuY29tcHV0ZWQ7Zm9yKHZhciBuIGluIGUpS24odC5wcm90b3R5cGUsbixlW25dKX0oYSksYS5leHRlbmQ9bi5leHRlbmQsYS5taXhpbj1uLm1peGluLGEudXNlPW4udXNlLEguZm9yRWFjaCgoZnVuY3Rpb24odCl7YVt0XT1uW3RdfSkpLGkmJihhLm9wdGlvbnMuY29tcG9uZW50c1tpXT1hKSxhLnN1cGVyT3B0aW9ucz1uLm9wdGlvbnMsYS5leHRlbmRPcHRpb25zPXQsYS5zZWFsZWRPcHRpb25zPVQoe30sYS5vcHRpb25zKSxvW3JdPWEsYX19ZnVuY3Rpb24gdHIodCl7cmV0dXJuIHQmJihibih0LkN0b3Iub3B0aW9ucyl8fHQudGFnKX1mdW5jdGlvbiBlcih0LGUpe3JldHVybiBvKHQpP3QuaW5kZXhPZihlKT4tMToic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiLCIpLmluZGV4T2YoZSk+LTE6ISFmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBSZWdFeHBdIj09PWYuY2FsbCh0KX0odCkmJnQudGVzdChlKX1mdW5jdGlvbiBucih0LGUpe3ZhciBuPXQuY2FjaGUscj10LmtleXMsbz10Ll92bm9kZSxpPXQuJHZub2RlO2Zvcih2YXIgYSBpbiBuKXt2YXIgcz1uW2FdO2lmKHMpe3ZhciBjPXMubmFtZTtjJiYhZShjKSYmcnIobixhLHIsbyl9fWkuY29tcG9uZW50T3B0aW9ucy5jaGlsZHJlbj12b2lkIDB9ZnVuY3Rpb24gcnIodCxlLG4scil7dmFyIG89dFtlXTshb3x8ciYmby50YWc9PT1yLnRhZ3x8by5jb21wb25lbnRJbnN0YW5jZS4kZGVzdHJveSgpLHRbZV09bnVsbCxiKG4sZSl9KGZ1bmN0aW9uKHQpe3QucHJvdG90eXBlLl9pbml0PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7ZS5fdWlkPVpuKyssZS5faXNWdWU9ITAsZS5fX3Zfc2tpcD0hMCxlLl9zY29wZT1uZXcgSHQoITApLGUuX3Njb3BlLnBhcmVudD12b2lkIDAsZS5fc2NvcGUuX3ZtPSEwLHQmJnQuX2lzQ29tcG9uZW50P2Z1bmN0aW9uKHQsZSl7dmFyIG49dC4kb3B0aW9ucz1PYmplY3QuY3JlYXRlKHQuY29uc3RydWN0b3Iub3B0aW9ucykscj1lLl9wYXJlbnRWbm9kZTtuLnBhcmVudD1lLnBhcmVudCxuLl9wYXJlbnRWbm9kZT1yO3ZhciBvPXIuY29tcG9uZW50T3B0aW9ucztuLnByb3BzRGF0YT1vLnByb3BzRGF0YSxuLl9wYXJlbnRMaXN0ZW5lcnM9by5saXN0ZW5lcnMsbi5fcmVuZGVyQ2hpbGRyZW49by5jaGlsZHJlbixuLl9jb21wb25lbnRUYWc9by50YWcsZS5yZW5kZXImJihuLnJlbmRlcj1lLnJlbmRlcixuLnN0YXRpY1JlbmRlckZucz1lLnN0YXRpY1JlbmRlckZucyl9KGUsdCk6ZS4kb3B0aW9ucz1EbihYbihlLmNvbnN0cnVjdG9yKSx0fHx7fSxlKSxlLl9yZW5kZXJQcm94eT1lLGUuX3NlbGY9ZSxmdW5jdGlvbih0KXt2YXIgZT10LiRvcHRpb25zLG49ZS5wYXJlbnQ7aWYobiYmIWUuYWJzdHJhY3Qpe2Zvcig7bi4kb3B0aW9ucy5hYnN0cmFjdCYmbi4kcGFyZW50OyluPW4uJHBhcmVudDtuLiRjaGlsZHJlbi5wdXNoKHQpfXQuJHBhcmVudD1uLHQuJHJvb3Q9bj9uLiRyb290OnQsdC4kY2hpbGRyZW49W10sdC4kcmVmcz17fSx0Ll9wcm92aWRlZD1uP24uX3Byb3ZpZGVkOk9iamVjdC5jcmVhdGUobnVsbCksdC5fd2F0Y2hlcj1udWxsLHQuX2luYWN0aXZlPW51bGwsdC5fZGlyZWN0SW5hY3RpdmU9ITEsdC5faXNNb3VudGVkPSExLHQuX2lzRGVzdHJveWVkPSExLHQuX2lzQmVpbmdEZXN0cm95ZWQ9ITF9KGUpLGZ1bmN0aW9uKHQpe3QuX2V2ZW50cz1PYmplY3QuY3JlYXRlKG51bGwpLHQuX2hhc0hvb2tFdmVudD0hMTt2YXIgZT10LiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7ZSYmSmUodCxlKX0oZSksZnVuY3Rpb24odCl7dC5fdm5vZGU9bnVsbCx0Ll9zdGF0aWNUcmVlcz1udWxsO3ZhciBlPXQuJG9wdGlvbnMsbj10LiR2bm9kZT1lLl9wYXJlbnRWbm9kZSxvPW4mJm4uY29udGV4dDt0LiRzbG90cz1sZShlLl9yZW5kZXJDaGlsZHJlbixvKSx0LiRzY29wZWRTbG90cz1uP2RlKHQuJHBhcmVudCxuLmRhdGEuc2NvcGVkU2xvdHMsdC4kc2xvdHMpOnIsdC5fYz1mdW5jdGlvbihlLG4scixvKXtyZXR1cm4gQ2UodCxlLG4scixvLCExKX0sdC4kY3JlYXRlRWxlbWVudD1mdW5jdGlvbihlLG4scixvKXtyZXR1cm4gQ2UodCxlLG4scixvLCEwKX07dmFyIGk9biYmbi5kYXRhO1R0KHQsIiRhdHRycyIsaSYmaS5hdHRyc3x8cixudWxsLCEwKSxUdCh0LCIkbGlzdGVuZXJzIixlLl9wYXJlbnRMaXN0ZW5lcnN8fHIsbnVsbCwhMCl9KGUpLGVuKGUsImJlZm9yZUNyZWF0ZSIsdm9pZCAwLCExKSxmdW5jdGlvbih0KXt2YXIgZT1obih0LiRvcHRpb25zLmluamVjdCx0KTtlJiYoU3QoITEpLE9iamVjdC5rZXlzKGUpLmZvckVhY2goKGZ1bmN0aW9uKG4pe1R0KHQsbixlW25dKX0pKSxTdCghMCkpfShlKSxHbihlKSx2bihlKSxlbihlLCJjcmVhdGVkIiksZS4kb3B0aW9ucy5lbCYmZS4kbW91bnQoZS4kb3B0aW9ucy5lbCl9fSkoUW4pLGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LnByb3RvdHlwZSwiJGRhdGEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGF0YX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodC5wcm90b3R5cGUsIiRwcm9wcyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9wcm9wc319KSx0LnByb3RvdHlwZS4kc2V0PVB0LHQucHJvdG90eXBlLiRkZWxldGU9TXQsdC5wcm90b3R5cGUuJHdhdGNoPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO2lmKHAoZSkpcmV0dXJuIEpuKHIsdCxlLG4pOyhuPW58fHt9KS51c2VyPSEwO3ZhciBvPW5ldyB6ZShyLHQsZSxuKTtpZihuLmltbWVkaWF0ZSl7dmFyIGk9J2NhbGxiYWNrIGZvciBpbW1lZGlhdGUgd2F0Y2hlciAiJy5jb25jYXQoby5leHByZXNzaW9uLCciJyk7YnQoKSxTZShlLHIsW28udmFsdWVdLHIsaSksd3QoKX1yZXR1cm4gZnVuY3Rpb24oKXtvLnRlYXJkb3duKCl9fX0oUW4pLGZ1bmN0aW9uKHQpe3ZhciBlPS9eaG9vazovO3QucHJvdG90eXBlLiRvbj1mdW5jdGlvbih0LG4pe3ZhciByPXRoaXM7aWYobyh0KSlmb3IodmFyIGk9MCxhPXQubGVuZ3RoO2k8YTtpKyspci4kb24odFtpXSxuKTtlbHNlKHIuX2V2ZW50c1t0XXx8KHIuX2V2ZW50c1t0XT1bXSkpLnB1c2gobiksZS50ZXN0KHQpJiYoci5faGFzSG9va0V2ZW50PSEwKTtyZXR1cm4gcn0sdC5wcm90b3R5cGUuJG9uY2U9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO2Z1bmN0aW9uIHIoKXtuLiRvZmYodCxyKSxlLmFwcGx5KG4sYXJndW1lbnRzKX1yZXR1cm4gci5mbj1lLG4uJG9uKHQsciksbn0sdC5wcm90b3R5cGUuJG9mZj1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXM7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIG4uX2V2ZW50cz1PYmplY3QuY3JlYXRlKG51bGwpLG47aWYobyh0KSl7Zm9yKHZhciByPTAsaT10Lmxlbmd0aDtyPGk7cisrKW4uJG9mZih0W3JdLGUpO3JldHVybiBufXZhciBhLHM9bi5fZXZlbnRzW3RdO2lmKCFzKXJldHVybiBuO2lmKCFlKXJldHVybiBuLl9ldmVudHNbdF09bnVsbCxuO2Zvcih2YXIgYz1zLmxlbmd0aDtjLS07KWlmKChhPXNbY10pPT09ZXx8YS5mbj09PWUpe3Muc3BsaWNlKGMsMSk7YnJlYWt9cmV0dXJuIG59LHQucHJvdG90eXBlLiRlbWl0PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj1lLl9ldmVudHNbdF07aWYobil7bj1uLmxlbmd0aD4xP0Uobik6bjtmb3IodmFyIHI9RShhcmd1bWVudHMsMSksbz0nZXZlbnQgaGFuZGxlciBmb3IgIicuY29uY2F0KHQsJyInKSxpPTAsYT1uLmxlbmd0aDtpPGE7aSsrKVNlKG5baV0sZSxyLGUsbyl9cmV0dXJuIGV9fShRbiksZnVuY3Rpb24odCl7dC5wcm90b3R5cGUuX3VwZGF0ZT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMscj1uLiRlbCxvPW4uX3Zub2RlLGk9WGUobik7bi5fdm5vZGU9dCxuLiRlbD1vP24uX19wYXRjaF9fKG8sdCk6bi5fX3BhdGNoX18obi4kZWwsdCxlLCExKSxpKCksciYmKHIuX192dWVfXz1udWxsKSxuLiRlbCYmKG4uJGVsLl9fdnVlX189bik7Zm9yKHZhciBhPW47YSYmYS4kdm5vZGUmJmEuJHBhcmVudCYmYS4kdm5vZGU9PT1hLiRwYXJlbnQuX3Zub2RlOylhLiRwYXJlbnQuJGVsPWEuJGVsLGE9YS4kcGFyZW50fSx0LnByb3RvdHlwZS4kZm9yY2VVcGRhdGU9ZnVuY3Rpb24oKXt0aGlzLl93YXRjaGVyJiZ0aGlzLl93YXRjaGVyLnVwZGF0ZSgpfSx0LnByb3RvdHlwZS4kZGVzdHJveT1mdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYoIXQuX2lzQmVpbmdEZXN0cm95ZWQpe2VuKHQsImJlZm9yZURlc3Ryb3kiKSx0Ll9pc0JlaW5nRGVzdHJveWVkPSEwO3ZhciBlPXQuJHBhcmVudDshZXx8ZS5faXNCZWluZ0Rlc3Ryb3llZHx8dC4kb3B0aW9ucy5hYnN0cmFjdHx8YihlLiRjaGlsZHJlbix0KSx0Ll9zY29wZS5zdG9wKCksdC5fZGF0YS5fX29iX18mJnQuX2RhdGEuX19vYl9fLnZtQ291bnQtLSx0Ll9pc0Rlc3Ryb3llZD0hMCx0Ll9fcGF0Y2hfXyh0Ll92bm9kZSxudWxsKSxlbih0LCJkZXN0cm95ZWQiKSx0LiRvZmYoKSx0LiRlbCYmKHQuJGVsLl9fdnVlX189bnVsbCksdC4kdm5vZGUmJih0LiR2bm9kZS5wYXJlbnQ9bnVsbCl9fX0oUW4pLGZ1bmN0aW9uKHQpe3VlKHQucHJvdG90eXBlKSx0LnByb3RvdHlwZS4kbmV4dFRpY2s9ZnVuY3Rpb24odCl7cmV0dXJuIFJlKHQsdGhpcyl9LHQucHJvdG90eXBlLl9yZW5kZXI9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dC4kb3B0aW9ucyxuPWUucmVuZGVyLHI9ZS5fcGFyZW50Vm5vZGU7ciYmdC5faXNNb3VudGVkJiYodC4kc2NvcGVkU2xvdHM9ZGUodC4kcGFyZW50LHIuZGF0YS5zY29wZWRTbG90cyx0LiRzbG90cyx0LiRzY29wZWRTbG90cyksdC5fc2xvdHNQcm94eSYmZ2UodC5fc2xvdHNQcm94eSx0LiRzY29wZWRTbG90cykpLHQuJHZub2RlPXI7dmFyIGksYT1sdCxzPWJlO3RyeXtmdCh0KSxiZT10LGk9bi5jYWxsKHQuX3JlbmRlclByb3h5LHQuJGNyZWF0ZUVsZW1lbnQpfWNhdGNoKGUpe2tlKGUsdCwicmVuZGVyIiksaT10Ll92bm9kZX1maW5hbGx5e2JlPXMsZnQoYSl9cmV0dXJuIG8oaSkmJjE9PT1pLmxlbmd0aCYmKGk9aVswXSksaSBpbnN0YW5jZW9mIHB0fHwoaT1kdCgpKSxpLnBhcmVudD1yLGl9fShRbik7dmFyIG9yPVtTdHJpbmcsUmVnRXhwLEFycmF5XSxpcj17S2VlcEFsaXZlOntuYW1lOiJrZWVwLWFsaXZlIixhYnN0cmFjdDohMCxwcm9wczp7aW5jbHVkZTpvcixleGNsdWRlOm9yLG1heDpbU3RyaW5nLE51bWJlcl19LG1ldGhvZHM6e2NhY2hlVk5vZGU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dC5jYWNoZSxuPXQua2V5cyxyPXQudm5vZGVUb0NhY2hlLG89dC5rZXlUb0NhY2hlO2lmKHIpe3ZhciBpPXIudGFnLGE9ci5jb21wb25lbnRJbnN0YW5jZSxzPXIuY29tcG9uZW50T3B0aW9ucztlW29dPXtuYW1lOnRyKHMpLHRhZzppLGNvbXBvbmVudEluc3RhbmNlOmF9LG4ucHVzaChvKSx0aGlzLm1heCYmbi5sZW5ndGg+cGFyc2VJbnQodGhpcy5tYXgpJiZycihlLG5bMF0sbix0aGlzLl92bm9kZSksdGhpcy52bm9kZVRvQ2FjaGU9bnVsbH19fSxjcmVhdGVkOmZ1bmN0aW9uKCl7dGhpcy5jYWNoZT1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMua2V5cz1bXX0sZGVzdHJveWVkOmZ1bmN0aW9uKCl7Zm9yKHZhciB0IGluIHRoaXMuY2FjaGUpcnIodGhpcy5jYWNoZSx0LHRoaXMua2V5cyl9LG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuY2FjaGVWTm9kZSgpLHRoaXMuJHdhdGNoKCJpbmNsdWRlIiwoZnVuY3Rpb24oZSl7bnIodCwoZnVuY3Rpb24odCl7cmV0dXJuIGVyKGUsdCl9KSl9KSksdGhpcy4kd2F0Y2goImV4Y2x1ZGUiLChmdW5jdGlvbihlKXtucih0LChmdW5jdGlvbih0KXtyZXR1cm4hZXIoZSx0KX0pKX0pKX0sdXBkYXRlZDpmdW5jdGlvbigpe3RoaXMuY2FjaGVWTm9kZSgpfSxyZW5kZXI6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLiRzbG90cy5kZWZhdWx0LGU9JGUodCksbj1lJiZlLmNvbXBvbmVudE9wdGlvbnM7aWYobil7dmFyIHI9dHIobiksbz10aGlzLmluY2x1ZGUsaT10aGlzLmV4Y2x1ZGU7aWYobyYmKCFyfHwhZXIobyxyKSl8fGkmJnImJmVyKGkscikpcmV0dXJuIGU7dmFyIGE9dGhpcy5jYWNoZSxzPXRoaXMua2V5cyxjPW51bGw9PWUua2V5P24uQ3Rvci5jaWQrKG4udGFnPyI6OiIuY29uY2F0KG4udGFnKToiIik6ZS5rZXk7YVtjXT8oZS5jb21wb25lbnRJbnN0YW5jZT1hW2NdLmNvbXBvbmVudEluc3RhbmNlLGIocyxjKSxzLnB1c2goYykpOih0aGlzLnZub2RlVG9DYWNoZT1lLHRoaXMua2V5VG9DYWNoZT1jKSxlLmRhdGEua2VlcEFsaXZlPSEwfXJldHVybiBlfHx0JiZ0WzBdfX19OyhmdW5jdGlvbih0KXt2YXIgZT17Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEJ9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiY29uZmlnIixlKSx0LnV0aWw9e3dhcm46a24sZXh0ZW5kOlQsbWVyZ2VPcHRpb25zOkRuLGRlZmluZVJlYWN0aXZlOlR0fSx0LnNldD1QdCx0LmRlbGV0ZT1NdCx0Lm5leHRUaWNrPVJlLHQub2JzZXJ2YWJsZT1mdW5jdGlvbih0KXtyZXR1cm4gRXQodCksdH0sdC5vcHRpb25zPU9iamVjdC5jcmVhdGUobnVsbCksSC5mb3JFYWNoKChmdW5jdGlvbihlKXt0Lm9wdGlvbnNbZSsicyJdPU9iamVjdC5jcmVhdGUobnVsbCl9KSksdC5vcHRpb25zLl9iYXNlPXQsVCh0Lm9wdGlvbnMuY29tcG9uZW50cyxpciksZnVuY3Rpb24odCl7dC51c2U9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5faW5zdGFsbGVkUGx1Z2luc3x8KHRoaXMuX2luc3RhbGxlZFBsdWdpbnM9W10pO2lmKGUuaW5kZXhPZih0KT4tMSlyZXR1cm4gdGhpczt2YXIgbj1FKGFyZ3VtZW50cywxKTtyZXR1cm4gbi51bnNoaWZ0KHRoaXMpLHUodC5pbnN0YWxsKT90Lmluc3RhbGwuYXBwbHkodCxuKTp1KHQpJiZ0LmFwcGx5KG51bGwsbiksZS5wdXNoKHQpLHRoaXN9fSh0KSxmdW5jdGlvbih0KXt0Lm1peGluPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLm9wdGlvbnM9RG4odGhpcy5vcHRpb25zLHQpLHRoaXN9fSh0KSxZbih0KSxmdW5jdGlvbih0KXtILmZvckVhY2goKGZ1bmN0aW9uKGUpe3RbZV09ZnVuY3Rpb24odCxuKXtyZXR1cm4gbj8oImNvbXBvbmVudCI9PT1lJiZwKG4pJiYobi5uYW1lPW4ubmFtZXx8dCxuPXRoaXMub3B0aW9ucy5fYmFzZS5leHRlbmQobikpLCJkaXJlY3RpdmUiPT09ZSYmdShuKSYmKG49e2JpbmQ6bix1cGRhdGU6bn0pLHRoaXMub3B0aW9uc1tlKyJzIl1bdF09bixuKTp0aGlzLm9wdGlvbnNbZSsicyJdW3RdfX0pKX0odCl9KShRbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KFFuLnByb3RvdHlwZSwiJGlzU2VydmVyIix7Z2V0Oml0fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFFuLnByb3RvdHlwZSwiJHNzckNvbnRleHQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kdm5vZGUmJnRoaXMuJHZub2RlLnNzckNvbnRleHR9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KFFuLCJGdW5jdGlvbmFsUmVuZGVyQ29udGV4dCIse3ZhbHVlOm1ufSksUW4udmVyc2lvbj0iMi43LjE2Ijt2YXIgYXI9eSgic3R5bGUsY2xhc3MiKSxzcj15KCJpbnB1dCx0ZXh0YXJlYSxvcHRpb24sc2VsZWN0LHByb2dyZXNzIiksY3I9eSgiY29udGVudGVkaXRhYmxlLGRyYWdnYWJsZSxzcGVsbGNoZWNrIiksdXI9eSgiZXZlbnRzLGNhcmV0LHR5cGluZyxwbGFpbnRleHQtb25seSIpLGxyPXkoImFsbG93ZnVsbHNjcmVlbixhc3luYyxhdXRvZm9jdXMsYXV0b3BsYXksY2hlY2tlZCxjb21wYWN0LGNvbnRyb2xzLGRlY2xhcmUsZGVmYXVsdCxkZWZhdWx0Y2hlY2tlZCxkZWZhdWx0bXV0ZWQsZGVmYXVsdHNlbGVjdGVkLGRlZmVyLGRpc2FibGVkLGVuYWJsZWQsZm9ybW5vdmFsaWRhdGUsaGlkZGVuLGluZGV0ZXJtaW5hdGUsaW5lcnQsaXNtYXAsaXRlbXNjb3BlLGxvb3AsbXVsdGlwbGUsbXV0ZWQsbm9ocmVmLG5vcmVzaXplLG5vc2hhZGUsbm92YWxpZGF0ZSxub3dyYXAsb3BlbixwYXVzZW9uZXhpdCxyZWFkb25seSxyZXF1aXJlZCxyZXZlcnNlZCxzY29wZWQsc2VhbWxlc3Msc2VsZWN0ZWQsc29ydGFibGUsdHJ1ZXNwZWVkLHR5cGVtdXN0bWF0Y2gsdmlzaWJsZSIpLGZyPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIixwcj1mdW5jdGlvbih0KXtyZXR1cm4iOiI9PT10LmNoYXJBdCg1KSYmInhsaW5rIj09PXQuc2xpY2UoMCw1KX0sZHI9ZnVuY3Rpb24odCl7cmV0dXJuIHByKHQpP3Quc2xpY2UoNix0Lmxlbmd0aCk6IiJ9LHZyPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT10fHwhMT09PXR9O2Z1bmN0aW9uIGhyKHQpe2Zvcih2YXIgZT10LmRhdGEsbj10LHI9dDthKHIuY29tcG9uZW50SW5zdGFuY2UpOykocj1yLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSkmJnIuZGF0YSYmKGU9bXIoci5kYXRhLGUpKTtmb3IoO2Eobj1uLnBhcmVudCk7KW4mJm4uZGF0YSYmKGU9bXIoZSxuLmRhdGEpKTtyZXR1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm4gYSh0KXx8YShlKT9fcih0LHlyKGUpKToiIn0oZS5zdGF0aWNDbGFzcyxlLmNsYXNzKX1mdW5jdGlvbiBtcih0LGUpe3JldHVybntzdGF0aWNDbGFzczpfcih0LnN0YXRpY0NsYXNzLGUuc3RhdGljQ2xhc3MpLGNsYXNzOmEodC5jbGFzcyk/W3QuY2xhc3MsZS5jbGFzc106ZS5jbGFzc319ZnVuY3Rpb24gX3IodCxlKXtyZXR1cm4gdD9lP3QrIiAiK2U6dDplfHwiIn1mdW5jdGlvbiB5cih0KXtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT9mdW5jdGlvbih0KXtmb3IodmFyIGUsbj0iIixyPTAsbz10Lmxlbmd0aDtyPG87cisrKWEoZT15cih0W3JdKSkmJiIiIT09ZSYmKG4mJihuKz0iICIpLG4rPWUpO3JldHVybiBufSh0KTpsKHQpP2Z1bmN0aW9uKHQpe3ZhciBlPSIiO2Zvcih2YXIgbiBpbiB0KXRbbl0mJihlJiYoZSs9IiAiKSxlKz1uKTtyZXR1cm4gZX0odCk6InN0cmluZyI9PXR5cGVvZiB0P3Q6IiJ9dmFyIGdyPXtzdmc6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixtYXRoOiJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIn0sYnI9eSgiaHRtbCxib2R5LGJhc2UsaGVhZCxsaW5rLG1ldGEsc3R5bGUsdGl0bGUsYWRkcmVzcyxhcnRpY2xlLGFzaWRlLGZvb3RlcixoZWFkZXIsaDEsaDIsaDMsaDQsaDUsaDYsaGdyb3VwLG5hdixzZWN0aW9uLGRpdixkZCxkbCxkdCxmaWdjYXB0aW9uLGZpZ3VyZSxwaWN0dXJlLGhyLGltZyxsaSxtYWluLG9sLHAscHJlLHVsLGEsYixhYmJyLGJkaSxiZG8sYnIsY2l0ZSxjb2RlLGRhdGEsZGZuLGVtLGksa2JkLG1hcmsscSxycCxydCxydGMscnVieSxzLHNhbXAsc21hbGwsc3BhbixzdHJvbmcsc3ViLHN1cCx0aW1lLHUsdmFyLHdicixhcmVhLGF1ZGlvLG1hcCx0cmFjayx2aWRlbyxlbWJlZCxvYmplY3QscGFyYW0sc291cmNlLGNhbnZhcyxzY3JpcHQsbm9zY3JpcHQsZGVsLGlucyxjYXB0aW9uLGNvbCxjb2xncm91cCx0YWJsZSx0aGVhZCx0Ym9keSx0ZCx0aCx0cixidXR0b24sZGF0YWxpc3QsZmllbGRzZXQsZm9ybSxpbnB1dCxsYWJlbCxsZWdlbmQsbWV0ZXIsb3B0Z3JvdXAsb3B0aW9uLG91dHB1dCxwcm9ncmVzcyxzZWxlY3QsdGV4dGFyZWEsZGV0YWlscyxkaWFsb2csbWVudSxtZW51aXRlbSxzdW1tYXJ5LGNvbnRlbnQsZWxlbWVudCxzaGFkb3csdGVtcGxhdGUsYmxvY2txdW90ZSxpZnJhbWUsdGZvb3QiKSx3cj15KCJzdmcsYW5pbWF0ZSxjaXJjbGUsY2xpcHBhdGgsY3Vyc29yLGRlZnMsZGVzYyxlbGxpcHNlLGZpbHRlcixmb250LWZhY2UsZm9yZWlnbm9iamVjdCxnLGdseXBoLGltYWdlLGxpbmUsbWFya2VyLG1hc2ssbWlzc2luZy1nbHlwaCxwYXRoLHBhdHRlcm4scG9seWdvbixwb2x5bGluZSxyZWN0LHN3aXRjaCxzeW1ib2wsdGV4dCx0ZXh0cGF0aCx0c3Bhbix1c2UsdmlldyIsITApLCRyPWZ1bmN0aW9uKHQpe3JldHVybiBicih0KXx8d3IodCl9O3ZhciBDcj1PYmplY3QuY3JlYXRlKG51bGwpO3ZhciB4cj15KCJ0ZXh0LG51bWJlcixwYXNzd29yZCxzZWFyY2gsZW1haWwsdGVsLHVybCIpO3ZhciBPcj1PYmplY3QuZnJlZXplKHtfX3Byb3RvX186bnVsbCxjcmVhdGVFbGVtZW50OmZ1bmN0aW9uKHQsZSl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0KTtyZXR1cm4ic2VsZWN0IiE9PXR8fGUuZGF0YSYmZS5kYXRhLmF0dHJzJiZ2b2lkIDAhPT1lLmRhdGEuYXR0cnMubXVsdGlwbGUmJm4uc2V0QXR0cmlidXRlKCJtdWx0aXBsZSIsIm11bHRpcGxlIiksbn0sY3JlYXRlRWxlbWVudE5TOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhnclt0XSxlKX0sY3JlYXRlVGV4dE5vZGU6ZnVuY3Rpb24odCl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHQpfSxjcmVhdGVDb21tZW50OmZ1bmN0aW9uKHQpe3JldHVybiBkb2N1bWVudC5jcmVhdGVDb21tZW50KHQpfSxpbnNlcnRCZWZvcmU6ZnVuY3Rpb24odCxlLG4pe3QuaW5zZXJ0QmVmb3JlKGUsbil9LHJlbW92ZUNoaWxkOmZ1bmN0aW9uKHQsZSl7dC5yZW1vdmVDaGlsZChlKX0sYXBwZW5kQ2hpbGQ6ZnVuY3Rpb24odCxlKXt0LmFwcGVuZENoaWxkKGUpfSxwYXJlbnROb2RlOmZ1bmN0aW9uKHQpe3JldHVybiB0LnBhcmVudE5vZGV9LG5leHRTaWJsaW5nOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm5leHRTaWJsaW5nfSx0YWdOYW1lOmZ1bmN0aW9uKHQpe3JldHVybiB0LnRhZ05hbWV9LHNldFRleHRDb250ZW50OmZ1bmN0aW9uKHQsZSl7dC50ZXh0Q29udGVudD1lfSxzZXRTdHlsZVNjb3BlOmZ1bmN0aW9uKHQsZSl7dC5zZXRBdHRyaWJ1dGUoZSwiIil9fSksa3I9e2NyZWF0ZTpmdW5jdGlvbih0LGUpe1NyKGUpfSx1cGRhdGU6ZnVuY3Rpb24odCxlKXt0LmRhdGEucmVmIT09ZS5kYXRhLnJlZiYmKFNyKHQsITApLFNyKGUpKX0sZGVzdHJveTpmdW5jdGlvbih0KXtTcih0LCEwKX19O2Z1bmN0aW9uIFNyKHQsZSl7dmFyIG49dC5kYXRhLnJlZjtpZihhKG4pKXt2YXIgcj10LmNvbnRleHQsaT10LmNvbXBvbmVudEluc3RhbmNlfHx0LmVsbSxzPWU/bnVsbDppLGM9ZT92b2lkIDA6aTtpZih1KG4pKVNlKG4scixbc10sciwidGVtcGxhdGUgcmVmIGZ1bmN0aW9uIik7ZWxzZXt2YXIgbD10LmRhdGEucmVmSW5Gb3IsZj0ic3RyaW5nIj09dHlwZW9mIG58fCJudW1iZXIiPT10eXBlb2YgbixwPUx0KG4pLGQ9ci4kcmVmcztpZihmfHxwKWlmKGwpe3ZhciB2PWY/ZFtuXTpuLnZhbHVlO2U/byh2KSYmYih2LGkpOm8odik/di5pbmNsdWRlcyhpKXx8di5wdXNoKGkpOmY/KGRbbl09W2ldLEFyKHIsbixkW25dKSk6bi52YWx1ZT1baV19ZWxzZSBpZihmKXtpZihlJiZkW25dIT09aSlyZXR1cm47ZFtuXT1jLEFyKHIsbixzKX1lbHNlIGlmKHApe2lmKGUmJm4udmFsdWUhPT1pKXJldHVybjtuLnZhbHVlPXN9fX19ZnVuY3Rpb24gQXIodCxlLG4pe3ZhciByPXQuX3NldHVwU3RhdGU7ciYmJChyLGUpJiYoTHQocltlXSk/cltlXS52YWx1ZT1uOnJbZV09bil9dmFyIGpyPW5ldyBwdCgiIix7fSxbXSksRXI9WyJjcmVhdGUiLCJhY3RpdmF0ZSIsInVwZGF0ZSIsInJlbW92ZSIsImRlc3Ryb3kiXTtmdW5jdGlvbiBUcih0LGUpe3JldHVybiB0LmtleT09PWUua2V5JiZ0LmFzeW5jRmFjdG9yeT09PWUuYXN5bmNGYWN0b3J5JiYodC50YWc9PT1lLnRhZyYmdC5pc0NvbW1lbnQ9PT1lLmlzQ29tbWVudCYmYSh0LmRhdGEpPT09YShlLmRhdGEpJiZmdW5jdGlvbih0LGUpe2lmKCJpbnB1dCIhPT10LnRhZylyZXR1cm4hMDt2YXIgbixyPWEobj10LmRhdGEpJiZhKG49bi5hdHRycykmJm4udHlwZSxvPWEobj1lLmRhdGEpJiZhKG49bi5hdHRycykmJm4udHlwZTtyZXR1cm4gcj09PW98fHhyKHIpJiZ4cihvKX0odCxlKXx8cyh0LmlzQXN5bmNQbGFjZWhvbGRlcikmJmkoZS5hc3luY0ZhY3RvcnkuZXJyb3IpKX1mdW5jdGlvbiBQcih0LGUsbil7dmFyIHIsbyxpPXt9O2ZvcihyPWU7cjw9bjsrK3IpYShvPXRbcl0ua2V5KSYmKGlbb109cik7cmV0dXJuIGl9dmFyIE1yPXtjcmVhdGU6SXIsdXBkYXRlOklyLGRlc3Ryb3k6ZnVuY3Rpb24odCl7SXIodCxqcil9fTtmdW5jdGlvbiBJcih0LGUpeyh0LmRhdGEuZGlyZWN0aXZlc3x8ZS5kYXRhLmRpcmVjdGl2ZXMpJiZmdW5jdGlvbih0LGUpe3ZhciBuLHIsbyxpPXQ9PT1qcixhPWU9PT1qcixzPU5yKHQuZGF0YS5kaXJlY3RpdmVzLHQuY29udGV4dCksYz1OcihlLmRhdGEuZGlyZWN0aXZlcyxlLmNvbnRleHQpLHU9W10sbD1bXTtmb3IobiBpbiBjKXI9c1tuXSxvPWNbbl0scj8oby5vbGRWYWx1ZT1yLnZhbHVlLG8ub2xkQXJnPXIuYXJnLEZyKG8sInVwZGF0ZSIsZSx0KSxvLmRlZiYmby5kZWYuY29tcG9uZW50VXBkYXRlZCYmbC5wdXNoKG8pKTooRnIobywiYmluZCIsZSx0KSxvLmRlZiYmby5kZWYuaW5zZXJ0ZWQmJnUucHVzaChvKSk7aWYodS5sZW5ndGgpe3ZhciBmPWZ1bmN0aW9uKCl7Zm9yKHZhciBuPTA7bjx1Lmxlbmd0aDtuKyspRnIodVtuXSwiaW5zZXJ0ZWQiLGUsdCl9O2k/enQoZSwiaW5zZXJ0IixmKTpmKCl9aWYobC5sZW5ndGgmJnp0KGUsInBvc3RwYXRjaCIsKGZ1bmN0aW9uKCl7Zm9yKHZhciBuPTA7bjxsLmxlbmd0aDtuKyspRnIobFtuXSwiY29tcG9uZW50VXBkYXRlZCIsZSx0KX0pKSwhaSlmb3IobiBpbiBzKWNbbl18fEZyKHNbbl0sInVuYmluZCIsdCx0LGEpfSh0LGUpfXZhciBEcj1PYmplY3QuY3JlYXRlKG51bGwpO2Z1bmN0aW9uIE5yKHQsZSl7dmFyIG4scixvPU9iamVjdC5jcmVhdGUobnVsbCk7aWYoIXQpcmV0dXJuIG87Zm9yKG49MDtuPHQubGVuZ3RoO24rKyl7aWYoKHI9dFtuXSkubW9kaWZpZXJzfHwoci5tb2RpZmllcnM9RHIpLG9bTHIocildPXIsZS5fc2V0dXBTdGF0ZSYmZS5fc2V0dXBTdGF0ZS5fX3NmYyl7dmFyIGk9ci5kZWZ8fE5uKGUsIl9zZXR1cFN0YXRlIiwidi0iK3IubmFtZSk7ci5kZWY9ImZ1bmN0aW9uIj09dHlwZW9mIGk/e2JpbmQ6aSx1cGRhdGU6aX06aX1yLmRlZj1yLmRlZnx8Tm4oZS4kb3B0aW9ucywiZGlyZWN0aXZlcyIsci5uYW1lKX1yZXR1cm4gb31mdW5jdGlvbiBMcih0KXtyZXR1cm4gdC5yYXdOYW1lfHwiIi5jb25jYXQodC5uYW1lLCIuIikuY29uY2F0KE9iamVjdC5rZXlzKHQubW9kaWZpZXJzfHx7fSkuam9pbigiLiIpKX1mdW5jdGlvbiBGcih0LGUsbixyLG8pe3ZhciBpPXQuZGVmJiZ0LmRlZltlXTtpZihpKXRyeXtpKG4uZWxtLHQsbixyLG8pfWNhdGNoKHIpe2tlKHIsbi5jb250ZXh0LCJkaXJlY3RpdmUgIi5jb25jYXQodC5uYW1lLCIgIikuY29uY2F0KGUsIiBob29rIikpfX12YXIgUnI9W2tyLE1yXTtmdW5jdGlvbiBWcih0LGUpe3ZhciBuPWUuY29tcG9uZW50T3B0aW9ucztpZighKGEobikmJiExPT09bi5DdG9yLm9wdGlvbnMuaW5oZXJpdEF0dHJzfHxpKHQuZGF0YS5hdHRycykmJmkoZS5kYXRhLmF0dHJzKSkpe3ZhciByLG8sYz1lLmVsbSx1PXQuZGF0YS5hdHRyc3x8e30sbD1lLmRhdGEuYXR0cnN8fHt9O2ZvcihyIGluKGEobC5fX29iX18pfHxzKGwuX3ZfYXR0cl9wcm94eSkpJiYobD1lLmRhdGEuYXR0cnM9VCh7fSxsKSksbClvPWxbcl0sdVtyXSE9PW8mJkhyKGMscixvLGUuZGF0YS5wcmUpO2ZvcihyIGluKFp8fFEpJiZsLnZhbHVlIT09dS52YWx1ZSYmSHIoYywidmFsdWUiLGwudmFsdWUpLHUpaShsW3JdKSYmKHByKHIpP2MucmVtb3ZlQXR0cmlidXRlTlMoZnIsZHIocikpOmNyKHIpfHxjLnJlbW92ZUF0dHJpYnV0ZShyKSl9fWZ1bmN0aW9uIEhyKHQsZSxuLHIpe3J8fHQudGFnTmFtZS5pbmRleE9mKCItIik+LTE/VXIodCxlLG4pOmxyKGUpP3ZyKG4pP3QucmVtb3ZlQXR0cmlidXRlKGUpOihuPSJhbGxvd2Z1bGxzY3JlZW4iPT09ZSYmIkVNQkVEIj09PXQudGFnTmFtZT8idHJ1ZSI6ZSx0LnNldEF0dHJpYnV0ZShlLG4pKTpjcihlKT90LnNldEF0dHJpYnV0ZShlLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHZyKGUpfHwiZmFsc2UiPT09ZT8iZmFsc2UiOiJjb250ZW50ZWRpdGFibGUiPT09dCYmdXIoZSk/ZToidHJ1ZSJ9KGUsbikpOnByKGUpP3ZyKG4pP3QucmVtb3ZlQXR0cmlidXRlTlMoZnIsZHIoZSkpOnQuc2V0QXR0cmlidXRlTlMoZnIsZSxuKTpVcih0LGUsbil9ZnVuY3Rpb24gVXIodCxlLG4pe2lmKHZyKG4pKXQucmVtb3ZlQXR0cmlidXRlKGUpO2Vsc2V7aWYoWiYmIVgmJiJURVhUQVJFQSI9PT10LnRhZ05hbWUmJiJwbGFjZWhvbGRlciI9PT1lJiYiIiE9PW4mJiF0Ll9faWVwaCl7dmFyIHI9ZnVuY3Rpb24oZSl7ZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImlucHV0IixyKX07dC5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsciksdC5fX2llcGg9ITB9dC5zZXRBdHRyaWJ1dGUoZSxuKX19dmFyIEJyPXtjcmVhdGU6VnIsdXBkYXRlOlZyfTtmdW5jdGlvbiBHcih0LGUpe3ZhciBuPWUuZWxtLHI9ZS5kYXRhLG89dC5kYXRhO2lmKCEoaShyLnN0YXRpY0NsYXNzKSYmaShyLmNsYXNzKSYmKGkobyl8fGkoby5zdGF0aWNDbGFzcykmJmkoby5jbGFzcykpKSl7dmFyIHM9aHIoZSksYz1uLl90cmFuc2l0aW9uQ2xhc3NlczthKGMpJiYocz1fcihzLHlyKGMpKSkscyE9PW4uX3ByZXZDbGFzcyYmKG4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyksbi5fcHJldkNsYXNzPXMpfX12YXIgenIsS3I9e2NyZWF0ZTpHcix1cGRhdGU6R3J9O2Z1bmN0aW9uIFdyKHQsZSxuKXt2YXIgcj16cjtyZXR1cm4gZnVuY3Rpb24gbygpe3ZhciBpPWUuYXBwbHkobnVsbCxhcmd1bWVudHMpO251bGwhPT1pJiZacih0LG8sbixyKX19dmFyIHFyPVRlJiYhKGV0JiZOdW1iZXIoZXRbMV0pPD01Myk7ZnVuY3Rpb24gSnIodCxlLG4scil7aWYocXIpe3ZhciBvPXVuLGk9ZTtlPWkuX3dyYXBwZXI9ZnVuY3Rpb24odCl7aWYodC50YXJnZXQ9PT10LmN1cnJlbnRUYXJnZXR8fHQudGltZVN0YW1wPj1vfHx0LnRpbWVTdGFtcDw9MHx8dC50YXJnZXQub3duZXJEb2N1bWVudCE9PWRvY3VtZW50KXJldHVybiBpLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19enIuYWRkRXZlbnRMaXN0ZW5lcih0LGUscnQ/e2NhcHR1cmU6bixwYXNzaXZlOnJ9Om4pfWZ1bmN0aW9uIFpyKHQsZSxuLHIpeyhyfHx6cikucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LGUuX3dyYXBwZXJ8fGUsbil9ZnVuY3Rpb24gWHIodCxlKXtpZighaSh0LmRhdGEub24pfHwhaShlLmRhdGEub24pKXt2YXIgbj1lLmRhdGEub258fHt9LHI9dC5kYXRhLm9ufHx7fTt6cj1lLmVsbXx8dC5lbG0sZnVuY3Rpb24odCl7aWYoYSh0Ll9fcikpe3ZhciBlPVo/ImNoYW5nZSI6ImlucHV0Ijt0W2VdPVtdLmNvbmNhdCh0Ll9fcix0W2VdfHxbXSksZGVsZXRlIHQuX19yfWEodC5fX2MpJiYodC5jaGFuZ2U9W10uY29uY2F0KHQuX19jLHQuY2hhbmdlfHxbXSksZGVsZXRlIHQuX19jKX0obiksR3QobixyLEpyLFpyLFdyLGUuY29udGV4dCksenI9dm9pZCAwfX12YXIgUXIsWXI9e2NyZWF0ZTpYcix1cGRhdGU6WHIsZGVzdHJveTpmdW5jdGlvbih0KXtyZXR1cm4gWHIodCxqcil9fTtmdW5jdGlvbiB0byh0LGUpe2lmKCFpKHQuZGF0YS5kb21Qcm9wcyl8fCFpKGUuZGF0YS5kb21Qcm9wcykpe3ZhciBuLHIsbz1lLmVsbSxjPXQuZGF0YS5kb21Qcm9wc3x8e30sdT1lLmRhdGEuZG9tUHJvcHN8fHt9O2ZvcihuIGluKGEodS5fX29iX18pfHxzKHUuX3ZfYXR0cl9wcm94eSkpJiYodT1lLmRhdGEuZG9tUHJvcHM9VCh7fSx1KSksYyluIGluIHV8fChvW25dPSIiKTtmb3IobiBpbiB1KXtpZihyPXVbbl0sInRleHRDb250ZW50Ij09PW58fCJpbm5lckhUTUwiPT09bil7aWYoZS5jaGlsZHJlbiYmKGUuY2hpbGRyZW4ubGVuZ3RoPTApLHI9PT1jW25dKWNvbnRpbnVlOzE9PT1vLmNoaWxkTm9kZXMubGVuZ3RoJiZvLnJlbW92ZUNoaWxkKG8uY2hpbGROb2Rlc1swXSl9aWYoInZhbHVlIj09PW4mJiJQUk9HUkVTUyIhPT1vLnRhZ05hbWUpe28uX3ZhbHVlPXI7dmFyIGw9aShyKT8iIjpTdHJpbmcocik7ZW8obyxsKSYmKG8udmFsdWU9bCl9ZWxzZSBpZigiaW5uZXJIVE1MIj09PW4mJndyKG8udGFnTmFtZSkmJmkoby5pbm5lckhUTUwpKXsoUXI9UXJ8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9Ijxzdmc+Ii5jb25jYXQociwiPC9zdmc+Iik7Zm9yKHZhciBmPVFyLmZpcnN0Q2hpbGQ7by5maXJzdENoaWxkOylvLnJlbW92ZUNoaWxkKG8uZmlyc3RDaGlsZCk7Zm9yKDtmLmZpcnN0Q2hpbGQ7KW8uYXBwZW5kQ2hpbGQoZi5maXJzdENoaWxkKX1lbHNlIGlmKHIhPT1jW25dKXRyeXtvW25dPXJ9Y2F0Y2godCl7fX19fWZ1bmN0aW9uIGVvKHQsZSl7cmV0dXJuIXQuY29tcG9zaW5nJiYoIk9QVElPTiI9PT10LnRhZ05hbWV8fGZ1bmN0aW9uKHQsZSl7dmFyIG49ITA7dHJ5e249ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXR9Y2F0Y2godCl7fXJldHVybiBuJiZ0LnZhbHVlIT09ZX0odCxlKXx8ZnVuY3Rpb24odCxlKXt2YXIgbj10LnZhbHVlLHI9dC5fdk1vZGlmaWVycztpZihhKHIpKXtpZihyLm51bWJlcilyZXR1cm4gXyhuKSE9PV8oZSk7aWYoci50cmltKXJldHVybiBuLnRyaW0oKSE9PWUudHJpbSgpfXJldHVybiBuIT09ZX0odCxlKSl9dmFyIG5vPXtjcmVhdGU6dG8sdXBkYXRlOnRvfSxybz1DKChmdW5jdGlvbih0KXt2YXIgZT17fSxuPS86KC4rKS87cmV0dXJuIHQuc3BsaXQoLzsoPyFbXihdKlwpKS9nKS5mb3JFYWNoKChmdW5jdGlvbih0KXtpZih0KXt2YXIgcj10LnNwbGl0KG4pO3IubGVuZ3RoPjEmJihlW3JbMF0udHJpbSgpXT1yWzFdLnRyaW0oKSl9fSkpLGV9KSk7ZnVuY3Rpb24gb28odCl7dmFyIGU9aW8odC5zdHlsZSk7cmV0dXJuIHQuc3RhdGljU3R5bGU/VCh0LnN0YXRpY1N0eWxlLGUpOmV9ZnVuY3Rpb24gaW8odCl7cmV0dXJuIEFycmF5LmlzQXJyYXkodCk/UCh0KToic3RyaW5nIj09dHlwZW9mIHQ/cm8odCk6dH12YXIgYW8sc289L14tLS8sY289L1xzKiFpbXBvcnRhbnQkLyx1bz1mdW5jdGlvbih0LGUsbil7aWYoc28udGVzdChlKSl0LnN0eWxlLnNldFByb3BlcnR5KGUsbik7ZWxzZSBpZihjby50ZXN0KG4pKXQuc3R5bGUuc2V0UHJvcGVydHkoQShlKSxuLnJlcGxhY2UoY28sIiIpLCJpbXBvcnRhbnQiKTtlbHNle3ZhciByPWZvKGUpO2lmKEFycmF5LmlzQXJyYXkobikpZm9yKHZhciBvPTAsaT1uLmxlbmd0aDtvPGk7bysrKXQuc3R5bGVbcl09bltvXTtlbHNlIHQuc3R5bGVbcl09bn19LGxvPVsiV2Via2l0IiwiTW96IiwibXMiXSxmbz1DKChmdW5jdGlvbih0KXtpZihhbz1hb3x8ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGUsImZpbHRlciIhPT0odD1PKHQpKSYmdCBpbiBhbylyZXR1cm4gdDtmb3IodmFyIGU9dC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpLG49MDtuPGxvLmxlbmd0aDtuKyspe3ZhciByPWxvW25dK2U7aWYociBpbiBhbylyZXR1cm4gcn19KSk7ZnVuY3Rpb24gcG8odCxlKXt2YXIgbj1lLmRhdGEscj10LmRhdGE7aWYoIShpKG4uc3RhdGljU3R5bGUpJiZpKG4uc3R5bGUpJiZpKHIuc3RhdGljU3R5bGUpJiZpKHIuc3R5bGUpKSl7dmFyIG8scyxjPWUuZWxtLHU9ci5zdGF0aWNTdHlsZSxsPXIubm9ybWFsaXplZFN0eWxlfHxyLnN0eWxlfHx7fSxmPXV8fGwscD1pbyhlLmRhdGEuc3R5bGUpfHx7fTtlLmRhdGEubm9ybWFsaXplZFN0eWxlPWEocC5fX29iX18pP1Qoe30scCk6cDt2YXIgZD1mdW5jdGlvbih0LGUpe3ZhciBuLHI9e307aWYoZSlmb3IodmFyIG89dDtvLmNvbXBvbmVudEluc3RhbmNlOykobz1vLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSkmJm8uZGF0YSYmKG49b28oby5kYXRhKSkmJlQocixuKTsobj1vbyh0LmRhdGEpKSYmVChyLG4pO2Zvcih2YXIgaT10O2k9aS5wYXJlbnQ7KWkuZGF0YSYmKG49b28oaS5kYXRhKSkmJlQocixuKTtyZXR1cm4gcn0oZSwhMCk7Zm9yKHMgaW4gZilpKGRbc10pJiZ1byhjLHMsIiIpO2ZvcihzIGluIGQpbz1kW3NdLHVvKGMscyxudWxsPT1vPyIiOm8pfX12YXIgdm89e2NyZWF0ZTpwbyx1cGRhdGU6cG99LGhvPS9ccysvO2Z1bmN0aW9uIG1vKHQsZSl7aWYoZSYmKGU9ZS50cmltKCkpKWlmKHQuY2xhc3NMaXN0KWUuaW5kZXhPZigiICIpPi0xP2Uuc3BsaXQoaG8pLmZvckVhY2goKGZ1bmN0aW9uKGUpe3JldHVybiB0LmNsYXNzTGlzdC5hZGQoZSl9KSk6dC5jbGFzc0xpc3QuYWRkKGUpO2Vsc2V7dmFyIG49IiAiLmNvbmNhdCh0LmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIsIiAiKTtuLmluZGV4T2YoIiAiK2UrIiAiKTwwJiZ0LnNldEF0dHJpYnV0ZSgiY2xhc3MiLChuK2UpLnRyaW0oKSl9fWZ1bmN0aW9uIF9vKHQsZSl7aWYoZSYmKGU9ZS50cmltKCkpKWlmKHQuY2xhc3NMaXN0KWUuaW5kZXhPZigiICIpPi0xP2Uuc3BsaXQoaG8pLmZvckVhY2goKGZ1bmN0aW9uKGUpe3JldHVybiB0LmNsYXNzTGlzdC5yZW1vdmUoZSl9KSk6dC5jbGFzc0xpc3QucmVtb3ZlKGUpLHQuY2xhc3NMaXN0Lmxlbmd0aHx8dC5yZW1vdmVBdHRyaWJ1dGUoImNsYXNzIik7ZWxzZXtmb3IodmFyIG49IiAiLmNvbmNhdCh0LmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIsIiAiKSxyPSIgIitlKyIgIjtuLmluZGV4T2Yocik+PTA7KW49bi5yZXBsYWNlKHIsIiAiKTsobj1uLnRyaW0oKSk/dC5zZXRBdHRyaWJ1dGUoImNsYXNzIixuKTp0LnJlbW92ZUF0dHJpYnV0ZSgiY2xhc3MiKX19ZnVuY3Rpb24geW8odCl7aWYodCl7aWYoIm9iamVjdCI9PXR5cGVvZiB0KXt2YXIgZT17fTtyZXR1cm4hMSE9PXQuY3NzJiZUKGUsZ28odC5uYW1lfHwidiIpKSxUKGUsdCksZX1yZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/Z28odCk6dm9pZCAwfX12YXIgZ289QygoZnVuY3Rpb24odCl7cmV0dXJue2VudGVyQ2xhc3M6IiIuY29uY2F0KHQsIi1lbnRlciIpLGVudGVyVG9DbGFzczoiIi5jb25jYXQodCwiLWVudGVyLXRvIiksZW50ZXJBY3RpdmVDbGFzczoiIi5jb25jYXQodCwiLWVudGVyLWFjdGl2ZSIpLGxlYXZlQ2xhc3M6IiIuY29uY2F0KHQsIi1sZWF2ZSIpLGxlYXZlVG9DbGFzczoiIi5jb25jYXQodCwiLWxlYXZlLXRvIiksbGVhdmVBY3RpdmVDbGFzczoiIi5jb25jYXQodCwiLWxlYXZlLWFjdGl2ZSIpfX0pKSxibz1xJiYhWCx3bz0idHJhbnNpdGlvbiIsJG89ImFuaW1hdGlvbiIsQ289InRyYW5zaXRpb24iLHhvPSJ0cmFuc2l0aW9uZW5kIixPbz0iYW5pbWF0aW9uIixrbz0iYW5pbWF0aW9uZW5kIjtibyYmKHZvaWQgMD09PXdpbmRvdy5vbnRyYW5zaXRpb25lbmQmJnZvaWQgMCE9PXdpbmRvdy5vbndlYmtpdHRyYW5zaXRpb25lbmQmJihDbz0iV2Via2l0VHJhbnNpdGlvbiIseG89IndlYmtpdFRyYW5zaXRpb25FbmQiKSx2b2lkIDA9PT13aW5kb3cub25hbmltYXRpb25lbmQmJnZvaWQgMCE9PXdpbmRvdy5vbndlYmtpdGFuaW1hdGlvbmVuZCYmKE9vPSJXZWJraXRBbmltYXRpb24iLGtvPSJ3ZWJraXRBbmltYXRpb25FbmQiKSk7dmFyIFNvPXE/d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZT93aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLmJpbmQod2luZG93KTpzZXRUaW1lb3V0OmZ1bmN0aW9uKHQpe3JldHVybiB0KCl9O2Z1bmN0aW9uIEFvKHQpe1NvKChmdW5jdGlvbigpe1NvKHQpfSkpfWZ1bmN0aW9uIGpvKHQsZSl7dmFyIG49dC5fdHJhbnNpdGlvbkNsYXNzZXN8fCh0Ll90cmFuc2l0aW9uQ2xhc3Nlcz1bXSk7bi5pbmRleE9mKGUpPDAmJihuLnB1c2goZSksbW8odCxlKSl9ZnVuY3Rpb24gRW8odCxlKXt0Ll90cmFuc2l0aW9uQ2xhc3NlcyYmYih0Ll90cmFuc2l0aW9uQ2xhc3NlcyxlKSxfbyh0LGUpfWZ1bmN0aW9uIFRvKHQsZSxuKXt2YXIgcj1Nbyh0LGUpLG89ci50eXBlLGk9ci50aW1lb3V0LGE9ci5wcm9wQ291bnQ7aWYoIW8pcmV0dXJuIG4oKTt2YXIgcz1vPT09d28/eG86a28sYz0wLHU9ZnVuY3Rpb24oKXt0LnJlbW92ZUV2ZW50TGlzdGVuZXIocyxsKSxuKCl9LGw9ZnVuY3Rpb24oZSl7ZS50YXJnZXQ9PT10JiYrK2M+PWEmJnUoKX07c2V0VGltZW91dCgoZnVuY3Rpb24oKXtjPGEmJnUoKX0pLGkrMSksdC5hZGRFdmVudExpc3RlbmVyKHMsbCl9dmFyIFBvPS9cYih0cmFuc2Zvcm18YWxsKSgsfCQpLztmdW5jdGlvbiBNbyh0LGUpe3ZhciBuLHI9d2luZG93LmdldENvbXB1dGVkU3R5bGUodCksbz0ocltDbysiRGVsYXkiXXx8IiIpLnNwbGl0KCIsICIpLGk9KHJbQ28rIkR1cmF0aW9uIl18fCIiKS5zcGxpdCgiLCAiKSxhPUlvKG8saSkscz0ocltPbysiRGVsYXkiXXx8IiIpLnNwbGl0KCIsICIpLGM9KHJbT28rIkR1cmF0aW9uIl18fCIiKS5zcGxpdCgiLCAiKSx1PUlvKHMsYyksbD0wLGY9MDtyZXR1cm4gZT09PXdvP2E+MCYmKG49d28sbD1hLGY9aS5sZW5ndGgpOmU9PT0kbz91PjAmJihuPSRvLGw9dSxmPWMubGVuZ3RoKTpmPShuPShsPU1hdGgubWF4KGEsdSkpPjA/YT51P3dvOiRvOm51bGwpP249PT13bz9pLmxlbmd0aDpjLmxlbmd0aDowLHt0eXBlOm4sdGltZW91dDpsLHByb3BDb3VudDpmLGhhc1RyYW5zZm9ybTpuPT09d28mJlBvLnRlc3QocltDbysiUHJvcGVydHkiXSl9fWZ1bmN0aW9uIElvKHQsZSl7Zm9yKDt0Lmxlbmd0aDxlLmxlbmd0aDspdD10LmNvbmNhdCh0KTtyZXR1cm4gTWF0aC5tYXguYXBwbHkobnVsbCxlLm1hcCgoZnVuY3Rpb24oZSxuKXtyZXR1cm4gRG8oZSkrRG8odFtuXSl9KSkpfWZ1bmN0aW9uIERvKHQpe3JldHVybiAxZTMqTnVtYmVyKHQuc2xpY2UoMCwtMSkucmVwbGFjZSgiLCIsIi4iKSl9ZnVuY3Rpb24gTm8odCxlKXt2YXIgbj10LmVsbTthKG4uX2xlYXZlQ2IpJiYobi5fbGVhdmVDYi5jYW5jZWxsZWQ9ITAsbi5fbGVhdmVDYigpKTt2YXIgcj15byh0LmRhdGEudHJhbnNpdGlvbik7aWYoIWkocikmJiFhKG4uX2VudGVyQ2IpJiYxPT09bi5ub2RlVHlwZSl7Zm9yKHZhciBvPXIuY3NzLHM9ci50eXBlLGM9ci5lbnRlckNsYXNzLGY9ci5lbnRlclRvQ2xhc3MscD1yLmVudGVyQWN0aXZlQ2xhc3MsZD1yLmFwcGVhckNsYXNzLHY9ci5hcHBlYXJUb0NsYXNzLGg9ci5hcHBlYXJBY3RpdmVDbGFzcyxtPXIuYmVmb3JlRW50ZXIseT1yLmVudGVyLGc9ci5hZnRlckVudGVyLGI9ci5lbnRlckNhbmNlbGxlZCx3PXIuYmVmb3JlQXBwZWFyLCQ9ci5hcHBlYXIsQz1yLmFmdGVyQXBwZWFyLHg9ci5hcHBlYXJDYW5jZWxsZWQsTz1yLmR1cmF0aW9uLGs9WmUsUz1aZS4kdm5vZGU7UyYmUy5wYXJlbnQ7KWs9Uy5jb250ZXh0LFM9Uy5wYXJlbnQ7dmFyIEE9IWsuX2lzTW91bnRlZHx8IXQuaXNSb290SW5zZXJ0O2lmKCFBfHwkfHwiIj09PSQpe3ZhciBqPUEmJmQ/ZDpjLEU9QSYmaD9oOnAsVD1BJiZ2P3Y6ZixQPUEmJnd8fG0sTT1BJiZ1KCQpPyQ6eSxJPUEmJkN8fGcsRD1BJiZ4fHxiLE49XyhsKE8pP08uZW50ZXI6TyksTD0hMSE9PW8mJiFYLFI9Um8oTSksVj1uLl9lbnRlckNiPUYoKGZ1bmN0aW9uKCl7TCYmKEVvKG4sVCksRW8obixFKSksVi5jYW5jZWxsZWQ/KEwmJkVvKG4saiksRCYmRChuKSk6SSYmSShuKSxuLl9lbnRlckNiPW51bGx9KSk7dC5kYXRhLnNob3d8fHp0KHQsImluc2VydCIsKGZ1bmN0aW9uKCl7dmFyIGU9bi5wYXJlbnROb2RlLHI9ZSYmZS5fcGVuZGluZyYmZS5fcGVuZGluZ1t0LmtleV07ciYmci50YWc9PT10LnRhZyYmci5lbG0uX2xlYXZlQ2ImJnIuZWxtLl9sZWF2ZUNiKCksTSYmTShuLFYpfSkpLFAmJlAobiksTCYmKGpvKG4saiksam8obixFKSxBbygoZnVuY3Rpb24oKXtFbyhuLGopLFYuY2FuY2VsbGVkfHwoam8obixUKSxSfHwoRm8oTik/c2V0VGltZW91dChWLE4pOlRvKG4scyxWKSkpfSkpKSx0LmRhdGEuc2hvdyYmKGUmJmUoKSxNJiZNKG4sVikpLEx8fFJ8fFYoKX19fWZ1bmN0aW9uIExvKHQsZSl7dmFyIG49dC5lbG07YShuLl9lbnRlckNiKSYmKG4uX2VudGVyQ2IuY2FuY2VsbGVkPSEwLG4uX2VudGVyQ2IoKSk7dmFyIHI9eW8odC5kYXRhLnRyYW5zaXRpb24pO2lmKGkocil8fDEhPT1uLm5vZGVUeXBlKXJldHVybiBlKCk7aWYoIWEobi5fbGVhdmVDYikpe3ZhciBvPXIuY3NzLHM9ci50eXBlLGM9ci5sZWF2ZUNsYXNzLHU9ci5sZWF2ZVRvQ2xhc3MsZj1yLmxlYXZlQWN0aXZlQ2xhc3MscD1yLmJlZm9yZUxlYXZlLGQ9ci5sZWF2ZSx2PXIuYWZ0ZXJMZWF2ZSxoPXIubGVhdmVDYW5jZWxsZWQsbT1yLmRlbGF5TGVhdmUseT1yLmR1cmF0aW9uLGc9ITEhPT1vJiYhWCxiPVJvKGQpLHc9XyhsKHkpP3kubGVhdmU6eSksJD1uLl9sZWF2ZUNiPUYoKGZ1bmN0aW9uKCl7bi5wYXJlbnROb2RlJiZuLnBhcmVudE5vZGUuX3BlbmRpbmcmJihuLnBhcmVudE5vZGUuX3BlbmRpbmdbdC5rZXldPW51bGwpLGcmJihFbyhuLHUpLEVvKG4sZikpLCQuY2FuY2VsbGVkPyhnJiZFbyhuLGMpLGgmJmgobikpOihlKCksdiYmdihuKSksbi5fbGVhdmVDYj1udWxsfSkpO20/bShDKTpDKCl9ZnVuY3Rpb24gQygpeyQuY2FuY2VsbGVkfHwoIXQuZGF0YS5zaG93JiZuLnBhcmVudE5vZGUmJigobi5wYXJlbnROb2RlLl9wZW5kaW5nfHwobi5wYXJlbnROb2RlLl9wZW5kaW5nPXt9KSlbdC5rZXldPXQpLHAmJnAobiksZyYmKGpvKG4sYyksam8obixmKSxBbygoZnVuY3Rpb24oKXtFbyhuLGMpLCQuY2FuY2VsbGVkfHwoam8obix1KSxifHwoRm8odyk/c2V0VGltZW91dCgkLHcpOlRvKG4scywkKSkpfSkpKSxkJiZkKG4sJCksZ3x8Ynx8JCgpKX19ZnVuY3Rpb24gRm8odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiYhaXNOYU4odCl9ZnVuY3Rpb24gUm8odCl7aWYoaSh0KSlyZXR1cm4hMTt2YXIgZT10LmZucztyZXR1cm4gYShlKT9SbyhBcnJheS5pc0FycmF5KGUpP2VbMF06ZSk6KHQuX2xlbmd0aHx8dC5sZW5ndGgpPjF9ZnVuY3Rpb24gVm8odCxlKXshMCE9PWUuZGF0YS5zaG93JiZObyhlKX12YXIgSG89ZnVuY3Rpb24odCl7dmFyIGUsbixyPXt9LHU9dC5tb2R1bGVzLGw9dC5ub2RlT3BzO2ZvcihlPTA7ZTxFci5sZW5ndGg7KytlKWZvcihyW0VyW2VdXT1bXSxuPTA7bjx1Lmxlbmd0aDsrK24pYSh1W25dW0VyW2VdXSkmJnJbRXJbZV1dLnB1c2godVtuXVtFcltlXV0pO2Z1bmN0aW9uIGYodCl7dmFyIGU9bC5wYXJlbnROb2RlKHQpO2EoZSkmJmwucmVtb3ZlQ2hpbGQoZSx0KX1mdW5jdGlvbiBwKHQsZSxuLHIsbyxpLGMpe2lmKGEodC5lbG0pJiZhKGkpJiYodD1pW2NdPWh0KHQpKSx0LmlzUm9vdEluc2VydD0hbywhZnVuY3Rpb24odCxlLG4scil7dmFyIG89dC5kYXRhO2lmKGEobykpe3ZhciBpPWEodC5jb21wb25lbnRJbnN0YW5jZSkmJm8ua2VlcEFsaXZlO2lmKGEobz1vLmhvb2spJiZhKG89by5pbml0KSYmbyh0LCExKSxhKHQuY29tcG9uZW50SW5zdGFuY2UpKXJldHVybiBkKHQsZSksaChuLHQuZWxtLHIpLHMoaSkmJnYodCxlLG4sciksITB9fSh0LGUsbixyKSl7dmFyIHU9dC5kYXRhLGY9dC5jaGlsZHJlbixwPXQudGFnO2EocCk/KHQuZWxtPXQubnM/bC5jcmVhdGVFbGVtZW50TlModC5ucyxwKTpsLmNyZWF0ZUVsZW1lbnQocCx0KSxiKHQpLG0odCxmLGUpLGEodSkmJmcodCxlKSxoKG4sdC5lbG0scikpOnModC5pc0NvbW1lbnQpPyh0LmVsbT1sLmNyZWF0ZUNvbW1lbnQodC50ZXh0KSxoKG4sdC5lbG0scikpOih0LmVsbT1sLmNyZWF0ZVRleHROb2RlKHQudGV4dCksaChuLHQuZWxtLHIpKX19ZnVuY3Rpb24gZCh0LGUpe2EodC5kYXRhLnBlbmRpbmdJbnNlcnQpJiYoZS5wdXNoLmFwcGx5KGUsdC5kYXRhLnBlbmRpbmdJbnNlcnQpLHQuZGF0YS5wZW5kaW5nSW5zZXJ0PW51bGwpLHQuZWxtPXQuY29tcG9uZW50SW5zdGFuY2UuJGVsLF8odCk/KGcodCxlKSxiKHQpKTooU3IodCksZS5wdXNoKHQpKX1mdW5jdGlvbiB2KHQsZSxuLG8pe2Zvcih2YXIgaSxzPXQ7cy5jb21wb25lbnRJbnN0YW5jZTspaWYoYShpPShzPXMuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlKS5kYXRhKSYmYShpPWkudHJhbnNpdGlvbikpe2ZvcihpPTA7aTxyLmFjdGl2YXRlLmxlbmd0aDsrK2kpci5hY3RpdmF0ZVtpXShqcixzKTtlLnB1c2gocyk7YnJlYWt9aChuLHQuZWxtLG8pfWZ1bmN0aW9uIGgodCxlLG4pe2EodCkmJihhKG4pP2wucGFyZW50Tm9kZShuKT09PXQmJmwuaW5zZXJ0QmVmb3JlKHQsZSxuKTpsLmFwcGVuZENoaWxkKHQsZSkpfWZ1bmN0aW9uIG0odCxlLG4pe2lmKG8oZSkpZm9yKHZhciByPTA7cjxlLmxlbmd0aDsrK3IpcChlW3JdLG4sdC5lbG0sbnVsbCwhMCxlLHIpO2Vsc2UgYyh0LnRleHQpJiZsLmFwcGVuZENoaWxkKHQuZWxtLGwuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKHQudGV4dCkpKX1mdW5jdGlvbiBfKHQpe2Zvcig7dC5jb21wb25lbnRJbnN0YW5jZTspdD10LmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtyZXR1cm4gYSh0LnRhZyl9ZnVuY3Rpb24gZyh0LG4pe2Zvcih2YXIgbz0wO288ci5jcmVhdGUubGVuZ3RoOysrbylyLmNyZWF0ZVtvXShqcix0KTthKGU9dC5kYXRhLmhvb2spJiYoYShlLmNyZWF0ZSkmJmUuY3JlYXRlKGpyLHQpLGEoZS5pbnNlcnQpJiZuLnB1c2godCkpfWZ1bmN0aW9uIGIodCl7dmFyIGU7aWYoYShlPXQuZm5TY29wZUlkKSlsLnNldFN0eWxlU2NvcGUodC5lbG0sZSk7ZWxzZSBmb3IodmFyIG49dDtuOylhKGU9bi5jb250ZXh0KSYmYShlPWUuJG9wdGlvbnMuX3Njb3BlSWQpJiZsLnNldFN0eWxlU2NvcGUodC5lbG0sZSksbj1uLnBhcmVudDthKGU9WmUpJiZlIT09dC5jb250ZXh0JiZlIT09dC5mbkNvbnRleHQmJmEoZT1lLiRvcHRpb25zLl9zY29wZUlkKSYmbC5zZXRTdHlsZVNjb3BlKHQuZWxtLGUpfWZ1bmN0aW9uIHcodCxlLG4scixvLGkpe2Zvcig7cjw9bzsrK3IpcChuW3JdLGksdCxlLCExLG4scil9ZnVuY3Rpb24gJCh0KXt2YXIgZSxuLG89dC5kYXRhO2lmKGEobykpZm9yKGEoZT1vLmhvb2spJiZhKGU9ZS5kZXN0cm95KSYmZSh0KSxlPTA7ZTxyLmRlc3Ryb3kubGVuZ3RoOysrZSlyLmRlc3Ryb3lbZV0odCk7aWYoYShlPXQuY2hpbGRyZW4pKWZvcihuPTA7bjx0LmNoaWxkcmVuLmxlbmd0aDsrK24pJCh0LmNoaWxkcmVuW25dKX1mdW5jdGlvbiBDKHQsZSxuKXtmb3IoO2U8PW47KytlKXt2YXIgcj10W2VdO2EocikmJihhKHIudGFnKT8oeChyKSwkKHIpKTpmKHIuZWxtKSl9fWZ1bmN0aW9uIHgodCxlKXtpZihhKGUpfHxhKHQuZGF0YSkpe3ZhciBuLG89ci5yZW1vdmUubGVuZ3RoKzE7Zm9yKGEoZSk/ZS5saXN0ZW5lcnMrPW86ZT1mdW5jdGlvbih0LGUpe2Z1bmN0aW9uIG4oKXswPT0tLW4ubGlzdGVuZXJzJiZmKHQpfXJldHVybiBuLmxpc3RlbmVycz1lLG59KHQuZWxtLG8pLGEobj10LmNvbXBvbmVudEluc3RhbmNlKSYmYShuPW4uX3Zub2RlKSYmYShuLmRhdGEpJiZ4KG4sZSksbj0wO248ci5yZW1vdmUubGVuZ3RoOysrbilyLnJlbW92ZVtuXSh0LGUpO2Eobj10LmRhdGEuaG9vaykmJmEobj1uLnJlbW92ZSk/bih0LGUpOmUoKX1lbHNlIGYodC5lbG0pfWZ1bmN0aW9uIE8odCxlLG4scixvKXtmb3IodmFyIHMsYyx1LGY9MCxkPTAsdj1lLmxlbmd0aC0xLGg9ZVswXSxtPWVbdl0sXz1uLmxlbmd0aC0xLHk9blswXSxnPW5bX10sYj0hbztmPD12JiZkPD1fOylpKGgpP2g9ZVsrK2ZdOmkobSk/bT1lWy0tdl06VHIoaCx5KT8oUyhoLHkscixuLGQpLGg9ZVsrK2ZdLHk9blsrK2RdKTpUcihtLGcpPyhTKG0sZyxyLG4sXyksbT1lWy0tdl0sZz1uWy0tX10pOlRyKGgsZyk/KFMoaCxnLHIsbixfKSxiJiZsLmluc2VydEJlZm9yZSh0LGguZWxtLGwubmV4dFNpYmxpbmcobS5lbG0pKSxoPWVbKytmXSxnPW5bLS1fXSk6VHIobSx5KT8oUyhtLHkscixuLGQpLGImJmwuaW5zZXJ0QmVmb3JlKHQsbS5lbG0saC5lbG0pLG09ZVstLXZdLHk9blsrK2RdKTooaShzKSYmKHM9UHIoZSxmLHYpKSxpKGM9YSh5LmtleSk/c1t5LmtleV06ayh5LGUsZix2KSk/cCh5LHIsdCxoLmVsbSwhMSxuLGQpOlRyKHU9ZVtjXSx5KT8oUyh1LHkscixuLGQpLGVbY109dm9pZCAwLGImJmwuaW5zZXJ0QmVmb3JlKHQsdS5lbG0saC5lbG0pKTpwKHkscix0LGguZWxtLCExLG4sZCkseT1uWysrZF0pO2Y+dj93KHQsaShuW18rMV0pP251bGw6bltfKzFdLmVsbSxuLGQsXyxyKTpkPl8mJkMoZSxmLHYpfWZ1bmN0aW9uIGsodCxlLG4scil7Zm9yKHZhciBvPW47bzxyO28rKyl7dmFyIGk9ZVtvXTtpZihhKGkpJiZUcih0LGkpKXJldHVybiBvfX1mdW5jdGlvbiBTKHQsZSxuLG8sYyx1KXtpZih0IT09ZSl7YShlLmVsbSkmJmEobykmJihlPW9bY109aHQoZSkpO3ZhciBmPWUuZWxtPXQuZWxtO2lmKHModC5pc0FzeW5jUGxhY2Vob2xkZXIpKWEoZS5hc3luY0ZhY3RvcnkucmVzb2x2ZWQpP0UodC5lbG0sZSxuKTplLmlzQXN5bmNQbGFjZWhvbGRlcj0hMDtlbHNlIGlmKHMoZS5pc1N0YXRpYykmJnModC5pc1N0YXRpYykmJmUua2V5PT09dC5rZXkmJihzKGUuaXNDbG9uZWQpfHxzKGUuaXNPbmNlKSkpZS5jb21wb25lbnRJbnN0YW5jZT10LmNvbXBvbmVudEluc3RhbmNlO2Vsc2V7dmFyIHAsZD1lLmRhdGE7YShkKSYmYShwPWQuaG9vaykmJmEocD1wLnByZXBhdGNoKSYmcCh0LGUpO3ZhciB2PXQuY2hpbGRyZW4saD1lLmNoaWxkcmVuO2lmKGEoZCkmJl8oZSkpe2ZvcihwPTA7cDxyLnVwZGF0ZS5sZW5ndGg7KytwKXIudXBkYXRlW3BdKHQsZSk7YShwPWQuaG9vaykmJmEocD1wLnVwZGF0ZSkmJnAodCxlKX1pKGUudGV4dCk/YSh2KSYmYShoKT92IT09aCYmTyhmLHYsaCxuLHUpOmEoaCk/KGEodC50ZXh0KSYmbC5zZXRUZXh0Q29udGVudChmLCIiKSx3KGYsbnVsbCxoLDAsaC5sZW5ndGgtMSxuKSk6YSh2KT9DKHYsMCx2Lmxlbmd0aC0xKTphKHQudGV4dCkmJmwuc2V0VGV4dENvbnRlbnQoZiwiIik6dC50ZXh0IT09ZS50ZXh0JiZsLnNldFRleHRDb250ZW50KGYsZS50ZXh0KSxhKGQpJiZhKHA9ZC5ob29rKSYmYShwPXAucG9zdHBhdGNoKSYmcCh0LGUpfX19ZnVuY3Rpb24gQSh0LGUsbil7aWYocyhuKSYmYSh0LnBhcmVudCkpdC5wYXJlbnQuZGF0YS5wZW5kaW5nSW5zZXJ0PWU7ZWxzZSBmb3IodmFyIHI9MDtyPGUubGVuZ3RoOysrcillW3JdLmRhdGEuaG9vay5pbnNlcnQoZVtyXSl9dmFyIGo9eSgiYXR0cnMsY2xhc3Msc3RhdGljQ2xhc3Msc3RhdGljU3R5bGUsa2V5Iik7ZnVuY3Rpb24gRSh0LGUsbixyKXt2YXIgbyxpPWUudGFnLGM9ZS5kYXRhLHU9ZS5jaGlsZHJlbjtpZihyPXJ8fGMmJmMucHJlLGUuZWxtPXQscyhlLmlzQ29tbWVudCkmJmEoZS5hc3luY0ZhY3RvcnkpKXJldHVybiBlLmlzQXN5bmNQbGFjZWhvbGRlcj0hMCwhMDtpZihhKGMpJiYoYShvPWMuaG9vaykmJmEobz1vLmluaXQpJiZvKGUsITApLGEobz1lLmNvbXBvbmVudEluc3RhbmNlKSkpcmV0dXJuIGQoZSxuKSwhMDtpZihhKGkpKXtpZihhKHUpKWlmKHQuaGFzQ2hpbGROb2RlcygpKWlmKGEobz1jKSYmYShvPW8uZG9tUHJvcHMpJiZhKG89by5pbm5lckhUTUwpKXtpZihvIT09dC5pbm5lckhUTUwpcmV0dXJuITF9ZWxzZXtmb3IodmFyIGw9ITAsZj10LmZpcnN0Q2hpbGQscD0wO3A8dS5sZW5ndGg7cCsrKXtpZighZnx8IUUoZix1W3BdLG4scikpe2w9ITE7YnJlYWt9Zj1mLm5leHRTaWJsaW5nfWlmKCFsfHxmKXJldHVybiExfWVsc2UgbShlLHUsbik7aWYoYShjKSl7dmFyIHY9ITE7Zm9yKHZhciBoIGluIGMpaWYoIWooaCkpe3Y9ITAsZyhlLG4pO2JyZWFrfSF2JiZjLmNsYXNzJiZVZShjLmNsYXNzKX19ZWxzZSB0LmRhdGEhPT1lLnRleHQmJih0LmRhdGE9ZS50ZXh0KTtyZXR1cm4hMH1yZXR1cm4gZnVuY3Rpb24odCxlLG4sbyl7aWYoIWkoZSkpe3ZhciBjPSExLHU9W107aWYoaSh0KSljPSEwLHAoZSx1KTtlbHNle3ZhciBmPWEodC5ub2RlVHlwZSk7aWYoIWYmJlRyKHQsZSkpUyh0LGUsdSxudWxsLG51bGwsbyk7ZWxzZXtpZihmKXtpZigxPT09dC5ub2RlVHlwZSYmdC5oYXNBdHRyaWJ1dGUoVikmJih0LnJlbW92ZUF0dHJpYnV0ZShWKSxuPSEwKSxzKG4pJiZFKHQsZSx1KSlyZXR1cm4gQShlLHUsITApLHQ7dD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHB0KGwudGFnTmFtZSh0KS50b0xvd2VyQ2FzZSgpLHt9LFtdLHZvaWQgMCx0KX0odCl9dmFyIGQ9dC5lbG0sdj1sLnBhcmVudE5vZGUoZCk7aWYocChlLHUsZC5fbGVhdmVDYj9udWxsOnYsbC5uZXh0U2libGluZyhkKSksYShlLnBhcmVudCkpZm9yKHZhciBoPWUucGFyZW50LG09XyhlKTtoOyl7Zm9yKHZhciB5PTA7eTxyLmRlc3Ryb3kubGVuZ3RoOysreSlyLmRlc3Ryb3lbeV0oaCk7aWYoaC5lbG09ZS5lbG0sbSl7Zm9yKHZhciBnPTA7ZzxyLmNyZWF0ZS5sZW5ndGg7KytnKXIuY3JlYXRlW2ddKGpyLGgpO3ZhciBiPWguZGF0YS5ob29rLmluc2VydDtpZihiLm1lcmdlZClmb3IodmFyIHc9Yi5mbnMuc2xpY2UoMSkseD0wO3g8dy5sZW5ndGg7eCsrKXdbeF0oKX1lbHNlIFNyKGgpO2g9aC5wYXJlbnR9YSh2KT9DKFt0XSwwLDApOmEodC50YWcpJiYkKHQpfX1yZXR1cm4gQShlLHUsYyksZS5lbG19YSh0KSYmJCh0KX19KHtub2RlT3BzOk9yLG1vZHVsZXM6W0JyLEtyLFlyLG5vLHZvLHE/e2NyZWF0ZTpWbyxhY3RpdmF0ZTpWbyxyZW1vdmU6ZnVuY3Rpb24odCxlKXshMCE9PXQuZGF0YS5zaG93P0xvKHQsZSk6ZSgpfX06e31dLmNvbmNhdChScil9KTtYJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzZWxlY3Rpb25jaGFuZ2UiLChmdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dCYmdC52bW9kZWwmJkpvKHQsImlucHV0Iil9KSk7dmFyIFVvPXtpbnNlcnRlZDpmdW5jdGlvbih0LGUsbixyKXsic2VsZWN0Ij09PW4udGFnPyhyLmVsbSYmIXIuZWxtLl92T3B0aW9ucz96dChuLCJwb3N0cGF0Y2giLChmdW5jdGlvbigpe1VvLmNvbXBvbmVudFVwZGF0ZWQodCxlLG4pfSkpOkJvKHQsZSxuLmNvbnRleHQpLHQuX3ZPcHRpb25zPVtdLm1hcC5jYWxsKHQub3B0aW9ucyxLbykpOigidGV4dGFyZWEiPT09bi50YWd8fHhyKHQudHlwZSkpJiYodC5fdk1vZGlmaWVycz1lLm1vZGlmaWVycyxlLm1vZGlmaWVycy5sYXp5fHwodC5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbnN0YXJ0IixXbyksdC5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIscW8pLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixxbyksWCYmKHQudm1vZGVsPSEwKSkpfSxjb21wb25lbnRVcGRhdGVkOmZ1bmN0aW9uKHQsZSxuKXtpZigic2VsZWN0Ij09PW4udGFnKXtCbyh0LGUsbi5jb250ZXh0KTt2YXIgcj10Ll92T3B0aW9ucyxvPXQuX3ZPcHRpb25zPVtdLm1hcC5jYWxsKHQub3B0aW9ucyxLbyk7aWYoby5zb21lKChmdW5jdGlvbih0LGUpe3JldHVybiFOKHQscltlXSl9KSkpKHQubXVsdGlwbGU/ZS52YWx1ZS5zb21lKChmdW5jdGlvbih0KXtyZXR1cm4gem8odCxvKX0pKTplLnZhbHVlIT09ZS5vbGRWYWx1ZSYmem8oZS52YWx1ZSxvKSkmJkpvKHQsImNoYW5nZSIpfX19O2Z1bmN0aW9uIEJvKHQsZSxuKXtHbyh0LGUsbiksKFp8fFEpJiZzZXRUaW1lb3V0KChmdW5jdGlvbigpe0dvKHQsZSxuKX0pLDApfWZ1bmN0aW9uIEdvKHQsZSxuKXt2YXIgcj1lLnZhbHVlLG89dC5tdWx0aXBsZTtpZighb3x8QXJyYXkuaXNBcnJheShyKSl7Zm9yKHZhciBpLGEscz0wLGM9dC5vcHRpb25zLmxlbmd0aDtzPGM7cysrKWlmKGE9dC5vcHRpb25zW3NdLG8paT1MKHIsS28oYSkpPi0xLGEuc2VsZWN0ZWQhPT1pJiYoYS5zZWxlY3RlZD1pKTtlbHNlIGlmKE4oS28oYSkscikpcmV0dXJuIHZvaWQodC5zZWxlY3RlZEluZGV4IT09cyYmKHQuc2VsZWN0ZWRJbmRleD1zKSk7b3x8KHQuc2VsZWN0ZWRJbmRleD0tMSl9fWZ1bmN0aW9uIHpvKHQsZSl7cmV0dXJuIGUuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiFOKGUsdCl9KSl9ZnVuY3Rpb24gS28odCl7cmV0dXJuIl92YWx1ZSJpbiB0P3QuX3ZhbHVlOnQudmFsdWV9ZnVuY3Rpb24gV28odCl7dC50YXJnZXQuY29tcG9zaW5nPSEwfWZ1bmN0aW9uIHFvKHQpe3QudGFyZ2V0LmNvbXBvc2luZyYmKHQudGFyZ2V0LmNvbXBvc2luZz0hMSxKbyh0LnRhcmdldCwiaW5wdXQiKSl9ZnVuY3Rpb24gSm8odCxlKXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFdmVudCgiSFRNTEV2ZW50cyIpO24uaW5pdEV2ZW50KGUsITAsITApLHQuZGlzcGF0Y2hFdmVudChuKX1mdW5jdGlvbiBabyh0KXtyZXR1cm4hdC5jb21wb25lbnRJbnN0YW5jZXx8dC5kYXRhJiZ0LmRhdGEudHJhbnNpdGlvbj90OlpvKHQuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlKX12YXIgWG89e21vZGVsOlVvLHNob3c6e2JpbmQ6ZnVuY3Rpb24odCxlLG4pe3ZhciByPWUudmFsdWUsbz0obj1abyhuKSkuZGF0YSYmbi5kYXRhLnRyYW5zaXRpb24saT10Ll9fdk9yaWdpbmFsRGlzcGxheT0ibm9uZSI9PT10LnN0eWxlLmRpc3BsYXk/IiI6dC5zdHlsZS5kaXNwbGF5O3ImJm8/KG4uZGF0YS5zaG93PSEwLE5vKG4sKGZ1bmN0aW9uKCl7dC5zdHlsZS5kaXNwbGF5PWl9KSkpOnQuc3R5bGUuZGlzcGxheT1yP2k6Im5vbmUifSx1cGRhdGU6ZnVuY3Rpb24odCxlLG4pe3ZhciByPWUudmFsdWU7IXIhPSFlLm9sZFZhbHVlJiYoKG49Wm8obikpLmRhdGEmJm4uZGF0YS50cmFuc2l0aW9uPyhuLmRhdGEuc2hvdz0hMCxyP05vKG4sKGZ1bmN0aW9uKCl7dC5zdHlsZS5kaXNwbGF5PXQuX192T3JpZ2luYWxEaXNwbGF5fSkpOkxvKG4sKGZ1bmN0aW9uKCl7dC5zdHlsZS5kaXNwbGF5PSJub25lIn0pKSk6dC5zdHlsZS5kaXNwbGF5PXI/dC5fX3ZPcmlnaW5hbERpc3BsYXk6Im5vbmUiKX0sdW5iaW5kOmZ1bmN0aW9uKHQsZSxuLHIsbyl7b3x8KHQuc3R5bGUuZGlzcGxheT10Ll9fdk9yaWdpbmFsRGlzcGxheSl9fX0sUW89e25hbWU6U3RyaW5nLGFwcGVhcjpCb29sZWFuLGNzczpCb29sZWFuLG1vZGU6U3RyaW5nLHR5cGU6U3RyaW5nLGVudGVyQ2xhc3M6U3RyaW5nLGxlYXZlQ2xhc3M6U3RyaW5nLGVudGVyVG9DbGFzczpTdHJpbmcsbGVhdmVUb0NsYXNzOlN0cmluZyxlbnRlckFjdGl2ZUNsYXNzOlN0cmluZyxsZWF2ZUFjdGl2ZUNsYXNzOlN0cmluZyxhcHBlYXJDbGFzczpTdHJpbmcsYXBwZWFyQWN0aXZlQ2xhc3M6U3RyaW5nLGFwcGVhclRvQ2xhc3M6U3RyaW5nLGR1cmF0aW9uOltOdW1iZXIsU3RyaW5nLE9iamVjdF19O2Z1bmN0aW9uIFlvKHQpe3ZhciBlPXQmJnQuY29tcG9uZW50T3B0aW9ucztyZXR1cm4gZSYmZS5DdG9yLm9wdGlvbnMuYWJzdHJhY3Q/WW8oJGUoZS5jaGlsZHJlbikpOnR9ZnVuY3Rpb24gdGkodCl7dmFyIGU9e30sbj10LiRvcHRpb25zO2Zvcih2YXIgciBpbiBuLnByb3BzRGF0YSllW3JdPXRbcl07dmFyIG89bi5fcGFyZW50TGlzdGVuZXJzO2Zvcih2YXIgciBpbiBvKWVbTyhyKV09b1tyXTtyZXR1cm4gZX1mdW5jdGlvbiBlaSh0LGUpe2lmKC9cZC1rZWVwLWFsaXZlJC8udGVzdChlLnRhZykpcmV0dXJuIHQoImtlZXAtYWxpdmUiLHtwcm9wczplLmNvbXBvbmVudE9wdGlvbnMucHJvcHNEYXRhfSl9dmFyIG5pPWZ1bmN0aW9uKHQpe3JldHVybiB0LnRhZ3x8cGUodCl9LHJpPWZ1bmN0aW9uKHQpe3JldHVybiJzaG93Ij09PXQubmFtZX0sb2k9e25hbWU6InRyYW5zaXRpb24iLHByb3BzOlFvLGFic3RyYWN0OiEwLHJlbmRlcjpmdW5jdGlvbih0KXt2YXIgZT10aGlzLG49dGhpcy4kc2xvdHMuZGVmYXVsdDtpZihuJiYobj1uLmZpbHRlcihuaSkpLmxlbmd0aCl7dmFyIHI9dGhpcy5tb2RlLG89blswXTtpZihmdW5jdGlvbih0KXtmb3IoO3Q9dC5wYXJlbnQ7KWlmKHQuZGF0YS50cmFuc2l0aW9uKXJldHVybiEwfSh0aGlzLiR2bm9kZSkpcmV0dXJuIG87dmFyIGk9WW8obyk7aWYoIWkpcmV0dXJuIG87aWYodGhpcy5fbGVhdmluZylyZXR1cm4gZWkodCxvKTt2YXIgYT0iX190cmFuc2l0aW9uLSIuY29uY2F0KHRoaXMuX3VpZCwiLSIpO2kua2V5PW51bGw9PWkua2V5P2kuaXNDb21tZW50P2ErImNvbW1lbnQiOmEraS50YWc6YyhpLmtleSk/MD09PVN0cmluZyhpLmtleSkuaW5kZXhPZihhKT9pLmtleTphK2kua2V5Omkua2V5O3ZhciBzPShpLmRhdGF8fChpLmRhdGE9e30pKS50cmFuc2l0aW9uPXRpKHRoaXMpLHU9dGhpcy5fdm5vZGUsbD1Zbyh1KTtpZihpLmRhdGEuZGlyZWN0aXZlcyYmaS5kYXRhLmRpcmVjdGl2ZXMuc29tZShyaSkmJihpLmRhdGEuc2hvdz0hMCksbCYmbC5kYXRhJiYhZnVuY3Rpb24odCxlKXtyZXR1cm4gZS5rZXk9PT10LmtleSYmZS50YWc9PT10LnRhZ30oaSxsKSYmIXBlKGwpJiYoIWwuY29tcG9uZW50SW5zdGFuY2V8fCFsLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZS5pc0NvbW1lbnQpKXt2YXIgZj1sLmRhdGEudHJhbnNpdGlvbj1UKHt9LHMpO2lmKCJvdXQtaW4iPT09cilyZXR1cm4gdGhpcy5fbGVhdmluZz0hMCx6dChmLCJhZnRlckxlYXZlIiwoZnVuY3Rpb24oKXtlLl9sZWF2aW5nPSExLGUuJGZvcmNlVXBkYXRlKCl9KSksZWkodCxvKTtpZigiaW4tb3V0Ij09PXIpe2lmKHBlKGkpKXJldHVybiB1O3ZhciBwLGQ9ZnVuY3Rpb24oKXtwKCl9O3p0KHMsImFmdGVyRW50ZXIiLGQpLHp0KHMsImVudGVyQ2FuY2VsbGVkIixkKSx6dChmLCJkZWxheUxlYXZlIiwoZnVuY3Rpb24odCl7cD10fSkpfX1yZXR1cm4gb319fSxpaT1UKHt0YWc6U3RyaW5nLG1vdmVDbGFzczpTdHJpbmd9LFFvKTtmdW5jdGlvbiBhaSh0KXt0LmVsbS5fbW92ZUNiJiZ0LmVsbS5fbW92ZUNiKCksdC5lbG0uX2VudGVyQ2ImJnQuZWxtLl9lbnRlckNiKCl9ZnVuY3Rpb24gc2kodCl7dC5kYXRhLm5ld1Bvcz10LmVsbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1mdW5jdGlvbiBjaSh0KXt2YXIgZT10LmRhdGEucG9zLG49dC5kYXRhLm5ld1BvcyxyPWUubGVmdC1uLmxlZnQsbz1lLnRvcC1uLnRvcDtpZihyfHxvKXt0LmRhdGEubW92ZWQ9ITA7dmFyIGk9dC5lbG0uc3R5bGU7aS50cmFuc2Zvcm09aS5XZWJraXRUcmFuc2Zvcm09InRyYW5zbGF0ZSgiLmNvbmNhdChyLCJweCwiKS5jb25jYXQobywicHgpIiksaS50cmFuc2l0aW9uRHVyYXRpb249IjBzIn19ZGVsZXRlIGlpLm1vZGU7dmFyIHVpPXtUcmFuc2l0aW9uOm9pLFRyYW5zaXRpb25Hcm91cDp7cHJvcHM6aWksYmVmb3JlTW91bnQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dGhpcy5fdXBkYXRlO3RoaXMuX3VwZGF0ZT1mdW5jdGlvbihuLHIpe3ZhciBvPVhlKHQpO3QuX19wYXRjaF9fKHQuX3Zub2RlLHQua2VwdCwhMSwhMCksdC5fdm5vZGU9dC5rZXB0LG8oKSxlLmNhbGwodCxuLHIpfX0scmVuZGVyOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnRhZ3x8dGhpcy4kdm5vZGUuZGF0YS50YWd8fCJzcGFuIixuPU9iamVjdC5jcmVhdGUobnVsbCkscj10aGlzLnByZXZDaGlsZHJlbj10aGlzLmNoaWxkcmVuLG89dGhpcy4kc2xvdHMuZGVmYXVsdHx8W10saT10aGlzLmNoaWxkcmVuPVtdLGE9dGkodGhpcykscz0wO3M8by5sZW5ndGg7cysrKXt2YXIgYz1vW3NdO2MudGFnJiZudWxsIT1jLmtleSYmMCE9PVN0cmluZyhjLmtleSkuaW5kZXhPZigiX192bGlzdCIpJiYoaS5wdXNoKGMpLG5bYy5rZXldPWMsKGMuZGF0YXx8KGMuZGF0YT17fSkpLnRyYW5zaXRpb249YSl9aWYocil7dmFyIHU9W10sbD1bXTtmb3Iocz0wO3M8ci5sZW5ndGg7cysrKShjPXJbc10pLmRhdGEudHJhbnNpdGlvbj1hLGMuZGF0YS5wb3M9Yy5lbG0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbltjLmtleV0/dS5wdXNoKGMpOmwucHVzaChjKTt0aGlzLmtlcHQ9dChlLG51bGwsdSksdGhpcy5yZW1vdmVkPWx9cmV0dXJuIHQoZSxudWxsLGkpfSx1cGRhdGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5wcmV2Q2hpbGRyZW4sZT10aGlzLm1vdmVDbGFzc3x8KHRoaXMubmFtZXx8InYiKSsiLW1vdmUiO3QubGVuZ3RoJiZ0aGlzLmhhc01vdmUodFswXS5lbG0sZSkmJih0LmZvckVhY2goYWkpLHQuZm9yRWFjaChzaSksdC5mb3JFYWNoKGNpKSx0aGlzLl9yZWZsb3c9ZG9jdW1lbnQuYm9keS5vZmZzZXRIZWlnaHQsdC5mb3JFYWNoKChmdW5jdGlvbih0KXtpZih0LmRhdGEubW92ZWQpe3ZhciBuPXQuZWxtLHI9bi5zdHlsZTtqbyhuLGUpLHIudHJhbnNmb3JtPXIuV2Via2l0VHJhbnNmb3JtPXIudHJhbnNpdGlvbkR1cmF0aW9uPSIiLG4uYWRkRXZlbnRMaXN0ZW5lcih4byxuLl9tb3ZlQ2I9ZnVuY3Rpb24gdChyKXtyJiZyLnRhcmdldCE9PW58fHImJiEvdHJhbnNmb3JtJC8udGVzdChyLnByb3BlcnR5TmFtZSl8fChuLnJlbW92ZUV2ZW50TGlzdGVuZXIoeG8sdCksbi5fbW92ZUNiPW51bGwsRW8obixlKSl9KX19KSkpfSxtZXRob2RzOntoYXNNb3ZlOmZ1bmN0aW9uKHQsZSl7aWYoIWJvKXJldHVybiExO2lmKHRoaXMuX2hhc01vdmUpcmV0dXJuIHRoaXMuX2hhc01vdmU7dmFyIG49dC5jbG9uZU5vZGUoKTt0Ll90cmFuc2l0aW9uQ2xhc3NlcyYmdC5fdHJhbnNpdGlvbkNsYXNzZXMuZm9yRWFjaCgoZnVuY3Rpb24odCl7X28obix0KX0pKSxtbyhuLGUpLG4uc3R5bGUuZGlzcGxheT0ibm9uZSIsdGhpcy4kZWwuYXBwZW5kQ2hpbGQobik7dmFyIHI9TW8obik7cmV0dXJuIHRoaXMuJGVsLnJlbW92ZUNoaWxkKG4pLHRoaXMuX2hhc01vdmU9ci5oYXNUcmFuc2Zvcm19fX19O1FuLmNvbmZpZy5tdXN0VXNlUHJvcD1mdW5jdGlvbih0LGUsbil7cmV0dXJuInZhbHVlIj09PW4mJnNyKHQpJiYiYnV0dG9uIiE9PWV8fCJzZWxlY3RlZCI9PT1uJiYib3B0aW9uIj09PXR8fCJjaGVja2VkIj09PW4mJiJpbnB1dCI9PT10fHwibXV0ZWQiPT09biYmInZpZGVvIj09PXR9LFFuLmNvbmZpZy5pc1Jlc2VydmVkVGFnPSRyLFFuLmNvbmZpZy5pc1Jlc2VydmVkQXR0cj1hcixRbi5jb25maWcuZ2V0VGFnTmFtZXNwYWNlPWZ1bmN0aW9uKHQpe3JldHVybiB3cih0KT8ic3ZnIjoibWF0aCI9PT10PyJtYXRoIjp2b2lkIDB9LFFuLmNvbmZpZy5pc1Vua25vd25FbGVtZW50PWZ1bmN0aW9uKHQpe2lmKCFxKXJldHVybiEwO2lmKCRyKHQpKXJldHVybiExO2lmKHQ9dC50b0xvd2VyQ2FzZSgpLG51bGwhPUNyW3RdKXJldHVybiBDclt0XTt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KHQpO3JldHVybiB0LmluZGV4T2YoIi0iKT4tMT9Dclt0XT1lLmNvbnN0cnVjdG9yPT09d2luZG93LkhUTUxVbmtub3duRWxlbWVudHx8ZS5jb25zdHJ1Y3Rvcj09PXdpbmRvdy5IVE1MRWxlbWVudDpDclt0XT0vSFRNTFVua25vd25FbGVtZW50Ly50ZXN0KGUudG9TdHJpbmcoKSl9LFQoUW4ub3B0aW9ucy5kaXJlY3RpdmVzLFhvKSxUKFFuLm9wdGlvbnMuY29tcG9uZW50cyx1aSksUW4ucHJvdG90eXBlLl9fcGF0Y2hfXz1xP0hvOk0sUW4ucHJvdG90eXBlLiRtb3VudD1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbih0LGUsbil7dmFyIHI7dC4kZWw9ZSx0LiRvcHRpb25zLnJlbmRlcnx8KHQuJG9wdGlvbnMucmVuZGVyPWR0KSxlbih0LCJiZWZvcmVNb3VudCIpLHI9ZnVuY3Rpb24oKXt0Ll91cGRhdGUodC5fcmVuZGVyKCksbil9LG5ldyB6ZSh0LHIsTSx7YmVmb3JlOmZ1bmN0aW9uKCl7dC5faXNNb3VudGVkJiYhdC5faXNEZXN0cm95ZWQmJmVuKHQsImJlZm9yZVVwZGF0ZSIpfX0sITApLG49ITE7dmFyIG89dC5fcHJlV2F0Y2hlcnM7aWYobylmb3IodmFyIGk9MDtpPG8ubGVuZ3RoO2krKylvW2ldLnJ1bigpO3JldHVybiBudWxsPT10LiR2bm9kZSYmKHQuX2lzTW91bnRlZD0hMCxlbih0LCJtb3VudGVkIikpLHR9KHRoaXMsdD10JiZxP2Z1bmN0aW9uKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdD9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHQpfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTp0fSh0KTp2b2lkIDAsZSl9LHEmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Qi5kZXZ0b29scyYmYXQmJmF0LmVtaXQoImluaXQiLFFuKX0pLDApfSkuY2FsbCh0aGlzLG4oImM4YmEiKSl9LCIyZjYyIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiOyhmdW5jdGlvbih0KXtuLmQoZSwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIHh9KSksbi5kKGUsImMiLChmdW5jdGlvbigpe3JldHVybiBDfSkpO3ZhciByPSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dm9pZCAwIT09dD90Ont9KS5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO2Z1bmN0aW9uIG8odCl7ciYmKHQuX2RldnRvb2xIb29rPXIsci5lbWl0KCJ2dWV4OmluaXQiLHQpLHIub24oInZ1ZXg6dHJhdmVsLXRvLXN0YXRlIiwoZnVuY3Rpb24oZSl7dC5yZXBsYWNlU3RhdGUoZSl9KSksdC5zdWJzY3JpYmUoKGZ1bmN0aW9uKHQsZSl7ci5lbWl0KCJ2dWV4Om11dGF0aW9uIix0LGUpfSkse3ByZXBlbmQ6ITB9KSx0LnN1YnNjcmliZUFjdGlvbigoZnVuY3Rpb24odCxlKXtyLmVtaXQoInZ1ZXg6YWN0aW9uIix0LGUpfSkse3ByZXBlbmQ6ITB9KSl9ZnVuY3Rpb24gaSh0LGUpe2lmKHZvaWQgMD09PWUmJihlPVtdKSxudWxsPT09dHx8Im9iamVjdCIhPXR5cGVvZiB0KXJldHVybiB0O3ZhciBuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuZmlsdGVyKGUpWzBdfShlLChmdW5jdGlvbihlKXtyZXR1cm4gZS5vcmlnaW5hbD09PXR9KSk7aWYobilyZXR1cm4gbi5jb3B5O3ZhciByPUFycmF5LmlzQXJyYXkodCk/W106e307cmV0dXJuIGUucHVzaCh7b3JpZ2luYWw6dCxjb3B5OnJ9KSxPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtyW25dPWkodFtuXSxlKX0pKSxyfWZ1bmN0aW9uIGEodCxlKXtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtyZXR1cm4gZSh0W25dLG4pfSkpfWZ1bmN0aW9uIHModCl7cmV0dXJuIG51bGwhPT10JiYib2JqZWN0Ij09dHlwZW9mIHR9dmFyIGM9ZnVuY3Rpb24odCxlKXt0aGlzLnJ1bnRpbWU9ZSx0aGlzLl9jaGlsZHJlbj1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuX3Jhd01vZHVsZT10O3ZhciBuPXQuc3RhdGU7dGhpcy5zdGF0ZT0oImZ1bmN0aW9uIj09dHlwZW9mIG4/bigpOm4pfHx7fX0sdT17bmFtZXNwYWNlZDp7Y29uZmlndXJhYmxlOiEwfX07dS5uYW1lc3BhY2VkLmdldD1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5fcmF3TW9kdWxlLm5hbWVzcGFjZWR9LGMucHJvdG90eXBlLmFkZENoaWxkPWZ1bmN0aW9uKHQsZSl7dGhpcy5fY2hpbGRyZW5bdF09ZX0sYy5wcm90b3R5cGUucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24odCl7ZGVsZXRlIHRoaXMuX2NoaWxkcmVuW3RdfSxjLnByb3RvdHlwZS5nZXRDaGlsZD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fY2hpbGRyZW5bdF19LGMucHJvdG90eXBlLmhhc0NoaWxkPWZ1bmN0aW9uKHQpe3JldHVybiB0IGluIHRoaXMuX2NoaWxkcmVufSxjLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCl7dGhpcy5fcmF3TW9kdWxlLm5hbWVzcGFjZWQ9dC5uYW1lc3BhY2VkLHQuYWN0aW9ucyYmKHRoaXMuX3Jhd01vZHVsZS5hY3Rpb25zPXQuYWN0aW9ucyksdC5tdXRhdGlvbnMmJih0aGlzLl9yYXdNb2R1bGUubXV0YXRpb25zPXQubXV0YXRpb25zKSx0LmdldHRlcnMmJih0aGlzLl9yYXdNb2R1bGUuZ2V0dGVycz10LmdldHRlcnMpfSxjLnByb3RvdHlwZS5mb3JFYWNoQ2hpbGQ9ZnVuY3Rpb24odCl7YSh0aGlzLl9jaGlsZHJlbix0KX0sYy5wcm90b3R5cGUuZm9yRWFjaEdldHRlcj1mdW5jdGlvbih0KXt0aGlzLl9yYXdNb2R1bGUuZ2V0dGVycyYmYSh0aGlzLl9yYXdNb2R1bGUuZ2V0dGVycyx0KX0sYy5wcm90b3R5cGUuZm9yRWFjaEFjdGlvbj1mdW5jdGlvbih0KXt0aGlzLl9yYXdNb2R1bGUuYWN0aW9ucyYmYSh0aGlzLl9yYXdNb2R1bGUuYWN0aW9ucyx0KX0sYy5wcm90b3R5cGUuZm9yRWFjaE11dGF0aW9uPWZ1bmN0aW9uKHQpe3RoaXMuX3Jhd01vZHVsZS5tdXRhdGlvbnMmJmEodGhpcy5fcmF3TW9kdWxlLm11dGF0aW9ucyx0KX0sT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoYy5wcm90b3R5cGUsdSk7dmFyIGwsZj1mdW5jdGlvbih0KXt0aGlzLnJlZ2lzdGVyKFtdLHQsITEpfTtmLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVkdWNlKChmdW5jdGlvbih0LGUpe3JldHVybiB0LmdldENoaWxkKGUpfSksdGhpcy5yb290KX0sZi5wcm90b3R5cGUuZ2V0TmFtZXNwYWNlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMucm9vdDtyZXR1cm4gdC5yZWR1Y2UoKGZ1bmN0aW9uKHQsbil7cmV0dXJuIHQrKChlPWUuZ2V0Q2hpbGQobikpLm5hbWVzcGFjZWQ/bisiLyI6IiIpfSksIiIpfSxmLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24odCl7IWZ1bmN0aW9uIHQoZSxuLHIpe2lmKG4udXBkYXRlKHIpLHIubW9kdWxlcylmb3IodmFyIG8gaW4gci5tb2R1bGVzKXtpZighbi5nZXRDaGlsZChvKSlyZXR1cm47dChlLmNvbmNhdChvKSxuLmdldENoaWxkKG8pLHIubW9kdWxlc1tvXSl9fShbXSx0aGlzLnJvb3QsdCl9LGYucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKHQsZSxuKXt2YXIgcj10aGlzO3ZvaWQgMD09PW4mJihuPSEwKTt2YXIgbz1uZXcgYyhlLG4pOzA9PT10Lmxlbmd0aD90aGlzLnJvb3Q9bzp0aGlzLmdldCh0LnNsaWNlKDAsLTEpKS5hZGRDaGlsZCh0W3QubGVuZ3RoLTFdLG8pO2UubW9kdWxlcyYmYShlLm1vZHVsZXMsKGZ1bmN0aW9uKGUsbyl7ci5yZWdpc3Rlcih0LmNvbmNhdChvKSxlLG4pfSkpfSxmLnByb3RvdHlwZS51bnJlZ2lzdGVyPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuZ2V0KHQuc2xpY2UoMCwtMSkpLG49dFt0Lmxlbmd0aC0xXSxyPWUuZ2V0Q2hpbGQobik7ciYmci5ydW50aW1lJiZlLnJlbW92ZUNoaWxkKG4pfSxmLnByb3RvdHlwZS5pc1JlZ2lzdGVyZWQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5nZXQodC5zbGljZSgwLC0xKSksbj10W3QubGVuZ3RoLTFdO3JldHVybiEhZSYmZS5oYXNDaGlsZChuKX07dmFyIHA9ZnVuY3Rpb24odCl7dmFyIGU9dGhpczt2b2lkIDA9PT10JiYodD17fSksIWwmJiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuVnVlJiZiKHdpbmRvdy5WdWUpO3ZhciBuPXQucGx1Z2luczt2b2lkIDA9PT1uJiYobj1bXSk7dmFyIHI9dC5zdHJpY3Q7dm9pZCAwPT09ciYmKHI9ITEpLHRoaXMuX2NvbW1pdHRpbmc9ITEsdGhpcy5fYWN0aW9ucz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuX2FjdGlvblN1YnNjcmliZXJzPVtdLHRoaXMuX211dGF0aW9ucz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuX3dyYXBwZWRHZXR0ZXJzPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5fbW9kdWxlcz1uZXcgZih0KSx0aGlzLl9tb2R1bGVzTmFtZXNwYWNlTWFwPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5fc3Vic2NyaWJlcnM9W10sdGhpcy5fd2F0Y2hlclZNPW5ldyBsLHRoaXMuX21ha2VMb2NhbEdldHRlcnNDYWNoZT1PYmplY3QuY3JlYXRlKG51bGwpO3ZhciBpPXRoaXMsYT10aGlzLmRpc3BhdGNoLHM9dGhpcy5jb21taXQ7dGhpcy5kaXNwYXRjaD1mdW5jdGlvbih0LGUpe3JldHVybiBhLmNhbGwoaSx0LGUpfSx0aGlzLmNvbW1pdD1mdW5jdGlvbih0LGUsbil7cmV0dXJuIHMuY2FsbChpLHQsZSxuKX0sdGhpcy5zdHJpY3Q9cjt2YXIgYz10aGlzLl9tb2R1bGVzLnJvb3Quc3RhdGU7Xyh0aGlzLGMsW10sdGhpcy5fbW9kdWxlcy5yb290KSxtKHRoaXMsYyksbi5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gdChlKX0pKSwodm9pZCAwIT09dC5kZXZ0b29scz90LmRldnRvb2xzOmwuY29uZmlnLmRldnRvb2xzKSYmbyh0aGlzKX0sZD17c3RhdGU6e2NvbmZpZ3VyYWJsZTohMH19O2Z1bmN0aW9uIHYodCxlLG4pe3JldHVybiBlLmluZGV4T2YodCk8MCYmKG4mJm4ucHJlcGVuZD9lLnVuc2hpZnQodCk6ZS5wdXNoKHQpKSxmdW5jdGlvbigpe3ZhciBuPWUuaW5kZXhPZih0KTtuPi0xJiZlLnNwbGljZShuLDEpfX1mdW5jdGlvbiBoKHQsZSl7dC5fYWN0aW9ucz1PYmplY3QuY3JlYXRlKG51bGwpLHQuX211dGF0aW9ucz1PYmplY3QuY3JlYXRlKG51bGwpLHQuX3dyYXBwZWRHZXR0ZXJzPU9iamVjdC5jcmVhdGUobnVsbCksdC5fbW9kdWxlc05hbWVzcGFjZU1hcD1PYmplY3QuY3JlYXRlKG51bGwpO3ZhciBuPXQuc3RhdGU7Xyh0LG4sW10sdC5fbW9kdWxlcy5yb290LCEwKSxtKHQsbixlKX1mdW5jdGlvbiBtKHQsZSxuKXt2YXIgcj10Ll92bTt0LmdldHRlcnM9e30sdC5fbWFrZUxvY2FsR2V0dGVyc0NhY2hlPU9iamVjdC5jcmVhdGUobnVsbCk7dmFyIG89dC5fd3JhcHBlZEdldHRlcnMsaT17fTthKG8sKGZ1bmN0aW9uKGUsbil7aVtuXT1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0KGUpfX0oZSx0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodC5nZXR0ZXJzLG4se2dldDpmdW5jdGlvbigpe3JldHVybiB0Ll92bVtuXX0sZW51bWVyYWJsZTohMH0pfSkpO3ZhciBzPWwuY29uZmlnLnNpbGVudDtsLmNvbmZpZy5zaWxlbnQ9ITAsdC5fdm09bmV3IGwoe2RhdGE6eyQkc3RhdGU6ZX0sY29tcHV0ZWQ6aX0pLGwuY29uZmlnLnNpbGVudD1zLHQuc3RyaWN0JiZmdW5jdGlvbih0KXt0Ll92bS4kd2F0Y2goKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RhdGEuJCRzdGF0ZX0pLChmdW5jdGlvbigpe30pLHtkZWVwOiEwLHN5bmM6ITB9KX0odCksciYmKG4mJnQuX3dpdGhDb21taXQoKGZ1bmN0aW9uKCl7ci5fZGF0YS4kJHN0YXRlPW51bGx9KSksbC5uZXh0VGljaygoZnVuY3Rpb24oKXtyZXR1cm4gci4kZGVzdHJveSgpfSkpKX1mdW5jdGlvbiBfKHQsZSxuLHIsbyl7dmFyIGk9IW4ubGVuZ3RoLGE9dC5fbW9kdWxlcy5nZXROYW1lc3BhY2Uobik7aWYoci5uYW1lc3BhY2VkJiYodC5fbW9kdWxlc05hbWVzcGFjZU1hcFthXSx0Ll9tb2R1bGVzTmFtZXNwYWNlTWFwW2FdPXIpLCFpJiYhbyl7dmFyIHM9eShlLG4uc2xpY2UoMCwtMSkpLGM9bltuLmxlbmd0aC0xXTt0Ll93aXRoQ29tbWl0KChmdW5jdGlvbigpe2wuc2V0KHMsYyxyLnN0YXRlKX0pKX12YXIgdT1yLmNvbnRleHQ9ZnVuY3Rpb24odCxlLG4pe3ZhciByPSIiPT09ZSxvPXtkaXNwYXRjaDpyP3QuZGlzcGF0Y2g6ZnVuY3Rpb24obixyLG8pe3ZhciBpPWcobixyLG8pLGE9aS5wYXlsb2FkLHM9aS5vcHRpb25zLGM9aS50eXBlO3JldHVybiBzJiZzLnJvb3R8fChjPWUrYyksdC5kaXNwYXRjaChjLGEpfSxjb21taXQ6cj90LmNvbW1pdDpmdW5jdGlvbihuLHIsbyl7dmFyIGk9ZyhuLHIsbyksYT1pLnBheWxvYWQscz1pLm9wdGlvbnMsYz1pLnR5cGU7cyYmcy5yb290fHwoYz1lK2MpLHQuY29tbWl0KGMsYSxzKX19O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhvLHtnZXR0ZXJzOntnZXQ6cj9mdW5jdGlvbigpe3JldHVybiB0LmdldHRlcnN9OmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7aWYoIXQuX21ha2VMb2NhbEdldHRlcnNDYWNoZVtlXSl7dmFyIG49e30scj1lLmxlbmd0aDtPYmplY3Qua2V5cyh0LmdldHRlcnMpLmZvckVhY2goKGZ1bmN0aW9uKG8pe2lmKG8uc2xpY2UoMCxyKT09PWUpe3ZhciBpPW8uc2xpY2Uocik7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4saSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQuZ2V0dGVyc1tvXX0sZW51bWVyYWJsZTohMH0pfX0pKSx0Ll9tYWtlTG9jYWxHZXR0ZXJzQ2FjaGVbZV09bn1yZXR1cm4gdC5fbWFrZUxvY2FsR2V0dGVyc0NhY2hlW2VdfSh0LGUpfX0sc3RhdGU6e2dldDpmdW5jdGlvbigpe3JldHVybiB5KHQuc3RhdGUsbil9fX0pLG99KHQsYSxuKTtyLmZvckVhY2hNdXRhdGlvbigoZnVuY3Rpb24oZSxuKXshZnVuY3Rpb24odCxlLG4scil7KHQuX211dGF0aW9uc1tlXXx8KHQuX211dGF0aW9uc1tlXT1bXSkpLnB1c2goKGZ1bmN0aW9uKGUpe24uY2FsbCh0LHIuc3RhdGUsZSl9KSl9KHQsYStuLGUsdSl9KSksci5mb3JFYWNoQWN0aW9uKChmdW5jdGlvbihlLG4pe3ZhciByPWUucm9vdD9uOmErbixvPWUuaGFuZGxlcnx8ZTshZnVuY3Rpb24odCxlLG4scil7KHQuX2FjdGlvbnNbZV18fCh0Ll9hY3Rpb25zW2VdPVtdKSkucHVzaCgoZnVuY3Rpb24oZSl7dmFyIG89bi5jYWxsKHQse2Rpc3BhdGNoOnIuZGlzcGF0Y2gsY29tbWl0OnIuY29tbWl0LGdldHRlcnM6ci5nZXR0ZXJzLHN0YXRlOnIuc3RhdGUscm9vdEdldHRlcnM6dC5nZXR0ZXJzLHJvb3RTdGF0ZTp0LnN0YXRlfSxlKTtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW59KG8pfHwobz1Qcm9taXNlLnJlc29sdmUobykpLHQuX2RldnRvb2xIb29rP28uY2F0Y2goKGZ1bmN0aW9uKGUpe3Rocm93IHQuX2RldnRvb2xIb29rLmVtaXQoInZ1ZXg6ZXJyb3IiLGUpLGV9KSk6b30pKX0odCxyLG8sdSl9KSksci5mb3JFYWNoR2V0dGVyKChmdW5jdGlvbihlLG4peyFmdW5jdGlvbih0LGUsbixyKXt0Ll93cmFwcGVkR2V0dGVyc1tlXXx8KHQuX3dyYXBwZWRHZXR0ZXJzW2VdPWZ1bmN0aW9uKHQpe3JldHVybiBuKHIuc3RhdGUsci5nZXR0ZXJzLHQuc3RhdGUsdC5nZXR0ZXJzKX0pfSh0LGErbixlLHUpfSkpLHIuZm9yRWFjaENoaWxkKChmdW5jdGlvbihyLGkpe18odCxlLG4uY29uY2F0KGkpLHIsbyl9KSl9ZnVuY3Rpb24geSh0LGUpe3JldHVybiBlLnJlZHVjZSgoZnVuY3Rpb24odCxlKXtyZXR1cm4gdFtlXX0pLHQpfWZ1bmN0aW9uIGcodCxlLG4pe3JldHVybiBzKHQpJiZ0LnR5cGUmJihuPWUsZT10LHQ9dC50eXBlKSx7dHlwZTp0LHBheWxvYWQ6ZSxvcHRpb25zOm59fWZ1bmN0aW9uIGIodCl7bCYmdD09PWx8fGZ1bmN0aW9uKHQpe2lmKE51bWJlcih0LnZlcnNpb24uc3BsaXQoIi4iKVswXSk+PTIpdC5taXhpbih7YmVmb3JlQ3JlYXRlOm59KTtlbHNle3ZhciBlPXQucHJvdG90eXBlLl9pbml0O3QucHJvdG90eXBlLl9pbml0PWZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PXt9KSx0LmluaXQ9dC5pbml0P1tuXS5jb25jYXQodC5pbml0KTpuLGUuY2FsbCh0aGlzLHQpfX1mdW5jdGlvbiBuKCl7dmFyIHQ9dGhpcy4kb3B0aW9uczt0LnN0b3JlP3RoaXMuJHN0b3JlPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnN0b3JlP3Quc3RvcmUoKTp0LnN0b3JlOnQucGFyZW50JiZ0LnBhcmVudC4kc3RvcmUmJih0aGlzLiRzdG9yZT10LnBhcmVudC4kc3RvcmUpfX0obD10KX1kLnN0YXRlLmdldD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl92bS5fZGF0YS4kJHN0YXRlfSxkLnN0YXRlLnNldD1mdW5jdGlvbih0KXt9LHAucHJvdG90eXBlLmNvbW1pdD1mdW5jdGlvbih0LGUsbil7dmFyIHI9dGhpcyxvPWcodCxlLG4pLGk9by50eXBlLGE9by5wYXlsb2FkLHM9KG8ub3B0aW9ucyx7dHlwZTppLHBheWxvYWQ6YX0pLGM9dGhpcy5fbXV0YXRpb25zW2ldO2MmJih0aGlzLl93aXRoQ29tbWl0KChmdW5jdGlvbigpe2MuZm9yRWFjaCgoZnVuY3Rpb24odCl7dChhKX0pKX0pKSx0aGlzLl9zdWJzY3JpYmVycy5zbGljZSgpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3JldHVybiB0KHMsci5zdGF0ZSl9KSkpfSxwLnByb3RvdHlwZS5kaXNwYXRjaD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMscj1nKHQsZSksbz1yLnR5cGUsaT1yLnBheWxvYWQsYT17dHlwZTpvLHBheWxvYWQ6aX0scz10aGlzLl9hY3Rpb25zW29dO2lmKHMpe3RyeXt0aGlzLl9hY3Rpb25TdWJzY3JpYmVycy5zbGljZSgpLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIHQuYmVmb3JlfSkpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3JldHVybiB0LmJlZm9yZShhLG4uc3RhdGUpfSkpfWNhdGNoKHQpe312YXIgYz1zLmxlbmd0aD4xP1Byb21pc2UuYWxsKHMubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdChpKX0pKSk6c1swXShpKTtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKHQsZSl7Yy50aGVuKChmdW5jdGlvbihlKXt0cnl7bi5fYWN0aW9uU3Vic2NyaWJlcnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdC5hZnRlcn0pKS5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gdC5hZnRlcihhLG4uc3RhdGUpfSkpfWNhdGNoKHQpe310KGUpfSksKGZ1bmN0aW9uKHQpe3RyeXtuLl9hY3Rpb25TdWJzY3JpYmVycy5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiB0LmVycm9yfSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3JldHVybiBlLmVycm9yKGEsbi5zdGF0ZSx0KX0pKX1jYXRjaCh0KXt9ZSh0KX0pKX0pKX19LHAucHJvdG90eXBlLnN1YnNjcmliZT1mdW5jdGlvbih0LGUpe3JldHVybiB2KHQsdGhpcy5fc3Vic2NyaWJlcnMsZSl9LHAucHJvdG90eXBlLnN1YnNjcmliZUFjdGlvbj1mdW5jdGlvbih0LGUpe3JldHVybiB2KCJmdW5jdGlvbiI9PXR5cGVvZiB0P3tiZWZvcmU6dH06dCx0aGlzLl9hY3Rpb25TdWJzY3JpYmVycyxlKX0scC5wcm90b3R5cGUud2F0Y2g9ZnVuY3Rpb24odCxlLG4pe3ZhciByPXRoaXM7cmV0dXJuIHRoaXMuX3dhdGNoZXJWTS4kd2F0Y2goKGZ1bmN0aW9uKCl7cmV0dXJuIHQoci5zdGF0ZSxyLmdldHRlcnMpfSksZSxuKX0scC5wcm90b3R5cGUucmVwbGFjZVN0YXRlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5fd2l0aENvbW1pdCgoZnVuY3Rpb24oKXtlLl92bS5fZGF0YS4kJHN0YXRlPXR9KSl9LHAucHJvdG90eXBlLnJlZ2lzdGVyTW9kdWxlPWZ1bmN0aW9uKHQsZSxuKXt2b2lkIDA9PT1uJiYobj17fSksInN0cmluZyI9PXR5cGVvZiB0JiYodD1bdF0pLHRoaXMuX21vZHVsZXMucmVnaXN0ZXIodCxlKSxfKHRoaXMsdGhpcy5zdGF0ZSx0LHRoaXMuX21vZHVsZXMuZ2V0KHQpLG4ucHJlc2VydmVTdGF0ZSksbSh0aGlzLHRoaXMuc3RhdGUpfSxwLnByb3RvdHlwZS51bnJlZ2lzdGVyTW9kdWxlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7InN0cmluZyI9PXR5cGVvZiB0JiYodD1bdF0pLHRoaXMuX21vZHVsZXMudW5yZWdpc3Rlcih0KSx0aGlzLl93aXRoQ29tbWl0KChmdW5jdGlvbigpe3ZhciBuPXkoZS5zdGF0ZSx0LnNsaWNlKDAsLTEpKTtsLmRlbGV0ZShuLHRbdC5sZW5ndGgtMV0pfSkpLGgodGhpcyl9LHAucHJvdG90eXBlLmhhc01vZHVsZT1mdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQmJih0PVt0XSksdGhpcy5fbW9kdWxlcy5pc1JlZ2lzdGVyZWQodCl9LHAucHJvdG90eXBlLmhvdFVwZGF0ZT1mdW5jdGlvbih0KXt0aGlzLl9tb2R1bGVzLnVwZGF0ZSh0KSxoKHRoaXMsITApfSxwLnByb3RvdHlwZS5fd2l0aENvbW1pdD1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9jb21taXR0aW5nO3RoaXMuX2NvbW1pdHRpbmc9ITAsdCgpLHRoaXMuX2NvbW1pdHRpbmc9ZX0sT2JqZWN0LmRlZmluZVByb3BlcnRpZXMocC5wcm90b3R5cGUsZCk7dmFyIHc9aygoZnVuY3Rpb24odCxlKXt2YXIgbj17fTtyZXR1cm4gTyhlKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgcj1lLmtleSxvPWUudmFsO25bcl09ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzdG9yZS5zdGF0ZSxuPXRoaXMuJHN0b3JlLmdldHRlcnM7aWYodCl7dmFyIHI9Uyh0aGlzLiRzdG9yZSwibWFwU3RhdGUiLHQpO2lmKCFyKXJldHVybjtlPXIuY29udGV4dC5zdGF0ZSxuPXIuY29udGV4dC5nZXR0ZXJzfXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBvP28uY2FsbCh0aGlzLGUsbik6ZVtvXX0sbltyXS52dWV4PSEwfSkpLG59KSksJD1rKChmdW5jdGlvbih0LGUpe3ZhciBuPXt9O3JldHVybiBPKGUpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciByPWUua2V5LG89ZS52YWw7bltyXT1mdW5jdGlvbigpe2Zvcih2YXIgZT1bXSxuPWFyZ3VtZW50cy5sZW5ndGg7bi0tOyllW25dPWFyZ3VtZW50c1tuXTt2YXIgcj10aGlzLiRzdG9yZS5jb21taXQ7aWYodCl7dmFyIGk9Uyh0aGlzLiRzdG9yZSwibWFwTXV0YXRpb25zIix0KTtpZighaSlyZXR1cm47cj1pLmNvbnRleHQuY29tbWl0fXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBvP28uYXBwbHkodGhpcyxbcl0uY29uY2F0KGUpKTpyLmFwcGx5KHRoaXMuJHN0b3JlLFtvXS5jb25jYXQoZSkpfX0pKSxufSkpLEM9aygoZnVuY3Rpb24odCxlKXt2YXIgbj17fTtyZXR1cm4gTyhlKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgcj1lLmtleSxvPWUudmFsO289dCtvLG5bcl09ZnVuY3Rpb24oKXtpZighdHx8Uyh0aGlzLiRzdG9yZSwibWFwR2V0dGVycyIsdCkpcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnNbb119LG5bcl0udnVleD0hMH0pKSxufSkpLHg9aygoZnVuY3Rpb24odCxlKXt2YXIgbj17fTtyZXR1cm4gTyhlKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgcj1lLmtleSxvPWUudmFsO25bcl09ZnVuY3Rpb24oKXtmb3IodmFyIGU9W10sbj1hcmd1bWVudHMubGVuZ3RoO24tLTspZVtuXT1hcmd1bWVudHNbbl07dmFyIHI9dGhpcy4kc3RvcmUuZGlzcGF0Y2g7aWYodCl7dmFyIGk9Uyh0aGlzLiRzdG9yZSwibWFwQWN0aW9ucyIsdCk7aWYoIWkpcmV0dXJuO3I9aS5jb250ZXh0LmRpc3BhdGNofXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBvP28uYXBwbHkodGhpcyxbcl0uY29uY2F0KGUpKTpyLmFwcGx5KHRoaXMuJHN0b3JlLFtvXS5jb25jYXQoZSkpfX0pKSxufSkpO2Z1bmN0aW9uIE8odCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBBcnJheS5pc0FycmF5KHQpfHxzKHQpfSh0KT9BcnJheS5pc0FycmF5KHQpP3QubWFwKChmdW5jdGlvbih0KXtyZXR1cm57a2V5OnQsdmFsOnR9fSkpOk9iamVjdC5rZXlzKHQpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJue2tleTplLHZhbDp0W2VdfX0pKTpbXX1mdW5jdGlvbiBrKHQpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiJzdHJpbmciIT10eXBlb2YgZT8obj1lLGU9IiIpOiIvIiE9PWUuY2hhckF0KGUubGVuZ3RoLTEpJiYoZSs9Ii8iKSx0KGUsbil9fWZ1bmN0aW9uIFModCxlLG4pe3JldHVybiB0Ll9tb2R1bGVzTmFtZXNwYWNlTWFwW25dfWZ1bmN0aW9uIEEodCxlLG4pe3ZhciByPW4/dC5ncm91cENvbGxhcHNlZDp0Lmdyb3VwO3RyeXtyLmNhbGwodCxlKX1jYXRjaChuKXt0LmxvZyhlKX19ZnVuY3Rpb24gaih0KXt0cnl7dC5ncm91cEVuZCgpfWNhdGNoKGUpe3QubG9nKCLigJTigJQgbG9nIGVuZCDigJTigJQiKX19ZnVuY3Rpb24gRSgpe3ZhciB0PW5ldyBEYXRlO3JldHVybiIgQCAiK1QodC5nZXRIb3VycygpLDIpKyI6IitUKHQuZ2V0TWludXRlcygpLDIpKyI6IitUKHQuZ2V0U2Vjb25kcygpLDIpKyIuIitUKHQuZ2V0TWlsbGlzZWNvbmRzKCksMyl9ZnVuY3Rpb24gVCh0LGUpe3JldHVybiBmdW5jdGlvbih0LGUpe3JldHVybiBuZXcgQXJyYXkoZSsxKS5qb2luKHQpfSgiMCIsZS10LnRvU3RyaW5nKCkubGVuZ3RoKSt0fXZhciBQPXtTdG9yZTpwLGluc3RhbGw6Yix2ZXJzaW9uOiIzLjYuMiIsbWFwU3RhdGU6dyxtYXBNdXRhdGlvbnM6JCxtYXBHZXR0ZXJzOkMsbWFwQWN0aW9uczp4LGNyZWF0ZU5hbWVzcGFjZWRIZWxwZXJzOmZ1bmN0aW9uKHQpe3JldHVybnttYXBTdGF0ZTp3LmJpbmQobnVsbCx0KSxtYXBHZXR0ZXJzOkMuYmluZChudWxsLHQpLG1hcE11dGF0aW9uczokLmJpbmQobnVsbCx0KSxtYXBBY3Rpb25zOnguYmluZChudWxsLHQpfX0sY3JlYXRlTG9nZ2VyOmZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PXt9KTt2YXIgZT10LmNvbGxhcHNlZDt2b2lkIDA9PT1lJiYoZT0hMCk7dmFyIG49dC5maWx0ZXI7dm9pZCAwPT09biYmKG49ZnVuY3Rpb24odCxlLG4pe3JldHVybiEwfSk7dmFyIHI9dC50cmFuc2Zvcm1lcjt2b2lkIDA9PT1yJiYocj1mdW5jdGlvbih0KXtyZXR1cm4gdH0pO3ZhciBvPXQubXV0YXRpb25UcmFuc2Zvcm1lcjt2b2lkIDA9PT1vJiYobz1mdW5jdGlvbih0KXtyZXR1cm4gdH0pO3ZhciBhPXQuYWN0aW9uRmlsdGVyO3ZvaWQgMD09PWEmJihhPWZ1bmN0aW9uKHQsZSl7cmV0dXJuITB9KTt2YXIgcz10LmFjdGlvblRyYW5zZm9ybWVyO3ZvaWQgMD09PXMmJihzPWZ1bmN0aW9uKHQpe3JldHVybiB0fSk7dmFyIGM9dC5sb2dNdXRhdGlvbnM7dm9pZCAwPT09YyYmKGM9ITApO3ZhciB1PXQubG9nQWN0aW9uczt2b2lkIDA9PT11JiYodT0hMCk7dmFyIGw9dC5sb2dnZXI7cmV0dXJuIHZvaWQgMD09PWwmJihsPWNvbnNvbGUpLGZ1bmN0aW9uKHQpe3ZhciBmPWkodC5zdGF0ZSk7dm9pZCAwIT09bCYmKGMmJnQuc3Vic2NyaWJlKChmdW5jdGlvbih0LGEpe3ZhciBzPWkoYSk7aWYobih0LGYscykpe3ZhciBjPUUoKSx1PW8odCkscD0ibXV0YXRpb24gIit0LnR5cGUrYztBKGwscCxlKSxsLmxvZygiJWMgcHJldiBzdGF0ZSIsImNvbG9yOiAjOUU5RTlFOyBmb250LXdlaWdodDogYm9sZCIscihmKSksbC5sb2coIiVjIG11dGF0aW9uIiwiY29sb3I6ICMwM0E5RjQ7IGZvbnQtd2VpZ2h0OiBib2xkIix1KSxsLmxvZygiJWMgbmV4dCBzdGF0ZSIsImNvbG9yOiAjNENBRjUwOyBmb250LXdlaWdodDogYm9sZCIscihzKSksaihsKX1mPXN9KSksdSYmdC5zdWJzY3JpYmVBY3Rpb24oKGZ1bmN0aW9uKHQsbil7aWYoYSh0LG4pKXt2YXIgcj1FKCksbz1zKHQpLGk9ImFjdGlvbiAiK3QudHlwZStyO0EobCxpLGUpLGwubG9nKCIlYyBhY3Rpb24iLCJjb2xvcjogIzAzQTlGNDsgZm9udC13ZWlnaHQ6IGJvbGQiLG8pLGoobCl9fSkpKX19fTtlLmE9UH0pLmNhbGwodGhpcyxuKCJjOGJhIikpfX1dKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dHdrLXZlbmRvci5qcy5tYXA="}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/iziToast.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.832Z","timestamp":1785143153832,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/js/iziToast.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"4836-67b374e4-d2d2480c5ecb5828;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 4766\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":18486,"size_decoded":5222,"mime_type":"application/x-javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (18398), with CRLF line terminators","md5":"df383d4feeb05ea8bfe86a0569ef0524","sha1":"c6fd53b0a4abc2b73f55025ecb28d2eb65db93d4","sha256":"df6d4fc52f8f3af6ef59c215a1165e4667f7daaedf4c5409db56d7c133564446","sha512":"66af68f84d34c61851ffbbc9e3d9b114d274290c351354cc5a43d3c6b59c9e97c41431178148b024720a8adf77116fd7c44df51d2239184396d3a1ba045d40b4","ssdeep":"384:9hKmhCPzlc5gVCPBpcG/0CEvXArKKpQi8VREgO3MrnHzxJBkHI4505P:3K5PzlcN8DXArhpQzRHO3M7TxfGIYUP","tlshash":"2582c894722032374aa329a960ff534a3772156ca9c641a4243fcdad5b34f8939f77f8","first_seen":"2023-03-07T12:01:52Z","last_seen":"2026-08-03T04:59:21.544906Z","times_seen":1970,"resource_available":true,"data":"LyoNCiogaXppVG9hc3QgfCB2MS40LjANCiogaHR0cDovL2l6aXRvYXN0Lm1hcmNlbG9kb2xjZS5jb20NCiogYnkgTWFyY2VsbyBEb2xjZS4NCiovDQohZnVuY3Rpb24odCxlKXsiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbXSxlKHQpKToib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9ZSh0KTp0Lml6aVRvYXN0PWUodCl9KCJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDp3aW5kb3d8fHRoaXMud2luZG93fHx0aGlzLmdsb2JhbCxmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7dmFyIGU9e30sbj0iaXppVG9hc3QiLG89KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJvZHkiKSwhIS9Nb2JpLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxpPS9DaHJvbWUvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJi9Hb29nbGUgSW5jLy50ZXN0KG5hdmlnYXRvci52ZW5kb3IpLHM9InVuZGVmaW5lZCIhPXR5cGVvZiBJbnN0YWxsVHJpZ2dlcixhPSJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHI9WyJib3R0b21SaWdodCIsImJvdHRvbUxlZnQiLCJib3R0b21DZW50ZXIiLCJ0b3BSaWdodCIsInRvcExlZnQiLCJ0b3BDZW50ZXIiLCJjZW50ZXIiXSxsPXtpbmZvOntjb2xvcjoiYmx1ZSIsaWNvbjoiaWNvLWluZm8ifSxzdWNjZXNzOntjb2xvcjoiZ3JlZW4iLGljb246Imljby1zdWNjZXNzIn0sd2FybmluZzp7Y29sb3I6Im9yYW5nZSIsaWNvbjoiaWNvLXdhcm5pbmcifSxlcnJvcjp7Y29sb3I6InJlZCIsaWNvbjoiaWNvLWVycm9yIn0scXVlc3Rpb246e2NvbG9yOiJ5ZWxsb3ciLGljb246Imljby1xdWVzdGlvbiJ9fSxkPTU2OCxjPXt9O2UuY2hpbGRyZW49e307dmFyIHU9e2lkOm51bGwsImNsYXNzIjoiIix0aXRsZToiIix0aXRsZUNvbG9yOiIiLHRpdGxlU2l6ZToiIix0aXRsZUxpbmVIZWlnaHQ6IiIsbWVzc2FnZToiIixtZXNzYWdlQ29sb3I6IiIsbWVzc2FnZVNpemU6IiIsbWVzc2FnZUxpbmVIZWlnaHQ6IiIsYmFja2dyb3VuZENvbG9yOiIiLHRoZW1lOiJsaWdodCIsY29sb3I6IiIsaWNvbjoiIixpY29uVGV4dDoiIixpY29uQ29sb3I6IiIsaWNvblVybDpudWxsLGltYWdlOiIiLGltYWdlV2lkdGg6NTAsbWF4V2lkdGg6bnVsbCx6aW5kZXg6bnVsbCxsYXlvdXQ6MSxiYWxsb29uOiExLGNsb3NlOiEwLGNsb3NlT25Fc2NhcGU6ITEsY2xvc2VPbkNsaWNrOiExLGRpc3BsYXlNb2RlOjAscG9zaXRpb246ImJvdHRvbVJpZ2h0Iix0YXJnZXQ6IiIsdGFyZ2V0Rmlyc3Q6ITAsdGltZW91dDo1ZTMscnRsOiExLGFuaW1hdGVJbnNpZGU6ITAsZHJhZzohMCxwYXVzZU9uSG92ZXI6ITAscmVzZXRPbkhvdmVyOiExLHByb2dyZXNzQmFyOiEwLHByb2dyZXNzQmFyQ29sb3I6IiIscHJvZ3Jlc3NCYXJFYXNpbmc6ImxpbmVhciIsb3ZlcmxheTohMSxvdmVybGF5Q2xvc2U6ITEsb3ZlcmxheUNvbG9yOiJyZ2JhKDAsIDAsIDAsIDAuNikiLHRyYW5zaXRpb25JbjoiZmFkZUluVXAiLHRyYW5zaXRpb25PdXQ6ImZhZGVPdXQiLHRyYW5zaXRpb25Jbk1vYmlsZToiZmFkZUluVXAiLHRyYW5zaXRpb25PdXRNb2JpbGU6ImZhZGVPdXREb3duIixidXR0b25zOnt9LGlucHV0czp7fSxvbk9wZW5pbmc6ZnVuY3Rpb24oKXt9LG9uT3BlbmVkOmZ1bmN0aW9uKCl7fSxvbkNsb3Npbmc6ZnVuY3Rpb24oKXt9LG9uQ2xvc2VkOmZ1bmN0aW9uKCl7fX07aWYoInJlbW92ZSJpbiBFbGVtZW50LnByb3RvdHlwZXx8KEVsZW1lbnQucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbigpe3RoaXMucGFyZW50Tm9kZSYmdGhpcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMpfSksImZ1bmN0aW9uIiE9dHlwZW9mIHdpbmRvdy5DdXN0b21FdmVudCl7dmFyIHA9ZnVuY3Rpb24odCxlKXtlPWV8fHtidWJibGVzOiExLGNhbmNlbGFibGU6ITEsZGV0YWlsOnZvaWQgMH07dmFyIG49ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50Iik7cmV0dXJuIG4uaW5pdEN1c3RvbUV2ZW50KHQsZS5idWJibGVzLGUuY2FuY2VsYWJsZSxlLmRldGFpbCksbn07cC5wcm90b3R5cGU9d2luZG93LkV2ZW50LnByb3RvdHlwZSx3aW5kb3cuQ3VzdG9tRXZlbnQ9cH12YXIgbT1mdW5jdGlvbih0LGUsbil7aWYoIltvYmplY3QgT2JqZWN0XSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCkpZm9yKHZhciBvIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbykmJmUuY2FsbChuLHRbb10sbyx0KTtlbHNlIGlmKHQpZm9yKHZhciBpPTAscz10Lmxlbmd0aDtzPmk7aSsrKWUuY2FsbChuLHRbaV0saSx0KX0sZz1mdW5jdGlvbih0LGUpe3ZhciBuPXt9O3JldHVybiBtKHQsZnVuY3Rpb24oZSxvKXtuW29dPXRbb119KSxtKGUsZnVuY3Rpb24odCxvKXtuW29dPWVbb119KSxufSxmPWZ1bmN0aW9uKHQpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2ZvcihuLmlubmVySFRNTD10O24uZmlyc3RDaGlsZDspZS5hcHBlbmRDaGlsZChuLmZpcnN0Q2hpbGQpO3JldHVybiBlfSx2PWZ1bmN0aW9uKHQpe3ZhciBlPWJ0b2EoZW5jb2RlVVJJQ29tcG9uZW50KHQpKTtyZXR1cm4gZS5yZXBsYWNlKC89L2csIiIpfSx5PWZ1bmN0aW9uKHQpe3JldHVybiIjIj09dC5zdWJzdHJpbmcoMCwxKXx8InJnYiI9PXQuc3Vic3RyaW5nKDAsMyl8fCJoc2wiPT10LnN1YnN0cmluZygwLDMpfSxoPWZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4gYnRvYShhdG9iKHQpKT09dH1jYXRjaChlKXtyZXR1cm4hMX19LGI9ZnVuY3Rpb24oKXtyZXR1cm57bW92ZTpmdW5jdGlvbih0LGUsbyxhKXt2YXIgcixsPS4zLGQ9MTgwOzAhPT1hJiYodC5jbGFzc0xpc3QuYWRkKG4rIi1kcmFnZ2VkIiksdC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVgoIithKyJweCkiLGE+MD8ocj0oZC1hKS9kLGw+ciYmZS5oaWRlKGcobyx7dHJhbnNpdGlvbk91dDoiZmFkZU91dFJpZ2h0Iix0cmFuc2l0aW9uT3V0TW9iaWxlOiJmYWRlT3V0UmlnaHQifSksdCwiZHJhZyIpKToocj0oZCthKS9kLGw+ciYmZS5oaWRlKGcobyx7dHJhbnNpdGlvbk91dDoiZmFkZU91dExlZnQiLHRyYW5zaXRpb25PdXRNb2JpbGU6ImZhZGVPdXRMZWZ0In0pLHQsImRyYWciKSksdC5zdHlsZS5vcGFjaXR5PXIsbD5yJiYoKGl8fHMpJiYodC5zdHlsZS5sZWZ0PWErInB4IiksdC5wYXJlbnROb2RlLnN0eWxlLm9wYWNpdHk9bCx0aGlzLnN0b3BNb3ZpbmcodCxudWxsKSkpfSxzdGFydE1vdmluZzpmdW5jdGlvbih0LGUsbixvKXtvPW98fHdpbmRvdy5ldmVudDt2YXIgaT1hP28udG91Y2hlc1swXS5jbGllbnRYOm8uY2xpZW50WCxzPXQuc3R5bGUudHJhbnNmb3JtLnJlcGxhY2UoInB4KSIsIiIpO3M9cy5yZXBsYWNlKCJ0cmFuc2xhdGVYKCIsIiIpO3ZhciByPWktcztuLnRyYW5zaXRpb25JbiYmdC5jbGFzc0xpc3QucmVtb3ZlKG4udHJhbnNpdGlvbkluKSxuLnRyYW5zaXRpb25Jbk1vYmlsZSYmdC5jbGFzc0xpc3QucmVtb3ZlKG4udHJhbnNpdGlvbkluTW9iaWxlKSx0LnN0eWxlLnRyYW5zaXRpb249IiIsYT9kb2N1bWVudC5vbnRvdWNobW92ZT1mdW5jdGlvbihvKXtvLnByZXZlbnREZWZhdWx0KCksbz1vfHx3aW5kb3cuZXZlbnQ7dmFyIGk9by50b3VjaGVzWzBdLmNsaWVudFgscz1pLXI7Yi5tb3ZlKHQsZSxuLHMpfTpkb2N1bWVudC5vbm1vdXNlbW92ZT1mdW5jdGlvbihvKXtvLnByZXZlbnREZWZhdWx0KCksbz1vfHx3aW5kb3cuZXZlbnQ7dmFyIGk9by5jbGllbnRYLHM9aS1yO2IubW92ZSh0LGUsbixzKX19LHN0b3BNb3Zpbmc6ZnVuY3Rpb24odCxlKXthP2RvY3VtZW50Lm9udG91Y2htb3ZlPWZ1bmN0aW9uKCl7fTpkb2N1bWVudC5vbm1vdXNlbW92ZT1mdW5jdGlvbigpe30sdC5zdHlsZS5vcGFjaXR5PSIiLHQuc3R5bGUudHJhbnNmb3JtPSIiLHQuY2xhc3NMaXN0LmNvbnRhaW5zKG4rIi1kcmFnZ2VkIikmJih0LmNsYXNzTGlzdC5yZW1vdmUobisiLWRyYWdnZWQiKSx0LnN0eWxlLnRyYW5zaXRpb249InRyYW5zZm9ybSAwLjRzIGVhc2UsIG9wYWNpdHkgMC40cyBlYXNlIixzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5zdHlsZS50cmFuc2l0aW9uPSIifSw0MDApKX19fSgpO3JldHVybiBlLnNldFNldHRpbmc9ZnVuY3Rpb24odCxuLG8pe2UuY2hpbGRyZW5bdF1bbl09b30sZS5nZXRTZXR0aW5nPWZ1bmN0aW9uKHQsbil7cmV0dXJuIGUuY2hpbGRyZW5bdF1bbl19LGUuZGVzdHJveT1mdW5jdGlvbigpe20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLiIrbisiLW92ZXJsYXkiKSxmdW5jdGlvbih0LGUpe3QucmVtb3ZlKCl9KSxtKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi4iK24rIi13cmFwcGVyIiksZnVuY3Rpb24odCxlKXt0LnJlbW92ZSgpfSksbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIituKSxmdW5jdGlvbih0LGUpe3QucmVtb3ZlKCl9KSx0aGlzLmNoaWxkcmVuPXt9LGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIobisiLW9wZW5lZCIse30sITEpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIobisiLW9wZW5pbmciLHt9LCExKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKG4rIi1jbG9zaW5nIix7fSwhMSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihuKyItY2xvc2VkIix7fSwhMSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHt9LCExKSxjPXt9fSxlLnNldHRpbmdzPWZ1bmN0aW9uKHQpe2UuZGVzdHJveSgpLGM9dCx1PWcodSx0fHx7fSl9LG0obCxmdW5jdGlvbih0LG4pe2Vbbl09ZnVuY3Rpb24oZSl7dmFyIG49ZyhjLGV8fHt9KTtuPWcodCxufHx7fSksdGhpcy5zaG93KG4pfX0pLGUucHJvZ3Jlc3M9ZnVuY3Rpb24odCxlLG8pe3ZhciBpPXRoaXMscz1lLmdldEF0dHJpYnV0ZSgiZGF0YS1pemlUb2FzdC1yZWYiKSxhPWcodGhpcy5jaGlsZHJlbltzXSx0fHx7fSkscj1lLnF1ZXJ5U2VsZWN0b3IoIi4iK24rIi1wcm9ncmVzc2JhciBkaXYiKTtyZXR1cm57c3RhcnQ6ZnVuY3Rpb24oKXsidW5kZWZpbmVkIj09dHlwZW9mIGEudGltZS5SRU1BSU5JTkcmJihlLmNsYXNzTGlzdC5yZW1vdmUobisiLXJlc2V0ZWQiKSxudWxsIT09ciYmKHIuc3R5bGUudHJhbnNpdGlvbj0id2lkdGggIithLnRpbWVvdXQrIm1zICIrYS5wcm9ncmVzc0JhckVhc2luZyxyLnN0eWxlLndpZHRoPSIwJSIpLGEudGltZS5TVEFSVD0obmV3IERhdGUpLmdldFRpbWUoKSxhLnRpbWUuRU5EPWEudGltZS5TVEFSVCthLnRpbWVvdXQsYS50aW1lLlRJTUVSPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoYS50aW1lLlRJTUVSKSxlLmNsYXNzTGlzdC5jb250YWlucyhuKyItY2xvc2luZyIpfHwoaS5oaWRlKGEsZSwidGltZW91dCIpLCJmdW5jdGlvbiI9PXR5cGVvZiBvJiZvLmFwcGx5KGkpKX0sYS50aW1lb3V0KSxpLnNldFNldHRpbmcocywidGltZSIsYS50aW1lKSl9LHBhdXNlOmZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBhLnRpbWUuU1RBUlQmJiFlLmNsYXNzTGlzdC5jb250YWlucyhuKyItcGF1c2VkIikmJiFlLmNsYXNzTGlzdC5jb250YWlucyhuKyItcmVzZXRlZCIpKXtpZihlLmNsYXNzTGlzdC5hZGQobisiLXBhdXNlZCIpLGEudGltZS5SRU1BSU5JTkc9YS50aW1lLkVORC0obmV3IERhdGUpLmdldFRpbWUoKSxjbGVhclRpbWVvdXQoYS50aW1lLlRJTUVSKSxpLnNldFNldHRpbmcocywidGltZSIsYS50aW1lKSxudWxsIT09cil7dmFyIHQ9d2luZG93LmdldENvbXB1dGVkU3R5bGUociksbD10LmdldFByb3BlcnR5VmFsdWUoIndpZHRoIik7ci5zdHlsZS50cmFuc2l0aW9uPSJub25lIixyLnN0eWxlLndpZHRoPWx9ImZ1bmN0aW9uIj09dHlwZW9mIG8mJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtvLmFwcGx5KGkpfSwxMCl9fSxyZXN1bWU6ZnVuY3Rpb24oKXsidW5kZWZpbmVkIiE9dHlwZW9mIGEudGltZS5SRU1BSU5JTkc/KGUuY2xhc3NMaXN0LnJlbW92ZShuKyItcGF1c2VkIiksbnVsbCE9PXImJihyLnN0eWxlLnRyYW5zaXRpb249IndpZHRoICIrYS50aW1lLlJFTUFJTklORysibXMgIithLnByb2dyZXNzQmFyRWFzaW5nLHIuc3R5bGUud2lkdGg9IjAlIiksYS50aW1lLkVORD0obmV3IERhdGUpLmdldFRpbWUoKSthLnRpbWUuUkVNQUlOSU5HLGEudGltZS5USU1FUj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGEudGltZS5USU1FUiksZS5jbGFzc0xpc3QuY29udGFpbnMobisiLWNsb3NpbmciKXx8KGkuaGlkZShhLGUsInRpbWVvdXQiKSwiZnVuY3Rpb24iPT10eXBlb2YgbyYmby5hcHBseShpKSl9LGEudGltZS5SRU1BSU5JTkcpLGkuc2V0U2V0dGluZyhzLCJ0aW1lIixhLnRpbWUpKTp0aGlzLnN0YXJ0KCl9LHJlc2V0OmZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGEudGltZS5USU1FUiksZGVsZXRlIGEudGltZS5SRU1BSU5JTkcsaS5zZXRTZXR0aW5nKHMsInRpbWUiLGEudGltZSksZS5jbGFzc0xpc3QuYWRkKG4rIi1yZXNldGVkIiksZS5jbGFzc0xpc3QucmVtb3ZlKG4rIi1wYXVzZWQiKSxudWxsIT09ciYmKHIuc3R5bGUudHJhbnNpdGlvbj0ibm9uZSIsci5zdHlsZS53aWR0aD0iMTAwJSIpLCJmdW5jdGlvbiI9PXR5cGVvZiBvJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7by5hcHBseShpKX0sMTApfX19LGUuaGlkZT1mdW5jdGlvbih0LGUsaSl7Im9iamVjdCIhPXR5cGVvZiBlJiYoZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpKTt2YXIgcz10aGlzLGE9Zyh0aGlzLmNoaWxkcmVuW2UuZ2V0QXR0cmlidXRlKCJkYXRhLWl6aVRvYXN0LXJlZiIpXSx0fHx7fSk7YS5jbG9zZWRCeT1pfHxudWxsLGRlbGV0ZSBhLnRpbWUuUkVNQUlOSU5HLGUuY2xhc3NMaXN0LmFkZChuKyItY2xvc2luZyIpLGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLiIrbisiLW92ZXJsYXkiKTtpZihudWxsIT09dCl7dmFyIGU9dC5nZXRBdHRyaWJ1dGUoImRhdGEtaXppVG9hc3QtcmVmIik7ZT1lLnNwbGl0KCIsIik7dmFyIG89ZS5pbmRleE9mKFN0cmluZyhhLnJlZikpOy0xIT09byYmZS5zcGxpY2UobywxKSx0LnNldEF0dHJpYnV0ZSgiZGF0YS1pemlUb2FzdC1yZWYiLGUuam9pbigpKSwwPT09ZS5sZW5ndGgmJih0LmNsYXNzTGlzdC5yZW1vdmUoImZhZGVJbiIpLHQuY2xhc3NMaXN0LmFkZCgiZmFkZU91dCIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LnJlbW92ZSgpfSw3MDApKX19KCksYS50cmFuc2l0aW9uSW4mJmUuY2xhc3NMaXN0LnJlbW92ZShhLnRyYW5zaXRpb25JbiksYS50cmFuc2l0aW9uSW5Nb2JpbGUmJmUuY2xhc3NMaXN0LnJlbW92ZShhLnRyYW5zaXRpb25Jbk1vYmlsZSksb3x8d2luZG93LmlubmVyV2lkdGg8PWQ/YS50cmFuc2l0aW9uT3V0TW9iaWxlJiZlLmNsYXNzTGlzdC5hZGQoYS50cmFuc2l0aW9uT3V0TW9iaWxlKTphLnRyYW5zaXRpb25PdXQmJmUuY2xhc3NMaXN0LmFkZChhLnRyYW5zaXRpb25PdXQpO3ZhciByPWUucGFyZW50Tm9kZS5vZmZzZXRIZWlnaHQ7ZS5wYXJlbnROb2RlLnN0eWxlLmhlaWdodD1yKyJweCIsZS5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIiwoIW98fHdpbmRvdy5pbm5lcldpZHRoPmQpJiYoZS5wYXJlbnROb2RlLnN0eWxlLnRyYW5zaXRpb25EZWxheT0iMC4ycyIpO3RyeXt2YXIgbD1uZXcgQ3VzdG9tRXZlbnQobisiLWNsb3NpbmciLHtkZXRhaWw6YSxidWJibGVzOiEwLGNhbmNlbGFibGU6ITB9KTtkb2N1bWVudC5kaXNwYXRjaEV2ZW50KGwpfWNhdGNoKGMpe2NvbnNvbGUud2FybihjKX1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5wYXJlbnROb2RlLnN0eWxlLmhlaWdodD0iMHB4IixlLnBhcmVudE5vZGUuc3R5bGUub3ZlcmZsb3c9IiIsc2V0VGltZW91dChmdW5jdGlvbigpe2RlbGV0ZSBzLmNoaWxkcmVuW2EucmVmXSxlLnBhcmVudE5vZGUucmVtb3ZlKCk7dHJ5e3ZhciB0PW5ldyBDdXN0b21FdmVudChuKyItY2xvc2VkIix7ZGV0YWlsOmEsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwfSk7ZG9jdW1lbnQuZGlzcGF0Y2hFdmVudCh0KX1jYXRjaChvKXtjb25zb2xlLndhcm4obyl9InVuZGVmaW5lZCIhPXR5cGVvZiBhLm9uQ2xvc2VkJiZhLm9uQ2xvc2VkLmFwcGx5KG51bGwsW2EsZSxpXSl9LDFlMyl9LDIwMCksInVuZGVmaW5lZCIhPXR5cGVvZiBhLm9uQ2xvc2luZyYmYS5vbkNsb3NpbmcuYXBwbHkobnVsbCxbYSxlLGldKX0sZS5zaG93PWZ1bmN0aW9uKHQpe3ZhciBpPXRoaXMscz1nKGMsdHx8e30pO2lmKHM9Zyh1LHMpLHMudGltZT17fSxudWxsPT09cy5pZCYmKHMuaWQ9dihzLnRpdGxlK3MubWVzc2FnZStzLmNvbG9yKSksMT09PXMuZGlzcGxheU1vZGV8fCJvbmNlIj09cy5kaXNwbGF5TW9kZSl0cnl7aWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLiIrbisiIyIrcy5pZCkubGVuZ3RoPjApcmV0dXJuITF9Y2F0Y2gobCl7Y29uc29sZS53YXJuKCJbIituKyJdIENvdWxkIG5vdCBmaW5kIGFuIGVsZW1lbnQgd2l0aCB0aGlzIHNlbGVjdG9yOiAjIitzLmlkKyIuIFRyeSB0byBzZXQgYW4gdmFsaWQgaWQuIil9aWYoMj09PXMuZGlzcGxheU1vZGV8fCJyZXBsYWNlIj09cy5kaXNwbGF5TW9kZSl0cnl7bShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIituKyIjIitzLmlkKSxmdW5jdGlvbih0LGUpe2kuaGlkZShzLHQsInJlcGxhY2VkIil9KX1jYXRjaChsKXtjb25zb2xlLndhcm4oIlsiK24rIl0gQ291bGQgbm90IGZpbmQgYW4gZWxlbWVudCB3aXRoIHRoaXMgc2VsZWN0b3I6ICMiK3MuaWQrIi4gVHJ5IHRvIHNldCBhbiB2YWxpZCBpZC4iKX1zLnJlZj0obmV3IERhdGUpLmdldFRpbWUoKStNYXRoLmZsb29yKDFlNypNYXRoLnJhbmRvbSgpKzEpLGUuY2hpbGRyZW5bcy5yZWZdPXM7dmFyIHA9e2JvZHk6ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYm9keSIpLG92ZXJsYXk6ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdG9hc3Q6ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdG9hc3RCb2R5OmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRvYXN0VGV4dHM6ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdG9hc3RDYXBzdWxlOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGNvdmVyOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGJ1dHRvbnM6ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksaW5wdXRzOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGljb246cy5pY29uVXJsP2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImkiKSx3cmFwcGVyOm51bGx9O3AudG9hc3Quc2V0QXR0cmlidXRlKCJkYXRhLWl6aVRvYXN0LXJlZiIscy5yZWYpLHAudG9hc3QuYXBwZW5kQ2hpbGQocC50b2FzdEJvZHkpLHAudG9hc3RDYXBzdWxlLmFwcGVuZENoaWxkKHAudG9hc3QpLGZ1bmN0aW9uKCl7aWYocC50b2FzdC5jbGFzc0xpc3QuYWRkKG4pLHAudG9hc3QuY2xhc3NMaXN0LmFkZChuKyItb3BlbmluZyIpLHAudG9hc3RDYXBzdWxlLmNsYXNzTGlzdC5hZGQobisiLWNhcHN1bGUiKSxwLnRvYXN0Qm9keS5jbGFzc0xpc3QuYWRkKG4rIi1ib2R5IikscC50b2FzdFRleHRzLmNsYXNzTGlzdC5hZGQobisiLXRleHRzIiksb3x8d2luZG93LmlubmVyV2lkdGg8PWQ/cy50cmFuc2l0aW9uSW5Nb2JpbGUmJnAudG9hc3QuY2xhc3NMaXN0LmFkZChzLnRyYW5zaXRpb25Jbk1vYmlsZSk6cy50cmFuc2l0aW9uSW4mJnAudG9hc3QuY2xhc3NMaXN0LmFkZChzLnRyYW5zaXRpb25Jbiksc1siY2xhc3MiXSl7dmFyIHQ9c1siY2xhc3MiXS5zcGxpdCgiICIpO20odCxmdW5jdGlvbih0LGUpe3AudG9hc3QuY2xhc3NMaXN0LmFkZCh0KX0pfXMuaWQmJihwLnRvYXN0LmlkPXMuaWQpLHMucnRsJiYocC50b2FzdC5jbGFzc0xpc3QuYWRkKG4rIi1ydGwiKSxwLnRvYXN0LnNldEF0dHJpYnV0ZSgiZGlyIiwicnRsIikpLHMubGF5b3V0PjEmJnAudG9hc3QuY2xhc3NMaXN0LmFkZChuKyItbGF5b3V0IitzLmxheW91dCkscy5iYWxsb29uJiZwLnRvYXN0LmNsYXNzTGlzdC5hZGQobisiLWJhbGxvb24iKSxzLm1heFdpZHRoJiYoaXNOYU4ocy5tYXhXaWR0aCk/cC50b2FzdC5zdHlsZS5tYXhXaWR0aD1zLm1heFdpZHRoOnAudG9hc3Quc3R5bGUubWF4V2lkdGg9cy5tYXhXaWR0aCsicHgiKSwiIj09PXMudGhlbWUmJiJsaWdodCI9PT1zLnRoZW1lfHxwLnRvYXN0LmNsYXNzTGlzdC5hZGQobisiLXRoZW1lLSIrcy50aGVtZSkscy5jb2xvciYmKHkocy5jb2xvcik/cC50b2FzdC5zdHlsZS5iYWNrZ3JvdW5kPXMuY29sb3I6cC50b2FzdC5jbGFzc0xpc3QuYWRkKG4rIi1jb2xvci0iK3MuY29sb3IpKSxzLmJhY2tncm91bmRDb2xvciYmKHAudG9hc3Quc3R5bGUuYmFja2dyb3VuZD1zLmJhY2tncm91bmRDb2xvcixzLmJhbGxvb24mJihwLnRvYXN0LnN0eWxlLmJvcmRlckNvbG9yPXMuYmFja2dyb3VuZENvbG9yKSl9KCksZnVuY3Rpb24oKXtzLmltYWdlJiYocC5jb3Zlci5jbGFzc0xpc3QuYWRkKG4rIi1jb3ZlciIpLHAuY292ZXIuc3R5bGUud2lkdGg9cy5pbWFnZVdpZHRoKyJweCIsaChzLmltYWdlLnJlcGxhY2UoLyAvZywiIikpP3AuY292ZXIuc3R5bGUuYmFja2dyb3VuZEltYWdlPSJ1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LCIrcy5pbWFnZS5yZXBsYWNlKC8gL2csIiIpKyIpIjpwLmNvdmVyLnN0eWxlLmJhY2tncm91bmRJbWFnZT0idXJsKCIrcy5pbWFnZSsiKSIscy5ydGw/cC50b2FzdEJvZHkuc3R5bGUubWFyZ2luUmlnaHQ9cy5pbWFnZVdpZHRoKzEwKyJweCI6cC50b2FzdEJvZHkuc3R5bGUubWFyZ2luTGVmdD1zLmltYWdlV2lkdGgrMTArInB4IixwLnRvYXN0LmFwcGVuZENoaWxkKHAuY292ZXIpKX0oKSxmdW5jdGlvbigpe3MuY2xvc2U/KHAuYnV0dG9uQ2xvc2U9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIikscC5idXR0b25DbG9zZS50eXBlPSJidXR0b24iLHAuYnV0dG9uQ2xvc2UuY2xhc3NMaXN0LmFkZChuKyItY2xvc2UiKSxwLmJ1dHRvbkNsb3NlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXt0LnRhcmdldDtpLmhpZGUocyxwLnRvYXN0LCJidXR0b24iKX0pLHAudG9hc3QuYXBwZW5kQ2hpbGQocC5idXR0b25DbG9zZSkpOnMucnRsP3AudG9hc3Quc3R5bGUucGFkZGluZ0xlZnQ9IjE4cHgiOnAudG9hc3Quc3R5bGUucGFkZGluZ1JpZ2h0PSIxOHB4In0oKSxmdW5jdGlvbigpe3MucHJvZ3Jlc3NCYXImJihwLnByb2dyZXNzQmFyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHAucHJvZ3Jlc3NCYXJEaXY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikscC5wcm9ncmVzc0Jhci5jbGFzc0xpc3QuYWRkKG4rIi1wcm9ncmVzc2JhciIpLHAucHJvZ3Jlc3NCYXJEaXYuc3R5bGUuYmFja2dyb3VuZD1zLnByb2dyZXNzQmFyQ29sb3IscC5wcm9ncmVzc0Jhci5hcHBlbmRDaGlsZChwLnByb2dyZXNzQmFyRGl2KSxwLnRvYXN0LmFwcGVuZENoaWxkKHAucHJvZ3Jlc3NCYXIpKSxzLnRpbWVvdXQmJihzLnBhdXNlT25Ib3ZlciYmIXMucmVzZXRPbkhvdmVyJiYocC50b2FzdC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixmdW5jdGlvbih0KXtpLnByb2dyZXNzKHMscC50b2FzdCkucGF1c2UoKX0pLHAudG9hc3QuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZnVuY3Rpb24odCl7aS5wcm9ncmVzcyhzLHAudG9hc3QpLnJlc3VtZSgpfSkpLHMucmVzZXRPbkhvdmVyJiYocC50b2FzdC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixmdW5jdGlvbih0KXtpLnByb2dyZXNzKHMscC50b2FzdCkucmVzZXQoKX0pLHAudG9hc3QuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZnVuY3Rpb24odCl7aS5wcm9ncmVzcyhzLHAudG9hc3QpLnN0YXJ0KCl9KSkpfSgpLGZ1bmN0aW9uKCl7cy5pY29uVXJsPyhwLmljb24uc2V0QXR0cmlidXRlKCJjbGFzcyIsbisiLWljb24iKSxwLmljb24uc2V0QXR0cmlidXRlKCJzcmMiLHMuaWNvblVybCkpOnMuaWNvbiYmKHAuaWNvbi5zZXRBdHRyaWJ1dGUoImNsYXNzIixuKyItaWNvbiAiK3MuaWNvbikscy5pY29uVGV4dCYmcC5pY29uLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHMuaWNvblRleHQpKSxzLmljb25Db2xvciYmKHAuaWNvbi5zdHlsZS5jb2xvcj1zLmljb25Db2xvcikpLChzLmljb258fHMuaWNvblVybCkmJihzLnJ0bD9wLnRvYXN0Qm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9IjMzcHgiOnAudG9hc3RCb2R5LnN0eWxlLnBhZGRpbmdMZWZ0PSIzM3B4IixwLnRvYXN0Qm9keS5hcHBlbmRDaGlsZChwLmljb24pKX0oKSxmdW5jdGlvbigpe3MudGl0bGUubGVuZ3RoPjAmJihwLnN0cm9uZz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHJvbmciKSxwLnN0cm9uZy5jbGFzc0xpc3QuYWRkKG4rIi10aXRsZSIpLHAuc3Ryb25nLmFwcGVuZENoaWxkKGYocy50aXRsZSkpLHAudG9hc3RUZXh0cy5hcHBlbmRDaGlsZChwLnN0cm9uZykscy50aXRsZUNvbG9yJiYocC5zdHJvbmcuc3R5bGUuY29sb3I9cy50aXRsZUNvbG9yKSxzLnRpdGxlU2l6ZSYmKGlzTmFOKHMudGl0bGVTaXplKT9wLnN0cm9uZy5zdHlsZS5mb250U2l6ZT1zLnRpdGxlU2l6ZTpwLnN0cm9uZy5zdHlsZS5mb250U2l6ZT1zLnRpdGxlU2l6ZSsicHgiKSxzLnRpdGxlTGluZUhlaWdodCYmKGlzTmFOKHMudGl0bGVTaXplKT9wLnN0cm9uZy5zdHlsZS5saW5lSGVpZ2h0PXMudGl0bGVMaW5lSGVpZ2h0OnAuc3Ryb25nLnN0eWxlLmxpbmVIZWlnaHQ9cy50aXRsZUxpbmVIZWlnaHQrInB4IikpLHMubWVzc2FnZS5sZW5ndGg+MCYmKHAucD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIikscC5wLmNsYXNzTGlzdC5hZGQobisiLW1lc3NhZ2UiKSxwLnAuYXBwZW5kQ2hpbGQoZihzLm1lc3NhZ2UpKSxwLnRvYXN0VGV4dHMuYXBwZW5kQ2hpbGQocC5wKSxzLm1lc3NhZ2VDb2xvciYmKHAucC5zdHlsZS5jb2xvcj1zLm1lc3NhZ2VDb2xvcikscy5tZXNzYWdlU2l6ZSYmKGlzTmFOKHMudGl0bGVTaXplKT9wLnAuc3R5bGUuZm9udFNpemU9cy5tZXNzYWdlU2l6ZTpwLnAuc3R5bGUuZm9udFNpemU9cy5tZXNzYWdlU2l6ZSsicHgiKSxzLm1lc3NhZ2VMaW5lSGVpZ2h0JiYoaXNOYU4ocy50aXRsZVNpemUpP3AucC5zdHlsZS5saW5lSGVpZ2h0PXMubWVzc2FnZUxpbmVIZWlnaHQ6cC5wLnN0eWxlLmxpbmVIZWlnaHQ9cy5tZXNzYWdlTGluZUhlaWdodCsicHgiKSkscy50aXRsZS5sZW5ndGg+MCYmcy5tZXNzYWdlLmxlbmd0aD4wJiYocy5ydGw/cC5zdHJvbmcuc3R5bGUubWFyZ2luTGVmdD0iMTBweCI6Mj09PXMubGF5b3V0fHxzLnJ0bHx8KHAuc3Ryb25nLnN0eWxlLm1hcmdpblJpZ2h0PSIxMHB4IikpfSgpLHAudG9hc3RCb2R5LmFwcGVuZENoaWxkKHAudG9hc3RUZXh0cyk7dmFyIEw7IWZ1bmN0aW9uKCl7cy5pbnB1dHMubGVuZ3RoPjAmJihwLmlucHV0cy5jbGFzc0xpc3QuYWRkKG4rIi1pbnB1dHMiKSxtKHMuaW5wdXRzLGZ1bmN0aW9uKHQsZSl7cC5pbnB1dHMuYXBwZW5kQ2hpbGQoZih0WzBdKSksTD1wLmlucHV0cy5jaGlsZE5vZGVzLExbZV0uY2xhc3NMaXN0LmFkZChuKyItaW5wdXRzLWNoaWxkIiksdFszXSYmc2V0VGltZW91dChmdW5jdGlvbigpe0xbZV0uZm9jdXMoKX0sMzAwKSxMW2VdLmFkZEV2ZW50TGlzdGVuZXIodFsxXSxmdW5jdGlvbihlKXt2YXIgbj10WzJdO3JldHVybiBuKGkscC50b2FzdCx0aGlzLGUpfSl9KSxwLnRvYXN0Qm9keS5hcHBlbmRDaGlsZChwLmlucHV0cykpfSgpLGZ1bmN0aW9uKCl7cy5idXR0b25zLmxlbmd0aD4wJiYocC5idXR0b25zLmNsYXNzTGlzdC5hZGQobisiLWJ1dHRvbnMiKSxtKHMuYnV0dG9ucyxmdW5jdGlvbih0LGUpe3AuYnV0dG9ucy5hcHBlbmRDaGlsZChmKHRbMF0pKTt2YXIgbz1wLmJ1dHRvbnMuY2hpbGROb2RlcztvW2VdLmNsYXNzTGlzdC5hZGQobisiLWJ1dHRvbnMtY2hpbGQiKSx0WzJdJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7b1tlXS5mb2N1cygpfSwzMDApLG9bZV0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQoKTt2YXIgbj10WzFdO3JldHVybiBuKGkscC50b2FzdCx0aGlzLGUsTCl9KX0pKSxwLnRvYXN0Qm9keS5hcHBlbmRDaGlsZChwLmJ1dHRvbnMpfSgpLHMubWVzc2FnZS5sZW5ndGg+MCYmKHMuaW5wdXRzLmxlbmd0aD4wfHxzLmJ1dHRvbnMubGVuZ3RoPjApJiYocC5wLnN0eWxlLm1hcmdpbkJvdHRvbT0iMCIpLChzLmlucHV0cy5sZW5ndGg+MHx8cy5idXR0b25zLmxlbmd0aD4wKSYmKHMucnRsP3AudG9hc3RUZXh0cy5zdHlsZS5tYXJnaW5MZWZ0PSIxMHB4IjpwLnRvYXN0VGV4dHMuc3R5bGUubWFyZ2luUmlnaHQ9IjEwcHgiLHMuaW5wdXRzLmxlbmd0aD4wJiZzLmJ1dHRvbnMubGVuZ3RoPjAmJihzLnJ0bD9wLmlucHV0cy5zdHlsZS5tYXJnaW5MZWZ0PSI4cHgiOnAuaW5wdXRzLnN0eWxlLm1hcmdpblJpZ2h0PSI4cHgiKSksZnVuY3Rpb24oKXtwLnRvYXN0Q2Fwc3VsZS5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdD1wLnRvYXN0Lm9mZnNldEhlaWdodCxlPXAudG9hc3QuY3VycmVudFN0eWxlfHx3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLnRvYXN0KSxuPWUubWFyZ2luVG9wO249bi5zcGxpdCgicHgiKSxuPXBhcnNlSW50KG5bMF0pO3ZhciBvPWUubWFyZ2luQm90dG9tO289by5zcGxpdCgicHgiKSxvPXBhcnNlSW50KG9bMF0pLHAudG9hc3RDYXBzdWxlLnN0eWxlLnZpc2liaWxpdHk9IiIscC50b2FzdENhcHN1bGUuc3R5bGUuaGVpZ2h0PXQrbytuKyJweCIsc2V0VGltZW91dChmdW5jdGlvbigpe3AudG9hc3RDYXBzdWxlLnN0eWxlLmhlaWdodD0iYXV0byIscy50YXJnZXQmJihwLnRvYXN0Q2Fwc3VsZS5zdHlsZS5vdmVyZmxvdz0idmlzaWJsZSIpfSw1MDApLHMudGltZW91dCYmaS5wcm9ncmVzcyhzLHAudG9hc3QpLnN0YXJ0KCl9LDEwMCl9KCksZnVuY3Rpb24oKXt2YXIgdD1zLnBvc2l0aW9uO2lmKHMudGFyZ2V0KXAud3JhcHBlcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHMudGFyZ2V0KSxwLndyYXBwZXIuY2xhc3NMaXN0LmFkZChuKyItdGFyZ2V0Iikscy50YXJnZXRGaXJzdD9wLndyYXBwZXIuaW5zZXJ0QmVmb3JlKHAudG9hc3RDYXBzdWxlLHAud3JhcHBlci5maXJzdENoaWxkKTpwLndyYXBwZXIuYXBwZW5kQ2hpbGQocC50b2FzdENhcHN1bGUpO2Vsc2V7aWYoLTE9PXIuaW5kZXhPZihzLnBvc2l0aW9uKSlyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oIlsiK24rIl0gSW5jb3JyZWN0IHBvc2l0aW9uLlxuSXQgY2FuIGJlIOKAuiAiK3IpO3Q9b3x8d2luZG93LmlubmVyV2lkdGg8PWQ/ImJvdHRvbUxlZnQiPT1zLnBvc2l0aW9ufHwiYm90dG9tUmlnaHQiPT1zLnBvc2l0aW9ufHwiYm90dG9tQ2VudGVyIj09cy5wb3NpdGlvbj9uKyItd3JhcHBlci1ib3R0b21DZW50ZXIiOiJ0b3BMZWZ0Ij09cy5wb3NpdGlvbnx8InRvcFJpZ2h0Ij09cy5wb3NpdGlvbnx8InRvcENlbnRlciI9PXMucG9zaXRpb24/bisiLXdyYXBwZXItdG9wQ2VudGVyIjpuKyItd3JhcHBlci1jZW50ZXIiOm4rIi13cmFwcGVyLSIrdCxwLndyYXBwZXI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLiIrbisiLXdyYXBwZXIuIit0KSxwLndyYXBwZXJ8fChwLndyYXBwZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikscC53cmFwcGVyLmNsYXNzTGlzdC5hZGQobisiLXdyYXBwZXIiKSxwLndyYXBwZXIuY2xhc3NMaXN0LmFkZCh0KSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHAud3JhcHBlcikpLCJ0b3BMZWZ0Ij09cy5wb3NpdGlvbnx8InRvcENlbnRlciI9PXMucG9zaXRpb258fCJ0b3BSaWdodCI9PXMucG9zaXRpb24/cC53cmFwcGVyLmluc2VydEJlZm9yZShwLnRvYXN0Q2Fwc3VsZSxwLndyYXBwZXIuZmlyc3RDaGlsZCk6cC53cmFwcGVyLmFwcGVuZENoaWxkKHAudG9hc3RDYXBzdWxlKX1pc05hTihzLnppbmRleCk/Y29uc29sZS53YXJuKCJbIituKyJdIEludmFsaWQgekluZGV4LiIpOnAud3JhcHBlci5zdHlsZS56SW5kZXg9cy56aW5kZXh9KCksZnVuY3Rpb24oKXtzLm92ZXJsYXkmJihudWxsIT09ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLiIrbisiLW92ZXJsYXkuZmFkZUluIik/KHAub3ZlcmxheT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuIituKyItb3ZlcmxheSIpLHAub3ZlcmxheS5zZXRBdHRyaWJ1dGUoImRhdGEtaXppVG9hc3QtcmVmIixwLm92ZXJsYXkuZ2V0QXR0cmlidXRlKCJkYXRhLWl6aVRvYXN0LXJlZiIpKyIsIitzLnJlZiksaXNOYU4ocy56aW5kZXgpfHxudWxsPT09cy56aW5kZXh8fChwLm92ZXJsYXkuc3R5bGUuekluZGV4PXMuemluZGV4LTEpKToocC5vdmVybGF5LmNsYXNzTGlzdC5hZGQobisiLW92ZXJsYXkiKSxwLm92ZXJsYXkuY2xhc3NMaXN0LmFkZCgiZmFkZUluIikscC5vdmVybGF5LnN0eWxlLmJhY2tncm91bmQ9cy5vdmVybGF5Q29sb3IscC5vdmVybGF5LnNldEF0dHJpYnV0ZSgiZGF0YS1pemlUb2FzdC1yZWYiLHMucmVmKSxpc05hTihzLnppbmRleCl8fG51bGw9PT1zLnppbmRleHx8KHAub3ZlcmxheS5zdHlsZS56SW5kZXg9cy56aW5kZXgtMSksZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYm9keSIpLmFwcGVuZENoaWxkKHAub3ZlcmxheSkpLHMub3ZlcmxheUNsb3NlPyhwLm92ZXJsYXkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHt9KSxwLm92ZXJsYXkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe2kuaGlkZShzLHAudG9hc3QsIm92ZXJsYXkiKX0pKTpwLm92ZXJsYXkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHt9KSl9KCksZnVuY3Rpb24oKXtpZihzLmFuaW1hdGVJbnNpZGUpe3AudG9hc3QuY2xhc3NMaXN0LmFkZChuKyItYW5pbWF0ZUluc2lkZSIpO3ZhciB0PVsyMDAsMTAwLDMwMF07ImJvdW5jZUluTGVmdCIhPXMudHJhbnNpdGlvbkluJiYiYm91bmNlSW5SaWdodCIhPXMudHJhbnNpdGlvbklufHwodD1bNDAwLDIwMCw0MDBdKSxzLnRpdGxlLmxlbmd0aD4wJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cC5zdHJvbmcuY2xhc3NMaXN0LmFkZCgic2xpZGVJbiIpfSx0WzBdKSxzLm1lc3NhZ2UubGVuZ3RoPjAmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtwLnAuY2xhc3NMaXN0LmFkZCgic2xpZGVJbiIpfSx0WzFdKSwocy5pY29ufHxzLmljb25VcmwpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cC5pY29uLmNsYXNzTGlzdC5hZGQoInJldmVhbEluIil9LHRbMl0pO3ZhciBlPTE1MDtzLmJ1dHRvbnMubGVuZ3RoPjAmJnAuYnV0dG9ucyYmc2V0VGltZW91dChmdW5jdGlvbigpe20ocC5idXR0b25zLmNoaWxkTm9kZXMsZnVuY3Rpb24odCxuKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5jbGFzc0xpc3QuYWRkKCJyZXZlYWxJbiIpfSxlKSxlKz0xNTB9KX0scy5pbnB1dHMubGVuZ3RoPjA/MTUwOjApLHMuaW5wdXRzLmxlbmd0aD4wJiZwLmlucHV0cyYmKGU9MTUwLG0ocC5pbnB1dHMuY2hpbGROb2RlcyxmdW5jdGlvbih0LG4pe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNsYXNzTGlzdC5hZGQoInJldmVhbEluIil9LGUpLGUrPTE1MH0pKX19KCkscy5vbk9wZW5pbmcuYXBwbHkobnVsbCxbcyxwLnRvYXN0XSk7dHJ5e3ZhciBDPW5ldyBDdXN0b21FdmVudChuKyItb3BlbmluZyIse2RldGFpbDpzLGJ1YmJsZXM6ITAsY2FuY2VsYWJsZTohMH0pO2RvY3VtZW50LmRpc3BhdGNoRXZlbnQoQyl9Y2F0Y2godyl7Y29uc29sZS53YXJuKHcpfXNldFRpbWVvdXQoZnVuY3Rpb24oKXtwLnRvYXN0LmNsYXNzTGlzdC5yZW1vdmUobisiLW9wZW5pbmciKSxwLnRvYXN0LmNsYXNzTGlzdC5hZGQobisiLW9wZW5lZCIpO3RyeXt2YXIgdD1uZXcgQ3VzdG9tRXZlbnQobisiLW9wZW5lZCIse2RldGFpbDpzLGJ1YmJsZXM6ITAsY2FuY2VsYWJsZTohMH0pO2RvY3VtZW50LmRpc3BhdGNoRXZlbnQodCl9Y2F0Y2goZSl7Y29uc29sZS53YXJuKGUpfXMub25PcGVuZWQuYXBwbHkobnVsbCxbcyxwLnRvYXN0XSl9LDFlMykscy5kcmFnJiYoYT8ocC50b2FzdC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbih0KXtiLnN0YXJ0TW92aW5nKHRoaXMsaSxzLHQpfSwhMSkscC50b2FzdC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsZnVuY3Rpb24odCl7Yi5zdG9wTW92aW5nKHRoaXMsdCl9LCExKSk6KHAudG9hc3QuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksYi5zdGFydE1vdmluZyh0aGlzLGkscyx0KX0sITEpLHAudG9hc3QuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLGIuc3RvcE1vdmluZyh0aGlzLHQpfSwhMSkpKSxzLmNsb3NlT25Fc2NhcGUmJmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIixmdW5jdGlvbih0KXt0PXR8fHdpbmRvdy5ldmVudCwyNz09dC5rZXlDb2RlJiZpLmhpZGUocyxwLnRvYXN0LCJlc2MiKX0pLHMuY2xvc2VPbkNsaWNrJiZwLnRvYXN0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpLmhpZGUocyxwLnRvYXN0LCJ0b2FzdCIpfSksaS50b2FzdD1wLnRvYXN0fSxlfSk7"}},"time_used":67,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":66,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"wss","addr":"wss://vsb131.tawk.to/s/?k=6a671f73a074878570f5fc2b\u0026cver=0\u0026pop=false\u0026asver=0\u0026tkn=eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InZpc2l0b3ItYXBwbGljYXRpb24tc2VydmVyLTIwMjEwMjIifQ.eyJwaWQiOiI2N2I0MzAxZjM4MTJmZjE5MTA3Yzc5NDkiLCJ2aWQiOiI2N2I0MzAxZjM4MTJmZjE5MTA3Yzc5NDktT3Jvak5QdFR4bTk2cU9VZDBJQzFEIiwic2lkIjoiNmE2NzFmNzNhMDc0ODc4NTcwZjVmYzJiIiwiaWF0IjoxNzg1MTQzMTU1LCJleHAiOjE3ODUxNDQ5NTUsImp0aSI6Il9sNXZJemtZa2RSY3YwX1dVVXgyTCJ9.0qbxE8CBXL34U7mMZw3S3MZapeJyaAf8WU3uIIzSCQ3F0bYvJdHNFCu1yVvnpR3-Tm7pmUfn-7U5IwDLIH3nwA\u0026EIO=3\u0026transport=websocket\u0026__t=P-YqjgA","fqdn":"vsb131.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.367Z","timestamp":1785143155367,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /s/?k=6a671f73a074878570f5fc2b\u0026cver=0\u0026pop=false\u0026asver=0\u0026tkn=eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InZpc2l0b3ItYXBwbGljYXRpb24tc2VydmVyLTIwMjEwMjIifQ.eyJwaWQiOiI2N2I0MzAxZjM4MTJmZjE5MTA3Yzc5NDkiLCJ2aWQiOiI2N2I0MzAxZjM4MTJmZjE5MTA3Yzc5NDktT3Jvak5QdFR4bTk2cU9VZDBJQzFEIiwic2lkIjoiNmE2NzFmNzNhMDc0ODc4NTcwZjVmYzJiIiwiaWF0IjoxNzg1MTQzMTU1LCJleHAiOjE3ODUxNDQ5NTUsImp0aSI6Il9sNXZJemtZa2RSY3YwX1dVVXgyTCJ9.0qbxE8CBXL34U7mMZw3S3MZapeJyaAf8WU3uIIzSCQ3F0bYvJdHNFCu1yVvnpR3-Tm7pmUfn-7U5IwDLIH3nwA\u0026EIO=3\u0026transport=websocket\u0026__t=P-YqjgA HTTP/1.1\r\nHost: vsb131.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: ehUhm4/Z+CIbLZPaoPqFbQ==\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 09:05:56 GMT\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Accept: QS5Uipgny5EtF0ARtTNn/9quDes=\r\nSec-WebSocket-Extensions: permessage-deflate\r\nStrict-Transport-Security: max-age=0; includeSubDomains; preload\r\ncf-cache-status: DYNAMIC\r\nX-Content-Type-Options: nosniff\r\nServer: cloudflare\r\nCF-RAY: a21a7c315febb4f9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n","headers":null,"cookies":null,"status_code":"101","status_text":"Switching Protocols","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":417,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-03T13:28:06.233495Z","times_seen":17690637,"resource_available":true,"data":""}},"time_used":673,"timings":{"blocked":-1,"dns":37,"connect":11,"send":0,"wait":618,"receive":0,"ssl":7},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/min-widget.css","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.376Z","timestamp":1785143155376,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/css/min-widget.css HTTP/1.1\r\nHost: embed.tawk.to\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\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: text/css\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"af9830eef563b4df395870a483ce549c\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c31197d0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":36092,"size_decoded":8712,"mime_type":"text/css","magic":"ASCII text, with very long lines (36049)","md5":"af9830eef563b4df395870a483ce549c","sha1":"2c678a245c7b8984569447c9bbfe182583ef7e56","sha256":"5d919993a3fe6ec4c27ec6696b643900c02b95584a4a21a518eb8809edf12531","sha512":"16416617f0c79b40d196c1a7df699f1e01a130e3df75a4f437b4adfc04fa666ac7987d080bbfe759b849bd81860e6bab5b2af02356a8814f0dd1fa9a64b726d4","ssdeep":"384:uTTacuVZNgxYe4fbgL3w23U3xi7vxEbXR+ziLwH0Lg26/tFTiBB6TX3DYC8:yeyna+ziLwH0Lg261F2BBCX3DZ8","tlshash":"47f2bef1f4b700c8b363c122c3d5f67c6459b770ca86ce92f427666c49e16a63581abc","first_seen":"2025-05-21T12:18:34.219676Z","last_seen":"2026-08-03T12:50:03.42279Z","times_seen":49036,"resource_available":false,"data":"OnJvb3R7LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7LS10YXdrLWhlYWRlci10ZXh0LWNvbG9yOiNmZmZ9aHRtbHtmb250LWZhbWlseTpMYXRvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNjE4O2xldHRlci1zcGFjaW5nOm5vcm1hbDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMyNDI0MjQ7c2Nyb2xsLWJlaGF2aW9yOnNtb290aH1ib2R5e21hcmdpbjowfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZTpub25lfWE6Zm9jdXN7b3V0bGluZToxcHggc29saWQgIzA2Zn0udGF3ay1saW5rLGF7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stbGluaywudGF3ay1saW5rOmhvdmVyLGEsYTpob3Zlcntjb2xvcjojMDNhODRlO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfTpub3QocHJlKT5jb2RlLDpub3QocHJlKT5rYmQsOm5vdChwcmUpPnNhbXB7Zm9udC1mYW1pbHk6TGF0byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODEycmVtO2NvbG9yOiNiZjEyMTI7d2hpdGUtc3BhY2U6bm93cmFwfWVte2NvbG9yOiNiZjEyMTJ9aW5ze2JhY2tncm91bmQ6I2ZmZDtjb2xvcjojMTIxMjEyfW1hcmt7YmFja2dyb3VuZDpyZ2JhKDEwOSw1NSwyMTgsLjEpO2NvbG9yOiMwM2E4NGV9cXtmb250LXN0eWxlOml0YWxpY31zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1cHt0b3A6LS41ZW19c3Vie2JvdHRvbTouMjVlbX1hdWRpbyxjYW52YXMsaWZyYW1lLGltZyxzdmcsdmlkZW97dmVydGljYWwtYWxpZ246bWlkZGxlfWF1ZGlvLGNhbnZhcyxpbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87Ym94LXNpemluZzpib3JkZXItYm94fXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1pbWc6bm90KFtzcmNdKXt2aXNpYmlsaXR5OmhpZGRlbn1hZGRyZXNzLGRsLGZpZWxkc2V0LGZpZ3VyZSxvbCxwLHByZSx1bHttYXJnaW46MH0qK2FkZHJlc3MsKitkbCwqK2ZpZWxkc2V0LCorZmlndXJlLCorb2wsKitwLCorcHJlLCordWx7bWFyZ2luLXRvcDowfSorLnRhd2staDEsKisudGF3ay1oMiwqKy50YXdrLWgzLCorLnRhd2staDQsKisudGF3ay1oNSwqKy50YXdrLWg2LCoraDEsKitoMiwqK2gzLCoraDQsKitoNSwqK2g2e21hcmdpbi10b3A6MS41cmVtfS50YXdrLWgxLGgxe2ZvbnQtc2l6ZToxLjdyZW07bGluZS1oZWlnaHQ6MS4yfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjI3NXJlbTtsaW5lLWhlaWdodDoxLjM7Zm9udC13ZWlnaHQ6NDAwfS50YXdrLWgzLGgze2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo0MDB9LnRhd2staDQsaDR7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS40fS50YXdrLWg1LGg1e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNH0udGF3ay1oNixoNntmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjR9QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWgxLGgxe2ZvbnQtc2l6ZToycmVtfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjVyZW19fW9sLHVse3BhZGRpbmctbGVmdDoycmVtfW9sPmxpPm9sLG9sPmxpPnVsLHVsPmxpPm9sLHVsPmxpPnVse21hcmdpbi10b3A6MH1kdHtmb250LXdlaWdodDo4MDB9ZGR7bWFyZ2luLWxlZnQ6MH0udGF3ay1ocixocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGU7dGV4dC1hbGlnbjppbmhlcml0O21hcmdpbjowIDAgMXJlbTtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1fSorLnRhd2staHIsKitocnttYXJnaW4tdG9wOjFyZW19LnRhd2staHIudGF3ay1oci1kYXNoZWR7Ym9yZGVyLXN0eWxlOmRhc2hlZH1hZGRyZXNze2ZvbnQtc2l6ZTpub3JtYWx9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtc3R5bGU6aXRhbGljfSorYmxvY2txdW90ZXttYXJnaW4tdG9wOjFyZW19YmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjB9YmxvY2txdW90ZSBmb290ZXJ7bWFyZ2luLXRvcDouNnJlbTtmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjV9cHJle2ZvbnQ6LjgxMnJlbS8xLjUgTGF0byxzYW5zLXNlcmlmO2NvbG9yOiMxMjEyMTI7LW1vei10YWItc2l6ZTo0Oy1vLXRhYi1zaXplOjQ7dGFiLXNpemU6NDtvdmVyZmxvdzphdXRvfXByZSBjb2Rle2ZvbnQtZmFtaWx5OkxhdG8sc2Fucy1zZXJpZn06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6IzAzYTg0ZTtjb2xvcjojZmZmO3RleHQtc2hhZG93Om5vbmV9OjpzZWxlY3Rpb257YmFja2dyb3VuZDojMDNhODRlO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6bm9uZX1kZXRhaWxzLG1haW57ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1pZnJhbWV7Ym9yZGVyOjB9LnRhd2stZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS50YXdrLWZsZXgtaW5saW5le2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9LnRhd2stZmxleC1pbmxpbmU6YWZ0ZXIsLnRhd2stZmxleC1pbmxpbmU6YmVmb3JlLC50YXdrLWZsZXg6YWZ0ZXIsLnRhd2stZmxleDpiZWZvcmV7ZGlzcGxheTpub25lfS50YXdrLWZsZXgtbGVmdHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay1mbGV4LWxlZnRcQHN7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAc3stbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQHN7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAc3stbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHN7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtbGVmdFxAbXstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBtey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbXstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBtey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbXstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLWZsZXgtbGVmdFxAbHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBsey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBsey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLWZsZXgtbGVmdFxAeGx7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAeGx7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1mbGV4LXJpZ2h0XEB4bHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEB4bHstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHhsey1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfX0udGF3ay1mbGV4LXN0cmV0Y2h7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS50YXdrLWZsZXgtdG9wey1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnRhd2stZmxleC1taWRkbGV7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0udGF3ay1mbGV4LWJvdHRvbXstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9LnRhd2stZmxleC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnRhd2stZmxleC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LnRhd2stZmxleC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnRhd2stZmxleC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9LnRhd2stZmxleC1ub3dyYXB7LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0udGF3ay1mbGV4LXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS50YXdrLWZsZXgtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9LnRhd2stZmxleC13cmFwLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2g7YWxpZ24tY29udGVudDpzdHJldGNofS50YXdrLWZsZXgtd3JhcC10b3B7LW1zLWZsZXgtbGluZS1wYWNrOnN0YXJ0O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LXdyYXAtbWlkZGxley1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC13cmFwLWJvdHRvbXstbXMtZmxleC1saW5lLXBhY2s6ZW5kO2FsaWduLWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC13cmFwLWJldHdlZW57LW1zLWZsZXgtbGluZS1wYWNrOmp1c3RpZnk7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtd3JhcC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9LnRhd2stZmxleC1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3R7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NDBweCl7LnRhd2stZmxleC1maXJzdFxAc3stbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHN7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtZmlyc3RcQG17LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBtey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCl7LnRhd2stZmxleC1maXJzdFxAbHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQGx7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsudGF3ay1mbGV4LWZpcnN0XEB4bHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHhsey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX0udGF3ay1mbGV4LW5vbmV7LW1zLWZsZXg6bm9uZTtmbGV4Om5vbmV9LnRhd2stZmxleC1hdXRvey1tcy1mbGV4OmF1dG87ZmxleDphdXRvfS50YXdrLWZsZXgtMXstbXMtZmxleDoxO2ZsZXg6MX0udGF3ay1tYXJnaW57bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLC50YXdrLW1hcmdpbi10b3B7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1ib3R0b217bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sZWZ0e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbHttYXJnaW4tYm90dG9tOi42cmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14c21hbGwsLnRhd2stbWFyZ2luLXhzbWFsbC10b3B7bWFyZ2luLXRvcDouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b217bWFyZ2luLWJvdHRvbTouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0e21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tc21hbGx7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi1zbWFsbCwudGF3ay1tYXJnaW4tc21hbGwtdG9we21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXNtYWxsLWJvdHRvbXttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1sZWZ0e21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLXNtYWxsLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcnRsIC50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLW1lZGl1bSwudGF3ay1tYXJnaW4tbWVkaXVtLXRvcHttYXJnaW4tdG9wOjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1tZWRpdW0tYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbWVkaXVtLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1tZWRpdW0tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLWxhcmdlLC50YXdrLW1hcmdpbi1sYXJnZS10b3B7bWFyZ2luLXRvcDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbGFyZ2UtYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4tbGFyZ2UsLnRhd2stbWFyZ2luLWxhcmdlLXRvcHttYXJnaW4tdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoyLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXhsYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4teGxhcmdlLC50YXdrLW1hcmdpbi14bGFyZ2UtdG9we21hcmdpbi10b3A6Mi41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi14bGFyZ2V7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14bGFyZ2UsLnRhd2stbWFyZ2luLXhsYXJnZS10b3B7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXJlbW92ZXttYXJnaW46MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS10b3B7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWJvdHRvbXttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDowIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS1yaWdodHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLXZlcnRpY2Fse21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWFkamFjZW50Kyp7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tdG9we21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tYm90dG9te21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLWxlZnR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0by12ZXJ0aWNhbHttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stcGFkZGluZ3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctdG9we3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGVmdHtwYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1ib3R0b217cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yaWdodHtwYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay1wYWRkaW5ne3BhZGRpbmc6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy10b3B7cGFkZGluZy10b3A6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sZWZ0e3BhZGRpbmctbGVmdDoycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWJvdHRvbXtwYWRkaW5nLWJvdHRvbToycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MnJlbSFpbXBvcnRhbnR9fS50YXdrLXBhZGRpbmctc21hbGx7cGFkZGluZzouNnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1zbWFsbC10b3B7cGFkZGluZy10b3A6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtbGVmdHtwYWRkaW5nLWxlZnQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtYm90dG9te3BhZGRpbmctYm90dG9tOi42cmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXNtYWxsLXJpZ2h0e3BhZGRpbmctcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLXRvcHtwYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLWxlZnR7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtcmlnaHR7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtdG9we3BhZGRpbmctdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1sZWZ0e3BhZGRpbmctbGVmdDoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1yaWdodHtwYWRkaW5nLXRvcDoyLjVyZW0haW1wb3J0YW50fX0udGF3ay1wYWRkaW5nLXJlbW92ZXtwYWRkaW5nOjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXRvcHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ib3R0b217cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yZW1vdmUtbGVmdHtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1sZWZ0e3BhZGRpbmctbGVmdDphdXRvIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1yaWdodHtwYWRkaW5nLXJpZ2h0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFse3BhZGRpbmctbGVmdDowIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXRleHQtcmVndWxhci0xe2ZvbnQtc2l6ZTouNzVyZW19LnRhd2stdGV4dC1yZWd1bGFyLTEsLnRhd2stdGV4dC1yZWd1bGFyLTJ7bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1yZWd1bGFyLTJ7Zm9udC1zaXplOi44MTJyZW19LnRhd2stdGV4dC1yZWd1bGFyLTN7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTEsLnRhd2stdGV4dC1yZWd1bGFyLTR7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTJ7Zm9udC1zaXplOjEuMjVyZW19LnRhd2stdGV4dC1ib2xkLTIsLnRhd2stdGV4dC1ib2xkLTN7bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtYm9sZC0ze2ZvbnQtc2l6ZToxLjVyZW19LnRhd2stdGV4dC1ib2xkLTR7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtZ3JlZW4tMXtjb2xvcjojMDNhODRlIWltcG9ydGFudH0udGF3ay10ZXh0LXllbGxvdy0xe2NvbG9yOiNmZGMyMGYhaW1wb3J0YW50fS50YXdrLXRleHQtcmVkLTF7Y29sb3I6I2JmMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTB7Y29sb3I6IzI0MjQyNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTF7Y29sb3I6IzEyMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTJ7Y29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTN7Y29sb3I6IzU0NTQ1NCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTR7Y29sb3I6IzZlNmU2ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTV7Y29sb3I6IzgyODI4MiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTZ7Y29sb3I6I2IyYjJiMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTd7Y29sb3I6I2Q0ZDRkNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTh7Y29sb3I6I2U1ZTVlNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTl7Y29sb3I6I2Y1ZjVmNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTEwe2NvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS50YXdrLXRleHQtd2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ib2xke2ZvbnQtd2VpZ2h0OjYwMH0udGF3ay10ZXh0LWl0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGF3ay10ZXh0LW9ibGlxdWV7Zm9udC1zdHlsZTpvYmxpcXVlfS50YXdrLXRleHQtdW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stdGV4dC11cHBlcmNhc2V7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1sb3dlcmNhc2V7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGF3ay10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay10ZXh0LWxlZnRcQHN7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBzLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBze3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAc3t0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBze3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCl7LnRhd2stdGV4dC1sZWZ0XEBte3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1yaWdodFxAbSxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAbXt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLXRleHQtcmlnaHRcQG17dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LWNlbnRlclxAbXt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay10ZXh0LWxlZnRcQGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBsLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBse3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAbHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBse3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEB4bCxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEB4bHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEB4bHt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fS50YXdrLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRvcCFpbXBvcnRhbnR9LnRhd2stdGV4dC1taWRkbGV7dmVydGljYWwtYWxpZ246bWlkZGxlIWltcG9ydGFudH0udGF3ay10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS50YXdrLXRleHQtYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS50YXdrLXRleHQtbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1ib3gtc2hhZG93LXhzbWFsbHtib3gtc2hhZG93OjAgMnB4IDNweCByZ2JhKDAsMCwwLC4wOCl9LnRhd2stYm94LXNoYWRvdy1zbWFsbHtib3gtc2hhZG93OjAgMnB4IDhweCByZ2JhKDAsMCwwLC4xKX0udGF3ay1ib3gtc2hhZG93LW1lZGl1bXtib3gtc2hhZG93OjAgNXB4IDE1cHggcmdiYSgwLDAsMCwuMTIpfS50YXdrLWJveC1zaGFkb3ctbGFyZ2V7Ym94LXNoYWRvdzowIDE0cHggMjVweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stYm94LXNoYWRvdy14bGFyZ2V7Ym94LXNoYWRvdzowIDI4cHggNTBweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stdGV4dC10cnVuY2F0ZXttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS50YXdrLWZsb2F0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stZmxvYXQtbGVmdHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1mbG9hdC1yaWdodHtmbG9hdDpsZWZ0IWltcG9ydGFudH0udGF3ay1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YXdrLW91dGxpbmU6Zm9jdXMtdmlzaWJsZXtib3JkZXI6MXB4IHNvbGlkICMwNmYhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KSFpbXBvcnRhbnR9LnRhd2staW1hZ2V7bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWltYWdlLWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50YXdrLWltYWdlLXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnRhd2staW1hZ2UtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50YXdrLWltYWdlLWxvYWRlciwudGF3ay1pbWFnZS1sb2FkZXI6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7d2lkdGg6MS4yNXJlbTtoZWlnaHQ6MS4yNXJlbX0udGF3ay1pbWFnZS1sb2FkZXJ7bWFyZ2luOjEuMjVyZW0gYXV0bztmb250LXNpemU6LjYyNXJlbTtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWluZGVudDotOTk5OXJlbTtib3JkZXI6NXB4IHNvbGlkICMyMTIxMjE7Ym9yZGVyLWxlZnQtY29sb3I6IzU0NTQ1NDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTthbmltYXRpb246bG9hZDggMS4xcyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBsb2FkOHswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0udGF3ay1iYWRnZXtoZWlnaHQ6MS4yNXJlbTt3aWR0aDoxLjI1cmVtO2ZvbnQtc2l6ZTouNjg3cmVtO2xpbmUtaGVpZ2h0OjEuMjVyZW07YmFja2dyb3VuZDojYmYxMjEyO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czo1MCV9LnRhd2stYmFkZ2UsLnRhd2stYnV0dG9ue2JveC1zaXppbmc6Ym9yZGVyLWJveDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7dGV4dC1hbGlnbjpjZW50ZXJ9LnRhd2stYnV0dG9ue21hcmdpbjowO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbjtmb250OmluaGVyaXQ7Y29sb3I6aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTpub25lO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6LjZyZW0gMXJlbTtmb250LXNpemU6MXJlbTtib3JkZXI6MXB4IHNvbGlkICMwM2E4NGU7Ym9yZGVyLWNvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpO2xpbmUtaGVpZ2h0OjEuNXJlbTt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWJ1dHRvbjpub3QoLnRhd2stYnV0dG9uLXRleHQpe2JveC1zaGFkb3c6MCA0cHggNHB4IDAgaHNsYSgwLDAlLDUxJSwuMDgpfS50YXdrLWJ1dHRvbjpub3QoOmRpc2FibGVkKXtjdXJzb3I6cG9pbnRlcn0udGF3ay1idXR0b246ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkO29wYWNpdHk6Ljd9LnRhd2stYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlcjowO3BhZGRpbmc6MH0udGF3ay1idXR0b246aG92ZXIsYS50YXdrLWJ1dHRvbjpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX1hLnRhd2stYnV0dG9uOmhvdmVye2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stYnV0dG9uOmZvY3VzLXZpc2libGV7Ym9yZGVyOjFweCBzb2xpZCAjMDZmO2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KX0udGF3ay1idXR0b246YWN0aXZlLC50YXdrLWJ1dHRvbjpmb2N1cy12aXNpYmxle291dGxpbmU6MDstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LnRhd2stYnV0dG9uLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMDNhODRlO2NvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDNhODRlfS50YXdrLWJ1dHRvbi1kYW5nZXJ7YmFja2dyb3VuZC1jb2xvcjojZjA1MDVjO2NvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZjA1MDVjfS50YXdrLWJ1dHRvbi1vdXRsaW5lLGEudGF3ay1idXR0b24tb3V0bGluZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtjb2xvcjojMDNhODRlO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpO2JvcmRlci1jb2xvcjojMDNhODRlO2JvcmRlci1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1idXR0b24tb3V0bGluZTpob3Zlcntjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLWJ1dHRvbi1vdXRsaW5lLXN1Y2Nlc3N7Y29sb3I6IzAzYTg0ZTtib3JkZXI6MS41cHggc29saWQgIzAzYTg0ZX0udGF3ay1idXR0b24tb3V0bGluZS1kYW5nZXJ7Y29sb3I6I2YwNTA1Yztib3JkZXI6MS41cHggc29saWQgI2YwNTA1Y30udGF3ay1idXR0b24tZGFzaGVke2JvcmRlci1zdHlsZTpkYXNoZWQ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwM2E4NGU7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stYnV0dG9uLXNtYWxse3BhZGRpbmc6LjI1cmVtIDFyZW07bGluZS1oZWlnaHQ6MS41cmVtO2ZvbnQtc2l6ZTouODEycmVtfS50YXdrLWJ1dHRvbi1sYXJnZXtwYWRkaW5nOjFyZW0gMnJlbTtsaW5lLWhlaWdodDoxLjVyZW07Zm9udC1zaXplOi45MzdyZW19LnRhd2stYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoyLjVyZW19LnRhd2stYnV0dG9uLXNtYWxsLnRhd2stYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxLjg3NXJlbX0udGF3ay1idXR0b24tbGFyZ2UudGF3ay1idXR0b24tcm91bmRlZHtib3JkZXItcmFkaXVzOjIuNXJlbX0udGF3ay1idXR0b24tdGV4dHtwYWRkaW5nOjA7bGluZS1oZWlnaHQ6MS42MTg7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lfS50YXdrLWJ1dHRvbi10ZXh0LC50YXdrLWJ1dHRvbi10ZXh0OmZvY3VzLXZpc2libGUsLnRhd2stYnV0dG9uLXRleHQ6aG92ZXJ7Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1idXR0b24tdGV4dDphY3RpdmUsLnRhd2stYnV0dG9uLXRleHQ6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50YXdrLWJ1dHRvbi10ZXh0OmRpc2FibGVke2NvbG9yOiMyMTIxMjEhaW1wb3J0YW50O2N1cnNvcjpub3QtYWxsb3dlZDtvdXRsaW5lOm5vbmV9LnRhd2stYnV0dG9uLWdyb3Vwe2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7dmVydGljYWwtYWxpZ246bWlkZGxlO3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLWJ1dHRvbi1jaXJjbGV7aGVpZ2h0OjIuNXJlbTt3aWR0aDoyLjVyZW07bGluZS1oZWlnaHQ6Mi41cmVtO3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOjEwMCV9LnRhd2stYnV0dG9uLWNpcmNsZS50YXdrLWJ1dHRvbi1zbWFsbHtoZWlnaHQ6MS42MjVyZW07d2lkdGg6MS42MjVyZW07bGluZS1oZWlnaHQ6MS42MjVyZW19LnRhd2stYnV0dG9uLWNpcmNsZS50YXdrLWJ1dHRvbi1sYXJnZXtoZWlnaHQ6My43NXJlbTt3aWR0aDozLjc1cmVtO2xpbmUtaGVpZ2h0OjMuNzVyZW19LnRhd2stYnV0dG9uLWRhc2hlZCAudGF3ay1idXR0b24tY29sb3ItaW52ZXJzZSwudGF3ay1idXR0b24tb3V0bGluZSAudGF3ay1idXR0b24tY29sb3ItaW52ZXJzZXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpO2JvcmRlci1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay1idXR0b24tdGV4dC50YXdrLWJ1dHRvbi1jb2xvci1pbnZlcnNlLC50YXdrLWJ1dHRvbi10ZXh0LnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2U6Zm9jdXMsLnRhd2stYnV0dG9uLXRleHQudGF3ay1idXR0b24tY29sb3ItaW52ZXJzZTpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6dGF3ay1mb250LWljb247c3JjOnVybCgvZm9udHMvdGF3ay1mb250LWljb24tMy53b2ZmPzU1NzU1NzI4KSBmb3JtYXQoIndvZmYiKSx1cmwoL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMudHRmPzU1NzU1NzI4KSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC9mb250cy90YXdrLWZvbnQtaWNvbi0zLnN2Zz81NTc1NTcyOCN0YXdrLWZvbnQtaWNvbikgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC1kaXNwbGF5OnN3YXB9LnRhd2staWNvbntmb250LWZhbWlseTp0YXdrLWZvbnQtaWNvbjtmb250LXNpemU6MS4xMjVyZW07Y29sb3I6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXN0eWxlOm5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MCAuMmVtO3dpZHRoOjFlbTt0ZXh0LWFsaWduOmNlbnRlcn1ib2R5LnRhd2stcnRsIC50YXdrLWljb257dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnRhd2staWNvbi14c21hbGx7Zm9udC1zaXplOi43NXJlbX0udGF3ay1pY29uLXNtYWxse2ZvbnQtc2l6ZTouODEycmVtfS50YXdrLWljb24tbWVkaXVte2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWljb24tbGFyZ2V7Zm9udC1zaXplOjEuMjVyZW19LnRhd2staWNvbi14bGFyZ2V7Zm9udC1zaXplOjEuNXJlbX0udGF3ay1pY29uLXh4bGFyZ2V7Zm9udC1zaXplOjJyZW19LnRhd2staWNvbi1sYXllcnMxOmJlZm9yZXtjb250ZW50OiJcZTkwMCJ9LnRhd2staWNvbi1iYW46YmVmb3Jle2NvbnRlbnQ6IlxlOTAxIn0udGF3ay1pY29uLWNoZWNrLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDIifS50YXdrLWljb24tY2xvc2UtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkwMyJ9LnRhd2staWNvbi1oZWxwLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDQifS50YXdrLWljb24tZGV0YWlsczpiZWZvcmV7Y29udGVudDoiXGU5MDUifS50YXdrLWljb24td2FybmluZy10cmlhbmdsZTpiZWZvcmV7Y29udGVudDoiXGU5MDYifS50YXdrLWljb24tc2F2ZTpiZWZvcmV7Y29udGVudDoiXGU5MDcifS50YXdrLWljb24tdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOTA4In0udGF3ay1pY29uLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOTA5In0udGF3ay1pY29uLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZTkwYSJ9LnRhd2staWNvbi1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU5MGIifS50YXdrLWljb24teDpiZWZvcmV7Y29udGVudDoiXGU5MGMifS50YXdrLWljb24tYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5MGQifS50YXdrLWljb24tYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTBlIn0udGF3ay1pY29uLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZTkwZiJ9LnRhd2staWNvbi1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZTkxMCJ9LnRhd2staWNvbi1tb3JlLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTkxMSJ9LnRhd2staWNvbi1tZW51OmJlZm9yZXtjb250ZW50OiJcZTkxMiJ9LnRhd2staWNvbi1ob21lOmJlZm9yZXtjb250ZW50OiJcZTkxMyJ9LnRhd2staWNvbi1pbmJveDpiZWZvcmV7Y29udGVudDoiXGU5MTQifS50YXdrLWljb24tY29udGFjdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTE1In0udGF3ay1pY29uLWFkZE9uczpiZWZvcmV7Y29udGVudDoiXGU5MTYifS50YXdrLWljb24ta25vd2xlZGdlLWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTE3In0udGF3ay1pY29uLXNldHRpbmdzOmJlZm9yZXtjb250ZW50OiJcZTkxOCJ9LnRhd2staWNvbi1tb25pdG9yaW5nOmJlZm9yZXtjb250ZW50OiJcZTkxOSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZTpiZWZvcmV7Y29udGVudDoiXGU5MWEifS50YXdrLWljb24tc2VhcmNoOmJlZm9yZXtjb250ZW50OiJcZTkxYiJ9LnRhd2staWNvbi1ncm91cC1pbmNvbWluZy1jaGF0czpiZWZvcmV7Y29udGVudDoiXGU5MWMifS50YXdrLWljb24tYXNzaWduZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTFkIn0udGF3ay1pY29uLWZpbHRlci1saW5lOmJlZm9yZXtjb250ZW50OiJcZTkxZSJ9LnRhd2staWNvbi1maWx0ZXItZnVubmVsOmJlZm9yZXtjb250ZW50OiJcZTkxZiJ9LnRhd2staWNvbi1ub3RpZmljYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTIwIn0udGF3ay1pY29uLWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTkyMSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZS13LWRvdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTIyIn0udGF3ay1pY29uLWNhbGw6YmVmb3Jle2NvbnRlbnQ6IlxlOTIzIn0udGF3ay1pY29uLWVudmVsb3BlOmJlZm9yZXtjb250ZW50OiJcZTkyNCJ9LnRhd2staWNvbi1kcmFmdDpiZWZvcmV7Y29udGVudDoiXGU5MjUifS50YXdrLWljb24tc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5MjYifS50YXdrLWljb24tc2VnbWVudDpiZWZvcmV7Y29udGVudDoiXGU5MjcifS50YXdrLWljb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkyOCJ9LnRhd2staWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTI5In0udGF3ay1pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTJhIn0udGF3ay1pY29uLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTJiIn0udGF3ay1pY29uLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGU5MmMifS50YXdrLWljb24tcG9wb3V0OmJlZm9yZXtjb250ZW50OiJcZTkyZCJ9LnRhd2staWNvbi1tZXJnZS1pbjpiZWZvcmV7Y29udGVudDoiXGU5MmUifS50YXdrLWljb24taW1wb3J0OmJlZm9yZXtjb250ZW50OiJcZTkyZiJ9LnRhd2staWNvbi1leHBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTMwIn0udGF3ay1pY29uLXRodW1icy11cDpiZWZvcmV7Y29udGVudDoiXGU5MzEifS50YXdrLWljb24tdGh1bWJzLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTMyIn0udGF3ay1pY29uLXNvcnQtYXNjZW5kaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzMyJ9LnRhd2staWNvbi1zb3J0LWRlc2NlbmRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlOTM0In0udGF3ay1pY29uLWNvbHVtbi1zZXR0aW5nczpiZWZvcmV7Y29udGVudDoiXGU5MzUifS50YXdrLWljb24tY2FsbC1pbmdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNiJ9LnRhd2staWNvbi1jYWxsLW91dGdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNyJ9LnRhd2staWNvbi11c2VyLWRldGFpbHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTM4In0udGF3ay1pY29uLXNob3J0Y3V0OmJlZm9yZXtjb250ZW50OiJcZTkzOSJ9LnRhd2staWNvbi1oaXN0b3J5OmJlZm9yZXtjb250ZW50OiJcZTkzYSJ9LnRhd2staWNvbi1zaG9wcGluZy1iYWc6YmVmb3Jle2NvbnRlbnQ6IlxlOTNiIn0udGF3ay1pY29uLXNob3BpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlOTNjIn0udGF3ay1pY29uLWdyb3VwLWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTNkIn0udGF3ay1pY29uLXRhZzpiZWZvcmV7Y29udGVudDoiXGU5M2UifS50YXdrLWljb24tdXNlcjpiZWZvcmV7Y29udGVudDoiXGU5M2YifS50YXdrLWljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQwIn0udGF3ay1pY29uLW5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQxIn0udGF3ay1pY29uLWVkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQyIn0udGF3ay1pY29uLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZTk0MyJ9LnRhd2staWNvbi1vcmdhbml6YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ0In0udGF3ay1pY29uLXRyYW5zY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQ1In0udGF3ay1pY29uLXByaW50OmJlZm9yZXtjb250ZW50OiJcZTk0NiJ9LnRhd2staWNvbi1leWUtaGlkZTpiZWZvcmV7Y29udGVudDoiXGU5NDcifS50YXdrLWljb24td2hpc3BlcjpiZWZvcmV7Y29udGVudDoiXGU5NDgifS50YXdrLWljb24tam9pbi1jb252ZXJzYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ5In0udGF3ay1pY29uLW1lc3NhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTRhIn0udGF3ay1pY29uLXRleHQtZm9ybWF0dGluZy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk0YiJ9LnRhd2staWNvbi10ZXh0LWZvcm1hdHRpbmctc2hvdzpiZWZvcmV7Y29udGVudDoiXGU5NGMifS50YXdrLWljb24tZW1vamk6YmVmb3Jle2NvbnRlbnQ6IlxlOTRkIn0udGF3ay1pY29uLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTRlIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb246YmVmb3Jle2NvbnRlbnQ6IlxlOTRmIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb2ZmOmJlZm9yZXtjb250ZW50OiJcZTk1MCJ9LnRhd2staWNvbi1zaGFyZS1zY3JlZW46YmVmb3Jle2NvbnRlbnQ6IlxlOTUxIn0udGF3ay1pY29uLXNlbmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUyIn0udGF3ay1pY29uLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUzIn0udGF3ay1pY29uLWl0YWxpY3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTU0In0udGF3ay1pY29uLXVuZGVybGluZTpiZWZvcmV7Y29udGVudDoiXGU5NTUifS50YXdrLWljb24tY2FwaXRhbGl6ZTpiZWZvcmV7Y29udGVudDoiXGU5NTYifS50YXdrLWljb24tZXllOmJlZm9yZXtjb250ZW50OiJcZTk1NyJ9LnRhd2staWNvbi1zdHJpa2V0aHJvdWdoOmJlZm9yZXtjb250ZW50OiJcZTk1OCJ9LnRhd2staWNvbi1idWxsZXQtcG9pbnRzOmJlZm9yZXtjb250ZW50OiJcZTk1OSJ9LnRhd2staWNvbi1saW5rOmJlZm9yZXtjb250ZW50OiJcZTk1YSJ9LnRhd2staWNvbi1hcmNoaXZlOmJlZm9yZXtjb250ZW50OiJcZTk1YiJ9LnRhd2staWNvbi11bnJlYWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVjIn0udGF3ay1pY29uLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZTk1ZCJ9LnRhd2staWNvbi1tb3ZlLXRvOmJlZm9yZXtjb250ZW50OiJcZTk1ZSJ9LnRhd2staWNvbi1mb3J3YXJkLWFzLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVmIn0udGF3ay1pY29uLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlOTYwIn0udGF3ay1pY29uLXVubG9jazpiZWZvcmV7Y29udGVudDoiXGU5NjEifS50YXdrLWljb24tcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOTYyIn0udGF3ay1pY29uLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGU5NjMifS50YXdrLWljb24tdGV4dC1hcmVhOmJlZm9yZXtjb250ZW50OiJcZTk2NCJ9LnRhd2staWNvbi1zaHVmZmxlOmJlZm9yZXtjb250ZW50OiJcZTk2NSJ9LnRhd2staWNvbi1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTY2In0udGF3ay1pY29uLWFkZC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTY3In0udGF3ay1pY29uLWNoYW5nZS1hc3NpZ25lZTpiZWZvcmV7Y29udGVudDoiXGU5NjgifS50YXdrLWljb24tZmxhZzpiZWZvcmV7Y29udGVudDoiXGU5NjkifS50YXdrLWljb24td2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZTk2YSJ9LnRhd2staWNvbi1yZWZyZXNoOmJlZm9yZXtjb250ZW50OiJcZTk2YiJ9LnRhd2staWNvbi1yZXBvcnRzOmJlZm9yZXtjb250ZW50OiJcZTk2YyJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTk2ZCJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU5NmUifS50YXdrLWljb24tZG91YmxlLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTZmIn0udGF3ay1pY29uLWRvdWJsZS1jaGV2cm9uLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTcwIn0udGF3ay1pY29uLWxvY2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk3MSJ9LnRhd2staWNvbi1hZGQtbm90ZTpiZWZvcmV7Y29udGVudDoiXGU5NzIifS50YXdrLWljb24tYWdlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTczIn0udGF3ay1pY29uLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTc0In0udGF3ay1pY29uLWN1c3RvbS1maWVsZDpiZWZvcmV7Y29udGVudDoiXGU5NzUifS50YXdrLWljb24tYnJvd3NlcjpiZWZvcmV7Y29udGVudDoiXGU5NzYifS50YXdrLWljb24tbWluZTpiZWZvcmV7Y29udGVudDoiXGU5NzcifS50YXdrLWljb24tYWxsOmJlZm9yZXtjb250ZW50OiJcZTk3OCJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk3OSJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1zaG93OmJlZm9yZXtjb250ZW50OiJcZTk3YSJ9LnRhd2staWNvbi1tZWdhcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTdiIn0udGF3ay1pY29uLW5hdmlnYXRlOmJlZm9yZXtjb250ZW50OiJcZTk3YyJ9LnRhd2staWNvbi1jYWxlbmRhcjpiZWZvcmV7Y29udGVudDoiXGU5N2QifS50YXdrLWljb24tY2FsZW5kYXItc2VlbjpiZWZvcmV7Y29udGVudDoiXGU5N2UifS50YXdrLWljb24td2ViLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOTdmIn0udGF3ay1pY29uLWlwLWFkZHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTgwIn0udGF3ay1pY29uLWNvbXB1dGVyOmJlZm9yZXtjb250ZW50OiJcZTk4MSJ9LnRhd2staWNvbi1kYXRhYmFzZTpiZWZvcmV7Y29udGVudDoiXGU5ODIifS50YXdrLWljb24td2ViLXBhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTgzIn0udGF3ay1pY29uLXdlYi12aWV3OmJlZm9yZXtjb250ZW50OiJcZTk4NCJ9LnRhd2staWNvbi13ZWItdGltZS1zcGVudDpiZWZvcmV7Y29udGVudDoiXGU5ODUifS50YXdrLWljb24tcmVzdG9yZTpiZWZvcmV7Y29udGVudDoiXGU5ODYifS50YXdrLWljb24tY29weTpiZWZvcmV7Y29udGVudDoiXGU5ODcifS50YXdrLWljb24tZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTg4In0udGF3ay1pY29uLXJlc2l6ZS1sZWZ0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTk4OSJ9LnRhd2staWNvbi1yZXNpemUtdXAtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5OGEifS50YXdrLWljb24tbWF4aW1pc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOThiIn0udGF3ay1pY29uLW1pbmltaXNlOmJlZm9yZXtjb250ZW50OiJcZTk4YyJ9LnRhd2staWNvbi1wdXJnZTpiZWZvcmV7Y29udGVudDoiXGU5OGQifS50YXdrLWljb24tY2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZTk4ZSJ9LnRhd2staWNvbi12aXNpdG9yOmJlZm9yZXtjb250ZW50OiJcZTk4ZiJ9LnRhd2staWNvbi1uZXctaGlyZTpiZWZvcmV7Y29udGVudDoiXGU5OTAifS50YXdrLWljb24tcGluOmJlZm9yZXtjb250ZW50OiJcZTk5MSJ9LnRhd2staWNvbi1sZWFkZXJib2FyZDpiZWZvcmV7Y29udGVudDoiXGU5OTIifS50YXdrLWljb24tc3RhcjpiZWZvcmV7Y29udGVudDoiXGU5OTMifS50YXdrLWljb24tdmlkZW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTQifS50YXdrLWljb24tYXVkaW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTUifS50YXdrLWljb24tY3N2LWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk2In0udGF3ay1pY29uLXBkZi1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5NyJ9LnRhd2staWNvbi1kb2MtZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTgifS50YXdrLWljb24tdGV4dC1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5OSJ9LnRhd2staWNvbi1nZW5lcmljLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlhIn0udGF3ay1pY29uLXNwbGl0LXZpZXctc2luZ2xlOmJlZm9yZXtjb250ZW50OiJcZTk5YiJ9LnRhd2staWNvbi1zcGxpdC12aWV3LWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGU5OWMifS50YXdrLWljb24tc3BsaXQtdmlldy10cmlwbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlkIn0udGF3ay1pY29uLXNwbGl0LXZpZXctcXVhZHJ1cGxlOmJlZm9yZXtjb250ZW50OiJcZTk5ZSJ9LnRhd2staWNvbi10aW1lbGluZTpiZWZvcmV7Y29udGVudDoiXGU5OWYifS50YXdrLWljb24tY29udGFjdC1hdHRyaWJ1dGVzOmJlZm9yZXtjb250ZW50OiJcZTlhMCJ9LnRhd2staWNvbi1jb252ZXJ0ZWQtdGlja2V0OmJlZm9yZXtjb250ZW50OiJcZTlhMSJ9LnRhd2staWNvbi10cmVuZC11cDpiZWZvcmV7Y29udGVudDoiXGU5YTIifS50YXdrLWljb24tdHJlbmQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5YTMifS50YXdrLWljb24tb25nb2luZy1jYWxsOmJlZm9yZXtjb250ZW50OiJcZTlhNCJ9LnRhd2staWNvbi1jYXRlZ29yeTpiZWZvcmV7Y29udGVudDoiXGU5YTUifS50YXdrLWljb24tYXJ0aWNsZTpiZWZvcmV7Y29udGVudDoiXGU5YTYifS50YXdrLWljb24tZHJhZy1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE3In0udGF3ay1pY29uLWNoaWxkLXRyZWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE4In0udGF3ay1pY29uLXRyYW5zbGF0ZTpiZWZvcmV7Y29udGVudDoiXGU5YTkifS50YXdrLWljb24tYnVsYjpiZWZvcmV7Y29udGVudDoiXGU5YWEifS50YXdrLWljb24tbWVyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWFiIn0udGF3ay1pY29uLXRodW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWFjIn0udGF3ay1pY29uLW92ZXJ2aWV3OmJlZm9yZXtjb250ZW50OiJcZTlhZCJ9LnRhd2staWNvbi11c2VyLW1hbmFnZW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWFlIn0udGF3ay1pY29uLWFnZW50LWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTlhZiJ9LnRhd2staWNvbi1wcm9wZXJ0eS1tZW1iZXJzOmJlZm9yZXtjb250ZW50OiJcZTliMCJ9LnRhd2staWNvbi1kZXBhcnRtZW50czpiZWZvcmV7Y29udGVudDoiXGU5YjEifS50YXdrLWljb24tdGFiOmJlZm9yZXtjb250ZW50OiJcZTliMiJ9LnRhd2staWNvbi1tYWlsLW5vdGlmaWNhdGlvbjpiZWZvcmV7Y29udGVudDoiXGU5YjMifS50YXdrLWljb24taW4tY2hhdC1wYXltZW50OmJlZm9yZXtjb250ZW50OiJcZTliNCJ9LnRhd2staWNvbi1oaXJlLWxpdmUtYWdlbnRzOmJlZm9yZXtjb250ZW50OiJcZTliNSJ9LnRhd2staWNvbi1oaXJlLXZpcnR1YWwtYXNzaXN0YW50OmJlZm9yZXtjb250ZW50OiJcZTliNiJ9LnRhd2staWNvbi1wYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI3In0udGF3ay1pY29uLXNob3BwaW5nLWNhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI4In0udGF3ay1pY29uLWNoYW5uZWxzOmJlZm9yZXtjb250ZW50OiJcZTliOSJ9LnRhd2staWNvbi1wYWdlOmJlZm9yZXtjb250ZW50OiJcZTliYSJ9LnRhd2staWNvbi1wYXltZW50LW1ldGhvZDpiZWZvcmV7Y29udGVudDoiXGU5YmIifS50YXdrLWljb24tYmlsbC1vdmVydmlldzpiZWZvcmV7Y29udGVudDoiXGU5YmMifS50YXdrLWljb24tbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWJkIn0udGF3ay1pY29uLWFjdGl2YXRlLXBob25lLW51bWJlcjpiZWZvcmV7Y29udGVudDoiXGU5YmUifS50YXdrLWljb24tbW9iaWxlLXBob25lOmJlZm9yZXtjb250ZW50OiJcZTliZiJ9LnRhd2staWNvbi1zdGF0dXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWMwIn0udGF3ay1pY29uLWJyb3dzZXItdGl0bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWMxIn0udGF3ay1pY29uLWdlbmVyYWwtZmlsbC11cDpiZWZvcmV7Y29udGVudDoiXGU5YzIifS50YXdrLWljb24tY2FyZC1sYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWMzIn0udGF3ay1pY29uLXZlcmlmaWVkOmJlZm9yZXtjb250ZW50OiJcZTljNCJ9LnRhd2staWNvbi1icmFpbnN0b3JtOmJlZm9yZXtjb250ZW50OiJcZTljNSJ9LnRhd2staWNvbi1jaGFuZ2UtdG9uZTpiZWZvcmV7Y29udGVudDoiXGU5YzYifS50YXdrLWljb24tZml4LWdyYW1tYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWM3In0udGF3ay1pY29uLWJ1bGxldC1wb29pbnRzLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGU5YzgifS50YXdrLWljb24tcmV3cml0ZTpiZWZvcmV7Y29udGVudDoiXGU5YzkifS50YXdrLWljb24tc2VudGVuY2UtZXhwYW5kOmJlZm9yZXtjb250ZW50OiJcZTljYSJ9LnRhd2staWNvbi1zaW1wbGlmeTpiZWZvcmV7Y29udGVudDoiXGU5Y2IifS50YXdrLWljb24tc3RlcC1ieS1zdGVwOmJlZm9yZXtjb250ZW50OiJcZTljYyJ9LnRhd2staWNvbi1zdW1tYXJpemU6YmVmb3Jle2NvbnRlbnQ6IlxlOWNkIn0udGF3ay1pY29uLXN1Z2dlc3QtcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOWNlIn0udGF3ay1pY29uLVdyaXRlLWFib3V0OmJlZm9yZXtjb250ZW50OiJcZTljZiJ9LnRhd2staWNvbi1haS1Bc3Npc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWQwIn0udGF3ay1pY29uLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOWQxIn0udGF3ay1pY29uLXNtYXJ0LXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZTlkMiJ9LnRhd2staWNvbi1jYWxsLWVuZDpiZWZvcmV7Y29udGVudDoiXGU5ZDMifS50YXdrLWljb24tc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ0In0udGF3ay1pY29uLXN0YXR1cy1jaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ1In0udGF3ay1pY29uLXJlY29ubmVjdDpiZWZvcmV7Y29udGVudDoiXGU5ZDYifS50YXdrLWljb24tZGlzY29ubmVjdGVkOmJlZm9yZXtjb250ZW50OiJcZTlkNyJ9LnRhd2staWNvbi1ub3Qtc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5ZDgifS50YXdrLWljb24tc2VhcmNoZXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ5In0udGF3ay1pY29uLWNoYXQtZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWRhIn0udGF3ay1pY29uLWNoYXQtdm9sdW1lOmJlZm9yZXtjb250ZW50OiJcZTlkYiJ9LnRhd2staWNvbi1taXNzZWQtY2hhdDpiZWZvcmV7Y29udGVudDoiXGU5ZGMifS50YXdrLWljb24tb2ZmbGluZS1tZXNzYWdlOmJlZm9yZXtjb250ZW50OiJcZTlkZCJ9LnRhd2staWNvbi1maXJzdC1yZXNwb25zZS10aW1lOmJlZm9yZXtjb250ZW50OiJcZTlkZSJ9LnRhd2staWNvbi10aWNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWRmIn0udGF3ay1pY29uLXRpY2tldC1zb2x2ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWUwIn0udGF3ay1pY29uLXRpY2tldC1yZW9wZW5lZDpiZWZvcmV7Y29udGVudDoiXGU5ZTEifS50YXdrLWljb24tdGlja2V0LXJlc29sdXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWUyIn0udGF3ay1pY29uLXRpY2tldC1zb3VyY2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWUzIn0udGF3ay1pY29uLXRpY2tldC12b2x1bWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU0In0udGF3ay1pY29uLXVzZXItc2F0aXNmYWN0aW9uOmJlZm9yZXtjb250ZW50OiJcZTllNSJ9LnRhd2staWNvbi1ncm91cC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU2In0udGF3ay1pY29uLXJlbW92ZS1icmFuZGluZzpiZWZvcmV7Y29udGVudDoiXGU5ZTcifS50YXdrLWljb24tY2FyZXQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWU4In0udGF3ay1pY29uLWNoYXQtd2lkZ2V0OmJlZm9yZXtjb250ZW50OiJcZTllOSJ9LnRhd2staWNvbi11bmxpbms6YmVmb3Jle2NvbnRlbnQ6IlxlOWVhIn0udGF3ay1pY29uLWF1ZGlvOmJlZm9yZXtjb250ZW50OiJcZTllYiJ9LnRhd2staWNvbi1hdWRpby1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxlOWVjIn0udGF3ay1pY29uLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlxlOWVkIn0udGF3ay1pY29uLWNoYXRib3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWVlIn0udGF3ay1pY29uLXVzZXJzOmJlZm9yZXtjb250ZW50OiJcZTllZiJ9LnRhd2staWNvbi11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWYwIn0udGF3ay1pY29uLWxvZy1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWYxIn0udGF3ay1pY29uLWNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWYyIn0udGF3ay1pY29uLWxheWVyczpiZWZvcmV7Y29udGVudDoiXGU5ZjMifS50YXdrLWljb24tY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5ZjQifS50YXdrLWljb24tY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5ZjUifS50YXdrLWljb24tY2FyZXQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWY2In0udGF3ay1pY29uLW11dGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY3In0udGF3ay1pY29uLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTlmOCJ9LnRhd2staWNvbi1wdXp6bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY5In0udGF3ay1pY29uLXZvbHVtZS11cDpiZWZvcmV7Y29udGVudDoiXGU5ZmEifWFiYnIsYWRkcmVzcyxhcnRpY2xlLGFzaWRlLGF1ZGlvLGIsYmxvY2txdW90ZSxib2R5LGNhbnZhcyxjYXB0aW9uLGNpdGUsY29kZSxkZCxkZWwsZGV0YWlscyxkZm4sZGl2LGRsLGR0LGVtLGZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvb3Rlcixmb3JtLGgxLGgyLGgzLGg0LGg1LGg2LGhlYWRlcixoZ3JvdXAsaHRtbCxpLGlmcmFtZSxpbWcsaW5zLGtiZCxsYWJlbCxsZWdlbmQsbGksbWFyayxtZW51LG5hdixvYmplY3Qsb2wscCxwcmUscSxzYW1wLHNlY3Rpb24sc21hbGwsc3BhbixzdHJvbmcsc3ViLHN1bW1hcnksc3VwLHRhYmxlLHRib2R5LHRkLHRmb290LHRoLHRoZWFkLHRpbWUsdHIsdWwsdmFyLHZpZGVve21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MDtvdXRsaW5lOjA7Zm9udC1zaXplOjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Ym9keXtsaW5lLWhlaWdodDoxfWJvZHkuZm9udC1sYXRve2ZvbnQtZmFtaWx5OkxhdG8sT3BlbiBTYW5zLHNhbnMtc2VyaWYhaW1wb3J0YW50fWJvZHkudGF3ay1ydGx7ZGlyZWN0aW9uOnJ0bDtvdmVyZmxvdzpoaWRkZW59QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjEwMjRweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToyMnB4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NDgxcHgpIGFuZCAobWF4LXdpZHRoOjc2N3B4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjE4cHghaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo0ODBweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToxOHB4IWltcG9ydGFudH19Kntmb250LWZhbWlseTppbmhlcml0fWFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLGhncm91cCxtZW51LG5hdixzZWN0aW9ue2Rpc3BsYXk6YmxvY2t9bmF2IHVse2xpc3Qtc3R5bGU6bm9uZX1ibG9ja3F1b3RlLHF7cXVvdGVzOm5vbmV9YmxvY2txdW90ZTphZnRlcixibG9ja3F1b3RlOmJlZm9yZSxxOmFmdGVyLHE6YmVmb3Jle2NvbnRlbnQ6IiI7Y29udGVudDpub25lfWF7bWFyZ2luOjA7cGFkZGluZzowO2ZvbnQtc2l6ZToxMDAlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9aW5ze3RleHQtZGVjb3JhdGlvbjpub25lfWlucyxtYXJre2JhY2tncm91bmQtY29sb3I6I2ZmOTtjb2xvcjojMDAwfW1hcmt7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NzAwfWRlbHt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdofWFiYnJbdGl0bGVdLGRmblt0aXRsZV17Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkO2N1cnNvcjpoZWxwfXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowfWhye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjY2NjO21hcmdpbjoxZW0gMDtwYWRkaW5nOjB9aW5wdXQsc2VsZWN0e3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1ib2R5LGh0bWx7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xpbmUtaGVpZ2h0OjE7cG9zaXRpb246cmVsYXRpdmU7Zm9udDo0MDAgMTZweCBIZWx2ZXRpY2Esc2Fucy1zZXJpZiFpbXBvcnRhbnR9Ym9keS5mb250LWxhdG8saHRtbC5mb250LWxhdG97Zm9udDo0MDAgMTZweCBMYXRvLHNhbnMtc2VyaWYhaW1wb3J0YW50fS5jbGVhcntjbGVhcjpib3RofS5jbGVhcmZpeDphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTowO2NvbnRlbnQ6IiAiO2NsZWFyOmJvdGg7aGVpZ2h0OjB9LmNsZWFyZml4e2Rpc3BsYXk6aW5saW5lLWJsb2NrfSogaHRtbCAuY2xlYXJmaXh7aGVpZ2h0OjElfS5jbGVhcmZpeHtkaXNwbGF5OmJsb2NrfS50YXdrLW1pbi1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9LnRhd2stbWluLWNvbnRhaW5lciwudGF3ay1taW4tY29udGFpbmVyIC50YXdrLWJ1dHRvbntoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS50YXdrLW1pbi1jb250YWluZXIgLnRhd2stYnV0dG9uLWNpcmNsZS50YXdrLWJ1dHRvbi1sYXJnZXt3aWR0aDo2MHB4O2hlaWdodDo2MHB4fS50YXdrLW1pbi1jaGF0LWljb257ZmlsbDojZmZmO2ZpbGw6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stbWluLWNoYXQtaWNvbiwudGF3ay1taW4tY2hhdC1pY29uLWRvd257dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX0udGF3ay1taW4tY2hhdC1pY29uLXVwe3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udGF3ay1taW4tY2hhdC1pY29uLWxlZnR7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7bWFyZ2luLXJpZ2h0OjRweH0udGF3ay1taW4tY2hhdC1pY29uLXJpZ2h0e3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTttYXJnaW4tbGVmdDo0cHh9QGtleWZyYW1lcyBpY29uQW5pbWF0aW9uezAle29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjUpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9fS50YXdrLWJhZGdlLnRhd2stbWluLWJhZGdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7ei1pbmRleDoxMTAwfWJvZHkudGF3ay1ydGwgLnRhd2stYmFkZ2UudGF3ay1taW4tYmFkZ2V7cmlnaHQ6YXV0bztsZWZ0OjB9LnRhd2stbWluLWFnZW50LWltYWdle2hlaWdodDozNnB4O3dpZHRoOjM2cHg7Ym9yZGVyLXJhZGl1czo1MCV9LnRhd2stbWluLWFnZW50LWxhYmVse2xpbmUtaGVpZ2h0Om5vcm1hbDtjb2xvcjppbmhlcml0fQoKLyojIHNvdXJjZU1hcHBpbmdVUkw9bWluLXdpZGdldC5jc3MubWFwKi8="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/vendor/animate.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.625Z","timestamp":1785143153625,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/vendor/animate.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"12fbe-67b374e4-9811a98dd467e926;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 4268\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":77758,"size_decoded":4709,"mime_type":"text/css","magic":"ASCII text","md5":"8dbc6dc67b4724087e6d907ff95ac6db","sha1":"9e12535c54fa1391d46795fc52d7071251974101","sha256":"a6bd510fcb0a3e7e274824c8272223a2d9d664ce6634559f18200f9fc0bb4371","sha512":"1c6b28f94155ce6a027e8bd3aeadadca21efae7550503b3d5d41835f1548addfc0877f162ad506efd925048f39214172284b4d8dfb525770a38b5df92c348ecf","ssdeep":"384:BHNuKu1Lsg9unuFl3lH/4/0uJuDqDxbe3NxdV2PVriTKIZQMcLceo:JNuKuWg9unuLuJu9KIZQMcLceo","tlshash":"ed732fad2991108456638a1d83df5e68273ce573181aadef73c2488fcf8bf6857c9147","first_seen":"2023-04-08T15:08:23Z","last_seen":"2026-08-03T13:11:20.374629Z","times_seen":4183,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsKCi8qIQogKiBhbmltYXRlLmNzcyAtaHR0cDovL2RhbmVkZW4ubWUvYW5pbWF0ZQogKiBWZXJzaW9uIC0gMy43LjAKICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVAogKgogKiBDb3B5cmlnaHQgKGMpIDIwMTggRGFuaWVsIEVkZW4KICovCgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHsKICBmcm9tLAogIDIwJSwKICA1MyUsCiAgODAlLAogIHRvIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQoKICA0MCUsCiAgNDMlIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlIHsKICBmcm9tLAogIDIwJSwKICA1MyUsCiAgODAlLAogIHRvIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQoKICA0MCUsCiAgNDMlIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTsKICB9Cn0KCi5ib3VuY2UgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTsKICBhbmltYXRpb24tbmFtZTogYm91bmNlOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2ggewogIGZyb20sCiAgNTAlLAogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAyNSUsCiAgNzUlIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGZsYXNoIHsKICBmcm9tLAogIDUwJSwKICB0byB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMjUlLAogIDc1JSB7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLmZsYXNoIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGFzaDsKICBhbmltYXRpb24tbmFtZTogZmxhc2g7Cn0KCi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqLwoKQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgpAa2V5ZnJhbWVzIHB1bHNlIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgoucHVsc2UgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlOwogIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7CiAgfQoKICA2NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsKICB9CgogIDY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KfQoKLnJ1YmJlckJhbmQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7CiAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7CiAgZnJvbSwKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgMTAlLAogIDMwJSwKICA1MCUsCiAgNzAlLAogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgfQoKICAyMCUsCiAgNDAlLAogIDYwJSwKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2hha2UgewogIGZyb20sCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIDEwJSwKICAzMCUsCiAgNTAlLAogIDcwJSwKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogIH0KCiAgMjAlLAogIDQwJSwKICA2MCUsCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgfQp9Cgouc2hha2UgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNoYWtlOwogIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGhlYWRTaGFrZSB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQoKICA2LjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpOwogIH0KCiAgMTguNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTsKICB9CgogIDMxLjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpOwogIH0KCiAgNDMuNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaGVhZFNoYWtlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9CgogIDYuNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7CiAgfQoKICAxOC41JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpOwogIH0KCiAgMzEuNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7CiAgfQoKICA0My41JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIH0KfQoKLmhlYWRTaGFrZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7CiAgYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgc3dpbmcgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpOwogIH0KfQoKLnN3aW5nIHsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7CiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZzsKICBhbmltYXRpb24tbmFtZTogc3dpbmc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgMTAlLAogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogIH0KCiAgMzAlLAogIDUwJSwKICA3MCUsCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogIH0KCiAgNDAlLAogIDYwJSwKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB0YWRhIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgMTAlLAogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogIH0KCiAgMzAlLAogIDUwJSwKICA3MCUsCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogIH0KCiAgNDAlLAogIDYwJSwKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KfQoKLnRhZGEgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHRhZGE7CiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7Cn0KCi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqLwoKQC13ZWJraXQta2V5ZnJhbWVzIHdvYmJsZSB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgMTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICB9CgogIDQ1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIHdvYmJsZSB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgMTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICB9CgogIDQ1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9Cgoud29iYmxlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7CiAgYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGplbGxvIHsKICBmcm9tLAogIDExLjElLAogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQoKICAyMi4yJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7CiAgfQoKICA0NC40JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7CiAgfQoKICA1NS41JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7CiAgfQoKICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTsKICB9CgogIDc3LjclIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpOwogIH0KCiAgODguOCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgamVsbG8gewogIGZyb20sCiAgMTEuMSUsCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIDIyLjIlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsKICB9CgogIDQ0LjQlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsKICB9CgogIDU1LjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpOwogIH0KCiAgNzcuNyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7CiAgfQoKICA4OC44JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOwogIH0KfQoKLmplbGxvIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqZWxsbzsKICBhbmltYXRpb24tbmFtZTogamVsbG87CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgaGVhcnRCZWF0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogIH0KCiAgMTQlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KCiAgMjglIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQoKICA0MiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgfQoKICA3MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICB9Cn0KCkBrZXlmcmFtZXMgaGVhcnRCZWF0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogIH0KCiAgMTQlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KCiAgMjglIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQoKICA0MiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgfQoKICA3MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICB9Cn0KCi5oZWFydEJlYXQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYXJ0QmVhdDsKICBhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0OwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMS4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW4gewogIGZyb20sCiAgMjAlLAogIDQwJSwKICA2MCUsCiAgODAlLAogIHRvIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsKICB9CgogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZUluIHsKICBmcm9tLAogIDIwJSwKICA0MCUsCiAgNjAlLAogIDgwJSwKICB0byB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgfQoKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgfQoKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KfQoKLmJvdW5jZUluIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjsKICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24gewogIGZyb20sCiAgNjAlLAogIDc1JSwKICA5MCUsCiAgdG8gewogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogIH0KCiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlSW5Eb3duIHsKICBmcm9tLAogIDYwJSwKICA3NSUsCiAgOTAlLAogIHRvIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgouYm91bmNlSW5Eb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247CiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7CiAgZnJvbSwKICA2MCUsCiAgNzUlLAogIDkwJSwKICB0byB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgfQoKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbkxlZnQgewogIGZyb20sCiAgNjAlLAogIDc1JSwKICA5MCUsCiAgdG8gewogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogIH0KCiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5ib3VuY2VJbkxlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDsKICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7CiAgZnJvbSwKICA2MCUsCiAgNzUlLAogIDkwJSwKICB0byB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgfQoKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQgewogIGZyb20sCiAgNjAlLAogIDc1JSwKICA5MCUsCiAgdG8gewogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogIH0KCiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLmJvdW5jZUluUmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7CiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHsKICBmcm9tLAogIDYwJSwKICA3NSUsCiAgOTAlLAogIHRvIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsKICB9CgogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7CiAgZnJvbSwKICA2MCUsCiAgNzUlLAogIDkwJSwKICB0byB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7CiAgfQoKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgouYm91bmNlSW5VcCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDsKICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOwogIH0KCiAgNTAlLAogIDU1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dCB7CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOwogIH0KCiAgNTAlLAogIDU1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgfQp9CgouYm91bmNlT3V0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7CiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24gewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogIH0KCiAgNDAlLAogIDQ1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICB9CgogIDQwJSwKICA0NSUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICB9Cn0KCi5ib3VuY2VPdXREb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOwogIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7CiAgMjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQgewogIDIwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogIH0KfQoKLmJvdW5jZU91dExlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7CiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7CiAgMjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHsKICAyMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICB9Cn0KCi5ib3VuY2VPdXRSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7CiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgfQoKICA0MCUsCiAgNDUlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogIH0KCiAgNDAlLAogIDQ1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KfQoKLmJvdW5jZU91dFVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsKICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4gewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbiB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5mYWRlSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjsKICBhbmltYXRpb24tbmFtZTogZmFkZUluOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkRvd24gewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLmZhZGVJbkRvd24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247CiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5mYWRlSW5Eb3duQmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnOwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkxlZnQgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLmZhZGVJbkxlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7CiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5mYWRlSW5MZWZ0QmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnOwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluUmlnaHQgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5mYWRlSW5SaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7CiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLmZhZGVJblJpZ2h0QmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZzsKICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlSW5VcCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLmZhZGVJblVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDsKICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluVXBCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgouZmFkZUluVXBCaWcgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnOwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZzsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVPdXQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgouZmFkZU91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dDsKICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dERvd24gewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogIH0KfQoKLmZhZGVPdXREb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjsKICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KfQoKLmZhZGVPdXREb3duQmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZzsKICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dExlZnQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgfQp9CgouZmFkZU91dExlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0OwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogIH0KfQoKLmZhZGVPdXRMZWZ0QmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZzsKICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogIH0KfQoKLmZhZGVPdXRSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0OwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgfQp9CgouZmFkZU91dFJpZ2h0QmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7CiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZzsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dFVwIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogIH0KfQoKLmZhZGVPdXRVcCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwOwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KfQoKLmZhZGVPdXRVcEJpZyB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnOwogIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmbGlwIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpCiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICB9Cn0KCkBrZXlmcmFtZXMgZmxpcCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpCiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgICByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgICAgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQp9CgouYW5pbWF0ZWQuZmxpcCB7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDsKICBhbmltYXRpb24tbmFtZTogZmxpcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblggewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgb3BhY2l0eTogMDsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZsaXBJblggewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgb3BhY2l0eTogMDsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQp9CgouZmxpcEluWCB7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7CiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwSW5ZIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KfQoKLmZsaXBJblkgewogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOwogIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFggewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KCiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwT3V0WCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgouZmxpcE91dFggewogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYOwogIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGZsaXBPdXRZIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7CiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpOwogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCi5mbGlwT3V0WSB7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZOwogIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpOwogICAgb3BhY2l0eTogMTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBsaWdodFNwZWVkSW4gewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tld1goLTVkZWcpOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5saWdodFNwZWVkSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjsKICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLmxpZ2h0U3BlZWRPdXQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7CiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbiB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW4gewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgoucm90YXRlSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluOwogIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgoucm90YXRlSW5Eb3duTGVmdCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgoucm90YXRlSW5Eb3duUmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0OwogIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKLnJvdGF0ZUluVXBMZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKQGtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKLnJvdGF0ZUluVXBSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0OwogIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCi5yb3RhdGVPdXQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLnJvdGF0ZU91dERvd25MZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCi5yb3RhdGVPdXREb3duUmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLnJvdGF0ZU91dFVwTGVmdCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0OwogIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Cgoucm90YXRlT3V0VXBSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDsKICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGhpbmdlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgfQoKICAyMCUsCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICB9CgogIDQwJSwKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGhpbmdlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgfQoKICAyMCUsCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICB9CgogIDQwJSwKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgouaGluZ2UgewogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyczsKICBhbmltYXRpb24tZHVyYXRpb246IDJzOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhpbmdlOwogIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGphY2tJblRoZUJveCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpOwogIH0KCiAgNzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogIH0KfQoKQGtleWZyYW1lcyBqYWNrSW5UaGVCb3ggewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDNkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICB9Cn0KCi5qYWNrSW5UaGVCb3ggewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGphY2tJblRoZUJveDsKICBhbmltYXRpb24tbmFtZTogamFja0luVGhlQm94Owp9CgovKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi8KCkAtd2Via2l0LWtleWZyYW1lcyByb2xsSW4gewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyByb2xsSW4gewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLnJvbGxJbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluOwogIGFuaW1hdGlvbi1uYW1lOiByb2xsSW47Cn0KCi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqLwoKQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQgewogIGZyb20gewogICAgb3BhY2l0eTogMTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgcm9sbE91dCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpOwogIH0KfQoKLnJvbGxPdXQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7CiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW4gewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOwogIH0KCiAgNTAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIHpvb21JbiB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7CiAgfQoKICA1MCUgewogICAgb3BhY2l0eTogMTsKICB9Cn0KCi56b29tSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbjsKICBhbmltYXRpb24tbmFtZTogem9vbUluOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5Eb3duIHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7CiAgfQp9Cgouem9vbUluRG93biB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjsKICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkxlZnQgewogIGZyb20gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbUluTGVmdCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKLnpvb21JbkxlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQ7CiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5SaWdodCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5SaWdodCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKLnpvb21JblJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDsKICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5VcCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKLnpvb21JblVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDsKICBhbmltYXRpb24tbmFtZTogem9vbUluVXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0IHsKICBmcm9tIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dCB7CiAgZnJvbSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgNTAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Cgouem9vbU91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDsKICBhbmltYXRpb24tbmFtZTogem9vbU91dDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXREb3duIHsKICA0MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dERvd24gewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOwogIH0KfQoKLnpvb21PdXREb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjsKICBhbmltYXRpb24tbmFtZTogem9vbU91dERvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0TGVmdCB7CiAgNDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dExlZnQgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOwogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7CiAgfQp9Cgouem9vbU91dExlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0OwogIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7CiAgNDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyOwogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyOwogIH0KfQoKQGtleWZyYW1lcyB6b29tT3V0UmlnaHQgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTsKICB9CgogIHRvIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsKICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsKICB9Cn0KCi56b29tT3V0UmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDsKICBhbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHsKICA0MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dFVwIHsKICA0MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOwogIH0KCiAgdG8gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7CiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsKICB9Cn0KCi56b29tT3V0VXAgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDsKICBhbmltYXRpb24tbmFtZTogem9vbU91dFVwOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24gewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgIHZpc2liaWxpdHk6IHZpc2libGU7CiAgfQoKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KfQoKLnNsaWRlSW5Eb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjsKICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogIH0KCiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9Cgouc2xpZGVJbkxlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0OwogIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9Cgouc2xpZGVJblJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7CiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlSW5VcCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9Cgouc2xpZGVJblVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7CiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgdG8gewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXREb3duIHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogIH0KfQoKLnNsaWRlT3V0RG93biB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duOwogIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dExlZnQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIHRvIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHsKICBmcm9tIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQoKICB0byB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgfQp9Cgouc2xpZGVPdXRMZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7CiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIHRvIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIHRvIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQp9Cgouc2xpZGVPdXRSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsKICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAgewogIGZyb20gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9CgogIHRvIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXRVcCB7CiAgZnJvbSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgdG8gewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogIH0KfQoKLnNsaWRlT3V0VXAgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7CiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7Cn0KCi5hbmltYXRlZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7Cn0KCi5hbmltYXRlZC5pbmZpbml0ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKfQoKLmFuaW1hdGVkLmRlbGF5LTFzIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMXM7CiAgYW5pbWF0aW9uLWRlbGF5OiAxczsKfQoKLmFuaW1hdGVkLmRlbGF5LTJzIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMnM7CiAgYW5pbWF0aW9uLWRlbGF5OiAyczsKfQoKLmFuaW1hdGVkLmRlbGF5LTNzIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogM3M7CiAgYW5pbWF0aW9uLWRlbGF5OiAzczsKfQoKLmFuaW1hdGVkLmRlbGF5LTRzIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNHM7CiAgYW5pbWF0aW9uLWRlbGF5OiA0czsKfQoKLmFuaW1hdGVkLmRlbGF5LTVzIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNXM7CiAgYW5pbWF0aW9uLWRlbGF5OiA1czsKfQoKLmFuaW1hdGVkLmZhc3QgewogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA4MDBtczsKICBhbmltYXRpb24tZHVyYXRpb246IDgwMG1zOwp9CgouYW5pbWF0ZWQuZmFzdGVyIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsKfQoKLmFuaW1hdGVkLnNsb3cgewogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyczsKICBhbmltYXRpb24tZHVyYXRpb246IDJzOwp9CgouYW5pbWF0ZWQuc2xvd2VyIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogM3M7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzczsKfQoKQG1lZGlhIChwcmludCksIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7CiAgLmFuaW1hdGVkIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1bnNldCAhaW1wb3J0YW50OwogICAgYW5pbWF0aW9uOiB1bnNldCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7CiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7CiAgfQp9Cg=="}},"time_used":76,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":70,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/js/jquery-3.7.1.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.822Z","timestamp":1785143153822,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/js/jquery-3.7.1.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"155ed-67b374e4-593cc37d6a2f7cc5;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 29519\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":87533,"size_decoded":29977,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text, with very long lines (65446), with CRLF line terminators","md5":"b83db83a1d89113ee03ab730efa48c7a","sha1":"2fccdd3e43db21bbc8448ed6d6311c4a6eea1166","sha256":"99e691fae5e88eb36bafb24758b35f0f990708295f8f2abe2221891e328f776a","sha512":"10d6f09a04eb135eae12c890be0512ead801e213614505937d1e782d5a6af86550395470ea31b3aebd85695f07a8fe903eda4941e52bcb7278cce02eacb13800","ssdeep":"1536:3RUX9uDgwxcy2KVBNwchN6SLaHEk2BSrBESp+a/IEk4aAocVi8SMBQ47GK7:vHNwcv9VBQpLl88SMBQ47GK7","tlshash":"1083f8df77ca702247ab30b9006f550bf276199d684d4400f159d8e9bcb8a4a827bf7e","first_seen":"2023-10-23T00:47:02Z","last_seen":"2026-08-03T08:22:06.226783Z","times_seen":9875,"resource_available":true,"data":"LyohIGpRdWVyeSB2My43LjEgfCAoYykgT3BlbkpTIEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycyB8IGpxdWVyeS5vcmcvbGljZW5zZSAqLw0KIWZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiOyJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZS5leHBvcnRzP21vZHVsZS5leHBvcnRzPWUuZG9jdW1lbnQ/dChlLCEwKTpmdW5jdGlvbihlKXtpZighZS5kb2N1bWVudCl0aHJvdyBuZXcgRXJyb3IoImpRdWVyeSByZXF1aXJlcyBhIHdpbmRvdyB3aXRoIGEgZG9jdW1lbnQiKTtyZXR1cm4gdChlKX06dChlKX0oInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93OnRoaXMsZnVuY3Rpb24oaWUsZSl7InVzZSBzdHJpY3QiO3ZhciBvZT1bXSxyPU9iamVjdC5nZXRQcm90b3R5cGVPZixhZT1vZS5zbGljZSxnPW9lLmZsYXQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG9lLmZsYXQuY2FsbChlKX06ZnVuY3Rpb24oZSl7cmV0dXJuIG9lLmNvbmNhdC5hcHBseShbXSxlKX0scz1vZS5wdXNoLHNlPW9lLmluZGV4T2Ysbj17fSxpPW4udG9TdHJpbmcsdWU9bi5oYXNPd25Qcm9wZXJ0eSxvPXVlLnRvU3RyaW5nLGE9by5jYWxsKE9iamVjdCksbGU9e30sdj1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmIm51bWJlciIhPXR5cGVvZiBlLm5vZGVUeXBlJiYiZnVuY3Rpb24iIT10eXBlb2YgZS5pdGVtfSx5PWZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT09ZS53aW5kb3d9LEM9aWUuZG9jdW1lbnQsdT17dHlwZTohMCxzcmM6ITAsbm9uY2U6ITAsbm9Nb2R1bGU6ITB9O2Z1bmN0aW9uIG0oZSx0LG4pe3ZhciByLGksbz0obj1ufHxDKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpZihvLnRleHQ9ZSx0KWZvcihyIGluIHUpKGk9dFtyXXx8dC5nZXRBdHRyaWJ1dGUmJnQuZ2V0QXR0cmlidXRlKHIpKSYmby5zZXRBdHRyaWJ1dGUocixpKTtuLmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKX1mdW5jdGlvbiB4KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZT9uW2kuY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciB0PSIzLjcuMSIsbD0vSFRNTCQvaSxjZT1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgY2UuZm4uaW5pdChlLHQpfTtmdW5jdGlvbiBjKGUpe3ZhciB0PSEhZSYmImxlbmd0aCJpbiBlJiZlLmxlbmd0aCxuPXgoZSk7cmV0dXJuIXYoZSkmJiF5KGUpJiYoImFycmF5Ij09PW58fDA9PT10fHwibnVtYmVyIj09dHlwZW9mIHQmJjA8dCYmdC0xIGluIGUpfWZ1bmN0aW9uIGZlKGUsdCl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQudG9Mb3dlckNhc2UoKX1jZS5mbj1jZS5wcm90b3R5cGU9e2pxdWVyeTp0LGNvbnN0cnVjdG9yOmNlLGxlbmd0aDowLHRvQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gYWUuY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP2FlLmNhbGwodGhpcyk6ZTwwP3RoaXNbZSt0aGlzLmxlbmd0aF06dGhpc1tlXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGUpe3ZhciB0PWNlLm1lcmdlKHRoaXMuY29uc3RydWN0b3IoKSxlKTtyZXR1cm4gdC5wcmV2T2JqZWN0PXRoaXMsdH0sZWFjaDpmdW5jdGlvbihlKXtyZXR1cm4gY2UuZWFjaCh0aGlzLGUpfSxtYXA6ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGNlLm1hcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4uY2FsbChlLHQsZSl9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGFlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSl9LGZpcnN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoMCl9LGxhc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgtMSl9LGV2ZW46ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soY2UuZ3JlcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQrMSklMn0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGNlLmdyZXAodGhpcyxmdW5jdGlvbihlLHQpe3JldHVybiB0JTJ9KSl9LGVxOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMubGVuZ3RoLG49K2UrKGU8MD90OjApO3JldHVybiB0aGlzLnB1c2hTdGFjaygwPD1uJiZuPHQ/W3RoaXNbbl1dOltdKX0sZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJldk9iamVjdHx8dGhpcy5jb25zdHJ1Y3RvcigpfSxwdXNoOnMsc29ydDpvZS5zb3J0LHNwbGljZTpvZS5zcGxpY2V9LGNlLmV4dGVuZD1jZS5mbi5leHRlbmQ9ZnVuY3Rpb24oKXt2YXIgZSx0LG4scixpLG8sYT1hcmd1bWVudHNbMF18fHt9LHM9MSx1PWFyZ3VtZW50cy5sZW5ndGgsbD0hMTtmb3IoImJvb2xlYW4iPT10eXBlb2YgYSYmKGw9YSxhPWFyZ3VtZW50c1tzXXx8e30scysrKSwib2JqZWN0Ij09dHlwZW9mIGF8fHYoYSl8fChhPXt9KSxzPT09dSYmKGE9dGhpcyxzLS0pO3M8dTtzKyspaWYobnVsbCE9KGU9YXJndW1lbnRzW3NdKSlmb3IodCBpbiBlKXI9ZVt0XSwiX19wcm90b19fIiE9PXQmJmEhPT1yJiYobCYmciYmKGNlLmlzUGxhaW5PYmplY3Qocil8fChpPUFycmF5LmlzQXJyYXkocikpKT8obj1hW3RdLG89aSYmIUFycmF5LmlzQXJyYXkobik/W106aXx8Y2UuaXNQbGFpbk9iamVjdChuKT9uOnt9LGk9ITEsYVt0XT1jZS5leHRlbmQobCxvLHIpKTp2b2lkIDAhPT1yJiYoYVt0XT1yKSk7cmV0dXJuIGF9LGNlLmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisodCtNYXRoLnJhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxpc1JlYWR5OiEwLGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0sbm9vcDpmdW5jdGlvbigpe30saXNQbGFpbk9iamVjdDpmdW5jdGlvbihlKXt2YXIgdCxuO3JldHVybiEoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09aS5jYWxsKGUpKSYmKCEodD1yKGUpKXx8ImZ1bmN0aW9uIj09dHlwZW9mKG49dWUuY2FsbCh0LCJjb25zdHJ1Y3RvciIpJiZ0LmNvbnN0cnVjdG9yKSYmby5jYWxsKG4pPT09YSl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ7Zm9yKHQgaW4gZSlyZXR1cm4hMTtyZXR1cm4hMH0sZ2xvYmFsRXZhbDpmdW5jdGlvbihlLHQsbil7bShlLHtub25jZTp0JiZ0Lm5vbmNlfSxuKX0sZWFjaDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MDtpZihjKGUpKXtmb3Iobj1lLmxlbmd0aDtyPG47cisrKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcihyIGluIGUpaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrO3JldHVybiBlfSx0ZXh0OmZ1bmN0aW9uKGUpe3ZhciB0LG49IiIscj0wLGk9ZS5ub2RlVHlwZTtpZighaSl3aGlsZSh0PWVbcisrXSluKz1jZS50ZXh0KHQpO3JldHVybiAxPT09aXx8MTE9PT1pP2UudGV4dENvbnRlbnQ6OT09PWk/ZS5kb2N1bWVudEVsZW1lbnQudGV4dENvbnRlbnQ6Mz09PWl8fDQ9PT1pP2Uubm9kZVZhbHVlOm59LG1ha2VBcnJheTpmdW5jdGlvbihlLHQpe3ZhciBuPXR8fFtdO3JldHVybiBudWxsIT1lJiYoYyhPYmplY3QoZSkpP2NlLm1lcmdlKG4sInN0cmluZyI9PXR5cGVvZiBlP1tlXTplKTpzLmNhbGwobixlKSksbn0saW5BcnJheTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PXQ/LTE6c2UuY2FsbCh0LGUsbil9LGlzWE1MRG9jOmZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUubmFtZXNwYWNlVVJJLG49ZSYmKGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiFsLnRlc3QodHx8biYmbi5ub2RlTmFtZXx8IkhUTUwiKX0sbWVyZ2U6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49K3QubGVuZ3RoLHI9MCxpPWUubGVuZ3RoO3I8bjtyKyspZVtpKytdPXRbcl07cmV0dXJuIGUubGVuZ3RoPWksZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPVtdLGk9MCxvPWUubGVuZ3RoLGE9IW47aTxvO2krKykhdChlW2ldLGkpIT09YSYmci5wdXNoKGVbaV0pO3JldHVybiByfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz0wLGE9W107aWYoYyhlKSlmb3Iocj1lLmxlbmd0aDtvPHI7bysrKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmYS5wdXNoKGkpO2Vsc2UgZm9yKG8gaW4gZSludWxsIT0oaT10KGVbb10sbyxuKSkmJmEucHVzaChpKTtyZXR1cm4gZyhhKX0sZ3VpZDoxLHN1cHBvcnQ6bGV9KSwiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYoY2UuZm5bU3ltYm9sLml0ZXJhdG9yXT1vZVtTeW1ib2wuaXRlcmF0b3JdKSxjZS5lYWNoKCJCb29sZWFuIE51bWJlciBTdHJpbmcgRnVuY3Rpb24gQXJyYXkgRGF0ZSBSZWdFeHAgT2JqZWN0IEVycm9yIFN5bWJvbCIuc3BsaXQoIiAiKSxmdW5jdGlvbihlLHQpe25bIltvYmplY3QgIit0KyJdIl09dC50b0xvd2VyQ2FzZSgpfSk7dmFyIHBlPW9lLnBvcCxkZT1vZS5zb3J0LGhlPW9lLnNwbGljZSxnZT0iW1xceDIwXFx0XFxyXFxuXFxmXSIsdmU9bmV3IFJlZ0V4cCgiXiIrZ2UrIit8KCg/Ol58W15cXFxcXSkoPzpcXFxcLikqKSIrZ2UrIiskIiwiZyIpO2NlLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7dmFyIG49dCYmdC5wYXJlbnROb2RlO3JldHVybiBlPT09bnx8ISghbnx8MSE9PW4ubm9kZVR5cGV8fCEoZS5jb250YWlucz9lLmNvbnRhaW5zKG4pOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJjE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24obikpKX07dmFyIGY9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15ceDgwLVx1RkZGRlx3LV0vZztmdW5jdGlvbiBwKGUsdCl7cmV0dXJuIHQ/IlwwIj09PWU/Ilx1ZmZmZCI6ZS5zbGljZSgwLC0xKSsiXFwiK2UuY2hhckNvZGVBdChlLmxlbmd0aC0xKS50b1N0cmluZygxNikrIiAiOiJcXCIrZX1jZS5lc2NhcGVTZWxlY3Rvcj1mdW5jdGlvbihlKXtyZXR1cm4oZSsiIikucmVwbGFjZShmLHApfTt2YXIgeWU9QyxtZT1zOyFmdW5jdGlvbigpe3ZhciBlLGIsdyxvLGEsVCxyLEMsZCxpLGs9bWUsUz1jZS5leHBhbmRvLEU9MCxuPTAscz1XKCksYz1XKCksdT1XKCksaD1XKCksbD1mdW5jdGlvbihlLHQpe3JldHVybiBlPT09dCYmKGE9ITApLDB9LGY9ImNoZWNrZWR8c2VsZWN0ZWR8YXN5bmN8YXV0b2ZvY3VzfGF1dG9wbGF5fGNvbnRyb2xzfGRlZmVyfGRpc2FibGVkfGhpZGRlbnxpc21hcHxsb29wfG11bHRpcGxlfG9wZW58cmVhZG9ubHl8cmVxdWlyZWR8c2NvcGVkIix0PSIoPzpcXFxcW1xcZGEtZkEtRl17MSw2fSIrZ2UrIj98XFxcXFteXFxyXFxuXFxmXXxbXFx3LV18W15cMC1cXHg3Zl0pKyIscD0iXFxbIitnZSsiKigiK3QrIikoPzoiK2dlKyIqKFsqXiR8IX5dPz0pIitnZSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK3QrIikpfCkiK2dlKyIqXFxdIixnPSI6KCIrdCsiKSg/OlxcKCgoJygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCIpfCgoPzpcXFxcLnxbXlxcXFwoKVtcXF1dfCIrcCsiKSopfC4qKVxcKXwpIix2PW5ldyBSZWdFeHAoZ2UrIisiLCJnIikseT1uZXcgUmVnRXhwKCJeIitnZSsiKiwiK2dlKyIqIiksbT1uZXcgUmVnRXhwKCJeIitnZSsiKihbPit+XXwiK2dlKyIpIitnZSsiKiIpLHg9bmV3IFJlZ0V4cChnZSsifD4iKSxqPW5ldyBSZWdFeHAoZyksQT1uZXcgUmVnRXhwKCJeIit0KyIkIiksRD17SUQ6bmV3IFJlZ0V4cCgiXiMoIit0KyIpIiksQ0xBU1M6bmV3IFJlZ0V4cCgiXlxcLigiK3QrIikiKSxUQUc6bmV3IFJlZ0V4cCgiXigiK3QrInxbKl0pIiksQVRUUjpuZXcgUmVnRXhwKCJeIitwKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrZyksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIitnZSsiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIrZ2UrIiooPzooWystXXwpIitnZSsiKihcXGQrKXwpKSIrZ2UrIipcXCl8KSIsImkiKSxib29sOm5ldyBSZWdFeHAoIl4oPzoiK2YrIikkIiwiaSIpLG5lZWRzQ29udGV4dDpuZXcgUmVnRXhwKCJeIitnZSsiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3QpKD86XFwoIitnZSsiKigoPzotXFxkKT9cXGQqKSIrZ2UrIipcXCl8KSg/PVteLV18JCkiLCJpIil9LE49L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxxPS9eaFxkJC9pLEw9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxIPS9bK35dLyxPPW5ldyBSZWdFeHAoIlxcXFxbXFxkYS1mQS1GXXsxLDZ9IitnZSsiP3xcXFxcKFteXFxyXFxuXFxmXSkiLCJnIiksUD1mdW5jdGlvbihlLHQpe3ZhciBuPSIweCIrZS5zbGljZSgxKS02NTUzNjtyZXR1cm4gdHx8KG48MD9TdHJpbmcuZnJvbUNoYXJDb2RlKG4rNjU1MzYpOlN0cmluZy5mcm9tQ2hhckNvZGUobj4+MTB8NTUyOTYsMTAyMyZufDU2MzIwKSl9LE09ZnVuY3Rpb24oKXtWKCl9LFI9SihmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuZGlzYWJsZWQmJmZlKGUsImZpZWxkc2V0Iil9LHtkaXI6InBhcmVudE5vZGUiLG5leHQ6ImxlZ2VuZCJ9KTt0cnl7ay5hcHBseShvZT1hZS5jYWxsKHllLmNoaWxkTm9kZXMpLHllLmNoaWxkTm9kZXMpLG9lW3llLmNoaWxkTm9kZXMubGVuZ3RoXS5ub2RlVHlwZX1jYXRjaChlKXtrPXthcHBseTpmdW5jdGlvbihlLHQpe21lLmFwcGx5KGUsYWUuY2FsbCh0KSl9LGNhbGw6ZnVuY3Rpb24oZSl7bWUuYXBwbHkoZSxhZS5jYWxsKGFyZ3VtZW50cywxKSl9fX1mdW5jdGlvbiBJKHQsZSxuLHIpe3ZhciBpLG8sYSxzLHUsbCxjLGY9ZSYmZS5vd25lckRvY3VtZW50LHA9ZT9lLm5vZGVUeXBlOjk7aWYobj1ufHxbXSwic3RyaW5nIiE9dHlwZW9mIHR8fCF0fHwxIT09cCYmOSE9PXAmJjExIT09cClyZXR1cm4gbjtpZighciYmKFYoZSksZT1lfHxULEMpKXtpZigxMSE9PXAmJih1PUwuZXhlYyh0KSkpaWYoaT11WzFdKXtpZig5PT09cCl7aWYoIShhPWUuZ2V0RWxlbWVudEJ5SWQoaSkpKXJldHVybiBuO2lmKGEuaWQ9PT1pKXJldHVybiBrLmNhbGwobixhKSxufWVsc2UgaWYoZiYmKGE9Zi5nZXRFbGVtZW50QnlJZChpKSkmJkkuY29udGFpbnMoZSxhKSYmYS5pZD09PWkpcmV0dXJuIGsuY2FsbChuLGEpLG59ZWxzZXtpZih1WzJdKXJldHVybiBrLmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5VGFnTmFtZSh0KSksbjtpZigoaT11WzNdKSYmZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBrLmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGkpKSxufWlmKCEoaFt0KyIgIl18fGQmJmQudGVzdCh0KSkpe2lmKGM9dCxmPWUsMT09PXAmJih4LnRlc3QodCl8fG0udGVzdCh0KSkpeyhmPUgudGVzdCh0KSYmVShlLnBhcmVudE5vZGUpfHxlKT09ZSYmbGUuc2NvcGV8fCgocz1lLmdldEF0dHJpYnV0ZSgiaWQiKSk/cz1jZS5lc2NhcGVTZWxlY3RvcihzKTplLnNldEF0dHJpYnV0ZSgiaWQiLHM9UykpLG89KGw9WSh0KSkubGVuZ3RoO3doaWxlKG8tLSlsW29dPShzPyIjIitzOiI6c2NvcGUiKSsiICIrUShsW29dKTtjPWwuam9pbigiLCIpfXRyeXtyZXR1cm4gay5hcHBseShuLGYucXVlcnlTZWxlY3RvckFsbChjKSksbn1jYXRjaChlKXtoKHQsITApfWZpbmFsbHl7cz09PVMmJmUucmVtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIHJlKHQucmVwbGFjZSh2ZSwiJDEiKSxlLG4scil9ZnVuY3Rpb24gVygpe3ZhciByPVtdO3JldHVybiBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIHIucHVzaCh0KyIgIik+Yi5jYWNoZUxlbmd0aCYmZGVsZXRlIGVbci5zaGlmdCgpXSxlW3QrIiAiXT1ufX1mdW5jdGlvbiBGKGUpe3JldHVybiBlW1NdPSEwLGV9ZnVuY3Rpb24gJChlKXt2YXIgdD1ULmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0Iik7dHJ5e3JldHVybiEhZSh0KX1jYXRjaChlKXtyZXR1cm4hMX1maW5hbGx5e3QucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLHQ9bnVsbH19ZnVuY3Rpb24gQih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIGZlKGUsImlucHV0IikmJmUudHlwZT09PXR9fWZ1bmN0aW9uIF8odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybihmZShlLCJpbnB1dCIpfHxmZShlLCJidXR0b24iKSkmJmUudHlwZT09PXR9fWZ1bmN0aW9uIHoodCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiJmb3JtImluIGU/ZS5wYXJlbnROb2RlJiYhMT09PWUuZGlzYWJsZWQ/ImxhYmVsImluIGU/ImxhYmVsImluIGUucGFyZW50Tm9kZT9lLnBhcmVudE5vZGUuZGlzYWJsZWQ9PT10OmUuZGlzYWJsZWQ9PT10OmUuaXNEaXNhYmxlZD09PXR8fGUuaXNEaXNhYmxlZCE9PSF0JiZSKGUpPT09dDplLmRpc2FibGVkPT09dDoibGFiZWwiaW4gZSYmZS5kaXNhYmxlZD09PXR9fWZ1bmN0aW9uIFgoYSl7cmV0dXJuIEYoZnVuY3Rpb24obyl7cmV0dXJuIG89K28sRihmdW5jdGlvbihlLHQpe3ZhciBuLHI9YShbXSxlLmxlbmd0aCxvKSxpPXIubGVuZ3RoO3doaWxlKGktLSllW249cltpXV0mJihlW25dPSEodFtuXT1lW25dKSl9KX0pfWZ1bmN0aW9uIFUoZSl7cmV0dXJuIGUmJiJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmZX1mdW5jdGlvbiBWKGUpe3ZhciB0LG49ZT9lLm93bmVyRG9jdW1lbnR8fGU6eWU7cmV0dXJuIG4hPVQmJjk9PT1uLm5vZGVUeXBlJiZuLmRvY3VtZW50RWxlbWVudCYmKHI9KFQ9bikuZG9jdW1lbnRFbGVtZW50LEM9IWNlLmlzWE1MRG9jKFQpLGk9ci5tYXRjaGVzfHxyLndlYmtpdE1hdGNoZXNTZWxlY3Rvcnx8ci5tc01hdGNoZXNTZWxlY3RvcixyLm1zTWF0Y2hlc1NlbGVjdG9yJiZ5ZSE9VCYmKHQ9VC5kZWZhdWx0VmlldykmJnQudG9wIT09dCYmdC5hZGRFdmVudExpc3RlbmVyKCJ1bmxvYWQiLE0pLGxlLmdldEJ5SWQ9JChmdW5jdGlvbihlKXtyZXR1cm4gci5hcHBlbmRDaGlsZChlKS5pZD1jZS5leHBhbmRvLCFULmdldEVsZW1lbnRzQnlOYW1lfHwhVC5nZXRFbGVtZW50c0J5TmFtZShjZS5leHBhbmRvKS5sZW5ndGh9KSxsZS5kaXNjb25uZWN0ZWRNYXRjaD0kKGZ1bmN0aW9uKGUpe3JldHVybiBpLmNhbGwoZSwiKiIpfSksbGUuc2NvcGU9JChmdW5jdGlvbigpe3JldHVybiBULnF1ZXJ5U2VsZWN0b3JBbGwoIjpzY29wZSIpfSksbGUuY3NzSGFzPSQoZnVuY3Rpb24oKXt0cnl7cmV0dXJuIFQucXVlcnlTZWxlY3RvcigiOmhhcygqLDpqcWZha2UpIiksITF9Y2F0Y2goZSl7cmV0dXJuITB9fSksbGUuZ2V0QnlJZD8oYi5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKE8sUCk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaWQiKT09PXR9fSxiLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkMpe3ZhciBuPXQuZ2V0RWxlbWVudEJ5SWQoZSk7cmV0dXJuIG4/W25dOltdfX0pOihiLmZpbHRlci5JRD1mdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2UoTyxQKTtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gdCYmdC52YWx1ZT09PW59fSxiLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkMpe3ZhciBuLHIsaSxvPXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK10paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVybltdfX0pLGIuZmluZC5UQUc9ZnVuY3Rpb24oZSx0KXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudHNCeVRhZ05hbWU/dC5nZXRFbGVtZW50c0J5VGFnTmFtZShlKTp0LnF1ZXJ5U2VsZWN0b3JBbGwoZSl9LGIuZmluZC5DTEFTUz1mdW5jdGlvbihlLHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lJiZDKXJldHVybiB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoZSl9LGQ9W10sJChmdW5jdGlvbihlKXt2YXIgdDtyLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrUysiJyBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgaWQ9JyIrUysiLVxyXFwnIGRpc2FibGVkPSdkaXNhYmxlZCc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW3NlbGVjdGVkXSIpLmxlbmd0aHx8ZC5wdXNoKCJcXFsiK2dlKyIqKD86dmFsdWV8IitmKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrUysiLV0iKS5sZW5ndGh8fGQucHVzaCgifj0iKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIitTKyIrKiIpLmxlbmd0aHx8ZC5wdXNoKCIuIy4rWyt+XSIpLGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGh8fGQucHVzaCgiOmNoZWNrZWQiKSwodD1ULmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLHIuYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZkLnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksKHQ9VC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCIiKSxlLmFwcGVuZENoaWxkKHQpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9JyddIikubGVuZ3RofHxkLnB1c2goIlxcWyIrZ2UrIipuYW1lIitnZSsiKj0iK2dlKyIqKD86Jyd8XCJcIikiKX0pLGxlLmNzc0hhc3x8ZC5wdXNoKCI6aGFzIiksZD1kLmxlbmd0aCYmbmV3IFJlZ0V4cChkLmpvaW4oInwiKSksbD1mdW5jdGlvbihlLHQpe2lmKGU9PT10KXJldHVybiBhPSEwLDA7dmFyIG49IWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24tIXQuY29tcGFyZURvY3VtZW50UG9zaXRpb247cmV0dXJuIG58fCgxJihuPShlLm93bmVyRG9jdW1lbnR8fGUpPT0odC5vd25lckRvY3VtZW50fHx0KT9lLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpOjEpfHwhbGUuc29ydERldGFjaGVkJiZ0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGUpPT09bj9lPT09VHx8ZS5vd25lckRvY3VtZW50PT15ZSYmSS5jb250YWlucyh5ZSxlKT8tMTp0PT09VHx8dC5vd25lckRvY3VtZW50PT15ZSYmSS5jb250YWlucyh5ZSx0KT8xOm8/c2UuY2FsbChvLGUpLXNlLmNhbGwobyx0KTowOjQmbj8tMToxKX0pLFR9Zm9yKGUgaW4gSS5tYXRjaGVzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIEkoZSxudWxsLG51bGwsdCl9LEkubWF0Y2hlc1NlbGVjdG9yPWZ1bmN0aW9uKGUsdCl7aWYoVihlKSxDJiYhaFt0KyIgIl0mJighZHx8IWQudGVzdCh0KSkpdHJ5e3ZhciBuPWkuY2FsbChlLHQpO2lmKG58fGxlLmRpc2Nvbm5lY3RlZE1hdGNofHxlLmRvY3VtZW50JiYxMSE9PWUuZG9jdW1lbnQubm9kZVR5cGUpcmV0dXJuIG59Y2F0Y2goZSl7aCh0LCEwKX1yZXR1cm4gMDxJKHQsVCxudWxsLFtlXSkubGVuZ3RofSxJLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPVQmJlYoZSksY2UuY29udGFpbnMoZSx0KX0sSS5hdHRyPWZ1bmN0aW9uKGUsdCl7KGUub3duZXJEb2N1bWVudHx8ZSkhPVQmJlYoZSk7dmFyIG49Yi5hdHRySGFuZGxlW3QudG9Mb3dlckNhc2UoKV0scj1uJiZ1ZS5jYWxsKGIuYXR0ckhhbmRsZSx0LnRvTG93ZXJDYXNlKCkpP24oZSx0LCFDKTp2b2lkIDA7cmV0dXJuIHZvaWQgMCE9PXI/cjplLmdldEF0dHJpYnV0ZSh0KX0sSS5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIrZSl9LGNlLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxyPTAsaT0wO2lmKGE9IWxlLnNvcnRTdGFibGUsbz0hbGUuc29ydFN0YWJsZSYmYWUuY2FsbChlLDApLGRlLmNhbGwoZSxsKSxhKXt3aGlsZSh0PWVbaSsrXSl0PT09ZVtpXSYmKHI9bi5wdXNoKGkpKTt3aGlsZShyLS0paGUuY2FsbChlLG5bcl0sMSl9cmV0dXJuIG89bnVsbCxlfSxjZS5mbi51bmlxdWVTb3J0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGNlLnVuaXF1ZVNvcnQoYWUuYXBwbHkodGhpcykpKX0sKGI9Y2UuZXhwcj17Y2FjaGVMZW5ndGg6NTAsY3JlYXRlUHNldWRvOkYsbWF0Y2g6RCxhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS5yZXBsYWNlKE8sUCksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UoTyxQKSwifj0iPT09ZVsyXSYmKGVbM109IiAiK2VbM10rIiAiKSxlLnNsaWNlKDAsNCl9LENISUxEOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0udG9Mb3dlckNhc2UoKSwibnRoIj09PWVbMV0uc2xpY2UoMCwzKT8oZVszXXx8SS5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZJLmVycm9yKGVbMF0pLGV9LFBTRVVETzpmdW5jdGlvbihlKXt2YXIgdCxuPSFlWzZdJiZlWzJdO3JldHVybiBELkNISUxELnRlc3QoZVswXSk/bnVsbDooZVszXT9lWzJdPWVbNF18fGVbNV18fCIiOm4mJmoudGVzdChuKSYmKHQ9WShuLCEwKSkmJih0PW4uaW5kZXhPZigiKSIsbi5sZW5ndGgtdCktbi5sZW5ndGgpJiYoZVswXT1lWzBdLnNsaWNlKDAsdCksZVsyXT1uLnNsaWNlKDAsdCkpLGUuc2xpY2UoMCwzKSl9fSxmaWx0ZXI6e1RBRzpmdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UoTyxQKS50b0xvd2VyQ2FzZSgpO3JldHVybiIqIj09PWU/ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIGZlKGUsdCl9fSxDTEFTUzpmdW5jdGlvbihlKXt2YXIgdD1zW2UrIiAiXTtyZXR1cm4gdHx8KHQ9bmV3IFJlZ0V4cCgiKF58IitnZSsiKSIrZSsiKCIrZ2UrInwkKSIpKSYmcyhlLGZ1bmN0aW9uKGUpe3JldHVybiB0LnRlc3QoInN0cmluZyI9PXR5cGVvZiBlLmNsYXNzTmFtZSYmZS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihuLHIsaSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciB0PUkuYXR0cihlLG4pO3JldHVybiBudWxsPT10PyIhPSI9PT1yOiFyfHwodCs9IiIsIj0iPT09cj90PT09aToiIT0iPT09cj90IT09aToiXj0iPT09cj9pJiYwPT09dC5pbmRleE9mKGkpOiIqPSI9PT1yP2kmJi0xPHQuaW5kZXhPZihpKToiJD0iPT09cj9pJiZ0LnNsaWNlKC1pLmxlbmd0aCk9PT1pOiJ+PSI9PT1yPy0xPCgiICIrdC5yZXBsYWNlKHYsIiAiKSsiICIpLmluZGV4T2YoaSk6Inw9Ij09PXImJih0PT09aXx8dC5zbGljZSgwLGkubGVuZ3RoKzEpPT09aSsiLSIpKX19LENISUxEOmZ1bmN0aW9uKGQsZSx0LGgsZyl7dmFyIHY9Im50aCIhPT1kLnNsaWNlKDAsMykseT0ibGFzdCIhPT1kLnNsaWNlKC00KSxtPSJvZi10eXBlIj09PWU7cmV0dXJuIDE9PT1oJiYwPT09Zz9mdW5jdGlvbihlKXtyZXR1cm4hIWUucGFyZW50Tm9kZX06ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdT12IT09eT8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLGw9ZS5wYXJlbnROb2RlLGM9bSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLGY9IW4mJiFtLHA9ITE7aWYobCl7aWYodil7d2hpbGUodSl7bz1lO3doaWxlKG89b1t1XSlpZihtP2ZlKG8sYyk6MT09PW8ubm9kZVR5cGUpcmV0dXJuITE7cz11PSJvbmx5Ij09PWQmJiFzJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKHM9W3k/bC5maXJzdENoaWxkOmwubGFzdENoaWxkXSx5JiZmKXtwPShhPShyPShpPWxbU118fChsW1NdPXt9KSlbZF18fFtdKVswXT09PUUmJnJbMV0pJiZyWzJdLG89YSYmbC5jaGlsZE5vZGVzW2FdO3doaWxlKG89KythJiZvJiZvW3VdfHwocD1hPTApfHxzLnBvcCgpKWlmKDE9PT1vLm5vZGVUeXBlJiYrK3AmJm89PT1lKXtpW2RdPVtFLGEscF07YnJlYWt9fWVsc2UgaWYoZiYmKHA9YT0ocj0oaT1lW1NdfHwoZVtTXT17fSkpW2RdfHxbXSlbMF09PT1FJiZyWzFdKSwhMT09PXApd2hpbGUobz0rK2EmJm8mJm9bdV18fChwPWE9MCl8fHMucG9wKCkpaWYoKG0/ZmUobyxjKToxPT09by5ub2RlVHlwZSkmJisrcCYmKGYmJigoaT1vW1NdfHwob1tTXT17fSkpW2RdPVtFLHBdKSxvPT09ZSkpYnJlYWs7cmV0dXJuKHAtPWcpPT09aHx8cCVoPT0wJiYwPD1wL2h9fX0sUFNFVURPOmZ1bmN0aW9uKGUsbyl7dmFyIHQsYT1iLnBzZXVkb3NbZV18fGIuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxJLmVycm9yKCJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIrZSk7cmV0dXJuIGFbU10/YShvKToxPGEubGVuZ3RoPyh0PVtlLGUsIiIsb10sYi5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9Mb3dlckNhc2UoKSk/RihmdW5jdGlvbihlLHQpe3ZhciBuLHI9YShlLG8pLGk9ci5sZW5ndGg7d2hpbGUoaS0tKWVbbj1zZS5jYWxsKGUscltpXSldPSEodFtuXT1yW2ldKX0pOmZ1bmN0aW9uKGUpe3JldHVybiBhKGUsMCx0KX0pOmF9fSxwc2V1ZG9zOntub3Q6RihmdW5jdGlvbihlKXt2YXIgcj1bXSxpPVtdLHM9bmUoZS5yZXBsYWNlKHZlLCIkMSIpKTtyZXR1cm4gc1tTXT9GKGZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG89cyhlLG51bGwscixbXSksYT1lLmxlbmd0aDt3aGlsZShhLS0pKGk9b1thXSkmJihlW2FdPSEodFthXT1pKSl9KTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHJbMF09ZSxzKHIsbnVsbCxuLGkpLHJbMF09bnVsbCwhaS5wb3AoKX19KSxoYXM6RihmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIDA8SSh0LGUpLmxlbmd0aH19KSxjb250YWluczpGKGZ1bmN0aW9uKHQpe3JldHVybiB0PXQucmVwbGFjZShPLFApLGZ1bmN0aW9uKGUpe3JldHVybi0xPChlLnRleHRDb250ZW50fHxjZS50ZXh0KGUpKS5pbmRleE9mKHQpfX0pLGxhbmc6RihmdW5jdGlvbihuKXtyZXR1cm4gQS50ZXN0KG58fCIiKXx8SS5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZShPLFApLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24oZSl7dmFyIHQ7ZG97aWYodD1DP2UubGFuZzplLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8ZS5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4odD10LnRvTG93ZXJDYXNlKCkpPT09bnx8MD09PXQuaW5kZXhPZihuKyItIil9d2hpbGUoKGU9ZS5wYXJlbnROb2RlKSYmMT09PWUubm9kZVR5cGUpO3JldHVybiExfX0pLHRhcmdldDpmdW5jdGlvbihlKXt2YXIgdD1pZS5sb2NhdGlvbiYmaWUubG9jYXRpb24uaGFzaDtyZXR1cm4gdCYmdC5zbGljZSgxKT09PWUuaWR9LHJvb3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1yfSxmb2N1czpmdW5jdGlvbihlKXtyZXR1cm4gZT09PWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBULmFjdGl2ZUVsZW1lbnR9Y2F0Y2goZSl7fX0oKSYmVC5oYXNGb2N1cygpJiYhIShlLnR5cGV8fGUuaHJlZnx8fmUudGFiSW5kZXgpfSxlbmFibGVkOnooITEpLGRpc2FibGVkOnooITApLGNoZWNrZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGZlKGUsImlucHV0IikmJiEhZS5jaGVja2VkfHxmZShlLCJvcHRpb24iKSYmISFlLnNlbGVjdGVkfSxzZWxlY3RlZDpmdW5jdGlvbihlKXtyZXR1cm4gZS5wYXJlbnROb2RlJiZlLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCwhMD09PWUuc2VsZWN0ZWR9LGVtcHR5OmZ1bmN0aW9uKGUpe2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZylpZihlLm5vZGVUeXBlPDYpcmV0dXJuITE7cmV0dXJuITB9LHBhcmVudDpmdW5jdGlvbihlKXtyZXR1cm4hYi5wc2V1ZG9zLmVtcHR5KGUpfSxoZWFkZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHEudGVzdChlLm5vZGVOYW1lKX0saW5wdXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE4udGVzdChlLm5vZGVOYW1lKX0sYnV0dG9uOmZ1bmN0aW9uKGUpe3JldHVybiBmZShlLCJpbnB1dCIpJiYiYnV0dG9uIj09PWUudHlwZXx8ZmUoZSwiYnV0dG9uIil9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIGZlKGUsImlucHV0IikmJiJ0ZXh0Ij09PWUudHlwZSYmKG51bGw9PSh0PWUuZ2V0QXR0cmlidXRlKCJ0eXBlIikpfHwidGV4dCI9PT10LnRvTG93ZXJDYXNlKCkpfSxmaXJzdDpYKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDpYKGZ1bmN0aW9uKGUsdCl7cmV0dXJuW3QtMV19KSxlcTpYKGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm5bbjwwP24rdDpuXX0pLGV2ZW46WChmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wO248dDtuKz0yKWUucHVzaChuKTtyZXR1cm4gZX0pLG9kZDpYKGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTE7bjx0O24rPTIpZS5wdXNoKG4pO3JldHVybiBlfSksbHQ6WChmdW5jdGlvbihlLHQsbil7dmFyIHI7Zm9yKHI9bjwwP24rdDp0PG4/dDpuOzA8PS0tcjspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6WChmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPW48MD9uK3Q6bjsrK3I8dDspZS5wdXNoKHIpO3JldHVybiBlfSl9fSkucHNldWRvcy5udGg9Yi5wc2V1ZG9zLmVxLHtyYWRpbzohMCxjaGVja2JveDohMCxmaWxlOiEwLHBhc3N3b3JkOiEwLGltYWdlOiEwfSliLnBzZXVkb3NbZV09QihlKTtmb3IoZSBpbntzdWJtaXQ6ITAscmVzZXQ6ITB9KWIucHNldWRvc1tlXT1fKGUpO2Z1bmN0aW9uIEcoKXt9ZnVuY3Rpb24gWShlLHQpe3ZhciBuLHIsaSxvLGEscyx1LGw9Y1tlKyIgIl07aWYobClyZXR1cm4gdD8wOmwuc2xpY2UoMCk7YT1lLHM9W10sdT1iLnByZUZpbHRlcjt3aGlsZShhKXtmb3IobyBpbiBuJiYhKHI9eS5leGVjKGEpKXx8KHImJihhPWEuc2xpY2UoclswXS5sZW5ndGgpfHxhKSxzLnB1c2goaT1bXSkpLG49ITEsKHI9bS5leGVjKGEpKSYmKG49ci5zaGlmdCgpLGkucHVzaCh7dmFsdWU6bix0eXBlOnJbMF0ucmVwbGFjZSh2ZSwiICIpfSksYT1hLnNsaWNlKG4ubGVuZ3RoKSksYi5maWx0ZXIpIShyPURbb10uZXhlYyhhKSl8fHVbb10mJiEocj11W29dKHIpKXx8KG49ci5zaGlmdCgpLGkucHVzaCh7dmFsdWU6bix0eXBlOm8sbWF0Y2hlczpyfSksYT1hLnNsaWNlKG4ubGVuZ3RoKSk7aWYoIW4pYnJlYWt9cmV0dXJuIHQ/YS5sZW5ndGg6YT9JLmVycm9yKGUpOmMoZSxzKS5zbGljZSgwKX1mdW5jdGlvbiBRKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgscj0iIjt0PG47dCsrKXIrPWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gSihhLGUsdCl7dmFyIHM9ZS5kaXIsdT1lLm5leHQsbD11fHxzLGM9dCYmInBhcmVudE5vZGUiPT09bCxmPW4rKztyZXR1cm4gZS5maXJzdD9mdW5jdGlvbihlLHQsbil7d2hpbGUoZT1lW3NdKWlmKDE9PT1lLm5vZGVUeXBlfHxjKXJldHVybiBhKGUsdCxuKTtyZXR1cm4hMX06ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz1bRSxmXTtpZihuKXt3aGlsZShlPWVbc10paWYoKDE9PT1lLm5vZGVUeXBlfHxjKSYmYShlLHQsbikpcmV0dXJuITB9ZWxzZSB3aGlsZShlPWVbc10paWYoMT09PWUubm9kZVR5cGV8fGMpaWYoaT1lW1NdfHwoZVtTXT17fSksdSYmZmUoZSx1KSllPWVbc118fGU7ZWxzZXtpZigocj1pW2xdKSYmclswXT09PUUmJnJbMV09PT1mKXJldHVybiBvWzJdPXJbMl07aWYoKGlbbF09bylbMl09YShlLHQsbikpcmV0dXJuITB9cmV0dXJuITF9fWZ1bmN0aW9uIEsoaSl7cmV0dXJuIDE8aS5sZW5ndGg/ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWkubGVuZ3RoO3doaWxlKHItLSlpZighaVtyXShlLHQsbikpcmV0dXJuITE7cmV0dXJuITB9OmlbMF19ZnVuY3Rpb24gWihlLHQsbixyLGkpe2Zvcih2YXIgbyxhPVtdLHM9MCx1PWUubGVuZ3RoLGw9bnVsbCE9dDtzPHU7cysrKShvPWVbc10pJiYobiYmIW4obyxyLGkpfHwoYS5wdXNoKG8pLGwmJnQucHVzaChzKSkpO3JldHVybiBhfWZ1bmN0aW9uIGVlKGQsaCxnLHYseSxlKXtyZXR1cm4gdiYmIXZbU10mJih2PWVlKHYpKSx5JiYheVtTXSYmKHk9ZWUoeSxlKSksRihmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1PVtdLGw9W10sYz10Lmxlbmd0aCxmPWV8fGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9MCxpPXQubGVuZ3RoO3I8aTtyKyspSShlLHRbcl0sbik7cmV0dXJuIG59KGh8fCIqIixuLm5vZGVUeXBlP1tuXTpuLFtdKSxwPSFkfHwhZSYmaD9mOlooZix1LGQsbixyKTtpZihnP2cocCxzPXl8fChlP2Q6Y3x8dik/W106dCxuLHIpOnM9cCx2KXtpPVoocyxsKSx2KGksW10sbixyKSxvPWkubGVuZ3RoO3doaWxlKG8tLSkoYT1pW29dKSYmKHNbbFtvXV09IShwW2xbb11dPWEpKX1pZihlKXtpZih5fHxkKXtpZih5KXtpPVtdLG89cy5sZW5ndGg7d2hpbGUoby0tKShhPXNbb10pJiZpLnB1c2gocFtvXT1hKTt5KG51bGwscz1bXSxpLHIpfW89cy5sZW5ndGg7d2hpbGUoby0tKShhPXNbb10pJiYtMTwoaT15P3NlLmNhbGwoZSxhKTp1W29dKSYmKGVbaV09ISh0W2ldPWEpKX19ZWxzZSBzPVoocz09PXQ/cy5zcGxpY2UoYyxzLmxlbmd0aCk6cykseT95KG51bGwsdCxzLHIpOmsuYXBwbHkodCxzKX0pfWZ1bmN0aW9uIHRlKGUpe2Zvcih2YXIgaSx0LG4scj1lLmxlbmd0aCxvPWIucmVsYXRpdmVbZVswXS50eXBlXSxhPW98fGIucmVsYXRpdmVbIiAiXSxzPW8/MTowLHU9SihmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LGEsITApLGw9SihmdW5jdGlvbihlKXtyZXR1cm4tMTxzZS5jYWxsKGksZSl9LGEsITApLGM9W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj0hbyYmKG58fHQhPXcpfHwoKGk9dCkubm9kZVR5cGU/dShlLHQsbik6bChlLHQsbikpO3JldHVybiBpPW51bGwscn1dO3M8cjtzKyspaWYodD1iLnJlbGF0aXZlW2Vbc10udHlwZV0pYz1bSihLKGMpLHQpXTtlbHNle2lmKCh0PWIuZmlsdGVyW2Vbc10udHlwZV0uYXBwbHkobnVsbCxlW3NdLm1hdGNoZXMpKVtTXSl7Zm9yKG49KytzO248cjtuKyspaWYoYi5yZWxhdGl2ZVtlW25dLnR5cGVdKWJyZWFrO3JldHVybiBlZSgxPHMmJksoYyksMTxzJiZRKGUuc2xpY2UoMCxzLTEpLmNvbmNhdCh7dmFsdWU6IiAiPT09ZVtzLTJdLnR5cGU/IioiOiIifSkpLnJlcGxhY2UodmUsIiQxIiksdCxzPG4mJnRlKGUuc2xpY2UocyxuKSksbjxyJiZ0ZShlPWUuc2xpY2UobikpLG48ciYmUShlKSl9Yy5wdXNoKHQpfXJldHVybiBLKGMpfWZ1bmN0aW9uIG5lKGUsdCl7dmFyIG4sdix5LG0seCxyLGk9W10sbz1bXSxhPXVbZSsiICJdO2lmKCFhKXt0fHwodD1ZKGUpKSxuPXQubGVuZ3RoO3doaWxlKG4tLSkoYT10ZSh0W25dKSlbU10/aS5wdXNoKGEpOm8ucHVzaChhKTsoYT11KGUsKHY9byxtPTA8KHk9aSkubGVuZ3RoLHg9MDx2Lmxlbmd0aCxyPWZ1bmN0aW9uKGUsdCxuLHIsaSl7dmFyIG8sYSxzLHU9MCxsPSIwIixjPWUmJltdLGY9W10scD13LGQ9ZXx8eCYmYi5maW5kLlRBRygiKiIsaSksaD1FKz1udWxsPT1wPzE6TWF0aC5yYW5kb20oKXx8LjEsZz1kLmxlbmd0aDtmb3IoaSYmKHc9dD09VHx8dHx8aSk7bCE9PWcmJm51bGwhPShvPWRbbF0pO2wrKyl7aWYoeCYmbyl7YT0wLHR8fG8ub3duZXJEb2N1bWVudD09VHx8KFYobyksbj0hQyk7d2hpbGUocz12W2ErK10paWYocyhvLHR8fFQsbikpe2suY2FsbChyLG8pO2JyZWFrfWkmJihFPWgpfW0mJigobz0hcyYmbykmJnUtLSxlJiZjLnB1c2gobykpfWlmKHUrPWwsbSYmbCE9PXUpe2E9MDt3aGlsZShzPXlbYSsrXSlzKGMsZix0LG4pO2lmKGUpe2lmKDA8dSl3aGlsZShsLS0pY1tsXXx8ZltsXXx8KGZbbF09cGUuY2FsbChyKSk7Zj1aKGYpfWsuYXBwbHkocixmKSxpJiYhZSYmMDxmLmxlbmd0aCYmMTx1K3kubGVuZ3RoJiZjZS51bmlxdWVTb3J0KHIpfXJldHVybiBpJiYoRT1oLHc9cCksY30sbT9GKHIpOnIpKSkuc2VsZWN0b3I9ZX1yZXR1cm4gYX1mdW5jdGlvbiByZShlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9ImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUsYz0hciYmWShlPWwuc2VsZWN0b3J8fGUpO2lmKG49bnx8W10sMT09PWMubGVuZ3RoKXtpZigyPChvPWNbMF09Y1swXS5zbGljZSgwKSkubGVuZ3RoJiYiSUQiPT09KGE9b1swXSkudHlwZSYmOT09PXQubm9kZVR5cGUmJkMmJmIucmVsYXRpdmVbb1sxXS50eXBlXSl7aWYoISh0PShiLmZpbmQuSUQoYS5tYXRjaGVzWzBdLnJlcGxhY2UoTyxQKSx0KXx8W10pWzBdKSlyZXR1cm4gbjtsJiYodD10LnBhcmVudE5vZGUpLGU9ZS5zbGljZShvLnNoaWZ0KCkudmFsdWUubGVuZ3RoKX1pPUQubmVlZHNDb250ZXh0LnRlc3QoZSk/MDpvLmxlbmd0aDt3aGlsZShpLS0pe2lmKGE9b1tpXSxiLnJlbGF0aXZlW3M9YS50eXBlXSlicmVhaztpZigodT1iLmZpbmRbc10pJiYocj11KGEubWF0Y2hlc1swXS5yZXBsYWNlKE8sUCksSC50ZXN0KG9bMF0udHlwZSkmJlUodC5wYXJlbnROb2RlKXx8dCkpKXtpZihvLnNwbGljZShpLDEpLCEoZT1yLmxlbmd0aCYmUShvKSkpcmV0dXJuIGsuYXBwbHkobixyKSxuO2JyZWFrfX19cmV0dXJuKGx8fG5lKGUsYykpKHIsdCwhQyxuLCF0fHxILnRlc3QoZSkmJlUodC5wYXJlbnROb2RlKXx8dCksbn1HLnByb3RvdHlwZT1iLmZpbHRlcnM9Yi5wc2V1ZG9zLGIuc2V0RmlsdGVycz1uZXcgRyxsZS5zb3J0U3RhYmxlPVMuc3BsaXQoIiIpLnNvcnQobCkuam9pbigiIik9PT1TLFYoKSxsZS5zb3J0RGV0YWNoZWQ9JChmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKFQuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSl9KSxjZS5maW5kPUksY2UuZXhwclsiOiJdPWNlLmV4cHIucHNldWRvcyxjZS51bmlxdWU9Y2UudW5pcXVlU29ydCxJLmNvbXBpbGU9bmUsSS5zZWxlY3Q9cmUsSS5zZXREb2N1bWVudD1WLEkudG9rZW5pemU9WSxJLmVzY2FwZT1jZS5lc2NhcGVTZWxlY3RvcixJLmdldFRleHQ9Y2UudGV4dCxJLmlzWE1MPWNlLmlzWE1MRG9jLEkuc2VsZWN0b3JzPWNlLmV4cHIsSS5zdXBwb3J0PWNlLnN1cHBvcnQsSS51bmlxdWVTb3J0PWNlLnVuaXF1ZVNvcnR9KCk7dmFyIGQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVtdLGk9dm9pZCAwIT09bjt3aGlsZSgoZT1lW3RdKSYmOSE9PWUubm9kZVR5cGUpaWYoMT09PWUubm9kZVR5cGUpe2lmKGkmJmNlKGUpLmlzKG4pKWJyZWFrO3IucHVzaChlKX1yZXR1cm4gcn0saD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj1bXTtlO2U9ZS5uZXh0U2libGluZykxPT09ZS5ub2RlVHlwZSYmZSE9PXQmJm4ucHVzaChlKTtyZXR1cm4gbn0sYj1jZS5leHByLm1hdGNoLm5lZWRzQ29udGV4dCx3PS9ePChbYS16XVteXC9cMD46XHgyMFx0XHJcblxmXSopW1x4MjBcdFxyXG5cZl0qXC8/Pig/OjxcL1wxPnwpJC9pO2Z1bmN0aW9uIFQoZSxuLHIpe3JldHVybiB2KG4pP2NlLmdyZXAoZSxmdW5jdGlvbihlLHQpe3JldHVybiEhbi5jYWxsKGUsdCxlKSE9PXJ9KTpuLm5vZGVUeXBlP2NlLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gZT09PW4hPT1yfSk6InN0cmluZyIhPXR5cGVvZiBuP2NlLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4tMTxzZS5jYWxsKG4sZSkhPT1yfSk6Y2UuZmlsdGVyKG4sZSxyKX1jZS5maWx0ZXI9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRbMF07cmV0dXJuIG4mJihlPSI6bm90KCIrZSsiKSIpLDE9PT10Lmxlbmd0aCYmMT09PXIubm9kZVR5cGU/Y2UuZmluZC5tYXRjaGVzU2VsZWN0b3IocixlKT9bcl06W106Y2UuZmluZC5tYXRjaGVzKGUsY2UuZ3JlcCh0LGZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZX0pKX0sY2UuZm4uZXh0ZW5kKHtmaW5kOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj10aGlzLmxlbmd0aCxpPXRoaXM7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiB0aGlzLnB1c2hTdGFjayhjZShlKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYoY2UuY29udGFpbnMoaVt0XSx0aGlzKSlyZXR1cm4hMH0pKTtmb3Iobj10aGlzLnB1c2hTdGFjayhbXSksdD0wO3Q8cjt0KyspY2UuZmluZChlLGlbdF0sbik7cmV0dXJuIDE8cj9jZS51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soVCh0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soVCh0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhVCh0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmYi50ZXN0KGUpP2NlKGUpOmV8fFtdLCExKS5sZW5ndGh9fSk7dmFyIGssUz0vXig/OlxzKig8W1x3XFddKz4pW14+XSp8IyhbXHctXSspKSQvOyhjZS5mbi5pbml0PWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpO2lmKCFlKXJldHVybiB0aGlzO2lmKG49bnx8aywic3RyaW5nIj09dHlwZW9mIGUpe2lmKCEocj0iPCI9PT1lWzBdJiYiPiI9PT1lW2UubGVuZ3RoLTFdJiYzPD1lLmxlbmd0aD9bbnVsbCxlLG51bGxdOlMuZXhlYyhlKSl8fCFyWzFdJiZ0KXJldHVybiF0fHx0LmpxdWVyeT8odHx8bikuZmluZChlKTp0aGlzLmNvbnN0cnVjdG9yKHQpLmZpbmQoZSk7aWYoclsxXSl7aWYodD10IGluc3RhbmNlb2YgY2U/dFswXTp0LGNlLm1lcmdlKHRoaXMsY2UucGFyc2VIVE1MKHJbMV0sdCYmdC5ub2RlVHlwZT90Lm93bmVyRG9jdW1lbnR8fHQ6QywhMCkpLHcudGVzdChyWzFdKSYmY2UuaXNQbGFpbk9iamVjdCh0KSlmb3IociBpbiB0KXYodGhpc1tyXSk/dGhpc1tyXSh0W3JdKTp0aGlzLmF0dHIocix0W3JdKTtyZXR1cm4gdGhpc31yZXR1cm4oaT1DLmdldEVsZW1lbnRCeUlkKHJbMl0pKSYmKHRoaXNbMF09aSx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeXBlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTp2KGUpP3ZvaWQgMCE9PW4ucmVhZHk/bi5yZWFkeShlKTplKGNlKTpjZS5tYWtlQXJyYXkoZSx0aGlzKX0pLnByb3RvdHlwZT1jZS5mbixrPWNlKEMpO3ZhciBFPS9eKD86cGFyZW50c3xwcmV2KD86VW50aWx8QWxsKSkvLGo9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ZnVuY3Rpb24gQShlLHQpe3doaWxlKChlPWVbdF0pJiYxIT09ZS5ub2RlVHlwZSk7cmV0dXJuIGV9Y2UuZm4uZXh0ZW5kKHtoYXM6ZnVuY3Rpb24oZSl7dmFyIHQ9Y2UoZSx0aGlzKSxuPXQubGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYoY2UuY29udGFpbnModGhpcyx0W2VdKSlyZXR1cm4hMH0pfSxjbG9zZXN0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0wLGk9dGhpcy5sZW5ndGgsbz1bXSxhPSJzdHJpbmciIT10eXBlb2YgZSYmY2UoZSk7aWYoIWIudGVzdChlKSlmb3IoO3I8aTtyKyspZm9yKG49dGhpc1tyXTtuJiZuIT09dDtuPW4ucGFyZW50Tm9kZSlpZihuLm5vZGVUeXBlPDExJiYoYT8tMTxhLmluZGV4KG4pOjE9PT1uLm5vZGVUeXBlJiZjZS5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjaygxPG8ubGVuZ3RoP2NlLnVuaXF1ZVNvcnQobyk6byl9LGluZGV4OmZ1bmN0aW9uKGUpe3JldHVybiBlPyJzdHJpbmciPT10eXBlb2YgZT9zZS5jYWxsKGNlKGUpLHRoaXNbMF0pOnNlLmNhbGwodGhpcyxlLmpxdWVyeT9lWzBdOmUpOnRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT90aGlzLmZpcnN0KCkucHJldkFsbCgpLmxlbmd0aDotMX0sYWRkOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGNlLnVuaXF1ZVNvcnQoY2UubWVyZ2UodGhpcy5nZXQoKSxjZShlLHQpKSkpfSxhZGRCYWNrOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmFkZChudWxsPT1lP3RoaXMucHJldk9iamVjdDp0aGlzLnByZXZPYmplY3QuZmlsdGVyKGUpKX19KSxjZS5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/dDpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiBkKGUsInBhcmVudE5vZGUiKX0scGFyZW50c1VudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZChlLCJwYXJlbnROb2RlIixuKX0sbmV4dDpmdW5jdGlvbihlKXtyZXR1cm4gQShlLCJuZXh0U2libGluZyIpfSxwcmV2OmZ1bmN0aW9uKGUpe3JldHVybiBBKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBkKGUsIm5leHRTaWJsaW5nIil9LHByZXZBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGQoZSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGQoZSwibmV4dFNpYmxpbmciLG4pfSxwcmV2VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBkKGUsInByZXZpb3VzU2libGluZyIsbil9LHNpYmxpbmdzOmZ1bmN0aW9uKGUpe3JldHVybiBoKChlLnBhcmVudE5vZGV8fHt9KS5maXJzdENoaWxkLGUpfSxjaGlsZHJlbjpmdW5jdGlvbihlKXtyZXR1cm4gaChlLmZpcnN0Q2hpbGQpfSxjb250ZW50czpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZS5jb250ZW50RG9jdW1lbnQmJnIoZS5jb250ZW50RG9jdW1lbnQpP2UuY29udGVudERvY3VtZW50OihmZShlLCJ0ZW1wbGF0ZSIpJiYoZT1lLmNvbnRlbnR8fGUpLGNlLm1lcmdlKFtdLGUuY2hpbGROb2RlcykpfX0sZnVuY3Rpb24ocixpKXtjZS5mbltyXT1mdW5jdGlvbihlLHQpe3ZhciBuPWNlLm1hcCh0aGlzLGksZSk7cmV0dXJuIlVudGlsIiE9PXIuc2xpY2UoLTUpJiYodD1lKSx0JiYic3RyaW5nIj09dHlwZW9mIHQmJihuPWNlLmZpbHRlcih0LG4pKSwxPHRoaXMubGVuZ3RoJiYoaltyXXx8Y2UudW5pcXVlU29ydChuKSxFLnRlc3QocikmJm4ucmV2ZXJzZSgpKSx0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgRD0vW15ceDIwXHRcclxuXGZdKy9nO2Z1bmN0aW9uIE4oZSl7cmV0dXJuIGV9ZnVuY3Rpb24gcShlKXt0aHJvdyBlfWZ1bmN0aW9uIEwoZSx0LG4scil7dmFyIGk7dHJ5e2UmJnYoaT1lLnByb21pc2UpP2kuY2FsbChlKS5kb25lKHQpLmZhaWwobik6ZSYmdihpPWUudGhlbik/aS5jYWxsKGUsdCxuKTp0LmFwcGx5KHZvaWQgMCxbZV0uc2xpY2UocikpfWNhdGNoKGUpe24uYXBwbHkodm9pZCAwLFtlXSl9fWNlLkNhbGxiYWNrcz1mdW5jdGlvbihyKXt2YXIgZSxuO3I9InN0cmluZyI9PXR5cGVvZiByPyhlPXIsbj17fSxjZS5lYWNoKGUubWF0Y2goRCl8fFtdLGZ1bmN0aW9uKGUsdCl7blt0XT0hMH0pLG4pOmNlLmV4dGVuZCh7fSxyKTt2YXIgaSx0LG8sYSxzPVtdLHU9W10sbD0tMSxjPWZ1bmN0aW9uKCl7Zm9yKGE9YXx8ci5vbmNlLG89aT0hMDt1Lmxlbmd0aDtsPS0xKXt0PXUuc2hpZnQoKTt3aGlsZSgrK2w8cy5sZW5ndGgpITE9PT1zW2xdLmFwcGx5KHRbMF0sdFsxXSkmJnIuc3RvcE9uRmFsc2UmJihsPXMubGVuZ3RoLHQ9ITEpfXIubWVtb3J5fHwodD0hMSksaT0hMSxhJiYocz10P1tdOiIiKX0sZj17YWRkOmZ1bmN0aW9uKCl7cmV0dXJuIHMmJih0JiYhaSYmKGw9cy5sZW5ndGgtMSx1LnB1c2godCkpLGZ1bmN0aW9uIG4oZSl7Y2UuZWFjaChlLGZ1bmN0aW9uKGUsdCl7dih0KT9yLnVuaXF1ZSYmZi5oYXModCl8fHMucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT14KHQpJiZuKHQpfSl9KGFyZ3VtZW50cyksdCYmIWkmJmMoKSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJuIGNlLmVhY2goYXJndW1lbnRzLGZ1bmN0aW9uKGUsdCl7dmFyIG47d2hpbGUoLTE8KG49Y2UuaW5BcnJheSh0LHMsbikpKXMuc3BsaWNlKG4sMSksbjw9bCYmbC0tfSksdGhpc30saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlPy0xPGNlLmluQXJyYXkoZSxzKTowPHMubGVuZ3RofSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiBzJiYocz1bXSksdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBhPXU9W10scz10PSIiLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXN9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYT11PVtdLHR8fGl8fChzPXQ9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhYX0sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXx8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSx1LnB1c2godCksaXx8YygpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIGYuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFvfX07cmV0dXJuIGZ9LGNlLmV4dGVuZCh7RGVmZXJyZWQ6ZnVuY3Rpb24oZSl7dmFyIG89W1sibm90aWZ5IiwicHJvZ3Jlc3MiLGNlLkNhbGxiYWNrcygibWVtb3J5IiksY2UuQ2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixjZS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksY2UuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDAsInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIixjZS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksY2UuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDEsInJlamVjdGVkIl1dLGk9InBlbmRpbmciLGE9e3N0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGFsd2F5czpmdW5jdGlvbigpe3JldHVybiBzLmRvbmUoYXJndW1lbnRzKS5mYWlsKGFyZ3VtZW50cyksdGhpc30sImNhdGNoIjpmdW5jdGlvbihlKXtyZXR1cm4gYS50aGVuKG51bGwsZSl9LHBpcGU6ZnVuY3Rpb24oKXt2YXIgaT1hcmd1bWVudHM7cmV0dXJuIGNlLkRlZmVycmVkKGZ1bmN0aW9uKHIpe2NlLmVhY2gobyxmdW5jdGlvbihlLHQpe3ZhciBuPXYoaVt0WzRdXSkmJmlbdFs0XV07c1t0WzFdXShmdW5jdGlvbigpe3ZhciBlPW4mJm4uYXBwbHkodGhpcyxhcmd1bWVudHMpO2UmJnYoZS5wcm9taXNlKT9lLnByb21pc2UoKS5wcm9ncmVzcyhyLm5vdGlmeSkuZG9uZShyLnJlc29sdmUpLmZhaWwoci5yZWplY3QpOnJbdFswXSsiV2l0aCJdKHRoaXMsbj9bZV06YXJndW1lbnRzKX0pfSksaT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKHQsbixyKXt2YXIgdT0wO2Z1bmN0aW9uIGwoaSxvLGEscyl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49dGhpcyxyPWFyZ3VtZW50cyxlPWZ1bmN0aW9uKCl7dmFyIGUsdDtpZighKGk8dSkpe2lmKChlPWEuYXBwbHkobixyKSk9PT1vLnByb21pc2UoKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTt0PWUmJigib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSYmZS50aGVuLHYodCk/cz90LmNhbGwoZSxsKHUsbyxOLHMpLGwodSxvLHEscykpOih1KyssdC5jYWxsKGUsbCh1LG8sTixzKSxsKHUsbyxxLHMpLGwodSxvLE4sby5ub3RpZnlXaXRoKSkpOihhIT09TiYmKG49dm9pZCAwLHI9W2VdKSwoc3x8by5yZXNvbHZlV2l0aCkobixyKSl9fSx0PXM/ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7Y2UuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayYmY2UuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhlLHQuZXJyb3IpLHU8PWkrMSYmKGEhPT1xJiYobj12b2lkIDAscj1bZV0pLG8ucmVqZWN0V2l0aChuLHIpKX19O2k/dCgpOihjZS5EZWZlcnJlZC5nZXRFcnJvckhvb2s/dC5lcnJvcj1jZS5EZWZlcnJlZC5nZXRFcnJvckhvb2soKTpjZS5EZWZlcnJlZC5nZXRTdGFja0hvb2smJih0LmVycm9yPWNlLkRlZmVycmVkLmdldFN0YWNrSG9vaygpKSxpZS5zZXRUaW1lb3V0KHQpKX19cmV0dXJuIGNlLkRlZmVycmVkKGZ1bmN0aW9uKGUpe29bMF1bM10uYWRkKGwoMCxlLHYocik/cjpOLGUubm90aWZ5V2l0aCkpLG9bMV1bM10uYWRkKGwoMCxlLHYodCk/dDpOKSksb1syXVszXS5hZGQobCgwLGUsdihuKT9uOnEpKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZT9jZS5leHRlbmQoZSxhKTphfX0scz17fTtyZXR1cm4gY2UuZWFjaChvLGZ1bmN0aW9uKGUsdCl7dmFyIG49dFsyXSxyPXRbNV07YVt0WzFdXT1uLmFkZCxyJiZuLmFkZChmdW5jdGlvbigpe2k9cn0sb1szLWVdWzJdLmRpc2FibGUsb1szLWVdWzNdLmRpc2FibGUsb1swXVsyXS5sb2NrLG9bMF1bM10ubG9jayksbi5hZGQodFszXS5maXJlKSxzW3RbMF1dPWZ1bmN0aW9uKCl7cmV0dXJuIHNbdFswXSsiV2l0aCJdKHRoaXM9PT1zP3ZvaWQgMDp0aGlzLGFyZ3VtZW50cyksdGhpc30sc1t0WzBdKyJXaXRoIl09bi5maXJlV2l0aH0pLGEucHJvbWlzZShzKSxlJiZlLmNhbGwocyxzKSxzfSx3aGVuOmZ1bmN0aW9uKGUpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGgsdD1uLHI9QXJyYXkodCksaT1hZS5jYWxsKGFyZ3VtZW50cyksbz1jZS5EZWZlcnJlZCgpLGE9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxpW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9hZS5jYWxsKGFyZ3VtZW50cyk6ZSwtLW58fG8ucmVzb2x2ZVdpdGgocixpKX19O2lmKG48PTEmJihMKGUsby5kb25lKGEodCkpLnJlc29sdmUsby5yZWplY3QsIW4pLCJwZW5kaW5nIj09PW8uc3RhdGUoKXx8dihpW3RdJiZpW3RdLnRoZW4pKSlyZXR1cm4gby50aGVuKCk7d2hpbGUodC0tKUwoaVt0XSxhKHQpLG8ucmVqZWN0KTtyZXR1cm4gby5wcm9taXNlKCl9fSk7dmFyIEg9L14oRXZhbHxJbnRlcm5hbHxSYW5nZXxSZWZlcmVuY2V8U3ludGF4fFR5cGV8VVJJKUVycm9yJC87Y2UuRGVmZXJyZWQuZXhjZXB0aW9uSG9vaz1mdW5jdGlvbihlLHQpe2llLmNvbnNvbGUmJmllLmNvbnNvbGUud2FybiYmZSYmSC50ZXN0KGUubmFtZSkmJmllLmNvbnNvbGUud2FybigialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIitlLm1lc3NhZ2UsZS5zdGFjayx0KX0sY2UucmVhZHlFeGNlcHRpb249ZnVuY3Rpb24oZSl7aWUuc2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGV9KX07dmFyIE89Y2UuRGVmZXJyZWQoKTtmdW5jdGlvbiBQKCl7Qy5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixQKSxpZS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixQKSxjZS5yZWFkeSgpfWNlLmZuLnJlYWR5PWZ1bmN0aW9uKGUpe3JldHVybiBPLnRoZW4oZSlbImNhdGNoIl0oZnVuY3Rpb24oZSl7Y2UucmVhZHlFeGNlcHRpb24oZSl9KSx0aGlzfSxjZS5leHRlbmQoe2lzUmVhZHk6ITEscmVhZHlXYWl0OjEscmVhZHk6ZnVuY3Rpb24oZSl7KCEwPT09ZT8tLWNlLnJlYWR5V2FpdDpjZS5pc1JlYWR5KXx8KGNlLmlzUmVhZHk9ITApIT09ZSYmMDwtLWNlLnJlYWR5V2FpdHx8Ty5yZXNvbHZlV2l0aChDLFtjZV0pfX0pLGNlLnJlYWR5LnRoZW49Ty50aGVuLCJjb21wbGV0ZSI9PT1DLnJlYWR5U3RhdGV8fCJsb2FkaW5nIiE9PUMucmVhZHlTdGF0ZSYmIUMuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsP2llLnNldFRpbWVvdXQoY2UucmVhZHkpOihDLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLFApLGllLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLFApKTt2YXIgTT1mdW5jdGlvbihlLHQsbixyLGksbyxhKXt2YXIgcz0wLHU9ZS5sZW5ndGgsbD1udWxsPT1uO2lmKCJvYmplY3QiPT09eChuKSlmb3IocyBpbiBpPSEwLG4pTShlLHQscyxuW3NdLCEwLG8sYSk7ZWxzZSBpZih2b2lkIDAhPT1yJiYoaT0hMCx2KHIpfHwoYT0hMCksbCYmKGE/KHQuY2FsbChlLHIpLHQ9bnVsbCk6KGw9dCx0PWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbC5jYWxsKGNlKGUpLG4pfSkpLHQpKWZvcig7czx1O3MrKyl0KGVbc10sbixhP3I6ci5jYWxsKGVbc10scyx0KGVbc10sbikpKTtyZXR1cm4gaT9lOmw/dC5jYWxsKGUpOnU/dChlWzBdLG4pOm99LFI9L14tbXMtLyxJPS8tKFthLXpdKS9nO2Z1bmN0aW9uIFcoZSx0KXtyZXR1cm4gdC50b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIEYoZSl7cmV0dXJuIGUucmVwbGFjZShSLCJtcy0iKS5yZXBsYWNlKEksVyl9dmFyICQ9ZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfHw5PT09ZS5ub2RlVHlwZXx8IStlLm5vZGVUeXBlfTtmdW5jdGlvbiBCKCl7dGhpcy5leHBhbmRvPWNlLmV4cGFuZG8rQi51aWQrK31CLnVpZD0xLEIucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LCQoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClpW0YodCldPW47ZWxzZSBmb3IociBpbiB0KWlbRihyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtGKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChGKToodD1GKHQpKWluIHI/W3RdOnQubWF0Y2goRCl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT10fHxjZS5pc0VtcHR5T2JqZWN0KHIpKSYmKGUubm9kZVR5cGU/ZVt0aGlzLmV4cGFuZG9dPXZvaWQgMDpkZWxldGUgZVt0aGlzLmV4cGFuZG9dKX19LGhhc0RhdGE6ZnVuY3Rpb24oZSl7dmFyIHQ9ZVt0aGlzLmV4cGFuZG9dO3JldHVybiB2b2lkIDAhPT10JiYhY2UuaXNFbXB0eU9iamVjdCh0KX19O3ZhciBfPW5ldyBCLHo9bmV3IEIsWD0vXig/Olx7W1x3XFddKlx9fFxbW1x3XFddKlxdKSQvLFU9L1tBLVpdL2c7ZnVuY3Rpb24gVihlLHQsbil7dmFyIHIsaTtpZih2b2lkIDA9PT1uJiYxPT09ZS5ub2RlVHlwZSlpZihyPSJkYXRhLSIrdC5yZXBsYWNlKFUsIi0kJiIpLnRvTG93ZXJDYXNlKCksInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5e249InRydWUiPT09KGk9bil8fCJmYWxzZSIhPT1pJiYoIm51bGwiPT09aT9udWxsOmk9PT0raSsiIj8raTpYLnRlc3QoaSk/SlNPTi5wYXJzZShpKTppKX1jYXRjaChlKXt9ei5zZXQoZSx0LG4pfWVsc2Ugbj12b2lkIDA7cmV0dXJuIG59Y2UuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiB6Lmhhc0RhdGEoZSl8fF8uaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHouYWNjZXNzKGUsdCxuKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe3oucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gXy5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe18ucmVtb3ZlKGUsdCl9fSksY2UuZm4uZXh0ZW5kKHtkYXRhOmZ1bmN0aW9uKG4sZSl7dmFyIHQscixpLG89dGhpc1swXSxhPW8mJm8uYXR0cmlidXRlcztpZih2b2lkIDA9PT1uKXtpZih0aGlzLmxlbmd0aCYmKGk9ei5nZXQobyksMT09PW8ubm9kZVR5cGUmJiFfLmdldChvLCJoYXNEYXRhQXR0cnMiKSkpe3Q9YS5sZW5ndGg7d2hpbGUodC0tKWFbdF0mJjA9PT0ocj1hW3RdLm5hbWUpLmluZGV4T2YoImRhdGEtIikmJihyPUYoci5zbGljZSg1KSksVihvLHIsaVtyXSkpO18uc2V0KG8sImhhc0RhdGFBdHRycyIsITApfXJldHVybiBpfXJldHVybiJvYmplY3QiPT10eXBlb2Ygbj90aGlzLmVhY2goZnVuY3Rpb24oKXt6LnNldCh0aGlzLG4pfSk6TSh0aGlzLGZ1bmN0aW9uKGUpe3ZhciB0O2lmKG8mJnZvaWQgMD09PWUpcmV0dXJuIHZvaWQgMCE9PSh0PXouZ2V0KG8sbikpP3Q6dm9pZCAwIT09KHQ9VihvLG4pKT90OnZvaWQgMDt0aGlzLmVhY2goZnVuY3Rpb24oKXt6LnNldCh0aGlzLG4sZSl9KX0sbnVsbCxlLDE8YXJndW1lbnRzLmxlbmd0aCxudWxsLCEwKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ei5yZW1vdmUodGhpcyxlKX0pfX0pLGNlLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1fLmdldChlLHQpLG4mJighcnx8QXJyYXkuaXNBcnJheShuKT9yPV8uYWNjZXNzKGUsdCxjZS5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49Y2UucXVldWUoZSx0KSxyPW4ubGVuZ3RoLGk9bi5zaGlmdCgpLG89Y2UuX3F1ZXVlSG9va3MoZSx0KTsiaW5wcm9ncmVzcyI9PT1pJiYoaT1uLnNoaWZ0KCksci0tKSxpJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBvLnN0b3AsaS5jYWxsKGUsZnVuY3Rpb24oKXtjZS5kZXF1ZXVlKGUsdCl9LG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIF8uZ2V0KGUsbil8fF8uYWNjZXNzKGUsbix7ZW1wdHk6Y2UuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLmFkZChmdW5jdGlvbigpe18ucmVtb3ZlKGUsW3QrInF1ZXVlIixuXSl9KX0pfX0pLGNlLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24odCxuKXt2YXIgZT0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgdCYmKG49dCx0PSJmeCIsZS0tKSxhcmd1bWVudHMubGVuZ3RoPGU/Y2UucXVldWUodGhpc1swXSx0KTp2b2lkIDA9PT1uP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Y2UucXVldWUodGhpcyx0LG4pO2NlLl9xdWV1ZUhvb2tzKHRoaXMsdCksImZ4Ij09PXQmJiJpbnByb2dyZXNzIiE9PWVbMF0mJmNlLmRlcXVldWUodGhpcyx0KX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtjZS5kZXF1ZXVlKHRoaXMsZSl9KX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5xdWV1ZShlfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MSxpPWNlLkRlZmVycmVkKCksbz10aGlzLGE9dGhpcy5sZW5ndGgscz1mdW5jdGlvbigpey0tcnx8aS5yZXNvbHZlV2l0aChvLFtvXSl9OyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO3doaWxlKGEtLSkobj1fLmdldChvW2FdLGUrInF1ZXVlSG9va3MiKSkmJm4uZW1wdHkmJihyKyssbi5lbXB0eS5hZGQocykpO3JldHVybiBzKCksaS5wcm9taXNlKHQpfX0pO3ZhciBHPS9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLFk9bmV3IFJlZ0V4cCgiXig/OihbKy1dKT18KSgiK0crIikoW2EteiVdKikkIiwiaSIpLFE9WyJUb3AiLCJSaWdodCIsIkJvdHRvbSIsIkxlZnQiXSxKPUMuZG9jdW1lbnRFbGVtZW50LEs9ZnVuY3Rpb24oZSl7cmV0dXJuIGNlLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKX0sWj17Y29tcG9zZWQ6ITB9O0ouZ2V0Um9vdE5vZGUmJihLPWZ1bmN0aW9uKGUpe3JldHVybiBjZS5jb250YWlucyhlLm93bmVyRG9jdW1lbnQsZSl8fGUuZ2V0Um9vdE5vZGUoWik9PT1lLm93bmVyRG9jdW1lbnR9KTt2YXIgZWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4ibm9uZSI9PT0oZT10fHxlKS5zdHlsZS5kaXNwbGF5fHwiIj09PWUuc3R5bGUuZGlzcGxheSYmSyhlKSYmIm5vbmUiPT09Y2UuY3NzKGUsImRpc3BsYXkiKX07ZnVuY3Rpb24gdGUoZSx0LG4scil7dmFyIGksbyxhPTIwLHM9cj9mdW5jdGlvbigpe3JldHVybiByLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiBjZS5jc3MoZSx0LCIiKX0sdT1zKCksbD1uJiZuWzNdfHwoY2UuY3NzTnVtYmVyW3RdPyIiOiJweCIpLGM9ZS5ub2RlVHlwZSYmKGNlLmNzc051bWJlclt0XXx8InB4IiE9PWwmJit1KSYmWS5leGVjKGNlLmNzcyhlLHQpKTtpZihjJiZjWzNdIT09bCl7dS89MixsPWx8fGNbM10sYz0rdXx8MTt3aGlsZShhLS0pY2Uuc3R5bGUoZSx0LGMrbCksKDEtbykqKDEtKG89cygpL3V8fC41KSk8PTAmJihhPTApLGMvPW87Yyo9MixjZS5zdHlsZShlLHQsYytsKSxuPW58fFtdfXJldHVybiBuJiYoYz0rY3x8K3V8fDAsaT1uWzFdP2MrKG5bMV0rMSkqblsyXTorblsyXSxyJiYoci51bml0PWwsci5zdGFydD1jLHIuZW5kPWkpKSxpfXZhciBuZT17fTtmdW5jdGlvbiByZShlLHQpe2Zvcih2YXIgbixyLGksbyxhLHMsdSxsPVtdLGM9MCxmPWUubGVuZ3RoO2M8ZjtjKyspKHI9ZVtjXSkuc3R5bGUmJihuPXIuc3R5bGUuZGlzcGxheSx0Pygibm9uZSI9PT1uJiYobFtjXT1fLmdldChyLCJkaXNwbGF5Iil8fG51bGwsbFtjXXx8KHIuc3R5bGUuZGlzcGxheT0iIikpLCIiPT09ci5zdHlsZS5kaXNwbGF5JiZlZShyKSYmKGxbY109KHU9YT1vPXZvaWQgMCxhPShpPXIpLm93bmVyRG9jdW1lbnQscz1pLm5vZGVOYW1lLCh1PW5lW3NdKXx8KG89YS5ib2R5LmFwcGVuZENoaWxkKGEuY3JlYXRlRWxlbWVudChzKSksdT1jZS5jc3MobywiZGlzcGxheSIpLG8ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKSwibm9uZSI9PT11JiYodT0iYmxvY2siKSxuZVtzXT11KSkpKToibm9uZSIhPT1uJiYobFtjXT0ibm9uZSIsXy5zZXQociwiZGlzcGxheSIsbikpKTtmb3IoYz0wO2M8ZjtjKyspbnVsbCE9bFtjXSYmKGVbY10uc3R5bGUuZGlzcGxheT1sW2NdKTtyZXR1cm4gZX1jZS5mbi5leHRlbmQoe3Nob3c6ZnVuY3Rpb24oKXtyZXR1cm4gcmUodGhpcywhMCl9LGhpZGU6ZnVuY3Rpb24oKXtyZXR1cm4gcmUodGhpcyl9LHRvZ2dsZTpmdW5jdGlvbihlKXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBlP2U/dGhpcy5zaG93KCk6dGhpcy5oaWRlKCk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZWUodGhpcyk/Y2UodGhpcykuc2hvdygpOmNlKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciB4ZSxiZSx3ZT0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxUZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxDZT0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2k7eGU9Qy5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW50KCJkaXYiKSksKGJlPUMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkuc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxiZS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJjaGVja2VkIiksYmUuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLHhlLmFwcGVuZENoaWxkKGJlKSxsZS5jaGVja0Nsb25lPXhlLmNsb25lTm9kZSghMCkuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuY2hlY2tlZCx4ZS5pbm5lckhUTUw9Ijx0ZXh0YXJlYT54PC90ZXh0YXJlYT4iLGxlLm5vQ2xvbmVDaGVja2VkPSEheGUuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuZGVmYXVsdFZhbHVlLHhlLmlubmVySFRNTD0iPG9wdGlvbj48L29wdGlvbj4iLGxlLm9wdGlvbj0hIXhlLmxhc3RDaGlsZDt2YXIga2U9e3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtmdW5jdGlvbiBTZShlLHQpe3ZhciBuO3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmZmUoZSx0KT9jZS5tZXJnZShbZV0sbik6bn1mdW5jdGlvbiBFZShlLHQpe2Zvcih2YXIgbj0wLHI9ZS5sZW5ndGg7bjxyO24rKylfLnNldChlW25dLCJnbG9iYWxFdmFsIiwhdHx8Xy5nZXQodFtuXSwiZ2xvYmFsRXZhbCIpKX1rZS50Ym9keT1rZS50Zm9vdD1rZS5jb2xncm91cD1rZS5jYXB0aW9uPWtlLnRoZWFkLGtlLnRoPWtlLnRkLGxlLm9wdGlvbnx8KGtlLm9wdGdyb3VwPWtlLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdKTt2YXIgamU9Lzx8JiM/XHcrOy87ZnVuY3Rpb24gQWUoZSx0LG4scixpKXtmb3IodmFyIG8sYSxzLHUsbCxjLGY9dC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkscD1bXSxkPTAsaD1lLmxlbmd0aDtkPGg7ZCsrKWlmKChvPWVbZF0pfHwwPT09bylpZigib2JqZWN0Ij09PXgobykpY2UubWVyZ2UocCxvLm5vZGVUeXBlP1tvXTpvKTtlbHNlIGlmKGplLnRlc3Qobykpe2E9YXx8Zi5hcHBlbmRDaGlsZCh0LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxzPShUZS5leGVjKG8pfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLHU9a2Vbc118fGtlLl9kZWZhdWx0LGEuaW5uZXJIVE1MPXVbMV0rY2UuaHRtbFByZWZpbHRlcihvKSt1WzJdLGM9dVswXTt3aGlsZShjLS0pYT1hLmxhc3RDaGlsZDtjZS5tZXJnZShwLGEuY2hpbGROb2RlcyksKGE9Zi5maXJzdENoaWxkKS50ZXh0Q29udGVudD0iIn1lbHNlIHAucHVzaCh0LmNyZWF0ZVRleHROb2RlKG8pKTtmLnRleHRDb250ZW50PSIiLGQ9MDt3aGlsZShvPXBbZCsrXSlpZihyJiYtMTxjZS5pbkFycmF5KG8scikpaSYmaS5wdXNoKG8pO2Vsc2UgaWYobD1LKG8pLGE9U2UoZi5hcHBlbmRDaGlsZChvKSwic2NyaXB0IiksbCYmRWUoYSksbil7Yz0wO3doaWxlKG89YVtjKytdKUNlLnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1cm4gZn12YXIgRGU9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIE5lKCl7cmV0dXJuITB9ZnVuY3Rpb24gcWUoKXtyZXR1cm4hMX1mdW5jdGlvbiBMZShlLHQsbixyLGksbyl7dmFyIGEscztpZigib2JqZWN0Ij09dHlwZW9mIHQpe2ZvcihzIGluInN0cmluZyIhPXR5cGVvZiBuJiYocj1yfHxuLG49dm9pZCAwKSx0KUxlKGUscyxuLHIsdFtzXSxvKTtyZXR1cm4gZX1pZihudWxsPT1yJiZudWxsPT1pPyhpPW4scj1uPXZvaWQgMCk6bnVsbD09aSYmKCJzdHJpbmciPT10eXBlb2Ygbj8oaT1yLHI9dm9pZCAwKTooaT1yLHI9bixuPXZvaWQgMCkpLCExPT09aSlpPXFlO2Vsc2UgaWYoIWkpcmV0dXJuIGU7cmV0dXJuIDE9PT1vJiYoYT1pLChpPWZ1bmN0aW9uKGUpe3JldHVybiBjZSgpLm9mZihlKSxhLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0pLmd1aWQ9YS5ndWlkfHwoYS5ndWlkPWNlLmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe2NlLmV2ZW50LmFkZCh0aGlzLHQsaSxyLG4pfSl9ZnVuY3Rpb24gSGUoZSxyLHQpe3Q/KF8uc2V0KGUsciwhMSksY2UuZXZlbnQuYWRkKGUscix7bmFtZXNwYWNlOiExLGhhbmRsZXI6ZnVuY3Rpb24oZSl7dmFyIHQsbj1fLmdldCh0aGlzLHIpO2lmKDEmZS5pc1RyaWdnZXImJnRoaXNbcl0pe2lmKG4pKGNlLmV2ZW50LnNwZWNpYWxbcl18fHt9KS5kZWxlZ2F0ZVR5cGUmJmUuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihuPWFlLmNhbGwoYXJndW1lbnRzKSxfLnNldCh0aGlzLHIsbiksdGhpc1tyXSgpLHQ9Xy5nZXQodGhpcyxyKSxfLnNldCh0aGlzLHIsITEpLG4hPT10KXJldHVybiBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLGUucHJldmVudERlZmF1bHQoKSx0fWVsc2UgbiYmKF8uc2V0KHRoaXMscixjZS5ldmVudC50cmlnZ2VyKG5bMF0sbi5zbGljZSgxKSx0aGlzKSksZS5zdG9wUHJvcGFnYXRpb24oKSxlLmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkPU5lKX19KSk6dm9pZCAwPT09Xy5nZXQoZSxyKSYmY2UuZXZlbnQuYWRkKGUscixOZSl9Y2UuZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb24odCxlLG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9Xy5nZXQodCk7aWYoJCh0KSl7bi5oYW5kbGVyJiYobj0obz1uKS5oYW5kbGVyLGk9by5zZWxlY3RvciksaSYmY2UuZmluZC5tYXRjaGVzU2VsZWN0b3IoSixpKSxuLmd1aWR8fChuLmd1aWQ9Y2UuZ3VpZCsrKSwodT12LmV2ZW50cyl8fCh1PXYuZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCkpLChhPXYuaGFuZGxlKXx8KGE9di5oYW5kbGU9ZnVuY3Rpb24oZSl7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBjZSYmY2UuZXZlbnQudHJpZ2dlcmVkIT09ZS50eXBlP2NlLmV2ZW50LmRpc3BhdGNoLmFwcGx5KHQsYXJndW1lbnRzKTp2b2lkIDB9KSxsPShlPShlfHwiIikubWF0Y2goRCl8fFsiIl0pLmxlbmd0aDt3aGlsZShsLS0pZD1nPShzPURlLmV4ZWMoZVtsXSl8fFtdKVsxXSxoPShzWzJdfHwiIikuc3BsaXQoIi4iKS5zb3J0KCksZCYmKGY9Y2UuZXZlbnQuc3BlY2lhbFtkXXx8e30sZD0oaT9mLmRlbGVnYXRlVHlwZTpmLmJpbmRUeXBlKXx8ZCxmPWNlLmV2ZW50LnNwZWNpYWxbZF18fHt9LGM9Y2UuZXh0ZW5kKHt0eXBlOmQsb3JpZ1R5cGU6ZyxkYXRhOnIsaGFuZGxlcjpuLGd1aWQ6bi5ndWlkLHNlbGVjdG9yOmksbmVlZHNDb250ZXh0OmkmJmNlLmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoaSksbmFtZXNwYWNlOmguam9pbigiLiIpfSxvKSwocD11W2RdKXx8KChwPXVbZF09W10pLmRlbGVnYXRlQ291bnQ9MCxmLnNldHVwJiYhMSE9PWYuc2V0dXAuY2FsbCh0LHIsaCxhKXx8dC5hZGRFdmVudExpc3RlbmVyJiZ0LmFkZEV2ZW50TGlzdGVuZXIoZCxhKSksZi5hZGQmJihmLmFkZC5jYWxsKHQsYyksYy5oYW5kbGVyLmd1aWR8fChjLmhhbmRsZXIuZ3VpZD1uLmd1aWQpKSxpP3Auc3BsaWNlKHAuZGVsZWdhdGVDb3VudCsrLDAsYyk6cC5wdXNoKGMpLGNlLmV2ZW50Lmdsb2JhbFtkXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9Xy5oYXNEYXRhKGUpJiZfLmdldChlKTtpZih2JiYodT12LmV2ZW50cykpe2w9KHQ9KHR8fCIiKS5tYXRjaChEKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlpZihkPWc9KHM9RGUuZXhlYyh0W2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkKXtmPWNlLmV2ZW50LnNwZWNpYWxbZF18fHt9LHA9dVtkPShyP2YuZGVsZWdhdGVUeXBlOmYuYmluZFR5cGUpfHxkXXx8W10scz1zWzJdJiZuZXcgUmVnRXhwKCIoXnxcXC4pIitoLmpvaW4oIlxcLig/Oi4qXFwufCkiKSsiKFxcLnwkKSIpLGE9bz1wLmxlbmd0aDt3aGlsZShvLS0pYz1wW29dLCFpJiZnIT09Yy5vcmlnVHlwZXx8biYmbi5ndWlkIT09Yy5ndWlkfHxzJiYhcy50ZXN0KGMubmFtZXNwYWNlKXx8ciYmciE9PWMuc2VsZWN0b3ImJigiKioiIT09cnx8IWMuc2VsZWN0b3IpfHwocC5zcGxpY2UobywxKSxjLnNlbGVjdG9yJiZwLmRlbGVnYXRlQ291bnQtLSxmLnJlbW92ZSYmZi5yZW1vdmUuY2FsbChlLGMpKTthJiYhcC5sZW5ndGgmJihmLnRlYXJkb3duJiYhMSE9PWYudGVhcmRvd24uY2FsbChlLGgsdi5oYW5kbGUpfHxjZS5yZW1vdmVFdmVudChlLGQsdi5oYW5kbGUpLGRlbGV0ZSB1W2RdKX1lbHNlIGZvcihkIGluIHUpY2UuZXZlbnQucmVtb3ZlKGUsZCt0W2xdLG4sciwhMCk7Y2UuaXNFbXB0eU9iamVjdCh1KSYmXy5yZW1vdmUoZSwiaGFuZGxlIGV2ZW50cyIpfX0sZGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGksbyxhLHM9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLHU9Y2UuZXZlbnQuZml4KGUpLGw9KF8uZ2V0KHRoaXMsImV2ZW50cyIpfHxPYmplY3QuY3JlYXRlKG51bGwpKVt1LnR5cGVdfHxbXSxjPWNlLmV2ZW50LnNwZWNpYWxbdS50eXBlXXx8e307Zm9yKHNbMF09dSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKylzW3RdPWFyZ3VtZW50c1t0XTtpZih1LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsdSkpe2E9Y2UuZXZlbnQuaGFuZGxlcnMuY2FsbCh0aGlzLHUsbCksdD0wO3doaWxlKChpPWFbdCsrXSkmJiF1LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpe3UuY3VycmVudFRhcmdldD1pLmVsZW0sbj0wO3doaWxlKChvPWkuaGFuZGxlcnNbbisrXSkmJiF1LmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkpdS5ybmFtZXNwYWNlJiYhMSE9PW8ubmFtZXNwYWNlJiYhdS5ybmFtZXNwYWNlLnRlc3Qoby5uYW1lc3BhY2UpfHwodS5oYW5kbGVPYmo9byx1LmRhdGE9by5kYXRhLHZvaWQgMCE9PShyPSgoY2UuZXZlbnQuc3BlY2lhbFtvLm9yaWdUeXBlXXx8e30pLmhhbmRsZXx8by5oYW5kbGVyKS5hcHBseShpLmVsZW0scykpJiYhMT09PSh1LnJlc3VsdD1yKSYmKHUucHJldmVudERlZmF1bHQoKSx1LnN0b3BQcm9wYWdhdGlvbigpKSl9cmV0dXJuIGMucG9zdERpc3BhdGNoJiZjLnBvc3REaXNwYXRjaC5jYWxsKHRoaXMsdSksdS5yZXN1bHR9fSxoYW5kbGVyczpmdW5jdGlvbihlLHQpe3ZhciBuLHIsaSxvLGEscz1bXSx1PXQuZGVsZWdhdGVDb3VudCxsPWUudGFyZ2V0O2lmKHUmJmwubm9kZVR5cGUmJiEoImNsaWNrIj09PWUudHlwZSYmMTw9ZS5idXR0b24pKWZvcig7bCE9PXRoaXM7bD1sLnBhcmVudE5vZGV8fHRoaXMpaWYoMT09PWwubm9kZVR5cGUmJigiY2xpY2siIT09ZS50eXBlfHwhMCE9PWwuZGlzYWJsZWQpKXtmb3Iobz1bXSxhPXt9LG49MDtuPHU7bisrKXZvaWQgMD09PWFbaT0ocj10W25dKS5zZWxlY3RvcisiICJdJiYoYVtpXT1yLm5lZWRzQ29udGV4dD8tMTxjZShpLHRoaXMpLmluZGV4KGwpOmNlLmZpbmQoaSx0aGlzLG51bGwsW2xdKS5sZW5ndGgpLGFbaV0mJm8ucHVzaChyKTtvLmxlbmd0aCYmcy5wdXNoKHtlbGVtOmwsaGFuZGxlcnM6b30pfXJldHVybiBsPXRoaXMsdTx0Lmxlbmd0aCYmcy5wdXNoKHtlbGVtOmwsaGFuZGxlcnM6dC5zbGljZSh1KX0pLHN9LGFkZFByb3A6ZnVuY3Rpb24odCxlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoY2UuRXZlbnQucHJvdG90eXBlLHQse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLGdldDp2KGUpP2Z1bmN0aW9uKCl7aWYodGhpcy5vcmlnaW5hbEV2ZW50KXJldHVybiBlKHRoaXMub3JpZ2luYWxFdmVudCl9OmZ1bmN0aW9uKCl7aWYodGhpcy5vcmlnaW5hbEV2ZW50KXJldHVybiB0aGlzLm9yaWdpbmFsRXZlbnRbdF19LHNldDpmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcyx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTplfSl9fSl9LGZpeDpmdW5jdGlvbihlKXtyZXR1cm4gZVtjZS5leHBhbmRvXT9lOm5ldyBjZS5FdmVudChlKX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGNsaWNrOntzZXR1cDpmdW5jdGlvbihlKXt2YXIgdD10aGlzfHxlO3JldHVybiB3ZS50ZXN0KHQudHlwZSkmJnQuY2xpY2smJmZlKHQsImlucHV0IikmJkhlKHQsImNsaWNrIiwhMCksITF9LHRyaWdnZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc3x8ZTtyZXR1cm4gd2UudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZmZSh0LCJpbnB1dCIpJiZIZSh0LCJjbGljayIpLCEwfSxfZGVmYXVsdDpmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtyZXR1cm4gd2UudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZmZSh0LCJpbnB1dCIpJiZfLmdldCh0LCJjbGljayIpfHxmZSh0LCJhIil9fSxiZWZvcmV1bmxvYWQ6e3Bvc3REaXNwYXRjaDpmdW5jdGlvbihlKXt2b2lkIDAhPT1lLnJlc3VsdCYmZS5vcmlnaW5hbEV2ZW50JiYoZS5vcmlnaW5hbEV2ZW50LnJldHVyblZhbHVlPWUucmVzdWx0KX19fX0sY2UucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmVtb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LGNlLkV2ZW50PWZ1bmN0aW9uKGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgY2UuRXZlbnQpKXJldHVybiBuZXcgY2UuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm5WYWx1ZT9OZTpxZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZjZS5leHRlbmQodGhpcyx0KSx0aGlzLnRpbWVTdGFtcD1lJiZlLnRpbWVTdGFtcHx8RGF0ZS5ub3coKSx0aGlzW2NlLmV4cGFuZG9dPSEwfSxjZS5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmNlLkV2ZW50LGlzRGVmYXVsdFByZXZlbnRlZDpxZSxpc1Byb3BhZ2F0aW9uU3RvcHBlZDpxZSxpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDpxZSxpc1NpbXVsYXRlZDohMSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1OZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5wcmV2ZW50RGVmYXVsdCgpfSxzdG9wUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1OZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wUHJvcGFnYXRpb24oKX0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9TmUsZSYmIXRoaXMuaXNTaW11bGF0ZWQmJmUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCksdGhpcy5zdG9wUHJvcGFnYXRpb24oKX19LGNlLmVhY2goe2FsdEtleTohMCxidWJibGVzOiEwLGNhbmNlbGFibGU6ITAsY2hhbmdlZFRvdWNoZXM6ITAsY3RybEtleTohMCxkZXRhaWw6ITAsZXZlbnRQaGFzZTohMCxtZXRhS2V5OiEwLHBhZ2VYOiEwLHBhZ2VZOiEwLHNoaWZ0S2V5OiEwLHZpZXc6ITAsImNoYXIiOiEwLGNvZGU6ITAsY2hhckNvZGU6ITAsa2V5OiEwLGtleUNvZGU6ITAsYnV0dG9uOiEwLGJ1dHRvbnM6ITAsY2xpZW50WDohMCxjbGllbnRZOiEwLG9mZnNldFg6ITAsb2Zmc2V0WTohMCxwb2ludGVySWQ6ITAscG9pbnRlclR5cGU6ITAsc2NyZWVuWDohMCxzY3JlZW5ZOiEwLHRhcmdldFRvdWNoZXM6ITAsdG9FbGVtZW50OiEwLHRvdWNoZXM6ITAsd2hpY2g6ITB9LGNlLmV2ZW50LmFkZFByb3ApLGNlLmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0aW9uKHIsaSl7ZnVuY3Rpb24gbyhlKXtpZihDLmRvY3VtZW50TW9kZSl7dmFyIHQ9Xy5nZXQodGhpcywiaGFuZGxlIiksbj1jZS5ldmVudC5maXgoZSk7bi50eXBlPSJmb2N1c2luIj09PWUudHlwZT8iZm9jdXMiOiJibHVyIixuLmlzU2ltdWxhdGVkPSEwLHQoZSksbi50YXJnZXQ9PT1uLmN1cnJlbnRUYXJnZXQmJnQobil9ZWxzZSBjZS5ldmVudC5zaW11bGF0ZShpLGUudGFyZ2V0LGNlLmV2ZW50LmZpeChlKSl9Y2UuZXZlbnQuc3BlY2lhbFtyXT17c2V0dXA6ZnVuY3Rpb24oKXt2YXIgZTtpZihIZSh0aGlzLHIsITApLCFDLmRvY3VtZW50TW9kZSlyZXR1cm4hMTsoZT1fLmdldCh0aGlzLGkpKXx8dGhpcy5hZGRFdmVudExpc3RlbmVyKGksbyksXy5zZXQodGhpcyxpLChlfHwwKSsxKX0sdHJpZ2dlcjpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLHIpLCEwfSx0ZWFyZG93bjpmdW5jdGlvbigpe3ZhciBlO2lmKCFDLmRvY3VtZW50TW9kZSlyZXR1cm4hMTsoZT1fLmdldCh0aGlzLGkpLTEpP18uc2V0KHRoaXMsaSxlKToodGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGksbyksXy5yZW1vdmUodGhpcyxpKSl9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe3JldHVybiBfLmdldChlLnRhcmdldCxyKX0sZGVsZWdhdGVUeXBlOml9LGNlLmV2ZW50LnNwZWNpYWxbaV09e3NldHVwOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLmRvY3VtZW50fHx0aGlzLHQ9Qy5kb2N1bWVudE1vZGU/dGhpczplLG49Xy5nZXQodCxpKTtufHwoQy5kb2N1bWVudE1vZGU/dGhpcy5hZGRFdmVudExpc3RlbmVyKGksbyk6ZS5hZGRFdmVudExpc3RlbmVyKHIsbywhMCkpLF8uc2V0KHQsaSwobnx8MCkrMSl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLmRvY3VtZW50fHx0aGlzLHQ9Qy5kb2N1bWVudE1vZGU/dGhpczplLG49Xy5nZXQodCxpKS0xO24/Xy5zZXQodCxpLG4pOihDLmRvY3VtZW50TW9kZT90aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoaSxvKTplLnJlbW92ZUV2ZW50TGlzdGVuZXIocixvLCEwKSxfLnJlbW92ZSh0LGkpKX19fSksY2UuZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCIscG9pbnRlcmVudGVyOiJwb2ludGVyb3ZlciIscG9pbnRlcmxlYXZlOiJwb2ludGVyb3V0In0sZnVuY3Rpb24oZSxpKXtjZS5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6aSxiaW5kVHlwZTppLGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgdCxuPWUucmVsYXRlZFRhcmdldCxyPWUuaGFuZGxlT2JqO3JldHVybiBuJiYobj09PXRoaXN8fGNlLmNvbnRhaW5zKHRoaXMsbikpfHwoZS50eXBlPXIub3JpZ1R5cGUsdD1yLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpLGUudHlwZT1pKSx0fX19KSxjZS5mbi5leHRlbmQoe29uOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBMZSh0aGlzLGUsdCxuLHIpfSxvbmU6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIExlKHRoaXMsZSx0LG4sciwxKX0sb2ZmOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpO2lmKGUmJmUucHJldmVudERlZmF1bHQmJmUuaGFuZGxlT2JqKXJldHVybiByPWUuaGFuZGxlT2JqLGNlKGUuZGVsZWdhdGVUYXJnZXQpLm9mZihyLm5hbWVzcGFjZT9yLm9yaWdUeXBlKyIuIityLm5hbWVzcGFjZTpyLm9yaWdUeXBlLHIuc2VsZWN0b3Isci5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKGkgaW4gZSl0aGlzLm9mZihpLHQsZVtpXSk7cmV0dXJuIHRoaXN9cmV0dXJuITEhPT10JiYiZnVuY3Rpb24iIT10eXBlb2YgdHx8KG49dCx0PXZvaWQgMCksITE9PT1uJiYobj1xZSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7Y2UuZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSl9fSk7dmFyIE9lPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLFBlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLE1lPS9eXHMqPCFcW0NEQVRBXFt8XF1cXT5ccyokL2c7ZnVuY3Rpb24gUmUoZSx0KXtyZXR1cm4gZmUoZSwidGFibGUiKSYmZmUoMTEhPT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZjZShlKS5jaGlsZHJlbigidGJvZHkiKVswXXx8ZX1mdW5jdGlvbiBJZShlKXtyZXR1cm4gZS50eXBlPShudWxsIT09ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2UudHlwZSxlfWZ1bmN0aW9uIFdlKGUpe3JldHVybiJ0cnVlLyI9PT0oZS50eXBlfHwiIikuc2xpY2UoMCw1KT9lLnR5cGU9ZS50eXBlLnNsaWNlKDUpOmUucmVtb3ZlQXR0cmlidXRlKCJ0eXBlIiksZX1mdW5jdGlvbiBGZShlLHQpe3ZhciBuLHIsaSxvLGEscztpZigxPT09dC5ub2RlVHlwZSl7aWYoXy5oYXNEYXRhKGUpJiYocz1fLmdldChlKS5ldmVudHMpKWZvcihpIGluIF8ucmVtb3ZlKHQsImhhbmRsZSBldmVudHMiKSxzKWZvcihuPTAscj1zW2ldLmxlbmd0aDtuPHI7bisrKWNlLmV2ZW50LmFkZCh0LGksc1tpXVtuXSk7ei5oYXNEYXRhKGUpJiYobz16LmFjY2VzcyhlKSxhPWNlLmV4dGVuZCh7fSxvKSx6LnNldCh0LGEpKX19ZnVuY3Rpb24gJGUobixyLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD12KGQpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYhbGUuY2hlY2tDbG9uZSYmUGUudGVzdChkKSlyZXR1cm4gbi5lYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PW4uZXEoZSk7aCYmKHJbMF09ZC5jYWxsKHRoaXMsZSx0Lmh0bWwoKSkpLCRlKHQscixpLG8pfSk7aWYoZiYmKHQ9KGU9QWUocixuWzBdLm93bmVyRG9jdW1lbnQsITEsbixvKSkuZmlyc3RDaGlsZCwxPT09ZS5jaGlsZE5vZGVzLmxlbmd0aCYmKGU9dCksdHx8bykpe2ZvcihzPShhPWNlLm1hcChTZShlLCJzY3JpcHQiKSxJZSkpLmxlbmd0aDtjPGY7YysrKXU9ZSxjIT09cCYmKHU9Y2UuY2xvbmUodSwhMCwhMCkscyYmY2UubWVyZ2UoYSxTZSh1LCJzY3JpcHQiKSkpLGkuY2FsbChuW2NdLHUsYyk7aWYocylmb3IobD1hW2EubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsY2UubWFwKGEsV2UpLGM9MDtjPHM7YysrKXU9YVtjXSxDZS50ZXN0KHUudHlwZXx8IiIpJiYhXy5hY2Nlc3ModSwiZ2xvYmFsRXZhbCIpJiZjZS5jb250YWlucyhsLHUpJiYodS5zcmMmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpLnRvTG93ZXJDYXNlKCk/Y2UuX2V2YWxVcmwmJiF1Lm5vTW9kdWxlJiZjZS5fZXZhbFVybCh1LnNyYyx7bm9uY2U6dS5ub25jZXx8dS5nZXRBdHRyaWJ1dGUoIm5vbmNlIil9LGwpOm0odS50ZXh0Q29udGVudC5yZXBsYWNlKE1lLCIiKSx1LGwpKX1yZXR1cm4gbn1mdW5jdGlvbiBCZShlLHQsbil7Zm9yKHZhciByLGk9dD9jZS5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fGNlLmNsZWFuRGF0YShTZShyKSksci5wYXJlbnROb2RlJiYobiYmSyhyKSYmRWUoU2Uociwic2NyaXB0IikpLHIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9Y2UuZXh0ZW5kKHtodG1sUHJlZmlsdGVyOmZ1bmN0aW9uKGUpe3JldHVybiBlfSxjbG9uZTpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGEscyx1LGwsYz1lLmNsb25lTm9kZSghMCksZj1LKGUpO2lmKCEobGUubm9DbG9uZUNoZWNrZWR8fDEhPT1lLm5vZGVUeXBlJiYxMSE9PWUubm9kZVR5cGV8fGNlLmlzWE1MRG9jKGUpKSlmb3IoYT1TZShjKSxyPTAsaT0obz1TZShlKSkubGVuZ3RoO3I8aTtyKyspcz1vW3JdLHU9YVtyXSx2b2lkIDAsImlucHV0Ij09PShsPXUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkmJndlLnRlc3Qocy50eXBlKT91LmNoZWNrZWQ9cy5jaGVja2VkOiJpbnB1dCIhPT1sJiYidGV4dGFyZWEiIT09bHx8KHUuZGVmYXVsdFZhbHVlPXMuZGVmYXVsdFZhbHVlKTtpZih0KWlmKG4pZm9yKG89b3x8U2UoZSksYT1hfHxTZShjKSxyPTAsaT1vLmxlbmd0aDtyPGk7cisrKUZlKG9bcl0sYVtyXSk7ZWxzZSBGZShlLGMpO3JldHVybiAwPChhPVNlKGMsInNjcmlwdCIpKS5sZW5ndGgmJkVlKGEsIWYmJlNlKGUsInNjcmlwdCIpKSxjfSxjbGVhbkRhdGE6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG4scixpPWNlLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKylpZigkKG4pKXtpZih0PW5bXy5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT9jZS5ldmVudC5yZW1vdmUobixyKTpjZS5yZW1vdmVFdmVudChuLHIsdC5oYW5kbGUpO25bXy5leHBhbmRvXT12b2lkIDB9blt6LmV4cGFuZG9dJiYoblt6LmV4cGFuZG9dPXZvaWQgMCl9fX0pLGNlLmZuLmV4dGVuZCh7ZGV0YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBCZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIEJlKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZT9jZS50ZXh0KHRoaXMpOnRoaXMuZW1wdHkoKS5lYWNoKGZ1bmN0aW9uKCl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fCh0aGlzLnRleHRDb250ZW50PWUpfSl9LG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuICRlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpezEhPT10aGlzLm5vZGVUeXBlJiYxMSE9PXRoaXMubm9kZVR5cGUmJjkhPT10aGlzLm5vZGVUeXBlfHxSZSh0aGlzLGUpLmFwcGVuZENoaWxkKGUpfSl9LHByZXBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gJGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7aWYoMT09PXRoaXMubm9kZVR5cGV8fDExPT09dGhpcy5ub2RlVHlwZXx8OT09PXRoaXMubm9kZVR5cGUpe3ZhciB0PVJlKHRoaXMsZSk7dC5pbnNlcnRCZWZvcmUoZSx0LmZpcnN0Q2hpbGQpfX0pfSxiZWZvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gJGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcyl9KX0sYWZ0ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gJGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcy5uZXh0U2libGluZyl9KX0sZW1wdHk6ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD0wO251bGwhPShlPXRoaXNbdF0pO3QrKykxPT09ZS5ub2RlVHlwZSYmKGNlLmNsZWFuRGF0YShTZShlLCExKSksZS50ZXh0Q29udGVudD0iIik7cmV0dXJuIHRoaXN9LGNsb25lOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9bnVsbCE9ZSYmZSx0PW51bGw9PXQ/ZTp0LHRoaXMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIGNlLmNsb25lKHRoaXMsZSx0KX0pfSxodG1sOmZ1bmN0aW9uKGUpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIVE1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIU9lLnRlc3QoZSkmJiFrZVsoVGUuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9Y2UuaHRtbFByZWZpbHRlcihlKTt0cnl7Zm9yKDtuPHI7bisrKTE9PT0odD10aGlzW25dfHx7fSkubm9kZVR5cGUmJihjZS5jbGVhbkRhdGEoU2UodCwhMSkpLHQuaW5uZXJIVE1MPWUpO3Q9MH1jYXRjaChlKXt9fXQmJnRoaXMuZW1wdHkoKS5hcHBlbmQoZSl9LG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gJGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5wYXJlbnROb2RlO2NlLmluQXJyYXkodGhpcyxuKTwwJiYoY2UuY2xlYW5EYXRhKFNlKHRoaXMpKSx0JiZ0LnJlcGxhY2VDaGlsZChlLHRoaXMpKX0sbil9fSksY2UuZWFjaCh7YXBwZW5kVG86ImFwcGVuZCIscHJlcGVuZFRvOiJwcmVwZW5kIixpbnNlcnRCZWZvcmU6ImJlZm9yZSIsaW5zZXJ0QWZ0ZXI6ImFmdGVyIixyZXBsYWNlQWxsOiJyZXBsYWNlV2l0aCJ9LGZ1bmN0aW9uKGUsYSl7Y2UuZm5bZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1jZShlKSxpPXIubGVuZ3RoLTEsbz0wO288PWk7bysrKXQ9bz09PWk/dGhpczp0aGlzLmNsb25lKCEwKSxjZShyW29dKVthXSh0KSxzLmFwcGx5KG4sdC5nZXQoKSk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG4pfX0pO3ZhciBfZT1uZXcgUmVnRXhwKCJeKCIrRysiKSg/IXB4KVthLXolXSskIiwiaSIpLHplPS9eLS0vLFhlPWZ1bmN0aW9uKGUpe3ZhciB0PWUub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4gdCYmdC5vcGVuZXJ8fCh0PWllKSx0LmdldENvbXB1dGVkU3R5bGUoZSl9LFVlPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e307Zm9yKGkgaW4gdClvW2ldPWUuc3R5bGVbaV0sZS5zdHlsZVtpXT10W2ldO2ZvcihpIGluIHI9bi5jYWxsKGUpLHQpZS5zdHlsZVtpXT1vW2ldO3JldHVybiByfSxWZT1uZXcgUmVnRXhwKFEuam9pbigifCIpLCJpIik7ZnVuY3Rpb24gR2UoZSx0LG4pe3ZhciByLGksbyxhLHM9emUudGVzdCh0KSx1PWUuc3R5bGU7cmV0dXJuKG49bnx8WGUoZSkpJiYoYT1uLmdldFByb3BlcnR5VmFsdWUodCl8fG5bdF0scyYmYSYmKGE9YS5yZXBsYWNlKHZlLCIkMSIpfHx2b2lkIDApLCIiIT09YXx8SyhlKXx8KGE9Y2Uuc3R5bGUoZSx0KSksIWxlLnBpeGVsQm94U3R5bGVzKCkmJl9lLnRlc3QoYSkmJlZlLnRlc3QodCkmJihyPXUud2lkdGgsaT11Lm1pbldpZHRoLG89dS5tYXhXaWR0aCx1Lm1pbldpZHRoPXUubWF4V2lkdGg9dS53aWR0aD1hLGE9bi53aWR0aCx1LndpZHRoPXIsdS5taW5XaWR0aD1pLHUubWF4V2lkdGg9bykpLHZvaWQgMCE9PWE/YSsiIjphfWZ1bmN0aW9uIFllKGUsdCl7cmV0dXJue2dldDpmdW5jdGlvbigpe2lmKCFlKCkpcmV0dXJuKHRoaXMuZ2V0PXQpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtkZWxldGUgdGhpcy5nZXR9fX0hZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYobCl7dS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O3dpZHRoOjYwcHg7bWFyZ2luLXRvcDoxcHg7cGFkZGluZzowO2JvcmRlcjowIixsLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OnNjcm9sbDttYXJnaW46YXV0bztib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjYwJTt0b3A6MSUiLEouYXBwZW5kQ2hpbGQodSkuYXBwZW5kQ2hpbGQobCk7dmFyIGU9aWUuZ2V0Q29tcHV0ZWRTdHlsZShsKTtuPSIxJSIhPT1lLnRvcCxzPTEyPT09dChlLm1hcmdpbkxlZnQpLGwuc3R5bGUucmlnaHQ9IjYwJSIsbz0zNj09PXQoZS5yaWdodCkscj0zNj09PXQoZS53aWR0aCksbC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGk9MTI9PT10KGwub2Zmc2V0V2lkdGgvMyksSi5yZW1vdmVDaGlsZCh1KSxsPW51bGx9fWZ1bmN0aW9uIHQoZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9dmFyIG4scixpLG8sYSxzLHU9Qy5jcmVhdGVFbGVtZW50KCJkaXYiKSxsPUMuY3JlYXRlRWxlbWVudCgiZGl2Iik7bC5zdHlsZSYmKGwuc3R5bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixsLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3VuZENsaXA9IiIsbGUuY2xlYXJDbG9uZVN0eWxlPSJjb250ZW50LWJveCI9PT1sLnN0eWxlLmJhY2tncm91bmRDbGlwLGNlLmV4dGVuZChsZSx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHJ9LHBpeGVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxvfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxufSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHN9LHNjcm9sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLGl9LHJlbGlhYmxlVHJEaW1lbnNpb25zOmZ1bmN0aW9uKCl7dmFyIGUsdCxuLHI7cmV0dXJuIG51bGw9PWEmJihlPUMuY3JlYXRlRWxlbWVudCgidGFibGUiKSx0PUMuY3JlYXRlRWxlbWVudCgidHIiKSxuPUMuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O2JvcmRlci1jb2xsYXBzZTpzZXBhcmF0ZSIsdC5zdHlsZS5jc3NUZXh0PSJib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JvcmRlcjoxcHggc29saWQiLHQuc3R5bGUuaGVpZ2h0PSIxcHgiLG4uc3R5bGUuaGVpZ2h0PSI5cHgiLG4uc3R5bGUuZGlzcGxheT0iYmxvY2siLEouYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQodCkuYXBwZW5kQ2hpbGQobikscj1pZS5nZXRDb21wdXRlZFN0eWxlKHQpLGE9cGFyc2VJbnQoci5oZWlnaHQsMTApK3BhcnNlSW50KHIuYm9yZGVyVG9wV2lkdGgsMTApK3BhcnNlSW50KHIuYm9yZGVyQm90dG9tV2lkdGgsMTApPT09dC5vZmZzZXRIZWlnaHQsSi5yZW1vdmVDaGlsZChlKSksYX19KSl9KCk7dmFyIFFlPVsiV2Via2l0IiwiTW96IiwibXMiXSxKZT1DLmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLEtlPXt9O2Z1bmN0aW9uIFplKGUpe3ZhciB0PWNlLmNzc1Byb3BzW2VdfHxLZVtlXTtyZXR1cm4gdHx8KGUgaW4gSmU/ZTpLZVtlXT1mdW5jdGlvbihlKXt2YXIgdD1lWzBdLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPVFlLmxlbmd0aDt3aGlsZShuLS0paWYoKGU9UWVbbl0rdClpbiBKZSlyZXR1cm4gZX0oZSl8fGUpfXZhciBldD0vXihub25lfHRhYmxlKD8hLWNbZWFdKS4rKS8sdHQ9e3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdmlzaWJpbGl0eToiaGlkZGVuIixkaXNwbGF5OiJibG9jayJ9LG50PXtsZXR0ZXJTcGFjaW5nOiIwIixmb250V2VpZ2h0OiI0MDAifTtmdW5jdGlvbiBydChlLHQsbil7dmFyIHI9WS5leGVjKHQpO3JldHVybiByP01hdGgubWF4KDAsclsyXS0obnx8MCkpKyhyWzNdfHwicHgiKTp0fWZ1bmN0aW9uIGl0KGUsdCxuLHIsaSxvKXt2YXIgYT0id2lkdGgiPT09dD8xOjAscz0wLHU9MCxsPTA7aWYobj09PShyPyJib3JkZXIiOiJjb250ZW50IikpcmV0dXJuIDA7Zm9yKDthPDQ7YSs9MikibWFyZ2luIj09PW4mJihsKz1jZS5jc3MoZSxuK1FbYV0sITAsaSkpLHI/KCJjb250ZW50Ij09PW4mJih1LT1jZS5jc3MoZSwicGFkZGluZyIrUVthXSwhMCxpKSksIm1hcmdpbiIhPT1uJiYodS09Y2UuY3NzKGUsImJvcmRlciIrUVthXSsiV2lkdGgiLCEwLGkpKSk6KHUrPWNlLmNzcyhlLCJwYWRkaW5nIitRW2FdLCEwLGkpLCJwYWRkaW5nIiE9PW4/dSs9Y2UuY3NzKGUsImJvcmRlciIrUVthXSsiV2lkdGgiLCEwLGkpOnMrPWNlLmNzcyhlLCJib3JkZXIiK1FbYV0rIldpZHRoIiwhMCxpKSk7cmV0dXJuIXImJjA8PW8mJih1Kz1NYXRoLm1heCgwLE1hdGguY2VpbChlWyJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpXS1vLXUtcy0uNSkpfHwwKSx1K2x9ZnVuY3Rpb24gb3QoZSx0LG4pe3ZhciByPVhlKGUpLGk9KCFsZS5ib3hTaXppbmdSZWxpYWJsZSgpfHxuKSYmImJvcmRlci1ib3giPT09Y2UuY3NzKGUsImJveFNpemluZyIsITEsciksbz1pLGE9R2UoZSx0LHIpLHM9Im9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSk7aWYoX2UudGVzdChhKSl7aWYoIW4pcmV0dXJuIGE7YT0iYXV0byJ9cmV0dXJuKCFsZS5ib3hTaXppbmdSZWxpYWJsZSgpJiZpfHwhbGUucmVsaWFibGVUckRpbWVuc2lvbnMoKSYmZmUoZSwidHIiKXx8ImF1dG8iPT09YXx8IXBhcnNlRmxvYXQoYSkmJiJpbmxpbmUiPT09Y2UuY3NzKGUsImRpc3BsYXkiLCExLHIpKSYmZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmKGk9ImJvcmRlci1ib3giPT09Y2UuY3NzKGUsImJveFNpemluZyIsITEsciksKG89cyBpbiBlKSYmKGE9ZVtzXSkpLChhPXBhcnNlRmxvYXQoYSl8fDApK2l0KGUsdCxufHwoaT8iYm9yZGVyIjoiY29udGVudCIpLG8scixhKSsicHgifWZ1bmN0aW9uIGF0KGUsdCxuLHIsaSl7cmV0dXJuIG5ldyBhdC5wcm90b3R5cGUuaW5pdChlLHQsbixyLGkpfWNlLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPUdlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsYXNwZWN0UmF0aW86ITAsYm9yZGVySW1hZ2VTbGljZTohMCxjb2x1bW5Db3VudDohMCxmbGV4R3JvdzohMCxmbGV4U2hyaW5rOiEwLGZvbnRXZWlnaHQ6ITAsZ3JpZEFyZWE6ITAsZ3JpZENvbHVtbjohMCxncmlkQ29sdW1uRW5kOiEwLGdyaWRDb2x1bW5TdGFydDohMCxncmlkUm93OiEwLGdyaWRSb3dFbmQ6ITAsZ3JpZFJvd1N0YXJ0OiEwLGxpbmVIZWlnaHQ6ITAsb3BhY2l0eTohMCxvcmRlcjohMCxvcnBoYW5zOiEwLHNjYWxlOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMCxmaWxsT3BhY2l0eTohMCxmbG9vZE9wYWNpdHk6ITAsc3RvcE9wYWNpdHk6ITAsc3Ryb2tlTWl0ZXJsaW1pdDohMCxzdHJva2VPcGFjaXR5OiEwfSxjc3NQcm9wczp7fSxzdHlsZTpmdW5jdGlvbihlLHQsbixyKXtpZihlJiYzIT09ZS5ub2RlVHlwZSYmOCE9PWUubm9kZVR5cGUmJmUuc3R5bGUpe3ZhciBpLG8sYSxzPUYodCksdT16ZS50ZXN0KHQpLGw9ZS5zdHlsZTtpZih1fHwodD1aZShzKSksYT1jZS5jc3NIb29rc1t0XXx8Y2UuY3NzSG9va3Nbc10sdm9pZCAwPT09bilyZXR1cm4gYSYmImdldCJpbiBhJiZ2b2lkIDAhPT0oaT1hLmdldChlLCExLHIpKT9pOmxbdF07InN0cmluZyI9PT0obz10eXBlb2YgbikmJihpPVkuZXhlYyhuKSkmJmlbMV0mJihuPXRlKGUsdCxpKSxvPSJudW1iZXIiKSxudWxsIT1uJiZuPT1uJiYoIm51bWJlciIhPT1vfHx1fHwobis9aSYmaVszXXx8KGNlLmNzc051bWJlcltzXT8iIjoicHgiKSksbGUuY2xlYXJDbG9uZVN0eWxlfHwiIiE9PW58fDAhPT10LmluZGV4T2YoImJhY2tncm91bmQiKXx8KGxbdF09ImluaGVyaXQiKSxhJiYic2V0ImluIGEmJnZvaWQgMD09PShuPWEuc2V0KGUsbixyKSl8fCh1P2wuc2V0UHJvcGVydHkodCxuKTpsW3RdPW4pKX19LGNzczpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscz1GKHQpO3JldHVybiB6ZS50ZXN0KHQpfHwodD1aZShzKSksKGE9Y2UuY3NzSG9va3NbdF18fGNlLmNzc0hvb2tzW3NdKSYmImdldCJpbiBhJiYoaT1hLmdldChlLCEwLG4pKSx2b2lkIDA9PT1pJiYoaT1HZShlLHQscikpLCJub3JtYWwiPT09aSYmdCBpbiBudCYmKGk9bnRbdF0pLCIiPT09bnx8bj8obz1wYXJzZUZsb2F0KGkpLCEwPT09bnx8aXNGaW5pdGUobyk/b3x8MDppKTppfX0pLGNlLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9uKGUsdSl7Y2UuY3NzSG9va3NbdV09e2dldDpmdW5jdGlvbihlLHQsbil7aWYodClyZXR1cm4hZXQudGVzdChjZS5jc3MoZSwiZGlzcGxheSIpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aD9vdChlLHUsbik6VWUoZSx0dCxmdW5jdGlvbigpe3JldHVybiBvdChlLHUsbil9KX0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpPVhlKGUpLG89IWxlLnNjcm9sbGJveFNpemUoKSYmImFic29sdXRlIj09PWkucG9zaXRpb24sYT0ob3x8bikmJiJib3JkZXItYm94Ij09PWNlLmNzcyhlLCJib3hTaXppbmciLCExLGkpLHM9bj9pdChlLHUsbixhLGkpOjA7cmV0dXJuIGEmJm8mJihzLT1NYXRoLmNlaWwoZVsib2Zmc2V0Iit1WzBdLnRvVXBwZXJDYXNlKCkrdS5zbGljZSgxKV0tcGFyc2VGbG9hdChpW3VdKS1pdChlLHUsImJvcmRlciIsITEsaSktLjUpKSxzJiYocj1ZLmV4ZWModCkpJiYicHgiIT09KHJbM118fCJweCIpJiYoZS5zdHlsZVt1XT10LHQ9Y2UuY3NzKGUsdSkpLHJ0KDAsdCxzKX19fSksY2UuY3NzSG9va3MubWFyZ2luTGVmdD1ZZShsZS5yZWxpYWJsZU1hcmdpbkxlZnQsZnVuY3Rpb24oZSx0KXtpZih0KXJldHVybihwYXJzZUZsb2F0KEdlKGUsIm1hcmdpbkxlZnQiKSl8fGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdC1VZShlLHttYXJnaW5MZWZ0OjB9LGZ1bmN0aW9uKCl7cmV0dXJuIGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdH0pKSsicHgifSksY2UuZWFjaCh7bWFyZ2luOiIiLHBhZGRpbmc6IiIsYm9yZGVyOiJXaWR0aCJ9LGZ1bmN0aW9uKGksbyl7Y2UuY3NzSG9va3NbaStvXT17ZXhwYW5kOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49e30scj0ic3RyaW5nIj09dHlwZW9mIGU/ZS5zcGxpdCgiICIpOltlXTt0PDQ7dCsrKW5baStRW3RdK29dPXJbdF18fHJbdC0yXXx8clswXTtyZXR1cm4gbn19LCJtYXJnaW4iIT09aSYmKGNlLmNzc0hvb2tzW2krb10uc2V0PXJ0KX0pLGNlLmZuLmV4dGVuZCh7Y3NzOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIE0odGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9LGE9MDtpZihBcnJheS5pc0FycmF5KHQpKXtmb3Iocj1YZShlKSxpPXQubGVuZ3RoO2E8aTthKyspb1t0W2FdXT1jZS5jc3MoZSx0W2FdLCExLHIpO3JldHVybiBvfXJldHVybiB2b2lkIDAhPT1uP2NlLnN0eWxlKGUsdCxuKTpjZS5jc3MoZSx0KX0sZSx0LDE8YXJndW1lbnRzLmxlbmd0aCl9fSksKChjZS5Ud2Vlbj1hdCkucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjphdCxpbml0OmZ1bmN0aW9uKGUsdCxuLHIsaSxvKXt0aGlzLmVsZW09ZSx0aGlzLnByb3A9bix0aGlzLmVhc2luZz1pfHxjZS5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fChjZS5jc3NOdW1iZXJbbl0/IiI6InB4Iil9LGN1cjpmdW5jdGlvbigpe3ZhciBlPWF0LnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiBlJiZlLmdldD9lLmdldCh0aGlzKTphdC5wcm9wSG9va3MuX2RlZmF1bHQuZ2V0KHRoaXMpfSxydW46ZnVuY3Rpb24oZSl7dmFyIHQsbj1hdC5wcm9wSG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gdGhpcy5vcHRpb25zLmR1cmF0aW9uP3RoaXMucG9zPXQ9Y2UuZWFzaW5nW3RoaXMuZWFzaW5nXShlLHRoaXMub3B0aW9ucy5kdXJhdGlvbiplLDAsMSx0aGlzLm9wdGlvbnMuZHVyYXRpb24pOnRoaXMucG9zPXQ9ZSx0aGlzLm5vdz0odGhpcy5lbmQtdGhpcy5zdGFydCkqdCt0aGlzLnN0YXJ0LHRoaXMub3B0aW9ucy5zdGVwJiZ0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKHRoaXMuZWxlbSx0aGlzLm5vdyx0aGlzKSxuJiZuLnNldD9uLnNldCh0aGlzKTphdC5wcm9wSG9va3MuX2RlZmF1bHQuc2V0KHRoaXMpLHRoaXN9fSkuaW5pdC5wcm90b3R5cGU9YXQucHJvdG90eXBlLChhdC5wcm9wSG9va3M9e19kZWZhdWx0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIDEhPT1lLmVsZW0ubm9kZVR5cGV8fG51bGwhPWUuZWxlbVtlLnByb3BdJiZudWxsPT1lLmVsZW0uc3R5bGVbZS5wcm9wXT9lLmVsZW1bZS5wcm9wXToodD1jZS5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT10P3Q6MH0sc2V0OmZ1bmN0aW9uKGUpe2NlLmZ4LnN0ZXBbZS5wcm9wXT9jZS5meC5zdGVwW2UucHJvcF0oZSk6MSE9PWUuZWxlbS5ub2RlVHlwZXx8IWNlLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVtaZShlLnByb3ApXT9lLmVsZW1bZS5wcm9wXT1lLm5vdzpjZS5zdHlsZShlLmVsZW0sZS5wcm9wLGUubm93K2UudW5pdCl9fX0pLnNjcm9sbFRvcD1hdC5wcm9wSG9va3Muc2Nyb2xsTGVmdD17c2V0OmZ1bmN0aW9uKGUpe2UuZWxlbS5ub2RlVHlwZSYmZS5lbGVtLnBhcmVudE5vZGUmJihlLmVsZW1bZS5wcm9wXT1lLm5vdyl9fSxjZS5lYXNpbmc9e2xpbmVhcjpmdW5jdGlvbihlKXtyZXR1cm4gZX0sc3dpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuLjUtTWF0aC5jb3MoZSpNYXRoLlBJKS8yfSxfZGVmYXVsdDoic3dpbmcifSxjZS5meD1hdC5wcm90b3R5cGUuaW5pdCxjZS5meC5zdGVwPXt9O3ZhciBzdCx1dCxsdCxjdCxmdD0vXig/OnRvZ2dsZXxzaG93fGhpZGUpJC8scHQ9L3F1ZXVlSG9va3MkLztmdW5jdGlvbiBkdCgpe3V0JiYoITE9PT1DLmhpZGRlbiYmaWUucmVxdWVzdEFuaW1hdGlvbkZyYW1lP2llLnJlcXVlc3RBbmltYXRpb25GcmFtZShkdCk6aWUuc2V0VGltZW91dChkdCxjZS5meC5pbnRlcnZhbCksY2UuZngudGljaygpKX1mdW5jdGlvbiBodCgpe3JldHVybiBpZS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c3Q9dm9pZCAwfSksc3Q9RGF0ZS5ub3coKX1mdW5jdGlvbiBndChlLHQpe3ZhciBuLHI9MCxpPXtoZWlnaHQ6ZX07Zm9yKHQ9dD8xOjA7cjw0O3IrPTItdClpWyJtYXJnaW4iKyhuPVFbcl0pXT1pWyJwYWRkaW5nIituXT1lO3JldHVybiB0JiYoaS5vcGFjaXR5PWkud2lkdGg9ZSksaX1mdW5jdGlvbiB2dChlLHQsbil7Zm9yKHZhciByLGk9KHl0LnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KHl0LnR3ZWVuZXJzWyIqIl0pLG89MCxhPWkubGVuZ3RoO288YTtvKyspaWYocj1pW29dLmNhbGwobix0LGUpKXJldHVybiByfWZ1bmN0aW9uIHl0KG8sZSx0KXt2YXIgbixhLHI9MCxpPXl0LnByZWZpbHRlcnMubGVuZ3RoLHM9Y2UuRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgdS5lbGVtfSksdT1mdW5jdGlvbigpe2lmKGEpcmV0dXJuITE7Zm9yKHZhciBlPXN0fHxodCgpLHQ9TWF0aC5tYXgoMCxsLnN0YXJ0VGltZStsLmR1cmF0aW9uLWUpLG49MS0odC9sLmR1cmF0aW9ufHwwKSxyPTAsaT1sLnR3ZWVucy5sZW5ndGg7cjxpO3IrKylsLnR3ZWVuc1tyXS5ydW4obik7cmV0dXJuIHMubm90aWZ5V2l0aChvLFtsLG4sdF0pLG48MSYmaT90OihpfHxzLm5vdGlmeVdpdGgobyxbbCwxLDBdKSxzLnJlc29sdmVXaXRoKG8sW2xdKSwhMSl9LGw9cy5wcm9taXNlKHtlbGVtOm8scHJvcHM6Y2UuZXh0ZW5kKHt9LGUpLG9wdHM6Y2UuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpjZS5lYXNpbmcuX2RlZmF1bHR9LHQpLG9yaWdpbmFsUHJvcGVydGllczplLG9yaWdpbmFsT3B0aW9uczp0LHN0YXJ0VGltZTpzdHx8aHQoKSxkdXJhdGlvbjp0LmR1cmF0aW9uLHR3ZWVuczpbXSxjcmVhdGVUd2VlbjpmdW5jdGlvbihlLHQpe3ZhciBuPWNlLlR3ZWVuKG8sbC5vcHRzLGUsdCxsLm9wdHMuc3BlY2lhbEVhc2luZ1tlXXx8bC5vcHRzLmVhc2luZyk7cmV0dXJuIGwudHdlZW5zLnB1c2gobiksbn0sc3RvcDpmdW5jdGlvbihlKXt2YXIgdD0wLG49ZT9sLnR3ZWVucy5sZW5ndGg6MDtpZihhKXJldHVybiB0aGlzO2ZvcihhPSEwO3Q8bjt0KyspbC50d2VlbnNbdF0ucnVuKDEpO3JldHVybiBlPyhzLm5vdGlmeVdpdGgobyxbbCwxLDBdKSxzLnJlc29sdmVXaXRoKG8sW2wsZV0pKTpzLnJlamVjdFdpdGgobyxbbCxlXSksdGhpc319KSxjPWwucHJvcHM7Zm9yKCFmdW5jdGlvbihlLHQpe3ZhciBuLHIsaSxvLGE7Zm9yKG4gaW4gZSlpZihpPXRbcj1GKG4pXSxvPWVbbl0sQXJyYXkuaXNBcnJheShvKSYmKGk9b1sxXSxvPWVbbl09b1swXSksbiE9PXImJihlW3JdPW8sZGVsZXRlIGVbbl0pLChhPWNlLmNzc0hvb2tzW3JdKSYmImV4cGFuZCJpbiBhKWZvcihuIGluIG89YS5leHBhbmQobyksZGVsZXRlIGVbcl0sbyluIGluIGV8fChlW25dPW9bbl0sdFtuXT1pKTtlbHNlIHRbcl09aX0oYyxsLm9wdHMuc3BlY2lhbEVhc2luZyk7cjxpO3IrKylpZihuPXl0LnByZWZpbHRlcnNbcl0uY2FsbChsLG8sYyxsLm9wdHMpKXJldHVybiB2KG4uc3RvcCkmJihjZS5fcXVldWVIb29rcyhsLmVsZW0sbC5vcHRzLnF1ZXVlKS5zdG9wPW4uc3RvcC5iaW5kKG4pKSxuO3JldHVybiBjZS5tYXAoYyx2dCxsKSx2KGwub3B0cy5zdGFydCkmJmwub3B0cy5zdGFydC5jYWxsKG8sbCksbC5wcm9ncmVzcyhsLm9wdHMucHJvZ3Jlc3MpLmRvbmUobC5vcHRzLmRvbmUsbC5vcHRzLmNvbXBsZXRlKS5mYWlsKGwub3B0cy5mYWlsKS5hbHdheXMobC5vcHRzLmFsd2F5cyksY2UuZngudGltZXIoY2UuZXh0ZW5kKHUse2VsZW06byxhbmltOmwscXVldWU6bC5vcHRzLnF1ZXVlfSkpLGx9Y2UuQW5pbWF0aW9uPWNlLmV4dGVuZCh5dCx7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCk7cmV0dXJuIHRlKG4uZWxlbSxlLFkuZXhlYyh0KSxuKSxufV19LHR3ZWVuZXI6ZnVuY3Rpb24oZSx0KXt2KGUpPyh0PWUsZT1bIioiXSk6ZT1lLm1hdGNoKEQpO2Zvcih2YXIgbixyPTAsaT1lLmxlbmd0aDtyPGk7cisrKW49ZVtyXSx5dC50d2VlbmVyc1tuXT15dC50d2VlbmVyc1tuXXx8W10seXQudHdlZW5lcnNbbl0udW5zaGlmdCh0KX0scHJlZmlsdGVyczpbZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdSxsLGMsZj0id2lkdGgiaW4gdHx8ImhlaWdodCJpbiB0LHA9dGhpcyxkPXt9LGg9ZS5zdHlsZSxnPWUubm9kZVR5cGUmJmVlKGUpLHY9Xy5nZXQoZSwiZnhzaG93Iik7Zm9yKHIgaW4gbi5xdWV1ZXx8KG51bGw9PShhPWNlLl9xdWV1ZUhvb2tzKGUsImZ4IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLHM9YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGlvbigpe2EudW5xdWV1ZWR8fHMoKX0pLGEudW5xdWV1ZWQrKyxwLmFsd2F5cyhmdW5jdGlvbigpe3AuYWx3YXlzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLGNlLnF1ZXVlKGUsImZ4IikubGVuZ3RofHxhLmVtcHR5LmZpcmUoKX0pfSkpLHQpaWYoaT10W3JdLGZ0LnRlc3QoaSkpe2lmKGRlbGV0ZSB0W3JdLG89b3x8InRvZ2dsZSI9PT1pLGk9PT0oZz8iaGlkZSI6InNob3ciKSl7aWYoInNob3ciIT09aXx8IXZ8fHZvaWQgMD09PXZbcl0pY29udGludWU7Zz0hMH1kW3JdPXYmJnZbcl18fGNlLnN0eWxlKGUscil9aWYoKHU9IWNlLmlzRW1wdHlPYmplY3QodCkpfHwhY2UuaXNFbXB0eU9iamVjdChkKSlmb3IociBpbiBmJiYxPT09ZS5ub2RlVHlwZSYmKG4ub3ZlcmZsb3c9W2gub3ZlcmZsb3csaC5vdmVyZmxvd1gsaC5vdmVyZmxvd1ldLG51bGw9PShsPXYmJnYuZGlzcGxheSkmJihsPV8uZ2V0KGUsImRpc3BsYXkiKSksIm5vbmUiPT09KGM9Y2UuY3NzKGUsImRpc3BsYXkiKSkmJihsP2M9bDoocmUoW2VdLCEwKSxsPWUuc3R5bGUuZGlzcGxheXx8bCxjPWNlLmNzcyhlLCJkaXNwbGF5IikscmUoW2VdKSkpLCgiaW5saW5lIj09PWN8fCJpbmxpbmUtYmxvY2siPT09YyYmbnVsbCE9bCkmJiJub25lIj09PWNlLmNzcyhlLCJmbG9hdCIpJiYodXx8KHAuZG9uZShmdW5jdGlvbigpe2guZGlzcGxheT1sfSksbnVsbD09bCYmKGM9aC5kaXNwbGF5LGw9Im5vbmUiPT09Yz8iIjpjKSksaC5kaXNwbGF5PSJpbmxpbmUtYmxvY2siKSksbi5vdmVyZmxvdyYmKGgub3ZlcmZsb3c9ImhpZGRlbiIscC5hbHdheXMoZnVuY3Rpb24oKXtoLm92ZXJmbG93PW4ub3ZlcmZsb3dbMF0saC5vdmVyZmxvd1g9bi5vdmVyZmxvd1sxXSxoLm92ZXJmbG93WT1uLm92ZXJmbG93WzJdfSkpLHU9ITEsZCl1fHwodj8iaGlkZGVuImluIHYmJihnPXYuaGlkZGVuKTp2PV8uYWNjZXNzKGUsImZ4c2hvdyIse2Rpc3BsYXk6bH0pLG8mJih2LmhpZGRlbj0hZyksZyYmcmUoW2VdLCEwKSxwLmRvbmUoZnVuY3Rpb24oKXtmb3IociBpbiBnfHxyZShbZV0pLF8ucmVtb3ZlKGUsImZ4c2hvdyIpLGQpY2Uuc3R5bGUoZSxyLGRbcl0pfSkpLHU9dnQoZz92W3JdOjAscixwKSxyIGluIHZ8fCh2W3JdPXUuc3RhcnQsZyYmKHUuZW5kPXUuc3RhcnQsdS5zdGFydD0wKSl9XSxwcmVmaWx0ZXI6ZnVuY3Rpb24oZSx0KXt0P3l0LnByZWZpbHRlcnMudW5zaGlmdChlKTp5dC5wcmVmaWx0ZXJzLnB1c2goZSl9fSksY2Uuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT9jZS5leHRlbmQoe30sZSk6e2NvbXBsZXRlOm58fCFuJiZ0fHx2KGUpJiZlLGR1cmF0aW9uOmUsZWFzaW5nOm4mJnR8fHQmJiF2KHQpJiZ0fTtyZXR1cm4gY2UuZngub2ZmP3IuZHVyYXRpb249MDoibnVtYmVyIiE9dHlwZW9mIHIuZHVyYXRpb24mJihyLmR1cmF0aW9uIGluIGNlLmZ4LnNwZWVkcz9yLmR1cmF0aW9uPWNlLmZ4LnNwZWVkc1tyLmR1cmF0aW9uXTpyLmR1cmF0aW9uPWNlLmZ4LnNwZWVkcy5fZGVmYXVsdCksbnVsbCE9ci5xdWV1ZSYmITAhPT1yLnF1ZXVlfHwoci5xdWV1ZT0iZngiKSxyLm9sZD1yLmNvbXBsZXRlLHIuY29tcGxldGU9ZnVuY3Rpb24oKXt2KHIub2xkKSYmci5vbGQuY2FsbCh0aGlzKSxyLnF1ZXVlJiZjZS5kZXF1ZXVlKHRoaXMsci5xdWV1ZSl9LHJ9LGNlLmZuLmV4dGVuZCh7ZmFkZVRvOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLmZpbHRlcihlZSkuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1hdGU6ZnVuY3Rpb24odCxlLG4scil7dmFyIGk9Y2UuaXNFbXB0eU9iamVjdCh0KSxvPWNlLnNwZWVkKGUsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIGU9eXQodGhpcyxjZS5leHRlbmQoe30sdCksbyk7KGl8fF8uZ2V0KHRoaXMsImZpbmlzaCIpKSYmZS5zdG9wKCEwKX07cmV0dXJuIGEuZmluaXNoPWEsaXx8ITE9PT1vLnF1ZXVlP3RoaXMuZWFjaChhKTp0aGlzLnF1ZXVlKG8ucXVldWUsYSl9LHN0b3A6ZnVuY3Rpb24oaSxlLG8pe3ZhciBhPWZ1bmN0aW9uKGUpe3ZhciB0PWUuc3RvcDtkZWxldGUgZS5zdG9wLHQobyl9O3JldHVybiJzdHJpbmciIT10eXBlb2YgaSYmKG89ZSxlPWksaT12b2lkIDApLGUmJnRoaXMucXVldWUoaXx8ImZ4IixbXSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9ITAsdD1udWxsIT1pJiZpKyJxdWV1ZUhvb2tzIixuPWNlLnRpbWVycyxyPV8uZ2V0KHRoaXMpO2lmKHQpclt0XSYmclt0XS5zdG9wJiZhKHJbdF0pO2Vsc2UgZm9yKHQgaW4gcilyW3RdJiZyW3RdLnN0b3AmJnB0LnRlc3QodCkmJmEoclt0XSk7Zm9yKHQ9bi5sZW5ndGg7dC0tOyluW3RdLmVsZW0hPT10aGlzfHxudWxsIT1pJiZuW3RdLnF1ZXVlIT09aXx8KG5bdF0uYW5pbS5zdG9wKG8pLGU9ITEsbi5zcGxpY2UodCwxKSk7IWUmJm98fGNlLmRlcXVldWUodGhpcyxpKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJuITEhPT1hJiYoYT1hfHwiZngiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0PV8uZ2V0KHRoaXMpLG49dFthKyJxdWV1ZSJdLHI9dFthKyJxdWV1ZUhvb2tzIl0saT1jZS50aW1lcnMsbz1uP24ubGVuZ3RoOjA7Zm9yKHQuZmluaXNoPSEwLGNlLnF1ZXVlKHRoaXMsYSxbXSksciYmci5zdG9wJiZyLnN0b3AuY2FsbCh0aGlzLCEwKSxlPWkubGVuZ3RoO2UtLTspaVtlXS5lbGVtPT09dGhpcyYmaVtlXS5xdWV1ZT09PWEmJihpW2VdLmFuaW0uc3RvcCghMCksaS5zcGxpY2UoZSwxKSk7Zm9yKGU9MDtlPG87ZSsrKW5bZV0mJm5bZV0uZmluaXNoJiZuW2VdLmZpbmlzaC5jYWxsKHRoaXMpO2RlbGV0ZSB0LmZpbmlzaH0pfX0pLGNlLmVhY2goWyJ0b2dnbGUiLCJzaG93IiwiaGlkZSJdLGZ1bmN0aW9uKGUscil7dmFyIGk9Y2UuZm5bcl07Y2UuZm5bcl09ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBudWxsPT1lfHwiYm9vbGVhbiI9PXR5cGVvZiBlP2kuYXBwbHkodGhpcyxhcmd1bWVudHMpOnRoaXMuYW5pbWF0ZShndChyLCEwKSxlLHQsbil9fSksY2UuZWFjaCh7c2xpZGVEb3duOmd0KCJzaG93Iiksc2xpZGVVcDpndCgiaGlkZSIpLHNsaWRlVG9nZ2xlOmd0KCJ0b2dnbGUiKSxmYWRlSW46e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJoaWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eToidG9nZ2xlIn19LGZ1bmN0aW9uKGUscil7Y2UuZm5bZV09ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0aGlzLmFuaW1hdGUocixlLHQsbil9fSksY2UudGltZXJzPVtdLGNlLmZ4LnRpY2s9ZnVuY3Rpb24oKXt2YXIgZSx0PTAsbj1jZS50aW1lcnM7Zm9yKHN0PURhdGUubm93KCk7dDxuLmxlbmd0aDt0KyspKGU9blt0XSkoKXx8blt0XSE9PWV8fG4uc3BsaWNlKHQtLSwxKTtuLmxlbmd0aHx8Y2UuZnguc3RvcCgpLHN0PXZvaWQgMH0sY2UuZngudGltZXI9ZnVuY3Rpb24oZSl7Y2UudGltZXJzLnB1c2goZSksY2UuZnguc3RhcnQoKX0sY2UuZnguaW50ZXJ2YWw9MTMsY2UuZnguc3RhcnQ9ZnVuY3Rpb24oKXt1dHx8KHV0PSEwLGR0KCkpfSxjZS5meC5zdG9wPWZ1bmN0aW9uKCl7dXQ9bnVsbH0sY2UuZnguc3BlZWRzPXtzbG93OjYwMCxmYXN0OjIwMCxfZGVmYXVsdDo0MDB9LGNlLmZuLmRlbGF5PWZ1bmN0aW9uKHIsZSl7cmV0dXJuIHI9Y2UuZngmJmNlLmZ4LnNwZWVkc1tyXXx8cixlPWV8fCJmeCIsdGhpcy5xdWV1ZShlLGZ1bmN0aW9uKGUsdCl7dmFyIG49aWUuc2V0VGltZW91dChlLHIpO3Quc3RvcD1mdW5jdGlvbigpe2llLmNsZWFyVGltZW91dChuKX19KX0sbHQ9Qy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLGN0PUMuY3JlYXRlRWxlbWVudCgic2VsZWN0IikuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSksbHQudHlwZT0iY2hlY2tib3giLGxlLmNoZWNrT249IiIhPT1sdC52YWx1ZSxsZS5vcHRTZWxlY3RlZD1jdC5zZWxlY3RlZCwobHQ9Qy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS52YWx1ZT0idCIsbHQudHlwZT0icmFkaW8iLGxlLnJhZGlvVmFsdWU9InQiPT09bHQudmFsdWU7dmFyIG10LHh0PWNlLmV4cHIuYXR0ckhhbmRsZTtjZS5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTSh0aGlzLGNlLmF0dHIsZSx0LDE8YXJndW1lbnRzLmxlbmd0aCl9LHJlbW92ZUF0dHI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2NlLnJlbW92ZUF0dHIodGhpcyxlKX0pfX0pLGNlLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPWUubm9kZVR5cGU7aWYoMyE9PW8mJjghPT1vJiYyIT09bylyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGUuZ2V0QXR0cmlidXRlP2NlLnByb3AoZSx0LG4pOigxPT09byYmY2UuaXNYTUxEb2MoZSl8fChpPWNlLmF0dHJIb29rc1t0LnRvTG93ZXJDYXNlKCldfHwoY2UuZXhwci5tYXRjaC5ib29sLnRlc3QodCk/bXQ6dm9pZCAwKSksdm9pZCAwIT09bj9udWxsPT09bj92b2lkIGNlLnJlbW92ZUF0dHIoZSx0KTppJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk/cjooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQpKT9yOm51bGw9PShyPWNlLmZpbmQuYXR0cihlLHQpKT92b2lkIDA6cil9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGUsdCl7aWYoIWxlLnJhZGlvVmFsdWUmJiJyYWRpbyI9PT10JiZmZShlLCJpbnB1dCIpKXt2YXIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXQmJnQubWF0Y2goRCk7aWYoaSYmMT09PWUubm9kZVR5cGUpd2hpbGUobj1pW3IrK10pZS5yZW1vdmVBdHRyaWJ1dGUobil9fSksbXQ9e3NldDpmdW5jdGlvbihlLHQsbil7cmV0dXJuITE9PT10P2NlLnJlbW92ZUF0dHIoZSxuKTplLnNldEF0dHJpYnV0ZShuLG4pLG59fSxjZS5lYWNoKGNlLmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9nKSxmdW5jdGlvbihlLHQpe3ZhciBhPXh0W3RdfHxjZS5maW5kLmF0dHI7eHRbdF09ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz10LnRvTG93ZXJDYXNlKCk7cmV0dXJuIG58fChpPXh0W29dLHh0W29dPXIscj1udWxsIT1hKGUsdCxuKT9vOm51bGwseHRbb109aSkscn19KTt2YXIgYnQ9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSx3dD0vXig/OmF8YXJlYSkkL2k7ZnVuY3Rpb24gVHQoZSl7cmV0dXJuKGUubWF0Y2goRCl8fFtdKS5qb2luKCIgIil9ZnVuY3Rpb24gQ3QoZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiJ9ZnVuY3Rpb24ga3QoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZToic3RyaW5nIj09dHlwZW9mIGUmJmUubWF0Y2goRCl8fFtdfWNlLmZuLmV4dGVuZCh7cHJvcDpmdW5jdGlvbihlLHQpe3JldHVybiBNKHRoaXMsY2UucHJvcCxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXNbY2UucHJvcEZpeFtlXXx8ZV19KX19KSxjZS5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz1lLm5vZGVUeXBlO2lmKDMhPT1vJiY4IT09byYmMiE9PW8pcmV0dXJuIDE9PT1vJiZjZS5pc1hNTERvYyhlKXx8KHQ9Y2UucHJvcEZpeFt0XXx8dCxpPWNlLnByb3BIb29rc1t0XSksdm9pZCAwIT09bj9pJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk/cjplW3RdPW46aSYmImdldCJpbiBpJiZudWxsIT09KHI9aS5nZXQoZSx0KSk/cjplW3RdfSxwcm9wSG9va3M6e3RhYkluZGV4OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9Y2UuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/cGFyc2VJbnQodCwxMCk6YnQudGVzdChlLm5vZGVOYW1lKXx8d3QudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSksbGUub3B0U2VsZWN0ZWR8fChjZS5wcm9wSG9va3Muc2VsZWN0ZWQ9e2dldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7cmV0dXJuIHQmJnQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsbnVsbH0sc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTt0JiYodC5zZWxlY3RlZEluZGV4LHQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgpfX0pLGNlLmVhY2goWyJ0YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe2NlLnByb3BGaXhbdGhpcy50b0xvd2VyQ2FzZSgpXT10aGlzfSksY2UuZm4uZXh0ZW5kKHthZGRDbGFzczpmdW5jdGlvbih0KXt2YXIgZSxuLHIsaSxvLGE7cmV0dXJuIHYodCk/dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe2NlKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLGUsQ3QodGhpcykpKX0pOihlPWt0KHQpKS5sZW5ndGg/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYocj1DdCh0aGlzKSxuPTE9PT10aGlzLm5vZGVUeXBlJiYiICIrVHQocikrIiAiKXtmb3Iobz0wO288ZS5sZW5ndGg7bysrKWk9ZVtvXSxuLmluZGV4T2YoIiAiK2krIiAiKTwwJiYobis9aSsiICIpO2E9VHQobiksciE9PWEmJnRoaXMuc2V0QXR0cmlidXRlKCJjbGFzcyIsYSl9fSk6dGhpc30scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24odCl7dmFyIGUsbixyLGksbyxhO3JldHVybiB2KHQpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtjZSh0aGlzKS5yZW1vdmVDbGFzcyh0LmNhbGwodGhpcyxlLEN0KHRoaXMpKSl9KTphcmd1bWVudHMubGVuZ3RoPyhlPWt0KHQpKS5sZW5ndGg/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYocj1DdCh0aGlzKSxuPTE9PT10aGlzLm5vZGVUeXBlJiYiICIrVHQocikrIiAiKXtmb3Iobz0wO288ZS5sZW5ndGg7bysrKXtpPWVbb107d2hpbGUoLTE8bi5pbmRleE9mKCIgIitpKyIgIikpbj1uLnJlcGxhY2UoIiAiK2krIiAiLCIgIil9YT1UdChuKSxyIT09YSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixhKX19KTp0aGlzOnRoaXMuYXR0cigiY2xhc3MiLCIiKX0sdG9nZ2xlQ2xhc3M6ZnVuY3Rpb24odCxuKXt2YXIgZSxyLGksbyxhPXR5cGVvZiB0LHM9InN0cmluZyI9PT1hfHxBcnJheS5pc0FycmF5KHQpO3JldHVybiB2KHQpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtjZSh0aGlzKS50b2dnbGVDbGFzcyh0LmNhbGwodGhpcyxlLEN0KHRoaXMpLG4pLG4pfSk6ImJvb2xlYW4iPT10eXBlb2YgbiYmcz9uP3RoaXMuYWRkQ2xhc3ModCk6dGhpcy5yZW1vdmVDbGFzcyh0KTooZT1rdCh0KSx0aGlzLmVhY2goZnVuY3Rpb24oKXtpZihzKWZvcihvPWNlKHRoaXMpLGk9MDtpPGUubGVuZ3RoO2krKylyPWVbaV0sby5oYXNDbGFzcyhyKT9vLnJlbW92ZUNsYXNzKHIpOm8uYWRkQ2xhc3Mocik7ZWxzZSB2b2lkIDAhPT10JiYiYm9vbGVhbiIhPT1hfHwoKHI9Q3QodGhpcykpJiZfLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixyKSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixyfHwhMT09PXQ/IiI6Xy5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSkpfSxoYXNDbGFzczpmdW5jdGlvbihlKXt2YXIgdCxuLHI9MDt0PSIgIitlKyIgIjt3aGlsZShuPXRoaXNbcisrXSlpZigxPT09bi5ub2RlVHlwZSYmLTE8KCIgIitUdChDdChuKSkrIiAiKS5pbmRleE9mKHQpKXJldHVybiEwO3JldHVybiExfX0pO3ZhciBTdD0vXHIvZztjZS5mbi5leHRlbmQoe3ZhbDpmdW5jdGlvbihuKXt2YXIgcixlLGksdD10aGlzWzBdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhpPXYobiksdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe3ZhciB0OzE9PT10aGlzLm5vZGVUeXBlJiYobnVsbD09KHQ9aT9uLmNhbGwodGhpcyxlLGNlKHRoaXMpLnZhbCgpKTpuKT90PSIiOiJudW1iZXIiPT10eXBlb2YgdD90Kz0iIjpBcnJheS5pc0FycmF5KHQpJiYodD1jZS5tYXAodCxmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjplKyIifSkpLChyPWNlLnZhbEhvb2tzW3RoaXMudHlwZV18fGNlLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYic2V0ImluIHImJnZvaWQgMCE9PXIuc2V0KHRoaXMsdCwidmFsdWUiKXx8KHRoaXMudmFsdWU9dCkpfSkpOnQ/KHI9Y2UudmFsSG9va3NbdC50eXBlXXx8Y2UudmFsSG9va3NbdC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gciYmdm9pZCAwIT09KGU9ci5nZXQodCwidmFsdWUiKSk/ZToic3RyaW5nIj09dHlwZW9mKGU9dC52YWx1ZSk/ZS5yZXBsYWNlKFN0LCIiKTpudWxsPT1lPyIiOmU6dm9pZCAwfX0pLGNlLmV4dGVuZCh7dmFsSG9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWNlLmZpbmQuYXR0cihlLCJ2YWx1ZSIpO3JldHVybiBudWxsIT10P3Q6VHQoY2UudGV4dChlKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaT1lLm9wdGlvbnMsbz1lLnNlbGVjdGVkSW5kZXgsYT0ic2VsZWN0LW9uZSI9PT1lLnR5cGUscz1hP251bGw6W10sdT1hP28rMTppLmxlbmd0aDtmb3Iocj1vPDA/dTphP286MDtyPHU7cisrKWlmKCgobj1pW3JdKS5zZWxlY3RlZHx8cj09PW8pJiYhbi5kaXNhYmxlZCYmKCFuLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFmZShuLnBhcmVudE5vZGUsIm9wdGdyb3VwIikpKXtpZih0PWNlKG4pLnZhbCgpLGEpcmV0dXJuIHQ7cy5wdXNoKHQpfXJldHVybiBzfSxzZXQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGk9ZS5vcHRpb25zLG89Y2UubWFrZUFycmF5KHQpLGE9aS5sZW5ndGg7d2hpbGUoYS0tKSgocj1pW2FdKS5zZWxlY3RlZD0tMTxjZS5pbkFycmF5KGNlLnZhbEhvb2tzLm9wdGlvbi5nZXQociksbykpJiYobj0hMCk7cmV0dXJuIG58fChlLnNlbGVjdGVkSW5kZXg9LTEpLG99fX19KSxjZS5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7Y2UudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlvbihlLHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIGUuY2hlY2tlZD0tMTxjZS5pbkFycmF5KGNlKGUpLnZhbCgpLHQpfX0sbGUuY2hlY2tPbnx8KGNlLnZhbEhvb2tzW3RoaXNdLmdldD1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpPyJvbiI6ZS52YWx1ZX0pfSk7dmFyIEV0PWllLmxvY2F0aW9uLGp0PXtndWlkOkRhdGUubm93KCl9LEF0PS9cPy87Y2UucGFyc2VYTUw9ZnVuY3Rpb24oZSl7dmFyIHQsbjtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3RyeXt0PShuZXcgaWUuRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwidGV4dC94bWwiKX1jYXRjaChlKXt9cmV0dXJuIG49dCYmdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgicGFyc2VyZXJyb3IiKVswXSx0JiYhbnx8Y2UuZXJyb3IoIkludmFsaWQgWE1MOiAiKyhuP2NlLm1hcChuLmNoaWxkTm9kZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUudGV4dENvbnRlbnR9KS5qb2luKCJcbiIpOmUpKSx0fTt2YXIgRHQ9L14oPzpmb2N1c2luZm9jdXN8Zm9jdXNvdXRibHVyKSQvLE50PWZ1bmN0aW9uKGUpe2Uuc3RvcFByb3BhZ2F0aW9uKCl9O2NlLmV4dGVuZChjZS5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LGwsYyxmLHA9W258fENdLGQ9dWUuY2FsbChlLCJ0eXBlIik/ZS50eXBlOmUsaD11ZS5jYWxsKGUsIm5hbWVzcGFjZSIpP2UubmFtZXNwYWNlLnNwbGl0KCIuIik6W107aWYobz1mPWE9bj1ufHxDLDMhPT1uLm5vZGVUeXBlJiY4IT09bi5ub2RlVHlwZSYmIUR0LnRlc3QoZCtjZS5ldmVudC50cmlnZ2VyZWQpJiYoLTE8ZC5pbmRleE9mKCIuIikmJihkPShoPWQuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksdT1kLmluZGV4T2YoIjoiKTwwJiYib24iK2QsKGU9ZVtjZS5leHBhbmRvXT9lOm5ldyBjZS5FdmVudChkLCJvYmplY3QiPT10eXBlb2YgZSYmZSkpLmlzVHJpZ2dlcj1yPzI6MyxlLm5hbWVzcGFjZT1oLmpvaW4oIi4iKSxlLnJuYW1lc3BhY2U9ZS5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIraC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLGUucmVzdWx0PXZvaWQgMCxlLnRhcmdldHx8KGUudGFyZ2V0PW4pLHQ9bnVsbD09dD9bZV06Y2UubWFrZUFycmF5KHQsW2VdKSxjPWNlLmV2ZW50LnNwZWNpYWxbZF18fHt9LHJ8fCFjLnRyaWdnZXJ8fCExIT09Yy50cmlnZ2VyLmFwcGx5KG4sdCkpKXtpZighciYmIWMubm9CdWJibGUmJiF5KG4pKXtmb3Iocz1jLmRlbGVnYXRlVHlwZXx8ZCxEdC50ZXN0KHMrZCl8fChvPW8ucGFyZW50Tm9kZSk7bztvPW8ucGFyZW50Tm9kZSlwLnB1c2gobyksYT1vO2E9PT0obi5vd25lckRvY3VtZW50fHxDKSYmcC5wdXNoKGEuZGVmYXVsdFZpZXd8fGEucGFyZW50V2luZG93fHxpZSl9aT0wO3doaWxlKChvPXBbaSsrXSkmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpZj1vLGUudHlwZT0xPGk/czpjLmJpbmRUeXBlfHxkLChsPShfLmdldChvLCJldmVudHMiKXx8T2JqZWN0LmNyZWF0ZShudWxsKSlbZS50eXBlXSYmXy5nZXQobywiaGFuZGxlIikpJiZsLmFwcGx5KG8sdCksKGw9dSYmb1t1XSkmJmwuYXBwbHkmJiQobykmJihlLnJlc3VsdD1sLmFwcGx5KG8sdCksITE9PT1lLnJlc3VsdCYmZS5wcmV2ZW50RGVmYXVsdCgpKTtyZXR1cm4gZS50eXBlPWQscnx8ZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8Yy5fZGVmYXVsdCYmITEhPT1jLl9kZWZhdWx0LmFwcGx5KHAucG9wKCksdCl8fCEkKG4pfHx1JiZ2KG5bZF0pJiYheShuKSYmKChhPW5bdV0pJiYoblt1XT1udWxsKSxjZS5ldmVudC50cmlnZ2VyZWQ9ZCxlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkmJmYuYWRkRXZlbnRMaXN0ZW5lcihkLE50KSxuW2RdKCksZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpJiZmLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCxOdCksY2UuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCxhJiYoblt1XT1hKSksZS5yZXN1bHR9fSxzaW11bGF0ZTpmdW5jdGlvbihlLHQsbil7dmFyIHI9Y2UuZXh0ZW5kKG5ldyBjZS5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtjZS5ldmVudC50cmlnZ2VyKHIsbnVsbCx0KX19KSxjZS5mbi5leHRlbmQoe3RyaWdnZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7Y2UuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIGNlLmV2ZW50LnRyaWdnZXIoZSx0LG4sITApfX0pO3ZhciBxdD0vXFtcXSQvLEx0PS9ccj9cbi9nLEh0PS9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSxPdD0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxrZXlnZW4pL2k7ZnVuY3Rpb24gUHQobixlLHIsaSl7dmFyIHQ7aWYoQXJyYXkuaXNBcnJheShlKSljZS5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxxdC50ZXN0KG4pP2kobix0KTpQdChuKyJbIisoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT10P2U6IiIpKyJdIix0LHIsaSl9KTtlbHNlIGlmKHJ8fCJvYmplY3QiIT09eChlKSlpKG4sZSk7ZWxzZSBmb3IodCBpbiBlKVB0KG4rIlsiK3QrIl0iLGVbdF0scixpKX1jZS5wYXJhbT1mdW5jdGlvbihlLHQpe3ZhciBuLHI9W10saT1mdW5jdGlvbihlLHQpe3ZhciBuPXYodCk/dCgpOnQ7cltyLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQobnVsbD09bj8iIjpuKX07aWYobnVsbD09ZSlyZXR1cm4iIjtpZihBcnJheS5pc0FycmF5KGUpfHxlLmpxdWVyeSYmIWNlLmlzUGxhaW5PYmplY3QoZSkpY2UuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZvcihuIGluIGUpUHQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSxjZS5mbi5leHRlbmQoe3NlcmlhbGl6ZTpmdW5jdGlvbigpe3JldHVybiBjZS5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPWNlLnByb3AodGhpcywiZWxlbWVudHMiKTtyZXR1cm4gZT9jZS5tYWtlQXJyYXkoZSk6dGhpc30pLmZpbHRlcihmdW5jdGlvbigpe3ZhciBlPXRoaXMudHlwZTtyZXR1cm4gdGhpcy5uYW1lJiYhY2UodGhpcykuaXMoIjpkaXNhYmxlZCIpJiZPdC50ZXN0KHRoaXMubm9kZU5hbWUpJiYhSHQudGVzdChlKSYmKHRoaXMuY2hlY2tlZHx8IXdlLnRlc3QoZSkpfSkubWFwKGZ1bmN0aW9uKGUsdCl7dmFyIG49Y2UodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDpBcnJheS5pc0FycmF5KG4pP2NlLm1hcChuLGZ1bmN0aW9uKGUpe3JldHVybntuYW1lOnQubmFtZSx2YWx1ZTplLnJlcGxhY2UoTHQsIlxyXG4iKX19KTp7bmFtZTp0Lm5hbWUsdmFsdWU6bi5yZXBsYWNlKEx0LCJcclxuIil9fSkuZ2V0KCl9fSk7dmFyIE10PS8lMjAvZyxSdD0vIy4qJC8sSXQ9LyhbPyZdKV89W14mXSovLFd0PS9eKC4qPyk6WyBcdF0qKFteXHJcbl0qKSQvZ20sRnQ9L14oPzpHRVR8SEVBRCkkLywkdD0vXlwvXC8vLEJ0PXt9LF90PXt9LHp0PSIqLyIuY29uY2F0KCIqIiksWHQ9Qy5jcmVhdGVFbGVtZW50KCJhIik7ZnVuY3Rpb24gVXQobyl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7InN0cmluZyIhPXR5cGVvZiBlJiYodD1lLGU9IioiKTt2YXIgbixyPTAsaT1lLnRvTG93ZXJDYXNlKCkubWF0Y2goRCl8fFtdO2lmKHYodCkpd2hpbGUobj1pW3IrK10pIisiPT09blswXT8obj1uLnNsaWNlKDEpfHwiKiIsKG9bbl09b1tuXXx8W10pLnVuc2hpZnQodCkpOihvW25dPW9bbl18fFtdKS5wdXNoKHQpfX1mdW5jdGlvbiBWdCh0LGksbyxhKXt2YXIgcz17fSx1PXQ9PT1fdDtmdW5jdGlvbiBsKGUpe3ZhciByO3JldHVybiBzW2VdPSEwLGNlLmVhY2godFtlXXx8W10sZnVuY3Rpb24oZSx0KXt2YXIgbj10KGksbyxhKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIG58fHV8fHNbbl0/dT8hKHI9bik6dm9pZCAwOihpLmRhdGFUeXBlcy51bnNoaWZ0KG4pLGwobiksITEpfSkscn1yZXR1cm4gbChpLmRhdGFUeXBlc1swXSl8fCFzWyIqIl0mJmwoIioiKX1mdW5jdGlvbiBHdChlLHQpe3ZhciBuLHIsaT1jZS5hamF4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChpW25dP2U6cnx8KHI9e30pKVtuXT10W25dKTtyZXR1cm4gciYmY2UuZXh0ZW5kKCEwLGUsciksZX1YdC5ocmVmPUV0LmhyZWYsY2UuZXh0ZW5kKHthY3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3VybDpFdC5ocmVmLHR5cGU6IkdFVCIsaXNMb2NhbDovXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLy50ZXN0KEV0LnByb3RvY29sKSxnbG9iYWw6ITAscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsYWNjZXB0czp7IioiOnp0LHRleHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIseG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixqc29uOiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L2phdmFzY3JpcHQifSxjb250ZW50czp7eG1sOi9cYnhtbFxiLyxodG1sOi9cYmh0bWwvLGpzb246L1xianNvblxiL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VYTUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29udmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpzb24iOkpTT04ucGFyc2UsInRleHQgeG1sIjpjZS5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/R3QoR3QoZSxjZS5hamF4U2V0dGluZ3MpLHQpOkd0KGNlLmFqYXhTZXR0aW5ncyxlKX0sYWpheFByZWZpbHRlcjpVdChCdCksYWpheFRyYW5zcG9ydDpVdChfdCksYWpheDpmdW5jdGlvbihlLHQpeyJvYmplY3QiPT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksdD10fHx7fTt2YXIgYyxmLHAsbixkLHIsaCxnLGksbyx2PWNlLmFqYXhTZXR1cCh7fSx0KSx5PXYuY29udGV4dHx8dixtPXYuY29udGV4dCYmKHkubm9kZVR5cGV8fHkuanF1ZXJ5KT9jZSh5KTpjZS5ldmVudCx4PWNlLkRlZmVycmVkKCksYj1jZS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5Iiksdz12LnN0YXR1c0NvZGV8fHt9LGE9e30scz17fSx1PSJjYW5jZWxlZCIsVD17cmVhZHlTdGF0ZTowLGdldFJlc3BvbnNlSGVhZGVyOmZ1bmN0aW9uKGUpe3ZhciB0O2lmKGgpe2lmKCFuKXtuPXt9O3doaWxlKHQ9V3QuZXhlYyhwKSluW3RbMV0udG9Mb3dlckNhc2UoKSsiICJdPShuW3RbMV0udG9Mb3dlckNhc2UoKSsiICJdfHxbXSkuY29uY2F0KHRbMl0pfXQ9bltlLnRvTG93ZXJDYXNlKCkrIiAiXX1yZXR1cm4gbnVsbD09dD9udWxsOnQuam9pbigiLCAiKX0sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIGg/cDpudWxsfSxzZXRSZXF1ZXN0SGVhZGVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PWgmJihlPXNbZS50b0xvd2VyQ2FzZSgpXT1zW2UudG9Mb3dlckNhc2UoKV18fGUsYVtlXT10KSx0aGlzfSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1oJiYodi5taW1lVHlwZT1lKSx0aGlzfSxzdGF0dXNDb2RlOmZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUpaWYoaClULmFsd2F5cyhlW1Quc3RhdHVzXSk7ZWxzZSBmb3IodCBpbiBlKXdbdF09W3dbdF0sZVt0XV07cmV0dXJuIHRoaXN9LGFib3J0OmZ1bmN0aW9uKGUpe3ZhciB0PWV8fHU7cmV0dXJuIGMmJmMuYWJvcnQodCksbCgwLHQpLHRoaXN9fTtpZih4LnByb21pc2UoVCksdi51cmw9KChlfHx2LnVybHx8RXQuaHJlZikrIiIpLnJlcGxhY2UoJHQsRXQucHJvdG9jb2wrIi8vIiksdi50eXBlPXQubWV0aG9kfHx0LnR5cGV8fHYubWV0aG9kfHx2LnR5cGUsdi5kYXRhVHlwZXM9KHYuZGF0YVR5cGV8fCIqIikudG9Mb3dlckNhc2UoKS5tYXRjaChEKXx8WyIiXSxudWxsPT12LmNyb3NzRG9tYWluKXtyPUMuY3JlYXRlRWxlbWVudCgiYSIpO3RyeXtyLmhyZWY9di51cmwsci5ocmVmPXIuaHJlZix2LmNyb3NzRG9tYWluPVh0LnByb3RvY29sKyIvLyIrWHQuaG9zdCE9ci5wcm90b2NvbCsiLy8iK3IuaG9zdH1jYXRjaChlKXt2LmNyb3NzRG9tYWluPSEwfX1pZih2LmRhdGEmJnYucHJvY2Vzc0RhdGEmJiJzdHJpbmciIT10eXBlb2Ygdi5kYXRhJiYodi5kYXRhPWNlLnBhcmFtKHYuZGF0YSx2LnRyYWRpdGlvbmFsKSksVnQoQnQsdix0LFQpLGgpcmV0dXJuIFQ7Zm9yKGkgaW4oZz1jZS5ldmVudCYmdi5nbG9iYWwpJiYwPT1jZS5hY3RpdmUrKyYmY2UuZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0Iiksdi50eXBlPXYudHlwZS50b1VwcGVyQ2FzZSgpLHYuaGFzQ29udGVudD0hRnQudGVzdCh2LnR5cGUpLGY9di51cmwucmVwbGFjZShSdCwiIiksdi5oYXNDb250ZW50P3YuZGF0YSYmdi5wcm9jZXNzRGF0YSYmMD09PSh2LmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJih2LmRhdGE9di5kYXRhLnJlcGxhY2UoTXQsIisiKSk6KG89di51cmwuc2xpY2UoZi5sZW5ndGgpLHYuZGF0YSYmKHYucHJvY2Vzc0RhdGF8fCJzdHJpbmciPT10eXBlb2Ygdi5kYXRhKSYmKGYrPShBdC50ZXN0KGYpPyImIjoiPyIpK3YuZGF0YSxkZWxldGUgdi5kYXRhKSwhMT09PXYuY2FjaGUmJihmPWYucmVwbGFjZShJdCwiJDEiKSxvPShBdC50ZXN0KGYpPyImIjoiPyIpKyJfPSIranQuZ3VpZCsrK28pLHYudXJsPWYrbyksdi5pZk1vZGlmaWVkJiYoY2UubGFzdE1vZGlmaWVkW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixjZS5sYXN0TW9kaWZpZWRbZl0pLGNlLmV0YWdbZl0mJlQuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsY2UuZXRhZ1tmXSkpLCh2LmRhdGEmJnYuaGFzQ29udGVudCYmITEhPT12LmNvbnRlbnRUeXBlfHx0LmNvbnRlbnRUeXBlKSYmVC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHYuY29udGVudFR5cGUpLFQuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0Iix2LmRhdGFUeXBlc1swXSYmdi5hY2NlcHRzW3YuZGF0YVR5cGVzWzBdXT92LmFjY2VwdHNbdi5kYXRhVHlwZXNbMF1dKygiKiIhPT12LmRhdGFUeXBlc1swXT8iLCAiK3p0KyI7IHE9MC4wMSI6IiIpOnYuYWNjZXB0c1siKiJdKSx2LmhlYWRlcnMpVC5zZXRSZXF1ZXN0SGVhZGVyKGksdi5oZWFkZXJzW2ldKTtpZih2LmJlZm9yZVNlbmQmJighMT09PXYuYmVmb3JlU2VuZC5jYWxsKHksVCx2KXx8aCkpcmV0dXJuIFQuYWJvcnQoKTtpZih1PSJhYm9ydCIsYi5hZGQodi5jb21wbGV0ZSksVC5kb25lKHYuc3VjY2VzcyksVC5mYWlsKHYuZXJyb3IpLGM9VnQoX3Qsdix0LFQpKXtpZihULnJlYWR5U3RhdGU9MSxnJiZtLnRyaWdnZXIoImFqYXhTZW5kIixbVCx2XSksaClyZXR1cm4gVDt2LmFzeW5jJiYwPHYudGltZW91dCYmKGQ9aWUuc2V0VGltZW91dChmdW5jdGlvbigpe1QuYWJvcnQoInRpbWVvdXQiKX0sdi50aW1lb3V0KSk7dHJ5e2g9ITEsYy5zZW5kKGEsbCl9Y2F0Y2goZSl7aWYoaCl0aHJvdyBlO2woLTEsZSl9fWVsc2UgbCgtMSwiTm8gVHJhbnNwb3J0Iik7ZnVuY3Rpb24gbChlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9dDtofHwoaD0hMCxkJiZpZS5jbGVhclRpbWVvdXQoZCksYz12b2lkIDAscD1yfHwiIixULnJlYWR5U3RhdGU9MDxlPzQ6MCxpPTIwMDw9ZSYmZTwzMDB8fDMwND09PWUsbiYmKHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHM9ZS5jb250ZW50cyx1PWUuZGF0YVR5cGVzO3doaWxlKCIqIj09PXVbMF0pdS5zaGlmdCgpLHZvaWQgMD09PXImJihyPWUubWltZVR5cGV8fHQuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihyKWZvcihpIGluIHMpaWYoc1tpXSYmc1tpXS50ZXN0KHIpKXt1LnVuc2hpZnQoaSk7YnJlYWt9aWYodVswXWluIG4pbz11WzBdO2Vsc2V7Zm9yKGkgaW4gbil7aWYoIXVbMF18fGUuY29udmVydGVyc1tpKyIgIit1WzBdXSl7bz1pO2JyZWFrfWF8fChhPWkpfW89b3x8YX1pZihvKXJldHVybiBvIT09dVswXSYmdS51bnNoaWZ0KG8pLG5bb119KHYsVCxuKSksIWkmJi0xPGNlLmluQXJyYXkoInNjcmlwdCIsdi5kYXRhVHlwZXMpJiZjZS5pbkFycmF5KCJqc29uIix2LmRhdGFUeXBlcyk8MCYmKHYuY29udmVydGVyc1sidGV4dCBzY3JpcHQiXT1mdW5jdGlvbigpe30pLHM9ZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbyxhLHMsdSxsPXt9LGM9ZS5kYXRhVHlwZXMuc2xpY2UoKTtpZihjWzFdKWZvcihhIGluIGUuY29udmVydGVycylsW2EudG9Mb3dlckNhc2UoKV09ZS5jb252ZXJ0ZXJzW2FdO289Yy5zaGlmdCgpO3doaWxlKG8paWYoZS5yZXNwb25zZUZpZWxkc1tvXSYmKG5bZS5yZXNwb25zZUZpZWxkc1tvXV09dCksIXUmJnImJmUuZGF0YUZpbHRlciYmKHQ9ZS5kYXRhRmlsdGVyKHQsZS5kYXRhVHlwZSkpLHU9byxvPWMuc2hpZnQoKSlpZigiKiI9PT1vKW89dTtlbHNlIGlmKCIqIiE9PXUmJnUhPT1vKXtpZighKGE9bFt1KyIgIitvXXx8bFsiKiAiK29dKSlmb3IoaSBpbiBsKWlmKChzPWkuc3BsaXQoIiAiKSlbMV09PT1vJiYoYT1sW3UrIiAiK3NbMF1dfHxsWyIqICIrc1swXV0pKXshMD09PWE/YT1sW2ldOiEwIT09bFtpXSYmKG89c1swXSxjLnVuc2hpZnQoc1sxXSkpO2JyZWFrfWlmKCEwIT09YSlpZihhJiZlWyJ0aHJvd3MiXSl0PWEodCk7ZWxzZSB0cnl7dD1hKHQpfWNhdGNoKGUpe3JldHVybntzdGF0ZToicGFyc2VyZXJyb3IiLGVycm9yOmE/ZToiTm8gY29udmVyc2lvbiBmcm9tICIrdSsiIHRvICIrb319fXJldHVybntzdGF0ZToic3VjY2VzcyIsZGF0YTp0fX0odixzLFQsaSksaT8odi5pZk1vZGlmaWVkJiYoKHU9VC5nZXRSZXNwb25zZUhlYWRlcigiTGFzdC1Nb2RpZmllZCIpKSYmKGNlLmxhc3RNb2RpZmllZFtmXT11KSwodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIikpJiYoY2UuZXRhZ1tmXT11KSksMjA0PT09ZXx8IkhFQUQiPT09di50eXBlP2w9Im5vY29udGVudCI6MzA0PT09ZT9sPSJub3Rtb2RpZmllZCI6KGw9cy5zdGF0ZSxvPXMuZGF0YSxpPSEoYT1zLmVycm9yKSkpOihhPWwsIWUmJmx8fChsPSJlcnJvciIsZTwwJiYoZT0wKSkpLFQuc3RhdHVzPWUsVC5zdGF0dXNUZXh0PSh0fHxsKSsiIixpP3gucmVzb2x2ZVdpdGgoeSxbbyxsLFRdKTp4LnJlamVjdFdpdGgoeSxbVCxsLGFdKSxULnN0YXR1c0NvZGUodyksdz12b2lkIDAsZyYmbS50cmlnZ2VyKGk/ImFqYXhTdWNjZXNzIjoiYWpheEVycm9yIixbVCx2LGk/bzphXSksYi5maXJlV2l0aCh5LFtULGxdKSxnJiYobS50cmlnZ2VyKCJhamF4Q29tcGxldGUiLFtULHZdKSwtLWNlLmFjdGl2ZXx8Y2UuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiBUfSxnZXRKU09OOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gY2UuZ2V0KGUsdCxuLCJqc29uIil9LGdldFNjcmlwdDpmdW5jdGlvbihlLHQpe3JldHVybiBjZS5nZXQoZSx2b2lkIDAsdCwic2NyaXB0Iil9fSksY2UuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihlLGkpe2NlW2ldPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB2KHQpJiYocj1yfHxuLG49dCx0PXZvaWQgMCksY2UuYWpheChjZS5leHRlbmQoe3VybDplLHR5cGU6aSxkYXRhVHlwZTpyLGRhdGE6dCxzdWNjZXNzOm59LGNlLmlzUGxhaW5PYmplY3QoZSkmJmUpKX19KSxjZS5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe3ZhciB0O2Zvcih0IGluIGUuaGVhZGVycykiY29udGVudC10eXBlIj09PXQudG9Mb3dlckNhc2UoKSYmKGUuY29udGVudFR5cGU9ZS5oZWFkZXJzW3RdfHwiIil9KSxjZS5fZXZhbFVybD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGNlLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6ITEsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyOmZ1bmN0aW9uKGUpe2NlLmdsb2JhbEV2YWwoZSx0LG4pfX0pfSxjZS5mbi5leHRlbmQoe3dyYXBBbGw6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHRoaXNbMF0mJih2KGUpJiYoZT1lLmNhbGwodGhpc1swXSkpLHQ9Y2UoZSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJnQuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLHQubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aGlsZShlLmZpcnN0RWxlbWVudENoaWxkKWU9ZS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlzKSksdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKG4pe3JldHVybiB2KG4pP3RoaXMuZWFjaChmdW5jdGlvbihlKXtjZSh0aGlzKS53cmFwSW5uZXIobi5jYWxsKHRoaXMsZSkpfSk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Y2UodGhpcyksdD1lLmNvbnRlbnRzKCk7dC5sZW5ndGg/dC53cmFwQWxsKG4pOmUuYXBwZW5kKG4pfSl9LHdyYXA6ZnVuY3Rpb24odCl7dmFyIG49dih0KTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe2NlKHRoaXMpLndyYXBBbGwobj90LmNhbGwodGhpcyxlKTp0KX0pfSx1bndyYXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucGFyZW50KGUpLm5vdCgiYm9keSIpLmVhY2goZnVuY3Rpb24oKXtjZSh0aGlzKS5yZXBsYWNlV2l0aCh0aGlzLmNoaWxkTm9kZXMpfSksdGhpc319KSxjZS5leHByLnBzZXVkb3MuaGlkZGVuPWZ1bmN0aW9uKGUpe3JldHVybiFjZS5leHByLnBzZXVkb3MudmlzaWJsZShlKX0sY2UuZXhwci5wc2V1ZG9zLnZpc2libGU9ZnVuY3Rpb24oZSl7cmV0dXJuISEoZS5vZmZzZXRXaWR0aHx8ZS5vZmZzZXRIZWlnaHR8fGUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpfSxjZS5hamF4U2V0dGluZ3MueGhyPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgaWUuWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fX07dmFyIFl0PXswOjIwMCwxMjIzOjIwNH0sUXQ9Y2UuYWpheFNldHRpbmdzLnhocigpO2xlLmNvcnM9ISFRdCYmIndpdGhDcmVkZW50aWFscyJpbiBRdCxsZS5hamF4PVF0PSEhUXQsY2UuYWpheFRyYW5zcG9ydChmdW5jdGlvbihpKXt2YXIgbyxhO2lmKGxlLmNvcnN8fFF0JiYhaS5jcm9zc0RvbWFpbilyZXR1cm57c2VuZDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9aS54aHIoKTtpZihyLm9wZW4oaS50eXBlLGkudXJsLGkuYXN5bmMsaS51c2VybmFtZSxpLnBhc3N3b3JkKSxpLnhockZpZWxkcylmb3IobiBpbiBpLnhockZpZWxkcylyW25dPWkueGhyRmllbGRzW25dO2ZvcihuIGluIGkubWltZVR5cGUmJnIub3ZlcnJpZGVNaW1lVHlwZSYmci5vdmVycmlkZU1pbWVUeXBlKGkubWltZVR5cGUpLGkuY3Jvc3NEb21haW58fGVbIlgtUmVxdWVzdGVkLVdpdGgiXXx8KGVbIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKSxlKXIuc2V0UmVxdWVzdEhlYWRlcihuLGVbbl0pO289ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7byYmKG89YT1yLm9ubG9hZD1yLm9uZXJyb3I9ci5vbmFib3J0PXIub250aW1lb3V0PXIub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsImFib3J0Ij09PWU/ci5hYm9ydCgpOiJlcnJvciI9PT1lPyJudW1iZXIiIT10eXBlb2Ygci5zdGF0dXM/dCgwLCJlcnJvciIpOnQoci5zdGF0dXMsci5zdGF0dXNUZXh0KTp0KFl0W3Iuc3RhdHVzXXx8ci5zdGF0dXMsci5zdGF0dXNUZXh0LCJ0ZXh0IiE9PShyLnJlc3BvbnNlVHlwZXx8InRleHQiKXx8InN0cmluZyIhPXR5cGVvZiByLnJlc3BvbnNlVGV4dD97YmluYXJ5OnIucmVzcG9uc2V9Ont0ZXh0OnIucmVzcG9uc2VUZXh0fSxyLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSl9fSxyLm9ubG9hZD1vKCksYT1yLm9uZXJyb3I9ci5vbnRpbWVvdXQ9bygiZXJyb3IiKSx2b2lkIDAhPT1yLm9uYWJvcnQ/ci5vbmFib3J0PWE6ci5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09ci5yZWFkeVN0YXRlJiZpZS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7byYmYSgpfSl9LG89bygiYWJvcnQiKTt0cnl7ci5zZW5kKGkuaGFzQ29udGVudCYmaS5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihvKXRocm93IGV9fSxhYm9ydDpmdW5jdGlvbigpe28mJm8oKX19fSksY2UuYWpheFByZWZpbHRlcihmdW5jdGlvbihlKXtlLmNyb3NzRG9tYWluJiYoZS5jb250ZW50cy5zY3JpcHQ9ITEpfSksY2UuYWpheFNldHVwKHthY2NlcHRzOntzY3JpcHQ6InRleHQvamF2YXNjcmlwdCwgYXBwbGljYXRpb24vamF2YXNjcmlwdCwgYXBwbGljYXRpb24vZWNtYXNjcmlwdCwgYXBwbGljYXRpb24veC1lY21hc2NyaXB0In0sY29udGVudHM6e3NjcmlwdDovXGIoPzpqYXZhfGVjbWEpc2NyaXB0XGIvfSxjb252ZXJ0ZXJzOnsidGV4dCBzY3JpcHQiOmZ1bmN0aW9uKGUpe3JldHVybiBjZS5nbG9iYWxFdmFsKGUpLGV9fX0pLGNlLmFqYXhQcmVmaWx0ZXIoInNjcmlwdCIsZnVuY3Rpb24oZSl7dm9pZCAwPT09ZS5jYWNoZSYmKGUuY2FjaGU9ITEpLGUuY3Jvc3NEb21haW4mJihlLnR5cGU9IkdFVCIpfSksY2UuYWpheFRyYW5zcG9ydCgic2NyaXB0IixmdW5jdGlvbihuKXt2YXIgcixpO2lmKG4uY3Jvc3NEb21haW58fG4uc2NyaXB0QXR0cnMpcmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSx0KXtyPWNlKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcHRBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkIGVycm9yIixpPWZ1bmN0aW9uKGUpe3IucmVtb3ZlKCksaT1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80MDQ6MjAwLGUudHlwZSl9KSxDLmhlYWQuYXBwZW5kQ2hpbGQoclswXSl9LGFib3J0OmZ1bmN0aW9uKCl7aSYmaSgpfX19KTt2YXIgSnQsS3Q9W10sWnQ9Lyg9KVw/KD89JnwkKXxcP1w/LztjZS5hamF4U2V0dXAoe2pzb25wOiJjYWxsYmFjayIsanNvbnBDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPUt0LnBvcCgpfHxjZS5leHBhbmRvKyJfIitqdC5ndWlkKys7cmV0dXJuIHRoaXNbZV09ITAsZX19KSxjZS5hamF4UHJlZmlsdGVyKCJqc29uIGpzb25wIixmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9ITEhPT1lLmpzb25wJiYoWnQudGVzdChlLnVybCk/InVybCI6InN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT0oZS5jb250ZW50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiZadC50ZXN0KGUuZGF0YSkmJiJkYXRhIik7aWYoYXx8Impzb25wIj09PWUuZGF0YVR5cGVzWzBdKXJldHVybiByPWUuanNvbnBDYWxsYmFjaz12KGUuanNvbnBDYWxsYmFjayk/ZS5qc29ucENhbGxiYWNrKCk6ZS5qc29ucENhbGxiYWNrLGE/ZVthXT1lW2FdLnJlcGxhY2UoWnQsIiQxIityKTohMSE9PWUuanNvbnAmJihlLnVybCs9KEF0LnRlc3QoZS51cmwpPyImIjoiPyIpK2UuanNvbnArIj0iK3IpLGUuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdGlvbigpe3JldHVybiBvfHxjZS5lcnJvcihyKyIgd2FzIG5vdCBjYWxsZWQiKSxvWzBdfSxlLmRhdGFUeXBlc1swXT0ianNvbiIsaT1pZVtyXSxpZVtyXT1mdW5jdGlvbigpe289YXJndW1lbnRzfSxuLmFsd2F5cyhmdW5jdGlvbigpe3ZvaWQgMD09PWk/Y2UoaWUpLnJlbW92ZVByb3Aocik6aWVbcl09aSxlW3JdJiYoZS5qc29ucENhbGxiYWNrPXQuanNvbnBDYWxsYmFjayxLdC5wdXNoKHIpKSxvJiZ2KGkpJiZpKG9bMF0pLG89aT12b2lkIDB9KSwic2NyaXB0In0pLGxlLmNyZWF0ZUhUTUxEb2N1bWVudD0oKEp0PUMuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKS5ib2R5KS5pbm5lckhUTUw9Ijxmb3JtPjwvZm9ybT48Zm9ybT48L2Zvcm0+IiwyPT09SnQuY2hpbGROb2Rlcy5sZW5ndGgpLGNlLnBhcnNlSFRNTD1mdW5jdGlvbihlLHQsbil7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlP1tdOigiYm9vbGVhbiI9PXR5cGVvZiB0JiYobj10LHQ9ITEpLHR8fChsZS5jcmVhdGVIVE1MRG9jdW1lbnQ/KChyPSh0PUMuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCgiYmFzZSIpKS5ocmVmPUMubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQocikpOnQ9Qyksbz0hbiYmW10sKGk9dy5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KGlbMV0pXTooaT1BZShbZV0sdCxvKSxvJiZvLmxlbmd0aCYmY2UobykucmVtb3ZlKCksY2UubWVyZ2UoW10saS5jaGlsZE5vZGVzKSkpO3ZhciByLGksb30sY2UuZm4ubG9hZD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9dGhpcyxzPWUuaW5kZXhPZigiICIpO3JldHVybi0xPHMmJihyPVR0KGUuc2xpY2UocykpLGU9ZS5zbGljZSgwLHMpKSx2KHQpPyhuPXQsdD12b2lkIDApOnQmJiJvYmplY3QiPT10eXBlb2YgdCYmKGk9IlBPU1QiKSwwPGEubGVuZ3RoJiZjZS5hamF4KHt1cmw6ZSx0eXBlOml8fCJHRVQiLGRhdGFUeXBlOiJodG1sIixkYXRhOnR9KS5kb25lKGZ1bmN0aW9uKGUpe289YXJndW1lbnRzLGEuaHRtbChyP2NlKCI8ZGl2PiIpLmFwcGVuZChjZS5wYXJzZUhUTUwoZSkpLmZpbmQocik6ZSl9KS5hbHdheXMobiYmZnVuY3Rpb24oZSx0KXthLmVhY2goZnVuY3Rpb24oKXtuLmFwcGx5KHRoaXMsb3x8W2UucmVzcG9uc2VUZXh0LHQsZV0pfSl9KSx0aGlzfSxjZS5leHByLnBzZXVkb3MuYW5pbWF0ZWQ9ZnVuY3Rpb24odCl7cmV0dXJuIGNlLmdyZXAoY2UudGltZXJzLGZ1bmN0aW9uKGUpe3JldHVybiB0PT09ZS5lbGVtfSkubGVuZ3RofSxjZS5vZmZzZXQ9e3NldE9mZnNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGEscyx1LGw9Y2UuY3NzKGUsInBvc2l0aW9uIiksYz1jZShlKSxmPXt9OyJzdGF0aWMiPT09bCYmKGUuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIikscz1jLm9mZnNldCgpLG89Y2UuY3NzKGUsInRvcCIpLHU9Y2UuY3NzKGUsImxlZnQiKSwoImFic29sdXRlIj09PWx8fCJmaXhlZCI9PT1sKSYmLTE8KG8rdSkuaW5kZXhPZigiYXV0byIpPyhhPShyPWMucG9zaXRpb24oKSkudG9wLGk9ci5sZWZ0KTooYT1wYXJzZUZsb2F0KG8pfHwwLGk9cGFyc2VGbG9hdCh1KXx8MCksdih0KSYmKHQ9dC5jYWxsKGUsbixjZS5leHRlbmQoe30scykpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLXMudG9wK2EpLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtcy5sZWZ0K2kpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOmMuY3NzKGYpfX0sY2UuZm4uZXh0ZW5kKHtvZmZzZXQ6ZnVuY3Rpb24odCl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09dD90aGlzOnRoaXMuZWFjaChmdW5jdGlvbihlKXtjZS5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsdCxlKX0pO3ZhciBlLG4scj10aGlzWzBdO3JldHVybiByP3IuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGg/KGU9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXIub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyx7dG9wOmUudG9wK24ucGFnZVlPZmZzZXQsbGVmdDplLmxlZnQrbi5wYWdlWE9mZnNldH0pOnt0b3A6MCxsZWZ0OjB9OnZvaWQgMH0scG9zaXRpb246ZnVuY3Rpb24oKXtpZih0aGlzWzBdKXt2YXIgZSx0LG4scj10aGlzWzBdLGk9e3RvcDowLGxlZnQ6MH07aWYoImZpeGVkIj09PWNlLmNzcyhyLCJwb3NpdGlvbiIpKXQ9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle3Q9dGhpcy5vZmZzZXQoKSxuPXIub3duZXJEb2N1bWVudCxlPXIub2Zmc2V0UGFyZW50fHxuLmRvY3VtZW50RWxlbWVudDt3aGlsZShlJiYoZT09PW4uYm9keXx8ZT09PW4uZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1jZS5jc3MoZSwicG9zaXRpb24iKSllPWUucGFyZW50Tm9kZTtlJiZlIT09ciYmMT09PWUubm9kZVR5cGUmJigoaT1jZShlKS5vZmZzZXQoKSkudG9wKz1jZS5jc3MoZSwiYm9yZGVyVG9wV2lkdGgiLCEwKSxpLmxlZnQrPWNlLmNzcyhlLCJib3JkZXJMZWZ0V2lkdGgiLCEwKSl9cmV0dXJue3RvcDp0LnRvcC1pLnRvcC1jZS5jc3MociwibWFyZ2luVG9wIiwhMCksbGVmdDp0LmxlZnQtaS5sZWZ0LWNlLmNzcyhyLCJtYXJnaW5MZWZ0IiwhMCl9fX0sb2Zmc2V0UGFyZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vZmZzZXRQYXJlbnQ7d2hpbGUoZSYmInN0YXRpYyI9PT1jZS5jc3MoZSwicG9zaXRpb24iKSllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfHxKfSl9fSksY2UuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSxmdW5jdGlvbih0LGkpe3ZhciBvPSJwYWdlWU9mZnNldCI9PT1pO2NlLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKHkoZSk/cj1lOjk9PT1lLm5vZGVUeXBlJiYocj1lLmRlZmF1bHRWaWV3KSx2b2lkIDA9PT1uKXJldHVybiByP3JbaV06ZVt0XTtyP3Iuc2Nyb2xsVG8obz9yLnBhZ2VYT2Zmc2V0Om4sbz9uOnIucGFnZVlPZmZzZXQpOmVbdF09bn0sdCxlLGFyZ3VtZW50cy5sZW5ndGgpfX0pLGNlLmVhY2goWyJ0b3AiLCJsZWZ0Il0sZnVuY3Rpb24oZSxuKXtjZS5jc3NIb29rc1tuXT1ZZShsZS5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGUsdCl7aWYodClyZXR1cm4gdD1HZShlLG4pLF9lLnRlc3QodCk/Y2UoZSkucG9zaXRpb24oKVtuXSsicHgiOnR9KX0pLGNlLmVhY2goe0hlaWdodDoiaGVpZ2h0IixXaWR0aDoid2lkdGgifSxmdW5jdGlvbihhLHMpe2NlLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6cywiIjoib3V0ZXIiK2F9LGZ1bmN0aW9uKHIsbyl7Y2UuZm5bb109ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoJiYocnx8ImJvb2xlYW4iIT10eXBlb2YgZSksaT1yfHwoITA9PT1lfHwhMD09PXQ/Im1hcmdpbiI6ImJvcmRlciIpO3JldHVybiBNKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO3JldHVybiB5KGUpPzA9PT1vLmluZGV4T2YoIm91dGVyIik/ZVsiaW5uZXIiK2FdOmUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyJjbGllbnQiK2FdOjk9PT1lLm5vZGVUeXBlPyhyPWUuZG9jdW1lbnRFbGVtZW50LE1hdGgubWF4KGUuYm9keVsic2Nyb2xsIithXSxyWyJzY3JvbGwiK2FdLGUuYm9keVsib2Zmc2V0IithXSxyWyJvZmZzZXQiK2FdLHJbImNsaWVudCIrYV0pKTp2b2lkIDA9PT1uP2NlLmNzcyhlLHQsaSk6Y2Uuc3R5bGUoZSx0LG4saSl9LHMsbj9lOnZvaWQgMCxuKX19KX0pLGNlLmVhY2goWyJhamF4U3RhcnQiLCJhamF4U3RvcCIsImFqYXhDb21wbGV0ZSIsImFqYXhFcnJvciIsImFqYXhTdWNjZXNzIiwiYWpheFNlbmQiXSxmdW5jdGlvbihlLHQpe2NlLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9uKHQsZSl9fSksY2UuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdGhpcy5vbihlLG51bGwsdCxuKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub2ZmKGUsbnVsbCx0KX0sZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMub24odCxlLG4scil9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZXx8IioqIixuKX0saG92ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5vbigibW91c2VlbnRlciIsZSkub24oIm1vdXNlbGVhdmUiLHR8fGUpfX0pLGNlLmVhY2goImJsdXIgZm9jdXMgZm9jdXNpbiBmb2N1c291dCByZXNpemUgc2Nyb2xsIGNsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlIGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgY29udGV4dG1lbnUiLnNwbGl0KCIgIiksZnVuY3Rpb24oZSxuKXtjZS5mbltuXT1mdW5jdGlvbihlLHQpe3JldHVybiAwPGFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vbihuLG51bGwsZSx0KTp0aGlzLnRyaWdnZXIobil9fSk7dmFyIGVuPS9eW1xzXHVGRUZGXHhBMF0rfChbXlxzXHVGRUZGXHhBMF0pW1xzXHVGRUZGXHhBMF0rJC9nO2NlLnByb3h5PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKG49ZVt0XSx0PWUsZT1uKSx2KGUpKXJldHVybiByPWFlLmNhbGwoYXJndW1lbnRzLDIpLChpPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodHx8dGhpcyxyLmNvbmNhdChhZS5jYWxsKGFyZ3VtZW50cykpKX0pLmd1aWQ9ZS5ndWlkPWUuZ3VpZHx8Y2UuZ3VpZCsrLGl9LGNlLmhvbGRSZWFkeT1mdW5jdGlvbihlKXtlP2NlLnJlYWR5V2FpdCsrOmNlLnJlYWR5KCEwKX0sY2UuaXNBcnJheT1BcnJheS5pc0FycmF5LGNlLnBhcnNlSlNPTj1KU09OLnBhcnNlLGNlLm5vZGVOYW1lPWZlLGNlLmlzRnVuY3Rpb249dixjZS5pc1dpbmRvdz15LGNlLmNhbWVsQ2FzZT1GLGNlLnR5cGU9eCxjZS5ub3c9RGF0ZS5ub3csY2UuaXNOdW1lcmljPWZ1bmN0aW9uKGUpe3ZhciB0PWNlLnR5cGUoZSk7cmV0dXJuKCJudW1iZXIiPT09dHx8InN0cmluZyI9PT10KSYmIWlzTmFOKGUtcGFyc2VGbG9hdChlKSl9LGNlLnRyaW09ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/IiI6KGUrIiIpLnJlcGxhY2UoZW4sIiQxIil9LCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQmJmRlZmluZSgianF1ZXJ5IixbXSxmdW5jdGlvbigpe3JldHVybiBjZX0pO3ZhciB0bj1pZS5qUXVlcnksbm49aWUuJDtyZXR1cm4gY2Uubm9Db25mbGljdD1mdW5jdGlvbihlKXtyZXR1cm4gaWUuJD09PWNlJiYoaWUuJD1ubiksZSYmaWUualF1ZXJ5PT09Y2UmJihpZS5qUXVlcnk9dG4pLGNlfSwidW5kZWZpbmVkIj09dHlwZW9mIGUmJihpZS5qUXVlcnk9aWUuJD1jZSksY2V9KTs="}},"time_used":76,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":31,"receive":45,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/js/vendor/wow.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.827Z","timestamp":1785143153827,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/js/vendor/wow.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"1fdb-67b374e4-6a495ba3f6d1e088;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 2616\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":8155,"size_decoded":3072,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text, with very long lines (8099)","md5":"21fe90eedcbaafb4ed529d78418d30bd","sha1":"a16375b80220d315151f57bab2d4ee03c9fe1d20","sha256":"7852a22b72ead62cfc4a1b1ca32874b3e222f232a991a6d1432313572f534135","sha512":"30be63048c2b41ea7953dbc137b4c9047704196430cdf1995334092a41fe8c6336f1f109c195c5b47c857ee92838e4ff8d255d7ca8b8280793bc012d35b7fcdf","ssdeep":"192:tmEE6yAmu6qUxbU5C9nrr1GkEPIAeJ3KO4poIR:EEE/Amu6qUxVBxGkAI///IR","tlshash":"99f1baa5374a70718e9b6176c92f0202a532256e74d4c8ec747cddd4aeb4a29336bf3c","first_seen":"2023-03-07T01:37:53Z","last_seen":"2026-08-03T06:41:29.1323Z","times_seen":6598,"resource_available":true,"data":"LyohIFdPVyB3b3cuanMgLSB2MS4zLjAgLSAyMDE2LTEwLTA0CiogaHR0cHM6Ly93b3dqcy51awoqIENvcHlyaWdodCAoYykgMjAxNiBUaG9tYXMgR3JhaW5nZXI7IExpY2Vuc2VkIE1JVCAqLyFmdW5jdGlvbihhLGIpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQpZGVmaW5lKFsibW9kdWxlIiwiZXhwb3J0cyJdLGIpO2Vsc2UgaWYoInVuZGVmaW5lZCIhPXR5cGVvZiBleHBvcnRzKWIobW9kdWxlLGV4cG9ydHMpO2Vsc2V7dmFyIGM9e2V4cG9ydHM6e319O2IoYyxjLmV4cG9ydHMpLGEuV09XPWMuZXhwb3J0c319KHRoaXMsZnVuY3Rpb24oYSxiKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYyhhLGIpe2lmKCEoYSBpbnN0YW5jZW9mIGIpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIGQoYSxiKXtyZXR1cm4gYi5pbmRleE9mKGEpPj0wfWZ1bmN0aW9uIGUoYSxiKXtmb3IodmFyIGMgaW4gYilpZihudWxsPT1hW2NdKXt2YXIgZD1iW2NdO2FbY109ZH1yZXR1cm4gYX1mdW5jdGlvbiBmKGEpe3JldHVybi9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxJRU1vYmlsZXxPcGVyYSBNaW5pL2kudGVzdChhKX1mdW5jdGlvbiBnKGEpe3ZhciBiPWFyZ3VtZW50cy5sZW5ndGg8PTF8fHZvaWQgMD09PWFyZ3VtZW50c1sxXT8hMTphcmd1bWVudHNbMV0sYz1hcmd1bWVudHMubGVuZ3RoPD0yfHx2b2lkIDA9PT1hcmd1bWVudHNbMl0/ITE6YXJndW1lbnRzWzJdLGQ9YXJndW1lbnRzLmxlbmd0aDw9M3x8dm9pZCAwPT09YXJndW1lbnRzWzNdP251bGw6YXJndW1lbnRzWzNdLGU9dm9pZCAwO3JldHVybiBudWxsIT1kb2N1bWVudC5jcmVhdGVFdmVudD8oZT1kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxlLmluaXRDdXN0b21FdmVudChhLGIsYyxkKSk6bnVsbCE9ZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3Q/KGU9ZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3QoKSxlLmV2ZW50VHlwZT1hKTplLmV2ZW50TmFtZT1hLGV9ZnVuY3Rpb24gaChhLGIpe251bGwhPWEuZGlzcGF0Y2hFdmVudD9hLmRpc3BhdGNoRXZlbnQoYik6YiBpbihudWxsIT1hKT9hW2JdKCk6Im9uIitiIGluKG51bGwhPWEpJiZhWyJvbiIrYl0oKX1mdW5jdGlvbiBpKGEsYixjKXtudWxsIT1hLmFkZEV2ZW50TGlzdGVuZXI/YS5hZGRFdmVudExpc3RlbmVyKGIsYywhMSk6bnVsbCE9YS5hdHRhY2hFdmVudD9hLmF0dGFjaEV2ZW50KCJvbiIrYixjKTphW2JdPWN9ZnVuY3Rpb24gaihhLGIsYyl7bnVsbCE9YS5yZW1vdmVFdmVudExpc3RlbmVyP2EucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpOm51bGwhPWEuZGV0YWNoRXZlbnQ/YS5kZXRhY2hFdmVudCgib24iK2IsYyk6ZGVsZXRlIGFbYl19ZnVuY3Rpb24gaygpe3JldHVybiJpbm5lckhlaWdodCJpbiB3aW5kb3c/d2luZG93LmlubmVySGVpZ2h0OmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR9T2JqZWN0LmRlZmluZVByb3BlcnR5KGIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBsLG0sbj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTtkLmVudW1lcmFibGU9ZC5lbnVtZXJhYmxlfHwhMSxkLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gZCYmKGQud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLGQua2V5LGQpfX1yZXR1cm4gZnVuY3Rpb24oYixjLGQpe3JldHVybiBjJiZhKGIucHJvdG90eXBlLGMpLGQmJmEoYixkKSxifX0oKSxvPXdpbmRvdy5XZWFrTWFwfHx3aW5kb3cuTW96V2Vha01hcHx8ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7Yyh0aGlzLGEpLHRoaXMua2V5cz1bXSx0aGlzLnZhbHVlcz1bXX1yZXR1cm4gbihhLFt7a2V5OiJnZXQiLHZhbHVlOmZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8dGhpcy5rZXlzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMua2V5c1tiXTtpZihjPT09YSlyZXR1cm4gdGhpcy52YWx1ZXNbYl19fX0se2tleToic2V0Iix2YWx1ZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5rZXlzLmxlbmd0aDtjKyspe3ZhciBkPXRoaXMua2V5c1tjXTtpZihkPT09YSlyZXR1cm4gdGhpcy52YWx1ZXNbY109Yix0aGlzfXJldHVybiB0aGlzLmtleXMucHVzaChhKSx0aGlzLnZhbHVlcy5wdXNoKGIpLHRoaXN9fV0pLGF9KCkscD13aW5kb3cuTXV0YXRpb25PYnNlcnZlcnx8d2luZG93LldlYmtpdE11dGF0aW9uT2JzZXJ2ZXJ8fHdpbmRvdy5Nb3pNdXRhdGlvbk9ic2VydmVyfHwobT1sPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe2ModGhpcyxhKSwidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUmJm51bGwhPT1jb25zb2xlJiYoY29uc29sZS53YXJuKCJNdXRhdGlvbk9ic2VydmVyIGlzIG5vdCBzdXBwb3J0ZWQgYnkgeW91ciBicm93c2VyLiIpLGNvbnNvbGUud2FybigiV09XLmpzIGNhbm5vdCBkZXRlY3QgZG9tIG11dGF0aW9ucywgcGxlYXNlIGNhbGwgLnN5bmMoKSBhZnRlciBsb2FkaW5nIG5ldyBjb250ZW50LiIpKX1yZXR1cm4gbihhLFt7a2V5OiJvYnNlcnZlIix2YWx1ZTpmdW5jdGlvbigpe319XSksYX0oKSxsLm5vdFN1cHBvcnRlZD0hMCxtKSxxPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlfHxmdW5jdGlvbihhKXt2YXIgYj0vKFwtKFthLXpdKXsxfSkvZztyZXR1cm57Z2V0UHJvcGVydHlWYWx1ZTpmdW5jdGlvbihjKXsiZmxvYXQiPT09YyYmKGM9InN0eWxlRmxvYXQiKSxiLnRlc3QoYykmJmMucmVwbGFjZShiLGZ1bmN0aW9uKGEsYil7cmV0dXJuIGIudG9VcHBlckNhc2UoKX0pO3ZhciBkPWEuY3VycmVudFN0eWxlO3JldHVybihudWxsIT1kP2RbY106dm9pZCAwKXx8bnVsbH19fSxyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3ZhciBiPWFyZ3VtZW50cy5sZW5ndGg8PTB8fHZvaWQgMD09PWFyZ3VtZW50c1swXT97fTphcmd1bWVudHNbMF07Yyh0aGlzLGEpLHRoaXMuZGVmYXVsdHM9e2JveENsYXNzOiJ3b3ciLGFuaW1hdGVDbGFzczoiYW5pbWF0ZWQiLG9mZnNldDowLG1vYmlsZTohMCxsaXZlOiEwLGNhbGxiYWNrOm51bGwsc2Nyb2xsQ29udGFpbmVyOm51bGwscmVzZXRBbmltYXRpb246ITB9LHRoaXMuYW5pbWF0ZT1mdW5jdGlvbigpe3JldHVybiJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiaW4gd2luZG93P2Z1bmN0aW9uKGEpe3JldHVybiB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGEpfTpmdW5jdGlvbihhKXtyZXR1cm4gYSgpfX0oKSx0aGlzLnZlbmRvcnM9WyJtb3oiLCJ3ZWJraXQiXSx0aGlzLnN0YXJ0PXRoaXMuc3RhcnQuYmluZCh0aGlzKSx0aGlzLnJlc2V0QW5pbWF0aW9uPXRoaXMucmVzZXRBbmltYXRpb24uYmluZCh0aGlzKSx0aGlzLnNjcm9sbEhhbmRsZXI9dGhpcy5zY3JvbGxIYW5kbGVyLmJpbmQodGhpcyksdGhpcy5zY3JvbGxDYWxsYmFjaz10aGlzLnNjcm9sbENhbGxiYWNrLmJpbmQodGhpcyksdGhpcy5zY3JvbGxlZD0hMCx0aGlzLmNvbmZpZz1lKGIsdGhpcy5kZWZhdWx0cyksbnVsbCE9Yi5zY3JvbGxDb250YWluZXImJih0aGlzLmNvbmZpZy5zY3JvbGxDb250YWluZXI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihiLnNjcm9sbENvbnRhaW5lcikpLHRoaXMuYW5pbWF0aW9uTmFtZUNhY2hlPW5ldyBvLHRoaXMud293RXZlbnQ9Zyh0aGlzLmNvbmZpZy5ib3hDbGFzcyl9cmV0dXJuIG4oYSxbe2tleToiaW5pdCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQ9d2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxkKGRvY3VtZW50LnJlYWR5U3RhdGUsWyJpbnRlcmFjdGl2ZSIsImNvbXBsZXRlIl0pP3RoaXMuc3RhcnQoKTppKGRvY3VtZW50LCJET01Db250ZW50TG9hZGVkIix0aGlzLnN0YXJ0KSx0aGlzLmZpbmlzaGVkPVtdfX0se2tleToic3RhcnQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIGE9dGhpcztpZih0aGlzLnN0b3BwZWQ9ITEsdGhpcy5ib3hlcz1bXS5zbGljZS5jYWxsKHRoaXMuZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIit0aGlzLmNvbmZpZy5ib3hDbGFzcykpLHRoaXMuYWxsPXRoaXMuYm94ZXMuc2xpY2UoMCksdGhpcy5ib3hlcy5sZW5ndGgpaWYodGhpcy5kaXNhYmxlZCgpKXRoaXMucmVzZXRTdHlsZSgpO2Vsc2UgZm9yKHZhciBiPTA7Yjx0aGlzLmJveGVzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMuYm94ZXNbYl07dGhpcy5hcHBseVN0eWxlKGMsITApfWlmKHRoaXMuZGlzYWJsZWQoKXx8KGkodGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyfHx3aW5kb3csInNjcm9sbCIsdGhpcy5zY3JvbGxIYW5kbGVyKSxpKHdpbmRvdywicmVzaXplIix0aGlzLnNjcm9sbEhhbmRsZXIpLHRoaXMuaW50ZXJ2YWw9c2V0SW50ZXJ2YWwodGhpcy5zY3JvbGxDYWxsYmFjayw1MCkpLHRoaXMuY29uZmlnLmxpdmUpe3ZhciBkPW5ldyBwKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7YysrKWZvcih2YXIgZD1iW2NdLGU9MDtlPGQuYWRkZWROb2Rlcy5sZW5ndGg7ZSsrKXt2YXIgZj1kLmFkZGVkTm9kZXNbZV07YS5kb1N5bmMoZil9fSk7ZC5vYnNlcnZlKGRvY3VtZW50LmJvZHkse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSl9fX0se2tleToic3RvcCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLnN0b3BwZWQ9ITAsaih0aGlzLmNvbmZpZy5zY3JvbGxDb250YWluZXJ8fHdpbmRvdywic2Nyb2xsIix0aGlzLnNjcm9sbEhhbmRsZXIpLGood2luZG93LCJyZXNpemUiLHRoaXMuc2Nyb2xsSGFuZGxlciksbnVsbCE9dGhpcy5pbnRlcnZhbCYmY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKX19LHtrZXk6InN5bmMiLHZhbHVlOmZ1bmN0aW9uKCl7cC5ub3RTdXBwb3J0ZWQmJnRoaXMuZG9TeW5jKHRoaXMuZWxlbWVudCl9fSx7a2V5OiJkb1N5bmMiLHZhbHVlOmZ1bmN0aW9uKGEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgYSYmbnVsbCE9PWF8fChhPXRoaXMuZWxlbWVudCksMT09PWEubm9kZVR5cGUpe2E9YS5wYXJlbnROb2RlfHxhO2Zvcih2YXIgYj1hLnF1ZXJ5U2VsZWN0b3JBbGwoIi4iK3RoaXMuY29uZmlnLmJveENsYXNzKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBlPWJbY107ZChlLHRoaXMuYWxsKXx8KHRoaXMuYm94ZXMucHVzaChlKSx0aGlzLmFsbC5wdXNoKGUpLHRoaXMuc3RvcHBlZHx8dGhpcy5kaXNhYmxlZCgpP3RoaXMucmVzZXRTdHlsZSgpOnRoaXMuYXBwbHlTdHlsZShlLCEwKSx0aGlzLnNjcm9sbGVkPSEwKX19fX0se2tleToic2hvdyIsdmFsdWU6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuYXBwbHlTdHlsZShhKSxhLmNsYXNzTmFtZT1hLmNsYXNzTmFtZSsiICIrdGhpcy5jb25maWcuYW5pbWF0ZUNsYXNzLG51bGwhPXRoaXMuY29uZmlnLmNhbGxiYWNrJiZ0aGlzLmNvbmZpZy5jYWxsYmFjayhhKSxoKGEsdGhpcy53b3dFdmVudCksdGhpcy5jb25maWcucmVzZXRBbmltYXRpb24mJihpKGEsImFuaW1hdGlvbmVuZCIsdGhpcy5yZXNldEFuaW1hdGlvbiksaShhLCJvYW5pbWF0aW9uZW5kIix0aGlzLnJlc2V0QW5pbWF0aW9uKSxpKGEsIndlYmtpdEFuaW1hdGlvbkVuZCIsdGhpcy5yZXNldEFuaW1hdGlvbiksaShhLCJNU0FuaW1hdGlvbkVuZCIsdGhpcy5yZXNldEFuaW1hdGlvbikpLGF9fSx7a2V5OiJhcHBseVN0eWxlIix2YWx1ZTpmdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMsZD1hLmdldEF0dHJpYnV0ZSgiZGF0YS13b3ctZHVyYXRpb24iKSxlPWEuZ2V0QXR0cmlidXRlKCJkYXRhLXdvdy1kZWxheSIpLGY9YS5nZXRBdHRyaWJ1dGUoImRhdGEtd293LWl0ZXJhdGlvbiIpO3JldHVybiB0aGlzLmFuaW1hdGUoZnVuY3Rpb24oKXtyZXR1cm4gYy5jdXN0b21TdHlsZShhLGIsZCxlLGYpfSl9fSx7a2V5OiJyZXNldFN0eWxlIix2YWx1ZTpmdW5jdGlvbigpe2Zvcih2YXIgYT0wO2E8dGhpcy5ib3hlcy5sZW5ndGg7YSsrKXt2YXIgYj10aGlzLmJveGVzW2FdO2Iuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSJ9fX0se2tleToicmVzZXRBbmltYXRpb24iLHZhbHVlOmZ1bmN0aW9uKGEpe2lmKGEudHlwZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImFuaW1hdGlvbmVuZCIpPj0wKXt2YXIgYj1hLnRhcmdldHx8YS5zcmNFbGVtZW50O2IuY2xhc3NOYW1lPWIuY2xhc3NOYW1lLnJlcGxhY2UodGhpcy5jb25maWcuYW5pbWF0ZUNsYXNzLCIiKS50cmltKCl9fX0se2tleToiY3VzdG9tU3R5bGUiLHZhbHVlOmZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIGImJnRoaXMuY2FjaGVBbmltYXRpb25OYW1lKGEpLGEuc3R5bGUudmlzaWJpbGl0eT1iPyJoaWRkZW4iOiJ2aXNpYmxlIixjJiZ0aGlzLnZlbmRvclNldChhLnN0eWxlLHthbmltYXRpb25EdXJhdGlvbjpjfSksZCYmdGhpcy52ZW5kb3JTZXQoYS5zdHlsZSx7YW5pbWF0aW9uRGVsYXk6ZH0pLGUmJnRoaXMudmVuZG9yU2V0KGEuc3R5bGUse2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OmV9KSx0aGlzLnZlbmRvclNldChhLnN0eWxlLHthbmltYXRpb25OYW1lOmI/Im5vbmUiOnRoaXMuY2FjaGVkQW5pbWF0aW9uTmFtZShhKX0pLGF9fSx7a2V5OiJ2ZW5kb3JTZXQiLHZhbHVlOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjIGluIGIpaWYoYi5oYXNPd25Qcm9wZXJ0eShjKSl7dmFyIGQ9YltjXTthWyIiK2NdPWQ7Zm9yKHZhciBlPTA7ZTx0aGlzLnZlbmRvcnMubGVuZ3RoO2UrKyl7dmFyIGY9dGhpcy52ZW5kb3JzW2VdO2FbIiIrZitjLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Muc3Vic3RyKDEpXT1kfX19fSx7a2V5OiJ2ZW5kb3JDU1MiLHZhbHVlOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXEoYSksZD1jLmdldFByb3BlcnR5Q1NTVmFsdWUoYiksZT0wO2U8dGhpcy52ZW5kb3JzLmxlbmd0aDtlKyspe3ZhciBmPXRoaXMudmVuZG9yc1tlXTtkPWR8fGMuZ2V0UHJvcGVydHlDU1NWYWx1ZSgiLSIrZisiLSIrYil9cmV0dXJuIGR9fSx7a2V5OiJhbmltYXRpb25OYW1lIix2YWx1ZTpmdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7dHJ5e2I9dGhpcy52ZW5kb3JDU1MoYSwiYW5pbWF0aW9uLW5hbWUiKS5jc3NUZXh0fWNhdGNoKGMpe2I9cShhKS5nZXRQcm9wZXJ0eVZhbHVlKCJhbmltYXRpb24tbmFtZSIpfXJldHVybiJub25lIj09PWI/IiI6Yn19LHtrZXk6ImNhY2hlQW5pbWF0aW9uTmFtZSIsdmFsdWU6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuYW5pbWF0aW9uTmFtZUNhY2hlLnNldChhLHRoaXMuYW5pbWF0aW9uTmFtZShhKSl9fSx7a2V5OiJjYWNoZWRBbmltYXRpb25OYW1lIix2YWx1ZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hbmltYXRpb25OYW1lQ2FjaGUuZ2V0KGEpfX0se2tleToic2Nyb2xsSGFuZGxlciIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLnNjcm9sbGVkPSEwfX0se2tleToic2Nyb2xsQ2FsbGJhY2siLHZhbHVlOmZ1bmN0aW9uKCl7aWYodGhpcy5zY3JvbGxlZCl7dGhpcy5zY3JvbGxlZD0hMTtmb3IodmFyIGE9W10sYj0wO2I8dGhpcy5ib3hlcy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmJveGVzW2JdO2lmKGMpe2lmKHRoaXMuaXNWaXNpYmxlKGMpKXt0aGlzLnNob3coYyk7Y29udGludWV9YS5wdXNoKGMpfX10aGlzLmJveGVzPWEsdGhpcy5ib3hlcy5sZW5ndGh8fHRoaXMuY29uZmlnLmxpdmV8fHRoaXMuc3RvcCgpfX19LHtrZXk6Im9mZnNldFRvcCIsdmFsdWU6ZnVuY3Rpb24oYSl7Zm9yKDt2b2lkIDA9PT1hLm9mZnNldFRvcDspYT1hLnBhcmVudE5vZGU7Zm9yKHZhciBiPWEub2Zmc2V0VG9wO2Eub2Zmc2V0UGFyZW50OylhPWEub2Zmc2V0UGFyZW50LGIrPWEub2Zmc2V0VG9wO3JldHVybiBifX0se2tleToiaXNWaXNpYmxlIix2YWx1ZTpmdW5jdGlvbihhKXt2YXIgYj1hLmdldEF0dHJpYnV0ZSgiZGF0YS13b3ctb2Zmc2V0Iil8fHRoaXMuY29uZmlnLm9mZnNldCxjPXRoaXMuY29uZmlnLnNjcm9sbENvbnRhaW5lciYmdGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyLnNjcm9sbFRvcHx8d2luZG93LnBhZ2VZT2Zmc2V0LGQ9YytNYXRoLm1pbih0aGlzLmVsZW1lbnQuY2xpZW50SGVpZ2h0LGsoKSktYixlPXRoaXMub2Zmc2V0VG9wKGEpLGY9ZSthLmNsaWVudEhlaWdodDtyZXR1cm4gZD49ZSYmZj49Y319LHtrZXk6ImRpc2FibGVkIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiF0aGlzLmNvbmZpZy5tb2JpbGUmJmYobmF2aWdhdG9yLnVzZXJBZ2VudCl9fV0pLGF9KCk7YlsiZGVmYXVsdCJdPXIsYS5leHBvcnRzPWJbImRlZmF1bHQiXX0pOw=="}},"time_used":71,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":70,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/js/main.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.828Z","timestamp":1785143153828,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/js/main.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"1059-67b374e4-37a58eb0bf060ad3;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 1172\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":4185,"size_decoded":1628,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"739e42cd4bb64b01b9cb6025a6644e43","sha1":"49f26a687bca39a1393ef17f4a59928d7b415777","sha256":"9d6dece0592184e2e73f681bbadffddea6b6961b20e92776fec820b059e6faf3","sha512":"d37678e10d8f1fb935e91068b620bc0de1e53b37fc265c7dea394aae8811b6a6a9eaa150dfb0bf5667a9817420f27ea5f6797640b3f45293eb34ba4342308d80","ssdeep":"96:aGlxOyNNYbwY1Y0YXYqEzCEgYYYN9f7VOfuU:B9NErT8fl","tlshash":"77812112f10c32bec0ef23a4d03ef706aa6cc035d61345b5fcad44a88499f9e27919e9","first_seen":"2025-12-19T04:10:19.015247Z","last_seen":"2026-07-30T06:02:32.58888Z","times_seen":12,"resource_available":true,"data":"KGZ1bmN0aW9uICgkKSB7DQoJInVzZSBzdHJpY3QiOw0KCSQod2luZG93KS5vbigibG9hZCIsIGZ1bmN0aW9uICgpIHsNCgkJLy9wcmVsb2FkZXINCgkJJCgiLnByZWxvYWRlciIpDQoJCQkuZGVsYXkoMzAwKQ0KCQkJLmFuaW1hdGUoDQoJCQkJew0KCQkJCQlvcGFjaXR5OiAiMCIsDQoJCQkJfSwNCgkJCQkzMDAsDQoJCQkJZnVuY3Rpb24gKCkgew0KCQkJCQkkKCIucHJlbG9hZGVyIikuY3NzKCJkaXNwbGF5IiwgIm5vbmUiKTsNCgkJCQl9DQoJCQkpOw0KCQl2YXIgaW1nID0gJCgiLmJnX2ltZyIpOw0KCQlpbWcuY3NzKCJiYWNrZ3JvdW5kLWltYWdlIiwgZnVuY3Rpb24gKCkgew0KCQkJdmFyIGJnID0gInVybCgiICsgJCh0aGlzKS5kYXRhKCJiYWNrZ3JvdW5kIikgKyAiKSI7DQoJCQlyZXR1cm4gYmc7DQoJCX0pOw0KCX0pOw0KCS8vICQoJ3NlbGVjdCcpLm5pY2VTZWxlY3QoKTsNCgkvLyBtb2JpbGUgbWVudSBqcw0KCSQoIi5uYXZiYXItY29sbGFwc2U+dWw+bGk+YSwgLm5hdmJhci1jb2xsYXBzZSB1bC5zdWItbWVudT5saT5hIikub24oImNsaWNrIiwgZnVuY3Rpb24gKCkgew0KCQljb25zdCBlbGVtZW50ID0gJCh0aGlzKS5wYXJlbnQoImxpIik7DQoJCWlmIChlbGVtZW50Lmhhc0NsYXNzKCJvcGVuIikpIHsNCgkJCWVsZW1lbnQucmVtb3ZlQ2xhc3MoIm9wZW4iKTsNCgkJCWVsZW1lbnQuZmluZCgibGkiKS5yZW1vdmVDbGFzcygib3BlbiIpOw0KCQl9IGVsc2Ugew0KCQkJZWxlbWVudC5hZGRDbGFzcygib3BlbiIpOw0KCQkJZWxlbWVudC5zaWJsaW5ncygibGkiKS5yZW1vdmVDbGFzcygib3BlbiIpOw0KCQkJZWxlbWVudC5zaWJsaW5ncygibGkiKS5maW5kKCJsaSIpLnJlbW92ZUNsYXNzKCJvcGVuIik7DQoJCX0NCgl9KTsNCgkvLyBoZWFkZXItZml4ZWQNCgl2YXIgZml4ZWRfdG9wID0gJCgiLmhlYWRlci1zZWN0aW9uIik7DQoJJCh3aW5kb3cpLm9uKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQoJCWlmICgkKHdpbmRvdykuc2Nyb2xsVG9wKCkgPiAzMDApIHsNCgkJCWZpeGVkX3RvcC5hZGRDbGFzcygiYW5pbWF0ZWQgZmFkZUluRG93biBoZWFkZXItZml4ZWQiKTsNCgkJfSBlbHNlIHsNCgkJCWZpeGVkX3RvcC5yZW1vdmVDbGFzcygiYW5pbWF0ZWQgZmFkZUluRG93biBoZWFkZXItZml4ZWQiKTsNCgkJfQ0KCX0pOw0KCSQoIi5oZWFkZXItc2VhcmNoLWJ0biIpLm9uKCJjbGljayIsIGZ1bmN0aW9uICgpIHsNCgkJLy8kKCIuaGVhZGVyLXRvcC1zZWFyY2gtYXJlYSIpLnRvZ2dsZUNsYXNzKCJvcGVuIik7DQoJCWlmICgkKHRoaXMpLmhhc0NsYXNzKCJ0b2dnbGUtY2xvc2UiKSkgew0KCQkJJCh0aGlzKS5yZW1vdmVDbGFzcygidG9nZ2xlLWNsb3NlIikuYWRkQ2xhc3MoInRvZ2dsZS1vcGVuIik7DQoJCQkkKCIuc2VhcmNoLWZvcm0tYXJlYSIpLmFkZENsYXNzKCJvcGVuIik7DQoJCX0gZWxzZSB7DQoJCQkkKHRoaXMpLnJlbW92ZUNsYXNzKCJ0b2dnbGUtb3BlbiIpLmFkZENsYXNzKCJ0b2dnbGUtY2xvc2UiKTsNCgkJCSQoIi5zZWFyY2gtZm9ybS1hcmVhIikucmVtb3ZlQ2xhc3MoIm9wZW4iKTsNCgkJfQ0KCX0pOw0KCS8vY2xvc2Ugd2hlbiBjbGljayBvZmYgb2YgY29udGFpbmVyDQoJJChkb2N1bWVudCkub24oImNsaWNrIHRvdWNoc3RhcnQiLCBmdW5jdGlvbiAoZSkgew0KCQlpZiAoISQoZS50YXJnZXQpLmlzKCIuaGVhZGVyLXNlYXJjaC1idG4sIC5oZWFkZXItc2VhcmNoLWJ0biAqLCAuc2VhcmNoLWZvcm0tYXJlYSwgLnNlYXJjaC1mb3JtLWFyZWEgKiIpKSB7DQoJCQkkKCIuc2VhcmNoLWZvcm0tYXJlYSIpLnJlbW92ZUNsYXNzKCJvcGVuIik7DQoJCQkkKCIuaGVhZGVyLXNlYXJjaC1idG4iKS5hZGRDbGFzcygidG9nZ2xlLWNsb3NlIik7DQoJCX0NCgl9KTsNCgkvLyBTaG93IG9yIGhpZGUgdGhlIHN0aWNreSBmb290ZXIgYnV0dG9uDQoJJCh3aW5kb3cpLm9uKCJzY3JvbGwiLCBmdW5jdGlvbiAoKSB7DQoJCWlmICgkKHRoaXMpLnNjcm9sbFRvcCgpID4gMjAwKSB7DQoJCQkkKCIuc2Nyb2xsLXRvLXRvcCIpLmZhZGVJbigyMDApOw0KCQl9IGVsc2Ugew0KCQkJJCgiLnNjcm9sbC10by10b3AiKS5mYWRlT3V0KDIwMCk7DQoJCX0NCgl9KTsNCgkvLyBBbmltYXRlIHRoZSBzY3JvbGwgdG8gdG9wDQoJJCgiLnNjcm9sbC10by10b3AiKS5vbigiY2xpY2siLCBmdW5jdGlvbiAoZXZlbnQpIHsNCgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsNCgkJJCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoeyBzY3JvbGxUb3A6IDAgfSwgMzAwKTsNCgl9KTsNCgkNCgkkKCIuY3VycmVuY3ktc2xpZGVyIikuc2xpY2soew0KCQlkb3RzOiBmYWxzZSwNCgkJaW5maW5pdGU6IGZhbHNlLA0KCQlhdXRvcGxheTogdHJ1ZSwNCgkJc2xpZGVzVG9TaG93OiA0LA0KCQlhcnJvd3M6IGZhbHNlLA0KCQlyZXNwb25zaXZlOiBbDQoJCQl7DQoJCQkJYnJlYWtwb2ludDogMTE5OSwNCgkJCQlzZXR0aW5nczogew0KCQkJCQlzbGlkZXNUb1Nob3c6IDMsDQoJCQkJfSwNCgkJCX0sDQoJCQl7DQoJCQkJYnJlYWtwb2ludDogOTkxLA0KCQkJCXNldHRpbmdzOiB7DQoJCQkJCXNsaWRlc1RvU2hvdzogNSwNCgkJCQl9LA0KCQkJfSwNCgkJCXsNCgkJCQlicmVha3BvaW50OiA3NjcsDQoJCQkJc2V0dGluZ3M6IHsNCgkJCQkJc2xpZGVzVG9TaG93OiAzLA0KCQkJCX0sDQoJCQl9LA0KCQkJew0KCQkJCWJyZWFrcG9pbnQ6IDQ5OSwNCgkJCQlzZXR0aW5nczogew0KCQkJCQlzbGlkZXNUb1Nob3c6IDIsDQoJCQkJfSwNCgkJCX0sDQoJCV0sDQoJfSk7DQoJLy8gdGVzdGltb25haWwtc2xpZGVyDQoJJCgiLnRlc3RpbW9uYWlsLXNsaWRlciIpLnNsaWNrKHsNCgkJaW5maW5pdGU6IHRydWUsDQoJCXNsaWRlc1RvU2hvdzogMSwNCgkJc2xpZGVzVG9TY3JvbGw6IDEsDQoJCXNwZWVkOiA3MDAsDQoJCWFycm93czogdHJ1ZSwNCgkJbmV4dEFycm93OiAnPGRpdiBjbGFzcz0ibmV4dCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0Ij48L2k+PC9kaXY+JywNCgkJcHJldkFycm93OiAnPGRpdiBjbGFzcz0icHJldiI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLWxlZnQiPjwvaT48L2Rpdj4nLA0KCQlkb3RzOiBmYWxzZSwNCgkJYXV0b3BsYXk6IHRydWUsDQoJCW1vYmlsZUZpcnN0OiB0cnVlLA0KCQlyZXNwb25zaXZlOiBbDQoJCQl7DQoJCQkJYnJlYWtwb2ludDogMTE5OSwNCgkJCQlzZXR0aW5nczogew0KCQkJCQlzbGlkZXNUb1Nob3c6IDEsDQoJCQkJfSwNCgkJCX0sDQoJCQl7DQoJCQkJYnJlYWtwb2ludDogMCwNCgkJCQlzZXR0aW5nczogew0KCQkJCQlzbGlkZXNUb1Nob3c6IDEsDQoJCQkJfSwNCgkJCX0sDQoJCV0sDQoJfSk7DQoJLy8gZGFzaGJvYXJkIHNpZGUgbWVudSBvcGVuICYgY2xvc2UganMNCglsZXQgZGFzaGJvYXJkU2lkZU1lbnUsIG9wZW5CdG4sIGNsb3NlQnRuOw0KCWRhc2hib2FyZFNpZGVNZW51ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnVzZXItc2lkZWJhciIpOw0KCW9wZW5CdG4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZGFzaGJvYXJkLXNpZGUtbWVudS1vcGVuIik7DQoJY2xvc2VCdG4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZGFzaGJvYXJkLXNpZGUtbWVudS1jbG9zZSIpOw0KCWlmIChvcGVuQnRuKSB7DQoJCW9wZW5CdG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiAoKSB7DQoJCQlkYXNoYm9hcmRTaWRlTWVudS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTsNCgkJfSk7DQoJfQ0KCWlmIChjbG9zZUJ0bikgew0KCQljbG9zZUJ0bi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uICgpIHsNCgkJCWRhc2hib2FyZFNpZGVNZW51LmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpOw0KCQl9KTsNCgl9DQoNCgkgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PVRvb2xUaXAgSnMgU3RhcnQ9PT09PT09PT09PT09PT09PT09PT0NCgkgY29uc3QgdG9vbHRpcFRyaWdnZXJMaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtYnMtdG9nZ2xlPSJ0b29sdGlwIl0nKQ0KCSBjb25zdCB0b29sdGlwTGlzdCA9IFsuLi50b29sdGlwVHJpZ2dlckxpc3RdLm1hcCh0b29sdGlwVHJpZ2dlckVsID0+IG5ldyBib290c3RyYXAuVG9vbHRpcCh0b29sdGlwVHJpZ2dlckVsKSkgIA0KCS8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT1Ub29sVGlwIEpzIEVuZD09PT09PT09PT09PT09PT09PT09PT09PQ0KDQp9KShqUXVlcnkpOw0K"}},"time_used":70,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":70,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-runtime.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.585Z","timestamp":1785143154585,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-runtime.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"581712668ae095b5d8f678a6ea34ae0c\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11055\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2c2af21a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":2306,"size_decoded":1762,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (2306), with no line terminators","md5":"581712668ae095b5d8f678a6ea34ae0c","sha1":"b25b29f31300f4d63e6dec685339e0bed3235e8f","sha256":"5107df35262814ad822e242e2f510be7dfa6b382f7a00211808dafe85bf77d3d","sha512":"b51bc3a2e92f0e472ba8e7a2f09bcbe35996175e6731e349f9c192f7b58fb320b6eaa7a3757a4363df8ac952c0ebdcab7b751c8ee96a17fbb319a579cc6d0706","ssdeep":"","tlshash":"134183d936e8f9b6834318e1043fa056f6353976097be8c0531dd4f5bc78849815afb6","first_seen":"2026-07-08T23:24:03.879117Z","last_seen":"2026-08-03T13:22:13.50472Z","times_seen":3137,"resource_available":true,"data":"IWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQodCl7Zm9yKHZhciBuLGEsaT10WzBdLGw9dFsxXSxjPXRbMl0scD0wLHM9W107cDxpLmxlbmd0aDtwKyspYT1pW3BdLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvLGEpJiZvW2FdJiZzLnB1c2gob1thXVswXSksb1thXT0wO2ZvcihuIGluIGwpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGwsbikmJihlW25dPWxbbl0pO2ZvcihmJiZmKHQpO3MubGVuZ3RoOylzLnNoaWZ0KCkoKTtyZXR1cm4gdS5wdXNoLmFwcGx5KHUsY3x8W10pLHIoKX1mdW5jdGlvbiByKCl7Zm9yKHZhciBlLHQ9MDt0PHUubGVuZ3RoO3QrKyl7Zm9yKHZhciByPXVbdF0sbj0hMCxpPTE7aTxyLmxlbmd0aDtpKyspe3ZhciBsPXJbaV07MCE9PW9bbF0mJihuPSExKX1uJiYodS5zcGxpY2UodC0tLDEpLGU9YShhLnM9clswXSkpfXJldHVybiBlfXZhciBuPXt9LG89e3J1bnRpbWU6MH0sdT1bXTtmdW5jdGlvbiBhKHQpe2lmKG5bdF0pcmV0dXJuIG5bdF0uZXhwb3J0czt2YXIgcj1uW3RdPXtpOnQsbDohMSxleHBvcnRzOnt9fTtyZXR1cm4gZVt0XS5jYWxsKHIuZXhwb3J0cyxyLHIuZXhwb3J0cyxhKSxyLmw9ITAsci5leHBvcnRzfWEuZT1mdW5jdGlvbihlKXt2YXIgdD1bXSxyPW9bZV07aWYoMCE9PXIpaWYocil0LnB1c2goclsyXSk7ZWxzZXt2YXIgbj1uZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxuKXtyPW9bZV09W3Qsbl19KSk7dC5wdXNoKHJbMl09bik7dmFyIHUsaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpLmNoYXJzZXQ9InV0Zi04IixpLnRpbWVvdXQ9MTIwLGEubmMmJmkuc2V0QXR0cmlidXRlKCJub25jZSIsYS5uYyksaS5zcmM9ZnVuY3Rpb24oZSl7cmV0dXJuIGEucCsianMvdHdrLSIrKHt9W2VdfHxlKSsiLmpzIn0oZSk7dmFyIGw9bmV3IEVycm9yO3U9ZnVuY3Rpb24odCl7aS5vbmVycm9yPWkub25sb2FkPW51bGwsY2xlYXJUaW1lb3V0KGMpO3ZhciByPW9bZV07aWYoMCE9PXIpe2lmKHIpe3ZhciBuPXQmJigibG9hZCI9PT10LnR5cGU/Im1pc3NpbmciOnQudHlwZSksdT10JiZ0LnRhcmdldCYmdC50YXJnZXQuc3JjO2wubWVzc2FnZT0iTG9hZGluZyBjaHVuayAiK2UrIiBmYWlsZWQuXG4oIituKyI6ICIrdSsiKSIsbC5uYW1lPSJDaHVua0xvYWRFcnJvciIsbC50eXBlPW4sbC5yZXF1ZXN0PXUsclsxXShsKX1vW2VdPXZvaWQgMH19O3ZhciBjPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dSh7dHlwZToidGltZW91dCIsdGFyZ2V0Oml9KX0pLDEyZTQpO2kub25lcnJvcj1pLm9ubG9hZD11LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoaSl9cmV0dXJuIFByb21pc2UuYWxsKHQpfSxhLm09ZSxhLmM9bixhLmQ9ZnVuY3Rpb24oZSx0LHIpe2EubyhlLHQpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOiEwLGdldDpyfSl9LGEucj1mdW5jdGlvbihlKXsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxhLnQ9ZnVuY3Rpb24oZSx0KXtpZigxJnQmJihlPWEoZSkpLDgmdClyZXR1cm4gZTtpZig0JnQmJiJvYmplY3QiPT10eXBlb2YgZSYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciByPU9iamVjdC5jcmVhdGUobnVsbCk7aWYoYS5yKHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTplfSksMiZ0JiYic3RyaW5nIiE9dHlwZW9mIGUpZm9yKHZhciBuIGluIGUpYS5kKHIsbixmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0uYmluZChudWxsLG4pKTtyZXR1cm4gcn0sYS5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlLmRlZmF1bHR9OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBhLmQodCwiYSIsdCksdH0sYS5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxhLnA9Imh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQvIixhLm9lPWZ1bmN0aW9uKGUpe3Rocm93IGNvbnNvbGUuZXJyb3IoZSksZX07dmFyIGk9d2luZG93LnRhd2tKc29ucD13aW5kb3cudGF3a0pzb25wfHxbXSxsPWkucHVzaC5iaW5kKGkpO2kucHVzaD10LGk9aS5zbGljZSgpO2Zvcih2YXIgYz0wO2M8aS5sZW5ndGg7YysrKXQoaVtjXSk7dmFyIGY9bDtyKCl9KFtdKTs="}},"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":"profx.io/assets/global/webfonts/fa-solid-900.woff2","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.956Z","timestamp":1785143153956,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/webfonts/fa-solid-900.woff2 HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/assets/global/css/all.min.css\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"26350-67b374e4-370954491396e262;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 156496\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":156496,"size_decoded":156896,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 156496, version 773.768","md5":"6c4eee562650e53cee32496bdfbe534b","sha1":"1aae708e3b94ee981b452a918d28ed037fbb5e18","sha256":"9fc85f3a4544ab0d570c7f8f9bbb88db8d92c359b2707580ea8b07c75673eae2","sha512":"ebcb5a2e2a908228f77ecd03b45491778cad73ddc39fa3a6334b129aaf9fa36c16c0307aeaad74d77f616b5b34aac52d91e9f4816945253dc9a826ddd71f4d12","ssdeep":"3072:OvM6gZMLmY8uGpjVnlooQ+GQs8jic0f/KkMdE:OU65LoP5QSsuic0f/cdE","tlshash":"8ce31200d620498d9978fd5b2a1fa1ffa7a939c95ed210bad3c30cb93257143bbc2556","first_seen":"2023-12-02T04:06:15Z","last_seen":"2026-08-03T11:37:11.785778Z","times_seen":49474,"resource_available":false,"data":"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"}},"time_used":42,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":28,"receive":14,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"va.tawk.to/v1/session/start","fqdn":"va.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.698Z","timestamp":1785143154698,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"POST /v1/session/start HTTP/1.1\r\nHost: va.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\r\nContent-Type: application/json; charset=utf-8\r\nContent-Length: 170\r\nOrigin: https://profx.io\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":"POST","post_data":{"size":170,"data":"{\"p\":\"67b4301f3812ff19107c7949\",\"w\":\"1ikbtnvah\",\"platform\":\"desktop\",\"tzo\":0,\"url\":\"https://profx.io/\",\"vss\":\"\",\"consent\":false,\"wss\":\"min\",\"uik\":\"lxfud_z--9ElcClQof2PD\"}"}},"response":{"raw":"HTTP/3 200 \r\nx-served-by: visitor-application-preemptive-v384\r\naccess-control-allow-origin: https://profx.io\r\naccess-control-allow-credentials: true\r\naccess-control-max-age: 3600\r\naccess-control-allow-methods: POST,OPTIONS\r\naccess-control-allow-headers: content-type,x-tawk-token\r\ncontent-type: application/json\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\npriority: u=4,i=?0\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\ncf-cache-status: DYNAMIC\r\nserver: cloudflare\r\ncf-ray: a21a7c2deb3c1a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":1030,"size_decoded":1400,"mime_type":"application/json","magic":"JSON text data","md5":"cfc3653820235e8330f16b6ced92289f","sha1":"f41ddd40febe021cfcf54fa4de851a5709953672","sha256":"6d8937e0c35d3f5bbdc340fb6d4fcfca1239b46daa907c592bcc0c32efe68e9e","sha512":"67b570e4ce45abf24e605384759213be2e10b3d6be272654e1a162cc37f14653dd4c77052c01c0728e12217e15bec96c0009f284bf9a10f00f6b5880172ce347","ssdeep":"","tlshash":"051132068b489d5aa937e78a469f6f5a0accb2a234445079e5e29c4638e467d01c34e3","first_seen":"2026-07-27T09:06:29.085725Z","last_seen":"2026-07-27T09:06:29.085725Z","times_seen":1,"resource_available":false,"data":"eyJvayI6dHJ1ZSwiZGF0YSI6eyJ1aWQiOnsiZG9tYWluIjoicHJvZnguaW8iLCJ1IjoiMS42QXQ5c3JxbWJ3U1BBbFJNMERiSFRGaVBhS20wOEhOc3pvRmVGblV5aVd0c2JXUlRVeVZYRHRLV0lyZ0NLcEdMZkpVQWxGUWplY3RQUHFiWXNuT2g4NW5kVVlDZnVNVEx4bmFYb3N6cGowS3BIanVrIiwidXYiOjN9LCJ2aWQiOiI2N2I0MzAxZjM4MTJmZjE5MTA3Yzc5NDktT3Jvak5QdFR4bTk2cU9VZDBJQzFEIiwidGtuIjoiZXlKaGJHY2lPaUpGVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0lzSW10cFpDSTZJblpwYzJsMGIzSXRZWEJ3YkdsallYUnBiMjR0YzJWeWRtVnlMVEl3TWpFd01qSWlmUS5leUp3YVdRaU9pSTJOMkkwTXpBeFpqTTRNVEptWmpFNU1UQTNZemM1TkRraUxDSjJhV1FpT2lJMk4ySTBNekF4WmpNNE1USm1aakU1TVRBM1l6YzVORGt0VDNKdmFrNVFkRlI0YlRrMmNVOVZaREJKUXpGRUlpd2ljMmxrSWpvaU5tRTJOekZtTnpOaE1EYzBPRGM0TlRjd1pqVm1ZekppSWl3aWFXRjBJam94TnpnMU1UUXpNVFUxTENKbGVIQWlPakUzT0RVeE5EUTVOVFVzSW1wMGFTSTZJbDlzTlhaSmVtdFphMlJTWTNZd1gxZFZWWGd5VENKOS4wcWJ4RThDQlhMMzRVN21NWnczUzNNWmFwZUp5YUFmOFdVM3VJSXpTQ1EzRjBiWXZKZEhORkN1MXlWdm5wUjMtVG03cG1VZm4tN1U1SXdETElIM253QSIsInRrbkV4cCI6MTgwMCwic2siOiI2YTY3MWY3M2EwNzQ4Nzg1NzBmNWZjMmIiLCJuIjoiVjE3ODUxNDMxNTQ5NDI2MjAiLCJlIjoiIiwidGUiOiIiLCJjaGlkIjoiNWZlMjZmMDAtODk5YS0xMWYxLThmZjUtY2ZjZTUxODkwMzRmIiwiYyI6W10sImN2ZXIiOjAsImN3IjoibWluIiwic2RvIjp0cnVlLCJkcHQiOiIiLCJ2c3MiOiJ2c2IxMzEudGF3ay50byIsInBjZnMiOmZhbHNlLCJiYmxjIjpmYWxzZSwibG1zdCI6MCwidHJhbnNmZXIiOm51bGwsInRyYW5zZmVyVmVyIjoxLCJjYyI6Ik5PIiwicmMiOiIwMyIsImFzdCI6Im9mZmxpbmUiLCJkcHRzdCI6W10sImFzdmVyIjoxMCwiZXd0IjowLCJzZXR0aW5nc1ZlcnNpb24iOiIyLTQtMCJ9fQ=="}},"time_used":462,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":462,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/assets/fonts/tawk-font-icon-3.woff?55755728=","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.492Z","timestamp":1785143155492,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/assets/fonts/tawk-font-icon-3.woff?55755728= HTTP/1.1\r\nHost: embed.tawk.to\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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/bubble-widget.css\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: font/woff\r\nserver-timing: cfExtPri\r\nlast-modified: Wed, 23 Apr 2025 10:39:13 GMT\r\netag: \"07d578c95ece55d04d46b095fa8ab50a\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11054\r\naccept-ranges: bytes\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c31dc261a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 93868\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":93868,"size_decoded":94440,"mime_type":"font/woff","magic":"Web Open Font Format, TrueType, length 93868, version 1.0","md5":"07d578c95ece55d04d46b095fa8ab50a","sha1":"2d7b26de9cdc4b40d467186de2073e3dd7804ae6","sha256":"4326543bece14c56ef8ba2534fdb356452cb0650bcded3521cb8b09a9b03bd12","sha512":"89124c4f86613c63f43940a6f1914c1eee5ed90129e6aaa2c16ce446fa10581d389f7c77a579da2270125bce585efa07bf4b3e0880d283795dba42ddd9c7b0cc","ssdeep":"1536:daI2Ltj6D4Han3AHZy92Nzi2tcw52LHqH:2N6E6nOM2Nzi2t55gK","tlshash":"b393e7171706ef8fd42589bb684280734de2e901672ee243398b4d15961eaf44ef87bf","first_seen":"2025-04-29T12:23:34.02726Z","last_seen":"2026-08-03T12:50:03.393851Z","times_seen":35418,"resource_available":false,"data":"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AAAAAAAAAAACAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAoAFAAeAQABegH2AuwD/ATOBTwF/AbyB0gHdAfIB/4INghuCKYI3gkWCY4KFgquDGANCg3eEJgRBBFmEdYS3hPKFEQUjBVQFhYXCBfmGNIZchomGqQa/BsgG0YbbBuSHGgdMB3+HqYfQB/aIO4h1CJOIwgj1iRWJTQmMibmKCwp4CpoKxQsLCz+LW4uWi+sMSgyAjLQNAg1LjXcNmY23DgAOLI5Njm8OpQ7CDuKO+A8NjywPTI9rD6uP6xACkCEQSxB0kJsQsJDFEOORCJE+kV8RcpGwkhSSJRJRkp4S7pMEExkTLpNEE3aTpxPtFA6USRSZFNqVRhV7lbIV4BYBFjKWk5bglxIXMhdel3cXtxf0mB0YShhuGJwYwhjuGRaZThmRmd8aOxpvGrsa5xsUm14bmBvcnDgcaBx/HJWcrhzLnOOdMh1gneEeBZ4qHome0R8GH0IfSp+Gn6EfxZ/roBSgPCBxoKAguiDNoP0hI6E/oWkh1yHwokAiUCJpopKi2SL1IxkjOaNTI2+jkqPCI/+kMiRipIgkt6TRJQUlKyVdpYIlrCXypimmT6ZqpnOmkyatJtEm6CcLJzMnWSd5J6kn0agbKEyojyjJKP6pNamFKbep9ioGqi6qYyqGqsiq4CsRK0YrbSuIq5mry6vcK+yr/SwYrDGsaKyOgABAAAA/wHvAAoAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADgAAAAEAAAAAAAIABwCfAAEAAAAAAAMADgBLAAEAAAAAAAQADgC0AAEAAAAAAAUACwAqAAEAAAAAAAYADgB1AAEAAAAAAAoAGgDeAAMAAQQJAAEAHAAOAAMAAQQJAAIADgCmAAMAAQQJAAMAHABZAAMAAQQJAAQAHADCAAMAAQQJAAUAFgA1AAMAAQQJAAYAHACDAAMAAQQJAAoANAD4dGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwdGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBudGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuUmVndWxhcgBSAGUAZwB1AGwAYQBydGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.jsdelivr.net/emojione/assets/png/1f44b.png?v=2.2.7","fqdn":"cdn.jsdelivr.net","domain":"jsdelivr.net","tld":"net"},"ip":{"addr":"151.101.193.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:57.561Z","timestamp":1785143157561,"http_version":"HTTP/3","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":"jsdelivr.net","organization":""},"issuer":{"commonName":"GlobalSign Atlas R3 DV TLS CA 2026 Q2","organization":"GlobalSign nv-sa"},"validity":{"start":"Wed, 20 May 2026 15:48:47 GMT","end":"Sat, 05 Dec 2026 14:48:47 GMT"},"fingerprint":{"sha1":"D4:05:C2:EC:C7:EE:2B:D0:08:68:0D:3D:33:77:48:78:43:E7:D1:E1","sha256":"ED:84:90:EE:71:BC:6B:5E:B3:D2:50:B0:23:3A:06:0D:E0:50:C6:B6:A9:09:36:E6:CE:FE:E8:66:89:EB:4E:C5"}}},"request":{"raw":"GET /emojione/assets/png/1f44b.png?v=2.2.7 HTTP/1.1\r\nHost: cdn.jsdelivr.net\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-length: 1311\r\naccess-control-allow-origin: *\r\naccess-control-expose-headers: *\r\ntiming-allow-origin: *\r\ncache-control: public, max-age=31536000\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncontent-type: image/png\r\netag: W/\"51f-Lhpf/5pVjttXKKAzYbc9FjP7pB4\"\r\naccept-ranges: bytes\r\ndate: Mon, 27 Jul 2026 09:05:57 GMT\r\nage: 2234616\r\nx-served-by: cache-fra-eddf8230174-FRA, cache-bma-essb1270031-BMA\r\nx-cache: HIT, HIT\r\nvary: Accept-Encoding\r\nalt-svc: h3=\":443\";ma=86400,h3-29=\":443\";ma=86400,h3-27=\":443\";ma=86400\r\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":1311,"size_decoded":1952,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"c146761c3af8335c09eff9b1cdecbe08","sha1":"2e1a5fff9a558edb5728a03361b73d1633fba41e","sha256":"d84e890fa93c018d8b78e3bff3f6252036aa7ead6e48b292c0b92b1cb5127371","sha512":"b99a6fcfe0c4f4884fec84ec4e9951fc23b246302d4eac2996f4b6df3e063543b640a99e083494633f946fd85a3b217e18356e6b46d6584dcbccd88215638950","ssdeep":"","tlshash":"f221c59314628da28e23c525ac24c5e0b2fb40fcd78f8ae24903feb552b530c99d478b","first_seen":"2023-05-15T15:27:55Z","last_seen":"2026-08-03T12:16:53.283115Z","times_seen":20938,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAA7VBMVEUAAADro1Lro1Lro1Lro1L/3Wfvr1bvrlbro1Lro1Lro1JCreJCreJCreJCreL/3Wf70mP91mT4x1/uqlX/3Wf/3Wf+2WbzuVrro1JCreJCreJCreJCreJCreJCreL/3Wfro1L/3WdCreJCreLro1L/3Wfsp1P6zmH/3WfwsldCreJCreL1wF3vsFfurVbvrlbuq1X/3Wf6z2L/3Wf70WP2xF7uq1VCreL/3WfxtVnro1JCreLzu1v/3Wfro1L1wF3ro1L1wF3/3Wf4yGD3xl//3Wfro1L/3Wf/3Wf0vFv5y2Dro1Lwsljro1Lytlk09oXuAAAAT3RSTlMAMGC/rxCf//+fEFC/gBCf/////8/////Pr99gIO9AYFCAn//fv//v3//PMCCPv69wr/8w7//vcFD/QI+/IID/70Bw3+/vII9A//9w74+/T+PN6AAAA5JJREFUeNrdlm13mjAUxzPbzqhIFRtQEFZ7LSt2T7VlzrpJ92A3tdv3/zgrIZdAgHLO9mZn91VI/P/zy829OZJ/P579kapxcHDYIIQcPW9S2moT0umIFa2rk/o47vWNAW2RoxPGTIsOCdFHtsOXxq7t1epfsMcwm/R0wuKwaAxzBto4XvQAnDqDE67r0+k541b+lHAHl5+jC1DHwJjY+SVDBO4g9rbBrsnDBRMIAQ44ApmBe1l3iFev37x9dyUQAjrPIYxdmCVGsyr99c08DOh7YTBXERbJ3g7Ak/AWNYoIp0QcPyapTOMHoRukCBYiHBCS7N3hPhUGE9RJhH4yWNJbEocLq7gcYVxVQQqCgQhzgbACLTawH2mvzj82VINPiI5nZwNECBKEDrixwRk55qvrQhOgLqhA0AFiAy/5YXSXFbcb6/Vn1GUQTETgjc0JvC/JXEizJfA1sij9VkSIEKHF21mLu3zDEgKqlEDPp30VwfcFQpPeJ8cn5Dsm+y4DgEdWESJEMDjCyJEAJj2UBj+UrIc4MFOEQYzQ1eVtG7SRNUAE1FkpQphBiBtZNls7mwMl65FEGDCJEAfD+m6pVYhZVxEMXFtnOoZtRXkrCL6vIvRpinDXzlSbPy3tpChFwHTI/t5xhA1+7LNyfjmYddSZKoL1iIB3sOQZKUUIhQ5Z2G4wx6n1dVoEQ0IqENL9kIWZPZx62JQVAdEvMwhbaqgISLIM0Iktc0XgeBwBdXkEjF5zsJNffu4EZwt8DvKvahhKRUi3Gbs5zT0m2gpfJERQAl2lnawi7PIcwq5aj98kZwAkjxAoekPRs2CqGHg5hCh9T7AxtkwxOMgZjGCFCIIhv2E0MJ826IIrRuesLHz0qzK4BHDwYSmJnc9qDMgMbL0aIbJqDToAq2qEICweCg3kPYBXiRDMC1O550z8+3DH+LbVG/SylewkeXRhpmNXKxEVCtOgp9LAvUwd+Oi4eAtKWyvNPBIOugZ89KlgYFrqRK6ZPa7jh7HBKU2jZaon2OcLGRZYUV297Cb7MgnyfZehuwCah1+lCD0FAO8A97Xh0cIRtVhEKGQAASTDCuLQup5eiqBewSkpxHgxmgHMRoukqzdP6EPaIrUxqdYbdNgm9XH+d3os6GJsUV8b12UO/YD+rFTUO5gRnd7WC6XDRX73yL9bK/h1eZjcpJUYLumwocrr437/6yHaBgEdtvb35H+N35Al2nIY8JjHAAAAAElFTkSuQmCC"}},"time_used":10,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":10,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/css/iziToast_custom.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.831Z","timestamp":1785143153831,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/iziToast_custom.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"6b2-67b374e4-c353293edc083d6f;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 455\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":1714,"size_decoded":893,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"f71c42860644f8a6c8b110aff9147a66","sha1":"52e11bdf801cca29f91276cbc1a6179e20936719","sha256":"f81b430b2d760e5e5aea57b83e38fabf79540691c698f2800d58e275ec8a805e","sha512":"bd30eeadaddf6f0ae435ead1c65a710b3d880f5318dcf064c475e285a956856d1587d1f6b7de93314b771309a80fc9d2fa08db5a4e1378522d5235ad61345c0e","ssdeep":"","tlshash":"303124c891f62182eef7b9a48f731901e9b78c17b6cc11a4b5dc22458bf031118a1fbc","first_seen":"2025-04-29T11:56:59.350891Z","last_seen":"2026-07-30T06:02:32.524304Z","times_seen":226,"resource_available":false,"data":"Lml6aVRvYXN0LXdyYXBwZXIgew0KICAgICBnYXA6IDVweDsNCn0NCg0KLml6aVRvYXN0IHsNCiAgICAgYm94LXNoYWRvdzogMCAwIDhweCAycHggIzAwMDAwMDEyOw0KICAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgICBwYWRkaW5nOiAyMHB4IDQ1cHggMjBweCAwOw0KfQ0KDQouaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgew0KICAgICBwb3NpdGlvbjogdW5zZXQ7DQogICAgIHBhZGRpbmc6IHVuc2V0Ow0KICAgICBoZWlnaHQ6IHVuc2V0Ow0KICAgICBtaW4taGVpZ2h0OiB1bnNldDsNCiAgICAgbWFyZ2luOiB1bnNldDsNCiAgICAgZGlzcGxheTogZmxleDsNCiAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgIGdhcDogMjBweDsNCiAgICAgcGFkZGluZy1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7DQoNCn0NCg0KLml6aVRvYXN0OmFmdGVyIHsNCiAgICAgYm94LXNoYWRvdzogbm9uZTsNCn0NCg0KLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1pY29uIHsNCiAgICAgcG9zaXRpb246IHVuc2V0Ow0KICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICBsaW5lLWhlaWdodDogMTsNCiAgICAgbWFyZ2luLXRvcDogdW5zZXQ7DQogICAgIHdpZHRoOiB1bnNldDsNCiAgICAgaGVpZ2h0OiB1bnNldDsNCn0NCg0KLml6aVRvYXN0IC5pemlUb2FzdC1pY29uIHsNCiAgICAgYm9yZGVyLXJhZGl1czogMTBweDsNCiAgICAgcGFkZGluZzogMTBweDsNCn0NCg0KLml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLWdyZWVuIC5pemlUb2FzdC1pY29uIHsNCiAgICAgYmFja2dyb3VuZDogIzI4Yzc2ZjMxOw0KfQ0KDQouaXppVG9hc3QuaXppVG9hc3QtY29sb3ItcmVkIC5pemlUb2FzdC1pY29uIHsNCiAgICAgYmFja2dyb3VuZDogI2ViMjIyMjMxOw0KfQ0KDQouaXppVG9hc3QuaXppVG9hc3QtY29sb3ItYmx1ZSAuaXppVG9hc3QtaWNvbiB7DQogICAgIGJhY2tncm91bmQ6ICMxZTlmZjIzMTsNCn0NCg0KLml6aVRvYXN0Lml6aVRvYXN0LWNvbG9yLW9yYW5nZSAuaXppVG9hc3QtaWNvbiB7DQogICAgIGJhY2tncm91bmQ6ICNmZjlmNDMzMTsNCn0NCg0KDQouaXppVG9hc3Q+Lml6aVRvYXN0LWJvZHkgLml6aVRvYXN0LXRleHRzIHsNCiAgICAgbWFyZ2luOiAwOw0KICAgICBwYWRkaW5nLXJpZ2h0OiAwOw0KICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICAgICBnYXA6IDVweDsNCn0NCg0KLml6aVRvYXN0Pi5pemlUb2FzdC1ib2R5IC5pemlUb2FzdC1tZXNzYWdlIHsNCiAgICAgbWFyZ2luOiAwOw0KfQ0KDQoNCi5pemlUb2FzdD4uaXppVG9hc3QtY2xvc2Ugew0KICAgICBmb250LWZhbWlseTogJ0xpbmUgQXdlc29tZSBGcmVlJzsNCiAgICAgZm9udC13ZWlnaHQ6IDkwMDsNCiAgICAgYmFja2dyb3VuZDogdW5zZXQ7DQp9DQoNCi5pemlUb2FzdD4uaXppVG9hc3QtY2xvc2U6OmJlZm9yZSB7DQogICAgIGNvbnRlbnQ6ICJcZjAwZCI7DQp9DQoNCi5pemlUb2FzdD4uaXppVG9hc3QtcHJvZ3Jlc3NiYXI+ZGl2IHsNCiAgICAgaGVpZ2h0OiA0cHg7DQp9DQoNCi5pemlUb2FzdD4uaXppVG9hc3QtY2xvc2V7DQogICAgIHdpZHRoOiA1MHB4Ow0KfQ=="}},"time_used":67,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":67,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-vendors.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.570Z","timestamp":1785143154570,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-vendors.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"2fecc9d90ae6ad7f85d676e274e5d4a5\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11055\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2c1aea1a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":348923,"size_decoded":117196,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (65465)","md5":"2fecc9d90ae6ad7f85d676e274e5d4a5","sha1":"0e1300fb36969ed28db617c9bba0c8d0bff72c8e","sha256":"db389f4bb5872ace6ade114d9a15d1afc02e7d411680f6f98fa5a350b0b4ee5c","sha512":"e5fe2e55710dccb04046bf588c1cdfd27a153447b5a8f818af6e4f536abc89f4e38f242c117a4a6f2214a017653008272075811e9a40a5718a08b3900ecd71a0","ssdeep":"6144:jzicBg7MOpWK+1ZWwehNo4TR+5Ar6k+WS:nicBgoO27WwKvC","tlshash":"39744cc8f193b0b946e2a2a5009f5207737b052968e88494f574dfe968e8d5c637bf3c","first_seen":"2026-05-25T09:57:47.440233Z","last_seen":"2026-08-03T13:22:13.511279Z","times_seen":9182,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgdHdrLWNodW5rLXZlbmRvcnMuanMuTElDRU5TRSAqLwood2luZG93LnRhd2tKc29ucD13aW5kb3cudGF3a0pzb25wfHxbXSkucHVzaChbWyJjaHVuay12ZW5kb3JzIl0seyIwMGVlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPXt9O2lbbigiYjYyMiIpKCJ0b1N0cmluZ1RhZyIpXT0ieiIsZS5leHBvcnRzPSJbb2JqZWN0IHpdIj09PVN0cmluZyhpKX0sIjAxYjQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9ZnVuY3Rpb24oKXt0aGlzLmhlYWQ9bnVsbCx0aGlzLnRhaWw9bnVsbH07aS5wcm90b3R5cGU9e2FkZDpmdW5jdGlvbihlKXt2YXIgdD17aXRlbTplLG5leHQ6bnVsbH0sbj10aGlzLnRhaWw7bj9uLm5leHQ9dDp0aGlzLmhlYWQ9dCx0aGlzLnRhaWw9dH0sZ2V0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5oZWFkO2lmKGUpcmV0dXJuIG51bGw9PT0odGhpcy5oZWFkPWUubmV4dCkmJih0aGlzLnRhaWw9bnVsbCksZS5pdGVtfX0sZS5leHBvcnRzPWl9LCIwMzY2IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjQ2MjUiKSxyPW4oIjU5ZWQiKSxvPW4oIjQwZDUiKSxhPWkoaS5iaW5kKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gcihlKSx2b2lkIDA9PT10P2U6bz9hKGUsdCk6ZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sIjA0ZjgiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMmQwMCIpLHI9bigiZDAzOSIpLG89bigiZGE4NCIpLlN0cmluZztlLmV4cG9ydHM9ISFPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYhcigoZnVuY3Rpb24oKXt2YXIgZT1TeW1ib2woInN5bWJvbCBkZXRlY3Rpb24iKTtyZXR1cm4hbyhlKXx8IShPYmplY3QoZSlpbnN0YW5jZW9mIFN5bWJvbCl8fCFTeW1ib2wuc2hhbSYmaSYmaTw0MX0pKX0sIjA2Y2YiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiODNhYiIpLHI9bigiYzY1YiIpLG89bigiZDFlNyIpLGE9bigiNWM2YyIpLHM9bigiZmM2YSIpLGw9bigiYTA0YiIpLGM9bigiMWEyZCIpLHU9bigiMGNmYiIpLGQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt0LmY9aT9kOmZ1bmN0aW9uKGUsdCl7aWYoZT1zKGUpLHQ9bCh0KSx1KXRyeXtyZXR1cm4gZChlLHQpfWNhdGNoKGUpe31pZihjKGUsdCkpcmV0dXJuIGEoIXIoby5mLGUsdCksZVt0XSl9fSwiMDdhYyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIyM2U3Iikscj1uKCI2ZjUzIikudmFsdWVzO2koe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwfSx7dmFsdWVzOmZ1bmN0aW9uKGUpe3JldHVybiByKGUpfX0pfSwiMDdmYSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI1MGM0Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBpKGUubGVuZ3RoKX19LCIwYjQyIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImU4YjUiKSxyPW4oIjY4ZWUiKSxvPW4oIjg2MWQiKSxhPW4oImI2MjIiKSgic3BlY2llcyIpLHM9QXJyYXk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBpKGUpJiYodD1lLmNvbnN0cnVjdG9yLHIodCkmJih0PT09c3x8aSh0LnByb3RvdHlwZSkpP3Q9dm9pZCAwOm8odCkmJihudWxsPT09KHQ9dFthXSkmJih0PXZvaWQgMCkpKSx2b2lkIDA9PT10P3M6dH19LCIwY2ZiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgzYWIiKSxyPW4oImQwMzkiKSxvPW4oImNjMTIiKTtlLmV4cG9ydHM9IWkmJiFyKChmdW5jdGlvbigpe3JldHVybiA3IT09T2JqZWN0LmRlZmluZVByb3BlcnR5KG8oImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sIjBkNTEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9U3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt0cnl7cmV0dXJuIGkoZSl9Y2F0Y2goZSl7cmV0dXJuIk9iamVjdCJ9fX0sIjEzZDIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZTMzMCIpLHI9bigiZDAzOSIpLG89bigiMTYyNiIpLGE9bigiMWEyZCIpLHM9bigiODNhYiIpLGw9bigiNWU3NyIpLkNPTkZJR1VSQUJMRSxjPW4oIjg5MjUiKSx1PW4oIjY5ZjMiKSxkPXUuZW5mb3JjZSxwPXUuZ2V0LGg9U3RyaW5nLGY9T2JqZWN0LmRlZmluZVByb3BlcnR5LGc9aSgiIi5zbGljZSksbT1pKCIiLnJlcGxhY2UpLHk9aShbXS5qb2luKSx2PXMmJiFyKChmdW5jdGlvbigpe3JldHVybiA4IT09ZigoZnVuY3Rpb24oKXt9KSwibGVuZ3RoIix7dmFsdWU6OH0pLmxlbmd0aH0pKSxiPVN0cmluZyhTdHJpbmcpLnNwbGl0KCJTdHJpbmciKSxfPWUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7IlN5bWJvbCgiPT09ZyhoKHQpLDAsNykmJih0PSJbIittKGgodCksL15TeW1ib2xcKChbXildKilcKS4qJC8sIiQxIikrIl0iKSxuJiZuLmdldHRlciYmKHQ9ImdldCAiK3QpLG4mJm4uc2V0dGVyJiYodD0ic2V0ICIrdCksKCFhKGUsIm5hbWUiKXx8bCYmZS5uYW1lIT09dCkmJihzP2YoZSwibmFtZSIse3ZhbHVlOnQsY29uZmlndXJhYmxlOiEwfSk6ZS5uYW1lPXQpLHYmJm4mJmEobiwiYXJpdHkiKSYmZS5sZW5ndGghPT1uLmFyaXR5JiZmKGUsImxlbmd0aCIse3ZhbHVlOm4uYXJpdHl9KTt0cnl7biYmYShuLCJjb25zdHJ1Y3RvciIpJiZuLmNvbnN0cnVjdG9yP3MmJmYoZSwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KTplLnByb3RvdHlwZSYmKGUucHJvdG90eXBlPXZvaWQgMCl9Y2F0Y2goZSl7fXZhciBpPWQoZSk7cmV0dXJuIGEoaSwic291cmNlIil8fChpLnNvdXJjZT15KGIsInN0cmluZyI9PXR5cGVvZiB0P3Q6IiIpKSxlfTtGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc9XygoZnVuY3Rpb24oKXtyZXR1cm4gbyh0aGlzKSYmcCh0aGlzKS5zb3VyY2V8fGModGhpcyl9KSwidG9TdHJpbmciKX0sIjE0ZTUiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMjNlNyIpLHI9bigiYzY1YiIpLG89bigiNTllZCIpLGE9bigiZjA2OSIpLHM9bigiZTY2NyIpLGw9bigiMjI2NiIpO2koe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bigiNWVlZCIpfSx7YWxsOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbj1hLmYodCksaT1uLnJlc29sdmUsYz1uLnJlamVjdCx1PXMoKGZ1bmN0aW9uKCl7dmFyIG49byh0LnJlc29sdmUpLGE9W10scz0wLHU9MTtsKGUsKGZ1bmN0aW9uKGUpe3ZhciBvPXMrKyxsPSExO3UrKyxyKG4sdCxlKS50aGVuKChmdW5jdGlvbihlKXtsfHwobD0hMCxhW29dPWUsLS11fHxpKGEpKX0pLGMpfSkpLC0tdXx8aShhKX0pKTtyZXR1cm4gdS5lcnJvciYmYyh1LnZhbHVlKSxuLnByb21pc2V9fSl9LCIxNTdhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImRhODQiKSxyPW4oIjgzYWIiKSxvPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCFyKXJldHVybiBpW2VdO3ZhciB0PW8oaSxlKTtyZXR1cm4gdCYmdC52YWx1ZX19LDE2MjY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT0ib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50JiZkb2N1bWVudC5hbGw7ZS5leHBvcnRzPXZvaWQgMD09PWkmJnZvaWQgMCE9PWk/ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fGU9PT1pfTpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZX19LDE3ODc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI4NjFkIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBpKGUpfHxudWxsPT09ZX19LCIxOWFhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjNhOWIiKSxyPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihpKHQsZSkpcmV0dXJuIGU7dGhyb3cgbmV3IHIoIkluY29ycmVjdCBpbnZvY2F0aW9uIil9fSwiMWEyZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIikscj1uKCI3YjBiIiksbz1pKHt9Lmhhc093blByb3BlcnR5KTtlLmV4cG9ydHM9T2JqZWN0Lmhhc093bnx8ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbyhyKGUpLHQpfX0sIjFiZTQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZDA2NiIpO2UuZXhwb3J0cz1pKCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIpfSwiMWM3ZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJiNjIyIikoIml0ZXJhdG9yIikscj0hMTt0cnl7dmFyIG89MCxhPXtuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6ISFvKyt9fSxyZXR1cm46ZnVuY3Rpb24oKXtyPSEwfX07YVtpXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxBcnJheS5mcm9tKGEsKGZ1bmN0aW9uKCl7dGhyb3cgMn0pKX1jYXRjaChlKXt9ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dHJ5e2lmKCF0JiYhcilyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX12YXIgbj0hMTt0cnl7dmFyIG89e307b1tpXT1mdW5jdGlvbigpe3JldHVybntuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6bj0hMH19fX0sZShvKX1jYXRjaChlKXt9cmV0dXJuIG59fSwiMWNkYyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIzNDJmIik7ZS5leHBvcnRzPS8oPzppcGFkfGlwaG9uZXxpcG9kKS4qYXBwbGV3ZWJraXQvaS50ZXN0KGkpfSwiMWQ4MCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI3MjM0Iikscj1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKGkoZSkpdGhyb3cgbmV3IHIoIkNhbid0IGNhbGwgbWV0aG9kIG9uICIrZSk7cmV0dXJuIGV9fSwyMjY2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMDM2NiIpLHI9bigiYzY1YiIpLG89bigiODI1YSIpLGE9bigiMGQ1MSIpLHM9bigiZTk1YSIpLGw9bigiMDdmYSIpLGM9bigiM2E5YiIpLHU9bigiOWExZiIpLGQ9bigiMzVhMSIpLHA9bigiMmE2MiIpLGg9VHlwZUVycm9yLGY9ZnVuY3Rpb24oZSx0KXt0aGlzLnN0b3BwZWQ9ZSx0aGlzLnJlc3VsdD10fSxnPWYucHJvdG90eXBlO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7dmFyIG0seSx2LGIsXyx3LGssQz1uJiZuLnRoYXQseD0hKCFufHwhbi5BU19FTlRSSUVTKSxTPSEoIW58fCFuLklTX1JFQ09SRCksTD0hKCFufHwhbi5JU19JVEVSQVRPUiksVD0hKCFufHwhbi5JTlRFUlJVUFRFRCksTz1pKHQsQyksRT1mdW5jdGlvbihlKXtyZXR1cm4gbSYmcChtLCJub3JtYWwiLGUpLG5ldyBmKCEwLGUpfSxqPWZ1bmN0aW9uKGUpe3JldHVybiB4PyhvKGUpLFQ/TyhlWzBdLGVbMV0sRSk6TyhlWzBdLGVbMV0pKTpUP08oZSxFKTpPKGUpfTtpZihTKW09ZS5pdGVyYXRvcjtlbHNlIGlmKEwpbT1lO2Vsc2V7aWYoISh5PWQoZSkpKXRocm93IG5ldyBoKGEoZSkrIiBpcyBub3QgaXRlcmFibGUiKTtpZihzKHkpKXtmb3Iodj0wLGI9bChlKTtiPnY7disrKWlmKChfPWooZVt2XSkpJiZjKGcsXykpcmV0dXJuIF87cmV0dXJuIG5ldyBmKCExKX1tPXUoZSx5KX1mb3Iodz1TP2UubmV4dDptLm5leHQ7IShrPXIodyxtKSkuZG9uZTspe3RyeXtfPWooay52YWx1ZSl9Y2F0Y2goZSl7cChtLCJ0aHJvdyIsZSl9aWYoIm9iamVjdCI9PXR5cGVvZiBfJiZfJiZjKGcsXykpcmV0dXJuIF99cmV0dXJuIG5ldyBmKCExKX19LCIyM2NiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjU5MjYiKSxyPU1hdGgubWF4LG89TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG49aShlKTtyZXR1cm4gbjwwP3Iobit0LDApOm8obix0KX19LCIyM2U3IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImRhODQiKSxyPW4oIjA2Y2YiKS5mLG89bigiOTExMiIpLGE9bigiY2IyZCIpLHM9bigiNjM3NCIpLGw9bigiZTg5MyIpLGM9bigiOTRjYSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHUsZCxwLGgsZj1lLnRhcmdldCxnPWUuZ2xvYmFsLG09ZS5zdGF0O2lmKG49Zz9pOm0/aVtmXXx8cyhmLHt9KTppW2ZdJiZpW2ZdLnByb3RvdHlwZSlmb3IodSBpbiB0KXtpZihwPXRbdV0sZS5kb250Q2FsbEdldFNldD9kPShoPXIobix1KSkmJmgudmFsdWU6ZD1uW3VdLCFjKGc/dTpmKyhtPyIuIjoiIyIpK3UsZS5mb3JjZWQpJiZ2b2lkIDAhPT1kKXtpZih0eXBlb2YgcD09dHlwZW9mIGQpY29udGludWU7bChwLGQpfShlLnNoYW18fGQmJmQuc2hhbSkmJm8ocCwic2hhbSIsITApLGEobix1LHAsZSl9fX0sIjI0MWMiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiY2E4NCIpLHI9bigiNzgzOSIpLmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIik7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzfHxmdW5jdGlvbihlKXtyZXR1cm4gaShlLHIpfX0sIjI0ZmIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlLHQpe3ZhciBuPWVbMV18fCIiLGk9ZVszXTtpZighaSlyZXR1cm4gbjtpZih0JiYiZnVuY3Rpb24iPT10eXBlb2YgYnRvYSl7dmFyIHI9ZnVuY3Rpb24oZSl7dmFyIHQ9YnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoZSkpKSksbj0ic291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsIi5jb25jYXQodCk7cmV0dXJuIi8qIyAiLmNvbmNhdChuLCIgKi8iKX0oaSksbz1pLnNvdXJjZXMubWFwKChmdW5jdGlvbihlKXtyZXR1cm4iLyojIHNvdXJjZVVSTD0iLmNvbmNhdChpLnNvdXJjZVJvb3R8fCIiKS5jb25jYXQoZSwiICovIil9KSk7cmV0dXJuW25dLmNvbmNhdChvKS5jb25jYXQoW3JdKS5qb2luKCJcbiIpfXJldHVybltuXS5qb2luKCJcbiIpfWUuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD1bXTtyZXR1cm4gdC50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcCgoZnVuY3Rpb24odCl7dmFyIG49aSh0LGUpO3JldHVybiB0WzJdPyJAbWVkaWEgIi5jb25jYXQodFsyXSwiIHsiKS5jb25jYXQobiwifSIpOm59KSkuam9pbigiIil9LHQuaT1mdW5jdGlvbihlLG4saSl7InN0cmluZyI9PXR5cGVvZiBlJiYoZT1bW251bGwsZSwiIl1dKTt2YXIgcj17fTtpZihpKWZvcih2YXIgbz0wO288dGhpcy5sZW5ndGg7bysrKXt2YXIgYT10aGlzW29dWzBdO251bGwhPWEmJihyW2FdPSEwKX1mb3IodmFyIHM9MDtzPGUubGVuZ3RoO3MrKyl7dmFyIGw9W10uY29uY2F0KGVbc10pO2kmJnJbbFswXV18fChuJiYobFsyXT9sWzJdPSIiLmNvbmNhdChuLCIgYW5kICIpLmNvbmNhdChsWzJdKTpsWzJdPW4pLHQucHVzaChsKSl9fSx0fX0sMjYyNjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImQwNjYiKSxyPW4oImVkZDAiKSxvPW4oImI2MjIiKSxhPW4oIjgzYWIiKSxzPW8oInNwZWNpZXMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9aShlKTthJiZ0JiYhdFtzXSYmcih0LHMse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319KX19LDI4Nzc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCxuLGkscixvLGEscyl7dmFyIGwsYz0iZnVuY3Rpb24iPT10eXBlb2YgZT9lLm9wdGlvbnM6ZTtpZih0JiYoYy5yZW5kZXI9dCxjLnN0YXRpY1JlbmRlckZucz1uLGMuX2NvbXBpbGVkPSEwKSxpJiYoYy5mdW5jdGlvbmFsPSEwKSxvJiYoYy5fc2NvcGVJZD0iZGF0YS12LSIrbyksYT8obD1mdW5jdGlvbihlKXsoZT1lfHx0aGlzLiR2bm9kZSYmdGhpcy4kdm5vZGUuc3NyQ29udGV4dHx8dGhpcy5wYXJlbnQmJnRoaXMucGFyZW50LiR2bm9kZSYmdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpfHwidW5kZWZpbmVkIj09dHlwZW9mIF9fVlVFX1NTUl9DT05URVhUX198fChlPV9fVlVFX1NTUl9DT05URVhUX18pLHImJnIuY2FsbCh0aGlzLGUpLGUmJmUuX3JlZ2lzdGVyZWRDb21wb25lbnRzJiZlLl9yZWdpc3RlcmVkQ29tcG9uZW50cy5hZGQoYSl9LGMuX3NzclJlZ2lzdGVyPWwpOnImJihsPXM/ZnVuY3Rpb24oKXtyLmNhbGwodGhpcywoYy5mdW5jdGlvbmFsP3RoaXMucGFyZW50OnRoaXMpLiRyb290LiRvcHRpb25zLnNoYWRvd1Jvb3QpfTpyKSxsKWlmKGMuZnVuY3Rpb25hbCl7Yy5faW5qZWN0U3R5bGVzPWw7dmFyIHU9Yy5yZW5kZXI7Yy5yZW5kZXI9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbC5jYWxsKHQpLHUoZSx0KX19ZWxzZXt2YXIgZD1jLmJlZm9yZUNyZWF0ZTtjLmJlZm9yZUNyZWF0ZT1kP1tdLmNvbmNhdChkLGwpOltsXX1yZXR1cm57ZXhwb3J0czplLG9wdGlvbnM6Y319bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBpfSkpfSwiMmE2MiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJjNjViIikscj1uKCI4MjVhIiksbz1uKCJkYzRhIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgYSxzO3IoZSk7dHJ5e2lmKCEoYT1vKGUsInJldHVybiIpKSl7aWYoInRocm93Ij09PXQpdGhyb3cgbjtyZXR1cm4gbn1hPWkoYSxlKX1jYXRjaChlKXtzPSEwLGE9ZX1pZigidGhyb3ciPT09dCl0aHJvdyBuO2lmKHMpdGhyb3cgYTtyZXR1cm4gcihhKSxufX0sIjJiYTQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiNDBkNSIpLHI9RnVuY3Rpb24ucHJvdG90eXBlLG89ci5hcHBseSxhPXIuY2FsbDtlLmV4cG9ydHM9Im9iamVjdCI9PXR5cGVvZiBSZWZsZWN0JiZSZWZsZWN0LmFwcGx5fHwoaT9hLmJpbmQobyk6ZnVuY3Rpb24oKXtyZXR1cm4gYS5hcHBseShvLGFyZ3VtZW50cyl9KX0sIjJjZjQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGkscixvLGEscz1uKCJkYTg0IiksbD1uKCIyYmE0IiksYz1uKCIwMzY2IiksdT1uKCIxNjI2IiksZD1uKCIxYTJkIikscD1uKCJkMDM5IiksaD1uKCIxYmU0IiksZj1uKCJmMzZhIiksZz1uKCJjYzEyIiksbT1uKCJkNmQ2IikseT1uKCIxY2RjIiksdj1uKCI2MDVkIiksYj1zLnNldEltbWVkaWF0ZSxfPXMuY2xlYXJJbW1lZGlhdGUsdz1zLnByb2Nlc3Msaz1zLkRpc3BhdGNoLEM9cy5GdW5jdGlvbix4PXMuTWVzc2FnZUNoYW5uZWwsUz1zLlN0cmluZyxMPTAsVD17fSxPPSJvbnJlYWR5c3RhdGVjaGFuZ2UiO3AoKGZ1bmN0aW9uKCl7aT1zLmxvY2F0aW9ufSkpO3ZhciBFPWZ1bmN0aW9uKGUpe2lmKGQoVCxlKSl7dmFyIHQ9VFtlXTtkZWxldGUgVFtlXSx0KCl9fSxqPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe0UoZSl9fSxQPWZ1bmN0aW9uKGUpe0UoZS5kYXRhKX0sUj1mdW5jdGlvbihlKXtzLnBvc3RNZXNzYWdlKFMoZSksaS5wcm90b2NvbCsiLy8iK2kuaG9zdCl9O2ImJl98fChiPWZ1bmN0aW9uKGUpe20oYXJndW1lbnRzLmxlbmd0aCwxKTt2YXIgdD11KGUpP2U6QyhlKSxuPWYoYXJndW1lbnRzLDEpO3JldHVybiBUWysrTF09ZnVuY3Rpb24oKXtsKHQsdm9pZCAwLG4pfSxyKEwpLEx9LF89ZnVuY3Rpb24oZSl7ZGVsZXRlIFRbZV19LHY/cj1mdW5jdGlvbihlKXt3Lm5leHRUaWNrKGooZSkpfTprJiZrLm5vdz9yPWZ1bmN0aW9uKGUpe2subm93KGooZSkpfTp4JiYheT8oYT0obz1uZXcgeCkucG9ydDIsby5wb3J0MS5vbm1lc3NhZ2U9UCxyPWMoYS5wb3N0TWVzc2FnZSxhKSk6cy5hZGRFdmVudExpc3RlbmVyJiZ1KHMucG9zdE1lc3NhZ2UpJiYhcy5pbXBvcnRTY3JpcHRzJiZpJiYiZmlsZToiIT09aS5wcm90b2NvbCYmIXAoUik/KHI9UixzLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLFAsITEpKTpyPU8gaW4gZygic2NyaXB0Iik/ZnVuY3Rpb24oZSl7aC5hcHBlbmRDaGlsZChnKCJzY3JpcHQiKSlbT109ZnVuY3Rpb24oKXtoLnJlbW92ZUNoaWxkKHRoaXMpLEUoZSl9fTpmdW5jdGlvbihlKXtzZXRUaW1lb3V0KGooZSksMCl9KSxlLmV4cG9ydHM9e3NldDpiLGNsZWFyOl99fSwiMmQwMCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyLG89bigiZGE4NCIpLGE9bigiMzQyZiIpLHM9by5wcm9jZXNzLGw9by5EZW5vLGM9cyYmcy52ZXJzaW9uc3x8bCYmbC52ZXJzaW9uLHU9YyYmYy52ODt1JiYocj0oaT11LnNwbGl0KCIuIikpWzBdPjAmJmlbMF08ND8xOisoaVswXStpWzFdKSksIXImJmEmJigoIShpPWEubWF0Y2goL0VkZ2VcLyhcZCspLykpfHxpWzFdPj03NCkmJigoaT1hLm1hdGNoKC9DaHJvbWVcLyhcZCspLykpJiYocj0raVsxXSkpKSxlLmV4cG9ydHM9cn0sIjM0MmYiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZTdHJpbmcobmF2aWdhdG9yLnVzZXJBZ2VudCl8fCIifSwzNTI5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMjNlNyIpLHI9bigiYzY1YiIpLG89bigiNTllZCIpLGE9bigiZjA2OSIpLHM9bigiZTY2NyIpLGw9bigiMjI2NiIpO2koe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bigiNWVlZCIpfSx7cmFjZTpmdW5jdGlvbihlKXt2YXIgdD10aGlzLG49YS5mKHQpLGk9bi5yZWplY3QsYz1zKChmdW5jdGlvbigpe3ZhciBhPW8odC5yZXNvbHZlKTtsKGUsKGZ1bmN0aW9uKGUpe3IoYSx0LGUpLnRoZW4obi5yZXNvbHZlLGkpfSkpfSkpO3JldHVybiBjLmVycm9yJiZpKGMudmFsdWUpLG4ucHJvbWlzZX19KX0sIjM1YTEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZjVkZiIpLHI9bigiZGM0YSIpLG89bigiNzIzNCIpLGE9bigiM2Y4YyIpLHM9bigiYjYyMiIpKCJpdGVyYXRvciIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighbyhlKSlyZXR1cm4gcihlLHMpfHxyKGUsIkBAaXRlcmF0b3IiKXx8YVtpKGUpXX19LCIzN2U4IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgzYWIiKSxyPW4oImFlZDkiKSxvPW4oIjliZjIiKSxhPW4oIjgyNWEiKSxzPW4oImZjNmEiKSxsPW4oImRmNzUiKTt0LmY9aSYmIXI/T2JqZWN0LmRlZmluZVByb3BlcnRpZXM6ZnVuY3Rpb24oZSx0KXthKGUpO2Zvcih2YXIgbixpPXModCkscj1sKHQpLGM9ci5sZW5ndGgsdT0wO2M+dTspby5mKGUsbj1yW3UrK10saVtuXSk7cmV0dXJuIGV9fSwiM2E5YiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIik7ZS5leHBvcnRzPWkoe30uaXNQcm90b3R5cGVPZil9LCIzYmJlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjE3ODciKSxyPVN0cmluZyxvPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoaShlKSlyZXR1cm4gZTt0aHJvdyBuZXcgbygiQ2FuJ3Qgc2V0ICIrcihlKSsiIGFzIGEgcHJvdG90eXBlIil9fSwiM2Y4YyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9e319LCI0MGQ1IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImQwMzkiKTtlLmV4cG9ydHM9IWkoKGZ1bmN0aW9uKCl7dmFyIGU9ZnVuY3Rpb24oKXt9LmJpbmQoKTtyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgZXx8ZS5oYXNPd25Qcm9wZXJ0eSgicHJvdG90eXBlIil9KSl9LCI0NGFkIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImUzMzAiKSxyPW4oImQwMzkiKSxvPW4oImM2YjYiKSxhPU9iamVjdCxzPWkoIiIuc3BsaXQpO2UuZXhwb3J0cz1yKChmdW5jdGlvbigpe3JldHVybiFhKCJ6IikucHJvcGVydHlJc0VudW1lcmFibGUoMCl9KSk/ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PT1vKGUpP3MoZSwiIik6YShlKX06YX0sIjQ0ZDIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYjYyMiIpLHI9bigiN2M3MyIpLG89bigiOWJmMiIpLmYsYT1pKCJ1bnNjb3BhYmxlcyIpLHM9QXJyYXkucHJvdG90eXBlO3ZvaWQgMD09PXNbYV0mJm8ocyxhLHtjb25maWd1cmFibGU6ITAsdmFsdWU6cihudWxsKX0pLGUuZXhwb3J0cz1mdW5jdGlvbihlKXtzW2FdW2VdPSEwfX0sIjQ0ZGUiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dHJ5ezE9PT1hcmd1bWVudHMubGVuZ3RoP2NvbnNvbGUuZXJyb3IoZSk6Y29uc29sZS5lcnJvcihlLHQpfWNhdGNoKGUpe319fSw0NjI1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYzZiNiIpLHI9bigiZTMzMCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZigiRnVuY3Rpb24iPT09aShlKSlyZXR1cm4gcihlKX19LDQ3Mzg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkYTg0Iikscj1uKCJkMjU2Iiksbz1uKCIxNjI2IiksYT1uKCI5NGNhIikscz1uKCI4OTI1IiksbD1uKCJiNjIyIiksYz1uKCI2MDY5IiksdT1uKCI2YzU5IiksZD1uKCJjNDMwIikscD1uKCIyZDAwIiksaD1yJiZyLnByb3RvdHlwZSxmPWwoInNwZWNpZXMiKSxnPSExLG09byhpLlByb21pc2VSZWplY3Rpb25FdmVudCkseT1hKCJQcm9taXNlIiwoZnVuY3Rpb24oKXt2YXIgZT1zKHIpLHQ9ZSE9PVN0cmluZyhyKTtpZighdCYmNjY9PT1wKXJldHVybiEwO2lmKGQmJighaC5jYXRjaHx8IWguZmluYWxseSkpcmV0dXJuITA7aWYoIXB8fHA8NTF8fCEvbmF0aXZlIGNvZGUvLnRlc3QoZSkpe3ZhciBuPW5ldyByKChmdW5jdGlvbihlKXtlKDEpfSkpLGk9ZnVuY3Rpb24oZSl7ZSgoZnVuY3Rpb24oKXt9KSwoZnVuY3Rpb24oKXt9KSl9O2lmKChuLmNvbnN0cnVjdG9yPXt9KVtmXT1pLCEoZz1uLnRoZW4oKGZ1bmN0aW9uKCl7fSkpaW5zdGFuY2VvZiBpKSlyZXR1cm4hMH1yZXR1cm4hdCYmKGN8fHUpJiYhbX0pKTtlLmV4cG9ydHM9e0NPTlNUUlVDVE9SOnksUkVKRUNUSU9OX0VWRU5UOm0sU1VCQ0xBU1NJTkc6Z319LDQ3NTQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6ZSxkb25lOnR9fX0sNDg0MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgyNWEiKSxyPW4oIjUwODciKSxvPW4oIjcyMzQiKSxhPW4oImI2MjIiKSgic3BlY2llcyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHM9aShlKS5jb25zdHJ1Y3RvcjtyZXR1cm4gdm9pZCAwPT09c3x8byhuPWkocylbYV0pP3Q6cihuKX19LCI0ODVhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImM2NWIiKSxyPW4oIjE2MjYiKSxvPW4oIjg2MWQiKSxhPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbixzO2lmKCJzdHJpbmciPT09dCYmcihuPWUudG9TdHJpbmcpJiYhbyhzPWkobixlKSkpcmV0dXJuIHM7aWYocihuPWUudmFsdWVPZikmJiFvKHM9aShuLGUpKSlyZXR1cm4gcztpZigic3RyaW5nIiE9PXQmJnIobj1lLnRvU3RyaW5nKSYmIW8ocz1pKG4sZSkpKXJldHVybiBzO3Rocm93IG5ldyBhKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX19LCI0OTllIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0KXtmb3IodmFyIG49W10saT17fSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBvPXRbcl0sYT1vWzBdLHM9e2lkOmUrIjoiK3IsY3NzOm9bMV0sbWVkaWE6b1syXSxzb3VyY2VNYXA6b1szXX07aVthXT9pW2FdLnBhcnRzLnB1c2gocyk6bi5wdXNoKGlbYV09e2lkOmEscGFydHM6W3NdfSl9cmV0dXJuIG59bi5yKHQpLG4uZCh0LCJkZWZhdWx0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKTt2YXIgcj0idW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50O2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgREVCVUcmJkRFQlVHJiYhcil0aHJvdyBuZXcgRXJyb3IoInZ1ZS1zdHlsZS1sb2FkZXIgY2Fubm90IGJlIHVzZWQgaW4gYSBub24tYnJvd3NlciBlbnZpcm9ubWVudC4gVXNlIHsgdGFyZ2V0OiAnbm9kZScgfSBpbiB5b3VyIFdlYnBhY2sgY29uZmlnIHRvIGluZGljYXRlIGEgc2VydmVyLXJlbmRlcmluZyBlbnZpcm9ubWVudC4iKTt2YXIgbz17fSxhPXImJihkb2N1bWVudC5oZWFkfHxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdKSxzPW51bGwsbD0wLGM9ITEsdT1mdW5jdGlvbigpe30sZD1udWxsLHA9ImRhdGEtdnVlLXNzci1pZCIsaD0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL21zaWUgWzYtOV1cYi8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkpO2Z1bmN0aW9uIGYoZSx0LG4scil7Yz1uLGQ9cnx8e307dmFyIGE9aShlLHQpO3JldHVybiBnKGEpLGZ1bmN0aW9uKHQpe2Zvcih2YXIgbj1bXSxyPTA7cjxhLmxlbmd0aDtyKyspe3ZhciBzPWFbcl0sbD1vW3MuaWRdO2wucmVmcy0tLG4ucHVzaChsKX1mb3IodD9nKGE9aShlLHQpKTphPVtdLHI9MDtyPG4ubGVuZ3RoO3IrKylpZigwPT09KGw9bltyXSkucmVmcyl7Zm9yKHZhciBjPTA7YzxsLnBhcnRzLmxlbmd0aDtjKyspbC5wYXJ0c1tjXSgpO2RlbGV0ZSBvW2wuaWRdfX19ZnVuY3Rpb24gZyhlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG49ZVt0XSxpPW9bbi5pZF07aWYoaSl7aS5yZWZzKys7Zm9yKHZhciByPTA7cjxpLnBhcnRzLmxlbmd0aDtyKyspaS5wYXJ0c1tyXShuLnBhcnRzW3JdKTtmb3IoO3I8bi5wYXJ0cy5sZW5ndGg7cisrKWkucGFydHMucHVzaCh5KG4ucGFydHNbcl0pKTtpLnBhcnRzLmxlbmd0aD5uLnBhcnRzLmxlbmd0aCYmKGkucGFydHMubGVuZ3RoPW4ucGFydHMubGVuZ3RoKX1lbHNle3ZhciBhPVtdO2ZvcihyPTA7cjxuLnBhcnRzLmxlbmd0aDtyKyspYS5wdXNoKHkobi5wYXJ0c1tyXSkpO29bbi5pZF09e2lkOm4uaWQscmVmczoxLHBhcnRzOmF9fX19ZnVuY3Rpb24gbSgpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7cmV0dXJuIGUudHlwZT0idGV4dC9jc3MiLGEuYXBwZW5kQ2hpbGQoZSksZX1mdW5jdGlvbiB5KGUpe3ZhciB0LG4saT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJzdHlsZVsiK3ArJ349IicrZS5pZCsnIl0nKTtpZihpKXtpZihjKXJldHVybiB1O2kucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpKX1pZihoKXt2YXIgcj1sKys7aT1zfHwocz1tKCkpLHQ9Yi5iaW5kKG51bGwsaSxyLCExKSxuPWIuYmluZChudWxsLGksciwhMCl9ZWxzZSBpPW0oKSx0PV8uYmluZChudWxsLGkpLG49ZnVuY3Rpb24oKXtpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaSl9O3JldHVybiB0KGUpLGZ1bmN0aW9uKGkpe2lmKGkpe2lmKGkuY3NzPT09ZS5jc3MmJmkubWVkaWE9PT1lLm1lZGlhJiZpLnNvdXJjZU1hcD09PWUuc291cmNlTWFwKXJldHVybjt0KGU9aSl9ZWxzZSBuKCl9fXZhciB2PWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIGZ1bmN0aW9uKHQsbil7cmV0dXJuIGVbdF09bixlLmZpbHRlcihCb29sZWFuKS5qb2luKCJcbiIpfX0oKTtmdW5jdGlvbiBiKGUsdCxuLGkpe3ZhciByPW4/IiI6aS5jc3M7aWYoZS5zdHlsZVNoZWV0KWUuc3R5bGVTaGVldC5jc3NUZXh0PXYodCxyKTtlbHNle3ZhciBvPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHIpLGE9ZS5jaGlsZE5vZGVzO2FbdF0mJmUucmVtb3ZlQ2hpbGQoYVt0XSksYS5sZW5ndGg/ZS5pbnNlcnRCZWZvcmUobyxhW3RdKTplLmFwcGVuZENoaWxkKG8pfX1mdW5jdGlvbiBfKGUsdCl7dmFyIG49dC5jc3MsaT10Lm1lZGlhLHI9dC5zb3VyY2VNYXA7aWYoaSYmZS5zZXRBdHRyaWJ1dGUoIm1lZGlhIixpKSxkLnNzcklkJiZlLnNldEF0dHJpYnV0ZShwLHQuaWQpLHImJihuKz0iXG4vKiMgc291cmNlVVJMPSIrci5zb3VyY2VzWzBdKyIgKi8iLG4rPSJcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsIitidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShyKSkpKSsiICovIiksZS5zdHlsZVNoZWV0KWUuc3R5bGVTaGVldC5jc3NUZXh0PW47ZWxzZXtmb3IoO2UuZmlyc3RDaGlsZDspZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpO2UuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobikpfX19LCI0ZDY0IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImZjNmEiKSxyPW4oIjIzY2IiKSxvPW4oIjA3ZmEiKSxhPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4sYSl7dmFyIHM9aSh0KSxsPW8ocyk7aWYoMD09PWwpcmV0dXJuIWUmJi0xO3ZhciBjLHU9cihhLGwpO2lmKGUmJm4hPW4pe2Zvcig7bD51OylpZigoYz1zW3UrK10pIT1jKXJldHVybiEwfWVsc2UgZm9yKDtsPnU7dSsrKWlmKChlfHx1IGluIHMpJiZzW3VdPT09bilyZXR1cm4gZXx8dXx8MDtyZXR1cm4hZSYmLTF9fTtlLmV4cG9ydHM9e2luY2x1ZGVzOmEoITApLGluZGV4T2Y6YSghMSl9fSwiNGZhZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIyM2U3Iikscj1uKCI2ZjUzIikuZW50cmllcztpKHt0YXJnZXQ6Ik9iamVjdCIsc3RhdDohMH0se2VudHJpZXM6ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSl9fSl9LDUwODc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI2OGVlIikscj1uKCIwZDUxIiksbz1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKGkoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IG8ocihlKSsiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIil9fSwiNTBjNCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI1OTI2Iikscj1NYXRoLm1pbjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9aShlKTtyZXR1cm4gdD4wP3IodCw5MDA3MTk5MjU0NzQwOTkxKTowfX0sNTY5MjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImM2Y2QiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gaVtlXXx8KGlbZV09dHx8e30pfX0sIjU2ZWYiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZDA2NiIpLHI9bigiZTMzMCIpLG89bigiMjQxYyIpLGE9bigiNzQxOCIpLHM9bigiODI1YSIpLGw9cihbXS5jb25jYXQpO2UuZXhwb3J0cz1pKCJSZWZsZWN0Iiwib3duS2V5cyIpfHxmdW5jdGlvbihlKXt2YXIgdD1vLmYocyhlKSksbj1hLmY7cmV0dXJuIG4/bCh0LG4oZSkpOnR9fSw1ODA4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKGUpe3ZhciBpLHIsbyxhPW4oImQzMDQiKSxzPW4oIjVlNDkiKSxsPW4ubihzKTtmdW5jdGlvbiBjKGUsdCl7dmFyIG49T2JqZWN0LmtleXMoZSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhlKTt0JiYoaT1pLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KS5lbnVtZXJhYmxlfSkpKSxuLnB1c2guYXBwbHkobixpKX1yZXR1cm4gbn1mdW5jdGlvbiB1KGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPW51bGwhPWFyZ3VtZW50c1t0XT9hcmd1bWVudHNbdF06e307dCUyP2MoT2JqZWN0KG4pLCEwKS5mb3JFYWNoKChmdW5jdGlvbih0KXtkKGUsdCxuW3RdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG4pKTpjKE9iamVjdChuKSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sdCkpfSkpfXJldHVybiBlfWZ1bmN0aW9uIGQoZSx0LG4pe3JldHVybih0PWZ1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPXAoZSl8fCFlKXJldHVybiBlO3ZhciBuPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgaT1uLmNhbGwoZSx0fHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1wKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXAodCk/dDp0KyIifSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPW4sZX1mdW5jdGlvbiBwKGUpe3JldHVybihwPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ImZ1bmN0aW9uIj09dHlwZW9mIGZldGNoJiYoaT12b2lkIDAhPT1lJiZlLmZldGNoP2UuZmV0Y2g6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5mZXRjaD93aW5kb3cuZmV0Y2g6ZmV0Y2gpLE9iamVjdChhLmEpKCkmJih2b2lkIDAhPT1lJiZlLlhNTEh0dHBSZXF1ZXN0P3I9ZS5YTUxIdHRwUmVxdWVzdDoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93LlhNTEh0dHBSZXF1ZXN0JiYocj13aW5kb3cuWE1MSHR0cFJlcXVlc3QpKSwiZnVuY3Rpb24iPT10eXBlb2YgQWN0aXZlWE9iamVjdCYmKHZvaWQgMCE9PWUmJmUuQWN0aXZlWE9iamVjdD9vPWUuQWN0aXZlWE9iamVjdDoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93LkFjdGl2ZVhPYmplY3QmJihvPXdpbmRvdy5BY3RpdmVYT2JqZWN0KSksaXx8IXN8fHJ8fG98fChpPWwuYXx8cyksImZ1bmN0aW9uIiE9dHlwZW9mIGkmJihpPXZvaWQgMCk7dmFyIGg9ZnVuY3Rpb24oZSx0KXtpZih0JiYib2JqZWN0Ij09PXAodCkpe3ZhciBuPSIiO2Zvcih2YXIgaSBpbiB0KW4rPSImIitlbmNvZGVVUklDb21wb25lbnQoaSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh0W2ldKTtpZighbilyZXR1cm4gZTtlPWUrKC0xIT09ZS5pbmRleE9mKCI/Iik/IiYiOiI/Iikrbi5zbGljZSgxKX1yZXR1cm4gZX0sZj1mdW5jdGlvbihlLHQsbixyKXt2YXIgbz1mdW5jdGlvbihlKXtpZighZS5vaylyZXR1cm4gbihlLnN0YXR1c1RleHR8fCJFcnJvciIse3N0YXR1czplLnN0YXR1c30pO2UudGV4dCgpLnRoZW4oKGZ1bmN0aW9uKHQpe24obnVsbCx7c3RhdHVzOmUuc3RhdHVzLGRhdGE6dH0pfSkpLmNhdGNoKG4pfTtpZihyKXt2YXIgYT1yKGUsdCk7aWYoYSBpbnN0YW5jZW9mIFByb21pc2UpcmV0dXJuIHZvaWQgYS50aGVuKG8pLmNhdGNoKG4pfSJmdW5jdGlvbiI9PXR5cGVvZiBmZXRjaD9mZXRjaChlLHQpLnRoZW4obykuY2F0Y2gobik6aShlLHQpLnRoZW4obykuY2F0Y2gobil9LGc9ITEsbT1mdW5jdGlvbih0LG4saSxyKXt0LnF1ZXJ5U3RyaW5nUGFyYW1zJiYobj1oKG4sdC5xdWVyeVN0cmluZ1BhcmFtcykpO3ZhciBvPXUoe30sImZ1bmN0aW9uIj09dHlwZW9mIHQuY3VzdG9tSGVhZGVycz90LmN1c3RvbUhlYWRlcnMoKTp0LmN1c3RvbUhlYWRlcnMpOyJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93JiZ2b2lkIDAhPT1lJiZ2b2lkIDAhPT1lLnByb2Nlc3MmJmUucHJvY2Vzcy52ZXJzaW9ucyYmZS5wcm9jZXNzLnZlcnNpb25zLm5vZGUmJihvWyJVc2VyLUFnZW50Il09ImkxOG5leHQtaHR0cC1iYWNrZW5kIChub2RlLyIuY29uY2F0KGUucHJvY2Vzcy52ZXJzaW9uLCI7ICIpLmNvbmNhdChlLnByb2Nlc3MucGxhdGZvcm0sIiAiKS5jb25jYXQoZS5wcm9jZXNzLmFyY2gsIikiKSksaSYmKG9bIkNvbnRlbnQtVHlwZSJdPSJhcHBsaWNhdGlvbi9qc29uIik7dmFyIGE9ImZ1bmN0aW9uIj09dHlwZW9mIHQucmVxdWVzdE9wdGlvbnM/dC5yZXF1ZXN0T3B0aW9ucyhpKTp0LnJlcXVlc3RPcHRpb25zLHM9dSh7bWV0aG9kOmk/IlBPU1QiOiJHRVQiLGJvZHk6aT90LnN0cmluZ2lmeShpKTp2b2lkIDAsaGVhZGVyczpvfSxnP3t9OmEpLGw9ImZ1bmN0aW9uIj09dHlwZW9mIHQuYWx0ZXJuYXRlRmV0Y2gmJnQuYWx0ZXJuYXRlRmV0Y2gubGVuZ3RoPj0xP3QuYWx0ZXJuYXRlRmV0Y2g6dm9pZCAwO3RyeXtmKG4scyxyLGwpfWNhdGNoKGUpe2lmKCFhfHwwPT09T2JqZWN0LmtleXMoYSkubGVuZ3RofHwhZS5tZXNzYWdlfHxlLm1lc3NhZ2UuaW5kZXhPZigibm90IGltcGxlbWVudGVkIik8MClyZXR1cm4gcihlKTt0cnl7T2JqZWN0LmtleXMoYSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7ZGVsZXRlIHNbZV19KSksZihuLHMscixsKSxnPSEwfWNhdGNoKGUpe3IoZSl9fX0seT1mdW5jdGlvbihlLHQsbixpKXtuJiYib2JqZWN0Ij09PXAobikmJihuPWgoIiIsbikuc2xpY2UoMSkpLGUucXVlcnlTdHJpbmdQYXJhbXMmJih0PWgodCxlLnF1ZXJ5U3RyaW5nUGFyYW1zKSk7dHJ5e3ZhciBhOyhhPXI/bmV3IHI6bmV3IG8oIk1TWE1MMi5YTUxIVFRQLjMuMCIpKS5vcGVuKG4/IlBPU1QiOiJHRVQiLHQsMSksZS5jcm9zc0RvbWFpbnx8YS5zZXRSZXF1ZXN0SGVhZGVyKCJYLVJlcXVlc3RlZC1XaXRoIiwiWE1MSHR0cFJlcXVlc3QiKSxhLndpdGhDcmVkZW50aWFscz0hIWUud2l0aENyZWRlbnRpYWxzLG4mJmEuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIiksYS5vdmVycmlkZU1pbWVUeXBlJiZhLm92ZXJyaWRlTWltZVR5cGUoImFwcGxpY2F0aW9uL2pzb24iKTt2YXIgcz1lLmN1c3RvbUhlYWRlcnM7aWYocz0iZnVuY3Rpb24iPT10eXBlb2Ygcz9zKCk6cylmb3IodmFyIGwgaW4gcylhLnNldFJlcXVlc3RIZWFkZXIobCxzW2xdKTthLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe2EucmVhZHlTdGF0ZT4zJiZpKGEuc3RhdHVzPj00MDA/YS5zdGF0dXNUZXh0Om51bGwse3N0YXR1czphLnN0YXR1cyxkYXRhOmEucmVzcG9uc2VUZXh0fSl9LGEuc2VuZChuKX1jYXRjaChlKXtjb25zb2xlJiZjb25zb2xlLmxvZyhlKX19O3QuYT1mdW5jdGlvbihlLHQsbixyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgbiYmKHI9bixuPXZvaWQgMCkscj1yfHxmdW5jdGlvbigpe30saSYmMCE9PXQuaW5kZXhPZigiZmlsZToiKT9tKGUsdCxuLHIpOk9iamVjdChhLmEpKCl8fCJmdW5jdGlvbiI9PXR5cGVvZiBBY3RpdmVYT2JqZWN0P3koZSx0LG4scik6dm9pZCByKG5ldyBFcnJvcigiTm8gZmV0Y2ggYW5kIG5vIHhociBpbXBsZW1lbnRhdGlvbiBmb3VuZCEiKSl9fSkuY2FsbCh0aGlzLG4oImM4YmEiKSl9LDU5MjY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJiNDJlIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PStlO3JldHVybiB0IT10fHwwPT09dD8wOmkodCl9fSwiNTllZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIxNjI2Iikscj1uKCIwZDUxIiksbz1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKGkoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IG8ocihlKSsiIGlzIG5vdCBhIGZ1bmN0aW9uIil9fSwiNWM2YyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57ZW51bWVyYWJsZTohKDEmZSksY29uZmlndXJhYmxlOiEoMiZlKSx3cml0YWJsZTohKDQmZSksdmFsdWU6dH19fSwiNWQ2MSI6ZnVuY3Rpb24oZSx0LG4peyhmdW5jdGlvbihuKXt2YXIgaT0idW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXN8fCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZnx8dm9pZCAwIT09biYmbixyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe3RoaXMuZmV0Y2g9ITEsdGhpcy5ET01FeGNlcHRpb249aS5ET01FeGNlcHRpb259cmV0dXJuIGUucHJvdG90eXBlPWksbmV3IGV9KCk7KGZ1bmN0aW9uKGUpeyFmdW5jdGlvbih0KXt2YXIgbj12b2lkIDAhPT1lJiZlfHwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGZ8fHZvaWQgMCE9PW4mJm4saT0iVVJMU2VhcmNoUGFyYW1zImluIG4scj0iU3ltYm9sImluIG4mJiJpdGVyYXRvciJpbiBTeW1ib2wsbz0iRmlsZVJlYWRlciJpbiBuJiYiQmxvYiJpbiBuJiZmdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IEJsb2IsITB9Y2F0Y2goZSl7cmV0dXJuITF9fSgpLGE9IkZvcm1EYXRhImluIG4scz0iQXJyYXlCdWZmZXIiaW4gbjtpZihzKXZhciBsPVsiW29iamVjdCBJbnQ4QXJyYXldIiwiW29iamVjdCBVaW50OEFycmF5XSIsIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIiwiW29iamVjdCBJbnQxNkFycmF5XSIsIltvYmplY3QgVWludDE2QXJyYXldIiwiW29iamVjdCBJbnQzMkFycmF5XSIsIltvYmplY3QgVWludDMyQXJyYXldIiwiW29iamVjdCBGbG9hdDMyQXJyYXldIiwiW29iamVjdCBGbG9hdDY0QXJyYXldIl0sYz1BcnJheUJ1ZmZlci5pc1ZpZXd8fGZ1bmN0aW9uKGUpe3JldHVybiBlJiZsLmluZGV4T2YoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKT4tMX07ZnVuY3Rpb24gdShlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJihlPVN0cmluZyhlKSksL1teYS16MC05XC0jJCUmJyorLl5fYHx+IV0vaS50ZXN0KGUpfHwiIj09PWUpdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBjaGFyYWN0ZXIgaW4gaGVhZGVyIGZpZWxkIG5hbWU6ICInK2UrJyInKTtyZXR1cm4gZS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlJiYoZT1TdHJpbmcoZSkpLGV9ZnVuY3Rpb24gcChlKXt2YXIgdD17bmV4dDpmdW5jdGlvbigpe3ZhciB0PWUuc2hpZnQoKTtyZXR1cm57ZG9uZTp2b2lkIDA9PT10LHZhbHVlOnR9fX07cmV0dXJuIHImJih0W1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdH0pLHR9ZnVuY3Rpb24gaChlKXt0aGlzLm1hcD17fSxlIGluc3RhbmNlb2YgaD9lLmZvckVhY2goKGZ1bmN0aW9uKGUsdCl7dGhpcy5hcHBlbmQodCxlKX0pLHRoaXMpOkFycmF5LmlzQXJyYXkoZSk/ZS5mb3JFYWNoKChmdW5jdGlvbihlKXt0aGlzLmFwcGVuZChlWzBdLGVbMV0pfSksdGhpcyk6ZSYmT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7dGhpcy5hcHBlbmQodCxlW3RdKX0pLHRoaXMpfWZ1bmN0aW9uIGYoZSl7aWYoZS5ib2R5VXNlZClyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcigiQWxyZWFkeSByZWFkIikpO2UuYm9keVVzZWQ9ITB9ZnVuY3Rpb24gZyhlKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKHQsbil7ZS5vbmxvYWQ9ZnVuY3Rpb24oKXt0KGUucmVzdWx0KX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7bihlLmVycm9yKX19KSl9ZnVuY3Rpb24gbShlKXt2YXIgdD1uZXcgRmlsZVJlYWRlcixuPWcodCk7cmV0dXJuIHQucmVhZEFzQXJyYXlCdWZmZXIoZSksbn1mdW5jdGlvbiB5KGUpe2lmKGUuc2xpY2UpcmV0dXJuIGUuc2xpY2UoMCk7dmFyIHQ9bmV3IFVpbnQ4QXJyYXkoZS5ieXRlTGVuZ3RoKTtyZXR1cm4gdC5zZXQobmV3IFVpbnQ4QXJyYXkoZSkpLHQuYnVmZmVyfWZ1bmN0aW9uIHYoKXtyZXR1cm4gdGhpcy5ib2R5VXNlZD0hMSx0aGlzLl9pbml0Qm9keT1mdW5jdGlvbihlKXt0aGlzLmJvZHlVc2VkPXRoaXMuYm9keVVzZWQsdGhpcy5fYm9keUluaXQ9ZSxlPyJzdHJpbmciPT10eXBlb2YgZT90aGlzLl9ib2R5VGV4dD1lOm8mJkJsb2IucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSk/dGhpcy5fYm9keUJsb2I9ZTphJiZGb3JtRGF0YS5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKT90aGlzLl9ib2R5Rm9ybURhdGE9ZTppJiZVUkxTZWFyY2hQYXJhbXMucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSk/dGhpcy5fYm9keVRleHQ9ZS50b1N0cmluZygpOnMmJm8mJmZ1bmN0aW9uKGUpe3JldHVybiBlJiZEYXRhVmlldy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKX0oZSk/KHRoaXMuX2JvZHlBcnJheUJ1ZmZlcj15KGUuYnVmZmVyKSx0aGlzLl9ib2R5SW5pdD1uZXcgQmxvYihbdGhpcy5fYm9keUFycmF5QnVmZmVyXSkpOnMmJihBcnJheUJ1ZmZlci5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKXx8YyhlKSk/dGhpcy5fYm9keUFycmF5QnVmZmVyPXkoZSk6dGhpcy5fYm9keVRleHQ9ZT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk6dGhpcy5fYm9keVRleHQ9IiIsdGhpcy5oZWFkZXJzLmdldCgiY29udGVudC10eXBlIil8fCgic3RyaW5nIj09dHlwZW9mIGU/dGhpcy5oZWFkZXJzLnNldCgiY29udGVudC10eXBlIiwidGV4dC9wbGFpbjtjaGFyc2V0PVVURi04Iik6dGhpcy5fYm9keUJsb2ImJnRoaXMuX2JvZHlCbG9iLnR5cGU/dGhpcy5oZWFkZXJzLnNldCgiY29udGVudC10eXBlIix0aGlzLl9ib2R5QmxvYi50eXBlKTppJiZVUkxTZWFyY2hQYXJhbXMucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSkmJnRoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04IikpfSxvJiYodGhpcy5ibG9iPWZ1bmN0aW9uKCl7dmFyIGU9Zih0aGlzKTtpZihlKXJldHVybiBlO2lmKHRoaXMuX2JvZHlCbG9iKXJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fYm9keUJsb2IpO2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBCbG9iKFt0aGlzLl9ib2R5QXJyYXlCdWZmZXJdKSk7aWYodGhpcy5fYm9keUZvcm1EYXRhKXRocm93IG5ldyBFcnJvcigiY291bGQgbm90IHJlYWQgRm9ybURhdGEgYm9keSBhcyBibG9iIik7cmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgQmxvYihbdGhpcy5fYm9keVRleHRdKSl9LHRoaXMuYXJyYXlCdWZmZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fYm9keUFycmF5QnVmZmVyP2YodGhpcyl8fChBcnJheUJ1ZmZlci5pc1ZpZXcodGhpcy5fYm9keUFycmF5QnVmZmVyKT9Qcm9taXNlLnJlc29sdmUodGhpcy5fYm9keUFycmF5QnVmZmVyLmJ1ZmZlci5zbGljZSh0aGlzLl9ib2R5QXJyYXlCdWZmZXIuYnl0ZU9mZnNldCx0aGlzLl9ib2R5QXJyYXlCdWZmZXIuYnl0ZU9mZnNldCt0aGlzLl9ib2R5QXJyYXlCdWZmZXIuYnl0ZUxlbmd0aCkpOlByb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5QXJyYXlCdWZmZXIpKTp0aGlzLmJsb2IoKS50aGVuKG0pfSksdGhpcy50ZXh0PWZ1bmN0aW9uKCl7dmFyIGU9Zih0aGlzKTtpZihlKXJldHVybiBlO2lmKHRoaXMuX2JvZHlCbG9iKXJldHVybiBmdW5jdGlvbihlKXt2YXIgdD1uZXcgRmlsZVJlYWRlcixuPWcodCk7cmV0dXJuIHQucmVhZEFzVGV4dChlKSxufSh0aGlzLl9ib2R5QmxvYik7aWYodGhpcy5fYm9keUFycmF5QnVmZmVyKXJldHVybiBQcm9taXNlLnJlc29sdmUoZnVuY3Rpb24oZSl7Zm9yKHZhciB0PW5ldyBVaW50OEFycmF5KGUpLG49bmV3IEFycmF5KHQubGVuZ3RoKSxpPTA7aTx0Lmxlbmd0aDtpKyspbltpXT1TdHJpbmcuZnJvbUNoYXJDb2RlKHRbaV0pO3JldHVybiBuLmpvaW4oIiIpfSh0aGlzLl9ib2R5QXJyYXlCdWZmZXIpKTtpZih0aGlzLl9ib2R5Rm9ybURhdGEpdGhyb3cgbmV3IEVycm9yKCJjb3VsZCBub3QgcmVhZCBGb3JtRGF0YSBib2R5IGFzIHRleHQiKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlUZXh0KX0sYSYmKHRoaXMuZm9ybURhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50ZXh0KCkudGhlbih3KX0pLHRoaXMuanNvbj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRleHQoKS50aGVuKEpTT04ucGFyc2UpfSx0aGlzfWgucHJvdG90eXBlLmFwcGVuZD1mdW5jdGlvbihlLHQpe2U9dShlKSx0PWQodCk7dmFyIG49dGhpcy5tYXBbZV07dGhpcy5tYXBbZV09bj9uKyIsICIrdDp0fSxoLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oZSl7ZGVsZXRlIHRoaXMubWFwW3UoZSldfSxoLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9dShlKSx0aGlzLmhhcyhlKT90aGlzLm1hcFtlXTpudWxsfSxoLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMubWFwLmhhc093blByb3BlcnR5KHUoZSkpfSxoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oZSx0KXt0aGlzLm1hcFt1KGUpXT1kKHQpfSxoLnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIHRoaXMubWFwKXRoaXMubWFwLmhhc093blByb3BlcnR5KG4pJiZlLmNhbGwodCx0aGlzLm1hcFtuXSxuLHRoaXMpfSxoLnByb3RvdHlwZS5rZXlzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIHRoaXMuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlLnB1c2gobil9KSkscChlKX0saC5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIHRoaXMuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZS5wdXNoKHQpfSkpLHAoZSl9LGgucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKChmdW5jdGlvbih0LG4pe2UucHVzaChbbix0XSl9KSkscChlKX0sciYmKGgucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09aC5wcm90b3R5cGUuZW50cmllcyk7dmFyIGI9WyJERUxFVEUiLCJHRVQiLCJIRUFEIiwiT1BUSU9OUyIsIlBPU1QiLCJQVVQiXTtmdW5jdGlvbiBfKGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgXykpdGhyb3cgbmV3IFR5cGVFcnJvcignUGxlYXNlIHVzZSB0aGUgIm5ldyIgb3BlcmF0b3IsIHRoaXMgRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uJyk7dmFyIG49KHQ9dHx8e30pLmJvZHk7aWYoZSBpbnN0YW5jZW9mIF8pe2lmKGUuYm9keVVzZWQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQWxyZWFkeSByZWFkIik7dGhpcy51cmw9ZS51cmwsdGhpcy5jcmVkZW50aWFscz1lLmNyZWRlbnRpYWxzLHQuaGVhZGVyc3x8KHRoaXMuaGVhZGVycz1uZXcgaChlLmhlYWRlcnMpKSx0aGlzLm1ldGhvZD1lLm1ldGhvZCx0aGlzLm1vZGU9ZS5tb2RlLHRoaXMuc2lnbmFsPWUuc2lnbmFsLG58fG51bGw9PWUuX2JvZHlJbml0fHwobj1lLl9ib2R5SW5pdCxlLmJvZHlVc2VkPSEwKX1lbHNlIHRoaXMudXJsPVN0cmluZyhlKTtpZih0aGlzLmNyZWRlbnRpYWxzPXQuY3JlZGVudGlhbHN8fHRoaXMuY3JlZGVudGlhbHN8fCJzYW1lLW9yaWdpbiIsIXQuaGVhZGVycyYmdGhpcy5oZWFkZXJzfHwodGhpcy5oZWFkZXJzPW5ldyBoKHQuaGVhZGVycykpLHRoaXMubWV0aG9kPWZ1bmN0aW9uKGUpe3ZhciB0PWUudG9VcHBlckNhc2UoKTtyZXR1cm4gYi5pbmRleE9mKHQpPi0xP3Q6ZX0odC5tZXRob2R8fHRoaXMubWV0aG9kfHwiR0VUIiksdGhpcy5tb2RlPXQubW9kZXx8dGhpcy5tb2RlfHxudWxsLHRoaXMuc2lnbmFsPXQuc2lnbmFsfHx0aGlzLnNpZ25hbCx0aGlzLnJlZmVycmVyPW51bGwsKCJHRVQiPT09dGhpcy5tZXRob2R8fCJIRUFEIj09PXRoaXMubWV0aG9kKSYmbil0aHJvdyBuZXcgVHlwZUVycm9yKCJCb2R5IG5vdCBhbGxvd2VkIGZvciBHRVQgb3IgSEVBRCByZXF1ZXN0cyIpO2lmKHRoaXMuX2luaXRCb2R5KG4pLCEoIkdFVCIhPT10aGlzLm1ldGhvZCYmIkhFQUQiIT09dGhpcy5tZXRob2R8fCJuby1zdG9yZSIhPT10LmNhY2hlJiYibm8tY2FjaGUiIT09dC5jYWNoZSkpe3ZhciBpPS8oWz8mXSlfPVteJl0qLztpZihpLnRlc3QodGhpcy51cmwpKXRoaXMudXJsPXRoaXMudXJsLnJlcGxhY2UoaSwiJDFfPSIrKG5ldyBEYXRlKS5nZXRUaW1lKCkpO2Vsc2V7dGhpcy51cmwrPSgvXD8vLnRlc3QodGhpcy51cmwpPyImIjoiPyIpKyJfPSIrKG5ldyBEYXRlKS5nZXRUaW1lKCl9fX1mdW5jdGlvbiB3KGUpe3ZhciB0PW5ldyBGb3JtRGF0YTtyZXR1cm4gZS50cmltKCkuc3BsaXQoIiYiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihlKXt2YXIgbj1lLnNwbGl0KCI9IiksaT1uLnNoaWZ0KCkucmVwbGFjZSgvXCsvZywiICIpLHI9bi5qb2luKCI9IikucmVwbGFjZSgvXCsvZywiICIpO3QuYXBwZW5kKGRlY29kZVVSSUNvbXBvbmVudChpKSxkZWNvZGVVUklDb21wb25lbnQocikpfX0pKSx0fWZ1bmN0aW9uIGsoZSl7dmFyIHQ9bmV3IGg7cmV0dXJuIGUucmVwbGFjZSgvXHI/XG5bXHQgXSsvZywiICIpLnNwbGl0KCJcciIpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIDA9PT1lLmluZGV4T2YoIlxuIik/ZS5zdWJzdHIoMSxlLmxlbmd0aCk6ZX0pKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1lLnNwbGl0KCI6IiksaT1uLnNoaWZ0KCkudHJpbSgpO2lmKGkpe3ZhciByPW4uam9pbigiOiIpLnRyaW0oKTt0LmFwcGVuZChpLHIpfX0pKSx0fWZ1bmN0aW9uIEMoZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBDKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdQbGVhc2UgdXNlIHRoZSAibmV3IiBvcGVyYXRvciwgdGhpcyBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4nKTt0fHwodD17fSksdGhpcy50eXBlPSJkZWZhdWx0Iix0aGlzLnN0YXR1cz12b2lkIDA9PT10LnN0YXR1cz8yMDA6dC5zdGF0dXMsdGhpcy5vaz10aGlzLnN0YXR1cz49MjAwJiZ0aGlzLnN0YXR1czwzMDAsdGhpcy5zdGF0dXNUZXh0PXZvaWQgMD09PXQuc3RhdHVzVGV4dD8iIjoiIit0LnN0YXR1c1RleHQsdGhpcy5oZWFkZXJzPW5ldyBoKHQuaGVhZGVycyksdGhpcy51cmw9dC51cmx8fCIiLHRoaXMuX2luaXRCb2R5KGUpfV8ucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfKHRoaXMse2JvZHk6dGhpcy5fYm9keUluaXR9KX0sdi5jYWxsKF8ucHJvdG90eXBlKSx2LmNhbGwoQy5wcm90b3R5cGUpLEMucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBDKHRoaXMuX2JvZHlJbml0LHtzdGF0dXM6dGhpcy5zdGF0dXMsc3RhdHVzVGV4dDp0aGlzLnN0YXR1c1RleHQsaGVhZGVyczpuZXcgaCh0aGlzLmhlYWRlcnMpLHVybDp0aGlzLnVybH0pfSxDLmVycm9yPWZ1bmN0aW9uKCl7dmFyIGU9bmV3IEMobnVsbCx7c3RhdHVzOjAsc3RhdHVzVGV4dDoiIn0pO3JldHVybiBlLnR5cGU9ImVycm9yIixlfTt2YXIgeD1bMzAxLDMwMiwzMDMsMzA3LDMwOF07Qy5yZWRpcmVjdD1mdW5jdGlvbihlLHQpe2lmKC0xPT09eC5pbmRleE9mKHQpKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbnZhbGlkIHN0YXR1cyBjb2RlIik7cmV0dXJuIG5ldyBDKG51bGwse3N0YXR1czp0LGhlYWRlcnM6e2xvY2F0aW9uOmV9fSl9LHQuRE9NRXhjZXB0aW9uPW4uRE9NRXhjZXB0aW9uO3RyeXtuZXcgdC5ET01FeGNlcHRpb259Y2F0Y2goZSl7dC5ET01FeGNlcHRpb249ZnVuY3Rpb24oZSx0KXt0aGlzLm1lc3NhZ2U9ZSx0aGlzLm5hbWU9dDt2YXIgbj1FcnJvcihlKTt0aGlzLnN0YWNrPW4uc3RhY2t9LHQuRE9NRXhjZXB0aW9uLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSksdC5ET01FeGNlcHRpb24ucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQuRE9NRXhjZXB0aW9ufWZ1bmN0aW9uIFMoZSxpKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKHIsYSl7dmFyIGw9bmV3IF8oZSxpKTtpZihsLnNpZ25hbCYmbC5zaWduYWwuYWJvcnRlZClyZXR1cm4gYShuZXcgdC5ET01FeGNlcHRpb24oIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpO3ZhciBjPW5ldyBYTUxIdHRwUmVxdWVzdDtmdW5jdGlvbiB1KCl7Yy5hYm9ydCgpfWMub25sb2FkPWZ1bmN0aW9uKCl7dmFyIGU9e3N0YXR1czpjLnN0YXR1cyxzdGF0dXNUZXh0OmMuc3RhdHVzVGV4dCxoZWFkZXJzOmsoYy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiIpfTtlLnVybD0icmVzcG9uc2VVUkwiaW4gYz9jLnJlc3BvbnNlVVJMOmUuaGVhZGVycy5nZXQoIlgtUmVxdWVzdC1VUkwiKTt2YXIgdD0icmVzcG9uc2UiaW4gYz9jLnJlc3BvbnNlOmMucmVzcG9uc2VUZXh0O3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7cihuZXcgQyh0LGUpKX0pLDApfSxjLm9uZXJyb3I9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe2EobmV3IFR5cGVFcnJvcigiTmV0d29yayByZXF1ZXN0IGZhaWxlZCIpKX0pLDApfSxjLm9udGltZW91dD1mdW5jdGlvbigpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7YShuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSksMCl9LGMub25hYm9ydD1mdW5jdGlvbigpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7YShuZXcgdC5ET01FeGNlcHRpb24oIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpfSksMCl9LGMub3BlbihsLm1ldGhvZCxmdW5jdGlvbihlKXt0cnl7cmV0dXJuIiI9PT1lJiZuLmxvY2F0aW9uLmhyZWY/bi5sb2NhdGlvbi5ocmVmOmV9Y2F0Y2godCl7cmV0dXJuIGV9fShsLnVybCksITApLCJpbmNsdWRlIj09PWwuY3JlZGVudGlhbHM/Yy53aXRoQ3JlZGVudGlhbHM9ITA6Im9taXQiPT09bC5jcmVkZW50aWFscyYmKGMud2l0aENyZWRlbnRpYWxzPSExKSwicmVzcG9uc2VUeXBlImluIGMmJihvP2MucmVzcG9uc2VUeXBlPSJibG9iIjpzJiZsLmhlYWRlcnMuZ2V0KCJDb250ZW50LVR5cGUiKSYmLTEhPT1sLmhlYWRlcnMuZ2V0KCJDb250ZW50LVR5cGUiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iKSYmKGMucmVzcG9uc2VUeXBlPSJhcnJheWJ1ZmZlciIpKSwhaXx8Im9iamVjdCIhPXR5cGVvZiBpLmhlYWRlcnN8fGkuaGVhZGVycyBpbnN0YW5jZW9mIGg/bC5oZWFkZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUsdCl7Yy5zZXRSZXF1ZXN0SGVhZGVyKHQsZSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoaS5oZWFkZXJzKS5mb3JFYWNoKChmdW5jdGlvbihlKXtjLnNldFJlcXVlc3RIZWFkZXIoZSxkKGkuaGVhZGVyc1tlXSkpfSkpLGwuc2lnbmFsJiYobC5zaWduYWwuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHUpLGMub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PWMucmVhZHlTdGF0ZSYmbC5zaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHUpfSksYy5zZW5kKHZvaWQgMD09PWwuX2JvZHlJbml0P251bGw6bC5fYm9keUluaXQpfSkpfVMucG9seWZpbGw9ITAsbi5mZXRjaHx8KG4uZmV0Y2g9UyxuLkhlYWRlcnM9aCxuLlJlcXVlc3Q9XyxuLlJlc3BvbnNlPUMpLHQuSGVhZGVycz1oLHQuUmVxdWVzdD1fLHQuUmVzcG9uc2U9Qyx0LmZldGNoPVN9KHt9KX0pKHIpLHIuZmV0Y2gucG9ueWZpbGw9ITAsZGVsZXRlIHIuZmV0Y2gucG9seWZpbGw7dmFyIG89aS5mZXRjaD9pOnI7KHQ9by5mZXRjaCkuZGVmYXVsdD1vLmZldGNoLHQuZmV0Y2g9by5mZXRjaCx0LkhlYWRlcnM9by5IZWFkZXJzLHQuUmVxdWVzdD1vLlJlcXVlc3QsdC5SZXNwb25zZT1vLlJlc3BvbnNlLGUuZXhwb3J0cz10fSkuY2FsbCh0aGlzLG4oImM4YmEiKSl9LCI1ZTQ5IjpmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKGkpe3ZhciByO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBmZXRjaCYmKHI9dm9pZCAwIT09aSYmaS5mZXRjaD9pLmZldGNoOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuZmV0Y2g/d2luZG93LmZldGNoOmZldGNoKSwidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvdyl7dmFyIG89cnx8bigiNWQ2MSIpO28uZGVmYXVsdCYmKG89by5kZWZhdWx0KSx0LmRlZmF1bHQ9byxlLmV4cG9ydHM9dC5kZWZhdWx0fX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiNWU3NyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI4M2FiIikscj1uKCIxYTJkIiksbz1GdW5jdGlvbi5wcm90b3R5cGUsYT1pJiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yLHM9cihvLCJuYW1lIiksbD1zJiYic29tZXRoaW5nIj09PWZ1bmN0aW9uKCl7fS5uYW1lLGM9cyYmKCFpfHxpJiZhKG8sIm5hbWUiKS5jb25maWd1cmFibGUpO2UuZXhwb3J0cz17RVhJU1RTOnMsUFJPUEVSOmwsQ09ORklHVVJBQkxFOmN9fSwiNWU3ZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyLG8sYT1uKCIyM2U3Iikscz1uKCJjNDMwIiksbD1uKCI2MDVkIiksYz1uKCJkYTg0IiksdT1uKCJjNjViIiksZD1uKCJjYjJkIikscD1uKCJkMmJiIiksaD1uKCJkNDRlIiksZj1uKCIyNjI2IiksZz1uKCI1OWVkIiksbT1uKCIxNjI2IikseT1uKCI4NjFkIiksdj1uKCIxOWFhIiksYj1uKCI0ODQwIiksXz1uKCIyY2Y0Iikuc2V0LHc9bigiYjU3NSIpLGs9bigiNDRkZSIpLEM9bigiZTY2NyIpLHg9bigiMDFiNCIpLFM9bigiNjlmMyIpLEw9bigiZDI1NiIpLFQ9bigiNDczOCIpLE89bigiZjA2OSIpLEU9IlByb21pc2UiLGo9VC5DT05TVFJVQ1RPUixQPVQuUkVKRUNUSU9OX0VWRU5ULFI9VC5TVUJDTEFTU0lORyxBPVMuZ2V0dGVyRm9yKEUpLEk9Uy5zZXQsJD1MJiZMLnByb3RvdHlwZSxEPUwsUT0kLE09Yy5UeXBlRXJyb3IsTj1jLmRvY3VtZW50LEI9Yy5wcm9jZXNzLHE9Ty5mLEg9cSxGPSEhKE4mJk4uY3JlYXRlRXZlbnQmJmMuZGlzcGF0Y2hFdmVudCksVT0idW5oYW5kbGVkcmVqZWN0aW9uIix6PWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiEoIXkoZSl8fCFtKHQ9ZS50aGVuKSkmJnR9LFg9ZnVuY3Rpb24oZSx0KXt2YXIgbixpLHIsbz10LnZhbHVlLGE9MT09PXQuc3RhdGUscz1hP2Uub2s6ZS5mYWlsLGw9ZS5yZXNvbHZlLGM9ZS5yZWplY3QsZD1lLmRvbWFpbjt0cnl7cz8oYXx8KDI9PT10LnJlamVjdGlvbiYmSih0KSx0LnJlamVjdGlvbj0xKSwhMD09PXM/bj1vOihkJiZkLmVudGVyKCksbj1zKG8pLGQmJihkLmV4aXQoKSxyPSEwKSksbj09PWUucHJvbWlzZT9jKG5ldyBNKCJQcm9taXNlLWNoYWluIGN5Y2xlIikpOihpPXoobikpP3UoaSxuLGwsYyk6bChuKSk6YyhvKX1jYXRjaChlKXtkJiYhciYmZC5leGl0KCksYyhlKX19LFY9ZnVuY3Rpb24oZSx0KXtlLm5vdGlmaWVkfHwoZS5ub3RpZmllZD0hMCx3KChmdW5jdGlvbigpe2Zvcih2YXIgbixpPWUucmVhY3Rpb25zO249aS5nZXQoKTspWChuLGUpO2Uubm90aWZpZWQ9ITEsdCYmIWUucmVqZWN0aW9uJiZZKGUpfSkpKX0sVz1mdW5jdGlvbihlLHQsbil7dmFyIGkscjtGPygoaT1OLmNyZWF0ZUV2ZW50KCJFdmVudCIpKS5wcm9taXNlPXQsaS5yZWFzb249bixpLmluaXRFdmVudChlLCExLCEwKSxjLmRpc3BhdGNoRXZlbnQoaSkpOmk9e3Byb21pc2U6dCxyZWFzb246bn0sIVAmJihyPWNbIm9uIitlXSk/cihpKTplPT09VSYmaygiVW5oYW5kbGVkIHByb21pc2UgcmVqZWN0aW9uIixuKX0sWT1mdW5jdGlvbihlKXt1KF8sYywoZnVuY3Rpb24oKXt2YXIgdCxuPWUuZmFjYWRlLGk9ZS52YWx1ZTtpZihLKGUpJiYodD1DKChmdW5jdGlvbigpe2w/Qi5lbWl0KCJ1bmhhbmRsZWRSZWplY3Rpb24iLGksbik6VyhVLG4saSl9KSksZS5yZWplY3Rpb249bHx8SyhlKT8yOjEsdC5lcnJvcikpdGhyb3cgdC52YWx1ZX0pKX0sSz1mdW5jdGlvbihlKXtyZXR1cm4gMSE9PWUucmVqZWN0aW9uJiYhZS5wYXJlbnR9LEo9ZnVuY3Rpb24oZSl7dShfLGMsKGZ1bmN0aW9uKCl7dmFyIHQ9ZS5mYWNhZGU7bD9CLmVtaXQoInJlamVjdGlvbkhhbmRsZWQiLHQpOlcoInJlamVjdGlvbmhhbmRsZWQiLHQsZS52YWx1ZSl9KSl9LEc9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBmdW5jdGlvbihpKXtlKHQsaSxuKX19LFo9ZnVuY3Rpb24oZSx0LG4pe2UuZG9uZXx8KGUuZG9uZT0hMCxuJiYoZT1uKSxlLnZhbHVlPXQsZS5zdGF0ZT0yLFYoZSwhMCkpfSxlZT1mdW5jdGlvbihlLHQsbil7aWYoIWUuZG9uZSl7ZS5kb25lPSEwLG4mJihlPW4pO3RyeXtpZihlLmZhY2FkZT09PXQpdGhyb3cgbmV3IE0oIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7dmFyIGk9eih0KTtpP3coKGZ1bmN0aW9uKCl7dmFyIG49e2RvbmU6ITF9O3RyeXt1KGksdCxHKGVlLG4sZSksRyhaLG4sZSkpfWNhdGNoKHQpe1oobix0LGUpfX0pKTooZS52YWx1ZT10LGUuc3RhdGU9MSxWKGUsITEpKX1jYXRjaCh0KXtaKHtkb25lOiExfSx0LGUpfX19O2lmKGomJihRPShEPWZ1bmN0aW9uKGUpe3YodGhpcyxRKSxnKGUpLHUoaSx0aGlzKTt2YXIgdD1BKHRoaXMpO3RyeXtlKEcoZWUsdCksRyhaLHQpKX1jYXRjaChlKXtaKHQsZSl9fSkucHJvdG90eXBlLChpPWZ1bmN0aW9uKGUpe0kodGhpcyx7dHlwZTpFLGRvbmU6ITEsbm90aWZpZWQ6ITEscGFyZW50OiExLHJlYWN0aW9uczpuZXcgeCxyZWplY3Rpb246ITEsc3RhdGU6MCx2YWx1ZTp2b2lkIDB9KX0pLnByb3RvdHlwZT1kKFEsInRoZW4iLChmdW5jdGlvbihlLHQpe3ZhciBuPUEodGhpcyksaT1xKGIodGhpcyxEKSk7cmV0dXJuIG4ucGFyZW50PSEwLGkub2s9IW0oZSl8fGUsaS5mYWlsPW0odCkmJnQsaS5kb21haW49bD9CLmRvbWFpbjp2b2lkIDAsMD09PW4uc3RhdGU/bi5yZWFjdGlvbnMuYWRkKGkpOncoKGZ1bmN0aW9uKCl7WChpLG4pfSkpLGkucHJvbWlzZX0pKSxyPWZ1bmN0aW9uKCl7dmFyIGU9bmV3IGksdD1BKGUpO3RoaXMucHJvbWlzZT1lLHRoaXMucmVzb2x2ZT1HKGVlLHQpLHRoaXMucmVqZWN0PUcoWix0KX0sTy5mPXE9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1EfHx2b2lkIDA9PT1lP25ldyByKGUpOkgoZSl9LCFzJiZtKEwpJiYkIT09T2JqZWN0LnByb3RvdHlwZSkpe289JC50aGVuLFJ8fGQoJCwidGhlbiIsKGZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gbmV3IEQoKGZ1bmN0aW9uKGUsdCl7dShvLG4sZSx0KX0pKS50aGVuKGUsdCl9KSx7dW5zYWZlOiEwfSk7dHJ5e2RlbGV0ZSAkLmNvbnN0cnVjdG9yfWNhdGNoKGUpe31wJiZwKCQsUSl9YSh7Z2xvYmFsOiEwLGNvbnN0cnVjdG9yOiEwLHdyYXA6ITAsZm9yY2VkOmp9LHtQcm9taXNlOkR9KSxoKEQsRSwhMSwhMCksZihFKX0sIjVlZWQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZDI1NiIpLHI9bigiMWM3ZSIpLG89bigiNDczOCIpLkNPTlNUUlVDVE9SO2UuZXhwb3J0cz1vfHwhcigoZnVuY3Rpb24oZSl7aS5hbGwoZSkudGhlbih2b2lkIDAsKGZ1bmN0aW9uKCl7fSkpfSkpfSwiNWYzNCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEh9KSk7Y29uc3QgaT17dHlwZToibG9nZ2VyIixsb2coZSl7dGhpcy5vdXRwdXQoImxvZyIsZSl9LHdhcm4oZSl7dGhpcy5vdXRwdXQoIndhcm4iLGUpfSxlcnJvcihlKXt0aGlzLm91dHB1dCgiZXJyb3IiLGUpfSxvdXRwdXQoZSx0KXtjb25zb2xlJiZjb25zb2xlW2VdJiZjb25zb2xlW2VdLmFwcGx5KGNvbnNvbGUsdCl9fTtjbGFzcyBye2NvbnN0cnVjdG9yKGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTt0aGlzLmluaXQoZSx0KX1pbml0KGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTt0aGlzLnByZWZpeD10LnByZWZpeHx8ImkxOG5leHQ6Iix0aGlzLmxvZ2dlcj1lfHxpLHRoaXMub3B0aW9ucz10LHRoaXMuZGVidWc9dC5kZWJ1Z31sb2coKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlKSxuPTA7bjxlO24rKyl0W25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gdGhpcy5mb3J3YXJkKHQsImxvZyIsIiIsITApfXdhcm4oKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlKSxuPTA7bjxlO24rKyl0W25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gdGhpcy5mb3J3YXJkKHQsIndhcm4iLCIiLCEwKX1lcnJvcigpe2Zvcih2YXIgZT1hcmd1bWVudHMubGVuZ3RoLHQ9bmV3IEFycmF5KGUpLG49MDtuPGU7bisrKXRbbl09YXJndW1lbnRzW25dO3JldHVybiB0aGlzLmZvcndhcmQodCwiZXJyb3IiLCIiKX1kZXByZWNhdGUoKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlKSxuPTA7bjxlO24rKyl0W25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gdGhpcy5mb3J3YXJkKHQsIndhcm4iLCJXQVJOSU5HIERFUFJFQ0FURUQ6ICIsITApfWZvcndhcmQoZSx0LG4saSl7cmV0dXJuIGkmJiF0aGlzLmRlYnVnP251bGw6KCJzdHJpbmciPT10eXBlb2YgZVswXSYmKGVbMF09YCR7bn0ke3RoaXMucHJlZml4fSAke2VbMF19YCksdGhpcy5sb2dnZXJbdF0oZSkpfWNyZWF0ZShlKXtyZXR1cm4gbmV3IHIodGhpcy5sb2dnZXIse3ByZWZpeDpgJHt0aGlzLnByZWZpeH06JHtlfTpgLC4uLnRoaXMub3B0aW9uc30pfWNsb25lKGUpe3JldHVybihlPWV8fHRoaXMub3B0aW9ucykucHJlZml4PWUucHJlZml4fHx0aGlzLnByZWZpeCxuZXcgcih0aGlzLmxvZ2dlcixlKX19dmFyIG89bmV3IHI7Y2xhc3MgYXtjb25zdHJ1Y3Rvcigpe3RoaXMub2JzZXJ2ZXJzPXt9fW9uKGUsdCl7cmV0dXJuIGUuc3BsaXQoIiAiKS5mb3JFYWNoKGU9Pnt0aGlzLm9ic2VydmVyc1tlXXx8KHRoaXMub2JzZXJ2ZXJzW2VdPW5ldyBNYXApO2NvbnN0IG49dGhpcy5vYnNlcnZlcnNbZV0uZ2V0KHQpfHwwO3RoaXMub2JzZXJ2ZXJzW2VdLnNldCh0LG4rMSl9KSx0aGlzfW9mZihlLHQpe3RoaXMub2JzZXJ2ZXJzW2VdJiYodD90aGlzLm9ic2VydmVyc1tlXS5kZWxldGUodCk6ZGVsZXRlIHRoaXMub2JzZXJ2ZXJzW2VdKX1lbWl0KGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KHQ+MT90LTE6MCksaT0xO2k8dDtpKyspbltpLTFdPWFyZ3VtZW50c1tpXTtpZih0aGlzLm9ic2VydmVyc1tlXSl7QXJyYXkuZnJvbSh0aGlzLm9ic2VydmVyc1tlXS5lbnRyaWVzKCkpLmZvckVhY2goZT0+e2xldFt0LGldPWU7Zm9yKGxldCBlPTA7ZTxpO2UrKyl0KC4uLm4pfSl9aWYodGhpcy5vYnNlcnZlcnNbIioiXSl7QXJyYXkuZnJvbSh0aGlzLm9ic2VydmVyc1siKiJdLmVudHJpZXMoKSkuZm9yRWFjaCh0PT57bGV0W2kscl09dDtmb3IobGV0IHQ9MDt0PHI7dCsrKWkuYXBwbHkoaSxbZSwuLi5uXSl9KX19fWZ1bmN0aW9uIHMoKXtsZXQgZSx0O2NvbnN0IG49bmV3IFByb21pc2UoKG4saSk9PntlPW4sdD1pfSk7cmV0dXJuIG4ucmVzb2x2ZT1lLG4ucmVqZWN0PXQsbn1mdW5jdGlvbiBsKGUpe3JldHVybiBudWxsPT1lPyIiOiIiK2V9Y29uc3QgYz0vIyMjL2c7ZnVuY3Rpb24gdShlLHQsbil7ZnVuY3Rpb24gaShlKXtyZXR1cm4gZSYmZS5pbmRleE9mKCIjIyMiKT4tMT9lLnJlcGxhY2UoYywiLiIpOmV9ZnVuY3Rpb24gcigpe3JldHVybiFlfHwic3RyaW5nIj09dHlwZW9mIGV9Y29uc3Qgbz0ic3RyaW5nIiE9dHlwZW9mIHQ/dDp0LnNwbGl0KCIuIik7bGV0IGE9MDtmb3IoO2E8by5sZW5ndGgtMTspe2lmKHIoKSlyZXR1cm57fTtjb25zdCB0PWkob1thXSk7IWVbdF0mJm4mJihlW3RdPW5ldyBuKSxlPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpP2VbdF06e30sKythfXJldHVybiByKCk/e306e29iajplLGs6aShvW2FdKX19ZnVuY3Rpb24gZChlLHQsbil7Y29uc3R7b2JqOmksazpyfT11KGUsdCxPYmplY3QpO2lmKHZvaWQgMCE9PWl8fDE9PT10Lmxlbmd0aClyZXR1cm4gdm9pZChpW3JdPW4pO2xldCBvPXRbdC5sZW5ndGgtMV0sYT10LnNsaWNlKDAsdC5sZW5ndGgtMSkscz11KGUsYSxPYmplY3QpO2Zvcig7dm9pZCAwPT09cy5vYmomJmEubGVuZ3RoOylvPWAke2FbYS5sZW5ndGgtMV19LiR7b31gLGE9YS5zbGljZSgwLGEubGVuZ3RoLTEpLHM9dShlLGEsT2JqZWN0KSxzJiZzLm9iaiYmdm9pZCAwIT09cy5vYmpbYCR7cy5rfS4ke299YF0mJihzLm9iaj12b2lkIDApO3Mub2JqW2Ake3Mua30uJHtvfWBdPW59ZnVuY3Rpb24gcChlLHQpe2NvbnN0e29iajpuLGs6aX09dShlLHQpO2lmKG4pcmV0dXJuIG5baV19ZnVuY3Rpb24gaChlLHQsbil7Y29uc3QgaT1wKGUsbik7cmV0dXJuIHZvaWQgMCE9PWk/aTpwKHQsbil9ZnVuY3Rpb24gZihlKXtyZXR1cm4gZS5yZXBsYWNlKC9bXC1cW1xdXC9ce1x9XChcKVwqXCtcP1wuXFxcXlwkXHxdL2csIlxcJCYiKX12YXIgZz17IiYiOiImYW1wOyIsIjwiOiImbHQ7IiwiPiI6IiZndDsiLCciJzoiJnF1b3Q7IiwiJyI6IiYjMzk7IiwiLyI6IiYjeDJGOyJ9O2Z1bmN0aW9uIG0oZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2UucmVwbGFjZSgvWyY8PiInXC9dL2csZT0+Z1tlXSk6ZX1jb25zdCB5PVsiICIsIiwiLCI/IiwiISIsIjsiXSx2PW5ldyBjbGFzc3tjb25zdHJ1Y3RvcihlKXt0aGlzLmNhcGFjaXR5PWUsdGhpcy5yZWdFeHBNYXA9bmV3IE1hcCx0aGlzLnJlZ0V4cFF1ZXVlPVtdfWdldFJlZ0V4cChlKXtjb25zdCB0PXRoaXMucmVnRXhwTWFwLmdldChlKTtpZih2b2lkIDAhPT10KXJldHVybiB0O2NvbnN0IG49bmV3IFJlZ0V4cChlKTtyZXR1cm4gdGhpcy5yZWdFeHBRdWV1ZS5sZW5ndGg9PT10aGlzLmNhcGFjaXR5JiZ0aGlzLnJlZ0V4cE1hcC5kZWxldGUodGhpcy5yZWdFeHBRdWV1ZS5zaGlmdCgpKSx0aGlzLnJlZ0V4cE1hcC5zZXQoZSxuKSx0aGlzLnJlZ0V4cFF1ZXVlLnB1c2goZSksbn19KDIwKTtmdW5jdGlvbiBiKGUsdCl7bGV0IG49YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOiIuIjtpZighZSlyZXR1cm47aWYoZVt0XSlyZXR1cm4gZVt0XTtjb25zdCBpPXQuc3BsaXQobik7bGV0IHI9ZTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoOyl7aWYoIXJ8fCJvYmplY3QiIT10eXBlb2YgcilyZXR1cm47bGV0IHQsbz0iIjtmb3IobGV0IGE9ZTthPGkubGVuZ3RoOysrYSlpZihhIT09ZSYmKG8rPW4pLG8rPWlbYV0sdD1yW29dLHZvaWQgMCE9PXQpe2lmKFsic3RyaW5nIiwibnVtYmVyIiwiYm9vbGVhbiJdLmluZGV4T2YodHlwZW9mIHQpPi0xJiZhPGkubGVuZ3RoLTEpY29udGludWU7ZSs9YS1lKzE7YnJlYWt9cj10fXJldHVybiByfWZ1bmN0aW9uIF8oZSl7cmV0dXJuIGUmJmUuaW5kZXhPZigiXyIpPjA/ZS5yZXBsYWNlKCJfIiwiLSIpOmV9Y2xhc3MgdyBleHRlbmRzIGF7Y29uc3RydWN0b3IoZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOntuczpbInRyYW5zbGF0aW9uIl0sZGVmYXVsdE5TOiJ0cmFuc2xhdGlvbiJ9O3N1cGVyKCksdGhpcy5kYXRhPWV8fHt9LHRoaXMub3B0aW9ucz10LHZvaWQgMD09PXRoaXMub3B0aW9ucy5rZXlTZXBhcmF0b3ImJih0aGlzLm9wdGlvbnMua2V5U2VwYXJhdG9yPSIuIiksdm9pZCAwPT09dGhpcy5vcHRpb25zLmlnbm9yZUpTT05TdHJ1Y3R1cmUmJih0aGlzLm9wdGlvbnMuaWdub3JlSlNPTlN0cnVjdHVyZT0hMCl9YWRkTmFtZXNwYWNlcyhlKXt0aGlzLm9wdGlvbnMubnMuaW5kZXhPZihlKTwwJiZ0aGlzLm9wdGlvbnMubnMucHVzaChlKX1yZW1vdmVOYW1lc3BhY2VzKGUpe2NvbnN0IHQ9dGhpcy5vcHRpb25zLm5zLmluZGV4T2YoZSk7dD4tMSYmdGhpcy5vcHRpb25zLm5zLnNwbGljZSh0LDEpfWdldFJlc291cmNlKGUsdCxuKXtsZXQgaT1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106e307Y29uc3Qgcj12b2lkIDAhPT1pLmtleVNlcGFyYXRvcj9pLmtleVNlcGFyYXRvcjp0aGlzLm9wdGlvbnMua2V5U2VwYXJhdG9yLG89dm9pZCAwIT09aS5pZ25vcmVKU09OU3RydWN0dXJlP2kuaWdub3JlSlNPTlN0cnVjdHVyZTp0aGlzLm9wdGlvbnMuaWdub3JlSlNPTlN0cnVjdHVyZTtsZXQgYTtlLmluZGV4T2YoIi4iKT4tMT9hPWUuc3BsaXQoIi4iKTooYT1bZSx0XSxuJiYoQXJyYXkuaXNBcnJheShuKT9hLnB1c2goLi4ubik6InN0cmluZyI9PXR5cGVvZiBuJiZyP2EucHVzaCguLi5uLnNwbGl0KHIpKTphLnB1c2gobikpKTtjb25zdCBzPXAodGhpcy5kYXRhLGEpO3JldHVybiFzJiYhdCYmIW4mJmUuaW5kZXhPZigiLiIpPi0xJiYoZT1hWzBdLHQ9YVsxXSxuPWEuc2xpY2UoMikuam9pbigiLiIpKSxzfHwhb3x8InN0cmluZyIhPXR5cGVvZiBuP3M6Yih0aGlzLmRhdGEmJnRoaXMuZGF0YVtlXSYmdGhpcy5kYXRhW2VdW3RdLG4scil9YWRkUmVzb3VyY2UoZSx0LG4saSl7bGV0IHI9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOntzaWxlbnQ6ITF9O2NvbnN0IG89dm9pZCAwIT09ci5rZXlTZXBhcmF0b3I/ci5rZXlTZXBhcmF0b3I6dGhpcy5vcHRpb25zLmtleVNlcGFyYXRvcjtsZXQgYT1bZSx0XTtuJiYoYT1hLmNvbmNhdChvP24uc3BsaXQobyk6bikpLGUuaW5kZXhPZigiLiIpPi0xJiYoYT1lLnNwbGl0KCIuIiksaT10LHQ9YVsxXSksdGhpcy5hZGROYW1lc3BhY2VzKHQpLGQodGhpcy5kYXRhLGEsaSksci5zaWxlbnR8fHRoaXMuZW1pdCgiYWRkZWQiLGUsdCxuLGkpfWFkZFJlc291cmNlcyhlLHQsbil7bGV0IGk9YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOntzaWxlbnQ6ITF9O2Zvcihjb25zdCBpIGluIG4pKCJzdHJpbmciPT10eXBlb2YgbltpXXx8QXJyYXkuaXNBcnJheShuW2ldKSkmJnRoaXMuYWRkUmVzb3VyY2UoZSx0LGksbltpXSx7c2lsZW50OiEwfSk7aS5zaWxlbnR8fHRoaXMuZW1pdCgiYWRkZWQiLGUsdCxuKX1hZGRSZXNvdXJjZUJ1bmRsZShlLHQsbixpLHIpe2xldCBvPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTp7c2lsZW50OiExLHNraXBDb3B5OiExfSxhPVtlLHRdO2UuaW5kZXhPZigiLiIpPi0xJiYoYT1lLnNwbGl0KCIuIiksaT1uLG49dCx0PWFbMV0pLHRoaXMuYWRkTmFtZXNwYWNlcyh0KTtsZXQgcz1wKHRoaXMuZGF0YSxhKXx8e307by5za2lwQ29weXx8KG49SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShuKSkpLGk/ZnVuY3Rpb24gZSh0LG4saSl7Zm9yKGNvbnN0IHIgaW4gbikiX19wcm90b19fIiE9PXImJiJjb25zdHJ1Y3RvciIhPT1yJiYociBpbiB0PyJzdHJpbmciPT10eXBlb2YgdFtyXXx8dFtyXWluc3RhbmNlb2YgU3RyaW5nfHwic3RyaW5nIj09dHlwZW9mIG5bcl18fG5bcl1pbnN0YW5jZW9mIFN0cmluZz9pJiYodFtyXT1uW3JdKTplKHRbcl0sbltyXSxpKTp0W3JdPW5bcl0pO3JldHVybiB0fShzLG4scik6cz17Li4ucywuLi5ufSxkKHRoaXMuZGF0YSxhLHMpLG8uc2lsZW50fHx0aGlzLmVtaXQoImFkZGVkIixlLHQsbil9cmVtb3ZlUmVzb3VyY2VCdW5kbGUoZSx0KXt0aGlzLmhhc1Jlc291cmNlQnVuZGxlKGUsdCkmJmRlbGV0ZSB0aGlzLmRhdGFbZV1bdF0sdGhpcy5yZW1vdmVOYW1lc3BhY2VzKHQpLHRoaXMuZW1pdCgicmVtb3ZlZCIsZSx0KX1oYXNSZXNvdXJjZUJ1bmRsZShlLHQpe3JldHVybiB2b2lkIDAhPT10aGlzLmdldFJlc291cmNlKGUsdCl9Z2V0UmVzb3VyY2VCdW5kbGUoZSx0KXtyZXR1cm4gdHx8KHQ9dGhpcy5vcHRpb25zLmRlZmF1bHROUyksInYxIj09PXRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5QVBJP3suLi50aGlzLmdldFJlc291cmNlKGUsdCl9OnRoaXMuZ2V0UmVzb3VyY2UoZSx0KX1nZXREYXRhQnlMYW5ndWFnZShlKXtyZXR1cm4gdGhpcy5kYXRhW2VdfWhhc0xhbmd1YWdlU29tZVRyYW5zbGF0aW9ucyhlKXtjb25zdCB0PXRoaXMuZ2V0RGF0YUJ5TGFuZ3VhZ2UoZSk7cmV0dXJuISEodCYmT2JqZWN0LmtleXModCl8fFtdKS5maW5kKGU9PnRbZV0mJk9iamVjdC5rZXlzKHRbZV0pLmxlbmd0aD4wKX10b0pTT04oKXtyZXR1cm4gdGhpcy5kYXRhfX12YXIgaz17cHJvY2Vzc29yczp7fSxhZGRQb3N0UHJvY2Vzc29yKGUpe3RoaXMucHJvY2Vzc29yc1tlLm5hbWVdPWV9LGhhbmRsZShlLHQsbixpLHIpe3JldHVybiBlLmZvckVhY2goZT0+e3RoaXMucHJvY2Vzc29yc1tlXSYmKHQ9dGhpcy5wcm9jZXNzb3JzW2VdLnByb2Nlc3ModCxuLGkscikpfSksdH19O2NvbnN0IEM9e307Y2xhc3MgeCBleHRlbmRzIGF7Y29uc3RydWN0b3IoZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O3N1cGVyKCksZnVuY3Rpb24oZSx0LG4pe2UuZm9yRWFjaChlPT57dFtlXSYmKG5bZV09dFtlXSl9KX0oWyJyZXNvdXJjZVN0b3JlIiwibGFuZ3VhZ2VVdGlscyIsInBsdXJhbFJlc29sdmVyIiwiaW50ZXJwb2xhdG9yIiwiYmFja2VuZENvbm5lY3RvciIsImkxOG5Gb3JtYXQiLCJ1dGlscyJdLGUsdGhpcyksdGhpcy5vcHRpb25zPXQsdm9pZCAwPT09dGhpcy5vcHRpb25zLmtleVNlcGFyYXRvciYmKHRoaXMub3B0aW9ucy5rZXlTZXBhcmF0b3I9Ii4iKSx0aGlzLmxvZ2dlcj1vLmNyZWF0ZSgidHJhbnNsYXRvciIpfWNoYW5nZUxhbmd1YWdlKGUpe2UmJih0aGlzLmxhbmd1YWdlPWUpfWV4aXN0cyhlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e2ludGVycG9sYXRpb246e319O2lmKG51bGw9PWUpcmV0dXJuITE7Y29uc3Qgbj10aGlzLnJlc29sdmUoZSx0KTtyZXR1cm4gbiYmdm9pZCAwIT09bi5yZXN9ZXh0cmFjdEZyb21LZXkoZSx0KXtsZXQgbj12b2lkIDAhPT10Lm5zU2VwYXJhdG9yP3QubnNTZXBhcmF0b3I6dGhpcy5vcHRpb25zLm5zU2VwYXJhdG9yO3ZvaWQgMD09PW4mJihuPSI6Iik7Y29uc3QgaT12b2lkIDAhPT10LmtleVNlcGFyYXRvcj90LmtleVNlcGFyYXRvcjp0aGlzLm9wdGlvbnMua2V5U2VwYXJhdG9yO2xldCByPXQubnN8fHRoaXMub3B0aW9ucy5kZWZhdWx0TlN8fFtdO2NvbnN0IG89biYmZS5pbmRleE9mKG4pPi0xLGE9ISh0aGlzLm9wdGlvbnMudXNlckRlZmluZWRLZXlTZXBhcmF0b3J8fHQua2V5U2VwYXJhdG9yfHx0aGlzLm9wdGlvbnMudXNlckRlZmluZWROc1NlcGFyYXRvcnx8dC5uc1NlcGFyYXRvcnx8ZnVuY3Rpb24oZSx0LG4pe3Q9dHx8IiIsbj1ufHwiIjtjb25zdCBpPXkuZmlsdGVyKGU9PnQuaW5kZXhPZihlKTwwJiZuLmluZGV4T2YoZSk8MCk7aWYoMD09PWkubGVuZ3RoKXJldHVybiEwO2NvbnN0IHI9di5nZXRSZWdFeHAoYCgke2kubWFwKGU9PiI/Ij09PWU/IlxcPyI6ZSkuam9pbigifCIpfSlgKTtsZXQgbz0hci50ZXN0KGUpO2lmKCFvKXtjb25zdCB0PWUuaW5kZXhPZihuKTt0PjAmJiFyLnRlc3QoZS5zdWJzdHJpbmcoMCx0KSkmJihvPSEwKX1yZXR1cm4gb30oZSxuLGkpKTtpZihvJiYhYSl7Y29uc3QgdD1lLm1hdGNoKHRoaXMuaW50ZXJwb2xhdG9yLm5lc3RpbmdSZWdleHApO2lmKHQmJnQubGVuZ3RoPjApcmV0dXJue2tleTplLG5hbWVzcGFjZXM6cn07Y29uc3Qgbz1lLnNwbGl0KG4pOyhuIT09aXx8bj09PWkmJnRoaXMub3B0aW9ucy5ucy5pbmRleE9mKG9bMF0pPi0xKSYmKHI9by5zaGlmdCgpKSxlPW8uam9pbihpKX1yZXR1cm4ic3RyaW5nIj09dHlwZW9mIHImJihyPVtyXSkse2tleTplLG5hbWVzcGFjZXM6cn19dHJhbnNsYXRlKGUsdCxuKXtpZigib2JqZWN0IiE9dHlwZW9mIHQmJnRoaXMub3B0aW9ucy5vdmVybG9hZFRyYW5zbGF0aW9uT3B0aW9uSGFuZGxlciYmKHQ9dGhpcy5vcHRpb25zLm92ZXJsb2FkVHJhbnNsYXRpb25PcHRpb25IYW5kbGVyKGFyZ3VtZW50cykpLCJvYmplY3QiPT10eXBlb2YgdCYmKHQ9ey4uLnR9KSx0fHwodD17fSksbnVsbD09ZSlyZXR1cm4iIjtBcnJheS5pc0FycmF5KGUpfHwoZT1bU3RyaW5nKGUpXSk7Y29uc3QgaT12b2lkIDAhPT10LnJldHVybkRldGFpbHM/dC5yZXR1cm5EZXRhaWxzOnRoaXMub3B0aW9ucy5yZXR1cm5EZXRhaWxzLHI9dm9pZCAwIT09dC5rZXlTZXBhcmF0b3I/dC5rZXlTZXBhcmF0b3I6dGhpcy5vcHRpb25zLmtleVNlcGFyYXRvcix7a2V5Om8sbmFtZXNwYWNlczphfT10aGlzLmV4dHJhY3RGcm9tS2V5KGVbZS5sZW5ndGgtMV0sdCkscz1hW2EubGVuZ3RoLTFdLGw9dC5sbmd8fHRoaXMubGFuZ3VhZ2UsYz10LmFwcGVuZE5hbWVzcGFjZVRvQ0lNb2RlfHx0aGlzLm9wdGlvbnMuYXBwZW5kTmFtZXNwYWNlVG9DSU1vZGU7aWYobCYmImNpbW9kZSI9PT1sLnRvTG93ZXJDYXNlKCkpe2lmKGMpe2NvbnN0IGU9dC5uc1NlcGFyYXRvcnx8dGhpcy5vcHRpb25zLm5zU2VwYXJhdG9yO3JldHVybiBpP3tyZXM6YCR7c30ke2V9JHtvfWAsdXNlZEtleTpvLGV4YWN0VXNlZEtleTpvLHVzZWRMbmc6bCx1c2VkTlM6cyx1c2VkUGFyYW1zOnRoaXMuZ2V0VXNlZFBhcmFtc0RldGFpbHModCl9OmAke3N9JHtlfSR7b31gfXJldHVybiBpP3tyZXM6byx1c2VkS2V5Om8sZXhhY3RVc2VkS2V5Om8sdXNlZExuZzpsLHVzZWROUzpzLHVzZWRQYXJhbXM6dGhpcy5nZXRVc2VkUGFyYW1zRGV0YWlscyh0KX06b31jb25zdCB1PXRoaXMucmVzb2x2ZShlLHQpO2xldCBkPXUmJnUucmVzO2NvbnN0IHA9dSYmdS51c2VkS2V5fHxvLGg9dSYmdS5leGFjdFVzZWRLZXl8fG8sZj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KGQpLGc9dm9pZCAwIT09dC5qb2luQXJyYXlzP3Quam9pbkFycmF5czp0aGlzLm9wdGlvbnMuam9pbkFycmF5cyxtPSF0aGlzLmkxOG5Gb3JtYXR8fHRoaXMuaTE4bkZvcm1hdC5oYW5kbGVBc09iamVjdDtpZihtJiZkJiYoInN0cmluZyIhPXR5cGVvZiBkJiYiYm9vbGVhbiIhPXR5cGVvZiBkJiYibnVtYmVyIiE9dHlwZW9mIGQpJiZbIltvYmplY3QgTnVtYmVyXSIsIltvYmplY3QgRnVuY3Rpb25dIiwiW29iamVjdCBSZWdFeHBdIl0uaW5kZXhPZihmKTwwJiYoInN0cmluZyIhPXR5cGVvZiBnfHwhQXJyYXkuaXNBcnJheShkKSkpe2lmKCF0LnJldHVybk9iamVjdHMmJiF0aGlzLm9wdGlvbnMucmV0dXJuT2JqZWN0cyl7dGhpcy5vcHRpb25zLnJldHVybmVkT2JqZWN0SGFuZGxlcnx8dGhpcy5sb2dnZXIud2FybigiYWNjZXNzaW5nIGFuIG9iamVjdCAtIGJ1dCByZXR1cm5PYmplY3RzIG9wdGlvbnMgaXMgbm90IGVuYWJsZWQhIik7Y29uc3QgZT10aGlzLm9wdGlvbnMucmV0dXJuZWRPYmplY3RIYW5kbGVyP3RoaXMub3B0aW9ucy5yZXR1cm5lZE9iamVjdEhhbmRsZXIocCxkLHsuLi50LG5zOmF9KTpga2V5ICcke299ICgke3RoaXMubGFuZ3VhZ2V9KScgcmV0dXJuZWQgYW4gb2JqZWN0IGluc3RlYWQgb2Ygc3RyaW5nLmA7cmV0dXJuIGk/KHUucmVzPWUsdS51c2VkUGFyYW1zPXRoaXMuZ2V0VXNlZFBhcmFtc0RldGFpbHModCksdSk6ZX1pZihyKXtjb25zdCBlPUFycmF5LmlzQXJyYXkoZCksbj1lP1tdOnt9LGk9ZT9oOnA7Zm9yKGNvbnN0IGUgaW4gZClpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSl7Y29uc3Qgbz1gJHtpfSR7cn0ke2V9YDtuW2VdPXRoaXMudHJhbnNsYXRlKG8sey4uLnQsam9pbkFycmF5czohMSxuczphfSksbltlXT09PW8mJihuW2VdPWRbZV0pfWQ9bn19ZWxzZSBpZihtJiYic3RyaW5nIj09dHlwZW9mIGcmJkFycmF5LmlzQXJyYXkoZCkpZD1kLmpvaW4oZyksZCYmKGQ9dGhpcy5leHRlbmRUcmFuc2xhdGlvbihkLGUsdCxuKSk7ZWxzZXtsZXQgaT0hMSxhPSExO2NvbnN0IGM9dm9pZCAwIT09dC5jb3VudCYmInN0cmluZyIhPXR5cGVvZiB0LmNvdW50LHA9eC5oYXNEZWZhdWx0VmFsdWUodCksaD1jP3RoaXMucGx1cmFsUmVzb2x2ZXIuZ2V0U3VmZml4KGwsdC5jb3VudCx0KToiIixmPXQub3JkaW5hbCYmYz90aGlzLnBsdXJhbFJlc29sdmVyLmdldFN1ZmZpeChsLHQuY291bnQse29yZGluYWw6ITF9KToiIixnPWMmJiF0Lm9yZGluYWwmJjA9PT10LmNvdW50JiZ0aGlzLnBsdXJhbFJlc29sdmVyLnNob3VsZFVzZUludGxBcGkoKSxtPWcmJnRbYGRlZmF1bHRWYWx1ZSR7dGhpcy5vcHRpb25zLnBsdXJhbFNlcGFyYXRvcn16ZXJvYF18fHRbImRlZmF1bHRWYWx1ZSIraF18fHRbImRlZmF1bHRWYWx1ZSIrZl18fHQuZGVmYXVsdFZhbHVlOyF0aGlzLmlzVmFsaWRMb29rdXAoZCkmJnAmJihpPSEwLGQ9bSksdGhpcy5pc1ZhbGlkTG9va3VwKGQpfHwoYT0hMCxkPW8pO2NvbnN0IHk9KHQubWlzc2luZ0tleU5vVmFsdWVGYWxsYmFja1RvS2V5fHx0aGlzLm9wdGlvbnMubWlzc2luZ0tleU5vVmFsdWVGYWxsYmFja1RvS2V5KSYmYT92b2lkIDA6ZCx2PXAmJm0hPT1kJiZ0aGlzLm9wdGlvbnMudXBkYXRlTWlzc2luZztpZihhfHxpfHx2KXtpZih0aGlzLmxvZ2dlci5sb2codj8idXBkYXRlS2V5IjoibWlzc2luZ0tleSIsbCxzLG8sdj9tOmQpLHIpe2NvbnN0IGU9dGhpcy5yZXNvbHZlKG8sey4uLnQsa2V5U2VwYXJhdG9yOiExfSk7ZSYmZS5yZXMmJnRoaXMubG9nZ2VyLndhcm4oIlNlZW1zIHRoZSBsb2FkZWQgdHJhbnNsYXRpb25zIHdlcmUgaW4gZmxhdCBKU09OIGZvcm1hdCBpbnN0ZWFkIG9mIG5lc3RlZC4gRWl0aGVyIHNldCBrZXlTZXBhcmF0b3I6IGZhbHNlIG9uIGluaXQgb3IgbWFrZSBzdXJlIHlvdXIgdHJhbnNsYXRpb25zIGFyZSBwdWJsaXNoZWQgaW4gbmVzdGVkIGZvcm1hdC4iKX1sZXQgZT1bXTtjb25zdCBuPXRoaXMubGFuZ3VhZ2VVdGlscy5nZXRGYWxsYmFja0NvZGVzKHRoaXMub3B0aW9ucy5mYWxsYmFja0xuZyx0LmxuZ3x8dGhpcy5sYW5ndWFnZSk7aWYoImZhbGxiYWNrIj09PXRoaXMub3B0aW9ucy5zYXZlTWlzc2luZ1RvJiZuJiZuWzBdKWZvcihsZXQgdD0wO3Q8bi5sZW5ndGg7dCsrKWUucHVzaChuW3RdKTtlbHNlImFsbCI9PT10aGlzLm9wdGlvbnMuc2F2ZU1pc3NpbmdUbz9lPXRoaXMubGFuZ3VhZ2VVdGlscy50b1Jlc29sdmVIaWVyYXJjaHkodC5sbmd8fHRoaXMubGFuZ3VhZ2UpOmUucHVzaCh0LmxuZ3x8dGhpcy5sYW5ndWFnZSk7Y29uc3QgaT0oZSxuLGkpPT57Y29uc3Qgcj1wJiZpIT09ZD9pOnk7dGhpcy5vcHRpb25zLm1pc3NpbmdLZXlIYW5kbGVyP3RoaXMub3B0aW9ucy5taXNzaW5nS2V5SGFuZGxlcihlLHMsbixyLHYsdCk6dGhpcy5iYWNrZW5kQ29ubmVjdG9yJiZ0aGlzLmJhY2tlbmRDb25uZWN0b3Iuc2F2ZU1pc3NpbmcmJnRoaXMuYmFja2VuZENvbm5lY3Rvci5zYXZlTWlzc2luZyhlLHMsbixyLHYsdCksdGhpcy5lbWl0KCJtaXNzaW5nS2V5IixlLHMsbixkKX07dGhpcy5vcHRpb25zLnNhdmVNaXNzaW5nJiYodGhpcy5vcHRpb25zLnNhdmVNaXNzaW5nUGx1cmFscyYmYz9lLmZvckVhY2goZT0+e2NvbnN0IG49dGhpcy5wbHVyYWxSZXNvbHZlci5nZXRTdWZmaXhlcyhlLHQpO2cmJnRbYGRlZmF1bHRWYWx1ZSR7dGhpcy5vcHRpb25zLnBsdXJhbFNlcGFyYXRvcn16ZXJvYF0mJm4uaW5kZXhPZih0aGlzLm9wdGlvbnMucGx1cmFsU2VwYXJhdG9yKyJ6ZXJvIik8MCYmbi5wdXNoKHRoaXMub3B0aW9ucy5wbHVyYWxTZXBhcmF0b3IrInplcm8iKSxuLmZvckVhY2gobj0+e2koW2VdLG8rbix0WyJkZWZhdWx0VmFsdWUiK25dfHxtKX0pfSk6aShlLG8sbSkpfWQ9dGhpcy5leHRlbmRUcmFuc2xhdGlvbihkLGUsdCx1LG4pLGEmJmQ9PT1vJiZ0aGlzLm9wdGlvbnMuYXBwZW5kTmFtZXNwYWNlVG9NaXNzaW5nS2V5JiYoZD1gJHtzfToke299YCksKGF8fGkpJiZ0aGlzLm9wdGlvbnMucGFyc2VNaXNzaW5nS2V5SGFuZGxlciYmKGQ9InYxIiE9PXRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5QVBJP3RoaXMub3B0aW9ucy5wYXJzZU1pc3NpbmdLZXlIYW5kbGVyKHRoaXMub3B0aW9ucy5hcHBlbmROYW1lc3BhY2VUb01pc3NpbmdLZXk/YCR7c306JHtvfWA6byxpP2Q6dm9pZCAwKTp0aGlzLm9wdGlvbnMucGFyc2VNaXNzaW5nS2V5SGFuZGxlcihkKSl9cmV0dXJuIGk/KHUucmVzPWQsdS51c2VkUGFyYW1zPXRoaXMuZ2V0VXNlZFBhcmFtc0RldGFpbHModCksdSk6ZH1leHRlbmRUcmFuc2xhdGlvbihlLHQsbixpLHIpe3ZhciBvPXRoaXM7aWYodGhpcy5pMThuRm9ybWF0JiZ0aGlzLmkxOG5Gb3JtYXQucGFyc2UpZT10aGlzLmkxOG5Gb3JtYXQucGFyc2UoZSx7Li4udGhpcy5vcHRpb25zLmludGVycG9sYXRpb24uZGVmYXVsdFZhcmlhYmxlcywuLi5ufSxuLmxuZ3x8dGhpcy5sYW5ndWFnZXx8aS51c2VkTG5nLGkudXNlZE5TLGkudXNlZEtleSx7cmVzb2x2ZWQ6aX0pO2Vsc2UgaWYoIW4uc2tpcEludGVycG9sYXRpb24pe24uaW50ZXJwb2xhdGlvbiYmdGhpcy5pbnRlcnBvbGF0b3IuaW5pdCh7Li4ubixpbnRlcnBvbGF0aW9uOnsuLi50aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbiwuLi5uLmludGVycG9sYXRpb259fSk7Y29uc3QgYT0ic3RyaW5nIj09dHlwZW9mIGUmJihuJiZuLmludGVycG9sYXRpb24mJnZvaWQgMCE9PW4uaW50ZXJwb2xhdGlvbi5za2lwT25WYXJpYWJsZXM/bi5pbnRlcnBvbGF0aW9uLnNraXBPblZhcmlhYmxlczp0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbi5za2lwT25WYXJpYWJsZXMpO2xldCBzO2lmKGEpe2NvbnN0IHQ9ZS5tYXRjaCh0aGlzLmludGVycG9sYXRvci5uZXN0aW5nUmVnZXhwKTtzPXQmJnQubGVuZ3RofWxldCBsPW4ucmVwbGFjZSYmInN0cmluZyIhPXR5cGVvZiBuLnJlcGxhY2U/bi5yZXBsYWNlOm47aWYodGhpcy5vcHRpb25zLmludGVycG9sYXRpb24uZGVmYXVsdFZhcmlhYmxlcyYmKGw9ey4uLnRoaXMub3B0aW9ucy5pbnRlcnBvbGF0aW9uLmRlZmF1bHRWYXJpYWJsZXMsLi4ubH0pLGU9dGhpcy5pbnRlcnBvbGF0b3IuaW50ZXJwb2xhdGUoZSxsLG4ubG5nfHx0aGlzLmxhbmd1YWdlLG4pLGEpe2NvbnN0IHQ9ZS5tYXRjaCh0aGlzLmludGVycG9sYXRvci5uZXN0aW5nUmVnZXhwKTtzPCh0JiZ0Lmxlbmd0aCkmJihuLm5lc3Q9ITEpfSFuLmxuZyYmInYxIiE9PXRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5QVBJJiZpJiZpLnJlcyYmKG4ubG5nPWkudXNlZExuZyksITEhPT1uLm5lc3QmJihlPXRoaXMuaW50ZXJwb2xhdG9yLm5lc3QoZSwoZnVuY3Rpb24oKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCxpPW5ldyBBcnJheShlKSxhPTA7YTxlO2ErKylpW2FdPWFyZ3VtZW50c1thXTtyZXR1cm4gciYmclswXT09PWlbMF0mJiFuLmNvbnRleHQ/KG8ubG9nZ2VyLndhcm4oYEl0IHNlZW1zIHlvdSBhcmUgbmVzdGluZyByZWN1cnNpdmVseSBrZXk6ICR7aVswXX0gaW4ga2V5OiAke3RbMF19YCksbnVsbCk6by50cmFuc2xhdGUoLi4uaSx0KX0pLG4pKSxuLmludGVycG9sYXRpb24mJnRoaXMuaW50ZXJwb2xhdG9yLnJlc2V0KCl9Y29uc3QgYT1uLnBvc3RQcm9jZXNzfHx0aGlzLm9wdGlvbnMucG9zdFByb2Nlc3Mscz0ic3RyaW5nIj09dHlwZW9mIGE/W2FdOmE7cmV0dXJuIG51bGwhPWUmJnMmJnMubGVuZ3RoJiYhMSE9PW4uYXBwbHlQb3N0UHJvY2Vzc29yJiYoZT1rLmhhbmRsZShzLGUsdCx0aGlzLm9wdGlvbnMmJnRoaXMub3B0aW9ucy5wb3N0UHJvY2Vzc1Bhc3NSZXNvbHZlZD97aTE4blJlc29sdmVkOnsuLi5pLHVzZWRQYXJhbXM6dGhpcy5nZXRVc2VkUGFyYW1zRGV0YWlscyhuKX0sLi4ubn06bix0aGlzKSksZX1yZXNvbHZlKGUpe2xldCB0LG4saSxyLG8sYT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e307cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlJiYoZT1bZV0pLGUuZm9yRWFjaChlPT57aWYodGhpcy5pc1ZhbGlkTG9va3VwKHQpKXJldHVybjtjb25zdCBzPXRoaXMuZXh0cmFjdEZyb21LZXkoZSxhKSxsPXMua2V5O249bDtsZXQgYz1zLm5hbWVzcGFjZXM7dGhpcy5vcHRpb25zLmZhbGxiYWNrTlMmJihjPWMuY29uY2F0KHRoaXMub3B0aW9ucy5mYWxsYmFja05TKSk7Y29uc3QgdT12b2lkIDAhPT1hLmNvdW50JiYic3RyaW5nIiE9dHlwZW9mIGEuY291bnQsZD11JiYhYS5vcmRpbmFsJiYwPT09YS5jb3VudCYmdGhpcy5wbHVyYWxSZXNvbHZlci5zaG91bGRVc2VJbnRsQXBpKCkscD12b2lkIDAhPT1hLmNvbnRleHQmJigic3RyaW5nIj09dHlwZW9mIGEuY29udGV4dHx8Im51bWJlciI9PXR5cGVvZiBhLmNvbnRleHQpJiYiIiE9PWEuY29udGV4dCxoPWEubG5ncz9hLmxuZ3M6dGhpcy5sYW5ndWFnZVV0aWxzLnRvUmVzb2x2ZUhpZXJhcmNoeShhLmxuZ3x8dGhpcy5sYW5ndWFnZSxhLmZhbGxiYWNrTG5nKTtjLmZvckVhY2goZT0+e3RoaXMuaXNWYWxpZExvb2t1cCh0KXx8KG89ZSwhQ1tgJHtoWzBdfS0ke2V9YF0mJnRoaXMudXRpbHMmJnRoaXMudXRpbHMuaGFzTG9hZGVkTmFtZXNwYWNlJiYhdGhpcy51dGlscy5oYXNMb2FkZWROYW1lc3BhY2UobykmJihDW2Ake2hbMF19LSR7ZX1gXT0hMCx0aGlzLmxvZ2dlci53YXJuKGBrZXkgIiR7bn0iIGZvciBsYW5ndWFnZXMgIiR7aC5qb2luKCIsICIpfSIgd29uJ3QgZ2V0IHJlc29sdmVkIGFzIG5hbWVzcGFjZSAiJHtvfSIgd2FzIG5vdCB5ZXQgbG9hZGVkYCwiVGhpcyBtZWFucyBzb21ldGhpbmcgSVMgV1JPTkcgaW4geW91ciBzZXR1cC4gWW91IGFjY2VzcyB0aGUgdCBmdW5jdGlvbiBiZWZvcmUgaTE4bmV4dC5pbml0IC8gaTE4bmV4dC5sb2FkTmFtZXNwYWNlIC8gaTE4bmV4dC5jaGFuZ2VMYW5ndWFnZSB3YXMgZG9uZS4gV2FpdCBmb3IgdGhlIGNhbGxiYWNrIG9yIFByb21pc2UgdG8gcmVzb2x2ZSBiZWZvcmUgYWNjZXNzaW5nIGl0ISEhIikpLGguZm9yRWFjaChuPT57aWYodGhpcy5pc1ZhbGlkTG9va3VwKHQpKXJldHVybjtyPW47Y29uc3Qgbz1bbF07aWYodGhpcy5pMThuRm9ybWF0JiZ0aGlzLmkxOG5Gb3JtYXQuYWRkTG9va3VwS2V5cyl0aGlzLmkxOG5Gb3JtYXQuYWRkTG9va3VwS2V5cyhvLGwsbixlLGEpO2Vsc2V7bGV0IGU7dSYmKGU9dGhpcy5wbHVyYWxSZXNvbHZlci5nZXRTdWZmaXgobixhLmNvdW50LGEpKTtjb25zdCB0PXRoaXMub3B0aW9ucy5wbHVyYWxTZXBhcmF0b3IrInplcm8iLGk9YCR7dGhpcy5vcHRpb25zLnBsdXJhbFNlcGFyYXRvcn1vcmRpbmFsJHt0aGlzLm9wdGlvbnMucGx1cmFsU2VwYXJhdG9yfWA7aWYodSYmKG8ucHVzaChsK2UpLGEub3JkaW5hbCYmMD09PWUuaW5kZXhPZihpKSYmby5wdXNoKGwrZS5yZXBsYWNlKGksdGhpcy5vcHRpb25zLnBsdXJhbFNlcGFyYXRvcikpLGQmJm8ucHVzaChsK3QpKSxwKXtjb25zdCBuPWAke2x9JHt0aGlzLm9wdGlvbnMuY29udGV4dFNlcGFyYXRvcn0ke2EuY29udGV4dH1gO28ucHVzaChuKSx1JiYoby5wdXNoKG4rZSksYS5vcmRpbmFsJiYwPT09ZS5pbmRleE9mKGkpJiZvLnB1c2gobitlLnJlcGxhY2UoaSx0aGlzLm9wdGlvbnMucGx1cmFsU2VwYXJhdG9yKSksZCYmby5wdXNoKG4rdCkpfX1sZXQgcztmb3IoO3M9by5wb3AoKTspdGhpcy5pc1ZhbGlkTG9va3VwKHQpfHwoaT1zLHQ9dGhpcy5nZXRSZXNvdXJjZShuLGUscyxhKSl9KSl9KX0pLHtyZXM6dCx1c2VkS2V5Om4sZXhhY3RVc2VkS2V5OmksdXNlZExuZzpyLHVzZWROUzpvfX1pc1ZhbGlkTG9va3VwKGUpe3JldHVybiEodm9pZCAwPT09ZXx8IXRoaXMub3B0aW9ucy5yZXR1cm5OdWxsJiZudWxsPT09ZXx8IXRoaXMub3B0aW9ucy5yZXR1cm5FbXB0eVN0cmluZyYmIiI9PT1lKX1nZXRSZXNvdXJjZShlLHQsbil7bGV0IGk9YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnt9O3JldHVybiB0aGlzLmkxOG5Gb3JtYXQmJnRoaXMuaTE4bkZvcm1hdC5nZXRSZXNvdXJjZT90aGlzLmkxOG5Gb3JtYXQuZ2V0UmVzb3VyY2UoZSx0LG4saSk6dGhpcy5yZXNvdXJjZVN0b3JlLmdldFJlc291cmNlKGUsdCxuLGkpfWdldFVzZWRQYXJhbXNEZXRhaWxzKCl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnt9O2NvbnN0IHQ9WyJkZWZhdWx0VmFsdWUiLCJvcmRpbmFsIiwiY29udGV4dCIsInJlcGxhY2UiLCJsbmciLCJsbmdzIiwiZmFsbGJhY2tMbmciLCJucyIsImtleVNlcGFyYXRvciIsIm5zU2VwYXJhdG9yIiwicmV0dXJuT2JqZWN0cyIsInJldHVybkRldGFpbHMiLCJqb2luQXJyYXlzIiwicG9zdFByb2Nlc3MiLCJpbnRlcnBvbGF0aW9uIl0sbj1lLnJlcGxhY2UmJiJzdHJpbmciIT10eXBlb2YgZS5yZXBsYWNlO2xldCBpPW4/ZS5yZXBsYWNlOmU7aWYobiYmdm9pZCAwIT09ZS5jb3VudCYmKGkuY291bnQ9ZS5jb3VudCksdGhpcy5vcHRpb25zLmludGVycG9sYXRpb24uZGVmYXVsdFZhcmlhYmxlcyYmKGk9ey4uLnRoaXMub3B0aW9ucy5pbnRlcnBvbGF0aW9uLmRlZmF1bHRWYXJpYWJsZXMsLi4uaX0pLCFuKXtpPXsuLi5pfTtmb3IoY29uc3QgZSBvZiB0KWRlbGV0ZSBpW2VdfXJldHVybiBpfXN0YXRpYyBoYXNEZWZhdWx0VmFsdWUoZSl7Y29uc3QgdD0iZGVmYXVsdFZhbHVlIjtmb3IoY29uc3QgbiBpbiBlKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiZ0PT09bi5zdWJzdHJpbmcoMCx0Lmxlbmd0aCkmJnZvaWQgMCE9PWVbbl0pcmV0dXJuITA7cmV0dXJuITF9fWZ1bmN0aW9uIFMoZSl7cmV0dXJuIGUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKX1jbGFzcyBMe2NvbnN0cnVjdG9yKGUpe3RoaXMub3B0aW9ucz1lLHRoaXMuc3VwcG9ydGVkTG5ncz10aGlzLm9wdGlvbnMuc3VwcG9ydGVkTG5nc3x8ITEsdGhpcy5sb2dnZXI9by5jcmVhdGUoImxhbmd1YWdlVXRpbHMiKX1nZXRTY3JpcHRQYXJ0RnJvbUNvZGUoZSl7aWYoIShlPV8oZSkpfHxlLmluZGV4T2YoIi0iKTwwKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5zcGxpdCgiLSIpO3JldHVybiAyPT09dC5sZW5ndGg/bnVsbDoodC5wb3AoKSwieCI9PT10W3QubGVuZ3RoLTFdLnRvTG93ZXJDYXNlKCk/bnVsbDp0aGlzLmZvcm1hdExhbmd1YWdlQ29kZSh0LmpvaW4oIi0iKSkpfWdldExhbmd1YWdlUGFydEZyb21Db2RlKGUpe2lmKCEoZT1fKGUpKXx8ZS5pbmRleE9mKCItIik8MClyZXR1cm4gZTtjb25zdCB0PWUuc3BsaXQoIi0iKTtyZXR1cm4gdGhpcy5mb3JtYXRMYW5ndWFnZUNvZGUodFswXSl9Zm9ybWF0TGFuZ3VhZ2VDb2RlKGUpe2lmKCJzdHJpbmciPT10eXBlb2YgZSYmZS5pbmRleE9mKCItIik+LTEpe2NvbnN0IHQ9WyJoYW5zIiwiaGFudCIsImxhdG4iLCJjeXJsIiwiY2FucyIsIm1vbmciLCJhcmFiIl07bGV0IG49ZS5zcGxpdCgiLSIpO3JldHVybiB0aGlzLm9wdGlvbnMubG93ZXJDYXNlTG5nP249bi5tYXAoZT0+ZS50b0xvd2VyQ2FzZSgpKToyPT09bi5sZW5ndGg/KG5bMF09blswXS50b0xvd2VyQ2FzZSgpLG5bMV09blsxXS50b1VwcGVyQ2FzZSgpLHQuaW5kZXhPZihuWzFdLnRvTG93ZXJDYXNlKCkpPi0xJiYoblsxXT1TKG5bMV0udG9Mb3dlckNhc2UoKSkpKTozPT09bi5sZW5ndGgmJihuWzBdPW5bMF0udG9Mb3dlckNhc2UoKSwyPT09blsxXS5sZW5ndGgmJihuWzFdPW5bMV0udG9VcHBlckNhc2UoKSksInNnbiIhPT1uWzBdJiYyPT09blsyXS5sZW5ndGgmJihuWzJdPW5bMl0udG9VcHBlckNhc2UoKSksdC5pbmRleE9mKG5bMV0udG9Mb3dlckNhc2UoKSk+LTEmJihuWzFdPVMoblsxXS50b0xvd2VyQ2FzZSgpKSksdC5pbmRleE9mKG5bMl0udG9Mb3dlckNhc2UoKSk+LTEmJihuWzJdPVMoblsyXS50b0xvd2VyQ2FzZSgpKSkpLG4uam9pbigiLSIpfXJldHVybiB0aGlzLm9wdGlvbnMuY2xlYW5Db2RlfHx0aGlzLm9wdGlvbnMubG93ZXJDYXNlTG5nP2UudG9Mb3dlckNhc2UoKTplfWlzU3VwcG9ydGVkQ29kZShlKXtyZXR1cm4oImxhbmd1YWdlT25seSI9PT10aGlzLm9wdGlvbnMubG9hZHx8dGhpcy5vcHRpb25zLm5vbkV4cGxpY2l0U3VwcG9ydGVkTG5ncykmJihlPXRoaXMuZ2V0TGFuZ3VhZ2VQYXJ0RnJvbUNvZGUoZSkpLCF0aGlzLnN1cHBvcnRlZExuZ3N8fCF0aGlzLnN1cHBvcnRlZExuZ3MubGVuZ3RofHx0aGlzLnN1cHBvcnRlZExuZ3MuaW5kZXhPZihlKT4tMX1nZXRCZXN0TWF0Y2hGcm9tQ29kZXMoZSl7aWYoIWUpcmV0dXJuIG51bGw7bGV0IHQ7cmV0dXJuIGUuZm9yRWFjaChlPT57aWYodClyZXR1cm47Y29uc3Qgbj10aGlzLmZvcm1hdExhbmd1YWdlQ29kZShlKTt0aGlzLm9wdGlvbnMuc3VwcG9ydGVkTG5ncyYmIXRoaXMuaXNTdXBwb3J0ZWRDb2RlKG4pfHwodD1uKX0pLCF0JiZ0aGlzLm9wdGlvbnMuc3VwcG9ydGVkTG5ncyYmZS5mb3JFYWNoKGU9PntpZih0KXJldHVybjtjb25zdCBuPXRoaXMuZ2V0TGFuZ3VhZ2VQYXJ0RnJvbUNvZGUoZSk7aWYodGhpcy5pc1N1cHBvcnRlZENvZGUobikpcmV0dXJuIHQ9bjt0PXRoaXMub3B0aW9ucy5zdXBwb3J0ZWRMbmdzLmZpbmQoZT0+ZT09PW4/ZTplLmluZGV4T2YoIi0iKTwwJiZuLmluZGV4T2YoIi0iKTwwP3ZvaWQgMDplLmluZGV4T2YoIi0iKT4wJiZuLmluZGV4T2YoIi0iKTwwJiZlLnN1YnN0cmluZygwLGUuaW5kZXhPZigiLSIpKT09PW58fDA9PT1lLmluZGV4T2YobikmJm4ubGVuZ3RoPjE/ZTp2b2lkIDApfSksdHx8KHQ9dGhpcy5nZXRGYWxsYmFja0NvZGVzKHRoaXMub3B0aW9ucy5mYWxsYmFja0xuZylbMF0pLHR9Z2V0RmFsbGJhY2tDb2RlcyhlLHQpe2lmKCFlKXJldHVybltdO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoZT1lKHQpKSwic3RyaW5nIj09dHlwZW9mIGUmJihlPVtlXSksQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZTtpZighdClyZXR1cm4gZS5kZWZhdWx0fHxbXTtsZXQgbj1lW3RdO3JldHVybiBufHwobj1lW3RoaXMuZ2V0U2NyaXB0UGFydEZyb21Db2RlKHQpXSksbnx8KG49ZVt0aGlzLmZvcm1hdExhbmd1YWdlQ29kZSh0KV0pLG58fChuPWVbdGhpcy5nZXRMYW5ndWFnZVBhcnRGcm9tQ29kZSh0KV0pLG58fChuPWUuZGVmYXVsdCksbnx8W119dG9SZXNvbHZlSGllcmFyY2h5KGUsdCl7Y29uc3Qgbj10aGlzLmdldEZhbGxiYWNrQ29kZXModHx8dGhpcy5vcHRpb25zLmZhbGxiYWNrTG5nfHxbXSxlKSxpPVtdLHI9ZT0+e2UmJih0aGlzLmlzU3VwcG9ydGVkQ29kZShlKT9pLnB1c2goZSk6dGhpcy5sb2dnZXIud2FybigicmVqZWN0aW5nIGxhbmd1YWdlIGNvZGUgbm90IGZvdW5kIGluIHN1cHBvcnRlZExuZ3M6ICIrZSkpfTtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGUmJihlLmluZGV4T2YoIi0iKT4tMXx8ZS5pbmRleE9mKCJfIik+LTEpPygibGFuZ3VhZ2VPbmx5IiE9PXRoaXMub3B0aW9ucy5sb2FkJiZyKHRoaXMuZm9ybWF0TGFuZ3VhZ2VDb2RlKGUpKSwibGFuZ3VhZ2VPbmx5IiE9PXRoaXMub3B0aW9ucy5sb2FkJiYiY3VycmVudE9ubHkiIT09dGhpcy5vcHRpb25zLmxvYWQmJnIodGhpcy5nZXRTY3JpcHRQYXJ0RnJvbUNvZGUoZSkpLCJjdXJyZW50T25seSIhPT10aGlzLm9wdGlvbnMubG9hZCYmcih0aGlzLmdldExhbmd1YWdlUGFydEZyb21Db2RlKGUpKSk6InN0cmluZyI9PXR5cGVvZiBlJiZyKHRoaXMuZm9ybWF0TGFuZ3VhZ2VDb2RlKGUpKSxuLmZvckVhY2goZT0+e2kuaW5kZXhPZihlKTwwJiZyKHRoaXMuZm9ybWF0TGFuZ3VhZ2VDb2RlKGUpKX0pLGl9fWxldCBUPVt7bG5nczpbImFjaCIsImFrIiwiYW0iLCJhcm4iLCJiciIsImZpbCIsImd1biIsImxuIiwibWZlIiwibWciLCJtaSIsIm9jIiwicHQiLCJwdC1CUiIsInRnIiwidGwiLCJ0aSIsInRyIiwidXoiLCJ3YSJdLG5yOlsxLDJdLGZjOjF9LHtsbmdzOlsiYWYiLCJhbiIsImFzdCIsImF6IiwiYmciLCJibiIsImNhIiwiZGEiLCJkZSIsImRldiIsImVsIiwiZW4iLCJlbyIsImVzIiwiZXQiLCJldSIsImZpIiwiZm8iLCJmdXIiLCJmeSIsImdsIiwiZ3UiLCJoYSIsImhpIiwiaHUiLCJoeSIsImlhIiwiaXQiLCJrayIsImtuIiwia3UiLCJsYiIsIm1haSIsIm1sIiwibW4iLCJtciIsIm5haCIsIm5hcCIsIm5iIiwibmUiLCJubCIsIm5uIiwibm8iLCJuc28iLCJwYSIsInBhcCIsInBtcyIsInBzIiwicHQtUFQiLCJybSIsInNjbyIsInNlIiwic2kiLCJzbyIsInNvbiIsInNxIiwic3YiLCJzdyIsInRhIiwidGUiLCJ0ayIsInVyIiwieW8iXSxucjpbMSwyXSxmYzoyfSx7bG5nczpbImF5IiwiYm8iLCJjZ2ciLCJmYSIsImh0IiwiaWQiLCJqYSIsImpibyIsImthIiwia20iLCJrbyIsImt5IiwibG8iLCJtcyIsInNhaCIsInN1IiwidGgiLCJ0dCIsInVnIiwidmkiLCJ3byIsInpoIl0sbnI6WzFdLGZjOjN9LHtsbmdzOlsiYmUiLCJicyIsImNuciIsImR6IiwiaHIiLCJydSIsInNyIiwidWsiXSxucjpbMSwyLDVdLGZjOjR9LHtsbmdzOlsiYXIiXSxucjpbMCwxLDIsMywxMSwxMDBdLGZjOjV9LHtsbmdzOlsiY3MiLCJzayJdLG5yOlsxLDIsNV0sZmM6Nn0se2xuZ3M6WyJjc2IiLCJwbCJdLG5yOlsxLDIsNV0sZmM6N30se2xuZ3M6WyJjeSJdLG5yOlsxLDIsMyw4XSxmYzo4fSx7bG5nczpbImZyIl0sbnI6WzEsMl0sZmM6OX0se2xuZ3M6WyJnYSJdLG5yOlsxLDIsMyw3LDExXSxmYzoxMH0se2xuZ3M6WyJnZCJdLG5yOlsxLDIsMywyMF0sZmM6MTF9LHtsbmdzOlsiaXMiXSxucjpbMSwyXSxmYzoxMn0se2xuZ3M6WyJqdiJdLG5yOlswLDFdLGZjOjEzfSx7bG5nczpbImt3Il0sbnI6WzEsMiwzLDRdLGZjOjE0fSx7bG5nczpbImx0Il0sbnI6WzEsMiwxMF0sZmM6MTV9LHtsbmdzOlsibHYiXSxucjpbMSwyLDBdLGZjOjE2fSx7bG5nczpbIm1rIl0sbnI6WzEsMl0sZmM6MTd9LHtsbmdzOlsibW5rIl0sbnI6WzAsMSwyXSxmYzoxOH0se2xuZ3M6WyJtdCJdLG5yOlsxLDIsMTEsMjBdLGZjOjE5fSx7bG5nczpbIm9yIl0sbnI6WzIsMV0sZmM6Mn0se2xuZ3M6WyJybyJdLG5yOlsxLDIsMjBdLGZjOjIwfSx7bG5nczpbInNsIl0sbnI6WzUsMSwyLDNdLGZjOjIxfSx7bG5nczpbImhlIiwiaXciXSxucjpbMSwyLDIwLDIxXSxmYzoyMn1dLE89ezE6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcihlPjEpfSwyOmZ1bmN0aW9uKGUpe3JldHVybiBOdW1iZXIoMSE9ZSl9LDM6ZnVuY3Rpb24oZSl7cmV0dXJuIDB9LDQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcihlJTEwPT0xJiZlJTEwMCE9MTE/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKX0sNTpmdW5jdGlvbihlKXtyZXR1cm4gTnVtYmVyKDA9PWU/MDoxPT1lPzE6Mj09ZT8yOmUlMTAwPj0zJiZlJTEwMDw9MTA/MzplJTEwMD49MTE/NDo1KX0sNjpmdW5jdGlvbihlKXtyZXR1cm4gTnVtYmVyKDE9PWU/MDplPj0yJiZlPD00PzE6Mil9LDc6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lPzA6ZSUxMD49MiYmZSUxMDw9NCYmKGUlMTAwPDEwfHxlJTEwMD49MjApPzE6Mil9LDg6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lPzA6Mj09ZT8xOjghPWUmJjExIT1lPzI6Myl9LDk6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcihlPj0yKX0sMTA6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lPzA6Mj09ZT8xOmU8Nz8yOmU8MTE/Mzo0KX0sMTE6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lfHwxMT09ZT8wOjI9PWV8fDEyPT1lPzE6ZT4yJiZlPDIwPzI6Myl9LDEyOmZ1bmN0aW9uKGUpe3JldHVybiBOdW1iZXIoZSUxMCE9MXx8ZSUxMDA9PTExKX0sMTM6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigwIT09ZSl9LDE0OmZ1bmN0aW9uKGUpe3JldHVybiBOdW1iZXIoMT09ZT8wOjI9PWU/MTozPT1lPzI6Myl9LDE1OmZ1bmN0aW9uKGUpe3JldHVybiBOdW1iZXIoZSUxMD09MSYmZSUxMDAhPTExPzA6ZSUxMD49MiYmKGUlMTAwPDEwfHxlJTEwMD49MjApPzE6Mil9LDE2OmZ1bmN0aW9uKGUpe3JldHVybiBOdW1iZXIoZSUxMD09MSYmZSUxMDAhPTExPzA6MCE9PWU/MToyKX0sMTc6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lfHxlJTEwPT0xJiZlJTEwMCE9MTE/MDoxKX0sMTg6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigwPT1lPzA6MT09ZT8xOjIpfSwxOTpmdW5jdGlvbihlKXtyZXR1cm4gTnVtYmVyKDE9PWU/MDowPT1lfHxlJTEwMD4xJiZlJTEwMDwxMT8xOmUlMTAwPjEwJiZlJTEwMDwyMD8yOjMpfSwyMDpmdW5jdGlvbihlKXtyZXR1cm4gTnVtYmVyKDE9PWU/MDowPT1lfHxlJTEwMD4wJiZlJTEwMDwyMD8xOjIpfSwyMTpmdW5jdGlvbihlKXtyZXR1cm4gTnVtYmVyKGUlMTAwPT0xPzE6ZSUxMDA9PTI/MjplJTEwMD09M3x8ZSUxMDA9PTQ/MzowKX0sMjI6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlcigxPT1lPzA6Mj09ZT8xOihlPDB8fGU+MTApJiZlJTEwPT0wPzI6Myl9fTtjb25zdCBFPVsidjEiLCJ2MiIsInYzIl0saj1bInY0Il0sUD17emVybzowLG9uZToxLHR3bzoyLGZldzozLG1hbnk6NCxvdGhlcjo1fTtjbGFzcyBSe2NvbnN0cnVjdG9yKGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTt0aGlzLmxhbmd1YWdlVXRpbHM9ZSx0aGlzLm9wdGlvbnM9dCx0aGlzLmxvZ2dlcj1vLmNyZWF0ZSgicGx1cmFsUmVzb2x2ZXIiKSx0aGlzLm9wdGlvbnMuY29tcGF0aWJpbGl0eUpTT04mJiFqLmluY2x1ZGVzKHRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5SlNPTil8fCJ1bmRlZmluZWQiIT10eXBlb2YgSW50bCYmSW50bC5QbHVyYWxSdWxlc3x8KHRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5SlNPTj0idjMiLHRoaXMubG9nZ2VyLmVycm9yKCJZb3VyIGVudmlyb25tZW50IHNlZW1zIG5vdCB0byBiZSBJbnRsIEFQSSBjb21wYXRpYmxlLCB1c2UgYW4gSW50bC5QbHVyYWxSdWxlcyBwb2x5ZmlsbC4gV2lsbCBmYWxsYmFjayB0byB0aGUgY29tcGF0aWJpbGl0eUpTT04gdjMgZm9ybWF0IGhhbmRsaW5nLiIpKSx0aGlzLnJ1bGVzPWZ1bmN0aW9uKCl7Y29uc3QgZT17fTtyZXR1cm4gVC5mb3JFYWNoKHQ9Pnt0LmxuZ3MuZm9yRWFjaChuPT57ZVtuXT17bnVtYmVyczp0Lm5yLHBsdXJhbHM6T1t0LmZjXX19KX0pLGV9KCl9YWRkUnVsZShlLHQpe3RoaXMucnVsZXNbZV09dH1nZXRSdWxlKGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTtpZih0aGlzLnNob3VsZFVzZUludGxBcGkoKSl0cnl7cmV0dXJuIG5ldyBJbnRsLlBsdXJhbFJ1bGVzKF8oImRldiI9PT1lPyJlbiI6ZSkse3R5cGU6dC5vcmRpbmFsPyJvcmRpbmFsIjoiY2FyZGluYWwifSl9Y2F0Y2goZSl7cmV0dXJufXJldHVybiB0aGlzLnJ1bGVzW2VdfHx0aGlzLnJ1bGVzW3RoaXMubGFuZ3VhZ2VVdGlscy5nZXRMYW5ndWFnZVBhcnRGcm9tQ29kZShlKV19bmVlZHNQbHVyYWwoZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O2NvbnN0IG49dGhpcy5nZXRSdWxlKGUsdCk7cmV0dXJuIHRoaXMuc2hvdWxkVXNlSW50bEFwaSgpP24mJm4ucmVzb2x2ZWRPcHRpb25zKCkucGx1cmFsQ2F0ZWdvcmllcy5sZW5ndGg+MTpuJiZuLm51bWJlcnMubGVuZ3RoPjF9Z2V0UGx1cmFsRm9ybXNPZktleShlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtyZXR1cm4gdGhpcy5nZXRTdWZmaXhlcyhlLG4pLm1hcChlPT5gJHt0fSR7ZX1gKX1nZXRTdWZmaXhlcyhlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e307Y29uc3Qgbj10aGlzLmdldFJ1bGUoZSx0KTtyZXR1cm4gbj90aGlzLnNob3VsZFVzZUludGxBcGkoKT9uLnJlc29sdmVkT3B0aW9ucygpLnBsdXJhbENhdGVnb3JpZXMuc29ydCgoZSx0KT0+UFtlXS1QW3RdKS5tYXAoZT0+YCR7dGhpcy5vcHRpb25zLnByZXBlbmR9JHt0Lm9yZGluYWw/Im9yZGluYWwiK3RoaXMub3B0aW9ucy5wcmVwZW5kOiIifSR7ZX1gKTpuLm51bWJlcnMubWFwKG49PnRoaXMuZ2V0U3VmZml4KGUsbix0KSk6W119Z2V0U3VmZml4KGUsdCl7bGV0IG49YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnt9O2NvbnN0IGk9dGhpcy5nZXRSdWxlKGUsbik7cmV0dXJuIGk/dGhpcy5zaG91bGRVc2VJbnRsQXBpKCk/YCR7dGhpcy5vcHRpb25zLnByZXBlbmR9JHtuLm9yZGluYWw/Im9yZGluYWwiK3RoaXMub3B0aW9ucy5wcmVwZW5kOiIifSR7aS5zZWxlY3QodCl9YDp0aGlzLmdldFN1ZmZpeFJldHJvQ29tcGF0aWJsZShpLHQpOih0aGlzLmxvZ2dlci53YXJuKCJubyBwbHVyYWwgcnVsZSBmb3VuZCBmb3I6ICIrZSksIiIpfWdldFN1ZmZpeFJldHJvQ29tcGF0aWJsZShlLHQpe2NvbnN0IG49ZS5ub0Ficz9lLnBsdXJhbHModCk6ZS5wbHVyYWxzKE1hdGguYWJzKHQpKTtsZXQgaT1lLm51bWJlcnNbbl07dGhpcy5vcHRpb25zLnNpbXBsaWZ5UGx1cmFsU3VmZml4JiYyPT09ZS5udW1iZXJzLmxlbmd0aCYmMT09PWUubnVtYmVyc1swXSYmKDI9PT1pP2k9InBsdXJhbCI6MT09PWkmJihpPSIiKSk7Y29uc3Qgcj0oKT0+dGhpcy5vcHRpb25zLnByZXBlbmQmJmkudG9TdHJpbmcoKT90aGlzLm9wdGlvbnMucHJlcGVuZCtpLnRvU3RyaW5nKCk6aS50b1N0cmluZygpO3JldHVybiJ2MSI9PT10aGlzLm9wdGlvbnMuY29tcGF0aWJpbGl0eUpTT04/MT09PWk/IiI6Im51bWJlciI9PXR5cGVvZiBpPyJfcGx1cmFsXyIraS50b1N0cmluZygpOnIoKToidjIiPT09dGhpcy5vcHRpb25zLmNvbXBhdGliaWxpdHlKU09OfHx0aGlzLm9wdGlvbnMuc2ltcGxpZnlQbHVyYWxTdWZmaXgmJjI9PT1lLm51bWJlcnMubGVuZ3RoJiYxPT09ZS5udW1iZXJzWzBdP3IoKTp0aGlzLm9wdGlvbnMucHJlcGVuZCYmbi50b1N0cmluZygpP3RoaXMub3B0aW9ucy5wcmVwZW5kK24udG9TdHJpbmcoKTpuLnRvU3RyaW5nKCl9c2hvdWxkVXNlSW50bEFwaSgpe3JldHVybiFFLmluY2x1ZGVzKHRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5SlNPTil9fWZ1bmN0aW9uIEEoZSx0LG4pe2xldCBpPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToiLiIscj0hKGFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdKXx8YXJndW1lbnRzWzRdLG89aChlLHQsbik7cmV0dXJuIW8mJnImJiJzdHJpbmciPT10eXBlb2YgbiYmKG89YihlLG4saSksdm9pZCAwPT09byYmKG89Yih0LG4saSkpKSxvfWNsYXNzIEl7Y29uc3RydWN0b3IoKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307dGhpcy5sb2dnZXI9by5jcmVhdGUoImludGVycG9sYXRvciIpLHRoaXMub3B0aW9ucz1lLHRoaXMuZm9ybWF0PWUuaW50ZXJwb2xhdGlvbiYmZS5pbnRlcnBvbGF0aW9uLmZvcm1hdHx8KGU9PmUpLHRoaXMuaW5pdChlKX1pbml0KCl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnt9O2UuaW50ZXJwb2xhdGlvbnx8KGUuaW50ZXJwb2xhdGlvbj17ZXNjYXBlVmFsdWU6ITB9KTtjb25zdHtlc2NhcGU6dCxlc2NhcGVWYWx1ZTpuLHVzZVJhd1ZhbHVlVG9Fc2NhcGU6aSxwcmVmaXg6cixwcmVmaXhFc2NhcGVkOm8sc3VmZml4OmEsc3VmZml4RXNjYXBlZDpzLGZvcm1hdFNlcGFyYXRvcjpsLHVuZXNjYXBlU3VmZml4OmMsdW5lc2NhcGVQcmVmaXg6dSxuZXN0aW5nUHJlZml4OmQsbmVzdGluZ1ByZWZpeEVzY2FwZWQ6cCxuZXN0aW5nU3VmZml4OmgsbmVzdGluZ1N1ZmZpeEVzY2FwZWQ6ZyxuZXN0aW5nT3B0aW9uc1NlcGFyYXRvcjp5LG1heFJlcGxhY2VzOnYsYWx3YXlzRm9ybWF0OmJ9PWUuaW50ZXJwb2xhdGlvbjt0aGlzLmVzY2FwZT12b2lkIDAhPT10P3Q6bSx0aGlzLmVzY2FwZVZhbHVlPXZvaWQgMD09PW58fG4sdGhpcy51c2VSYXdWYWx1ZVRvRXNjYXBlPXZvaWQgMCE9PWkmJmksdGhpcy5wcmVmaXg9cj9mKHIpOm98fCJ7eyIsdGhpcy5zdWZmaXg9YT9mKGEpOnN8fCJ9fSIsdGhpcy5mb3JtYXRTZXBhcmF0b3I9bHx8IiwiLHRoaXMudW5lc2NhcGVQcmVmaXg9Yz8iIjp1fHwiLSIsdGhpcy51bmVzY2FwZVN1ZmZpeD10aGlzLnVuZXNjYXBlUHJlZml4PyIiOmN8fCIiLHRoaXMubmVzdGluZ1ByZWZpeD1kP2YoZCk6cHx8ZigiJHQoIiksdGhpcy5uZXN0aW5nU3VmZml4PWg/ZihoKTpnfHxmKCIpIiksdGhpcy5uZXN0aW5nT3B0aW9uc1NlcGFyYXRvcj15fHwiLCIsdGhpcy5tYXhSZXBsYWNlcz12fHwxZTMsdGhpcy5hbHdheXNGb3JtYXQ9dm9pZCAwIT09YiYmYix0aGlzLnJlc2V0UmVnRXhwKCl9cmVzZXQoKXt0aGlzLm9wdGlvbnMmJnRoaXMuaW5pdCh0aGlzLm9wdGlvbnMpfXJlc2V0UmVnRXhwKCl7Y29uc3QgZT0oZSx0KT0+ZSYmZS5zb3VyY2U9PT10PyhlLmxhc3RJbmRleD0wLGUpOm5ldyBSZWdFeHAodCwiZyIpO3RoaXMucmVnZXhwPWUodGhpcy5yZWdleHAsYCR7dGhpcy5wcmVmaXh9KC4rPykke3RoaXMuc3VmZml4fWApLHRoaXMucmVnZXhwVW5lc2NhcGU9ZSh0aGlzLnJlZ2V4cFVuZXNjYXBlLGAke3RoaXMucHJlZml4fSR7dGhpcy51bmVzY2FwZVByZWZpeH0oLis/KSR7dGhpcy51bmVzY2FwZVN1ZmZpeH0ke3RoaXMuc3VmZml4fWApLHRoaXMubmVzdGluZ1JlZ2V4cD1lKHRoaXMubmVzdGluZ1JlZ2V4cCxgJHt0aGlzLm5lc3RpbmdQcmVmaXh9KC4rPykke3RoaXMubmVzdGluZ1N1ZmZpeH1gKX1pbnRlcnBvbGF0ZShlLHQsbixpKXtsZXQgcixvLGE7Y29uc3Qgcz10aGlzLm9wdGlvbnMmJnRoaXMub3B0aW9ucy5pbnRlcnBvbGF0aW9uJiZ0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbi5kZWZhdWx0VmFyaWFibGVzfHx7fTtmdW5jdGlvbiBjKGUpe3JldHVybiBlLnJlcGxhY2UoL1wkL2csIiQkJCQiKX1jb25zdCB1PWU9PntpZihlLmluZGV4T2YodGhpcy5mb3JtYXRTZXBhcmF0b3IpPDApe2NvbnN0IHI9QSh0LHMsZSx0aGlzLm9wdGlvbnMua2V5U2VwYXJhdG9yLHRoaXMub3B0aW9ucy5pZ25vcmVKU09OU3RydWN0dXJlKTtyZXR1cm4gdGhpcy5hbHdheXNGb3JtYXQ/dGhpcy5mb3JtYXQocix2b2lkIDAsbix7Li4uaSwuLi50LGludGVycG9sYXRpb25rZXk6ZX0pOnJ9Y29uc3Qgcj1lLnNwbGl0KHRoaXMuZm9ybWF0U2VwYXJhdG9yKSxvPXIuc2hpZnQoKS50cmltKCksYT1yLmpvaW4odGhpcy5mb3JtYXRTZXBhcmF0b3IpLnRyaW0oKTtyZXR1cm4gdGhpcy5mb3JtYXQoQSh0LHMsbyx0aGlzLm9wdGlvbnMua2V5U2VwYXJhdG9yLHRoaXMub3B0aW9ucy5pZ25vcmVKU09OU3RydWN0dXJlKSxhLG4sey4uLmksLi4udCxpbnRlcnBvbGF0aW9ua2V5Om99KX07dGhpcy5yZXNldFJlZ0V4cCgpO2NvbnN0IGQ9aSYmaS5taXNzaW5nSW50ZXJwb2xhdGlvbkhhbmRsZXJ8fHRoaXMub3B0aW9ucy5taXNzaW5nSW50ZXJwb2xhdGlvbkhhbmRsZXIscD1pJiZpLmludGVycG9sYXRpb24mJnZvaWQgMCE9PWkuaW50ZXJwb2xhdGlvbi5za2lwT25WYXJpYWJsZXM/aS5pbnRlcnBvbGF0aW9uLnNraXBPblZhcmlhYmxlczp0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbi5za2lwT25WYXJpYWJsZXM7cmV0dXJuW3tyZWdleDp0aGlzLnJlZ2V4cFVuZXNjYXBlLHNhZmVWYWx1ZTplPT5jKGUpfSx7cmVnZXg6dGhpcy5yZWdleHAsc2FmZVZhbHVlOmU9PnRoaXMuZXNjYXBlVmFsdWU/Yyh0aGlzLmVzY2FwZShlKSk6YyhlKX1dLmZvckVhY2godD0+e2ZvcihhPTA7cj10LnJlZ2V4LmV4ZWMoZSk7KXtjb25zdCBuPXJbMV0udHJpbSgpO2lmKG89dShuKSx2b2lkIDA9PT1vKWlmKCJmdW5jdGlvbiI9PXR5cGVvZiBkKXtjb25zdCB0PWQoZSxyLGkpO289InN0cmluZyI9PXR5cGVvZiB0P3Q6IiJ9ZWxzZSBpZihpJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaSxuKSlvPSIiO2Vsc2V7aWYocCl7bz1yWzBdO2NvbnRpbnVlfXRoaXMubG9nZ2VyLndhcm4oYG1pc3NlZCB0byBwYXNzIGluIHZhcmlhYmxlICR7bn0gZm9yIGludGVycG9sYXRpbmcgJHtlfWApLG89IiJ9ZWxzZSJzdHJpbmciPT10eXBlb2Ygb3x8dGhpcy51c2VSYXdWYWx1ZVRvRXNjYXBlfHwobz1sKG8pKTtjb25zdCBzPXQuc2FmZVZhbHVlKG8pO2lmKGU9ZS5yZXBsYWNlKHJbMF0scykscD8odC5yZWdleC5sYXN0SW5kZXgrPW8ubGVuZ3RoLHQucmVnZXgubGFzdEluZGV4LT1yWzBdLmxlbmd0aCk6dC5yZWdleC5sYXN0SW5kZXg9MCxhKyssYT49dGhpcy5tYXhSZXBsYWNlcylicmVha319KSxlfW5lc3QoZSx0KXtsZXQgbixpLHIsbz1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e307ZnVuY3Rpb24gYShlLHQpe2NvbnN0IG49dGhpcy5uZXN0aW5nT3B0aW9uc1NlcGFyYXRvcjtpZihlLmluZGV4T2Yobik8MClyZXR1cm4gZTtjb25zdCBpPWUuc3BsaXQobmV3IFJlZ0V4cChuKyJbIF0qeyIpKTtsZXQgbz0ieyIraVsxXTtlPWlbMF0sbz10aGlzLmludGVycG9sYXRlKG8scik7Y29uc3QgYT1vLm1hdGNoKC8nL2cpLHM9by5tYXRjaCgvIi9nKTsoYSYmYS5sZW5ndGglMj09MCYmIXN8fHMubGVuZ3RoJTIhPTApJiYobz1vLnJlcGxhY2UoLycvZywnIicpKTt0cnl7cj1KU09OLnBhcnNlKG8pLHQmJihyPXsuLi50LC4uLnJ9KX1jYXRjaCh0KXtyZXR1cm4gdGhpcy5sb2dnZXIud2FybigiZmFpbGVkIHBhcnNpbmcgb3B0aW9ucyBzdHJpbmcgaW4gbmVzdGluZyBmb3Iga2V5ICIrZSx0KSxgJHtlfSR7bn0ke299YH1yZXR1cm4gci5kZWZhdWx0VmFsdWUmJnIuZGVmYXVsdFZhbHVlLmluZGV4T2YodGhpcy5wcmVmaXgpPi0xJiZkZWxldGUgci5kZWZhdWx0VmFsdWUsZX1mb3IoO249dGhpcy5uZXN0aW5nUmVnZXhwLmV4ZWMoZSk7KXtsZXQgcz1bXTtyPXsuLi5vfSxyPXIucmVwbGFjZSYmInN0cmluZyIhPXR5cGVvZiByLnJlcGxhY2U/ci5yZXBsYWNlOnIsci5hcHBseVBvc3RQcm9jZXNzb3I9ITEsZGVsZXRlIHIuZGVmYXVsdFZhbHVlO2xldCBjPSExO2lmKC0xIT09blswXS5pbmRleE9mKHRoaXMuZm9ybWF0U2VwYXJhdG9yKSYmIS97Lip9Ly50ZXN0KG5bMV0pKXtjb25zdCBlPW5bMV0uc3BsaXQodGhpcy5mb3JtYXRTZXBhcmF0b3IpLm1hcChlPT5lLnRyaW0oKSk7blsxXT1lLnNoaWZ0KCkscz1lLGM9ITB9aWYoaT10KGEuY2FsbCh0aGlzLG5bMV0udHJpbSgpLHIpLHIpLGkmJm5bMF09PT1lJiYic3RyaW5nIiE9dHlwZW9mIGkpcmV0dXJuIGk7InN0cmluZyIhPXR5cGVvZiBpJiYoaT1sKGkpKSxpfHwodGhpcy5sb2dnZXIud2FybihgbWlzc2VkIHRvIHJlc29sdmUgJHtuWzFdfSBmb3IgbmVzdGluZyAke2V9YCksaT0iIiksYyYmKGk9cy5yZWR1Y2UoKGUsdCk9PnRoaXMuZm9ybWF0KGUsdCxvLmxuZyx7Li4ubyxpbnRlcnBvbGF0aW9ua2V5Om5bMV0udHJpbSgpfSksaS50cmltKCkpKSxlPWUucmVwbGFjZShuWzBdLGkpLHRoaXMucmVnZXhwLmxhc3RJbmRleD0wfXJldHVybiBlfX1mdW5jdGlvbiAkKGUpe2NvbnN0IHQ9e307cmV0dXJuIGZ1bmN0aW9uKG4saSxyKXtjb25zdCBvPWkrSlNPTi5zdHJpbmdpZnkocik7bGV0IGE9dFtvXTtyZXR1cm4gYXx8KGE9ZShfKGkpLHIpLHRbb109YSksYShuKX19Y2xhc3MgRHtjb25zdHJ1Y3Rvcigpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fTt0aGlzLmxvZ2dlcj1vLmNyZWF0ZSgiZm9ybWF0dGVyIiksdGhpcy5vcHRpb25zPWUsdGhpcy5mb3JtYXRzPXtudW1iZXI6JCgoZSx0KT0+e2NvbnN0IG49bmV3IEludGwuTnVtYmVyRm9ybWF0KGUsey4uLnR9KTtyZXR1cm4gZT0+bi5mb3JtYXQoZSl9KSxjdXJyZW5jeTokKChlLHQpPT57Y29uc3Qgbj1uZXcgSW50bC5OdW1iZXJGb3JtYXQoZSx7Li4udCxzdHlsZToiY3VycmVuY3kifSk7cmV0dXJuIGU9Pm4uZm9ybWF0KGUpfSksZGF0ZXRpbWU6JCgoZSx0KT0+e2NvbnN0IG49bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoZSx7Li4udH0pO3JldHVybiBlPT5uLmZvcm1hdChlKX0pLHJlbGF0aXZldGltZTokKChlLHQpPT57Y29uc3Qgbj1uZXcgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQoZSx7Li4udH0pO3JldHVybiBlPT5uLmZvcm1hdChlLHQucmFuZ2V8fCJkYXkiKX0pLGxpc3Q6JCgoZSx0KT0+e2NvbnN0IG49bmV3IEludGwuTGlzdEZvcm1hdChlLHsuLi50fSk7cmV0dXJuIGU9Pm4uZm9ybWF0KGUpfSl9LHRoaXMuaW5pdChlKX1pbml0KGUpe2NvbnN0IHQ9KGFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7aW50ZXJwb2xhdGlvbjp7fX0pLmludGVycG9sYXRpb247dGhpcy5mb3JtYXRTZXBhcmF0b3I9dC5mb3JtYXRTZXBhcmF0b3I/dC5mb3JtYXRTZXBhcmF0b3I6dC5mb3JtYXRTZXBhcmF0b3J8fCIsIn1hZGQoZSx0KXt0aGlzLmZvcm1hdHNbZS50b0xvd2VyQ2FzZSgpLnRyaW0oKV09dH1hZGRDYWNoZWQoZSx0KXt0aGlzLmZvcm1hdHNbZS50b0xvd2VyQ2FzZSgpLnRyaW0oKV09JCh0KX1mb3JtYXQoZSx0LG4pe2xldCBpPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTp7fTtyZXR1cm4gdC5zcGxpdCh0aGlzLmZvcm1hdFNlcGFyYXRvcikucmVkdWNlKChlLHQpPT57Y29uc3R7Zm9ybWF0TmFtZTpyLGZvcm1hdE9wdGlvbnM6b309ZnVuY3Rpb24oZSl7bGV0IHQ9ZS50b0xvd2VyQ2FzZSgpLnRyaW0oKTtjb25zdCBuPXt9O2lmKGUuaW5kZXhPZigiKCIpPi0xKXtjb25zdCBpPWUuc3BsaXQoIigiKTt0PWlbMF0udG9Mb3dlckNhc2UoKS50cmltKCk7Y29uc3Qgcj1pWzFdLnN1YnN0cmluZygwLGlbMV0ubGVuZ3RoLTEpO2lmKCJjdXJyZW5jeSI9PT10JiZyLmluZGV4T2YoIjoiKTwwKW4uY3VycmVuY3l8fChuLmN1cnJlbmN5PXIudHJpbSgpKTtlbHNlIGlmKCJyZWxhdGl2ZXRpbWUiPT09dCYmci5pbmRleE9mKCI6Iik8MCluLnJhbmdlfHwobi5yYW5nZT1yLnRyaW0oKSk7ZWxzZXtyLnNwbGl0KCI7IikuZm9yRWFjaChlPT57aWYoZSl7Y29uc3RbdCwuLi5pXT1lLnNwbGl0KCI6Iikscj1pLmpvaW4oIjoiKS50cmltKCkucmVwbGFjZSgvXicrfCcrJC9nLCIiKSxvPXQudHJpbSgpO25bb118fChuW29dPXIpLCJmYWxzZSI9PT1yJiYobltvXT0hMSksInRydWUiPT09ciYmKG5bb109ITApLGlzTmFOKHIpfHwobltvXT1wYXJzZUludChyLDEwKSl9fSl9fXJldHVybntmb3JtYXROYW1lOnQsZm9ybWF0T3B0aW9uczpufX0odCk7aWYodGhpcy5mb3JtYXRzW3JdKXtsZXQgdD1lO3RyeXtjb25zdCBhPWkmJmkuZm9ybWF0UGFyYW1zJiZpLmZvcm1hdFBhcmFtc1tpLmludGVycG9sYXRpb25rZXldfHx7fSxzPWEubG9jYWxlfHxhLmxuZ3x8aS5sb2NhbGV8fGkubG5nfHxuO3Q9dGhpcy5mb3JtYXRzW3JdKGUscyx7Li4ubywuLi5pLC4uLmF9KX1jYXRjaChlKXt0aGlzLmxvZ2dlci53YXJuKGUpfXJldHVybiB0fXJldHVybiB0aGlzLmxvZ2dlci53YXJuKCJ0aGVyZSB3YXMgbm8gZm9ybWF0IGZ1bmN0aW9uIGZvciAiK3IpLGV9LGUpfX1jbGFzcyBRIGV4dGVuZHMgYXtjb25zdHJ1Y3RvcihlLHQsbil7bGV0IGk9YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnt9O3N1cGVyKCksdGhpcy5iYWNrZW5kPWUsdGhpcy5zdG9yZT10LHRoaXMuc2VydmljZXM9bix0aGlzLmxhbmd1YWdlVXRpbHM9bi5sYW5ndWFnZVV0aWxzLHRoaXMub3B0aW9ucz1pLHRoaXMubG9nZ2VyPW8uY3JlYXRlKCJiYWNrZW5kQ29ubmVjdG9yIiksdGhpcy53YWl0aW5nUmVhZHM9W10sdGhpcy5tYXhQYXJhbGxlbFJlYWRzPWkubWF4UGFyYWxsZWxSZWFkc3x8MTAsdGhpcy5yZWFkaW5nQ2FsbHM9MCx0aGlzLm1heFJldHJpZXM9aS5tYXhSZXRyaWVzPj0wP2kubWF4UmV0cmllczo1LHRoaXMucmV0cnlUaW1lb3V0PWkucmV0cnlUaW1lb3V0Pj0xP2kucmV0cnlUaW1lb3V0OjM1MCx0aGlzLnN0YXRlPXt9LHRoaXMucXVldWU9W10sdGhpcy5iYWNrZW5kJiZ0aGlzLmJhY2tlbmQuaW5pdCYmdGhpcy5iYWNrZW5kLmluaXQobixpLmJhY2tlbmQsaSl9cXVldWVMb2FkKGUsdCxuLGkpe2NvbnN0IHI9e30sbz17fSxhPXt9LHM9e307cmV0dXJuIGUuZm9yRWFjaChlPT57bGV0IGk9ITA7dC5mb3JFYWNoKHQ9Pntjb25zdCBhPWAke2V9fCR7dH1gOyFuLnJlbG9hZCYmdGhpcy5zdG9yZS5oYXNSZXNvdXJjZUJ1bmRsZShlLHQpP3RoaXMuc3RhdGVbYV09Mjp0aGlzLnN0YXRlW2FdPDB8fCgxPT09dGhpcy5zdGF0ZVthXT92b2lkIDA9PT1vW2FdJiYob1thXT0hMCk6KHRoaXMuc3RhdGVbYV09MSxpPSExLHZvaWQgMD09PW9bYV0mJihvW2FdPSEwKSx2b2lkIDA9PT1yW2FdJiYoclthXT0hMCksdm9pZCAwPT09c1t0XSYmKHNbdF09ITApKSl9KSxpfHwoYVtlXT0hMCl9KSwoT2JqZWN0LmtleXMocikubGVuZ3RofHxPYmplY3Qua2V5cyhvKS5sZW5ndGgpJiZ0aGlzLnF1ZXVlLnB1c2goe3BlbmRpbmc6byxwZW5kaW5nQ291bnQ6T2JqZWN0LmtleXMobykubGVuZ3RoLGxvYWRlZDp7fSxlcnJvcnM6W10sY2FsbGJhY2s6aX0pLHt0b0xvYWQ6T2JqZWN0LmtleXMocikscGVuZGluZzpPYmplY3Qua2V5cyhvKSx0b0xvYWRMYW5ndWFnZXM6T2JqZWN0LmtleXMoYSksdG9Mb2FkTmFtZXNwYWNlczpPYmplY3Qua2V5cyhzKX19bG9hZGVkKGUsdCxuKXtjb25zdCBpPWUuc3BsaXQoInwiKSxyPWlbMF0sbz1pWzFdO3QmJnRoaXMuZW1pdCgiZmFpbGVkTG9hZGluZyIscixvLHQpLG4mJnRoaXMuc3RvcmUuYWRkUmVzb3VyY2VCdW5kbGUocixvLG4sdm9pZCAwLHZvaWQgMCx7c2tpcENvcHk6ITB9KSx0aGlzLnN0YXRlW2VdPXQ/LTE6Mjtjb25zdCBhPXt9O3RoaXMucXVldWUuZm9yRWFjaChuPT57KGZ1bmN0aW9uKGUsdCxuLGkpe2NvbnN0e29iajpyLGs6b309dShlLHQsT2JqZWN0KTtyW29dPXJbb118fFtdLGkmJihyW29dPXJbb10uY29uY2F0KG4pKSxpfHxyW29dLnB1c2gobil9KShuLmxvYWRlZCxbcl0sbyksZnVuY3Rpb24oZSx0KXt2b2lkIDAhPT1lLnBlbmRpbmdbdF0mJihkZWxldGUgZS5wZW5kaW5nW3RdLGUucGVuZGluZ0NvdW50LS0pfShuLGUpLHQmJm4uZXJyb3JzLnB1c2godCksMCE9PW4ucGVuZGluZ0NvdW50fHxuLmRvbmV8fChPYmplY3Qua2V5cyhuLmxvYWRlZCkuZm9yRWFjaChlPT57YVtlXXx8KGFbZV09e30pO2NvbnN0IHQ9bi5sb2FkZWRbZV07dC5sZW5ndGgmJnQuZm9yRWFjaCh0PT57dm9pZCAwPT09YVtlXVt0XSYmKGFbZV1bdF09ITApfSl9KSxuLmRvbmU9ITAsbi5lcnJvcnMubGVuZ3RoP24uY2FsbGJhY2sobi5lcnJvcnMpOm4uY2FsbGJhY2soKSl9KSx0aGlzLmVtaXQoImxvYWRlZCIsYSksdGhpcy5xdWV1ZT10aGlzLnF1ZXVlLmZpbHRlcihlPT4hZS5kb25lKX1yZWFkKGUsdCxuKXtsZXQgaT1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MCxyPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XTp0aGlzLnJldHJ5VGltZW91dCxvPWFyZ3VtZW50cy5sZW5ndGg+NT9hcmd1bWVudHNbNV06dm9pZCAwO2lmKCFlLmxlbmd0aClyZXR1cm4gbyhudWxsLHt9KTtpZih0aGlzLnJlYWRpbmdDYWxscz49dGhpcy5tYXhQYXJhbGxlbFJlYWRzKXJldHVybiB2b2lkIHRoaXMud2FpdGluZ1JlYWRzLnB1c2goe2xuZzplLG5zOnQsZmNOYW1lOm4sdHJpZWQ6aSx3YWl0OnIsY2FsbGJhY2s6b30pO3RoaXMucmVhZGluZ0NhbGxzKys7Y29uc3QgYT0oYSxzKT0+e2lmKHRoaXMucmVhZGluZ0NhbGxzLS0sdGhpcy53YWl0aW5nUmVhZHMubGVuZ3RoPjApe2NvbnN0IGU9dGhpcy53YWl0aW5nUmVhZHMuc2hpZnQoKTt0aGlzLnJlYWQoZS5sbmcsZS5ucyxlLmZjTmFtZSxlLnRyaWVkLGUud2FpdCxlLmNhbGxiYWNrKX1hJiZzJiZpPHRoaXMubWF4UmV0cmllcz9zZXRUaW1lb3V0KCgpPT57dGhpcy5yZWFkLmNhbGwodGhpcyxlLHQsbixpKzEsMipyLG8pfSxyKTpvKGEscyl9LHM9dGhpcy5iYWNrZW5kW25dLmJpbmQodGhpcy5iYWNrZW5kKTtpZigyIT09cy5sZW5ndGgpcmV0dXJuIHMoZSx0LGEpO3RyeXtjb25zdCBuPXMoZSx0KTtuJiYiZnVuY3Rpb24iPT10eXBlb2Ygbi50aGVuP24udGhlbihlPT5hKG51bGwsZSkpLmNhdGNoKGEpOmEobnVsbCxuKX1jYXRjaChlKXthKGUpfX1wcmVwYXJlTG9hZGluZyhlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fSxpPWFyZ3VtZW50cy5sZW5ndGg+Mz9hcmd1bWVudHNbM106dm9pZCAwO2lmKCF0aGlzLmJhY2tlbmQpcmV0dXJuIHRoaXMubG9nZ2VyLndhcm4oIk5vIGJhY2tlbmQgd2FzIGFkZGVkIHZpYSBpMThuZXh0LnVzZS4gV2lsbCBub3QgbG9hZCByZXNvdXJjZXMuIiksaSYmaSgpOyJzdHJpbmciPT10eXBlb2YgZSYmKGU9dGhpcy5sYW5ndWFnZVV0aWxzLnRvUmVzb2x2ZUhpZXJhcmNoeShlKSksInN0cmluZyI9PXR5cGVvZiB0JiYodD1bdF0pO2NvbnN0IHI9dGhpcy5xdWV1ZUxvYWQoZSx0LG4saSk7aWYoIXIudG9Mb2FkLmxlbmd0aClyZXR1cm4gci5wZW5kaW5nLmxlbmd0aHx8aSgpLG51bGw7ci50b0xvYWQuZm9yRWFjaChlPT57dGhpcy5sb2FkT25lKGUpfSl9bG9hZChlLHQsbil7dGhpcy5wcmVwYXJlTG9hZGluZyhlLHQse30sbil9cmVsb2FkKGUsdCxuKXt0aGlzLnByZXBhcmVMb2FkaW5nKGUsdCx7cmVsb2FkOiEwfSxuKX1sb2FkT25lKGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToiIjtjb25zdCBuPWUuc3BsaXQoInwiKSxpPW5bMF0scj1uWzFdO3RoaXMucmVhZChpLHIsInJlYWQiLHZvaWQgMCx2b2lkIDAsKG4sbyk9PntuJiZ0aGlzLmxvZ2dlci53YXJuKGAke3R9bG9hZGluZyBuYW1lc3BhY2UgJHtyfSBmb3IgbGFuZ3VhZ2UgJHtpfSBmYWlsZWRgLG4pLCFuJiZvJiZ0aGlzLmxvZ2dlci5sb2coYCR7dH1sb2FkZWQgbmFtZXNwYWNlICR7cn0gZm9yIGxhbmd1YWdlICR7aX1gLG8pLHRoaXMubG9hZGVkKGUsbixvKX0pfXNhdmVNaXNzaW5nKGUsdCxuLGkscil7bGV0IG89YXJndW1lbnRzLmxlbmd0aD41JiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0/YXJndW1lbnRzWzVdOnt9LGE9YXJndW1lbnRzLmxlbmd0aD42JiZ2b2lkIDAhPT1hcmd1bWVudHNbNl0/YXJndW1lbnRzWzZdOigpPT57fTtpZih0aGlzLnNlcnZpY2VzLnV0aWxzJiZ0aGlzLnNlcnZpY2VzLnV0aWxzLmhhc0xvYWRlZE5hbWVzcGFjZSYmIXRoaXMuc2VydmljZXMudXRpbHMuaGFzTG9hZGVkTmFtZXNwYWNlKHQpKXRoaXMubG9nZ2VyLndhcm4oYGRpZCBub3Qgc2F2ZSBrZXkgIiR7bn0iIGFzIHRoZSBuYW1lc3BhY2UgIiR7dH0iIHdhcyBub3QgeWV0IGxvYWRlZGAsIlRoaXMgbWVhbnMgc29tZXRoaW5nIElTIFdST05HIGluIHlvdXIgc2V0dXAuIFlvdSBhY2Nlc3MgdGhlIHQgZnVuY3Rpb24gYmVmb3JlIGkxOG5leHQuaW5pdCAvIGkxOG5leHQubG9hZE5hbWVzcGFjZSAvIGkxOG5leHQuY2hhbmdlTGFuZ3VhZ2Ugd2FzIGRvbmUuIFdhaXQgZm9yIHRoZSBjYWxsYmFjayBvciBQcm9taXNlIHRvIHJlc29sdmUgYmVmb3JlIGFjY2Vzc2luZyBpdCEhISIpO2Vsc2UgaWYobnVsbCE9biYmIiIhPT1uKXtpZih0aGlzLmJhY2tlbmQmJnRoaXMuYmFja2VuZC5jcmVhdGUpe2NvbnN0IHM9ey4uLm8saXNVcGRhdGU6cn0sbD10aGlzLmJhY2tlbmQuY3JlYXRlLmJpbmQodGhpcy5iYWNrZW5kKTtpZihsLmxlbmd0aDw2KXRyeXtsZXQgcjtyPTU9PT1sLmxlbmd0aD9sKGUsdCxuLGkscyk6bChlLHQsbixpKSxyJiYiZnVuY3Rpb24iPT10eXBlb2Ygci50aGVuP3IudGhlbihlPT5hKG51bGwsZSkpLmNhdGNoKGEpOmEobnVsbCxyKX1jYXRjaChlKXthKGUpfWVsc2UgbChlLHQsbixpLGEscyl9ZSYmZVswXSYmdGhpcy5zdG9yZS5hZGRSZXNvdXJjZShlWzBdLHQsbixpKX19fWZ1bmN0aW9uIE0oKXtyZXR1cm57ZGVidWc6ITEsaW5pdEltbWVkaWF0ZTohMCxuczpbInRyYW5zbGF0aW9uIl0sZGVmYXVsdE5TOlsidHJhbnNsYXRpb24iXSxmYWxsYmFja0xuZzpbImRldiJdLGZhbGxiYWNrTlM6ITEsc3VwcG9ydGVkTG5nczohMSxub25FeHBsaWNpdFN1cHBvcnRlZExuZ3M6ITEsbG9hZDoiYWxsIixwcmVsb2FkOiExLHNpbXBsaWZ5UGx1cmFsU3VmZml4OiEwLGtleVNlcGFyYXRvcjoiLiIsbnNTZXBhcmF0b3I6IjoiLHBsdXJhbFNlcGFyYXRvcjoiXyIsY29udGV4dFNlcGFyYXRvcjoiXyIscGFydGlhbEJ1bmRsZWRMYW5ndWFnZXM6ITEsc2F2ZU1pc3Npbmc6ITEsdXBkYXRlTWlzc2luZzohMSxzYXZlTWlzc2luZ1RvOiJmYWxsYmFjayIsc2F2ZU1pc3NpbmdQbHVyYWxzOiEwLG1pc3NpbmdLZXlIYW5kbGVyOiExLG1pc3NpbmdJbnRlcnBvbGF0aW9uSGFuZGxlcjohMSxwb3N0UHJvY2VzczohMSxwb3N0UHJvY2Vzc1Bhc3NSZXNvbHZlZDohMSxyZXR1cm5OdWxsOiExLHJldHVybkVtcHR5U3RyaW5nOiEwLHJldHVybk9iamVjdHM6ITEsam9pbkFycmF5czohMSxyZXR1cm5lZE9iamVjdEhhbmRsZXI6ITEscGFyc2VNaXNzaW5nS2V5SGFuZGxlcjohMSxhcHBlbmROYW1lc3BhY2VUb01pc3NpbmdLZXk6ITEsYXBwZW5kTmFtZXNwYWNlVG9DSU1vZGU6ITEsb3ZlcmxvYWRUcmFuc2xhdGlvbk9wdGlvbkhhbmRsZXI6ZnVuY3Rpb24oZSl7bGV0IHQ9e307aWYoIm9iamVjdCI9PXR5cGVvZiBlWzFdJiYodD1lWzFdKSwic3RyaW5nIj09dHlwZW9mIGVbMV0mJih0LmRlZmF1bHRWYWx1ZT1lWzFdKSwic3RyaW5nIj09dHlwZW9mIGVbMl0mJih0LnREZXNjcmlwdGlvbj1lWzJdKSwib2JqZWN0Ij09dHlwZW9mIGVbMl18fCJvYmplY3QiPT10eXBlb2YgZVszXSl7Y29uc3Qgbj1lWzNdfHxlWzJdO09iamVjdC5rZXlzKG4pLmZvckVhY2goZT0+e3RbZV09bltlXX0pfXJldHVybiB0fSxpbnRlcnBvbGF0aW9uOntlc2NhcGVWYWx1ZTohMCxmb3JtYXQ6ZT0+ZSxwcmVmaXg6Int7IixzdWZmaXg6In19Iixmb3JtYXRTZXBhcmF0b3I6IiwiLHVuZXNjYXBlUHJlZml4OiItIixuZXN0aW5nUHJlZml4OiIkdCgiLG5lc3RpbmdTdWZmaXg6IikiLG5lc3RpbmdPcHRpb25zU2VwYXJhdG9yOiIsIixtYXhSZXBsYWNlczoxZTMsc2tpcE9uVmFyaWFibGVzOiEwfX19ZnVuY3Rpb24gTihlKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGUubnMmJihlLm5zPVtlLm5zXSksInN0cmluZyI9PXR5cGVvZiBlLmZhbGxiYWNrTG5nJiYoZS5mYWxsYmFja0xuZz1bZS5mYWxsYmFja0xuZ10pLCJzdHJpbmciPT10eXBlb2YgZS5mYWxsYmFja05TJiYoZS5mYWxsYmFja05TPVtlLmZhbGxiYWNrTlNdKSxlLnN1cHBvcnRlZExuZ3MmJmUuc3VwcG9ydGVkTG5ncy5pbmRleE9mKCJjaW1vZGUiKTwwJiYoZS5zdXBwb3J0ZWRMbmdzPWUuc3VwcG9ydGVkTG5ncy5jb25jYXQoWyJjaW1vZGUiXSkpLGV9ZnVuY3Rpb24gQigpe31jbGFzcyBxIGV4dGVuZHMgYXtjb25zdHJ1Y3Rvcigpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSx0PWFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwO2lmKHN1cGVyKCksdGhpcy5vcHRpb25zPU4oZSksdGhpcy5zZXJ2aWNlcz17fSx0aGlzLmxvZ2dlcj1vLHRoaXMubW9kdWxlcz17ZXh0ZXJuYWw6W119LGZ1bmN0aW9uKGUpe09iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKSkuZm9yRWFjaCh0PT57ImZ1bmN0aW9uIj09dHlwZW9mIGVbdF0mJihlW3RdPWVbdF0uYmluZChlKSl9KX0odGhpcyksdCYmIXRoaXMuaXNJbml0aWFsaXplZCYmIWUuaXNDbG9uZSl7aWYoIXRoaXMub3B0aW9ucy5pbml0SW1tZWRpYXRlKXJldHVybiB0aGlzLmluaXQoZSx0KSx0aGlzO3NldFRpbWVvdXQoKCk9Pnt0aGlzLmluaXQoZSx0KX0sMCl9fWluaXQoKXt2YXIgZT10aGlzO2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSxuPWFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwO3RoaXMuaXNJbml0aWFsaXppbmc9ITAsImZ1bmN0aW9uIj09dHlwZW9mIHQmJihuPXQsdD17fSksIXQuZGVmYXVsdE5TJiYhMSE9PXQuZGVmYXVsdE5TJiZ0Lm5zJiYoInN0cmluZyI9PXR5cGVvZiB0Lm5zP3QuZGVmYXVsdE5TPXQubnM6dC5ucy5pbmRleE9mKCJ0cmFuc2xhdGlvbiIpPDAmJih0LmRlZmF1bHROUz10Lm5zWzBdKSk7Y29uc3QgaT1NKCk7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZT8iZnVuY3Rpb24iPT10eXBlb2YgZT9uZXcgZTplOm51bGx9aWYodGhpcy5vcHRpb25zPXsuLi5pLC4uLnRoaXMub3B0aW9ucywuLi5OKHQpfSwidjEiIT09dGhpcy5vcHRpb25zLmNvbXBhdGliaWxpdHlBUEkmJih0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbj17Li4uaS5pbnRlcnBvbGF0aW9uLC4uLnRoaXMub3B0aW9ucy5pbnRlcnBvbGF0aW9ufSksdm9pZCAwIT09dC5rZXlTZXBhcmF0b3ImJih0aGlzLm9wdGlvbnMudXNlckRlZmluZWRLZXlTZXBhcmF0b3I9dC5rZXlTZXBhcmF0b3IpLHZvaWQgMCE9PXQubnNTZXBhcmF0b3ImJih0aGlzLm9wdGlvbnMudXNlckRlZmluZWROc1NlcGFyYXRvcj10Lm5zU2VwYXJhdG9yKSwhdGhpcy5vcHRpb25zLmlzQ2xvbmUpe2xldCB0O3RoaXMubW9kdWxlcy5sb2dnZXI/by5pbml0KHIodGhpcy5tb2R1bGVzLmxvZ2dlciksdGhpcy5vcHRpb25zKTpvLmluaXQobnVsbCx0aGlzLm9wdGlvbnMpLHRoaXMubW9kdWxlcy5mb3JtYXR0ZXI/dD10aGlzLm1vZHVsZXMuZm9ybWF0dGVyOiJ1bmRlZmluZWQiIT10eXBlb2YgSW50bCYmKHQ9RCk7Y29uc3Qgbj1uZXcgTCh0aGlzLm9wdGlvbnMpO3RoaXMuc3RvcmU9bmV3IHcodGhpcy5vcHRpb25zLnJlc291cmNlcyx0aGlzLm9wdGlvbnMpO2NvbnN0IGE9dGhpcy5zZXJ2aWNlczthLmxvZ2dlcj1vLGEucmVzb3VyY2VTdG9yZT10aGlzLnN0b3JlLGEubGFuZ3VhZ2VVdGlscz1uLGEucGx1cmFsUmVzb2x2ZXI9bmV3IFIobix7cHJlcGVuZDp0aGlzLm9wdGlvbnMucGx1cmFsU2VwYXJhdG9yLGNvbXBhdGliaWxpdHlKU09OOnRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5SlNPTixzaW1wbGlmeVBsdXJhbFN1ZmZpeDp0aGlzLm9wdGlvbnMuc2ltcGxpZnlQbHVyYWxTdWZmaXh9KSwhdHx8dGhpcy5vcHRpb25zLmludGVycG9sYXRpb24uZm9ybWF0JiZ0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbi5mb3JtYXQhPT1pLmludGVycG9sYXRpb24uZm9ybWF0fHwoYS5mb3JtYXR0ZXI9cih0KSxhLmZvcm1hdHRlci5pbml0KGEsdGhpcy5vcHRpb25zKSx0aGlzLm9wdGlvbnMuaW50ZXJwb2xhdGlvbi5mb3JtYXQ9YS5mb3JtYXR0ZXIuZm9ybWF0LmJpbmQoYS5mb3JtYXR0ZXIpKSxhLmludGVycG9sYXRvcj1uZXcgSSh0aGlzLm9wdGlvbnMpLGEudXRpbHM9e2hhc0xvYWRlZE5hbWVzcGFjZTp0aGlzLmhhc0xvYWRlZE5hbWVzcGFjZS5iaW5kKHRoaXMpfSxhLmJhY2tlbmRDb25uZWN0b3I9bmV3IFEocih0aGlzLm1vZHVsZXMuYmFja2VuZCksYS5yZXNvdXJjZVN0b3JlLGEsdGhpcy5vcHRpb25zKSxhLmJhY2tlbmRDb25uZWN0b3Iub24oIioiLChmdW5jdGlvbih0KXtmb3IodmFyIG49YXJndW1lbnRzLmxlbmd0aCxpPW5ldyBBcnJheShuPjE/bi0xOjApLHI9MTtyPG47cisrKWlbci0xXT1hcmd1bWVudHNbcl07ZS5lbWl0KHQsLi4uaSl9KSksdGhpcy5tb2R1bGVzLmxhbmd1YWdlRGV0ZWN0b3ImJihhLmxhbmd1YWdlRGV0ZWN0b3I9cih0aGlzLm1vZHVsZXMubGFuZ3VhZ2VEZXRlY3RvciksYS5sYW5ndWFnZURldGVjdG9yLmluaXQmJmEubGFuZ3VhZ2VEZXRlY3Rvci5pbml0KGEsdGhpcy5vcHRpb25zLmRldGVjdGlvbix0aGlzLm9wdGlvbnMpKSx0aGlzLm1vZHVsZXMuaTE4bkZvcm1hdCYmKGEuaTE4bkZvcm1hdD1yKHRoaXMubW9kdWxlcy5pMThuRm9ybWF0KSxhLmkxOG5Gb3JtYXQuaW5pdCYmYS5pMThuRm9ybWF0LmluaXQodGhpcykpLHRoaXMudHJhbnNsYXRvcj1uZXcgeCh0aGlzLnNlcnZpY2VzLHRoaXMub3B0aW9ucyksdGhpcy50cmFuc2xhdG9yLm9uKCIqIiwoZnVuY3Rpb24odCl7Zm9yKHZhciBuPWFyZ3VtZW50cy5sZW5ndGgsaT1uZXcgQXJyYXkobj4xP24tMTowKSxyPTE7cjxuO3IrKylpW3ItMV09YXJndW1lbnRzW3JdO2UuZW1pdCh0LC4uLmkpfSkpLHRoaXMubW9kdWxlcy5leHRlcm5hbC5mb3JFYWNoKGU9PntlLmluaXQmJmUuaW5pdCh0aGlzKX0pfWlmKHRoaXMuZm9ybWF0PXRoaXMub3B0aW9ucy5pbnRlcnBvbGF0aW9uLmZvcm1hdCxufHwobj1CKSx0aGlzLm9wdGlvbnMuZmFsbGJhY2tMbmcmJiF0aGlzLnNlcnZpY2VzLmxhbmd1YWdlRGV0ZWN0b3ImJiF0aGlzLm9wdGlvbnMubG5nKXtjb25zdCBlPXRoaXMuc2VydmljZXMubGFuZ3VhZ2VVdGlscy5nZXRGYWxsYmFja0NvZGVzKHRoaXMub3B0aW9ucy5mYWxsYmFja0xuZyk7ZS5sZW5ndGg+MCYmImRldiIhPT1lWzBdJiYodGhpcy5vcHRpb25zLmxuZz1lWzBdKX10aGlzLnNlcnZpY2VzLmxhbmd1YWdlRGV0ZWN0b3J8fHRoaXMub3B0aW9ucy5sbmd8fHRoaXMubG9nZ2VyLndhcm4oImluaXQ6IG5vIGxhbmd1YWdlRGV0ZWN0b3IgaXMgdXNlZCBhbmQgbm8gbG5nIGlzIGRlZmluZWQiKTtbImdldFJlc291cmNlIiwiaGFzUmVzb3VyY2VCdW5kbGUiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImdldERhdGFCeUxhbmd1YWdlIl0uZm9yRWFjaCh0PT57dGhpc1t0XT1mdW5jdGlvbigpe3JldHVybiBlLnN0b3JlW3RdKC4uLmFyZ3VtZW50cyl9fSk7WyJhZGRSZXNvdXJjZSIsImFkZFJlc291cmNlcyIsImFkZFJlc291cmNlQnVuZGxlIiwicmVtb3ZlUmVzb3VyY2VCdW5kbGUiXS5mb3JFYWNoKHQ9Pnt0aGlzW3RdPWZ1bmN0aW9uKCl7cmV0dXJuIGUuc3RvcmVbdF0oLi4uYXJndW1lbnRzKSxlfX0pO2NvbnN0IGE9cygpLGw9KCk9Pntjb25zdCBlPShlLHQpPT57dGhpcy5pc0luaXRpYWxpemluZz0hMSx0aGlzLmlzSW5pdGlhbGl6ZWQmJiF0aGlzLmluaXRpYWxpemVkU3RvcmVPbmNlJiZ0aGlzLmxvZ2dlci53YXJuKCJpbml0OiBpMThuZXh0IGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQuIFlvdSBzaG91bGQgY2FsbCBpbml0IGp1c3Qgb25jZSEiKSx0aGlzLmlzSW5pdGlhbGl6ZWQ9ITAsdGhpcy5vcHRpb25zLmlzQ2xvbmV8fHRoaXMubG9nZ2VyLmxvZygiaW5pdGlhbGl6ZWQiLHRoaXMub3B0aW9ucyksdGhpcy5lbWl0KCJpbml0aWFsaXplZCIsdGhpcy5vcHRpb25zKSxhLnJlc29sdmUodCksbihlLHQpfTtpZih0aGlzLmxhbmd1YWdlcyYmInYxIiE9PXRoaXMub3B0aW9ucy5jb21wYXRpYmlsaXR5QVBJJiYhdGhpcy5pc0luaXRpYWxpemVkKXJldHVybiBlKG51bGwsdGhpcy50LmJpbmQodGhpcykpO3RoaXMuY2hhbmdlTGFuZ3VhZ2UodGhpcy5vcHRpb25zLmxuZyxlKX07cmV0dXJuIHRoaXMub3B0aW9ucy5yZXNvdXJjZXN8fCF0aGlzLm9wdGlvbnMuaW5pdEltbWVkaWF0ZT9sKCk6c2V0VGltZW91dChsLDApLGF9bG9hZFJlc291cmNlcyhlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06Qjtjb25zdCBuPSJzdHJpbmciPT10eXBlb2YgZT9lOnRoaXMubGFuZ3VhZ2U7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUmJih0PWUpLCF0aGlzLm9wdGlvbnMucmVzb3VyY2VzfHx0aGlzLm9wdGlvbnMucGFydGlhbEJ1bmRsZWRMYW5ndWFnZXMpe2lmKG4mJiJjaW1vZGUiPT09bi50b0xvd2VyQ2FzZSgpJiYoIXRoaXMub3B0aW9ucy5wcmVsb2FkfHwwPT09dGhpcy5vcHRpb25zLnByZWxvYWQubGVuZ3RoKSlyZXR1cm4gdCgpO2NvbnN0IGU9W10saT10PT57aWYoIXQpcmV0dXJuO2lmKCJjaW1vZGUiPT09dClyZXR1cm47dGhpcy5zZXJ2aWNlcy5sYW5ndWFnZVV0aWxzLnRvUmVzb2x2ZUhpZXJhcmNoeSh0KS5mb3JFYWNoKHQ9PnsiY2ltb2RlIiE9PXQmJmUuaW5kZXhPZih0KTwwJiZlLnB1c2godCl9KX07aWYobilpKG4pO2Vsc2V7dGhpcy5zZXJ2aWNlcy5sYW5ndWFnZVV0aWxzLmdldEZhbGxiYWNrQ29kZXModGhpcy5vcHRpb25zLmZhbGxiYWNrTG5nKS5mb3JFYWNoKGU9PmkoZSkpfXRoaXMub3B0aW9ucy5wcmVsb2FkJiZ0aGlzLm9wdGlvbnMucHJlbG9hZC5mb3JFYWNoKGU9PmkoZSkpLHRoaXMuc2VydmljZXMuYmFja2VuZENvbm5lY3Rvci5sb2FkKGUsdGhpcy5vcHRpb25zLm5zLGU9PntlfHx0aGlzLnJlc29sdmVkTGFuZ3VhZ2V8fCF0aGlzLmxhbmd1YWdlfHx0aGlzLnNldFJlc29sdmVkTGFuZ3VhZ2UodGhpcy5sYW5ndWFnZSksdChlKX0pfWVsc2UgdChudWxsKX1yZWxvYWRSZXNvdXJjZXMoZSx0LG4pe2NvbnN0IGk9cygpO3JldHVybiBlfHwoZT10aGlzLmxhbmd1YWdlcyksdHx8KHQ9dGhpcy5vcHRpb25zLm5zKSxufHwobj1CKSx0aGlzLnNlcnZpY2VzLmJhY2tlbmRDb25uZWN0b3IucmVsb2FkKGUsdCxlPT57aS5yZXNvbHZlKCksbihlKX0pLGl9dXNlKGUpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiWW91IGFyZSBwYXNzaW5nIGFuIHVuZGVmaW5lZCBtb2R1bGUhIFBsZWFzZSBjaGVjayB0aGUgb2JqZWN0IHlvdSBhcmUgcGFzc2luZyB0byBpMThuZXh0LnVzZSgpIik7aWYoIWUudHlwZSl0aHJvdyBuZXcgRXJyb3IoIllvdSBhcmUgcGFzc2luZyBhIHdyb25nIG1vZHVsZSEgUGxlYXNlIGNoZWNrIHRoZSBvYmplY3QgeW91IGFyZSBwYXNzaW5nIHRvIGkxOG5leHQudXNlKCkiKTtyZXR1cm4iYmFja2VuZCI9PT1lLnR5cGUmJih0aGlzLm1vZHVsZXMuYmFja2VuZD1lKSwoImxvZ2dlciI9PT1lLnR5cGV8fGUubG9nJiZlLndhcm4mJmUuZXJyb3IpJiYodGhpcy5tb2R1bGVzLmxvZ2dlcj1lKSwibGFuZ3VhZ2VEZXRlY3RvciI9PT1lLnR5cGUmJih0aGlzLm1vZHVsZXMubGFuZ3VhZ2VEZXRlY3Rvcj1lKSwiaTE4bkZvcm1hdCI9PT1lLnR5cGUmJih0aGlzLm1vZHVsZXMuaTE4bkZvcm1hdD1lKSwicG9zdFByb2Nlc3NvciI9PT1lLnR5cGUmJmsuYWRkUG9zdFByb2Nlc3NvcihlKSwiZm9ybWF0dGVyIj09PWUudHlwZSYmKHRoaXMubW9kdWxlcy5mb3JtYXR0ZXI9ZSksIjNyZFBhcnR5Ij09PWUudHlwZSYmdGhpcy5tb2R1bGVzLmV4dGVybmFsLnB1c2goZSksdGhpc31zZXRSZXNvbHZlZExhbmd1YWdlKGUpe2lmKGUmJnRoaXMubGFuZ3VhZ2VzJiYhKFsiY2ltb2RlIiwiZGV2Il0uaW5kZXhPZihlKT4tMSkpZm9yKGxldCBlPTA7ZTx0aGlzLmxhbmd1YWdlcy5sZW5ndGg7ZSsrKXtjb25zdCB0PXRoaXMubGFuZ3VhZ2VzW2VdO2lmKCEoWyJjaW1vZGUiLCJkZXYiXS5pbmRleE9mKHQpPi0xKSYmdGhpcy5zdG9yZS5oYXNMYW5ndWFnZVNvbWVUcmFuc2xhdGlvbnModCkpe3RoaXMucmVzb2x2ZWRMYW5ndWFnZT10O2JyZWFrfX19Y2hhbmdlTGFuZ3VhZ2UoZSx0KXt2YXIgbj10aGlzO3RoaXMuaXNMYW5ndWFnZUNoYW5naW5nVG89ZTtjb25zdCBpPXMoKTt0aGlzLmVtaXQoImxhbmd1YWdlQ2hhbmdpbmciLGUpO2NvbnN0IHI9ZT0+e3RoaXMubGFuZ3VhZ2U9ZSx0aGlzLmxhbmd1YWdlcz10aGlzLnNlcnZpY2VzLmxhbmd1YWdlVXRpbHMudG9SZXNvbHZlSGllcmFyY2h5KGUpLHRoaXMucmVzb2x2ZWRMYW5ndWFnZT12b2lkIDAsdGhpcy5zZXRSZXNvbHZlZExhbmd1YWdlKGUpfSxvPShlLG8pPT57bz8ocihvKSx0aGlzLnRyYW5zbGF0b3IuY2hhbmdlTGFuZ3VhZ2UobyksdGhpcy5pc0xhbmd1YWdlQ2hhbmdpbmdUbz12b2lkIDAsdGhpcy5lbWl0KCJsYW5ndWFnZUNoYW5nZWQiLG8pLHRoaXMubG9nZ2VyLmxvZygibGFuZ3VhZ2VDaGFuZ2VkIixvKSk6dGhpcy5pc0xhbmd1YWdlQ2hhbmdpbmdUbz12b2lkIDAsaS5yZXNvbHZlKChmdW5jdGlvbigpe3JldHVybiBuLnQoLi4uYXJndW1lbnRzKX0pKSx0JiZ0KGUsKGZ1bmN0aW9uKCl7cmV0dXJuIG4udCguLi5hcmd1bWVudHMpfSkpfSxhPXQ9PntlfHx0fHwhdGhpcy5zZXJ2aWNlcy5sYW5ndWFnZURldGVjdG9yfHwodD1bXSk7Y29uc3Qgbj0ic3RyaW5nIj09dHlwZW9mIHQ/dDp0aGlzLnNlcnZpY2VzLmxhbmd1YWdlVXRpbHMuZ2V0QmVzdE1hdGNoRnJvbUNvZGVzKHQpO24mJih0aGlzLmxhbmd1YWdlfHxyKG4pLHRoaXMudHJhbnNsYXRvci5sYW5ndWFnZXx8dGhpcy50cmFuc2xhdG9yLmNoYW5nZUxhbmd1YWdlKG4pLHRoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3RvciYmdGhpcy5zZXJ2aWNlcy5sYW5ndWFnZURldGVjdG9yLmNhY2hlVXNlckxhbmd1YWdlJiZ0aGlzLnNlcnZpY2VzLmxhbmd1YWdlRGV0ZWN0b3IuY2FjaGVVc2VyTGFuZ3VhZ2UobikpLHRoaXMubG9hZFJlc291cmNlcyhuLGU9PntvKGUsbil9KX07cmV0dXJuIGV8fCF0aGlzLnNlcnZpY2VzLmxhbmd1YWdlRGV0ZWN0b3J8fHRoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3Rvci5hc3luYz8hZSYmdGhpcy5zZXJ2aWNlcy5sYW5ndWFnZURldGVjdG9yJiZ0aGlzLnNlcnZpY2VzLmxhbmd1YWdlRGV0ZWN0b3IuYXN5bmM/MD09PXRoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3Rvci5kZXRlY3QubGVuZ3RoP3RoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3Rvci5kZXRlY3QoKS50aGVuKGEpOnRoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3Rvci5kZXRlY3QoYSk6YShlKTphKHRoaXMuc2VydmljZXMubGFuZ3VhZ2VEZXRlY3Rvci5kZXRlY3QoKSksaX1nZXRGaXhlZFQoZSx0LG4pe3ZhciBpPXRoaXM7Y29uc3Qgcj1mdW5jdGlvbihlLHQpe2xldCBvO2lmKCJvYmplY3QiIT10eXBlb2YgdCl7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGgscz1uZXcgQXJyYXkoYT4yP2EtMjowKSxsPTI7bDxhO2wrKylzW2wtMl09YXJndW1lbnRzW2xdO289aS5vcHRpb25zLm92ZXJsb2FkVHJhbnNsYXRpb25PcHRpb25IYW5kbGVyKFtlLHRdLmNvbmNhdChzKSl9ZWxzZSBvPXsuLi50fTtvLmxuZz1vLmxuZ3x8ci5sbmcsby5sbmdzPW8ubG5nc3x8ci5sbmdzLG8ubnM9by5uc3x8ci5ucyxvLmtleVByZWZpeD1vLmtleVByZWZpeHx8bnx8ci5rZXlQcmVmaXg7Y29uc3QgYz1pLm9wdGlvbnMua2V5U2VwYXJhdG9yfHwiLiI7bGV0IHU7cmV0dXJuIHU9by5rZXlQcmVmaXgmJkFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoZT0+YCR7by5rZXlQcmVmaXh9JHtjfSR7ZX1gKTpvLmtleVByZWZpeD9gJHtvLmtleVByZWZpeH0ke2N9JHtlfWA6ZSxpLnQodSxvKX07cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP3IubG5nPWU6ci5sbmdzPWUsci5ucz10LHIua2V5UHJlZml4PW4scn10KCl7cmV0dXJuIHRoaXMudHJhbnNsYXRvciYmdGhpcy50cmFuc2xhdG9yLnRyYW5zbGF0ZSguLi5hcmd1bWVudHMpfWV4aXN0cygpe3JldHVybiB0aGlzLnRyYW5zbGF0b3ImJnRoaXMudHJhbnNsYXRvci5leGlzdHMoLi4uYXJndW1lbnRzKX1zZXREZWZhdWx0TmFtZXNwYWNlKGUpe3RoaXMub3B0aW9ucy5kZWZhdWx0TlM9ZX1oYXNMb2FkZWROYW1lc3BhY2UoZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O2lmKCF0aGlzLmlzSW5pdGlhbGl6ZWQpcmV0dXJuIHRoaXMubG9nZ2VyLndhcm4oImhhc0xvYWRlZE5hbWVzcGFjZTogaTE4bmV4dCB3YXMgbm90IGluaXRpYWxpemVkIix0aGlzLmxhbmd1YWdlcyksITE7aWYoIXRoaXMubGFuZ3VhZ2VzfHwhdGhpcy5sYW5ndWFnZXMubGVuZ3RoKXJldHVybiB0aGlzLmxvZ2dlci53YXJuKCJoYXNMb2FkZWROYW1lc3BhY2U6IGkxOG4ubGFuZ3VhZ2VzIHdlcmUgdW5kZWZpbmVkIG9yIGVtcHR5Iix0aGlzLmxhbmd1YWdlcyksITE7Y29uc3Qgbj10LmxuZ3x8dGhpcy5yZXNvbHZlZExhbmd1YWdlfHx0aGlzLmxhbmd1YWdlc1swXSxpPSEhdGhpcy5vcHRpb25zJiZ0aGlzLm9wdGlvbnMuZmFsbGJhY2tMbmcscj10aGlzLmxhbmd1YWdlc1t0aGlzLmxhbmd1YWdlcy5sZW5ndGgtMV07aWYoImNpbW9kZSI9PT1uLnRvTG93ZXJDYXNlKCkpcmV0dXJuITA7Y29uc3Qgbz0oZSx0KT0+e2NvbnN0IG49dGhpcy5zZXJ2aWNlcy5iYWNrZW5kQ29ubmVjdG9yLnN0YXRlW2Ake2V9fCR7dH1gXTtyZXR1cm4tMT09PW58fDI9PT1ufTtpZih0LnByZWNoZWNrKXtjb25zdCBlPXQucHJlY2hlY2sodGhpcyxvKTtpZih2b2lkIDAhPT1lKXJldHVybiBlfXJldHVybiEoIXRoaXMuaGFzUmVzb3VyY2VCdW5kbGUobixlKSYmdGhpcy5zZXJ2aWNlcy5iYWNrZW5kQ29ubmVjdG9yLmJhY2tlbmQmJighdGhpcy5vcHRpb25zLnJlc291cmNlc3x8dGhpcy5vcHRpb25zLnBhcnRpYWxCdW5kbGVkTGFuZ3VhZ2VzKSYmKCFvKG4sZSl8fGkmJiFvKHIsZSkpKX1sb2FkTmFtZXNwYWNlcyhlLHQpe2NvbnN0IG49cygpO3JldHVybiB0aGlzLm9wdGlvbnMubnM/KCJzdHJpbmciPT10eXBlb2YgZSYmKGU9W2VdKSxlLmZvckVhY2goZT0+e3RoaXMub3B0aW9ucy5ucy5pbmRleE9mKGUpPDAmJnRoaXMub3B0aW9ucy5ucy5wdXNoKGUpfSksdGhpcy5sb2FkUmVzb3VyY2VzKGU9PntuLnJlc29sdmUoKSx0JiZ0KGUpfSksbik6KHQmJnQoKSxQcm9taXNlLnJlc29sdmUoKSl9bG9hZExhbmd1YWdlcyhlLHQpe2NvbnN0IG49cygpOyJzdHJpbmciPT10eXBlb2YgZSYmKGU9W2VdKTtjb25zdCBpPXRoaXMub3B0aW9ucy5wcmVsb2FkfHxbXSxyPWUuZmlsdGVyKGU9PmkuaW5kZXhPZihlKTwwJiZ0aGlzLnNlcnZpY2VzLmxhbmd1YWdlVXRpbHMuaXNTdXBwb3J0ZWRDb2RlKGUpKTtyZXR1cm4gci5sZW5ndGg/KHRoaXMub3B0aW9ucy5wcmVsb2FkPWkuY29uY2F0KHIpLHRoaXMubG9hZFJlc291cmNlcyhlPT57bi5yZXNvbHZlKCksdCYmdChlKX0pLG4pOih0JiZ0KCksUHJvbWlzZS5yZXNvbHZlKCkpfWRpcihlKXtpZihlfHwoZT10aGlzLnJlc29sdmVkTGFuZ3VhZ2V8fCh0aGlzLmxhbmd1YWdlcyYmdGhpcy5sYW5ndWFnZXMubGVuZ3RoPjA/dGhpcy5sYW5ndWFnZXNbMF06dGhpcy5sYW5ndWFnZSkpLCFlKXJldHVybiJydGwiO2NvbnN0IHQ9dGhpcy5zZXJ2aWNlcyYmdGhpcy5zZXJ2aWNlcy5sYW5ndWFnZVV0aWxzfHxuZXcgTChNKCkpO3JldHVyblsiYXIiLCJzaHUiLCJzcXIiLCJzc2giLCJ4YWEiLCJ5aGQiLCJ5dWQiLCJhYW8iLCJhYmgiLCJhYnYiLCJhY20iLCJhY3EiLCJhY3ciLCJhY3giLCJhY3kiLCJhZGYiLCJhZHMiLCJhZWIiLCJhZWMiLCJhZmIiLCJhanAiLCJhcGMiLCJhcGQiLCJhcmIiLCJhcnEiLCJhcnMiLCJhcnkiLCJhcnoiLCJhdXoiLCJhdmwiLCJheWgiLCJheWwiLCJheW4iLCJheXAiLCJiYnoiLCJwZ2EiLCJoZSIsIml3IiwicHMiLCJwYnQiLCJwYnUiLCJwc3QiLCJwcnAiLCJwcmQiLCJ1ZyIsInVyIiwieWRkIiwieWRzIiwieWloIiwiamkiLCJ5aSIsImhibyIsIm1lbiIsInhtbiIsImZhIiwianByIiwicGVvIiwicGVzIiwicHJzIiwiZHYiLCJzYW0iLCJja2IiXS5pbmRleE9mKHQuZ2V0TGFuZ3VhZ2VQYXJ0RnJvbUNvZGUoZSkpPi0xfHxlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiLWFyYWIiKT4xPyJydGwiOiJsdHIifXN0YXRpYyBjcmVhdGVJbnN0YW5jZSgpe3JldHVybiBuZXcgcShhcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApfWNsb25lSW5zdGFuY2UoKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06Qjtjb25zdCBuPWUuZm9ya1Jlc291cmNlU3RvcmU7biYmZGVsZXRlIGUuZm9ya1Jlc291cmNlU3RvcmU7Y29uc3QgaT17Li4udGhpcy5vcHRpb25zLC4uLmUsaXNDbG9uZTohMH0scj1uZXcgcShpKTt2b2lkIDA9PT1lLmRlYnVnJiZ2b2lkIDA9PT1lLnByZWZpeHx8KHIubG9nZ2VyPXIubG9nZ2VyLmNsb25lKGUpKTtyZXR1cm5bInN0b3JlIiwic2VydmljZXMiLCJsYW5ndWFnZSJdLmZvckVhY2goZT0+e3JbZV09dGhpc1tlXX0pLHIuc2VydmljZXM9ey4uLnRoaXMuc2VydmljZXN9LHIuc2VydmljZXMudXRpbHM9e2hhc0xvYWRlZE5hbWVzcGFjZTpyLmhhc0xvYWRlZE5hbWVzcGFjZS5iaW5kKHIpfSxuJiYoci5zdG9yZT1uZXcgdyh0aGlzLnN0b3JlLmRhdGEsaSksci5zZXJ2aWNlcy5yZXNvdXJjZVN0b3JlPXIuc3RvcmUpLHIudHJhbnNsYXRvcj1uZXcgeChyLnNlcnZpY2VzLGkpLHIudHJhbnNsYXRvci5vbigiKiIsKGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KHQ+MT90LTE6MCksaT0xO2k8dDtpKyspbltpLTFdPWFyZ3VtZW50c1tpXTtyLmVtaXQoZSwuLi5uKX0pKSxyLmluaXQoaSx0KSxyLnRyYW5zbGF0b3Iub3B0aW9ucz1pLHIudHJhbnNsYXRvci5iYWNrZW5kQ29ubmVjdG9yLnNlcnZpY2VzLnV0aWxzPXtoYXNMb2FkZWROYW1lc3BhY2U6ci5oYXNMb2FkZWROYW1lc3BhY2UuYmluZChyKX0scn10b0pTT04oKXtyZXR1cm57b3B0aW9uczp0aGlzLm9wdGlvbnMsc3RvcmU6dGhpcy5zdG9yZSxsYW5ndWFnZTp0aGlzLmxhbmd1YWdlLGxhbmd1YWdlczp0aGlzLmxhbmd1YWdlcyxyZXNvbHZlZExhbmd1YWdlOnRoaXMucmVzb2x2ZWRMYW5ndWFnZX19fWNvbnN0IEg9cS5jcmVhdGVJbnN0YW5jZSgpO0guY3JlYXRlSW5zdGFuY2U9cS5jcmVhdGVJbnN0YW5jZSxILmNyZWF0ZUluc3RhbmNlLEguZGlyLEguaW5pdCxILmxvYWRSZXNvdXJjZXMsSC5yZWxvYWRSZXNvdXJjZXMsSC51c2UsSC5jaGFuZ2VMYW5ndWFnZSxILmdldEZpeGVkVCxILnQsSC5leGlzdHMsSC5zZXREZWZhdWx0TmFtZXNwYWNlLEguaGFzTG9hZGVkTmFtZXNwYWNlLEgubG9hZE5hbWVzcGFjZXMsSC5sb2FkTGFuZ3VhZ2VzfSwiNjA1ZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkYTg0Iikscj1uKCJjNmI2Iik7ZS5leHBvcnRzPSJwcm9jZXNzIj09PXIoaS5wcm9jZXNzKX0sNjA2OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjZjNTkiKSxyPW4oIjYwNWQiKTtlLmV4cG9ydHM9IWkmJiFyJiYib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmIm9iamVjdCI9PXR5cGVvZiBkb2N1bWVudH0sIjYwZGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiODNhYiIpLHI9bigiZTMzMCIpLG89bigiYzY1YiIpLGE9bigiZDAzOSIpLHM9bigiZGY3NSIpLGw9bigiNzQxOCIpLGM9bigiZDFlNyIpLHU9bigiN2IwYiIpLGQ9bigiNDRhZCIpLHA9T2JqZWN0LmFzc2lnbixoPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxmPXIoW10uY29uY2F0KTtlLmV4cG9ydHM9IXB8fGEoKGZ1bmN0aW9uKCl7aWYoaSYmMSE9PXAoe2I6MX0scChoKHt9LCJhIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtoKHRoaXMsImIiLHt2YWx1ZTozLGVudW1lcmFibGU6ITF9KX19KSx7YjoyfSkpLmIpcmV0dXJuITA7dmFyIGU9e30sdD17fSxuPVN5bWJvbCgiYXNzaWduIGRldGVjdGlvbiIpLHI9ImFiY2RlZmdoaWprbG1ub3BxcnN0IjtyZXR1cm4gZVtuXT03LHIuc3BsaXQoIiIpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RbZV09ZX0pKSw3IT09cCh7fSxlKVtuXXx8cyhwKHt9LHQpKS5qb2luKCIiKSE9PXJ9KSk/ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49dShlKSxyPWFyZ3VtZW50cy5sZW5ndGgsYT0xLHA9bC5mLGg9Yy5mO3I+YTspZm9yKHZhciBnLG09ZChhcmd1bWVudHNbYSsrXSkseT1wP2YocyhtKSxwKG0pKTpzKG0pLHY9eS5sZW5ndGgsYj0wO3Y+YjspZz15W2IrK10saSYmIW8oaCxtLGcpfHwobltnXT1tW2ddKTtyZXR1cm4gbn06cH0sNjM3NDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImRhODQiKSxyPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0cnl7cihpLGUse3ZhbHVlOnQsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSl9Y2F0Y2gobil7aVtlXT10fXJldHVybiB0fX0sIjY1ZjAiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMGI0MiIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcoaShlKSkoMD09PXQ/MDp0KX19LCI2OGVlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImUzMzAiKSxyPW4oImQwMzkiKSxvPW4oIjE2MjYiKSxhPW4oImY1ZGYiKSxzPW4oImQwNjYiKSxsPW4oIjg5MjUiKSxjPWZ1bmN0aW9uKCl7fSx1PXMoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxkPS9eXHMqKD86Y2xhc3N8ZnVuY3Rpb24pXGIvLHA9aShkLmV4ZWMpLGg9IWQudGVzdChjKSxmPWZ1bmN0aW9uKGUpe2lmKCFvKGUpKXJldHVybiExO3RyeXtyZXR1cm4gdShjLFtdLGUpLCEwfWNhdGNoKGUpe3JldHVybiExfX0sZz1mdW5jdGlvbihlKXtpZighbyhlKSlyZXR1cm4hMTtzd2l0Y2goYShlKSl7Y2FzZSJBc3luY0Z1bmN0aW9uIjpjYXNlIkdlbmVyYXRvckZ1bmN0aW9uIjpjYXNlIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iOnJldHVybiExfXRyeXtyZXR1cm4gaHx8ISFwKGQsbChlKSl9Y2F0Y2goZSl7cmV0dXJuITB9fTtnLnNoYW09ITAsZS5leHBvcnRzPSF1fHxyKChmdW5jdGlvbigpe3ZhciBlO3JldHVybiBmKGYuY2FsbCl8fCFmKE9iamVjdCl8fCFmKChmdW5jdGlvbigpe2U9ITB9KSl8fGV9KSk/ZzpmfSwiNjlmMyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyLG8sYT1uKCJjZGNlIikscz1uKCJkYTg0IiksbD1uKCI4NjFkIiksYz1uKCI5MTEyIiksdT1uKCIxYTJkIiksZD1uKCJjNmNkIikscD1uKCJmNzcyIiksaD1uKCJkMDEyIiksZj0iT2JqZWN0IGFscmVhZHkgaW5pdGlhbGl6ZWQiLGc9cy5UeXBlRXJyb3IsbT1zLldlYWtNYXA7aWYoYXx8ZC5zdGF0ZSl7dmFyIHk9ZC5zdGF0ZXx8KGQuc3RhdGU9bmV3IG0pO3kuZ2V0PXkuZ2V0LHkuaGFzPXkuaGFzLHkuc2V0PXkuc2V0LGk9ZnVuY3Rpb24oZSx0KXtpZih5LmhhcyhlKSl0aHJvdyBuZXcgZyhmKTtyZXR1cm4gdC5mYWNhZGU9ZSx5LnNldChlLHQpLHR9LHI9ZnVuY3Rpb24oZSl7cmV0dXJuIHkuZ2V0KGUpfHx7fX0sbz1mdW5jdGlvbihlKXtyZXR1cm4geS5oYXMoZSl9fWVsc2V7dmFyIHY9cCgic3RhdGUiKTtoW3ZdPSEwLGk9ZnVuY3Rpb24oZSx0KXtpZih1KGUsdikpdGhyb3cgbmV3IGcoZik7cmV0dXJuIHQuZmFjYWRlPWUsYyhlLHYsdCksdH0scj1mdW5jdGlvbihlKXtyZXR1cm4gdShlLHYpP2Vbdl06e319LG89ZnVuY3Rpb24oZSl7cmV0dXJuIHUoZSx2KX19ZS5leHBvcnRzPXtzZXQ6aSxnZXQ6cixoYXM6byxlbmZvcmNlOmZ1bmN0aW9uKGUpe3JldHVybiBvKGUpP3IoZSk6aShlLHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0KXt2YXIgbjtpZighbCh0KXx8KG49cih0KSkudHlwZSE9PWUpdGhyb3cgbmV3IGcoIkluY29tcGF0aWJsZSByZWNlaXZlciwgIitlKyIgcmVxdWlyZWQiKTtyZXR1cm4gbn19fX0sIjZjNTkiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgRGVubyYmRGVubyYmIm9iamVjdCI9PXR5cGVvZiBEZW5vLnZlcnNpb259LCI2ZjUzIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgzYWIiKSxyPW4oImQwMzkiKSxvPW4oImUzMzAiKSxhPW4oImUxNjMiKSxzPW4oImRmNzUiKSxsPW4oImZjNmEiKSxjPW8obigiZDFlNyIpLmYpLHU9byhbXS5wdXNoKSxkPWkmJnIoKGZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0LmNyZWF0ZShudWxsKTtyZXR1cm4gZVsyXT0yLCFjKGUsMil9KSkscD1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCl7Zm9yKHZhciBuLHI9bCh0KSxvPXMocikscD1kJiZudWxsPT09YShyKSxoPW8ubGVuZ3RoLGY9MCxnPVtdO2g+Zjspbj1vW2YrK10saSYmIShwP24gaW4gcjpjKHIsbikpfHx1KGcsZT9bbixyW25dXTpyW25dKTtyZXR1cm4gZ319O2UuZXhwb3J0cz17ZW50cmllczpwKCEwKSx2YWx1ZXM6cCghMSl9fSwiNmZjMCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHI7aT1mdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1mdW5jdGlvbigpe3JldHVybihlPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPTEsaT1hcmd1bWVudHMubGVuZ3RoO248aTtuKyspZm9yKHZhciByIGluIHQ9YXJndW1lbnRzW25dKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LHIpJiYoZVtyXT10W3JdKTtyZXR1cm4gZX0pLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07ZnVuY3Rpb24gdChlLHQsbixpKXtyZXR1cm4gbmV3KG58fChuPVByb21pc2UpKSgoZnVuY3Rpb24ocixvKXtmdW5jdGlvbiBhKGUpe3RyeXtsKGkubmV4dChlKSl9Y2F0Y2goZSl7byhlKX19ZnVuY3Rpb24gcyhlKXt0cnl7bChpLnRocm93KGUpKX1jYXRjaChlKXtvKGUpfX1mdW5jdGlvbiBsKGUpe3ZhciB0O2UuZG9uZT9yKGUudmFsdWUpOih0PWUudmFsdWUsdCBpbnN0YW5jZW9mIG4/dDpuZXcgbigoZnVuY3Rpb24oZSl7ZSh0KX0pKSkudGhlbihhLHMpfWwoKGk9aS5hcHBseShlLHR8fFtdKSkubmV4dCgpKX0pKX1mdW5jdGlvbiBuKGUsdCl7dmFyIG4saSxyLG8sYT17bGFiZWw6MCxzZW50OmZ1bmN0aW9uKCl7aWYoMSZyWzBdKXRocm93IHJbMV07cmV0dXJuIHJbMV19LHRyeXM6W10sb3BzOltdfTtyZXR1cm4gbz17bmV4dDpzKDApLHRocm93OnMoMSkscmV0dXJuOnMoMil9LCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJihvW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLG87ZnVuY3Rpb24gcyhvKXtyZXR1cm4gZnVuY3Rpb24ocyl7cmV0dXJuIGZ1bmN0aW9uKG8pe2lmKG4pdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpO2Zvcig7YTspdHJ5e2lmKG49MSxpJiYocj0yJm9bMF0/aS5yZXR1cm46b1swXT9pLnRocm93fHwoKHI9aS5yZXR1cm4pJiZyLmNhbGwoaSksMCk6aS5uZXh0KSYmIShyPXIuY2FsbChpLG9bMV0pKS5kb25lKXJldHVybiByO3N3aXRjaChpPTAsciYmKG89WzImb1swXSxyLnZhbHVlXSksb1swXSl7Y2FzZSAwOmNhc2UgMTpyPW87YnJlYWs7Y2FzZSA0OnJldHVybiBhLmxhYmVsKysse3ZhbHVlOm9bMV0sZG9uZTohMX07Y2FzZSA1OmEubGFiZWwrKyxpPW9bMV0sbz1bMF07Y29udGludWU7Y2FzZSA3Om89YS5vcHMucG9wKCksYS50cnlzLnBvcCgpO2NvbnRpbnVlO2RlZmF1bHQ6aWYoISgocj0ocj1hLnRyeXMpLmxlbmd0aD4wJiZyW3IubGVuZ3RoLTFdKXx8NiE9PW9bMF0mJjIhPT1vWzBdKSl7YT0wO2NvbnRpbnVlfWlmKDM9PT1vWzBdJiYoIXJ8fG9bMV0+clswXSYmb1sxXTxyWzNdKSl7YS5sYWJlbD1vWzFdO2JyZWFrfWlmKDY9PT1vWzBdJiZhLmxhYmVsPHJbMV0pe2EubGFiZWw9clsxXSxyPW87YnJlYWt9aWYociYmYS5sYWJlbDxyWzJdKXthLmxhYmVsPXJbMl0sYS5vcHMucHVzaChvKTticmVha31yWzJdJiZhLm9wcy5wb3AoKSxhLnRyeXMucG9wKCk7Y29udGludWV9bz10LmNhbGwoZSxhKX1jYXRjaChlKXtvPVs2LGVdLGk9MH1maW5hbGx5e249cj0wfWlmKDUmb1swXSl0aHJvdyBvWzFdO3JldHVybnt2YWx1ZTpvWzBdP29bMV06dm9pZCAwLGRvbmU6ITB9fShbbyxzXSl9fX1mdW5jdGlvbiBpKGUsdCl7dmFyIG49ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdO2lmKCFuKXJldHVybiBlO3ZhciBpLHIsbz1uLmNhbGwoZSksYT1bXTt0cnl7Zm9yKDsodm9pZCAwPT09dHx8dC0tID4wKSYmIShpPW8ubmV4dCgpKS5kb25lOylhLnB1c2goaS52YWx1ZSl9Y2F0Y2goZSl7cj17ZXJyb3I6ZX19ZmluYWxseXt0cnl7aSYmIWkuZG9uZSYmKG49by5yZXR1cm4pJiZuLmNhbGwobyl9ZmluYWxseXtpZihyKXRocm93IHIuZXJyb3J9fXJldHVybiBhfWZ1bmN0aW9uIHIoZSx0KXtmb3IodmFyIG49MCxpPXQubGVuZ3RoLHI9ZS5sZW5ndGg7bjxpO24rKyxyKyspZVtyXT10W25dO3JldHVybiBlfXZhciBvPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlKXt2YXIgdD10aGlzLG49ZS5rZXksaT1lLmhlYXJ0QmVhdEludGVydmFsVGltZSxyPXZvaWQgMD09PWk/MWUzOmksbz1lLmhlYXJ0QmVhdERldGVjdEludGVydmFsVGltZSxhPXZvaWQgMD09PW8/MmUzOm87dGhpcy5faGVhcnRCZWF0SW50ZXJ2YWxJZD1udWxsLHRoaXMuX2hlYXJ0QmVhdERldGVjdEludGVydmFsSWQ9bnVsbCx0aGlzLl9rZXk9bix0aGlzLl9oZWFydEJlYXRJbnRlcnZhbFRpbWU9cix0aGlzLl9oZWFydEJlYXREZXRlY3RJbnRlcnZhbFRpbWU9YSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIiwoZnVuY3Rpb24oKXt0LmRlc3Ryb3koKX0pKX1yZXR1cm4gZS5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuX2hlYXJ0QmVhdEludGVydmFsSWQ9c2V0SW50ZXJ2YWwoKGZ1bmN0aW9uKCl7ZS5fc2V0TG9jYWxUaW1lKCl9KSx0aGlzLl9oZWFydEJlYXRJbnRlcnZhbFRpbWUpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy5faGVhcnRCZWF0SW50ZXJ2YWxJZCYmY2xlYXJJbnRlcnZhbCh0aGlzLl9oZWFydEJlYXRJbnRlcnZhbElkKSx0aGlzLl9oZWFydEJlYXREZXRlY3RJbnRlcnZhbElkJiZjbGVhckludGVydmFsKHRoaXMuX2hlYXJ0QmVhdERldGVjdEludGVydmFsSWQpfSxlLnByb3RvdHlwZS5fc2V0TG9jYWxUaW1lPWZ1bmN0aW9uKCl7d2luZG93LmxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuX2tleSxEYXRlLm5vdygpLnRvU3RyaW5nKCkpfSxlLnByb3RvdHlwZS5kZXRlY3Q9ZnVuY3Rpb24oZSl7dGhpcy5faGVhcnRCZWF0RGV0ZWN0SW50ZXJ2YWxJZD1zZXRJbnRlcnZhbCgoZnVuY3Rpb24oKXtlKCl9KSx0aGlzLl9oZWFydEJlYXREZXRlY3RJbnRlcnZhbFRpbWUpfSxlfSgpO2Z1bmN0aW9uIGEoZSx0KXt3aW5kb3cubG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KSxmdW5jdGlvbihlLHQpe3ZhciBuPW5ldyBFdmVudChlKTtuLnZhbHVlPXQsbi5rZXk9ZSxkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG4pfShlLHQpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKX1mdW5jdGlvbiBsKGUsaSl7dmFyIHI9ZnVuY3Rpb24oKXtyZXR1cm4gdCh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKCl7cmV0dXJuIG4odGhpcywoZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCxpKCldO2Nhc2UgMTpyZXR1cm4gdC5zZW50KCkmJmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxyKSxbMl19fSkpfSkpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKGUsciwhMSk7dmFyIG89ZnVuY3Rpb24ocil7cmV0dXJuIHQodGhpcyx2b2lkIDAsdm9pZCAwLChmdW5jdGlvbigpe3JldHVybiBuKHRoaXMsKGZ1bmN0aW9uKHQpe3N3aXRjaCh0LmxhYmVsKXtjYXNlIDA6cmV0dXJuIHIuc3RvcmFnZUFyZWEhPT1sb2NhbFN0b3JhZ2V8fHIua2V5IT09ZT9bMywyXTpbNCxpKCldO2Nhc2UgMTp0LnNlbnQoKSYmd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInN0b3JhZ2UiLG8pLHQubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzJdfX0pKX0pKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0b3JhZ2UiLG8sITEpfXZhciBjLHU9e0VYQ0xVU0lWRToiZXhjbHVzaXZlIixTSEFSRUQ6InNoYXJlZCJ9O2Z1bmN0aW9uIGQoKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKSsiLSIrU3RyaW5nKE1hdGgucmFuZG9tKCkpLnN1YnN0cmluZygyKX0hZnVuY3Rpb24oZSl7ZS5SRVFVRVNUX1FVRVVFX01BUD0iJG5hdmlnYXRvci5sb2Nrcy1yZXF1ZXN0UXVldWVNYXAiLGUuSEVMRF9MT0NLX1NFVD0iJG5hdmlnYXRvci5sb2Nrcy1oZWxkTG9ja1NldCIsZS5DTElFTlRfSURTPSIkbmF2aWdhdG9yLmxvY2tzLWNsaWVudElkcyJ9KGN8fChjPXt9KSk7dmFyIHA9ZnVuY3Rpb24oKXtmdW5jdGlvbiBwKCl7dGhpcy5fZGVmYXVsdE9wdGlvbnM9e21vZGU6dS5FWENMVVNJVkUsaWZBdmFpbGFibGU6ITEsc3RlYWw6ITF9LHRoaXMuX2NsaWVudElkPSIkbmF2aWdhdG9yLmxvY2tzLWNsaWVudElkLSIrZCgpLHRoaXMuX2luaXQoKX1yZXR1cm4gcC5wcm90b3R5cGUuX2luaXQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuX3N0b3JlVGhpc0NsaWVudElkKCk7dmFyIHQ9bmV3IG8oe2tleTp0aGlzLl9jbGllbnRJZH0pO3Quc3RhcnQoKSx0LmRldGVjdCgoZnVuY3Rpb24oKXtyZXR1cm4gZS5fY2xlYW5VbmxpdmVDbGllbnRMb2NrcygpfSkpLHRoaXMuX29uVW5sb2FkKCl9LHAucHJvdG90eXBlLl9nZXRDbGllbnRJZHM9ZnVuY3Rpb24oKXt2YXIgZT1zKGMuQ0xJRU5UX0lEUyk7cmV0dXJuIGUmJkpTT04ucGFyc2UoZSl8fFtdfSxwLnByb3RvdHlwZS5fc3RvcmVDbGllbnRJZHM9ZnVuY3Rpb24oZSl7YShjLkNMSUVOVF9JRFMsSlNPTi5zdHJpbmdpZnkoZSkpfSxwLnByb3RvdHlwZS5fc3RvcmVUaGlzQ2xpZW50SWQ9ZnVuY3Rpb24oKXt2YXIgZT1yKHIoW10saSh0aGlzLl9nZXRDbGllbnRJZHMoKSkpLFt0aGlzLl9jbGllbnRJZF0pO3RoaXMuX3N0b3JlQ2xpZW50SWRzKGUpfSxwLnByb3RvdHlwZS5yZXF1ZXN0PWZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLGk9MDtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKWVbaV09YXJndW1lbnRzW2ldO3JldHVybiB0KHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24oKXt2YXIgaTtyZXR1cm4gbih0aGlzLChmdW5jdGlvbihyKXtyZXR1cm4gaT10aGlzLFsyLG5ldyBQcm9taXNlKChmdW5jdGlvbihyLG8pe3JldHVybiB0KHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24oKXt2YXIgdCxhLHMsbCxjLHAsaCxmLGc7cmV0dXJuIG4odGhpcywoZnVuY3Rpb24obil7aWYoISh0PWkuX2hhbmRsZVJlcXVlc3RBcmdzKGUsbykpKXJldHVyblsyXTtpZihhPXQuY2Iscz10Ll9vcHRpb25zLGw9ZVswXSxjPXtuYW1lOmwsbW9kZTpzLm1vZGUsY2xpZW50SWQ6aS5fY2xpZW50SWQsdXVpZDpsKyItIitkKCkscmVzb2x2ZTpyLHJlamVjdDpvfSxwPWkuX3Jlc29sdmVXaXRoQ0IoYSxyLG8pLGg9aS5faGVsZExvY2tTZXQoKSxmPWguZmluZCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZT09PWMubmFtZX0pKSxnPWkuX3JlcXVlc3RMb2NrUXVldWVNYXAoKVtjLm5hbWVdfHxbXSwhMD09PXMuc3RlYWwpe2lmKCFpLl9oYW5kbGVFeGNlcHRpb25XaGVuU3RlYWxJc1RydWUocyxvKSlyZXR1cm5bMl07aD1oLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZSE9PWMubmFtZX0pKSxmPWguZmluZCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZT09PWMubmFtZX0pKX1lbHNle2lmKCEwPT09cy5pZkF2YWlsYWJsZSlyZXR1cm4gZiYmKGYubW9kZSE9PXUuU0hBUkVEfHxjLm1vZGUhPT11LlNIQVJFRCl8fGcubGVuZ3RoP1syLHAobnVsbCldOlsyLGkuX2hhbmRsZU5ld0hlbGRMb2NrKGMscCldO2lmKHZvaWQgMCE9PXMuc2lnbmFsJiYhaS5faGFuZGxlU2lnbmFsRXhpc3RlZChzLG8sYykpcmV0dXJuWzJdfXJldHVybiBpLl9oYW5kbGVIZWxkTG9ja0FuZFJlcXVlc3QoZixjLHAsZyxoKSxbMl19KSl9KSl9KSldfSkpfSkpfSxwLnByb3RvdHlwZS5xdWVyeT1mdW5jdGlvbigpe3JldHVybiB0KHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24oKXtyZXR1cm4gbih0aGlzLChmdW5jdGlvbihlKXtyZXR1cm5bMix0aGlzLl9xdWVyeSgpXX0pKX0pKX0scC5wcm90b3R5cGUuX3B1c2hUb0xvY2tSZXF1ZXN0UXVldWVNYXA9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fcmVxdWVzdExvY2tRdWV1ZU1hcCgpLG49dFtlLm5hbWVdfHxbXTtyZXR1cm4gdFtlLm5hbWVdPXIocihbXSxpKG4pKSxbZV0pLHRoaXMuX3N0b3JlUmVxdWVzdExvY2tRdWV1ZU1hcCh0KSxlfSxwLnByb3RvdHlwZS5fcHVzaFRvSGVsZExvY2tTZXQ9ZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT10JiYodD10aGlzLl9oZWxkTG9ja1NldCgpKTt2YXIgbj1yKHIoW10saSh0KSksW2VdKTtyZXR1cm4gdGhpcy5fc3RvcmVIZWxkTG9ja1NldChuKSxlfSxwLnByb3RvdHlwZS5fcmVxdWVzdExvY2tRdWV1ZU1hcD1mdW5jdGlvbigpe3ZhciBlPXMoYy5SRVFVRVNUX1FVRVVFX01BUCk7cmV0dXJuIGUmJkpTT04ucGFyc2UoZSl8fHt9fSxwLnByb3RvdHlwZS5faGVsZExvY2tTZXQ9ZnVuY3Rpb24oKXt2YXIgZT1zKGMuSEVMRF9MT0NLX1NFVCk7cmV0dXJuIGUmJkpTT04ucGFyc2UoZSl8fFtdfSxwLnByb3RvdHlwZS5fdXBkYXRlSGVsZEFuZFJlcXVlc3RMb2Nrcz1mdW5jdGlvbihlKXt2YXIgdD10aGlzLl9oZWxkTG9ja1NldCgpLG49dC5maW5kSW5kZXgoKGZ1bmN0aW9uKHQpe3JldHVybiB0LnV1aWQ9PT1lLnV1aWR9KSk7aWYoLTEhPT1uKXt0LnNwbGljZShuLDEpO3ZhciBvPXRoaXMuX3JlcXVlc3RMb2NrUXVldWVNYXAoKSxhPW9bZS5uYW1lXXx8W10scz1pKGEpLGw9c1swXSxjPXMuc2xpY2UoMSk7aWYobCl7aWYobC5tb2RlPT09dS5FWENMVVNJVkV8fDA9PT1jLmxlbmd0aCl0LnB1c2gobCksb1tlLm5hbWVdPWM7ZWxzZSBpZihsLm1vZGU9PT11LlNIQVJFRCl7dmFyIGQ9YS5maW5kSW5kZXgoKGZ1bmN0aW9uKGUpe3JldHVybiBlLm1vZGUhPT11LlNIQVJFRH0pKTstMT09PWQmJihkPWEubGVuZ3RoKSx0PXIocihbXSxpKHQpKSxpKGEuc3BsaWNlKDAsZCkpKX1yZXR1cm4gdGhpcy5fc3RvcmVIZWxkTG9ja1NldEFuZFJlcXVlc3RMb2NrUXVldWVNYXAodCxvKSxsfXRoaXMuX3N0b3JlSGVsZExvY2tTZXQodCl9ZWxzZSBjb25zb2xlLmxvZygidGhpcyBoZWxkIGxvY2sgd2hpY2ggdXVpZCBpcyAiK2UudXVpZCsiIGhhZCBiZWVuIHN0ZWFsIil9LHAucHJvdG90eXBlLl9oYW5kbGVTaWduYWxFeGlzdGVkPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZS5zaWduYWwgaW5zdGFuY2VvZiBBYm9ydFNpZ25hbD9lLnNpZ25hbC5hYm9ydGVkPyh0KG5ldyBET01FeGNlcHRpb24oIkZhaWxlZCB0byBleGVjdXRlICdyZXF1ZXN0JyBvbiAnTG9ja01hbmFnZXInOiBUaGUgcmVxdWVzdCB3YXMgYWJvcnRlZC4iKSksITEpOih0aGlzLl9zaWduYWxPbmFib3J0KGUuc2lnbmFsLG4pLCEwKToodChuZXcgVHlwZUVycm9yKCJGYWlsZWQgdG8gZXhlY3V0ZSAncmVxdWVzdCcgb24gJ0xvY2tNYW5hZ2VyJzogbWVtYmVyIHNpZ25hbCBpcyBub3Qgb2YgdHlwZSBBYm9ydFNpZ25hbC4iKSksITEpfSxwLnByb3RvdHlwZS5faGFuZGxlRXhjZXB0aW9uV2hlblN0ZWFsSXNUcnVlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUubW9kZSE9PXUuRVhDTFVTSVZFPyh0KG5ldyBET01FeGNlcHRpb24oIkZhaWxlZCB0byBleGVjdXRlICdyZXF1ZXN0JyBvbiAnTG9ja01hbmFnZXInOiBUaGUgJ3N0ZWFsJyBvcHRpb24gbWF5IG9ubHkgYmUgdXNlZCB3aXRoICdleGNsdXNpdmUnIGxvY2tzLiIpKSwhMSk6ITAhPT1lLmlmQXZhaWxhYmxlfHwodChuZXcgRE9NRXhjZXB0aW9uKCJGYWlsZWQgdG8gZXhlY3V0ZSAncmVxdWVzdCcgb24gJ0xvY2tNYW5hZ2VyJzogVGhlICdzdGVhbCcgYW5kICdpZkF2YWlsYWJsZScgb3B0aW9ucyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iKSksITEpfSxwLnByb3RvdHlwZS5faGFuZGxlUmVxdWVzdEFyZ3M9ZnVuY3Rpb24odCxuKXt2YXIgaSxyLG89dC5sZW5ndGg7aWYobzwyKXJldHVybiBuKG5ldyBUeXBlRXJyb3IoIkZhaWxlZCB0byBleGVjdXRlICdyZXF1ZXN0JyBvbiAnTG9ja01hbmFnZXInOiAyIGFyZ3VtZW50cyByZXF1aXJlZCwgYnV0IG9ubHkgIit0Lmxlbmd0aCsiIHByZXNlbnQuIikpLG51bGw7aWYoMj09PW8pe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0WzFdKXJldHVybiBuKG5ldyBUeXBlRXJyb3IoIkZhaWxlZCB0byBleGVjdXRlICdyZXF1ZXN0JyBvbiAnTG9ja01hbmFnZXInOiBwYXJhbWV0ZXIgMiBpcyBub3Qgb2YgdHlwZSAnRnVuY3Rpb24nLiIpKSxudWxsO2k9dFsxXSxyPXRoaXMuX2RlZmF1bHRPcHRpb25zfWVsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHRbMl0pcmV0dXJuIG4obmV3IFR5cGVFcnJvcigiRmFpbGVkIHRvIGV4ZWN1dGUgJ3JlcXVlc3QnIG9uICdMb2NrTWFuYWdlcic6IHBhcmFtZXRlciAzIGlzIG5vdCBvZiB0eXBlICdGdW5jdGlvbicuIikpLG51bGw7aT10WzJdLHI9ZShlKHt9LHRoaXMuX2RlZmF1bHRPcHRpb25zKSx0WzFdKX1yZXR1cm4gT2JqZWN0LnZhbHVlcyh1KS5pbmRleE9mKHIubW9kZSk8MD8obihuZXcgVHlwZUVycm9yKCJGYWlsZWQgdG8gZXhlY3V0ZSAncmVxdWVzdCcgb24gJ0xvY2tNYW5hZ2VyJzogVGhlIHByb3ZpZGVkIHZhbHVlICciK3IubW9kZSsiJyBpcyBub3QgYSB2YWxpZCBlbnVtIHZhbHVlIG9mIHR5cGUgTG9ja01vZGUuIikpLG51bGwpOiItIj09PXRbMF1bMF0/KG4obmV3IERPTUV4Y2VwdGlvbigiRmFpbGVkIHRvIGV4ZWN1dGUgJ3JlcXVlc3QnIG9uICdMb2NrTWFuYWdlcic6IE5hbWVzIGNhbm5vdCBzdGFydCB3aXRoICctJy4iKSksbnVsbCk6e2NiOmksX29wdGlvbnM6cn19LHAucHJvdG90eXBlLl9oYW5kbGVIZWxkTG9ja0FuZFJlcXVlc3Q9ZnVuY3Rpb24oZSx0LG4saSxyKXtlP2UubW9kZT09PXUuRVhDTFVTSVZFP3RoaXMuX2hhbmRsZU5ld0xvY2tSZXF1ZXN0KHQsbik6ZS5tb2RlPT09dS5TSEFSRUQmJih0Lm1vZGU9PT11LlNIQVJFRCYmMD09PWkubGVuZ3RoP3RoaXMuX2hhbmRsZU5ld0hlbGRMb2NrKHQsbixyKTp0aGlzLl9oYW5kbGVOZXdMb2NrUmVxdWVzdCh0LG4pKTp0aGlzLl9oYW5kbGVOZXdIZWxkTG9jayh0LG4scil9LHAucHJvdG90eXBlLl9zaWduYWxPbmFib3J0PWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcyxpPXQubmFtZSxyPXQudXVpZDtlLm9uYWJvcnQ9ZnVuY3Rpb24oKXt2YXIgZT1uLl9yZXF1ZXN0TG9ja1F1ZXVlTWFwKCksdD1lW2ldLmZpbmRJbmRleCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUudXVpZD09PXJ9KSk7LTEhPT10JiYoZVtpXS5zcGxpY2UodCwxKSxuLl9zdG9yZVJlcXVlc3RMb2NrUXVldWVNYXAoZSkpfX0scC5wcm90b3R5cGUuX3Jlc29sdmVXaXRoQ0I9ZnVuY3Rpb24oZSxpLHIpe3ZhciBvPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24ocyl7bmV3IFByb21pc2UoKGZ1bmN0aW9uKGUpe3JldHVybiBlKCIiKX0pKS50aGVuKChmdW5jdGlvbigpe3JldHVybiB0KG8sdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24oKXt2YXIgdCxvO3JldHVybiBuKHRoaXMsKGZ1bmN0aW9uKG4pe3N3aXRjaChuLmxhYmVsKXtjYXNlIDA6cmV0dXJuIG4udHJ5cy5wdXNoKFswLDIsLDNdKSxbNCxlKGEpXTtjYXNlIDE6cmV0dXJuIHQ9bi5zZW50KCkscyh0KSxpKHQpLFszLDNdO2Nhc2UgMjpyZXR1cm4gbz1uLnNlbnQoKSxzKG8pLHIobyksWzMsM107Y2FzZSAzOnJldHVyblsyXX19KSl9KSl9KSl9KSl9fSxwLnByb3RvdHlwZS5faGFuZGxlTmV3SGVsZExvY2s9ZnVuY3Rpb24oZSxpLHIpe3JldHVybiB0KHRoaXMsdm9pZCAwLHZvaWQgMCwoZnVuY3Rpb24oKXt2YXIgdCxvLGEscz10aGlzO3JldHVybiBuKHRoaXMsKGZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLl9wdXNoVG9IZWxkTG9ja1NldChlLHIpLHQ9ITEsbz0hMSxhPWZ1bmN0aW9uKCl7cmV0dXJuISh0fHxvfHxzLl9pc0luSGVsZExvY2tTZXQoZS51dWlkKXx8KHMuX2hhbmRsZUhlbGRMb2NrQmVTdGVhbChlKSxvPSEwLDApKX0sbChjLkhFTERfTE9DS19TRVQsYSksaSh7bmFtZTplLm5hbWUsbW9kZTplLm1vZGV9KS50aGVuKChmdW5jdGlvbigpe3Q9ITAscy5fdXBkYXRlSGVsZEFuZFJlcXVlc3RMb2NrcyhlKX0pKSxbMl19KSl9KSl9LHAucHJvdG90eXBlLl9oYW5kbGVIZWxkTG9ja0JlU3RlYWw9ZnVuY3Rpb24oZSl7ZS5yZWplY3QobmV3IERPTUV4Y2VwdGlvbigiTG9jayBicm9rZW4gYnkgYW5vdGhlciByZXF1ZXN0IHdpdGggdGhlICdzdGVhbCcgb3B0aW9uLiIpKX0scC5wcm90b3R5cGUuX3N0b3JlSGVsZExvY2tTZXQ9ZnVuY3Rpb24oZSl7YShjLkhFTERfTE9DS19TRVQsSlNPTi5zdHJpbmdpZnkoZSkpfSxwLnByb3RvdHlwZS5fc3RvcmVSZXF1ZXN0TG9ja1F1ZXVlTWFwPWZ1bmN0aW9uKGUpe2EoYy5SRVFVRVNUX1FVRVVFX01BUCxKU09OLnN0cmluZ2lmeShlKSl9LHAucHJvdG90eXBlLl9pc0luSGVsZExvY2tTZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuX2hlbGRMb2NrU2V0KCkuc29tZSgoZnVuY3Rpb24odCl7cmV0dXJuIHQudXVpZD09PWV9KSl9LHAucHJvdG90eXBlLl9oYW5kbGVOZXdMb2NrUmVxdWVzdD1mdW5jdGlvbihlLGkpe3ZhciByPXRoaXM7dGhpcy5fcHVzaFRvTG9ja1JlcXVlc3RRdWV1ZU1hcChlKTt2YXIgbz0hMTtsKGMuSEVMRF9MT0NLX1NFVCwoZnVuY3Rpb24oKXtyZXR1cm4gdChyLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKCl7cmV0dXJuIG4odGhpcywoZnVuY3Rpb24odCl7c3dpdGNoKHQubGFiZWwpe2Nhc2UgMDpyZXR1cm4gb3x8IXRoaXMuX2lzSW5IZWxkTG9ja1NldChlLnV1aWQpP1szLDVdOihvPSEwLFs0LGkoe25hbWU6ZS5uYW1lLG1vZGU6ZS5tb2RlfSldKTtjYXNlIDE6cmV0dXJuIHQuc2VudCgpLHRoaXMuX2lzSW5IZWxkTG9ja1NldChlLnV1aWQpfHx0aGlzLl9oYW5kbGVIZWxkTG9ja0JlU3RlYWwoZSksZS5tb2RlIT09dS5FWENMVVNJVkU/WzMsMl06KHRoaXMuX3VwZGF0ZUhlbGRBbmRSZXF1ZXN0TG9ja3MoZSksWzMsNF0pO2Nhc2UgMjpyZXR1cm4gZS5tb2RlIT09dS5TSEFSRUQ/WzMsNF06WzQsdGhpcy5faGFuZGxlU2hhcmVkTG9ja0Zyb21MaXN0ZW5lcihlKV07Y2FzZSAzOnQuc2VudCgpLHQubGFiZWw9NDtjYXNlIDQ6cmV0dXJuWzIsITBdO2Nhc2UgNTpyZXR1cm5bMiwhMV19fSkpfSkpfSkpfSxwLnByb3RvdHlwZS5faGFuZGxlU2hhcmVkTG9ja0Zyb21MaXN0ZW5lcj1mdW5jdGlvbihlKXtyZXR1cm4gdCh0aGlzLHZvaWQgMCx2b2lkIDAsKGZ1bmN0aW9uKCl7dmFyIHQ7cmV0dXJuIG4odGhpcywoZnVuY3Rpb24obil7c3dpdGNoKG4ubGFiZWwpe2Nhc2UgMDpyZXR1cm5bNCwoaT1NYXRoLmZsb29yKDFlMypNYXRoLnJhbmRvbSgpKSxuZXcgUHJvbWlzZSgoZnVuY3Rpb24oZSl7cmV0dXJuIHNldFRpbWVvdXQoZSxpKX0pKSldO2Nhc2UgMTpyZXR1cm4gbi5zZW50KCksKHQ9dGhpcy5faGVsZExvY2tTZXQoKS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiB0Lm5hbWU9PT1lLm5hbWUmJnQudXVpZCE9PWUudXVpZCYmdC5tb2RlPT09dS5TSEFSRUR9KSkpLmxlbmd0aD90aGlzLl9zdG9yZUhlbGRMb2NrU2V0KHQpOnRoaXMuX3VwZGF0ZUhlbGRBbmRSZXF1ZXN0TG9ja3MoZSksWzJdfXZhciBpfSkpfSkpfSxwLnByb3RvdHlwZS5fc3RvcmVIZWxkTG9ja1NldEFuZFJlcXVlc3RMb2NrUXVldWVNYXA9ZnVuY3Rpb24oZSx0KXt0aGlzLl9zdG9yZUhlbGRMb2NrU2V0KGUpLHRoaXMuX3N0b3JlUmVxdWVzdExvY2tRdWV1ZU1hcCh0KX0scC5wcm90b3R5cGUuX3F1ZXJ5PWZ1bmN0aW9uKCl7dmFyIGU9e2hlbGQ6dGhpcy5faGVsZExvY2tTZXQoKSxwZW5kaW5nOltdfSx0PXRoaXMuX3JlcXVlc3RMb2NrUXVldWVNYXAoKTtmb3IodmFyIG4gaW4gdCl7dmFyIGk9dFtuXTtlLnBlbmRpbmc9ZS5wZW5kaW5nLmNvbmNhdChpKX1yZXR1cm4gZX0scC5wcm90b3R5cGUuX29uVW5sb2FkPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIiwoZnVuY3Rpb24odCl7ZS5fY2xlYW5DbGllbnRMb2Nrc0J5Q2xpZW50SWQoZS5fY2xpZW50SWQpfSkpfSxwLnByb3RvdHlwZS5fY2xlYW5DbGllbnRMb2Nrc0J5Q2xpZW50SWQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fcmVxdWVzdExvY2tRdWV1ZU1hcCgpO3RoaXMuX2NsZWFuUmVxdWVzdExvY2tRdWV1ZUJ5Q2xpZW50SWQodCxlKTt2YXIgbj10aGlzLl9jbGVhbkhlbGRMb2NrU2V0QnlDbGllbnRJZCh0LGUpO3RoaXMuX3N0b3JlSGVsZExvY2tTZXRBbmRSZXF1ZXN0TG9ja1F1ZXVlTWFwKG4sdCl9LHAucHJvdG90eXBlLl9jbGVhbkhlbGRMb2NrU2V0QnlDbGllbnRJZD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMuX2hlbGRMb2NrU2V0KCksbz1bXTtyZXR1cm4gbi5mb3JFYWNoKChmdW5jdGlvbihuKXtpZihuLmNsaWVudElkIT09dClvLnB1c2gobik7ZWxzZXt2YXIgYT1lW24ubmFtZV18fFtdLHM9aShhKSxsPXNbMF0sYz1zLnNsaWNlKDEpO2lmKGwpaWYobC5tb2RlPT09dS5FWENMVVNJVkV8fDA9PT1jLmxlbmd0aClvLnB1c2gobCksZVtuLm5hbWVdPWM7ZWxzZSBpZihsLm1vZGU9PT11LlNIQVJFRCl7dmFyIGQ9YS5maW5kSW5kZXgoKGZ1bmN0aW9uKGUpe3JldHVybiBlLm1vZGUhPT11LlNIQVJFRH0pKTstMT09PWQmJihkPWEubGVuZ3RoKSxvPXIocihbXSxpKG8pKSxpKGEuc3BsaWNlKDAsZCkpKX19fSkpLG99LHAucHJvdG90eXBlLl9jbGVhblJlcXVlc3RMb2NrUXVldWVCeUNsaWVudElkPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIGUpe3ZhciBpPWVbbl07ZVtuXT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY2xpZW50SWQhPT10fSkpfX0scC5wcm90b3R5cGUuX2NsZWFuVW5saXZlQ2xpZW50TG9ja3M9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9cihbXSxpKG5ldyBTZXQodGhpcy5fZ2V0Q2xpZW50SWRzKCkpKSk7aWYodC5sZW5ndGgpe3ZhciBuPVtdO3QuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIGkscj1zKHQpOyFyfHxEYXRlLm5vdygpLU51bWJlcihyKT4zMTAwPyhpPXQsd2luZG93LmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkpLGUuX2NsZWFuQ2xpZW50TG9ja3NCeUNsaWVudElkKHQpKTpuLnB1c2godCl9KSksSlNPTi5zdHJpbmdpZnkodCkhPT1KU09OLnN0cmluZ2lmeShuKSYmdGhpcy5fc3RvcmVDbGllbnRJZHMobil9ZWxzZSB0aGlzLl9zdG9yZUNsaWVudElkcyhbXSl9LHB9KCk7IWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpe3ZhciBlPXdpbmRvdy5uYXZpZ2F0b3I7aWYoZSYmIWUubG9ja3Mpe3ZhciB0PW5ldyBwO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJsb2NrcyIse3ZhbHVlOnR9KX19fSgpfSx2b2lkIDA9PT0ocj0iZnVuY3Rpb24iPT10eXBlb2YgaT9pLmNhbGwodCxuLHQsZSk6aSl8fChlLmV4cG9ydHM9cil9LDcxNDk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIyM2U3Iikscj1uKCJkMDY2Iiksbz1uKCJjNDMwIiksYT1uKCJkMjU2Iikscz1uKCI0NzM4IikuQ09OU1RSVUNUT1IsbD1uKCJjZGY5IiksYz1yKCJQcm9taXNlIiksdT1vJiYhcztpKHt0YXJnZXQ6IlByb21pc2UiLHN0YXQ6ITAsZm9yY2VkOm98fHN9LHtyZXNvbHZlOmZ1bmN0aW9uKGUpe3JldHVybiBsKHUmJnRoaXM9PT1jP2E6dGhpcyxlKX19KX0sNzIzNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZX19LDcyODI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIikscj1uKCI1OWVkIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt0cnl7cmV0dXJuIGkocihPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdClbbl0pKX1jYXRjaChlKXt9fX0sNzQxODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3QuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzfSw3ODM5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPVsiY29uc3RydWN0b3IiLCJoYXNPd25Qcm9wZXJ0eSIsImlzUHJvdG90eXBlT2YiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsInRvTG9jYWxlU3RyaW5nIiwidG9TdHJpbmciLCJ2YWx1ZU9mIl19LCI3YjBiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjFkODAiKSxyPU9iamVjdDtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHIoaShlKSl9fSwiN2M3MyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyPW4oIjgyNWEiKSxvPW4oIjM3ZTgiKSxhPW4oIjc4MzkiKSxzPW4oImQwMTIiKSxsPW4oIjFiZTQiKSxjPW4oImNjMTIiKSx1PW4oImY3NzIiKSxkPSJwcm90b3R5cGUiLHA9InNjcmlwdCIsaD11KCJJRV9QUk9UTyIpLGY9ZnVuY3Rpb24oKXt9LGc9ZnVuY3Rpb24oZSl7cmV0dXJuIjxzY3JpcHQ+IitlKyI8LyIrcCsiPiJ9LG09ZnVuY3Rpb24oZSl7ZS53cml0ZShnKCIiKSksZS5jbG9zZSgpO3ZhciB0PWUucGFyZW50V2luZG93Lk9iamVjdDtyZXR1cm4gZT1udWxsLHR9LHk9ZnVuY3Rpb24oKXt0cnl7aT1uZXcgQWN0aXZlWE9iamVjdCgiaHRtbGZpbGUiKX1jYXRjaChlKXt9eT0idW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmRvbWFpbiYmaT9tKGkpOmZ1bmN0aW9uKCl7dmFyIGUsdD1jKCJpZnJhbWUiKTtyZXR1cm4gdC5zdHlsZS5kaXNwbGF5PSJub25lIixsLmFwcGVuZENoaWxkKHQpLHQuc3JjPVN0cmluZygiamF2YXNjcmlwdDoiKSwoZT10LmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQpLm9wZW4oKSxlLndyaXRlKGcoImRvY3VtZW50LkY9T2JqZWN0IikpLGUuY2xvc2UoKSxlLkZ9KCk6bShpKTtmb3IodmFyIGU9YS5sZW5ndGg7ZS0tOylkZWxldGUgeVtkXVthW2VdXTtyZXR1cm4geSgpfTtzW2hdPSEwLGUuZXhwb3J0cz1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBudWxsIT09ZT8oZltkXT1yKGUpLG49bmV3IGYsZltkXT1udWxsLG5baF09ZSk6bj15KCksdm9pZCAwPT09dD9uOm8uZihuLHQpfX0sIjdkYjAiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMjNlNyIpLHI9bigiYjcyNyIpLmZpbmQsbz1uKCI0NGQyIiksYT0iZmluZCIscz0hMDthIGluW10mJkFycmF5KDEpW2FdKChmdW5jdGlvbigpe3M9ITF9KSksaSh7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOnN9LHtmaW5kOmZ1bmN0aW9uKGUpe3JldHVybiByKHRoaXMsZSxhcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSksbyhhKX0sIjgyNWEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiODYxZCIpLHI9U3RyaW5nLG89VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZihpKGUpKXJldHVybiBlO3Rocm93IG5ldyBvKHIoZSkrIiBpcyBub3QgYW4gb2JqZWN0Iil9fSwiODNhYiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkMDM5Iik7ZS5leHBvcnRzPSFpKChmdW5jdGlvbigpe3JldHVybiA3IT09T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LDEse2dldDpmdW5jdGlvbigpe3JldHVybiA3fX0pWzFdfSkpfSwiODYxZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIxNjI2Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZT9udWxsIT09ZTppKGUpfX0sODkyNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImUzMzAiKSxyPW4oIjE2MjYiKSxvPW4oImM2Y2QiKSxhPWkoRnVuY3Rpb24udG9TdHJpbmcpO3Ioby5pbnNwZWN0U291cmNlKXx8KG8uaW5zcGVjdFNvdXJjZT1mdW5jdGlvbihlKXtyZXR1cm4gYShlKX0pLGUuZXhwb3J0cz1vLmluc3BlY3RTb3VyY2V9LCI5MGUzIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImUzMzAiKSxyPTAsbz1NYXRoLnJhbmRvbSgpLGE9aSgxLi50b1N0cmluZyk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJTeW1ib2woIisodm9pZCAwPT09ZT8iIjplKSsiKV8iK2EoKytyK28sMzYpfX0sOTExMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgzYWIiKSxyPW4oIjliZjIiKSxvPW4oIjVjNmMiKTtlLmV4cG9ydHM9aT9mdW5jdGlvbihlLHQsbil7cmV0dXJuIHIuZihlLHQsbygxLG4pKX06ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBlW3RdPW4sZX19LCI5NGNhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImQwMzkiKSxyPW4oIjE2MjYiKSxvPS8jfFwucHJvdG90eXBlXC4vLGE9ZnVuY3Rpb24oZSx0KXt2YXIgbj1sW3MoZSldO3JldHVybiBuPT09dXx8biE9PWMmJihyKHQpP2kodCk6ISF0KX0scz1hLm5vcm1hbGl6ZT1mdW5jdGlvbihlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UobywiLiIpLnRvTG93ZXJDYXNlKCl9LGw9YS5kYXRhPXt9LGM9YS5OQVRJVkU9Ik4iLHU9YS5QT0xZRklMTD0iUCI7ZS5leHBvcnRzPWF9LCI5YTFmIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImM2NWIiKSxyPW4oIjU5ZWQiKSxvPW4oIjgyNWEiKSxhPW4oIjBkNTEiKSxzPW4oIjM1YTEiKSxsPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoPDI/cyhlKTp0O2lmKHIobikpcmV0dXJuIG8oaShuLGUpKTt0aHJvdyBuZXcgbChhKGUpKyIgaXMgbm90IGl0ZXJhYmxlIil9fSwiOWFiNCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG19KSk7dmFyIGk9ZnVuY3Rpb24oKXtyZXR1cm4oaT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbihlKXtmb3IodmFyIHQsbj0xLGk9YXJndW1lbnRzLmxlbmd0aDtuPGk7bisrKWZvcih2YXIgciBpbiB0PWFyZ3VtZW50c1tuXSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxyKSYmKGVbcl09dFtyXSk7cmV0dXJuIGV9KS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHI9bmV3IFJlZ0V4cCgiYGBgKFtcXHNcXFNdKj8pYGBgIiwiZyIpLG89bmV3IFJlZ0V4cCgiKGApKC4qPylcXDEiLCJnIiksYT1uZXcgUmVnRXhwKCJcXFsoW15cXF1dKilcXF1cXCgoW15cXHNdKykoPzpcXHMrJnF1b3Q7KC4qPykmcXVvdDspP1xcKSIsImciKSxzPW5ldyBSZWdFeHAoIl9cXFsoW15cXFtcXF1dKilcXF1cXCgoW14pXFxzXSspKD86XFxzKyZxdW90OyguKj8pJnF1b3Q7KT9cXCkiLCJnIiksbD1uZXcgUmVnRXhwKCJcXCp7MSwyfShcXFMuKj9cXFMpXFwqezEsMn0iLCJnIiksYz1uZXcgUmVnRXhwKCJcXGJfezEsMn0oXFxTW15cXG5dKj9cXFMpX3sxLDJ9XFxiIiwiZyIpLHU9bmV3IFJlZ0V4cCgifnsxLDJ9KFxcUy4qP1xcUyl+ezEsMn0iLCJnIiksZD1uZXcgUmVnRXhwKCJeKCZndDt7MSwyfSkoLiopIiwiZ20iKSxwPW5ldyBSZWdFeHAoIl4tXFxzLiooPzpcXG5cXHMqLVxccy4qKSoiLCJnbSIpLGg9bmV3IFJlZ0V4cCgiKChcXG5cXHMqKChcXGQrXFwuKXsxLDV9KVxccy4qKSspIiwiZyIpLGY9bmV3IFJlZ0V4cCgiXFxuKDxwcmU+KSgoXFxufC4pKikoPFxcL3ByZT4pIiwiZyIpLGc9bmV3IFJlZ0V4cCgiaHR0cHM/OlxcL1xcLyg/OlthLXpBLVowLTlcXC1dK1xcLikrW2EtekEtWl17Mix9KD86XFwvW15cXHNdKik/IiwiZyIpLG09ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe3ZvaWQgMD09PWUmJihlPXt9KSx0aGlzLm9wdGlvbnM9ZX1yZXR1cm4gZS5wcm90b3R5cGUucGFyc2VNYXJrZG93bj1mdW5jdGlvbihlKXtyZXR1cm4gZT0oZT10aGlzLnN0YW5kYXJkaXplTGluZUVuZGluZ3MoZSkpLnJlcGxhY2UoL1wkL2csIkRPTExBUj1TSUdOPVBMQUNFSE9MREVSIiksZT0oZT10aGlzLmZpeENvZGVCbG9ja3ModGhpcy5yZXBsYWNlTWFya2Rvd24oIlxuIitlKyJcbiIpKS50cmltKCkpLnJlcGxhY2UoL0RPTExBUj1TSUdOPVBMQUNFSE9MREVSL2csIiQiKX0sZS5wcm90b3R5cGUuc3RhbmRhcmRpemVMaW5lRW5kaW5ncz1mdW5jdGlvbihlKXtyZXR1cm4gZT0oZT1lLnJlcGxhY2UoL1xyXG4vZywiXG4iKSkucmVwbGFjZSgvXHIvZywiXG4iKX0sZS5wcm90b3R5cGUucmVwbGFjZUNvZGVCbG9ja3M9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztyZXR1cm4gZS5yZXBsYWNlKHIsKGZ1bmN0aW9uKGUsbil7cmV0dXJuIlxuPHByZT4iK3QuZW5jb2RlSFRNTEVudGl0ZXMobikrIjwvcHJlPiJ9KSl9LGUucHJvdG90eXBlLnJlcGxhY2VJbmxpbmVDb2Rlcz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKG8sKGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4iPGNvZGU+IituKyI8L2NvZGU+In0pKX0sZS5wcm90b3R5cGUucmVwbGFjZUxpbmtzPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIGUucmVwbGFjZShhLChmdW5jdGlvbihlLG4scixvKXtvJiYnIGFsdD0iJy5jb25jYXQobywnIicpO3ZhciBhPW58fHIscz17dGFyZ2V0OiJfYmxhbmsiLGhyZWY6cn07cmV0dXJuIG8mJihzLmFsdD1vKSwib2JqZWN0Ij09dHlwZW9mIHQub3B0aW9ucyYmdC5vcHRpb25zLmEmJnQub3B0aW9ucy5hLmxlbmd0aD4wJiZ0Lm9wdGlvbnMuYS5mb3JFYWNoKChmdW5jdGlvbih0KXt2b2lkIDA9PT10LnJ1bGUmJnQuYXR0cmlidXRlcyYmKHM9aShpKHt9LHMpLHQuYXR0cmlidXRlcykpLHQucnVsZSYmdC5ydWxlLnRlc3QoZSkmJihzPWkoaSh7fSxzKSx0LmF0dHJpYnV0ZXMpKX0pKSwiPGEgIit0LmNvbnZlcnRBdHRyaWJ1dGVzVG9TdHJpbmcocykrIj4iK2ErIjwvYT4ifSkpfSxlLnByb3RvdHlwZS5yZXBsYWNlTGlua3NXaXRoVGFyZ2V0UGFyZW50PWZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UocywoZnVuY3Rpb24oZSx0LG4saSl7cmV0dXJuJzxhIHRhcmdldD0iX3BhcmVudCIgaHJlZj0iJytuKyciJysoaT8nIGFsdD0iJy5jb25jYXQoaSwnIicpOiIiKSsiPiIrKHR8fG4pKyI8L2E+In0pKX0sZS5wcm90b3R5cGUucmVwbGFjZUJvbGQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZShsLChmdW5jdGlvbihlLHQpe3ZhciBuLGkscj0iIixvPSIiLGE9KG51bGw9PT0obj1lLm1hdGNoKC9eXCorLykpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuWzBdLmxlbmd0aCl8fDAscz0obnVsbD09PShpPWUubWF0Y2goL1wqKyQvKSl8fHZvaWQgMD09PWk/dm9pZCAwOmlbMF0ubGVuZ3RoKXx8MDtyZXR1cm4gYSE9PXMmJihhPj0yfHxzPj0yKSYmKGE+MiYmcz4yPyhyPSIqIi5yZXBlYXQoYS0yKSxvPSIqIi5yZXBlYXQocy0yKSk6KHI9IioiLnJlcGVhdChhLTEpLG89IioiLnJlcGVhdChzLTEpKSkscisiPHN0cm9uZz4iK3QrIjwvc3Ryb25nPiIrb30pKX0sZS5wcm90b3R5cGUucmVwbGFjZUl0YWxpYz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGMsKGZ1bmN0aW9uKGUsdCl7dmFyIG4saTtpZihlLm1hdGNoKGcpKXJldHVybiBlO3ZhciByPSIiLG89IiIsYT0obnVsbD09PShuPWUubWF0Y2goL15fKy8pKXx8dm9pZCAwPT09bj92b2lkIDA6blswXS5sZW5ndGgpfHwwLHM9KG51bGw9PT0oaT1lLm1hdGNoKC9fKyQvKSl8fHZvaWQgMD09PWk/dm9pZCAwOmlbMF0ubGVuZ3RoKXx8MDtyZXR1cm4gYSE9PXMmJihhPj0yfHxzPj0yKSYmKGE+MiYmcz4yPyhyPSJfIi5yZXBlYXQoYS0yKSxvPSJfIi5yZXBlYXQocy0yKSk6KHI9Il8iLnJlcGVhdChhLTEpLG89Il8iLnJlcGVhdChzLTEpKSkscisiPGk+Iit0KyI8L2k+IitvfSkpfSxlLnByb3RvdHlwZS5yZXBsYWNlY2VTdHJpa2V0aHJvdWdoPWZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UodSwoZnVuY3Rpb24oZSx0KXt2YXIgbixpLHI9IiIsbz0iIixhPShudWxsPT09KG49ZS5tYXRjaCgvXn4rLykpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuWzBdLmxlbmd0aCl8fDAscz0obnVsbD09PShpPWUubWF0Y2goL34rJC8pKXx8dm9pZCAwPT09aT92b2lkIDA6aVswXS5sZW5ndGgpfHwwO3JldHVybiBhIT09cyYmKGE+PTJ8fHM+PTIpJiYoYT4yJiZzPjI/KHI9In4iLnJlcGVhdChhLTIpLG89In4iLnJlcGVhdChzLTIpKToocj0ifiIucmVwZWF0KGEtMSksbz0ifiIucmVwZWF0KHMtMSkpKSxyKyI8ZGVsPiIrdCsiPC9kZWw+IitvfSkpfSxlLnByb3RvdHlwZS5yZXBsYWNlQmxvY2txdW90ZXM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZShkLChmdW5jdGlvbihlLHQsbil7dmFyIGk9dC5sZW5ndGg7aT4yJiYoaT0yKSxuPW4ucmVwbGFjZSgvXiZndDsvLCIiKTt2YXIgcj1BcnJheS5mcm9tKHtsZW5ndGg6aX0sKGZ1bmN0aW9uKCl7cmV0dXJuIjxibG9ja3F1b3RlPiJ9KSk7cmV0dXJuIHIucHVzaChuKSxyLnB1c2goIjwvYmxvY2txdW90ZT4iLnJlcGVhdChpKSksIlxuIityLmpvaW4oIiIpfSkpfSxlLnByb3RvdHlwZS5yZXBsYWNlVW5vcmRlcmVkTGlzdHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZShwLChmdW5jdGlvbihlKXt2YXIgdD1bXSxuPTA7Zm9yKGUudHJpbSgpLnNwbGl0KCJcbiIpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBpPWUubWF0Y2goL14oXHMqKSgtfFwrKSg/IS18XCspKC4qKS8pO2lmKGkpe2Zvcih2YXIgcj1pWzFdLmxlbmd0aCxvPWlbM10udHJpbSgpO24+cjspdC5wdXNoKCI8L3VsPiIpLG4tLTtuPHI/KHQucHVzaCgiPHVsPjxsaT4iLmNvbmNhdChvLCI8L2xpPiIpKSxuKyspOnQucHVzaCgiPGxpPiIuY29uY2F0KG8sIjwvbGk+IikpfX0pKTtuPjA7KXQucHVzaCgiPC91bD4iKSxuLS07cmV0dXJuIjx1bD4iLmNvbmNhdCh0LmpvaW4oIiIpLCI8L3VsPiIpfSkpfSxlLnByb3RvdHlwZS5yZXBsYWNlT3JkZXJlZExpc3RzPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIGUucmVwbGFjZShoLChmdW5jdGlvbihlKXt2YXIgbj1bXSxpPTAscj1bXSxvPWUuc3BsaXQoIlxuIikuaW5kZXhPZihlLnRyaW0oKS5zcGxpdCgiXG4iKVswXSk7Zm9yKGUudHJpbSgpLnNwbGl0KCJcbiIpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBvPWUubWF0Y2goLyhcZCtcLilccyguKikvKTtpZihvKXtmb3IodmFyIGE9dC5jb3VudExldmVscyhlKS0xO2k+YTspbi5wdXNoKCI8L29sPiIpLHIucG9wKCksaS0tO2k8YT8obi5wdXNoKCI8b2w+PGxpPiIuY29uY2F0KG9bMl0sIjwvbGk+IikpLHIucHVzaChhKSxpKyspOm4ucHVzaCgiPGxpPiIuY29uY2F0KG9bMl0sIjwvbGk+IikpfX0pKTtpPjA7KW4ucHVzaCgiPC9vbD4iKSxpLS07cmV0dXJuIG8+MD8iIi5jb25jYXQoIlxuIi5yZXBlYXQobyksIjxvbD4iKS5jb25jYXQobi5qb2luKCIiKSwiPC9vbD4iKToiPG9sPiIuY29uY2F0KG4uam9pbigiIiksIjwvb2w+Iil9KSl9LGUucHJvdG90eXBlLmNvdW50TGV2ZWxzPWZ1bmN0aW9uKGUpe3ZhciB0PWUubWF0Y2goL14oXGQrKFwuXGQrKSopXC4vKTtyZXR1cm4gdD90WzFdLnNwbGl0KCIuIikubGVuZ3RoOjB9LGUucHJvdG90eXBlLmZpeENvZGVCbG9ja3M9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZShmLChmdW5jdGlvbihlLHQsbixpLHIpe3ZhciBvPSIiO3JldHVybiBuLnNwbGl0KCJcbiIpLmZvckVhY2goKGZ1bmN0aW9uKGUpe28rPWUrIlxuIn0pKSx0K28rcn0pKX0sZS5wcm90b3R5cGUuZW5jb2RlSFRNTEVudGl0ZXM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IikucmVwbGFjZSgvXC8vZywiJiM0NzsiKX0sZS5wcm90b3R5cGUucmVwbGFjZU1hcmtkb3duPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbj1lLGk9W10scj1bXTtyZXR1cm4gbj0obj1uLnJlcGxhY2UoL2BgYChbXHNcU10qPylgYGAvZywoZnVuY3Rpb24oZSl7cmV0dXJuIHIucHVzaChlKSwiQ09ERUJMT0NLPVBMQUNFSE9MREVSPSIuY29uY2F0KChyLmxlbmd0aC0xKS50b1N0cmluZygpKX0pKSkucmVwbGFjZSgvYChbXmBdKylgL2csKGZ1bmN0aW9uKGUpe3JldHVybiBpLnB1c2goZSksIklOTElORUNPREU9UExBQ0VIT0xERVI9Ii5jb25jYXQoKGkubGVuZ3RoLTEpLnRvU3RyaW5nKCkpfSkpLG49dGhpcy5yZXBsYWNlQm9sZChuKSxuPXRoaXMucmVwbGFjZUl0YWxpYyhuKSxuPXRoaXMucmVwbGFjZUxpbmtzV2l0aFRhcmdldFBhcmVudChuKSxuPXRoaXMucmVwbGFjZUxpbmtzKG4pLG49dGhpcy5yZXBsYWNlY2VTdHJpa2V0aHJvdWdoKG4pLG49dGhpcy5yZXBsYWNlQmxvY2txdW90ZXMobiksbj10aGlzLnJlcGxhY2VVbm9yZGVyZWRMaXN0cyhuKSxuPShuPShuPXRoaXMucmVwbGFjZU9yZGVyZWRMaXN0cyhuKSkucmVwbGFjZSgvSU5MSU5FQ09ERT1QTEFDRUhPTERFUj0oXGQrKS9nLChmdW5jdGlvbihlLG4pe3JldHVybiB0LnJlcGxhY2VJbmxpbmVDb2RlcyhpW051bWJlcihuKV0pfSkpKS5yZXBsYWNlKC9DT0RFQkxPQ0s9UExBQ0VIT0xERVI9KFxkKykvZywoZnVuY3Rpb24oZSxuKXtyZXR1cm4gdC5yZXBsYWNlQ29kZUJsb2NrcyhyW051bWJlcihuKV0pfSkpfSxlLnByb3RvdHlwZS5jb252ZXJ0QXR0cmlidXRlc1RvU3RyaW5nPWZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZW50cmllcyhlKS5tYXAoKGZ1bmN0aW9uKGUpe3ZhciB0PWVbMF0sbj1lWzFdO3JldHVybiIiLmNvbmNhdCh0LCc9IicpLmNvbmNhdChTdHJpbmcobiksJyInKX0pKS5qb2luKCIgIil9LGUucHJvdG90eXBlLm1ha2VIdG1sPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnBhcnNlTWFya2Rvd24oZSl9LGV9KCl9LCI5YmYyIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjgzYWIiKSxyPW4oIjBjZmIiKSxvPW4oImFlZDkiKSxhPW4oIjgyNWEiKSxzPW4oImEwNGIiKSxsPVR5cGVFcnJvcixjPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSx1PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsZD0iZW51bWVyYWJsZSIscD0iY29uZmlndXJhYmxlIixoPSJ3cml0YWJsZSI7dC5mPWk/bz9mdW5jdGlvbihlLHQsbil7aWYoYShlKSx0PXModCksYShuKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmInByb3RvdHlwZSI9PT10JiYidmFsdWUiaW4gbiYmaCBpbiBuJiYhbltoXSl7dmFyIGk9dShlLHQpO2kmJmlbaF0mJihlW3RdPW4udmFsdWUsbj17Y29uZmlndXJhYmxlOnAgaW4gbj9uW3BdOmlbcF0sZW51bWVyYWJsZTpkIGluIG4/bltkXTppW2RdLHdyaXRhYmxlOiExfSl9cmV0dXJuIGMoZSx0LG4pfTpjOmZ1bmN0aW9uKGUsdCxuKXtpZihhKGUpLHQ9cyh0KSxhKG4pLHIpdHJ5e3JldHVybiBjKGUsdCxuKX1jYXRjaChlKXt9aWYoImdldCJpbiBufHwic2V0ImluIG4pdGhyb3cgbmV3IGwoIkFjY2Vzc29ycyBub3Qgc3VwcG9ydGVkIik7cmV0dXJuInZhbHVlImluIG4mJihlW3RdPW4udmFsdWUpLGV9fSxhMDRiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYzA0ZSIpLHI9bigiZDliNSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD1pKGUsInN0cmluZyIpO3JldHVybiByKHQpP3Q6dCsiIn19LGE0YjQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIzNDJmIik7ZS5leHBvcnRzPS93ZWIwcyg/IS4qY2hyb21lKS9pLnRlc3QoaSl9LGFlOTM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyLG8sYT1uKCJkMDM5Iikscz1uKCIxNjI2IiksbD1uKCI4NjFkIiksYz1uKCI3YzczIiksdT1uKCJlMTYzIiksZD1uKCJjYjJkIikscD1uKCJiNjIyIiksaD1uKCJjNDMwIiksZj1wKCJpdGVyYXRvciIpLGc9ITE7W10ua2V5cyYmKCJuZXh0ImluKG89W10ua2V5cygpKT8ocj11KHUobykpKSE9PU9iamVjdC5wcm90b3R5cGUmJihpPXIpOmc9ITApLCFsKGkpfHxhKChmdW5jdGlvbigpe3ZhciBlPXt9O3JldHVybiBpW2ZdLmNhbGwoZSkhPT1lfSkpP2k9e306aCYmKGk9YyhpKSkscyhpW2ZdKXx8ZChpLGYsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZS5leHBvcnRzPXtJdGVyYXRvclByb3RvdHlwZTppLEJVR0dZX1NBRkFSSV9JVEVSQVRPUlM6Z319LGFlZDk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI4M2FiIikscj1uKCJkMDM5Iik7ZS5leHBvcnRzPWkmJnIoKGZ1bmN0aW9uKCl7cmV0dXJuIDQyIT09T2JqZWN0LmRlZmluZVByb3BlcnR5KChmdW5jdGlvbigpe30pLCJwcm90b3R5cGUiLHt2YWx1ZTo0Mix3cml0YWJsZTohMX0pLnByb3RvdHlwZX0pKX0sYjQyZTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPU1hdGguY2VpbCxyPU1hdGguZmxvb3I7ZS5leHBvcnRzPU1hdGgudHJ1bmN8fGZ1bmN0aW9uKGUpe3ZhciB0PStlO3JldHVybih0PjA/cjppKSh0KX19LGI1NzU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxyLG8sYSxzLGw9bigiZGE4NCIpLGM9bigiMTU3YSIpLHU9bigiMDM2NiIpLGQ9bigiMmNmNCIpLnNldCxwPW4oIjAxYjQiKSxoPW4oIjFjZGMiKSxmPW4oImQ0YzMiKSxnPW4oImE0YjQiKSxtPW4oIjYwNWQiKSx5PWwuTXV0YXRpb25PYnNlcnZlcnx8bC5XZWJLaXRNdXRhdGlvbk9ic2VydmVyLHY9bC5kb2N1bWVudCxiPWwucHJvY2VzcyxfPWwuUHJvbWlzZSx3PWMoInF1ZXVlTWljcm90YXNrIik7aWYoIXcpe3ZhciBrPW5ldyBwLEM9ZnVuY3Rpb24oKXt2YXIgZSx0O2ZvcihtJiYoZT1iLmRvbWFpbikmJmUuZXhpdCgpO3Q9ay5nZXQoKTspdHJ5e3QoKX1jYXRjaChlKXt0aHJvdyBrLmhlYWQmJmkoKSxlfWUmJmUuZW50ZXIoKX07aHx8bXx8Z3x8IXl8fCF2PyFmJiZfJiZfLnJlc29sdmU/KChhPV8ucmVzb2x2ZSh2b2lkIDApKS5jb25zdHJ1Y3Rvcj1fLHM9dShhLnRoZW4sYSksaT1mdW5jdGlvbigpe3MoQyl9KTptP2k9ZnVuY3Rpb24oKXtiLm5leHRUaWNrKEMpfTooZD11KGQsbCksaT1mdW5jdGlvbigpe2QoQyl9KToocj0hMCxvPXYuY3JlYXRlVGV4dE5vZGUoIiIpLG5ldyB5KEMpLm9ic2VydmUobyx7Y2hhcmFjdGVyRGF0YTohMH0pLGk9ZnVuY3Rpb24oKXtvLmRhdGE9cj0hcn0pLHc9ZnVuY3Rpb24oZSl7ay5oZWFkfHxpKCksay5hZGQoZSl9fWUuZXhwb3J0cz13fSxiNjIyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZGE4NCIpLHI9bigiNTY5MiIpLG89bigiMWEyZCIpLGE9bigiOTBlMyIpLHM9bigiMDRmOCIpLGw9bigiZmRiZiIpLGM9aS5TeW1ib2wsdT1yKCJ3a3MiKSxkPWw/Yy5mb3J8fGM6YyYmYy53aXRob3V0U2V0dGVyfHxhO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyh1LGUpfHwodVtlXT1zJiZvKGMsZSk/Y1tlXTpkKCJTeW1ib2wuIitlKSksdVtlXX19LGI3Mjc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIwMzY2Iikscj1uKCJlMzMwIiksbz1uKCI0NGFkIiksYT1uKCI3YjBiIikscz1uKCIwN2ZhIiksbD1uKCI2NWYwIiksYz1yKFtdLnB1c2gpLHU9ZnVuY3Rpb24oZSl7dmFyIHQ9MT09PWUsbj0yPT09ZSxyPTM9PT1lLHU9ND09PWUsZD02PT09ZSxwPTc9PT1lLGg9NT09PWV8fGQ7cmV0dXJuIGZ1bmN0aW9uKGYsZyxtLHkpe2Zvcih2YXIgdixiLF89YShmKSx3PW8oXyksaz1zKHcpLEM9aShnLG0pLHg9MCxTPXl8fGwsTD10P1MoZixrKTpufHxwP1MoZiwwKTp2b2lkIDA7az54O3grKylpZigoaHx8eCBpbiB3KSYmKGI9Qyh2PXdbeF0seCxfKSxlKSlpZih0KUxbeF09YjtlbHNlIGlmKGIpc3dpdGNoKGUpe2Nhc2UgMzpyZXR1cm4hMDtjYXNlIDU6cmV0dXJuIHY7Y2FzZSA2OnJldHVybiB4O2Nhc2UgMjpjKEwsdil9ZWxzZSBzd2l0Y2goZSl7Y2FzZSA0OnJldHVybiExO2Nhc2UgNzpjKEwsdil9cmV0dXJuIGQ/LTE6cnx8dT91Okx9fTtlLmV4cG9ydHM9e2ZvckVhY2g6dSgwKSxtYXA6dSgxKSxmaWx0ZXI6dSgyKSxzb21lOnUoMyksZXZlcnk6dSg0KSxmaW5kOnUoNSksZmluZEluZGV4OnUoNiksZmlsdGVyUmVqZWN0OnUoNyl9fSxjMDRlOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYzY1YiIpLHI9bigiODYxZCIpLG89bigiZDliNSIpLGE9bigiZGM0YSIpLHM9bigiNDg1YSIpLGw9bigiYjYyMiIpLGM9VHlwZUVycm9yLHU9bCgidG9QcmltaXRpdmUiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZighcihlKXx8byhlKSlyZXR1cm4gZTt2YXIgbixsPWEoZSx1KTtpZihsKXtpZih2b2lkIDA9PT10JiYodD0iZGVmYXVsdCIpLG49aShsLGUsdCksIXIobil8fG8obikpcmV0dXJuIG47dGhyb3cgbmV3IGMoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfXJldHVybiB2b2lkIDA9PT10JiYodD0ibnVtYmVyIikscyhlLHQpfX0sYzQzMDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz0hMX0sYzY1YjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjQwZDUiKSxyPUZ1bmN0aW9uLnByb3RvdHlwZS5jYWxsO2UuZXhwb3J0cz1pP3IuYmluZChyKTpmdW5jdGlvbigpe3JldHVybiByLmFwcGx5KHIsYXJndW1lbnRzKX19LGM2YjY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIikscj1pKHt9LnRvU3RyaW5nKSxvPWkoIiIuc2xpY2UpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhyKGUpLDgsLTEpfX0sYzZjZDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImM0MzAiKSxyPW4oImRhODQiKSxvPW4oIjYzNzQiKSxhPSJfX2NvcmUtanNfc2hhcmVkX18iLHM9ZS5leHBvcnRzPXJbYV18fG8oYSx7fSk7KHMudmVyc2lvbnN8fChzLnZlcnNpb25zPVtdKSkucHVzaCh7dmVyc2lvbjoiMy4zNy4xIixtb2RlOmk/InB1cmUiOiJnbG9iYWwiLGNvcHlyaWdodDoiwqkgMjAxNC0yMDI0IERlbmlzIFB1c2hrYXJldiAoemxvaXJvY2sucnUpIixsaWNlbnNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcy9ibG9iL3YzLjM3LjEvTElDRU5TRSIsc291cmNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcyJ9KX0sYzZkMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjIzZTciKSxyPW4oImM2NWIiKSxvPW4oImM0MzAiKSxhPW4oIjVlNzciKSxzPW4oIjE2MjYiKSxsPW4oImRjYzMiKSxjPW4oImUxNjMiKSx1PW4oImQyYmIiKSxkPW4oImQ0NGUiKSxwPW4oIjkxMTIiKSxoPW4oImNiMmQiKSxmPW4oImI2MjIiKSxnPW4oIjNmOGMiKSxtPW4oImFlOTMiKSx5PWEuUFJPUEVSLHY9YS5DT05GSUdVUkFCTEUsYj1tLkl0ZXJhdG9yUHJvdG90eXBlLF89bS5CVUdHWV9TQUZBUklfSVRFUkFUT1JTLHc9ZigiaXRlcmF0b3IiKSxrPSJrZXlzIixDPSJ2YWx1ZXMiLHg9ImVudHJpZXMiLFM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLGEsZixtLEwpe2wobix0LGEpO3ZhciBULE8sRSxqPWZ1bmN0aW9uKGUpe2lmKGU9PT1mJiYkKXJldHVybiAkO2lmKCFfJiZlJiZlIGluIEEpcmV0dXJuIEFbZV07c3dpdGNoKGUpe2Nhc2UgazpjYXNlIEM6Y2FzZSB4OnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyl9fSxQPXQrIiBJdGVyYXRvciIsUj0hMSxBPWUucHJvdG90eXBlLEk9QVt3XXx8QVsiQEBpdGVyYXRvciJdfHxmJiZBW2ZdLCQ9IV8mJkl8fGooZiksRD0iQXJyYXkiPT09dCYmQS5lbnRyaWVzfHxJO2lmKEQmJigoVD1jKEQuY2FsbChuZXcgZSkpKSE9PU9iamVjdC5wcm90b3R5cGUmJlQubmV4dCYmKG98fGMoVCk9PT1ifHwodT91KFQsYik6cyhUW3ddKXx8aChULHcsUykpLGQoVCxQLCEwLCEwKSxvJiYoZ1tQXT1TKSkpLHkmJmY9PT1DJiZJJiZJLm5hbWUhPT1DJiYoIW8mJnY/cChBLCJuYW1lIixDKTooUj0hMCwkPWZ1bmN0aW9uKCl7cmV0dXJuIHIoSSx0aGlzKX0pKSxmKWlmKE89e3ZhbHVlczpqKEMpLGtleXM6bT8kOmooayksZW50cmllczpqKHgpfSxMKWZvcihFIGluIE8pKF98fFJ8fCEoRSBpbiBBKSkmJmgoQSxFLE9bRV0pO2Vsc2UgaSh7dGFyZ2V0OnQscHJvdG86ITAsZm9yY2VkOl98fFJ9LE8pO3JldHVybiBvJiYhTHx8QVt3XT09PSR8fGgoQSx3LCQse25hbWU6Zn0pLGdbdF09JCxPfX0sYzc0MDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjIzZTciKSxyPW4oImI3MjciKS5maW5kSW5kZXgsbz1uKCI0NGQyIiksYT0iZmluZEluZGV4IixzPSEwO2EgaW5bXSYmQXJyYXkoMSlbYV0oKGZ1bmN0aW9uKCl7cz0hMX0pKSxpKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6c30se2ZpbmRJbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gcih0aGlzLGUsYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApfX0pLG8oYSl9LGM4YmE6ZnVuY3Rpb24oZSx0KXt2YXIgbjtuPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCk7dHJ5e249bnx8bmV3IEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9Y2F0Y2goZSl7Im9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJihuPXdpbmRvdyl9ZS5leHBvcnRzPW59LGNhODQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIikscj1uKCIxYTJkIiksbz1uKCJmYzZhIiksYT1uKCI0ZDY0IikuaW5kZXhPZixzPW4oImQwMTIiKSxsPWkoW10ucHVzaCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4saT1vKGUpLGM9MCx1PVtdO2ZvcihuIGluIGkpIXIocyxuKSYmcihpLG4pJiZsKHUsbik7Zm9yKDt0Lmxlbmd0aD5jOylyKGksbj10W2MrK10pJiYofmEodSxuKXx8bCh1LG4pKTtyZXR1cm4gdX19LGNiMmQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIxNjI2Iikscj1uKCI5YmYyIiksbz1uKCIxM2QyIiksYT1uKCI2Mzc0Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHMpe3N8fChzPXt9KTt2YXIgbD1zLmVudW1lcmFibGUsYz12b2lkIDAhPT1zLm5hbWU/cy5uYW1lOnQ7aWYoaShuKSYmbyhuLGMscykscy5nbG9iYWwpbD9lW3RdPW46YSh0LG4pO2Vsc2V7dHJ5e3MudW5zYWZlP2VbdF0mJihsPSEwKTpkZWxldGUgZVt0XX1jYXRjaChlKXt9bD9lW3RdPW46ci5mKGUsdCx7dmFsdWU6bixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohcy5ub25Db25maWd1cmFibGUsd3JpdGFibGU6IXMubm9uV3JpdGFibGV9KX1yZXR1cm4gZX19LGNjMTI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkYTg0Iikscj1uKCI4NjFkIiksbz1pLmRvY3VtZW50LGE9cihvKSYmcihvLmNyZWF0ZUVsZW1lbnQpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gYT9vLmNyZWF0ZUVsZW1lbnQoZSk6e319fSxjYzcwOmZ1bmN0aW9uKGUsdCxuKXsoZnVuY3Rpb24oZSl7IWZ1bmN0aW9uKHQpe3ZhciBuOyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P249d2luZG93OnZvaWQgMCE9PWU/bj1lOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmKG49c2VsZiksbi4kX19UYXdrRW5naW5lPXQoKX0oKGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuLGkpe2Z1bmN0aW9uIHIoYSxzKXtpZighblthXSl7aWYoIXRbYV0pe2lmKG8pcmV0dXJuIG8oYSwhMCk7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZmluZCBtb2R1bGUgJyIrYSsiJyIpfXZhciBsPW5bYV09e2V4cG9ydHM6e319O3RbYV1bMF0uY2FsbChsLmV4cG9ydHMsKGZ1bmN0aW9uKGUpe3JldHVybiByKHRbYV1bMV1bZV18fGUpfSksbCxsLmV4cG9ydHMsZSx0LG4saSl9cmV0dXJuIG5bYV0uZXhwb3J0c31mb3IodmFyIG89ITEsYT0wO2E8aS5sZW5ndGg7YSsrKXIoaVthXSk7cmV0dXJuIHJ9KHtkZWJ1ZzpbZnVuY3Rpb24oZSx0LG4pe3QuZXhwb3J0cz1lKCJuOWkyZzYiKX0se31dLG45aTJnNjpbZnVuY3Rpb24oZSx0LG4pe3QuZXhwb3J0cz1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319fSx7fV0sMzpbZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIGkoKXt9dC5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj0hMTtyZXR1cm4gbj1ufHxpLG8uY291bnQ9ZSwwPT09ZT90KCk6bztmdW5jdGlvbiBvKGUsaSl7aWYoby5jb3VudDw9MCl0aHJvdyBuZXcgRXJyb3IoImFmdGVyIGNhbGxlZCB0b28gbWFueSB0aW1lcyIpOy0tby5jb3VudCxlPyhyPSEwLHQoZSksdD1uKTowIT09by5jb3VudHx8cnx8dChudWxsLGkpfX19LHt9XSw0OltmdW5jdGlvbihlLHQsbil7dC5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT1lLmJ5dGVMZW5ndGg7aWYodD10fHwwLG49bnx8aSxlLnNsaWNlKXJldHVybiBlLnNsaWNlKHQsbik7aWYodDwwJiYodCs9aSksbjwwJiYobis9aSksbj5pJiYobj1pKSx0Pj1pfHx0Pj1ufHwwPT09aSlyZXR1cm4gbmV3IEFycmF5QnVmZmVyKDApO2Zvcih2YXIgcj1uZXcgVWludDhBcnJheShlKSxvPW5ldyBVaW50OEFycmF5KG4tdCksYT10LHM9MDthPG47YSsrLHMrKylvW3NdPXJbYV07cmV0dXJuIG8uYnVmZmVyfX0se31dLDU6W2Z1bmN0aW9uKGUsdCxuKXshZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO24uZW5jb2RlPWZ1bmN0aW9uKHQpe3ZhciBuLGk9bmV3IFVpbnQ4QXJyYXkodCkscj1pLmxlbmd0aCxvPSIiO2ZvcihuPTA7bjxyO24rPTMpbys9ZVtpW25dPj4yXSxvKz1lWygzJmlbbl0pPDw0fGlbbisxXT4+NF0sbys9ZVsoMTUmaVtuKzFdKTw8MnxpW24rMl0+PjZdLG8rPWVbNjMmaVtuKzJdXTtyZXR1cm4gciUzPT0yP289by5zdWJzdHJpbmcoMCxvLmxlbmd0aC0xKSsiPSI6ciUzPT0xJiYobz1vLnN1YnN0cmluZygwLG8ubGVuZ3RoLTIpKyI9PSIpLG99LG4uZGVjb2RlPWZ1bmN0aW9uKHQpe3ZhciBuLGkscixvLGEscz0uNzUqdC5sZW5ndGgsbD10Lmxlbmd0aCxjPTA7Ij0iPT09dFt0Lmxlbmd0aC0xXSYmKHMtLSwiPSI9PT10W3QubGVuZ3RoLTJdJiZzLS0pO3ZhciB1PW5ldyBBcnJheUJ1ZmZlcihzKSxkPW5ldyBVaW50OEFycmF5KHUpO2ZvcihuPTA7bjxsO24rPTQpaT1lLmluZGV4T2YodFtuXSkscj1lLmluZGV4T2YodFtuKzFdKSxvPWUuaW5kZXhPZih0W24rMl0pLGE9ZS5pbmRleE9mKHRbbiszXSksZFtjKytdPWk8PDJ8cj4+NCxkW2MrK109KDE1JnIpPDw0fG8+PjIsZFtjKytdPSgzJm8pPDw2fDYzJmE7cmV0dXJuIHV9fSgiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIpfSx7fV0sNjpbZnVuY3Rpb24oZSx0LG4peyhmdW5jdGlvbihlKXt2YXIgbj1lLkJsb2JCdWlsZGVyfHxlLldlYktpdEJsb2JCdWlsZGVyfHxlLk1TQmxvYkJ1aWxkZXJ8fGUuTW96QmxvYkJ1aWxkZXIsaT1mdW5jdGlvbigpe3RyeXtyZXR1cm4gMj09PW5ldyBCbG9iKFsiaGkiXSkuc2l6ZX1jYXRjaChlKXtyZXR1cm4hMX19KCkscj1pJiZmdW5jdGlvbigpe3RyeXtyZXR1cm4gMj09PW5ldyBCbG9iKFtuZXcgVWludDhBcnJheShbMSwyXSldKS5zaXplfWNhdGNoKGUpe3JldHVybiExfX0oKSxvPW4mJm4ucHJvdG90eXBlLmFwcGVuZCYmbi5wcm90b3R5cGUuZ2V0QmxvYjtmdW5jdGlvbiBhKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO2lmKG4uYnVmZmVyIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpe3ZhciBpPW4uYnVmZmVyO2lmKG4uYnl0ZUxlbmd0aCE9PWkuYnl0ZUxlbmd0aCl7dmFyIHI9bmV3IFVpbnQ4QXJyYXkobi5ieXRlTGVuZ3RoKTtyLnNldChuZXcgVWludDhBcnJheShpLG4uYnl0ZU9mZnNldCxuLmJ5dGVMZW5ndGgpKSxpPXIuYnVmZmVyfWVbdF09aX19fWZ1bmN0aW9uIHMoZSx0KXt0PXR8fHt9O3ZhciBpPW5ldyBuO2EoZSk7Zm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspaS5hcHBlbmQoZVtyXSk7cmV0dXJuIHQudHlwZT9pLmdldEJsb2IodC50eXBlKTppLmdldEJsb2IoKX1mdW5jdGlvbiBsKGUsdCl7cmV0dXJuIGEoZSksbmV3IEJsb2IoZSx0fHx7fSl9dC5leHBvcnRzPWk/cj9lLkJsb2I6bDpvP3M6dm9pZCAwfSkuY2FsbCh0aGlzLCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fSl9LHt9XSw3OltmdW5jdGlvbihlLHQsbil7fSx7fV0sODpbZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIGkoZSl7aWYoZSlyZXR1cm4gZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGkucHJvdG90eXBlKWVbdF09aS5wcm90b3R5cGVbdF07cmV0dXJuIGV9KGUpfXQuZXhwb3J0cz1pLGkucHJvdG90eXBlLm9uPWkucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sKHRoaXMuX2NhbGxiYWNrc1tlXT10aGlzLl9jYWxsYmFja3NbZV18fFtdKS5wdXNoKHQpLHRoaXN9LGkucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO2Z1bmN0aW9uIGkoKXtuLm9mZihlLGkpLHQuYXBwbHkodGhpcyxhcmd1bWVudHMpfXJldHVybiB0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fSxpLmZuPXQsdGhpcy5vbihlLGkpLHRoaXN9LGkucHJvdG90eXBlLm9mZj1pLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lcj1pLnByb3RvdHlwZS5yZW1vdmVBbGxMaXN0ZW5lcnM9aS5wcm90b3R5cGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQpe2lmKHRoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9LDA9PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuX2NhbGxiYWNrcz17fSx0aGlzO3ZhciBuLGk9dGhpcy5fY2FsbGJhY2tzW2VdO2lmKCFpKXJldHVybiB0aGlzO2lmKDE9PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIGRlbGV0ZSB0aGlzLl9jYWxsYmFja3NbZV0sdGhpcztmb3IodmFyIHI9MDtyPGkubGVuZ3RoO3IrKylpZigobj1pW3JdKT09PXR8fG4uZm49PT10KXtpLnNwbGljZShyLDEpO2JyZWFrfXJldHVybiB0aGlzfSxpLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKGUpe3RoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9O3ZhciB0PVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpLG49dGhpcy5fY2FsbGJhY2tzW2VdO2lmKG4pZm9yKHZhciBpPTAscj0obj1uLnNsaWNlKDApKS5sZW5ndGg7aTxyOysraSluW2ldLmFwcGx5KHRoaXMsdCk7cmV0dXJuIHRoaXN9LGkucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sdGhpcy5fY2FsbGJhY2tzW2VdfHxbXX0saS5wcm90b3R5cGUuaGFzTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3JldHVybiEhdGhpcy5saXN0ZW5lcnMoZSkubGVuZ3RofX0se31dLDk6W2Z1bmN0aW9uKGUsdCxuKXt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1mdW5jdGlvbigpe307bi5wcm90b3R5cGU9dC5wcm90b3R5cGUsZS5wcm90b3R5cGU9bmV3IG4sZS5wcm90b3R5cGUuY29uc3RydWN0b3I9ZX19LHt9XSwxMDpbZnVuY3Rpb24oZSx0LG4pe3QuZXhwb3J0cz1lKCIuL2xpYi8iKX0seyIuL2xpYi8iOjExfV0sMTE6W2Z1bmN0aW9uKGUsdCxuKXt0LmV4cG9ydHM9ZSgiLi9zb2NrZXQiKSx0LmV4cG9ydHMucGFyc2VyPWUoImVuZ2luZS5pby1wYXJzZXIiKX0seyIuL3NvY2tldCI6MTIsImVuZ2luZS5pby1wYXJzZXIiOjIwfV0sMTI6W2Z1bmN0aW9uKGUsdCxuKXsoZnVuY3Rpb24obil7dmFyIGk9ZSgiLi90cmFuc3BvcnRzIikscj1lKCJjb21wb25lbnQtZW1pdHRlciIpLG89ZSgiZGVidWciKSgiZW5naW5lLmlvLWNsaWVudDpzb2NrZXQiKSxhPWUoImluZGV4b2YiKSxzPWUoImVuZ2luZS5pby1wYXJzZXIiKSxsPWUoInBhcnNldXJpIiksYz1lKCJwYXJzZWpzb24iKSx1PWUoInBhcnNlcXMiKTtmdW5jdGlvbiBkKGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgZCkpcmV0dXJuIG5ldyBkKGUsdCk7dD10fHx7fSxlJiYib2JqZWN0Ij09dHlwZW9mIGUmJih0PWUsZT1udWxsKSxlPyhlPWwoZSksdC5ob3N0bmFtZT1lLmhvc3QsdC5zZWN1cmU9Imh0dHBzIj09ZS5wcm90b2NvbHx8IndzcyI9PWUucHJvdG9jb2wsdC5wb3J0PWUucG9ydCxlLnF1ZXJ5JiYodC5xdWVyeT1lLnF1ZXJ5KSk6dC5ob3N0JiYodC5ob3N0bmFtZT1sKHQuaG9zdCkuaG9zdCksdGhpcy5zZWN1cmU9bnVsbCE9dC5zZWN1cmU/dC5zZWN1cmU6bi5sb2NhdGlvbiYmImh0dHBzOiI9PWxvY2F0aW9uLnByb3RvY29sLHQuaG9zdG5hbWUmJiF0LnBvcnQmJih0LnBvcnQ9dGhpcy5zZWN1cmU/IjQ0MyI6IjgwIiksdGhpcy5hZ2VudD10LmFnZW50fHwhMSx0aGlzLmhvc3RuYW1lPXQuaG9zdG5hbWV8fChuLmxvY2F0aW9uP2xvY2F0aW9uLmhvc3RuYW1lOiJsb2NhbGhvc3QiKSx0aGlzLnBvcnQ9dC5wb3J0fHwobi5sb2NhdGlvbiYmbG9jYXRpb24ucG9ydD9sb2NhdGlvbi5wb3J0OnRoaXMuc2VjdXJlPzQ0Mzo4MCksdGhpcy5xdWVyeT10LnF1ZXJ5fHx7fSwic3RyaW5nIj09dHlwZW9mIHRoaXMucXVlcnkmJih0aGlzLnF1ZXJ5PXUuZGVjb2RlKHRoaXMucXVlcnkpKSx0aGlzLnVwZ3JhZGU9ITEhPT10LnVwZ3JhZGUsdGhpcy5wYXRoPSh0LnBhdGh8fCIvZW5naW5lLmlvIikucmVwbGFjZSgvXC8kLywiIikrIi8iLHRoaXMuZm9yY2VKU09OUD0hIXQuZm9yY2VKU09OUCx0aGlzLmpzb25wPSExIT09dC5qc29ucCx0aGlzLmZvcmNlQmFzZTY0PSEhdC5mb3JjZUJhc2U2NCx0aGlzLmVuYWJsZXNYRFI9ISF0LmVuYWJsZXNYRFIsdGhpcy50aW1lc3RhbXBQYXJhbT10LnRpbWVzdGFtcFBhcmFtfHwidCIsdGhpcy50aW1lc3RhbXBSZXF1ZXN0cz10LnRpbWVzdGFtcFJlcXVlc3RzLHRoaXMudHJhbnNwb3J0cz10LnRyYW5zcG9ydHN8fFsicG9sbGluZyIsIndlYnNvY2tldCJdLHRoaXMucmVhZHlTdGF0ZT0iIix0aGlzLndyaXRlQnVmZmVyPVtdLHRoaXMucG9saWN5UG9ydD10LnBvbGljeVBvcnR8fDg0Myx0aGlzLnJlbWVtYmVyVXBncmFkZT10LnJlbWVtYmVyVXBncmFkZXx8ITEsdGhpcy5iaW5hcnlUeXBlPW51bGwsdGhpcy5vbmx5QmluYXJ5VXBncmFkZXM9dC5vbmx5QmluYXJ5VXBncmFkZXMsdGhpcy5wZXJNZXNzYWdlRGVmbGF0ZT0hMSE9PXQucGVyTWVzc2FnZURlZmxhdGUmJih0LnBlck1lc3NhZ2VEZWZsYXRlfHx7fSksITA9PT10aGlzLnBlck1lc3NhZ2VEZWZsYXRlJiYodGhpcy5wZXJNZXNzYWdlRGVmbGF0ZT17fSksdGhpcy5wZXJNZXNzYWdlRGVmbGF0ZSYmbnVsbD09dGhpcy5wZXJNZXNzYWdlRGVmbGF0ZS50aHJlc2hvbGQmJih0aGlzLnBlck1lc3NhZ2VEZWZsYXRlLnRocmVzaG9sZD0xMDI0KSx0aGlzLnBmeD10LnBmeHx8bnVsbCx0aGlzLmtleT10LmtleXx8bnVsbCx0aGlzLnBhc3NwaHJhc2U9dC5wYXNzcGhyYXNlfHxudWxsLHRoaXMuY2VydD10LmNlcnR8fG51bGwsdGhpcy5jYT10LmNhfHxudWxsLHRoaXMuY2lwaGVycz10LmNpcGhlcnN8fG51bGwsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9dm9pZCAwPT09dC5yZWplY3RVbmF1dGhvcml6ZWR8fHQucmVqZWN0VW5hdXRob3JpemVkO3ZhciBpPSJvYmplY3QiPT10eXBlb2YgbiYmbjtpLmdsb2JhbD09PWkmJnQuZXh0cmFIZWFkZXJzJiZPYmplY3Qua2V5cyh0LmV4dHJhSGVhZGVycykubGVuZ3RoPjAmJih0aGlzLmV4dHJhSGVhZGVycz10LmV4dHJhSGVhZGVycyksdGhpcy5vcGVuKCl9dC5leHBvcnRzPWQsZC5wcmlvcldlYnNvY2tldFN1Y2Nlc3M9ITEscihkLnByb3RvdHlwZSksZC5wcm90b2NvbD1zLnByb3RvY29sLGQuU29ja2V0PWQsZC5UcmFuc3BvcnQ9ZSgiLi90cmFuc3BvcnQiKSxkLnRyYW5zcG9ydHM9ZSgiLi90cmFuc3BvcnRzIiksZC5wYXJzZXI9ZSgiZW5naW5lLmlvLXBhcnNlciIpLGQucHJvdG90eXBlLmNyZWF0ZVRyYW5zcG9ydD1mdW5jdGlvbihlKXtvKCdjcmVhdGluZyB0cmFuc3BvcnQgIiVzIicsZSk7dmFyIHQ9ZnVuY3Rpb24oZSl7dmFyIHQ9e307Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmKHRbbl09ZVtuXSk7cmV0dXJuIHR9KHRoaXMucXVlcnkpO3JldHVybiB0LkVJTz1zLnByb3RvY29sLHQudHJhbnNwb3J0PWUsdGhpcy5pZCYmKHQuc2lkPXRoaXMuaWQpLG5ldyBpW2VdKHthZ2VudDp0aGlzLmFnZW50LGhvc3RuYW1lOnRoaXMuaG9zdG5hbWUscG9ydDp0aGlzLnBvcnQsc2VjdXJlOnRoaXMuc2VjdXJlLHBhdGg6dGhpcy5wYXRoLHF1ZXJ5OnQsZm9yY2VKU09OUDp0aGlzLmZvcmNlSlNPTlAsanNvbnA6dGhpcy5qc29ucCxmb3JjZUJhc2U2NDp0aGlzLmZvcmNlQmFzZTY0LGVuYWJsZXNYRFI6dGhpcy5lbmFibGVzWERSLHRpbWVzdGFtcFJlcXVlc3RzOnRoaXMudGltZXN0YW1wUmVxdWVzdHMsdGltZXN0YW1wUGFyYW06dGhpcy50aW1lc3RhbXBQYXJhbSxwb2xpY3lQb3J0OnRoaXMucG9saWN5UG9ydCxzb2NrZXQ6dGhpcyxwZng6dGhpcy5wZngsa2V5OnRoaXMua2V5LHBhc3NwaHJhc2U6dGhpcy5wYXNzcGhyYXNlLGNlcnQ6dGhpcy5jZXJ0LGNhOnRoaXMuY2EsY2lwaGVyczp0aGlzLmNpcGhlcnMscmVqZWN0VW5hdXRob3JpemVkOnRoaXMucmVqZWN0VW5hdXRob3JpemVkLHBlck1lc3NhZ2VEZWZsYXRlOnRoaXMucGVyTWVzc2FnZURlZmxhdGUsZXh0cmFIZWFkZXJzOnRoaXMuZXh0cmFIZWFkZXJzfSl9LGQucHJvdG90eXBlLm9wZW49ZnVuY3Rpb24oKXt2YXIgZTtpZih0aGlzLnJlbWVtYmVyVXBncmFkZSYmZC5wcmlvcldlYnNvY2tldFN1Y2Nlc3MmJi0xIT10aGlzLnRyYW5zcG9ydHMuaW5kZXhPZigid2Vic29ja2V0IikpZT0id2Vic29ja2V0IjtlbHNle2lmKDA9PT10aGlzLnRyYW5zcG9ydHMubGVuZ3RoKXt2YXIgdD10aGlzO3JldHVybiB2b2lkIHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC5lbWl0KCJlcnJvciIsIk5vIHRyYW5zcG9ydHMgYXZhaWxhYmxlIil9KSwwKX1lPXRoaXMudHJhbnNwb3J0c1swXX10aGlzLnJlYWR5U3RhdGU9Im9wZW5pbmciO3RyeXtlPXRoaXMuY3JlYXRlVHJhbnNwb3J0KGUpfWNhdGNoKGUpe3JldHVybiB0aGlzLnRyYW5zcG9ydHMuc2hpZnQoKSx2b2lkIHRoaXMub3BlbigpfWUub3BlbigpLHRoaXMuc2V0VHJhbnNwb3J0KGUpfSxkLnByb3RvdHlwZS5zZXRUcmFuc3BvcnQ9ZnVuY3Rpb24oZSl7bygic2V0dGluZyB0cmFuc3BvcnQgJXMiLGUubmFtZSk7dmFyIHQ9dGhpczt0aGlzLnRyYW5zcG9ydCYmKG8oImNsZWFyaW5nIGV4aXN0aW5nIHRyYW5zcG9ydCAlcyIsdGhpcy50cmFuc3BvcnQubmFtZSksdGhpcy50cmFuc3BvcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCkpLHRoaXMudHJhbnNwb3J0PWUsZS5vbigiZHJhaW4iLChmdW5jdGlvbigpe3Qub25EcmFpbigpfSkpLm9uKCJwYWNrZXQiLChmdW5jdGlvbihlKXt0Lm9uUGFja2V0KGUpfSkpLm9uKCJlcnJvciIsKGZ1bmN0aW9uKGUpe3Qub25FcnJvcihlKX0pKS5vbigiY2xvc2UiLChmdW5jdGlvbigpe3Qub25DbG9zZSgidHJhbnNwb3J0IGNsb3NlIil9KSl9LGQucHJvdG90eXBlLnByb2JlPWZ1bmN0aW9uKGUpe28oJ3Byb2JpbmcgdHJhbnNwb3J0ICIlcyInLGUpO3ZhciB0PXRoaXMuY3JlYXRlVHJhbnNwb3J0KGUse3Byb2JlOjF9KSxuPSExLGk9dGhpcztmdW5jdGlvbiByKCl7aWYoaS5vbmx5QmluYXJ5VXBncmFkZXMpe3ZhciByPSF0aGlzLnN1cHBvcnRzQmluYXJ5JiZpLnRyYW5zcG9ydC5zdXBwb3J0c0JpbmFyeTtuPW58fHJ9bnx8KG8oJ3Byb2JlIHRyYW5zcG9ydCAiJXMiIG9wZW5lZCcsZSksdC5zZW5kKFt7dHlwZToicGluZyIsZGF0YToicHJvYmUifV0pLHQub25jZSgicGFja2V0IiwoZnVuY3Rpb24ocil7aWYoIW4paWYoInBvbmciPT1yLnR5cGUmJiJwcm9iZSI9PXIuZGF0YSl7aWYobygncHJvYmUgdHJhbnNwb3J0ICIlcyIgcG9uZycsZSksaS51cGdyYWRpbmc9ITAsaS5lbWl0KCJ1cGdyYWRpbmciLHQpLCF0KXJldHVybjtkLnByaW9yV2Vic29ja2V0U3VjY2Vzcz0id2Vic29ja2V0Ij09dC5uYW1lLG8oJ3BhdXNpbmcgY3VycmVudCB0cmFuc3BvcnQgIiVzIicsaS50cmFuc3BvcnQubmFtZSksaS50cmFuc3BvcnQucGF1c2UoKGZ1bmN0aW9uKCl7bnx8ImNsb3NlZCIhPWkucmVhZHlTdGF0ZSYmKG8oImNoYW5naW5nIHRyYW5zcG9ydCBhbmQgc2VuZGluZyB1cGdyYWRlIHBhY2tldCIpLHAoKSxpLnNldFRyYW5zcG9ydCh0KSx0LnNlbmQoW3t0eXBlOiJ1cGdyYWRlIn1dKSxpLmVtaXQoInVwZ3JhZGUiLHQpLHQ9bnVsbCxpLnVwZ3JhZGluZz0hMSxpLmZsdXNoKCkpfSkpfWVsc2V7bygncHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkJyxlKTt2YXIgYT1uZXcgRXJyb3IoInByb2JlIGVycm9yIik7YS50cmFuc3BvcnQ9dC5uYW1lLGkuZW1pdCgidXBncmFkZUVycm9yIixhKX19KSkpfWZ1bmN0aW9uIGEoKXtufHwobj0hMCxwKCksdC5jbG9zZSgpLHQ9bnVsbCl9ZnVuY3Rpb24gcyhuKXt2YXIgcj1uZXcgRXJyb3IoInByb2JlIGVycm9yOiAiK24pO3IudHJhbnNwb3J0PXQubmFtZSxhKCksbygncHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkIGJlY2F1c2Ugb2YgZXJyb3I6ICVzJyxlLG4pLGkuZW1pdCgidXBncmFkZUVycm9yIixyKX1mdW5jdGlvbiBsKCl7cygidHJhbnNwb3J0IGNsb3NlZCIpfWZ1bmN0aW9uIGMoKXtzKCJzb2NrZXQgY2xvc2VkIil9ZnVuY3Rpb24gdShlKXt0JiZlLm5hbWUhPXQubmFtZSYmKG8oJyIlcyIgd29ya3MgLSBhYm9ydGluZyAiJXMiJyxlLm5hbWUsdC5uYW1lKSxhKCkpfWZ1bmN0aW9uIHAoKXt0LnJlbW92ZUxpc3RlbmVyKCJvcGVuIixyKSx0LnJlbW92ZUxpc3RlbmVyKCJlcnJvciIscyksdC5yZW1vdmVMaXN0ZW5lcigiY2xvc2UiLGwpLGkucmVtb3ZlTGlzdGVuZXIoImNsb3NlIixjKSxpLnJlbW92ZUxpc3RlbmVyKCJ1cGdyYWRpbmciLHUpfWQucHJpb3JXZWJzb2NrZXRTdWNjZXNzPSExLHQub25jZSgib3BlbiIsciksdC5vbmNlKCJlcnJvciIscyksdC5vbmNlKCJjbG9zZSIsbCksdGhpcy5vbmNlKCJjbG9zZSIsYyksdGhpcy5vbmNlKCJ1cGdyYWRpbmciLHUpLHQub3BlbigpfSxkLnByb3RvdHlwZS5vbk9wZW49ZnVuY3Rpb24oKXtpZihvKCJzb2NrZXQgb3BlbiIpLHRoaXMucmVhZHlTdGF0ZT0ib3BlbiIsZC5wcmlvcldlYnNvY2tldFN1Y2Nlc3M9IndlYnNvY2tldCI9PXRoaXMudHJhbnNwb3J0Lm5hbWUsdGhpcy5lbWl0KCJvcGVuIiksdGhpcy5mbHVzaCgpLCJvcGVuIj09dGhpcy5yZWFkeVN0YXRlJiZ0aGlzLnVwZ3JhZGUmJnRoaXMudHJhbnNwb3J0LnBhdXNlKXtvKCJzdGFydGluZyB1cGdyYWRlIHByb2JlcyIpO2Zvcih2YXIgZT0wLHQ9dGhpcy51cGdyYWRlcy5sZW5ndGg7ZTx0O2UrKyl0aGlzLnByb2JlKHRoaXMudXBncmFkZXNbZV0pfX0sZC5wcm90b3R5cGUub25QYWNrZXQ9ZnVuY3Rpb24oZSl7aWYoIm9wZW5pbmciPT10aGlzLnJlYWR5U3RhdGV8fCJvcGVuIj09dGhpcy5yZWFkeVN0YXRlKXN3aXRjaChvKCdzb2NrZXQgcmVjZWl2ZTogdHlwZSAiJXMiLCBkYXRhICIlcyInLGUudHlwZSxlLmRhdGEpLHRoaXMuZW1pdCgicGFja2V0IixlKSx0aGlzLmVtaXQoImhlYXJ0YmVhdCIpLGUudHlwZSl7Y2FzZSJvcGVuIjp0aGlzLm9uSGFuZHNoYWtlKGMoZS5kYXRhKSk7YnJlYWs7Y2FzZSJwb25nIjp0aGlzLnNldFBpbmcoKSx0aGlzLmVtaXQoInBvbmciKTticmVhaztjYXNlImVycm9yIjp2YXIgdD1uZXcgRXJyb3IoInNlcnZlciBlcnJvciIpO3QuY29kZT1lLmRhdGEsdGhpcy5vbkVycm9yKHQpO2JyZWFrO2Nhc2UibWVzc2FnZSI6dGhpcy5lbWl0KCJkYXRhIixlLmRhdGEpLHRoaXMuZW1pdCgibWVzc2FnZSIsZS5kYXRhKX1lbHNlIG8oJ3BhY2tldCByZWNlaXZlZCB3aXRoIHNvY2tldCByZWFkeVN0YXRlICIlcyInLHRoaXMucmVhZHlTdGF0ZSl9LGQucHJvdG90eXBlLm9uSGFuZHNoYWtlPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdCgiaGFuZHNoYWtlIixlKSx0aGlzLmlkPWUuc2lkLHRoaXMudHJhbnNwb3J0LnF1ZXJ5LnNpZD1lLnNpZCx0aGlzLnVwZ3JhZGVzPXRoaXMuZmlsdGVyVXBncmFkZXMoZS51cGdyYWRlcyksdGhpcy5waW5nSW50ZXJ2YWw9ZS5waW5nSW50ZXJ2YWwsdGhpcy5waW5nVGltZW91dD1lLnBpbmdUaW1lb3V0LHRoaXMub25PcGVuKCksImNsb3NlZCIhPXRoaXMucmVhZHlTdGF0ZSYmKHRoaXMuc2V0UGluZygpLHRoaXMucmVtb3ZlTGlzdGVuZXIoImhlYXJ0YmVhdCIsdGhpcy5vbkhlYXJ0YmVhdCksdGhpcy5vbigiaGVhcnRiZWF0Iix0aGlzLm9uSGVhcnRiZWF0KSl9LGQucHJvdG90eXBlLm9uSGVhcnRiZWF0PWZ1bmN0aW9uKGUpe2NsZWFyVGltZW91dCh0aGlzLnBpbmdUaW1lb3V0VGltZXIpO3ZhciB0PXRoaXM7dC5waW5nVGltZW91dFRpbWVyPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ImNsb3NlZCIhPXQucmVhZHlTdGF0ZSYmdC5vbkNsb3NlKCJwaW5nIHRpbWVvdXQiKX0pLGV8fHQucGluZ0ludGVydmFsK3QucGluZ1RpbWVvdXQpfSxkLnByb3RvdHlwZS5zZXRQaW5nPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztjbGVhclRpbWVvdXQoZS5waW5nSW50ZXJ2YWxUaW1lciksZS5waW5nSW50ZXJ2YWxUaW1lcj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe28oIndyaXRpbmcgcGluZyBwYWNrZXQgLSBleHBlY3RpbmcgcG9uZyB3aXRoaW4gJXNtcyIsZS5waW5nVGltZW91dCksZS5waW5nKCksZS5vbkhlYXJ0YmVhdChlLnBpbmdUaW1lb3V0KX0pLGUucGluZ0ludGVydmFsKX0sZC5wcm90b3R5cGUucGluZz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5zZW5kUGFja2V0KCJwaW5nIiwoZnVuY3Rpb24oKXtlLmVtaXQoInBpbmciKX0pKX0sZC5wcm90b3R5cGUub25EcmFpbj1mdW5jdGlvbigpe3RoaXMud3JpdGVCdWZmZXIuc3BsaWNlKDAsdGhpcy5wcmV2QnVmZmVyTGVuKSx0aGlzLnByZXZCdWZmZXJMZW49MCwwPT09dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGg/dGhpcy5lbWl0KCJkcmFpbiIpOnRoaXMuZmx1c2goKX0sZC5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXsiY2xvc2VkIiE9dGhpcy5yZWFkeVN0YXRlJiZ0aGlzLnRyYW5zcG9ydC53cml0YWJsZSYmIXRoaXMudXBncmFkaW5nJiZ0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCYmKG8oImZsdXNoaW5nICVkIHBhY2tldHMgaW4gc29ja2V0Iix0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCksdGhpcy50cmFuc3BvcnQuc2VuZCh0aGlzLndyaXRlQnVmZmVyKSx0aGlzLnByZXZCdWZmZXJMZW49dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGgsdGhpcy5lbWl0KCJmbHVzaCIpKX0sZC5wcm90b3R5cGUud3JpdGU9ZC5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuc2VuZFBhY2tldCgibWVzc2FnZSIsZSx0LG4pLHRoaXN9LGQucHJvdG90eXBlLnNlbmRQYWNrZXQ9ZnVuY3Rpb24oZSx0LG4saSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQmJihpPXQsdD12b2lkIDApLCJmdW5jdGlvbiI9PXR5cGVvZiBuJiYoaT1uLG49bnVsbCksImNsb3NpbmciIT10aGlzLnJlYWR5U3RhdGUmJiJjbG9zZWQiIT10aGlzLnJlYWR5U3RhdGUpeyhuPW58fHt9KS5jb21wcmVzcz0hMSE9PW4uY29tcHJlc3M7dmFyIHI9e3R5cGU6ZSxkYXRhOnQsb3B0aW9uczpufTt0aGlzLmVtaXQoInBhY2tldENyZWF0ZSIsciksdGhpcy53cml0ZUJ1ZmZlci5wdXNoKHIpLGkmJnRoaXMub25jZSgiZmx1c2giLGkpLHRoaXMuZmx1c2goKX19LGQucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7aWYoIm9wZW5pbmciPT10aGlzLnJlYWR5U3RhdGV8fCJvcGVuIj09dGhpcy5yZWFkeVN0YXRlKXt0aGlzLnJlYWR5U3RhdGU9ImNsb3NpbmciO3ZhciBlPXRoaXM7dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGg/dGhpcy5vbmNlKCJkcmFpbiIsKGZ1bmN0aW9uKCl7dGhpcy51cGdyYWRpbmc/aSgpOnQoKX0pKTp0aGlzLnVwZ3JhZGluZz9pKCk6dCgpfWZ1bmN0aW9uIHQoKXtlLm9uQ2xvc2UoImZvcmNlZCBjbG9zZSIpLG8oInNvY2tldCBjbG9zaW5nIC0gdGVsbGluZyB0cmFuc3BvcnQgdG8gY2xvc2UiKSxlLnRyYW5zcG9ydC5jbG9zZSgpfWZ1bmN0aW9uIG4oKXtlLnJlbW92ZUxpc3RlbmVyKCJ1cGdyYWRlIixuKSxlLnJlbW92ZUxpc3RlbmVyKCJ1cGdyYWRlRXJyb3IiLG4pLHQoKX1mdW5jdGlvbiBpKCl7ZS5vbmNlKCJ1cGdyYWRlIixuKSxlLm9uY2UoInVwZ3JhZGVFcnJvciIsbil9cmV0dXJuIHRoaXN9LGQucHJvdG90eXBlLm9uRXJyb3I9ZnVuY3Rpb24oZSl7bygic29ja2V0IGVycm9yICVqIixlKSxkLnByaW9yV2Vic29ja2V0U3VjY2Vzcz0hMSx0aGlzLmVtaXQoImVycm9yIixlKSx0aGlzLm9uQ2xvc2UoInRyYW5zcG9ydCBlcnJvciIsZSl9LGQucHJvdG90eXBlLm9uQ2xvc2U9ZnVuY3Rpb24oZSx0KXsib3BlbmluZyIhPXRoaXMucmVhZHlTdGF0ZSYmIm9wZW4iIT10aGlzLnJlYWR5U3RhdGUmJiJjbG9zaW5nIiE9dGhpcy5yZWFkeVN0YXRlfHwobygnc29ja2V0IGNsb3NlIHdpdGggcmVhc29uOiAiJXMiJyxlKSxjbGVhclRpbWVvdXQodGhpcy5waW5nSW50ZXJ2YWxUaW1lciksY2xlYXJUaW1lb3V0KHRoaXMucGluZ1RpbWVvdXRUaW1lciksdGhpcy50cmFuc3BvcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCJjbG9zZSIpLHRoaXMudHJhbnNwb3J0LmNsb3NlKCksdGhpcy50cmFuc3BvcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCksdGhpcy5yZWFkeVN0YXRlPSJjbG9zZWQiLHRoaXMuaWQ9bnVsbCx0aGlzLmVtaXQoImNsb3NlIixlLHQpLHRoaXMud3JpdGVCdWZmZXI9W10sdGhpcy5wcmV2QnVmZmVyTGVuPTApfSxkLnByb3RvdHlwZS5maWx0ZXJVcGdyYWRlcz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9W10sbj0wLGk9ZS5sZW5ndGg7bjxpO24rKyl+YSh0aGlzLnRyYW5zcG9ydHMsZVtuXSkmJnQucHVzaChlW25dKTtyZXR1cm4gdH19KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0seyIuL3RyYW5zcG9ydCI6MTMsIi4vdHJhbnNwb3J0cyI6MTQsImNvbXBvbmVudC1lbWl0dGVyIjo4LGRlYnVnOiJuOWkyZzYiLCJlbmdpbmUuaW8tcGFyc2VyIjoyMCxpbmRleG9mOjI0LHBhcnNlanNvbjoyNixwYXJzZXFzOjI3LHBhcnNldXJpOjI4fV0sMTM6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgaT1lKCJlbmdpbmUuaW8tcGFyc2VyIikscj1lKCJjb21wb25lbnQtZW1pdHRlciIpO2Z1bmN0aW9uIG8oZSl7dGhpcy5wYXRoPWUucGF0aCx0aGlzLmhvc3RuYW1lPWUuaG9zdG5hbWUsdGhpcy5wb3J0PWUucG9ydCx0aGlzLnNlY3VyZT1lLnNlY3VyZSx0aGlzLnF1ZXJ5PWUucXVlcnksdGhpcy50aW1lc3RhbXBQYXJhbT1lLnRpbWVzdGFtcFBhcmFtLHRoaXMudGltZXN0YW1wUmVxdWVzdHM9ZS50aW1lc3RhbXBSZXF1ZXN0cyx0aGlzLnJlYWR5U3RhdGU9IiIsdGhpcy5hZ2VudD1lLmFnZW50fHwhMSx0aGlzLnNvY2tldD1lLnNvY2tldCx0aGlzLmVuYWJsZXNYRFI9ZS5lbmFibGVzWERSLHRoaXMucGZ4PWUucGZ4LHRoaXMua2V5PWUua2V5LHRoaXMucGFzc3BocmFzZT1lLnBhc3NwaHJhc2UsdGhpcy5jZXJ0PWUuY2VydCx0aGlzLmNhPWUuY2EsdGhpcy5jaXBoZXJzPWUuY2lwaGVycyx0aGlzLnJlamVjdFVuYXV0aG9yaXplZD1lLnJlamVjdFVuYXV0aG9yaXplZCx0aGlzLmV4dHJhSGVhZGVycz1lLmV4dHJhSGVhZGVyc310LmV4cG9ydHM9byxyKG8ucHJvdG90eXBlKSxvLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUsdCl7dmFyIG49bmV3IEVycm9yKGUpO3JldHVybiBuLnR5cGU9IlRyYW5zcG9ydEVycm9yIixuLmRlc2NyaXB0aW9uPXQsdGhpcy5lbWl0KCJlcnJvciIsbiksdGhpc30sby5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3JldHVybiJjbG9zZWQiIT10aGlzLnJlYWR5U3RhdGUmJiIiIT10aGlzLnJlYWR5U3RhdGV8fCh0aGlzLnJlYWR5U3RhdGU9Im9wZW5pbmciLHRoaXMuZG9PcGVuKCkpLHRoaXN9LG8ucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7cmV0dXJuIm9wZW5pbmciIT10aGlzLnJlYWR5U3RhdGUmJiJvcGVuIiE9dGhpcy5yZWFkeVN0YXRlfHwodGhpcy5kb0Nsb3NlKCksdGhpcy5vbkNsb3NlKCkpLHRoaXN9LG8ucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oZSl7aWYoIm9wZW4iIT10aGlzLnJlYWR5U3RhdGUpdGhyb3cgbmV3IEVycm9yKCJUcmFuc3BvcnQgbm90IG9wZW4iKTt0aGlzLndyaXRlKGUpfSxvLnByb3RvdHlwZS5vbk9wZW49ZnVuY3Rpb24oKXt0aGlzLnJlYWR5U3RhdGU9Im9wZW4iLHRoaXMud3JpdGFibGU9ITAsdGhpcy5lbWl0KCJvcGVuIil9LG8ucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt2YXIgdD1pLmRlY29kZVBhY2tldChlLHRoaXMuc29ja2V0LmJpbmFyeVR5cGUpO3RoaXMub25QYWNrZXQodCl9LG8ucHJvdG90eXBlLm9uUGFja2V0PWZ1bmN0aW9uKGUpe3RoaXMuZW1pdCgicGFja2V0IixlKX0sby5wcm90b3R5cGUub25DbG9zZT1mdW5jdGlvbigpe3RoaXMucmVhZHlTdGF0ZT0iY2xvc2VkIix0aGlzLmVtaXQoImNsb3NlIil9fSx7ImNvbXBvbmVudC1lbWl0dGVyIjo4LCJlbmdpbmUuaW8tcGFyc2VyIjoyMH1dLDE0OltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKHQpe3ZhciBpPWUoInhtbGh0dHByZXF1ZXN0LXNzbCIpLHI9ZSgiLi9wb2xsaW5nLXhociIpLG89ZSgiLi9wb2xsaW5nLWpzb25wIiksYT1lKCIuL3dlYnNvY2tldCIpO24ucG9sbGluZz1mdW5jdGlvbihlKXt2YXIgbj0hMSxhPSExLHM9ITEhPT1lLmpzb25wO2lmKHQubG9jYXRpb24pe3ZhciBsPSJodHRwczoiPT1sb2NhdGlvbi5wcm90b2NvbCxjPWxvY2F0aW9uLnBvcnQ7Y3x8KGM9bD80NDM6ODApLG49ZS5ob3N0bmFtZSE9bG9jYXRpb24uaG9zdG5hbWV8fGMhPWUucG9ydCxhPWUuc2VjdXJlIT1sfWlmKGUueGRvbWFpbj1uLGUueHNjaGVtZT1hLCJvcGVuImluIG5ldyBpKGUpJiYhZS5mb3JjZUpTT05QKXJldHVybiBuZXcgcihlKTtpZighcyl0aHJvdyBuZXcgRXJyb3IoIkpTT05QIGRpc2FibGVkIik7cmV0dXJuIG5ldyBvKGUpfSxuLndlYnNvY2tldD1hfSkuY2FsbCh0aGlzLCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fSl9LHsiLi9wb2xsaW5nLWpzb25wIjoxNSwiLi9wb2xsaW5nLXhociI6MTYsIi4vd2Vic29ja2V0IjoxOCwieG1saHR0cHJlcXVlc3Qtc3NsIjoxOX1dLDE1OltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKG4pe3ZhciBpPWUoIi4vcG9sbGluZyIpLHI9ZSgiY29tcG9uZW50LWluaGVyaXQiKTt0LmV4cG9ydHM9Yzt2YXIgbyxhPS9cbi9nLHM9L1xcbi9nO2Z1bmN0aW9uIGwoKXt9ZnVuY3Rpb24gYyhlKXtpLmNhbGwodGhpcyxlKSx0aGlzLnF1ZXJ5PXRoaXMucXVlcnl8fHt9LG98fChuLl9fX2Vpb3x8KG4uX19fZWlvPVtdKSxvPW4uX19fZWlvKSx0aGlzLmluZGV4PW8ubGVuZ3RoO3ZhciB0PXRoaXM7by5wdXNoKChmdW5jdGlvbihlKXt0Lm9uRGF0YShlKX0pKSx0aGlzLnF1ZXJ5Lmo9dGhpcy5pbmRleCxuLmRvY3VtZW50JiZuLmFkZEV2ZW50TGlzdGVuZXImJm4uYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIiwoZnVuY3Rpb24oKXt0LnNjcmlwdCYmKHQuc2NyaXB0Lm9uZXJyb3I9bCl9KSwhMSl9cihjLGkpLGMucHJvdG90eXBlLnN1cHBvcnRzQmluYXJ5PSExLGMucHJvdG90eXBlLmRvQ2xvc2U9ZnVuY3Rpb24oKXt0aGlzLnNjcmlwdCYmKHRoaXMuc2NyaXB0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5zY3JpcHQpLHRoaXMuc2NyaXB0PW51bGwpLHRoaXMuZm9ybSYmKHRoaXMuZm9ybS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuZm9ybSksdGhpcy5mb3JtPW51bGwsdGhpcy5pZnJhbWU9bnVsbCksaS5wcm90b3R5cGUuZG9DbG9zZS5jYWxsKHRoaXMpfSxjLnByb3RvdHlwZS5kb1BvbGw9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7dGhpcy5zY3JpcHQmJih0aGlzLnNjcmlwdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuc2NyaXB0KSx0aGlzLnNjcmlwdD1udWxsKSx0LmFzeW5jPSEwLHQuc3JjPXRoaXMudXJpKCksdC5vbmVycm9yPWZ1bmN0aW9uKHQpe2Uub25FcnJvcigianNvbnAgcG9sbCBlcnJvciIsdCl9O3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTtuP24ucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodCxuKTooZG9jdW1lbnQuaGVhZHx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQodCksdGhpcy5zY3JpcHQ9dCwidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL2dlY2tvL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSl9KSwxMDApfSxjLnByb3RvdHlwZS5kb1dyaXRlPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztpZighdGhpcy5mb3JtKXt2YXIgaSxyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImZvcm0iKSxvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRleHRhcmVhIiksbD10aGlzLmlmcmFtZUlkPSJlaW9faWZyYW1lXyIrdGhpcy5pbmRleDtyLmNsYXNzTmFtZT0ic29ja2V0aW8iLHIuc3R5bGUucG9zaXRpb249ImFic29sdXRlIixyLnN0eWxlLnRvcD0iLTEwMDBweCIsci5zdHlsZS5sZWZ0PSItMTAwMHB4IixyLnRhcmdldD1sLHIubWV0aG9kPSJQT1NUIixyLnNldEF0dHJpYnV0ZSgiYWNjZXB0LWNoYXJzZXQiLCJ1dGYtOCIpLG8ubmFtZT0iZCIsci5hcHBlbmRDaGlsZChvKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHIpLHRoaXMuZm9ybT1yLHRoaXMuYXJlYT1vfWZ1bmN0aW9uIGMoKXt1KCksdCgpfWZ1bmN0aW9uIHUoKXtpZihuLmlmcmFtZSl0cnl7bi5mb3JtLnJlbW92ZUNoaWxkKG4uaWZyYW1lKX1jYXRjaChlKXtuLm9uRXJyb3IoImpzb25wIHBvbGxpbmcgaWZyYW1lIHJlbW92YWwgZXJyb3IiLGUpfXRyeXt2YXIgZT0nPGlmcmFtZSBzcmM9ImphdmFzY3JpcHQ6MCIgbmFtZT0iJytuLmlmcmFtZUlkKyciPic7aT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUpfWNhdGNoKGUpeyhpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpKS5uYW1lPW4uaWZyYW1lSWQsaS5zcmM9ImphdmFzY3JpcHQ6MCJ9aS5pZD1uLmlmcmFtZUlkLG4uZm9ybS5hcHBlbmRDaGlsZChpKSxuLmlmcmFtZT1pfXRoaXMuZm9ybS5hY3Rpb249dGhpcy51cmkoKSx1KCksZT1lLnJlcGxhY2UocywiXFxcbiIpLHRoaXMuYXJlYS52YWx1ZT1lLnJlcGxhY2UoYSwiXFxuIik7dHJ5e3RoaXMuZm9ybS5zdWJtaXQoKX1jYXRjaChlKXt9dGhpcy5pZnJhbWUuYXR0YWNoRXZlbnQ/dGhpcy5pZnJhbWUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImNvbXBsZXRlIj09bi5pZnJhbWUucmVhZHlTdGF0ZSYmYygpfTp0aGlzLmlmcmFtZS5vbmxvYWQ9Y319KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0seyIuL3BvbGxpbmciOjE3LCJjb21wb25lbnQtaW5oZXJpdCI6OX1dLDE2OltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKG4pe3ZhciBpPWUoInhtbGh0dHByZXF1ZXN0LXNzbCIpLHI9ZSgiLi9wb2xsaW5nIiksbz1lKCJjb21wb25lbnQtZW1pdHRlciIpLGE9ZSgiY29tcG9uZW50LWluaGVyaXQiKSxzPWUoImRlYnVnIikoImVuZ2luZS5pby1jbGllbnQ6cG9sbGluZy14aHIiKTtmdW5jdGlvbiBsKCl7fWZ1bmN0aW9uIGMoZSl7aWYoci5jYWxsKHRoaXMsZSksbi5sb2NhdGlvbil7dmFyIHQ9Imh0dHBzOiI9PWxvY2F0aW9uLnByb3RvY29sLGk9bG9jYXRpb24ucG9ydDtpfHwoaT10PzQ0Mzo4MCksdGhpcy54ZD1lLmhvc3RuYW1lIT1uLmxvY2F0aW9uLmhvc3RuYW1lfHxpIT1lLnBvcnQsdGhpcy54cz1lLnNlY3VyZSE9dH1lbHNlIHRoaXMuZXh0cmFIZWFkZXJzPWUuZXh0cmFIZWFkZXJzfWZ1bmN0aW9uIHUoZSl7dGhpcy5tZXRob2Q9ZS5tZXRob2R8fCJHRVQiLHRoaXMudXJpPWUudXJpLHRoaXMueGQ9ISFlLnhkLHRoaXMueHM9ISFlLnhzLHRoaXMuYXN5bmM9ITEhPT1lLmFzeW5jLHRoaXMuZGF0YT1udWxsIT1lLmRhdGE/ZS5kYXRhOm51bGwsdGhpcy5hZ2VudD1lLmFnZW50LHRoaXMuaXNCaW5hcnk9ZS5pc0JpbmFyeSx0aGlzLnN1cHBvcnRzQmluYXJ5PWUuc3VwcG9ydHNCaW5hcnksdGhpcy5lbmFibGVzWERSPWUuZW5hYmxlc1hEUix0aGlzLnBmeD1lLnBmeCx0aGlzLmtleT1lLmtleSx0aGlzLnBhc3NwaHJhc2U9ZS5wYXNzcGhyYXNlLHRoaXMuY2VydD1lLmNlcnQsdGhpcy5jYT1lLmNhLHRoaXMuY2lwaGVycz1lLmNpcGhlcnMsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9ZS5yZWplY3RVbmF1dGhvcml6ZWQsdGhpcy5leHRyYUhlYWRlcnM9ZS5leHRyYUhlYWRlcnMsdGhpcy5jcmVhdGUoKX1mdW5jdGlvbiBkKCl7Zm9yKHZhciBlIGluIHUucmVxdWVzdHMpdS5yZXF1ZXN0cy5oYXNPd25Qcm9wZXJ0eShlKSYmdS5yZXF1ZXN0c1tlXS5hYm9ydCgpfXQuZXhwb3J0cz1jLHQuZXhwb3J0cy5SZXF1ZXN0PXUsYShjLHIpLGMucHJvdG90eXBlLnN1cHBvcnRzQmluYXJ5PSEwLGMucHJvdG90eXBlLnJlcXVlc3Q9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9ZXx8e30pLnVyaT10aGlzLnVyaSgpLGUueGQ9dGhpcy54ZCxlLnhzPXRoaXMueHMsZS5hZ2VudD10aGlzLmFnZW50fHwhMSxlLnN1cHBvcnRzQmluYXJ5PXRoaXMuc3VwcG9ydHNCaW5hcnksZS5lbmFibGVzWERSPXRoaXMuZW5hYmxlc1hEUixlLnBmeD10aGlzLnBmeCxlLmtleT10aGlzLmtleSxlLnBhc3NwaHJhc2U9dGhpcy5wYXNzcGhyYXNlLGUuY2VydD10aGlzLmNlcnQsZS5jYT10aGlzLmNhLGUuY2lwaGVycz10aGlzLmNpcGhlcnMsZS5yZWplY3RVbmF1dGhvcml6ZWQ9dGhpcy5yZWplY3RVbmF1dGhvcml6ZWQsZS5leHRyYUhlYWRlcnM9dGhpcy5leHRyYUhlYWRlcnMsbmV3IHUoZSl9LGMucHJvdG90eXBlLmRvV3JpdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj0ic3RyaW5nIiE9dHlwZW9mIGUmJnZvaWQgMCE9PWUsaT10aGlzLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsZGF0YTplLGlzQmluYXJ5Om59KSxyPXRoaXM7aS5vbigic3VjY2VzcyIsdCksaS5vbigiZXJyb3IiLChmdW5jdGlvbihlKXtyLm9uRXJyb3IoInhociBwb3N0IGVycm9yIixlKX0pKSx0aGlzLnNlbmRYaHI9aX0sYy5wcm90b3R5cGUuZG9Qb2xsPWZ1bmN0aW9uKCl7cygieGhyIHBvbGwiKTt2YXIgZT10aGlzLnJlcXVlc3QoKSx0PXRoaXM7ZS5vbigiZGF0YSIsKGZ1bmN0aW9uKGUpe3Qub25EYXRhKGUpfSkpLGUub24oImVycm9yIiwoZnVuY3Rpb24oZSl7dC5vbkVycm9yKCJ4aHIgcG9sbCBlcnJvciIsZSl9KSksdGhpcy5wb2xsWGhyPWV9LG8odS5wcm90b3R5cGUpLHUucHJvdG90eXBlLmNyZWF0ZT1mdW5jdGlvbigpe3ZhciBlPXthZ2VudDp0aGlzLmFnZW50LHhkb21haW46dGhpcy54ZCx4c2NoZW1lOnRoaXMueHMsZW5hYmxlc1hEUjp0aGlzLmVuYWJsZXNYRFJ9O2UucGZ4PXRoaXMucGZ4LGUua2V5PXRoaXMua2V5LGUucGFzc3BocmFzZT10aGlzLnBhc3NwaHJhc2UsZS5jZXJ0PXRoaXMuY2VydCxlLmNhPXRoaXMuY2EsZS5jaXBoZXJzPXRoaXMuY2lwaGVycyxlLnJlamVjdFVuYXV0aG9yaXplZD10aGlzLnJlamVjdFVuYXV0aG9yaXplZDt2YXIgdD10aGlzLnhocj1uZXcgaShlKSxyPXRoaXM7dHJ5e3MoInhociBvcGVuICVzOiAlcyIsdGhpcy5tZXRob2QsdGhpcy51cmkpLHQub3Blbih0aGlzLm1ldGhvZCx0aGlzLnVyaSx0aGlzLmFzeW5jKTt0cnl7aWYodGhpcy5leHRyYUhlYWRlcnMpZm9yKHZhciBvIGluIHQuc2V0RGlzYWJsZUhlYWRlckNoZWNrKCEwKSx0aGlzLmV4dHJhSGVhZGVycyl0aGlzLmV4dHJhSGVhZGVycy5oYXNPd25Qcm9wZXJ0eShvKSYmdC5zZXRSZXF1ZXN0SGVhZGVyKG8sdGhpcy5leHRyYUhlYWRlcnNbb10pfWNhdGNoKGUpe31pZih0aGlzLnN1cHBvcnRzQmluYXJ5JiYodC5yZXNwb25zZVR5cGU9ImFycmF5YnVmZmVyIiksIlBPU1QiPT10aGlzLm1ldGhvZCl0cnl7dGhpcy5pc0JpbmFyeT90LnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtdHlwZSIsImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIpOnQuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC10eXBlIiwidGV4dC9wbGFpbjtjaGFyc2V0PVVURi04Iil9Y2F0Y2goZSl7fSJ3aXRoQ3JlZGVudGlhbHMiaW4gdCYmKHQud2l0aENyZWRlbnRpYWxzPSEwKSx0aGlzLmhhc1hEUigpPyh0Lm9ubG9hZD1mdW5jdGlvbigpe3Iub25Mb2FkKCl9LHQub25lcnJvcj1mdW5jdGlvbigpe3Iub25FcnJvcih0LnJlc3BvbnNlVGV4dCl9KTp0Lm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PXQucmVhZHlTdGF0ZSYmKDIwMD09dC5zdGF0dXN8fDEyMjM9PXQuc3RhdHVzP3Iub25Mb2FkKCk6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtyLm9uRXJyb3IodC5zdGF0dXMpfSksMCkpfSxzKCJ4aHIgZGF0YSAlcyIsdGhpcy5kYXRhKSx0LnNlbmQodGhpcy5kYXRhKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Iub25FcnJvcihlKX0pLDApfW4uZG9jdW1lbnQmJih0aGlzLmluZGV4PXUucmVxdWVzdHNDb3VudCsrLHUucmVxdWVzdHNbdGhpcy5pbmRleF09dGhpcyl9LHUucHJvdG90eXBlLm9uU3VjY2Vzcz1mdW5jdGlvbigpe3RoaXMuZW1pdCgic3VjY2VzcyIpLHRoaXMuY2xlYW51cCgpfSx1LnByb3RvdHlwZS5vbkRhdGE9ZnVuY3Rpb24oZSl7dGhpcy5lbWl0KCJkYXRhIixlKSx0aGlzLm9uU3VjY2VzcygpfSx1LnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdCgiZXJyb3IiLGUpLHRoaXMuY2xlYW51cCghMCl9LHUucHJvdG90eXBlLmNsZWFudXA9ZnVuY3Rpb24oZSl7aWYodm9pZCAwIT09dGhpcy54aHImJm51bGwhPT10aGlzLnhocil7aWYodGhpcy5oYXNYRFIoKT90aGlzLnhoci5vbmxvYWQ9dGhpcy54aHIub25lcnJvcj1sOnRoaXMueGhyLm9ucmVhZHlzdGF0ZWNoYW5nZT1sLGUpdHJ5e3RoaXMueGhyLmFib3J0KCl9Y2F0Y2goZSl7fW4uZG9jdW1lbnQmJmRlbGV0ZSB1LnJlcXVlc3RzW3RoaXMuaW5kZXhdLHRoaXMueGhyPW51bGx9fSx1LnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oKXt2YXIgZTt0cnl7dmFyIHQ7dHJ5e3Q9dGhpcy54aHIuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpLnNwbGl0KCI7IilbMF19Y2F0Y2goZSl7fWlmKCJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iPT09dCllPXRoaXMueGhyLnJlc3BvbnNlO2Vsc2UgaWYodGhpcy5zdXBwb3J0c0JpbmFyeSl0cnl7ZT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsbmV3IFVpbnQ4QXJyYXkodGhpcy54aHIucmVzcG9uc2UpKX1jYXRjaCh0KXtmb3IodmFyIG49bmV3IFVpbnQ4QXJyYXkodGhpcy54aHIucmVzcG9uc2UpLGk9W10scj0wLG89bi5sZW5ndGg7cjxvO3IrKylpLnB1c2gobltyXSk7ZT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsaSl9ZWxzZSBlPXRoaXMueGhyLnJlc3BvbnNlVGV4dH1jYXRjaChlKXt0aGlzLm9uRXJyb3IoZSl9bnVsbCE9ZSYmdGhpcy5vbkRhdGEoZSl9LHUucHJvdG90eXBlLmhhc1hEUj1mdW5jdGlvbigpe3JldHVybiB2b2lkIDAhPT1uLlhEb21haW5SZXF1ZXN0JiYhdGhpcy54cyYmdGhpcy5lbmFibGVzWERSfSx1LnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuY2xlYW51cCgpfSxuLmRvY3VtZW50JiYodS5yZXF1ZXN0c0NvdW50PTAsdS5yZXF1ZXN0cz17fSxuLmF0dGFjaEV2ZW50P24uYXR0YWNoRXZlbnQoIm9udW5sb2FkIixkKTpuLmFkZEV2ZW50TGlzdGVuZXImJm4uYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIixkLCExKSl9KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0seyIuL3BvbGxpbmciOjE3LCJjb21wb25lbnQtZW1pdHRlciI6OCwiY29tcG9uZW50LWluaGVyaXQiOjksZGVidWc6Im45aTJnNiIsInhtbGh0dHByZXF1ZXN0LXNzbCI6MTl9XSwxNzpbZnVuY3Rpb24oZSx0LG4pe3ZhciBpPWUoIi4uL3RyYW5zcG9ydCIpLHI9ZSgicGFyc2VxcyIpLG89ZSgiZW5naW5lLmlvLXBhcnNlciIpLGE9ZSgiY29tcG9uZW50LWluaGVyaXQiKSxzPWUoInllYXN0IiksbD1lKCJkZWJ1ZyIpKCJlbmdpbmUuaW8tY2xpZW50OnBvbGxpbmciKTt0LmV4cG9ydHM9dTt2YXIgYz1udWxsIT1uZXcoZSgieG1saHR0cHJlcXVlc3Qtc3NsIikpKHt4ZG9tYWluOiExfSkucmVzcG9uc2VUeXBlO2Z1bmN0aW9uIHUoZSl7dmFyIHQ9ZSYmZS5mb3JjZUJhc2U2NDtjJiYhdHx8KHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLGkuY2FsbCh0aGlzLGUpfWEodSxpKSx1LnByb3RvdHlwZS5uYW1lPSJwb2xsaW5nIix1LnByb3RvdHlwZS5kb09wZW49ZnVuY3Rpb24oKXt0aGlzLnBvbGwoKX0sdS5wcm90b3R5cGUucGF1c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztmdW5jdGlvbiBuKCl7bCgicGF1c2VkIiksdC5yZWFkeVN0YXRlPSJwYXVzZWQiLGUoKX1pZih0aGlzLnJlYWR5U3RhdGU9InBhdXNpbmciLHRoaXMucG9sbGluZ3x8IXRoaXMud3JpdGFibGUpe3ZhciBpPTA7dGhpcy5wb2xsaW5nJiYobCgid2UgYXJlIGN1cnJlbnRseSBwb2xsaW5nIC0gd2FpdGluZyB0byBwYXVzZSIpLGkrKyx0aGlzLm9uY2UoInBvbGxDb21wbGV0ZSIsKGZ1bmN0aW9uKCl7bCgicHJlLXBhdXNlIHBvbGxpbmcgY29tcGxldGUiKSwtLWl8fG4oKX0pKSksdGhpcy53cml0YWJsZXx8KGwoIndlIGFyZSBjdXJyZW50bHkgd3JpdGluZyAtIHdhaXRpbmcgdG8gcGF1c2UiKSxpKyssdGhpcy5vbmNlKCJkcmFpbiIsKGZ1bmN0aW9uKCl7bCgicHJlLXBhdXNlIHdyaXRpbmcgY29tcGxldGUiKSwtLWl8fG4oKX0pKSl9ZWxzZSBuKCl9LHUucHJvdG90eXBlLnBvbGw9ZnVuY3Rpb24oKXtsKCJwb2xsaW5nIiksdGhpcy5wb2xsaW5nPSEwLHRoaXMuZG9Qb2xsKCksdGhpcy5lbWl0KCJwb2xsIil9LHUucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO2woInBvbGxpbmcgZ290IGRhdGEgJXMiLGUpLG8uZGVjb2RlUGF5bG9hZChlLHRoaXMuc29ja2V0LmJpbmFyeVR5cGUsKGZ1bmN0aW9uKGUsbixpKXtpZigib3BlbmluZyI9PXQucmVhZHlTdGF0ZSYmdC5vbk9wZW4oKSwiY2xvc2UiPT1lLnR5cGUpcmV0dXJuIHQub25DbG9zZSgpLCExO3Qub25QYWNrZXQoZSl9KSksImNsb3NlZCIhPXRoaXMucmVhZHlTdGF0ZSYmKHRoaXMucG9sbGluZz0hMSx0aGlzLmVtaXQoInBvbGxDb21wbGV0ZSIpLCJvcGVuIj09dGhpcy5yZWFkeVN0YXRlP3RoaXMucG9sbCgpOmwoJ2lnbm9yaW5nIHBvbGwgLSB0cmFuc3BvcnQgc3RhdGUgIiVzIicsdGhpcy5yZWFkeVN0YXRlKSl9LHUucHJvdG90eXBlLmRvQ2xvc2U9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2Z1bmN0aW9uIHQoKXtsKCJ3cml0aW5nIGNsb3NlIHBhY2tldCIpLGUud3JpdGUoW3t0eXBlOiJjbG9zZSJ9XSl9Im9wZW4iPT10aGlzLnJlYWR5U3RhdGU/KGwoInRyYW5zcG9ydCBvcGVuIC0gY2xvc2luZyIpLHQoKSk6KGwoInRyYW5zcG9ydCBub3Qgb3BlbiAtIGRlZmVycmluZyBjbG9zZSIpLHRoaXMub25jZSgib3BlbiIsdCkpfSx1LnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3RoaXMud3JpdGFibGU9ITE7dmFyIG49ZnVuY3Rpb24oKXt0LndyaXRhYmxlPSEwLHQuZW1pdCgiZHJhaW4iKX07dD10aGlzLG8uZW5jb2RlUGF5bG9hZChlLHRoaXMuc3VwcG9ydHNCaW5hcnksKGZ1bmN0aW9uKGUpe3QuZG9Xcml0ZShlLG4pfSkpfSx1LnByb3RvdHlwZS51cmk9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLnF1ZXJ5fHx7fSx0PXRoaXMuc2VjdXJlPyJodHRwcyI6Imh0dHAiLG49IiI7cmV0dXJuITEhPT10aGlzLnRpbWVzdGFtcFJlcXVlc3RzJiYoZVt0aGlzLnRpbWVzdGFtcFBhcmFtXT1zKCkpLHRoaXMuc3VwcG9ydHNCaW5hcnl8fGUuc2lkfHwoZS5iNjQ9MSksZT1yLmVuY29kZShlKSx0aGlzLnBvcnQmJigiaHR0cHMiPT10JiY0NDMhPXRoaXMucG9ydHx8Imh0dHAiPT10JiY4MCE9dGhpcy5wb3J0KSYmKG49IjoiK3RoaXMucG9ydCksZS5sZW5ndGgmJihlPSI/IitlKSx0KyI6Ly8iKygtMSE9PXRoaXMuaG9zdG5hbWUuaW5kZXhPZigiOiIpPyJbIit0aGlzLmhvc3RuYW1lKyJdIjp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfX0seyIuLi90cmFuc3BvcnQiOjEzLCJjb21wb25lbnQtaW5oZXJpdCI6OSxkZWJ1ZzoibjlpMmc2IiwiZW5naW5lLmlvLXBhcnNlciI6MjAscGFyc2VxczoyNywieG1saHR0cHJlcXVlc3Qtc3NsIjoxOSx5ZWFzdDozMH1dLDE4OltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKG4pe3ZhciBpPWUoIi4uL3RyYW5zcG9ydCIpLHI9ZSgiZW5naW5lLmlvLXBhcnNlciIpLG89ZSgicGFyc2VxcyIpLGE9ZSgiY29tcG9uZW50LWluaGVyaXQiKSxzPWUoInllYXN0IiksbD1lKCJkZWJ1ZyIpKCJlbmdpbmUuaW8tY2xpZW50OndlYnNvY2tldCIpLGM9bi5XZWJTb2NrZXR8fG4uTW96V2ViU29ja2V0LHU9YztpZighdSYmInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3cpdHJ5e3U9ZSgid3MiKX1jYXRjaChlKXt9ZnVuY3Rpb24gZChlKXtlJiZlLmZvcmNlQmFzZTY0JiYodGhpcy5zdXBwb3J0c0JpbmFyeT0hMSksdGhpcy5wZXJNZXNzYWdlRGVmbGF0ZT1lLnBlck1lc3NhZ2VEZWZsYXRlLGkuY2FsbCh0aGlzLGUpfXQuZXhwb3J0cz1kLGEoZCxpKSxkLnByb3RvdHlwZS5uYW1lPSJ3ZWJzb2NrZXQiLGQucHJvdG90eXBlLnN1cHBvcnRzQmluYXJ5PSEwLGQucHJvdG90eXBlLmRvT3Blbj1mdW5jdGlvbigpe2lmKHRoaXMuY2hlY2soKSl7dmFyIGU9dGhpcy51cmkoKSx0PXthZ2VudDp0aGlzLmFnZW50LHBlck1lc3NhZ2VEZWZsYXRlOnRoaXMucGVyTWVzc2FnZURlZmxhdGV9O3QucGZ4PXRoaXMucGZ4LHQua2V5PXRoaXMua2V5LHQucGFzc3BocmFzZT10aGlzLnBhc3NwaHJhc2UsdC5jZXJ0PXRoaXMuY2VydCx0LmNhPXRoaXMuY2EsdC5jaXBoZXJzPXRoaXMuY2lwaGVycyx0LnJlamVjdFVuYXV0aG9yaXplZD10aGlzLnJlamVjdFVuYXV0aG9yaXplZCx0aGlzLmV4dHJhSGVhZGVycyYmKHQuaGVhZGVycz10aGlzLmV4dHJhSGVhZGVycyksdGhpcy53cz1jP25ldyB1KGUpOm5ldyB1KGUsdm9pZCAwLHQpLHZvaWQgMD09PXRoaXMud3MuYmluYXJ5VHlwZSYmKHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLHRoaXMud3Muc3VwcG9ydHMmJnRoaXMud3Muc3VwcG9ydHMuYmluYXJ5Pyh0aGlzLnN1cHBvcnRzQmluYXJ5PSEwLHRoaXMud3MuYmluYXJ5VHlwZT0iYnVmZmVyIik6dGhpcy53cy5iaW5hcnlUeXBlPSJhcnJheWJ1ZmZlciIsdGhpcy5hZGRFdmVudExpc3RlbmVycygpfX0sZC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMud3Mub25vcGVuPWZ1bmN0aW9uKCl7ZS5vbk9wZW4oKX0sdGhpcy53cy5vbmNsb3NlPWZ1bmN0aW9uKCl7ZS5vbkNsb3NlKCl9LHRoaXMud3Mub25tZXNzYWdlPWZ1bmN0aW9uKHQpe2Uub25EYXRhKHQuZGF0YSl9LHRoaXMud3Mub25lcnJvcj1mdW5jdGlvbih0KXtlLm9uRXJyb3IoIndlYnNvY2tldCBlcnJvciIsdCl9fSwidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL2lQYWR8aVBob25lfGlQb2QvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpJiYoZC5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLnByb3RvdHlwZS5vbkRhdGEuY2FsbCh0LGUpfSksMCl9KSxkLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3RoaXMud3JpdGFibGU9ITE7Zm9yKHZhciBpPWUubGVuZ3RoLG89MCxhPWk7bzxhO28rKykhZnVuY3Rpb24oZSl7ci5lbmNvZGVQYWNrZXQoZSx0LnN1cHBvcnRzQmluYXJ5LChmdW5jdGlvbihyKXtpZighYyl7dmFyIG89e307ZS5vcHRpb25zJiYoby5jb21wcmVzcz1lLm9wdGlvbnMuY29tcHJlc3MpLHQucGVyTWVzc2FnZURlZmxhdGUmJigic3RyaW5nIj09dHlwZW9mIHI/bi5CdWZmZXIuYnl0ZUxlbmd0aChyKTpyLmxlbmd0aCk8dC5wZXJNZXNzYWdlRGVmbGF0ZS50aHJlc2hvbGQmJihvLmNvbXByZXNzPSExKX10cnl7Yz90LndzLnNlbmQocik6dC53cy5zZW5kKHIsbyl9Y2F0Y2goZSl7bCgid2Vic29ja2V0IGNsb3NlZCBiZWZvcmUgb25jbG9zZSBldmVudCIpfS0taXx8KHQuZW1pdCgiZmx1c2giKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Qud3JpdGFibGU9ITAsdC5lbWl0KCJkcmFpbiIpfSksMCkpfSkpfShlW29dKX0sZC5wcm90b3R5cGUub25DbG9zZT1mdW5jdGlvbigpe2kucHJvdG90eXBlLm9uQ2xvc2UuY2FsbCh0aGlzKX0sZC5wcm90b3R5cGUuZG9DbG9zZT1mdW5jdGlvbigpe3ZvaWQgMCE9PXRoaXMud3MmJnRoaXMud3MuY2xvc2UoKX0sZC5wcm90b3R5cGUudXJpPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5xdWVyeXx8e30sdD10aGlzLnNlY3VyZT8id3NzIjoid3MiLG49IiI7cmV0dXJuIHRoaXMucG9ydCYmKCJ3c3MiPT10JiY0NDMhPXRoaXMucG9ydHx8IndzIj09dCYmODAhPXRoaXMucG9ydCkmJihuPSI6Iit0aGlzLnBvcnQpLHRoaXMudGltZXN0YW1wUmVxdWVzdHMmJihlW3RoaXMudGltZXN0YW1wUGFyYW1dPXMoKSksdGhpcy5zdXBwb3J0c0JpbmFyeXx8KGUuYjY0PTEpLChlPW8uZW5jb2RlKGUpKS5sZW5ndGgmJihlPSI/IitlKSx0KyI6Ly8iKygtMSE9PXRoaXMuaG9zdG5hbWUuaW5kZXhPZigiOiIpPyJbIit0aGlzLmhvc3RuYW1lKyJdIjp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfSxkLnByb3RvdHlwZS5jaGVjaz1mdW5jdGlvbigpe3JldHVybiEoIXV8fCJfX2luaXRpYWxpemUiaW4gdSYmdGhpcy5uYW1lPT09ZC5wcm90b3R5cGUubmFtZSl9fSkuY2FsbCh0aGlzLCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fSl9LHsiLi4vdHJhbnNwb3J0IjoxMywiY29tcG9uZW50LWluaGVyaXQiOjksZGVidWc6Im45aTJnNiIsImVuZ2luZS5pby1wYXJzZXIiOjIwLHBhcnNlcXM6Mjcsd3M6Nyx5ZWFzdDozMH1dLDE5OltmdW5jdGlvbihlLHQsbil7dmFyIGk9ZSgiaGFzLWNvcnMiKTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS54ZG9tYWluLG49ZS54c2NoZW1lLHI9ZS5lbmFibGVzWERSO3RyeXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIFhNTEh0dHBSZXF1ZXN0JiYoIXR8fGkpKXJldHVybiBuZXcgWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fXRyeXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIFhEb21haW5SZXF1ZXN0JiYhbiYmcilyZXR1cm4gbmV3IFhEb21haW5SZXF1ZXN0fWNhdGNoKGUpe31pZighdCl0cnl7cmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQuWE1MSFRUUCIpfWNhdGNoKGUpe319fSx7Imhhcy1jb3JzIjoyM31dLDIwOltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKHQpe3ZhciBpPWUoIi4va2V5cyIpLHI9ZSgiaGFzLWJpbmFyeSIpLG89ZSgiYXJyYXlidWZmZXIuc2xpY2UiKSxhPWUoImJhc2U2NC1hcnJheWJ1ZmZlciIpLHM9ZSgiYWZ0ZXIiKSxsPWUoInV0ZjgiKSxjPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0FuZHJvaWQvaSksdT0vUGhhbnRvbUpTL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxkPWN8fHU7bi5wcm90b2NvbD0zO3ZhciBwPW4ucGFja2V0cz17b3BlbjowLGNsb3NlOjEscGluZzoyLHBvbmc6MyxtZXNzYWdlOjQsdXBncmFkZTo1LG5vb3A6Nn0saD1pKHApLGY9e3R5cGU6ImVycm9yIixkYXRhOiJwYXJzZXIgZXJyb3IifSxnPWUoImJsb2IiKTtmdW5jdGlvbiBtKGUsdCl7cmV0dXJuIHQoImIiK24ucGFja2V0c1tlLnR5cGVdK2UuZGF0YS5kYXRhKX1mdW5jdGlvbiB5KGUsdCxpKXtpZighdClyZXR1cm4gbi5lbmNvZGVCYXNlNjRQYWNrZXQoZSxpKTt2YXIgcj1lLmRhdGEsbz1uZXcgVWludDhBcnJheShyKSxhPW5ldyBVaW50OEFycmF5KDErci5ieXRlTGVuZ3RoKTthWzBdPXBbZS50eXBlXTtmb3IodmFyIHM9MDtzPG8ubGVuZ3RoO3MrKylhW3MrMV09b1tzXTtyZXR1cm4gaShhLmJ1ZmZlcil9ZnVuY3Rpb24gdihlLHQsaSl7aWYoIXQpcmV0dXJuIG4uZW5jb2RlQmFzZTY0UGFja2V0KGUsaSk7aWYoZClyZXR1cm4gZnVuY3Rpb24oZSx0LGkpe2lmKCF0KXJldHVybiBuLmVuY29kZUJhc2U2NFBhY2tldChlLGkpO3ZhciByPW5ldyBGaWxlUmVhZGVyO3JldHVybiByLm9ubG9hZD1mdW5jdGlvbigpe2UuZGF0YT1yLnJlc3VsdCxuLmVuY29kZVBhY2tldChlLHQsITAsaSl9LHIucmVhZEFzQXJyYXlCdWZmZXIoZS5kYXRhKX0oZSx0LGkpO3ZhciByPW5ldyBVaW50OEFycmF5KDEpO3JldHVybiByWzBdPXBbZS50eXBlXSxpKG5ldyBnKFtyLmJ1ZmZlcixlLmRhdGFdKSl9ZnVuY3Rpb24gYihlLHQsbil7Zm9yKHZhciBpPW5ldyBBcnJheShlLmxlbmd0aCkscj1zKGUubGVuZ3RoLG4pLG89ZnVuY3Rpb24oZSxuLHIpe3QobiwoZnVuY3Rpb24odCxuKXtpW2VdPW4scih0LGkpfSkpfSxhPTA7YTxlLmxlbmd0aDthKyspbyhhLGVbYV0scil9bi5lbmNvZGVQYWNrZXQ9ZnVuY3Rpb24oZSxuLGkscil7ImZ1bmN0aW9uIj09dHlwZW9mIG4mJihyPW4sbj0hMSksImZ1bmN0aW9uIj09dHlwZW9mIGkmJihyPWksaT1udWxsKTt2YXIgbz12b2lkIDA9PT1lLmRhdGE/dm9pZCAwOmUuZGF0YS5idWZmZXJ8fGUuZGF0YTtpZih0LkFycmF5QnVmZmVyJiZvIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpcmV0dXJuIHkoZSxuLHIpO2lmKGcmJm8gaW5zdGFuY2VvZiB0LkJsb2IpcmV0dXJuIHYoZSxuLHIpO2lmKG8mJm8uYmFzZTY0KXJldHVybiBtKGUscik7dmFyIGE9cFtlLnR5cGVdO3JldHVybiB2b2lkIDAhPT1lLmRhdGEmJihhKz1pP2wuZW5jb2RlKFN0cmluZyhlLmRhdGEpKTpTdHJpbmcoZS5kYXRhKSkscigiIithKX0sbi5lbmNvZGVCYXNlNjRQYWNrZXQ9ZnVuY3Rpb24oZSxpKXt2YXIgcixvPSJiIituLnBhY2tldHNbZS50eXBlXTtpZihnJiZlLmRhdGEgaW5zdGFuY2VvZiB0LkJsb2Ipe3ZhciBhPW5ldyBGaWxlUmVhZGVyO3JldHVybiBhLm9ubG9hZD1mdW5jdGlvbigpe3ZhciBlPWEucmVzdWx0LnNwbGl0KCIsIilbMV07aShvK2UpfSxhLnJlYWRBc0RhdGFVUkwoZS5kYXRhKX10cnl7cj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsbmV3IFVpbnQ4QXJyYXkoZS5kYXRhKSl9Y2F0Y2godCl7Zm9yKHZhciBzPW5ldyBVaW50OEFycmF5KGUuZGF0YSksbD1uZXcgQXJyYXkocy5sZW5ndGgpLGM9MDtjPHMubGVuZ3RoO2MrKylsW2NdPXNbY107cj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsbCl9cmV0dXJuIG8rPXQuYnRvYShyKSxpKG8pfSxuLmRlY29kZVBhY2tldD1mdW5jdGlvbihlLHQsaSl7aWYoInN0cmluZyI9PXR5cGVvZiBlfHx2b2lkIDA9PT1lKXtpZigiYiI9PWUuY2hhckF0KDApKXJldHVybiBuLmRlY29kZUJhc2U2NFBhY2tldChlLnN1YnN0cigxKSx0KTtpZihpKXRyeXtlPWwuZGVjb2RlKGUpfWNhdGNoKGUpe3JldHVybiBmfXZhciByPWUuY2hhckF0KDApO3JldHVybiBOdW1iZXIocik9PXImJmhbcl0/ZS5sZW5ndGg+MT97dHlwZTpoW3JdLGRhdGE6ZS5zdWJzdHJpbmcoMSl9Ont0eXBlOmhbcl19OmZ9dmFyIGE9KHI9bmV3IFVpbnQ4QXJyYXkoZSlbMF0sbyhlLDEpKTtyZXR1cm4gZyYmImJsb2IiPT09dCYmKGE9bmV3IGcoW2FdKSkse3R5cGU6aFtyXSxkYXRhOmF9fSxuLmRlY29kZUJhc2U2NFBhY2tldD1mdW5jdGlvbihlLG4pe3ZhciBpPWhbZS5jaGFyQXQoMCldO2lmKCF0LkFycmF5QnVmZmVyKXJldHVybnt0eXBlOmksZGF0YTp7YmFzZTY0OiEwLGRhdGE6ZS5zdWJzdHIoMSl9fTt2YXIgcj1hLmRlY29kZShlLnN1YnN0cigxKSk7cmV0dXJuImJsb2IiPT09biYmZyYmKHI9bmV3IGcoW3JdKSkse3R5cGU6aSxkYXRhOnJ9fSxuLmVuY29kZVBheWxvYWQ9ZnVuY3Rpb24oZSx0LGkpeyJmdW5jdGlvbiI9PXR5cGVvZiB0JiYoaT10LHQ9bnVsbCk7dmFyIG89cihlKTtyZXR1cm4gdCYmbz9nJiYhZD9uLmVuY29kZVBheWxvYWRBc0Jsb2IoZSxpKTpuLmVuY29kZVBheWxvYWRBc0FycmF5QnVmZmVyKGUsaSk6ZS5sZW5ndGg/dm9pZCBiKGUsKGZ1bmN0aW9uKGUsaSl7bi5lbmNvZGVQYWNrZXQoZSwhIW8mJnQsITAsKGZ1bmN0aW9uKGUpe2kobnVsbCxmdW5jdGlvbihlKXtyZXR1cm4gZS5sZW5ndGgrIjoiK2V9KGUpKX0pKX0pLChmdW5jdGlvbihlLHQpe3JldHVybiBpKHQuam9pbigiIikpfSkpOmkoIjA6Iil9LG4uZGVjb2RlUGF5bG9hZD1mdW5jdGlvbihlLHQsaSl7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBuLmRlY29kZVBheWxvYWRBc0JpbmFyeShlLHQsaSk7dmFyIHI7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQmJihpPXQsdD1udWxsKSwiIj09ZSlyZXR1cm4gaShmLDAsMSk7Zm9yKHZhciBvLGEscz0iIixsPTAsYz1lLmxlbmd0aDtsPGM7bCsrKXt2YXIgdT1lLmNoYXJBdChsKTtpZigiOiIhPXUpcys9dTtlbHNle2lmKCIiPT1zfHxzIT0obz1OdW1iZXIocykpKXJldHVybiBpKGYsMCwxKTtpZihzIT0oYT1lLnN1YnN0cihsKzEsbykpLmxlbmd0aClyZXR1cm4gaShmLDAsMSk7aWYoYS5sZW5ndGgpe2lmKHI9bi5kZWNvZGVQYWNrZXQoYSx0LCEwKSxmLnR5cGU9PXIudHlwZSYmZi5kYXRhPT1yLmRhdGEpcmV0dXJuIGkoZiwwLDEpO2lmKCExPT09aShyLGwrbyxjKSlyZXR1cm59bCs9byxzPSIifX1yZXR1cm4iIiE9cz9pKGYsMCwxKTp2b2lkIDB9LG4uZW5jb2RlUGF5bG9hZEFzQXJyYXlCdWZmZXI9ZnVuY3Rpb24oZSx0KXtpZighZS5sZW5ndGgpcmV0dXJuIHQobmV3IEFycmF5QnVmZmVyKDApKTtiKGUsKGZ1bmN0aW9uKGUsdCl7bi5lbmNvZGVQYWNrZXQoZSwhMCwhMCwoZnVuY3Rpb24oZSl7cmV0dXJuIHQobnVsbCxlKX0pKX0pLChmdW5jdGlvbihlLG4pe3ZhciBpPW4ucmVkdWNlKChmdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBlKyhuPSJzdHJpbmciPT10eXBlb2YgdD90Lmxlbmd0aDp0LmJ5dGVMZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoK24rMn0pLDApLHI9bmV3IFVpbnQ4QXJyYXkoaSksbz0wO3JldHVybiBuLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciB0PSJzdHJpbmciPT10eXBlb2YgZSxuPWU7aWYodCl7Zm9yKHZhciBpPW5ldyBVaW50OEFycmF5KGUubGVuZ3RoKSxhPTA7YTxlLmxlbmd0aDthKyspaVthXT1lLmNoYXJDb2RlQXQoYSk7bj1pLmJ1ZmZlcn1yW28rK109dD8wOjE7dmFyIHM9bi5ieXRlTGVuZ3RoLnRvU3RyaW5nKCk7Zm9yKGE9MDthPHMubGVuZ3RoO2ErKylyW28rK109cGFyc2VJbnQoc1thXSk7Zm9yKHJbbysrXT0yNTUsaT1uZXcgVWludDhBcnJheShuKSxhPTA7YTxpLmxlbmd0aDthKyspcltvKytdPWlbYV19KSksdChyLmJ1ZmZlcil9KSl9LG4uZW5jb2RlUGF5bG9hZEFzQmxvYj1mdW5jdGlvbihlLHQpe2IoZSwoZnVuY3Rpb24oZSx0KXtuLmVuY29kZVBhY2tldChlLCEwLCEwLChmdW5jdGlvbihlKXt2YXIgbj1uZXcgVWludDhBcnJheSgxKTtpZihuWzBdPTEsInN0cmluZyI9PXR5cGVvZiBlKXtmb3IodmFyIGk9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpLHI9MDtyPGUubGVuZ3RoO3IrKylpW3JdPWUuY2hhckNvZGVBdChyKTtlPWkuYnVmZmVyLG5bMF09MH12YXIgbz0oZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP2UuYnl0ZUxlbmd0aDplLnNpemUpLnRvU3RyaW5nKCksYT1uZXcgVWludDhBcnJheShvLmxlbmd0aCsxKTtmb3Iocj0wO3I8by5sZW5ndGg7cisrKWFbcl09cGFyc2VJbnQob1tyXSk7aWYoYVtvLmxlbmd0aF09MjU1LGcpe3ZhciBzPW5ldyBnKFtuLmJ1ZmZlcixhLmJ1ZmZlcixlXSk7dChudWxsLHMpfX0pKX0pLChmdW5jdGlvbihlLG4pe3JldHVybiB0KG5ldyBnKG4pKX0pKX0sbi5kZWNvZGVQYXlsb2FkQXNCaW5hcnk9ZnVuY3Rpb24oZSx0LGkpeyJmdW5jdGlvbiI9PXR5cGVvZiB0JiYoaT10LHQ9bnVsbCk7Zm9yKHZhciByPWUsYT1bXSxzPSExO3IuYnl0ZUxlbmd0aD4wOyl7Zm9yKHZhciBsPW5ldyBVaW50OEFycmF5KHIpLGM9MD09PWxbMF0sdT0iIixkPTE7MjU1IT1sW2RdO2QrKyl7aWYodS5sZW5ndGg+MzEwKXtzPSEwO2JyZWFrfXUrPWxbZF19aWYocylyZXR1cm4gaShmLDAsMSk7cj1vKHIsMit1Lmxlbmd0aCksdT1wYXJzZUludCh1KTt2YXIgcD1vKHIsMCx1KTtpZihjKXRyeXtwPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuZXcgVWludDhBcnJheShwKSl9Y2F0Y2goZSl7dmFyIGg9bmV3IFVpbnQ4QXJyYXkocCk7Zm9yKHA9IiIsZD0wO2Q8aC5sZW5ndGg7ZCsrKXArPVN0cmluZy5mcm9tQ2hhckNvZGUoaFtkXSl9YS5wdXNoKHApLHI9byhyLHUpfXZhciBnPWEubGVuZ3RoO2EuZm9yRWFjaCgoZnVuY3Rpb24oZSxyKXtpKG4uZGVjb2RlUGFja2V0KGUsdCwhMCkscixnKX0pKX19KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0seyIuL2tleXMiOjIxLGFmdGVyOjMsImFycmF5YnVmZmVyLnNsaWNlIjo0LCJiYXNlNjQtYXJyYXlidWZmZXIiOjUsYmxvYjo2LCJoYXMtYmluYXJ5IjoyMix1dGY4OjI5fV0sMjE6W2Z1bmN0aW9uKGUsdCxuKXt0LmV4cG9ydHM9T2JqZWN0LmtleXN8fGZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtmb3IodmFyIGkgaW4gZSluLmNhbGwoZSxpKSYmdC5wdXNoKGkpO3JldHVybiB0fX0se31dLDIyOltmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKG4pe3ZhciBpPWUoImlzYXJyYXkiKTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uIGUodCl7aWYoIXQpcmV0dXJuITE7aWYobi5CdWZmZXImJm4uQnVmZmVyLmlzQnVmZmVyKHQpfHxuLkFycmF5QnVmZmVyJiZ0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXJ8fG4uQmxvYiYmdCBpbnN0YW5jZW9mIEJsb2J8fG4uRmlsZSYmdCBpbnN0YW5jZW9mIEZpbGUpcmV0dXJuITA7aWYoaSh0KSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspaWYoZSh0W3JdKSlyZXR1cm4hMH1lbHNlIGlmKHQmJiJvYmplY3QiPT10eXBlb2YgdClmb3IodmFyIG8gaW4gdC50b0pTT04mJih0PXQudG9KU09OKCkpLHQpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbykmJmUodFtvXSkpcmV0dXJuITA7cmV0dXJuITF9KGUpfX0pLmNhbGwodGhpcywidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7aXNhcnJheToyNX1dLDIzOltmdW5jdGlvbihlLHQsbil7dHJ5e3QuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIFhNTEh0dHBSZXF1ZXN0JiYid2l0aENyZWRlbnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdH1jYXRjaChlKXt0LmV4cG9ydHM9ITF9fSx7fV0sMjQ6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgaT1bXS5pbmRleE9mO3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGkpcmV0dXJuIGUuaW5kZXhPZih0KTtmb3IodmFyIG49MDtuPGUubGVuZ3RoOysrbilpZihlW25dPT09dClyZXR1cm4gbjtyZXR1cm4tMX19LHt9XSwyNTpbZnVuY3Rpb24oZSx0LG4pe3QuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSl9fSx7fV0sMjY6W2Z1bmN0aW9uKGUsdCxuKXsoZnVuY3Rpb24oZSl7dmFyIG49L15bXF0sOnt9XHNdKiQvLGk9L1xcKD86WyJcXFwvYmZucnRdfHVbMC05YS1mQS1GXXs0fSkvZyxyPS8iW14iXFxcblxyXSoifHRydWV8ZmFsc2V8bnVsbHwtP1xkKyg/OlwuXGQqKT8oPzpbZUVdWytcLV0/XGQrKT8vZyxvPS8oPzpefDp8LCkoPzpccypcWykrL2csYT0vXlxzKy8scz0vXHMrJC87dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdCYmdD8odD10LnJlcGxhY2UoYSwiIikucmVwbGFjZShzLCIiKSxlLkpTT04mJkpTT04ucGFyc2U/SlNPTi5wYXJzZSh0KTpuLnRlc3QodC5yZXBsYWNlKGksIkAiKS5yZXBsYWNlKHIsIl0iKS5yZXBsYWNlKG8sIiIpKT9uZXcgRnVuY3Rpb24oInJldHVybiAiK3QpKCk6dm9pZCAwKTpudWxsfX0pLmNhbGwodGhpcywidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7fV0sMjc6W2Z1bmN0aW9uKGUsdCxuKXtuLmVuY29kZT1mdW5jdGlvbihlKXt2YXIgdD0iIjtmb3IodmFyIG4gaW4gZSllLmhhc093blByb3BlcnR5KG4pJiYodC5sZW5ndGgmJih0Kz0iJiIpLHQrPWVuY29kZVVSSUNvbXBvbmVudChuKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pKTtyZXR1cm4gdH0sbi5kZWNvZGU9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXt9LG49ZS5zcGxpdCgiJiIpLGk9MCxyPW4ubGVuZ3RoO2k8cjtpKyspe3ZhciBvPW5baV0uc3BsaXQoIj0iKTt0W2RlY29kZVVSSUNvbXBvbmVudChvWzBdKV09ZGVjb2RlVVJJQ29tcG9uZW50KG9bMV0pfXJldHVybiB0fX0se31dLDI4OltmdW5jdGlvbihlLHQsbil7dmFyIGk9L14oPzooPyFbXjpAXSs6W146QFwvXSpAKShodHRwfGh0dHBzfHdzfHdzcyk6XC9cLyk/KCg/OigoW146QF0qKSg/OjooW146QF0qKSk/KT9AKT8oKD86W2EtZjAtOV17MCw0fTopezIsN31bYS1mMC05XXswLDR9fFteOlwvPyNdKikoPzo6KFxkKikpPykoKChcLyg/OltePyNdKD8hW14/I1wvXSpcLltePyNcLy5dKyg/Ols/I118JCkpKSpcLz8pPyhbXj8jXC9dKikpKD86XD8oW14jXSopKT8oPzojKC4qKSk/KS8scj1bInNvdXJjZSIsInByb3RvY29sIiwiYXV0aG9yaXR5IiwidXNlckluZm8iLCJ1c2VyIiwicGFzc3dvcmQiLCJob3N0IiwicG9ydCIsInJlbGF0aXZlIiwicGF0aCIsImRpcmVjdG9yeSIsImZpbGUiLCJxdWVyeSIsImFuY2hvciJdO3QuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD1lLG49ZS5pbmRleE9mKCJbIiksbz1lLmluZGV4T2YoIl0iKTstMSE9biYmLTEhPW8mJihlPWUuc3Vic3RyaW5nKDAsbikrZS5zdWJzdHJpbmcobixvKS5yZXBsYWNlKC86L2csIjsiKStlLnN1YnN0cmluZyhvLGUubGVuZ3RoKSk7Zm9yKHZhciBhPWkuZXhlYyhlfHwiIikscz17fSxsPTE0O2wtLTspc1tyW2xdXT1hW2xdfHwiIjtyZXR1cm4tMSE9biYmLTEhPW8mJihzLnNvdXJjZT10LHMuaG9zdD1zLmhvc3Quc3Vic3RyaW5nKDEscy5ob3N0Lmxlbmd0aC0xKS5yZXBsYWNlKC87L2csIjoiKSxzLmF1dGhvcml0eT1zLmF1dGhvcml0eS5yZXBsYWNlKCJbIiwiIikucmVwbGFjZSgiXSIsIiIpLnJlcGxhY2UoLzsvZywiOiIpLHMuaXB2NnVyaT0hMCksc319LHt9XSwyOTpbZnVuY3Rpb24oZSx0LG4peyhmdW5jdGlvbihlKXshZnVuY3Rpb24oaSl7dmFyIHI9Im9iamVjdCI9PXR5cGVvZiBuJiZuLG89Im9iamVjdCI9PXR5cGVvZiB0JiZ0JiZ0LmV4cG9ydHM9PXImJnQsYT0ib2JqZWN0Ij09dHlwZW9mIGUmJmU7YS5nbG9iYWwhPT1hJiZhLndpbmRvdyE9PWF8fChpPWEpO3ZhciBzLGwsYyx1PVN0cmluZy5mcm9tQ2hhckNvZGU7ZnVuY3Rpb24gZChlKXtmb3IodmFyIHQsbixpPVtdLHI9MCxvPWUubGVuZ3RoO3I8bzspKHQ9ZS5jaGFyQ29kZUF0KHIrKykpPj01NTI5NiYmdDw9NTYzMTkmJnI8bz81NjMyMD09KDY0NTEyJihuPWUuY2hhckNvZGVBdChyKyspKSk/aS5wdXNoKCgoMTAyMyZ0KTw8MTApKygxMDIzJm4pKzY1NTM2KTooaS5wdXNoKHQpLHItLSk6aS5wdXNoKHQpO3JldHVybiBpfWZ1bmN0aW9uIHAoZSl7aWYoZT49NTUyOTYmJmU8PTU3MzQzKXRocm93IEVycm9yKCJMb25lIHN1cnJvZ2F0ZSBVKyIrZS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKSsiIGlzIG5vdCBhIHNjYWxhciB2YWx1ZSIpfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4gdShlPj50JjYzfDEyOCl9ZnVuY3Rpb24gZihlKXtpZigwPT0oNDI5NDk2NzE2OCZlKSlyZXR1cm4gdShlKTt2YXIgdD0iIjtyZXR1cm4gMD09KDQyOTQ5NjUyNDgmZSk/dD11KGU+PjYmMzF8MTkyKTowPT0oNDI5NDkwMTc2MCZlKT8ocChlKSx0PXUoZT4+MTImMTV8MjI0KSx0Kz1oKGUsNikpOjA9PSg0MjkyODcwMTQ0JmUpJiYodD11KGU+PjE4Jjd8MjQwKSx0Kz1oKGUsMTIpLHQrPWgoZSw2KSksdCs9dSg2MyZlfDEyOCl9ZnVuY3Rpb24gZygpe2lmKGM+PWwpdGhyb3cgRXJyb3IoIkludmFsaWQgYnl0ZSBpbmRleCIpO3ZhciBlPTI1NSZzW2NdO2lmKGMrKywxMjg9PSgxOTImZSkpcmV0dXJuIDYzJmU7dGhyb3cgRXJyb3IoIkludmFsaWQgY29udGludWF0aW9uIGJ5dGUiKX1mdW5jdGlvbiBtKCl7dmFyIGUsdDtpZihjPmwpdGhyb3cgRXJyb3IoIkludmFsaWQgYnl0ZSBpbmRleCIpO2lmKGM9PWwpcmV0dXJuITE7aWYoZT0yNTUmc1tjXSxjKyssMD09KDEyOCZlKSlyZXR1cm4gZTtpZigxOTI9PSgyMjQmZSkpe3ZhciBuPWcoKTtpZigodD0oMzEmZSk8PDZ8bik+PTEyOClyZXR1cm4gdDt0aHJvdyBFcnJvcigiSW52YWxpZCBjb250aW51YXRpb24gYnl0ZSIpfWlmKDIyND09KDI0MCZlKSl7aWYoKHQ9KDE1JmUpPDwxMnwobj1nKCkpPDw2fGcoKSk+PTIwNDgpcmV0dXJuIHAodCksdDt0aHJvdyBFcnJvcigiSW52YWxpZCBjb250aW51YXRpb24gYnl0ZSIpfWlmKDI0MD09KDI0OCZlKSYmKHQ9KDE1JmUpPDwxOHwobj1nKCkpPDwxMnxnKCk8PDZ8ZygpKT49NjU1MzYmJnQ8PTExMTQxMTEpcmV0dXJuIHQ7dGhyb3cgRXJyb3IoIkludmFsaWQgVVRGLTggZGV0ZWN0ZWQiKX12YXIgeT17dmVyc2lvbjoiMi4wLjAiLGVuY29kZTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9ZChlKSxuPXQubGVuZ3RoLGk9LTEscj0iIjsrK2k8bjspcis9Zih0W2ldKTtyZXR1cm4gcn0sZGVjb2RlOmZ1bmN0aW9uKGUpe3M9ZChlKSxsPXMubGVuZ3RoLGM9MDtmb3IodmFyIHQsbj1bXTshMSE9PSh0PW0oKSk7KW4ucHVzaCh0KTtyZXR1cm4gZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49ZS5sZW5ndGgsaT0tMSxyPSIiOysraTxuOykodD1lW2ldKT42NTUzNSYmKHIrPXUoKHQtPTY1NTM2KT4+PjEwJjEwMjN8NTUyOTYpLHQ9NTYzMjB8MTAyMyZ0KSxyKz11KHQpO3JldHVybiByfShuKX19O2lmKHImJiFyLm5vZGVUeXBlKWlmKG8pby5leHBvcnRzPXk7ZWxzZXt2YXIgdj17fS5oYXNPd25Qcm9wZXJ0eTtmb3IodmFyIGIgaW4geSl2LmNhbGwoeSxiKSYmKHJbYl09eVtiXSl9ZWxzZSBpLnV0Zjg9eX0odGhpcyl9KS5jYWxsKHRoaXMsInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Ont9KX0se31dLDMwOltmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpLHI9IjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6LV8iLnNwbGl0KCIiKSxvPXt9LGE9MCxzPTA7ZnVuY3Rpb24gbChlKXt2YXIgdD0iIjtkb3t0PXJbZSU2NF0rdCxlPU1hdGguZmxvb3IoZS82NCl9d2hpbGUoZT4wKTtyZXR1cm4gdH1mdW5jdGlvbiBjKCl7dmFyIGU9bCgrbmV3IERhdGUpO3JldHVybiBlIT09aT8oYT0wLGk9ZSk6ZSsiLiIrbChhKyspfWZvcig7czw2NDtzKyspb1tyW3NdXT1zO2MuZW5jb2RlPWwsYy5kZWNvZGU9ZnVuY3Rpb24oZSl7dmFyIHQ9MDtmb3Iocz0wO3M8ZS5sZW5ndGg7cysrKXQ9NjQqdCtvW2UuY2hhckF0KHMpXTtyZXR1cm4gdH0sdC5leHBvcnRzPWN9LHt9XX0se30sWzEwXSkoMTApfSkpLGZ1bmN0aW9uKGUpeyJmdW5jdGlvbiIhPXR5cGVvZiBBcnJheS5pc0FycmF5JiYoQXJyYXkuaXNBcnJheT1mdW5jdGlvbihlKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfSksQXJyYXkucHJvdG90eXBlLmluZGV4T2Z8fChBcnJheS5wcm90b3R5cGUuaW5kZXhPZj1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPXRoaXMubGVuZ3RoO3Q8bjt0KyspaWYodGhpc1t0XT09PWUpcmV0dXJuIHQ7cmV0dXJuLTF9KTt2YXIgdD1lLkV2ZW50RW1pdHRlcj1mdW5jdGlvbigpe30sbj1BcnJheS5pc0FycmF5O3QucHJvdG90eXBlLmVtaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoImVycm9yIj09PWUmJighdGhpcy5fZXZlbnRzfHwhdGhpcy5fZXZlbnRzLmVycm9yfHxuKHRoaXMuX2V2ZW50cy5lcnJvcikmJiF0aGlzLl9ldmVudHMuZXJyb3IubGVuZ3RoKSl0aHJvdyBhcmd1bWVudHNbMV1pbnN0YW5jZW9mIEVycm9yP2FyZ3VtZW50c1sxXTpuZXcgRXJyb3IoIlVuY2F1Z2h0LCB1bnNwZWNpZmllZCAnZXJyb3InIGV2ZW50LiIpO2lmKCF0aGlzLl9ldmVudHMpcmV0dXJuITE7dmFyIGk9dGhpcy5fZXZlbnRzW2VdO2lmKCFpKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBpKXtzd2l0Y2goYXJndW1lbnRzLmxlbmd0aCl7Y2FzZSAxOmkuY2FsbCh0aGlzKTticmVhaztjYXNlIDI6aS5jYWxsKHRoaXMsYXJndW1lbnRzWzFdKTticmVhaztjYXNlIDM6aS5jYWxsKHRoaXMsYXJndW1lbnRzWzFdLGFyZ3VtZW50c1syXSk7YnJlYWs7ZGVmYXVsdDp0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxpLmFwcGx5KHRoaXMsdCl9cmV0dXJuITB9aWYobihpKSl7dD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7Zm9yKHZhciByPWkuc2xpY2UoKSxvPTAsYT1yLmxlbmd0aDtvPGE7bysrKXJbb10uYXBwbHkodGhpcyx0KTtyZXR1cm4hMH1yZXR1cm4hMX0sdC5wcm90b3R5cGUuYWRkTGlzdGVuZXI9ZnVuY3Rpb24oZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgRXJyb3IoImFkZExpc3RlbmVyIG9ubHkgdGFrZXMgaW5zdGFuY2VzIG9mIEZ1bmN0aW9uIik7cmV0dXJuIHRoaXMuX2V2ZW50c3x8KHRoaXMuX2V2ZW50cz17fSksdGhpcy5fZXZlbnRzW2VdP24odGhpcy5fZXZlbnRzW2VdKT90aGlzLl9ldmVudHNbZV0ucHVzaCh0KTp0aGlzLl9ldmVudHNbZV09W3RoaXMuX2V2ZW50c1tlXSx0XTp0aGlzLl9ldmVudHNbZV09dCx0aGlzfSx0LnByb3RvdHlwZS5vbj10LnByb3RvdHlwZS5hZGRMaXN0ZW5lcix0LnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztuLm9uKGUsKGZ1bmN0aW9uIGkoKXtuLnJlbW92ZUxpc3RlbmVyKGUsaSksdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KSl9LHQucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IEVycm9yKCJyZW1vdmVMaXN0ZW5lciBvbmx5IHRha2VzIGluc3RhbmNlcyBvZiBGdW5jdGlvbiIpO2lmKCF0aGlzLl9ldmVudHN8fCF0aGlzLl9ldmVudHNbZV0pcmV0dXJuIHRoaXM7dmFyIGk9dGhpcy5fZXZlbnRzW2VdO2lmKG4oaSkpe3ZhciByPWkuaW5kZXhPZih0KTtpZihyPDApcmV0dXJuIHRoaXM7aS5zcGxpY2UociwxKSwwPT09aS5sZW5ndGgmJmRlbGV0ZSB0aGlzLl9ldmVudHNbZV19ZWxzZSB0aGlzLl9ldmVudHNbZV09PT10JiZkZWxldGUgdGhpcy5fZXZlbnRzW2VdO3JldHVybiB0aGlzfSx0LnByb3RvdHlwZS5yZW1vdmVBbGxMaXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuIGU/ZSYmdGhpcy5fZXZlbnRzJiZ0aGlzLl9ldmVudHNbZV0mJih0aGlzLl9ldmVudHNbZV09bnVsbCk6dGhpcy5fZXZlbnRzPXt9LHRoaXN9LHQucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fZXZlbnRzfHwodGhpcy5fZXZlbnRzPXt9KSx0aGlzLl9ldmVudHNbZV18fCh0aGlzLl9ldmVudHNbZV09W10pLG4odGhpcy5fZXZlbnRzW2VdKXx8KHRoaXMuX2V2ZW50c1tlXT1bdGhpcy5fZXZlbnRzW2VdXSksdGhpcy5fZXZlbnRzW2VdfX0od2luZG93KSxmdW5jdGlvbihlKXt2YXIgdCxuPSJvcGVuaW5nIixpPSJvcGVuIixyPSJjbG9zaW5nIixvPSJjbG9zZWQiO2Z1bmN0aW9uIGEodCxpKXtpZighaS5lbmdpbmVJbyl0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHNwZWNpZnkgZW5naW5lSW8iKTtpZihpLnRpbWVzdGFtcFJlcXVlc3RzPSEwLGkudGltZXN0YW1wUGFyYW09Il9fdCIsdGhpcy5fX2NhbGxiYWNrSW5kZXg9MCx0aGlzLl9fY2FsbGJhY2tzPXt9LHRoaXMuc3RhdGU9bix0aGlzLnNvY2tldD1uZXcgaS5lbmdpbmVJbyh0LGkpLHRoaXMuZGVidWc9ITEsZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhd2tfX2RteiIpKXt2YXIgcj10aGlzO2UuZ2V0U29ja2V0VHJhbnNwb3J0PWZ1bmN0aW9uKCl7aWYoci5zb2NrZXQudHJhbnNwb3J0KXJldHVybiByLnNvY2tldC50cmFuc3BvcnQubmFtZX19ZG9jdW1lbnQubG9jYXRpb24mJiIjIXRhd2stZGVidWciPT09ZG9jdW1lbnQubG9jYXRpb24uaGFzaCYmKHRoaXMuZGVidWc9ITApLEV2ZW50RW1pdHRlci5jYWxsKHRoaXMpLHRoaXMuYXR0YWNoTGlzdGVuZXJzKCl9Zm9yKHQgaW4gRXZlbnRFbWl0dGVyLnByb3RvdHlwZSkiZnVuY3Rpb24iPT10eXBlb2YgRXZlbnRFbWl0dGVyLnByb3RvdHlwZVt0XSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEV2ZW50RW1pdHRlci5wcm90b3R5cGUsdCkmJihhLnByb3RvdHlwZVt0XT1FdmVudEVtaXR0ZXIucHJvdG90eXBlW3RdKTthLnByb3RvdHlwZS5hdHRhY2hMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuc29ja2V0Lm9uKCJvcGVuIiwoZnVuY3Rpb24oKXtlLnN0YXRlPWksZS5lbWl0KCJjb25uZWN0Iil9KSksdGhpcy5zb2NrZXQub24oImNsb3NlIiwoZnVuY3Rpb24odCxuKXtlLmVtaXQoImRpc2Nvbm5lY3QiLHQsbiksZS5kb0Nsb3NlKCl9KSksdGhpcy5zb2NrZXQub24oImVycm9yIiwoZnVuY3Rpb24odCl7ZS5lbWl0KCJlcnJvciIsdCl9KSksdGhpcy5zb2NrZXQub24oIm1lc3NhZ2UiLChmdW5jdGlvbih0KXtlLm9uTWVzc2FnZSh0KX0pKX0sYS5wcm90b3R5cGUuY2xvc2U9YS5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5zdGF0ZT09PW4mJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5jbG9zZSgpfSksMWUzKSx0aGlzLnN0YXRlPT09aSYmKHRoaXMuc3RhdGU9cix0aGlzLmNsZWFyQ2FsbGJhY2tzKCksdGhpcy5zb2NrZXQuY2xvc2UoKSl9LGEucHJvdG90eXBlLmRvQ2xvc2U9ZnVuY3Rpb24oKXt0aGlzLmNsZWFyQ2FsbGJhY2tzKCksdGhpcy5zdGF0ZT1vLHRoaXMuc29ja2V0LnJlbW92ZUFsbExpc3RlbmVycygpLHRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKCksdGhpcy5zb2NrZXQ9bnVsbH0sYS5wcm90b3R5cGUuY2xlYXJDYWxsYmFja3M9ZnVuY3Rpb24oKXt0aGlzLl9fY2FsbGJhY2tzPXt9fSxhLnByb3RvdHlwZS5vbk1lc3NhZ2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5kZWNvZGUoZSk7dCYmKCJfX2NhbGxiYWNrX18iPT09dC5jP3RoaXMuZXhlY3V0ZUNhbGxiYWNrKHQpOnRoaXMuZW1pdC5hcHBseSh0aGlzLFt0LmNdLmNvbmNhdCh0LnApKSl9LGEucHJvdG90eXBlLmV4ZWN1dGVDYWxsYmFjaz1mdW5jdGlvbihlKXt2YXIgdD10aGlzLl9fY2FsbGJhY2tzW2UuY2JdO2RlbGV0ZSB0aGlzLl9fY2FsbGJhY2tzW2UuY2JdLHQuYXBwbHkobnVsbCxlLnApfSxhLnByb3RvdHlwZS5kZWNvZGU9ZnVuY3Rpb24oZSl7dmFyIHQsbjt0aGlzLmRlYnVnJiZjb25zb2xlJiZjb25zb2xlLmxvZyYmKGRhdGE9bmV3IERhdGUsY29uc29sZS5sb2coInJlY2VpdmVkICIrZGF0YS50b1VUQ1N0cmluZygpKyIgOiAiK2UpKTt0cnl7dD1KU09OLnBhcnNlKGUpfWNhdGNoKGUpe3JldHVybiB2b2lkIHRoaXMuZW1pdCgiZXJyb3IiLGUpfWlmKHQuYylpZigiZXJyb3IiIT09dC5jJiYiY29ubmVjdCIhPT10LmMmJiJkaXNjb25uZWN0IiE9PXQuYylpZih0LnAmJiJbb2JqZWN0IEFycmF5XSIhPT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodC5wKSl0aGlzLmVtaXQoImVycm9yIixuZXcgRXJyb3IoImRhdGEgaXMgZXhwZWN0ZWQgdG8gYmUgYW4gYXJyYXkiKSk7ZWxzZXtpZigiX19jYWxsYmFja19fIiE9PXQuYylyZXR1cm4gdDtpZihuPXBhcnNlSW50KHQuY2IsMTApLGlzTmFOKG4pKXRoaXMuZW1pdCgiZXJyb3IiLG5ldyBFcnJvcigicmVjZWl2ZWQgY2FsbGJhY2sgY29tbWFuZCBidXQgdGhlcmUgd2FzIG5vIHZhbGlkIGNhbGxiYWNrIGlkKGAiK24rImAiKSk7ZWxzZXtpZih0aGlzLl9fY2FsbGJhY2tzW25dKXJldHVybiB0LmNiPW4sdDt0aGlzLmVtaXQoImVycm9yIixuZXcgRXJyb3IoInJlY2VpdmVkIGNhbGxiYWNrIGNvbW1hbmQgYnV0IGNhbGxiYWNrIGlzbnQgcHJlc2VudCAoYCIrdC5jYisiYCkiKSl9fWVsc2UgdGhpcy5lbWl0KCJlcnJvciIsbmV3IEVycm9yKCJzZXJ2ZXIgcmV0dXJuZWQgcmVzZXJ2ZWQgY29tbWFuZCA6IGAiK3QuY21kKyJgIikpO2Vsc2UgdGhpcy5lbWl0KCJlcnJvciIsbmV3IEVycm9yKCJubyBjb21tYW5kIHdhcyBzZW50IGJ5IHRoZSBzZXJ2ZXIiKSl9LGEucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmVuY29kZShhcmd1bWVudHMpO3RoaXMuZGVidWcmJmNvbnNvbGUmJmNvbnNvbGUubG9nJiYoZGF0YT1uZXcgRGF0ZSxjb25zb2xlLmxvZygic2VuZCAiK2RhdGEudG9VVENTdHJpbmcoKSsiIDogIitlKSksdGhpcy5zdGF0ZT09PWk/ZSYmdGhpcy5zb2NrZXQuc2VuZChlKTp0aGlzLmVtaXQoImVycm9yIixuZXcgRXJyb3IoIlNvY2tldCBpc250IG9wZW4gaXRzIHN0YXRlIGlzIGAiK3RoaXMuc3RhdGUrImAgdHJpZWQgdG8gc2VuZCBgIitlKyJgIikpfSxhLnByb3RvdHlwZS5lbmNvZGU9ZnVuY3Rpb24oZSl7dmFyIHQ9e307aWYoKGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSkpWzBdKXt2YXIgbjt0LmM9ZVswXSwiZnVuY3Rpb24iPT10eXBlb2YgZVtlLmxlbmd0aC0xXSYmKHQuY2I9dGhpcy5lbnF1ZXVDYWxsYmFjayhlLnBvcCgpKSksdC5wPWUuc2xpY2UoMSk7dHJ5e249SlNPTi5zdHJpbmdpZnkodCl9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgdGhpcy5lbWl0KCJlcnJvciIsZSl9cmV0dXJuIG59dGhpcy5lbWl0KCJlcnJvciIsbmV3IEVycm9yKCJub3cgY29tbWFuZCBzcGVjaWZpZWQiKSl9LGEucHJvdG90eXBlLmVucXVldUNhbGxiYWNrPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9fY2FsbGJhY2tzW3RoaXMuX19jYWxsYmFja0luZGV4XT1lLHRoaXMuX19jYWxsYmFja0luZGV4Kyt9LGUuJF9fVGF3a1NvY2tldD1hfSh3aW5kb3cpfSkuY2FsbCh0aGlzLG4oImM4YmEiKSl9LGNjOTg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIyM2U3Iikscj1uKCJjNDMwIiksbz1uKCI0NzM4IikuQ09OU1RSVUNUT1IsYT1uKCJkMjU2Iikscz1uKCJkMDY2IiksbD1uKCIxNjI2IiksYz1uKCJjYjJkIiksdT1hJiZhLnByb3RvdHlwZTtpZihpKHt0YXJnZXQ6IlByb21pc2UiLHByb3RvOiEwLGZvcmNlZDpvLHJlYWw6ITB9LHtjYXRjaDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxlKX19KSwhciYmbChhKSl7dmFyIGQ9cygiUHJvbWlzZSIpLnByb3RvdHlwZS5jYXRjaDt1LmNhdGNoIT09ZCYmYyh1LCJjYXRjaCIsZCx7dW5zYWZlOiEwfSl9fSxjY2E2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMjNlNyIpLHI9bigiNjBkYSIpO2koe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGFyaXR5OjIsZm9yY2VkOk9iamVjdC5hc3NpZ24hPT1yfSx7YXNzaWduOnJ9KX0sY2RjZTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImRhODQiKSxyPW4oIjE2MjYiKSxvPWkuV2Vha01hcDtlLmV4cG9ydHM9cihvKSYmL25hdGl2ZSBjb2RlLy50ZXN0KFN0cmluZyhvKSl9LGNkZjk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI4MjVhIikscj1uKCI4NjFkIiksbz1uKCJmMDY5Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoaShlKSxyKHQpJiZ0LmNvbnN0cnVjdG9yPT09ZSlyZXR1cm4gdDt2YXIgbj1vLmYoZSk7cmV0dXJuKDAsbi5yZXNvbHZlKSh0KSxuLnByb21pc2V9fSxkMDEyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPXt9fSxkMDM5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hIWUoKX1jYXRjaChlKXtyZXR1cm4hMH19fSxkMDY2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZGE4NCIpLHI9bigiMTYyNiIpLG89ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSk/ZTp2b2lkIDB9O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPDI/byhpW2VdKTppW2VdJiZpW2VdW3RdfX0sZDFlNzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLHI9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixvPXImJiFpLmNhbGwoezE6Mn0sMSk7dC5mPW8/ZnVuY3Rpb24oZSl7dmFyIHQ9cih0aGlzLGUpO3JldHVybiEhdCYmdC5lbnVtZXJhYmxlfTppfSxkMjU2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZGE4NCIpO2UuZXhwb3J0cz1pLlByb21pc2V9LGQyYmI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI3MjgyIikscj1uKCI4NjFkIiksbz1uKCIxZDgwIiksYT1uKCIzYmJlIik7ZS5leHBvcnRzPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8KCJfX3Byb3RvX18iaW57fT9mdW5jdGlvbigpe3ZhciBlLHQ9ITEsbj17fTt0cnl7KGU9aShPYmplY3QucHJvdG90eXBlLCJfX3Byb3RvX18iLCJzZXQiKSkobixbXSksdD1uIGluc3RhbmNlb2YgQXJyYXl9Y2F0Y2goZSl7fXJldHVybiBmdW5jdGlvbihuLGkpe3JldHVybiBvKG4pLGEoaSkscihuKT8odD9lKG4saSk6bi5fX3Byb3RvX189aSxuKTpufX0oKTp2b2lkIDApfSxkMzA0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtyZXR1cm4oaT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSk7ZnVuY3Rpb24gcigpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBYTUxIdHRwUmVxdWVzdHx8Im9iamVjdCI9PT0oInVuZGVmaW5lZCI9PXR5cGVvZiBYTUxIdHRwUmVxdWVzdD8idW5kZWZpbmVkIjppKFhNTEh0dHBSZXF1ZXN0KSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuISFlJiYiZnVuY3Rpb24iPT10eXBlb2YgZS50aGVufShlKT9lOlByb21pc2UucmVzb2x2ZShlKX19LGQ0NGU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI5YmYyIikuZixyPW4oIjFhMmQiKSxvPW4oImI2MjIiKSgidG9TdHJpbmdUYWciKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UmJiFuJiYoZT1lLnByb3RvdHlwZSksZSYmIXIoZSxvKSYmaShlLG8se2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTp0fSl9fSxkNGMzOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMzQyZiIpO2UuZXhwb3J0cz0vaXBhZHxpcGhvbmV8aXBvZC9pLnRlc3QoaSkmJiJ1bmRlZmluZWQiIT10eXBlb2YgUGViYmxlfSxkNmQ2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGU8dCl0aHJvdyBuZXcgaSgiTm90IGVub3VnaCBhcmd1bWVudHMiKTtyZXR1cm4gZX19LGQ5YjU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkMDY2Iikscj1uKCIxNjI2Iiksbz1uKCIzYTliIiksYT1uKCJmZGJmIikscz1PYmplY3Q7ZS5leHBvcnRzPWE/ZnVuY3Rpb24oZSl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlfTpmdW5jdGlvbihlKXt2YXIgdD1pKCJTeW1ib2wiKTtyZXR1cm4gcih0KSYmbyh0LnByb3RvdHlwZSxzKGUpKX19LGRhODQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24odCl7dmFyIG49ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuTWF0aD09PU1hdGgmJmV9O2UuZXhwb3J0cz1uKCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyl8fG4oIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdyl8fG4oIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmKXx8bigib2JqZWN0Ij09dHlwZW9mIHQmJnQpfHxuKCJvYmplY3QiPT10eXBlb2YgdGhpcyYmdGhpcyl8fGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCl8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9KS5jYWxsKHRoaXMsbigiYzhiYSIpKX0sZGJiOTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImQzMDQiKSxyPW4oIjU4MDgiKTtmdW5jdGlvbiBvKGUpe3JldHVybihvPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ZnVuY3Rpb24gYShlLHQpe3ZhciBuPU9iamVjdC5rZXlzKGUpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7dCYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCkuZW51bWVyYWJsZX0pKSksbi5wdXNoLmFwcGx5KG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gcyhlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbdF0/YXJndW1lbnRzW3RdOnt9O3QlMj9hKE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24odCl7dShlLHQsblt0XSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6YShPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLHQpKX0pKX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gYyhlLHQpe2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKXt2YXIgaT10W25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsZChpLmtleSksaSl9fWZ1bmN0aW9uIHUoZSx0LG4pe3JldHVybih0PWQodCkpaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVt0XT1uLGV9ZnVuY3Rpb24gZChlKXt2YXIgdD1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT1vKGUpfHwhZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9byhpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PXQ/U3RyaW5nOk51bWJlcikoZSl9KGUsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1vKHQpP3Q6dCsiIn12YXIgcD1mdW5jdGlvbigpe3JldHVybntsb2FkUGF0aDoiL2xvY2FsZXMve3tsbmd9fS97e25zfX0uanNvbiIsYWRkUGF0aDoiL2xvY2FsZXMvYWRkL3t7bG5nfX0ve3tuc319IixwYXJzZTpmdW5jdGlvbihlKXtyZXR1cm4gSlNPTi5wYXJzZShlKX0sc3RyaW5naWZ5OkpTT04uc3RyaW5naWZ5LHBhcnNlUGF5bG9hZDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHUoe30sdCxufHwiIil9LHBhcnNlTG9hZFBheWxvYWQ6ZnVuY3Rpb24oZSx0KXt9LHJlcXVlc3Q6ci5hLHJlbG9hZEludGVydmFsOiJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93JiYzNmU1LGN1c3RvbUhlYWRlcnM6e30scXVlcnlTdHJpbmdQYXJhbXM6e30sY3Jvc3NEb21haW46ITEsd2l0aENyZWRlbnRpYWxzOiExLG92ZXJyaWRlTWltZVR5cGU6ITEscmVxdWVzdE9wdGlvbnM6e21vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsY2FjaGU6ImRlZmF1bHQifX19LGg9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0JiZjKGUucHJvdG90eXBlLHQpLG4mJmMoZSxuKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSxlfSgoZnVuY3Rpb24gZSh0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e30saT1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e307bCh0aGlzLGUpLHRoaXMuc2VydmljZXM9dCx0aGlzLm9wdGlvbnM9bix0aGlzLmFsbE9wdGlvbnM9aSx0aGlzLnR5cGU9ImJhY2tlbmQiLHRoaXMuaW5pdCh0LG4saSl9KSxbe2tleToiaW5pdCIsdmFsdWU6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcyxuPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fSxpPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtpZih0aGlzLnNlcnZpY2VzPWUsdGhpcy5vcHRpb25zPXMocyhzKHt9LHAoKSksdGhpcy5vcHRpb25zfHx7fSksbiksdGhpcy5hbGxPcHRpb25zPWksdGhpcy5zZXJ2aWNlcyYmdGhpcy5vcHRpb25zLnJlbG9hZEludGVydmFsKXt2YXIgcj1zZXRJbnRlcnZhbCgoZnVuY3Rpb24oKXtyZXR1cm4gdC5yZWxvYWQoKX0pLHRoaXMub3B0aW9ucy5yZWxvYWRJbnRlcnZhbCk7Im9iamVjdCI9PT1vKHIpJiYiZnVuY3Rpb24iPT10eXBlb2Ygci51bnJlZiYmci51bnJlZigpfX19LHtrZXk6InJlYWRNdWx0aSIsdmFsdWU6ZnVuY3Rpb24oZSx0LG4pe3RoaXMuX3JlYWRBbnkoZSxlLHQsdCxuKX19LHtrZXk6InJlYWQiLHZhbHVlOmZ1bmN0aW9uKGUsdCxuKXt0aGlzLl9yZWFkQW55KFtlXSxlLFt0XSx0LG4pfX0se2tleToiX3JlYWRBbnkiLHZhbHVlOmZ1bmN0aW9uKGUsdCxuLHIsbyl7dmFyIGE9dGhpcyxzPXRoaXMub3B0aW9ucy5sb2FkUGF0aDsiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5vcHRpb25zLmxvYWRQYXRoJiYocz10aGlzLm9wdGlvbnMubG9hZFBhdGgoZSxuKSksKHM9T2JqZWN0KGkuYikocykpLnRoZW4oKGZ1bmN0aW9uKGkpe2lmKCFpKXJldHVybiBvKG51bGwse30pO3ZhciBzPWEuc2VydmljZXMuaW50ZXJwb2xhdG9yLmludGVycG9sYXRlKGkse2xuZzplLmpvaW4oIisiKSxuczpuLmpvaW4oIisiKX0pO2EubG9hZFVybChzLG8sdCxyKX0pKX19LHtrZXk6ImxvYWRVcmwiLHZhbHVlOmZ1bmN0aW9uKGUsdCxuLGkpe3ZhciByPXRoaXMsbz0ic3RyaW5nIj09dHlwZW9mIG4/W25dOm4sYT0ic3RyaW5nIj09dHlwZW9mIGk/W2ldOmkscz10aGlzLm9wdGlvbnMucGFyc2VMb2FkUGF5bG9hZChvLGEpO3RoaXMub3B0aW9ucy5yZXF1ZXN0KHRoaXMub3B0aW9ucyxlLHMsKGZ1bmN0aW9uKG8sYSl7aWYoYSYmKGEuc3RhdHVzPj01MDAmJmEuc3RhdHVzPDYwMHx8IWEuc3RhdHVzKSlyZXR1cm4gdCgiZmFpbGVkIGxvYWRpbmcgIitlKyI7IHN0YXR1cyBjb2RlOiAiK2Euc3RhdHVzLCEwKTtpZihhJiZhLnN0YXR1cz49NDAwJiZhLnN0YXR1czw1MDApcmV0dXJuIHQoImZhaWxlZCBsb2FkaW5nICIrZSsiOyBzdGF0dXMgY29kZTogIithLnN0YXR1cywhMSk7aWYoIWEmJm8mJm8ubWVzc2FnZSYmby5tZXNzYWdlLmluZGV4T2YoIkZhaWxlZCB0byBmZXRjaCIpPi0xKXJldHVybiB0KCJmYWlsZWQgbG9hZGluZyAiK2UrIjogIitvLm1lc3NhZ2UsITApO2lmKG8pcmV0dXJuIHQobywhMSk7dmFyIHMsbDt0cnl7cz0ic3RyaW5nIj09dHlwZW9mIGEuZGF0YT9yLm9wdGlvbnMucGFyc2UoYS5kYXRhLG4saSk6YS5kYXRhfWNhdGNoKHQpe2w9ImZhaWxlZCBwYXJzaW5nICIrZSsiIHRvIGpzb24ifWlmKGwpcmV0dXJuIHQobCwhMSk7dChudWxsLHMpfSkpfX0se2tleToiY3JlYXRlIix2YWx1ZTpmdW5jdGlvbihlLHQsbixpLHIpe3ZhciBvPXRoaXM7aWYodGhpcy5vcHRpb25zLmFkZFBhdGgpeyJzdHJpbmciPT10eXBlb2YgZSYmKGU9W2VdKTt2YXIgYT10aGlzLm9wdGlvbnMucGFyc2VQYXlsb2FkKHQsbixpKSxzPTAsbD1bXSxjPVtdO2UuZm9yRWFjaCgoZnVuY3Rpb24obil7dmFyIGk9by5vcHRpb25zLmFkZFBhdGg7ImZ1bmN0aW9uIj09dHlwZW9mIG8ub3B0aW9ucy5hZGRQYXRoJiYoaT1vLm9wdGlvbnMuYWRkUGF0aChuLHQpKTt2YXIgdT1vLnNlcnZpY2VzLmludGVycG9sYXRvci5pbnRlcnBvbGF0ZShpLHtsbmc6bixuczp0fSk7by5vcHRpb25zLnJlcXVlc3Qoby5vcHRpb25zLHUsYSwoZnVuY3Rpb24odCxuKXtzKz0xLGwucHVzaCh0KSxjLnB1c2gobikscz09PWUubGVuZ3RoJiYiZnVuY3Rpb24iPT10eXBlb2YgciYmcihsLGMpfSkpfSkpfX19LHtrZXk6InJlbG9hZCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9dGhpcy5zZXJ2aWNlcyxuPXQuYmFja2VuZENvbm5lY3RvcixpPXQubGFuZ3VhZ2VVdGlscyxyPXQubG9nZ2VyLG89bi5sYW5ndWFnZTtpZighb3x8ImNpbW9kZSIhPT1vLnRvTG93ZXJDYXNlKCkpe3ZhciBhPVtdLHM9ZnVuY3Rpb24oZSl7aS50b1Jlc29sdmVIaWVyYXJjaHkoZSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7YS5pbmRleE9mKGUpPDAmJmEucHVzaChlKX0pKX07cyhvKSx0aGlzLmFsbE9wdGlvbnMucHJlbG9hZCYmdGhpcy5hbGxPcHRpb25zLnByZWxvYWQuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIHMoZSl9KSksYS5mb3JFYWNoKChmdW5jdGlvbih0KXtlLmFsbE9wdGlvbnMubnMuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bi5yZWFkKHQsZSwicmVhZCIsbnVsbCxudWxsLChmdW5jdGlvbihpLG8pe2kmJnIud2FybigibG9hZGluZyBuYW1lc3BhY2UgIi5jb25jYXQoZSwiIGZvciBsYW5ndWFnZSAiKS5jb25jYXQodCwiIGZhaWxlZCIpLGkpLCFpJiZvJiZyLmxvZygibG9hZGVkIG5hbWVzcGFjZSAiLmNvbmNhdChlLCIgZm9yIGxhbmd1YWdlICIpLmNvbmNhdCh0KSxvKSxuLmxvYWRlZCgiIi5jb25jYXQodCwifCIpLmNvbmNhdChlKSxpLG8pfSkpfSkpfSkpfX19XSk7aC50eXBlPSJiYWNrZW5kIix0LmE9aH0sZGM0YTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjU5ZWQiKSxyPW4oIjcyMzQiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lW3RdO3JldHVybiByKG4pP3ZvaWQgMDppKG4pfX0sZGNjMzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImFlOTMiKS5JdGVyYXRvclByb3RvdHlwZSxyPW4oIjdjNzMiKSxvPW4oIjVjNmMiKSxhPW4oImQ0NGUiKSxzPW4oIjNmOGMiKSxsPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixjKXt2YXIgdT10KyIgSXRlcmF0b3IiO3JldHVybiBlLnByb3RvdHlwZT1yKGkse25leHQ6bygrIWMsbil9KSxhKGUsdSwhMSwhMCksc1t1XT1sLGV9fSxkZjc1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiY2E4NCIpLHI9bigiNzgzOSIpO2UuZXhwb3J0cz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24oZSl7cmV0dXJuIGkoZSxyKX19LGUxNjM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIxYTJkIikscj1uKCIxNjI2Iiksbz1uKCI3YjBiIiksYT1uKCJmNzcyIikscz1uKCJlMTc3IiksbD1hKCJJRV9QUk9UTyIpLGM9T2JqZWN0LHU9Yy5wcm90b3R5cGU7ZS5leHBvcnRzPXM/Yy5nZXRQcm90b3R5cGVPZjpmdW5jdGlvbihlKXt2YXIgdD1vKGUpO2lmKGkodCxsKSlyZXR1cm4gdFtsXTt2YXIgbj10LmNvbnN0cnVjdG9yO3JldHVybiByKG4pJiZ0IGluc3RhbmNlb2Ygbj9uLnByb3RvdHlwZTp0IGluc3RhbmNlb2YgYz91Om51bGx9fSxlMTc3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZDAzOSIpO2UuZXhwb3J0cz0haSgoZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7fXJldHVybiBlLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1udWxsLE9iamVjdC5nZXRQcm90b3R5cGVPZihuZXcgZSkhPT1lLnByb3RvdHlwZX0pKX0sZTFiZDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKTt2YXIgaT1mdW5jdGlvbigpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToyMTtyZXR1cm4gY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuZXcgVWludDhBcnJheShlKSkucmVkdWNlKChmdW5jdGlvbihlLHQpe3JldHVybiBlKz0odCY9NjMpPDM2P3QudG9TdHJpbmcoMzYpOnQ8NjI/KHQtMjYpLnRvU3RyaW5nKDM2KS50b1VwcGVyQ2FzZSgpOnQ+NjI/Ii0iOiJfIn0pLCIiKX19LGUyNjA6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJmYzZhIikscj1uKCI0NGQyIiksbz1uKCIzZjhjIiksYT1uKCI2OWYzIikscz1uKCI5YmYyIikuZixsPW4oImM2ZDIiKSxjPW4oIjQ3NTQiKSx1PW4oImM0MzAiKSxkPW4oIjgzYWIiKSxwPSJBcnJheSBJdGVyYXRvciIsaD1hLnNldCxmPWEuZ2V0dGVyRm9yKHApO2UuZXhwb3J0cz1sKEFycmF5LCJBcnJheSIsKGZ1bmN0aW9uKGUsdCl7aCh0aGlzLHt0eXBlOnAsdGFyZ2V0OmkoZSksaW5kZXg6MCxraW5kOnR9KX0pLChmdW5jdGlvbigpe3ZhciBlPWYodGhpcyksdD1lLnRhcmdldCxuPWUuaW5kZXgrKztpZighdHx8bj49dC5sZW5ndGgpcmV0dXJuIGUudGFyZ2V0PXZvaWQgMCxjKHZvaWQgMCwhMCk7c3dpdGNoKGUua2luZCl7Y2FzZSJrZXlzIjpyZXR1cm4gYyhuLCExKTtjYXNlInZhbHVlcyI6cmV0dXJuIGModFtuXSwhMSl9cmV0dXJuIGMoW24sdFtuXV0sITEpfSksInZhbHVlcyIpO3ZhciBnPW8uQXJndW1lbnRzPW8uQXJyYXk7aWYocigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKSwhdSYmZCYmInZhbHVlcyIhPT1nLm5hbWUpdHJ5e3MoZywibmFtZSIse3ZhbHVlOiJ2YWx1ZXMifSl9Y2F0Y2goZSl7fX0sZTMzMDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjQwZDUiKSxyPUZ1bmN0aW9uLnByb3RvdHlwZSxvPXIuY2FsbCxhPWkmJnIuYmluZC5iaW5kKG8sbyk7ZS5leHBvcnRzPWk/YTpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gby5hcHBseShlLGFyZ3VtZW50cyl9fX0sZTY2NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt0cnl7cmV0dXJue2Vycm9yOiExLHZhbHVlOmUoKX19Y2F0Y2goZSl7cmV0dXJue2Vycm9yOiEwLHZhbHVlOmV9fX19LGU2Y2Y6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCI1ZTdlIiksbigiMTRlNSIpLG4oImNjOTgiKSxuKCIzNTI5IiksbigiZjIyYiIpLG4oIjcxNDkiKX0sZTg5MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjFhMmQiKSxyPW4oIjU2ZWYiKSxvPW4oIjA2Y2YiKSxhPW4oIjliZjIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcz1yKHQpLGw9YS5mLGM9by5mLHU9MDt1PHMubGVuZ3RoO3UrKyl7dmFyIGQ9c1t1XTtpKGUsZCl8fG4mJmkobixkKXx8bChlLGQsYyh0LGQpKX19fSxlOGI1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYzZiNiIpO2UuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iQXJyYXkiPT09aShlKX19LGU5NWE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJiNjIyIikscj1uKCIzZjhjIiksbz1pKCJpdGVyYXRvciIpLGE9QXJyYXkucHJvdG90eXBlO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwIT09ZSYmKHIuQXJyYXk9PT1lfHxhW29dPT09ZSl9fSxlZGQwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMTNkMiIpLHI9bigiOWJmMiIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG4uZ2V0JiZpKG4uZ2V0LHQse2dldHRlcjohMH0pLG4uc2V0JiZpKG4uc2V0LHQse3NldHRlcjohMH0pLHIuZihlLHQsbil9fSxmMDY5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiNTllZCIpLHI9VHlwZUVycm9yLG89ZnVuY3Rpb24oZSl7dmFyIHQsbjt0aGlzLnByb21pc2U9bmV3IGUoKGZ1bmN0aW9uKGUsaSl7aWYodm9pZCAwIT09dHx8dm9pZCAwIT09bil0aHJvdyBuZXcgcigiQmFkIFByb21pc2UgY29uc3RydWN0b3IiKTt0PWUsbj1pfSkpLHRoaXMucmVzb2x2ZT1pKHQpLHRoaXMucmVqZWN0PWkobil9O2UuZXhwb3J0cy5mPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgbyhlKX19LGYwYjA6ZnVuY3Rpb24oZSx0LG4peyJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZixlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9e307ZnVuY3Rpb24gbihpKXtpZih0W2ldKXJldHVybiB0W2ldLmV4cG9ydHM7dmFyIHI9dFtpXT17aTppLGw6ITEsZXhwb3J0czp7fX07cmV0dXJuIGVbaV0uY2FsbChyLmV4cG9ydHMscixyLmV4cG9ydHMsbiksci5sPSEwLHIuZXhwb3J0c31yZXR1cm4gbi5tPWUsbi5jPXQsbi5kPWZ1bmN0aW9uKGUsdCxpKXtuLm8oZSx0KXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxnZXQ6aX0pfSxuLnI9ZnVuY3Rpb24oZSl7InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0sbi50PWZ1bmN0aW9uKGUsdCl7aWYoMSZ0JiYoZT1uKGUpKSw4JnQpcmV0dXJuIGU7aWYoNCZ0JiYib2JqZWN0Ij09dHlwZW9mIGUmJmUmJmUuX19lc01vZHVsZSlyZXR1cm4gZTt2YXIgaT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKG4ucihpKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoaSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6ZX0pLDImdCYmInN0cmluZyIhPXR5cGVvZiBlKWZvcih2YXIgciBpbiBlKW4uZChpLHIsZnVuY3Rpb24odCl7cmV0dXJuIGVbdF19LmJpbmQobnVsbCxyKSk7cmV0dXJuIGl9LG4ubj1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLl9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gZS5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiBlfTtyZXR1cm4gbi5kKHQsImEiLHQpLHR9LG4ubz1mdW5jdGlvbihlLHQpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KX0sbi5wPSIiLG4obi5zPSJmYjE1Iil9KHsiMDVlZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCIyNTk5Iil9LCIwZjU2IjpmdW5jdGlvbihlLHQsbil7fSwxODYxOmZ1bmN0aW9uKGUsdCxuKXt9LCIxYmY0IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24oImRiYmIiKX0sMjU5OTpmdW5jdGlvbihlLHQsbil7fSwiMjdkNyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJlMjZhIil9LCIyOTdlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24oImZhOGMiKX0sIjI5OWMiOmZ1bmN0aW9uKGUsdCxuKXt9LCIyOWI2IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24oImI2ZjAiKX0sMzczOTpmdW5jdGlvbihlLHQsbil7fSwiM2JlOCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCIzNzM5Iil9LCI0YjM0IjpmdW5jdGlvbihlLHQsbil7fSw2Mzk4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiOTdjNiIpfSwiNjdlNiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCI0YjM0Iil9LCI2Yzk2IjpmdW5jdGlvbihlLHQsbil7fSwiNzFjYyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJjYjZkIil9LCI3NThkIjpmdW5jdGlvbihlLHQsbil7fSwiN2UxNiI6ZnVuY3Rpb24oZSx0LG4pe30sIjdmOWMiOmZ1bmN0aW9uKGUsdCxuKXt9LCI4NGFmIjpmdW5jdGlvbihlLHQsbil7fSwiODVhMSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCI3ZjljIil9LDg4NzU6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIsbzsidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGYscj1bXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKCl7dmFyIHQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkb2N1bWVudCwiY3VycmVudFNjcmlwdCIpO2lmKCF0JiYiY3VycmVudFNjcmlwdCJpbiBkb2N1bWVudCYmZG9jdW1lbnQuY3VycmVudFNjcmlwdClyZXR1cm4gZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZih0JiZ0LmdldCE9PWUmJmRvY3VtZW50LmN1cnJlbnRTY3JpcHQpcmV0dXJuIGRvY3VtZW50LmN1cnJlbnRTY3JpcHQ7dHJ5e3Rocm93IG5ldyBFcnJvcn1jYXRjaChlKXt2YXIgbixpLHIsbz0vLiphdCBbXihdKlwoKC4qKTooLispOiguKylcKSQvZ2kuZXhlYyhlLnN0YWNrKXx8L0AoW15AXSopOihcZCspOihcZCspXHMqJC9naS5leGVjKGUuc3RhY2spLGE9byYmb1sxXXx8ITEscz1vJiZvWzJdfHwhMSxsPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYucmVwbGFjZShkb2N1bWVudC5sb2NhdGlvbi5oYXNoLCIiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKTthPT09bCYmKG49ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lm91dGVySFRNTCxpPW5ldyBSZWdFeHAoIig/OlteXFxuXSs/XFxuKXswLCIrKHMtMikrIn1bXjxdKjxzY3JpcHQ+KFtcXGRcXERdKj8pPFxcL3NjcmlwdD5bXFxkXFxEXSoiLCJpIikscj1uLnJlcGxhY2UoaSwiJDEiKS50cmltKCkpO2Zvcih2YXIgdT0wO3U8Yy5sZW5ndGg7dSsrKXtpZigiaW50ZXJhY3RpdmUiPT09Y1t1XS5yZWFkeVN0YXRlKXJldHVybiBjW3VdO2lmKGNbdV0uc3JjPT09YSlyZXR1cm4gY1t1XTtpZihhPT09bCYmY1t1XS5pbm5lckhUTUwmJmNbdV0uaW5uZXJIVE1MLnRyaW0oKT09PXIpcmV0dXJuIGNbdV19cmV0dXJuIG51bGx9fX0pP2kuYXBwbHkodCxyKTppKXx8KGUuZXhwb3J0cz1vKX0sIjhiNDgiOmZ1bmN0aW9uKGUsdCxuKXt9LCI4YzRmIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24oImI1N2YiKX0sIjk3YzYiOmZ1bmN0aW9uKGUsdCxuKXt9LGE0NWI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJlZDI1Iil9LGIzYWM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJjN2ViIil9LGI1N2Y6ZnVuY3Rpb24oZSx0LG4pe30sYjZmMDpmdW5jdGlvbihlLHQsbil7fSxiY2EwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiMGY1NiIpfSxiZDk4OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiMTg2MSIpfSxjMDMwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiN2UxNiIpfSxjMzY0OmZ1bmN0aW9uKGUsdCxuKXt9LGM2MWU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJlYjZkIil9LGM3ZWI6ZnVuY3Rpb24oZSx0LG4pe30sY2I2ZDpmdW5jdGlvbihlLHQsbil7fSxjYjc2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiNzU4ZCIpfSxkMDIwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiZjg0NiIpfSxkMDZkOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiNmM5NiIpfSxkMmY3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiYzM2NCIpfSxkNzgyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiOGI0OCIpfSxkOGM4OmZ1bmN0aW9uKGUsdCxuKXt9LGRiYmI6ZnVuY3Rpb24oZSx0LG4pe30sZTI2YTpmdW5jdGlvbihlLHQsbil7fSxlNjk3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiMjk5YyIpfSxlYjZkOmZ1bmN0aW9uKGUsdCxuKXt9LGVkMjI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCI4NGFmIil9LGVkMjU6ZnVuY3Rpb24oZSx0LG4pe30sZjAzOTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24oImQ4YzgiKX0sZjg0NjpmdW5jdGlvbihlLHQsbil7fSxmYThjOmZ1bmN0aW9uKGUsdCxuKXt9LGZiMTU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtpZihuLnIodCksbi5kKHQsIlRhd2tBbGVydCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksbi5kKHQsIlRhd2tBdmF0YXIiLChmdW5jdGlvbigpe3JldHVybiBwfSkpLG4uZCh0LCJUYXdrQmFkZ2UiLChmdW5jdGlvbigpe3JldHVybiBmfSkpLG4uZCh0LCJUYXdrQnJhbmRpbmciLChmdW5jdGlvbigpe3JldHVybiBYfSkpLG4uZCh0LCJUYXdrQnV0dG9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gV30pKSxuLmQodCwiVGF3a0NhcmQiLChmdW5jdGlvbigpe3JldHVybiBLfSkpLG4uZCh0LCJUYXdrQ2hhdEJ1YmJsZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRlfSkpLG4uZCh0LCJUYXdrQ2hhdElucHV0IiwoZnVuY3Rpb24oKXtyZXR1cm4gRmV9KSksbi5kKHQsIlRhd2tDaGVja2JveCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHplfSkpLG4uZCh0LCJUYXdrRHJvcGRvd24iLChmdW5jdGlvbigpe3JldHVybiBWZX0pKSxuLmQodCwiVGF3a0Vtb2ppIiwoZnVuY3Rpb24oKXtyZXR1cm4gaWV9KSksbi5kKHQsIlRhd2tFbW9qaVBpY2tlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJlfSkpLG4uZCh0LCJUYXdrRmxhZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFllfSkpLG4uZCh0LCJUYXdrSWNvbiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGx9KSksbi5kKHQsIlRhd2tJbWFnZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEd9KSksbi5kKHQsIlRhd2tJbnB1dCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHNlfSkpLG4uZCh0LCJUYXdrTGlzdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEplfSkpLG4uZCh0LCJUYXdrTGlzdEl0ZW0iLChmdW5jdGlvbigpe3JldHVybiBHZX0pKSxuLmQodCwiVGF3a0xvYWRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGV0fSkpLG4uZCh0LCJUYXdrT3ZlcmxheSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG50fSkpLG4uZCh0LCJUYXdrUGhvbmVJbnB1dCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN0fSkpLG4uZCh0LCJUYXdrUmFkaW8iLChmdW5jdGlvbigpe3JldHVybiBjdH0pKSxuLmQodCwiVGF3a1JhdGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGR0fSkpLG4uZCh0LCJUYXdrU2VhcmNoIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ3R9KSksbi5kKHQsIlRhd2tUZXh0YXJlYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHl0fSkpLG4uZCh0LCJUYXdrVGltZWFnbyIsKGZ1bmN0aW9uKCl7cmV0dXJuIF90fSkpLG4uZCh0LCJUYXdrVmlkZW8iLChmdW5jdGlvbigpe3JldHVybiBafSkpLG4uZCh0LCJIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBNfSkpLG4uZCh0LCJUYXdrVG9vbHRpcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHFlfSkpLG4uZCh0LCJUYXdrU2Nyb2xsIiwoZnVuY3Rpb24oKXtyZXR1cm4gTWV9KSksInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpe3ZhciBpPXdpbmRvdy5kb2N1bWVudC5jdXJyZW50U2NyaXB0LHI9bigiODg3NSIpO2k9cigpLCJjdXJyZW50U2NyaXB0ImluIGRvY3VtZW50fHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZG9jdW1lbnQsImN1cnJlbnRTY3JpcHQiLHtnZXQ6cn0pO3ZhciBvPWkmJmkuc3JjLm1hdGNoKC8oLitcLylbXi9dK1wuanMoXD8uKik/JC8pO28mJihuLnA9b1sxXSl9dmFyIGE9e25hbWU6InRhd2staWNvbiIscHJvcHM6e3NpemU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LHR5cGU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiIscmVxdWlyZWQ6ITB9fX07ZnVuY3Rpb24gcyhlLHQsbixpLHIsbyxhLHMpe3ZhciBsLGM9ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZS5vcHRpb25zOmU7aWYodCYmKGMucmVuZGVyPXQsYy5zdGF0aWNSZW5kZXJGbnM9bixjLl9jb21waWxlZD0hMCksaSYmKGMuZnVuY3Rpb25hbD0hMCksbyYmKGMuX3Njb3BlSWQ9ImRhdGEtdi0iK28pLGE/KGw9ZnVuY3Rpb24oZSl7KGU9ZXx8dGhpcy4kdm5vZGUmJnRoaXMuJHZub2RlLnNzckNvbnRleHR8fHRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC4kdm5vZGUmJnRoaXMucGFyZW50LiR2bm9kZS5zc3JDb250ZXh0KXx8InVuZGVmaW5lZCI9PXR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9ffHwoZT1fX1ZVRV9TU1JfQ09OVEVYVF9fKSxyJiZyLmNhbGwodGhpcyxlKSxlJiZlLl9yZWdpc3RlcmVkQ29tcG9uZW50cyYmZS5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKGEpfSxjLl9zc3JSZWdpc3Rlcj1sKTpyJiYobD1zP2Z1bmN0aW9uKCl7ci5jYWxsKHRoaXMsKGMuZnVuY3Rpb25hbD90aGlzLnBhcmVudDp0aGlzKS4kcm9vdC4kb3B0aW9ucy5zaGFkb3dSb290KX06ciksbClpZihjLmZ1bmN0aW9uYWwpe2MuX2luamVjdFN0eWxlcz1sO3ZhciB1PWMucmVuZGVyO2MucmVuZGVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGwuY2FsbCh0KSx1KGUsdCl9fWVsc2V7dmFyIGQ9Yy5iZWZvcmVDcmVhdGU7Yy5iZWZvcmVDcmVhdGU9ZD9bXS5jb25jYXQoZCxsKTpbbF19cmV0dXJue2V4cG9ydHM6ZSxvcHRpb25zOmN9fW4oIjA1ZWUiKTt2YXIgbD1zKGEsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUoImkiLHQuX2codC5fYih7Y2xhc3M6WyJ0YXdrLWljb24iLCJ0YXdrLWljb24tIi5jb25jYXQodC5wcm9wcy50eXBlKSx0LnByb3BzLnNpemUmJiJ0YXdrLWljb24tIi5jb25jYXQodC5wcm9wcy5zaXplKSx0LmRhdGEuc3RhdGljQ2xhc3MsdC5kYXRhLmNsYXNzXSxzdHlsZTpbdC5kYXRhLnN0eWxlLHQuZGF0YS5zdGF0aWNTdHlsZV19LCJpIix0LmRhdGEuYXR0cnMsITEpLHQubGlzdGVuZXJzKSl9KSxbXSwhMCxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxjPXtuYW1lOiJ0YXdrLWFsZXJ0Iixjb21wb25lbnRzOntUYXdrSWNvbjpsfSxwcm9wczp7aWNvbjp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsLHJlcXVpcmVkOiExfSxkZXNjcmlwdGlvbjp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsLHJlcXVpcmVkOiEwfSxzdGF0dXM6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH0sdGl0bGU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbCxyZXF1aXJlZDohMH0saXNEaXNtaXNzYWJsZTp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzQXV0b0Rpc21pc3NhYmxlOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sZGlzbWlzc0NvdW50ZG93bjp7dHlwZTpOdW1iZXIsZGVmYXVsdDozZTN9LGlzTW9iaWxlOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sc2l6ZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57ZGlzbWlzczohMSxkaW1pc3NUaW1lb3V0Om51bGx9fSxjb21wdXRlZDp7ZGlzbWlzc2FibGVDbGFzczpmdW5jdGlvbigpe3JldHVyblsidGF3ay1jbG9zZSB0YXdrLWZsZXgiLHRoaXMuaXNNb2JpbGUmJiJ0YXdrLWlzTW9iaWxlIl19fSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIGU9dGhpczshMD09PXRoaXMuaXNBdXRvRGlzbWlzc2FibGUmJih0aGlzLmRpbWlzc1RpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLmRpc21pc3M9ITB9KSx0aGlzLmRpc21pc3NDb3VudGRvd24pKX0sbWV0aG9kczp7b25DbGljazpmdW5jdGlvbigpe3RoaXMuZGlzbWlzcz0hMH19LGJlZm9yZURlc3Ryb3k6ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodGhpcy5kaW1pc3NUaW1lb3V0KX19LHU9KG4oIjNiZTgiKSxzKGMsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoInRyYW5zaXRpb24iLHthdHRyczp7bmFtZToiYWxlcnQtZmFkZSJ9fSxbMD09ZS5kaXNtaXNzP3QoImRpdiIse2NsYXNzOlsidGF3ay1hbGVydCIsZS5zaXplPyJ0YXdrLWFsZXJ0LSIrZS5zaXplOiIiLGUuc3RhdHVzPyJ0YXdrLWFsZXJ0LSIuY29uY2F0KGUuc3RhdHVzKToiIl0sYXR0cnM6e3JvbGU6ImFsZXJ0In19LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUifSxbZS5pY29uP3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWFsZXJ0LWljb24ifSxbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ZS5pY29uLHNpemU6Im1lZGl1bSJ9fSldLDEpOmUuX2UoKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4tc21hbGwtbGVmdCJ9LFt0KCJwIix7c3RhdGljQ2xhc3M6InRhd2stYWxlcnQtdGl0bGUifSxbZS5fdigiICIrZS5fcyhlLnRpdGxlKSsiICIpXSksdCgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtcmVndWxhci0yIHRhd2stdGV4dC1ncmV5LTIgdGF3ay1hbGVydC1kZXNjcmlwdGlvbiJ9LFtlLl92KCIgIitlLl9zKGUuZGVzY3JpcHRpb24pKyIgIildKV0pXSksZS5pc0Rpc21pc3NhYmxlfHxlLmlzQXV0b0Rpc21pc3NhYmxlP3QoImJ1dHRvbiIse2NsYXNzOmUuZGlzbWlzc2FibGVDbGFzcyxhdHRyczp7ImFyaWEtbGFiZWwiOltlLiRpMThuP2UuJGkxOG4oIm5vdGlmaWNhdGlvbnMiLCJkaXNtaXNzX2FsZXJ0Iik6IkRpc21pc3MgQWxlcnQiXX0sb246e2NsaWNrOmUub25DbGlja319LFt0KCJzcGFuIildKTplLl9lKCldKTplLl9lKCldKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxkPXtuYW1lOiJ0YXdrLWF2YXRhciIscHJvcHM6e2NvdW50Ont0eXBlOk51bWJlcixkZWZhdWx0OjB9LHNpemU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH0sc3JjOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIvaW1hZ2VzL2RlZmF1bHQtcHJvZmlsZS5zdmcifX19LHA9KG4oImNiNzYiKSxzKGQsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUoImRpdiIsdC5fZyh7Y2xhc3M6WyJ0YXdrLWF2YXRhciIsdC5wcm9wcy5zaXplPyJ0YXdrLWF2YXRhci0iLmNvbmNhdCh0LnByb3BzLnNpemUpOiIiLHQuZGF0YS5zdGF0aWNDbGFzcyx0LmRhdGEuY2xhc3MsdC5wcm9wcy5jb3VudD8idGF3ay1hdmF0YXItY291bnQiOiIiXSxzdHlsZTpbdC5kYXRhLnN0eWxlLHQuZGF0YS5zdGF0aWNTdHlsZV19LHQubGlzdGVuZXJzKSxbdC5wcm9wcy5jb3VudD9lKCJzcGFuIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1ib2xkIn0sW3QuX3YoIiArIit0Ll9zKHQucHJvcHMuY291bnQ+OT85OnQucHJvcHMuY291bnQpKyIgIildKTplKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1hdmF0YXItaW1hZ2UifSxbZSgiaW1nIix0Ll9iKHthdHRyczp7c3JjOnQucHJvcHMuc3JjfX0sImltZyIsdC5kYXRhLmF0dHJzLCExKSldKV0pfSksW10sITAsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLGg9e25hbWU6InRhd2stYmFkZ2UiLHByb3BzOntjb3VudDp7dHlwZTpOdW1iZXIsZGVmYXVsdDowfX0saGFuZGxlQ291bnRlcjpmdW5jdGlvbihlKXt2YXIgdD0wO3JldHVybiBlPjAmJih0PWU+OT8iOSsiOmUpLHR9fSxmPShuKCJiZDk4IikscyhoLChmdW5jdGlvbihlLHQpe3JldHVybiBlKCJzcGFuIix0Ll9nKHQuX2Ioe3JlZjp0LmRhdGEucmVmLGNsYXNzOlsidGF3ay1iYWRnZSB0YXdrLWZsZXggdGF3ay1mbGV4LWNlbnRlciB0YXdrLWZsZXgtbWlkZGxlIix0LmRhdGEuY2xhc3MsdC5kYXRhLnN0YXRpY0NsYXNzXSxzdHlsZTpbdC5kYXRhLnN0eWxlLHQuZGF0YS5zdGF0aWNTdHlsZV19LCJzcGFuIix0LmRhdGEuYXR0cnMsITEpLHQubGlzdGVuZXJzKSxbdC5fdih0Ll9zKHQuJG9wdGlvbnMuaGFuZGxlQ291bnRlcih0LnByb3BzLmNvdW50KSkpXSl9KSxbXSwhMCxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHM7ZnVuY3Rpb24gZyhlKXtyZXR1cm4oZz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIG0oZSl7aWYoISgic3RyaW5nIj09dHlwZW9mIGV8fGUgaW5zdGFuY2VvZiBTdHJpbmcpKXt2YXIgdD1nKGUpO3Rocm93IG51bGw9PT1lP3Q9Im51bGwiOiJvYmplY3QiPT09dCYmKHQ9ZS5jb25zdHJ1Y3Rvci5uYW1lKSxuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIHN0cmluZyBidXQgcmVjZWl2ZWQgYSAiLmNvbmNhdCh0KSl9fWZ1bmN0aW9uIHkoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sdD1hcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMDtmb3IodmFyIG4gaW4gdCl2b2lkIDA9PT1lW25dJiYoZVtuXT10W25dKTtyZXR1cm4gZX12YXIgdj17aWdub3JlX3doaXRlc3BhY2U6ITF9O2Z1bmN0aW9uIGIoZSx0KXtyZXR1cm4gbShlKSwwPT09KCh0PXkodCx2KSkuaWdub3JlX3doaXRlc3BhY2U/ZS50cmltKCkubGVuZ3RoOmUubGVuZ3RoKX1mdW5jdGlvbiBfKGUpe3JldHVybihfPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ZnVuY3Rpb24gdyhlLHQpe3ZhciBuLGk7bShlKSwib2JqZWN0Ij09PV8odCk/KG49dC5taW58fDAsaT10Lm1heCk6KG49YXJndW1lbnRzWzFdLGk9YXJndW1lbnRzWzJdKTt2YXIgcj1lbmNvZGVVUkkoZSkuc3BsaXQoLyUuLnwuLykubGVuZ3RoLTE7cmV0dXJuIHI+PW4mJih2b2lkIDA9PT1pfHxyPD1pKX12YXIgaz17cmVxdWlyZV90bGQ6ITAsYWxsb3dfdW5kZXJzY29yZXM6ITEsYWxsb3dfdHJhaWxpbmdfZG90OiExLGFsbG93X251bWVyaWNfdGxkOiExLGFsbG93X3dpbGRjYXJkOiExLGlnbm9yZV9tYXhfbGVuZ3RoOiExfSxDPSIoPzpbMC05XXxbMS05XVswLTldfDFbMC05XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0pIix4PSIoIi5jb25jYXQoQywiWy5dKXszfSIpLmNvbmNhdChDKSxTPW5ldyBSZWdFeHAoIl4iLmNvbmNhdCh4LCIkIikpLEw9Iig/OlswLTlhLWZBLUZdezEsNH0pIixUPW5ldyBSZWdFeHAoIl4oIisiKD86Ii5jb25jYXQoTCwiOil7N30oPzoiKS5jb25jYXQoTCwifDopfCIpKyIoPzoiLmNvbmNhdChMLCI6KXs2fSg/OiIpLmNvbmNhdCh4LCJ8OiIpLmNvbmNhdChMLCJ8Oil8IikrIig/OiIuY29uY2F0KEwsIjopezV9KD86OiIpLmNvbmNhdCh4LCJ8KDoiKS5jb25jYXQoTCwiKXsxLDJ9fDopfCIpKyIoPzoiLmNvbmNhdChMLCI6KXs0fSg/Oig6IikuY29uY2F0KEwsIil7MCwxfToiKS5jb25jYXQoeCwifCg6IikuY29uY2F0KEwsIil7MSwzfXw6KXwiKSsiKD86Ii5jb25jYXQoTCwiOil7M30oPzooOiIpLmNvbmNhdChMLCIpezAsMn06IikuY29uY2F0KHgsInwoOiIpLmNvbmNhdChMLCIpezEsNH18Oil8IikrIig/OiIuY29uY2F0KEwsIjopezJ9KD86KDoiKS5jb25jYXQoTCwiKXswLDN9OiIpLmNvbmNhdCh4LCJ8KDoiKS5jb25jYXQoTCwiKXsxLDV9fDopfCIpKyIoPzoiLmNvbmNhdChMLCI6KXsxfSg/Oig6IikuY29uY2F0KEwsIil7MCw0fToiKS5jb25jYXQoeCwifCg6IikuY29uY2F0KEwsIil7MSw2fXw6KXwiKSsiKD86OigoPzo6Ii5jb25jYXQoTCwiKXswLDV9OiIpLmNvbmNhdCh4LCJ8KD86OiIpLmNvbmNhdChMLCIpezEsN318OikpIikrIikoJVswLTlhLXpBLVotLjpdezEsfSk/JCIpO2Z1bmN0aW9uIE8oZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOiIiO3JldHVybiBtKGUpLCh0PVN0cmluZyh0KSk/IjQiPT09dD9TLnRlc3QoZSk6IjYiPT09dCYmVC50ZXN0KGUpOk8oZSw0KXx8TyhlLDYpfXZhciBFPXthbGxvd19kaXNwbGF5X25hbWU6ITEsYWxsb3dfdW5kZXJzY29yZXM6ITEscmVxdWlyZV9kaXNwbGF5X25hbWU6ITEsYWxsb3dfdXRmOF9sb2NhbF9wYXJ0OiEwLHJlcXVpcmVfdGxkOiEwLGJsYWNrbGlzdGVkX2NoYXJzOiIiLGlnbm9yZV9tYXhfbGVuZ3RoOiExLGhvc3RfYmxhY2tsaXN0OltdLGhvc3Rfd2hpdGVsaXN0OltdfSxqPS9eKFteXHgwMC1ceDFGXHg3Ri1ceDlGXGNYXSspPC9pLFA9L15bYS16XGQhI1wkJSYnXCpcK1wtXC89XD9cXl9ge1x8fX5dKyQvaSxSPS9eW2EtelxkXSskLyxBPS9eKFtcc1x4MDEtXHgwOFx4MGJceDBjXHgwZS1ceDFmXHg3Zlx4MjFceDIzLVx4NWJceDVkLVx4N2VdfChcXFtceDAxLVx4MDlceDBiXHgwY1x4MGQtXHg3Zl0pKSokL2ksST0vXlthLXpcZCEjXCQlJidcKlwrXC1cLz1cP1xeX2B7XHx9flx1MDBBMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZFRl0rJC9pLCQ9L14oW1xzXHgwMS1ceDA4XHgwYlx4MGNceDBlLVx4MWZceDdmXHgyMVx4MjMtXHg1Ylx4NWQtXHg3ZVx1MDBBMC1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZFRl18KFxcW1x4MDEtXHgwOVx4MGJceDBjXHgwZC1ceDdmXHUwMEEwLVx1RDdGRlx1RjkwMC1cdUZEQ0ZcdUZERjAtXHVGRkVGXSkpKiQvaTtmdW5jdGlvbiBEKGUsdCl7aWYobShlKSwodD15KHQsRSkpLnJlcXVpcmVfZGlzcGxheV9uYW1lfHx0LmFsbG93X2Rpc3BsYXlfbmFtZSl7dmFyIG49ZS5tYXRjaChqKTtpZihuKXt2YXIgaT1uWzFdO2lmKGU9ZS5yZXBsYWNlKGksIiIpLnJlcGxhY2UoLyhePHw+JCkvZywiIiksaS5lbmRzV2l0aCgiICIpJiYoaT1pLnNsaWNlKDAsLTEpKSwhZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKC9eIiguKykiJC8sIiQxIik7aWYoIXQudHJpbSgpKXJldHVybiExO2lmKC9bXC4iOzw+XS8udGVzdCh0KSl7aWYodD09PWUpcmV0dXJuITE7aWYodC5zcGxpdCgnIicpLmxlbmd0aCE9PXQuc3BsaXQoJ1xcIicpLmxlbmd0aClyZXR1cm4hMX1yZXR1cm4hMH0oaSkpcmV0dXJuITF9ZWxzZSBpZih0LnJlcXVpcmVfZGlzcGxheV9uYW1lKXJldHVybiExfWlmKCF0Lmlnbm9yZV9tYXhfbGVuZ3RoJiZlLmxlbmd0aD4yNTQpcmV0dXJuITE7dmFyIHI9ZS5zcGxpdCgiQCIpLG89ci5wb3AoKSxhPW8udG9Mb3dlckNhc2UoKTtpZih0Lmhvc3RfYmxhY2tsaXN0LmluY2x1ZGVzKGEpKXJldHVybiExO2lmKHQuaG9zdF93aGl0ZWxpc3QubGVuZ3RoPjAmJiF0Lmhvc3Rfd2hpdGVsaXN0LmluY2x1ZGVzKGEpKXJldHVybiExO3ZhciBzPXIuam9pbigiQCIpO2lmKHQuZG9tYWluX3NwZWNpZmljX3ZhbGlkYXRpb24mJigiZ21haWwuY29tIj09PWF8fCJnb29nbGVtYWlsLmNvbSI9PT1hKSl7dmFyIGw9KHM9cy50b0xvd2VyQ2FzZSgpKS5zcGxpdCgiKyIpWzBdO2lmKCF3KGwucmVwbGFjZSgvXC4vZywiIikse21pbjo2LG1heDozMH0pKXJldHVybiExO2Zvcih2YXIgYz1sLnNwbGl0KCIuIiksdT0wO3U8Yy5sZW5ndGg7dSsrKWlmKCFSLnRlc3QoY1t1XSkpcmV0dXJuITF9aWYoISghMSE9PXQuaWdub3JlX21heF9sZW5ndGh8fHcocyx7bWF4OjY0fSkmJncobyx7bWF4OjI1NH0pKSlyZXR1cm4hMTtpZighZnVuY3Rpb24oZSx0KXttKGUpLCh0PXkodCxrKSkuYWxsb3dfdHJhaWxpbmdfZG90JiYiLiI9PT1lW2UubGVuZ3RoLTFdJiYoZT1lLnN1YnN0cmluZygwLGUubGVuZ3RoLTEpKSwhMD09PXQuYWxsb3dfd2lsZGNhcmQmJjA9PT1lLmluZGV4T2YoIiouIikmJihlPWUuc3Vic3RyaW5nKDIpKTt2YXIgbj1lLnNwbGl0KCIuIiksaT1uW24ubGVuZ3RoLTFdO2lmKHQucmVxdWlyZV90bGQpe2lmKG4ubGVuZ3RoPDIpcmV0dXJuITE7aWYoIXQuYWxsb3dfbnVtZXJpY190bGQmJiEvXihbYS16XHUwMEExLVx1MDBBOFx1MDBBQS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZFRl17Mix9fHhuW2EtejAtOS1dezIsfSkkL2kudGVzdChpKSlyZXR1cm4hMTtpZigvXHMvLnRlc3QoaSkpcmV0dXJuITF9cmV0dXJuISghdC5hbGxvd19udW1lcmljX3RsZCYmL15cZCskLy50ZXN0KGkpKSYmbi5ldmVyeSgoZnVuY3Rpb24oZSl7cmV0dXJuIShlLmxlbmd0aD42MyYmIXQuaWdub3JlX21heF9sZW5ndGh8fCEvXlthLXpfXHUwMGExLVx1ZmZmZjAtOS1dKyQvaS50ZXN0KGUpfHwvW1x1ZmYwMS1cdWZmNWVdLy50ZXN0KGUpfHwvXi18LSQvLnRlc3QoZSl8fCF0LmFsbG93X3VuZGVyc2NvcmVzJiYvXy8udGVzdChlKSl9KSl9KG8se3JlcXVpcmVfdGxkOnQucmVxdWlyZV90bGQsaWdub3JlX21heF9sZW5ndGg6dC5pZ25vcmVfbWF4X2xlbmd0aCxhbGxvd191bmRlcnNjb3Jlczp0LmFsbG93X3VuZGVyc2NvcmVzfSkpe2lmKCF0LmFsbG93X2lwX2RvbWFpbilyZXR1cm4hMTtpZighTyhvKSl7aWYoIW8uc3RhcnRzV2l0aCgiWyIpfHwhby5lbmRzV2l0aCgiXSIpKXJldHVybiExO3ZhciBkPW8uc2xpY2UoMSwtMSk7aWYoMD09PWQubGVuZ3RofHwhTyhkKSlyZXR1cm4hMX19aWYoJyInPT09c1swXSlyZXR1cm4gcz1zLnNsaWNlKDEscy5sZW5ndGgtMSksdC5hbGxvd191dGY4X2xvY2FsX3BhcnQ/JC50ZXN0KHMpOkEudGVzdChzKTtmb3IodmFyIHA9dC5hbGxvd191dGY4X2xvY2FsX3BhcnQ/STpQLGg9cy5zcGxpdCgiLiIpLGY9MDtmPGgubGVuZ3RoO2YrKylpZighcC50ZXN0KGhbZl0pKXJldHVybiExO3JldHVybiF0LmJsYWNrbGlzdGVkX2NoYXJzfHwtMT09PXMuc2VhcmNoKG5ldyBSZWdFeHAoIlsiLmNvbmNhdCh0LmJsYWNrbGlzdGVkX2NoYXJzLCJdKyIpLCJnIikpfWZ1bmN0aW9uIFEoZSl7cmV0dXJuKFE9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24oZSl7cmV0dXJuIHR5cGVvZiBlfTpmdW5jdGlvbihlKXtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmZS5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmZSE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9KShlKX12YXIgTT17aXNWYWxpZDpmdW5jdGlvbihlKXt2YXIgdD1lLnZhbHVlLG49dm9pZCAwPT09dD8iIjp0LGk9ZS50eXBlLHI9dm9pZCAwPT09aT8iIjppO2lmKCJlbWFpbCI9PT1yKXJldHVybiBEKG4se2FsbG93X2Rpc3BsYXlfbmFtZTohMSxyZXF1aXJlX2Rpc3BsYXlfbmFtZTohMSxhbGxvd191dGY4X2xvY2FsX3BhcnQ6ITAscmVxdWlyZV90bGQ6ITB9KSYmbi5sZW5ndGg8PTE1MD97aXNWYWxpZDohMCxtZXNzYWdlOiIifTp7aXNWYWxpZDohMSxtZXNzYWdlOiJJbnZhbGlkIGVtYWlsIGFkZHJlc3MifTtpZigibmFtZSI9PT1yKXJldHVybiBmdW5jdGlvbihlLHQpe3ZhciBuLGk7bShlKSwib2JqZWN0Ij09PVEodCk/KG49dC5taW58fDAsaT10Lm1heCk6KG49YXJndW1lbnRzWzFdfHwwLGk9YXJndW1lbnRzWzJdKTt2YXIgcj1lLm1hdGNoKC8oXHVGRTBGfFx1RkUwRSkvZyl8fFtdLG89ZS5tYXRjaCgvW1x1RDgwMC1cdURCRkZdW1x1REMwMC1cdURGRkZdL2cpfHxbXSxhPWUubGVuZ3RoLXIubGVuZ3RoLW8ubGVuZ3RoO3JldHVybiBhPj1uJiYodm9pZCAwPT09aXx8YTw9aSl9KG4se21pbjowLG1heDo0MH0pP3tpc1ZhbGlkOiEwLG1lc3NhZ2U6IiJ9Ontpc1ZhbGlkOiExLG1lc3NhZ2U6Ik11c3Qgbm90IGJlIGV4Y2VlZCBpbiA0MCBjaGFyYWN0ZXJzIn07aWYoInBob25lIj09PXIpcmV0dXJuIDA9PT1uLmxlbmd0aD97aXNWYWxpZDohMSxtZXNzYWdlOiJJbnZhbGlkIHBob25lIG51bWJlciBsZW5ndGgifTp7aXNWYWxpZDohMCxtZXNzYWdlOiIifTt0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgdHlwZSIpfSxpc0VtcHR5OmZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOiIiO3JldHVybiBiKGUpfSxnZW5lcmF0ZVVVSUQ6ZnVuY3Rpb24oKXt2YXIgZT0iYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiLHQ9ZVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZS5sZW5ndGgpXSxuPShuZXcgRGF0ZSkuZ2V0VGltZSgpO3JldHVybiIiLmNvbmNhdCh0KS5jb25jYXQoTWF0aC5yYW5kb20oKS50b1N0cmluZygzMikuc3Vic3RyaW5nKDIpKS5jb25jYXQobil9LGdlbmVyYXRlUmFuZG9tSW50OmZ1bmN0aW9uKCl7cmV0dXJuIE1hdGguZmxvb3IoMypNYXRoLnJhbmRvbSgpKzEpfSxjb252ZXJ0UGl4ZWxUb1JlbTpmdW5jdGlvbihlKXtyZXR1cm4gMS8xNiplfX0sTj1be2xhYmVsOiJBZmdoYW5pc3RhbiIsdmFsdWU6ImFmIixkaWFsQ29kZToiOTMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQWxiYW5pYSIsdmFsdWU6ImFsIixkaWFsQ29kZToiMzU1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkFsZ2VyaWEiLHZhbHVlOiJkeiIsZGlhbENvZGU6IjIxMyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJBbWVyaWNhbiBTYW1vYSIsdmFsdWU6ImFzIixkaWFsQ29kZToiMSIscHJpb3JpdHk6NSxhcmVhQ29kZXM6WyI2ODQiXX0se2xhYmVsOiJBbmRvcnJhIix2YWx1ZToiYWQiLGRpYWxDb2RlOiIzNzYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQW5nb2xhIix2YWx1ZToiYW8iLGRpYWxDb2RlOiIyNDQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQW5ndWlsbGEiLHZhbHVlOiJhaSIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjYsYXJlYUNvZGVzOlsiMjY0Il19LHtsYWJlbDoiQW50aWd1YSBBbmQgQmFyYnVkYSIsdmFsdWU6ImFnIixkaWFsQ29kZToiMSIscHJpb3JpdHk6NyxhcmVhQ29kZXM6WyIyNjgiXX0se2xhYmVsOiJBcmdlbnRpbmEiLHZhbHVlOiJhciIsZGlhbENvZGU6IjU0Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkFybWVuaWEiLHZhbHVlOiJhbSIsZGlhbENvZGU6IjM3NCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJBcnViYSIsdmFsdWU6ImF3IixkaWFsQ29kZToiMjk3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkFydWJhIix2YWx1ZToiYWMiLGRpYWxDb2RlOiIyNDciLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQXVzdHJhbGlhIix2YWx1ZToiYXUiLGRpYWxDb2RlOiI2MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJBdXN0cmlhIix2YWx1ZToiYXQiLGRpYWxDb2RlOiI0MyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJBemVyYmFpamFuIix2YWx1ZToiYXoiLGRpYWxDb2RlOiI5OTQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQmFoYW1hcyIsdmFsdWU6ImJzIixkaWFsQ29kZToiMSIscHJpb3JpdHk6OCxhcmVhQ29kZXM6WyIyNDIiXX0se2xhYmVsOiJCYWhyYWluIix2YWx1ZToiYmgiLGRpYWxDb2RlOiI5NzMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQmFuZ2xhZGVzaCIsdmFsdWU6ImJkIixkaWFsQ29kZToiODgwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJhcmJhZG9zIix2YWx1ZToiYmIiLGRpYWxDb2RlOiIxIixwcmlvcml0eTo5LGFyZWFDb2RlczpbIjI0NiJdfSx7bGFiZWw6IkJlbGFydXMiLHZhbHVlOiJieSIsZGlhbENvZGU6IjM3NSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJCZWxnaXVtIix2YWx1ZToiYmUiLGRpYWxDb2RlOiIzMiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJCZWxpemUiLHZhbHVlOiJieiIsZGlhbENvZGU6IjUwMSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJCZW5pbiIsdmFsdWU6ImJqIixkaWFsQ29kZToiMjI5Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJlcm11ZGEiLHZhbHVlOiJibSIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjEwLGFyZWFDb2RlczpbIjQ0MSJdfSx7bGFiZWw6IkJodXRhbiIsdmFsdWU6ImJ0IixkaWFsQ29kZToiOTc1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJvbGl2aWEsIFBsdXJpbmF0aW9uYWwgU3RhdGUgT2YiLHZhbHVlOiJibyIsZGlhbENvZGU6IjU5MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJCb3NuaWEgQW5kIEhlcnplZ292aW5hIix2YWx1ZToiYmEiLGRpYWxDb2RlOiIzODciLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQm90c3dhbmEiLHZhbHVlOiJidyIsZGlhbENvZGU6IjI2NyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJCcmF6aWwiLHZhbHVlOiJiciIsZGlhbENvZGU6IjU1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJyaXRpc2ggSW5kaWFuIE9jZWFuIFRlcnJpdG9yeSIsdmFsdWU6ImlvIixkaWFsQ29kZToiMjQ2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlZpcmdpbiBJc2xhbmRzLCBCcml0aXNoIix2YWx1ZToidmciLGRpYWxDb2RlOiIxIixwcmlvcml0eToxMSxhcmVhQ29kZXM6WyIyODQiXX0se2xhYmVsOiJCcnVuZWkgRGFydXNzYWxhbSIsdmFsdWU6ImJuIixkaWFsQ29kZToiNjczIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJ1bGdhcmlhIix2YWx1ZToiYmciLGRpYWxDb2RlOiIzNTkiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQnVya2luYSBGYXNvIix2YWx1ZToiYmYiLGRpYWxDb2RlOiIyMjYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQnVydW5kaSIsdmFsdWU6ImJpIixkaWFsQ29kZToiMjU3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkNhbWJvZGlhIix2YWx1ZToia2giLGRpYWxDb2RlOiI4NTUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ2FtZXJvb24iLHZhbHVlOiJjbSIsZGlhbENvZGU6IjIzNyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDYW5hZGEiLHZhbHVlOiJjYSIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjEsYXJlYUNvZGVzOlsiMjA0IiwiMjI2IiwiMjM2IiwiMjQ5IiwiMjUwIiwiMjg5IiwiMzA2IiwiMzQzIiwiMzY1IiwiMzg3IiwiNDAzIiwiNDE2IiwiNDE4IiwiNDMxIiwiNDM3IiwiNDM4IiwiNDUwIiwiNTA2IiwiNTE0IiwiNTE5IiwiNTQ4IiwiNTc5IiwiNTgxIiwiNTg3IiwiNjA0IiwiNjEzIiwiNjM5IiwiNjQ3IiwiNjcyIiwiNzA1IiwiNzA5IiwiNzQyIiwiNzc4IiwiNzgwIiwiNzgyIiwiODA3IiwiODE5IiwiODI1IiwiODY3IiwiODczIiwiOTAyIiwiOTA1Il19LHtsYWJlbDoiQ2FwZSBWZXJkZSIsdmFsdWU6ImN2IixkaWFsQ29kZToiMjM4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkJvbmFpcmUsIFNpbnQgRXVzdGF0aXVzIEFuZCBTYWJhIix2YWx1ZToiYnEiLGRpYWxDb2RlOiI1OTkiLHByaW9yaXR5OjEsYXJlYUNvZGVzOlsiMyIsIjQiLCI3Il19LHtsYWJlbDoiQ2F5bWFuIElzbGFuZHMiLHZhbHVlOiJreSIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjEyLGFyZWFDb2RlczpbIjM0NSJdfSx7bGFiZWw6IkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyIsdmFsdWU6ImNmIixkaWFsQ29kZToiMjM2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkNoYWQiLHZhbHVlOiJ0ZCIsZGlhbENvZGU6IjIzNSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDaGlsZSIsdmFsdWU6ImNsIixkaWFsQ29kZToiNTYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ2hpbmEiLHZhbHVlOiJjbiIsZGlhbENvZGU6Ijg2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkNocmlzdG1hcyBJc2xhbmQiLHZhbHVlOiJjeCIsZGlhbENvZGU6IjYxIixwcmlvcml0eToyLGFyZWFDb2RlczpbIjg5MTY0Il19LHtsYWJlbDoiQ29jb3MgKEtlZWxpbmcpIElzbGFuZHMiLHZhbHVlOiJjYyIsZGlhbENvZGU6IjYxIixwcmlvcml0eToxLGFyZWFDb2RlczpbIjg5MTYyIl19LHtsYWJlbDoiQ29sb21iaWEiLHZhbHVlOiJjbyIsZGlhbENvZGU6IjU3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkNvbW9yb3MiLHZhbHVlOiJrbSIsZGlhbENvZGU6IjI2OSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDb25nbywgVGhlIERlbW9jcmF0aWMgUmVwdWJsaWMgT2YgVGhlIix2YWx1ZToiY2QiLGRpYWxDb2RlOiIyNDMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ29uZ28iLHZhbHVlOiJjZyIsZGlhbENvZGU6IjI0MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDb29rIElzbGFuZHMiLHZhbHVlOiJjayIsZGlhbENvZGU6IjY4MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDb3N0YSBSaWNhIix2YWx1ZToiY3IiLGRpYWxDb2RlOiI1MDYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ8O0VGUgRCdJdm9pcmUiLHZhbHVlOiJjaSIsZGlhbENvZGU6IjIyNSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDcm9hdGlhIix2YWx1ZToiaHIiLGRpYWxDb2RlOiIzODUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ3ViYSIsdmFsdWU6ImN1IixkaWFsQ29kZToiNTMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiQ3VyYcOnQW8iLHZhbHVlOiJjdyIsZGlhbENvZGU6IjU5OSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDeXBydXMiLHZhbHVlOiJjeSIsZGlhbENvZGU6IjM1NyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJDemVjaCBSZXB1YmxpYyIsdmFsdWU6ImN6IixkaWFsQ29kZToiNDIwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkRlbm1hcmsiLHZhbHVlOiJkayIsZGlhbENvZGU6IjQ1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkRqaWJvdXRpIix2YWx1ZToiZGoiLGRpYWxDb2RlOiIyNTMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRG9taW5pY2EiLHZhbHVlOiJkbSIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjEzLGFyZWFDb2RlczpbIjc2NyJdfSx7bGFiZWw6IkRvbWluaWNhbiBSZXB1YmxpYyIsdmFsdWU6ImRvIixkaWFsQ29kZToiMSIscHJpb3JpdHk6MixhcmVhQ29kZXM6WyI4MDkiLCI4MjkiLCI4NDkiXX0se2xhYmVsOiJFY3VhZG9yIix2YWx1ZToiZWMiLGRpYWxDb2RlOiI1OTMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRWd5cHQiLHZhbHVlOiJlZyIsZGlhbENvZGU6IjIwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkVsIFNhbHZhZG9yIix2YWx1ZToic3YiLGRpYWxDb2RlOiI1MDMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRXF1YXRvcmlhbCBHdWluZWEiLHZhbHVlOiJncSIsZGlhbENvZGU6IjI0MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJFcml0cmVhIix2YWx1ZToiZXIiLGRpYWxDb2RlOiIyOTEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRXN0b25pYSIsdmFsdWU6ImVlIixkaWFsQ29kZToiMzcyIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlN3YXppbGFuZCIsdmFsdWU6InN6IixkaWFsQ29kZToiMjY4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkV0aGlvcGlhIix2YWx1ZToiZXQiLGRpYWxDb2RlOiIyNTEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRmFsa2xhbmQgSXNsYW5kcyAoTWFsdmluYXMpIix2YWx1ZToiZmsiLGRpYWxDb2RlOiI1MDAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRmFyb2UgSXNsYW5kcyIsdmFsdWU6ImZvIixkaWFsQ29kZToiMjk4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkZpamkiLHZhbHVlOiJmaiIsZGlhbENvZGU6IjY3OSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJGaW5sYW5kIix2YWx1ZToiZmkiLGRpYWxDb2RlOiIzNTgiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRnJhbmNlIix2YWx1ZToiZnIiLGRpYWxDb2RlOiIzMyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJGcmVuY2ggR3VpYW5hIix2YWx1ZToiZ2YiLGRpYWxDb2RlOiI1OTQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiRnJlbmNoIFBvbHluZXNpYSIsdmFsdWU6InBmIixkaWFsQ29kZToiNjg5Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkdhYm9uIix2YWx1ZToiZ2EiLGRpYWxDb2RlOiIyNDEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR2FtYmlhIix2YWx1ZToiZ20iLGRpYWxDb2RlOiIyMjAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR2VvcmdpYSIsdmFsdWU6ImdlIixkaWFsQ29kZToiOTk1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ikdlcm1hbnkiLHZhbHVlOiJkZSIsZGlhbENvZGU6IjQ5Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkdoYW5hIix2YWx1ZToiZ2giLGRpYWxDb2RlOiIyMzMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR2licmFsdGFyIix2YWx1ZToiZ2kiLGRpYWxDb2RlOiIzNTAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR3JlZWNlIix2YWx1ZToiZ3IiLGRpYWxDb2RlOiIzMCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJHcmVlbmxhbmQiLHZhbHVlOiJnbCIsZGlhbENvZGU6IjI5OSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJHcmVuYWRhIix2YWx1ZToiZ2QiLGRpYWxDb2RlOiIxIixwcmlvcml0eToxNCxhcmVhQ29kZXM6WyI0NzMiXX0se2xhYmVsOiJHdWFkZWxvdXBlIix2YWx1ZToiZ3AiLGRpYWxDb2RlOiI1OTAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR3VhbSIsdmFsdWU6Imd1IixkaWFsQ29kZToiMSIscHJpb3JpdHk6MTUsYXJlYUNvZGVzOlsiNjcxIl19LHtsYWJlbDoiR3VhdGVtYWxhIix2YWx1ZToiZ3QiLGRpYWxDb2RlOiI1MDIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR3Vlcm5zZXkiLHZhbHVlOiJnZyIsZGlhbENvZGU6IjQ0Iixwcmlvcml0eToxLGFyZWFDb2RlczpbIjE0ODEiLCI3NzgxIiwiNzgzOSIsIjc5MTEiXX0se2xhYmVsOiJHdWluZWEiLHZhbHVlOiJnbiIsZGlhbENvZGU6IjIyNCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJHdWluZWEtQmlzc2F1Iix2YWx1ZToiZ3ciLGRpYWxDb2RlOiIyNDUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiR3V5YW5hIix2YWx1ZToiZ3kiLGRpYWxDb2RlOiI1OTIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSGFpdGkiLHZhbHVlOiJodCIsZGlhbENvZGU6IjUwOSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJIb25kdXJhcyIsdmFsdWU6ImhuIixkaWFsQ29kZToiNTA0Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkhvbmcgS29uZyIsdmFsdWU6ImhrIixkaWFsQ29kZToiODUyIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ikh1bmdhcnkiLHZhbHVlOiJodSIsZGlhbENvZGU6IjM2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkljZWxhbmQiLHZhbHVlOiJpcyIsZGlhbENvZGU6IjM1NCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJJbmRpYSIsdmFsdWU6ImluIixkaWFsQ29kZToiOTEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSW5kb25lc2lhIix2YWx1ZToiaWQiLGRpYWxDb2RlOiI2MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJJcmFuLCBJc2xhbWljIFJlcHVibGljIE9mIix2YWx1ZToiaXIiLGRpYWxDb2RlOiI5OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJJcmFxIix2YWx1ZToiaXEiLGRpYWxDb2RlOiI5NjQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSXJlbGFuZCIsdmFsdWU6ImllIixkaWFsQ29kZToiMzUzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IklzbGUgT2YgTWFuIix2YWx1ZToiaW0iLGRpYWxDb2RlOiI0NCIscHJpb3JpdHk6MixhcmVhQ29kZXM6WyIxNjI0IiwiNzQ1NzYiLCI3NTI0IiwiNzkyNCIsIjc2MjQiXX0se2xhYmVsOiJJc3JhZWwiLHZhbHVlOiJpbCIsZGlhbENvZGU6Ijk3MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJJdGFseSIsdmFsdWU6Iml0IixkaWFsQ29kZToiMzkiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSmFtYWljYSIsdmFsdWU6ImptIixkaWFsQ29kZToiMSIscHJpb3JpdHk6NCxhcmVhQ29kZXM6WyI4NzYiLCI2NTgiXX0se2xhYmVsOiJKYXBhbiIsdmFsdWU6ImpwIixkaWFsQ29kZToiODEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSmVyc2V5Iix2YWx1ZToiamUiLGRpYWxDb2RlOiI0NCIscHJpb3JpdHk6MyxhcmVhQ29kZXM6WyIxNTM0IiwiNzUwOSIsIjc3MDAiLCI3Nzk3IiwiNzgyOSIsIjc5MzciXX0se2xhYmVsOiJKb3JkYW4iLHZhbHVlOiJqbyIsZGlhbENvZGU6Ijk2MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJLYXpha2hzdGFuIix2YWx1ZToia3oiLGRpYWxDb2RlOiI3Iixwcmlvcml0eToxLGFyZWFDb2RlczpbIjMzIiwiNyJdfSx7bGFiZWw6IktlbnlhIix2YWx1ZToia2UiLGRpYWxDb2RlOiIyNTQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiS2lyaWJhdGkiLHZhbHVlOiJraSIsZGlhbENvZGU6IjY4NiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJLaXJpYmF0aSIsdmFsdWU6InhrIixkaWFsQ29kZToiMzgzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ikt1d2FpdCIsdmFsdWU6Imt3IixkaWFsQ29kZToiOTY1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ikt5cmd5enN0YW4iLHZhbHVlOiJrZyIsZGlhbENvZGU6Ijk5NiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJMYW8gUGVvcGxlJ1MgRGVtb2NyYXRpYyBSZXB1YmxpYyIsdmFsdWU6ImxhIixkaWFsQ29kZToiODU2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkxhdHZpYSIsdmFsdWU6Imx2IixkaWFsQ29kZToiMzcxIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkxlYmFub24iLHZhbHVlOiJsYiIsZGlhbENvZGU6Ijk2MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJMZXNvdGhvIix2YWx1ZToibHMiLGRpYWxDb2RlOiIyNjYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTGliZXJpYSIsdmFsdWU6ImxyIixkaWFsQ29kZToiMjMxIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkxpYnlhIix2YWx1ZToibHkiLGRpYWxDb2RlOiIyMTgiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTGllY2h0ZW5zdGVpbiIsdmFsdWU6ImxpIixkaWFsQ29kZToiNDIzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IkxpdGh1YW5pYSIsdmFsdWU6Imx0IixkaWFsQ29kZToiMzcwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ikx1eGVtYm91cmciLHZhbHVlOiJsdSIsZGlhbENvZGU6IjM1MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYWNhbyIsdmFsdWU6Im1vIixkaWFsQ29kZToiODUzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik1hY2Vkb25pYSwgVGhlIEZvcm1lciBZdWdvc2xhdiBSZXB1YmxpYyBPZiIsdmFsdWU6Im1rIixkaWFsQ29kZToiMzg5Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik1hZGFnYXNjYXIiLHZhbHVlOiJtZyIsZGlhbENvZGU6IjI2MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYWxhd2kiLHZhbHVlOiJtdyIsZGlhbENvZGU6IjI2NSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYWxheXNpYSIsdmFsdWU6Im15IixkaWFsQ29kZToiNjAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTWFsZGl2ZXMiLHZhbHVlOiJtdiIsZGlhbENvZGU6Ijk2MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYWxpIix2YWx1ZToibWwiLGRpYWxDb2RlOiIyMjMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTWFsdGEiLHZhbHVlOiJtdCIsZGlhbENvZGU6IjM1NiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYXJzaGFsbCBJc2xhbmRzIix2YWx1ZToibWgiLGRpYWxDb2RlOiI2OTIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTWFydGluaXF1ZSIsdmFsdWU6Im1xIixkaWFsQ29kZToiNTk2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik1hdXJpdGFuaWEiLHZhbHVlOiJtciIsZGlhbENvZGU6IjIyMiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYXVyaXRpdXMiLHZhbHVlOiJtdSIsZGlhbENvZGU6IjIzMCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNYXlvdHRlIix2YWx1ZToieXQiLGRpYWxDb2RlOiIyNjIiLHByaW9yaXR5OjEsYXJlYUNvZGVzOlsiMjY5IiwiNjM5Il19LHtsYWJlbDoiTWV4aWNvIix2YWx1ZToibXgiLGRpYWxDb2RlOiI1MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNaWNyb25lc2lhLCBGZWRlcmF0ZWQgU3RhdGVzIE9mIix2YWx1ZToiZm0iLGRpYWxDb2RlOiI2OTEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTW9sZG92YSwgUmVwdWJsaWMgT2YiLHZhbHVlOiJtZCIsZGlhbENvZGU6IjM3MyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNb25hY28iLHZhbHVlOiJtYyIsZGlhbENvZGU6IjM3NyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNb25nb2xpYSIsdmFsdWU6Im1uIixkaWFsQ29kZToiOTc2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik1vbnRlbmVncm8iLHZhbHVlOiJtZSIsZGlhbENvZGU6IjM4MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJNb250c2VycmF0Iix2YWx1ZToibXMiLGRpYWxDb2RlOiIxIixwcmlvcml0eToxNixhcmVhQ29kZXM6WyI2NjQiXX0se2xhYmVsOiJNb3JvY2NvIix2YWx1ZToibWEiLGRpYWxDb2RlOiIyMTIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTW96YW1iaXF1ZSIsdmFsdWU6Im16IixkaWFsQ29kZToiMjU4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik15YW5tYXIiLHZhbHVlOiJtbSIsZGlhbENvZGU6Ijk1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik5hbWliaWEiLHZhbHVlOiJuYSIsZGlhbENvZGU6IjI2NCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJOYXVydSIsdmFsdWU6Im5yIixkaWFsQ29kZToiNjc0Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik5lcGFsIix2YWx1ZToibnAiLGRpYWxDb2RlOiI5NzciLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTmV0aGVybGFuZHMiLHZhbHVlOiJubCIsZGlhbENvZGU6IjMxIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik5ldyBDYWxlZG9uaWEiLHZhbHVlOiJuYyIsZGlhbENvZGU6IjY4NyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJOZXcgWmVhbGFuZCIsdmFsdWU6Im56IixkaWFsQ29kZToiNjQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTmljYXJhZ3VhIix2YWx1ZToibmkiLGRpYWxDb2RlOiI1MDUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTmlnZXIiLHZhbHVlOiJuZSIsZGlhbENvZGU6IjIyNyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJOaWdlcmlhIix2YWx1ZToibmciLGRpYWxDb2RlOiIyMzQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiTml1ZSIsdmFsdWU6Im51IixkaWFsQ29kZToiNjgzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6Ik5vcmZvbGsgSXNsYW5kIix2YWx1ZToibmYiLGRpYWxDb2RlOiI2NzIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiS29yZWEsIERlbW9jcmF0aWMgUGVvcGxlJ1MgUmVwdWJsaWMgT2YiLHZhbHVlOiJrcCIsZGlhbENvZGU6Ijg1MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJOb3J0aGVybiBNYXJpYW5hIElzbGFuZHMiLHZhbHVlOiJtcCIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjE3LGFyZWFDb2RlczpbIjY3MCJdfSx7bGFiZWw6Ik5vcndheSIsdmFsdWU6Im5vIixkaWFsQ29kZToiNDciLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiT21hbiIsdmFsdWU6Im9tIixkaWFsQ29kZToiOTY4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlBha2lzdGFuIix2YWx1ZToicGsiLGRpYWxDb2RlOiI5MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQYWxhdSIsdmFsdWU6InB3IixkaWFsQ29kZToiNjgwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlBhbGVzdGluZSwgU3RhdGUgT2YiLHZhbHVlOiJwcyIsZGlhbENvZGU6Ijk3MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQYW5hbWEiLHZhbHVlOiJwYSIsZGlhbENvZGU6IjUwNyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQYXB1YSBOZXcgR3VpbmVhIix2YWx1ZToicGciLGRpYWxDb2RlOiI2NzUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiUGFyYWd1YXkiLHZhbHVlOiJweSIsZGlhbENvZGU6IjU5NSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQZXJ1Iix2YWx1ZToicGUiLGRpYWxDb2RlOiI1MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQaGlsaXBwaW5lcyIsdmFsdWU6InBoIixkaWFsQ29kZToiNjMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiUG9sYW5kIix2YWx1ZToicGwiLGRpYWxDb2RlOiI0OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJQb3J0dWdhbCIsdmFsdWU6InB0IixkaWFsQ29kZToiMzUxIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlB1ZXJ0byBSaWNvIix2YWx1ZToicHIiLGRpYWxDb2RlOiIxIixwcmlvcml0eTozLGFyZWFDb2RlczpbIjc4NyIsIjkzOSJdfSx7bGFiZWw6IlFhdGFyIix2YWx1ZToicWEiLGRpYWxDb2RlOiI5NzQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiUsOpVW5pb24iLHZhbHVlOiJyZSIsZGlhbENvZGU6IjI2MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJSb21hbmlhIix2YWx1ZToicm8iLGRpYWxDb2RlOiI0MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJSdXNzaWFuIEZlZGVyYXRpb24iLHZhbHVlOiJydSIsZGlhbENvZGU6IjciLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiUndhbmRhIix2YWx1ZToicnciLGRpYWxDb2RlOiIyNTAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU2FpbnQgQmFydGjDqUxlbXkiLHZhbHVlOiJibCIsZGlhbENvZGU6IjU5MCIscHJpb3JpdHk6MSxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTYWludCBIZWxlbmEsIEFzY2Vuc2lvbiBBbmQgVHJpc3RhbiBEYSBDdW5oYSIsdmFsdWU6InNoIixkaWFsQ29kZToiMjkwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNhaW50IEtpdHRzIEFuZCBOZXZpcyIsdmFsdWU6ImtuIixkaWFsQ29kZToiMSIscHJpb3JpdHk6MTgsYXJlYUNvZGVzOlsiODY5Il19LHtsYWJlbDoiU2FpbnQgTHVjaWEiLHZhbHVlOiJsYyIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjE5LGFyZWFDb2RlczpbIjc1OCJdfSx7bGFiZWw6IlNhaW50IE1hcnRpbiAoRnJlbmNoIFBhcnQpIix2YWx1ZToibWYiLGRpYWxDb2RlOiI1OTAiLHByaW9yaXR5OjIsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU2FpbnQgUGllcnJlIEFuZCBNaXF1ZWxvbiIsdmFsdWU6InBtIixkaWFsQ29kZToiNTA4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNhaW50IFZpbmNlbnQgQW5kIFRoZSBHcmVuYWRpbmVzIix2YWx1ZToidmMiLGRpYWxDb2RlOiIxIixwcmlvcml0eToyMCxhcmVhQ29kZXM6WyI3ODQiXX0se2xhYmVsOiJTYW1vYSIsdmFsdWU6IndzIixkaWFsQ29kZToiNjg1Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNhbiBNYXJpbm8iLHZhbHVlOiJzbSIsZGlhbENvZGU6IjM3OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTYW8gVG9tZSBBbmQgUHJpbmNpcGUiLHZhbHVlOiJzdCIsZGlhbENvZGU6IjIzOSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTYXVkaSBBcmFiaWEiLHZhbHVlOiJzYSIsZGlhbENvZGU6Ijk2NiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTZW5lZ2FsIix2YWx1ZToic24iLGRpYWxDb2RlOiIyMjEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU2VyYmlhIix2YWx1ZToicnMiLGRpYWxDb2RlOiIzODEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU2V5Y2hlbGxlcyIsdmFsdWU6InNjIixkaWFsQ29kZToiMjQ4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNpZXJyYSBMZW9uZSIsdmFsdWU6InNsIixkaWFsQ29kZToiMjMyIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNpbmdhcG9yZSIsdmFsdWU6InNnIixkaWFsQ29kZToiNjUiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU2ludCBNYWFydGVuIChEdXRjaCBQYXJ0KSIsdmFsdWU6InN4IixkaWFsQ29kZToiMSIscHJpb3JpdHk6MjEsYXJlYUNvZGVzOlsiNzIxIl19LHtsYWJlbDoiU2xvdmFraWEiLHZhbHVlOiJzayIsZGlhbENvZGU6IjQyMSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTbG92ZW5pYSIsdmFsdWU6InNpIixkaWFsQ29kZToiMzg2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNvbG9tb24gSXNsYW5kcyIsdmFsdWU6InNiIixkaWFsQ29kZToiNjc3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlNvbWFsaWEiLHZhbHVlOiJzbyIsZGlhbENvZGU6IjI1MiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTb3V0aCBBZnJpY2EiLHZhbHVlOiJ6YSIsZGlhbENvZGU6IjI3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IktvcmVhLCBSZXB1YmxpYyBPZiIsdmFsdWU6ImtyIixkaWFsQ29kZToiODIiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU291dGggU3VkYW4iLHZhbHVlOiJzcyIsZGlhbENvZGU6IjIxMSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTcGFpbiIsdmFsdWU6ImVzIixkaWFsQ29kZToiMzQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU3JpIExhbmthIix2YWx1ZToibGsiLGRpYWxDb2RlOiI5NCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTdWRhbiIsdmFsdWU6InNkIixkaWFsQ29kZToiMjQ5Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlN1cml2YWx1ZSIsdmFsdWU6InNyIixkaWFsQ29kZToiNTk3Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlN2YWxiYXJkIEFuZCBKYW4gTWF5ZW4iLHZhbHVlOiJzaiIsZGlhbENvZGU6IjQ3Iixwcmlvcml0eToxLGFyZWFDb2RlczpbIjc5Il19LHtsYWJlbDoiU3dlZGVuIix2YWx1ZToic2UiLGRpYWxDb2RlOiI0NiIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJTd2l0emVybGFuZCIsdmFsdWU6ImNoIixkaWFsQ29kZToiNDEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiU3lyaWFuIEFyYWIgUmVwdWJsaWMiLHZhbHVlOiJzeSIsZGlhbENvZGU6Ijk2MyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJUYWl3YW4sIFByb3ZpbmNlIE9mIENoaW5hIix2YWx1ZToidHciLGRpYWxDb2RlOiI4ODYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVGFqaWtpc3RhbiIsdmFsdWU6InRqIixkaWFsQ29kZToiOTkyIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlRhbnphbmlhLCBVbml0ZWQgUmVwdWJsaWMgT2YiLHZhbHVlOiJ0eiIsZGlhbENvZGU6IjI1NSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJUaGFpbGFuZCIsdmFsdWU6InRoIixkaWFsQ29kZToiNjYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVGltb3ItTGVzdGUiLHZhbHVlOiJ0bCIsZGlhbENvZGU6IjY3MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJUb2dvIix2YWx1ZToidGciLGRpYWxDb2RlOiIyMjgiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVG9rZWxhdSIsdmFsdWU6InRrIixkaWFsQ29kZToiNjkwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlRvbmdhIix2YWx1ZToidG8iLGRpYWxDb2RlOiI2NzYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVHJpbmlkYWQgQW5kIFRvYmFnbyIsdmFsdWU6InR0IixkaWFsQ29kZToiMSIscHJpb3JpdHk6MjIsYXJlYUNvZGVzOlsiODY4Il19LHtsYWJlbDoiVHVuaXNpYSIsdmFsdWU6InRuIixkaWFsQ29kZToiMjE2Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlR1cmtleSIsdmFsdWU6InRyIixkaWFsQ29kZToiOTAiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVHVya21lbmlzdGFuIix2YWx1ZToidG0iLGRpYWxDb2RlOiI5OTMiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVHVya3MgQW5kIENhaWNvcyBJc2xhbmRzIix2YWx1ZToidGMiLGRpYWxDb2RlOiIxIixwcmlvcml0eToyMyxhcmVhQ29kZXM6WyI2NDkiXX0se2xhYmVsOiJUdXZhbHUiLHZhbHVlOiJ0diIsZGlhbENvZGU6IjY4OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJWaXJnaW4gSXNsYW5kcywgVS5TLiIsdmFsdWU6InZpIixkaWFsQ29kZToiMSIscHJpb3JpdHk6MjQsYXJlYUNvZGVzOlsiMzQwIl19LHtsYWJlbDoiVWdhbmRhIix2YWx1ZToidWciLGRpYWxDb2RlOiIyNTYiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVWtyYWluZSIsdmFsdWU6InVhIixkaWFsQ29kZToiMzgwIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlVuaXRlZCBBcmFiIEVtaXJhdGVzIix2YWx1ZToiYWUiLGRpYWxDb2RlOiI5NzEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVW5pdGVkIEtpbmdkb20iLHZhbHVlOiJnYiIsZGlhbENvZGU6IjQ0Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlVuaXRlZCBTdGF0ZXMiLHZhbHVlOiJ1cyIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiVXJ1Z3VheSIsdmFsdWU6InV5IixkaWFsQ29kZToiNTk4Iixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IlV6YmVraXN0YW4iLHZhbHVlOiJ1eiIsZGlhbENvZGU6Ijk5OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJWYW51YXR1Iix2YWx1ZToidnUiLGRpYWxDb2RlOiI2NzgiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiSG9seSBTZWUgKFZhdGljYW4gQ2l0eSBTdGF0ZSkiLHZhbHVlOiJ2YSIsZGlhbENvZGU6IjM5Iixwcmlvcml0eToxLGFyZWFDb2RlczpbIjA2Njk4Il19LHtsYWJlbDoiVmVuZXp1ZWxhLCBCb2xpdmFyaWFuIFJlcHVibGljIE9mIix2YWx1ZToidmUiLGRpYWxDb2RlOiI1OCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJWaWV0IE5hbSIsdmFsdWU6InZuIixkaWFsQ29kZToiODQiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LHtsYWJlbDoiV2FsbGlzIEFuZCBGdXR1bmEiLHZhbHVlOiJ3ZiIsZGlhbENvZGU6IjY4MSIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJXZXN0ZXJuIFNhaGFyYSIsdmFsdWU6ImVoIixkaWFsQ29kZToiMjEyIixwcmlvcml0eToxLGFyZWFDb2RlczpbIjUyODgiLCI1Mjg5Il19LHtsYWJlbDoiWWVtZW4iLHZhbHVlOiJ5ZSIsZGlhbENvZGU6Ijk2NyIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJaYW1iaWEiLHZhbHVlOiJ6bSIsZGlhbENvZGU6IjI2MCIscHJpb3JpdHk6MCxhcmVhQ29kZXM6bnVsbH0se2xhYmVsOiJaaW1iYWJ3ZSIsdmFsdWU6Inp3IixkaWFsQ29kZToiMjYzIixwcmlvcml0eTowLGFyZWFDb2RlczpudWxsfSx7bGFiZWw6IsOlTGFuZCBJc2xhbmRzIix2YWx1ZToiYXgiLGRpYWxDb2RlOiIzNTgiLHByaW9yaXR5OjEsYXJlYUNvZGVzOlsiMTgiXX1dLEI9e3Nhbml0aXplZFZhbHVlOmZ1bmN0aW9uKGUpe3ZhciB0PWUudmFsdWUsbj1lLm1heExlbmd0aCxpPXZvaWQgMD09PW4/MTU6bixyPXQucmVwbGFjZSgvXEQvZywiIik7cmV0dXJuIHQubGVuZ3RoPmkmJihyPXIuc2xpY2UoMCxpKSkscn0sZm9ybWF0OmZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPXRoaXMuc2FuaXRpemVkVmFsdWUoe3ZhbHVlOmV9KSxpPXtwaG9uZU51bWJlcjpuLGNvdW50cnlDb2RlOiJ1biIsZGlhbENvZGU6IiJ9LHI9W10sbz0wO288Ti5sZW5ndGg7bysrKXt2YXIgYT1OW29dO2lmKDA9PT1uLmluZGV4T2YoYS5kaWFsQ29kZSkpe2lmKGEuYXJlYUNvZGVzKWZvcih2YXIgcz1uLnN1YnN0cmluZyhhLmRpYWxDb2RlLmxlbmd0aCksbD0wO2w8YS5hcmVhQ29kZXMubGVuZ3RoO2wrKylpZigwPT09cy5pbmRleE9mKGEuYXJlYUNvZGVzW2xdKSl7dD1hO2JyZWFrfXIucHVzaChhKX19aWYocj1yLnNvcnQoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUucHJpb3JpdHk+dC5wcmlvcml0eT8xOi0xfSkpLCF0JiZyLmxlbmd0aCYmKHQ9clswXSksdCl7dmFyIGM9bi5zdWJzdHJpbmcodC5kaWFsQ29kZS5sZW5ndGgsbi5sZW5ndGgpO2kuZGlhbENvZGU9dC5kaWFsQ29kZS5yZXBsYWNlKC9bK10vZywiIiksaS5jb3VudHJ5Q29kZT10LnZhbHVlLGkucGhvbmVOdW1iZXI9Y31yZXR1cm4gaX0sZ2V0Q291bnRyeURhdGE6ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06IlVTIix0PU4uZmluZCgoZnVuY3Rpb24odCl7cmV0dXJuIHQudmFsdWUudG9Mb3dlckNhc2UoKT09PWUudG9Mb3dlckNhc2UoKX0pKTtpZighdCl0aHJvdyBuZXcgRXJyb3IoJ0NvdW50cnkgZGF0YSBmb3IgIicuY29uY2F0KGUsJyIgbm90IGZvdW5kLicpKTtyZXR1cm4gdH0sZ2V0Q291bnRyeUNvZGU6ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06IlVuaXRlZCBTdGF0ZXMiO3JldHVybiBOLmZpbmQoKGZ1bmN0aW9uKHQpe3JldHVybiB0LmxhYmVsLnRvTG93ZXJDYXNlKCk9PT1lLnRvTG93ZXJDYXNlKCl9KSl9LGdldENvZGVMaXN0OmZ1bmN0aW9uKCl7cmV0dXJuIE59fTtmdW5jdGlvbiBxKGUpe3JldHVybihxPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ZnVuY3Rpb24gSChlLHQpe3ZhciBuPU9iamVjdC5rZXlzKGUpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7dCYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCkuZW51bWVyYWJsZX0pKSksbi5wdXNoLmFwcGx5KG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gRihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbdF0/YXJndW1lbnRzW3RdOnt9O3QlMj9IKE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24odCl7VShlLHQsblt0XSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6SChPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLHQpKX0pKX1yZXR1cm4gZX1mdW5jdGlvbiBVKGUsdCxuKXtyZXR1cm4odD1mdW5jdGlvbihlKXt2YXIgdD1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT1xKGUpfHwhZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9cShpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PXQ/U3RyaW5nOk51bWJlcikoZSl9KGUsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1xKHQpP3Q6dCsiIn0odCkpaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVt0XT1uLGV9dmFyIHo9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+XG48c3R5bGUgdHlwZT0idGV4dC9jc3MiPlxuLnN0MHtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNFMTY0QTM7fVxuLnN0MXtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNFRTcxQTY7fVxuLnN0MntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiMwNEEzNEI7fVxuLnN0M3tmaWxsOiM0M0IxNDk7c3Ryb2tlOnVybCgjX2EpO3N0cm9rZS13aWR0aDowLjAyNzI2O3N0cm9rZS1taXRlcmxpbWl0OjEwO31cbi5zdDR7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDp1cmwoI19iKTt9XG4uc3Q1e2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0YxOENCODt9XG4uc3Q2e2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0ZGRkZGRjt9XG4uc3Q3e2NsaXAtcGF0aDp1cmwoI19jKTt9XG4uc3Q4e2NsaXAtcGF0aDp1cmwoI19kKTt9XG4uc3Q5e2NsaXAtcGF0aDp1cmwoI19jKTtmaWxsOiM5ODY2MzA7fVxuLnN0MTB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7fVxuLnN0MTF7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojOTU5Njk1O31cbi5zdDEye2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0UzRTNFMzt9XG4uc3QxM3tmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNDQ0M5Qzg7fVxuLnN0MTR7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojNTBCNjQ4O31cbi5zdDE1e2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0FBRDQ5Njt9XG4uc3QxNntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiM0M0IxNDk7fVxuLnN0MTd7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojOTRDRDhDO31cbjwvc3R5bGU+XG48Zz5cblx0PHBhdGggY2xhc3M9InN0MCIgZD0iTTYuOTI0MDksMTQuOTUyNTZjMC40NDI5NS0xLjcwOTAxLDIuMzM2MzItMS45NTc2MiwyLjk1OTgzLTAuODA4NjljMC40MDQzNCwwLjc0NDk1LTAuMDg0OTMsMS40NDcxNS0wLjYyNTc1LDAuODYxMjFDOC44MDc3MiwxNC41MTcwMyw4LjE3MjE0LDEzLjUyMTIyLDYuOTI0MDksMTQuOTUyNTYiLz5cblx0PHBhdGggY2xhc3M9InN0MSIgZD0iTTYuOTI0MDksMTQuOTUyNTZjMC41MTgyLTEuNTg5MTksMi4xMzUyNS0xLjg1NjY5LDIuNjgzMjctMC43NTE5MmMwLjM3OTAyLDAuNzY0MjUsMC4xMzU4MywxLjI3MTQ0LTAuNDA1MDIsMC42ODUzQzguNzUxOTQsMTQuMzk4MDksOC4xNzIxNCwxMy41MjEyMiw2LjkyNDA5LDE0Ljk1MjU2Ii8+XG5cdDxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik02LjI4MzU5LDUuMDEyNThjMC4xNDk0OS00LjU0NzMxLDQuMTg3NTUtNC45NDI2MSw1LjUwMzM1LTIuNzA1NTFjMC4zMzQzMiwwLjU2ODYsMC42MTcwOCwxLjIzODM1LDAuNjU2MzUsMS44OTMzM2MwLjA0NTM2LDAuNzUxNjUtMC4wNjg3OCwwLjg5MTQxLTAuMjkyMjEsMS43MTM0N2MtMC4zMjAzMywwLjExOTQyLDAuMTAxNSwwLjgzMTE2LDAuMTc1NzksMS4xMjk4OGMxLjIyMjQzLDUuNDk1MzMtMS4yMDMwNiw3LjQ5NzU5LTUuNDAyMjQsNy42NzE2MmMtMi44MjMzMiwwLjExNjktMi4yNzQ5OS0wLjE3MzYzLTIuMDQwODktMS4wODMxNmMwLjQ4Mjk5LTEuODc4MDcsMC43NTExNy0zLjc2MDcsMS4wODI0LTUuNjQyNzhDNi4xNTI5NCw2LjkyNzA4LDYuMjQ4OTEsNi4wNzI3LDYuMjgzNTksNS4wMTI1OCIvPlxuXHQ8Zz5cblx0XHQ8bGluZWFyR3JhZGllbnQgaWQ9Il9hIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9Ii0zLjUyNTk0IiB5MT0iNy42MzY1NCIgeDI9IjIwLjczMjY5IiB5Mj0iNy42MzY1NCI+XG5cdFx0XHQ8c3RvcCBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiMwNEEzNEIiLz5cblx0XHRcdDxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6IzA0QTM0QiIvPlxuXHRcdDwvbGluZWFyR3JhZGllbnQ+XG5cdFx0PHBhdGggY2xhc3M9InN0MyIgZD0iTTEyLjgyMzMsMy45NzI2Yy0wLjAzOTYxLTAuNjU1NDYtMC4xODAyNC0xLjU1Mjk4LTAuNTE0OTUtMi4xMjE5NWMtMS4zMTU0OS0yLjIzNjk0LTUuODc1MjQtMS4zODUzOC02LjAyNDc4LDMuMTYxOTNDNi4yNDg5LDYuMDcyNjksNi4xNTI5NSw2LjkyNzA2LDUuOTY2MTMsNy45ODkzOGMtMC4zMzExOCwxLjg4MjA4LTAuNTk5MzcsMy43NjQ3MS0xLjA4MjQsNS42NDI4MmMtMC4yMzQwNywwLjkwOTQ4LTEuMDE3NDYsMS4xNDYzNiwxLjc5NDYyLDAuODY4MjNjNC41NzE5Ni0wLjQ1MjE1LDYuNjYxOC0xLjg0MDcsNS4zMTY3Ny04LjE5MzEyQzEyLjM2MzQ2LDUuMjQ1NDgsMTIuODgxMzUsNC45MzQzOSwxMi44MjMzLDMuOTcyNnoiLz5cblx0PC9nPlxuXHQ8bGluZWFyR3JhZGllbnQgaWQ9Il9lIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAuNDU1MDgiIHkxPSIxNC43ODY0MyIgeDI9IjYuNDQyMzkiIHkyPSIxNC43ODY0MyI+XG5cdFx0PHN0b3Agb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMjVCMDRCIi8+XG5cdFx0PHN0b3Agb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMjZBRTRCIi8+XG5cdFx0PHN0b3Agb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMjdBNzQ5Ii8+XG5cdFx0PHN0b3Agb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMkE5QzQ3Ii8+XG5cdFx0PHN0b3Agb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMkM5NjQ2Ii8+XG5cdDwvbGluZWFyR3JhZGllbnQ+XG5cdDxwYXRoIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOnVybCgjX2UpOyIgZD0iTTAuOTAzMzMsMTUuNzEzNGMxLjE1OTIyLDAuNzUzNiwzLjgzNDczLTAuMDMyNDMsNS41MzkwNi0yLjEzMzk3Yy0xLjk4MzIyLDEuMjc2NjgtNC43MjA0OCwwLjQwOTM5LTUuNjU0ODMsMC45MjA5NEMwLjIxMzkzLDE0LjgxNDU2LDAuNDY4ODMsMTUuNDMxLDAuOTAzMzMsMTUuNzEzNCIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QyIiBkPSJNMC41MDE0MSwxNS4yMzQ5NmMxLjQxODk2LDAuNDc5MjQsMi45OTI3NywwLjAwMjcyLDQuNDg0MzYtMC41Nzg0NWMtMC4wNDE2OCwwLjEyNzU1LTAuMTI3NzUsMC4yMzU5Mi0wLjE3MjAxLDAuMzYzNDdjLTEuNTU5NTQsMS4wNDAwOC0zLjEwMTczLDEuMjE5NDMtMy45MTA0MywwLjY5MzQzQzAuNzIzMDQsMTUuNTk2MywwLjU3MzU2LDE1LjQyMTU5LDAuNTAxNDEsMTUuMjM0OTYiLz5cblx0PHBhdGggY2xhc3M9InN0MCIgZD0iTTUuNTgzMiwzLjE1OTg3YzAuMTMwMDMtMC44NzM4OCwxLjYzODQ5LTEuODIxODQsMy4zNjU4NS0xLjc0ODQyYy0xLjQ1MDQ3LDAuNDA5MDMtMi4xOTM2NiwyLjA4NjI5LTIuODMzOSwyLjMxNjgzQzUuNzIyMTQsMy44NzAwMSw1LjUzNDcyLDMuNDg3MDMsNS41ODMyLDMuMTU5ODciLz5cblx0PHBhdGggY2xhc3M9InN0MSIgZD0iTTUuNTgzMiwzLjE1OTg3YzAuMTMwMDMtMC44NzM4OCwxLjYzODQ5LTEuODIxODQsMy4zNjU4NS0xLjc0ODQyYy0xLjQ3OTYzLDAuMzU1MS0xLjk5NjAzLDAuOTI0NDYtMi4zMzE0MiwxLjM1NzY3QzYuNDI4MjIsMy4wMTM0Myw2LjAzMTE2LDMuNTE5NDcsNS42NDYxMiwzLjQxOTEzQzUuNTc0OTEsMy40MDA2Myw1LjU1OTIsMy4zMjMzMSw1LjU4MzIsMy4xNTk4NyIvPlxuXHQ8cGF0aCBjbGFzcz0ic3Q1IiBkPSJNNi40NzE2NywyLjE2NDA3QzUuOTc5NDQsMi41NjgxMSw1LjcwMTU2LDMuMDExOTgsNS42ODM1NSwzLjQyNjg4QzUuNjcxMDgsMy40MjQ5NSw1LjY1ODQyLDMuNDIyMzMsNS42NDYxMiwzLjQxOTEzQzUuNjEzNjksMy40MTA2Niw1LjU5MjYzLDMuMzg5NzUsNS41ODE5LDMuMzU0MDlDNS41NzM3NywzLjI5MjgsNS41NzM3NywzLjIyOTU1LDUuNTgyMjQsMy4xNjc5NkM1LjU4MjU0LDMuMTY1MTksNS41ODMyLDMuMTYyNDMsNS41ODMyLDMuMTU5ODdDNS42MjQ3LDIuODgxNjcsNS44MDU2NSwyLjU5NjE1LDYuMDg4NzEsMi4zMzg1M0M2LjIwNzM5LDIuMjkxMTcsNi4zMzUxNCwyLjIzMTE4LDYuNDcxNjcsMi4xNjQwNyIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNS44NzUwMywxLjU3OTU3YzAuNDk3ODgtMC43Mjk3NiwyLjI2ODU2LTAuOTI1NTgsMy43OTA4OS0wLjEwNjgzQzguMTgyNDIsMS4yMDg3OCw2Ljc4Mjc2LDIuMzk0Niw2LjEwNTkxLDIuMzIzMjhDNS42OTAzNywyLjI3OTMxLDUuNjg4NzUsMS44NTI5Miw1Ljg3NTAzLDEuNTc5NTciLz5cblx0PHBhdGggY2xhc3M9InN0MSIgZD0iTTUuODc1MDMsMS41Nzk1N2MwLjQ5Nzg4LTAuNzI5NzYsMi4yNjg1Ni0wLjkyNTU4LDMuNzkwODktMC4xMDY4M2MtMS40ODY0LTAuMzI1MjUtMi4xOTkxLTAuMDM3OTUtMi42OTAwNCwwLjIwNTkyQzYuNjk5MjcsMS44MTY0Nyw2LjEyMTQ4LDIuMDk4NTksNS44MTg2LDEuODQwNDNDNS43NjI2OSwxLjc5Mjc5LDUuNzgxNjUsMS43MTYyNyw1Ljg3NTAzLDEuNTc5NTciLz5cblx0PHBhdGggY2xhc3M9InN0MCIgZD0iTTYuMzAxMTEsMC4xNzg5MkM3LjA0MjIyLTAuMzAyNiw4Ljc1MTIzLDAuMTk5Nyw5Ljg0MDA3LDEuNTQyMTRDOC41NzMxNywwLjcyNjQ3LDYuODI0NjYsMS4yODA4LDYuMjI3MzUsMC45NTM5MkM1Ljg2MDkyLDAuNzUzMjEsNi4wMjM3LDAuMzU5MjIsNi4zMDExMSwwLjE3ODkyIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDUiIGQ9Ik02LjMwMTExLDAuMTc4OTJDNy4wNDIyMi0wLjMwMjYsOC43NTEyMywwLjE5OTcsOS44NDAwNywxLjU0MjE0QzguMzkwNiwwLjI4MDA5LDYuOTU2NDEsMS4wNDcyOCw2LjM1OTQ4LDAuNzIwNDZDNS45OTMwNywwLjUxOTc1LDYuMDIzNywwLjM1OTIyLDYuMzAxMTEsMC4xNzg5MiIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QxIiBkPSJNNi42Mjc4MSwwLjIwODQzYzAuODAwMTYtMC4yNzcyNCwyLjE4MjExLDAuMjIzOTEsMy4yMTIyNiwxLjMzMzcxQzguMzkwNiwwLjI4MDA5LDYuOTU2NDEsMS4wNDcyOCw2LjM1OTQ4LDAuNzIwNDZDNS45MTExOCwwLjQ3NDk2LDYuMzUzOTcsMC4zMDMyOSw2LjYyNzgxLDAuMjA4NDMiLz5cblx0PHBhdGggY2xhc3M9InN0NSIgZD0iTTcuMTA4NTYsMS4wNzA2MmMtMC42MTkwNywwLjE0OTItMS4wNjI5NiwwLjQyNzctMS4yNTk0NywwLjc5MzM1QzUuODM4NTQsMS44NTY2Nyw1LjgyODQ5LDEuODQ4ODYsNS44MTg2LDEuODQwNDNjLTAuMDI1NjItMC4wMjE3LTAuMDM1NTEtMC4wNDk1OC0wLjAyOTY3LTAuMDg2NTdjMC4wMTkzLTAuMDU4NjksMC4wNDcxOC0wLjExNTYsMC4wODE1Ny0wLjE2NzMyYzAuMDAxNDItMC4wMDIyNiwwLjAwMjktMC4wMDQ1NCwwLjAwNDUyLTAuMDA2OTdDNi4wMzMyNiwxLjM0NzQxLDYuMzIwNTcsMS4xNjkyMiw2LjY4NzgsMS4wNjA2MUM2LjgxNTExLDEuMDcsNi45NTY2LDEuMDcxNjQsNy4xMDg1NiwxLjA3MDYyIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xMi41OTgyNSw0LjkyODcxYzAuMzI0NiwwLjM2NzI1LDEuMDAzOTUsMC42MDI1OSwxLjk2NzY0LDAuMjQ5ODdjLTAuMTYxNDksMS4wOTc0MS0xLjU4MjM4LDEuMzY0MDMtMi4yOTYxLDEuMTQxNjdDMTIuMzc5MzYsNS44NTY0NCwxMi40ODg2NSw1LjM5MjcyLDEyLjU5ODI1LDQuOTI4NzEiLz5cblx0PHBhdGggY2xhc3M9InN0MSIgZD0iTTEyLjU5ODI1LDQuOTI4NzFjMC4zMjQ2LDAuMzY3MjUsMS4wMDM5NSwwLjYwMjU5LDEuOTY3NjQsMC4yNDk4N2MtMC4xNjE0OSwxLjA5NzQxLTEuOTM3ODIsMC44OTQzMi0yLjY1MTg1LDAuNjcxODVDMTIuMDIzNjgsNS4zODY1MiwxMi40ODg2NSw1LjM5MjcyLDEyLjU5ODI1LDQuOTI4NzEiLz5cblx0PHBhdGggY2xhc3M9InN0NSIgZD0iTTExLjYxMjc5LDEuNTgwMzljMS4yMDMzNi0wLjQyNzc0LDQuMDk4NzUsMC44ODI2NSwzLjkyNDYxLDMuNTkwNTRjLTAuNzkyNTEtMC42NzU0My0yLjI4Mjg1LDAuMDM5NjEtMy4xOTYyOS0wLjMxMjY1QzEyLjA3MTk2LDMuODQ0NjksMTEuODgxOTQsMi41OTM4NywxMS42MTI3OSwxLjU4MDM5Ii8+XG5cdDxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xMS40OTYwOSwyLjAzMDExYzEuMjAzNjYtMC40MjczNCwzLjg5ODk0LDAuOTQ5NDcsNC4wNDEzLDMuMTQwODJjLTAuNzkyNTEtMC42NzU0My0yLjI4Mjg1LDAuMDM5NjEtMy4xOTYyOS0wLjMxMjY1QzEyLjA3MTk2LDMuODQ0NjksMTEuNzY1MjQsMy4wNDM1OSwxMS40OTYwOSwyLjAzMDExIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDYiIGQ9Ik0xMC4zMDI4LDEuOTMyMjFjLTAuNzg2NjEsMC0xLjQyNDc4LDAuNjM4MTgtMS40MjQ3OCwxLjQyNDk0YzAsMC43ODY4NywwLjYzODE4LDEuNDI1MDMsMS40MjQ3OCwxLjQyNTAzYzAuNzg2NjcsMCwxLjQyNDgxLTAuNjM4MTYsMS40MjQ4MS0xLjQyNTAzQzExLjcyNzYxLDIuNTcwMzksMTEuMDg5NDcsMS45MzIyMSwxMC4zMDI4LDEuOTMyMjEiLz5cblx0PGNpcmNsZSBjeD0iMTAuNjQzNSIgY3k9IjMuNDIxOTMiIHI9IjAuNjgiIGZpbGw9IiM5ODY2MzAiLz5cblx0PHBhdGggY2xhc3M9InN0MTAiIGQ9Ik0xMC43NTYxMiwzLjA4MTdjLTAuMTgzNDksMC0wLjMzMzAyLDAuMTQ5MTUtMC4zMzMwMiwwLjMzMzAyYzAsMC4xODM1NCwwLjE0OTUzLDAuMzMyNjgsMC4zMzMwMiwwLjMzMjY4YzAuMTgzODYsMCwwLjMzMjMyLTAuMTQ5MTUsMC4zMzIzMi0wLjMzMjY4QzExLjA4ODQ1LDMuMjMwODUsMTAuOTM5OTgsMy4wODE3LDEwLjc1NjEyLDMuMDgxNyIvPlxuXHQ8cGF0aCBjbGFzcz0ic3Q2IiBkPSJNMTAuOTIyNDUsMy4wODE3Yy0wLjA5MTcsMC0wLjE2NjMyLDAuMDc0NTgtMC4xNjYzMiwwLjE2NjM0YzAsMC4wOTIxMiwwLjA3NDYzLDAuMTY2NjgsMC4xNjYzMiwwLjE2NjY4YzAuMDkxNzcsMCwwLjE2Ni0wLjA3NDU2LDAuMTY2LTAuMTY2NjhDMTEuMDg4NDUsMy4xNTYyOSwxMS4wMTQyMiwzLjA4MTcsMTAuOTIyNDUsMy4wODE3Ii8+XG5cdDxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik01LjcxOTA2LDE0Ljc2OTRjMS41ODM0MS0xLjIwODc4LDMuMzQzNDktMy4yMjQ2NSwzLjg0OTY0LTUuMTExMjljMC4yNDY3Ny0wLjkyMTk0LDAuMTk0NTctMS44MTI5OC0wLjMyMzU3LTIuNTY0MjVjLTAuMTU5MjEtMC4yMzA3OC0wLjMzMTA5LTAuNDE4NS0wLjUxNzExLTAuNTU5MDJDOC42OTUxLDYuNTA5OTcsOC42ODcxMSw2LjQ2MzgzLDguNzEwNjMsNi40Mjk5NEM4Ljk3NTU4LDYuMDQ4MTUsOS4yNTA3Miw1LjcyNTQsOS4yODk0Niw1Ljg5OTljMC4xMTc4NywwLjUzLDAuMTQ1NzMsMC45MDczMSwwLjM1MjExLDEuNzE4MzFDOS42NTc2LDcuNjgxMTksOS43Mzk5Niw3LjY5NjY3LDkuNzc3ODQsNy42NDM4N2MwLjA3NTY5LTAuMTA1NSwwLjE0MzA0LTAuMjAxNDUsMC4yMDM5Mi0wLjI5MDE4YzAuMDM4NC0wLjA1NTk2LDAuMTI1NjMtMC4wMzc4MywwLjEzODA5LDAuMDI4ODljMC4yMjA3NywxLjE4Mjg2LTAuMjI0MDcsMi43MTQ2MS0wLjc3ODc2LDMuNzM4MjRjLTAuNDYxNzcsMC44NTE2OC0wLjk4NTUsMS43Mjg5LTAuNjQ5ODUsMi4zMzMwNWMwLjAyMDE0LDAuMDM1NjMsMC4wNDE1LDAuMDcwNzgsMC4wNjQyMSwwLjEwNTM3YzAuMTQ0MjgsMC4yMTcxNiwwLjM2OTIsMC40MjUyOSwwLjYyMTc1LDAuNjA1MDdjMC4wNTE2MywwLjAzNjc1LDAuMDM5MjMsMC4xMTYzMy0wLjAyMTE5LDAuMTM1NDZjLTAuMDAwNywwLjAwMDIyLTAuMDAxNCwwLjAwMDQ0LTAuMDAyMTEsMC4wMDA2N2MtMC4wMzIyMSwwLjAxMDE2LTAuMDY3MDUtMC4wMDIzOC0wLjA4NjA4LTAuMDMwMjhjLTAuMjg0NzktMC40MTc2My0wLjc2ODY0LTAuNjM4MTUtMS4yNTEtMC42MDc2N2MtMC4wNTQxOCwwLjAwMzQ4LTAuMTA3OTksMC4wMDk1Ni0wLjE2MjI0LDAuMDE4NjljLTAuMjU0ODIsMC4wNDI2OS0wLjUwODcxLDAuMTQ4My0wLjczNTU1LDAuMzE3MTNjLTAuMDAxMTYsMC4wMDA4Ny0wLjAwMjM2LDAuMDAxNjktMC4wMDM1OCwwLjAwMjQ2Yy0wLjIyMTU5LDAuMTQwMzItMC40MjEwOCwwLjM2MTU4LTAuNTczODQsMC42NzkxNWMtMC4wMTE1NiwwLjAyNDAzLTAuMDM1MTYsMC4wNDAxLTAuMDYxNzEsMC4wNDI1MUM2LjE4MTk0LDE0Ljc0OTQ5LDUuOTMwNDIsMTQuNzY0NzgsNS43MTkwNiwxNC43Njk0Ii8+XG5cdDxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik02LjczMDU2LDYuNjUzOTljLTAuMjg4NTUsMC4yMTMxNi0wLjUxMSwwLjUxNTA2LTAuNjg5NTEsMC44ODk3N2MwLjEzODE0LTAuODY1OTUsMC4yMTI0LTEuNjIzMTEsMC4yNDI1NS0yLjUzMTE4YzAuMDAzMjQtMC4wOTk0NywwLjAwODQzLTAuMTk3MDksMC4wMTU4OS0wLjI5MjY5YzAuMDQ3MzQtMC4wMzM2OSwwLjA5NjMtMC4wNjUxNywwLjE0NjU2LTAuMDk0MzJDNi40NTc3Miw1LjU4NDY3LDYuNTc0MTIsNi4wMTAxMyw2LjczMzk0LDYuMzQwMmMwLjExNzQ0LTAuMTU5NTEsMC43Mzc3LTAuNjUwNDUsMS4yNjM3MS0xLjE0NTc1QzcuOTY2NSw1LjU3NTI4LDcuOTY1NTQsNS45NDk5OSw3Ljk4ODI0LDYuMjc3MzNDNy42OTc3LDYuMjUwOTksNy4zODA1Niw2LjMxMzk0LDcuMDMxODUsNi40NzUzYy0wLjA3MjQ4LDAuMDMzNTEtMC4xNDE0LDAuMDcxNDgtMC4yMDcwNiwwLjExMzdDNi43OTI4Myw2LjYwOTYzLDYuNzYxNCw2LjYzMTEzLDYuNzMwNTYsNi42NTM5OSIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QxMSIgZD0iTTkuMDk0OTYsNS45ODQxOEM4Ljk3NTMsNi4xMDA1OCw4LjgxODA2LDYuMzA5MSw4LjY2ODI0LDYuNTI5MjVDOC42MDY1OCw2LjQ4NjgzLDguNTQzMzksNi40NDkwNiw4LjQ3ODUsNi40MTY5MUM4LjMyNDUsNi4zMzk5LDguMTYxMDcsNi4yOTI3NCw3Ljk4ODI0LDYuMjc3MzNDNy45NjU1NCw1Ljk0OTk5LDcuOTY2NSw1LjU3NTI4LDcuOTk3NjUsNS4xOTQ0NUM3LjQ3MTY0LDUuNjg5NzUsNi44NTEzOCw2LjE4MDY5LDYuNzMzOTQsNi4zNDAyQzYuNTc0MTIsNi4wMTAxMyw2LjQ1NzcyLDUuNTg0NjcsNi40NDYwNSw0LjYyNTU3QzYuMzk1NzksNC42NTQ3Miw2LjM0NjgzLDQuNjg2Miw2LjI5OTQ5LDQuNzE5ODljMC4zMDM4NC0zLjkzNzE5LDMuNzA3OTItNC45NTE2NSw1LjM5MjE1LTMuNTU0NTVDOC45MDYyNCwxLjE2ODU4LDcuMTc2OTMsMi45MjM3OSw5LjA5NDk2LDUuOTg0MTgiLz5cblx0PHBhdGggY2xhc3M9InN0MTIiIGQ9Ik0xMC4zMDk1OSwxLjkzMjIxYy0xLjEzMDA0LDAuNDE0NDEtMS40MDI3MywxLjUyMzUzLTAuOTM2NzMsMi41MDQzYy0wLjMwMjg0LTAuMjYxMi0wLjQ5NDg0LTAuNjQ3ODktMC40OTQ4NC0xLjA3OTM1YzAtMC43ODY3NywwLjYzODE4LTEuNDI0OTQsMS40MjQ3OC0xLjQyNDk0QzEwLjMwNTA4LDEuOTMyMjEsMTAuMzA3MzcsMS45MzIyMSwxMC4zMDk1OSwxLjkzMjIxIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDEzIiBkPSJNMTAuMzAyOCw0Ljc4MjE5Yy0wLjM1NTM4LDAtMC42ODAyNS0wLjEzMDM3LTAuOTI5OTQtMC4zNDU2OGMtMC4zMDI4NC0wLjI2MTItMC40OTQ4NC0wLjY0Nzg5LTAuNDk0ODQtMS4wNzkzNWMwLTAuNzg2NzcsMC42MzgxOC0xLjQyNDk0LDEuNDI0NzgtMS40MjQ5NGMwLjAwMjI4LDAsMC4wMDQ1NywwLDAuMDA2NzksMGMwLjc4MzQyLDAuMDAzOTIsMS40MTgwMiwwLjY0MDQsMS40MTgwMiwxLjQyNDk0QzExLjcyNzYxLDQuMTQ0MDIsMTEuMDg5NDcsNC43ODIxOSwxMC4zMDI4LDQuNzgyMTkgTTEyLjYzNTIzLDQuOTY2MjhjMC4wMDM4OS0wLjAwODcxLDAuMDA3ODEtMC4wMTcxNCwwLjAxMjAxLTAuMDI1ODZDMTIuNjQzMDQsNC45NDkxNCwxMi42MzkxMiw0Ljk1Nzc1LDEyLjYzNTIzLDQuOTY2Mjh6IE0xMC43NjU4NSw2LjM3ODE2YzAuMDU2NDcsMC40MzM1MSwwLjE3NjA3LDAuNzk1OTMsMC4zNTE4NiwxLjE1Nzc2YzAuMjYyNi0wLjI4MjUyLDAuNTI3ODYtMC44MjA4MSwwLjY0Nzg3LTEuMjcyODJjMC4wNjgwOCwwLjQyNTY2LDAuMzA5OTYsMC42NDU0OSwwLjU1MDU1LDAuNzQyODVjLTAuMDYzODQtMC4yNjkxNS0wLjA4MDA1LTAuNTEyMzQsMC4xNzY3NS0wLjYzNTY0YzAuMDE1MjUtMC4wMDc0NCwwLjAzMTQzLTAuMDE0MjMsMC4wNDg5Ni0wLjAyMDYyYzAuMDMxNzctMC4xMTgwNiwwLjA2MTU5LTAuMjM2MDIsMC4wODg1Mi0wLjM1MzIyYzAuMDcwMDgtMC4zMDMzNCwwLjEyMjktMC42MDM1NywwLjE1NzI3LTAuODk4ODZjMC4wMDU1My0wLjA0Nzk0LDAuMDEwMzctMC4wOTU1OCwwLjAxNTIxLTAuMTQzMjRjMC4wMzIxNS0wLjMzNSwwLjAzOTU3LTAuNjYzMTIsMC4wMjA0OC0wLjk4MTc3Yy0wLjAzNjMxLTAuNjA1ODUtMC4xNTk4My0xLjQxOTEtMC40NDIzMS0xLjk4Nzg2Yy0wLjAyMy0wLjA0NjM4LTAuMDQ3MzQtMC4wOTExMS0wLjA3MjYyLTAuMTM0MDdjLTAuMDczOTQtMC4xMjU5Ny0wLjE1ODI2LTAuMjQyMjMtMC4yNTE5NS0wLjM0ODQxYy0wLjExMDU1LTAuMTI2NDUtMC4yMzQxLTAuMjM4NjQtMC4zNjgzNy0wLjMzNjkxQzEwLjk3ODU3LDEuMTY2NiwxMC4zMzc1MywxLjI4MTQyLDkuODA4LDEuNTAyODdjLTAuMDAwOTYsMC4wMDA2OC0wLjAwMjI2LDAuMDAxMDItMC4wMDMyNCwwLjAwMTVDOS44MDI3OCwxLjUwNTE1LDkuODAwOSwxLjUwNTk3LDkuNzk4ODksMS41MDY3OWMtMC4wMDI1NiwwLjAwMTMtMC4wMDU4MSwwLjAwMjQyLTAuMDA4NzQsMC4wMDM4N0M4LjI1NjQzLDIuMTYxOTMsNy42NzIwMywzLjcxNDA0LDkuMDk0OTYsNS45ODQxOEM4Ljk3NTMsNi4xMDA1OCw4LjgxODA2LDYuMzA5MSw4LjY2ODI0LDYuNTI5MjVDOC44NzczNyw2LjY3MzU1LDkuMDY5LDYuODc2MTYsOS4yNDUxMiw3LjEzMTQ1YzAuMTY0NjQsMC4yMzg5MiwwLjI4MjA2LDAuNDkxOSwwLjM1Nzk1LDAuNzU1MTZDMTAuMTMxNTgsNy40ODY4LDEwLjU1MDIxLDYuODg4MDksMTAuNzY1ODUsNi4zNzgxNnoiLz5cblx0PHBhdGggY2xhc3M9InN0MTQiIGQ9Ik03LjAzMTg1LDYuNDc1M2MtMS45Njk3NSwwLjkxMTY1LTEuMzc4MjksNS4wODI2My0yLjg0MDIzLDkuMjYxMzdjMi4zNjMwOC0wLjk4MTg3LDcuMDAxOTEtNS43ODA5NCw1LjA1MzUtOC42MDUyMUM4LjY4NjAxLDYuMzIxNDEsNy45NzIzNyw2LjA0MDI1LDcuMDMxODUsNi40NzUzIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDE1IiBkPSJNNS41MjQ4NCw5LjMwMzMzQzUuNzU5NTksOC4wODUzOCw2LjA3MjgyLDcuMTM5OSw2LjczMDU2LDYuNjUzOTlDNi43NjE0LDYuNjMxMTMsNi43OTI4Myw2LjYwOTYzLDYuODI0NzksNi41ODg5OWMwLjA2NTY2LTAuMDQyMjIsMC4xMzQ1Ny0wLjA4MDE5LDAuMjA3MDYtMC4xMTM3YzAuOTQwNTItMC40MzUwNSwxLjY1NDE2LTAuMTUzODksMi4yMTMyNywwLjY1NjE2QzkuNzYzMjYsNy44ODI3Myw5LjgxNTQ3LDguNzczNzYsOS41Njg3LDkuNjk1NzFjLTAuMjQ5MzUsMC40MjctMC41NTg3MywwLjcyMTYxLTEuMDUxMjEsMS4wMzYyQzguNTQ2MjksMTAuMjczNTEsOC42NTQ5MSw5LjgyMzA1LDguNTA4LDkuMzQ5NDVjLTAuMjUxMjksMC40NDczNC0wLjY4MzUyLDAuNzE2MjEtMS4xNDc1MywwLjkwODQ1YzAuMDIwMS0wLjM2MjUxLDAuMTUzNjktMC44MDYzNywwLjE3MzUxLTEuMTY4OTljLTAuNDg2MDMsMC4zNzYxNi0wLjk3MjQ4LDAuNzUyNjQtMS40NTg4OCwxLjEyOTJjLTAuMDAxOTYsMC4wMDEzNi0wLjAwMzksMC4wMDI4OC0wLjAwNTgzLDAuMDA0NDRDNi4wMTQxMyw5LjcyOTM4LDYuMDUyNTYsOS4yNTUzMyw2LjIyMjMyLDguNzM5OUM1Ljk4OTgzLDguOTI3OSw1Ljc1NzE3LDkuMTE1NTcsNS41MjQ4NCw5LjMwMzMzIi8+XG5cdDxwYXRoIGNsYXNzPSJzdDE2IiBkPSJNNi4wNzUxLDEwLjIxODExbDEuNDU4ODgtMS4xMjkyTDcuMzYwNDcsMTAuMjU3OWMtMC44MDY3NCwyLjA2MDQyLTEuODAyMjMsMy43Mzg0NC0yLjc2Nzg5LDUuMDc1NzRjLTAuMDg1MTMsMC4xMTc1LTAuMTY4NjIsMC4yMjk4NC0wLjI1MDY1LDAuMzM2ODVjLTAuMDUxMjQsMC4wMjM2Ni0wLjEwMTMzLDAuMDQ1NzItMC4xNTAzMSwwLjA2NjE4YzAuODE3MzEtMi4zMzYzNCwwLjk5MjktNC42NzAzNiwxLjMzMzIxLTYuNDMzMzNMNi4yMjIzMiw4LjczOTlMNi4xMjAzNCw5LjcyODQxbC0wLjA1MTA2LDAuNDk0MTRMNi4wNzUxLDEwLjIxODExeiIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QxNyIgZD0iTTguNDc4NSw2LjQxNjkxYy0wLjE2NDQsMS4xMjA4NS0wLjYyNDQ5LDIuNDY3NzUtMS4wOTExNCwzLjY1OTEybDAuMTQ2NjItMC45ODcxMmwtMS40NTg4OCwxLjEyOTJsLTAuMDA1ODMsMC4wMDQ0NGwwLjA1MTA2LTAuNDk0MTRMNi4yMjIzMiw4LjczOTlMNS41MjQ4NCw5LjMwMzMzQzUuNzU5NTksOC4wODUzOCw2LjA3MjgyLDcuMTM5OSw2LjczMDU2LDYuNjUzOTlDNi43NjE0LDYuNjMxMTMsNi43OTI4Myw2LjYwOTYzLDYuODI0NzksNi41ODg5OWMwLjA2NTY2LTAuMDQyMjIsMC4xMzQ1Ny0wLjA4MDE5LDAuMjA3MDYtMC4xMTM3QzcuNTg4NDYsNi4yMTc2OCw4LjA2NTczLDYuMjExMiw4LjQ3ODUsNi40MTY5MSIvPlxuXHQ8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNi4zNTc2MywxNS4xNTgwOWMwLjQ0MjYtMS43MDkwMSwyLjMzNjMtMS45NTc1NCwyLjk1OTgxLTAuODA4NjljMC40MDQzNiwwLjc0NTE1LTAuMDg0OTMsMS40NDcyMi0wLjYyNTc5LDAuODYxMjlDOC4yNDEyNCwxNC43MjI2NCw3LjYwNjA2LDEzLjcyNjg0LDYuMzU3NjMsMTUuMTU4MDkiLz5cblx0PHBhdGggY2xhc3M9InN0MSIgZD0iTTYuMzU3NjMsMTUuMTU4MDljMC40NDI2LTEuNzA5MDEsMS44OTY4OS0xLjYwOTc3LDIuNTcwMDQtMC44MDg2OWMwLjUyNCwwLjYyMzg5LDAuMzA0ODQsMS40NDcyMi0wLjIzNjAyLDAuODYxMjlDOC4yNDEyNCwxNC43MjI2NCw3LjYwNjA2LDEzLjcyNjg0LDYuMzU3NjMsMTUuMTU4MDkiLz5cbjwvZz5cbjwvc3ZnPicsWD1zKHtuYW1lOiJ0YXdrLWJyYW5kaW5nIixwcm9wczp7d2hpdGVsYWJlbDp7dHlwZTpPYmplY3QsZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybnt9fSxyZXF1aXJlZDohMH0saW1hZ2VVcmw6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LHRhd2tUb1VybDp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0saXNGbG9hdGluZzp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9fSxjb21wdXRlZDp7dGF3a3lMb2dvU3ZnOmZ1bmN0aW9uKCl7cmV0dXJuIHp9LHBvd2VyZWRCeVN2ZzpmdW5jdGlvbigpe3JldHVybic8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwNyAxNSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7aGVpZ2h0OjEuMjVlbTt3aWR0aDphdXRvIj48cGF0aCBkPSJNMi4yNiA3Ljg2TDMuNjQgNy44NlE0LjEzIDcuODYgNC41MSA3LjczUTQuOTAgNy42MCA1LjE2IDcuMzZRNS40MiA3LjEyIDUuNTUgNi43OVE1LjY4IDYuNDYgNS42OCA2LjA3TDUuNjggNi4wN1E1LjY4IDUuMjQgNS4xNyA0Ljc4UTQuNjcgNC4zMiAzLjY0IDQuMzJMMy42NCA0LjMyTDIuMjYgNC4zMkwyLjI2IDcuODZaTTEuMTAgMy40MEwzLjY0IDMuNDBRNC40NSAzLjQwIDUuMDUgMy41OVE1LjY2IDMuNzggNi4wNSA0LjEzUTYuNDUgNC40OCA2LjY1IDQuOTdRNi44NCA1LjQ2IDYuODQgNi4wN0w2Ljg0IDYuMDdRNi44NCA2LjY3IDYuNjMgNy4xNlE2LjQyIDcuNjYgNi4wMiA4LjAyUTUuNjEgOC4zOCA1LjAxIDguNThRNC40MiA4Ljc4IDMuNjQgOC43OEwzLjY0IDguNzhMMi4yNiA4Ljc4TDIuMjYgMTJMMS4xMCAxMkwxLjEwIDMuNDBaTTEwLjYxIDUuODNMMTAuNjEgNS44M1ExMS4yOCA1LjgzIDExLjgxIDYuMDVRMTIuMzUgNi4yNyAxMi43MyA2LjY4UTEzLjEwIDcuMDkgMTMuMzAgNy42N1ExMy41MSA4LjI0IDEzLjUxIDguOTZMMTMuNTEgOC45NlExMy41MSA5LjY4IDEzLjMwIDEwLjI1UTEzLjEwIDEwLjgzIDEyLjczIDExLjI0UTEyLjM1IDExLjY1IDExLjgxIDExLjg3UTExLjI4IDEyLjA4IDEwLjYxIDEyLjA4TDEwLjYxIDEyLjA4UTkuOTQgMTIuMDggOS40MSAxMS44N1E4Ljg3IDExLjY1IDguNDkgMTEuMjRROC4xMSAxMC44MyA3LjkxIDEwLjI1UTcuNzEgOS42OCA3LjcxIDguOTZMNy43MSA4Ljk2UTcuNzEgOC4yNCA3LjkxIDcuNjdROC4xMSA3LjA5IDguNDkgNi42OFE4Ljg3IDYuMjcgOS40MSA2LjA1UTkuOTQgNS44MyAxMC42MSA1LjgzWk0xMC42MSAxMS4yNUwxMC42MSAxMS4yNVExMS41MSAxMS4yNSAxMS45NiAxMC42NVExMi40MCAxMC4wNCAxMi40MCA4Ljk2TDEyLjQwIDguOTZRMTIuNDAgNy44OCAxMS45NiA3LjI3UTExLjUxIDYuNjcgMTAuNjEgNi42N0wxMC42MSA2LjY3UTEwLjE2IDYuNjcgOS44MiA2LjgyUTkuNDggNi45OCA5LjI2IDcuMjdROS4wMyA3LjU3IDguOTIgOC4wMFE4LjgxIDguNDIgOC44MSA4Ljk2TDguODEgOC45NlE4LjgxIDEwLjA0IDkuMjYgMTAuNjVROS43MCAxMS4yNSAxMC42MSAxMS4yNVpNMjIuNDMgNS45MkwyMy4yNCA1LjkyTDIxLjI3IDEyTDIwLjQyIDEyUTIwLjI3IDEyIDIwLjIxIDExLjgwTDIwLjIxIDExLjgwTDE4Ljg2IDcuNjdRMTguODIgNy41NCAxOC43OSA3LjM5UTE4Ljc2IDcuMjUgMTguNzMgNy4xMkwxOC43MyA3LjEyUTE4LjcwIDcuMjUgMTguNjcgNy4zOVExOC42NCA3LjU0IDE4LjU5IDcuNjhMMTguNTkgNy42OEwxNy4yMiAxMS44MFExNy4xNyAxMiAxNi45OCAxMkwxNi45OCAxMkwxNi4xOCAxMkwxNC4yMSA1LjkyTDE1LjA1IDUuOTJRMTUuMTcgNS45MiAxNS4yNiA1Ljk5UTE1LjM1IDYuMDUgMTUuMzggNi4xNEwxNS4zOCA2LjE0TDE2LjU0IDEwLjA2UTE2LjY0IDEwLjQ5IDE2LjcwIDEwLjg3TDE2LjcwIDEwLjg3UTE2Ljc2IDEwLjY3IDE2LjgyIDEwLjQ3UTE2Ljg3IDEwLjI3IDE2Ljk0IDEwLjA2TDE2Ljk0IDEwLjA2TDE4LjIyIDYuMTJRMTguMjUgNi4wMyAxOC4zMyA1Ljk3UTE4LjQwIDUuOTEgMTguNTEgNS45MUwxOC41MSA1LjkxTDE4Ljk4IDUuOTFRMTkuMTAgNS45MSAxOS4xOCA1Ljk3UTE5LjI1IDYuMDMgMTkuMjggNi4xMkwxOS4yOCA2LjEyTDIwLjU0IDEwLjA2UTIwLjYwIDEwLjI3IDIwLjY2IDEwLjQ3UTIwLjcxIDEwLjY3IDIwLjc2IDEwLjg3TDIwLjc2IDEwLjg3UTIwLjc5IDEwLjY3IDIwLjg0IDEwLjQ3UTIwLjg4IDEwLjI3IDIwLjkzIDEwLjA2TDIwLjkzIDEwLjA2TDIyLjEyIDYuMTRRMjIuMTUgNi4wNSAyMi4yNCA1Ljk4UTIyLjMyIDUuOTIgMjIuNDMgNS45MkwyMi40MyA1LjkyWk0yNS4wMyA4LjMwTDI4LjM1IDguMzBRMjguMzUgNy45MyAyOC4yNSA3LjYyUTI4LjE0IDcuMzEgMjcuOTQgNy4wOFEyNy43NCA2Ljg2IDI3LjQ1IDYuNzRRMjcuMTYgNi42MSAyNi44MCA2LjYxTDI2LjgwIDYuNjFRMjYuMDMgNi42MSAyNS41OCA3LjA2UTI1LjEzIDcuNTEgMjUuMDMgOC4zMEwyNS4wMyA4LjMwWk0yOC45MSAxMC43NkwyOS4yMSAxMS4xNVEyOS4wMiAxMS4zOSAyOC43NCAxMS41NlEyOC40NiAxMS43NCAyOC4xNSAxMS44NlEyNy44MyAxMS45NyAyNy41MCAxMi4wM1EyNy4xNiAxMi4wOCAyNi44MyAxMi4wOEwyNi44MyAxMi4wOFEyNi4yMCAxMi4wOCAyNS42NyAxMS44N1EyNS4xNCAxMS42NiAyNC43NSAxMS4yNVEyNC4zNyAxMC44NCAyNC4xNSAxMC4yM1EyMy45MyA5LjYyIDIzLjkzIDguODRMMjMuOTMgOC44NFEyMy45MyA4LjIwIDI0LjEzIDcuNjVRMjQuMzIgNy4xMCAyNC42OSA2LjY5UTI1LjA2IDYuMjkgMjUuNTggNi4wNlEyNi4xMSA1LjgzIDI2Ljc3IDUuODNMMjYuNzcgNS44M1EyNy4zMiA1LjgzIDI3Ljc4IDYuMDFRMjguMjUgNi4xOSAyOC41OSA2LjU0UTI4LjkzIDYuODggMjkuMTIgNy4zOVEyOS4zMSA3LjkwIDI5LjMxIDguNTRMMjkuMzEgOC41NFEyOS4zMSA4LjgwIDI5LjI2IDguODhRMjkuMjAgOC45NiAyOS4wNSA4Ljk2TDI5LjA1IDguOTZMMjQuOTkgOC45NlEyNS4wMSA5LjU0IDI1LjE1IDkuOTdRMjUuMjkgMTAuMzkgMjUuNTQgMTAuNjhRMjUuNzkgMTAuOTYgMjYuMTQgMTEuMTBRMjYuNDkgMTEuMjQgMjYuOTIgMTEuMjRMMjYuOTIgMTEuMjRRMjcuMzIgMTEuMjQgMjcuNjIgMTEuMTVRMjcuOTEgMTEuMDYgMjguMTIgMTAuOTVRMjguMzMgMTAuODQgMjguNDcgMTAuNzVRMjguNjEgMTAuNjYgMjguNzEgMTAuNjZMMjguNzEgMTAuNjZRMjguODQgMTAuNjYgMjguOTEgMTAuNzZMMjguOTEgMTAuNzZaTTMxLjU2IDYuMjJMMzEuNjMgNy4xNFEzMS45MiA2LjUyIDMyLjM0IDYuMTdRMzIuNzYgNS44MSAzMy4zNyA1LjgxTDMzLjM3IDUuODFRMzMuNTYgNS44MSAzMy43MyA1Ljg2UTMzLjkxIDUuOTAgMzQuMDUgNS45OUwzNC4wNSA1Ljk5TDMzLjk3IDYuNzlRMzMuOTQgNi45NCAzMy43OSA2Ljk0TDMzLjc5IDYuOTRRMzMuNzEgNi45NCAzMy41NSA2LjkwUTMzLjM4IDYuODYgMzMuMTggNi44NkwzMy4xOCA2Ljg2UTMyLjg5IDYuODYgMzIuNjcgNi45NVEzMi40NCA3LjAzIDMyLjI3IDcuMjBRMzIuMDkgNy4zNiAzMS45NSA3LjYwUTMxLjgxIDcuODUgMzEuNjkgOC4xNkwzMS42OSA4LjE2TDMxLjY5IDEyTDMwLjYyIDEyTDMwLjYyIDUuOTJMMzEuMjMgNS45MlEzMS40MCA1LjkyIDMxLjQ3IDUuOTlRMzEuNTQgNi4wNSAzMS41NiA2LjIyTDMxLjU2IDYuMjJaTTM1LjczIDguMzBMMzkuMDUgOC4zMFEzOS4wNSA3LjkzIDM4Ljk1IDcuNjJRMzguODQgNy4zMSAzOC42NCA3LjA4UTM4LjQ0IDYuODYgMzguMTUgNi43NFEzNy44NyA2LjYxIDM3LjUwIDYuNjFMMzcuNTAgNi42MVEzNi43MyA2LjYxIDM2LjI5IDcuMDZRMzUuODQgNy41MSAzNS43MyA4LjMwTDM1LjczIDguMzBaTTM5LjYyIDEwLjc2TDM5LjkyIDExLjE1UTM5LjcyIDExLjM5IDM5LjQ0IDExLjU2UTM5LjE3IDExLjc0IDM4Ljg1IDExLjg2UTM4LjU0IDExLjk3IDM4LjIwIDEyLjAzUTM3Ljg3IDEyLjA4IDM3LjU0IDEyLjA4TDM3LjU0IDEyLjA4UTM2LjkxIDEyLjA4IDM2LjM4IDExLjg3UTM1Ljg0IDExLjY2IDM1LjQ2IDExLjI1UTM1LjA3IDEwLjg0IDM0Ljg1IDEwLjIzUTM0LjY0IDkuNjIgMzQuNjQgOC44NEwzNC42NCA4Ljg0UTM0LjY0IDguMjAgMzQuODMgNy42NVEzNS4wMyA3LjEwIDM1LjM5IDYuNjlRMzUuNzYgNi4yOSAzNi4yOSA2LjA2UTM2LjgyIDUuODMgMzcuNDggNS44M0wzNy40OCA1LjgzUTM4LjAyIDUuODMgMzguNDkgNi4wMVEzOC45NSA2LjE5IDM5LjI5IDYuNTRRMzkuNjMgNi44OCAzOS44MiA3LjM5UTQwLjAxIDcuOTAgNDAuMDEgOC41NEw0MC4wMSA4LjU0UTQwLjAxIDguODAgMzkuOTYgOC44OFEzOS45MSA4Ljk2IDM5Ljc2IDguOTZMMzkuNzYgOC45NkwzNS42OSA4Ljk2UTM1LjcxIDkuNTQgMzUuODUgOS45N1EzNS45OSAxMC4zOSAzNi4yNSAxMC42OFEzNi41MCAxMC45NiAzNi44NSAxMS4xMFEzNy4xOSAxMS4yNCAzNy42MyAxMS4yNEwzNy42MyAxMS4yNFEzOC4wMyAxMS4yNCAzOC4zMiAxMS4xNVEzOC42MSAxMS4wNiAzOC44MiAxMC45NVEzOS4wMyAxMC44NCAzOS4xNyAxMC43NVEzOS4zMSAxMC42NiAzOS40MSAxMC42NkwzOS40MSAxMC42NlEzOS41NSAxMC42NiAzOS42MiAxMC43NkwzOS42MiAxMC43NlpNNDUuMjggMTAuMzBMNDUuMjggNy4zN1E0NC45OCA2Ljk3IDQ0LjYzIDYuODFRNDQuMjkgNi42NSA0My44NSA2LjY1TDQzLjg1IDYuNjVRNDMuMDEgNi42NSA0Mi41NSA3LjI1UTQyLjEwIDcuODYgNDIuMTAgOC45OEw0Mi4xMCA4Ljk4UTQyLjEwIDkuNTggNDIuMjAgMTAuMDBRNDIuMzAgMTAuNDIgNDIuNTAgMTAuNzBRNDIuNzAgMTAuOTcgNDIuOTggMTEuMDlRNDMuMjcgMTEuMjIgNDMuNjQgMTEuMjJMNDMuNjQgMTEuMjJRNDQuMTcgMTEuMjIgNDQuNTYgMTAuOThRNDQuOTUgMTAuNzQgNDUuMjggMTAuMzBMNDUuMjggMTAuMzBaTTQ1LjI4IDMuMTZMNDYuMzUgMy4xNkw0Ni4zNSAxMkw0NS43MSAxMlE0NS40OSAxMiA0NS40MyAxMS43OEw0NS40MyAxMS43OEw0NS4zMyAxMS4wNFE0NC45NCAxMS41MSA0NC40NCAxMS44MFE0My45NCAxMi4wOCA0My4yOSAxMi4wOEw0My4yOSAxMi4wOFE0Mi43NyAxMi4wOCA0Mi4zNCAxMS44OFE0MS45MiAxMS42OCA0MS42MiAxMS4yOVE0MS4zMiAxMC45MCA0MS4xNSAxMC4zMlE0MC45OSA5Ljc0IDQwLjk5IDguOThMNDAuOTkgOC45OFE0MC45OSA4LjMxIDQxLjE3IDcuNzNRNDEuMzUgNy4xNSA0MS42OSA2LjczUTQyLjAyIDYuMzAgNDIuNTEgNi4wNlE0My4wMCA1LjgxIDQzLjYxIDUuODFMNDMuNjEgNS44MVE0NC4xNyA1LjgxIDQ0LjU3IDYuMDBRNDQuOTcgNi4xOSA0NS4yOCA2LjUzTDQ1LjI4IDYuNTNMNDUuMjggMy4xNlpNNTIuMTkgNy42MEw1Mi4xOSAxMC41NFE1Mi40OCAxMC45MyA1Mi44MyAxMS4wOVE1My4xOCAxMS4yNiA1My42MCAxMS4yNkw1My42MCAxMS4yNlE1NC40NiAxMS4yNiA1NC45MiAxMC42NVE1NS4zNyAxMC4wNCA1NS4zNyA4Ljg0TDU1LjM3IDguODRRNTUuMzcgNy43MyA1NC45NyA3LjIwUTU0LjU2IDYuNjggNTMuODEgNi42OEw1My44MSA2LjY4UTUzLjI5IDYuNjggNTIuOTEgNi45MlE1Mi41MiA3LjE2IDUyLjE5IDcuNjBMNTIuMTkgNy42MFpNNTIuMTkgMy4xNkw1Mi4xOSA2LjgwUTUyLjU3IDYuMzUgNTMuMDUgNi4wOVE1My41NCA1LjgzIDU0LjE3IDUuODNMNTQuMTcgNS44M1E1NC43MCA1LjgzIDU1LjEzIDYuMDNRNTUuNTYgNi4yMyA1NS44NiA2LjYyUTU2LjE2IDcuMDEgNTYuMzIgNy41NlE1Ni40OCA4LjExIDU2LjQ4IDguODBMNTYuNDggOC44MFE1Ni40OCA5LjU0IDU2LjMwIDEwLjE1UTU2LjEyIDEwLjc1IDU1Ljc4IDExLjE4UTU1LjQ0IDExLjYxIDU0Ljk1IDExLjg1UTU0LjQ3IDEyLjA4IDUzLjg2IDEyLjA4TDUzLjg2IDEyLjA4UTUzLjI2IDEyLjA4IDUyLjg1IDExLjg2UTUyLjQ0IDExLjYzIDUyLjEzIDExLjIyTDUyLjEzIDExLjIyTDUyLjA4IDExLjc3UTUyLjAzIDEyIDUxLjgwIDEyTDUxLjgwIDEyTDUxLjExIDEyTDUxLjExIDMuMTZMNTIuMTkgMy4xNlpNNjIuMjMgNS45Mkw2My4wOCA1LjkyTDU5LjY5IDEzLjc5UTU5LjYzIDEzLjkxIDU5LjU1IDEzLjk5UTU5LjQ3IDE0LjA2IDU5LjMwIDE0LjA2TDU5LjMwIDE0LjA2TDU4LjUxIDE0LjA2TDU5LjYyIDExLjY1TDU3LjExIDUuOTJMNTguMDQgNS45MlE1OC4xOCA1LjkyIDU4LjI2IDUuOTlRNTguMzQgNi4wNiA1OC4zNyA2LjE0TDU4LjM3IDYuMTRMNTkuOTkgOS45N1E2MC4wOSAxMC4yMiA2MC4xNiAxMC41MEw2MC4xNiAxMC41MFE2MC4yNCAxMC4yMiA2MC4zNCA5Ljk3TDYwLjM0IDkuOTdMNjEuOTEgNi4xNFE2MS45NSA2LjA1IDYyLjA0IDUuOThRNjIuMTIgNS45MiA2Mi4yMyA1LjkyTDYyLjIzIDUuOTJaTTY4Ljk2IDEyLjEwTDY4Ljk2IDEyLjEwUTY4LjI0IDEyLjEwIDY3Ljg1IDExLjY5UTY3LjQ2IDExLjI5IDY3LjQ2IDEwLjU0TDY3LjQ2IDEwLjU0TDY3LjQ2IDYuODJMNjYuNzMgNi44MlE2Ni42NCA2LjgyIDY2LjU3IDYuNzZRNjYuNTAgNi43MCA2Ni41MCA2LjU4TDY2LjUwIDYuNThMNjYuNTAgNi4xNkw2Ny41MCA2LjAzTDY3Ljc1IDQuMTVRNjcuNzYgNC4wNiA2Ny44MyA0LjAwUTY3Ljg5IDMuOTUgNjcuOTkgMy45NUw2Ny45OSAzLjk1TDY4LjUzIDMuOTVMNjguNTMgNi4wNEw3MC4yOSA2LjA0TDcwLjI5IDYuODJMNjguNTMgNi44Mkw2OC41MyAxMC40NlE2OC41MyAxMC44NSA2OC43MiAxMS4wM1E2OC45MCAxMS4yMiA2OS4yMCAxMS4yMkw2OS4yMCAxMS4yMlE2OS4zNyAxMS4yMiA2OS40OSAxMS4xOFE2OS42MSAxMS4xMyA2OS43MCAxMS4wOFE2OS43OSAxMS4wMiA2OS44NSAxMC45OFE2OS45MiAxMC45MyA2OS45NyAxMC45M0w2OS45NyAxMC45M1E3MC4wNSAxMC45MyA3MC4xMiAxMS4wM0w3MC4xMiAxMS4wM0w3MC40MyAxMS41NFE3MC4xNSAxMS44MCA2OS43NiAxMS45NVE2OS4zNyAxMi4xMCA2OC45NiAxMi4xMFpNNzQuNjkgMTAuNTJMNzQuNjkgOS4yNlE3My45NSA5LjI5IDczLjQzIDkuMzhRNzIuOTEgOS40NyA3Mi41OSA5LjYyUTcyLjI2IDkuNzcgNzIuMTEgOS45OFE3MS45NiAxMC4xOCA3MS45NiAxMC40M0w3MS45NiAxMC40M1E3MS45NiAxMC42NyA3Mi4wNCAxMC44NVE3Mi4xMiAxMS4wMiA3Mi4yNSAxMS4xM1E3Mi4zOSAxMS4yNCA3Mi41NyAxMS4yOVE3Mi43NiAxMS4zNSA3Mi45NyAxMS4zNUw3Mi45NyAxMS4zNVE3My4yNSAxMS4zNSA3My40OCAxMS4yOVE3My43MiAxMS4yMyA3My45MiAxMS4xMlE3NC4xMyAxMS4wMiA3NC4zMiAxMC44N1E3NC41MSAxMC43MiA3NC42OSAxMC41Mkw3NC42OSAxMC41MlpNNzEuNDMgNy4xMkw3MS4yNCA2Ljc4UTcxLjc0IDYuMjkgNzIuMzIgNi4wNVE3Mi45MSA1LjgxIDczLjYxIDUuODFMNzMuNjEgNS44MVE3NC4xMiA1LjgxIDc0LjUyIDUuOThRNzQuOTIgNi4xNSA3NS4xOSA2LjQ1UTc1LjQ2IDYuNzUgNzUuNTkgNy4xOFE3NS43MyA3LjYwIDc1LjczIDguMTFMNzUuNzMgOC4xMUw3NS43MyAxMkw3NS4yNiAxMlE3NS4xMCAxMiA3NS4wMiAxMS45NVE3NC45MyAxMS45MCA3NC44OSAxMS43NUw3NC44OSAxMS43NUw3NC43NyAxMS4xN1E3NC41MyAxMS4zOSA3NC4zMCAxMS41NlE3NC4wNyAxMS43NCA3My44MiAxMS44NVE3My41NyAxMS45NyA3My4yOCAxMi4wM1E3My4wMCAxMi4xMCA3Mi42NSAxMi4xMEw3Mi42NSAxMi4xMFE3Mi4yOSAxMi4xMCA3MS45OCAxMi4wMFE3MS42NyAxMS45MCA3MS40NCAxMS43MFE3MS4yMSAxMS41MCA3MS4wNyAxMS4yMFE3MC45NCAxMC45MCA3MC45NCAxMC40OEw3MC45NCAxMC40OFE3MC45NCAxMC4xMiA3MS4xNCA5Ljc5UTcxLjMzIDkuNDYgNzEuNzggOS4yMFE3Mi4yMiA4Ljk0IDcyLjk0IDguNzhRNzMuNjUgOC42MSA3NC42OSA4LjU5TDc0LjY5IDguNTlMNzQuNjkgOC4xMVE3NC42OSA3LjQwIDc0LjM4IDcuMDRRNzQuMDggNi42OCA3My40OSA2LjY4TDczLjQ5IDYuNjhRNzMuMDkgNi42OCA3Mi44MyA2Ljc4UTcyLjU2IDYuODggNzIuMzYgNy4wMFE3Mi4xNyA3LjEyIDcyLjAzIDcuMjJRNzEuODkgNy4zMiA3MS43NSA3LjMyTDcxLjc1IDcuMzJRNzEuNjQgNy4zMiA3MS41NiA3LjI2UTcxLjQ4IDcuMjEgNzEuNDMgNy4xMkw3MS40MyA3LjEyWk04NC45NCA1LjkyTDg1Ljc0IDUuOTJMODMuNzcgMTJMODIuOTMgMTJRODIuNzcgMTIgODIuNzEgMTEuODBMODIuNzEgMTEuODBMODEuMzcgNy42N1E4MS4zMiA3LjU0IDgxLjI5IDcuMzlRODEuMjYgNy4yNSA4MS4yMyA3LjEyTDgxLjIzIDcuMTJRODEuMjAgNy4yNSA4MS4xNyA3LjM5UTgxLjE0IDcuNTQgODEuMDkgNy42OEw4MS4wOSA3LjY4TDc5LjcyIDExLjgwUTc5LjY3IDEyIDc5LjQ4IDEyTDc5LjQ4IDEyTDc4LjY4IDEyTDc2LjcxIDUuOTJMNzcuNTUgNS45MlE3Ny42OCA1LjkyIDc3Ljc2IDUuOTlRNzcuODUgNi4wNSA3Ny44OCA2LjE0TDc3Ljg4IDYuMTRMNzkuMDQgMTAuMDZRNzkuMTUgMTAuNDkgNzkuMjEgMTAuODdMNzkuMjEgMTAuODdRNzkuMjYgMTAuNjcgNzkuMzIgMTAuNDdRNzkuMzcgMTAuMjcgNzkuNDQgMTAuMDZMNzkuNDQgMTAuMDZMODAuNzIgNi4xMlE4MC43NSA2LjAzIDgwLjgzIDUuOTdRODAuOTAgNS45MSA4MS4wMSA1LjkxTDgxLjAxIDUuOTFMODEuNDggNS45MVE4MS42MCA1LjkxIDgxLjY4IDUuOTdRODEuNzYgNi4wMyA4MS43OSA2LjEyTDgxLjc5IDYuMTJMODMuMDQgMTAuMDZRODMuMTEgMTAuMjcgODMuMTYgMTAuNDdRODMuMjEgMTAuNjcgODMuMjYgMTAuODdMODMuMjYgMTAuODdRODMuMjkgMTAuNjcgODMuMzQgMTAuNDdRODMuMzggMTAuMjcgODMuNDQgMTAuMDZMODMuNDQgMTAuMDZMODQuNjIgNi4xNFE4NC42NSA2LjA1IDg0Ljc0IDUuOThRODQuODIgNS45MiA4NC45NCA1LjkyTDg0Ljk0IDUuOTJaTTg2Ljc4IDMuMTZMODcuODYgMy4xNkw4Ny44NiA4LjM2TDg4LjEzIDguMzZRODguMjUgOC4zNiA4OC4zNCA4LjMzUTg4LjQyIDguMzAgODguNTEgOC4yMEw4OC41MSA4LjIwTDkwLjQzIDYuMTRROTAuNTEgNi4wNCA5MC42MCA1Ljk4UTkwLjcwIDUuOTIgOTAuODUgNS45Mkw5MC44NSA1LjkyTDkxLjgyIDUuOTJMODkuNTggOC4zMFE4OS40MiA4LjUxIDg5LjIzIDguNjJMODkuMjMgOC42MlE4OS4zNCA4LjY5IDg5LjQzIDguNzlRODkuNTEgOC44OCA4OS41OSA5TDg5LjU5IDlMOTEuOTcgMTJMOTEuMDEgMTJROTAuODggMTIgOTAuNzggMTEuOTZROTAuNjggMTEuOTEgOTAuNjEgMTEuNzlMOTAuNjEgMTEuNzlMODguNjEgOS4zMFE4OC41MiA5LjE3IDg4LjQzIDkuMTNRODguMzQgOS4xMCA4OC4xNiA5LjEwTDg4LjE2IDkuMTBMODcuODYgOS4xMEw4Ny44NiAxMkw4Ni43OCAxMkw4Ni43OCAzLjE2Wk05Mi43MCAxMS4zNEw5Mi43MCAxMS4zNFE5Mi43MCAxMS4xOCA5Mi43NiAxMS4wNVE5Mi44MSAxMC45MSA5Mi45MSAxMC44MVE5My4wMSAxMC43MCA5My4xNSAxMC42NFE5My4yOSAxMC41OCA5My40NCAxMC41OEw5My40NCAxMC41OFE5My42MCAxMC41OCA5My43NCAxMC42NFE5My44OCAxMC43MCA5My45OCAxMC44MVE5NC4wOCAxMC45MSA5NC4xNCAxMS4wNVE5NC4yMCAxMS4xOCA5NC4yMCAxMS4zNEw5NC4yMCAxMS4zNFE5NC4yMCAxMS41MCA5NC4xNCAxMS42NFE5NC4wOCAxMS43NyA5My45OCAxMS44N1E5My44OCAxMS45OCA5My43NCAxMi4wM1E5My42MCAxMi4wOSA5My40NCAxMi4wOUw5My40NCAxMi4wOVE5My4yOSAxMi4wOSA5My4xNSAxMi4wM1E5My4wMSAxMS45OCA5Mi45MSAxMS44N1E5Mi44MSAxMS43NyA5Mi43NiAxMS42NFE5Mi43MCAxMS41MCA5Mi43MCAxMS4zNFpNOTcuNTggMTIuMTBMOTcuNTggMTIuMTBROTYuODYgMTIuMTAgOTYuNDcgMTEuNjlROTYuMDggMTEuMjkgOTYuMDggMTAuNTRMOTYuMDggMTAuNTRMOTYuMDggNi44Mkw5NS4zNSA2LjgyUTk1LjI2IDYuODIgOTUuMTkgNi43NlE5NS4xMiA2LjcwIDk1LjEyIDYuNThMOTUuMTIgNi41OEw5NS4xMiA2LjE2TDk2LjEyIDYuMDNMOTYuMzcgNC4xNVE5Ni4zOCA0LjA2IDk2LjQ1IDQuMDBROTYuNTEgMy45NSA5Ni42MSAzLjk1TDk2LjYxIDMuOTVMOTcuMTUgMy45NUw5Ny4xNSA2LjA0TDk4LjkxIDYuMDRMOTguOTEgNi44Mkw5Ny4xNSA2LjgyTDk3LjE1IDEwLjQ2UTk3LjE1IDEwLjg1IDk3LjM0IDExLjAzUTk3LjUyIDExLjIyIDk3LjgyIDExLjIyTDk3LjgyIDExLjIyUTk3Ljk5IDExLjIyIDk4LjExIDExLjE4UTk4LjIzIDExLjEzIDk4LjMyIDExLjA4UTk4LjQxIDExLjAyIDk4LjQ3IDEwLjk4UTk4LjU0IDEwLjkzIDk4LjU5IDEwLjkzTDk4LjU5IDEwLjkzUTk4LjY3IDEwLjkzIDk4Ljc0IDExLjAzTDk4Ljc0IDExLjAzTDk5LjA1IDExLjU0UTk4Ljc3IDExLjgwIDk4LjM4IDExLjk1UTk3Ljk5IDEyLjEwIDk3LjU4IDEyLjEwWk0xMDIuNTggNS44M0wxMDIuNTggNS44M1ExMDMuMjQgNS44MyAxMDMuNzggNi4wNVExMDQuMzEgNi4yNyAxMDQuNjkgNi42OFExMDUuMDcgNy4wOSAxMDUuMjcgNy42N1ExMDUuNDcgOC4yNCAxMDUuNDcgOC45NkwxMDUuNDcgOC45NlExMDUuNDcgOS42OCAxMDUuMjcgMTAuMjVRMTA1LjA3IDEwLjgzIDEwNC42OSAxMS4yNFExMDQuMzEgMTEuNjUgMTAzLjc4IDExLjg3UTEwMy4yNCAxMi4wOCAxMDIuNTggMTIuMDhMMTAyLjU4IDEyLjA4UTEwMS45MCAxMi4wOCAxMDEuMzcgMTEuODdRMTAwLjgzIDExLjY1IDEwMC40NSAxMS4yNFExMDAuMDcgMTAuODMgOTkuODcgMTAuMjVROTkuNjcgOS42OCA5OS42NyA4Ljk2TDk5LjY3IDguOTZROTkuNjcgOC4yNCA5OS44NyA3LjY3UTEwMC4wNyA3LjA5IDEwMC40NSA2LjY4UTEwMC44MyA2LjI3IDEwMS4zNyA2LjA1UTEwMS45MCA1LjgzIDEwMi41OCA1LjgzWk0xMDIuNTggMTEuMjVMMTAyLjU4IDExLjI1UTEwMy40OCAxMS4yNSAxMDMuOTIgMTAuNjVRMTA0LjM2IDEwLjA0IDEwNC4zNiA4Ljk2TDEwNC4zNiA4Ljk2UTEwNC4zNiA3Ljg4IDEwMy45MiA3LjI3UTEwMy40OCA2LjY3IDEwMi41OCA2LjY3TDEwMi41OCA2LjY3UTEwMi4xMiA2LjY3IDEwMS43OCA2LjgyUTEwMS40NCA2Ljk4IDEwMS4yMiA3LjI3UTEwMC45OSA3LjU3IDEwMC44OCA4LjAwUTEwMC43NyA4LjQyIDEwMC43NyA4Ljk2TDEwMC43NyA4Ljk2UTEwMC43NyAxMC4wNCAxMDEuMjIgMTAuNjVRMTAxLjY2IDExLjI1IDEwMi41OCAxMS4yNVoiIGZpbGw9ImN1cnJlbnRDb2xvciIvPjwvc3ZnPid9LGljb25TdHlsZTpmdW5jdGlvbigpe3JldHVybnttYXJnaW46IjAgOHB4IDAgMnB4IixkaXNwbGF5OiJpbmxpbmUtYmxvY2siLHZlcnRpY2FsQWxpZ246Im1pZGRsZSIsd2lkdGg6IjE0cHgiLGhlaWdodDoiMTRweCIsZmxvYXQ6ImxlZnQifX0sYW5jaG9yU3R5bGU6ZnVuY3Rpb24oKXt2YXIgZT17Y29sb3I6dGhpcy53aGl0ZWxhYmVsLnRleHRDb2xvcj90aGlzLndoaXRlbGFiZWwudGV4dENvbG9yOiIjNGY0ZjRmIixmb250U2l6ZToiMTJweCIsZm9udFdlaWdodDoiNDAwIix0ZXh0RGVjb3JhdGlvbjoibm9uZSIscGFkZGluZzoiMC41ZW0ifTtyZXR1cm4gdGhpcy5pc0Zsb2F0aW5nJiYoZT1GKEYoe30sZSkse30se2hlaWdodDoiMzBweCIsd2lkdGg6ImZpdC1jb250ZW50Iixib3hTaXppbmc6ImJvcmRlci1ib3giLHBhZGRpbmc6IjZweCAxNHB4Iixib3JkZXJSYWRpdXM6IjEwMHB4Iixib3JkZXI6IjFweCBzb2xpZCAjRjZGNkY2IixiYWNrZ3JvdW5kOiIjRkZGIixib3hTaGFkb3c6IjBweCA2cHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA0KSIsbWFyZ2luOiIwIGF1dG8ifSkpLGV9LHdyYXBwZXJTdHlsZTpmdW5jdGlvbigpe3ZhciBlPXtkaXNwbGF5OiJmbGV4IixhbGlnbkl0ZW1zOiJjZW50ZXIiLGp1c3RpZnlDb250ZW50OiJjZW50ZXIifTtyZXR1cm4gdGhpcy5pc0Zsb2F0aW5nJiYoZT1GKEYoe30sZSkse30se2hlaWdodDoiMTAwJSJ9KSksZX19LG1ldGhvZHM6e2dldFVVSUQ6ZnVuY3Rpb24oKXtyZXR1cm4gTS5nZW5lcmF0ZVVVSUQoKX0sZ2V0UmFuZG9tSW50OmZ1bmN0aW9uKCl7cmV0dXJuIE0uZ2VuZXJhdGVSYW5kb21JbnQoKX0sb25DbGljazpmdW5jdGlvbigpe3ZhciBlPXRoaXMudGF3a1RvVXJsfHxhdG9iKCJhSFIwY0hNNkx5OTNkM2N1ZEdGM2F5NTBidz09Iik7d2luZG93Lm9wZW4oZSwiX2JsYW5rIiwibm9vcGVuZXIiKX0sY29udmVydEhUTUw6ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuIGU7dmFyIHQ9ZS5tYXRjaCgvXCpbXipdK1wqL2dpKSxuPWUubWF0Y2goL19bXl9dK18vZ2kpO24mJm4ubGVuZ3RoPjAmJm4uZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIG4saT10LmluZGV4T2YoIl8iKSxyPXQubGFzdEluZGV4T2YoIl8iKTtuPXQuc3Vic3RyaW5nKDAsaSkrIjxpPiIrdC5zdWJzdHJpbmcoaSsxLHIpKyI8L2k+Iit0LnN1YnN0cmluZyhyKzEsdC5sZW5ndGgpLGU9ZS5yZXBsYWNlKHQsbil9KSksdCYmdC5sZW5ndGg+MCYmdC5mb3JFYWNoKChmdW5jdGlvbih0KXt2YXIgbixpPXQuaW5kZXhPZigiKiIpLHI9dC5sYXN0SW5kZXhPZigiKiIpO249dC5zdWJzdHJpbmcoMCxpKSsiPGI+Iit0LnN1YnN0cmluZyhpKzEscikrIjwvYj4iK3Quc3Vic3RyaW5nKHIrMSx0Lmxlbmd0aCksZT1lLnJlcGxhY2UodCxuKX0pKTt2YXIgaT10aGlzLmltYWdlVXJsPyc8aW1nIHNyYz0iJy5jb25jYXQodGhpcy5pbWFnZVVybCwnIiBzdHlsZT0id2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDsiPicpOic8c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ij4nLmNvbmNhdCh6LCI8L3NwYW4+Iik7cmV0dXJuIGU9ZS5yZXBsYWNlKC86dGF3a3k6L2dpLGkpfX19LChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiBPYmplY3Qua2V5cyhlLndoaXRlbGFiZWwpLmxlbmd0aD90KCJkaXYiLHtzdHlsZTplLndyYXBwZXJTdHlsZX0sW2Uud2hpdGVsYWJlbC5sYWJlbD90KGUud2hpdGVsYWJlbC51cmw/ImEiOiJzcGFuIixlLl9iKHtyZWY6ImJyYW5kIix0YWc6ImNvbXBvbmVudCIsc3R5bGU6ZS5hbmNob3JTdHlsZSxhdHRyczp7aHJlZjohIWUud2hpdGVsYWJlbC51cmwmJnRoaXMud2hpdGVsYWJlbC51cmwsdGFyZ2V0OiEhZS53aGl0ZWxhYmVsLnVybCYmIl9ibGFuayJ9LGRvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLmNvbnZlcnRIVE1MKGUud2hpdGVsYWJlbC5sYWJlbCkpfX0sImNvbXBvbmVudCIsZS4kYXR0cnMsITEpKTplLl9lKCldLDEpOnQoImRpdiIse3N0eWxlOmUud3JhcHBlclN0eWxlLGF0dHJzOntpZDplLmdldFVVSUQoKX19LFtlLl9sKGUuZ2V0UmFuZG9tSW50KCksKGZ1bmN0aW9uKG4pe3JldHVybiB0KCJhIix7a2V5OiIxIi5jb25jYXQobiksYXR0cnM6e2lkOmUuZ2V0VVVJRCgpfX0pfSkpLHQoImEiLGUuX2Ioe3JlZjoiYnJhbmQiLHN0eWxlOmUuYW5jaG9yU3R5bGUsYXR0cnM6e2lkOmUuZ2V0VVVJRCgpLGhyZWY6ImphdmFzY3JpcHQ6dm9pZCgwKSJ9LG9uOntjbGljazpmdW5jdGlvbih0KXtyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLGUub25DbGljay5hcHBseShudWxsLGFyZ3VtZW50cyl9fX0sImEiLGUuJGF0dHJzLCExKSxbdCgic3BhbiIse3N0eWxlOmUuaWNvblN0eWxlLGRvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLnRhd2t5TG9nb1N2Zyl9fSksdCgic3BhbiIse2RvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLnBvd2VyZWRCeVN2Zyl9fSldKSxlLl9sKGUuZ2V0UmFuZG9tSW50KCksKGZ1bmN0aW9uKG4pe3JldHVybiB0KCJhIix7a2V5OiIyIi5jb25jYXQobiksYXR0cnM6e2lkOmUuZ2V0VVVJRCgpfX0pfSkpXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLFY9e25hbWU6InRhd2stYnV0dG9uIixwcm9wczp7aHJlZjp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSxpc0NpcmNsZTp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzRGFzaGVkOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0saXNEaXNhYmxlZDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzT3V0bGluZTp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzUm91bmRlZDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzVGV4dDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LHNpemU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH0sc3RhdHVzOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9LGludmVyc2U6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxsYWJlbDp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfX0sY29tcHV0ZWQ6e3RhZ05hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ocmVmPyJhIjoiYnV0dG9uIn0sY2xhc3NlczpmdW5jdGlvbigpe3JldHVyblsidGF3ay1idXR0b24iLCF0aGlzLnN0YXR1c3x8dGhpcy5pc1RleHR8fHRoaXMuaXNPdXRsaW5lfHx0aGlzLmlzRGFzaGVkPyIiOiJ0YXdrLWJ1dHRvbi0iLmNvbmNhdCh0aGlzLnN0YXR1cyksdGhpcy5pc1RleHQ/InRhd2stYnV0dG9uLXRleHQiOiIiLHRoaXMuaXNPdXRsaW5lJiYhdGhpcy5pc1RleHQ/InRhd2stYnV0dG9uLW91dGxpbmUgdGF3ay1idXR0b24tb3V0bGluZS0iLmNvbmNhdCh0aGlzLnN0YXR1cyk6IiIsdGhpcy5pc0NpcmNsZSYmIXRoaXMuaXNUZXh0PyJ0YXdrLWJ1dHRvbi1jaXJjbGUiOiIiLHRoaXMuaXNSb3VuZGVkJiYhdGhpcy5pc0NpcmNsZT8idGF3ay1idXR0b24tcm91bmRlZCI6IiIsdGhpcy5pc0Rhc2hlZD8idGF3ay1idXR0b24tZGFzaGVkIjoiIix0aGlzLnNpemU/InRhd2stYnV0dG9uLSIuY29uY2F0KHRoaXMuc2l6ZSk6IiIsdGhpcy5pbnZlcnNlJiYidGF3ay1idXR0b24tY29sb3ItaW52ZXJzZSJdfX19LFc9KG4oImQyZjciKSxzKFYsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4oMCxlLl9zZWxmLl9jKShlLnRhZ05hbWUse3RhZzoiY29tcG9uZW50IixjbGFzczplLmNsYXNzZXMsYXR0cnM6e2Rpc2FibGVkOmUuaXNEaXNhYmxlZCx0eXBlOiF0aGlzLmhyZWYmJiJidXR0b24iLGhyZWY6ISF0aGlzLmhyZWYmJnRoaXMuaHJlZiwiYXJpYS1sYWJlbCI6ZS5sYWJlbCxyb2xlOiEhdGhpcy5ocmVmJiYiYnV0dG9uIix0aXRsZTplLmxhYmVsfSxvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIGUuJGVtaXQoImNsaWNrIil9LGZvY3Vzb3V0OmZ1bmN0aW9uKHQpe3JldHVybiBlLiRlbWl0KCJmb2N1c291dCIpfX19LFtlLl90KCJkZWZhdWx0IildLDIpfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLFk9e25hbWU6InRhd2stY2FyZCIscHJvcHM6e2NvbG9yOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9LHNpemU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH19fSxLPShuKCJlNjk3IikscyhZLChmdW5jdGlvbihlLHQpe3JldHVybiBlKCJkaXYiLHQuX2codC5fYih7cmVmOnQuZGF0YS5yZWYsY2xhc3M6WyJ0YXdrLWNhcmQiLHQucHJvcHMuY29sb3I/InRhd2stY2FyZC0iLmNvbmNhdCh0LnByb3BzLmNvbG9yKToiIix0LnByb3BzLnNpemU/InRhd2stY2FyZC0iLmNvbmNhdCh0LnByb3BzLnNpemUpOiIiLHQuZGF0YS5jbGFzcyx0LmRhdGEuc3RhdGljQ2xhc3NdLHN0eWxlOlt0LmRhdGEuc3R5bGUsdC5kYXRhLnN0YXRpY1N0eWxlXX0sImRpdiIsdC5kYXRhLmF0dHJzLCExKSx0Lmxpc3RlbmVycyksW3QuX3QoImRlZmF1bHQiKV0sMil9KSxbXSwhMCxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsSj17bmFtZToidGF3ay1pbWFnZSIscHJvcHM6e3NyYzp7dHlwZTpTdHJpbmcscmVxdWlyZWQ6ITB9LGFsdDp7dHlwZTpTdHJpbmd9LHBvc2l0aW9uOnt0eXBlOlN0cmluZyx2YWxpZGF0b3I6ZnVuY3Rpb24oZSl7cmV0dXJuLTEhPT1bImxlZnQiLCJyaWdodCIsImNlbnRlciJdLmluZGV4T2YoZSl9fX0sZGF0YTpmdW5jdGlvbigpe3JldHVybntsb2FkZWQ6ITF9fSxkaXJlY3RpdmVzOnsiaW1hZ2UtbG9hZCI6e2luc2VydGVkOmZ1bmN0aW9uKGUsdCxuKXtlLm9ubG9hZD1mdW5jdGlvbigpe24uY29udGV4dC5sb2FkZWQ9ITAsbi5jb250ZXh0LiRlbWl0KCJpbWFnZUxvYWRlZCIpfSxlLm9uZXJyb3I9ZnVuY3Rpb24oKXtuLmNvbnRleHQubG9hZGVkPSEwLG4uY29udGV4dC4kZW1pdCgiaW1hZ2VMb2FkZWQiKX19fX19LEc9KG4oImQwMjAiKSxzKEosKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse2NsYXNzOltlLnBvc2l0aW9uJiYidGF3ay1pbWFnZS0iLmNvbmNhdChlLnBvc2l0aW9uKV19LFtlLmxvYWRlZD9lLl9lKCk6dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2staW1hZ2UtbG9hZGVyIn0pLHQoImltZyIsZS5fYih7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6ZS5sb2FkZWQsZXhwcmVzc2lvbjoibG9hZGVkIn0se25hbWU6ImltYWdlLWxvYWQiLHJhd05hbWU6InYtaW1hZ2UtbG9hZCJ9XSxzdGF0aWNDbGFzczoidGF3ay1pbWFnZSIsYXR0cnM6e3NyYzplLnNyYyxhbHQ6ZS5hbHR9fSwiaW1nIixlLiRhdHRycywhMSkpXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsWj1zKHtuYW1lOiJ0YXdrLXZpZGVvIixwcm9wczp7Y29udGVudDpPYmplY3QsaXNNb2JpbGU6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfX0sY29tcHV0ZWQ6e3ZpZGVvTGluazpmdW5jdGlvbigpe3ZhciBlPXRoaXMuY29udGVudC51cmwsdD1bXSxuPXRoaXMuY29udGVudC5vcHRpb25zO2lmKHZvaWQgMCE9PXRoaXMuY29udGVudC5zb3VyY2Upe2lmKCJzZWxmaG9zdGVkIj09PXRoaXMuY29udGVudC5zb3VyY2UpcmV0dXJuIG4uc3RhcnRUaW1lJiZuLmVuZFRpbWUmJihlKz0iI3Q9Ii5jb25jYXQobi5zdGFydFRpbWUsIiwiKS5jb25jYXQobi5lbmRUaW1lKSksIW4uc3RhcnRUaW1lJiZuLmVuZFRpbWUmJihlKz0iI3Q9MCwiLmNvbmNhdChuLmVuZFRpbWUpKSxuLnN0YXJ0VGltZSYmIW4uZW5kVGltZSYmKGUrPSIjdD0iLmNvbmNhdChuLnN0YXJ0VGltZSkpLGU7aWYobiYmKHQucHVzaChuLmxvb3A/Imxvb3A9MSI6Imxvb3A9MCIpLCJ2aW1lbyI9PT10aGlzLmNvbnRlbnQuc291cmNlP3QucHVzaCgiY29udHJvbHM9MSIpOnQucHVzaChuLmNvbnRyb2xzPyJjb250cm9scz0xIjoiY29udHJvbHM9MCIpLHRoaXMuaXNNb2JpbGUmJiFuLm1vYmlsZT90LnB1c2goImF1dG9wbGF5PTAiKTp0LnB1c2gobi5hdXRvcGxheT8iYXV0b3BsYXk9MSI6ImF1dG9wbGF5PTAiKSksInlvdXR1YmUiPT10aGlzLmNvbnRlbnQuc291cmNlKXt2YXIgaT10aGlzLm1hdGNoWW91dHViZVVybChlKTtpJiYoZT1uLnByaXZhY3k/Imh0dHBzOi8vd3d3LnlvdXR1YmUtbm9jb29raWUuY29tL2VtYmVkLyIuY29uY2F0KGkpOiJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8iLmNvbmNhdChpKSksbiYmKG4uYnJhbmRpbmcmJnQucHVzaCgibW9kZXN0YnJhbmRpbmc9MSIpLG4uc3RhcnRUaW1lJiZ0LnB1c2goInN0YXJ0PSIuY29uY2F0KG4uc3RhcnRUaW1lKSksbi5lbmRUaW1lJiZ0LnB1c2goImVuZD0iLmNvbmNhdChuLmVuZFRpbWUpKSx0LnB1c2gobi5tdXRlPyJtdXRlPTEiOiJtdXRlPTAiKSl9ZWxzZSBpZigiZGFpbHltb3Rpb24iPT10aGlzLmNvbnRlbnQuc291cmNlKXt2YXIgcj10aGlzLm1hdGNoRGFpbHlNb3Rpb24oZSk7ZT0iaHR0cHM6Ly93d3cuZGFpbHltb3Rpb24uY29tL2VtYmVkL3ZpZGVvLyIuY29uY2F0KHIpLG4mJihuLnN0YXJ0VGltZSYmdC5wdXNoKCJzdGFydD0iLmNvbmNhdChuLnN0YXJ0VGltZSkpLG4uY29udHJvbHNDb2xvciYmdC5wdXNoKCJ1aS1oaWdobGlnaHQ9Ii5jb25jYXQobi5jb250cm9sc0NvbG9yKSksdC5wdXNoKG4ubG9nbz8idWktbG9nbz0xIjoidWktbG9nbz0wIiksdC5wdXNoKG4uaW5mbz8idWktc3RhcnQtc2NyZWVuLWluZm89MSI6InVpLXN0YXJ0LXNjcmVlbi1pbmZvPTAiKSx0LnB1c2gobi5tdXRlPyJtdXRlPTEiOiJtdXRlPTAiKSl9ZWxzZSBpZigidmltZW8iPT10aGlzLmNvbnRlbnQuc291cmNlKXt2YXIgbz1uZXcgVVJMKGUpLnNlYXJjaFBhcmFtcyxhPXRoaXMubWF0Y2hWaW1lbyhlKTtlPSJodHRwczovL3BsYXllci52aW1lby5jb20vdmlkZW8vIi5jb25jYXQoYSksby5nZXQoImgiKSYmdC5wdXNoKCJoPSIuY29uY2F0KG8uZ2V0KCJoIikpKSxvLmdldCgiYXBwX2lkIikmJnQucHVzaCgiYXBwX2lkPSIuY29uY2F0KG8uZ2V0KCJhcHBfaWQiKSkpLG4mJih0LnB1c2gobi5tdXRlPyJtdXRlZD0xIjoibXV0ZWQ9MCIpLG4uY29udHJvbHNDb2xvciYmdC5wdXNoKCJjb2xvcj0iLmNvbmNhdChuLmNvbnRyb2xzQ29sb3IpKSx0LnB1c2gobi5pbnRyb1RpdGxlPyJ0aXRsZT0xIjoidGl0bGU9MCIpLHQucHVzaChuLmludHJvUG9ydHJhaXQ/InBvcnRyYWl0PTEiOiJwb3J0cmFpdD0wIiksdC5wdXNoKG4uaW50cm9CeWxpbmU/ImJ5bGluZT0xIjoiYnlsaW5lPTAiKSxuLnN0YXJ0VGltZSYmdC5wdXNoKCIjdD0iLmNvbmNhdChuLnN0YXJ0VGltZSwicyIpKSl9ZWxzZSBpZigibG9vbSI9PT10aGlzLmNvbnRlbnQuc291cmNlKXt2YXIgcz10aGlzLm1hdGNoTG9vbVVybChlKTtlPSJodHRwczovL3d3dy5sb29tLmNvbS9lbWJlZC8iLmNvbmNhdChzKSxuLnN0YXJ0VGltZSYmdC5wdXNoKCJ0PSIrbi5zdGFydFRpbWUpfX1yZXR1cm4iIi5jb25jYXQoZSwiPyIpLmNvbmNhdCh0LmpvaW4oIiYiKSl9fSxtZXRob2RzOnttYXRjaFlvdXR1YmVVcmw6ZnVuY3Rpb24oZSl7dmFyIHQ9L14oPzpodHRwcz86XC9cLyk/KD86bVwufHd3d1wuKT8oPzp5b3V0dVwuYmVcL3x5b3V0dWJlXC5jb21cLyg/OmVtYmVkXC98dlwvfHdhdGNoXD92PXx3YXRjaFw/Lismdj0pKSgoXHd8LSl7MTF9KSg/OlxTKyk/JC87cmV0dXJuISFlLm1hdGNoKHQpJiZlLm1hdGNoKHQpWzFdfSxtYXRjaERhaWx5TW90aW9uOmZ1bmN0aW9uKGUpe3ZhciB0PS9eKD86KD86aHR0cHM/KTopPyg/OlwvXC8pPyg/Ond3d1wuKT8oPzooPzpkYWlseW1vdGlvblwuY29tKD86XC9lbWJlZCk/XC92aWRlbyl8ZGFpXC5seSlcLyhbYS16QS1aMC05XSspKD86X1tcd18tXSspPyQvO3JldHVybiEhZS5tYXRjaCh0KSYmZS5tYXRjaCh0KVsxXX0sbWF0Y2hWaW1lbzpmdW5jdGlvbihlKXt2YXIgdD1lLm1hdGNoKC9eaHR0cHM/OlwvXC8oPzp3d3dcLnxwbGF5ZXJcLik/dmltZW8uY29tXC8oPzpjaGFubmVsc1wvKD86XHcrXC8pP3xncm91cHNcLyhbXlxcL10qKVwvdmlkZW9zXC98YWxidW1cLyhcZCspXC92aWRlb1wvfHZpZGVvXC98KShcZCspKD86JHxcL3xcPykoPzpbP10/LiopJC8pO3JldHVybiEhKHQmJnQubGVuZ3RoPj00KSYmdFszXX0sbWF0Y2hMb29tVXJsOmZ1bmN0aW9uKGUpe3ZhciB0PWUubWF0Y2goLyg/Omh0dHBzPzpcL1wvKT8oPzpzdGFnZVwubG9vbVwuY29tfGxvb21cLmNvbXx3d3dcLmxvb20uY29tfGxvb21sb2NhbFwuY29tOjQ0NDQpXC8oc2hhcmV8ZW1iZWQpXC8oW2EtZjAtOV0rKS8pO3JldHVybiEoIXR8fCF0Lmxlbmd0aCkmJnRbdC5sZW5ndGgtMV19fX0sKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIsWyJzZWxmaG9zdGVkIj09PWUuY29udGVudC5zb3VyY2U/dCgidmlkZW8iLGUuX2Ioe3N0YXRpY0NsYXNzOiJ0YXdrLXZpZGVvLWVsIixhdHRyczp7c3JjOmUudmlkZW9MaW5rLCJkYXRhLXNyYyI6ZS52aWRlb0xpbmssY29udHJvbHM6ZS5jb250ZW50Lm9wdGlvbnMuY29udHJvbHMsbG9vcDplLmNvbnRlbnQub3B0aW9ucy5sb29wLGF1dG9wbGF5OmUuY29udGVudC5vcHRpb25zLmF1dG9wbGF5JiYhZS5pc01vYmlsZXx8ZS5jb250ZW50Lm9wdGlvbnMuYXV0b3BsYXkmJmUuaXNNb2JpbGUmJmUuY29udGVudC5vcHRpb25zLm1vYmlsZX0sZG9tUHJvcHM6e211dGVkOmUuY29udGVudC5vcHRpb25zLm11dGV9fSwidmlkZW8iLGUuJGF0dHJzLCExKSk6dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stdmlkZW8taWZyYW1lLWNvbnRhaW5lciJ9LFt0KCJpZnJhbWUiLGUuX2Ioe3N0YXRpY0NsYXNzOiJ0YXdrLXZpZGVvLWlmcmFtZSB0YXdrLXZpZGVvLWVsIixhdHRyczp7c3JjOmUudmlkZW9MaW5rLCJkYXRhLXNyYyI6ZS52aWRlb0xpbmssZnJhbWVib3JkZXI6IjAiLGFsbG93OiJhY2NlbGVyb21ldGVyOyBhdXRvcGxheTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZSIsYWxsb3dmdWxsc2NyZWVuOiIifX0sImlmcmFtZSIsZS4kYXR0cnMsITEpKV0pXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxlZT17bmFtZToidGF3ay1jaGF0LWJ1YmJsZSIsY29tcG9uZW50czp7VGF3a0ltYWdlOkcsVGF3a1ZpZGVvOlosVGF3a0ljb246bH0scHJvcHM6e2lzQWN0aXZlOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sYXR0YWNobWVudHM6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57dmlkZW9zOltdLGltYWdlczpbXSxhdWRpb3M6W10sZmlsZXM6W119fX19LGNvbXB1dGVkOntnZXRDaGF0QnViYmxlQ2xhc3NlczpmdW5jdGlvbigpe3JldHVybiB0aGlzLmlzQWN0aXZlPyJ0YXdrLWFjdGl2ZSI6IiJ9fSxtZXRob2RzOntoYW5kbGVPcGVuTmV3VGFiOmZ1bmN0aW9uKGUpe3dpbmRvdy5vcGVuKGUsIl9ibGFuayIpfSxiZWF1dGlmeUZpbGVuYW1lOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sYXN0SW5kZXhPZigiLiIpLGk9ZS5zdWJzdHJpbmcoMCxuKSxyPSIuIi5jb25jYXQoZS5zdWJzdHJpbmcobisxKSk7cmV0dXJuIGkubGVuZ3RoPjcmJihyPWkuc3Vic3RyaW5nKGkubGVuZ3RoLTMpK3IsaT1pLnN1YnN0cmluZygwLGkubGVuZ3RoLTMpKSwnPHNwYW4gY2xhc3M9InRhd2stZmxleC0xIHRhd2stdGV4dC10cnVuY2F0ZSI+Jy5jb25jYXQoaSwnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0YXdrLWZsZXgtbm9uZSI+JykuY29uY2F0KHIsJzwvc3Bhbj48c3BhbiBjbGFzcz0idGF3ay1mbGV4LW5vbmUiPiZuYnNwOygnKS5jb25jYXQodCwiKTwvc3Bhbj4iKX0saGFuZGxlSW1hZ2VMb2FkZWQ6ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJpbWFnZUxvYWRlZCIpfX19LHRlPShuKCI4YzRmIikscyhlZSwoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1idWJibGUiLGNsYXNzOmUuZ2V0Q2hhdEJ1YmJsZUNsYXNzZXN9LFt0aGlzLiRzbG90cy5kZWZhdWx0P3QoInAiLFtlLl90KCJkZWZhdWx0IildLDIpOmUuX2UoKSx0aGlzLmF0dGFjaG1lbnRzLnZpZGVvcyYmdGhpcy5hdHRhY2htZW50cy52aWRlb3MubGVuZ3RoP3QoInVsIix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1idWJibGUtdmlkZW9zIn0sZS5fbCh0aGlzLmF0dGFjaG1lbnRzLnZpZGVvcywoZnVuY3Rpb24oZSxuKXtyZXR1cm4gdCgibGkiLHtrZXk6InZpZGVvLSIuY29uY2F0KG4pLHN0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtdG9wIn0sW3QoInRhd2stdmlkZW8iLHthdHRyczp7Y29udGVudDp7c291cmNlOmUuc291cmNlLHVybDplLnVybCxvcHRpb25zOmUub3B0aW9uc319fSldLDEpfSkpLDApOmUuX2UoKSx0aGlzLmF0dGFjaG1lbnRzLmltYWdlcyYmdGhpcy5hdHRhY2htZW50cy5pbWFnZXMubGVuZ3RoP3QoInVsIix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1idWJibGUtaW1hZ2VzIixjbGFzczoidGF3ay1ncmlkLSIuY29uY2F0KHRoaXMuYXR0YWNobWVudHMuaW1hZ2VzLmxlbmd0aCl9LGUuX2wodGhpcy5hdHRhY2htZW50cy5pbWFnZXMsKGZ1bmN0aW9uKG4saSl7cmV0dXJuIHQoImxpIix7a2V5OiJpbWFnZS0iLmNvbmNhdChpKSxvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIGUuaGFuZGxlT3Blbk5ld1RhYihuLnNvdXJjZSl9fX0sW3QoInRhd2staW1hZ2UiLHthdHRyczp7c3JjOm4uc291cmNlLGFsdDpuLm5hbWV9LG9uOntpbWFnZUxvYWRlZDplLmhhbmRsZUltYWdlTG9hZGVkfX0pXSwxKX0pKSwwKTplLl9lKCksdGhpcy5hdHRhY2htZW50cy5hdWRpb3MmJnRoaXMuYXR0YWNobWVudHMuYXVkaW9zLmxlbmd0aD90KCJ1bCIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXQtYnViYmxlLWF1ZGlvcyJ9LGUuX2wodGhpcy5hdHRhY2htZW50cy5hdWRpb3MsKGZ1bmN0aW9uKG4saSl7cmV0dXJuIHQoImxpIix7a2V5OiJhdWRpby0iLmNvbmNhdChpKSxzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXRvcCIsc3RhdGljU3R5bGU6e292ZXJmbG93OiJoaWRkZW4ifX0sW3QoImF1ZGlvIix7YXR0cnM6e2NvbnRyb2xzOiIiLHNyYzpuLnNvdXJjZX19LFt0KCJzb3VyY2UiLHthdHRyczp7c3JjOm4uc291cmNlLHR5cGU6bi50eXBlfX0pXSksdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIHRhd2stbWFyZ2luLXhzbWFsbC10b3AifSxbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImF0dGFjaG1lbnQiLHNpemU6InNtYWxsIn19KSx0KCJhIix7c3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixzdGF0aWNTdHlsZTp7b3ZlcmZsb3c6ImhpZGRlbiJ9LGF0dHJzOntocmVmOm4uc291cmNlLHRhcmdldDoiX2JsYW5rIn0sZG9tUHJvcHM6e2lubmVySFRNTDplLl9zKGUuYmVhdXRpZnlGaWxlbmFtZShuLm5hbWUsbi5zaXplKSl9fSldLDEpXSl9KSksMCk6ZS5fZSgpLHRoaXMuYXR0YWNobWVudHMuZmlsZXMmJnRoaXMuYXR0YWNobWVudHMuZmlsZXMubGVuZ3RoP3QoInVsIix7c3RhdGljQ2xhc3M6InRhd2stY2hhdC1idWJibGUtZmlsZXMifSxbdGhpcy5hdHRhY2htZW50cy5maWxlcyYmdGhpcy5hdHRhY2htZW50cy5maWxlcy5sZW5ndGg/ZS5fbCh0aGlzLmF0dGFjaG1lbnRzLmZpbGVzLChmdW5jdGlvbihuLGkpe3JldHVybiB0KCJsaSIse2tleToiZmlsZS1uYW1lLSIuY29uY2F0KGkpLHN0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LXRvcCIsc3RhdGljU3R5bGU6e292ZXJmbG93OiJoaWRkZW4ifX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJhdHRhY2htZW50IixzaXplOiJzbWFsbCJ9fSksdCgiYSIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSIsc3RhdGljU3R5bGU6e292ZXJmbG93OiJoaWRkZW4ifSxhdHRyczp7aHJlZjpuLnNvdXJjZSx0YXJnZXQ6Il9ibGFuayJ9LGRvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLmJlYXV0aWZ5RmlsZW5hbWUobi5uYW1lLG4uc2l6ZSkpfX0pXSwxKX0pKTplLl9lKCldLDIpOmUuX2UoKV0pfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLG5lPXtkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2xvYWRlZDohMSxlbW9qaW9uZTpudWxsfX0sbW91bnRlZDpmdW5jdGlvbigpe3RoaXMuaW5jbHVkZVNjcmlwdCgpfSxtZXRob2RzOntpbmNsdWRlU2NyaXB0OmZ1bmN0aW9uKCl7aWYodm9pZCAwPT09d2luZG93LmVtb2ppb25lJiZ0aGlzLmVuYWJsZWQpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2Uuc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvZW1vamlvbmUvMi4yLjcvbGliL2pzL2Vtb2ppb25lLm1pbi5qcyIsZS50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGUuYXN5bmM9ITAsZS5kZWZlcj0hMCxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpLml0ZW0oMCkuYXBwZW5kQ2hpbGQoZSl9fX19LGllPXMoe25hbWU6InRhd2stZW1vamkiLG1peGluczpbbmVdLHByb3BzOntlbW9qaTpTdHJpbmcsZW5hYmxlZDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITB9fSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2ltYWdlOm51bGwsY2hlY2tUaW1lb3V0Om51bGwsY291bnRlcjowLHNob3c6ITEsaXNFbW9qaU9ubHk6ITF9fSxtb3VudGVkOmZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkP3RoaXMuY2hlY2tTY3JpcHRMb2FkZWQoKTp0aGlzLmltYWdlPXRoaXMuZW1vamksdGhpcy4kcmVmcy5pbWFnZSYmKHRoaXMuc2hvdz0hMCl9LG1ldGhvZHM6e2NoZWNrU2NyaXB0TG9hZGVkOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcztpZihjbGVhclRpbWVvdXQodGhpcy5jaGVja1NjcmlwdExvYWRlZCksdm9pZCAwPT09d2luZG93LmVtb2ppb25lKXJldHVybiB0aGlzLmNvdW50ZXIrKywyMD09PXRoaXMuY291bnRlcj8oY2xlYXJUaW1lb3V0KHRoaXMuY2hlY2tUaW1lb3V0KSx0aGlzLmNvdW50ZXI9MCx2b2lkKHRoaXMuaW1hZ2U9dGhpcy5lbW9qaSkpOnZvaWQodGhpcy5jaGVja1RpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLmNoZWNrU2NyaXB0TG9hZGVkKCl9KSwyMCkpO2NsZWFyVGltZW91dCh0aGlzLmNoZWNrVGltZW91dCksdGhpcy5lbW9qaW9uZXx8KHRoaXMuZW1vamlvbmU9d2luZG93LmVtb2ppb25lKSx0aGlzLmNvdW50ZXI9MCwwPT09dGhpcy5lbW9qaW9uZS51bmlmeVVuaWNvZGUodGhpcy5lbW9qaSkucmVwbGFjZSh0aGlzLmVtb2ppb25lLnJlZ1VuaWNvZGUsIiIpLnRyaW0oKS5sZW5ndGgmJih0aGlzLmlzRW1vamlPbmx5PSEwKTt2YXIgdD10aGlzLmVtb2ppO3Q9dC5yZXBsYWNlKC/CqS9nbSwiJmNvcHk7IikucmVwbGFjZSgvwq4vZ20sIiZyZWc7IikucmVwbGFjZSgv4oSiL2dtLCImdHJhZGU7IiksdD10aGlzLmVtb2ppb25lLnRvSW1hZ2UodCksdGhpcy5pbWFnZT10fX19LChmdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuKDAsZS5fc2VsZi5fYykoInNwYW4iLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTplLnNob3csZXhwcmVzc2lvbjoic2hvdyJ9XSxyZWY6ImltYWdlIixjbGFzczplLmlzRW1vamlPbmx5PyJlbW9qaW9ubHkiOiIiLGRvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLmltYWdlKX19KX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLHJlPXMoe25hbWU6InRhd2stZW1vamktZ3JvdXAiLHByb3BzOntjYXRlZ29yaWVzOkFycmF5LGFjdGl2ZUNhdGVnb3J5OltPYmplY3QsU3RyaW5nXX0sbWV0aG9kczp7Y2xhc3NlczpmdW5jdGlvbihlKXtyZXR1cm5bInRhd2stZW1vamktZ3JvdXAtdGFiIix0aGlzLmFjdGl2ZUNhdGVnb3J5LmNhdGVnb3J5X25hbWU9PWUmJiJ0YXdrLWVtb2ppLWdyb3VwLXRhYi1hY3RpdmUiLCJ0YXdrLWZsZXgtYXV0byIsInRhd2stdGV4dC1jZW50ZXIiLCJ0YXdrLW91dGxpbmUiXX19fSwoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZW1vamktZ3JvdXAgdGF3ay1mbGV4IHRhd2stZmxleC13cmFwIn0sZS5fbChlLmNhdGVnb3JpZXMsKGZ1bmN0aW9uKG4saSl7cmV0dXJuIHQoInNwYW4iLHtrZXk6aSxjbGFzczplLmNsYXNzZXMobi5jYXRlZ29yeV9uYW1lKSxhdHRyczp7dGl0bGU6bi5jYXRlZ29yeV9uYW1lLHRhYmluZGV4OiIwIn0sb246e2NsaWNrOmZ1bmN0aW9uKHQpe3JldHVybiBlLiRlbWl0KCJjbGljayIsbil9LGtleXVwOmZ1bmN0aW9uKHQpe3JldHVybiF0LnR5cGUuaW5kZXhPZigia2V5IikmJmUuX2sodC5rZXlDb2RlLCJlbnRlciIsMTMsdC5rZXksIkVudGVyIik/bnVsbDplLiRlbWl0KCJjbGljayIsbil9fX0sW3QoImltZyIse2F0dHJzOntzcmM6Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9lbW9qaW9uZS9hc3NldHMvcG5nLyIuY29uY2F0KG4uZW1vamksIi5wbmc/dj0yLjIuNyIpfX0pXSl9KSksMCl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxvZT17ZGF0YTpmdW5jdGlvbigpe3JldHVybntpbnB1dEN1c3RvbVN0eWxlOntoZWlnaHQ6IiIscGFkZGluZ1RvcDoiIn0sbGFiZWxDdXN0b21TaXplOiExfX0sbWV0aG9kczp7Y3VzdG9tU3R5bGU6ZnVuY3Rpb24oZSx0KXt0PjE2JiYodGhpcy5pbnB1dEN1c3RvbVN0eWxlLmhlaWdodD1NLmNvbnZlcnRQaXhlbFRvUmVtKHQvMS4zK2UpKyJyZW0gIWltcG9ydGFudCIsdGhpcy5pbnB1dEN1c3RvbVN0eWxlLnBhZGRpbmdUb3A9TS5jb252ZXJ0UGl4ZWxUb1JlbSh0LzEuMykrInJlbSAhaW1wb3J0YW50Iix0aGlzLmxhYmVsQ3VzdG9tU2l6ZT0hMCl9fX0sYWU9e25hbWU6InRhd2staW5wdXQiLG1peGluczpbb2VdLHByb3BzOntlcnJvck1lc3NhZ2U6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57fX19LGlzUmVxdWlyZWQ6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxpc1N1Y2Nlc3M6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxsYWJlbDp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSxzaXplOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9LHZhbHVlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSx2YWxpZGF0aW9uOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxpbnZhbGlkVHlwZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aXNBY3RpdmU6ITEsaW5wdXRJZDoiIixoYXNJbnB1dFZhbHVlOiExfX0sY3JlYXRlZDpmdW5jdGlvbigpe3RoaXMuaGFuZGxlSWQoKX0sbW91bnRlZDpmdW5jdGlvbigpe3RoaXMuY3VzdG9tU3R5bGUodGhpcy4kcmVmcy5pbnB1dC5jbGllbnRIZWlnaHQsdGhpcy4kcmVmcy5sYWJlbC5jbGllbnRIZWlnaHQpLHRoaXMuaGFzSW5wdXRWYWx1ZT10aGlzLiRyZWZzLmlucHV0LnZhbHVlLmxlbmd0aD4wfSxjb21wdXRlZDp7aW5wdXRDbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWlucHV0Iix0aGlzLmludmFsaWRUeXBlJiYidGF3ay1mb3JtLWRhbmdlciIsdGhpcy5pc1N1Y2Nlc3MmJiJ0YXdrLWZvcm0tc3VjY2VzcyIsdGhpcy5zaXplJiYidGF3ay1pbnB1dC0iLmNvbmNhdCh0aGlzLnNpemUpXX0sbGFiZWxDbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWZvcm0tbGFiZWwiLHRoaXMuaW52YWxpZFR5cGUmJiJ0YXdrLXRleHQtcmVkLTEiLHRoaXMuaXNTdWNjZXNzJiYidGF3ay10ZXh0LWdyZWVuLTEiLHRoaXMuaXNBY3RpdmV8fHRoaXMuJHByb3BzLnZhbHVlPyJ0YXdrLWFjdGl2ZSI6IiIsdGhpcy5sYWJlbEN1c3RvbVNpemU/InRhd2stZm9ybS1sYWJlbC1jdXN0b20tc3R5bGUiOiIiXX0sZXJyb3JMYWJlbDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVycm9yTWVzc2FnZVt0aGlzLmludmFsaWRUeXBlXX0sZGF0ZVdlYmtpdERhdGFBdHRyOmZ1bmN0aW9uKCl7aWYoImRhdGUiPT09dGhpcy4kYXR0cnMudHlwZSlyZXR1cm4gdGhpcy5oYXNJbnB1dFZhbHVlPyJ0cnVlIjoiZmFsc2UifX0sd2F0Y2g6e3ZhbHVlOmZ1bmN0aW9uKGUpe3RoaXMuaGFzSW5wdXRWYWx1ZT1udWxsIT1lJiZTdHJpbmcoZSkubGVuZ3RoPjB9fSxtZXRob2RzOntzZXRBY3RpdmU6ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlPSEwLHRoaXMuJGVtaXQoImZvY3VzIil9LHVuc2V0QWN0aXZlOmZ1bmN0aW9uKCl7dGhpcy5pc0FjdGl2ZSYmIXRoaXMuJHJlZnMuaW5wdXQudmFsdWUubGVuZ3RoPjAmJih0aGlzLmlzQWN0aXZlPSExKSx0aGlzLmlzUmVxdWlyZWQ/IXRoaXMuaGFuZGxlSXNFbXB0eSgpJiZ0aGlzLnZhbGlkYXRpb24ubGVuZ3RoJiZ0aGlzLmhhbmRsZVZhbGlkYXRpb24oKTp0aGlzLnZhbGlkYXRpb24ubGVuZ3RoJiZ0aGlzLiRyZWZzLmlucHV0LnZhbHVlLmxlbmd0aCYmdGhpcy5oYW5kbGVWYWxpZGF0aW9uKCksdGhpcy4kZW1pdCgiYmx1ciIpfSxoYW5kbGVJbnB1dDpmdW5jdGlvbihlKXt0aGlzLmhhc0lucHV0VmFsdWU9ZS50YXJnZXQudmFsdWUubGVuZ3RoPjAsdGhpcy4kZW1pdCgiaW5wdXQiLGUudGFyZ2V0LnZhbHVlKX0saGFuZGxlSWQ6ZnVuY3Rpb24oKXt2b2lkIDA9PT10aGlzLiRhdHRycy5pZHx8IiI9PT10aGlzLiRhdHRycy5pZD90aGlzLmlucHV0SWQ9TS5nZW5lcmF0ZVVVSUQoKTp0aGlzLmlucHV0SWQ9dGhpcy4kYXR0cnMuaWR9LGhhbmRsZUlzRW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gTS5pc0VtcHR5KHRoaXMuJHJlZnMuaW5wdXQudmFsdWUpPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCEwKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCJyZXF1aXJlZCIpLCEwKToodGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMSksdGhpcy4kZW1pdCgidXBkYXRlOmludmFsaWRUeXBlIiwiIiksITEpfSxoYW5kbGVWYWxpZGF0aW9uOmZ1bmN0aW9uKCl7InBob25lIiE9PXRoaXMudmFsaWRhdGlvbiYmKCJlbWFpbCI9PT10aGlzLnZhbGlkYXRpb24mJih0aGlzLiRyZWZzLmlucHV0LnZhbHVlPXRoaXMuJHJlZnMuaW5wdXQudmFsdWUudHJpbSgpKSxNLmlzVmFsaWQoe3ZhbHVlOnRoaXMuJHJlZnMuaW5wdXQudmFsdWUsdHlwZTp0aGlzLnZhbGlkYXRpb259KS5pc1ZhbGlkPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCExKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCIiKSk6KHRoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsITApLHRoaXMuJGVtaXQoInVwZGF0ZTppbnZhbGlkVHlwZSIsdGhpcy52YWxpZGF0aW9uKSkpfSx2YWxpZGF0ZTpmdW5jdGlvbigpe3RoaXMudW5zZXRBY3RpdmUoKX19fSxzZT0obigiNjdlNiIpLHMoYWUsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZvcm0td3JhcHBlciJ9LFt0KCJpbnB1dCIsZS5fYih7cmVmOiJpbnB1dCIsY2xhc3M6ZS5pbnB1dENsYXNzZXMsc3R5bGU6ZS5pbnB1dEN1c3RvbVN0eWxlLGF0dHJzOnsiZGF0YS1oYXMtdmFsdWUiOmUuZGF0ZVdlYmtpdERhdGFBdHRyLHJvbGU6ImlucHV0IixpZDplLmlucHV0SWQscmVxdWlyZWQ6ZS5pc1JlcXVpcmVkLCJhcmlhLXJlcXVpcmVkIjplLmlzUmVxdWlyZWQsImFyaWEtcGxhY2Vob2xkZXIiOmUubGFiZWwsImFyaWEtbGFiZWwiOihudWxsPT09ZS5sYWJlbHx8MD09PWUubGFiZWwubGVuZ3RoKSYmIklucHV0IGZpZWxkIiwiYXJpYS1sYWJlbGxieSI6IShudWxsPT09ZS5sYWJlbHx8IWUubGFiZWwubGVuZ3RoKSYmZS5pbnB1dElkLCJhcmlhLWludmFsaWQiOiEoIWUuaW52YWxpZFR5cGV8fCFlLmludmFsaWRUeXBlLmxlbmd0aCl8fG51bGx9LGRvbVByb3BzOnt2YWx1ZTplLnZhbHVlfSxvbjp7Zm9jdXM6ZS5zZXRBY3RpdmUsYmx1cjplLnVuc2V0QWN0aXZlLGlucHV0OmUuaGFuZGxlSW5wdXR9fSwiaW5wdXQiLGUuJGF0dHJzLCExKSksbnVsbCE9PWUubGFiZWwmJmUubGFiZWwubGVuZ3RoP3QoImxhYmVsIix7cmVmOiJsYWJlbCIsY2xhc3M6ZS5sYWJlbENsYXNzZXMsYXR0cnM6e2ZvcjplLmlucHV0SWR9fSxbZS5pc1JlcXVpcmVkP3QoInNwYW4iLFtlLl92KCIqIildKTplLl9lKCksZS5fdigiICIrZS5fcyhlLmxhYmVsKSsiICIpXSk6ZS5fZSgpLGUuaW52YWxpZFR5cGU/dCgic21hbGwiLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZC0xIHRhd2stdGV4dC1yZWd1bGFyLTEifSxbZS5fdigiICIrZS5fcyhlLmVycm9yTGFiZWwpKyIgIildKTplLl9lKCldKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cztmdW5jdGlvbiBsZShlKXtyZXR1cm4gZ2V0Q29tcHV0ZWRTdHlsZShlKX1mdW5jdGlvbiBjZShlLHQpe2Zvcih2YXIgbiBpbiB0KXt2YXIgaT10W25dOyJudW1iZXIiPT10eXBlb2YgaSYmKGkrPSJweCIpLGUuc3R5bGVbbl09aX1yZXR1cm4gZX1mdW5jdGlvbiB1ZShlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gdC5jbGFzc05hbWU9ZSx0fXZhciBkZT0idW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJihFbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzfHxFbGVtZW50LnByb3RvdHlwZS53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fEVsZW1lbnQucHJvdG90eXBlLm1vek1hdGNoZXNTZWxlY3Rvcnx8RWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3IpO2Z1bmN0aW9uIHBlKGUsdCl7aWYoIWRlKXRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBtYXRjaGluZyBtZXRob2Qgc3VwcG9ydGVkIik7cmV0dXJuIGRlLmNhbGwoZSx0KX1mdW5jdGlvbiBoZShlKXtlLnJlbW92ZT9lLnJlbW92ZSgpOmUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGUpfWZ1bmN0aW9uIGZlKGUsdCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChlLmNoaWxkcmVuLChmdW5jdGlvbihlKXtyZXR1cm4gcGUoZSx0KX0pKX12YXIgZ2U9InBzIixtZT0icHNfX3J0bCIseWU9e3RodW1iOmZ1bmN0aW9uKGUpe3JldHVybiJwc19fdGh1bWItIitlfSxyYWlsOmZ1bmN0aW9uKGUpe3JldHVybiJwc19fcmFpbC0iK2V9LGNvbnN1bWluZzoicHNfX2NoaWxkLS1jb25zdW1lIn0sdmU9e2ZvY3VzOiJwcy0tZm9jdXMiLGNsaWNraW5nOiJwcy0tY2xpY2tpbmciLGFjdGl2ZTpmdW5jdGlvbihlKXtyZXR1cm4icHMtLWFjdGl2ZS0iK2V9LHNjcm9sbGluZzpmdW5jdGlvbihlKXtyZXR1cm4icHMtLXNjcm9sbGluZy0iK2V9fSxiZT17eDpudWxsLHk6bnVsbH07ZnVuY3Rpb24gX2UoZSx0KXt2YXIgbj1lLmVsZW1lbnQuY2xhc3NMaXN0LGk9dmUuc2Nyb2xsaW5nKHQpO24uY29udGFpbnMoaSk/Y2xlYXJUaW1lb3V0KGJlW3RdKTpuLmFkZChpKX1mdW5jdGlvbiB3ZShlLHQpe2JlW3RdPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7cmV0dXJuIGUuaXNBbGl2ZSYmZS5lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUodmUuc2Nyb2xsaW5nKHQpKX0pLGUuc2V0dGluZ3Muc2Nyb2xsaW5nVGhyZXNob2xkKX12YXIga2U9ZnVuY3Rpb24oZSl7dGhpcy5lbGVtZW50PWUsdGhpcy5oYW5kbGVycz17fX0sQ2U9e2lzRW1wdHk6e2NvbmZpZ3VyYWJsZTohMH19O2tlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCl7dm9pZCAwPT09dGhpcy5oYW5kbGVyc1tlXSYmKHRoaXMuaGFuZGxlcnNbZV09W10pLHRoaXMuaGFuZGxlcnNbZV0ucHVzaCh0KSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihlLHQsITEpfSxrZS5wcm90b3R5cGUudW5iaW5kPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpczt0aGlzLmhhbmRsZXJzW2VdPXRoaXMuaGFuZGxlcnNbZV0uZmlsdGVyKChmdW5jdGlvbihpKXtyZXR1cm4hKCF0fHxpPT09dCl8fChuLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLGksITEpLCExKX0pKX0sa2UucHJvdG90eXBlLnVuYmluZEFsbD1mdW5jdGlvbigpe2Zvcih2YXIgZSBpbiB0aGlzLmhhbmRsZXJzKXRoaXMudW5iaW5kKGUpfSxDZS5pc0VtcHR5LmdldD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaGFuZGxlcnMpLmV2ZXJ5KChmdW5jdGlvbih0KXtyZXR1cm4gMD09PWUuaGFuZGxlcnNbdF0ubGVuZ3RofSkpfSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyhrZS5wcm90b3R5cGUsQ2UpO3ZhciB4ZT1mdW5jdGlvbigpe3RoaXMuZXZlbnRFbGVtZW50cz1bXX07ZnVuY3Rpb24gU2UoZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5DdXN0b21FdmVudClyZXR1cm4gbmV3IEN1c3RvbUV2ZW50KGUpO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpO3JldHVybiB0LmluaXRDdXN0b21FdmVudChlLCExLCExLHZvaWQgMCksdH1mdW5jdGlvbiBMZShlLHQsbixpLHIpe3ZhciBvO2lmKHZvaWQgMD09PWkmJihpPSEwKSx2b2lkIDA9PT1yJiYocj0hMSksInRvcCI9PT10KW89WyJjb250ZW50SGVpZ2h0IiwiY29udGFpbmVySGVpZ2h0Iiwic2Nyb2xsVG9wIiwieSIsInVwIiwiZG93biJdO2Vsc2V7aWYoImxlZnQiIT09dCl0aHJvdyBuZXcgRXJyb3IoIkEgcHJvcGVyIGF4aXMgc2hvdWxkIGJlIHByb3ZpZGVkIik7bz1bImNvbnRlbnRXaWR0aCIsImNvbnRhaW5lcldpZHRoIiwic2Nyb2xsTGVmdCIsIngiLCJsZWZ0IiwicmlnaHQiXX0hZnVuY3Rpb24oZSx0LG4saSxyKXt2YXIgbz1uWzBdLGE9blsxXSxzPW5bMl0sbD1uWzNdLGM9bls0XSx1PW5bNV07dm9pZCAwPT09aSYmKGk9ITApLHZvaWQgMD09PXImJihyPSExKTt2YXIgZD1lLmVsZW1lbnQ7ZS5yZWFjaFtsXT1udWxsLGRbc108MSYmKGUucmVhY2hbbF09InN0YXJ0IiksZFtzXT5lW29dLWVbYV0tMSYmKGUucmVhY2hbbF09ImVuZCIpLHQmJihkLmRpc3BhdGNoRXZlbnQoU2UoInBzLXNjcm9sbC0iK2wpKSx0PDA/ZC5kaXNwYXRjaEV2ZW50KFNlKCJwcy1zY3JvbGwtIitjKSk6dD4wJiZkLmRpc3BhdGNoRXZlbnQoU2UoInBzLXNjcm9sbC0iK3UpKSxpJiZmdW5jdGlvbihlLHQpe19lKGUsdCksd2UoZSx0KX0oZSxsKSksZS5yZWFjaFtsXSYmKHR8fHIpJiZkLmRpc3BhdGNoRXZlbnQoU2UoInBzLSIrbCsiLXJlYWNoLSIrZS5yZWFjaFtsXSkpfShlLG4sbyxpLHIpfWZ1bmN0aW9uIFRlKGUpe3JldHVybiBwYXJzZUludChlLDEwKXx8MH14ZS5wcm90b3R5cGUuZXZlbnRFbGVtZW50PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuZXZlbnRFbGVtZW50cy5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiB0LmVsZW1lbnQ9PT1lfSkpWzBdO3JldHVybiB0fHwodD1uZXcga2UoZSksdGhpcy5ldmVudEVsZW1lbnRzLnB1c2godCkpLHR9LHhlLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKGUsdCxuKXt0aGlzLmV2ZW50RWxlbWVudChlKS5iaW5kKHQsbil9LHhlLnByb3RvdHlwZS51bmJpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXMuZXZlbnRFbGVtZW50KGUpO2kudW5iaW5kKHQsbiksaS5pc0VtcHR5JiZ0aGlzLmV2ZW50RWxlbWVudHMuc3BsaWNlKHRoaXMuZXZlbnRFbGVtZW50cy5pbmRleE9mKGkpLDEpfSx4ZS5wcm90b3R5cGUudW5iaW5kQWxsPWZ1bmN0aW9uKCl7dGhpcy5ldmVudEVsZW1lbnRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe3JldHVybiBlLnVuYmluZEFsbCgpfSkpLHRoaXMuZXZlbnRFbGVtZW50cz1bXX0seGUucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0LG4pe3ZhciBpPXRoaXMuZXZlbnRFbGVtZW50KGUpLHI9ZnVuY3Rpb24oZSl7aS51bmJpbmQodCxyKSxuKGUpfTtpLmJpbmQodCxyKX07dmFyIE9lPXtpc1dlYktpdDoidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50JiYiV2Via2l0QXBwZWFyYW5jZSJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUsc3VwcG9ydHNUb3VjaDoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmKCJvbnRvdWNoc3RhcnQiaW4gd2luZG93fHwibWF4VG91Y2hQb2ludHMiaW4gd2luZG93Lm5hdmlnYXRvciYmd2luZG93Lm5hdmlnYXRvci5tYXhUb3VjaFBvaW50cz4wfHx3aW5kb3cuRG9jdW1lbnRUb3VjaCYmZG9jdW1lbnQgaW5zdGFuY2VvZiB3aW5kb3cuRG9jdW1lbnRUb3VjaCksc3VwcG9ydHNJZVBvaW50ZXI6InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJm5hdmlnYXRvci5tc01heFRvdWNoUG9pbnRzLGlzQ2hyb21lOiJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYvQ2hyb21lL2kudGVzdChuYXZpZ2F0b3ImJm5hdmlnYXRvci51c2VyQWdlbnQpfTtmdW5jdGlvbiBFZShlKXt2YXIgdD1lLmVsZW1lbnQsbj1NYXRoLmZsb29yKHQuc2Nyb2xsVG9wKSxpPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ZS5jb250YWluZXJXaWR0aD1NYXRoLmZsb29yKGkud2lkdGgpLGUuY29udGFpbmVySGVpZ2h0PU1hdGguZmxvb3IoaS5oZWlnaHQpLGUuY29udGVudFdpZHRoPXQuc2Nyb2xsV2lkdGgsZS5jb250ZW50SGVpZ2h0PXQuc2Nyb2xsSGVpZ2h0LHQuY29udGFpbnMoZS5zY3JvbGxiYXJYUmFpbCl8fChmZSh0LHllLnJhaWwoIngiKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIGhlKGUpfSkpLHQuYXBwZW5kQ2hpbGQoZS5zY3JvbGxiYXJYUmFpbCkpLHQuY29udGFpbnMoZS5zY3JvbGxiYXJZUmFpbCl8fChmZSh0LHllLnJhaWwoInkiKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIGhlKGUpfSkpLHQuYXBwZW5kQ2hpbGQoZS5zY3JvbGxiYXJZUmFpbCkpLCFlLnNldHRpbmdzLnN1cHByZXNzU2Nyb2xsWCYmZS5jb250YWluZXJXaWR0aCtlLnNldHRpbmdzLnNjcm9sbFhNYXJnaW5PZmZzZXQ8ZS5jb250ZW50V2lkdGg/KGUuc2Nyb2xsYmFyWEFjdGl2ZT0hMCxlLnJhaWxYV2lkdGg9ZS5jb250YWluZXJXaWR0aC1lLnJhaWxYTWFyZ2luV2lkdGgsZS5yYWlsWFJhdGlvPWUuY29udGFpbmVyV2lkdGgvZS5yYWlsWFdpZHRoLGUuc2Nyb2xsYmFyWFdpZHRoPWplKGUsVGUoZS5yYWlsWFdpZHRoKmUuY29udGFpbmVyV2lkdGgvZS5jb250ZW50V2lkdGgpKSxlLnNjcm9sbGJhclhMZWZ0PVRlKChlLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCt0LnNjcm9sbExlZnQpKihlLnJhaWxYV2lkdGgtZS5zY3JvbGxiYXJYV2lkdGgpLyhlLmNvbnRlbnRXaWR0aC1lLmNvbnRhaW5lcldpZHRoKSkpOmUuc2Nyb2xsYmFyWEFjdGl2ZT0hMSwhZS5zZXR0aW5ncy5zdXBwcmVzc1Njcm9sbFkmJmUuY29udGFpbmVySGVpZ2h0K2Uuc2V0dGluZ3Muc2Nyb2xsWU1hcmdpbk9mZnNldDxlLmNvbnRlbnRIZWlnaHQ/KGUuc2Nyb2xsYmFyWUFjdGl2ZT0hMCxlLnJhaWxZSGVpZ2h0PWUuY29udGFpbmVySGVpZ2h0LWUucmFpbFlNYXJnaW5IZWlnaHQsZS5yYWlsWVJhdGlvPWUuY29udGFpbmVySGVpZ2h0L2UucmFpbFlIZWlnaHQsZS5zY3JvbGxiYXJZSGVpZ2h0PWplKGUsVGUoZS5yYWlsWUhlaWdodCplLmNvbnRhaW5lckhlaWdodC9lLmNvbnRlbnRIZWlnaHQpKSxlLnNjcm9sbGJhcllUb3A9VGUobiooZS5yYWlsWUhlaWdodC1lLnNjcm9sbGJhcllIZWlnaHQpLyhlLmNvbnRlbnRIZWlnaHQtZS5jb250YWluZXJIZWlnaHQpKSk6ZS5zY3JvbGxiYXJZQWN0aXZlPSExLGUuc2Nyb2xsYmFyWExlZnQ+PWUucmFpbFhXaWR0aC1lLnNjcm9sbGJhclhXaWR0aCYmKGUuc2Nyb2xsYmFyWExlZnQ9ZS5yYWlsWFdpZHRoLWUuc2Nyb2xsYmFyWFdpZHRoKSxlLnNjcm9sbGJhcllUb3A+PWUucmFpbFlIZWlnaHQtZS5zY3JvbGxiYXJZSGVpZ2h0JiYoZS5zY3JvbGxiYXJZVG9wPWUucmFpbFlIZWlnaHQtZS5zY3JvbGxiYXJZSGVpZ2h0KSxmdW5jdGlvbihlLHQpe3ZhciBuPXt3aWR0aDp0LnJhaWxYV2lkdGh9LGk9TWF0aC5mbG9vcihlLnNjcm9sbFRvcCk7dC5pc1J0bD9uLmxlZnQ9dC5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQrZS5zY3JvbGxMZWZ0K3QuY29udGFpbmVyV2lkdGgtdC5jb250ZW50V2lkdGg6bi5sZWZ0PWUuc2Nyb2xsTGVmdCx0LmlzU2Nyb2xsYmFyWFVzaW5nQm90dG9tP24uYm90dG9tPXQuc2Nyb2xsYmFyWEJvdHRvbS1pOm4udG9wPXQuc2Nyb2xsYmFyWFRvcCtpLGNlKHQuc2Nyb2xsYmFyWFJhaWwsbik7dmFyIHI9e3RvcDppLGhlaWdodDp0LnJhaWxZSGVpZ2h0fTt0LmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQ/dC5pc1J0bD9yLnJpZ2h0PXQuY29udGVudFdpZHRoLSh0Lm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCtlLnNjcm9sbExlZnQpLXQuc2Nyb2xsYmFyWVJpZ2h0LXQuc2Nyb2xsYmFyWU91dGVyV2lkdGgtOTpyLnJpZ2h0PXQuc2Nyb2xsYmFyWVJpZ2h0LWUuc2Nyb2xsTGVmdDp0LmlzUnRsP3IubGVmdD10Lm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCtlLnNjcm9sbExlZnQrMip0LmNvbnRhaW5lcldpZHRoLXQuY29udGVudFdpZHRoLXQuc2Nyb2xsYmFyWUxlZnQtdC5zY3JvbGxiYXJZT3V0ZXJXaWR0aDpyLmxlZnQ9dC5zY3JvbGxiYXJZTGVmdCtlLnNjcm9sbExlZnQsY2UodC5zY3JvbGxiYXJZUmFpbCxyKSxjZSh0LnNjcm9sbGJhclgse2xlZnQ6dC5zY3JvbGxiYXJYTGVmdCx3aWR0aDp0LnNjcm9sbGJhclhXaWR0aC10LnJhaWxCb3JkZXJYV2lkdGh9KSxjZSh0LnNjcm9sbGJhclkse3RvcDp0LnNjcm9sbGJhcllUb3AsaGVpZ2h0OnQuc2Nyb2xsYmFyWUhlaWdodC10LnJhaWxCb3JkZXJZV2lkdGh9KX0odCxlKSxlLnNjcm9sbGJhclhBY3RpdmU/dC5jbGFzc0xpc3QuYWRkKHZlLmFjdGl2ZSgieCIpKToodC5jbGFzc0xpc3QucmVtb3ZlKHZlLmFjdGl2ZSgieCIpKSxlLnNjcm9sbGJhclhXaWR0aD0wLGUuc2Nyb2xsYmFyWExlZnQ9MCx0LnNjcm9sbExlZnQ9ITA9PT1lLmlzUnRsP2UuY29udGVudFdpZHRoOjApLGUuc2Nyb2xsYmFyWUFjdGl2ZT90LmNsYXNzTGlzdC5hZGQodmUuYWN0aXZlKCJ5IikpOih0LmNsYXNzTGlzdC5yZW1vdmUodmUuYWN0aXZlKCJ5IikpLGUuc2Nyb2xsYmFyWUhlaWdodD0wLGUuc2Nyb2xsYmFyWVRvcD0wLHQuc2Nyb2xsVG9wPTApfWZ1bmN0aW9uIGplKGUsdCl7cmV0dXJuIGUuc2V0dGluZ3MubWluU2Nyb2xsYmFyTGVuZ3RoJiYodD1NYXRoLm1heCh0LGUuc2V0dGluZ3MubWluU2Nyb2xsYmFyTGVuZ3RoKSksZS5zZXR0aW5ncy5tYXhTY3JvbGxiYXJMZW5ndGgmJih0PU1hdGgubWluKHQsZS5zZXR0aW5ncy5tYXhTY3JvbGxiYXJMZW5ndGgpKSx0fXZhciBQZT1udWxsO2Z1bmN0aW9uIFJlKGUsdCl7dmFyIG49dFswXSxpPXRbMV0scj10WzJdLG89dFszXSxhPXRbNF0scz10WzVdLGw9dFs2XSxjPXRbN10sdT10WzhdLGQ9ZS5lbGVtZW50LHA9bnVsbCxoPW51bGwsZj1udWxsO2Z1bmN0aW9uIGcodCl7dC50b3VjaGVzJiZ0LnRvdWNoZXNbMF0mJih0W3JdPXQudG91Y2hlc1swXVsicGFnZSIrYy50b1VwcGVyQ2FzZSgpXSksUGU9PT1hJiYoZFtsXT1wK2YqKHRbcl0taCksX2UoZSxjKSxFZShlKSx0LnN0b3BQcm9wYWdhdGlvbigpLHQucHJldmVudERlZmF1bHQoKSl9ZnVuY3Rpb24gbSgpe3dlKGUsYyksZVt1XS5jbGFzc0xpc3QucmVtb3ZlKHZlLmNsaWNraW5nKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGcpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLG0pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZyksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLG0pLFBlPW51bGx9ZnVuY3Rpb24geSh0KXtudWxsPT09UGUmJihQZT1hLHA9ZFtsXSx0LnRvdWNoZXMmJih0W3JdPXQudG91Y2hlc1swXVsicGFnZSIrYy50b1VwcGVyQ2FzZSgpXSksaD10W3JdLGY9KGVbaV0tZVtuXSkvKGVbb10tZVtzXSksdC50b3VjaGVzPyhkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGcse3Bhc3NpdmU6ITF9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsbSkpOihkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGcpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLG0pKSxlW3VdLmNsYXNzTGlzdC5hZGQodmUuY2xpY2tpbmcpKSx0LnN0b3BQcm9wYWdhdGlvbigpLHQuY2FuY2VsYWJsZSYmdC5wcmV2ZW50RGVmYXVsdCgpfWVbYV0uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIix5KSxlW2FdLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHkpfXZhciBBZT17ImNsaWNrLXJhaWwiOmZ1bmN0aW9uKGUpe2UuZXZlbnQuYmluZChlLnNjcm9sbGJhclksIm1vdXNlZG93biIsKGZ1bmN0aW9uKGUpe3JldHVybiBlLnN0b3BQcm9wYWdhdGlvbigpfSkpLGUuZXZlbnQuYmluZChlLnNjcm9sbGJhcllSYWlsLCJtb3VzZWRvd24iLChmdW5jdGlvbih0KXt2YXIgbj10LnBhZ2VZLXdpbmRvdy5wYWdlWU9mZnNldC1lLnNjcm9sbGJhcllSYWlsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcD5lLnNjcm9sbGJhcllUb3A/MTotMTtlLmVsZW1lbnQuc2Nyb2xsVG9wKz1uKmUuY29udGFpbmVySGVpZ2h0LEVlKGUpLHQuc3RvcFByb3BhZ2F0aW9uKCl9KSksZS5ldmVudC5iaW5kKGUuc2Nyb2xsYmFyWCwibW91c2Vkb3duIiwoZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3RvcFByb3BhZ2F0aW9uKCl9KSksZS5ldmVudC5iaW5kKGUuc2Nyb2xsYmFyWFJhaWwsIm1vdXNlZG93biIsKGZ1bmN0aW9uKHQpe3ZhciBuPXQucGFnZVgtd2luZG93LnBhZ2VYT2Zmc2V0LWUuc2Nyb2xsYmFyWFJhaWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdD5lLnNjcm9sbGJhclhMZWZ0PzE6LTE7ZS5lbGVtZW50LnNjcm9sbExlZnQrPW4qZS5jb250YWluZXJXaWR0aCxFZShlKSx0LnN0b3BQcm9wYWdhdGlvbigpfSkpfSwiZHJhZy10aHVtYiI6ZnVuY3Rpb24oZSl7UmUoZSxbImNvbnRhaW5lckhlaWdodCIsImNvbnRlbnRIZWlnaHQiLCJwYWdlWSIsInJhaWxZSGVpZ2h0Iiwic2Nyb2xsYmFyWSIsInNjcm9sbGJhcllIZWlnaHQiLCJzY3JvbGxUb3AiLCJ5Iiwic2Nyb2xsYmFyWVJhaWwiXSksUmUoZSxbImNvbnRhaW5lcldpZHRoIiwiY29udGVudFdpZHRoIiwicGFnZVgiLCJyYWlsWFdpZHRoIiwic2Nyb2xsYmFyWCIsInNjcm9sbGJhclhXaWR0aCIsInNjcm9sbExlZnQiLCJ4Iiwic2Nyb2xsYmFyWFJhaWwiXSl9LGtleWJvYXJkOmZ1bmN0aW9uKGUpe3ZhciB0PWUuZWxlbWVudDtlLmV2ZW50LmJpbmQoZS5vd25lckRvY3VtZW50LCJrZXlkb3duIiwoZnVuY3Rpb24obil7aWYoIShuLmlzRGVmYXVsdFByZXZlbnRlZCYmbi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8bi5kZWZhdWx0UHJldmVudGVkKSYmKHBlKHQsIjpob3ZlciIpfHxwZShlLnNjcm9sbGJhclgsIjpmb2N1cyIpfHxwZShlLnNjcm9sbGJhclksIjpmb2N1cyIpKSl7dmFyIGk9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD9kb2N1bWVudC5hY3RpdmVFbGVtZW50OmUub3duZXJEb2N1bWVudC5hY3RpdmVFbGVtZW50O2lmKGkpe2lmKCJJRlJBTUUiPT09aS50YWdOYW1lKWk9aS5jb250ZW50RG9jdW1lbnQuYWN0aXZlRWxlbWVudDtlbHNlIGZvcig7aS5zaGFkb3dSb290OylpPWkuc2hhZG93Um9vdC5hY3RpdmVFbGVtZW50O2lmKGZ1bmN0aW9uKGUpe3JldHVybiBwZShlLCJpbnB1dCxbY29udGVudGVkaXRhYmxlXSIpfHxwZShlLCJzZWxlY3QsW2NvbnRlbnRlZGl0YWJsZV0iKXx8cGUoZSwidGV4dGFyZWEsW2NvbnRlbnRlZGl0YWJsZV0iKXx8cGUoZSwiYnV0dG9uLFtjb250ZW50ZWRpdGFibGVdIil9KGkpKXJldHVybn12YXIgcj0wLG89MDtzd2l0Y2gobi53aGljaCl7Y2FzZSAzNzpyPW4ubWV0YUtleT8tZS5jb250ZW50V2lkdGg6bi5hbHRLZXk/LWUuY29udGFpbmVyV2lkdGg6LTMwO2JyZWFrO2Nhc2UgMzg6bz1uLm1ldGFLZXk/ZS5jb250ZW50SGVpZ2h0Om4uYWx0S2V5P2UuY29udGFpbmVySGVpZ2h0OjMwO2JyZWFrO2Nhc2UgMzk6cj1uLm1ldGFLZXk/ZS5jb250ZW50V2lkdGg6bi5hbHRLZXk/ZS5jb250YWluZXJXaWR0aDozMDticmVhaztjYXNlIDQwOm89bi5tZXRhS2V5Py1lLmNvbnRlbnRIZWlnaHQ6bi5hbHRLZXk/LWUuY29udGFpbmVySGVpZ2h0Oi0zMDticmVhaztjYXNlIDMyOm89bi5zaGlmdEtleT9lLmNvbnRhaW5lckhlaWdodDotZS5jb250YWluZXJIZWlnaHQ7YnJlYWs7Y2FzZSAzMzpvPWUuY29udGFpbmVySGVpZ2h0O2JyZWFrO2Nhc2UgMzQ6bz0tZS5jb250YWluZXJIZWlnaHQ7YnJlYWs7Y2FzZSAzNjpvPWUuY29udGVudEhlaWdodDticmVhaztjYXNlIDM1Om89LWUuY29udGVudEhlaWdodDticmVhaztkZWZhdWx0OnJldHVybn1lLnNldHRpbmdzLnN1cHByZXNzU2Nyb2xsWCYmMCE9PXJ8fGUuc2V0dGluZ3Muc3VwcHJlc3NTY3JvbGxZJiYwIT09b3x8KHQuc2Nyb2xsVG9wLT1vLHQuc2Nyb2xsTGVmdCs9cixFZShlKSxmdW5jdGlvbihuLGkpe3ZhciByPU1hdGguZmxvb3IodC5zY3JvbGxUb3ApO2lmKDA9PT1uKXtpZighZS5zY3JvbGxiYXJZQWN0aXZlKXJldHVybiExO2lmKDA9PT1yJiZpPjB8fHI+PWUuY29udGVudEhlaWdodC1lLmNvbnRhaW5lckhlaWdodCYmaTwwKXJldHVybiFlLnNldHRpbmdzLndoZWVsUHJvcGFnYXRpb259dmFyIG89dC5zY3JvbGxMZWZ0O2lmKDA9PT1pKXtpZighZS5zY3JvbGxiYXJYQWN0aXZlKXJldHVybiExO2lmKDA9PT1vJiZuPDB8fG8+PWUuY29udGVudFdpZHRoLWUuY29udGFpbmVyV2lkdGgmJm4+MClyZXR1cm4hZS5zZXR0aW5ncy53aGVlbFByb3BhZ2F0aW9ufXJldHVybiEwfShyLG8pJiZuLnByZXZlbnREZWZhdWx0KCkpfX0pKX0sd2hlZWw6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5lbGVtZW50O2Z1bmN0aW9uIG4obil7dmFyIGk9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5kZWx0YVgsbj0tMSplLmRlbHRhWTtyZXR1cm4gdm9pZCAwIT09dCYmdm9pZCAwIT09bnx8KHQ9LTEqZS53aGVlbERlbHRhWC82LG49ZS53aGVlbERlbHRhWS82KSxlLmRlbHRhTW9kZSYmMT09PWUuZGVsdGFNb2RlJiYodCo9MTAsbio9MTApLHQhPXQmJm4hPW4mJih0PTAsbj1lLndoZWVsRGVsdGEpLGUuc2hpZnRLZXk/Wy1uLC10XTpbdCxuXX0obikscj1pWzBdLG89aVsxXTtpZighZnVuY3Rpb24oZSxuLGkpe2lmKCFPZS5pc1dlYktpdCYmdC5xdWVyeVNlbGVjdG9yKCJzZWxlY3Q6Zm9jdXMiKSlyZXR1cm4hMDtpZighdC5jb250YWlucyhlKSlyZXR1cm4hMTtmb3IodmFyIHI9ZTtyJiZyIT09dDspe2lmKHIuY2xhc3NMaXN0LmNvbnRhaW5zKHllLmNvbnN1bWluZykpcmV0dXJuITA7dmFyIG89bGUocik7aWYoaSYmby5vdmVyZmxvd1kubWF0Y2goLyhzY3JvbGx8YXV0bykvKSl7dmFyIGE9ci5zY3JvbGxIZWlnaHQtci5jbGllbnRIZWlnaHQ7aWYoYT4wJiYoci5zY3JvbGxUb3A+MCYmaTwwfHxyLnNjcm9sbFRvcDxhJiZpPjApKXJldHVybiEwfWlmKG4mJm8ub3ZlcmZsb3dYLm1hdGNoKC8oc2Nyb2xsfGF1dG8pLykpe3ZhciBzPXIuc2Nyb2xsV2lkdGgtci5jbGllbnRXaWR0aDtpZihzPjAmJihyLnNjcm9sbExlZnQ+MCYmbjwwfHxyLnNjcm9sbExlZnQ8cyYmbj4wKSlyZXR1cm4hMH1yPXIucGFyZW50Tm9kZX1yZXR1cm4hMX0obi50YXJnZXQscixvKSl7dmFyIGE9ITE7ZS5zZXR0aW5ncy51c2VCb3RoV2hlZWxBeGVzP2Uuc2Nyb2xsYmFyWUFjdGl2ZSYmIWUuc2Nyb2xsYmFyWEFjdGl2ZT8obz90LnNjcm9sbFRvcC09byplLnNldHRpbmdzLndoZWVsU3BlZWQ6dC5zY3JvbGxUb3ArPXIqZS5zZXR0aW5ncy53aGVlbFNwZWVkLGE9ITApOmUuc2Nyb2xsYmFyWEFjdGl2ZSYmIWUuc2Nyb2xsYmFyWUFjdGl2ZSYmKHI/dC5zY3JvbGxMZWZ0Kz1yKmUuc2V0dGluZ3Mud2hlZWxTcGVlZDp0LnNjcm9sbExlZnQtPW8qZS5zZXR0aW5ncy53aGVlbFNwZWVkLGE9ITApOih0LnNjcm9sbFRvcC09byplLnNldHRpbmdzLndoZWVsU3BlZWQsdC5zY3JvbGxMZWZ0Kz1yKmUuc2V0dGluZ3Mud2hlZWxTcGVlZCksRWUoZSksKGE9YXx8ZnVuY3Rpb24obixpKXt2YXIgcj1NYXRoLmZsb29yKHQuc2Nyb2xsVG9wKSxvPTA9PT10LnNjcm9sbFRvcCxhPXIrdC5vZmZzZXRIZWlnaHQ9PT10LnNjcm9sbEhlaWdodCxzPTA9PT10LnNjcm9sbExlZnQsbD10LnNjcm9sbExlZnQrdC5vZmZzZXRXaWR0aD09PXQuc2Nyb2xsV2lkdGg7cmV0dXJuIShNYXRoLmFicyhpKT5NYXRoLmFicyhuKT9vfHxhOnN8fGwpfHwhZS5zZXR0aW5ncy53aGVlbFByb3BhZ2F0aW9ufShyLG8pKSYmIW4uY3RybEtleSYmKG4uc3RvcFByb3BhZ2F0aW9uKCksbi5wcmV2ZW50RGVmYXVsdCgpKX19dm9pZCAwIT09d2luZG93Lm9ud2hlZWw/ZS5ldmVudC5iaW5kKHQsIndoZWVsIixuKTp2b2lkIDAhPT13aW5kb3cub25tb3VzZXdoZWVsJiZlLmV2ZW50LmJpbmQodCwibW91c2V3aGVlbCIsbil9LHRvdWNoOmZ1bmN0aW9uKGUpe2lmKE9lLnN1cHBvcnRzVG91Y2h8fE9lLnN1cHBvcnRzSWVQb2ludGVyKXt2YXIgdD1lLmVsZW1lbnQsbj17c3RhcnRPZmZzZXQ6e30sc3RhcnRUaW1lOjAsc3BlZWQ6e30sZWFzaW5nTG9vcDpudWxsfTtPZS5zdXBwb3J0c1RvdWNoPyhlLmV2ZW50LmJpbmQodCwidG91Y2hzdGFydCIscyksZS5ldmVudC5iaW5kKHQsInRvdWNobW92ZSIsYyksZS5ldmVudC5iaW5kKHQsInRvdWNoZW5kIix1KSk6T2Uuc3VwcG9ydHNJZVBvaW50ZXImJih3aW5kb3cuUG9pbnRlckV2ZW50PyhlLmV2ZW50LmJpbmQodCwicG9pbnRlcmRvd24iLHMpLGUuZXZlbnQuYmluZCh0LCJwb2ludGVybW92ZSIsYyksZS5ldmVudC5iaW5kKHQsInBvaW50ZXJ1cCIsdSkpOndpbmRvdy5NU1BvaW50ZXJFdmVudCYmKGUuZXZlbnQuYmluZCh0LCJNU1BvaW50ZXJEb3duIixzKSxlLmV2ZW50LmJpbmQodCwiTVNQb2ludGVyTW92ZSIsYyksZS5ldmVudC5iaW5kKHQsIk1TUG9pbnRlclVwIix1KSkpfWZ1bmN0aW9uIGkobixpKXt2YXIgcj1NYXRoLmZsb29yKHQuc2Nyb2xsVG9wKSxvPXQuc2Nyb2xsTGVmdCxhPU1hdGguYWJzKG4pLHM9TWF0aC5hYnMoaSk7aWYocz5hKXtpZihpPDAmJnI9PT1lLmNvbnRlbnRIZWlnaHQtZS5jb250YWluZXJIZWlnaHR8fGk+MCYmMD09PXIpcmV0dXJuIDA9PT13aW5kb3cuc2Nyb2xsWSYmaT4wJiZPZS5pc0Nocm9tZX1lbHNlIGlmKGE+cyYmKG48MCYmbz09PWUuY29udGVudFdpZHRoLWUuY29udGFpbmVyV2lkdGh8fG4+MCYmMD09PW8pKXJldHVybiEwO3JldHVybiEwfWZ1bmN0aW9uIHIobixpKXt0LnNjcm9sbFRvcC09aSx0LnNjcm9sbExlZnQtPW4sRWUoZSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZS50YXJnZXRUb3VjaGVzP2UudGFyZ2V0VG91Y2hlc1swXTplfWZ1bmN0aW9uIGEodCl7cmV0dXJuISh0LnRhcmdldD09PWUuc2Nyb2xsYmFyWHx8dC50YXJnZXQ9PT1lLnNjcm9sbGJhcll8fHQucG9pbnRlclR5cGUmJiJwZW4iPT09dC5wb2ludGVyVHlwZSYmMD09PXQuYnV0dG9uc3x8KCF0LnRhcmdldFRvdWNoZXN8fDEhPT10LnRhcmdldFRvdWNoZXMubGVuZ3RoKSYmKCF0LnBvaW50ZXJUeXBlfHwibW91c2UiPT09dC5wb2ludGVyVHlwZXx8dC5wb2ludGVyVHlwZT09PXQuTVNQT0lOVEVSX1RZUEVfTU9VU0UpKX1mdW5jdGlvbiBzKGUpe2lmKGEoZSkpe3ZhciB0PW8oZSk7bi5zdGFydE9mZnNldC5wYWdlWD10LnBhZ2VYLG4uc3RhcnRPZmZzZXQucGFnZVk9dC5wYWdlWSxuLnN0YXJ0VGltZT0obmV3IERhdGUpLmdldFRpbWUoKSxudWxsIT09bi5lYXNpbmdMb29wJiZjbGVhckludGVydmFsKG4uZWFzaW5nTG9vcCl9fWZ1bmN0aW9uIGwoZSxuLGkpe2lmKCF0LmNvbnRhaW5zKGUpKXJldHVybiExO2Zvcih2YXIgcj1lO3ImJnIhPT10Oyl7aWYoci5jbGFzc0xpc3QuY29udGFpbnMoeWUuY29uc3VtaW5nKSlyZXR1cm4hMDt2YXIgbz1sZShyKTtpZihpJiZvLm92ZXJmbG93WS5tYXRjaCgvKHNjcm9sbHxhdXRvKS8pKXt2YXIgYT1yLnNjcm9sbEhlaWdodC1yLmNsaWVudEhlaWdodDtpZihhPjAmJihyLnNjcm9sbFRvcD4wJiZpPDB8fHIuc2Nyb2xsVG9wPGEmJmk+MCkpcmV0dXJuITB9aWYobiYmby5vdmVyZmxvd1gubWF0Y2goLyhzY3JvbGx8YXV0bykvKSl7dmFyIHM9ci5zY3JvbGxXaWR0aC1yLmNsaWVudFdpZHRoO2lmKHM+MCYmKHIuc2Nyb2xsTGVmdD4wJiZuPDB8fHIuc2Nyb2xsTGVmdDxzJiZuPjApKXJldHVybiEwfXI9ci5wYXJlbnROb2RlfXJldHVybiExfWZ1bmN0aW9uIGMoZSl7aWYoYShlKSl7dmFyIHQ9byhlKSxzPXtwYWdlWDp0LnBhZ2VYLHBhZ2VZOnQucGFnZVl9LGM9cy5wYWdlWC1uLnN0YXJ0T2Zmc2V0LnBhZ2VYLHU9cy5wYWdlWS1uLnN0YXJ0T2Zmc2V0LnBhZ2VZO2lmKGwoZS50YXJnZXQsYyx1KSlyZXR1cm47cihjLHUpLG4uc3RhcnRPZmZzZXQ9czt2YXIgZD0obmV3IERhdGUpLmdldFRpbWUoKSxwPWQtbi5zdGFydFRpbWU7cD4wJiYobi5zcGVlZC54PWMvcCxuLnNwZWVkLnk9dS9wLG4uc3RhcnRUaW1lPWQpLGkoYyx1KSYmZS5jYW5jZWxhYmxlJiZlLnByZXZlbnREZWZhdWx0KCl9fWZ1bmN0aW9uIHUoKXtlLnNldHRpbmdzLnN3aXBlRWFzaW5nJiYoY2xlYXJJbnRlcnZhbChuLmVhc2luZ0xvb3ApLG4uZWFzaW5nTG9vcD1zZXRJbnRlcnZhbCgoZnVuY3Rpb24oKXtlLmlzSW5pdGlhbGl6ZWQ/Y2xlYXJJbnRlcnZhbChuLmVhc2luZ0xvb3ApOm4uc3BlZWQueHx8bi5zcGVlZC55P01hdGguYWJzKG4uc3BlZWQueCk8LjAxJiZNYXRoLmFicyhuLnNwZWVkLnkpPC4wMT9jbGVhckludGVydmFsKG4uZWFzaW5nTG9vcCk6KHIoMzAqbi5zcGVlZC54LDMwKm4uc3BlZWQueSksbi5zcGVlZC54Kj0uOCxuLnNwZWVkLnkqPS44KTpjbGVhckludGVydmFsKG4uZWFzaW5nTG9vcCl9KSwxMCkpfX19LEllPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztpZih2b2lkIDA9PT10JiYodD17fSksInN0cmluZyI9PXR5cGVvZiBlJiYoZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpKSwhZXx8IWUubm9kZU5hbWUpdGhyb3cgbmV3IEVycm9yKCJubyBlbGVtZW50IGlzIHNwZWNpZmllZCB0byBpbml0aWFsaXplIFBlcmZlY3RTY3JvbGxiYXIiKTtmb3IodmFyIGkgaW4gdGhpcy5lbGVtZW50PWUsZS5jbGFzc0xpc3QuYWRkKGdlKSx0aGlzLnNldHRpbmdzPXtoYW5kbGVyczpbImNsaWNrLXJhaWwiLCJkcmFnLXRodW1iIiwia2V5Ym9hcmQiLCJ3aGVlbCIsInRvdWNoIl0sbWF4U2Nyb2xsYmFyTGVuZ3RoOm51bGwsbWluU2Nyb2xsYmFyTGVuZ3RoOm51bGwsc2Nyb2xsaW5nVGhyZXNob2xkOjFlMyxzY3JvbGxYTWFyZ2luT2Zmc2V0OjAsc2Nyb2xsWU1hcmdpbk9mZnNldDowLHN1cHByZXNzU2Nyb2xsWDohMSxzdXBwcmVzc1Njcm9sbFk6ITEsc3dpcGVFYXNpbmc6ITAsdXNlQm90aFdoZWVsQXhlczohMSx3aGVlbFByb3BhZ2F0aW9uOiEwLHdoZWVsU3BlZWQ6MX0sdCl0aGlzLnNldHRpbmdzW2ldPXRbaV07dGhpcy5jb250YWluZXJXaWR0aD1udWxsLHRoaXMuY29udGFpbmVySGVpZ2h0PW51bGwsdGhpcy5jb250ZW50V2lkdGg9bnVsbCx0aGlzLmNvbnRlbnRIZWlnaHQ9bnVsbDt2YXIgcj1mdW5jdGlvbigpe3JldHVybiBlLmNsYXNzTGlzdC5hZGQodmUuZm9jdXMpfSxvPWZ1bmN0aW9uKCl7cmV0dXJuIGUuY2xhc3NMaXN0LnJlbW92ZSh2ZS5mb2N1cyl9O3RoaXMuaXNSdGw9InJ0bCI9PT1sZShlKS5kaXJlY3Rpb24sITA9PT10aGlzLmlzUnRsJiZlLmNsYXNzTGlzdC5hZGQobWUpLHRoaXMuaXNOZWdhdGl2ZVNjcm9sbD1mdW5jdGlvbigpe3ZhciB0LG49ZS5zY3JvbGxMZWZ0O3JldHVybiBlLnNjcm9sbExlZnQ9LTEsdD1lLnNjcm9sbExlZnQ8MCxlLnNjcm9sbExlZnQ9bix0fSgpLHRoaXMubmVnYXRpdmVTY3JvbGxBZGp1c3RtZW50PXRoaXMuaXNOZWdhdGl2ZVNjcm9sbD9lLnNjcm9sbFdpZHRoLWUuY2xpZW50V2lkdGg6MCx0aGlzLmV2ZW50PW5ldyB4ZSx0aGlzLm93bmVyRG9jdW1lbnQ9ZS5vd25lckRvY3VtZW50fHxkb2N1bWVudCx0aGlzLnNjcm9sbGJhclhSYWlsPXVlKHllLnJhaWwoIngiKSksZS5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclhSYWlsKSx0aGlzLnNjcm9sbGJhclg9dWUoeWUudGh1bWIoIngiKSksdGhpcy5zY3JvbGxiYXJYUmFpbC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclgpLHRoaXMuc2Nyb2xsYmFyWC5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwwKSx0aGlzLmV2ZW50LmJpbmQodGhpcy5zY3JvbGxiYXJYLCJmb2N1cyIsciksdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWCwiYmx1ciIsbyksdGhpcy5zY3JvbGxiYXJYQWN0aXZlPW51bGwsdGhpcy5zY3JvbGxiYXJYV2lkdGg9bnVsbCx0aGlzLnNjcm9sbGJhclhMZWZ0PW51bGw7dmFyIGE9bGUodGhpcy5zY3JvbGxiYXJYUmFpbCk7dGhpcy5zY3JvbGxiYXJYQm90dG9tPXBhcnNlSW50KGEuYm90dG9tLDEwKSxpc05hTih0aGlzLnNjcm9sbGJhclhCb3R0b20pPyh0aGlzLmlzU2Nyb2xsYmFyWFVzaW5nQm90dG9tPSExLHRoaXMuc2Nyb2xsYmFyWFRvcD1UZShhLnRvcCkpOnRoaXMuaXNTY3JvbGxiYXJYVXNpbmdCb3R0b209ITAsdGhpcy5yYWlsQm9yZGVyWFdpZHRoPVRlKGEuYm9yZGVyTGVmdFdpZHRoKStUZShhLmJvcmRlclJpZ2h0V2lkdGgpLGNlKHRoaXMuc2Nyb2xsYmFyWFJhaWwse2Rpc3BsYXk6ImJsb2NrIn0pLHRoaXMucmFpbFhNYXJnaW5XaWR0aD1UZShhLm1hcmdpbkxlZnQpK1RlKGEubWFyZ2luUmlnaHQpLGNlKHRoaXMuc2Nyb2xsYmFyWFJhaWwse2Rpc3BsYXk6IiJ9KSx0aGlzLnJhaWxYV2lkdGg9bnVsbCx0aGlzLnJhaWxYUmF0aW89bnVsbCx0aGlzLnNjcm9sbGJhcllSYWlsPXVlKHllLnJhaWwoInkiKSksZS5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhcllSYWlsKSx0aGlzLnNjcm9sbGJhclk9dWUoeWUudGh1bWIoInkiKSksdGhpcy5zY3JvbGxiYXJZUmFpbC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclkpLHRoaXMuc2Nyb2xsYmFyWS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwwKSx0aGlzLmV2ZW50LmJpbmQodGhpcy5zY3JvbGxiYXJZLCJmb2N1cyIsciksdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWSwiYmx1ciIsbyksdGhpcy5zY3JvbGxiYXJZQWN0aXZlPW51bGwsdGhpcy5zY3JvbGxiYXJZSGVpZ2h0PW51bGwsdGhpcy5zY3JvbGxiYXJZVG9wPW51bGw7dmFyIHM9bGUodGhpcy5zY3JvbGxiYXJZUmFpbCk7dGhpcy5zY3JvbGxiYXJZUmlnaHQ9cGFyc2VJbnQocy5yaWdodCwxMCksaXNOYU4odGhpcy5zY3JvbGxiYXJZUmlnaHQpPyh0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQ9ITEsdGhpcy5zY3JvbGxiYXJZTGVmdD1UZShzLmxlZnQpKTp0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQ9ITAsdGhpcy5zY3JvbGxiYXJZT3V0ZXJXaWR0aD10aGlzLmlzUnRsP2Z1bmN0aW9uKGUpe3ZhciB0PWxlKGUpO3JldHVybiBUZSh0LndpZHRoKStUZSh0LnBhZGRpbmdMZWZ0KStUZSh0LnBhZGRpbmdSaWdodCkrVGUodC5ib3JkZXJMZWZ0V2lkdGgpK1RlKHQuYm9yZGVyUmlnaHRXaWR0aCl9KHRoaXMuc2Nyb2xsYmFyWSk6bnVsbCx0aGlzLnJhaWxCb3JkZXJZV2lkdGg9VGUocy5ib3JkZXJUb3BXaWR0aCkrVGUocy5ib3JkZXJCb3R0b21XaWR0aCksY2UodGhpcy5zY3JvbGxiYXJZUmFpbCx7ZGlzcGxheToiYmxvY2sifSksdGhpcy5yYWlsWU1hcmdpbkhlaWdodD1UZShzLm1hcmdpblRvcCkrVGUocy5tYXJnaW5Cb3R0b20pLGNlKHRoaXMuc2Nyb2xsYmFyWVJhaWwse2Rpc3BsYXk6IiJ9KSx0aGlzLnJhaWxZSGVpZ2h0PW51bGwsdGhpcy5yYWlsWVJhdGlvPW51bGwsdGhpcy5yZWFjaD17eDplLnNjcm9sbExlZnQ8PTA/InN0YXJ0IjplLnNjcm9sbExlZnQ+PXRoaXMuY29udGVudFdpZHRoLXRoaXMuY29udGFpbmVyV2lkdGg/ImVuZCI6bnVsbCx5OmUuc2Nyb2xsVG9wPD0wPyJzdGFydCI6ZS5zY3JvbGxUb3A+PXRoaXMuY29udGVudEhlaWdodC10aGlzLmNvbnRhaW5lckhlaWdodD8iZW5kIjpudWxsfSx0aGlzLmlzQWxpdmU9ITAsdGhpcy5zZXR0aW5ncy5oYW5kbGVycy5mb3JFYWNoKChmdW5jdGlvbihlKXtyZXR1cm4gQWVbZV0obil9KSksdGhpcy5sYXN0U2Nyb2xsVG9wPU1hdGguZmxvb3IoZS5zY3JvbGxUb3ApLHRoaXMubGFzdFNjcm9sbExlZnQ9ZS5zY3JvbGxMZWZ0LHRoaXMuZXZlbnQuYmluZCh0aGlzLmVsZW1lbnQsInNjcm9sbCIsKGZ1bmN0aW9uKGUpe3JldHVybiBuLm9uU2Nyb2xsKGUpfSkpLEVlKHRoaXMpfTtJZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5pc0FsaXZlJiYodGhpcy5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQ9dGhpcy5pc05lZ2F0aXZlU2Nyb2xsP3RoaXMuZWxlbWVudC5zY3JvbGxXaWR0aC10aGlzLmVsZW1lbnQuY2xpZW50V2lkdGg6MCxjZSh0aGlzLnNjcm9sbGJhclhSYWlsLHtkaXNwbGF5OiJibG9jayJ9KSxjZSh0aGlzLnNjcm9sbGJhcllSYWlsLHtkaXNwbGF5OiJibG9jayJ9KSx0aGlzLnJhaWxYTWFyZ2luV2lkdGg9VGUobGUodGhpcy5zY3JvbGxiYXJYUmFpbCkubWFyZ2luTGVmdCkrVGUobGUodGhpcy5zY3JvbGxiYXJYUmFpbCkubWFyZ2luUmlnaHQpLHRoaXMucmFpbFlNYXJnaW5IZWlnaHQ9VGUobGUodGhpcy5zY3JvbGxiYXJZUmFpbCkubWFyZ2luVG9wKStUZShsZSh0aGlzLnNjcm9sbGJhcllSYWlsKS5tYXJnaW5Cb3R0b20pLGNlKHRoaXMuc2Nyb2xsYmFyWFJhaWwse2Rpc3BsYXk6Im5vbmUifSksY2UodGhpcy5zY3JvbGxiYXJZUmFpbCx7ZGlzcGxheToibm9uZSJ9KSxFZSh0aGlzKSxMZSh0aGlzLCJ0b3AiLDAsITEsITApLExlKHRoaXMsImxlZnQiLDAsITEsITApLGNlKHRoaXMuc2Nyb2xsYmFyWFJhaWwse2Rpc3BsYXk6IiJ9KSxjZSh0aGlzLnNjcm9sbGJhcllSYWlsLHtkaXNwbGF5OiIifSkpfSxJZS5wcm90b3R5cGUub25TY3JvbGw9ZnVuY3Rpb24oZSl7dGhpcy5pc0FsaXZlJiYoRWUodGhpcyksTGUodGhpcywidG9wIix0aGlzLmVsZW1lbnQuc2Nyb2xsVG9wLXRoaXMubGFzdFNjcm9sbFRvcCksTGUodGhpcywibGVmdCIsdGhpcy5lbGVtZW50LnNjcm9sbExlZnQtdGhpcy5sYXN0U2Nyb2xsTGVmdCksdGhpcy5sYXN0U2Nyb2xsVG9wPU1hdGguZmxvb3IodGhpcy5lbGVtZW50LnNjcm9sbFRvcCksdGhpcy5sYXN0U2Nyb2xsTGVmdD10aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdCl9LEllLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy5pc0FsaXZlJiYodGhpcy5ldmVudC51bmJpbmRBbGwoKSxoZSh0aGlzLnNjcm9sbGJhclgpLGhlKHRoaXMuc2Nyb2xsYmFyWSksaGUodGhpcy5zY3JvbGxiYXJYUmFpbCksaGUodGhpcy5zY3JvbGxiYXJZUmFpbCksdGhpcy5yZW1vdmVQc0NsYXNzZXMoKSx0aGlzLmVsZW1lbnQ9bnVsbCx0aGlzLnNjcm9sbGJhclg9bnVsbCx0aGlzLnNjcm9sbGJhclk9bnVsbCx0aGlzLnNjcm9sbGJhclhSYWlsPW51bGwsdGhpcy5zY3JvbGxiYXJZUmFpbD1udWxsLHRoaXMuaXNBbGl2ZT0hMSl9LEllLnByb3RvdHlwZS5yZW1vdmVQc0NsYXNzZXM9ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQuY2xhc3NOYW1lPXRoaXMuZWxlbWVudC5jbGFzc05hbWUuc3BsaXQoIiAiKS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiFlLm1hdGNoKC9ecHMoWy1fXS4rfCkkLyl9KSkuam9pbigiICIpfTt2YXIgJGUsRGUsUWU9SWUsTWU9e2luc2VydGVkOmZ1bmN0aW9uKGUsdCxuKXtpZighZS4kc2Nyb2xsYmFyKXtpZihuLmNvbnRleHQmJm4uY29udGV4dC4kc3RvcmUpe2lmKG4uY29udGV4dC4kc3RvcmUuZ2V0dGVyc1siYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiXSlyZXR1cm47aWYoIm1hYyI9PT0obi5jb250ZXh0LiRzdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9vcyJdP24uY29udGV4dC4kc3RvcmUuZ2V0dGVyc1siYnJvd3NlckRhdGEvb3MiXS5pZGVudGl0eToiIikpcmV0dXJufXZhciBpPXQudmFsdWV8fHt9O2UuJHNjcm9sbGJhcj1uZXcgUWUoZSxpKSxlLnN0eWxlLm1hcmdpblJpZ2h0PSIiLmNvbmNhdCgtMSooZS5vZmZzZXRXaWR0aC1lLmNsaWVudFdpZHRoKSwicHgiKSxlLm93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsKGZ1bmN0aW9uKHQpe3ZhciBuPTA7aWYoZS4kc2Nyb2xsYmFyKXN3aXRjaCh0LndoaWNoKXtjYXNlIDM4Om49dC5tZXRhS2V5P2UuJHNjcm9sbGJhci5jb250ZW50SGVpZ2h0OnQuYWx0S2V5P2UuJHNjcm9sbGJhci5jb250YWluZXJIZWlnaHQ6MzA7YnJlYWs7Y2FzZSA0MDpuPXQubWV0YUtleT8tZS4kc2Nyb2xsYmFyLmNvbnRlbnRIZWlnaHQ6dC5hbHRLZXk/LWUuJHNjcm9sbGJhci5jb250YWluZXJIZWlnaHQ6LTMwO2JyZWFrO2Nhc2UgMzI6bj10LnNoaWZ0S2V5P2UuJHNjcm9sbGJhci5jb250YWluZXJIZWlnaHQ6LWUuJHNjcm9sbGJhci5jb250YWluZXJIZWlnaHQ7YnJlYWs7Y2FzZSAzMzpuPWUuJHNjcm9sbGJhci5jb250YWluZXJIZWlnaHQ7YnJlYWs7Y2FzZSAzNDpuPS1lLiRzY3JvbGxiYXIuY29udGFpbmVySGVpZ2h0O2JyZWFrO2Nhc2UgMzY6bj1lLiRzY3JvbGxiYXIuY29udGVudEhlaWdodDticmVhaztjYXNlIDM1Om49LWUuJHNjcm9sbGJhci5jb250ZW50SGVpZ2h0O2JyZWFrO2RlZmF1bHQ6cmV0dXJufWUuc2Nyb2xsVG9wLT1ufSkpfX0sdW5iaW5kOmZ1bmN0aW9uKGUpe2UuJHNjcm9sbGJhciYmKGUuJHNjcm9sbGJhci5kZXN0cm95KCksZGVsZXRlIGUuJHNjcm9sbGJhcil9fSxOZT17bmFtZToidGF3ay1lbW9qaS1waWNrZXIiLG1peGluczpbbmVdLGNvbXBvbmVudHM6e1Rhd2tFbW9qaTppZSxUYXdrRW1vamlHcm91cDpyZSxUYXdrSW5wdXQ6c2V9LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y2F0ZWdvcmllczp7cGVvcGxlOntuYW1lOiJTbWlsZXlzICYgUGVvcGxlIixlbW9qaToiMWY2MDMiLGhlYWRlcjoiOnNtaWxleToiLGNvbnRlbnQ6WyI6Z3Jpbm5pbmc6IiwiOmdyaW46IiwiOmpveToiLCI6cm9mbDoiLCI6c21pbGV5OiIsIjpzbWlsZToiLCI6c3dlYXRfc21pbGU6IiwiOmxhdWdoaW5nOiIsIjp3aW5rOiIsIjpibHVzaDoiLCI6eXVtOiIsIjpzdW5nbGFzc2VzOiIsIjpoZWFydF9leWVzOiIsIjpraXNzaW5nX2hlYXJ0OiIsIjpraXNzaW5nOiIsIjpraXNzaW5nX3NtaWxpbmdfZXllczoiLCI6a2lzc2luZ19jbG9zZWRfZXllczoiLCI6cmVsYXhlZDoiLCI6c2xpZ2h0X3NtaWxlOiIsIjpodWdnaW5nOiIsIjp0aGlua2luZzoiLCI6bmV1dHJhbF9mYWNlOiIsIjpleHByZXNzaW9ubGVzczoiLCI6bm9fbW91dGg6IiwiOnJvbGxpbmdfZXllczoiLCI6c21pcms6IiwiOnBlcnNldmVyZToiLCI6ZGlzYXBwb2ludGVkX3JlbGlldmVkOiIsIjpvcGVuX21vdXRoOiIsIjp6aXBwZXJfbW91dGg6IiwiOmh1c2hlZDoiLCI6c2xlZXB5OiIsIjp0aXJlZF9mYWNlOiIsIjpzbGVlcGluZzoiLCI6cmVsaWV2ZWQ6IiwiOm5lcmQ6IiwiOnN0dWNrX291dF90b25ndWU6IiwiOnN0dWNrX291dF90b25ndWVfd2lua2luZ19leWU6IiwiOnN0dWNrX291dF90b25ndWVfY2xvc2VkX2V5ZXM6IiwiOmRyb29saW5nX2ZhY2U6IiwiOnVuYW11c2VkOiIsIjpzd2VhdDoiLCI6cGVuc2l2ZToiLCI6Y29uZnVzZWQ6IiwiOnVwc2lkZV9kb3duOiIsIjptb25leV9tb3V0aDoiLCI6YXN0b25pc2hlZDoiLCI6ZnJvd25pbmcyOiIsIjpzbGlnaHRfZnJvd246IiwiOmNvbmZvdW5kZWQ6IiwiOmRpc2FwcG9pbnRlZDoiLCI6d29ycmllZDoiLCI6dHJpdW1waDoiLCI6Y3J5OiIsIjpzb2I6IiwiOmZyb3duaW5nOiIsIjphbmd1aXNoZWQ6IiwiOmZlYXJmdWw6IiwiOndlYXJ5OiIsIjpncmltYWNpbmc6IiwiOmNvbGRfc3dlYXQ6IiwiOnNjcmVhbToiLCI6Zmx1c2hlZDoiLCI6ZGl6enlfZmFjZToiLCI6cmFnZToiLCI6YW5ncnk6IiwiOmlubm9jZW50OiIsIjpjb3dib3k6IiwiOmNsb3duOiIsIjpseWluZ19mYWNlOiIsIjptYXNrOiIsIjp0aGVybW9tZXRlcl9mYWNlOiIsIjpoZWFkX2JhbmRhZ2U6IiwiOm5hdXNlYXRlZF9mYWNlOiIsIjpzbmVlemluZ19mYWNlOiIsIjpzbWlsaW5nX2ltcDoiLCI6aW1wOiIsIjpqYXBhbmVzZV9vZ3JlOiIsIjpqYXBhbmVzZV9nb2JsaW46IiwiOnNrdWxsOiIsIjpnaG9zdDoiLCI6YWxpZW46IiwiOnJvYm90OiIsIjpwb29wOiIsIjpzbWlsZXlfY2F0OiIsIjpzbWlsZV9jYXQ6IiwiOmpveV9jYXQ6IiwiOmhlYXJ0X2V5ZXNfY2F0OiIsIjpzbWlya19jYXQ6IiwiOmtpc3NpbmdfY2F0OiIsIjpzY3JlYW1fY2F0OiIsIjpjcnlpbmdfY2F0X2ZhY2U6IiwiOnBvdXRpbmdfY2F0OiIsIjpib3k6IiwiOmJveV90b25lMToiLCI6Ym95X3RvbmUyOiIsIjpib3lfdG9uZTM6IiwiOmJveV90b25lNDoiLCI6Ym95X3RvbmU1OiIsIjpnaXJsOiIsIjpnaXJsX3RvbmUxOiIsIjpnaXJsX3RvbmUyOiIsIjpnaXJsX3RvbmUzOiIsIjpnaXJsX3RvbmU0OiIsIjpnaXJsX3RvbmU1OiIsIjptYW46IiwiOm1hbl90b25lMToiLCI6bWFuX3RvbmUyOiIsIjptYW5fdG9uZTM6IiwiOm1hbl90b25lNDoiLCI6bWFuX3RvbmU1OiIsIjp3b21hbjoiLCI6d29tYW5fdG9uZTE6IiwiOndvbWFuX3RvbmUyOiIsIjp3b21hbl90b25lMzoiLCI6d29tYW5fdG9uZTQ6IiwiOndvbWFuX3RvbmU1OiIsIjpvbGRlcl9tYW46IiwiOm9sZGVyX21hbl90b25lMToiLCI6b2xkZXJfbWFuX3RvbmUyOiIsIjpvbGRlcl9tYW5fdG9uZTM6IiwiOm9sZGVyX21hbl90b25lNDoiLCI6b2xkZXJfbWFuX3RvbmU1OiIsIjpvbGRlcl93b21hbjoiLCI6b2xkZXJfd29tYW5fdG9uZTE6IiwiOm9sZGVyX3dvbWFuX3RvbmUyOiIsIjpvbGRlcl93b21hbl90b25lMzoiLCI6b2xkZXJfd29tYW5fdG9uZTQ6IiwiOm9sZGVyX3dvbWFuX3RvbmU1OiIsIjpiYWJ5OiIsIjpiYWJ5X3RvbmUxOiIsIjpiYWJ5X3RvbmUyOiIsIjpiYWJ5X3RvbmUzOiIsIjpiYWJ5X3RvbmU0OiIsIjpiYWJ5X3RvbmU1OiIsIjphbmdlbDoiLCI6YW5nZWxfdG9uZTE6IiwiOmFuZ2VsX3RvbmUyOiIsIjphbmdlbF90b25lMzoiLCI6YW5nZWxfdG9uZTQ6IiwiOmFuZ2VsX3RvbmU1OiIsIjpjb3A6IiwiOmNvcF90b25lMToiLCI6Y29wX3RvbmUyOiIsIjpjb3BfdG9uZTM6IiwiOmNvcF90b25lNDoiLCI6Y29wX3RvbmU1OiIsIjpzcHk6IiwiOnNweV90b25lMToiLCI6c3B5X3RvbmUyOiIsIjpzcHlfdG9uZTM6IiwiOnNweV90b25lNDoiLCI6c3B5X3RvbmU1OiIsIjpndWFyZHNtYW46IiwiOmd1YXJkc21hbl90b25lMToiLCI6Z3VhcmRzbWFuX3RvbmUyOiIsIjpndWFyZHNtYW5fdG9uZTM6IiwiOmd1YXJkc21hbl90b25lNDoiLCI6Z3VhcmRzbWFuX3RvbmU1OiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyOiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyX3RvbmUxOiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyX3RvbmUyOiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyX3RvbmUzOiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyX3RvbmU0OiIsIjpjb25zdHJ1Y3Rpb25fd29ya2VyX3RvbmU1OiIsIjptYW5fd2l0aF90dXJiYW46IiwiOm1hbl93aXRoX3R1cmJhbl90b25lMToiLCI6bWFuX3dpdGhfdHVyYmFuX3RvbmUyOiIsIjptYW5fd2l0aF90dXJiYW5fdG9uZTM6IiwiOm1hbl93aXRoX3R1cmJhbl90b25lNDoiLCI6bWFuX3dpdGhfdHVyYmFuX3RvbmU1OiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyOiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyX3RvbmUxOiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyX3RvbmUyOiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyX3RvbmUzOiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyX3RvbmU0OiIsIjpwZXJzb25fd2l0aF9ibG9uZF9oYWlyX3RvbmU1OiIsIjpzYW50YToiLCI6c2FudGFfdG9uZTE6IiwiOnNhbnRhX3RvbmUyOiIsIjpzYW50YV90b25lMzoiLCI6c2FudGFfdG9uZTQ6IiwiOnNhbnRhX3RvbmU1OiIsIjptcnNfY2xhdXM6IiwiOm1yc19jbGF1c190b25lMToiLCI6bXJzX2NsYXVzX3RvbmUyOiIsIjptcnNfY2xhdXNfdG9uZTM6IiwiOm1yc19jbGF1c190b25lNDoiLCI6bXJzX2NsYXVzX3RvbmU1OiIsIjpwcmluY2VzczoiLCI6cHJpbmNlc3NfdG9uZTE6IiwiOnByaW5jZXNzX3RvbmUyOiIsIjpwcmluY2Vzc190b25lMzoiLCI6cHJpbmNlc3NfdG9uZTQ6IiwiOnByaW5jZXNzX3RvbmU1OiIsIjpwcmluY2U6IiwiOnByaW5jZV90b25lMToiLCI6cHJpbmNlX3RvbmUyOiIsIjpwcmluY2VfdG9uZTM6IiwiOnByaW5jZV90b25lNDoiLCI6cHJpbmNlX3RvbmU1OiIsIjpicmlkZV93aXRoX3ZlaWw6IiwiOmJyaWRlX3dpdGhfdmVpbF90b25lMToiLCI6YnJpZGVfd2l0aF92ZWlsX3RvbmUyOiIsIjpicmlkZV93aXRoX3ZlaWxfdG9uZTM6IiwiOmJyaWRlX3dpdGhfdmVpbF90b25lNDoiLCI6YnJpZGVfd2l0aF92ZWlsX3RvbmU1OiIsIjptYW5faW5fdHV4ZWRvOiIsIjptYW5faW5fdHV4ZWRvX3RvbmUxOiIsIjptYW5faW5fdHV4ZWRvX3RvbmUyOiIsIjptYW5faW5fdHV4ZWRvX3RvbmUzOiIsIjptYW5faW5fdHV4ZWRvX3RvbmU0OiIsIjptYW5faW5fdHV4ZWRvX3RvbmU1OiIsIjpwcmVnbmFudF93b21hbjoiLCI6cHJlZ25hbnRfd29tYW5fdG9uZTE6IiwiOnByZWduYW50X3dvbWFuX3RvbmUyOiIsIjpwcmVnbmFudF93b21hbl90b25lMzoiLCI6cHJlZ25hbnRfd29tYW5fdG9uZTQ6IiwiOnByZWduYW50X3dvbWFuX3RvbmU1OiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvOiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvX3RvbmUxOiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvX3RvbmUyOiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvX3RvbmUzOiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvX3RvbmU0OiIsIjptYW5fd2l0aF9ndWFfcGlfbWFvX3RvbmU1OiIsIjpwZXJzb25fZnJvd25pbmc6IiwiOnBlcnNvbl9mcm93bmluZ190b25lMToiLCI6cGVyc29uX2Zyb3duaW5nX3RvbmUyOiIsIjpwZXJzb25fZnJvd25pbmdfdG9uZTM6IiwiOnBlcnNvbl9mcm93bmluZ190b25lNDoiLCI6cGVyc29uX2Zyb3duaW5nX3RvbmU1OiIsIjpwZXJzb25fd2l0aF9wb3V0aW5nX2ZhY2U6IiwiOnBlcnNvbl93aXRoX3BvdXRpbmdfZmFjZV90b25lMToiLCI6cGVyc29uX3dpdGhfcG91dGluZ19mYWNlX3RvbmUyOiIsIjpwZXJzb25fd2l0aF9wb3V0aW5nX2ZhY2VfdG9uZTM6IiwiOnBlcnNvbl93aXRoX3BvdXRpbmdfZmFjZV90b25lNDoiLCI6cGVyc29uX3dpdGhfcG91dGluZ19mYWNlX3RvbmU1OiIsIjpub19nb29kOiIsIjpub19nb29kX3RvbmUxOiIsIjpub19nb29kX3RvbmUyOiIsIjpub19nb29kX3RvbmUzOiIsIjpub19nb29kX3RvbmU0OiIsIjpub19nb29kX3RvbmU1OiIsIjpva193b21hbjoiLCI6b2tfd29tYW5fdG9uZTE6IiwiOm9rX3dvbWFuX3RvbmUyOiIsIjpva193b21hbl90b25lMzoiLCI6b2tfd29tYW5fdG9uZTQ6IiwiOm9rX3dvbWFuX3RvbmU1OiIsIjppbmZvcm1hdGlvbl9kZXNrX3BlcnNvbjoiLCI6aW5mb3JtYXRpb25fZGVza19wZXJzb25fdG9uZTE6IiwiOmluZm9ybWF0aW9uX2Rlc2tfcGVyc29uX3RvbmUyOiIsIjppbmZvcm1hdGlvbl9kZXNrX3BlcnNvbl90b25lMzoiLCI6aW5mb3JtYXRpb25fZGVza19wZXJzb25fdG9uZTQ6IiwiOmluZm9ybWF0aW9uX2Rlc2tfcGVyc29uX3RvbmU1OiIsIjpyYWlzaW5nX2hhbmQ6IiwiOnJhaXNpbmdfaGFuZF90b25lMToiLCI6cmFpc2luZ19oYW5kX3RvbmUyOiIsIjpyYWlzaW5nX2hhbmRfdG9uZTM6IiwiOnJhaXNpbmdfaGFuZF90b25lNDoiLCI6cmFpc2luZ19oYW5kX3RvbmU1OiIsIjpib3c6IiwiOmJvd190b25lMToiLCI6Ym93X3RvbmUyOiIsIjpib3dfdG9uZTM6IiwiOmJvd190b25lNDoiLCI6Ym93X3RvbmU1OiIsIjpmYWNlX3BhbG06IiwiOmZhY2VfcGFsbV90b25lMToiLCI6ZmFjZV9wYWxtX3RvbmUyOiIsIjpmYWNlX3BhbG1fdG9uZTM6IiwiOmZhY2VfcGFsbV90b25lNDoiLCI6ZmFjZV9wYWxtX3RvbmU1OiIsIjpzaHJ1ZzoiLCI6c2hydWdfdG9uZTE6IiwiOnNocnVnX3RvbmUyOiIsIjpzaHJ1Z190b25lMzoiLCI6c2hydWdfdG9uZTQ6IiwiOnNocnVnX3RvbmU1OiIsIjptYXNzYWdlOiIsIjptYXNzYWdlX3RvbmUxOiIsIjptYXNzYWdlX3RvbmUyOiIsIjptYXNzYWdlX3RvbmUzOiIsIjptYXNzYWdlX3RvbmU0OiIsIjptYXNzYWdlX3RvbmU1OiIsIjpoYWlyY3V0OiIsIjpoYWlyY3V0X3RvbmUxOiIsIjpoYWlyY3V0X3RvbmUyOiIsIjpoYWlyY3V0X3RvbmUzOiIsIjpoYWlyY3V0X3RvbmU0OiIsIjpoYWlyY3V0X3RvbmU1OiIsIjp3YWxraW5nOiIsIjp3YWxraW5nX3RvbmUxOiIsIjp3YWxraW5nX3RvbmUyOiIsIjp3YWxraW5nX3RvbmUzOiIsIjp3YWxraW5nX3RvbmU0OiIsIjp3YWxraW5nX3RvbmU1OiIsIjpydW5uZXI6IiwiOnJ1bm5lcl90b25lMToiLCI6cnVubmVyX3RvbmUyOiIsIjpydW5uZXJfdG9uZTM6IiwiOnJ1bm5lcl90b25lNDoiLCI6cnVubmVyX3RvbmU1OiIsIjpkYW5jZXI6IiwiOmRhbmNlcl90b25lMToiLCI6ZGFuY2VyX3RvbmUyOiIsIjpkYW5jZXJfdG9uZTM6IiwiOmRhbmNlcl90b25lNDoiLCI6ZGFuY2VyX3RvbmU1OiIsIjptYW5fZGFuY2luZzoiLCI6bWFuX2RhbmNpbmdfdG9uZTE6IiwiOm1hbl9kYW5jaW5nX3RvbmUyOiIsIjptYW5fZGFuY2luZ190b25lMzoiLCI6bWFuX2RhbmNpbmdfdG9uZTQ6IiwiOm1hbl9kYW5jaW5nX3RvbmU1OiIsIjpkYW5jZXJzOiIsIjpzcGVha2luZ19oZWFkOiIsIjpidXN0X2luX3NpbGhvdWV0dGU6IiwiOmJ1c3RzX2luX3NpbGhvdWV0dGU6IiwiOmNvdXBsZToiLCI6dHdvX21lbl9ob2xkaW5nX2hhbmRzOiIsIjp0d29fd29tZW5faG9sZGluZ19oYW5kczoiLCI6Y291cGxla2lzczoiLCI6a2lzc19tbToiLCI6a2lzc193dzoiLCI6Y291cGxlX3dpdGhfaGVhcnQ6IiwiOmNvdXBsZV9tbToiLCI6Y291cGxlX3d3OiIsIjpmYW1pbHk6IiwiOmZhbWlseV9td2c6IiwiOmZhbWlseV9td2diOiIsIjpmYW1pbHlfbXdiYjoiLCI6ZmFtaWx5X213Z2c6IiwiOmZhbWlseV9tbWI6IiwiOmZhbWlseV9tbWc6IiwiOmZhbWlseV9tbWdiOiIsIjpmYW1pbHlfbW1iYjoiLCI6ZmFtaWx5X21tZ2c6IiwiOmZhbWlseV93d2I6IiwiOmZhbWlseV93d2c6IiwiOmZhbWlseV93d2diOiIsIjpmYW1pbHlfd3diYjoiLCI6ZmFtaWx5X3d3Z2c6IiwiOm11c2NsZToiLCI6bXVzY2xlX3RvbmUxOiIsIjptdXNjbGVfdG9uZTI6IiwiOm11c2NsZV90b25lMzoiLCI6bXVzY2xlX3RvbmU0OiIsIjptdXNjbGVfdG9uZTU6IiwiOnNlbGZpZToiLCI6c2VsZmllX3RvbmUxOiIsIjpzZWxmaWVfdG9uZTI6IiwiOnNlbGZpZV90b25lMzoiLCI6c2VsZmllX3RvbmU0OiIsIjpzZWxmaWVfdG9uZTU6IiwiOnBvaW50X2xlZnQ6IiwiOnBvaW50X2xlZnRfdG9uZTE6IiwiOnBvaW50X2xlZnRfdG9uZTI6IiwiOnBvaW50X2xlZnRfdG9uZTM6IiwiOnBvaW50X2xlZnRfdG9uZTQ6IiwiOnBvaW50X2xlZnRfdG9uZTU6IiwiOnBvaW50X3JpZ2h0OiIsIjpwb2ludF9yaWdodF90b25lMToiLCI6cG9pbnRfcmlnaHRfdG9uZTI6IiwiOnBvaW50X3JpZ2h0X3RvbmUzOiIsIjpwb2ludF9yaWdodF90b25lNDoiLCI6cG9pbnRfcmlnaHRfdG9uZTU6IiwiOnBvaW50X3VwOiIsIjpwb2ludF91cF90b25lMToiLCI6cG9pbnRfdXBfdG9uZTI6IiwiOnBvaW50X3VwX3RvbmUzOiIsIjpwb2ludF91cF90b25lNDoiLCI6cG9pbnRfdXBfdG9uZTU6IiwiOnBvaW50X3VwXzI6IiwiOnBvaW50X3VwXzJfdG9uZTE6IiwiOnBvaW50X3VwXzJfdG9uZTI6IiwiOnBvaW50X3VwXzJfdG9uZTM6IiwiOnBvaW50X3VwXzJfdG9uZTQ6IiwiOnBvaW50X3VwXzJfdG9uZTU6IiwiOm1pZGRsZV9maW5nZXI6IiwiOm1pZGRsZV9maW5nZXJfdG9uZTE6IiwiOm1pZGRsZV9maW5nZXJfdG9uZTI6IiwiOm1pZGRsZV9maW5nZXJfdG9uZTM6IiwiOm1pZGRsZV9maW5nZXJfdG9uZTQ6IiwiOm1pZGRsZV9maW5nZXJfdG9uZTU6IiwiOnBvaW50X2Rvd246IiwiOnBvaW50X2Rvd25fdG9uZTE6IiwiOnBvaW50X2Rvd25fdG9uZTI6IiwiOnBvaW50X2Rvd25fdG9uZTM6IiwiOnBvaW50X2Rvd25fdG9uZTQ6IiwiOnBvaW50X2Rvd25fdG9uZTU6IiwiOnY6IiwiOnZfdG9uZTE6IiwiOnZfdG9uZTI6IiwiOnZfdG9uZTM6IiwiOnZfdG9uZTQ6IiwiOnZfdG9uZTU6IiwiOmZpbmdlcnNfY3Jvc3NlZDoiLCI6ZmluZ2Vyc19jcm9zc2VkX3RvbmUxOiIsIjpmaW5nZXJzX2Nyb3NzZWRfdG9uZTI6IiwiOmZpbmdlcnNfY3Jvc3NlZF90b25lMzoiLCI6ZmluZ2Vyc19jcm9zc2VkX3RvbmU0OiIsIjpmaW5nZXJzX2Nyb3NzZWRfdG9uZTU6IiwiOnZ1bGNhbjoiLCI6dnVsY2FuX3RvbmUxOiIsIjp2dWxjYW5fdG9uZTI6IiwiOnZ1bGNhbl90b25lMzoiLCI6dnVsY2FuX3RvbmU0OiIsIjp2dWxjYW5fdG9uZTU6IiwiOm1ldGFsOiIsIjptZXRhbF90b25lMToiLCI6bWV0YWxfdG9uZTI6IiwiOm1ldGFsX3RvbmUzOiIsIjptZXRhbF90b25lNDoiLCI6bWV0YWxfdG9uZTU6IiwiOmNhbGxfbWU6IiwiOmNhbGxfbWVfdG9uZTE6IiwiOmNhbGxfbWVfdG9uZTI6IiwiOmNhbGxfbWVfdG9uZTM6IiwiOmNhbGxfbWVfdG9uZTQ6IiwiOmNhbGxfbWVfdG9uZTU6IiwiOmhhbmRfc3BsYXllZDoiLCI6aGFuZF9zcGxheWVkX3RvbmUxOiIsIjpoYW5kX3NwbGF5ZWRfdG9uZTI6IiwiOmhhbmRfc3BsYXllZF90b25lMzoiLCI6aGFuZF9zcGxheWVkX3RvbmU0OiIsIjpoYW5kX3NwbGF5ZWRfdG9uZTU6IiwiOnJhaXNlZF9oYW5kOiIsIjpyYWlzZWRfaGFuZF90b25lMToiLCI6cmFpc2VkX2hhbmRfdG9uZTI6IiwiOnJhaXNlZF9oYW5kX3RvbmUzOiIsIjpyYWlzZWRfaGFuZF90b25lNDoiLCI6cmFpc2VkX2hhbmRfdG9uZTU6IiwiOm9rX2hhbmQ6IiwiOm9rX2hhbmRfdG9uZTE6IiwiOm9rX2hhbmRfdG9uZTI6IiwiOm9rX2hhbmRfdG9uZTM6IiwiOm9rX2hhbmRfdG9uZTQ6IiwiOm9rX2hhbmRfdG9uZTU6IiwiOnRodW1ic3VwOiIsIjp0aHVtYnN1cF90b25lMToiLCI6dGh1bWJzdXBfdG9uZTI6IiwiOnRodW1ic3VwX3RvbmUzOiIsIjp0aHVtYnN1cF90b25lNDoiLCI6dGh1bWJzdXBfdG9uZTU6IiwiOnRodW1ic2Rvd246IiwiOnRodW1ic2Rvd25fdG9uZTE6IiwiOnRodW1ic2Rvd25fdG9uZTI6IiwiOnRodW1ic2Rvd25fdG9uZTM6IiwiOnRodW1ic2Rvd25fdG9uZTQ6IiwiOnRodW1ic2Rvd25fdG9uZTU6IiwiOmZpc3Q6IiwiOmZpc3RfdG9uZTE6IiwiOmZpc3RfdG9uZTI6IiwiOmZpc3RfdG9uZTM6IiwiOmZpc3RfdG9uZTQ6IiwiOmZpc3RfdG9uZTU6IiwiOnB1bmNoOiIsIjpwdW5jaF90b25lMToiLCI6cHVuY2hfdG9uZTI6IiwiOnB1bmNoX3RvbmUzOiIsIjpwdW5jaF90b25lNDoiLCI6cHVuY2hfdG9uZTU6IiwiOmxlZnRfZmFjaW5nX2Zpc3Q6IiwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTE6IiwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTI6IiwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTM6IiwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTQ6IiwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTU6IiwiOnJpZ2h0X2ZhY2luZ19maXN0OiIsIjpyaWdodF9mYWNpbmdfZmlzdF90b25lMToiLCI6cmlnaHRfZmFjaW5nX2Zpc3RfdG9uZTI6IiwiOnJpZ2h0X2ZhY2luZ19maXN0X3RvbmUzOiIsIjpyaWdodF9mYWNpbmdfZmlzdF90b25lNDoiLCI6cmlnaHRfZmFjaW5nX2Zpc3RfdG9uZTU6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmQ6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTE6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTI6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTM6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTQ6IiwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTU6IiwiOndhdmU6IiwiOndhdmVfdG9uZTE6IiwiOndhdmVfdG9uZTI6IiwiOndhdmVfdG9uZTM6IiwiOndhdmVfdG9uZTQ6IiwiOndhdmVfdG9uZTU6IiwiOmNsYXA6IiwiOmNsYXBfdG9uZTE6IiwiOmNsYXBfdG9uZTI6IiwiOmNsYXBfdG9uZTM6IiwiOmNsYXBfdG9uZTQ6IiwiOmNsYXBfdG9uZTU6IiwiOndyaXRpbmdfaGFuZDoiLCI6d3JpdGluZ19oYW5kX3RvbmUxOiIsIjp3cml0aW5nX2hhbmRfdG9uZTI6IiwiOndyaXRpbmdfaGFuZF90b25lMzoiLCI6d3JpdGluZ19oYW5kX3RvbmU0OiIsIjp3cml0aW5nX2hhbmRfdG9uZTU6IiwiOm9wZW5faGFuZHM6IiwiOm9wZW5faGFuZHNfdG9uZTE6IiwiOm9wZW5faGFuZHNfdG9uZTI6IiwiOm9wZW5faGFuZHNfdG9uZTM6IiwiOm9wZW5faGFuZHNfdG9uZTQ6IiwiOm9wZW5faGFuZHNfdG9uZTU6IiwiOnJhaXNlZF9oYW5kczoiLCI6cmFpc2VkX2hhbmRzX3RvbmUxOiIsIjpyYWlzZWRfaGFuZHNfdG9uZTI6IiwiOnJhaXNlZF9oYW5kc190b25lMzoiLCI6cmFpc2VkX2hhbmRzX3RvbmU0OiIsIjpyYWlzZWRfaGFuZHNfdG9uZTU6IiwiOnByYXk6IiwiOnByYXlfdG9uZTE6IiwiOnByYXlfdG9uZTI6IiwiOnByYXlfdG9uZTM6IiwiOnByYXlfdG9uZTQ6IiwiOnByYXlfdG9uZTU6IiwiOmhhbmRzaGFrZToiLCI6aGFuZHNoYWtlX3RvbmUxOiIsIjpoYW5kc2hha2VfdG9uZTI6IiwiOmhhbmRzaGFrZV90b25lMzoiLCI6aGFuZHNoYWtlX3RvbmU0OiIsIjpoYW5kc2hha2VfdG9uZTU6IiwiOm5haWxfY2FyZToiLCI6bmFpbF9jYXJlX3RvbmUxOiIsIjpuYWlsX2NhcmVfdG9uZTI6IiwiOm5haWxfY2FyZV90b25lMzoiLCI6bmFpbF9jYXJlX3RvbmU0OiIsIjpuYWlsX2NhcmVfdG9uZTU6IiwiOmVhcjoiLCI6ZWFyX3RvbmUxOiIsIjplYXJfdG9uZTI6IiwiOmVhcl90b25lMzoiLCI6ZWFyX3RvbmU0OiIsIjplYXJfdG9uZTU6IiwiOm5vc2U6IiwiOm5vc2VfdG9uZTE6IiwiOm5vc2VfdG9uZTI6IiwiOm5vc2VfdG9uZTM6IiwiOm5vc2VfdG9uZTQ6IiwiOm5vc2VfdG9uZTU6IiwiOmZvb3RwcmludHM6IiwiOmV5ZXM6IiwiOmV5ZToiLCI6dG9uZ3VlOiIsIjpsaXBzOiIsIjpraXNzOiIsIjp6eno6IiwiOmV5ZWdsYXNzZXM6IiwiOmRhcmtfc3VuZ2xhc3NlczoiLCI6bmVja3RpZToiLCI6c2hpcnQ6IiwiOmplYW5zOiIsIjpkcmVzczoiLCI6a2ltb25vOiIsIjpiaWtpbmk6IiwiOndvbWFuc19jbG90aGVzOiIsIjpwdXJzZToiLCI6aGFuZGJhZzoiLCI6cG91Y2g6IiwiOnNjaG9vbF9zYXRjaGVsOiIsIjptYW5zX3Nob2U6IiwiOmF0aGxldGljX3Nob2U6IiwiOmhpZ2hfaGVlbDoiLCI6c2FuZGFsOiIsIjpib290OiIsIjpjcm93bjoiLCI6d29tYW5zX2hhdDoiLCI6dG9waGF0OiIsIjptb3J0YXJfYm9hcmQ6IiwiOmhlbG1ldF93aXRoX2Nyb3NzOiIsIjpsaXBzdGljazoiLCI6cmluZzoiLCI6Y2xvc2VkX3VtYnJlbGxhOiIsIjpicmllZmNhc2U6Il0sc2hvdzohMX0sbmF0dXJlOntuYW1lOiJBbmltYWxzICYgTmF0dXJlIixlbW9qaToiMWYzNDAiLGhlYWRlcjoiOmZvdXJfbGVhZl9jbG92ZXI6Iixjb250ZW50OlsiOnNlZV9ub19ldmlsOiIsIjpoZWFyX25vX2V2aWw6IiwiOnNwZWFrX25vX2V2aWw6IiwiOnN3ZWF0X2Ryb3BzOiIsIjpkYXNoOiIsIjptb25rZXlfZmFjZToiLCI6bW9ua2V5OiIsIjpnb3JpbGxhOiIsIjpkb2c6IiwiOmRvZzI6IiwiOnBvb2RsZToiLCI6d29sZjoiLCI6Zm94OiIsIjpjYXQ6IiwiOmNhdDI6IiwiOmxpb25fZmFjZToiLCI6dGlnZXI6IiwiOnRpZ2VyMjoiLCI6bGVvcGFyZDoiLCI6aG9yc2U6IiwiOnJhY2Vob3JzZToiLCI6ZGVlcjoiLCI6dW5pY29ybjoiLCI6Y293OiIsIjpveDoiLCI6d2F0ZXJfYnVmZmFsbzoiLCI6Y293MjoiLCI6cGlnOiIsIjpwaWcyOiIsIjpib2FyOiIsIjpwaWdfbm9zZToiLCI6cmFtOiIsIjpzaGVlcDoiLCI6Z29hdDoiLCI6ZHJvbWVkYXJ5X2NhbWVsOiIsIjpjYW1lbDoiLCI6ZWxlcGhhbnQ6IiwiOnJoaW5vOiIsIjptb3VzZToiLCI6bW91c2UyOiIsIjpyYXQ6IiwiOmhhbXN0ZXI6IiwiOnJhYmJpdDoiLCI6cmFiYml0MjoiLCI6Y2hpcG11bms6IiwiOmJhdDoiLCI6YmVhcjoiLCI6a29hbGE6IiwiOnBhbmRhX2ZhY2U6IiwiOmZlZXQ6IiwiOnR1cmtleToiLCI6Y2hpY2tlbjoiLCI6cm9vc3RlcjoiLCI6aGF0Y2hpbmdfY2hpY2s6IiwiOmJhYnlfY2hpY2s6IiwiOmhhdGNoZWRfY2hpY2s6IiwiOmJpcmQ6IiwiOnBlbmd1aW46IiwiOmRvdmU6IiwiOmVhZ2xlOiIsIjpkdWNrOiIsIjpvd2w6IiwiOmZyb2c6IiwiOmNyb2NvZGlsZToiLCI6dHVydGxlOiIsIjpsaXphcmQ6IiwiOnNuYWtlOiIsIjpkcmFnb25fZmFjZToiLCI6ZHJhZ29uOiIsIjp3aGFsZToiLCI6d2hhbGUyOiIsIjpkb2xwaGluOiIsIjpmaXNoOiIsIjp0cm9waWNhbF9maXNoOiIsIjpibG93ZmlzaDoiLCI6c2hhcms6IiwiOm9jdG9wdXM6IiwiOnNoZWxsOiIsIjpjcmFiOiIsIjpzaHJpbXA6IiwiOnNxdWlkOiIsIjpidXR0ZXJmbHk6IiwiOnNuYWlsOiIsIjpidWc6IiwiOmFudDoiLCI6YmVlOiIsIjpiZWV0bGU6IiwiOnNwaWRlcjoiLCI6c3BpZGVyX3dlYjoiLCI6c2NvcnBpb246IiwiOmJvdXF1ZXQ6IiwiOmNoZXJyeV9ibG9zc29tOiIsIjpyb3NldHRlOiIsIjpyb3NlOiIsIjp3aWx0ZWRfcm9zZToiLCI6aGliaXNjdXM6IiwiOnN1bmZsb3dlcjoiLCI6Ymxvc3NvbToiLCI6dHVsaXA6IiwiOnNlZWRsaW5nOiIsIjpldmVyZ3JlZW5fdHJlZToiLCI6ZGVjaWR1b3VzX3RyZWU6IiwiOnBhbG1fdHJlZToiLCI6Y2FjdHVzOiIsIjplYXJfb2ZfcmljZToiLCI6aGVyYjoiLCI6c2hhbXJvY2s6IiwiOmZvdXJfbGVhZl9jbG92ZXI6IiwiOm1hcGxlX2xlYWY6IiwiOmZhbGxlbl9sZWFmOiIsIjpsZWF2ZXM6IiwiOm11c2hyb29tOiIsIjpjaGVzdG51dDoiLCI6ZWFydGhfYWZyaWNhOiIsIjplYXJ0aF9hbWVyaWNhczoiLCI6ZWFydGhfYXNpYToiLCI6bmV3X21vb246IiwiOndheGluZ19jcmVzY2VudF9tb29uOiIsIjpmaXJzdF9xdWFydGVyX21vb246IiwiOndheGluZ19naWJib3VzX21vb246IiwiOmZ1bGxfbW9vbjoiLCI6d2FuaW5nX2dpYmJvdXNfbW9vbjoiLCI6bGFzdF9xdWFydGVyX21vb246IiwiOndhbmluZ19jcmVzY2VudF9tb29uOiIsIjpjcmVzY2VudF9tb29uOiIsIjpuZXdfbW9vbl93aXRoX2ZhY2U6IiwiOmZpcnN0X3F1YXJ0ZXJfbW9vbl93aXRoX2ZhY2U6IiwiOmxhc3RfcXVhcnRlcl9tb29uX3dpdGhfZmFjZToiLCI6c3Vubnk6IiwiOmZ1bGxfbW9vbl93aXRoX2ZhY2U6IiwiOnN1bl93aXRoX2ZhY2U6IiwiOnN0YXI6IiwiOnN0YXIyOiIsIjpjbG91ZDoiLCI6cGFydGx5X3N1bm55OiIsIjp0aHVuZGVyX2Nsb3VkX3JhaW46IiwiOndoaXRlX3N1bl9zbWFsbF9jbG91ZDoiLCI6d2hpdGVfc3VuX2Nsb3VkOiIsIjp3aGl0ZV9zdW5fcmFpbl9jbG91ZDoiLCI6Y2xvdWRfcmFpbjoiLCI6Y2xvdWRfc25vdzoiLCI6Y2xvdWRfbGlnaHRuaW5nOiIsIjpjbG91ZF90b3JuYWRvOiIsIjpmb2c6IiwiOndpbmRfYmxvd2luZ19mYWNlOiIsIjp1bWJyZWxsYTI6IiwiOnVtYnJlbGxhOiIsIjp6YXA6IiwiOnNub3dmbGFrZToiLCI6c25vd21hbjI6IiwiOnNub3dtYW46IiwiOmNvbWV0OiIsIjpmaXJlOiIsIjpkcm9wbGV0OiIsIjpvY2VhbjoiLCI6amFja19vX2xhbnRlcm46IiwiOmNocmlzdG1hc190cmVlOiIsIjpzcGFya2xlczoiLCI6dGFuYWJhdGFfdHJlZToiLCI6YmFtYm9vOiJdLHNob3c6ITF9LGZvb2RzOntuYW1lOiJGb29kICYgRHJpbmsiLGVtb2ppOiIxZjM1NCIsaGVhZGVyOiI6aGFtYnVyZ2VyOiIsY29udGVudDpbIjpncmFwZXM6IiwiOm1lbG9uOiIsIjp3YXRlcm1lbG9uOiIsIjp0YW5nZXJpbmU6IiwiOmxlbW9uOiIsIjpiYW5hbmE6IiwiOnBpbmVhcHBsZToiLCI6YXBwbGU6IiwiOmdyZWVuX2FwcGxlOiIsIjpwZWFyOiIsIjpwZWFjaDoiLCI6Y2hlcnJpZXM6IiwiOnN0cmF3YmVycnk6IiwiOmtpd2k6IiwiOnRvbWF0bzoiLCI6YXZvY2FkbzoiLCI6ZWdncGxhbnQ6IiwiOnBvdGF0bzoiLCI6Y2Fycm90OiIsIjpjb3JuOiIsIjpob3RfcGVwcGVyOiIsIjpjdWN1bWJlcjoiLCI6cGVhbnV0czoiLCI6YnJlYWQ6IiwiOmNyb2lzc2FudDoiLCI6ZnJlbmNoX2JyZWFkOiIsIjpwYW5jYWtlczoiLCI6Y2hlZXNlOiIsIjptZWF0X29uX2JvbmU6IiwiOnBvdWx0cnlfbGVnOiIsIjpiYWNvbjoiLCI6aGFtYnVyZ2VyOiIsIjpmcmllczoiLCI6cGl6emE6IiwiOmhvdGRvZzoiLCI6dGFjbzoiLCI6YnVycml0bzoiLCI6c3R1ZmZlZF9mbGF0YnJlYWQ6IiwiOmVnZzoiLCI6Y29va2luZzoiLCI6c2hhbGxvd19wYW5fb2ZfZm9vZDoiLCI6c3RldzoiLCI6c2FsYWQ6IiwiOnBvcGNvcm46IiwiOmJlbnRvOiIsIjpyaWNlX2NyYWNrZXI6IiwiOnJpY2VfYmFsbDoiLCI6cmljZToiLCI6Y3Vycnk6IiwiOnJhbWVuOiIsIjpzcGFnaGV0dGk6IiwiOnN3ZWV0X3BvdGF0bzoiLCI6b2RlbjoiLCI6c3VzaGk6IiwiOmZyaWVkX3NocmltcDoiLCI6ZmlzaF9jYWtlOiIsIjpkYW5nbzoiLCI6aWNlY3JlYW06IiwiOnNoYXZlZF9pY2U6IiwiOmljZV9jcmVhbToiLCI6ZG91Z2hudXQ6IiwiOmNvb2tpZToiLCI6YmlydGhkYXk6IiwiOmNha2U6IiwiOmNob2NvbGF0ZV9iYXI6IiwiOmNhbmR5OiIsIjpsb2xsaXBvcDoiLCI6Y3VzdGFyZDoiLCI6aG9uZXlfcG90OiIsIjpiYWJ5X2JvdHRsZToiLCI6bWlsazoiLCI6Y29mZmVlOiIsIjp0ZWE6IiwiOnNha2U6IiwiOmNoYW1wYWduZToiLCI6d2luZV9nbGFzczoiLCI6Y29ja3RhaWw6IiwiOnRyb3BpY2FsX2RyaW5rOiIsIjpiZWVyOiIsIjpiZWVyczoiLCI6Y2hhbXBhZ25lX2dsYXNzOiIsIjp0dW1ibGVyX2dsYXNzOiIsIjpmb3JrX2tuaWZlX3BsYXRlOiIsIjpmb3JrX2FuZF9rbmlmZToiLCI6c3Bvb246Il0sc2hvdzohMX0sYWN0aXZpdHk6e25hbWU6IkFjdGl2aXRpZXMiLGVtb2ppOiIxZjNjOCIsaGVhZGVyOiI6Zm9vdGJhbGw6Iixjb250ZW50OlsiOnNwYWNlX2ludmFkZXI6IiwiOmxldml0YXRlOiIsIjpmZW5jZXI6IiwiOmhvcnNlX3JhY2luZzoiLCI6aG9yc2VfcmFjaW5nX3RvbmUxOiIsIjpob3JzZV9yYWNpbmdfdG9uZTI6IiwiOmhvcnNlX3JhY2luZ190b25lMzoiLCI6aG9yc2VfcmFjaW5nX3RvbmU0OiIsIjpob3JzZV9yYWNpbmdfdG9uZTU6IiwiOnNraWVyOiIsIjpzbm93Ym9hcmRlcjoiLCI6Z29sZmVyOiIsIjpzdXJmZXI6IiwiOnN1cmZlcl90b25lMToiLCI6c3VyZmVyX3RvbmUyOiIsIjpzdXJmZXJfdG9uZTM6IiwiOnN1cmZlcl90b25lNDoiLCI6c3VyZmVyX3RvbmU1OiIsIjpyb3dib2F0OiIsIjpyb3dib2F0X3RvbmUxOiIsIjpyb3dib2F0X3RvbmUyOiIsIjpyb3dib2F0X3RvbmUzOiIsIjpyb3dib2F0X3RvbmU0OiIsIjpyb3dib2F0X3RvbmU1OiIsIjpzd2ltbWVyOiIsIjpzd2ltbWVyX3RvbmUxOiIsIjpzd2ltbWVyX3RvbmUyOiIsIjpzd2ltbWVyX3RvbmUzOiIsIjpzd2ltbWVyX3RvbmU0OiIsIjpzd2ltbWVyX3RvbmU1OiIsIjpiYXNrZXRiYWxsX3BsYXllcjoiLCI6YmFza2V0YmFsbF9wbGF5ZXJfdG9uZTE6IiwiOmJhc2tldGJhbGxfcGxheWVyX3RvbmUyOiIsIjpiYXNrZXRiYWxsX3BsYXllcl90b25lMzoiLCI6YmFza2V0YmFsbF9wbGF5ZXJfdG9uZTQ6IiwiOmJhc2tldGJhbGxfcGxheWVyX3RvbmU1OiIsIjpsaWZ0ZXI6IiwiOmxpZnRlcl90b25lMToiLCI6bGlmdGVyX3RvbmUyOiIsIjpsaWZ0ZXJfdG9uZTM6IiwiOmxpZnRlcl90b25lNDoiLCI6bGlmdGVyX3RvbmU1OiIsIjpiaWN5Y2xpc3Q6IiwiOmJpY3ljbGlzdF90b25lMToiLCI6YmljeWNsaXN0X3RvbmUyOiIsIjpiaWN5Y2xpc3RfdG9uZTM6IiwiOmJpY3ljbGlzdF90b25lNDoiLCI6YmljeWNsaXN0X3RvbmU1OiIsIjptb3VudGFpbl9iaWN5Y2xpc3Q6IiwiOm1vdW50YWluX2JpY3ljbGlzdF90b25lMToiLCI6bW91bnRhaW5fYmljeWNsaXN0X3RvbmUyOiIsIjptb3VudGFpbl9iaWN5Y2xpc3RfdG9uZTM6IiwiOm1vdW50YWluX2JpY3ljbGlzdF90b25lNDoiLCI6bW91bnRhaW5fYmljeWNsaXN0X3RvbmU1OiIsIjpjYXJ0d2hlZWw6IiwiOmNhcnR3aGVlbF90b25lMToiLCI6Y2FydHdoZWVsX3RvbmUyOiIsIjpjYXJ0d2hlZWxfdG9uZTM6IiwiOmNhcnR3aGVlbF90b25lNDoiLCI6Y2FydHdoZWVsX3RvbmU1OiIsIjp3cmVzdGxlcnM6IiwiOndyZXN0bGVyc190b25lMToiLCI6d3Jlc3RsZXJzX3RvbmUyOiIsIjp3cmVzdGxlcnNfdG9uZTM6IiwiOndyZXN0bGVyc190b25lNDoiLCI6d3Jlc3RsZXJzX3RvbmU1OiIsIjp3YXRlcl9wb2xvOiIsIjp3YXRlcl9wb2xvX3RvbmUxOiIsIjp3YXRlcl9wb2xvX3RvbmUyOiIsIjp3YXRlcl9wb2xvX3RvbmUzOiIsIjp3YXRlcl9wb2xvX3RvbmU0OiIsIjp3YXRlcl9wb2xvX3RvbmU1OiIsIjpoYW5kYmFsbDoiLCI6aGFuZGJhbGxfdG9uZTE6IiwiOmhhbmRiYWxsX3RvbmUyOiIsIjpoYW5kYmFsbF90b25lMzoiLCI6aGFuZGJhbGxfdG9uZTQ6IiwiOmhhbmRiYWxsX3RvbmU1OiIsIjpqdWdnbGluZzoiLCI6anVnZ2xpbmdfdG9uZTE6IiwiOmp1Z2dsaW5nX3RvbmUyOiIsIjpqdWdnbGluZ190b25lMzoiLCI6anVnZ2xpbmdfdG9uZTQ6IiwiOmp1Z2dsaW5nX3RvbmU1OiIsIjpjaXJjdXNfdGVudDoiLCI6cGVyZm9ybWluZ19hcnRzOiIsIjphcnQ6IiwiOnNsb3RfbWFjaGluZToiLCI6YmF0aDoiLCI6YmF0aF90b25lMToiLCI6YmF0aF90b25lMjoiLCI6YmF0aF90b25lMzoiLCI6YmF0aF90b25lNDoiLCI6YmF0aF90b25lNToiLCI6cmVtaW5kZXJfcmliYm9uOiIsIjp0aWNrZXRzOiIsIjp0aWNrZXQ6IiwiOm1pbGl0YXJ5X21lZGFsOiIsIjp0cm9waHk6IiwiOm1lZGFsOiIsIjpmaXJzdF9wbGFjZToiLCI6c2Vjb25kX3BsYWNlOiIsIjp0aGlyZF9wbGFjZToiLCI6c29jY2VyOiIsIjpiYXNlYmFsbDoiLCI6YmFza2V0YmFsbDoiLCI6dm9sbGV5YmFsbDoiLCI6Zm9vdGJhbGw6IiwiOnJ1Z2J5X2Zvb3RiYWxsOiIsIjp0ZW5uaXM6IiwiOjhiYWxsOiIsIjpib3dsaW5nOiIsIjpjcmlja2V0OiIsIjpmaWVsZF9ob2NrZXk6IiwiOmhvY2tleToiLCI6cGluZ19wb25nOiIsIjpiYWRtaW50b246IiwiOmJveGluZ19nbG92ZToiLCI6bWFydGlhbF9hcnRzX3VuaWZvcm06IiwiOmdvYWw6IiwiOmRhcnQ6IiwiOmdvbGY6IiwiOmljZV9za2F0ZToiLCI6ZmlzaGluZ19wb2xlX2FuZF9maXNoOiIsIjpydW5uaW5nX3NoaXJ0X3dpdGhfc2FzaDoiLCI6c2tpOiIsIjp2aWRlb19nYW1lOiIsIjpnYW1lX2RpZToiLCI6bXVzaWNhbF9zY29yZToiLCI6bWljcm9waG9uZToiLCI6aGVhZHBob25lczoiLCI6c2F4b3Bob25lOiIsIjpndWl0YXI6IiwiOm11c2ljYWxfa2V5Ym9hcmQ6IiwiOnRydW1wZXQ6IiwiOnZpb2xpbjoiLCI6ZHJ1bToiLCI6Y2xhcHBlcjoiLCI6Ym93X2FuZF9hcnJvdzoiXSxzaG93OiExfSx0cmF2ZWw6e25hbWU6IlRyYXZlbCAmIFBsYWNlcyIsZW1vamk6IjFmNjk3IixoZWFkZXI6IjpyZWRfY2FyOiIsY29udGVudDpbIjpyYWNlX2NhcjoiLCI6bW90b3JjeWNsZToiLCI6amFwYW46IiwiOm1vdW50YWluX3Nub3c6IiwiOm1vdW50YWluOiIsIjp2b2xjYW5vOiIsIjptb3VudF9mdWppOiIsIjpjYW1waW5nOiIsIjpiZWFjaDoiLCI6ZGVzZXJ0OiIsIjppc2xhbmQ6IiwiOnBhcms6IiwiOnN0YWRpdW06IiwiOmNsYXNzaWNhbF9idWlsZGluZzoiLCI6Y29uc3RydWN0aW9uX3NpdGU6IiwiOmhvbWVzOiIsIjpjaXR5c2NhcGU6IiwiOmhvdXNlX2FiYW5kb25lZDoiLCI6aG91c2U6IiwiOmhvdXNlX3dpdGhfZ2FyZGVuOiIsIjpvZmZpY2U6IiwiOnBvc3Rfb2ZmaWNlOiIsIjpldXJvcGVhbl9wb3N0X29mZmljZToiLCI6aG9zcGl0YWw6IiwiOmJhbms6IiwiOmhvdGVsOiIsIjpsb3ZlX2hvdGVsOiIsIjpjb252ZW5pZW5jZV9zdG9yZToiLCI6c2Nob29sOiIsIjpkZXBhcnRtZW50X3N0b3JlOiIsIjpmYWN0b3J5OiIsIjpqYXBhbmVzZV9jYXN0bGU6IiwiOmV1cm9wZWFuX2Nhc3RsZToiLCI6d2VkZGluZzoiLCI6dG9reW9fdG93ZXI6IiwiOnN0YXR1ZV9vZl9saWJlcnR5OiIsIjpjaHVyY2g6IiwiOm1vc3F1ZToiLCI6c3luYWdvZ3VlOiIsIjpzaGludG9fc2hyaW5lOiIsIjprYWFiYToiLCI6Zm91bnRhaW46IiwiOnRlbnQ6IiwiOmZvZ2d5OiIsIjpuaWdodF93aXRoX3N0YXJzOiIsIjpzdW5yaXNlX292ZXJfbW91bnRhaW5zOiIsIjpzdW5yaXNlOiIsIjpjaXR5X2R1c2s6IiwiOmNpdHlfc3Vuc2V0OiIsIjpicmlkZ2VfYXRfbmlnaHQ6IiwiOm1pbGt5X3dheToiLCI6Y2Fyb3VzZWxfaG9yc2U6IiwiOmZlcnJpc193aGVlbDoiLCI6cm9sbGVyX2NvYXN0ZXI6IiwiOnN0ZWFtX2xvY29tb3RpdmU6IiwiOnJhaWx3YXlfY2FyOiIsIjpidWxsZXR0cmFpbl9zaWRlOiIsIjpidWxsZXR0cmFpbl9mcm9udDoiLCI6dHJhaW4yOiIsIjptZXRybzoiLCI6bGlnaHRfcmFpbDoiLCI6c3RhdGlvbjoiLCI6dHJhbToiLCI6bW9ub3JhaWw6IiwiOm1vdW50YWluX3JhaWx3YXk6IiwiOnRyYWluOiIsIjpidXM6IiwiOm9uY29taW5nX2J1czoiLCI6dHJvbGxleWJ1czoiLCI6bWluaWJ1czoiLCI6YW1idWxhbmNlOiIsIjpmaXJlX2VuZ2luZToiLCI6cG9saWNlX2NhcjoiLCI6b25jb21pbmdfcG9saWNlX2NhcjoiLCI6dGF4aToiLCI6b25jb21pbmdfdGF4aToiLCI6cmVkX2NhcjoiLCI6b25jb21pbmdfYXV0b21vYmlsZToiLCI6Ymx1ZV9jYXI6IiwiOnRydWNrOiIsIjphcnRpY3VsYXRlZF9sb3JyeToiLCI6dHJhY3RvcjoiLCI6YmlrZToiLCI6c2Nvb3RlcjoiLCI6bW90b3Jfc2Nvb3RlcjoiLCI6YnVzc3RvcDoiLCI6bW90b3J3YXk6IiwiOnJhaWx3YXlfdHJhY2s6IiwiOmZ1ZWxwdW1wOiIsIjpyb3RhdGluZ19saWdodDoiLCI6dHJhZmZpY19saWdodDoiLCI6dmVydGljYWxfdHJhZmZpY19saWdodDoiLCI6Y29uc3RydWN0aW9uOiIsIjphbmNob3I6IiwiOnNhaWxib2F0OiIsIjpjYW5vZToiLCI6c3BlZWRib2F0OiIsIjpjcnVpc2Vfc2hpcDoiLCI6ZmVycnk6IiwiOm1vdG9yYm9hdDoiLCI6c2hpcDoiLCI6YWlycGxhbmU6IiwiOmFpcnBsYW5lX3NtYWxsOiIsIjphaXJwbGFuZV9kZXBhcnR1cmU6IiwiOmFpcnBsYW5lX2Fycml2aW5nOiIsIjpzZWF0OiIsIjpoZWxpY29wdGVyOiIsIjpzdXNwZW5zaW9uX3JhaWx3YXk6IiwiOm1vdW50YWluX2NhYmxld2F5OiIsIjphZXJpYWxfdHJhbXdheToiLCI6cm9ja2V0OiIsIjpzYXRlbGxpdGVfb3JiaXRhbDoiLCI6c3RhcnM6IiwiOnJhaW5ib3c6IiwiOmZpcmV3b3JrczoiLCI6c3BhcmtsZXI6IiwiOnJpY2Vfc2NlbmU6IiwiOmNoZWNrZXJlZF9mbGFnOiJdLHNob3c6ITF9LG9iamVjdHM6e25hbWU6Ik9iamVjdHMiLGVtb2ppOiIxZjRhMSIsaGVhZGVyOiI6YnVsYjoiLGNvbnRlbnQ6WyI6c2t1bGxfY3Jvc3Nib25lczoiLCI6bG92ZV9sZXR0ZXI6IiwiOmJvbWI6IiwiOmhvbGU6IiwiOnNob3BwaW5nX2JhZ3M6IiwiOnByYXllcl9iZWFkczoiLCI6Z2VtOiIsIjprbmlmZToiLCI6YW1waG9yYToiLCI6bWFwOiIsIjpiYXJiZXI6IiwiOmZyYW1lX3Bob3RvOiIsIjpiZWxsaG9wOiIsIjpkb29yOiIsIjpzbGVlcGluZ19hY2NvbW1vZGF0aW9uOiIsIjpiZWQ6IiwiOmNvdWNoOiIsIjp0b2lsZXQ6IiwiOnNob3dlcjoiLCI6YmF0aHR1YjoiLCI6aG91cmdsYXNzOiIsIjpob3VyZ2xhc3NfZmxvd2luZ19zYW5kOiIsIjp3YXRjaDoiLCI6YWxhcm1fY2xvY2s6IiwiOnN0b3B3YXRjaDoiLCI6dGltZXI6IiwiOmNsb2NrOiIsIjp0aGVybW9tZXRlcjoiLCI6YmVhY2hfdW1icmVsbGE6IiwiOmJhbGxvb246IiwiOnRhZGE6IiwiOmNvbmZldHRpX2JhbGw6IiwiOmRvbGxzOiIsIjpmbGFnczoiLCI6d2luZF9jaGltZToiLCI6cmliYm9uOiIsIjpnaWZ0OiIsIjpqb3lzdGljazoiLCI6cG9zdGFsX2hvcm46IiwiOm1pY3JvcGhvbmUyOiIsIjpsZXZlbF9zbGlkZXI6IiwiOmNvbnRyb2xfa25vYnM6IiwiOnJhZGlvOiIsIjppcGhvbmU6IiwiOmNhbGxpbmc6IiwiOnRlbGVwaG9uZToiLCI6dGVsZXBob25lX3JlY2VpdmVyOiIsIjpwYWdlcjoiLCI6ZmF4OiIsIjpiYXR0ZXJ5OiIsIjplbGVjdHJpY19wbHVnOiIsIjpjb21wdXRlcjoiLCI6ZGVza3RvcDoiLCI6cHJpbnRlcjoiLCI6a2V5Ym9hcmQ6IiwiOm1vdXNlX3RocmVlX2J1dHRvbjoiLCI6dHJhY2tiYWxsOiIsIjptaW5pZGlzYzoiLCI6ZmxvcHB5X2Rpc2s6IiwiOmNkOiIsIjpkdmQ6IiwiOm1vdmllX2NhbWVyYToiLCI6ZmlsbV9mcmFtZXM6IiwiOnByb2plY3RvcjoiLCI6dHY6IiwiOmNhbWVyYToiLCI6Y2FtZXJhX3dpdGhfZmxhc2g6IiwiOnZpZGVvX2NhbWVyYToiLCI6dmhzOiIsIjptYWc6IiwiOm1hZ19yaWdodDoiLCI6bWljcm9zY29wZToiLCI6dGVsZXNjb3BlOiIsIjpzYXRlbGxpdGU6IiwiOmNhbmRsZToiLCI6YnVsYjoiLCI6Zmxhc2hsaWdodDoiLCI6aXpha2F5YV9sYW50ZXJuOiIsIjpub3RlYm9va193aXRoX2RlY29yYXRpdmVfY292ZXI6IiwiOmNsb3NlZF9ib29rOiIsIjpib29rOiIsIjpncmVlbl9ib29rOiIsIjpibHVlX2Jvb2s6IiwiOm9yYW5nZV9ib29rOiIsIjpib29rczoiLCI6bm90ZWJvb2s6IiwiOmxlZGdlcjoiLCI6cGFnZV93aXRoX2N1cmw6IiwiOnNjcm9sbDoiLCI6cGFnZV9mYWNpbmdfdXA6IiwiOm5ld3NwYXBlcjoiLCI6bmV3c3BhcGVyMjoiLCI6Ym9va21hcmtfdGFiczoiLCI6Ym9va21hcms6IiwiOmxhYmVsOiIsIjptb25leWJhZzoiLCI6eWVuOiIsIjpkb2xsYXI6IiwiOmV1cm86IiwiOnBvdW5kOiIsIjptb25leV93aXRoX3dpbmdzOiIsIjpjcmVkaXRfY2FyZDoiLCI6ZW52ZWxvcGU6IiwiOmUtbWFpbDoiLCI6aW5jb21pbmdfZW52ZWxvcGU6IiwiOmVudmVsb3BlX3dpdGhfYXJyb3c6IiwiOm91dGJveF90cmF5OiIsIjppbmJveF90cmF5OiIsIjpwYWNrYWdlOiIsIjptYWlsYm94OiIsIjptYWlsYm94X2Nsb3NlZDoiLCI6bWFpbGJveF93aXRoX21haWw6IiwiOm1haWxib3hfd2l0aF9ub19tYWlsOiIsIjpwb3N0Ym94OiIsIjpiYWxsb3RfYm94OiIsIjpwZW5jaWwyOiIsIjpibGFja19uaWI6IiwiOnBlbl9mb3VudGFpbjoiLCI6cGVuX2JhbGxwb2ludDoiLCI6cGFpbnRicnVzaDoiLCI6Y3JheW9uOiIsIjpwZW5jaWw6IiwiOmZpbGVfZm9sZGVyOiIsIjpvcGVuX2ZpbGVfZm9sZGVyOiIsIjpkaXZpZGVyczoiLCI6ZGF0ZToiLCI6Y2FsZW5kYXI6IiwiOm5vdGVwYWRfc3BpcmFsOiIsIjpjYWxlbmRhcl9zcGlyYWw6IiwiOmNhcmRfaW5kZXg6IiwiOmNoYXJ0X3dpdGhfdXB3YXJkc190cmVuZDoiLCI6Y2hhcnRfd2l0aF9kb3dud2FyZHNfdHJlbmQ6IiwiOmJhcl9jaGFydDoiLCI6Y2xpcGJvYXJkOiIsIjpwdXNocGluOiIsIjpyb3VuZF9wdXNocGluOiIsIjpwYXBlcmNsaXA6IiwiOnBhcGVyY2xpcHM6IiwiOnN0cmFpZ2h0X3J1bGVyOiIsIjp0cmlhbmd1bGFyX3J1bGVyOiIsIjpzY2lzc29yczoiLCI6Y2FyZF9ib3g6IiwiOmZpbGVfY2FiaW5ldDoiLCI6d2FzdGViYXNrZXQ6IiwiOmxvY2s6IiwiOnVubG9jazoiLCI6bG9ja193aXRoX2lua19wZW46IiwiOmNsb3NlZF9sb2NrX3dpdGhfa2V5OiIsIjprZXk6IiwiOmtleTI6IiwiOmhhbW1lcjoiLCI6cGljazoiLCI6aGFtbWVyX3BpY2s6IiwiOnRvb2xzOiIsIjpkYWdnZXI6IiwiOmNyb3NzZWRfc3dvcmRzOiIsIjpndW46IiwiOnNoaWVsZDoiLCI6d3JlbmNoOiIsIjpudXRfYW5kX2JvbHQ6IiwiOmdlYXI6IiwiOmNvbXByZXNzaW9uOiIsIjphbGVtYmljOiIsIjpzY2FsZXM6IiwiOmxpbms6IiwiOmNoYWluczoiLCI6c3lyaW5nZToiLCI6cGlsbDoiLCI6c21va2luZzoiLCI6Y29mZmluOiIsIjp1cm46IiwiOm1veWFpOiIsIjpvaWw6IiwiOmNyeXN0YWxfYmFsbDoiLCI6c2hvcHBpbmdfY2FydDoiLCI6dHJpYW5ndWxhcl9mbGFnX29uX3Bvc3Q6IiwiOmNyb3NzZWRfZmxhZ3M6IiwiOmZsYWdfYmxhY2s6IiwiOmZsYWdfd2hpdGU6IiwiOnJhaW5ib3dfZmxhZzoiXSxzaG93OiExfSxzeW1ib2xzOntuYW1lOiJTeW1ib2xzIixlbW9qaToiMDAyMy0yMGUzIixoZWFkZXI6IjpoYXNoOiIsY29udGVudDpbIjoxMDA6IiwiOjEyMzQ6IiwiOmV5ZV9pbl9zcGVlY2hfYnViYmxlOiIsIjpjdXBpZDoiLCI6aGVhcnQ6IiwiOmhlYXJ0YmVhdDoiLCI6YnJva2VuX2hlYXJ0OiIsIjp0d29faGVhcnRzOiIsIjpzcGFya2xpbmdfaGVhcnQ6IiwiOmhlYXJ0cHVsc2U6IiwiOmJsdWVfaGVhcnQ6IiwiOmdyZWVuX2hlYXJ0OiIsIjp5ZWxsb3dfaGVhcnQ6IiwiOnB1cnBsZV9oZWFydDoiLCI6YmxhY2tfaGVhcnQ6IiwiOmdpZnRfaGVhcnQ6IiwiOnJldm9sdmluZ19oZWFydHM6IiwiOmhlYXJ0X2RlY29yYXRpb246IiwiOmhlYXJ0X2V4Y2xhbWF0aW9uOiIsIjphbmdlcjoiLCI6Ym9vbToiLCI6ZGl6enk6IiwiOnNwZWVjaF9iYWxsb29uOiIsIjpzcGVlY2hfbGVmdDoiLCI6YW5nZXJfcmlnaHQ6IiwiOnRob3VnaHRfYmFsbG9vbjoiLCI6d2hpdGVfZmxvd2VyOiIsIjpnbG9iZV93aXRoX21lcmlkaWFuczoiLCI6aG90c3ByaW5nczoiLCI6b2N0YWdvbmFsX3NpZ246IiwiOmNsb2NrMTI6IiwiOmNsb2NrMTIzMDoiLCI6Y2xvY2sxOiIsIjpjbG9jazEzMDoiLCI6Y2xvY2syOiIsIjpjbG9jazIzMDoiLCI6Y2xvY2szOiIsIjpjbG9jazMzMDoiLCI6Y2xvY2s0OiIsIjpjbG9jazQzMDoiLCI6Y2xvY2s1OiIsIjpjbG9jazUzMDoiLCI6Y2xvY2s2OiIsIjpjbG9jazYzMDoiLCI6Y2xvY2s3OiIsIjpjbG9jazczMDoiLCI6Y2xvY2s4OiIsIjpjbG9jazgzMDoiLCI6Y2xvY2s5OiIsIjpjbG9jazkzMDoiLCI6Y2xvY2sxMDoiLCI6Y2xvY2sxMDMwOiIsIjpjbG9jazExOiIsIjpjbG9jazExMzA6IiwiOmN5Y2xvbmU6IiwiOnNwYWRlczoiLCI6aGVhcnRzOiIsIjpkaWFtb25kczoiLCI6Y2x1YnM6IiwiOmJsYWNrX2pva2VyOiIsIjptYWhqb25nOiIsIjpmbG93ZXJfcGxheWluZ19jYXJkczoiLCI6bXV0ZToiLCI6c3BlYWtlcjoiLCI6c291bmQ6IiwiOmxvdWRfc291bmQ6IiwiOmxvdWRzcGVha2VyOiIsIjptZWdhOiIsIjpiZWxsOiIsIjpub19iZWxsOiIsIjptdXNpY2FsX25vdGU6IiwiOm5vdGVzOiIsIjpjaGFydDoiLCI6Y3VycmVuY3lfZXhjaGFuZ2U6IiwiOmhlYXZ5X2RvbGxhcl9zaWduOiIsIjphdG06IiwiOnB1dF9saXR0ZXJfaW5faXRzX3BsYWNlOiIsIjpwb3RhYmxlX3dhdGVyOiIsIjp3aGVlbGNoYWlyOiIsIjptZW5zOiIsIjp3b21lbnM6IiwiOnJlc3Ryb29tOiIsIjpiYWJ5X3N5bWJvbDoiLCI6d2M6IiwiOnBhc3Nwb3J0X2NvbnRyb2w6IiwiOmN1c3RvbXM6IiwiOmJhZ2dhZ2VfY2xhaW06IiwiOmxlZnRfbHVnZ2FnZToiLCI6d2FybmluZzoiLCI6Y2hpbGRyZW5fY3Jvc3Npbmc6IiwiOm5vX2VudHJ5OiIsIjpub19lbnRyeV9zaWduOiIsIjpub19iaWN5Y2xlczoiLCI6bm9fc21va2luZzoiLCI6ZG9fbm90X2xpdHRlcjoiLCI6bm9uLXBvdGFibGVfd2F0ZXI6IiwiOm5vX3BlZGVzdHJpYW5zOiIsIjpub19tb2JpbGVfcGhvbmVzOiIsIjp1bmRlcmFnZToiLCI6cmFkaW9hY3RpdmU6IiwiOmJpb2hhemFyZDoiLCI6YXJyb3dfdXA6IiwiOmFycm93X3VwcGVyX3JpZ2h0OiIsIjphcnJvd19yaWdodDoiLCI6YXJyb3dfbG93ZXJfcmlnaHQ6IiwiOmFycm93X2Rvd246IiwiOmFycm93X2xvd2VyX2xlZnQ6IiwiOmFycm93X2xlZnQ6IiwiOmFycm93X3VwcGVyX2xlZnQ6IiwiOmFycm93X3VwX2Rvd246IiwiOmxlZnRfcmlnaHRfYXJyb3c6IiwiOmxlZnR3YXJkc19hcnJvd193aXRoX2hvb2s6IiwiOmFycm93X3JpZ2h0X2hvb2s6IiwiOmFycm93X2hlYWRpbmdfdXA6IiwiOmFycm93X2hlYWRpbmdfZG93bjoiLCI6YXJyb3dzX2Nsb2Nrd2lzZToiLCI6YXJyb3dzX2NvdW50ZXJjbG9ja3dpc2U6IiwiOmJhY2s6IiwiOmVuZDoiLCI6b246IiwiOnNvb246IiwiOnRvcDoiLCI6cGxhY2Vfb2Zfd29yc2hpcDoiLCI6YXRvbToiLCI6b21fc3ltYm9sOiIsIjpzdGFyX29mX2RhdmlkOiIsIjp3aGVlbF9vZl9kaGFybWE6IiwiOnlpbl95YW5nOiIsIjpjcm9zczoiLCI6b3J0aG9kb3hfY3Jvc3M6IiwiOnN0YXJfYW5kX2NyZXNjZW50OiIsIjpwZWFjZToiLCI6bWVub3JhaDoiLCI6c2l4X3BvaW50ZWRfc3RhcjoiLCI6YXJpZXM6IiwiOnRhdXJ1czoiLCI6Z2VtaW5pOiIsIjpjYW5jZXI6IiwiOmxlbzoiLCI6dmlyZ286IiwiOmxpYnJhOiIsIjpzY29ycGl1czoiLCI6c2FnaXR0YXJpdXM6IiwiOmNhcHJpY29ybjoiLCI6YXF1YXJpdXM6IiwiOnBpc2NlczoiLCI6b3BoaXVjaHVzOiIsIjp0d2lzdGVkX3JpZ2h0d2FyZHNfYXJyb3dzOiIsIjpyZXBlYXQ6IiwiOnJlcGVhdF9vbmU6IiwiOmFycm93X2ZvcndhcmQ6IiwiOmZhc3RfZm9yd2FyZDoiLCI6dHJhY2tfbmV4dDoiLCI6cGxheV9wYXVzZToiLCI6YXJyb3dfYmFja3dhcmQ6IiwiOnJld2luZDoiLCI6dHJhY2tfcHJldmlvdXM6IiwiOmFycm93X3VwX3NtYWxsOiIsIjphcnJvd19kb3VibGVfdXA6IiwiOmFycm93X2Rvd25fc21hbGw6IiwiOmFycm93X2RvdWJsZV9kb3duOiIsIjpwYXVzZV9idXR0b246IiwiOnN0b3BfYnV0dG9uOiIsIjpyZWNvcmRfYnV0dG9uOiIsIjplamVjdDoiLCI6Y2luZW1hOiIsIjpsb3dfYnJpZ2h0bmVzczoiLCI6aGlnaF9icmlnaHRuZXNzOiIsIjpzaWduYWxfc3RyZW5ndGg6IiwiOnZpYnJhdGlvbl9tb2RlOiIsIjptb2JpbGVfcGhvbmVfb2ZmOiIsIjpyZWN5Y2xlOiIsIjpuYW1lX2JhZGdlOiIsIjpmbGV1ci1kZS1saXM6IiwiOmJlZ2lubmVyOiIsIjp0cmlkZW50OiIsIjpvOiIsIjp3aGl0ZV9jaGVja19tYXJrOiIsIjpiYWxsb3RfYm94X3dpdGhfY2hlY2s6IiwiOmhlYXZ5X2NoZWNrX21hcms6IiwiOmhlYXZ5X211bHRpcGxpY2F0aW9uX3g6IiwiOng6IiwiOm5lZ2F0aXZlX3NxdWFyZWRfY3Jvc3NfbWFyazoiLCI6aGVhdnlfcGx1c19zaWduOiIsIjpoZWF2eV9taW51c19zaWduOiIsIjpoZWF2eV9kaXZpc2lvbl9zaWduOiIsIjpjdXJseV9sb29wOiIsIjpsb29wOiIsIjpwYXJ0X2FsdGVybmF0aW9uX21hcms6IiwiOmVpZ2h0X3Nwb2tlZF9hc3RlcmlzazoiLCI6ZWlnaHRfcG9pbnRlZF9ibGFja19zdGFyOiIsIjpzcGFya2xlOiIsIjpiYW5nYmFuZzoiLCI6aW50ZXJyb2Jhbmc6IiwiOnF1ZXN0aW9uOiIsIjpncmV5X3F1ZXN0aW9uOiIsIjpncmV5X2V4Y2xhbWF0aW9uOiIsIjpleGNsYW1hdGlvbjoiLCI6d2F2eV9kYXNoOiIsIjpjb3B5cmlnaHQ6IiwiOnJlZ2lzdGVyZWQ6IiwiOnRtOiIsIjpoYXNoOiIsIjphc3RlcmlzazoiLCI6emVybzoiLCI6b25lOiIsIjp0d286IiwiOnRocmVlOiIsIjpmb3VyOiIsIjpmaXZlOiIsIjpzaXg6IiwiOnNldmVuOiIsIjplaWdodDoiLCI6bmluZToiLCI6a2V5Y2FwX3RlbjoiLCI6Y2FwaXRhbF9hYmNkOiIsIjphYmNkOiIsIjpzeW1ib2xzOiIsIjphYmM6IiwiOmE6IiwiOmFiOiIsIjpiOiIsIjpjbDoiLCI6Y29vbDoiLCI6ZnJlZToiLCI6aW5mb3JtYXRpb25fc291cmNlOiIsIjppZDoiLCI6bToiLCI6bmV3OiIsIjpuZzoiLCI6bzI6IiwiOm9rOiIsIjpwYXJraW5nOiIsIjpzb3M6IiwiOnVwOiIsIjp2czoiLCI6a29rbzoiLCI6c2E6IiwiOnU2NzA4OiIsIjp1NjcwOToiLCI6dTYzMDc6IiwiOmlkZW9ncmFwaF9hZHZhbnRhZ2U6IiwiOnU1MjcyOiIsIjp1NzEyMToiLCI6dTc5ODE6IiwiOmFjY2VwdDoiLCI6dTc1MzM6IiwiOnU1NDA4OiIsIjp1N2E3YToiLCI6Y29uZ3JhdHVsYXRpb25zOiIsIjpzZWNyZXQ6IiwiOnU1NWI2OiIsIjp1NmU4MDoiLCI6YmxhY2tfc21hbGxfc3F1YXJlOiIsIjp3aGl0ZV9zbWFsbF9zcXVhcmU6IiwiOndoaXRlX21lZGl1bV9zcXVhcmU6IiwiOmJsYWNrX21lZGl1bV9zcXVhcmU6IiwiOndoaXRlX21lZGl1bV9zbWFsbF9zcXVhcmU6IiwiOmJsYWNrX21lZGl1bV9zbWFsbF9zcXVhcmU6IiwiOmJsYWNrX2xhcmdlX3NxdWFyZToiLCI6d2hpdGVfbGFyZ2Vfc3F1YXJlOiIsIjpsYXJnZV9vcmFuZ2VfZGlhbW9uZDoiLCI6bGFyZ2VfYmx1ZV9kaWFtb25kOiIsIjpzbWFsbF9vcmFuZ2VfZGlhbW9uZDoiLCI6c21hbGxfYmx1ZV9kaWFtb25kOiIsIjpzbWFsbF9yZWRfdHJpYW5nbGU6IiwiOnNtYWxsX3JlZF90cmlhbmdsZV9kb3duOiIsIjpkaWFtb25kX3NoYXBlX3dpdGhfYV9kb3RfaW5zaWRlOiIsIjpyYWRpb19idXR0b246IiwiOmJsYWNrX3NxdWFyZV9idXR0b246IiwiOndoaXRlX3NxdWFyZV9idXR0b246IiwiOndoaXRlX2NpcmNsZToiLCI6YmxhY2tfY2lyY2xlOiIsIjpyZWRfY2lyY2xlOiIsIjpibHVlX2NpcmNsZToiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX3o6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl95OiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfeDoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX3c6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl92OiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfdToiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX3Q6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9zOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfcjoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX3E6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9wOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfbzoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX246IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9tOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfbDoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX2s6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9qOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfaToiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX2g6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9nOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfZjoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX2U6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9kOiIsIjpyZWdpb25hbF9pbmRpY2F0b3JfYzoiLCI6cmVnaW9uYWxfaW5kaWNhdG9yX2I6IiwiOnJlZ2lvbmFsX2luZGljYXRvcl9hOiJdLHNob3c6ITF9LGZsYWdzOntuYW1lOiJGbGFncyIsZW1vamk6IjFmM2Y0IixoZWFkZXI6IjpmbGFnX2JsYWNrOiIsY29udGVudDpbIjpmbGFnX2FjOiIsIjpmbGFnX2FkOiIsIjpmbGFnX2FlOiIsIjpmbGFnX2FmOiIsIjpmbGFnX2FnOiIsIjpmbGFnX2FpOiIsIjpmbGFnX2FsOiIsIjpmbGFnX2FtOiIsIjpmbGFnX2FvOiIsIjpmbGFnX2FxOiIsIjpmbGFnX2FyOiIsIjpmbGFnX2FzOiIsIjpmbGFnX2F0OiIsIjpmbGFnX2F1OiIsIjpmbGFnX2F3OiIsIjpmbGFnX2F4OiIsIjpmbGFnX2F6OiIsIjpmbGFnX2JhOiIsIjpmbGFnX2JiOiIsIjpmbGFnX2JkOiIsIjpmbGFnX2JlOiIsIjpmbGFnX2JmOiIsIjpmbGFnX2JnOiIsIjpmbGFnX2JoOiIsIjpmbGFnX2JpOiIsIjpmbGFnX2JqOiIsIjpmbGFnX2JsOiIsIjpmbGFnX2JtOiIsIjpmbGFnX2JuOiIsIjpmbGFnX2JvOiIsIjpmbGFnX2JxOiIsIjpmbGFnX2JyOiIsIjpmbGFnX2JzOiIsIjpmbGFnX2J0OiIsIjpmbGFnX2J2OiIsIjpmbGFnX2J3OiIsIjpmbGFnX2J5OiIsIjpmbGFnX2J6OiIsIjpmbGFnX2NhOiIsIjpmbGFnX2NjOiIsIjpmbGFnX2NkOiIsIjpmbGFnX2NmOiIsIjpmbGFnX2NnOiIsIjpmbGFnX2NoOiIsIjpmbGFnX2NpOiIsIjpmbGFnX2NrOiIsIjpmbGFnX2NsOiIsIjpmbGFnX2NtOiIsIjpmbGFnX2NuOiIsIjpmbGFnX2NvOiIsIjpmbGFnX2NwOiIsIjpmbGFnX2NyOiIsIjpmbGFnX2N1OiIsIjpmbGFnX2N2OiIsIjpmbGFnX2N3OiIsIjpmbGFnX2N4OiIsIjpmbGFnX2N5OiIsIjpmbGFnX2N6OiIsIjpmbGFnX2RlOiIsIjpmbGFnX2RnOiIsIjpmbGFnX2RqOiIsIjpmbGFnX2RrOiIsIjpmbGFnX2RtOiIsIjpmbGFnX2RvOiIsIjpmbGFnX2R6OiIsIjpmbGFnX2VhOiIsIjpmbGFnX2VjOiIsIjpmbGFnX2VlOiIsIjpmbGFnX2VnOiIsIjpmbGFnX2VoOiIsIjpmbGFnX2VyOiIsIjpmbGFnX2VzOiIsIjpmbGFnX2V0OiIsIjpmbGFnX2V1OiIsIjpmbGFnX2ZpOiIsIjpmbGFnX2ZqOiIsIjpmbGFnX2ZrOiIsIjpmbGFnX2ZtOiIsIjpmbGFnX2ZvOiIsIjpmbGFnX2ZyOiIsIjpmbGFnX2dhOiIsIjpmbGFnX2diOiIsIjpmbGFnX2dkOiIsIjpmbGFnX2dlOiIsIjpmbGFnX2dmOiIsIjpmbGFnX2dnOiIsIjpmbGFnX2doOiIsIjpmbGFnX2dpOiIsIjpmbGFnX2dsOiIsIjpmbGFnX2dtOiIsIjpmbGFnX2duOiIsIjpmbGFnX2dwOiIsIjpmbGFnX2dxOiIsIjpmbGFnX2dyOiIsIjpmbGFnX2dzOiIsIjpmbGFnX2d0OiIsIjpmbGFnX2d1OiIsIjpmbGFnX2d3OiIsIjpmbGFnX2d5OiIsIjpmbGFnX2hrOiIsIjpmbGFnX2htOiIsIjpmbGFnX2huOiIsIjpmbGFnX2hyOiIsIjpmbGFnX2h0OiIsIjpmbGFnX2h1OiIsIjpmbGFnX2ljOiIsIjpmbGFnX2lkOiIsIjpmbGFnX2llOiIsIjpmbGFnX2lsOiIsIjpmbGFnX2ltOiIsIjpmbGFnX2luOiIsIjpmbGFnX2lvOiIsIjpmbGFnX2lxOiIsIjpmbGFnX2lyOiIsIjpmbGFnX2lzOiIsIjpmbGFnX2l0OiIsIjpmbGFnX2plOiIsIjpmbGFnX2ptOiIsIjpmbGFnX2pvOiIsIjpmbGFnX2pwOiIsIjpmbGFnX2tlOiIsIjpmbGFnX2tnOiIsIjpmbGFnX2toOiIsIjpmbGFnX2tpOiIsIjpmbGFnX2ttOiIsIjpmbGFnX2tuOiIsIjpmbGFnX2twOiIsIjpmbGFnX2tyOiIsIjpmbGFnX2t3OiIsIjpmbGFnX2t5OiIsIjpmbGFnX2t6OiIsIjpmbGFnX2xhOiIsIjpmbGFnX2xiOiIsIjpmbGFnX2xjOiIsIjpmbGFnX2xpOiIsIjpmbGFnX2xrOiIsIjpmbGFnX2xyOiIsIjpmbGFnX2xzOiIsIjpmbGFnX2x0OiIsIjpmbGFnX2x1OiIsIjpmbGFnX2x2OiIsIjpmbGFnX2x5OiIsIjpmbGFnX21hOiIsIjpmbGFnX21jOiIsIjpmbGFnX21kOiIsIjpmbGFnX21lOiIsIjpmbGFnX21mOiIsIjpmbGFnX21nOiIsIjpmbGFnX21oOiIsIjpmbGFnX21rOiIsIjpmbGFnX21sOiIsIjpmbGFnX21tOiIsIjpmbGFnX21uOiIsIjpmbGFnX21vOiIsIjpmbGFnX21wOiIsIjpmbGFnX21xOiIsIjpmbGFnX21yOiIsIjpmbGFnX21zOiIsIjpmbGFnX210OiIsIjpmbGFnX211OiIsIjpmbGFnX212OiIsIjpmbGFnX213OiIsIjpmbGFnX214OiIsIjpmbGFnX215OiIsIjpmbGFnX216OiIsIjpmbGFnX25hOiIsIjpmbGFnX25jOiIsIjpmbGFnX25lOiIsIjpmbGFnX25mOiIsIjpmbGFnX25nOiIsIjpmbGFnX25pOiIsIjpmbGFnX25sOiIsIjpmbGFnX25vOiIsIjpmbGFnX25wOiIsIjpmbGFnX25yOiIsIjpmbGFnX251OiIsIjpmbGFnX256OiIsIjpmbGFnX29tOiIsIjpmbGFnX3BhOiIsIjpmbGFnX3BlOiIsIjpmbGFnX3BmOiIsIjpmbGFnX3BnOiIsIjpmbGFnX3BoOiIsIjpmbGFnX3BrOiIsIjpmbGFnX3BsOiIsIjpmbGFnX3BtOiIsIjpmbGFnX3BuOiIsIjpmbGFnX3ByOiIsIjpmbGFnX3BzOiIsIjpmbGFnX3B0OiIsIjpmbGFnX3B3OiIsIjpmbGFnX3B5OiIsIjpmbGFnX3FhOiIsIjpmbGFnX3JlOiIsIjpmbGFnX3JvOiIsIjpmbGFnX3JzOiIsIjpmbGFnX3J1OiIsIjpmbGFnX3J3OiIsIjpmbGFnX3NhOiIsIjpmbGFnX3NiOiIsIjpmbGFnX3NjOiIsIjpmbGFnX3NkOiIsIjpmbGFnX3NlOiIsIjpmbGFnX3NnOiIsIjpmbGFnX3NoOiIsIjpmbGFnX3NpOiIsIjpmbGFnX3NqOiIsIjpmbGFnX3NrOiIsIjpmbGFnX3NsOiIsIjpmbGFnX3NtOiIsIjpmbGFnX3NuOiIsIjpmbGFnX3NvOiIsIjpmbGFnX3NyOiIsIjpmbGFnX3NzOiIsIjpmbGFnX3N0OiIsIjpmbGFnX3N2OiIsIjpmbGFnX3N4OiIsIjpmbGFnX3N5OiIsIjpmbGFnX3N6OiIsIjpmbGFnX3RhOiIsIjpmbGFnX3RjOiIsIjpmbGFnX3RkOiIsIjpmbGFnX3RmOiIsIjpmbGFnX3RnOiIsIjpmbGFnX3RoOiIsIjpmbGFnX3RqOiIsIjpmbGFnX3RrOiIsIjpmbGFnX3RsOiIsIjpmbGFnX3RtOiIsIjpmbGFnX3RuOiIsIjpmbGFnX3RvOiIsIjpmbGFnX3RyOiIsIjpmbGFnX3R0OiIsIjpmbGFnX3R2OiIsIjpmbGFnX3R3OiIsIjpmbGFnX3R6OiIsIjpmbGFnX3VhOiIsIjpmbGFnX3VnOiIsIjpmbGFnX3VtOiIsIjpmbGFnX3VzOiIsIjpmbGFnX3V5OiIsIjpmbGFnX3V6OiIsIjpmbGFnX3ZhOiIsIjpmbGFnX3ZjOiIsIjpmbGFnX3ZlOiIsIjpmbGFnX3ZnOiIsIjpmbGFnX3ZpOiIsIjpmbGFnX3ZuOiIsIjpmbGFnX3Z1OiIsIjpmbGFnX3dmOiIsIjpmbGFnX3dzOiIsIjpmbGFnX3hrOiIsIjpmbGFnX3llOiIsIjpmbGFnX3l0OiIsIjpmbGFnX3phOiIsIjpmbGFnX3ptOiIsIjpmbGFnX3p3OiJdLHNob3c6ITF9fSxzZWFyY2g6bnVsbCxpc1NlYXJjaDohMSxzZWFyY2hJbnB1dDoiIixhY3RpdmVDYXRlZ29yeToiIixjaGVja1RpbWVvdXQ6bnVsbCxzaG9ydG5hbWVzOm51bGwsY291bnRlcjowLGVtb2ppTGlzdDpbXSxmaWx0ZXJlZENhdGVnb3JpZXM6W10scHJldmlldzp7fSxwbGFjZWhvbGRlcjoiU2VhcmNoIEVtb2ppIn19LHByb3BzOntpc1Nob3c6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy4kbmV4dFRpY2soKGZ1bmN0aW9uKCl7ZS5pbmNsdWRlU2NyaXB0KCl9KSl9LHdhdGNoOntpc1Nob3c6ZnVuY3Rpb24oKXt0aGlzLmlzU2hvdyYmIXRoaXMubG9hZGVkJiZ0aGlzLmNoZWNrU2NyaXB0TG9hZGVkKCksdGhpcy5pc1Nob3cmJnRoaXMubG9hZGVkJiZ0aGlzLiRyZWZzLmVtb2ppcGlja2VyLmZvY3VzKCl9fSxtZXRob2RzOntpbmNsdWRlU2NyaXB0OmZ1bmN0aW9uKCl7aWYodm9pZCAwPT09d2luZG93LmVtb2ppb25lKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtlLnNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L2Vtb2ppb25lLzIuMi43L2xpYi9qcy9lbW9qaW9uZS5taW4uanMiLGUudHlwZT0idGV4dC9qYXZhc2NyaXB0IixlLmFzeW5jPSEwLGUuZGVmZXI9ITAsZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKS5pdGVtKDApLmFwcGVuZENoaWxkKGUpfX0sY2hlY2tTY3JpcHRMb2FkZWQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKGNsZWFyVGltZW91dCh0aGlzLmNoZWNrU2NyaXB0TG9hZGVkKSx2b2lkIDA9PT13aW5kb3cuZW1vamlvbmUpcmV0dXJuIHRoaXMuY291bnRlcisrLDIwPT09dGhpcy5jb3VudGVyPyhjbGVhclRpbWVvdXQodGhpcy5jaGVja1RpbWVvdXQpLHZvaWQodGhpcy5jb3VudGVyPTApKTp2b2lkKHRoaXMuY2hlY2tUaW1lb3V0PXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5jaGVja1NjcmlwdExvYWRlZCgpfSksMjApKTtjbGVhclRpbWVvdXQodGhpcy5jaGVja1RpbWVvdXQpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5jb3VudGVyPTAsZS5lbW9qaW9uZT13aW5kb3cuZW1vamlvbmUsZS5lbW9qaW9uZS5hc2NpaT0hMCxlLnNob3J0bmFtZXM9ZS5lbW9qaW9uZS5zaG9ydG5hbWVzLnJlcGxhY2UoL1xcXCsvZywiKyIpLnNwbGl0KCJ8IiksT2JqZWN0LmtleXMoZS5jYXRlZ29yaWVzKS5mb3JFYWNoKChmdW5jdGlvbih0KXt2YXIgbj1lLmNhdGVnb3JpZXNbdF0saT17fTtpLmNhdGVnb3J5X25hbWU9dCxpLmVtb2ppPW4uZW1vamksaS5uYW1lPW4ubmFtZSxpLmhlYWRlcj1lLmVtb2ppb25lLnNob3J0bmFtZVRvSW1hZ2Uobi5oZWFkZXIpLGkuZW1vamlzPVtdLGkuc2hvdz0hMSxuLmNvbnRlbnQuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aS5lbW9qaXMucHVzaCh7dGl0bGU6ZX0pfSkpLGUuZmlsdGVyZWRDYXRlZ29yaWVzLnB1c2goaSl9KSksZS5maWx0ZXJlZENhdGVnb3JpZXNbMF0uc2hvdz0hMCxlLmFjdGl2ZUNhdGVnb3J5PWUuZmlsdGVyZWRDYXRlZ29yaWVzWzBdLGUubG9hZGVkPSEwLGUuJG5leHRUaWNrKChmdW5jdGlvbigpe2UuJHJlZnMuZW1vamlwaWNrZXIuZm9jdXMoKX0pKX0pKX0sb25LZXl1cDpmdW5jdGlvbigpe3ZhciBlPXRoaXMuc2VhcmNoSW5wdXQudG9Mb3dlckNhc2UoKSx0PVtdO2lmKCIiIT09ZSl7dGhpcy5pc1NlYXJjaD0hMCxlPWUudHJpbSgpLnRvTG93ZXJDYXNlKCksdGhpcy5hY3RpdmVDYXRlZ29yeT17Y2F0ZWdvcnlfbmFtZToic2VhcmNoIixuYW1lOiJTZWFyY2ggUmVzdWx0cyJ9O2Zvcih2YXIgbj0wO248dGhpcy5zaG9ydG5hbWVzLmxlbmd0aDtuKyspe3ZhciBpPXRoaXMuc2hvcnRuYW1lc1tuXTstMSE9PWkuaW5kZXhPZihlKSYmdC5wdXNoKHt0aXRsZTppfSl9dGhpcy5zZWFyY2g9dH1lbHNlIHRoaXMuc2VhcmNoPW51bGwsdGhpcy5pc1NlYXJjaD0hMSx0aGlzLmFjdGl2ZUNhdGVnb3J5PXRoaXMuZmlsdGVyZWRDYXRlZ29yaWVzWzBdO3RoaXMuJHJlZnMuc2Nyb2xsJiZ0aGlzLiRyZWZzLnNjcm9sbC4kc2Nyb2xsYmFyJiZ0aGlzLiRyZWZzLnNjcm9sbC4kc2Nyb2xsYmFyLnVwZGF0ZSgpfSxvbkdyb3VwQ2xpY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5maWx0ZXJlZENhdGVnb3JpZXMuaW5kZXhPZihlKSxuPXRoaXMuJHJlZnMuY2F0ZWdvcmllc1t0XTtpZihuKXt2YXIgaT1uLm9mZnNldFRvcCsxNTtlLmZpcnN0JiYoaT0wKSx0aGlzLiRyZWZzLnNjcm9sbC5zY3JvbGxUb3A9aX10aGlzLnNlYXJjaD1udWxsLHRoaXMuaXNTZWFyY2g9ITEsdGhpcy5zZWFyY2hJbnB1dD0iIix0aGlzLmZpbHRlcmVkQ2F0ZWdvcmllc1t0XS5zaG93PSEwLHRoaXMuYWN0aXZlQ2F0ZWdvcnk9dGhpcy5maWx0ZXJlZENhdGVnb3JpZXNbdF19LG9uQ2xpY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5lbW9qaW9uZS5zaG9ydG5hbWVUb1VuaWNvZGUoZS50YXJnZXQudGl0bGUpO3RoaXMuJGVtaXQoInNlbGVjdCIsdCl9LG9uTW91c2VlbnRlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzLmVtb2ppb25lLnNob3J0bmFtZVRvSW1hZ2UoZS50YXJnZXQudGl0bGUpLG49ZS50YXJnZXQudGl0bGUucmVwbGFjZSgvOisvZywiIik7dGhpcy5wcmV2aWV3PXt0aXRsZTpuLHNob3J0bmFtZTplLnRhcmdldC50aXRsZSxpbWc6dH19LG9uTW91c2VsZWF2ZTpmdW5jdGlvbigpe3RoaXMucGxhY2Vob2xkZXI9IlNlYXJjaCBFbW9qaSIsdGhpcy5wcmV2aWV3PXt9fSxvblNjcm9sbDpmdW5jdGlvbigpe3RoaXMud2FpdGluZ0ZvclBhaW50fHwodGhpcy53YWl0aW5nRm9yUGFpbnQ9ITAsd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSh0aGlzLm9uU2Nyb2xsUGFpbnQuYmluZCh0aGlzKSkpfSxvblNjcm9sbFBhaW50OmZ1bmN0aW9uKCl7dGhpcy53YWl0aW5nRm9yUGFpbnQ9ITE7Zm9yKHZhciBlPXRoaXMuJHJlZnMuc2Nyb2xsLnNjcm9sbFRvcCx0PXRoaXMuZmlsdGVyZWRDYXRlZ29yaWVzWzBdLG49MCxpPXRoaXMuZmlsdGVyZWRDYXRlZ29yaWVzLmxlbmd0aDtuPGk7bisrKXt2YXIgcj10aGlzLmZpbHRlcmVkQ2F0ZWdvcmllc1tuXSxvPXRoaXMuJHJlZnMuY2F0ZWdvcmllc1tuXTtpZihvJiZvLm9mZnNldFRvcD5lKWJyZWFrO3RoaXMuZmlsdGVyZWRDYXRlZ29yaWVzW25dLnNob3c9ITAsdD1yfXRoaXMuYWN0aXZlQ2F0ZWdvcnk9dH19LGRpcmVjdGl2ZXM6e1Rhd2tTY3JvbGw6TWV9fSxCZT0obigiZjAzOSIpLHMoTmUsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3JlZjoiZW1vamlwaWNrZXIiLHN0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppLXBpY2tlciB0YXdrLW91dGxpbmUiLGF0dHJzOnt0YWJpbmRleDoiMCJ9fSxbZS5sb2FkZWQ/W3QoInRhd2stZW1vamktZ3JvdXAiLHtyZWY6ImVtb2ppZ3JvdXAiLGF0dHJzOntjYXRlZ29yaWVzOmUuZmlsdGVyZWRDYXRlZ29yaWVzLGFjdGl2ZUNhdGVnb3J5OmUuYWN0aXZlQ2F0ZWdvcnl9LG9uOntjbGljazplLm9uR3JvdXBDbGlja319KSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1lbW9qaS1zZWFyY2gtY29udGFpbmVyIn0sW3QoInRhd2staW5wdXQiLHtyZWY6InNlYXJjaCIsYXR0cnM6e3RhYmluZGV4OiIwIixsYWJlbDplLnBsYWNlaG9sZGVyLHBsYWNlaG9sZGVyOmUucGxhY2Vob2xkZXJ9LG5hdGl2ZU9uOntrZXl1cDpmdW5jdGlvbih0KXtyZXR1cm4gZS5vbktleXVwLmFwcGx5KG51bGwsYXJndW1lbnRzKX19LG1vZGVsOnt2YWx1ZTplLnNlYXJjaElucHV0LGNhbGxiYWNrOmZ1bmN0aW9uKHQpe2Uuc2VhcmNoSW5wdXQ9dH0sZXhwcmVzc2lvbjoic2VhcmNoSW5wdXQifX0pXSwxKSx0KCJoNCIse3N0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppLXN0aWNreS1oZWFkZXIifSxbZS5fdigiICIrZS5fcyhlLmFjdGl2ZUNhdGVnb3J5Lm5hbWUpKyIgIildKSx0KCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToidGF3ay1zY3JvbGwiLHJhd05hbWU6InYtdGF3ay1zY3JvbGwiLHZhbHVlOnttaW5TY3JvbGxiYXJMZW5ndGg6NDB9LGV4cHJlc3Npb246InttaW5TY3JvbGxiYXJMZW5ndGg6IDQwfSJ9XSxyZWY6InNjcm9sbCIsc3RhdGljQ2xhc3M6InRhd2stZW1vamktc2Nyb2xsIixvbjp7c2Nyb2xsOmUub25TY3JvbGx9fSxbZS5pc1NlYXJjaD9bZS5fbChlLnNlYXJjaCwoZnVuY3Rpb24obil7cmV0dXJuIHQoImJ1dHRvbiIse2tleTpuLnRpdGxlLHJlZjoiZW1vamkiLHJlZkluRm9yOiEwLHN0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppIHRhd2stb3V0bGluZSIsYXR0cnM6e3RpdGxlOm4udGl0bGUsaWQ6bi50aXRsZSx0YWJpbmRleDoiMCJ9LG9uOntjbGljazplLm9uQ2xpY2ssbW91c2VlbnRlcjplLm9uTW91c2VlbnRlcixtb3VzZWxlYXZlOmUub25Nb3VzZWxlYXZlfX0sW3QoInRhd2stZW1vamkiLHthdHRyczp7ZW1vamk6bi50aXRsZX19KV0sMSl9KSksZS5zZWFyY2gmJiFlLnNlYXJjaC5sZW5ndGg+MD90KCJzcGFuIixbZS5fdigiIFdlIGNvdWxkbid0IGZpbmQgdGhhdCBlbW9qaSAiKV0pOmUuX2UoKV06ZS5fZSgpLGUuX2woZS5maWx0ZXJlZENhdGVnb3JpZXMsKGZ1bmN0aW9uKG4saSl7cmV0dXJuIHQoImRpdiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJzaG93IixyYXdOYW1lOiJ2LXNob3ciLHZhbHVlOiFlLmlzU2VhcmNoLGV4cHJlc3Npb246IiFpc1NlYXJjaCJ9XSxrZXk6aSxyZWY6ImNhdGVnb3JpZXMiLHJlZkluRm9yOiEwfSxbMCE9aT90KCJoNCIse3N0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppLWhlYWRlciJ9LFtlLl92KCIgIitlLl9zKG4ubmFtZSkrIiAiKV0pOmUuX2UoKSxlLl9sKG4uZW1vamlzLChmdW5jdGlvbihpKXtyZXR1cm4gdCgiYnV0dG9uIix7a2V5OmkudGl0bGUscmVmOiJlbW9qaSIscmVmSW5Gb3I6ITAsc3RhdGljQ2xhc3M6InRhd2stZW1vamkgdGF3ay1vdXRsaW5lIixhdHRyczp7dGl0bGU6aS50aXRsZSxpZDppLnRpdGxlLHRhYmluZGV4OiIwIn0sb246e2NsaWNrOmUub25DbGljayxtb3VzZWVudGVyOmUub25Nb3VzZWVudGVyLG1vdXNlbGVhdmU6ZS5vbk1vdXNlbGVhdmUsZm9jdXM6ZS5vbk1vdXNlZW50ZXIsYmx1cjplLm9uTW91c2VsZWF2ZX19LFtuLnNob3c/dCgidGF3ay1lbW9qaSIse2F0dHJzOntlbW9qaTppLnRpdGxlfX0pOmUuX2UoKV0sMSl9KSldLDIpfSkpXSwyKV06W3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppLWxvYWRpbmcifSldXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxxZT17YmluZDpmdW5jdGlvbihlLHQsbil7dmFyIGk9IiIscj1lLmdldEF0dHJpYnV0ZSgiZGF0YS10ZXh0Iiksbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIikscz10LnZhbHVlP3QudmFsdWU6IiI7cyYmcy5wb3NpdGlvbiYmKGk9cy5wb3NpdGlvbiksYS5jbGFzc05hbWU9InRhd2stdG9vbHRpcC1hcnJvdyIsby5pbm5lckhUTUwrPXIsby5jbGFzc05hbWU9InRhd2stdG9vbHRpcC1ob3ZlciAiLmNvbmNhdChpKSxvLmFwcGVuZENoaWxkKGEpLGUuYXBwZW5kQ2hpbGQobyksZS5jbGFzc05hbWUrPSIgdGF3ay10b29sdGlwIixuLm1vdXNlb3ZlckhhbmRsZXI9ZnVuY3Rpb24oKXt2YXIgdCxyPWUub3duZXJEb2N1bWVudD9lLm93bmVyRG9jdW1lbnQuYm9keTpudWxsLGw9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxjPWwudG9wLHU9bC5sZWZ0K2wud2lkdGgvMi1vLm9mZnNldFdpZHRoLzI7dD1yP3IuY2xpZW50V2lkdGg6bi5jb250ZXh0LiRlbC5jbGllbnRXaWR0aDt2YXIgZD1vLm9mZnNldFdpZHRoKzE7dStkPnQmJih1PXQtZCksby5zdHlsZS5jc3NUZXh0Kz0ibGVmdDoiLmNvbmNhdCh1LCJweDsgcmlnaHQ6IHVuc2V0OyIpO3ZhciBwPWwubGVmdC11K2wud2lkdGgvMjthLnN0eWxlLmNzc1RleHQrPSJsZWZ0OiIuY29uY2F0KHAtOCwicHg7IiksImJvdHRvbSI9PT1pP2MtPWwuaGVpZ2h0KzI0OmMrPWwuaGVpZ2h0KzQsby5zdHlsZS5jc3NUZXh0Kz0idG9wIDogIi5jb25jYXQoYywicHg7IikscyYmcy5pc0R5bmFtaWN8fGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixuLm1vdXNlb3ZlckhhbmRsZXIsITEpfSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIsbi5tb3VzZW92ZXJIYW5kbGVyLCExKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCxuKXtuLm1vdXNlb3ZlckhhbmRsZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixuLm1vdXNlb3ZlckhhbmRsZXIsITEpfX0sSGU9e25hbWU6InRhd2stY2hhdC1pbnB1dCIsY29tcG9uZW50czp7VGF3a0ljb246bCxUYXdrRW1vamlQaWNrZXI6QmV9LHByb3BzOntwbGFjZWhvbGRlcjp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sZmVhdHVyZXM6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57ZW1vamk6ITAscmF0aW5nOiEwLHVwbG9hZHM6ITB9fX19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y29uZmlnOntkZWZhdWx0X2hlaWdodDoxNixtYXhfaGVpZ2h0OjE1MH0saGFzVmFsdWU6ITEsc2hvd0Vtb2ppOiExLHNob3dVcGxvYWQ6ITEsc2hvd1JhdGluZ3M6ITEsZmlsZXM6W10scmF0aW5nczoiIixjaGF0Rm9jdXNlZDohMX19LGNvbXB1dGVkOnthY3Rpb25CdXR0b25DbGFzczpmdW5jdGlvbigpe3JldHVyblsidGF3ay1jaGF0aW5wdXQtYWN0aW9uLWJ1dHRvbnMiLHRoaXMuaGFzVmFsdWUmJiJhY3RpdmUiXX19LG1ldGhvZHM6e29uS2V5ZG93bjpmdW5jdGlvbihlKXtpZigxMz09ZS5rZXlDb2RlJiYhZS5zaGlmdEtleSlyZXR1cm4gZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMub25TZW5kKCk7dGhpcy5zaG93RW1vamk9ITEsdGhpcy4kZW1pdCgibWVzc2FnZVR5cGluZyIsZSl9LG9uRm9jdXM6ZnVuY3Rpb24oKXt0aGlzLmNoYXRGb2N1c2VkPSEwLHRoaXMuc2hvd0Vtb2ppPSExLHRoaXMuJGVtaXQoImZvY3VzIil9LG9uQmx1cjpmdW5jdGlvbigpe3RoaXMuY2hhdEZvY3VzZWQ9ITEsdGhpcy4kZW1pdCgiYmx1ciIpfSxvblNlbGVjdDpmdW5jdGlvbihlKXt2YXIgdD10aGlzLiRyZWZzLmNoYXRpbnB1dC52YWx1ZTt0aGlzLiRyZWZzLmNoYXRpbnB1dC52YWx1ZT10K2UsdGhpcy4kcmVmcy5jaGF0aW5wdXQuZm9jdXMoKSx0aGlzLmhhc1ZhbHVlPSEwLHRoaXMuc2hvd0Vtb2ppPSExfSxvbkZpbGVDbGljazpmdW5jdGlvbigpe3RoaXMuc2hvd1JhdGluZ3M9ITEsdGhpcy5zaG93RW1vamk9ITF9LG9uRmlsZVVwbG9hZDpmdW5jdGlvbigpe3ZhciBlPXRoaXMuJHJlZnMuZmlsZXVwbG9hZC5maWxlcztpZih0aGlzLnNob3dFbW9qaT0hMSxlLmxlbmd0aD4wJiZ0aGlzLmZpbGVzLmxlbmd0aDw0KXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG49ZVt0XSxpPW51bGwscj1udWxsO2lmKG4udHlwZS5tYXRjaCgvKGpwZ3xqcGVnfHBuZ3xnaWYpJC9pKT8oaT1VUkwuY3JlYXRlT2JqZWN0VVJMKG4pLHI9ImltYWdlIik6LTEhPT1bInZpZGVvL21wNCIsInZpZGVvL29nZyIsInZpZGVvL3dlYm0iXS5pbmRleE9mKG4udHlwZSk/KGk9ITAscj0idmlkZW8iKTotMSE9PVsiYXVkaW8vbXAzIiwiYXVkaW8vb2dnIiwiYXVkaW8vbXBlZyIsImF1ZGlvL3dhdiJdLmluZGV4T2Yobi50eXBlKSYmKGk9ITAscj0iYXVkaW8iKSx0aGlzLmZpbGVzLnB1c2goe3ByZXZpZXc6aSxpY29uVHlwZTpyLGZpbGU6bn0pLDQ9PT10aGlzLmZpbGVzLmxlbmd0aClicmVha310aGlzLmhhc1ZhbHVlPSEwLHRoaXMuJHJlZnMuZmlsZXVwbG9hZC52YWx1ZT0iIn10aGlzLiRlbWl0KCJmaWxlc0FkZGVkIil9LGhhbmRsZVJhdGluZzpmdW5jdGlvbihlLHQpe2Uuc3RvcFByb3BhZ2F0aW9uKCksZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuJGVtaXQoInJhdGluZ0NsaWNrZWQiLHQpLHRoaXMuc2hvd1JhdGluZ3M9ITF9LG9uU2VuZDpmdW5jdGlvbigpeyh0aGlzLiRyZWZzLmNoYXRpbnB1dC52YWx1ZS5sZW5ndGg+MHx8dGhpcy5maWxlcy5sZW5ndGg+MCkmJih0aGlzLiRlbWl0KCJzZW5kTWVzc2FnZSIse21lc3NhZ2U6dGhpcy4kcmVmcy5jaGF0aW5wdXQudmFsdWUsYXR0YWNobWVudHM6dGhpcy5maWxlc30pLHRoaXMuJHJlZnMuY2hhdGlucHV0LnZhbHVlPSIiLHRoaXMuZmlsZXM9W10sdGhpcy4kcmVmcy5jaGF0aW5wdXQuY2xpY2soKSksdGhpcy5oYXNWYWx1ZT0hMSx0aGlzLnNob3dFbW9qaT0hMSx0aGlzLnNob3dVcGxvYWQ9ITF9LG9uQ2xvc2U6ZnVuY3Rpb24oKXt0aGlzLnNob3dFbW9qaT0hMX0sb3BlbkZpbFNlbGVjdG9yOmZ1bmN0aW9uKCl7dGhpcy5zaG93VXBsb2FkPSEwLHRoaXMuc2hvd0Vtb2ppPSEwLHRoaXMuJHJlZnMuZmlsZXVwbG9hZC5jbGljaygpfSxyZW1vdmVGaWxlOmZ1bmN0aW9uKGUpe3RoaXMuZmlsZXMubGVuZ3RoJiZ0aGlzLmZpbGVzLmxlbmd0aD5lJiZ0aGlzLmZpbGVzLnNwbGljZShlLDEpLDA9PT10aGlzLmZpbGVzLmxlbmd0aCYmIiI9PT10aGlzLiRyZWZzLmNoYXRpbnB1dC52YWx1ZSYmKHRoaXMuaGFzVmFsdWU9ITEsdGhpcy4kZW1pdCgiZmlsZXNSZW1vdmVkIikpfSxvbkVtb2ppT3BlbjpmdW5jdGlvbigpe3RoaXMuc2hvd0Vtb2ppPSF0aGlzLnNob3dFbW9qaSx0aGlzLnNob3dVcGxvYWQ9ITEsdGhpcy4kZW1pdCgiZW1vamlQcmV2aWV3Iix0aGlzLnNob3dFbW9qaSksdGhpcy4kcmVmcy5lbW9qaXBpY2tlci5mb2N1cygpfSxoYW5kbGVFc2NhcGVLZXk6ZnVuY3Rpb24oZSl7IkVzY2FwZSI9PT1lLmtleSYmdGhpcy5zaG93RW1vamkmJih0aGlzLnNob3dFbW9qaT0hMSl9fSxkaXJlY3RpdmVzOntUYXdrVG9vbHRpcDpxZSxhdXRvZ3Jvdzp7YmluZDpmdW5jdGlvbihlLHQsbil7dmFyIGkscjtpPXdpbmRvdy5hdHRhY2hFdmVudD9mdW5jdGlvbihlLHQsbil7ZS5hdHRhY2hFdmVudCgib24iK3Qsbil9OmZ1bmN0aW9uKGUsdCxuKXtlLmFkZEV2ZW50TGlzdGVuZXIodCxuLCExKX07dmFyIG89ZnVuY3Rpb24oKXt2YXIgdD1uLmNvbnRleHQuY29uZmlnLmRlZmF1bHRfaGVpZ2h0O2UucGFyZW50Tm9kZSYmKHQ9cGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKGUucGFyZW50Tm9kZSkuZm9udFNpemUpKTt2YXIgaSxyPTAsbz1lLmNsaWVudEhlaWdodCxhPWUudmFsdWUuc3BsaXQoL1xyXG58XHJ8XG4vKS5sZW5ndGh8fDEscz1hKnQ7bi5jb250ZXh0Lmhhc1ZhbHVlPygxPT09YSYmZS5zY3JvbGxIZWlnaHQ+PWUuY2xpZW50SGVpZ2h0JiYocz1lLnNjcm9sbEhlaWdodCksaT1zPG4uY29udGV4dC5jb25maWcubWF4X2hlaWdodD9zPHQ/dDpzOm4uY29udGV4dC5jb25maWcubWF4X2hlaWdodCk6aT10LG4uY29udGV4dC5zaG93RW1vamkmJihyPTMxMCksZS5zdHlsZS5oZWlnaHQ9IiIuY29uY2F0KGksInB4Iiksbi5jb250ZXh0LiRlbWl0KCJ0ZXh0YXJlYVJlc2l6ZWQiLGktbytyKX0sYT1mdW5jdGlvbigpe2NsZWFyVGltZW91dChyKSxlLnZhbHVlLnRyaW0oKS5sZW5ndGg+MD9uLmNvbnRleHQuaGFzVmFsdWU9ITA6bi5jb250ZXh0Lmhhc1ZhbHVlPSExLHI9d2luZG93LnNldFRpbWVvdXQobywxMDApfTtpKGUsImN1dCIsYSksaShlLCJwYXN0ZSIsYSksaShlLCJrZXl1cCIsYSksaShlLCJjbGljayIsYSksbygpfX0sImNsaWNrLW91dHNpZGUiOntiaW5kOmZ1bmN0aW9uKGUsdCxuKXskZT1mdW5jdGlvbihpKXt2YXIgcj10LnZhbHVlLG89ci5oYW5kbGVyLGE9ci5leGNsdWRlLHM9ITE7YS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZighcyl7dmFyIHQ9bi5jb250ZXh0LiRyZWZzW2VdO3QmJihzPXQuY29udGFpbnMoaS50YXJnZXQpKX19KSksZS5jb250YWlucyhpLnRhcmdldCl8fHN8fG4uY29udGV4dFtvXSgpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsJGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCRlKX0sdW5iaW5kOmZ1bmN0aW9uKCl7ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLCRlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IiwkZSl9fX19LEZlPShuKCJjMDMwIikscyhIZSwoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2IixlLl9iKHtzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQifSwiZGl2IixlLiRhdHRycywhMSksW2UuZmVhdHVyZXMuZW1vamk/dCgiZGl2Iix7ZGlyZWN0aXZlczpbe25hbWU6ImNsaWNrLW91dHNpZGUiLHJhd05hbWU6InYtY2xpY2stb3V0c2lkZSIsdmFsdWU6e2V4Y2x1ZGU6WyJidXR0b24iXSxoYW5kbGVyOiJvbkNsb3NlIn0sZXhwcmVzc2lvbjoie1xuXHRcdFx0ZXhjbHVkZSA6IFsnYnV0dG9uJ10sXG5cdFx0XHRoYW5kbGVyIDogJ29uQ2xvc2UnXG5cdFx0fSJ9XSxyZWY6ImVtb2ppcGlja2VyIixzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtZW1vamlzIixvbjp7a2V5dXA6ZnVuY3Rpb24odCl7cmV0dXJuIXQudHlwZS5pbmRleE9mKCJrZXkiKSYmZS5fayh0LmtleUNvZGUsImVzYyIsMjcsdC5rZXksWyJFc2MiLCJFc2NhcGUiXSk/bnVsbDplLmhhbmRsZUVzY2FwZUtleS5hcHBseShudWxsLGFyZ3VtZW50cyl9fX0sW3QoInRhd2stZW1vamktcGlja2VyIix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6ZS5zaG93RW1vamksZXhwcmVzc2lvbjoic2hvd0Vtb2ppIn1dLGF0dHJzOntpc1Nob3c6ZS5zaG93RW1vaml9LG9uOntzZWxlY3Q6ZS5vblNlbGVjdH19KV0sMSk6ZS5fZSgpLHQoImRpdiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJzaG93IixyYXdOYW1lOiJ2LXNob3ciLHZhbHVlOmUuZmlsZXMubGVuZ3RoLGV4cHJlc3Npb246ImZpbGVzLmxlbmd0aCJ9XSxzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZCJ9LFt0KCJ1bCIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLWxpc3QgdGF3ay1mbGV4IHRhd2stZmxleC13cmFwIn0sW2UuX2woZS5maWxlcywoZnVuY3Rpb24obixpKXtyZXR1cm4gdCgibGkiLHtrZXk6aSxzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1wcmV2aWV3IHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIHRhd2stZmxleC1jZW50ZXIifSxbbi5wcmV2aWV3JiYiaW1hZ2UiPT09bi5pY29uVHlwZT90KCJpbWciLHthdHRyczp7c3JjOm4ucHJldmlld319KTpuLnByZXZpZXcmJiJ2aWRlbyI9PT1uLmljb25UeXBlP3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ2aWRlby1maWxlIixzaXplOiJsYXJnZSJ9fSk6bi5wcmV2aWV3JiYiYXVkaW8iPT09bi5pY29uVHlwZT90KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiYXVkaW8tZmlsZSIsc2l6ZToibGFyZ2UifX0pOnQoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJnZW5lcmljLWZpbGUiLHNpemU6ImxhcmdlIn19KSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtZmlsZS1yZW1vdmUgdGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUgdGF3ay1mbGV4LWNlbnRlciIsb246e2NsaWNrOmZ1bmN0aW9uKHQpe3JldHVybiBlLnJlbW92ZUZpbGUoaSl9fX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ4IixzaXplOiJ4c21hbGwifX0pXSwxKV0sMSl9KSksZS5maWxlcy5sZW5ndGg+MCYmZS5maWxlcy5sZW5ndGg8PTM/dCgibGkiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1pbnB1dCB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSB0YXdrLWZsZXgtY2VudGVyIixvbjp7Y2xpY2s6ZS5vcGVuRmlsU2VsZWN0b3J9fSxbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6InBsdXMiLHNpemU6ImxhcmdlIn19KV0sMSk6ZS5fZSgpXSwyKSx0KCJpbnB1dCIse3JlZjoiZmlsZXVwbG9hZCIsYXR0cnM6e3R5cGU6ImZpbGUiLG11bHRpcGxlOiIifSxvbjp7Y2hhbmdlOmUub25GaWxlVXBsb2FkLGNsaWNrOmUub25GaWxlQ2xpY2t9fSldKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtd3JhcCB0YXdrLWZsZXggdGF3ay1mbGV4LXdyYXAifSxbdCgidGV4dGFyZWEiLHtkaXJlY3RpdmVzOlt7bmFtZToiYXV0b2dyb3ciLHJhd05hbWU6InYtYXV0b2dyb3cifV0scmVmOiJjaGF0aW5wdXQiLHN0YXRpY0NsYXNzOiJ0YXdrLWNoYXRpbnB1dC1lZGl0b3IiLGF0dHJzOntwbGFjZWhvbGRlcjplLnBsYWNlaG9sZGVyLHRhYmluZGV4OiIwIn0sb246e2tleWRvd246ZS5vbktleWRvd24sZm9jdXM6ZS5vbkZvY3VzLGJsdXI6ZS5vbkJsdXJ9fSksdCgiZGl2Iix7cmVmOiJhY3Rpb25idXR0b25zIixjbGFzczplLmFjdGlvbkJ1dHRvbkNsYXNzLGF0dHJzOntyb2xlOiJncm91cCIsImFyaWEtbGFiZWwiOiJHcm91cCBvZiBidXR0b25zIn19LFtlLmZlYXR1cmVzLnJhdGluZz90KCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTohZS5oYXNWYWx1ZSxleHByZXNzaW9uOiIhaGFzVmFsdWUifSx7bmFtZToidGF3ay10b29sdGlwIixyYXdOYW1lOiJ2LXRhd2stdG9vbHRpcCIsdmFsdWU6e3Bvc2l0aW9uOiJib3R0b20ifSxleHByZXNzaW9uOiJ7cG9zaXRpb24gOiAnYm90dG9tJ30ifV0scmVmOiJyYXRpbmciLHN0YXRpY0NsYXNzOiJ0YXdrLWNoYXRpbnB1dC1idXR0b24gdGF3ay10b29sdGlwIHRhd2stb3V0bGluZSIsY2xhc3M6W2Uuc2hvd1JhdGluZ3M/ImFjdGl2ZSI6IiIsZS5jaGF0Rm9jdXNlZD8idGF3ay1jaGF0aW5wdXQtZm9jdXNlZCI6IiJdLGF0dHJzOntyb2xlOiJidXR0b24iLHRhYmluZGV4OiIwIix0eXBlOiJidXR0b24iLHRpdGxlOltlLiRpMThuP2UuJGkxOG4oInJvbGxvdmVyIiwicmF0ZV9jaGF0Iik6IlJhdGUgdGhpcyBjaGF0Il0sImFyaWEtbGFiZWwiOltlLiRpMThuP2UuJGkxOG4oInJvbGxvdmVyIiwicmF0ZV9jaGF0Iik6IlJhdGUgdGhpcyBjaGF0Il0sImRhdGEtdGV4dCI6W2UuJGkxOG4/ZS4kaTE4bigicm9sbG92ZXIiLCJyYXRlX2NoYXQiKToiUmF0ZSB0aGlzIGNoYXQiXX0sb246e21vdXNlZW50ZXI6ZnVuY3Rpb24odCl7ZS5zaG93UmF0aW5ncz0hMH0sbW91c2VsZWF2ZTpmdW5jdGlvbih0KXtlLnNob3dSYXRpbmdzPSExfSxjbGljazpmdW5jdGlvbih0KXtlLnNob3dSYXRpbmdzPSEwfSxrZXl1cDpmdW5jdGlvbih0KXtpZighdC50eXBlLmluZGV4T2YoImtleSIpJiZlLl9rKHQua2V5Q29kZSwiZW50ZXIiLDEzLHQua2V5LCJFbnRlciIpKXJldHVybiBudWxsO2Uuc2hvd1JhdGluZ3M9ITB9LGZvY3VzaW46ZnVuY3Rpb24odCl7ZS5zaG93UmF0aW5ncz0hMH0sZm9jdXNvdXQ6ZnVuY3Rpb24odCl7ZS5zaG93UmF0aW5ncz0hMX19fSxbdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdGlucHV0LXJhdGluZ3MgdGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUifSxbdCgiYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stY2hhdGlucHV0LXJhdGUgdGF3ay1jaGF0aW5wdXQtcmF0aW5ncy10aHVtYnMtZG93biB0YXdrLW1hcmdpbi14c21hbGwtcmlnaHQgdGF3ay1tYXJnaW4tYXV0by1sZWZ0IHRhd2stb3V0bGluZSIsYXR0cnM6e3RpdGxlOltlLiRpMThuP2UuJGkxOG4oInJvbGxvdmVyIiwibmVnYXRpdmVfcmF0aW5nIik6IlJhdGUgdGhpcyBjb252ZXJzYXRpb24gd2l0aCAtMSJdLHJvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6ZS5zaG93UmF0aW5ncz8wOi0xfSxvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIGUuaGFuZGxlUmF0aW5nKHQsLTEpfSxmb2N1c2luOmZ1bmN0aW9uKHQpe2Uuc2hvd1JhdGluZ3M9ITB9fX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ0aHVtYnMtZG93biJ9fSldLDEpLHQoImJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXRpbnB1dC1yYXRlIHRhd2stY2hhdGlucHV0LXJhdGluZ3MtdGh1bWJzLXVwIHRhd2stbWFyZ2luLXhzbWFsbC1yaWdodCB0YXdrLW91dGxpbmUiLGF0dHJzOnt0aXRsZTpbZS4kaTE4bj9lLiRpMThuKCJyb2xsb3ZlciIsInBvc2l0aXZlX3JhdGluZyIpOiJSYXRlIHRoaXMgY29udmVyc2F0aW9uIHdpdGggKzEiXSxyb2xlOiJidXR0b24iLHRhYmluZGV4OmUuc2hvd1JhdGluZ3M/MDotMX0sb246e2NsaWNrOmZ1bmN0aW9uKHQpe3JldHVybiBlLmhhbmRsZVJhdGluZyh0LDEpfSxmb2N1c2luOmZ1bmN0aW9uKHQpe2Uuc2hvd1JhdGluZ3M9ITB9fX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ0aHVtYnMtdXAifX0pXSwxKV0pLHQoInRhd2staWNvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLWNoYXRpbnB1dC1yYXRpbmciLGF0dHJzOnt0eXBlOiJ0aHVtYnMtdXAifSxvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7ZS5zaG93UmF0aW5ncz0hMH19fSldLDEpOmUuX2UoKSxlLmZlYXR1cmVzLnVwbG9hZHM/dCgiYnV0dG9uIix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6IWUuaGFzVmFsdWV8fDAhPT1lLmZpbGVzLmxlbmd0aCxleHByZXNzaW9uOiIhaGFzVmFsdWUgfHwgZmlsZXMubGVuZ3RoICE9PSAwIn0se25hbWU6InRhd2stdG9vbHRpcCIscmF3TmFtZToidi10YXdrLXRvb2x0aXAiLHZhbHVlOntwb3NpdGlvbjoiYm90dG9tIn0sZXhwcmVzc2lvbjoie3Bvc2l0aW9uIDogJ2JvdHRvbSd9In1dLHJlZjoiYXR0YWNoRmlsZSIsc3RhdGljQ2xhc3M6InRhd2stY2hhdGlucHV0LWJ1dHRvbiB0YXdrLXRvb2x0aXAgdGF3ay1vdXRsaW5lIixjbGFzczpbZS5jaGF0Rm9jdXNlZD8idGF3ay1jaGF0aW5wdXQtZm9jdXNlZCI6IiJdLGF0dHJzOntyb2xlOiJidXR0b24iLHRhYmluZGV4OiIwIix0eXBlOiJidXR0b24iLHRpdGxlOltlLiRpMThuP2UuJGkxOG4oInJvbGxvdmVyIiwidXBsb2FkX2ZpbGUiKToiVXBsb2FkIEZpbGUiXSwiYXJpYS10aXRsZSI6W2UuJGkxOG4/ZS4kaTE4bigicm9sbG92ZXIiLCJ1cGxvYWRfZmlsZSIpOiJVcGxvYWQgRmlsZSJdLCJhcmlhLWhpZGRlbiI6InRydWUiLCJhcmlhLWhhc3BvcHVwIjoibWVudSIsImFyaWEtZXhwYW5kZWQiOiJmYWxzZSIsImRhdGEtdGV4dCI6W2UuJGkxOG4/ZS4kaTE4bigicm9sbG92ZXIiLCJ1cGxvYWRfZmlsZSIpOiJVcGxvYWQgRmlsZSJdfSxvbjp7Y2xpY2s6ZS5vcGVuRmlsU2VsZWN0b3J9fSxbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImF0dGFjaG1lbnQifX0pXSwxKTplLl9lKCksZS5mZWF0dXJlcy5lbW9qaT90KCJidXR0b24iLHtkaXJlY3RpdmVzOlt7bmFtZToidGF3ay10b29sdGlwIixyYXdOYW1lOiJ2LXRhd2stdG9vbHRpcCIsdmFsdWU6e3Bvc2l0aW9uOiJib3R0b20iLGlzRHluYW1pYzohMH0sZXhwcmVzc2lvbjoie3Bvc2l0aW9uIDogJ2JvdHRvbScsIGlzRHluYW1pYyA6IHRydWV9In1dLHJlZjoiYnV0dG9uIixzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtYnV0dG9uIHRhd2stdG9vbHRpcCB0YXdrLW91dGxpbmUiLGNsYXNzOltlLmNoYXRGb2N1c2VkPyJ0YXdrLWNoYXRpbnB1dC1mb2N1c2VkIjoiIl0sYXR0cnM6e3JvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6IjAiLHR5cGU6ImJ1dHRvbiIsdGl0bGU6W2UuJGkxOG4/ZS4kaTE4bigiY2hhdCIsImluc2VydF9lbW9qaSIpOiJJbnNlcnQgZW1vamkiXSwiYXJpYS1sYWJlbCI6W2UuJGkxOG4/ZS4kaTE4bigiY2hhdCIsImluc2VydF9lbW9qaSIpOiJJbnNlcnQgZW1vamkiXSwiYXJpYS1oaWRkZW4iOiJ0cnVlIiwiYXJpYS1oYXNwb3B1cCI6InRydWUiLCJkYXRhLXRleHQiOltlLiRpMThuP2UuJGkxOG4oImNoYXQiLCJpbnNlcnRfZW1vamkiKToiSW5zZXJ0IGVtb2ppIl19LG9uOntjbGljazplLm9uRW1vamlPcGVufX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJlbW9qaSJ9fSldLDEpOmUuX2UoKV0pLGUuaGFzVmFsdWU/dCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stY2hhdGlucHV0LXNlbmQtY29udGFpbmVyIn0sW3QoImJ1dHRvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIix2YWx1ZTp7cG9zaXRpb246ImJvdHRvbSJ9LGV4cHJlc3Npb246Intwb3NpdGlvbiA6ICdib3R0b20nfSJ9XSxzdGF0aWNDbGFzczoidGF3ay1jaGF0aW5wdXQtc2VuZCIsYXR0cnM6e3JvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6IjAiLHR5cGU6ImJ1dHRvbiIsdGl0bGU6W2UuJGkxOG4/ZS4kaTE4bigiZm9ybSIsInNlbmRfYnV0dG9uIik6IlNlbmQiXSwiYXJpYS1sYWJlbCI6W2UuJGkxOG4/ZS4kaTE4bigiZm9ybSIsInNlbmRfYnV0dG9uIik6IlNlbmQiXSwiZGF0YS10ZXh0IjpbZS4kaTE4bj9lLiRpMThuKCJmb3JtIiwic2VuZF9idXR0b24iKToiU2VuZCJdfSxvbjp7Y2xpY2s6ZS5vblNlbmR9fSxbdCgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6InNlbmQifX0pXSwxKV0pOmUuX2UoKV0pXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsVWU9e25hbWU6InRhd2stY2hlY2tib3giLHByb3BzOntpZDpTdHJpbmcsbGFiZWw6U3RyaW5nLHZhbHVlOkFycmF5LG9wdGlvbnM6QXJyYXksZXJyb3JNZXNzYWdlOnt0eXBlOk9iamVjdCxkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJue319fSxpc1JlcXVpcmVkOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0saXNTdWNjZXNzOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aW52YWxpZFR5cGU6IiJ9fSxjb21wdXRlZDp7bGFiZWxDbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWZvcm0tbGFiZWwgdGF3ay1mb3JtLWZpZWxkLWxhYmVsIix0aGlzLmludmFsaWRUeXBlJiYidGF3ay10ZXh0LXJlZC0xIl19LGVycm9yTGFiZWw6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2VbdGhpcy5pbnZhbGlkVHlwZV19fSxtZXRob2RzOntoYW5kbGVDaGFuZ2U6ZnVuY3Rpb24oZSl7dm9pZCAwIT09dGhpcy52YWx1ZSYmKHRoaXMudmFsdWUuaW5jbHVkZXMoZS50YXJnZXQudmFsdWUpP3RoaXMudmFsdWUuc3BsaWNlKHRoaXMudmFsdWUuaW5kZXhPZihlLnRhcmdldC52YWx1ZSksMSk6MT09ZS50YXJnZXQuY2hlY2tlZCYmdGhpcy52YWx1ZS5wdXNoKGUudGFyZ2V0LnZhbHVlKSx0aGlzLiRlbWl0KCJpbnB1dCIsdGhpcy52YWx1ZSksdGhpcy5oYW5kbGVWYWxpZGF0aW9uKHRoaXMudmFsdWUpKX0saGFuZGxlVmFsaWRhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNSZXF1aXJlZCYmKHRoaXMudmFsdWUubGVuZ3RoPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCExKSx0aGlzLmludmFsaWRUeXBlPSIiKToodGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMCksdGhpcy5pbnZhbGlkVHlwZT0icmVxdWlyZWQiKSl9LHZhbGlkYXRlOmZ1bmN0aW9uKCl7dGhpcy5oYW5kbGVWYWxpZGF0aW9uKHRoaXMuc2VsZWN0ZWQpfX19LHplPShuKCIyOTdlIikscyhVZSwoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZm9ybS13cmFwcGVyIixhdHRyczp7cm9sZToiZ3JvdXAiLCJhcmlhLWxhYmVsbGVkYnkiOmUuaWR9fSxbdCgibGFiZWwiLHtjbGFzczplLmxhYmVsQ2xhc3NlcyxhdHRyczp7aWQ6ZS5pZH19LFtlLmlzUmVxdWlyZWQ/dCgic3BhbiIsW2UuX3YoIioiKV0pOmUuX2UoKSxlLl92KCIgIitlLl9zKGUubGFiZWwpKyIgIildKSxlLl9sKGUub3B0aW9ucywoZnVuY3Rpb24obil7cmV0dXJuIHQoImxhYmVsIix7a2V5Om4uaWQsc3RhdGljQ2xhc3M6InRhd2stY2hlY2tib3gtY29udGFpbmVyIn0sW3QoImlucHV0IixlLl9iKHtyZWY6ImNoZWNrYm94IixyZWZJbkZvcjohMCxzdGF0aWNDbGFzczoidGF3ay1jaGVja2JveCIsYXR0cnM6e3R5cGU6ImNoZWNrYm94IixkaXNhYmxlZDpuLmRpc2FibGVkLHJlcXVpcmVkOmUuaXNSZXF1aXJlZH0sZG9tUHJvcHM6e3ZhbHVlOm4udmFsdWUsY2hlY2tlZDoiIiE9ZS52YWx1ZS5pbmNsdWRlcyhuLnZhbHVlKX0sb246e2lucHV0OmUuaGFuZGxlQ2hhbmdlfX0sImlucHV0IixlLiRhdHRycywhMSkpLHQoInNwYW4iLHtzdGF0aWNDbGFzczoidGF3ay1mb3JtLWxhYmVsIn0sW2UuX3YoZS5fcyhuLmxhYmVsKSldKSx0KCJzcGFuIix7c3RhdGljQ2xhc3M6InRhd2stY2hlY2ttYXJrIn0pXSl9KSksZS5pbnZhbGlkVHlwZT90KCJzbWFsbCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtcmVkLTEgdGF3ay10ZXh0LXJlZ3VsYXItMSB0YXdrLW1hcmdpbi1zbWFsbC1sZWZ0In0sW2UuX3YoIiAiK2UuX3MoZS5lcnJvckxhYmVsKSsiICIpXSk6ZS5fZSgpXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxYZT17bmFtZToidGF3ay1kcm9wZG93biIscHJvcHM6e2lzT3Blbjp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITEscmVxdWlyZWQ6ITB9LHBvc2l0aW9uOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9fSxjcmVhdGVkOmZ1bmN0aW9uKCl7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmNsb3NlKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuaGFuZGxlRXNjYXBlS2V5KX0sYmVmb3JlRGVzdHJveTpmdW5jdGlvbigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5jbG9zZSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLmhhbmRsZUVzY2FwZUtleSl9LGNvbXB1dGVkOnttZW51Q2xhc3NlczpmdW5jdGlvbigpe3JldHVyblsidGF3ay1kcm9wZG93bi1tZW51Iix0aGlzLmlzT3BlbiYmInRhd2stb3BlbiIsdGhpcy5wb3NpdGlvbiYmInRhd2stZHJvcGRvd24tbWVudS0iLmNvbmNhdCh0aGlzLnBvc2l0aW9uKV19fSxtZXRob2RzOntjbG9zZTpmdW5jdGlvbihlKXt0aGlzLiRlbC5jb250YWlucyhlLnRhcmdldCl8fHRoaXMuJGVtaXQoInVwZGF0ZTppc09wZW4iLCExKX0saGFuZGxlRXNjYXBlS2V5OmZ1bmN0aW9uKGUpeyJFc2NhcGUiPT09ZS5rZXkmJnRoaXMuaXNPcGVuJiZ0aGlzLiRlbWl0KCJ1cGRhdGU6aXNPcGVuIiwhMSl9fX0sVmU9KG4oIjcxY2MiKSxzKFhlLChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiB0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1kcm9wZG93biIsb246e2tleXVwOmUuaGFuZGxlRXNjYXBlS2V5fX0sW2UuX3QoImRlZmF1bHQiKSx0KCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6InNsaWRlLWZhZGUifX0sW2UuaXNPcGVuP3QoImRpdiIse2NsYXNzOmUubWVudUNsYXNzZXN9LFtlLl90KCJtZW51IildLDIpOmUuX2UoKV0pXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxXZT17bmFtZToidGF3ay1mbGFnIixwcm9wczp7YXNzZXRQYXRoOnt0eXBlOlN0cmluZyxkZWZ1YWx0OiIifSxzaXplOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSx0eXBlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIiLHJlcXVpcmVkOiEwfX19LFllPShuKCJkMDZkIikscyhXZSwoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZSgiZGl2Iix0Ll9nKHQuX2Ioe2NsYXNzOlsidGF3ay1mbGFnIix0LnByb3BzLnNpemUmJiJ0YXdrLWZsYWctIi5jb25jYXQodC5wcm9wcy5zaXplKSx0LmRhdGEuc3RhdGljQ2xhc3MsdC5kYXRhLmNsYXNzXSxzdHlsZTpbdC5kYXRhLnN0eWxlLHQuZGF0YS5zdGF0aWNTdHlsZV19LCJkaXYiLHQuZGF0YS5hdHRycywhMSksdC5saXN0ZW5lcnMpLFtlKCJpbWciLHthdHRyczp7c3JjOiIiLmNvbmNhdCh0LnByb3BzLmFzc2V0UGF0aD90LnByb3BzLmFzc2V0UGF0aDoiIiwiL2ltYWdlcy9mbGFncy1zcXVhcmUvIikuY29uY2F0KHQucHJvcHMudHlwZSwiLnN2ZyIpLG9uZXJyb3I6InRoaXMub25lcnJvcj1udWxsO3RoaXMuc3JjPSciLmNvbmNhdCh0LnByb3BzLmFzc2V0UGF0aD90LnByb3BzLmFzc2V0UGF0aDoiIiwiL2ltYWdlcy9mbGFncy1zcXVhcmUvdW4uc3ZnJzsiKX19KV0pfSksW10sITAsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLEtlPXtuYW1lOiJ0YXdrLWxpc3RzIixwcm9wczp7dGFnOnt0eXBlOlN0cmluZyxkZWZhdWx0OiJkaXYifX19LEplPShuKCJjNjFlIikscyhLZSwoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZSgiIi5jb25jYXQodC5wcm9wcy50YWcpLHQuX2codC5fYih7cmVmOnQuZGF0YS5yZWYsdGFnOiJjb21wb25lbnQiLGNsYXNzOlsidGF3ay1saXN0cyIsdC5kYXRhLmNsYXNzLHQuZGF0YS5zdGF0aWNDbGFzc10sc3R5bGU6W3QuZGF0YS5zdHlsZSx0LmRhdGEuc3RhdGljU3R5bGVdfSwiY29tcG9uZW50Iix0LmRhdGEuYXR0cnMsITEpLHQubGlzdGVuZXJzKSxbdC5fdCgiZGVmYXVsdCIpXSwyKX0pLFtdLCEwLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxHZT1zKHtuYW1lOiJ0YXdrLWl0ZW0iLHByb3BzOntpc0hlYWRlcjp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzTmVzdGVkOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sdGFnOnt0eXBlOlN0cmluZyxkZWZhdWx0OiJkaXYifSxzaXplOnt0eXBlOlN0cmluZyxkZWZhdWx0Om51bGx9fX0sKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUoIiIuY29uY2F0KHQucHJvcHMudGFnKSx0Ll9nKHQuX2Ioe3JlZjp0LmRhdGEucmVmLHRhZzoiY29tcG9uZW50IixjbGFzczpbdC5kYXRhLmNsYXNzLHQuZGF0YS5zdGF0aWNDbGFzcyx0LnByb3BzLnNpemU/InRhd2stbGlzdC1pdGVtLSIuY29uY2F0KHQucHJvcHMuc2l6ZSk6IiIsdC5wcm9wcy5pc0hlYWRlcj8idGF3ay1saXN0LWhlYWRlciI6InRhd2stbGlzdC1pdGVtIix0LnByb3BzLmlzTmVzdGVkPyJ0YXdrLWxpc3QtbmVzdGVkIjoiIl19LCJjb21wb25lbnQiLHQuZGF0YS5hdHRycywhMSksdC5saXN0ZW5lcnMpLFt0Ll90KCJkZWZhdWx0IildLDIpfSksW10sITAsbnVsbCxudWxsLG51bGwpLmV4cG9ydHMsWmU9e25hbWU6InRhd2stbG9hZGVyIixwcm9wczp7aXNTaGltbWVyaW5nOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMH0sc2l6ZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSx0eXBlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiJiYXIifX19LGV0PShuKCIxYmY0IikscyhaZSwoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZSgiZGl2Iix0Ll9nKHQuX2Ioe2NsYXNzOlsidGF3ay1sb2FkZXIiLHQucHJvcHMudHlwZSYmInRhd2stbG9hZGVyLSIuY29uY2F0KHQucHJvcHMudHlwZSksdC5wcm9wcy5zaXplJiYidGF3ay1sb2FkZXItIi5jb25jYXQodC5wcm9wcy50eXBlLCItIikuY29uY2F0KHQucHJvcHMuc2l6ZSksdC5wcm9wcy5pc1NoaW1tZXJpbmcmJiJ0YXdrLWxvYWRlci1hbmltYXRpb24iLHQuZGF0YS5zdGF0aWNDbGFzcyx0LmRhdGEuY2xhc3NdfSwiZGl2Iix0LmRhdGEuYXR0cnMsITEpLHQubGlzdGVuZXJzKSl9KSxbXSwhMCxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsdHQ9e25hbWU6InRhd2stb3ZlcmxheSIsZGlyZWN0aXZlczp7VGF3a1Rvb2x0aXA6cWV9LHByb3BzOntpc09wZW46e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExLHJlcXVpcmVkOiEwfSx0aXRsZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sYmFja1Rvb2x0aXBUZXh0Ont0eXBlOlN0cmluZyxkZWZhdWx0OiJCYWNrIn0saGVhZGVyQ2xhc3M6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LG9wdGlvbnM6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSx3YXRjaDp7aXNPcGVuOmZ1bmN0aW9uKGUpeyEwPT09ZSYmdGhpcy4kcmVmcy5sZWZ0aGVhZGVyLmZvY3VzKCl9fSxjb21wb25lbnRzOntUYXdrQnV0dG9uOlcsVGF3a0ljb246bH0sbWV0aG9kczp7aGFuZGxlQmFjazpmdW5jdGlvbigpe3RoaXMuJGVtaXQoImdvQmFjayIpfX19LG50PShuKCJiM2FjIikscyh0dCwoZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZS5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7Y2xhc3M6WyJ0YXdrLW92ZXJsYXkiLGUuaXNPcGVuPyJ0YXdrLW9wZW4iOiIiXX0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW92ZXJsYXktaGVhZGVyIixjbGFzczplLmhlYWRlckNsYXNzfSxbdCgiZGl2Iix7cmVmOiJsZWZ0aGVhZGVyIixzdGF0aWNDbGFzczoidGF3ay1vdmVybGF5LWhlYWRlci1sZWZ0IixjbGFzczplLm9wdGlvbnMmJiJsZWZ0Ij09PWUub3B0aW9ucy5hbGlnbkFsbEJ1dHRvbnM/IiI6InRhd2stZmxleC0xIixhdHRyczp7dGFiaW5kZXg6ZS5pc09wZW4/MDotMX19LFt0KCJ0YXdrLWJ1dHRvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHJlZjoiYmFja2J1dHRvbiIsYXR0cnM6eyJkYXRhLXRleHQiOmUuYmFja1Rvb2x0aXBUZXh0LCJhcmlhLWxhYmVsIjplLmJhY2tUb29sdGlwVGV4dCx0YWJpbmRleDplLmlzT3Blbj8wOi0xfSxvbjp7Y2xpY2s6ZS5oYW5kbGVCYWNrfX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJjaGV2cm9uLWxlZnQifX0pXSwxKSx0KCJwIix7c3RhdGljQ2xhc3M6InRhd2stb3ZlcmxheS10aXRsZSJ9LFtlLl92KCIgIitlLl9zKGUudGl0bGUpKyIgIildKV0sMSksdCgiZGl2Iix7Y2xhc3M6ZS5vcHRpb25zJiYibGVmdCI9PT1lLm9wdGlvbnMuYWxpZ25BbGxCdXR0b25zPyJ0YXdrLW1hcmdpbi1hdXRvLXJpZ2h0IjoidGF3ay1tYXJnaW4tYXV0by1sZWZ0In0sW2UuX3QoIm9wdGlvbnMiKV0sMildKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1vdmVybGF5LWJvZHkifSxbZS5fdCgiZGVmYXVsdCIpXSwyKV0pfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLGl0PXtuYW1lOiJ0YXdrLXBob25lLWlucHV0LWRyb3Bkb3duLWxpc3QiLGNvbXBvbmVudHM6e1Rhd2tGbGFnOlllLFRhd2tMaXN0OkplLFRhd2tMaXN0SXRlbTpHZX0scHJvcHM6e2Fzc2V0UGF0aDp7cmVxdWlyZWQ6ITAsdHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sc2VhcmNoOntyZXF1aXJlZDohMH0sc2VsZWN0ZWRDb3VudHJ5OntyZXF1aXJlZDohMH19LGNvbXB1dGVkOntnZXRDb3VudHJ5Q29kZXM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBCLmdldENvZGVMaXN0KCkuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdC5sYWJlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGUuc2VhcmNoLnRvTG93ZXJDYXNlKCkpfHx0LmRpYWxDb2RlLmluY2x1ZGVzKGUuc2VhcmNoKX0pKX19LG1ldGhvZHM6e2hhbmRsZUNsaWNrOmZ1bmN0aW9uKGUpe3RoaXMuJGVtaXQoInNlbGVjdENvdW50cnkiLHtsYWJlbDplLmxhYmVsLHZhbHVlOmUudmFsdWUsZGlhbENvZGU6ZS5kaWFsQ29kZS5yZXBsYWNlKC9bK10vZywiIikscHJpb3JpdHk6ZS5wcmlvcml0eSxhcmVhQ29kZXM6ZS5hcmVhQ29kZXN9KX19fSxydD0obigiODVhMSIpLHMoaXQsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoInRhd2stbGlzdCIsZS5fbChlLmdldENvdW50cnlDb2RlcywoZnVuY3Rpb24obixpKXtyZXR1cm4gdCgidGF3ay1saXN0LWl0ZW0iLHtrZXk6aSxjbGFzczplLnNlbGVjdGVkQ291bnRyeS52YWx1ZT09PW4udmFsdWU/InRhd2stYWN0aXZlIjoiIixvbjp7Y2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIGUuaGFuZGxlQ2xpY2sobil9fX0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSJ9LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXJpZ2h0In0sW3QoInRhd2stZmxhZyIse2F0dHJzOnthc3NldFBhdGg6ZS5hc3NldFBhdGgsdHlwZTpuLnZhbHVlLHNpemU6Im1lZGl1bSJ9fSldLDEpLHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXgtMSJ9LFt0KCJwIixbZS5fdihlLl9zKG4ubGFiZWwpKV0pXSksdCgiZGl2IixbdCgicCIsW2UuX3YoIigrIitlLl9zKG4uZGlhbENvZGUpKyIpIildKV0pXSldKX0pKSwxKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKSkuZXhwb3J0cyxvdD17bmFtZToidGF3ay1waG9uZS1pbnB1dC1kcm9wZG93biIsY29tcG9uZW50czp7VGF3a0ZsYWc6WWUsVGF3a0ljb246bCxUYXdrRHJvcGRvd246VmUsVGF3a0J1dHRvbjpXLFRhd2tQaG9uZUlucHV0RHJvcGRvd25MaXN0OnJ0fSxwcm9wczp7YXNzZXRQYXRoOntyZXF1aXJlZDohMCx0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxzZWxlY3RlZENvdW50cnk6e3JlcXVpcmVkOiEwLHR5cGU6T2JqZWN0fX0sZGF0YTpmdW5jdGlvbigpe3JldHVybntpc0Ryb3Bkb3duT3BlbjohMSxzZWFyY2g6IiJ9fSxtZXRob2RzOnt0b2dnbGVEcm9wZG93bjpmdW5jdGlvbigpe3RoaXMuaXNEcm9wZG93bk9wZW4/dGhpcy5pc0Ryb3Bkb3duT3Blbj0hMTp0aGlzLmlzRHJvcGRvd25PcGVuPSEwLHRoaXMuJGVtaXQoImRyb3Bkb3duVG9nZ2xlIix0aGlzLmlzRHJvcGRvd25PcGVuKX0saGFuZGxlSW5wdXQ6ZnVuY3Rpb24oZSl7dGhpcy5zZWFyY2g9ZS50YXJnZXQudmFsdWUsdGhpcy4kZW1pdCgiaW5wdXQiLGUudGFyZ2V0LnZhbHVlKX0saGFuZGxlQmx1cjpmdW5jdGlvbigpe3RoaXMuJGVtaXQoImJsdXIiKX0sc2VsZWN0Q291bnRyeTpmdW5jdGlvbihlKXt0aGlzLmlzRHJvcGRvd25PcGVuPSExLHRoaXMuJGVtaXQoImRyb3Bkb3duVG9nZ2xlIiwhMSksdGhpcy5zZWFyY2g9IiIsdGhpcy4kZW1pdCgic2VsZWN0Q291bnRyeSIsZSl9fX0sYXQ9e25hbWU6InRhd2stcGhvbmUtaW5wdXQiLGNvbXBvbmVudHM6e1Rhd2tQaG9uZUlucHV0RHJvcGRvd246KG4oIjI3ZDciKSxzKG90LChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiB0KCJ0YXdrLWRyb3Bkb3duIix7YXR0cnM6e2lzT3BlbjplLmlzRHJvcGRvd25PcGVufSxvbjp7InVwZGF0ZTppc09wZW4iOmZ1bmN0aW9uKHQpe2UuaXNEcm9wZG93bk9wZW49dH0sInVwZGF0ZTppcy1vcGVuIjpmdW5jdGlvbih0KXtlLmlzRHJvcGRvd25PcGVuPXR9fX0sW3QoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stcGhvbmUtaW5wdXQtZHJvcGRvd24tYnV0dG9uIixvbjp7Y2xpY2s6ZS50b2dnbGVEcm9wZG93bn19LFt0KCJ0YXdrLWZsYWciLHthdHRyczp7YXNzZXRQYXRoOmUuYXNzZXRQYXRoLHR5cGU6ZS5zZWxlY3RlZENvdW50cnkudmFsdWUsc2l6ZToibWVkaXVtIn19KSx0KCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiY2FyZXQtZG93biIsc2l6ZToieHNtYWxsIn19KV0sMSksdCgiZGl2Iix7YXR0cnM6e3Nsb3Q6Im1lbnUifSxzbG90OiJtZW51In0sW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXBob25lLWlucHV0LWRyb3Bkb3duLW1lbnUtaGVhZGVyIn0sW3QoImlucHV0Iix7ZGlyZWN0aXZlczpbe25hbWU6Im1vZGVsIixyYXdOYW1lOiJ2LW1vZGVsIix2YWx1ZTplLnNlYXJjaCxleHByZXNzaW9uOiJzZWFyY2gifV0sc3RhdGljQ2xhc3M6InRhd2staW5wdXQiLGF0dHJzOnt0eXBlOiJ0ZXh0IixwbGFjZWhvbGRlcjoiU2VhcmNoIn0sZG9tUHJvcHM6e3ZhbHVlOmUuc2VhcmNofSxvbjp7aW5wdXQ6W2Z1bmN0aW9uKHQpe3QudGFyZ2V0LmNvbXBvc2luZ3x8KGUuc2VhcmNoPXQudGFyZ2V0LnZhbHVlKX0sZS5oYW5kbGVJbnB1dF0sYmx1cjplLmhhbmRsZUJsdXJ9fSldKSx0KCJ0YXdrLXBob25lLWlucHV0LWRyb3Bkb3duLWxpc3QiLHthdHRyczp7YXNzZXRQYXRoOmUuYXNzZXRQYXRoLHNlYXJjaDplLnNlYXJjaCxzZWxlY3RlZENvdW50cnk6ZS5zZWxlY3RlZENvdW50cnl9LG9uOntzZWxlY3RDb3VudHJ5OmUuc2VsZWN0Q291bnRyeX19KV0sMSldLDEpfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLFRhd2tJbnB1dDpzZX0scHJvcHM6e2Fzc2V0UGF0aDp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sbGFiZWw6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IlBob25lIG51bWJlciJ9LHZhbHVlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxpc1JlcXVpcmVkOnt0eXBlOkJvb2xlYW59LHZhbGlkYXRpb246e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LGludmFsaWRUeXBlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxlcnJvck1lc3NhZ2U6e3R5cGU6T2JqZWN0fSxwcmVTZWxlY3RDb3VudHJ5Q29kZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudFBob25lTnVtYmVyOiIiLGZvcm1hdFBob25lTnVtYmVyOntkaWFsQ29kZToiIixudW1iZXI6IiJ9LHNlbGVjdGVkQ291bnRyeTp7bGFiZWw6IlVuaXRlZCBTdGF0ZXMiLHZhbHVlOiJ1cyIsZGlhbENvZGU6IjEiLHByaW9yaXR5OjAsYXJlYUNvZGVzOm51bGx9LGlzQWN0aXZlOiExLGlzUGhvbmVEcm9wZG93bk9wZW46ITF9fSxtb3VudGVkOmZ1bmN0aW9uKCl7aWYodGhpcy5wcmVTZWxlY3RDb3VudHJ5Q29kZSYmdGhpcy5wcmVTZWxlY3RDb3VudHJ5Q29kZS5sZW5ndGgpe3ZhciBlPUIuZ2V0Q291bnRyeURhdGEodGhpcy5wcmVTZWxlY3RDb3VudHJ5Q29kZSk7dGhpcy5zZWxlY3RlZENvdW50cnkudmFsdWU9ZS52YWx1ZSx0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZT1lLmRpYWxDb2RlLHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIuZGlhbENvZGU9ZS5kaWFsQ29kZSx0aGlzLmZvcm1hdFBob25lTnVtYmVyLm51bWJlcj10aGlzLnZhbHVlLHRoaXMuY3VycmVudFBob25lTnVtYmVyPSIiLmNvbmNhdCh0aGlzLmZvcm1hdFBob25lTnVtYmVyLmRpYWxDb2RlKS5jb25jYXQodGhpcy5mb3JtYXRQaG9uZU51bWJlci5udW1iZXIpfWVsc2UgaWYodGhpcy52YWx1ZSYmdGhpcy52YWx1ZS5sZW5ndGgpe3ZhciB0PUIuZm9ybWF0KHRoaXMudmFsdWUpO3RoaXMuc2VsZWN0ZWRDb3VudHJ5LnZhbHVlPXQuY291bnRyeUNvZGUsdGhpcy5zZWxlY3RlZENvdW50cnkuZGlhbENvZGU9dC5kaWFsQ29kZSx0aGlzLmZvcm1hdFBob25lTnVtYmVyLmRpYWxDb2RlPXQuZGlhbENvZGUsdGhpcy5mb3JtYXRQaG9uZU51bWJlci5udW1iZXI9dC5waG9uZU51bWJlcix0aGlzLmN1cnJlbnRQaG9uZU51bWJlcj0iIi5jb25jYXQodGhpcy5mb3JtYXRQaG9uZU51bWJlci5kaWFsQ29kZSkuY29uY2F0KHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIubnVtYmVyKX1lbHNlIHRoaXMuc2V0UGhvbmVOdW1iZXIoKTt0aGlzLmN1cnJlbnRQaG9uZU51bWJlci5sZW5ndGg+MCYmKHRoaXMuaXNBY3RpdmU9ITApfSxtZXRob2RzOntzZWxlY3RDb3VudHJ5OmZ1bmN0aW9uKGUpe3RoaXMuc2VsZWN0ZWRDb3VudHJ5PWUsdGhpcy5yZXNldFBob25lTnVtYmVyKCksdGhpcy5zZXRBY3RpdmUoKSx0aGlzLiRlbWl0KCJpbnB1dCIsdGhpcy5jdXJyZW50UGhvbmVOdW1iZXIpfSxzZWFyY2g6ZnVuY3Rpb24oZSl7dmFyIHQ9Qi5zYW5pdGl6ZWRWYWx1ZSh7dmFsdWU6ZX0pO3RoaXMuY3VycmVudFBob25lTnVtYmVyPXQ7dmFyIG49Qi5mb3JtYXQodCk7dGhpcy5zZWxlY3RlZENvdW50cnkudmFsdWU9bi5jb3VudHJ5Q29kZSx0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZT1uLmRpYWxDb2RlLHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIuZGlhbENvZGU9bi5kaWFsQ29kZSx0aGlzLmZvcm1hdFBob25lTnVtYmVyLm51bWJlcj1uLnBob25lTnVtYmVyLHRoaXMuaXNSZXF1aXJlZD8hdGhpcy5oYW5kbGVJc0VtcHR5KCkmJnRoaXMudmFsaWRhdGlvbiYmdGhpcy52YWxpZGF0aW9uLmxlbmd0aCYmdGhpcy5oYW5kbGVWYWxpZGF0aW9uKCk6dGhpcy52YWxpZGF0aW9uJiZ0aGlzLnZhbGlkYXRpb24ubGVuZ3RoJiZ0aGlzLmN1cnJlbnRQaG9uZU51bWJlci5sZW5ndGgmJnRoaXMuaGFuZGxlVmFsaWRhdGlvbigpLHRoaXMuJGVtaXQoImlucHV0Iix0KX0scmVzZXRQaG9uZU51bWJlcjpmdW5jdGlvbigpe3RoaXMuY3VycmVudFBob25lTnVtYmVyPSIiLHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIuZGlhbENvZGU9dGhpcy5zZWxlY3RlZENvdW50cnkuZGlhbENvZGUsdGhpcy5mb3JtYXRQaG9uZU51bWJlci5udW1iZXI9IiIsdGhpcy5jdXJyZW50UGhvbmVOdW1iZXI9dGhpcy5mb3JtYXRQaG9uZU51bWJlci5kaWFsQ29kZSx0aGlzLiRlbWl0KCJpbnB1dCIsdGhpcy5jdXJyZW50UGhvbmVOdW1iZXIpfSxzZXRQaG9uZU51bWJlcjpmdW5jdGlvbigpe3ZhciBlPXRoaXMuY3VycmVudFBob25lTnVtYmVyLnJlcGxhY2UoL1xEL2csIiIpLnNsaWNlKC0xMCk7dGhpcy5jdXJyZW50UGhvbmVOdW1iZXI9IiIsdGhpcy5mb3JtYXRQaG9uZU51bWJlci5kaWFsQ29kZT10aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZSx0aGlzLmZvcm1hdFBob25lTnVtYmVyLm51bWJlcj1lLHRoaXMuY3VycmVudFBob25lTnVtYmVyPSIiLmNvbmNhdCh0aGlzLmZvcm1hdFBob25lTnVtYmVyLmRpYWxDb2RlKS5jb25jYXQodGhpcy5mb3JtYXRQaG9uZU51bWJlci5udW1iZXIpfSxzZXRBY3RpdmU6ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlPSEwLHRoaXMuJGVtaXQoImZvY3VzIil9LHVuc2V0QWN0aXZlOmZ1bmN0aW9uKCl7dGhpcy5pc0FjdGl2ZSYmIXRoaXMuY3VycmVudFBob25lTnVtYmVyLmxlbmd0aD4wJiYodGhpcy5pc0FjdGl2ZT0hMSksdGhpcy5pc1JlcXVpcmVkPyF0aGlzLmhhbmRsZUlzRW1wdHkoKSYmdGhpcy52YWxpZGF0aW9uJiZ0aGlzLnZhbGlkYXRpb24ubGVuZ3RoJiZ0aGlzLmhhbmRsZVZhbGlkYXRpb24oKTp0aGlzLnZhbGlkYXRpb24mJnRoaXMudmFsaWRhdGlvbi5sZW5ndGgmJnRoaXMuY3VycmVudFBob25lTnVtYmVyLmxlbmd0aCYmdGhpcy5oYW5kbGVWYWxpZGF0aW9uKCksdGhpcy4kZW1pdCgiYmx1ciIpfSxoYW5kbGVFcnJvcjpmdW5jdGlvbihlLHQpe3RoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsZSx0KX0saGFuZGxlSW52YWxpZFR5cGU6ZnVuY3Rpb24oZSx0KXt0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLGUsdCl9LGhhbmRsZURyb3Bkb3duVG9nZ2xlOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7aWYoZSlyZXR1cm4gdGhpcy5pc1Bob25lRHJvcGRvd25PcGVuPWU7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmlzUGhvbmVEcm9wZG93bk9wZW49ZX0pLDMwMCl9LGhhbmRsZUlzRW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gTS5pc0VtcHR5KHRoaXMuY3VycmVudFBob25lTnVtYmVyKT8odGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMCksdGhpcy4kZW1pdCgidXBkYXRlOmludmFsaWRUeXBlIiwicmVxdWlyZWQiKSwhMCk6KHRoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsITEpLHRoaXMuJGVtaXQoInVwZGF0ZTppbnZhbGlkVHlwZSIsIiIpLCExKX0saGFuZGxlVmFsaWRhdGlvbjpmdW5jdGlvbigpe3RoaXMuY3VycmVudFBob25lTnVtYmVyLnN0YXJ0c1dpdGgoIjAiKT8odGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMCksdGhpcy4kZW1pdCgidXBkYXRlOmludmFsaWRUeXBlIiwic3RhcnRzX3dpdGhfemVybyIpKTp0aGlzLmlzUmVxdWlyZWQmJjA9PT10aGlzLmN1cnJlbnRQaG9uZU51bWJlci5sZW5ndGg/KHRoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsITApLHRoaXMuJGVtaXQoInVwZGF0ZTppbnZhbGlkVHlwZSIsInJlcXVpcmVkIikpOnRoaXMuaXNSZXF1aXJlZCYmdGhpcy5jdXJyZW50UGhvbmVOdW1iZXIubGVuZ3RoPD0zPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCEwKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCJpbnZhbGlkX2xlbmd0aCIpKTp0aGlzLmlzUmVxdWlyZWQmJnRoaXMuY3VycmVudFBob25lTnVtYmVyLmxlbmd0aD49ND90aGlzLmlzVmFsaWRFMTY0UGhvbmVOdW1iZXIodGhpcy5jdXJyZW50UGhvbmVOdW1iZXIpPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCExKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCIiKSk6KHRoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsITApLHRoaXMuJGVtaXQoInVwZGF0ZTppbnZhbGlkVHlwZSIsImludmFsaWRfY291bnRyeV9jb2RlIikpOih0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCExKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCIiKSl9LGlzVmFsaWRFMTY0UGhvbmVOdW1iZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKC9bXHNcLSgpXS9nLCIiKTtyZXR1cm4vXlsxLTldXGR7MSwxNH0kLy50ZXN0KHQpfX0sY29tcHV0ZWQ6e3Bob25lSW5wdXRQbHVzQ2xhc3NlczpmdW5jdGlvbigpe3JldHVyblsidGF3ay1waG9uZS1pbnB1dC1wbHVzIix0aGlzLmlzQWN0aXZlJiYidGF3ay1hY3RpdmUiXX19fSxzdD0obigiZDc4MiIpLHMoYXQsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZvcm0td3JhcHBlciB0YXdrLXBob25lLWlucHV0LXdyYXBwZXIiLHN0eWxlOnt6SW5kZXg6ZS5pc1Bob25lRHJvcGRvd25PcGVuPzEwOjB9fSxbdCgidGF3ay1waG9uZS1pbnB1dC1kcm9wZG93biIse2F0dHJzOnthc3NldFBhdGg6ZS5hc3NldFBhdGgsc2VsZWN0ZWRDb3VudHJ5OmUuc2VsZWN0ZWRDb3VudHJ5fSxvbjp7c2V0UGhvbmVOdW1iZXI6ZS5zZXRQaG9uZU51bWJlcixzZWxlY3RDb3VudHJ5OmUuc2VsZWN0Q291bnRyeSxkcm9wZG93blRvZ2dsZTplLmhhbmRsZURyb3Bkb3duVG9nZ2xlfX0pLHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXgtMSB0YXdrLWlubGluZSJ9LFt0KCJzcGFuIix7Y2xhc3M6ZS5waG9uZUlucHV0UGx1c0NsYXNzZXN9LFtlLl92KCIgKyAiKV0pLHQoInRhd2staW5wdXQiLHtyZWY6InNlYXJjaCIsc3RhdGljQ2xhc3M6InRhd2stcGhvbmUtaW5wdXQiLGF0dHJzOntsYWJlbDplLmxhYmVsLGlzUmVxdWlyZWQ6ZS5pc1JlcXVpcmVkLGVycm9yTWVzc2FnZTplLmVycm9yTWVzc2FnZSxpbnZhbGlkVHlwZTplLmludmFsaWRUeXBlLGlucHV0TW9kZToibnVtZXJpYyIsbmFtZToicGhvbmUiLHR5cGU6InRlbCJ9LG9uOntpbnB1dDplLnNlYXJjaCxmb2N1czplLnNldEFjdGl2ZSxibHVyOmUudW5zZXRBY3RpdmUsInVwZGF0ZTplcnJvck1lc3NhZ2UiOmZ1bmN0aW9uKHQpe2UuZXJyb3JNZXNzYWdlPXR9LCJ1cGRhdGU6ZXJyb3ItbWVzc2FnZSI6ZnVuY3Rpb24odCl7ZS5lcnJvck1lc3NhZ2U9dH0sInVwZGF0ZTplcnJvciI6ZS5oYW5kbGVFcnJvciwidXBkYXRlOmludmFsaWRUeXBlIjplLmhhbmRsZUludmFsaWRUeXBlfSxtb2RlbDp7dmFsdWU6ZS5jdXJyZW50UGhvbmVOdW1iZXIsY2FsbGJhY2s6ZnVuY3Rpb24odCl7ZS5jdXJyZW50UGhvbmVOdW1iZXI9dH0sZXhwcmVzc2lvbjoiY3VycmVudFBob25lTnVtYmVyIn19KV0sMSldLDEpfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLGx0PXtuYW1lOiJ0YXdrLXJhZGlvIixwcm9wczp7aWQ6U3RyaW5nLGxhYmVsOlN0cmluZyxjaGVja2VkOlN0cmluZyxvcHRpb25zOnt0eXBlOkFycmF5LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm5bXX19LGlzUmVxdWlyZWQ6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxlcnJvck1lc3NhZ2U6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2ludmFsaWRUeXBlOiIiLHNlbGVjdGVkOm51bGx9fSxjb21wdXRlZDp7bGFiZWxDbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWZvcm0tbGFiZWwgdGF3ay1mb3JtLWZpZWxkLWxhYmVsIix0aGlzLmludmFsaWRUeXBlJiYidGF3ay10ZXh0LXJlZC0xIl19LGVycm9yTGFiZWw6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2VbdGhpcy5pbnZhbGlkVHlwZV19fSxtZXRob2RzOntoYW5kbGVDaGFuZ2U6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQudmFsdWU7dGhpcy4kZW1pdCgiaW5wdXQiLGUudGFyZ2V0LnZhbHVlKSx0aGlzLmhhbmRsZVZhbGlkYXRpb24odCl9LGhhbmRsZVZhbGlkYXRpb246ZnVuY3Rpb24oZSl7dGhpcy5pc1JlcXVpcmVkJiYoZT8odGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMSksdGhpcy5pbnZhbGlkVHlwZT0iIik6KHRoaXMuJGVtaXQoInVwZGF0ZTplcnJvciIsITApLHRoaXMuaW52YWxpZFR5cGU9InJlcXVpcmVkIikpfSx2YWxpZGF0ZTpmdW5jdGlvbigpe3RoaXMuaGFuZGxlVmFsaWRhdGlvbih0aGlzLnNlbGVjdGVkKX19fSxjdD0obigiYmNhMCIpLHMobHQsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZvcm0td3JhcHBlciIsYXR0cnM6e3JvbGU6Imdyb3VwIiwiYXJpYS1sYWJlbGxlZGJ5IjplLmlkfX0sW3QoImxhYmVsIix7Y2xhc3M6ZS5sYWJlbENsYXNzZXMsYXR0cnM6e2lkOmUuaWR9fSxbZS5pc1JlcXVpcmVkP3QoInNwYW4iLFtlLl92KCIqIildKTplLl9lKCksZS5fdigiICIrZS5fcyhlLmxhYmVsKSsiICIpXSksZS5fbChlLm9wdGlvbnMsKGZ1bmN0aW9uKG4pe3JldHVybiB0KCJsYWJlbCIse2tleTpuLmlkLHN0YXRpY0NsYXNzOiJ0YXdrLXJhZGlvLWNvbnRhaW5lciJ9LFt0KCJpbnB1dCIsZS5fYih7cmVmOiJyYWRpb2J1dHRvbiIscmVmSW5Gb3I6ITAsc3RhdGljQ2xhc3M6InRhd2stcmFkaW8iLGF0dHJzOnt0eXBlOiJyYWRpbyIsbmFtZTpuLm5hbWUsZGlzYWJsZWQ6MT09bi5kaXNhYmxlZCxyZXF1aXJlZDplLmlzUmVxdWlyZWR9LGRvbVByb3BzOnt2YWx1ZTpuLnZhbHVlLGNoZWNrZWQ6bi52YWx1ZT09ZS5jaGVja2VkfSxvbjp7aW5wdXQ6ZS5oYW5kbGVDaGFuZ2V9fSwiaW5wdXQiLGUuJGF0dHJzLCExKSksdCgic3BhbiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZvcm0tbGFiZWwifSxbZS5fdihlLl9zKG4ubGFiZWwpKV0pLHQoInNwYW4iLHtzdGF0aWNDbGFzczoidGF3ay1jaGVja21hcmsifSldKX0pKSxlLmludmFsaWRUeXBlP3QoInNtYWxsIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1yZWQtMSB0YXdrLXRleHQtcmVndWxhci0xIHRhd2stbWFyZ2luLXNtYWxsLWxlZnQifSxbZS5fdigiICIrZS5fcyhlLmVycm9yTGFiZWwpKyIgIildKTplLl9lKCldLDIpfSksW10sITEsbnVsbCxudWxsLG51bGwpKS5leHBvcnRzLHV0PXtuYW1lOiJ0YXdrLXJhdGluZyIsY29tcG9uZW50czp7VGF3a0J1dHRvbjpXLFRhd2tJbWFnZTpHfSxwcm9wczp7aXNUZXh0Ont0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sdHlwZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoidGh1bWIifSxpc0xpa2VEaXNhYmxlZDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzRGlzbGlrZURpc2FibGVkOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sYXNzZXRQYXRoOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSx1cFZvdGVUZXh0Ont0eXBlOlN0cmluZyxkZWZhdWx0OiJZZXMifSxkb3duVm90ZVRleHQ6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6Ik5vIn19LG1ldGhvZHM6e2hhbmRsZUxpa2U6ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJsaWtlIil9LGhhbmRsZURpc2xpa2U6ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJkaXNsaWtlIil9fX0sZHQ9KG4oImE0NWIiKSxzKHV0LChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiB0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1yYXRpbmciLGF0dHJzOnsiYXJpYS1sYWJlbCI6ImFydGljbGUgcmF0aW5nIn19LFt0KCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXJhdGluZy1idXR0b24iLGF0dHJzOntkaXNhYmxlZDplLmlzTGlrZURpc2FibGVkLHJvbGU6Im9wdGlvbiIsImFyaWEtcG9zaW5zZXQiOiIxIiwiYXJpYS1zZXRzaXplIjoiMiIsbGFiZWw6ZS4kaTE4bj9lLiRpMThuKCJrYiIsInBvc2l0aXZlX3JhdGluZyIpOiJQb3NpdGl2ZSJ9LG9uOntjbGljazplLmhhbmRsZUxpa2V9fSxbZS5pc1RleHQ/dCgic3BhbiIsW2UuX3YoIiAiK2UuX3MoZS51cFZvdGVUZXh0KSsiICIpXSk6dCgidGF3ay1pbWFnZSIse2F0dHJzOntuYW1lOiJsaWtlICIuY29uY2F0KGUuaXNUZXh0PyJ0ZXh0IjoiaWNvbiIpLHNyYzoiIi5jb25jYXQoZS5hc3NldFBhdGgsIi9pbWFnZXMvcmF0aW5nLyIpLmNvbmNhdChlLnR5cGUsIi11cHZvdGUtMS5zdmciKX19KV0sMSksdCgidGF3ay1idXR0b24iLHtzdGF0aWNDbGFzczoidGF3ay1yYXRpbmctYnV0dG9uIixhdHRyczp7ZGlzYWJsZWQ6ZS5pc0Rpc2xpa2VEaXNhYmxlZCxyb2xlOiJvcHRpb24iLCJhcmlhLXBvc2luc2V0IjoiMiIsImFyaWEtc2V0c2l6ZSI6IjIiLGxhYmVsOmUuJGkxOG4/ZS4kaTE4bigia2IiLCJuZWdhdGl2ZV9yYXRpbmciKToiTmVnYXRpdmUifSxvbjp7Y2xpY2s6ZS5oYW5kbGVEaXNsaWtlfX0sW2UuaXNUZXh0P3QoInNwYW4iLFtlLl92KCIgIitlLl9zKGUuZG93blZvdGVUZXh0KSsiICIpXSk6dCgidGF3ay1pbWFnZSIse2F0dHJzOntuYW1lOiJkaXNsaWtlICIuY29uY2F0KGUuaXNUZXh0PyJ0ZXh0IjoiaWNvbiIpLHNyYzoiIi5jb25jYXQoZS5hc3NldFBhdGgsIi9pbWFnZXMvcmF0aW5nLyIpLmNvbmNhdChlLnR5cGUsIi1kb3dudm90ZS0xLnN2ZyIpfX0pXSwxKV0sMSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMscHQ9cyh7bmFtZToidGF3ay1zZWFyY2gtZHJvcGRvd24iLHByb3BzOntpc09wZW46e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfX19LChmdW5jdGlvbihlLHQpe3JldHVybiBlKCJkaXYiLHtjbGFzczpbInRhd2stc2VhcmNoLWRyb3Bkb3duIix0LnByb3BzLmlzT3BlbiYmInRhd2stb3BlbiIsdC5kYXRhLmNsYXNzLHQuZGF0YS5zdGF0aWNDbGFzc119LFt0Ll90KCJkZWZhdWx0IildLDIpfSksW10sITAsbnVsbCxudWxsLG51bGwpLmV4cG9ydHMsaHQ9cyh7bmFtZToidGF3ay1zZWFyY2gtbGlzdCIsY29tcG9uZW50czp7VGF3a0ljb246bCxUYXdrTG9hZGVyOmV0fSxwcm9wczp7aGlnaGxpZ2h0SXRlbTp7dHlwZTpOdW1iZXIsZGVmYXVsdDotMSxyZXF1aXJlZDohMH0saGlnaGxpZ2h0U2hvd0FsbDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzTG9hZGluZzp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITEscmVxdWlyZWQ6ITB9LG9wdGlvbnM6e3R5cGU6QXJyYXksZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybltdfSxyZXF1aXJlZDohMH0sb3B0aW9uc0xpbWl0Ont0eXBlOk51bWJlcixkZWZhdWx0OjEwLHJlcXVpcmVkOiEwfSxyZWR1Y2VkT3B0aW9uczp7dHlwZTpBcnJheSxkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuW119LHJlcXVpcmVkOiEwfSx0b3RhbFJlc3VsdHM6e3R5cGU6TnVtYmVyLGRlZmF1bHQ6MH0sdGV4dEFsaWduOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMH19LG1ldGhvZHM6e2hhbmRsZUNsaWNrOmZ1bmN0aW9uKGUpe3RoaXMuJGVtaXQoImhhbmRsZVNlbGVjdEl0ZW0iLGUpfSxoYW5kbGVTaG93QWxsOmZ1bmN0aW9uKCl7dGhpcy4kZW1pdCgiaGFuZGxlU2hvd0FsbCIpfX19LChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiB0KCJkaXYiLFtlLm9wdGlvbnMubGVuZ3RoP3QoInVsIix7c3RhdGljQ2xhc3M6InRhd2stc2VhcmNoLWxpc3QifSxbZS5vcHRpb25zLmxlbmd0aDxlLnRvdGFsUmVzdWx0cyYmIWUuaXNMb2FkaW5nP3QoImxpIix7Y2xhc3M6WyJ0YXdrLXNlYXJjaC1saXN0LXRpdGxlIiwidGF3ay1zZWFyY2gtbGlzdC10aXRsZS1idXR0b24iLCJ0YXdrLW91dGxpbmUiLGUuaGlnaGxpZ2h0U2hvd0FsbCYmInRhd2stYWN0aXZlIl0sYXR0cnM6e3RhYmluZGV4OiIwIn0sb246e2NsaWNrOmUuaGFuZGxlU2hvd0FsbH19LFt0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zZWFyY2gtbGlzdC10aXRsZS1pY29uIn0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJleWUifX0pXSwxKSx0KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zZWFyY2gtbGlzdC10aXRsZS1sYWJlbCIsYXR0cnM6e3JvbGU6InN0YXR1cyJ9fSxbZS4kaTE4bj90KCJwIixbZS5fdigiICIrZS5fcyhlLiRpMThuKCJrYiIsInNob3dfYWxsX3Jlc3VsdHMiLHtudW06ZS50b3RhbFJlc3VsdHN9KSkrIiAiKV0pOnQoInAiLFtlLl92KCIgU2hvdyBhbGwgcmVzdWx0cyAoIitlLl9zKGUudG90YWxSZXN1bHRzKSsiKSAiKV0pXSldKTplLl9lKCksZS5fbChlLnJlZHVjZWRPcHRpb25zLChmdW5jdGlvbihuLGkpe3JldHVybiB0KCJsaSIse2tleTpuLmlkLGNsYXNzOlsidGF3ay1mbGV4IiwidGF3ay1mbGV4LW1pZGRsZSIsInRhd2stb3V0bGluZSIsZS5oaWdobGlnaHRJdGVtPT09aT8idGF3ay1hY3RpdmUiOiIiLGUudGV4dEFsaWduJiYidGF3ay10ZXh0LXJpZ2h0IHRhd2stZmxleC1yb3ctcmV2ZXJzZSJdLG9uOntjbGljazpmdW5jdGlvbih0KXtyZXR1cm4gZS5oYW5kbGVDbGljayhuKX19fSxbdCgiZGl2Iix7Y2xhc3M6ZS50ZXh0QWxpZ24/InRhd2stbWFyZ2luLXNtYWxsLWxlZnQiOiJ0YXdrLW1hcmdpbi1zbWFsbC1yaWdodCJ9LFt0KCJzdmciLHtzdGF0aWNDbGFzczoidGF3ay1zZWFyY2gtbGlzdC1pY29uIixhdHRyczp7aGVpZ2h0OiIyNHB4Iix3aWR0aDoiMjRweCIsdmVyc2lvbjoiMS4xIixpZDoiTGF5ZXJfMSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwieG1sbnM6eGxpbmsiOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIix2aWV3Qm94OiIwIDAgMjAgMjUiLCJ4bWw6c3BhY2UiOiJwcmVzZXJ2ZSJ9fSxbdCgicGF0aCIse2F0dHJzOntkOiJNMTkuNzY1NzUsNy42OTA0M2MtMC4wNDc2Ny0wLjExMzc3LTAuMTE2NTgtMC4yMTYzMS0wLjIwMjIxLTAuMzAyNzNcblx0XHRcdFx0XHRcdGMtMC4wMDA5OC0wLjAwMDk4LTAuMDAxMjgtMC4wMDI0NC0wLjAwMjI2LTAuMDAzNDJsLTYuNjY2OTktNi42Njc5N2MtMC4wMDMzNi0wLjAwMzQyLTAuMDA4MTgtMC4wMDQzOS0wLjAxMTU0LTAuMDA3ODFcblx0XHRcdFx0XHRcdGMtMC4wODQ5LTAuMDgyMjgtMC4xODM5LTAuMTUwMzktMC4yOTQ4LTAuMTk2NzhjLTAuMTE0ODEtMC4wNDc4NS0wLjIzODc3LTAuMDczNzMtMC4zNjU1NC0wLjA3MzczSDMuMzMyNzZcblx0XHRcdFx0XHRcdGMtMS43NDkwMiwwLTMuMTcyMzYsMS40MjM4My0zLjE3MjM2LDMuMTcyODV2MTcuNzc5M2MwLDEuNzQ5MDIsMS40MjMzNCwzLjE3MTg4LDMuMTcyMzYsMy4xNzE4OGgxMy4zMzM5OFxuXHRcdFx0XHRcdFx0YzEuNzQ5NTEsMCwzLjE3Mjg1LTEuNDIyODUsMy4xNzI4NS0zLjE3MTg4VjguMDU2MTVDMTkuODM5Niw3LjkyOTIsMTkuODEzNzIsNy44MDU0MiwxOS43NjU3NSw3LjY5MDQzeiBNMTMuMTcyNjEsMy42ODIzN1xuXHRcdFx0XHRcdFx0bDMuNDIzMSwzLjQyMzU4aC0zLjQyMzFWMy42ODIzN3ogTTE2LjY2Njc1LDIyLjY2MTYySDMuMzMyNzZjLTAuNzAxNjYsMC0xLjI3MTk3LTAuNTcwMzEtMS4yNzE5Ny0xLjI3MTQ4VjMuNjEwODRcblx0XHRcdFx0XHRcdGMwLTAuNzAyMTUsMC41NzAzMS0xLjI3MjQ2LDEuMjcxOTctMS4yNzI0Nmg3LjkzOTQ1djUuNzE3NzdjMCwwLjUyNDQxLDAuNDI1MjksMC45NTAyLDAuOTUwMiwwLjk1MDJoNS43MTY4djEyLjM4Mzc5XG5cdFx0XHRcdFx0XHRDMTcuOTM5MjEsMjIuMDkxMzEsMTcuMzY4NDEsMjIuNjYxNjIsMTYuNjY2NzUsMjIuNjYxNjJ6IE0xNS4zOTQ3OCwxMy42MTE4MmMwLDAuNTI0NDEtMC40MjUyOSwwLjk1MDItMC45NTAyLDAuOTUwMkg1LjU1NDkzXG5cdFx0XHRcdFx0XHRjLTAuNTI0OSwwLTAuOTUwMi0wLjQyNTc4LTAuOTUwMi0wLjk1MDJzMC40MjUyOS0wLjk1MDIsMC45NTAyLTAuOTUwMmg4Ljg4OTY1XG5cdFx0XHRcdFx0XHRDMTQuOTY5NDgsMTIuNjYxNjIsMTUuMzk0NzgsMTMuMDg3NCwxNS4zOTQ3OCwxMy42MTE4MnogTTE1LjM5NDc4LDE4LjA1NjE1YzAsMC41MjQ0MS0wLjQyNTI5LDAuOTUwMi0wLjk1MDIsMC45NTAySDUuNTU0OTNcblx0XHRcdFx0XHRcdGMtMC41MjQ5LDAtMC45NTAyLTAuNDI1NzgtMC45NTAyLTAuOTUwMnMwLjQyNTI5LTAuOTUwMiwwLjk1MDItMC45NTAyaDguODg5NjVcblx0XHRcdFx0XHRcdEMxNC45Njk0OCwxNy4xMDU5NiwxNS4zOTQ3OCwxNy41MzE3NCwxNS4zOTQ3OCwxOC4wNTYxNXogTTQuNjA0NzQsOS4xNjY1YzAtMC41MjQ0MSwwLjQyNTI5LTAuOTUwMiwwLjk1MDItMC45NTAyaDIuMjIyNjZcblx0XHRcdFx0XHRcdGMwLjUyNDksMCwwLjk1MDIsMC40MjU3OCwwLjk1MDIsMC45NTAycy0wLjQyNTI5LDAuOTUwMi0wLjk1MDIsMC45NTAySDUuNTU0OTNDNS4wMzAwMywxMC4xMTY3LDQuNjA0NzQsOS42OTA5Miw0LjYwNDc0LDkuMTY2NXoiLCJmaWxsLXJ1bGUiOiJldmVub2RkIiwiY2xpcC1ydWxlIjoiZXZlbm9kZCJ9fSldKV0pLHQoImRpdiIsW3QoInAiLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZ3VsYXItMiIsZG9tUHJvcHM6e2lubmVySFRNTDplLl9zKG4udGl0bGUpfX0pLG4uc3VidGl0bGUubGVuZ3RoP3QoInAiLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZ3VsYXItMiIsZG9tUHJvcHM6e2lubmVySFRNTDplLl9zKG4uc3VidGl0bGUpfX0pOmUuX2UoKV0pXSl9KSldLDIpOmUuX2UoKSxlLmlzTG9hZGluZz90KCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zZWFyY2gtbG9hZGVyIHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIn0sW3QoInRhd2stbG9hZGVyIix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXNtYWxsLXJpZ2h0IixhdHRyczp7dHlwZToiaWNvbiJ9fSksdCgidGF3ay1sb2FkZXIiKV0sMSk6ZS5fZSgpXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxmdD17bmFtZToidGF3ay1zZWFyY2giLGNvbXBvbmVudHM6e1Rhd2tJY29uOmwsVGF3a1NlYXJjaERyb3Bkb3duOnB0LFRhd2tTZWFyY2hMaXN0Omh0LFRhd2tCdXR0b246V30scHJvcHM6e2hhc0ljb246e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiEwfSxpY29uRmxpcDp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LGlzTG9hZGluZzp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITEscmVxdWlyZWQ6ITB9LGlzT3Blbjp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITEscmVxdWlyZWQ6ITB9LG9wdGlvbnM6e3R5cGU6QXJyYXksZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybltdfSxyZXF1aXJlZDohMH0sb3B0aW9uc0xpbWl0Ont0eXBlOk51bWJlcixkZWZhdWx0OjEwfSxzZWFyY2hEZWxheTp7dHlwZTpOdW1iZXIsZGVmYXVsdDoxZTN9LHZhbHVlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxwbGFjZWhvbGRlclRleHQ6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IlNlYXJjaCBIZXJlIn0sdG90YWxSZXN1bHRzOnt0eXBlOk51bWJlcixkZWZhdWx0OjB9LGJ0bkNsYXNzOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSx0YWJpbmRleDp7dHlwZTpOdW1iZXIsZGVmYXVsdDowfX0sZGF0YTpmdW5jdGlvbigpe3JldHVybntldmVudDpudWxsLGhhc1ZhbHVlOiExLGhpZ2hsaWdodEl0ZW06LTEsaGlnaGxpZ2h0U2hvd0FsbDohMX19LGNyZWF0ZWQ6ZnVuY3Rpb24oKXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuaGFuZGxlQ2xvc2VEcm9wZG93bil9LGJlZm9yZURlc3Ryb3k6ZnVuY3Rpb24oKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuaGFuZGxlQ2xvc2VEcm9wZG93bil9LHdhdGNoOntvcHRpb25zOmZ1bmN0aW9uKCl7dGhpcy5oaWdobGlnaHRJdGVtPS0xfX0sY29tcHV0ZWQ6e2ljb25DbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLXNlYXJjaC1pY29uIix0aGlzLmljb25GbGlwJiYidGF3ay1zZWFyY2gtaWNvbi1mbGlwIl19LHJlZHVjZWRPcHRpb25zOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5zbGljZSgwLHRoaXMub3B0aW9uc0xpbWl0KX19LG1ldGhvZHM6e2Nsb3NlRHJvcGRvd246ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJ1cGRhdGU6aXNPcGVuIiwhMSksdGhpcy5oaWdobGlnaHRJdGVtPS0xLHRoaXMuaGlnaGxpZ2h0U2hvd0FsbD0hMX0saGFuZGxlQ2xlYXJJbnB1dDpmdW5jdGlvbigpe3RoaXMuJHJlZnMuaW5wdXQudmFsdWUubGVuZ3RoJiYodGhpcy5oYW5kbGVDbGVhclZhbHVlKCksdGhpcy5jbG9zZURyb3Bkb3duKCksdGhpcy4kZW1pdCgiY2xlYXJJbnB1dCIpKX0saGFuZGxlQ2xlYXJWYWx1ZTpmdW5jdGlvbigpe3RoaXMuJHJlZnMuaW5wdXQudmFsdWU9IiIsdGhpcy5oYXNWYWx1ZT0hMX0saGFuZGxlQ2xvc2VEcm9wZG93bjpmdW5jdGlvbihlKXt0aGlzLiRlbC5jb250YWlucyhlLnRhcmdldCl8fHRoaXMuY2xvc2VEcm9wZG93bigpfSxoYW5kbGVFbnRlclNlbGVjdEl0ZW06ZnVuY3Rpb24oKXtpZih0aGlzLmhpZ2hsaWdodFNob3dBbGx8fC0xPT09dGhpcy5oaWdobGlnaHRJdGVtKXRoaXMuaGFuZGxlU2hvd0FsbCgpLHRoaXMuaGFuZGxlRm9jdXNPdXQoKTtlbHNle3ZhciBlPXt9O3RoaXMub3B0aW9ucy5sZW5ndGgmJihlPXRoaXMucmVkdWNlZE9wdGlvbnNbdGhpcy5oaWdobGlnaHRJdGVtXSksdGhpcy5oYW5kbGVTZWxlY3RJdGVtKGUpfX0saGFuZGxlRm9jdXM6ZnVuY3Rpb24oKXt0aGlzLiRlbWl0KCJ1cGRhdGU6aXNPcGVuIiwhMCksdGhpcy4kcmVmcy5pbnB1dC5mb2N1cygpfSxoYW5kbGVGb2N1c091dDpmdW5jdGlvbigpe3RoaXMuY2xvc2VEcm9wZG93bigpLHRoaXMuJHJlZnMuaW5wdXQuYmx1cigpfSxoYW5kbGVIaWdobGlnaHRJdGVtOmZ1bmN0aW9uKGUpe3ZhciB0O3RoaXMub3B0aW9ucy5sZW5ndGgmJih0PXRoaXMucmVkdWNlZE9wdGlvbnMubGVuZ3RoLTEpLGU+dD90aGlzLm9wdGlvbnMubGVuZ3RoJiZ0aGlzLm9wdGlvbnMubGVuZ3RoPnRoaXMub3B0aW9uc0xpbWl0Pyh0aGlzLmhpZ2hsaWdodFNob3dBbGw9ITAsdGhpcy5oaWdobGlnaHRJdGVtPS0xKToodGhpcy5oaWdobGlnaHRTaG93QWxsPSExLHRoaXMuaGlnaGxpZ2h0SXRlbT0wKTplPDA/dGhpcy5vcHRpb25zLmxlbmd0aCYmIXRoaXMuaGlnaGxpZ2h0U2hvd0FsbCYmdGhpcy5vcHRpb25zLmxlbmd0aD50aGlzLm9wdGlvbnNMaW1pdD8odGhpcy5oaWdobGlnaHRTaG93QWxsPSEwLHRoaXMuaGlnaGxpZ2h0SXRlbT0tMSk6KHRoaXMuaGlnaGxpZ2h0U2hvd0FsbD0hMSx0aGlzLmhpZ2hsaWdodEl0ZW09dCk6ZTw9dCYmKDA9PWUmJi0xPT10aGlzLmhpZ2hsaWdodEl0ZW0mJiF0aGlzLmhpZ2hsaWdodFNob3dBbGwmJnRoaXMub3B0aW9ucy5sZW5ndGg+dGhpcy5vcHRpb25zTGltaXQ/KHRoaXMuaGlnaGxpZ2h0U2hvd0FsbD0hMCx0aGlzLmhpZ2hsaWdodEl0ZW09LTEpOih0aGlzLmhpZ2hsaWdodFNob3dBbGw9ITEsdGhpcy5oaWdobGlnaHRJdGVtPWUpKX0saGFuZGxlSW5wdXQ6ZnVuY3Rpb24oZSl7dGhpcy4kZW1pdCgiaW5wdXQiLGUudGFyZ2V0LnZhbHVlKSx0aGlzLmhhbmRsZVR5cGluZyhlKX0saGFuZGxlU2VsZWN0SXRlbTpmdW5jdGlvbihlKXtjbGVhclRpbWVvdXQodGhpcy5ldmVudCksdGhpcy4kZW1pdCgic2VsZWN0T3B0aW9uIixlKSx0aGlzLmhhbmRsZUNsZWFyVmFsdWUoKX0saGFuZGxlU2hvd0FsbDpmdW5jdGlvbigpe2NsZWFyVGltZW91dCh0aGlzLmV2ZW50KSx0aGlzLiRlbWl0KCJzaG93QWxsIiksdGhpcy5oYW5kbGVDbGVhclZhbHVlKCksdGhpcy5jbG9zZURyb3Bkb3duKCl9LGhhbmRsZVR5cGluZzpmdW5jdGlvbihlKXt2YXIgdD10aGlzO2lmKCJpbnB1dCIhPT1lLnR5cGUmJmUua2V5KXt2YXIgbj1lLmtleSxpPS9eW2EtekEtWjAtOV0kLy50ZXN0KG4pLHI9WyJCYWNrc3BhY2UiLCJEZWxldGUiXS5pbmNsdWRlcyhuKTtpZighaSYmIXIpcmV0dXJufWNsZWFyVGltZW91dCh0aGlzLmV2ZW50KSx0aGlzLiRyZWZzJiZ0aGlzLiRyZWZzLmlucHV0JiYodGhpcy4kcmVmcy5pbnB1dC52YWx1ZS5sZW5ndGg+MT90aGlzLmhhc1ZhbHVlPSEwOnRoaXMuaGFzVmFsdWU9ITEsdGhpcy5ldmVudD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuJGVtaXQoInN1Ym1pdFNlYXJjaCIpfSksdGhpcy5zZWFyY2hEZWxheSkpfSxmb2N1c0lucHV0OmZ1bmN0aW9uKCl7dGhpcy4kcmVmcy5pbnB1dC5mb2N1cygpLHRoaXMuaGFzVmFsdWUmJnRoaXMuJGVtaXQoInNob3dBbGwiKX19LGRpcmVjdGl2ZXM6eyJjbGljay1vdXRzaWRlIjp7YmluZDpmdW5jdGlvbihlLHQsbil7RGU9ZnVuY3Rpb24odCl7ZS5jb250YWlucyh0LnRhcmdldCl8fG4uY29udGV4dC5jbG9zZURyb3Bkb3duKCl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixEZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsRGUpfSx1bmJpbmQ6ZnVuY3Rpb24oKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsRGUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLERlKX19fX0sZ3Q9KG4oIjYzOTgiKSxzKGZ0LChmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLl9zZWxmLl9jO3JldHVybiB0KCJkaXYiLGUuX2Ioe3N0YXRpY0NsYXNzOiJ0YXdrLXNlYXJjaC13cmFwcGVyIn0sImRpdiIsZS4kYXR0cnMsITEpLFt0KCJpbnB1dCIse2RpcmVjdGl2ZXM6W3tuYW1lOiJjbGljay1vdXRzaWRlIixyYXdOYW1lOiJ2LWNsaWNrLW91dHNpZGUifV0scmVmOiJpbnB1dCIsc3RhdGljQ2xhc3M6InRhd2staW5wdXQgdGF3ay1zZWFyY2giLGNsYXNzOltlLmljb25GbGlwPyJ0YXdrLXNlYXJjaC1sZWZ0LXBhZGRpbmciOiJ0YXdrLXNlYXJjaC1yaWdodC1wYWRkaW5nIl0sYXR0cnM6e3R5cGU6InRleHQiLHBsYWNlaG9sZGVyOmUucGxhY2Vob2xkZXJUZXh0LHRpdGxlOmUucGxhY2Vob2xkZXJUZXh0LHRhYmluZGV4OmUudGFiaW5kZXh9LG9uOntmb2N1czplLmhhbmRsZUZvY3VzLGlucHV0OmUuaGFuZGxlSW5wdXQsa2V5dXA6ZS5oYW5kbGVUeXBpbmcsa2V5ZG93bjpbZnVuY3Rpb24odCl7cmV0dXJuIXQudHlwZS5pbmRleE9mKCJrZXkiKSYmZS5fayh0LmtleUNvZGUsImRlbGV0ZSIsWzgsNDZdLHQua2V5LFsiQmFja3NwYWNlIiwiRGVsZXRlIiwiRGVsIl0pP251bGw6ZS5oYW5kbGVUeXBpbmcuYXBwbHkobnVsbCxhcmd1bWVudHMpfSxmdW5jdGlvbih0KXtyZXR1cm4hdC50eXBlLmluZGV4T2YoImtleSIpJiZlLl9rKHQua2V5Q29kZSwidXAiLDM4LHQua2V5LFsiVXAiLCJBcnJvd1VwIl0pP251bGw6KHQuc3RvcFByb3BhZ2F0aW9uKCksZS5oYW5kbGVIaWdobGlnaHRJdGVtKGUuaGlnaGxpZ2h0SXRlbS0xKSl9LGZ1bmN0aW9uKHQpe3JldHVybiF0LnR5cGUuaW5kZXhPZigia2V5IikmJmUuX2sodC5rZXlDb2RlLCJkb3duIiw0MCx0LmtleSxbIkRvd24iLCJBcnJvd0Rvd24iXSk/bnVsbDoodC5zdG9wUHJvcGFnYXRpb24oKSxlLmhhbmRsZUhpZ2hsaWdodEl0ZW0oZS5oaWdobGlnaHRJdGVtKzEpKX0sZnVuY3Rpb24odCl7cmV0dXJuIXQudHlwZS5pbmRleE9mKCJrZXkiKSYmZS5fayh0LmtleUNvZGUsImVudGVyIiwxMyx0LmtleSwiRW50ZXIiKT9udWxsOmUuaGFuZGxlRW50ZXJTZWxlY3RJdGVtLmFwcGx5KG51bGwsYXJndW1lbnRzKX0sZnVuY3Rpb24odCl7cmV0dXJuIXQudHlwZS5pbmRleE9mKCJrZXkiKSYmZS5fayh0LmtleUNvZGUsImVzYyIsMjcsdC5rZXksWyJFc2MiLCJFc2NhcGUiXSk/bnVsbDplLmhhbmRsZUZvY3VzT3V0LmFwcGx5KG51bGwsYXJndW1lbnRzKX1dfX0pLGUuaGFzVmFsdWU/dCgidGF3ay1idXR0b24iLHtzdGF0aWNDbGFzczoidGF3ay1zZWFyY2gtYnV0dG9uLWNsb3NlIixjbGFzczpbZS5pY29uRmxpcD8idGF3ay1zZWFyY2gtbGVmdC1idXR0b24iOiJ0YXdrLXNlYXJjaC1yaWdodC1idXR0b24iXSxhdHRyczp7aXNSb3VuZGVkOiEwLGxhYmVsOmUuJGkxOG4/ZS4kaTE4bigia2IiLCJjbGVhcl9zZWFyY2giKToiQ2xlYXIgU2VhcmNoIix0YWJpbmRleDplLnRhYmluZGV4fSxvbjp7Y2xpY2s6ZS5oYW5kbGVDbGVhcklucHV0fX0sW3QoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ4In19KV0sMSk6ZS5fZSgpLHQoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stc2VhcmNoLWJ1dHRvbiB0YXdrLWJ1dHRvbi1ob3ZlciIsY2xhc3M6W2UuaWNvbkZsaXA/InRhd2stc2VhcmNoLXJpZ2h0LWJ1dHRvbiI6InRhd2stc2VhcmNoLWxlZnQtYnV0dG9uIixlLmJ0bkNsYXNzXSxhdHRyczp7aXNUZXh0OiEwLGxhYmVsOmUuJGkxOG4/ZS4kaTE4bigia2IiLCJzdWJtaXRfc2VhcmNoIik6IlN1Ym1pdCBTZWFyY2giLHRhYmluZGV4OmUudGFiaW5kZXh9LG9uOntjbGljazplLmZvY3VzSW5wdXR9fSxbZS5oYXNJY29uP3QoInRhd2staWNvbiIse2NsYXNzOmUuaWNvbkNsYXNzZXMsYXR0cnM6e3R5cGU6InNlYXJjaCJ9fSk6ZS5fZSgpXSwxKSx0KCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6InNsaWRlLWZhZGUifX0sW2UuaXNPcGVuP3QoInRhd2stc2VhcmNoLWRyb3Bkb3duIix7YXR0cnM6e2lzT3BlbjplLmlzT3Blbn19LFt0KCJ0YXdrLXNlYXJjaC1saXN0Iix7YXR0cnM6e2lzTG9hZGluZzplLmlzTG9hZGluZyxvcHRpb25zOmUub3B0aW9ucyxvcHRpb25zTGltaXQ6ZS5vcHRpb25zTGltaXQscmVkdWNlZE9wdGlvbnM6ZS5yZWR1Y2VkT3B0aW9ucyxoaWdobGlnaHRJdGVtOmUuaGlnaGxpZ2h0SXRlbSxoaWdobGlnaHRTaG93QWxsOmUuaGlnaGxpZ2h0U2hvd0FsbCx0b3RhbFJlc3VsdHM6ZS50b3RhbFJlc3VsdHMsdGV4dEFsaWduOmUuaWNvbkZsaXB9LG9uOntoYW5kbGVTZWxlY3RJdGVtOmUuaGFuZGxlU2VsZWN0SXRlbSxoYW5kbGVTaG93QWxsOmUuaGFuZGxlU2hvd0FsbH19KV0sMSk6ZS5fZSgpXSwxKV0sMSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsbXQ9e25hbWU6InRhd2stdGV4dGFyZWEiLG1peGluczpbb2VdLHByb3BzOntlcnJvck1lc3NhZ2U6e3R5cGU6T2JqZWN0LGRlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm57fX19LGlzUmVxdWlyZWQ6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxpc1N1Y2Nlc3M6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxsYWJlbDp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sdmFsdWU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LHZhbGlkYXRpb246e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LGludmFsaWRUeXBlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSx3aWR0aDpOdW1iZXJ9LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aXNBY3RpdmU6ITEsdGV4dGFyZWFJZDoiIn19LGNyZWF0ZWQ6ZnVuY3Rpb24oKXt0aGlzLmhhbmRsZUlkKCl9LG1vdW50ZWQ6ZnVuY3Rpb24oKXt0aGlzLmN1c3RvbVN0eWxlKHRoaXMuJHJlZnMudGV4dGFyZWEuY2xpZW50SGVpZ2h0LHRoaXMuJHJlZnMubGFiZWwuY2xpZW50SGVpZ2h0KX0sY29tcHV0ZWQ6e2hhbmRsZVdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJueyJtYXgtd2lkdGgiOiF0aGlzLndpZHRofHwiIi5jb25jYXQodGhpcy53aWR0aCwicHggIWltcG9ydGFudCIpfX0sdGV4dGFyZWFDbGFzczpmdW5jdGlvbigpe3JldHVyblsidGF3ay10ZXh0YXJlYSB0YXdrLXBhZGRpbmctc21hbGwgdGF3ay1ib3JkZXItcmFkaXVzIix0aGlzLmludmFsaWRUeXBlJiYidGF3ay1mb3JtLWRhbmdlciIsdGhpcy5pc1N1Y2Nlc3MmJiJ0YXdrLWZvcm0tc3VjY2VzcyJdfSxsYWJlbENsYXNzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWZvcm0tbGFiZWwiLHRoaXMuaW52YWxpZFR5cGUmJiJ0YXdrLXRleHQtcmVkLTEiLHRoaXMuaXNTdWNjZXNzJiYidGF3ay10ZXh0LWdyZWVuLTEiLHRoaXMuaXNBY3RpdmV8fHRoaXMuJHByb3BzLnZhbHVlPyJ0YXdrLWFjdGl2ZSI6IiIsdGhpcy5sYWJlbEN1c3RvbVNpemU/InRhd2stZm9ybS1sYWJlbC1jdXN0b20tc3R5bGUiOiIiXX0sZXJyb3JMYWJlbDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVycm9yTWVzc2FnZVt0aGlzLmludmFsaWRUeXBlXX19LG1ldGhvZHM6e3NldEFjdGl2ZTpmdW5jdGlvbigpe3RoaXMuaXNBY3RpdmU9ITAsdGhpcy4kZW1pdCgiZm9jdXMiKX0sdW5zZXRBY3RpdmU6ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlJiYhdGhpcy4kcmVmcy50ZXh0YXJlYS52YWx1ZS5sZW5ndGg+MCYmKHRoaXMuaXNBY3RpdmU9ITEpLHRoaXMuaXNSZXF1aXJlZD8hdGhpcy5oYW5kbGVJc0VtcHR5KCkmJnRoaXMudmFsaWRhdGlvbi5sZW5ndGgmJnRoaXMuaGFuZGxlVmFsaWRhdGlvbigpOnRoaXMudmFsaWRhdGlvbi5sZW5ndGgmJnRoaXMuaGFuZGxlVmFsaWRhdGlvbigpLHRoaXMuJGVtaXQoImJsdXIiKX0saGFuZGxlSW5wdXQ6ZnVuY3Rpb24oZSl7dGhpcy4kZW1pdCgiaW5wdXQiLGUudGFyZ2V0LnZhbHVlKX0saGFuZGxlSWQ6ZnVuY3Rpb24oKXt2b2lkIDA9PT10aGlzLiRhdHRycy5pZHx8IiI9PT10aGlzLiRhdHRycy5pZD90aGlzLnRleHRhcmVhSWQ9TS5nZW5lcmF0ZVVVSUQoKTp0aGlzLnRleHRhcmVhSWQ9dGhpcy4kYXR0cnMuaWR9LGhhbmRsZUlzRW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gTS5pc0VtcHR5KHRoaXMuJHJlZnMudGV4dGFyZWEudmFsdWUpPyh0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCEwKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLCJyZXF1aXJlZCIpLCEwKToodGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMSksdGhpcy4kZW1pdCgidXBkYXRlOmludmFsaWRUeXBlIiwiIiksITEpfSxoYW5kbGVWYWxpZGF0aW9uOmZ1bmN0aW9uKCl7TS5pc1ZhbGlkKHt2YWx1ZTp0aGlzLiRyZWZzLnRleHRhcmVhLnZhbHVlLHR5cGU6dGhpcy52YWxpZGF0aW9ufSkuaXNWYWxpZD8odGhpcy4kZW1pdCgidXBkYXRlOmVycm9yIiwhMSksdGhpcy4kZW1pdCgidXBkYXRlOmludmFsaWRUeXBlIiwiIikpOih0aGlzLiRlbWl0KCJ1cGRhdGU6ZXJyb3IiLCEwKSx0aGlzLiRlbWl0KCJ1cGRhdGU6aW52YWxpZFR5cGUiLHRoaXMudmFsaWRhdGlvbikpfSx2YWxpZGF0ZTpmdW5jdGlvbigpe3RoaXMudW5zZXRBY3RpdmUoKX19fSx5dD0obigiMjliNiIpLHMobXQsKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PWUuX3NlbGYuX2M7cmV0dXJuIHQoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZvcm0td3JhcHBlciIsc3R5bGU6ZS5oYW5kbGVXaWR0aH0sW3QoInRleHRhcmVhIixlLl9iKHtyZWY6InRleHRhcmVhIixjbGFzczplLnRleHRhcmVhQ2xhc3Msc3R5bGU6ZS5pbnB1dEN1c3RvbVN0eWxlLGF0dHJzOntyb2xlOiJ0ZXh0YXJlYSIsaWQ6ZS50ZXh0YXJlYUlkLHJlcXVpcmVkOmUuaXNSZXF1aXJlZCwiYXJpYS1yZXF1aXJlZCI6ZS5pc1JlcXVpcmVkLCJhcmlhLXBsYWNlaG9sZGVyIjplLmxhYmVsLCJhcmlhLWxhYmVsIjoobnVsbD09PWUubGFiZWx8fDA9PT1lLmxhYmVsLmxlbmd0aCkmJiJJbnB1dCBmaWVsZCIsImFyaWEtbGFiZWxsYnkiOiEobnVsbD09PWUubGFiZWx8fCFlLmxhYmVsLmxlbmd0aCkmJmUudGV4dGFyZWFJZCxtYXhsZW5ndGg6IjUwMCJ9LGRvbVByb3BzOnt2YWx1ZTplLnZhbHVlfSxvbjp7Zm9jdXM6ZS5zZXRBY3RpdmUsYmx1cjplLnVuc2V0QWN0aXZlLGlucHV0OmUuaGFuZGxlSW5wdXR9fSwidGV4dGFyZWEiLGUuJGF0dHJzLCExKSksdCgibGFiZWwiLHtyZWY6ImxhYmVsIixjbGFzczplLmxhYmVsQ2xhc3MsYXR0cnM6e2ZvcjplLnRleHRhcmVhSWR9fSxbZS5pc1JlcXVpcmVkP3QoInNwYW4iLFtlLl92KCIqIildKTplLl9lKCksZS5fdigiICIrZS5fcyhlLmxhYmVsKSldKSxlLmludmFsaWRUeXBlP3QoInNtYWxsIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1yZWQtMSB0YXdrLXRleHQtcmVndWxhci0xIn0sW2UuX3YoIiAiK2UuX3MoZS5lcnJvckxhYmVsKSsiICIpXSk6ZS5fZSgpXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsdnQ9MzZlNSxidD17bmFtZToidGF3ay10aW1lYWdvIixwcm9wczp7ZGF0ZXRpbWU6e3R5cGU6W1N0cmluZyxEYXRlLE51bWJlcl0scmVxdWlyZWQ6ITB9LGlzTGl2ZTp7dHlwZTpCb29sZWFufSxpc0R1cmF0aW9uOnt0eXBlOkJvb2xlYW59LHRpbWVPbmx5Ont0eXBlOkJvb2xlYW59LGZvcm1hdDp7dHlwZTpPYmplY3QsZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybntqdXN0OiJKdXN0IE5vdyIscGFzdDoiI3RpbWUgYWdvIix0b2RheToiVG9kYXksICN0aW1lIixzZWNvbmQ6e29uZToiI251bSBzZWNvbmQiLG90aGVyOiIjbnVtIHNlY29uZHMifSxtaW51dGU6e29uZToiI251bSBtaW51dGUiLG90aGVyOiIjbnVtIG1pbnV0ZXMifSxob3VyOntvbmU6IiNudW0gaG91ciIsb3RoZXI6IiNudW0gaG91cnMifSxkYXlzOlsiU3VuZGF5IiwiTW9uZGF5IiwiVHVlc2RheSIsIldlZG5lc2RheSIsIlRodXJzZGF5IiwiRnJpZGF5IiwiU2F0dXJkYXkiXSxtb250aHM6WyJKYW51YXJ5IiwiRmVicnVhcnkiLCJNYXJjaCIsIkFwcmlsIiwiTWF5IiwiSnVuZSIsIkp1bHkiLCJBdWd1c3QiLCJTZXB0ZW1iZXIiLCJPY3RvYmVyIiwiTm92ZW1iZXIiLCJEZWNlbWJlciJdfX19LHBsdXJhbGl6ZTp7dHlwZTpGdW5jdGlvbixkZWZhdWx0OmZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZT8ib25lIjoib3RoZXIifX19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57cmVmcmVzaE1pbGxpU2Vjb25kczo2ZTQsdXBkYXRlSW50ZXJ2YWw6bnVsbH19LG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuZGlzcGxheSgpLHRoaXMuaXNMaXZlJiYodGhpcy51cGRhdGVJbnRlcnZhbD1zZXRJbnRlcnZhbCgoZnVuY3Rpb24oKXtlLmRpc3BsYXkoKX0pLHRoaXMucmVmcmVzaE1pbGxpU2Vjb25kcykpfSxiZWZvcmVEZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy51cGRhdGVJbnRlcnZhbCYmY2xlYXJJbnRlcnZhbCh0aGlzLnVwZGF0ZUludGVydmFsKX0sbWV0aG9kczp7ZGlzcGxheTpmdW5jdGlvbigpe3ZhciBlO2U9dGhpcy5pc0R1cmF0aW9uP3RoaXMuZ2V0RHVyYXRpb24oKTp0aGlzLnRpbWVPbmx5P3RoaXMuZ2V0VGltZU9ubHkoKTp0aGlzLmdldERhdGVUaW1lKCksdGhpcy4kZWwudGV4dENvbnRlbnQ9ZX0sZGlmZmVyZW5jZTpmdW5jdGlvbihlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIERhdGUmJihlPWUuZ2V0VGltZSgpKSxNYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLWUpfSxnZXREdXJhdGlvbjpmdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy50b0RhdGUodGhpcy5kYXRldGltZSksbj10aGlzLmRpZmZlcmVuY2UodCksaT10aGlzLmZvcm1hdC5wYXN0O2lmKG48NmU0KXJldHVybiB0aGlzLmZvcm1hdC5qdXN0O2lmKG48dnQpe3ZhciByPU1hdGgucm91bmQobi82ZTQpLG89dGhpcy5wbHVyYWxpemUocik7ZT10aGlzLmZvcm1hdC5taW51dGVbb10ucmVwbGFjZSgiI251bSIscil9ZWxzZXt2YXIgYT1NYXRoLnJvdW5kKG4vdnQpLHM9dGhpcy5wbHVyYWxpemUoYSk7ZT10aGlzLmZvcm1hdC5ob3VyW3NdLnJlcGxhY2UoIiNudW0iLGEpfXJldHVybiBpLnJlcGxhY2UoIiN0aW1lIixlKX0sZ2V0VGltZU9ubHk6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLnRvRGF0ZSh0aGlzLmRhdGV0aW1lKSx0PWUuZ2V0SG91cnMoKSxuPWUuZ2V0TWludXRlcygpO3JldHVybiB0PDEwJiYodD0iMCIrdCksbjwxMCYmKG49IjAiK24pLHQrIjoiK259LGdldERhdGVUaW1lOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy50b0RhdGUodGhpcy5kYXRldGltZSksdD1uZXcgRGF0ZSxuPXRoaXMuZ2V0VGltZU9ubHkoKTtpZihlLnNldEhvdXJzKDAsMCwwLDApPT10LnNldEhvdXJzKDAsMCwwLDApKXJldHVybiB0aGlzLmZvcm1hdC50b2RheS5yZXBsYWNlKCIjdGltZSIsbik7dmFyIGk9TWF0aC5mbG9vcigodC1lKS84NjRlNSkscj10aGlzLmZvcm1hdC5kYXlzW2UuZ2V0RGF5KCldO2lmKGk8NylyZXR1cm4iIi5jb25jYXQociwiLCAiKS5jb25jYXQobik7dmFyIG89ZS5nZXREYXRlKCksYT10aGlzLmZvcm1hdC5tb250aHNbZS5nZXRNb250aCgpXSxzPWUuZ2V0RnVsbFllYXIoKTtyZXR1cm4gcz09PXQuZ2V0RnVsbFllYXIoKT8iIi5jb25jYXQoYSwiICIpLmNvbmNhdChvLCIsICIpLmNvbmNhdChuKToiIi5jb25jYXQoYSwiICIpLmNvbmNhdChvLCIgIikuY29uY2F0KHMsIiwgIikuY29uY2F0KG4pfSx0b0RhdGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBEYXRlKGUpfX19LF90PShuKCJlZDIyIikscyhidCwoZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybigwLGUuX3NlbGYuX2MpKCJ0aW1lIixlLl9iKHtzdGF0aWNDbGFzczoidGF3ay10aW1lYWdvIn0sInRpbWUiLGUuJGF0dHJzLCExKSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkpLmV4cG9ydHMsd3Q9e1Rhd2tBbGVydDp1LFRhd2tBdmF0YXI6cCxUYXdrQmFkZ2U6ZixUYXdrQnJhbmRpbmc6WCxUYXdrQnV0dG9uOlcsVGF3a0NhcmQ6SyxUYXdrQ2hhdEJ1YmJsZTp0ZSxUYXdrQ2hhdElucHV0OkZlLFRhd2tDaGVja2JveDp6ZSxUYXdrRHJvcGRvd246VmUsVGF3a0Vtb2ppOmllLFRhd2tFbW9qaVBpY2tlcjpCZSxUYXdrRmxhZzpZZSxUYXdrSWNvbjpsLFRhd2tJbWFnZTpHLFRhd2tJbnB1dDpzZSxUYXdrTGlzdDpKZSxUYXdrTGlzdEl0ZW06R2UsVGF3a0xvYWRlcjpldCxUYXdrT3ZlcmxheTpudCxUYXdrUGhvbmVJbnB1dDpzdCxUYXdrUmFkaW86Y3QsVGF3a1JhdGluZzpkdCxUYXdrU2VhcmNoOmd0LFRhd2tUZXh0YXJlYTp5dCxUYXdrVGltZWFnbzpfdCxUYXdrVmlkZW86WixpbnN0YWxsOmZ1bmN0aW9uKGUpe09iamVjdC5rZXlzKHd0KS5mb3JFYWNoKChmdW5jdGlvbih0KXt2YXIgbj13dFt0XTtlLmNvbXBvbmVudChuLm5hbWUsbil9KSl9fSxrdD13dDt0LmRlZmF1bHQ9a3R9fSl9LGYyMmI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIyM2U3Iikscj1uKCJmMDY5Iik7aSh7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwLGZvcmNlZDpuKCI0NzM4IikuQ09OU1RSVUNUT1J9LHtyZWplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ9ci5mKHRoaXMpO3JldHVybigwLHQucmVqZWN0KShlKSx0LnByb21pc2V9fSl9LGYzNmE6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJlMzMwIik7ZS5leHBvcnRzPWkoW10uc2xpY2UpfSxmNWRmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiMDBlZSIpLHI9bigiMTYyNiIpLG89bigiYzZiNiIpLGE9bigiYjYyMiIpKCJ0b1N0cmluZ1RhZyIpLHM9T2JqZWN0LGw9IkFyZ3VtZW50cyI9PT1vKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk7ZS5leHBvcnRzPWk/bzpmdW5jdGlvbihlKXt2YXIgdCxuLGk7cmV0dXJuIHZvaWQgMD09PWU/IlVuZGVmaW5lZCI6bnVsbD09PWU/Ik51bGwiOiJzdHJpbmciPT10eXBlb2Yobj1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gZVt0XX1jYXRjaChlKXt9fSh0PXMoZSksYSkpP246bD9vKHQpOiJPYmplY3QiPT09KGk9byh0KSkmJnIodC5jYWxsZWUpPyJBcmd1bWVudHMiOml9fSxmNzcyOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiNTY5MiIpLHI9bigiOTBlMyIpLG89aSgia2V5cyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gb1tlXXx8KG9bZV09cihlKSl9fSxmYzZhOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiNDRhZCIpLHI9bigiMWQ4MCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gaShyKGUpKX19LGZkYmY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCIwNGY4Iik7ZS5leHBvcnRzPWkmJiFTeW1ib2wuc2hhbSYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3J9fV0pOwovLyMgc291cmNlTWFwcGluZ1VSTD10d2stY2h1bmstdmVuZG9ycy5qcy5tYXA="}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/assets/images/attention-grabbers/168-r-br.svg","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.463Z","timestamp":1785143155463,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/assets/images/attention-grabbers/168-r-br.svg HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: image/svg+xml\r\nlast-modified: Sat, 22 May 2021 07:25:19 GMT\r\netag: \"f66e029841759471d2ec78b86760dca7\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1743463\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=5,i\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c31a9ba0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":22356,"size_decoded":7329,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"f66e029841759471d2ec78b86760dca7","sha1":"d9db67738984efee3dd63cb144759ac0521c7dda","sha256":"5108ef00c54e1f6ce859852834135447457cf19ee19aa7b0fb55b64b425cb526","sha512":"56ec42c707f42339dc21f9bbba6465e75fbfb92c42b4ea180c7f18120e522284b1fa792c63a214fd472ea47f93203af98ce67cc06ac317d945e619e3ba4e87eb","ssdeep":"384:yNDpPg81DH4/8j2CDFmKIk+pv4osVQ37MTNDsPa2vFqrXdCImKkkppDX0skQ3sdv:gDY/mxmKSpv4HQ3YcvEAImKJpDXGQ3sR","tlshash":"83a2243d46a0c3fd9ac5d2fdaf619068904da0ced1f7c74283e6869046e39d9f20d4ea","first_seen":"2023-04-11T22:59:01Z","last_seen":"2026-08-03T12:50:03.355947Z","times_seen":39211,"resource_available":false,"data":"PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjAiIHk9IjAiIHZpZXdCb3g9IjAgMCAxNjkuNiAxMDcuOSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlPi5zdDB7ZmlsbDojMmZhMWFkfS5zdDJ7ZmlsbDojZmZiODE3fS5zdDN7ZmlsbDojZmVkNTI0fTwvc3R5bGU+PHN3aXRjaD48Zz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjAuMyA3MS45Yy0uNS0uMS0uOS0uMi0xLjEtLjMtMS0uNC0xLjItMS4yLTEuMi0xLjUgMC0uNCAwLS45LjMtMS43LjMtLjguNS0xLjQuOC0yIC4zLS42LjctMSAxLjEtMS4zLjUtLjMgMS0uNSAxLjYtLjUuNCAwIC44IDAgMS4yLjEuMSAwIC4zLjEuNS4xbC4zLjFjLjEgMCAuNC4xLjcuMi4zLjEuNy4yIDEuMi4zbDIuMi42Yy0uNi0uNC0xLjQtLjgtMi4zLTEuM2wtMy43LTIuMWMtLjQtLjMtLjctLjctLjgtMS4ydi0uOWMwLS4yLjEtLjUuMi0uOC4xLS4zLjEtLjUuMi0uNy4yLS43LjUtMS40LjctMS45LjMtLjYuNi0xIDEtMS40LjQtLjMuOS0uNiAxLjUtLjcuNS0uMSAxLS4xIDEuNiAwIC4zIDAgLjYuMSAxIC4yczEuMS4zIDEuOS41Yy41LjEgMS4xLjMgMS44LjUtLjItLjEtNS44LTMuNi01LjgtMy42LS40LS4yLS45LS42LTEtMS4yLS4yLS4yLS4yLS43LjEtMS40LjEtLjIuMi0uNS4zLS45LjItLjQuNC0uOS43LTEuMy4zLS40LjgtLjggMS4yLTEgLjUtLjIgMS0uMyAxLjUtLjIuMiAwIC40LjEuNS4yLjMuMS44LjQgMS40LjguNS40IDEuMi44IDEuOCAxLjMuNy41IDEuNCAxIDIuMiAxLjZsMi4zIDEuOGMuOC42IDEuNiAxLjIgMi4zIDEuOC43LjYgMS40IDEuMSAyIDEuNi42LjUgMS4xLjkgMS41IDEuM2wuOC44Yy4zLjQuNS45LjUgMS40IDAgLjMgMCAuNy0uMSAxbC0uOCAyLjVjLS4yLjYtLjUgMS4xLS45IDEuNS0uNC4zLS44LjYtMS4zLjctLjQuMS0uOS4yLTEuNC4xLS4zIDAtLjYtLjEtLjktLjEtLjIgMC0uMy0uMS0uNS0uMWwtMy4zLTFoLjFjLjkuNSAxLjcgMSAyLjQgMS41czEuMy45IDEuOCAxLjJjLjcuNSAxIC44IDEuMi45LjMuNC41LjguNiAxLjQgMCAuNCAwIC43LS4yIDFsLS44IDIuNGMtLjIuNi0uNSAxLjEtLjkgMS40LS40LjMtLjguNS0xLjMuNy0uNC4xLS45LjEtMS40LjEtLjQgMC0uOC0uMS0xLjItLjEtMi45LS40LTUuMy0uOC03LjItMS4xLTEuOS0uMy0zLjQtLjUtNC41LS43LTEuMi0uMi0yLS4zLTIuNS0uNWwuMS0uMXptMjIuMS0xNy43Yy0xLS4yLTIuMS0uOC0zLjItMS43LS40LS4zLS44LS43LTEuMy0xLjJzLTEtMS4xLTEuNS0xLjgtLjktMS40LTEuMi0yLjJjLS40LS44LS42LTEuNy0uNy0yLjctLjEtLjkgMC0xLjkuMi0yLjlzLjctMi4xIDEuNS0zLjFjLjYtLjkgMS4yLTEuNSAxLjgtMS45LjctLjUgMS4zLS44IDItLjkuNS0uMSAxLS4xIDEuNSAwIC4yIDAgLjMuMS41LjEuNi4yIDEuMi41IDEuNyAxIC44LjcgMS40IDEuNCAxLjggMi4yLjMuOC41IDEuNi41IDIuNCAwIC43LS4xIDEuNC0uMiAybC4yLS4yLjktLjZjLjQtLjEuOC0uMiAxLjItLjIuMSAwIC4yIDAgLjQuMS40LjEuOC4zIDEuMi42LjYuNSAxIDEuMiAxLjIgMS45LjIuNy4yIDEuNCAwIDIuMS0uMS43LS4zIDEuMy0uNiAyLS4zLjYtLjYgMS4yLTEgMS43LS41LjctMS4xIDEuMy0xLjcgMS45LS43LjYtMS41IDEtMi40IDEuMi0uOC40LTEuNy40LTIuOC4yem0yLjktOWMtLjEuMy0uMi41LS4zLjgtLjMuNi0uNSAxLjEtLjggMS42aC4yYy4yIDAgLjMgMCAuNS0uMXMuMy0uMi41LS41LjItLjUuMi0uNVY0NmMtLjEtLjItLjEtLjQtLjItLjYtLjEgMC0uMS0uMS0uMS0uMnptLTQuOS0yLjNsLS4xLjFjLS4xLjEtLjEuMi0uMS4zIDAgLjIuMS40LjIuNy4xLjIuMi40LjMuNS4xLS4zLjItLjYuMi0uOC4xLS41LS4xLS42LS4yLS43LS4xIDAtLjEgMC0uMy0uMS4xIDAgMCAwIDAgMHptMTQuNS0zLjNjLS4yIDAtLjMtLjEtLjUtLjEtLjUtLjItLjktLjUtMS4yLS45LS4zLS40LS42LTEuMS0uOS0yLjEtLjMtLjktLjYtMi0xLTMuMS0uMy0xLjItLjctMi40LTEtMy44LS4zLTEuMy0uNi0yLjYtLjktMy44LS4zLTEuMi0uNS0yLjMtLjctMy4yLS4yLS45LS4zLTEuNi0uMy0yLjEgMC0uNCAwLS45LjMtMS4zLjEtLjIuNC0uNC44LS43bDIuMi0xLjZjLjUtLjQgMS4xLS42IDEuNy0uN2guOWMuMiAwIC40LjEuNS4xLjQuMS44LjQgMS4yLjYuMy4yLjcuNSAxIC44bDUuNyA0LjhjMS41IDEuMyAyLjcgMi4zIDMuNiAzLjEuOS44IDEuNiAxLjQgMiAxLjhsMSAxYy40LjYuNCAxLjIuMyAxLjUtLjEuNC0uNC43LS44IDFsLTEuMi44Yy0uOC42LTEuNS45LTIuMSAxLjEtLjUuMS0xIC4xLTEuNS4xLS4yIDAtLjQtLjEtLjYtLjEtLjUtLjItMS4xLS41LTEuNi0xbC0uNi0uNi0yLjQgMS44IDEuMSAyLjhjLjMuOCAwIDEuNi0uNyAyLjFsLTEuMi44Yy0uMy4yLS42LjQtMSAuNi0uNC4yLS44LjMtMS4zLjNoLS44ek01Ni42IDI3bC4zLS4yLS42LS42LjMuOHoiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNjkuOSAyOS45Yy0uMiAwLS40LS4xLS42LS4yLS41LS4yLS44LS41LTEuMi0uOS0uMy0uMy0uNS0uNy0uNy0xLjItLjEtLjMtLjItLjYtLjQtMS4xLS4yLS41LS40LTEuMi0uNi0yLS4zLS44LS42LTEuOS0xLTMuMmwtMS42LTQuOGMtLjQtMS4zLjItMi4xLjktMi40bDEtLjRjLjYtLjMgMS4xLS40IDEuNi0uNWgxYy4xIDAgLjMuMS40LjEuMSAwIC4yLjEuMi4xLjItLjQuNC0uNy42LTEgLjMtLjQuNy0uNyAxLTEgLjQtLjMuNy0uNSAxLjEtLjYuNC0uMi45LS4zIDEuNC0uM2gxYy4yIDAgLjQuMS42LjEuNS4yIDEgLjUgMS40LjkuNC40LjguOSAxIDEuNi4yLjYuNCAxLjEuNCAxLjcgMCAuNiAwIDEuMi0uMiAxLjctLjIuNi0uNSAxLjEtLjkgMS42cy0uOS44LTEuNSAxLjFjLS4xLjEtLjMuMS0uNC4yLS4yLjEtLjQuMS0uNS4yLS4yLjEtLjUuMS0uNyAwLS42LS4xLS45LS40LTEuMS0uOC0uMS0uMi0uMi0uNS0uMy0uNyAwLS4xLS4xLS4yLS4xLS4zIDAgLjQuMSAxLjIuNSAyLjUuMi42LjQgMS4yLjYgMS45bC42IDJjLjIuNi40IDEuMi42IDEuNy4yLjUuMy44LjMuOS4yLjUuMiAxLS4xIDEuNS0uMi4zLS41LjYtLjkuN2wtLjkuNGMtLjcuMy0xLjIuNC0xLjcuNS0uMy4xLS42LjEtLjggMHptMTMuOS01Yy0uNy0uMS0xLjMtLjMtMS45LS42LS45LS40LTEuNi0xLjEtMi4zLTEuOS0uNi0uOC0xLjEtMi0xLjQtMy40LS4xLS41LS4yLTEuMS0uMi0xLjhzMC0xLjUuMS0yLjJjLjEtLjguMy0xLjYuNi0yLjQuMy0uOC43LTEuNyAxLjMtMi40LjYtLjggMS4zLTEuNCAyLjItMiAuOS0uNiAyLTEgMy4zLTEuMyAxLjEtLjIgMi0uMyAyLjgtLjJoLjRjLjcuMSAxLjMuMyAxLjguNi42LjQgMS4xLjkgMS41IDEuNS4zLjYuNiAxLjIuNyAxLjkuMiAxIC4xIDItLjIgMi44LS4zLjgtLjcgMS41LTEuMyAyLjEtLjUuNS0xIDEtMS42IDEuM2guOWMuMiAwIC40LjEuNi4yLjQuMS44LjQgMS4xLjcuNC40LjcuOS44IDEuNS4xLjggMCAxLjUtLjQgMi4yLS4zLjYtLjggMS4xLTEuNCAxLjYtLjYuNC0xLjIuNy0xLjkgMS0uNy4zLTEuMy41LTIgLjYtLjkuMi0xLjguMy0yLjcuMmgtLjh6bTItNi4xYy4xLjEuMy4yLjUuMmguN2MuNC0uMS41LS4yLjUtLjIuMS0uMS4yLS4yLjMtLjQuMS0uMi4yLS40LjMtLjUgMC0uMS4xLS4xLjEtLjItLjMuMS0uNS4yLS44LjMtLjYuMy0xLjIuNS0xLjguNi4xLjEuMS4yLjIuMnptLjEtNmgtLjJjLS4yIDAtLjMuMS0uMy4yLS4xLjItLjMuNC0uMy42LS4xLjItLjEuNC0uMS42LjMtLjEuNS0uMy44LS41LjQtLjMuNC0uNS4zLS42LS4xLS4xLS4xLS4yLS4yLS4zem0xNS4yIDEwYy0xLjEtLjItMi0uNS0yLjUtMS4xLS40LS41LS45LTEuMy0uNy0yLjYgMC0uNC4yLTEgLjMtMS45LjItLjkuNC0xLjkuNi0zIC4yLTEuMS41LTIuMy44LTMuNS4zLTEuMi41LTIuNC44LTMuNS4yLTEuMS40LTIgLjYtMi44LjItLjguMy0xLjMuMy0xLjYuMS0uOS44LTEuNCAxLjgtMS40bDEuNS4yaC40YzEuMy4yIDIuMS42IDIuNiAxLjQuNS43LjYgMS43LjQgMi44IDAgLjItLjEuNy0uMyAxLjYtLjEuNi0uMiAxLjItLjQgMS45bDIuNi4zYy4xLS40LjItLjkuMy0xLjMuMi0uNy4zLTEuNC40LTIgLjEtLjYuMi0xLjIuMy0xLjYuMS0uNC4xLS43LjItLjkuMS0uOS44LTEuNCAxLjgtMS40bDEuNS4xaC4zYzEuMy4yIDIuMi42IDIuNiAxLjQuNS43LjYgMS43LjQgMi44IDAgLjEtLjEuNC0uMi45cy0uMiAxLjEtLjQgMS44bC0yLjYgMTIuMmMtLjEuNS0uMi45LS4yIDEtLjEuMy0uMi42LS41LjgtLjIuMi0uNi40LTEuMy40bC0xLjUtLjFoLS40Yy0xLjEtLjItMi0uNS0yLjUtMS4xLS42LS43LS44LTEuNi0uNy0yLjYuMS0uNC4yLTEuMS40LTIuMmwuNS0yLjItMi42LS4zLTEuMyA2LjNjLS4xLjQtLjMuNy0uNS45LS4yLjItLjYuNC0xLjIuM2wtMS41LS4yLS4xLjJ6bTIxLjkgNC42Yy0uNy0uMS0xLjMtLjMtMi0uNS0uOC0uMy0xLjYtLjctMi40LTEuMi0uOC0uNS0xLjQtMS4yLTEuOS0ycy0uOC0xLjgtLjktMi44Yy0uMS0xLjEuMS0yLjMuNi0zLjYuMi0uNS40LTEgLjgtMS42LjMtLjYuNy0xLjMgMS4yLTEuOS41LS42IDEuMS0xLjIgMS43LTEuOC43LS42IDEuNS0xIDIuNC0xLjQuOS0uMyAxLjktLjUgMi45LS42LjQgMCAuOSAwIDEuMy4xLjcuMSAxLjQuMyAyLjEuNSAxIC40IDEuOC44IDIuNSAxLjNzMS4xIDEuMSAxLjUgMS43Yy4zLjYuNSAxLjMuNSAycy0uMSAxLjMtLjQgMmMtLjQgMS0uOSAxLjctMS42IDIuMy0uNi41LTEuNC45LTIuMiAxLjEtLjcuMi0xLjMuMy0yIC4zLjEgMCAuMi4xLjMuMi4zLjIuNi40LjguOC4zLjMuNS43LjYgMS4yLjEuNS4xIDEuMS0uMSAxLjctLjMuNy0uOCAxLjMtMS41IDEuNy0uNi4zLTEuMy41LTIgLjYtLjYgMC0xLjIgMC0xLjgtLjFoLS40em0tLjItNi4zYzAgLjIuMS4zLjMuNC4xLjEuMy4zLjYuNC4xIDAgLjMuMS40LjFoLjJjLjIgMCAuMy0uMS40LS4xLjItLjEuNC0uMi41LS4zLjEgMCAuMS0uMS4yLS4xLS4yIDAtLjgtLjEtLjgtLjEtLjctLjEtMS4zLS4yLTEuOC0uNHYuMXptMy01LjJoLS4yYy0uMi4xLS40LjItLjYuNGwtLjQuNGguOWMuNS0uMS42LS4zLjYtLjRWMTZzLS4xIDAtLjItLjFoLS4xem01LjggMTUuNGMtLjIgMC0uNS0uMS0uNy0uMmwtLjgtLjVjLS42LS40LTEtLjctMS4zLTEuMS0uMy0uNC0uNi0uOS0uNy0xLjMtLjEtLjUtLjEtMSAuMS0xLjUuMS0uNC4zLS44LjYtMS4yLjItLjIuNC0uNi43LTEgLjMtLjQuNy0xIDEuMy0xLjcuNS0uNyAyLjktMy44IDIuOS0zLjhsMi4yLTIuOWMuNy0uOSAxLjQtMSAxLjgtLjkuMiAwIC40LjEuNi4ybC45LjVjLjUuMy45LjcgMS4zIDEgLjMuNC42LjguNyAxLjIgMCAuMSAwIC4yLjEuMi40LS4xLjgtLjEgMS4xLS4xaC42Yy4zIDAgLjUuMS44LjIuNC4xLjguMyAxLjEuNS40LjIuOC42IDEuMS45LjMuNC41LjguNyAxLjMuMi41LjIgMS4xLjEgMS43LS4xLjYtLjMgMS4yLS43IDEuOC0uMy41LS43IDEtMS4yIDEuMy0uNS40LTEgLjctMS41LjktLjYuMi0xLjIuMy0xLjguMmgtLjJjLS41LS4xLTEtLjMtMS41LS41LS4xLS4xLS4yLS4yLS40LS4yLS4xLS4xLS4zLS4yLS40LS4zLS4yLS4yLS4zLS4zLS40LS41LS4zLS40LS4zLTEgMC0xLjQuMS0uMi4zLS40LjQtLjYuMS0uMS4xLS4yLjItLjMtLjQuMi0uOS43LTEuOCAxLjktLjQuNS0uOCAxLTEuMiAxLjZsLTEuMyAxLjctMS4xIDEuNWMtLjMuNC0uNS43LS42LjgtLjMuNS0uOC43LTEuMy44LS4yLS4yLS4zLS4yLS40LS4yem0xNC45IDEwLjhjLS4zIDAtLjYtLjEtLjktLjItLjYtLjItMS4zLS41LTEuOS0uOS0uNi0uNC0xLjEtLjgtMS42LTEuMi0uNi0uNi0xLjItMS4zLTEuNy0yLS41LS44LS44LTEuNy0uOS0yLjYtLjEtLjkgMC0xLjkuMy0zIC40LTEgMS0yLjEgMi0zLjEuNC0uNC44LS44IDEuMy0xLjIuNi0uNSAxLjItLjkgMS45LTEuM3MxLjUtLjcgMi4zLTFjLjktLjMgMS44LS40IDIuNy0uNC4zIDAgLjYgMCAuOS4xLjcuMSAxLjMuMyAyIC41IDEgLjQgMS45IDEgMi45IDEuOS44LjcgMS4zIDEuNCAxLjcgMi4xLjQuNy42IDEuNS42IDIuMiAwIC43LS4xIDEuNC0uNCAyLS4zLjYtLjcgMS4yLTEuMiAxLjctLjcuNy0xLjUgMS4zLTIuNCAxLjUtLjguMi0xLjYuMy0yLjQuMmgtLjJjLS42LS4xLTEuMi0uMi0xLjgtLjUuMS4xLjEuMi4yLjMuMi4zLjQuNi41IDEgLjEuNC4xLjggMCAxLjNzLS40IDEtLjggMS41Yy0uNi42LTEuMy45LTIgMS0uNC4xLS44LjEtMS4xLjF6bS0uNC03LjJjMCAuMiAwIC4zLjEuNXMuMi40LjQuNmMuMy4zLjQuMy40LjNoLjVjLjIgMCAuNC0uMS42LS4xaC4yYy0uMi0uMS0uNS0uMy0uNy0uNC0uNi0uNC0xLjEtLjctMS41LTEuMXYuMnptNC4zIDEyLjdjLS4zIDAtLjYtLjEtLjktLjItLjYtLjItMS4xLS42LTEuNS0xLjItLjctLjktLjktMS45LS42LTIuNy4zLS43LjgtMS4zIDEuNS0xLjguNC0uMy44LS41IDEuMi0uNy41LS4yLjktLjMgMS40LS4zaC41Yy40LjEuNy4yIDEgLjMuMi4xLjUuMy43LjUtLjEtLjUtLjEtMSAwLTEuNS4xLS40LjQtLjguNy0xLjIuMy0uMy42LS42IDEuMS0uOS4yLS4xLjMtLjIuNS0uMy4yLS4xLjQtLjMuNy0uNC4yLS4xLjUtLjMuOS0uNi40LS4yLjktLjYgMS41LS45bDIuMS0xLjNjLjktLjYgMS45LTEuMiAzLjEtMS45LjQtLjMuOS0uNiAxLjUtLjUuNS4xLjguNCAxIC43bDEgMS4zYy44IDEgMS4xIDEuOSAxIDIuOC0uMS45LS41IDEuNi0xLjIgMi4xLS4zLjItLjcuNS0xLjIuOC0uNS4zLTEgLjYtMS43LjktLjYuMy0xLjMuNi0xLjkgMWwtMiAxLTMuNCAxLjZjLS40LjItLjguMy0xLjEuMmgtLjFjLS40LS4xLS43LS4zLTEtLjYuMS4zLjEuNyAwIDEtLjIuNy0uNyAxLjQtMS40IDItLjMuMi0uNy40LTEuMS42LS41LjItLjkuMy0xLjQuNC0uNC0uMS0uNi0uMS0uOS0uMnoiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjEuMSA3MC41Yy0uNS0uMS0uOS0uMi0xLjEtLjMtMS0uNC0xLjItMS4yLTEuMi0xLjUgMC0uNCAwLS45LjMtMS43LjMtLjguNS0xLjQuOC0yIC4zLS42LjctMSAxLjEtMS4zLjUtLjMgMS0uNSAxLjYtLjUuNCAwIC44IDAgMS4yLjEuMSAwIC4zLjEuNS4xbC4zLjFjLjEgMCAuNC4xLjcuMi4zLjEuNy4yIDEuMi4zbDIuMi42Yy0uNi0uNC0xLjQtLjgtMi4zLTEuM2wtMy43LTIuMWMtLjQtLjMtLjctLjctLjgtMS4ydi0uOWMwLS4yLjEtLjUuMi0uOC4xLS4zLjEtLjUuMi0uNy4yLS43LjUtMS40LjctMS45LjMtLjYuNi0xIDEtMS40LjQtLjMuOS0uNiAxLjUtLjcuNS0uMSAxLS4xIDEuNiAwIC4zIDAgLjYuMSAxIC4yczEuMS4zIDEuOS41Yy41LjEgMS4xLjMgMS44LjUtLjItLjEtNS44LTMuNi01LjgtMy42LS40LS4yLS45LS42LTEtMS4yLS4xLS40LS4xLS45LjEtMS43LjEtLjIuMi0uNS4zLS45LjItLjQuNC0uOS43LTEuMy4zLS40LjgtLjggMS4yLTEgLjUtLjIgMS0uMyAxLjUtLjIuMiAwIC40LjEuNS4yLjMuMS44LjQgMS40LjguNS40IDEuMi44IDEuOCAxLjMuNy41IDEuNCAxIDIuMiAxLjZsMi4zIDEuOGMuOC42IDEuNiAxLjIgMi4zIDEuOC43LjYgMS40IDEuMSAyIDEuNi42LjUgMS4xLjkgMS41IDEuM2wuOC44Yy4zLjQuNS45LjUgMS40IDAgLjMgMCAuNy0uMSAxbC0uOCAyLjVjLS4yLjYtLjUgMS4xLS45IDEuNS0uNC4zLS44LjYtMS4zLjctLjQuMS0uOS4yLTEuNC4xLS4zIDAtLjYtLjEtLjktLjEtLjIgMC0uMy0uMS0uNS0uMWwtMy4zLTFoLjFjLjkuNSAxLjcgMSAyLjQgMS41czEuMy45IDEuOCAxLjJjLjcuNSAxIC44IDEuMi45LjMuNC41LjguNiAxLjQgMCAuNCAwIC43LS4yIDFsLS44IDIuNGMtLjIuNi0uNSAxLjEtLjkgMS40LS40LjMtLjguNS0xLjMuNy0uNC4xLS45LjEtMS40LjEtLjQgMC0uOC0uMS0xLjItLjEtMi45LS40LTUuMy0uOC03LjItMS4xLTEuOS0uMy0zLjQtLjUtNC41LS43LTEuMi0uMi0yLS4zLTIuNS0uNWwuMS4yem0yMi0xNy43Yy0xLS4yLTIuMS0uOC0zLjItMS43LS40LS4zLS44LS43LTEuMy0xLjJzLTEtMS4xLTEuNS0xLjgtLjktMS40LTEuMi0yLjJjLS40LS44LS42LTEuNy0uNy0yLjctLjEtLjkgMC0xLjkuMi0yLjlzLjctMi4xIDEuNS0zLjFjLjYtLjkgMS4yLTEuNSAxLjgtMS45LjctLjUgMS4zLS44IDItLjkuNS0uMSAxLS4xIDEuNSAwIC4yIDAgLjMuMS41LjEuNi4yIDEuMi41IDEuNyAxIC44LjcgMS40IDEuNCAxLjggMi4yLjMuOC41IDEuNi41IDIuNCAwIC43LS4xIDEuNC0uMiAybC4yLS4yLjktLjZjLjQtLjEuOC0uMiAxLjItLjIuMSAwIC4yIDAgLjQuMS40LjEuOC4zIDEuMi42LjYuNSAxIDEuMiAxLjIgMS45LjIuNy4yIDEuNCAwIDIuMS0uMS43LS4zIDEuMy0uNiAyLS4zLjYtLjYgMS4yLTEgMS43LS41LjctMS4xIDEuMy0xLjcgMS45LS43LjYtMS41IDEtMi40IDEuMi0uNy40LTEuNy40LTIuOC4yem0yLjktOWMtLjEuMy0uMi41LS4zLjgtLjMuNi0uNSAxLjEtLjggMS42aC4yYy4yIDAgLjMgMCAuNS0uMXMuMy0uMi41LS41LjItLjUuMi0uNXYtLjVjLS4xLS4yLS4xLS40LS4yLS42IDAtLjEgMC0uMS0uMS0uMnptLTQuOS0yLjNsLS4xLjFjLS4xLjEtLjEuMi0uMS4zIDAgLjIuMS40LjIuNy4xLjIuMi40LjMuNS4xLS4zLjItLjYuMi0uOC4xLS41LS4xLS42LS4yLS43IDAgMC0uMS0uMS0uMy0uMS4xIDAgLjEgMCAwIDB6bTE0LjctMy40Yy0uMiAwLS4zLS4xLS41LS4xLS41LS4yLS45LS41LTEuMi0uOS0uMy0uNC0uNi0xLjEtLjktMi4xLS4zLS45LS42LTItMS0zLjEtLjMtMS4yLS43LTIuNC0xLTMuOC0uMy0xLjMtLjYtMi42LS45LTMuOC0uMy0xLjItLjUtMi4zLS43LTMuMi0uMi0uOS0uMy0xLjYtLjMtMi4xIDAtLjQgMC0uOS4zLTEuMy4xLS4yLjQtLjQuOC0uN2wyLjItMS42Yy41LS40IDEuMS0uNiAxLjctLjdoLjljLjIgMCAuNC4xLjUuMS40LjEuOC40IDEuMi42LjMuMi43LjUgMSAuOGw1LjcgNC44YzEuNSAxLjMgMi43IDIuMyAzLjYgMy4xLjkuOCAxLjYgMS40IDIgMS44bDEgMWMuNC42LjQgMS4yLjMgMS41LS4xLjQtLjQuNy0uOCAxbC0xLjIuOGMtLjguNi0xLjUuOS0yLjEgMS4xLS41LjEtMSAuMS0xLjUuMS0uMiAwLS40LS4xLS42LS4xLS41LS4yLTEuMS0uNS0xLjYtMWwtLjYtLjYtMi40IDEuNyAxLjEgMi44Yy4zLjggMCAxLjYtLjcgMi4xbC0xLjIuOWMtLjMuMi0uNi40LTEgLjYtLjQuMi0uOC4zLTEuMy4zLS4zLjEtLjUuMS0uOCAwem0xLjYtMTIuNWwuMy0uMi0uNi0uNi4zLjh6Ii8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTcwLjcgMjguNWMtLjIgMC0uNC0uMS0uNi0uMi0uNS0uMi0uOC0uNS0xLjItLjktLjMtLjMtLjUtLjctLjctMS4yLS4xLS4zLS4yLS42LS40LTEuMS0uMi0uNS0uNC0xLjItLjYtMi0uMy0uOC0uNi0xLjktMS0zLjJMNjQuNiAxNWMtLjQtMS4zLjItMi4xLjktMi40bDEtLjRjLjYtLjMgMS4xLS40IDEuNi0uNWgxYy4xIDAgLjMuMS40LjEuMSAwIC4yLjEuMi4xLjItLjQuNC0uNy42LTEgLjMtLjQuNy0uNyAxLTEgLjQtLjMuNy0uNSAxLjEtLjYuNS0uMiAxLS4zIDEuNS0uM2gxYy4yIDAgLjQuMS42LjEuNS4yIDEgLjUgMS40LjkuNC40LjguOSAxIDEuNi4yLjYuNCAxLjEuNCAxLjcgMCAuNiAwIDEuMi0uMiAxLjctLjIuNi0uNSAxLjEtLjkgMS42cy0uOS44LTEuNSAxLjFjLS4xLjEtLjMuMS0uNC4yLS4yLjEtLjMuMS0uNS4ycy0uNS4xLS43IDBjLS42LS4xLS45LS40LTEuMS0uOC0uMS0uMi0uMi0uNS0uMy0uNyAwLS4xLS4xLS4yLS4xLS4zIDAgLjQuMSAxLjIuNSAyLjUuMi42LjQgMS4yLjYgMS45bC42IDJjLjIuNi40IDEuMi42IDEuNy4yLjUuMy44LjMuOS4yLjUuMiAxLS4xIDEuNS0uMi4zLS41LjYtLjkuN2wtLjkuNWMtLjcuMy0xLjIuNC0xLjcuNWgtLjl6bTEzLjktNS4xYy0uNy0uMS0xLjMtLjMtMS45LS42LS45LS40LTEuNi0xLjEtMi4zLTEuOS0uNi0uOC0xLjEtMi0xLjQtMy40IDAtLjUgMC0xLjEtLjEtMS44IDAtLjcgMC0xLjUuMS0yLjIuMS0uOC4zLTEuNi42LTIuNC4zLS44LjctMS43IDEuMy0yLjQuNi0uOCAxLjMtMS40IDIuMi0yIC45LS42IDItMSAzLjMtMS4zIDEuMS0uMiAyLS4zIDIuOC0uMmguNGMuNy4xIDEuMy4zIDEuOC42LjYuNCAxLjEuOSAxLjUgMS41LjMuNi42IDEuMi43IDEuOS4yIDEgLjEgMi0uMiAyLjgtLjMuOC0uNyAxLjUtMS4zIDIuMS0uNS41LTEgMS0xLjYgMS4zaC45Yy4yIDAgLjQuMS42LjIuNC4xLjguNCAxLjEuNy40LjQuNy45LjggMS41LjEuOCAwIDEuNS0uNCAyLjItLjMuNi0uOCAxLjEtMS40IDEuNi0uNi40LTEuMi43LTEuOSAxLS43LjMtMS4zLjUtMiAuNi0uOS4yLTEuOC4zLTIuNy4yLS4zLjEtLjYgMC0uOSAwem0yLTYuMWMuMS4xLjMuMi41LjJoLjdjLjQtLjEuNS0uMi41LS4yLjEtLjEuMi0uMi4zLS40LjEtLjIuMi0uNC4zLS41IDAtLjEuMS0uMS4xLS4yLS4zLjEtLjUuMi0uOC4zLS42LjMtMS4yLjUtMS44LjZsLjIuMnptLjItNS45aC0uMmMtLjIgMC0uMy4xLS4zLjItLjEuMi0uMy40LS4zLjYtLjEuMi0uMS40LS4xLjYuMy0uMS41LS4zLjgtLjUuNC0uMy40LS41LjMtLjYtLjEtLjItLjEtLjMtLjItLjN6bTE1LjEgMTBjLTEuMS0uMi0yLS41LTIuNS0xLjEtLjQtLjUtLjktMS4zLS43LTIuNiAwLS40LjItMSAuMy0xLjkuMi0uOS40LTEuOS42LTMgLjItMS4xLjUtMi4zLjgtMy41LjMtMS4yLjUtMi40LjgtMy41LjItMS4xLjQtMiAuNi0yLjguMi0uOC4zLTEuMy4zLTEuNi4xLS45LjgtMS40IDEuOC0xLjRsMS41LjJoLjRjMS4zLjIgMi4xLjYgMi42IDEuNC41LjcuNiAxLjcuNCAyLjggMCAuMi0uMS43LS4zIDEuNi0uMS42LS4yIDEuMi0uNCAxLjlsMi42LjNjLjEtLjQuMi0uOS4zLTEuMy4yLS43LjMtMS40LjQtMiAuMS0uNi4yLTEuMi4zLTEuNi4xLS40LjEtLjcuMi0uOS4xLS45LjgtMS40IDEuOC0xLjRsMS41LjFoLjNjMS4zLjIgMi4yLjYgMi42IDEuNC41LjcuNiAxLjcuNCAyLjggMCAuMS0uMS40LS4yLjlzLS4yIDEuMS0uNCAxLjhsLTIuNiAxMi4yYy0uMS41LS4yLjktLjIgMS0uMS4zLS4yLjYtLjUuOC0uMi4yLS42LjQtMS4zLjRsLTEuNS0uMWgtLjRjLTEuMS0uMi0yLS41LTIuNS0xLjEtLjYtLjctLjgtMS42LS43LTIuNi4xLS40LjItMS4xLjQtMi4ybC41LTIuMi0yLjYtLjMtMS4zIDYuM2MtLjEuNC0uMy43LS41LjktLjIuMi0uNi40LTEuMi4zbC0xLjUtLjItLjEuMnptMjIgNC42Yy0uNy0uMS0xLjMtLjMtMi0uNS0uOC0uMy0xLjYtLjctMi40LTEuMi0uOC0uNS0xLjQtMS4yLTEuOS0ycy0uOC0xLjgtLjktMi44Yy0uMS0xLjEuMS0yLjMuNi0zLjYuMi0uNS40LTEgLjgtMS42LjMtLjYuNy0xLjMgMS4yLTEuOS41LS42IDEuMS0xLjIgMS43LTEuOC43LS42IDEuNS0xIDIuNC0xLjQuOS0uMyAxLjktLjUgMi45LS42LjQgMCAuOSAwIDEuMy4xLjcuMSAxLjQuMyAyLjEuNSAxIC40IDEuOC44IDIuNSAxLjNzMS4xIDEuMSAxLjUgMS43Yy4zLjYuNSAxLjMuNSAycy0uMSAxLjMtLjQgMmMtLjQgMS0uOSAxLjctMS42IDIuMy0uNi41LTEuNC45LTIuMiAxLjEtLjcuMi0xLjMuMy0yIC4zLjEgMCAuMi4xLjMuMi4zLjIuNi40LjguOC4zLjMuNS43LjYgMS4yLjEuNS4xIDEuMS0uMSAxLjctLjMuNy0uOCAxLjMtMS41IDEuNy0uNi4zLTEuMy41LTIgLjYtLjYgMC0xLjIgMC0xLjgtLjFoLS40em0tLjItNi40YzAgLjIuMS4zLjMuNC4xLjEuMy4zLjYuNC4xIDAgLjMuMS40LjFoLjJjLjIgMCAuMy0uMS40LS4xLjItLjEuNC0uMi41LS4zLjEgMCAuMS0uMS4yLS4xLS4yIDAtLjgtLjEtLjgtLjEtLjctLjEtMS4zLS4yLTEuOC0uNC0uMSAwLS4xLjEgMCAuMXptMi45LTUuMWgtLjJjLS4yLjEtLjQuMi0uNi40bC0uNC40aC45Yy41LS4xLjYtLjMuNi0uNHYtLjNzLS4xIDAtLjItLjFoLS4xem01LjggMTUuNGMtLjIgMC0uNS0uMS0uNy0uMmwtLjgtLjVjLS42LS40LTEtLjctMS4zLTEuMS0uMy0uNC0uNi0uOS0uNy0xLjMtLjEtLjUtLjEtMSAuMS0xLjUuMS0uNC4zLS44LjYtMS4yLjItLjIuNC0uNi43LTEgLjMtLjQuNy0xIDEuMy0xLjcuNS0uNyAyLjktMy44IDIuOS0zLjhsMi4yLTIuOWMuNy0uOSAxLjQtMSAxLjgtLjkuMiAwIC40LjEuNi4ybC45LjVjLjUuMy45LjcgMS4zIDEgLjMuNC42LjguNyAxLjIgMCAuMSAwIC4yLjEuMi40LS4xLjgtLjEgMS4xLS4xaC42Yy4zIDAgLjUuMS44LjIuNC4xLjguMyAxLjEuNS40LjIuOC42IDEuMS45LjMuNC41LjguNyAxLjMuMi41LjIgMS4xLjEgMS43LS4xLjYtLjMgMS4yLS43IDEuOC0uMy41LS43IDEtMS4yIDEuMy0uNS40LTEgLjctMS41LjktLjYuMi0xLjIuMy0xLjguMmgtLjJjLS41LS4xLTEtLjMtMS41LS41LS4xLS4xLS4yLS4yLS40LS4yLS4xLS4xLS4zLS4yLS40LS4zLS4yLS4yLS4zLS4zLS40LS41LS4zLS40LS4zLTEgMC0xLjQuMS0uMi4zLS40LjQtLjYuMS0uMS4xLS4yLjItLjMtLjQuMi0uOS43LTEuOCAxLjktLjQuNS0uOCAxLTEuMiAxLjZsLTEuMyAxLjctMS4xIDEuNWMtLjMuNC0uNS43LS42LjgtLjMuNS0uOC43LTEuMy44LS4xLS4yLS4zLS4yLS40LS4yem0xNC45IDEwLjdjLS4zIDAtLjYtLjEtLjktLjItLjYtLjItMS4zLS41LTEuOS0uOS0uNi0uNC0xLjEtLjgtMS42LTEuMi0uNi0uNi0xLjItMS4zLTEuNy0yLS41LS44LS44LTEuNy0uOS0yLjYtLjEtLjkgMC0xLjkuMy0zIC40LTEgMS0yLjEgMi0zLjEuNC0uNC44LS44IDEuMy0xLjIuNi0uNSAxLjItLjkgMS45LTEuM3MxLjUtLjcgMi4zLTFjLjktLjMgMS44LS40IDIuNy0uNC4zIDAgLjYgMCAuOS4xLjcuMSAxLjMuMyAyIC41IDEgLjQgMS45IDEgMi45IDEuOS44LjcgMS4zIDEuNCAxLjcgMi4xLjQuNy42IDEuNS42IDIuMiAwIC43LS4xIDEuNC0uNCAyLS4zLjYtLjcgMS4yLTEuMiAxLjctLjcuNy0xLjUgMS4zLTIuNCAxLjUtLjguMi0xLjYuMy0yLjQuMmgtLjJjLS42LS4xLTEuMi0uMi0xLjgtLjUuMS4xLjEuMi4yLjMuMi4zLjQuNi41IDEgLjEuNC4xLjggMCAxLjNzLS40IDEtLjggMS41Yy0uNi42LTEuMy45LTIgMS0uMy4yLS43LjItMS4xLjF6bS0uNC03LjFjMCAuMiAwIC4zLjEuNXMuMi40LjQuNmMuMy4zLjQuMy40LjNoLjVjLjIgMCAuNC0uMS42LS4xaC4yYy0uMi0uMS0uNS0uMy0uNy0uNC0uNi0uNC0xLjEtLjctMS41LTEuMXYuMnptNC4zIDEyLjdjLS4zIDAtLjYtLjEtLjktLjItLjYtLjItMS4xLS42LTEuNS0xLjItLjctLjktLjktMS45LS42LTIuNy4zLS43LjgtMS4zIDEuNS0xLjguNC0uMy44LS41IDEuMi0uNy41LS4yLjktLjMgMS40LS4zaC41Yy40LjEuNy4yIDEgLjMuMi4xLjUuMy43LjUtLjEtLjUtLjEtMSAwLTEuNS4xLS40LjQtLjguNy0xLjIuMy0uMy42LS42IDEuMS0uOS4yLS4xLjMtLjIuNS0uMy4yLS4xLjQtLjMuNy0uNC4yLS4xLjUtLjMuOS0uNi40LS4yLjktLjYgMS41LS45TDE2MiAzM2MuOS0uNiAxLjktMS4yIDMuMS0xLjkuNC0uMy45LS42IDEuNS0uNS41LjEuOC40IDEgLjdsMSAxLjNjLjggMSAxLjEgMS45IDEgMi44LS4xLjktLjUgMS42LTEuMiAyLjEtLjMuMi0uNy41LTEuMi44LS41LjMtMSAuNi0xLjcuOS0uNi4zLTEuMy42LTEuOSAxbC0yIDEtMy40IDEuNmMtLjQuMi0uOC4zLTEuMS4yaC0uMWMtLjQtLjEtLjctLjMtMS0uNi4xLjMuMS43IDAgMS0uMi43LS43IDEuNC0xLjQgMi0uMy4yLS43LjQtMS4xLjYtLjUuMi0uOS4zLTEuNC40LS4zLS4yLS42LS4yLS45LS4yeiIvPjxwYXRoIGQ9Ik0zOC45IDU4LjRjLS44LS41LTEuNS0xLTIuMi0xLjQtLjYtLjQtMS4yLS44LTEuNy0xLjEtLjUtLjMtMS4xLS43LTEuNi0xLS41LS4zLTEuMS0uNy0xLjgtMS4xLS43LS40LTEuNC0uOS0yLjItMS40LS44LS41LTEuOS0xLjEtMy0xLjktLjMtLjItLjUtLjQtLjUtLjUtLjEtLjIgMC0uNS4yLTEgLjEtLjIuMi0uNS4zLS44LjEtLjQuMy0uNy42LTEgLjItLjMuNS0uNi45LS43LjMtLjIuOC0uMiAxLjIgMCAuMy4xLjcuMyAxLjIuNy41LjMgMS4xLjcgMS44IDEuMnMxLjQgMSAyLjIgMS42Yy44LjYgMS42IDEuMiAyLjMgMS44czEuNSAxLjIgMi4zIDEuOGMuNy42IDEuNCAxLjEgMiAxLjYuNi41IDEuMS45IDEuNSAxLjMuNC40LjYuNi44LjcuMS4yLjIuNC4yLjYgMCAuMiAwIC40LS4xLjZsLS44IDIuNGMtLjEuNC0uMy44LS42IDEtLjMuMi0uNi40LS45LjUtLjMuMS0uNy4xLTEgLjEtLjQgMC0uNy0uMS0xLjEtLjJsLTExLjYtMy40Yy43LjQgMS41LjkgMi40IDEuNC45LjUgMS44IDEgMi43IDEuNi45LjUgMS44IDEuMSAyLjcgMS42LjkuNSAxLjcgMSAyLjQgMS41czEuMy45IDEuOCAxLjJjLjUuMy44LjYuOS43LjIuMi4yLjQuMi42IDAgLjIgMCAuNC0uMS42bC0uOCAyLjRjLS4xLjQtLjMuNy0uNiAxLS4yLjItLjUuNC0uOS40LS4zLjEtLjcuMS0xLjEuMS0uNCAwLS44LS4xLTEuMS0uMS0yLjktLjQtNS40LS44LTcuMi0xLjEtMS45LS4zLTMuNC0uNS00LjUtLjdzLTItLjMtMi41LS40Yy0uNS0uMS0uOS0uMi0xLjEtLjMtLjMtLjEtLjQtLjMtLjUtLjUgMC0uMi4xLS42LjItMS4yLjItLjcuNS0xLjMuNy0xLjguMy0uNC41LS44LjgtMSAuMy0uMi43LS4zIDEuMS0uNC40IDAgLjggMCAxLjMuMi4xIDAgLjIuMS4zLjEuMSAwIC4zLjEuNi4ycy43LjIgMS4yLjRjLjUuMSAxLjIuMyAyIC42czEuOS42IDMuMS45YzEuMy40IDIuOC44IDQuNSAxLjMtMS0uNi0xLjctMS4xLTIuMy0xLjUtLjYtLjQtMS4xLS43LTEuNS0xLS40LS4zLS45LS42LTEuMy0uOC0uNC0uMy0uOS0uNi0xLjYtLjktLjYtLjQtMS40LS44LTIuNC0xLjQtMS0uNS0yLjItMS4zLTMuNy0yLjEtLjEtLjEtLjItLjItLjItLjN2LS41YzAtLjIuMS0uNC4xLS43LjEtLjIuMS0uNS4yLS43LjItLjcuNC0xLjMuNy0xLjcuMi0uNC41LS44LjgtMSAuMy0uMi42LS40IDEtLjUuNC0uMS44LS4xIDEuMyAwIC4yIDAgLjUuMS45LjJzMSAuMyAxLjkuNWMuOC4yIDIgLjYgMy41IDEuMSAxLjQuMiAzLjQuOCA1LjcgMS42em0xMC40LTkuNWMtLjQuNi0xIDEuMi0xLjYgMS43LS42LjUtMS4zLjgtMiAxLS43LjItMS41LjItMi40IDAtLjktLjItMS44LS43LTIuOC0xLjUtLjQtLjMtLjgtLjctMS4yLTEuMS0uNS0uNS0uOS0xLTEuMy0xLjYtLjQtLjYtLjgtMS4zLTEuMS0yLS4zLS43LS41LTEuNS0uNi0yLjMtLjEtLjggMC0xLjcuMi0yLjYuMi0uOS43LTEuOCAxLjMtMi43LjUtLjcgMS4xLTEuMyAxLjYtMS43LjUtLjQgMS4xLS42IDEuNi0uNy41LS4xIDEgMCAxLjUuMS41LjIgMSAuNCAxLjQuOC43LjUgMS4xIDEuMSAxLjQgMS44LjMuNi40IDEuMy40IDJzLS4xIDEuMy0uMyAyYy0uMi43LS40IDEuMy0uNyAxLjktLjMuNi0uNSAxLjEtLjggMS41LS4zLjQtLjUuOC0uNyAxIC4zLjIuNi40LjkuNS4zLjEuNi4yLjkuMi4zIDAgLjYtLjEuOS0uMi4zLS4yLjYtLjQuOS0uOC4zLS40LjQtLjcuNC0xIDAtLjMgMC0uNi0uMS0uOC0uMS0uMy0uMS0uNS0uMi0uNy0uMS0uMiAwLS40LjEtLjUgMC0uMS4yLS4yLjMtLjMuMi0uMi40LS4zLjYtLjQuMi0uMS41LS4xLjgtLjEuMyAwIC42LjIuOS40LjQuMy43LjguOCAxLjMuMS41LjEgMSAwIDEuNi0uMS42LS4zIDEuMS0uNiAxLjcuMS41LS4yIDEuMS0uNSAxLjV6bS05LjEtOGMtLjIuMy0uMy43LS4zIDFzLjEuNy4zIDEuMWMuMi40LjQuNy43IDEuMS4zLjMuNS43LjguOS42LS45IDEtMS44IDEuMS0yLjUuMS0uOC0uMS0xLjQtLjYtMS44LS4zLS4yLS42LS40LTEtLjQtLjUuMS0uOC4yLTEgLjZ6bTEzLTI0LjZjLjQtLjMuNy0uNCAxLjEtLjUuMyAwIC43IDAgMSAuMS4zLjEuNy4zIDEgLjUuMy4yLjYuNS45LjcgMi4zIDIgNC4yIDMuNiA1LjcgNC44IDEuNSAxLjMgMi43IDIuMyAzLjYgMy4xLjkuOCAxLjYgMS40IDIgMS44LjQuNC43LjcuOC45LjEuMi4yLjQuMS41IDAgLjEtLjIuMy0uNC40bC0xLjIuOGMtLjcuNS0xLjIuOC0xLjcuOS0uNS4xLTEgLjEtMS40IDAtLjQtLjEtLjgtLjQtMS4yLS44LS40LS40LS44LS44LTEuMi0xLjNsLTQgMi44IDEuNCAzLjZjLjEuMyAwIC41LS4zLjdsLTEuMi45Yy0uMi4yLS41LjMtLjguNS0uMy4xLS42LjItLjkuMi0uMyAwLS42IDAtLjgtLjEtLjMtLjEtLjUtLjMtLjctLjUtLjItLjMtLjUtLjktLjgtMS44cy0uNi0xLjktMS0zLjFjLS4zLTEuMi0uNy0yLjQtMS0zLjctLjMtMS4zLS42LTIuNi0uOS0zLjgtLjMtMS4yLS41LTIuMi0uNy0zLjItLjItLjktLjMtMS42LS4zLTIgMC0uMyAwLS41LjEtLjYuMS0uMS4yLS4zLjUtLjVsMi4zLTEuM3ptMy43IDExbDIuNi0xLjktNS4xLTUuMiAyLjUgNy4xem0xOC40LTEwLjZjLS4xIDAtLjIuMS0uNC4xLS4xIDAtLjMuMS0uNC4xaC0uM2MtLjEgMC0uMiAwLS4yLS4xLS4xLS4yLS4yLS40LS4yLS42LS4xLS4yLS4xLS40LS4yLS42LS4yLS40LS4zLS42LS41LS44LS4yLS4yLS41LS4yLS44LS4xLS41LjItLjguNy0uOCAxLjQtLjEuNy4xIDEuOC41IDMgLjIuNi40IDEuMi42IDEuOS4yLjcuNCAxLjQuNiAyIC4yLjcuNCAxLjIuNiAxLjcuMi41LjMuOC4zIDEgLjEuMi4xLjMgMCAuNWwtLjMuMy0uOS41Yy0uNS4yLTEgLjQtMS40LjQtLjQgMC0uNyAwLTEtLjEtLjMtLjEtLjUtLjMtLjctLjYtLjItLjMtLjQtLjYtLjUtMS0uMS0uMy0uMi0uNi0uNC0xLjEtLjItLjUtLjQtMS4xLS42LTItLjMtLjgtLjYtMS45LTEtMy4yLS40LTEuMy0uOS0yLjktMS42LTQuOC0uMi0uNS0uMS0uOC4yLTFsMS0uNGMuNS0uMi45LS4zIDEuMy0uNC40IDAgLjcgMCAxIC4xLjMuMS41LjIuNy40LjIuMi40LjQuNS42IDAtLjUuMi0uOS4zLTEuMy4yLS40LjQtLjguNi0xLjEuMi0uMy41LS42LjgtLjguMy0uMi42LS40LjktLjUuMy0uMS43LS4yIDEuMS0uMy40IDAgLjggMCAxLjEuMS40LjEuNy4zIDEgLjYuMy4zLjYuNy44IDEuMi4yLjUuMy45LjMgMS40IDAgLjUgMCAuOS0uMiAxLjMtLjEuNC0uMy44LS42IDEuMXMtLjcuOS0xLjIgMS4xek04OCAyMi4xYy0uOC4yLTEuNi4yLTIuNC4yLS44IDAtMS42LS4yLTIuMy0uNi0uNy0uNC0xLjMtLjktMS45LTEuNi0uNS0uNy0uOS0xLjctMS4yLTIuOS0uMS0uNC0uMS0xLS4yLTEuNiAwLS42IDAtMS4zLjEtMnMuMy0xLjQuNS0yLjJjLjMtLjcuNi0xLjQgMS4xLTIuMS41LS42IDEuMi0xLjIgMS45LTEuNy44LS41IDEuOC0uOSAzLTEuMS45LS4yIDEuOC0uMyAyLjUtLjIuNy4xIDEuMy4zIDEuNy41LjUuMy45LjcgMS4yIDEuMi4zLjQuNS45LjYgMS41LjIuOC4xIDEuNi0uMSAyLjItLjIuNi0uNiAxLjItMSAxLjctLjUuNS0xIC45LTEuNiAxLjMtLjYuNC0xLjIuNy0xLjguOS0uNi4zLTEuMi40LTEuNy42LS41LjEtLjkuMi0xLjIuMy4xLjMuMi43LjMgMSAuMi4zLjQuNi42LjguMi4yLjUuNC45LjUuNC4xLjguMSAxLjIgMCAuNS0uMS44LS4zIDEuMS0uNS4yLS4yLjQtLjQuNS0uNmwuMy0uNmMuMS0uMi4yLS4zLjQtLjNoLjVjLjIgMCAuNSAwIC43LjEuMy4xLjUuMi43LjUuMi4yLjQuNS41LjkuMS41IDAgMS0uMiAxLjQtLjMuNC0uNi44LTEuMSAxLjItLjUuMy0xIC42LTEuNi45LS44IDAtMS40LjItMiAuM3ptLTEuNi0xMS44Yy0uNC4xLS43LjMtMSAuNi0uMi4zLS40LjYtLjYgMS0uMS40LS4yLjgtLjIgMS4ydjEuMmMxLjEtLjMgMi0uNiAyLjYtMS4xLjYtLjUuOS0xLjEuOC0xLjgtLjEtLjQtLjItLjctLjUtLjktLjMtLjItLjYtLjMtMS4xLS4yem0yNS45IDExYy0xLS4xLTEuNy0uNC0yLjEtLjgtLjQtLjQtLjUtMS0uNC0xLjguMS0uNC4yLTEuMS40LTIuMXMuNC0yLjEuNy0zLjRsLTQuOS0uNS0xLjYgNy4zYzAgLjEtLjEuMi0uMi4zLS4xLjEtLjIuMS0uMy4xbC0xLjUtLjJjLTEtLjEtMS43LS40LTIuMS0uOC0uNC0uNC0uNS0xLS40LTEuOCAwLS40LjItMSAuMy0xLjguMi0uOS40LTEuOC42LTIuOS4yLTEuMS41LTIuMy44LTMuNXMuNS0yLjQuOC0zLjVjLjItMS4xLjQtMiAuNi0yLjkuMi0uOC4zLTEuNC4zLTEuNyAwLS4zLjItLjQuNS0uNGwxLjUuMmMxLjEuMSAxLjguNCAyLjEuOS4zLjUuNCAxLjIuMyAyLjEgMCAuMS0uMS42LS4zIDEuNS0uMi45LS40IDEuOS0uNiAzLjFsNC45LjVjLjItLjguMy0xLjUuNS0yLjMuMi0uNy4zLTEuNC40LTIuMS4xLS42LjItMS4yLjMtMS42LjEtLjUuMi0uOC4yLTEgMC0uMy4yLS40LjUtLjRsMS41LjFjMS4xLjEgMS44LjQgMi4xLjkuMy41LjQgMS4yLjMgMi4xIDAgLjEtLjEuNC0uMi45cy0uMiAxLjEtLjQgMS44LS4zIDEuNS0uNSAyLjRjLS4yLjktLjQgMS44LS42IDIuOC0uMi45LS40IDEuOS0uNiAyLjgtLjIuOS0uNCAxLjctLjUgMi40LS4yLjctLjMgMS4zLS40IDEuOC0uMS41LS4yLjgtLjIuOSAwIC4xLS4xLjItLjIuMy0uMS4xLS4yLjEtLjMuMWwtMS4zLjJ6bTEwIDMuMWMtLjgtLjMtMS41LS42LTIuMS0xLjEtLjctLjQtMS4yLTEtMS42LTEuNy0uNC0uNy0uNy0xLjQtLjctMi4zLS4xLS45LjEtMS45LjYtMy4xLjItLjQuNC0uOS43LTEuNS4zLS42LjctMS4xIDEuMS0xLjcuNC0uNiAxLTEuMSAxLjYtMS42LjYtLjUgMS4zLS45IDItMS4yLjgtLjMgMS42LS41IDIuNS0uNS45IDAgMS45LjIgMy4xLjYuOS4zIDEuNi43IDIuMSAxLjEuNS40LjkuOSAxLjIgMS40LjIuNS40IDEgLjMgMS41IDAgLjUtLjEgMS0uMyAxLjYtLjMuOC0uNyAxLjQtMS4zIDEuOC0uNS40LTEuMS43LTEuOC45LS42LjItMS4zLjMtMiAuM3MtMS40LS4xLTItLjJjLS42LS4xLTEuMi0uMi0xLjctLjRzLS45LS4zLTEuMi0uNGMtLjEuMy0uMi43LS4yIDEgMCAuMyAwIC43LjEgMSAuMS4zLjMuNi41LjhzLjYuNSAxIC42LjguMiAxLjEuMWMuMy0uMS42LS4xLjgtLjNsLjYtLjNjLjItLjEuMy0uMS41LS4xLjEgMCAuMi4xLjQuMnMuNC4zLjUuNWMuMi4yLjMuNS40LjhzMCAuNi0uMSAxYy0uMi41LS41LjktMSAxLjEtLjQuMi0xIC40LTEuNS40LS42IDAtMS4yIDAtMS44LS4xLS42LjItMS4zIDAtMS44LS4yem00LjktMTAuOWMtLjQtLjEtLjctLjEtMS4xIDAtLjQuMS0uNy4zLTEgLjYtLjMuMy0uNi42LS44LjktLjIuNC0uNS43LS43IDEgMS4xLjQgMiAuNSAyLjguNC44LS4xIDEuMy0uNSAxLjYtMS4xLjEtLjMuMS0uNyAwLTEtLjEtLjQtLjQtLjctLjgtLjh6bTE0LjEgMTAuNmMtLjEtLjEtLjItLjEtLjMtLjItLjEtLjEtLjItLjItLjMtLjItLjEtLjEtLjItLjItLjItLjMtLjEtLjEtLjEtLjIgMC0uMi4xLS4yLjMtLjQuNC0uNS4xLS4yLjItLjMuNC0uNS4yLS4zLjQtLjYuNC0uOSAwLS4zLS4xLS41LS4zLS43LS40LS4zLTEtLjItMS42LjItLjcuNC0xLjQgMS4xLTIuMiAyLjItLjQuNS0uOCAxLTEuMiAxLjYtLjUuNi0uOSAxLjItMS4zIDEuNy0uNC42LS44IDEtMS4xIDEuNS0uMy40LS41LjctLjYuOS0uMS4yLS4yLjItLjQuMnMtLjMgMC0uNC0uMWwtLjgtLjVjLS41LS4zLS44LS42LTEuMS0uOS0uMi0uMy0uNC0uNi0uNC0uOS0uMS0uMyAwLS42LjEtLjkuMS0uMy4zLS42LjUtMSAuMi0uMi40LS42LjctMSAuMy0uNC43LTEgMS4zLTEuNy41LS43IDEuMi0xLjYgMi4xLTIuNy44LTEuMSAxLjktMi41IDMuMS00LjEuMy0uNC42LS42LjktLjRsLjkuNWMuNC4zLjguNSAxIC44LjIuMy40LjUuNS44LjEuMy4xLjUgMCAuOC0uMS4zLS4xLjUtLjMuOC40LS4yLjgtLjQgMS4zLS41LjQtLjEuOC0uMSAxLjItLjEuNCAwIC43LjEgMS4xLjIuMy4xLjYuMi45LjQuMy4yLjYuNC44LjcuMi4zLjQuNi41IDEgLjEuNC4xLjggMCAxLjItLjEuNC0uMy45LS42IDEuM3MtLjYuOC0xIDEuMWMtLjQuMy0uOC41LTEuMi43LS40LjEtLjguMi0xLjMuMi0uNy0uMi0xLjEtLjMtMS41LS41em0yLjQgMTMuM2MtLjYtLjUtMS4xLTEuMS0xLjUtMS44LS40LS43LS43LTEuNC0uOC0yLjItLjEtLjggMC0xLjYuMy0yLjUuMy0uOS45LTEuNyAxLjgtMi42LjMtLjMuNy0uNyAxLjItMS4xLjUtLjQgMS4xLS44IDEuNy0xLjEuNi0uMyAxLjMtLjYgMi4xLS45LjctLjIgMS41LS4zIDIuMy0uMy44IDAgMS42LjIgMi41LjUuOC4zIDEuNy45IDIuNSAxLjcuNy42IDEuMiAxLjMgMS41IDEuOS4zLjYuNSAxLjIuNSAxLjdzLS4xIDEtLjMgMS41Yy0uMi41LS41LjktLjkgMS4zLS42LjYtMS4yIDEtMS45IDEuMi0uNy4yLTEuMy4zLTIgLjItLjctLjEtMS4zLS4zLTEuOS0uNWwtMS44LS45Yy0uNS0uMy0xLS43LTEuNC0xLS40LS4zLS43LS42LS45LS44LS4yLjItLjUuNS0uNi44LS4yLjMtLjMuNi0uMy45IDAgLjMgMCAuNi4xIDEgLjEuMy4zLjcuNyAxIC4zLjMuNy41IDEgLjYuMy4xLjYuMS44LjEuMyAwIC41LS4xLjctLjEuMiAwIC40IDAgLjUuMi4xLjEuMi4yLjMuNC4xLjIuMi40LjMuNy4xLjMuMS42IDAgLjktLjEuMy0uMi42LS41LjktLjQuNC0uOC42LTEuMy43LS41LjEtMSAwLTEuNi0uMi0uNS0uMi0xLjEtLjQtMS42LS44LS42LS42LTEuMS0xLTEuNS0xLjR6bTguOS04LjNjLS4zLS4zLS42LS40LTEtLjRzLS43IDAtMS4xLjFjLS40LjEtLjguMy0xLjEuNS0uNC4yLS43LjUtMSAuNy44LjcgMS42IDEuMiAyLjQgMS40LjguMiAxLjQuMSAxLjktLjQuMy0uMy40LS42LjUtLjktLjEtLjMtLjMtLjYtLjYtMXptMS43IDEyLjNjLjUuNi42IDEuMS41IDEuNi0uMS41LS40LjktMSAxLjMtLjIuMi0uNS4zLS44LjUtLjMuMi0uNy4yLTEgLjMtLjQgMC0uNyAwLTEuMS0uMi0uNC0uMS0uNy0uNC0xLjEtLjktLjUtLjYtLjYtMS4yLS41LTEuNy4yLS41LjUtLjkgMS4xLTEuMy4zLS4yLjYtLjQgMS0uNS4zLS4xLjctLjIgMS0uMi4zIDAgLjcuMSAxIC4yLjMuMi42LjUuOS45em0xLjktLjdjLS4zLS40LS40LS43LS41LTEtLjEtLjMtLjEtLjYgMC0uOC4xLS4zLjMtLjUuNS0uOC4yLS4zLjUtLjUuOS0uOC4xLS4xLjMtLjIuNC0uMy4yLS4xLjQtLjIuNi0uNGwuOS0uNmMuNC0uMi45LS41IDEuNC0uOS42LS40IDEuMy0uOCAyLjEtMS4zczEuOC0xLjIgMy0xLjljLjMtLjIuNi0uMy43LS4zLjEgMCAuMi4xLjMuM2wxIDEuM2MuNi44LjggMS41LjggMi0uMS42LS4zIDEtLjggMS4zLS4zLjItLjYuNC0xLjEuNy0uNS4zLTEgLjYtMS42LjktLjYuMy0xLjIuNi0xLjkgMS0uNy4zLTEuMy42LTIgMS0uNy4zLTEuMy42LTEuOS45LS42LjMtMS4xLjUtMS41LjctLjIuMS0uNC4xLS41LjEtLjEgMC0uMi0uMS0uMy0uM2wtLjUtLjh6IiBmaWxsPSIjZmZmIi8+PGc+PHBhdGggY2xhc3M9InN0MiIgZD0iTTM5LjggOTQuN2MtLjYtLjktMi44LTUuOS00LjUtOS44LTEuMS0yLjUtMS40LTQuMS0xLjctNC40LS43LS42LTIuMi0uNy0yLjkuOC0uNiAxLjQtLjYgNC43LjkgNi43IDAgMC01LTEuOS0xMi44LTctMi42LTEuNy0zLjktMi4yLTQuOS0uNS0uOSAxLjUgMi4zIDMuNiAyLjMgMy42bDYuMSA0LjNjLTIuNS0xLjMtNi4xLTMuNC04LTQuOC0yLjktMS43LTQuNS0yLTUuMy0uNi0uOSAxLjQgMS44IDMuNCAxLjggMy4zIDEuNiAxLjIgMy4xIDIuNCA0LjcgMy40LS44LS41LTEuNi0xLTIuMi0xLjQtMi43LTEuOC00LTIuMS00LjktLjctLjkgMS40IDEuNSAzLjQgMS41IDMuMy44LjYgMS41IDEuMiAyLjMgMS43LTEuOC0uOS0yLjUtLjctMy4xLjItLjkgMS40IDIgMy44IDIgMy44IDQgMy4xIDcuOCA1LjYgMTEuNCA3LjYgMCAwIDQuNCAyLjMgNy41IDIuOSAzIC42IDQuMyAxLjMgNi4yLjEgMy0xLjggNi4yLTUuOCA1LjItOC45LS4xIDAtLjctMi4xLTEuNi0zLjZ6Ii8+PHBhdGggY2xhc3M9InN0MyIgZD0iTTM5LjggOTQuN2MtLjYtLjktMi44LTUuOS00LjUtOS44LTEuMS0yLjUtMS40LTQuMS0xLjctNC40LS43LS42LTIuMi0uNy0yLjkuOC0uNiAxLjQtLjYgNC43LjkgNi43IDAgMC01LTEuOS0xMi44LTctMi42LTEuNy0zLjktMi4yLTQuOS0uNS0uOSAxLjUgMi4zIDMuNiAyLjMgMy42bDYuMSA0LjNjLTIuNS0xLjMtNi4xLTMuNC04LTQuOC0yLjktMS43LTQuNS0yLTUuMy0uNi0uOSAxLjQgMS44IDMuNCAxLjggMy4zIDEuNiAxLjIgMy4xIDIuNCA0LjcgMy40LS44LS41LTEuNi0xLTIuMi0xLjQtMi43LTEuOC00LTIuMS00LjktLjctLjkgMS40IDEuNSAzLjQgMS41IDMuMy44LjYgMS41IDEuMiAyLjMgMS43LTEuOC0uOS0yLjUtLjctMy4xLjItLjkgMS40IDIgMy44IDIgMy44IDQgMy4xIDguNCA1LjQgMTIgNy40IDAgMCA0LjMgMS45IDcuMyAyLjUgMyAuNiAzLjggMS4zIDUuNy4yIDMtMS44IDYuMy01LjIgNS4zLTguNC0uMSAwLS43LTIuMS0xLjYtMy42eiIvPjxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik0yMS4zIDk4LjVDMTguNCA5Ni45IDEyLjIgOTIuNCA5IDkwYzAgMCA3LjggNy41IDEyLjMgOC41em0yLjItMy42Yy0yLjktMS42LTkuNy02LjMtMTIuOS04LjYgMCAwIDguNCA3LjUgMTIuOSA4LjZ6bTMuMy00Yy0xLjctLjktMi45LTEuNi00LjUtMi40LTEuNS0uNy03LjYtNS4zLTcuNi01LjNzMS43IDEuNyAzLjMgMy4xYzAtLjEgNC4zIDMuNSA4LjggNC42em00LjYtMi44bC45IDEuN3MtMi40LTIuMi0yLjctMi40bDEuOC43eiIvPjxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xMi4xIDEwMy4zYy4xLS4xLjEtLjIuMS0uMy4xLS4zLS4xLS42LS40LS43LTYuMy0xLjQtNi44LTYuNS02LjgtNi41IDAtLjMtLjMtLjUtLjYtLjVzLS41LjMtLjUuNmMwIC4xLjUgNS45IDcuNiA3LjcuMi0uMS40LS4xLjYtLjN6bS0yLjEgNGMuMS0uMS4xLS4xLjEtLjIuMS0uMy0uMS0uNi0uMy0uNy03LjUtMi42LTguNi04LjUtOC43LTguNS0uMS0uMy0uMy0uNS0uNy0uNC0uMi0uMS0uNC4yLS40LjVzMS4zIDYuNiA5LjQgOS40Yy4yLjEuNCAwIC42LS4xeiIvPjwvZz48L2c+PC9zd2l0Y2g+PC9zdmc+"}},"time_used":12,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/max-widget.css","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.484Z","timestamp":1785143155484,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/css/max-widget.css HTTP/1.1\r\nHost: embed.tawk.to\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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: text/css\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"1419f2a1837ad0239c12ed0298d67590\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591664\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c31c9c30883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":102656,"size_decoded":23014,"mime_type":"text/css","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"1419f2a1837ad0239c12ed0298d67590","sha1":"45d8dbfeeecc27db2ef5707a1f3808a66c1d2b9f","sha256":"6dd414390ef7f11315507ed32ddfef2b85d3f9a683db2bfb8cdef66b6264ab70","sha512":"c41f632c69630b0f20ee3523e6da536d10fe5e109b8a2ec2fc3305c3b8f0b7185695d980229e6ee57db83823a1ab2f120c9677670a555dd9a681b3b2f50c3a19","ssdeep":"1536:f/Uifm7kUdwddCri1iLc0Lg261F2BBC4ikauV3cGiH27PNWE98MGfU0nPROpmi0m:xfuVLmi0V0Z+tKaK","tlshash":"41a399b2e56710cc7363c22692c1faac1029e370c757caa9f827767d4bc25963562f9c","first_seen":"2026-07-02T06:23:48.069239Z","last_seen":"2026-08-03T12:50:03.382749Z","times_seen":2973,"resource_available":false,"data":"OnJvb3R7LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7LS10YXdrLWhlYWRlci10ZXh0LWNvbG9yOiNmZmZ9aHRtbHtmb250LWZhbWlseTpMYXRvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNjE4O2xldHRlci1zcGFjaW5nOm5vcm1hbDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMyNDI0MjQ7c2Nyb2xsLWJlaGF2aW9yOnNtb290aH1ib2R5e21hcmdpbjowfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZTpub25lfWE6Zm9jdXN7b3V0bGluZToxcHggc29saWQgIzA2Zn0udGF3ay1saW5rLGF7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stbGluaywudGF3ay1saW5rOmhvdmVyLGEsYTpob3Zlcntjb2xvcjojMDNhODRlO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfTpub3QocHJlKT5jb2RlLDpub3QocHJlKT5rYmQsOm5vdChwcmUpPnNhbXB7Zm9udC1mYW1pbHk6TGF0byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODEycmVtO2NvbG9yOiNiZjEyMTI7d2hpdGUtc3BhY2U6bm93cmFwfWVte2NvbG9yOiNiZjEyMTJ9aW5ze2JhY2tncm91bmQ6I2ZmZDtjb2xvcjojMTIxMjEyfW1hcmt7YmFja2dyb3VuZDpyZ2JhKDEwOSw1NSwyMTgsLjEpO2NvbG9yOiMwM2E4NGV9cXtmb250LXN0eWxlOml0YWxpY31zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1cHt0b3A6LS41ZW19c3Vie2JvdHRvbTouMjVlbX1hdWRpbyxjYW52YXMsaWZyYW1lLGltZyxzdmcsdmlkZW97dmVydGljYWwtYWxpZ246bWlkZGxlfWF1ZGlvLGNhbnZhcyxpbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87Ym94LXNpemluZzpib3JkZXItYm94fXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1pbWc6bm90KFtzcmNdKXt2aXNpYmlsaXR5OmhpZGRlbn1hZGRyZXNzLGRsLGZpZWxkc2V0LGZpZ3VyZSxvbCxwLHByZSx1bHttYXJnaW46MH0qK2FkZHJlc3MsKitkbCwqK2ZpZWxkc2V0LCorZmlndXJlLCorb2wsKitwLCorcHJlLCordWx7bWFyZ2luLXRvcDowfSorLnRhd2staDEsKisudGF3ay1oMiwqKy50YXdrLWgzLCorLnRhd2staDQsKisudGF3ay1oNSwqKy50YXdrLWg2LCoraDEsKitoMiwqK2gzLCoraDQsKitoNSwqK2g2e21hcmdpbi10b3A6MS41cmVtfS50YXdrLWgxLGgxe2ZvbnQtc2l6ZToxLjdyZW07bGluZS1oZWlnaHQ6MS4yfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjI3NXJlbTtsaW5lLWhlaWdodDoxLjM7Zm9udC13ZWlnaHQ6NDAwfS50YXdrLWgzLGgze2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo0MDB9LnRhd2staDQsaDR7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS40fS50YXdrLWg1LGg1e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNH0udGF3ay1oNixoNntmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjR9QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWgxLGgxe2ZvbnQtc2l6ZToycmVtfS50YXdrLWgyLGgye2ZvbnQtc2l6ZToxLjVyZW19fW9sLHVse3BhZGRpbmctbGVmdDoycmVtfW9sPmxpPm9sLG9sPmxpPnVsLHVsPmxpPm9sLHVsPmxpPnVse21hcmdpbi10b3A6MH1kdHtmb250LXdlaWdodDo4MDB9ZGR7bWFyZ2luLWxlZnQ6MH0udGF3ay1ocixocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGU7dGV4dC1hbGlnbjppbmhlcml0O21hcmdpbjowIDAgMXJlbTtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjZTVlNWU1fSorLnRhd2staHIsKitocnttYXJnaW4tdG9wOjFyZW19LnRhd2staHIudGF3ay1oci1kYXNoZWR7Ym9yZGVyLXN0eWxlOmRhc2hlZH1hZGRyZXNze2ZvbnQtc2l6ZTpub3JtYWx9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtc3R5bGU6aXRhbGljfSorYmxvY2txdW90ZXttYXJnaW4tdG9wOjFyZW19YmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjB9YmxvY2txdW90ZSBmb290ZXJ7bWFyZ2luLXRvcDouNnJlbTtmb250LXNpemU6LjgxMnJlbTtsaW5lLWhlaWdodDoxLjV9cHJle2ZvbnQ6LjgxMnJlbS8xLjUgTGF0byxzYW5zLXNlcmlmO2NvbG9yOiMxMjEyMTI7LW1vei10YWItc2l6ZTo0Oy1vLXRhYi1zaXplOjQ7dGFiLXNpemU6NDtvdmVyZmxvdzphdXRvfXByZSBjb2Rle2ZvbnQtZmFtaWx5OkxhdG8sc2Fucy1zZXJpZn06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6IzAzYTg0ZTtjb2xvcjojZmZmO3RleHQtc2hhZG93Om5vbmV9OjpzZWxlY3Rpb257YmFja2dyb3VuZDojMDNhODRlO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6bm9uZX1kZXRhaWxzLG1haW57ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1pZnJhbWV7Ym9yZGVyOjB9LnRhd2stZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS50YXdrLWZsZXgtaW5saW5le2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9LnRhd2stZmxleC1pbmxpbmU6YWZ0ZXIsLnRhd2stZmxleC1pbmxpbmU6YmVmb3JlLC50YXdrLWZsZXg6YWZ0ZXIsLnRhd2stZmxleDpiZWZvcmV7ZGlzcGxheTpub25lfS50YXdrLWZsZXgtbGVmdHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay1mbGV4LWxlZnRcQHN7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAc3stbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQHN7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAc3stbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHN7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtbGVmdFxAbXstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBtey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbXstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBtey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbXstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLWZsZXgtbGVmdFxAbHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtY2VudGVyXEBsey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAbHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEBsey1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LWFyb3VuZFxAbHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLWZsZXgtbGVmdFxAeGx7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAeGx7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1mbGV4LXJpZ2h0XEB4bHstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC1iZXR3ZWVuXEB4bHstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQHhsey1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfX0udGF3ay1mbGV4LXN0cmV0Y2h7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS50YXdrLWZsZXgtdG9wey1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnRhd2stZmxleC1taWRkbGV7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0udGF3ay1mbGV4LWJvdHRvbXstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9LnRhd2stZmxleC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnRhd2stZmxleC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LnRhd2stZmxleC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnRhd2stZmxleC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9LnRhd2stZmxleC1ub3dyYXB7LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0udGF3ay1mbGV4LXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS50YXdrLWZsZXgtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9LnRhd2stZmxleC13cmFwLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2g7YWxpZ24tY29udGVudDpzdHJldGNofS50YXdrLWZsZXgtd3JhcC10b3B7LW1zLWZsZXgtbGluZS1wYWNrOnN0YXJ0O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LXdyYXAtbWlkZGxley1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC13cmFwLWJvdHRvbXstbXMtZmxleC1saW5lLXBhY2s6ZW5kO2FsaWduLWNvbnRlbnQ6ZmxleC1lbmR9LnRhd2stZmxleC13cmFwLWJldHdlZW57LW1zLWZsZXgtbGluZS1wYWNrOmp1c3RpZnk7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtd3JhcC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9LnRhd2stZmxleC1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3R7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NDBweCl7LnRhd2stZmxleC1maXJzdFxAc3stbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHN7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTYwcHgpey50YXdrLWZsZXgtZmlyc3RcQG17LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBtey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCl7LnRhd2stZmxleC1maXJzdFxAbHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQGx7LW1zLWZsZXgtb3JkZXI6OTk7b3JkZXI6OTl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsudGF3ay1mbGV4LWZpcnN0XEB4bHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0udGF3ay1mbGV4LWxhc3RcQHhsey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX0udGF3ay1mbGV4LW5vbmV7LW1zLWZsZXg6bm9uZTtmbGV4Om5vbmV9LnRhd2stZmxleC1hdXRvey1tcy1mbGV4OmF1dG87ZmxleDphdXRvfS50YXdrLWZsZXgtMXstbXMtZmxleDoxO2ZsZXg6MX0udGF3ay1tYXJnaW57bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLC50YXdrLW1hcmdpbi10b3B7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1ib3R0b217bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sZWZ0e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbHttYXJnaW4tYm90dG9tOi42cmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14c21hbGwsLnRhd2stbWFyZ2luLXhzbWFsbC10b3B7bWFyZ2luLXRvcDouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b217bWFyZ2luLWJvdHRvbTouNnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0e21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0Oi42cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14c21hbGwtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi42cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tc21hbGx7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi1zbWFsbCwudGF3ay1tYXJnaW4tc21hbGwtdG9we21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXNtYWxsLWJvdHRvbXttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1sZWZ0e21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLXNtYWxsLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcnRsIC50YXdrLW1hcmdpbi1zbWFsbC1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLW1lZGl1bSwudGF3ay1tYXJnaW4tbWVkaXVtLXRvcHttYXJnaW4tdG9wOjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1tZWRpdW0tYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stbWFyZ2luLW1lZGl1bS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbWVkaXVtLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1tZWRpdW0tcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjJyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjJyZW0haW1wb3J0YW50fSorLnRhd2stbWFyZ2luLWxhcmdlLC50YXdrLW1hcmdpbi1sYXJnZS10b3B7bWFyZ2luLXRvcDoycmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4tbGFyZ2UtYm90dG9te21hcmdpbi1ib3R0b206MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tbGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MnJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDoycmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MnJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi1sYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4tbGFyZ2UsLnRhd2stbWFyZ2luLWxhcmdlLXRvcHttYXJnaW4tdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDoyLjVyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1sYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6Mi41cmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXhsYXJnZXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9KisudGF3ay1tYXJnaW4teGxhcmdlLC50YXdrLW1hcmdpbi14bGFyZ2UtdG9we21hcmdpbi10b3A6Mi41cmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1sZWZ0e21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLWxlZnR7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6Mi41cmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtcmlnaHR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjIuNXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLW1hcmdpbi14bGFyZ2V7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0qKy50YXdrLW1hcmdpbi14bGFyZ2UsLnRhd2stbWFyZ2luLXhsYXJnZS10b3B7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0udGF3ay1tYXJnaW4teGxhcmdlLWJvdHRvbXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi14bGFyZ2UtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXhsYXJnZS1yaWdodHttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4teGxhcmdlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH19LnRhd2stbWFyZ2luLXJlbW92ZXttYXJnaW46MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS10b3B7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWJvdHRvbXttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDowIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1yZW1vdmUtbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLXJlbW92ZS1yaWdodHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLXZlcnRpY2Fse21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tcmVtb3ZlLWFkamFjZW50Kyp7bWFyZ2luLXRvcDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tdG9we21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tYm90dG9te21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stbWFyZ2luLWF1dG8tbGVmdHttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLWxlZnR7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLW1hcmdpbi1hdXRvLXJpZ2h0e21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDowIWltcG9ydGFudH0udGF3ay1tYXJnaW4tYXV0by12ZXJ0aWNhbHttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9LnRhd2stcGFkZGluZ3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctdG9we3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGVmdHtwYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1ib3R0b217cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yaWdodHtwYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay1wYWRkaW5ne3BhZGRpbmc6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy10b3B7cGFkZGluZy10b3A6MnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sZWZ0e3BhZGRpbmctbGVmdDoycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWJvdHRvbXtwYWRkaW5nLWJvdHRvbToycmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MnJlbSFpbXBvcnRhbnR9fS50YXdrLXBhZGRpbmctc21hbGx7cGFkZGluZzouNnJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1zbWFsbC10b3B7cGFkZGluZy10b3A6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtbGVmdHtwYWRkaW5nLWxlZnQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctc21hbGwtYm90dG9te3BhZGRpbmctYm90dG9tOi42cmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXNtYWxsLXJpZ2h0e3BhZGRpbmctcmlnaHQ6LjZyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLXRvcHtwYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLWxhcmdlLWxlZnR7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtcmlnaHR7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLXBhZGRpbmctbGFyZ2V7cGFkZGluZzoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtdG9we3BhZGRpbmctdG9wOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1sZWZ0e3BhZGRpbmctbGVmdDoyLjVyZW0haW1wb3J0YW50fS50YXdrLXBhZGRpbmctbGFyZ2UtYm90dG9te3BhZGRpbmctYm90dG9tOjIuNXJlbSFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1sYXJnZS1yaWdodHtwYWRkaW5nLXRvcDoyLjVyZW0haW1wb3J0YW50fX0udGF3ay1wYWRkaW5nLXJlbW92ZXtwYWRkaW5nOjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXRvcHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ib3R0b217cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnRhd2stcGFkZGluZy1yZW1vdmUtbGVmdHtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1sZWZ0e3BhZGRpbmctbGVmdDphdXRvIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXBhZGRpbmctcmVtb3ZlLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9Ym9keS50YXdrLSAudGF3ay1wYWRkaW5nLXJlbW92ZS1yaWdodHtwYWRkaW5nLXJpZ2h0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0udGF3ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFse3BhZGRpbmctbGVmdDowIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS50YXdrLXRleHQtcmVndWxhci0xe2ZvbnQtc2l6ZTouNzVyZW19LnRhd2stdGV4dC1yZWd1bGFyLTEsLnRhd2stdGV4dC1yZWd1bGFyLTJ7bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1yZWd1bGFyLTJ7Zm9udC1zaXplOi44MTJyZW19LnRhd2stdGV4dC1yZWd1bGFyLTN7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTEsLnRhd2stdGV4dC1yZWd1bGFyLTR7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTJ7Zm9udC1zaXplOjEuMjVyZW19LnRhd2stdGV4dC1ib2xkLTIsLnRhd2stdGV4dC1ib2xkLTN7bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtYm9sZC0ze2ZvbnQtc2l6ZToxLjVyZW19LnRhd2stdGV4dC1ib2xkLTR7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6MS41O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMTIxMjEyfS50YXdrLXRleHQtZ3JlZW4tMXtjb2xvcjojMDNhODRlIWltcG9ydGFudH0udGF3ay10ZXh0LXllbGxvdy0xe2NvbG9yOiNmZGMyMGYhaW1wb3J0YW50fS50YXdrLXRleHQtcmVkLTF7Y29sb3I6I2JmMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTB7Y29sb3I6IzI0MjQyNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTF7Y29sb3I6IzEyMTIxMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTJ7Y29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTN7Y29sb3I6IzU0NTQ1NCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTR7Y29sb3I6IzZlNmU2ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTV7Y29sb3I6IzgyODI4MiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTZ7Y29sb3I6I2IyYjJiMiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTd7Y29sb3I6I2Q0ZDRkNCFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTh7Y29sb3I6I2U1ZTVlNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTl7Y29sb3I6I2Y1ZjVmNSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ncmV5LTEwe2NvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS50YXdrLXRleHQtd2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhd2stdGV4dC1ib2xke2ZvbnQtd2VpZ2h0OjYwMH0udGF3ay10ZXh0LWl0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGF3ay10ZXh0LW9ibGlxdWV7Zm9udC1zdHlsZTpvYmxpcXVlfS50YXdrLXRleHQtdW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stdGV4dC11cHBlcmNhc2V7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1sb3dlcmNhc2V7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlIWltcG9ydGFudH0udGF3ay10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGF3ay10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KXsudGF3ay10ZXh0LWxlZnRcQHN7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBzLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBze3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAc3t0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBze3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCl7LnRhd2stdGV4dC1sZWZ0XEBte3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1yaWdodFxAbSxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAbXt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLXRleHQtcmlnaHRcQG17dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LWNlbnRlclxAbXt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay10ZXh0LWxlZnRcQGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBsLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBse3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAbHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBse3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAwcHgpey50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEB4bCxib2R5LnRhd2stcnRsIC50YXdrLXRleHQtbGVmdFxAeGx7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEB4bHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEB4bHt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fS50YXdrLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRvcCFpbXBvcnRhbnR9LnRhd2stdGV4dC1taWRkbGV7dmVydGljYWwtYWxpZ246bWlkZGxlIWltcG9ydGFudH0udGF3ay10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS50YXdrLXRleHQtYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS50YXdrLXRleHQtbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1ib3gtc2hhZG93LXhzbWFsbHtib3gtc2hhZG93OjAgMnB4IDNweCByZ2JhKDAsMCwwLC4wOCl9LnRhd2stYm94LXNoYWRvdy1zbWFsbHtib3gtc2hhZG93OjAgMnB4IDhweCByZ2JhKDAsMCwwLC4xKX0udGF3ay1ib3gtc2hhZG93LW1lZGl1bXtib3gtc2hhZG93OjAgNXB4IDE1cHggcmdiYSgwLDAsMCwuMTIpfS50YXdrLWJveC1zaGFkb3ctbGFyZ2V7Ym94LXNoYWRvdzowIDE0cHggMjVweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stYm94LXNoYWRvdy14bGFyZ2V7Ym94LXNoYWRvdzowIDI4cHggNTBweCByZ2JhKDAsMCwwLC4xNil9LnRhd2stdGV4dC10cnVuY2F0ZXttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udGF3ay1mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS50YXdrLWZsb2F0LXJpZ2h0LGJvZHkudGF3ay1ydGwgLnRhd2stZmxvYXQtbGVmdHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay1mbG9hdC1yaWdodHtmbG9hdDpsZWZ0IWltcG9ydGFudH0udGF3ay1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YXdrLW91dGxpbmU6Zm9jdXMtdmlzaWJsZXtib3JkZXI6MXB4IHNvbGlkICMwNmYhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KSFpbXBvcnRhbnR9LnRhd2stYWxlcnR7cGFkZGluZzoxcmVtIDEuM3JlbTtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzEyMTIxMjtib3JkZXI6MXB4IHNvbGlkICNlNWU1ZTU7Ym9yZGVyLWxlZnQtd2lkdGg6NXB4O2JvcmRlci1yYWRpdXM6MTBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRhd2stYWxlcnQgLnRhd2stY2xvc2V7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjowO2hlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6MCA1cHggNXB4IDA7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Zpc2liaWxpdHk6aGlkZGVuO2JhY2tncm91bmQ6I2ZhZmFmYX0udGF3ay1hbGVydCAudGF3ay1jbG9zZTpmb2N1cywudGF3ay1hbGVydCAudGF3ay1jbG9zZTpob3ZlcntjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOm5vbmV9LnRhd2stYWxlcnQgLnRhd2stY2xvc2UudGF3ay1pc01vYmlsZSwudGF3ay1hbGVydDpob3ZlciAudGF3ay1jbG9zZXt2aXNpYmlsaXR5OnZpc2libGV9LnRhd2stYWxlcnQgLnRhd2stY2xvc2Ugc3BhbntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOi45Mzc1cmVtO2hlaWdodDouOTM3NXJlbTtvcGFjaXR5Oi44fS50YXdrLWFsZXJ0IC50YXdrLWNsb3NlOmhvdmVyIHNwYW4sLnRhd2stYWxlcnQgLnRhd2stY2xvc2Ugc3Bhbjpob3ZlcntvcGFjaXR5OjF9LnRhd2stY2xvc2Ugc3BhbjphZnRlciwudGF3ay1jbG9zZSBzcGFuOmJlZm9yZXtkaXNwbGF5OmlubGluZS1ibG9jaztjb250ZW50OiIgIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDttYXJnaW46YXV0bztoZWlnaHQ6LjkzNzVyZW07d2lkdGg6LjEyNXJlbTtiYWNrZ3JvdW5kLWNvbG9yOiMzMzN9LnRhd2stY2xvc2Ugc3BhbjpiZWZvcmV7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LnRhd2stY2xvc2Ugc3BhbjphZnRlcnt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9LnRhd2stYWxlcnQtc3VjY2Vzc3tib3JkZXItbGVmdC1jb2xvcjojMDNhODRlfS50YXdrLWFsZXJ0LXN1Y2Nlc3MgLnRhd2stYWxlcnQtaWNvbiwudGF3ay1hbGVydC1zdWNjZXNzIC50YXdrLWFsZXJ0LXRpdGxle2NvbG9yOiMwM2E4NGV9LnRhd2stYWxlcnQtd2FybmluZ3tib3JkZXItbGVmdC1jb2xvcjojZmRjMjBmfS50YXdrLWFsZXJ0LXdhcm5pbmcgLnRhd2stYWxlcnQtaWNvbiwudGF3ay1hbGVydC13YXJuaW5nIC50YXdrLWFsZXJ0LXRpdGxle2NvbG9yOiNmZGMyMGZ9LnRhd2stYWxlcnQtZGFuZ2Vye2JvcmRlci1sZWZ0LWNvbG9yOiNiZjEyMTJ9LnRhd2stYWxlcnQtZGFuZ2VyIC50YXdrLWFsZXJ0LWljb24sLnRhd2stYWxlcnQtZGFuZ2VyIC50YXdrLWFsZXJ0LXRpdGxle2NvbG9yOiNiZjEyMTJ9LnRhd2stYWxlcnQtdGl0bGV7Zm9udC1zaXplOi45MzdyZW07Y29sb3I6IzEyMTIxMn0udGF3ay1hbGVydC1pY29ue2NvbG9yOiMxMjEyMTJ9LnRhd2stYWxlcnQteHNtYWxse3BhZGRpbmc6LjZyZW19LnRhd2stYWxlcnQteHNtYWxsIC50YXdrLWFsZXJ0LXRpdGxle2ZvbnQtc2l6ZTouNzVyZW19LnRhd2stYWxlcnQteHNtYWxsIC50YXdrLWFsZXJ0LWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1zaXplOmNhbGMoZm9udFNpemUoeHNtYWxsKSAtIC4xMjVyZW0pfS50YXdrLWFsZXJ0LXNtYWxse3BhZGRpbmc6MXJlbX0udGF3ay1hbGVydC1zbWFsbCAudGF3ay1hbGVydC10aXRsZXtmb250LXNpemU6LjgxMnJlbX0udGF3ay1hbGVydC1tZWRpdW17cGFkZGluZzoycmVtfS50YXdrLWFsZXJ0LW1lZGl1bSAudGF3ay1hbGVydC10aXRsZXtmb250LXNpemU6LjkzN3JlbX0uYWxlcnQtZmFkZS1lbnRlci1hY3RpdmUsLmFsZXJ0LWZhZGUtbGVhdmUtYWN0aXZle3RyYW5zaXRpb246b3BhY2l0eSAuNXN9LmFsZXJ0LWZhZGUtZW50ZXIsLmFsZXJ0LWZhZGUtbGVhdmUtdG97b3BhY2l0eTowfS50YXdrLWF2YXRhcntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6M3JlbTt3aWR0aDozcmVtO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjIuNzVyZW07dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZWZlZmVmO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjE1cHg7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OmhpZGRlbn0udGF3ay1hdmF0YXIudGF3ay1hdmF0YXItY291bnR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1hdmF0YXIgLnRhd2stYXZhdGFyLWltYWdle2xpbmUtaGVpZ2h0OjB9LnRhd2stYXZhdGFyIC50YXdrLWF2YXRhci1pbWFnZT5pbWd7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTstby1vYmplY3QtZml0OmNvdmVyO29iamVjdC1maXQ6Y292ZXI7LW8tb2JqZWN0LXBvc2l0aW9uOmNlbnRlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyfS50YXdrLWF2YXRhci14c21hbGx7aGVpZ2h0OjJyZW07d2lkdGg6MnJlbTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNzVyZW19LnRhd2stYXZhdGFyLXNtYWxse2hlaWdodDoyLjVyZW07d2lkdGg6Mi41cmVtO2ZvbnQtc2l6ZTouODEycmVtO2xpbmUtaGVpZ2h0OjIuMjVyZW19LnRhd2stYXZhdGFyLW1lZGl1bXtoZWlnaHQ6My41cmVtO3dpZHRoOjMuNXJlbTtmb250LXNpemU6LjkzN3JlbTtsaW5lLWhlaWdodDozLjI1cmVtfS50YXdrLWF2YXRhci1sYXJnZXtoZWlnaHQ6NHJlbTt3aWR0aDo0cmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjMuNzVyZW19LnRhd2stYmFkZ2V7aGVpZ2h0OjEuMjVyZW07d2lkdGg6MS4yNXJlbTtmb250LXNpemU6LjY4N3JlbTtsaW5lLWhlaWdodDoxLjI1cmVtO2JhY2tncm91bmQ6I2JmMTIxMjtjb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6NTAlfS50YXdrLWJhZGdlLC50YXdrLWJ1dHRvbntib3gtc2l6aW5nOmJvcmRlci1ib3g7dmVydGljYWwtYWxpZ246bWlkZGxlO3RleHQtYWxpZ246Y2VudGVyfS50YXdrLWJ1dHRvbnttYXJnaW46MDtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47Zm9udDppbmhlcml0O2NvbG9yOmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06bm9uZTtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nOi42cmVtIDFyZW07Zm9udC1zaXplOjFyZW07Ym9yZGVyOjFweCBzb2xpZCAjMDNhODRlO2JvcmRlci1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtsaW5lLWhlaWdodDoxLjVyZW07dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMDNhODRlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay1idXR0b246bm90KC50YXdrLWJ1dHRvbi10ZXh0KXtib3gtc2hhZG93OjAgNHB4IDRweCAwIGhzbGEoMCwwJSw1MSUsLjA4KX0udGF3ay1idXR0b246bm90KDpkaXNhYmxlZCl7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stYnV0dG9uOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi43fS50YXdrLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9LnRhd2stYnV0dG9uOmhvdmVyLGEudGF3ay1idXR0b246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YS50YXdrLWJ1dHRvbjpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWJ1dHRvbjpmb2N1cy12aXNpYmxle2JvcmRlcjoxcHggc29saWQgIzA2Zjtib3gtc2hhZG93OjAgMCAwIDFweCByZ2JhKDAsMTAyLDI1NSwuNCl9LnRhd2stYnV0dG9uOmFjdGl2ZSwudGF3ay1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50YXdrLWJ1dHRvbi1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtjb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzAzYTg0ZX0udGF3ay1idXR0b24tZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2YwNTA1Yztjb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2YwNTA1Y30udGF3ay1idXR0b24tb3V0bGluZSxhLnRhd2stYnV0dG9uLW91dGxpbmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtib3JkZXItY29sb3I6IzAzYTg0ZTtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stYnV0dG9uLW91dGxpbmU6aG92ZXJ7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1idXR0b24tb3V0bGluZS1zdWNjZXNze2NvbG9yOiMwM2E4NGU7Ym9yZGVyOjEuNXB4IHNvbGlkICMwM2E4NGV9LnRhd2stYnV0dG9uLW91dGxpbmUtZGFuZ2Vye2NvbG9yOiNmMDUwNWM7Ym9yZGVyOjEuNXB4IHNvbGlkICNmMDUwNWN9LnRhd2stYnV0dG9uLWRhc2hlZHtib3JkZXItc3R5bGU6ZGFzaGVkO2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMDNhODRlO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLWJ1dHRvbi1zbWFsbHtwYWRkaW5nOi4yNXJlbSAxcmVtO2xpbmUtaGVpZ2h0OjEuNXJlbTtmb250LXNpemU6LjgxMnJlbX0udGF3ay1idXR0b24tbGFyZ2V7cGFkZGluZzoxcmVtIDJyZW07bGluZS1oZWlnaHQ6MS41cmVtO2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWJ1dHRvbi1yb3VuZGVke2JvcmRlci1yYWRpdXM6Mi41cmVtfS50YXdrLWJ1dHRvbi1zbWFsbC50YXdrLWJ1dHRvbi1yb3VuZGVke2JvcmRlci1yYWRpdXM6MS44NzVyZW19LnRhd2stYnV0dG9uLWxhcmdlLnRhd2stYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoyLjVyZW19LnRhd2stYnV0dG9uLXRleHR7cGFkZGluZzowO2xpbmUtaGVpZ2h0OjEuNjE4O2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZX0udGF3ay1idXR0b24tdGV4dCwudGF3ay1idXR0b24tdGV4dDpmb2N1cy12aXNpYmxlLC50YXdrLWJ1dHRvbi10ZXh0OmhvdmVye2NvbG9yOiMwM2E4NGU7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stYnV0dG9uLXRleHQ6YWN0aXZlLC50YXdrLWJ1dHRvbi10ZXh0OmZvY3VzLXZpc2libGV7b3V0bGluZTowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0udGF3ay1idXR0b24tdGV4dDpkaXNhYmxlZHtjb2xvcjojMjEyMTIxIWltcG9ydGFudDtjdXJzb3I6bm90LWFsbG93ZWQ7b3V0bGluZTpub25lfS50YXdrLWJ1dHRvbi1ncm91cHtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtwb3NpdGlvbjpyZWxhdGl2ZX0udGF3ay1idXR0b24tY2lyY2xle2hlaWdodDoyLjVyZW07d2lkdGg6Mi41cmVtO2xpbmUtaGVpZ2h0OjIuNXJlbTtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czoxMDAlfS50YXdrLWJ1dHRvbi1jaXJjbGUudGF3ay1idXR0b24tc21hbGx7aGVpZ2h0OjEuNjI1cmVtO3dpZHRoOjEuNjI1cmVtO2xpbmUtaGVpZ2h0OjEuNjI1cmVtfS50YXdrLWJ1dHRvbi1jaXJjbGUudGF3ay1idXR0b24tbGFyZ2V7aGVpZ2h0OjMuNzVyZW07d2lkdGg6My43NXJlbTtsaW5lLWhlaWdodDozLjc1cmVtfS50YXdrLWJ1dHRvbi1kYXNoZWQgLnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2UsLnRhd2stYnV0dG9uLW91dGxpbmUgLnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2V7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stYnV0dG9uLXRleHQudGF3ay1idXR0b24tY29sb3ItaW52ZXJzZSwudGF3ay1idXR0b24tdGV4dC50YXdrLWJ1dHRvbi1jb2xvci1pbnZlcnNlOmZvY3VzLC50YXdrLWJ1dHRvbi10ZXh0LnRhd2stYnV0dG9uLWNvbG9yLWludmVyc2U6aG92ZXJ7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0udGF3ay1jYXJke3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjEuM3JlbTtib3JkZXItcmFkaXVzOjEwcHh9LnRhd2stY2FyZCwudGF3ay1jYXJkLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOiM1NDU0NTR9LnRhd2stY2FyZC1pbnZlcnNle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojNTQ1NDU0fS50YXdrLWNhcmQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWNhcmQteHNtYWxse3BhZGRpbmc6LjZyZW19LnRhd2stY2FyZC1zbWFsbHtwYWRkaW5nOjFyZW19LnRhd2stY2FyZC1tZWRpdW17cGFkZGluZzoycmVtfS50YXdrLWNhcmQtbGFyZ2V7cGFkZGluZzoyLjVyZW19LnRhd2stY2hhdC1idWJibGV7cG9zaXRpb246cmVsYXRpdmU7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6LjZyZW07YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2NvbG9yOiMwMDA7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWNoYXQtYnViYmxlLnRhd2stYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtjb2xvcjojZmZmfS50YXdrLWNoYXQtYnViYmxlLnRhd2stYWN0aXZlIC50YXdrLXRpbWVhZ297Y29sb3I6I2ZmZn0udGF3ay1jaGF0LWJ1YmJsZT4qe21hcmdpbi10b3A6MXJlbTttYXJnaW4tYm90dG9tOjFyZW19LnRhd2stY2hhdC1idWJibGU+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0udGF3ay1jaGF0LWJ1YmJsZT46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnRhd2stY2hhdC1idWJibGUgLnRhd2stbGluaywudGF3ay1jaGF0LWJ1YmJsZSBhe3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stY2hhdC1idWJibGUgb2wsLnRhd2stY2hhdC1idWJibGUgdWx7bGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGV9LnRhd2stY2hhdC1idWJibGUgdWx7bGlzdC1zdHlsZS10eXBlOmRpc2N9LnRhd2stY2hhdC1idWJibGUgdWw+dWx7bGlzdC1zdHlsZS10eXBlOmNpcmNsZTtwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSB1bD51bD51bHtsaXN0LXN0eWxlLXR5cGU6c3F1YXJlO3BhZGRpbmctbGVmdDoxcmVtfS50YXdrLWNoYXQtYnViYmxlIHVsPnVsPnVsPnVse2xpc3Qtc3R5bGUtdHlwZTpkaXNjO3BhZGRpbmctbGVmdDoxcmVtfS50YXdrLWNoYXQtYnViYmxlIHVsPnVsPnVsPnVsPnVse2xpc3Qtc3R5bGUtdHlwZTpjaXJjbGU7cGFkZGluZy1sZWZ0OjFyZW19LnRhd2stY2hhdC1idWJibGUgb2x7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnRhd2stY2hhdC1idWJibGUgb2w+b2x7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhO3BhZGRpbmctbGVmdDoxcmVtfS50YXdrLWNoYXQtYnViYmxlIG9sPm9sPm9se2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1yb21hbjtwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSBvbD5vbD5vbD5vbHtsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbDtwYWRkaW5nLWxlZnQ6MXJlbX0udGF3ay1jaGF0LWJ1YmJsZSBvbD5vbD5vbD5vbD5vbHtsaXN0LXN0eWxlLXR5cGU6bG93ZXItYWxwaGE7cGFkZGluZy1sZWZ0OjFyZW19LnRhd2stY2hhdC1idWJibGUgYmxvY2txdW90ZXtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWxlZnQ6LjhyZW07Zm9udC1zdHlsZTpub3JtYWx9LnRhd2stY2hhdC1idWJibGUgYmxvY2txdW90ZTphZnRlciwudGF3ay1jaGF0LWJ1YmJsZSBibG9ja3F1b3RlOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtoZWlnaHQ6MTAwJTt3aWR0aDozcHg7Ym9yZGVyLXJhZGl1czozcHg7YmFja2dyb3VuZC1jb2xvcjojMTIxMjEyfS50YXdrLWNoYXQtYnViYmxlIGNvZGV7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6LjNyZW19LnRhd2stY2hhdC1idWJibGUgY29kZSwudGF3ay1jaGF0LWJ1YmJsZSBwcmV7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1O2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOiMxMjEyMTI7Y29sb3I6dmFyKC0tdGF3ay12aXNpdG9yLXRleHQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjE4ODIzNTI5NDExNzY0NzA2KX0udGF3ay1jaGF0LWJ1YmJsZSBwcmV7cGFkZGluZzouNXJlbX0udGF3ay1jaGF0LWJ1YmJsZSAudGF3ay1pY29ue2NvbG9yOiMwM2E4NGV9LnRhd2stY2hhdC1idWJibGUudGF3ay1hY3RpdmUgLnRhd2staWNvbiwudGF3ay1jaGF0LWJ1YmJsZS50YXdrLWFjdGl2ZSAudGF3ay1saW5rLC50YXdrLWNoYXQtYnViYmxlLnRhd2stYWN0aXZlIGF7Y29sb3I6I2ZmZn0udGF3ay1jaGF0LWJ1YmJsZSB1bFtjbGFzc149dGF3ay1jaGF0LWJ1YmJsZS1de21hcmdpbi1sZWZ0OjA7cGFkZGluZzowO2xpc3Qtc3R5bGU6bm9uZX0udGF3ay1jaGF0LWJ1YmJsZS1pbWFnZXN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNiwxZnIpO2dyaWQtYXV0by1yb3dzOmF1dG87Z2FwOjRweCA0cHh9LnRhd2stY2hhdC1idWJibGUtaW1hZ2VzIGxpPmRpdntoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS50YXdrLWNoYXQtYnViYmxlLWltYWdlcyBsaSAudGF3ay1pbWFnZSwudGF3ay1jaGF0LWJ1YmJsZS1pbWFnZXMgbGk+aW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWF4LXdpZHRoOm5vbmU7LW8tb2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtZml0OmNvdmVyOy1vLW9iamVjdC1wb3NpdGlvbjpjZW50ZXI7b2JqZWN0LXBvc2l0aW9uOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjEwcHh9LnRhd2stZ3JpZC0xPmxpe2dyaWQtYXJlYToxLzEvMi83O2hlaWdodDoyNTBweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtMj5saTpmaXJzdC1jaGlsZHtncmlkLWFyZWE6MS8xLzIvNDtoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTI+bGk6bnRoLWNoaWxkKDIpe2dyaWQtYXJlYToxLzQvMi83O2hlaWdodDoxMjVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtMz5saTpmaXJzdC1jaGlsZHtncmlkLWFyZWE6MS8xLzIvNztoZWlnaHQ6MTUwcHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTM+bGk6bnRoLWNoaWxkKDIpe2dyaWQtYXJlYToyLzEvMy80O2hlaWdodDoxMDBweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtMz5saTpudGgtY2hpbGQoMyl7Z3JpZC1hcmVhOjIvNC8zLzc7aGVpZ2h0OjEwMHB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC00PmxpOmZpcnN0LWNoaWxke2dyaWQtYXJlYToxLzEvMi80O2hlaWdodDoxMjVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtND5saTpudGgtY2hpbGQoMil7Z3JpZC1hcmVhOjEvNC8yLzc7aGVpZ2h0OjEyNXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC00PmxpOm50aC1jaGlsZCgzKXtncmlkLWFyZWE6Mi8xLzMvNDtoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTQ+bGk6bnRoLWNoaWxkKDQpe2dyaWQtYXJlYToyLzQvMy83O2hlaWdodDoxMjVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtNT5saTpmaXJzdC1jaGlsZHtncmlkLWFyZWE6MS8xLzIvNDtoZWlnaHQ6MTI1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTU+bGk6bnRoLWNoaWxkKDIpe2dyaWQtYXJlYToxLzQvMi83O2hlaWdodDoxMjVweDt3aWR0aDoxMDAlfS50YXdrLWdyaWQtNT5saTpudGgtY2hpbGQoMyl7Z3JpZC1hcmVhOjIvMS8zLzM7aGVpZ2h0Ojg1cHg7d2lkdGg6MTAwJX0udGF3ay1ncmlkLTU+bGk6bnRoLWNoaWxkKDQpe2dyaWQtYXJlYToyLzMvMy81O2hlaWdodDo4NXB4O3dpZHRoOjEwMCV9LnRhd2stZ3JpZC01PmxpOm50aC1jaGlsZCg1KXtncmlkLWFyZWE6Mi81LzMvNztoZWlnaHQ6ODVweDt3aWR0aDoxMDAlfS50YXdrLWNoYXQtYnViYmxlLXZpZGVvcyBsaXtib3JkZXItcmFkaXVzOjEwcHg7b3ZlcmZsb3c6aGlkZGVufS50YXdrLWNoYXQtYnViYmxlLWF1ZGlvcyBhdWRpb3toZWlnaHQ6NDBweDt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MTBweDtkaXNwbGF5OmJsb2NrfS50YXdrLWNoYXQtYnViYmxlLWZpbGVzIGxpe21hcmdpbi1ib3R0b206LjZyZW19LnRhd2stY2hhdC1idWJibGUtZmlsZXMgbGk6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnRhd2stY2hhdC1idWJibGUtYXVkaW9zIGxpIGEsLnRhd2stY2hhdC1idWJibGUtZmlsZXMgbGkgYXtib3JkZXItbGVmdC1jb2xvcjp2YXIoLS12YXItaGVhZGVyLXRleHQtY29sb3IpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNmZmY7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS12YXItaGVhZGVyLXRleHQtY29sb3IpO2JvcmRlci1yaWdodC1jb2xvcjp2YXIoLS12YXItaGVhZGVyLXRleHQtY29sb3IpO2JvcmRlci10b3AtY29sb3I6dmFyKC0tdmFyLWhlYWRlci10ZXh0LWNvbG9yKTt0ZXh0LWRlY29yYXRpb246bm9uZX0udGF3ay1jaGF0LWJ1YmJsZS1hdWRpb3MgbGkgYTpob3ZlciwudGF3ay1jaGF0LWJ1YmJsZS1maWxlcyBsaSBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS50YXdrLWNoYXQtYnViYmxlLWF1ZGlvcyBsaSBpLC50YXdrLWNoYXQtYnViYmxlLWZpbGVzIGxpIGl7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO21hcmdpbi10b3A6MXB4fS50YXdrLWNoYXRpbnB1dHt3aWR0aDoxMDAlO3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRhd2stY2hhdGlucHV0LWVtb2ppc3twb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTAwJTtsZWZ0OmF1dG87cmlnaHQ6MDt0b3A6YXV0bzttYXJnaW46MCBhdXRvIC4yNXJlbTt6LWluZGV4OjI7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTkuODc1cmVtfS50YXdrLWNoYXRpbnB1dC1lbW9qaXMgLnRhd2stZW1vamktcGlja2Vye21hcmdpbjowIGF1dG87d2lkdGg6MTAwJX0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzouNnJlbX0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1saXN0e2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtaW5wdXQsLnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtcHJldmlld3ttYXJnaW4tcmlnaHQ6LjYyNXJlbTt3aWR0aDozLjEyNXJlbTtoZWlnaHQ6My4xMjVyZW19LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtcHJldmlld3twYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZDojZmFmYWZhO2JvcmRlci1yYWRpdXM6MTBweH0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1wcmV2aWV3IC50YXdrLWljb257Y29sb3I6IzIxMjEyMX0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1wcmV2aWV3IGltZ3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy1vLW9iamVjdC1maXQ6Y292ZXI7b2JqZWN0LWZpdDpjb3Zlcjstby1vYmplY3QtcG9zaXRpb246Y2VudGVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWNoYXRpbnB1dC1maWxldXBsb2FkLWlucHV0e2JhY2tncm91bmQ6I2ZhZmFmYTtib3JkZXItcmFkaXVzOjEwcHg7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stY2hhdGlucHV0LWZpbGV1cGxvYWQtaW5wdXQgLnRhd2staWNvbi1hZGR7Y29sb3I6IzIxMjEyMX0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZC1pbnB1dDpob3ZlcntjdXJzb3I6cG9pbnRlcn0udGF3ay1jaGF0aW5wdXQtZmlsZXVwbG9hZCBpbnB1dHtkaXNwbGF5Om5vbmU7Ym94LXNpemluZzpib3JkZXItYm94fS50YXdrLWNoYXRpbnB1dC1lZGl0b3J7Zm9udDo0MDAgLjgxMnJlbSBMYXRvLHNhbnMtc2VyaWY7bWF4LXdpZHRoOjEwMCU7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjFyZW07aGVpZ2h0OjFyZW07bWF4LWhlaWdodDo5LjM3NXJlbTtyZXNpemU6bm9uZTtvdXRsaW5lOm5vbmU7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDUuNXJlbSAwIDA7bWFyZ2luOi4xNXJlbSAwIDB9LnRhd2stY2hhdGlucHV0LWFjdGlvbi1idXR0b25ze3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjB9LnRhd2stY2hhdGlucHV0LWFjdGlvbi1idXR0b25zLmFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuMXMgZWFzZTtyaWdodDoycmVtfS50YXdrLWNoYXRpbnB1dC1idXR0b257Y29sb3I6IzIxMjEyMTtiYWNrZ3JvdW5kOm5vbmU7cGFkZGluZzowO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxMHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEuOHJlbX0udGF3ay1jaGF0aW5wdXQtYnV0dG9uLnRhd2stY2hhdGlucHV0LWZvY3VzZWR7Y29sb3I6IzEyMTIxMn0udGF3ay1jaGF0aW5wdXQtYnV0dG9uOmhvdmVye2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXRpbnB1dC1idXR0b246Zm9jdXN7b3V0bGluZTpub25lfS50YXdrLWNoYXRpbnB1dC1idXR0b24uYWN0aXZlIC50YXdrLWNoYXRpbnB1dC1yYXRpbmdze3dpZHRoOjMuODEyNXJlbTtvcGFjaXR5OjF9LnRhd2stY2hhdGlucHV0LWJ1dHRvbi5hY3RpdmUgLnRhd2stY2hhdGlucHV0LXJhdGluZ3tvcGFjaXR5OjB9LnRhd2stY2hhdGlucHV0LXJhdGluZ3t0cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZS1pbi1vdXR9LnRhd2stY2hhdGlucHV0LXJhdGluZ3N7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDojZmZmO2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDowO2JvdHRvbTotMTBweDt0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZTtyaWdodDowO2hlaWdodDoyLjVyZW07b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt6LWluZGV4OjF9LnRhd2stY2hhdGlucHV0LXJhdGluZ3MgaW5wdXR7ZGlzcGxheTpub25lfS50YXdrLWNoYXRpbnB1dC1yYXRle2JhY2tncm91bmQ6bm9uZTtkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXI6MDtwYWRkaW5nOjB9LnRhd2stY2hhdGlucHV0LXJhdGU6aG92ZXJ7dHJhbnNmb3JtOnNjYWxlKDEuNCk7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stY2hhdGlucHV0LXJhdGluZ3MtdGh1bWJzLWRvd257Y29sb3I6I2JmMTIxMn0udGF3ay1jaGF0aW5wdXQtcmF0aW5ncy10aHVtYnMtdXB7Y29sb3I6IzAzYTg0ZX0udGF3ay1jaGF0aW5wdXQtc2VuZC1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MH0udGF3ay1jaGF0aW5wdXQtc2VuZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMwM2E4NGU7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtwYWRkaW5nOjA7d2lkdGg6MS44cmVtfS50YXdrLWNoYXRpbnB1dC1zZW5kOmhvdmVye2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXRpbnB1dC1zZW5kOmZvY3Vze291dGxpbmU6MXB4IHNvbGlkICMwNmZ9LnRhd2stY2hhdGlucHV0LWZpbGUtcmVtb3Zle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0Oi02cHg7dG9wOi02cHg7YmFja2dyb3VuZDojZmZmO3dpZHRoOi44NzVyZW07aGVpZ2h0Oi44NzVyZW07Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZCAjYmYxMjEyO2N1cnNvcjpwb2ludGVyfS50YXdrLWNoYXRpbnB1dC1maWxlLXJlbW92ZSAudGF3ay1pY29uLWNsb3Nle2ZvbnQtc2l6ZTouMzc1cmVtO2NvbG9yOiNiZjEyMTJ9LnRhd2stY2hhdGlucHV0LXdyYXB7cG9zaXRpb246cmVsYXRpdmV9LnRhd2stcnRsIC50YXdrLWNoYXRpbnB1dC1lZGl0b3J7cGFkZGluZzowIDAgMCA1LjVyZW19LnRhd2stcnRsIC50YXdrLWNoYXRpbnB1dC1hY3Rpb24tYnV0dG9uc3tsZWZ0OjA7cmlnaHQ6YXV0b30udGF3ay1ydGwgLnRhd2stY2hhdGlucHV0LWFjdGlvbi1idXR0b25zLmFjdGl2ZXtsZWZ0OjMwcHh9LnRhd2stcnRsIC50YXdrLWNoYXRpbnB1dC1lbW9qaXMsLnRhd2stcnRsIC50YXdrLWNoYXRpbnB1dC1yYXRpbmdzLC50YXdrLXJ0bCAudGF3ay1jaGF0aW5wdXQtc2VuZC1jb250YWluZXJ7bGVmdDowO3JpZ2h0OmF1dG99LnRhd2stY2hlY2tib3gtY29udGFpbmVye2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1sZWZ0OjEuM3JlbTttYXJnaW46MXJlbTtjdXJzb3I6cG9pbnRlcjstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Ym9keS50YXdrLXJ0bCAudGF3ay1jaGVja2JveC1jb250YWluZXJ7cGFkZGluZy1yaWdodDoycmVtO3BhZGRpbmctbGVmdDowO3RleHQtYWxpZ246cmlnaHR9LnRhd2stY2hlY2tib3gtY29udGFpbmVyIC50YXdrLWNoZWNrYm94e3Bvc2l0aW9uOmFic29sdXRlO29wYWNpdHk6MDtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MDt3aWR0aDowfS50YXdrLWNoZWNrYm94LWNvbnRhaW5lciAudGF3ay1jaGVja21hcmt7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7aGVpZ2h0OjFyZW07d2lkdGg6MXJlbTtib3JkZXI6MXB4IHNvbGlkICM1NDU0NTQ7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDojZmZmfWJvZHkudGF3ay1ydGwgLnRhd2stY2hlY2tib3gtY29udGFpbmVyIC50YXdrLWNoZWNrbWFya3tyaWdodDowO2xlZnQ6YXV0b30udGF3ay1jaGVja2JveC1jb250YWluZXI6aG92ZXIgLnRhd2stY2hlY2tib3h+LnRhd2stY2hlY2ttYXJre2JvcmRlci1jb2xvcjojNTQ1NDU0fS50YXdrLWNoZWNrYm94LWNvbnRhaW5lciAudGF3ay1jaGVja2JveDpjaGVja2Vkfi50YXdrLWNoZWNrbWFya3tiYWNrZ3JvdW5kLWNvbG9yOiMwM2E4NGU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtib3JkZXItY29sb3I6IzAzYTg0ZTtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stY2hlY2tib3gtY29udGFpbmVyIC50YXdrLWNoZWNrbWFyazphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZX0udGF3ay1jaGVja2JveC1jb250YWluZXIgLnRhd2stY2hlY2tib3g6Y2hlY2tlZH4udGF3ay1jaGVja21hcms6YWZ0ZXJ7ZGlzcGxheTpibG9ja30udGF3ay1jaGVja2JveC1jb250YWluZXIgLnRhd2stY2hlY2ttYXJrOmFmdGVye2xlZnQ6NXB4O3RvcDoycHg7d2lkdGg6LjI1cmVtO2hlaWdodDouNXJlbTtib3JkZXI6c29saWQgI2ZmZjtib3JkZXItd2lkdGg6MCAycHggMnB4IDA7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LnRhd2stY2hlY2tib3gtY29udGFpbmVyIC50YXdrLWZvcm0tbGFiZWx7Y29sb3I6IzEyMTIxMjtmb250OjQwMCAuODEycmVtIExhdG8sc2Fucy1zZXJpZn0udGF3ay1jaGVja2JveC1jb250YWluZXIgLnRhd2stY2hlY2tib3hbZGlzYWJsZWRdfi50YXdrLWZvcm0tbGFiZWx7Y29sb3I6IzU0NTQ1NH0udGF3ay1kcm9wZG93bntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnRhd2stZHJvcGRvd24tbWVudXtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIuNXJlbTt6LWluZGV4OjIwMDA7Ym94LXNpemluZzpib3JkZXItYm94O21pbi13aWR0aDo5LjM3NXJlbTttYXgtd2lkdGg6MTIuNXJlbTtwYWRkaW5nOjFyZW07YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMxMjEyMTI7Ym94LXNoYWRvdzowIDVweCAxNXB4IHJnYmEoMCwwLDAsLjEyKX0udGF3ay1kcm9wZG93bi1tZW51LnRhd2stb3BlbntkaXNwbGF5OmJsb2NrfS50YXdrLWRyb3Bkb3duLW1lbnUtcmlnaHR7cmlnaHQ6MH0udGF3ay1kcm9wZG93bi1tZW51LWxlZnR7bGVmdDowfS5zbGlkZS1mYWRlLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZX0uc2xpZGUtZmFkZS1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjphbGwgLjhzIGN1YmljLWJlemllcigxLC41LC44LDEpfS5zbGlkZS1mYWRlLWVudGVyLC5zbGlkZS1mYWRlLWxlYXZlLXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwcHgpfS50YXdrLWVtb2ppLXBpY2tlcnt3aWR0aDoxMDAlO21heC13aWR0aDoxOS44NzVyZW07Ym9yZGVyOjFweCBzb2xpZCAjNTQ1NDU0O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmZmY7cG9zaXRpb246cmVsYXRpdmV9LnRhd2stZW1vamktbG9hZGluZ3t3aWR0aDoyZW07aGVpZ2h0OjJlbTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7cmlnaHQ6MDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO21hcmdpbjphdXRvO2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMik7Ym9yZGVyLWxlZnQtY29sb3I6IzMzMzthbmltYXRpb246cm90YXRlQ2lyY2xlTG9hZGVyIDEuMXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgcm90YXRlQ2lyY2xlTG9hZGVyezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS50YXdrLWVtb2ppLWdyb3Vwe2JvcmRlci1ib3R0b206MXB4IHNvbGlkICM1NDU0NTR9LnRhd2stZW1vamktZ3JvdXAtdGFie3BhZGRpbmc6LjZyZW19LnRhd2stZW1vamktZ3JvdXAtdGFiOmhvdmVye2N1cnNvcjpwb2ludGVyfS50YXdrLWVtb2ppLWdyb3VwLXRhYi1hY3RpdmV7cG9zaXRpb246cmVsYXRpdmV9LnRhd2stZW1vamktZ3JvdXAtdGFiLWFjdGl2ZTphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6IzAzYTg0ZTtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6LjEyNXJlbTt3aWR0aDo4MCU7bWFyZ2luOmF1dG87bGVmdDowO3JpZ2h0OjA7dG9wOjEwMCV9LnRhd2stZW1vamktZ3JvdXAtdGFiIGltZ3t3aWR0aDoxLjEyNXJlbTtmaWxsOiMwM2E4NGV9LnRhd2stZW1vamktc2VhcmNoLWNvbnRhaW5lcntib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxcmVtIC41cmVtfS50YXdrLWVtb2ppLXN0aWNreS1oZWFkZXJ7cGFkZGluZzowIC41cmVtfS50YXdrLWVtb2ppLWhlYWRlciwudGF3ay1lbW9qaS1zdGlja3ktaGVhZGVye21hcmdpbjowO2ZvbnQ6NDAwIC44MTJyZW0gTGF0byxzYW5zLXNlcmlmO2NvbG9yOiMxMjEyMTJ9LnRhd2stZW1vamktc2Nyb2xse2hlaWdodDo2Ljc1cmVtO3BhZGRpbmc6MCAuNXJlbTtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpzY3JvbGx9LnRhd2stZW1vamktcHJldmlld3tib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjMuMTI1cmVtO2JhY2tncm91bmQ6I2ZhZmFmYTtwYWRkaW5nOi41cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MTBweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoxMHB4fS50YXdrLWVtb2ppLXByZXZpZXctaW1hZ2V7Ym94LXNpemluZzpib3JkZXItYm94O21heC13aWR0aDoxNSU7aGVpZ2h0OjEwMCV9LnRhd2stZW1vamktcHJldmlldy1pbWFnZSBpbWd7bWF4LXdpZHRoOjEuODc1cmVtfS50YXdrLWVtb2ppLXByZXZpZXctbmFtZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjA7Zm9udDo2MDAgLjgxMnJlbSBMYXRvLHNhbnMtc2VyaWY7bWF4LXdpZHRoOjE0LjM3NXJlbTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30udGF3ay1lbW9qaS1wcmV2aWV3LXNob3J0bmFtZXtmb250OjYwMCAuNzVyZW0gTGF0byxzYW5zLXNlcmlmfS50YXdrLWVtb2ppe21hcmdpbjouMzc1cmVtIC41cmVtO3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyLXJhZGl1czoxMHB4fS50YXdrLWVtb2ppOmhvdmVye2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQ6IzAzYTg0ZX0udGF3ay1lbW9qaTpmb2N1c3tvdXRsaW5lOjFweCBzb2xpZCAjMDZmfS50YXdrLWVtb2ppe2hlaWdodDoxLjVyZW07bWF4LWhlaWdodDoxLjVyZW07d2lkdGg6MS41cmVtO21heC13aWR0aDoxLjVyZW19LnRhd2stZW1vamkgaW1ne21heC13aWR0aDoxLjVyZW07ZGlzcGxheTppbmxpbmUtYmxvY2t9LnRhd2stZmxhZ3t3aWR0aDoxcmVtO2hlaWdodDoxcmVtO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxhZz5pbWd7Ym9yZGVyLXJhZGl1czo0cHh9Ym9keS50YXdrLXJ0bCAudGF3ay1mbGFne3RyYW5zZm9ybTpzY2FsZVgoLTEpfS50YXdrLWZsYWcteHNtYWxse2hlaWdodDouNzVyZW07d2lkdGg6Ljc1cmVtfS50YXdrLWZsYWctc21hbGx7aGVpZ2h0Oi44MTJyZW07d2lkdGg6LjgxMnJlbX0udGF3ay1mbGFnLW1lZGl1bXtoZWlnaHQ6LjkzN3JlbTt3aWR0aDouOTM3cmVtfS50YXdrLWZsYWctbGFyZ2V7aGVpZ2h0OjEuMjVyZW07d2lkdGg6MS4yNXJlbX0udGF3ay1mbGFnLXhsYXJnZXtoZWlnaHQ6MS41cmVtO3dpZHRoOjEuNXJlbX0udGF3ay1mbGFnLXh4bGFyZ2V7aGVpZ2h0OjJyZW07d2lkdGg6MnJlbX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OnRhd2stZm9udC1pY29uO3NyYzp1cmwoL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMud29mZj81NTc1NTcyOCkgZm9ybWF0KCJ3b2ZmIiksdXJsKC9mb250cy90YXdrLWZvbnQtaWNvbi0zLnR0Zj81NTc1NTcyOCkgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCgvZm9udHMvdGF3ay1mb250LWljb24tMy5zdmc/NTU3NTU3MjgjdGF3ay1mb250LWljb24pIGZvcm1hdCgic3ZnIik7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtZGlzcGxheTpzd2FwfS50YXdrLWljb257Zm9udC1mYW1pbHk6dGF3ay1mb250LWljb247Zm9udC1zaXplOjEuMTI1cmVtO2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5O3RleHQtdHJhbnNmb3JtOm5vbmU7Zm9udC1zdHlsZTpub3JtYWw7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgLjJlbTt3aWR0aDoxZW07dGV4dC1hbGlnbjpjZW50ZXJ9Ym9keS50YXdrLXJ0bCAudGF3ay1pY29ue3RyYW5zZm9ybTpzY2FsZVgoLTEpfS50YXdrLWljb24teHNtYWxse2ZvbnQtc2l6ZTouNzVyZW19LnRhd2staWNvbi1zbWFsbHtmb250LXNpemU6LjgxMnJlbX0udGF3ay1pY29uLW1lZGl1bXtmb250LXNpemU6LjkzN3JlbX0udGF3ay1pY29uLWxhcmdle2ZvbnQtc2l6ZToxLjI1cmVtfS50YXdrLWljb24teGxhcmdle2ZvbnQtc2l6ZToxLjVyZW19LnRhd2staWNvbi14eGxhcmdle2ZvbnQtc2l6ZToycmVtfS50YXdrLWljb24tbGF5ZXJzMTpiZWZvcmV7Y29udGVudDoiXGU5MDAifS50YXdrLWljb24tYmFuOmJlZm9yZXtjb250ZW50OiJcZTkwMSJ9LnRhd2staWNvbi1jaGVjay1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTAyIn0udGF3ay1pY29uLWNsb3NlLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDMifS50YXdrLWljb24taGVscC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTA0In0udGF3ay1pY29uLWRldGFpbHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTA1In0udGF3ay1pY29uLXdhcm5pbmctdHJpYW5nbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTA2In0udGF3ay1pY29uLXNhdmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTA3In0udGF3ay1pY29uLXRyYXNoOmJlZm9yZXtjb250ZW50OiJcZTkwOCJ9LnRhd2staWNvbi1wbHVzOmJlZm9yZXtjb250ZW50OiJcZTkwOSJ9LnRhd2staWNvbi1taW51czpiZWZvcmV7Y29udGVudDoiXGU5MGEifS50YXdrLWljb24tY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlOTBiIn0udGF3ay1pY29uLXg6YmVmb3Jle2NvbnRlbnQ6IlxlOTBjIn0udGF3ay1pY29uLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTBkIn0udGF3ay1pY29uLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTkwZSJ9LnRhd2staWNvbi1hcnJvdy11cDpiZWZvcmV7Y29udGVudDoiXGU5MGYifS50YXdrLWljb24tYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGU5MTAifS50YXdrLWljb24tbW9yZS12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGU5MTEifS50YXdrLWljb24tbWVudTpiZWZvcmV7Y29udGVudDoiXGU5MTIifS50YXdrLWljb24taG9tZTpiZWZvcmV7Y29udGVudDoiXGU5MTMifS50YXdrLWljb24taW5ib3g6YmVmb3Jle2NvbnRlbnQ6IlxlOTE0In0udGF3ay1pY29uLWNvbnRhY3RzOmJlZm9yZXtjb250ZW50OiJcZTkxNSJ9LnRhd2staWNvbi1hZGRPbnM6YmVmb3Jle2NvbnRlbnQ6IlxlOTE2In0udGF3ay1pY29uLWtub3dsZWRnZS1iYXNlOmJlZm9yZXtjb250ZW50OiJcZTkxNyJ9LnRhd2staWNvbi1zZXR0aW5nczpiZWZvcmV7Y29udGVudDoiXGU5MTgifS50YXdrLWljb24tbW9uaXRvcmluZzpiZWZvcmV7Y29udGVudDoiXGU5MTkifS50YXdrLWljb24tY2hhdC1idWJibGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTFhIn0udGF3ay1pY29uLXNlYXJjaDpiZWZvcmV7Y29udGVudDoiXGU5MWIifS50YXdrLWljb24tZ3JvdXAtaW5jb21pbmctY2hhdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTFjIn0udGF3ay1pY29uLWFzc2lnbmVkOmJlZm9yZXtjb250ZW50OiJcZTkxZCJ9LnRhd2staWNvbi1maWx0ZXItbGluZTpiZWZvcmV7Y29udGVudDoiXGU5MWUifS50YXdrLWljb24tZmlsdGVyLWZ1bm5lbDpiZWZvcmV7Y29udGVudDoiXGU5MWYifS50YXdrLWljb24tbm90aWZpY2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZTkyMCJ9LnRhd2staWNvbi1hbGVydDpiZWZvcmV7Y29udGVudDoiXGU5MjEifS50YXdrLWljb24tY2hhdC1idWJibGUtdy1kb3RzOmJlZm9yZXtjb250ZW50OiJcZTkyMiJ9LnRhd2staWNvbi1jYWxsOmJlZm9yZXtjb250ZW50OiJcZTkyMyJ9LnRhd2staWNvbi1lbnZlbG9wZTpiZWZvcmV7Y29udGVudDoiXGU5MjQifS50YXdrLWljb24tZHJhZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTI1In0udGF3ay1pY29uLXNwYW06YmVmb3Jle2NvbnRlbnQ6IlxlOTI2In0udGF3ay1pY29uLXNlZ21lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTI3In0udGF3ay1pY29uLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MjgifS50YXdrLWljb24tY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTkyOSJ9LnRhd2staWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTkyYSJ9LnRhd2staWNvbi1jaGV2cm9uLXVwOmJlZm9yZXtjb250ZW50OiJcZTkyYiJ9LnRhd2staWNvbi1jaGV2cm9uLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTJjIn0udGF3ay1pY29uLXBvcG91dDpiZWZvcmV7Y29udGVudDoiXGU5MmQifS50YXdrLWljb24tbWVyZ2UtaW46YmVmb3Jle2NvbnRlbnQ6IlxlOTJlIn0udGF3ay1pY29uLWltcG9ydDpiZWZvcmV7Y29udGVudDoiXGU5MmYifS50YXdrLWljb24tZXhwb3J0OmJlZm9yZXtjb250ZW50OiJcZTkzMCJ9LnRhd2staWNvbi10aHVtYnMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTMxIn0udGF3ay1pY29uLXRodW1icy1kb3duOmJlZm9yZXtjb250ZW50OiJcZTkzMiJ9LnRhd2staWNvbi1zb3J0LWFzY2VuZGluZzpiZWZvcmV7Y29udGVudDoiXGU5MzMifS50YXdrLWljb24tc29ydC1kZXNjZW5kaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNCJ9LnRhd2staWNvbi1jb2x1bW4tc2V0dGluZ3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTM1In0udGF3ay1pY29uLWNhbGwtaW5nb2luZzpiZWZvcmV7Y29udGVudDoiXGU5MzYifS50YXdrLWljb24tY2FsbC1vdXRnb2luZzpiZWZvcmV7Y29udGVudDoiXGU5MzcifS50YXdrLWljb24tdXNlci1kZXRhaWxzOmJlZm9yZXtjb250ZW50OiJcZTkzOCJ9LnRhd2staWNvbi1zaG9ydGN1dDpiZWZvcmV7Y29udGVudDoiXGU5MzkifS50YXdrLWljb24taGlzdG9yeTpiZWZvcmV7Y29udGVudDoiXGU5M2EifS50YXdrLWljb24tc2hvcHBpbmctYmFnOmJlZm9yZXtjb250ZW50OiJcZTkzYiJ9LnRhd2staWNvbi1zaG9waWZ5OmJlZm9yZXtjb250ZW50OiJcZTkzYyJ9LnRhd2staWNvbi1ncm91cC1jaGF0OmJlZm9yZXtjb250ZW50OiJcZTkzZCJ9LnRhd2staWNvbi10YWc6YmVmb3Jle2NvbnRlbnQ6IlxlOTNlIn0udGF3ay1pY29uLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTNmIn0udGF3ay1pY29uLXNoYXJlOmJlZm9yZXtjb250ZW50OiJcZTk0MCJ9LnRhd2staWNvbi1ub3RlOmJlZm9yZXtjb250ZW50OiJcZTk0MSJ9LnRhd2staWNvbi1lZGl0OmJlZm9yZXtjb250ZW50OiJcZTk0MiJ9LnRhd2staWNvbi1pbWFnZTpiZWZvcmV7Y29udGVudDoiXGU5NDMifS50YXdrLWljb24tb3JnYW5pemF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk0NCJ9LnRhd2staWNvbi10cmFuc2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZTk0NSJ9LnRhd2staWNvbi1wcmludDpiZWZvcmV7Y29udGVudDoiXGU5NDYifS50YXdrLWljb24tZXllLWhpZGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQ3In0udGF3ay1pY29uLXdoaXNwZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTQ4In0udGF3ay1pY29uLWpvaW4tY29udmVyc2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk0OSJ9LnRhd2staWNvbi1tZXNzYWdlOmJlZm9yZXtjb250ZW50OiJcZTk0YSJ9LnRhd2staWNvbi10ZXh0LWZvcm1hdHRpbmctaGlkZTpiZWZvcmV7Y29udGVudDoiXGU5NGIifS50YXdrLWljb24tdGV4dC1mb3JtYXR0aW5nLXNob3c6YmVmb3Jle2NvbnRlbnQ6IlxlOTRjIn0udGF3ay1pY29uLWVtb2ppOmJlZm9yZXtjb250ZW50OiJcZTk0ZCJ9LnRhd2staWNvbi1hdHRhY2htZW50OmJlZm9yZXtjb250ZW50OiJcZTk0ZSJ9LnRhd2staWNvbi12aWRlby1jYWxsLW9uOmJlZm9yZXtjb250ZW50OiJcZTk0ZiJ9LnRhd2staWNvbi12aWRlby1jYWxsLW9mZjpiZWZvcmV7Y29udGVudDoiXGU5NTAifS50YXdrLWljb24tc2hhcmUtc2NyZWVuOmJlZm9yZXtjb250ZW50OiJcZTk1MSJ9LnRhd2staWNvbi1zZW5kOmJlZm9yZXtjb250ZW50OiJcZTk1MiJ9LnRhd2staWNvbi1ib2xkOmJlZm9yZXtjb250ZW50OiJcZTk1MyJ9LnRhd2staWNvbi1pdGFsaWNzOmJlZm9yZXtjb250ZW50OiJcZTk1NCJ9LnRhd2staWNvbi11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTU1In0udGF3ay1pY29uLWNhcGl0YWxpemU6YmVmb3Jle2NvbnRlbnQ6IlxlOTU2In0udGF3ay1pY29uLWV5ZTpiZWZvcmV7Y29udGVudDoiXGU5NTcifS50YXdrLWljb24tc3RyaWtldGhyb3VnaDpiZWZvcmV7Y29udGVudDoiXGU5NTgifS50YXdrLWljb24tYnVsbGV0LXBvaW50czpiZWZvcmV7Y29udGVudDoiXGU5NTkifS50YXdrLWljb24tbGluazpiZWZvcmV7Y29udGVudDoiXGU5NWEifS50YXdrLWljb24tYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGU5NWIifS50YXdrLWljb24tdW5yZWFkOmJlZm9yZXtjb250ZW50OiJcZTk1YyJ9LnRhd2staWNvbi1jbG9jazpiZWZvcmV7Y29udGVudDoiXGU5NWQifS50YXdrLWljb24tbW92ZS10bzpiZWZvcmV7Y29udGVudDoiXGU5NWUifS50YXdrLWljb24tZm9yd2FyZC1hcy1hdHRhY2htZW50OmJlZm9yZXtjb250ZW50OiJcZTk1ZiJ9LnRhd2staWNvbi1sb2NrOmJlZm9yZXtjb250ZW50OiJcZTk2MCJ9LnRhd2staWNvbi11bmxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlOTYxIn0udGF3ay1pY29uLXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZTk2MiJ9LnRhd2staWNvbi1icmllZmNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTYzIn0udGF3ay1pY29uLXRleHQtYXJlYTpiZWZvcmV7Y29udGVudDoiXGU5NjQifS50YXdrLWljb24tc2h1ZmZsZTpiZWZvcmV7Y29udGVudDoiXGU5NjUifS50YXdrLWljb24tZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZTk2NiJ9LnRhd2staWNvbi1hZGQtcGVvcGxlOmJlZm9yZXtjb250ZW50OiJcZTk2NyJ9LnRhd2staWNvbi1jaGFuZ2UtYXNzaWduZWU6YmVmb3Jle2NvbnRlbnQ6IlxlOTY4In0udGF3ay1pY29uLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxlOTY5In0udGF3ay1pY29uLXdhbGxldDpiZWZvcmV7Y29udGVudDoiXGU5NmEifS50YXdrLWljb24tcmVmcmVzaDpiZWZvcmV7Y29udGVudDoiXGU5NmIifS50YXdrLWljb24tcmVwb3J0czpiZWZvcmV7Y29udGVudDoiXGU5NmMifS50YXdrLWljb24tZG91YmxlLWNoZXZyb24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5NmQifS50YXdrLWljb24tZG91YmxlLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTZlIn0udGF3ay1pY29uLWRvdWJsZS1jaGV2cm9uLXVwOmJlZm9yZXtjb250ZW50OiJcZTk2ZiJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZTk3MCJ9LnRhd2staWNvbi1sb2NhdGlvbjpiZWZvcmV7Y29udGVudDoiXGU5NzEifS50YXdrLWljb24tYWRkLW5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTcyIn0udGF3ay1pY29uLWFnZW50OmJlZm9yZXtjb250ZW50OiJcZTk3MyJ9LnRhd2staWNvbi1jb21tZW50OmJlZm9yZXtjb250ZW50OiJcZTk3NCJ9LnRhd2staWNvbi1jdXN0b20tZmllbGQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTc1In0udGF3ay1pY29uLWJyb3dzZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTc2In0udGF3ay1pY29uLW1pbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTc3In0udGF3ay1pY29uLWFsbDpiZWZvcmV7Y29udGVudDoiXGU5NzgifS50YXdrLWljb24tY3VzdG9tLXRhYnMtaGlkZTpiZWZvcmV7Y29udGVudDoiXGU5NzkifS50YXdrLWljb24tY3VzdG9tLXRhYnMtc2hvdzpiZWZvcmV7Y29udGVudDoiXGU5N2EifS50YXdrLWljb24tbWVnYXBob25lOmJlZm9yZXtjb250ZW50OiJcZTk3YiJ9LnRhd2staWNvbi1uYXZpZ2F0ZTpiZWZvcmV7Y29udGVudDoiXGU5N2MifS50YXdrLWljb24tY2FsZW5kYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTdkIn0udGF3ay1pY29uLWNhbGVuZGFyLXNlZW46YmVmb3Jle2NvbnRlbnQ6IlxlOTdlIn0udGF3ay1pY29uLXdlYi1zZXNzaW9uOmJlZm9yZXtjb250ZW50OiJcZTk3ZiJ9LnRhd2staWNvbi1pcC1hZGRyZXNzOmJlZm9yZXtjb250ZW50OiJcZTk4MCJ9LnRhd2staWNvbi1jb21wdXRlcjpiZWZvcmV7Y29udGVudDoiXGU5ODEifS50YXdrLWljb24tZGF0YWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTgyIn0udGF3ay1pY29uLXdlYi1wYWdlOmJlZm9yZXtjb250ZW50OiJcZTk4MyJ9LnRhd2staWNvbi13ZWItdmlldzpiZWZvcmV7Y29udGVudDoiXGU5ODQifS50YXdrLWljb24td2ViLXRpbWUtc3BlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTg1In0udGF3ay1pY29uLXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTg2In0udGF3ay1pY29uLWNvcHk6YmVmb3Jle2NvbnRlbnQ6IlxlOTg3In0udGF3ay1pY29uLWR1cmF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk4OCJ9LnRhd2staWNvbi1yZXNpemUtbGVmdC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU5ODkifS50YXdrLWljb24tcmVzaXplLXVwLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOThhIn0udGF3ay1pY29uLW1heGltaXNlOmJlZm9yZXtjb250ZW50OiJcZTk4YiJ9LnRhd2staWNvbi1taW5pbWlzZTpiZWZvcmV7Y29udGVudDoiXGU5OGMifS50YXdrLWljb24tcHVyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOThkIn0udGF3ay1pY29uLWNoYW5nZTpiZWZvcmV7Y29udGVudDoiXGU5OGUifS50YXdrLWljb24tdmlzaXRvcjpiZWZvcmV7Y29udGVudDoiXGU5OGYifS50YXdrLWljb24tbmV3LWhpcmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTkwIn0udGF3ay1pY29uLXBpbjpiZWZvcmV7Y29udGVudDoiXGU5OTEifS50YXdrLWljb24tbGVhZGVyYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTkyIn0udGF3ay1pY29uLXN0YXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTkzIn0udGF3ay1pY29uLXZpZGVvLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk0In0udGF3ay1pY29uLWF1ZGlvLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk1In0udGF3ay1pY29uLWNzdi1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5NiJ9LnRhd2staWNvbi1wZGYtZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTcifS50YXdrLWljb24tZG9jLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk4In0udGF3ay1pY29uLXRleHQtZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTkifS50YXdrLWljb24tZ2VuZXJpYy1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5YSJ9LnRhd2staWNvbi1zcGxpdC12aWV3LXNpbmdsZTpiZWZvcmV7Y29udGVudDoiXGU5OWIifS50YXdrLWljb24tc3BsaXQtdmlldy1kb3VibGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTljIn0udGF3ay1pY29uLXNwbGl0LXZpZXctdHJpcGxlOmJlZm9yZXtjb250ZW50OiJcZTk5ZCJ9LnRhd2staWNvbi1zcGxpdC12aWV3LXF1YWRydXBsZTpiZWZvcmV7Y29udGVudDoiXGU5OWUifS50YXdrLWljb24tdGltZWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlmIn0udGF3ay1pY29uLWNvbnRhY3QtYXR0cmlidXRlczpiZWZvcmV7Y29udGVudDoiXGU5YTAifS50YXdrLWljb24tY29udmVydGVkLXRpY2tldDpiZWZvcmV7Y29udGVudDoiXGU5YTEifS50YXdrLWljb24tdHJlbmQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWEyIn0udGF3ay1pY29uLXRyZW5kLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOWEzIn0udGF3ay1pY29uLW9uZ29pbmctY2FsbDpiZWZvcmV7Y29udGVudDoiXGU5YTQifS50YXdrLWljb24tY2F0ZWdvcnk6YmVmb3Jle2NvbnRlbnQ6IlxlOWE1In0udGF3ay1pY29uLWFydGljbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE2In0udGF3ay1pY29uLWRyYWctaGFuZGxlOmJlZm9yZXtjb250ZW50OiJcZTlhNyJ9LnRhd2staWNvbi1jaGlsZC10cmVlOmJlZm9yZXtjb250ZW50OiJcZTlhOCJ9LnRhd2staWNvbi10cmFuc2xhdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE5In0udGF3ay1pY29uLWJ1bGI6YmVmb3Jle2NvbnRlbnQ6IlxlOWFhIn0udGF3ay1pY29uLW1lcmdlOmJlZm9yZXtjb250ZW50OiJcZTlhYiJ9LnRhd2staWNvbi10aHVuZGVyOmJlZm9yZXtjb250ZW50OiJcZTlhYyJ9LnRhd2staWNvbi1vdmVydmlldzpiZWZvcmV7Y29udGVudDoiXGU5YWQifS50YXdrLWljb24tdXNlci1tYW5hZ2VtZW50OmJlZm9yZXtjb250ZW50OiJcZTlhZSJ9LnRhd2staWNvbi1hZ2VudC1hbGVydDpiZWZvcmV7Y29udGVudDoiXGU5YWYifS50YXdrLWljb24tcHJvcGVydHktbWVtYmVyczpiZWZvcmV7Y29udGVudDoiXGU5YjAifS50YXdrLWljb24tZGVwYXJ0bWVudHM6YmVmb3Jle2NvbnRlbnQ6IlxlOWIxIn0udGF3ay1pY29uLXRhYjpiZWZvcmV7Y29udGVudDoiXGU5YjIifS50YXdrLWljb24tbWFpbC1ub3RpZmljYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWIzIn0udGF3ay1pY29uLWluLWNoYXQtcGF5bWVudDpiZWZvcmV7Y29udGVudDoiXGU5YjQifS50YXdrLWljb24taGlyZS1saXZlLWFnZW50czpiZWZvcmV7Y29udGVudDoiXGU5YjUifS50YXdrLWljb24taGlyZS12aXJ0dWFsLWFzc2lzdGFudDpiZWZvcmV7Y29udGVudDoiXGU5YjYifS50YXdrLWljb24tcGF5b3V0OmJlZm9yZXtjb250ZW50OiJcZTliNyJ9LnRhd2staWNvbi1zaG9wcGluZy1jYXJ0OmJlZm9yZXtjb250ZW50OiJcZTliOCJ9LnRhd2staWNvbi1jaGFubmVsczpiZWZvcmV7Y29udGVudDoiXGU5YjkifS50YXdrLWljb24tcGFnZTpiZWZvcmV7Y29udGVudDoiXGU5YmEifS50YXdrLWljb24tcGF5bWVudC1tZXRob2Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWJiIn0udGF3ay1pY29uLWJpbGwtb3ZlcnZpZXc6YmVmb3Jle2NvbnRlbnQ6IlxlOWJjIn0udGF3ay1pY29uLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OiJcZTliZCJ9LnRhd2staWNvbi1hY3RpdmF0ZS1waG9uZS1udW1iZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWJlIn0udGF3ay1pY29uLW1vYmlsZS1waG9uZTpiZWZvcmV7Y29udGVudDoiXGU5YmYifS50YXdrLWljb24tc3RhdHVzOmJlZm9yZXtjb250ZW50OiJcZTljMCJ9LnRhd2staWNvbi1icm93c2VyLXRpdGxlOmJlZm9yZXtjb250ZW50OiJcZTljMSJ9LnRhd2staWNvbi1nZW5lcmFsLWZpbGwtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWMyIn0udGF3ay1pY29uLWNhcmQtbGF5b3V0OmJlZm9yZXtjb250ZW50OiJcZTljMyJ9LnRhd2staWNvbi12ZXJpZmllZDpiZWZvcmV7Y29udGVudDoiXGU5YzQifS50YXdrLWljb24tYnJhaW5zdG9ybTpiZWZvcmV7Y29udGVudDoiXGU5YzUifS50YXdrLWljb24tY2hhbmdlLXRvbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOWM2In0udGF3ay1pY29uLWZpeC1ncmFtbWFyOmJlZm9yZXtjb250ZW50OiJcZTljNyJ9LnRhd2staWNvbi1idWxsZXQtcG9vaW50cy1leHBhbmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWM4In0udGF3ay1pY29uLXJld3JpdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWM5In0udGF3ay1pY29uLXNlbnRlbmNlLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGU5Y2EifS50YXdrLWljb24tc2ltcGxpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlOWNiIn0udGF3ay1pY29uLXN0ZXAtYnktc3RlcDpiZWZvcmV7Y29udGVudDoiXGU5Y2MifS50YXdrLWljb24tc3VtbWFyaXplOmJlZm9yZXtjb250ZW50OiJcZTljZCJ9LnRhd2staWNvbi1zdWdnZXN0LXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZTljZSJ9LnRhd2staWNvbi1Xcml0ZS1hYm91dDpiZWZvcmV7Y29udGVudDoiXGU5Y2YifS50YXdrLWljb24tYWktQXNzaXN0OmJlZm9yZXtjb250ZW50OiJcZTlkMCJ9LnRhd2staWNvbi1zZXNzaW9uOmJlZm9yZXtjb250ZW50OiJcZTlkMSJ9LnRhd2staWNvbi1zbWFydC1yZXBseTpiZWZvcmV7Y29udGVudDoiXGU5ZDIifS50YXdrLWljb24tY2FsbC1lbmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWQzIn0udGF3ay1pY29uLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTlkNCJ9LnRhd2staWNvbi1zdGF0dXMtY2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZTlkNSJ9LnRhd2staWNvbi1yZWNvbm5lY3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ2In0udGF3ay1pY29uLWRpc2Nvbm5lY3RlZDpiZWZvcmV7Y29udGVudDoiXGU5ZDcifS50YXdrLWljb24tbm90LXNwYW06YmVmb3Jle2NvbnRlbnQ6IlxlOWQ4In0udGF3ay1pY29uLXNlYXJjaGVzOmJlZm9yZXtjb250ZW50OiJcZTlkOSJ9LnRhd2staWNvbi1jaGF0LWR1cmF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTlkYSJ9LnRhd2staWNvbi1jaGF0LXZvbHVtZTpiZWZvcmV7Y29udGVudDoiXGU5ZGIifS50YXdrLWljb24tbWlzc2VkLWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWRjIn0udGF3ay1pY29uLW9mZmxpbmUtbWVzc2FnZTpiZWZvcmV7Y29udGVudDoiXGU5ZGQifS50YXdrLWljb24tZmlyc3QtcmVzcG9uc2UtdGltZTpiZWZvcmV7Y29udGVudDoiXGU5ZGUifS50YXdrLWljb24tdGlja2V0OmJlZm9yZXtjb250ZW50OiJcZTlkZiJ9LnRhd2staWNvbi10aWNrZXQtc29sdmVkOmJlZm9yZXtjb250ZW50OiJcZTllMCJ9LnRhd2staWNvbi10aWNrZXQtcmVvcGVuZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWUxIn0udGF3ay1pY29uLXRpY2tldC1yZXNvbHV0aW9uOmJlZm9yZXtjb250ZW50OiJcZTllMiJ9LnRhd2staWNvbi10aWNrZXQtc291cmNlOmJlZm9yZXtjb250ZW50OiJcZTllMyJ9LnRhd2staWNvbi10aWNrZXQtdm9sdW1lOmJlZm9yZXtjb250ZW50OiJcZTllNCJ9LnRhd2staWNvbi11c2VyLXNhdGlzZmFjdGlvbjpiZWZvcmV7Y29udGVudDoiXGU5ZTUifS50YXdrLWljb24tZ3JvdXAtcGVvcGxlOmJlZm9yZXtjb250ZW50OiJcZTllNiJ9LnRhd2staWNvbi1yZW1vdmUtYnJhbmRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlOWU3In0udGF3ay1pY29uLWNhcmV0LXVwOmJlZm9yZXtjb250ZW50OiJcZTllOCJ9LnRhd2staWNvbi1jaGF0LXdpZGdldDpiZWZvcmV7Y29udGVudDoiXGU5ZTkifS50YXdrLWljb24tdW5saW5rOmJlZm9yZXtjb250ZW50OiJcZTllYSJ9LnRhd2staWNvbi1hdWRpbzpiZWZvcmV7Y29udGVudDoiXGU5ZWIifS50YXdrLWljb24tYXVkaW8tb2ZmOmJlZm9yZXtjb250ZW50OiJcZTllYyJ9LnRhd2staWNvbi1oYXNodGFnOmJlZm9yZXtjb250ZW50OiJcZTllZCJ9LnRhd2staWNvbi1jaGF0Ym90OmJlZm9yZXtjb250ZW50OiJcZTllZSJ9LnRhd2staWNvbi11c2VyczpiZWZvcmV7Y29udGVudDoiXGU5ZWYifS50YXdrLWljb24tdXNlci1wbHVzOmJlZm9yZXtjb250ZW50OiJcZTlmMCJ9LnRhd2staWNvbi1sb2ctb3V0OmJlZm9yZXtjb250ZW50OiJcZTlmMSJ9LnRhd2staWNvbi1jb2RlOmJlZm9yZXtjb250ZW50OiJcZTlmMiJ9LnRhd2staWNvbi1sYXllcnM6YmVmb3Jle2NvbnRlbnQ6IlxlOWYzIn0udGF3ay1pY29uLWNhcmV0LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOWY0In0udGF3ay1pY29uLWNhcmV0LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWY1In0udGF3ay1pY29uLWNhcmV0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTlmNiJ9LnRhd2staWNvbi1tdXRlOmJlZm9yZXtjb250ZW50OiJcZTlmNyJ9LnRhd2staWNvbi12b2x1bWUtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5ZjgifS50YXdrLWljb24tcHV6emxlOmJlZm9yZXtjb250ZW50OiJcZTlmOSJ9LnRhd2staWNvbi12b2x1bWUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWZhIn0udGF3ay1pbWFnZXttYXgtd2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjEwcHh9LnRhd2staW1hZ2UtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRhd2staW1hZ2UtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0udGF3ay1pbWFnZS1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRhd2staW1hZ2UtbG9hZGVyLC50YXdrLWltYWdlLWxvYWRlcjphZnRlcntib3JkZXItcmFkaXVzOjUwJTt3aWR0aDoxLjI1cmVtO2hlaWdodDoxLjI1cmVtfS50YXdrLWltYWdlLWxvYWRlcnttYXJnaW46MS4yNXJlbSBhdXRvO2ZvbnQtc2l6ZTouNjI1cmVtO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtaW5kZW50Oi05OTk5cmVtO2JvcmRlcjo1cHggc29saWQgIzIxMjEyMTtib3JkZXItbGVmdC1jb2xvcjojNTQ1NDU0O3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO2FuaW1hdGlvbjpsb2FkOCAxLjFzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIGxvYWQ4ezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS50YXdrLWlucHV0LW1lZGl1bXtoZWlnaHQ6My4xMjVyZW07cGFkZGluZzoxcmVtIDEuM3JlbTtsaW5lLWhlaWdodDozLjEyNXJlbTtmb250LXNpemU6LjkzN3JlbX0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQudGF3ay1pbnB1dC1tZWRpdW0rLnRhd2stZm9ybS1sYWJlbHtmb250LXNpemU6LjkzN3JlbTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxNHB4KX0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQudGF3ay1pbnB1dC1tZWRpdW0rLnRhd2stZm9ybS1sYWJlbC50YXdrLWFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtLjYyNXJlbSl9LnRhd2stbGlzdHN7Zm9udC1zaXplOi44MTJyZW19LnRhd2stbGlzdC1pdGVte3BhZGRpbmc6MXJlbX1hLnRhd2stbGlzdC1pdGVtLGJ1dHRvbi50YXdrLWxpc3QtaXRlbXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2Rpc3BsYXk6YmxvY2s7Ym9yZGVyOjB9YS50YXdrLWxpc3QtaXRlbTpob3ZlcixidXR0b24udGF3ay1saXN0LWl0ZW06aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stbGlzdC1oZWFkZXJ7Zm9udC1zaXplOi44MTJyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOiMxMjEyMTI7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmc6LjZyZW19LnRhd2stbGlzdC1pdGVtLnRhd2stbGlzdC1uZXN0ZWR7cGFkZGluZy1sZWZ0OjEuM3JlbX0udGF3ay1ydGwgLnRhd2stbGlzdC1pdGVtLnRhd2stbGlzdC1uZXN0ZWR7cGFkZGluZy1yaWdodDoxLjNyZW19LnRhd2stbGlzdC1pdGVtLW1lZGl1bSwudGF3ay1saXN0LWl0ZW0tc21hbGwsLnRhd2stbGlzdC1pdGVtLXhzbWFsbHtwYWRkaW5nOi42cmVtfS50YXdrLWxpc3QtaXRlbS1sYXJnZXtwYWRkaW5nOjIuNXJlbX0udGF3ay1sb2FkZXJ7cG9zaXRpb246cmVsYXRpdmU7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZC1jb2xvcjojNTQ1NDU0O2N1cnNvcjpkZWZhdWx0fS50YXdrLWxvYWRlci1iYXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MS41cmVtfS50YXdrLWxvYWRlci1iYXIteHNtYWxse3dpZHRoOjEwMCU7aGVpZ2h0Oi41cmVtfS50YXdrLWxvYWRlci1iYXItc21hbGx7d2lkdGg6MTAwJTtoZWlnaHQ6MXJlbX0udGF3ay1sb2FkZXItYmFyLW1lZGl1bXt3aWR0aDoxMDAlO2hlaWdodDoycmVtfS50YXdrLWxvYWRlci1iYXItbGFyZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6Mi41cmVtfS50YXdrLWxvYWRlci1iYXIteGxhcmdle3dpZHRoOjEwMCU7aGVpZ2h0OjNyZW19LnRhd2stbG9hZGVyLWljb257Ym9yZGVyLXJhZGl1czo1MCU7d2lkdGg6MS41cmVtO2hlaWdodDoxLjVyZW19LnRhd2stbG9hZGVyLWljb24teHNtYWxse2JvcmRlci1yYWRpdXM6NTAlO3dpZHRoOi41cmVtO2hlaWdodDouNXJlbX0udGF3ay1sb2FkZXItaWNvbi1zbWFsbHtib3JkZXItcmFkaXVzOjUwJTt3aWR0aDoxcmVtO2hlaWdodDoxcmVtfS50YXdrLWxvYWRlci1pY29uLW1lZGl1bXtib3JkZXItcmFkaXVzOjUwJTt3aWR0aDoycmVtO2hlaWdodDoycmVtfS50YXdrLWxvYWRlci1pY29uLWxhcmdle2JvcmRlci1yYWRpdXM6NTAlO3dpZHRoOjIuNXJlbTtoZWlnaHQ6Mi41cmVtfS50YXdrLWxvYWRlci1pY29uLXhsYXJnZXtib3JkZXItcmFkaXVzOjUwJTt3aWR0aDozcmVtO2hlaWdodDozcmVtfS50YXdrLWxvYWRlci1hdmF0YXJ7Ym9yZGVyLXJhZGl1czoxNXB4O3dpZHRoOjNyZW07aGVpZ2h0OjNyZW19LnRhd2stbG9hZGVyLWF2YXRhci14c21hbGx7Ym9yZGVyLXJhZGl1czoxNXB4O3dpZHRoOjJyZW07aGVpZ2h0OjJyZW19LnRhd2stbG9hZGVyLWF2YXRhci1zbWFsbHtib3JkZXItcmFkaXVzOjE1cHg7d2lkdGg6Mi41cmVtO2hlaWdodDoyLjVyZW19LnRhd2stbG9hZGVyLWF2YXRhci1tZWRpdW17Ym9yZGVyLXJhZGl1czoxNXB4O3dpZHRoOjMuNXJlbTtoZWlnaHQ6My41cmVtfS50YXdrLWxvYWRlci1hdmF0YXItbGFyZ2V7Ym9yZGVyLXJhZGl1czoxNXB4O3dpZHRoOjRyZW07aGVpZ2h0OjRyZW19LnRhd2stbG9hZGVyLWF2YXRhci14bGFyZ2V7Ym9yZGVyLXJhZGl1czoxNXB4O3dpZHRoOjQuNXJlbTtoZWlnaHQ6NC41cmVtfS50YXdrLWxvYWRlci1hbmltYXRpb257YW5pbWF0aW9uLWR1cmF0aW9uOjFzO2FuaW1hdGlvbi1maWxsLW1vZGU6bm9uZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO2FuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHMhaW1wb3J0YW50O2FuaW1hdGlvbi1uYW1lOnNoaW1tZXJMZWZ0VG9SaWdodDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZmFmYWZhIDglLCNmNWY1ZjUgMTglLCNmYWZhZmEgMzMlKTtiYWNrZ3JvdW5kLXNpemU6NjIuNXJlbSA2LjVyZW07cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufUBrZXlmcmFtZXMgc2hpbW1lckxlZnRUb1JpZ2h0ezAle2JhY2tncm91bmQtcG9zaXRpb246LTI5LjI1cmVtIDB9dG97YmFja2dyb3VuZC1wb3NpdGlvbjoyOS4yNXJlbSAwfX1ib2R5LnRhd2stcnRsIC50YXdrLWxvYWRlci1hbmltYXRpb257YW5pbWF0aW9uLW5hbWU6c2hpbW1lclJpZ2h0VG9MZWZ0fUBrZXlmcmFtZXMgc2hpbW1lclJpZ2h0VG9MZWZ0ezAle2JhY2tncm91bmQtcG9zaXRpb246MjkuMjVyZW0gMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yOS4yNXJlbSAwfX0udGF3ay1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDoxMDUwO2xlZnQ6MDtyaWdodDowO3RvcDoxMDAlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlOWU5ZTk7dHJhbnNpdGlvbjp0b3AgLjNzIGVhc2UtaW4tb3V0O292ZXJmbG93OmhpZGRlbn0udGF3ay1vdmVybGF5LnRhd2stb3Blbnt0b3A6MH0udGF3ay1vdmVybGF5IC50YXdrLW92ZXJsYXktaGVhZGVye3dpZHRoOjEwMCU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZC1jb2xvcjojMDNhODRlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7cGFkZGluZzoxcmVtO3otaW5kZXg6MTA1MX0udGF3ay1vdmVybGF5LWhlYWRlciAudGF3ay1vdmVybGF5LWhlYWRlci1sZWZ0e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVufS50YXdrLW92ZXJsYXkgLnRhd2stb3ZlcmxheS1ib2R5ey1tcy1mbGV4OjE7ZmxleDoxO292ZXJmbG93LXk6YXV0bztib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRhd2stb3ZlcmxheS10aXRsZXtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS42MTg7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1sZWZ0Oi42cmVtO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stb3ZlcmxheS1oZWFkZXIgLnRhd2stYnV0dG9ue3BhZGRpbmc6MDtoZWlnaHQ6MS44NzVyZW07d2lkdGg6MnJlbTstbXMtZmxleDpub25lO2ZsZXg6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UtaW4tb3V0fS50YXdrLW92ZXJsYXktaGVhZGVyIC50YXdrLWJ1dHRvbjpmb2N1cywudGF3ay1vdmVybGF5LWhlYWRlciAudGF3ay1idXR0b246aG92ZXJ7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMil9LnRhd2stcGhvbmUtaW5wdXQgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLC50YXdrLXBob25lLWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTttYXJnaW46MH0udGF3ay1waG9uZS1pbnB1dCBpbnB1dFt0eXBlPW51bWJlcl17LW1vei1hcHBlYXJhbmNlOnRleHRmaWVsZH0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVye2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS50YXdrLXBob25lLWlucHV0LWRyb3Bkb3duLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1O2NvbG9yOiMyMTIxMjE7cGFkZGluZzouNnJlbTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0MHB4fS50YXdrLXBob25lLWlucHV0LXdyYXBwZXIgLnRhd2stZHJvcGRvd257cG9zaXRpb246c3RhdGljfS50YXdrLWZvcm0td3JhcHBlci50YXdrLXBob25lLWlucHV0LXdyYXBwZXIgLnRhd2stZHJvcGRvd257d2lkdGg6YXV0b30udGF3ay1waG9uZS1pbnB1dC1kcm9wZG93bi1idXR0b24sLnRhd2stcGhvbmUtaW5wdXQtZHJvcGRvd24tYnV0dG9uLnRhd2stYnV0dG9uOm5vdCgudGF3ay1idXR0b24tdGV4dCl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JveC1zaGFkb3c6bm9uZX0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWRyb3Bkb3duLW1lbnV7cGFkZGluZzowO3dpZHRoOjEwMCU7bWF4LXdpZHRoOm5vbmV9LnRhd2stcGhvbmUtaW5wdXQtZHJvcGRvd24tbWVudS1oZWFkZXJ7cGFkZGluZzoxcmVtfS50YXdrLXBob25lLWlucHV0LXdyYXBwZXIgLnRhd2staW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7b3BhY2l0eToxIWltcG9ydGFudH0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWlucHV0OjotbW96LXBsYWNlaG9sZGVye29wYWNpdHk6MSFpbXBvcnRhbnR9LnRhd2stcGhvbmUtaW5wdXQtd3JhcHBlciAudGF3ay1pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7b3BhY2l0eToxIWltcG9ydGFudH0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7b3BhY2l0eToxIWltcG9ydGFudH0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWlucHV0OjpwbGFjZWhvbGRlcntvcGFjaXR5OjEhaW1wb3J0YW50fS50YXdrLXBob25lLWlucHV0LXBsdXMrLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0e3BhZGRpbmctbGVmdDoycmVtO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LnRhd2stcGhvbmUtaW5wdXQtcGx1c3twb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtoZWlnaHQ6NDBweDt3aWR0aDo0MHB4O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiMxMjEyMTI7ei1pbmRleDoyO29wYWNpdHk6MH0udGF3ay1hY3RpdmUudGF3ay1waG9uZS1pbnB1dC1wbHVze29wYWNpdHk6MX0udGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWxpc3Rze21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS50YXdrLXBob25lLWlucHV0LXdyYXBwZXIgLnRhd2stbGlzdHM+LnRhd2stbGlzdC1pdGVte2N1cnNvcjpwb2ludGVyfS50YXdrLXBob25lLWlucHV0LXdyYXBwZXIgLnRhd2stbGlzdHM+LnRhd2stbGlzdC1pdGVtLnRhd2stYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNX0udGF3ay1mb3JtLWlucHV0LnRhd2stcGhvbmUtaW5wdXQtd3JhcHBlciAudGF3ay1saXN0cz4udGF3ay1saXN0LWl0ZW06YWN0aXZlLC50YXdrLWZvcm0taW5wdXQudGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWxpc3RzPi50YXdrLWxpc3QtaXRlbTpob3ZlciwudGF3ay1waG9uZS1pbnB1dC13cmFwcGVyIC50YXdrLWxpc3RzPi50YXdrLWxpc3QtaXRlbTphY3RpdmUsLnRhd2stcGhvbmUtaW5wdXQtd3JhcHBlciAudGF3ay1saXN0cz4udGF3ay1saXN0LWl0ZW06aG92ZXJ7Y29sb3I6IzIxMjEyMSFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjojZTVlNWU1fS50YXdrLWZvcm0tZmllbGQtbGFiZWx7Y29sb3I6IzEyMTIxMjtmb250OjYwMCAuODEycmVtIExhdG8sc2Fucy1zZXJpZn1ib2R5LnRhd2stcnRsIC50YXdrLWZvcm0tZmllbGQtbGFiZWx7dGV4dC1hbGlnbjpyaWdodH0udGF3ay1yYWRpby1jb250YWluZXJ7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWxlZnQ6MS4zcmVtO21hcmdpbjoxcmVtO2N1cnNvcjpwb2ludGVyOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX1ib2R5LnRhd2stcnRsIC50YXdrLXJhZGlvLWNvbnRhaW5lcntwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjJyZW07dGV4dC1hbGlnbjpyaWdodH0udGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stcmFkaW97cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowO2N1cnNvcjpwb2ludGVyfS50YXdrLXJhZGlvLWNvbnRhaW5lciAudGF3ay1jaGVja21hcmt7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweDtib3JkZXI6MXB4IHNvbGlkICM1NDU0NTQ7Ym9yZGVyLXJhZGl1czo1MCV9Ym9keS50YXdrLXJ0bCAudGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stY2hlY2ttYXJre2xlZnQ6YXV0bztyaWdodDowfS50YXdrLXJhZGlvLWNvbnRhaW5lciAudGF3ay1yYWRpb34udGF3ay1jaGVja21hcmt7Ym9yZGVyOjFweCBzb2xpZCAjNTQ1NDU0fS50YXdrLXJhZGlvLWNvbnRhaW5lcjpob3ZlciAudGF3ay1yYWRpb34udGF3ay1jaGVja21hcmt7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhfS50YXdrLXJhZGlvLWNvbnRhaW5lciAudGF3ay1yYWRpb1tkaXNhYmxlZF1+LnRhd2stY2hlY2ttYXJre2JhY2tncm91bmQ6I2ZhZmFmYX0udGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stcmFkaW9bZGlzYWJsZWRde2JvcmRlci1jb2xvcjojNTQ1NDU0fS50YXdrLXJhZGlvLWNvbnRhaW5lciAudGF3ay1yYWRpbzpjaGVja2Vkfi50YXdrLWNoZWNrbWFya3tiYWNrZ3JvdW5kOiMwM2E4NGU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtib3JkZXItY29sb3I6IzAzYTg0ZTtib3JkZXItY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcil9LnRhd2stcmFkaW8tY29udGFpbmVyIC50YXdrLWNoZWNrbWFyazphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZX0udGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stcmFkaW86Y2hlY2tlZH4udGF3ay1jaGVja21hcms6YWZ0ZXJ7ZGlzcGxheTpibG9ja30udGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stY2hlY2ttYXJrOmFmdGVye21hcmdpbjphdXRvO3RleHQtYWxpZ246Y2VudGVyO2xlZnQ6MDtyaWdodDowO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiNmZmY7d2lkdGg6OHB4O2hlaWdodDo4cHh9LnRhd2stcmFkaW8tY29udGFpbmVyIC50YXdrLWZvcm0tbGFiZWx7Y29sb3I6IzEyMTIxMjtmb250OjQwMCAuODEycmVtIExhdG8sc2Fucy1zZXJpZn0udGF3ay1yYWRpby1jb250YWluZXIgLnRhd2stcmFkaW9bZGlzYWJsZWRdfi50YXdrLWZvcm0tbGFiZWx7Y29sb3I6I2ZhZmFmYX0udGF3ay1yYXRpbmd7d2lkdGg6MTAwJTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MS4zcmVtfS50YXdrLXJhdGluZy1idXR0b257aGVpZ2h0OjVyZW07d2lkdGg6NXJlbTtsaW5lLWhlaWdodDowO2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYSFpbXBvcnRhbnQ7Y29sb3I6IzEyMTIxMiFpbXBvcnRhbnQ7Ym9yZGVyOjFweCBzb2xpZCAjZmFmYWZhIWltcG9ydGFudDttYXJnaW46MCA4cHghaW1wb3J0YW50fS50YXdrLXJhdGluZy1idXR0b24gc3Zne3dpZHRoOjQwcHh9LnRhd2stcmF0aW5nLWJ1dHRvbi50YXdrLWFjdGl2ZSwudGF3ay1yYXRpbmctYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM1NDU0NTQhaW1wb3J0YW50fS50YXdrLXJhdGluZy1idXR0b246ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhIWltcG9ydGFudDtvcGFjaXR5Oi43fS50YXdrLWlucHV0LnRhd2stc2VhcmNoe2hlaWdodDozcmVtO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjtsaW5lLWhlaWdodDoxcmVtO3BhZGRpbmc6MCAzNnB4fS50YXdrLWlucHV0LnRhd2stc2VhcmNoLnRhd2stc2VhcmNoLWxlZnQtcGFkZGluZ3t0ZXh0LWFsaWduOnJpZ2h0fS50YXdrLWlucHV0LnRhd2stc2VhcmNoLnRhd2stc2VhcmNoLXJpZ2h0LXBhZGRpbmd7dGV4dC1hbGlnbjpsZWZ0fS50YXdrLWlucHV0LnRhd2stc2VhcmNoOjotbXMtY2xlYXJ7ZGlzcGxheTpub25lfS50YXdrLWlucHV0LnRhd2stc2VhcmNoLC50YXdrLWlucHV0LnRhd2stc2VhcmNoOmZvY3VzLC50YXdrLWlucHV0LnRhd2stc2VhcmNoOmhvdmVye2JvcmRlcjpub25lfS50YXdrLXNlYXJjaDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjEhaW1wb3J0YW50fS50YXdrLXNlYXJjaDo6LW1vei1wbGFjZWhvbGRlcntvcGFjaXR5OjEhaW1wb3J0YW50fS50YXdrLXNlYXJjaDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7b3BhY2l0eToxIWltcG9ydGFudH0udGF3ay1zZWFyY2g6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjEhaW1wb3J0YW50fS50YXdrLXNlYXJjaDo6cGxhY2Vob2xkZXJ7b3BhY2l0eToxIWltcG9ydGFudH0udGF3ay1zZWFyY2gtd3JhcHBlcntiYWNrZ3JvdW5kOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo2cHg7ei1pbmRleDoxO3BhZGRpbmc6LjA2MjVyZW07Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1fS50YXdrLXNlYXJjaC13cmFwcGVyIC50YXdrLWlucHV0e2JvcmRlci1yYWRpdXM6NnB4fS50YXdrLWljb24udGF3ay1zZWFyY2gtaWNvbnt3aWR0aDoxLjg3NXJlbTtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MXJlbX0udGF3ay1zZWFyY2gtaWNvbi50YXdrLXNlYXJjaC1pY29uLWZsaXB7cmlnaHQ6YXV0bztsZWZ0OjB9LnRhd2stc2VhcmNoLWljb246bm90KC50YXdrLXNlYXJjaC1pY29uLWZsaXApKy50YXdrLXNlYXJjaHtwYWRkaW5nLWxlZnQ6MS44NzVyZW19LnRhd2stc2VhcmNoLWljb24udGF3ay1zZWFyY2gtaWNvbi1mbGlwKy50YXdrLXNlYXJjaHtwYWRkaW5nLXJpZ2h0OjEuODc1cmVtfS50YXdrLXNlYXJjaC1pY29uLnRhd2staWNvbi1jbG9zZXtjdXJzb3I6cG9pbnRlcn0udGF3ay1zZWFyY2gtZHJvcGRvd257ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDozLjVyZW07bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo5MDAwO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JveC1zaGFkb3c6MCA1cHggMTVweCByZ2JhKDAsMCwwLC4xMik7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OmhpZGRlbjtib3JkZXItcmFkaXVzOjVweH0udGF3ay1zZWFyY2gtZHJvcGRvd24udGF3ay1vcGVue2Rpc3BsYXk6YmxvY2t9LnRhd2stc2VhcmNoLWxpc3R7bGlzdC1zdHlsZS10eXBlOm5vbmU7cGFkZGluZzowO3RleHQtYWxpZ246bGVmdH0udGF3ay1zZWFyY2gtbGlzdD5saXtwYWRkaW5nOi41cmVtIDFyZW07Y29sb3I6IzEyMTIxMn0udGF3ay1zZWFyY2gtbGlzdD5saTpub3QoLnRhd2stc2VhcmNoLWxpc3QtdGl0bGUpOmhvdmVye2NvbG9yOiMxMjEyMTI7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2N1cnNvcjpwb2ludGVyfS50YXdrLXNlYXJjaC1saXN0LXRpdGxlLWJ1dHRvbntjb2xvcjojMTIxMjEyO2N1cnNvcjpwb2ludGVyfS50YXdrLXNlYXJjaC1saXN0PmxpLnRhd2stYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYX0udGF3ay1zZWFyY2gtbGlzdC1pY29ue2ZpbGw6IzIxMjEyMTt3aWR0aDoxcmVtO2hlaWdodDoxcmVtfS50YXdrLXNlYXJjaC1saXN0LXRpdGxle2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnRhd2stc2VhcmNoLWxpc3QtdGl0bGUgLnRhd2stc2VhcmNoLWxpc3QtdGl0bGUtaWNvbnttYXJnaW4tcmlnaHQ6MXJlbX0udGF3ay1zZWFyY2gtbGlzdC10aXRsZSAudGF3ay1zZWFyY2gtbGlzdC10aXRsZS1sYWJlbHstbXMtZmxleDoxO2ZsZXg6MTtmb250LXNpemU6LjkzN3JlbX0udGF3ay1zZWFyY2gtbG9hZGVye3dpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MXJlbX0udGF3ay1zZWFyY2gtYnV0dG9ue2hlaWdodDpjYWxjKDEwMCUgLSAuMTI1cmVtKTt3aWR0aDozNnB4O2NvbG9yOiM4MjgyODIhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3otaW5kZXg6Mn0udGF3ay1zZWFyY2gtYnV0dG9uLnRhd2stc2VhcmNoLWxlZnQtYnV0dG9ue3JpZ2h0OmF1dG87bGVmdDoxcHg7Ym9yZGVyLXJhZGl1czo0cHggMCAwIDRweH0udGF3ay1zZWFyY2gtYnV0dG9uLnRhd2stc2VhcmNoLXJpZ2h0LWJ1dHRvbntyaWdodDoxcHg7bGVmdDphdXRvO2JvcmRlci1yYWRpdXM6MCA0cHggNHB4IDB9LnRhd2stc2VhcmNoLWJ1dHRvbiAudGF3ay1pY29ue2ZvbnQtc2l6ZToxOHB4O21hcmdpbjowIDRweH0udGF3ay1zZWFyY2gtYnV0dG9uLWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7cGFkZGluZzowIWltcG9ydGFudDt6LWluZGV4OjI7aGVpZ2h0OjEuNTYyNXJlbSFpbXBvcnRhbnQ7d2lkdGg6MS41NjI1cmVtIWltcG9ydGFudDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDojZjVmNWY1IWltcG9ydGFudDtjb2xvcjojMjQyNDI0IWltcG9ydGFudDtib3JkZXI6bm9uZSFpbXBvcnRhbnR9LnRhd2stc2VhcmNoLWJ1dHRvbi1jbG9zZSAudGF3ay1pY29ue2ZvbnQtc2l6ZTouOXJlbTttYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OjEuNTYyNXJlbTt3aWR0aDoxLjU2MjVyZW19LnRhd2stc2VhcmNoLWJ1dHRvbi1jbG9zZS50YXdrLXNlYXJjaC1sZWZ0LWJ1dHRvbntyaWdodDphdXRvO2xlZnQ6MXJlbX0udGF3ay1zZWFyY2gtYnV0dG9uLWNsb3NlLnRhd2stc2VhcmNoLXJpZ2h0LWJ1dHRvbntyaWdodDoxcmVtO2xlZnQ6YXV0b30udGF3ay1pbnB1dCwudGF3ay1zZWxlY3QsLnRhd2stdGV4dGFyZWEsaW5wdXQsc2VsZWN0LHRleHRhcmVhe2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW46MDtib3JkZXItcmFkaXVzOjEwcHg7Zm9udC1mYW1pbHk6TGF0byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB4Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lfWJvZHkudGF3ay1ydGwgLnRhd2staW5wdXQsYm9keS50YXdrLXJ0bCAudGF3ay1zZWxlY3QsYm9keS50YXdrLXJ0bCAudGF3ay10ZXh0YXJlYXt0ZXh0LWFsaWduOnJpZ2h0fS50YXdrLWlucHV0OjotbW96LXBsYWNlaG9sZGVyLC50YXdrLXRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVye29wYWNpdHk6MX0udGF3ay1pbnB1dCwudGF3ay1zZWxlY3QsLnRhd2stdGV4dGFyZWEsaW5wdXQsc2VsZWN0LHRleHRhcmVhe21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCU7Ym9yZGVyOjFweCBzb2xpZCAjZTVlNWU1O3BhZGRpbmc6LjZyZW0gMXJlbTtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzEyMTIxMn0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXR7ei1pbmRleDoxfS50YXdrLWlucHV0LC50YXdrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksaW5wdXR7aGVpZ2h0OjIuNXJlbTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnRhd2staW5wdXQ6Zm9jdXMsLnRhd2stc2VsZWN0OmZvY3VzLC50YXdrLXRleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiMwM2E4NGU7Ym9yZGVyLWNvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLWlucHV0OmZvY3VzLXZpc2libGUsLnRhd2stc2VsZWN0OmZvY3VzLXZpc2libGUsLnRhd2stdGV4dGFyZWE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym9yZGVyOjFweCBzb2xpZCAjMDZmO2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwxMDIsMjU1LC40KX0udGF3ay1pbnB1dDpkaXNhYmxlZCwudGF3ay1zZWxlY3Q6ZGlzYWJsZWQsLnRhd2stdGV4dGFyZWE6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiNmYWZhZmE7Ym9yZGVyLWNvbG9yOiNmYWZhZmF9LnRhd2staW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC50YXdrLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiMxMjEyMTJ9LnRhd2staW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsIC50YXdrLXRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiMxMjEyMTJ9LnRhd2staW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAudGF3ay10ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6IzEyMTIxMn0udGF3ay1pbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAudGF3ay10ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiMxMjEyMTJ9LnRhd2staW5wdXQ6OnBsYWNlaG9sZGVyLC50YXdrLXRleHRhcmVhOjpwbGFjZWhvbGRlcntjb2xvcjojMTIxMjEyfS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjE1cyBlYXNlLWluLW91dH0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsIC50YXdrLWZvcm0td3JhcHBlciAudGF3ay10ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcntvcGFjaXR5OjA7LW1vei10cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXR9LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjA7LW1zLXRyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjE1cyBlYXNlLWluLW91dH0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7b3BhY2l0eTowOy1tcy10cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXR9LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0OjpwbGFjZWhvbGRlciwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2stdGV4dGFyZWE6OnBsYWNlaG9sZGVye29wYWNpdHk6MDt0cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0fS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye29wYWNpdHk6MX0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIsIC50YXdrLWZvcm0td3JhcHBlciAudGF3ay10ZXh0YXJlYTpmb2N1czo6LW1vei1wbGFjZWhvbGRlcntvcGFjaXR5OjF9LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0OmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjF9LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0OmZvY3VzOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC50YXdrLWZvcm0td3JhcHBlciAudGF3ay10ZXh0YXJlYTpmb2N1czo6LW1zLWlucHV0LXBsYWNlaG9sZGVye29wYWNpdHk6MX0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQ6Zm9jdXM6OnBsYWNlaG9sZGVyLC50YXdrLWZvcm0td3JhcHBlciAudGF3ay10ZXh0YXJlYTpmb2N1czo6cGxhY2Vob2xkZXJ7b3BhY2l0eToxfS50YXdrLWZvcm0tc3VjY2VzcywudGF3ay1mb3JtLXN1Y2Vzczpmb2N1c3tjb2xvcjojMDNhODRlO2JvcmRlci1jb2xvcjojMDNhODRlfS50YXdrLWZvcm0tZGFuZ2VyLC50YXdrLWZvcm0tZGFuZ2VyOmZvY3Vze2NvbG9yOiNiZjEyMTI7Ym9yZGVyLWNvbG9yOiNiZjEyMTJ9LnRhd2stZm9ybS13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLWZvcm0tbGFiZWx7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTJweDtjb2xvcjojMTIxMjEyO2xpbmUtaGVpZ2h0Om5vcm1hbH0udGF3ay1mb3JtLXdyYXBwZXIgLnRhd2stZm9ybS1sYWJlbHttYXJnaW4tbGVmdDouNHJlbX1ib2R5LnRhd2stcnRsIC50YXdrLWZvcm0td3JhcHBlciAudGF3ay1mb3JtLWxhYmVse21hcmdpbi1yaWdodDouNHJlbTttYXJnaW4tbGVmdDowfS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dCsudGF3ay1mb3JtLWxhYmVsLC50YXdrLWZvcm0td3JhcHBlciAudGF3ay10ZXh0YXJlYSsudGF3ay1mb3JtLWxhYmVse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjE7dHJhbnNmb3JtLW9yaWdpbjowIDEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLjdyZW0pO2NvbG9yOiMxMjEyMTI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwYWRkaW5nOjAgLjZyZW07dHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0fS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dCsudGF3ay1mb3JtLWxhYmVsLnRhd2stZm9ybS1sYWJlbC1jdXN0b20tc3R5bGUsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhKy50YXdrLWZvcm0tbGFiZWwudGF3ay1mb3JtLWxhYmVsLWN1c3RvbS1zdHlsZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcmVtKX1ib2R5LnRhd2stcnRsIC50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dCsudGF3ay1mb3JtLWxhYmVsLGJvZHkudGF3ay1ydGwgLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhKy50YXdrLWZvcm0tbGFiZWx7cmlnaHQ6MDtsZWZ0OmF1dG99LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0Ky50YXdrLWZvcm0tbGFiZWwudGF3ay1hY3RpdmUsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhKy50YXdrLWZvcm0tbGFiZWwudGF3ay1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKC45KTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LnRhd2stZm9ybS1sYWJlbC50YXdrLWFjdGl2ZSwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXQ6Zm9jdXMrLnRhd2stZm9ybS1sYWJlbCwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2stdGV4dGFyZWE6Zm9jdXMrLnRhd2stZm9ybS1sYWJlbHtjb2xvcjojMDNhODRlO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dFt0eXBlPWRhdGVdW2RhdGEtaGFzLXZhbHVlPWZhbHNlXTpub3QoOmZvY3VzKTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LC50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dFt0eXBlPWRhdGVdW2RhdGEtaGFzLXZhbHVlPWZhbHNlXTpub3QoOmZvY3VzKTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXRbdHlwZT1kYXRlXVtkYXRhLWhhcy12YWx1ZT1mYWxzZV06bm90KDpmb2N1cyk6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXRbdHlwZT1kYXRlXVtkYXRhLWhhcy12YWx1ZT1mYWxzZV06bm90KDpmb2N1cyk6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LC50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dFt0eXBlPWRhdGVdW2RhdGEtaGFzLXZhbHVlPWZhbHNlXTpub3QoOmZvY3VzKTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGR7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dFt0eXBlPWRhdGVdOmZvY3VzOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV06Zm9jdXM6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV06Zm9jdXM6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXRbdHlwZT1kYXRlXTpmb2N1czo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV06Zm9jdXM6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLC50YXdrLWZvcm0td3JhcHBlciAudGF3ay1pbnB1dFt0eXBlPWRhdGVdW2RhdGEtaGFzLXZhbHVlPXRydWVdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV1bZGF0YS1oYXMtdmFsdWU9dHJ1ZV06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV1bZGF0YS1oYXMtdmFsdWU9dHJ1ZV06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCwudGF3ay1mb3JtLXdyYXBwZXIgLnRhd2staW5wdXRbdHlwZT1kYXRlXVtkYXRhLWhhcy12YWx1ZT10cnVlXTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsLnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0W3R5cGU9ZGF0ZV1bZGF0YS1oYXMtdmFsdWU9dHJ1ZV06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxke2NvbG9yOiMxMjEyMTIhaW1wb3J0YW50fS50YXdrLXRleHRhcmVhe2ZvbnQtd2VpZ2h0OjQwMDtmb250LXNpemU6LjgxMnJlbTt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MTBweDtyZXNpemU6bm9uZTtoZWlnaHQ6NXJlbX0udGF3ay10aW1lYWdve2ZvbnQ6NDAwIC43NXJlbSBMYXRvLHNhbnMtc2VyaWY7Y29sb3I6IzIxMjEyMX0udGF3ay12aWRlby1pZnJhbWUtY29udGFpbmVye3dpZHRoOjEwMCU7cGFkZGluZy10b3A6NTYuMjUlO3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLXZpZGVvLWlmcmFtZXtib3JkZXItcmFkaXVzOjEwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnRhd2stdmlkZW8tZWx7d2lkdGg6MTAwJX0udGF3ay10b29sdGlwOmhvdmVyIC50YXdrLXRvb2x0aXAtaG92ZXJ7b3BhY2l0eToxO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgbGluZWFyIC41c30udGF3ay10b29sdGlwIC50YXdrLXRvb2x0aXAtaG92ZXJ7cG9zaXRpb246Zml4ZWQ7bWFyZ2luLXRvcDo4cHg7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6NXB4O2JhY2tncm91bmQ6IzEyMTIxMjtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZTouNzVyZW07cmlnaHQ6MDtsZWZ0OmF1dG87b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAwcyBsaW5lYXI7ei1pbmRleDoyfS50YXdrLXRvb2x0aXAgLnRhd2stdG9vbHRpcC1ob3ZlciAudGF3ay10b29sdGlwLWFycm93e3RvcDotMTZweDtkaXNwbGF5OmJsb2NrO2xlZnQ6NTAlO2JvcmRlcjo4cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMTIxMjEyO3Bvc2l0aW9uOmFic29sdXRlfS50YXdrLXRvb2x0aXAgLnRhd2stdG9vbHRpcC1ob3Zlci5ib3R0b20gLnRhd2stdG9vbHRpcC1hcnJvd3tib3JkZXItY29sb3I6IzEyMTIxMiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtib3R0b206LTE2cHg7dG9wOmF1dG99LnBze292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7b3ZlcmZsb3ctYW5jaG9yOm5vbmU7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmU7dG91Y2gtYWN0aW9uOmF1dG87LW1zLXRvdWNoLWFjdGlvbjphdXRvfS5wc19fcmFpbC14e2hlaWdodDoxNXB4O2JvdHRvbTowfS5wc19fcmFpbC14LC5wc19fcmFpbC15e2Rpc3BsYXk6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsb3BhY2l0eSAuMnMgbGluZWFyOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsb3BhY2l0eSAuMnMgbGluZWFyO3Bvc2l0aW9uOmFic29sdXRlfS5wc19fcmFpbC15e3dpZHRoOjE1cHg7cmlnaHQ6MH0ucHMtLWFjdGl2ZS14Pi5wc19fcmFpbC14LC5wcy0tYWN0aXZlLXk+LnBzX19yYWlsLXl7ZGlzcGxheTpibG9jaztiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5wcy0tZm9jdXM+LnBzX19yYWlsLXgsLnBzLS1mb2N1cz4ucHNfX3JhaWwteSwucHMtLXNjcm9sbGluZy14Pi5wc19fcmFpbC14LC5wcy0tc2Nyb2xsaW5nLXk+LnBzX19yYWlsLXksLnBzOmhvdmVyPi5wc19fcmFpbC14LC5wczpob3Zlcj4ucHNfX3JhaWwteXtvcGFjaXR5Oi42fS5wcyAucHNfX3JhaWwteC5wcy0tY2xpY2tpbmcsLnBzIC5wc19fcmFpbC14OmZvY3VzLC5wcyAucHNfX3JhaWwteDpob3ZlciwucHMgLnBzX19yYWlsLXkucHMtLWNsaWNraW5nLC5wcyAucHNfX3JhaWwteTpmb2N1cywucHMgLnBzX19yYWlsLXk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVlO29wYWNpdHk6Ljl9LnBzX190aHVtYi14e3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLGhlaWdodCAuMnMgZWFzZS1pbi1vdXQ7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGxpbmVhcixoZWlnaHQgLjJzIGVhc2UtaW4tb3V0O2hlaWdodDo2cHg7Ym90dG9tOjJweH0ucHNfX3RodW1iLXgsLnBzX190aHVtYi15e2JhY2tncm91bmQtY29sb3I6I2FhYTtib3JkZXItcmFkaXVzOjZweDtwb3NpdGlvbjphYnNvbHV0ZX0ucHNfX3RodW1iLXl7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsd2lkdGggLjJzIGVhc2UtaW4tb3V0Oy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsd2lkdGggLjJzIGVhc2UtaW4tb3V0O3dpZHRoOjZweDtyaWdodDoycHh9LnBzX19yYWlsLXgucHMtLWNsaWNraW5nIC5wc19fdGh1bWIteCwucHNfX3JhaWwteDpmb2N1cz4ucHNfX3RodW1iLXgsLnBzX19yYWlsLXg6aG92ZXI+LnBzX190aHVtYi14e2JhY2tncm91bmQtY29sb3I6Izk5OTtoZWlnaHQ6MTFweH0ucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgLnBzX190aHVtYi15LC5wc19fcmFpbC15OmZvY3VzPi5wc19fdGh1bWIteSwucHNfX3JhaWwteTpob3Zlcj4ucHNfX3RodW1iLXl7YmFja2dyb3VuZC1jb2xvcjojOTk5O3dpZHRoOjExcHh9QHN1cHBvcnRzICgtbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZSl7LnBze292ZXJmbG93OmF1dG8haW1wb3J0YW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7LnBze292ZXJmbG93OmF1dG8haW1wb3J0YW50fX0ucHNfX3JhaWwteXtsZWZ0OmF1dG8haW1wb3J0YW50O3JpZ2h0OjAhaW1wb3J0YW50O3otaW5kZXg6MjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtvcGFjaXR5OjEhaW1wb3J0YW50fS5wc19fcmFpbC15IC5wc19fdGh1bWIteXt3aWR0aDo1cHghaW1wb3J0YW50O2JhY2tncm91bmQ6IzkyOTI5ZSFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAucHNfX3JhaWwteXtsZWZ0OjAhaW1wb3J0YW50O3JpZ2h0OmF1dG8haW1wb3J0YW50O3dpZHRoOjVweCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAucHNfX3JhaWwteSAucHNfX3RodW1iLXl7bGVmdDoycHghaW1wb3J0YW50O3JpZ2h0OmF1dG8haW1wb3J0YW50fWFiYnIsYWRkcmVzcyxhcnRpY2xlLGFzaWRlLGF1ZGlvLGIsYmxvY2txdW90ZSxib2R5LGNhbnZhcyxjYXB0aW9uLGNpdGUsY29kZSxkZCxkZWwsZGV0YWlscyxkZm4sZGl2LGRsLGR0LGVtLGZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvb3Rlcixmb3JtLGgxLGgyLGgzLGg0LGg1LGg2LGhlYWRlcixoZ3JvdXAsaHRtbCxpLGlmcmFtZSxpbWcsaW5zLGtiZCxsYWJlbCxsZWdlbmQsbGksbWFyayxtZW51LG5hdixvYmplY3Qsb2wscCxwcmUscSxzYW1wLHNlY3Rpb24sc21hbGwsc3BhbixzdHJvbmcsc3ViLHN1bW1hcnksc3VwLHRhYmxlLHRib2R5LHRkLHRmb290LHRoLHRoZWFkLHRpbWUsdHIsdWwsdmFyLHZpZGVve21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MDtvdXRsaW5lOjA7Zm9udC1zaXplOjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Ym9keXtsaW5lLWhlaWdodDoxfWJvZHkuZm9udC1sYXRve2ZvbnQtZmFtaWx5OkxhdG8sT3BlbiBTYW5zLHNhbnMtc2VyaWYhaW1wb3J0YW50fWJvZHkudGF3ay1ydGx7ZGlyZWN0aW9uOnJ0bDtvdmVyZmxvdzpoaWRkZW59QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjEwMjRweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToyMnB4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NDgxcHgpIGFuZCAobWF4LXdpZHRoOjc2N3B4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjE4cHghaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo0ODBweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToxOHB4IWltcG9ydGFudH19Kntmb250LWZhbWlseTppbmhlcml0fWFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLGhncm91cCxtZW51LG5hdixzZWN0aW9ue2Rpc3BsYXk6YmxvY2t9bmF2IHVse2xpc3Qtc3R5bGU6bm9uZX1ibG9ja3F1b3RlLHF7cXVvdGVzOm5vbmV9YmxvY2txdW90ZTphZnRlcixibG9ja3F1b3RlOmJlZm9yZSxxOmFmdGVyLHE6YmVmb3Jle2NvbnRlbnQ6IiI7Y29udGVudDpub25lfWF7bWFyZ2luOjA7cGFkZGluZzowO2ZvbnQtc2l6ZToxMDAlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9aW5ze3RleHQtZGVjb3JhdGlvbjpub25lfWlucyxtYXJre2JhY2tncm91bmQtY29sb3I6I2ZmOTtjb2xvcjojMDAwfW1hcmt7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NzAwfWRlbHt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdofWFiYnJbdGl0bGVdLGRmblt0aXRsZV17Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkO2N1cnNvcjpoZWxwfXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowfWhye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjY2NjO21hcmdpbjoxZW0gMDtwYWRkaW5nOjB9aW5wdXQsc2VsZWN0e3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1ib2R5LGh0bWx7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xpbmUtaGVpZ2h0OjE7cG9zaXRpb246cmVsYXRpdmU7Zm9udDo0MDAgMTZweCBIZWx2ZXRpY2Esc2Fucy1zZXJpZiFpbXBvcnRhbnR9Ym9keS5mb250LWxhdG8saHRtbC5mb250LWxhdG97Zm9udDo0MDAgMTZweCBMYXRvLHNhbnMtc2VyaWYhaW1wb3J0YW50fS5jbGVhcntjbGVhcjpib3RofS5jbGVhcmZpeDphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTowO2NvbnRlbnQ6IiAiO2hlaWdodDowfS5jbGVhcmZpeHtkaXNwbGF5OmlubGluZS1ibG9ja30qIGh0bWwgLmNsZWFyZml4e2hlaWdodDoxJX0uY2xlYXJmaXh7ZGlzcGxheTpibG9ja31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OnRhd2stZm9udC1pY29uO3NyYzp1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLndvZmY/NTU3NTU3Mjg9KSBmb3JtYXQoIndvZmYiKSx1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLnR0Zj81NTc1NTcyOD0pIGZvcm1hdCgidHJ1ZXR5cGUiKSx1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLnN2Zz81NTc1NTcyOD0jdGF3ay1mb250LWljb24pIGZvcm1hdCgic3ZnIik7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtZGlzcGxheTpzd2FwfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6dGF3ay1pY29uO3NyYzp1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLndvZmY/NTU3NTU3Mjg9KSBmb3JtYXQoIndvZmYiKSx1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLnR0Zj81NTc1NTcyOD0pIGZvcm1hdCgidHJ1ZXR5cGUiKSx1cmwoaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cy9mb250cy90YXdrLWZvbnQtaWNvbi0zLnN2Zz81NTc1NTcyOD0jdGF3ay1mb250LWljb24pIGZvcm1hdCgic3ZnIik7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsfS50YXdrLWljb257Zm9udC1mYW1pbHk6dGF3ay1pY29uIWltcG9ydGFudH0udGF3ay1jYWxse3Bvc2l0aW9uOmZpeGVkO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6OTAwMDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzo2MHB4IDIwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZmFmYWZhO2JvcmRlci1yYWRpdXM6NXB4fS50YXdrLWNhbGwtaGVhZGVyey1tcy1mbGV4OjI7ZmxleDoyfS50YXdrLWNhbGwtZm9vdGVyey1tcy1mbGV4OjE7ZmxleDoxfS50YXdrLWNhbGwtYWNjZXB0e3dpZHRoOjEwMCV9LnRhd2stY2FsbC1kZWNsaW5le3dpZHRoOjgwJX0udGF3ay1tYXgtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW59LnRhd2stbWF4LWNvbnRhaW5lci50YXdrLW5vLXRvb2xiYXItZWxlbWVudHMgLnNsaWRlLWZhZGUtbGVhdmUtYWN0aXZlIC50YXdrLWNoYXQtcGFuZWw6YmVmb3Jle3Zpc2liaWxpdHk6aGlkZGVufS50YXdrLXRvb2xiYXJ7ei1pbmRleDozO21hcmdpbi10b3A6LTFweDtwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDttYXgtaGVpZ2h0OjY0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LnRhd2stb3ZlcmxheSAudGF3ay10b29sYmFye3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDphdXRvO2xlZnQ6YXV0bztyaWdodDphdXRvO21heC1oZWlnaHQ6bm9uZX0udGF3ay10b29sYmFyLnRhd2stYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpfS50YXdrLW1vYmlsZSAudGF3ay10b29sYmFye3BhZGRpbmctdG9wOnZhcigtLXRhd2staGVhZGVyLW92ZXJyaWRlLXBhZGRpbmctdG9wKX0udGF3ay1uby10b29sYmFyLWVsZW1lbnRzIC50YXdrLXRvb2xiYXJ7cGFkZGluZzouNXJlbX0udGF3ay10b29sYmFyIC50YXdrLXRvb2xiYXItbmF2e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVufS50YXdrLXRvb2xiYXIgLnRhd2stcm91dGUtYmFja3tvdmVyZmxvdzpoaWRkZW59LnRhd2stcm91dGUtYmFjayAudGF3ay10b29sYmFyLXRpdGxle2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZToxLjI1cmVtfS50YXdrLXRvb2xiYXIgLnRhd2stYnV0dG9uLWhvdmVye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OnZpc2libGU7aGVpZ2h0OjEuODc1cmVtO3dpZHRoOjJyZW19LnRhd2stdG9vbGJhciAudGF3ay1idXR0b24tdGV4dDpmb2N1c3tjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX1ib2R5LnRhd2stbW9iaWxlIC50YXdrLXRvb2xiYXIgLnRhd2stYnV0dG9uLWhvdmVye21hcmdpbjowIC4ycmVtIDAgMH0udGF3ay1idXR0b24taG92ZXIsLnRhd2stYnV0dG9uLXN1Ym1pdHRpbmd7cG9zaXRpb246cmVsYXRpdmV9LnRhd2stYnV0dG9uLWhvdmVyOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOmJlZm9yZSwudGF3ay1idXR0b24tc3VibWl0dGluZzpub3QoOmRpc2FibGVkKTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjQ3LDI0NywyNDksLjIpO2JvcmRlci1yYWRpdXM6NXB4fS50YXdrLXRvb2xiYXIgLnRhd2stYnV0dG9uLWhvdmVyOmRpc2FibGVke2NvbG9yOiNmZmYhaW1wb3J0YW50O2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpIWltcG9ydGFudH0udGF3ay10b29sYmFyIC50YXdrLWJ1dHRvbi1ob3Zlcjpob3ZlcjpkaXNhYmxlZCAudGF3ay10b29sdGlwLWhvdmVye2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnRhd2stb3ZlcmxheSAudGF3ay10b29sYmFye3otaW5kZXg6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXRvcDowIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50fS50YXdrLXRvb2xiYXIgLnRhd2stdG9vbGJhci1sb2dve2hlaWdodDozMHB4O3dpZHRoOjMwcHg7Ym9yZGVyLXJhZGl1czo1cHh9LnRhd2stdG9vbGJhci1hZ2VudC1hdmF0YXJze2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVufS50YXdrLXRvb2xiYXItYWdlbnQtYXZhdGFycyAudGF3ay1hdmF0YXJ7aGVpZ2h0OjEuODc1cmVtO3dpZHRoOjEuODc1cmVtO2xpbmUtaGVpZ2h0OjEuNzI1cmVtO2ZvbnQtc2l6ZTouOHJlbX0udGF3ay10b29sYmFyLWFnZW50LWF2YXRhcnM+LnRhd2stYXZhdGFyOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xNXB4fS50YXdrLXRvb2xiYXItYWdlbnQtYXZhdGFycyAudGF3ay10b29sYmFyLWFnZW50LWRldGFpbHN7bWFyZ2luLWxlZnQ6LjZyZW07LW1zLWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVufS50YXdrLXRvb2xiYXItYWdlbnQtbmFtZXtmb250LXNpemU6MS4yNXJlbX0udGF3ay10b29sYmFyLWFnZW50LW5hbWUsLnRhd2stdG9vbGJhci1hZ2VudC10aXRsZXtsaW5lLWhlaWdodDoxLjJlbTttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stdG9vbGJhci1hZ2VudC10aXRsZXtmb250LXNpemU6Ljc1cmVtfS50YXdrLWhlYWRlci10ZXh0LC50YXdrLWhlYWRlci10ZXh0OmhvdmVye2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLXRvb2xiYXItbWVudSAudGF3ay1oZWFkZXItdGV4dDpmb2N1c3tjb2xvcjojZmZmfS50YXdrLXRvb2xiYXItbWVudSAudGF3ay1kcm9wZG93bi1tZW51e3RvcDoyLjE4NzVyZW07Ym9yZGVyLXJhZGl1czo1cHg7cGFkZGluZzouNXJlbSAwO3dpZHRoOmNhbGMoMTAwdncgLSAzLjEyNXJlbSk7bWF4LXdpZHRoOjYwdnd9LnRhd2stdG9vbGJhci1tZW51IC50YXdrLWRyb3Bkb3duLW1lbnU6YWZ0ZXIsLnRhd2stdG9vbGJhci1tZW51IC50YXdrLWRyb3Bkb3duLW1lbnU6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjEwMCU7aGVpZ2h0OjA7d2lkdGg6MDtib3JkZXI6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn0udGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudS50YXdrLWRyb3Bkb3duLW1lbnUtcmlnaHQ6YWZ0ZXIsLnRhd2stdG9vbGJhci1tZW51IC50YXdrLWRyb3Bkb3duLW1lbnUudGF3ay1kcm9wZG93bi1tZW51LXJpZ2h0OmJlZm9yZXtyaWdodDouNTYyNXJlbX0udGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudS50YXdrLWRyb3Bkb3duLW1lbnUtbGVmdDphZnRlciwudGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudS50YXdrLWRyb3Bkb3duLW1lbnUtbGVmdDpiZWZvcmV7bGVmdDouNTYyNXJlbX0udGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1idXR0b257ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21hcmdpbjowO2NvbG9yOiMxMjEyMTI7Ym9yZGVyLXJhZGl1czowO3BhZGRpbmc6LjVyZW0gMXJlbX0udGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1idXR0b246Zm9jdXMsLnRhd2stdG9vbGJhci1tZW51IC50YXdrLWRyb3Bkb3duLW1lbnUgLnRhd2stYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Y2ZjZmNn0udGF3ay10b29sYmFyLW1lbnUgLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1idXR0b246Zm9jdXN7b3V0bGluZTowfS50YXdrLWNhbmNlbC1idXR0b257YmFja2dyb3VuZC1jb2xvcjojZTVlNWU1IWltcG9ydGFudDtjb2xvcjojMTIxMjEyIWltcG9ydGFudDtib3JkZXItY29sb3I6I2U1ZTVlNSFpbXBvcnRhbnR9I3Rhd2stZHJhZ292ZXItY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjEuMTI1cmVtO2NvbG9yOiMxMjEyMTI7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuOCk7Ym9yZGVyLXJhZGl1czo1cHh9I3Rhd2stY2hhdGlucHV0LWNvbnRhaW5lcntwYWRkaW5nOjFyZW19LnRhd2stcm91dGVyLXZpZXd7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjFweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LnRhd2stZm9ybS1lcnJvci1hbGVydHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjJ9LnRhd2stZm9vdGVye3BhZGRpbmc6MDt6LWluZGV4OjN9LnRhd2stbW9iaWxlIC50YXdrLWZvb3RlcntwYWRkaW5nLWJvdHRvbTp2YXIoLS10YXdrLWZvb3Rlci1vdmVycmlkZS1wYWRkaW5nLWJvdHRvbSl9LnRhd2stc2VhcmNoLWJ1dHRvbntjb2xvcjojMjEyMTIxfS50YXdrLXNlYXJjaC1idXR0b246Zm9jdXMsLnRhd2stc2VhcmNoLWJ1dHRvbjpob3Zlcntjb2xvcjojMTIxMjEyfS5taXNzZWQtY2hhdC1pY29ue2hlaWdodDozcmVtO3dpZHRoOjNyZW07dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6M3JlbX0udGF3ay1zcGlubmVyLWxvYWRlciwudGF3ay1zcGlubmVyLWxvYWRlcjphZnRlcntib3JkZXItcmFkaXVzOjUwJTtoZWlnaHQ6MS4yNXJlbTt3aWR0aDoxLjI1cmVtfS50YXdrLXNwaW5uZXItbG9hZGVye3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjoxLjI1cmVtIGF1dG87Ym9yZGVyOi4zMTI1cmVtIHNvbGlkICMyMTIxMjE7Ym9yZGVyLWxlZnQtY29sb3I6IzU0NTQ1NDtmb250LXNpemU6LjYyNXJlbTt0ZXh0LWluZGVudDotOTk5OXJlbTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTthbmltYXRpb246c3Bpbm5lciAxLjFzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19Ym9keS50YXdrLW1vYmlsZSAudGF3ay10b29sdGlwLWhvdmVyLGJvZHkudGF3ay1tb2JpbGUgLnRhd2stdG9vbHRpcDpob3ZlciAudGF3ay10b29sdGlwLWhvdmVye2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnRhd2stbWF4LWVuZC1jaGF0e3Bvc2l0aW9uOmZpeGVkO2JvdHRvbToxNnB4O2xlZnQ6MTZweDtyaWdodDoxNnB4O2hlaWdodDphdXRvO3dpZHRoOmF1dG87ei1pbmRleDoxMDYwfS50YXdrLW1heC1mb290ZXItYWN0aW9uc3twYWRkaW5nOjFyZW07dGV4dC1hbGlnbjpjZW50ZXJ9LnRhd2stbWF4LWZvb3Rlci1hY3Rpb25zIC50YXdrLW1heC1mb290ZXItYWN0aW9ucy1idXR0b257d2lkdGg6MTAwJX0udGF3ay1jaGF0aW5wdXQgLnRhd2stY2hhdGlucHV0LWVkaXRvcntjb2xvcjojMzMzfS50YXdrLXJvdXRlLWJhY2sgLnRhd2staWNvbi1sZWZ0LWFycm93e2ZvbnQtc2l6ZToxcmVtfS50YXdrLWJvdHRvbS1uYXZiYXIudGF3ay1ib3R0b20tbmF2YmFyLW9mZnNldHtib3R0b206NDVweH0udGF3ay1ib3R0b20tbmF2YmFye3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo1MHB4O3dpZHRoOjEwMCU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgLTEwcHggMjVweCByZ2JhKDAsMCwwLC4wNSl9LnRhd2stYm90dG9tLW5hdmJhciAudGF3ay1idXR0b24gLnRhd2staWNvbntmb250LXNpemU6MjRweH0udGF3ay1ib3R0b20tbmF2YmFyIC50YXdrLWJ1dHRvbiBwe2ZvbnQtc2l6ZToxNXB4fS50YXdrLWJvdHRvbS1uYXZiYXIgKnstbXMtZmxleDoxO2ZsZXg6MTt0ZXh0LWFsaWduOmNlbnRlcn0udGF3ay1ib3R0b20tbmF2YmFyIC50YXdrLWJ1dHRvbntjb2xvcjojNTQ1NDU0fS50YXdrLWJvdHRvbS1uYXZiYXIgLnRhd2stYnV0dG9uLnRhd2stbmF2LWFjdGl2ZSwudGF3ay1ib3R0b20tbmF2YmFyIC50YXdrLWJ1dHRvbi50YXdrLW5hdi1hY3RpdmUgLnRhd2staWNvbntjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1ib3R0b20tbmF2YmFyIC50YXdrLWljb257Y29sb3I6IzU0NTQ1NH0udGF3ay1hdmF0YXItZ3JvdXB7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0udGF3ay1oZWlnaHQtMTAwe2hlaWdodDoxMDAlfS50YXdrLXN1cnZleXtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0udGF3ay1zdXJ2ZXktb3B0aW9ue2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDplbmR9LnRhd2stc3VydmV5IC50YXdrLXN1cnZleS1vcHRpb257bWFyZ2luLWJvdHRvbTouNXJlbX0udGF3ay1zdXJ2ZXkgLnRhd2stc3VydmV5LW9wdGlvbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0udGF3ay1zdXJ2ZXktb3B0aW9uIC50YXdrLWJ1dHRvbntmb250LXNpemU6Ljg3NXJlbSFpbXBvcnRhbnQ7cGFkZGluZzouM3JlbSAxcmVtO2JvcmRlcjoxcHggc29saWQgdmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOiMxMjEyMTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1zdXJ2ZXktb3B0aW9uIC50YXdrLWJ1dHRvbjpob3Zlcntib3JkZXI6MXB4IHNvbGlkIHZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6IzU0NTQ1NDtjb2xvcjojMjQyNDI0O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stYWdlbnQtbGlzdC12aWV3IC50YXdrLWNoYXQtcGFuZWx7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZmZmfS50YXdrLWFnZW50LWhlYWRlcntkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7cGFkZGluZzoyMHB4IDMwcHg7Ym94LXNpemluZzpib3JkZXItYm94fS50YXdrLWFnZW50LWhlYWRlciAudGF3ay1idXR0b24tdGV4dHtjb2xvcjp2YXIoLS12YXItaGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWFnZW50LWhlYWRlciAudGF3ay1hZ2VudC1oZWFkZXItdGl0bGV7LW1zLWZsZXg6MTtmbGV4OjE7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1hZ2VudC1oZWFkZXIgLnRhd2stYWdlbnQtaGVhZGVyLXRpdGxlPip7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcil9LnRhd2stYWdlbnQtYm9keXtwYWRkaW5nOjIwcHggMTVweH0udGF3ay1hZ2VudC1ib2R5IC50YXdrLXRleHQtcmVndWxhci00e2xpbmUtaGVpZ2h0Om5vcm1hbH0udGF3ay1saXN0LnRhd2stYWdlbnQtbGlzdHtib3gtc2hhZG93Om5vbmU7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czppbml0aWFsfS50YXdrLW1heC1jb250YWluZXIgLnRhd2stb3ZlcmxheSAudGF3ay1vdmVybGF5LXRpdGxlLC50YXdrLW1heC1jb250YWluZXIgLnRhd2stb3ZlcmxheSAudGF3ay10b29sYmFyLXRpdGxlLC50YXdrLW92ZXJsYXktaGVhZGVyIC50YXdrLW92ZXJsYXktdGl0bGUsLnRhd2stb3ZlcmxheS1oZWFkZXIgLnRhd2stdGV4dC1yZWd1bGFyLTIsLnRhd2stb3ZlcmxheSAudGF3ay10b29sYmFyLXRpdGxle2ZvbnQtc2l6ZToxLjI1cmVtIWltcG9ydGFudH0udGF3ay1jaGF0LXZpZXcgLnRhd2stY2hhdC1wYW5lbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmYhaW1wb3J0YW50fS50YXdrLWNoYXQtbmFtZS1tYXJnaW57bWFyZ2luLXRvcDo0cHg7bWFyZ2luLWJvdHRvbTo0cHh9LnRhd2stbWFpbi1wYW5lbCAudGF3ay1jaGF0LXBhbmVse3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtvdmVyZmxvdzpoaWRkZW47b3ZlcmZsb3cteTpzY3JvbGw7aGVpZ2h0OjFweDstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7cGFkZGluZy10b3A6NjBweH0udGF3ay1vdmVybGF5IC50YXdrLW1haW4tcGFuZWwgLnRhd2stY2hhdC1wYW5lbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZy10b3A6MH0udGF3ay1jaGF0LXZpZXcgLnRhd2stbmV3LW1lc3NhZ2VzLW5vdGlmaWNhdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTVweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3otaW5kZXg6MjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1jaGF0LXZpZXcgLnRhd2stY2hhdC1wYW5lbC1pbm5lcntoZWlnaHQ6MTAwJX0uYWdlbnRUeXBpbmdJbmRpY2F0b3J7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30uYWdlbnRUeXBpbmdJbmRpY2F0b3IgLmRvdHtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDo1cHg7aGVpZ2h0OjVweDtib3JkZXItcmFkaXVzOjUwJTttYXJnaW4tcmlnaHQ6M3B4O2JhY2tncm91bmQ6IzMwMzEzMTthbmltYXRpb246dHlwaW5nIDEuM3MgbGluZWFyIGluZmluaXRlfS5hZ2VudFR5cGluZ0luZGljYXRvciAuZG90Om50aC1jaGlsZCgyKXthbmltYXRpb24tZGVsYXk6LTEuMXM7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LTEuMXM7LW1vei1hbmltYXRpb24tZGVsYXk6LTEuMXM7LW1zLWFuaW1hdGlvbi1kZWxheTotMS4xczstby1hbmltYXRpb24tZGVsYXk6LTEuMXN9LmFnZW50VHlwaW5nSW5kaWNhdG9yIC5kb3Q6bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTotLjlzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi0uOXM7LW1vei1hbmltYXRpb24tZGVsYXk6LS45czstbXMtYW5pbWF0aW9uLWRlbGF5Oi0uOXM7LW8tYW5pbWF0aW9uLWRlbGF5Oi0uOXN9QGtleWZyYW1lcyB0eXBpbmd7MCUsNjAlLHRve3RyYW5zZm9ybTpub25lfTMwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTBweCl9fS50YXdrLWNoYXQtaW5saW5lLWFsZXJ0LXdyYXBwZXJ7cG9zaXRpb246LXdlYmtpdC1zdGlja3k7cG9zaXRpb246c3RpY2t5O3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MjttYXJnaW4tbGVmdDotMTZweDttYXJnaW4tcmlnaHQ6LTE2cHg7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1jaGF0LWlubGluZS1hbGVydHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Y29sb3I6IzEyMTIxMjt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOi42cmVtIDFyZW07d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O2JvcmRlcjoxcHggc29saWQgIzA4ZGRkMDtib3JkZXItcmFkaXVzOjEwMHB4O21hcmdpbi10b3A6OHB4O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnRhd2stY2hhdC1pbmxpbmUtYWxlcnQgLnRhd2staWNvbntjb2xvcjojMDhkZGQwO21hcmdpbi1yaWdodDouNnJlbX0udGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVye3dpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmctdG9wOjFyZW19LnRhd2stbWVzc2FnZS1wcm9maWxle2JvcmRlcjpub25lfS50YXdrLW1lc3NhZ2UtYm9keXt3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWF4LXdpZHRoOjEwMCV9LnRhd2stYWdlbnQtY2hhdCwudGF3ay12aXNpdG9yLWNoYXR7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7d29yZC1icmVhazpicmVhay1hbGx9LnRhd2stbWVzc2FnZS1idWJibGV7bWFyZ2luLXRvcDo0cHh9LnRhd2stbWVzc2FnZS1idWJibGU6bGFzdC1jaGlsZCAudGF3ay1hZ2VudC1jaGF0LC50YXdrLW1lc3NhZ2UtYnViYmxlOmxhc3QtY2hpbGQgLnRhd2stdmlzaXRvci1jaGF0e21hcmdpbi1ib3R0b206MH0udGF3ay1hZ2VudC1jaGF0e2Zsb2F0OmxlZnQ7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luOjB9LnRhd2stcnRsIC50YXdrLWFnZW50LWNoYXR7ZmxvYXQ6cmlnaHQ7bWFyZ2luOjB9LnRhd2stdmlzaXRvci1jaGF0e2Zsb2F0OnJpZ2h0O21hcmdpbjowIDAgMCAxNnB4Oy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0udGF3ay1ydGwgLnRhd2stdmlzaXRvci1jaGF0e2Zsb2F0OmxlZnQ7bWFyZ2luOjAgMCAwIDhweH0udGF3ay1hZ2VudC1jaGF0IC50YXdrLXRpbWUtZGlzcGxheSwudGF3ay12aXNpdG9yLWNoYXQgLnRhd2stdGltZS1kaXNwbGF5e2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbTo0cHg7dmlzaWJpbGl0eTpoaWRkZW59LnRhd2stYWdlbnQtY2hhdDpob3ZlciAudGF3ay10aW1lLWRpc3BsYXksLnRhd2stdmlzaXRvci1jaGF0OmhvdmVyIC50YXdrLXRpbWUtZGlzcGxheXt2aXNpYmlsaXR5OnZpc2libGV9LnRhd2stdmlzaXRvci1jaGF0IC50YXdrLXRpbWUtZGlzcGxheXtmbG9hdDpyaWdodH0uY2xlYXJmaXg6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OnRhYmxlO2NsZWFyOmJvdGh9Lmxkcy1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RyYW5zZm9ybTpzY2FsZSguMyk7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguMyk7bWFyZ2luLXJpZ2h0Oi0xMHB4fS5sZHMtc3Bpbm5lci5sZHMtc3Bpbm5lci1sZWZ0e2xlZnQ6YXV0bztyaWdodDoxMDAlfS5sZHMtc3Bpbm5lciAuc3Bpbnt0cmFuc2Zvcm0tb3JpZ2luOjMycHggMzJweDthbmltYXRpb246bGRzLXNwaW5uZXIgMS4ycyBsaW5lYXIgaW5maW5pdGV9Lmxkcy1zcGlubmVyIC5zcGluOmFmdGVye2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjNweDtsZWZ0OjI5cHg7d2lkdGg6NXB4O2hlaWdodDoxNHB4O2JvcmRlci1yYWRpdXM6MjAlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNCl9Lmxkcy1zcGlubmVyIC5zcGluLTF7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTthbmltYXRpb24tZGVsYXk6LTEuMXN9Lmxkcy1zcGlubmVyIC5zcGluLTJ7dHJhbnNmb3JtOnJvdGF0ZSgzMGRlZyk7YW5pbWF0aW9uLWRlbGF5Oi0xc30ubGRzLXNwaW5uZXIgLnNwaW4tM3t0cmFuc2Zvcm06cm90YXRlKDYwZGVnKTthbmltYXRpb24tZGVsYXk6LS45c30ubGRzLXNwaW5uZXIgLnNwaW4tNHt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTthbmltYXRpb24tZGVsYXk6LS44c30ubGRzLXNwaW5uZXIgLnNwaW4tNXt0cmFuc2Zvcm06cm90YXRlKDEyMGRlZyk7YW5pbWF0aW9uLWRlbGF5Oi0uN3N9Lmxkcy1zcGlubmVyIC5zcGluLTZ7dHJhbnNmb3JtOnJvdGF0ZSgxNTBkZWcpO2FuaW1hdGlvbi1kZWxheTotLjZzfS5sZHMtc3Bpbm5lciAuc3Bpbi03e3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTthbmltYXRpb24tZGVsYXk6LS41c30ubGRzLXNwaW5uZXIgLnNwaW4tOHt0cmFuc2Zvcm06cm90YXRlKDIxMGRlZyk7YW5pbWF0aW9uLWRlbGF5Oi0uNHN9Lmxkcy1zcGlubmVyIC5zcGluLTl7dHJhbnNmb3JtOnJvdGF0ZSgyNDBkZWcpO2FuaW1hdGlvbi1kZWxheTotLjNzfS5sZHMtc3Bpbm5lciAuc3Bpbi0xMHt0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7YW5pbWF0aW9uLWRlbGF5Oi0uMnN9Lmxkcy1zcGlubmVyIC5zcGluLTExe3RyYW5zZm9ybTpyb3RhdGUoMzAwZGVnKTthbmltYXRpb24tZGVsYXk6LS4xc30ubGRzLXNwaW5uZXIgLnNwaW4tMTJ7dHJhbnNmb3JtOnJvdGF0ZSgzMzBkZWcpO2FuaW1hdGlvbi1kZWxheTowc31Aa2V5ZnJhbWVzIGxkcy1zcGlubmVyezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fS50YXdrLWFnZW50LWJhcnttYXgtd2lkdGg6NjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWFyZ2luOjAgNXB4fS50YXdrLWFnZW50LWJhci5zaW5nbGUtYWdlbnR7bWF4LXdpZHRoOjEwMCV9LnRhd2stY2hhdC12aWV3IC50YXdrLWFnZW50LWNoYXQtYnViYmxlLC50YXdrLWNoYXQtdmlldyAudGF3ay12aXNpdG9yLWNoYXQtYnViYmxle2ZvbnQtc2l6ZTouODc1cmVtO3BhZGRpbmc6MTJweCFpbXBvcnRhbnQ7bWluLWhlaWdodDo0MHB4fS50YXdrLWFnZW50LWNoYXQtYnViYmxlIC50YXdrLWljb24sLnRhd2stYWdlbnQtY2hhdC1idWJibGUgYSwudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSBhOmhvdmVyLC50YXdrLXZpc2l0b3ItY2hhdC1idWJibGUgLnRhd2staWNvbiwudGF3ay12aXNpdG9yLWNoYXQtYnViYmxlIGEsLnRhd2stdmlzaXRvci1jaGF0LWJ1YmJsZSBhOmhvdmVye2NvbG9yOmluaGVyaXR9LnRhd2stY2hhdC1yZXNlbmR7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjE2cHg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Ym9keS50YXdrLXJ0bCAudGF3ay1jaGF0LXJlc2VuZHstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS50YXdrLWNoYXQtcmVzZW5kICp7Y29sb3I6I2JmMTIxMiFpbXBvcnRhbnR9LnRhd2stY2hhdC1yZXNlbmQgLnRhd2stYnV0dG9uLXRleHR7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTttYXJnaW4tbGVmdDo4cHh9LmZpbGUtdXBsb2FkLXByb2dyZXNzIC5wcm9ncmVzc3toZWlnaHQ6MTBweDt3aWR0aDoyMDBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmYWZhZmE7Ym9yZGVyLXJhZGl1czo1cHg7Ym94LXNoYWRvdzpub25lfS5maWxlLXVwbG9hZC1wcm9ncmVzcyAucHJvZ3Jlc3MtYmFye2hlaWdodDoxMHB4O2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtib3JkZXItcmFkaXVzOjVweDtib3gtc2hhZG93Om5vbmV9LnRhd2stY2hhdC12aWV3IC5lbW9qaW9uZXtoZWlnaHQ6MXJlbTttaW4td2lkdGg6YXV0bzttaW4taGVpZ2h0OmF1dG87dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b219LnRhd2stY2hhdC12aWV3IC5lbW9qaW9ubHkgLmVtb2ppb25le2hlaWdodDo0LjVleCFpbXBvcnRhbnQ7d2lkdGg6YXV0b30udGF3ay1jaGF0LXZpZXcgLnRhd2stbGlua3tjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stY2hhdC1yYXRpbmd7Zm9udC13ZWlnaHQ6NjAwfS50YXdrLWNoYXQtcmF0aW5nIC50YXdrLWljb24udGF3ay1pY29uLXRodW1icy11cHtjb2xvcjojMDNhODRlfS50YXdrLWNoYXQtcmF0aW5nIC50YXdrLWljb24udGF3ay1pY29uLXRodW1icy1kb3due2NvbG9yOiNiZjEyMTJ9LnRhd2stbWVzc2FnZS1ibG9jayAudGF3ay1tZXNzYWdlLWdyb3Vwe3dpZHRoOmNhbGMoMTAwJSAtIDQwcHgpfS50YXdrLW1lc3NhZ2UtZ3JvdXAgLnRhd2stbWVzc2FnZXM+LnRhd2stYWdlbnQgLnRhd2stYWdlbnQtY2hhdC1idWJibGUsLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay1hZ2VudDpmaXJzdC1jaGlsZCAudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSwudGF3ay1tZXNzYWdlLWdyb3VwIC50YXdrLW1lc3NhZ2VzPi50YXdrLWFnZW50Omxhc3QtY2hpbGQgLnRhd2stYWdlbnQtY2hhdC1idWJibGUsLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay12aXNpdG9yIC50YXdrLXZpc2l0b3ItY2hhdC1idWJibGUsLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay12aXNpdG9yOmZpcnN0LWNoaWxkIC50YXdrLXZpc2l0b3ItY2hhdC1idWJibGUsLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay12aXNpdG9yOmxhc3QtY2hpbGQgLnRhd2stdmlzaXRvci1jaGF0LWJ1YmJsZSwudGF3ay1ydGwgLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay1hZ2VudCAudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSwudGF3ay1ydGwgLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay1hZ2VudDpmaXJzdC1jaGlsZCAudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSwudGF3ay1ydGwgLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay1hZ2VudDpsYXN0LWNoaWxkIC50YXdrLWFnZW50LWNoYXQtYnViYmxlLC50YXdrLXJ0bCAudGF3ay1tZXNzYWdlLWdyb3VwIC50YXdrLW1lc3NhZ2VzPi50YXdrLXZpc2l0b3IgLnRhd2stdmlzaXRvci1jaGF0LWJ1YmJsZSwudGF3ay1ydGwgLnRhd2stbWVzc2FnZS1ncm91cCAudGF3ay1tZXNzYWdlcz4udGF3ay12aXNpdG9yOmZpcnN0LWNoaWxkIC50YXdrLXZpc2l0b3ItY2hhdC1idWJibGUsLnRhd2stcnRsIC50YXdrLW1lc3NhZ2UtZ3JvdXAgLnRhd2stbWVzc2FnZXM+LnRhd2stdmlzaXRvcjpsYXN0LWNoaWxkIC50YXdrLXZpc2l0b3ItY2hhdC1idWJibGV7Ym9yZGVyLXJhZGl1czo4cHh9Lmxpc3QtZW50ZXItYWN0aXZlLC5saXN0LWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuNXMgY3ViaWMtYmV6aWVyKDEsLjUsLjgsMSl9Lmxpc3QtZW50ZXIsLmxpc3QtbGVhdmUtdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KTtvcGFjaXR5OjB9Ym9keS50YXdrLW1vYmlsZSAudGF3ay1hZ2VudC1jaGF0IC50YXdrLXRpbWUtZGlzcGxheSxib2R5LnRhd2stbW9iaWxlIC50YXdrLXZpc2l0b3ItY2hhdCAudGF3ay10aW1lLWRpc3BsYXl7dmlzaWJpbGl0eTp2aXNpYmxlfS50YXdrLWNoYXQtYWxlcnR7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtwYWRkaW5nOjFyZW07dGV4dC1hbGlnbjpjZW50ZXI7Ym9yZGVyOjJweCBkYXNoZWQgI2U1ZTVlNTtib3JkZXItcmFkaXVzOjhweDttYXJnaW4tdG9wOi42cmVtfS50YXdrLWNoYXQtYWxlcnQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnRhd2stY2hhdC1hbGVydC50YXdrLWNoYXQtYWxlcnQtaWNvbntwYWRkaW5nLXRvcDoxLjVyZW19LnRhd2stY2hhdC1hbGVydC1mbG9hdGluZy1pY29ue2JhY2tncm91bmQtY29sb3I6IzAzYTg0ZTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3IpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcik7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtib3JkZXItcmFkaXVzOjEwcHg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMzAlO2xlZnQ6MDtyaWdodDowO21hcmdpbjowIGF1dG99LnRhd2stbWVzc2FnZXMgLnRhd2stdGV4dC1yZWd1bGFyLTJ7Y29sb3I6IzU0NTQ1NDtmb250LXNpemU6MTJweDttYXJnaW4tYm90dG9tOjFweH0udGF3ay1tZXNzYWdlcyAudGF3ay12aXNpdG9yIC50YXdrLXRleHQtcmVndWxhci0ye3RleHQtYWxpZ246cmlnaHQ7bWFyZ2luLXJpZ2h0OjEycHh9LnRhd2stc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKXtiYWNrZ3JvdW5kOnVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScxNicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTEyIDFMOSA2aDZ6TTEyIDEzTDkgOGg2eicvJTNFJTNDL3N2ZyUzRSIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgNTAlfS50YXdrLWZvcm0tdmlld3stbXMtZmxleDoxMDAlO2ZsZXg6MTAwJTttYXgtd2lkdGg6MTAwJX0udGF3ay1mb3JtLWlucHV0e2JvcmRlcjoxcHggc29saWQgIzU0NTQ1NH0udGF3ay1mb3JtLXdpZHRoLTEwMHt3aWR0aDoxMDAlfS50YXdrLWZvcm0td3JhcHBlcnt6LWluZGV4OjB9LnRhd2stZm9ybS1pbnB1dCAudGF3ay1kcm9wZG93bnt3aWR0aDoxMDAlO3otaW5kZXg6MX0udGF3ay1mb3JtLWlucHV0IC50YXdrLWRyb3Bkb3duPi50YXdrLWJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6Mi41cmVtO3dpZHRoOjEwMCU7Y29sb3I6IzEyMTIxMjtmb250LXNpemU6LjgxMnJlbTtib3JkZXItY29sb3I6I2U1ZTVlNTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7dGV4dC1hbGlnbjpsZWZ0O3otaW5kZXg6MTtvdmVyZmxvdzp2aXNpYmxlfS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24+LnRhd2stYnV0dG9uOmZvY3Vze2JvcmRlci1jb2xvcjojMDNhODRlO2JvcmRlci1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1mb3JtLWlucHV0IC50YXdrLWRyb3Bkb3duIC50YXdrLWRyb3Bkb3duLW1lbnV7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo1cHg7Ym9yZGVyOjVweDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50fS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24gLnRhd2stZHJvcGRvd24tbWVudS5zbGlkZS1mYWRlLWVudGVyLC50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24gLnRhd2stZHJvcGRvd24tbWVudS5zbGlkZS1mYWRlLWxlYXZlLXRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KSFpbXBvcnRhbnR9LnRhd2stZm9ybS1pbnB1dCAudGF3ay1kcm9wZG93biAudGF3ay1kcm9wZG93bi1tZW51IC50YXdrLWRyb3Bkb3duLWNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzphdXRvfS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24gLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1saXN0c3tib3JkZXI6MDtib3gtc2hhZG93Om5vbmU7b3ZlcmZsb3cteTphdXRvfS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24gLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1saXN0cyAudGF3ay1saXN0LWl0ZW06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOnZhcigtLXRhd2staGVhZGVyLXRleHQtY29sb3IpfS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24gLnRhd2stZHJvcGRvd24tbWVudSAudGF3ay1saXN0cyAudGF3ay1saXN0LWl0ZW0gLnRhd2stYnV0dG9ue3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2NvbG9yOiMxMjEyMTI7Zm9udC1zaXplOi44MTJyZW19LnRhd2stZm9ybS1mb290ZXIgLnRhd2stYnV0dG9uey1tcy1mbGV4OjAgMCA0NiU7ZmxleDowIDAgNDYlO21heC13aWR0aDo0NiV9LnRhd2stZm9ybS1mb290ZXIgLnRhd2stYnV0dG9uLndpZHRoLTEwMHstbXMtZmxleDowIDAgMTAwJTtmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS50YXdrLWZvcm0tY29uc2VudCAudGF3ay1mb3JtLWZvb3RlciAudGF3ay1idXR0b257LW1zLWZsZXg6aW5pdGlhbDtmbGV4OmluaXRpYWw7d2lkdGg6MTAwJTttYXgtd2lkdGg6bm9uZX0udGF3ay1mb3JtLWNvbnNlbnQgLnRhd2stbGluaywudGF3ay1mb3JtLWNvbnNlbnQgYXtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKX0udGF3ay1mb3JtLWNvbnNlbnQgLnRhd2stZm9ybS1mb290ZXIgLnRhd2stYnV0dG9uKy50YXdrLWJ1dHRvbnttYXJnaW4tdG9wOi42cmVtfS50YXdrLWZvcm0tZm9vdGVyLnRhd2stZmxleC13cmFwe2dhcDouNnJlbX0udGF3ay1mb3JtLWZvb3Rlci50YXdrLWZsZXgtd3JhcCAudGF3ay1idXR0b257LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bzt3aWR0aDphdXRvO21heC13aWR0aDoxMDAlfS50YXdrLWZvcm0tZm9vdGVyIC50YXdrLWJ1dHRvbiAudGF3ay1zcGlubmVyLWxvYWRlcnttYXJnaW46MCA1cHg7Ym9yZGVyOi4xMjVyZW0gc29saWQgIzkyOTI5ZTtib3JkZXItbGVmdC1jb2xvcjojZDlkYmU0fS50YXdrLWZvcm0taW5wdXQgLnRhd2stZHJvcGRvd24+LnRhd2stZm9ybS1kYW5nZXJ7Y29sb3I6I2JmMTIxMjtib3JkZXItY29sb3I6I2JmMTIxMn0udGF3ay1kcm9wZG93bi1jb250YWluZXIgLnRhd2stZm9ybS1sYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDoyO3RyYW5zaXRpb246YWxsIC4zcyBlYXNlLWluLW91dDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KTt0cmFuc2Zvcm0tb3JpZ2luOjAgMTAwJTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzowIC41cmVtO2NvbG9yOmluaGVyaXQ7bGluZS1oZWlnaHQ6bm9ybWFsfS50YXdrLXJ0bCAudGF3ay1kcm9wZG93bi1jb250YWluZXIgLnRhd2stZm9ybS1sYWJlbHtyaWdodDowO2xlZnQ6YXV0b30udGF3ay1kcm9wZG93bi1jb250YWluZXIgLnRhd2stZm9ybS1sYWJlbC50YXdrLWFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTBweCkgc2NhbGUoLjkpfS50YXdrLWZvcm0tZm9vdGVyIC50YXdrLWJ1dHRvbnt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfS50YXdrLWZvcm0tZm9vdGVyLS1zdGFja2Vkey1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS50YXdrLWZvcm0tZm9vdGVyLS1zdGFja2VkIC50YXdrLWJ1dHRvbnstbXMtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkfS50YXdrLWZvcm0tZm9vdGVyLS1zdGFja2VkIC50YXdrLWJ1dHRvbisudGF3ay1idXR0b257bWFyZ2luLXRvcDouNnJlbX0udGF3ay1mb3JtLWZvb3Rlci0taW5saW5ley1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtnYXA6LjZyZW19LnRhd2stZm9ybS1mb290ZXItLWlubGluZSAudGF3ay1idXR0b257LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bzt3aWR0aDphdXRvO21heC13aWR0aDoxMDAlfS50YXdrLWZvcm0tc3VibWl0dGluZy1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0yMHB4O2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MjttYXJnaW4tdG9wOi0yMHB4O3BhZGRpbmc6MCAxNXB4O292ZXJmbG93OmhpZGRlbn0udGF3ay1mb3JtLXN1Ym1pdHRpbmctY29udGFpbmVyLnNsaWRlLWZhZGUtdXAtZW50ZXIsLnRhd2stZm9ybS1zdWJtaXR0aW5nLWNvbnRhaW5lci5zbGlkZS1mYWRlLXVwLWxlYXZlLXRvLC50YXdrLWZvcm0tc3VibWl0dGluZy1jb250YWluZXIgLnRhd2stZm9ybS1zdWJtaXR0aW5nLWlubmVye292ZXJmbG93OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KTtvcGFjaXR5OjB9LnRhd2stZm9ybS1zdWJtaXR0aW5nLWNvbnRhaW5lciAudGF3ay1mb3JtLXN1Ym1pdHRpbmctaW5uZXJ7cG9zaXRpb246cmVsYXRpdmU7cmlnaHQ6MDtib3R0b206MDtiYWNrZ3JvdW5kLWNvbG9yOiMxMjEyMTI7Ym9yZGVyLXJhZGl1czo1cHggNXB4IDAgMDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luLWxlZnQ6YXV0bzt0cmFuc2l0aW9uOmFsbCAuM3MgY3ViaWMtYmV6aWVyKDEsLjUsLjgsMSl9LnRhd2stZm9ybS1zdWJtaXR0aW5nLWNvbnRhaW5lciAudGF3ay1mb3JtLXN1Ym1pdHRpbmctaW5uZXIgLnRhd2stc3Bpbm5lci1sb2FkZXJ7aGVpZ2h0OjEwcHg7d2lkdGg6MTBweDttYXJnaW46MCBhdXRvO2JvcmRlcjoxcHggc29saWQgIzIxMjEyMTtib3JkZXItYm90dG9tLWNvbG9yOiM1NDU0NTR9LnRhd2staGlzdG9yeS1pdGVte2JvcmRlci1yYWRpdXM6NXB4O2N1cnNvcjpwb2ludGVyfS50YXdrLWhpc3RvcnktaXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmYWZhZmF9LnRhd2stY2hhdC12aWV3IC5hdmF0YXItbG9hZGVye2hlaWdodDo0MHB4O3dpZHRoOjQwcHh9LnRhd2stY2hhdC12aWV3IC5hdmF0YXItbmFtZS1sb2FkZXJ7aGVpZ2h0OjE1cHg7d2lkdGg6MTIwcHh9LnRhd2stY2hhdC12aWV3IC5jaGF0LW1lc3NhZ2UtbG9hZGVye2hlaWdodDo0MHB4O3dpZHRoOjIwMHB4fS50YXdrLWhpc3RvcnktaXRlbSAuZW1vamlvbmV7bWluLXdpZHRoOmF1dG87bWluLWhlaWdodDphdXRvO2hlaWdodDoyLjVleDt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LWJvdHRvbX0udGF3ay1idXR0b24tcmV0cnl7d2lkdGg6MTAwJX0udGF3ay1jaGF0LXZpZXcgLnRhd2staGlzdG9yeS10aW1lc3RhbXB7bWFyZ2luLXRvcDoxLjVyZW07dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAwJX0udGF3ay1oaXN0b3J5LXRpbWVzdGFtcCAqe2ZvbnQtc2l6ZTouOTM3cmVtIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjYxOCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwIWltcG9ydGFudDtjb2xvcjojMjEyMTIxIWltcG9ydGFudH0udGF3ay1tYWluLXBhbmVse3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowO2JvdHRvbTowO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6YXV0bzt3aWR0aDoxMDAlO3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzIxMjEyMX0udGF3ay1tYWluLXBhbmVsIC50YXdrLWNoYXQtcGFuZWwgLnRhd2stY2hhdC1wYW5lbC1pbm5lcntwb3NpdGlvbjpyZWxhdGl2ZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowIDIwcHggMzJweH0udGF3ay1tYWluLXBhbmVsIC50YXdrLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7bWFyZ2luLWxlZnQ6LTIwcHg7bWFyZ2luLXJpZ2h0Oi0yMHB4O2JvcmRlci1yYWRpdXM6MH0udGF3ay1tYWluLXBhbmVsIC50YXdrLWhlYWRlciAudGF3ay1zZWFyY2gtd3JhcHBlcnttYXJnaW46MTBweCAwfS50YXdrLWJvZHl7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO21hcmdpbi10b3A6YXV0bzt6LWluZGV4OjF9LnRhd2stbWFpbi1wYW5lbC50YXdrLWhvbWUtdmlldyAudGF3ay1jaGF0LXBhbmVsLWlubmVyLC50YXdrLW1haW4tcGFuZWwudGF3ay1tZXNzYWdlLXZpZXcgLnRhd2stY2hhdC1wYW5lbC1pbm5lcntwYWRkaW5nLWJvdHRvbTo5MHB4fS5jYXJkLWNvbnRhaW5lcj5kaXZ7bWFyZ2luLWJvdHRvbToxMnB4fS5jYXJkLWNvbnRhaW5lcjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uY2FyZC1jb250YWluZXIgLnRhd2stY2FyZCwuY2FyZC1jb250YWluZXIgLnRhd2sta2Itc2VhcmNoe2JvcmRlcjoxcHggc29saWQgI2ZhZmFmYX0uY2FyZC1jb250YWluZXIgLnRhd2sta2Itc2VhcmNoe3otaW5kZXg6Mjtwb3NpdGlvbjpyZWxhdGl2ZX0uY2FyZC0tbG9nb3ttYXJnaW46MTBweCAwfS5jYXJkLS1sb2dvIC50YXdrLWltYWdle2hlaWdodDozLjc1cmVtO3dpZHRoOjMuNzVyZW19LmNhcmQtLWhlYWRpbmd7Zm9udC1zaXplOjMzcHg7Zm9udC13ZWlnaHQ6NzAwfS5jYXJkLS1oZWFkaW5nIC5lbW9qaW9uZXt3aWR0aDpjYWxjKDJyZW0gKyAycHgpO2hlaWdodDpjYWxjKDJyZW0gKyAycHgpO3ZlcnRpY2FsLWFsaWduOnRleHQtYm90dG9tfS5jYXJkLS1hZ2VudHMgLnRhd2stYXZhdGFye21hcmdpbjowIDNweH0uY2FyZC0tdmlkZW8gaWZyYW1lLC5jYXJkLS12aWRlbyB2aWRlb3t3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6NXB4fS5jYXJkLS1oZWFkaW5nIC5saW5rLC5jYXJkLS10ZXh0IC5saW5re2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtvdXRsaW5lOjB9LmNhcmQtLXRleHQgLmVtb2ppb25le3dpZHRoOmNhbGMoMXJlbSArIDJweCk7aGVpZ2h0OmNhbGMoMXJlbSArIDJweCk7dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b219LmNhcmQtLWZvcm0uc3VibWl0dGluZyBmb3Jte29wYWNpdHk6LjZ9LmNhcmQtLWtiLWZlYXR1cmVkLWFydGljbGUgLmZlYXR1cmVkLWFydGljbGUtY29udGVudDphY3RpdmUsLmNhcmQtLWtiLWZlYXR1cmVkLWFydGljbGUgLmZlYXR1cmVkLWFydGljbGUtY29udGVudDpmb2N1cywuY2FyZC0ta2ItZmVhdHVyZWQtYXJ0aWNsZSAuZmVhdHVyZWQtYXJ0aWNsZS1jb250ZW50OmhvdmVye2N1cnNvcjpwb2ludGVyO3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQ6I2Y1ZjVmNTtib3JkZXItcmFkaXVzOjVweH0uY2FyZC0ta2ItZmVhdHVyZWQtYXJ0aWNsZSAudGF3ay1sb2FkZXItYXZhdGFye3dpZHRoOjEwMCU7aGVpZ2h0OjhyZW19LmNhcmQtY29udGFpbmVyIC50YXdrLWJ1dHRvbi1jdGF7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMxMjEyMTI7Ym9yZGVyLWNvbG9yOiMxMjEyMTJ9LmNhcmQtY29udGFpbmVyIC50YXdrLWJ1dHRvbi1jdGE6Zm9jdXMsLmNhcmQtY29udGFpbmVyIC50YXdrLWJ1dHRvbi1jdGE6aG92ZXJ7YmFja2dyb3VuZDojZjdmN2Y5fS50YXdrLWhvbWUtY2FyZC10aXRsZXtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6IzIxMjEyMX0udGF3ay1ob21lLWNhcmQtY2hhdHtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyfS50YXdrLWhvbWUtY2FyZC1jaGF0IGRpdjpmaXJzdC1jaGlsZCBwOmZpcnN0LWNoaWxke2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojMjEyMTIxO21hcmdpbi1ib3R0b206NnB4fS50YXdrLWhvbWUtY2FyZC1jaGF0IGRpdjpmaXJzdC1jaGlsZCBwOmxhc3QtY2hpbGR7Zm9udC1zaXplOi44MTJyZW07Zm9udC13ZWlnaHQ6MzAwO2NvbG9yOiM4MjgyODJ9LnRhd2staG9tZS1jYXJkLWNoYXQgZGl2IC50YXdrLWljb257Y29sb3I6IzAzYTg0ZTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtmb250LXNpemU6MjBweH0udGF3ay1ob21lLWtiLWxpc3R7Ym94LXNoYWRvdzpub25lO2JvcmRlcjpub25lfS50YXdrLWhvbWUta2ItbGlzdCAudGF3ay1mZWF0dXJlZC1hcnRpY2xle2JvcmRlci1yYWRpdXM6NXB4fS50YXdrLWhvbWUta2ItbGlzdCAudGF3ay1mZWF0dXJlZC1hcnRpY2xlOmZvY3VzLC50YXdrLWhvbWUta2ItbGlzdCAudGF3ay1mZWF0dXJlZC1hcnRpY2xlOmhvdmVye2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYX0udGF3ay1ob21lLWxpc3QudGF3ay1ob21lLWxpc3QtY2hhdD5saXtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOi41cmVtfS50YXdrLWhvbWUtbGlzdC50YXdrLWhvbWUtbGlzdC1jaGF0PmxpIC50YXdrLWhvbWUtbGlzdC1jaGF0LWNvbnRlbnR7LW1zLWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnRhd2staG9tZS1saXN0LnRhd2staG9tZS1saXN0LWNoYXQ+bGkgLmVtb2ppb25le21pbi13aWR0aDphdXRvO21pbi1oZWlnaHQ6YXV0bztoZWlnaHQ6Mi41ZXg7dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b219LnRhd2staG9tZS1saXN0IGxpLnRhd2staG9tZS1saXN0LWRpdmlkZXJ7aGVpZ2h0Oi4xcHg7d2lkdGg6OTUlO21hcmdpbjouNnJlbSBhdXRvO2JhY2tncm91bmQtY29sb3I6IzU0NTQ1NDtwYWRkaW5nOjB9LnRhd2staG9tZS1saXN0LnRhd2staG9tZS1saXN0LWhvdmVyPmxpOm5vdCgudGF3ay1ob21lLWxpc3QtZGl2aWRlcil7Ym9yZGVyLXJhZGl1czo1cHh9LnRhd2staG9tZS1saXN0LnRhd2staG9tZS1saXN0LWhvdmVyPmxpOm5vdCgudGF3ay1ob21lLWxpc3QtZGl2aWRlcik6Zm9jdXMsLnRhd2staG9tZS1saXN0LnRhd2staG9tZS1saXN0LWhvdmVyPmxpOm5vdCgudGF3ay1ob21lLWxpc3QtZGl2aWRlcik6aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDojZjdmN2Y5fS50YXdrLWhvbWUta2ItY2FyZHtib3JkZXI6MXB4IHNvbGlkICNlNWU1ZTU7Ym94LXNoYWRvdzoycHggMnB4IDE1cHggMCByZ2JhKDAsMCwwLC4xKX0udGF3ay1ob21lLWNvbnZlcnNhdGlvbi1hY3RpdmUtYnV0dG9ue3BhZGRpbmc6LjNyZW07bWFyZ2luLXRvcDouNXJlbX0udGF3ay1ob21lLWNvbnZlcnNhdGlvbi1hY3RpdmUtYnV0dG9uPi50YXdrLWljb257Zm9udC1zaXplOjFyZW19LnRhd2staG9tZS1saXN0LWNoYXQtY29udGVudC1iYWRnZXtsaW5lLWhlaWdodDpub3JtYWw7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtjb2xvcjp2YXIoLS10YXdrLWhlYWRlci10ZXh0LWNvbG9yKX0uY2FyZC0tYWxpZ25tZW50LWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0uY2FyZC0tYWxpZ25tZW50LXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS5jYXJkLS1hbGlnbm1lbnQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0uY2FyZC0tZmxleC1sZWZ0ey1tcy1mbGV4LXBhY2s6c3RhcnQhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uY2FyZC0tZmxleC1yaWdodHstbXMtZmxleC1wYWNrOmVuZCFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uY2FyZC0tZmxleC1jZW50ZXJ7LW1zLWZsZXgtcGFjazpjZW50ZXIhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS50YXdrLWtiLWJvZHl7d2lkdGg6MTAwJTtwYWRkaW5nLXRvcDoxMnB4fS50YXdrLWtiLWJvZHkgLnRhd2stY2hhdC1wYW5lbHtiYWNrZ3JvdW5kOiNmZmYhaW1wb3J0YW50fS50YXdrLWtiLXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTt3aWR0aDoxMDAlfS50YXdrLWtiLXRhYmxlIHRkLC50YXdrLWtiLXRhYmxlIHRoe2JvcmRlcjoxcHggc29saWQgI2VlZTtwYWRkaW5nOjEwcHh9LnRhd2sta2ItY29udGVudC1wYXJhZ3JhcGh7cGFkZGluZzouNnJlbTtib3JkZXItcmFkaXVzOjEwcHh9LkNvZGVNaXJyb3J7Zm9udC1mYW1pbHk6bW9ub3NwYWNlO2JvcmRlcjoxcHggc29saWQgI2VlZTtib3JkZXItcmFkaXVzOjVweH0uQ29kZU1pcnJvciwuQ29kZU1pcnJvci1zY3JvbGx7aGVpZ2h0OmF1dG8haW1wb3J0YW50fS50YXdrLWtiLWJvZHkgb2wsLnRhd2sta2ItYm9keSB1bHttYXJnaW46MCAyNXB4fS50YXdrLWtiLWJvZHkgb2wgbGksLnRhd2sta2ItYm9keSB1bCBsaXtwYWRkaW5nOjJweH0udGF3ay1rYi1ib2R5IGJsb2NrcXVvdGV7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAwIDIwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZWVlO2JvcmRlci1sZWZ0OjEwcHggc29saWQgIzljOWFhNjtib3JkZXItcmFkaXVzOjVweDtwYWRkaW5nOjEwcHggMjBweCAxMHB4IDQwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZvbnQtc3R5bGU6bm9ybWFsfS50YXdrLWtiLWJvZHkgYmxvY2txdW90ZTpiZWZvcmV7Y29udGVudDoiXDIwMUMiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTBweDt0b3A6LTVweDtjb2xvcjojOWM5YWE2O2ZvbnQtZmFtaWx5Okdlb3JnaWEsc2VyaWY7Zm9udC1zaXplOjQwcHg7Zm9udC13ZWlnaHQ6NzAwfS50YXdrLWtiLWJvZHkgYXtjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnRhd2stY29kZS10ZXh0YXJlYXt3aWR0aDoxMDAlO2hlaWdodDo4MHB4O3Jlc2l6ZTpub25lO2JvcmRlcjoxcHggc29saWQgI2VlZX0udGF3ay1rYmEtY2FyZHt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyfS50YXdrLWtiYS1jYXJkIC50YXdrLWtiLWl0ZW17Ym9yZGVyLXJhZGl1czo1cHh9LnRhd2sta2JhLWNhcmQ6Zm9jdXMgLnRhd2sta2ItaXRlbSwudGF3ay1rYmEtY2FyZDpob3ZlciAudGF3ay1rYi1pdGVte2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYX0udGF3ay1rYmEtbGlzdHt3aWR0aDoxMDAlO2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZX0udGF3ay1tZXNzYWdlLXZpZXcgLnRhd2stY2hhdC1wYW5lbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmYhaW1wb3J0YW50fS50YXdrLW1lc3NhZ2Utc2VjdGlvbnttYXJnaW4tYm90dG9tOjEuNXJlbX0udGF3ay1tZXNzYWdlLXNlY3Rpb24sLnRhd2stcmVjZW50cy1tZXNzYWdlLXNlY3Rpb257ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6MTAwJX0udGF3ay1tZXNzYWdlLWhlYWRlcnttYXJnaW4tYm90dG9tOi42cmVtfS50YXdrLW1lc3NhZ2UtdGl0bGV7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuMmVtO2NvbG9yOiMxMjEyMTI7cGFkZGluZy1ib3R0b206LjZyZW19LnRhd2stbWVzc2FnZS10aWxle2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoxcmVtIDEuM3JlbTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtib3JkZXItcmFkaXVzOjEwcHg7Ym94LXNoYWRvdzowIDAgMCA0cHggY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcikgMjAlLCNmZmYgODAlKSwwIDAgMnB4IDAgcmdiYSgwLDAsMCwuMDUpfS50YXdrLW1lc3NhZ2UtdGlsZS1jb250ZW50e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tcy1mbGV4OjE7ZmxleDoxfS50YXdrLW1lc3NhZ2UtdGlsZS10aXRsZXtmb250LXdlaWdodDo4MDA7Zm9udC1zaXplOi45MzdyZW07Y29sb3I6IzIxMjEyMTttYXJnaW46MH0udGF3ay1tZXNzYWdlLXRpbGUtc3VidGl0bGV7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZTouODEycmVtO2NvbG9yOiM4MjgyODI7bWFyZ2luOjB9LnRhd2stbWVzc2FnZS10aWxlLWljb257d2lkdGg6MThweDtoZWlnaHQ6MThweH0udGF3ay1tZXNzYWdlLWl0ZW17cGFkZGluZzouNnJlbTtib3JkZXItcmFkaXVzOjEwcHg7Y3Vyc29yOnBvaW50ZXJ9LnRhd2stbWVzc2FnZS1pdGVtOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS50YXdrLW1lc3NhZ2UtaXRlbS1jb250ZW50e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7d2lkdGg6MTAwJX0udGF3ay1tZXNzYWdlLWl0ZW0taGVhZGVye2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS50YXdrLW1lc3NhZ2UtaXRlbS1pbmZve2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweH0udGF3ay1tZXNzYWdlLWl0ZW0tbmFtZSwudGF3ay1tZXNzYWdlLWl0ZW0tdGltZXtmb250LXdlaWdodDo0MDA7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjJlbTtjb2xvcjojODI4MjgyfS50YXdrLW1lc3NhZ2UtaXRlbS1ib2R5e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3dpZHRoOjEwMCV9LnRhd2stbWVzc2FnZS1pdGVtLXRleHR7Zm9udC1zaXplOi45MzdyZW07bGluZS1oZWlnaHQ6MS40ZW07Y29sb3I6IzEyMTIxMjttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7LW1zLWZsZXg6MTtmbGV4OjF9LnRhd2stbWVzc2FnZS1pdGVtLXRleHQtc2Vjb25kYXJ5e2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNTQ1NDU0fS50YXdrLW1lc3NhZ2UtaXRlbS10ZXh0LXVucmVhZHtmb250LXdlaWdodDo2MDB9LnRhd2stbWVzc2FnZS1pdGVtLWJhZGdle2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7Ym9yZGVyLXJhZGl1czo1MCU7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS4yZW07Y29sb3I6I2ZmZn0udGF3ay1tZXNzYWdlLWl0ZW0tY2hlY2t7d2lkdGg6MTJweDtoZWlnaHQ6MTJweH0udGF3ay1tZXNzYWdlLWRpdmlkZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MS4ycHg7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O21hcmdpbi10b3A6LjZyZW19LnRhd2stZW1vamktY29udGFpbmVye2ZvbnQtc2l6ZTouODVlbTtsaW5lLWhlaWdodDoxfS50YXdrLWVtb2ppLWNvbnRhaW5lciBpbWcuZW1vamlvbmV7d2lkdGg6LjkzN3JlbTtoZWlnaHQ6LjkzN3JlbTttYXJnaW46MCAxcHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS50YXdrLWxvYWRpbmctY29udGFpbmVyLC50YXdrLW5vLWNvbnZlcnNhdGlvbnN7cGFkZGluZzouNnJlbTt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojODI4MjgyfS50YXdrLWxvYWRpbmctY29udGFpbmVye3BhZGRpbmc6MS4zcmVtO3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOiM4MjgyODJ9LnRhd2stbWVzc2FnZS1jaGV2cm9ue2NvbG9yOiM4MjgyODJ9LnRhd2stbWVzc2FnZS1sb2FkLW1vcmUtYnV0dG9ue2ZvbnQtc2l6ZTouNzVyZW19LnNsaWRlLWZhZGUtZW50ZXItYWN0aXZle3RyYW5zaXRpb246YWxsIC4ycyBlYXNlfS5zbGlkZS1mYWRlLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKDEsLjUsLjgsMSk7cG9zaXRpb246YWJzb2x1dGV9LnNsaWRlLWZhZGUtZW50ZXIsLnNsaWRlLWZhZGUtbGVhdmUtdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpO29wYWNpdHk6MH0uZmFkZS1lbnRlci1hY3RpdmUsLmZhZGUtbGVhdmUtYWN0aXZle3RyYW5zaXRpb246b3BhY2l0eSAuNXN9LmZhZGUtZW50ZXIsLmZhZGUtbGVhdmUtdG97b3BhY2l0eTowfS50YXdrLWZhZGVJbntvcGFjaXR5OjE7YW5pbWF0aW9uLW5hbWU6ZmFkZUluO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLWR1cmF0aW9uOjFzfUBrZXlmcmFtZXMgZmFkZUluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fQoKLyojIHNvdXJjZU1hcHBpbmdVUkw9bWF4LXdpZGdldC5jc3MubWFwKi8="}},"time_used":7,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.jsdelivr.net/emojione/2.2.7/lib/js/emojione.min.js","fqdn":"cdn.jsdelivr.net","domain":"jsdelivr.net","tld":"net"},"ip":{"addr":"151.101.193.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:57.361Z","timestamp":1785143157361,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"jsdelivr.net","organization":""},"issuer":{"commonName":"GlobalSign Atlas R3 DV TLS CA 2026 Q2","organization":"GlobalSign nv-sa"},"validity":{"start":"Wed, 20 May 2026 15:48:47 GMT","end":"Sat, 05 Dec 2026 14:48:47 GMT"},"fingerprint":{"sha1":"D4:05:C2:EC:C7:EE:2B:D0:08:68:0D:3D:33:77:48:78:43:E7:D1:E1","sha256":"ED:84:90:EE:71:BC:6B:5E:B3:D2:50:B0:23:3A:06:0D:E0:50:C6:B6:A9:09:36:E6:CE:FE:E8:66:89:EB:4E:C5"}}},"request":{"raw":"GET /emojione/2.2.7/lib/js/emojione.min.js HTTP/1.1\r\nHost: cdn.jsdelivr.net\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\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\naccess-control-allow-origin: *\r\naccess-control-expose-headers: *\r\ntiming-allow-origin: *\r\ncache-control: public, max-age=31536000, s-maxage=31536000, immutable\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncontent-type: application/javascript; charset=utf-8\r\netag: W/\"49dda-cp9vjKV4fYl0Ow7X6yf9dkBr+YU\"\r\ncontent-encoding: br\r\naccept-ranges: bytes\r\ndate: Mon, 27 Jul 2026 09:05:57 GMT\r\nage: 2234617\r\nx-served-by: cache-fra-etou8220049-FRA, cache-bma-essb1270035-BMA\r\nx-cache: HIT, HIT\r\nvary: Accept-Encoding\r\nalt-svc: h3=\":443\";ma=86400,h3-29=\":443\";ma=86400,h3-27=\":443\";ma=86400\r\ncontent-length: 39460\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":302554,"size_decoded":40204,"mime_type":"application/javascript; charset=utf-8","magic":"ASCII text, with very long lines (32014)","md5":"7bb7aac0cac89a90304af1c72eb4f50d","sha1":"729f6f8ca5787d89743b0ed7eb27fd76406bf985","sha256":"f5c06455e539dcd889f7f05d709b5adc76c444099fe57f431365af2fc57e803b","sha512":"ed26bf873a3c5b2e48d8b3c955240a46d8f7d7f3c635ab138179b999dbadc77802285879cb1a833f703059762c346066090a9a740bfe881f56d6d95f2dca7f30","ssdeep":"1536:Q/drlyiQh7fh7RqgwkMTyDUV6HeAIDgI9IKQ/d2ffWifiIzQFBSob5/ove:Q/drlyogMVc6FIKV+ZLBSob5l","tlshash":"59546c7a87606deeea94d02d86db374af58c3c0453ed1266b66482cb27f543a33487dc","first_seen":"2023-04-05T07:49:38Z","last_seen":"2026-08-03T12:16:53.28241Z","times_seen":51143,"resource_available":true,"data":"LyohIGVtb2ppb25lIDAyLTEyLTIwMTYgKi8KIWZ1bmN0aW9uKGEpe2EuZW1vamlvbmVMaXN0PXsiOmtpc3Nfd3c6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0OGItMjAwZC0xZjQ2OSIsIjFmNDY5LTI3NjQtMWY0OGItMWY0NjkiXSxmbmFtZToiMWY0NjktMjc2NC0xZjQ4Yi0xZjQ2OSIsdWM6IjFmNDY5LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0OGItMjAwZC0xZjQ2OSIsaXNDYW5vbmljYWw6ITB9LCI6Y291cGxla2lzc193dzoiOnt1bmljb2RlOlsiMWY0NjktMjAwZC0yNzY0LWZlMGYtMjAwZC0xZjQ4Yi0yMDBkLTFmNDY5IiwiMWY0NjktMjc2NC0xZjQ4Yi0xZjQ2OSJdLGZuYW1lOiIxZjQ2OS0yNzY0LTFmNDhiLTFmNDY5Iix1YzoiMWY0NjktMjAwZC0yNzY0LWZlMGYtMjAwZC0xZjQ4Yi0yMDBkLTFmNDY5Iixpc0Nhbm9uaWNhbDohMX0sIjpraXNzX21tOiI6e3VuaWNvZGU6WyIxZjQ2OC0yMDBkLTI3NjQtZmUwZi0yMDBkLTFmNDhiLTIwMGQtMWY0NjgiLCIxZjQ2OC0yNzY0LTFmNDhiLTFmNDY4Il0sZm5hbWU6IjFmNDY4LTI3NjQtMWY0OGItMWY0NjgiLHVjOiIxZjQ2OC0yMDBkLTI3NjQtZmUwZi0yMDBkLTFmNDhiLTIwMGQtMWY0NjgiLGlzQ2Fub25pY2FsOiEwfSwiOmNvdXBsZWtpc3NfbW06Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0OGItMjAwZC0xZjQ2OCIsIjFmNDY4LTI3NjQtMWY0OGItMWY0NjgiXSxmbmFtZToiMWY0NjgtMjc2NC0xZjQ4Yi0xZjQ2OCIsdWM6IjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0OGItMjAwZC0xZjQ2OCIsaXNDYW5vbmljYWw6ITF9LCI6ZmFtaWx5X21tYmI6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2Ni0yMDBkLTFmNDY2IiwiMWY0NjgtMWY0NjgtMWY0NjYtMWY0NjYiXSxmbmFtZToiMWY0NjgtMWY0NjgtMWY0NjYtMWY0NjYiLHVjOiIxZjQ2OC0yMDBkLTFmNDY4LTIwMGQtMWY0NjYtMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X21tZ2I6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2Ny0yMDBkLTFmNDY2IiwiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjYiXSxmbmFtZToiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjYiLHVjOiIxZjQ2OC0yMDBkLTFmNDY4LTIwMGQtMWY0NjctMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X21tZ2c6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2Ny0yMDBkLTFmNDY3IiwiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjciXSxmbmFtZToiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjciLHVjOiIxZjQ2OC0yMDBkLTFmNDY4LTIwMGQtMWY0NjctMjAwZC0xZjQ2NyIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X213YmI6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ni0yMDBkLTFmNDY2IiwiMWY0NjgtMWY0NjktMWY0NjYtMWY0NjYiXSxmbmFtZToiMWY0NjgtMWY0NjktMWY0NjYtMWY0NjYiLHVjOiIxZjQ2OC0yMDBkLTFmNDY5LTIwMGQtMWY0NjYtMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X213Z2I6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ny0yMDBkLTFmNDY2IiwiMWY0NjgtMWY0NjktMWY0NjctMWY0NjYiXSxmbmFtZToiMWY0NjgtMWY0NjktMWY0NjctMWY0NjYiLHVjOiIxZjQ2OC0yMDBkLTFmNDY5LTIwMGQtMWY0NjctMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X213Z2c6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ny0yMDBkLTFmNDY3IiwiMWY0NjgtMWY0NjktMWY0NjctMWY0NjciXSxmbmFtZToiMWY0NjgtMWY0NjktMWY0NjctMWY0NjciLHVjOiIxZjQ2OC0yMDBkLTFmNDY5LTIwMGQtMWY0NjctMjAwZC0xZjQ2NyIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X3d3YmI6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ni0yMDBkLTFmNDY2IiwiMWY0NjktMWY0NjktMWY0NjYtMWY0NjYiXSxmbmFtZToiMWY0NjktMWY0NjktMWY0NjYtMWY0NjYiLHVjOiIxZjQ2OS0yMDBkLTFmNDY5LTIwMGQtMWY0NjYtMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X3d3Z2I6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ny0yMDBkLTFmNDY2IiwiMWY0NjktMWY0NjktMWY0NjctMWY0NjYiXSxmbmFtZToiMWY0NjktMWY0NjktMWY0NjctMWY0NjYiLHVjOiIxZjQ2OS0yMDBkLTFmNDY5LTIwMGQtMWY0NjctMjAwZC0xZjQ2NiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X3d3Z2c6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2Ny0yMDBkLTFmNDY3IiwiMWY0NjktMWY0NjktMWY0NjctMWY0NjciXSxmbmFtZToiMWY0NjktMWY0NjktMWY0NjctMWY0NjciLHVjOiIxZjQ2OS0yMDBkLTFmNDY5LTIwMGQtMWY0NjctMjAwZC0xZjQ2NyIsaXNDYW5vbmljYWw6ITB9LCI6Y291cGxlX3d3OiI6e3VuaWNvZGU6WyIxZjQ2OS0yMDBkLTI3NjQtZmUwZi0yMDBkLTFmNDY5IiwiMWY0NjktMjc2NC0xZjQ2OSJdLGZuYW1lOiIxZjQ2OS0yNzY0LTFmNDY5Iix1YzoiMWY0NjktMjAwZC0yNzY0LWZlMGYtMjAwZC0xZjQ2OSIsaXNDYW5vbmljYWw6ITB9LCI6Y291cGxlX3dpdGhfaGVhcnRfd3c6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0NjkiLCIxZjQ2OS0yNzY0LTFmNDY5Il0sZm5hbWU6IjFmNDY5LTI3NjQtMWY0NjkiLHVjOiIxZjQ2OS0yMDBkLTI3NjQtZmUwZi0yMDBkLTFmNDY5Iixpc0Nhbm9uaWNhbDohMX0sIjpjb3VwbGVfbW06Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0NjgiLCIxZjQ2OC0yNzY0LTFmNDY4Il0sZm5hbWU6IjFmNDY4LTI3NjQtMWY0NjgiLHVjOiIxZjQ2OC0yMDBkLTI3NjQtZmUwZi0yMDBkLTFmNDY4Iixpc0Nhbm9uaWNhbDohMH0sIjpjb3VwbGVfd2l0aF9oZWFydF9tbToiOnt1bmljb2RlOlsiMWY0NjgtMjAwZC0yNzY0LWZlMGYtMjAwZC0xZjQ2OCIsIjFmNDY4LTI3NjQtMWY0NjgiXSxmbmFtZToiMWY0NjgtMjc2NC0xZjQ2OCIsdWM6IjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0NjgiLGlzQ2Fub25pY2FsOiExfSwiOmZhbWlseV9tbWI6Ijp7dW5pY29kZTpbIjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2NiIsIjFmNDY4LTFmNDY4LTFmNDY2Il0sZm5hbWU6IjFmNDY4LTFmNDY4LTFmNDY2Iix1YzoiMWY0NjgtMjAwZC0xZjQ2OC0yMDBkLTFmNDY2Iixpc0Nhbm9uaWNhbDohMH0sIjpmYW1pbHlfbW1nOiI6e3VuaWNvZGU6WyIxZjQ2OC0yMDBkLTFmNDY4LTIwMGQtMWY0NjciLCIxZjQ2OC0xZjQ2OC0xZjQ2NyJdLGZuYW1lOiIxZjQ2OC0xZjQ2OC0xZjQ2NyIsdWM6IjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2NyIsaXNDYW5vbmljYWw6ITB9LCI6ZmFtaWx5X213ZzoiOnt1bmljb2RlOlsiMWY0NjgtMjAwZC0xZjQ2OS0yMDBkLTFmNDY3IiwiMWY0NjgtMWY0NjktMWY0NjciXSxmbmFtZToiMWY0NjgtMWY0NjktMWY0NjciLHVjOiIxZjQ2OC0yMDBkLTFmNDY5LTIwMGQtMWY0NjciLGlzQ2Fub25pY2FsOiEwfSwiOmZhbWlseV93d2I6Ijp7dW5pY29kZTpbIjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2NiIsIjFmNDY5LTFmNDY5LTFmNDY2Il0sZm5hbWU6IjFmNDY5LTFmNDY5LTFmNDY2Iix1YzoiMWY0NjktMjAwZC0xZjQ2OS0yMDBkLTFmNDY2Iixpc0Nhbm9uaWNhbDohMH0sIjpmYW1pbHlfd3dnOiI6e3VuaWNvZGU6WyIxZjQ2OS0yMDBkLTFmNDY5LTIwMGQtMWY0NjciLCIxZjQ2OS0xZjQ2OS0xZjQ2NyJdLGZuYW1lOiIxZjQ2OS0xZjQ2OS0xZjQ2NyIsdWM6IjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2NyIsaXNDYW5vbmljYWw6ITB9LCI6cmFpbmJvd19mbGFnOiI6e3VuaWNvZGU6WyIxZjNmMy1mZTBmLTIwMGQtMWYzMDgiLCIxZjNmMy0xZjMwOCJdLGZuYW1lOiIxZjNmMy0xZjMwOCIsdWM6IjFmM2YzLWZlMGYtMjAwZC0xZjMwOCIsaXNDYW5vbmljYWw6ITB9LCI6Z2F5X3ByaWRlX2ZsYWc6Ijp7dW5pY29kZTpbIjFmM2YzLWZlMGYtMjAwZC0xZjMwOCIsIjFmM2YzLTFmMzA4Il0sZm5hbWU6IjFmM2YzLTFmMzA4Iix1YzoiMWYzZjMtZmUwZi0yMDBkLTFmMzA4Iixpc0Nhbm9uaWNhbDohMX0sIjpleWVfaW5fc3BlZWNoX2J1YmJsZToiOnt1bmljb2RlOlsiMWY0NDEtMjAwZC0xZjVlOCIsIjFmNDQxLTFmNWU4Il0sZm5hbWU6IjFmNDQxLTFmNWU4Iix1YzoiMWY0NDEtMjAwZC0xZjVlOCIsaXNDYW5vbmljYWw6ITB9LCI6aGFzaDoiOnt1bmljb2RlOlsiMDAyMy1mZTBmLTIwZTMiLCIwMDIzLTIwZTMiXSxmbmFtZToiMDAyMy0yMGUzIix1YzoiMDAyMy0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjp6ZXJvOiI6e3VuaWNvZGU6WyIwMDMwLWZlMGYtMjBlMyIsIjAwMzAtMjBlMyJdLGZuYW1lOiIwMDMwLTIwZTMiLHVjOiIwMDMwLTIwZTMiLGlzQ2Fub25pY2FsOiEwfSwiOm9uZToiOnt1bmljb2RlOlsiMDAzMS1mZTBmLTIwZTMiLCIwMDMxLTIwZTMiXSxmbmFtZToiMDAzMS0yMGUzIix1YzoiMDAzMS0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjp0d286Ijp7dW5pY29kZTpbIjAwMzItZmUwZi0yMGUzIiwiMDAzMi0yMGUzIl0sZm5hbWU6IjAwMzItMjBlMyIsdWM6IjAwMzItMjBlMyIsaXNDYW5vbmljYWw6ITB9LCI6dGhyZWU6Ijp7dW5pY29kZTpbIjAwMzMtZmUwZi0yMGUzIiwiMDAzMy0yMGUzIl0sZm5hbWU6IjAwMzMtMjBlMyIsdWM6IjAwMzMtMjBlMyIsaXNDYW5vbmljYWw6ITB9LCI6Zm91cjoiOnt1bmljb2RlOlsiMDAzNC1mZTBmLTIwZTMiLCIwMDM0LTIwZTMiXSxmbmFtZToiMDAzNC0yMGUzIix1YzoiMDAzNC0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjpmaXZlOiI6e3VuaWNvZGU6WyIwMDM1LWZlMGYtMjBlMyIsIjAwMzUtMjBlMyJdLGZuYW1lOiIwMDM1LTIwZTMiLHVjOiIwMDM1LTIwZTMiLGlzQ2Fub25pY2FsOiEwfSwiOnNpeDoiOnt1bmljb2RlOlsiMDAzNi1mZTBmLTIwZTMiLCIwMDM2LTIwZTMiXSxmbmFtZToiMDAzNi0yMGUzIix1YzoiMDAzNi0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjpzZXZlbjoiOnt1bmljb2RlOlsiMDAzNy1mZTBmLTIwZTMiLCIwMDM3LTIwZTMiXSxmbmFtZToiMDAzNy0yMGUzIix1YzoiMDAzNy0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjplaWdodDoiOnt1bmljb2RlOlsiMDAzOC1mZTBmLTIwZTMiLCIwMDM4LTIwZTMiXSxmbmFtZToiMDAzOC0yMGUzIix1YzoiMDAzOC0yMGUzIixpc0Nhbm9uaWNhbDohMH0sIjpuaW5lOiI6e3VuaWNvZGU6WyIwMDM5LWZlMGYtMjBlMyIsIjAwMzktMjBlMyJdLGZuYW1lOiIwMDM5LTIwZTMiLHVjOiIwMDM5LTIwZTMiLGlzQ2Fub25pY2FsOiEwfSwiOmFzdGVyaXNrOiI6e3VuaWNvZGU6WyIwMDJhLWZlMGYtMjBlMyIsIjAwMmEtMjBlMyJdLGZuYW1lOiIwMDJhLTIwZTMiLHVjOiIwMDJhLTIwZTMiLGlzQ2Fub25pY2FsOiEwfSwiOmtleWNhcF9hc3RlcmlzazoiOnt1bmljb2RlOlsiMDAyYS1mZTBmLTIwZTMiLCIwMDJhLTIwZTMiXSxmbmFtZToiMDAyYS0yMGUzIix1YzoiMDAyYS0yMGUzIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kYmFsbF90b25lNToiOnt1bmljb2RlOlsiMWY5M2UtMWYzZmYiXSxmbmFtZToiMWY5M2UtMWYzZmYiLHVjOiIxZjkzZS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZGJhbGxfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTNlLTFmM2ZlIl0sZm5hbWU6IjFmOTNlLTFmM2ZlIix1YzoiMWY5M2UtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmhhbmRiYWxsX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzZS0xZjNmZCJdLGZuYW1lOiIxZjkzZS0xZjNmZCIsdWM6IjFmOTNlLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpoYW5kYmFsbF90b25lMjoiOnt1bmljb2RlOlsiMWY5M2UtMWYzZmMiXSxmbmFtZToiMWY5M2UtMWYzZmMiLHVjOiIxZjkzZS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZGJhbGxfdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTNlLTFmM2ZiIl0sZm5hbWU6IjFmOTNlLTFmM2ZiIix1YzoiMWY5M2UtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOndhdGVyX3BvbG9fdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTNkLTFmM2ZmIl0sZm5hbWU6IjFmOTNkLTFmM2ZmIix1YzoiMWY5M2QtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOndhdGVyX3BvbG9fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTNkLTFmM2ZlIl0sZm5hbWU6IjFmOTNkLTFmM2ZlIix1YzoiMWY5M2QtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOndhdGVyX3BvbG9fdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTNkLTFmM2ZkIl0sZm5hbWU6IjFmOTNkLTFmM2ZkIix1YzoiMWY5M2QtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOndhdGVyX3BvbG9fdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTNkLTFmM2ZjIl0sZm5hbWU6IjFmOTNkLTFmM2ZjIix1YzoiMWY5M2QtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOndhdGVyX3BvbG9fdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTNkLTFmM2ZiIl0sZm5hbWU6IjFmOTNkLTFmM2ZiIix1YzoiMWY5M2QtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOndyZXN0bGVyc190b25lNToiOnt1bmljb2RlOlsiMWY5M2MtMWYzZmYiXSxmbmFtZToiMWY5M2MtMWYzZmYiLHVjOiIxZjkzYy0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6d3Jlc3RsaW5nX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkzYy0xZjNmZiJdLGZuYW1lOiIxZjkzYy0xZjNmZiIsdWM6IjFmOTNjLTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjp3cmVzdGxlcnNfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTNjLTFmM2ZlIl0sZm5hbWU6IjFmOTNjLTFmM2ZlIix1YzoiMWY5M2MtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOndyZXN0bGluZ190b25lNDoiOnt1bmljb2RlOlsiMWY5M2MtMWYzZmUiXSxmbmFtZToiMWY5M2MtMWYzZmUiLHVjOiIxZjkzYy0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6d3Jlc3RsZXJzX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzYy0xZjNmZCJdLGZuYW1lOiIxZjkzYy0xZjNmZCIsdWM6IjFmOTNjLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjp3cmVzdGxpbmdfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTNjLTFmM2ZkIl0sZm5hbWU6IjFmOTNjLTFmM2ZkIix1YzoiMWY5M2MtMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOndyZXN0bGVyc190b25lMjoiOnt1bmljb2RlOlsiMWY5M2MtMWYzZmMiXSxmbmFtZToiMWY5M2MtMWYzZmMiLHVjOiIxZjkzYy0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6d3Jlc3RsaW5nX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkzYy0xZjNmYyJdLGZuYW1lOiIxZjkzYy0xZjNmYyIsdWM6IjFmOTNjLTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjp3cmVzdGxlcnNfdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTNjLTFmM2ZiIl0sZm5hbWU6IjFmOTNjLTFmM2ZiIix1YzoiMWY5M2MtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOndyZXN0bGluZ190b25lMToiOnt1bmljb2RlOlsiMWY5M2MtMWYzZmIiXSxmbmFtZToiMWY5M2MtMWYzZmIiLHVjOiIxZjkzYy0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6anVnZ2xpbmdfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM5LTFmM2ZmIl0sZm5hbWU6IjFmOTM5LTFmM2ZmIix1YzoiMWY5MzktMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmp1Z2dsZXJfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM5LTFmM2ZmIl0sZm5hbWU6IjFmOTM5LTFmM2ZmIix1YzoiMWY5MzktMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOmp1Z2dsaW5nX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkzOS0xZjNmZSJdLGZuYW1lOiIxZjkzOS0xZjNmZSIsdWM6IjFmOTM5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpqdWdnbGVyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkzOS0xZjNmZSJdLGZuYW1lOiIxZjkzOS0xZjNmZSIsdWM6IjFmOTM5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpqdWdnbGluZ190b25lMzoiOnt1bmljb2RlOlsiMWY5MzktMWYzZmQiXSxmbmFtZToiMWY5MzktMWYzZmQiLHVjOiIxZjkzOS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6anVnZ2xlcl90b25lMzoiOnt1bmljb2RlOlsiMWY5MzktMWYzZmQiXSxmbmFtZToiMWY5MzktMWYzZmQiLHVjOiIxZjkzOS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6anVnZ2xpbmdfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM5LTFmM2ZjIl0sZm5hbWU6IjFmOTM5LTFmM2ZjIix1YzoiMWY5MzktMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmp1Z2dsZXJfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM5LTFmM2ZjIl0sZm5hbWU6IjFmOTM5LTFmM2ZjIix1YzoiMWY5MzktMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOmp1Z2dsaW5nX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkzOS0xZjNmYiJdLGZuYW1lOiIxZjkzOS0xZjNmYiIsdWM6IjFmOTM5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpqdWdnbGVyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkzOS0xZjNmYiJdLGZuYW1lOiIxZjkzOS0xZjNmYiIsdWM6IjFmOTM5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpjYXJ0d2hlZWxfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM4LTFmM2ZmIl0sZm5hbWU6IjFmOTM4LTFmM2ZmIix1YzoiMWY5MzgtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl9kb2luZ19jYXJ0d2hlZWxfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM4LTFmM2ZmIl0sZm5hbWU6IjFmOTM4LTFmM2ZmIix1YzoiMWY5MzgtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOmNhcnR3aGVlbF90b25lNDoiOnt1bmljb2RlOlsiMWY5MzgtMWYzZmUiXSxmbmFtZToiMWY5MzgtMWYzZmUiLHVjOiIxZjkzOC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX2RvaW5nX2NhcnR3aGVlbF90b25lNDoiOnt1bmljb2RlOlsiMWY5MzgtMWYzZmUiXSxmbmFtZToiMWY5MzgtMWYzZmUiLHVjOiIxZjkzOC0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6Y2FydHdoZWVsX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzOC0xZjNmZCJdLGZuYW1lOiIxZjkzOC0xZjNmZCIsdWM6IjFmOTM4LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fZG9pbmdfY2FydHdoZWVsX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzOC0xZjNmZCJdLGZuYW1lOiIxZjkzOC0xZjNmZCIsdWM6IjFmOTM4LTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjpjYXJ0d2hlZWxfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM4LTFmM2ZjIl0sZm5hbWU6IjFmOTM4LTFmM2ZjIix1YzoiMWY5MzgtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl9kb2luZ19jYXJ0d2hlZWxfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM4LTFmM2ZjIl0sZm5hbWU6IjFmOTM4LTFmM2ZjIix1YzoiMWY5MzgtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOmNhcnR3aGVlbF90b25lMToiOnt1bmljb2RlOlsiMWY5MzgtMWYzZmIiXSxmbmFtZToiMWY5MzgtMWYzZmIiLHVjOiIxZjkzOC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX2RvaW5nX2NhcnR3aGVlbF90b25lMToiOnt1bmljb2RlOlsiMWY5MzgtMWYzZmIiXSxmbmFtZToiMWY5MzgtMWYzZmIiLHVjOiIxZjkzOC0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6c2hydWdfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM3LTFmM2ZmIl0sZm5hbWU6IjFmOTM3LTFmM2ZmIix1YzoiMWY5MzctMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnNocnVnX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkzNy0xZjNmZSJdLGZuYW1lOiIxZjkzNy0xZjNmZSIsdWM6IjFmOTM3LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpzaHJ1Z190b25lMzoiOnt1bmljb2RlOlsiMWY5MzctMWYzZmQiXSxmbmFtZToiMWY5MzctMWYzZmQiLHVjOiIxZjkzNy0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6c2hydWdfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM3LTFmM2ZjIl0sZm5hbWU6IjFmOTM3LTFmM2ZjIix1YzoiMWY5MzctMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnNocnVnX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkzNy0xZjNmYiJdLGZuYW1lOiIxZjkzNy0xZjNmYiIsdWM6IjFmOTM3LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjptcnNfY2xhdXNfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM2LTFmM2ZmIl0sZm5hbWU6IjFmOTM2LTFmM2ZmIix1YzoiMWY5MzYtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm1vdGhlcl9jaHJpc3RtYXNfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTM2LTFmM2ZmIl0sZm5hbWU6IjFmOTM2LTFmM2ZmIix1YzoiMWY5MzYtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOm1yc19jbGF1c190b25lNDoiOnt1bmljb2RlOlsiMWY5MzYtMWYzZmUiXSxmbmFtZToiMWY5MzYtMWYzZmUiLHVjOiIxZjkzNi0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bW90aGVyX2NocmlzdG1hc190b25lNDoiOnt1bmljb2RlOlsiMWY5MzYtMWYzZmUiXSxmbmFtZToiMWY5MzYtMWYzZmUiLHVjOiIxZjkzNi0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6bXJzX2NsYXVzX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzNi0xZjNmZCJdLGZuYW1lOiIxZjkzNi0xZjNmZCIsdWM6IjFmOTM2LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjptb3RoZXJfY2hyaXN0bWFzX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzNi0xZjNmZCJdLGZuYW1lOiIxZjkzNi0xZjNmZCIsdWM6IjFmOTM2LTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjptcnNfY2xhdXNfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM2LTFmM2ZjIl0sZm5hbWU6IjFmOTM2LTFmM2ZjIix1YzoiMWY5MzYtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm1vdGhlcl9jaHJpc3RtYXNfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTM2LTFmM2ZjIl0sZm5hbWU6IjFmOTM2LTFmM2ZjIix1YzoiMWY5MzYtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOm1yc19jbGF1c190b25lMToiOnt1bmljb2RlOlsiMWY5MzYtMWYzZmIiXSxmbmFtZToiMWY5MzYtMWYzZmIiLHVjOiIxZjkzNi0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bW90aGVyX2NocmlzdG1hc190b25lMToiOnt1bmljb2RlOlsiMWY5MzYtMWYzZmIiXSxmbmFtZToiMWY5MzYtMWYzZmIiLHVjOiIxZjkzNi0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6bWFuX2luX3R1eGVkb190b25lNToiOnt1bmljb2RlOlsiMWY5MzUtMWYzZmYiXSxmbmFtZToiMWY5MzUtMWYzZmYiLHVjOiIxZjkzNS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6dHV4ZWRvX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkzNS0xZjNmZiJdLGZuYW1lOiIxZjkzNS0xZjNmZiIsdWM6IjFmOTM1LTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjptYW5faW5fdHV4ZWRvX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkzNS0xZjNmZSJdLGZuYW1lOiIxZjkzNS0xZjNmZSIsdWM6IjFmOTM1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp0dXhlZG9fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTM1LTFmM2ZlIl0sZm5hbWU6IjFmOTM1LTFmM2ZlIix1YzoiMWY5MzUtMWYzZmUiLGlzQ2Fub25pY2FsOiExfSwiOm1hbl9pbl90dXhlZG9fdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTM1LTFmM2ZkIl0sZm5hbWU6IjFmOTM1LTFmM2ZkIix1YzoiMWY5MzUtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnR1eGVkb190b25lMzoiOnt1bmljb2RlOlsiMWY5MzUtMWYzZmQiXSxmbmFtZToiMWY5MzUtMWYzZmQiLHVjOiIxZjkzNS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6bWFuX2luX3R1eGVkb190b25lMjoiOnt1bmljb2RlOlsiMWY5MzUtMWYzZmMiXSxmbmFtZToiMWY5MzUtMWYzZmMiLHVjOiIxZjkzNS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6dHV4ZWRvX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkzNS0xZjNmYyJdLGZuYW1lOiIxZjkzNS0xZjNmYyIsdWM6IjFmOTM1LTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjptYW5faW5fdHV4ZWRvX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkzNS0xZjNmYiJdLGZuYW1lOiIxZjkzNS0xZjNmYiIsdWM6IjFmOTM1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjp0dXhlZG9fdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTM1LTFmM2ZiIl0sZm5hbWU6IjFmOTM1LTFmM2ZiIix1YzoiMWY5MzUtMWYzZmIiLGlzQ2Fub25pY2FsOiExfSwiOnByaW5jZV90b25lNToiOnt1bmljb2RlOlsiMWY5MzQtMWYzZmYiXSxmbmFtZToiMWY5MzQtMWYzZmYiLHVjOiIxZjkzNC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cHJpbmNlX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkzNC0xZjNmZSJdLGZuYW1lOiIxZjkzNC0xZjNmZSIsdWM6IjFmOTM0LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpwcmluY2VfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTM0LTFmM2ZkIl0sZm5hbWU6IjFmOTM0LTFmM2ZkIix1YzoiMWY5MzQtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnByaW5jZV90b25lMjoiOnt1bmljb2RlOlsiMWY5MzQtMWYzZmMiXSxmbmFtZToiMWY5MzQtMWYzZmMiLHVjOiIxZjkzNC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cHJpbmNlX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkzNC0xZjNmYiJdLGZuYW1lOiIxZjkzNC0xZjNmYiIsdWM6IjFmOTM0LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpzZWxmaWVfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTMzLTFmM2ZmIl0sZm5hbWU6IjFmOTMzLTFmM2ZmIix1YzoiMWY5MzMtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnNlbGZpZV90b25lNDoiOnt1bmljb2RlOlsiMWY5MzMtMWYzZmUiXSxmbmFtZToiMWY5MzMtMWYzZmUiLHVjOiIxZjkzMy0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6c2VsZmllX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkzMy0xZjNmZCJdLGZuYW1lOiIxZjkzMy0xZjNmZCIsdWM6IjFmOTMzLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpzZWxmaWVfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTMzLTFmM2ZjIl0sZm5hbWU6IjFmOTMzLTFmM2ZjIix1YzoiMWY5MzMtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnNlbGZpZV90b25lMToiOnt1bmljb2RlOlsiMWY5MzMtMWYzZmIiXSxmbmFtZToiMWY5MzMtMWYzZmIiLHVjOiIxZjkzMy0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cHJlZ25hbnRfd29tYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTMwLTFmM2ZmIl0sZm5hbWU6IjFmOTMwLTFmM2ZmIix1YzoiMWY5MzAtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmV4cGVjdGluZ193b21hbl90b25lNToiOnt1bmljb2RlOlsiMWY5MzAtMWYzZmYiXSxmbmFtZToiMWY5MzAtMWYzZmYiLHVjOiIxZjkzMC0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6cHJlZ25hbnRfd29tYW5fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTMwLTFmM2ZlIl0sZm5hbWU6IjFmOTMwLTFmM2ZlIix1YzoiMWY5MzAtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmV4cGVjdGluZ193b21hbl90b25lNDoiOnt1bmljb2RlOlsiMWY5MzAtMWYzZmUiXSxmbmFtZToiMWY5MzAtMWYzZmUiLHVjOiIxZjkzMC0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6cHJlZ25hbnRfd29tYW5fdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTMwLTFmM2ZkIl0sZm5hbWU6IjFmOTMwLTFmM2ZkIix1YzoiMWY5MzAtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmV4cGVjdGluZ193b21hbl90b25lMzoiOnt1bmljb2RlOlsiMWY5MzAtMWYzZmQiXSxmbmFtZToiMWY5MzAtMWYzZmQiLHVjOiIxZjkzMC0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6cHJlZ25hbnRfd29tYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTMwLTFmM2ZjIl0sZm5hbWU6IjFmOTMwLTFmM2ZjIix1YzoiMWY5MzAtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmV4cGVjdGluZ193b21hbl90b25lMjoiOnt1bmljb2RlOlsiMWY5MzAtMWYzZmMiXSxmbmFtZToiMWY5MzAtMWYzZmMiLHVjOiIxZjkzMC0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6cHJlZ25hbnRfd29tYW5fdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTMwLTFmM2ZiIl0sZm5hbWU6IjFmOTMwLTFmM2ZiIix1YzoiMWY5MzAtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmV4cGVjdGluZ193b21hbl90b25lMToiOnt1bmljb2RlOlsiMWY5MzAtMWYzZmIiXSxmbmFtZToiMWY5MzAtMWYzZmIiLHVjOiIxZjkzMC0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6ZmFjZV9wYWxtX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkyNi0xZjNmZiJdLGZuYW1lOiIxZjkyNi0xZjNmZiIsdWM6IjFmOTI2LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlcGFsbV90b25lNToiOnt1bmljb2RlOlsiMWY5MjYtMWYzZmYiXSxmbmFtZToiMWY5MjYtMWYzZmYiLHVjOiIxZjkyNi0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6ZmFjZV9wYWxtX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkyNi0xZjNmZSJdLGZuYW1lOiIxZjkyNi0xZjNmZSIsdWM6IjFmOTI2LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlcGFsbV90b25lNDoiOnt1bmljb2RlOlsiMWY5MjYtMWYzZmUiXSxmbmFtZToiMWY5MjYtMWYzZmUiLHVjOiIxZjkyNi0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmFjZV9wYWxtX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkyNi0xZjNmZCJdLGZuYW1lOiIxZjkyNi0xZjNmZCIsdWM6IjFmOTI2LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlcGFsbV90b25lMzoiOnt1bmljb2RlOlsiMWY5MjYtMWYzZmQiXSxmbmFtZToiMWY5MjYtMWYzZmQiLHVjOiIxZjkyNi0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmFjZV9wYWxtX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkyNi0xZjNmYyJdLGZuYW1lOiIxZjkyNi0xZjNmYyIsdWM6IjFmOTI2LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlcGFsbV90b25lMjoiOnt1bmljb2RlOlsiMWY5MjYtMWYzZmMiXSxmbmFtZToiMWY5MjYtMWYzZmMiLHVjOiIxZjkyNi0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmFjZV9wYWxtX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkyNi0xZjNmYiJdLGZuYW1lOiIxZjkyNi0xZjNmYiIsdWM6IjFmOTI2LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlcGFsbV90b25lMToiOnt1bmljb2RlOlsiMWY5MjYtMWYzZmIiXSxmbmFtZToiMWY5MjYtMWYzZmIiLHVjOiIxZjkyNi0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6ZmluZ2Vyc19jcm9zc2VkX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkxZS0xZjNmZiJdLGZuYW1lOiIxZjkxZS0xZjNmZiIsdWM6IjFmOTFlLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpoYW5kX3dpdGhfaW5kZXhfYW5kX21pZGRsZV9maW5nZXJzX2Nyb3NzZWRfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFlLTFmM2ZmIl0sZm5hbWU6IjFmOTFlLTFmM2ZmIix1YzoiMWY5MWUtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOmZpbmdlcnNfY3Jvc3NlZF90b25lNDoiOnt1bmljb2RlOlsiMWY5MWUtMWYzZmUiXSxmbmFtZToiMWY5MWUtMWYzZmUiLHVjOiIxZjkxZS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZF93aXRoX2luZGV4X2FuZF9taWRkbGVfZmluZ2Vyc19jcm9zc2VkX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxZS0xZjNmZSJdLGZuYW1lOiIxZjkxZS0xZjNmZSIsdWM6IjFmOTFlLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpmaW5nZXJzX2Nyb3NzZWRfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTFlLTFmM2ZkIl0sZm5hbWU6IjFmOTFlLTFmM2ZkIix1YzoiMWY5MWUtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmhhbmRfd2l0aF9pbmRleF9hbmRfbWlkZGxlX2ZpbmdlcnNfY3Jvc3NlZF90b25lMzoiOnt1bmljb2RlOlsiMWY5MWUtMWYzZmQiXSxmbmFtZToiMWY5MWUtMWYzZmQiLHVjOiIxZjkxZS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmluZ2Vyc19jcm9zc2VkX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkxZS0xZjNmYyJdLGZuYW1lOiIxZjkxZS0xZjNmYyIsdWM6IjFmOTFlLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpoYW5kX3dpdGhfaW5kZXhfYW5kX21pZGRsZV9maW5nZXJzX2Nyb3NzZWRfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFlLTFmM2ZjIl0sZm5hbWU6IjFmOTFlLTFmM2ZjIix1YzoiMWY5MWUtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOmZpbmdlcnNfY3Jvc3NlZF90b25lMToiOnt1bmljb2RlOlsiMWY5MWUtMWYzZmIiXSxmbmFtZToiMWY5MWUtMWYzZmIiLHVjOiIxZjkxZS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZF93aXRoX2luZGV4X2FuZF9taWRkbGVfZmluZ2Vyc19jcm9zc2VkX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxZS0xZjNmYiJdLGZuYW1lOiIxZjkxZS0xZjNmYiIsdWM6IjFmOTFlLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kc2hha2VfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFkLTFmM2ZmIl0sZm5hbWU6IjFmOTFkLTFmM2ZmIix1YzoiMWY5MWQtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnNoYWtpbmdfaGFuZHNfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFkLTFmM2ZmIl0sZm5hbWU6IjFmOTFkLTFmM2ZmIix1YzoiMWY5MWQtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOmhhbmRzaGFrZV90b25lNDoiOnt1bmljb2RlOlsiMWY5MWQtMWYzZmUiXSxmbmFtZToiMWY5MWQtMWYzZmUiLHVjOiIxZjkxZC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6c2hha2luZ19oYW5kc190b25lNDoiOnt1bmljb2RlOlsiMWY5MWQtMWYzZmUiXSxmbmFtZToiMWY5MWQtMWYzZmUiLHVjOiIxZjkxZC0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6aGFuZHNoYWtlX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkxZC0xZjNmZCJdLGZuYW1lOiIxZjkxZC0xZjNmZCIsdWM6IjFmOTFkLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpzaGFraW5nX2hhbmRzX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkxZC0xZjNmZCJdLGZuYW1lOiIxZjkxZC0xZjNmZCIsdWM6IjFmOTFkLTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kc2hha2VfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFkLTFmM2ZjIl0sZm5hbWU6IjFmOTFkLTFmM2ZjIix1YzoiMWY5MWQtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnNoYWtpbmdfaGFuZHNfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFkLTFmM2ZjIl0sZm5hbWU6IjFmOTFkLTFmM2ZjIix1YzoiMWY5MWQtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOmhhbmRzaGFrZV90b25lMToiOnt1bmljb2RlOlsiMWY5MWQtMWYzZmIiXSxmbmFtZToiMWY5MWQtMWYzZmIiLHVjOiIxZjkxZC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6c2hha2luZ19oYW5kc190b25lMToiOnt1bmljb2RlOlsiMWY5MWQtMWYzZmIiXSxmbmFtZToiMWY5MWQtMWYzZmIiLHVjOiIxZjkxZC0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6cmlnaHRfZmFjaW5nX2Zpc3RfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFjLTFmM2ZmIl0sZm5hbWU6IjFmOTFjLTFmM2ZmIix1YzoiMWY5MWMtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnJpZ2h0X2Zpc3RfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFjLTFmM2ZmIl0sZm5hbWU6IjFmOTFjLTFmM2ZmIix1YzoiMWY5MWMtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOnJpZ2h0X2ZhY2luZ19maXN0X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxYy0xZjNmZSJdLGZuYW1lOiIxZjkxYy0xZjNmZSIsdWM6IjFmOTFjLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpyaWdodF9maXN0X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxYy0xZjNmZSJdLGZuYW1lOiIxZjkxYy0xZjNmZSIsdWM6IjFmOTFjLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpyaWdodF9mYWNpbmdfZmlzdF90b25lMzoiOnt1bmljb2RlOlsiMWY5MWMtMWYzZmQiXSxmbmFtZToiMWY5MWMtMWYzZmQiLHVjOiIxZjkxYy0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6cmlnaHRfZmlzdF90b25lMzoiOnt1bmljb2RlOlsiMWY5MWMtMWYzZmQiXSxmbmFtZToiMWY5MWMtMWYzZmQiLHVjOiIxZjkxYy0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6cmlnaHRfZmFjaW5nX2Zpc3RfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFjLTFmM2ZjIl0sZm5hbWU6IjFmOTFjLTFmM2ZjIix1YzoiMWY5MWMtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnJpZ2h0X2Zpc3RfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFjLTFmM2ZjIl0sZm5hbWU6IjFmOTFjLTFmM2ZjIix1YzoiMWY5MWMtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOnJpZ2h0X2ZhY2luZ19maXN0X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxYy0xZjNmYiJdLGZuYW1lOiIxZjkxYy0xZjNmYiIsdWM6IjFmOTFjLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpyaWdodF9maXN0X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxYy0xZjNmYiJdLGZuYW1lOiIxZjkxYy0xZjNmYiIsdWM6IjFmOTFjLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpsZWZ0X2ZhY2luZ19maXN0X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkxYi0xZjNmZiJdLGZuYW1lOiIxZjkxYi0xZjNmZiIsdWM6IjFmOTFiLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpsZWZ0X2Zpc3RfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTFiLTFmM2ZmIl0sZm5hbWU6IjFmOTFiLTFmM2ZmIix1YzoiMWY5MWItMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTFiLTFmM2ZlIl0sZm5hbWU6IjFmOTFiLTFmM2ZlIix1YzoiMWY5MWItMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmxlZnRfZmlzdF90b25lNDoiOnt1bmljb2RlOlsiMWY5MWItMWYzZmUiXSxmbmFtZToiMWY5MWItMWYzZmUiLHVjOiIxZjkxYi0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6bGVmdF9mYWNpbmdfZmlzdF90b25lMzoiOnt1bmljb2RlOlsiMWY5MWItMWYzZmQiXSxmbmFtZToiMWY5MWItMWYzZmQiLHVjOiIxZjkxYi0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bGVmdF9maXN0X3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkxYi0xZjNmZCJdLGZuYW1lOiIxZjkxYi0xZjNmZCIsdWM6IjFmOTFiLTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjpsZWZ0X2ZhY2luZ19maXN0X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkxYi0xZjNmYyJdLGZuYW1lOiIxZjkxYi0xZjNmYyIsdWM6IjFmOTFiLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpsZWZ0X2Zpc3RfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTFiLTFmM2ZjIl0sZm5hbWU6IjFmOTFiLTFmM2ZjIix1YzoiMWY5MWItMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOmxlZnRfZmFjaW5nX2Zpc3RfdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTFiLTFmM2ZiIl0sZm5hbWU6IjFmOTFiLTFmM2ZiIix1YzoiMWY5MWItMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmxlZnRfZmlzdF90b25lMToiOnt1bmljb2RlOlsiMWY5MWItMWYzZmIiXSxmbmFtZToiMWY5MWItMWYzZmIiLHVjOiIxZjkxYi0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6cmFpc2VkX2JhY2tfb2ZfaGFuZF90b25lNToiOnt1bmljb2RlOlsiMWY5MWEtMWYzZmYiXSxmbmFtZToiMWY5MWEtMWYzZmYiLHVjOiIxZjkxYS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YmFja19vZl9oYW5kX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjkxYS0xZjNmZiJdLGZuYW1lOiIxZjkxYS0xZjNmZiIsdWM6IjFmOTFhLTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjpyYWlzZWRfYmFja19vZl9oYW5kX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxYS0xZjNmZSJdLGZuYW1lOiIxZjkxYS0xZjNmZSIsdWM6IjFmOTFhLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpiYWNrX29mX2hhbmRfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmOTFhLTFmM2ZlIl0sZm5hbWU6IjFmOTFhLTFmM2ZlIix1YzoiMWY5MWEtMWYzZmUiLGlzQ2Fub25pY2FsOiExfSwiOnJhaXNlZF9iYWNrX29mX2hhbmRfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTFhLTFmM2ZkIl0sZm5hbWU6IjFmOTFhLTFmM2ZkIix1YzoiMWY5MWEtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmJhY2tfb2ZfaGFuZF90b25lMzoiOnt1bmljb2RlOlsiMWY5MWEtMWYzZmQiXSxmbmFtZToiMWY5MWEtMWYzZmQiLHVjOiIxZjkxYS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6cmFpc2VkX2JhY2tfb2ZfaGFuZF90b25lMjoiOnt1bmljb2RlOlsiMWY5MWEtMWYzZmMiXSxmbmFtZToiMWY5MWEtMWYzZmMiLHVjOiIxZjkxYS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YmFja19vZl9oYW5kX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjkxYS0xZjNmYyJdLGZuYW1lOiIxZjkxYS0xZjNmYyIsdWM6IjFmOTFhLTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjpyYWlzZWRfYmFja19vZl9oYW5kX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxYS0xZjNmYiJdLGZuYW1lOiIxZjkxYS0xZjNmYiIsdWM6IjFmOTFhLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpiYWNrX29mX2hhbmRfdG9uZTE6Ijp7dW5pY29kZTpbIjFmOTFhLTFmM2ZiIl0sZm5hbWU6IjFmOTFhLTFmM2ZiIix1YzoiMWY5MWEtMWYzZmIiLGlzQ2Fub25pY2FsOiExfSwiOmNhbGxfbWVfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTE5LTFmM2ZmIl0sZm5hbWU6IjFmOTE5LTFmM2ZmIix1YzoiMWY5MTktMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmNhbGxfbWVfaGFuZF90b25lNToiOnt1bmljb2RlOlsiMWY5MTktMWYzZmYiXSxmbmFtZToiMWY5MTktMWYzZmYiLHVjOiIxZjkxOS0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6Y2FsbF9tZV90b25lNDoiOnt1bmljb2RlOlsiMWY5MTktMWYzZmUiXSxmbmFtZToiMWY5MTktMWYzZmUiLHVjOiIxZjkxOS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6Y2FsbF9tZV9oYW5kX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxOS0xZjNmZSJdLGZuYW1lOiIxZjkxOS0xZjNmZSIsdWM6IjFmOTE5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpjYWxsX21lX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkxOS0xZjNmZCJdLGZuYW1lOiIxZjkxOS0xZjNmZCIsdWM6IjFmOTE5LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpjYWxsX21lX2hhbmRfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTE5LTFmM2ZkIl0sZm5hbWU6IjFmOTE5LTFmM2ZkIix1YzoiMWY5MTktMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOmNhbGxfbWVfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTE5LTFmM2ZjIl0sZm5hbWU6IjFmOTE5LTFmM2ZjIix1YzoiMWY5MTktMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmNhbGxfbWVfaGFuZF90b25lMjoiOnt1bmljb2RlOlsiMWY5MTktMWYzZmMiXSxmbmFtZToiMWY5MTktMWYzZmMiLHVjOiIxZjkxOS0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6Y2FsbF9tZV90b25lMToiOnt1bmljb2RlOlsiMWY5MTktMWYzZmIiXSxmbmFtZToiMWY5MTktMWYzZmIiLHVjOiIxZjkxOS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6Y2FsbF9tZV9oYW5kX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxOS0xZjNmYiJdLGZuYW1lOiIxZjkxOS0xZjNmYiIsdWM6IjFmOTE5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjptZXRhbF90b25lNToiOnt1bmljb2RlOlsiMWY5MTgtMWYzZmYiXSxmbmFtZToiMWY5MTgtMWYzZmYiLHVjOiIxZjkxOC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6c2lnbl9vZl90aGVfaG9ybnNfdG9uZTU6Ijp7dW5pY29kZTpbIjFmOTE4LTFmM2ZmIl0sZm5hbWU6IjFmOTE4LTFmM2ZmIix1YzoiMWY5MTgtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOm1ldGFsX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjkxOC0xZjNmZSJdLGZuYW1lOiIxZjkxOC0xZjNmZSIsdWM6IjFmOTE4LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpzaWduX29mX3RoZV9ob3Juc190b25lNDoiOnt1bmljb2RlOlsiMWY5MTgtMWYzZmUiXSxmbmFtZToiMWY5MTgtMWYzZmUiLHVjOiIxZjkxOC0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6bWV0YWxfdG9uZTM6Ijp7dW5pY29kZTpbIjFmOTE4LTFmM2ZkIl0sZm5hbWU6IjFmOTE4LTFmM2ZkIix1YzoiMWY5MTgtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnNpZ25fb2ZfdGhlX2hvcm5zX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjkxOC0xZjNmZCJdLGZuYW1lOiIxZjkxOC0xZjNmZCIsdWM6IjFmOTE4LTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjptZXRhbF90b25lMjoiOnt1bmljb2RlOlsiMWY5MTgtMWYzZmMiXSxmbmFtZToiMWY5MTgtMWYzZmMiLHVjOiIxZjkxOC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6c2lnbl9vZl90aGVfaG9ybnNfdG9uZTI6Ijp7dW5pY29kZTpbIjFmOTE4LTFmM2ZjIl0sZm5hbWU6IjFmOTE4LTFmM2ZjIix1YzoiMWY5MTgtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOm1ldGFsX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjkxOC0xZjNmYiJdLGZuYW1lOiIxZjkxOC0xZjNmYiIsdWM6IjFmOTE4LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpzaWduX29mX3RoZV9ob3Juc190b25lMToiOnt1bmljb2RlOlsiMWY5MTgtMWYzZmIiXSxmbmFtZToiMWY5MTgtMWYzZmIiLHVjOiIxZjkxOC0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6YmF0aF90b25lNToiOnt1bmljb2RlOlsiMWY2YzAtMWYzZmYiXSxmbmFtZToiMWY2YzAtMWYzZmYiLHVjOiIxZjZjMC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YmF0aF90b25lNDoiOnt1bmljb2RlOlsiMWY2YzAtMWYzZmUiXSxmbmFtZToiMWY2YzAtMWYzZmUiLHVjOiIxZjZjMC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6YmF0aF90b25lMzoiOnt1bmljb2RlOlsiMWY2YzAtMWYzZmQiXSxmbmFtZToiMWY2YzAtMWYzZmQiLHVjOiIxZjZjMC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6YmF0aF90b25lMjoiOnt1bmljb2RlOlsiMWY2YzAtMWYzZmMiXSxmbmFtZToiMWY2YzAtMWYzZmMiLHVjOiIxZjZjMC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YmF0aF90b25lMToiOnt1bmljb2RlOlsiMWY2YzAtMWYzZmIiXSxmbmFtZToiMWY2YzAtMWYzZmIiLHVjOiIxZjZjMC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6d2Fsa2luZ190b25lNToiOnt1bmljb2RlOlsiMWY2YjYtMWYzZmYiXSxmbmFtZToiMWY2YjYtMWYzZmYiLHVjOiIxZjZiNi0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6d2Fsa2luZ190b25lNDoiOnt1bmljb2RlOlsiMWY2YjYtMWYzZmUiXSxmbmFtZToiMWY2YjYtMWYzZmUiLHVjOiIxZjZiNi0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6d2Fsa2luZ190b25lMzoiOnt1bmljb2RlOlsiMWY2YjYtMWYzZmQiXSxmbmFtZToiMWY2YjYtMWYzZmQiLHVjOiIxZjZiNi0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6d2Fsa2luZ190b25lMjoiOnt1bmljb2RlOlsiMWY2YjYtMWYzZmMiXSxmbmFtZToiMWY2YjYtMWYzZmMiLHVjOiIxZjZiNi0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6d2Fsa2luZ190b25lMToiOnt1bmljb2RlOlsiMWY2YjYtMWYzZmIiXSxmbmFtZToiMWY2YjYtMWYzZmIiLHVjOiIxZjZiNi0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bW91bnRhaW5fYmljeWNsaXN0X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjZiNS0xZjNmZiJdLGZuYW1lOiIxZjZiNS0xZjNmZiIsdWM6IjFmNmI1LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjptb3VudGFpbl9iaWN5Y2xpc3RfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNmI1LTFmM2ZlIl0sZm5hbWU6IjFmNmI1LTFmM2ZlIix1YzoiMWY2YjUtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm1vdW50YWluX2JpY3ljbGlzdF90b25lMzoiOnt1bmljb2RlOlsiMWY2YjUtMWYzZmQiXSxmbmFtZToiMWY2YjUtMWYzZmQiLHVjOiIxZjZiNS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bW91bnRhaW5fYmljeWNsaXN0X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjZiNS0xZjNmYyJdLGZuYW1lOiIxZjZiNS0xZjNmYyIsdWM6IjFmNmI1LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjptb3VudGFpbl9iaWN5Y2xpc3RfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNmI1LTFmM2ZiIl0sZm5hbWU6IjFmNmI1LTFmM2ZiIix1YzoiMWY2YjUtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmJpY3ljbGlzdF90b25lNToiOnt1bmljb2RlOlsiMWY2YjQtMWYzZmYiXSxmbmFtZToiMWY2YjQtMWYzZmYiLHVjOiIxZjZiNC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YmljeWNsaXN0X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjZiNC0xZjNmZSJdLGZuYW1lOiIxZjZiNC0xZjNmZSIsdWM6IjFmNmI0LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpiaWN5Y2xpc3RfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNmI0LTFmM2ZkIl0sZm5hbWU6IjFmNmI0LTFmM2ZkIix1YzoiMWY2YjQtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmJpY3ljbGlzdF90b25lMjoiOnt1bmljb2RlOlsiMWY2YjQtMWYzZmMiXSxmbmFtZToiMWY2YjQtMWYzZmMiLHVjOiIxZjZiNC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YmljeWNsaXN0X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjZiNC0xZjNmYiJdLGZuYW1lOiIxZjZiNC0xZjNmYiIsdWM6IjFmNmI0LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpyb3dib2F0X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjZhMy0xZjNmZiJdLGZuYW1lOiIxZjZhMy0xZjNmZiIsdWM6IjFmNmEzLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpyb3dib2F0X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjZhMy0xZjNmZSJdLGZuYW1lOiIxZjZhMy0xZjNmZSIsdWM6IjFmNmEzLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpyb3dib2F0X3RvbmUzOiI6e3VuaWNvZGU6WyIxZjZhMy0xZjNmZCJdLGZuYW1lOiIxZjZhMy0xZjNmZCIsdWM6IjFmNmEzLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpyb3dib2F0X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjZhMy0xZjNmYyJdLGZuYW1lOiIxZjZhMy0xZjNmYyIsdWM6IjFmNmEzLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpyb3dib2F0X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjZhMy0xZjNmYiJdLGZuYW1lOiIxZjZhMy0xZjNmYiIsdWM6IjFmNmEzLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpwcmF5X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjY0Zi0xZjNmZiJdLGZuYW1lOiIxZjY0Zi0xZjNmZiIsdWM6IjFmNjRmLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpwcmF5X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjY0Zi0xZjNmZSJdLGZuYW1lOiIxZjY0Zi0xZjNmZSIsdWM6IjFmNjRmLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpwcmF5X3RvbmUzOiI6e3VuaWNvZGU6WyIxZjY0Zi0xZjNmZCJdLGZuYW1lOiIxZjY0Zi0xZjNmZCIsdWM6IjFmNjRmLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpwcmF5X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjY0Zi0xZjNmYyJdLGZuYW1lOiIxZjY0Zi0xZjNmYyIsdWM6IjFmNjRmLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpwcmF5X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjY0Zi0xZjNmYiJdLGZuYW1lOiIxZjY0Zi0xZjNmYiIsdWM6IjFmNjRmLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fd2l0aF9wb3V0aW5nX2ZhY2VfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNjRlLTFmM2ZmIl0sZm5hbWU6IjFmNjRlLTFmM2ZmIix1YzoiMWY2NGUtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX3BvdXRpbmdfZmFjZV90b25lNDoiOnt1bmljb2RlOlsiMWY2NGUtMWYzZmUiXSxmbmFtZToiMWY2NGUtMWYzZmUiLHVjOiIxZjY0ZS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX3dpdGhfcG91dGluZ19mYWNlX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjY0ZS0xZjNmZCJdLGZuYW1lOiIxZjY0ZS0xZjNmZCIsdWM6IjFmNjRlLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fd2l0aF9wb3V0aW5nX2ZhY2VfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNjRlLTFmM2ZjIl0sZm5hbWU6IjFmNjRlLTFmM2ZjIix1YzoiMWY2NGUtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX3BvdXRpbmdfZmFjZV90b25lMToiOnt1bmljb2RlOlsiMWY2NGUtMWYzZmIiXSxmbmFtZToiMWY2NGUtMWYzZmIiLHVjOiIxZjY0ZS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX2Zyb3duaW5nX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjY0ZC0xZjNmZiJdLGZuYW1lOiIxZjY0ZC0xZjNmZiIsdWM6IjFmNjRkLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fZnJvd25pbmdfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNjRkLTFmM2ZlIl0sZm5hbWU6IjFmNjRkLTFmM2ZlIix1YzoiMWY2NGQtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl9mcm93bmluZ190b25lMzoiOnt1bmljb2RlOlsiMWY2NGQtMWYzZmQiXSxmbmFtZToiMWY2NGQtMWYzZmQiLHVjOiIxZjY0ZC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX2Zyb3duaW5nX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjY0ZC0xZjNmYyJdLGZuYW1lOiIxZjY0ZC0xZjNmYyIsdWM6IjFmNjRkLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fZnJvd25pbmdfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNjRkLTFmM2ZiIl0sZm5hbWU6IjFmNjRkLTFmM2ZiIix1YzoiMWY2NGQtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kc190b25lNToiOnt1bmljb2RlOlsiMWY2NGMtMWYzZmYiXSxmbmFtZToiMWY2NGMtMWYzZmYiLHVjOiIxZjY0Yy0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2VkX2hhbmRzX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjY0Yy0xZjNmZSJdLGZuYW1lOiIxZjY0Yy0xZjNmZSIsdWM6IjFmNjRjLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZHNfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNjRjLTFmM2ZkIl0sZm5hbWU6IjFmNjRjLTFmM2ZkIix1YzoiMWY2NGMtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kc190b25lMjoiOnt1bmljb2RlOlsiMWY2NGMtMWYzZmMiXSxmbmFtZToiMWY2NGMtMWYzZmMiLHVjOiIxZjY0Yy0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2VkX2hhbmRzX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjY0Yy0xZjNmYiJdLGZuYW1lOiIxZjY0Yy0xZjNmYiIsdWM6IjFmNjRjLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzaW5nX2hhbmRfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNjRiLTFmM2ZmIl0sZm5hbWU6IjFmNjRiLTFmM2ZmIix1YzoiMWY2NGItMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNpbmdfaGFuZF90b25lNDoiOnt1bmljb2RlOlsiMWY2NGItMWYzZmUiXSxmbmFtZToiMWY2NGItMWYzZmUiLHVjOiIxZjY0Yi0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2luZ19oYW5kX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjY0Yi0xZjNmZCJdLGZuYW1lOiIxZjY0Yi0xZjNmZCIsdWM6IjFmNjRiLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzaW5nX2hhbmRfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNjRiLTFmM2ZjIl0sZm5hbWU6IjFmNjRiLTFmM2ZjIix1YzoiMWY2NGItMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNpbmdfaGFuZF90b25lMToiOnt1bmljb2RlOlsiMWY2NGItMWYzZmIiXSxmbmFtZToiMWY2NGItMWYzZmIiLHVjOiIxZjY0Yi0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6Ym93X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjY0Ny0xZjNmZiJdLGZuYW1lOiIxZjY0Ny0xZjNmZiIsdWM6IjFmNjQ3LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpib3dfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNjQ3LTFmM2ZlIl0sZm5hbWU6IjFmNjQ3LTFmM2ZlIix1YzoiMWY2NDctMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmJvd190b25lMzoiOnt1bmljb2RlOlsiMWY2NDctMWYzZmQiXSxmbmFtZToiMWY2NDctMWYzZmQiLHVjOiIxZjY0Ny0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6Ym93X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjY0Ny0xZjNmYyJdLGZuYW1lOiIxZjY0Ny0xZjNmYyIsdWM6IjFmNjQ3LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpib3dfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNjQ3LTFmM2ZiIl0sZm5hbWU6IjFmNjQ3LTFmM2ZiIix1YzoiMWY2NDctMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOm9rX3dvbWFuX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjY0Ni0xZjNmZiJdLGZuYW1lOiIxZjY0Ni0xZjNmZiIsdWM6IjFmNjQ2LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpva193b21hbl90b25lNDoiOnt1bmljb2RlOlsiMWY2NDYtMWYzZmUiXSxmbmFtZToiMWY2NDYtMWYzZmUiLHVjOiIxZjY0Ni0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6b2tfd29tYW5fdG9uZTM6Ijp7dW5pY29kZTpbIjFmNjQ2LTFmM2ZkIl0sZm5hbWU6IjFmNjQ2LTFmM2ZkIix1YzoiMWY2NDYtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOm9rX3dvbWFuX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjY0Ni0xZjNmYyJdLGZuYW1lOiIxZjY0Ni0xZjNmYyIsdWM6IjFmNjQ2LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpva193b21hbl90b25lMToiOnt1bmljb2RlOlsiMWY2NDYtMWYzZmIiXSxmbmFtZToiMWY2NDYtMWYzZmIiLHVjOiIxZjY0Ni0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bm9fZ29vZF90b25lNToiOnt1bmljb2RlOlsiMWY2NDUtMWYzZmYiXSxmbmFtZToiMWY2NDUtMWYzZmYiLHVjOiIxZjY0NS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6bm9fZ29vZF90b25lNDoiOnt1bmljb2RlOlsiMWY2NDUtMWYzZmUiXSxmbmFtZToiMWY2NDUtMWYzZmUiLHVjOiIxZjY0NS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bm9fZ29vZF90b25lMzoiOnt1bmljb2RlOlsiMWY2NDUtMWYzZmQiXSxmbmFtZToiMWY2NDUtMWYzZmQiLHVjOiIxZjY0NS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bm9fZ29vZF90b25lMjoiOnt1bmljb2RlOlsiMWY2NDUtMWYzZmMiXSxmbmFtZToiMWY2NDUtMWYzZmMiLHVjOiIxZjY0NS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6bm9fZ29vZF90b25lMToiOnt1bmljb2RlOlsiMWY2NDUtMWYzZmIiXSxmbmFtZToiMWY2NDUtMWYzZmIiLHVjOiIxZjY0NS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6dnVsY2FuX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjU5Ni0xZjNmZiJdLGZuYW1lOiIxZjU5Ni0xZjNmZiIsdWM6IjFmNTk2LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX3BhcnRfYmV0d2Vlbl9taWRkbGVfYW5kX3JpbmdfZmluZ2Vyc190b25lNToiOnt1bmljb2RlOlsiMWY1OTYtMWYzZmYiXSxmbmFtZToiMWY1OTYtMWYzZmYiLHVjOiIxZjU5Ni0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6dnVsY2FuX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjU5Ni0xZjNmZSJdLGZuYW1lOiIxZjU5Ni0xZjNmZSIsdWM6IjFmNTk2LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX3BhcnRfYmV0d2Vlbl9taWRkbGVfYW5kX3JpbmdfZmluZ2Vyc190b25lNDoiOnt1bmljb2RlOlsiMWY1OTYtMWYzZmUiXSxmbmFtZToiMWY1OTYtMWYzZmUiLHVjOiIxZjU5Ni0xZjNmZSIsaXNDYW5vbmljYWw6ITF9LCI6dnVsY2FuX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjU5Ni0xZjNmZCJdLGZuYW1lOiIxZjU5Ni0xZjNmZCIsdWM6IjFmNTk2LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX3BhcnRfYmV0d2Vlbl9taWRkbGVfYW5kX3JpbmdfZmluZ2Vyc190b25lMzoiOnt1bmljb2RlOlsiMWY1OTYtMWYzZmQiXSxmbmFtZToiMWY1OTYtMWYzZmQiLHVjOiIxZjU5Ni0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6dnVsY2FuX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjU5Ni0xZjNmYyJdLGZuYW1lOiIxZjU5Ni0xZjNmYyIsdWM6IjFmNTk2LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX3BhcnRfYmV0d2Vlbl9taWRkbGVfYW5kX3JpbmdfZmluZ2Vyc190b25lMjoiOnt1bmljb2RlOlsiMWY1OTYtMWYzZmMiXSxmbmFtZToiMWY1OTYtMWYzZmMiLHVjOiIxZjU5Ni0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6dnVsY2FuX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjU5Ni0xZjNmYiJdLGZuYW1lOiIxZjU5Ni0xZjNmYiIsdWM6IjFmNTk2LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX3BhcnRfYmV0d2Vlbl9taWRkbGVfYW5kX3JpbmdfZmluZ2Vyc190b25lMToiOnt1bmljb2RlOlsiMWY1OTYtMWYzZmIiXSxmbmFtZToiMWY1OTYtMWYzZmIiLHVjOiIxZjU5Ni0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6bWlkZGxlX2Zpbmdlcl90b25lNToiOnt1bmljb2RlOlsiMWY1OTUtMWYzZmYiXSxmbmFtZToiMWY1OTUtMWYzZmYiLHVjOiIxZjU5NS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cmV2ZXJzZWRfaGFuZF93aXRoX21pZGRsZV9maW5nZXJfZXh0ZW5kZWRfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNTk1LTFmM2ZmIl0sZm5hbWU6IjFmNTk1LTFmM2ZmIix1YzoiMWY1OTUtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOm1pZGRsZV9maW5nZXJfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNTk1LTFmM2ZlIl0sZm5hbWU6IjFmNTk1LTFmM2ZlIix1YzoiMWY1OTUtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnJldmVyc2VkX2hhbmRfd2l0aF9taWRkbGVfZmluZ2VyX2V4dGVuZGVkX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjU5NS0xZjNmZSJdLGZuYW1lOiIxZjU5NS0xZjNmZSIsdWM6IjFmNTk1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjptaWRkbGVfZmluZ2VyX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjU5NS0xZjNmZCJdLGZuYW1lOiIxZjU5NS0xZjNmZCIsdWM6IjFmNTk1LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpyZXZlcnNlZF9oYW5kX3dpdGhfbWlkZGxlX2Zpbmdlcl9leHRlbmRlZF90b25lMzoiOnt1bmljb2RlOlsiMWY1OTUtMWYzZmQiXSxmbmFtZToiMWY1OTUtMWYzZmQiLHVjOiIxZjU5NS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6bWlkZGxlX2Zpbmdlcl90b25lMjoiOnt1bmljb2RlOlsiMWY1OTUtMWYzZmMiXSxmbmFtZToiMWY1OTUtMWYzZmMiLHVjOiIxZjU5NS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cmV2ZXJzZWRfaGFuZF93aXRoX21pZGRsZV9maW5nZXJfZXh0ZW5kZWRfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNTk1LTFmM2ZjIl0sZm5hbWU6IjFmNTk1LTFmM2ZjIix1YzoiMWY1OTUtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOm1pZGRsZV9maW5nZXJfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNTk1LTFmM2ZiIl0sZm5hbWU6IjFmNTk1LTFmM2ZiIix1YzoiMWY1OTUtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnJldmVyc2VkX2hhbmRfd2l0aF9taWRkbGVfZmluZ2VyX2V4dGVuZGVkX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjU5NS0xZjNmYiJdLGZuYW1lOiIxZjU5NS0xZjNmYiIsdWM6IjFmNTk1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWRfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNTkwLTFmM2ZmIl0sZm5hbWU6IjFmNTkwLTFmM2ZmIix1YzoiMWY1OTAtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3dpdGhfZmluZ2Vyc19zcGxheWVkX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjU5MC0xZjNmZiJdLGZuYW1lOiIxZjU5MC0xZjNmZiIsdWM6IjFmNTkwLTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWRfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNTkwLTFmM2ZlIl0sZm5hbWU6IjFmNTkwLTFmM2ZlIix1YzoiMWY1OTAtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3dpdGhfZmluZ2Vyc19zcGxheWVkX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjU5MC0xZjNmZSJdLGZuYW1lOiIxZjU5MC0xZjNmZSIsdWM6IjFmNTkwLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWRfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNTkwLTFmM2ZkIl0sZm5hbWU6IjFmNTkwLTFmM2ZkIix1YzoiMWY1OTAtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3dpdGhfZmluZ2Vyc19zcGxheWVkX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjU5MC0xZjNmZCJdLGZuYW1lOiIxZjU5MC0xZjNmZCIsdWM6IjFmNTkwLTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWRfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNTkwLTFmM2ZjIl0sZm5hbWU6IjFmNTkwLTFmM2ZjIix1YzoiMWY1OTAtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3dpdGhfZmluZ2Vyc19zcGxheWVkX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjU5MC0xZjNmYyJdLGZuYW1lOiIxZjU5MC0xZjNmYyIsdWM6IjFmNTkwLTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWRfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNTkwLTFmM2ZiIl0sZm5hbWU6IjFmNTkwLTFmM2ZiIix1YzoiMWY1OTAtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3dpdGhfZmluZ2Vyc19zcGxheWVkX3RvbmUxOiI6ewp1bmljb2RlOlsiMWY1OTAtMWYzZmIiXSxmbmFtZToiMWY1OTAtMWYzZmIiLHVjOiIxZjU5MC0xZjNmYiIsaXNDYW5vbmljYWw6ITF9LCI6bWFuX2RhbmNpbmdfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNTdhLTFmM2ZmIl0sZm5hbWU6IjFmNTdhLTFmM2ZmIix1YzoiMWY1N2EtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbGVfZGFuY2VyX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjU3YS0xZjNmZiJdLGZuYW1lOiIxZjU3YS0xZjNmZiIsdWM6IjFmNTdhLTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjptYW5fZGFuY2luZ190b25lNDoiOnt1bmljb2RlOlsiMWY1N2EtMWYzZmUiXSxmbmFtZToiMWY1N2EtMWYzZmUiLHVjOiIxZjU3YS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bWFsZV9kYW5jZXJfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNTdhLTFmM2ZlIl0sZm5hbWU6IjFmNTdhLTFmM2ZlIix1YzoiMWY1N2EtMWYzZmUiLGlzQ2Fub25pY2FsOiExfSwiOm1hbl9kYW5jaW5nX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjU3YS0xZjNmZCJdLGZuYW1lOiIxZjU3YS0xZjNmZCIsdWM6IjFmNTdhLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjptYWxlX2RhbmNlcl90b25lMzoiOnt1bmljb2RlOlsiMWY1N2EtMWYzZmQiXSxmbmFtZToiMWY1N2EtMWYzZmQiLHVjOiIxZjU3YS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6bWFuX2RhbmNpbmdfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNTdhLTFmM2ZjIl0sZm5hbWU6IjFmNTdhLTFmM2ZjIix1YzoiMWY1N2EtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbGVfZGFuY2VyX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjU3YS0xZjNmYyJdLGZuYW1lOiIxZjU3YS0xZjNmYyIsdWM6IjFmNTdhLTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjptYW5fZGFuY2luZ190b25lMToiOnt1bmljb2RlOlsiMWY1N2EtMWYzZmIiXSxmbmFtZToiMWY1N2EtMWYzZmIiLHVjOiIxZjU3YS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bWFsZV9kYW5jZXJfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNTdhLTFmM2ZiIl0sZm5hbWU6IjFmNTdhLTFmM2ZiIix1YzoiMWY1N2EtMWYzZmIiLGlzQ2Fub25pY2FsOiExfSwiOnNweV90b25lNToiOnt1bmljb2RlOlsiMWY1NzUtMWYzZmYiXSxmbmFtZToiMWY1NzUtMWYzZmYiLHVjOiIxZjU3NS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6c2xldXRoX29yX3NweV90b25lNToiOnt1bmljb2RlOlsiMWY1NzUtMWYzZmYiXSxmbmFtZToiMWY1NzUtMWYzZmYiLHVjOiIxZjU3NS0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6c3B5X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjU3NS0xZjNmZSJdLGZuYW1lOiIxZjU3NS0xZjNmZSIsdWM6IjFmNTc1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpzbGV1dGhfb3Jfc3B5X3RvbmU0OiI6e3VuaWNvZGU6WyIxZjU3NS0xZjNmZSJdLGZuYW1lOiIxZjU3NS0xZjNmZSIsdWM6IjFmNTc1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpzcHlfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNTc1LTFmM2ZkIl0sZm5hbWU6IjFmNTc1LTFmM2ZkIix1YzoiMWY1NzUtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnNsZXV0aF9vcl9zcHlfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNTc1LTFmM2ZkIl0sZm5hbWU6IjFmNTc1LTFmM2ZkIix1YzoiMWY1NzUtMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOnNweV90b25lMjoiOnt1bmljb2RlOlsiMWY1NzUtMWYzZmMiXSxmbmFtZToiMWY1NzUtMWYzZmMiLHVjOiIxZjU3NS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6c2xldXRoX29yX3NweV90b25lMjoiOnt1bmljb2RlOlsiMWY1NzUtMWYzZmMiXSxmbmFtZToiMWY1NzUtMWYzZmMiLHVjOiIxZjU3NS0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6c3B5X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjU3NS0xZjNmYiJdLGZuYW1lOiIxZjU3NS0xZjNmYiIsdWM6IjFmNTc1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpzbGV1dGhfb3Jfc3B5X3RvbmUxOiI6e3VuaWNvZGU6WyIxZjU3NS0xZjNmYiJdLGZuYW1lOiIxZjU3NS0xZjNmYiIsdWM6IjFmNTc1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjptdXNjbGVfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNGFhLTFmM2ZmIl0sZm5hbWU6IjFmNGFhLTFmM2ZmIix1YzoiMWY0YWEtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm11c2NsZV90b25lNDoiOnt1bmljb2RlOlsiMWY0YWEtMWYzZmUiXSxmbmFtZToiMWY0YWEtMWYzZmUiLHVjOiIxZjRhYS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bXVzY2xlX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjRhYS0xZjNmZCJdLGZuYW1lOiIxZjRhYS0xZjNmZCIsdWM6IjFmNGFhLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjptdXNjbGVfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNGFhLTFmM2ZjIl0sZm5hbWU6IjFmNGFhLTFmM2ZjIix1YzoiMWY0YWEtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm11c2NsZV90b25lMToiOnt1bmljb2RlOlsiMWY0YWEtMWYzZmIiXSxmbmFtZToiMWY0YWEtMWYzZmIiLHVjOiIxZjRhYS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dF90b25lNToiOnt1bmljb2RlOlsiMWY0ODctMWYzZmYiXSxmbmFtZToiMWY0ODctMWYzZmYiLHVjOiIxZjQ4Ny0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dF90b25lNDoiOnt1bmljb2RlOlsiMWY0ODctMWYzZmUiXSxmbmFtZToiMWY0ODctMWYzZmUiLHVjOiIxZjQ4Ny0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dF90b25lMzoiOnt1bmljb2RlOlsiMWY0ODctMWYzZmQiXSxmbmFtZToiMWY0ODctMWYzZmQiLHVjOiIxZjQ4Ny0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dF90b25lMjoiOnt1bmljb2RlOlsiMWY0ODctMWYzZmMiXSxmbmFtZToiMWY0ODctMWYzZmMiLHVjOiIxZjQ4Ny0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dF90b25lMToiOnt1bmljb2RlOlsiMWY0ODctMWYzZmIiXSxmbmFtZToiMWY0ODctMWYzZmIiLHVjOiIxZjQ4Ny0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bWFzc2FnZV90b25lNToiOnt1bmljb2RlOlsiMWY0ODYtMWYzZmYiXSxmbmFtZToiMWY0ODYtMWYzZmYiLHVjOiIxZjQ4Ni0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6bWFzc2FnZV90b25lNDoiOnt1bmljb2RlOlsiMWY0ODYtMWYzZmUiXSxmbmFtZToiMWY0ODYtMWYzZmUiLHVjOiIxZjQ4Ni0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bWFzc2FnZV90b25lMzoiOnt1bmljb2RlOlsiMWY0ODYtMWYzZmQiXSxmbmFtZToiMWY0ODYtMWYzZmQiLHVjOiIxZjQ4Ni0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bWFzc2FnZV90b25lMjoiOnt1bmljb2RlOlsiMWY0ODYtMWYzZmMiXSxmbmFtZToiMWY0ODYtMWYzZmMiLHVjOiIxZjQ4Ni0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6bWFzc2FnZV90b25lMToiOnt1bmljb2RlOlsiMWY0ODYtMWYzZmIiXSxmbmFtZToiMWY0ODYtMWYzZmIiLHVjOiIxZjQ4Ni0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bmFpbF9jYXJlX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ4NS0xZjNmZiJdLGZuYW1lOiIxZjQ4NS0xZjNmZiIsdWM6IjFmNDg1LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpuYWlsX2NhcmVfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDg1LTFmM2ZlIl0sZm5hbWU6IjFmNDg1LTFmM2ZlIix1YzoiMWY0ODUtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm5haWxfY2FyZV90b25lMzoiOnt1bmljb2RlOlsiMWY0ODUtMWYzZmQiXSxmbmFtZToiMWY0ODUtMWYzZmQiLHVjOiIxZjQ4NS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bmFpbF9jYXJlX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ4NS0xZjNmYyJdLGZuYW1lOiIxZjQ4NS0xZjNmYyIsdWM6IjFmNDg1LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpuYWlsX2NhcmVfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDg1LTFmM2ZiIl0sZm5hbWU6IjFmNDg1LTFmM2ZiIix1YzoiMWY0ODUtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmRhbmNlcl90b25lNToiOnt1bmljb2RlOlsiMWY0ODMtMWYzZmYiXSxmbmFtZToiMWY0ODMtMWYzZmYiLHVjOiIxZjQ4My0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6ZGFuY2VyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ4My0xZjNmZSJdLGZuYW1lOiIxZjQ4My0xZjNmZSIsdWM6IjFmNDgzLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpkYW5jZXJfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDgzLTFmM2ZkIl0sZm5hbWU6IjFmNDgzLTFmM2ZkIix1YzoiMWY0ODMtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmRhbmNlcl90b25lMjoiOnt1bmljb2RlOlsiMWY0ODMtMWYzZmMiXSxmbmFtZToiMWY0ODMtMWYzZmMiLHVjOiIxZjQ4My0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6ZGFuY2VyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ4My0xZjNmYiJdLGZuYW1lOiIxZjQ4My0xZjNmYiIsdWM6IjFmNDgzLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpndWFyZHNtYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDgyLTFmM2ZmIl0sZm5hbWU6IjFmNDgyLTFmM2ZmIix1YzoiMWY0ODItMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmd1YXJkc21hbl90b25lNDoiOnt1bmljb2RlOlsiMWY0ODItMWYzZmUiXSxmbmFtZToiMWY0ODItMWYzZmUiLHVjOiIxZjQ4Mi0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6Z3VhcmRzbWFuX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ4Mi0xZjNmZCJdLGZuYW1lOiIxZjQ4Mi0xZjNmZCIsdWM6IjFmNDgyLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpndWFyZHNtYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDgyLTFmM2ZjIl0sZm5hbWU6IjFmNDgyLTFmM2ZjIix1YzoiMWY0ODItMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmd1YXJkc21hbl90b25lMToiOnt1bmljb2RlOlsiMWY0ODItMWYzZmIiXSxmbmFtZToiMWY0ODItMWYzZmIiLHVjOiIxZjQ4Mi0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6aW5mb3JtYXRpb25fZGVza19wZXJzb25fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDgxLTFmM2ZmIl0sZm5hbWU6IjFmNDgxLTFmM2ZmIix1YzoiMWY0ODEtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmluZm9ybWF0aW9uX2Rlc2tfcGVyc29uX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ4MS0xZjNmZSJdLGZuYW1lOiIxZjQ4MS0xZjNmZSIsdWM6IjFmNDgxLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjppbmZvcm1hdGlvbl9kZXNrX3BlcnNvbl90b25lMzoiOnt1bmljb2RlOlsiMWY0ODEtMWYzZmQiXSxmbmFtZToiMWY0ODEtMWYzZmQiLHVjOiIxZjQ4MS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6aW5mb3JtYXRpb25fZGVza19wZXJzb25fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDgxLTFmM2ZjIl0sZm5hbWU6IjFmNDgxLTFmM2ZjIix1YzoiMWY0ODEtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmluZm9ybWF0aW9uX2Rlc2tfcGVyc29uX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ4MS0xZjNmYiJdLGZuYW1lOiIxZjQ4MS0xZjNmYiIsdWM6IjFmNDgxLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjphbmdlbF90b25lNToiOnt1bmljb2RlOlsiMWY0N2MtMWYzZmYiXSxmbmFtZToiMWY0N2MtMWYzZmYiLHVjOiIxZjQ3Yy0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YW5nZWxfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDdjLTFmM2ZlIl0sZm5hbWU6IjFmNDdjLTFmM2ZlIix1YzoiMWY0N2MtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmFuZ2VsX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ3Yy0xZjNmZCJdLGZuYW1lOiIxZjQ3Yy0xZjNmZCIsdWM6IjFmNDdjLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjphbmdlbF90b25lMjoiOnt1bmljb2RlOlsiMWY0N2MtMWYzZmMiXSxmbmFtZToiMWY0N2MtMWYzZmMiLHVjOiIxZjQ3Yy0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YW5nZWxfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDdjLTFmM2ZiIl0sZm5hbWU6IjFmNDdjLTFmM2ZiIix1YzoiMWY0N2MtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnByaW5jZXNzX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ3OC0xZjNmZiJdLGZuYW1lOiIxZjQ3OC0xZjNmZiIsdWM6IjFmNDc4LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpwcmluY2Vzc190b25lNDoiOnt1bmljb2RlOlsiMWY0NzgtMWYzZmUiXSxmbmFtZToiMWY0NzgtMWYzZmUiLHVjOiIxZjQ3OC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cHJpbmNlc3NfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDc4LTFmM2ZkIl0sZm5hbWU6IjFmNDc4LTFmM2ZkIix1YzoiMWY0NzgtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnByaW5jZXNzX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ3OC0xZjNmYyJdLGZuYW1lOiIxZjQ3OC0xZjNmYyIsdWM6IjFmNDc4LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpwcmluY2Vzc190b25lMToiOnt1bmljb2RlOlsiMWY0NzgtMWYzZmIiXSxmbmFtZToiMWY0NzgtMWYzZmIiLHVjOiIxZjQ3OC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcl90b25lNToiOnt1bmljb2RlOlsiMWY0NzctMWYzZmYiXSxmbmFtZToiMWY0NzctMWYzZmYiLHVjOiIxZjQ3Ny0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcl90b25lNDoiOnt1bmljb2RlOlsiMWY0NzctMWYzZmUiXSxmbmFtZToiMWY0NzctMWYzZmUiLHVjOiIxZjQ3Ny0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcl90b25lMzoiOnt1bmljb2RlOlsiMWY0NzctMWYzZmQiXSxmbmFtZToiMWY0NzctMWYzZmQiLHVjOiIxZjQ3Ny0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcl90b25lMjoiOnt1bmljb2RlOlsiMWY0NzctMWYzZmMiXSxmbmFtZToiMWY0NzctMWYzZmMiLHVjOiIxZjQ3Ny0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcl90b25lMToiOnt1bmljb2RlOlsiMWY0NzctMWYzZmIiXSxmbmFtZToiMWY0NzctMWYzZmIiLHVjOiIxZjQ3Ny0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6YmFieV90b25lNToiOnt1bmljb2RlOlsiMWY0NzYtMWYzZmYiXSxmbmFtZToiMWY0NzYtMWYzZmYiLHVjOiIxZjQ3Ni0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YmFieV90b25lNDoiOnt1bmljb2RlOlsiMWY0NzYtMWYzZmUiXSxmbmFtZToiMWY0NzYtMWYzZmUiLHVjOiIxZjQ3Ni0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6YmFieV90b25lMzoiOnt1bmljb2RlOlsiMWY0NzYtMWYzZmQiXSxmbmFtZToiMWY0NzYtMWYzZmQiLHVjOiIxZjQ3Ni0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6YmFieV90b25lMjoiOnt1bmljb2RlOlsiMWY0NzYtMWYzZmMiXSxmbmFtZToiMWY0NzYtMWYzZmMiLHVjOiIxZjQ3Ni0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YmFieV90b25lMToiOnt1bmljb2RlOlsiMWY0NzYtMWYzZmIiXSxmbmFtZToiMWY0NzYtMWYzZmIiLHVjOiIxZjQ3Ni0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6b2xkZXJfd29tYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDc1LTFmM2ZmIl0sZm5hbWU6IjFmNDc1LTFmM2ZmIix1YzoiMWY0NzUtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmdyYW5kbWFfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDc1LTFmM2ZmIl0sZm5hbWU6IjFmNDc1LTFmM2ZmIix1YzoiMWY0NzUtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOm9sZGVyX3dvbWFuX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ3NS0xZjNmZSJdLGZuYW1lOiIxZjQ3NS0xZjNmZSIsdWM6IjFmNDc1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpncmFuZG1hX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ3NS0xZjNmZSJdLGZuYW1lOiIxZjQ3NS0xZjNmZSIsdWM6IjFmNDc1LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpvbGRlcl93b21hbl90b25lMzoiOnt1bmljb2RlOlsiMWY0NzUtMWYzZmQiXSxmbmFtZToiMWY0NzUtMWYzZmQiLHVjOiIxZjQ3NS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6Z3JhbmRtYV90b25lMzoiOnt1bmljb2RlOlsiMWY0NzUtMWYzZmQiXSxmbmFtZToiMWY0NzUtMWYzZmQiLHVjOiIxZjQ3NS0xZjNmZCIsaXNDYW5vbmljYWw6ITF9LCI6b2xkZXJfd29tYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDc1LTFmM2ZjIl0sZm5hbWU6IjFmNDc1LTFmM2ZjIix1YzoiMWY0NzUtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmdyYW5kbWFfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDc1LTFmM2ZjIl0sZm5hbWU6IjFmNDc1LTFmM2ZjIix1YzoiMWY0NzUtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOm9sZGVyX3dvbWFuX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ3NS0xZjNmYiJdLGZuYW1lOiIxZjQ3NS0xZjNmYiIsdWM6IjFmNDc1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpncmFuZG1hX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ3NS0xZjNmYiJdLGZuYW1lOiIxZjQ3NS0xZjNmYiIsdWM6IjFmNDc1LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpvbGRlcl9tYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDc0LTFmM2ZmIl0sZm5hbWU6IjFmNDc0LTFmM2ZmIix1YzoiMWY0NzQtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm9sZGVyX21hbl90b25lNDoiOnt1bmljb2RlOlsiMWY0NzQtMWYzZmUiXSxmbmFtZToiMWY0NzQtMWYzZmUiLHVjOiIxZjQ3NC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6b2xkZXJfbWFuX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ3NC0xZjNmZCJdLGZuYW1lOiIxZjQ3NC0xZjNmZCIsdWM6IjFmNDc0LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpvbGRlcl9tYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDc0LTFmM2ZjIl0sZm5hbWU6IjFmNDc0LTFmM2ZjIix1YzoiMWY0NzQtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm9sZGVyX21hbl90b25lMToiOnt1bmljb2RlOlsiMWY0NzQtMWYzZmIiXSxmbmFtZToiMWY0NzQtMWYzZmIiLHVjOiIxZjQ3NC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bWFuX3dpdGhfdHVyYmFuX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ3My0xZjNmZiJdLGZuYW1lOiIxZjQ3My0xZjNmZiIsdWM6IjFmNDczLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjptYW5fd2l0aF90dXJiYW5fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDczLTFmM2ZlIl0sZm5hbWU6IjFmNDczLTFmM2ZlIix1YzoiMWY0NzMtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX3R1cmJhbl90b25lMzoiOnt1bmljb2RlOlsiMWY0NzMtMWYzZmQiXSxmbmFtZToiMWY0NzMtMWYzZmQiLHVjOiIxZjQ3My0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bWFuX3dpdGhfdHVyYmFuX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ3My0xZjNmYyJdLGZuYW1lOiIxZjQ3My0xZjNmYyIsdWM6IjFmNDczLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjptYW5fd2l0aF90dXJiYW5fdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDczLTFmM2ZiIl0sZm5hbWU6IjFmNDczLTFmM2ZiIix1YzoiMWY0NzMtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW9fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDcyLTFmM2ZmIl0sZm5hbWU6IjFmNDcyLTFmM2ZmIix1YzoiMWY0NzItMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW9fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDcyLTFmM2ZlIl0sZm5hbWU6IjFmNDcyLTFmM2ZlIix1YzoiMWY0NzItMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW9fdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDcyLTFmM2ZkIl0sZm5hbWU6IjFmNDcyLTFmM2ZkIix1YzoiMWY0NzItMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW9fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDcyLTFmM2ZjIl0sZm5hbWU6IjFmNDcyLTFmM2ZjIix1YzoiMWY0NzItMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW9fdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDcyLTFmM2ZiIl0sZm5hbWU6IjFmNDcyLTFmM2ZiIix1YzoiMWY0NzItMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXJfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDcxLTFmM2ZmIl0sZm5hbWU6IjFmNDcxLTFmM2ZmIix1YzoiMWY0NzEtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXJfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDcxLTFmM2ZlIl0sZm5hbWU6IjFmNDcxLTFmM2ZlIix1YzoiMWY0NzEtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXJfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDcxLTFmM2ZkIl0sZm5hbWU6IjFmNDcxLTFmM2ZkIix1YzoiMWY0NzEtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXJfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDcxLTFmM2ZjIl0sZm5hbWU6IjFmNDcxLTFmM2ZjIix1YzoiMWY0NzEtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXJfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDcxLTFmM2ZiIl0sZm5hbWU6IjFmNDcxLTFmM2ZiIix1YzoiMWY0NzEtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmJyaWRlX3dpdGhfdmVpbF90b25lNToiOnt1bmljb2RlOlsiMWY0NzAtMWYzZmYiXSxmbmFtZToiMWY0NzAtMWYzZmYiLHVjOiIxZjQ3MC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6YnJpZGVfd2l0aF92ZWlsX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ3MC0xZjNmZSJdLGZuYW1lOiIxZjQ3MC0xZjNmZSIsdWM6IjFmNDcwLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpicmlkZV93aXRoX3ZlaWxfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDcwLTFmM2ZkIl0sZm5hbWU6IjFmNDcwLTFmM2ZkIix1YzoiMWY0NzAtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmJyaWRlX3dpdGhfdmVpbF90b25lMjoiOnt1bmljb2RlOlsiMWY0NzAtMWYzZmMiXSxmbmFtZToiMWY0NzAtMWYzZmMiLHVjOiIxZjQ3MC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6YnJpZGVfd2l0aF92ZWlsX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ3MC0xZjNmYiJdLGZuYW1lOiIxZjQ3MC0xZjNmYiIsdWM6IjFmNDcwLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpjb3BfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDZlLTFmM2ZmIl0sZm5hbWU6IjFmNDZlLTFmM2ZmIix1YzoiMWY0NmUtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmNvcF90b25lNDoiOnt1bmljb2RlOlsiMWY0NmUtMWYzZmUiXSxmbmFtZToiMWY0NmUtMWYzZmUiLHVjOiIxZjQ2ZS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6Y29wX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ2ZS0xZjNmZCJdLGZuYW1lOiIxZjQ2ZS0xZjNmZCIsdWM6IjFmNDZlLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpjb3BfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDZlLTFmM2ZjIl0sZm5hbWU6IjFmNDZlLTFmM2ZjIix1YzoiMWY0NmUtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmNvcF90b25lMToiOnt1bmljb2RlOlsiMWY0NmUtMWYzZmIiXSxmbmFtZToiMWY0NmUtMWYzZmIiLHVjOiIxZjQ2ZS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6d29tYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDY5LTFmM2ZmIl0sZm5hbWU6IjFmNDY5LTFmM2ZmIix1YzoiMWY0NjktMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOndvbWFuX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ2OS0xZjNmZSJdLGZuYW1lOiIxZjQ2OS0xZjNmZSIsdWM6IjFmNDY5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp3b21hbl90b25lMzoiOnt1bmljb2RlOlsiMWY0NjktMWYzZmQiXSxmbmFtZToiMWY0NjktMWYzZmQiLHVjOiIxZjQ2OS0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6d29tYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDY5LTFmM2ZjIl0sZm5hbWU6IjFmNDY5LTFmM2ZjIix1YzoiMWY0NjktMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOndvbWFuX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ2OS0xZjNmYiJdLGZuYW1lOiIxZjQ2OS0xZjNmYiIsdWM6IjFmNDY5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjptYW5fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDY4LTFmM2ZmIl0sZm5hbWU6IjFmNDY4LTFmM2ZmIix1YzoiMWY0NjgtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl90b25lNDoiOnt1bmljb2RlOlsiMWY0NjgtMWYzZmUiXSxmbmFtZToiMWY0NjgtMWYzZmUiLHVjOiIxZjQ2OC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bWFuX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ2OC0xZjNmZCJdLGZuYW1lOiIxZjQ2OC0xZjNmZCIsdWM6IjFmNDY4LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjptYW5fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDY4LTFmM2ZjIl0sZm5hbWU6IjFmNDY4LTFmM2ZjIix1YzoiMWY0NjgtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl90b25lMToiOnt1bmljb2RlOlsiMWY0NjgtMWYzZmIiXSxmbmFtZToiMWY0NjgtMWYzZmIiLHVjOiIxZjQ2OC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6Z2lybF90b25lNToiOnt1bmljb2RlOlsiMWY0NjctMWYzZmYiXSxmbmFtZToiMWY0NjctMWYzZmYiLHVjOiIxZjQ2Ny0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6Z2lybF90b25lNDoiOnt1bmljb2RlOlsiMWY0NjctMWYzZmUiXSxmbmFtZToiMWY0NjctMWYzZmUiLHVjOiIxZjQ2Ny0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6Z2lybF90b25lMzoiOnt1bmljb2RlOlsiMWY0NjctMWYzZmQiXSxmbmFtZToiMWY0NjctMWYzZmQiLHVjOiIxZjQ2Ny0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6Z2lybF90b25lMjoiOnt1bmljb2RlOlsiMWY0NjctMWYzZmMiXSxmbmFtZToiMWY0NjctMWYzZmMiLHVjOiIxZjQ2Ny0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6Z2lybF90b25lMToiOnt1bmljb2RlOlsiMWY0NjctMWYzZmIiXSxmbmFtZToiMWY0NjctMWYzZmIiLHVjOiIxZjQ2Ny0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6Ym95X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ2Ni0xZjNmZiJdLGZuYW1lOiIxZjQ2Ni0xZjNmZiIsdWM6IjFmNDY2LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpib3lfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDY2LTFmM2ZlIl0sZm5hbWU6IjFmNDY2LTFmM2ZlIix1YzoiMWY0NjYtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmJveV90b25lMzoiOnt1bmljb2RlOlsiMWY0NjYtMWYzZmQiXSxmbmFtZToiMWY0NjYtMWYzZmQiLHVjOiIxZjQ2Ni0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6Ym95X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ2Ni0xZjNmYyJdLGZuYW1lOiIxZjQ2Ni0xZjNmYyIsdWM6IjFmNDY2LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpib3lfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDY2LTFmM2ZiIl0sZm5hbWU6IjFmNDY2LTFmM2ZiIix1YzoiMWY0NjYtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHNfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDUwLTFmM2ZmIl0sZm5hbWU6IjFmNDUwLTFmM2ZmIix1YzoiMWY0NTAtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHNfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDUwLTFmM2ZlIl0sZm5hbWU6IjFmNDUwLTFmM2ZlIix1YzoiMWY0NTAtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHNfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDUwLTFmM2ZkIl0sZm5hbWU6IjFmNDUwLTFmM2ZkIix1YzoiMWY0NTAtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHNfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDUwLTFmM2ZjIl0sZm5hbWU6IjFmNDUwLTFmM2ZjIix1YzoiMWY0NTAtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHNfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDUwLTFmM2ZiIl0sZm5hbWU6IjFmNDUwLTFmM2ZiIix1YzoiMWY0NTAtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmNsYXBfdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDRmLTFmM2ZmIl0sZm5hbWU6IjFmNDRmLTFmM2ZmIix1YzoiMWY0NGYtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmNsYXBfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDRmLTFmM2ZlIl0sZm5hbWU6IjFmNDRmLTFmM2ZlIix1YzoiMWY0NGYtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmNsYXBfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDRmLTFmM2ZkIl0sZm5hbWU6IjFmNDRmLTFmM2ZkIix1YzoiMWY0NGYtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmNsYXBfdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDRmLTFmM2ZjIl0sZm5hbWU6IjFmNDRmLTFmM2ZjIix1YzoiMWY0NGYtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmNsYXBfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDRmLTFmM2ZiIl0sZm5hbWU6IjFmNDRmLTFmM2ZiIix1YzoiMWY0NGYtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnRodW1ic2Rvd25fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZmIl0sZm5hbWU6IjFmNDRlLTFmM2ZmIix1YzoiMWY0NGUtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOi0xX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0ZS0xZjNmZiJdLGZuYW1lOiIxZjQ0ZS0xZjNmZiIsdWM6IjFmNDRlLTFmM2ZmIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd25fdG9uZTU6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZmIl0sZm5hbWU6IjFmNDRlLTFmM2ZmIix1YzoiMWY0NGUtMWYzZmYiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic2Rvd25fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZlIl0sZm5hbWU6IjFmNDRlLTFmM2ZlIix1YzoiMWY0NGUtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOi0xX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ0ZS0xZjNmZSJdLGZuYW1lOiIxZjQ0ZS0xZjNmZSIsdWM6IjFmNDRlLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd25fdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZlIl0sZm5hbWU6IjFmNDRlLTFmM2ZlIix1YzoiMWY0NGUtMWYzZmUiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic2Rvd25fdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZkIl0sZm5hbWU6IjFmNDRlLTFmM2ZkIix1YzoiMWY0NGUtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOi0xX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ0ZS0xZjNmZCJdLGZuYW1lOiIxZjQ0ZS0xZjNmZCIsdWM6IjFmNDRlLTFmM2ZkIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd25fdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZkIl0sZm5hbWU6IjFmNDRlLTFmM2ZkIix1YzoiMWY0NGUtMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic2Rvd25fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZjIl0sZm5hbWU6IjFmNDRlLTFmM2ZjIix1YzoiMWY0NGUtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOi0xX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0ZS0xZjNmYyJdLGZuYW1lOiIxZjQ0ZS0xZjNmYyIsdWM6IjFmNDRlLTFmM2ZjIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd25fdG9uZTI6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZjIl0sZm5hbWU6IjFmNDRlLTFmM2ZjIix1YzoiMWY0NGUtMWYzZmMiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic2Rvd25fdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZiIl0sZm5hbWU6IjFmNDRlLTFmM2ZiIix1YzoiMWY0NGUtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOi0xX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ0ZS0xZjNmYiJdLGZuYW1lOiIxZjQ0ZS0xZjNmYiIsdWM6IjFmNDRlLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd25fdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDRlLTFmM2ZiIl0sZm5hbWU6IjFmNDRlLTFmM2ZiIix1YzoiMWY0NGUtMWYzZmIiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic3VwX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmZiJdLGZuYW1lOiIxZjQ0ZC0xZjNmZiIsdWM6IjFmNDRkLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjorMV90b25lNToiOnt1bmljb2RlOlsiMWY0NGQtMWYzZmYiXSxmbmFtZToiMWY0NGQtMWYzZmYiLHVjOiIxZjQ0ZC0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6dGh1bWJ1cF90b25lNToiOnt1bmljb2RlOlsiMWY0NGQtMWYzZmYiXSxmbmFtZToiMWY0NGQtMWYzZmYiLHVjOiIxZjQ0ZC0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6dGh1bWJzdXBfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDRkLTFmM2ZlIl0sZm5hbWU6IjFmNDRkLTFmM2ZlIix1YzoiMWY0NGQtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOisxX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmZSJdLGZuYW1lOiIxZjQ0ZC0xZjNmZSIsdWM6IjFmNDRkLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYnVwX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmZSJdLGZuYW1lOiIxZjQ0ZC0xZjNmZSIsdWM6IjFmNDRkLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYnN1cF90b25lMzoiOnt1bmljb2RlOlsiMWY0NGQtMWYzZmQiXSxmbmFtZToiMWY0NGQtMWYzZmQiLHVjOiIxZjQ0ZC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6KzFfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDRkLTFmM2ZkIl0sZm5hbWU6IjFmNDRkLTFmM2ZkIix1YzoiMWY0NGQtMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1idXBfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDRkLTFmM2ZkIl0sZm5hbWU6IjFmNDRkLTFmM2ZkIix1YzoiMWY0NGQtMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic3VwX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmYyJdLGZuYW1lOiIxZjQ0ZC0xZjNmYyIsdWM6IjFmNDRkLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjorMV90b25lMjoiOnt1bmljb2RlOlsiMWY0NGQtMWYzZmMiXSxmbmFtZToiMWY0NGQtMWYzZmMiLHVjOiIxZjQ0ZC0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6dGh1bWJ1cF90b25lMjoiOnt1bmljb2RlOlsiMWY0NGQtMWYzZmMiXSxmbmFtZToiMWY0NGQtMWYzZmMiLHVjOiIxZjQ0ZC0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6dGh1bWJzdXBfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDRkLTFmM2ZiIl0sZm5hbWU6IjFmNDRkLTFmM2ZiIix1YzoiMWY0NGQtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOisxX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmYiJdLGZuYW1lOiIxZjQ0ZC0xZjNmYiIsdWM6IjFmNDRkLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYnVwX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ0ZC0xZjNmYiJdLGZuYW1lOiIxZjQ0ZC0xZjNmYiIsdWM6IjFmNDRkLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpva19oYW5kX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0Yy0xZjNmZiJdLGZuYW1lOiIxZjQ0Yy0xZjNmZiIsdWM6IjFmNDRjLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpva19oYW5kX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ0Yy0xZjNmZSJdLGZuYW1lOiIxZjQ0Yy0xZjNmZSIsdWM6IjFmNDRjLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpva19oYW5kX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ0Yy0xZjNmZCJdLGZuYW1lOiIxZjQ0Yy0xZjNmZCIsdWM6IjFmNDRjLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpva19oYW5kX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0Yy0xZjNmYyJdLGZuYW1lOiIxZjQ0Yy0xZjNmYyIsdWM6IjFmNDRjLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpva19oYW5kX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ0Yy0xZjNmYiJdLGZuYW1lOiIxZjQ0Yy0xZjNmYiIsdWM6IjFmNDRjLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0Yi0xZjNmZiJdLGZuYW1lOiIxZjQ0Yi0xZjNmZiIsdWM6IjFmNDRiLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjQ0Yi0xZjNmZSJdLGZuYW1lOiIxZjQ0Yi0xZjNmZSIsdWM6IjFmNDRiLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ0Yi0xZjNmZCJdLGZuYW1lOiIxZjQ0Yi0xZjNmZCIsdWM6IjFmNDRiLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0Yi0xZjNmYyJdLGZuYW1lOiIxZjQ0Yi0xZjNmYyIsdWM6IjFmNDRiLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjQ0Yi0xZjNmYiJdLGZuYW1lOiIxZjQ0Yi0xZjNmYiIsdWM6IjFmNDRiLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpwdW5jaF90b25lNToiOnt1bmljb2RlOlsiMWY0NGEtMWYzZmYiXSxmbmFtZToiMWY0NGEtMWYzZmYiLHVjOiIxZjQ0YS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cHVuY2hfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDRhLTFmM2ZlIl0sZm5hbWU6IjFmNDRhLTFmM2ZlIix1YzoiMWY0NGEtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnB1bmNoX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjQ0YS0xZjNmZCJdLGZuYW1lOiIxZjQ0YS0xZjNmZCIsdWM6IjFmNDRhLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpwdW5jaF90b25lMjoiOnt1bmljb2RlOlsiMWY0NGEtMWYzZmMiXSxmbmFtZToiMWY0NGEtMWYzZmMiLHVjOiIxZjQ0YS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cHVuY2hfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDRhLTFmM2ZiIl0sZm5hbWU6IjFmNDRhLTFmM2ZiIix1YzoiMWY0NGEtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnBvaW50X3JpZ2h0X3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0OS0xZjNmZiJdLGZuYW1lOiIxZjQ0OS0xZjNmZiIsdWM6IjFmNDQ5LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpwb2ludF9yaWdodF90b25lNDoiOnt1bmljb2RlOlsiMWY0NDktMWYzZmUiXSxmbmFtZToiMWY0NDktMWYzZmUiLHVjOiIxZjQ0OS0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfcmlnaHRfdG9uZTM6Ijp7dW5pY29kZTpbIjFmNDQ5LTFmM2ZkIl0sZm5hbWU6IjFmNDQ5LTFmM2ZkIix1YzoiMWY0NDktMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnBvaW50X3JpZ2h0X3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0OS0xZjNmYyJdLGZuYW1lOiIxZjQ0OS0xZjNmYyIsdWM6IjFmNDQ5LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpwb2ludF9yaWdodF90b25lMToiOnt1bmljb2RlOlsiMWY0NDktMWYzZmIiXSxmbmFtZToiMWY0NDktMWYzZmIiLHVjOiIxZjQ0OS0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdF90b25lNToiOnt1bmljb2RlOlsiMWY0NDgtMWYzZmYiXSxmbmFtZToiMWY0NDgtMWYzZmYiLHVjOiIxZjQ0OC0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdF90b25lNDoiOnt1bmljb2RlOlsiMWY0NDgtMWYzZmUiXSxmbmFtZToiMWY0NDgtMWYzZmUiLHVjOiIxZjQ0OC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdF90b25lMzoiOnt1bmljb2RlOlsiMWY0NDgtMWYzZmQiXSxmbmFtZToiMWY0NDgtMWYzZmQiLHVjOiIxZjQ0OC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdF90b25lMjoiOnt1bmljb2RlOlsiMWY0NDgtMWYzZmMiXSxmbmFtZToiMWY0NDgtMWYzZmMiLHVjOiIxZjQ0OC0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdF90b25lMToiOnt1bmljb2RlOlsiMWY0NDgtMWYzZmIiXSxmbmFtZToiMWY0NDgtMWYzZmIiLHVjOiIxZjQ0OC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bl90b25lNToiOnt1bmljb2RlOlsiMWY0NDctMWYzZmYiXSxmbmFtZToiMWY0NDctMWYzZmYiLHVjOiIxZjQ0Ny0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bl90b25lNDoiOnt1bmljb2RlOlsiMWY0NDctMWYzZmUiXSxmbmFtZToiMWY0NDctMWYzZmUiLHVjOiIxZjQ0Ny0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bl90b25lMzoiOnt1bmljb2RlOlsiMWY0NDctMWYzZmQiXSxmbmFtZToiMWY0NDctMWYzZmQiLHVjOiIxZjQ0Ny0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bl90b25lMjoiOnt1bmljb2RlOlsiMWY0NDctMWYzZmMiXSxmbmFtZToiMWY0NDctMWYzZmMiLHVjOiIxZjQ0Ny0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bl90b25lMToiOnt1bmljb2RlOlsiMWY0NDctMWYzZmIiXSxmbmFtZToiMWY0NDctMWYzZmIiLHVjOiIxZjQ0Ny0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMl90b25lNToiOnt1bmljb2RlOlsiMWY0NDYtMWYzZmYiXSxmbmFtZToiMWY0NDYtMWYzZmYiLHVjOiIxZjQ0Ni0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMl90b25lNDoiOnt1bmljb2RlOlsiMWY0NDYtMWYzZmUiXSxmbmFtZToiMWY0NDYtMWYzZmUiLHVjOiIxZjQ0Ni0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMl90b25lMzoiOnt1bmljb2RlOlsiMWY0NDYtMWYzZmQiXSxmbmFtZToiMWY0NDYtMWYzZmQiLHVjOiIxZjQ0Ni0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMl90b25lMjoiOnt1bmljb2RlOlsiMWY0NDYtMWYzZmMiXSxmbmFtZToiMWY0NDYtMWYzZmMiLHVjOiIxZjQ0Ni0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMl90b25lMToiOnt1bmljb2RlOlsiMWY0NDYtMWYzZmIiXSxmbmFtZToiMWY0NDYtMWYzZmIiLHVjOiIxZjQ0Ni0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6bm9zZV90b25lNToiOnt1bmljb2RlOlsiMWY0NDMtMWYzZmYiXSxmbmFtZToiMWY0NDMtMWYzZmYiLHVjOiIxZjQ0My0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6bm9zZV90b25lNDoiOnt1bmljb2RlOlsiMWY0NDMtMWYzZmUiXSxmbmFtZToiMWY0NDMtMWYzZmUiLHVjOiIxZjQ0My0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6bm9zZV90b25lMzoiOnt1bmljb2RlOlsiMWY0NDMtMWYzZmQiXSxmbmFtZToiMWY0NDMtMWYzZmQiLHVjOiIxZjQ0My0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6bm9zZV90b25lMjoiOnt1bmljb2RlOlsiMWY0NDMtMWYzZmMiXSxmbmFtZToiMWY0NDMtMWYzZmMiLHVjOiIxZjQ0My0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6bm9zZV90b25lMToiOnt1bmljb2RlOlsiMWY0NDMtMWYzZmIiXSxmbmFtZToiMWY0NDMtMWYzZmIiLHVjOiIxZjQ0My0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6ZWFyX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjQ0Mi0xZjNmZiJdLGZuYW1lOiIxZjQ0Mi0xZjNmZiIsdWM6IjFmNDQyLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjplYXJfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmNDQyLTFmM2ZlIl0sZm5hbWU6IjFmNDQyLTFmM2ZlIix1YzoiMWY0NDItMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmVhcl90b25lMzoiOnt1bmljb2RlOlsiMWY0NDItMWYzZmQiXSxmbmFtZToiMWY0NDItMWYzZmQiLHVjOiIxZjQ0Mi0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6ZWFyX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjQ0Mi0xZjNmYyJdLGZuYW1lOiIxZjQ0Mi0xZjNmYyIsdWM6IjFmNDQyLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjplYXJfdG9uZTE6Ijp7dW5pY29kZTpbIjFmNDQyLTFmM2ZiIl0sZm5hbWU6IjFmNDQyLTFmM2ZiIix1YzoiMWY0NDItMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmxpZnRlcl90b25lNToiOnt1bmljb2RlOlsiMWYzY2ItMWYzZmYiXSxmbmFtZToiMWYzY2ItMWYzZmYiLHVjOiIxZjNjYi0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6d2VpZ2h0X2xpZnRlcl90b25lNToiOnt1bmljb2RlOlsiMWYzY2ItMWYzZmYiXSxmbmFtZToiMWYzY2ItMWYzZmYiLHVjOiIxZjNjYi0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6bGlmdGVyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjNjYi0xZjNmZSJdLGZuYW1lOiIxZjNjYi0xZjNmZSIsdWM6IjFmM2NiLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp3ZWlnaHRfbGlmdGVyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjNjYi0xZjNmZSJdLGZuYW1lOiIxZjNjYi0xZjNmZSIsdWM6IjFmM2NiLTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpsaWZ0ZXJfdG9uZTM6Ijp7dW5pY29kZTpbIjFmM2NiLTFmM2ZkIl0sZm5hbWU6IjFmM2NiLTFmM2ZkIix1YzoiMWYzY2ItMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOndlaWdodF9saWZ0ZXJfdG9uZTM6Ijp7dW5pY29kZTpbIjFmM2NiLTFmM2ZkIl0sZm5hbWU6IjFmM2NiLTFmM2ZkIix1YzoiMWYzY2ItMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOmxpZnRlcl90b25lMjoiOnt1bmljb2RlOlsiMWYzY2ItMWYzZmMiXSxmbmFtZToiMWYzY2ItMWYzZmMiLHVjOiIxZjNjYi0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6d2VpZ2h0X2xpZnRlcl90b25lMjoiOnt1bmljb2RlOlsiMWYzY2ItMWYzZmMiXSxmbmFtZToiMWYzY2ItMWYzZmMiLHVjOiIxZjNjYi0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6bGlmdGVyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjNjYi0xZjNmYiJdLGZuYW1lOiIxZjNjYi0xZjNmYiIsdWM6IjFmM2NiLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjp3ZWlnaHRfbGlmdGVyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjNjYi0xZjNmYiJdLGZuYW1lOiIxZjNjYi0xZjNmYiIsdWM6IjFmM2NiLTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpzd2ltbWVyX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjNjYS0xZjNmZiJdLGZuYW1lOiIxZjNjYS0xZjNmZiIsdWM6IjFmM2NhLTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpzd2ltbWVyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjNjYS0xZjNmZSJdLGZuYW1lOiIxZjNjYS0xZjNmZSIsdWM6IjFmM2NhLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpzd2ltbWVyX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjNjYS0xZjNmZCJdLGZuYW1lOiIxZjNjYS0xZjNmZCIsdWM6IjFmM2NhLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpzd2ltbWVyX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjNjYS0xZjNmYyJdLGZuYW1lOiIxZjNjYS0xZjNmYyIsdWM6IjFmM2NhLTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpzd2ltbWVyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjNjYS0xZjNmYiJdLGZuYW1lOiIxZjNjYS0xZjNmYiIsdWM6IjFmM2NhLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpob3JzZV9yYWNpbmdfdG9uZTU6Ijp7dW5pY29kZTpbIjFmM2M3LTFmM2ZmIl0sZm5hbWU6IjFmM2M3LTFmM2ZmIix1YzoiMWYzYzctMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmhvcnNlX3JhY2luZ190b25lNDoiOnt1bmljb2RlOlsiMWYzYzctMWYzZmUiXSxmbmFtZToiMWYzYzctMWYzZmUiLHVjOiIxZjNjNy0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6aG9yc2VfcmFjaW5nX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjNjNy0xZjNmZCJdLGZuYW1lOiIxZjNjNy0xZjNmZCIsdWM6IjFmM2M3LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpob3JzZV9yYWNpbmdfdG9uZTI6Ijp7dW5pY29kZTpbIjFmM2M3LTFmM2ZjIl0sZm5hbWU6IjFmM2M3LTFmM2ZjIix1YzoiMWYzYzctMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmhvcnNlX3JhY2luZ190b25lMToiOnt1bmljb2RlOlsiMWYzYzctMWYzZmIiXSxmbmFtZToiMWYzYzctMWYzZmIiLHVjOiIxZjNjNy0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6c3VyZmVyX3RvbmU1OiI6e3VuaWNvZGU6WyIxZjNjNC0xZjNmZiJdLGZuYW1lOiIxZjNjNC0xZjNmZiIsdWM6IjFmM2M0LTFmM2ZmIixpc0Nhbm9uaWNhbDohMH0sIjpzdXJmZXJfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmM2M0LTFmM2ZlIl0sZm5hbWU6IjFmM2M0LTFmM2ZlIix1YzoiMWYzYzQtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnN1cmZlcl90b25lMzoiOnt1bmljb2RlOlsiMWYzYzQtMWYzZmQiXSxmbmFtZToiMWYzYzQtMWYzZmQiLHVjOiIxZjNjNC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6c3VyZmVyX3RvbmUyOiI6e3VuaWNvZGU6WyIxZjNjNC0xZjNmYyJdLGZuYW1lOiIxZjNjNC0xZjNmYyIsdWM6IjFmM2M0LTFmM2ZjIixpc0Nhbm9uaWNhbDohMH0sIjpzdXJmZXJfdG9uZTE6Ijp7dW5pY29kZTpbIjFmM2M0LTFmM2ZiIl0sZm5hbWU6IjFmM2M0LTFmM2ZiIix1YzoiMWYzYzQtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnJ1bm5lcl90b25lNToiOnt1bmljb2RlOlsiMWYzYzMtMWYzZmYiXSxmbmFtZToiMWYzYzMtMWYzZmYiLHVjOiIxZjNjMy0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cnVubmVyX3RvbmU0OiI6e3VuaWNvZGU6WyIxZjNjMy0xZjNmZSJdLGZuYW1lOiIxZjNjMy0xZjNmZSIsdWM6IjFmM2MzLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpydW5uZXJfdG9uZTM6Ijp7dW5pY29kZTpbIjFmM2MzLTFmM2ZkIl0sZm5hbWU6IjFmM2MzLTFmM2ZkIix1YzoiMWYzYzMtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnJ1bm5lcl90b25lMjoiOnt1bmljb2RlOlsiMWYzYzMtMWYzZmMiXSxmbmFtZToiMWYzYzMtMWYzZmMiLHVjOiIxZjNjMy0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cnVubmVyX3RvbmUxOiI6e3VuaWNvZGU6WyIxZjNjMy0xZjNmYiJdLGZuYW1lOiIxZjNjMy0xZjNmYiIsdWM6IjFmM2MzLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpzYW50YV90b25lNToiOnt1bmljb2RlOlsiMWYzODUtMWYzZmYiXSxmbmFtZToiMWYzODUtMWYzZmYiLHVjOiIxZjM4NS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6c2FudGFfdG9uZTQ6Ijp7dW5pY29kZTpbIjFmMzg1LTFmM2ZlIl0sZm5hbWU6IjFmMzg1LTFmM2ZlIix1YzoiMWYzODUtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnNhbnRhX3RvbmUzOiI6e3VuaWNvZGU6WyIxZjM4NS0xZjNmZCJdLGZuYW1lOiIxZjM4NS0xZjNmZCIsdWM6IjFmMzg1LTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpzYW50YV90b25lMjoiOnt1bmljb2RlOlsiMWYzODUtMWYzZmMiXSxmbmFtZToiMWYzODUtMWYzZmMiLHVjOiIxZjM4NS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6c2FudGFfdG9uZTE6Ijp7dW5pY29kZTpbIjFmMzg1LTFmM2ZiIl0sZm5hbWU6IjFmMzg1LTFmM2ZiIix1YzoiMWYzODUtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmZsYWdfenc6Ijp7dW5pY29kZTpbIjFmMWZmLTFmMWZjIl0sZm5hbWU6IjFmMWZmLTFmMWZjIix1YzoiMWYxZmYtMWYxZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnp3OiI6e3VuaWNvZGU6WyIxZjFmZi0xZjFmYyJdLGZuYW1lOiIxZjFmZi0xZjFmYyIsdWM6IjFmMWZmLTFmMWZjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3ptOiI6e3VuaWNvZGU6WyIxZjFmZi0xZjFmMiJdLGZuYW1lOiIxZjFmZi0xZjFmMiIsdWM6IjFmMWZmLTFmMWYyIixpc0Nhbm9uaWNhbDohMH0sIjp6bToiOnt1bmljb2RlOlsiMWYxZmYtMWYxZjIiXSxmbmFtZToiMWYxZmYtMWYxZjIiLHVjOiIxZjFmZi0xZjFmMiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ196YToiOnt1bmljb2RlOlsiMWYxZmYtMWYxZTYiXSxmbmFtZToiMWYxZmYtMWYxZTYiLHVjOiIxZjFmZi0xZjFlNiIsaXNDYW5vbmljYWw6ITB9LCI6emE6Ijp7dW5pY29kZTpbIjFmMWZmLTFmMWU2Il0sZm5hbWU6IjFmMWZmLTFmMWU2Iix1YzoiMWYxZmYtMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfeXQ6Ijp7dW5pY29kZTpbIjFmMWZlLTFmMWY5Il0sZm5hbWU6IjFmMWZlLTFmMWY5Iix1YzoiMWYxZmUtMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOnl0OiI6e3VuaWNvZGU6WyIxZjFmZS0xZjFmOSJdLGZuYW1lOiIxZjFmZS0xZjFmOSIsdWM6IjFmMWZlLTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3llOiI6e3VuaWNvZGU6WyIxZjFmZS0xZjFlYSJdLGZuYW1lOiIxZjFmZS0xZjFlYSIsdWM6IjFmMWZlLTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjp5ZToiOnt1bmljb2RlOlsiMWYxZmUtMWYxZWEiXSxmbmFtZToiMWYxZmUtMWYxZWEiLHVjOiIxZjFmZS0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ194azoiOnt1bmljb2RlOlsiMWYxZmQtMWYxZjAiXSxmbmFtZToiMWYxZmQtMWYxZjAiLHVjOiIxZjFmZC0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6eGs6Ijp7dW5pY29kZTpbIjFmMWZkLTFmMWYwIl0sZm5hbWU6IjFmMWZkLTFmMWYwIix1YzoiMWYxZmQtMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfd3M6Ijp7dW5pY29kZTpbIjFmMWZjLTFmMWY4Il0sZm5hbWU6IjFmMWZjLTFmMWY4Iix1YzoiMWYxZmMtMWYxZjgiLGlzQ2Fub25pY2FsOiEwfSwiOndzOiI6e3VuaWNvZGU6WyIxZjFmYy0xZjFmOCJdLGZuYW1lOiIxZjFmYy0xZjFmOCIsdWM6IjFmMWZjLTFmMWY4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3dmOiI6e3VuaWNvZGU6WyIxZjFmYy0xZjFlYiJdLGZuYW1lOiIxZjFmYy0xZjFlYiIsdWM6IjFmMWZjLTFmMWViIixpc0Nhbm9uaWNhbDohMH0sIjp3ZjoiOnt1bmljb2RlOlsiMWYxZmMtMWYxZWIiXSxmbmFtZToiMWYxZmMtMWYxZWIiLHVjOiIxZjFmYy0xZjFlYiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ192dToiOnt1bmljb2RlOlsiMWYxZmItMWYxZmEiXSxmbmFtZToiMWYxZmItMWYxZmEiLHVjOiIxZjFmYi0xZjFmYSIsaXNDYW5vbmljYWw6ITB9LCI6dnU6Ijp7dW5pY29kZTpbIjFmMWZiLTFmMWZhIl0sZm5hbWU6IjFmMWZiLTFmMWZhIix1YzoiMWYxZmItMWYxZmEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdm46Ijp7dW5pY29kZTpbIjFmMWZiLTFmMWYzIl0sZm5hbWU6IjFmMWZiLTFmMWYzIix1YzoiMWYxZmItMWYxZjMiLGlzQ2Fub25pY2FsOiEwfSwiOnZuOiI6e3VuaWNvZGU6WyIxZjFmYi0xZjFmMyJdLGZuYW1lOiIxZjFmYi0xZjFmMyIsdWM6IjFmMWZiLTFmMWYzIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3ZpOiI6e3VuaWNvZGU6WyIxZjFmYi0xZjFlZSJdLGZuYW1lOiIxZjFmYi0xZjFlZSIsdWM6IjFmMWZiLTFmMWVlIixpc0Nhbm9uaWNhbDohMH0sIjp2aToiOnt1bmljb2RlOlsiMWYxZmItMWYxZWUiXSxmbmFtZToiMWYxZmItMWYxZWUiLHVjOiIxZjFmYi0xZjFlZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ192ZzoiOnt1bmljb2RlOlsiMWYxZmItMWYxZWMiXSxmbmFtZToiMWYxZmItMWYxZWMiLHVjOiIxZjFmYi0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6dmc6Ijp7dW5pY29kZTpbIjFmMWZiLTFmMWVjIl0sZm5hbWU6IjFmMWZiLTFmMWVjIix1YzoiMWYxZmItMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdmU6Ijp7dW5pY29kZTpbIjFmMWZiLTFmMWVhIl0sZm5hbWU6IjFmMWZiLTFmMWVhIix1YzoiMWYxZmItMWYxZWEiLGlzQ2Fub25pY2FsOiEwfSwiOnZlOiI6e3VuaWNvZGU6WyIxZjFmYi0xZjFlYSJdLGZuYW1lOiIxZjFmYi0xZjFlYSIsdWM6IjFmMWZiLTFmMWVhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3ZjOiI6e3VuaWNvZGU6WyIxZjFmYi0xZjFlOCJdLGZuYW1lOiIxZjFmYi0xZjFlOCIsdWM6IjFmMWZiLTFmMWU4Iixpc0Nhbm9uaWNhbDohMH0sIjp2YzoiOnt1bmljb2RlOlsiMWYxZmItMWYxZTgiXSxmbmFtZToiMWYxZmItMWYxZTgiLHVjOiIxZjFmYi0xZjFlOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ192YToiOnt1bmljb2RlOlsiMWYxZmItMWYxZTYiXSxmbmFtZToiMWYxZmItMWYxZTYiLHVjOiIxZjFmYi0xZjFlNiIsaXNDYW5vbmljYWw6ITB9LCI6dmE6Ijp7dW5pY29kZTpbIjFmMWZiLTFmMWU2Il0sZm5hbWU6IjFmMWZiLTFmMWU2Iix1YzoiMWYxZmItMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdXo6Ijp7dW5pY29kZTpbIjFmMWZhLTFmMWZmIl0sZm5hbWU6IjFmMWZhLTFmMWZmIix1YzoiMWYxZmEtMWYxZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnV6OiI6e3VuaWNvZGU6WyIxZjFmYS0xZjFmZiJdLGZuYW1lOiIxZjFmYS0xZjFmZiIsdWM6IjFmMWZhLTFmMWZmIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3V5OiI6e3VuaWNvZGU6WyIxZjFmYS0xZjFmZSJdLGZuYW1lOiIxZjFmYS0xZjFmZSIsdWM6IjFmMWZhLTFmMWZlIixpc0Nhbm9uaWNhbDohMH0sIjp1eToiOnt1bmljb2RlOlsiMWYxZmEtMWYxZmUiXSxmbmFtZToiMWYxZmEtMWYxZmUiLHVjOiIxZjFmYS0xZjFmZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ191czoiOnt1bmljb2RlOlsiMWYxZmEtMWYxZjgiXSxmbmFtZToiMWYxZmEtMWYxZjgiLHVjOiIxZjFmYS0xZjFmOCIsaXNDYW5vbmljYWw6ITB9LCI6dXM6Ijp7dW5pY29kZTpbIjFmMWZhLTFmMWY4Il0sZm5hbWU6IjFmMWZhLTFmMWY4Iix1YzoiMWYxZmEtMWYxZjgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdW06Ijp7dW5pY29kZTpbIjFmMWZhLTFmMWYyIl0sZm5hbWU6IjFmMWZhLTFmMWYyIix1YzoiMWYxZmEtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOnVtOiI6e3VuaWNvZGU6WyIxZjFmYS0xZjFmMiJdLGZuYW1lOiIxZjFmYS0xZjFmMiIsdWM6IjFmMWZhLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3VnOiI6e3VuaWNvZGU6WyIxZjFmYS0xZjFlYyJdLGZuYW1lOiIxZjFmYS0xZjFlYyIsdWM6IjFmMWZhLTFmMWVjIixpc0Nhbm9uaWNhbDohMH0sIjp1ZzoiOnt1bmljb2RlOlsiMWYxZmEtMWYxZWMiXSxmbmFtZToiMWYxZmEtMWYxZWMiLHVjOiIxZjFmYS0xZjFlYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ191YToiOnt1bmljb2RlOlsiMWYxZmEtMWYxZTYiXSxmbmFtZToiMWYxZmEtMWYxZTYiLHVjOiIxZjFmYS0xZjFlNiIsaXNDYW5vbmljYWw6ITB9LCI6dWE6Ijp7dW5pY29kZTpbIjFmMWZhLTFmMWU2Il0sZm5hbWU6IjFmMWZhLTFmMWU2Iix1YzoiMWYxZmEtMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdHo6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWZmIl0sZm5hbWU6IjFmMWY5LTFmMWZmIix1YzoiMWYxZjktMWYxZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnR6OiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmZiJdLGZuYW1lOiIxZjFmOS0xZjFmZiIsdWM6IjFmMWY5LTFmMWZmIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3R3OiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmYyJdLGZuYW1lOiIxZjFmOS0xZjFmYyIsdWM6IjFmMWY5LTFmMWZjIixpc0Nhbm9uaWNhbDohMH0sIjp0dzoiOnt1bmljb2RlOlsiMWYxZjktMWYxZmMiXSxmbmFtZToiMWYxZjktMWYxZmMiLHVjOiIxZjFmOS0xZjFmYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190djoiOnt1bmljb2RlOlsiMWYxZjktMWYxZmIiXSxmbmFtZToiMWYxZjktMWYxZmIiLHVjOiIxZjFmOS0xZjFmYiIsaXNDYW5vbmljYWw6ITB9LCI6dHV2YWx1OiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmYiJdLGZuYW1lOiIxZjFmOS0xZjFmYiIsdWM6IjFmMWY5LTFmMWZiIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3R0OiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmOSJdLGZuYW1lOiIxZjFmOS0xZjFmOSIsdWM6IjFmMWY5LTFmMWY5Iixpc0Nhbm9uaWNhbDohMH0sIjp0dDoiOnt1bmljb2RlOlsiMWYxZjktMWYxZjkiXSxmbmFtZToiMWYxZjktMWYxZjkiLHVjOiIxZjFmOS0xZjFmOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190cjoiOnt1bmljb2RlOlsiMWYxZjktMWYxZjciXSxmbmFtZToiMWYxZjktMWYxZjciLHVjOiIxZjFmOS0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6dHI6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWY3Il0sZm5hbWU6IjFmMWY5LTFmMWY3Iix1YzoiMWYxZjktMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdG86Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWY0Il0sZm5hbWU6IjFmMWY5LTFmMWY0Iix1YzoiMWYxZjktMWYxZjQiLGlzQ2Fub25pY2FsOiEwfSwiOnRvOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmNCJdLGZuYW1lOiIxZjFmOS0xZjFmNCIsdWM6IjFmMWY5LTFmMWY0Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3RuOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmMyJdLGZuYW1lOiIxZjFmOS0xZjFmMyIsdWM6IjFmMWY5LTFmMWYzIixpc0Nhbm9uaWNhbDohMH0sIjp0bjoiOnt1bmljb2RlOlsiMWYxZjktMWYxZjMiXSxmbmFtZToiMWYxZjktMWYxZjMiLHVjOiIxZjFmOS0xZjFmMyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190bToiOnt1bmljb2RlOlsiMWYxZjktMWYxZjIiXSxmbmFtZToiMWYxZjktMWYxZjIiLHVjOiIxZjFmOS0xZjFmMiIsaXNDYW5vbmljYWw6ITB9LCI6dHVya21lbmlzdGFuOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmMiJdLGZuYW1lOiIxZjFmOS0xZjFmMiIsdWM6IjFmMWY5LTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3RsOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFmMSJdLGZuYW1lOiIxZjFmOS0xZjFmMSIsdWM6IjFmMWY5LTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjp0bDoiOnt1bmljb2RlOlsiMWYxZjktMWYxZjEiXSxmbmFtZToiMWYxZjktMWYxZjEiLHVjOiIxZjFmOS0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190azoiOnt1bmljb2RlOlsiMWYxZjktMWYxZjAiXSxmbmFtZToiMWYxZjktMWYxZjAiLHVjOiIxZjFmOS0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6dGs6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWYwIl0sZm5hbWU6IjFmMWY5LTFmMWYwIix1YzoiMWYxZjktMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdGo6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWVmIl0sZm5hbWU6IjFmMWY5LTFmMWVmIix1YzoiMWYxZjktMWYxZWYiLGlzQ2Fub25pY2FsOiEwfSwiOnRqOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFlZiJdLGZuYW1lOiIxZjFmOS0xZjFlZiIsdWM6IjFmMWY5LTFmMWVmIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3RoOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFlZCJdLGZuYW1lOiIxZjFmOS0xZjFlZCIsdWM6IjFmMWY5LTFmMWVkIixpc0Nhbm9uaWNhbDohMH0sIjp0aDoiOnt1bmljb2RlOlsiMWYxZjktMWYxZWQiXSxmbmFtZToiMWYxZjktMWYxZWQiLHVjOiIxZjFmOS0xZjFlZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190ZzoiOnt1bmljb2RlOlsiMWYxZjktMWYxZWMiXSxmbmFtZToiMWYxZjktMWYxZWMiLHVjOiIxZjFmOS0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6dGc6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWVjIl0sZm5hbWU6IjFmMWY5LTFmMWVjIix1YzoiMWYxZjktMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdGY6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWViIl0sZm5hbWU6IjFmMWY5LTFmMWViIix1YzoiMWYxZjktMWYxZWIiLGlzQ2Fub25pY2FsOiEwfSwiOnRmOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFlYiJdLGZuYW1lOiIxZjFmOS0xZjFlYiIsdWM6IjFmMWY5LTFmMWViIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3RkOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFlOSJdLGZuYW1lOiIxZjFmOS0xZjFlOSIsdWM6IjFmMWY5LTFmMWU5Iixpc0Nhbm9uaWNhbDohMH0sIjp0ZDoiOnt1bmljb2RlOlsiMWYxZjktMWYxZTkiXSxmbmFtZToiMWYxZjktMWYxZTkiLHVjOiIxZjFmOS0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ190YzoiOnt1bmljb2RlOlsiMWYxZjktMWYxZTgiXSxmbmFtZToiMWYxZjktMWYxZTgiLHVjOiIxZjFmOS0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6dGM6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWU4Il0sZm5hbWU6IjFmMWY5LTFmMWU4Iix1YzoiMWYxZjktMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfdGE6Ijp7dW5pY29kZTpbIjFmMWY5LTFmMWU2Il0sZm5hbWU6IjFmMWY5LTFmMWU2Iix1YzoiMWYxZjktMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOnRhOiI6e3VuaWNvZGU6WyIxZjFmOS0xZjFlNiJdLGZuYW1lOiIxZjFmOS0xZjFlNiIsdWM6IjFmMWY5LTFmMWU2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3N6OiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmZiJdLGZuYW1lOiIxZjFmOC0xZjFmZiIsdWM6IjFmMWY4LTFmMWZmIixpc0Nhbm9uaWNhbDohMH0sIjpzejoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZmYiXSxmbmFtZToiMWYxZjgtMWYxZmYiLHVjOiIxZjFmOC0xZjFmZiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zeToiOnt1bmljb2RlOlsiMWYxZjgtMWYxZmUiXSxmbmFtZToiMWYxZjgtMWYxZmUiLHVjOiIxZjFmOC0xZjFmZSIsaXNDYW5vbmljYWw6ITB9LCI6c3k6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWZlIl0sZm5hbWU6IjFmMWY4LTFmMWZlIix1YzoiMWYxZjgtMWYxZmUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc3g6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWZkIl0sZm5hbWU6IjFmMWY4LTFmMWZkIix1YzoiMWYxZjgtMWYxZmQiLGlzQ2Fub25pY2FsOiEwCn0sIjpzeDoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZmQiXSxmbmFtZToiMWYxZjgtMWYxZmQiLHVjOiIxZjFmOC0xZjFmZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zdjoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZmIiXSxmbmFtZToiMWYxZjgtMWYxZmIiLHVjOiIxZjFmOC0xZjFmYiIsaXNDYW5vbmljYWw6ITB9LCI6c3Y6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWZiIl0sZm5hbWU6IjFmMWY4LTFmMWZiIix1YzoiMWYxZjgtMWYxZmIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc3Q6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWY5Il0sZm5hbWU6IjFmMWY4LTFmMWY5Iix1YzoiMWYxZjgtMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOnN0OiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmOSJdLGZuYW1lOiIxZjFmOC0xZjFmOSIsdWM6IjFmMWY4LTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NzOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmOCJdLGZuYW1lOiIxZjFmOC0xZjFmOCIsdWM6IjFmMWY4LTFmMWY4Iixpc0Nhbm9uaWNhbDohMH0sIjpzczoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZjgiXSxmbmFtZToiMWYxZjgtMWYxZjgiLHVjOiIxZjFmOC0xZjFmOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zcjoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZjciXSxmbmFtZToiMWYxZjgtMWYxZjciLHVjOiIxZjFmOC0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6c3I6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWY3Il0sZm5hbWU6IjFmMWY4LTFmMWY3Iix1YzoiMWYxZjgtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc286Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWY0Il0sZm5hbWU6IjFmMWY4LTFmMWY0Iix1YzoiMWYxZjgtMWYxZjQiLGlzQ2Fub25pY2FsOiEwfSwiOnNvOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmNCJdLGZuYW1lOiIxZjFmOC0xZjFmNCIsdWM6IjFmMWY4LTFmMWY0Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NuOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmMyJdLGZuYW1lOiIxZjFmOC0xZjFmMyIsdWM6IjFmMWY4LTFmMWYzIixpc0Nhbm9uaWNhbDohMH0sIjpzbjoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZjMiXSxmbmFtZToiMWYxZjgtMWYxZjMiLHVjOiIxZjFmOC0xZjFmMyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zbToiOnt1bmljb2RlOlsiMWYxZjgtMWYxZjIiXSxmbmFtZToiMWYxZjgtMWYxZjIiLHVjOiIxZjFmOC0xZjFmMiIsaXNDYW5vbmljYWw6ITB9LCI6c206Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWYyIl0sZm5hbWU6IjFmMWY4LTFmMWYyIix1YzoiMWYxZjgtMWYxZjIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc2w6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWYxIl0sZm5hbWU6IjFmMWY4LTFmMWYxIix1YzoiMWYxZjgtMWYxZjEiLGlzQ2Fub25pY2FsOiEwfSwiOnNsOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmMSJdLGZuYW1lOiIxZjFmOC0xZjFmMSIsdWM6IjFmMWY4LTFmMWYxIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NrOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFmMCJdLGZuYW1lOiIxZjFmOC0xZjFmMCIsdWM6IjFmMWY4LTFmMWYwIixpc0Nhbm9uaWNhbDohMH0sIjpzazoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZjAiXSxmbmFtZToiMWYxZjgtMWYxZjAiLHVjOiIxZjFmOC0xZjFmMCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zajoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZWYiXSxmbmFtZToiMWYxZjgtMWYxZWYiLHVjOiIxZjFmOC0xZjFlZiIsaXNDYW5vbmljYWw6ITB9LCI6c2o6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWVmIl0sZm5hbWU6IjFmMWY4LTFmMWVmIix1YzoiMWYxZjgtMWYxZWYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc2k6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWVlIl0sZm5hbWU6IjFmMWY4LTFmMWVlIix1YzoiMWYxZjgtMWYxZWUiLGlzQ2Fub25pY2FsOiEwfSwiOnNpOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlZSJdLGZuYW1lOiIxZjFmOC0xZjFlZSIsdWM6IjFmMWY4LTFmMWVlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NoOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlZCJdLGZuYW1lOiIxZjFmOC0xZjFlZCIsdWM6IjFmMWY4LTFmMWVkIixpc0Nhbm9uaWNhbDohMH0sIjpzaDoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZWQiXSxmbmFtZToiMWYxZjgtMWYxZWQiLHVjOiIxZjFmOC0xZjFlZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zZzoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZWMiXSxmbmFtZToiMWYxZjgtMWYxZWMiLHVjOiIxZjFmOC0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6c2c6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWVjIl0sZm5hbWU6IjFmMWY4LTFmMWVjIix1YzoiMWYxZjgtMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc2U6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWVhIl0sZm5hbWU6IjFmMWY4LTFmMWVhIix1YzoiMWYxZjgtMWYxZWEiLGlzQ2Fub25pY2FsOiEwfSwiOnNlOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlYSJdLGZuYW1lOiIxZjFmOC0xZjFlYSIsdWM6IjFmMWY4LTFmMWVhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NkOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlOSJdLGZuYW1lOiIxZjFmOC0xZjFlOSIsdWM6IjFmMWY4LTFmMWU5Iixpc0Nhbm9uaWNhbDohMH0sIjpzZDoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZTkiXSxmbmFtZToiMWYxZjgtMWYxZTkiLHVjOiIxZjFmOC0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19zYzoiOnt1bmljb2RlOlsiMWYxZjgtMWYxZTgiXSxmbmFtZToiMWYxZjgtMWYxZTgiLHVjOiIxZjFmOC0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6c2M6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWU4Il0sZm5hbWU6IjFmMWY4LTFmMWU4Iix1YzoiMWYxZjgtMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfc2I6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWU3Il0sZm5hbWU6IjFmMWY4LTFmMWU3Iix1YzoiMWYxZjgtMWYxZTciLGlzQ2Fub25pY2FsOiEwfSwiOnNiOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlNyJdLGZuYW1lOiIxZjFmOC0xZjFlNyIsdWM6IjFmMWY4LTFmMWU3Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3NhOiI6e3VuaWNvZGU6WyIxZjFmOC0xZjFlNiJdLGZuYW1lOiIxZjFmOC0xZjFlNiIsdWM6IjFmMWY4LTFmMWU2Iixpc0Nhbm9uaWNhbDohMH0sIjpzYXVkaWFyYWJpYToiOnt1bmljb2RlOlsiMWYxZjgtMWYxZTYiXSxmbmFtZToiMWYxZjgtMWYxZTYiLHVjOiIxZjFmOC0xZjFlNiIsaXNDYW5vbmljYWw6ITF9LCI6c2F1ZGk6Ijp7dW5pY29kZTpbIjFmMWY4LTFmMWU2Il0sZm5hbWU6IjFmMWY4LTFmMWU2Iix1YzoiMWYxZjgtMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcnc6Ijp7dW5pY29kZTpbIjFmMWY3LTFmMWZjIl0sZm5hbWU6IjFmMWY3LTFmMWZjIix1YzoiMWYxZjctMWYxZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnJ3OiI6e3VuaWNvZGU6WyIxZjFmNy0xZjFmYyJdLGZuYW1lOiIxZjFmNy0xZjFmYyIsdWM6IjFmMWY3LTFmMWZjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3J1OiI6e3VuaWNvZGU6WyIxZjFmNy0xZjFmYSJdLGZuYW1lOiIxZjFmNy0xZjFmYSIsdWM6IjFmMWY3LTFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjpydToiOnt1bmljb2RlOlsiMWYxZjctMWYxZmEiXSxmbmFtZToiMWYxZjctMWYxZmEiLHVjOiIxZjFmNy0xZjFmYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19yczoiOnt1bmljb2RlOlsiMWYxZjctMWYxZjgiXSxmbmFtZToiMWYxZjctMWYxZjgiLHVjOiIxZjFmNy0xZjFmOCIsaXNDYW5vbmljYWw6ITB9LCI6cnM6Ijp7dW5pY29kZTpbIjFmMWY3LTFmMWY4Il0sZm5hbWU6IjFmMWY3LTFmMWY4Iix1YzoiMWYxZjctMWYxZjgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcm86Ijp7dW5pY29kZTpbIjFmMWY3LTFmMWY0Il0sZm5hbWU6IjFmMWY3LTFmMWY0Iix1YzoiMWYxZjctMWYxZjQiLGlzQ2Fub25pY2FsOiEwfSwiOnJvOiI6e3VuaWNvZGU6WyIxZjFmNy0xZjFmNCJdLGZuYW1lOiIxZjFmNy0xZjFmNCIsdWM6IjFmMWY3LTFmMWY0Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3JlOiI6e3VuaWNvZGU6WyIxZjFmNy0xZjFlYSJdLGZuYW1lOiIxZjFmNy0xZjFlYSIsdWM6IjFmMWY3LTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjpyZToiOnt1bmljb2RlOlsiMWYxZjctMWYxZWEiXSxmbmFtZToiMWYxZjctMWYxZWEiLHVjOiIxZjFmNy0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19xYToiOnt1bmljb2RlOlsiMWYxZjYtMWYxZTYiXSxmbmFtZToiMWYxZjYtMWYxZTYiLHVjOiIxZjFmNi0xZjFlNiIsaXNDYW5vbmljYWw6ITB9LCI6cWE6Ijp7dW5pY29kZTpbIjFmMWY2LTFmMWU2Il0sZm5hbWU6IjFmMWY2LTFmMWU2Iix1YzoiMWYxZjYtMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcHk6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWZlIl0sZm5hbWU6IjFmMWY1LTFmMWZlIix1YzoiMWYxZjUtMWYxZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnB5OiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmZSJdLGZuYW1lOiIxZjFmNS0xZjFmZSIsdWM6IjFmMWY1LTFmMWZlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3B3OiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmYyJdLGZuYW1lOiIxZjFmNS0xZjFmYyIsdWM6IjFmMWY1LTFmMWZjIixpc0Nhbm9uaWNhbDohMH0sIjpwdzoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZmMiXSxmbmFtZToiMWYxZjUtMWYxZmMiLHVjOiIxZjFmNS0xZjFmYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19wdDoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZjkiXSxmbmFtZToiMWYxZjUtMWYxZjkiLHVjOiIxZjFmNS0xZjFmOSIsaXNDYW5vbmljYWw6ITB9LCI6cHQ6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWY5Il0sZm5hbWU6IjFmMWY1LTFmMWY5Iix1YzoiMWYxZjUtMWYxZjkiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcHM6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWY4Il0sZm5hbWU6IjFmMWY1LTFmMWY4Iix1YzoiMWYxZjUtMWYxZjgiLGlzQ2Fub25pY2FsOiEwfSwiOnBzOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmOCJdLGZuYW1lOiIxZjFmNS0xZjFmOCIsdWM6IjFmMWY1LTFmMWY4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3ByOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmNyJdLGZuYW1lOiIxZjFmNS0xZjFmNyIsdWM6IjFmMWY1LTFmMWY3Iixpc0Nhbm9uaWNhbDohMH0sIjpwcjoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZjciXSxmbmFtZToiMWYxZjUtMWYxZjciLHVjOiIxZjFmNS0xZjFmNyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19wbjoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZjMiXSxmbmFtZToiMWYxZjUtMWYxZjMiLHVjOiIxZjFmNS0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6cG46Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWYzIl0sZm5hbWU6IjFmMWY1LTFmMWYzIix1YzoiMWYxZjUtMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcG06Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWYyIl0sZm5hbWU6IjFmMWY1LTFmMWYyIix1YzoiMWYxZjUtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOnBtOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmMiJdLGZuYW1lOiIxZjFmNS0xZjFmMiIsdWM6IjFmMWY1LTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3BsOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFmMSJdLGZuYW1lOiIxZjFmNS0xZjFmMSIsdWM6IjFmMWY1LTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjpwbDoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZjEiXSxmbmFtZToiMWYxZjUtMWYxZjEiLHVjOiIxZjFmNS0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19wazoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZjAiXSxmbmFtZToiMWYxZjUtMWYxZjAiLHVjOiIxZjFmNS0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6cGs6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWYwIl0sZm5hbWU6IjFmMWY1LTFmMWYwIix1YzoiMWYxZjUtMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcGg6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWVkIl0sZm5hbWU6IjFmMWY1LTFmMWVkIix1YzoiMWYxZjUtMWYxZWQiLGlzQ2Fub25pY2FsOiEwfSwiOnBoOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFlZCJdLGZuYW1lOiIxZjFmNS0xZjFlZCIsdWM6IjFmMWY1LTFmMWVkIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3BnOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFlYyJdLGZuYW1lOiIxZjFmNS0xZjFlYyIsdWM6IjFmMWY1LTFmMWVjIixpc0Nhbm9uaWNhbDohMH0sIjpwZzoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZWMiXSxmbmFtZToiMWYxZjUtMWYxZWMiLHVjOiIxZjFmNS0xZjFlYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19wZjoiOnt1bmljb2RlOlsiMWYxZjUtMWYxZWIiXSxmbmFtZToiMWYxZjUtMWYxZWIiLHVjOiIxZjFmNS0xZjFlYiIsaXNDYW5vbmljYWw6ITB9LCI6cGY6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWViIl0sZm5hbWU6IjFmMWY1LTFmMWViIix1YzoiMWYxZjUtMWYxZWIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfcGU6Ijp7dW5pY29kZTpbIjFmMWY1LTFmMWVhIl0sZm5hbWU6IjFmMWY1LTFmMWVhIix1YzoiMWYxZjUtMWYxZWEiLGlzQ2Fub25pY2FsOiEwfSwiOnBlOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFlYSJdLGZuYW1lOiIxZjFmNS0xZjFlYSIsdWM6IjFmMWY1LTFmMWVhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX3BhOiI6e3VuaWNvZGU6WyIxZjFmNS0xZjFlNiJdLGZuYW1lOiIxZjFmNS0xZjFlNiIsdWM6IjFmMWY1LTFmMWU2Iixpc0Nhbm9uaWNhbDohMH0sIjpwYToiOnt1bmljb2RlOlsiMWYxZjUtMWYxZTYiXSxmbmFtZToiMWYxZjUtMWYxZTYiLHVjOiIxZjFmNS0xZjFlNiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19vbToiOnt1bmljb2RlOlsiMWYxZjQtMWYxZjIiXSxmbmFtZToiMWYxZjQtMWYxZjIiLHVjOiIxZjFmNC0xZjFmMiIsaXNDYW5vbmljYWw6ITB9LCI6b206Ijp7dW5pY29kZTpbIjFmMWY0LTFmMWYyIl0sZm5hbWU6IjFmMWY0LTFmMWYyIix1YzoiMWYxZjQtMWYxZjIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbno6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWZmIl0sZm5hbWU6IjFmMWYzLTFmMWZmIix1YzoiMWYxZjMtMWYxZmYiLGlzQ2Fub25pY2FsOiEwfSwiOm56OiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFmZiJdLGZuYW1lOiIxZjFmMy0xZjFmZiIsdWM6IjFmMWYzLTFmMWZmIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX251OiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFmYSJdLGZuYW1lOiIxZjFmMy0xZjFmYSIsdWM6IjFmMWYzLTFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjpudToiOnt1bmljb2RlOlsiMWYxZjMtMWYxZmEiXSxmbmFtZToiMWYxZjMtMWYxZmEiLHVjOiIxZjFmMy0xZjFmYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ucjoiOnt1bmljb2RlOlsiMWYxZjMtMWYxZjciXSxmbmFtZToiMWYxZjMtMWYxZjciLHVjOiIxZjFmMy0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6bnI6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWY3Il0sZm5hbWU6IjFmMWYzLTFmMWY3Iix1YzoiMWYxZjMtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbnA6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWY1Il0sZm5hbWU6IjFmMWYzLTFmMWY1Iix1YzoiMWYxZjMtMWYxZjUiLGlzQ2Fub25pY2FsOiEwfSwiOm5wOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFmNSJdLGZuYW1lOiIxZjFmMy0xZjFmNSIsdWM6IjFmMWYzLTFmMWY1Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX25vOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFmNCJdLGZuYW1lOiIxZjFmMy0xZjFmNCIsdWM6IjFmMWYzLTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjpubzoiOnt1bmljb2RlOlsiMWYxZjMtMWYxZjQiXSxmbmFtZToiMWYxZjMtMWYxZjQiLHVjOiIxZjFmMy0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ubDoiOnt1bmljb2RlOlsiMWYxZjMtMWYxZjEiXSxmbmFtZToiMWYxZjMtMWYxZjEiLHVjOiIxZjFmMy0xZjFmMSIsaXNDYW5vbmljYWw6ITB9LCI6bmw6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWYxIl0sZm5hbWU6IjFmMWYzLTFmMWYxIix1YzoiMWYxZjMtMWYxZjEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbmk6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWVlIl0sZm5hbWU6IjFmMWYzLTFmMWVlIix1YzoiMWYxZjMtMWYxZWUiLGlzQ2Fub25pY2FsOiEwfSwiOm5pOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlZSJdLGZuYW1lOiIxZjFmMy0xZjFlZSIsdWM6IjFmMWYzLTFmMWVlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX25nOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlYyJdLGZuYW1lOiIxZjFmMy0xZjFlYyIsdWM6IjFmMWYzLTFmMWVjIixpc0Nhbm9uaWNhbDohMH0sIjpuaWdlcmlhOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlYyJdLGZuYW1lOiIxZjFmMy0xZjFlYyIsdWM6IjFmMWYzLTFmMWVjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX25mOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlYiJdLGZuYW1lOiIxZjFmMy0xZjFlYiIsdWM6IjFmMWYzLTFmMWViIixpc0Nhbm9uaWNhbDohMH0sIjpuZjoiOnt1bmljb2RlOlsiMWYxZjMtMWYxZWIiXSxmbmFtZToiMWYxZjMtMWYxZWIiLHVjOiIxZjFmMy0xZjFlYiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19uZToiOnt1bmljb2RlOlsiMWYxZjMtMWYxZWEiXSxmbmFtZToiMWYxZjMtMWYxZWEiLHVjOiIxZjFmMy0xZjFlYSIsaXNDYW5vbmljYWw6ITB9LCI6bmU6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWVhIl0sZm5hbWU6IjFmMWYzLTFmMWVhIix1YzoiMWYxZjMtMWYxZWEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbmM6Ijp7dW5pY29kZTpbIjFmMWYzLTFmMWU4Il0sZm5hbWU6IjFmMWYzLTFmMWU4Iix1YzoiMWYxZjMtMWYxZTgiLGlzQ2Fub25pY2FsOiEwfSwiOm5jOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlOCJdLGZuYW1lOiIxZjFmMy0xZjFlOCIsdWM6IjFmMWYzLTFmMWU4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX25hOiI6e3VuaWNvZGU6WyIxZjFmMy0xZjFlNiJdLGZuYW1lOiIxZjFmMy0xZjFlNiIsdWM6IjFmMWYzLTFmMWU2Iixpc0Nhbm9uaWNhbDohMH0sIjpuYToiOnt1bmljb2RlOlsiMWYxZjMtMWYxZTYiXSxmbmFtZToiMWYxZjMtMWYxZTYiLHVjOiIxZjFmMy0xZjFlNiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tejoiOnt1bmljb2RlOlsiMWYxZjItMWYxZmYiXSxmbmFtZToiMWYxZjItMWYxZmYiLHVjOiIxZjFmMi0xZjFmZiIsaXNDYW5vbmljYWw6ITB9LCI6bXo6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWZmIl0sZm5hbWU6IjFmMWYyLTFmMWZmIix1YzoiMWYxZjItMWYxZmYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbXk6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWZlIl0sZm5hbWU6IjFmMWYyLTFmMWZlIix1YzoiMWYxZjItMWYxZmUiLGlzQ2Fub25pY2FsOiEwfSwiOm15OiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmZSJdLGZuYW1lOiIxZjFmMi0xZjFmZSIsdWM6IjFmMWYyLTFmMWZlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX214OiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmZCJdLGZuYW1lOiIxZjFmMi0xZjFmZCIsdWM6IjFmMWYyLTFmMWZkIixpc0Nhbm9uaWNhbDohMH0sIjpteDoiOnt1bmljb2RlOlsiMWYxZjItMWYxZmQiXSxmbmFtZToiMWYxZjItMWYxZmQiLHVjOiIxZjFmMi0xZjFmZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tdzoiOnt1bmljb2RlOlsiMWYxZjItMWYxZmMiXSxmbmFtZToiMWYxZjItMWYxZmMiLHVjOiIxZjFmMi0xZjFmYyIsaXNDYW5vbmljYWw6ITB9LCI6bXc6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWZjIl0sZm5hbWU6IjFmMWYyLTFmMWZjIix1YzoiMWYxZjItMWYxZmMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbXY6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWZiIl0sZm5hbWU6IjFmMWYyLTFmMWZiIix1YzoiMWYxZjItMWYxZmIiLGlzQ2Fub25pY2FsOiEwfSwiOm12OiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmYiJdLGZuYW1lOiIxZjFmMi0xZjFmYiIsdWM6IjFmMWYyLTFmMWZiIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX211OiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmYSJdLGZuYW1lOiIxZjFmMi0xZjFmYSIsdWM6IjFmMWYyLTFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjptdToiOnt1bmljb2RlOlsiMWYxZjItMWYxZmEiXSxmbmFtZToiMWYxZjItMWYxZmEiLHVjOiIxZjFmMi0xZjFmYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tdDoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjkiXSxmbmFtZToiMWYxZjItMWYxZjkiLHVjOiIxZjFmMi0xZjFmOSIsaXNDYW5vbmljYWw6ITB9LCI6bXQ6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWY5Il0sZm5hbWU6IjFmMWYyLTFmMWY5Iix1YzoiMWYxZjItMWYxZjkiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbXM6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWY4Il0sZm5hbWU6IjFmMWYyLTFmMWY4Iix1YzoiMWYxZjItMWYxZjgiLGlzQ2Fub25pY2FsOiEwfSwiOm1zOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmOCJdLGZuYW1lOiIxZjFmMi0xZjFmOCIsdWM6IjFmMWYyLTFmMWY4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX21yOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmNyJdLGZuYW1lOiIxZjFmMi0xZjFmNyIsdWM6IjFmMWYyLTFmMWY3Iixpc0Nhbm9uaWNhbDohMH0sIjptcjoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjciXSxmbmFtZToiMWYxZjItMWYxZjciLHVjOiIxZjFmMi0xZjFmNyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tcToiOnt1bmljb2RlOlsiMWYxZjItMWYxZjYiXSxmbmFtZToiMWYxZjItMWYxZjYiLHVjOiIxZjFmMi0xZjFmNiIsaXNDYW5vbmljYWw6ITB9LCI6bXE6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWY2Il0sZm5hbWU6IjFmMWYyLTFmMWY2Iix1YzoiMWYxZjItMWYxZjYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbXA6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWY1Il0sZm5hbWU6IjFmMWYyLTFmMWY1Iix1YzoiMWYxZjItMWYxZjUiLGlzQ2Fub25pY2FsOiEwfSwiOm1wOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmNSJdLGZuYW1lOiIxZjFmMi0xZjFmNSIsdWM6IjFmMWYyLTFmMWY1Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX21vOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmNCJdLGZuYW1lOiIxZjFmMi0xZjFmNCIsdWM6IjFmMWYyLTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjptbzoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjQiXSxmbmFtZToiMWYxZjItMWYxZjQiLHVjOiIxZjFmMi0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tbjoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjMiXSxmbmFtZToiMWYxZjItMWYxZjMiLHVjOiIxZjFmMi0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6bW46Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWYzIl0sZm5hbWU6IjFmMWYyLTFmMWYzIix1YzoiMWYxZjItMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbW06Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWYyIl0sZm5hbWU6IjFmMWYyLTFmMWYyIix1YzoiMWYxZjItMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOm1tOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmMiJdLGZuYW1lOiIxZjFmMi0xZjFmMiIsdWM6IjFmMWYyLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX21sOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFmMSJdLGZuYW1lOiIxZjFmMi0xZjFmMSIsdWM6IjFmMWYyLTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjptbDoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjEiXSxmbmFtZToiMWYxZjItMWYxZjEiLHVjOiIxZjFmMi0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tazoiOnt1bmljb2RlOlsiMWYxZjItMWYxZjAiXSxmbmFtZToiMWYxZjItMWYxZjAiLHVjOiIxZjFmMi0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6bWs6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWYwIl0sZm5hbWU6IjFmMWYyLTFmMWYwIix1YzoiMWYxZjItMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbWg6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWVkIl0sZm5hbWU6IjFmMWYyLTFmMWVkIix1YzoiMWYxZjItMWYxZWQiLGlzQ2Fub25pY2FsOiEwfSwiOm1oOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFlZCJdLGZuYW1lOiIxZjFmMi0xZjFlZCIsdWM6IjFmMWYyLTFmMWVkIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX21nOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFlYyJdLGZuYW1lOiIxZjFmMi0xZjFlYyIsdWM6IjFmMWYyLTFmMWVjIixpc0Nhbm9uaWNhbDohMH0sIjptZzoiOnt1bmljb2RlOlsiMWYxZjItMWYxZWMiXSxmbmFtZToiMWYxZjItMWYxZWMiLHVjOiIxZjFmMi0xZjFlYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tZjoiOnt1bmljb2RlOlsiMWYxZjItMWYxZWIiXSxmbmFtZToiMWYxZjItMWYxZWIiLHVjOiIxZjFmMi0xZjFlYiIsaXNDYW5vbmljYWw6ITB9LCI6bWY6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWViIl0sZm5hbWU6IjFmMWYyLTFmMWViIix1YzoiMWYxZjItMWYxZWIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbWU6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWVhIl0sZm5hbWU6IjFmMWYyLTFmMWVhIix1YzoiMWYxZjItMWYxZWEiLGlzQ2Fub25pY2FsOiEwfSwiOm1lOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFlYSJdLGZuYW1lOiIxZjFmMi0xZjFlYSIsdWM6IjFmMWYyLTFmMWVhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX21kOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFlOSJdLGZuYW1lOiIxZjFmMi0xZjFlOSIsdWM6IjFmMWYyLTFmMWU5Iixpc0Nhbm9uaWNhbDohMH0sIjptZDoiOnt1bmljb2RlOlsiMWYxZjItMWYxZTkiXSxmbmFtZToiMWYxZjItMWYxZTkiLHVjOiIxZjFmMi0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19tYzoiOnt1bmljb2RlOlsiMWYxZjItMWYxZTgiXSxmbmFtZToiMWYxZjItMWYxZTgiLHVjOiIxZjFmMi0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6bWM6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWU4Il0sZm5hbWU6IjFmMWYyLTFmMWU4Iix1YzoiMWYxZjItMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbWE6Ijp7dW5pY29kZTpbIjFmMWYyLTFmMWU2Il0sZm5hbWU6IjFmMWYyLTFmMWU2Iix1YzoiMWYxZjItMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOm1hOiI6e3VuaWNvZGU6WyIxZjFmMi0xZjFlNiJdLGZuYW1lOiIxZjFmMi0xZjFlNiIsdWM6IjFmMWYyLTFmMWU2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2x5OiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFmZSJdLGZuYW1lOiIxZjFmMS0xZjFmZSIsdWM6IjFmMWYxLTFmMWZlIixpc0Nhbm9uaWNhbDohMH0sIjpseToiOnt1bmljb2RlOlsiMWYxZjEtMWYxZmUiXSxmbmFtZToiMWYxZjEtMWYxZmUiLHVjOiIxZjFmMS0xZjFmZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19sdjoiOnt1bmljb2RlOlsiMWYxZjEtMWYxZmIiXSxmbmFtZToiMWYxZjEtMWYxZmIiLHVjOiIxZjFmMS0xZjFmYiIsaXNDYW5vbmljYWw6ITB9LCI6bHY6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWZiIl0sZm5hbWU6IjFmMWYxLTFmMWZiIix1YzoiMWYxZjEtMWYxZmIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbHU6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWZhIl0sZm5hbWU6IjFmMWYxLTFmMWZhIix1YzoiMWYxZjEtMWYxZmEiLGlzQ2Fub25pY2FsOiEwfSwiOmx1OiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFmYSJdLGZuYW1lOiIxZjFmMS0xZjFmYSIsdWM6IjFmMWYxLTFmMWZhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2x0OiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFmOSJdLGZuYW1lOiIxZjFmMS0xZjFmOSIsdWM6IjFmMWYxLTFmMWY5Iixpc0Nhbm9uaWNhbDohMH0sIjpsdDoiOnt1bmljb2RlOlsiMWYxZjEtMWYxZjkiXSxmbmFtZToiMWYxZjEtMWYxZjkiLHVjOiIxZjFmMS0xZjFmOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19sczoiOnt1bmljb2RlOlsiMWYxZjEtMWYxZjgiXSxmbmFtZToiMWYxZjEtMWYxZjgiLHVjOiIxZjFmMS0xZjFmOCIsaXNDYW5vbmljYWw6ITB9LCI6bHM6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWY4Il0sZm5hbWU6IjFmMWYxLTFmMWY4Iix1YzoiMWYxZjEtMWYxZjgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbHI6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWY3Il0sZm5hbWU6IjFmMWYxLTFmMWY3Iix1YzoiMWYxZjEtMWYxZjciLGlzQ2Fub25pY2FsOiEwfSwiOmxyOiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFmNyJdLGZuYW1lOiIxZjFmMS0xZjFmNyIsdWM6IjFmMWYxLTFmMWY3Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2xrOiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFmMCJdLGZuYW1lOiIxZjFmMS0xZjFmMCIsdWM6IjFmMWYxLTFmMWYwIixpc0Nhbm9uaWNhbDohMH0sIjpsazoiOnt1bmljb2RlOlsiMWYxZjEtMWYxZjAiXSxmbmFtZToiMWYxZjEtMWYxZjAiLHVjOiIxZjFmMS0xZjFmMCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19saToiOnt1bmljb2RlOlsiMWYxZjEtMWYxZWUiXSxmbmFtZToiMWYxZjEtMWYxZWUiLHVjOiIxZjFmMS0xZjFlZSIsaXNDYW5vbmljYWw6ITB9LCI6bGk6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWVlIl0sZm5hbWU6IjFmMWYxLTFmMWVlIix1YzoiMWYxZjEtMWYxZWUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfbGM6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWU4Il0sZm5hbWU6IjFmMWYxLTFmMWU4Iix1YzoiMWYxZjEtMWYxZTgiLGlzQ2Fub25pY2FsOiEwfSwiOmxjOiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFlOCJdLGZuYW1lOiIxZjFmMS0xZjFlOCIsdWM6IjFmMWYxLTFmMWU4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2xiOiI6e3VuaWNvZGU6WyIxZjFmMS0xZjFlNyJdLGZuYW1lOiIxZjFmMS0xZjFlNyIsdWM6IjFmMWYxLTFmMWU3Iixpc0Nhbm9uaWNhbDohMH0sIjpsYjoiOnt1bmljb2RlOlsiMWYxZjEtMWYxZTciXSxmbmFtZToiMWYxZjEtMWYxZTciLHVjOiIxZjFmMS0xZjFlNyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19sYToiOnt1bmljb2RlOlsiMWYxZjEtMWYxZTYiXSxmbmFtZToiMWYxZjEtMWYxZTYiLHVjOiIxZjFmMS0xZjFlNiIsaXNDYW5vbmljYWw6ITB9LCI6bGE6Ijp7dW5pY29kZTpbIjFmMWYxLTFmMWU2Il0sZm5hbWU6IjFmMWYxLTFmMWU2Iix1YzoiMWYxZjEtMWYxZTYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfa3o6Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWZmIl0sZm5hbWU6IjFmMWYwLTFmMWZmIix1YzoiMWYxZjAtMWYxZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmt6OiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFmZiJdLGZuYW1lOiIxZjFmMC0xZjFmZiIsdWM6IjFmMWYwLTFmMWZmIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2t5OiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFmZSJdLGZuYW1lOiIxZjFmMC0xZjFmZSIsdWM6IjFmMWYwLTFmMWZlIixpc0Nhbm9uaWNhbDohMH0sIjpreToiOnt1bmljb2RlOlsiMWYxZjAtMWYxZmUiXSxmbmFtZToiMWYxZjAtMWYxZmUiLHVjOiIxZjFmMC0xZjFmZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19rdzoiOnt1bmljb2RlOlsiMWYxZjAtMWYxZmMiXSxmbmFtZToiMWYxZjAtMWYxZmMiLHVjOiIxZjFmMC0xZjFmYyIsaXNDYW5vbmljYWw6ITB9LCI6a3c6Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWZjIl0sZm5hbWU6IjFmMWYwLTFmMWZjIix1YzoiMWYxZjAtMWYxZmMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfa3I6Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWY3Il0sZm5hbWU6IjFmMWYwLTFmMWY3Iix1YzoiMWYxZjAtMWYxZjciLGlzQ2Fub25pY2FsOiEwfSwiOmtyOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFmNyJdLGZuYW1lOiIxZjFmMC0xZjFmNyIsdWM6IjFmMWYwLTFmMWY3Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2twOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFmNSJdLGZuYW1lOiIxZjFmMC0xZjFmNSIsdWM6IjFmMWYwLTFmMWY1Iixpc0Nhbm9uaWNhbDohMH0sIjprcDoiOnt1bmljb2RlOlsiMWYxZjAtMWYxZjUiXSxmbmFtZToiMWYxZjAtMWYxZjUiLHVjOiIxZjFmMC0xZjFmNSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19rbjoiOnt1bmljb2RlOlsiMWYxZjAtMWYxZjMiXSxmbmFtZToiMWYxZjAtMWYxZjMiLHVjOiIxZjFmMC0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6a246Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWYzIl0sZm5hbWU6IjFmMWYwLTFmMWYzIix1YzoiMWYxZjAtMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfa206Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWYyIl0sZm5hbWU6IjFmMWYwLTFmMWYyIix1YzoiMWYxZjAtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmttOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFmMiJdLGZuYW1lOiIxZjFmMC0xZjFmMiIsdWM6IjFmMWYwLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2tpOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFlZSJdLGZuYW1lOiIxZjFmMC0xZjFlZSIsdWM6IjFmMWYwLTFmMWVlIixpc0Nhbm9uaWNhbDohMH0sIjpraToiOnt1bmljb2RlOlsiMWYxZjAtMWYxZWUiXSxmbmFtZToiMWYxZjAtMWYxZWUiLHVjOiIxZjFmMC0xZjFlZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19raDoiOnt1bmljb2RlOlsiMWYxZjAtMWYxZWQiXSxmbmFtZToiMWYxZjAtMWYxZWQiLHVjOiIxZjFmMC0xZjFlZCIsaXNDYW5vbmljYWw6ITB9LCI6a2g6Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWVkIl0sZm5hbWU6IjFmMWYwLTFmMWVkIix1YzoiMWYxZjAtMWYxZWQiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfa2c6Ijp7dW5pY29kZTpbIjFmMWYwLTFmMWVjIl0sZm5hbWU6IjFmMWYwLTFmMWVjIix1YzoiMWYxZjAtMWYxZWMiLGlzQ2Fub25pY2FsOiEwfSwiOmtnOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFlYyJdLGZuYW1lOiIxZjFmMC0xZjFlYyIsdWM6IjFmMWYwLTFmMWVjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2tlOiI6e3VuaWNvZGU6WyIxZjFmMC0xZjFlYSJdLGZuYW1lOiIxZjFmMC0xZjFlYSIsdWM6IjFmMWYwLTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjprZToiOnt1bmljb2RlOlsiMWYxZjAtMWYxZWEiXSxmbmFtZToiMWYxZjAtMWYxZWEiLHVjOiIxZjFmMC0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19qcDoiOnt1bmljb2RlOlsiMWYxZWYtMWYxZjUiXSxmbmFtZToiMWYxZWYtMWYxZjUiLHVjOiIxZjFlZi0xZjFmNSIsaXNDYW5vbmljYWw6ITB9LCI6anA6Ijp7dW5pY29kZTpbIjFmMWVmLTFmMWY1Il0sZm5hbWU6IjFmMWVmLTFmMWY1Iix1YzoiMWYxZWYtMWYxZjUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfam86Ijp7dW5pY29kZTpbIjFmMWVmLTFmMWY0Il0sZm5hbWU6IjFmMWVmLTFmMWY0Iix1YzoiMWYxZWYtMWYxZjQiLGlzQ2Fub25pY2FsOiEwfSwiOmpvOiI6e3VuaWNvZGU6WyIxZjFlZi0xZjFmNCJdLGZuYW1lOiIxZjFlZi0xZjFmNCIsdWM6IjFmMWVmLTFmMWY0Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2ptOiI6e3VuaWNvZGU6WyIxZjFlZi0xZjFmMiJdLGZuYW1lOiIxZjFlZi0xZjFmMiIsdWM6IjFmMWVmLTFmMWYyIixpc0Nhbm9uaWNhbDohMH0sIjpqbToiOnt1bmljb2RlOlsiMWYxZWYtMWYxZjIiXSxmbmFtZToiMWYxZWYtMWYxZjIiLHVjOiIxZjFlZi0xZjFmMiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19qZToiOnt1bmljb2RlOlsiMWYxZWYtMWYxZWEiXSxmbmFtZToiMWYxZWYtMWYxZWEiLHVjOiIxZjFlZi0xZjFlYSIsaXNDYW5vbmljYWw6ITB9LCI6amU6Ijp7dW5pY29kZTpbIjFmMWVmLTFmMWVhIl0sZm5hbWU6IjFmMWVmLTFmMWVhIix1YzoiMWYxZWYtMWYxZWEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaXQ6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWY5Il0sZm5hbWU6IjFmMWVlLTFmMWY5Iix1YzoiMWYxZWUtMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOml0OiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmOSJdLGZuYW1lOiIxZjFlZS0xZjFmOSIsdWM6IjFmMWVlLTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2lzOiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmOCJdLGZuYW1lOiIxZjFlZS0xZjFmOCIsdWM6IjFmMWVlLTFmMWY4Iixpc0Nhbm9uaWNhbDohMH0sIjppczoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZjgiXSxmbmFtZToiMWYxZWUtMWYxZjgiLHVjOiIxZjFlZS0xZjFmOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19pcjoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZjciXSxmbmFtZToiMWYxZWUtMWYxZjciLHVjOiIxZjFlZS0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6aXI6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWY3Il0sZm5hbWU6IjFmMWVlLTFmMWY3Iix1YzoiMWYxZWUtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaXE6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWY2Il0sZm5hbWU6IjFmMWVlLTFmMWY2Iix1YzoiMWYxZWUtMWYxZjYiLGlzQ2Fub25pY2FsOiEwfSwiOmlxOiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmNiJdLGZuYW1lOiIxZjFlZS0xZjFmNiIsdWM6IjFmMWVlLTFmMWY2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2lvOiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmNCJdLGZuYW1lOiIxZjFlZS0xZjFmNCIsdWM6IjFmMWVlLTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjppbzoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZjQiXSxmbmFtZToiMWYxZWUtMWYxZjQiLHVjOiIxZjFlZS0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19pbjoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZjMiXSxmbmFtZToiMWYxZWUtMWYxZjMiLHVjOiIxZjFlZS0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6aW46Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWYzIl0sZm5hbWU6IjFmMWVlLTFmMWYzIix1YzoiMWYxZWUtMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaW06Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWYyIl0sZm5hbWU6IjFmMWVlLTFmMWYyIix1YzoiMWYxZWUtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmltOiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmMiJdLGZuYW1lOiIxZjFlZS0xZjFmMiIsdWM6IjFmMWVlLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2lsOiI6e3VuaWNvZGU6WyIxZjFlZS0xZjFmMSJdLGZuYW1lOiIxZjFlZS0xZjFmMSIsdWM6IjFmMWVlLTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjppbDoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZjEiXSxmbmFtZToiMWYxZWUtMWYxZjEiLHVjOiIxZjFlZS0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19pZToiOnt1bmljb2RlOlsiMWYxZWUtMWYxZWEiXSxmbmFtZToiMWYxZWUtMWYxZWEiLHVjOiIxZjFlZS0xZjFlYSIsaXNDYW5vbmljYWw6ITB9LCI6aWU6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWVhIl0sZm5hbWU6IjFmMWVlLTFmMWVhIix1YzoiMWYxZWUtMWYxZWEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaWQ6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWU5Il0sZm5hbWU6IjFmMWVlLTFmMWU5Iix1YzoiMWYxZWUtMWYxZTkiLGlzQ2Fub25pY2FsOiEwfSwiOmluZG9uZXNpYToiOnt1bmljb2RlOlsiMWYxZWUtMWYxZTkiXSxmbmFtZToiMWYxZWUtMWYxZTkiLHVjOiIxZjFlZS0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19pYzoiOnt1bmljb2RlOlsiMWYxZWUtMWYxZTgiXSxmbmFtZToiMWYxZWUtMWYxZTgiLHVjOiIxZjFlZS0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6aWM6Ijp7dW5pY29kZTpbIjFmMWVlLTFmMWU4Il0sZm5hbWU6IjFmMWVlLTFmMWU4Iix1YzoiMWYxZWUtMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaHU6Ijp7dW5pY29kZTpbIjFmMWVkLTFmMWZhIl0sZm5hbWU6IjFmMWVkLTFmMWZhIix1YzoiMWYxZWQtMWYxZmEiLGlzQ2Fub25pY2FsOiEwfSwiOmh1OiI6e3VuaWNvZGU6WyIxZjFlZC0xZjFmYSJdLGZuYW1lOiIxZjFlZC0xZjFmYSIsdWM6IjFmMWVkLTFmMWZhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2h0OiI6e3VuaWNvZGU6WyIxZjFlZC0xZjFmOSJdLGZuYW1lOiIxZjFlZC0xZjFmOSIsdWM6IjFmMWVkLTFmMWY5Iixpc0Nhbm9uaWNhbDohMH0sIjpodDoiOnt1bmljb2RlOlsiMWYxZWQtMWYxZjkiXSxmbmFtZToiMWYxZWQtMWYxZjkiLHVjOiIxZjFlZC0xZjFmOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ocjoiOnt1bmljb2RlOlsiMWYxZWQtMWYxZjciXSxmbmFtZToiMWYxZWQtMWYxZjciLHVjOiIxZjFlZC0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6aHI6Ijp7dW5pY29kZTpbIjFmMWVkLTFmMWY3Il0sZm5hbWU6IjFmMWVkLTFmMWY3Iix1YzoiMWYxZWQtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfaG46Ijp7dW5pY29kZTpbIjFmMWVkLTFmMWYzIl0sZm5hbWU6IjFmMWVkLTFmMWYzIix1YzoiMWYxZWQtMWYxZjMiLGlzQ2Fub25pY2FsOiEwfSwiOmhuOiI6e3VuaWNvZGU6WyIxZjFlZC0xZjFmMyJdLGZuYW1lOiIxZjFlZC0xZjFmMyIsdWM6IjFmMWVkLTFmMWYzIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2htOiI6e3VuaWNvZGU6WyIxZjFlZC0xZjFmMiJdLGZuYW1lOiIxZjFlZC0xZjFmMiIsdWM6IjFmMWVkLTFmMWYyIixpc0Nhbm9uaWNhbDohMH0sIjpobToiOnt1bmljb2RlOlsiMWYxZWQtMWYxZjIiXSxmbmFtZToiMWYxZWQtMWYxZjIiLHVjOiIxZjFlZC0xZjFmMiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19oazoiOnt1bmljb2RlOlsiMWYxZWQtMWYxZjAiXSxmbmFtZToiMWYxZWQtMWYxZjAiLHVjOiIxZjFlZC0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6aGs6Ijp7dW5pY29kZTpbIjFmMWVkLTFmMWYwIl0sZm5hbWU6IjFmMWVkLTFmMWYwIix1YzoiMWYxZWQtMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ3k6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWZlIl0sZm5hbWU6IjFmMWVjLTFmMWZlIix1YzoiMWYxZWMtMWYxZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmd5OiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmZSJdLGZuYW1lOiIxZjFlYy0xZjFmZSIsdWM6IjFmMWVjLTFmMWZlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2d3OiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmYyJdLGZuYW1lOiIxZjFlYy0xZjFmYyIsdWM6IjFmMWVjLTFmMWZjIixpc0Nhbm9uaWNhbDohMH0sIjpndzoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZmMiXSxmbmFtZToiMWYxZWMtMWYxZmMiLHVjOiIxZjFlYy0xZjFmYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ndToiOnt1bmljb2RlOlsiMWYxZWMtMWYxZmEiXSxmbmFtZToiMWYxZWMtMWYxZmEiLHVjOiIxZjFlYy0xZjFmYSIsaXNDYW5vbmljYWw6ITB9LCI6Z3U6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWZhIl0sZm5hbWU6IjFmMWVjLTFmMWZhIix1YzoiMWYxZWMtMWYxZmEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ3Q6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWY5Il0sZm5hbWU6IjFmMWVjLTFmMWY5Iix1YzoiMWYxZWMtMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOmd0OiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmOSJdLGZuYW1lOiIxZjFlYy0xZjFmOSIsdWM6IjFmMWVjLTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2dzOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmOCJdLGZuYW1lOiIxZjFlYy0xZjFmOCIsdWM6IjFmMWVjLTFmMWY4Iixpc0Nhbm9uaWNhbDohMH0sIjpnczoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZjgiXSxmbmFtZToiMWYxZWMtMWYxZjgiLHVjOiIxZjFlYy0xZjFmOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ncjoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZjciXSxmbmFtZToiMWYxZWMtMWYxZjciLHVjOiIxZjFlYy0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6Z3I6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWY3Il0sZm5hbWU6IjFmMWVjLTFmMWY3Iix1YzoiMWYxZWMtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ3E6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWY2Il0sZm5hbWU6IjFmMWVjLTFmMWY2Iix1YzoiMWYxZWMtMWYxZjYiLGlzQ2Fub25pY2FsOiEwfSwiOmdxOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmNiJdLGZuYW1lOiIxZjFlYy0xZjFmNiIsdWM6IjFmMWVjLTFmMWY2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2dwOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmNSJdLGZuYW1lOiIxZjFlYy0xZjFmNSIsdWM6IjFmMWVjLTFmMWY1Iixpc0Nhbm9uaWNhbDohMH0sIjpncDoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZjUiXSxmbmFtZToiMWYxZWMtMWYxZjUiLHVjOiIxZjFlYy0xZjFmNSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19nbjoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZjMiXSxmbmFtZToiMWYxZWMtMWYxZjMiLHVjOiIxZjFlYy0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6Z246Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWYzIl0sZm5hbWU6IjFmMWVjLTFmMWYzIix1YzoiMWYxZWMtMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ206Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWYyIl0sZm5hbWU6IjFmMWVjLTFmMWYyIix1YzoiMWYxZWMtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmdtOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmMiJdLGZuYW1lOiIxZjFlYy0xZjFmMiIsdWM6IjFmMWVjLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2dsOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFmMSJdLGZuYW1lOiIxZjFlYy0xZjFmMSIsdWM6IjFmMWVjLTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjpnbDoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZjEiXSxmbmFtZToiMWYxZWMtMWYxZjEiLHVjOiIxZjFlYy0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19naToiOnt1bmljb2RlOlsiMWYxZWMtMWYxZWUiXSxmbmFtZToiMWYxZWMtMWYxZWUiLHVjOiIxZjFlYy0xZjFlZSIsaXNDYW5vbmljYWw6ITB9LCI6Z2k6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWVlIl0sZm5hbWU6IjFmMWVjLTFmMWVlIix1YzoiMWYxZWMtMWYxZWUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ2g6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWVkIl0sZm5hbWU6IjFmMWVjLTFmMWVkIix1YzoiMWYxZWMtMWYxZWQiLGlzQ2Fub25pY2FsOiEwfSwiOmdoOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFlZCJdLGZuYW1lOiIxZjFlYy0xZjFlZCIsdWM6IjFmMWVjLTFmMWVkIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2dnOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFlYyJdLGZuYW1lOiIxZjFlYy0xZjFlYyIsdWM6IjFmMWVjLTFmMWVjIixpc0Nhbm9uaWNhbDohMH0sIjpnZzoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZWMiXSxmbmFtZToiMWYxZWMtMWYxZWMiLHVjOiIxZjFlYy0xZjFlYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19nZjoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZWIiXSxmbmFtZToiMWYxZWMtMWYxZWIiLHVjOiIxZjFlYy0xZjFlYiIsaXNDYW5vbmljYWw6ITB9LCI6Z2Y6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWViIl0sZm5hbWU6IjFmMWVjLTFmMWViIix1YzoiMWYxZWMtMWYxZWIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ2U6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWVhIl0sZm5hbWU6IjFmMWVjLTFmMWVhIix1YzoiMWYxZWMtMWYxZWEiLGlzQ2Fub25pY2FsOiEwfSwiOmdlOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFlYSJdLGZuYW1lOiIxZjFlYy0xZjFlYSIsdWM6IjFmMWVjLTFmMWVhIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2dkOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFlOSJdLGZuYW1lOiIxZjFlYy0xZjFlOSIsdWM6IjFmMWVjLTFmMWU5Iixpc0Nhbm9uaWNhbDohMH0sIjpnZDoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZTkiXSxmbmFtZToiMWYxZWMtMWYxZTkiLHVjOiIxZjFlYy0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19nYjoiOnt1bmljb2RlOlsiMWYxZWMtMWYxZTciXSxmbmFtZToiMWYxZWMtMWYxZTciLHVjOiIxZjFlYy0xZjFlNyIsaXNDYW5vbmljYWw6ITB9LCI6Z2I6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWU3Il0sZm5hbWU6IjFmMWVjLTFmMWU3Iix1YzoiMWYxZWMtMWYxZTciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZ2E6Ijp7dW5pY29kZTpbIjFmMWVjLTFmMWU2Il0sZm5hbWU6IjFmMWVjLTFmMWU2Iix1YzoiMWYxZWMtMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOmdhOiI6e3VuaWNvZGU6WyIxZjFlYy0xZjFlNiJdLGZuYW1lOiIxZjFlYy0xZjFlNiIsdWM6IjFmMWVjLTFmMWU2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2ZyOiI6e3VuaWNvZGU6WyIxZjFlYi0xZjFmNyJdLGZuYW1lOiIxZjFlYi0xZjFmNyIsdWM6IjFmMWViLTFmMWY3Iixpc0Nhbm9uaWNhbDohMH0sIjpmcjoiOnt1bmljb2RlOlsiMWYxZWItMWYxZjciXSxmbmFtZToiMWYxZWItMWYxZjciLHVjOiIxZjFlYi0xZjFmNyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19mbzoiOnt1bmljb2RlOlsiMWYxZWItMWYxZjQiXSxmbmFtZToiMWYxZWItMWYxZjQiLHVjOiIxZjFlYi0xZjFmNCIsaXNDYW5vbmljYWw6ITB9LCI6Zm86Ijp7dW5pY29kZTpbIjFmMWViLTFmMWY0Il0sZm5hbWU6IjFmMWViLTFmMWY0Iix1YzoiMWYxZWItMWYxZjQiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZm06Ijp7dW5pY29kZTpbIjFmMWViLTFmMWYyIl0sZm5hbWU6IjFmMWViLTFmMWYyIix1YzoiMWYxZWItMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmZtOiI6e3VuaWNvZGU6WyIxZjFlYi0xZjFmMiJdLGZuYW1lOiIxZjFlYi0xZjFmMiIsdWM6IjFmMWViLTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2ZrOiI6e3VuaWNvZGU6WyIxZjFlYi0xZjFmMCJdLGZuYW1lOiIxZjFlYi0xZjFmMCIsdWM6IjFmMWViLTFmMWYwIixpc0Nhbm9uaWNhbDohMH0sIjpmazoiOnt1bmljb2RlOlsiMWYxZWItMWYxZjAiXSxmbmFtZToiMWYxZWItMWYxZjAiLHVjOiIxZjFlYi0xZjFmMCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19majoiOnt1bmljb2RlOlsiMWYxZWItMWYxZWYiXSxmbmFtZToiMWYxZWItMWYxZWYiLHVjOiIxZjFlYi0xZjFlZiIsaXNDYW5vbmljYWw6ITB9LCI6Zmo6Ijp7dW5pY29kZTpbIjFmMWViLTFmMWVmIl0sZm5hbWU6IjFmMWViLTFmMWVmIix1YzoiMWYxZWItMWYxZWYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZmk6Ijp7dW5pY29kZTpbIjFmMWViLTFmMWVlIl0sZm5hbWU6IjFmMWViLTFmMWVlIix1YzoiMWYxZWItMWYxZWUiLGlzQ2Fub25pY2FsOiEwfSwiOmZpOiI6e3VuaWNvZGU6WyIxZjFlYi0xZjFlZSJdLGZuYW1lOiIxZjFlYi0xZjFlZSIsdWM6IjFmMWViLTFmMWVlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2V1OiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFmYSJdLGZuYW1lOiIxZjFlYS0xZjFmYSIsdWM6IjFmMWVhLTFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjpldToiOnt1bmljb2RlOlsiMWYxZWEtMWYxZmEiXSxmbmFtZToiMWYxZWEtMWYxZmEiLHVjOiIxZjFlYS0xZjFmYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ldDoiOnt1bmljb2RlOlsiMWYxZWEtMWYxZjkiXSxmbmFtZToiMWYxZWEtMWYxZjkiLHVjOiIxZjFlYS0xZjFmOSIsaXNDYW5vbmljYWw6ITB9LCI6ZXQ6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWY5Il0sZm5hbWU6IjFmMWVhLTFmMWY5Iix1YzoiMWYxZWEtMWYxZjkiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZXM6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWY4Il0sZm5hbWU6IjFmMWVhLTFmMWY4Iix1YzoiMWYxZWEtMWYxZjgiLGlzQ2Fub25pY2FsOiEwfSwiOmVzOiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFmOCJdLGZuYW1lOiIxZjFlYS0xZjFmOCIsdWM6IjFmMWVhLTFmMWY4Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2VyOiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFmNyJdLGZuYW1lOiIxZjFlYS0xZjFmNyIsdWM6IjFmMWVhLTFmMWY3Iixpc0Nhbm9uaWNhbDohMH0sIjplcjoiOnt1bmljb2RlOlsiMWYxZWEtMWYxZjciXSxmbmFtZToiMWYxZWEtMWYxZjciLHVjOiIxZjFlYS0xZjFmNyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19laDoiOnt1bmljb2RlOlsiMWYxZWEtMWYxZWQiXSxmbmFtZToiMWYxZWEtMWYxZWQiLHVjOiIxZjFlYS0xZjFlZCIsaXNDYW5vbmljYWw6ITB9LCI6ZWg6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWVkIl0sZm5hbWU6IjFmMWVhLTFmMWVkIix1YzoiMWYxZWEtMWYxZWQiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZWc6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWVjIl0sZm5hbWU6IjFmMWVhLTFmMWVjIix1YzoiMWYxZWEtMWYxZWMiLGlzQ2Fub25pY2FsOiEwfSwiOmVnOiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFlYyJdLGZuYW1lOiIxZjFlYS0xZjFlYyIsdWM6IjFmMWVhLTFmMWVjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2VlOiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFlYSJdLGZuYW1lOiIxZjFlYS0xZjFlYSIsdWM6IjFmMWVhLTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjplZToiOnt1bmljb2RlOlsiMWYxZWEtMWYxZWEiXSxmbmFtZToiMWYxZWEtMWYxZWEiLHVjOiIxZjFlYS0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19lYzoiOnt1bmljb2RlOlsiMWYxZWEtMWYxZTgiXSxmbmFtZToiMWYxZWEtMWYxZTgiLHVjOiIxZjFlYS0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6ZWM6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWU4Il0sZm5hbWU6IjFmMWVhLTFmMWU4Iix1YzoiMWYxZWEtMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZWE6Ijp7dW5pY29kZTpbIjFmMWVhLTFmMWU2Il0sZm5hbWU6IjFmMWVhLTFmMWU2Iix1YzoiMWYxZWEtMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOmVhOiI6e3VuaWNvZGU6WyIxZjFlYS0xZjFlNiJdLGZuYW1lOiIxZjFlYS0xZjFlNiIsdWM6IjFmMWVhLTFmMWU2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2R6OiI6e3VuaWNvZGU6WyIxZjFlOS0xZjFmZiJdLGZuYW1lOiIxZjFlOS0xZjFmZiIsdWM6IjFmMWU5LTFmMWZmIixpc0Nhbm9uaWNhbDohMH0sIjpkejoiOnt1bmljb2RlOlsiMWYxZTktMWYxZmYiXSxmbmFtZToiMWYxZTktMWYxZmYiLHVjOiIxZjFlOS0xZjFmZiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19kbzoiOnt1bmljb2RlOlsiMWYxZTktMWYxZjQiXSxmbmFtZToiMWYxZTktMWYxZjQiLHVjOiIxZjFlOS0xZjFmNCIsaXNDYW5vbmljYWw6ITB9LCI6ZG86Ijp7dW5pY29kZTpbIjFmMWU5LTFmMWY0Il0sZm5hbWU6IjFmMWU5LTFmMWY0Iix1YzoiMWYxZTktMWYxZjQiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZG06Ijp7dW5pY29kZTpbIjFmMWU5LTFmMWYyIl0sZm5hbWU6IjFmMWU5LTFmMWYyIix1YzoiMWYxZTktMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmRtOiI6e3VuaWNvZGU6WyIxZjFlOS0xZjFmMiJdLGZuYW1lOiIxZjFlOS0xZjFmMiIsdWM6IjFmMWU5LTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2RrOiI6e3VuaWNvZGU6WyIxZjFlOS0xZjFmMCJdLGZuYW1lOiIxZjFlOS0xZjFmMCIsdWM6IjFmMWU5LTFmMWYwIixpc0Nhbm9uaWNhbDohMH0sIjpkazoiOnt1bmljb2RlOlsiMWYxZTktMWYxZjAiXSxmbmFtZToiMWYxZTktMWYxZjAiLHVjOiIxZjFlOS0xZjFmMCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19kajoiOnt1bmljb2RlOlsiMWYxZTktMWYxZWYiXSxmbmFtZToiMWYxZTktMWYxZWYiLHVjOiIxZjFlOS0xZjFlZiIsaXNDYW5vbmljYWw6ITB9LCI6ZGo6Ijp7dW5pY29kZTpbIjFmMWU5LTFmMWVmIl0sZm5hbWU6IjFmMWU5LTFmMWVmIix1YzoiMWYxZTktMWYxZWYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfZGc6Ijp7dW5pY29kZTpbIjFmMWU5LTFmMWVjIl0sZm5hbWU6IjFmMWU5LTFmMWVjIix1YzoiMWYxZTktMWYxZWMiLGlzQ2Fub25pY2FsOiEwfSwiOmRnOiI6e3VuaWNvZGU6WyIxZjFlOS0xZjFlYyJdLGZuYW1lOiIxZjFlOS0xZjFlYyIsdWM6IjFmMWU5LTFmMWVjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2RlOiI6e3VuaWNvZGU6WyIxZjFlOS0xZjFlYSJdLGZuYW1lOiIxZjFlOS0xZjFlYSIsdWM6IjFmMWU5LTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjpkZToiOnt1bmljb2RlOlsiMWYxZTktMWYxZWEiXSxmbmFtZToiMWYxZTktMWYxZWEiLHVjOiIxZjFlOS0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jejoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZmYiXSxmbmFtZToiMWYxZTgtMWYxZmYiLHVjOiIxZjFlOC0xZjFmZiIsaXNDYW5vbmljYWw6ITB9LCI6Y3o6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWZmIl0sZm5hbWU6IjFmMWU4LTFmMWZmIix1YzoiMWYxZTgtMWYxZmYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY3k6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWZlIl0sZm5hbWU6IjFmMWU4LTFmMWZlIix1YzoiMWYxZTgtMWYxZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmN5OiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmZSJdLGZuYW1lOiIxZjFlOC0xZjFmZSIsdWM6IjFmMWU4LTFmMWZlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2N4OiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmZCJdLGZuYW1lOiIxZjFlOC0xZjFmZCIsdWM6IjFmMWU4LTFmMWZkIixpc0Nhbm9uaWNhbDohMH0sIjpjeDoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZmQiXSxmbmFtZToiMWYxZTgtMWYxZmQiLHVjOiIxZjFlOC0xZjFmZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jdzoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZmMiXSxmbmFtZToiMWYxZTgtMWYxZmMiLHVjOiIxZjFlOC0xZjFmYyIsaXNDYW5vbmljYWw6ITB9LCI6Y3c6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWZjIl0sZm5hbWU6IjFmMWU4LTFmMWZjIix1YzoiMWYxZTgtMWYxZmMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY3Y6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWZiIl0sZm5hbWU6IjFmMWU4LTFmMWZiIix1YzoiMWYxZTgtMWYxZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmN2OiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmYiJdLGZuYW1lOiIxZjFlOC0xZjFmYiIsdWM6IjFmMWU4LTFmMWZiIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2N1OiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmYSJdLGZuYW1lOiIxZjFlOC0xZjFmYSIsdWM6IjFmMWU4LTFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjpjdToiOnt1bmljb2RlOlsiMWYxZTgtMWYxZmEiXSxmbmFtZToiMWYxZTgtMWYxZmEiLHVjOiIxZjFlOC0xZjFmYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jcjoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZjciXSxmbmFtZToiMWYxZTgtMWYxZjciLHVjOiIxZjFlOC0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6Y3I6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWY3Il0sZm5hbWU6IjFmMWU4LTFmMWY3Iix1YzoiMWYxZTgtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY3A6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWY1Il0sZm5hbWU6IjFmMWU4LTFmMWY1Iix1YzoiMWYxZTgtMWYxZjUiLGlzQ2Fub25pY2FsOiEwfSwiOmNwOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmNSJdLGZuYW1lOiIxZjFlOC0xZjFmNSIsdWM6IjFmMWU4LTFmMWY1Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2NvOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmNCJdLGZuYW1lOiIxZjFlOC0xZjFmNCIsdWM6IjFmMWU4LTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjpjbzoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZjQiXSxmbmFtZToiMWYxZTgtMWYxZjQiLHVjOiIxZjFlOC0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jbjoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZjMiXSxmbmFtZToiMWYxZTgtMWYxZjMiLHVjOiIxZjFlOC0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6Y246Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWYzIl0sZm5hbWU6IjFmMWU4LTFmMWYzIix1YzoiMWYxZTgtMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY206Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWYyIl0sZm5hbWU6IjFmMWU4LTFmMWYyIix1YzoiMWYxZTgtMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmNtOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmMiJdLGZuYW1lOiIxZjFlOC0xZjFmMiIsdWM6IjFmMWU4LTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2NsOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFmMSJdLGZuYW1lOiIxZjFlOC0xZjFmMSIsdWM6IjFmMWU4LTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjpjaGlsZToiOnt1bmljb2RlOlsiMWYxZTgtMWYxZjEiXSxmbmFtZToiMWYxZTgtMWYxZjEiLHVjOiIxZjFlOC0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jazoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZjAiXSxmbmFtZToiMWYxZTgtMWYxZjAiLHVjOiIxZjFlOC0xZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6Y2s6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWYwIl0sZm5hbWU6IjFmMWU4LTFmMWYwIix1YzoiMWYxZTgtMWYxZjAiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY2k6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWVlIl0sZm5hbWU6IjFmMWU4LTFmMWVlIix1YzoiMWYxZTgtMWYxZWUiLGlzQ2Fub25pY2FsOiEwfSwiOmNpOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFlZSJdLGZuYW1lOiIxZjFlOC0xZjFlZSIsdWM6IjFmMWU4LTFmMWVlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2NoOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFlZCJdLGZuYW1lOiIxZjFlOC0xZjFlZCIsdWM6IjFmMWU4LTFmMWVkIixpc0Nhbm9uaWNhbDohMH0sIjpjaDoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZWQiXSxmbmFtZToiMWYxZTgtMWYxZWQiLHVjOiIxZjFlOC0xZjFlZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jZzoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZWMiXSxmbmFtZToiMWYxZTgtMWYxZWMiLHVjOiIxZjFlOC0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6Y2c6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWVjIl0sZm5hbWU6IjFmMWU4LTFmMWVjIix1YzoiMWYxZTgtMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY2Y6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWViIl0sZm5hbWU6IjFmMWU4LTFmMWViIix1YzoiMWYxZTgtMWYxZWIiLGlzQ2Fub25pY2FsOiEwfSwiOmNmOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFlYiJdLGZuYW1lOiIxZjFlOC0xZjFlYiIsdWM6IjFmMWU4LTFmMWViIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2NkOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFlOSJdLGZuYW1lOiIxZjFlOC0xZjFlOSIsdWM6IjFmMWU4LTFmMWU5Iixpc0Nhbm9uaWNhbDohMH0sIjpjb25nbzoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZTkiXSxmbmFtZToiMWYxZTgtMWYxZTkiLHVjOiIxZjFlOC0xZjFlOSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19jYzoiOnt1bmljb2RlOlsiMWYxZTgtMWYxZTgiXSxmbmFtZToiMWYxZTgtMWYxZTgiLHVjOiIxZjFlOC0xZjFlOCIsaXNDYW5vbmljYWw6ITB9LCI6Y2M6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWU4Il0sZm5hbWU6IjFmMWU4LTFmMWU4Iix1YzoiMWYxZTgtMWYxZTgiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfY2E6Ijp7dW5pY29kZTpbIjFmMWU4LTFmMWU2Il0sZm5hbWU6IjFmMWU4LTFmMWU2Iix1YzoiMWYxZTgtMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOmNhOiI6e3VuaWNvZGU6WyIxZjFlOC0xZjFlNiJdLGZuYW1lOiIxZjFlOC0xZjFlNiIsdWM6IjFmMWU4LTFmMWU2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2J6OiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmZiJdLGZuYW1lOiIxZjFlNy0xZjFmZiIsdWM6IjFmMWU3LTFmMWZmIixpc0Nhbm9uaWNhbDohMH0sIjpiejoiOnt1bmljb2RlOlsiMWYxZTctMWYxZmYiXSxmbmFtZToiMWYxZTctMWYxZmYiLHVjOiIxZjFlNy0xZjFmZiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ieToiOnt1bmljb2RlOlsiMWYxZTctMWYxZmUiXSxmbmFtZToiMWYxZTctMWYxZmUiLHVjOiIxZjFlNy0xZjFmZSIsaXNDYW5vbmljYWw6ITB9LCI6Ynk6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWZlIl0sZm5hbWU6IjFmMWU3LTFmMWZlIix1YzoiMWYxZTctMWYxZmUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYnc6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWZjIl0sZm5hbWU6IjFmMWU3LTFmMWZjIix1YzoiMWYxZTctMWYxZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmJ3OiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmYyJdLGZuYW1lOiIxZjFlNy0xZjFmYyIsdWM6IjFmMWU3LTFmMWZjIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2J2OiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmYiJdLGZuYW1lOiIxZjFlNy0xZjFmYiIsdWM6IjFmMWU3LTFmMWZiIixpc0Nhbm9uaWNhbDohMH0sIjpidjoiOnt1bmljb2RlOlsiMWYxZTctMWYxZmIiXSxmbmFtZToiMWYxZTctMWYxZmIiLAp1YzoiMWYxZTctMWYxZmIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYnQ6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWY5Il0sZm5hbWU6IjFmMWU3LTFmMWY5Iix1YzoiMWYxZTctMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOmJ0OiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmOSJdLGZuYW1lOiIxZjFlNy0xZjFmOSIsdWM6IjFmMWU3LTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JzOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmOCJdLGZuYW1lOiIxZjFlNy0xZjFmOCIsdWM6IjFmMWU3LTFmMWY4Iixpc0Nhbm9uaWNhbDohMH0sIjpiczoiOnt1bmljb2RlOlsiMWYxZTctMWYxZjgiXSxmbmFtZToiMWYxZTctMWYxZjgiLHVjOiIxZjFlNy0xZjFmOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19icjoiOnt1bmljb2RlOlsiMWYxZTctMWYxZjciXSxmbmFtZToiMWYxZTctMWYxZjciLHVjOiIxZjFlNy0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6YnI6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWY3Il0sZm5hbWU6IjFmMWU3LTFmMWY3Iix1YzoiMWYxZTctMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYnE6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWY2Il0sZm5hbWU6IjFmMWU3LTFmMWY2Iix1YzoiMWYxZTctMWYxZjYiLGlzQ2Fub25pY2FsOiEwfSwiOmJxOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmNiJdLGZuYW1lOiIxZjFlNy0xZjFmNiIsdWM6IjFmMWU3LTFmMWY2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JvOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmNCJdLGZuYW1lOiIxZjFlNy0xZjFmNCIsdWM6IjFmMWU3LTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjpibzoiOnt1bmljb2RlOlsiMWYxZTctMWYxZjQiXSxmbmFtZToiMWYxZTctMWYxZjQiLHVjOiIxZjFlNy0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19ibjoiOnt1bmljb2RlOlsiMWYxZTctMWYxZjMiXSxmbmFtZToiMWYxZTctMWYxZjMiLHVjOiIxZjFlNy0xZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6Ym46Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWYzIl0sZm5hbWU6IjFmMWU3LTFmMWYzIix1YzoiMWYxZTctMWYxZjMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYm06Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWYyIl0sZm5hbWU6IjFmMWU3LTFmMWYyIix1YzoiMWYxZTctMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOmJtOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmMiJdLGZuYW1lOiIxZjFlNy0xZjFmMiIsdWM6IjFmMWU3LTFmMWYyIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JsOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFmMSJdLGZuYW1lOiIxZjFlNy0xZjFmMSIsdWM6IjFmMWU3LTFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjpibDoiOnt1bmljb2RlOlsiMWYxZTctMWYxZjEiXSxmbmFtZToiMWYxZTctMWYxZjEiLHVjOiIxZjFlNy0xZjFmMSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19iajoiOnt1bmljb2RlOlsiMWYxZTctMWYxZWYiXSxmbmFtZToiMWYxZTctMWYxZWYiLHVjOiIxZjFlNy0xZjFlZiIsaXNDYW5vbmljYWw6ITB9LCI6Ymo6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWVmIl0sZm5hbWU6IjFmMWU3LTFmMWVmIix1YzoiMWYxZTctMWYxZWYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYmk6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWVlIl0sZm5hbWU6IjFmMWU3LTFmMWVlIix1YzoiMWYxZTctMWYxZWUiLGlzQ2Fub25pY2FsOiEwfSwiOmJpOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlZSJdLGZuYW1lOiIxZjFlNy0xZjFlZSIsdWM6IjFmMWU3LTFmMWVlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JoOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlZCJdLGZuYW1lOiIxZjFlNy0xZjFlZCIsdWM6IjFmMWU3LTFmMWVkIixpc0Nhbm9uaWNhbDohMH0sIjpiaDoiOnt1bmljb2RlOlsiMWYxZTctMWYxZWQiXSxmbmFtZToiMWYxZTctMWYxZWQiLHVjOiIxZjFlNy0xZjFlZCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19iZzoiOnt1bmljb2RlOlsiMWYxZTctMWYxZWMiXSxmbmFtZToiMWYxZTctMWYxZWMiLHVjOiIxZjFlNy0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6Ymc6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWVjIl0sZm5hbWU6IjFmMWU3LTFmMWVjIix1YzoiMWYxZTctMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYmY6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWViIl0sZm5hbWU6IjFmMWU3LTFmMWViIix1YzoiMWYxZTctMWYxZWIiLGlzQ2Fub25pY2FsOiEwfSwiOmJmOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlYiJdLGZuYW1lOiIxZjFlNy0xZjFlYiIsdWM6IjFmMWU3LTFmMWViIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JlOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlYSJdLGZuYW1lOiIxZjFlNy0xZjFlYSIsdWM6IjFmMWU3LTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjpiZToiOnt1bmljb2RlOlsiMWYxZTctMWYxZWEiXSxmbmFtZToiMWYxZTctMWYxZWEiLHVjOiIxZjFlNy0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19iZDoiOnt1bmljb2RlOlsiMWYxZTctMWYxZTkiXSxmbmFtZToiMWYxZTctMWYxZTkiLHVjOiIxZjFlNy0xZjFlOSIsaXNDYW5vbmljYWw6ITB9LCI6YmQ6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWU5Il0sZm5hbWU6IjFmMWU3LTFmMWU5Iix1YzoiMWYxZTctMWYxZTkiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYmI6Ijp7dW5pY29kZTpbIjFmMWU3LTFmMWU3Il0sZm5hbWU6IjFmMWU3LTFmMWU3Iix1YzoiMWYxZTctMWYxZTciLGlzQ2Fub25pY2FsOiEwfSwiOmJiOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlNyJdLGZuYW1lOiIxZjFlNy0xZjFlNyIsdWM6IjFmMWU3LTFmMWU3Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2JhOiI6e3VuaWNvZGU6WyIxZjFlNy0xZjFlNiJdLGZuYW1lOiIxZjFlNy0xZjFlNiIsdWM6IjFmMWU3LTFmMWU2Iixpc0Nhbm9uaWNhbDohMH0sIjpiYToiOnt1bmljb2RlOlsiMWYxZTctMWYxZTYiXSxmbmFtZToiMWYxZTctMWYxZTYiLHVjOiIxZjFlNy0xZjFlNiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hejoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZmYiXSxmbmFtZToiMWYxZTYtMWYxZmYiLHVjOiIxZjFlNi0xZjFmZiIsaXNDYW5vbmljYWw6ITB9LCI6YXo6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWZmIl0sZm5hbWU6IjFmMWU2LTFmMWZmIix1YzoiMWYxZTYtMWYxZmYiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYXg6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWZkIl0sZm5hbWU6IjFmMWU2LTFmMWZkIix1YzoiMWYxZTYtMWYxZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmF4OiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmZCJdLGZuYW1lOiIxZjFlNi0xZjFmZCIsdWM6IjFmMWU2LTFmMWZkIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2F3OiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmYyJdLGZuYW1lOiIxZjFlNi0xZjFmYyIsdWM6IjFmMWU2LTFmMWZjIixpc0Nhbm9uaWNhbDohMH0sIjphdzoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZmMiXSxmbmFtZToiMWYxZTYtMWYxZmMiLHVjOiIxZjFlNi0xZjFmYyIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hdToiOnt1bmljb2RlOlsiMWYxZTYtMWYxZmEiXSxmbmFtZToiMWYxZTYtMWYxZmEiLHVjOiIxZjFlNi0xZjFmYSIsaXNDYW5vbmljYWw6ITB9LCI6YXU6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWZhIl0sZm5hbWU6IjFmMWU2LTFmMWZhIix1YzoiMWYxZTYtMWYxZmEiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYXQ6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWY5Il0sZm5hbWU6IjFmMWU2LTFmMWY5Iix1YzoiMWYxZTYtMWYxZjkiLGlzQ2Fub25pY2FsOiEwfSwiOmF0OiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmOSJdLGZuYW1lOiIxZjFlNi0xZjFmOSIsdWM6IjFmMWU2LTFmMWY5Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2FzOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmOCJdLGZuYW1lOiIxZjFlNi0xZjFmOCIsdWM6IjFmMWU2LTFmMWY4Iixpc0Nhbm9uaWNhbDohMH0sIjphczoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZjgiXSxmbmFtZToiMWYxZTYtMWYxZjgiLHVjOiIxZjFlNi0xZjFmOCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hcjoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZjciXSxmbmFtZToiMWYxZTYtMWYxZjciLHVjOiIxZjFlNi0xZjFmNyIsaXNDYW5vbmljYWw6ITB9LCI6YXI6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWY3Il0sZm5hbWU6IjFmMWU2LTFmMWY3Iix1YzoiMWYxZTYtMWYxZjciLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYXE6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWY2Il0sZm5hbWU6IjFmMWU2LTFmMWY2Iix1YzoiMWYxZTYtMWYxZjYiLGlzQ2Fub25pY2FsOiEwfSwiOmFxOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmNiJdLGZuYW1lOiIxZjFlNi0xZjFmNiIsdWM6IjFmMWU2LTFmMWY2Iixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2FvOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmNCJdLGZuYW1lOiIxZjFlNi0xZjFmNCIsdWM6IjFmMWU2LTFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjphbzoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZjQiXSxmbmFtZToiMWYxZTYtMWYxZjQiLHVjOiIxZjFlNi0xZjFmNCIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hbToiOnt1bmljb2RlOlsiMWYxZTYtMWYxZjIiXSxmbmFtZToiMWYxZTYtMWYxZjIiLHVjOiIxZjFlNi0xZjFmMiIsaXNDYW5vbmljYWw6ITB9LCI6YW06Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWYyIl0sZm5hbWU6IjFmMWU2LTFmMWYyIix1YzoiMWYxZTYtMWYxZjIiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYWw6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWYxIl0sZm5hbWU6IjFmMWU2LTFmMWYxIix1YzoiMWYxZTYtMWYxZjEiLGlzQ2Fub25pY2FsOiEwfSwiOmFsOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFmMSJdLGZuYW1lOiIxZjFlNi0xZjFmMSIsdWM6IjFmMWU2LTFmMWYxIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2FpOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFlZSJdLGZuYW1lOiIxZjFlNi0xZjFlZSIsdWM6IjFmMWU2LTFmMWVlIixpc0Nhbm9uaWNhbDohMH0sIjphaToiOnt1bmljb2RlOlsiMWYxZTYtMWYxZWUiXSxmbmFtZToiMWYxZTYtMWYxZWUiLHVjOiIxZjFlNi0xZjFlZSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hZzoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZWMiXSxmbmFtZToiMWYxZTYtMWYxZWMiLHVjOiIxZjFlNi0xZjFlYyIsaXNDYW5vbmljYWw6ITB9LCI6YWc6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWVjIl0sZm5hbWU6IjFmMWU2LTFmMWVjIix1YzoiMWYxZTYtMWYxZWMiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYWY6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWViIl0sZm5hbWU6IjFmMWU2LTFmMWViIix1YzoiMWYxZTYtMWYxZWIiLGlzQ2Fub25pY2FsOiEwfSwiOmFmOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFlYiJdLGZuYW1lOiIxZjFlNi0xZjFlYiIsdWM6IjFmMWU2LTFmMWViIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFnX2FlOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFlYSJdLGZuYW1lOiIxZjFlNi0xZjFlYSIsdWM6IjFmMWU2LTFmMWVhIixpc0Nhbm9uaWNhbDohMH0sIjphZToiOnt1bmljb2RlOlsiMWYxZTYtMWYxZWEiXSxmbmFtZToiMWYxZTYtMWYxZWEiLHVjOiIxZjFlNi0xZjFlYSIsaXNDYW5vbmljYWw6ITF9LCI6ZmxhZ19hZDoiOnt1bmljb2RlOlsiMWYxZTYtMWYxZTkiXSxmbmFtZToiMWYxZTYtMWYxZTkiLHVjOiIxZjFlNi0xZjFlOSIsaXNDYW5vbmljYWw6ITB9LCI6YWQ6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWU5Il0sZm5hbWU6IjFmMWU2LTFmMWU5Iix1YzoiMWYxZTYtMWYxZTkiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYWM6Ijp7dW5pY29kZTpbIjFmMWU2LTFmMWU4Il0sZm5hbWU6IjFmMWU2LTFmMWU4Iix1YzoiMWYxZTYtMWYxZTgiLGlzQ2Fub25pY2FsOiEwfSwiOmFjOiI6e3VuaWNvZGU6WyIxZjFlNi0xZjFlOCJdLGZuYW1lOiIxZjFlNi0xZjFlOCIsdWM6IjFmMWU2LTFmMWU4Iixpc0Nhbm9uaWNhbDohMX0sIjptYWhqb25nOiI6e3VuaWNvZGU6WyIxZjAwNC1mZTBmIiwiMWYwMDQiXSxmbmFtZToiMWYwMDQiLHVjOiIxZjAwNCIsaXNDYW5vbmljYWw6ITB9LCI6cGFya2luZzoiOnt1bmljb2RlOlsiMWYxN2YtZmUwZiIsIjFmMTdmIl0sZm5hbWU6IjFmMTdmIix1YzoiMWYxN2YiLGlzQ2Fub25pY2FsOiEwfSwiOnNhOiI6e3VuaWNvZGU6WyIxZjIwMi1mZTBmIiwiMWYyMDIiXSxmbmFtZToiMWYyMDIiLHVjOiIxZjIwMiIsaXNDYW5vbmljYWw6ITB9LCI6dTcxMjE6Ijp7dW5pY29kZTpbIjFmMjFhLWZlMGYiLCIxZjIxYSJdLGZuYW1lOiIxZjIxYSIsdWM6IjFmMjFhIixpc0Nhbm9uaWNhbDohMH0sIjp1NjMwNzoiOnt1bmljb2RlOlsiMWYyMmYtZmUwZiIsIjFmMjJmIl0sZm5hbWU6IjFmMjJmIix1YzoiMWYyMmYiLGlzQ2Fub25pY2FsOiEwfSwiOnU2NzA4OiI6e3VuaWNvZGU6WyIxZjIzNy1mZTBmIiwiMWYyMzciXSxmbmFtZToiMWYyMzciLHVjOiIxZjIzNyIsaXNDYW5vbmljYWw6ITB9LCI6ZmlsbV9mcmFtZXM6Ijp7dW5pY29kZTpbIjFmMzllLWZlMGYiLCIxZjM5ZSJdLGZuYW1lOiIxZjM5ZSIsdWM6IjFmMzllIixpc0Nhbm9uaWNhbDohMH0sIjp0aWNrZXRzOiI6e3VuaWNvZGU6WyIxZjM5Zi1mZTBmIiwiMWYzOWYiXSxmbmFtZToiMWYzOWYiLHVjOiIxZjM5ZiIsaXNDYW5vbmljYWw6ITB9LCI6YWRtaXNzaW9uX3RpY2tldHM6Ijp7dW5pY29kZTpbIjFmMzlmLWZlMGYiLCIxZjM5ZiJdLGZuYW1lOiIxZjM5ZiIsdWM6IjFmMzlmIixpc0Nhbm9uaWNhbDohMX0sIjpsaWZ0ZXI6Ijp7dW5pY29kZTpbIjFmM2NiLWZlMGYiLCIxZjNjYiJdLGZuYW1lOiIxZjNjYiIsdWM6IjFmM2NiIixpc0Nhbm9uaWNhbDohMH0sIjp3ZWlnaHRfbGlmdGVyOiI6e3VuaWNvZGU6WyIxZjNjYi1mZTBmIiwiMWYzY2IiXSxmbmFtZToiMWYzY2IiLHVjOiIxZjNjYiIsaXNDYW5vbmljYWw6ITF9LCI6Z29sZmVyOiI6e3VuaWNvZGU6WyIxZjNjYy1mZTBmIiwiMWYzY2MiXSxmbmFtZToiMWYzY2MiLHVjOiIxZjNjYyIsaXNDYW5vbmljYWw6ITB9LCI6bW90b3JjeWNsZToiOnt1bmljb2RlOlsiMWYzY2QtZmUwZiIsIjFmM2NkIl0sZm5hbWU6IjFmM2NkIix1YzoiMWYzY2QiLGlzQ2Fub25pY2FsOiEwfSwiOnJhY2luZ19tb3RvcmN5Y2xlOiI6e3VuaWNvZGU6WyIxZjNjZC1mZTBmIiwiMWYzY2QiXSxmbmFtZToiMWYzY2QiLHVjOiIxZjNjZCIsaXNDYW5vbmljYWw6ITF9LCI6cmFjZV9jYXI6Ijp7dW5pY29kZTpbIjFmM2NlLWZlMGYiLCIxZjNjZSJdLGZuYW1lOiIxZjNjZSIsdWM6IjFmM2NlIixpc0Nhbm9uaWNhbDohMH0sIjpyYWNpbmdfY2FyOiI6e3VuaWNvZGU6WyIxZjNjZS1mZTBmIiwiMWYzY2UiXSxmbmFtZToiMWYzY2UiLHVjOiIxZjNjZSIsaXNDYW5vbmljYWw6ITF9LCI6bWlsaXRhcnlfbWVkYWw6Ijp7dW5pY29kZTpbIjFmMzk2LWZlMGYiLCIxZjM5NiJdLGZuYW1lOiIxZjM5NiIsdWM6IjFmMzk2Iixpc0Nhbm9uaWNhbDohMH0sIjpyZW1pbmRlcl9yaWJib246Ijp7dW5pY29kZTpbIjFmMzk3LWZlMGYiLCIxZjM5NyJdLGZuYW1lOiIxZjM5NyIsdWM6IjFmMzk3Iixpc0Nhbm9uaWNhbDohMH0sIjpob3RfcGVwcGVyOiI6e3VuaWNvZGU6WyIxZjMzNi1mZTBmIiwiMWYzMzYiXSxmbmFtZToiMWYzMzYiLHVjOiIxZjMzNiIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvdWRfcmFpbjoiOnt1bmljb2RlOlsiMWYzMjctZmUwZiIsIjFmMzI3Il0sZm5hbWU6IjFmMzI3Iix1YzoiMWYzMjciLGlzQ2Fub25pY2FsOiEwfSwiOmNsb3VkX3dpdGhfcmFpbjoiOnt1bmljb2RlOlsiMWYzMjctZmUwZiIsIjFmMzI3Il0sZm5hbWU6IjFmMzI3Iix1YzoiMWYzMjciLGlzQ2Fub25pY2FsOiExfSwiOmNsb3VkX3Nub3c6Ijp7dW5pY29kZTpbIjFmMzI4LWZlMGYiLCIxZjMyOCJdLGZuYW1lOiIxZjMyOCIsdWM6IjFmMzI4Iixpc0Nhbm9uaWNhbDohMH0sIjpjbG91ZF93aXRoX3Nub3c6Ijp7dW5pY29kZTpbIjFmMzI4LWZlMGYiLCIxZjMyOCJdLGZuYW1lOiIxZjMyOCIsdWM6IjFmMzI4Iixpc0Nhbm9uaWNhbDohMX0sIjpjbG91ZF9saWdodG5pbmc6Ijp7dW5pY29kZTpbIjFmMzI5LWZlMGYiLCIxZjMyOSJdLGZuYW1lOiIxZjMyOSIsdWM6IjFmMzI5Iixpc0Nhbm9uaWNhbDohMH0sIjpjbG91ZF93aXRoX2xpZ2h0bmluZzoiOnt1bmljb2RlOlsiMWYzMjktZmUwZiIsIjFmMzI5Il0sZm5hbWU6IjFmMzI5Iix1YzoiMWYzMjkiLGlzQ2Fub25pY2FsOiExfSwiOmNsb3VkX3Rvcm5hZG86Ijp7dW5pY29kZTpbIjFmMzJhLWZlMGYiLCIxZjMyYSJdLGZuYW1lOiIxZjMyYSIsdWM6IjFmMzJhIixpc0Nhbm9uaWNhbDohMH0sIjpjbG91ZF93aXRoX3Rvcm5hZG86Ijp7dW5pY29kZTpbIjFmMzJhLWZlMGYiLCIxZjMyYSJdLGZuYW1lOiIxZjMyYSIsdWM6IjFmMzJhIixpc0Nhbm9uaWNhbDohMX0sIjpmb2c6Ijp7dW5pY29kZTpbIjFmMzJiLWZlMGYiLCIxZjMyYiJdLGZuYW1lOiIxZjMyYiIsdWM6IjFmMzJiIixpc0Nhbm9uaWNhbDohMH0sIjp3aW5kX2Jsb3dpbmdfZmFjZToiOnt1bmljb2RlOlsiMWYzMmMtZmUwZiIsIjFmMzJjIl0sZm5hbWU6IjFmMzJjIix1YzoiMWYzMmMiLGlzQ2Fub25pY2FsOiEwfSwiOmNoaXBtdW5rOiI6e3VuaWNvZGU6WyIxZjQzZi1mZTBmIiwiMWY0M2YiXSxmbmFtZToiMWY0M2YiLHVjOiIxZjQzZiIsaXNDYW5vbmljYWw6ITB9LCI6c3BpZGVyOiI6e3VuaWNvZGU6WyIxZjU3Ny1mZTBmIiwiMWY1NzciXSxmbmFtZToiMWY1NzciLHVjOiIxZjU3NyIsaXNDYW5vbmljYWw6ITB9LCI6c3BpZGVyX3dlYjoiOnt1bmljb2RlOlsiMWY1NzgtZmUwZiIsIjFmNTc4Il0sZm5hbWU6IjFmNTc4Iix1YzoiMWY1NzgiLGlzQ2Fub25pY2FsOiEwfSwiOnRoZXJtb21ldGVyOiI6e3VuaWNvZGU6WyIxZjMyMS1mZTBmIiwiMWYzMjEiXSxmbmFtZToiMWYzMjEiLHVjOiIxZjMyMSIsaXNDYW5vbmljYWw6ITB9LCI6bWljcm9waG9uZTI6Ijp7dW5pY29kZTpbIjFmMzk5LWZlMGYiLCIxZjM5OSJdLGZuYW1lOiIxZjM5OSIsdWM6IjFmMzk5Iixpc0Nhbm9uaWNhbDohMH0sIjpzdHVkaW9fbWljcm9waG9uZToiOnt1bmljb2RlOlsiMWYzOTktZmUwZiIsIjFmMzk5Il0sZm5hbWU6IjFmMzk5Iix1YzoiMWYzOTkiLGlzQ2Fub25pY2FsOiExfSwiOmxldmVsX3NsaWRlcjoiOnt1bmljb2RlOlsiMWYzOWEtZmUwZiIsIjFmMzlhIl0sZm5hbWU6IjFmMzlhIix1YzoiMWYzOWEiLGlzQ2Fub25pY2FsOiEwfSwiOmNvbnRyb2xfa25vYnM6Ijp7dW5pY29kZTpbIjFmMzliLWZlMGYiLCIxZjM5YiJdLGZuYW1lOiIxZjM5YiIsdWM6IjFmMzliIixpc0Nhbm9uaWNhbDohMH0sIjpmbGFnX3doaXRlOiI6e3VuaWNvZGU6WyIxZjNmMy1mZTBmIiwiMWYzZjMiXSxmbmFtZToiMWYzZjMiLHVjOiIxZjNmMyIsaXNDYW5vbmljYWw6ITB9LCI6d2F2aW5nX3doaXRlX2ZsYWc6Ijp7dW5pY29kZTpbIjFmM2YzLWZlMGYiLCIxZjNmMyJdLGZuYW1lOiIxZjNmMyIsdWM6IjFmM2YzIixpc0Nhbm9uaWNhbDohMX0sIjpyb3NldHRlOiI6e3VuaWNvZGU6WyIxZjNmNS1mZTBmIiwiMWYzZjUiXSxmbmFtZToiMWYzZjUiLHVjOiIxZjNmNSIsaXNDYW5vbmljYWw6ITB9LCI6bGFiZWw6Ijp7dW5pY29kZTpbIjFmM2Y3LWZlMGYiLCIxZjNmNyJdLGZuYW1lOiIxZjNmNyIsdWM6IjFmM2Y3Iixpc0Nhbm9uaWNhbDohMH0sIjpwcm9qZWN0b3I6Ijp7dW5pY29kZTpbIjFmNGZkLWZlMGYiLCIxZjRmZCJdLGZuYW1lOiIxZjRmZCIsdWM6IjFmNGZkIixpc0Nhbm9uaWNhbDohMH0sIjpmaWxtX3Byb2plY3RvcjoiOnt1bmljb2RlOlsiMWY0ZmQtZmUwZiIsIjFmNGZkIl0sZm5hbWU6IjFmNGZkIix1YzoiMWY0ZmQiLGlzQ2Fub25pY2FsOiExfSwiOm9tX3N5bWJvbDoiOnt1bmljb2RlOlsiMWY1NDktZmUwZiIsIjFmNTQ5Il0sZm5hbWU6IjFmNTQ5Iix1YzoiMWY1NDkiLGlzQ2Fub25pY2FsOiEwfSwiOmRvdmU6Ijp7dW5pY29kZTpbIjFmNTRhLWZlMGYiLCIxZjU0YSJdLGZuYW1lOiIxZjU0YSIsdWM6IjFmNTRhIixpc0Nhbm9uaWNhbDohMH0sIjpkb3ZlX29mX3BlYWNlOiI6e3VuaWNvZGU6WyIxZjU0YS1mZTBmIiwiMWY1NGEiXSxmbmFtZToiMWY1NGEiLHVjOiIxZjU0YSIsaXNDYW5vbmljYWw6ITF9LCI6Y2FuZGxlOiI6e3VuaWNvZGU6WyIxZjU2Zi1mZTBmIiwiMWY1NmYiXSxmbmFtZToiMWY1NmYiLHVjOiIxZjU2ZiIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2s6Ijp7dW5pY29kZTpbIjFmNTcwLWZlMGYiLCIxZjU3MCJdLGZuYW1lOiIxZjU3MCIsdWM6IjFmNTcwIixpc0Nhbm9uaWNhbDohMH0sIjptYW50bGVwaWVjZV9jbG9jazoiOnt1bmljb2RlOlsiMWY1NzAtZmUwZiIsIjFmNTcwIl0sZm5hbWU6IjFmNTcwIix1YzoiMWY1NzAiLGlzQ2Fub25pY2FsOiExfSwiOmhvbGU6Ijp7dW5pY29kZTpbIjFmNTczLWZlMGYiLCIxZjU3MyJdLGZuYW1lOiIxZjU3MyIsdWM6IjFmNTczIixpc0Nhbm9uaWNhbDohMH0sIjpkYXJrX3N1bmdsYXNzZXM6Ijp7dW5pY29kZTpbIjFmNTc2LWZlMGYiLCIxZjU3NiJdLGZuYW1lOiIxZjU3NiIsdWM6IjFmNTc2Iixpc0Nhbm9uaWNhbDohMH0sIjpqb3lzdGljazoiOnt1bmljb2RlOlsiMWY1NzktZmUwZiIsIjFmNTc5Il0sZm5hbWU6IjFmNTc5Iix1YzoiMWY1NzkiLGlzQ2Fub25pY2FsOiEwfSwiOnBhcGVyY2xpcHM6Ijp7dW5pY29kZTpbIjFmNTg3LWZlMGYiLCIxZjU4NyJdLGZuYW1lOiIxZjU4NyIsdWM6IjFmNTg3Iixpc0Nhbm9uaWNhbDohMH0sIjpsaW5rZWRfcGFwZXJjbGlwczoiOnt1bmljb2RlOlsiMWY1ODctZmUwZiIsIjFmNTg3Il0sZm5hbWU6IjFmNTg3Iix1YzoiMWY1ODciLGlzQ2Fub25pY2FsOiExfSwiOnBlbl9iYWxscG9pbnQ6Ijp7dW5pY29kZTpbIjFmNThhLWZlMGYiLCIxZjU4YSJdLGZuYW1lOiIxZjU4YSIsdWM6IjFmNThhIixpc0Nhbm9uaWNhbDohMH0sIjpsb3dlcl9sZWZ0X2JhbGxwb2ludF9wZW46Ijp7dW5pY29kZTpbIjFmNThhLWZlMGYiLCIxZjU4YSJdLGZuYW1lOiIxZjU4YSIsdWM6IjFmNThhIixpc0Nhbm9uaWNhbDohMX0sIjpwZW5fZm91bnRhaW46Ijp7dW5pY29kZTpbIjFmNThiLWZlMGYiLCIxZjU4YiJdLGZuYW1lOiIxZjU4YiIsdWM6IjFmNThiIixpc0Nhbm9uaWNhbDohMH0sIjpsb3dlcl9sZWZ0X2ZvdW50YWluX3BlbjoiOnt1bmljb2RlOlsiMWY1OGItZmUwZiIsIjFmNThiIl0sZm5hbWU6IjFmNThiIix1YzoiMWY1OGIiLGlzQ2Fub25pY2FsOiExfSwiOnBhaW50YnJ1c2g6Ijp7dW5pY29kZTpbIjFmNThjLWZlMGYiLCIxZjU4YyJdLGZuYW1lOiIxZjU4YyIsdWM6IjFmNThjIixpc0Nhbm9uaWNhbDohMH0sIjpsb3dlcl9sZWZ0X3BhaW50YnJ1c2g6Ijp7dW5pY29kZTpbIjFmNThjLWZlMGYiLCIxZjU4YyJdLGZuYW1lOiIxZjU4YyIsdWM6IjFmNThjIixpc0Nhbm9uaWNhbDohMX0sIjpjcmF5b246Ijp7dW5pY29kZTpbIjFmNThkLWZlMGYiLCIxZjU4ZCJdLGZuYW1lOiIxZjU4ZCIsdWM6IjFmNThkIixpc0Nhbm9uaWNhbDohMH0sIjpsb3dlcl9sZWZ0X2NyYXlvbjoiOnt1bmljb2RlOlsiMWY1OGQtZmUwZiIsIjFmNThkIl0sZm5hbWU6IjFmNThkIix1YzoiMWY1OGQiLGlzQ2Fub25pY2FsOiExfSwiOmRlc2t0b3A6Ijp7dW5pY29kZTpbIjFmNWE1LWZlMGYiLCIxZjVhNSJdLGZuYW1lOiIxZjVhNSIsdWM6IjFmNWE1Iixpc0Nhbm9uaWNhbDohMH0sIjpkZXNrdG9wX2NvbXB1dGVyOiI6e3VuaWNvZGU6WyIxZjVhNS1mZTBmIiwiMWY1YTUiXSxmbmFtZToiMWY1YTUiLHVjOiIxZjVhNSIsaXNDYW5vbmljYWw6ITF9LCI6cHJpbnRlcjoiOnt1bmljb2RlOlsiMWY1YTgtZmUwZiIsIjFmNWE4Il0sZm5hbWU6IjFmNWE4Iix1YzoiMWY1YTgiLGlzQ2Fub25pY2FsOiEwfSwiOnRyYWNrYmFsbDoiOnt1bmljb2RlOlsiMWY1YjItZmUwZiIsIjFmNWIyIl0sZm5hbWU6IjFmNWIyIix1YzoiMWY1YjIiLGlzQ2Fub25pY2FsOiEwfSwiOmZyYW1lX3Bob3RvOiI6e3VuaWNvZGU6WyIxZjViYy1mZTBmIiwiMWY1YmMiXSxmbmFtZToiMWY1YmMiLHVjOiIxZjViYyIsaXNDYW5vbmljYWw6ITB9LCI6ZnJhbWVfd2l0aF9waWN0dXJlOiI6e3VuaWNvZGU6WyIxZjViYy1mZTBmIiwiMWY1YmMiXSxmbmFtZToiMWY1YmMiLHVjOiIxZjViYyIsaXNDYW5vbmljYWw6ITF9LCI6ZGl2aWRlcnM6Ijp7dW5pY29kZTpbIjFmNWMyLWZlMGYiLCIxZjVjMiJdLGZuYW1lOiIxZjVjMiIsdWM6IjFmNWMyIixpc0Nhbm9uaWNhbDohMH0sIjpjYXJkX2luZGV4X2RpdmlkZXJzOiI6e3VuaWNvZGU6WyIxZjVjMi1mZTBmIiwiMWY1YzIiXSxmbmFtZToiMWY1YzIiLHVjOiIxZjVjMiIsaXNDYW5vbmljYWw6ITF9LCI6Y2FyZF9ib3g6Ijp7dW5pY29kZTpbIjFmNWMzLWZlMGYiLCIxZjVjMyJdLGZuYW1lOiIxZjVjMyIsdWM6IjFmNWMzIixpc0Nhbm9uaWNhbDohMH0sIjpjYXJkX2ZpbGVfYm94OiI6e3VuaWNvZGU6WyIxZjVjMy1mZTBmIiwiMWY1YzMiXSxmbmFtZToiMWY1YzMiLHVjOiIxZjVjMyIsaXNDYW5vbmljYWw6ITF9LCI6ZmlsZV9jYWJpbmV0OiI6e3VuaWNvZGU6WyIxZjVjNC1mZTBmIiwiMWY1YzQiXSxmbmFtZToiMWY1YzQiLHVjOiIxZjVjNCIsaXNDYW5vbmljYWw6ITB9LCI6d2FzdGViYXNrZXQ6Ijp7dW5pY29kZTpbIjFmNWQxLWZlMGYiLCIxZjVkMSJdLGZuYW1lOiIxZjVkMSIsdWM6IjFmNWQxIixpc0Nhbm9uaWNhbDohMH0sIjpub3RlcGFkX3NwaXJhbDoiOnt1bmljb2RlOlsiMWY1ZDItZmUwZiIsIjFmNWQyIl0sZm5hbWU6IjFmNWQyIix1YzoiMWY1ZDIiLGlzQ2Fub25pY2FsOiEwfSwiOnNwaXJhbF9ub3RlX3BhZDoiOnt1bmljb2RlOlsiMWY1ZDItZmUwZiIsIjFmNWQyIl0sZm5hbWU6IjFmNWQyIix1YzoiMWY1ZDIiLGlzQ2Fub25pY2FsOiExfSwiOmNhbGVuZGFyX3NwaXJhbDoiOnt1bmljb2RlOlsiMWY1ZDMtZmUwZiIsIjFmNWQzIl0sZm5hbWU6IjFmNWQzIix1YzoiMWY1ZDMiLGlzQ2Fub25pY2FsOiEwfSwiOnNwaXJhbF9jYWxlbmRhcl9wYWQ6Ijp7dW5pY29kZTpbIjFmNWQzLWZlMGYiLCIxZjVkMyJdLGZuYW1lOiIxZjVkMyIsdWM6IjFmNWQzIixpc0Nhbm9uaWNhbDohMX0sIjpjb21wcmVzc2lvbjoiOnt1bmljb2RlOlsiMWY1ZGMtZmUwZiIsIjFmNWRjIl0sZm5hbWU6IjFmNWRjIix1YzoiMWY1ZGMiLGlzQ2Fub25pY2FsOiEwfSwiOmtleTI6Ijp7dW5pY29kZTpbIjFmNWRkLWZlMGYiLCIxZjVkZCJdLGZuYW1lOiIxZjVkZCIsdWM6IjFmNWRkIixpc0Nhbm9uaWNhbDohMH0sIjpvbGRfa2V5OiI6e3VuaWNvZGU6WyIxZjVkZC1mZTBmIiwiMWY1ZGQiXSxmbmFtZToiMWY1ZGQiLHVjOiIxZjVkZCIsaXNDYW5vbmljYWw6ITF9LCI6bmV3c3BhcGVyMjoiOnt1bmljb2RlOlsiMWY1ZGUtZmUwZiIsIjFmNWRlIl0sZm5hbWU6IjFmNWRlIix1YzoiMWY1ZGUiLGlzQ2Fub25pY2FsOiEwfSwiOnJvbGxlZF91cF9uZXdzcGFwZXI6Ijp7dW5pY29kZTpbIjFmNWRlLWZlMGYiLCIxZjVkZSJdLGZuYW1lOiIxZjVkZSIsdWM6IjFmNWRlIixpc0Nhbm9uaWNhbDohMX0sIjpkYWdnZXI6Ijp7dW5pY29kZTpbIjFmNWUxLWZlMGYiLCIxZjVlMSJdLGZuYW1lOiIxZjVlMSIsdWM6IjFmNWUxIixpc0Nhbm9uaWNhbDohMH0sIjpkYWdnZXJfa25pZmU6Ijp7dW5pY29kZTpbIjFmNWUxLWZlMGYiLCIxZjVlMSJdLGZuYW1lOiIxZjVlMSIsdWM6IjFmNWUxIixpc0Nhbm9uaWNhbDohMX0sIjpzcGVha2luZ19oZWFkOiI6e3VuaWNvZGU6WyIxZjVlMy1mZTBmIiwiMWY1ZTMiXSxmbmFtZToiMWY1ZTMiLHVjOiIxZjVlMyIsaXNDYW5vbmljYWw6ITB9LCI6c3BlYWtpbmdfaGVhZF9pbl9zaWxob3VldHRlOiI6e3VuaWNvZGU6WyIxZjVlMy1mZTBmIiwiMWY1ZTMiXSxmbmFtZToiMWY1ZTMiLHVjOiIxZjVlMyIsaXNDYW5vbmljYWw6ITF9LCI6c3BlZWNoX2xlZnQ6Ijp7dW5pY29kZTpbIjFmNWU4LWZlMGYiLCIxZjVlOCJdLGZuYW1lOiIxZjVlOCIsdWM6IjFmNWU4Iixpc0Nhbm9uaWNhbDohMH0sIjpsZWZ0X3NwZWVjaF9idWJibGU6Ijp7dW5pY29kZTpbIjFmNWU4LWZlMGYiLCIxZjVlOCJdLGZuYW1lOiIxZjVlOCIsdWM6IjFmNWU4Iixpc0Nhbm9uaWNhbDohMX0sIjphbmdlcl9yaWdodDoiOnt1bmljb2RlOlsiMWY1ZWYtZmUwZiIsIjFmNWVmIl0sZm5hbWU6IjFmNWVmIix1YzoiMWY1ZWYiLGlzQ2Fub25pY2FsOiEwfSwiOnJpZ2h0X2FuZ2VyX2J1YmJsZToiOnt1bmljb2RlOlsiMWY1ZWYtZmUwZiIsIjFmNWVmIl0sZm5hbWU6IjFmNWVmIix1YzoiMWY1ZWYiLGlzQ2Fub25pY2FsOiExfSwiOmJhbGxvdF9ib3g6Ijp7dW5pY29kZTpbIjFmNWYzLWZlMGYiLCIxZjVmMyJdLGZuYW1lOiIxZjVmMyIsdWM6IjFmNWYzIixpc0Nhbm9uaWNhbDohMH0sIjpiYWxsb3RfYm94X3dpdGhfYmFsbG90OiI6e3VuaWNvZGU6WyIxZjVmMy1mZTBmIiwiMWY1ZjMiXSxmbmFtZToiMWY1ZjMiLHVjOiIxZjVmMyIsaXNDYW5vbmljYWw6ITF9LCI6bWFwOiI6e3VuaWNvZGU6WyIxZjVmYS1mZTBmIiwiMWY1ZmEiXSxmbmFtZToiMWY1ZmEiLHVjOiIxZjVmYSIsaXNDYW5vbmljYWw6ITB9LCI6d29ybGRfbWFwOiI6e3VuaWNvZGU6WyIxZjVmYS1mZTBmIiwiMWY1ZmEiXSxmbmFtZToiMWY1ZmEiLHVjOiIxZjVmYSIsaXNDYW5vbmljYWw6ITF9LCI6dG9vbHM6Ijp7dW5pY29kZTpbIjFmNmUwLWZlMGYiLCIxZjZlMCJdLGZuYW1lOiIxZjZlMCIsdWM6IjFmNmUwIixpc0Nhbm9uaWNhbDohMH0sIjpoYW1tZXJfYW5kX3dyZW5jaDoiOnt1bmljb2RlOlsiMWY2ZTAtZmUwZiIsIjFmNmUwIl0sZm5hbWU6IjFmNmUwIix1YzoiMWY2ZTAiLGlzQ2Fub25pY2FsOiExfSwiOnNoaWVsZDoiOnt1bmljb2RlOlsiMWY2ZTEtZmUwZiIsIjFmNmUxIl0sZm5hbWU6IjFmNmUxIix1YzoiMWY2ZTEiLGlzQ2Fub25pY2FsOiEwfSwiOm9pbDoiOnt1bmljb2RlOlsiMWY2ZTItZmUwZiIsIjFmNmUyIl0sZm5hbWU6IjFmNmUyIix1YzoiMWY2ZTIiLGlzQ2Fub25pY2FsOiEwfSwiOm9pbF9kcnVtOiI6e3VuaWNvZGU6WyIxZjZlMi1mZTBmIiwiMWY2ZTIiXSxmbmFtZToiMWY2ZTIiLHVjOiIxZjZlMiIsaXNDYW5vbmljYWw6ITF9LCI6c2F0ZWxsaXRlX29yYml0YWw6Ijp7dW5pY29kZTpbIjFmNmYwLWZlMGYiLCIxZjZmMCJdLGZuYW1lOiIxZjZmMCIsdWM6IjFmNmYwIixpc0Nhbm9uaWNhbDohMH0sIjpmb3JrX2tuaWZlX3BsYXRlOiI6e3VuaWNvZGU6WyIxZjM3ZC1mZTBmIiwiMWYzN2QiXSxmbmFtZToiMWYzN2QiLHVjOiIxZjM3ZCIsaXNDYW5vbmljYWw6ITB9LCI6Zm9ya19hbmRfa25pZmVfd2l0aF9wbGF0ZToiOnt1bmljb2RlOlsiMWYzN2QtZmUwZiIsIjFmMzdkIl0sZm5hbWU6IjFmMzdkIix1YzoiMWYzN2QiLGlzQ2Fub25pY2FsOiExfSwiOmV5ZToiOnt1bmljb2RlOlsiMWY0NDEtZmUwZiIsIjFmNDQxIl0sZm5hbWU6IjFmNDQxIix1YzoiMWY0NDEiLGlzQ2Fub25pY2FsOiEwfSwiOmxldml0YXRlOiI6e3VuaWNvZGU6WyIxZjU3NC1mZTBmIiwiMWY1NzQiXSxmbmFtZToiMWY1NzQiLHVjOiIxZjU3NCIsaXNDYW5vbmljYWw6ITB9LCI6bWFuX2luX2J1c2luZXNzX3N1aXRfbGV2aXRhdGluZzoiOnt1bmljb2RlOlsiMWY1NzQtZmUwZiIsIjFmNTc0Il0sZm5hbWU6IjFmNTc0Iix1YzoiMWY1NzQiLGlzQ2Fub25pY2FsOiExfSwiOnNweToiOnt1bmljb2RlOlsiMWY1NzUtZmUwZiIsIjFmNTc1Il0sZm5hbWU6IjFmNTc1Iix1YzoiMWY1NzUiLGlzQ2Fub25pY2FsOiEwfSwiOnNsZXV0aF9vcl9zcHk6Ijp7dW5pY29kZTpbIjFmNTc1LWZlMGYiLCIxZjU3NSJdLGZuYW1lOiIxZjU3NSIsdWM6IjFmNTc1Iixpc0Nhbm9uaWNhbDohMX0sIjpoYW5kX3NwbGF5ZWQ6Ijp7dW5pY29kZTpbIjFmNTkwLWZlMGYiLCIxZjU5MCJdLGZuYW1lOiIxZjU5MCIsdWM6IjFmNTkwIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF93aXRoX2ZpbmdlcnNfc3BsYXllZDoiOnt1bmljb2RlOlsiMWY1OTAtZmUwZiIsIjFmNTkwIl0sZm5hbWU6IjFmNTkwIix1YzoiMWY1OTAiLGlzQ2Fub25pY2FsOiExfSwiOm1vdW50YWluX3Nub3c6Ijp7dW5pY29kZTpbIjFmM2Q0LWZlMGYiLCIxZjNkNCJdLGZuYW1lOiIxZjNkNCIsdWM6IjFmM2Q0Iixpc0Nhbm9uaWNhbDohMH0sIjpzbm93X2NhcHBlZF9tb3VudGFpbjoiOnt1bmljb2RlOlsiMWYzZDQtZmUwZiIsIjFmM2Q0Il0sZm5hbWU6IjFmM2Q0Iix1YzoiMWYzZDQiLGlzQ2Fub25pY2FsOiExfSwiOmNhbXBpbmc6Ijp7dW5pY29kZTpbIjFmM2Q1LWZlMGYiLCIxZjNkNSJdLGZuYW1lOiIxZjNkNSIsdWM6IjFmM2Q1Iixpc0Nhbm9uaWNhbDohMH0sIjpiZWFjaDoiOnt1bmljb2RlOlsiMWYzZDYtZmUwZiIsIjFmM2Q2Il0sZm5hbWU6IjFmM2Q2Iix1YzoiMWYzZDYiLGlzQ2Fub25pY2FsOiEwfSwiOmJlYWNoX3dpdGhfdW1icmVsbGE6Ijp7dW5pY29kZTpbIjFmM2Q2LWZlMGYiLCIxZjNkNiJdLGZuYW1lOiIxZjNkNiIsdWM6IjFmM2Q2Iixpc0Nhbm9uaWNhbDohMX0sIjpjb25zdHJ1Y3Rpb25fc2l0ZToiOnt1bmljb2RlOlsiMWYzZDctZmUwZiIsIjFmM2Q3Il0sZm5hbWU6IjFmM2Q3Iix1YzoiMWYzZDciLGlzQ2Fub25pY2FsOiEwfSwiOmJ1aWxkaW5nX2NvbnN0cnVjdGlvbjoiOnt1bmljb2RlOlsiMWYzZDctZmUwZiIsIjFmM2Q3Il0sZm5hbWU6IjFmM2Q3Iix1YzoiMWYzZDciLGlzQ2Fub25pY2FsOiExfSwiOmhvbWVzOiI6e3VuaWNvZGU6WyIxZjNkOC1mZTBmIiwiMWYzZDgiXSxmbmFtZToiMWYzZDgiLHVjOiIxZjNkOCIsaXNDYW5vbmljYWw6ITB9LCI6aG91c2VfYnVpbGRpbmdzOiI6e3VuaWNvZGU6WyIxZjNkOC1mZTBmIiwiMWYzZDgiXSxmbmFtZToiMWYzZDgiLHVjOiIxZjNkOCIsaXNDYW5vbmljYWw6ITF9LCI6Y2l0eXNjYXBlOiI6e3VuaWNvZGU6WyIxZjNkOS1mZTBmIiwiMWYzZDkiXSxmbmFtZToiMWYzZDkiLHVjOiIxZjNkOSIsaXNDYW5vbmljYWw6ITB9LCI6aG91c2VfYWJhbmRvbmVkOiI6e3VuaWNvZGU6WyIxZjNkYS1mZTBmIiwiMWYzZGEiXSxmbmFtZToiMWYzZGEiLHVjOiIxZjNkYSIsaXNDYW5vbmljYWw6ITB9LCI6ZGVyZWxpY3RfaG91c2VfYnVpbGRpbmc6Ijp7dW5pY29kZTpbIjFmM2RhLWZlMGYiLCIxZjNkYSJdLGZuYW1lOiIxZjNkYSIsdWM6IjFmM2RhIixpc0Nhbm9uaWNhbDohMX0sIjpjbGFzc2ljYWxfYnVpbGRpbmc6Ijp7dW5pY29kZTpbIjFmM2RiLWZlMGYiLCIxZjNkYiJdLGZuYW1lOiIxZjNkYiIsdWM6IjFmM2RiIixpc0Nhbm9uaWNhbDohMH0sIjpkZXNlcnQ6Ijp7dW5pY29kZTpbIjFmM2RjLWZlMGYiLCIxZjNkYyJdLGZuYW1lOiIxZjNkYyIsdWM6IjFmM2RjIixpc0Nhbm9uaWNhbDohMH0sIjppc2xhbmQ6Ijp7dW5pY29kZTpbIjFmM2RkLWZlMGYiLCIxZjNkZCJdLGZuYW1lOiIxZjNkZCIsdWM6IjFmM2RkIixpc0Nhbm9uaWNhbDohMH0sIjpkZXNlcnRfaXNsYW5kOiI6e3VuaWNvZGU6WyIxZjNkZC1mZTBmIiwiMWYzZGQiXSxmbmFtZToiMWYzZGQiLHVjOiIxZjNkZCIsaXNDYW5vbmljYWw6ITF9LCI6cGFyazoiOnt1bmljb2RlOlsiMWYzZGUtZmUwZiIsIjFmM2RlIl0sZm5hbWU6IjFmM2RlIix1YzoiMWYzZGUiLGlzQ2Fub25pY2FsOiEwfSwiOm5hdGlvbmFsX3Bhcms6Ijp7dW5pY29kZTpbIjFmM2RlLWZlMGYiLCIxZjNkZSJdLGZuYW1lOiIxZjNkZSIsdWM6IjFmM2RlIixpc0Nhbm9uaWNhbDohMX0sIjpzdGFkaXVtOiI6e3VuaWNvZGU6WyIxZjNkZi1mZTBmIiwiMWYzZGYiXSxmbmFtZToiMWYzZGYiLHVjOiIxZjNkZiIsaXNDYW5vbmljYWw6ITB9LCI6Y291Y2g6Ijp7dW5pY29kZTpbIjFmNmNiLWZlMGYiLCIxZjZjYiJdLGZuYW1lOiIxZjZjYiIsdWM6IjFmNmNiIixpc0Nhbm9uaWNhbDohMH0sIjpjb3VjaF9hbmRfbGFtcDoiOnt1bmljb2RlOlsiMWY2Y2ItZmUwZiIsIjFmNmNiIl0sZm5hbWU6IjFmNmNiIix1YzoiMWY2Y2IiLGlzQ2Fub25pY2FsOiExfSwiOnNob3BwaW5nX2JhZ3M6Ijp7dW5pY29kZTpbIjFmNmNkLWZlMGYiLCIxZjZjZCJdLGZuYW1lOiIxZjZjZCIsdWM6IjFmNmNkIixpc0Nhbm9uaWNhbDohMH0sIjpiZWxsaG9wOiI6e3VuaWNvZGU6WyIxZjZjZS1mZTBmIiwiMWY2Y2UiXSxmbmFtZToiMWY2Y2UiLHVjOiIxZjZjZSIsaXNDYW5vbmljYWw6ITB9LCI6YmVsbGhvcF9iZWxsOiI6e3VuaWNvZGU6WyIxZjZjZS1mZTBmIiwiMWY2Y2UiXSxmbmFtZToiMWY2Y2UiLHVjOiIxZjZjZSIsaXNDYW5vbmljYWw6ITF9LCI6YmVkOiI6e3VuaWNvZGU6WyIxZjZjZi1mZTBmIiwiMWY2Y2YiXSxmbmFtZToiMWY2Y2YiLHVjOiIxZjZjZiIsaXNDYW5vbmljYWw6ITB9LCI6bW90b3J3YXk6Ijp7dW5pY29kZTpbIjFmNmUzLWZlMGYiLCIxZjZlMyJdLGZuYW1lOiIxZjZlMyIsdWM6IjFmNmUzIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlsd2F5X3RyYWNrOiI6e3VuaWNvZGU6WyIxZjZlNC1mZTBmIiwiMWY2ZTQiXSxmbmFtZToiMWY2ZTQiLHVjOiIxZjZlNCIsaXNDYW5vbmljYWw6ITB9LCI6cmFpbHJvYWRfdHJhY2s6Ijp7dW5pY29kZTpbIjFmNmU0LWZlMGYiLCIxZjZlNCJdLGZuYW1lOiIxZjZlNCIsdWM6IjFmNmU0Iixpc0Nhbm9uaWNhbDohMX0sIjptb3RvcmJvYXQ6Ijp7dW5pY29kZTpbIjFmNmU1LWZlMGYiLCIxZjZlNSJdLGZuYW1lOiIxZjZlNSIsdWM6IjFmNmU1Iixpc0Nhbm9uaWNhbDohMH0sIjphaXJwbGFuZV9zbWFsbDoiOnt1bmljb2RlOlsiMWY2ZTktZmUwZiIsIjFmNmU5Il0sZm5hbWU6IjFmNmU5Iix1YzoiMWY2ZTkiLGlzQ2Fub25pY2FsOiEwfSwiOnNtYWxsX2FpcnBsYW5lOiI6e3VuaWNvZGU6WyIxZjZlOS1mZTBmIiwiMWY2ZTkiXSxmbmFtZToiMWY2ZTkiLHVjOiIxZjZlOSIsaXNDYW5vbmljYWw6ITF9LCI6Y3J1aXNlX3NoaXA6Ijp7dW5pY29kZTpbIjFmNmYzLWZlMGYiLCIxZjZmMyJdLGZuYW1lOiIxZjZmMyIsdWM6IjFmNmYzIixpc0Nhbm9uaWNhbDohMH0sIjpwYXNzZW5nZXJfc2hpcDoiOnt1bmljb2RlOlsiMWY2ZjMtZmUwZiIsIjFmNmYzIl0sZm5hbWU6IjFmNmYzIix1YzoiMWY2ZjMiLGlzQ2Fub25pY2FsOiExfSwiOndoaXRlX3N1bl9zbWFsbF9jbG91ZDoiOnt1bmljb2RlOlsiMWYzMjQtZmUwZiIsIjFmMzI0Il0sZm5hbWU6IjFmMzI0Iix1YzoiMWYzMjQiLGlzQ2Fub25pY2FsOiEwfSwiOndoaXRlX3N1bl93aXRoX3NtYWxsX2Nsb3VkOiI6e3VuaWNvZGU6WyIxZjMyNC1mZTBmIiwiMWYzMjQiXSxmbmFtZToiMWYzMjQiLHVjOiIxZjMyNCIsaXNDYW5vbmljYWw6ITF9LCI6d2hpdGVfc3VuX2Nsb3VkOiI6e3VuaWNvZGU6WyIxZjMyNS1mZTBmIiwiMWYzMjUiXSxmbmFtZToiMWYzMjUiLHVjOiIxZjMyNSIsaXNDYW5vbmljYWw6ITB9LCI6d2hpdGVfc3VuX2JlaGluZF9jbG91ZDoiOnt1bmljb2RlOlsiMWYzMjUtZmUwZiIsIjFmMzI1Il0sZm5hbWU6IjFmMzI1Iix1YzoiMWYzMjUiLGlzQ2Fub25pY2FsOiExfSwiOndoaXRlX3N1bl9yYWluX2Nsb3VkOiI6e3VuaWNvZGU6WyIxZjMyNi1mZTBmIiwiMWYzMjYiXSxmbmFtZToiMWYzMjYiLHVjOiIxZjMyNiIsaXNDYW5vbmljYWw6ITB9LCI6d2hpdGVfc3VuX2JlaGluZF9jbG91ZF93aXRoX3JhaW46Ijp7dW5pY29kZTpbIjFmMzI2LWZlMGYiLCIxZjMyNiJdLGZuYW1lOiIxZjMyNiIsdWM6IjFmMzI2Iixpc0Nhbm9uaWNhbDohMX0sIjptb3VzZV90aHJlZV9idXR0b246Ijp7dW5pY29kZTpbIjFmNWIxLWZlMGYiLCIxZjViMSJdLGZuYW1lOiIxZjViMSIsdWM6IjFmNWIxIixpc0Nhbm9uaWNhbDohMH0sIjp0aHJlZV9idXR0b25fbW91c2U6Ijp7dW5pY29kZTpbIjFmNWIxLWZlMGYiLCIxZjViMSJdLGZuYW1lOiIxZjViMSIsdWM6IjFmNWIxIixpc0Nhbm9uaWNhbDohMX0sIjpwb2ludF91cF90b25lMToiOnt1bmljb2RlOlsiMjYxZC0xZjNmYiJdLGZuYW1lOiIyNjFkLTFmM2ZiIix1YzoiMjYxZC0xZjNmYiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfdG9uZTI6Ijp7dW5pY29kZTpbIjI2MWQtMWYzZmMiXSxmbmFtZToiMjYxZC0xZjNmYyIsdWM6IjI2MWQtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnBvaW50X3VwX3RvbmUzOiI6e3VuaWNvZGU6WyIyNjFkLTFmM2ZkIl0sZm5hbWU6IjI2MWQtMWYzZmQiLHVjOiIyNjFkLTFmM2ZkIixpc0Nhbm9uaWNhbDohMH0sIjpwb2ludF91cF90b25lNDoiOnt1bmljb2RlOlsiMjYxZC0xZjNmZSJdLGZuYW1lOiIyNjFkLTFmM2ZlIix1YzoiMjYxZC0xZjNmZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfdG9uZTU6Ijp7dW5pY29kZTpbIjI2MWQtMWYzZmYiXSxmbmFtZToiMjYxZC0xZjNmZiIsdWM6IjI2MWQtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnZfdG9uZTE6Ijp7dW5pY29kZTpbIjI3MGMtMWYzZmIiXSxmbmFtZToiMjcwYy0xZjNmYiIsdWM6IjI3MGMtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnZfdG9uZTI6Ijp7dW5pY29kZTpbIjI3MGMtMWYzZmMiXSxmbmFtZToiMjcwYy0xZjNmYyIsdWM6IjI3MGMtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOnZfdG9uZTM6Ijp7dW5pY29kZTpbIjI3MGMtMWYzZmQiXSxmbmFtZToiMjcwYy0xZjNmZCIsdWM6IjI3MGMtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnZfdG9uZTQ6Ijp7dW5pY29kZTpbIjI3MGMtMWYzZmUiXSxmbmFtZToiMjcwYy0xZjNmZSIsdWM6IjI3MGMtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOnZfdG9uZTU6Ijp7dW5pY29kZTpbIjI3MGMtMWYzZmYiXSxmbmFtZToiMjcwYy0xZjNmZiIsdWM6IjI3MGMtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc3RfdG9uZTE6Ijp7dW5pY29kZTpbIjI3MGEtMWYzZmIiXSxmbmFtZToiMjcwYS0xZjNmYiIsdWM6IjI3MGEtMWYzZmIiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc3RfdG9uZTI6Ijp7dW5pY29kZTpbIjI3MGEtMWYzZmMiXSxmbmFtZToiMjcwYS0xZjNmYyIsdWM6IjI3MGEtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc3RfdG9uZTM6Ijp7dW5pY29kZTpbIjI3MGEtMWYzZmQiXSxmbmFtZToiMjcwYS0xZjNmZCIsdWM6IjI3MGEtMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc3RfdG9uZTQ6Ijp7dW5pY29kZTpbIjI3MGEtMWYzZmUiXSxmbmFtZToiMjcwYS0xZjNmZSIsdWM6IjI3MGEtMWYzZmUiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc3RfdG9uZTU6Ijp7dW5pY29kZTpbIjI3MGEtMWYzZmYiXSxmbmFtZToiMjcwYS0xZjNmZiIsdWM6IjI3MGEtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3RvbmUxOiI6e3VuaWNvZGU6WyIyNzBiLTFmM2ZiIl0sZm5hbWU6IjI3MGItMWYzZmIiLHVjOiIyNzBiLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF90b25lMjoiOnt1bmljb2RlOlsiMjcwYi0xZjNmYyJdLGZuYW1lOiIyNzBiLTFmM2ZjIix1YzoiMjcwYi0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2VkX2hhbmRfdG9uZTM6Ijp7dW5pY29kZTpbIjI3MGItMWYzZmQiXSxmbmFtZToiMjcwYi0xZjNmZCIsdWM6IjI3MGItMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kX3RvbmU0OiI6e3VuaWNvZGU6WyIyNzBiLTFmM2ZlIl0sZm5hbWU6IjI3MGItMWYzZmUiLHVjOiIyNzBiLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZF90b25lNToiOnt1bmljb2RlOlsiMjcwYi0xZjNmZiJdLGZuYW1lOiIyNzBiLTFmM2ZmIix1YzoiMjcwYi0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6d3JpdGluZ19oYW5kX3RvbmUxOiI6e3VuaWNvZGU6WyIyNzBkLTFmM2ZiIl0sZm5hbWU6IjI3MGQtMWYzZmIiLHVjOiIyNzBkLTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjp3cml0aW5nX2hhbmRfdG9uZTI6Ijp7dW5pY29kZTpbIjI3MGQtMWYzZmMiXSxmbmFtZToiMjcwZC0xZjNmYyIsdWM6IjI3MGQtMWYzZmMiLGlzQ2Fub25pY2FsOiEwfSwiOndyaXRpbmdfaGFuZF90b25lMzoiOnt1bmljb2RlOlsiMjcwZC0xZjNmZCJdLGZuYW1lOiIyNzBkLTFmM2ZkIix1YzoiMjcwZC0xZjNmZCIsaXNDYW5vbmljYWw6ITB9LCI6d3JpdGluZ19oYW5kX3RvbmU0OiI6e3VuaWNvZGU6WyIyNzBkLTFmM2ZlIl0sZm5hbWU6IjI3MGQtMWYzZmUiLHVjOiIyNzBkLTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp3cml0aW5nX2hhbmRfdG9uZTU6Ijp7dW5pY29kZTpbIjI3MGQtMWYzZmYiXSxmbmFtZToiMjcwZC0xZjNmZiIsdWM6IjI3MGQtMWYzZmYiLGlzQ2Fub25pY2FsOiEwfSwiOmJhc2tldGJhbGxfcGxheWVyX3RvbmUxOiI6e3VuaWNvZGU6WyIyNmY5LTFmM2ZiIl0sZm5hbWU6IjI2ZjktMWYzZmIiLHVjOiIyNmY5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fd2l0aF9iYWxsX3RvbmUxOiI6e3VuaWNvZGU6WyIyNmY5LTFmM2ZiIl0sZm5hbWU6IjI2ZjktMWYzZmIiLHVjOiIyNmY5LTFmM2ZiIixpc0Nhbm9uaWNhbDohMX0sIjpiYXNrZXRiYWxsX3BsYXllcl90b25lMjoiOnt1bmljb2RlOlsiMjZmOS0xZjNmYyJdLGZuYW1lOiIyNmY5LTFmM2ZjIix1YzoiMjZmOS0xZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX3dpdGhfYmFsbF90b25lMjoiOnt1bmljb2RlOlsiMjZmOS0xZjNmYyJdLGZuYW1lOiIyNmY5LTFmM2ZjIix1YzoiMjZmOS0xZjNmYyIsaXNDYW5vbmljYWw6ITF9LCI6YmFza2V0YmFsbF9wbGF5ZXJfdG9uZTM6Ijp7dW5pY29kZTpbIjI2ZjktMWYzZmQiXSxmbmFtZToiMjZmOS0xZjNmZCIsdWM6IjI2ZjktMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2JhbGxfdG9uZTM6Ijp7dW5pY29kZTpbIjI2ZjktMWYzZmQiXSxmbmFtZToiMjZmOS0xZjNmZCIsdWM6IjI2ZjktMWYzZmQiLGlzQ2Fub25pY2FsOiExfSwiOmJhc2tldGJhbGxfcGxheWVyX3RvbmU0OiI6e3VuaWNvZGU6WyIyNmY5LTFmM2ZlIl0sZm5hbWU6IjI2ZjktMWYzZmUiLHVjOiIyNmY5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fd2l0aF9iYWxsX3RvbmU0OiI6e3VuaWNvZGU6WyIyNmY5LTFmM2ZlIl0sZm5hbWU6IjI2ZjktMWYzZmUiLHVjOiIyNmY5LTFmM2ZlIixpc0Nhbm9uaWNhbDohMX0sIjpiYXNrZXRiYWxsX3BsYXllcl90b25lNToiOnt1bmljb2RlOlsiMjZmOS0xZjNmZiJdLGZuYW1lOiIyNmY5LTFmM2ZmIix1YzoiMjZmOS0xZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX3dpdGhfYmFsbF90b25lNToiOnt1bmljb2RlOlsiMjZmOS0xZjNmZiJdLGZuYW1lOiIyNmY5LTFmM2ZmIix1YzoiMjZmOS0xZjNmZiIsaXNDYW5vbmljYWw6ITF9LCI6Y29weXJpZ2h0OiI6e3VuaWNvZGU6WyIwMGE5LWZlMGYiLCIwMGE5Il0sZm5hbWU6IjAwYTkiLHVjOiIwMGE5Iixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpc3RlcmVkOiI6e3VuaWNvZGU6WyIwMGFlLWZlMGYiLCIwMGFlIl0sZm5hbWU6IjAwYWUiLHVjOiIwMGFlIixpc0Nhbm9uaWNhbDohMH0sIjpiYW5nYmFuZzoiOnt1bmljb2RlOlsiMjAzYy1mZTBmIiwiMjAzYyJdLGZuYW1lOiIyMDNjIix1YzoiMjAzYyIsaXNDYW5vbmljYWw6ITB9LCI6aW50ZXJyb2Jhbmc6Ijp7dW5pY29kZTpbIjIwNDktZmUwZiIsIjIwNDkiXSxmbmFtZToiMjA0OSIsdWM6IjIwNDkiLGlzQ2Fub25pY2FsOiEwfSwiOnRtOiI6e3VuaWNvZGU6WyIyMTIyLWZlMGYiLCIyMTIyIl0sZm5hbWU6IjIxMjIiLHVjOiIyMTIyIixpc0Nhbm9uaWNhbDohMH0sIjppbmZvcm1hdGlvbl9zb3VyY2U6Ijp7dW5pY29kZTpbIjIxMzktZmUwZiIsIjIxMzkiXSxmbmFtZToiMjEzOSIsdWM6IjIxMzkiLGlzQ2Fub25pY2FsOiEwfSwiOmxlZnRfcmlnaHRfYXJyb3c6Ijp7dW5pY29kZTpbIjIxOTQtZmUwZiIsIjIxOTQiXSxmbmFtZToiMjE5NCIsdWM6IjIxOTQiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X3VwX2Rvd246Ijp7dW5pY29kZTpbIjIxOTUtZmUwZiIsIjIxOTUiXSxmbmFtZToiMjE5NSIsdWM6IjIxOTUiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X3VwcGVyX2xlZnQ6Ijp7dW5pY29kZTpbIjIxOTYtZmUwZiIsIjIxOTYiXSxmbmFtZToiMjE5NiIsdWM6IjIxOTYiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X3VwcGVyX3JpZ2h0OiI6e3VuaWNvZGU6WyIyMTk3LWZlMGYiLCIyMTk3Il0sZm5hbWU6IjIxOTciLHVjOiIyMTk3Iixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd19sb3dlcl9yaWdodDoiOnt1bmljb2RlOlsiMjE5OC1mZTBmIiwiMjE5OCJdLGZuYW1lOiIyMTk4Iix1YzoiMjE5OCIsaXNDYW5vbmljYWw6ITB9LCI6YXJyb3dfbG93ZXJfbGVmdDoiOnt1bmljb2RlOlsiMjE5OS1mZTBmIiwiMjE5OSJdLGZuYW1lOiIyMTk5Iix1YzoiMjE5OSIsaXNDYW5vbmljYWw6ITB9LCI6bGVmdHdhcmRzX2Fycm93X3dpdGhfaG9vazoiOnt1bmljb2RlOlsiMjFhOS1mZTBmIiwiMjFhOSJdLGZuYW1lOiIyMWE5Iix1YzoiMjFhOSIsaXNDYW5vbmljYWw6ITB9LCI6YXJyb3dfcmlnaHRfaG9vazoiOnt1bmljb2RlOlsiMjFhYS1mZTBmIiwiMjFhYSJdLGZuYW1lOiIyMWFhIix1YzoiMjFhYSIsaXNDYW5vbmljYWw6ITB9LCI6d2F0Y2g6Ijp7dW5pY29kZTpbIjIzMWEtZmUwZiIsIjIzMWEiXSxmbmFtZToiMjMxYSIsdWM6IjIzMWEiLGlzQ2Fub25pY2FsOiEwfSwiOmhvdXJnbGFzczoiOnt1bmljb2RlOlsiMjMxYi1mZTBmIiwiMjMxYiJdLGZuYW1lOiIyMzFiIix1YzoiMjMxYiIsaXNDYW5vbmljYWw6ITB9LCI6bToiOnt1bmljb2RlOlsiMjRjMi1mZTBmIiwiMjRjMiJdLGZuYW1lOiIyNGMyIix1YzoiMjRjMiIsaXNDYW5vbmljYWw6ITB9LCI6YmxhY2tfc21hbGxfc3F1YXJlOiI6e3VuaWNvZGU6WyIyNWFhLWZlMGYiLCIyNWFhIl0sZm5hbWU6IjI1YWEiLHVjOiIyNWFhIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9zbWFsbF9zcXVhcmU6Ijp7dW5pY29kZTpbIjI1YWItZmUwZiIsIjI1YWIiXSxmbmFtZToiMjVhYiIsdWM6IjI1YWIiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X2ZvcndhcmQ6Ijp7dW5pY29kZTpbIjI1YjYtZmUwZiIsIjI1YjYiXSxmbmFtZToiMjViNiIsdWM6IjI1YjYiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X2JhY2t3YXJkOiI6e3VuaWNvZGU6WyIyNWMwLWZlMGYiLCIyNWMwIl0sZm5hbWU6IjI1YzAiLHVjOiIyNWMwIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9tZWRpdW1fc3F1YXJlOiI6e3VuaWNvZGU6WyIyNWZiLWZlMGYiLCIyNWZiIl0sZm5hbWU6IjI1ZmIiLHVjOiIyNWZiIixpc0Nhbm9uaWNhbDohMH0sIjpibGFja19tZWRpdW1fc3F1YXJlOiI6e3VuaWNvZGU6WyIyNWZjLWZlMGYiLCIyNWZjIl0sZm5hbWU6IjI1ZmMiLHVjOiIyNWZjIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9tZWRpdW1fc21hbGxfc3F1YXJlOiI6e3VuaWNvZGU6WyIyNWZkLWZlMGYiLCIyNWZkIl0sZm5hbWU6IjI1ZmQiLHVjOiIyNWZkIixpc0Nhbm9uaWNhbDohMH0sIjpibGFja19tZWRpdW1fc21hbGxfc3F1YXJlOiI6e3VuaWNvZGU6WyIyNWZlLWZlMGYiLCIyNWZlIl0sZm5hbWU6IjI1ZmUiLHVjOiIyNWZlIixpc0Nhbm9uaWNhbDohMH0sIjpzdW5ueToiOnt1bmljb2RlOlsiMjYwMC1mZTBmIiwiMjYwMCJdLGZuYW1lOiIyNjAwIix1YzoiMjYwMCIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvdWQ6Ijp7dW5pY29kZTpbIjI2MDEtZmUwZiIsIjI2MDEiXSxmbmFtZToiMjYwMSIsdWM6IjI2MDEiLGlzQ2Fub25pY2FsOiEwfSwiOnRlbGVwaG9uZToiOnt1bmljb2RlOlsiMjYwZS1mZTBmIiwiMjYwZSJdLGZuYW1lOiIyNjBlIix1YzoiMjYwZSIsaXNDYW5vbmljYWw6ITB9LCI6YmFsbG90X2JveF93aXRoX2NoZWNrOiI6e3VuaWNvZGU6WyIyNjExLWZlMGYiLCIyNjExIl0sZm5hbWU6IjI2MTEiLHVjOiIyNjExIixpc0Nhbm9uaWNhbDohMH0sIjp1bWJyZWxsYToiOnt1bmljb2RlOlsiMjYxNC1mZTBmIiwiMjYxNCJdLGZuYW1lOiIyNjE0Iix1YzoiMjYxNCIsaXNDYW5vbmljYWw6ITB9LCI6Y29mZmVlOiI6e3VuaWNvZGU6WyIyNjE1LWZlMGYiLCIyNjE1Il0sZm5hbWU6IjI2MTUiLHVjOiIyNjE1Iixpc0Nhbm9uaWNhbDohMH0sIjpwb2ludF91cDoiOnt1bmljb2RlOlsiMjYxZC1mZTBmIiwiMjYxZCJdLGZuYW1lOiIyNjFkIix1YzoiMjYxZCIsaXNDYW5vbmljYWw6ITB9LCI6cmVsYXhlZDoiOnt1bmljb2RlOlsiMjYzYS1mZTBmIiwiMjYzYSJdLGZuYW1lOiIyNjNhIix1YzoiMjYzYSIsaXNDYW5vbmljYWw6ITB9LCI6YXJpZXM6Ijp7dW5pY29kZTpbIjI2NDgtZmUwZiIsIjI2NDgiXSxmbmFtZToiMjY0OCIsdWM6IjI2NDgiLGlzQ2Fub25pY2FsOiEwfSwiOnRhdXJ1czoiOnt1bmljb2RlOlsiMjY0OS1mZTBmIiwiMjY0OSJdLGZuYW1lOiIyNjQ5Iix1YzoiMjY0OSIsaXNDYW5vbmljYWw6ITB9LCI6Z2VtaW5pOiI6e3VuaWNvZGU6WyIyNjRhLWZlMGYiLCIyNjRhIl0sZm5hbWU6IjI2NGEiLHVjOiIyNjRhIixpc0Nhbm9uaWNhbDohMH0sIjpjYW5jZXI6Ijp7dW5pY29kZTpbIjI2NGItZmUwZiIsIjI2NGIiXSxmbmFtZToiMjY0YiIsdWM6IjI2NGIiLGlzQ2Fub25pY2FsOiEwfSwiOmxlbzoiOnt1bmljb2RlOlsiMjY0Yy1mZTBmIiwiMjY0YyJdLGZuYW1lOiIyNjRjIix1YzoiMjY0YyIsaXNDYW5vbmljYWw6ITB9LCI6dmlyZ286Ijp7dW5pY29kZTpbIjI2NGQtZmUwZiIsIjI2NGQiXSxmbmFtZToiMjY0ZCIsdWM6IjI2NGQiLGlzQ2Fub25pY2FsOiEwfSwiOmxpYnJhOiI6e3VuaWNvZGU6WyIyNjRlLWZlMGYiLCIyNjRlIl0sZm5hbWU6IjI2NGUiLHVjOiIyNjRlIixpc0Nhbm9uaWNhbDohMH0sIjpzY29ycGl1czoiOnt1bmljb2RlOlsiMjY0Zi1mZTBmIiwiMjY0ZiJdLGZuYW1lOiIyNjRmIix1YzoiMjY0ZiIsaXNDYW5vbmljYWw6ITB9LCI6c2FnaXR0YXJpdXM6Ijp7dW5pY29kZTpbIjI2NTAtZmUwZiIsIjI2NTAiXSxmbmFtZToiMjY1MCIsdWM6IjI2NTAiLGlzQ2Fub25pY2FsOiEwfSwiOmNhcHJpY29ybjoiOnt1bmljb2RlOlsiMjY1MS1mZTBmIiwiMjY1MSJdLGZuYW1lOiIyNjUxIix1YzoiMjY1MSIsaXNDYW5vbmljYWw6ITB9LCI6YXF1YXJpdXM6Ijp7dW5pY29kZTpbIjI2NTItZmUwZiIsIjI2NTIiXSxmbmFtZToiMjY1MiIsdWM6IjI2NTIiLGlzQ2Fub25pY2FsOiEwfSwiOnBpc2NlczoiOnt1bmljb2RlOlsiMjY1My1mZTBmIiwiMjY1MyJdLGZuYW1lOiIyNjUzIix1YzoiMjY1MyIsaXNDYW5vbmljYWw6ITB9LCI6c3BhZGVzOiI6e3VuaWNvZGU6WyIyNjYwLWZlMGYiLCIyNjYwIl0sZm5hbWU6IjI2NjAiLHVjOiIyNjYwIixpc0Nhbm9uaWNhbDohMH0sIjpjbHViczoiOnt1bmljb2RlOlsiMjY2My1mZTBmIiwiMjY2MyJdLGZuYW1lOiIyNjYzIix1YzoiMjY2MyIsaXNDYW5vbmljYWw6ITB9LCI6aGVhcnRzOiI6e3VuaWNvZGU6WyIyNjY1LWZlMGYiLCIyNjY1Il0sZm5hbWU6IjI2NjUiLHVjOiIyNjY1Iixpc0Nhbm9uaWNhbDohMH0sIjpkaWFtb25kczoiOnt1bmljb2RlOlsiMjY2Ni1mZTBmIiwiMjY2NiJdLGZuYW1lOiIyNjY2Iix1YzoiMjY2NiIsaXNDYW5vbmljYWw6ITB9LCI6aG90c3ByaW5nczoiOnt1bmljb2RlOlsiMjY2OC1mZTBmIiwiMjY2OCJdLGZuYW1lOiIyNjY4Iix1YzoiMjY2OCIsaXNDYW5vbmljYWw6ITB9LCI6cmVjeWNsZToiOnt1bmljb2RlOlsiMjY3Yi1mZTBmIiwiMjY3YiJdLGZuYW1lOiIyNjdiIix1YzoiMjY3YiIsaXNDYW5vbmljYWw6ITB9LCI6d2hlZWxjaGFpcjoiOnt1bmljb2RlOlsiMjY3Zi1mZTBmIiwiMjY3ZiJdLGZuYW1lOiIyNjdmIix1YzoiMjY3ZiIsaXNDYW5vbmljYWw6ITB9LCI6YW5jaG9yOiI6e3VuaWNvZGU6WyIyNjkzLWZlMGYiLCIyNjkzIl0sZm5hbWU6IjI2OTMiLHVjOiIyNjkzIixpc0Nhbm9uaWNhbDohMH0sIjp3YXJuaW5nOiI6e3VuaWNvZGU6WyIyNmEwLWZlMGYiLCIyNmEwIl0sZm5hbWU6IjI2YTAiLHVjOiIyNmEwIixpc0Nhbm9uaWNhbDohMH0sIjp6YXA6Ijp7dW5pY29kZTpbIjI2YTEtZmUwZiIsIjI2YTEiXSxmbmFtZToiMjZhMSIsdWM6IjI2YTEiLGlzQ2Fub25pY2FsOiEwfSwiOndoaXRlX2NpcmNsZToiOnt1bmljb2RlOlsiMjZhYS1mZTBmIiwiMjZhYSJdLGZuYW1lOiIyNmFhIix1YzoiMjZhYSIsaXNDYW5vbmljYWw6ITB9LCI6YmxhY2tfY2lyY2xlOiI6e3VuaWNvZGU6WyIyNmFiLWZlMGYiLCIyNmFiIl0sZm5hbWU6IjI2YWIiLHVjOiIyNmFiIixpc0Nhbm9uaWNhbDohMH0sIjpzb2NjZXI6Ijp7dW5pY29kZTpbIjI2YmQtZmUwZiIsIjI2YmQiXSxmbmFtZToiMjZiZCIsdWM6IjI2YmQiLGlzQ2Fub25pY2FsOiEwfSwiOmJhc2ViYWxsOiI6e3VuaWNvZGU6WyIyNmJlLWZlMGYiLCIyNmJlIl0sZm5hbWU6IjI2YmUiLHVjOiIyNmJlIixpc0Nhbm9uaWNhbDohMH0sIjpzbm93bWFuOiI6e3VuaWNvZGU6WyIyNmM0LWZlMGYiLCIyNmM0Il0sZm5hbWU6IjI2YzQiLHVjOiIyNmM0Iixpc0Nhbm9uaWNhbDohMH0sIjpwYXJ0bHlfc3Vubnk6Ijp7dW5pY29kZTpbIjI2YzUtZmUwZiIsIjI2YzUiXSxmbmFtZToiMjZjNSIsdWM6IjI2YzUiLGlzQ2Fub25pY2FsOiEwfSwiOm5vX2VudHJ5OiI6e3VuaWNvZGU6WyIyNmQ0LWZlMGYiLCIyNmQ0Il0sZm5hbWU6IjI2ZDQiLHVjOiIyNmQ0Iixpc0Nhbm9uaWNhbDohMH0sIjpjaHVyY2g6Ijp7dW5pY29kZTpbIjI2ZWEtZmUwZiIsIjI2ZWEiXSxmbmFtZToiMjZlYSIsdWM6IjI2ZWEiLGlzQ2Fub25pY2FsOiEwfSwiOmZvdW50YWluOiI6e3VuaWNvZGU6WyIyNmYyLWZlMGYiLCIyNmYyIl0sZm5hbWU6IjI2ZjIiLHVjOiIyNmYyIixpc0Nhbm9uaWNhbDohMH0sIjpnb2xmOiI6e3VuaWNvZGU6WyIyNmYzLWZlMGYiLCIyNmYzIl0sZm5hbWU6IjI2ZjMiLHVjOiIyNmYzIixpc0Nhbm9uaWNhbDohMH0sIjpzYWlsYm9hdDoiOnt1bmljb2RlOlsiMjZmNS1mZTBmIiwiMjZmNSJdLGZuYW1lOiIyNmY1Iix1YzoiMjZmNSIsaXNDYW5vbmljYWw6ITB9LCI6dGVudDoiOnt1bmljb2RlOlsiMjZmYS1mZTBmIiwiMjZmYSJdLGZuYW1lOiIyNmZhIix1YzoiMjZmYSIsaXNDYW5vbmljYWw6ITB9LCI6ZnVlbHB1bXA6Ijp7dW5pY29kZTpbIjI2ZmQtZmUwZiIsIjI2ZmQiXSxmbmFtZToiMjZmZCIsdWM6IjI2ZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnNjaXNzb3JzOiI6e3VuaWNvZGU6WyIyNzAyLWZlMGYiLCIyNzAyIl0sZm5hbWU6IjI3MDIiLHVjOiIyNzAyIixpc0Nhbm9uaWNhbDohMH0sIjphaXJwbGFuZToiOnt1bmljb2RlOlsiMjcwOC1mZTBmIiwiMjcwOCJdLGZuYW1lOiIyNzA4Iix1YzoiMjcwOCIsaXNDYW5vbmljYWw6ITB9LCI6ZW52ZWxvcGU6Ijp7dW5pY29kZTpbIjI3MDktZmUwZiIsIjI3MDkiXSxmbmFtZToiMjcwOSIsdWM6IjI3MDkiLGlzQ2Fub25pY2FsOiEwfSwiOnY6Ijp7dW5pY29kZTpbIjI3MGMtZmUwZiIsIjI3MGMiXSxmbmFtZToiMjcwYyIsdWM6IjI3MGMiLGlzQ2Fub25pY2FsOiEwfSwiOnBlbmNpbDI6Ijp7dW5pY29kZTpbIjI3MGYtZmUwZiIsIjI3MGYiXSxmbmFtZToiMjcwZiIsdWM6IjI3MGYiLGlzQ2Fub25pY2FsOiEwfSwiOmJsYWNrX25pYjoiOnt1bmljb2RlOlsiMjcxMi1mZTBmIiwiMjcxMiJdLGZuYW1lOiIyNzEyIix1YzoiMjcxMiIsaXNDYW5vbmljYWw6ITB9LCI6aGVhdnlfY2hlY2tfbWFyazoiOnt1bmljb2RlOlsiMjcxNC1mZTBmIiwiMjcxNCJdLGZuYW1lOiIyNzE0Iix1YzoiMjcxNCIsaXNDYW5vbmljYWw6ITB9LCI6aGVhdnlfbXVsdGlwbGljYXRpb25feDoiOnt1bmljb2RlOlsiMjcxNi1mZTBmIiwiMjcxNiJdLGZuYW1lOiIyNzE2Iix1YzoiMjcxNiIsaXNDYW5vbmljYWw6ITB9LCI6ZWlnaHRfc3Bva2VkX2FzdGVyaXNrOiI6e3VuaWNvZGU6WyIyNzMzLWZlMGYiLCIyNzMzIl0sZm5hbWU6IjI3MzMiLHVjOiIyNzMzIixpc0Nhbm9uaWNhbDohMH0sIjplaWdodF9wb2ludGVkX2JsYWNrX3N0YXI6Ijp7dW5pY29kZTpbIjI3MzQtZmUwZiIsIjI3MzQiXSxmbmFtZToiMjczNCIsdWM6IjI3MzQiLGlzQ2Fub25pY2FsOiEwfSwiOnNub3dmbGFrZToiOnt1bmljb2RlOlsiMjc0NC1mZTBmIiwiMjc0NCJdLGZuYW1lOiIyNzQ0Iix1YzoiMjc0NCIsaXNDYW5vbmljYWw6ITB9LCI6c3BhcmtsZToiOnt1bmljb2RlOlsiMjc0Ny1mZTBmIiwiMjc0NyJdLGZuYW1lOiIyNzQ3Iix1YzoiMjc0NyIsaXNDYW5vbmljYWw6ITB9LCI6ZXhjbGFtYXRpb246Ijp7dW5pY29kZTpbIjI3NTctZmUwZiIsIjI3NTciXSxmbmFtZToiMjc1NyIsdWM6IjI3NTciLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0OiI6e3VuaWNvZGU6WyIyNzY0LWZlMGYiLCIyNzY0Il0sZm5hbWU6IjI3NjQiLHVjOiIyNzY0Iixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd19yaWdodDoiOnt1bmljb2RlOlsiMjdhMS1mZTBmIiwiMjdhMSJdLGZuYW1lOiIyN2ExIix1YzoiMjdhMSIsaXNDYW5vbmljYWw6ITB9LCI6YXJyb3dfaGVhZGluZ191cDoiOnt1bmljb2RlOlsiMjkzNC1mZTBmIiwiMjkzNCJdLGZuYW1lOiIyOTM0Iix1YzoiMjkzNCIsaXNDYW5vbmljYWw6ITB9LCI6YXJyb3dfaGVhZGluZ19kb3duOiI6e3VuaWNvZGU6WyIyOTM1LWZlMGYiLCIyOTM1Il0sZm5hbWU6IjI5MzUiLHVjOiIyOTM1Iixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd19sZWZ0OiI6e3VuaWNvZGU6WyIyYjA1LWZlMGYiLCIyYjA1Il0sZm5hbWU6IjJiMDUiLHVjOiIyYjA1Iixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd191cDoiOnt1bmljb2RlOlsiMmIwNi1mZTBmIiwiMmIwNiJdLGZuYW1lOiIyYjA2Iix1YzoiMmIwNiIsaXNDYW5vbmljYWw6ITB9LCI6YXJyb3dfZG93bjoiOnt1bmljb2RlOlsiMmIwNy1mZTBmIiwiMmIwNyJdLGZuYW1lOiIyYjA3Iix1YzoiMmIwNyIsaXNDYW5vbmljYWw6ITB9LCI6YmxhY2tfbGFyZ2Vfc3F1YXJlOiI6e3VuaWNvZGU6WyIyYjFiLWZlMGYiLCIyYjFiIl0sZm5hbWU6IjJiMWIiLHVjOiIyYjFiIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9sYXJnZV9zcXVhcmU6Ijp7dW5pY29kZTpbIjJiMWMtZmUwZiIsIjJiMWMiXSxmbmFtZToiMmIxYyIsdWM6IjJiMWMiLGlzQ2Fub25pY2FsOiEwfSwiOnN0YXI6Ijp7dW5pY29kZTpbIjJiNTAtZmUwZiIsIjJiNTAiXSxmbmFtZToiMmI1MCIsdWM6IjJiNTAiLGlzQ2Fub25pY2FsOiEwfSwiOm86Ijp7dW5pY29kZTpbIjJiNTUtZmUwZiIsIjJiNTUiXSxmbmFtZToiMmI1NSIsdWM6IjJiNTUiLGlzQ2Fub25pY2FsOiEwfSwiOndhdnlfZGFzaDoiOnt1bmljb2RlOlsiMzAzMC1mZTBmIiwiMzAzMCJdLGZuYW1lOiIzMDMwIix1YzoiMzAzMCIsaXNDYW5vbmljYWw6ITB9LCI6cGFydF9hbHRlcm5hdGlvbl9tYXJrOiI6e3VuaWNvZGU6WyIzMDNkLWZlMGYiLCIzMDNkIl0sZm5hbWU6IjMwM2QiLHVjOiIzMDNkIixpc0Nhbm9uaWNhbDohMH0sIjpjb25ncmF0dWxhdGlvbnM6Ijp7dW5pY29kZTpbIjMyOTctZmUwZiIsIjMyOTciXSxmbmFtZToiMzI5NyIsdWM6IjMyOTciLGlzQ2Fub25pY2FsOiEwfSwiOnNlY3JldDoiOnt1bmljb2RlOlsiMzI5OS1mZTBmIiwiMzI5OSJdLGZuYW1lOiIzMjk5Iix1YzoiMzI5OSIsaXNDYW5vbmljYWw6ITB9LCI6Y3Jvc3M6Ijp7dW5pY29kZTpbIjI3MWQtZmUwZiIsIjI3MWQiXSxmbmFtZToiMjcxZCIsdWM6IjI3MWQiLGlzQ2Fub25pY2FsOiEwfSwiOmxhdGluX2Nyb3NzOiI6e3VuaWNvZGU6WyIyNzFkLWZlMGYiLCIyNzFkIl0sZm5hbWU6IjI3MWQiLHVjOiIyNzFkIixpc0Nhbm9uaWNhbDohMX0sIjprZXlib2FyZDoiOnt1bmljb2RlOlsiMjMyOC1mZTBmIiwiMjMyOCJdLGZuYW1lOiIyMzI4Iix1YzoiMjMyOCIsaXNDYW5vbmljYWw6ITB9LCI6d3JpdGluZ19oYW5kOiI6e3VuaWNvZGU6WyIyNzBkLWZlMGYiLCIyNzBkIl0sZm5hbWU6IjI3MGQiLHVjOiIyNzBkIixpc0Nhbm9uaWNhbDohMH0sIjplamVjdDoiOnt1bmljb2RlOlsiMjNjZi1mZTBmIiwiMjNjZiJdLGZuYW1lOiIyM2NmIix1YzoiMjNjZiIsaXNDYW5vbmljYWw6ITB9LCI6ZWplY3Rfc3ltYm9sOiI6e3VuaWNvZGU6WyIyM2NmLWZlMGYiLCIyM2NmIl0sZm5hbWU6IjIzY2YiLHVjOiIyM2NmIixpc0Nhbm9uaWNhbDohMX0sIjp0cmFja19uZXh0OiI6e3VuaWNvZGU6WyIyM2VkLWZlMGYiLCIyM2VkIl0sZm5hbWU6IjIzZWQiLHVjOiIyM2VkIixpc0Nhbm9uaWNhbDohMH0sIjpuZXh0X3RyYWNrOiI6e3VuaWNvZGU6WyIyM2VkLWZlMGYiLCIyM2VkIl0sZm5hbWU6IjIzZWQiLHVjOiIyM2VkIixpc0Nhbm9uaWNhbDohMX0sIjp0cmFja19wcmV2aW91czoiOnt1bmljb2RlOlsiMjNlZS1mZTBmIiwiMjNlZSJdLGZuYW1lOiIyM2VlIix1YzoiMjNlZSIsaXNDYW5vbmljYWw6ITB9LCI6cHJldmlvdXNfdHJhY2s6Ijp7dW5pY29kZTpbIjIzZWUtZmUwZiIsIjIzZWUiXSxmbmFtZToiMjNlZSIsdWM6IjIzZWUiLGlzQ2Fub25pY2FsOiExfSwiOnBsYXlfcGF1c2U6Ijp7dW5pY29kZTpbIjIzZWYtZmUwZiIsIjIzZWYiXSxmbmFtZToiMjNlZiIsdWM6IjIzZWYiLGlzQ2Fub25pY2FsOiEwCn0sIjpzdG9wd2F0Y2g6Ijp7dW5pY29kZTpbIjIzZjEtZmUwZiIsIjIzZjEiXSxmbmFtZToiMjNmMSIsdWM6IjIzZjEiLGlzQ2Fub25pY2FsOiEwfSwiOnRpbWVyOiI6e3VuaWNvZGU6WyIyM2YyLWZlMGYiLCIyM2YyIl0sZm5hbWU6IjIzZjIiLHVjOiIyM2YyIixpc0Nhbm9uaWNhbDohMH0sIjp0aW1lcl9jbG9jazoiOnt1bmljb2RlOlsiMjNmMi1mZTBmIiwiMjNmMiJdLGZuYW1lOiIyM2YyIix1YzoiMjNmMiIsaXNDYW5vbmljYWw6ITF9LCI6cGF1c2VfYnV0dG9uOiI6e3VuaWNvZGU6WyIyM2Y4LWZlMGYiLCIyM2Y4Il0sZm5hbWU6IjIzZjgiLHVjOiIyM2Y4Iixpc0Nhbm9uaWNhbDohMH0sIjpkb3VibGVfdmVydGljYWxfYmFyOiI6e3VuaWNvZGU6WyIyM2Y4LWZlMGYiLCIyM2Y4Il0sZm5hbWU6IjIzZjgiLHVjOiIyM2Y4Iixpc0Nhbm9uaWNhbDohMX0sIjpzdG9wX2J1dHRvbjoiOnt1bmljb2RlOlsiMjNmOS1mZTBmIiwiMjNmOSJdLGZuYW1lOiIyM2Y5Iix1YzoiMjNmOSIsaXNDYW5vbmljYWw6ITB9LCI6cmVjb3JkX2J1dHRvbjoiOnt1bmljb2RlOlsiMjNmYS1mZTBmIiwiMjNmYSJdLGZuYW1lOiIyM2ZhIix1YzoiMjNmYSIsaXNDYW5vbmljYWw6ITB9LCI6dW1icmVsbGEyOiI6e3VuaWNvZGU6WyIyNjAyLWZlMGYiLCIyNjAyIl0sZm5hbWU6IjI2MDIiLHVjOiIyNjAyIixpc0Nhbm9uaWNhbDohMH0sIjpzbm93bWFuMjoiOnt1bmljb2RlOlsiMjYwMy1mZTBmIiwiMjYwMyJdLGZuYW1lOiIyNjAzIix1YzoiMjYwMyIsaXNDYW5vbmljYWw6ITB9LCI6Y29tZXQ6Ijp7dW5pY29kZTpbIjI2MDQtZmUwZiIsIjI2MDQiXSxmbmFtZToiMjYwNCIsdWM6IjI2MDQiLGlzQ2Fub25pY2FsOiEwfSwiOnNoYW1yb2NrOiI6e3VuaWNvZGU6WyIyNjE4LWZlMGYiLCIyNjE4Il0sZm5hbWU6IjI2MTgiLHVjOiIyNjE4Iixpc0Nhbm9uaWNhbDohMH0sIjpza3VsbF9jcm9zc2JvbmVzOiI6e3VuaWNvZGU6WyIyNjIwLWZlMGYiLCIyNjIwIl0sZm5hbWU6IjI2MjAiLHVjOiIyNjIwIixpc0Nhbm9uaWNhbDohMH0sIjpza3VsbF9hbmRfY3Jvc3Nib25lczoiOnt1bmljb2RlOlsiMjYyMC1mZTBmIiwiMjYyMCJdLGZuYW1lOiIyNjIwIix1YzoiMjYyMCIsaXNDYW5vbmljYWw6ITF9LCI6cmFkaW9hY3RpdmU6Ijp7dW5pY29kZTpbIjI2MjItZmUwZiIsIjI2MjIiXSxmbmFtZToiMjYyMiIsdWM6IjI2MjIiLGlzQ2Fub25pY2FsOiEwfSwiOnJhZGlvYWN0aXZlX3NpZ246Ijp7dW5pY29kZTpbIjI2MjItZmUwZiIsIjI2MjIiXSxmbmFtZToiMjYyMiIsdWM6IjI2MjIiLGlzQ2Fub25pY2FsOiExfSwiOmJpb2hhemFyZDoiOnt1bmljb2RlOlsiMjYyMy1mZTBmIiwiMjYyMyJdLGZuYW1lOiIyNjIzIix1YzoiMjYyMyIsaXNDYW5vbmljYWw6ITB9LCI6YmlvaGF6YXJkX3NpZ246Ijp7dW5pY29kZTpbIjI2MjMtZmUwZiIsIjI2MjMiXSxmbmFtZToiMjYyMyIsdWM6IjI2MjMiLGlzQ2Fub25pY2FsOiExfSwiOm9ydGhvZG94X2Nyb3NzOiI6e3VuaWNvZGU6WyIyNjI2LWZlMGYiLCIyNjI2Il0sZm5hbWU6IjI2MjYiLHVjOiIyNjI2Iixpc0Nhbm9uaWNhbDohMH0sIjpzdGFyX2FuZF9jcmVzY2VudDoiOnt1bmljb2RlOlsiMjYyYS1mZTBmIiwiMjYyYSJdLGZuYW1lOiIyNjJhIix1YzoiMjYyYSIsaXNDYW5vbmljYWw6ITB9LCI6cGVhY2U6Ijp7dW5pY29kZTpbIjI2MmUtZmUwZiIsIjI2MmUiXSxmbmFtZToiMjYyZSIsdWM6IjI2MmUiLGlzQ2Fub25pY2FsOiEwfSwiOnBlYWNlX3N5bWJvbDoiOnt1bmljb2RlOlsiMjYyZS1mZTBmIiwiMjYyZSJdLGZuYW1lOiIyNjJlIix1YzoiMjYyZSIsaXNDYW5vbmljYWw6ITF9LCI6eWluX3lhbmc6Ijp7dW5pY29kZTpbIjI2MmYtZmUwZiIsIjI2MmYiXSxmbmFtZToiMjYyZiIsdWM6IjI2MmYiLGlzQ2Fub25pY2FsOiEwfSwiOndoZWVsX29mX2RoYXJtYToiOnt1bmljb2RlOlsiMjYzOC1mZTBmIiwiMjYzOCJdLGZuYW1lOiIyNjM4Iix1YzoiMjYzOCIsaXNDYW5vbmljYWw6ITB9LCI6ZnJvd25pbmcyOiI6e3VuaWNvZGU6WyIyNjM5LWZlMGYiLCIyNjM5Il0sZm5hbWU6IjI2MzkiLHVjOiIyNjM5Iixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9mcm93bmluZ19mYWNlOiI6e3VuaWNvZGU6WyIyNjM5LWZlMGYiLCIyNjM5Il0sZm5hbWU6IjI2MzkiLHVjOiIyNjM5Iixpc0Nhbm9uaWNhbDohMX0sIjpoYW1tZXJfcGljazoiOnt1bmljb2RlOlsiMjY5Mi1mZTBmIiwiMjY5MiJdLGZuYW1lOiIyNjkyIix1YzoiMjY5MiIsaXNDYW5vbmljYWw6ITB9LCI6aGFtbWVyX2FuZF9waWNrOiI6e3VuaWNvZGU6WyIyNjkyLWZlMGYiLCIyNjkyIl0sZm5hbWU6IjI2OTIiLHVjOiIyNjkyIixpc0Nhbm9uaWNhbDohMX0sIjpjcm9zc2VkX3N3b3JkczoiOnt1bmljb2RlOlsiMjY5NC1mZTBmIiwiMjY5NCJdLGZuYW1lOiIyNjk0Iix1YzoiMjY5NCIsaXNDYW5vbmljYWw6ITB9LCI6c2NhbGVzOiI6e3VuaWNvZGU6WyIyNjk2LWZlMGYiLCIyNjk2Il0sZm5hbWU6IjI2OTYiLHVjOiIyNjk2Iixpc0Nhbm9uaWNhbDohMH0sIjphbGVtYmljOiI6e3VuaWNvZGU6WyIyNjk3LWZlMGYiLCIyNjk3Il0sZm5hbWU6IjI2OTciLHVjOiIyNjk3Iixpc0Nhbm9uaWNhbDohMH0sIjpnZWFyOiI6e3VuaWNvZGU6WyIyNjk5LWZlMGYiLCIyNjk5Il0sZm5hbWU6IjI2OTkiLHVjOiIyNjk5Iixpc0Nhbm9uaWNhbDohMH0sIjphdG9tOiI6e3VuaWNvZGU6WyIyNjliLWZlMGYiLCIyNjliIl0sZm5hbWU6IjI2OWIiLHVjOiIyNjliIixpc0Nhbm9uaWNhbDohMH0sIjphdG9tX3N5bWJvbDoiOnt1bmljb2RlOlsiMjY5Yi1mZTBmIiwiMjY5YiJdLGZuYW1lOiIyNjliIix1YzoiMjY5YiIsaXNDYW5vbmljYWw6ITF9LCI6ZmxldXItZGUtbGlzOiI6e3VuaWNvZGU6WyIyNjljLWZlMGYiLCIyNjljIl0sZm5hbWU6IjI2OWMiLHVjOiIyNjljIixpc0Nhbm9uaWNhbDohMH0sIjpjb2ZmaW46Ijp7dW5pY29kZTpbIjI2YjAtZmUwZiIsIjI2YjAiXSxmbmFtZToiMjZiMCIsdWM6IjI2YjAiLGlzQ2Fub25pY2FsOiEwfSwiOnVybjoiOnt1bmljb2RlOlsiMjZiMS1mZTBmIiwiMjZiMSJdLGZuYW1lOiIyNmIxIix1YzoiMjZiMSIsaXNDYW5vbmljYWw6ITB9LCI6ZnVuZXJhbF91cm46Ijp7dW5pY29kZTpbIjI2YjEtZmUwZiIsIjI2YjEiXSxmbmFtZToiMjZiMSIsdWM6IjI2YjEiLGlzQ2Fub25pY2FsOiExfSwiOnRodW5kZXJfY2xvdWRfcmFpbjoiOnt1bmljb2RlOlsiMjZjOC1mZTBmIiwiMjZjOCJdLGZuYW1lOiIyNmM4Iix1YzoiMjZjOCIsaXNDYW5vbmljYWw6ITB9LCI6dGh1bmRlcl9jbG91ZF9hbmRfcmFpbjoiOnt1bmljb2RlOlsiMjZjOC1mZTBmIiwiMjZjOCJdLGZuYW1lOiIyNmM4Iix1YzoiMjZjOCIsaXNDYW5vbmljYWw6ITF9LCI6cGljazoiOnt1bmljb2RlOlsiMjZjZi1mZTBmIiwiMjZjZiJdLGZuYW1lOiIyNmNmIix1YzoiMjZjZiIsaXNDYW5vbmljYWw6ITB9LCI6aGVsbWV0X3dpdGhfY3Jvc3M6Ijp7dW5pY29kZTpbIjI2ZDEtZmUwZiIsIjI2ZDEiXSxmbmFtZToiMjZkMSIsdWM6IjI2ZDEiLGlzQ2Fub25pY2FsOiEwfSwiOmhlbG1ldF93aXRoX3doaXRlX2Nyb3NzOiI6e3VuaWNvZGU6WyIyNmQxLWZlMGYiLCIyNmQxIl0sZm5hbWU6IjI2ZDEiLHVjOiIyNmQxIixpc0Nhbm9uaWNhbDohMX0sIjpjaGFpbnM6Ijp7dW5pY29kZTpbIjI2ZDMtZmUwZiIsIjI2ZDMiXSxmbmFtZToiMjZkMyIsdWM6IjI2ZDMiLGlzQ2Fub25pY2FsOiEwfSwiOnNoaW50b19zaHJpbmU6Ijp7dW5pY29kZTpbIjI2ZTktZmUwZiIsIjI2ZTkiXSxmbmFtZToiMjZlOSIsdWM6IjI2ZTkiLGlzQ2Fub25pY2FsOiEwfSwiOm1vdW50YWluOiI6e3VuaWNvZGU6WyIyNmYwLWZlMGYiLCIyNmYwIl0sZm5hbWU6IjI2ZjAiLHVjOiIyNmYwIixpc0Nhbm9uaWNhbDohMH0sIjpiZWFjaF91bWJyZWxsYToiOnt1bmljb2RlOlsiMjZmMS1mZTBmIiwiMjZmMSJdLGZuYW1lOiIyNmYxIix1YzoiMjZmMSIsaXNDYW5vbmljYWw6ITB9LCI6dW1icmVsbGFfb25fZ3JvdW5kOiI6e3VuaWNvZGU6WyIyNmYxLWZlMGYiLCIyNmYxIl0sZm5hbWU6IjI2ZjEiLHVjOiIyNmYxIixpc0Nhbm9uaWNhbDohMX0sIjpmZXJyeToiOnt1bmljb2RlOlsiMjZmNC1mZTBmIiwiMjZmNCJdLGZuYW1lOiIyNmY0Iix1YzoiMjZmNCIsaXNDYW5vbmljYWw6ITB9LCI6c2tpZXI6Ijp7dW5pY29kZTpbIjI2ZjctZmUwZiIsIjI2ZjciXSxmbmFtZToiMjZmNyIsdWM6IjI2ZjciLGlzQ2Fub25pY2FsOiEwfSwiOmljZV9za2F0ZToiOnt1bmljb2RlOlsiMjZmOC1mZTBmIiwiMjZmOCJdLGZuYW1lOiIyNmY4Iix1YzoiMjZmOCIsaXNDYW5vbmljYWw6ITB9LCI6YmFza2V0YmFsbF9wbGF5ZXI6Ijp7dW5pY29kZTpbIjI2ZjktZmUwZiIsIjI2ZjkiXSxmbmFtZToiMjZmOSIsdWM6IjI2ZjkiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2JhbGw6Ijp7dW5pY29kZTpbIjI2ZjktZmUwZiIsIjI2ZjkiXSxmbmFtZToiMjZmOSIsdWM6IjI2ZjkiLGlzQ2Fub25pY2FsOiExfSwiOnN0YXJfb2ZfZGF2aWQ6Ijp7dW5pY29kZTpbIjI3MjEtZmUwZiIsIjI3MjEiXSxmbmFtZToiMjcyMSIsdWM6IjI3MjEiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0X2V4Y2xhbWF0aW9uOiI6e3VuaWNvZGU6WyIyNzYzLWZlMGYiLCIyNzYzIl0sZm5hbWU6IjI3NjMiLHVjOiIyNzYzIixpc0Nhbm9uaWNhbDohMH0sIjpoZWF2eV9oZWFydF9leGNsYW1hdGlvbl9tYXJrX29ybmFtZW50OiI6e3VuaWNvZGU6WyIyNzYzLWZlMGYiLCIyNzYzIl0sZm5hbWU6IjI3NjMiLHVjOiIyNzYzIixpc0Nhbm9uaWNhbDohMX0sIjp0aGlyZF9wbGFjZToiOnt1bmljb2RlOlsiMWY5NDkiXSxmbmFtZToiMWY5NDkiLHVjOiIxZjk0OSIsaXNDYW5vbmljYWw6ITB9LCI6dGhpcmRfcGxhY2VfbWVkYWw6Ijp7dW5pY29kZTpbIjFmOTQ5Il0sZm5hbWU6IjFmOTQ5Iix1YzoiMWY5NDkiLGlzQ2Fub25pY2FsOiExfSwiOnNlY29uZF9wbGFjZToiOnt1bmljb2RlOlsiMWY5NDgiXSxmbmFtZToiMWY5NDgiLHVjOiIxZjk0OCIsaXNDYW5vbmljYWw6ITB9LCI6c2Vjb25kX3BsYWNlX21lZGFsOiI6e3VuaWNvZGU6WyIxZjk0OCJdLGZuYW1lOiIxZjk0OCIsdWM6IjFmOTQ4Iixpc0Nhbm9uaWNhbDohMX0sIjpmaXJzdF9wbGFjZToiOnt1bmljb2RlOlsiMWY5NDciXSxmbmFtZToiMWY5NDciLHVjOiIxZjk0NyIsaXNDYW5vbmljYWw6ITB9LCI6Zmlyc3RfcGxhY2VfbWVkYWw6Ijp7dW5pY29kZTpbIjFmOTQ3Il0sZm5hbWU6IjFmOTQ3Iix1YzoiMWY5NDciLGlzQ2Fub25pY2FsOiExfSwiOmZlbmNlcjoiOnt1bmljb2RlOlsiMWY5M2EiXSxmbmFtZToiMWY5M2EiLHVjOiIxZjkzYSIsaXNDYW5vbmljYWw6ITB9LCI6ZmVuY2luZzoiOnt1bmljb2RlOlsiMWY5M2EiXSxmbmFtZToiMWY5M2EiLHVjOiIxZjkzYSIsaXNDYW5vbmljYWw6ITF9LCI6Z29hbDoiOnt1bmljb2RlOlsiMWY5NDUiXSxmbmFtZToiMWY5NDUiLHVjOiIxZjk0NSIsaXNDYW5vbmljYWw6ITB9LCI6Z29hbF9uZXQ6Ijp7dW5pY29kZTpbIjFmOTQ1Il0sZm5hbWU6IjFmOTQ1Iix1YzoiMWY5NDUiLGlzQ2Fub25pY2FsOiExfSwiOmhhbmRiYWxsOiI6e3VuaWNvZGU6WyIxZjkzZSJdLGZuYW1lOiIxZjkzZSIsdWM6IjFmOTNlIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfejoiOnt1bmljb2RlOlsiMWYxZmYiXSxmbmFtZToiMWYxZmYiLHVjOiIxZjFmZiIsaXNDYW5vbmljYWw6ITB9LCI6d2F0ZXJfcG9sbzoiOnt1bmljb2RlOlsiMWY5M2QiXSxmbmFtZToiMWY5M2QiLHVjOiIxZjkzZCIsaXNDYW5vbmljYWw6ITB9LCI6bWFydGlhbF9hcnRzX3VuaWZvcm06Ijp7dW5pY29kZTpbIjFmOTRiIl0sZm5hbWU6IjFmOTRiIix1YzoiMWY5NGIiLGlzQ2Fub25pY2FsOiEwfSwiOmthcmF0ZV91bmlmb3JtOiI6e3VuaWNvZGU6WyIxZjk0YiJdLGZuYW1lOiIxZjk0YiIsdWM6IjFmOTRiIixpc0Nhbm9uaWNhbDohMX0sIjpib3hpbmdfZ2xvdmU6Ijp7dW5pY29kZTpbIjFmOTRhIl0sZm5hbWU6IjFmOTRhIix1YzoiMWY5NGEiLGlzQ2Fub25pY2FsOiEwfSwiOmJveGluZ19nbG92ZXM6Ijp7dW5pY29kZTpbIjFmOTRhIl0sZm5hbWU6IjFmOTRhIix1YzoiMWY5NGEiLGlzQ2Fub25pY2FsOiExfSwiOndyZXN0bGVyczoiOnt1bmljb2RlOlsiMWY5M2MiXSxmbmFtZToiMWY5M2MiLHVjOiIxZjkzYyIsaXNDYW5vbmljYWw6ITB9LCI6d3Jlc3RsaW5nOiI6e3VuaWNvZGU6WyIxZjkzYyJdLGZuYW1lOiIxZjkzYyIsdWM6IjFmOTNjIixpc0Nhbm9uaWNhbDohMX0sIjpqdWdnbGluZzoiOnt1bmljb2RlOlsiMWY5MzkiXSxmbmFtZToiMWY5MzkiLHVjOiIxZjkzOSIsaXNDYW5vbmljYWw6ITB9LCI6anVnZ2xlcjoiOnt1bmljb2RlOlsiMWY5MzkiXSxmbmFtZToiMWY5MzkiLHVjOiIxZjkzOSIsaXNDYW5vbmljYWw6ITF9LCI6Y2FydHdoZWVsOiI6e3VuaWNvZGU6WyIxZjkzOCJdLGZuYW1lOiIxZjkzOCIsdWM6IjFmOTM4Iixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fZG9pbmdfY2FydHdoZWVsOiI6e3VuaWNvZGU6WyIxZjkzOCJdLGZuYW1lOiIxZjkzOCIsdWM6IjFmOTM4Iixpc0Nhbm9uaWNhbDohMX0sIjpjYW5vZToiOnt1bmljb2RlOlsiMWY2ZjYiXSxmbmFtZToiMWY2ZjYiLHVjOiIxZjZmNiIsaXNDYW5vbmljYWw6ITB9LCI6a2F5YWs6Ijp7dW5pY29kZTpbIjFmNmY2Il0sZm5hbWU6IjFmNmY2Iix1YzoiMWY2ZjYiLGlzQ2Fub25pY2FsOiExfSwiOm1vdG9yX3Njb290ZXI6Ijp7dW5pY29kZTpbIjFmNmY1Il0sZm5hbWU6IjFmNmY1Iix1YzoiMWY2ZjUiLGlzQ2Fub25pY2FsOiEwfSwiOm1vdG9yYmlrZToiOnt1bmljb2RlOlsiMWY2ZjUiXSxmbmFtZToiMWY2ZjUiLHVjOiIxZjZmNSIsaXNDYW5vbmljYWw6ITF9LCI6c2Nvb3RlcjoiOnt1bmljb2RlOlsiMWY2ZjQiXSxmbmFtZToiMWY2ZjQiLHVjOiIxZjZmNCIsaXNDYW5vbmljYWw6ITB9LCI6c2hvcHBpbmdfY2FydDoiOnt1bmljb2RlOlsiMWY2ZDIiXSxmbmFtZToiMWY2ZDIiLHVjOiIxZjZkMiIsaXNDYW5vbmljYWw6ITB9LCI6c2hvcHBpbmdfdHJvbGxleToiOnt1bmljb2RlOlsiMWY2ZDIiXSxmbmFtZToiMWY2ZDIiLHVjOiIxZjZkMiIsaXNDYW5vbmljYWw6ITF9LCI6YmxhY2tfam9rZXI6Ijp7dW5pY29kZTpbIjFmMGNmIl0sZm5hbWU6IjFmMGNmIix1YzoiMWYwY2YiLGlzQ2Fub25pY2FsOiEwfSwiOmE6Ijp7dW5pY29kZTpbIjFmMTcwIl0sZm5hbWU6IjFmMTcwIix1YzoiMWYxNzAiLGlzQ2Fub25pY2FsOiEwfSwiOmI6Ijp7dW5pY29kZTpbIjFmMTcxIl0sZm5hbWU6IjFmMTcxIix1YzoiMWYxNzEiLGlzQ2Fub25pY2FsOiEwfSwiOm8yOiI6e3VuaWNvZGU6WyIxZjE3ZSJdLGZuYW1lOiIxZjE3ZSIsdWM6IjFmMTdlIixpc0Nhbm9uaWNhbDohMH0sIjpvY3RhZ29uYWxfc2lnbjoiOnt1bmljb2RlOlsiMWY2ZDEiXSxmbmFtZToiMWY2ZDEiLHVjOiIxZjZkMSIsaXNDYW5vbmljYWw6ITB9LCI6c3RvcF9zaWduOiI6e3VuaWNvZGU6WyIxZjZkMSJdLGZuYW1lOiIxZjZkMSIsdWM6IjFmNmQxIixpc0Nhbm9uaWNhbDohMX0sIjphYjoiOnt1bmljb2RlOlsiMWYxOGUiXSxmbmFtZToiMWYxOGUiLHVjOiIxZjE4ZSIsaXNDYW5vbmljYWw6ITB9LCI6Y2w6Ijp7dW5pY29kZTpbIjFmMTkxIl0sZm5hbWU6IjFmMTkxIix1YzoiMWYxOTEiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl95OiI6e3VuaWNvZGU6WyIxZjFmZSJdLGZuYW1lOiIxZjFmZSIsdWM6IjFmMWZlIixpc0Nhbm9uaWNhbDohMH0sIjpjb29sOiI6e3VuaWNvZGU6WyIxZjE5MiJdLGZuYW1lOiIxZjE5MiIsdWM6IjFmMTkyIixpc0Nhbm9uaWNhbDohMH0sIjpmcmVlOiI6e3VuaWNvZGU6WyIxZjE5MyJdLGZuYW1lOiIxZjE5MyIsdWM6IjFmMTkzIixpc0Nhbm9uaWNhbDohMH0sIjppZDoiOnt1bmljb2RlOlsiMWYxOTQiXSxmbmFtZToiMWYxOTQiLHVjOiIxZjE5NCIsaXNDYW5vbmljYWw6ITB9LCI6bmV3OiI6e3VuaWNvZGU6WyIxZjE5NSJdLGZuYW1lOiIxZjE5NSIsdWM6IjFmMTk1Iixpc0Nhbm9uaWNhbDohMH0sIjpuZzoiOnt1bmljb2RlOlsiMWYxOTYiXSxmbmFtZToiMWYxOTYiLHVjOiIxZjE5NiIsaXNDYW5vbmljYWw6ITB9LCI6b2s6Ijp7dW5pY29kZTpbIjFmMTk3Il0sZm5hbWU6IjFmMTk3Iix1YzoiMWYxOTciLGlzQ2Fub25pY2FsOiEwfSwiOnNvczoiOnt1bmljb2RlOlsiMWYxOTgiXSxmbmFtZToiMWYxOTgiLHVjOiIxZjE5OCIsaXNDYW5vbmljYWw6ITB9LCI6c3Bvb246Ijp7dW5pY29kZTpbIjFmOTQ0Il0sZm5hbWU6IjFmOTQ0Iix1YzoiMWY5NDQiLGlzQ2Fub25pY2FsOiEwfSwiOnVwOiI6e3VuaWNvZGU6WyIxZjE5OSJdLGZuYW1lOiIxZjE5OSIsdWM6IjFmMTk5Iixpc0Nhbm9uaWNhbDohMH0sIjp2czoiOnt1bmljb2RlOlsiMWYxOWEiXSxmbmFtZToiMWYxOWEiLHVjOiIxZjE5YSIsaXNDYW5vbmljYWw6ITB9LCI6Y2hhbXBhZ25lX2dsYXNzOiI6e3VuaWNvZGU6WyIxZjk0MiJdLGZuYW1lOiIxZjk0MiIsdWM6IjFmOTQyIixpc0Nhbm9uaWNhbDohMH0sIjpjbGlua2luZ19nbGFzczoiOnt1bmljb2RlOlsiMWY5NDIiXSxmbmFtZToiMWY5NDIiLHVjOiIxZjk0MiIsaXNDYW5vbmljYWw6ITF9LCI6dHVtYmxlcl9nbGFzczoiOnt1bmljb2RlOlsiMWY5NDMiXSxmbmFtZToiMWY5NDMiLHVjOiIxZjk0MyIsaXNDYW5vbmljYWw6ITB9LCI6d2hpc2t5OiI6e3VuaWNvZGU6WyIxZjk0MyJdLGZuYW1lOiIxZjk0MyIsdWM6IjFmOTQzIixpc0Nhbm9uaWNhbDohMX0sIjprb2tvOiI6e3VuaWNvZGU6WyIxZjIwMSJdLGZuYW1lOiIxZjIwMSIsdWM6IjFmMjAxIixpc0Nhbm9uaWNhbDohMH0sIjpzdHVmZmVkX2ZsYXRicmVhZDoiOnt1bmljb2RlOlsiMWY5NTkiXSxmbmFtZToiMWY5NTkiLHVjOiIxZjk1OSIsaXNDYW5vbmljYWw6ITB9LCI6c3R1ZmZlZF9waXRhOiI6e3VuaWNvZGU6WyIxZjk1OSJdLGZuYW1lOiIxZjk1OSIsdWM6IjFmOTU5Iixpc0Nhbm9uaWNhbDohMX0sIjp1Nzk4MToiOnt1bmljb2RlOlsiMWYyMzIiXSxmbmFtZToiMWYyMzIiLHVjOiIxZjIzMiIsaXNDYW5vbmljYWw6ITB9LCI6dTdhN2E6Ijp7dW5pY29kZTpbIjFmMjMzIl0sZm5hbWU6IjFmMjMzIix1YzoiMWYyMzMiLGlzQ2Fub25pY2FsOiEwfSwiOnU1NDA4OiI6e3VuaWNvZGU6WyIxZjIzNCJdLGZuYW1lOiIxZjIzNCIsdWM6IjFmMjM0Iixpc0Nhbm9uaWNhbDohMH0sIjp1NmU4MDoiOnt1bmljb2RlOlsiMWYyMzUiXSxmbmFtZToiMWYyMzUiLHVjOiIxZjIzNSIsaXNDYW5vbmljYWw6ITB9LCI6dTY3MDk6Ijp7dW5pY29kZTpbIjFmMjM2Il0sZm5hbWU6IjFmMjM2Iix1YzoiMWYyMzYiLGlzQ2Fub25pY2FsOiEwfSwiOnNoYWxsb3dfcGFuX29mX2Zvb2Q6Ijp7dW5pY29kZTpbIjFmOTU4Il0sZm5hbWU6IjFmOTU4Iix1YzoiMWY5NTgiLGlzQ2Fub25pY2FsOiEwfSwiOnBhZWxsYToiOnt1bmljb2RlOlsiMWY5NTgiXSxmbmFtZToiMWY5NTgiLHVjOiIxZjk1OCIsaXNDYW5vbmljYWw6ITF9LCI6dTc1MzM6Ijp7dW5pY29kZTpbIjFmMjM4Il0sZm5hbWU6IjFmMjM4Iix1YzoiMWYyMzgiLGlzQ2Fub25pY2FsOiEwfSwiOnU1MjcyOiI6e3VuaWNvZGU6WyIxZjIzOSJdLGZuYW1lOiIxZjIzOSIsdWM6IjFmMjM5Iixpc0Nhbm9uaWNhbDohMH0sIjpzYWxhZDoiOnt1bmljb2RlOlsiMWY5NTciXSxmbmFtZToiMWY5NTciLHVjOiIxZjk1NyIsaXNDYW5vbmljYWw6ITB9LCI6Z3JlZW5fc2FsYWQ6Ijp7dW5pY29kZTpbIjFmOTU3Il0sZm5hbWU6IjFmOTU3Iix1YzoiMWY5NTciLGlzQ2Fub25pY2FsOiExfSwiOnU1NWI2OiI6e3VuaWNvZGU6WyIxZjIzYSJdLGZuYW1lOiIxZjIzYSIsdWM6IjFmMjNhIixpc0Nhbm9uaWNhbDohMH0sIjppZGVvZ3JhcGhfYWR2YW50YWdlOiI6e3VuaWNvZGU6WyIxZjI1MCJdLGZuYW1lOiIxZjI1MCIsdWM6IjFmMjUwIixpc0Nhbm9uaWNhbDohMH0sIjphY2NlcHQ6Ijp7dW5pY29kZTpbIjFmMjUxIl0sZm5hbWU6IjFmMjUxIix1YzoiMWYyNTEiLGlzQ2Fub25pY2FsOiEwfSwiOmN5Y2xvbmU6Ijp7dW5pY29kZTpbIjFmMzAwIl0sZm5hbWU6IjFmMzAwIix1YzoiMWYzMDAiLGlzQ2Fub25pY2FsOiEwfSwiOmZyZW5jaF9icmVhZDoiOnt1bmljb2RlOlsiMWY5NTYiXSxmbmFtZToiMWY5NTYiLHVjOiIxZjk1NiIsaXNDYW5vbmljYWw6ITB9LCI6YmFndWV0dGVfYnJlYWQ6Ijp7dW5pY29kZTpbIjFmOTU2Il0sZm5hbWU6IjFmOTU2Iix1YzoiMWY5NTYiLGlzQ2Fub25pY2FsOiExfSwiOmZvZ2d5OiI6e3VuaWNvZGU6WyIxZjMwMSJdLGZuYW1lOiIxZjMwMSIsdWM6IjFmMzAxIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9zZWRfdW1icmVsbGE6Ijp7dW5pY29kZTpbIjFmMzAyIl0sZm5hbWU6IjFmMzAyIix1YzoiMWYzMDIiLGlzQ2Fub25pY2FsOiEwfSwiOm5pZ2h0X3dpdGhfc3RhcnM6Ijp7dW5pY29kZTpbIjFmMzAzIl0sZm5hbWU6IjFmMzAzIix1YzoiMWYzMDMiLGlzQ2Fub25pY2FsOiEwfSwiOnN1bnJpc2Vfb3Zlcl9tb3VudGFpbnM6Ijp7dW5pY29kZTpbIjFmMzA0Il0sZm5hbWU6IjFmMzA0Iix1YzoiMWYzMDQiLGlzQ2Fub25pY2FsOiEwfSwiOnN1bnJpc2U6Ijp7dW5pY29kZTpbIjFmMzA1Il0sZm5hbWU6IjFmMzA1Iix1YzoiMWYzMDUiLGlzQ2Fub25pY2FsOiEwfSwiOmNpdHlfZHVzazoiOnt1bmljb2RlOlsiMWYzMDYiXSxmbmFtZToiMWYzMDYiLHVjOiIxZjMwNiIsaXNDYW5vbmljYWw6ITB9LCI6Y2Fycm90OiI6e3VuaWNvZGU6WyIxZjk1NSJdLGZuYW1lOiIxZjk1NSIsdWM6IjFmOTU1Iixpc0Nhbm9uaWNhbDohMH0sIjpjaXR5X3N1bnNldDoiOnt1bmljb2RlOlsiMWYzMDciXSxmbmFtZToiMWYzMDciLHVjOiIxZjMwNyIsaXNDYW5vbmljYWw6ITB9LCI6Y2l0eV9zdW5yaXNlOiI6e3VuaWNvZGU6WyIxZjMwNyJdLGZuYW1lOiIxZjMwNyIsdWM6IjFmMzA3Iixpc0Nhbm9uaWNhbDohMX0sIjpyYWluYm93OiI6e3VuaWNvZGU6WyIxZjMwOCJdLGZuYW1lOiIxZjMwOCIsdWM6IjFmMzA4Iixpc0Nhbm9uaWNhbDohMH0sIjpwb3RhdG86Ijp7dW5pY29kZTpbIjFmOTU0Il0sZm5hbWU6IjFmOTU0Iix1YzoiMWY5NTQiLGlzQ2Fub25pY2FsOiEwfSwiOmJyaWRnZV9hdF9uaWdodDoiOnt1bmljb2RlOlsiMWYzMDkiXSxmbmFtZToiMWYzMDkiLHVjOiIxZjMwOSIsaXNDYW5vbmljYWw6ITB9LCI6b2NlYW46Ijp7dW5pY29kZTpbIjFmMzBhIl0sZm5hbWU6IjFmMzBhIix1YzoiMWYzMGEiLGlzQ2Fub25pY2FsOiEwfSwiOnZvbGNhbm86Ijp7dW5pY29kZTpbIjFmMzBiIl0sZm5hbWU6IjFmMzBiIix1YzoiMWYzMGIiLGlzQ2Fub25pY2FsOiEwfSwiOm1pbGt5X3dheToiOnt1bmljb2RlOlsiMWYzMGMiXSxmbmFtZToiMWYzMGMiLHVjOiIxZjMwYyIsaXNDYW5vbmljYWw6ITB9LCI6ZWFydGhfYXNpYToiOnt1bmljb2RlOlsiMWYzMGYiXSxmbmFtZToiMWYzMGYiLHVjOiIxZjMwZiIsaXNDYW5vbmljYWw6ITB9LCI6bmV3X21vb246Ijp7dW5pY29kZTpbIjFmMzExIl0sZm5hbWU6IjFmMzExIix1YzoiMWYzMTEiLGlzQ2Fub25pY2FsOiEwfSwiOmJhY29uOiI6e3VuaWNvZGU6WyIxZjk1MyJdLGZuYW1lOiIxZjk1MyIsdWM6IjFmOTUzIixpc0Nhbm9uaWNhbDohMH0sIjpmaXJzdF9xdWFydGVyX21vb246Ijp7dW5pY29kZTpbIjFmMzEzIl0sZm5hbWU6IjFmMzEzIix1YzoiMWYzMTMiLGlzQ2Fub25pY2FsOiEwfSwiOndheGluZ19naWJib3VzX21vb246Ijp7dW5pY29kZTpbIjFmMzE0Il0sZm5hbWU6IjFmMzE0Iix1YzoiMWYzMTQiLGlzQ2Fub25pY2FsOiEwfSwiOmZ1bGxfbW9vbjoiOnt1bmljb2RlOlsiMWYzMTUiXSxmbmFtZToiMWYzMTUiLHVjOiIxZjMxNSIsaXNDYW5vbmljYWw6ITB9LCI6Y3Jlc2NlbnRfbW9vbjoiOnt1bmljb2RlOlsiMWYzMTkiXSxmbmFtZToiMWYzMTkiLHVjOiIxZjMxOSIsaXNDYW5vbmljYWw6ITB9LCI6Zmlyc3RfcXVhcnRlcl9tb29uX3dpdGhfZmFjZToiOnt1bmljb2RlOlsiMWYzMWIiXSxmbmFtZToiMWYzMWIiLHVjOiIxZjMxYiIsaXNDYW5vbmljYWw6ITB9LCI6c3RhcjI6Ijp7dW5pY29kZTpbIjFmMzFmIl0sZm5hbWU6IjFmMzFmIix1YzoiMWYzMWYiLGlzQ2Fub25pY2FsOiEwfSwiOmN1Y3VtYmVyOiI6e3VuaWNvZGU6WyIxZjk1MiJdLGZuYW1lOiIxZjk1MiIsdWM6IjFmOTUyIixpc0Nhbm9uaWNhbDohMH0sIjpzdGFyczoiOnt1bmljb2RlOlsiMWYzMjAiXSxmbmFtZToiMWYzMjAiLHVjOiIxZjMyMCIsaXNDYW5vbmljYWw6ITB9LCI6Y2hlc3RudXQ6Ijp7dW5pY29kZTpbIjFmMzMwIl0sZm5hbWU6IjFmMzMwIix1YzoiMWYzMzAiLGlzQ2Fub25pY2FsOiEwfSwiOmF2b2NhZG86Ijp7dW5pY29kZTpbIjFmOTUxIl0sZm5hbWU6IjFmOTUxIix1YzoiMWY5NTEiLGlzQ2Fub25pY2FsOiEwfSwiOnNlZWRsaW5nOiI6e3VuaWNvZGU6WyIxZjMzMSJdLGZuYW1lOiIxZjMzMSIsdWM6IjFmMzMxIixpc0Nhbm9uaWNhbDohMH0sIjpwYWxtX3RyZWU6Ijp7dW5pY29kZTpbIjFmMzM0Il0sZm5hbWU6IjFmMzM0Iix1YzoiMWYzMzQiLGlzQ2Fub25pY2FsOiEwfSwiOmNhY3R1czoiOnt1bmljb2RlOlsiMWYzMzUiXSxmbmFtZToiMWYzMzUiLHVjOiIxZjMzNSIsaXNDYW5vbmljYWw6ITB9LCI6dHVsaXA6Ijp7dW5pY29kZTpbIjFmMzM3Il0sZm5hbWU6IjFmMzM3Iix1YzoiMWYzMzciLGlzQ2Fub25pY2FsOiEwfSwiOmNoZXJyeV9ibG9zc29tOiI6e3VuaWNvZGU6WyIxZjMzOCJdLGZuYW1lOiIxZjMzOCIsdWM6IjFmMzM4Iixpc0Nhbm9uaWNhbDohMH0sIjpyb3NlOiI6e3VuaWNvZGU6WyIxZjMzOSJdLGZuYW1lOiIxZjMzOSIsdWM6IjFmMzM5Iixpc0Nhbm9uaWNhbDohMH0sIjpoaWJpc2N1czoiOnt1bmljb2RlOlsiMWYzM2EiXSxmbmFtZToiMWYzM2EiLHVjOiIxZjMzYSIsaXNDYW5vbmljYWw6ITB9LCI6c3VuZmxvd2VyOiI6e3VuaWNvZGU6WyIxZjMzYiJdLGZuYW1lOiIxZjMzYiIsdWM6IjFmMzNiIixpc0Nhbm9uaWNhbDohMH0sIjpibG9zc29tOiI6e3VuaWNvZGU6WyIxZjMzYyJdLGZuYW1lOiIxZjMzYyIsdWM6IjFmMzNjIixpc0Nhbm9uaWNhbDohMH0sIjpjb3JuOiI6e3VuaWNvZGU6WyIxZjMzZCJdLGZuYW1lOiIxZjMzZCIsdWM6IjFmMzNkIixpc0Nhbm9uaWNhbDohMH0sIjpjcm9pc3NhbnQ6Ijp7dW5pY29kZTpbIjFmOTUwIl0sZm5hbWU6IjFmOTUwIix1YzoiMWY5NTAiLGlzQ2Fub25pY2FsOiEwfSwiOmVhcl9vZl9yaWNlOiI6e3VuaWNvZGU6WyIxZjMzZSJdLGZuYW1lOiIxZjMzZSIsdWM6IjFmMzNlIixpc0Nhbm9uaWNhbDohMH0sIjpoZXJiOiI6e3VuaWNvZGU6WyIxZjMzZiJdLGZuYW1lOiIxZjMzZiIsdWM6IjFmMzNmIixpc0Nhbm9uaWNhbDohMH0sIjpmb3VyX2xlYWZfY2xvdmVyOiI6e3VuaWNvZGU6WyIxZjM0MCJdLGZuYW1lOiIxZjM0MCIsdWM6IjFmMzQwIixpc0Nhbm9uaWNhbDohMH0sIjptYXBsZV9sZWFmOiI6e3VuaWNvZGU6WyIxZjM0MSJdLGZuYW1lOiIxZjM0MSIsdWM6IjFmMzQxIixpc0Nhbm9uaWNhbDohMH0sIjpmYWxsZW5fbGVhZjoiOnt1bmljb2RlOlsiMWYzNDIiXSxmbmFtZToiMWYzNDIiLHVjOiIxZjM0MiIsaXNDYW5vbmljYWw6ITB9LCI6bGVhdmVzOiI6e3VuaWNvZGU6WyIxZjM0MyJdLGZuYW1lOiIxZjM0MyIsdWM6IjFmMzQzIixpc0Nhbm9uaWNhbDohMH0sIjptdXNocm9vbToiOnt1bmljb2RlOlsiMWYzNDQiXSxmbmFtZToiMWYzNDQiLHVjOiIxZjM0NCIsaXNDYW5vbmljYWw6ITB9LCI6dG9tYXRvOiI6e3VuaWNvZGU6WyIxZjM0NSJdLGZuYW1lOiIxZjM0NSIsdWM6IjFmMzQ1Iixpc0Nhbm9uaWNhbDohMH0sIjplZ2dwbGFudDoiOnt1bmljb2RlOlsiMWYzNDYiXSxmbmFtZToiMWYzNDYiLHVjOiIxZjM0NiIsaXNDYW5vbmljYWw6ITB9LCI6Z3JhcGVzOiI6e3VuaWNvZGU6WyIxZjM0NyJdLGZuYW1lOiIxZjM0NyIsdWM6IjFmMzQ3Iixpc0Nhbm9uaWNhbDohMH0sIjptZWxvbjoiOnt1bmljb2RlOlsiMWYzNDgiXSxmbmFtZToiMWYzNDgiLHVjOiIxZjM0OCIsaXNDYW5vbmljYWw6ITB9LCI6d2F0ZXJtZWxvbjoiOnt1bmljb2RlOlsiMWYzNDkiXSxmbmFtZToiMWYzNDkiLHVjOiIxZjM0OSIsaXNDYW5vbmljYWw6ITB9LCI6dGFuZ2VyaW5lOiI6e3VuaWNvZGU6WyIxZjM0YSJdLGZuYW1lOiIxZjM0YSIsdWM6IjFmMzRhIixpc0Nhbm9uaWNhbDohMH0sIjp3aWx0ZWRfcm9zZToiOnt1bmljb2RlOlsiMWY5NDAiXSxmbmFtZToiMWY5NDAiLHVjOiIxZjk0MCIsaXNDYW5vbmljYWw6ITB9LCI6d2lsdGVkX2Zsb3dlcjoiOnt1bmljb2RlOlsiMWY5NDAiXSxmbmFtZToiMWY5NDAiLHVjOiIxZjk0MCIsaXNDYW5vbmljYWw6ITF9LCI6YmFuYW5hOiI6e3VuaWNvZGU6WyIxZjM0YyJdLGZuYW1lOiIxZjM0YyIsdWM6IjFmMzRjIixpc0Nhbm9uaWNhbDohMH0sIjpwaW5lYXBwbGU6Ijp7dW5pY29kZTpbIjFmMzRkIl0sZm5hbWU6IjFmMzRkIix1YzoiMWYzNGQiLGlzQ2Fub25pY2FsOiEwfSwiOmFwcGxlOiI6e3VuaWNvZGU6WyIxZjM0ZSJdLGZuYW1lOiIxZjM0ZSIsdWM6IjFmMzRlIixpc0Nhbm9uaWNhbDohMH0sIjpncmVlbl9hcHBsZToiOnt1bmljb2RlOlsiMWYzNGYiXSxmbmFtZToiMWYzNGYiLHVjOiIxZjM0ZiIsaXNDYW5vbmljYWw6ITB9LCI6cGVhY2g6Ijp7dW5pY29kZTpbIjFmMzUxIl0sZm5hbWU6IjFmMzUxIix1YzoiMWYzNTEiLGlzQ2Fub25pY2FsOiEwfSwiOmNoZXJyaWVzOiI6e3VuaWNvZGU6WyIxZjM1MiJdLGZuYW1lOiIxZjM1MiIsdWM6IjFmMzUyIixpc0Nhbm9uaWNhbDohMH0sIjpzdHJhd2JlcnJ5OiI6e3VuaWNvZGU6WyIxZjM1MyJdLGZuYW1lOiIxZjM1MyIsdWM6IjFmMzUzIixpc0Nhbm9uaWNhbDohMH0sIjpyaGlubzoiOnt1bmljb2RlOlsiMWY5OGYiXSxmbmFtZToiMWY5OGYiLHVjOiIxZjk4ZiIsaXNDYW5vbmljYWw6ITB9LCI6cmhpbm9jZXJvczoiOnt1bmljb2RlOlsiMWY5OGYiXSxmbmFtZToiMWY5OGYiLHVjOiIxZjk4ZiIsaXNDYW5vbmljYWw6ITF9LCI6aGFtYnVyZ2VyOiI6e3VuaWNvZGU6WyIxZjM1NCJdLGZuYW1lOiIxZjM1NCIsdWM6IjFmMzU0Iixpc0Nhbm9uaWNhbDohMH0sIjpwaXp6YToiOnt1bmljb2RlOlsiMWYzNTUiXSxmbmFtZToiMWYzNTUiLHVjOiIxZjM1NSIsaXNDYW5vbmljYWw6ITB9LCI6bWVhdF9vbl9ib25lOiI6e3VuaWNvZGU6WyIxZjM1NiJdLGZuYW1lOiIxZjM1NiIsdWM6IjFmMzU2Iixpc0Nhbm9uaWNhbDohMH0sIjpsaXphcmQ6Ijp7dW5pY29kZTpbIjFmOThlIl0sZm5hbWU6IjFmOThlIix1YzoiMWY5OGUiLGlzQ2Fub25pY2FsOiEwfSwiOnBvdWx0cnlfbGVnOiI6e3VuaWNvZGU6WyIxZjM1NyJdLGZuYW1lOiIxZjM1NyIsdWM6IjFmMzU3Iixpc0Nhbm9uaWNhbDohMH0sIjpyaWNlX2NyYWNrZXI6Ijp7dW5pY29kZTpbIjFmMzU4Il0sZm5hbWU6IjFmMzU4Iix1YzoiMWYzNTgiLGlzQ2Fub25pY2FsOiEwfSwiOnJpY2VfYmFsbDoiOnt1bmljb2RlOlsiMWYzNTkiXSxmbmFtZToiMWYzNTkiLHVjOiIxZjM1OSIsaXNDYW5vbmljYWw6ITB9LCI6Z29yaWxsYToiOnt1bmljb2RlOlsiMWY5OGQiXSxmbmFtZToiMWY5OGQiLHVjOiIxZjk4ZCIsaXNDYW5vbmljYWw6ITB9LCI6cmljZToiOnt1bmljb2RlOlsiMWYzNWEiXSxmbmFtZToiMWYzNWEiLHVjOiIxZjM1YSIsaXNDYW5vbmljYWw6ITB9LCI6Y3Vycnk6Ijp7dW5pY29kZTpbIjFmMzViIl0sZm5hbWU6IjFmMzViIix1YzoiMWYzNWIiLGlzQ2Fub25pY2FsOiEwfSwiOmRlZXI6Ijp7dW5pY29kZTpbIjFmOThjIl0sZm5hbWU6IjFmOThjIix1YzoiMWY5OGMiLGlzQ2Fub25pY2FsOiEwfSwiOnJhbWVuOiI6e3VuaWNvZGU6WyIxZjM1YyJdLGZuYW1lOiIxZjM1YyIsdWM6IjFmMzVjIixpc0Nhbm9uaWNhbDohMH0sIjpzcGFnaGV0dGk6Ijp7dW5pY29kZTpbIjFmMzVkIl0sZm5hbWU6IjFmMzVkIix1YzoiMWYzNWQiLGlzQ2Fub25pY2FsOiEwfSwiOmJyZWFkOiI6e3VuaWNvZGU6WyIxZjM1ZSJdLGZuYW1lOiIxZjM1ZSIsdWM6IjFmMzVlIixpc0Nhbm9uaWNhbDohMH0sIjpmcmllczoiOnt1bmljb2RlOlsiMWYzNWYiXSxmbmFtZToiMWYzNWYiLHVjOiIxZjM1ZiIsaXNDYW5vbmljYWw6ITB9LCI6YnV0dGVyZmx5OiI6e3VuaWNvZGU6WyIxZjk4YiJdLGZuYW1lOiIxZjk4YiIsdWM6IjFmOThiIixpc0Nhbm9uaWNhbDohMH0sIjpzd2VldF9wb3RhdG86Ijp7dW5pY29kZTpbIjFmMzYwIl0sZm5hbWU6IjFmMzYwIix1YzoiMWYzNjAiLGlzQ2Fub25pY2FsOiEwfSwiOmRhbmdvOiI6e3VuaWNvZGU6WyIxZjM2MSJdLGZuYW1lOiIxZjM2MSIsdWM6IjFmMzYxIixpc0Nhbm9uaWNhbDohMH0sIjpmb3g6Ijp7dW5pY29kZTpbIjFmOThhIl0sZm5hbWU6IjFmOThhIix1YzoiMWY5OGEiLGlzQ2Fub25pY2FsOiEwfSwiOmZveF9mYWNlOiI6e3VuaWNvZGU6WyIxZjk4YSJdLGZuYW1lOiIxZjk4YSIsdWM6IjFmOThhIixpc0Nhbm9uaWNhbDohMX0sIjpvZGVuOiI6e3VuaWNvZGU6WyIxZjM2MiJdLGZuYW1lOiIxZjM2MiIsdWM6IjFmMzYyIixpc0Nhbm9uaWNhbDohMH0sIjpzdXNoaToiOnt1bmljb2RlOlsiMWYzNjMiXSxmbmFtZToiMWYzNjMiLHVjOiIxZjM2MyIsaXNDYW5vbmljYWw6ITB9LCI6b3dsOiI6e3VuaWNvZGU6WyIxZjk4OSJdLGZuYW1lOiIxZjk4OSIsdWM6IjFmOTg5Iixpc0Nhbm9uaWNhbDohMH0sIjpmcmllZF9zaHJpbXA6Ijp7dW5pY29kZTpbIjFmMzY0Il0sZm5hbWU6IjFmMzY0Iix1YzoiMWYzNjQiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc2hfY2FrZToiOnt1bmljb2RlOlsiMWYzNjUiXSxmbmFtZToiMWYzNjUiLHVjOiIxZjM2NSIsaXNDYW5vbmljYWw6ITB9LCI6c2hhcms6Ijp7dW5pY29kZTpbIjFmOTg4Il0sZm5hbWU6IjFmOTg4Iix1YzoiMWY5ODgiLGlzQ2Fub25pY2FsOiEwfSwiOmljZWNyZWFtOiI6e3VuaWNvZGU6WyIxZjM2NiJdLGZuYW1lOiIxZjM2NiIsdWM6IjFmMzY2Iixpc0Nhbm9uaWNhbDohMH0sIjpiYXQ6Ijp7dW5pY29kZTpbIjFmOTg3Il0sZm5hbWU6IjFmOTg3Iix1YzoiMWY5ODciLGlzQ2Fub25pY2FsOiEwfSwiOnNoYXZlZF9pY2U6Ijp7dW5pY29kZTpbIjFmMzY3Il0sZm5hbWU6IjFmMzY3Iix1YzoiMWYzNjciLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl94OiI6e3VuaWNvZGU6WyIxZjFmZCJdLGZuYW1lOiIxZjFmZCIsdWM6IjFmMWZkIixpc0Nhbm9uaWNhbDohMH0sIjppY2VfY3JlYW06Ijp7dW5pY29kZTpbIjFmMzY4Il0sZm5hbWU6IjFmMzY4Iix1YzoiMWYzNjgiLGlzQ2Fub25pY2FsOiEwfSwiOmR1Y2s6Ijp7dW5pY29kZTpbIjFmOTg2Il0sZm5hbWU6IjFmOTg2Iix1YzoiMWY5ODYiLGlzQ2Fub25pY2FsOiEwfSwiOmRvdWdobnV0OiI6e3VuaWNvZGU6WyIxZjM2OSJdLGZuYW1lOiIxZjM2OSIsdWM6IjFmMzY5Iixpc0Nhbm9uaWNhbDohMH0sIjplYWdsZToiOnt1bmljb2RlOlsiMWY5ODUiXSxmbmFtZToiMWY5ODUiLHVjOiIxZjk4NSIsaXNDYW5vbmljYWw6ITB9LCI6Y29va2llOiI6e3VuaWNvZGU6WyIxZjM2YSJdLGZuYW1lOiIxZjM2YSIsdWM6IjFmMzZhIixpc0Nhbm9uaWNhbDohMH0sIjpibGFja19oZWFydDoiOnt1bmljb2RlOlsiMWY1YTQiXSxmbmFtZToiMWY1YTQiLHVjOiIxZjVhNCIsaXNDYW5vbmljYWw6ITB9LCI6Y2hvY29sYXRlX2JhcjoiOnt1bmljb2RlOlsiMWYzNmIiXSxmbmFtZToiMWYzNmIiLHVjOiIxZjM2YiIsaXNDYW5vbmljYWw6ITB9LCI6Y2FuZHk6Ijp7dW5pY29kZTpbIjFmMzZjIl0sZm5hbWU6IjFmMzZjIix1YzoiMWYzNmMiLGlzQ2Fub25pY2FsOiEwfSwiOmxvbGxpcG9wOiI6e3VuaWNvZGU6WyIxZjM2ZCJdLGZuYW1lOiIxZjM2ZCIsdWM6IjFmMzZkIixpc0Nhbm9uaWNhbDohMH0sIjpjdXN0YXJkOiI6e3VuaWNvZGU6WyIxZjM2ZSJdLGZuYW1lOiIxZjM2ZSIsdWM6IjFmMzZlIixpc0Nhbm9uaWNhbDohMH0sIjpwdWRkaW5nOiI6e3VuaWNvZGU6WyIxZjM2ZSJdLGZuYW1lOiIxZjM2ZSIsdWM6IjFmMzZlIixpc0Nhbm9uaWNhbDohMX0sIjpmbGFuOiI6e3VuaWNvZGU6WyIxZjM2ZSJdLGZuYW1lOiIxZjM2ZSIsdWM6IjFmMzZlIixpc0Nhbm9uaWNhbDohMX0sIjpob25leV9wb3Q6Ijp7dW5pY29kZTpbIjFmMzZmIl0sZm5hbWU6IjFmMzZmIix1YzoiMWYzNmYiLGlzQ2Fub25pY2FsOiEwfSwiOmZpbmdlcnNfY3Jvc3NlZDoiOnt1bmljb2RlOlsiMWY5MWUiXSxmbmFtZToiMWY5MWUiLHVjOiIxZjkxZSIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZF93aXRoX2luZGV4X2FuZF9taWRkbGVfZmluZ2VyX2Nyb3NzZWQ6Ijp7dW5pY29kZTpbIjFmOTFlIl0sZm5hbWU6IjFmOTFlIix1YzoiMWY5MWUiLGlzQ2Fub25pY2FsOiExfSwiOmNha2U6Ijp7dW5pY29kZTpbIjFmMzcwIl0sZm5hbWU6IjFmMzcwIix1YzoiMWYzNzAiLGlzQ2Fub25pY2FsOiEwfSwiOmJlbnRvOiI6e3VuaWNvZGU6WyIxZjM3MSJdLGZuYW1lOiIxZjM3MSIsdWM6IjFmMzcxIixpc0Nhbm9uaWNhbDohMH0sIjpzdGV3OiI6e3VuaWNvZGU6WyIxZjM3MiJdLGZuYW1lOiIxZjM3MiIsdWM6IjFmMzcyIixpc0Nhbm9uaWNhbDohMH0sIjpoYW5kc2hha2U6Ijp7dW5pY29kZTpbIjFmOTFkIl0sZm5hbWU6IjFmOTFkIix1YzoiMWY5MWQiLGlzQ2Fub25pY2FsOiEwfSwiOnNoYWtpbmdfaGFuZHM6Ijp7dW5pY29kZTpbIjFmOTFkIl0sZm5hbWU6IjFmOTFkIix1YzoiMWY5MWQiLGlzQ2Fub25pY2FsOiExfSwiOmNvb2tpbmc6Ijp7dW5pY29kZTpbIjFmMzczIl0sZm5hbWU6IjFmMzczIix1YzoiMWYzNzMiLGlzQ2Fub25pY2FsOiEwfSwiOmZvcmtfYW5kX2tuaWZlOiI6e3VuaWNvZGU6WyIxZjM3NCJdLGZuYW1lOiIxZjM3NCIsdWM6IjFmMzc0Iixpc0Nhbm9uaWNhbDohMH0sIjp0ZWE6Ijp7dW5pY29kZTpbIjFmMzc1Il0sZm5hbWU6IjFmMzc1Iix1YzoiMWYzNzUiLGlzQ2Fub25pY2FsOiEwfSwiOnNha2U6Ijp7dW5pY29kZTpbIjFmMzc2Il0sZm5hbWU6IjFmMzc2Iix1YzoiMWYzNzYiLGlzQ2Fub25pY2FsOiEwfSwiOndpbmVfZ2xhc3M6Ijp7dW5pY29kZTpbIjFmMzc3Il0sZm5hbWU6IjFmMzc3Iix1YzoiMWYzNzciLGlzQ2Fub25pY2FsOiEwfSwiOmNvY2t0YWlsOiI6e3VuaWNvZGU6WyIxZjM3OCJdLGZuYW1lOiIxZjM3OCIsdWM6IjFmMzc4Iixpc0Nhbm9uaWNhbDohMH0sIjp0cm9waWNhbF9kcmluazoiOnt1bmljb2RlOlsiMWYzNzkiXSxmbmFtZToiMWYzNzkiLHVjOiIxZjM3OSIsaXNDYW5vbmljYWw6ITB9LCI6YmVlcjoiOnt1bmljb2RlOlsiMWYzN2EiXSxmbmFtZToiMWYzN2EiLHVjOiIxZjM3YSIsaXNDYW5vbmljYWw6ITB9LCI6YmVlcnM6Ijp7dW5pY29kZTpbIjFmMzdiIl0sZm5hbWU6IjFmMzdiIix1YzoiMWYzN2IiLGlzQ2Fub25pY2FsOiEwfSwiOnJpYmJvbjoiOnt1bmljb2RlOlsiMWYzODAiXSxmbmFtZToiMWYzODAiLHVjOiIxZjM4MCIsaXNDYW5vbmljYWw6ITB9LCI6Z2lmdDoiOnt1bmljb2RlOlsiMWYzODEiXSxmbmFtZToiMWYzODEiLHVjOiIxZjM4MSIsaXNDYW5vbmljYWw6ITB9LCI6YmlydGhkYXk6Ijp7dW5pY29kZTpbIjFmMzgyIl0sZm5hbWU6IjFmMzgyIix1YzoiMWYzODIiLGlzQ2Fub25pY2FsOiEwfSwiOmphY2tfb19sYW50ZXJuOiI6e3VuaWNvZGU6WyIxZjM4MyJdLGZuYW1lOiIxZjM4MyIsdWM6IjFmMzgzIixpc0Nhbm9uaWNhbDohMH0sIjpsZWZ0X2ZhY2luZ19maXN0OiI6e3VuaWNvZGU6WyIxZjkxYiJdLGZuYW1lOiIxZjkxYiIsdWM6IjFmOTFiIixpc0Nhbm9uaWNhbDohMH0sIjpsZWZ0X2Zpc3Q6Ijp7dW5pY29kZTpbIjFmOTFiIl0sZm5hbWU6IjFmOTFiIix1YzoiMWY5MWIiLGlzQ2Fub25pY2FsOiExfSwiOnJpZ2h0X2ZhY2luZ19maXN0OiI6e3VuaWNvZGU6WyIxZjkxYyJdLGZuYW1lOiIxZjkxYyIsdWM6IjFmOTFjIixpc0Nhbm9uaWNhbDohMH0sIjpyaWdodF9maXN0OiI6e3VuaWNvZGU6WyIxZjkxYyJdLGZuYW1lOiIxZjkxYyIsdWM6IjFmOTFjIixpc0Nhbm9uaWNhbDohMX0sIjpjaHJpc3RtYXNfdHJlZToiOnt1bmljb2RlOlsiMWYzODQiXSxmbmFtZToiMWYzODQiLHVjOiIxZjM4NCIsaXNDYW5vbmljYWw6ITB9LCI6c2FudGE6Ijp7dW5pY29kZTpbIjFmMzg1Il0sZm5hbWU6IjFmMzg1Iix1YzoiMWYzODUiLGlzQ2Fub25pY2FsOiEwfSwiOmZpcmV3b3JrczoiOnt1bmljb2RlOlsiMWYzODYiXSxmbmFtZToiMWYzODYiLHVjOiIxZjM4NiIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2VkX2JhY2tfb2ZfaGFuZDoiOnt1bmljb2RlOlsiMWY5MWEiXSxmbmFtZToiMWY5MWEiLHVjOiIxZjkxYSIsaXNDYW5vbmljYWw6ITB9LCI6YmFja19vZl9oYW5kOiI6e3VuaWNvZGU6WyIxZjkxYSJdLGZuYW1lOiIxZjkxYSIsdWM6IjFmOTFhIixpc0Nhbm9uaWNhbDohMX0sIjpzcGFya2xlcjoiOnt1bmljb2RlOlsiMWYzODciXSxmbmFtZToiMWYzODciLHVjOiIxZjM4NyIsaXNDYW5vbmljYWw6ITB9LCI6YmFsbG9vbjoiOnt1bmljb2RlOlsiMWYzODgiXSxmbmFtZToiMWYzODgiLHVjOiIxZjM4OCIsaXNDYW5vbmljYWw6ITB9LCI6dGFkYToiOnt1bmljb2RlOlsiMWYzODkiXSxmbmFtZToiMWYzODkiLHVjOiIxZjM4OSIsaXNDYW5vbmljYWw6ITB9LCI6Y29uZmV0dGlfYmFsbDoiOnt1bmljb2RlOlsiMWYzOGEiXSxmbmFtZToiMWYzOGEiLHVjOiIxZjM4YSIsaXNDYW5vbmljYWw6ITB9LCI6dGFuYWJhdGFfdHJlZToiOnt1bmljb2RlOlsiMWYzOGIiXSxmbmFtZToiMWYzOGIiLHVjOiIxZjM4YiIsaXNDYW5vbmljYWw6ITB9LCI6Y3Jvc3NlZF9mbGFnczoiOnt1bmljb2RlOlsiMWYzOGMiXSxmbmFtZToiMWYzOGMiLHVjOiIxZjM4YyIsaXNDYW5vbmljYWw6ITB9LCI6Y2FsbF9tZToiOnt1bmljb2RlOlsiMWY5MTkiXSxmbmFtZToiMWY5MTkiLHVjOiIxZjkxOSIsaXNDYW5vbmljYWw6ITB9LCI6Y2FsbF9tZV9oYW5kOiI6e3VuaWNvZGU6WyIxZjkxOSJdLGZuYW1lOiIxZjkxOSIsdWM6IjFmOTE5Iixpc0Nhbm9uaWNhbDohMX0sIjpiYW1ib286Ijp7dW5pY29kZTpbIjFmMzhkIl0sZm5hbWU6IjFmMzhkIix1YzoiMWYzOGQiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl9kYW5jaW5nOiI6e3VuaWNvZGU6WyIxZjU3YSJdLGZuYW1lOiIxZjU3YSIsdWM6IjFmNTdhIixpc0Nhbm9uaWNhbDohMH0sIjptYWxlX2RhbmNlcjoiOnt1bmljb2RlOlsiMWY1N2EiXSxmbmFtZToiMWY1N2EiLHVjOiIxZjU3YSIsaXNDYW5vbmljYWw6ITF9LCI6ZG9sbHM6Ijp7dW5pY29kZTpbIjFmMzhlIl0sZm5hbWU6IjFmMzhlIix1YzoiMWYzOGUiLGlzQ2Fub25pY2FsOiEwfSwiOnNlbGZpZToiOnt1bmljb2RlOlsiMWY5MzMiXSxmbmFtZToiMWY5MzMiLHVjOiIxZjkzMyIsaXNDYW5vbmljYWw6ITB9LCI6ZmxhZ3M6Ijp7dW5pY29kZTpbIjFmMzhmIl0sZm5hbWU6IjFmMzhmIix1YzoiMWYzOGYiLGlzQ2Fub25pY2FsOiEwfSwiOnByZWduYW50X3dvbWFuOiI6e3VuaWNvZGU6WyIxZjkzMCJdLGZuYW1lOiIxZjkzMCIsdWM6IjFmOTMwIixpc0Nhbm9uaWNhbDohMH0sIjpleHBlY3Rpbmdfd29tYW46Ijp7dW5pY29kZTpbIjFmOTMwIl0sZm5hbWU6IjFmOTMwIix1YzoiMWY5MzAiLGlzQ2Fub25pY2FsOiExfSwiOndpbmRfY2hpbWU6Ijp7dW5pY29kZTpbIjFmMzkwIl0sZm5hbWU6IjFmMzkwIix1YzoiMWYzOTAiLGlzQ2Fub25pY2FsOiEwfSwiOmZhY2VfcGFsbToiOnt1bmljb2RlOlsiMWY5MjYiXSxmbmFtZToiMWY5MjYiLHVjOiIxZjkyNiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFjZXBhbG06Ijp7dW5pY29kZTpbIjFmOTI2Il0sZm5hbWU6IjFmOTI2Iix1YzoiMWY5MjYiLGlzQ2Fub25pY2FsOiExfSwiOnNocnVnOiI6e3VuaWNvZGU6WyIxZjkzNyJdLGZuYW1lOiIxZjkzNyIsdWM6IjFmOTM3Iixpc0Nhbm9uaWNhbDohMH0sIjpyaWNlX3NjZW5lOiI6e3VuaWNvZGU6WyIxZjM5MSJdLGZuYW1lOiIxZjM5MSIsdWM6IjFmMzkxIixpc0Nhbm9uaWNhbDohMH0sIjpzY2hvb2xfc2F0Y2hlbDoiOnt1bmljb2RlOlsiMWYzOTIiXSxmbmFtZToiMWYzOTIiLHVjOiIxZjM5MiIsaXNDYW5vbmljYWw6ITB9LCI6bW9ydGFyX2JvYXJkOiI6e3VuaWNvZGU6WyIxZjM5MyJdLGZuYW1lOiIxZjM5MyIsdWM6IjFmMzkzIixpc0Nhbm9uaWNhbDohMH0sIjpjYXJvdXNlbF9ob3JzZToiOnt1bmljb2RlOlsiMWYzYTAiXSxmbmFtZToiMWYzYTAiLHVjOiIxZjNhMCIsaXNDYW5vbmljYWw6ITB9LCI6ZmVycmlzX3doZWVsOiI6e3VuaWNvZGU6WyIxZjNhMSJdLGZuYW1lOiIxZjNhMSIsdWM6IjFmM2ExIixpc0Nhbm9uaWNhbDohMH0sIjpyb2xsZXJfY29hc3RlcjoiOnt1bmljb2RlOlsiMWYzYTIiXSxmbmFtZToiMWYzYTIiLHVjOiIxZjNhMiIsaXNDYW5vbmljYWw6ITB9LCI6ZmlzaGluZ19wb2xlX2FuZF9maXNoOiI6e3VuaWNvZGU6WyIxZjNhMyJdLGZuYW1lOiIxZjNhMyIsdWM6IjFmM2EzIixpc0Nhbm9uaWNhbDohMH0sIjptaWNyb3Bob25lOiI6e3VuaWNvZGU6WyIxZjNhNCJdLGZuYW1lOiIxZjNhNCIsdWM6IjFmM2E0Iixpc0Nhbm9uaWNhbDohMH0sIjptb3ZpZV9jYW1lcmE6Ijp7dW5pY29kZTpbIjFmM2E1Il0sZm5hbWU6IjFmM2E1Iix1YzoiMWYzYTUiLGlzQ2Fub25pY2FsOiEwfSwiOmNpbmVtYToiOnt1bmljb2RlOlsiMWYzYTYiXSxmbmFtZToiMWYzYTYiLHVjOiIxZjNhNiIsaXNDYW5vbmljYWw6ITB9LCI6aGVhZHBob25lczoiOnt1bmljb2RlOlsiMWYzYTciXSxmbmFtZToiMWYzYTciLHVjOiIxZjNhNyIsaXNDYW5vbmljYWw6ITB9LCI6bXJzX2NsYXVzOiI6e3VuaWNvZGU6WyIxZjkzNiJdLGZuYW1lOiIxZjkzNiIsdWM6IjFmOTM2Iixpc0Nhbm9uaWNhbDohMH0sIjptb3RoZXJfY2hyaXN0bWFzOiI6e3VuaWNvZGU6WyIxZjkzNiJdLGZuYW1lOiIxZjkzNiIsdWM6IjFmOTM2Iixpc0Nhbm9uaWNhbDohMX0sIjphcnQ6Ijp7dW5pY29kZTpbIjFmM2E4Il0sZm5hbWU6IjFmM2E4Iix1YzoiMWYzYTgiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl9pbl90dXhlZG86Ijp7dW5pY29kZTpbIjFmOTM1Il0sZm5hbWU6IjFmOTM1Iix1YzoiMWY5MzUiLGlzQ2Fub25pY2FsOiEwfSwiOnRvcGhhdDoiOnt1bmljb2RlOlsiMWYzYTkiXSxmbmFtZToiMWYzYTkiLHVjOiIxZjNhOSIsaXNDYW5vbmljYWw6ITB9LCI6Y2lyY3VzX3RlbnQ6Ijp7dW5pY29kZTpbIjFmM2FhIl0sZm5hbWU6IjFmM2FhIix1YzoiMWYzYWEiLGlzQ2Fub25pY2FsOiEwfSwiOnByaW5jZToiOnt1bmljb2RlOlsiMWY5MzQiXSxmbmFtZToiMWY5MzQiLHVjOiIxZjkzNCIsaXNDYW5vbmljYWw6ITB9LCI6dGlja2V0OiI6e3VuaWNvZGU6WyIxZjNhYiJdLGZuYW1lOiIxZjNhYiIsdWM6IjFmM2FiIixpc0Nhbm9uaWNhbDohMH0sIjpjbGFwcGVyOiI6e3VuaWNvZGU6WyIxZjNhYyJdLGZuYW1lOiIxZjNhYyIsdWM6IjFmM2FjIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJmb3JtaW5nX2FydHM6Ijp7dW5pY29kZTpbIjFmM2FkIl0sZm5hbWU6IjFmM2FkIix1YzoiMWYzYWQiLGlzQ2Fub25pY2FsOiEwfSwiOnNuZWV6aW5nX2ZhY2U6Ijp7dW5pY29kZTpbIjFmOTI3Il0sZm5hbWU6IjFmOTI3Iix1YzoiMWY5MjciLGlzQ2Fub25pY2FsOiEwfSwiOnNuZWV6ZToiOnt1bmljb2RlOlsiMWY5MjciXSxmbmFtZToiMWY5MjciLHVjOiIxZjkyNyIsaXNDYW5vbmljYWw6ITF9LCI6dmlkZW9fZ2FtZToiOnt1bmljb2RlOlsiMWYzYWUiXSxmbmFtZToiMWYzYWUiLHVjOiIxZjNhZSIsaXNDYW5vbmljYWw6ITB9LCI6ZGFydDoiOnt1bmljb2RlOlsiMWYzYWYiXSxmbmFtZToiMWYzYWYiLHVjOiIxZjNhZiIsaXNDYW5vbmljYWw6ITB9LCI6c2xvdF9tYWNoaW5lOiI6e3VuaWNvZGU6WyIxZjNiMCJdLGZuYW1lOiIxZjNiMCIsdWM6IjFmM2IwIixpc0Nhbm9uaWNhbDohMH0sIjo4YmFsbDoiOnt1bmljb2RlOlsiMWYzYjEiXSxmbmFtZToiMWYzYjEiLHVjOiIxZjNiMSIsaXNDYW5vbmljYWw6ITB9LCI6Z2FtZV9kaWU6Ijp7dW5pY29kZTpbIjFmM2IyIl0sZm5hbWU6IjFmM2IyIix1YzoiMWYzYjIiLGlzQ2Fub25pY2FsOiEwfSwiOmJvd2xpbmc6Ijp7dW5pY29kZTpbIjFmM2IzIl0sZm5hbWU6IjFmM2IzIix1YzoiMWYzYjMiLGlzQ2Fub25pY2FsOiEwfSwiOmZsb3dlcl9wbGF5aW5nX2NhcmRzOiI6e3VuaWNvZGU6WyIxZjNiNCJdLGZuYW1lOiIxZjNiNCIsdWM6IjFmM2I0Iixpc0Nhbm9uaWNhbDohMH0sIjpseWluZ19mYWNlOiI6e3VuaWNvZGU6WyIxZjkyNSJdLGZuYW1lOiIxZjkyNSIsdWM6IjFmOTI1Iixpc0Nhbm9uaWNhbDohMH0sIjpsaWFyOiI6e3VuaWNvZGU6WyIxZjkyNSJdLGZuYW1lOiIxZjkyNSIsdWM6IjFmOTI1Iixpc0Nhbm9uaWNhbDohMX0sIjptdXNpY2FsX25vdGU6Ijp7dW5pY29kZTpbIjFmM2I1Il0sZm5hbWU6IjFmM2I1Iix1YzoiMWYzYjUiLGlzQ2Fub25pY2FsOiEwfSwiOm5vdGVzOiI6e3VuaWNvZGU6WyIxZjNiNiJdLGZuYW1lOiIxZjNiNiIsdWM6IjFmM2I2Iixpc0Nhbm9uaWNhbDohMH0sIjpzYXhvcGhvbmU6Ijp7dW5pY29kZTpbIjFmM2I3Il0sZm5hbWU6IjFmM2I3Iix1YzoiMWYzYjciLGlzQ2Fub25pY2FsOiEwfSwiOmRyb29saW5nX2ZhY2U6Ijp7dW5pY29kZTpbIjFmOTI0Il0sZm5hbWU6IjFmOTI0Iix1YzoiMWY5MjQiLGlzQ2Fub25pY2FsOiEwfSwiOmRyb29sOiI6e3VuaWNvZGU6WyIxZjkyNCJdLGZuYW1lOiIxZjkyNCIsdWM6IjFmOTI0Iixpc0Nhbm9uaWNhbDohMX0sIjpndWl0YXI6Ijp7dW5pY29kZTpbIjFmM2I4Il0sZm5hbWU6IjFmM2I4Iix1YzoiMWYzYjgiLGlzQ2Fub25pY2FsOiEwfSwiOm11c2ljYWxfa2V5Ym9hcmQ6Ijp7dW5pY29kZTpbIjFmM2I5Il0sZm5hbWU6IjFmM2I5Iix1YzoiMWYzYjkiLGlzQ2Fub25pY2FsOiEwfSwiOnRydW1wZXQ6Ijp7dW5pY29kZTpbIjFmM2JhIl0sZm5hbWU6IjFmM2JhIix1YzoiMWYzYmEiLGlzQ2Fub25pY2FsOiEwfSwiOnJvZmw6Ijp7dW5pY29kZTpbIjFmOTIzIl0sZm5hbWU6IjFmOTIzIix1YzoiMWY5MjMiLGlzQ2Fub25pY2FsOiEwfSwiOnJvbGxpbmdfb25fdGhlX2Zsb29yX2xhdWdoaW5nOiI6e3VuaWNvZGU6WyIxZjkyMyJdLGZuYW1lOiIxZjkyMyIsdWM6IjFmOTIzIixpc0Nhbm9uaWNhbDohMX0sIjp2aW9saW46Ijp7dW5pY29kZTpbIjFmM2JiIl0sZm5hbWU6IjFmM2JiIix1YzoiMWYzYmIiLGlzQ2Fub25pY2FsOiEwfSwiOm11c2ljYWxfc2NvcmU6Ijp7dW5pY29kZTpbIjFmM2JjIl0sZm5hbWU6IjFmM2JjIix1YzoiMWYzYmMiLGlzQ2Fub25pY2FsOiEwfSwiOnJ1bm5pbmdfc2hpcnRfd2l0aF9zYXNoOiI6e3VuaWNvZGU6WyIxZjNiZCJdLGZuYW1lOiIxZjNiZCIsdWM6IjFmM2JkIixpc0Nhbm9uaWNhbDohMH0sIjpuYXVzZWF0ZWRfZmFjZToiOnt1bmljb2RlOlsiMWY5MjIiXSxmbmFtZToiMWY5MjIiLHVjOiIxZjkyMiIsaXNDYW5vbmljYWw6ITB9LCI6c2ljazoiOnt1bmljb2RlOlsiMWY5MjIiXSxmbmFtZToiMWY5MjIiLHVjOiIxZjkyMiIsaXNDYW5vbmljYWw6ITF9LCI6dGVubmlzOiI6e3VuaWNvZGU6WyIxZjNiZSJdLGZuYW1lOiIxZjNiZSIsdWM6IjFmM2JlIixpc0Nhbm9uaWNhbDohMH0sIjpza2k6Ijp7dW5pY29kZTpbIjFmM2JmIl0sZm5hbWU6IjFmM2JmIix1YzoiMWYzYmYiLGlzQ2Fub25pY2FsOiEwfSwiOmJhc2tldGJhbGw6Ijp7dW5pY29kZTpbIjFmM2MwIl0sZm5hbWU6IjFmM2MwIix1YzoiMWYzYzAiLGlzQ2Fub25pY2FsOiEwfSwiOmNoZWNrZXJlZF9mbGFnOiI6e3VuaWNvZGU6WyIxZjNjMSJdLGZuYW1lOiIxZjNjMSIsdWM6IjFmM2MxIixpc0Nhbm9uaWNhbDohMH0sIjpjbG93bjoiOnt1bmljb2RlOlsiMWY5MjEiXSxmbmFtZToiMWY5MjEiLHVjOiIxZjkyMSIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvd25fZmFjZToiOnt1bmljb2RlOlsiMWY5MjEiXSxmbmFtZToiMWY5MjEiLHVjOiIxZjkyMSIsaXNDYW5vbmljYWw6ITF9LCI6c25vd2JvYXJkZXI6Ijp7dW5pY29kZTpbIjFmM2MyIl0sZm5hbWU6IjFmM2MyIix1YzoiMWYzYzIiLGlzQ2Fub25pY2FsOiEwfSwiOnJ1bm5lcjoiOnt1bmljb2RlOlsiMWYzYzMiXSxmbmFtZToiMWYzYzMiLHVjOiIxZjNjMyIsaXNDYW5vbmljYWw6ITB9LCI6c3VyZmVyOiI6e3VuaWNvZGU6WyIxZjNjNCJdLGZuYW1lOiIxZjNjNCIsdWM6IjFmM2M0Iixpc0Nhbm9uaWNhbDohMH0sIjp0cm9waHk6Ijp7dW5pY29kZTpbIjFmM2M2Il0sZm5hbWU6IjFmM2M2Iix1YzoiMWYzYzYiLGlzQ2Fub25pY2FsOiEwfSwiOmZvb3RiYWxsOiI6e3VuaWNvZGU6WyIxZjNjOCJdLGZuYW1lOiIxZjNjOCIsdWM6IjFmM2M4Iixpc0Nhbm9uaWNhbDohMH0sIjpzd2ltbWVyOiI6e3VuaWNvZGU6WyIxZjNjYSJdLGZuYW1lOiIxZjNjYSIsdWM6IjFmM2NhIixpc0Nhbm9uaWNhbDohMH0sIjpob3VzZToiOnt1bmljb2RlOlsiMWYzZTAiXSxmbmFtZToiMWYzZTAiLHVjOiIxZjNlMCIsaXNDYW5vbmljYWw6ITB9LCI6aG91c2Vfd2l0aF9nYXJkZW46Ijp7dW5pY29kZTpbIjFmM2UxIl0sZm5hbWU6IjFmM2UxIix1YzoiMWYzZTEiLGlzQ2Fub25pY2FsOiEwfSwiOm9mZmljZToiOnt1bmljb2RlOlsiMWYzZTIiXSxmbmFtZToiMWYzZTIiLHVjOiIxZjNlMiIsaXNDYW5vbmljYWw6ITB9LCI6cG9zdF9vZmZpY2U6Ijp7dW5pY29kZTpbIjFmM2UzIl0sZm5hbWU6IjFmM2UzIix1YzoiMWYzZTMiLGlzQ2Fub25pY2FsOiEwfSwiOmhvc3BpdGFsOiI6e3VuaWNvZGU6WyIxZjNlNSJdLGZuYW1lOiIxZjNlNSIsdWM6IjFmM2U1Iixpc0Nhbm9uaWNhbDohMH0sIjpiYW5rOiI6e3VuaWNvZGU6WyIxZjNlNiJdLGZuYW1lOiIxZjNlNiIsdWM6IjFmM2U2Iixpc0Nhbm9uaWNhbDohMH0sIjphdG06Ijp7dW5pY29kZTpbIjFmM2U3Il0sZm5hbWU6IjFmM2U3Iix1YzoiMWYzZTciLGlzQ2Fub25pY2FsOiEwfSwiOmhvdGVsOiI6e3VuaWNvZGU6WyIxZjNlOCJdLGZuYW1lOiIxZjNlOCIsdWM6IjFmM2U4Iixpc0Nhbm9uaWNhbDohMH0sIjpsb3ZlX2hvdGVsOiI6e3VuaWNvZGU6WyIxZjNlOSJdLGZuYW1lOiIxZjNlOSIsdWM6IjFmM2U5Iixpc0Nhbm9uaWNhbDohMH0sIjpjb252ZW5pZW5jZV9zdG9yZToiOnt1bmljb2RlOlsiMWYzZWEiXSxmbmFtZToiMWYzZWEiLHVjOiIxZjNlYSIsaXNDYW5vbmljYWw6ITB9LCI6c2Nob29sOiI6e3VuaWNvZGU6WyIxZjNlYiJdLGZuYW1lOiIxZjNlYiIsdWM6IjFmM2ViIixpc0Nhbm9uaWNhbDohMH0sIjpkZXBhcnRtZW50X3N0b3JlOiI6e3VuaWNvZGU6WyIxZjNlYyJdLGZuYW1lOiIxZjNlYyIsdWM6IjFmM2VjIixpc0Nhbm9uaWNhbDohMH0sIjpjb3dib3k6Ijp7dW5pY29kZTpbIjFmOTIwIl0sZm5hbWU6IjFmOTIwIix1YzoiMWY5MjAiLGlzQ2Fub25pY2FsOiEwfSwiOmZhY2Vfd2l0aF9jb3dib3lfaGF0OiI6e3VuaWNvZGU6WyIxZjkyMCJdLGZuYW1lOiIxZjkyMCIsdWM6IjFmOTIwIixpc0Nhbm9uaWNhbDohMX0sIjpmYWN0b3J5OiI6e3VuaWNvZGU6WyIxZjNlZCJdLGZuYW1lOiIxZjNlZCIsdWM6IjFmM2VkIixpc0Nhbm9uaWNhbDohMH0sIjppemFrYXlhX2xhbnRlcm46Ijp7dW5pY29kZTpbIjFmM2VlIl0sZm5hbWU6IjFmM2VlIix1YzoiMWYzZWUiLGlzQ2Fub25pY2FsOiEwfSwiOmphcGFuZXNlX2Nhc3RsZToiOnt1bmljb2RlOlsiMWYzZWYiXSxmbmFtZToiMWYzZWYiLHVjOiIxZjNlZiIsaXNDYW5vbmljYWw6ITB9LCI6ZXVyb3BlYW5fY2FzdGxlOiI6e3VuaWNvZGU6WyIxZjNmMCJdLGZuYW1lOiIxZjNmMCIsdWM6IjFmM2YwIixpc0Nhbm9uaWNhbDohMH0sIjpzbmFpbDoiOnt1bmljb2RlOlsiMWY0MGMiXSxmbmFtZToiMWY0MGMiLHVjOiIxZjQwYyIsaXNDYW5vbmljYWw6ITB9LCI6c25ha2U6Ijp7dW5pY29kZTpbIjFmNDBkIl0sZm5hbWU6IjFmNDBkIix1YzoiMWY0MGQiLGlzQ2Fub25pY2FsOiEwfSwiOnJhY2Vob3JzZToiOnt1bmljb2RlOlsiMWY0MGUiXSxmbmFtZToiMWY0MGUiLHVjOiIxZjQwZSIsaXNDYW5vbmljYWw6ITB9LCI6c2hlZXA6Ijp7dW5pY29kZTpbIjFmNDExIl0sZm5hbWU6IjFmNDExIix1YzoiMWY0MTEiLGlzQ2Fub25pY2FsOiEwfSwiOm1vbmtleToiOnt1bmljb2RlOlsiMWY0MTIiXSxmbmFtZToiMWY0MTIiLHVjOiIxZjQxMiIsaXNDYW5vbmljYWw6ITB9LCI6Y2hpY2tlbjoiOnt1bmljb2RlOlsiMWY0MTQiXSxmbmFtZToiMWY0MTQiLHVjOiIxZjQxNCIsaXNDYW5vbmljYWw6ITB9LCI6Ym9hcjoiOnt1bmljb2RlOlsiMWY0MTciXSxmbmFtZToiMWY0MTciLHVjOiIxZjQxNyIsaXNDYW5vbmljYWw6ITB9LCI6ZWxlcGhhbnQ6Ijp7dW5pY29kZTpbIjFmNDE4Il0sZm5hbWU6IjFmNDE4Iix1YzoiMWY0MTgiLGlzQ2Fub25pY2FsOiEwfSwiOm9jdG9wdXM6Ijp7dW5pY29kZTpbIjFmNDE5Il0sZm5hbWU6IjFmNDE5Iix1YzoiMWY0MTkiLGlzQ2Fub25pY2FsOiEwfSwiOnNoZWxsOiI6e3VuaWNvZGU6WyIxZjQxYSJdLGZuYW1lOiIxZjQxYSIsdWM6IjFmNDFhIixpc0Nhbm9uaWNhbDohMH0sIjpidWc6Ijp7dW5pY29kZTpbIjFmNDFiIl0sZm5hbWU6IjFmNDFiIix1YzoiMWY0MWIiLGlzQ2Fub25pY2FsOiEwfSwiOmFudDoiOnt1bmljb2RlOlsiMWY0MWMiXSxmbmFtZToiMWY0MWMiLHVjOiIxZjQxYyIsaXNDYW5vbmljYWw6ITB9LCI6YmVlOiI6e3VuaWNvZGU6WyIxZjQxZCJdLGZuYW1lOiIxZjQxZCIsdWM6IjFmNDFkIixpc0Nhbm9uaWNhbDohMH0sIjpiZWV0bGU6Ijp7dW5pY29kZTpbIjFmNDFlIl0sZm5hbWU6IjFmNDFlIix1YzoiMWY0MWUiLGlzQ2Fub25pY2FsOiEwfSwiOmZpc2g6Ijp7dW5pY29kZTpbIjFmNDFmIl0sZm5hbWU6IjFmNDFmIix1YzoiMWY0MWYiLGlzQ2Fub25pY2FsOiEwfSwiOnRyb3BpY2FsX2Zpc2g6Ijp7dW5pY29kZTpbIjFmNDIwIl0sZm5hbWU6IjFmNDIwIix1YzoiMWY0MjAiLGlzQ2Fub25pY2FsOiEwfSwiOmJsb3dmaXNoOiI6e3VuaWNvZGU6WyIxZjQyMSJdLGZuYW1lOiIxZjQyMSIsdWM6IjFmNDIxIixpc0Nhbm9uaWNhbDohMH0sIjp0dXJ0bGU6Ijp7dW5pY29kZTpbIjFmNDIyIl0sZm5hbWU6IjFmNDIyIix1YzoiMWY0MjIiLGlzQ2Fub25pY2FsOiEwfSwiOmhhdGNoaW5nX2NoaWNrOiI6e3VuaWNvZGU6WyIxZjQyMyJdLGZuYW1lOiIxZjQyMyIsdWM6IjFmNDIzIixpc0Nhbm9uaWNhbDohMH0sIjpiYWJ5X2NoaWNrOiI6e3VuaWNvZGU6WyIxZjQyNCJdLGZuYW1lOiIxZjQyNCIsdWM6IjFmNDI0Iixpc0Nhbm9uaWNhbDohMH0sIjpoYXRjaGVkX2NoaWNrOiI6e3VuaWNvZGU6WyIxZjQyNSJdLGZuYW1lOiIxZjQyNSIsdWM6IjFmNDI1Iixpc0Nhbm9uaWNhbDohMH0sIjpiaXJkOiI6e3VuaWNvZGU6WyIxZjQyNiJdLGZuYW1lOiIxZjQyNiIsdWM6IjFmNDI2Iixpc0Nhbm9uaWNhbDohMH0sIjpwZW5ndWluOiI6e3VuaWNvZGU6WyIxZjQyNyJdLGZuYW1lOiIxZjQyNyIsdWM6IjFmNDI3Iixpc0Nhbm9uaWNhbDohMH0sIjprb2FsYToiOnt1bmljb2RlOlsiMWY0MjgiXSxmbmFtZToiMWY0MjgiLHVjOiIxZjQyOCIsaXNDYW5vbmljYWw6ITB9LCI6cG9vZGxlOiI6e3VuaWNvZGU6WyIxZjQyOSJdLGZuYW1lOiIxZjQyOSIsdWM6IjFmNDI5Iixpc0Nhbm9uaWNhbDohMH0sIjpjYW1lbDoiOnt1bmljb2RlOlsiMWY0MmIiXSxmbmFtZToiMWY0MmIiLHVjOiIxZjQyYiIsaXNDYW5vbmljYWw6ITB9LCI6ZG9scGhpbjoiOnt1bmljb2RlOlsiMWY0MmMiXSxmbmFtZToiMWY0MmMiLHVjOiIxZjQyYyIsaXNDYW5vbmljYWw6ITB9LCI6bW91c2U6Ijp7dW5pY29kZTpbIjFmNDJkIl0sZm5hbWU6IjFmNDJkIix1YzoiMWY0MmQiLGlzQ2Fub25pY2FsOiEwfSwiOmNvdzoiOnt1bmljb2RlOlsiMWY0MmUiXSxmbmFtZToiMWY0MmUiLHVjOiIxZjQyZSIsaXNDYW5vbmljYWw6ITB9LCI6dGlnZXI6Ijp7dW5pY29kZTpbIjFmNDJmIl0sZm5hbWU6IjFmNDJmIix1YzoiMWY0MmYiLGlzQ2Fub25pY2FsOiEwfSwiOnJhYmJpdDoiOnt1bmljb2RlOlsiMWY0MzAiXSxmbmFtZToiMWY0MzAiLHVjOiIxZjQzMCIsaXNDYW5vbmljYWw6ITB9LCI6Y2F0OiI6e3VuaWNvZGU6WyIxZjQzMSJdLGZuYW1lOiIxZjQzMSIsdWM6IjFmNDMxIixpc0Nhbm9uaWNhbDohMH0sIjpkcmFnb25fZmFjZToiOnt1bmljb2RlOlsiMWY0MzIiXSxmbmFtZToiMWY0MzIiLHVjOiIxZjQzMiIsaXNDYW5vbmljYWw6ITB9LCI6d2hhbGU6Ijp7dW5pY29kZTpbIjFmNDMzIl0sZm5hbWU6IjFmNDMzIix1YzoiMWY0MzMiLGlzQ2Fub25pY2FsOiEwfSwiOmhvcnNlOiI6e3VuaWNvZGU6WyIxZjQzNCJdLGZuYW1lOiIxZjQzNCIsdWM6IjFmNDM0Iixpc0Nhbm9uaWNhbDohMH0sIjptb25rZXlfZmFjZToiOnt1bmljb2RlOlsiMWY0MzUiXSxmbmFtZToiMWY0MzUiLHVjOiIxZjQzNSIsaXNDYW5vbmljYWw6ITB9LCI6ZG9nOiI6e3VuaWNvZGU6WyIxZjQzNiJdLGZuYW1lOiIxZjQzNiIsdWM6IjFmNDM2Iixpc0Nhbm9uaWNhbDohMH0sIjpwaWc6Ijp7dW5pY29kZTpbIjFmNDM3Il0sZm5hbWU6IjFmNDM3Iix1YzoiMWY0MzciLGlzQ2Fub25pY2FsOiEwfSwiOmZyb2c6Ijp7dW5pY29kZTpbIjFmNDM4Il0sZm5hbWU6IjFmNDM4Iix1YzoiMWY0MzgiLGlzQ2Fub25pY2FsOiEwfSwiOmhhbXN0ZXI6Ijp7dW5pY29kZTpbIjFmNDM5Il0sZm5hbWU6IjFmNDM5Iix1YzoiMWY0MzkiLGlzQ2Fub25pY2FsOiEwfSwiOndvbGY6Ijp7dW5pY29kZTpbIjFmNDNhIl0sZm5hbWU6IjFmNDNhIix1YzoiMWY0M2EiLGlzQ2Fub25pY2FsOiEwfSwiOmJlYXI6Ijp7dW5pY29kZTpbIjFmNDNiIl0sZm5hbWU6IjFmNDNiIix1YzoiMWY0M2IiLGlzQ2Fub25pY2FsOiEwfSwiOnBhbmRhX2ZhY2U6Ijp7dW5pY29kZTpbIjFmNDNjIl0sZm5hbWU6IjFmNDNjIix1YzoiMWY0M2MiLGlzQ2Fub25pY2FsOiEwfSwiOnBpZ19ub3NlOiI6e3VuaWNvZGU6WyIxZjQzZCJdLGZuYW1lOiIxZjQzZCIsdWM6IjFmNDNkIixpc0Nhbm9uaWNhbDohMH0sIjpmZWV0OiI6e3VuaWNvZGU6WyIxZjQzZSJdLGZuYW1lOiIxZjQzZSIsdWM6IjFmNDNlIixpc0Nhbm9uaWNhbDohMH0sIjpwYXdfcHJpbnRzOiI6e3VuaWNvZGU6WyIxZjQzZSJdLGZuYW1lOiIxZjQzZSIsdWM6IjFmNDNlIixpc0Nhbm9uaWNhbDohMX0sIjpleWVzOiI6e3VuaWNvZGU6WyIxZjQ0MCJdLGZuYW1lOiIxZjQ0MCIsdWM6IjFmNDQwIixpc0Nhbm9uaWNhbDohMH0sIjplYXI6Ijp7dW5pY29kZTpbIjFmNDQyIl0sZm5hbWU6IjFmNDQyIix1YzoiMWY0NDIiLGlzQ2Fub25pY2FsOiEwfSwiOm5vc2U6Ijp7dW5pY29kZTpbIjFmNDQzIl0sZm5hbWU6IjFmNDQzIix1YzoiMWY0NDMiLGlzQ2Fub25pY2FsOiEwfSwiOmxpcHM6Ijp7dW5pY29kZTpbIjFmNDQ0Il0sZm5hbWU6IjFmNDQ0Iix1YzoiMWY0NDQiLGlzQ2Fub25pY2FsOiEwfSwiOnRvbmd1ZToiOnt1bmljb2RlOlsiMWY0NDUiXSxmbmFtZToiMWY0NDUiLHVjOiIxZjQ0NSIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfdXBfMjoiOnt1bmljb2RlOlsiMWY0NDYiXSxmbmFtZToiMWY0NDYiLHVjOiIxZjQ0NiIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfZG93bjoiOnt1bmljb2RlOlsiMWY0NDciXSxmbmFtZToiMWY0NDciLHVjOiIxZjQ0NyIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfbGVmdDoiOnt1bmljb2RlOlsiMWY0NDgiXSxmbmFtZToiMWY0NDgiLHVjOiIxZjQ0OCIsaXNDYW5vbmljYWw6ITB9LCI6cG9pbnRfcmlnaHQ6Ijp7dW5pY29kZTpbIjFmNDQ5Il0sZm5hbWU6IjFmNDQ5Iix1YzoiMWY0NDkiLGlzQ2Fub25pY2FsOiEwfSwiOnB1bmNoOiI6e3VuaWNvZGU6WyIxZjQ0YSJdLGZuYW1lOiIxZjQ0YSIsdWM6IjFmNDRhIixpc0Nhbm9uaWNhbDohMH0sIjp3YXZlOiI6e3VuaWNvZGU6WyIxZjQ0YiJdLGZuYW1lOiIxZjQ0YiIsdWM6IjFmNDRiIixpc0Nhbm9uaWNhbDohMH0sIjpva19oYW5kOiI6e3VuaWNvZGU6WyIxZjQ0YyJdLGZuYW1lOiIxZjQ0YyIsdWM6IjFmNDRjIixpc0Nhbm9uaWNhbDohMH0sIjp0aHVtYnN1cDoiOnt1bmljb2RlOlsiMWY0NGQiXSxmbmFtZToiMWY0NGQiLHVjOiIxZjQ0ZCIsaXNDYW5vbmljYWw6ITB9LCI6KzE6Ijp7dW5pY29kZTpbIjFmNDRkIl0sZm5hbWU6IjFmNDRkIix1YzoiMWY0NGQiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1idXA6Ijp7dW5pY29kZTpbIjFmNDRkIl0sZm5hbWU6IjFmNDRkIix1YzoiMWY0NGQiLGlzQ2Fub25pY2FsOiExfSwiOnRodW1ic2Rvd246Ijp7dW5pY29kZTpbIjFmNDRlIl0sZm5hbWU6IjFmNDRlIix1YzoiMWY0NGUiLGlzQ2Fub25pY2FsOiEwfSwiOi0xOiI6e3VuaWNvZGU6WyIxZjQ0ZSJdLGZuYW1lOiIxZjQ0ZSIsdWM6IjFmNDRlIixpc0Nhbm9uaWNhbDohMX0sIjp0aHVtYmRvd246Ijp7dW5pY29kZTpbIjFmNDRlIl0sZm5hbWU6IjFmNDRlIix1YzoiMWY0NGUiLGlzQ2Fub25pY2FsOiExfSwiOmNsYXA6Ijp7dW5pY29kZTpbIjFmNDRmIl0sZm5hbWU6IjFmNDRmIix1YzoiMWY0NGYiLGlzQ2Fub25pY2FsOiEwfSwiOm9wZW5faGFuZHM6Ijp7CnVuaWNvZGU6WyIxZjQ1MCJdLGZuYW1lOiIxZjQ1MCIsdWM6IjFmNDUwIixpc0Nhbm9uaWNhbDohMH0sIjpjcm93bjoiOnt1bmljb2RlOlsiMWY0NTEiXSxmbmFtZToiMWY0NTEiLHVjOiIxZjQ1MSIsaXNDYW5vbmljYWw6ITB9LCI6d29tYW5zX2hhdDoiOnt1bmljb2RlOlsiMWY0NTIiXSxmbmFtZToiMWY0NTIiLHVjOiIxZjQ1MiIsaXNDYW5vbmljYWw6ITB9LCI6ZXllZ2xhc3NlczoiOnt1bmljb2RlOlsiMWY0NTMiXSxmbmFtZToiMWY0NTMiLHVjOiIxZjQ1MyIsaXNDYW5vbmljYWw6ITB9LCI6bmVja3RpZToiOnt1bmljb2RlOlsiMWY0NTQiXSxmbmFtZToiMWY0NTQiLHVjOiIxZjQ1NCIsaXNDYW5vbmljYWw6ITB9LCI6c2hpcnQ6Ijp7dW5pY29kZTpbIjFmNDU1Il0sZm5hbWU6IjFmNDU1Iix1YzoiMWY0NTUiLGlzQ2Fub25pY2FsOiEwfSwiOmplYW5zOiI6e3VuaWNvZGU6WyIxZjQ1NiJdLGZuYW1lOiIxZjQ1NiIsdWM6IjFmNDU2Iixpc0Nhbm9uaWNhbDohMH0sIjpkcmVzczoiOnt1bmljb2RlOlsiMWY0NTciXSxmbmFtZToiMWY0NTciLHVjOiIxZjQ1NyIsaXNDYW5vbmljYWw6ITB9LCI6a2ltb25vOiI6e3VuaWNvZGU6WyIxZjQ1OCJdLGZuYW1lOiIxZjQ1OCIsdWM6IjFmNDU4Iixpc0Nhbm9uaWNhbDohMH0sIjpiaWtpbmk6Ijp7dW5pY29kZTpbIjFmNDU5Il0sZm5hbWU6IjFmNDU5Iix1YzoiMWY0NTkiLGlzQ2Fub25pY2FsOiEwfSwiOndvbWFuc19jbG90aGVzOiI6e3VuaWNvZGU6WyIxZjQ1YSJdLGZuYW1lOiIxZjQ1YSIsdWM6IjFmNDVhIixpc0Nhbm9uaWNhbDohMH0sIjpwdXJzZToiOnt1bmljb2RlOlsiMWY0NWIiXSxmbmFtZToiMWY0NWIiLHVjOiIxZjQ1YiIsaXNDYW5vbmljYWw6ITB9LCI6aGFuZGJhZzoiOnt1bmljb2RlOlsiMWY0NWMiXSxmbmFtZToiMWY0NWMiLHVjOiIxZjQ1YyIsaXNDYW5vbmljYWw6ITB9LCI6cG91Y2g6Ijp7dW5pY29kZTpbIjFmNDVkIl0sZm5hbWU6IjFmNDVkIix1YzoiMWY0NWQiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbnNfc2hvZToiOnt1bmljb2RlOlsiMWY0NWUiXSxmbmFtZToiMWY0NWUiLHVjOiIxZjQ1ZSIsaXNDYW5vbmljYWw6ITB9LCI6YXRobGV0aWNfc2hvZToiOnt1bmljb2RlOlsiMWY0NWYiXSxmbmFtZToiMWY0NWYiLHVjOiIxZjQ1ZiIsaXNDYW5vbmljYWw6ITB9LCI6aGlnaF9oZWVsOiI6e3VuaWNvZGU6WyIxZjQ2MCJdLGZuYW1lOiIxZjQ2MCIsdWM6IjFmNDYwIixpc0Nhbm9uaWNhbDohMH0sIjpzYW5kYWw6Ijp7dW5pY29kZTpbIjFmNDYxIl0sZm5hbWU6IjFmNDYxIix1YzoiMWY0NjEiLGlzQ2Fub25pY2FsOiEwfSwiOmJvb3Q6Ijp7dW5pY29kZTpbIjFmNDYyIl0sZm5hbWU6IjFmNDYyIix1YzoiMWY0NjIiLGlzQ2Fub25pY2FsOiEwfSwiOmZvb3RwcmludHM6Ijp7dW5pY29kZTpbIjFmNDYzIl0sZm5hbWU6IjFmNDYzIix1YzoiMWY0NjMiLGlzQ2Fub25pY2FsOiEwfSwiOmJ1c3RfaW5fc2lsaG91ZXR0ZToiOnt1bmljb2RlOlsiMWY0NjQiXSxmbmFtZToiMWY0NjQiLHVjOiIxZjQ2NCIsaXNDYW5vbmljYWw6ITB9LCI6Ym95OiI6e3VuaWNvZGU6WyIxZjQ2NiJdLGZuYW1lOiIxZjQ2NiIsdWM6IjFmNDY2Iixpc0Nhbm9uaWNhbDohMH0sIjpnaXJsOiI6e3VuaWNvZGU6WyIxZjQ2NyJdLGZuYW1lOiIxZjQ2NyIsdWM6IjFmNDY3Iixpc0Nhbm9uaWNhbDohMH0sIjptYW46Ijp7dW5pY29kZTpbIjFmNDY4Il0sZm5hbWU6IjFmNDY4Iix1YzoiMWY0NjgiLGlzQ2Fub25pY2FsOiEwfSwiOndvbWFuOiI6e3VuaWNvZGU6WyIxZjQ2OSJdLGZuYW1lOiIxZjQ2OSIsdWM6IjFmNDY5Iixpc0Nhbm9uaWNhbDohMH0sIjpmYW1pbHk6Ijp7dW5pY29kZTpbIjFmNDZhIl0sZm5hbWU6IjFmNDZhIix1YzoiMWY0NmEiLGlzQ2Fub25pY2FsOiEwfSwiOmNvdXBsZToiOnt1bmljb2RlOlsiMWY0NmIiXSxmbmFtZToiMWY0NmIiLHVjOiIxZjQ2YiIsaXNDYW5vbmljYWw6ITB9LCI6Y29wOiI6e3VuaWNvZGU6WyIxZjQ2ZSJdLGZuYW1lOiIxZjQ2ZSIsdWM6IjFmNDZlIixpc0Nhbm9uaWNhbDohMH0sIjpkYW5jZXJzOiI6e3VuaWNvZGU6WyIxZjQ2ZiJdLGZuYW1lOiIxZjQ2ZiIsdWM6IjFmNDZmIixpc0Nhbm9uaWNhbDohMH0sIjpicmlkZV93aXRoX3ZlaWw6Ijp7dW5pY29kZTpbIjFmNDcwIl0sZm5hbWU6IjFmNDcwIix1YzoiMWY0NzAiLGlzQ2Fub25pY2FsOiEwfSwiOnBlcnNvbl93aXRoX2Jsb25kX2hhaXI6Ijp7dW5pY29kZTpbIjFmNDcxIl0sZm5hbWU6IjFmNDcxIix1YzoiMWY0NzEiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX2d1YV9waV9tYW86Ijp7dW5pY29kZTpbIjFmNDcyIl0sZm5hbWU6IjFmNDcyIix1YzoiMWY0NzIiLGlzQ2Fub25pY2FsOiEwfSwiOm1hbl93aXRoX3R1cmJhbjoiOnt1bmljb2RlOlsiMWY0NzMiXSxmbmFtZToiMWY0NzMiLHVjOiIxZjQ3MyIsaXNDYW5vbmljYWw6ITB9LCI6b2xkZXJfbWFuOiI6e3VuaWNvZGU6WyIxZjQ3NCJdLGZuYW1lOiIxZjQ3NCIsdWM6IjFmNDc0Iixpc0Nhbm9uaWNhbDohMH0sIjpvbGRlcl93b21hbjoiOnt1bmljb2RlOlsiMWY0NzUiXSxmbmFtZToiMWY0NzUiLHVjOiIxZjQ3NSIsaXNDYW5vbmljYWw6ITB9LCI6Z3JhbmRtYToiOnt1bmljb2RlOlsiMWY0NzUiXSxmbmFtZToiMWY0NzUiLHVjOiIxZjQ3NSIsaXNDYW5vbmljYWw6ITF9LCI6YmFieToiOnt1bmljb2RlOlsiMWY0NzYiXSxmbmFtZToiMWY0NzYiLHVjOiIxZjQ3NiIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uX3dvcmtlcjoiOnt1bmljb2RlOlsiMWY0NzciXSxmbmFtZToiMWY0NzciLHVjOiIxZjQ3NyIsaXNDYW5vbmljYWw6ITB9LCI6cHJpbmNlc3M6Ijp7dW5pY29kZTpbIjFmNDc4Il0sZm5hbWU6IjFmNDc4Iix1YzoiMWY0NzgiLGlzQ2Fub25pY2FsOiEwfSwiOmphcGFuZXNlX29ncmU6Ijp7dW5pY29kZTpbIjFmNDc5Il0sZm5hbWU6IjFmNDc5Iix1YzoiMWY0NzkiLGlzQ2Fub25pY2FsOiEwfSwiOmphcGFuZXNlX2dvYmxpbjoiOnt1bmljb2RlOlsiMWY0N2EiXSxmbmFtZToiMWY0N2EiLHVjOiIxZjQ3YSIsaXNDYW5vbmljYWw6ITB9LCI6Z2hvc3Q6Ijp7dW5pY29kZTpbIjFmNDdiIl0sZm5hbWU6IjFmNDdiIix1YzoiMWY0N2IiLGlzQ2Fub25pY2FsOiEwfSwiOmFuZ2VsOiI6e3VuaWNvZGU6WyIxZjQ3YyJdLGZuYW1lOiIxZjQ3YyIsdWM6IjFmNDdjIixpc0Nhbm9uaWNhbDohMH0sIjphbGllbjoiOnt1bmljb2RlOlsiMWY0N2QiXSxmbmFtZToiMWY0N2QiLHVjOiIxZjQ3ZCIsaXNDYW5vbmljYWw6ITB9LCI6c3BhY2VfaW52YWRlcjoiOnt1bmljb2RlOlsiMWY0N2UiXSxmbmFtZToiMWY0N2UiLHVjOiIxZjQ3ZSIsaXNDYW5vbmljYWw6ITB9LCI6aW1wOiI6e3VuaWNvZGU6WyIxZjQ3ZiJdLGZuYW1lOiIxZjQ3ZiIsdWM6IjFmNDdmIixpc0Nhbm9uaWNhbDohMH0sIjpza3VsbDoiOnt1bmljb2RlOlsiMWY0ODAiXSxmbmFtZToiMWY0ODAiLHVjOiIxZjQ4MCIsaXNDYW5vbmljYWw6ITB9LCI6c2tlbGV0b246Ijp7dW5pY29kZTpbIjFmNDgwIl0sZm5hbWU6IjFmNDgwIix1YzoiMWY0ODAiLGlzQ2Fub25pY2FsOiExfSwiOmNhcmRfaW5kZXg6Ijp7dW5pY29kZTpbIjFmNGM3Il0sZm5hbWU6IjFmNGM3Iix1YzoiMWY0YzciLGlzQ2Fub25pY2FsOiEwfSwiOmluZm9ybWF0aW9uX2Rlc2tfcGVyc29uOiI6e3VuaWNvZGU6WyIxZjQ4MSJdLGZuYW1lOiIxZjQ4MSIsdWM6IjFmNDgxIixpc0Nhbm9uaWNhbDohMH0sIjpndWFyZHNtYW46Ijp7dW5pY29kZTpbIjFmNDgyIl0sZm5hbWU6IjFmNDgyIix1YzoiMWY0ODIiLGlzQ2Fub25pY2FsOiEwfSwiOmRhbmNlcjoiOnt1bmljb2RlOlsiMWY0ODMiXSxmbmFtZToiMWY0ODMiLHVjOiIxZjQ4MyIsaXNDYW5vbmljYWw6ITB9LCI6bGlwc3RpY2s6Ijp7dW5pY29kZTpbIjFmNDg0Il0sZm5hbWU6IjFmNDg0Iix1YzoiMWY0ODQiLGlzQ2Fub25pY2FsOiEwfSwiOm5haWxfY2FyZToiOnt1bmljb2RlOlsiMWY0ODUiXSxmbmFtZToiMWY0ODUiLHVjOiIxZjQ4NSIsaXNDYW5vbmljYWw6ITB9LCI6bGVkZ2VyOiI6e3VuaWNvZGU6WyIxZjRkMiJdLGZuYW1lOiIxZjRkMiIsdWM6IjFmNGQyIixpc0Nhbm9uaWNhbDohMH0sIjptYXNzYWdlOiI6e3VuaWNvZGU6WyIxZjQ4NiJdLGZuYW1lOiIxZjQ4NiIsdWM6IjFmNDg2Iixpc0Nhbm9uaWNhbDohMH0sIjpub3RlYm9vazoiOnt1bmljb2RlOlsiMWY0ZDMiXSxmbmFtZToiMWY0ZDMiLHVjOiIxZjRkMyIsaXNDYW5vbmljYWw6ITB9LCI6aGFpcmN1dDoiOnt1bmljb2RlOlsiMWY0ODciXSxmbmFtZToiMWY0ODciLHVjOiIxZjQ4NyIsaXNDYW5vbmljYWw6ITB9LCI6bm90ZWJvb2tfd2l0aF9kZWNvcmF0aXZlX2NvdmVyOiI6e3VuaWNvZGU6WyIxZjRkNCJdLGZuYW1lOiIxZjRkNCIsdWM6IjFmNGQ0Iixpc0Nhbm9uaWNhbDohMH0sIjpiYXJiZXI6Ijp7dW5pY29kZTpbIjFmNDg4Il0sZm5hbWU6IjFmNDg4Iix1YzoiMWY0ODgiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb3NlZF9ib29rOiI6e3VuaWNvZGU6WyIxZjRkNSJdLGZuYW1lOiIxZjRkNSIsdWM6IjFmNGQ1Iixpc0Nhbm9uaWNhbDohMH0sIjpzeXJpbmdlOiI6e3VuaWNvZGU6WyIxZjQ4OSJdLGZuYW1lOiIxZjQ4OSIsdWM6IjFmNDg5Iixpc0Nhbm9uaWNhbDohMH0sIjpib29rOiI6e3VuaWNvZGU6WyIxZjRkNiJdLGZuYW1lOiIxZjRkNiIsdWM6IjFmNGQ2Iixpc0Nhbm9uaWNhbDohMH0sIjpwaWxsOiI6e3VuaWNvZGU6WyIxZjQ4YSJdLGZuYW1lOiIxZjQ4YSIsdWM6IjFmNDhhIixpc0Nhbm9uaWNhbDohMH0sIjpncmVlbl9ib29rOiI6e3VuaWNvZGU6WyIxZjRkNyJdLGZuYW1lOiIxZjRkNyIsdWM6IjFmNGQ3Iixpc0Nhbm9uaWNhbDohMH0sIjpraXNzOiI6e3VuaWNvZGU6WyIxZjQ4YiJdLGZuYW1lOiIxZjQ4YiIsdWM6IjFmNDhiIixpc0Nhbm9uaWNhbDohMH0sIjpibHVlX2Jvb2s6Ijp7dW5pY29kZTpbIjFmNGQ4Il0sZm5hbWU6IjFmNGQ4Iix1YzoiMWY0ZDgiLGlzQ2Fub25pY2FsOiEwfSwiOmxvdmVfbGV0dGVyOiI6e3VuaWNvZGU6WyIxZjQ4YyJdLGZuYW1lOiIxZjQ4YyIsdWM6IjFmNDhjIixpc0Nhbm9uaWNhbDohMH0sIjpvcmFuZ2VfYm9vazoiOnt1bmljb2RlOlsiMWY0ZDkiXSxmbmFtZToiMWY0ZDkiLHVjOiIxZjRkOSIsaXNDYW5vbmljYWw6ITB9LCI6cmluZzoiOnt1bmljb2RlOlsiMWY0OGQiXSxmbmFtZToiMWY0OGQiLHVjOiIxZjQ4ZCIsaXNDYW5vbmljYWw6ITB9LCI6Ym9va3M6Ijp7dW5pY29kZTpbIjFmNGRhIl0sZm5hbWU6IjFmNGRhIix1YzoiMWY0ZGEiLGlzQ2Fub25pY2FsOiEwfSwiOmdlbToiOnt1bmljb2RlOlsiMWY0OGUiXSxmbmFtZToiMWY0OGUiLHVjOiIxZjQ4ZSIsaXNDYW5vbmljYWw6ITB9LCI6bmFtZV9iYWRnZToiOnt1bmljb2RlOlsiMWY0ZGIiXSxmbmFtZToiMWY0ZGIiLHVjOiIxZjRkYiIsaXNDYW5vbmljYWw6ITB9LCI6Y291cGxla2lzczoiOnt1bmljb2RlOlsiMWY0OGYiXSxmbmFtZToiMWY0OGYiLHVjOiIxZjQ4ZiIsaXNDYW5vbmljYWw6ITB9LCI6c2Nyb2xsOiI6e3VuaWNvZGU6WyIxZjRkYyJdLGZuYW1lOiIxZjRkYyIsdWM6IjFmNGRjIixpc0Nhbm9uaWNhbDohMH0sIjpib3VxdWV0OiI6e3VuaWNvZGU6WyIxZjQ5MCJdLGZuYW1lOiIxZjQ5MCIsdWM6IjFmNDkwIixpc0Nhbm9uaWNhbDohMH0sIjpwZW5jaWw6Ijp7dW5pY29kZTpbIjFmNGRkIl0sZm5hbWU6IjFmNGRkIix1YzoiMWY0ZGQiLGlzQ2Fub25pY2FsOiEwfSwiOmNvdXBsZV93aXRoX2hlYXJ0OiI6e3VuaWNvZGU6WyIxZjQ5MSJdLGZuYW1lOiIxZjQ5MSIsdWM6IjFmNDkxIixpc0Nhbm9uaWNhbDohMH0sIjp0ZWxlcGhvbmVfcmVjZWl2ZXI6Ijp7dW5pY29kZTpbIjFmNGRlIl0sZm5hbWU6IjFmNGRlIix1YzoiMWY0ZGUiLGlzQ2Fub25pY2FsOiEwfSwiOndlZGRpbmc6Ijp7dW5pY29kZTpbIjFmNDkyIl0sZm5hbWU6IjFmNDkyIix1YzoiMWY0OTIiLGlzQ2Fub25pY2FsOiEwfSwiOnBhZ2VyOiI6e3VuaWNvZGU6WyIxZjRkZiJdLGZuYW1lOiIxZjRkZiIsdWM6IjFmNGRmIixpc0Nhbm9uaWNhbDohMH0sIjpmYXg6Ijp7dW5pY29kZTpbIjFmNGUwIl0sZm5hbWU6IjFmNGUwIix1YzoiMWY0ZTAiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0YmVhdDoiOnt1bmljb2RlOlsiMWY0OTMiXSxmbmFtZToiMWY0OTMiLHVjOiIxZjQ5MyIsaXNDYW5vbmljYWw6ITB9LCI6c2F0ZWxsaXRlOiI6e3VuaWNvZGU6WyIxZjRlMSJdLGZuYW1lOiIxZjRlMSIsdWM6IjFmNGUxIixpc0Nhbm9uaWNhbDohMH0sIjpsb3Vkc3BlYWtlcjoiOnt1bmljb2RlOlsiMWY0ZTIiXSxmbmFtZToiMWY0ZTIiLHVjOiIxZjRlMiIsaXNDYW5vbmljYWw6ITB9LCI6YnJva2VuX2hlYXJ0OiI6e3VuaWNvZGU6WyIxZjQ5NCJdLGZuYW1lOiIxZjQ5NCIsdWM6IjFmNDk0Iixpc0Nhbm9uaWNhbDohMH0sIjptZWdhOiI6e3VuaWNvZGU6WyIxZjRlMyJdLGZuYW1lOiIxZjRlMyIsdWM6IjFmNGUzIixpc0Nhbm9uaWNhbDohMH0sIjpvdXRib3hfdHJheToiOnt1bmljb2RlOlsiMWY0ZTQiXSxmbmFtZToiMWY0ZTQiLHVjOiIxZjRlNCIsaXNDYW5vbmljYWw6ITB9LCI6dHdvX2hlYXJ0czoiOnt1bmljb2RlOlsiMWY0OTUiXSxmbmFtZToiMWY0OTUiLHVjOiIxZjQ5NSIsaXNDYW5vbmljYWw6ITB9LCI6aW5ib3hfdHJheToiOnt1bmljb2RlOlsiMWY0ZTUiXSxmbmFtZToiMWY0ZTUiLHVjOiIxZjRlNSIsaXNDYW5vbmljYWw6ITB9LCI6cGFja2FnZToiOnt1bmljb2RlOlsiMWY0ZTYiXSxmbmFtZToiMWY0ZTYiLHVjOiIxZjRlNiIsaXNDYW5vbmljYWw6ITB9LCI6c3BhcmtsaW5nX2hlYXJ0OiI6e3VuaWNvZGU6WyIxZjQ5NiJdLGZuYW1lOiIxZjQ5NiIsdWM6IjFmNDk2Iixpc0Nhbm9uaWNhbDohMH0sIjplLW1haWw6Ijp7dW5pY29kZTpbIjFmNGU3Il0sZm5hbWU6IjFmNGU3Iix1YzoiMWY0ZTciLGlzQ2Fub25pY2FsOiEwfSwiOmVtYWlsOiI6e3VuaWNvZGU6WyIxZjRlNyJdLGZuYW1lOiIxZjRlNyIsdWM6IjFmNGU3Iixpc0Nhbm9uaWNhbDohMX0sIjppbmNvbWluZ19lbnZlbG9wZToiOnt1bmljb2RlOlsiMWY0ZTgiXSxmbmFtZToiMWY0ZTgiLHVjOiIxZjRlOCIsaXNDYW5vbmljYWw6ITB9LCI6aGVhcnRwdWxzZToiOnt1bmljb2RlOlsiMWY0OTciXSxmbmFtZToiMWY0OTciLHVjOiIxZjQ5NyIsaXNDYW5vbmljYWw6ITB9LCI6ZW52ZWxvcGVfd2l0aF9hcnJvdzoiOnt1bmljb2RlOlsiMWY0ZTkiXSxmbmFtZToiMWY0ZTkiLHVjOiIxZjRlOSIsaXNDYW5vbmljYWw6ITB9LCI6bWFpbGJveF9jbG9zZWQ6Ijp7dW5pY29kZTpbIjFmNGVhIl0sZm5hbWU6IjFmNGVhIix1YzoiMWY0ZWEiLGlzQ2Fub25pY2FsOiEwfSwiOmN1cGlkOiI6e3VuaWNvZGU6WyIxZjQ5OCJdLGZuYW1lOiIxZjQ5OCIsdWM6IjFmNDk4Iixpc0Nhbm9uaWNhbDohMH0sIjptYWlsYm94OiI6e3VuaWNvZGU6WyIxZjRlYiJdLGZuYW1lOiIxZjRlYiIsdWM6IjFmNGViIixpc0Nhbm9uaWNhbDohMH0sIjpwb3N0Ym94OiI6e3VuaWNvZGU6WyIxZjRlZSJdLGZuYW1lOiIxZjRlZSIsdWM6IjFmNGVlIixpc0Nhbm9uaWNhbDohMH0sIjpibHVlX2hlYXJ0OiI6e3VuaWNvZGU6WyIxZjQ5OSJdLGZuYW1lOiIxZjQ5OSIsdWM6IjFmNDk5Iixpc0Nhbm9uaWNhbDohMH0sIjpuZXdzcGFwZXI6Ijp7dW5pY29kZTpbIjFmNGYwIl0sZm5hbWU6IjFmNGYwIix1YzoiMWY0ZjAiLGlzQ2Fub25pY2FsOiEwfSwiOmlwaG9uZToiOnt1bmljb2RlOlsiMWY0ZjEiXSxmbmFtZToiMWY0ZjEiLHVjOiIxZjRmMSIsaXNDYW5vbmljYWw6ITB9LCI6Z3JlZW5faGVhcnQ6Ijp7dW5pY29kZTpbIjFmNDlhIl0sZm5hbWU6IjFmNDlhIix1YzoiMWY0OWEiLGlzQ2Fub25pY2FsOiEwfSwiOmNhbGxpbmc6Ijp7dW5pY29kZTpbIjFmNGYyIl0sZm5hbWU6IjFmNGYyIix1YzoiMWY0ZjIiLGlzQ2Fub25pY2FsOiEwfSwiOnZpYnJhdGlvbl9tb2RlOiI6e3VuaWNvZGU6WyIxZjRmMyJdLGZuYW1lOiIxZjRmMyIsdWM6IjFmNGYzIixpc0Nhbm9uaWNhbDohMH0sIjp5ZWxsb3dfaGVhcnQ6Ijp7dW5pY29kZTpbIjFmNDliIl0sZm5hbWU6IjFmNDliIix1YzoiMWY0OWIiLGlzQ2Fub25pY2FsOiEwfSwiOm1vYmlsZV9waG9uZV9vZmY6Ijp7dW5pY29kZTpbIjFmNGY0Il0sZm5hbWU6IjFmNGY0Iix1YzoiMWY0ZjQiLGlzQ2Fub25pY2FsOiEwfSwiOnNpZ25hbF9zdHJlbmd0aDoiOnt1bmljb2RlOlsiMWY0ZjYiXSxmbmFtZToiMWY0ZjYiLHVjOiIxZjRmNiIsaXNDYW5vbmljYWw6ITB9LCI6cHVycGxlX2hlYXJ0OiI6e3VuaWNvZGU6WyIxZjQ5YyJdLGZuYW1lOiIxZjQ5YyIsdWM6IjFmNDljIixpc0Nhbm9uaWNhbDohMH0sIjpjYW1lcmE6Ijp7dW5pY29kZTpbIjFmNGY3Il0sZm5hbWU6IjFmNGY3Iix1YzoiMWY0ZjciLGlzQ2Fub25pY2FsOiEwfSwiOnZpZGVvX2NhbWVyYToiOnt1bmljb2RlOlsiMWY0ZjkiXSxmbmFtZToiMWY0ZjkiLHVjOiIxZjRmOSIsaXNDYW5vbmljYWw6ITB9LCI6Z2lmdF9oZWFydDoiOnt1bmljb2RlOlsiMWY0OWQiXSxmbmFtZToiMWY0OWQiLHVjOiIxZjQ5ZCIsaXNDYW5vbmljYWw6ITB9LCI6dHY6Ijp7dW5pY29kZTpbIjFmNGZhIl0sZm5hbWU6IjFmNGZhIix1YzoiMWY0ZmEiLGlzQ2Fub25pY2FsOiEwfSwiOnJhZGlvOiI6e3VuaWNvZGU6WyIxZjRmYiJdLGZuYW1lOiIxZjRmYiIsdWM6IjFmNGZiIixpc0Nhbm9uaWNhbDohMH0sIjpyZXZvbHZpbmdfaGVhcnRzOiI6e3VuaWNvZGU6WyIxZjQ5ZSJdLGZuYW1lOiIxZjQ5ZSIsdWM6IjFmNDllIixpc0Nhbm9uaWNhbDohMH0sIjp2aHM6Ijp7dW5pY29kZTpbIjFmNGZjIl0sZm5hbWU6IjFmNGZjIix1YzoiMWY0ZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93c19jbG9ja3dpc2U6Ijp7dW5pY29kZTpbIjFmNTAzIl0sZm5hbWU6IjFmNTAzIix1YzoiMWY1MDMiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0X2RlY29yYXRpb246Ijp7dW5pY29kZTpbIjFmNDlmIl0sZm5hbWU6IjFmNDlmIix1YzoiMWY0OWYiLGlzQ2Fub25pY2FsOiEwfSwiOmxvdWRfc291bmQ6Ijp7dW5pY29kZTpbIjFmNTBhIl0sZm5hbWU6IjFmNTBhIix1YzoiMWY1MGEiLGlzQ2Fub25pY2FsOiEwfSwiOmJhdHRlcnk6Ijp7dW5pY29kZTpbIjFmNTBiIl0sZm5hbWU6IjFmNTBiIix1YzoiMWY1MGIiLGlzQ2Fub25pY2FsOiEwfSwiOmRpYW1vbmRfc2hhcGVfd2l0aF9hX2RvdF9pbnNpZGU6Ijp7dW5pY29kZTpbIjFmNGEwIl0sZm5hbWU6IjFmNGEwIix1YzoiMWY0YTAiLGlzQ2Fub25pY2FsOiEwfSwiOmVsZWN0cmljX3BsdWc6Ijp7dW5pY29kZTpbIjFmNTBjIl0sZm5hbWU6IjFmNTBjIix1YzoiMWY1MGMiLGlzQ2Fub25pY2FsOiEwfSwiOm1hZzoiOnt1bmljb2RlOlsiMWY1MGQiXSxmbmFtZToiMWY1MGQiLHVjOiIxZjUwZCIsaXNDYW5vbmljYWw6ITB9LCI6YnVsYjoiOnt1bmljb2RlOlsiMWY0YTEiXSxmbmFtZToiMWY0YTEiLHVjOiIxZjRhMSIsaXNDYW5vbmljYWw6ITB9LCI6bWFnX3JpZ2h0OiI6e3VuaWNvZGU6WyIxZjUwZSJdLGZuYW1lOiIxZjUwZSIsdWM6IjFmNTBlIixpc0Nhbm9uaWNhbDohMH0sIjpsb2NrX3dpdGhfaW5rX3BlbjoiOnt1bmljb2RlOlsiMWY1MGYiXSxmbmFtZToiMWY1MGYiLHVjOiIxZjUwZiIsaXNDYW5vbmljYWw6ITB9LCI6YW5nZXI6Ijp7dW5pY29kZTpbIjFmNGEyIl0sZm5hbWU6IjFmNGEyIix1YzoiMWY0YTIiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb3NlZF9sb2NrX3dpdGhfa2V5OiI6e3VuaWNvZGU6WyIxZjUxMCJdLGZuYW1lOiIxZjUxMCIsdWM6IjFmNTEwIixpc0Nhbm9uaWNhbDohMH0sIjprZXk6Ijp7dW5pY29kZTpbIjFmNTExIl0sZm5hbWU6IjFmNTExIix1YzoiMWY1MTEiLGlzQ2Fub25pY2FsOiEwfSwiOmJvbWI6Ijp7dW5pY29kZTpbIjFmNGEzIl0sZm5hbWU6IjFmNGEzIix1YzoiMWY0YTMiLGlzQ2Fub25pY2FsOiEwfSwiOmxvY2s6Ijp7dW5pY29kZTpbIjFmNTEyIl0sZm5hbWU6IjFmNTEyIix1YzoiMWY1MTIiLGlzQ2Fub25pY2FsOiEwfSwiOnVubG9jazoiOnt1bmljb2RlOlsiMWY1MTMiXSxmbmFtZToiMWY1MTMiLHVjOiIxZjUxMyIsaXNDYW5vbmljYWw6ITB9LCI6enp6OiI6e3VuaWNvZGU6WyIxZjRhNCJdLGZuYW1lOiIxZjRhNCIsdWM6IjFmNGE0Iixpc0Nhbm9uaWNhbDohMH0sIjpiZWxsOiI6e3VuaWNvZGU6WyIxZjUxNCJdLGZuYW1lOiIxZjUxNCIsdWM6IjFmNTE0Iixpc0Nhbm9uaWNhbDohMH0sIjpib29rbWFyazoiOnt1bmljb2RlOlsiMWY1MTYiXSxmbmFtZToiMWY1MTYiLHVjOiIxZjUxNiIsaXNDYW5vbmljYWw6ITB9LCI6Ym9vbToiOnt1bmljb2RlOlsiMWY0YTUiXSxmbmFtZToiMWY0YTUiLHVjOiIxZjRhNSIsaXNDYW5vbmljYWw6ITB9LCI6bGluazoiOnt1bmljb2RlOlsiMWY1MTciXSxmbmFtZToiMWY1MTciLHVjOiIxZjUxNyIsaXNDYW5vbmljYWw6ITB9LCI6cmFkaW9fYnV0dG9uOiI6e3VuaWNvZGU6WyIxZjUxOCJdLGZuYW1lOiIxZjUxOCIsdWM6IjFmNTE4Iixpc0Nhbm9uaWNhbDohMH0sIjpzd2VhdF9kcm9wczoiOnt1bmljb2RlOlsiMWY0YTYiXSxmbmFtZToiMWY0YTYiLHVjOiIxZjRhNiIsaXNDYW5vbmljYWw6ITB9LCI6YmFjazoiOnt1bmljb2RlOlsiMWY1MTkiXSxmbmFtZToiMWY1MTkiLHVjOiIxZjUxOSIsaXNDYW5vbmljYWw6ITB9LCI6ZW5kOiI6e3VuaWNvZGU6WyIxZjUxYSJdLGZuYW1lOiIxZjUxYSIsdWM6IjFmNTFhIixpc0Nhbm9uaWNhbDohMH0sIjpkcm9wbGV0OiI6e3VuaWNvZGU6WyIxZjRhNyJdLGZuYW1lOiIxZjRhNyIsdWM6IjFmNGE3Iixpc0Nhbm9uaWNhbDohMH0sIjpvbjoiOnt1bmljb2RlOlsiMWY1MWIiXSxmbmFtZToiMWY1MWIiLHVjOiIxZjUxYiIsaXNDYW5vbmljYWw6ITB9LCI6c29vbjoiOnt1bmljb2RlOlsiMWY1MWMiXSxmbmFtZToiMWY1MWMiLHVjOiIxZjUxYyIsaXNDYW5vbmljYWw6ITB9LCI6ZGFzaDoiOnt1bmljb2RlOlsiMWY0YTgiXSxmbmFtZToiMWY0YTgiLHVjOiIxZjRhOCIsaXNDYW5vbmljYWw6ITB9LCI6dG9wOiI6e3VuaWNvZGU6WyIxZjUxZCJdLGZuYW1lOiIxZjUxZCIsdWM6IjFmNTFkIixpc0Nhbm9uaWNhbDohMH0sIjp1bmRlcmFnZToiOnt1bmljb2RlOlsiMWY1MWUiXSxmbmFtZToiMWY1MWUiLHVjOiIxZjUxZSIsaXNDYW5vbmljYWw6ITB9LCI6cG9vcDoiOnt1bmljb2RlOlsiMWY0YTkiXSxmbmFtZToiMWY0YTkiLHVjOiIxZjRhOSIsaXNDYW5vbmljYWw6ITB9LCI6c2hpdDoiOnt1bmljb2RlOlsiMWY0YTkiXSxmbmFtZToiMWY0YTkiLHVjOiIxZjRhOSIsaXNDYW5vbmljYWw6ITF9LCI6aGFua2V5OiI6e3VuaWNvZGU6WyIxZjRhOSJdLGZuYW1lOiIxZjRhOSIsdWM6IjFmNGE5Iixpc0Nhbm9uaWNhbDohMX0sIjpwb286Ijp7dW5pY29kZTpbIjFmNGE5Il0sZm5hbWU6IjFmNGE5Iix1YzoiMWY0YTkiLGlzQ2Fub25pY2FsOiExfSwiOmtleWNhcF90ZW46Ijp7dW5pY29kZTpbIjFmNTFmIl0sZm5hbWU6IjFmNTFmIix1YzoiMWY1MWYiLGlzQ2Fub25pY2FsOiEwfSwiOm11c2NsZToiOnt1bmljb2RlOlsiMWY0YWEiXSxmbmFtZToiMWY0YWEiLHVjOiIxZjRhYSIsaXNDYW5vbmljYWw6ITB9LCI6Y2FwaXRhbF9hYmNkOiI6e3VuaWNvZGU6WyIxZjUyMCJdLGZuYW1lOiIxZjUyMCIsdWM6IjFmNTIwIixpc0Nhbm9uaWNhbDohMH0sIjphYmNkOiI6e3VuaWNvZGU6WyIxZjUyMSJdLGZuYW1lOiIxZjUyMSIsdWM6IjFmNTIxIixpc0Nhbm9uaWNhbDohMH0sIjpkaXp6eToiOnt1bmljb2RlOlsiMWY0YWIiXSxmbmFtZToiMWY0YWIiLHVjOiIxZjRhYiIsaXNDYW5vbmljYWw6ITB9LCI6MTIzNDoiOnt1bmljb2RlOlsiMWY1MjIiXSxmbmFtZToiMWY1MjIiLHVjOiIxZjUyMiIsaXNDYW5vbmljYWw6ITB9LCI6c3ltYm9sczoiOnt1bmljb2RlOlsiMWY1MjMiXSxmbmFtZToiMWY1MjMiLHVjOiIxZjUyMyIsaXNDYW5vbmljYWw6ITB9LCI6c3BlZWNoX2JhbGxvb246Ijp7dW5pY29kZTpbIjFmNGFjIl0sZm5hbWU6IjFmNGFjIix1YzoiMWY0YWMiLGlzQ2Fub25pY2FsOiEwfSwiOmFiYzoiOnt1bmljb2RlOlsiMWY1MjQiXSxmbmFtZToiMWY1MjQiLHVjOiIxZjUyNCIsaXNDYW5vbmljYWw6ITB9LCI6ZmlyZToiOnt1bmljb2RlOlsiMWY1MjUiXSxmbmFtZToiMWY1MjUiLHVjOiIxZjUyNSIsaXNDYW5vbmljYWw6ITB9LCI6ZmxhbWU6Ijp7dW5pY29kZTpbIjFmNTI1Il0sZm5hbWU6IjFmNTI1Iix1YzoiMWY1MjUiLGlzQ2Fub25pY2FsOiExfSwiOndoaXRlX2Zsb3dlcjoiOnt1bmljb2RlOlsiMWY0YWUiXSxmbmFtZToiMWY0YWUiLHVjOiIxZjRhZSIsaXNDYW5vbmljYWw6ITB9LCI6Zmxhc2hsaWdodDoiOnt1bmljb2RlOlsiMWY1MjYiXSxmbmFtZToiMWY1MjYiLHVjOiIxZjUyNiIsaXNDYW5vbmljYWw6ITB9LCI6d3JlbmNoOiI6e3VuaWNvZGU6WyIxZjUyNyJdLGZuYW1lOiIxZjUyNyIsdWM6IjFmNTI3Iixpc0Nhbm9uaWNhbDohMH0sIjoxMDA6Ijp7dW5pY29kZTpbIjFmNGFmIl0sZm5hbWU6IjFmNGFmIix1YzoiMWY0YWYiLGlzQ2Fub25pY2FsOiEwfSwiOmhhbW1lcjoiOnt1bmljb2RlOlsiMWY1MjgiXSxmbmFtZToiMWY1MjgiLHVjOiIxZjUyOCIsaXNDYW5vbmljYWw6ITB9LCI6bnV0X2FuZF9ib2x0OiI6e3VuaWNvZGU6WyIxZjUyOSJdLGZuYW1lOiIxZjUyOSIsdWM6IjFmNTI5Iixpc0Nhbm9uaWNhbDohMH0sIjptb25leWJhZzoiOnt1bmljb2RlOlsiMWY0YjAiXSxmbmFtZToiMWY0YjAiLHVjOiIxZjRiMCIsaXNDYW5vbmljYWw6ITB9LCI6a25pZmU6Ijp7dW5pY29kZTpbIjFmNTJhIl0sZm5hbWU6IjFmNTJhIix1YzoiMWY1MmEiLGlzQ2Fub25pY2FsOiEwfSwiOmd1bjoiOnt1bmljb2RlOlsiMWY1MmIiXSxmbmFtZToiMWY1MmIiLHVjOiIxZjUyYiIsaXNDYW5vbmljYWw6ITB9LCI6Y3VycmVuY3lfZXhjaGFuZ2U6Ijp7dW5pY29kZTpbIjFmNGIxIl0sZm5hbWU6IjFmNGIxIix1YzoiMWY0YjEiLGlzQ2Fub25pY2FsOiEwfSwiOmNyeXN0YWxfYmFsbDoiOnt1bmljb2RlOlsiMWY1MmUiXSxmbmFtZToiMWY1MmUiLHVjOiIxZjUyZSIsaXNDYW5vbmljYWw6ITB9LCI6aGVhdnlfZG9sbGFyX3NpZ246Ijp7dW5pY29kZTpbIjFmNGIyIl0sZm5hbWU6IjFmNGIyIix1YzoiMWY0YjIiLGlzQ2Fub25pY2FsOiEwfSwiOnNpeF9wb2ludGVkX3N0YXI6Ijp7dW5pY29kZTpbIjFmNTJmIl0sZm5hbWU6IjFmNTJmIix1YzoiMWY1MmYiLGlzQ2Fub25pY2FsOiEwfSwiOmNyZWRpdF9jYXJkOiI6e3VuaWNvZGU6WyIxZjRiMyJdLGZuYW1lOiIxZjRiMyIsdWM6IjFmNGIzIixpc0Nhbm9uaWNhbDohMH0sIjpiZWdpbm5lcjoiOnt1bmljb2RlOlsiMWY1MzAiXSxmbmFtZToiMWY1MzAiLHVjOiIxZjUzMCIsaXNDYW5vbmljYWw6ITB9LCI6dHJpZGVudDoiOnt1bmljb2RlOlsiMWY1MzEiXSxmbmFtZToiMWY1MzEiLHVjOiIxZjUzMSIsaXNDYW5vbmljYWw6ITB9LCI6eWVuOiI6e3VuaWNvZGU6WyIxZjRiNCJdLGZuYW1lOiIxZjRiNCIsdWM6IjFmNGI0Iixpc0Nhbm9uaWNhbDohMH0sIjpibGFja19zcXVhcmVfYnV0dG9uOiI6e3VuaWNvZGU6WyIxZjUzMiJdLGZuYW1lOiIxZjUzMiIsdWM6IjFmNTMyIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9zcXVhcmVfYnV0dG9uOiI6e3VuaWNvZGU6WyIxZjUzMyJdLGZuYW1lOiIxZjUzMyIsdWM6IjFmNTMzIixpc0Nhbm9uaWNhbDohMH0sIjpkb2xsYXI6Ijp7dW5pY29kZTpbIjFmNGI1Il0sZm5hbWU6IjFmNGI1Iix1YzoiMWY0YjUiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZF9jaXJjbGU6Ijp7dW5pY29kZTpbIjFmNTM0Il0sZm5hbWU6IjFmNTM0Iix1YzoiMWY1MzQiLGlzQ2Fub25pY2FsOiEwfSwiOmJsdWVfY2lyY2xlOiI6e3VuaWNvZGU6WyIxZjUzNSJdLGZuYW1lOiIxZjUzNSIsdWM6IjFmNTM1Iixpc0Nhbm9uaWNhbDohMH0sIjptb25leV93aXRoX3dpbmdzOiI6e3VuaWNvZGU6WyIxZjRiOCJdLGZuYW1lOiIxZjRiOCIsdWM6IjFmNGI4Iixpc0Nhbm9uaWNhbDohMH0sIjpsYXJnZV9vcmFuZ2VfZGlhbW9uZDoiOnt1bmljb2RlOlsiMWY1MzYiXSxmbmFtZToiMWY1MzYiLHVjOiIxZjUzNiIsaXNDYW5vbmljYWw6ITB9LCI6bGFyZ2VfYmx1ZV9kaWFtb25kOiI6e3VuaWNvZGU6WyIxZjUzNyJdLGZuYW1lOiIxZjUzNyIsdWM6IjFmNTM3Iixpc0Nhbm9uaWNhbDohMH0sIjpjaGFydDoiOnt1bmljb2RlOlsiMWY0YjkiXSxmbmFtZToiMWY0YjkiLHVjOiIxZjRiOSIsaXNDYW5vbmljYWw6ITB9LCI6c21hbGxfb3JhbmdlX2RpYW1vbmQ6Ijp7dW5pY29kZTpbIjFmNTM4Il0sZm5hbWU6IjFmNTM4Iix1YzoiMWY1MzgiLGlzQ2Fub25pY2FsOiEwfSwiOnNtYWxsX2JsdWVfZGlhbW9uZDoiOnt1bmljb2RlOlsiMWY1MzkiXSxmbmFtZToiMWY1MzkiLHVjOiIxZjUzOSIsaXNDYW5vbmljYWw6ITB9LCI6c2VhdDoiOnt1bmljb2RlOlsiMWY0YmEiXSxmbmFtZToiMWY0YmEiLHVjOiIxZjRiYSIsaXNDYW5vbmljYWw6ITB9LCI6c21hbGxfcmVkX3RyaWFuZ2xlOiI6e3VuaWNvZGU6WyIxZjUzYSJdLGZuYW1lOiIxZjUzYSIsdWM6IjFmNTNhIixpc0Nhbm9uaWNhbDohMH0sIjpzbWFsbF9yZWRfdHJpYW5nbGVfZG93bjoiOnt1bmljb2RlOlsiMWY1M2IiXSxmbmFtZToiMWY1M2IiLHVjOiIxZjUzYiIsaXNDYW5vbmljYWw6ITB9LCI6Y29tcHV0ZXI6Ijp7dW5pY29kZTpbIjFmNGJiIl0sZm5hbWU6IjFmNGJiIix1YzoiMWY0YmIiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X3VwX3NtYWxsOiI6e3VuaWNvZGU6WyIxZjUzYyJdLGZuYW1lOiIxZjUzYyIsdWM6IjFmNTNjIixpc0Nhbm9uaWNhbDohMH0sIjpicmllZmNhc2U6Ijp7dW5pY29kZTpbIjFmNGJjIl0sZm5hbWU6IjFmNGJjIix1YzoiMWY0YmMiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X2Rvd25fc21hbGw6Ijp7dW5pY29kZTpbIjFmNTNkIl0sZm5hbWU6IjFmNTNkIix1YzoiMWY1M2QiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMToiOnt1bmljb2RlOlsiMWY1NTAiXSxmbmFtZToiMWY1NTAiLHVjOiIxZjU1MCIsaXNDYW5vbmljYWw6ITB9LCI6bWluaWRpc2M6Ijp7dW5pY29kZTpbIjFmNGJkIl0sZm5hbWU6IjFmNGJkIix1YzoiMWY0YmQiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMjoiOnt1bmljb2RlOlsiMWY1NTEiXSxmbmFtZToiMWY1NTEiLHVjOiIxZjU1MSIsaXNDYW5vbmljYWw6ITB9LCI6ZmxvcHB5X2Rpc2s6Ijp7dW5pY29kZTpbIjFmNGJlIl0sZm5hbWU6IjFmNGJlIix1YzoiMWY0YmUiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMzoiOnt1bmljb2RlOlsiMWY1NTIiXSxmbmFtZToiMWY1NTIiLHVjOiIxZjU1MiIsaXNDYW5vbmljYWw6ITB9LCI6Y2Q6Ijp7dW5pY29kZTpbIjFmNGJmIl0sZm5hbWU6IjFmNGJmIix1YzoiMWY0YmYiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrNDoiOnt1bmljb2RlOlsiMWY1NTMiXSxmbmFtZToiMWY1NTMiLHVjOiIxZjU1MyIsaXNDYW5vbmljYWw6ITB9LCI6ZHZkOiI6e3VuaWNvZGU6WyIxZjRjMCJdLGZuYW1lOiIxZjRjMCIsdWM6IjFmNGMwIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazU6Ijp7dW5pY29kZTpbIjFmNTU0Il0sZm5hbWU6IjFmNTU0Iix1YzoiMWY1NTQiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrNjoiOnt1bmljb2RlOlsiMWY1NTUiXSxmbmFtZToiMWY1NTUiLHVjOiIxZjU1NSIsaXNDYW5vbmljYWw6ITB9LCI6ZmlsZV9mb2xkZXI6Ijp7dW5pY29kZTpbIjFmNGMxIl0sZm5hbWU6IjFmNGMxIix1YzoiMWY0YzEiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrNzoiOnt1bmljb2RlOlsiMWY1NTYiXSxmbmFtZToiMWY1NTYiLHVjOiIxZjU1NiIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2s4OiI6e3VuaWNvZGU6WyIxZjU1NyJdLGZuYW1lOiIxZjU1NyIsdWM6IjFmNTU3Iixpc0Nhbm9uaWNhbDohMH0sIjpvcGVuX2ZpbGVfZm9sZGVyOiI6e3VuaWNvZGU6WyIxZjRjMiJdLGZuYW1lOiIxZjRjMiIsdWM6IjFmNGMyIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazk6Ijp7dW5pY29kZTpbIjFmNTU4Il0sZm5hbWU6IjFmNTU4Iix1YzoiMWY1NTgiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMTA6Ijp7dW5pY29kZTpbIjFmNTU5Il0sZm5hbWU6IjFmNTU5Iix1YzoiMWY1NTkiLGlzQ2Fub25pY2FsOiEwfSwiOnBhZ2Vfd2l0aF9jdXJsOiI6e3VuaWNvZGU6WyIxZjRjMyJdLGZuYW1lOiIxZjRjMyIsdWM6IjFmNGMzIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazExOiI6e3VuaWNvZGU6WyIxZjU1YSJdLGZuYW1lOiIxZjU1YSIsdWM6IjFmNTVhIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazEyOiI6e3VuaWNvZGU6WyIxZjU1YiJdLGZuYW1lOiIxZjU1YiIsdWM6IjFmNTViIixpc0Nhbm9uaWNhbDohMH0sIjpwYWdlX2ZhY2luZ191cDoiOnt1bmljb2RlOlsiMWY0YzQiXSxmbmFtZToiMWY0YzQiLHVjOiIxZjRjNCIsaXNDYW5vbmljYWw6ITB9LCI6bW91bnRfZnVqaToiOnt1bmljb2RlOlsiMWY1ZmIiXSxmbmFtZToiMWY1ZmIiLHVjOiIxZjVmYiIsaXNDYW5vbmljYWw6ITB9LCI6dG9reW9fdG93ZXI6Ijp7dW5pY29kZTpbIjFmNWZjIl0sZm5hbWU6IjFmNWZjIix1YzoiMWY1ZmMiLGlzQ2Fub25pY2FsOiEwfSwiOmRhdGU6Ijp7dW5pY29kZTpbIjFmNGM1Il0sZm5hbWU6IjFmNGM1Iix1YzoiMWY0YzUiLGlzQ2Fub25pY2FsOiEwfSwiOnN0YXR1ZV9vZl9saWJlcnR5OiI6e3VuaWNvZGU6WyIxZjVmZCJdLGZuYW1lOiIxZjVmZCIsdWM6IjFmNWZkIixpc0Nhbm9uaWNhbDohMH0sIjpqYXBhbjoiOnt1bmljb2RlOlsiMWY1ZmUiXSxmbmFtZToiMWY1ZmUiLHVjOiIxZjVmZSIsaXNDYW5vbmljYWw6ITB9LCI6Y2FsZW5kYXI6Ijp7dW5pY29kZTpbIjFmNGM2Il0sZm5hbWU6IjFmNGM2Iix1YzoiMWY0YzYiLGlzQ2Fub25pY2FsOiEwfSwiOm1veWFpOiI6e3VuaWNvZGU6WyIxZjVmZiJdLGZuYW1lOiIxZjVmZiIsdWM6IjFmNWZmIixpc0Nhbm9uaWNhbDohMH0sIjpncmluOiI6e3VuaWNvZGU6WyIxZjYwMSJdLGZuYW1lOiIxZjYwMSIsdWM6IjFmNjAxIixpc0Nhbm9uaWNhbDohMH0sIjpqb3k6Ijp7dW5pY29kZTpbIjFmNjAyIl0sZm5hbWU6IjFmNjAyIix1YzoiMWY2MDIiLGlzQ2Fub25pY2FsOiEwfSwiOnNtaWxleToiOnt1bmljb2RlOlsiMWY2MDMiXSxmbmFtZToiMWY2MDMiLHVjOiIxZjYwMyIsaXNDYW5vbmljYWw6ITB9LCI6Y2hhcnRfd2l0aF91cHdhcmRzX3RyZW5kOiI6e3VuaWNvZGU6WyIxZjRjOCJdLGZuYW1lOiIxZjRjOCIsdWM6IjFmNGM4Iixpc0Nhbm9uaWNhbDohMH0sIjpzbWlsZToiOnt1bmljb2RlOlsiMWY2MDQiXSxmbmFtZToiMWY2MDQiLHVjOiIxZjYwNCIsaXNDYW5vbmljYWw6ITB9LCI6c3dlYXRfc21pbGU6Ijp7dW5pY29kZTpbIjFmNjA1Il0sZm5hbWU6IjFmNjA1Iix1YzoiMWY2MDUiLGlzQ2Fub25pY2FsOiEwfSwiOmNoYXJ0X3dpdGhfZG93bndhcmRzX3RyZW5kOiI6e3VuaWNvZGU6WyIxZjRjOSJdLGZuYW1lOiIxZjRjOSIsdWM6IjFmNGM5Iixpc0Nhbm9uaWNhbDohMH0sIjpsYXVnaGluZzoiOnt1bmljb2RlOlsiMWY2MDYiXSxmbmFtZToiMWY2MDYiLHVjOiIxZjYwNiIsaXNDYW5vbmljYWw6ITB9LCI6c2F0aXNmaWVkOiI6e3VuaWNvZGU6WyIxZjYwNiJdLGZuYW1lOiIxZjYwNiIsdWM6IjFmNjA2Iixpc0Nhbm9uaWNhbDohMX0sIjp3aW5rOiI6e3VuaWNvZGU6WyIxZjYwOSJdLGZuYW1lOiIxZjYwOSIsdWM6IjFmNjA5Iixpc0Nhbm9uaWNhbDohMH0sIjpiYXJfY2hhcnQ6Ijp7dW5pY29kZTpbIjFmNGNhIl0sZm5hbWU6IjFmNGNhIix1YzoiMWY0Y2EiLGlzQ2Fub25pY2FsOiEwfSwiOmJsdXNoOiI6e3VuaWNvZGU6WyIxZjYwYSJdLGZuYW1lOiIxZjYwYSIsdWM6IjFmNjBhIixpc0Nhbm9uaWNhbDohMH0sIjp5dW06Ijp7dW5pY29kZTpbIjFmNjBiIl0sZm5hbWU6IjFmNjBiIix1YzoiMWY2MGIiLGlzQ2Fub25pY2FsOiEwfSwiOmNsaXBib2FyZDoiOnt1bmljb2RlOlsiMWY0Y2IiXSxmbmFtZToiMWY0Y2IiLHVjOiIxZjRjYiIsaXNDYW5vbmljYWw6ITB9LCI6cmVsaWV2ZWQ6Ijp7dW5pY29kZTpbIjFmNjBjIl0sZm5hbWU6IjFmNjBjIix1YzoiMWY2MGMiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0X2V5ZXM6Ijp7dW5pY29kZTpbIjFmNjBkIl0sZm5hbWU6IjFmNjBkIix1YzoiMWY2MGQiLGlzQ2Fub25pY2FsOiEwfSwiOnB1c2hwaW46Ijp7dW5pY29kZTpbIjFmNGNjIl0sZm5hbWU6IjFmNGNjIix1YzoiMWY0Y2MiLGlzQ2Fub25pY2FsOiEwfSwiOnNtaXJrOiI6e3VuaWNvZGU6WyIxZjYwZiJdLGZuYW1lOiIxZjYwZiIsdWM6IjFmNjBmIixpc0Nhbm9uaWNhbDohMH0sIjp1bmFtdXNlZDoiOnt1bmljb2RlOlsiMWY2MTIiXSxmbmFtZToiMWY2MTIiLHVjOiIxZjYxMiIsaXNDYW5vbmljYWw6ITB9LCI6cm91bmRfcHVzaHBpbjoiOnt1bmljb2RlOlsiMWY0Y2QiXSxmbmFtZToiMWY0Y2QiLHVjOiIxZjRjZCIsaXNDYW5vbmljYWw6ITB9LCI6c3dlYXQ6Ijp7dW5pY29kZTpbIjFmNjEzIl0sZm5hbWU6IjFmNjEzIix1YzoiMWY2MTMiLGlzQ2Fub25pY2FsOiEwfSwiOnBlbnNpdmU6Ijp7dW5pY29kZTpbIjFmNjE0Il0sZm5hbWU6IjFmNjE0Iix1YzoiMWY2MTQiLGlzQ2Fub25pY2FsOiEwfSwiOnBhcGVyY2xpcDoiOnt1bmljb2RlOlsiMWY0Y2UiXSxmbmFtZToiMWY0Y2UiLHVjOiIxZjRjZSIsaXNDYW5vbmljYWw6ITB9LCI6Y29uZm91bmRlZDoiOnt1bmljb2RlOlsiMWY2MTYiXSxmbmFtZToiMWY2MTYiLHVjOiIxZjYxNiIsaXNDYW5vbmljYWw6ITB9LCI6a2lzc2luZ19oZWFydDoiOnt1bmljb2RlOlsiMWY2MTgiXSxmbmFtZToiMWY2MTgiLHVjOiIxZjYxOCIsaXNDYW5vbmljYWw6ITB9LCI6c3RyYWlnaHRfcnVsZXI6Ijp7dW5pY29kZTpbIjFmNGNmIl0sZm5hbWU6IjFmNGNmIix1YzoiMWY0Y2YiLGlzQ2Fub25pY2FsOiEwfSwiOmtpc3NpbmdfY2xvc2VkX2V5ZXM6Ijp7dW5pY29kZTpbIjFmNjFhIl0sZm5hbWU6IjFmNjFhIix1YzoiMWY2MWEiLGlzQ2Fub25pY2FsOiEwfSwiOnN0dWNrX291dF90b25ndWVfd2lua2luZ19leWU6Ijp7dW5pY29kZTpbIjFmNjFjIl0sZm5hbWU6IjFmNjFjIix1YzoiMWY2MWMiLGlzQ2Fub25pY2FsOiEwfSwiOnRyaWFuZ3VsYXJfcnVsZXI6Ijp7dW5pY29kZTpbIjFmNGQwIl0sZm5hbWU6IjFmNGQwIix1YzoiMWY0ZDAiLGlzQ2Fub25pY2FsOiEwfSwiOnN0dWNrX291dF90b25ndWVfY2xvc2VkX2V5ZXM6Ijp7dW5pY29kZTpbIjFmNjFkIl0sZm5hbWU6IjFmNjFkIix1YzoiMWY2MWQiLGlzQ2Fub25pY2FsOiEwfSwiOmRpc2FwcG9pbnRlZDoiOnt1bmljb2RlOlsiMWY2MWUiXSxmbmFtZToiMWY2MWUiLHVjOiIxZjYxZSIsaXNDYW5vbmljYWw6ITB9LCI6Ym9va21hcmtfdGFiczoiOnt1bmljb2RlOlsiMWY0ZDEiXSxmbmFtZToiMWY0ZDEiLHVjOiIxZjRkMSIsaXNDYW5vbmljYWw6ITB9LCI6YW5ncnk6Ijp7dW5pY29kZTpbIjFmNjIwIl0sZm5hbWU6IjFmNjIwIix1YzoiMWY2MjAiLGlzQ2Fub25pY2FsOiEwfSwiOnJhZ2U6Ijp7dW5pY29kZTpbIjFmNjIxIl0sZm5hbWU6IjFmNjIxIix1YzoiMWY2MjEiLGlzQ2Fub25pY2FsOiEwfSwiOmNyeToiOnt1bmljb2RlOlsiMWY2MjIiXSxmbmFtZToiMWY2MjIiLHVjOiIxZjYyMiIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc2V2ZXJlOiI6e3VuaWNvZGU6WyIxZjYyMyJdLGZuYW1lOiIxZjYyMyIsdWM6IjFmNjIzIixpc0Nhbm9uaWNhbDohMH0sIjp0cml1bXBoOiI6e3VuaWNvZGU6WyIxZjYyNCJdLGZuYW1lOiIxZjYyNCIsdWM6IjFmNjI0Iixpc0Nhbm9uaWNhbDohMH0sIjpkaXNhcHBvaW50ZWRfcmVsaWV2ZWQ6Ijp7dW5pY29kZTpbIjFmNjI1Il0sZm5hbWU6IjFmNjI1Iix1YzoiMWY2MjUiLGlzQ2Fub25pY2FsOiEwfSwiOmZlYXJmdWw6Ijp7dW5pY29kZTpbIjFmNjI4Il0sZm5hbWU6IjFmNjI4Iix1YzoiMWY2MjgiLGlzQ2Fub25pY2FsOiEwfSwiOndlYXJ5OiI6e3VuaWNvZGU6WyIxZjYyOSJdLGZuYW1lOiIxZjYyOSIsdWM6IjFmNjI5Iixpc0Nhbm9uaWNhbDohMH0sIjpzbGVlcHk6Ijp7dW5pY29kZTpbIjFmNjJhIl0sZm5hbWU6IjFmNjJhIix1YzoiMWY2MmEiLGlzQ2Fub25pY2FsOiEwfSwiOnRpcmVkX2ZhY2U6Ijp7dW5pY29kZTpbIjFmNjJiIl0sZm5hbWU6IjFmNjJiIix1YzoiMWY2MmIiLGlzQ2Fub25pY2FsOiEwfSwiOnNvYjoiOnt1bmljb2RlOlsiMWY2MmQiXSxmbmFtZToiMWY2MmQiLHVjOiIxZjYyZCIsaXNDYW5vbmljYWw6ITB9LCI6Y29sZF9zd2VhdDoiOnt1bmljb2RlOlsiMWY2MzAiXSxmbmFtZToiMWY2MzAiLHVjOiIxZjYzMCIsaXNDYW5vbmljYWw6ITB9LCI6c2NyZWFtOiI6e3VuaWNvZGU6WyIxZjYzMSJdLGZuYW1lOiIxZjYzMSIsdWM6IjFmNjMxIixpc0Nhbm9uaWNhbDohMH0sIjphc3RvbmlzaGVkOiI6e3VuaWNvZGU6WyIxZjYzMiJdLGZuYW1lOiIxZjYzMiIsdWM6IjFmNjMyIixpc0Nhbm9uaWNhbDohMH0sIjpmbHVzaGVkOiI6e3VuaWNvZGU6WyIxZjYzMyJdLGZuYW1lOiIxZjYzMyIsdWM6IjFmNjMzIixpc0Nhbm9uaWNhbDohMH0sIjpkaXp6eV9mYWNlOiI6e3VuaWNvZGU6WyIxZjYzNSJdLGZuYW1lOiIxZjYzNSIsdWM6IjFmNjM1Iixpc0Nhbm9uaWNhbDohMH0sIjptYXNrOiI6e3VuaWNvZGU6WyIxZjYzNyJdLGZuYW1lOiIxZjYzNyIsdWM6IjFmNjM3Iixpc0Nhbm9uaWNhbDohMH0sIjpzbWlsZV9jYXQ6Ijp7dW5pY29kZTpbIjFmNjM4Il0sZm5hbWU6IjFmNjM4Iix1YzoiMWY2MzgiLGlzQ2Fub25pY2FsOiEwfSwiOmpveV9jYXQ6Ijp7dW5pY29kZTpbIjFmNjM5Il0sZm5hbWU6IjFmNjM5Iix1YzoiMWY2MzkiLGlzQ2Fub25pY2FsOiEwfSwiOnNtaWxleV9jYXQ6Ijp7dW5pY29kZTpbIjFmNjNhIl0sZm5hbWU6IjFmNjNhIix1YzoiMWY2M2EiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXJ0X2V5ZXNfY2F0OiI6e3VuaWNvZGU6WyIxZjYzYiJdLGZuYW1lOiIxZjYzYiIsdWM6IjFmNjNiIixpc0Nhbm9uaWNhbDohMH0sIjpzbWlya19jYXQ6Ijp7dW5pY29kZTpbIjFmNjNjIl0sZm5hbWU6IjFmNjNjIix1YzoiMWY2M2MiLGlzQ2Fub25pY2FsOiEwfSwiOmtpc3NpbmdfY2F0OiI6e3VuaWNvZGU6WyIxZjYzZCJdLGZuYW1lOiIxZjYzZCIsdWM6IjFmNjNkIixpc0Nhbm9uaWNhbDohMH0sIjpwb3V0aW5nX2NhdDoiOnt1bmljb2RlOlsiMWY2M2UiXSxmbmFtZToiMWY2M2UiLHVjOiIxZjYzZSIsaXNDYW5vbmljYWw6ITB9LCI6Y3J5aW5nX2NhdF9mYWNlOiI6e3VuaWNvZGU6WyIxZjYzZiJdLGZuYW1lOiIxZjYzZiIsdWM6IjFmNjNmIixpc0Nhbm9uaWNhbDohMH0sIjpzY3JlYW1fY2F0OiI6e3VuaWNvZGU6WyIxZjY0MCJdLGZuYW1lOiIxZjY0MCIsdWM6IjFmNjQwIixpc0Nhbm9uaWNhbDohMH0sIjpub19nb29kOiI6e3VuaWNvZGU6WyIxZjY0NSJdLGZuYW1lOiIxZjY0NSIsdWM6IjFmNjQ1Iixpc0Nhbm9uaWNhbDohMH0sIjpva193b21hbjoiOnt1bmljb2RlOlsiMWY2NDYiXSxmbmFtZToiMWY2NDYiLHVjOiIxZjY0NiIsaXNDYW5vbmljYWw6ITB9LCI6Ym93OiI6e3VuaWNvZGU6WyIxZjY0NyJdLGZuYW1lOiIxZjY0NyIsdWM6IjFmNjQ3Iixpc0Nhbm9uaWNhbDohMH0sIjpzZWVfbm9fZXZpbDoiOnt1bmljb2RlOlsiMWY2NDgiXSxmbmFtZToiMWY2NDgiLHVjOiIxZjY0OCIsaXNDYW5vbmljYWw6ITB9LCI6aGVhcl9ub19ldmlsOiI6e3VuaWNvZGU6WyIxZjY0OSJdLGZuYW1lOiIxZjY0OSIsdWM6IjFmNjQ5Iixpc0Nhbm9uaWNhbDohMH0sIjpzcGVha19ub19ldmlsOiI6e3VuaWNvZGU6WyIxZjY0YSJdLGZuYW1lOiIxZjY0YSIsdWM6IjFmNjRhIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzaW5nX2hhbmQ6Ijp7dW5pY29kZTpbIjFmNjRiIl0sZm5hbWU6IjFmNjRiIix1YzoiMWY2NGIiLGlzQ2Fub25pY2FsOiEwfSwiOnJhaXNlZF9oYW5kczoiOnt1bmljb2RlOlsiMWY2NGMiXSxmbmFtZToiMWY2NGMiLHVjOiIxZjY0YyIsaXNDYW5vbmljYWw6ITB9LCI6cGVyc29uX2Zyb3duaW5nOiI6e3VuaWNvZGU6WyIxZjY0ZCJdLGZuYW1lOiIxZjY0ZCIsdWM6IjFmNjRkIixpc0Nhbm9uaWNhbDohMH0sIjpwZXJzb25fd2l0aF9wb3V0aW5nX2ZhY2U6Ijp7dW5pY29kZTpbIjFmNjRlIl0sZm5hbWU6IjFmNjRlIix1YzoiMWY2NGUiLGlzQ2Fub25pY2FsOiEwfSwiOnByYXk6Ijp7dW5pY29kZTpbIjFmNjRmIl0sZm5hbWU6IjFmNjRmIix1YzoiMWY2NGYiLGlzQ2Fub25pY2FsOiEwfSwiOnJvY2tldDoiOnt1bmljb2RlOlsiMWY2ODAiXSxmbmFtZToiMWY2ODAiLHVjOiIxZjY4MCIsaXNDYW5vbmljYWw6ITB9LCI6cmFpbHdheV9jYXI6Ijp7dW5pY29kZTpbIjFmNjgzIl0sZm5hbWU6IjFmNjgzIix1YzoiMWY2ODMiLGlzQ2Fub25pY2FsOiEwfSwiOmJ1bGxldHRyYWluX3NpZGU6Ijp7dW5pY29kZTpbIjFmNjg0Il0sZm5hbWU6IjFmNjg0Iix1YzoiMWY2ODQiLGlzQ2Fub25pY2FsOiEwfSwiOmJ1bGxldHRyYWluX2Zyb250OiI6e3VuaWNvZGU6WyIxZjY4NSJdLGZuYW1lOiIxZjY4NSIsdWM6IjFmNjg1Iixpc0Nhbm9uaWNhbDohMH0sIjptZXRybzoiOnt1bmljb2RlOlsiMWY2ODciXSxmbmFtZToiMWY2ODciLHVjOiIxZjY4NyIsaXNDYW5vbmljYWw6ITB9LCI6c3RhdGlvbjoiOnt1bmljb2RlOlsiMWY2ODkiXSxmbmFtZToiMWY2ODkiLHVjOiIxZjY4OSIsaXNDYW5vbmljYWw6ITB9LCI6YnVzOiI6e3VuaWNvZGU6WyIxZjY4YyJdLGZuYW1lOiIxZjY4YyIsdWM6IjFmNjhjIixpc0Nhbm9uaWNhbDohMH0sIjpidXNzdG9wOiI6e3VuaWNvZGU6WyIxZjY4ZiJdLGZuYW1lOiIxZjY4ZiIsdWM6IjFmNjhmIixpc0Nhbm9uaWNhbDohMH0sIjphbWJ1bGFuY2U6Ijp7dW5pY29kZTpbIjFmNjkxIl0sZm5hbWU6IjFmNjkxIix1YzoiMWY2OTEiLGlzQ2Fub25pY2FsOiEwfSwiOmZpcmVfZW5naW5lOiI6e3VuaWNvZGU6WyIxZjY5MiJdLGZuYW1lOiIxZjY5MiIsdWM6IjFmNjkyIixpc0Nhbm9uaWNhbDohMH0sIjpwb2xpY2VfY2FyOiI6e3VuaWNvZGU6WyIxZjY5MyJdLGZuYW1lOiIxZjY5MyIsdWM6IjFmNjkzIixpc0Nhbm9uaWNhbDohMH0sIjp0YXhpOiI6e3VuaWNvZGU6WyIxZjY5NSJdLGZuYW1lOiIxZjY5NSIsdWM6IjFmNjk1Iixpc0Nhbm9uaWNhbDohMH0sIjpyZWRfY2FyOiI6e3VuaWNvZGU6WyIxZjY5NyJdLGZuYW1lOiIxZjY5NyIsdWM6IjFmNjk3Iixpc0Nhbm9uaWNhbDohMH0sIjpibHVlX2NhcjoiOnt1bmljb2RlOlsiMWY2OTkiXSxmbmFtZToiMWY2OTkiLHVjOiIxZjY5OSIsaXNDYW5vbmljYWw6ITB9LCI6dHJ1Y2s6Ijp7dW5pY29kZTpbIjFmNjlhIl0sZm5hbWU6IjFmNjlhIix1YzoiMWY2OWEiLGlzQ2Fub25pY2FsOiEwfSwiOnNoaXA6Ijp7dW5pY29kZTpbIjFmNmEyIl0sZm5hbWU6IjFmNmEyIix1YzoiMWY2YTIiLGlzQ2Fub25pY2FsOiEwfSwiOnNwZWVkYm9hdDoiOnt1bmljb2RlOlsiMWY2YTQiXSxmbmFtZToiMWY2YTQiLHVjOiIxZjZhNCIsaXNDYW5vbmljYWw6ITB9LCI6dHJhZmZpY19saWdodDoiOnt1bmljb2RlOlsiMWY2YTUiXSxmbmFtZToiMWY2YTUiLHVjOiIxZjZhNSIsaXNDYW5vbmljYWw6ITB9LCI6Y29uc3RydWN0aW9uOiI6e3VuaWNvZGU6WyIxZjZhNyJdLGZuYW1lOiIxZjZhNyIsdWM6IjFmNmE3Iixpc0Nhbm9uaWNhbDohMH0sIjpyb3RhdGluZ19saWdodDoiOnt1bmljb2RlOlsiMWY2YTgiXSxmbmFtZToiMWY2YTgiLHVjOiIxZjZhOCIsaXNDYW5vbmljYWw6ITB9LCI6dHJpYW5ndWxhcl9mbGFnX29uX3Bvc3Q6Ijp7dW5pY29kZTpbIjFmNmE5Il0sZm5hbWU6IjFmNmE5Iix1YzoiMWY2YTkiLGlzQ2Fub25pY2FsOiEwfSwiOmRvb3I6Ijp7dW5pY29kZTpbIjFmNmFhIl0sZm5hbWU6IjFmNmFhIix1YzoiMWY2YWEiLGlzQ2Fub25pY2FsOiEwfSwiOm5vX2VudHJ5X3NpZ246Ijp7dW5pY29kZTpbIjFmNmFiIl0sZm5hbWU6IjFmNmFiIix1YzoiMWY2YWIiLGlzQ2Fub25pY2FsOiEwfSwiOnNtb2tpbmc6Ijp7dW5pY29kZTpbIjFmNmFjIl0sZm5hbWU6IjFmNmFjIix1YzoiMWY2YWMiLGlzQ2Fub25pY2FsOiEwfSwiOm5vX3Ntb2tpbmc6Ijp7dW5pY29kZTpbIjFmNmFkIl0sZm5hbWU6IjFmNmFkIix1YzoiMWY2YWQiLGlzQ2Fub25pY2FsOiEwfSwiOmJpa2U6Ijp7dW5pY29kZTpbIjFmNmIyIl0sZm5hbWU6IjFmNmIyIix1YzoiMWY2YjIiLGlzQ2Fub25pY2FsOiEwfSwiOndhbGtpbmc6Ijp7dW5pY29kZTpbIjFmNmI2Il0sZm5hbWU6IjFmNmI2Iix1YzoiMWY2YjYiLGlzQ2Fub25pY2FsOiEwfSwiOm1lbnM6Ijp7dW5pY29kZTpbIjFmNmI5Il0sZm5hbWU6IjFmNmI5Iix1YzoiMWY2YjkiLGlzQ2Fub25pY2FsOiEwfSwiOndvbWVuczoiOnt1bmljb2RlOlsiMWY2YmEiXSxmbmFtZToiMWY2YmEiLHVjOiIxZjZiYSIsaXNDYW5vbmljYWw6ITB9LCI6cmVzdHJvb206Ijp7dW5pY29kZTpbIjFmNmJiIl0sZm5hbWU6IjFmNmJiIix1YzoiMWY2YmIiLGlzQ2Fub25pY2FsOiEwfSwiOmJhYnlfc3ltYm9sOiI6e3VuaWNvZGU6WyIxZjZiYyJdLGZuYW1lOiIxZjZiYyIsdWM6IjFmNmJjIixpc0Nhbm9uaWNhbDohMH0sIjp0b2lsZXQ6Ijp7dW5pY29kZTpbIjFmNmJkIl0sZm5hbWU6IjFmNmJkIix1YzoiMWY2YmQiLGlzQ2Fub25pY2FsOiEwfSwiOndjOiI6e3VuaWNvZGU6WyIxZjZiZSJdLGZuYW1lOiIxZjZiZSIsdWM6IjFmNmJlIixpc0Nhbm9uaWNhbDohMH0sIjpiYXRoOiI6e3VuaWNvZGU6WyIxZjZjMCJdLGZuYW1lOiIxZjZjMCIsdWM6IjFmNmMwIixpc0Nhbm9uaWNhbDohMH0sIjptZXRhbDoiOnt1bmljb2RlOlsiMWY5MTgiXSxmbmFtZToiMWY5MTgiLHVjOiIxZjkxOCIsaXNDYW5vbmljYWw6ITB9LCI6c2lnbl9vZl90aGVfaG9ybnM6Ijp7dW5pY29kZTpbIjFmOTE4Il0sZm5hbWU6IjFmOTE4Iix1YzoiMWY5MTgiLGlzQ2Fub25pY2FsOiExfSwiOmdyaW5uaW5nOiI6e3VuaWNvZGU6WyIxZjYwMCJdLGZuYW1lOiIxZjYwMCIsdWM6IjFmNjAwIixpc0Nhbm9uaWNhbDohMH0sIjppbm5vY2VudDoiOnt1bmljb2RlOlsiMWY2MDciXSxmbmFtZToiMWY2MDciLHVjOiIxZjYwNyIsaXNDYW5vbmljYWw6ITB9LCI6c21pbGluZ19pbXA6Ijp7dW5pY29kZTpbIjFmNjA4Il0sZm5hbWU6IjFmNjA4Iix1YzoiMWY2MDgiLGlzQ2Fub25pY2FsOiEwfSwiOnN1bmdsYXNzZXM6Ijp7dW5pY29kZTpbIjFmNjBlIl0sZm5hbWU6IjFmNjBlIix1YzoiMWY2MGUiLGlzQ2Fub25pY2FsOiEwfSwiOm5ldXRyYWxfZmFjZToiOnt1bmljb2RlOlsiMWY2MTAiXSxmbmFtZToiMWY2MTAiLHVjOiIxZjYxMCIsaXNDYW5vbmljYWw6ITB9LCI6ZXhwcmVzc2lvbmxlc3M6Ijp7dW5pY29kZTpbIjFmNjExIl0sZm5hbWU6IjFmNjExIix1YzoiMWY2MTEiLGlzQ2Fub25pY2FsOiEwfSwiOmNvbmZ1c2VkOiI6e3VuaWNvZGU6WyIxZjYxNSJdLGZuYW1lOiIxZjYxNSIsdWM6IjFmNjE1Iixpc0Nhbm9uaWNhbDohMH0sIjpraXNzaW5nOiI6e3VuaWNvZGU6WyIxZjYxNyJdLGZuYW1lOiIxZjYxNyIsdWM6IjFmNjE3Iixpc0Nhbm9uaWNhbDohMH0sIjpraXNzaW5nX3NtaWxpbmdfZXllczoiOnt1bmljb2RlOlsiMWY2MTkiXSxmbmFtZToiMWY2MTkiLHVjOiIxZjYxOSIsaXNDYW5vbmljYWw6ITB9LCI6c3R1Y2tfb3V0X3Rvbmd1ZToiOnt1bmljb2RlOlsiMWY2MWIiXSxmbmFtZToiMWY2MWIiLHVjOiIxZjYxYiIsaXNDYW5vbmljYWw6ITB9LCI6d29ycmllZDoiOnt1bmljb2RlOlsiMWY2MWYiXSxmbmFtZToiMWY2MWYiLHVjOiIxZjYxZiIsaXNDYW5vbmljYWw6ITB9LCI6ZnJvd25pbmc6Ijp7dW5pY29kZTpbIjFmNjI2Il0sZm5hbWU6IjFmNjI2Iix1YzoiMWY2MjYiLGlzQ2Fub25pY2FsOiEwfSwiOmFuZ3Vpc2hlZDoiOnt1bmljb2RlOlsiMWY2MjciXSxmbmFtZToiMWY2MjciLHVjOiIxZjYyNyIsaXNDYW5vbmljYWw6ITB9LCI6Z3JpbWFjaW5nOiI6e3VuaWNvZGU6WyIxZjYyYyJdLGZuYW1lOiIxZjYyYyIsdWM6IjFmNjJjIixpc0Nhbm9uaWNhbDohMH0sIjpvcGVuX21vdXRoOiI6e3VuaWNvZGU6WyIxZjYyZSJdLGZuYW1lOiIxZjYyZSIsdWM6IjFmNjJlIixpc0Nhbm9uaWNhbDohMH0sIjpodXNoZWQ6Ijp7dW5pY29kZTpbIjFmNjJmIl0sZm5hbWU6IjFmNjJmIix1YzoiMWY2MmYiLGlzQ2Fub25pY2FsOiEwfSwiOnNsZWVwaW5nOiI6e3VuaWNvZGU6WyIxZjYzNCJdLGZuYW1lOiIxZjYzNCIsdWM6IjFmNjM0Iixpc0Nhbm9uaWNhbDohMH0sIjpub19tb3V0aDoiOnt1bmljb2RlOlsiMWY2MzYiXSxmbmFtZToiMWY2MzYiLHVjOiIxZjYzNiIsaXNDYW5vbmljYWw6ITB9LCI6aGVsaWNvcHRlcjoiOnt1bmljb2RlOlsiMWY2ODEiXSxmbmFtZToiMWY2ODEiLHVjOiIxZjY4MSIsaXNDYW5vbmljYWw6ITB9LCI6c3RlYW1fbG9jb21vdGl2ZToiOnt1bmljb2RlOlsiMWY2ODIiXSxmbmFtZToiMWY2ODIiLHVjOiIxZjY4MiIsaXNDYW5vbmljYWw6ITB9LCI6dHJhaW4yOiI6e3VuaWNvZGU6WyIxZjY4NiJdLGZuYW1lOiIxZjY4NiIsdWM6IjFmNjg2Iixpc0Nhbm9uaWNhbDohMH0sIjpsaWdodF9yYWlsOiI6e3VuaWNvZGU6WyIxZjY4OCJdLGZuYW1lOiIxZjY4OCIsdWM6IjFmNjg4Iixpc0Nhbm9uaWNhbDohMH0sIjp0cmFtOiI6e3VuaWNvZGU6WyIxZjY4YSJdLGZuYW1lOiIxZjY4YSIsdWM6IjFmNjhhIixpc0Nhbm9uaWNhbDohMH0sIjpvbmNvbWluZ19idXM6Ijp7dW5pY29kZTpbIjFmNjhkIl0sZm5hbWU6IjFmNjhkIix1YzoiMWY2OGQiLGlzQ2Fub25pY2FsOiEwfSwiOnRyb2xsZXlidXM6Ijp7dW5pY29kZTpbIjFmNjhlIl0sZm5hbWU6IjFmNjhlIix1YzoiMWY2OGUiLGlzQ2Fub25pY2FsOiEwfSwiOm1pbmlidXM6Ijp7dW5pY29kZTpbIjFmNjkwIl0sZm5hbWU6IjFmNjkwIix1YzoiMWY2OTAiLGlzQ2Fub25pY2FsOiEwfSwiOm9uY29taW5nX3BvbGljZV9jYXI6Ijp7dW5pY29kZTpbIjFmNjk0Il0sZm5hbWU6IjFmNjk0Iix1YzoiMWY2OTQiLGlzQ2Fub25pY2FsOiEwfSwiOm9uY29taW5nX3RheGk6Ijp7dW5pY29kZTpbIjFmNjk2Il0sZm5hbWU6IjFmNjk2Iix1YzoiMWY2OTYiLGlzQ2Fub25pY2FsOiEwfSwiOm9uY29taW5nX2F1dG9tb2JpbGU6Ijp7dW5pY29kZTpbIjFmNjk4Il0sZm5hbWU6IjFmNjk4Iix1YzoiMWY2OTgiLGlzQ2Fub25pY2FsOiEwfSwiOmFydGljdWxhdGVkX2xvcnJ5OiI6e3VuaWNvZGU6WyIxZjY5YiJdLGZuYW1lOiIxZjY5YiIsdWM6IjFmNjliIixpc0Nhbm9uaWNhbDohMH0sIjp0cmFjdG9yOiI6e3VuaWNvZGU6WyIxZjY5YyJdLGZuYW1lOiIxZjY5YyIsdWM6IjFmNjljIixpc0Nhbm9uaWNhbDohMH0sIjptb25vcmFpbDoiOnt1bmljb2RlOlsiMWY2OWQiXSxmbmFtZToiMWY2OWQiLHVjOiIxZjY5ZCIsaXNDYW5vbmljYWw6ITB9LCI6bW91bnRhaW5fcmFpbHdheToiOnt1bmljb2RlOlsiMWY2OWUiXSxmbmFtZToiMWY2OWUiLHVjOiIxZjY5ZSIsaXNDYW5vbmljYWw6ITB9LCI6c3VzcGVuc2lvbl9yYWlsd2F5OiI6e3VuaWNvZGU6WyIxZjY5ZiJdLGZuYW1lOiIxZjY5ZiIsdWM6IjFmNjlmIixpc0Nhbm9uaWNhbDohMH0sIjptb3VudGFpbl9jYWJsZXdheToiOnt1bmljb2RlOlsiMWY2YTAiXSxmbmFtZToiMWY2YTAiLHVjOiIxZjZhMCIsaXNDYW5vbmljYWw6ITB9LCI6YWVyaWFsX3RyYW13YXk6Ijp7dW5pY29kZTpbIjFmNmExIl0sZm5hbWU6IjFmNmExIix1YzoiMWY2YTEiLGlzQ2Fub25pY2FsOiEwfSwiOnJvd2JvYXQ6Ijp7dW5pY29kZTpbIjFmNmEzIl0sZm5hbWU6IjFmNmEzIix1YzoiMWY2YTMiLGlzQ2Fub25pY2FsOiEwfSwiOnZlcnRpY2FsX3RyYWZmaWNfbGlnaHQ6Ijp7dW5pY29kZTpbIjFmNmE2Il0sZm5hbWU6IjFmNmE2Iix1YzoiMWY2YTYiLGlzQ2Fub25pY2FsOiEwfSwiOnB1dF9saXR0ZXJfaW5faXRzX3BsYWNlOiI6e3VuaWNvZGU6WyIxZjZhZSJdLGZuYW1lOiIxZjZhZSIsdWM6IjFmNmFlIixpc0Nhbm9uaWNhbDohMH0sIjpkb19ub3RfbGl0dGVyOiI6e3VuaWNvZGU6WyIxZjZhZiJdLGZuYW1lOiIxZjZhZiIsdWM6IjFmNmFmIixpc0Nhbm9uaWNhbDohMH0sIjpwb3RhYmxlX3dhdGVyOiI6e3VuaWNvZGU6WyIxZjZiMCJdLGZuYW1lOiIxZjZiMCIsdWM6IjFmNmIwIixpc0Nhbm9uaWNhbDohMH0sIjpub24tcG90YWJsZV93YXRlcjoiOnt1bmljb2RlOlsiMWY2YjEiXSxmbmFtZToiMWY2YjEiLHVjOiIxZjZiMSIsaXNDYW5vbmljYWw6ITB9LCI6bm9fYmljeWNsZXM6Ijp7dW5pY29kZTpbIjFmNmIzIl0sZm5hbWU6IjFmNmIzIix1YzoiMWY2YjMiLGlzQ2Fub25pY2FsOiEwfSwiOmJpY3ljbGlzdDoiOnt1bmljb2RlOlsiMWY2YjQiXSxmbmFtZToiMWY2YjQiLHVjOiIxZjZiNCIsaXNDYW5vbmljYWw6ITB9LCI6bW91bnRhaW5fYmljeWNsaXN0OiI6e3VuaWNvZGU6WyIxZjZiNSJdLGZuYW1lOiIxZjZiNSIsdWM6IjFmNmI1Iixpc0Nhbm9uaWNhbDohMH0sIjpub19wZWRlc3RyaWFuczoiOnt1bmljb2RlOlsiMWY2YjciXSxmbmFtZToiMWY2YjciLHVjOiIxZjZiNyIsaXNDYW5vbmljYWw6ITB9LCI6Y2hpbGRyZW5fY3Jvc3Npbmc6Ijp7dW5pY29kZTpbIjFmNmI4Il0sZm5hbWU6IjFmNmI4Iix1YzoiMWY2YjgiLGlzQ2Fub25pY2FsOiEwfSwiOnNob3dlcjoiOnt1bmljb2RlOlsiMWY2YmYiXSxmbmFtZToiMWY2YmYiLHVjOiIxZjZiZiIsaXNDYW5vbmljYWw6ITB9LCI6YmF0aHR1YjoiOnt1bmljb2RlOlsiMWY2YzEiXSxmbmFtZToiMWY2YzEiLHVjOiIxZjZjMSIsaXNDYW5vbmljYWw6ITB9LCI6cGFzc3BvcnRfY29udHJvbDoiOnt1bmljb2RlOlsiMWY2YzIiXSxmbmFtZToiMWY2YzIiLHVjOiIxZjZjMiIsaXNDYW5vbmljYWw6ITB9LCI6Y3VzdG9tczoiOnt1bmljb2RlOlsiMWY2YzMiXSxmbmFtZToiMWY2YzMiLHVjOiIxZjZjMyIsaXNDYW5vbmljYWw6ITB9LCI6YmFnZ2FnZV9jbGFpbToiOnt1bmljb2RlOlsiMWY2YzQiXSxmbmFtZToiMWY2YzQiLHVjOiIxZjZjNCIsaXNDYW5vbmljYWw6ITB9LCI6bGVmdF9sdWdnYWdlOiI6e3VuaWNvZGU6WyIxZjZjNSJdLGZuYW1lOiIxZjZjNSIsdWM6IjFmNmM1Iixpc0Nhbm9uaWNhbDohMH0sIjplYXJ0aF9hZnJpY2E6Ijp7dW5pY29kZTpbIjFmMzBkIl0sZm5hbWU6IjFmMzBkIix1YzoiMWYzMGQiLGlzQ2Fub25pY2FsOiEwfSwiOmVhcnRoX2FtZXJpY2FzOiI6e3VuaWNvZGU6WyIxZjMwZSJdLGZuYW1lOiIxZjMwZSIsdWM6IjFmMzBlIixpc0Nhbm9uaWNhbDohMH0sIjpnbG9iZV93aXRoX21lcmlkaWFuczoiOnt1bmljb2RlOlsiMWYzMTAiXSxmbmFtZToiMWYzMTAiLHVjOiIxZjMxMCIsaXNDYW5vbmljYWw6ITB9LCI6d2F4aW5nX2NyZXNjZW50X21vb246Ijp7dW5pY29kZTpbIjFmMzEyIl0sZm5hbWU6IjFmMzEyIix1YzoiMWYzMTIiLGlzQ2Fub25pY2FsOiEwfSwiOndhbmluZ19naWJib3VzX21vb246Ijp7dW5pY29kZTpbIjFmMzE2Il0sZm5hbWU6IjFmMzE2Iix1YzoiMWYzMTYiLGlzQ2Fub25pY2FsOiEwfSwiOmxhc3RfcXVhcnRlcl9tb29uOiI6e3VuaWNvZGU6WyIxZjMxNyJdLGZuYW1lOiIxZjMxNyIsdWM6IjFmMzE3Iixpc0Nhbm9uaWNhbDohMH0sIjp3YW5pbmdfY3Jlc2NlbnRfbW9vbjoiOnt1bmljb2RlOlsiMWYzMTgiXSxmbmFtZToiMWYzMTgiLHVjOiIxZjMxOCIsaXNDYW5vbmljYWw6ITB9LCI6bmV3X21vb25fd2l0aF9mYWNlOiI6e3VuaWNvZGU6WyIxZjMxYSJdLGZuYW1lOiIxZjMxYSIsdWM6IjFmMzFhIixpc0Nhbm9uaWNhbDohMH0sIjpsYXN0X3F1YXJ0ZXJfbW9vbl93aXRoX2ZhY2U6Ijp7dW5pY29kZTpbIjFmMzFjIl0sZm5hbWU6IjFmMzFjIix1YzoiMWYzMWMiLGlzQ2Fub25pY2FsOiEwfSwiOmZ1bGxfbW9vbl93aXRoX2ZhY2U6Ijp7dW5pY29kZTpbIjFmMzFkIl0sZm5hbWU6IjFmMzFkIix1YzoiMWYzMWQiLGlzQ2Fub25pY2FsOiEwfSwiOnN1bl93aXRoX2ZhY2U6Ijp7dW5pY29kZTpbIjFmMzFlIl0sZm5hbWU6IjFmMzFlIix1YzoiMWYzMWUiLGlzQ2Fub25pY2FsOiEwfSwiOmV2ZXJncmVlbl90cmVlOiI6e3VuaWNvZGU6WyIxZjMzMiJdLGZuYW1lOiIxZjMzMiIsdWM6IjFmMzMyIixpc0Nhbm9uaWNhbDohMH0sIjpkZWNpZHVvdXNfdHJlZToiOnt1bmljb2RlOlsiMWYzMzMiXSxmbmFtZToiMWYzMzMiLHVjOiIxZjMzMyIsaXNDYW5vbmljYWw6ITB9LCI6bGVtb246Ijp7dW5pY29kZTpbIjFmMzRiIl0sZm5hbWU6IjFmMzRiIix1YzoiMWYzNGIiLGlzQ2Fub25pY2FsOiEwfSwiOnBlYXI6Ijp7dW5pY29kZTpbIjFmMzUwIl0sZm5hbWU6IjFmMzUwIix1YzoiMWYzNTAiLGlzQ2Fub25pY2FsOiEwfSwiOmJhYnlfYm90dGxlOiI6e3VuaWNvZGU6WyIxZjM3YyJdLGZuYW1lOiIxZjM3YyIsdWM6IjFmMzdjIixpc0Nhbm9uaWNhbDohMH0sIjpob3JzZV9yYWNpbmc6Ijp7dW5pY29kZTpbIjFmM2M3Il0sZm5hbWU6IjFmM2M3Iix1YzoiMWYzYzciLGlzQ2Fub25pY2FsOiEwfSwiOnJ1Z2J5X2Zvb3RiYWxsOiI6e3VuaWNvZGU6WyIxZjNjOSJdLGZuYW1lOiIxZjNjOSIsdWM6IjFmM2M5Iixpc0Nhbm9uaWNhbDohMH0sIjpldXJvcGVhbl9wb3N0X29mZmljZToiOnt1bmljb2RlOlsiMWYzZTQiXSxmbmFtZToiMWYzZTQiLHVjOiIxZjNlNCIsaXNDYW5vbmljYWw6ITB9LCI6cmF0OiI6e3VuaWNvZGU6WyIxZjQwMCJdLGZuYW1lOiIxZjQwMCIsdWM6IjFmNDAwIixpc0Nhbm9uaWNhbDohMH0sIjptb3VzZTI6Ijp7dW5pY29kZTpbIjFmNDAxIl0sZm5hbWU6IjFmNDAxIix1YzoiMWY0MDEiLGlzQ2Fub25pY2FsOiEwfSwiOm94OiI6e3VuaWNvZGU6WyIxZjQwMiJdLGZuYW1lOiIxZjQwMiIsdWM6IjFmNDAyIixpc0Nhbm9uaWNhbDohMH0sIjp3YXRlcl9idWZmYWxvOiI6e3VuaWNvZGU6WyIxZjQwMyJdLGZuYW1lOiIxZjQwMyIsdWM6IjFmNDAzIixpc0Nhbm9uaWNhbDohMH0sIjpjb3cyOiI6e3VuaWNvZGU6WyIxZjQwNCJdLGZuYW1lOiIxZjQwNCIsdWM6IjFmNDA0Iixpc0Nhbm9uaWNhbDohMH0sIjp0aWdlcjI6Ijp7dW5pY29kZTpbIjFmNDA1Il0sZm5hbWU6IjFmNDA1Iix1YzoiMWY0MDUiLGlzQ2Fub25pY2FsOiEwfSwiOmxlb3BhcmQ6Ijp7dW5pY29kZTpbIjFmNDA2Il0sZm5hbWU6IjFmNDA2Iix1YzoiMWY0MDYiLGlzQ2Fub25pY2FsOiEwfSwiOnJhYmJpdDI6Ijp7dW5pY29kZTpbIjFmNDA3Il0sZm5hbWU6IjFmNDA3Iix1YzoiMWY0MDciLGlzQ2Fub25pY2FsOiEwfSwiOmNhdDI6Ijp7dW5pY29kZTpbIjFmNDA4Il0sZm5hbWU6IjFmNDA4Iix1YzoiMWY0MDgiLGlzQ2Fub25pY2FsOiEwfSwiOmRyYWdvbjoiOnt1bmljb2RlOlsiMWY0MDkiXSxmbmFtZToiMWY0MDkiLHVjOiIxZjQwOSIsaXNDYW5vbmljYWw6ITB9LCI6Y3JvY29kaWxlOiI6e3VuaWNvZGU6WyIxZjQwYSJdLGZuYW1lOiIxZjQwYSIsdWM6IjFmNDBhIixpc0Nhbm9uaWNhbDohMH0sIjp3aGFsZTI6Ijp7dW5pY29kZTpbIjFmNDBiIl0sZm5hbWU6IjFmNDBiIix1YzoiMWY0MGIiLGlzQ2Fub25pY2FsOiEwfSwiOnJhbToiOnt1bmljb2RlOlsiMWY0MGYiXSxmbmFtZToiMWY0MGYiLHVjOiIxZjQwZiIsaXNDYW5vbmljYWw6ITB9LCI6Z29hdDoiOnt1bmljb2RlOlsiMWY0MTAiXSxmbmFtZToiMWY0MTAiLHVjOiIxZjQxMCIsaXNDYW5vbmljYWw6ITB9LCI6cm9vc3RlcjoiOnt1bmljb2RlOlsiMWY0MTMiXSxmbmFtZToiMWY0MTMiLHVjOiIxZjQxMyIsaXNDYW5vbmljYWw6ITB9LCI6ZG9nMjoiOnt1bmljb2RlOlsiMWY0MTUiXSxmbmFtZToiMWY0MTUiLHVjOiIxZjQxNSIsaXNDYW5vbmljYWw6ITB9LCI6cGlnMjoiOnt1bmljb2RlOlsiMWY0MTYiXSxmbmFtZToiMWY0MTYiLHVjOiIxZjQxNiIsaXNDYW5vbmljYWw6ITB9LCI6ZHJvbWVkYXJ5X2NhbWVsOiI6e3VuaWNvZGU6WyIxZjQyYSJdLGZuYW1lOiIxZjQyYSIsdWM6IjFmNDJhIixpc0Nhbm9uaWNhbDohMH0sIjpidXN0c19pbl9zaWxob3VldHRlOiI6e3VuaWNvZGU6WyIxZjQ2NSJdLGZuYW1lOiIxZjQ2NSIsdWM6IjFmNDY1Iixpc0Nhbm9uaWNhbDohMH0sIjp0d29fbWVuX2hvbGRpbmdfaGFuZHM6Ijp7dW5pY29kZTpbIjFmNDZjIl0sZm5hbWU6IjFmNDZjIix1YzoiMWY0NmMiLGlzQ2Fub25pY2FsOiEwfSwiOnR3b193b21lbl9ob2xkaW5nX2hhbmRzOiI6e3VuaWNvZGU6WyIxZjQ2ZCJdLGZuYW1lOiIxZjQ2ZCIsdWM6IjFmNDZkIixpc0Nhbm9uaWNhbDohMH0sIjp0aG91Z2h0X2JhbGxvb246Ijp7dW5pY29kZTpbIjFmNGFkIl0sZm5hbWU6IjFmNGFkIix1YzoiMWY0YWQiLGlzQ2Fub25pY2FsOiEwfSwiOmV1cm86Ijp7dW5pY29kZTpbIjFmNGI2Il0sZm5hbWU6IjFmNGI2Iix1YzoiMWY0YjYiLGlzQ2Fub25pY2FsOiEwfSwiOnBvdW5kOiI6e3VuaWNvZGU6WyIxZjRiNyJdLGZuYW1lOiIxZjRiNyIsdWM6IjFmNGI3Iixpc0Nhbm9uaWNhbDohMH0sIjptYWlsYm94X3dpdGhfbWFpbDoiOnt1bmljb2RlOlsiMWY0ZWMiXSxmbmFtZToiMWY0ZWMiLHVjOiIxZjRlYyIsaXNDYW5vbmljYWw6ITB9LCI6bWFpbGJveF93aXRoX25vX21haWw6Ijp7dW5pY29kZTpbIjFmNGVkIl0sCmZuYW1lOiIxZjRlZCIsdWM6IjFmNGVkIixpc0Nhbm9uaWNhbDohMH0sIjpwb3N0YWxfaG9ybjoiOnt1bmljb2RlOlsiMWY0ZWYiXSxmbmFtZToiMWY0ZWYiLHVjOiIxZjRlZiIsaXNDYW5vbmljYWw6ITB9LCI6bm9fbW9iaWxlX3Bob25lczoiOnt1bmljb2RlOlsiMWY0ZjUiXSxmbmFtZToiMWY0ZjUiLHVjOiIxZjRmNSIsaXNDYW5vbmljYWw6ITB9LCI6dHdpc3RlZF9yaWdodHdhcmRzX2Fycm93czoiOnt1bmljb2RlOlsiMWY1MDAiXSxmbmFtZToiMWY1MDAiLHVjOiIxZjUwMCIsaXNDYW5vbmljYWw6ITB9LCI6cmVwZWF0OiI6e3VuaWNvZGU6WyIxZjUwMSJdLGZuYW1lOiIxZjUwMSIsdWM6IjFmNTAxIixpc0Nhbm9uaWNhbDohMH0sIjpyZXBlYXRfb25lOiI6e3VuaWNvZGU6WyIxZjUwMiJdLGZuYW1lOiIxZjUwMiIsdWM6IjFmNTAyIixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd3NfY291bnRlcmNsb2Nrd2lzZToiOnt1bmljb2RlOlsiMWY1MDQiXSxmbmFtZToiMWY1MDQiLHVjOiIxZjUwNCIsaXNDYW5vbmljYWw6ITB9LCI6bG93X2JyaWdodG5lc3M6Ijp7dW5pY29kZTpbIjFmNTA1Il0sZm5hbWU6IjFmNTA1Iix1YzoiMWY1MDUiLGlzQ2Fub25pY2FsOiEwfSwiOmhpZ2hfYnJpZ2h0bmVzczoiOnt1bmljb2RlOlsiMWY1MDYiXSxmbmFtZToiMWY1MDYiLHVjOiIxZjUwNiIsaXNDYW5vbmljYWw6ITB9LCI6bXV0ZToiOnt1bmljb2RlOlsiMWY1MDciXSxmbmFtZToiMWY1MDciLHVjOiIxZjUwNyIsaXNDYW5vbmljYWw6ITB9LCI6c291bmQ6Ijp7dW5pY29kZTpbIjFmNTA5Il0sZm5hbWU6IjFmNTA5Iix1YzoiMWY1MDkiLGlzQ2Fub25pY2FsOiEwfSwiOm5vX2JlbGw6Ijp7dW5pY29kZTpbIjFmNTE1Il0sZm5hbWU6IjFmNTE1Iix1YzoiMWY1MTUiLGlzQ2Fub25pY2FsOiEwfSwiOm1pY3Jvc2NvcGU6Ijp7dW5pY29kZTpbIjFmNTJjIl0sZm5hbWU6IjFmNTJjIix1YzoiMWY1MmMiLGlzQ2Fub25pY2FsOiEwfSwiOnRlbGVzY29wZToiOnt1bmljb2RlOlsiMWY1MmQiXSxmbmFtZToiMWY1MmQiLHVjOiIxZjUyZCIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2sxMzA6Ijp7dW5pY29kZTpbIjFmNTVjIl0sZm5hbWU6IjFmNTVjIix1YzoiMWY1NWMiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMjMwOiI6e3VuaWNvZGU6WyIxZjU1ZCJdLGZuYW1lOiIxZjU1ZCIsdWM6IjFmNTVkIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazMzMDoiOnt1bmljb2RlOlsiMWY1NWUiXSxmbmFtZToiMWY1NWUiLHVjOiIxZjU1ZSIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2s0MzA6Ijp7dW5pY29kZTpbIjFmNTVmIl0sZm5hbWU6IjFmNTVmIix1YzoiMWY1NWYiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrNTMwOiI6e3VuaWNvZGU6WyIxZjU2MCJdLGZuYW1lOiIxZjU2MCIsdWM6IjFmNTYwIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazYzMDoiOnt1bmljb2RlOlsiMWY1NjEiXSxmbmFtZToiMWY1NjEiLHVjOiIxZjU2MSIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2s3MzA6Ijp7dW5pY29kZTpbIjFmNTYyIl0sZm5hbWU6IjFmNTYyIix1YzoiMWY1NjIiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrODMwOiI6e3VuaWNvZGU6WyIxZjU2MyJdLGZuYW1lOiIxZjU2MyIsdWM6IjFmNTYzIixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazkzMDoiOnt1bmljb2RlOlsiMWY1NjQiXSxmbmFtZToiMWY1NjQiLHVjOiIxZjU2NCIsaXNDYW5vbmljYWw6ITB9LCI6Y2xvY2sxMDMwOiI6e3VuaWNvZGU6WyIxZjU2NSJdLGZuYW1lOiIxZjU2NSIsdWM6IjFmNTY1Iixpc0Nhbm9uaWNhbDohMH0sIjpjbG9jazExMzA6Ijp7dW5pY29kZTpbIjFmNTY2Il0sZm5hbWU6IjFmNTY2Iix1YzoiMWY1NjYiLGlzQ2Fub25pY2FsOiEwfSwiOmNsb2NrMTIzMDoiOnt1bmljb2RlOlsiMWY1NjciXSxmbmFtZToiMWY1NjciLHVjOiIxZjU2NyIsaXNDYW5vbmljYWw6ITB9LCI6c3BlYWtlcjoiOnt1bmljb2RlOlsiMWY1MDgiXSxmbmFtZToiMWY1MDgiLHVjOiIxZjUwOCIsaXNDYW5vbmljYWw6ITB9LCI6dHJhaW46Ijp7dW5pY29kZTpbIjFmNjhiIl0sZm5hbWU6IjFmNjhiIix1YzoiMWY2OGIiLGlzQ2Fub25pY2FsOiEwfSwiOm1lZGFsOiI6e3VuaWNvZGU6WyIxZjNjNSJdLGZuYW1lOiIxZjNjNSIsdWM6IjFmM2M1Iixpc0Nhbm9uaWNhbDohMH0sIjpzcG9ydHNfbWVkYWw6Ijp7dW5pY29kZTpbIjFmM2M1Il0sZm5hbWU6IjFmM2M1Iix1YzoiMWYzYzUiLGlzQ2Fub25pY2FsOiExfSwiOmZsYWdfYmxhY2s6Ijp7dW5pY29kZTpbIjFmM2Y0Il0sZm5hbWU6IjFmM2Y0Iix1YzoiMWYzZjQiLGlzQ2Fub25pY2FsOiEwfSwiOndhdmluZ19ibGFja19mbGFnOiI6e3VuaWNvZGU6WyIxZjNmNCJdLGZuYW1lOiIxZjNmNCIsdWM6IjFmM2Y0Iixpc0Nhbm9uaWNhbDohMX0sIjpjYW1lcmFfd2l0aF9mbGFzaDoiOnt1bmljb2RlOlsiMWY0ZjgiXSxmbmFtZToiMWY0ZjgiLHVjOiIxZjRmOCIsaXNDYW5vbmljYWw6ITB9LCI6c2xlZXBpbmdfYWNjb21tb2RhdGlvbjoiOnt1bmljb2RlOlsiMWY2Y2MiXSxmbmFtZToiMWY2Y2MiLHVjOiIxZjZjYyIsaXNDYW5vbmljYWw6ITB9LCI6bWlkZGxlX2ZpbmdlcjoiOnt1bmljb2RlOlsiMWY1OTUiXSxmbmFtZToiMWY1OTUiLHVjOiIxZjU5NSIsaXNDYW5vbmljYWw6ITB9LCI6cmV2ZXJzZWRfaGFuZF93aXRoX21pZGRsZV9maW5nZXJfZXh0ZW5kZWQ6Ijp7dW5pY29kZTpbIjFmNTk1Il0sZm5hbWU6IjFmNTk1Iix1YzoiMWY1OTUiLGlzQ2Fub25pY2FsOiExfSwiOnZ1bGNhbjoiOnt1bmljb2RlOlsiMWY1OTYiXSxmbmFtZToiMWY1OTYiLHVjOiIxZjU5NiIsaXNDYW5vbmljYWw6ITB9LCI6cmFpc2VkX2hhbmRfd2l0aF9wYXJ0X2JldHdlZW5fbWlkZGxlX2FuZF9yaW5nX2ZpbmdlcnM6Ijp7dW5pY29kZTpbIjFmNTk2Il0sZm5hbWU6IjFmNTk2Iix1YzoiMWY1OTYiLGlzQ2Fub25pY2FsOiExfSwiOnNsaWdodF9mcm93bjoiOnt1bmljb2RlOlsiMWY2NDEiXSxmbmFtZToiMWY2NDEiLHVjOiIxZjY0MSIsaXNDYW5vbmljYWw6ITB9LCI6c2xpZ2h0bHlfZnJvd25pbmdfZmFjZToiOnt1bmljb2RlOlsiMWY2NDEiXSxmbmFtZToiMWY2NDEiLHVjOiIxZjY0MSIsaXNDYW5vbmljYWw6ITF9LCI6c2xpZ2h0X3NtaWxlOiI6e3VuaWNvZGU6WyIxZjY0MiJdLGZuYW1lOiIxZjY0MiIsdWM6IjFmNjQyIixpc0Nhbm9uaWNhbDohMH0sIjpzbGlnaHRseV9zbWlsaW5nX2ZhY2U6Ijp7dW5pY29kZTpbIjFmNjQyIl0sZm5hbWU6IjFmNjQyIix1YzoiMWY2NDIiLGlzQ2Fub25pY2FsOiExfSwiOmFpcnBsYW5lX2RlcGFydHVyZToiOnt1bmljb2RlOlsiMWY2ZWIiXSxmbmFtZToiMWY2ZWIiLHVjOiIxZjZlYiIsaXNDYW5vbmljYWw6ITB9LCI6YWlycGxhbmVfYXJyaXZpbmc6Ijp7dW5pY29kZTpbIjFmNmVjIl0sZm5hbWU6IjFmNmVjIix1YzoiMWY2ZWMiLGlzQ2Fub25pY2FsOiEwfSwiOnRvbmUxOiI6e3VuaWNvZGU6WyIxZjNmYiJdLGZuYW1lOiIxZjNmYiIsdWM6IjFmM2ZiIixpc0Nhbm9uaWNhbDohMH0sIjp0b25lMjoiOnt1bmljb2RlOlsiMWYzZmMiXSxmbmFtZToiMWYzZmMiLHVjOiIxZjNmYyIsaXNDYW5vbmljYWw6ITB9LCI6dG9uZTM6Ijp7dW5pY29kZTpbIjFmM2ZkIl0sZm5hbWU6IjFmM2ZkIix1YzoiMWYzZmQiLGlzQ2Fub25pY2FsOiEwfSwiOnRvbmU0OiI6e3VuaWNvZGU6WyIxZjNmZSJdLGZuYW1lOiIxZjNmZSIsdWM6IjFmM2ZlIixpc0Nhbm9uaWNhbDohMH0sIjp0b25lNToiOnt1bmljb2RlOlsiMWYzZmYiXSxmbmFtZToiMWYzZmYiLHVjOiIxZjNmZiIsaXNDYW5vbmljYWw6ITB9LCI6dXBzaWRlX2Rvd246Ijp7dW5pY29kZTpbIjFmNjQzIl0sZm5hbWU6IjFmNjQzIix1YzoiMWY2NDMiLGlzQ2Fub25pY2FsOiEwfSwiOnVwc2lkZV9kb3duX2ZhY2U6Ijp7dW5pY29kZTpbIjFmNjQzIl0sZm5hbWU6IjFmNjQzIix1YzoiMWY2NDMiLGlzQ2Fub25pY2FsOiExfSwiOm1vbmV5X21vdXRoOiI6e3VuaWNvZGU6WyIxZjkxMSJdLGZuYW1lOiIxZjkxMSIsdWM6IjFmOTExIixpc0Nhbm9uaWNhbDohMH0sIjptb25leV9tb3V0aF9mYWNlOiI6e3VuaWNvZGU6WyIxZjkxMSJdLGZuYW1lOiIxZjkxMSIsdWM6IjFmOTExIixpc0Nhbm9uaWNhbDohMX0sIjpuZXJkOiI6e3VuaWNvZGU6WyIxZjkxMyJdLGZuYW1lOiIxZjkxMyIsdWM6IjFmOTEzIixpc0Nhbm9uaWNhbDohMH0sIjpuZXJkX2ZhY2U6Ijp7dW5pY29kZTpbIjFmOTEzIl0sZm5hbWU6IjFmOTEzIix1YzoiMWY5MTMiLGlzQ2Fub25pY2FsOiExfSwiOmh1Z2dpbmc6Ijp7dW5pY29kZTpbIjFmOTE3Il0sZm5hbWU6IjFmOTE3Iix1YzoiMWY5MTciLGlzQ2Fub25pY2FsOiEwfSwiOmh1Z2dpbmdfZmFjZToiOnt1bmljb2RlOlsiMWY5MTciXSxmbmFtZToiMWY5MTciLHVjOiIxZjkxNyIsaXNDYW5vbmljYWw6ITF9LCI6cm9sbGluZ19leWVzOiI6e3VuaWNvZGU6WyIxZjY0NCJdLGZuYW1lOiIxZjY0NCIsdWM6IjFmNjQ0Iixpc0Nhbm9uaWNhbDohMH0sIjpmYWNlX3dpdGhfcm9sbGluZ19leWVzOiI6e3VuaWNvZGU6WyIxZjY0NCJdLGZuYW1lOiIxZjY0NCIsdWM6IjFmNjQ0Iixpc0Nhbm9uaWNhbDohMX0sIjp0aGlua2luZzoiOnt1bmljb2RlOlsiMWY5MTQiXSxmbmFtZToiMWY5MTQiLHVjOiIxZjkxNCIsaXNDYW5vbmljYWw6ITB9LCI6dGhpbmtpbmdfZmFjZToiOnt1bmljb2RlOlsiMWY5MTQiXSxmbmFtZToiMWY5MTQiLHVjOiIxZjkxNCIsaXNDYW5vbmljYWw6ITF9LCI6emlwcGVyX21vdXRoOiI6e3VuaWNvZGU6WyIxZjkxMCJdLGZuYW1lOiIxZjkxMCIsdWM6IjFmOTEwIixpc0Nhbm9uaWNhbDohMH0sIjp6aXBwZXJfbW91dGhfZmFjZToiOnt1bmljb2RlOlsiMWY5MTAiXSxmbmFtZToiMWY5MTAiLHVjOiIxZjkxMCIsaXNDYW5vbmljYWw6ITF9LCI6dGhlcm1vbWV0ZXJfZmFjZToiOnt1bmljb2RlOlsiMWY5MTIiXSxmbmFtZToiMWY5MTIiLHVjOiIxZjkxMiIsaXNDYW5vbmljYWw6ITB9LCI6ZmFjZV93aXRoX3RoZXJtb21ldGVyOiI6e3VuaWNvZGU6WyIxZjkxMiJdLGZuYW1lOiIxZjkxMiIsdWM6IjFmOTEyIixpc0Nhbm9uaWNhbDohMX0sIjpoZWFkX2JhbmRhZ2U6Ijp7dW5pY29kZTpbIjFmOTE1Il0sZm5hbWU6IjFmOTE1Iix1YzoiMWY5MTUiLGlzQ2Fub25pY2FsOiEwfSwiOmZhY2Vfd2l0aF9oZWFkX2JhbmRhZ2U6Ijp7dW5pY29kZTpbIjFmOTE1Il0sZm5hbWU6IjFmOTE1Iix1YzoiMWY5MTUiLGlzQ2Fub25pY2FsOiExfSwiOnJvYm90OiI6e3VuaWNvZGU6WyIxZjkxNiJdLGZuYW1lOiIxZjkxNiIsdWM6IjFmOTE2Iixpc0Nhbm9uaWNhbDohMH0sIjpyb2JvdF9mYWNlOiI6e3VuaWNvZGU6WyIxZjkxNiJdLGZuYW1lOiIxZjkxNiIsdWM6IjFmOTE2Iixpc0Nhbm9uaWNhbDohMX0sIjpsaW9uX2ZhY2U6Ijp7dW5pY29kZTpbIjFmOTgxIl0sZm5hbWU6IjFmOTgxIix1YzoiMWY5ODEiLGlzQ2Fub25pY2FsOiEwfSwiOmxpb246Ijp7dW5pY29kZTpbIjFmOTgxIl0sZm5hbWU6IjFmOTgxIix1YzoiMWY5ODEiLGlzQ2Fub25pY2FsOiExfSwiOnVuaWNvcm46Ijp7dW5pY29kZTpbIjFmOTg0Il0sZm5hbWU6IjFmOTg0Iix1YzoiMWY5ODQiLGlzQ2Fub25pY2FsOiEwfSwiOnVuaWNvcm5fZmFjZToiOnt1bmljb2RlOlsiMWY5ODQiXSxmbmFtZToiMWY5ODQiLHVjOiIxZjk4NCIsaXNDYW5vbmljYWw6ITF9LCI6c2NvcnBpb246Ijp7dW5pY29kZTpbIjFmOTgyIl0sZm5hbWU6IjFmOTgyIix1YzoiMWY5ODIiLGlzQ2Fub25pY2FsOiEwfSwiOmNyYWI6Ijp7dW5pY29kZTpbIjFmOTgwIl0sZm5hbWU6IjFmOTgwIix1YzoiMWY5ODAiLGlzQ2Fub25pY2FsOiEwfSwiOnR1cmtleToiOnt1bmljb2RlOlsiMWY5ODMiXSxmbmFtZToiMWY5ODMiLHVjOiIxZjk4MyIsaXNDYW5vbmljYWw6ITB9LCI6Y2hlZXNlOiI6e3VuaWNvZGU6WyIxZjljMCJdLGZuYW1lOiIxZjljMCIsdWM6IjFmOWMwIixpc0Nhbm9uaWNhbDohMH0sIjpjaGVlc2Vfd2VkZ2U6Ijp7dW5pY29kZTpbIjFmOWMwIl0sZm5hbWU6IjFmOWMwIix1YzoiMWY5YzAiLGlzQ2Fub25pY2FsOiExfSwiOmhvdGRvZzoiOnt1bmljb2RlOlsiMWYzMmQiXSxmbmFtZToiMWYzMmQiLHVjOiIxZjMyZCIsaXNDYW5vbmljYWw6ITB9LCI6aG90X2RvZzoiOnt1bmljb2RlOlsiMWYzMmQiXSxmbmFtZToiMWYzMmQiLHVjOiIxZjMyZCIsaXNDYW5vbmljYWw6ITF9LCI6dGFjbzoiOnt1bmljb2RlOlsiMWYzMmUiXSxmbmFtZToiMWYzMmUiLHVjOiIxZjMyZSIsaXNDYW5vbmljYWw6ITB9LCI6YnVycml0bzoiOnt1bmljb2RlOlsiMWYzMmYiXSxmbmFtZToiMWYzMmYiLHVjOiIxZjMyZiIsaXNDYW5vbmljYWw6ITB9LCI6cG9wY29ybjoiOnt1bmljb2RlOlsiMWYzN2YiXSxmbmFtZToiMWYzN2YiLHVjOiIxZjM3ZiIsaXNDYW5vbmljYWw6ITB9LCI6Y2hhbXBhZ25lOiI6e3VuaWNvZGU6WyIxZjM3ZSJdLGZuYW1lOiIxZjM3ZSIsdWM6IjFmMzdlIixpc0Nhbm9uaWNhbDohMH0sIjpib3R0bGVfd2l0aF9wb3BwaW5nX2Nvcms6Ijp7dW5pY29kZTpbIjFmMzdlIl0sZm5hbWU6IjFmMzdlIix1YzoiMWYzN2UiLGlzQ2Fub25pY2FsOiExfSwiOmJvd19hbmRfYXJyb3c6Ijp7dW5pY29kZTpbIjFmM2Y5Il0sZm5hbWU6IjFmM2Y5Iix1YzoiMWYzZjkiLGlzQ2Fub25pY2FsOiEwfSwiOmFyY2hlcnk6Ijp7dW5pY29kZTpbIjFmM2Y5Il0sZm5hbWU6IjFmM2Y5Iix1YzoiMWYzZjkiLGlzQ2Fub25pY2FsOiExfSwiOmFtcGhvcmE6Ijp7dW5pY29kZTpbIjFmM2ZhIl0sZm5hbWU6IjFmM2ZhIix1YzoiMWYzZmEiLGlzQ2Fub25pY2FsOiEwfSwiOnBsYWNlX29mX3dvcnNoaXA6Ijp7dW5pY29kZTpbIjFmNmQwIl0sZm5hbWU6IjFmNmQwIix1YzoiMWY2ZDAiLGlzQ2Fub25pY2FsOiEwfSwiOndvcnNoaXBfc3ltYm9sOiI6e3VuaWNvZGU6WyIxZjZkMCJdLGZuYW1lOiIxZjZkMCIsdWM6IjFmNmQwIixpc0Nhbm9uaWNhbDohMX0sIjprYWFiYToiOnt1bmljb2RlOlsiMWY1NGIiXSxmbmFtZToiMWY1NGIiLHVjOiIxZjU0YiIsaXNDYW5vbmljYWw6ITB9LCI6bW9zcXVlOiI6e3VuaWNvZGU6WyIxZjU0YyJdLGZuYW1lOiIxZjU0YyIsdWM6IjFmNTRjIixpc0Nhbm9uaWNhbDohMH0sIjpzeW5hZ29ndWU6Ijp7dW5pY29kZTpbIjFmNTRkIl0sZm5hbWU6IjFmNTRkIix1YzoiMWY1NGQiLGlzQ2Fub25pY2FsOiEwfSwiOm1lbm9yYWg6Ijp7dW5pY29kZTpbIjFmNTRlIl0sZm5hbWU6IjFmNTRlIix1YzoiMWY1NGUiLGlzQ2Fub25pY2FsOiEwfSwiOnByYXllcl9iZWFkczoiOnt1bmljb2RlOlsiMWY0ZmYiXSxmbmFtZToiMWY0ZmYiLHVjOiIxZjRmZiIsaXNDYW5vbmljYWw6ITB9LCI6Y3JpY2tldDoiOnt1bmljb2RlOlsiMWYzY2YiXSxmbmFtZToiMWYzY2YiLHVjOiIxZjNjZiIsaXNDYW5vbmljYWw6ITB9LCI6Y3JpY2tldF9iYXRfYmFsbDoiOnt1bmljb2RlOlsiMWYzY2YiXSxmbmFtZToiMWYzY2YiLHVjOiIxZjNjZiIsaXNDYW5vbmljYWw6ITF9LCI6dm9sbGV5YmFsbDoiOnt1bmljb2RlOlsiMWYzZDAiXSxmbmFtZToiMWYzZDAiLHVjOiIxZjNkMCIsaXNDYW5vbmljYWw6ITB9LCI6ZmllbGRfaG9ja2V5OiI6e3VuaWNvZGU6WyIxZjNkMSJdLGZuYW1lOiIxZjNkMSIsdWM6IjFmM2QxIixpc0Nhbm9uaWNhbDohMH0sIjpob2NrZXk6Ijp7dW5pY29kZTpbIjFmM2QyIl0sZm5hbWU6IjFmM2QyIix1YzoiMWYzZDIiLGlzQ2Fub25pY2FsOiEwfSwiOnBpbmdfcG9uZzoiOnt1bmljb2RlOlsiMWYzZDMiXSxmbmFtZToiMWYzZDMiLHVjOiIxZjNkMyIsaXNDYW5vbmljYWw6ITB9LCI6dGFibGVfdGVubmlzOiI6e3VuaWNvZGU6WyIxZjNkMyJdLGZuYW1lOiIxZjNkMyIsdWM6IjFmM2QzIixpc0Nhbm9uaWNhbDohMX0sIjpiYWRtaW50b246Ijp7dW5pY29kZTpbIjFmM2Y4Il0sZm5hbWU6IjFmM2Y4Iix1YzoiMWYzZjgiLGlzQ2Fub25pY2FsOiEwfSwiOmRydW06Ijp7dW5pY29kZTpbIjFmOTQxIl0sZm5hbWU6IjFmOTQxIix1YzoiMWY5NDEiLGlzQ2Fub25pY2FsOiEwfSwiOmRydW1fd2l0aF9kcnVtc3RpY2tzOiI6e3VuaWNvZGU6WyIxZjk0MSJdLGZuYW1lOiIxZjk0MSIsdWM6IjFmOTQxIixpc0Nhbm9uaWNhbDohMX0sIjpzaHJpbXA6Ijp7dW5pY29kZTpbIjFmOTkwIl0sZm5hbWU6IjFmOTkwIix1YzoiMWY5OTAiLGlzQ2Fub25pY2FsOiEwfSwiOnNxdWlkOiI6e3VuaWNvZGU6WyIxZjk5MSJdLGZuYW1lOiIxZjk5MSIsdWM6IjFmOTkxIixpc0Nhbm9uaWNhbDohMH0sIjplZ2c6Ijp7dW5pY29kZTpbIjFmOTVhIl0sZm5hbWU6IjFmOTVhIix1YzoiMWY5NWEiLGlzQ2Fub25pY2FsOiEwfSwiOm1pbGs6Ijp7dW5pY29kZTpbIjFmOTViIl0sZm5hbWU6IjFmOTViIix1YzoiMWY5NWIiLGlzQ2Fub25pY2FsOiEwfSwiOmdsYXNzX29mX21pbGs6Ijp7dW5pY29kZTpbIjFmOTViIl0sZm5hbWU6IjFmOTViIix1YzoiMWY5NWIiLGlzQ2Fub25pY2FsOiExfSwiOnBlYW51dHM6Ijp7dW5pY29kZTpbIjFmOTVjIl0sZm5hbWU6IjFmOTVjIix1YzoiMWY5NWMiLGlzQ2Fub25pY2FsOiEwfSwiOnNoZWxsZWRfcGVhbnV0OiI6e3VuaWNvZGU6WyIxZjk1YyJdLGZuYW1lOiIxZjk1YyIsdWM6IjFmOTVjIixpc0Nhbm9uaWNhbDohMX0sIjpraXdpOiI6e3VuaWNvZGU6WyIxZjk1ZCJdLGZuYW1lOiIxZjk1ZCIsdWM6IjFmOTVkIixpc0Nhbm9uaWNhbDohMH0sIjpraXdpZnJ1aXQ6Ijp7dW5pY29kZTpbIjFmOTVkIl0sZm5hbWU6IjFmOTVkIix1YzoiMWY5NWQiLGlzQ2Fub25pY2FsOiExfSwiOnBhbmNha2VzOiI6e3VuaWNvZGU6WyIxZjk1ZSJdLGZuYW1lOiIxZjk1ZSIsdWM6IjFmOTVlIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfdzoiOnt1bmljb2RlOlsiMWYxZmMiXSxmbmFtZToiMWYxZmMiLHVjOiIxZjFmYyIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX3Y6Ijp7dW5pY29kZTpbIjFmMWZiIl0sZm5hbWU6IjFmMWZiIix1YzoiMWYxZmIiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl91OiI6e3VuaWNvZGU6WyIxZjFmYSJdLGZuYW1lOiIxZjFmYSIsdWM6IjFmMWZhIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfdDoiOnt1bmljb2RlOlsiMWYxZjkiXSxmbmFtZToiMWYxZjkiLHVjOiIxZjFmOSIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX3M6Ijp7dW5pY29kZTpbIjFmMWY4Il0sZm5hbWU6IjFmMWY4Iix1YzoiMWYxZjgiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9yOiI6e3VuaWNvZGU6WyIxZjFmNyJdLGZuYW1lOiIxZjFmNyIsdWM6IjFmMWY3Iixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfcToiOnt1bmljb2RlOlsiMWYxZjYiXSxmbmFtZToiMWYxZjYiLHVjOiIxZjFmNiIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX3A6Ijp7dW5pY29kZTpbIjFmMWY1Il0sZm5hbWU6IjFmMWY1Iix1YzoiMWYxZjUiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9vOiI6e3VuaWNvZGU6WyIxZjFmNCJdLGZuYW1lOiIxZjFmNCIsdWM6IjFmMWY0Iixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfbjoiOnt1bmljb2RlOlsiMWYxZjMiXSxmbmFtZToiMWYxZjMiLHVjOiIxZjFmMyIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX206Ijp7dW5pY29kZTpbIjFmMWYyIl0sZm5hbWU6IjFmMWYyIix1YzoiMWYxZjIiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9sOiI6e3VuaWNvZGU6WyIxZjFmMSJdLGZuYW1lOiIxZjFmMSIsdWM6IjFmMWYxIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfazoiOnt1bmljb2RlOlsiMWYxZjAiXSxmbmFtZToiMWYxZjAiLHVjOiIxZjFmMCIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX2o6Ijp7dW5pY29kZTpbIjFmMWVmIl0sZm5hbWU6IjFmMWVmIix1YzoiMWYxZWYiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9pOiI6e3VuaWNvZGU6WyIxZjFlZSJdLGZuYW1lOiIxZjFlZSIsdWM6IjFmMWVlIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfaDoiOnt1bmljb2RlOlsiMWYxZWQiXSxmbmFtZToiMWYxZWQiLHVjOiIxZjFlZCIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX2c6Ijp7dW5pY29kZTpbIjFmMWVjIl0sZm5hbWU6IjFmMWVjIix1YzoiMWYxZWMiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9mOiI6e3VuaWNvZGU6WyIxZjFlYiJdLGZuYW1lOiIxZjFlYiIsdWM6IjFmMWViIixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfZToiOnt1bmljb2RlOlsiMWYxZWEiXSxmbmFtZToiMWYxZWEiLHVjOiIxZjFlYSIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX2Q6Ijp7dW5pY29kZTpbIjFmMWU5Il0sZm5hbWU6IjFmMWU5Iix1YzoiMWYxZTkiLGlzQ2Fub25pY2FsOiEwfSwiOnJlZ2lvbmFsX2luZGljYXRvcl9jOiI6e3VuaWNvZGU6WyIxZjFlOCJdLGZuYW1lOiIxZjFlOCIsdWM6IjFmMWU4Iixpc0Nhbm9uaWNhbDohMH0sIjpyZWdpb25hbF9pbmRpY2F0b3JfYjoiOnt1bmljb2RlOlsiMWYxZTciXSxmbmFtZToiMWYxZTciLHVjOiIxZjFlNyIsaXNDYW5vbmljYWw6ITB9LCI6cmVnaW9uYWxfaW5kaWNhdG9yX2E6Ijp7dW5pY29kZTpbIjFmMWU2Il0sZm5hbWU6IjFmMWU2Iix1YzoiMWYxZTYiLGlzQ2Fub25pY2FsOiEwfSwiOmZhc3RfZm9yd2FyZDoiOnt1bmljb2RlOlsiMjNlOSJdLGZuYW1lOiIyM2U5Iix1YzoiMjNlOSIsaXNDYW5vbmljYWw6ITB9LCI6cmV3aW5kOiI6e3VuaWNvZGU6WyIyM2VhIl0sZm5hbWU6IjIzZWEiLHVjOiIyM2VhIixpc0Nhbm9uaWNhbDohMH0sIjphcnJvd19kb3VibGVfdXA6Ijp7dW5pY29kZTpbIjIzZWIiXSxmbmFtZToiMjNlYiIsdWM6IjIzZWIiLGlzQ2Fub25pY2FsOiEwfSwiOmFycm93X2RvdWJsZV9kb3duOiI6e3VuaWNvZGU6WyIyM2VjIl0sZm5hbWU6IjIzZWMiLHVjOiIyM2VjIixpc0Nhbm9uaWNhbDohMH0sIjphbGFybV9jbG9jazoiOnt1bmljb2RlOlsiMjNmMCJdLGZuYW1lOiIyM2YwIix1YzoiMjNmMCIsaXNDYW5vbmljYWw6ITB9LCI6aG91cmdsYXNzX2Zsb3dpbmdfc2FuZDoiOnt1bmljb2RlOlsiMjNmMyJdLGZuYW1lOiIyM2YzIix1YzoiMjNmMyIsaXNDYW5vbmljYWw6ITB9LCI6b3BoaXVjaHVzOiI6e3VuaWNvZGU6WyIyNmNlIl0sZm5hbWU6IjI2Y2UiLHVjOiIyNmNlIixpc0Nhbm9uaWNhbDohMH0sIjp3aGl0ZV9jaGVja19tYXJrOiI6e3VuaWNvZGU6WyIyNzA1Il0sZm5hbWU6IjI3MDUiLHVjOiIyNzA1Iixpc0Nhbm9uaWNhbDohMH0sIjpmaXN0OiI6e3VuaWNvZGU6WyIyNzBhIl0sZm5hbWU6IjI3MGEiLHVjOiIyNzBhIixpc0Nhbm9uaWNhbDohMH0sIjpyYWlzZWRfaGFuZDoiOnt1bmljb2RlOlsiMjcwYiJdLGZuYW1lOiIyNzBiIix1YzoiMjcwYiIsaXNDYW5vbmljYWw6ITB9LCI6c3BhcmtsZXM6Ijp7dW5pY29kZTpbIjI3MjgiXSxmbmFtZToiMjcyOCIsdWM6IjI3MjgiLGlzQ2Fub25pY2FsOiEwfSwiOng6Ijp7dW5pY29kZTpbIjI3NGMiXSxmbmFtZToiMjc0YyIsdWM6IjI3NGMiLGlzQ2Fub25pY2FsOiEwfSwiOm5lZ2F0aXZlX3NxdWFyZWRfY3Jvc3NfbWFyazoiOnt1bmljb2RlOlsiMjc0ZSJdLGZuYW1lOiIyNzRlIix1YzoiMjc0ZSIsaXNDYW5vbmljYWw6ITB9LCI6cXVlc3Rpb246Ijp7dW5pY29kZTpbIjI3NTMiXSxmbmFtZToiMjc1MyIsdWM6IjI3NTMiLGlzQ2Fub25pY2FsOiEwfSwiOmdyZXlfcXVlc3Rpb246Ijp7dW5pY29kZTpbIjI3NTQiXSxmbmFtZToiMjc1NCIsdWM6IjI3NTQiLGlzQ2Fub25pY2FsOiEwfSwiOmdyZXlfZXhjbGFtYXRpb246Ijp7dW5pY29kZTpbIjI3NTUiXSxmbmFtZToiMjc1NSIsdWM6IjI3NTUiLGlzQ2Fub25pY2FsOiEwfSwiOmhlYXZ5X3BsdXNfc2lnbjoiOnt1bmljb2RlOlsiMjc5NSJdLGZuYW1lOiIyNzk1Iix1YzoiMjc5NSIsaXNDYW5vbmljYWw6ITB9LCI6aGVhdnlfbWludXNfc2lnbjoiOnt1bmljb2RlOlsiMjc5NiJdLGZuYW1lOiIyNzk2Iix1YzoiMjc5NiIsaXNDYW5vbmljYWw6ITB9LCI6aGVhdnlfZGl2aXNpb25fc2lnbjoiOnt1bmljb2RlOlsiMjc5NyJdLGZuYW1lOiIyNzk3Iix1YzoiMjc5NyIsaXNDYW5vbmljYWw6ITB9LCI6Y3VybHlfbG9vcDoiOnt1bmljb2RlOlsiMjdiMCJdLGZuYW1lOiIyN2IwIix1YzoiMjdiMCIsaXNDYW5vbmljYWw6ITB9LCI6bG9vcDoiOnt1bmljb2RlOlsiMjdiZiJdLGZuYW1lOiIyN2JmIix1YzoiMjdiZiIsaXNDYW5vbmljYWw6ITB9fTt2YXIgYixjPVtdO2ZvcihiIGluIGEuZW1vamlvbmVMaXN0KWEuZW1vamlvbmVMaXN0Lmhhc093blByb3BlcnR5KGIpJiZjLnB1c2goYi5yZXBsYWNlKC9bK10vZywiXFwkJiIpKTthLnNob3J0bmFtZXM9Yy5qb2luKCJ8IiksYS5hc2NpaUxpc3Q9eyI8MyI6IjI3NjQiLCI8LzMiOiIxZjQ5NCIsIjonKSI6IjFmNjAyIiwiOictKSI6IjFmNjAyIiwiOkQiOiIxZjYwMyIsIjotRCI6IjFmNjAzIiwiPUQiOiIxZjYwMyIsIjopIjoiMWY2NDIiLCI6LSkiOiIxZjY0MiIsIj1dIjoiMWY2NDIiLCI9KSI6IjFmNjQyIiwiOl0iOiIxZjY0MiIsIic6KSI6IjFmNjA1IiwiJzotKSI6IjFmNjA1IiwiJz0pIjoiMWY2MDUiLCInOkQiOiIxZjYwNSIsIic6LUQiOiIxZjYwNSIsIic9RCI6IjFmNjA1IiwiPjopIjoiMWY2MDYiLCI+OykiOiIxZjYwNiIsIj46LSkiOiIxZjYwNiIsIj49KSI6IjFmNjA2IiwiOykiOiIxZjYwOSIsIjstKSI6IjFmNjA5IiwiKi0pIjoiMWY2MDkiLCIqKSI6IjFmNjA5IiwiOy1dIjoiMWY2MDkiLCI7XSI6IjFmNjA5IiwiO0QiOiIxZjYwOSIsIjteKSI6IjFmNjA5IiwiJzooIjoiMWY2MTMiLCInOi0oIjoiMWY2MTMiLCInPSgiOiIxZjYxMyIsIjoqIjoiMWY2MTgiLCI6LSoiOiIxZjYxOCIsIj0qIjoiMWY2MTgiLCI6XioiOiIxZjYxOCIsIj46UCI6IjFmNjFjIiwiWC1QIjoiMWY2MWMiLCJ4LXAiOiIxZjYxYyIsIj46WyI6IjFmNjFlIiwiOi0oIjoiMWY2MWUiLCI6KCI6IjFmNjFlIiwiOi1bIjoiMWY2MWUiLCI6WyI6IjFmNjFlIiwiPSgiOiIxZjYxZSIsIj46KCI6IjFmNjIwIiwiPjotKCI6IjFmNjIwIiwiOkAiOiIxZjYyMCIsIjonKCI6IjFmNjIyIiwiOictKCI6IjFmNjIyIiwiOygiOiIxZjYyMiIsIjstKCI6IjFmNjIyIiwiPi48IjoiMWY2MjMiLCJEOiI6IjFmNjI4IiwiOiQiOiIxZjYzMyIsIj0kIjoiMWY2MzMiLCIjLSkiOiIxZjYzNSIsIiMpIjoiMWY2MzUiLCIlLSkiOiIxZjYzNSIsIiUpIjoiMWY2MzUiLCJYKSI6IjFmNjM1IiwiWC0pIjoiMWY2MzUiLCIqXFwwLyoiOiIxZjY0NiIsIlxcMC8iOiIxZjY0NiIsIipcXE8vKiI6IjFmNjQ2IiwiXFxPLyI6IjFmNjQ2IiwiTzotKSI6IjFmNjA3IiwiMDotMyI6IjFmNjA3IiwiMDozIjoiMWY2MDciLCIwOi0pIjoiMWY2MDciLCIwOikiOiIxZjYwNyIsIjA7XikiOiIxZjYwNyIsIk86KSI6IjFmNjA3IiwiTzstKSI6IjFmNjA3IiwiTz0pIjoiMWY2MDciLCIwOy0pIjoiMWY2MDciLCJPOi0zIjoiMWY2MDciLCJPOjMiOiIxZjYwNyIsIkItKSI6IjFmNjBlIiwiQikiOiIxZjYwZSIsIjgpIjoiMWY2MGUiLCI4LSkiOiIxZjYwZSIsIkItRCI6IjFmNjBlIiwiOC1EIjoiMWY2MGUiLCItXy0iOiIxZjYxMSIsIi1fXy0iOiIxZjYxMSIsIi1fX18tIjoiMWY2MTEiLCI+OlxcIjoiMWY2MTUiLCI+Oi8iOiIxZjYxNSIsIjotLyI6IjFmNjE1IiwiOi0uIjoiMWY2MTUiLCI6LyI6IjFmNjE1IiwiOlxcIjoiMWY2MTUiLCI9LyI6IjFmNjE1IiwiPVxcIjoiMWY2MTUiLCI6TCI6IjFmNjE1IiwiPUwiOiIxZjYxNSIsIjpQIjoiMWY2MWIiLCI6LVAiOiIxZjYxYiIsIj1QIjoiMWY2MWIiLCI6LXAiOiIxZjYxYiIsIjpwIjoiMWY2MWIiLCI9cCI6IjFmNjFiIiwiOi3DniI6IjFmNjFiIiwiOsOeIjoiMWY2MWIiLCI6w74iOiIxZjYxYiIsIjotw74iOiIxZjYxYiIsIjotYiI6IjFmNjFiIiwiOmIiOiIxZjYxYiIsImQ6IjoiMWY2MWIiLCI6LU8iOiIxZjYyZSIsIjpPIjoiMWY2MmUiLCI6LW8iOiIxZjYyZSIsIjpvIjoiMWY2MmUiLE9fTzoiMWY2MmUiLCI+Ok8iOiIxZjYyZSIsIjotWCI6IjFmNjM2IiwiOlgiOiIxZjYzNiIsIjotIyI6IjFmNjM2IiwiOiMiOiIxZjYzNiIsIj1YIjoiMWY2MzYiLCI9eCI6IjFmNjM2IiwiOngiOiIxZjYzNiIsIjoteCI6IjFmNjM2IiwiPSMiOiIxZjYzNiJ9LGEuYXNjaWlSZWdleHA9IihcXDwzfCZsdDszfFxcPFxcLzN8Jmx0O1xcLzN8XFw6J1xcKXxcXDonXFwtXFwpfFxcOkR8XFw6XFwtRHxcXD1EfFxcOlxcKXxcXDpcXC1cXCl8XFw9XFxdfFxcPVxcKXxcXDpcXF18J1xcOlxcKXwnXFw6XFwtXFwpfCdcXD1cXCl8J1xcOkR8J1xcOlxcLUR8J1xcPUR8XFw+XFw6XFwpfCZndDtcXDpcXCl8XFw+O1xcKXwmZ3Q7O1xcKXxcXD5cXDpcXC1cXCl8Jmd0O1xcOlxcLVxcKXxcXD5cXD1cXCl8Jmd0O1xcPVxcKXw7XFwpfDtcXC1cXCl8XFwqXFwtXFwpfFxcKlxcKXw7XFwtXFxdfDtcXF18O0R8O1xcXlxcKXwnXFw6XFwofCdcXDpcXC1cXCh8J1xcPVxcKHxcXDpcXCp8XFw6XFwtXFwqfFxcPVxcKnxcXDpcXF5cXCp8XFw+XFw6UHwmZ3Q7XFw6UHxYXFwtUHx4XFwtcHxcXD5cXDpcXFt8Jmd0O1xcOlxcW3xcXDpcXC1cXCh8XFw6XFwofFxcOlxcLVxcW3xcXDpcXFt8XFw9XFwofFxcPlxcOlxcKHwmZ3Q7XFw6XFwofFxcPlxcOlxcLVxcKHwmZ3Q7XFw6XFwtXFwofFxcOkB8XFw6J1xcKHxcXDonXFwtXFwofDtcXCh8O1xcLVxcKHxcXD5cXC5cXDx8Jmd0O1xcLiZsdDt8RFxcOnxcXDpcXCR8XFw9XFwkfCNcXC1cXCl8I1xcKXwlXFwtXFwpfCVcXCl8WFxcKXxYXFwtXFwpfFxcKlxcXFwwXFwvXFwqfFxcXFwwXFwvfFxcKlxcXFxPXFwvXFwqfFxcXFxPXFwvfE9cXDpcXC1cXCl8MFxcOlxcLTN8MFxcOjN8MFxcOlxcLVxcKXwwXFw6XFwpfDA7XFxeXFwpfE9cXDpcXC1cXCl8T1xcOlxcKXxPO1xcLVxcKXxPXFw9XFwpfDA7XFwtXFwpfE9cXDpcXC0zfE9cXDozfEJcXC1cXCl8QlxcKXw4XFwpfDhcXC1cXCl8QlxcLUR8OFxcLUR8XFwtX1xcLXxcXC1fX1xcLXxcXC1fX19cXC18XFw+XFw6XFxcXHwmZ3Q7XFw6XFxcXHxcXD5cXDpcXC98Jmd0O1xcOlxcL3xcXDpcXC1cXC98XFw6XFwtXFwufFxcOlxcL3xcXDpcXFxcfFxcPVxcL3xcXD1cXFxcfFxcOkx8XFw9THxcXDpQfFxcOlxcLVB8XFw9UHxcXDpcXC1wfFxcOnB8XFw9cHxcXDpcXC3DnnxcXDpcXC0mVEhPUk47fFxcOsOefFxcOiZUSE9STjt8XFw6w758XFw6JnRob3JuO3xcXDpcXC3DvnxcXDpcXC0mdGhvcm47fFxcOlxcLWJ8XFw6YnxkXFw6fFxcOlxcLU98XFw6T3xcXDpcXC1vfFxcOm98T19PfFxcPlxcOk98Jmd0O1xcOk98XFw6XFwtWHxcXDpYfFxcOlxcLSN8XFw6I3xcXD1YfFxcPXh8XFw6eHxcXDpcXC14fFxcPSMpIixhLnVuaWNvZGVSZWdleHA9IihcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHUyNzY0XFx1RkUwRlxcdTIwMERcXHVEODNEXFx1REM4QlxcdTIwMERcXHVEODNEXFx1REM2OXxcXHVEODNEXFx1REM2OFxcdTIwMERcXHUyNzY0XFx1RkUwRlxcdTIwMERcXHVEODNEXFx1REM4QlxcdTIwMERcXHVEODNEXFx1REM2OHxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N1xcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OVxcdTIwMERcXHUyNzY0XFx1RkUwRlxcdTIwMERcXHVEODNEXFx1REM2OXxcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjZcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjZcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY4XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OVxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY4XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjdcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY4XFx1RDgzRFxcdURDNjZcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHUyNzY0XFx1RkUwRlxcdTIwMERcXHVEODNEXFx1REM2OHxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OFxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNEXFx1REM2OVxcdTI3NjRcXHVEODNEXFx1REM4QlxcdUQ4M0RcXHVEQzY5fFxcdUQ4M0RcXHVEQzY4XFx1Mjc2NFxcdUQ4M0RcXHVEQzhCXFx1RDgzRFxcdURDNjh8XFx1RDgzRFxcdURDNjhcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY3fFxcdUQ4M0RcXHVEQzY4XFx1RDgzRFxcdURDNjhcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjZ8XFx1RDgzRFxcdURDNjlcXHVEODNEXFx1REM2OVxcdUQ4M0RcXHVEQzY3fFxcdUQ4M0NcXHVERkYzXFx1RkUwRlxcdTIwMERcXHVEODNDXFx1REYwOHxcXHVEODNEXFx1REM2OFxcdUQ4M0RcXHVEQzY5XFx1RDgzRFxcdURDNjd8XFx1RDgzRFxcdURDNjhcXHUyNzY0XFx1RDgzRFxcdURDNjh8XFx1RDgzRFxcdURDNDFcXHUyMDBEXFx1RDgzRFxcdURERTh8XFx1RDgzRFxcdURDNjlcXHUyNzY0XFx1RDgzRFxcdURDNjl8XFx1RDgzRFxcdURDNDFcXHVEODNEXFx1RERFOHxcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREU4fFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERTl8XFx1RDgzQ1xcdURERTZcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREVCfFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERUN8XFx1RDgzQ1xcdURERTZcXHVEODNDXFx1RERFRXxcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREYxfFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERTZcXHVEODNDXFx1RERGNHxcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREY2fFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERTZcXHVEODNDXFx1RERGOHxcXHVEODNFXFx1REQzRVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDNFXFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREM0VcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQzRVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDNFXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREM0RcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQzRFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDNEXFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREM0RcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQzRFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDNDXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREM0NcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQzQ1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDNDXFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREM0NcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQzOVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDM5XFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMzlcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQzOVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDM5XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREMzhcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQzOFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDM4XFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREMzhcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQzOFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDM3XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREMzdcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQzN1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDM3XFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREMzdcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQzNlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDM2XFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMzZcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQzNlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDM2XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREMzVcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQzNVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDM1XFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREMzVcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQzNVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDM0XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREMzRcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQzNFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDM0XFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREMzRcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQzM1xcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDMzXFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMzNcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQzM1xcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDMzXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREMzBcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQzMFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDMwXFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREMzBcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQzMFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDI2XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREMjZcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQyNlxcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDI2XFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREMjZcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQxRVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDFFXFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMUVcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQxRVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDFFXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREMURcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQxRFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDFEXFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREMURcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQxRFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDFDXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREMUNcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQxQ1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDFDXFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREMUNcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQxQlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDFCXFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMUJcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQxQlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDFCXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdUREMUFcXHVEODNDXFx1REZGRnxcXHVEODNFXFx1REQxQVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0VcXHVERDFBXFx1RDgzQ1xcdURGRkR8XFx1RDgzRVxcdUREMUFcXHVEODNDXFx1REZGQ3xcXHVEODNFXFx1REQxQVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0VcXHVERDE5XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRVxcdUREMTlcXHVEODNDXFx1REZGRXxcXHVEODNFXFx1REQxOVxcdUQ4M0NcXHVERkZEfFxcdUQ4M0VcXHVERDE5XFx1RDgzQ1xcdURGRkN8XFx1RDgzRVxcdUREMTlcXHVEODNDXFx1REZGQnxcXHVEODNFXFx1REQxOFxcdUQ4M0NcXHVERkZGfFxcdUQ4M0VcXHVERDE4XFx1RDgzQ1xcdURGRkV8XFx1RDgzRVxcdUREMThcXHVEODNDXFx1REZGRHxcXHVEODNFXFx1REQxOFxcdUQ4M0NcXHVERkZDfFxcdUQ4M0VcXHVERDE4XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURFQzBcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REVDMFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERUMwXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURFQzBcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REVDMFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERUI2XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURFQjZcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REVCNlxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERUI2XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURFQjZcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REVCNVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERUI1XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURFQjVcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REVCNVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERUI1XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURFQjRcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REVCNFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERUI0XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURFQjRcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REVCNFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERUEzXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURFQTNcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REVBM1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERUEzXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURFQTNcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REU0RlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERTRGXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURFNEZcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REU0RlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERTRGXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURFNEVcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REU0RVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERTRFXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURFNEVcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REU0RVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERTREXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURFNERcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REU0RFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERTREXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURFNERcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REU0Q1xcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERTRDXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURFNENcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REU0Q1xcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERTRDXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURFNEJcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REU0QlxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERTRCXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURFNEJcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REU0QlxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERTQ3XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURFNDdcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REU0N1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERTQ3XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURFNDdcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REU0NlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERTQ2XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURFNDZcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REU0NlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERTQ2XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURFNDVcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REU0NVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERTQ1XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURFNDVcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REU0NVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERDk2XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdUREOTZcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REQ5NlxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERDk2XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdUREOTZcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REQ5NVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERDk1XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdUREOTVcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REQ5NVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERDk1XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdUREOTBcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REQ5MFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVERDkwXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdUREOTBcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REQ5MFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVERDdBXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdUREN0FcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REQ3QVxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVERDdBXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdUREN0FcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REQ3NVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVERDc1XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURENzVcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REQ3NVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVERDc1XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDQUFcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1RENBQVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQ0FBXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDQUFcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1RENBQVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzg3XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDODdcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM4N1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzg3XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDODdcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM4NlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzg2XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDODZcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM4NlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzg2XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDODVcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM4NVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzg1XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDODVcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM4NVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzgzXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDODNcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM4M1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzgzXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDODNcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM4MlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzgyXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDODJcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM4MlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzgyXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDODFcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM4MVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzgxXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDODFcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM4MVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzdDXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDN0NcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM3Q1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzdDXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDN0NcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM3OFxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzc4XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNzhcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM3OFxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzc4XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNzdcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM3N1xcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzc3XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNzdcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM3N1xcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzc2XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNzZcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM3NlxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzc2XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNzZcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM3NVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzc1XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNzVcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM3NVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzc1XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNzRcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM3NFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzc0XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNzRcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM3NFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzczXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNzNcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM3M1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzczXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNzNcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM3MlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzcyXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNzJcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM3MlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzcyXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNzFcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM3MVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzcxXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNzFcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM3MVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzcwXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNzBcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM3MFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzcwXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNzBcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM2RVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzZFXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNkVcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM2RVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzZFXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNjlcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM2OVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNjlcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM2OVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzY4XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNjhcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM2OFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzY4XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNjhcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM2N1xcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzY3XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNjdcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM2N1xcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzY3XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNjZcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM2NlxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzY2XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNjZcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM2NlxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzUwXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNTBcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM1MFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzUwXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNTBcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM0RlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzRGXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNEZcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM0RlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzRGXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNEVcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM0RVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzRFXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNEVcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM0RVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzREXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNERcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM0RFxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzREXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNERcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM0Q1xcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzRDXFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNENcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM0Q1xcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzRDXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNEJcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM0QlxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzRCXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNEJcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM0QlxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzRBXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNEFcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM0QVxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzRBXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNEFcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM0OVxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzQ5XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNDlcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM0OVxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzQ5XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNDhcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM0OFxcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzQ4XFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNDhcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM0OFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzQ3XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNDdcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM0N1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzQ3XFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNDdcXHVEODNDXFx1REZGQnxcXHVEODNEXFx1REM0NlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0RcXHVEQzQ2XFx1RDgzQ1xcdURGRkV8XFx1RDgzRFxcdURDNDZcXHVEODNDXFx1REZGRHxcXHVEODNEXFx1REM0NlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0RcXHVEQzQ2XFx1RDgzQ1xcdURGRkJ8XFx1RDgzRFxcdURDNDNcXHVEODNDXFx1REZGRnxcXHVEODNEXFx1REM0M1xcdUQ4M0NcXHVERkZFfFxcdUQ4M0RcXHVEQzQzXFx1RDgzQ1xcdURGRkR8XFx1RDgzRFxcdURDNDNcXHVEODNDXFx1REZGQ3xcXHVEODNEXFx1REM0M1xcdUQ4M0NcXHVERkZCfFxcdUQ4M0RcXHVEQzQyXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURDNDJcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1REM0MlxcdUQ4M0NcXHVERkZEfFxcdUQ4M0RcXHVEQzQyXFx1RDgzQ1xcdURGRkN8XFx1RDgzRFxcdURDNDJcXHVEODNDXFx1REZGQnxcXHVEODNDXFx1REZDQlxcdUQ4M0NcXHVERkZGfFxcdUQ4M0NcXHVERkNCXFx1RDgzQ1xcdURGRkV8XFx1RDgzQ1xcdURGRjNcXHVEODNDXFx1REYwOHxcXHVEODNDXFx1REZDQlxcdUQ4M0NcXHVERkZDfFxcdUQ4M0NcXHVERkNCXFx1RDgzQ1xcdURGRkJ8XFx1RDgzQ1xcdURGQ0FcXHVEODNDXFx1REZGRnxcXHVEODNDXFx1REZDQVxcdUQ4M0NcXHVERkZFfFxcdUQ4M0NcXHVERkNBXFx1RDgzQ1xcdURGRkR8XFx1RDgzQ1xcdURGQ0FcXHVEODNDXFx1REZGQ3xcXHVEODNDXFx1REZDQVxcdUQ4M0NcXHVERkZCfFxcdUQ4M0NcXHVERkM3XFx1RDgzQ1xcdURGRkZ8XFx1RDgzQ1xcdURGQzdcXHVEODNDXFx1REZGRXxcXHVEODNDXFx1REZDN1xcdUQ4M0NcXHVERkZEfFxcdUQ4M0NcXHVERkM3XFx1RDgzQ1xcdURGRkN8XFx1RDgzQ1xcdURGQzdcXHVEODNDXFx1REZGQnxcXHVEODNDXFx1REZDNFxcdUQ4M0NcXHVERkZGfFxcdUQ4M0NcXHVERkNCXFx1RDgzQ1xcdURGRkR8XFx1RDgzQ1xcdURGQzRcXHVEODNDXFx1REZGRHxcXHVEODNDXFx1REZDNFxcdUQ4M0NcXHVERkZDfFxcdUQ4M0NcXHVERkM0XFx1RDgzQ1xcdURGRkJ8XFx1RDgzQ1xcdURGQzNcXHVEODNDXFx1REZGRnxcXHVEODNDXFx1REZDM1xcdUQ4M0NcXHVERkZFfFxcdUQ4M0NcXHVERkMzXFx1RDgzQ1xcdURGRkR8XFx1RDgzQ1xcdURGQzNcXHVEODNDXFx1REZGQ3xcXHVEODNDXFx1REZDM1xcdUQ4M0NcXHVERkZCfFxcdUQ4M0NcXHVERjg1XFx1RDgzQ1xcdURGRkZ8XFx1RDgzQ1xcdURGODVcXHVEODNDXFx1REZGRXxcXHVEODNDXFx1REY4NVxcdUQ4M0NcXHVERkZEfFxcdUQ4M0NcXHVERjg1XFx1RDgzQ1xcdURGRkN8XFx1RDgzQ1xcdURGODVcXHVEODNDXFx1REZGQnxcXHVEODNDXFx1RERGRlxcdUQ4M0NcXHVEREZDfFxcdUQ4M0NcXHVEREZGXFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERkZcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERGRVxcdUQ4M0NcXHVEREY5fFxcdUQ4M0NcXHVEREZFXFx1RDgzQ1xcdURERUF8XFx1RDgzQ1xcdURERkRcXHVEODNDXFx1RERGMHxcXHVEODNDXFx1RERGQ1xcdUQ4M0NcXHVEREY4fFxcdUQ4M0NcXHVEREZDXFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERkJcXHVEODNDXFx1RERGQXxcXHVEODNDXFx1RERGQlxcdUQ4M0NcXHVEREYzfFxcdUQ4M0NcXHVEREZCXFx1RDgzQ1xcdURERUV8XFx1RDgzQ1xcdURERkJcXHVEODNDXFx1RERFQ3xcXHVEODNDXFx1RERGQlxcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREZCXFx1RDgzQ1xcdURERTh8XFx1RDgzQ1xcdURERkJcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERGQVxcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREZBXFx1RDgzQ1xcdURERkV8XFx1RDgzQ1xcdURERkFcXHVEODNDXFx1RERGOHxcXHVEODNDXFx1RERGQVxcdUQ4M0NcXHVEREYyfFxcdUQ4M0NcXHVEREZBXFx1RDgzQ1xcdURERUN8XFx1RDgzQ1xcdURERkFcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERkN8XFx1RDgzQ1xcdURERjlcXHVEODNDXFx1RERGQnxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREY5fFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERjlcXHVEODNDXFx1RERGNHxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREYzfFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERjlcXHVEODNDXFx1RERGMXxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREYwfFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERUZ8XFx1RDgzQ1xcdURERjlcXHVEODNDXFx1RERFRHxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERjlcXHVEODNDXFx1RERFOXxcXHVEODNDXFx1RERGOVxcdUQ4M0NcXHVEREU4fFxcdUQ4M0NcXHVEREY5XFx1RDgzQ1xcdURERTZ8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERGRnxcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREZFfFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERkR8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERGQnxcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREY5fFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERjh8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERGN3xcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREY0fFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERjN8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREYxfFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERjB8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERFRnxcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREVFfFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERUR8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERFQ3xcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERTl8XFx1RDgzQ1xcdURERjhcXHVEODNDXFx1RERFOHxcXHVEODNDXFx1RERGOFxcdUQ4M0NcXHVEREU3fFxcdUQ4M0NcXHVEREY4XFx1RDgzQ1xcdURERTZ8XFx1RDgzQ1xcdURERjdcXHVEODNDXFx1RERGQ3xcXHVEODNDXFx1RERGN1xcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREY3XFx1RDgzQ1xcdURERjh8XFx1RDgzQ1xcdURERjdcXHVEODNDXFx1RERGNHxcXHVEODNDXFx1RERGN1xcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREY2XFx1RDgzQ1xcdURERTZ8XFx1RDgzQ1xcdURERjVcXHVEODNDXFx1RERGRXxcXHVEODNDXFx1RERGNVxcdUQ4M0NcXHVEREZDfFxcdUQ4M0NcXHVEREY1XFx1RDgzQ1xcdURERjl8XFx1RDgzQ1xcdURERjVcXHVEODNDXFx1RERGOHxcXHVEODNDXFx1RERGNVxcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREY1XFx1RDgzQ1xcdURERjN8XFx1RDgzQ1xcdURERjVcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERGNVxcdUQ4M0NcXHVEREYxfFxcdUQ4M0NcXHVEREY1XFx1RDgzQ1xcdURERjB8XFx1RDgzQ1xcdURERjVcXHVEODNDXFx1RERFRHxcXHVEODNDXFx1RERGNVxcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREY1XFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERjVcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERGNVxcdUQ4M0NcXHVEREU2fFxcdUQ4M0NcXHVEREY0XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERjNcXHVEODNDXFx1RERGRnxcXHVEODNDXFx1RERGM1xcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREYzXFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERjNcXHVEODNDXFx1RERGNXxcXHVEODNDXFx1RERGM1xcdUQ4M0NcXHVEREY0fFxcdUQ4M0NcXHVEREYzXFx1RDgzQ1xcdURERjF8XFx1RDgzQ1xcdURERjNcXHVEODNDXFx1RERFRXxcXHVEODNDXFx1RERGM1xcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREYzXFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERjNcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERGM1xcdUQ4M0NcXHVEREU4fFxcdUQ4M0NcXHVEREYzXFx1RDgzQ1xcdURERTZ8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGRnxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREZFfFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERkR8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGQ3xcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREZCfFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERkF8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGOXxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREY4fFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGNnxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREY1fFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERjR8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGM3xcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREYyfFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERjF8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERGMHxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREVEfFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERUN8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERFQnxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREYyXFx1RDgzQ1xcdURERTl8XFx1RDgzQ1xcdURERjJcXHVEODNDXFx1RERFOHxcXHVEODNDXFx1RERGMlxcdUQ4M0NcXHVEREU2fFxcdUQ4M0NcXHVEREYxXFx1RDgzQ1xcdURERkV8XFx1RDgzQ1xcdURERjFcXHVEODNDXFx1RERGQnxcXHVEODNDXFx1RERGMVxcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREYxXFx1RDgzQ1xcdURERjl8XFx1RDgzQ1xcdURERjFcXHVEODNDXFx1RERGOHxcXHVEODNDXFx1RERGMVxcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREYxXFx1RDgzQ1xcdURERjB8XFx1RDgzQ1xcdURERjFcXHVEODNDXFx1RERFRXxcXHVEODNDXFx1RERGMVxcdUQ4M0NcXHVEREU4fFxcdUQ4M0NcXHVEREYxXFx1RDgzQ1xcdURERTd8XFx1RDgzQ1xcdURERjFcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERGMFxcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREYwXFx1RDgzQ1xcdURERkV8XFx1RDgzQ1xcdURERjBcXHVEODNDXFx1RERGQ3xcXHVEODNDXFx1RERGMFxcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREYwXFx1RDgzQ1xcdURERjV8XFx1RDgzQ1xcdURERjBcXHVEODNDXFx1RERGM3xcXHVEODNDXFx1RERGMFxcdUQ4M0NcXHVEREYyfFxcdUQ4M0NcXHVEREYwXFx1RDgzQ1xcdURERUV8XFx1RDgzQ1xcdURERjBcXHVEODNDXFx1RERFRHxcXHVEODNDXFx1RERGMFxcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREYwXFx1RDgzQ1xcdURERUF8XFx1RDgzQ1xcdURERUZcXHVEODNDXFx1RERGNXxcXHVEODNDXFx1RERFRlxcdUQ4M0NcXHVEREY0fFxcdUQ4M0NcXHVEREVGXFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERUZcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERFRVxcdUQ4M0NcXHVEREY5fFxcdUQ4M0NcXHVEREVFXFx1RDgzQ1xcdURERjh8XFx1RDgzQ1xcdURERUVcXHVEODNDXFx1RERGN3xcXHVEODNDXFx1RERFRVxcdUQ4M0NcXHVEREY2fFxcdUQ4M0NcXHVEREVFXFx1RDgzQ1xcdURERjR8XFx1RDgzQ1xcdURERUVcXHVEODNDXFx1RERGM3xcXHVEODNDXFx1RERFRVxcdUQ4M0NcXHVEREYyfFxcdUQ4M0NcXHVEREVFXFx1RDgzQ1xcdURERjF8XFx1RDgzQ1xcdURERUVcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERFRVxcdUQ4M0NcXHVEREU5fFxcdUQ4M0NcXHVEREVFXFx1RDgzQ1xcdURERTh8XFx1RDgzQ1xcdURERURcXHVEODNDXFx1RERGQXxcXHVEODNDXFx1RERFRFxcdUQ4M0NcXHVEREY5fFxcdUQ4M0NcXHVEREVEXFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERURcXHVEODNDXFx1RERGM3xcXHVEODNDXFx1RERFRFxcdUQ4M0NcXHVEREYyfFxcdUQ4M0NcXHVEREVEXFx1RDgzQ1xcdURERjB8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERGRXxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREZDfFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERkF8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERGOXxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREY4fFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERGNnxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREY1fFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERjN8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREYxfFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERUV8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERFRHxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERFQ1xcdUQ4M0NcXHVEREU5fFxcdUQ4M0NcXHVEREVDXFx1RDgzQ1xcdURERTd8XFx1RDgzQ1xcdURERUNcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERFQlxcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREVCXFx1RDgzQ1xcdURERjR8XFx1RDgzQ1xcdURERUJcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERFQlxcdUQ4M0NcXHVEREYwfFxcdUQ4M0NcXHVEREVCXFx1RDgzQ1xcdURERUZ8XFx1RDgzQ1xcdURERUJcXHVEODNDXFx1RERFRXxcXHVEODNDXFx1RERFQVxcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREVBXFx1RDgzQ1xcdURERjl8XFx1RDgzQ1xcdURERUFcXHVEODNDXFx1RERGOHxcXHVEODNDXFx1RERFQVxcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREVBXFx1RDgzQ1xcdURERUR8XFx1RDgzQ1xcdURERUFcXHVEODNDXFx1RERFQ3xcXHVEODNDXFx1RERFQVxcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREVBXFx1RDgzQ1xcdURERTh8XFx1RDgzQ1xcdURERUFcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERFOVxcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREU5XFx1RDgzQ1xcdURERjR8XFx1RDgzQ1xcdURERTlcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERFOVxcdUQ4M0NcXHVEREYwfFxcdUQ4M0NcXHVEREU5XFx1RDgzQ1xcdURERUZ8XFx1RDgzQ1xcdURERTlcXHVEODNDXFx1RERFQ3xcXHVEODNDXFx1RERFOVxcdUQ4M0NcXHVEREVBfFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERkZ8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERGRXxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREZEfFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERkN8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERGQnxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERjd8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERGNXxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREY0fFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERjN8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERGMnxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREYxfFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERjB8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERFRXxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREVEfFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERUN8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERFQnxcXHVEODNDXFx1RERFOFxcdUQ4M0NcXHVEREU5fFxcdUQ4M0NcXHVEREU4XFx1RDgzQ1xcdURERTh8XFx1RDgzQ1xcdURERThcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERkV8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERGQ3xcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREZCfFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERjl8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERGOHxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREY3fFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERjZ8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERGNHxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREYzfFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERGMXxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREVGfFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERUV8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERFRHxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREVDfFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERUJ8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERFQXxcXHVEODNDXFx1RERFN1xcdUQ4M0NcXHVEREU5fFxcdUQ4M0NcXHVEREU3XFx1RDgzQ1xcdURERTd8XFx1RDgzQ1xcdURERTdcXHVEODNDXFx1RERFNnxcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREZGfFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERkR8XFx1RDgzQ1xcdURERTZcXHVEODNDXFx1RERGQ3xcXHVEODNDXFx1RERFNlxcdUQ4M0NcXHVEREZBfFxcdUQ4M0NcXHVEREU2XFx1RDgzQ1xcdURERjl8XFx1RDgzQ1xcdURGQzRcXHVEODNDXFx1REZGRXxcXHVEODNEXFx1RERFM1xcdUZFMEZ8XFx1MjZGOVxcdUQ4M0NcXHVERkZGfFxcdTI2RjlcXHVEODNDXFx1REZGRXxcXHUyNkY5XFx1RDgzQ1xcdURGRkR8XFx1MjZGOVxcdUQ4M0NcXHVERkZDfFxcdTI2RjlcXHVEODNDXFx1REZGQnxcXHUyNzBEXFx1RDgzQ1xcdURGRkZ8XFx1MjcwRFxcdUQ4M0NcXHVERkZFfFxcdTI3MERcXHVEODNDXFx1REZGRHxcXHUyNzBEXFx1RDgzQ1xcdURGRkN8XFx1MjcwRFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0NcXHVEQzA0XFx1RkUwRnxcXHVEODNDXFx1REQ3RlxcdUZFMEZ8XFx1RDgzQ1xcdURFMDJcXHVGRTBGfFxcdUQ4M0NcXHVERTFBXFx1RkUwRnxcXHVEODNDXFx1REUyRlxcdUZFMEZ8XFx1RDgzQ1xcdURFMzdcXHVGRTBGfFxcdUQ4M0NcXHVERjlFXFx1RkUwRnxcXHVEODNDXFx1REY5RlxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0JcXHVGRTBGfFxcdUQ4M0NcXHVERkNDXFx1RkUwRnxcXHVEODNDXFx1REZDRFxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0VcXHVGRTBGfFxcdUQ4M0NcXHVERjk2XFx1RkUwRnxcXHVEODNDXFx1REY5N1xcdUZFMEZ8XFx1RDgzQ1xcdURGMzZcXHVGRTBGfFxcdUQ4M0NcXHVERjI3XFx1RkUwRnxcXHVEODNDXFx1REYyOFxcdUZFMEZ8XFx1RDgzQ1xcdURGMjlcXHVGRTBGfFxcdUQ4M0NcXHVERjJBXFx1RkUwRnxcXHVEODNDXFx1REYyQlxcdUZFMEZ8XFx1RDgzQ1xcdURGMkNcXHVGRTBGfFxcdUQ4M0RcXHVEQzNGXFx1RkUwRnxcXHVEODNEXFx1REQ3N1xcdUZFMEZ8XFx1RDgzRFxcdURENzhcXHVGRTBGfFxcdUQ4M0NcXHVERjIxXFx1RkUwRnxcXHVEODNDXFx1REY5OVxcdUZFMEZ8XFx1RDgzQ1xcdURGOUFcXHVGRTBGfFxcdUQ4M0NcXHVERjlCXFx1RkUwRnxcXHVEODNDXFx1REZGM1xcdUZFMEZ8XFx1RDgzQ1xcdURGRjVcXHVGRTBGfFxcdUQ4M0NcXHVERkY3XFx1RkUwRnxcXHVEODNEXFx1RENGRFxcdUZFMEZ8XFx1RDgzRFxcdURENDlcXHVGRTBGfFxcdUQ4M0RcXHVERDRBXFx1RkUwRnxcXHVEODNEXFx1REQ2RlxcdUZFMEZ8XFx1RDgzRFxcdURENzBcXHVGRTBGfFxcdUQ4M0RcXHVERDczXFx1RkUwRnxcXHVEODNEXFx1REQ3NlxcdUZFMEZ8XFx1RDgzRFxcdURENzlcXHVGRTBGfFxcdUQ4M0RcXHVERDg3XFx1RkUwRnxcXHVEODNEXFx1REQ4QVxcdUZFMEZ8XFx1RDgzRFxcdUREOEJcXHVGRTBGfFxcdUQ4M0RcXHVERDhDXFx1RkUwRnxcXHVEODNEXFx1REQ4RFxcdUZFMEZ8XFx1RDgzRFxcdUREQTVcXHVGRTBGfFxcdUQ4M0RcXHVEREE4XFx1RkUwRnxcXHVEODNEXFx1RERCMlxcdUZFMEZ8XFx1RDgzRFxcdUREQkNcXHVGRTBGfFxcdUQ4M0RcXHVEREMyXFx1RkUwRnxcXHVEODNEXFx1RERDM1xcdUZFMEZ8XFx1RDgzRFxcdUREQzRcXHVGRTBGfFxcdUQ4M0RcXHVEREQxXFx1RkUwRnxcXHVEODNEXFx1REREMlxcdUZFMEZ8XFx1RDgzRFxcdURERDNcXHVGRTBGfFxcdUQ4M0RcXHVERERDXFx1RkUwRnxcXHVEODNEXFx1RERERFxcdUZFMEZ8XFx1RDgzRFxcdUREREVcXHVGRTBGfFxcdUQ4M0RcXHVEREUxXFx1RkUwRnxcXHUyNzBCXFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURERThcXHVGRTBGfFxcdUQ4M0RcXHVEREVGXFx1RkUwRnxcXHVEODNEXFx1RERGM1xcdUZFMEZ8XFx1RDgzRFxcdURERkFcXHVGRTBGfFxcdUQ4M0RcXHVERUUwXFx1RkUwRnxcXHVEODNEXFx1REVFMVxcdUZFMEZ8XFx1RDgzRFxcdURFRTJcXHVGRTBGfFxcdUQ4M0RcXHVERUYwXFx1RkUwRnxcXHVEODNDXFx1REY3RFxcdUZFMEZ8XFx1RDgzRFxcdURDNDFcXHVGRTBGfFxcdUQ4M0RcXHVERDc0XFx1RkUwRnxcXHVEODNEXFx1REQ3NVxcdUZFMEZ8XFx1RDgzRFxcdUREOTBcXHVGRTBGfFxcdUQ4M0NcXHVERkQ0XFx1RkUwRnxcXHVEODNDXFx1REZENVxcdUZFMEZ8XFx1RDgzQ1xcdURGRDZcXHVGRTBGfFxcdUQ4M0NcXHVERkQ3XFx1RkUwRnxcXHVEODNDXFx1REZEOFxcdUZFMEZ8XFx1RDgzQ1xcdURGRDlcXHVGRTBGfFxcdUQ4M0NcXHVERkRBXFx1RkUwRnxcXHVEODNDXFx1REZEQlxcdUZFMEZ8XFx1RDgzQ1xcdURGRENcXHVGRTBGfFxcdUQ4M0NcXHVERkREXFx1RkUwRnxcXHVEODNDXFx1REZERVxcdUZFMEZ8XFx1RDgzQ1xcdURGREZcXHVGRTBGfFxcdUQ4M0RcXHVERUNCXFx1RkUwRnxcXHVEODNEXFx1REVDRFxcdUZFMEZ8XFx1RDgzRFxcdURFQ0VcXHVGRTBGfFxcdUQ4M0RcXHVERUNGXFx1RkUwRnxcXHVEODNEXFx1REVFM1xcdUZFMEZ8XFx1RDgzRFxcdURFRTRcXHVGRTBGfFxcdUQ4M0RcXHVERUU1XFx1RkUwRnxcXHVEODNEXFx1REVFOVxcdUZFMEZ8XFx1RDgzRFxcdURFRjNcXHVGRTBGfFxcdUQ4M0NcXHVERjI0XFx1RkUwRnxcXHVEODNDXFx1REYyNVxcdUZFMEZ8XFx1RDgzQ1xcdURGMjZcXHVGRTBGfFxcdUQ4M0RcXHVEREIxXFx1RkUwRnxcXHUyNjFEXFx1RDgzQ1xcdURGRkJ8XFx1MjYxRFxcdUQ4M0NcXHVERkZDfFxcdTI2MURcXHVEODNDXFx1REZGRHxcXHUyNjFEXFx1RDgzQ1xcdURGRkV8XFx1MjYxRFxcdUQ4M0NcXHVERkZGfFxcdTI3MENcXHVEODNDXFx1REZGQnxcXHUyNzBDXFx1RDgzQ1xcdURGRkN8XFx1MjcwQ1xcdUQ4M0NcXHVERkZEfFxcdTI3MENcXHVEODNDXFx1REZGRXxcXHUyNzBDXFx1RDgzQ1xcdURGRkZ8XFx1MjcwQVxcdUQ4M0NcXHVERkZCfFxcdTI3MEFcXHVEODNDXFx1REZGQ3xcXHUyNzBBXFx1RDgzQ1xcdURGRkR8XFx1MjcwQVxcdUQ4M0NcXHVERkZFfFxcdTI3MEFcXHVEODNDXFx1REZGRnxcXHUyNzBCXFx1RDgzQ1xcdURGRkJ8XFx1MjcwQlxcdUQ4M0NcXHVERkZDfFxcdTI3MEJcXHVEODNDXFx1REZGRHxcXHUyNzBCXFx1RDgzQ1xcdURGRkV8XFw0XFx1RkUwRlxcdTIwRTN8XFw5XFx1RkUwRlxcdTIwRTN8XFwwXFx1RkUwRlxcdTIwRTN8XFwxXFx1RkUwRlxcdTIwRTN8XFwyXFx1RkUwRlxcdTIwRTN8XFwzXFx1RkUwRlxcdTIwRTN8XFwjXFx1RkUwRlxcdTIwRTN8XFw1XFx1RkUwRlxcdTIwRTN8XFw2XFx1RkUwRlxcdTIwRTN8XFw3XFx1RkUwRlxcdTIwRTN8XFw4XFx1RkUwRlxcdTIwRTN8XFwqXFx1RkUwRlxcdTIwRTN8XFx1RDgzRFxcdURERTF8XFx1RDgzRFxcdURENzd8XFx1RDgzRFxcdURERTN8XFx1RDgzRFxcdURFRTR8XFx1RDgzRFxcdURERTh8XFx1RDgzRFxcdURENzh8XFx1RDgzRFxcdURERUZ8XFx1RDgzQ1xcdURFMzd8XFx1RDgzRFxcdURERjN8XFx1RDgzQ1xcdURGMjF8XFx1RDgzRFxcdURERkF8XFx1RDgzRFxcdUREQjF8XFx1RDgzRFxcdURFRTB8XFx1RDgzQ1xcdURGOTl8XFx1RDgzRFxcdURFRTF8XFx1RDgzQ1xcdURGOUV8XFx1RDgzRFxcdURFRTJ8XFx1RDgzQ1xcdURGOUF8XFx1RDgzRFxcdURFRjB8XFx1RDgzRFxcdURFRTN8XFx1RDgzQ1xcdURGN0R8XFx1RDgzQ1xcdURGOUJ8XFx1RDgzRFxcdURDNDF8XFx1RDgzQ1xcdURGOUZ8XFx1RDgzRFxcdURENzR8XFx1RDgzQ1xcdURGRjN8XFx1RDgzRFxcdURENzV8XFx1RDgzRFxcdURFRjN8XFx1RDgzRFxcdUREOTB8XFx1RDgzQ1xcdURGRjV8XFx1RDgzQ1xcdURGRDR8XFx1RDgzQ1xcdURGQ0J8XFx1RDgzQ1xcdURGRDV8XFx1RDgzQ1xcdURGRjd8XFx1RDgzQ1xcdURGRDZ8XFx1RDgzRFxcdURFQ0Z8XFx1RDgzQ1xcdURGRDd8XFx1RDgzRFxcdURDRkR8XFx1RDgzQ1xcdURGRDh8XFx1RDgzQ1xcdURGQ0N8XFx1RDgzQ1xcdURGRDl8XFx1RDgzRFxcdURENDl8XFx1RDgzQ1xcdURGREF8XFx1RDgzQ1xcdURGMjV8XFx1RDgzQ1xcdURGREJ8XFx1RDgzRFxcdURENEF8XFx1RDgzQ1xcdURGREN8XFx1RDgzQ1xcdURGQ0R8XFx1RDgzQ1xcdURGRER8XFx1RDgzRFxcdURENkZ8XFx1RDgzQ1xcdURGREV8XFx1RDgzRFxcdURFQ0V8XFx1RDgzQ1xcdURGREZ8XFx1RDgzRFxcdURENzB8XFx1RDgzRFxcdURFQ0J8XFx1RDgzQ1xcdURGQ0V8XFx1RDgzRFxcdURFQ0R8XFx1RDgzRFxcdURENzN8XFx1RDgzRFxcdURFQ0V8XFx1RDgzRFxcdURFRTl8XFx1RDgzRFxcdURFQ0Z8XFx1RDgzRFxcdURENzZ8XFx1RDgzRFxcdURFRTN8XFx1RDgzQ1xcdURGOTZ8XFx1RDgzRFxcdURFRTR8XFx1RDgzRFxcdURENzl8XFx1RDgzRFxcdURFRTV8XFx1RDgzRFxcdURFQ0R8XFx1RDgzRFxcdURFRTl8XFx1RDgzRFxcdUREODd8XFx1RDgzRFxcdURFRjN8XFx1RDgzQ1xcdURGOTd8XFx1RDgzQ1xcdURGMjR8XFx1RDgzRFxcdUREOEF8XFx1RDgzQ1xcdURGMjV8XFx1RDgzQ1xcdURDMDR8XFx1RDgzQ1xcdURGMjZ8XFx1RDgzRFxcdUREOEJ8XFx1RDgzRFxcdUREQjF8XFx1RDgzQ1xcdURGMzZ8XFx1RDgzRFxcdUREOEN8XFx1RDgzQ1xcdURGMjZ8XFx1RDgzRFxcdUREOER8XFx1RDgzQ1xcdURGMjd8XFx1RDgzRFxcdUREQTV8XFx1RDgzQ1xcdUREN0Z8XFx1RDgzRFxcdUREQTh8XFx1RDgzQ1xcdURGMjh8XFx1RDgzRFxcdUREQjJ8XFx1RDgzRFxcdURFQ0J8XFx1RDgzRFxcdUREQkN8XFx1RDgzQ1xcdURGMjl8XFx1RDgzRFxcdUREQzJ8XFx1RDgzQ1xcdURFMDJ8XFx1RDgzRFxcdUREQzN8XFx1RDgzQ1xcdURGMkF8XFx1RDgzRFxcdUREQzR8XFx1RDgzRFxcdURFRTV8XFx1RDgzRFxcdURERDF8XFx1RDgzQ1xcdURGMkJ8XFx1RDgzRFxcdURERDJ8XFx1RDgzQ1xcdURFMUF8XFx1RDgzRFxcdURERDN8XFx1RDgzQ1xcdURGMkN8XFx1RDgzRFxcdUREREN8XFx1RDgzQ1xcdURGMjR8XFx1RDgzRFxcdURERER8XFx1RDgzRFxcdURDM0Z8XFx1RDgzRFxcdUREREV8XFx1MDBBOVxcdUZFMEZ8XFx1RDgzQ1xcdURGREZ8XFx1MDBBRVxcdUZFMEZ8XFx1RDgzQ1xcdURGREV8XFx1MjAzQ1xcdUZFMEZ8XFx1RDgzQ1xcdURGRER8XFx1MjA0OVxcdUZFMEZ8XFx1RDgzQ1xcdURGREN8XFx1MjEyMlxcdUZFMEZ8XFx1RDgzQ1xcdURGREJ8XFx1MjEzOVxcdUZFMEZ8XFx1RDgzQ1xcdURGREF8XFx1MjE5NFxcdUZFMEZ8XFx1RDgzQ1xcdURGRDl8XFx1MjE5NVxcdUZFMEZ8XFx1RDgzQ1xcdURGRDh8XFx1MjE5NlxcdUZFMEZ8XFx1RDgzQ1xcdURGRDd8XFx1MjE5N1xcdUZFMEZ8XFx1RDgzQ1xcdURGRDZ8XFx1MjE5OFxcdUZFMEZ8XFx1RDgzQ1xcdURGRDV8XFx1MjE5OVxcdUZFMEZ8XFx1RDgzQ1xcdURGRDR8XFx1MjFBOVxcdUZFMEZ8XFx1RDgzRFxcdUREOTB8XFx1MjFBQVxcdUZFMEZ8XFx1RDgzRFxcdURENzV8XFx1MjMxQVxcdUZFMEZ8XFx1RDgzRFxcdURENzR8XFx1MjMxQlxcdUZFMEZ8XFx1RDgzRFxcdURDNDF8XFx1MjRDMlxcdUZFMEZ8XFx1RDgzQ1xcdURGN0R8XFx1MjVBQVxcdUZFMEZ8XFx1RDgzRFxcdURFRjB8XFx1MjVBQlxcdUZFMEZ8XFx1RDgzRFxcdURFRTJ8XFx1MjVCNlxcdUZFMEZ8XFx1RDgzRFxcdURFRTF8XFx1MjVDMFxcdUZFMEZ8XFx1RDgzRFxcdURFRTB8XFx1MjVGQlxcdUZFMEZ8XFx1RDgzRFxcdURERkF8XFx1MjVGQ1xcdUZFMEZ8XFx1RDgzRFxcdURERjN8XFx1MjVGRFxcdUZFMEZ8XFx1RDgzRFxcdURERUZ8XFx1MjVGRVxcdUZFMEZ8XFx1RDgzRFxcdURERTh8XFx1MjYwMFxcdUZFMEZ8XFx1RDgzRFxcdURERTN8XFx1MjYwMVxcdUZFMEZ8XFx1RDgzRFxcdURERTF8XFx1MjYwRVxcdUZFMEZ8XFx1RDgzRFxcdUREREV8XFx1MjYxMVxcdUZFMEZ8XFx1RDgzRFxcdURERER8XFx1MjYxNFxcdUZFMEZ8XFx1RDgzRFxcdUREREN8XFx1MjYxNVxcdUZFMEZ8XFx1RDgzRFxcdURERDN8XFx1MjYxRFxcdUZFMEZ8XFx1RDgzRFxcdURERDJ8XFx1MjYzQVxcdUZFMEZ8XFx1RDgzRFxcdURERDF8XFx1MjY0OFxcdUZFMEZ8XFx1RDgzRFxcdUREQzR8XFx1MjY0OVxcdUZFMEZ8XFx1RDgzRFxcdUREQzN8XFx1MjY0QVxcdUZFMEZ8XFx1RDgzRFxcdUREQzJ8XFx1MjY0QlxcdUZFMEZ8XFx1RDgzRFxcdUREQkN8XFx1MjY0Q1xcdUZFMEZ8XFx1RDgzRFxcdUREQjJ8XFx1MjY0RFxcdUZFMEZ8XFx1RDgzRFxcdUREQTh8XFx1MjY0RVxcdUZFMEZ8XFx1RDgzRFxcdUREQTV8XFx1MjY0RlxcdUZFMEZ8XFx1RDgzRFxcdUREOER8XFx1MjY1MFxcdUZFMEZ8XFx1RDgzRFxcdUREOEN8XFx1MjY1MVxcdUZFMEZ8XFx1RDgzRFxcdUREOEJ8XFx1MjY1MlxcdUZFMEZ8XFx1RDgzRFxcdUREOEF8XFx1MjY1M1xcdUZFMEZ8XFx1RDgzRFxcdUREODd8XFx1MjY2MFxcdUZFMEZ8XFx1RDgzRFxcdURENzl8XFx1MjY2M1xcdUZFMEZ8XFx1RDgzRFxcdURENzZ8XFx1MjY2NVxcdUZFMEZ8XFx1RDgzRFxcdURENzN8XFx1MjY2NlxcdUZFMEZ8XFx1RDgzRFxcdURENzB8XFx1MjY2OFxcdUZFMEZ8XFx1RDgzRFxcdURENkZ8XFx1MjY3QlxcdUZFMEZ8XFx1RDgzRFxcdURENEF8XFx1MjY3RlxcdUZFMEZ8XFx1RDgzRFxcdURENDl8XFx1MjY5M1xcdUZFMEZ8XFx1RDgzRFxcdURDRkR8XFx1MjZBMFxcdUZFMEZ8XFx1RDgzQ1xcdURGRjd8XFx1MjZBMVxcdUZFMEZ8XFx1RDgzQ1xcdURGRjV8XFx1MjZBQVxcdUZFMEZ8XFx1RDgzQ1xcdURGRjN8XFx1MjZBQlxcdUZFMEZ8XFx1RDgzQ1xcdURGOUJ8XFx1MjZCRFxcdUZFMEZ8XFx1RDgzQ1xcdURGOUF8XFx1MjZCRVxcdUZFMEZ8XFx1RDgzQ1xcdURGOTl8XFx1MjZDNFxcdUZFMEZ8XFx1RDgzQ1xcdURGMjF8XFx1MjZDNVxcdUZFMEZ8XFx1RDgzRFxcdURENzh8XFx1MjZENFxcdUZFMEZ8XFx1RDgzRFxcdURENzd8XFx1MjZFQVxcdUZFMEZ8XFx1RDgzRFxcdURDM0Z8XFx1RDgzQ1xcdURFMkZ8XFx1RDgzQ1xcdURGMkN8XFx1MjZGM1xcdUZFMEZ8XFx1RDgzQ1xcdURGMkJ8XFx1MjZGNVxcdUZFMEZ8XFx1RDgzQ1xcdURGMkF8XFx1MjZGQVxcdUZFMEZ8XFx1RDgzQ1xcdURGMjl8XFx1MjZGRFxcdUZFMEZ8XFx1RDgzQ1xcdURGMjh8XFx1MjcwMlxcdUZFMEZ8XFx1RDgzQ1xcdURGMjd8XFx1MjcwOFxcdUZFMEZ8XFx1RDgzQ1xcdURGMzZ8XFx1MjcwOVxcdUZFMEZ8XFx1RDgzQ1xcdURGOTd8XFx1MjcwQ1xcdUZFMEZ8XFx1RDgzQ1xcdURGOTZ8XFx1MjcwRlxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0V8XFx1MjcxMlxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0R8XFx1MjcxNFxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0N8XFx1MjcxNlxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0J8XFx1MjczM1xcdUZFMEZ8XFx1RDgzQ1xcdURGOUZ8XFx1MjczNFxcdUZFMEZ8XFx1RDgzQ1xcdURGOUV8XFx1Mjc0NFxcdUZFMEZ8XFx1RDgzQ1xcdURFMzd8XFx1Mjc0N1xcdUZFMEZ8XFx1RDgzQ1xcdURFMkZ8XFx1Mjc1N1xcdUZFMEZ8XFx1RDgzQ1xcdURFMUF8XFx1Mjc2NFxcdUZFMEZ8XFx1RDgzQ1xcdURFMDJ8XFx1MjdBMVxcdUZFMEZ8XFx1RDgzQ1xcdUREN0Z8XFx1MjkzNFxcdUZFMEZ8XFx1RDgzQ1xcdURDMDR8XFx1MjkzNVxcdUZFMEZ8XFx1RDgzQ1xcdURERTZ8XFx1MkIwNVxcdUZFMEZ8XFx1RDgzQ1xcdURERTd8XFx1MkIwNlxcdUZFMEZ8XFx1RDgzQ1xcdURERTh8XFx1MkIwN1xcdUZFMEZ8XFx1RDgzQ1xcdURERTl8XFx1MkIxQlxcdUZFMEZ8XFx1RDgzQ1xcdURERUF8XFx1MkIxQ1xcdUZFMEZ8XFx1RDgzQ1xcdURERUJ8XFx1MkI1MFxcdUZFMEZ8XFx1RDgzQ1xcdURERUN8XFx1MkI1NVxcdUZFMEZ8XFx1RDgzQ1xcdURERUR8XFx1MzAzMFxcdUZFMEZ8XFx1RDgzQ1xcdURERUV8XFx1MzAzRFxcdUZFMEZ8XFx1RDgzQ1xcdURERUZ8XFx1MzI5N1xcdUZFMEZ8XFx1RDgzQ1xcdURERjB8XFx1MzI5OVxcdUZFMEZ8XFx1RDgzQ1xcdURERjF8XFx1MjcxRFxcdUZFMEZ8XFx1RDgzQ1xcdURERjJ8XFx1MjMyOFxcdUZFMEZ8XFx1RDgzQ1xcdURERjN8XFx1MjcwRFxcdUZFMEZ8XFx1RDgzQ1xcdURERjR8XFx1MjNDRlxcdUZFMEZ8XFx1RDgzQ1xcdURERjV8XFx1MjNFRFxcdUZFMEZ8XFx1RDgzQ1xcdURERjZ8XFx1MjNFRVxcdUZFMEZ8XFx1RDgzQ1xcdURERjd8XFx1MjNFRlxcdUZFMEZ8XFx1RDgzQ1xcdURERjh8XFx1MjNGMVxcdUZFMEZ8XFx1RDgzQ1xcdURERjl8XFx1MjNGMlxcdUZFMEZ8XFx1RDgzQ1xcdURERkF8XFx1MjNGOFxcdUZFMEZ8XFx1RDgzQ1xcdURERkJ8XFx1MjNGOVxcdUZFMEZ8XFx1RDgzQ1xcdURERkN8XFx1MjNGQVxcdUZFMEZ8XFx1RDgzRVxcdURENUV8XFx1MjYwMlxcdUZFMEZ8XFx1RDgzRVxcdURENUR8XFx1MjYwM1xcdUZFMEZ8XFx1RDgzRVxcdURENUN8XFx1MjYwNFxcdUZFMEZ8XFx1RDgzRVxcdURENUJ8XFx1MjYxOFxcdUZFMEZ8XFx1RDgzRVxcdURENUF8XFx1MjYyMFxcdUZFMEZ8XFx1RDgzRVxcdUREOTF8XFx1MjYyMlxcdUZFMEZ8XFx1RDgzRVxcdUREOTB8XFx1MjYyM1xcdUZFMEZ8XFx1RDgzRVxcdURENDF8XFx1MjYyNlxcdUZFMEZ8XFx1RDgzQ1xcdURGRjh8XFx1MjYyQVxcdUZFMEZ8XFx1RDgzQ1xcdURGRDN8XFx1MjYyRVxcdUZFMEZ8XFx1RDgzQ1xcdURGRDJ8XFx1MjYyRlxcdUZFMEZ8XFx1RDgzQ1xcdURGRDF8XFx1MjYzOFxcdUZFMEZ8XFx1RDgzQ1xcdURGRDB8XFx1MjYzOVxcdUZFMEZ8XFx1RDgzQ1xcdURGQ0Z8XFx1MjY5MlxcdUZFMEZ8XFx1RDgzRFxcdURDRkZ8XFx1MjY5NFxcdUZFMEZ8XFx1RDgzRFxcdURENEV8XFx1MjY5NlxcdUZFMEZ8XFx1RDgzRFxcdURENER8XFx1MjY5N1xcdUZFMEZ8XFx1RDgzRFxcdURENEN8XFx1MjY5OVxcdUZFMEZ8XFx1RDgzRFxcdURENEJ8XFx1MjY5QlxcdUZFMEZ8XFx1RDgzRFxcdURFRDB8XFx1MjY5Q1xcdUZFMEZ8XFx1RDgzQ1xcdURGRkF8XFx1MjZCMFxcdUZFMEZ8XFx1RDgzQ1xcdURGRjl8XFx1MjZCMVxcdUZFMEZ8XFx1RDgzQ1xcdURGN0V8XFx1MjZDOFxcdUZFMEZ8XFx1RDgzQ1xcdURGN0Z8XFx1MjZDRlxcdUZFMEZ8XFx1RDgzQ1xcdURGMkZ8XFx1MjZEMVxcdUZFMEZ8XFx1RDgzQ1xcdURGMkV8XFx1MjZEM1xcdUZFMEZ8XFx1RDgzQ1xcdURGMkR8XFx1MjZFOVxcdUZFMEZ8XFx1RDgzRVxcdUREQzB8XFx1MjZGMFxcdUZFMEZ8XFx1RDgzRVxcdUREODN8XFx1MjZGMVxcdUZFMEZ8XFx1RDgzRVxcdUREODB8XFx1MjZGNFxcdUZFMEZ8XFx1RDgzRVxcdUREODJ8XFx1MjZGN1xcdUZFMEZ8XFx1RDgzRVxcdUREODR8XFx1MjZGOFxcdUZFMEZ8XFx1RDgzRVxcdUREODF8XFx1MjZGOVxcdUZFMEZ8XFx1RDgzRVxcdUREMTZ8XFx1MjcyMVxcdUZFMEZ8XFx1RDgzRVxcdUREMTV8XFx1Mjc2M1xcdUZFMEZ8XFx1RDgzRVxcdUREMTJ8XFx1RDgzRVxcdURENDl8XFx1RDgzRVxcdURENDh8XFx1RDgzRVxcdURENDd8XFx1RDgzRVxcdUREM0F8XFx1RDgzRVxcdURENDV8XFx1RDgzRVxcdUREM0V8XFx1RDgzQ1xcdURERkZ8XFx1RDgzRVxcdUREM0R8XFx1RDgzRVxcdURENEJ8XFx1RDgzRVxcdURENEF8XFx1RDgzRVxcdUREM0N8XFx1RDgzRVxcdUREMzl8XFx1RDgzRVxcdUREMzh8XFx1RDgzRFxcdURFRjZ8XFx1RDgzRFxcdURFRjV8XFx1RDgzRFxcdURFRjR8XFx1RDgzRFxcdURFRDJ8XFx1RDgzQ1xcdURDQ0Z8XFx1RDgzQ1xcdURENzB8XFx1RDgzQ1xcdURENzF8XFx1RDgzQ1xcdUREN0V8XFx1RDgzRFxcdURFRDF8XFx1RDgzQ1xcdUREOEV8XFx1RDgzQ1xcdUREOTF8XFx1RDgzQ1xcdURERkV8XFx1RDgzQ1xcdUREOTJ8XFx1RDgzQ1xcdUREOTN8XFx1RDgzQ1xcdUREOTR8XFx1RDgzQ1xcdUREOTV8XFx1RDgzQ1xcdUREOTZ8XFx1RDgzQ1xcdUREOTd8XFx1RDgzQ1xcdUREOTh8XFx1RDgzRVxcdURENDR8XFx1RDgzQ1xcdUREOTl8XFx1RDgzQ1xcdUREOUF8XFx1RDgzRVxcdURENDJ8XFx1RDgzRVxcdURENDN8XFx1RDgzQ1xcdURFMDF8XFx1RDgzRVxcdURENTl8XFx1RDgzQ1xcdURFMzJ8XFx1RDgzQ1xcdURFMzN8XFx1RDgzQ1xcdURFMzR8XFx1RDgzQ1xcdURFMzV8XFx1RDgzQ1xcdURFMzZ8XFx1RDgzRVxcdURENTh8XFx1RDgzQ1xcdURFMzh8XFx1RDgzQ1xcdURFMzl8XFx1RDgzRVxcdURENTd8XFx1RDgzQ1xcdURFM0F8XFx1RDgzQ1xcdURFNTB8XFx1RDgzQ1xcdURFNTF8XFx1RDgzQ1xcdURGMDB8XFx1RDgzRVxcdURENTZ8XFx1RDgzQ1xcdURGMDF8XFx1RDgzQ1xcdURGMDJ8XFx1RDgzQ1xcdURGMDN8XFx1RDgzQ1xcdURGMDR8XFx1RDgzQ1xcdURGMDV8XFx1RDgzQ1xcdURGMDZ8XFx1RDgzRVxcdURENTV8XFx1RDgzQ1xcdURGMDd8XFx1RDgzQ1xcdURGMDh8XFx1RDgzRVxcdURENTR8XFx1RDgzQ1xcdURGMDl8XFx1RDgzQ1xcdURGMEF8XFx1RDgzQ1xcdURGMEJ8XFx1RDgzQ1xcdURGMEN8XFx1RDgzQ1xcdURGMEZ8XFx1RDgzQ1xcdURGMTF8XFx1RDgzRVxcdURENTN8XFx1RDgzQ1xcdURGMTN8XFx1RDgzQ1xcdURGMTR8XFx1RDgzQ1xcdURGMTV8XFx1RDgzQ1xcdURGMTl8XFx1RDgzQ1xcdURGMUJ8XFx1RDgzQ1xcdURGMUZ8XFx1RDgzRVxcdURENTJ8XFx1RDgzQ1xcdURGMjB8XFx1RDgzQ1xcdURGMzB8XFx1RDgzRVxcdURENTF8XFx1RDgzQ1xcdURGMzF8XFx1RDgzQ1xcdURGMzR8XFx1RDgzQ1xcdURGMzV8XFx1RDgzQ1xcdURGMzd8XFx1RDgzQ1xcdURGMzh8XFx1RDgzQ1xcdURGMzl8XFx1RDgzQ1xcdURGM0F8XFx1RDgzQ1xcdURGM0J8XFx1RDgzQ1xcdURGM0N8XFx1RDgzQ1xcdURGM0R8XFx1RDgzRVxcdURENTB8XFx1RDgzQ1xcdURGM0V8XFx1RDgzQ1xcdURGM0Z8XFx1RDgzQ1xcdURGNDB8XFx1RDgzQ1xcdURGNDF8XFx1RDgzQ1xcdURGNDJ8XFx1RDgzQ1xcdURGNDN8XFx1RDgzQ1xcdURGNDR8XFx1RDgzQ1xcdURGNDV8XFx1RDgzQ1xcdURGNDZ8XFx1RDgzQ1xcdURGNDd8XFx1RDgzQ1xcdURGNDh8XFx1RDgzQ1xcdURGNDl8XFx1RDgzQ1xcdURGNEF8XFx1RDgzRVxcdURENDB8XFx1RDgzQ1xcdURGNEN8XFx1RDgzQ1xcdURGNER8XFx1RDgzQ1xcdURGNEV8XFx1RDgzQ1xcdURGNEZ8XFx1RDgzQ1xcdURGNTF8XFx1RDgzQ1xcdURGNTJ8XFx1RDgzQ1xcdURGNTN8XFx1RDgzRVxcdUREOEZ8XFx1RDgzQ1xcdURGNTR8XFx1RDgzQ1xcdURGNTV8XFx1RDgzQ1xcdURGNTZ8XFx1RDgzRVxcdUREOEV8XFx1RDgzQ1xcdURGNTd8XFx1RDgzQ1xcdURGNTh8XFx1RDgzQ1xcdURGNTl8XFx1RDgzRVxcdUREOER8XFx1RDgzQ1xcdURGNUF8XFx1RDgzQ1xcdURGNUJ8XFx1RDgzRVxcdUREOEN8XFx1RDgzQ1xcdURGNUN8XFx1RDgzQ1xcdURGNUR8XFx1RDgzQ1xcdURGNUV8XFx1RDgzQ1xcdURGNUZ8XFx1RDgzRVxcdUREOEJ8XFx1RDgzQ1xcdURGNjB8XFx1RDgzQ1xcdURGNjF8XFx1RDgzRVxcdUREOEF8XFx1RDgzQ1xcdURGNjJ8XFx1RDgzQ1xcdURGNjN8XFx1RDgzRVxcdUREODl8XFx1RDgzQ1xcdURGNjR8XFx1RDgzQ1xcdURGNjV8XFx1RDgzRVxcdUREODh8XFx1RDgzQ1xcdURGNjZ8XFx1RDgzRVxcdUREODd8XFx1RDgzQ1xcdURGNjd8XFx1RDgzQ1xcdURERkR8XFx1RDgzQ1xcdURGNjh8XFx1RDgzRVxcdUREODZ8XFx1RDgzQ1xcdURGNjl8XFx1RDgzRVxcdUREODV8XFx1RDgzQ1xcdURGNkF8XFx1RDgzRFxcdUREQTR8XFx1RDgzQ1xcdURGNkJ8XFx1RDgzQ1xcdURGNkN8XFx1RDgzQ1xcdURGNkR8XFx1RDgzQ1xcdURGNkV8XFx1RDgzQ1xcdURGNkZ8XFx1RDgzRVxcdUREMUV8XFx1RDgzQ1xcdURGNzB8XFx1RDgzQ1xcdURGNzF8XFx1RDgzQ1xcdURGNzJ8XFx1RDgzRVxcdUREMUR8XFx1RDgzQ1xcdURGNzN8XFx1RDgzQ1xcdURGNzR8XFx1RDgzQ1xcdURGNzV8XFx1RDgzQ1xcdURGNzZ8XFx1RDgzQ1xcdURGNzd8XFx1RDgzQ1xcdURGNzh8XFx1RDgzQ1xcdURGNzl8XFx1RDgzQ1xcdURGN0F8XFx1RDgzQ1xcdURGN0J8XFx1RDgzQ1xcdURGODB8XFx1RDgzQ1xcdURGODF8XFx1RDgzQ1xcdURGODJ8XFx1RDgzQ1xcdURGODN8XFx1RDgzRVxcdUREMUJ8XFx1RDgzRVxcdUREMUN8XFx1RDgzQ1xcdURGODR8XFx1RDgzQ1xcdURGODV8XFx1RDgzQ1xcdURGODZ8XFx1RDgzRVxcdUREMUF8XFx1RDgzQ1xcdURGODd8XFx1RDgzQ1xcdURGODh8XFx1RDgzQ1xcdURGODl8XFx1RDgzQ1xcdURGOEF8XFx1RDgzQ1xcdURGOEJ8XFx1RDgzQ1xcdURGOEN8XFx1RDgzRVxcdUREMTl8XFx1RDgzQ1xcdURGOER8XFx1RDgzRFxcdUREN0F8XFx1RDgzQ1xcdURGOEV8XFx1RDgzRVxcdUREMzN8XFx1RDgzQ1xcdURGOEZ8XFx1RDgzRVxcdUREMzB8XFx1RDgzQ1xcdURGOTB8XFx1RDgzRVxcdUREMjZ8XFx1RDgzRVxcdUREMzd8XFx1RDgzQ1xcdURGOTF8XFx1RDgzQ1xcdURGOTJ8XFx1RDgzQ1xcdURGOTN8XFx1RDgzQ1xcdURGQTB8XFx1RDgzQ1xcdURGQTF8XFx1RDgzQ1xcdURGQTJ8XFx1RDgzQ1xcdURGQTN8XFx1RDgzQ1xcdURGQTR8XFx1RDgzQ1xcdURGQTV8XFx1RDgzQ1xcdURGQTZ8XFx1RDgzQ1xcdURGQTd8XFx1RDgzRVxcdUREMzZ8XFx1RDgzQ1xcdURGQTh8XFx1RDgzRVxcdUREMzV8XFx1RDgzQ1xcdURGQTl8XFx1RDgzQ1xcdURGQUF8XFx1RDgzRVxcdUREMzR8XFx1RDgzQ1xcdURGQUJ8XFx1RDgzQ1xcdURGQUN8XFx1RDgzQ1xcdURGQUR8XFx1RDgzRVxcdUREMjd8XFx1RDgzQ1xcdURGQUV8XFx1RDgzQ1xcdURGQUZ8XFx1RDgzQ1xcdURGQjB8XFx1RDgzQ1xcdURGQjF8XFx1RDgzQ1xcdURGQjJ8XFx1RDgzQ1xcdURGQjN8XFx1RDgzQ1xcdURGQjR8XFx1RDgzRVxcdUREMjV8XFx1RDgzQ1xcdURGQjV8XFx1RDgzQ1xcdURGQjZ8XFx1RDgzQ1xcdURGQjd8XFx1RDgzRVxcdUREMjR8XFx1RDgzQ1xcdURGQjh8XFx1RDgzQ1xcdURGQjl8XFx1RDgzQ1xcdURGQkF8XFx1RDgzRVxcdUREMjN8XFx1RDgzQ1xcdURGQkJ8XFx1RDgzQ1xcdURGQkN8XFx1RDgzQ1xcdURGQkR8XFx1RDgzRVxcdUREMjJ8XFx1RDgzQ1xcdURGQkV8XFx1RDgzQ1xcdURGQkZ8XFx1RDgzQ1xcdURGQzB8XFx1RDgzQ1xcdURGQzF8XFx1RDgzRVxcdUREMjF8XFx1RDgzQ1xcdURGQzJ8XFx1RDgzQ1xcdURGQzN8XFx1RDgzQ1xcdURGQzR8XFx1RDgzQ1xcdURGQzZ8XFx1RDgzQ1xcdURGQzh8XFx1RDgzQ1xcdURGQ0F8XFx1RDgzQ1xcdURGRTB8XFx1RDgzQ1xcdURGRTF8XFx1RDgzQ1xcdURGRTJ8XFx1RDgzQ1xcdURGRTN8XFx1RDgzQ1xcdURGRTV8XFx1RDgzQ1xcdURGRTZ8XFx1RDgzQ1xcdURGRTd8XFx1RDgzQ1xcdURGRTh8XFx1RDgzQ1xcdURGRTl8XFx1RDgzQ1xcdURGRUF8XFx1RDgzQ1xcdURGRUJ8XFx1RDgzQ1xcdURGRUN8XFx1RDgzRVxcdUREMjB8XFx1RDgzQ1xcdURGRUR8XFx1RDgzQ1xcdURGRUV8XFx1RDgzQ1xcdURGRUZ8XFx1RDgzQ1xcdURGRjB8XFx1RDgzRFxcdURDMEN8XFx1RDgzRFxcdURDMER8XFx1RDgzRFxcdURDMEV8XFx1RDgzRFxcdURDMTF8XFx1RDgzRFxcdURDMTJ8XFx1RDgzRFxcdURDMTR8XFx1RDgzRFxcdURDMTd8XFx1RDgzRFxcdURDMTh8XFx1RDgzRFxcdURDMTl8XFx1RDgzRFxcdURDMUF8XFx1RDgzRFxcdURDMUJ8XFx1RDgzRFxcdURDMUN8XFx1RDgzRFxcdURDMUR8XFx1RDgzRFxcdURDMUV8XFx1RDgzRFxcdURDMUZ8XFx1RDgzRFxcdURDMjB8XFx1RDgzRFxcdURDMjF8XFx1RDgzRFxcdURDMjJ8XFx1RDgzRFxcdURDMjN8XFx1RDgzRFxcdURDMjR8XFx1RDgzRFxcdURDMjV8XFx1RDgzRFxcdURDMjZ8XFx1RDgzRFxcdURDMjd8XFx1RDgzRFxcdURDMjh8XFx1RDgzRFxcdURDMjl8XFx1RDgzRFxcdURDMkJ8XFx1RDgzRFxcdURDMkN8XFx1RDgzRFxcdURDMkR8XFx1RDgzRFxcdURDMkV8XFx1RDgzRFxcdURDMkZ8XFx1RDgzRFxcdURDMzB8XFx1RDgzRFxcdURDMzF8XFx1RDgzRFxcdURDMzJ8XFx1RDgzRFxcdURDMzN8XFx1RDgzRFxcdURDMzR8XFx1RDgzRFxcdURDMzV8XFx1RDgzRFxcdURDMzZ8XFx1RDgzRFxcdURDMzd8XFx1RDgzRFxcdURDMzh8XFx1RDgzRFxcdURDMzl8XFx1RDgzRFxcdURDM0F8XFx1RDgzRFxcdURDM0J8XFx1RDgzRFxcdURDM0N8XFx1RDgzRFxcdURDM0R8XFx1RDgzRFxcdURDM0V8XFx1RDgzRFxcdURDNDB8XFx1RDgzRFxcdURDNDJ8XFx1RDgzRFxcdURDNDN8XFx1RDgzRFxcdURDNDR8XFx1RDgzRFxcdURDNDV8XFx1RDgzRFxcdURDNDZ8XFx1RDgzRFxcdURDNDd8XFx1RDgzRFxcdURDNDh8XFx1RDgzRFxcdURDNDl8XFx1RDgzRFxcdURDNEF8XFx1RDgzRFxcdURDNEJ8XFx1RDgzRFxcdURDNEN8XFx1RDgzRFxcdURDNER8XFx1RDgzRFxcdURDNEV8XFx1RDgzRFxcdURDNEZ8XFx1RDgzRFxcdURDNTB8XFx1RDgzRFxcdURDNTF8XFx1RDgzRFxcdURDNTJ8XFx1RDgzRFxcdURDNTN8XFx1RDgzRFxcdURDNTR8XFx1RDgzRFxcdURDNTV8XFx1RDgzRFxcdURDNTZ8XFx1RDgzRFxcdURDNTd8XFx1RDgzRFxcdURDNTh8XFx1RDgzRFxcdURDNTl8XFx1RDgzRFxcdURDNUF8XFx1RDgzRFxcdURDNUJ8XFx1RDgzRFxcdURDNUN8XFx1RDgzRFxcdURDNUR8XFx1RDgzRFxcdURDNUV8XFx1RDgzRFxcdURDNUZ8XFx1RDgzRFxcdURDNjB8XFx1RDgzRFxcdURDNjF8XFx1RDgzRFxcdURDNjJ8XFx1RDgzRFxcdURDNjN8XFx1RDgzRFxcdURDNjR8XFx1RDgzRFxcdURDNjZ8XFx1RDgzRFxcdURDNjd8XFx1RDgzRFxcdURDNjh8XFx1RDgzRFxcdURDNjl8XFx1RDgzRFxcdURDNkF8XFx1RDgzRFxcdURDNkJ8XFx1RDgzRFxcdURDNkV8XFx1RDgzRFxcdURDNkZ8XFx1RDgzRFxcdURDNzB8XFx1RDgzRFxcdURDNzF8XFx1RDgzRFxcdURDNzJ8XFx1RDgzRFxcdURDNzN8XFx1RDgzRFxcdURDNzR8XFx1RDgzRFxcdURDNzV8XFx1RDgzRFxcdURDNzZ8XFx1RDgzRFxcdURDNzd8XFx1RDgzRFxcdURDNzh8XFx1RDgzRFxcdURDNzl8XFx1RDgzRFxcdURDN0F8XFx1RDgzRFxcdURDN0J8XFx1RDgzRFxcdURDN0N8XFx1RDgzRFxcdURDN0R8XFx1RDgzRFxcdURDN0V8XFx1RDgzRFxcdURDN0Z8XFx1RDgzRFxcdURDODB8XFx1RDgzRFxcdURDQzd8XFx1RDgzRFxcdURDODF8XFx1RDgzRFxcdURDODJ8XFx1RDgzRFxcdURDODN8XFx1RDgzRFxcdURDODR8XFx1RDgzRFxcdURDODV8XFx1RDgzRFxcdURDRDJ8XFx1RDgzRFxcdURDODZ8XFx1RDgzRFxcdURDRDN8XFx1RDgzRFxcdURDODd8XFx1RDgzRFxcdURDRDR8XFx1RDgzRFxcdURDODh8XFx1RDgzRFxcdURDRDV8XFx1RDgzRFxcdURDODl8XFx1RDgzRFxcdURDRDZ8XFx1RDgzRFxcdURDOEF8XFx1RDgzRFxcdURDRDd8XFx1RDgzRFxcdURDOEJ8XFx1RDgzRFxcdURDRDh8XFx1RDgzRFxcdURDOEN8XFx1RDgzRFxcdURDRDl8XFx1RDgzRFxcdURDOER8XFx1RDgzRFxcdURDREF8XFx1RDgzRFxcdURDOEV8XFx1RDgzRFxcdURDREJ8XFx1RDgzRFxcdURDOEZ8XFx1RDgzRFxcdURDREN8XFx1RDgzRFxcdURDOTB8XFx1RDgzRFxcdURDRER8XFx1RDgzRFxcdURDOTF8XFx1RDgzRFxcdURDREV8XFx1RDgzRFxcdURDOTJ8XFx1RDgzRFxcdURDREZ8XFx1RDgzRFxcdURDRTB8XFx1RDgzRFxcdURDOTN8XFx1RDgzRFxcdURDRTF8XFx1RDgzRFxcdURDRTJ8XFx1RDgzRFxcdURDOTR8XFx1RDgzRFxcdURDRTN8XFx1RDgzRFxcdURDRTR8XFx1RDgzRFxcdURDOTV8XFx1RDgzRFxcdURDRTV8XFx1RDgzRFxcdURDRTZ8XFx1RDgzRFxcdURDOTZ8XFx1RDgzRFxcdURDRTd8XFx1RDgzRFxcdURDRTh8XFx1RDgzRFxcdURDOTd8XFx1RDgzRFxcdURDRTl8XFx1RDgzRFxcdURDRUF8XFx1RDgzRFxcdURDOTh8XFx1RDgzRFxcdURDRUJ8XFx1RDgzRFxcdURDRUV8XFx1RDgzRFxcdURDOTl8XFx1RDgzRFxcdURDRjB8XFx1RDgzRFxcdURDRjF8XFx1RDgzRFxcdURDOUF8XFx1RDgzRFxcdURDRjJ8XFx1RDgzRFxcdURDRjN8XFx1RDgzRFxcdURDOUJ8XFx1RDgzRFxcdURDRjR8XFx1RDgzRFxcdURDRjZ8XFx1RDgzRFxcdURDOUN8XFx1RDgzRFxcdURDRjd8XFx1RDgzRFxcdURDRjl8XFx1RDgzRFxcdURDOUR8XFx1RDgzRFxcdURDRkF8XFx1RDgzRFxcdURDRkJ8XFx1RDgzRFxcdURDOUV8XFx1RDgzRFxcdURDRkN8XFx1RDgzRFxcdUREMDN8XFx1RDgzRFxcdURDOUZ8XFx1RDgzRFxcdUREMEF8XFx1RDgzRFxcdUREMEJ8XFx1RDgzRFxcdURDQTB8XFx1RDgzRFxcdUREMEN8XFx1RDgzRFxcdUREMER8XFx1RDgzRFxcdURDQTF8XFx1RDgzRFxcdUREMEV8XFx1RDgzRFxcdUREMEZ8XFx1RDgzRFxcdURDQTJ8XFx1RDgzRFxcdUREMTB8XFx1RDgzRFxcdUREMTF8XFx1RDgzRFxcdURDQTN8XFx1RDgzRFxcdUREMTJ8XFx1RDgzRFxcdUREMTN8XFx1RDgzRFxcdURDQTR8XFx1RDgzRFxcdUREMTR8XFx1RDgzRFxcdUREMTZ8XFx1RDgzRFxcdURDQTV8XFx1RDgzRFxcdUREMTd8XFx1RDgzRFxcdUREMTh8XFx1RDgzRFxcdURDQTZ8XFx1RDgzRFxcdUREMTl8XFx1RDgzRFxcdUREMUF8XFx1RDgzRFxcdURDQTd8XFx1RDgzRFxcdUREMUJ8XFx1RDgzRFxcdUREMUN8XFx1RDgzRFxcdURDQTh8XFx1RDgzRFxcdUREMUR8XFx1RDgzRFxcdUREMUV8XFx1RDgzRFxcdURDQTl8XFx1RDgzRFxcdUREMUZ8XFx1RDgzRFxcdURDQUF8XFx1RDgzRFxcdUREMjB8XFx1RDgzRFxcdUREMjF8XFx1RDgzRFxcdURDQUJ8XFx1RDgzRFxcdUREMjJ8XFx1RDgzRFxcdUREMjN8XFx1RDgzRFxcdURDQUN8XFx1RDgzRFxcdUREMjR8XFx1RDgzRFxcdUREMjV8XFx1RDgzRFxcdURDQUV8XFx1RDgzRFxcdUREMjZ8XFx1RDgzRFxcdUREMjd8XFx1RDgzRFxcdURDQUZ8XFx1RDgzRFxcdUREMjh8XFx1RDgzRFxcdUREMjl8XFx1RDgzRFxcdURDQjB8XFx1RDgzRFxcdUREMkF8XFx1RDgzRFxcdUREMkJ8XFx1RDgzRFxcdURDQjF8XFx1RDgzRFxcdUREMkV8XFx1RDgzRFxcdURDQjJ8XFx1RDgzRFxcdUREMkZ8XFx1RDgzRFxcdURDQjN8XFx1RDgzRFxcdUREMzB8XFx1RDgzRFxcdUREMzF8XFx1RDgzRFxcdURDQjR8XFx1RDgzRFxcdUREMzJ8XFx1RDgzRFxcdUREMzN8XFx1RDgzRFxcdURDQjV8XFx1RDgzRFxcdUREMzR8XFx1RDgzRFxcdUREMzV8XFx1RDgzRFxcdURDQjh8XFx1RDgzRFxcdUREMzZ8XFx1RDgzRFxcdUREMzd8XFx1RDgzRFxcdURDQjl8XFx1RDgzRFxcdUREMzh8XFx1RDgzRFxcdUREMzl8XFx1RDgzRFxcdURDQkF8XFx1RDgzRFxcdUREM0F8XFx1RDgzRFxcdUREM0J8XFx1RDgzRFxcdURDQkJ8XFx1RDgzRFxcdUREM0N8XFx1RDgzRFxcdURDQkN8XFx1RDgzRFxcdUREM0R8XFx1RDgzRFxcdURENTB8XFx1RDgzRFxcdURDQkR8XFx1RDgzRFxcdURENTF8XFx1RDgzRFxcdURDQkV8XFx1RDgzRFxcdURENTJ8XFx1RDgzRFxcdURDQkZ8XFx1RDgzRFxcdURENTN8XFx1RDgzRFxcdURDQzB8XFx1RDgzRFxcdURENTR8XFx1RDgzRFxcdURENTV8XFx1RDgzRFxcdURDQzF8XFx1RDgzRFxcdURENTZ8XFx1RDgzRFxcdURENTd8XFx1RDgzRFxcdURDQzJ8XFx1RDgzRFxcdURENTh8XFx1RDgzRFxcdURENTl8XFx1RDgzRFxcdURDQzN8XFx1RDgzRFxcdURENUF8XFx1RDgzRFxcdURENUJ8XFx1RDgzRFxcdURDQzR8XFx1RDgzRFxcdURERkJ8XFx1RDgzRFxcdURERkN8XFx1RDgzRFxcdURDQzV8XFx1RDgzRFxcdURERkR8XFx1RDgzRFxcdURERkV8XFx1RDgzRFxcdURDQzZ8XFx1RDgzRFxcdURERkZ8XFx1RDgzRFxcdURFMDF8XFx1RDgzRFxcdURFMDJ8XFx1RDgzRFxcdURFMDN8XFx1RDgzRFxcdURDQzh8XFx1RDgzRFxcdURFMDR8XFx1RDgzRFxcdURFMDV8XFx1RDgzRFxcdURDQzl8XFx1RDgzRFxcdURFMDZ8XFx1RDgzRFxcdURFMDl8XFx1RDgzRFxcdURDQ0F8XFx1RDgzRFxcdURFMEF8XFx1RDgzRFxcdURFMEJ8XFx1RDgzRFxcdURDQ0J8XFx1RDgzRFxcdURFMEN8XFx1RDgzRFxcdURFMER8XFx1RDgzRFxcdURDQ0N8XFx1RDgzRFxcdURFMEZ8XFx1RDgzRFxcdURFMTJ8XFx1RDgzRFxcdURDQ0R8XFx1RDgzRFxcdURFMTN8XFx1RDgzRFxcdURFMTR8XFx1RDgzRFxcdURDQ0V8XFx1RDgzRFxcdURFMTZ8XFx1RDgzRFxcdURFMTh8XFx1RDgzRFxcdURDQ0Z8XFx1RDgzRFxcdURFMUF8XFx1RDgzRFxcdURFMUN8XFx1RDgzRFxcdURDRDB8XFx1RDgzRFxcdURFMUR8XFx1RDgzRFxcdURFMUV8XFx1RDgzRFxcdURDRDF8XFx1RDgzRFxcdURFMjB8XFx1RDgzRFxcdURFMjF8XFx1RDgzRFxcdURFMjJ8XFx1RDgzRFxcdURFMjN8XFx1RDgzRFxcdURFMjR8XFx1RDgzRFxcdURFMjV8XFx1RDgzRFxcdURFMjh8XFx1RDgzRFxcdURFMjl8XFx1RDgzRFxcdURFMkF8XFx1RDgzRFxcdURFMkJ8XFx1RDgzRFxcdURFMkR8XFx1RDgzRFxcdURFMzB8XFx1RDgzRFxcdURFMzF8XFx1RDgzRFxcdURFMzJ8XFx1RDgzRFxcdURFMzN8XFx1RDgzRFxcdURFMzV8XFx1RDgzRFxcdURFMzd8XFx1RDgzRFxcdURFMzh8XFx1RDgzRFxcdURFMzl8XFx1RDgzRFxcdURFM0F8XFx1RDgzRFxcdURFM0J8XFx1RDgzRFxcdURFM0N8XFx1RDgzRFxcdURFM0R8XFx1RDgzRFxcdURFM0V8XFx1RDgzRFxcdURFM0Z8XFx1RDgzRFxcdURFNDB8XFx1RDgzRFxcdURFNDV8XFx1RDgzRFxcdURFNDZ8XFx1RDgzRFxcdURFNDd8XFx1RDgzRFxcdURFNDh8XFx1RDgzRFxcdURFNDl8XFx1RDgzRFxcdURFNEF8XFx1RDgzRFxcdURFNEJ8XFx1RDgzRFxcdURFNEN8XFx1RDgzRFxcdURFNER8XFx1RDgzRFxcdURFNEV8XFx1RDgzRFxcdURFNEZ8XFx1RDgzRFxcdURFODB8XFx1RDgzRFxcdURFODN8XFx1RDgzRFxcdURFODR8XFx1RDgzRFxcdURFODV8XFx1RDgzRFxcdURFODd8XFx1RDgzRFxcdURFODl8XFx1RDgzRFxcdURFOEN8XFx1RDgzRFxcdURFOEZ8XFx1RDgzRFxcdURFOTF8XFx1RDgzRFxcdURFOTJ8XFx1RDgzRFxcdURFOTN8XFx1RDgzRFxcdURFOTV8XFx1RDgzRFxcdURFOTd8XFx1RDgzRFxcdURFOTl8XFx1RDgzRFxcdURFOUF8XFx1RDgzRFxcdURFQTJ8XFx1RDgzRFxcdURFQTR8XFx1RDgzRFxcdURFQTV8XFx1RDgzRFxcdURFQTd8XFx1RDgzRFxcdURFQTh8XFx1RDgzRFxcdURFQTl8XFx1RDgzRFxcdURFQUF8XFx1RDgzRFxcdURFQUJ8XFx1RDgzRFxcdURFQUN8XFx1RDgzRFxcdURFQUR8XFx1RDgzRFxcdURFQjJ8XFx1RDgzRFxcdURFQjZ8XFx1RDgzRFxcdURFQjl8XFx1RDgzRFxcdURFQkF8XFx1RDgzRFxcdURFQkJ8XFx1RDgzRFxcdURFQkN8XFx1RDgzRFxcdURFQkR8XFx1RDgzRFxcdURFQkV8XFx1RDgzRFxcdURFQzB8XFx1RDgzRVxcdUREMTh8XFx1RDgzRFxcdURFMDB8XFx1RDgzRFxcdURFMDd8XFx1RDgzRFxcdURFMDh8XFx1RDgzRFxcdURFMEV8XFx1RDgzRFxcdURFMTB8XFx1RDgzRFxcdURFMTF8XFx1RDgzRFxcdURFMTV8XFx1RDgzRFxcdURFMTd8XFx1RDgzRFxcdURFMTl8XFx1RDgzRFxcdURFMUJ8XFx1RDgzRFxcdURFMUZ8XFx1RDgzRFxcdURFMjZ8XFx1RDgzRFxcdURFMjd8XFx1RDgzRFxcdURFMkN8XFx1RDgzRFxcdURFMkV8XFx1RDgzRFxcdURFMkZ8XFx1RDgzRFxcdURFMzR8XFx1RDgzRFxcdURFMzZ8XFx1RDgzRFxcdURFODF8XFx1RDgzRFxcdURFODJ8XFx1RDgzRFxcdURFODZ8XFx1RDgzRFxcdURFODh8XFx1RDgzRFxcdURFOEF8XFx1RDgzRFxcdURFOER8XFx1RDgzRFxcdURFOEV8XFx1RDgzRFxcdURFOTB8XFx1RDgzRFxcdURFOTR8XFx1RDgzRFxcdURFOTZ8XFx1RDgzRFxcdURFOTh8XFx1RDgzRFxcdURFOUJ8XFx1RDgzRFxcdURFOUN8XFx1RDgzRFxcdURFOUR8XFx1RDgzRFxcdURFOUV8XFx1RDgzRFxcdURFOUZ8XFx1RDgzRFxcdURFQTB8XFx1RDgzRFxcdURFQTF8XFx1RDgzRFxcdURFQTN8XFx1RDgzRFxcdURFQTZ8XFx1RDgzRFxcdURFQUV8XFx1RDgzRFxcdURFQUZ8XFx1RDgzRFxcdURFQjB8XFx1RDgzRFxcdURFQjF8XFx1RDgzRFxcdURFQjN8XFx1RDgzRFxcdURFQjR8XFx1RDgzRFxcdURFQjV8XFx1RDgzRFxcdURFQjd8XFx1RDgzRFxcdURFQjh8XFx1RDgzRFxcdURFQkZ8XFx1RDgzRFxcdURFQzF8XFx1RDgzRFxcdURFQzJ8XFx1RDgzRFxcdURFQzN8XFx1RDgzRFxcdURFQzR8XFx1RDgzRFxcdURFQzV8XFx1RDgzQ1xcdURGMER8XFx1RDgzQ1xcdURGMEV8XFx1RDgzQ1xcdURGMTB8XFx1RDgzQ1xcdURGMTJ8XFx1RDgzQ1xcdURGMTZ8XFx1RDgzQ1xcdURGMTd8XFx1RDgzQ1xcdURGMTh8XFx1RDgzQ1xcdURGMUF8XFx1RDgzQ1xcdURGMUN8XFx1RDgzQ1xcdURGMUR8XFx1RDgzQ1xcdURGMUV8XFx1RDgzQ1xcdURGMzJ8XFx1RDgzQ1xcdURGMzN8XFx1RDgzQ1xcdURGNEJ8XFx1RDgzQ1xcdURGNTB8XFx1RDgzQ1xcdURGN0N8XFx1RDgzQ1xcdURGQzd8XFx1RDgzQ1xcdURGQzl8XFx1RDgzQ1xcdURGRTR8XFx1RDgzRFxcdURDMDB8XFx1RDgzRFxcdURDMDF8XFx1RDgzRFxcdURDMDJ8XFx1RDgzRFxcdURDMDN8XFx1RDgzRFxcdURDMDR8XFx1RDgzRFxcdURDMDV8XFx1RDgzRFxcdURDMDZ8XFx1RDgzRFxcdURDMDd8XFx1RDgzRFxcdURDMDh8XFx1RDgzRFxcdURDMDl8XFx1RDgzRFxcdURDMEF8XFx1RDgzRFxcdURDMEJ8XFx1RDgzRFxcdURDMEZ8XFx1RDgzRFxcdURDMTB8XFx1RDgzRFxcdURDMTN8XFx1RDgzRFxcdURDMTV8XFx1RDgzRFxcdURDMTZ8XFx1RDgzRFxcdURDMkF8XFx1RDgzRFxcdURDNjV8XFx1RDgzRFxcdURDNkN8XFx1RDgzRFxcdURDNkR8XFx1RDgzRFxcdURDQUR8XFx1RDgzRFxcdURDQjZ8XFx1RDgzRFxcdURDQjd8XFx1RDgzRFxcdURDRUN8XFx1RDgzRFxcdURDRUR8XFx1RDgzRFxcdURDRUZ8XFx1RDgzRFxcdURDRjV8XFx1RDgzRFxcdUREMDB8XFx1RDgzRFxcdUREMDF8XFx1RDgzRFxcdUREMDJ8XFx1RDgzRFxcdUREMDR8XFx1RDgzRFxcdUREMDV8XFx1RDgzRFxcdUREMDZ8XFx1RDgzRFxcdUREMDd8XFx1RDgzRFxcdUREMDl8XFx1RDgzRFxcdUREMTV8XFx1RDgzRFxcdUREMkN8XFx1RDgzRFxcdUREMkR8XFx1RDgzRFxcdURENUN8XFx1RDgzRFxcdURENUR8XFx1RDgzRFxcdURENUV8XFx1RDgzRFxcdURENUZ8XFx1RDgzRFxcdURENjB8XFx1RDgzRFxcdURENjF8XFx1RDgzRFxcdURENjJ8XFx1RDgzRFxcdURENjN8XFx1RDgzRFxcdURENjR8XFx1RDgzRFxcdURENjV8XFx1RDgzRFxcdURENjZ8XFx1RDgzRFxcdURENjd8XFx1RDgzRFxcdUREMDh8XFx1RDgzRFxcdURFOEJ8XFx1RDgzQ1xcdURGQzV8XFx1RDgzQ1xcdURGRjR8XFx1RDgzRFxcdURDRjh8XFx1RDgzRFxcdURFQ0N8XFx1RDgzRFxcdUREOTV8XFx1RDgzRFxcdUREOTZ8XFx1RDgzRFxcdURFNDF8XFx1RDgzRFxcdURFNDJ8XFx1RDgzRFxcdURFRUJ8XFx1RDgzRFxcdURFRUN8XFx1RDgzQ1xcdURGRkJ8XFx1RDgzQ1xcdURGRkN8XFx1RDgzQ1xcdURGRkR8XFx1RDgzQ1xcdURGRkV8XFx1RDgzQ1xcdURGRkZ8XFx1RDgzRFxcdURFNDN8XFx1RDgzRVxcdUREMTF8XFx1RDgzRVxcdUREMTN8XFx1RDgzRVxcdUREMTd8XFx1RDgzRFxcdURFNDR8XFx1RDgzRVxcdUREMTR8XFx1RDgzRVxcdUREMTB8XFx1MjZGMlxcdUZFMEZ8XFwjXFx1MjBFM3xcXDlcXHUyMEUzfFxcOFxcdTIwRTN8XFw3XFx1MjBFM3xcXDZcXHUyMEUzfFxcKlxcdTIwRTN8XFw0XFx1MjBFM3xcXDNcXHUyMEUzfFxcMlxcdTIwRTN8XFwxXFx1MjBFM3xcXDBcXHUyMEUzfFxcNVxcdTIwRTN8XFx1MjZCMXxcXHUyNkIwfFxcdTI2OUN8XFx1MjY5QnxcXHUyNjk5fFxcdTI2OTd8XFx1MjY5NnxcXHUyNjk0fFxcdTI2OTJ8XFx1MjYzOXxcXHUyNjM4fFxcdTI2MkZ8XFx1MjYyRXxcXHUyNjJBfFxcdTI2MjZ8XFx1MjYyM3xcXHUyNjIyfFxcdTI2MjB8XFx1MjYxOHxcXHUyNjA0fFxcdTI2MDN8XFx1MjYwMnxcXHUyM0ZBfFxcdTIzRjl8XFx1MjNGOHxcXHUyM0YyfFxcdTIzRjF8XFx1MjNFRnxcXHUyM0VFfFxcdTIzRUR8XFx1MjNDRnxcXHUyNzBEfFxcdTIzMjh8XFx1MjcxRHxcXHUzMjk5fFxcdTMyOTd8XFx1MzAzRHxcXHUzMDMwfFxcdTJCNTV8XFx1MkI1MHxcXHUyQjFDfFxcdTJCMUJ8XFx1MkIwN3xcXHUyQjA2fFxcdTJCMDV8XFx1MjkzNXxcXHUyM0U5fFxcdTIzRUF8XFx1MjNFQnxcXHUyM0VDfFxcdTIzRjB8XFx1MjNGM3xcXHUyNkNFfFxcdTI3MDV8XFx1MjcwQXxcXHUyNzBCfFxcdTI3Mjh8XFx1Mjc0Q3xcXHUyNzRFfFxcdTI3NTN8XFx1Mjc1NHxcXHUyNzU1fFxcdTI3OTV8XFx1Mjc5NnxcXHUyNzk3fFxcdTI3QjB8XFx1MjdCRnxcXHUwMEE5fFxcdTAwQUV8XFx1MjAzQ3xcXHUyMDQ5fFxcdTIxMjJ8XFx1MjEzOXxcXHUyMTk0fFxcdTIxOTV8XFx1MjE5NnxcXHUyMTk3fFxcdTIxOTh8XFx1MjE5OXxcXHUyMUE5fFxcdTIxQUF8XFx1MjMxQXxcXHUyMzFCfFxcdTI0QzJ8XFx1MjVBQXxcXHUyNUFCfFxcdTI1QjZ8XFx1MjVDMHxcXHUyNUZCfFxcdTI1RkN8XFx1MjVGRHxcXHUyNUZFfFxcdTI2MDB8XFx1MjYwMXxcXHUyNjBFfFxcdTI2MTF8XFx1MjYxNHxcXHUyNjE1fFxcdTI2MUR8XFx1MjYzQXxcXHUyNjQ4fFxcdTI2NDl8XFx1MjY0QXxcXHUyNjRCfFxcdTI2NEN8XFx1MjY0RHxcXHUyNjRFfFxcdTI2NEZ8XFx1MjY1MHxcXHUyNjUxfFxcdTI2NTJ8XFx1MjY1M3xcXHUyNjYwfFxcdTI2NjN8XFx1MjY2NXxcXHUyNjY2fFxcdTI2Njh8XFx1MjY3QnxcXHUyNjdGfFxcdTI2OTN8XFx1MjZBMHxcXHUyNkExfFxcdTI2QUF8XFx1MjZBQnxcXHUyNkJEfFxcdTI2QkV8XFx1MjZDNHxcXHUyNkM1fFxcdTI2RDR8XFx1MjZFQXxcXHUyNkYyfFxcdTI2RjN8XFx1MjZGNXxcXHUyNkZBfFxcdTI2RkR8XFx1MjcwMnxcXHUyNzA4fFxcdTI3MDl8XFx1MjcwQ3xcXHUyNzBGfFxcdTI3MTJ8XFx1MjcxNHxcXHUyNzE2fFxcdTI3MzN8XFx1MjczNHxcXHUyNzQ0fFxcdTI3NDd8XFx1MjcyMXxcXHUyNzY0fFxcdTI3QTF8XFx1MjkzNHxcXHUyOTM1fFxcdTJCMDV8XFx1MkIwNnxcXHUyQjA3fFxcdTJCMUJ8XFx1MkIxQ3xcXHUyQjUwfFxcdTJCNTV8XFx1MzAzMHxcXHUzMDNEfFxcdTMyOTd8XFx1MzI5OXxcXHUyOTM0fFxcdTI3QTF8XFx1Mjc2NHxcXHUyNzU3fFxcdTI3NDd8XFx1Mjc0NHxcXHUyNzM0fFxcdTI3MzN8XFx1MjcxNnxcXHUyNzE0fFxcdTI3MTJ8XFx1MjcwRnxcXHUyNzBDfFxcdTI3MDl8XFx1MjcwOHxcXHUyNzAyfFxcdTI2RkR8XFx1MjZGQXxcXHUyNkY1fFxcdTI2RjN8XFx1MjZGMnxcXHUyNkVBfFxcdTI2RDR8XFx1MjZDNXxcXHUyNkM0fFxcdTI2QkV8XFx1MjZCRHxcXHUyNkFCfFxcdTI2QUF8XFx1MjZBMXxcXHUyNkEwfFxcdTI2OTN8XFx1MjcxRHxcXHUyNjdGfFxcdTI2N0J8XFx1MjY2OHxcXHUyNjY2fFxcdTI2NjV8XFx1MjY2M3xcXHUyNjYwfFxcdTI2NTN8XFx1MjY1MnxcXHUyNjUxfFxcdTI2NTB8XFx1MjY0RnxcXHUyNjRFfFxcdTI2NER8XFx1MjMyOHxcXHUyNjRDfFxcdTI2NEJ8XFx1MjY0QXxcXHUyNjQ5fFxcdTI2NDh8XFx1MjYzQXxcXHUyNjFEfFxcdTI2MTV8XFx1MjYxNHxcXHUyNjExfFxcdTI2MEV8XFx1MjYwMXxcXHUyNjAwfFxcdTI1RkV8XFx1MjVGRHxcXHUyNUZDfFxcdTI1RkJ8XFx1MjVDMHxcXHUyNUI2fFxcdTI1QUJ8XFx1MjVBQXxcXHUyNEMyfFxcdTIzMUJ8XFx1MjMxQXxcXHUyMUFBfFxcdTI3MER8XFx1MjFBOXxcXHUyMTk5fFxcdTIxOTh8XFx1MjE5N3xcXHUyMTk2fFxcdTIxOTV8XFx1MjE5NHxcXHUyMTM5fFxcdTIxMjJ8XFx1MjA0OXxcXHUyMDNDfFxcdTAwQUV8XFx1MDBBOXxcXHUyNzYzfFxcdTI2Rjl8XFx1MjZGOHxcXHUyNkY3fFxcdTI2RjR8XFx1MjZGMXxcXHUyNkYwfFxcdTI2RTl8XFx1MjZEM3xcXHUyM0NGfFxcdTIzRUR8XFx1MjNFRXxcXHUyM0VGfFxcdTIzRjF8XFx1MjNGMnxcXHUyM0Y4fFxcdTIzRjl8XFx1MjNGQXxcXHUyNjAyfFxcdTI2MDN8XFx1MjYwNHxcXHUyNjE4fFxcdTI2MjB8XFx1MjYyMnxcXHUyNjIzfFxcdTI2MjZ8XFx1MjYyQXxcXHUyNjJFfFxcdTI2MkZ8XFx1MjYzOHxcXHUyNjM5fFxcdTI2OTJ8XFx1MjY5NHxcXHUyNjk2fFxcdTI2OTd8XFx1MjY5OXxcXHUyNjlCfFxcdTI2OUN8XFx1MjZCMHxcXHUyNkIxfFxcdTI2Qzh8XFx1MjZDRnxcXHUyNkQxfFxcdTI2RDN8XFx1MjZFOXxcXHUyNkYwfFxcdTI2RjF8XFx1MjZGNHxcXHUyNkY3fFxcdTI2Rjh8XFx1MjZGOXxcXHUyNzIxfFxcdTI3NjN8XFx1MjZEMXxcXHUyNkNGfFxcdTI2Qzh8XFx1Mjc1NykiLAphLmpzRXNjYXBlTWFwPXsi8J+RqeKAjeKdpO+4j+KAjfCfkovigI3wn5GpIjoiMWY0NjktMjAwZC0yNzY0LWZlMGYtMjAwZC0xZjQ4Yi0yMDBkLTFmNDY5Iiwi8J+RqeKdpPCfkovwn5GpIjoiMWY0NjktMjc2NC0xZjQ4Yi0xZjQ2OSIsIvCfkajigI3inaTvuI/igI3wn5KL4oCN8J+RqCI6IjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0OGItMjAwZC0xZjQ2OCIsIvCfkajinaTwn5KL8J+RqCI6IjFmNDY4LTI3NjQtMWY0OGItMWY0NjgiLCLwn5Go4oCN8J+RqOKAjfCfkabigI3wn5GmIjoiMWY0NjgtMjAwZC0xZjQ2OC0yMDBkLTFmNDY2LTIwMGQtMWY0NjYiLCLwn5Go8J+RqPCfkabwn5GmIjoiMWY0NjgtMWY0NjgtMWY0NjYtMWY0NjYiLCLwn5Go4oCN8J+RqOKAjfCfkafigI3wn5GmIjoiMWY0NjgtMjAwZC0xZjQ2OC0yMDBkLTFmNDY3LTIwMGQtMWY0NjYiLCLwn5Go8J+RqPCfkafwn5GmIjoiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjYiLCLwn5Go4oCN8J+RqOKAjfCfkafigI3wn5GnIjoiMWY0NjgtMjAwZC0xZjQ2OC0yMDBkLTFmNDY3LTIwMGQtMWY0NjciLCLwn5Go8J+RqPCfkafwn5GnIjoiMWY0NjgtMWY0NjgtMWY0NjctMWY0NjciLCLwn5Go4oCN8J+RqeKAjfCfkabigI3wn5GmIjoiMWY0NjgtMjAwZC0xZjQ2OS0yMDBkLTFmNDY2LTIwMGQtMWY0NjYiLCLwn5Go8J+RqfCfkabwn5GmIjoiMWY0NjgtMWY0NjktMWY0NjYtMWY0NjYiLCLwn5Go4oCN8J+RqeKAjfCfkafigI3wn5GmIjoiMWY0NjgtMjAwZC0xZjQ2OS0yMDBkLTFmNDY3LTIwMGQtMWY0NjYiLCLwn5Go8J+RqfCfkafwn5GmIjoiMWY0NjgtMWY0NjktMWY0NjctMWY0NjYiLCLwn5Go4oCN8J+RqeKAjfCfkafigI3wn5GnIjoiMWY0NjgtMjAwZC0xZjQ2OS0yMDBkLTFmNDY3LTIwMGQtMWY0NjciLCLwn5Go8J+RqfCfkafwn5GnIjoiMWY0NjgtMWY0NjktMWY0NjctMWY0NjciLCLwn5Gp4oCN8J+RqeKAjfCfkabigI3wn5GmIjoiMWY0NjktMjAwZC0xZjQ2OS0yMDBkLTFmNDY2LTIwMGQtMWY0NjYiLCLwn5Gp8J+RqfCfkabwn5GmIjoiMWY0NjktMWY0NjktMWY0NjYtMWY0NjYiLCLwn5Gp4oCN8J+RqeKAjfCfkafigI3wn5GmIjoiMWY0NjktMjAwZC0xZjQ2OS0yMDBkLTFmNDY3LTIwMGQtMWY0NjYiLCLwn5Gp8J+RqfCfkafwn5GmIjoiMWY0NjktMWY0NjktMWY0NjctMWY0NjYiLCLwn5Gp4oCN8J+RqeKAjfCfkafigI3wn5GnIjoiMWY0NjktMjAwZC0xZjQ2OS0yMDBkLTFmNDY3LTIwMGQtMWY0NjciLCLwn5Gp8J+RqfCfkafwn5GnIjoiMWY0NjktMWY0NjktMWY0NjctMWY0NjciLCLwn5Gp4oCN4p2k77iP4oCN8J+RqSI6IjFmNDY5LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0NjkiLCLwn5Gp4p2k8J+RqSI6IjFmNDY5LTI3NjQtMWY0NjkiLCLwn5Go4oCN4p2k77iP4oCN8J+RqCI6IjFmNDY4LTIwMGQtMjc2NC1mZTBmLTIwMGQtMWY0NjgiLCLwn5Go4p2k8J+RqCI6IjFmNDY4LTI3NjQtMWY0NjgiLCLwn5Go4oCN8J+RqOKAjfCfkaYiOiIxZjQ2OC0yMDBkLTFmNDY4LTIwMGQtMWY0NjYiLCLwn5Go8J+RqPCfkaYiOiIxZjQ2OC0xZjQ2OC0xZjQ2NiIsIvCfkajigI3wn5Go4oCN8J+RpyI6IjFmNDY4LTIwMGQtMWY0NjgtMjAwZC0xZjQ2NyIsIvCfkajwn5Go8J+RpyI6IjFmNDY4LTFmNDY4LTFmNDY3Iiwi8J+RqOKAjfCfkanigI3wn5GnIjoiMWY0NjgtMjAwZC0xZjQ2OS0yMDBkLTFmNDY3Iiwi8J+RqPCfkanwn5GnIjoiMWY0NjgtMWY0NjktMWY0NjciLCLwn5Gp4oCN8J+RqeKAjfCfkaYiOiIxZjQ2OS0yMDBkLTFmNDY5LTIwMGQtMWY0NjYiLCLwn5Gp8J+RqfCfkaYiOiIxZjQ2OS0xZjQ2OS0xZjQ2NiIsIvCfkanigI3wn5Gp4oCN8J+RpyI6IjFmNDY5LTIwMGQtMWY0NjktMjAwZC0xZjQ2NyIsIvCfkanwn5Gp8J+RpyI6IjFmNDY5LTFmNDY5LTFmNDY3Iiwi8J+Ps++4j+KAjfCfjIgiOiIxZjNmMy1mZTBmLTIwMGQtMWYzMDgiLCLwn4+z8J+MiCI6IjFmM2YzLTFmMzA4Iiwi8J+RgeKAjfCfl6giOiIxZjQ0MS0yMDBkLTFmNWU4Iiwi8J+RgfCfl6giOiIxZjQ0MS0xZjVlOCIsIiPvuI/ig6MiOiIwMDIzLWZlMGYtMjBlMyIsIiPig6MiOiIwMDIzLTIwZTMiLCIw77iP4oOjIjoiMDAzMC1mZTBmLTIwZTMiLCIw4oOjIjoiMDAzMC0yMGUzIiwiMe+4j+KDoyI6IjAwMzEtZmUwZi0yMGUzIiwiMeKDoyI6IjAwMzEtMjBlMyIsIjLvuI/ig6MiOiIwMDMyLWZlMGYtMjBlMyIsIjLig6MiOiIwMDMyLTIwZTMiLCIz77iP4oOjIjoiMDAzMy1mZTBmLTIwZTMiLCIz4oOjIjoiMDAzMy0yMGUzIiwiNO+4j+KDoyI6IjAwMzQtZmUwZi0yMGUzIiwiNOKDoyI6IjAwMzQtMjBlMyIsIjXvuI/ig6MiOiIwMDM1LWZlMGYtMjBlMyIsIjXig6MiOiIwMDM1LTIwZTMiLCI277iP4oOjIjoiMDAzNi1mZTBmLTIwZTMiLCI24oOjIjoiMDAzNi0yMGUzIiwiN++4j+KDoyI6IjAwMzctZmUwZi0yMGUzIiwiN+KDoyI6IjAwMzctMjBlMyIsIjjvuI/ig6MiOiIwMDM4LWZlMGYtMjBlMyIsIjjig6MiOiIwMDM4LTIwZTMiLCI577iP4oOjIjoiMDAzOS1mZTBmLTIwZTMiLCI54oOjIjoiMDAzOS0yMGUzIiwiKu+4j+KDoyI6IjAwMmEtZmUwZi0yMGUzIiwiKuKDoyI6IjAwMmEtMjBlMyIsIvCfpL7wn4+/IjoiMWY5M2UtMWYzZmYiLCLwn6S+8J+PviI6IjFmOTNlLTFmM2ZlIiwi8J+kvvCfj70iOiIxZjkzZS0xZjNmZCIsIvCfpL7wn4+8IjoiMWY5M2UtMWYzZmMiLCLwn6S+8J+PuyI6IjFmOTNlLTFmM2ZiIiwi8J+kvfCfj78iOiIxZjkzZC0xZjNmZiIsIvCfpL3wn4++IjoiMWY5M2QtMWYzZmUiLCLwn6S98J+PvSI6IjFmOTNkLTFmM2ZkIiwi8J+kvfCfj7wiOiIxZjkzZC0xZjNmYyIsIvCfpL3wn4+7IjoiMWY5M2QtMWYzZmIiLCLwn6S88J+PvyI6IjFmOTNjLTFmM2ZmIiwi8J+kvPCfj74iOiIxZjkzYy0xZjNmZSIsIvCfpLzwn4+9IjoiMWY5M2MtMWYzZmQiLCLwn6S88J+PvCI6IjFmOTNjLTFmM2ZjIiwi8J+kvPCfj7siOiIxZjkzYy0xZjNmYiIsIvCfpLnwn4+/IjoiMWY5MzktMWYzZmYiLCLwn6S58J+PviI6IjFmOTM5LTFmM2ZlIiwi8J+kufCfj70iOiIxZjkzOS0xZjNmZCIsIvCfpLnwn4+8IjoiMWY5MzktMWYzZmMiLCLwn6S58J+PuyI6IjFmOTM5LTFmM2ZiIiwi8J+kuPCfj78iOiIxZjkzOC0xZjNmZiIsIvCfpLjwn4++IjoiMWY5MzgtMWYzZmUiLCLwn6S48J+PvSI6IjFmOTM4LTFmM2ZkIiwi8J+kuPCfj7wiOiIxZjkzOC0xZjNmYyIsIvCfpLjwn4+7IjoiMWY5MzgtMWYzZmIiLCLwn6S38J+PvyI6IjFmOTM3LTFmM2ZmIiwi8J+kt/Cfj74iOiIxZjkzNy0xZjNmZSIsIvCfpLfwn4+9IjoiMWY5MzctMWYzZmQiLCLwn6S38J+PvCI6IjFmOTM3LTFmM2ZjIiwi8J+kt/Cfj7siOiIxZjkzNy0xZjNmYiIsIvCfpLbwn4+/IjoiMWY5MzYtMWYzZmYiLCLwn6S28J+PviI6IjFmOTM2LTFmM2ZlIiwi8J+ktvCfj70iOiIxZjkzNi0xZjNmZCIsIvCfpLbwn4+8IjoiMWY5MzYtMWYzZmMiLCLwn6S28J+PuyI6IjFmOTM2LTFmM2ZiIiwi8J+ktfCfj78iOiIxZjkzNS0xZjNmZiIsIvCfpLXwn4++IjoiMWY5MzUtMWYzZmUiLCLwn6S18J+PvSI6IjFmOTM1LTFmM2ZkIiwi8J+ktfCfj7wiOiIxZjkzNS0xZjNmYyIsIvCfpLXwn4+7IjoiMWY5MzUtMWYzZmIiLCLwn6S08J+PvyI6IjFmOTM0LTFmM2ZmIiwi8J+ktPCfj74iOiIxZjkzNC0xZjNmZSIsIvCfpLTwn4+9IjoiMWY5MzQtMWYzZmQiLCLwn6S08J+PvCI6IjFmOTM0LTFmM2ZjIiwi8J+ktPCfj7siOiIxZjkzNC0xZjNmYiIsIvCfpLPwn4+/IjoiMWY5MzMtMWYzZmYiLCLwn6Sz8J+PviI6IjFmOTMzLTFmM2ZlIiwi8J+ks/Cfj70iOiIxZjkzMy0xZjNmZCIsIvCfpLPwn4+8IjoiMWY5MzMtMWYzZmMiLCLwn6Sz8J+PuyI6IjFmOTMzLTFmM2ZiIiwi8J+ksPCfj78iOiIxZjkzMC0xZjNmZiIsIvCfpLDwn4++IjoiMWY5MzAtMWYzZmUiLCLwn6Sw8J+PvSI6IjFmOTMwLTFmM2ZkIiwi8J+ksPCfj7wiOiIxZjkzMC0xZjNmYyIsIvCfpLDwn4+7IjoiMWY5MzAtMWYzZmIiLCLwn6Sm8J+PvyI6IjFmOTI2LTFmM2ZmIiwi8J+kpvCfj74iOiIxZjkyNi0xZjNmZSIsIvCfpKbwn4+9IjoiMWY5MjYtMWYzZmQiLCLwn6Sm8J+PvCI6IjFmOTI2LTFmM2ZjIiwi8J+kpvCfj7siOiIxZjkyNi0xZjNmYiIsIvCfpJ7wn4+/IjoiMWY5MWUtMWYzZmYiLCLwn6Se8J+PviI6IjFmOTFlLTFmM2ZlIiwi8J+knvCfj70iOiIxZjkxZS0xZjNmZCIsIvCfpJ7wn4+8IjoiMWY5MWUtMWYzZmMiLCLwn6Se8J+PuyI6IjFmOTFlLTFmM2ZiIiwi8J+knfCfj78iOiIxZjkxZC0xZjNmZiIsIvCfpJ3wn4++IjoiMWY5MWQtMWYzZmUiLCLwn6Sd8J+PvSI6IjFmOTFkLTFmM2ZkIiwi8J+knfCfj7wiOiIxZjkxZC0xZjNmYyIsIvCfpJ3wn4+7IjoiMWY5MWQtMWYzZmIiLCLwn6Sc8J+PvyI6IjFmOTFjLTFmM2ZmIiwi8J+knPCfj74iOiIxZjkxYy0xZjNmZSIsIvCfpJzwn4+9IjoiMWY5MWMtMWYzZmQiLCLwn6Sc8J+PvCI6IjFmOTFjLTFmM2ZjIiwi8J+knPCfj7siOiIxZjkxYy0xZjNmYiIsIvCfpJvwn4+/IjoiMWY5MWItMWYzZmYiLCLwn6Sb8J+PviI6IjFmOTFiLTFmM2ZlIiwi8J+km/Cfj70iOiIxZjkxYi0xZjNmZCIsIvCfpJvwn4+8IjoiMWY5MWItMWYzZmMiLCLwn6Sb8J+PuyI6IjFmOTFiLTFmM2ZiIiwi8J+kmvCfj78iOiIxZjkxYS0xZjNmZiIsIvCfpJrwn4++IjoiMWY5MWEtMWYzZmUiLCLwn6Sa8J+PvSI6IjFmOTFhLTFmM2ZkIiwi8J+kmvCfj7wiOiIxZjkxYS0xZjNmYyIsIvCfpJrwn4+7IjoiMWY5MWEtMWYzZmIiLCLwn6SZ8J+PvyI6IjFmOTE5LTFmM2ZmIiwi8J+kmfCfj74iOiIxZjkxOS0xZjNmZSIsIvCfpJnwn4+9IjoiMWY5MTktMWYzZmQiLCLwn6SZ8J+PvCI6IjFmOTE5LTFmM2ZjIiwi8J+kmfCfj7siOiIxZjkxOS0xZjNmYiIsIvCfpJjwn4+/IjoiMWY5MTgtMWYzZmYiLCLwn6SY8J+PviI6IjFmOTE4LTFmM2ZlIiwi8J+kmPCfj70iOiIxZjkxOC0xZjNmZCIsIvCfpJjwn4+8IjoiMWY5MTgtMWYzZmMiLCLwn6SY8J+PuyI6IjFmOTE4LTFmM2ZiIiwi8J+bgPCfj78iOiIxZjZjMC0xZjNmZiIsIvCfm4Dwn4++IjoiMWY2YzAtMWYzZmUiLCLwn5uA8J+PvSI6IjFmNmMwLTFmM2ZkIiwi8J+bgPCfj7wiOiIxZjZjMC0xZjNmYyIsIvCfm4Dwn4+7IjoiMWY2YzAtMWYzZmIiLCLwn5q28J+PvyI6IjFmNmI2LTFmM2ZmIiwi8J+atvCfj74iOiIxZjZiNi0xZjNmZSIsIvCfmrbwn4+9IjoiMWY2YjYtMWYzZmQiLCLwn5q28J+PvCI6IjFmNmI2LTFmM2ZjIiwi8J+atvCfj7siOiIxZjZiNi0xZjNmYiIsIvCfmrXwn4+/IjoiMWY2YjUtMWYzZmYiLCLwn5q18J+PviI6IjFmNmI1LTFmM2ZlIiwi8J+atfCfj70iOiIxZjZiNS0xZjNmZCIsIvCfmrXwn4+8IjoiMWY2YjUtMWYzZmMiLCLwn5q18J+PuyI6IjFmNmI1LTFmM2ZiIiwi8J+atPCfj78iOiIxZjZiNC0xZjNmZiIsIvCfmrTwn4++IjoiMWY2YjQtMWYzZmUiLCLwn5q08J+PvSI6IjFmNmI0LTFmM2ZkIiwi8J+atPCfj7wiOiIxZjZiNC0xZjNmYyIsIvCfmrTwn4+7IjoiMWY2YjQtMWYzZmIiLCLwn5qj8J+PvyI6IjFmNmEzLTFmM2ZmIiwi8J+ao/Cfj74iOiIxZjZhMy0xZjNmZSIsIvCfmqPwn4+9IjoiMWY2YTMtMWYzZmQiLCLwn5qj8J+PvCI6IjFmNmEzLTFmM2ZjIiwi8J+ao/Cfj7siOiIxZjZhMy0xZjNmYiIsIvCfmY/wn4+/IjoiMWY2NGYtMWYzZmYiLCLwn5mP8J+PviI6IjFmNjRmLTFmM2ZlIiwi8J+Zj/Cfj70iOiIxZjY0Zi0xZjNmZCIsIvCfmY/wn4+8IjoiMWY2NGYtMWYzZmMiLCLwn5mP8J+PuyI6IjFmNjRmLTFmM2ZiIiwi8J+ZjvCfj78iOiIxZjY0ZS0xZjNmZiIsIvCfmY7wn4++IjoiMWY2NGUtMWYzZmUiLCLwn5mO8J+PvSI6IjFmNjRlLTFmM2ZkIiwi8J+ZjvCfj7wiOiIxZjY0ZS0xZjNmYyIsIvCfmY7wn4+7IjoiMWY2NGUtMWYzZmIiLCLwn5mN8J+PvyI6IjFmNjRkLTFmM2ZmIiwi8J+ZjfCfj74iOiIxZjY0ZC0xZjNmZSIsIvCfmY3wn4+9IjoiMWY2NGQtMWYzZmQiLCLwn5mN8J+PvCI6IjFmNjRkLTFmM2ZjIiwi8J+ZjfCfj7siOiIxZjY0ZC0xZjNmYiIsIvCfmYzwn4+/IjoiMWY2NGMtMWYzZmYiLCLwn5mM8J+PviI6IjFmNjRjLTFmM2ZlIiwi8J+ZjPCfj70iOiIxZjY0Yy0xZjNmZCIsIvCfmYzwn4+8IjoiMWY2NGMtMWYzZmMiLCLwn5mM8J+PuyI6IjFmNjRjLTFmM2ZiIiwi8J+Zi/Cfj78iOiIxZjY0Yi0xZjNmZiIsIvCfmYvwn4++IjoiMWY2NGItMWYzZmUiLCLwn5mL8J+PvSI6IjFmNjRiLTFmM2ZkIiwi8J+Zi/Cfj7wiOiIxZjY0Yi0xZjNmYyIsIvCfmYvwn4+7IjoiMWY2NGItMWYzZmIiLCLwn5mH8J+PvyI6IjFmNjQ3LTFmM2ZmIiwi8J+Zh/Cfj74iOiIxZjY0Ny0xZjNmZSIsIvCfmYfwn4+9IjoiMWY2NDctMWYzZmQiLCLwn5mH8J+PvCI6IjFmNjQ3LTFmM2ZjIiwi8J+Zh/Cfj7siOiIxZjY0Ny0xZjNmYiIsIvCfmYbwn4+/IjoiMWY2NDYtMWYzZmYiLCLwn5mG8J+PviI6IjFmNjQ2LTFmM2ZlIiwi8J+ZhvCfj70iOiIxZjY0Ni0xZjNmZCIsIvCfmYbwn4+8IjoiMWY2NDYtMWYzZmMiLCLwn5mG8J+PuyI6IjFmNjQ2LTFmM2ZiIiwi8J+ZhfCfj78iOiIxZjY0NS0xZjNmZiIsIvCfmYXwn4++IjoiMWY2NDUtMWYzZmUiLCLwn5mF8J+PvSI6IjFmNjQ1LTFmM2ZkIiwi8J+ZhfCfj7wiOiIxZjY0NS0xZjNmYyIsIvCfmYXwn4+7IjoiMWY2NDUtMWYzZmIiLCLwn5aW8J+PvyI6IjFmNTk2LTFmM2ZmIiwi8J+WlvCfj74iOiIxZjU5Ni0xZjNmZSIsIvCflpbwn4+9IjoiMWY1OTYtMWYzZmQiLCLwn5aW8J+PvCI6IjFmNTk2LTFmM2ZjIiwi8J+WlvCfj7siOiIxZjU5Ni0xZjNmYiIsIvCflpXwn4+/IjoiMWY1OTUtMWYzZmYiLCLwn5aV8J+PviI6IjFmNTk1LTFmM2ZlIiwi8J+WlfCfj70iOiIxZjU5NS0xZjNmZCIsIvCflpXwn4+8IjoiMWY1OTUtMWYzZmMiLCLwn5aV8J+PuyI6IjFmNTk1LTFmM2ZiIiwi8J+WkPCfj78iOiIxZjU5MC0xZjNmZiIsIvCflpDwn4++IjoiMWY1OTAtMWYzZmUiLCLwn5aQ8J+PvSI6IjFmNTkwLTFmM2ZkIiwi8J+WkPCfj7wiOiIxZjU5MC0xZjNmYyIsIvCflpDwn4+7IjoiMWY1OTAtMWYzZmIiLCLwn5W68J+PvyI6IjFmNTdhLTFmM2ZmIiwi8J+VuvCfj74iOiIxZjU3YS0xZjNmZSIsIvCflbrwn4+9IjoiMWY1N2EtMWYzZmQiLCLwn5W68J+PvCI6IjFmNTdhLTFmM2ZjIiwi8J+VuvCfj7siOiIxZjU3YS0xZjNmYiIsIvCflbXwn4+/IjoiMWY1NzUtMWYzZmYiLCLwn5W18J+PviI6IjFmNTc1LTFmM2ZlIiwi8J+VtfCfj70iOiIxZjU3NS0xZjNmZCIsIvCflbXwn4+8IjoiMWY1NzUtMWYzZmMiLCLwn5W18J+PuyI6IjFmNTc1LTFmM2ZiIiwi8J+SqvCfj78iOiIxZjRhYS0xZjNmZiIsIvCfkqrwn4++IjoiMWY0YWEtMWYzZmUiLCLwn5Kq8J+PvSI6IjFmNGFhLTFmM2ZkIiwi8J+SqvCfj7wiOiIxZjRhYS0xZjNmYyIsIvCfkqrwn4+7IjoiMWY0YWEtMWYzZmIiLCLwn5KH8J+PvyI6IjFmNDg3LTFmM2ZmIiwi8J+Sh/Cfj74iOiIxZjQ4Ny0xZjNmZSIsIvCfkofwn4+9IjoiMWY0ODctMWYzZmQiLCLwn5KH8J+PvCI6IjFmNDg3LTFmM2ZjIiwi8J+Sh/Cfj7siOiIxZjQ4Ny0xZjNmYiIsIvCfkobwn4+/IjoiMWY0ODYtMWYzZmYiLCLwn5KG8J+PviI6IjFmNDg2LTFmM2ZlIiwi8J+ShvCfj70iOiIxZjQ4Ni0xZjNmZCIsIvCfkobwn4+8IjoiMWY0ODYtMWYzZmMiLCLwn5KG8J+PuyI6IjFmNDg2LTFmM2ZiIiwi8J+ShfCfj78iOiIxZjQ4NS0xZjNmZiIsIvCfkoXwn4++IjoiMWY0ODUtMWYzZmUiLCLwn5KF8J+PvSI6IjFmNDg1LTFmM2ZkIiwi8J+ShfCfj7wiOiIxZjQ4NS0xZjNmYyIsIvCfkoXwn4+7IjoiMWY0ODUtMWYzZmIiLCLwn5KD8J+PvyI6IjFmNDgzLTFmM2ZmIiwi8J+Sg/Cfj74iOiIxZjQ4My0xZjNmZSIsIvCfkoPwn4+9IjoiMWY0ODMtMWYzZmQiLCLwn5KD8J+PvCI6IjFmNDgzLTFmM2ZjIiwi8J+Sg/Cfj7siOiIxZjQ4My0xZjNmYiIsIvCfkoLwn4+/IjoiMWY0ODItMWYzZmYiLCLwn5KC8J+PviI6IjFmNDgyLTFmM2ZlIiwi8J+SgvCfj70iOiIxZjQ4Mi0xZjNmZCIsIvCfkoLwn4+8IjoiMWY0ODItMWYzZmMiLCLwn5KC8J+PuyI6IjFmNDgyLTFmM2ZiIiwi8J+SgfCfj78iOiIxZjQ4MS0xZjNmZiIsIvCfkoHwn4++IjoiMWY0ODEtMWYzZmUiLCLwn5KB8J+PvSI6IjFmNDgxLTFmM2ZkIiwi8J+SgfCfj7wiOiIxZjQ4MS0xZjNmYyIsIvCfkoHwn4+7IjoiMWY0ODEtMWYzZmIiLCLwn5G88J+PvyI6IjFmNDdjLTFmM2ZmIiwi8J+RvPCfj74iOiIxZjQ3Yy0xZjNmZSIsIvCfkbzwn4+9IjoiMWY0N2MtMWYzZmQiLCLwn5G88J+PvCI6IjFmNDdjLTFmM2ZjIiwi8J+RvPCfj7siOiIxZjQ3Yy0xZjNmYiIsIvCfkbjwn4+/IjoiMWY0NzgtMWYzZmYiLCLwn5G48J+PviI6IjFmNDc4LTFmM2ZlIiwi8J+RuPCfj70iOiIxZjQ3OC0xZjNmZCIsIvCfkbjwn4+8IjoiMWY0NzgtMWYzZmMiLCLwn5G48J+PuyI6IjFmNDc4LTFmM2ZiIiwi8J+Rt/Cfj78iOiIxZjQ3Ny0xZjNmZiIsIvCfkbfwn4++IjoiMWY0NzctMWYzZmUiLCLwn5G38J+PvSI6IjFmNDc3LTFmM2ZkIiwi8J+Rt/Cfj7wiOiIxZjQ3Ny0xZjNmYyIsIvCfkbfwn4+7IjoiMWY0NzctMWYzZmIiLCLwn5G28J+PvyI6IjFmNDc2LTFmM2ZmIiwi8J+RtvCfj74iOiIxZjQ3Ni0xZjNmZSIsIvCfkbbwn4+9IjoiMWY0NzYtMWYzZmQiLCLwn5G28J+PvCI6IjFmNDc2LTFmM2ZjIiwi8J+RtvCfj7siOiIxZjQ3Ni0xZjNmYiIsIvCfkbXwn4+/IjoiMWY0NzUtMWYzZmYiLCLwn5G18J+PviI6IjFmNDc1LTFmM2ZlIiwi8J+RtfCfj70iOiIxZjQ3NS0xZjNmZCIsIvCfkbXwn4+8IjoiMWY0NzUtMWYzZmMiLCLwn5G18J+PuyI6IjFmNDc1LTFmM2ZiIiwi8J+RtPCfj78iOiIxZjQ3NC0xZjNmZiIsIvCfkbTwn4++IjoiMWY0NzQtMWYzZmUiLCLwn5G08J+PvSI6IjFmNDc0LTFmM2ZkIiwi8J+RtPCfj7wiOiIxZjQ3NC0xZjNmYyIsIvCfkbTwn4+7IjoiMWY0NzQtMWYzZmIiLCLwn5Gz8J+PvyI6IjFmNDczLTFmM2ZmIiwi8J+Rs/Cfj74iOiIxZjQ3My0xZjNmZSIsIvCfkbPwn4+9IjoiMWY0NzMtMWYzZmQiLCLwn5Gz8J+PvCI6IjFmNDczLTFmM2ZjIiwi8J+Rs/Cfj7siOiIxZjQ3My0xZjNmYiIsIvCfkbLwn4+/IjoiMWY0NzItMWYzZmYiLCLwn5Gy8J+PviI6IjFmNDcyLTFmM2ZlIiwi8J+RsvCfj70iOiIxZjQ3Mi0xZjNmZCIsIvCfkbLwn4+8IjoiMWY0NzItMWYzZmMiLCLwn5Gy8J+PuyI6IjFmNDcyLTFmM2ZiIiwi8J+RsfCfj78iOiIxZjQ3MS0xZjNmZiIsIvCfkbHwn4++IjoiMWY0NzEtMWYzZmUiLCLwn5Gx8J+PvSI6IjFmNDcxLTFmM2ZkIiwi8J+RsfCfj7wiOiIxZjQ3MS0xZjNmYyIsIvCfkbHwn4+7IjoiMWY0NzEtMWYzZmIiLCLwn5Gw8J+PvyI6IjFmNDcwLTFmM2ZmIiwi8J+RsPCfj74iOiIxZjQ3MC0xZjNmZSIsIvCfkbDwn4+9IjoiMWY0NzAtMWYzZmQiLCLwn5Gw8J+PvCI6IjFmNDcwLTFmM2ZjIiwi8J+RsPCfj7siOiIxZjQ3MC0xZjNmYiIsIvCfka7wn4+/IjoiMWY0NmUtMWYzZmYiLCLwn5Gu8J+PviI6IjFmNDZlLTFmM2ZlIiwi8J+RrvCfj70iOiIxZjQ2ZS0xZjNmZCIsIvCfka7wn4+8IjoiMWY0NmUtMWYzZmMiLCLwn5Gu8J+PuyI6IjFmNDZlLTFmM2ZiIiwi8J+RqfCfj78iOiIxZjQ2OS0xZjNmZiIsIvCfkanwn4++IjoiMWY0NjktMWYzZmUiLCLwn5Gp8J+PvSI6IjFmNDY5LTFmM2ZkIiwi8J+RqfCfj7wiOiIxZjQ2OS0xZjNmYyIsIvCfkanwn4+7IjoiMWY0NjktMWYzZmIiLCLwn5Go8J+PvyI6IjFmNDY4LTFmM2ZmIiwi8J+RqPCfj74iOiIxZjQ2OC0xZjNmZSIsIvCfkajwn4+9IjoiMWY0NjgtMWYzZmQiLCLwn5Go8J+PvCI6IjFmNDY4LTFmM2ZjIiwi8J+RqPCfj7siOiIxZjQ2OC0xZjNmYiIsIvCfkafwn4+/IjoiMWY0NjctMWYzZmYiLCLwn5Gn8J+PviI6IjFmNDY3LTFmM2ZlIiwi8J+Rp/Cfj70iOiIxZjQ2Ny0xZjNmZCIsIvCfkafwn4+8IjoiMWY0NjctMWYzZmMiLCLwn5Gn8J+PuyI6IjFmNDY3LTFmM2ZiIiwi8J+RpvCfj78iOiIxZjQ2Ni0xZjNmZiIsIvCfkabwn4++IjoiMWY0NjYtMWYzZmUiLCLwn5Gm8J+PvSI6IjFmNDY2LTFmM2ZkIiwi8J+RpvCfj7wiOiIxZjQ2Ni0xZjNmYyIsIvCfkabwn4+7IjoiMWY0NjYtMWYzZmIiLCLwn5GQ8J+PvyI6IjFmNDUwLTFmM2ZmIiwi8J+RkPCfj74iOiIxZjQ1MC0xZjNmZSIsIvCfkZDwn4+9IjoiMWY0NTAtMWYzZmQiLCLwn5GQ8J+PvCI6IjFmNDUwLTFmM2ZjIiwi8J+RkPCfj7siOiIxZjQ1MC0xZjNmYiIsIvCfkY/wn4+/IjoiMWY0NGYtMWYzZmYiLCLwn5GP8J+PviI6IjFmNDRmLTFmM2ZlIiwi8J+Rj/Cfj70iOiIxZjQ0Zi0xZjNmZCIsIvCfkY/wn4+8IjoiMWY0NGYtMWYzZmMiLCLwn5GP8J+PuyI6IjFmNDRmLTFmM2ZiIiwi8J+RjvCfj78iOiIxZjQ0ZS0xZjNmZiIsIvCfkY7wn4++IjoiMWY0NGUtMWYzZmUiLCLwn5GO8J+PvSI6IjFmNDRlLTFmM2ZkIiwi8J+RjvCfj7wiOiIxZjQ0ZS0xZjNmYyIsIvCfkY7wn4+7IjoiMWY0NGUtMWYzZmIiLCLwn5GN8J+PvyI6IjFmNDRkLTFmM2ZmIiwi8J+RjfCfj74iOiIxZjQ0ZC0xZjNmZSIsIvCfkY3wn4+9IjoiMWY0NGQtMWYzZmQiLCLwn5GN8J+PvCI6IjFmNDRkLTFmM2ZjIiwi8J+RjfCfj7siOiIxZjQ0ZC0xZjNmYiIsIvCfkYzwn4+/IjoiMWY0NGMtMWYzZmYiLCLwn5GM8J+PviI6IjFmNDRjLTFmM2ZlIiwi8J+RjPCfj70iOiIxZjQ0Yy0xZjNmZCIsIvCfkYzwn4+8IjoiMWY0NGMtMWYzZmMiLCLwn5GM8J+PuyI6IjFmNDRjLTFmM2ZiIiwi8J+Ri/Cfj78iOiIxZjQ0Yi0xZjNmZiIsIvCfkYvwn4++IjoiMWY0NGItMWYzZmUiLCLwn5GL8J+PvSI6IjFmNDRiLTFmM2ZkIiwi8J+Ri/Cfj7wiOiIxZjQ0Yi0xZjNmYyIsIvCfkYvwn4+7IjoiMWY0NGItMWYzZmIiLCLwn5GK8J+PvyI6IjFmNDRhLTFmM2ZmIiwi8J+RivCfj74iOiIxZjQ0YS0xZjNmZSIsIvCfkYrwn4+9IjoiMWY0NGEtMWYzZmQiLCLwn5GK8J+PvCI6IjFmNDRhLTFmM2ZjIiwi8J+RivCfj7siOiIxZjQ0YS0xZjNmYiIsIvCfkYnwn4+/IjoiMWY0NDktMWYzZmYiLCLwn5GJ8J+PviI6IjFmNDQ5LTFmM2ZlIiwi8J+RifCfj70iOiIxZjQ0OS0xZjNmZCIsIvCfkYnwn4+8IjoiMWY0NDktMWYzZmMiLCLwn5GJ8J+PuyI6IjFmNDQ5LTFmM2ZiIiwi8J+RiPCfj78iOiIxZjQ0OC0xZjNmZiIsIvCfkYjwn4++IjoiMWY0NDgtMWYzZmUiLCLwn5GI8J+PvSI6IjFmNDQ4LTFmM2ZkIiwi8J+RiPCfj7wiOiIxZjQ0OC0xZjNmYyIsIvCfkYjwn4+7IjoiMWY0NDgtMWYzZmIiLCLwn5GH8J+PvyI6IjFmNDQ3LTFmM2ZmIiwi8J+Rh/Cfj74iOiIxZjQ0Ny0xZjNmZSIsIvCfkYfwn4+9IjoiMWY0NDctMWYzZmQiLCLwn5GH8J+PvCI6IjFmNDQ3LTFmM2ZjIiwi8J+Rh/Cfj7siOiIxZjQ0Ny0xZjNmYiIsIvCfkYbwn4+/IjoiMWY0NDYtMWYzZmYiLCLwn5GG8J+PviI6IjFmNDQ2LTFmM2ZlIiwi8J+RhvCfj70iOiIxZjQ0Ni0xZjNmZCIsIvCfkYbwn4+8IjoiMWY0NDYtMWYzZmMiLCLwn5GG8J+PuyI6IjFmNDQ2LTFmM2ZiIiwi8J+Rg/Cfj78iOiIxZjQ0My0xZjNmZiIsIvCfkYPwn4++IjoiMWY0NDMtMWYzZmUiLCLwn5GD8J+PvSI6IjFmNDQzLTFmM2ZkIiwi8J+Rg/Cfj7wiOiIxZjQ0My0xZjNmYyIsIvCfkYPwn4+7IjoiMWY0NDMtMWYzZmIiLCLwn5GC8J+PvyI6IjFmNDQyLTFmM2ZmIiwi8J+RgvCfj74iOiIxZjQ0Mi0xZjNmZSIsIvCfkYLwn4+9IjoiMWY0NDItMWYzZmQiLCLwn5GC8J+PvCI6IjFmNDQyLTFmM2ZjIiwi8J+RgvCfj7siOiIxZjQ0Mi0xZjNmYiIsIvCfj4vwn4+/IjoiMWYzY2ItMWYzZmYiLCLwn4+L8J+PviI6IjFmM2NiLTFmM2ZlIiwi8J+Pi/Cfj70iOiIxZjNjYi0xZjNmZCIsIvCfj4vwn4+8IjoiMWYzY2ItMWYzZmMiLCLwn4+L8J+PuyI6IjFmM2NiLTFmM2ZiIiwi8J+PivCfj78iOiIxZjNjYS0xZjNmZiIsIvCfj4rwn4++IjoiMWYzY2EtMWYzZmUiLCLwn4+K8J+PvSI6IjFmM2NhLTFmM2ZkIiwi8J+PivCfj7wiOiIxZjNjYS0xZjNmYyIsIvCfj4rwn4+7IjoiMWYzY2EtMWYzZmIiLCLwn4+H8J+PvyI6IjFmM2M3LTFmM2ZmIiwi8J+Ph/Cfj74iOiIxZjNjNy0xZjNmZSIsIvCfj4fwn4+9IjoiMWYzYzctMWYzZmQiLCLwn4+H8J+PvCI6IjFmM2M3LTFmM2ZjIiwi8J+Ph/Cfj7siOiIxZjNjNy0xZjNmYiIsIvCfj4Twn4+/IjoiMWYzYzQtMWYzZmYiLCLwn4+E8J+PviI6IjFmM2M0LTFmM2ZlIiwi8J+PhPCfj70iOiIxZjNjNC0xZjNmZCIsIvCfj4Twn4+8IjoiMWYzYzQtMWYzZmMiLCLwn4+E8J+PuyI6IjFmM2M0LTFmM2ZiIiwi8J+Pg/Cfj78iOiIxZjNjMy0xZjNmZiIsIvCfj4Pwn4++IjoiMWYzYzMtMWYzZmUiLCLwn4+D8J+PvSI6IjFmM2MzLTFmM2ZkIiwi8J+Pg/Cfj7wiOiIxZjNjMy0xZjNmYyIsIvCfj4Pwn4+7IjoiMWYzYzMtMWYzZmIiLCLwn46F8J+PvyI6IjFmMzg1LTFmM2ZmIiwi8J+OhfCfj74iOiIxZjM4NS0xZjNmZSIsIvCfjoXwn4+9IjoiMWYzODUtMWYzZmQiLCLwn46F8J+PvCI6IjFmMzg1LTFmM2ZjIiwi8J+OhfCfj7siOiIxZjM4NS0xZjNmYiIsIvCfh7/wn4e8IjoiMWYxZmYtMWYxZmMiLCLwn4e/8J+HsiI6IjFmMWZmLTFmMWYyIiwi8J+Hv/Cfh6YiOiIxZjFmZi0xZjFlNiIsIvCfh77wn4e5IjoiMWYxZmUtMWYxZjkiLCLwn4e+8J+HqiI6IjFmMWZlLTFmMWVhIiwi8J+HvfCfh7AiOiIxZjFmZC0xZjFmMCIsIvCfh7zwn4e4IjoiMWYxZmMtMWYxZjgiLCLwn4e88J+HqyI6IjFmMWZjLTFmMWViIiwi8J+Hu/Cfh7oiOiIxZjFmYi0xZjFmYSIsIvCfh7vwn4ezIjoiMWYxZmItMWYxZjMiLCLwn4e78J+HriI6IjFmMWZiLTFmMWVlIiwi8J+Hu/Cfh6wiOiIxZjFmYi0xZjFlYyIsIvCfh7vwn4eqIjoiMWYxZmItMWYxZWEiLCLwn4e78J+HqCI6IjFmMWZiLTFmMWU4Iiwi8J+Hu/Cfh6YiOiIxZjFmYi0xZjFlNiIsIvCfh7rwn4e/IjoiMWYxZmEtMWYxZmYiLCLwn4e68J+HviI6IjFmMWZhLTFmMWZlIiwi8J+HuvCfh7giOiIxZjFmYS0xZjFmOCIsIvCfh7rwn4eyIjoiMWYxZmEtMWYxZjIiLCLwn4e68J+HrCI6IjFmMWZhLTFmMWVjIiwi8J+HuvCfh6YiOiIxZjFmYS0xZjFlNiIsIvCfh7nwn4e/IjoiMWYxZjktMWYxZmYiLCLwn4e58J+HvCI6IjFmMWY5LTFmMWZjIiwi8J+HufCfh7siOiIxZjFmOS0xZjFmYiIsIvCfh7nwn4e5IjoiMWYxZjktMWYxZjkiLCLwn4e58J+HtyI6IjFmMWY5LTFmMWY3Iiwi8J+HufCfh7QiOiIxZjFmOS0xZjFmNCIsIvCfh7nwn4ezIjoiMWYxZjktMWYxZjMiLCLwn4e58J+HsiI6IjFmMWY5LTFmMWYyIiwi8J+HufCfh7EiOiIxZjFmOS0xZjFmMSIsIvCfh7nwn4ewIjoiMWYxZjktMWYxZjAiLCLwn4e58J+HryI6IjFmMWY5LTFmMWVmIiwi8J+HufCfh60iOiIxZjFmOS0xZjFlZCIsIvCfh7nwn4esIjoiMWYxZjktMWYxZWMiLCLwn4e58J+HqyI6IjFmMWY5LTFmMWViIiwi8J+HufCfh6kiOiIxZjFmOS0xZjFlOSIsIvCfh7nwn4eoIjoiMWYxZjktMWYxZTgiLCLwn4e58J+HpiI6IjFmMWY5LTFmMWU2Iiwi8J+HuPCfh78iOiIxZjFmOC0xZjFmZiIsIvCfh7jwn4e+IjoiMWYxZjgtMWYxZmUiLCLwn4e48J+HvSI6IjFmMWY4LTFmMWZkIiwi8J+HuPCfh7siOiIxZjFmOC0xZjFmYiIsIvCfh7jwn4e5IjoiMWYxZjgtMWYxZjkiLCLwn4e48J+HuCI6IjFmMWY4LTFmMWY4Iiwi8J+HuPCfh7ciOiIxZjFmOC0xZjFmNyIsIvCfh7jwn4e0IjoiMWYxZjgtMWYxZjQiLCLwn4e48J+HsyI6IjFmMWY4LTFmMWYzIiwi8J+HuPCfh7IiOiIxZjFmOC0xZjFmMiIsIvCfh7jwn4exIjoiMWYxZjgtMWYxZjEiLCLwn4e48J+HsCI6IjFmMWY4LTFmMWYwIiwi8J+HuPCfh68iOiIxZjFmOC0xZjFlZiIsIvCfh7jwn4euIjoiMWYxZjgtMWYxZWUiLCLwn4e48J+HrSI6IjFmMWY4LTFmMWVkIiwi8J+HuPCfh6wiOiIxZjFmOC0xZjFlYyIsIvCfh7jwn4eqIjoiMWYxZjgtMWYxZWEiLCLwn4e48J+HqSI6IjFmMWY4LTFmMWU5Iiwi8J+HuPCfh6giOiIxZjFmOC0xZjFlOCIsIvCfh7jwn4enIjoiMWYxZjgtMWYxZTciLCLwn4e48J+HpiI6IjFmMWY4LTFmMWU2Iiwi8J+Ht/Cfh7wiOiIxZjFmNy0xZjFmYyIsIvCfh7fwn4e6IjoiMWYxZjctMWYxZmEiLCLwn4e38J+HuCI6IjFmMWY3LTFmMWY4Iiwi8J+Ht/Cfh7QiOiIxZjFmNy0xZjFmNCIsIvCfh7fwn4eqIjoiMWYxZjctMWYxZWEiLCLwn4e28J+HpiI6IjFmMWY2LTFmMWU2Iiwi8J+HtfCfh74iOiIxZjFmNS0xZjFmZSIsIvCfh7Xwn4e8IjoiMWYxZjUtMWYxZmMiLCLwn4e18J+HuSI6IjFmMWY1LTFmMWY5Iiwi8J+HtfCfh7giOiIxZjFmNS0xZjFmOCIsIvCfh7Xwn4e3IjoiMWYxZjUtMWYxZjciLCLwn4e18J+HsyI6IjFmMWY1LTFmMWYzIiwi8J+HtfCfh7IiOiIxZjFmNS0xZjFmMiIsIvCfh7Xwn4exIjoiMWYxZjUtMWYxZjEiLCLwn4e18J+HsCI6IjFmMWY1LTFmMWYwIiwi8J+HtfCfh60iOiIxZjFmNS0xZjFlZCIsIvCfh7Xwn4esIjoiMWYxZjUtMWYxZWMiLCLwn4e18J+HqyI6IjFmMWY1LTFmMWViIiwi8J+HtfCfh6oiOiIxZjFmNS0xZjFlYSIsIvCfh7Xwn4emIjoiMWYxZjUtMWYxZTYiLCLwn4e08J+HsiI6IjFmMWY0LTFmMWYyIiwi8J+Hs/Cfh78iOiIxZjFmMy0xZjFmZiIsIvCfh7Pwn4e6IjoiMWYxZjMtMWYxZmEiLCLwn4ez8J+HtyI6IjFmMWYzLTFmMWY3Iiwi8J+Hs/Cfh7UiOiIxZjFmMy0xZjFmNSIsIvCfh7Pwn4e0IjoiMWYxZjMtMWYxZjQiLCLwn4ez8J+HsSI6IjFmMWYzLTFmMWYxIiwi8J+Hs/Cfh64iOiIxZjFmMy0xZjFlZSIsIvCfh7Pwn4esIjoiMWYxZjMtMWYxZWMiLCLwn4ez8J+HqyI6IjFmMWYzLTFmMWViIiwi8J+Hs/Cfh6oiOiIxZjFmMy0xZjFlYSIsIvCfh7Pwn4eoIjoiMWYxZjMtMWYxZTgiLCLwn4ez8J+HpiI6IjFmMWYzLTFmMWU2Iiwi8J+HsvCfh78iOiIxZjFmMi0xZjFmZiIsIvCfh7Lwn4e+IjoiMWYxZjItMWYxZmUiLCLwn4ey8J+HvSI6IjFmMWYyLTFmMWZkIiwi8J+HsvCfh7wiOiIxZjFmMi0xZjFmYyIsIvCfh7Lwn4e7IjoiMWYxZjItMWYxZmIiLCLwn4ey8J+HuiI6IjFmMWYyLTFmMWZhIiwi8J+HsvCfh7kiOiIxZjFmMi0xZjFmOSIsIvCfh7Lwn4e4IjoiMWYxZjItMWYxZjgiLCLwn4ey8J+HtyI6IjFmMWYyLTFmMWY3Iiwi8J+HsvCfh7YiOiIxZjFmMi0xZjFmNiIsIvCfh7Lwn4e1IjoiMWYxZjItMWYxZjUiLCLwn4ey8J+HtCI6IjFmMWYyLTFmMWY0Iiwi8J+HsvCfh7MiOiIxZjFmMi0xZjFmMyIsIvCfh7Lwn4eyIjoiMWYxZjItMWYxZjIiLCLwn4ey8J+HsSI6IjFmMWYyLTFmMWYxIiwi8J+HsvCfh7AiOiIxZjFmMi0xZjFmMCIsIvCfh7Lwn4etIjoiMWYxZjItMWYxZWQiLCLwn4ey8J+HrCI6IjFmMWYyLTFmMWVjIiwi8J+HsvCfh6siOiIxZjFmMi0xZjFlYiIsIvCfh7Lwn4eqIjoiMWYxZjItMWYxZWEiLCLwn4ey8J+HqSI6IjFmMWYyLTFmMWU5Iiwi8J+HsvCfh6giOiIxZjFmMi0xZjFlOCIsIvCfh7Lwn4emIjoiMWYxZjItMWYxZTYiLCLwn4ex8J+HviI6IjFmMWYxLTFmMWZlIiwi8J+HsfCfh7siOiIxZjFmMS0xZjFmYiIsIvCfh7Hwn4e6IjoiMWYxZjEtMWYxZmEiLCLwn4ex8J+HuSI6IjFmMWYxLTFmMWY5Iiwi8J+HsfCfh7giOiIxZjFmMS0xZjFmOCIsIvCfh7Hwn4e3IjoiMWYxZjEtMWYxZjciLCLwn4ex8J+HsCI6IjFmMWYxLTFmMWYwIiwi8J+HsfCfh64iOiIxZjFmMS0xZjFlZSIsIvCfh7Hwn4eoIjoiMWYxZjEtMWYxZTgiLCLwn4ex8J+HpyI6IjFmMWYxLTFmMWU3Iiwi8J+HsfCfh6YiOiIxZjFmMS0xZjFlNiIsIvCfh7Dwn4e/IjoiMWYxZjAtMWYxZmYiLCLwn4ew8J+HviI6IjFmMWYwLTFmMWZlIiwi8J+HsPCfh7wiOiIxZjFmMC0xZjFmYyIsIvCfh7Dwn4e3IjoiMWYxZjAtMWYxZjciLCLwn4ew8J+HtSI6IjFmMWYwLTFmMWY1Iiwi8J+HsPCfh7MiOiIxZjFmMC0xZjFmMyIsIvCfh7Dwn4eyIjoiMWYxZjAtMWYxZjIiLCLwn4ew8J+HriI6IjFmMWYwLTFmMWVlIiwi8J+HsPCfh60iOiIxZjFmMC0xZjFlZCIsIvCfh7Dwn4esIjoiMWYxZjAtMWYxZWMiLCLwn4ew8J+HqiI6IjFmMWYwLTFmMWVhIiwi8J+Hr/Cfh7UiOiIxZjFlZi0xZjFmNSIsIvCfh6/wn4e0IjoiMWYxZWYtMWYxZjQiLCLwn4ev8J+HsiI6IjFmMWVmLTFmMWYyIiwi8J+Hr/Cfh6oiOiIxZjFlZi0xZjFlYSIsIvCfh67wn4e5IjoiMWYxZWUtMWYxZjkiLCLwn4eu8J+HuCI6IjFmMWVlLTFmMWY4Iiwi8J+HrvCfh7ciOiIxZjFlZS0xZjFmNyIsIvCfh67wn4e2IjoiMWYxZWUtMWYxZjYiLCLwn4eu8J+HtCI6IjFmMWVlLTFmMWY0Iiwi8J+HrvCfh7MiOiIxZjFlZS0xZjFmMyIsIvCfh67wn4eyIjoiMWYxZWUtMWYxZjIiLCLwn4eu8J+HsSI6IjFmMWVlLTFmMWYxIiwi8J+HrvCfh6oiOiIxZjFlZS0xZjFlYSIsIvCfh67wn4epIjoiMWYxZWUtMWYxZTkiLCLwn4eu8J+HqCI6IjFmMWVlLTFmMWU4Iiwi8J+HrfCfh7oiOiIxZjFlZC0xZjFmYSIsIvCfh63wn4e5IjoiMWYxZWQtMWYxZjkiLCLwn4et8J+HtyI6IjFmMWVkLTFmMWY3Iiwi8J+HrfCfh7MiOiIxZjFlZC0xZjFmMyIsIvCfh63wn4eyIjoiMWYxZWQtMWYxZjIiLCLwn4et8J+HsCI6IjFmMWVkLTFmMWYwIiwi8J+HrPCfh74iOiIxZjFlYy0xZjFmZSIsIvCfh6zwn4e8IjoiMWYxZWMtMWYxZmMiLCLwn4es8J+HuiI6IjFmMWVjLTFmMWZhIiwi8J+HrPCfh7kiOiIxZjFlYy0xZjFmOSIsIvCfh6zwn4e4IjoiMWYxZWMtMWYxZjgiLCLwn4es8J+HtyI6IjFmMWVjLTFmMWY3Iiwi8J+HrPCfh7YiOiIxZjFlYy0xZjFmNiIsIvCfh6zwn4e1IjoiMWYxZWMtMWYxZjUiLCLwn4es8J+HsyI6IjFmMWVjLTFmMWYzIiwi8J+HrPCfh7IiOiIxZjFlYy0xZjFmMiIsIvCfh6zwn4exIjoiMWYxZWMtMWYxZjEiLCLwn4es8J+HriI6IjFmMWVjLTFmMWVlIiwi8J+HrPCfh60iOiIxZjFlYy0xZjFlZCIsIvCfh6zwn4esIjoiMWYxZWMtMWYxZWMiLCLwn4es8J+HqyI6IjFmMWVjLTFmMWViIiwi8J+HrPCfh6oiOiIxZjFlYy0xZjFlYSIsIvCfh6zwn4epIjoiMWYxZWMtMWYxZTkiLCLwn4es8J+HpyI6IjFmMWVjLTFmMWU3Iiwi8J+HrPCfh6YiOiIxZjFlYy0xZjFlNiIsIvCfh6vwn4e3IjoiMWYxZWItMWYxZjciLCLwn4er8J+HtCI6IjFmMWViLTFmMWY0Iiwi8J+Hq/Cfh7IiOiIxZjFlYi0xZjFmMiIsIvCfh6vwn4ewIjoiMWYxZWItMWYxZjAiLCLwn4er8J+HryI6IjFmMWViLTFmMWVmIiwi8J+Hq/Cfh64iOiIxZjFlYi0xZjFlZSIsIvCfh6rwn4e6IjoiMWYxZWEtMWYxZmEiLCLwn4eq8J+HuSI6IjFmMWVhLTFmMWY5Iiwi8J+HqvCfh7giOiIxZjFlYS0xZjFmOCIsIvCfh6rwn4e3IjoiMWYxZWEtMWYxZjciLCLwn4eq8J+HrSI6IjFmMWVhLTFmMWVkIiwi8J+HqvCfh6wiOiIxZjFlYS0xZjFlYyIsIvCfh6rwn4eqIjoiMWYxZWEtMWYxZWEiLCLwn4eq8J+HqCI6IjFmMWVhLTFmMWU4Iiwi8J+HqvCfh6YiOiIxZjFlYS0xZjFlNiIsIvCfh6nwn4e/IjoiMWYxZTktMWYxZmYiLCLwn4ep8J+HtCI6IjFmMWU5LTFmMWY0Iiwi8J+HqfCfh7IiOiIxZjFlOS0xZjFmMiIsIvCfh6nwn4ewIjoiMWYxZTktMWYxZjAiLCLwn4ep8J+HryI6IjFmMWU5LTFmMWVmIiwi8J+HqfCfh6wiOiIxZjFlOS0xZjFlYyIsIvCfh6nwn4eqIjoiMWYxZTktMWYxZWEiLCLwn4eo8J+HvyI6IjFmMWU4LTFmMWZmIiwi8J+HqPCfh74iOiIxZjFlOC0xZjFmZSIsIvCfh6jwn4e9IjoiMWYxZTgtMWYxZmQiLCLwn4eo8J+HvCI6IjFmMWU4LTFmMWZjIiwi8J+HqPCfh7siOiIxZjFlOC0xZjFmYiIsIvCfh6jwn4e6IjoiMWYxZTgtMWYxZmEiLCLwn4eo8J+HtyI6IjFmMWU4LTFmMWY3Iiwi8J+HqPCfh7UiOiIxZjFlOC0xZjFmNSIsIvCfh6jwn4e0IjoiMWYxZTgtMWYxZjQiLCLwn4eo8J+HsyI6IjFmMWU4LTFmMWYzIiwi8J+HqPCfh7IiOiIxZjFlOC0xZjFmMiIsIvCfh6jwn4exIjoiMWYxZTgtMWYxZjEiLCLwn4eo8J+HsCI6IjFmMWU4LTFmMWYwIiwi8J+HqPCfh64iOiIxZjFlOC0xZjFlZSIsIvCfh6jwn4etIjoiMWYxZTgtMWYxZWQiLCLwn4eo8J+HrCI6IjFmMWU4LTFmMWVjIiwi8J+HqPCfh6siOiIxZjFlOC0xZjFlYiIsIvCfh6jwn4epIjoiMWYxZTgtMWYxZTkiLCLwn4eo8J+HqCI6IjFmMWU4LTFmMWU4Iiwi8J+HqPCfh6YiOiIxZjFlOC0xZjFlNiIsIvCfh6fwn4e/IjoiMWYxZTctMWYxZmYiLCLwn4en8J+HviI6IjFmMWU3LTFmMWZlIiwi8J+Hp/Cfh7wiOiIxZjFlNy0xZjFmYyIsIvCfh6fwn4e7IjoiMWYxZTctMWYxZmIiLCLwn4en8J+HuSI6IjFmMWU3LTFmMWY5Iiwi8J+Hp/Cfh7giOiIxZjFlNy0xZjFmOCIsIvCfh6fwn4e3IjoiMWYxZTctMWYxZjciLCLwn4en8J+HtiI6IjFmMWU3LTFmMWY2Iiwi8J+Hp/Cfh7QiOiIxZjFlNy0xZjFmNCIsIvCfh6fwn4ezIjoiMWYxZTctMWYxZjMiLCLwn4en8J+HsiI6IjFmMWU3LTFmMWYyIiwi8J+Hp/Cfh7EiOiIxZjFlNy0xZjFmMSIsIvCfh6fwn4evIjoiMWYxZTctMWYxZWYiLCLwn4en8J+HriI6IjFmMWU3LTFmMWVlIiwi8J+Hp/Cfh60iOiIxZjFlNy0xZjFlZCIsIvCfh6fwn4esIjoiMWYxZTctMWYxZWMiLCLwn4en8J+HqyI6IjFmMWU3LTFmMWViIiwi8J+Hp/Cfh6oiOiIxZjFlNy0xZjFlYSIsIvCfh6fwn4epIjoiMWYxZTctMWYxZTkiLCLwn4en8J+HpyI6IjFmMWU3LTFmMWU3Iiwi8J+Hp/Cfh6YiOiIxZjFlNy0xZjFlNiIsIvCfh6bwn4e/IjoiMWYxZTYtMWYxZmYiLCLwn4em8J+HvSI6IjFmMWU2LTFmMWZkIiwi8J+HpvCfh7wiOiIxZjFlNi0xZjFmYyIsIvCfh6bwn4e6IjoiMWYxZTYtMWYxZmEiLCLwn4em8J+HuSI6IjFmMWU2LTFmMWY5Iiwi8J+HpvCfh7giOiIxZjFlNi0xZjFmOCIsIvCfh6bwn4e3IjoiMWYxZTYtMWYxZjciLCLwn4em8J+HtiI6IjFmMWU2LTFmMWY2Iiwi8J+HpvCfh7QiOiIxZjFlNi0xZjFmNCIsIvCfh6bwn4eyIjoiMWYxZTYtMWYxZjIiLCLwn4em8J+HsSI6IjFmMWU2LTFmMWYxIiwi8J+HpvCfh64iOiIxZjFlNi0xZjFlZSIsIvCfh6bwn4esIjoiMWYxZTYtMWYxZWMiLCLwn4em8J+HqyI6IjFmMWU2LTFmMWViIiwi8J+HpvCfh6oiOiIxZjFlNi0xZjFlYSIsIvCfh6bwn4epIjoiMWYxZTYtMWYxZTkiLCLwn4em8J+HqCI6IjFmMWU2LTFmMWU4Iiwi8J+AhO+4jyI6IjFmMDA0LWZlMGYiLCLwn4CEIjoiMWYwMDQiLCLwn4W/77iPIjoiMWYxN2YtZmUwZiIsIvCfhb8iOiIxZjE3ZiIsIvCfiILvuI8iOiIxZjIwMi1mZTBmIiwi8J+IgiI6IjFmMjAyIiwi8J+Imu+4jyI6IjFmMjFhLWZlMGYiLCLwn4iaIjoiMWYyMWEiLCLwn4iv77iPIjoiMWYyMmYtZmUwZiIsIvCfiK8iOiIxZjIyZiIsIvCfiLfvuI8iOiIxZjIzNy1mZTBmIiwi8J+ItyI6IjFmMjM3Iiwi8J+Onu+4jyI6IjFmMzllLWZlMGYiLCLwn46eIjoiMWYzOWUiLCLwn46f77iPIjoiMWYzOWYtZmUwZiIsIvCfjp8iOiIxZjM5ZiIsIvCfj4vvuI8iOiIxZjNjYi1mZTBmIiwi8J+PiyI6IjFmM2NiIiwi8J+PjO+4jyI6IjFmM2NjLWZlMGYiLCLwn4+MIjoiMWYzY2MiLCLwn4+N77iPIjoiMWYzY2QtZmUwZiIsIvCfj40iOiIxZjNjZCIsIvCfj47vuI8iOiIxZjNjZS1mZTBmIiwi8J+PjiI6IjFmM2NlIiwi8J+Olu+4jyI6IjFmMzk2LWZlMGYiLCLwn46WIjoiMWYzOTYiLCLwn46X77iPIjoiMWYzOTctZmUwZiIsIvCfjpciOiIxZjM5NyIsIvCfjLbvuI8iOiIxZjMzNi1mZTBmIiwi8J+MtiI6IjFmMzM2Iiwi8J+Mp++4jyI6IjFmMzI3LWZlMGYiLCLwn4ynIjoiMWYzMjciLCLwn4yo77iPIjoiMWYzMjgtZmUwZiIsIvCfjKgiOiIxZjMyOCIsIvCfjKnvuI8iOiIxZjMyOS1mZTBmIiwi8J+MqSI6IjFmMzI5Iiwi8J+Mqu+4jyI6IjFmMzJhLWZlMGYiLCLwn4yqIjoiMWYzMmEiLCLwn4yr77iPIjoiMWYzMmItZmUwZiIsIvCfjKsiOiIxZjMyYiIsIvCfjKzvuI8iOiIxZjMyYy1mZTBmIiwi8J+MrCI6IjFmMzJjIiwi8J+Qv++4jyI6IjFmNDNmLWZlMGYiLCLwn5C/IjoiMWY0M2YiLCLwn5W377iPIjoiMWY1NzctZmUwZiIsIvCflbciOiIxZjU3NyIsIvCflbjvuI8iOiIxZjU3OC1mZTBmIiwi8J+VuCI6IjFmNTc4Iiwi8J+Moe+4jyI6IjFmMzIxLWZlMGYiLCLwn4yhIjoiMWYzMjEiLCLwn46Z77iPIjoiMWYzOTktZmUwZiIsIvCfjpkiOiIxZjM5OSIsIvCfjprvuI8iOiIxZjM5YS1mZTBmIiwi8J+OmiI6IjFmMzlhIiwi8J+Om++4jyI6IjFmMzliLWZlMGYiLCLwn46bIjoiMWYzOWIiLCLwn4+z77iPIjoiMWYzZjMtZmUwZiIsIvCfj7MiOiIxZjNmMyIsIvCfj7XvuI8iOiIxZjNmNS1mZTBmIiwi8J+PtSI6IjFmM2Y1Iiwi8J+Pt++4jyI6IjFmM2Y3LWZlMGYiLCLwn4+3IjoiMWYzZjciLCLwn5O977iPIjoiMWY0ZmQtZmUwZiIsIvCfk70iOiIxZjRmZCIsIvCflYnvuI8iOiIxZjU0OS1mZTBmIiwi8J+ViSI6IjFmNTQ5Iiwi8J+Viu+4jyI6IjFmNTRhLWZlMGYiLCLwn5WKIjoiMWY1NGEiLCLwn5Wv77iPIjoiMWY1NmYtZmUwZiIsIvCfla8iOiIxZjU2ZiIsIvCflbDvuI8iOiIxZjU3MC1mZTBmIiwi8J+VsCI6IjFmNTcwIiwi8J+Vs++4jyI6IjFmNTczLWZlMGYiLCLwn5WzIjoiMWY1NzMiLCLwn5W277iPIjoiMWY1NzYtZmUwZiIsIvCflbYiOiIxZjU3NiIsIvCflbnvuI8iOiIxZjU3OS1mZTBmIiwi8J+VuSI6IjFmNTc5Iiwi8J+Wh++4jyI6IjFmNTg3LWZlMGYiLCLwn5aHIjoiMWY1ODciLCLwn5aK77iPIjoiMWY1OGEtZmUwZiIsIvCflooiOiIxZjU4YSIsIvCflovvuI8iOiIxZjU4Yi1mZTBmIiwi8J+WiyI6IjFmNThiIiwi8J+WjO+4jyI6IjFmNThjLWZlMGYiLCLwn5aMIjoiMWY1OGMiLCLwn5aN77iPIjoiMWY1OGQtZmUwZiIsIvCflo0iOiIxZjU4ZCIsIvCflqXvuI8iOiIxZjVhNS1mZTBmIiwi8J+WpSI6IjFmNWE1Iiwi8J+WqO+4jyI6IjFmNWE4LWZlMGYiLCLwn5aoIjoiMWY1YTgiLCLwn5ay77iPIjoiMWY1YjItZmUwZiIsIvCflrIiOiIxZjViMiIsIvCflrzvuI8iOiIxZjViYy1mZTBmIiwi8J+WvCI6IjFmNWJjIiwi8J+Xgu+4jyI6IjFmNWMyLWZlMGYiLCLwn5eCIjoiMWY1YzIiLCLwn5eD77iPIjoiMWY1YzMtZmUwZiIsIvCfl4MiOiIxZjVjMyIsIvCfl4TvuI8iOiIxZjVjNC1mZTBmIiwi8J+XhCI6IjFmNWM0Iiwi8J+Xke+4jyI6IjFmNWQxLWZlMGYiLCLwn5eRIjoiMWY1ZDEiLCLwn5eS77iPIjoiMWY1ZDItZmUwZiIsIvCfl5IiOiIxZjVkMiIsIvCfl5PvuI8iOiIxZjVkMy1mZTBmIiwi8J+XkyI6IjFmNWQzIiwi8J+XnO+4jyI6IjFmNWRjLWZlMGYiLCLwn5ecIjoiMWY1ZGMiLCLwn5ed77iPIjoiMWY1ZGQtZmUwZiIsIvCfl50iOiIxZjVkZCIsIvCfl57vuI8iOiIxZjVkZS1mZTBmIiwi8J+XniI6IjFmNWRlIiwi8J+Xoe+4jyI6IjFmNWUxLWZlMGYiLCLwn5ehIjoiMWY1ZTEiLCLwn5ej77iPIjoiMWY1ZTMtZmUwZiIsIvCfl6MiOiIxZjVlMyIsIvCfl6jvuI8iOiIxZjVlOC1mZTBmIiwi8J+XqCI6IjFmNWU4Iiwi8J+Xr++4jyI6IjFmNWVmLWZlMGYiLCLwn5evIjoiMWY1ZWYiLCLwn5ez77iPIjoiMWY1ZjMtZmUwZiIsIvCfl7MiOiIxZjVmMyIsIvCfl7rvuI8iOiIxZjVmYS1mZTBmIiwi8J+XuiI6IjFmNWZhIiwi8J+boO+4jyI6IjFmNmUwLWZlMGYiLCLwn5ugIjoiMWY2ZTAiLCLwn5uh77iPIjoiMWY2ZTEtZmUwZiIsIvCfm6EiOiIxZjZlMSIsIvCfm6LvuI8iOiIxZjZlMi1mZTBmIiwi8J+boiI6IjFmNmUyIiwi8J+bsO+4jyI6IjFmNmYwLWZlMGYiLCLwn5uwIjoiMWY2ZjAiLCLwn42977iPIjoiMWYzN2QtZmUwZiIsIvCfjb0iOiIxZjM3ZCIsIvCfkYHvuI8iOiIxZjQ0MS1mZTBmIiwi8J+RgSI6IjFmNDQxIiwi8J+VtO+4jyI6IjFmNTc0LWZlMGYiLCLwn5W0IjoiMWY1NzQiLCLwn5W177iPIjoiMWY1NzUtZmUwZiIsIvCflbUiOiIxZjU3NSIsIvCflpDvuI8iOiIxZjU5MC1mZTBmIiwi8J+WkCI6IjFmNTkwIiwi8J+PlO+4jyI6IjFmM2Q0LWZlMGYiLCLwn4+UIjoiMWYzZDQiLCLwn4+V77iPIjoiMWYzZDUtZmUwZiIsIvCfj5UiOiIxZjNkNSIsIvCfj5bvuI8iOiIxZjNkNi1mZTBmIiwi8J+PliI6IjFmM2Q2Iiwi8J+Pl++4jyI6IjFmM2Q3LWZlMGYiLCLwn4+XIjoiMWYzZDciLCLwn4+Y77iPIjoiMWYzZDgtZmUwZiIsIvCfj5giOiIxZjNkOCIsIvCfj5nvuI8iOiIxZjNkOS1mZTBmIiwi8J+PmSI6IjFmM2Q5Iiwi8J+Pmu+4jyI6IjFmM2RhLWZlMGYiLCLwn4+aIjoiMWYzZGEiLCLwn4+b77iPIjoiMWYzZGItZmUwZiIsIvCfj5siOiIxZjNkYiIsIvCfj5zvuI8iOiIxZjNkYy1mZTBmIiwi8J+PnCI6IjFmM2RjIiwi8J+Pne+4jyI6IjFmM2RkLWZlMGYiLCLwn4+dIjoiMWYzZGQiLCLwn4+e77iPIjoiMWYzZGUtZmUwZiIsIvCfj54iOiIxZjNkZSIsIvCfj5/vuI8iOiIxZjNkZi1mZTBmIiwi8J+PnyI6IjFmM2RmIiwi8J+bi++4jyI6IjFmNmNiLWZlMGYiLCLwn5uLIjoiMWY2Y2IiLCLwn5uN77iPIjoiMWY2Y2QtZmUwZiIsIvCfm40iOiIxZjZjZCIsIvCfm47vuI8iOiIxZjZjZS1mZTBmIiwi8J+bjiI6IjFmNmNlIiwi8J+bj++4jyI6IjFmNmNmLWZlMGYiLCLwn5uPIjoiMWY2Y2YiLCLwn5uj77iPIjoiMWY2ZTMtZmUwZiIsIvCfm6MiOiIxZjZlMyIsIvCfm6TvuI8iOiIxZjZlNC1mZTBmIiwi8J+bpCI6IjFmNmU0Iiwi8J+bpe+4jyI6IjFmNmU1LWZlMGYiLCLwn5ulIjoiMWY2ZTUiLCLwn5up77iPIjoiMWY2ZTktZmUwZiIsIvCfm6kiOiIxZjZlOSIsIvCfm7PvuI8iOiIxZjZmMy1mZTBmIiwi8J+bsyI6IjFmNmYzIiwi8J+MpO+4jyI6IjFmMzI0LWZlMGYiLCLwn4ykIjoiMWYzMjQiLCLwn4yl77iPIjoiMWYzMjUtZmUwZiIsIvCfjKUiOiIxZjMyNSIsIvCfjKbvuI8iOiIxZjMyNi1mZTBmIiwi8J+MpiI6IjFmMzI2Iiwi8J+Wse+4jyI6IjFmNWIxLWZlMGYiLCLwn5axIjoiMWY1YjEiLCLimJ3wn4+7IjoiMjYxZC0xZjNmYiIsIuKYnfCfj7wiOiIyNjFkLTFmM2ZjIiwi4pid8J+PvSI6IjI2MWQtMWYzZmQiLCLimJ3wn4++IjoiMjYxZC0xZjNmZSIsIuKYnfCfj78iOiIyNjFkLTFmM2ZmIiwi4pyM8J+PuyI6IjI3MGMtMWYzZmIiLCLinIzwn4+8IjoiMjcwYy0xZjNmYyIsIuKcjPCfj70iOiIyNzBjLTFmM2ZkIiwi4pyM8J+PviI6IjI3MGMtMWYzZmUiLCLinIzwn4+/IjoiMjcwYy0xZjNmZiIsIuKcivCfj7siOiIyNzBhLTFmM2ZiIiwi4pyK8J+PvCI6IjI3MGEtMWYzZmMiLCLinIrwn4+9IjoiMjcwYS0xZjNmZCIsIuKcivCfj74iOiIyNzBhLTFmM2ZlIiwi4pyK8J+PvyI6IjI3MGEtMWYzZmYiLCLinIvwn4+7IjoiMjcwYi0xZjNmYiIsIuKci/Cfj7wiOiIyNzBiLTFmM2ZjIiwi4pyL8J+PvSI6IjI3MGItMWYzZmQiLCLinIvwn4++IjoiMjcwYi0xZjNmZSIsIuKci/Cfj78iOiIyNzBiLTFmM2ZmIiwi4pyN8J+PuyI6IjI3MGQtMWYzZmIiLCLinI3wn4+8IjoiMjcwZC0xZjNmYyIsIuKcjfCfj70iOiIyNzBkLTFmM2ZkIiwi4pyN8J+PviI6IjI3MGQtMWYzZmUiLCLinI3wn4+/IjoiMjcwZC0xZjNmZiIsIuKbufCfj7siOiIyNmY5LTFmM2ZiIiwi4pu58J+PvCI6IjI2ZjktMWYzZmMiLCLim7nwn4+9IjoiMjZmOS0xZjNmZCIsIuKbufCfj74iOiIyNmY5LTFmM2ZlIiwi4pu58J+PvyI6IjI2ZjktMWYzZmYiLCLCqe+4jyI6IjAwYTktZmUwZiIsIsKpIjoiMDBhOSIsIsKu77iPIjoiMDBhZS1mZTBmIiwiwq4iOiIwMGFlIiwi4oC877iPIjoiMjAzYy1mZTBmIiwi4oC8IjoiMjAzYyIsIuKBie+4jyI6IjIwNDktZmUwZiIsIuKBiSI6IjIwNDkiLCLihKLvuI8iOiIyMTIyLWZlMGYiLCLihKIiOiIyMTIyIiwi4oS577iPIjoiMjEzOS1mZTBmIiwi4oS5IjoiMjEzOSIsIuKGlO+4jyI6IjIxOTQtZmUwZiIsIuKGlCI6IjIxOTQiLCLihpXvuI8iOiIyMTk1LWZlMGYiLCLihpUiOiIyMTk1Iiwi4oaW77iPIjoiMjE5Ni1mZTBmIiwi4oaWIjoiMjE5NiIsIuKGl++4jyI6IjIxOTctZmUwZiIsIuKGlyI6IjIxOTciLCLihpjvuI8iOiIyMTk4LWZlMGYiLCLihpgiOiIyMTk4Iiwi4oaZ77iPIjoiMjE5OS1mZTBmIiwi4oaZIjoiMjE5OSIsIuKGqe+4jyI6IjIxYTktZmUwZiIsIuKGqSI6IjIxYTkiLCLihqrvuI8iOiIyMWFhLWZlMGYiLCLihqoiOiIyMWFhIiwi4oya77iPIjoiMjMxYS1mZTBmIiwi4oyaIjoiMjMxYSIsIuKMm++4jyI6IjIzMWItZmUwZiIsIuKMmyI6IjIzMWIiLCLik4LvuI8iOiIyNGMyLWZlMGYiLCLik4IiOiIyNGMyIiwi4paq77iPIjoiMjVhYS1mZTBmIiwi4paqIjoiMjVhYSIsIuKWq++4jyI6IjI1YWItZmUwZiIsIuKWqyI6IjI1YWIiLCLilrbvuI8iOiIyNWI2LWZlMGYiLCLilrYiOiIyNWI2Iiwi4peA77iPIjoiMjVjMC1mZTBmIiwi4peAIjoiMjVjMCIsIuKXu++4jyI6IjI1ZmItZmUwZiIsIuKXuyI6IjI1ZmIiLCLil7zvuI8iOiIyNWZjLWZlMGYiLCLil7wiOiIyNWZjIiwi4pe977iPIjoiMjVmZC1mZTBmIiwi4pe9IjoiMjVmZCIsIuKXvu+4jyI6IjI1ZmUtZmUwZiIsIuKXviI6IjI1ZmUiLCLimIDvuI8iOiIyNjAwLWZlMGYiLCLimIAiOiIyNjAwIiwi4piB77iPIjoiMjYwMS1mZTBmIiwi4piBIjoiMjYwMSIsIuKYju+4jyI6IjI2MGUtZmUwZiIsIuKYjiI6IjI2MGUiLCLimJHvuI8iOiIyNjExLWZlMGYiLCLimJEiOiIyNjExIiwi4piU77iPIjoiMjYxNC1mZTBmIiwi4piUIjoiMjYxNCIsIuKYle+4jyI6IjI2MTUtZmUwZiIsIuKYlSI6IjI2MTUiLCLimJ3vuI8iOiIyNjFkLWZlMGYiLCLimJ0iOiIyNjFkIiwi4pi677iPIjoiMjYzYS1mZTBmIiwi4pi6IjoiMjYzYSIsIuKZiO+4jyI6IjI2NDgtZmUwZiIsIuKZiCI6IjI2NDgiLCLimYnvuI8iOiIyNjQ5LWZlMGYiLCLimYkiOiIyNjQ5Iiwi4pmK77iPIjoiMjY0YS1mZTBmIiwi4pmKIjoiMjY0YSIsIuKZi++4jyI6IjI2NGItZmUwZiIsIuKZiyI6IjI2NGIiLCLimYzvuI8iOiIyNjRjLWZlMGYiLCLimYwiOiIyNjRjIiwi4pmN77iPIjoiMjY0ZC1mZTBmIiwi4pmNIjoiMjY0ZCIsIuKZju+4jyI6IjI2NGUtZmUwZiIsIuKZjiI6IjI2NGUiLCLimY/vuI8iOiIyNjRmLWZlMGYiLCLimY8iOiIyNjRmIiwi4pmQ77iPIjoiMjY1MC1mZTBmIiwi4pmQIjoiMjY1MCIsIuKZke+4jyI6IjI2NTEtZmUwZiIsIuKZkSI6IjI2NTEiLCLimZLvuI8iOiIyNjUyLWZlMGYiLCLimZIiOiIyNjUyIiwi4pmT77iPIjoiMjY1My1mZTBmIiwi4pmTIjoiMjY1MyIsIuKZoO+4jyI6IjI2NjAtZmUwZiIsIuKZoCI6IjI2NjAiLCLimaPvuI8iOiIyNjYzLWZlMGYiLCLimaMiOiIyNjYzIiwi4pml77iPIjoiMjY2NS1mZTBmIiwi4pmlIjoiMjY2NSIsIuKZpu+4jyI6IjI2NjYtZmUwZiIsIuKZpiI6IjI2NjYiLCLimajvuI8iOiIyNjY4LWZlMGYiLCLimagiOiIyNjY4Iiwi4pm777iPIjoiMjY3Yi1mZTBmIiwi4pm7IjoiMjY3YiIsIuKZv++4jyI6IjI2N2YtZmUwZiIsIuKZvyI6IjI2N2YiLCLimpPvuI8iOiIyNjkzLWZlMGYiLCLimpMiOiIyNjkzIiwi4pqg77iPIjoiMjZhMC1mZTBmIiwi4pqgIjoiMjZhMCIsIuKaoe+4jyI6IjI2YTEtZmUwZiIsIuKaoSI6IjI2YTEiLCLimqrvuI8iOiIyNmFhLWZlMGYiLCLimqoiOiIyNmFhIiwi4pqr77iPIjoiMjZhYi1mZTBmIiwi4pqrIjoiMjZhYiIsIuKave+4jyI6IjI2YmQtZmUwZiIsIuKavSI6IjI2YmQiLCLimr7vuI8iOiIyNmJlLWZlMGYiLCLimr4iOiIyNmJlIiwi4puE77iPIjoiMjZjNC1mZTBmIiwi4puEIjoiMjZjNCIsIuKbhe+4jyI6IjI2YzUtZmUwZiIsIuKbhSI6IjI2YzUiLCLim5TvuI8iOiIyNmQ0LWZlMGYiLCLim5QiOiIyNmQ0Iiwi4puq77iPIjoiMjZlYS1mZTBmIiwi4puqIjoiMjZlYSIsIuKbsu+4jyI6IjI2ZjItZmUwZiIsIuKbsiI6IjI2ZjIiLCLim7PvuI8iOiIyNmYzLWZlMGYiLCLim7MiOiIyNmYzIiwi4pu177iPIjoiMjZmNS1mZTBmIiwi4pu1IjoiMjZmNSIsIuKbuu+4jyI6IjI2ZmEtZmUwZiIsIuKbuiI6IjI2ZmEiLCLim73vuI8iOiIyNmZkLWZlMGYiLCLim70iOiIyNmZkIiwi4pyC77iPIjoiMjcwMi1mZTBmIiwi4pyCIjoiMjcwMiIsIuKciO+4jyI6IjI3MDgtZmUwZiIsIuKciCI6IjI3MDgiLCLinInvuI8iOiIyNzA5LWZlMGYiLCLinIkiOiIyNzA5Iiwi4pyM77iPIjoiMjcwYy1mZTBmIiwi4pyMIjoiMjcwYyIsIuKcj++4jyI6IjI3MGYtZmUwZiIsIuKcjyI6IjI3MGYiLCLinJLvuI8iOiIyNzEyLWZlMGYiLCLinJIiOiIyNzEyIiwi4pyU77iPIjoiMjcxNC1mZTBmIiwi4pyUIjoiMjcxNCIsIuKclu+4jyI6IjI3MTYtZmUwZiIsIuKcliI6IjI3MTYiLCLinLPvuI8iOiIyNzMzLWZlMGYiLCLinLMiOiIyNzMzIiwi4py077iPIjoiMjczNC1mZTBmIiwi4py0IjoiMjczNCIsIuKdhO+4jyI6IjI3NDQtZmUwZiIsIuKdhCI6IjI3NDQiLCLinYfvuI8iOiIyNzQ3LWZlMGYiLCLinYciOiIyNzQ3Iiwi4p2X77iPIjoiMjc1Ny1mZTBmIiwi4p2XIjoiMjc1NyIsIuKdpO+4jyI6IjI3NjQtZmUwZiIsIuKdpCI6IjI3NjQiLCLinqHvuI8iOiIyN2ExLWZlMGYiLCLinqEiOiIyN2ExIiwi4qS077iPIjoiMjkzNC1mZTBmIiwi4qS0IjoiMjkzNCIsIuKkte+4jyI6IjI5MzUtZmUwZiIsIuKktSI6IjI5MzUiLCLirIXvuI8iOiIyYjA1LWZlMGYiLCLirIUiOiIyYjA1Iiwi4qyG77iPIjoiMmIwNi1mZTBmIiwi4qyGIjoiMmIwNiIsIuKsh++4jyI6IjJiMDctZmUwZiIsIuKshyI6IjJiMDciLCLirJvvuI8iOiIyYjFiLWZlMGYiLCLirJsiOiIyYjFiIiwi4qyc77iPIjoiMmIxYy1mZTBmIiwi4qycIjoiMmIxYyIsIuKtkO+4jyI6IjJiNTAtZmUwZiIsIuKtkCI6IjJiNTAiLCLirZXvuI8iOiIyYjU1LWZlMGYiLCLirZUiOiIyYjU1Iiwi44Cw77iPIjoiMzAzMC1mZTBmIiwi44CwIjoiMzAzMCIsIuOAve+4jyI6IjMwM2QtZmUwZiIsIuOAvSI6IjMwM2QiLCLjipfvuI8iOiIzMjk3LWZlMGYiLCLjipciOiIzMjk3Iiwi44qZ77iPIjoiMzI5OS1mZTBmIiwi44qZIjoiMzI5OSIsIuKcne+4jyI6IjI3MWQtZmUwZiIsIuKcnSI6IjI3MWQiLCLijKjvuI8iOiIyMzI4LWZlMGYiLCLijKgiOiIyMzI4Iiwi4pyN77iPIjoiMjcwZC1mZTBmIiwi4pyNIjoiMjcwZCIsIuKPj++4jyI6IjIzY2YtZmUwZiIsIuKPjyI6IjIzY2YiLCLij63vuI8iOiIyM2VkLWZlMGYiLCLij60iOiIyM2VkIiwi4o+u77iPIjoiMjNlZS1mZTBmIiwi4o+uIjoiMjNlZSIsIuKPr++4jyI6IjIzZWYtZmUwZiIsIuKPryI6IjIzZWYiLCLij7HvuI8iOiIyM2YxLWZlMGYiLCLij7EiOiIyM2YxIiwi4o+y77iPIjoiMjNmMi1mZTBmIiwi4o+yIjoiMjNmMiIsIuKPuO+4jyI6IjIzZjgtZmUwZiIsIuKPuCI6IjIzZjgiLCLij7nvuI8iOiIyM2Y5LWZlMGYiLCLij7kiOiIyM2Y5Iiwi4o+677iPIjoiMjNmYS1mZTBmIiwi4o+6IjoiMjNmYSIsIuKYgu+4jyI6IjI2MDItZmUwZiIsIuKYgiI6IjI2MDIiLCLimIPvuI8iOiIyNjAzLWZlMGYiLCLimIMiOiIyNjAzIiwi4piE77iPIjoiMjYwNC1mZTBmIiwi4piEIjoiMjYwNCIsIuKYmO+4jyI6IjI2MTgtZmUwZiIsIuKYmCI6IjI2MTgiLCLimKDvuI8iOiIyNjIwLWZlMGYiLCLimKAiOiIyNjIwIiwi4pii77iPIjoiMjYyMi1mZTBmIiwi4piiIjoiMjYyMiIsIuKYo++4jyI6IjI2MjMtZmUwZiIsIuKYoyI6IjI2MjMiLCLimKbvuI8iOiIyNjI2LWZlMGYiLCLimKYiOiIyNjI2Iiwi4piq77iPIjoiMjYyYS1mZTBmIiwi4piqIjoiMjYyYSIsIuKYru+4jyI6IjI2MmUtZmUwZiIsIuKYriI6IjI2MmUiLCLimK/vuI8iOiIyNjJmLWZlMGYiLCLimK8iOiIyNjJmIiwi4pi477iPIjoiMjYzOC1mZTBmIiwi4pi4IjoiMjYzOCIsIuKYue+4jyI6IjI2MzktZmUwZiIsIuKYuSI6IjI2MzkiLCLimpLvuI8iOiIyNjkyLWZlMGYiLCLimpIiOiIyNjkyIiwi4pqU77iPIjoiMjY5NC1mZTBmIiwi4pqUIjoiMjY5NCIsIuKalu+4jyI6IjI2OTYtZmUwZiIsIuKaliI6IjI2OTYiLCLimpfvuI8iOiIyNjk3LWZlMGYiLCLimpciOiIyNjk3Iiwi4pqZ77iPIjoiMjY5OS1mZTBmIiwi4pqZIjoiMjY5OSIsIuKam++4jyI6IjI2OWItZmUwZiIsIuKamyI6IjI2OWIiLCLimpzvuI8iOiIyNjljLWZlMGYiLCLimpwiOiIyNjljIiwi4pqw77iPIjoiMjZiMC1mZTBmIiwi4pqwIjoiMjZiMCIsIuKase+4jyI6IjI2YjEtZmUwZiIsIuKasSI6IjI2YjEiLCLim4jvuI8iOiIyNmM4LWZlMGYiLCLim4giOiIyNmM4Iiwi4puP77iPIjoiMjZjZi1mZTBmIiwi4puPIjoiMjZjZiIsIuKbke+4jyI6IjI2ZDEtZmUwZiIsIuKbkSI6IjI2ZDEiLCLim5PvuI8iOiIyNmQzLWZlMGYiLCLim5MiOiIyNmQzIiwi4pup77iPIjoiMjZlOS1mZTBmIiwi4pupIjoiMjZlOSIsIuKbsO+4jyI6IjI2ZjAtZmUwZiIsIuKbsCI6IjI2ZjAiLCLim7HvuI8iOiIyNmYxLWZlMGYiLCLim7EiOiIyNmYxIiwi4pu077iPIjoiMjZmNC1mZTBmIiwi4pu0IjoiMjZmNCIsIuKbt++4jyI6IjI2ZjctZmUwZiIsIuKbtyI6IjI2ZjciLCLim7jvuI8iOiIyNmY4LWZlMGYiLCLim7giOiIyNmY4Iiwi4pu577iPIjoiMjZmOS1mZTBmIiwi4pu5IjoiMjZmOSIsIuKcoe+4jyI6IjI3MjEtZmUwZiIsIuKcoSI6IjI3MjEiLCLinaPvuI8iOiIyNzYzLWZlMGYiLCLinaMiOiIyNzYzIiwi8J+liSI6IjFmOTQ5Iiwi8J+liCI6IjFmOTQ4Iiwi8J+lhyI6IjFmOTQ3Iiwi8J+kuiI6IjFmOTNhIiwi8J+lhSI6IjFmOTQ1Iiwi8J+kviI6IjFmOTNlIiwi8J+HvyI6IjFmMWZmIiwi8J+kvSI6IjFmOTNkIiwi8J+liyI6IjFmOTRiIiwi8J+liiI6IjFmOTRhIiwi8J+kvCI6IjFmOTNjIiwi8J+kuSI6IjFmOTM5Iiwi8J+kuCI6IjFmOTM4Iiwi8J+btiI6IjFmNmY2Iiwi8J+btSI6IjFmNmY1Iiwi8J+btCI6IjFmNmY0Iiwi8J+bkiI6IjFmNmQyIiwi8J+DjyI6IjFmMGNmIiwi8J+FsCI6IjFmMTcwIiwi8J+FsSI6IjFmMTcxIiwi8J+FviI6IjFmMTdlIiwi8J+bkSI6IjFmNmQxIiwi8J+GjiI6IjFmMThlIiwi8J+GkSI6IjFmMTkxIiwi8J+HviI6IjFmMWZlIiwi8J+GkiI6IjFmMTkyIiwi8J+GkyI6IjFmMTkzIiwi8J+GlCI6IjFmMTk0Iiwi8J+GlSI6IjFmMTk1Iiwi8J+GliI6IjFmMTk2Iiwi8J+GlyI6IjFmMTk3Iiwi8J+GmCI6IjFmMTk4Iiwi8J+lhCI6IjFmOTQ0Iiwi8J+GmSI6IjFmMTk5Iiwi8J+GmiI6IjFmMTlhIiwi8J+lgiI6IjFmOTQyIiwi8J+lgyI6IjFmOTQzIiwi8J+IgSI6IjFmMjAxIiwi8J+lmSI6IjFmOTU5Iiwi8J+IsiI6IjFmMjMyIiwi8J+IsyI6IjFmMjMzIiwi8J+ItCI6IjFmMjM0Iiwi8J+ItSI6IjFmMjM1Iiwi8J+ItiI6IjFmMjM2Iiwi8J+lmCI6IjFmOTU4Iiwi8J+IuCI6IjFmMjM4Iiwi8J+IuSI6IjFmMjM5Iiwi8J+llyI6IjFmOTU3Iiwi8J+IuiI6IjFmMjNhIiwi8J+JkCI6IjFmMjUwIiwi8J+JkSI6IjFmMjUxIiwi8J+MgCI6IjFmMzAwIiwi8J+lliI6IjFmOTU2Iiwi8J+MgSI6IjFmMzAxIiwi8J+MgiI6IjFmMzAyIiwi8J+MgyI6IjFmMzAzIiwi8J+MhCI6IjFmMzA0Iiwi8J+MhSI6IjFmMzA1Iiwi8J+MhiI6IjFmMzA2Iiwi8J+llSI6IjFmOTU1Iiwi8J+MhyI6IjFmMzA3Iiwi8J+MiCI6IjFmMzA4Iiwi8J+llCI6IjFmOTU0Iiwi8J+MiSI6IjFmMzA5Iiwi8J+MiiI6IjFmMzBhIiwi8J+MiyI6IjFmMzBiIiwi8J+MjCI6IjFmMzBjIiwi8J+MjyI6IjFmMzBmIiwi8J+MkSI6IjFmMzExIiwi8J+lkyI6IjFmOTUzIiwi8J+MkyI6IjFmMzEzIiwi8J+MlCI6IjFmMzE0Iiwi8J+MlSI6IjFmMzE1Iiwi8J+MmSI6IjFmMzE5Iiwi8J+MmyI6IjFmMzFiIiwi8J+MnyI6IjFmMzFmIiwi8J+lkiI6IjFmOTUyIiwi8J+MoCI6IjFmMzIwIiwi8J+MsCI6IjFmMzMwIiwi8J+lkSI6IjFmOTUxIiwi8J+MsSI6IjFmMzMxIiwi8J+MtCI6IjFmMzM0Iiwi8J+MtSI6IjFmMzM1Iiwi8J+MtyI6IjFmMzM3Iiwi8J+MuCI6IjFmMzM4Iiwi8J+MuSI6IjFmMzM5Iiwi8J+MuiI6IjFmMzNhIiwi8J+MuyI6IjFmMzNiIiwi8J+MvCI6IjFmMzNjIiwi8J+MvSI6IjFmMzNkIiwi8J+lkCI6IjFmOTUwIiwi8J+MviI6IjFmMzNlIiwi8J+MvyI6IjFmMzNmIiwi8J+NgCI6IjFmMzQwIiwi8J+NgSI6IjFmMzQxIiwi8J+NgiI6IjFmMzQyIiwi8J+NgyI6IjFmMzQzIiwi8J+NhCI6IjFmMzQ0Iiwi8J+NhSI6IjFmMzQ1Iiwi8J+NhiI6IjFmMzQ2Iiwi8J+NhyI6IjFmMzQ3Iiwi8J+NiCI6IjFmMzQ4Iiwi8J+NiSI6IjFmMzQ5Iiwi8J+NiiI6IjFmMzRhIiwi8J+lgCI6IjFmOTQwIiwi8J+NjCI6IjFmMzRjIiwi8J+NjSI6IjFmMzRkIiwi8J+NjiI6IjFmMzRlIiwi8J+NjyI6IjFmMzRmIiwi8J+NkSI6IjFmMzUxIiwi8J+NkiI6IjFmMzUyIiwi8J+NkyI6IjFmMzUzIiwi8J+mjyI6IjFmOThmIiwi8J+NlCI6IjFmMzU0Iiwi8J+NlSI6IjFmMzU1Iiwi8J+NliI6IjFmMzU2Iiwi8J+mjiI6IjFmOThlIiwi8J+NlyI6IjFmMzU3Iiwi8J+NmCI6IjFmMzU4Iiwi8J+NmSI6IjFmMzU5Iiwi8J+mjSI6IjFmOThkIiwi8J+NmiI6IjFmMzVhIiwi8J+NmyI6IjFmMzViIiwi8J+mjCI6IjFmOThjIiwi8J+NnCI6IjFmMzVjIiwi8J+NnSI6IjFmMzVkIiwi8J+NniI6IjFmMzVlIiwi8J+NnyI6IjFmMzVmIiwi8J+miyI6IjFmOThiIiwi8J+NoCI6IjFmMzYwIiwi8J+NoSI6IjFmMzYxIiwi8J+miiI6IjFmOThhIiwi8J+NoiI6IjFmMzYyIiwi8J+NoyI6IjFmMzYzIiwi8J+miSI6IjFmOTg5Iiwi8J+NpCI6IjFmMzY0Iiwi8J+NpSI6IjFmMzY1Iiwi8J+miCI6IjFmOTg4Iiwi8J+NpiI6IjFmMzY2Iiwi8J+mhyI6IjFmOTg3Iiwi8J+NpyI6IjFmMzY3Iiwi8J+HvSI6IjFmMWZkIiwi8J+NqCI6IjFmMzY4Iiwi8J+mhiI6IjFmOTg2Iiwi8J+NqSI6IjFmMzY5Iiwi8J+mhSI6IjFmOTg1Iiwi8J+NqiI6IjFmMzZhIiwi8J+WpCI6IjFmNWE0Iiwi8J+NqyI6IjFmMzZiIiwi8J+NrCI6IjFmMzZjIiwi8J+NrSI6IjFmMzZkIiwi8J+NriI6IjFmMzZlIiwi8J+NryI6IjFmMzZmIiwi8J+kniI6IjFmOTFlIiwi8J+NsCI6IjFmMzcwIiwi8J+NsSI6IjFmMzcxIiwi8J+NsiI6IjFmMzcyIiwi8J+knSI6IjFmOTFkIiwi8J+NsyI6IjFmMzczIiwi8J+NtCI6IjFmMzc0Iiwi8J+NtSI6IjFmMzc1Iiwi8J+NtiI6IjFmMzc2Iiwi8J+NtyI6IjFmMzc3Iiwi8J+NuCI6IjFmMzc4Iiwi8J+NuSI6IjFmMzc5Iiwi8J+NuiI6IjFmMzdhIiwi8J+NuyI6IjFmMzdiIiwi8J+OgCI6IjFmMzgwIiwi8J+OgSI6IjFmMzgxIiwi8J+OgiI6IjFmMzgyIiwi8J+OgyI6IjFmMzgzIiwi8J+kmyI6IjFmOTFiIiwi8J+knCI6IjFmOTFjIiwi8J+OhCI6IjFmMzg0Iiwi8J+OhSI6IjFmMzg1Iiwi8J+OhiI6IjFmMzg2Iiwi8J+kmiI6IjFmOTFhIiwi8J+OhyI6IjFmMzg3Iiwi8J+OiCI6IjFmMzg4Iiwi8J+OiSI6IjFmMzg5Iiwi8J+OiiI6IjFmMzhhIiwi8J+OiyI6IjFmMzhiIiwi8J+OjCI6IjFmMzhjIiwi8J+kmSI6IjFmOTE5Iiwi8J+OjSI6IjFmMzhkIiwi8J+VuiI6IjFmNTdhIiwi8J+OjiI6IjFmMzhlIiwi8J+ksyI6IjFmOTMzIiwi8J+OjyI6IjFmMzhmIiwi8J+ksCI6IjFmOTMwIiwi8J+OkCI6IjFmMzkwIiwi8J+kpiI6IjFmOTI2Iiwi8J+ktyI6IjFmOTM3Iiwi8J+OkSI6IjFmMzkxIiwi8J+OkiI6IjFmMzkyIiwi8J+OkyI6IjFmMzkzIiwi8J+OoCI6IjFmM2EwIiwi8J+OoSI6IjFmM2ExIiwi8J+OoiI6IjFmM2EyIiwi8J+OoyI6IjFmM2EzIiwi8J+OpCI6IjFmM2E0Iiwi8J+OpSI6IjFmM2E1Iiwi8J+OpiI6IjFmM2E2Iiwi8J+OpyI6IjFmM2E3Iiwi8J+ktiI6IjFmOTM2Iiwi8J+OqCI6IjFmM2E4Iiwi8J+ktSI6IjFmOTM1Iiwi8J+OqSI6IjFmM2E5Iiwi8J+OqiI6IjFmM2FhIiwi8J+ktCI6IjFmOTM0Iiwi8J+OqyI6IjFmM2FiIiwi8J+OrCI6IjFmM2FjIiwi8J+OrSI6IjFmM2FkIiwi8J+kpyI6IjFmOTI3Iiwi8J+OriI6IjFmM2FlIiwi8J+OryI6IjFmM2FmIiwi8J+OsCI6IjFmM2IwIiwi8J+OsSI6IjFmM2IxIiwi8J+OsiI6IjFmM2IyIiwi8J+OsyI6IjFmM2IzIiwi8J+OtCI6IjFmM2I0Iiwi8J+kpSI6IjFmOTI1Iiwi8J+OtSI6IjFmM2I1Iiwi8J+OtiI6IjFmM2I2Iiwi8J+OtyI6IjFmM2I3Iiwi8J+kpCI6IjFmOTI0Iiwi8J+OuCI6IjFmM2I4Iiwi8J+OuSI6IjFmM2I5Iiwi8J+OuiI6IjFmM2JhIiwi8J+koyI6IjFmOTIzIiwi8J+OuyI6IjFmM2JiIiwi8J+OvCI6IjFmM2JjIiwi8J+OvSI6IjFmM2JkIiwi8J+koiI6IjFmOTIyIiwi8J+OviI6IjFmM2JlIiwi8J+OvyI6IjFmM2JmIiwi8J+PgCI6IjFmM2MwIiwi8J+PgSI6IjFmM2MxIiwi8J+koSI6IjFmOTIxIiwi8J+PgiI6IjFmM2MyIiwi8J+PgyI6IjFmM2MzIiwi8J+PhCI6IjFmM2M0Iiwi8J+PhiI6IjFmM2M2Iiwi8J+PiCI6IjFmM2M4Iiwi8J+PiiI6IjFmM2NhIiwi8J+PoCI6IjFmM2UwIiwi8J+PoSI6IjFmM2UxIiwi8J+PoiI6IjFmM2UyIiwi8J+PoyI6IjFmM2UzIiwi8J+PpSI6IjFmM2U1Iiwi8J+PpiI6IjFmM2U2Iiwi8J+PpyI6IjFmM2U3Iiwi8J+PqCI6IjFmM2U4Iiwi8J+PqSI6IjFmM2U5Iiwi8J+PqiI6IjFmM2VhIiwi8J+PqyI6IjFmM2ViIiwi8J+PrCI6IjFmM2VjIiwi8J+koCI6IjFmOTIwIiwi8J+PrSI6IjFmM2VkIiwi8J+PriI6IjFmM2VlIiwi8J+PryI6IjFmM2VmIiwi8J+PsCI6IjFmM2YwIiwi8J+QjCI6IjFmNDBjIiwi8J+QjSI6IjFmNDBkIiwi8J+QjiI6IjFmNDBlIiwi8J+QkSI6IjFmNDExIiwi8J+QkiI6IjFmNDEyIiwi8J+QlCI6IjFmNDE0Iiwi8J+QlyI6IjFmNDE3Iiwi8J+QmCI6IjFmNDE4Iiwi8J+QmSI6IjFmNDE5Iiwi8J+QmiI6IjFmNDFhIiwi8J+QmyI6IjFmNDFiIiwi8J+QnCI6IjFmNDFjIiwi8J+QnSI6IjFmNDFkIiwi8J+QniI6IjFmNDFlIiwi8J+QnyI6IjFmNDFmIiwi8J+QoCI6IjFmNDIwIiwi8J+QoSI6IjFmNDIxIiwi8J+QoiI6IjFmNDIyIiwi8J+QoyI6IjFmNDIzIiwi8J+QpCI6IjFmNDI0Iiwi8J+QpSI6IjFmNDI1Iiwi8J+QpiI6IjFmNDI2Iiwi8J+QpyI6IjFmNDI3Iiwi8J+QqCI6IjFmNDI4Iiwi8J+QqSI6IjFmNDI5Iiwi8J+QqyI6IjFmNDJiIiwi8J+QrCI6IjFmNDJjIiwi8J+QrSI6IjFmNDJkIiwi8J+QriI6IjFmNDJlIiwi8J+QryI6IjFmNDJmIiwi8J+QsCI6IjFmNDMwIiwi8J+QsSI6IjFmNDMxIiwi8J+QsiI6IjFmNDMyIiwi8J+QsyI6IjFmNDMzIiwi8J+QtCI6IjFmNDM0Iiwi8J+QtSI6IjFmNDM1Iiwi8J+QtiI6IjFmNDM2Iiwi8J+QtyI6IjFmNDM3Iiwi8J+QuCI6IjFmNDM4Iiwi8J+QuSI6IjFmNDM5Iiwi8J+QuiI6IjFmNDNhIiwi8J+QuyI6IjFmNDNiIiwi8J+QvCI6IjFmNDNjIiwi8J+QvSI6IjFmNDNkIiwi8J+QviI6IjFmNDNlIiwi8J+RgCI6IjFmNDQwIiwi8J+RgiI6IjFmNDQyIiwi8J+RgyI6IjFmNDQzIiwi8J+RhCI6IjFmNDQ0Iiwi8J+RhSI6IjFmNDQ1Iiwi8J+RhiI6IjFmNDQ2Iiwi8J+RhyI6IjFmNDQ3Iiwi8J+RiCI6IjFmNDQ4Iiwi8J+RiSI6IjFmNDQ5Iiwi8J+RiiI6IjFmNDRhIiwi8J+RiyI6IjFmNDRiIiwi8J+RjCI6IjFmNDRjIiwi8J+RjSI6IjFmNDRkIiwi8J+RjiI6IjFmNDRlIiwi8J+RjyI6IjFmNDRmIiwi8J+RkCI6IjFmNDUwIiwi8J+RkSI6IjFmNDUxIiwi8J+RkiI6IjFmNDUyIiwi8J+RkyI6IjFmNDUzIiwi8J+RlCI6IjFmNDU0Iiwi8J+RlSI6IjFmNDU1Iiwi8J+RliI6IjFmNDU2Iiwi8J+RlyI6IjFmNDU3Iiwi8J+RmCI6IjFmNDU4Iiwi8J+RmSI6IjFmNDU5Iiwi8J+RmiI6IjFmNDVhIiwi8J+RmyI6IjFmNDViIiwi8J+RnCI6IjFmNDVjIiwi8J+RnSI6IjFmNDVkIiwi8J+RniI6IjFmNDVlIiwi8J+RnyI6IjFmNDVmIiwi8J+RoCI6IjFmNDYwIiwi8J+RoSI6IjFmNDYxIiwi8J+RoiI6IjFmNDYyIiwi8J+RoyI6IjFmNDYzIiwi8J+RpCI6IjFmNDY0Iiwi8J+RpiI6IjFmNDY2Iiwi8J+RpyI6IjFmNDY3Iiwi8J+RqCI6IjFmNDY4Iiwi8J+RqSI6IjFmNDY5Iiwi8J+RqiI6IjFmNDZhIiwi8J+RqyI6IjFmNDZiIiwi8J+RriI6IjFmNDZlIiwi8J+RryI6IjFmNDZmIiwi8J+RsCI6IjFmNDcwIiwi8J+RsSI6IjFmNDcxIiwi8J+RsiI6IjFmNDcyIiwi8J+RsyI6IjFmNDczIiwi8J+RtCI6IjFmNDc0Iiwi8J+RtSI6IjFmNDc1Iiwi8J+RtiI6IjFmNDc2Iiwi8J+RtyI6IjFmNDc3Iiwi8J+RuCI6IjFmNDc4Iiwi8J+RuSI6IjFmNDc5Iiwi8J+RuiI6IjFmNDdhIiwi8J+RuyI6IjFmNDdiIiwi8J+RvCI6IjFmNDdjIiwi8J+RvSI6IjFmNDdkIiwi8J+RviI6IjFmNDdlIiwi8J+RvyI6IjFmNDdmIiwi8J+SgCI6IjFmNDgwIiwi8J+ThyI6IjFmNGM3Iiwi8J+SgSI6IjFmNDgxIiwi8J+SgiI6IjFmNDgyIiwi8J+SgyI6IjFmNDgzIiwi8J+ShCI6IjFmNDg0Iiwi8J+ShSI6IjFmNDg1Iiwi8J+TkiI6IjFmNGQyIiwi8J+ShiI6IjFmNDg2Iiwi8J+TkyI6IjFmNGQzIiwi8J+ShyI6IjFmNDg3Iiwi8J+TlCI6IjFmNGQ0Iiwi8J+SiCI6IjFmNDg4Iiwi8J+TlSI6IjFmNGQ1Iiwi8J+SiSI6IjFmNDg5Iiwi8J+TliI6IjFmNGQ2Iiwi8J+SiiI6IjFmNDhhIiwi8J+TlyI6IjFmNGQ3Iiwi8J+SiyI6IjFmNDhiIiwi8J+TmCI6IjFmNGQ4Iiwi8J+SjCI6IjFmNDhjIiwi8J+TmSI6IjFmNGQ5Iiwi8J+SjSI6IjFmNDhkIiwi8J+TmiI6IjFmNGRhIiwi8J+SjiI6IjFmNDhlIiwi8J+TmyI6IjFmNGRiIiwi8J+SjyI6IjFmNDhmIiwi8J+TnCI6IjFmNGRjIiwi8J+SkCI6IjFmNDkwIiwi8J+TnSI6IjFmNGRkIiwi8J+SkSI6IjFmNDkxIiwi8J+TniI6IjFmNGRlIiwi8J+SkiI6IjFmNDkyIiwi8J+TnyI6IjFmNGRmIiwi8J+ToCI6IjFmNGUwIiwi8J+SkyI6IjFmNDkzIiwi8J+ToSI6IjFmNGUxIiwi8J+ToiI6IjFmNGUyIiwi8J+SlCI6IjFmNDk0Iiwi8J+ToyI6IjFmNGUzIiwi8J+TpCI6IjFmNGU0Iiwi8J+SlSI6IjFmNDk1Iiwi8J+TpSI6IjFmNGU1Iiwi8J+TpiI6IjFmNGU2Iiwi8J+SliI6IjFmNDk2Iiwi8J+TpyI6IjFmNGU3Iiwi8J+TqCI6IjFmNGU4Iiwi8J+SlyI6IjFmNDk3Iiwi8J+TqSI6IjFmNGU5Iiwi8J+TqiI6IjFmNGVhIiwi8J+SmCI6IjFmNDk4Iiwi8J+TqyI6IjFmNGViIiwi8J+TriI6IjFmNGVlIiwi8J+SmSI6IjFmNDk5Iiwi8J+TsCI6IjFmNGYwIiwi8J+TsSI6IjFmNGYxIiwi8J+SmiI6IjFmNDlhIiwi8J+TsiI6IjFmNGYyIiwi8J+TsyI6IjFmNGYzIiwi8J+SmyI6IjFmNDliIiwi8J+TtCI6IjFmNGY0Iiwi8J+TtiI6IjFmNGY2Iiwi8J+SnCI6IjFmNDljIiwi8J+TtyI6IjFmNGY3Iiwi8J+TuSI6IjFmNGY5Iiwi8J+SnSI6IjFmNDlkIiwi8J+TuiI6IjFmNGZhIiwi8J+TuyI6IjFmNGZiIiwi8J+SniI6IjFmNDllIiwi8J+TvCI6IjFmNGZjIiwi8J+UgyI6IjFmNTAzIiwi8J+SnyI6IjFmNDlmIiwi8J+UiiI6IjFmNTBhIiwi8J+UiyI6IjFmNTBiIiwi8J+SoCI6IjFmNGEwIiwi8J+UjCI6IjFmNTBjIiwi8J+UjSI6IjFmNTBkIiwi8J+SoSI6IjFmNGExIiwi8J+UjiI6IjFmNTBlIiwi8J+UjyI6IjFmNTBmIiwi8J+SoiI6IjFmNGEyIiwi8J+UkCI6IjFmNTEwIiwi8J+UkSI6IjFmNTExIiwi8J+SoyI6IjFmNGEzIiwi8J+UkiI6IjFmNTEyIiwi8J+UkyI6IjFmNTEzIiwi8J+SpCI6IjFmNGE0Iiwi8J+UlCI6IjFmNTE0Iiwi8J+UliI6IjFmNTE2Iiwi8J+SpSI6IjFmNGE1Iiwi8J+UlyI6IjFmNTE3Iiwi8J+UmCI6IjFmNTE4Iiwi8J+SpiI6IjFmNGE2Iiwi8J+UmSI6IjFmNTE5Iiwi8J+UmiI6IjFmNTFhIiwi8J+SpyI6IjFmNGE3Iiwi8J+UmyI6IjFmNTFiIiwi8J+UnCI6IjFmNTFjIiwi8J+SqCI6IjFmNGE4Iiwi8J+UnSI6IjFmNTFkIiwi8J+UniI6IjFmNTFlIiwi8J+SqSI6IjFmNGE5Iiwi8J+UnyI6IjFmNTFmIiwi8J+SqiI6IjFmNGFhIiwi8J+UoCI6IjFmNTIwIiwi8J+UoSI6IjFmNTIxIiwi8J+SqyI6IjFmNGFiIiwi8J+UoiI6IjFmNTIyIiwi8J+UoyI6IjFmNTIzIiwi8J+SrCI6IjFmNGFjIiwi8J+UpCI6IjFmNTI0Iiwi8J+UpSI6IjFmNTI1Iiwi8J+SriI6IjFmNGFlIiwi8J+UpiI6IjFmNTI2Iiwi8J+UpyI6IjFmNTI3Iiwi8J+SryI6IjFmNGFmIiwi8J+UqCI6IjFmNTI4Iiwi8J+UqSI6IjFmNTI5Iiwi8J+SsCI6IjFmNGIwIiwi8J+UqiI6IjFmNTJhIiwi8J+UqyI6IjFmNTJiIiwi8J+SsSI6IjFmNGIxIiwi8J+UriI6IjFmNTJlIiwi8J+SsiI6IjFmNGIyIiwi8J+UryI6IjFmNTJmIiwi8J+SsyI6IjFmNGIzIiwi8J+UsCI6IjFmNTMwIiwi8J+UsSI6IjFmNTMxIiwi8J+StCI6IjFmNGI0Iiwi8J+UsiI6IjFmNTMyIiwi8J+UsyI6IjFmNTMzIiwi8J+StSI6IjFmNGI1Iiwi8J+UtCI6IjFmNTM0Iiwi8J+UtSI6IjFmNTM1Iiwi8J+SuCI6IjFmNGI4Iiwi8J+UtiI6IjFmNTM2Iiwi8J+UtyI6IjFmNTM3Iiwi8J+SuSI6IjFmNGI5Iiwi8J+UuCI6IjFmNTM4Iiwi8J+UuSI6IjFmNTM5Iiwi8J+SuiI6IjFmNGJhIiwi8J+UuiI6IjFmNTNhIiwi8J+UuyI6IjFmNTNiIiwi8J+SuyI6IjFmNGJiIiwi8J+UvCI6IjFmNTNjIiwi8J+SvCI6IjFmNGJjIiwi8J+UvSI6IjFmNTNkIiwi8J+VkCI6IjFmNTUwIiwi8J+SvSI6IjFmNGJkIiwi8J+VkSI6IjFmNTUxIiwi8J+SviI6IjFmNGJlIiwi8J+VkiI6IjFmNTUyIiwi8J+SvyI6IjFmNGJmIiwi8J+VkyI6IjFmNTUzIiwi8J+TgCI6IjFmNGMwIiwi8J+VlCI6IjFmNTU0Iiwi8J+VlSI6IjFmNTU1Iiwi8J+TgSI6IjFmNGMxIiwi8J+VliI6IjFmNTU2Iiwi8J+VlyI6IjFmNTU3Iiwi8J+TgiI6IjFmNGMyIiwi8J+VmCI6IjFmNTU4Iiwi8J+VmSI6IjFmNTU5Iiwi8J+TgyI6IjFmNGMzIiwi8J+VmiI6IjFmNTVhIiwi8J+VmyI6IjFmNTViIiwi8J+ThCI6IjFmNGM0Iiwi8J+XuyI6IjFmNWZiIiwi8J+XvCI6IjFmNWZjIiwi8J+ThSI6IjFmNGM1Iiwi8J+XvSI6IjFmNWZkIiwi8J+XviI6IjFmNWZlIiwi8J+ThiI6IjFmNGM2Iiwi8J+XvyI6IjFmNWZmIiwi8J+YgSI6IjFmNjAxIiwi8J+YgiI6IjFmNjAyIiwi8J+YgyI6IjFmNjAzIiwi8J+TiCI6IjFmNGM4Iiwi8J+YhCI6IjFmNjA0Iiwi8J+YhSI6IjFmNjA1Iiwi8J+TiSI6IjFmNGM5Iiwi8J+YhiI6IjFmNjA2Iiwi8J+YiSI6IjFmNjA5Iiwi8J+TiiI6IjFmNGNhIiwi8J+YiiI6IjFmNjBhIiwi8J+YiyI6IjFmNjBiIiwi8J+TiyI6IjFmNGNiIiwi8J+YjCI6IjFmNjBjIiwi8J+YjSI6IjFmNjBkIiwi8J+TjCI6IjFmNGNjIiwi8J+YjyI6IjFmNjBmIiwi8J+YkiI6IjFmNjEyIiwi8J+TjSI6IjFmNGNkIiwi8J+YkyI6IjFmNjEzIiwi8J+YlCI6IjFmNjE0Iiwi8J+TjiI6IjFmNGNlIiwi8J+YliI6IjFmNjE2Iiwi8J+YmCI6IjFmNjE4Iiwi8J+TjyI6IjFmNGNmIiwi8J+YmiI6IjFmNjFhIiwi8J+YnCI6IjFmNjFjIiwi8J+TkCI6IjFmNGQwIiwi8J+YnSI6IjFmNjFkIiwi8J+YniI6IjFmNjFlIiwi8J+TkSI6IjFmNGQxIiwi8J+YoCI6IjFmNjIwIiwi8J+YoSI6IjFmNjIxIiwi8J+YoiI6IjFmNjIyIiwi8J+YoyI6IjFmNjIzIiwi8J+YpCI6IjFmNjI0Iiwi8J+YpSI6IjFmNjI1Iiwi8J+YqCI6IjFmNjI4Iiwi8J+YqSI6IjFmNjI5Iiwi8J+YqiI6IjFmNjJhIiwi8J+YqyI6IjFmNjJiIiwi8J+YrSI6IjFmNjJkIiwi8J+YsCI6IjFmNjMwIiwi8J+YsSI6IjFmNjMxIiwi8J+YsiI6IjFmNjMyIiwi8J+YsyI6IjFmNjMzIiwi8J+YtSI6IjFmNjM1Iiwi8J+YtyI6IjFmNjM3Iiwi8J+YuCI6IjFmNjM4Iiwi8J+YuSI6IjFmNjM5Iiwi8J+YuiI6IjFmNjNhIiwi8J+YuyI6IjFmNjNiIiwi8J+YvCI6IjFmNjNjIiwi8J+YvSI6IjFmNjNkIiwi8J+YviI6IjFmNjNlIiwi8J+YvyI6IjFmNjNmIiwi8J+ZgCI6IjFmNjQwIiwi8J+ZhSI6IjFmNjQ1Iiwi8J+ZhiI6IjFmNjQ2Iiwi8J+ZhyI6IjFmNjQ3Iiwi8J+ZiCI6IjFmNjQ4Iiwi8J+ZiSI6IjFmNjQ5Iiwi8J+ZiiI6IjFmNjRhIiwi8J+ZiyI6IjFmNjRiIiwi8J+ZjCI6IjFmNjRjIiwi8J+ZjSI6IjFmNjRkIiwi8J+ZjiI6IjFmNjRlIiwi8J+ZjyI6IjFmNjRmIiwi8J+agCI6IjFmNjgwIiwi8J+agyI6IjFmNjgzIiwi8J+ahCI6IjFmNjg0Iiwi8J+ahSI6IjFmNjg1Iiwi8J+ahyI6IjFmNjg3Iiwi8J+aiSI6IjFmNjg5Iiwi8J+ajCI6IjFmNjhjIiwi8J+ajyI6IjFmNjhmIiwi8J+akSI6IjFmNjkxIiwi8J+akiI6IjFmNjkyIiwi8J+akyI6IjFmNjkzIiwi8J+alSI6IjFmNjk1Iiwi8J+alyI6IjFmNjk3Iiwi8J+amSI6IjFmNjk5Iiwi8J+amiI6IjFmNjlhIiwi8J+aoiI6IjFmNmEyIiwi8J+apCI6IjFmNmE0Iiwi8J+apSI6IjFmNmE1Iiwi8J+apyI6IjFmNmE3Iiwi8J+aqCI6IjFmNmE4Iiwi8J+aqSI6IjFmNmE5Iiwi8J+aqiI6IjFmNmFhIiwi8J+aqyI6IjFmNmFiIiwi8J+arCI6IjFmNmFjIiwi8J+arSI6IjFmNmFkIiwi8J+asiI6IjFmNmIyIiwi8J+atiI6IjFmNmI2Iiwi8J+auSI6IjFmNmI5Iiwi8J+auiI6IjFmNmJhIiwi8J+auyI6IjFmNmJiIiwi8J+avCI6IjFmNmJjIiwi8J+avSI6IjFmNmJkIiwi8J+aviI6IjFmNmJlIiwi8J+bgCI6IjFmNmMwIiwi8J+kmCI6IjFmOTE4Iiwi8J+YgCI6IjFmNjAwIiwi8J+YhyI6IjFmNjA3Iiwi8J+YiCI6IjFmNjA4Iiwi8J+YjiI6IjFmNjBlIiwi8J+YkCI6IjFmNjEwIiwi8J+YkSI6IjFmNjExIiwi8J+YlSI6IjFmNjE1Iiwi8J+YlyI6IjFmNjE3Iiwi8J+YmSI6IjFmNjE5Iiwi8J+YmyI6IjFmNjFiIiwi8J+YnyI6IjFmNjFmIiwi8J+YpiI6IjFmNjI2Iiwi8J+YpyI6IjFmNjI3Iiwi8J+YrCI6IjFmNjJjIiwi8J+YriI6IjFmNjJlIiwi8J+YryI6IjFmNjJmIiwi8J+YtCI6IjFmNjM0Iiwi8J+YtiI6IjFmNjM2Iiwi8J+agSI6IjFmNjgxIiwi8J+agiI6IjFmNjgyIiwKIvCfmoYiOiIxZjY4NiIsIvCfmogiOiIxZjY4OCIsIvCfmooiOiIxZjY4YSIsIvCfmo0iOiIxZjY4ZCIsIvCfmo4iOiIxZjY4ZSIsIvCfmpAiOiIxZjY5MCIsIvCfmpQiOiIxZjY5NCIsIvCfmpYiOiIxZjY5NiIsIvCfmpgiOiIxZjY5OCIsIvCfmpsiOiIxZjY5YiIsIvCfmpwiOiIxZjY5YyIsIvCfmp0iOiIxZjY5ZCIsIvCfmp4iOiIxZjY5ZSIsIvCfmp8iOiIxZjY5ZiIsIvCfmqAiOiIxZjZhMCIsIvCfmqEiOiIxZjZhMSIsIvCfmqMiOiIxZjZhMyIsIvCfmqYiOiIxZjZhNiIsIvCfmq4iOiIxZjZhZSIsIvCfmq8iOiIxZjZhZiIsIvCfmrAiOiIxZjZiMCIsIvCfmrEiOiIxZjZiMSIsIvCfmrMiOiIxZjZiMyIsIvCfmrQiOiIxZjZiNCIsIvCfmrUiOiIxZjZiNSIsIvCfmrciOiIxZjZiNyIsIvCfmrgiOiIxZjZiOCIsIvCfmr8iOiIxZjZiZiIsIvCfm4EiOiIxZjZjMSIsIvCfm4IiOiIxZjZjMiIsIvCfm4MiOiIxZjZjMyIsIvCfm4QiOiIxZjZjNCIsIvCfm4UiOiIxZjZjNSIsIvCfjI0iOiIxZjMwZCIsIvCfjI4iOiIxZjMwZSIsIvCfjJAiOiIxZjMxMCIsIvCfjJIiOiIxZjMxMiIsIvCfjJYiOiIxZjMxNiIsIvCfjJciOiIxZjMxNyIsIvCfjJgiOiIxZjMxOCIsIvCfjJoiOiIxZjMxYSIsIvCfjJwiOiIxZjMxYyIsIvCfjJ0iOiIxZjMxZCIsIvCfjJ4iOiIxZjMxZSIsIvCfjLIiOiIxZjMzMiIsIvCfjLMiOiIxZjMzMyIsIvCfjYsiOiIxZjM0YiIsIvCfjZAiOiIxZjM1MCIsIvCfjbwiOiIxZjM3YyIsIvCfj4ciOiIxZjNjNyIsIvCfj4kiOiIxZjNjOSIsIvCfj6QiOiIxZjNlNCIsIvCfkIAiOiIxZjQwMCIsIvCfkIEiOiIxZjQwMSIsIvCfkIIiOiIxZjQwMiIsIvCfkIMiOiIxZjQwMyIsIvCfkIQiOiIxZjQwNCIsIvCfkIUiOiIxZjQwNSIsIvCfkIYiOiIxZjQwNiIsIvCfkIciOiIxZjQwNyIsIvCfkIgiOiIxZjQwOCIsIvCfkIkiOiIxZjQwOSIsIvCfkIoiOiIxZjQwYSIsIvCfkIsiOiIxZjQwYiIsIvCfkI8iOiIxZjQwZiIsIvCfkJAiOiIxZjQxMCIsIvCfkJMiOiIxZjQxMyIsIvCfkJUiOiIxZjQxNSIsIvCfkJYiOiIxZjQxNiIsIvCfkKoiOiIxZjQyYSIsIvCfkaUiOiIxZjQ2NSIsIvCfkawiOiIxZjQ2YyIsIvCfka0iOiIxZjQ2ZCIsIvCfkq0iOiIxZjRhZCIsIvCfkrYiOiIxZjRiNiIsIvCfkrciOiIxZjRiNyIsIvCfk6wiOiIxZjRlYyIsIvCfk60iOiIxZjRlZCIsIvCfk68iOiIxZjRlZiIsIvCfk7UiOiIxZjRmNSIsIvCflIAiOiIxZjUwMCIsIvCflIEiOiIxZjUwMSIsIvCflIIiOiIxZjUwMiIsIvCflIQiOiIxZjUwNCIsIvCflIUiOiIxZjUwNSIsIvCflIYiOiIxZjUwNiIsIvCflIciOiIxZjUwNyIsIvCflIkiOiIxZjUwOSIsIvCflJUiOiIxZjUxNSIsIvCflKwiOiIxZjUyYyIsIvCflK0iOiIxZjUyZCIsIvCflZwiOiIxZjU1YyIsIvCflZ0iOiIxZjU1ZCIsIvCflZ4iOiIxZjU1ZSIsIvCflZ8iOiIxZjU1ZiIsIvCflaAiOiIxZjU2MCIsIvCflaEiOiIxZjU2MSIsIvCflaIiOiIxZjU2MiIsIvCflaMiOiIxZjU2MyIsIvCflaQiOiIxZjU2NCIsIvCflaUiOiIxZjU2NSIsIvCflaYiOiIxZjU2NiIsIvCflaciOiIxZjU2NyIsIvCflIgiOiIxZjUwOCIsIvCfmosiOiIxZjY4YiIsIvCfj4UiOiIxZjNjNSIsIvCfj7QiOiIxZjNmNCIsIvCfk7giOiIxZjRmOCIsIvCfm4wiOiIxZjZjYyIsIvCflpUiOiIxZjU5NSIsIvCflpYiOiIxZjU5NiIsIvCfmYEiOiIxZjY0MSIsIvCfmYIiOiIxZjY0MiIsIvCfm6siOiIxZjZlYiIsIvCfm6wiOiIxZjZlYyIsIvCfj7siOiIxZjNmYiIsIvCfj7wiOiIxZjNmYyIsIvCfj70iOiIxZjNmZCIsIvCfj74iOiIxZjNmZSIsIvCfj78iOiIxZjNmZiIsIvCfmYMiOiIxZjY0MyIsIvCfpJEiOiIxZjkxMSIsIvCfpJMiOiIxZjkxMyIsIvCfpJciOiIxZjkxNyIsIvCfmYQiOiIxZjY0NCIsIvCfpJQiOiIxZjkxNCIsIvCfpJAiOiIxZjkxMCIsIvCfpJIiOiIxZjkxMiIsIvCfpJUiOiIxZjkxNSIsIvCfpJYiOiIxZjkxNiIsIvCfpoEiOiIxZjk4MSIsIvCfpoQiOiIxZjk4NCIsIvCfpoIiOiIxZjk4MiIsIvCfpoAiOiIxZjk4MCIsIvCfpoMiOiIxZjk4MyIsIvCfp4AiOiIxZjljMCIsIvCfjK0iOiIxZjMyZCIsIvCfjK4iOiIxZjMyZSIsIvCfjK8iOiIxZjMyZiIsIvCfjb8iOiIxZjM3ZiIsIvCfjb4iOiIxZjM3ZSIsIvCfj7kiOiIxZjNmOSIsIvCfj7oiOiIxZjNmYSIsIvCfm5AiOiIxZjZkMCIsIvCflYsiOiIxZjU0YiIsIvCflYwiOiIxZjU0YyIsIvCflY0iOiIxZjU0ZCIsIvCflY4iOiIxZjU0ZSIsIvCfk78iOiIxZjRmZiIsIvCfj48iOiIxZjNjZiIsIvCfj5AiOiIxZjNkMCIsIvCfj5EiOiIxZjNkMSIsIvCfj5IiOiIxZjNkMiIsIvCfj5MiOiIxZjNkMyIsIvCfj7giOiIxZjNmOCIsIvCfpYEiOiIxZjk0MSIsIvCfppAiOiIxZjk5MCIsIvCfppEiOiIxZjk5MSIsIvCfpZoiOiIxZjk1YSIsIvCfpZsiOiIxZjk1YiIsIvCfpZwiOiIxZjk1YyIsIvCfpZ0iOiIxZjk1ZCIsIvCfpZ4iOiIxZjk1ZSIsIvCfh7wiOiIxZjFmYyIsIvCfh7siOiIxZjFmYiIsIvCfh7oiOiIxZjFmYSIsIvCfh7kiOiIxZjFmOSIsIvCfh7giOiIxZjFmOCIsIvCfh7ciOiIxZjFmNyIsIvCfh7YiOiIxZjFmNiIsIvCfh7UiOiIxZjFmNSIsIvCfh7QiOiIxZjFmNCIsIvCfh7MiOiIxZjFmMyIsIvCfh7IiOiIxZjFmMiIsIvCfh7EiOiIxZjFmMSIsIvCfh7AiOiIxZjFmMCIsIvCfh68iOiIxZjFlZiIsIvCfh64iOiIxZjFlZSIsIvCfh60iOiIxZjFlZCIsIvCfh6wiOiIxZjFlYyIsIvCfh6siOiIxZjFlYiIsIvCfh6oiOiIxZjFlYSIsIvCfh6kiOiIxZjFlOSIsIvCfh6giOiIxZjFlOCIsIvCfh6ciOiIxZjFlNyIsIvCfh6YiOiIxZjFlNiIsIuKPqSI6IjIzZTkiLCLij6oiOiIyM2VhIiwi4o+rIjoiMjNlYiIsIuKPrCI6IjIzZWMiLCLij7AiOiIyM2YwIiwi4o+zIjoiMjNmMyIsIuKbjiI6IjI2Y2UiLCLinIUiOiIyNzA1Iiwi4pyKIjoiMjcwYSIsIuKciyI6IjI3MGIiLCLinKgiOiIyNzI4Iiwi4p2MIjoiMjc0YyIsIuKdjiI6IjI3NGUiLCLinZMiOiIyNzUzIiwi4p2UIjoiMjc1NCIsIuKdlSI6IjI3NTUiLCLinpUiOiIyNzk1Iiwi4p6WIjoiMjc5NiIsIuKelyI6IjI3OTciLCLinrAiOiIyN2IwIiwi4p6/IjoiMjdiZiIsIsKpIjoiMDBhOSIsIsKuIjoiMDBhZSIsIuKAvCI6IjIwM2MiLCLigYkiOiIyMDQ5Iiwi4oSiIjoiMjEyMiIsIuKEuSI6IjIxMzkiLCLihpQiOiIyMTk0Iiwi4oaVIjoiMjE5NSIsIuKGliI6IjIxOTYiLCLihpciOiIyMTk3Iiwi4oaYIjoiMjE5OCIsIuKGmSI6IjIxOTkiLCLihqkiOiIyMWE5Iiwi4oaqIjoiMjFhYSIsIuKMmiI6IjIzMWEiLCLijJsiOiIyMzFiIiwi4pOCIjoiMjRjMiIsIuKWqiI6IjI1YWEiLCLilqsiOiIyNWFiIiwi4pa2IjoiMjViNiIsIuKXgCI6IjI1YzAiLCLil7siOiIyNWZiIiwi4pe8IjoiMjVmYyIsIuKXvSI6IjI1ZmQiLCLil74iOiIyNWZlIiwi4piAIjoiMjYwMCIsIuKYgSI6IjI2MDEiLCLimI4iOiIyNjBlIiwi4piRIjoiMjYxMSIsIuKYlCI6IjI2MTQiLCLimJUiOiIyNjE1Iiwi4pidIjoiMjYxZCIsIuKYuiI6IjI2M2EiLCLimYgiOiIyNjQ4Iiwi4pmJIjoiMjY0OSIsIuKZiiI6IjI2NGEiLCLimYsiOiIyNjRiIiwi4pmMIjoiMjY0YyIsIuKZjSI6IjI2NGQiLCLimY4iOiIyNjRlIiwi4pmPIjoiMjY0ZiIsIuKZkCI6IjI2NTAiLCLimZEiOiIyNjUxIiwi4pmSIjoiMjY1MiIsIuKZkyI6IjI2NTMiLCLimaAiOiIyNjYwIiwi4pmjIjoiMjY2MyIsIuKZpSI6IjI2NjUiLCLimaYiOiIyNjY2Iiwi4pmoIjoiMjY2OCIsIuKZuyI6IjI2N2IiLCLimb8iOiIyNjdmIiwi4pqTIjoiMjY5MyIsIuKaoCI6IjI2YTAiLCLimqEiOiIyNmExIiwi4pqqIjoiMjZhYSIsIuKaqyI6IjI2YWIiLCLimr0iOiIyNmJkIiwi4pq+IjoiMjZiZSIsIuKbhCI6IjI2YzQiLCLim4UiOiIyNmM1Iiwi4puUIjoiMjZkNCIsIuKbqiI6IjI2ZWEiLCLim7IiOiIyNmYyIiwi4puzIjoiMjZmMyIsIuKbtSI6IjI2ZjUiLCLim7oiOiIyNmZhIiwi4pu9IjoiMjZmZCIsIuKcgiI6IjI3MDIiLCLinIgiOiIyNzA4Iiwi4pyJIjoiMjcwOSIsIuKcjCI6IjI3MGMiLCLinI8iOiIyNzBmIiwi4pySIjoiMjcxMiIsIuKclCI6IjI3MTQiLCLinJYiOiIyNzE2Iiwi4pyzIjoiMjczMyIsIuKctCI6IjI3MzQiLCLinYQiOiIyNzQ0Iiwi4p2HIjoiMjc0NyIsIuKdlyI6IjI3NTciLCLinaQiOiIyNzY0Iiwi4p6hIjoiMjdhMSIsIuKktCI6IjI5MzQiLCLipLUiOiIyOTM1Iiwi4qyFIjoiMmIwNSIsIuKshiI6IjJiMDYiLCLirIciOiIyYjA3Iiwi4qybIjoiMmIxYiIsIuKsnCI6IjJiMWMiLCLirZAiOiIyYjUwIiwi4q2VIjoiMmI1NSIsIuOAsCI6IjMwMzAiLCLjgL0iOiIzMDNkIiwi44qXIjoiMzI5NyIsIuOKmSI6IjMyOTkiLCLwn4CEIjoiMWYwMDQiLCLwn4W/IjoiMWYxN2YiLCLwn4iCIjoiMWYyMDIiLCLwn4iaIjoiMWYyMWEiLCLwn4ivIjoiMWYyMmYiLCLwn4i3IjoiMWYyMzciLCLwn46eIjoiMWYzOWUiLCLwn46fIjoiMWYzOWYiLCLwn4+LIjoiMWYzY2IiLCLwn4+MIjoiMWYzY2MiLCLwn4+NIjoiMWYzY2QiLCLwn4+OIjoiMWYzY2UiLCLwn46WIjoiMWYzOTYiLCLwn46XIjoiMWYzOTciLCLwn4y2IjoiMWYzMzYiLCLwn4ynIjoiMWYzMjciLCLwn4yoIjoiMWYzMjgiLCLwn4ypIjoiMWYzMjkiLCLwn4yqIjoiMWYzMmEiLCLwn4yrIjoiMWYzMmIiLCLwn4ysIjoiMWYzMmMiLCLwn5C/IjoiMWY0M2YiLCLwn5W3IjoiMWY1NzciLCLwn5W4IjoiMWY1NzgiLCLwn4yhIjoiMWYzMjEiLCLwn46ZIjoiMWYzOTkiLCLwn46aIjoiMWYzOWEiLCLwn46bIjoiMWYzOWIiLCLwn4+zIjoiMWYzZjMiLCLwn4+1IjoiMWYzZjUiLCLwn4+3IjoiMWYzZjciLCLwn5O9IjoiMWY0ZmQiLCLinJ0iOiIyNzFkIiwi8J+ViSI6IjFmNTQ5Iiwi8J+ViiI6IjFmNTRhIiwi8J+VryI6IjFmNTZmIiwi8J+VsCI6IjFmNTcwIiwi8J+VsyI6IjFmNTczIiwi8J+VtiI6IjFmNTc2Iiwi8J+VuSI6IjFmNTc5Iiwi8J+WhyI6IjFmNTg3Iiwi8J+WiiI6IjFmNThhIiwi8J+WiyI6IjFmNThiIiwi8J+WjCI6IjFmNThjIiwi8J+WjSI6IjFmNThkIiwi8J+WpSI6IjFmNWE1Iiwi8J+WqCI6IjFmNWE4Iiwi4oyoIjoiMjMyOCIsIvCflrIiOiIxZjViMiIsIvCflrwiOiIxZjViYyIsIvCfl4IiOiIxZjVjMiIsIvCfl4MiOiIxZjVjMyIsIvCfl4QiOiIxZjVjNCIsIvCfl5EiOiIxZjVkMSIsIvCfl5IiOiIxZjVkMiIsIvCfl5MiOiIxZjVkMyIsIvCfl5wiOiIxZjVkYyIsIvCfl50iOiIxZjVkZCIsIvCfl54iOiIxZjVkZSIsIvCfl6EiOiIxZjVlMSIsIvCfl6MiOiIxZjVlMyIsIvCfl6giOiIxZjVlOCIsIvCfl68iOiIxZjVlZiIsIvCfl7MiOiIxZjVmMyIsIvCfl7oiOiIxZjVmYSIsIvCfm6AiOiIxZjZlMCIsIvCfm6EiOiIxZjZlMSIsIvCfm6IiOiIxZjZlMiIsIvCfm7AiOiIxZjZmMCIsIvCfjb0iOiIxZjM3ZCIsIvCfkYEiOiIxZjQ0MSIsIvCflbQiOiIxZjU3NCIsIvCflbUiOiIxZjU3NSIsIuKcjSI6IjI3MGQiLCLwn5aQIjoiMWY1OTAiLCLwn4+UIjoiMWYzZDQiLCLwn4+VIjoiMWYzZDUiLCLwn4+WIjoiMWYzZDYiLCLwn4+XIjoiMWYzZDciLCLwn4+YIjoiMWYzZDgiLCLwn4+ZIjoiMWYzZDkiLCLwn4+aIjoiMWYzZGEiLCLwn4+bIjoiMWYzZGIiLCLwn4+cIjoiMWYzZGMiLCLwn4+dIjoiMWYzZGQiLCLwn4+eIjoiMWYzZGUiLCLwn4+fIjoiMWYzZGYiLCLwn5uLIjoiMWY2Y2IiLCLwn5uNIjoiMWY2Y2QiLCLwn5uOIjoiMWY2Y2UiLCLwn5uPIjoiMWY2Y2YiLCLwn5ujIjoiMWY2ZTMiLCLwn5ukIjoiMWY2ZTQiLCLwn5ulIjoiMWY2ZTUiLCLwn5upIjoiMWY2ZTkiLCLwn5uzIjoiMWY2ZjMiLCLij48iOiIyM2NmIiwi4o+tIjoiMjNlZCIsIuKPriI6IjIzZWUiLCLij68iOiIyM2VmIiwi4o+xIjoiMjNmMSIsIuKPsiI6IjIzZjIiLCLij7giOiIyM2Y4Iiwi4o+5IjoiMjNmOSIsIuKPuiI6IjIzZmEiLCLimIIiOiIyNjAyIiwi4piDIjoiMjYwMyIsIuKYhCI6IjI2MDQiLCLimJgiOiIyNjE4Iiwi4pigIjoiMjYyMCIsIuKYoiI6IjI2MjIiLCLimKMiOiIyNjIzIiwi4pimIjoiMjYyNiIsIuKYqiI6IjI2MmEiLCLimK4iOiIyNjJlIiwi4pivIjoiMjYyZiIsIuKYuCI6IjI2MzgiLCLimLkiOiIyNjM5Iiwi4pqSIjoiMjY5MiIsIuKalCI6IjI2OTQiLCLimpYiOiIyNjk2Iiwi4pqXIjoiMjY5NyIsIuKamSI6IjI2OTkiLCLimpsiOiIyNjliIiwi4pqcIjoiMjY5YyIsIuKasCI6IjI2YjAiLCLimrEiOiIyNmIxIiwi4puIIjoiMjZjOCIsIuKbjyI6IjI2Y2YiLCLim5EiOiIyNmQxIiwi4puTIjoiMjZkMyIsIuKbqSI6IjI2ZTkiLCLim7AiOiIyNmYwIiwi4puxIjoiMjZmMSIsIuKbtCI6IjI2ZjQiLCLim7ciOiIyNmY3Iiwi4pu4IjoiMjZmOCIsIuKbuSI6IjI2ZjkiLCLinKEiOiIyNzIxIiwi4p2jIjoiMjc2MyIsIvCfjKQiOiIxZjMyNCIsIvCfjKUiOiIxZjMyNSIsIvCfjKYiOiIxZjMyNiIsIvCflrEiOiIxZjViMSJ9LGEuaW1hZ2VQYXRoUE5HPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvZW1vamlvbmUvYXNzZXRzL3BuZy8iLGEuaW1hZ2VQYXRoU1ZHPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvZW1vamlvbmUvYXNzZXRzL3N2Zy8iLGEuaW1hZ2VQYXRoU1ZHU3ByaXRlcz0iLi8uLi9hc3NldHMvc3ByaXRlcy9lbW9qaW9uZS5zcHJpdGVzLnN2ZyIsYS5pbWFnZVR5cGU9InBuZyIsYS5pbWFnZVRpdGxlVGFnPSEwLGEuc3ByaXRlcz0hMSxhLnVuaWNvZGVBbHQ9ITAsYS5hc2NpaT0hMSxhLmNhY2hlQnVzdFBhcmFtPSI/dj0yLjIuNyIsYS5yZWdTaG9ydE5hbWVzPW5ldyBSZWdFeHAoIjxvYmplY3RbXj5dKj4uKj88L29iamVjdD58PHNwYW5bXj5dKj4uKj88L3NwYW4+fDwoPzpvYmplY3R8ZW1iZWR8c3ZnfGltZ3xkaXZ8c3BhbnxwfGEpW14+XSo+fCgiK2Euc2hvcnRuYW1lcysiKSIsImdpIiksYS5yZWdBc2NpaT1uZXcgUmVnRXhwKCI8b2JqZWN0W14+XSo+Lio/PC9vYmplY3Q+fDxzcGFuW14+XSo+Lio/PC9zcGFuPnw8KD86b2JqZWN0fGVtYmVkfHN2Z3xpbWd8ZGl2fHNwYW58cHxhKVtePl0qPnwoKFxcc3xeKSIrYS5hc2NpaVJlZ2V4cCsiKD89XFxzfCR8WyEsLj9dKSkiLCJnIiksYS5yZWdVbmljb2RlPW5ldyBSZWdFeHAoIjxvYmplY3RbXj5dKj4uKj88L29iamVjdD58PHNwYW5bXj5dKj4uKj88L3NwYW4+fDwoPzpvYmplY3R8ZW1iZWR8c3ZnfGltZ3xkaXZ8c3BhbnxwfGEpW14+XSo+fCgiK2EudW5pY29kZVJlZ2V4cCsiKSIsImdpIiksYS50b0ltYWdlPWZ1bmN0aW9uKGIpe3JldHVybiBiPWEudW5pY29kZVRvSW1hZ2UoYiksYj1hLnNob3J0bmFtZVRvSW1hZ2UoYil9LGEudW5pZnlVbmljb2RlPWZ1bmN0aW9uKGIpe3JldHVybiBiPWEudG9TaG9ydChiKSxiPWEuc2hvcnRuYW1lVG9Vbmljb2RlKGIpfSxhLnNob3J0bmFtZVRvQXNjaWk9ZnVuY3Rpb24oYil7dmFyIGMsZD1hLm9iamVjdEZsaXAoYS5hc2NpaUxpc3QpO3JldHVybiBiPWIucmVwbGFjZShhLnJlZ1Nob3J0TmFtZXMsZnVuY3Rpb24oYil7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBiJiYiIiE9PWImJmIgaW4gYS5lbW9qaW9uZUxpc3Q/KGM9YS5lbW9qaW9uZUxpc3RbYl0udW5pY29kZVthLmVtb2ppb25lTGlzdFtiXS51bmljb2RlLmxlbmd0aC0xXSwidW5kZWZpbmVkIiE9dHlwZW9mIGRbY10/ZFtjXTpiKTpifSl9LGEuc2hvcnRuYW1lVG9Vbmljb2RlPWZ1bmN0aW9uKGIpe3ZhciBjLGQsZTtyZXR1cm4gYj1iLnJlcGxhY2UoYS5yZWdTaG9ydE5hbWVzLGZ1bmN0aW9uKGIpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgYiYmIiIhPT1iJiZiIGluIGEuZW1vamlvbmVMaXN0PyhjPWEuZW1vamlvbmVMaXN0W2JdLnVuaWNvZGVbMF0udG9VcHBlckNhc2UoKSxkPWEuZW1vamlvbmVMaXN0W2JdLmZuYW1lLGU9YS5lbW9qaW9uZUxpc3RbYl0udWMsYS5jb252ZXJ0KGUpKTpifSksYS5hc2NpaSYmKGI9Yi5yZXBsYWNlKGEucmVnQXNjaWksZnVuY3Rpb24oYixkLGUsZil7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBmJiYiIiE9PWYmJmEudW5lc2NhcGVIVE1MKGYpaW4gYS5hc2NpaUxpc3Q/KGY9YS51bmVzY2FwZUhUTUwoZiksYz1hLmFzY2lpTGlzdFtmXS50b1VwcGVyQ2FzZSgpLGUrYS5jb252ZXJ0KGMpKTpifSkpLGJ9LGEuc2hvcnRuYW1lVG9JbWFnZT1mdW5jdGlvbihiKXt2YXIgYyxkLGUsZjtyZXR1cm4gYj1iLnJlcGxhY2UoYS5yZWdTaG9ydE5hbWVzLGZ1bmN0aW9uKGIpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgYiYmIiIhPT1iJiZiIGluIGEuZW1vamlvbmVMaXN0PyhkPWEuZW1vamlvbmVMaXN0W2JdLnVuaWNvZGVbYS5lbW9qaW9uZUxpc3RbYl0udW5pY29kZS5sZW5ndGgtMV0sZj1hLmltYWdlVGl0bGVUYWc/J3RpdGxlPSInK2IrJyInOiIiLGU9YS51bmljb2RlQWx0P2EuY29udmVydChkLnRvVXBwZXJDYXNlKCkpOmIsYz0icG5nIj09PWEuaW1hZ2VUeXBlP2Euc3ByaXRlcz8nPHNwYW4gY2xhc3M9ImVtb2ppb25lIGVtb2ppb25lLScrZCsnIiAnK2YrIj4iK2UrIjwvc3Bhbj4iOic8aW1nIGNsYXNzPSJlbW9qaW9uZSIgYWx0PSInK2UrJyIgJytmKycgc3JjPSInK2EuaW1hZ2VQYXRoUE5HK2QrIi5wbmciK2EuY2FjaGVCdXN0UGFyYW0rJyIvPic6YS5zcHJpdGVzPyc8c3ZnIGNsYXNzPSJlbW9qaW9uZSI+PGRlc2NyaXB0aW9uPicrZSsnPC9kZXNjcmlwdGlvbj48dXNlIHhsaW5rOmhyZWY9IicrYS5pbWFnZVBhdGhTVkdTcHJpdGVzKyIjZW1vamktIitkKyciPjwvdXNlPjwvc3ZnPic6JzxvYmplY3QgY2xhc3M9ImVtb2ppb25lIiBkYXRhPSInK2EuaW1hZ2VQYXRoU1ZHK2QrIi5zdmciK2EuY2FjaGVCdXN0UGFyYW0rJyIgdHlwZT0iaW1hZ2Uvc3ZnK3htbCIgc3RhbmRieT0iJytlKyciPicrZSsiPC9vYmplY3Q+Iik6Yn0pLGEuYXNjaWkmJihiPWIucmVwbGFjZShhLnJlZ0FzY2lpLGZ1bmN0aW9uKGIsZyxoLGkpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgaSYmIiIhPT1pJiZhLnVuZXNjYXBlSFRNTChpKWluIGEuYXNjaWlMaXN0PyhpPWEudW5lc2NhcGVIVE1MKGkpLGQ9YS5hc2NpaUxpc3RbaV0sZj1hLmltYWdlVGl0bGVUYWc/J3RpdGxlPSInK2EuZXNjYXBlSFRNTChpKSsnIic6IiIsZT1hLnVuaWNvZGVBbHQ/YS5jb252ZXJ0KGQudG9VcHBlckNhc2UoKSk6YS5lc2NhcGVIVE1MKGkpLGM9InBuZyI9PT1hLmltYWdlVHlwZT9hLnNwcml0ZXM/aCsnPHNwYW4gY2xhc3M9ImVtb2ppb25lIGVtb2ppb25lLScrZCsnIiAgJytmKyI+IitlKyI8L3NwYW4+IjpoKyc8aW1nIGNsYXNzPSJlbW9qaW9uZSIgYWx0PSInK2UrJyIgJytmKycgc3JjPSInK2EuaW1hZ2VQYXRoUE5HK2QrIi5wbmciK2EuY2FjaGVCdXN0UGFyYW0rJyIvPic6YS5zcHJpdGVzPyc8c3ZnIGNsYXNzPSJlbW9qaW9uZSI+PGRlc2NyaXB0aW9uPicrZSsnPC9kZXNjcmlwdGlvbj48dXNlIHhsaW5rOmhyZWY9IicrYS5pbWFnZVBhdGhTVkdTcHJpdGVzKyIjZW1vamktIitkKyciPjwvdXNlPjwvc3ZnPic6aCsnPG9iamVjdCBjbGFzcz0iZW1vamlvbmUiIGRhdGE9IicrYS5pbWFnZVBhdGhTVkcrZCsiLnN2ZyIrYS5jYWNoZUJ1c3RQYXJhbSsnIiB0eXBlPSJpbWFnZS9zdmcreG1sIiBzdGFuZGJ5PSInK2UrJyI+JytlKyI8L29iamVjdD4iKTpifSkpLGJ9LGEudW5pY29kZVRvSW1hZ2U9ZnVuY3Rpb24oYil7dmFyIGMsZCxlLGYsZyxoLGk9YS5tYXBVbmljb2RlVG9TaG9ydCgpO3JldHVybiBiPWIucmVwbGFjZShhLnJlZ1VuaWNvZGUsZnVuY3Rpb24oYil7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBiJiYiIiE9PWImJmIgaW4gYS5qc0VzY2FwZU1hcD8oZD1hLmpzRXNjYXBlTWFwW2JdLGU9aVtkXSxmPWEuZW1vamlvbmVMaXN0W2VdLmZuYW1lLGc9YS51bmljb2RlQWx0P2EuY29udmVydChkLnRvVXBwZXJDYXNlKCkpOmUsaD1hLmltYWdlVGl0bGVUYWc/J3RpdGxlPSInK2UrJyInOiIiLGM9InBuZyI9PT1hLmltYWdlVHlwZT9hLnNwcml0ZXM/JzxzcGFuIGNsYXNzPSJlbW9qaW9uZSBlbW9qaW9uZS0nK2QrJyIgJytoKyI+IitnKyI8L3NwYW4+IjonPGltZyBjbGFzcz0iZW1vamlvbmUiIGFsdD0iJytnKyciICcraCsnIHNyYz0iJythLmltYWdlUGF0aFBORytmKyIucG5nIithLmNhY2hlQnVzdFBhcmFtKyciLz4nOmEuc3ByaXRlcz8nPHN2ZyBjbGFzcz0iZW1vamlvbmUiPjxkZXNjcmlwdGlvbj4nK2crJzwvZGVzY3JpcHRpb24+PHVzZSB4bGluazpocmVmPSInK2EuaW1hZ2VQYXRoU1ZHU3ByaXRlcysiI2Vtb2ppLSIrZCsnIj48L3VzZT48L3N2Zz4nOic8aW1nIGNsYXNzPSJlbW9qaW9uZSIgYWx0PSInK2crJyIgJytoKycgc3JjPSInK2EuaW1hZ2VQYXRoU1ZHK2YrIi5zdmciK2EuY2FjaGVCdXN0UGFyYW0rJyIvPicpOmJ9KX0sYS50b1Nob3J0PWZ1bmN0aW9uKGIpe3ZhciBjPWEuZ2V0VW5pY29kZVJlcGxhY2VtZW50UmVnRXgoKSxkPWEubWFwVW5pY29kZUNoYXJhY3RlcnNUb1Nob3J0KCk7cmV0dXJuIGEucmVwbGFjZUFsbChiLGMsZCl9LGEuY29udmVydD1mdW5jdGlvbihhKXtpZihhLmluZGV4T2YoIi0iKT4tMSl7Zm9yKHZhciBiPVtdLGM9YS5zcGxpdCgiLSIpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9cGFyc2VJbnQoY1tkXSwxNik7aWYoZT49NjU1MzYmJjExMTQxMTE+PWUpe3ZhciBmPU1hdGguZmxvb3IoKGUtNjU1MzYpLzEwMjQpKzU1Mjk2LGc9KGUtNjU1MzYpJTEwMjQrNTYzMjA7ZT1TdHJpbmcuZnJvbUNoYXJDb2RlKGYpK1N0cmluZy5mcm9tQ2hhckNvZGUoZyl9ZWxzZSBlPVN0cmluZy5mcm9tQ2hhckNvZGUoZSk7Yi5wdXNoKGUpfXJldHVybiBiLmpvaW4oIiIpfXZhciBjPXBhcnNlSW50KGEsMTYpO2lmKGM+PTY1NTM2JiYxMTE0MTExPj1jKXt2YXIgZj1NYXRoLmZsb29yKChjLTY1NTM2KS8xMDI0KSs1NTI5NixnPShjLTY1NTM2KSUxMDI0KzU2MzIwO3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGYpK1N0cmluZy5mcm9tQ2hhckNvZGUoZyl9cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoYyl9LGEuZXNjYXBlSFRNTD1mdW5jdGlvbihhKXt2YXIgYj17IiYiOiImYW1wOyIsIjwiOiImbHQ7IiwiPiI6IiZndDsiLCciJzoiJnF1b3Q7IiwiJyI6IiYjMDM5OyJ9O3JldHVybiBhLnJlcGxhY2UoL1smPD4iJ10vZyxmdW5jdGlvbihhKXtyZXR1cm4gYlthXX0pfSxhLnVuZXNjYXBlSFRNTD1mdW5jdGlvbihhKXt2YXIgYj17IiZhbXA7IjoiJiIsIiYjMzg7IjoiJiIsIiYjeDI2OyI6IiYiLCImbHQ7IjoiPCIsIiYjNjA7IjoiPCIsIiYjeDNDOyI6IjwiLCImZ3Q7IjoiPiIsIiYjNjI7IjoiPiIsIiYjeDNFOyI6Ij4iLCImcXVvdDsiOiciJywiJiMzNDsiOiciJywiJiN4MjI7IjonIicsIiZhcG9zOyI6IiciLCImIzM5OyI6IiciLCImI3gyNzsiOiInIn07cmV0dXJuIGEucmVwbGFjZSgvJig/OmFtcHwjMzh8I3gyNnxsdHwjNjB8I3gzQ3xndHwjNjJ8I3gzRXxhcG9zfCMzOXwjeDI3fHF1b3R8IzM0fCN4MjIpOy9naSxmdW5jdGlvbihhKXtyZXR1cm4gYlthXX0pfSxhLm1hcEVtb2ppb25lTGlzdD1mdW5jdGlvbihiKXtmb3IodmFyIGMgaW4gYS5lbW9qaW9uZUxpc3QpaWYoYS5lbW9qaW9uZUxpc3QuaGFzT3duUHJvcGVydHkoYykpZm9yKHZhciBkPTAsZT1hLmVtb2ppb25lTGlzdFtjXS51bmljb2RlLmxlbmd0aDtlPmQ7ZCsrKXt2YXIgZj1hLmVtb2ppb25lTGlzdFtjXS51bmljb2RlW2RdO2IoZixjKX19LGEubWFwVW5pY29kZVRvU2hvcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gYS5tZW1NYXBTaG9ydFRvVW5pY29kZXx8KGEubWVtTWFwU2hvcnRUb1VuaWNvZGU9e30sYS5tYXBFbW9qaW9uZUxpc3QoZnVuY3Rpb24oYixjKXthLm1lbU1hcFNob3J0VG9Vbmljb2RlW2JdPWN9KSksYS5tZW1NYXBTaG9ydFRvVW5pY29kZX0sYS5tZW1vaXplUmVwbGFjZW1lbnQ9ZnVuY3Rpb24oKXtpZighYS51bmljb2RlUmVwbGFjZW1lbnRSZWdFeHx8IWEubWVtTWFwU2hvcnRUb1VuaWNvZGVDaGFyYWN0ZXJzKXt2YXIgYj1bXTthLm1lbU1hcFNob3J0VG9Vbmljb2RlQ2hhcmFjdGVycz17fSxhLm1hcEVtb2ppb25lTGlzdChmdW5jdGlvbihjLGQpe3ZhciBlPWEuY29udmVydChjKTthLmVtb2ppb25lTGlzdFtkXS5pc0Nhbm9uaWNhbCYmKGEubWVtTWFwU2hvcnRUb1VuaWNvZGVDaGFyYWN0ZXJzW2VdPWQpLGIucHVzaChlKX0pLGEudW5pY29kZVJlcGxhY2VtZW50UmVnRXg9Yi5qb2luKCJ8Iil9fSxhLm1hcFVuaWNvZGVDaGFyYWN0ZXJzVG9TaG9ydD1mdW5jdGlvbigpe3JldHVybiBhLm1lbW9pemVSZXBsYWNlbWVudCgpLGEubWVtTWFwU2hvcnRUb1VuaWNvZGVDaGFyYWN0ZXJzfSxhLmdldFVuaWNvZGVSZXBsYWNlbWVudFJlZ0V4PWZ1bmN0aW9uKCl7cmV0dXJuIGEubWVtb2l6ZVJlcGxhY2VtZW50KCksYS51bmljb2RlUmVwbGFjZW1lbnRSZWdFeH0sYS5vYmplY3RGbGlwPWZ1bmN0aW9uKGEpe3ZhciBiLGM9e307Zm9yKGIgaW4gYSlhLmhhc093blByb3BlcnR5KGIpJiYoY1thW2JdXT1iKTtyZXR1cm4gY30sYS5lc2NhcGVSZWdFeHA9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSgvWy1bXF17fSgpKis/Liw7OiZcXF4kI1xzXS9nLCJcXCQmIil9LGEucmVwbGFjZUFsbD1mdW5jdGlvbihiLGMsZCl7dmFyIGU9YS5lc2NhcGVSZWdFeHAoYyksZj1uZXcgUmVnRXhwKCI8b2JqZWN0W14+XSo+Lio/PC9vYmplY3Q+fDxzcGFuW14+XSo+Lio/PC9zcGFuPnw8KD86b2JqZWN0fGVtYmVkfHN2Z3xpbWd8ZGl2fHNwYW58cHxhKVtePl0qPnwoIitlKyIpIiwiZ2kiKSxnPWZ1bmN0aW9uKGEsYil7cmV0dXJuInVuZGVmaW5lZCI9PXR5cGVvZiBifHwiIj09PWI/YTpkW2JdfTtyZXR1cm4gYi5yZXBsYWNlKGYsZyl9fSh0aGlzLmVtb2ppb25lPXRoaXMuZW1vamlvbmV8fHt9KSwib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmKG1vZHVsZS5leHBvcnRzPXRoaXMuZW1vamlvbmUpOw=="}},"time_used":47,"timings":{"blocked":0,"dns":2,"connect":9,"send":0,"wait":9,"receive":8,"ssl":19},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/custom.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.634Z","timestamp":1785143153634,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/custom.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"5032-67b374e4-e66e0767bc9f36cf;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 3789\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":20530,"size_decoded":4229,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"14d699b353eedef1e6e516f314bff99e","sha1":"1a31bb8b36abb368528018a34d2867ff67d4fe87","sha256":"e11bffdc4bc43ff1a50239caf6f7ca3ab0880313050c83668134fd16c4b1e020","sha512":"e0c3a46f74c4928cb4529afcbdcb4b711f54bebfe9aa9b5939d00ebb814177a9cc0cf6b243da18cb12ba328ed3422be16646292323574b31bb7cc9aa634ab7fd","ssdeep":"192:HO6tltJtnbvuJC4v5E5SAUxolTEcGTAA+6Wu2tzmNw55Y11M617QwWldu7jdocv:HODvGjXY1cwWl8Xv","tlshash":"3e9256a4ea4911062237ef34bbf29665bb385062df0607b9bfe0209c57c85bd4617ecd","first_seen":"2025-12-19T04:10:19.019087Z","last_seen":"2026-07-30T06:02:32.585122Z","times_seen":12,"resource_available":false,"data":"LmhlYWRlci10b3Agew0KICBwYWRkaW5nLXRvcDogMTBweDsNCiAgcGFkZGluZy1ib3R0b206IDE1cHg7DQp9DQoubGFuZ1NlbCB7DQogIGhlaWdodDogMzBweDsNCiAgcGFkZGluZzogM3B4IDE1cHg7DQogIGZvbnQtc2l6ZTogMTRweDsNCn0NCi5oZWFkZXItdG9wLXJpZ2h0IC5oZWFkZXItYWN0aW9uIGEgew0KICB3aWR0aDogODBweDsNCiAgcGFkZGluZzogNnB4IDEwcHg7DQogIGZvbnQtc2l6ZTogMTRweDsNCn0NCi5oZWFkZXItdG9wLXJpZ2h0IC5oZWFkZXItYWN0aW9uIGEgKyBhIHsNCiAgbWFyZ2luLWxlZnQ6IDIwcHg7DQp9DQoud29yay1pdGVtIHsNCiAgYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksDQogICAgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Ow0KICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgYm9yZGVyLXJhZGl1czogMTBweDsNCiAgcGFkZGluZzogMjBweDsNCn0NCi53b3JrLWl0ZW0gLndvcmstaWNvbiB7DQogIGZvbnQtc2l6ZTogNTBweDsNCiAgbGluZS1oZWlnaHQ6IDFlbTsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KfQ0KLndvcmstaXRlbSAud29yay1pY29uOjpiZWZvcmUgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIGNvbnRlbnQ6ICIiOw0KICB3aWR0aDogMTAwcHg7DQogIGhlaWdodDogMTAwcHg7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICBib3JkZXItcmFkaXVzOiA1MCU7DQogIGFuaW1hdGlvbjogcm90YXRlIDE1cyBsaW5lYXIgaW5maW5pdGU7DQp9DQoud29yay1pdGVtIC53b3JrLWljb24gaSB7DQogIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICB3aWR0aDogMTAwcHg7DQogIGhlaWdodDogMTAwcHg7DQogIGxpbmUtaGVpZ2h0OiAxMDBweDsNCiAgYm9yZGVyLXJhZGl1czogNTAlOw0KfQ0KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgew0KICAud29yay1pdGVtIC53b3JrLWljb24gew0KICAgIGZvbnQtc2l6ZTogNDBweDsNCiAgfQ0KICAud29yay1pdGVtIC53b3JrLWljb246OmJlZm9yZSB7DQogICAgd2lkdGg6IDgwcHg7DQogICAgaGVpZ2h0OiA4MHB4Ow0KICB9DQogIC53b3JrLWl0ZW0gLndvcmstaWNvbiBpIHsNCiAgICB3aWR0aDogODBweDsNCiAgICBoZWlnaHQ6IDgwcHg7DQogICAgbGluZS1oZWlnaHQ6IDgwcHg7DQogIH0NCn0NCi53b3JrLWl0ZW0gLndvcmstY29udGVudCB7DQogIG1hcmdpbi10b3A6IDIwcHg7DQp9DQoNCkBrZXlmcmFtZXMgcm90YXRlIHsNCiAgMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7DQogICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICB9DQogIDEwMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICB9DQp9DQpALW1vei1rZXlmcmFtZXMgcm90YXRlIHsNCiAgMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7DQogICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICB9DQogIDEwMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICB9DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlIHsNCiAgMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7DQogICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICB9DQogIDEwMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsNCiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICB9DQp9DQouY3VzdG9tLWlucHV0LWdyb3VwIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogIGJvcmRlcjogbm9uZTsNCiAgcGFkZGluZzogMDsNCn0NCi5jb3VudHJ5LXNlbGVjdCB7DQogIGhlaWdodDogNjBweDsNCn0NCi5pbm5lci1oZXJvLXNlY3Rpb24gew0KICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI2YxZmYwMDsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBvdmVyZmxvdzogaGlkZGVuOw0KfQ0KLmlubmVyLWhlcm8tY29udGVudCB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgei1pbmRleDogOTsNCn0NCi5pbm5lci1oZXJvLWNvbnRlbnQgLnBhZ2VfX2JyZWFkY3VtcyBhIHsNCiAgY29sb3I6ICNmMWZmMDA7DQp9DQojcGFydGljbGVzIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICBsZWZ0OiAwOw0KICB0b3A6IDA7DQogIHdpZHRoOiAxMDAlOw0KICBoZWlnaHQ6IDEwMCU7DQogIHotaW5kZXg6IDE7DQp9DQouaGVhZGVyLXNlY3Rpb24uaGVhZGVyLWZpeGVkIHsNCiAgcG9zaXRpb246IGZpeGVkOw0KICB0b3A6IDA7DQogIGxlZnQ6IDA7DQogIHdpZHRoOiAxMDAlOw0KICB6LWluZGV4OiA5OTsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzExMTkzMzsNCiAgYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksDQogICAgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KTsNCn0NCi5oZWFkZXItc2VjdGlvbi5oZWFkZXItZml4ZWQgLmhlYWRlci10b3Agew0KICBkaXNwbGF5OiBub25lOw0KfQ0KQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgew0KICAuaGVhZGVyLXNlY3Rpb24uaGVhZGVyLWZpeGVkIC5oZWFkZXItYm90dG9tIHsNCiAgICBwYWRkaW5nOiAxMHB4IDA7DQogIH0NCn0NCg0KKjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sgew0KICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjMpOw0KICBib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgMC4zKTsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsNCn0NCio6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgd2lkdGg6IDNweDsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZjdlNDsNCn0NCio6Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7DQogIGJhY2tncm91bmQtY29sb3I6ICNmMWZmMDA7DQp9DQoqOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7DQogIGJhY2tncm91bmQtY29sb3I6ICNmMWZmMDA7DQp9DQpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsNCiAgLm5hdmJhci1jb2xsYXBzZSB7DQogICAgcGFkZGluZzogMCAxMHB4Ow0KICB9DQp9DQoNCi5oZWFkZXItc2VjdGlvbiB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgdG9wOiAwOw0KICBsZWZ0OiAwOw0KICB3aWR0aDogMTAwJTsNCiAgei1pbmRleDogOTk5Ow0KfQ0KLmlubmVyLWhlcm8tY29udGVudCB7DQogIHBhZGRpbmctdG9wOiAyMDBweDsNCiAgcGFkZGluZy1ib3R0b206IDYwcHg7DQp9DQpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7DQogIC5pbm5lci1oZXJvLWNvbnRlbnQgew0KICAgIHBhZGRpbmctdG9wOiAxODBweDsNCiAgfQ0KfQ0KQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7DQogIC5pbm5lci1oZXJvLWNvbnRlbnQgew0KICAgIHBhZGRpbmctdG9wOiAxMzBweDsNCiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDsNCiAgfQ0KfQ0KLyogdGFibGUgY3NzIHN0YXJ0ICovDQoudGFibGUgew0KICBtYXJnaW4tYm90dG9tOiAwOw0KfQ0KDQoudGFibGUgdGggew0KICBmb250LXNpemU6IDAuNzVyZW07DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KLnRhYmxlIHRkIHsNCiAgZm9udC1zaXplOiAwLjg3NXJlbTsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQoudGFibGUgdGQgc3BhbiwNCi50YWJsZSB0ZCBwLA0KLnRhYmxlIHRkIGxpIHsNCiAgZm9udC1zaXplOiAwLjg3NXJlbTsNCn0NCg0KdGFibGUgdGg6bGFzdC1jaGlsZCB7DQogIHRleHQtYWxpZ246IHJpZ2h0Ow0KfQ0KDQp0YWJsZSB0aDpmaXJzdC1jaGlsZCB7DQogIHRleHQtYWxpZ246IGxlZnQ7DQp9DQoNCnRhYmxlIHRkOmxhc3QtY2hpbGQgew0KICB0ZXh0LWFsaWduOiByaWdodDsNCn0NCg0KdGFibGUgdGQ6Zmlyc3QtY2hpbGQgew0KICB0ZXh0LWFsaWduOiBsZWZ0Ow0KfQ0KDQoudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTUsIDExNSwgMTE1LCAwLjA1KTsNCn0NCg0KW2RhdGEtbGFiZWxdIHsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KfQ0KDQpbZGF0YS1sYWJlbF06OmJlZm9yZSB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTsNCiAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgdG9wOiAwOw0KICBsZWZ0OiAwOw0KICBwYWRkaW5nOiAxM3B4IDE1cHg7DQogIGRpc3BsYXk6IG5vbmU7DQp9DQoNCi5uZXUtLXRhYmxlIHRoZWFkIHsNCiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50Ow0KfQ0KLm5ldS0tdGFibGUgdGhlYWQgdGggew0KICBjb2xvcjogI2ZmZjsNCn0NCg0KLm5ldS0tdGFibGUgdGJvZHkgew0KICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7DQp9DQoubmV1LS10YWJsZSB0Ym9keSB0ciB0ZCB7DQogIHBhZGRpbmc6IDI1cHggMTVweDsNCiAgYm9yZGVyLXRvcDogMC41cHggc29saWQgIzRiNGI0ZThjOw0KICBjb2xvcjogI2ZmZjsNCn0NCi5uZXUtLXRhYmxlIHRib2R5IHRyIHsNCiAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmMTU7DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgew0KICAubmV1LS10YWJsZSB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7DQogICAgcGFkZGluZzogMjVweCAxNXB4Ow0KICAgIGJvcmRlci10b3A6IDAuNXB4IHNvbGlkICM0YjRiNGU4YzsNCiAgICAvKiBvcGFjaXR5OiAwLjU7ICovDQogIH0NCiAgLnRhYmxlLXJlc3BvbnNpdmUtLXNtIHRoZWFkIHsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7DQogIH0NCg0KICAudGFibGUtcmVzcG9uc2l2ZS0tc20gdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkgew0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC4wNSk7DQogIH0NCg0KICAudGFibGUtcmVzcG9uc2l2ZS0tc20gdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTU3Ow0KICB9DQogIC50YWJsZS1yZXNwb25zaXZlLS1zbS5uZXUtLXRhYmxlIHRyIHRoLA0KICAudGFibGUtcmVzcG9uc2l2ZS0tc20ubmV1LS10YWJsZSB0ciB0ZCwNCiAgLnRhYmxlLXJlc3BvbnNpdmUtLXNtIHRyIHRoLA0KICAudGFibGUtcmVzcG9uc2l2ZS0tc20gdHIgdGQgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHBhZGRpbmctbGVmdDogNDUlICFpbXBvcnRhbnQ7DQogICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsNCiAgfQ0KDQogIC50YWJsZS1yZXNwb25zaXZlLS1zbSBbZGF0YS1sYWJlbF06OmJlZm9yZSB7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgIGhlaWdodDogMTAwJTsNCiAgfQ0KfQ0KDQpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsNCiAgLnRhYmxlLXJlc3BvbnNpdmUtLXhzIHRoZWFkIHsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7DQogIH0NCg0KICAudGFibGUtcmVzcG9uc2l2ZS0teHMgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkgew0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTE1LCAxMTUsIDExNSwgMC4wNSk7DQogIH0NCg0KICAudGFibGUtcmVzcG9uc2l2ZS0teHMgdHIgdGgsDQogIC50YWJsZS1yZXNwb25zaXZlLS14cyB0ciB0ZCwNCiAgLnRhYmxlLXJlc3BvbnNpdmUtLXhzLm5ldS0tdGFibGUgdHIgdGgsDQogIC50YWJsZS1yZXNwb25zaXZlLS14cy5uZXUtLXRhYmxlIHRyIHRkIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBwYWRkaW5nLWxlZnQ6IDQ1JTsNCiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50Ow0KICB9DQoNCiAgLnRhYmxlLXJlc3BvbnNpdmUtLXhzIFtkYXRhLWxhYmVsXTo6YmVmb3JlIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgfQ0KfQ0KDQpAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHsNCiAgLnRpbWVyIHsNCiAgICBmb250LXNpemU6IDE3cHg7DQogIH0NCiAgLmJhbCB7DQogICAgZm9udC1zaXplOiAyM3B4Ow0KICB9DQp9DQoNCi5mb290ZXItd2lkZ2V0IC5wcml2YWN5LWxpbmtzIHsNCiAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogIGRpc3BsYXk6IGZsZXg7DQogIC1tcy1mbGV4LXdyYXA6IHdyYXA7DQogIGZsZXgtd3JhcDogd3JhcDsNCiAgbWFyZ2luLWxlZnQ6IC0xMHB4Ow0KICBtYXJnaW4tcmlnaHQ6IC0xMHB4Ow0KICBtYXJnaW4tdG9wOiAzMHB4Ow0KfQ0KDQoucHJpdmFjeS1saW5rcyB7DQogIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICBkaXNwbGF5OiBmbGV4Ow0KICAtbXMtZmxleC13cmFwOiB3cmFwOw0KICBmbGV4LXdyYXA6IHdyYXA7DQogIG1hcmdpbjogLTVweDsNCiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQp9DQoucHJpdmFjeS1saW5rcyBsaSB7DQogIG1hcmdpbjogMHB4IDEwcHg7DQp9DQoNCi5mb290ZXItc2VjdGlvbiAuY29weS1yaWdodC10ZXh0IHsNCiAgbWFyZ2luLXRvcDogMHB4Ow0KfQ0KLmZvb3Rlci1ib3R0b20gew0KICBwYWRkaW5nOiAxNnB4IDBweDsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7DQogIC5uYXZiYXItdG9nZ2xlciB7DQogICAgbWFyZ2luLXJpZ2h0OiAwcHg7DQogIH0NCiAgLmhlYWRlci1zZWN0aW9uIHsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgdG9wOiAwOw0KICAgIGxlZnQ6IDA7DQogICAgd2lkdGg6IDEwMCU7DQogICAgei1pbmRleDogOTk5Ow0KICAgIGJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLA0KICAgICAgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KTsNCiAgfQ0KfQ0KDQoubGlzdC1ncm91cC1pdGVtIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQp9DQouYnRuLWFjdGl2ZTo6YmVmb3JlIHsNCiAgb3BhY2l0eTogMDsNCn0NCi5idG4tYWN0aXZlOjphZnRlciB7DQogIG9wYWNpdHk6IDE7DQp9DQoNCg0KDQovKiBDb3B5IEFuaW1hdGlvbiAqLw0KDQouY29weUlucHV0IHsNCiAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICBsaW5lLWhlaWdodDogNTBweDsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB0b3A6IDA7DQogIHJpZ2h0OiAwOw0KICB3aWR0aDogNDBweDsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBmb250LXNpemU6IDE0cHg7DQogIGN1cnNvcjogcG9pbnRlcjsNCiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsNCiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7DQogIHRyYW5zaXRpb246IGFsbCAwLjNzOw0KfQ0KDQouY29waWVkOjphZnRlciB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgdG9wOiA4cHg7DQogIHJpZ2h0OiAxMiU7DQogIHdpZHRoOiAxMDBweDsNCiAgZGlzcGxheTogYmxvY2s7DQogIGNvbnRlbnQ6ICJDT1BJRUQiOw0KICBmb250LXNpemU6IDFlbTsNCiAgcGFkZGluZzogNXB4IDVweDsNCiAgY29sb3I6ICNmZmY7DQogIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7DQogIGJvcmRlci1yYWRpdXM6IDNweDsNCiAgb3BhY2l0eTogMDsNCiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTsNCiAgYW5pbWF0aW9uOiBzaG93Y29waWVkIDEuNXMgZWFzZTsNCn0NCg0KQGtleWZyYW1lcyBzaG93Y29waWVkIHsNCiAgMCUgew0KICAgIG9wYWNpdHk6IDA7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOw0KICB9DQogIDUwJSB7DQogICAgb3BhY2l0eTogMC43Ow0KICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MCUpOw0KICB9DQogIDcwJSB7DQogICAgb3BhY2l0eTogMTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7DQogIH0NCiAgMTAwJSB7DQogICAgb3BhY2l0eTogMDsNCiAgfQ0KfQ0KDQouY29va2llcy1jYXJkIHsNCiAgd2lkdGg6IDUyMHB4Ow0KICBwYWRkaW5nOiAzMHB4Ow0KICBjb2xvcjogIzFlMjMzNzsNCiAgcG9zaXRpb246IGZpeGVkOw0KICBib3R0b206IDE1cHg7DQogIGxlZnQ6IDE1cHg7DQogIHotaW5kZXg6IDk5OTk5OTsNCiAgdHJhbnNpdGlvbjogYWxsIDAuNXM7DQogIGJhY2tncm91bmQ6ICNkMWQxZDE7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCn0NCg0KLmNvb2tpZXMtY2FyZC5oaWRlIHsNCiAgYm90dG9tOiAtNTAwcHggIWltcG9ydGFudDsNCn0NCi5yYWRpdXMtLTEwcHggew0KICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KfQ0KDQouY29va2llcy1jYXJkX19pY29uIHsNCiAgd2lkdGg6IDU1cHg7DQogIGhlaWdodDogNTVweDsNCiAgYm9yZGVyLXJhZGl1czogNTAlOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmU2ZjcwOw0KICBjb2xvcjogI2ZmZjsNCiAgZm9udC1zaXplOiAzMnB4Ow0KICBkaXNwbGF5OiBpbmxpbmUtZmxleDsNCiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQp9DQoNCi5jb29raWVzLWNhcmRfX2NvbnRlbnQgew0KICBtYXJnaW4tYm90dG9tOiAwOw0KfQ0KDQouY29va2llcy1idG4gew0KICBjb2xvcjogIzM2MzYzNjsNCiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICBwYWRkaW5nOiAxMHB4IDM1cHg7DQogIG1hcmdpbjogM3B4IDVweDsNCiAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICBib3JkZXItcmFkaXVzOiA5OTlweDsNCn0NCg0KLmNvb2tpZXMtYnRuOmhvdmVyIHsNCiAgY29sb3I6ICMzNjM2MzY7DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgew0KICAuY29va2llcy1jYXJkIHsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBsZWZ0OiAwOw0KICAgIGJvdHRvbTogMDsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgcGFkZGluZzogMTVweDsNCiAgfQ0KfQ0KDQouaG92ZXItaW5wdXQtcG9wdXAgew0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQp9DQouaW5wdXQtcG9wdXAgew0KICBkaXNwbGF5OiBub25lOw0KfQ0KLmhvdmVyLWlucHV0LXBvcHVwIC5pbnB1dC1wb3B1cCB7DQogIGRpc3BsYXk6IGJsb2NrOw0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIGJvdHRvbTogNzAlOw0KICBsZWZ0OiA1MCU7DQogIHdpZHRoOiAyODBweDsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWExYTsNCiAgY29sb3I6ICNmZmY7DQogIHBhZGRpbmc6IDIwcHg7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7DQogIC1tb3otYm9yZGVyLXJhZGl1czogNXB4Ow0KICAtbXMtYm9yZGVyLXJhZGl1czogNXB4Ow0KICAtby1ib3JkZXItcmFkaXVzOiA1cHg7DQogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOw0KICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOw0KICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7DQogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7DQogIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzOw0KICB0cmFuc2l0aW9uOiBhbGwgMC4zczsNCn0NCi5pbnB1dC1wb3B1cDo6YWZ0ZXIgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIGNvbnRlbnQ6ICIiOw0KICBib3R0b206IC0xOXB4Ow0KICBsZWZ0OiA1MCU7DQogIG1hcmdpbi1sZWZ0OiAtNXB4Ow0KICBib3JkZXItd2lkdGg6IDEwcHggMTBweCAxMHB4IDEwcHg7DQogIGJvcmRlci1zdHlsZTogc29saWQ7DQogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzFhMWExYSB0cmFuc3BhcmVudDsNCiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCn0NCi5pbnB1dC1wb3B1cCBwIHsNCiAgcGFkZGluZy1sZWZ0OiAyMHB4Ow0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQp9DQouaW5wdXQtcG9wdXAgcDo6YmVmb3JlIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICBjb250ZW50OiAiIjsNCiAgZm9udC1mYW1pbHk6ICJMaW5lIEF3ZXNvbWUgRnJlZSI7DQogIGZvbnQtd2VpZ2h0OiA5MDA7DQogIGxlZnQ6IDA7DQogIHRvcDogNHB4Ow0KICBsaW5lLWhlaWdodDogMTsNCiAgZm9udC1zaXplOiAxOHB4Ow0KfQ0KLmlucHV0LXBvcHVwIHAuZXJyb3Igew0KICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsNCn0NCi5pbnB1dC1wb3B1cCBwLmVycm9yOjpiZWZvcmUgew0KICBjb250ZW50OiAiXGYwNTciOw0KICBjb2xvcjogI2VhNTQ1NTsNCn0NCi5pbnB1dC1wb3B1cCBwLnN1Y2Nlc3M6OmJlZm9yZSB7DQogIGNvbnRlbnQ6ICJcZjA1OCI7DQogIGNvbG9yOiAjMjhjNzZmOw0KfQ0KDQouc2hvdy1maWx0ZXIgew0KICBkaXNwbGF5OiBub25lOw0KfQ0KQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7DQogIC5yZXNwb25zaXZlLWZpbHRlci1jYXJkIHsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIHRyYW5zaXRpb246IG5vbmU7DQogIH0NCiAgLnNob3ctZmlsdGVyIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgfQ0KfQ0KDQoNCg0KDQovKiAvLy8vLy8vLy8vLy8vLy8vLy8gc2VsZWN0IDIgY3NzIC8vLy8vLy8vLy8vLy8vLy8gKi8NCi5zZWxlY3QyLWRyb3Bkb3duIHsNCiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7DQogIG1hcmdpbi10b3A6IDhweCAhaW1wb3J0YW50Ow0KICBib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsNCiAgYm94LXNoYWRvdzogMCAzcHggOXB4IHJnYmEoNTAsIDUwLCA5LCAwLjA1KSwgNnB4IDRweCAxOXB4IHJnYigxMTUgMTAzIDI0MCAvIDIwJSkNCn0NCg0KLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biB7DQogIHBhZGRpbmc6IDEwcHggMTBweCAhaW1wb3J0YW50Ow0KICBib3JkZXItY29sb3I6ICNjZWQ0ZGEgIWltcG9ydGFudDsNCn0NCg0KLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7DQogIGJvcmRlci1jb2xvcjogI2NlZDRkYSAhaW1wb3J0YW50Ow0KICBwYWRkaW5nOiAxMHB4IDIwcHg7DQp9DQoNCi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQsDQouc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUsDQouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7DQogIHBhZGRpbmc6IDEycHggMTRweCAhaW1wb3J0YW50Ow0KICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTsNCn0NCg0KLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLnNlbGVjdDItcmVzdWx0c19fbWVzc2FnZSB7DQogIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50Ow0KICBwYWRkaW5nOiAxMnB4IDE0cHggIWltcG9ydGFudDsNCn0NCg0KLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uczo6LXdlYmtpdC1zY3JvbGxiYXIgew0KICB3aWR0aDogOHB4Ow0KICBib3JkZXItcmFkaXVzOiA1cHg7DQp9DQoNCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsNCiAgYmFja2dyb3VuZDogI2YxZjFmMTsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KfQ0KDQouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cz4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7DQogIGJhY2tncm91bmQ6ICNkZGQ7DQp9DQoNCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogI2RkZDsNCn0NCg0KLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7DQogIGRpc3BsYXk6IG5vbmU7DQp9DQoNCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93OmFmdGVyIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICByaWdodDogMTBweDsNCiAgdG9wOiAwOw0KICBjb250ZW50OiAiXGYxMDciOw0KICBmb250LWZhbWlseTogIkxpbmUgQXdlc29tZSBGcmVlIjsNCiAgZm9udC13ZWlnaHQ6IDkwMDsNCiAgdHJhbnNpdGlvbjogLjNzOw0KfQ0KDQouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgew0KICBib3JkZXItY29sb3I6ICNjZWQ0ZGEgIWltcG9ydGFudDsNCiAgYm9yZGVyLXdpZHRoOiAycHggIWltcG9ydGFudDsNCiAgYm9yZGVyLXJhZGl1czogLjM3NXJlbSAhaW1wb3J0YW50Ow0KICBwYWRkaW5nOiAuMzc1cmVtIC43NXJlbSAhaW1wb3J0YW50Ow0KICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsNCn0NCg0KLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgew0KICB0b3A6IDhweCAhaW1wb3J0YW50Ow0KfQ0KDQouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdzphZnRlciB7DQogIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOw0KfQ0KDQouc2VsZWN0Mi1yZXN1bHRzX19vcHRpb246bGFzdC1jaGlsZCB7DQogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDsNCiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDsNCn0NCg0KLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uOmZpcnN0LWNoaWxkIHsNCiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4Ow0KICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4Ow0KfQ0KDQouc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVkLA0KLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxICFpbXBvcnRhbnQ7DQogIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7DQp9DQoNCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Zm9jdXMgew0KICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1tYWluKSkgIWltcG9ydGFudDsNCiAgYm94LXNoYWRvdzogMCAwIDI1cHggcmdiYSgxMTUsIDEwMywgMjQwIDAuMDcxKSAhaW1wb3J0YW50Ow0KICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7DQp9DQoNCi5zZWxlY3QyLWRyb3Bkb3duIC5jb3VudHJ5LWZsYWcgew0KICB3aWR0aDogMjVweDsNCiAgaGVpZ2h0OiAyNXB4Ow0KICBib3JkZXItcmFkaXVzOiA4cHg7DQp9DQoNCi5zZWxlY3QyLWRyb3Bkb3duIC5nYXRld2F5LXRpdGxlIHsNCiAgZm9udC1zaXplOiAxNHB4Ow0KICBmb250LXdlaWdodDogNjAwOw0KICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDsNCn0NCg0KLnNlbGVjdDItZHJvcGRvd24gLmdhdGV3YXktc3VidGl0bGUgew0KICBmb250LXNpemU6IDEycHg7DQogIG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50Ow0KfQ0KLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7DQogIGJvcmRlci1jb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50Ow0KICBib3JkZXItcmFkaXVzOiAuMzc1cmVtICFpbXBvcnRhbnQ7DQp9DQoNCg0KLmdhdGV3YXktY2FyZCB7DQogIHBhZGRpbmc6IDE1cHg7DQp9DQoNCi5wYXltZW50LWNhcmQtdGl0bGUgew0KICBwYWRkaW5nOiAxM3B4IDI1cHg7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW1haW4pKTsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICBib3JkZXI6IDA7DQogIG1hcmdpbi1ib3R0b206IDBweDsNCiAgY29sb3I6ICNmZmY7DQp9DQoNCi5wYXltZW50LXN5c3RlbS1saXN0IHsNCiAgLS10aHVtYi13aWR0aDogMTAwcHg7DQogIC0tdGh1bWItaGVpZ2h0OiA0MHB4Ow0KICAtLXJhZGlvLXNpemU6IDEycHg7DQogIC0tYm9yZGVyLWNvbG9yOiAjY2NjY2NmNTk7DQogIC0taG92ZXItYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tbWFpbikpOw0KICBib3JkZXItcmFkaXVzOiA1cHg7DQogIGhlaWdodDogMTAwJTsNCg0KfQ0KDQoNCi5wYXltZW50LXN5c3RlbS1saXN0LmlzLXNjcm9sbGFibGUgew0KICBtYXgtaGVpZ2h0OiBtaW4oMzg4cHgsIDcwdmgpOw0KICBvdmVyZmxvdy14OiBhdXRvOw0KICBwYWRkaW5nLWJsb2NrOiA0cHg7DQp9DQoNCi5wYXltZW50LXN5c3RlbS1saXN0LmlzLXNjcm9sbGFibGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHsNCiAgd2lkdGg6IDVweDsNCn0NCg0KLnBheW1lbnQtc3lzdGVtLWxpc3QuaXMtc2Nyb2xsYWJsZTo6LXdlYmtpdC1zY3JvbGxiYXIgew0KICB3aWR0aDogNXB4Ow0KDQp9DQoNCi5wYXltZW50LXN5c3RlbS1saXN0LmlzLXNjcm9sbGFibGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW1haW4pKTsNCiAgYm9yZGVyLXJhZGl1czogMTBweDsNCn0NCg0KLnBheW1lbnQtaXRlbSB7DQogIHdpZHRoOiAxMDAlOw0KICBkaXNwbGF5OiBmbGV4Ow0KICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogIGZsZXgtd3JhcDogd3JhcDsNCiAgcGFkZGluZzogMTBweCAxOHB4Ow0KICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTsNCiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7DQogIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7DQogIG1hcmdpbi1ib3R0b206IDA7DQp9DQoNCi5wYXltZW50LWl0ZW06Zmlyc3QtY2hpbGQgew0KICBib3JkZXItdG9wLWNvbG9yOiAjZmZmOw0KICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDsNCn0NCg0KLnBheW1lbnQtaXRlbTpoYXMoLnBheW1lbnQtaXRlbV9fcmFkaW86Y2hlY2tlZCkgew0KICBib3JkZXItbGVmdDogM3B4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKSk7DQogIGJvcmRlci1yYWRpdXM6IDBweDsNCn0NCg0KLnBheW1lbnQtaXRlbV9fY2hlY2sgew0KICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDsNCn0NCg0KLnBheW1lbnQtaXRlbTpoYXMoLnBheW1lbnQtaXRlbV9fcmFkaW86Y2hlY2tlZCkgLnBheW1lbnQtaXRlbV9fY2hlY2sgew0KICBib3JkZXI6IDNweCBzb2xpZCBoc2wodmFyKC0tYmFzZSkpOw0KfQ0KDQoucGF5bWVudC1pdGVtX19pbmZvIHsNCiAgZGlzcGxheTogZmxleDsNCiAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgZmxleC13cmFwOiB3cmFwOw0KICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXRodW1iLXdpZHRoKSkNCn0NCg0KLnBheW1lbnQtaXRlbV9fY2hlY2sgew0KICB3aWR0aDogdmFyKC0tcmFkaW8tc2l6ZSk7DQogIGhlaWdodDogdmFyKC0tcmFkaW8tc2l6ZSk7DQogIGJvcmRlcjogMXB4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKSk7DQogIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgYm9yZGVyLXJhZGl1czogMTAwJTsNCg0KfQ0KDQoucGF5bWVudC1pdGVtX19uYW1lIHsNCiAgcGFkZGluZy1sZWZ0OiAxMHB4Ow0KICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcmFkaW8tc2l6ZSkpOw0KICB0cmFuc2l0aW9uOiBhbGwgMC4zczsNCn0NCg0KLnBheW1lbnQtaXRlbV9fdGh1bWIgew0KICB3aWR0aDogdmFyKC0tdGh1bWItd2lkdGgpOw0KICBoZWlnaHQ6IHZhcigtLXRodW1iLWhlaWdodCk7DQogIHRleHQtYWxpZ246IHJpZ2h0Ow0KICBwYWRkaW5nLWxlZnQ6IDEwcHg7DQoNCiAgJjpoYXMoLnRleHQpIHsNCiAgICAgIHdpZHRoOiBmaXQtY29udGVudDsNCiAgfQ0KfQ0KDQoucGF5bWVudC1pdGVtX190aHVtYiBpbWcgew0KICBtYXgtd2lkdGg6IHZhcigtLXRodW1iLXdpZHRoKTsNCiAgbWF4LWhlaWdodDogdmFyKC0tdGh1bWItaGVpZ2h0KTsNCiAgb2JqZWN0LWZpdDogY292ZXI7DQp9DQoNCg0KLmRlcG9zaXQtaW5mbyB7DQogIGRpc3BsYXk6IGZsZXg7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogIGZsZXgtd3JhcDogd3JhcDsNCiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICBtYXJnaW4tYm90dG9tOiA5cHg7DQp9DQoNCi5kZXBvc2l0LWluZm9fX3RpdGxlIHsNCiAgbWF4LXdpZHRoOiA1MCU7DQogIG1hcmdpbi1ib3R0b206IDBweDsNCiAgdGV4dC1hbGlnbjogbGVmdDsNCn0NCg0KLmRlcG9zaXQtaW5mb19faW5wdXQgew0KICBtYXgtd2lkdGg6IDUwJTsNCiAgdGV4dC1hbGlnbjogcmlnaHQ7DQogIHdpZHRoOiAxMDAlOw0KfQ0KDQouZGVwb3NpdC1pbmZvX19pbnB1dC1zZWxlY3Qgew0KICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpOw0KICB3aWR0aDogMTAwJTsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICBwYWRkaW5nLWJsb2NrOiA2cHg7DQp9DQoNCi5kZXBvc2l0LWluZm9fX2lucHV0LWdyb3VwIHsNCiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTsNCiAgYm9yZGVyLXJhZGl1czogNXB4Ow0KDQogIC5kZXBvc2l0LWluZm9fX2lucHV0LWdyb3VwLXRleHQgew0KICAgICAgYWxpZ24tc2VsZjogY2VudGVyOw0KICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7DQogIH0NCg0KfQ0KDQouZGVwb3NpdC1pbmZvX19pbnB1dC1ncm91cCAuZm9ybS0tY29udHJvbCB7DQogIHBhZGRpbmc6IDVweDsNCiAgYm9yZGVyOiAwOw0KICBoZWlnaHQ6IDM1cHg7DQogIHRleHQtYWxpZ246IHJpZ2h0Ow0KfQ0KDQouZGVwb3NpdC1pbmZvX19pbnB1dC1ncm91cCAuZm9ybS0tY29udHJvbDpmb2N1cyB7DQogIGJveC1zaGFkb3c6IHVuc2V0Ow0KfQ0KDQouaW5mby10ZXh0IC50ZXh0LA0KLmRlcG9zaXQtaW5mb19faW5wdXQgLnRleHQgew0KICBmb250LXNpemU6IDE0cHg7DQoNCn0NCg0KLmRlcG9zaXQtaW5mb19fdGl0bGUgLnRleHQuaGFzLWljb24gew0KICBkaXNwbGF5OiBmbGV4Ow0KICBhbGlnbi1pdGVtczogY2VudGVyOw0KICBnYXA6IDVweA0KfQ0KDQoudG90YWwtYW1vdW50IHsNCiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7DQp9DQoNCi50b3RhbC1hbW91bnQgLmRlcG9zaXQtaW5mb19fdGl0bGUgew0KICBmb250LXdlaWdodDogNjAwOw0KfQ0KDQoucGF5bWVudC1pdGVtX19idG4gew0KICBib3JkZXI6IDA7DQogIGJvcmRlci1ib3R0b206IDA7DQogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICBib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Ow0KICB3aWR0aDogMTAwJTsNCiAgZGlzcGxheTogZmxleDsNCiAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICBwYWRkaW5nOiAxM3B4IDE1cHg7DQogIGZvbnQtd2VpZ2h0OiA1MDA7DQp9DQoucGF5bWVudC1pdGVtX19idG4tdGV4dCB7DQogIGNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOw0KfQ0KDQoucGF5bWVudC1pdGVtX19idG5fX2ljb24gew0KICBjb2xvcjogaHNsKHZhcigtLWJhc2UpKTsNCn0NCi5wYXltZW50LWl0ZW06aG92ZXIrLnBheW1lbnQtaXRlbV9fYnRuIHsNCiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjsNCn0NCg0KYnV0dG9uIC5zcGlubmVyLWJvcmRlciB7DQogIC0tYnMtc3Bpbm5lci13aWR0aDogMS41cmVtOw0KICAtLWJzLXNwaW5uZXItaGVpZ2h0OiAxLjVyZW07DQp9DQoNCg0KLm1vZGFsLWNvbnRlbnQgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDMxOw0KICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7DQp9DQoubW9kYWwtY29udGVudCAuY2xvc2Ugew0KICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsNCiAgY29sb3I6ICNmZmY7DQp9DQoNCi5tb2RhbC1oZWFkZXIgew0KICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzM3Mzc0MjsNCn0NCi5tb2RhbC1mb290ZXIgew0KICBib3JkZXItdG9wOiAxcHggc29saWQgIzM3Mzc0MjsNCn0NCi5mb3JtLWNvbnRyb2wgew0KICBib3JkZXItY29sb3I6ICM0MjQyNDIgIWltcG9ydGFudDsNCiAgYmFja2dyb3VuZDogIzA5MDk1MzsNCiAgaGVpZ2h0OiA1MHB4Ow0KfQ0KDQp0ZXh0YXJlYTpmb2N1cyB7DQogIGJhY2tncm91bmQ6ICMwOTA5NTMgIWltcG9ydGFudDsNCiAgYm9yZGVyLWNvbG9yOiAjNjI2MjYyICFpbXBvcnRhbnQ7DQp9DQoNCmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsNCiAgY29sb3I6ICM2MjYyNjIgIWltcG9ydGFudDsNCn0NCg0KLmgtNTBweCB7DQogIGhlaWdodDogNTBweDsNCn0NCi50YWJsZS1zZWFyY2ggew0KICB3aWR0aDogMzMlOw0KICBtYXJnaW4tbGVmdDogYXV0bzsNCn0NCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgew0KICAudGFibGUtc2VhcmNoIHsNCiAgICB3aWR0aDogNTAlOw0KICB9DQp9DQpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsNCiAgLnRhYmxlLXNlYXJjaCB7DQogICAgd2lkdGg6IDEwMCU7DQogIH0NCn0NCg0KaW5wdXRbcmVhZG9ubHldIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzA2MGM0YTsNCn0NCi51c2VyLXNpZGViYXItbWVudSBsaSBhLmFjdGl2ZSB7DQogIGNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOw0KfQ0KDQouY3VzdG9tLS1jYXJkIHsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBwYWRkaW5nOiAzMHB4Ow0KICBib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYigyNTUgMjU1IDI1NSAvIDEwJSksIDRweCA0cHggNXB4IHJnYigwIDAgMCAvIDM1JSkgIWltcG9ydGFudDsNCiAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXNlY29uZF9jb2xvcikpOw0KfQ0KDQouYm9yZGVyLWJvdHRvbSB7DQogIGJvcmRlci1jb2xvcjogI2ZmZmZmZjQ1ICFpbXBvcnRhbnQ7DQp9DQouY29va2llcy1jYXJkIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MDkzMyAhaW1wb3J0YW50Ow0KICBib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYigyNTUgMjU1IDI1NSAvIDEwJSksIDRweCA0cHggNXB4IHJnYigwIDAgMCAvIDM1JSkgIWltcG9ydGFudDsNCn0NCg0KbGFiZWwucmVxdWlyZWQ6YWZ0ZXIgew0KICBjb250ZW50OiAiKiI7DQogIGNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7DQogIG1hcmdpbi1sZWZ0OiAycHg7DQp9DQoNCi52ZXJpZmljYXRpb24tY29kZS13cmFwcGVyIHsNCiAgYm9yZGVyOiAwOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUwOTMzOw0KICBib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYigyNTUgMjU1IDI1NSAvIDEwJSksIDRweCA0cHggNXB4IHJnYigwIDAgMCAvIDM1JSkgIWltcG9ydGFudDsNCn0NCi52ZXJpZmljYXRpb24tY29kZTo6YWZ0ZXIgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUwOTMzOw0KICBjb2xvcjogIzA1MDkzMzsNCn0NCi52ZXJpZmljYXRpb24tY29kZSBpbnB1dCwNCi52ZXJpZmljYXRpb24tY29kZSBpbnB1dDpob3ZlciwNCi52ZXJpZmljYXRpb24tY29kZSBpbnB1dDpmb2N1cyB7DQogIGJvcmRlcjogMCAhaW1wb3J0YW50Ow0KICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7DQogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7DQogIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzAyKSAhaW1wb3J0YW50Ow0KfQ0KDQoudmVyaWZpY2F0aW9uLWNvZGUgc3BhbiB7DQogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7DQogIGNvbG9yOiAjZmZmOw0KICBib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiKDAgMCAwIC8gMjUlKSBpbnNldCwNCiAgICAtNHB4IC00cHggNHB4IHJnYigyNTUgMjU1IDI1NSAvIDUlKSBpbnNldCAhaW1wb3J0YW50Ow0KICBib3JkZXI6IDAgIWltcG9ydGFudDsNCn0NCg=="}},"time_used":72,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":69,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/67b4301f3812ff19107c7949/1ikbtnvah","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.013Z","timestamp":1785143154013,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /67b4301f3812ff19107c7949/1ikbtnvah HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\ncontent-type: application/x-javascript\r\npriority: u=3,i=?0\r\ncache-control: public, max-age=7200, s-maxage=3600\r\netag: W/\"stable-v4-6a4e64e9f0d\"\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\ncf-cache-status: REVALIDATED\r\nserver: cloudflare\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c28aa331a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":2123,"size_decoded":1223,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text","md5":"b39698b2ebb2687664b3462d1f2c6846","sha1":"061af97210f16b30284b006021d0c32841c173bc","sha256":"0fdfeb3fa8a634a3566d5bdbb6bdce6ea13842f444874007e17efa55dda8af73","sha512":"b5951bead6f975ed23c3632c65e87fc85abd008e95cdc1d286bde3496bcfd75b7ef9a97c61acb8ef58984ccf607fe8c43f77715c0894f6f2b5e4ff2cd00c136f","ssdeep":"","tlshash":"0741f0db5f4f1862d22420d84caef98eb47b72e645d85c968708041173657ad2a8ee3f","first_seen":"2026-07-27T06:02:19.035955Z","last_seen":"2026-07-27T09:07:02.797259Z","times_seen":3,"resource_available":true,"data":"KGZ1bmN0aW9uKGdsb2JhbCl7CglnbG9iYWwuJF9UYXdrX0FjY291bnRLZXk9JzY3YjQzMDFmMzgxMmZmMTkxMDdjNzk0OSc7CglnbG9iYWwuJF9UYXdrX1dpZGdldElkPScxaWtidG52YWgnOwoJZ2xvYmFsLiRfVGF3a19VbnN0YWJsZT1mYWxzZTsKCWdsb2JhbC4kX1Rhd2sgPSBnbG9iYWwuJF9UYXdrIHx8IHt9OwoJKGZ1bmN0aW9uICh3KXsKCWZ1bmN0aW9uIGwoKSB7CgkJaWYgKHdpbmRvdy4kX1Rhd2suaW5pdCAhPT0gdW5kZWZpbmVkKSB7CgkJCXJldHVybjsKCQl9CgoJCXdpbmRvdy4kX1Rhd2suaW5pdCA9IHRydWU7CgoJCXZhciBmaWxlcyA9IFsKCQkJJ2h0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQvanMvdHdrLW1haW4uanMnLAoJCQknaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZC9qcy90d2stdmVuZG9yLmpzJywKCQkJJ2h0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQvanMvdHdrLWNodW5rLXZlbmRvcnMuanMnLAoJCQknaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZC9qcy90d2stY2h1bmstY29tbW9uLmpzJywKCQkJJ2h0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQvanMvdHdrLXJ1bnRpbWUuanMnLAoJCQknaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZC9qcy90d2stYXBwLmpzJwoJCV07CgoJCWlmICh0eXBlb2YgUHJvbWlzZSA9PT0gJ3VuZGVmaW5lZCcpIHsKCQkJZmlsZXMudW5zaGlmdCgnaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZC9qcy90d2stcHJvbWlzZS1wb2x5ZmlsbC5qcycpOwoJCX0KCgkJaWYgKHR5cGVvZiBTeW1ib2wgPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09ICd1bmRlZmluZWQnKSB7CgkJCWZpbGVzLnVuc2hpZnQoJ2h0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQvanMvdHdrLWl0ZXJhdG9yLXBvbHlmaWxsLmpzJyk7CgkJfQoKCQlpZiAodHlwZW9mIE9iamVjdC5lbnRyaWVzID09PSAndW5kZWZpbmVkJykgewoJCQlmaWxlcy51bnNoaWZ0KCdodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXBwLzZhNGU2NGU5ZjBkL2pzL3R3ay1lbnRyaWVzLXBvbHlmaWxsLmpzJyk7CgkJfQoKCQlpZiAoIXdpbmRvdy5jcnlwdG8pIHsKCQkJd2luZG93LmNyeXB0byA9IHdpbmRvdy5tc0NyeXB0bzsKCQl9CgoJCWlmICh0eXBlb2YgRXZlbnQgIT09ICdmdW5jdGlvbicpIHsKCQkJZmlsZXMudW5zaGlmdCgnaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZC9qcy90d2stZXZlbnQtcG9seWZpbGwuanMnKTsKCQl9CgoJCWlmICghT2JqZWN0LnZhbHVlcykgewoJCQlmaWxlcy51bnNoaWZ0KCdodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXBwLzZhNGU2NGU5ZjBkL2pzL3R3ay1vYmplY3QtdmFsdWVzLXBvbHlmaWxsLmpzJyk7CgkJfQoKCQlpZiAodHlwZW9mIEFycmF5LnByb3RvdHlwZS5maW5kID09PSAndW5kZWZpbmVkJykgewoJCQlmaWxlcy51bnNoaWZ0KCdodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXBwLzZhNGU2NGU5ZjBkL2pzL3R3ay1hcnItZmluZC1wb2x5ZmlsbC5qcycpOwoJCX0KCgkJdmFyIHMwPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTsKCgkJZm9yICh2YXIgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykgewoJCQl2YXIgczEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKCQkJczEuc3JjPSBmaWxlc1tpXTsKCQkJczEuY2hhcnNldD0nVVRGLTgnOwoJCQlzMS5zZXRBdHRyaWJ1dGUoJ2Nyb3Nzb3JpZ2luJywnKicpOwoJCQlzMC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzMSxzMCk7CgkJfQoJfQoJaWYgKGRvY3VtZW50LnJlYWR5U3RhdGUgPT09ICdjb21wbGV0ZScpIHsKCQlsKCk7Cgl9IGVsc2UgaWYgKHcuYXR0YWNoRXZlbnQpIHsKCQl3LmF0dGFjaEV2ZW50KCdvbmxvYWQnLCBsKTsKCX0gZWxzZSB7CgkJdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgbCwgZmFsc2UpOwoJfQp9KSh3aW5kb3cpOwoKfSkod2luZG93KTs="}},"time_used":532,"timings":{"blocked":0,"dns":3,"connect":13,"send":0,"wait":516,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-3ea2c7ce.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.339Z","timestamp":1785143155339,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-3ea2c7ce.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"52698c6dc96b5f2bd13e8f921334e398\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591666\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30d96e0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":5504,"size_decoded":2977,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (5496), with no line terminators","md5":"52698c6dc96b5f2bd13e8f921334e398","sha1":"eb0adbc44ebc73775c5cca0a3851e8a6510d360c","sha256":"37527b07ac54a4567d7e23bde1edfde8ed74c4f30402c96fb56f4c0020c6af42","sha512":"032e41ececcfc651f34c235d15953baacb81e7cfaf492dd919c7fca2a7c49d507ae4a60710064c5419df70eb581254058dffbf1d0d4c53ef47d87bce4e036524","ssdeep":"96:60WlCWYW5rugkENQdx0hZUASzpqrcHZ73abT3Qlgjm6i5cCEsK7oGuyGwDf/2/5N:XBTW5qgNQdAR7c573abF8cCEsK72/5N","tlshash":"b5b11982b251b4668ab5380045cf6f07b07baf4f5d09cd50d783e4a3b230c5a9667e8c","first_seen":"2025-11-13T12:40:48.559139Z","last_seen":"2026-08-03T12:50:03.403819Z","times_seen":41617,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstM2VhMmM3Y2UiXSx7Mjk2NjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPXtuYW1lOiJzdXJ2ZXktb3B0aW9ucyIsY29tcG9uZW50czp7VGF3a0J1dHRvbjpuKCJmMGIwIikuVGF3a0J1dHRvbn0scHJvcHM6e29wdGlvbnM6e3R5cGU6QXJyYXkscmVxdWlyZWQ6ITB9fSxtZXRob2RzOntoYW5kbGVPbkNsaWNrOmZ1bmN0aW9uKHQpe3RoaXMuJGVtaXQoInNlbGVjdFN1cnZleSIsdCl9fX0scj1uKCIyODc3IiksYT1PYmplY3Qoci5hKShpLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10Ll9zZWxmLl9jO3JldHVybiBlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1zdXJ2ZXkifSx0Ll9sKHQub3B0aW9ucywoZnVuY3Rpb24obixpKXtyZXR1cm4gZSgiZGl2Iix7a2V5Omksc3RhdGljQ2xhc3M6InRhd2stc3VydmV5LW9wdGlvbiJ9LFtlKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtbGVmdCIsYXR0cnM6e3NpemU6InNtYWxsIn0sZG9tUHJvcHM6e2lubmVySFRNTDp0Ll9zKG4udGV4dCl9LG9uOntjbGljazpmdW5jdGlvbihlKXtyZXR1cm4gdC5oYW5kbGVPbkNsaWNrKG4udGV4dCl9fX0pXSwxKX0pKSwwKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTtlLmE9YS5leHBvcnRzfSwiM2M0MCI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuLmQoZSwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSk7dmFyIGk9WyIoPzooPzpbYS16XSs6KT8vLyk/IiwiKD86XFxTKyg/OjpcXFMqKT9AKT8iLCIoPzpsb2NhbGhvc3R8KD86KD86W2EtelxcdTAwYTEtXFx1ZmZmZjAtOV0tKikqW2EtelxcdTAwYTEtXFx1ZmZmZjAtOV0rKSg/OlxcLig/OlthLXpcXHUwMGExLVxcdWZmZmYwLTldLSopKlthLXpcXHUwMGExLVxcdWZmZmYwLTldKykqKD86XFwuKD86W2EtelxcdTAwYTEtXFx1ZmZmZl17Mix9KSkpIiwiKD86OlxcZHsyLDV9KT8iLCcoPzpbLz8jXVteXFxzIl0qKT8nXS5qb2luKCIiKSxyPW5ldyBSZWdFeHAoIig/Ol4iK2krIiQpIiwiaSIpLGE9L14oKG1haWx0bzopezAsMX1bYS16QS1aMC05Xy5cLStdKStAKChbYS16QS1aMC05LV0pK1wuKSsoW2EtekEtWjAtOV0rKSQvLG89L14odGVsOlwrfFwrfHRlbDopezF9KD86WzAtOVwtKCkvLl1ccz8pezYsMTV9WzAtOV17MX1cYi9naSxsPS9eKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPylcLigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldP1wvKFthLXpBLVowLTkhJCYnKCkqKy49LV9+OkAvPyNdKykrKVxiL2dpO2Z1bmN0aW9uIGModCl7dmFyIGU9dC5tYXRjaCgvOlwvXC8od3d3WzAtOV0/XC4pPyguW14vOl0rKS9pKTtpZihudWxsIT1lJiZlLmxlbmd0aD4yJiYic3RyaW5nIj09dHlwZW9mIGVbMl0mJmVbMl0ubGVuZ3RoPjApcmV0dXJuIGVbMl19ZnVuY3Rpb24gdSh0KXt2YXIgZT0iIjtyZXR1cm4gd2luZG93LmVtb2ppb25lJiZ3aW5kb3cuZW1vamlvbmUudG9JbWFnZSh0KSE9PXQ/dDooLTE9PT10LmluZGV4T2YoIm1haWx0bzoiKSYmKGU9Im1haWx0bzoiKSwiWyIuY29uY2F0KHQsIl0oIikuY29uY2F0KGUrdCwiKSIpKX1mdW5jdGlvbiBzKHQpe2lmKHdpbmRvdy5lbW9qaW9uZSYmd2luZG93LmVtb2ppb25lLnRvSW1hZ2UodCkhPT10KXJldHVybiB0O3ZhciBlPSIiO3JldHVybi0xPT09dC5pbmRleE9mKCJ0ZWwiKSYmKGU9InRlbDoiKSwiWyIuY29uY2F0KHQsIl0oIikuY29uY2F0KGUrdCwiKSIpfWZ1bmN0aW9uIGYodCl7dmFyIGU9IiI7aWYod2luZG93LmVtb2ppb25lJiZ3aW5kb3cuZW1vamlvbmUudG9JbWFnZSh0KSE9PXQpcmV0dXJuIHQ7dmFyIG49dC5tYXRjaCgvKD8hW1x1MDYwMC1cdTA2RkZcdTA3NTAtXHUwNzdGXHUwNTkwLVx1MDVGRlx1MDkwMC1cdTA5N0ZcdTRFMDAtXHU5RkZGXHVBQzAwLVx1RDdBRlx1MzA0MC1cdTMwOUZcdTMwQTAtXHUzMEZGXHUxMTAwLVx1MTFGRlx1MzEzMC1cdTMxOEZcdUEwMDAtXHVBNDhGXHUyODAwLVx1MjhGRl0pW15cd1xzLy1dKyQvZyk7aWYobiYmbi5sZW5ndGgpe3ZhciBpPXdpbmRvdy5lc2NhcGVSZWdFeHB8fGZ1bmN0aW9uKHQpe3JldHVybiB0LnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLCJcXCQmIil9LHI9bmV3IFJlZ0V4cChpKG5bMF0pKyIkIiwiZyIpO3Q9dC5yZXBsYWNlKHIsIiIpfXZhciBvPSIiLmNvbmNhdChuJiZuLmxlbmd0aD9uWzBdOiIiLCIgIik7aWYodC5tYXRjaChhKSYmKGU9Im1haWx0bzoiKSwibWFpbHRvOiI9PT1lKXt2YXIgbD10Lm1hdGNoKGEpWzBdO3JldHVybi0xIT09bC5pbmRleE9mKCJtYWlsdG8iKSYmKGU9IiIpLHQucmVwbGFjZShhLCJbIi5jb25jYXQobCwiXSgiKS5jb25jYXQoZStsLCIpIikuY29uY2F0KG8pKX1yZXR1cm4gMCE9PXQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJodHRwIikmJjAhPT10LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZnRwIikmJihlPSJodHRwOi8vIiksd2luZG93LmxvY2F0aW9uJiYtMSE9PXQuaW5kZXhPZih3aW5kb3cubG9jYXRpb24uaG9zdCsiLyMvIik/JzxhIGhyZWY9IicuY29uY2F0KHQsJyIgY2xhc3M9ImNoYW5nZS1yb3V0ZSB0YXdrLWxpbmsiPicpLmNvbmNhdCh0LCI8L2E+IikuY29uY2F0KG8pOiJfcGFyZW50Ij09PShjKGRvY3VtZW50LmxvY2F0aW9uLmhyZWYpPT09Yyh0KT8iX3BhcmVudCI6Il9ibGFuayIpPyJfWyIuY29uY2F0KHQsIl0oIikuY29uY2F0KGUrdCwiKSIpLmNvbmNhdChvKToiWyIuY29uY2F0KHQsIl0oIikuY29uY2F0KGUrdCwiKSIpLmNvbmNhdChvKX1mdW5jdGlvbiBnKHQpe3ZhciBlLG49YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOiIiO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKG4saSl7LTEhPT1uLmluZGV4T2YoIjxici8+Iik/KGU9bi5zcGxpdCgvPGJyXC8+Lyksbj1nKGUsIlxuIikpOm4ubWF0Y2goYSk/bj1uLnJlcGxhY2UoYSx1KTpuLm1hdGNoKG8pP249bi5yZXBsYWNlKG8scyk6bj0obj1uLnJlcGxhY2UocixmKSkucmVwbGFjZShsLGYpLHRbaV09bn0pKSx0LmpvaW4obil9ZnVuY3Rpb24gcCh0LGUpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0saT0vKFxyXG58XG58XHIpL2dtO2lmKG51bGw9PXQpcmV0dXJuIiI7aWYoInN0cmluZyIhPXR5cGVvZih0PXQudG9TdHJpbmcoKSkpcmV0dXJuIiI7dmFyIHI9L1xbLio/XF1cKGh0dHBzPzpcL1wvLio/XCkvLnRlc3QodCk7aWYocil0PWUodD10LnJlcGxhY2UoL8KpL2dtLCImY29weTsiKS5yZXBsYWNlKC/Cri9nbSwiJnJlZzsiKS5yZXBsYWNlKC/ihKIvZ20sIiZ0cmFkZTsiKSk7ZWxzZXtmb3IodmFyIGE9dC5zcGxpdCgvXHJcbnxccnxcbi8pLG89W10sbD0wO2w8YS5sZW5ndGg7bCsrKW8ucHVzaChnKGFbbF0uc3BsaXQoL1xzLyksIiAiKSk7dD1lKHQ9KHQ9by5sZW5ndGg/by5qb2luKCJcbiIpOnQpLnJlcGxhY2UoL8KpL2dtLCImY29weTsiKS5yZXBsYWNlKC/Cri9nbSwiJnJlZzsiKS5yZXBsYWNlKC/ihKIvZ20sIiZ0cmFkZTsiKSl9dD0odD0odD0odD10LnJlcGxhY2UoLzxsaT4oW148XSooPzo8c3Ryb25nPi4qPzxcL3N0cm9uZz4pP1tePF0qOj8pPFwvbGk+KFxzKjx1bD4pL2dpLChmdW5jdGlvbih0LGUsbil7cmV0dXJuIjxsaT4iK2Urbn0pKSkucmVwbGFjZSgvPFwvdWw+KFxzKikoPGxpPikvZywnPC91bD48L2xpPiQxPGRpdiBzdHlsZT0iaGVpZ2h0OiAwLjFlbTsiPjwvZGl2PiQyJykpLnJlcGxhY2UoLyg8dWw+KSg8bGk+PHN0cm9uZz4pL2ksJzx1bCBzdHlsZT0icGFkZGluZy1sZWZ0OiAzcHg7IG1hcmdpbi1sZWZ0OiAwOyI+JDInKSkucmVwbGFjZSgvKDxsaT5bXjxdKig/OjxzdHJvbmc+Lio/PFwvc3Ryb25nPik/W148XSo6KSg8dWw+KS9naSwnJDE8dWwgc3R5bGU9InBhZGRpbmctbGVmdDogMC40ZW07IGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlOyI+Jyk7Zm9yKHZhciBjPSIiLHU9MDtjIT09dCYmdTwyMDspYz10LHUrKyx0PSh0PXQucmVwbGFjZSgvPFwvbGk+XHMqPFwvb2w+XHMqKFtcc1xTXSo/KVxzKjxvbD5ccyo8bGk+L2csKGZ1bmN0aW9uKHQsZSl7dmFyIG49ZS50cmltKCksaT0obi5tYXRjaCgvWy4hP11ccysvZyl8fFtdKS5sZW5ndGg+MixyPShuLm1hdGNoKC88cD4vZyl8fFtdKS5sZW5ndGg+MSxhPW4ubGVuZ3RoPjMwMDtyZXR1cm4gaXx8cnx8YT90Om4/Ijxici8+IituKyc8L2xpPjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMWVtOyI+JzonPC9saT48bGkgc3R5bGU9Im1hcmdpbi10b3A6IDFlbTsiPid9KSkpLnJlcGxhY2UoLzxcL2xpPlxzKjxcL3VsPlxzKihbXHNcU10qPylccyo8dWw+XHMqPGxpPi9nLChmdW5jdGlvbih0LGUpe2lmKGUuaW5jbHVkZXMoIjwvbGk+IikpcmV0dXJuIHQ7dmFyIG49ZS50cmltKCksaT0obi5tYXRjaCgvWy4hP11ccysvZyl8fFtdKS5sZW5ndGg+MixyPShuLm1hdGNoKC88cD4vZyl8fFtdKS5sZW5ndGg+MSxhPW4ubGVuZ3RoPjMwMDtyZXR1cm4gaXx8cnx8YT90Om4/Ijxici8+IituKyc8L2xpPjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMWVtOyI+JzonPC9saT48bGkgc3R5bGU9Im1hcmdpbi10b3A6IDFlbTsiPid9KSk7dD0odD10LnJlcGxhY2UoLzxcL2xpPlxzKjxcL29sPlxzKlxuKCg/OlxzKi1bXlxuXStcbj8pKykvZywoZnVuY3Rpb24odCxlKXt2YXIgbj1lLnRyaW0oKTtyZXR1cm4gbj8iPGJyLz4iK24rIjwvbGk+PC9vbD4iOnR9KSkpLnJlcGxhY2UoLzxsaShbXj5dKik+KDxzdHJvbmc+Lio/PFwvc3Ryb25nPikoPGJyXC8/PispKFtcc1xTXSo/KTxcL2xpPi9nLChmdW5jdGlvbih0LGUsbixpLHIpe2lmKHIucmVwbGFjZSgvXig8YnJcLz58XHMpKy8sIiIpLnRyaW0oKS5zdGFydHNXaXRoKCItIikpe3ZhciBhPXIucmVwbGFjZSgvXG5ccysoLVxzKS9nLCJcbiQxIikucmVwbGFjZSgvXlxzKygtXHMpLywiJDEiKTtyZXR1cm4iPGxpIi5jb25jYXQoZSwiPiIpLmNvbmNhdChuKS5jb25jYXQoaSwnPGRpdiBzdHlsZT0icGFkZGluZy1sZWZ0OiAwLjVlbTsiPicpLmNvbmNhdChhLCI8L2Rpdj48L2xpPiIpfXJldHVybiB0fSkpLCFuJiZ3aW5kb3cuZW1vamlvbmUmJih3aW5kb3cuZW1vamlvbmUuYXNjaWk9ITEsdD13aW5kb3cuZW1vamlvbmUudG9JbWFnZSh0KSk7dmFyIHM9LzwocHxkaXZ8b2x8dWx8bGl8YmxvY2txdW90ZXxoWzEtNl18cHJlfHRhYmxlfHRyfHRkKVtccz5dL2kudGVzdCh0KTtyZXR1cm4gdD1zP3QucmVwbGFjZSgvXG4oPyFbXjxdKj4pL2csKGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uLnN1YnN0cmluZygwLGUpLHI9bi5zdWJzdHJpbmcoZSksYT0vPFwvW14+XSs+XHMqJC8udGVzdChpKSxvPS9eXHMqPFtePl0rPi8udGVzdChyKTtyZXR1cm4gYSYmbz8iXG4iOiI8YnIvPiJ9KSk6dC5yZXBsYWNlKGksIjxici8+Iil9fX1dKTs="}},"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":"profx.io/assets/global/css/select2.min.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.624Z","timestamp":1785143153624,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/select2.min.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"3dd0-67b374e4-f0bffdc1aa72d41e;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 1827\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":15824,"size_decoded":2267,"mime_type":"text/css","magic":"ASCII text, with very long lines (15822), with CRLF line terminators","md5":"bef1fe60450333eec9e61b9ea72c41c2","sha1":"d1b7c6cc7e0f518959c1e5835ff4434d7496245e","sha256":"55d6f0fcf299a3a45dc7d9198433ae056e152ae104f0363183366f26d07b39ab","sha512":"12c05267816c88ae162e98aafb205a6fb28a2e9f82c5111e106ad49509c84bdaab9b3c7c5762be5241877b8af1959ef6445c97194acd392e94b819d399d8b14c","ssdeep":"192:1EaNSbuenTfc3aq6JYhKQ9CPxWqAUJKk3BcH9t3E:1EueTfXnYwQ9sWqbxRcdpE","tlshash":"9862c935bacc2235b0bf8e7f6cf1b4946729ed5fc4111b9ab8e9e194c8e04540a4b60f","first_seen":"2023-09-22T19:17:16Z","last_seen":"2026-08-02T14:10:07.542088Z","times_seen":363,"resource_available":false,"data":"LnNlbGVjdDItY29udGFpbmVye2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyOHB4O3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1sZWZ0OjhweDtwYWRkaW5nLXJpZ2h0OjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjFlbX0uc2VsZWN0Mi1jb250YWluZXJbZGlyPSJydGwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke3BhZGRpbmctcmlnaHQ6OHB4O3BhZGRpbmctbGVmdDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO21pbi1oZWlnaHQ6MzJweDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxZW19LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxMDAlO21hcmdpbi10b3A6NXB4O21hcmdpbi1sZWZ0OjVweDtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9LnNlbGVjdDItZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotMTAwMDAwcHg7d2lkdGg6MTAwJTt6LWluZGV4OjEwNTF9LnNlbGVjdDItcmVzdWx0c3tkaXNwbGF5OmJsb2NrfS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7bGlzdC1zdHlsZTpub25lO21hcmdpbjowO3BhZGRpbmc6MH0uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257cGFkZGluZzo2cHg7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxle2N1cnNvcjpwb2ludGVyfS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bntsZWZ0OjB9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZXtib3JkZXItYm90dG9tOm5vbmU7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvd3tib3JkZXItdG9wOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93bntkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NHB4fS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZHtwYWRkaW5nOjRweDt3aWR0aDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93bi5zZWxlY3QyLXNlYXJjaC0taGlkZXtkaXNwbGF5Om5vbmV9LnNlbGVjdDItY2xvc2UtbWFza3tib3JkZXI6MDttYXJnaW46MDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDtsZWZ0OjA7dG9wOjA7bWluLWhlaWdodDoxMDAlO21pbi13aWR0aDoxMDAlO2hlaWdodDphdXRvO3dpZHRoOmF1dG87b3BhY2l0eTowO3otaW5kZXg6OTk7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZpbHRlcjphbHBoYShvcGFjaXR5PTApfS5zZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxle2JvcmRlcjowICFpbXBvcnRhbnQ7Y2xpcDpyZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKSAhaW1wb3J0YW50O2NsaXAtcGF0aDppbnNldCg1MCUpICFpbXBvcnRhbnQ7aGVpZ2h0OjFweCAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiAhaW1wb3J0YW50O3BhZGRpbmc6MCAhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7d2lkdGg6MXB4ICFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwICFpbXBvcnRhbnR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6IzQ0NDtsaW5lLWhlaWdodDoyOHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2N1cnNvcjpwb2ludGVyO2Zsb2F0OnJpZ2h0O2ZvbnQtd2VpZ2h0OmJvbGQ7aGVpZ2h0OjI2cHg7bWFyZ2luLXJpZ2h0OjIwcHg7cGFkZGluZy1yaWdodDowcHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3toZWlnaHQ6MjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MXB4O3JpZ2h0OjFweDt3aWR0aDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOiM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDo1cHggNHB4IDAgNHB4O2hlaWdodDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXRvcDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPSJydGwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZWVlO2N1cnNvcjpkZWZhdWx0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntkaXNwbGF5Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYntib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6MCA0cHggNXB4IDRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtjdXJzb3I6dGV4dDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDpib2xkO2hlaWdodDoyMHB4O21hcmdpbi1yaWdodDoxMHB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtjdXJzb3I6ZGVmYXVsdDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Y29sb3I6Izk5OTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MWVtO2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZzowIDRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZjFmMWYxO2NvbG9yOiMzMzM7b3V0bGluZTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi1yaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7cGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjJweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPSJydGwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0O21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlcjpzb2xpZCBibGFjayAxcHg7b3V0bGluZTowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7Y3Vyc29yOmRlZmF1bHR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JvcmRlcjoxcHggc29saWQgI2FhYX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO291dGxpbmU6MDtib3gtc2hhZG93Om5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cz4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue3BhZGRpbmctbGVmdDoxZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fZ3JvdXB7cGFkZGluZy1sZWZ0OjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi0xZW07cGFkZGluZy1sZWZ0OjJlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi0yZW07cGFkZGluZy1sZWZ0OjNlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotM2VtO3BhZGRpbmctbGVmdDo0ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi00ZW07cGFkZGluZy1sZWZ0OjVlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi01ZW07cGFkZGluZy1sZWZ0OjZlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cHtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWR7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiNkZGR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGV7YmFja2dyb3VuZC1jb2xvcjojNTg5N2ZiO2NvbG9yOndoaXRlfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O291dGxpbmU6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiA1MCUsICNlZWUgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDUwJSwgI2VlZSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYgNTAlLCAjZWVlIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgZW5kQ29sb3JzdHI9JyNGRkVFRUVFRScsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM0NDQ7bGluZS1oZWlnaHQ6MjhweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDpib2xkO2hlaWdodDoyNnB4O21hcmdpbi1yaWdodDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVye2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZC1jb2xvcjojZGRkO2JvcmRlcjpub25lO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjYWFhO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7aGVpZ2h0OjI2cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjFweDtyaWdodDoxcHg7d2lkdGg6MjBweDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZSA1MCUsICNjY2MgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2NjYyAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUgNTAlLCAjY2NjIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkNDQ0NDQycsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjojODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6NXB4IDRweCAwIDRweDtoZWlnaHQ6MDtsZWZ0OjUwJTttYXJnaW4tbGVmdDotNHB4O21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O2JvcmRlci13aWR0aDowIDRweCA1cHggNHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLXRvcDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2ZmZiAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWUgNTAlLCAjZmZmIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZSA1MCUsICNmZmYgMTAwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjp0ZXh0O291dGxpbmU6MDtwYWRkaW5nLWJvdHRvbTo1cHg7cGFkZGluZy1yaWdodDo1cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi10b3A6NXB4O3BhZGRpbmc6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtjdXJzb3I6ZGVmYXVsdDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtjb2xvcjojODg4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6Ym9sZDtwYWRkaW5nOjAgNHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXJ7Y29sb3I6IzU1NTtvdXRsaW5lOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6MnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItdG9wOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JvcmRlcjoxcHggc29saWQgI2FhYTtvdXRsaW5lOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7b3V0bGluZTowO2JveC1zaGFkb3c6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnR9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZXtib3JkZXItYm90dG9tOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvd3tib3JkZXItdG9wOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uc3ttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cHtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWR7Y29sb3I6Z3JleX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiMzODc1ZDc7Y29sb3I6I2ZmZn0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXB7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTpibG9jaztwYWRkaW5nOjZweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd257Ym9yZGVyLWNvbG9yOiM1ODk3ZmJ9DQo="}},"time_used":71,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":70,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/color.php?color=52cb61","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.635Z","timestamp":1785143153635,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/color.php?color=52cb61 HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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\nx-powered-by: PHP/8.3.31\r\ncontent-type: text/css;charset=UTF-8\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-length: 154\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"name":"PHP:8.3.31","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"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":207,"size_decoded":522,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with CRLF line terminators","md5":"12d10f7ad361a4f335e4f887b4653aa7","sha1":"0fff004e29c468095ae56ff48a2c4dd3e5ce54be","sha256":"659416c5835ec67ad5eb4c75716edb57a9edd922c3efd9315537209d56809ae2","sha512":"1bba54504bf89bc353017340f2c9620e9b4619b02677b53648819607a3442d5d6fdfcb6eaee3d5533c229ff87aa5eb933d34f8d6f2ff32b8dca71b1ef9f0291e","ssdeep":"","tlshash":"a9d01213d451793e27325a1273c5131ef46422664f643cf9b9d005760fb59f77943d0a","first_seen":"2025-12-19T04:10:18.975968Z","last_seen":"2026-07-27T09:07:02.785422Z","times_seen":5,"resource_available":false,"data":"DQo6cm9vdHsNCiAgICAtLWJhc2UtaDogMTI3Ow0KICAgIC0tYmFzZS1zOiA1NCU7DQogICAgLS1iYXNlLWw6IDU2JTsNCiAgICAtLWJhc2U6IHZhcigtLWJhc2UtaCkgdmFyKC0tYmFzZS1zKSB2YXIoLS1iYXNlLWwpOw0KfQ0KDQoNCi5pbm5lci1oZXJvLXNlY3Rpb257DQogICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICMjNTJjYjYxICFpbXBvcnRhbnQ7DQp9"}},"time_used":70,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":70,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-common.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.575Z","timestamp":1785143154575,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-common.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"56cb8d5774a618e798ce9bfa00796e3e\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11054\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2c1aec1a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":242222,"size_decoded":69024,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65458)","md5":"56cb8d5774a618e798ce9bfa00796e3e","sha1":"4fe37e13d9fd4156b684752e5af938a3579bd102","sha256":"c1e2acb380d4a5818a0641bdf5eafde669fd2c86ebe49559cd7ea0030d50c196","sha512":"c651afb2b824e43dbb1548f081c6148831c39444e10358abf6109afd4649125dfe3f40cebff94892b96d973daa534185a3dd9b3b6520ff3349ca994879549d2e","ssdeep":"3072:GEIYgadYqhJrTodiWFW1WF8fMqAOACkjQiuIRxLMz9+Z15:dAiWFW1WmfMqAmkhLMz9o15","tlshash":"bc34c69df186b47606a37130501f320af23a685ab45ac4d4f636d8e1bd789cea133f79","first_seen":"2026-07-08T23:24:03.888143Z","last_seen":"2026-08-03T13:22:13.517292Z","times_seen":3129,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgdHdrLWNodW5rLWNvbW1vbi5qcy5MSUNFTlNFICovCih3aW5kb3cudGF3a0pzb25wPXdpbmRvdy50YXdrSnNvbnB8fFtdKS5wdXNoKFtbImNodW5rLWNvbW1vbiJdLHsiMDI4ZSI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI1ODY4Iikscj1uKCI3ZjQ2Iiksbz1uKCJiZGQwIiksYT1mdW5jdGlvbih0LGUpe28uYS5nZXQoIiIuY29uY2F0KCJodHRwczovL3VwbG9hZC50YXdrLnRvIiwiL3VwbG9hZC9oYW5kbGU/X3Q9IikuY29uY2F0KChuZXcgRGF0ZSkuZ2V0VGltZSgpKSxudWxsLG51bGwsKGZ1bmN0aW9uKG4saSl7aWYobilyZXR1cm4gZSgpO3QoaS5oYW5kbGUpfSkpfSxzPWZ1bmN0aW9uKHQsZSxuLGkpe3ZhciByPW5ldyBGb3JtRGF0YTtyLmFwcGVuZCgidXBsb2FkIixuLG4ubmFtZXx8bi5maWxlbmFtZSksby5hLnBvc3QoIiIuY29uY2F0KCJodHRwczovL3VwbG9hZC50YXdrLnRvIiwiL3VwbG9hZC92aXNpdG9yLWNoYXQvdmlzaXRvcj9oYW5kbGU9IikuY29uY2F0KHQsIiZ2aXNpdG9yU2Vzc2lvbklkPSIpLmNvbmNhdChlKSxyLHt9LChmdW5jdGlvbih0LGUpe2lmKHQpcmV0dXJuIGkoITApO2koZSl9KSl9LGM9bigiZjBiMCIpLHU9bigiMjdhNiIpLGw9bigiNjViMyIpLGQ9bigiYjdjYyIpLGY9bigiMjRjYSIpLGg9bigiZDNhNCIpO2Z1bmN0aW9uIHAodCl7cmV0dXJuKHA9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBtKCl7bT1mdW5jdGlvbigpe3JldHVybiBlfTt2YXIgdCxlPXt9LG49T2JqZWN0LnByb3RvdHlwZSxpPW4uaGFzT3duUHJvcGVydHkscj1PYmplY3QuZGVmaW5lUHJvcGVydHl8fGZ1bmN0aW9uKHQsZSxuKXt0W2VdPW4udmFsdWV9LG89ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbD9TeW1ib2w6e30sYT1vLml0ZXJhdG9yfHwiQEBpdGVyYXRvciIscz1vLmFzeW5jSXRlcmF0b3J8fCJAQGFzeW5jSXRlcmF0b3IiLGM9by50b1N0cmluZ1RhZ3x8IkBAdG9TdHJpbmdUYWciO2Z1bmN0aW9uIHUodCxlLG4pe3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSksdFtlXX10cnl7dSh7fSwiIil9Y2F0Y2godCl7dT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIHRbZV09bn19ZnVuY3Rpb24gbCh0LGUsbixpKXt2YXIgbz1lJiZlLnByb3RvdHlwZSBpbnN0YW5jZW9mIHc/ZTp3LGE9T2JqZWN0LmNyZWF0ZShvLnByb3RvdHlwZSkscz1uZXcgTChpfHxbXSk7cmV0dXJuIHIoYSwiX2ludm9rZSIse3ZhbHVlOkkodCxuLHMpfSksYX1mdW5jdGlvbiBkKHQsZSxuKXt0cnl7cmV0dXJue3R5cGU6Im5vcm1hbCIsYXJnOnQuY2FsbChlLG4pfX1jYXRjaCh0KXtyZXR1cm57dHlwZToidGhyb3ciLGFyZzp0fX19ZS53cmFwPWw7dmFyIGY9InN1c3BlbmRlZFN0YXJ0IixoPSJleGVjdXRpbmciLGc9ImNvbXBsZXRlZCIsdj17fTtmdW5jdGlvbiB3KCl7fWZ1bmN0aW9uIHkoKXt9ZnVuY3Rpb24gYigpe312YXIgaz17fTt1KGssYSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKTt2YXIgVD1PYmplY3QuZ2V0UHJvdG90eXBlT2YsUz1UJiZUKFQoXyhbXSkpKTtTJiZTIT09biYmaS5jYWxsKFMsYSkmJihrPVMpO3ZhciBQPWIucHJvdG90eXBlPXcucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoayk7ZnVuY3Rpb24gRSh0KXtbIm5leHQiLCJ0aHJvdyIsInJldHVybiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe3UodCxlLChmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5faW52b2tlKGUsdCl9KSl9KSl9ZnVuY3Rpb24gTyh0LGUpe2Z1bmN0aW9uIG4ocixvLGEscyl7dmFyIGM9ZCh0W3JdLHQsbyk7aWYoInRocm93IiE9PWMudHlwZSl7dmFyIHU9Yy5hcmcsbD11LnZhbHVlO3JldHVybiBsJiYib2JqZWN0Ij09cChsKSYmaS5jYWxsKGwsIl9fYXdhaXQiKT9lLnJlc29sdmUobC5fX2F3YWl0KS50aGVuKChmdW5jdGlvbih0KXtuKCJuZXh0Iix0LGEscyl9KSwoZnVuY3Rpb24odCl7bigidGhyb3ciLHQsYSxzKX0pKTplLnJlc29sdmUobCkudGhlbigoZnVuY3Rpb24odCl7dS52YWx1ZT10LGEodSl9KSwoZnVuY3Rpb24odCl7cmV0dXJuIG4oInRocm93Iix0LGEscyl9KSl9cyhjLmFyZyl9dmFyIG87cih0aGlzLCJfaW52b2tlIix7dmFsdWU6ZnVuY3Rpb24odCxpKXtmdW5jdGlvbiByKCl7cmV0dXJuIG5ldyBlKChmdW5jdGlvbihlLHIpe24odCxpLGUscil9KSl9cmV0dXJuIG89bz9vLnRoZW4ocixyKTpyKCl9fSl9ZnVuY3Rpb24gSShlLG4saSl7dmFyIHI9ZjtyZXR1cm4gZnVuY3Rpb24obyxhKXtpZihyPT09aCl0aHJvdyBFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZyIpO2lmKHI9PT1nKXtpZigidGhyb3ciPT09byl0aHJvdyBhO3JldHVybnt2YWx1ZTp0LGRvbmU6ITB9fWZvcihpLm1ldGhvZD1vLGkuYXJnPWE7Oyl7dmFyIHM9aS5kZWxlZ2F0ZTtpZihzKXt2YXIgYz1DKHMsaSk7aWYoYyl7aWYoYz09PXYpY29udGludWU7cmV0dXJuIGN9fWlmKCJuZXh0Ij09PWkubWV0aG9kKWkuc2VudD1pLl9zZW50PWkuYXJnO2Vsc2UgaWYoInRocm93Ij09PWkubWV0aG9kKXtpZihyPT09Zil0aHJvdyByPWcsaS5hcmc7aS5kaXNwYXRjaEV4Y2VwdGlvbihpLmFyZyl9ZWxzZSJyZXR1cm4iPT09aS5tZXRob2QmJmkuYWJydXB0KCJyZXR1cm4iLGkuYXJnKTtyPWg7dmFyIHU9ZChlLG4saSk7aWYoIm5vcm1hbCI9PT11LnR5cGUpe2lmKHI9aS5kb25lP2c6InN1c3BlbmRlZFlpZWxkIix1LmFyZz09PXYpY29udGludWU7cmV0dXJue3ZhbHVlOnUuYXJnLGRvbmU6aS5kb25lfX0idGhyb3ciPT09dS50eXBlJiYocj1nLGkubWV0aG9kPSJ0aHJvdyIsaS5hcmc9dS5hcmcpfX19ZnVuY3Rpb24gQyhlLG4pe3ZhciBpPW4ubWV0aG9kLHI9ZS5pdGVyYXRvcltpXTtpZihyPT09dClyZXR1cm4gbi5kZWxlZ2F0ZT1udWxsLCJ0aHJvdyI9PT1pJiZlLml0ZXJhdG9yLnJldHVybiYmKG4ubWV0aG9kPSJyZXR1cm4iLG4uYXJnPXQsQyhlLG4pLCJ0aHJvdyI9PT1uLm1ldGhvZCl8fCJyZXR1cm4iIT09aSYmKG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9bmV3IFR5cGVFcnJvcigiVGhlIGl0ZXJhdG9yIGRvZXMgbm90IHByb3ZpZGUgYSAnIitpKyInIG1ldGhvZCIpKSx2O3ZhciBvPWQocixlLml0ZXJhdG9yLG4uYXJnKTtpZigidGhyb3ciPT09by50eXBlKXJldHVybiBuLm1ldGhvZD0idGhyb3ciLG4uYXJnPW8uYXJnLG4uZGVsZWdhdGU9bnVsbCx2O3ZhciBhPW8uYXJnO3JldHVybiBhP2EuZG9uZT8obltlLnJlc3VsdE5hbWVdPWEudmFsdWUsbi5uZXh0PWUubmV4dExvYywicmV0dXJuIiE9PW4ubWV0aG9kJiYobi5tZXRob2Q9Im5leHQiLG4uYXJnPXQpLG4uZGVsZWdhdGU9bnVsbCx2KTphOihuLm1ldGhvZD0idGhyb3ciLG4uYXJnPW5ldyBUeXBlRXJyb3IoIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0Iiksbi5kZWxlZ2F0ZT1udWxsLHYpfWZ1bmN0aW9uIHgodCl7dmFyIGU9e3RyeUxvYzp0WzBdfTsxIGluIHQmJihlLmNhdGNoTG9jPXRbMV0pLDIgaW4gdCYmKGUuZmluYWxseUxvYz10WzJdLGUuYWZ0ZXJMb2M9dFszXSksdGhpcy50cnlFbnRyaWVzLnB1c2goZSl9ZnVuY3Rpb24gQSh0KXt2YXIgZT10LmNvbXBsZXRpb258fHt9O2UudHlwZT0ibm9ybWFsIixkZWxldGUgZS5hcmcsdC5jb21wbGV0aW9uPWV9ZnVuY3Rpb24gTCh0KXt0aGlzLnRyeUVudHJpZXM9W3t0cnlMb2M6InJvb3QifV0sdC5mb3JFYWNoKHgsdGhpcyksdGhpcy5yZXNldCghMCl9ZnVuY3Rpb24gXyhlKXtpZihlfHwiIj09PWUpe3ZhciBuPWVbYV07aWYobilyZXR1cm4gbi5jYWxsKGUpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlLm5leHQpcmV0dXJuIGU7aWYoIWlzTmFOKGUubGVuZ3RoKSl7dmFyIHI9LTEsbz1mdW5jdGlvbiBuKCl7Zm9yKDsrK3I8ZS5sZW5ndGg7KWlmKGkuY2FsbChlLHIpKXJldHVybiBuLnZhbHVlPWVbcl0sbi5kb25lPSExLG47cmV0dXJuIG4udmFsdWU9dCxuLmRvbmU9ITAsbn07cmV0dXJuIG8ubmV4dD1vfX10aHJvdyBuZXcgVHlwZUVycm9yKHAoZSkrIiBpcyBub3QgaXRlcmFibGUiKX1yZXR1cm4geS5wcm90b3R5cGU9YixyKFAsImNvbnN0cnVjdG9yIix7dmFsdWU6Yixjb25maWd1cmFibGU6ITB9KSxyKGIsImNvbnN0cnVjdG9yIix7dmFsdWU6eSxjb25maWd1cmFibGU6ITB9KSx5LmRpc3BsYXlOYW1lPXUoYixjLCJHZW5lcmF0b3JGdW5jdGlvbiIpLGUuaXNHZW5lcmF0b3JGdW5jdGlvbj1mdW5jdGlvbih0KXt2YXIgZT0iZnVuY3Rpb24iPT10eXBlb2YgdCYmdC5jb25zdHJ1Y3RvcjtyZXR1cm4hIWUmJihlPT09eXx8IkdlbmVyYXRvckZ1bmN0aW9uIj09PShlLmRpc3BsYXlOYW1lfHxlLm5hbWUpKX0sZS5tYXJrPWZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mKHQsYik6KHQuX19wcm90b19fPWIsdSh0LGMsIkdlbmVyYXRvckZ1bmN0aW9uIikpLHQucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoUCksdH0sZS5hd3JhcD1mdW5jdGlvbih0KXtyZXR1cm57X19hd2FpdDp0fX0sRShPLnByb3RvdHlwZSksdShPLnByb3RvdHlwZSxzLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpLGUuQXN5bmNJdGVyYXRvcj1PLGUuYXN5bmM9ZnVuY3Rpb24odCxuLGkscixvKXt2b2lkIDA9PT1vJiYobz1Qcm9taXNlKTt2YXIgYT1uZXcgTyhsKHQsbixpLHIpLG8pO3JldHVybiBlLmlzR2VuZXJhdG9yRnVuY3Rpb24obik/YTphLm5leHQoKS50aGVuKChmdW5jdGlvbih0KXtyZXR1cm4gdC5kb25lP3QudmFsdWU6YS5uZXh0KCl9KSl9LEUoUCksdShQLGMsIkdlbmVyYXRvciIpLHUoUCxhLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpLHUoUCwidG9TdHJpbmciLChmdW5jdGlvbigpe3JldHVybiJbb2JqZWN0IEdlbmVyYXRvcl0ifSkpLGUua2V5cz1mdW5jdGlvbih0KXt2YXIgZT1PYmplY3QodCksbj1bXTtmb3IodmFyIGkgaW4gZSluLnB1c2goaSk7cmV0dXJuIG4ucmV2ZXJzZSgpLGZ1bmN0aW9uIHQoKXtmb3IoO24ubGVuZ3RoOyl7dmFyIGk9bi5wb3AoKTtpZihpIGluIGUpcmV0dXJuIHQudmFsdWU9aSx0LmRvbmU9ITEsdH1yZXR1cm4gdC5kb25lPSEwLHR9fSxlLnZhbHVlcz1fLEwucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpMLHJlc2V0OmZ1bmN0aW9uKGUpe2lmKHRoaXMucHJldj0wLHRoaXMubmV4dD0wLHRoaXMuc2VudD10aGlzLl9zZW50PXQsdGhpcy5kb25lPSExLHRoaXMuZGVsZWdhdGU9bnVsbCx0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5hcmc9dCx0aGlzLnRyeUVudHJpZXMuZm9yRWFjaChBKSwhZSlmb3IodmFyIG4gaW4gdGhpcykidCI9PT1uLmNoYXJBdCgwKSYmaS5jYWxsKHRoaXMsbikmJiFpc05hTigrbi5zbGljZSgxKSkmJih0aGlzW25dPXQpfSxzdG9wOmZ1bmN0aW9uKCl7dGhpcy5kb25lPSEwO3ZhciB0PXRoaXMudHJ5RW50cmllc1swXS5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT10LnR5cGUpdGhyb3cgdC5hcmc7cmV0dXJuIHRoaXMucnZhbH0sZGlzcGF0Y2hFeGNlcHRpb246ZnVuY3Rpb24oZSl7aWYodGhpcy5kb25lKXRocm93IGU7dmFyIG49dGhpcztmdW5jdGlvbiByKGkscil7cmV0dXJuIHMudHlwZT0idGhyb3ciLHMuYXJnPWUsbi5uZXh0PWksciYmKG4ubWV0aG9kPSJuZXh0IixuLmFyZz10KSwhIXJ9Zm9yKHZhciBvPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtvPj0wOy0tbyl7dmFyIGE9dGhpcy50cnlFbnRyaWVzW29dLHM9YS5jb21wbGV0aW9uO2lmKCJyb290Ij09PWEudHJ5TG9jKXJldHVybiByKCJlbmQiKTtpZihhLnRyeUxvYzw9dGhpcy5wcmV2KXt2YXIgYz1pLmNhbGwoYSwiY2F0Y2hMb2MiKSx1PWkuY2FsbChhLCJmaW5hbGx5TG9jIik7aWYoYyYmdSl7aWYodGhpcy5wcmV2PGEuY2F0Y2hMb2MpcmV0dXJuIHIoYS5jYXRjaExvYywhMCk7aWYodGhpcy5wcmV2PGEuZmluYWxseUxvYylyZXR1cm4gcihhLmZpbmFsbHlMb2MpfWVsc2UgaWYoYyl7aWYodGhpcy5wcmV2PGEuY2F0Y2hMb2MpcmV0dXJuIHIoYS5jYXRjaExvYywhMCl9ZWxzZXtpZighdSl0aHJvdyBFcnJvcigidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHkiKTtpZih0aGlzLnByZXY8YS5maW5hbGx5TG9jKXJldHVybiByKGEuZmluYWxseUxvYyl9fX19LGFicnVwdDpmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7bj49MDstLW4pe3ZhciByPXRoaXMudHJ5RW50cmllc1tuXTtpZihyLnRyeUxvYzw9dGhpcy5wcmV2JiZpLmNhbGwociwiZmluYWxseUxvYyIpJiZ0aGlzLnByZXY8ci5maW5hbGx5TG9jKXt2YXIgbz1yO2JyZWFrfX1vJiYoImJyZWFrIj09PXR8fCJjb250aW51ZSI9PT10KSYmby50cnlMb2M8PWUmJmU8PW8uZmluYWxseUxvYyYmKG89bnVsbCk7dmFyIGE9bz9vLmNvbXBsZXRpb246e307cmV0dXJuIGEudHlwZT10LGEuYXJnPWUsbz8odGhpcy5tZXRob2Q9Im5leHQiLHRoaXMubmV4dD1vLmZpbmFsbHlMb2Msdik6dGhpcy5jb21wbGV0ZShhKX0sY29tcGxldGU6ZnVuY3Rpb24odCxlKXtpZigidGhyb3ciPT09dC50eXBlKXRocm93IHQuYXJnO3JldHVybiJicmVhayI9PT10LnR5cGV8fCJjb250aW51ZSI9PT10LnR5cGU/dGhpcy5uZXh0PXQuYXJnOiJyZXR1cm4iPT09dC50eXBlPyh0aGlzLnJ2YWw9dGhpcy5hcmc9dC5hcmcsdGhpcy5tZXRob2Q9InJldHVybiIsdGhpcy5uZXh0PSJlbmQiKToibm9ybWFsIj09PXQudHlwZSYmZSYmKHRoaXMubmV4dD1lKSx2fSxmaW5pc2g6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIG49dGhpcy50cnlFbnRyaWVzW2VdO2lmKG4uZmluYWxseUxvYz09PXQpcmV0dXJuIHRoaXMuY29tcGxldGUobi5jb21wbGV0aW9uLG4uYWZ0ZXJMb2MpLEEobiksdn19LGNhdGNoOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciBuPXRoaXMudHJ5RW50cmllc1tlXTtpZihuLnRyeUxvYz09PXQpe3ZhciBpPW4uY29tcGxldGlvbjtpZigidGhyb3ciPT09aS50eXBlKXt2YXIgcj1pLmFyZztBKG4pfXJldHVybiByfX10aHJvdyBFcnJvcigiaWxsZWdhbCBjYXRjaCBhdHRlbXB0Iil9LGRlbGVnYXRlWWllbGQ6ZnVuY3Rpb24oZSxuLGkpe3JldHVybiB0aGlzLmRlbGVnYXRlPXtpdGVyYXRvcjpfKGUpLHJlc3VsdE5hbWU6bixuZXh0TG9jOml9LCJuZXh0Ij09PXRoaXMubWV0aG9kJiYodGhpcy5hcmc9dCksdn19LGV9ZnVuY3Rpb24gZyh0LGUsbixpLHIsbyxhKXt0cnl7dmFyIHM9dFtvXShhKSxjPXMudmFsdWV9Y2F0Y2godCl7cmV0dXJuIHZvaWQgbih0KX1zLmRvbmU/ZShjKTpQcm9taXNlLnJlc29sdmUoYykudGhlbihpLHIpfWZ1bmN0aW9uIHYodCxlKXt2YXIgbj1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLG4ucHVzaC5hcHBseShuLGkpfXJldHVybiBufWZ1bmN0aW9uIHcodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIG49bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/dihPYmplY3QobiksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3kodCxlLG5bZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobikpOnYoT2JqZWN0KG4pKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24geSh0LGUsbil7cmV0dXJuKGU9ayhlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPW4sdH1mdW5jdGlvbiBiKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxrKGkua2V5KSxpKX19ZnVuY3Rpb24gayh0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1wKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9cChpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1wKGUpP2U6ZSsiIn1lLmE9bmV3KGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmYih0LnByb3RvdHlwZSxlKSxuJiZiKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXsoZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0pKHRoaXMsdCksdGhpcy5rZXlEb3duVGltZW91dD1udWxsLHRoaXMud2VicnRjV2luPW51bGwsdGhpcy5tYXhOdW1iZXJGaWxlVXBsb2FkPTUsdGhpcy5tYXhTaXplRmlsZVVwbG9hZD01MjQyODgwMCx0aGlzLnJlZ1N1cnZleT0vXFtvcHRpb25cXSguKj8pKDxiclwvPnwkKS9nbSx0aGlzLnJlZ1N1cnZleVF1ZXN0aW9uPS9eKFtcc1xTXSo/KVxbb3B0aW9uXF0vLHRoaXMucmVnT3B0aW9uPS9cW29wdGlvblxdL2d9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93O3QucHJvdG90eXBlLiRUYXdrQ2hhdE1hbmFnZXI9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJwcm9jZXNzSGlzdG9yeU1lc3NhZ2VzIix2YWx1ZTpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcyxuPVtdLGk9e30sbz1udWxsLGE9ITEscz0hMSx1PSExLGw9ZnVuY3Rpb24oKXt2YXIgbCxmLGgscCxtPSExLGc9bnVsbCx2PXRbZF0seT1jLkhlbHBlci5nZW5lcmF0ZVVVSUQoKSxiPW5ldyBEYXRlKHYuY28pLmdldFRpbWUoKSxrPXt9O2lmKCJXRUJSVENfQ0FMTCI9PT12Lm0mJnYubWQmJnYubWQud2VicnRjJiYobT0hMCxnPXYubWQuY2xpZCksIm4iPT09di50JiYiV0VCUlRDX0NBTEwiIT09di5tKXJldHVybiJBR0VOVF9KT0lOX0NPTlZFUlNBVElPTiI9PT12Lm0mJnYubWQmJihpW3YubWQucnNjXT12Lm1kKSwwO2lmKHYubWQmJnYubWQuYW8pcmV0dXJuIDA7aWYocD12Lm4sbD12LnVpZCwiYSI9PT12LnV0KXt2YXIgVD1pW3YubWQucnNjXTtUJiYobD1ULnBpZCxmPVQucGk/IiIuY29uY2F0KCJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vdGF3ay10by1waSIsIi8iKS5jb25jYXQoVC5waSk6IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIiwiL2ltYWdlcy9kZWZhdWx0LXByb2ZpbGUuc3ZnIikpfWVsc2UicyI9PT12LnV0JiYobD1jLkhlbHBlci5nZW5lcmF0ZVVVSUQoKSxmPXYubWQmJnYubWQucGk/IiIuY29uY2F0KCJodHRwczovL3Rhd2subGluayIsIi8iKS5jb25jYXQodi5tZC5waSk6IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIiwiL2ltYWdlcy9kZWZhdWx0LXByb2ZpbGUuc3ZnIikpO2lmKHYuYXR0Y2hzJiZBcnJheS5pc0FycmF5KHYuYXR0Y2hzKSYmdi5hdHRjaHMuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIG49dC50eXBlOyJzdWdnZXN0ZWQtbWVzc2FnZXMiPT09bj8odT0hMCxvPXtvcHRpb25zOnQuY29udGVudC5vcHRpb25zfSk6ImZpbGUiPT09bj9rPWUucHJvY2Vzc0ZpbGUodik6InRpY2tldC1mb3JtIj09PW4/YT0hMDoibGVhZC1jYXB0dXJlLWZvcm0iPT09biYmKHM9ITApfSkpLHV8fCJ2Ij09PXYudXQpaD1yLmEucmF3RW5jb2RlKGUucGFyc2VUZXh0KHYubSkpO2Vsc2V7dmFyIFM9ZS5wYXJzZVN1cnZleSh2Lm0pLFA9Uy5wYXJzZWRNZXNzYWdlLEU9Uy5zdXJ2ZXlPcHRpb25zO2g9ci5hLnJhd0VuY29kZShQKSxFJiYobz17b3B0aW9uczpFfSl9bi5wdXNoKHcodyh7fSxrKSx7fSx7dGltZVN0YW1wOmIsbWVzc2FnZTpofHwiIixuYW1lOnAsdHlwZTp2LnQsdGltZTp2LmNvLGRhdGE6di5tZCxpc1BlbmRpbmc6ITEsc2VuZGVyVHlwZTp2LnV0LG93bmVySWQ6bCxwcm9maWxlSW1hZ2U6ZixjdmVyOnYuY3ZlcixtZXNzYWdlSWQ6eSxpc0NhbGxWaWV3Om0sY2FsbElkOmcsY2FsbERhdGE6bnVsbCxzdXJ2ZXlPYmo6byxyYXdNZXNzYWdlOnYsaGFzSW5saW5lVGlja2V0Rm9ybTphLGhhc0lubGluZUxlYWRDYXB0dXJlRm9ybTpzfSkpfSxkPTA7ZDx0Lmxlbmd0aDtkKyspbCgpO3JldHVybiBufX0se2tleToicGFyc2VDaGF0TWVzc2FnZSIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbixpLG8sYSxzLHU9dGhpcyxsPSExLGY9bnVsbCxwPXt9LG09bnVsbCxnPW51bGwsdj1udWxsLHk9ITEsYj0hMSxrPSExLFQ9Yy5IZWxwZXIuZ2VuZXJhdGVVVUlEKCksUz1uZXcgRGF0ZSh0LmNvKS5nZXRUaW1lKCksUD0hIWUmJiEhdGhpcy5zdG9yZS5nZXR0ZXJzWyJjaGF0L2NoYXRUcmFuc2ZlckRhdGEiXTtpZih0Lm49ci5hLnJhd0RlY29kZSh0Lm4pLCJuIj09PXQudCYmKCJBR0VOVF9KT0lOX0NPTlZFUlNBVElPTiI9PT10Lm18fCJBR0VOVF9MRUZUX0NPTlZFUlNBVElPTiI9PT10Lm0pKXJldHVybiB0aGlzLnVwZGF0ZUFnZW50UHJlc2VuY2UodCxlKSx0aGlzLnN0b3JlLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZUNoYXRNZXNzYWdlIix7cmF3TWVzc2FnZTp0LHR5cGU6Im4ifSksUCYmIkFHRU5UX0pPSU5fQ09OVkVSU0FUSU9OIj09PXQubSYmdGhpcy5zdG9yZS5jb21taXQoImNoYXQvc2V0Q2hhdFRyYW5zZmVyRGF0YSIsbnVsbCksbnVsbDtpZigibiI9PT10LnQmJiJDSEFUX0VOREVEIj09PXQubSYmZSlyZXR1cm4gdGhpcy5zdG9yZS5kaXNwYXRjaCgiY2hhdC9oYW5kbGVJbmNvbWluZ0NoYXRFbmQiLHQpLG51bGw7aWYoIm4iPT09dC50JiYiQ0hBVF9UUkFOU0ZFUiI9PT10Lm0pcmV0dXJuIHRoaXMuc3RvcmUuZGlzcGF0Y2goImNoYXQvdXBkYXRlQ2hhdE1lc3NhZ2UiLHtyYXdNZXNzYWdlOnQsdHlwZToibiJ9KSxQPSJhY3RpdmUiPT09KG51bGw9PT0oYT10Lm1kKXx8dm9pZCAwPT09YXx8bnVsbD09PShhPWEudHJhbnNmZXIpfHx2b2lkIDA9PT1hP3ZvaWQgMDphLnN0YXR1cyksbnVsbDtpZigibiI9PT10LnQmJiJ2Ij09PXQudXQpe2lmKCJWSVNJVE9SX1JBVElORyIhPT10Lm0pcmV0dXJuOyJWSVNJVE9SX1JBVElORyI9PT10Lm0mJihlJiZ0aGlzLmNoYW5nZVJhdGluZyh0Lm1kLnJ0LCEwKSx0Lm1kLnJ0PDA/KHQubT0idGh1bWJzLWRvd24iLHQudD0iYyIpOnQubWQucnQ+MD8odC5tPSJ0aHVtYnMtdXAiLHQudD0iYyIpOnQubT1oLmEuJGkxOG4oImNoYXQiLCJyZW1vdmVfcmF0ZSIpKX1pZigidiI9PT10LnV0KW49dGhpcy5zdG9yZS5nZXR0ZXJzWyJ2aXNpdG9yL2Rpc3BsYXlOYW1lIl0saT10LnVpZDtlbHNlIGlmKG49dC5uLCJhIj09PXQudXQpe3ZhciBFPXRoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC9hZ2VudHMiXTtFW3QubWQucnNjXSYmKGk9RVt0Lm1kLnJzY10ucHJvZmlsZUlkKTt2YXIgTz10aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvYWdlbnRQcm9maWxlIl0odC5tZC5yc2MpO289Tz9PLnByb2ZpbGVJbWFnZTpudWxsfWVsc2UicyI9PT10LnV0JiYobz10Lm1kJiZ0Lm1kLnBpPyIiLmNvbmNhdCgiaHR0cHM6Ly90YXdrLmxpbmsiLCIvIikuY29uY2F0KHQubWQucGkpOiIiLmNvbmNhdCgiaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cyIsIi9pbWFnZXMvZGVmYXVsdC1wcm9maWxlLnN2ZyIpKTtpZih0LmF0dGNocyYmQXJyYXkuaXNBcnJheSh0LmF0dGNocykmJnQuYXR0Y2hzLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPWUudHlwZTsic3VnZ2VzdGVkLW1lc3NhZ2VzIj09PW4/KGs9ITAsbT17b3B0aW9uczplLmNvbnRlbnQub3B0aW9uc30pOiJmaWxlIj09PW4/cD11LnByb2Nlc3NGaWxlKHQpOiJ0aWNrZXQtZm9ybSI9PT1uPyh5PSEwLGc9ZS5jb250ZW50LnJlZik6ImxlYWQtY2FwdHVyZS1mb3JtIj09PW4mJihiPSEwLHY9ZS5jb250ZW50LnJlZil9KSksIldFQlJUQ19DQUxMIj09PXQubSYmdC5tZCYmdC5tZC53ZWJydGMpbD0hMCxmPXQubWQuY2xpZDtlbHNle2lmKCJjIj09PXQudClpZigidiI9PT10LnV0KXRoaXMuc3RvcmUuY29tbWl0KCJjaGF0L3NldFZpc2l0b3JIYXNNZXNzYWdlZCIsITApO2Vsc2UgaWYoImEiPT09dC51dCl7aWYodGhpcy5zdG9yZS5jb21taXQoImNoYXQvc2V0QWdlbnRIYXNNZXNzYWdlZCIsITApLGUpe3ZhciBJPXttZXNzYWdlOnIuYS5yYXdEZWNvZGVIVE1MU3ltYm9scyh0Lm0pLGF0dGFjaG1lbnRzOnQuYXR0Y2hzP3QuYXR0Y2hzOltdfTswPT09dC5tLmxlbmd0aCYmZGVsZXRlIEkubWVzc2FnZSxkLmEudHJpZ2dlckFwaUhhbmRsZXJzKCJvbkNoYXRNZXNzYWdlQWdlbnQiLEkpfX1lbHNlIGlmKCJzIj09PXQudXQmJmUpe3ZhciBDPXttZXNzYWdlOnIuYS5yYXdEZWNvZGVIVE1MU3ltYm9scyh0Lm0pLGF0dGFjaG1lbnRzOnQuYXR0Y2hzP3QuYXR0Y2hzOltdfTswPT09dC5tLmxlbmd0aCYmZGVsZXRlIEMubWVzc2FnZSxkLmEudHJpZ2dlckFwaUhhbmRsZXJzKCJvbkNoYXRNZXNzYWdlU3lzdGVtIixDKX1pZihrfHwidiI9PT10LnV0KXM9dGhpcy5wYXJzZVRleHQodC5tKTtlbHNle3ZhciB4PXRoaXMucGFyc2VTdXJ2ZXkodC5tKSxBPXgucGFyc2VkTWVzc2FnZSxMPXguc3VydmV5T3B0aW9ucztzPXIuYS5yYXdEZWNvZGVIVE1MU3ltYm9scyhBKSxMJiYobT17b3B0aW9uczpMfSl9fXJldHVybiBTPnRoaXMuc3RvcmUuZ2V0dGVyc1sic2Vzc2lvbi9sYXN0TWVzc2FnZVRpbWVzdGFtcCJdJiYoInYiPT09dC51dD90aGlzLnN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRMYXN0TWVzc2FnZVRpbWVzdGFtcCIsUyk6KHRoaXMuc3RvcmUuZGlzcGF0Y2goImNoYXQvdXBkYXRlVW5zZWVuTWVzc2FnZXMiLFQpLGUmJmQuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uVW5yZWFkQ291bnRDaGFuZ2VkIix0aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvdW5yZWFkTWVzc2FnZUNvdW50Il0pKSkscD13KHcoe30scCkse30se3RpbWVTdGFtcDpTLG1lc3NhZ2U6cyxuYW1lOm4sdHlwZTp0LnQsdGltZTp0LmNvLGRhdGE6dC5tZCxpc1BlbmRpbmc6IVMsc2VuZGVyVHlwZTp0LnV0LG93bmVySWQ6aSxwcm9maWxlSW1hZ2U6byxjdmVyOnQuY3ZlcixtZXNzYWdlSWQ6VCxpc0NhbGxWaWV3OmwsY2FsbElkOmYsY2FsbERhdGE6bnVsbCxzdXJ2ZXlPYmo6bSxyYXdNZXNzYWdlOnQsdGlja2V0Rm9ybVJlZjpnLGhhc0lubGluZVRpY2tldEZvcm06eSxsZWFkRm9ybVJlZjp2LGhhc0lubGluZUxlYWRDYXB0dXJlRm9ybTpifSl9fSx7a2V5OiJwcm9jZXNzRmlsZSIsdmFsdWU6ZnVuY3Rpb24odCl7aWYodC5hdHRjaHMmJkFycmF5LmlzQXJyYXkodC5hdHRjaHMpKXt2YXIgZT17aW1hZ2VzOltdLHZpZGVvczpbXSxhdWRpb3M6W10sZmlsZXM6W119O3JldHVybiB0LmF0dGNocy5mb3JFYWNoKChmdW5jdGlvbih0KXtpZigiZmlsZSI9PT10LnR5cGUpe3ZhciBuPXQuY29udGVudC5maWxlOy0xIT09WyJpbWFnZS9qcGVnIiwiaW1hZ2UvcG5nIiwiaW1hZ2UvZ2lmIl0uaW5kZXhPZihuLm1pbWVUeXBlKT9lLmltYWdlcy5wdXNoKHtzb3VyY2U6bi51cmwsbmFtZTpyLmEucmF3RW5jb2RlKG4ubmFtZSl9KTotMSE9PVsidmlkZW8vbXA0IiwidmlkZW8vb2dnIiwidmlkZW8vd2VibSJdLmluZGV4T2Yobi5taW1lVHlwZSk/ZS52aWRlb3MucHVzaCh7c291cmNlOiJzZWxmaG9zdGVkIix1cmw6bi51cmwsbmFtZTpyLmEucmF3RW5jb2RlKG4ubmFtZSksc2l6ZTppLmEuZm9ybWF0RmlsZVNpemUobi5zaXplKSxvcHRpb25zOntjb250cm9sczoiIixtdXRlOiEwLGxvb3A6ITEsc3RhcnRUaW1lOjB9fSk6LTEhPT1bImF1ZGlvL21wMyIsImF1ZGlvL29nZyIsImF1ZGlvL21wZWciLCJhdWRpby93YXYiXS5pbmRleE9mKG4ubWltZVR5cGUpP2UuYXVkaW9zLnB1c2goe3NvdXJjZTpuLnVybCx0eXBlOm4ubWltZVR5cGUsbmFtZTpyLmEucmF3RW5jb2RlKG4ubmFtZSksc2l6ZTppLmEuZm9ybWF0RmlsZVNpemUobi5zaXplKX0pOmUuZmlsZXMucHVzaCh7c291cmNlOm4udXJsLG5hbWU6ci5hLnJhd0VuY29kZShuLm5hbWUpLHNpemU6aS5hLmZvcm1hdEZpbGVTaXplKG4uc2l6ZSl9KX19KSkse2F0dGNoczplfX19fSx7a2V5OiJwYXJzZVRleHQiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV07aWYoIXQpcmV0dXJuIHQ7aWYoci5hLmhhc01hcmtkb3duKHQpKXJldHVybiByLmEucmF3RW5jb2RlKHQpO2Zvcih2YXIgbj10LnNwbGl0KCJcbiIpLGk9MDtpPG4ubGVuZ3RoO2krKyllfHwobltpXT10aGlzLmNyZWF0ZVVybChuW2ldLnNwbGl0KCIgIiksIiAiKSk7cmV0dXJuIHQ9bi5qb2luKCJcbiIpfX0se2tleToiY3JlYXRlVXJsIix2YWx1ZTpmdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10aGlzLHI9MDtyPHQubGVuZ3RoO3IrKyl0W3JdLm1hdGNoKGkuYS5yZWdFbWFpbE1hdGNoKT90W3JdPXRbcl0ucmVwbGFjZShpLmEucmVnRW1haWxNYXRjaCwoZnVuY3Rpb24odCl7cmV0dXJuIG4ucGFyc2VFbWFpbCh0KX0pKTp0W3JdLm1hdGNoKGkuYS5yZWdUZWxNYXRjaCk/dFtyXT10W3JdLnJlcGxhY2UoaS5hLnJlZ1RlbE1hdGNoLChmdW5jdGlvbih0KXtyZXR1cm4gbi5wYXJzZVBob25lTnVtYmVyKHQpfSkpOih0W3JdPXRbcl0ucmVwbGFjZShpLmEucmVnTWF0Y2hVcmwsKGZ1bmN0aW9uKHQpe3JldHVybiBuLnBhcnNlVXJsKHQpfSkpLHRbcl09dFtyXS5yZXBsYWNlKGkuYS5yZWdNYXRjaElwLChmdW5jdGlvbih0KXtyZXR1cm4gbi5wYXJzZVVybCh0KX0pKSk7cmV0dXJuIHQuam9pbihlKX19LHtrZXk6InBhcnNlVXJsIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZSxuPSIiO2lmKHZvaWQgMCE9PXdpbmRvdy5lbW9qaW9uZSYmd2luZG93LmVtb2ppb25lLnVuaWZ5VW5pY29kZSh0KSE9PXQpcmV0dXJuIHQ7dmFyIG89ci5hLmhhc1B1bmN0dWF0aW9uKHQpO2lmKG8mJm8ubGVuZ3RoKXt2YXIgYT1vWzBdLnJlcGxhY2UoL1stW1xde30oKSorPy4sXFxeJHwjXHNdL2csIlxcJCYiKSxzPW5ldyBSZWdFeHAoYSsiJCIsImciKTt0PXQucmVwbGFjZShzLCIiKX12YXIgYz0iIi5jb25jYXQobyYmby5sZW5ndGg/b1swXToiIiwiICIpO3JldHVybiB0Lm1hdGNoKGkuYS5yZWdFbWFpbE1hdGNoKSYmKG49Im1haWx0bzoiKSwibWFpbHRvOiI9PT1uPygtMSE9PShlPXQubWF0Y2goaS5hLnJlZ0VtYWlsTWF0Y2gpWzBdKS5pbmRleE9mKCJtYWlsdG8iKSYmKG49IiIpLHQucmVwbGFjZShpLmEucmVnRW1haWxNYXRjaCwiWyIuY29uY2F0KGUsIl0oIikuY29uY2F0KG4rZSwiKSIpLmNvbmNhdChjKSkpOigwIT09dC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImh0dHAiKSYmMCE9PXQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJmdHAiKSYmKG49Imh0dHA6Ly8iKSwiX3BhcmVudCI9PSh0aGlzLnBhcnNlVXJsSG9zdE5hbWUoZG9jdW1lbnQubG9jYXRpb24uaHJlZik9PT10aGlzLnBhcnNlVXJsSG9zdE5hbWUodCk/Il9wYXJlbnQiOiJfYmxhbmsiKT8iX1siLmNvbmNhdCh0LCJdKCIpLmNvbmNhdChuK3QsIikiKS5jb25jYXQoYyk6IlsiLmNvbmNhdCh0LCJdKCIpLmNvbmNhdChuK3QsIikiKS5jb25jYXQoYykpfX0se2tleToicGFyc2VVcmxIb3N0TmFtZSIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dC5tYXRjaCgvOlwvXC8od3d3WzAtOV0/XC4pPyguW14vOl0rKS9pKTtpZihudWxsIT1lJiZlLmxlbmd0aD4yJiYic3RyaW5nIj09dHlwZW9mIGVbMl0mJmVbMl0ubGVuZ3RoPjApcmV0dXJuIGVbMl19fSx7a2V5OiJwYXJzZUVtYWlsIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT0iIjtyZXR1cm4gdm9pZCAwIT09d2luZG93LmVtb2ppb25lJiZ3aW5kb3cuZW1vamlvbmUudW5pZnlVbmljb2RlKHQpIT09dD90OigtMT09PXQuaW5kZXhPZigibWFpbHRvIikmJihlPSJtYWlsdG86IiksIlsiLmNvbmNhdCh0LCJdKCIpLmNvbmNhdChlK3QsIikiKSl9fSx7a2V5OiJwYXJzZVN1cnZleSIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dC5tYXRjaCh0aGlzLnJlZ1N1cnZleVF1ZXN0aW9uKTtpZihudWxsPT09ZSlyZXR1cm57cGFyc2VkTWVzc2FnZTp0aGlzLnBhcnNlVGV4dCh0KSxzdXJ2ZXlPcHRpb25zOm51bGx9O3ZhciBuPXRoaXMucGFyc2VUZXh0KHIuYS50cmltKGVbMV0pKSxvPVtdLGE9dC5tYXRjaCh0aGlzLnJlZ1N1cnZleSk7aWYoIWEpcmV0dXJue3BhcnNlZE1lc3NhZ2U6bixzdXJ2ZXlPcHRpb25zOm51bGx9O2Zvcih2YXIgcz0wLGM9YS5sZW5ndGg7czxjO3MrKyl7dmFyIHU9YVtzXS5yZXBsYWNlKHRoaXMucmVnT3B0aW9uLCIiKTt1PXUucmVwbGFjZShpLmEucmVnQnIsIiIpLHU9ci5hLnRyaW0odSksby5wdXNoKHt0ZXh0OnV9KX1yZXR1cm57cGFyc2VkTWVzc2FnZTpuLHN1cnZleU9wdGlvbnM6b319fSx7a2V5OiJ1cGRhdGVBZ2VudFByZXNlbmNlIix2YWx1ZTpmdW5jdGlvbih0LGUpe3JldHVybigiQUdFTlRfSk9JTl9DT05WRVJTQVRJT04iPT09dC5tfHwiQUdFTlRfTEVGVF9DT05WRVJTQVRJT04iPT09dC5tKSYmKCJBR0VOVF9KT0lOX0NPTlZFUlNBVElPTiI9PT10Lm0/dGhpcy5hZGRBZ2VudFRvTGlzdCh0LGUpOnRoaXMucmVtb3ZlQWdlbnRGcm9tTGlzdCh0LGUpKX19LHtrZXk6ImFkZEFnZW50VG9MaXN0Iix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuPXQubWR8fHt9LGk9bi5yc2Msbz10aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvYWdlbnRzIl1bdF0sYT17cHJvZmlsZUltYWdlOm4ucGk/IiIuY29uY2F0KCJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vdGF3ay10by1waSIsIi8iKS5jb25jYXQobi5waSk6IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIiwiL2ltYWdlcy9kZWZhdWx0LXByb2ZpbGUuc3ZnIikscHJvZmlsZVRpdGxlOnIuYS5yYXdEZWNvZGUobi5wc3QpfHwiIixwcm9maWxlSWQ6bi5waWQsZGlzcGxheU5hbWU6dC5uLGNvdW50OjEsaXNCb3Q6ISFuLmJvdCYmbi5ib3R9O2lmKG8pe2lmKCEoby5zZXEudGltZTxuLnNlcS50aW1lfHxvLnNlcS50aW1lPT09bi5zZXEudGltZSYmby5zZXEuaW5jPG4uc2VxLmluYykpcmV0dXJuO2lmKG8ucHJvZmlsZUlkPT09bi5waWQpcmV0dXJuITF9ZSYmZC5hLnRyaWdnZXJBcGlIYW5kbGVycygib25BZ2VudEpvaW5DaGF0Iix7bmFtZTphLmRpc3BsYXlOYW1lLHBvc2l0aW9uOmEucHJvZmlsZVRpdGxlLGltYWdlOmEucHJvZmlsZUltYWdlLGlkOnQudWlkfSksdGhpcy5zdG9yZS5kaXNwYXRjaCgiY2hhdC9hZ2VudEpvaW5lZCIse3Jlc291cmNlSWQ6aSxhZ2VudERhdGE6bixwcm9maWxlRGF0YTphfSl9fSx7a2V5OiJyZW1vdmVBZ2VudEZyb21MaXN0Iix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuPXQubWR8fHt9LGk9bi5yc2Mscj10aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvYWdlbnRzIl1baV07aWYoISghcnx8ci5zZXEudGltZT5uLnNlcS50aW1lfHxyLnNlcS50aW1lPT09bi5zZXEudGltZSYmci5zZXEuaW5jPm4uc2VxLmluYykpe2lmKGUpe3ZhciBvPXRoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC9hZ2VudFByb2ZpbGUiXShpKTtvJiZkLmEudHJpZ2dlckFwaUhhbmRsZXJzKCJvbkFnZW50TGVhdmVDaGF0Iix7bmFtZTpvLmRpc3BsYXlOYW1lLHBvc2l0aW9uOm8ucHJvZmlsZVRpdGxlLGltYWdlOm8ucHJvZmlsZUltYWdlLGlkOnQudWlkfSl9dGhpcy5zdG9yZS5kaXNwYXRjaCgiY2hhdC9hZ2VudExlZnQiLHtyZXNvdXJjZUlkOmksYWdlbnREYXRhOm59KX19fSx7a2V5OiJjbGVhclR5cGluZ1RpbWVvdXQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5rZXlEb3duVGltZW91dCYmKGNsZWFyVGltZW91dCh0aGlzLmtleURvd25UaW1lb3V0KSx0aGlzLmtleURvd25UaW1lb3V0PW51bGwpLGwuYS5wdWJsaXNoKCJub3RpZnlNZXNzYWdlUHJldmlldyIsIiIpfX0se2tleToic2VuZE1lc3NhZ2VQcmV2aWV3Iix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZSxuPXRoaXMsbz1pLmEuZ2V0VGFyZ2V0RWxlbWVudCh0KTtpZigxMz09PXQua2V5Q29kZSYmIXQuc2hpZnRLZXkmJiF0aGlzLnN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIl0pcmV0dXJuIGU9ci5hLnRyaW0oby52YWx1ZSksby52YWx1ZT0iIix0aGlzLnNlbmRNZXNzYWdlKGUpOyF0aGlzLmtleURvd25UaW1lb3V0JiZ0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9zaG93VmlzaXRvclR5cGluZyJdJiYodGhpcy5rZXlEb3duVGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2U9ci5hLnRyaW0oby52YWx1ZSksdm9pZCAwIT09d2luZG93LmVtb2ppb25lJiYoZT13aW5kb3cuZW1vamlvbmUudG9TaG9ydChlKSksbC5hLnB1Ymxpc2goIm5vdGlmeU1lc3NhZ2VQcmV2aWV3IixlKSxjbGVhclRpbWVvdXQobi5rZXlEb3duVGltZW91dCksbi5rZXlEb3duVGltZW91dD1udWxsfSksMWUzKSl9fSx7a2V5OiJzZW5kTWVzc2FnZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oaSxyKXt2YXIgbz10LmFwcGx5KGUsbik7ZnVuY3Rpb24gYSh0KXtnKG8saSxyLGEscywibmV4dCIsdCl9ZnVuY3Rpb24gcyh0KXtnKG8saSxyLGEscywidGhyb3ciLHQpfWEodm9pZCAwKX0pKX19KG0oKS5tYXJrKChmdW5jdGlvbiB0KGUpe3ZhciBuLGksbyxhLHMsYyx1O3JldHVybiBtKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6aWYobj1lLm1lc3NhZ2UsaT12b2lkIDA9PT1uPyIiOm4sbz1lLmF0dGFjaG1lbnRzLGE9dm9pZCAwPT09bz9bXTpvLHM9ZS5jYWxsYmFjayxpPXIuYS5yYXdEZWNvZGUoci5hLnRyaW0oaSkpLHM9c3x8ZnVuY3Rpb24oKXt9LGM9ITEsdT1bXSwxIT09YS5sZW5ndGh8fCJsZWFkLWNhcHR1cmUtcmVzcG9uc2UiIT09YVswXS50eXBlKXt0Lm5leHQ9MTA7YnJlYWt9dT1hLGM9ITAsdC5uZXh0PTE0O2JyZWFrO2Nhc2UgMTA6aWYoIShhLmxlbmd0aD4wKSl7dC5uZXh0PTE0O2JyZWFrfXJldHVybiB0Lm5leHQ9MTMsdGhpcy51cGxvYWRGaWxlcyhhKTtjYXNlIDEzOnU9dC5zZW50O2Nhc2UgMTQ6Y2xlYXJUaW1lb3V0KHRoaXMua2V5RG93blRpbWVvdXQpLHRoaXMua2V5RG93blRpbWVvdXQ9MCxpLmxlbmd0aD4wJiZ2b2lkIDAhPT13aW5kb3cuZW1vamlvbmUmJihpPWkucmVwbGFjZSgvwqkvZ20sIiZjb3B5OyIpLnJlcGxhY2UoL8KuL2dtLCImcmVnOyIpLnJlcGxhY2UoL+KEoi9nbSwiJnRyYWRlOyIpLGk9KGk9d2luZG93LmVtb2ppb25lLnRvU2hvcnQoaSkpLnJlcGxhY2UoLyZjb3B5Oy9nbSwiwqkiKS5yZXBsYWNlKC8nJnJlZzsvZ20sIsKuIikucmVwbGFjZSgvJnRyYWRlOy9nbSwi4oSiIikpLHRoaXMuc2VuZE1lc3NhZ2VUb1NlcnZlcih7bWVzc2FnZTppLGF0dGFjaG1lbnRzOnUsY2FsbGJhY2s6cyxpc0xlYWRDYXB0dXJlRm9ybTpjfSk7Y2FzZSAxODpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQsdGhpcyl9KSkpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJzZW5kTWVzc2FnZVRvU2VydmVyIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10aGlzLG49dC5tZXNzYWdlLGk9dC5hdHRhY2htZW50cyxvPXZvaWQgMD09PWk/W106aSxhPXQuY2FsbGJhY2sscz12b2lkIDA9PT1hP2Z1bmN0aW9uKCl7fTphLGM9dC5pc0xlYWRDYXB0dXJlRm9ybSx1PXZvaWQgMCE9PWMmJmMsZj10LmlzUHJlQ2hhdCxoPXZvaWQgMCE9PWYmJmY7cz1zfHxmdW5jdGlvbigpe307dmFyIHA9dGhpcy5wYXJzZUNoYXRNZXNzYWdlKHthdHRjaHM6byx1dDoidiIsdDoiYyIsbTpyLmEucmF3RW5jb2RlKG4pLGNvOm51bGwsdWlkOnRoaXMuc3RvcmUuZ2V0dGVyc1sidmlzaXRvci92aXNpdG9ySWQiXX0pO2gmJihwLmRhdGE9e3BjczohMH0pLHV8fHRoaXMuc3RvcmUuY29tbWl0KCJjaGF0L3NldE91dGdvaW5nTWVzc2FnZSIscCk7dmFyIG09e21lc3NhZ2U6bixhdHRhY2htZW50czpvfTtoJiYobS5pc1ByZUNoYXQ9ITApLDA9PT1uLmxlbmd0aCYmZGVsZXRlIG0ubWVzc2FnZSxsLmEucHVibGlzaCgic2VuZENoYXRNZXNzYWdlIixtLChmdW5jdGlvbih0LG4pe3Q/KHAuc2VuZEZhaWxlZD0hMCxwLmlzUGVuZGluZz0hMSk6KHUmJmUuc3RvcmUuY29tbWl0KCJjaGF0L3NldE91dGdvaW5nTWVzc2FnZSIscCkscC5jdmVyPW4uZGF0YS5jdmVyLHAudGltZVN0YW1wPW5ldyBEYXRlKG4uZGF0YS5jbykuZ2V0VGltZSgpLHAudGltZT1uLmRhdGEuY28scC5pc1BlbmRpbmc9ITEscC5yYXdNZXNzYWdlLmNvPW4uZGF0YS5jbyxwLnNlbmRGYWlsZWQ9ITEsZC5hLnRyaWdnZXJBcGlIYW5kbGVycygib25DaGF0TWVzc2FnZVZpc2l0b3IiLG0pLGUuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vYWRkV2FpdFRpbWUiKSxlLnN0b3JlLmRpc3BhdGNoKCJjaGF0L291dGdvaW5nQ2hhdE1lc3NhZ2UiLHApKSxzKHQpfSkpfX0se2tleToiY2hhbmdlUmF0aW5nIix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuLGk9ImMiO3RoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC9yYXRpbmciXT09PXQmJih0PTApLHRoaXMuc3RvcmUuY29tbWl0KCJjaGF0L3NldFJhdGluZyIsdCksZXx8KGwuYS5wdWJsaXNoKCJzZXRSYXRpbmciLHQpLGQuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQ2hhdFNhdGlzZmFjdGlvbiIsdCkpLHQ8MD9uPSJ0aHVtYnMtZG93biI6dD4wP249InRodW1icy11cCI6KG49aC5hLiRpMThuKCJjaGF0IiwicmVtb3ZlX3JhdGUiKSxpPSJuIik7dmFyIHI9dGhpcy5wYXJzZUNoYXRNZXNzYWdlKHt1dDoidiIsdDppLG06bixjbzpuZXcgRGF0ZSx1aWQ6dGhpcy5zdG9yZS5nZXR0ZXJzWyJ2aXNpdG9yL3Zpc2l0b3JJZCJdLG1kOntydDp0fX0pO2V8fCh0aGlzLnN0b3JlLmNvbW1pdCgiY2hhdC9zZXRPdXRnb2luZ01lc3NhZ2UiLHIpLHRoaXMuc3RvcmUuZGlzcGF0Y2goImNoYXQvdXBkYXRlUmF0aW5nTWVzc2FnZSIscikpfX0se2tleToidXBsb2FkRmlsZXMiLHZhbHVlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLG49W10saT1bXSxvPVtdLGw9ZnVuY3Rpb24oKXt2YXIgdT10W2hdLGw9e3V1aWQ6Yy5IZWxwZXIuZ2VuZXJhdGVVVUlEKCksaGFuZGxlOm51bGwsZmlsZU5hbWU6ci5hLnJhd0VuY29kZSh1LmZpbGUubmFtZSkscGVyY2VudGFnZTowLGhhc0Vycm9yOiExLGZpbGVEYXRhOnV9O3JldHVybiB1LmZpbGUuc2l6ZT5lLm1heFNpemVGaWxlVXBsb2FkPyhpLnB1c2goci5hLnJhd0VuY29kZSh1LmZpbGUubmFtZSkpLDApOmg+PWUubWF4TnVtYmVyRmlsZVVwbG9hZD8oby5wdXNoKHUpLDApOihlLnN0b3JlLmNvbW1pdCgiY2hhdC9hZGRGaWxlVXBsb2FkIixsKSx2b2lkIG4ucHVzaChuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxuKXthKChmdW5jdGlvbihuKXtsLmhhbmRsZT1uLHMobixlLnN0b3JlLmdldHRlcnNbInNlc3Npb24vc2Vzc2lvbktleSJdLHUuZmlsZSwoZnVuY3Rpb24obil7dChuKSxlLnN0b3JlLmNvbW1pdCgiY2hhdC9yZW1vdmVGaWxlVXBsb2FkIixsLnV1aWQpfSkpfSksbil9KSkpKX0saD0wO2g8dC5sZW5ndGg7aCsrKWwoKTtyZXR1cm4gaS5sZW5ndGgmJmYuYS4kZW1pdCgidG9vQmlnRmlsZUxpc3QiLGkpLE9iamVjdCh1LmEpKG4pLnRoZW4oKGZ1bmN0aW9uKHQpe2Zvcih2YXIgbj1bXSxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciByPXRbaV07aWYoImZ1bGZpbGxlZCI9PT1yLnN0YXR1cyYmci52YWx1ZSl7dmFyIG89e3R5cGU6ImZpbGUiLGNvbnRlbnQ6e2ZpbGU6e3VybDpyLnZhbHVlLnVybCxuYW1lOnIudmFsdWUuZmlsZW5hbWUsbWltZVR5cGU6ci52YWx1ZS5taW1lVHlwZSxzaXplOnIudmFsdWUuc2l6ZSxleHRlbnNpb246ci52YWx1ZS5leHRlbnNpb259fX07bi5wdXNoKG8pLGQuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uRmlsZVVwbG9hZCIsci52YWx1ZS51cmwpfWVsc2UgZS5zdG9yZS5nZXR0ZXJzWyJjaGF0L3VwbG9hZEZpbGVzIl0uZm9yRWFjaCgoZnVuY3Rpb24odCl7dC5oYXNFcnJvcnx8KHQuaGFzRXJyb3I9ITApfSkpfXJldHVybiBufSkpfX0se2tleToiY2FsbFN0YXR1c1VwZGF0ZSIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPXRoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC9jYWxsRGF0YSJdKHQuY2xpZCk7bnx8KG49e2NhbGxJZDp0LmNsaWQsc3RhdHVzOnQuc3R0cyx2ZXJzaW9uOnQudmVyLGlzTWlzc2VkOnQubXNzZCxpc1JlamVjdGVkOnQucmpjdGQsaXNSaW5naW5nOiJyaW5naW5nIj09PXQuc3R0cyxpc0RvbmU6ImNvbXBsZXRlZCI9PT10LnN0dHMsaXNWaWRlbzohIXQuZiYmdC5mLnZpZCxpc1NjcmVlbnNoYXJlOiEhdC5mJiZ0LmYuc2NybixoYXNFcnJvcjohMX0sdGhpcy5zdG9yZS5kaXNwYXRjaCgiY2hhdC91cGRhdGVDYWxsRGF0YSIsbikpLGwuYS5wdWJsaXNoKCJnZXRDYWxsU3RhdHVzIix7Y2FsbElkOnQuY2xpZH0sKGZ1bmN0aW9uKHQsaSl7aWYodHx8IWkuZGF0YS5jYWxsLmZ8fG4udmVyc2lvbj5pLmRhdGEuY2FsbC52ZXIpcmV0dXJuIG4uaGFzRXJyb3I9ITAsdm9pZCBlLnN0b3JlLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZUNhbGxEYXRhIixuKTt2YXIgcixvPWkuZGF0YS5jYWxsOygiYSIhPT1vLmNsbHIudHx8KHI9ZS5zdG9yZS5nZXR0ZXJzWyJjaGF0L2FnZW50UHJvZmlsZSJdKG8uY2xsci51cmlkKSkpJiYoKG49e2NhbGxJZDpvLmNsaWQsc3RhdHVzOm8uc3R0cyx2ZXJzaW9uOm8udmVyLGlzTWlzc2VkOm8ubXNzZCxpc1JlamVjdGVkOm8ucmpjdGQsaXNSaW5naW5nOiJyaW5naW5nIj09PW8uc3R0cyxpc0RvbmU6ImNvbXBsZXRlZCI9PT1vLnN0dHMsaXNWaWRlbzpvLmYudmlkLGlzU2NyZWVuc2hhcmU6by5mLnNjcm4saGFzRXJyb3I6ITEsY2FsbGVyOnJ8fG8uY2xscixzdGFydGVkQXQ6by5zbyxlbmRlZEF0Om8uZW99KS5pc1JpbmdpbmcmJm4uY2FsbGVyJiYiYSI9PT1vLmNsbHIudD9lLnN0b3JlLmNvbW1pdCgiY2hhdC9zZXRJbmNvbWluZ0NhbGwiLG4pOm4uaXNEb25lJiZlLnN0b3JlLmdldHRlcnNbImNoYXQvaW5jb21pbmdDYWxsIl0mJmUuc3RvcmUuZ2V0dGVyc1siY2hhdC9pbmNvbWluZ0NhbGwiXS5jYWxsSWQ9PW4uY2FsbElkJiZlLnN0b3JlLmNvbW1pdCgiY2hhdC9zZXRJbmNvbWluZ0NhbGwiLG51bGwpLG4uaXNEb25lP2Uuc3RvcmUuZGlzcGF0Y2goImNoYXQvdXBkYXRlT25nb2luZ0NhbGwiLCExKTplLnN0b3JlLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZU9uZ29pbmdDYWxsIiwhMCksZS5zdG9yZS5kaXNwYXRjaCgiY2hhdC91cGRhdGVDYWxsRGF0YSIsbiksZi5hLiRlbWl0KCJjYWxsRGF0YVVwZGF0ZWQiLG4pKX0pKX19LHtrZXk6ImNoYXRUcmFuc2ZlclVwZGF0ZSIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLnN0b3JlLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZUNoYXRUcmFuc2ZlckRhdGEiLHt0cmFuc2Zlcjp0LHRyYW5zZmVyVmVyc2lvbjplfSl9fSx7a2V5OiJhY2NlcHRDYWxsIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5zdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9pc1dlYlJUQ0F2YWlsYWJsZSJdJiYodGhpcy53ZWJydGNXaW49d2luZG93Lm9wZW4oIiIsIiIpLGwuYS5wdWJsaXNoKCJnZXRXZWJSVENUb2tlbiIse30sKGZ1bmN0aW9uKGUsbil7dC5zdG9yZS5jb21taXQoImNoYXQvc2V0SW5jb21pbmdDYWxsIixudWxsKSxlJiZ0LndlYnJ0Y1dpbi5jbG9zZSgpLHQud2VicnRjV2luLmxvY2F0aW9uLmhyZWY9IiIuY29uY2F0KCJodHRwczovL3ZpZGVvLnRhd2sudG8iLCIvdjIvY2FsbD90b2tlbj0iKS5jb25jYXQobi5kYXRhLnRva2VuKX0pKSl9fSx7a2V5OiJkZWNsaW5lQ2FsbCIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPXtjYWxsSWQ6dH07bC5hLnB1Ymxpc2goImRlY2xpbmVDYWxsIixuLChmdW5jdGlvbigpe2Uuc3RvcmUuY29tbWl0KCJjaGF0L3NldEluY29taW5nQ2FsbCIsbnVsbCl9KSl9fSx7a2V5OiJpbml0aWF0ZUNhbGwiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpczt0aGlzLndlYnJ0Y1dpbj13aW5kb3cub3BlbigiIiwiIiksbC5hLnB1Ymxpc2goImdldFdlYlJUQ1Rva2VuIix7dmlkZW86dCxzY3JlZW46ZX0sKGZ1bmN0aW9uKHQsZSl7dCYmbi53ZWJydGNXaW4uY2xvc2UoKSxuLndlYnJ0Y1dpbi5sb2NhdGlvbi5ocmVmPSIiLmNvbmNhdCgiaHR0cHM6Ly92aWRlby50YXdrLnRvIiwiL3YyL2NhbGw/dG9rZW49IikuY29uY2F0KGUuZGF0YS50b2tlbil9KSl9fSx7a2V5OiJjbGVhclVuc2Vlbk5vdGlmaWNhdGlvbiIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLnN0b3JlLmRpc3BhdGNoKCJjaGF0L2NsZWFyVW5zZWVuTWVzc2FnZXMiKSxkLmEudHJpZ2dlckFwaUhhbmRsZXJzKCJvblVucmVhZENvdW50Q2hhbmdlZCIsdGhpcy5zdG9yZS5nZXR0ZXJzWyJjaGF0L3VucmVhZE1lc3NhZ2VDb3VudCJdKX19LHtrZXk6InVwZGF0ZUZpbGVQcm9ncmVzcyIsdmFsdWU6ZnVuY3Rpb24odCxlLG4pe2Zvcih2YXIgaSxyPXRoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC91cGxvYWRGaWxlcyJdLG89MDtvPHIubGVuZ3RoO28rKylpZihyW29dLmhhbmRsZT09PXQuaGFuZGxlKXtlP3Iuc3BsaWNlKG8sMSk6aT1yW29dO2JyZWFrfWkmJihuP2kuaGFzRXJyb3I9ITA6aS5wZXJjZW50YWdlPXQucHJvZ3Jlc3MpfX0se2tleToic2VuZEFwaUV2ZW50Iix2YWx1ZTpmdW5jdGlvbih0LGUsbil7dmFyIGk7ImZ1bmN0aW9uIj09dHlwZW9mIGUmJihuPWUsZT1udWxsKSxuPW58fGZ1bmN0aW9uKCl7fSwoaT1kLmEuc2VjdXJlV3JhcHBlcih7fSkpLm5hbWU9dCxpLmRhdGE9ZSxsLmEucHVibGlzaCgiYWRkRXZlbnQiLGksbil9fSx7a2V5OiJzZW5kQXBpQXR0cmlidXRlcyIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO2U9ZXx8ZnVuY3Rpb24oKXt9O3ZhciBpPSExO2lmKE9iamVjdC5rZXlzKHQpLmxlbmd0aD41MClyZXR1cm4gaT0hMCx2b2lkIGUoIltKU0FQSS9zZXRBdHRyaWJ1dGVzXTogNTAgY3VzdG9tIGF0dHJpYnV0ZXMgYXJlIG9ubHkgYWxsb3dlZC4iKTtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtpZigiaGFzaCIhPT1uKXtpZighZnVuY3Rpb24odCl7cmV0dXJuL15bYS16QS1aMC05Xy1dezEsNTB9JC8udGVzdCh0KX0obikpcmV0dXJuIGk9ITAsdm9pZCBlKCJbSlNBUEkvc2V0QXR0cmlidXRlc106IEludmFsaWQga2V5OiAiLmNvbmNhdChuKSk7dmFyIHI9dFtuXTtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0JiZ0Lmxlbmd0aDw9MjU1fHwibnVtYmVyIj09dHlwZW9mIHR8fCJib29sZWFuIj09dHlwZW9mIHR8fG51bGw9PT10fShyKT92b2lkIDA6KGk9ITAsdm9pZCBlKCJbSlNBUEkvc2V0QXR0cmlidXRlc106IEludmFsaWQgdmFsdWUgZm9yIGtleSAiLmNvbmNhdChuLCI6ICIpLmNvbmNhdChyLCJ9IikpKX19KSksaXx8KHQ9ZC5hLnNlY3VyZVdyYXBwZXIodCksbC5hLnB1Ymxpc2goInNldEF0dHJpYnV0ZXMiLHQsKGZ1bmN0aW9uKGkpe2l8fCh0Lm5hbWV8fHQuZW1haWwpJiZuLnN0b3JlLmRpc3BhdGNoKCJ2aXNpdG9yL3VwZGF0ZVZpc2l0b3JJbmZvcm1hdGlvbiIse246dC5uYW1lfHx2b2lkIDAsZTp0LmVtYWlsfHx2b2lkIDB9KSxlKGkpfSkpKX19LHtrZXk6ImFkZFRhZ3MiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dmFyIG47ZT1lfHxmdW5jdGlvbigpe30sKG49ZC5hLnNlY3VyZVdyYXBwZXIoe30pKS50YWdzPXQsbC5hLnB1Ymxpc2goImFkZFRhZ3MiLG4sZSl9fSx7a2V5OiJyZW1vdmVUYWdzIix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuO2U9ZXx8ZnVuY3Rpb24oKXt9LChuPWQuYS5zZWN1cmVXcmFwcGVyKHt9KSkudGFncz10LGwuYS5wdWJsaXNoKCJyZW1vdmVUYWdzIixuLGUpfX0se2tleToicGFyc2VQaG9uZU51bWJlciIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9IiI7cmV0dXJuLTE9PT10LmluZGV4T2YoInRlbCIpJiYoZT0idGVsOiIpLCc8YSBjbGFzcz0idGF3ay1saW5rIiBocmVmPSInKyhlK3QpKyciIHRpdGxlPSInKyhlK3QpKyciPicrdCsiPC9hPiAifX1dKSl9LCIwYWQyIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImI3Y2MiKTtmdW5jdGlvbiByKHQpe3JldHVybihyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsYShpLmtleSksaSl9fWZ1bmN0aW9uIGEodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9cih0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXIoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09cihlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJm8odC5wcm90b3R5cGUsZSksbiYmbyh0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7KGZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KSh0aGlzLHQpLHRoaXMuaW5jb21pbmdNZXNzYWdlPW51bGwsdGhpcy5hdWRpb0NvbnRleHQ9bnVsbCx0aGlzLmlzUmVhZHlGb3JJbml0PSExLHRoaXMucGxheT1udWxsLHRoaXMuc291bmRFbD1udWxsLHRoaXMuc291bmRGaWxlPSIiLmNvbmNhdCgiaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cyIsIi9hdWRpby9jaGF0X3NvdW5kLm1wMyIpfSksW3trZXk6Imluc3RhbGwiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dmFyIG49ZS5zdG9yZSxpPWUuVGF3a1dpbmRvdzt0LnByb3RvdHlwZS4kVGF3a0F1ZGlvUGxheWVyPXRoaXMsdGhpcy5zdG9yZT1uLHRoaXMuVGF3a1dpbmRvdz1pfX0se2tleToiaW5pdCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdCxlPXRoaXMsbj10aGlzLnN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL2h0bWw1YXVkaW8iXTtuJiZuLnN1cHBvcnRlZCYmKHRoaXMuYXVkaW9Db250ZXh0fHwvRmlyZWZveC8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KXx8InVuZGVmaW5lZCI9PXR5cGVvZiBBdWRpb0J1ZmZlcnx8dm9pZCAwPT09d2luZG93LkF1ZGlvQ29udGV4dCYmdm9pZCAwPT09d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dHx8KHdpbmRvdy5BdWRpb0NvbnRleHQ9d2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dCx0aGlzLmF1ZGlvQ29udGV4dD1uZXcgd2luZG93LkF1ZGlvQ29udGV4dCksdGhpcy5hdWRpb0NvbnRleHQ/dGhpcy5pbmNvbWluZ01lc3NhZ2U9dGhpcy5hdWRpb0NvbnRleHRQbGF5ZXIoKTp0aGlzLmluY29taW5nTWVzc2FnZT10aGlzLmh0bWxBdWRpb1BsYXllcigpLHRoaXMuYXVkaW9Db250ZXh0JiYodD1mdW5jdGlvbigpe2UuaXNSZWFkeUZvckluaXQmJiFlLnRvdWNoc3RhcnRJbml0ZWQmJihlLmluY29taW5nTWVzc2FnZS52b2x1bWU9MCxlLmluY29taW5nTWVzc2FnZS5wbGF5KCksZS5pbmNvbWluZ01lc3NhZ2Uuc291cmNlLnN0b3AoMCksZS5pbmNvbWluZ01lc3NhZ2Uudm9sdW1lPTEsd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXImJndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix0LHtwYXNzaXZlOiEwfSksZS50b3VjaHN0YXJ0SW5pdGVkPSEwKX0sdGhpcy5zdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSJdJiYib250b3VjaHN0YXJ0ImluIHdpbmRvdyYmd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHQse3Bhc3NpdmU6ITB9KSkpfX0se2tleToicGxheVNvdW5kIix2YWx1ZTpmdW5jdGlvbigpe2kuYS5sb2NhbF9BUEkuZGlzYWJsZVNvdW5kfHx0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1NvdW5kRW5hYmxlZCJdJiZ0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9sb2NhbFNvdW5kRW5hYmxlZCJdJiZ0aGlzLmluY29taW5nTWVzc2FnZSYmdGhpcy5pbmNvbWluZ01lc3NhZ2UucGxheSgpfX0se2tleToiYXVkaW9Db250ZXh0UGxheWVyIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT17c291cmNlUGF0aDp0LnNvdW5kRmlsZSxidWZmZXI6bnVsbCxzb3VyY2U6bnVsbCx2b2x1bWU6MSxwbGF5OmZ1bmN0aW9uKCl7aWYodGhpcy5idWZmZXIpe3ZhciBlPXQuYXVkaW9Db250ZXh0LmNyZWF0ZUdhaW4oKTtlLmdhaW4udmFsdWU9dGhpcy52b2x1bWUsdGhpcy5zb3VyY2U9dC5hdWRpb0NvbnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCksdGhpcy5zb3VyY2UuYnVmZmVyPXRoaXMuYnVmZmVyLHRoaXMuc291cmNlLmNvbm5lY3QoZSksZS5jb25uZWN0KHQuYXVkaW9Db250ZXh0LmRlc3RpbmF0aW9uKSx0aGlzLnNvdXJjZS5zdGFydCgwKX19LGxvYWRCdWZmZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49bmV3IFhNTEh0dHBSZXF1ZXN0O24ub3BlbigiR0VUIix0aGlzLnNvdXJjZVBhdGgsITApLG4ucmVzcG9uc2VUeXBlPSJhcnJheWJ1ZmZlciIsbi5vbmxvYWQ9ZnVuY3Rpb24oKXt0LmF1ZGlvQ29udGV4dC5kZWNvZGVBdWRpb0RhdGEobi5yZXNwb25zZSwoZnVuY3Rpb24obil7biYmKGUuYnVmZmVyPW4sdC5pc1JlYWR5Rm9ySW5pdHx8KHQuaXNSZWFkeUZvckluaXQ9ITApKX0pLChmdW5jdGlvbih0KXt0aHJvdyBuZXcgRXJyb3IodCl9KSl9LG4ub25lcnJvcj1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQnVmZmVyTG9hZGVyOiBYSFIgZXJyb3IgZm9yICIrdGhpcy5zb3VyY2VQYXRoKX0sbi5zZW5kKCl9fTtyZXR1cm4gZS5sb2FkQnVmZmVyKCksZX19LHtrZXk6Imh0bWxBdWRpb1BsYXllciIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD17fTtpZigic3ltYmlhbiIhPT10aGlzLnN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIl0pcmV0dXJuInNhZmFyaSI9PT10aGlzLnN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIl0/KHQuc291bmQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYXVkaW8iKSx0LnNvdW5kLnNyYz10aGlzLnNvdW5kRmlsZSx0LnNvdW5kLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOiBhYnNvbHV0ZTsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMHB4OyBoZWlnaHQ6IDBweDsgdG9wOiAtMTAwMDBweDsgbGVmdDogLTEwMDAwcHg7Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQuc291bmQpKTp0LnNvdW5kPW5ldyBBdWRpbyh0aGlzLnNvdW5kRmlsZSksdC5zb3VuZC5hZGRFdmVudExpc3RlbmVyKCJ0aW1ldXBkYXRlIiwoZnVuY3Rpb24oKXt0LnNvdW5kLmN1cnJlbnRUaW1lPj0uMiYmdC5zb3VuZC5wYXVzZSgpfSksITEpLHQuc291bmQubG9hZCgpLHQucGxheT1mdW5jdGlvbigpe3RyeXt0aGlzLnNvdW5kLmN1cnJlbnRUaW1lPTAsdGhpcy5zb3VuZC5hdXRvcGxheT0hMCx0aGlzLnNvdW5kLmxvYWQoKSx0aGlzLnNvdW5kLnBsYXkoKX1jYXRjaCh0KXt9fSx0O3QucGxheT1mdW5jdGlvbigpe319fV0pKX0sIjBkYzMiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7aXNJZTohMSxodG1sNWF1ZGlvOm51bGwsbW9iaWxlQnJvd3Nlck5hbWU6bnVsbCxzZWFyY2hFbmdpbmU6bnVsbCx2ZW5kb3I6bnVsbCx2ZXJzaW9uOm51bGwsaXNXZWJSVENBdmFpbGFibGU6ITAsb3M6bnVsbH0sZ2V0dGVyczp7aXNJRTpmdW5jdGlvbih0KXtyZXR1cm4gdC5pc0lFfSxodG1sNWF1ZGlvOmZ1bmN0aW9uKHQpe3JldHVybiB0Lmh0bWw1YXVkaW99LG1vYmlsZUJyb3dzZXJOYW1lOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1vYmlsZUJyb3dzZXJOYW1lfSxzZWFyY2hFbmdpbmU6ZnVuY3Rpb24odCl7cmV0dXJuIHQuc2VhcmNoRW5naW5lfSx2ZW5kb3I6ZnVuY3Rpb24odCl7cmV0dXJuIHQudmVuZG9yfSx2ZXJzaW9uOmZ1bmN0aW9uKHQpe3JldHVybiB0LnZlcnNpb259LGlzV2ViUlRDQXZhaWxhYmxlOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzV2ViUlRDQXZhaWxhYmxlfSxvczpmdW5jdGlvbih0KXtyZXR1cm4gdC5vc319LGFjdGlvbnM6e3VwZGF0ZUluaXRpYWxEYXRhOmZ1bmN0aW9uKHQsZSl7KDAsdC5jb21taXQpKCJzZXRJbml0aWFsRGF0YSIsZSl9LHJlc2V0U3RhdGU6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJ1bnNldERhdGEiKX19LG11dGF0aW9uczp7c2V0SW5pdGlhbERhdGE6ZnVuY3Rpb24odCxlKXt0LnZlbmRvcj1lLnZlbmRvcix0LnZlcnNpb249ZS52ZXJzaW9uLHQuaXNJRT1lLmlzSUUsdC5tb2JpbGVCcm93c2VyTmFtZT1lLm1vYmlsZUJyb3dzZXJOYW1lLHQuaHRtbDVhdWRpbz1lLmh0bWw1YXVkaW8sdC5zZWFyY2hFbmdpbmU9ZS5zZWFyY2hFbmdpbmUsdC5pc1dlYlJUQ0F2YWlsYWJsZT1lLmlzV2ViUlRDQXZhaWxhYmxlLHQub3M9ZS5vc30sc2V0TW9iaWxlQnJvd3Nlck5hbWU6ZnVuY3Rpb24odCxlKXt0Lm1vYmlsZUJyb3dzZXJOYW1lPWV9LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e2lzSWU6ITEsaHRtbDVhdWRpbzpudWxsLG1vYmlsZUJyb3dzZXJOYW1lOm51bGwsc2VhcmNoRW5naW5lOm51bGwsdmVuZG9yOm51bGwsdmVyc2lvbjpudWxsLGlzV2ViUlRDQXZhaWxhYmxlOiEwLG9zOm51bGx9LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO3Rbcl09ZVtyXX19fX19LCIyNGNhIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjJiMGUiKTtmdW5jdGlvbiByKHQpe3JldHVybihyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsYShpLmtleSksaSl9fWZ1bmN0aW9uIGEodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9cih0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXIoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09cihlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJm8odC5wcm90b3R5cGUsZSksbiYmbyh0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7IWZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KHRoaXMsdCk7dmFyIGU9bmV3IGkuYTt0aGlzLmV2ZW50QnVzPWUsdGhpcy4kZW1pdD1lLiRlbWl0LmJpbmQoZSksdGhpcy4kb249ZS4kb24uYmluZChlKSx0aGlzLiRvZmY9ZS4kb2ZmLmJpbmQoZSksdGhpcy4kb25jZT1lLiRvbmNlLmJpbmQoZSl9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCl7dC5wcm90b3R5cGUuJGV2ZW50QnVzPXRoaXN9fV0pKX0sIjI3YTYiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBpfSkpO3ZhciBpPWZ1bmN0aW9uKHQpe3ZhciBlPXQubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC50aGVuKChmdW5jdGlvbih0KXtyZXR1cm57c3RhdHVzOiJmdWxmaWxsZWQiLHZhbHVlOnR9fSkpLmNhdGNoKChmdW5jdGlvbih0KXtyZXR1cm57c3RhdHVzOiJyZWplY3RlZCIscmVhc29uOnR9fSkpfSkpO3JldHVybiBQcm9taXNlLmFsbChlKX19LCIyN2M2IjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCl7cmV0dXJuKGk9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiByKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxvKGkua2V5KSxpKX19ZnVuY3Rpb24gbyh0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1pKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIHI9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9aShyKSlyZXR1cm4gcjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1pKGUpP2U6ZSsiIn1lLmE9bmV3KGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmcih0LnByb3RvdHlwZSxlKSxuJiZyKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXsoZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0pKHRoaXMsdCksdGhpcy5zZXR1cFRpbWVvdXQ9bnVsbCx0aGlzLmFnZW50Q291bnRTdWJzY3JpcHRpb249bnVsbCx0aGlzLm9yaWdpbmFsUGFnZVN0YXR1cz1udWxsLHRoaXMudXRjT2Zmc2V0PTAsdGhpcy5pc1NldHVwPSExLHRoaXMuYWdlbnRDb3VudExpc3RlbmVyPW51bGwsdGhpcy5pc0NsZWFuZWRVcD0hMX0pLFt7a2V5OiJpbnN0YWxsIix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuPWUuc3RvcmUsaT1lLlRhd2tXaW5kb3c7dC5wcm90b3R5cGUuJFRhd2tTY2hlZHVsZXI9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJzZXR1cCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmNsZWFyKCksdGhpcy5pc0NsZWFuZWRVcD0hMSxudWxsPT09dGhpcy5vcmlnaW5hbFBhZ2VTdGF0dXMmJih0aGlzLm9yaWdpbmFsUGFnZVN0YXR1cz10aGlzLnN0b3JlLmdldHRlcnNbInNlc3Npb24vcGFnZVN0YXR1cyJdKSx0aGlzLnN0b3JlLmdldHRlcnNbInNjaGVkdWxlL2lzRW5hYmxlZCJdPyh0aGlzLnV0Y09mZnNldD0tMSooKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5zdG9yZS5nZXR0ZXJzWyJzY2hlZHVsZS90aW1lem9uZSJdLnV0YyksdGhpcy5pc1NldHVwPSEwLHRoaXMuY2FsY3VsYXRlKCkpOnRoaXMuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2V0UGFnZVN0YXR1cyIse3N0YXR1czp0aGlzLm9yaWdpbmFsUGFnZVN0YXR1c30pfX0se2tleToiY2xlYXIiLHZhbHVlOmZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuc2V0dXBUaW1lb3V0KSx0aGlzLnNldHVwVGltZW91dD1udWxsfX0se2tleToiY2xlYW5VcCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmNsZWFyKCksdGhpcy5vcmlnaW5hbFBhZ2VTdGF0dXM9bnVsbCx0aGlzLmlzU2V0dXA9ITEsdGhpcy51bndhdGNoQWdlbnRDb3VudCgpLHRoaXMuaXNDbGVhbmVkVXA9ITB9fSx7a2V5OiJjYWxjdWxhdGUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztpZih0aGlzLmNsZWFyKCksdGhpcy5pc0NsZWFuZWRVcClyZXR1cm4gdGhpcy5zZXR1cCgpO2lmKHRoaXMuaXNTZXR1cCYmdGhpcy5zdG9yZS5nZXR0ZXJzWyJzY2hlZHVsZS9pc0VuYWJsZWQiXSl7dmFyIGU9dGhpcy5zdG9yZS5nZXR0ZXJzWyJzY2hlZHVsZS9zbG90cyJdO2lmKDAhPT1lLmxlbmd0aCl7Zm9yKHZhciBuLGkscixvPW5ldyBEYXRlLGE9LTZlNCpvLmdldFRpbWV6b25lT2Zmc2V0KCkscz10aGlzLnN0b3JlLmdldHRlcnNbInNjaGVkdWxlL3RpbWV6b25lIl0udHpvLWEsYz1uZXcgRGF0ZShvLmdldFRpbWUoKSt0aGlzLnV0Y09mZnNldCtzKSx1PWMuZ2V0RGF5KCksbD02MCpjLmdldEhvdXJzKCkrYy5nZXRNaW51dGVzKCksZD02MCpsK2MuZ2V0U2Vjb25kcygpLGY9MDtmPGUubGVuZ3RoO2YrKyl7dmFyIGg9ZVtmXTtpZihoLmRheT09PXUpe2lmKGw+PWguc3RhcnQmJmw8aC5lbmQpe249aDticmVha31pZihsPGguc3RhcnQpe2k9aDticmVha319fXZvaWQgMCE9PW4/KHRoaXMuZ29PbmxpbmUoKSxyPTYwKm4uZW5kLWQpOih0aGlzLmdvT2ZmbGluZSgpLHI9dm9pZCAwIT09aT82MCppLnN0YXJ0LWQ6ODY0MDAtZCsxKSx2b2lkIDAhPT1yJiYodGhpcy5zZXR1cFRpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmNhbGN1bGF0ZSgpfSksMWUzKnIpKX1lbHNlIHRoaXMuZ29PZmZsaW5lKCl9ZWxzZSB0aGlzLnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3NldFBhZ2VTdGF0dXMiLHtzdGF0dXM6dGhpcy5vcmlnaW5hbFBhZ2VTdGF0dXN9KX19LHtrZXk6ImdvT25saW5lIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMudW53YXRjaEFnZW50Q291bnQoKSx0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9hZ2VudERyaXZlblN0YXR1cyJdfHx0aGlzLnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3NldFBhZ2VTdGF0dXMiLHtzdGF0dXM6Im9ubGluZSJ9KSx0aGlzLm9yaWdpbmFsUGFnZVN0YXR1cyYmKHRoaXMuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2V0UGFnZVN0YXR1cyIse3N0YXR1czp0aGlzLm9yaWdpbmFsUGFnZVN0YXR1c30pLHRoaXMuaW5pdGlhbD0hMSl9fSx7a2V5OiJnb09mZmxpbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczswPT09dGhpcy5zdG9yZS5nZXR0ZXJzWyJjaGF0L2FnZW50c0NvdW50Il0mJnRoaXMuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2V0UGFnZVN0YXR1cyIse3N0YXR1czoib2ZmbGluZSJ9KSx0aGlzLmFnZW50Q291bnRMaXN0ZW5lcj10aGlzLnN0b3JlLndhdGNoKChmdW5jdGlvbih0KXtyZXR1cm4gdC5jaGF0LmFnZW50c0NvdW50fSksKGZ1bmN0aW9uKGUpezA9PT1lJiZ0LnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3NldFBhZ2VTdGF0dXMiLHtzdGF0dXM6Im9mZmxpbmUifSl9KSl9fSx7a2V5OiJ1bndhdGNoQWdlbnRDb3VudCIsdmFsdWU6ZnVuY3Rpb24oKXsiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5hZ2VudENvdW50TGlzdGVuZXImJih0aGlzLmFnZW50Q291bnRMaXN0ZW5lcigpLHRoaXMuYWdlbnRDb3VudExpc3RlbmVyPW51bGwpfX0se2tleToiaGFzU2NoZWR1bGVUb2RheSIsdmFsdWU6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5zdG9yZS5nZXR0ZXJzWyJzY2hlZHVsZS9zbG90cyJdLGU9bmV3IERhdGUsbj0tNmU0KmUuZ2V0VGltZXpvbmVPZmZzZXQoKSxpPXRoaXMuc3RvcmUuZ2V0dGVyc1sic2NoZWR1bGUvdGltZXpvbmUiXS50em8tbixyPW5ldyBEYXRlKGUuZ2V0VGltZSgpK3RoaXMudXRjT2Zmc2V0K2kpLmdldERheSgpLG89MDtvPHQubGVuZ3RoO28rKylpZih0W29dLmRheT09PXIpcmV0dXJuITA7cmV0dXJuITF9fSx7a2V5OiJoYXNDdXJyZW50VGltZVBhc3NlZFNjaGVkdWxlIix2YWx1ZTpmdW5jdGlvbigpe2Zvcih2YXIgdD10aGlzLnN0b3JlLmdldHRlcnNbInNjaGVkdWxlL3Nsb3RzIl0sZT1uZXcgRGF0ZSxuPS02ZTQqZS5nZXRUaW1lem9uZU9mZnNldCgpLGk9dGhpcy5zdG9yZS5nZXR0ZXJzWyJzY2hlZHVsZS90aW1lem9uZSJdLnR6by1uLHI9bmV3IERhdGUoZS5nZXRUaW1lKCkrdGhpcy51dGNPZmZzZXQraSksbz1yLmdldERheSgpLGE9NjAqci5nZXRIb3VycygpK3IuZ2V0TWludXRlcygpLHM9MDtzPHQubGVuZ3RoO3MrKyl7dmFyIGM9dFtzXTtpZihjLmRheT09PW8mJmE+PWMuc3RhcnQmJmE8Yy5lbmQpcmV0dXJuITF9cmV0dXJuITB9fV0pKX0sIjI4NGIiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7aXNPcGVuOiExfSxnZXR0ZXJzOntpc09wZW46ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNPcGVufX0sYWN0aW9uczp7c2hvd092ZXJsYXk6ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdDt0LnN0YXRlLmlzT3BlbiE9PWUmJm4oInNldE92ZXJsYXlPcGVuIixlKX0scmVzZXRTdGF0ZTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0RGF0YSIpfX0sbXV0YXRpb25zOntzZXRPdmVybGF5T3BlbjpmdW5jdGlvbih0LGUpe3QuaXNPcGVuPWV9LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e2lzT3BlbjohMX0sbj1PYmplY3Qua2V5cyhlKSxpPTA7aTxuLmxlbmd0aDtpKyspe3ZhciByPW5baV07dFtyXT1lW3JdfX19fX0sIjMyZDkiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO3ZhciBpPW4oIjY1YjMiKSxyPW4oIjc0NWYiKSxvPW4oIjQzYWYiKSxhPW4oImI3Y2MiKSxzPW4oIjk5ZTEiKSxjPW4oIjI0Y2EiKSx1PW4oIjQzNjAiKTtlLmRlZmF1bHQ9e25hbWVzcGFjZWQ6ITAsc3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm57YnJhbmRpbmc6e30sY29tcG9uZW50czp7fSxjb25zZW50RGF0YTp7fSx1c1ByaXZhY3lTaGllbGQ6bnVsbCxkZXNrdG9wVmlzaWJpbGl0eTp7fSxpZDpudWxsLGlzV2luZG93ZWQ6ITEsZ2VuZXJhbFZpc2liaWxpdHk6e30sbWF4RGVza3RvcDp7fSxtaW5EZXNrdG9wOnt9LG1pbk1vYmlsZTp7fSxtb2JpbGVWaXNpYmlsaXR5Ont9LG9uQ2xpY2s6Im1heCIsc2hvdzpudWxsLHN0YXRlczp7fSx0aGVtZTp7fSx0eXBlOiJpbmxpbmUiLHZlcnNpb246dm9pZCAwLGJ1YmJsZTp7fSxpc1JUTDohMSx5T2Zmc2V0OjAseE9mZnNldE1vYmlsZTowLHlPZmZzZXRNb2JpbGU6MCx4T2Zmc2V0OjAsbGFuZ3VhZ2U6ImVuIixub3RpZmljYXRpb246e30sZmVhdHVyZXM6e30sd2VicnRjT3B0aW9uczp7fSxpc0VtYmVkZGVkOiExLGxvY2FsU291bmRFbmFibGVkOiEwLHpvb21SYXRpbzoxLHRvb2xiYXJPcHRpb25zOntzaG93QWdlbnRBdmF0YXJzOiExfSxpc01vYmlsZUxhbmRzY2FwZTohMSxpc0ZvY3VzOiEwLGlzUG9wb3V0OiExLGlzSWZyYW1lOiExLGFnZW50RHJpdmVuU3RhdHVzOnZvaWQgMCxkZWZhdWx0VmlldzoiaG9tZSJ9fSxnZXR0ZXJzOnticmFuZGluZzpmdW5jdGlvbih0KXtyZXR1cm4gdC5icmFuZGluZ30sY29uc2VudERhdGE6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY29uc2VudERhdGF9LHVzUHJpdmFjeVNoaWVsZDpmdW5jdGlvbih0KXtyZXR1cm4gdC51c1ByaXZhY3lTaGllbGR9LHVzUHJpdmFjeVNoaWVsZEVuYWJsZWQ6ZnVuY3Rpb24odCxlLG4saSl7dmFyIHI9dC51c1ByaXZhY3lTaGllbGQ7aWYoIXIpcmV0dXJuITE7dmFyIG89ci5zdGF0ZXN8fHIsYT1pWyJzZXNzaW9uL3JlZ2lvbmFsQ29kZSJdLHM9YSYmb1thXXx8by5kZWZhdWx0O3JldHVybiEoIXN8fCFzLmVuYWJsZWQpfSxkZXNrdG9wVmlzaWJpbGl0eTpmdW5jdGlvbih0KXtyZXR1cm4gdC5kZXNrdG9wVmlzaWJpbGl0eX0sZ2VuZXJhbFZpc2liaWxpdHk6ZnVuY3Rpb24odCl7cmV0dXJuIHQuZ2VuZXJhbFZpc2liaWxpdHl9LGhlYWRlckJnQ29sb3I6ZnVuY3Rpb24odCl7cmV0dXJuIHQudGhlbWUuaGVhZGVyLmJhY2tncm91bmR9LGhlYWRlclR4dENvbG9yOmZ1bmN0aW9uKHQpe3JldHVybiB0LnRoZW1lLmhlYWRlci50ZXh0fSxpZDpmdW5jdGlvbih0KXtyZXR1cm4gdC5pZH0saXNSaWdodDpmdW5jdGlvbih0LGUsbil7dmFyIGkscj1bImJyIiwiY3IiLCJ0ciJdLG89bnVsbD09PWEuYXx8dm9pZCAwPT09YS5hfHxudWxsPT09KGk9YS5hLmxvY2FsX0FQSSl8fHZvaWQgMD09PWl8fG51bGw9PT0oaT1pLmN1c3RvbVN0eWxlKXx8dm9pZCAwPT09aT92b2lkIDA6aS52aXNpYmlsaXR5O3JldHVybiBuLmJyb3dzZXJEYXRhLm1vYmlsZUJyb3dzZXJOYW1lP28mJm8ubW9iaWxlJiZvLm1vYmlsZS5wb3NpdGlvbj8tMSE9PXIuaW5kZXhPZihvLm1vYmlsZS5wb3NpdGlvbik6LTEhPT1yLmluZGV4T2YodC5tb2JpbGVWaXNpYmlsaXR5LnBvc2l0aW9uKTpvJiZvLmRlc2t0b3AmJm8uZGVza3RvcC5wb3NpdGlvbj8tMSE9PXIuaW5kZXhPZihvLmRlc2t0b3AucG9zaXRpb24pOi0xIT09ci5pbmRleE9mKHQuZGVza3RvcFZpc2liaWxpdHkucG9zaXRpb24pfSxpc0JvdHRvbTpmdW5jdGlvbih0LGUsbil7dmFyIGkscj1bImJyIiwiYmwiXSxvPW51bGw9PT1hLmF8fHZvaWQgMD09PWEuYXx8bnVsbD09PShpPWEuYS5sb2NhbF9BUEkpfHx2b2lkIDA9PT1pfHxudWxsPT09KGk9aS5jdXN0b21TdHlsZSl8fHZvaWQgMD09PWk/dm9pZCAwOmkudmlzaWJpbGl0eTtyZXR1cm4gbi5icm93c2VyRGF0YS5tb2JpbGVCcm93c2VyTmFtZT9vJiZvLm1vYmlsZSYmby5tb2JpbGUucG9zaXRpb24/LTEhPT1yLmluZGV4T2Yoby5tb2JpbGUucG9zaXRpb24pOi0xIT09ci5pbmRleE9mKHQubW9iaWxlVmlzaWJpbGl0eS5wb3NpdGlvbik6byYmby5kZXNrdG9wJiZvLmRlc2t0b3AucG9zaXRpb24/LTEhPT1yLmluZGV4T2Yoby5kZXNrdG9wLnBvc2l0aW9uKTotMSE9PXIuaW5kZXhPZih0LmRlc2t0b3BWaXNpYmlsaXR5LnBvc2l0aW9uKX0saXNDZW50ZXI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpLHI9WyJjciIsImNsIl0sbz1udWxsPT09YS5hfHx2b2lkIDA9PT1hLmF8fG51bGw9PT0oaT1hLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09aXx8bnVsbD09PShpPWkuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT1pP3ZvaWQgMDppLnZpc2liaWxpdHk7cmV0dXJuIG4uYnJvd3NlckRhdGEubW9iaWxlQnJvd3Nlck5hbWU/byYmby5tb2JpbGUmJm8ubW9iaWxlLnBvc2l0aW9uPy0xIT09ci5pbmRleE9mKG8ubW9iaWxlLnBvc2l0aW9uKTotMSE9PXIuaW5kZXhPZih0Lm1vYmlsZVZpc2liaWxpdHkucG9zaXRpb24pOm8mJm8uZGVza3RvcCYmby5kZXNrdG9wLnBvc2l0aW9uPy0xIT09ci5pbmRleE9mKG8uZGVza3RvcC5wb3NpdGlvbik6LTEhPT1yLmluZGV4T2YodC5kZXNrdG9wVmlzaWJpbGl0eS5wb3NpdGlvbil9LGlzV2luZG93ZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNXaW5kb3dlZH0saXNSb3VuZFdpZGdldDpmdW5jdGlvbih0LGUsbil7cmV0dXJuIG4uYnJvd3NlckRhdGEubW9iaWxlQnJvd3Nlck5hbWU/InJvdW5kIj09PXQubWluTW9iaWxlLnR5cGU6InJvdW5kIj09PXQubWluRGVza3RvcC50eXBlfSxtYXhEZXNrdG9wOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1heERlc2t0b3B9LG1pbkRlc2t0b3A6ZnVuY3Rpb24odCl7cmV0dXJuIHQubWluRGVza3RvcH0sbW9iaWxlVmlzaWJpbGl0eTpmdW5jdGlvbih0KXtyZXR1cm4gdC5tb2JpbGVWaXNpYmlsaXR5fSxzdGF0ZXM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuc3RhdGVzfSx2ZXJzaW9uOmZ1bmN0aW9uKHQpe3JldHVybiB0LnZlcnNpb259LHlPZmZzZXQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQueU9mZnNldH0seE9mZnNldDpmdW5jdGlvbih0KXtyZXR1cm4gdC54T2Zmc2V0fSx5T2Zmc2V0TW9iaWxlOmZ1bmN0aW9uKHQpe3JldHVybiB0LnlPZmZzZXRNb2JpbGV9LHhPZmZzZXRNb2JpbGU6ZnVuY3Rpb24odCl7cmV0dXJuIHQueE9mZnNldE1vYmlsZX0saXNSVEw6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNSVEx9LGJ1YmJsZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5idWJibGV9LHNob3dNZXNzYWdlUHJldmlldzpmdW5jdGlvbih0LGUsbil7cmV0dXJuIG4uYnJvd3NlckRhdGEubW9iaWxlQnJvd3Nlck5hbWU/dC5ub3RpZmljYXRpb24ubW9iaWxlLnByZXZpZXc6dC5ub3RpZmljYXRpb24uZGVza3RvcC5wcmV2aWV3fSxmZWF0dXJlczpmdW5jdGlvbih0KXtyZXR1cm4gdC5mZWF0dXJlc30sc2hvd1Zpc2l0b3JUeXBpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIHQubm90aWZpY2F0aW9uLmFsbC52aXNpdG9yVHlwaW5nfSx3ZWJydGNPcHRpb25zOmZ1bmN0aW9uKHQpe3JldHVybiB0LndlYnJ0Y09wdGlvbnN9LGxhbmd1YWdlOmZ1bmN0aW9uKHQpe3JldHVybiB0Lmxhbmd1YWdlfSx2aXNpdG9yQmdDb2xvcjpmdW5jdGlvbih0KXtyZXR1cm4gdC50aGVtZS52aXNpdG9yLm1lc3NhZ2VCYWNrZ3JvdW5kfSx2aXNpdG9yVHh0Q29sb3I6ZnVuY3Rpb24odCl7cmV0dXJuIHQudGhlbWUudmlzaXRvci5tZXNzYWdlVGV4dH0sYWdlbnRCZ0NvbG9yOmZ1bmN0aW9uKHQpe3JldHVybiB0LnRoZW1lLmFnZW50Lm1lc3NhZ2VCYWNrZ3JvdW5kfSxhZ2VudFR4dENvbG9yOmZ1bmN0aW9uKHQpe3JldHVybiB0LnRoZW1lLmFnZW50Lm1lc3NhZ2VUZXh0fSxzaG93RXN0aW1hdGVkV2FpdFRpbWU6ZnVuY3Rpb24odCl7cmV0dXJuIHQubm90aWZpY2F0aW9uJiZ0Lm5vdGlmaWNhdGlvbi5hbGwmJnQubm90aWZpY2F0aW9uLmFsbC5lc3RpbWF0ZWRXYWl0VGltZX0sc2hvd0FnZW50VHlwaW5nOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm5vdGlmaWNhdGlvbiYmdC5ub3RpZmljYXRpb24uYWxsJiZ0Lm5vdGlmaWNhdGlvbi5hbGwuYWdlbnRUeXBpbmd9LGlzUHJlY2hhdEVuYWJsZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuc3RhdGVzLnByZWNoYXQmJnQuc3RhdGVzLnByZWNoYXQuaGFuZGxlcnMmJnQuc3RhdGVzLnByZWNoYXQuaGFuZGxlcnMuZm9ybX0saXNQcmVjaGF0QWlSZXNwb25zZVN1cHByZXNzZWQ6ZnVuY3Rpb24odCl7cmV0dXJuISEodC5zdGF0ZXMucHJlY2hhdCYmdC5zdGF0ZXMucHJlY2hhdC5oYW5kbGVycyYmdC5zdGF0ZXMucHJlY2hhdC5oYW5kbGVycy5zdXBwcmVzc0FpUmVzcG9uc2UpfSxpc0VtYmVkZGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzRW1iZWRkZWR9LGlzU291bmRFbmFibGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm5vdGlmaWNhdGlvbiYmdC5ub3RpZmljYXRpb24uYWxsJiZ0Lm5vdGlmaWNhdGlvbi5hbGwuc291bmQmJnQubG9jYWxTb3VuZEVuYWJsZWR9LGxvY2FsU291bmRFbmFibGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmxvY2FsU291bmRFbmFibGVkfSxzaG93OmZ1bmN0aW9uKHQpe3JldHVybiB0LnNob3d9LG9uQ2xpY2s6ZnVuY3Rpb24odCl7cmV0dXJuIHQub25DbGlja30saXNWaXNpYmxlOmZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbnVsbCE9PWUuc2hvdz90LnNob3c6ISgib2ZmbGluZSI9PT1uLnNlc3Npb24ucGFnZVN0YXR1cyYmIWUuZ2VuZXJhbFZpc2liaWxpdHkuc2hvd1doZW5PZmZsaW5lKSYmKG4uYnJvd3NlckRhdGEubW9iaWxlQnJvd3Nlck5hbWU/dC5tb2JpbGVWaXNpYmlsaXR5LnNob3c6dC5kZXNrdG9wVmlzaWJpbGl0eS5zaG93KX0sc2hvd1RpdGxlTm90aWZpY2F0aW9uOmZ1bmN0aW9uKHQpe3JldHVybiEoIXQubm90aWZpY2F0aW9ufHwhdC5ub3RpZmljYXRpb24uYWxsKSYmdC5ub3RpZmljYXRpb24uYWxsLnRhYn0saGFzTGl2ZUNoYXQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY29tcG9uZW50cy5saXZlQ2hhdH0sbWluTW9iaWxlOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1pbk1vYmlsZX0sem9vbVJhdGlvOmZ1bmN0aW9uKHQpe3JldHVybiB0Lnpvb21SYXRpb30sY29tcG9uZW50czpmdW5jdGlvbih0KXtyZXR1cm4gdC5jb21wb25lbnRzfSxlbWFpbFRyYW5zY3JpcHRFbmFibGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmZlYXR1cmVzLnRyYW5zY3JpcHR9LGVtb2ppRW5hYmxlZDpmdW5jdGlvbih0KXtyZXR1cm4gdC5mZWF0dXJlcyYmdC5mZWF0dXJlcy5lbW9qaX0sdG9vbGJhck9wdGlvbnM6ZnVuY3Rpb24odCl7cmV0dXJuIHQudG9vbGJhck9wdGlvbnN9LGlzTW9iaWxlTGFuZHNjYXBlOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzTW9iaWxlTGFuZHNjYXBlfSxpc0ZvY3VzOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzRm9jdXN9LGlzUG9wb3V0OmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzUG9wb3V0fSxpc0lmcmFtZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5pc0lmcmFtZX0sYWdlbnREcml2ZW5TdGF0dXM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuYWdlbnREcml2ZW5TdGF0dXN9LGdldExvZ29Db250ZW50OmZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIGk9bi5zZXNzaW9uLnBhZ2VTdGF0dXMscj10LnN0YXRlc1tpXSxvPTA7bzxyLmhlYWRlci5sZW5ndGg7bysrKXtpZihBcnJheS5pc0FycmF5KHIuaGVhZGVyKSl7dmFyIGE9ci5oZWFkZXIuZmluZCgoZnVuY3Rpb24odCl7cmV0dXJuImxvZ28iPT09dC50eXBlfSkpO2lmKGEpcmV0dXJuIGEuY29udGVudH1yZXR1cm4gbnVsbH19LGRlZmF1bHRWaWV3OmZ1bmN0aW9uKHQpe3JldHVybiB0LmRlZmF1bHRWaWV3fX0sYWN0aW9uczp7dG9nZ2xlVmlzaWJpbGl0eTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInNldFZpc2liaWxpdHkiLCF0LnN0YXRlLnNob3cpfSx1cGRhdGVCcmFuZGluZzpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0QnJhbmRpbmciLGUpfSx1cGRhdGVJZDpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0SWQiLGUpfSx0b2dnbGVMb2NhbFNvdW5kOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zdGF0ZTt2b2lkIDAhPT1lP24ubG9jYWxTb3VuZEVuYWJsZWQ9ZToobi5sb2NhbFNvdW5kRW5hYmxlZD0hbi5sb2NhbFNvdW5kRW5hYmxlZCxpLmEucHVibGlzaCgidG9nZ2xlU291bmQiLG4ubG9jYWxTb3VuZEVuYWJsZWQpKX0scmVzZXRTdGF0ZTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0RGF0YSIpfSx0b2dnbGVBZ2VudEF2YXRhclRvb2xiYXI6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldEFnZW50QXZhdGFyVG9vbGJhciIsZSl9LHVwZGF0ZU1vYmlsZUxhbmRzY2FwZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0TW9iaWxlTGFuZHNjYXBlIixlKX0sdG9nZ2xlRm9jdXM6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldEZvY3VzIixlKX0sc2h1dGRvd246ZnVuY3Rpb24odCl7dmFyIGU9dC5jb21taXQsbj10LmRpc3BhdGNoLHI9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOmZ1bmN0aW9uKCl7fTtuKCJjaGF0L3Jlc2V0U3RhdGUiLG51bGwse3Jvb3Q6ITB9KSxzLmEuY2xlYW5VcCgpLGkuYS5kaXNjb25uZWN0U29ja2V0KCksZGVsZXRlIHdpbmRvdy4kX1Rhd2suZG93bmxvYWRlZCxlKCJzZXRWaXNpYmlsaXR5IiwhMSkscigpfSxzdGFydDpmdW5jdGlvbih0LGUpe3ZhciBuPXQuY29tbWl0LGE9dC5yb290R2V0dGVycyxsPXQuZGlzcGF0Y2gsZD1lLnBhcmFtcyxmPXZvaWQgMD09PWQ/e306ZCxoPWUuY2FsbGJhY2sscD12b2lkIDA9PT1oP2Z1bmN0aW9uKCl7fTpoO2woInNvY2tldC91cGRhdGVJc0Nvbm5lY3RpbmciLCEwLHtyb290OiEwfSk7dmFyIG09YVsicHJvcGVydHkvaWQiXSxnPWFbIndpZGdldC9pZCJdLHY9bmV3IHIuYSh7cHJvcGVydHlJZDptLHdpZGdldElkOmcsVGF3a1dpbmRvdzp1LmEuX3ZtLiRUYXdrV2luZG93LGNhbGxiYWNrOmZ1bmN0aW9uKCl7Zi5zaG93V2lkZ2V0JiZuKCJzZXRWaXNpYmlsaXR5IiwhMCkscCgpfX0pO25ldyBQcm9taXNlKChmdW5jdGlvbih0LGUpe3UuYS5fdm0uJFRhd2tXaW5kb3cucmVnaXN0ZXIuaW5pdCh0LGUpfSkpLnRoZW4oKGZ1bmN0aW9uKHQpe28uYS52ZXJzaW9uPXQuZGF0YS5zZXR0aW5nc1ZlcnNpb247dmFyIGU9d2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInRhd2tfc3YiKTtlJiZlPT09dC5kYXRhLnNldHRpbmdzVmVyc2lvbj8odi5leHRyYWN0UmVnaXN0cmF0aW9uRGF0YSh0KSxjLmEuJGVtaXQoInVwZGF0ZVdpZGdldFNldHRpbmdzIiksaS5hLmNvbm5lY3QoKSxzLmEuaW5pdEFjdGl2aXR5UmVzZXQoKSx1LmEuZGlzcGF0Y2goInJvdXRlci9jbGVhckhpc3RvcnkiKSk6KHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ0YXdrX3N2Iix0LmRhdGEuc2V0dGluZ3NWZXJzaW9uKSxvLmEuZ2V0U2V0dGluZ3MoKGZ1bmN0aW9uKCl7di5leHRyYWN0UmVnaXN0cmF0aW9uRGF0YSh0KSxjLmEuJGVtaXQoInVwZGF0ZVdpZGdldFNldHRpbmdzIiksaS5hLmNvbm5lY3QoKSxzLmEuaW5pdEFjdGl2aXR5UmVzZXQoKSx1LmEuZGlzcGF0Y2goInJvdXRlci9jbGVhckhpc3RvcnkiKX0pLChmdW5jdGlvbih0KXtjb25zb2xlLmVycm9yKHQpfSkpKX0pKX0sc3dpdGNoV2lkZ2V0OmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5kaXNwYXRjaCxpPXQuY29tbWl0LG89ZS5wcm9wZXJ0eUlkLGE9ZS53aWRnZXRJZCxzPWUuY2FsbGJhY2s7cmV0dXJuIG51bGw9PT1vP3MoIklOVkFMSURfUFJPUEVSVFlfSUQiKTpudWxsPT09YT9zKCJJTlZBTElEX1dJREdFVF9JRCIpOihuKCJzaHV0ZG93biIpLHUuYS5kaXNwYXRjaCgicmVzZXQiKSx2b2lkIG5ldyByLmEoe3Byb3BlcnR5SWQ6byx3aWRnZXRJZDphLFRhd2tXaW5kb3c6dS5hLl92bS4kVGF3a1dpbmRvdyxjYWxsYmFjazpmdW5jdGlvbigpe2koInNldFZpc2liaWxpdHkiLCEwKSxjLmEuJGVtaXQoInN3aXRjaFdpZGdldCIpLHUuYS5fdm0uJFRhd2tXaW5kb3cudXBkYXRlQm9vdENvbmZpZyh7cHJvcGVydHlJZDpvLHdpZGdldElkOmF9KSxzKCl9fSkuaW5pdCgpKX19LG11dGF0aW9uczp7c2V0QnJhbmRpbmc6ZnVuY3Rpb24odCxlKXt0LmJyYW5kaW5nPWV9LHNldElkOmZ1bmN0aW9uKHQsZSl7dC5pZD1lfSxzZXREYXRhOmZ1bmN0aW9uKHQsZSl7dmFyIG47dC52ZXJzaW9uPWUudmVyc2lvbix0Lm9uQ2xpY2s9ZS5iZWhhdmlvci5jbGljayx0LmRlZmF1bHRWaWV3PShudWxsPT1lfHxudWxsPT09KG49ZS5iZWhhdmlvcil8fHZvaWQgMD09PW4/dm9pZCAwOm4uZGVmYXVsdFZpZXcpfHwiaG9tZSIsdC5jb21wb25lbnRzPWUuY29tcG9uZW50cyx0LnRoZW1lPWUudGhlbWU7dmFyIGk9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlLnN0YXRlcykpO2Zvcih2YXIgciBpbiBpKWlbcl0mJmlbcl0uYm9keSYmKGlbcl0uYm9keT1pW3JdLmJvZHkuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4hKHQuaWQmJnQuaWQuc3RhcnRzV2l0aCgicGM6IikpfSkpKTtpZih0LnN0YXRlcz1pLHQuYnViYmxlPWUuYnViYmxlLHQuYWdlbnREcml2ZW5TdGF0dXM9ZS5hZ2VudERyaXZlblN0YXR1cyx0Lm1heERlc2t0b3A9e3dpZHRoOnBhcnNlSW50KGUubWF4aW1pemVkLmRlc2t0b3Aud2lkdGgsMTApfHwzNTAsaGVpZ2h0OnBhcnNlSW50KGUubWF4aW1pemVkLmRlc2t0b3AuaGVpZ2h0LDEwKXx8NTIwfSx0Lm1pbkRlc2t0b3A9ZS5taW5pbWl6ZWQuZGVza3RvcCwicmVjdGFuZ2xlIj09PWUubWluaW1pemVkLmRlc2t0b3AudHlwZT8odC5taW5EZXNrdG9wLndpZHRoPXBhcnNlSW50KGUubWluaW1pemVkLmRlc2t0b3Aud2lkdGgsMTApfHwzMjAsdC5taW5EZXNrdG9wLmhlaWdodD1wYXJzZUludChlLm1pbmltaXplZC5kZXNrdG9wLmhlaWdodCwxMCl8fDQwLHQueU9mZnNldD0wLHQueE9mZnNldD0xMCk6KHQubWluRGVza3RvcC53aWR0aD02MCx0Lm1pbkRlc2t0b3AuaGVpZ2h0PTYwLHQueU9mZnNldD0yMCx0LnhPZmZzZXQ9MjApLHQubWluTW9iaWxlPWUubWluaW1pemVkLm1vYmlsZSwicmVjdGFuZ2xlIj09PWUubWluaW1pemVkLm1vYmlsZS50eXBlPyh0Lm1pbk1vYmlsZS53aWR0aD0xMTAsdC5taW5Nb2JpbGUuaGVpZ2h0PTQ4LHQueU9mZnNldE1vYmlsZT0xNSx0LnhPZmZzZXRNb2JpbGU9MTUpOih0Lm1pbk1vYmlsZS53aWR0aD02MCx0Lm1pbk1vYmlsZS5oZWlnaHQ9NjAsdC55T2Zmc2V0TW9iaWxlPTIwLHQueE9mZnNldE1vYmlsZT0yMCksdC5nZW5lcmFsVmlzaWJpbGl0eT1lLnZpc2liaWxpdHkuYWxsLHQuZGVza3RvcFZpc2liaWxpdHk9ZS52aXNpYmlsaXR5LmRlc2t0b3AsdC5tb2JpbGVWaXNpYmlsaXR5PWUudmlzaWJpbGl0eS5tb2JpbGUsdC5jb25zZW50RGF0YT1lLmNvbnNlbnQsZS51c1ByaXZhY3lTaGllbGQmJih0LnVzUHJpdmFjeVNoaWVsZD1lLnVzUHJpdmFjeVNoaWVsZCksdC5sYW5ndWFnZT1lLmxhbmd1YWdlLHQuaXNSVEw9LTEhPT1bImFyIiwiaGUiLCJmYSJdLmluZGV4T2YoZS5sYW5ndWFnZSksdC5ub3RpZmljYXRpb249ZS5ub3RpZmljYXRpb24sdC5mZWF0dXJlcz1lLmZlYXR1cmVzLHQuYnViYmxlJiYiaW1hZ2UiPT09dC5idWJibGUudHlwZSYmdC5idWJibGUuY29uZmlnJiYiZ2FsbGVyeSI9PT10LmJ1YmJsZS5jb25maWcuaW1hZ2UudHlwZSl7dmFyIG89ZS52aXNpYmlsaXR5LmRlc2t0b3AucG9zaXRpb24sYT1lLm1pbmltaXplZC5kZXNrdG9wLnR5cGU7KCJjciIhPT1vJiYicmVjdGFuZ2xlIiE9PWF8fCJjbCIhPT1vJiYicmVjdGFuZ2xlIiE9PWEpJiYodC5idWJibGUuY29uZmlnLm9mZnNldFgtPXQueE9mZnNldCksImNyIiE9PXQuZGVza3RvcFZpc2liaWxpdHkucG9zaXRpb24mJiJjbCIhPT10LmRlc2t0b3BWaXNpYmlsaXR5LnBvc2l0aW9uJiYodC5idWJibGUuY29uZmlnLm9mZnNldFktPXQueU9mZnNldCl9ZS5zY2hlZHVsZXImJmUuc2NoZWR1bGVyLmNvbmZpZz90aGlzLmRpc3BhdGNoKCJzY2hlZHVsZS9hZGRTbG90cyIsZS5zY2hlZHVsZXIpOnRoaXMuZGlzcGF0Y2goInNjaGVkdWxlL2FkZFNsb3RzIil9LHNldFZpc2liaWxpdHk6ZnVuY3Rpb24odCxlKXt0LnNob3c9ZSx0LnNob3d8fGEuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQ2hhdEhpZGRlbiIpfSxzZXRXZWJydGNPcHRpb25zOmZ1bmN0aW9uKHQsZSl7dC53ZWJydGNPcHRpb25zPWV9LHNldElzV2luZG93ZWQ6ZnVuY3Rpb24odCxlKXt0LmlzV2luZG93ZWQ9ZX0sc2V0SXNFbWJlZGRlZDpmdW5jdGlvbih0LGUpe3QuaXNFbWJlZGRlZD1lfSxzZXRab29tUmF0aW86ZnVuY3Rpb24odCxlKXt0Lnpvb21SYXRpbz1lfSx1bnNldERhdGE6ZnVuY3Rpb24odCl7dC5sb2NhbFNvdW5kRW5hYmxlZD0hMH0sc2V0QWdlbnRBdmF0YXJUb29sYmFyOmZ1bmN0aW9uKHQsZSl7dC50b29sYmFyT3B0aW9ucy5zaG93QWdlbnRBdmF0YXJzPWV9LHNldE1vYmlsZUxhbmRzY2FwZTpmdW5jdGlvbih0LGUpe3QuaXNNb2JpbGVMYW5kc2NhcGU9ZX0sc2V0Rm9jdXM6ZnVuY3Rpb24odCxlKXt0LmlzRm9jdXM9ZX0sc2V0SXNQb3BvdXQ6ZnVuY3Rpb24odCxlKXt0LmlzUG9wb3V0PWV9LHNldElzSWZyYW1lOmZ1bmN0aW9uKHQsZSl7dC5pc0lmcmFtZT1lfX19fSwiM2IzNSI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuLnIoZSk7dmFyIGk9bigiN2Y0NiIpLHI9bigiYjdjYyIpLG89bigiMjdjNiIpLGE9bigiNjgxZCIpLHM9bigiOTFjZSIpLGM9bigiNjViMyIpLHU9bigiNDM2MCIpO2Z1bmN0aW9uIGwoKXtsPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3ZhciB0LGU9e30sbj1PYmplY3QucHJvdG90eXBlLGk9bi5oYXNPd25Qcm9wZXJ0eSxyPU9iamVjdC5kZWZpbmVQcm9wZXJ0eXx8ZnVuY3Rpb24odCxlLG4pe3RbZV09bi52YWx1ZX0sbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sP1N5bWJvbDp7fSxhPW8uaXRlcmF0b3J8fCJAQGl0ZXJhdG9yIixzPW8uYXN5bmNJdGVyYXRvcnx8IkBAYXN5bmNJdGVyYXRvciIsYz1vLnRvU3RyaW5nVGFnfHwiQEB0b1N0cmluZ1RhZyI7ZnVuY3Rpb24gdSh0LGUsbil7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSx0W2VdfXRyeXt1KHt9LCIiKX1jYXRjaCh0KXt1PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdFtlXT1ufX1mdW5jdGlvbiBkKHQsZSxuLGkpe3ZhciBvPWUmJmUucHJvdG90eXBlIGluc3RhbmNlb2Ygdz9lOncsYT1PYmplY3QuY3JlYXRlKG8ucHJvdG90eXBlKSxzPW5ldyBMKGl8fFtdKTtyZXR1cm4gcihhLCJfaW52b2tlIix7dmFsdWU6SSh0LG4scyl9KSxhfWZ1bmN0aW9uIGYodCxlLG4pe3RyeXtyZXR1cm57dHlwZToibm9ybWFsIixhcmc6dC5jYWxsKGUsbil9fWNhdGNoKHQpe3JldHVybnt0eXBlOiJ0aHJvdyIsYXJnOnR9fX1lLndyYXA9ZDt2YXIgcD0ic3VzcGVuZGVkU3RhcnQiLG09ImV4ZWN1dGluZyIsZz0iY29tcGxldGVkIix2PXt9O2Z1bmN0aW9uIHcoKXt9ZnVuY3Rpb24geSgpe31mdW5jdGlvbiBiKCl7fXZhciBrPXt9O3UoayxhLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpO3ZhciBUPU9iamVjdC5nZXRQcm90b3R5cGVPZixTPVQmJlQoVChfKFtdKSkpO1MmJlMhPT1uJiZpLmNhbGwoUyxhKSYmKGs9Uyk7dmFyIFA9Yi5wcm90b3R5cGU9dy5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShrKTtmdW5jdGlvbiBFKHQpe1sibmV4dCIsInRocm93IiwicmV0dXJuIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7dSh0LGUsKGZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pbnZva2UoZSx0KX0pKX0pKX1mdW5jdGlvbiBPKHQsZSl7ZnVuY3Rpb24gbihyLG8sYSxzKXt2YXIgYz1mKHRbcl0sdCxvKTtpZigidGhyb3ciIT09Yy50eXBlKXt2YXIgdT1jLmFyZyxsPXUudmFsdWU7cmV0dXJuIGwmJiJvYmplY3QiPT1oKGwpJiZpLmNhbGwobCwiX19hd2FpdCIpP2UucmVzb2x2ZShsLl9fYXdhaXQpLnRoZW4oKGZ1bmN0aW9uKHQpe24oIm5leHQiLHQsYSxzKX0pLChmdW5jdGlvbih0KXtuKCJ0aHJvdyIsdCxhLHMpfSkpOmUucmVzb2x2ZShsKS50aGVuKChmdW5jdGlvbih0KXt1LnZhbHVlPXQsYSh1KX0pLChmdW5jdGlvbih0KXtyZXR1cm4gbigidGhyb3ciLHQsYSxzKX0pKX1zKGMuYXJnKX12YXIgbztyKHRoaXMsIl9pbnZva2UiLHt2YWx1ZTpmdW5jdGlvbih0LGkpe2Z1bmN0aW9uIHIoKXtyZXR1cm4gbmV3IGUoKGZ1bmN0aW9uKGUscil7bih0LGksZSxyKX0pKX1yZXR1cm4gbz1vP28udGhlbihyLHIpOnIoKX19KX1mdW5jdGlvbiBJKGUsbixpKXt2YXIgcj1wO3JldHVybiBmdW5jdGlvbihvLGEpe2lmKHI9PT1tKXRocm93IEVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nIik7aWYocj09PWcpe2lmKCJ0aHJvdyI9PT1vKXRocm93IGE7cmV0dXJue3ZhbHVlOnQsZG9uZTohMH19Zm9yKGkubWV0aG9kPW8saS5hcmc9YTs7KXt2YXIgcz1pLmRlbGVnYXRlO2lmKHMpe3ZhciBjPUMocyxpKTtpZihjKXtpZihjPT09diljb250aW51ZTtyZXR1cm4gY319aWYoIm5leHQiPT09aS5tZXRob2QpaS5zZW50PWkuX3NlbnQ9aS5hcmc7ZWxzZSBpZigidGhyb3ciPT09aS5tZXRob2Qpe2lmKHI9PT1wKXRocm93IHI9ZyxpLmFyZztpLmRpc3BhdGNoRXhjZXB0aW9uKGkuYXJnKX1lbHNlInJldHVybiI9PT1pLm1ldGhvZCYmaS5hYnJ1cHQoInJldHVybiIsaS5hcmcpO3I9bTt2YXIgdT1mKGUsbixpKTtpZigibm9ybWFsIj09PXUudHlwZSl7aWYocj1pLmRvbmU/Zzoic3VzcGVuZGVkWWllbGQiLHUuYXJnPT09diljb250aW51ZTtyZXR1cm57dmFsdWU6dS5hcmcsZG9uZTppLmRvbmV9fSJ0aHJvdyI9PT11LnR5cGUmJihyPWcsaS5tZXRob2Q9InRocm93IixpLmFyZz11LmFyZyl9fX1mdW5jdGlvbiBDKGUsbil7dmFyIGk9bi5tZXRob2Qscj1lLml0ZXJhdG9yW2ldO2lmKHI9PT10KXJldHVybiBuLmRlbGVnYXRlPW51bGwsInRocm93Ij09PWkmJmUuaXRlcmF0b3IucmV0dXJuJiYobi5tZXRob2Q9InJldHVybiIsbi5hcmc9dCxDKGUsbiksInRocm93Ij09PW4ubWV0aG9kKXx8InJldHVybiIhPT1pJiYobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICciK2krIicgbWV0aG9kIikpLHY7dmFyIG89ZihyLGUuaXRlcmF0b3Isbi5hcmcpO2lmKCJ0aHJvdyI9PT1vLnR5cGUpcmV0dXJuIG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9by5hcmcsbi5kZWxlZ2F0ZT1udWxsLHY7dmFyIGE9by5hcmc7cmV0dXJuIGE/YS5kb25lPyhuW2UucmVzdWx0TmFtZV09YS52YWx1ZSxuLm5leHQ9ZS5uZXh0TG9jLCJyZXR1cm4iIT09bi5tZXRob2QmJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksbi5kZWxlZ2F0ZT1udWxsLHYpOmE6KG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9bmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3QiKSxuLmRlbGVnYXRlPW51bGwsdil9ZnVuY3Rpb24geCh0KXt2YXIgZT17dHJ5TG9jOnRbMF19OzEgaW4gdCYmKGUuY2F0Y2hMb2M9dFsxXSksMiBpbiB0JiYoZS5maW5hbGx5TG9jPXRbMl0sZS5hZnRlckxvYz10WzNdKSx0aGlzLnRyeUVudHJpZXMucHVzaChlKX1mdW5jdGlvbiBBKHQpe3ZhciBlPXQuY29tcGxldGlvbnx8e307ZS50eXBlPSJub3JtYWwiLGRlbGV0ZSBlLmFyZyx0LmNvbXBsZXRpb249ZX1mdW5jdGlvbiBMKHQpe3RoaXMudHJ5RW50cmllcz1be3RyeUxvYzoicm9vdCJ9XSx0LmZvckVhY2goeCx0aGlzKSx0aGlzLnJlc2V0KCEwKX1mdW5jdGlvbiBfKGUpe2lmKGV8fCIiPT09ZSl7dmFyIG49ZVthXTtpZihuKXJldHVybiBuLmNhbGwoZSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUubmV4dClyZXR1cm4gZTtpZighaXNOYU4oZS5sZW5ndGgpKXt2YXIgcj0tMSxvPWZ1bmN0aW9uIG4oKXtmb3IoOysrcjxlLmxlbmd0aDspaWYoaS5jYWxsKGUscikpcmV0dXJuIG4udmFsdWU9ZVtyXSxuLmRvbmU9ITEsbjtyZXR1cm4gbi52YWx1ZT10LG4uZG9uZT0hMCxufTtyZXR1cm4gby5uZXh0PW99fXRocm93IG5ldyBUeXBlRXJyb3IoaChlKSsiIGlzIG5vdCBpdGVyYWJsZSIpfXJldHVybiB5LnByb3RvdHlwZT1iLHIoUCwiY29uc3RydWN0b3IiLHt2YWx1ZTpiLGNvbmZpZ3VyYWJsZTohMH0pLHIoYiwiY29uc3RydWN0b3IiLHt2YWx1ZTp5LGNvbmZpZ3VyYWJsZTohMH0pLHkuZGlzcGxheU5hbWU9dShiLGMsIkdlbmVyYXRvckZ1bmN0aW9uIiksZS5pc0dlbmVyYXRvckZ1bmN0aW9uPWZ1bmN0aW9uKHQpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0JiZ0LmNvbnN0cnVjdG9yO3JldHVybiEhZSYmKGU9PT15fHwiR2VuZXJhdG9yRnVuY3Rpb24iPT09KGUuZGlzcGxheU5hbWV8fGUubmFtZSkpfSxlLm1hcms9ZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YodCxiKToodC5fX3Byb3RvX189Yix1KHQsYywiR2VuZXJhdG9yRnVuY3Rpb24iKSksdC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShQKSx0fSxlLmF3cmFwPWZ1bmN0aW9uKHQpe3JldHVybntfX2F3YWl0OnR9fSxFKE8ucHJvdG90eXBlKSx1KE8ucHJvdG90eXBlLHMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZS5Bc3luY0l0ZXJhdG9yPU8sZS5hc3luYz1mdW5jdGlvbih0LG4saSxyLG8pe3ZvaWQgMD09PW8mJihvPVByb21pc2UpO3ZhciBhPW5ldyBPKGQodCxuLGksciksbyk7cmV0dXJuIGUuaXNHZW5lcmF0b3JGdW5jdGlvbihuKT9hOmEubmV4dCgpLnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiB0LmRvbmU/dC52YWx1ZTphLm5leHQoKX0pKX0sRShQKSx1KFAsYywiR2VuZXJhdG9yIiksdShQLGEsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksdShQLCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgR2VuZXJhdG9yXSJ9KSksZS5rZXlzPWZ1bmN0aW9uKHQpe3ZhciBlPU9iamVjdCh0KSxuPVtdO2Zvcih2YXIgaSBpbiBlKW4ucHVzaChpKTtyZXR1cm4gbi5yZXZlcnNlKCksZnVuY3Rpb24gdCgpe2Zvcig7bi5sZW5ndGg7KXt2YXIgaT1uLnBvcCgpO2lmKGkgaW4gZSlyZXR1cm4gdC52YWx1ZT1pLHQuZG9uZT0hMSx0fXJldHVybiB0LmRvbmU9ITAsdH19LGUudmFsdWVzPV8sTC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOkwscmVzZXQ6ZnVuY3Rpb24oZSl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9dCx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz10LHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKEEpLCFlKWZvcih2YXIgbiBpbiB0aGlzKSJ0Ij09PW4uY2hhckF0KDApJiZpLmNhbGwodGhpcyxuKSYmIWlzTmFOKCtuLnNsaWNlKDEpKSYmKHRoaXNbbl09dCl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIHQ9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbihlKXtpZih0aGlzLmRvbmUpdGhyb3cgZTt2YXIgbj10aGlzO2Z1bmN0aW9uIHIoaSxyKXtyZXR1cm4gcy50eXBlPSJ0aHJvdyIscy5hcmc9ZSxuLm5leHQ9aSxyJiYobi5tZXRob2Q9Im5leHQiLG4uYXJnPXQpLCEhcn1mb3IodmFyIG89dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO28+PTA7LS1vKXt2YXIgYT10aGlzLnRyeUVudHJpZXNbb10scz1hLmNvbXBsZXRpb247aWYoInJvb3QiPT09YS50cnlMb2MpcmV0dXJuIHIoImVuZCIpO2lmKGEudHJ5TG9jPD10aGlzLnByZXYpe3ZhciBjPWkuY2FsbChhLCJjYXRjaExvYyIpLHU9aS5jYWxsKGEsImZpbmFsbHlMb2MiKTtpZihjJiZ1KXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8YS5maW5hbGx5TG9jKXJldHVybiByKGEuZmluYWxseUxvYyl9ZWxzZSBpZihjKXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKX1lbHNle2lmKCF1KXRocm93IEVycm9yKCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseSIpO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX19fX0sYWJydXB0OmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtuPj0wOy0tbil7dmFyIHI9dGhpcy50cnlFbnRyaWVzW25dO2lmKHIudHJ5TG9jPD10aGlzLnByZXYmJmkuY2FsbChyLCJmaW5hbGx5TG9jIikmJnRoaXMucHJldjxyLmZpbmFsbHlMb2Mpe3ZhciBvPXI7YnJlYWt9fW8mJigiYnJlYWsiPT09dHx8ImNvbnRpbnVlIj09PXQpJiZvLnRyeUxvYzw9ZSYmZTw9by5maW5hbGx5TG9jJiYobz1udWxsKTt2YXIgYT1vP28uY29tcGxldGlvbjp7fTtyZXR1cm4gYS50eXBlPXQsYS5hcmc9ZSxvPyh0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5uZXh0PW8uZmluYWxseUxvYyx2KTp0aGlzLmNvbXBsZXRlKGEpfSxjb21wbGV0ZTpmdW5jdGlvbih0LGUpe2lmKCJ0aHJvdyI9PT10LnR5cGUpdGhyb3cgdC5hcmc7cmV0dXJuImJyZWFrIj09PXQudHlwZXx8ImNvbnRpbnVlIj09PXQudHlwZT90aGlzLm5leHQ9dC5hcmc6InJldHVybiI9PT10LnR5cGU/KHRoaXMucnZhbD10aGlzLmFyZz10LmFyZyx0aGlzLm1ldGhvZD0icmV0dXJuIix0aGlzLm5leHQ9ImVuZCIpOiJub3JtYWwiPT09dC50eXBlJiZlJiYodGhpcy5uZXh0PWUpLHZ9LGZpbmlzaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi5maW5hbGx5TG9jPT09dClyZXR1cm4gdGhpcy5jb21wbGV0ZShuLmNvbXBsZXRpb24sbi5hZnRlckxvYyksQShuKSx2fX0sY2F0Y2g6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIG49dGhpcy50cnlFbnRyaWVzW2VdO2lmKG4udHJ5TG9jPT09dCl7dmFyIGk9bi5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT1pLnR5cGUpe3ZhciByPWkuYXJnO0Eobil9cmV0dXJuIHJ9fXRocm93IEVycm9yKCJpbGxlZ2FsIGNhdGNoIGF0dGVtcHQiKX0sZGVsZWdhdGVZaWVsZDpmdW5jdGlvbihlLG4saSl7cmV0dXJuIHRoaXMuZGVsZWdhdGU9e2l0ZXJhdG9yOl8oZSkscmVzdWx0TmFtZTpuLG5leHRMb2M6aX0sIm5leHQiPT09dGhpcy5tZXRob2QmJih0aGlzLmFyZz10KSx2fX0sZX1mdW5jdGlvbiBkKHQsZSxuLGkscixvLGEpe3RyeXt2YXIgcz10W29dKGEpLGM9cy52YWx1ZX1jYXRjaCh0KXtyZXR1cm4gdm9pZCBuKHQpfXMuZG9uZT9lKGMpOlByb21pc2UucmVzb2x2ZShjKS50aGVuKGkscil9ZnVuY3Rpb24gZih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oaSxyKXt2YXIgbz10LmFwcGx5KGUsbik7ZnVuY3Rpb24gYSh0KXtkKG8saSxyLGEscywibmV4dCIsdCl9ZnVuY3Rpb24gcyh0KXtkKG8saSxyLGEscywidGhyb3ciLHQpfWEodm9pZCAwKX0pKX19ZnVuY3Rpb24gaCh0KXtyZXR1cm4oaD0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWUuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7Y2hhdEJ1YmJsZUNsb3NlZDohMSxjaGF0V2luZG93U3RhdGU6Im1pbiIsZGVwYXJ0bWVudHM6W10saXNXaW5kb3dGb2N1c2VkOiExLG5lZWRDb25zZW50OiExLHBhZ2VTdGF0dXM6IiIscGFnZVN0YXR1c1ZlcnNpb246MCxwcmVjaGF0Rm9ybVN1Ym1pdHRlZDohMSxwcmV2aW91c1Nlc3Npb25LZXk6bnVsbCxyZXN0YXJ0ZWQ6ITEsc2Vzc2lvbktleToiIix2aXNpdG9yU29ja2V0U2VydmVyOiIiLHdhaXRUaW1lOjZlNCxsYXN0TWVzc2FnZVRpbWVzdGFtcDowLHRva2VuOm51bGwsdG9rZW5FeHBpcnk6MCxpc0luYWN0aXZlOm51bGwsb3JpZ2luYWxQYWdlVGl0bGU6bnVsbCxwYWdlUmVmZXJyZXI6bnVsbCx3YWl0VGltZVRpbWVvdXQ6bnVsbCx3YWl0VGltZUZpcnN0VGltZTohMSx3YWl0VGltZUluaXRpYWxpemVkOiExLGlzUmVjb25uZWN0aW5nOiExLGlzTm90VmFsaWRFbWFpbDpudWxsLGlzTm90VmFsaWRQaG9uZTpudWxsLGNvdW50cnlDb2RlOiJVUyIscmVnaW9uYWxDb2RlOm51bGx9LGdldHRlcnM6e2NoYXRCdWJibGVDbG9zZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdEJ1YmJsZUNsb3NlZH0sY2hhdFdpbmRvd1N0YXRlOmZ1bmN0aW9uKHQpe3JldHVybiB0LmNoYXRXaW5kb3dTdGF0ZX0saXNXaW5kb3dGb2N1c2VkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzV2luZG93Rm9jdXNlZH0scHJldmlvdXNTZXNzaW9uS2V5OmZ1bmN0aW9uKHQpe3JldHVybiB0LnByZXZpb3VzU2Vzc2lvbktleX0scGFnZVN0YXR1czpmdW5jdGlvbih0KXtyZXR1cm4gdC5wYWdlU3RhdHVzfSxwYWdlU3RhdHVzVmVyc2lvbjpmdW5jdGlvbih0KXtyZXR1cm4gdC5wYWdlU3RhdHVzVmVyc2lvbn0sc2Vzc2lvbktleTpmdW5jdGlvbih0KXtyZXR1cm4gdC5zZXNzaW9uS2V5fSx2aXNpdG9yU29ja2V0U2VydmVyOmZ1bmN0aW9uKHQpe3JldHVybiB0LnZpc2l0b3JTb2NrZXRTZXJ2ZXJ9LHByZWNoYXRGb3JtU3VibWl0dGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0LnByZWNoYXRGb3JtU3VibWl0dGVkfSxsYXN0TWVzc2FnZVRpbWVzdGFtcDpmdW5jdGlvbih0KXtyZXR1cm4gdC5sYXN0TWVzc2FnZVRpbWVzdGFtcH0sdG9rZW46ZnVuY3Rpb24odCl7cmV0dXJuIHQudG9rZW59LGRlcGFydG1lbnRzOmZ1bmN0aW9uKHQpe3JldHVybiB0LmRlcGFydG1lbnRzfSx3YWl0VGltZTpmdW5jdGlvbih0KXtyZXR1cm4gdC53YWl0VGltZX0sbmVlZENvbnNlbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQubmVlZENvbnNlbnR9LGlzSW5hY3RpdmU6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNJbmFjdGl2ZX0sb3JpZ2luYWxQYWdlVGl0bGU6ZnVuY3Rpb24odCl7cmV0dXJuIHQub3JpZ2luYWxQYWdlVGl0bGV9LGlzUmVjb25uZWN0aW5nOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzUmVjb25uZWN0aW5nfSxpc05vdFZhbGlkRW1haWw6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNOb3RWYWxpZEVtYWlsfSxpc05vdFZhbGlkUGhvbmU6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNOb3RWYWxpZFBob25lfSxjb3VudHJ5Q29kZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5jb3VudHJ5Q29kZX0scmVnaW9uYWxDb2RlOmZ1bmN0aW9uKHQpe3JldHVybiB0LnJlZ2lvbmFsQ29kZX19LGFjdGlvbnM6e2Nsb3NlQ2hhdEJ1YmJsZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0Q2hhdEJ1YmJsZUNsb3NlZCIsITApLGV8fGMuYS5wdWJsaXNoKCJub3RpZnlDaGF0QnViYmxlQ2xvc2VkIil9LHNlbmROYXZpZ2F0aW9uRXZlbnQ6ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZSxuPXQucm9vdEdldHRlcnM7YS5hLnNlc3Npb25TdG9yZSgpLmdldEl0ZW0oInByZXZpb3VzTmF2IikhPT13aW5kb3cubG9jYXRpb24uaHJlZiYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgdD17dTp3aW5kb3cubG9jYXRpb24uaHJlZix0OmRvY3VtZW50LnRpdGxlfTtudWxsIT09blsic2Vzc2lvbi9vcmlnaW5hbFBhZ2VUaXRsZSJdJiYodC50PW5bInNlc3Npb24vb3JpZ2luYWxQYWdlVGl0bGUiXSksZG9jdW1lbnQucmVmZXJyZXImJmUucGFnZVJlZmVycmVyIT09ZG9jdW1lbnQucmVmZXJyZXImJihlLnBhZ2VSZWZlcnJlcj1kb2N1bWVudC5yZWZlcnJlcix0LnI9ZG9jdW1lbnQucmVmZXJyZXIpLGMuYS5wdWJsaXNoKCJuYXYiLHQpLGEuYS5zZXNzaW9uU3RvcmUoKS5zZXRJdGVtKCJwcmV2aW91c05hdiIsdC51KX0pLDUwMCl9LHNldFBhZ2VTdGF0dXM6ZnVuY3Rpb24odCxlKXt2YXIgbj10LnN0YXRlLHI9dC5jb21taXQsYT10LmRpc3BhdGNoLHM9dC5yb290R2V0dGVycyxjPWUuZGF0YSx1PWUuc3RhdHVzO2lmKCFzWyJzY2hlZHVsZS9pc0VuYWJsZWQiXSYmdm9pZCAwIT09c1sid2lkZ2V0L2FnZW50RHJpdmVuU3RhdHVzIl0mJiExPT09c1sid2lkZ2V0L2FnZW50RHJpdmVuU3RhdHVzIl0pcmV0dXJuIGEoInRyaWdnZXJQYWdlU3RhdHVzQVBJIiwib25saW5lIikscigidXBkYXRlUGFnZVN0YXR1cyIsIm9ubGluZSIpLHZvaWQoYyYmT2JqZWN0LmtleXMoYykubGVuZ3RoJiZjLmRwdHN0JiZBcnJheS5pc0FycmF5KGMuZHB0c3QpJiZyKCJzZXREZXBhcnRtZW50IixjLmRwdHN0KSk7aWYoYyYmT2JqZWN0LmtleXMoYykubGVuZ3RoKXt2YXIgbDtpZighKGw9Yy5hc3QpfHwhaS5hLmlzU3RyaW5nKGwpfHxjLmRwdHN0JiYhQXJyYXkuaXNBcnJheShjLmRwdHN0KSlyZXR1cm47KGMuYXN2ZXI+bi5wYWdlU3RhdHVzVmVyc2lvbnx8MD09PWMuYXN2ZXIpJiYoby5hLm9yaWdpbmFsUGFnZVN0YXR1cz1jLmFzdCxyKCJ1cGRhdGVQYWdlU3RhdHVzVmVyc2lvbiIsYy5hc3Zlcikscigic2V0RGVwYXJ0bWVudCIsYy5kcHRzdCksc1sic2NoZWR1bGUvaXNFbmFibGVkIl18fChhKCJ0cmlnZ2VyUGFnZVN0YXR1c0FQSSIsYy5hc3QpLHIoInVwZGF0ZVBhZ2VTdGF0dXMiLGMuYXN0KSksby5hLmNhbGN1bGF0ZSgpKX1lbHNlIHUmJihhKCJ0cmlnZ2VyUGFnZVN0YXR1c0FQSSIsdSkscigidXBkYXRlUGFnZVN0YXR1cyIsdSkpfSx0b2dnbGVXaWRnZXQ6ZnVuY3Rpb24odCl7dmFyIGU9dC5kaXNwYXRjaCxuPXQuc3RhdGU7dC5yb290R2V0dGVyc1sid2lkZ2V0L2lzV2luZG93ZWQiXT93aW5kb3cuY2xvc2UoKToibWluIj09PW4uY2hhdFdpbmRvd1N0YXRlPyhlKCJ1cGRhdGVDaGF0V2luZG93U3RhdGUiLCJtYXgiKSxlKCJjaGF0L3NldFNlZW5BbGxVbnNlZW5NZXNzYWdlcyIsbnVsbCx7cm9vdDohMH0pKTplKCJ1cGRhdGVDaGF0V2luZG93U3RhdGUiLCJtaW4iKX0sdXBkYXRlQ2hhdFdpbmRvd1N0YXRlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5jb21taXQsaT10LnN0YXRlLG89dC5yb290R2V0dGVycztpLmNoYXRXaW5kb3dTdGF0ZSE9PWUmJihuKCJzZXRDaGF0V2luZG93U3RhdGUiLGUpLCJtYXgiPT09ZSYmInBvcCI9PT1vWyJ3aWRnZXQvb25DbGljayJdfHwoIm1heCI9PT1lP3IuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQ2hhdE1heGltaXplZCIpOiJtaW4iPT09ZSYmci5hLnRyaWdnZXJBcGlIYW5kbGVycygib25DaGF0TWluaW1pemVkIiksYy5hLnB1Ymxpc2goIm5vdGlmeVdpbmRvd1N0YXRlIixlKSkpfSx1cGRhdGVDb25uZWN0aW9uRGF0YTpmdW5jdGlvbih0LGUpe3ZhciBuPXQuc3RhdGUsaT10LmNvbW1pdCxyPXQuZGlzcGF0Y2g7dm9pZCAwIT09aChlLnZzcykmJmkoInNldFZpc2l0b3JTb2NrZXRTZXJ2ZXIiLGUudnNzKSx2b2lkIDAhPT1oKGUuc2spJiYobi5zZXNzaW9uS2V5JiZuLnNlc3Npb25LZXkhPT1lLnNrJiYoYS5hLnNlc3Npb25TdG9yZSgpLnNldEl0ZW0oInByZXZpb3VzTmF2IixudWxsKSxyKCJyb3V0ZXIvcm91dGVyUHVzaCIsIi8iLHtyb290OiEwfSkpLGkoInNldFNlc3Npb25LZXkiLGUuc2spKX0sdXBkYXRlQ29uc2VudEZsYWc6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldENvbnNlbnRGbGFnIixlKX0sdXBkYXRlUHJlY2hhdFN1Ym1pdHRlZDpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0UHJlY2hhdFN1Ym1pdHRlZCIsZSl9LHVwZGF0ZVByZXZpb3VzU2Vzc2lvbktleTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0UHJldmlvdXNTZXNzaW9uS2V5IixlKX0sdXBkYXRlSXNXaW5kb3dGb2N1c2VkOmZ1bmN0aW9uKHQsZSl7KDAsdC5jb21taXQpKCJzZXRJc1dpbmRvd0ZvY3VzZWQiLGUpfSx1cGRhdGVUb2tlbjpmdW5jdGlvbih0LGUpe3ZhciBuPXQuc3RhdGUsaT1uZXcgRGF0ZTtpLnNldFNlY29uZHMoZS5leHBpcnkpLGUudG9rZW4/KG4udG9rZW49ZS50b2tlbixzLmEuc3RvcmVUb2tlbihlLnRva2VuKSk6bi50b2tlbj1zLmEuZ2V0U3RvcmVkVG9rZW4oKSxuLnRva2VuRXhwaXJ5PWkuZ2V0VGltZSgpfSxyZXRyaWV2ZU5ld1Rva2VuOmZ1bmN0aW9uKHQpe3JldHVybiBmKGwoKS5tYXJrKChmdW5jdGlvbiBlKCl7dmFyIG47cmV0dXJuIGwoKS53cmFwKChmdW5jdGlvbihlKXtmb3IoOzspc3dpdGNoKGUucHJldj1lLm5leHQpe2Nhc2UgMDpyZXR1cm4gbj10LmRpc3BhdGNoLGUuYWJydXB0KCJyZXR1cm4iLG5ldyBQcm9taXNlKChmdW5jdGlvbih0LGUpe3UuYS5fdm0uJFRhd2tXaW5kb3cucmVnaXN0ZXIuaW5pdCgoZnVuY3Rpb24oZSl7bigidXBkYXRlVG9rZW4iLHt0b2tlbjplLmRhdGEudGtuLGV4cGlyeTplLmRhdGEudGtuRXhwfSksdCgpfSksZSl9KSkpO2Nhc2UgMjpjYXNlImVuZCI6cmV0dXJuIGUuc3RvcCgpfX0pLGUpfSkpKSgpfSx1cGRhdGVWaXNpdG9yQ2hhdFNlZW46ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldExhc3RNZXNzYWdlVGltZXN0YW1wIixlKSxjLmEucHVibGlzaCgidmlzaXRvckNoYXRTZWVuIix7dGltZXN0YW1wOmV9LChmdW5jdGlvbigpe30pKX0scmVzZXRTdGF0ZTpmdW5jdGlvbih0KXt2YXIgZT10LmNvbW1pdCxuPXQuc3RhdGU7ZSgidW5zZXREYXRhIiksY2xlYXJUaW1lb3V0KG4ud2FpdFRpbWVUaW1lb3V0KSxlKCJzZXRXYWl0VGltZUZpcnN0VGltZSIsITEpLGUoInNldFdhaXRUaW1lSW5pdGlhbGl6ZWQiLCExKX0sdXBkYXRlV2FpdFRpbWU6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldFdhaXRUaW1lIixlKX0sYWRkV2FpdFRpbWU6ZnVuY3Rpb24odCl7dmFyIGU9dC5jb21taXQsbj10LnN0YXRlLGk9dC5kaXNwYXRjaDtuLndhaXRUaW1lSW5pdGlhbGl6ZWR8fChlKCJzZXRXYWl0VGltZUluaXRpYWxpemVkIiwhMCksaSgid2FpdFRpbWVVcGRhdGVyIikpfSx3YWl0VGltZVVwZGF0ZXI6ZnVuY3Rpb24odCl7dmFyIGU9dC5jb21taXQsbj10LnN0YXRlLGk9dC5kaXNwYXRjaDtjbGVhclRpbWVvdXQobi53YWl0VGltZVRpbWVvdXQpLG4ud2FpdFRpbWU8PTZlNHx8KG4ud2FpdFRpbWVGaXJzdFRpbWU/KGUoInNldFdhaXRUaW1lIixuLndhaXRUaW1lLTZlNCksbi53YWl0VGltZVRpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpKCJ3YWl0VGltZVVwZGF0ZXIiKX0pLDZlNCkpOihlKCJzZXRXYWl0VGltZUZpcnN0VGltZSIsITApLG4ud2FpdFRpbWVUaW1lb3V0PXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7aSgid2FpdFRpbWVVcGRhdGVyIil9KSw2ZTQpKSl9LGNoZWNrVG9rZW5WYWxpZGl0eTpmdW5jdGlvbih0KXtyZXR1cm4gZihsKCkubWFyaygoZnVuY3Rpb24gZSgpe3ZhciBuLGk7cmV0dXJuIGwoKS53cmFwKChmdW5jdGlvbihlKXtmb3IoOzspc3dpdGNoKGUucHJldj1lLm5leHQpe2Nhc2UgMDppZihuPXQuZGlzcGF0Y2gsaT10LnN0YXRlLCEoKG5ldyBEYXRlKS5nZXRUaW1lKCk+PWkudG9rZW5FeHBpcnkpKXtlLm5leHQ9NTticmVha31yZXR1cm4gZS5uZXh0PTUsbigicmV0cmlldmVOZXdUb2tlbiIpO2Nhc2UgNTpyZXR1cm4gZS5hYnJ1cHQoInJldHVybiIpO2Nhc2UgNjpjYXNlImVuZCI6cmV0dXJuIGUuc3RvcCgpfX0pLGUpfSkpKSgpfSxyZWNvbm5lY3RTZXNzaW9uOmZ1bmN0aW9uKHQsZSl7dC5zdGF0ZS5pc1JlY29ubmVjdGluZz0hIWV9LHRyaWdnZXJQYWdlU3RhdHVzQVBJOmZ1bmN0aW9uKHQsZSl7ZSE9PXQuc3RhdGUucGFnZVN0YXR1cyYmci5hLnRyaWdnZXJBcGlIYW5kbGVycygib25TdGF0dXNDaGFuZ2UiLGUpfSxzZXRDb3VudHJ5Q29kZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgidXBkYXRlQ291bnRyeUNvZGUiLGUpfSxzZXRSZWdpb25hbENvZGU6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInVwZGF0ZVJlZ2lvbmFsQ29kZSIsZSl9fSxtdXRhdGlvbnM6e3NldENoYXRCdWJibGVDbG9zZWQ6ZnVuY3Rpb24odCxlKXt0LmNoYXRCdWJibGVDbG9zZWQ9ZX0sc2V0VmlzaXRvclNvY2tldFNlcnZlcjpmdW5jdGlvbih0LGUpe3QudmlzaXRvclNvY2tldFNlcnZlcj1lfSxzZXRTZXNzaW9uS2V5OmZ1bmN0aW9uKHQsZSl7dC5zZXNzaW9uS2V5PWV9LHNldENvbnNlbnRGbGFnOmZ1bmN0aW9uKHQsZSl7dC5uZWVkQ29uc2VudD1lfSxzZXRQcmV2aW91c1Nlc3Npb25LZXk6ZnVuY3Rpb24odCxlKXt0LnByZXZpb3VzU2Vzc2lvbktleT1lfSxzZXRDaGF0V2luZG93U3RhdGU6ZnVuY3Rpb24odCxlKXt0LmNoYXRXaW5kb3dTdGF0ZT1lfSxzZXRJc1dpbmRvd0ZvY3VzZWQ6ZnVuY3Rpb24odCxlKXt0LmlzV2luZG93Rm9jdXNlZD1lfSxzZXRQcmVjaGF0U3VibWl0dGVkOmZ1bmN0aW9uKHQsZSl7dC5wcmVjaGF0Rm9ybVN1Ym1pdHRlZD1lfSxzZXRMYXN0TWVzc2FnZVRpbWVzdGFtcDpmdW5jdGlvbih0LGUpe3QubGFzdE1lc3NhZ2VUaW1lc3RhbXA9ZX0sc2V0V2FpdFRpbWU6ZnVuY3Rpb24odCxlKXt0LndhaXRUaW1lPWV9LHNldElzSW5hY3RpdmU6ZnVuY3Rpb24odCxlKXt0LmlzSW5hY3RpdmU9ZSxhLmEuc2Vzc2lvblN0b3JlKCkuc2V0SXRlbSgicHJldmlvdXNOYXYiLG51bGwpfSxzZXRPcmlnaW5hbFBhZ2VUaXRsZTpmdW5jdGlvbih0LGUpe3Qub3JpZ2luYWxQYWdlVGl0bGU9ZX0sc2V0V2FpdFRpbWVGaXJzdFRpbWU6ZnVuY3Rpb24odCxlKXt0LndhaXRUaW1lRmlyc3RUaW1lPWV9LHNldFdhaXRUaW1lSW5pdGlhbGl6ZWQ6ZnVuY3Rpb24odCxlKXt0LndhaXRUaW1lSW5pdGlhbGl6ZWQ9ZX0sc2V0RGVwYXJ0bWVudDpmdW5jdGlvbih0LGUpe3QuZGVwYXJ0bWVudHM9ZX0sdW5zZXREYXRhOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT17Y2hhdEJ1YmJsZUNsb3NlZDohMSxjaGF0V2luZG93U3RhdGU6Im1pbiIsZGVwYXJ0bWVudHM6W10saXNXaW5kb3dGb2N1c2VkOiExLG5lZWRDb25zZW50OiExLHBhZ2VTdGF0dXM6IiIscGFnZVN0YXR1c1ZlcnNpb246MCxwcmVjaGF0Rm9ybVN1Ym1pdHRlZDohMSxwcmV2aW91c1Nlc3Npb25LZXk6bnVsbCxyZXN0YXJ0ZWQ6ITEsc2Vzc2lvbktleToiIix2aXNpdG9yU29ja2V0U2VydmVyOiIiLHdhaXRUaW1lOjZlNCxsYXN0TWVzc2FnZVRpbWVzdGFtcDowLHRva2VuOm51bGwsdG9rZW5FeHBpcnk6MCxpc0luYWN0aXZlOm51bGwsb3JpZ2luYWxQYWdlVGl0bGU6bnVsbCxwYWdlUmVmZXJyZXI6bnVsbCx3YWl0VGltZVRpbWVvdXQ6bnVsbCx3YWl0VGltZUZpcnN0VGltZTohMSx3YWl0VGltZUluaXRpYWxpemVkOiExLGlzUmVjb25uZWN0aW5nOiExLGlzTm90VmFsaWRFbWFpbDpudWxsLGlzTm90VmFsaWRQaG9uZTpudWxsLGNvdW50cnlDb2RlOiJVUyIscmVnaW9uYWxDb2RlOm51bGx9LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldOyJwYWdlU3RhdHVzIiE9PXImJih0W3JdPWVbcl0pfX0sc2V0SXNOb3RWYWxpZEVtYWlsOmZ1bmN0aW9uKHQsZSl7dC5pc05vdFZhbGlkRW1haWw9ZX0sc2V0SXNOb3RWYWxpZFBob25lOmZ1bmN0aW9uKHQsZSl7dC5pc05vdFZhbGlkUGhvbmU9ZX0sdXBkYXRlUGFnZVN0YXR1czpmdW5jdGlvbih0LGUpe3QucGFnZVN0YXR1cz1lfSx1cGRhdGVQYWdlU3RhdHVzVmVyc2lvbjpmdW5jdGlvbih0LGUpe3QucGFnZVN0YXR1c1ZlcnNpb249ZX0sdXBkYXRlQ291bnRyeUNvZGU6ZnVuY3Rpb24odCxlKXt0LmNvdW50cnlDb2RlPWV8fCJVUyJ9LHVwZGF0ZVJlZ2lvbmFsQ29kZTpmdW5jdGlvbih0LGUpe3QucmVnaW9uYWxDb2RlPWV8fG51bGx9fX19LCIzZGZkIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjJiMGUiKSxyPW4oIjJmNjIiKSxvPW4oImYwYjAiKSxhPW4oIjg3ZGQiKSxzPW4oIjdmNDYiKTtmdW5jdGlvbiBjKHQpe3JldHVybihjPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gdSh0LGUpe3JldHVybiBmdW5jdGlvbih0KXtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0fSh0KXx8ZnVuY3Rpb24odCxlKXt2YXIgbj1udWxsPT10P251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJnRbU3ltYm9sLml0ZXJhdG9yXXx8dFsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciBpLHIsbyxhLHM9W10sYz0hMCx1PSExO3RyeXtpZihvPShuPW4uY2FsbCh0KSkubmV4dCwwPT09ZSl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShpPW8uY2FsbChuKSkuZG9uZSkmJihzLnB1c2goaS52YWx1ZSkscy5sZW5ndGghPT1lKTtjPSEwKTt9Y2F0Y2godCl7dT0hMCxyPXR9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoYT1uLnJldHVybigpLE9iamVjdChhKSE9PWEpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgcn19cmV0dXJuIHN9fSh0LGUpfHxmdW5jdGlvbih0LGUpe2lmKHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdClyZXR1cm4gbCh0LGUpO3ZhciBuPXt9LnRvU3RyaW5nLmNhbGwodCkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT1uJiZ0LmNvbnN0cnVjdG9yJiYobj10LmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09bnx8IlNldCI9PT1uP0FycmF5LmZyb20odCk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9sKHQsZSk6dm9pZCAwfX0odCxlKXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGwodCxlKXsobnVsbD09ZXx8ZT50Lmxlbmd0aCkmJihlPXQubGVuZ3RoKTtmb3IodmFyIG49MCxpPUFycmF5KGUpO248ZTtuKyspaVtuXT10W25dO3JldHVybiBpfWZ1bmN0aW9uIGQodCxlKXt2YXIgbj1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLG4ucHVzaC5hcHBseShuLGkpfXJldHVybiBufWZ1bmN0aW9uIGYodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIG49bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/ZChPYmplY3QobiksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe2godCxlLG5bZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobikpOmQoT2JqZWN0KG4pKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gaCh0LGUsbil7cmV0dXJuKGU9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9Yyh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWMoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09YyhlKT9lOmUrIiJ9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bix0fXZhciBwPWZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFtuLmUoImNodW5rLTJkMGQyYjdjIiksbi5lKCJjaHVuay0yZDIyNGFmZiIpXSkudGhlbihuLmJpbmQobnVsbCwiZTBjYSIpKX0sbT1mdW5jdGlvbigpe3JldHVybiBQcm9taXNlLmFsbChbbi5lKCJjaHVuay00ZmU5ZDVkZCIpLG4uZSgiY2h1bmstMmQwZDJiN2MiKSxuLmUoImNodW5rLTNlYTJjN2NlIiksbi5lKCJjaHVuay03OTQxY2MwNiIpLG4uZSgiY2h1bmstNjI4OWZmOGUiKV0pLnRoZW4obi5iaW5kKG51bGwsImQ2YTMiKSl9LGc9ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwoW24uZSgiY2h1bmstMmQwZDJiN2MiKSxuLmUoImNodW5rLTJkMGM4MDkyIildKS50aGVuKG4uYmluZChudWxsLCI1MmJhIikpfSx2PWZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFtuLmUoImNodW5rLTJkMGQyYjdjIiksbi5lKCJjaHVuay0yZDBhZWYyNyIpXSkudGhlbihuLmJpbmQobnVsbCwiMGJkYyIpKX0sdz1mdW5jdGlvbigpe3JldHVybiBQcm9taXNlLmFsbChbbi5lKCJjaHVuay0yZDBkMmI3YyIpLG4uZSgiY2h1bmstM2VhMmM3Y2UiKSxuLmUoImNodW5rLTJkMGRhM2FmIildKS50aGVuKG4uYmluZChudWxsLCI2YjViIikpfTtpLmEuZGlyZWN0aXZlKCJ0YXdrLXNjcm9sbCIsby5UYXdrU2Nyb2xsKTt2YXIgeT17bWl4aW5zOlthLmFdLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57ZWxlbWVudElkOm8uSGVscGVyLmdlbmVyYXRlVVVJRCgpLHdpZHRoOiJhdXRvIixtaW5XaWR0aDoiMHB4IixoZWlnaHQ6ImF1dG8iLG1pbkhlaWdodDoiMHB4Iixpbml0aWFsRG9jdW1lbnRDbGljazpudWxsLGlzTWFudWFsSGFzaDohMSx0aXRsZUZsYXNoVGltZW91dDpudWxsLGlzVmlzaWJsZTohMX19LGNvbXB1dGVkOmYoZih7fSxPYmplY3Qoci5jKSh7aXNSaWdodDoid2lkZ2V0L2lzUmlnaHQiLGlzQm90dG9tOiJ3aWRnZXQvaXNCb3R0b20iLGlzQ2VudGVyOiJ3aWRnZXQvaXNDZW50ZXIiLGlzUm91bmRXaWRnZXQ6IndpZGdldC9pc1JvdW5kV2lkZ2V0IixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLGJ1YmJsZToid2lkZ2V0L2J1YmJsZSIsY2hhdEJ1YmJsZUNsb3NlZDoic2Vzc2lvbi9jaGF0QnViYmxlQ2xvc2VkIixzaG93TWVzc2FnZVByZXZpZXc6IndpZGdldC9zaG93TWVzc2FnZVByZXZpZXciLGlzV2luZG93ZWQ6IndpZGdldC9pc1dpbmRvd2VkIixpc0VtYmVkZGVkOiJ3aWRnZXQvaXNFbWJlZGRlZCIsbWF4RGltZW5zaW9uOiJ3aWRnZXQvbWF4RGVza3RvcCIsd2lkZ2V0SXNWaXNpYmxlOiJ3aWRnZXQvaXNWaXNpYmxlIixvbkNsaWNrOiJ3aWRnZXQvb25DbGljayIsY2hhdFdpbmRvd1N0YXRlOiJzZXNzaW9uL2NoYXRXaW5kb3dTdGF0ZSIsbW9iaWxlQnJvd3Nlck5hbWU6ImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIix1bnJlYWRNZXNzYWdlQ291bnQ6ImNoYXQvdW5yZWFkTWVzc2FnZUNvdW50IixzaG93VGl0bGVOb3RpZmljYXRpb246IndpZGdldC9zaG93VGl0bGVOb3RpZmljYXRpb24iLG9yaWdpbmFsUGFnZVRpdGxlOiJzZXNzaW9uL29yaWdpbmFsUGFnZVRpdGxlIixoYXNMaXZlQ2hhdDoid2lkZ2V0L2hhc0xpdmVDaGF0IixoYXNDaGF0U3RhcnRlZDoiY2hhdC9oYXNDaGF0U3RhcnRlZCIsYWdlbnRzQ291bnQ6ImNoYXQvYWdlbnRzQ291bnQiLGdlbmVyYWxWaXNpYmlsaXR5OiJ3aWRnZXQvZ2VuZXJhbFZpc2liaWxpdHkiLHdpZGdldFNob3c6IndpZGdldC9zaG93IixvczoiYnJvd3NlckRhdGEvb3MiLGlzUmVhZHk6InNvY2tldC9pc1JlYWR5In0pKSx7fSx7c3R5bGVPYmplY3Q6ZnVuY3Rpb24oKXt2YXIgdCxlLG4saT17InRyYW5zaXRpb24tcHJvcGVydHk6Ijoibm9uZSAhaW1wb3J0YW50OyIsIm1hcmdpbjoiOiIwcHggIWltcG9ydGFudDsiLCJwYWRkaW5nOiI6IjBweCAhaW1wb3J0YW50OyIsInotaW5kZXg6IjoiMjAwMDAwMDAwMCAhaW1wb3J0YW50OyIsIndpZHRoOiI6IiIuY29uY2F0KHRoaXMud2lkdGgsIiAhaW1wb3J0YW50OyIpLCJoZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5oZWlnaHQsIiAgIWltcG9ydGFudDsiKSwibWF4LWhlaWdodDoiOiIiLmNvbmNhdCgiYXV0byI9PT10aGlzLmhlaWdodD8ibm9uZSI6dGhpcy5oZWlnaHQsIiAgIWltcG9ydGFudDsiKSwibWF4LXdpZHRoOiI6IiIuY29uY2F0KCJhdXRvIj09PXRoaXMud2lkdGg/Im5vbmUiOnRoaXMud2lkdGgsIiAgIWltcG9ydGFudDsiKSwibWluLXdpZHRoOiI6IiIuY29uY2F0KHRoaXMubWluV2lkdGgsIiAgIWltcG9ydGFudDsiKSwibWluLWhlaWdodDoiOiIiLmNvbmNhdCh0aGlzLm1pbkhlaWdodCwiICAhaW1wb3J0YW50OyIpfTtyZXR1cm4gdGhpcy5pc0VtYmVkZGVkP2lbInBvc2l0aW9uOiJdPSJyZWxhdGl2ZSAhaW1wb3J0YW50OyI6dGhpcy5pc1dpbmRvd2VkP2lbInBvc2l0aW9uOiJdPSJmaXhlZCAhaW1wb3J0YW50OyI6KGlbInBvc2l0aW9uOiJdPSJmaXhlZCAhaW1wb3J0YW50OyIsdGhpcy5pc0JvdHRvbXx8dGhpcy5pc0NlbnRlcj8oZT0iIi5jb25jYXQoIjBweCIsIiAhaW1wb3J0YW50OyIpLG49ImF1dG8gIWltcG9ydGFudDsiKTooZT0iYXV0byAhaW1wb3J0YW50OyIsbj0iIi5jb25jYXQoIjBweCIsIiAhaW1wb3J0YW50OyIpKSx0aGlzLmlzVmlzaWJsZT9pWyJkaXNwbGF5OiJdPSJibG9jayAhaW1wb3J0YW50OyI6aVsiZGlzcGxheToiXT0ibm9uZSAhaW1wb3J0YW50OyIsaVsibGVmdDoiXT10aGlzLmlzUmlnaHQ/ImF1dG8gIWltcG9ydGFudDsiOiIiLmNvbmNhdCgiMHB4IiwiICFpbXBvcnRhbnQ7IiksaVsicmlnaHQ6Il09dGhpcy5pc1JpZ2h0PyIiLmNvbmNhdCgiMHB4IiwiICFpbXBvcnRhbnQ7Iik6ImF1dG8gIWltcG9ydGFudDsiLGlbImJvdHRvbToiXT1lLGlbInRvcDoiXT1uLGlbInRyYW5zZm9ybToiXT0ibm9uZSAhaW1wb3J0YW50OyIpLHRoaXMuJFRhd2tKU0FQSS5sb2NhbF9BUEkmJnRoaXMuJFRhd2tKU0FQSS5sb2NhbF9BUEkuY3VzdG9tU3R5bGUmJk9iamVjdC5rZXlzKHRoaXMuJFRhd2tKU0FQSS5sb2NhbF9BUEkuY3VzdG9tU3R5bGUpLmxlbmd0aCYmdGhpcy4kVGF3a0pTQVBJLmxvY2FsX0FQSS5jdXN0b21TdHlsZS56SW5kZXgmJihpWyJ6LWluZGV4OiJdPSIiLmNvbmNhdChzLmEuY2xlYW51cENzc1ZhbHVlKHRoaXMuJFRhd2tKU0FQSS5sb2NhbF9BUEkuY3VzdG9tU3R5bGUuekluZGV4KSwiICFpbXBvcnRhbnQ7IikpLHQ9ZihmKHt9LHRoaXMuZ2VuZXJpY1N0eWxlcyksaSksT2JqZWN0LmVudHJpZXModCkubWFwKChmdW5jdGlvbih0KXt2YXIgZT11KHQsMik7cmV0dXJuIGVbMF0rZVsxXX0pKS5qb2luKCJcbiIpfX0pLHdhdGNoOntjaGF0V2luZG93U3RhdGU6ZnVuY3Rpb24odCl7InBvcCI9PT10aGlzLm9uQ2xpY2smJiJtYXgiPT09dD90aGlzLiRUYXdrV2luZG93LnBvcG91dFdpZGdldCgpOnRoaXMubW9iaWxlQnJvd3Nlck5hbWUmJiF0aGlzLiRUYXdrSlNBUEkubG9jYWxfQVBJLmRpc2FibGVNb2JpbGVCYWNrSGlzdG9yeSYmKCJtYXgiIT09dHx8d2luZG93LmxvY2F0aW9uLmhhc2gmJiIjbWF4LXdpZGdldCIhPT13aW5kb3cubG9jYXRpb24uaGFzaD8ibWluIj09PXQmJiIjbWF4LXdpZGdldCI9PT13aW5kb3cubG9jYXRpb24uaGFzaCYmKHRoaXMuaXNNYW51YWxIYXNoPSEwLHdpbmRvdy5oaXN0b3J5LmJhY2soKSk6KHRoaXMuaXNNYW51YWxIYXNoPSEwLHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZT93aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUoe3BhZ2U6MX0sbnVsbCx3aW5kb3cubG9jYXRpb24uaHJlZisiI21heC13aWRnZXQiKTp3aW5kb3cubG9jYXRpb24uaGFzaD0ibWF4LXdpZGdldCIpKSx0aGlzLmNoZWNrSWZWaXNpYmxlKCl9LHVucmVhZE1lc3NhZ2VDb3VudDpmdW5jdGlvbih0KXt0aGlzLnNob3dUaXRsZU5vdGlmaWNhdGlvbiYmKHRoaXMuaGFzTGl2ZUNoYXR8fHRoaXMuaGFzQ2hhdFN0YXJ0ZWQmJjAhPT10aGlzLmFnZW50c0NvdW50KSYmKHQ+MD90aGlzLnVwZGF0ZVBhZ2VUaXRsZSgpOnRoaXMudXBkYXRlUGFnZVRpdGxlKCEwKSl9LHBhZ2VTdGF0dXM6ZnVuY3Rpb24odCl7Im9mZmxpbmUiPT09dD90aGlzLnVwZGF0ZVBhZ2VUaXRsZSghMCk6dGhpcy51bnJlYWRNZXNzYWdlQ291bnQ+MCYmdGhpcy51cGRhdGVQYWdlVGl0bGUoKSx0aGlzLmNoZWNrSWZWaXNpYmxlKCl9LHdpZGdldFNob3c6ZnVuY3Rpb24oKXt0aGlzLmNoZWNrSWZWaXNpYmxlKCl9LGlzUmVhZHk6ZnVuY3Rpb24odCl7dCYmdGhpcy4kVGF3a0pTQVBJLnRyaWdnZXJBcGlIYW5kbGVycygib25Mb2FkIil9LGlzVmlzaWJsZTpmdW5jdGlvbih0KXt0aGlzLmFwcGx5VmlzaWJpbGl0eSh0KX19LG1ldGhvZHM6ZihmKHt9LE9iamVjdChyLmIpKHt1cGRhdGVNb2JpbGVMYW5kc2NhcGU6IndpZGdldC91cGRhdGVNb2JpbGVMYW5kc2NhcGUifSkpLHt9LHt1cGRhdGVQYWdlVGl0bGU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztjbGVhckludGVydmFsKHRoaXMudGl0bGVGbGFzaFRpbWVvdXQpLHR8fCJvZmZsaW5lIj09PXRoaXMucGFnZVN0YXR1cz9udWxsIT09dGhpcy5vcmlnaW5hbFBhZ2VUaXRsZSYmKGRvY3VtZW50LnRpdGxlPXRoaXMub3JpZ2luYWxQYWdlVGl0bGUsdGhpcy4kc3RvcmUuY29tbWl0KCJzZXNzaW9uL3NldE9yaWdpbmFsUGFnZVRpdGxlIixudWxsKSk6KG51bGw9PT10aGlzLm9yaWdpbmFsUGFnZVRpdGxlJiZ0aGlzLiRzdG9yZS5jb21taXQoInNlc3Npb24vc2V0T3JpZ2luYWxQYWdlVGl0bGUiLGRvY3VtZW50LnRpdGxlKSx0aGlzLnRpdGxlRmxhc2hUaW1lb3V0PXNldEludGVydmFsKChmdW5jdGlvbigpe2RvY3VtZW50LnRpdGxlPWUub3JpZ2luYWxQYWdlVGl0bGU9PT1kb2N1bWVudC50aXRsZT9lLiRpMThuKCJjaGF0IiwibmV3X21lc3NhZ2UiLHtjb3VudDplLnVucmVhZE1lc3NhZ2VDb3VudH0pOmUub3JpZ2luYWxQYWdlVGl0bGV9KSwxZTMpKX0scmVzaXplSGFuZGxlcjpmdW5jdGlvbigpe3ZhciB0LGU9dGhpcztjbGVhclRpbWVvdXQodCksdD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2UubW9iaWxlQnJvd3Nlck5hbWUmJihlLiRUYXdrV2luZG93LmlzTW9iaWxlT3B0aW1pemVkV2Vic2l0ZSYmIm9wZXJhIiE9PWUubW9iaWxlQnJvd3Nlck5hbWUmJiJhbmRyb2lkMi4zIiE9PWUubW9iaWxlQnJvd3Nlck5hbWV8fGUuY2FsY3VsYXRlWm9vbSgpKX0pLDEwMCl9LGlzTGFuZHNjYXBlOmZ1bmN0aW9uKCl7cmV0dXJuInNhZmFyaSI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHwiYW5kcm9pZCI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lPzAhPT13aW5kb3cub3JpZW50YXRpb246c2NyZWVuLmhlaWdodDxzY3JlZW4ud2lkdGh8fHdpbmRvdy5pbm5lckhlaWdodDx3aW5kb3cuaW5uZXJXaWR0aH0sY2FsY3VsYXRlWm9vbTpmdW5jdGlvbigpe3ZhciB0LGU7InNhZmFyaSI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHwiYW5kcm9pZCI9PT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3Q9KCF0aGlzLmlzTGFuZHNjYXBlKCl8fCJpUGhvbmUiIT09bmF2aWdhdG9yLnBsYXRmb3JtJiYiaVBhZCIhPT1uYXZpZ2F0b3IucGxhdGZvcm0/c2NyZWVuLndpZHRoOnNjcmVlbi5oZWlnaHQpL3dpbmRvdy5pbm5lcldpZHRoOnQ9c2NyZWVuLndpZHRoL3dpbmRvdy5pbm5lcldpZHRoLGU9KDEvdC50b0ZpeGVkKDIpKS50b0ZpeGVkKDIpLCJjaHJvbWUiIT09dGhpcy5tb2JpbGVCcm93c2VyTmFtZSYmImllIiE9PXRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fChlPWU8LjI/LjI6ZSksdGhpcy4kc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0Wm9vbVJhdGlvIixlKX0saW5qZWN0Tm9kZVN0eWxlOmZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsInRleHQvY3NzIiksdC5pbm5lckhUTUw9IiMiLmNvbmNhdCh0aGlzLmVsZW1lbnRJZCwiIHsiKS5jb25jYXQodGhpcy5zdHlsZU9iamVjdCwifSIpLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9LGFwcGx5VmlzaWJpbGl0eTpmdW5jdGlvbih0KXt0aGlzLiRlbCYmdGhpcy4kZWwuc3R5bGUmJnRoaXMuJGVsLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5Iix0PyJibG9jayI6Im5vbmUiLCJpbXBvcnRhbnQiKX0sY2hlY2tJZlZpc2libGU6ZnVuY3Rpb24oKXtpZih0aGlzLmlzV2luZG93ZWQpcmV0dXJuIm9mZmxpbmUiIT09dGhpcy5wYWdlU3RhdHVzfHx0aGlzLmdlbmVyYWxWaXNpYmlsaXR5LnNob3dXaGVuT2ZmbGluZT92b2lkKHRoaXMuaXNWaXNpYmxlPSEwKTood2luZG93LmNsb3NlKCksdm9pZCh0aGlzLmlzVmlzaWJsZT0hMSkpOyJvZmZsaW5lIiE9PXRoaXMucGFnZVN0YXR1c3x8dGhpcy5nZW5lcmFsVmlzaWJpbGl0eS5zaG93V2hlbk9mZmxpbmU/dGhpcy53aWRnZXRJc1Zpc2libGV8fCJtYXgiIT09dGhpcy5jaGF0V2luZG93U3RhdGU/bnVsbD09PXRoaXMud2lkZ2V0U2hvdz90aGlzLmlzVmlzaWJsZT10aGlzLndpZGdldElzVmlzaWJsZTp0aGlzLmlzVmlzaWJsZT10aGlzLndpZGdldFNob3c6dGhpcy5pc1Zpc2libGU9ITA6dGhpcy5pc1Zpc2libGU9ITF9LGhhbmRsZU1vYmlsZUxhbmRzY2FwZTpmdW5jdGlvbigpe3ZhciB0PXdpbmRvdy5tYXRjaE1lZGlhKCIob3JpZW50YXRpb246IGxhbmRzY2FwZSkiKS5tYXRjaGVzO3RoaXMubW9iaWxlQnJvd3Nlck5hbWUmJih0P3RoaXMudXBkYXRlTW9iaWxlTGFuZHNjYXBlKCEwKTp0aGlzLnVwZGF0ZU1vYmlsZUxhbmRzY2FwZSghMSkpfX0pLG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKHRoaXMuaXNSZWFkeSYmdGhpcy4kVGF3a0pTQVBJLnRyaWdnZXJBcGlIYW5kbGVycygib25Mb2FkIiksKHRoaXMuaXNFbWJlZGRlZHx8dGhpcy5pc1dpbmRvd2VkKSYmKHRoaXMud2lkdGg9IjEwMCUiLHRoaXMuaGVpZ2h0PSIxMDAlIix0aGlzLm1pbldpZHRoPSIxMDAlIix0aGlzLm1pbkhlaWdodD0iMTAwJSIpLHRoaXMuaXNFbWJlZGRlZCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy4kVGF3a0pTQVBJLmxvY2FsX0FQSS5lbWJlZGRlZCk7ZSYmKGUuYXBwZW5kQ2hpbGQodGhpcy4kZWwpLChlLmNsaWVudFdpZHRoPDI4MHx8ZS5jbGllbnRIZWlnaHQ8MzMwKSYmKHRoaXMud2lkdGg9IiIuY29uY2F0KHRoaXMubWF4RGltZW5zaW9uLndpZHRoLCJweCIpLHRoaXMuaGVpZ2h0PSIiLmNvbmNhdCh0aGlzLm1heERpbWVuc2lvbi5oZWlnaHQsInB4IiksdGhpcy5taW5XaWR0aD0iIi5jb25jYXQodGhpcy5tYXhEaW1lbnNpb24ud2lkdGgsInB4IiksdGhpcy5taW5IZWlnaHQ9IiIuY29uY2F0KHRoaXMubWF4RGltZW5zaW9uLmhlaWdodCwicHgiKSkpfWVsc2UgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLiRlbCk7dGhpcy5pc1dpbmRvd2VkfHx0aGlzLmlzRW1iZWRkZWR8fCh0aGlzLiRUYXdrV2luZG93Lm1pbldpZGdldD1uZXcgaS5hKHtyZW5kZXI6ZnVuY3Rpb24odCl7cmV0dXJuIHQocCl9LHN0b3JlOnRoaXMuJHN0b3JlfSkuJG1vdW50KCIjbWluLXdpZGdldCIpLCF0aGlzLmJ1YmJsZXx8dGhpcy5jaGF0QnViYmxlQ2xvc2VkfHx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHwodGhpcy4kVGF3a1dpbmRvdy5idWJibGVXaWRnZXQ9bmV3IGkuYSh7cmVuZGVyOmZ1bmN0aW9uKHQpe3JldHVybiB0KHYpfSxzdG9yZTp0aGlzLiRzdG9yZX0pLiRtb3VudCgiI2NoYXQtYnViYmxlIikpLHRoaXMuc2hvd01lc3NhZ2VQcmV2aWV3JiYodGhpcy4kVGF3a1dpbmRvdy5tZXNzYWdlUHJldmlldz1uZXcgaS5hKHtyZW5kZXI6ZnVuY3Rpb24odCl7cmV0dXJuIHQodyl9LHN0b3JlOnRoaXMuJHN0b3JlfSkuJG1vdW50KCIjbWVzc2FnZS1wcmV2aWV3IikpKSwoIm1heCI9PT10aGlzLm9uQ2xpY2t8fCJzbGlkZSI9PT10aGlzLm9uQ2xpY2t8fHRoaXMuaXNXaW5kb3dlZHx8dGhpcy5pc0VtYmVkZGVkKSYmKHRoaXMuJFRhd2tXaW5kb3cubWF4V2lkZ2V0PW5ldyBpLmEoe3JlbmRlcjpmdW5jdGlvbih0KXtyZXR1cm4gdChtKX0sc3RvcmU6dGhpcy4kc3RvcmV9KS4kbW91bnQoIiNtYXgtd2lkZ2V0IikpLCJtYXgiIT09dGhpcy5vbkNsaWNrJiZ0aGlzLmlzRW1iZWRkZWQmJnRoaXMuaXNXaW5kb3dlZCYmdGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8KHRoaXMuJFRhd2tXaW5kb3cuYXBwPW5ldyBpLmEoe3JlbmRlcjpmdW5jdGlvbih0KXtyZXR1cm4gdChnKX0sc3RvcmU6dGhpcy4kc3RvcmV9KS4kbW91bnQoIiNicmFuZGluZy13aWRnZXQiKSksdGhpcy5pbml0aWFsRG9jdW1lbnRDbGljaz1mdW5jdGlvbigpe3QuJFRhd2tBdWRpb1BsYXllci5pbml0KCksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0LmluaXRpYWxEb2N1bWVudENsaWNrKX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmluaXRpYWxEb2N1bWVudENsaWNrLCExKSx0aGlzLiRldmVudEJ1cy4kb24oInJlbW92ZVdpZGdldCIsKGZ1bmN0aW9uKCl7dC4kVGF3a1dpbmRvdy5hcHAuJGRlc3Ryb3koKSx0LiRUYXdrV2luZG93LmFwcC4kZWwucGFyZW50Tm9kZSYmdC4kVGF3a1dpbmRvdy5hcHAuJGVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodC4kVGF3a1dpbmRvdy5hcHAuJGVsKX0pKTt2YXIgbj13aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUscj13aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGU7IiNtYXgtd2lkZ2V0Ij09PXdpbmRvdy5sb2NhdGlvbi5oYXNoJiYod2luZG93Lmhpc3Rvcnk/d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKHt9LGRvY3VtZW50LnRpdGxlLCIuIik6d2luZG93LmxvY2F0aW9uLmhhc2g9IiIpLHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZT1mdW5jdGlvbihlLGkscil7Zm9yKHZhciBvPWFyZ3VtZW50cy5sZW5ndGgsYT1uZXcgQXJyYXkobz4zP28tMzowKSxzPTM7czxvO3MrKylhW3MtM109YXJndW1lbnRzW3NdO24uYXBwbHkod2luZG93Lmhpc3RvcnksW2UsaSxyXS5jb25jYXQoYSkpO3ZhciBjPXImJiJzdHJpbmciPT10eXBlb2Ygcj9yLmluZGV4T2YoIiNtYXgtd2lkZ2V0Iik6LTE7LTE9PT1jP3QuJHN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3NlbmROYXZpZ2F0aW9uRXZlbnQiLHt9LHtyb290OiEwfSk6dC5pc01hbnVhbEhhc2g9ITF9LHdpbmRvdy5oaXN0b3J5LnJlcGxhY2VTdGF0ZT1mdW5jdGlvbihlLG4saSl7Zm9yKHZhciBvPWkmJiJzdHJpbmciPT10eXBlb2YgaT9pLmluZGV4T2YoIiNtYXgtd2lkZ2V0Iik6LTEsYT1hcmd1bWVudHMubGVuZ3RoLHM9bmV3IEFycmF5KGE+Mz9hLTM6MCksYz0zO2M8YTtjKyspc1tjLTNdPWFyZ3VtZW50c1tjXTtyLmFwcGx5KHdpbmRvdy5oaXN0b3J5LFtlLG4saV0uY29uY2F0KHMpKSwtMT09PW8/dC4kc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2VuZE5hdmlnYXRpb25FdmVudCIse30se3Jvb3Q6ITB9KTp0LmlzTWFudWFsSGFzaD0hMX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIiwoZnVuY3Rpb24oKXtpZigibWF4Ij09PXQuY2hhdFdpbmRvd1N0YXRlJiZ0Lm1vYmlsZUJyb3dzZXJOYW1lKXJldHVybiB0LmlzTWFudWFsSGFzaD0hMCx0LiRzdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi91cGRhdGVDaGF0V2luZG93U3RhdGUiLCJtaW4iKTt0LmlzTWFudWFsSGFzaHx8dC4kc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2VuZE5hdmlnYXRpb25FdmVudCIse30se3Jvb3Q6ITB9KX0pKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsKGZ1bmN0aW9uKCl7dC5pc01hbnVhbEhhc2h8fHdpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLmhhc2gmJigiIyI9PT13aW5kb3cubG9jYXRpb24uaGFzaHx8IiNtYXgtd2lkZ2V0Ij09PXdpbmRvdy5sb2NhdGlvbi5oYXNoKXx8dC4kc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2VuZE5hdmlnYXRpb25FdmVudCIse30se3Jvb3Q6ITB9KX0pKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwoZnVuY3Rpb24oKXt0LnJlc2l6ZUhhbmRsZXIoKX0pKSx0aGlzLnJlc2l6ZUhhbmRsZXIoKSx0aGlzLmluamVjdE5vZGVTdHlsZSgpLHRoaXMuaGFuZGxlTW9iaWxlTGFuZHNjYXBlKCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdGhpcy5oYW5kbGVNb2JpbGVMYW5kc2NhcGUpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmVwcmludCIsKGZ1bmN0aW9uKCl7bnVsbCE9PXQub3JpZ2luYWxQYWdlVGl0bGUmJihkb2N1bWVudC50aXRsZT10Lm9yaWdpbmFsUGFnZVRpdGxlKSx0LmFwcGx5VmlzaWJpbGl0eSghMSl9KSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImFmdGVycHJpbnQiLChmdW5jdGlvbigpe3QudW5yZWFkTWVzc2FnZUNvdW50PjA/dC51cGRhdGVQYWdlVGl0bGUoKTp0LnVwZGF0ZVBhZ2VUaXRsZSghMCksdC5hcHBseVZpc2liaWxpdHkodC5pc1Zpc2libGUpfSkpfSxjcmVhdGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LmNoZWNrSWZWaXNpYmxlKCl9KSl9fSxiPW4oIjI4NzciKSxrPU9iamVjdChiLmEpKHksKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fc2VsZi5fYztyZXR1cm4gdCgiZGl2Iix7YXR0cnM6e2lkOnRoaXMuZWxlbWVudElkfX0sW3QoImRpdiIse2F0dHJzOntpZDoibWluLXdpZGdldCJ9fSksdCgiZGl2Iix7YXR0cnM6e2lkOiJtYXgtd2lkZ2V0In19KSx0KCJkaXYiLHthdHRyczp7aWQ6ImJyYW5kaW5nLXdpZGdldCJ9fSksdCgiZGl2Iix7YXR0cnM6e2lkOiJtZXNzYWdlLXByZXZpZXcifX0pLHQoImRpdiIse2F0dHJzOntpZDoiY2hhdC1idWJibGUifX0pXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCk7ZS5hPWsuZXhwb3J0c30sNDM2MDpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oIjJiMGUiKSxyPW4oIjJmNjIiKTtmdW5jdGlvbiBvKHQpe3JldHVybihvPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gYSh0LGUpe3ZhciBuPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksbi5wdXNoLmFwcGx5KG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gcyh0LGUsbil7cmV0dXJuKGU9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9byh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPW8oaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09byhlKT9lOmUrIiJ9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bix0fW4oImNjYTYiKTt2YXIgYz17fSx1PXttb2R1bGVzOnt9fTshZnVuY3Rpb24oKXt2YXIgdD1uKCJjM2UxIik7dC5rZXlzKCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49dChlKTtpZihjW2VdIT09bil7Y1tlXT1uO3ZhciBpPWUucmVwbGFjZSgvXlwuXC8vLCIiKS5yZXBsYWNlKC9cLlx3KyQvLCIiKS5zcGxpdCgvXC8vKS5tYXAoKGZ1bmN0aW9uKHQpe3ZhciBlLG4saT10LnNwbGl0KCItIik7aS5sZW5ndGgmJigoZT1pLnNwbGljZSgwLDEpKS5sZW5ndGgmJihuPShlPWVbMF0udG9Mb3dlckNhc2UoKSkuY2hhckF0KDApLnRvTG93ZXJDYXNlKCkrZS5zbGljZSgxKSkpO2Zvcih2YXIgcj0wO3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdLnRvTG93ZXJDYXNlKCk7bis9by5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStvLnNsaWNlKDEpfXJldHVybiBufSkpLHI9e307cltpLnBvcCgpXT1mdW5jdGlvbih0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9hKE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cyh0LGUsbltlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6YShPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pKX1yZXR1cm4gdH0oe30sbi5kZWZhdWx0KSx1Lm1vZHVsZXM9T2JqZWN0LmFzc2lnbihyLHUubW9kdWxlcyl9fSkpfSgpO3ZhciBsPXUubW9kdWxlcztpLmEudXNlKHIuYSksdm9pZCAwIT09d2luZG93LlByb3RvdHlwZSYmInN0cmluZyI9PXR5cGVvZiB3aW5kb3cuUHJvdG90eXBlLlZlcnNpb24mJnBhcnNlRmxvYXQod2luZG93LlByb3RvdHlwZS5WZXJzaW9uLnN1YnN0cigwLDMpLDEwKTw9MS42JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoQXJyYXkucHJvdG90eXBlLCJyZWR1Y2UiLHt2YWx1ZTpmdW5jdGlvbih0KXtpZihudWxsPT09dGhpcyl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheS5wcm90b3R5cGUucmVkdWNlIGNhbGxlZCBvbiBudWxsIG9yIHVuZGVmaW5lZCIpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoIiIuY29uY2F0KHQsIiBpcyBub3QgYSBmdW5jdGlvbiIpKTt2YXIgZSxuPU9iamVjdCh0aGlzKSxpPW4ubGVuZ3RoPj4+MCxyPTA7aWYoYXJndW1lbnRzLmxlbmd0aD49MillPWFyZ3VtZW50c1sxXTtlbHNle2Zvcig7cjxpJiYhKHIgaW4gbik7KXIrKztpZihyPj1pKXRocm93IG5ldyBUeXBlRXJyb3IoIlJlZHVjZSBvZiBlbXB0eSBhcnJheSB3aXRoIG5vIGluaXRpYWwgdmFsdWUiKTtlPW5bcisrXX1mb3IoO3I8aTspciBpbiBuJiYoZT10KGUsbltyXSxyLG4pKSxyKys7cmV0dXJuIGV9fSksZS5hPW5ldyByLmEuU3RvcmUoe2FjdGlvbnM6e3Jlc2V0OmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10LmRpc3BhdGNoLG49T2JqZWN0LmtleXMobCksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO2UoIiIuY29uY2F0KHIsIi9yZXNldFN0YXRlIikpfX19LG1vZHVsZXM6bH0pfSwiNDNhZiI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCI1ZjM0Iikscj1uKCJiZGQwIiksbz1uKCJiN2NjIik7ZnVuY3Rpb24gYSh0LGUpe3ZhciBuPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZ0W1N5bWJvbC5pdGVyYXRvcl18fHRbIkBAaXRlcmF0b3IiXTtpZighbil7aWYoQXJyYXkuaXNBcnJheSh0KXx8KG49cyh0KSl8fGUmJnQmJiJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGgpe24mJih0PW4pO3ZhciBpPTAscj1mdW5jdGlvbigpe307cmV0dXJue3M6cixuOmZ1bmN0aW9uKCl7cmV0dXJuIGk+PXQubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTp0W2krK119fSxlOmZ1bmN0aW9uKHQpe3Rocm93IHR9LGY6cn19dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfXZhciBvLGE9ITAsYz0hMTtyZXR1cm57czpmdW5jdGlvbigpe249bi5jYWxsKHQpfSxuOmZ1bmN0aW9uKCl7dmFyIHQ9bi5uZXh0KCk7cmV0dXJuIGE9dC5kb25lLHR9LGU6ZnVuY3Rpb24odCl7Yz0hMCxvPXR9LGY6ZnVuY3Rpb24oKXt0cnl7YXx8bnVsbD09bi5yZXR1cm58fG4ucmV0dXJuKCl9ZmluYWxseXtpZihjKXRocm93IG99fX19ZnVuY3Rpb24gcyh0LGUpe2lmKHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdClyZXR1cm4gYyh0LGUpO3ZhciBuPXt9LnRvU3RyaW5nLmNhbGwodCkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT1uJiZ0LmNvbnN0cnVjdG9yJiYobj10LmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09bnx8IlNldCI9PT1uP0FycmF5LmZyb20odCk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9jKHQsZSk6dm9pZCAwfX1mdW5jdGlvbiBjKHQsZSl7KG51bGw9PWV8fGU+dC5sZW5ndGgpJiYoZT10Lmxlbmd0aCk7Zm9yKHZhciBuPTAsaT1BcnJheShlKTtuPGU7bisrKWlbbl09dFtuXTtyZXR1cm4gaX1mdW5jdGlvbiB1KHQpe3JldHVybih1PSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9dmFyIGw9ZnVuY3Rpb24oKXt2YXIgdCxlPSExLG49ITEsaT1Cb29sZWFuKHdpbmRvdy5TaG9waWZ5JiYib2JqZWN0Ij09PXUod2luZG93LlNob3BpZnkpJiZ3aW5kb3cuU2hvcGlmeS5zaG9wKSxyPWEoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgibGluayIpKTt0cnl7Zm9yKHIucygpOyEodD1yLm4oKSkuZG9uZTspe3ZhciBvPXQudmFsdWU7aWYoby5ocmVmLmluY2x1ZGVzKCJjZG4uc2hvcGlmeS5jb20iKXx8by5ocmVmLmluY2x1ZGVzKCJzaG9waWZ5Y2RuLmNvbSIpKXtlPSEwO2JyZWFrfX19Y2F0Y2godCl7ci5lKHQpfWZpbmFsbHl7ci5mKCl9aWYoIWUpe3ZhciBzLGM9YShkb2N1bWVudC5zY3JpcHRzKTt0cnl7Zm9yKGMucygpOyEocz1jLm4oKSkuZG9uZTspe3ZhciBsPXMudmFsdWU7aWYobC5zcmMuaW5jbHVkZXMoImNkbi5zaG9waWZ5LmNvbSIpfHxsLnNyYy5pbmNsdWRlcygic2hvcGlmeWNkbi5jb20iKSl7bj0hMDticmVha319fWNhdGNoKHQpe2MuZSh0KX1maW5hbGx5e2MuZigpfX1yZXR1cm4gaSYmKGV8fG4pfTtmdW5jdGlvbiBkKHQpe3JldHVybihkPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gZih0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaChpLmtleSksaSl9fWZ1bmN0aW9uIGgodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9ZCh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWQoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09ZChlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJmYodC5wcm90b3R5cGUsZSksbiYmZih0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7KGZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KSh0aGlzLHQpLHRoaXMubGFuZ3VhZ2VTY3JpcHR9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93O3QucHJvdG90eXBlLiRUYXdrV2lkZ2V0U2V0dGluZ3M9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJnZXRTZXR0aW5ncyIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLG89e3Byb3BlcnR5SWQ6dGhpcy5zdG9yZS5nZXR0ZXJzWyJwcm9wZXJ0eS9pZCJdLHdpZGdldElkOnRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lkIl19LGE9d2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInRhd2tfc3YiKTt0aGlzLnZlcnNpb24/by5zdj10aGlzLnZlcnNpb246by5zdj12b2lkIDAhPT1hP2E6bnVsbCxyLmEuZ2V0KCIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL3YxL3dpZGdldC1zZXR0aW5ncyIpLG8sbnVsbCwoZnVuY3Rpb24ocixvKXtpZihyKXJldHVybiBlKHIpO3ZhciBhPW8uZGF0YS53aWRnZXQubGFuZ3VhZ2V8fCJlbiI7aS5hLmNoYW5nZUxhbmd1YWdlKGEsKGZ1bmN0aW9uKHQpe3QmJmNvbnNvbGUuZXJyb3IoIltUYXdrL1dpZGdldC1TZXR0aW5nc106Iix0KX0pKSxuLnByb2Nlc3NTZXR0aW5ncyhvLmRhdGEpLHQoby5kYXRhLnNldHRpbmdzVmVyc2lvbil9KSl9fSx7a2V5OiJwcm9jZXNzU2V0dGluZ3MiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPWwoKTt0JiYodGhpcy52ZXJzaW9uPXQuc2V0dGluZ3NWZXJzaW9uLHRoaXMuc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0RGF0YSIsdC53aWRnZXQpLHRoaXMuc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0V2VicnRjT3B0aW9ucyIsdC53ZWJydGMpLHRoaXMuc3RvcmUuZGlzcGF0Y2goIndpZGdldC91cGRhdGVCcmFuZGluZyIsZT97dGV4dDoiIix0ZXh0Q29sb3I6IiMwMDAwMDAiLHVybDoiIix3aGl0ZWxhYmVsZWQ6ITB9OnQuYnJhbmRpbmcpLHZvaWQgMCE9PXQud2lkZ2V0LmFnZW50RHJpdmVuU3RhdHVzJiYhMT09PXQud2lkZ2V0LmFnZW50RHJpdmVuU3RhdHVzJiZ0aGlzLnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3NldFBhZ2VTdGF0dXMiLHtzdGF0dXM6Im9ubGluZSJ9KSl9fSx7a2V5OiJ4T2Zmc2V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PW58fG51bGw9PT0oZT1uLmRlc2t0b3ApfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnhPZmZzZXQpKXt2YXIgaT1uLmRlc2t0b3AueE9mZnNldDtpZigic3RyaW5nIj09dHlwZW9mIGkmJihpPXBhcnNlSW50KG4uZGVza3RvcC54T2Zmc2V0LnJlcGxhY2UoInB4IiwiIiksMTApKSwhaXNOYU4oaSkpcmV0dXJuIGl9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzQ2VudGVyIl0mJiF0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1JvdW5kV2lkZ2V0Il0/MDp0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC94T2Zmc2V0Il19fSx7a2V5OiJ5T2Zmc2V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PW58fG51bGw9PT0oZT1uLmRlc2t0b3ApfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnlPZmZzZXQpKXt2YXIgaT1uLmRlc2t0b3AueU9mZnNldDtpZigic3RyaW5nIj09dHlwZW9mIGkmJihpPXBhcnNlSW50KG4uZGVza3RvcC55T2Zmc2V0LnJlcGxhY2UoInB4IiwiIiksMTApKSwhaXNOYU4oaSkpcmV0dXJuIGl9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzQ2VudGVyIl0/MDp0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC95T2Zmc2V0Il19fSx7a2V5OiJ4T2Zmc2V0TW9iaWxlIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PW58fG51bGw9PT0oZT1uLm1vYmlsZSl8fHZvaWQgMD09PWU/dm9pZCAwOmUueE9mZnNldCkpe3ZhciBpPW4ubW9iaWxlLnhPZmZzZXQ7aWYoInN0cmluZyI9PXR5cGVvZiBpJiYoaT1wYXJzZUludChpLnJlcGxhY2UoInB4IiwiIiksMTApKSwhaXNOYU4oaSkpcmV0dXJuIGl9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzQ2VudGVyIl0mJiF0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1JvdW5kV2lkZ2V0Il0/MDp0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC94T2Zmc2V0TW9iaWxlIl19fSx7a2V5OiJ5T2Zmc2V0TW9iaWxlIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PW58fG51bGw9PT0oZT1uLm1vYmlsZSl8fHZvaWQgMD09PWU/dm9pZCAwOmUueU9mZnNldCkpe3ZhciBpPW4ubW9iaWxlLnlPZmZzZXQ7aWYoInN0cmluZyI9PXR5cGVvZiBpJiYoaT1wYXJzZUludChpLnJlcGxhY2UoInB4IiwiIiksMTApKSwhaXNOYU4oaSkpcmV0dXJuIGl9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzQ2VudGVyIl0/MDp0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC95T2Zmc2V0TW9iaWxlIl19fSx7a2V5OiJidWJibGVYT2Zmc2V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbixpPW51bGw9PT1vLmF8fHZvaWQgMD09PW8uYXx8bnVsbD09PSh0PW8uYS5sb2NhbF9BUEkpfHx2b2lkIDA9PT10fHxudWxsPT09KHQ9dC5jdXN0b21TdHlsZSl8fHZvaWQgMD09PXQ/dm9pZCAwOnQudmlzaWJpbGl0eTtpZih2b2lkIDAhPT0obnVsbD09aXx8bnVsbD09PShlPWkuYnViYmxlKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS54T2Zmc2V0KSl7dmFyIHI9aS5idWJibGUueE9mZnNldDtpZigic3RyaW5nIj09dHlwZW9mIHImJihyPXBhcnNlSW50KHIucmVwbGFjZSgicHgiLCIiKSwxMCkpLCFpc05hTihyKSlyZXR1cm4gcn1pZih2b2lkIDAhPT0obnVsbD09aXx8bnVsbD09PShuPWkuZGVza3RvcCl8fHZvaWQgMD09PW4/dm9pZCAwOm4ucG9zaXRpb24pKXt2YXIgYSxzPW51bGw9PWl8fG51bGw9PT0oYT1pLmRlc2t0b3ApfHx2b2lkIDA9PT1hP3ZvaWQgMDphLnBvc2l0aW9uO2lmKHMmJnRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2Rlc2t0b3BWaXNpYmlsaXR5Il0ucG9zaXRpb24hPT1zKXJldHVybiB0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc0NlbnRlciJdP3RoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L21pbkRlc2t0b3AiXS5oZWlnaHQrNTowfXJldHVybiB0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9idWJibGUiXS5jb25maWcub2Zmc2V0WH19LHtrZXk6ImJ1YmJsZVlPZmZzZXQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZSxuLGk9bnVsbD09PW8uYXx8dm9pZCAwPT09by5hfHxudWxsPT09KHQ9by5hLmxvY2FsX0FQSSl8fHZvaWQgMD09PXR8fG51bGw9PT0odD10LmN1c3RvbVN0eWxlKXx8dm9pZCAwPT09dD92b2lkIDA6dC52aXNpYmlsaXR5O2lmKHZvaWQgMCE9PShudWxsPT1pfHxudWxsPT09KGU9aS5idWJibGUpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnlPZmZzZXQpKXt2YXIgcj1pLmJ1YmJsZS55T2Zmc2V0O2lmKCJzdHJpbmciPT10eXBlb2YgciYmKHI9cGFyc2VJbnQoci5yZXBsYWNlKCJweCIsIiIpLDEwKSksIWlzTmFOKHIpKXJldHVybiByfWlmKHZvaWQgMCE9PShudWxsPT1pfHxudWxsPT09KG49aS5kZXNrdG9wKXx8dm9pZCAwPT09bj92b2lkIDA6bi5wb3NpdGlvbikpe3ZhciBhLHM9bnVsbD09aXx8bnVsbD09PShhPWkuZGVza3RvcCl8fHZvaWQgMD09PWE/dm9pZCAwOmEucG9zaXRpb247aWYocyYmdGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvZGVza3RvcFZpc2liaWxpdHkiXS5wb3NpdGlvbiE9PXMpcmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzQ2VudGVyIl0/MDp0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9taW5EZXNrdG9wIl0uaGVpZ2h0KzV9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2J1YmJsZSJdLmNvbmZpZy5vZmZzZXRZfX0se2tleToiYnViYmxlUm90YXRlIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PW58fG51bGw9PT0oZT1uLmJ1YmJsZSl8fHZvaWQgMD09PWU/dm9pZCAwOmUucm90YXRlKSl7dmFyIGk9bi5idWJibGUucm90YXRlO2lmKCJzdHJpbmciPT10eXBlb2YgaSYmKGk9cGFyc2VJbnQoaS5yZXBsYWNlKCJkZWciLCIiKSwxMCkpLCFpc05hTihpKSYmLTEhPT1bMCw5MCwtOTBdLmluZGV4T2YoaSkpcmV0dXJuIGl9cmV0dXJuIHRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2J1YmJsZSJdLmNvbmZpZy5yb3RhdGV9fSx7a2V5OiJpc1JvdW5kV2lkZ2V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj10aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1JvdW5kV2lkZ2V0Il0saT1udWxsPT09by5hfHx2b2lkIDA9PT1vLmF8fG51bGw9PT0odD1vLmEubG9jYWxfQVBJKXx8dm9pZCAwPT09dHx8bnVsbD09PSh0PXQuY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LnZpc2liaWxpdHk7aWYodm9pZCAwIT09KG51bGw9PWl8fG51bGw9PT0oZT1pLmRlc2t0b3ApfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnBvc2l0aW9uKSl7dmFyIHIsYT1udWxsPT1pfHxudWxsPT09KHI9aS5kZXNrdG9wKXx8dm9pZCAwPT09cj92b2lkIDA6ci5wb3NpdGlvbjtpZih0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9kZXNrdG9wVmlzaWJpbGl0eSJdLnBvc2l0aW9uIT09YSlyZXR1cm4hMX1yZXR1cm4gbn19XSkpfSwiNTZkNyI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuLnIoZSksZnVuY3Rpb24odCl7dmFyIGU9bigiMmIwZSIpLGk9bigiNDM2MCIpLHI9bigiNWYzNCIpLG89bigiZGJiOSIpLGE9bigiOTFjZSIpLHM9bigiNzQ1ZiIpLGM9bigiOWFiNCIpOyFmdW5jdGlvbihuKXtlLmEuY29uZmlnLnByb2R1Y3Rpb25UaXA9ITE7dmFyIHU9bmV3IGMuYSh7fSksbD17bWF4aW1pemU6ITF9O2UuYS5wcm90b3R5cGUuJFRhd2tXaW5kb3c9bDt2YXIgZD1uZXcgcy5hKHtUYXdrV2luZG93Omx9KTtsLnJlZ2lzdGVyV2l0aENvbnNlbnQ9ZnVuY3Rpb24oKXtsLm1heGltaXplPSEwLGEuYS5zdG9yZVNlc3Npb25JbmZvcm1hdGlvbighMCksbmV3IFByb21pc2UoKGZ1bmN0aW9uKHQsZSl7bC5yZWdpc3Rlci5pbml0KHQsZSl9KSkudGhlbigoZnVuY3Rpb24odCl7ZC5leHRyYWN0UmVnaXN0cmF0aW9uRGF0YSh0KSxsLmFwcC4kc29ja2V0LmNvbm5lY3QoKSxpLmEuZGlzcGF0Y2goInJvdXRlci9jbGVhckhpc3RvcnkiKSxhLmEuc3RvcmVTZXNzaW9uSW5mb3JtYXRpb24oITApLGwucG9wb3V0V2luJiZsLnBvcG91dFdpbi5wb3N0TWVzc2FnZSgidHdrUG9wV2lkZ2V0UmVnaXN0ZXIiLCIqIil9KSl9LGwucmV0cnlSZWdpc3Rlcj1mdW5jdGlvbigpe25ldyBQcm9taXNlKChmdW5jdGlvbih0LGUpe2wucmVnaXN0ZXIuaW5pdCh0LGUpfSkpLnRoZW4oKGZ1bmN0aW9uKHQpe2QuZXh0cmFjdFJlZ2lzdHJhdGlvbkRhdGEodCksbC5hcHAuJHNvY2tldC5jb25uZWN0KCl9KSl9LGwucG9wb3V0V2lkZ2V0PWZ1bmN0aW9uKCl7dmFyIHQ9aS5hLmdldHRlcnNbInByb3BlcnR5L2lkIl0sZT1pLmEuZ2V0dGVyc1sid2lkZ2V0L2lkIl0sbj1pLmEuZ2V0dGVyc1sid2lkZ2V0L2JyYW5kaW5nIl0scj0iIi5jb25jYXQoImh0dHBzOi8vdGF3ay50byIsIi9jaGF0LyIpLmNvbmNhdCh0LCIvIik7aS5hLmRpc3BhdGNoKCJzZXNzaW9uL3VwZGF0ZUNoYXRXaW5kb3dTdGF0ZSIsIm1pbiIpLGwucG9wb3V0V2luJiYhbC5wb3BvdXRXaW4uY2xvc2VkJiZsLnBvcG91dFdpbi5mb2N1cz9sLnBvcG91dFdpbi5mb2N1cygpOihuJiZuLndoaXRlbGFiZWxlZCYmbi5wb3BvdXRCYXNlVXJsJiYocj0iIi5jb25jYXQobi5wb3BvdXRCYXNlVXJsLCIvY2hhdC8iKSksbC5wb3BvdXRXaW49d2luZG93Lm9wZW4ocitlKyI/cG9wPTEiLCJUYXdrIiwiaGVpZ2h0PTUwMCwgd2lkdGg9NDUwLCByZXNpemFibGU9eWVzLCB0b29sYmFyPW5vLCBsb2NhdGlvbj1ubywgbWVudWJhcj1ubywgcGVyc29uYWxiYXI9bm8iKSl9LGwuY3JpdGljYWxSZWZyZXNoPWZ1bmN0aW9uKHQpe2lmKGkuYS5nZXR0ZXJzWyJ3aWRnZXQvaXNXaW5kb3dlZCJdKXJldHVybiB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCEhdCk7ZGVsZXRlIHdpbmRvdy4kX1Rhd2suZG93bmxvYWRlZCxpLmEuZGlzcGF0Y2goInJvdXRlci9jbGVhckhpc3RvcnkiKSxkLmNvbm5lY3QoKX0sbC51cGRhdGVCb290Q29uZmlnPWZ1bmN0aW9uKHQpe2QudXBkYXRlQ29uZmlnKHQpfSxsLm1ha2VIdG1sPWZ1bmN0aW9uKHQpe3JldHVybiB1Lm1ha2VIdG1sKHQpfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIiwoZnVuY3Rpb24oKXtsJiZsLmxvZ2dlciYmKGwubG9nZ2VyLnVubG9hZGluZz0hMCl9KSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLChmdW5jdGlvbih0KXtpZighbC5wb3BvdXRXaW58fCJnZXRUd2tXaWRnZXRVVUlEIiE9PXQuZGF0YSlyZXR1cm4idHdrUmVnaXN0ZXJXQ29uc2VudCI9PT10LmRhdGEmJnQuc291cmNlPT09bC5wb3BvdXRXaW4/bC5yZWdpc3RlcldpdGhDb25zZW50KCk6dm9pZChpLmEuZ2V0dGVyc1sid2lkZ2V0L2lzUG9wb3V0Il0mJiJ0d2tQb3BXaWRnZXRSZWdpc3RlciI9PT10LmRhdGEmJnQuc291cmNlPT09d2luZG93Lm9wZW5lciYmbC5yZWdpc3RlcldpdGhDb25zZW50KCkpO2wucG9wb3V0V2luLnBvc3RNZXNzYWdlKHt0d2tXaWRnZXRVVUlEOmkuYS5nZXR0ZXJzWyJ2aXNpdG9yL3V1aWQiXX0sdC5vcmlnaW4pfSksITEpLHIuYS51c2Uoby5hKS5pbml0KHtsbmc6ImVuIixkZWJ1ZzohMSxsb2FkOiJjdXJyZW50T25seSIsZmFsbGJhY2tMbmc6WyJlbiIsImVuX2RldiJdLGludGVycG9sYXRpb246e2VzY2FwZVZhbHVlOiExfSxiYWNrZW5kOntsb2FkUGF0aDoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQiLCIvbGFuZ3VhZ2VzL3t7bG5nfX0uanNvbiIpfX0sKGZ1bmN0aW9uKGUsbil7ZSYmY29uc29sZS5lcnJvcigiW1Rhd2svV2lkZ2V0LVNldHRpbmdzXSIsZSksdC4kX1Rhd2suaTE4bmV4dD1ufSkpLGQuaW5pdCh7dmlzaXRvcjpudWxsPT09KG49d2luZG93LlRhd2tfQVBJKXx8dm9pZCAwPT09bj92b2lkIDA6bi52aXNpdG9yfSl9KCl9LmNhbGwodGhpcyxuKCJjOGJhIikpfSw1ODY4OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBpPVsiKD86KD86W2Etel0rOik/Ly8pPyIsIig/OlxcUysoPzo6XFxTKik/QCk/IiwiKD86bG9jYWxob3N0fCg/Oig/OlthLXpcXHUwMGExLVxcdWZmZmYwLTldLSopKlthLXpcXHUwMGExLVxcdWZmZmYwLTldKykoPzpcXC4oPzpbYS16XFx1MDBhMS1cXHVmZmZmMC05XS0qKSpbYS16XFx1MDBhMS1cXHVmZmZmMC05XSspKig/OlxcLig/OlthLXpcXHUwMGExLVxcdWZmZmZdezIsfSkpKSIsIig/OjpcXGR7Miw1fSk/IiwnKD86Wy8/I11bXlxccyJdKik/J10uam9pbigiIikscj17cmVnTGluZUJyZWFrczovKFxyXG58XG58XHIpL2dtLHJlZ0JyOi88YnJcLz4vLHJlZ01hdGNoVXJsOm5ldyBSZWdFeHAoIig/Ol4iK2krIiQpIiwiaSIpLHJlZ01hdGNoSXA6L14oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPylcLigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/XC8oW2EtekEtWjAtOSEkJicoKSorLj0tX346QFxcL1xcPyNdKykrKVxiL2dpLHJlZ0VtYWlsTWF0Y2g6L14oKG1haWx0bzopezAsMX1bYS16QS1aMC05Xy5cLStdKStAKChbYS16QS1aMC05XFwtXSkrXC4pKyhbYS16QS1aMC05XSspJC8scmVnVGVsTWF0Y2g6L14odGVsOlwrfFwrfHRlbDopezF9KD86WzAtOVwtXChcKVwvXC5dXHM/KXs2LDE1fVswLTldezF9XGIvZ2ksYnI6Ijxici8+IixnZXRUYXJnZXRFbGVtZW50OmZ1bmN0aW9uKHQpe3ZhciBlPXQudGFyZ2V0fHx0LnNyY0VsZW1lbnQ7cmV0dXJuIDM9PT1lLm5vZGVUeXBlJiYoZT1lLnBhcmVudE5vZGUpLGV9LGZvcm1hdEZpbGVTaXplOmZ1bmN0aW9uKHQpe3ZhciBlPVsiQnl0ZXMiLCJLQiIsIk1CIiwiR0IiLCJUQiIsIlBCIiwiRUIiLCJaQiIsIllCIl07aWYoISh0PXBhcnNlSW50KHQsMTApKSlyZXR1cm4iMEJ5dGVzIjtmb3IodmFyIG49MTtuPGUubGVuZ3RoO24rKylpZih0PE1hdGgucG93KDEwMjQsbikpcmV0dXJuIE1hdGgucm91bmQodC9NYXRoLnBvdygxMDI0LG4tMSkqMTAwKS8xMDArZVtuLTFdO3JldHVybiB0fX19LCI2NWIzIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oImM3YjgiKSxyPW4oImI3Y2MiKSxvPW4oIjI3YzYiKSxhPW4oIjAyOGUiKSxzPW4oIjI0Y2EiKTtmdW5jdGlvbiBjKHQpe3JldHVybihjPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gdSh0LGUpe3ZhciBuPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksbi5wdXNoLmFwcGx5KG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gbCh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj91KE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7ZCh0LGUsbltlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6dShPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBkKHQsZSxuKXtyZXR1cm4oZT1oKGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bix0fWZ1bmN0aW9uIGYodCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpLmVudW1lcmFibGU9aS5lbnVtZXJhYmxlfHwhMSxpLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gaSYmKGkud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGgoaS5rZXkpLGkpfX1mdW5jdGlvbiBoKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPWModCl8fCF0KXJldHVybiB0O3ZhciBuPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgaT1uLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1jKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PWMoZSk/ZTplKyIifW4oImNjNzAiKSxlLmE9bmV3KGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmZih0LnByb3RvdHlwZSxlKSxuJiZmKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXsoZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0pKHRoaXMsdCksdGhpcy5jaGF0V2luZG93U3RhdGVzPXttaW46ITAsbWF4OiEwfSx0aGlzLmlvPW51bGwsdGhpcy5zZWxmT3JpZ2luPW51bGwsdGhpcy5kaXNjb25uZWN0PSExLHRoaXMucmVhZHk9ITEsdGhpcy5iYW5uZWQ9ITEsdGhpcy5mb3JjZURpc2Nvbm5lY3RlZD0hMSx0aGlzLmNsZWFyUmVnaXN0ZXJSZXRyeVRpbWVvdXQ9bnVsbCx0aGlzLmV2ZW50cz17fSx0aGlzLnN0YWNrPVtdLHRoaXMuY29ubmVjdENvdW50PTB9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93O3QucHJvdG90eXBlLiRzb2NrZXQ9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJjb25uZWN0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGU9dGhpczt3aW5kb3cuJF9UYXdrLmNvbm5lY3RlZD0hMSx0aGlzLmRpc2Nvbm5lY3Q9ITEsdGhpcy5mb3JjZURpc2Nvbm5lY3RlZD0hMSw1IT09dGhpcy5jb25uZWN0Q291bnQ/KHRoaXMuaW8mJih0aGlzLmlvLnJlbW92ZUFsbExpc3RlbmVycygpLHRoaXMuaW8uZGlzY29ubmVjdCgpKSx0PXtrOnRoaXMuc3RvcmUuZ2V0dGVyc1sic2Vzc2lvbi9zZXNzaW9uS2V5Il0sY3Zlcjp0aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvY2hhdFZlcnNpb24iXSxwb3A6dGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNXaW5kb3dlZCJdLGFzdmVyOnRoaXMuc3RvcmUuZ2V0dGVyc1sic2Vzc2lvbi9wYWdlU3RhdHVzVmVyc2lvbiJdLHRrbjp0aGlzLnN0b3JlLmdldHRlcnNbInNlc3Npb24vdG9rZW4iXX0sdGhpcy5jb25uZWN0Q291bnQrKyx0aGlzLmlvPW5ldyB3aW5kb3cuJF9fVGF3a1NvY2tldCgid3NzOi8vIi5jb25jYXQodGhpcy5zdG9yZS5nZXR0ZXJzWyJzZXNzaW9uL3Zpc2l0b3JTb2NrZXRTZXJ2ZXIiXSwiLyIpLHt0cmFuc3BvcnRzOlsid2Vic29ja2V0Il0sZW5naW5lSW86d2luZG93LiRfX1Rhd2tFbmdpbmUscGF0aDoiL3MiLHF1ZXJ5OnR9KSx0aGlzLmlvLm9uKCJkaXNjb25uZWN0IiwoZnVuY3Rpb24oKXtlLmRpc2Nvbm5lY3RIYW5kbGVyKCl9KSksdGhpcy5pby5vbigiZXJyb3IiLChmdW5jdGlvbih0KXt2YXIgbixyPSJzb2NrZXQgb24gZXJyb3IiO2lmKHQgaW5zdGFuY2VvZiBFcnJvcil7aWYobj17dG9TdHJpbmc6dC50b1N0cmluZygpLHN0YWNrOnQuc3RhY2ssbGluZU51bWJlcjp0LmxpbmVOdW1iZXIsZmlsZU5hbWU6dC5maWxlTmFtZX0saS5hJiZpLmEudW5sb2FkaW5nJiYtMT09PW4udG9TdHJpbmcuaW5kZXhPZigicG9zdCIpKXJldHVybjsiVHJhbnNwb3J0RXJyb3IiPT09dC50eXBlJiYobi5kZXNjcmlwdGlvbj10LmRlc2NyaXB0aW9uKSwtMSE9PW4udG9TdHJpbmcuaW5kZXhPZigicG9zdCIpJiYocj0ic29ja2V0IHBvc3QgZXJyb3IiKX1lbHNlIG49dDtpLmEucmVwb3J0RXJyb3Ioe2Vycm9yOnIsZGF0YTpsKHt9LG4pfSksZS5pby5kaXNjb25uZWN0KCksZS5kaXNjb25uZWN0SGFuZGxlcigpfSkpLHRoaXMuaW8ub24oImNvbm5lY3QiLChmdW5jdGlvbigpe2UuZGlzY29ubmVjdD0hMSxlLnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL3JlY29ubmVjdFNlc3Npb24iLCExKX0pKSx0aGlzLmlvLm9uKCJyZWFkeSIsKGZ1bmN0aW9uKHQsbixpKXtpZighZS5UYXdrV2luZG93KXJldHVybiBlLmRpc2Nvbm5lY3RTb2NrZXQoKTtlLnNlbGZPcmlnaW49dCx3aW5kb3cuJF9UYXdrLmNvbm5lY3RlZD0hMCxlLnJlYWR5fHwod2luZG93LiRfVGF3ay5sb2FkZWQ9ITApLGUucmVhZHk9ITAsZS5zdG9yZS5kaXNwYXRjaCgiY2hhdC91cGRhdGVDb252ZXJzYXRpb24iLG4pLGUuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vc2V0UGFnZVN0YXR1cyIse2RhdGE6aX0pLGUuc3RvcmUuZGlzcGF0Y2goInNvY2tldC91cGRhdGVJc1JlYWR5IiwhMCksZS5jbGVhclN0YWNrKCksY2xlYXJUaW1lb3V0KGUuY2xlYXJSZWdpc3RlclJldHJ5VGltZW91dCksZS5jbGVhclJlZ2lzdGVyUmV0cnlUaW1lb3V0PXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5kaXNjb25uZWN0fHxlLlRhd2tXaW5kb3cucmVnaXN0ZXIucmVzZXRSZXRyeUNvdW50KCksZS5jbGVhclJlZ2lzdGVyUmV0cnlUaW1lb3V0PW51bGx9KSw1ZTMpfSkpLHRoaXMuaW8ub24oInJlbW90ZURpc2Nvbm5lY3QiLChmdW5jdGlvbih0KXtpZigiQkFOTkVEIiE9PSh0PXR8fHt9KS5tc2cpZS5pby5kaXNjb25uZWN0KCksZS5kaXNjb25uZWN0SGFuZGxlcigpO2Vsc2V7ZS5iYW5uZWQ9ITA7dHJ5e2UuaW8uZGlzY29ubmVjdCgpfWNhdGNoKHQpe31zLmEuJGVtaXQoInJlbW92ZVdpZGdldCIpfX0pKSx0aGlzLmFkZEV2ZW50TGlzdGVuZXJzKCkpOnRoaXMuc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0VmlzaWJpbGl0eSIsITEpfX0se2tleToiZGlzY29ubmVjdFNvY2tldCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmZvcmNlRGlzY29ubmVjdGVkPSEwLHRoaXMuaW8mJih0aGlzLmlvLmRpc2Nvbm5lY3QoKSx0aGlzLmRpc2Nvbm5lY3RIYW5kbGVyKCkpfX0se2tleToiZGlzY29ubmVjdEhhbmRsZXIiLHZhbHVlOmZ1bmN0aW9uKCl7d2luZG93LiRfVGF3ay5jb25uZWN0ZWQ9ITEsdGhpcy5pby5yZW1vdmVBbGxMaXN0ZW5lcnMoKSxvLmEuY2xlYW5VcCgpLHRoaXMuYmFubmVkfHx0aGlzLmZvcmNlRGlzY29ubmVjdGVkfHx0aGlzLmRpc2Nvbm5lY3Q/dGhpcy5jb25uZWN0Q291bnQ9MDoodGhpcy5kaXNjb25uZWN0PSEwLHRoaXMuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vcmVjb25uZWN0U2Vzc2lvbiIsITApLHRoaXMuVGF3a1dpbmRvdy5yZXRyeVJlZ2lzdGVyKCkpfX0se2tleToiYWRkRXZlbnRMaXN0ZW5lcnMiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLmlvLm9uKCJ2aXNpdG9yQ2hhdFdpbmRvd1N0YXRlIiwoZnVuY3Rpb24oZSl7dC5zZWxmT3JpZ2luIT09ZS5vcmlnaW4mJnQuc3RvcmUuY29tbWl0KCJzZXNzaW9uL3NldENoYXRXaW5kb3dTdGF0ZSIsZS5jdyl9KSksdGhpcy5pby5vbigidmlzaXRvclNvdW5kIiwoZnVuY3Rpb24oZSl7ZS5vcmlnaW4hPT10LnNlbGZPcmlnaW4mJnQuc3RvcmUuZGlzcGF0Y2goIndpZGdldC90b2dnbGVMb2NhbFNvdW5kIiwhIWUuc2RvKX0pKSx0aGlzLmlvLm9uKCJwYWdlU3RhdHVzIiwoZnVuY3Rpb24oZSl7dC5zdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi9zZXRQYWdlU3RhdHVzIix7ZGF0YTplfSl9KSksdGhpcy5pby5vbigidmlzaXRvclBvcHVwRm9jdXMiLChmdW5jdGlvbihlKXtlPWV8fHt9LHQuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlSXNXaW5kb3dGb2N1c2VkIiwhIWUuaGFzRm9jdXMpfSkpLHRoaXMuaW8ub24oImNoYXRCdWJibGVDbG9zZWQiLChmdW5jdGlvbihlKXtlLm9yaWdpbiE9PXQuc2VsZk9yaWdpbiYmdC5zdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi9jbG9zZUNoYXRCdWJibGUiLCEwKX0pKSx0aGlzLmlvLm9uKCJwYWdlRGlzYWJsZSIsKGZ1bmN0aW9uKCl7dC5kaXNjb25uZWN0U29ja2V0KCkscy5hLiRlbWl0KCJyZW1vdmVXaWRnZXQiKX0pKSx0aGlzLmlvLm9uKCJ2Q2FsbFN0YXR1cyIsKGZ1bmN0aW9uKHQpe2EuYS5jYWxsU3RhdHVzVXBkYXRlKHQpfSkpLHRoaXMuaW8ub24oIndpZGdldFNjaGVkdWxlVXBkYXRlIiwoZnVuY3Rpb24oZSl7dmFyIG49dC5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaWQiXTtuJiZuIT09ZS53ZGd0fHwodC5zdG9yZS5kaXNwYXRjaCgic2NoZWR1bGUvYWRkU2xvdHMiLGUud3M/e2NvbmZpZzp7c2NoZWR1bGU6ZS53cy5zY2h9fTpudWxsKSx0LnN0b3JlLmRpc3BhdGNoKCJzY2hlZHVsZS91cGRhdGVUaW1lem9uZSIsZS53c3R6KSxvLmEuY2FsY3VsYXRlKCkpfSkpLCh0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9oYXNMaXZlQ2hhdCJdfHx0aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiXSYmKCF0aGlzLnN0b3JlLmdldHRlcnNbImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiXXx8MCE9PXRoaXMuc3RvcmUuZ2V0dGVyc1siY2hhdC9hZ2VudHNDb3VudCJdKSkmJih0aGlzLmlvLm9uKCJ2aXNpdG9yRGF0YVVwZGF0ZSIsKGZ1bmN0aW9uKGUpe3Quc2VsZk9yaWdpbiE9PWUub3JpZ2luJiYodC5zdG9yZS5kaXNwYXRjaCgidmlzaXRvci91cGRhdGVWaXNpdG9ySW5mb3JtYXRpb24iLGUpLGUuZHB0JiZ0LnN0b3JlLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZURlcGFydG1lbnQiLGUuZHB0KSxlLnBjZnMmJnQuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlUHJlY2hhdFN1Ym1pdHRlZCIsITApKX0pKSx0aGlzLmlvLm9uKCJ2aXNpdG9yTWVzc2FnZSIsKGZ1bmN0aW9uKGUpe3Quc2VsZk9yaWdpbiE9PWUub3JpZ2luJiZ0LnN0b3JlLmRpc3BhdGNoKCJjaGF0L2luY29taW5nQ2hhdE1lc3NhZ2UiLGUpfSkpLHRoaXMuaW8ub24oInZpc2l0b3JDb252ZXJzYXRpb25QcmVzZW5jZVVwZGF0ZSIsKGZ1bmN0aW9uKGUpe3Quc3RvcmUuZGlzcGF0Y2goImNoYXQvaW5jb21pbmdDaGF0TWVzc2FnZSIsZSl9KSksdGhpcy5pby5vbigidmlzaXRvckNoYXRTZWVuIiwoZnVuY3Rpb24odCl7YS5hLmNsZWFyVW5zZWVuTm90aWZpY2F0aW9uKHQpfSkpLHRoaXMuaW8ub24oInZpc2l0b3JDaGF0RGlzbWlzcyIsKGZ1bmN0aW9uKHQpe3MuYS4kZW1pdCgiZGlzbWlzc1ByZXZpZXciLHQpfSkpLHRoaXMuaW8ub24oInZpc2l0b3JUYWdzVXBkYXRlIiwoZnVuY3Rpb24odCl7ci5hLnRyaWdnZXJBcGlIYW5kbGVycygib25UYWdzVXBkYXRlZCIsdCl9KSksdGhpcy5pby5vbigidXBsb2FkUHJvZ3Jlc3MiLChmdW5jdGlvbih0KXthLmEudXBkYXRlRmlsZVByb2dyZXNzKHQpfSkpLHRoaXMuaW8ub24oInVwbG9hZEZpbmlzaGVkIiwoZnVuY3Rpb24odCl7YS5hLnVwZGF0ZUZpbGVQcm9ncmVzcyh0LCEwKX0pKSx0aGlzLmlvLm9uKCJ1cGxvYWRFcnJvciIsKGZ1bmN0aW9uKHQpe2EuYS51cGRhdGVGaWxlUHJvZ3Jlc3ModCwhMSwhMCl9KSksdGhpcy5pby5vbigiYWdlbnRJc1R5cGluZyIsKGZ1bmN0aW9uKHQpe3MuYS4kZW1pdCgiYWdlbnRJc1R5cGluZyIsdCl9KSksdGhpcy5pby5vbigiYWdlbnRTdG9wZWRUeXBpbmciLChmdW5jdGlvbih0KXtzLmEuJGVtaXQoImFnZW50U3RvcGVkVHlwaW5nIix0KX0pKSx0aGlzLmlvLm9uKCJ2aXNpdG9yQ2hhdFRyYW5zZmVyIiwoZnVuY3Rpb24odCl7YS5hLmNoYXRUcmFuc2ZlclVwZGF0ZSh0LnRyYW5zZmVyLHQudHJhbnNmZXJWZXJzaW9uKX0pKSl9fSx7a2V5OiJpc0ZvcmNlZERpc2Nvbm5lY3QiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZm9yY2VEaXNjb25uZWN0ZWR9fSx7a2V5OiJwdWJsaXNoIix2YWx1ZTpmdW5jdGlvbih0LGUsbil7aWYod2luZG93LiRfVGF3ay5jb25uZWN0ZWQpaWYodm9pZCAwIT09bnx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpdGhpcy53cmFwQ2FsbGJhY2sodCxlLG4pO2Vsc2UgdHJ5e3RoaXMuc2VuZCh0LGUsbil9Y2F0Y2godCl7fWVsc2UgdGhpcy5hZGRUb1N0YWNrKHQsZSxuKX19LHtrZXk6ImFkZFRvU3RhY2siLHZhbHVlOmZ1bmN0aW9uKHQsZSxuKXsic2VuZENoYXRNZXNzYWdlIj09PXQmJmRlbGV0ZSB0aGlzLmV2ZW50cy5ub3RpZnlNZXNzYWdlUHJldmlldywibm90aWZ5TWVzc2FnZVByZXZpZXciPT09dD90aGlzLmV2ZW50c1t0XT17Y29tbWFuZDp0LGRhdGE6ZSxjYWxsYmFjazpufTp0aGlzLnN0YWNrLnB1c2goe2NvbW1hbmQ6dCxkYXRhOmUsY2FsbGJhY2s6bn0pfX0se2tleToiY2xlYXJTdGFjayIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2Zvcih2YXIgZSBpbiB0aGlzLnN0YWNrLmZvckVhY2goKGZ1bmN0aW9uKGUpe3QucHVibGlzaChlLmNvbW1hbmQsZS5kYXRhLGUuY2FsbGJhY2spfSkpLHRoaXMuZXZlbnRzKXRoaXMucHVibGlzaCh0aGlzLmV2ZW50c1tlXS5jb21tYW5kLHRoaXMuZXZlbnRzW2VdLmRhdGEsdGhpcy5ldmVudHNbZV0uY2FsbGJhY2spO3RoaXMuc3RhY2s9W10sdGhpcy5ldmVudHM9e319fSx7a2V5OiJ3cmFwQ2FsbGJhY2siLHZhbHVlOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaSxyOyJmdW5jdGlvbiI9PXR5cGVvZiBlJiYobj1lLGU9bnVsbCksaT1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3Rocm93IG4oITApLG5ldyBFcnJvcigiU29ja2V0IHNlcnZlciBkaWQgbm90IGV4ZWN1dGUgdGhlIGNhbGxiYWNrIGZvciAiK3QrIiB3aXRoIGRhdGEgOiAiK0pTT04uc3RyaW5naWZ5KGUpKX0pLDM1ZTMpLHI9ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoaSkscj1mdW5jdGlvbigpe30sbi5hcHBseShudWxsLGFyZ3VtZW50cyl9O3RyeXtudWxsPT09ZT90aGlzLnNlbmQodCxyKTp0aGlzLnNlbmQodCxlLHIpfWNhdGNoKHQpe319fSx7a2V5OiJzZW5kIix2YWx1ZTpmdW5jdGlvbih0LGUsbil7dGhpc1t0XShlLG4pfX0se2tleToibmF2Iix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgibmF2Iix0LGUpfX0se2tleToibm90aWZ5TWVzc2FnZVByZXZpZXciLHZhbHVlOmZ1bmN0aW9uKHQpe3RoaXMuaW8uc2VuZCgibWVzc2FnZVByZXZpZXciLHQsKG5ldyBEYXRlKS5nZXRUaW1lKCkpfX0se2tleToic2VuZENoYXRNZXNzYWdlIix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgic2VydmljZSIsInZpc2l0b3ItY2hhdCIsIi92MS9tZXNzYWdlL3Zpc2l0b3IiLHQsZSl9fSx7a2V5OiJnZXRDYWxsU3RhdHVzIix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgic2VydmljZSIsIndlYnJ0YyIsIi92MS92Y2FsbC9zdGF0dXMvdmlzaXRvciIsdCxlKX19LHtrZXk6ImdldFdlYlJUQ1Rva2VuIix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgic2VydmljZSIsIndlYnJ0YyIsIi92MS92Y2FsbC9pbml0L3Zpc2l0b3IiLHQsZSl9fSx7a2V5OiJkZWNsaW5lQ2FsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoInNlcnZpY2UiLCJ3ZWJydGMiLCIvdjEvdmNhbGwvcmVqZWN0L3Zpc2l0b3IiLHQsZSl9fSx7a2V5OiJub3RpZnlPZmZsaW5lTWVzc2FnZSIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoInNlcnZpY2UiLCJ2aXNpdG9yLWNoYXQiLCIvdjEvdmlzaXRvci9vZmZsaW5lLWZvcm0iLHQsZSl9fSx7a2V5OiJ2aXNpdG9yQ2hhdFNlZW4iLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJzZXJ2aWNlIiwidmlzaXRvci1jaGF0IiwiL3YxL3Zpc2l0b3IvbWVzc2FnZXMtc2VlbiIsdCxlKX19LHtrZXk6Im5vdGlmeVByZWNoYXQiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJzZXJ2aWNlIiwidmlzaXRvci1jaGF0IiwiL3YxL3Zpc2l0b3IvcHJlY2hhdC1mb3JtIix0LGUpfX0se2tleToibm90aWZ5TmFtZUNoYW5nZSIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoInNhdmVOYW1lQ2hhbmdlRm9ybSIsdCxlKX19LHtrZXk6Im5vdGlmeUVtYWlsVHJhbnNjcmlwdCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoInNhdmVUcmFuc2NyaXB0RW1haWxGb3JtIix0LGUpfX0se2tleToibm90aWZ5RW5kQ2hhdFRyYW5zY3JpcHQiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJzZW5kVHJhbnNjcmlwdCIsdCxlKX19LHtrZXk6ImVuZFZpc2l0b3JDaGF0Iix2YWx1ZTpmdW5jdGlvbih0KXt0aGlzLmlvLnNlbmQoImVuZENoYXQiLHQpfX0se2tleToiYWRkRXZlbnQiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJhZGRFdmVudCIsdCxlKX19LHtrZXk6InNldEF0dHJpYnV0ZXMiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJzZXRBdHRyaWJ1dGVzIix0LGUpfX0se2tleToiYWRkVGFncyIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoImFkZFRhZ3MiLHQsZSl9fSx7a2V5OiJyZW1vdmVUYWdzIix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgicmVtb3ZlVGFncyIsdCxlKX19LHtrZXk6ImZpbGVVcGxvYWRNZXNzYWdlIix2YWx1ZTpmdW5jdGlvbih0LGUpe3RoaXMuaW8uc2VuZCgiZmlsZVVwbG9hZE1lc3NhZ2UiLHQsZSl9fSx7a2V5OiJwb3B1cE9uRm9jdXMiLHZhbHVlOmZ1bmN0aW9uKHQpe3RoaXMuaW8uc2VuZCgidmlzaXRvclBvcHVwRm9jdXMiLHQpfX0se2tleToibm90aWZ5U29ja2V0U3RhdHVzVXBkYXRlIix2YWx1ZTpmdW5jdGlvbih0KXt0aGlzLmlvLnNlbmQoInNvY2tldFN0YXR1c1VwZGF0ZSIsdCl9fSx7a2V5OiJzZXRSYXRpbmciLHZhbHVlOmZ1bmN0aW9uKHQpe3RoaXMuaW8uc2VuZCgidmlzaXRvclJhdGluZyIsdCl9fSx7a2V5OiJ2aXNpdG9yQ2hhdERpc21pc3MiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dGhpcy5pby5zZW5kKCJzZXJ2aWNlIiwidmlzaXRvci1jaGF0IiwiL3YxL3Zpc2l0b3IvZGlzbWlzcy1wcmV2aWV3Iix0LGUpfX0se2tleToiZ2V0Rm9ybSIsdmFsdWU6ZnVuY3Rpb24odCxlKXt0aGlzLmlvLnNlbmQoInNlcnZpY2UiLCJ0YWJsZSIsIi92MS9mb3JtL2dldCIsdCxlKX19LHtrZXk6Im5vdGlmeUNoYXRCdWJibGVDbG9zZWQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5pby5zZW5kKCJjaGF0QnViYmxlQ2xvc2UiKX19LHtrZXk6Im5vdGlmeVdpbmRvd1N0YXRlIix2YWx1ZTpmdW5jdGlvbih0KXt0aGlzLmlvLnNlbmQoImNoYXRXaW5kb3dTdGF0ZSIsdCl9fSx7a2V5OiJ0b2dnbGVTb3VuZCIsdmFsdWU6ZnVuY3Rpb24odCl7dGhpcy5pby5zZW5kKCJ2aXNpdG9yU291bmQiLHQpfX0se2tleToibm90aWZ5V2lkZ2V0UmVzaXplZCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmlvLnNlbmQoIm5vdGlmeVdpZGdldFJlc2l6ZWQiKX19XSkpfSw2NjY1OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO3ZhciBpPW4oIjY1YjMiKTtmdW5jdGlvbiByKHQpe3JldHVybihyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbygpe289ZnVuY3Rpb24oKXtyZXR1cm4gZX07dmFyIHQsZT17fSxuPU9iamVjdC5wcm90b3R5cGUsaT1uLmhhc093blByb3BlcnR5LGE9T2JqZWN0LmRlZmluZVByb3BlcnR5fHxmdW5jdGlvbih0LGUsbil7dFtlXT1uLnZhbHVlfSxzPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2w/U3ltYm9sOnt9LGM9cy5pdGVyYXRvcnx8IkBAaXRlcmF0b3IiLHU9cy5hc3luY0l0ZXJhdG9yfHwiQEBhc3luY0l0ZXJhdG9yIixsPXMudG9TdHJpbmdUYWd8fCJAQHRvU3RyaW5nVGFnIjtmdW5jdGlvbiBkKHQsZSxuKXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pLHRbZV19dHJ5e2Qoe30sIiIpfWNhdGNoKHQpe2Q9ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0W2VdPW59fWZ1bmN0aW9uIGYodCxlLG4saSl7dmFyIHI9ZSYmZS5wcm90b3R5cGUgaW5zdGFuY2VvZiB3P2U6dyxvPU9iamVjdC5jcmVhdGUoci5wcm90b3R5cGUpLHM9bmV3IEwoaXx8W10pO3JldHVybiBhKG8sIl9pbnZva2UiLHt2YWx1ZTpJKHQsbixzKX0pLG99ZnVuY3Rpb24gaCh0LGUsbil7dHJ5e3JldHVybnt0eXBlOiJub3JtYWwiLGFyZzp0LmNhbGwoZSxuKX19Y2F0Y2godCl7cmV0dXJue3R5cGU6InRocm93Iixhcmc6dH19fWUud3JhcD1mO3ZhciBwPSJzdXNwZW5kZWRTdGFydCIsbT0iZXhlY3V0aW5nIixnPSJjb21wbGV0ZWQiLHY9e307ZnVuY3Rpb24gdygpe31mdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGIoKXt9dmFyIGs9e307ZChrLGMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSk7dmFyIFQ9T2JqZWN0LmdldFByb3RvdHlwZU9mLFM9VCYmVChUKF8oW10pKSk7UyYmUyE9PW4mJmkuY2FsbChTLGMpJiYoaz1TKTt2YXIgUD1iLnByb3RvdHlwZT13LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGspO2Z1bmN0aW9uIEUodCl7WyJuZXh0IiwidGhyb3ciLCJyZXR1cm4iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtkKHQsZSwoZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2ludm9rZShlLHQpfSkpfSkpfWZ1bmN0aW9uIE8odCxlKXtmdW5jdGlvbiBuKG8sYSxzLGMpe3ZhciB1PWgodFtvXSx0LGEpO2lmKCJ0aHJvdyIhPT11LnR5cGUpe3ZhciBsPXUuYXJnLGQ9bC52YWx1ZTtyZXR1cm4gZCYmIm9iamVjdCI9PXIoZCkmJmkuY2FsbChkLCJfX2F3YWl0Iik/ZS5yZXNvbHZlKGQuX19hd2FpdCkudGhlbigoZnVuY3Rpb24odCl7bigibmV4dCIsdCxzLGMpfSksKGZ1bmN0aW9uKHQpe24oInRocm93Iix0LHMsYyl9KSk6ZS5yZXNvbHZlKGQpLnRoZW4oKGZ1bmN0aW9uKHQpe2wudmFsdWU9dCxzKGwpfSksKGZ1bmN0aW9uKHQpe3JldHVybiBuKCJ0aHJvdyIsdCxzLGMpfSkpfWModS5hcmcpfXZhciBvO2EodGhpcywiX2ludm9rZSIse3ZhbHVlOmZ1bmN0aW9uKHQsaSl7ZnVuY3Rpb24gcigpe3JldHVybiBuZXcgZSgoZnVuY3Rpb24oZSxyKXtuKHQsaSxlLHIpfSkpfXJldHVybiBvPW8/by50aGVuKHIscik6cigpfX0pfWZ1bmN0aW9uIEkoZSxuLGkpe3ZhciByPXA7cmV0dXJuIGZ1bmN0aW9uKG8sYSl7aWYocj09PW0pdGhyb3cgRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTtpZihyPT09Zyl7aWYoInRocm93Ij09PW8pdGhyb3cgYTtyZXR1cm57dmFsdWU6dCxkb25lOiEwfX1mb3IoaS5tZXRob2Q9byxpLmFyZz1hOzspe3ZhciBzPWkuZGVsZWdhdGU7aWYocyl7dmFyIGM9QyhzLGkpO2lmKGMpe2lmKGM9PT12KWNvbnRpbnVlO3JldHVybiBjfX1pZigibmV4dCI9PT1pLm1ldGhvZClpLnNlbnQ9aS5fc2VudD1pLmFyZztlbHNlIGlmKCJ0aHJvdyI9PT1pLm1ldGhvZCl7aWYocj09PXApdGhyb3cgcj1nLGkuYXJnO2kuZGlzcGF0Y2hFeGNlcHRpb24oaS5hcmcpfWVsc2UicmV0dXJuIj09PWkubWV0aG9kJiZpLmFicnVwdCgicmV0dXJuIixpLmFyZyk7cj1tO3ZhciB1PWgoZSxuLGkpO2lmKCJub3JtYWwiPT09dS50eXBlKXtpZihyPWkuZG9uZT9nOiJzdXNwZW5kZWRZaWVsZCIsdS5hcmc9PT12KWNvbnRpbnVlO3JldHVybnt2YWx1ZTp1LmFyZyxkb25lOmkuZG9uZX19InRocm93Ij09PXUudHlwZSYmKHI9ZyxpLm1ldGhvZD0idGhyb3ciLGkuYXJnPXUuYXJnKX19fWZ1bmN0aW9uIEMoZSxuKXt2YXIgaT1uLm1ldGhvZCxyPWUuaXRlcmF0b3JbaV07aWYocj09PXQpcmV0dXJuIG4uZGVsZWdhdGU9bnVsbCwidGhyb3ciPT09aSYmZS5pdGVyYXRvci5yZXR1cm4mJihuLm1ldGhvZD0icmV0dXJuIixuLmFyZz10LEMoZSxuKSwidGhyb3ciPT09bi5tZXRob2QpfHwicmV0dXJuIiE9PWkmJihuLm1ldGhvZD0idGhyb3ciLG4uYXJnPW5ldyBUeXBlRXJyb3IoIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJyIraSsiJyBtZXRob2QiKSksdjt2YXIgbz1oKHIsZS5pdGVyYXRvcixuLmFyZyk7aWYoInRocm93Ij09PW8udHlwZSlyZXR1cm4gbi5tZXRob2Q9InRocm93IixuLmFyZz1vLmFyZyxuLmRlbGVnYXRlPW51bGwsdjt2YXIgYT1vLmFyZztyZXR1cm4gYT9hLmRvbmU/KG5bZS5yZXN1bHROYW1lXT1hLnZhbHVlLG4ubmV4dD1lLm5leHRMb2MsInJldHVybiIhPT1uLm1ldGhvZCYmKG4ubWV0aG9kPSJuZXh0IixuLmFyZz10KSxuLmRlbGVnYXRlPW51bGwsdik6YToobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJpdGVyYXRvciByZXN1bHQgaXMgbm90IGFuIG9iamVjdCIpLG4uZGVsZWdhdGU9bnVsbCx2KX1mdW5jdGlvbiB4KHQpe3ZhciBlPXt0cnlMb2M6dFswXX07MSBpbiB0JiYoZS5jYXRjaExvYz10WzFdKSwyIGluIHQmJihlLmZpbmFsbHlMb2M9dFsyXSxlLmFmdGVyTG9jPXRbM10pLHRoaXMudHJ5RW50cmllcy5wdXNoKGUpfWZ1bmN0aW9uIEEodCl7dmFyIGU9dC5jb21wbGV0aW9ufHx7fTtlLnR5cGU9Im5vcm1hbCIsZGVsZXRlIGUuYXJnLHQuY29tcGxldGlvbj1lfWZ1bmN0aW9uIEwodCl7dGhpcy50cnlFbnRyaWVzPVt7dHJ5TG9jOiJyb290In1dLHQuZm9yRWFjaCh4LHRoaXMpLHRoaXMucmVzZXQoITApfWZ1bmN0aW9uIF8oZSl7aWYoZXx8IiI9PT1lKXt2YXIgbj1lW2NdO2lmKG4pcmV0dXJuIG4uY2FsbChlKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5uZXh0KXJldHVybiBlO2lmKCFpc05hTihlLmxlbmd0aCkpe3ZhciBvPS0xLGE9ZnVuY3Rpb24gbigpe2Zvcig7KytvPGUubGVuZ3RoOylpZihpLmNhbGwoZSxvKSlyZXR1cm4gbi52YWx1ZT1lW29dLG4uZG9uZT0hMSxuO3JldHVybiBuLnZhbHVlPXQsbi5kb25lPSEwLG59O3JldHVybiBhLm5leHQ9YX19dGhyb3cgbmV3IFR5cGVFcnJvcihyKGUpKyIgaXMgbm90IGl0ZXJhYmxlIil9cmV0dXJuIHkucHJvdG90eXBlPWIsYShQLCJjb25zdHJ1Y3RvciIse3ZhbHVlOmIsY29uZmlndXJhYmxlOiEwfSksYShiLCJjb25zdHJ1Y3RvciIse3ZhbHVlOnksY29uZmlndXJhYmxlOiEwfSkseS5kaXNwbGF5TmFtZT1kKGIsbCwiR2VuZXJhdG9yRnVuY3Rpb24iKSxlLmlzR2VuZXJhdG9yRnVuY3Rpb249ZnVuY3Rpb24odCl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQuY29uc3RydWN0b3I7cmV0dXJuISFlJiYoZT09PXl8fCJHZW5lcmF0b3JGdW5jdGlvbiI9PT0oZS5kaXNwbGF5TmFtZXx8ZS5uYW1lKSl9LGUubWFyaz1mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZih0LGIpOih0Ll9fcHJvdG9fXz1iLGQodCxsLCJHZW5lcmF0b3JGdW5jdGlvbiIpKSx0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKFApLHR9LGUuYXdyYXA9ZnVuY3Rpb24odCl7cmV0dXJue19fYXdhaXQ6dH19LEUoTy5wcm90b3R5cGUpLGQoTy5wcm90b3R5cGUsdSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLkFzeW5jSXRlcmF0b3I9TyxlLmFzeW5jPWZ1bmN0aW9uKHQsbixpLHIsbyl7dm9pZCAwPT09byYmKG89UHJvbWlzZSk7dmFyIGE9bmV3IE8oZih0LG4saSxyKSxvKTtyZXR1cm4gZS5pc0dlbmVyYXRvckZ1bmN0aW9uKG4pP2E6YS5uZXh0KCkudGhlbigoZnVuY3Rpb24odCl7cmV0dXJuIHQuZG9uZT90LnZhbHVlOmEubmV4dCgpfSkpfSxFKFApLGQoUCxsLCJHZW5lcmF0b3IiKSxkKFAsYywoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxkKFAsInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4iW29iamVjdCBHZW5lcmF0b3JdIn0pKSxlLmtleXM9ZnVuY3Rpb24odCl7dmFyIGU9T2JqZWN0KHQpLG49W107Zm9yKHZhciBpIGluIGUpbi5wdXNoKGkpO3JldHVybiBuLnJldmVyc2UoKSxmdW5jdGlvbiB0KCl7Zm9yKDtuLmxlbmd0aDspe3ZhciBpPW4ucG9wKCk7aWYoaSBpbiBlKXJldHVybiB0LnZhbHVlPWksdC5kb25lPSExLHR9cmV0dXJuIHQuZG9uZT0hMCx0fX0sZS52YWx1ZXM9XyxMLnByb3RvdHlwZT17Y29uc3RydWN0b3I6TCxyZXNldDpmdW5jdGlvbihlKXtpZih0aGlzLnByZXY9MCx0aGlzLm5leHQ9MCx0aGlzLnNlbnQ9dGhpcy5fc2VudD10LHRoaXMuZG9uZT0hMSx0aGlzLmRlbGVnYXRlPW51bGwsdGhpcy5tZXRob2Q9Im5leHQiLHRoaXMuYXJnPXQsdGhpcy50cnlFbnRyaWVzLmZvckVhY2goQSksIWUpZm9yKHZhciBuIGluIHRoaXMpInQiPT09bi5jaGFyQXQoMCkmJmkuY2FsbCh0aGlzLG4pJiYhaXNOYU4oK24uc2xpY2UoMSkpJiYodGhpc1tuXT10KX0sc3RvcDpmdW5jdGlvbigpe3RoaXMuZG9uZT0hMDt2YXIgdD10aGlzLnRyeUVudHJpZXNbMF0uY29tcGxldGlvbjtpZigidGhyb3ciPT09dC50eXBlKXRocm93IHQuYXJnO3JldHVybiB0aGlzLnJ2YWx9LGRpc3BhdGNoRXhjZXB0aW9uOmZ1bmN0aW9uKGUpe2lmKHRoaXMuZG9uZSl0aHJvdyBlO3ZhciBuPXRoaXM7ZnVuY3Rpb24gcihpLHIpe3JldHVybiBzLnR5cGU9InRocm93IixzLmFyZz1lLG4ubmV4dD1pLHImJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksISFyfWZvcih2YXIgbz10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7bz49MDstLW8pe3ZhciBhPXRoaXMudHJ5RW50cmllc1tvXSxzPWEuY29tcGxldGlvbjtpZigicm9vdCI9PT1hLnRyeUxvYylyZXR1cm4gcigiZW5kIik7aWYoYS50cnlMb2M8PXRoaXMucHJldil7dmFyIGM9aS5jYWxsKGEsImNhdGNoTG9jIiksdT1pLmNhbGwoYSwiZmluYWxseUxvYyIpO2lmKGMmJnUpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX1lbHNlIGlmKGMpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApfWVsc2V7aWYoIXUpdGhyb3cgRXJyb3IoInRyeSBzdGF0ZW1lbnQgd2l0aG91dCBjYXRjaCBvciBmaW5hbGx5Iik7aWYodGhpcy5wcmV2PGEuZmluYWxseUxvYylyZXR1cm4gcihhLmZpbmFsbHlMb2MpfX19fSxhYnJ1cHQ6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO24+PTA7LS1uKXt2YXIgcj10aGlzLnRyeUVudHJpZXNbbl07aWYoci50cnlMb2M8PXRoaXMucHJldiYmaS5jYWxsKHIsImZpbmFsbHlMb2MiKSYmdGhpcy5wcmV2PHIuZmluYWxseUxvYyl7dmFyIG89cjticmVha319byYmKCJicmVhayI9PT10fHwiY29udGludWUiPT09dCkmJm8udHJ5TG9jPD1lJiZlPD1vLmZpbmFsbHlMb2MmJihvPW51bGwpO3ZhciBhPW8/by5jb21wbGV0aW9uOnt9O3JldHVybiBhLnR5cGU9dCxhLmFyZz1lLG8/KHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLm5leHQ9by5maW5hbGx5TG9jLHYpOnRoaXMuY29tcGxldGUoYSl9LGNvbXBsZXRlOmZ1bmN0aW9uKHQsZSl7aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4iYnJlYWsiPT09dC50eXBlfHwiY29udGludWUiPT09dC50eXBlP3RoaXMubmV4dD10LmFyZzoicmV0dXJuIj09PXQudHlwZT8odGhpcy5ydmFsPXRoaXMuYXJnPXQuYXJnLHRoaXMubWV0aG9kPSJyZXR1cm4iLHRoaXMubmV4dD0iZW5kIik6Im5vcm1hbCI9PT10LnR5cGUmJmUmJih0aGlzLm5leHQ9ZSksdn0sZmluaXNoOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciBuPXRoaXMudHJ5RW50cmllc1tlXTtpZihuLmZpbmFsbHlMb2M9PT10KXJldHVybiB0aGlzLmNvbXBsZXRlKG4uY29tcGxldGlvbixuLmFmdGVyTG9jKSxBKG4pLHZ9fSxjYXRjaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi50cnlMb2M9PT10KXt2YXIgaT1uLmNvbXBsZXRpb247aWYoInRocm93Ij09PWkudHlwZSl7dmFyIHI9aS5hcmc7QShuKX1yZXR1cm4gcn19dGhyb3cgRXJyb3IoImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdCIpfSxkZWxlZ2F0ZVlpZWxkOmZ1bmN0aW9uKGUsbixpKXtyZXR1cm4gdGhpcy5kZWxlZ2F0ZT17aXRlcmF0b3I6XyhlKSxyZXN1bHROYW1lOm4sbmV4dExvYzppfSwibmV4dCI9PT10aGlzLm1ldGhvZCYmKHRoaXMuYXJnPXQpLHZ9fSxlfWZ1bmN0aW9uIGEodCxlLG4saSxyLG8sYSl7dHJ5e3ZhciBzPXRbb10oYSksYz1zLnZhbHVlfWNhdGNoKHQpe3JldHVybiB2b2lkIG4odCl9cy5kb25lP2UoYyk6UHJvbWlzZS5yZXNvbHZlKGMpLnRoZW4oaSxyKX12YXIgcz1mdW5jdGlvbigpe3JldHVybntiYXNlVXJsOiIvdjEvZm9ybSIsbG9hZGluZzp7aW5kZXg6ITEsc3RvcmU6ITF9LGZvcm1zOltdfX07ZS5kZWZhdWx0PXtuYW1lc3BhY2VkOiEwLHN0YXRlOnMsZ2V0dGVyczp7Zm9ybXM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuZm9ybXN9fSxhY3Rpb25zOntnZXQ6ZnVuY3Rpb24oKXt2YXIgdD1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oaSxyKXt2YXIgbz10LmFwcGx5KGUsbik7ZnVuY3Rpb24gcyh0KXthKG8saSxyLHMsYywibmV4dCIsdCl9ZnVuY3Rpb24gYyh0KXthKG8saSxyLHMsYywidGhyb3ciLHQpfXModm9pZCAwKX0pKX19KG8oKS5tYXJrKChmdW5jdGlvbiB0KGUpe3ZhciBuLHIsYT1hcmd1bWVudHM7cmV0dXJuIG8oKS53cmFwKChmdW5jdGlvbih0KXtmb3IoOzspc3dpdGNoKHQucHJldj10Lm5leHQpe2Nhc2UgMDppZihuPWUuY29tbWl0LHI9YS5sZW5ndGg+MSYmdm9pZCAwIT09YVsxXT9hWzFdOiJsZWFkLWNhcHR1cmUtZm9ybSIpe3QubmV4dD00O2JyZWFrfXRocm93IlBsZWFzZSBzZXQgZm9ybSBwcm9wZXJ0eS9mb3JtIElEIGJlZm9yZSBjYWxsaW5nIHRoZSBhY3Rpb24uc2hvdyI7Y2FzZSA0OnJldHVybiBuKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJpbmRleCIsdmFsdWU6ITB9KSx0Lm5leHQ9NyxpLmEucHVibGlzaCgiZ2V0Rm9ybSIse2Zvcm1JZDpyfSwoZnVuY3Rpb24odCxlKXtuKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJpbmRleCIsdmFsdWU6ITF9KSx0P2NvbnNvbGUuZXJyb3IoIltUYXdrL0Zvcm1dOiAiLmNvbmNhdCh0LmNvZGUsIiAiKS5jb25jYXQodC5tZXNzYWdlKSk6bigiYWRkRm9ybSIsZS5kYXRhLmZvcm0pfSkpO2Nhc2UgNzpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQpfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKSxyZXNldFN0YXRlOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgidW5zZXREYXRhIil9fSxtdXRhdGlvbnM6e2FkZEZvcm06ZnVuY3Rpb24odCxlKXt0LmZvcm1zLnB1c2goZSl9LHNldExvYWRpbmc6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLmFjdGlvbixpPWUudmFsdWU7dC5sb2FkaW5nW25dPWl9LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e2Jhc2VVcmw6Ii92MS9mb3JtIixsb2FkaW5nOntpbmRleDohMSxzdG9yZTohMX0sZm9ybXM6W119LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO3Rbcl09ZVtyXX19fX19LCI2ODFkIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCl7cmV0dXJuKGk9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiByKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxvKGkua2V5KSxpKX19ZnVuY3Rpb24gbyh0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1pKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIHI9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9aShyKSlyZXR1cm4gcjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1pKGUpP2U6ZSsiIn12YXIgYT1mdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJnIodC5wcm90b3R5cGUsZSksbiYmcih0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7KGZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KSh0aGlzLHQpLGZ1bmN0aW9uKHQsZSxuKXsoZT1vKGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bn0odGhpcywiaXNFbmFibGVkIiwhMSksdGhpcy5jaGVja0lzRW5hYmxlZCgpfSksW3trZXk6ImNoZWNrSXNFbmFibGVkIix2YWx1ZTpmdW5jdGlvbigpe319LHtrZXk6InNldEl0ZW0iLHZhbHVlOmZ1bmN0aW9uKCl7fX0se2tleToiZ2V0SXRlbSIsdmFsdWU6ZnVuY3Rpb24oKXt9fV0pO2Z1bmN0aW9uIHModCl7cmV0dXJuKHM9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBjKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gdSh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsbChpLmtleSksaSl9fWZ1bmN0aW9uIGwodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9cyh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXMoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09cyhlKT9lOmUrIiJ9ZnVuY3Rpb24gZCh0LGUsbil7cmV0dXJuIGU9ZihlKSxmdW5jdGlvbih0LGUpe2lmKGUmJigib2JqZWN0Ij09cyhlKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpKXJldHVybiBlO2lmKHZvaWQgMCE9PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiRGVyaXZlZCBjb25zdHJ1Y3RvcnMgbWF5IG9ubHkgcmV0dXJuIG9iamVjdCBvciB1bmRlZmluZWQiKTtyZXR1cm4gZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dCl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZCIpO3JldHVybiB0fSh0KX0odCxmdW5jdGlvbigpe3RyeXt2YXIgdD0hQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKX1jYXRjaCh0KXt9cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuISF0fSgpfSgpP1JlZmxlY3QuY29uc3RydWN0KGUsbnx8W10sZih0KS5jb25zdHJ1Y3Rvcik6ZS5hcHBseSh0LG4pKX1mdW5jdGlvbiBmKHQpe3JldHVybihmPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3QuZ2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKHQpe3JldHVybiB0Ll9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpfSkodCl9ZnVuY3Rpb24gaCh0LGUpe3JldHVybihoPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuX19wcm90b19fPWUsdH0pKHQsZSl9dmFyIHA9ZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSgpe3JldHVybiBjKHRoaXMsZSksZCh0aGlzLGUsYXJndW1lbnRzKX1yZXR1cm4gZnVuY3Rpb24odCxlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSYmbnVsbCE9PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24iKTt0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUmJmUucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7dmFsdWU6dCx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksZSYmaCh0LGUpfShlLHQpLGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmdSh0LnByb3RvdHlwZSxlKSxuJiZ1KHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oZSxbe2tleToiY2hlY2tJc0VuYWJsZWQiLHZhbHVlOmZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNFbmFibGVkPSEhd2luZG93LnNlc3Npb25TdG9yYWdlfWNhdGNoKHQpe3RoaXMuaXNFbmFibGVkPSExfX19LHtrZXk6InNldEl0ZW0iLHZhbHVlOmZ1bmN0aW9uKHQsZSl7aWYodGhpcy5pc0VuYWJsZWQpdHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSh0LGUpLCEwfWNhdGNoKHQpe3JldHVybn19fSx7a2V5OiJnZXRJdGVtIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5pc0VuYWJsZWQ/d2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0odCk6bnVsbH19XSl9KGEpO2Z1bmN0aW9uIG0odCl7cmV0dXJuKG09ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBnKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gdih0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsdyhpLmtleSksaSl9fWZ1bmN0aW9uIHcodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9bSh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPW0oaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09bShlKT9lOmUrIiJ9ZnVuY3Rpb24geSh0LGUsbil7cmV0dXJuIGU9YihlKSxmdW5jdGlvbih0LGUpe2lmKGUmJigib2JqZWN0Ij09bShlKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpKXJldHVybiBlO2lmKHZvaWQgMCE9PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiRGVyaXZlZCBjb25zdHJ1Y3RvcnMgbWF5IG9ubHkgcmV0dXJuIG9iamVjdCBvciB1bmRlZmluZWQiKTtyZXR1cm4gZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dCl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZCIpO3JldHVybiB0fSh0KX0odCxmdW5jdGlvbigpe3RyeXt2YXIgdD0hQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKX1jYXRjaCh0KXt9cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuISF0fSgpfSgpP1JlZmxlY3QuY29uc3RydWN0KGUsbnx8W10sYih0KS5jb25zdHJ1Y3Rvcik6ZS5hcHBseSh0LG4pKX1mdW5jdGlvbiBiKHQpe3JldHVybihiPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3QuZ2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKHQpe3JldHVybiB0Ll9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpfSkodCl9ZnVuY3Rpb24gayh0LGUpe3JldHVybihrPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuX19wcm90b19fPWUsdH0pKHQsZSl9dmFyIFQ9ZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSgpe3JldHVybiBnKHRoaXMsZSkseSh0aGlzLGUsYXJndW1lbnRzKX1yZXR1cm4gZnVuY3Rpb24odCxlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSYmbnVsbCE9PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24iKTt0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUmJmUucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7dmFsdWU6dCx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksZSYmayh0LGUpfShlLHQpLGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmdih0LnByb3RvdHlwZSxlKSxuJiZ2KHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oZSxbe2tleToiY2hlY2tJc0VuYWJsZWQiLHZhbHVlOmZ1bmN0aW9uKCl7dHJ5e3dpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgiZXhpc3RfdGVzdCIsInllcyIpLHdpbmRvdy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgiZXhpc3RfdGVzdCIpLHRoaXMuaXNFbmFibGVkPSEwfWNhdGNoKHQpe3RoaXMuaXNFbmFibGVkPSExfX19LHtrZXk6InNldEl0ZW0iLHZhbHVlOmZ1bmN0aW9uKHQsZSl7aWYodGhpcy5pc0VuYWJsZWQpcmV0dXJuIHdpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0LGUpLCEwfX0se2tleToiZ2V0SXRlbSIsdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuaXNFbmFibGVkP3dpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0KTpudWxsfX0se2tleToiZGVsZXRlSXRlbSIsdmFsdWU6ZnVuY3Rpb24odCl7dGhpcy5pc0VuYWJsZWQmJmRlbGV0ZSB3aW5kb3cubG9jYWxTdG9yYWdlW3RdfX1dKX0oYSksUz1uKCJiN2NjIik7ZnVuY3Rpb24gUCh0KXtyZXR1cm4oUD0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIEUodCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX1mdW5jdGlvbiBPKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxJKGkua2V5KSxpKX19ZnVuY3Rpb24gSSh0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1QKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9UChpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1QKGUpP2U6ZSsiIn1mdW5jdGlvbiBDKHQsZSxuKXtyZXR1cm4gZT14KGUpLGZ1bmN0aW9uKHQsZSl7aWYoZSYmKCJvYmplY3QiPT1QKGUpfHwiZnVuY3Rpb24iPT10eXBlb2YgZSkpcmV0dXJuIGU7aWYodm9pZCAwIT09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJEZXJpdmVkIGNvbnN0cnVjdG9ycyBtYXkgb25seSByZXR1cm4gb2JqZWN0IG9yIHVuZGVmaW5lZCIpO3JldHVybiBmdW5jdGlvbih0KXtpZih2b2lkIDA9PT10KXRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkIik7cmV0dXJuIHR9KHQpfSh0LGZ1bmN0aW9uKCl7dHJ5e3ZhciB0PSFCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpfWNhdGNoKHQpe31yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4hIXR9KCl9KCk/UmVmbGVjdC5jb25zdHJ1Y3QoZSxufHxbXSx4KHQpLmNvbnN0cnVjdG9yKTplLmFwcGx5KHQsbikpfWZ1bmN0aW9uIHgodCl7cmV0dXJuKHg9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5nZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24odCl7cmV0dXJuIHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCl9KSh0KX1mdW5jdGlvbiBBKHQsZSl7cmV0dXJuKEE9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5fX3Byb3RvX189ZSx0fSkodCxlKX12YXIgTD1mdW5jdGlvbih0KXtmdW5jdGlvbiBlKCl7dmFyIHQsbj1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30saT1uLlRhd2tXaW5kb3c7cmV0dXJuIEUodGhpcyxlKSwodD1DKHRoaXMsZSkpLlRhd2tXaW5kb3c9aSx0fXJldHVybiBmdW5jdGlvbih0LGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiIpO3QucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZSYmZS5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnt2YWx1ZTp0LHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSxlJiZBKHQsZSl9KGUsdCksZnVuY3Rpb24odCxlLG4pe3JldHVybiBlJiZPKHQucHJvdG90eXBlLGUpLG4mJk8odCxuKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSx0fShlLFt7a2V5OiJjaGVja0lzRW5hYmxlZCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD0hIW5hdmlnYXRvci5jb29raWVFbmFibGVkO3ZvaWQgMCE9PW5hdmlnYXRvci5jb29raWVFbmFibGVkfHx0fHwoZG9jdW1lbnQuY29va2llPSJ0ZXN0Y29va2llIix0PS0xIT1kb2N1bWVudC5jb29raWUuaW5kZXhPZigidGVzdGNvb2tpZSIpKSx0aGlzLmlzRW5hYmxlZD10fX0se2tleToic2V0SXRlbSIsdmFsdWU6ZnVuY3Rpb24odCxlLG4saSl7aWYoImZpbGU6Ij09PXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbHx8Uy5hLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc0lmcmFtZSJdKXJldHVybiBNLmxvY2FsU3RvcmUoKS5zZXRJdGVtKHQsZSk7aWYodGhpcy5pc0VuYWJsZWQpe3ZhciByLG8sYT0iIixzPSJMYXg7IjtyZXR1cm4gbnx8KChyPW5ldyBEYXRlKS5zZXRUaW1lKHIuZ2V0VGltZSgpKzE1NTUyZTYpLGE9IjsgZXhwaXJlcz0iLmNvbmNhdChyLnRvR01UU3RyaW5nKCkpKSxTLmEuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lzSWZyYW1lIl0mJihzPSJOb25lOyIpLGk9aT8iOyBkb21haW49Ii5jb25jYXQoaSk6IiIsImh0dHBzOiI9PT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wmJihvPSIgU2VjdXJlIiksZG9jdW1lbnQuY29va2llPSIiLmNvbmNhdCh0LCI9IikuY29uY2F0KGUpLmNvbmNhdChhLCI7IHBhdGg9LyIpLmNvbmNhdChpLCI7IFNhbWVTaXRlPSIpLmNvbmNhdChzKS5jb25jYXQobywiOyIpLCEwfX19LHtrZXk6ImdldEl0ZW0iLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPVtdO2lmKCJmaWxlOiI9PT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2x8fFMuYS5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNJZnJhbWUiXSl7dmFyIG49TS5sb2NhbFN0b3JlKCkuZ2V0SXRlbSh0KTtyZXR1cm4gbj9bbl06W119aWYodGhpcy5pc0VuYWJsZWQpZm9yKHZhciBpPSIiLmNvbmNhdCh0LCI9Iikscj1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKSxvPTAsYT1yLmxlbmd0aDtvPGE7bysrKXtmb3IodmFyIHM9cltvXTsiICI9PT1zLmNoYXJBdCgwKTspcz1zLnN1YnN0cmluZygxLHMubGVuZ3RoKTswPT09cy5pbmRleE9mKGkpJiZlLnB1c2gocy5zdWJzdHJpbmcoaS5sZW5ndGgscy5sZW5ndGgpKX1yZXR1cm4gZX19LHtrZXk6ImRlbGV0ZUl0ZW0iLHZhbHVlOmZ1bmN0aW9uKHQpe2RvY3VtZW50LmNvb2tpZT0iIi5jb25jYXQodCwiPTtNYXgtQWdlPS05OTk5OTk5OTtTYW1lU2l0ZT1MYXg7Iil9fSx7a2V5OiJjaGVja0l0ZW1TYXZlZCIsdmFsdWU6ZnVuY3Rpb24odCl7aWYoImZpbGU6Ij09PXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbHx8Uy5hLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc0lmcmFtZSJdKXJldHVybiEhTS5sb2NhbFN0b3JlKCkuZ2V0SXRlbSh0KTt2YXIgZT10aGlzLmdldEl0ZW0odCk7aWYoIWV8fCFlLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlVuYWJsZSB0byBzdG9yZSBjb29raWUiKX19XSl9KGEpO2Z1bmN0aW9uIF8odCl7cmV0dXJuKF89ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBEKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxqKGkua2V5KSxpKX19ZnVuY3Rpb24gaih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1fKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9XyhpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1fKGUpP2U6ZSsiIn12YXIgTT1lLmE9bmV3KGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmRCh0LnByb3RvdHlwZSxlKSxuJiZEKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXshZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0odGhpcyx0KX0pLFt7a2V5OiJpbnN0YWxsIix2YWx1ZTpmdW5jdGlvbih0LGUpe3ZhciBuPWUuVGF3a1dpbmRvdzt0LnByb3RvdHlwZS4kVGF3a1dlYlN0b3JhZ2U9dGhpcyx0aGlzLlRhd2tXaW5kb3c9bn19LHtrZXk6InNlc3Npb25TdG9yZSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHB9fSx7a2V5OiJsb2NhbFN0b3JlIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgVH19LHtrZXk6ImNvb2tpZVN0b3JlIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgTCh7VGF3a1dpbmRvdzp0aGlzLlRhd2tXaW5kb3d9KX19XSkpfSwiNzQ1ZiI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24odCl7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBDfSkpO3ZhciBpPW4oIjJiMGUiKSxyPW4oIjY4MWQiKSxvPW4oIjQzYWYiKSxhPW4oIjliZTgiKSxzPW4oImI3Y2MiKSxjPW4oIjBhZDIiKSx1PW4oIjI3YzYiKSxsPW4oIjAyOGUiKSxkPW4oIjk5ZTEiKSxmPW4oIjc3YjQiKSxoPW4oIjkxY2UiKSxwPW4oImM3YjgiKSxtPW4oIjY1YjMiKSxnPW4oIjI0Y2EiKSx2PW4oImQzYTQiKSx3PW4oIjI3YTYiKSx5PW4oIjdmNDYiKSxiPW4oIjQzNjAiKSxrPW4oImExOGMiKSxUPW4oImQwNDYiKSxTPW4oIjNkZmQiKTtmdW5jdGlvbiBQKHQpe3JldHVybihQPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gRSh0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIE8odCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpLmVudW1lcmFibGU9aS5lbnVtZXJhYmxlfHwhMSxpLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gaSYmKGkud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LEkoaS5rZXkpLGkpfX1mdW5jdGlvbiBJKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPVAodCl8fCF0KXJldHVybiB0O3ZhciBuPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgaT1uLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1QKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PVAoZSk/ZTplKyIifXZhciBDPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmTyh0LnByb3RvdHlwZSxlKSxuJiZPKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sbj1lLnByb3BlcnR5SWQsaT1lLndpZGdldElkLHI9ZS5jYWxsYmFjayxvPWUuVGF3a1dpbmRvdztFKHRoaXMsdCksdGhpcy5wcm9wZXJ0eUlkPW58fHdpbmRvdy4kX1Rhd2tfQWNjb3VudEtleSx0aGlzLndpZGdldElkPWl8fHdpbmRvdy4kX1Rhd2tfV2lkZ2V0SWQsdGhpcy5jYWxsYmFjaz1yfHxmdW5jdGlvbigpe30sdGhpcy5UYXdrV2luZG93PW98fHt9fSksW3trZXk6InVwZGF0ZUNvbmZpZyIsdmFsdWU6ZnVuY3Rpb24odCl7dGhpcy5wcm9wZXJ0eUlkPXQucHJvcGVydHlJZCx0aGlzLndpZGdldElkPXQud2lkZ2V0SWR9fSx7a2V5OiJpbml0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSxuPWUudmlzaXRvcixmPXZvaWQgMD09PW4/dm9pZCAwOm47aWYodm9pZCAwPT09d2luZG93LiRfVGF3ay5kb3dubG9hZGVkKXtpZih3aW5kb3cuJF9UYXdrLmRvd25sb2FkZWQ9ITAsdm9pZCAwIT09d2luZG93LlByb3RvdHlwZSYmInN0cmluZyI9PXR5cGVvZiB3aW5kb3cuUHJvdG90eXBlLlZlcnNpb24mJnBhcnNlRmxvYXQod2luZG93LlByb3RvdHlwZS5WZXJzaW9uLnN1YnN0cigwLDMpLDEwKTwxLjcmJnZvaWQgMCE9PUFycmF5LnByb3RvdHlwZS50b0pTT04pe3ZhciB2PUpTT04uc3RyaW5naWZ5O0pTT04uc3RyaW5naWZ5PWZ1bmN0aW9uKHQpe3ZhciBlPUFycmF5LnByb3RvdHlwZS50b0pTT047ZGVsZXRlIEFycmF5LnByb3RvdHlwZS50b0pTT047dmFyIG49dih0KTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnRvSlNPTj1lLG59fXQuJF9UYXdrLnN0YXJ0VGltZT0obmV3IERhdGUpLmdldFRpbWUoKS50b1N0cmluZygpLHQuJF9UYXdrLmxvYWRlZD0hMSx0LiRfVGF3ay5jb25uZWN0ZWQ9ITEsdC4kX1Rhd2sucmVhZHk9ITEsdGhpcy5UYXdrV2luZG93LnJlZ2lzdGVyPW5ldyBhLmEoe3N0b3JlOmIuYSxUYXdrV2luZG93OnRoaXMuVGF3a1dpbmRvd30pLGkuYS51c2UocC5hLHt9KSxpLmEudXNlKHIuYSx7VGF3a1dpbmRvdzp0aGlzLlRhd2tXaW5kb3d9KSxpLmEudXNlKG8uYSx7c3RvcmU6Yi5hLFRhd2tXaW5kb3c6dGhpcy5UYXdrV2luZG93fSksaS5hLnVzZShzLmEse3N0b3JlOmIuYSxUYXdrV2luZG93OnRoaXMuVGF3a1dpbmRvd30pLGkuYS51c2UoYy5hLHtzdG9yZTpiLmEsVGF3a1dpbmRvdzp0aGlzLlRhd2tXaW5kb3d9KSxpLmEudXNlKHUuYSx7c3RvcmU6Yi5hLFRhd2tXaW5kb3c6dGhpcy5UYXdrV2luZG93fSksaS5hLnVzZShsLmEse3N0b3JlOmIuYSxUYXdrV2luZG93OnRoaXMuVGF3a1dpbmRvd30pLGkuYS51c2UoZC5hLHtzdG9yZTpiLmEsVGF3a1dpbmRvdzp0aGlzLlRhd2tXaW5kb3d9KSxpLmEudXNlKGguYSx7c3RvcmU6Yi5hLFRhd2tXaW5kb3c6dGhpcy5UYXdrV2luZG93fSksaS5hLnVzZShnLmEpLGkuYS51c2UobS5hLHtzdG9yZTpiLmEsVGF3a1dpbmRvdzp0aGlzLlRhd2tXaW5kb3d9KSxpLmEudXNlKGsuYSksdGhpcy5jaGVja01ldGFDb250ZW50KCksdGhpcy5jb25uZWN0KHt2aXNpdG9yOmZ9KX19fSx7a2V5OiJjaGVja01ldGFDb250ZW50Iix2YWx1ZTpmdW5jdGlvbigpe2Zvcih2YXIgdCxlPXt9LG49ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm1ldGEiKSxpPSIiLHI9W10sbz0wLGE9bi5sZW5ndGg7bzxhO28rKyluW29dLmdldEF0dHJpYnV0ZSgibmFtZSIpJiYidmlld3BvcnQiPT09bltvXS5nZXRBdHRyaWJ1dGUoIm5hbWUiKS50b0xvd2VyQ2FzZSgpJiYoaT1uW29dLmdldEF0dHJpYnV0ZSgiY29udGVudCIpfHwiIik7Zm9yKHZhciBzPTAsYz0ocj0oaT1pLnJlcGxhY2UoLyAvZywiIikpLnNwbGl0KCIsIikpLmxlbmd0aDtzPGM7cysrKWVbKHQ9cltzXS5zcGxpdCgiPSIpKVswXV09dFsxXTt2YXIgdT0hKCFlLndpZHRoJiYhZS5oZWlnaHQpLGw9ZVsibWluaW11bS1zY2FsZSJdJiZlWyJtYXhpbXVtLXNjYWxlIl0mJmVbIm1pbmltdW0tc2NhbGUiXT09PWVbIm1heGltdW0tc2NhbGUiXSxkPWVbImluaXRpYWwtc2NhbGUiXSYmZVsibWF4aW11bS1zY2FsZSJdJiZlWyJpbml0aWFsLXNjYWxlIl09PT1lWyJtYXhpbXVtLXNjYWxlIl07dGhpcy5UYXdrV2luZG93Lm1ldGFDb250ZW50PWkmJmkubGVuZ3RoP2k6bnVsbCx0aGlzLlRhd2tXaW5kb3cuaGFzTm9TY2FsZT0ibm8iPT09ZVsidXNlci1zY2FsYWJsZSJdfHwiMCI9PT1lWyJ1c2VyLXNjYWxhYmxlIl0sdGhpcy5UYXdrV2luZG93LmlzTW9iaWxlT3B0aW1pemVkV2Vic2l0ZT0hIShsJiYodXx8dGhpcy5UYXdrV2luZG93Lmhhc05vU2NhbGUpfHxkKX19LHtrZXk6ImNvbm5lY3QiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZT10aGlzLG49YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnt9LGk9bi52aXNpdG9yLHI9dm9pZCAwPT09aT92b2lkIDA6aTtpZihiLmEuZGlzcGF0Y2goInJlc2V0IiksYi5hLmRpc3BhdGNoKCJwcm9wZXJ0eS91cGRhdGVJZCIsdGhpcy5wcm9wZXJ0eUlkKSxiLmEuZGlzcGF0Y2goIndpZGdldC91cGRhdGVJZCIsdGhpcy53aWRnZXRJZCksd2luZG93LlRhd2tfQVBJJiYhMT09PShudWxsPT09KHQ9d2luZG93LlRhd2tfQVBJKXx8dm9pZCAwPT09dD92b2lkIDA6dC5hdXRvU3RhcnQpJiZiLmEuY29tbWl0KCJ3aWRnZXQvc2V0VmlzaWJpbGl0eSIsITEpLGIuYS5kaXNwYXRjaCgicHJvcGVydHkvdXBkYXRlSXNUYXdrSG9zdGVkUGFnZSIsInRhd2sudG8iPT09d2luZG93LmxvY2F0aW9uLmhvc3QpLGIuYS5kaXNwYXRjaCgicm91dGVyL2FkZFJvdXRlcyIsVC5hKSxuZXcgZi5hKGIuYSkscy5hLmxvY2FsX0FQSS5pc1dpbmRvd2VkKXt2YXIgYT15LmEucGFyc2VRdWVyeVN0cmluZygpO2IuYS5kaXNwYXRjaCgic2Vzc2lvbi91cGRhdGVDb25uZWN0aW9uRGF0YSIse3NrOmEuJF90YXdrX3NrfSksYS5wb3AmJmIuYS5jb21taXQoIndpZGdldC9zZXRJc1BvcG91dCIsITApLGIuYS5jb21taXQoIndpZGdldC9zZXRJc1dpbmRvd2VkIiwhMCl9aWYocy5hLmxvY2FsX0FQSS5lbWJlZGRlZCYmKGIuYS5jb21taXQoIndpZGdldC9zZXRJc0VtYmVkZGVkIiwhMCksYi5hLmNvbW1pdCgiYnJvd3NlckRhdGEvc2V0TW9iaWxlQnJvd3Nlck5hbWUiLG51bGwpKSx3aW5kb3cudG9wIT09d2luZG93KXt2YXIgYz0hMTt0cnl7Yz13aW5kb3cub3JpZ2luPT09d2luZG93LnRvcC5vcmlnaW59Y2F0Y2godCl7fWN8fGIuYS5jb21taXQoIndpZGdldC9zZXRJc0lmcmFtZSIsITApfXMuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQmVmb3JlTG9hZCIpLHRoaXMuVGF3a1dpbmRvdy5tYXhpbWl6ZT0hMTt2YXIgdT1bbmV3IFByb21pc2UoKGZ1bmN0aW9uKHQsZSl7by5hLmdldFNldHRpbmdzKHQsZSl9KSldO3dpbmRvdy5UYXdrX0FQSSYmIXdpbmRvdy5UYXdrX0FQSS5hdXRvU3RhcnQmJnZvaWQgMCE9PXdpbmRvdy5UYXdrX0FQSS5hdXRvU3RhcnR8fHUucHVzaChuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxuKXtlLlRhd2tXaW5kb3cucmVnaXN0ZXIuaW5pdCh0LG4se3Zpc2l0b3I6cn0pfSkpKTt0cnl7T2JqZWN0KHcuYSkodSkudGhlbigoZnVuY3Rpb24odCl7aWYoMj09PXQubGVuZ3RoKXtpZigiZnVsZmlsbGVkIj09PXRbMF0uc3RhdHVzJiYiZnVsZmlsbGVkIj09PXRbMV0uc3RhdHVzKXt2YXIgbj0odFsxXS52YWx1ZXx8e30pLmRhdGE7biYmbi5zZXR0aW5nc1ZlcnNpb249PT10WzBdLnZhbHVlPyhlLmV4dHJhY3RSZWdpc3RyYXRpb25EYXRhKHRbMV0udmFsdWUpLGUuY3JlYXRlVUkoITApKTooc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidGF3a19zdiIsbi5zZXR0aW5nc1ZlcnNpb24pLG8uYS52ZXJzaW9uPW4uc2V0dGluZ3NWZXJzaW9uLG8uYS5nZXRTZXR0aW5ncygoZnVuY3Rpb24oKXtlLmV4dHJhY3RSZWdpc3RyYXRpb25EYXRhKHRbMV0udmFsdWUpLGUuY3JlYXRlVUkoITApLGcuYS4kZW1pdCgidXBkYXRlV2lkZ2V0U2V0dGluZ3MiKX0pLChmdW5jdGlvbih0KXtjb25zb2xlLmVycm9yKHQpfSkpKX19ZWxzZSJmdWxmaWxsZWQiPT09dFswXS5zdGF0dXMmJmUuY3JlYXRlVUkoKX0pKX1jYXRjaCh0KXtjb25zb2xlLmVycm9yKHQpfX19LHtrZXk6ImV4dHJhY3RSZWdpc3RyYXRpb25EYXRhIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10LmRhdGEsbj1iLmEuZ2V0dGVyc1sid2lkZ2V0L2NvbnNlbnREYXRhIl0saT1iLmEuZ2V0dGVyc1sid2lkZ2V0L3VzUHJpdmFjeVNoaWVsZCJdLHI9ISghbnx8IU9iamVjdC5rZXlzKG4pLmxlbmd0aCksbz0hKCFlLnJjZnx8IXImJiFpKTtpZihiLmEuZGlzcGF0Y2goImNoYXQvdXBkYXRlVmVyc2lvbiIsZS5jdmVyfHwwKSxiLmEuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlQ29uc2VudEZsYWciLG8pLCJtYXgiPT09ZS5jdyYmKHRoaXMuVGF3a1dpbmRvdy5tYXhpbWl6ZT0hMCksYi5hLmRpc3BhdGNoKCJzZXNzaW9uL3VwZGF0ZUNvbm5lY3Rpb25EYXRhIixlKSxvfHwoaC5hLnN0b3JlU2Vzc2lvbkluZm9ybWF0aW9uKCksYi5hLmRpc3BhdGNoKCJ2aXNpdG9yL3VwZGF0ZVVVSUQiLGUudWlkKSxiLmEuZGlzcGF0Y2goInZpc2l0b3IvdXBkYXRlVmlzaXRvckluZm9ybWF0aW9uIixlKSxlLmRwdCYmYi5hLmRpc3BhdGNoKCJjaGF0L3VwZGF0ZURlcGFydG1lbnQiLGUuZHB0KSksZS5wY2ZzJiZiLmEuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlUHJlY2hhdFN1Ym1pdHRlZCIsZS5wY2ZzKSxlLnJlZnMmJmUucmVmcy5sZW5ndGgpZm9yKHZhciBhPTA7YTxlLnJlZnMubGVuZ3RoO2ErKyl7dmFyIHM9ZS5yZWZzW2FdO2IuYS5jb21taXQoImNoYXQvc2V0Rm9ybVJlZnMiLHMpfWUudHJhbnNmZXImJmIuYS5kaXNwYXRjaCgiY2hhdC91cGRhdGVDaGF0VHJhbnNmZXJEYXRhIix7dHJhbnNmZXI6ZS50cmFuc2Zlcix0cmFuc2ZlclZlcnNpb246ZS50cmFuc2ZlclZlcn0pLGIuYS5kaXNwYXRjaCgic2NoZWR1bGUvdXBkYXRlVGltZXpvbmUiLGUud3N0eiksdS5hJiZ1LmEuc2V0dXAoKSxiLmEuZGlzcGF0Y2goInNlc3Npb24vc2V0UGFnZVN0YXR1cyIse2RhdGE6ZXx8e2FzdDoib2ZmbGluZSJ9fSksYi5hLmNvbW1pdCgic2Vzc2lvbi9zZXRDaGF0QnViYmxlQ2xvc2VkIiwhIWUuYmJsYyksYi5hLmNvbW1pdCgic2Vzc2lvbi9zZXRMYXN0TWVzc2FnZVRpbWVzdGFtcCIsZS5sbXN0KSxiLmEuY29tbWl0KCJzZXNzaW9uL3NldFdhaXRUaW1lIixlLmV3dD8xZTMqZS5ld3Q6NmU0KSxiLmEuY29tbWl0KCJjaGF0L3NldEhpc3RvcnlNZXNzYWdlcyIsZS5jfHxbXSksYi5hLmNvbW1pdCgiY2hhdC9zZXRDaGF0SWQiLGUuY2hpZCksYi5hLmRpc3BhdGNoKCJjaGF0L3NldFByZXZpb3VzTWVzc2FnZXMiKSxiLmEuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlVG9rZW4iLHt0b2tlbjplLnRrbixleHBpcnk6ZS50a25FeHB9KSxlLmNjJiZiLmEuZGlzcGF0Y2goInNlc3Npb24vc2V0Q291bnRyeUNvZGUiLGUuY2MpLGUucmMmJmIuYS5kaXNwYXRjaCgic2Vzc2lvbi9zZXRSZWdpb25hbENvZGUiLGUucmMpLHRoaXMuY2FsbGJhY2soKX19LHtrZXk6ImNyZWF0ZVVJIix2YWx1ZTpmdW5jdGlvbih0KXt0aGlzLlRhd2tXaW5kb3cuYXBwP2cuYS4kZW1pdCgicmVzZXRTdGF0ZSIpOihpLmEudXNlKHYuYSksdGhpcy5UYXdrV2luZG93LmFwcD1uZXcgaS5hKHtyZW5kZXI6ZnVuY3Rpb24odCl7cmV0dXJuIHQoUy5hKX0sc3RvcmU6Yi5hfSkuJG1vdW50KCkpLCFiLmEuZ2V0dGVyc1sic2Vzc2lvbi9uZWVkQ29uc2VudCJdJiZ0JiZtLmEuY29ubmVjdCgpLGQuYS5pbml0QWN0aXZpdHlSZXNldCgpLCFiLmEuZ2V0dGVyc1siYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiXSYmdGhpcy5UYXdrV2luZG93Lm1heGltaXplJiZiLmEuY29tbWl0KCJzZXNzaW9uL3NldENoYXRXaW5kb3dTdGF0ZSIsIm1heCIpfX1dKX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiNzdiNCI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybihpPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gcih0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIG8odCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpLmVudW1lcmFibGU9aS5lbnVtZXJhYmxlfHwhMSxpLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gaSYmKGkud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHMoaS5rZXkpLGkpfX1mdW5jdGlvbiBhKHQsZSxuKXtyZXR1cm4oZT1zKGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bix0fWZ1bmN0aW9uIHModCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9aSh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciByPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWkocikpcmV0dXJuIHI7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09aShlKT9lOmUrIiJ9bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBjfSkpO3ZhciBjPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmbyh0LnByb3RvdHlwZSxlKSxuJiZvKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307cih0aGlzLHQpLGEodGhpcywiYnJvd3NlcklkZW50aWZpZXIiLFt7c3RyaW5nOm5hdmlnYXRvci51c2VyQWdlbnQsc3ViU3RyaW5nOiJFZGdlIixpZGVudGl0eToiZXhwbG9yZXIiLHZlcnNpb25TZWFyY2g6IkVkZ2UifSx7c3RyaW5nOm5hdmlnYXRvci51c2VyQWdlbnQsc3ViU3RyaW5nOiJUcmlkZW50LzcuMCIsaWRlbnRpdHk6ImV4cGxvcmVyIix2ZXJzaW9uU2VhcmNoOiJydiJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6IihPcGVyYXxPUFIpIixpZGVudGl0eToib3BlcmEiLHZlcnNpb25TZWFyY2g6IlZlcnNpb24ifSx7c3RyaW5nOm5hdmlnYXRvci51c2VyQWdlbnQsc3ViU3RyaW5nOiJDaHJvbWUiLGlkZW50aXR5OiJjaHJvbWUiLHZlcnNpb25TZWFyY2g6IkNocm9tZSJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6Ik1vYmlsZSBTYWZhcmkiLGlkZW50aXR5OiJhbmRyb2lkIix2ZXJzaW9uU2VhcmNoOiJWZXJzaW9uIn0se3N0cmluZzpuYXZpZ2F0b3IudXNlckFnZW50LHN1YlN0cmluZzoiRmlyZWZveCIsaWRlbnRpdHk6ImZpcmVmb3giLHZlcnNpb25TZWFyY2g6IkZpcmVmb3gifSx7c3RyaW5nOm5hdmlnYXRvci51c2VyQWdlbnQsc3ViU3RyaW5nOiJNU0lFIixpZGVudGl0eToiZXhwbG9yZXIiLHZlcnNpb25TZWFyY2g6Ik1TSUUifSx7c3RyaW5nOm5hdmlnYXRvci51c2VyQWdlbnQsc3ViU3RyaW5nOiJJRU1vYmlsZSIsaWRlbnRpdHk6ImV4cGxvcmVyIix2ZXJzaW9uU2VhcmNoOiJJRU1vYmlsZSJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6IlNhZmFyaSIsaWRlbnRpdHk6InNhZmFyaSIsdmVyc2lvblNlYXJjaDoiVmVyc2lvbiJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6IkdlY2tvIixpZGVudGl0eToibW96aWxsYSIsdmVyc2lvblNlYXJjaDoicnYifV0pLGEodGhpcywib3NJZGVudGlmaWVyIixbe3N0cmluZzpuYXZpZ2F0b3IudXNlckFnZW50LHN1YlN0cmluZzoiV2luZG93cyBQaG9uZSIsaWRlbnRpdHk6IndpbmRvd3NfcGhvbmUifSx7c3RyaW5nOm5hdmlnYXRvci5wbGF0Zm9ybSxzdWJTdHJpbmc6IldpbiIsaWRlbnRpdHk6IndpbmRvd3MifSx7c3RyaW5nOm5hdmlnYXRvci5wbGF0Zm9ybSxzdWJTdHJpbmc6Ik1hYyIsaWRlbnRpdHk6Im1hYyJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6ImlQaG9uZSIsaWRlbnRpdHk6ImlwaG9uZSJ9LHtzdHJpbmc6bmF2aWdhdG9yLnVzZXJBZ2VudCxzdWJTdHJpbmc6IkFuZHJvaWQiLGlkZW50aXR5OiJhbmRyb2lkIn0se3N0cmluZzpuYXZpZ2F0b3IucGxhdGZvcm0sc3ViU3RyaW5nOiJMaW51eCIsaWRlbnRpdHk6ImxpbnV4In0se3N0cmluZzpuYXZpZ2F0b3IudXNlckFnZW50LHN1YlN0cmluZzoiaVBhZCIsaWRlbnRpdHk6ImlwYWQifV0pLGEodGhpcywic2VhcmNoRW5naW5lcyIse2dvb2dsZToicSIseWFob286InAiLGJhaWR1OiJ3ZCIseWFuZGV4OiJ0ZXh0IixiaW5nOiJxIixzb3NvOiJ3Iixhc2s6InEiLGFvbDoicSIsc29nb3U6InF1ZXJ5IixteXdlYnNlYXJjaDoic2VhcmNoZm9yIix5b3VkYW86InEiLGx5Y29zOiJxIixpbmZvc3BhY2U6InEiLGJsZWtrbzoicSIsaW5mbzoicSIsZG9ncGlsZToicSIsZHVja2R1Y2tnbzoicSIsd2ViY3Jhd2xlcjoicSJ9KSxhKHRoaXMsIm1vYmlsZUJyb3dzZXJJZGVudGlmaWVyIix7bm9raWE6Wy8oTm9raWFCcm93c2VyKVwvKFxkKylcLihcZCspLihcZCspXC4oXGQrKS8sL14oTm9raWEpLywvKE5va2lhQnJvd3NlcilcLyhcZCspXC4oXGQrKS4oXGQrKS8sLyhOb2tpYUJyb3dzZXIpXC8oXGQrKVwuKFxkKykvLC8oQnJvd3Nlck5HKVwvKFxkKylcLihcZCspLihcZCspLywvKFNlcmllczYwKVwvNVwuMC8sLyhTZXJpZXM2MClcLyhcZCspXC4oXGQrKS8sLyhTNDBPdmlCcm93c2VyKVwvKFxkKylcLihcZCspXC4oXGQrKVwuKFxkKykvLC8oTm9raWEpW0VOXT8oXGQrKS9dLGJsYWNrYmVycnk6Wy8oQkIxMCk7LywvKFBsYXlCb29rKS4rUklNIFRhYmxldCBPUyAoXGQrKVwuKFxkKylcLihcZCspLywvKEJsYWNrW2JCXWVycnkpLitWZXJzaW9uXC8oXGQrKVwuKFxkKylcLihcZCspLywvKEJsYWNrW2JCXWVycnkpXHM/KFxkKykvXSxjaHJvbWU6Wy8oQ3JNbylcLyhcZCspXC4oXGQrKVwuKFxkKylcLihcZCspLywvKENyaU9TKVwvKFxkKylcLihcZCspXC4oXGQrKVwuKFxkKykvLC8oQW5kcm9pZCkuKihDaHJvbWUpXC8oXGQrKVwuKFxkKylcLihcZCspXC4oXGQrKSAoTW9iaWxlKT8vXSxpZTpbLyhJRU1vYmlsZSlbIC9dKFxkKylcLihcZCspL10sZmlyZWZveDpbL01vYmlsZS4qKEZpcmVmb3gpXC8oXGQrKVwuKFxkKykvLC9UYWJsZXQuKihGaXJlZm94KVwvKFxkKylcLihcZCspL10sb3BlcmFtaW5pOlsvKE9wZXJhIE1pbmkpKD86XC9hdHQpP1wvKFxkKylcLihcZCspL10sb3BlcmE6Wy8oT3BlcmEgVGFibGV0KS4qVmVyc2lvblwvKFxkKylcLihcZCspKD86XC4oXGQrKSk/LywvKD86TW9iaWxlIFNhZmFyaSkuKihPUFIpXC8oXGQrKVwuKFxkKylcLihcZCspJy8sLyhPcGVyYSlcLy4rT3BlcmEgTW9iaS4rVmVyc2lvblwvKFxkKylcLihcZCspLywvKE9wZXJhKVwvKFxkKylcLihcZCspLitPcGVyYSBNb2JpLywvT3BlcmEgTW9iaS4rKE9wZXJhKVwvKFxkKylcLihcZCspLywvT3BlcmEgTW9iaS8sLyhPcGVyYSlcLzkuODAuKlZlcnNpb25cLyhcZCspXC4oXGQrKSg/OlwuKFxkKykpPy9dLHNhZmFyaTpbLyhpUG9kfGlQaG9uZXxpUGFkKTsuKkNQVS4qT1MgKFxkKykoPzpfXGQrKT9fKFxkKykuKk1vYmlsZS9dLHVjOlsvKFVDQnJvd3NlcilbIC9dKFxkKylcLihcZCspXC4oXGQrKS8sLyhVQyBCcm93c2VyKVsgL10oXGQrKVwuKFxkKylcLihcZCspLywvKFVDIEJyb3dzZXJ8VUNCcm93c2VyfFVDV0VCKShcZCspXC4oXGQrKVwuKFxkKykvXSwiYW5kcm9pZDIuMyI6Wy8oQW5kcm9pZCkgMlwuMyg/OlsuLV0oW2EtejAtOV0rKSk/L10sYW5kcm9pZDI6Wy8oQW5kcm9pZCkgMlwuKFxkKykoPzpbLi1dKFthLXowLTldKykpPy9dLGFuZHJvaWQ6Wy9BbmRyb2lkWy0gXVtcZF0rXC5bXGRdKzsgW0EtWmEtel17Mn0tW0EtWmEtel17MCwyfTsgV09XTW9iaWxlICguKykgQnVpbGQvLC9BbmRyb2lkWy0gXVtcZF0rXC5bXGRdKy11cGRhdGUxOyBbQS1aYS16XXsyfS1bQS1aYS16XXswLDJ9OyAoLispIEJ1aWxkLywvQW5kcm9pZFstIF1bXGRdK1wuW1xkXStcLltcZF0rOyBbQS1aYS16XXsyfS1bQS1aYS16XXswLDJ9OyAoLispIEJ1aWxkLywvQW5kcm9pZFstIF1bXGRdK1wuW1xkXStcLltcZF0rO1tBLVphLXpdezJ9LVtBLVphLXpdezAsMn07KC4rKSBCdWlsZC8sL0FuZHJvaWRbLSBdW1xkXStcLltcZF0rOyBbQS1aYS16XXsyfS1bQS1aYS16XXswLDJ9OyAoLispIEJ1aWxkLywvQW5kcm9pZFstIF1bXGRdK1wuW1xkXStcLltcZF0rOyAoLispIEJ1aWxkLywvQW5kcm9pZFstIF1bXGRdK1wuW1xkXSs7ICguKykgQnVpbGQvXX0pLGEodGhpcywic2VhcmNoVmVyc2lvbiIsKGZ1bmN0aW9uKHQsZSl7dmFyIG49dC5pbmRleE9mKGUpO2lmKC0xIT09bilyZXR1cm4gcGFyc2VGbG9hdCh0LnN1YnN0cmluZyhuK2UubGVuZ3RoKzEpKX0pKSxhKHRoaXMsImdldE1vYmlsZUJyb3dzZXIiLChmdW5jdGlvbigpe2Zvcih2YXIgdD0hMSxlPW5hdmlnYXRvci51c2VyQWdlbnQsbj1PYmplY3Qua2V5cyh0aGlzLm1vYmlsZUJyb3dzZXJJZGVudGlmaWVyKSxpPTA7IXQmJmk8bi5sZW5ndGg7KXtmb3IodmFyIHI9bltpXSxvPTA7bzx0aGlzLm1vYmlsZUJyb3dzZXJJZGVudGlmaWVyW3JdLmxlbmd0aDtvKyspe3ZhciBhPXRoaXMubW9iaWxlQnJvd3NlcklkZW50aWZpZXJbcl1bb107aWYoZS5tYXRjaChhKSl7dD1yO2JyZWFrfX1pKyt9cmV0dXJuIHR9KSksYSh0aGlzLCJnZXRIb3N0bmFtZSIsKGZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBSZWdFeHAoIl4oPzpmfGh0KXRwKD86cyk/Oi8vKFteL10rKSIsImltIiksbj10Lm1hdGNoKGUpO3JldHVybiBudWxsPT09bnx8IUFycmF5LmlzQXJyYXkobil8fG4ubGVuZ3RoPDI/bnVsbDpuWzFdP25bMV0udG9TdHJpbmcoKTpudWxsfSkpLGEodGhpcywiZ2V0UGx1Z2lucyIsKGZ1bmN0aW9uKCl7dmFyIHQsZSxuPVtdO2Zvcih0PTAsZT1uYXZpZ2F0b3IucGx1Z2lucy5sZW5ndGg7dDxlO3QrKyluYXZpZ2F0b3IucGx1Z2luc1t0XS5uYW1lJiZuLnB1c2gobmF2aWdhdG9yLnBsdWdpbnNbdF0ubmFtZSk7cmV0dXJuIG59KSksdGhpcy5zdG9yZT1lLHRoaXMuaW5pdCgpfSksW3trZXk6ImluaXQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZT0ib3RoZXIiLG49ITEsaT10aGlzLnNlYXJjaFN0cmluZyh0aGlzLmJyb3dzZXJJZGVudGlmaWVyKXx8e307aS5pZGVudGl0eSYmKGU9aS5pZGVudGl0eSx0PWkudmVyc2lvblNlYXJjaHx8aS5pZGVudGl0eSwiZXhwbG9yZXIiPT09ZSYmKG49ITApKTt2YXIgcj10aGlzLnNlYXJjaFZlcnNpb24obmF2aWdhdG9yLnVzZXJBZ2VudCx0KXx8dGhpcy5zZWFyY2hWZXJzaW9uKG5hdmlnYXRvci5hcHBWZXJzaW9uLHQpfHwib3RoZXIiLG89dGhpcy5zZWFyY2hTdHJpbmcodGhpcy5vc0lkZW50aWZpZXIpfHwib3RoZXIiLGE9dGhpcy5nZXRQbHVnaW5zKCkscz10aGlzLmdldE1vYmlsZUJyb3dzZXIoKSxjPXRoaXMuZ2V0UmVmZXJyZWRTZWFyY2hFbmdpbmUoKSx1PXttcDM6dGhpcy5oYXNIdG1sQXVkaW8oIm1wMyIpLG9nZzp0aGlzLmhhc0h0bWxBdWRpbygib2dnIiksd2F2OnRoaXMuaGFzSHRtbEF1ZGlvKCJ3YXYiKX07dS5zdXBwb3J0ZWQ9dS5tcDN8fHUub2dnfHx1Lndhdjt2YXIgbD0hbjt0aGlzLnN0b3JlLmRpc3BhdGNoKCJicm93c2VyRGF0YS91cGRhdGVJbml0aWFsRGF0YSIse3ZlcnNpb246cixvczpvLHBsdWdpbnM6YSxtb2JpbGVCcm93c2VyTmFtZTpzLGh0bWw1YXVkaW86dSxpc0lFOm4sc2VhcmNoRW5naW5lOmMsaXNXZWJSVENBdmFpbGFibGU6bH0pfX0se2tleToic2VhcmNoU3RyaW5nIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZSxuO2ZvcihlPTA7ZTx0Lmxlbmd0aDtlKyspaWYobj10W2VdLnN0cmluZyxuZXcgUmVnRXhwKHRbZV0uc3ViU3RyaW5nKS50ZXN0KG4pKXJldHVybiB0W2VdfX0se2tleToiZ2V0UmVmZXJyZWRTZWFyY2hFbmdpbmUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZSxuPSIiO2lmKGRvY3VtZW50LnJlZmVycmVyJiYoZT10aGlzLmdldEhvc3RuYW1lKGRvY3VtZW50LnJlZmVycmVyKSkpZm9yKHQgaW4gZT1lLnRvTG93ZXJDYXNlKCksdGhpcy5zZWFyY2hFbmdpbmVzKWlmKGUuaW5kZXhPZih0KT49MCl7dmFyIGk9dGhpcy5nZXRRdWVyeXN0cmluZyhkb2N1bWVudC5yZWZlcnJlcix0aGlzLnNlYXJjaEVuZ2luZXNbdF0pOyJibGVra28iPT09dCYmIiI9PT1pJiYoaT10aGlzLmdldFF1ZXJ5c3RyaW5nKGRvY3VtZW50LnJlZmVycmVyLnJlcGxhY2UoIi93cy8iLCIvP3E9IiksInEiKSksbj10O2JyZWFrfXJldHVybiBufX0se2tleToiZ2V0UXVlcnlzdHJpbmciLHZhbHVlOmZ1bmN0aW9uKHQsZSl7ZT1lLnJlcGxhY2UoL1tbXS8sIlxcWyIpLnJlcGxhY2UoL1tcXV0vLCJcXF0iKTt2YXIgbj1uZXcgUmVnRXhwKCJbXFw/Jl0iK2UrIj0oW14mI10qKSIpLmV4ZWModCk7cmV0dXJuIG51bGw9PT1ufHwhQXJyYXkuaXNBcnJheShuKXx8bi5sZW5ndGg8Mj9udWxsOm5bMV0/dW5lc2NhcGUoblsxXS5yZXBsYWNlKC9cKy9nLCIgIikpOm51bGx9fSx7a2V5OiJoYXNIdG1sQXVkaW8iLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImF1ZGlvIik7dHJ5e2lmKCFlLmNhblBsYXlUeXBlfHwibm8iPT09ZS5jYW5QbGF5VHlwZSgiYXVkaW8vIit0KXx8IiI9PT1lLmNhblBsYXlUeXBlKCJhdWRpby8iK3QpKXJldHVybiExfWNhdGNoKHQpe3JldHVybiExfXJldHVybiEwfX1dKX0sIjdmNDYiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBJfSkpO3ZhciBpPSImcXVvdDsiLHI9IiYjMzk7IixvPSImbHQ7IixhPSImZ3Q7IixzPSImYW1wOyIsYz0iJmNvcHk7Iix1PSImcmVnOyIsbD0iJnRyYWRlOyIsZD1uZXcgUmVnRXhwKCImIiwiZyIpLGY9bmV3IFJlZ0V4cCgnIicsImciKSxoPW5ldyBSZWdFeHAoIiciLCJnIikscD1uZXcgUmVnRXhwKCI8IiwiZyIpLG09bmV3IFJlZ0V4cCgiPiIsImciKSxnPW5ldyBSZWdFeHAoIsKpIiwiZ20iKSx2PW5ldyBSZWdFeHAoIsKuIiwiZ20iKSx3PW5ldyBSZWdFeHAoIuKEoiIsImdtIikseT1uZXcgUmVnRXhwKGksImciKSxiPW5ldyBSZWdFeHAociwiZyIpLGs9bmV3IFJlZ0V4cChvLCJnIiksVD1uZXcgUmVnRXhwKGEsImciKSxTPW5ldyBSZWdFeHAocywiZyIpLFA9bmV3IFJlZ0V4cChjLCJnIiksRT1uZXcgUmVnRXhwKHUsImciKSxPPW5ldyBSZWdFeHAobCwiZyIpLEk9e3JlZ1RyaW06L15ccyt8XHMrJC9nLHJhd0VuY29kZTpmdW5jdGlvbih0KXtyZXR1cm4gdD90LnJlcGxhY2UoZCxzKS5yZXBsYWNlKGYsaSkucmVwbGFjZShoLHIpLnJlcGxhY2UocCxvKS5yZXBsYWNlKG0sYSkucmVwbGFjZShnLGMpLnJlcGxhY2Uodix1KS5yZXBsYWNlKHcsbCk6dH0scmF3RGVjb2RlOmZ1bmN0aW9uKHQpe3JldHVybiB0P3QucmVwbGFjZSh5LCciJykucmVwbGFjZShiLCInIikucmVwbGFjZShrLCI8IikucmVwbGFjZShULCI+IikucmVwbGFjZShTLCImIikucmVwbGFjZShQLCLCqSIpLnJlcGxhY2UoRSwiwq4iKS5yZXBsYWNlKE8sIuKEoiIpOnR9LHJhd0RlY29kZUhUTUxTeW1ib2xzOmZ1bmN0aW9uKHQpe3JldHVybiB0P3QucmVwbGFjZShTLCImIikucmVwbGFjZShQLCLCqSIpLnJlcGxhY2UoRSwiwq4iKS5yZXBsYWNlKE8sIuKEoiIpOnR9LGg6ZnVuY3Rpb24odCl7dmFyIGU9MDtpZigwPT09dC5sZW5ndGgpcmV0dXJuIGU7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe2U9KGU8PDUpLWUrdC5jaGFyQ29kZUF0KG4pLGUmPWV9cmV0dXJuIGV9LGlzU3RyaW5nOmZ1bmN0aW9uKHQpe3JldHVybiB2b2lkIDAhPT10JiYic3RyaW5nIj09dHlwZW9mIHR9LGhhc1B1bmN0dWF0aW9uOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1hdGNoKC8oPyFbXHUwNjAwLVx1MDZGRlx1MDc1MC1cdTA3N0ZcdTA1OTAtXHUwNUZGXHUwOTAwLVx1MDk3Rlx1NEUwMC1cdTlGRkZcdUFDMDAtXHVEN0FGXHUzMDQwLVx1MzA5Rlx1MzBBMC1cdTMwRkZcdTExMDAtXHUxMUZGXHUzMTMwLVx1MzE4Rlx1QTAwMC1cdUE0OEZcdTI4MDAtXHUyOEZGXSlbXlx3XHMvLV0rJC9nKX0sdHJpbTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5pc1N0cmluZyh0KT9TdHJpbmcucHJvdG90eXBlLnRyaW0/dC50cmltKCkudG9TdHJpbmcoKTp0LnJlcGxhY2UodGhpcy5yZWdUcmltLCIiKTpudWxsfSx0b0xpbmthYmxlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuLGkscj0vXFsoW14pXSspXF0vLG89L1woKFteKV0rKVwpLyxhPS9cW1teXF1cXChcXCldK1xdXCgoXGJodHRwOlwvXC9cYnxcYmh0dHBzOlwvXC9cYnxcYm1haWx0bzpcYnxcYnRlbDpcK3swLDF9XGIpezF9W15cXVxcKFxcKV0rXCkvaSxzPSJfYmxhbmsiLGM9dDtudWxsIT09KGU9YS5leGVjKGMpKTspaWYobj1yLmV4ZWMoZVswXSksKGk9by5leGVjKGVbMF0pKVswXS5pbmRleE9mKCIobWFpbHRvOiIpfHwocz0iX3RvcCIpLChjPWMucmVwbGFjZShuWzBdK2lbMF0sJzxhIHRhcmdldD0iJytzKyciIGhyZWY9IicraVsxXSsnIiBjbGFzcz0ibGluayI+JytuWzFdKyI8L2E+IikpPT09dClyZXR1cm4gYztyZXR1cm4gY30sbWFya2Rvd25Ub0h0bWw6ZnVuY3Rpb24odCl7cmV0dXJuIHQ9dGhpcy5yYXdFbmNvZGUodCksdD0odD0odD10aGlzLnRvTGlua2FibGUodCkpLnJlcGxhY2UoLyg/ITxhW14+XSo+W148XSlfKC4qPylfKD8hW148XSo8XC9hPikvZ2ltLCI8aT4kMTwvaT4iKSkucmVwbGFjZSgvXCpcKiguKj8pXCpcKi9naW0sIjxiPiQxPC9iPiIpLnJlcGxhY2UoL1wqKC4qPylcKi9naW0sIjxiPiQxPC9iPiIpfSxyZW1vdmVIVE1MVGFnczpmdW5jdGlvbih0KXtyZXR1cm4gdCYmMCE9PXQubGVuZ3RoP3QucmVwbGFjZSgvPGJyXC8+fDxicj4vZywiICIpOnR9LHJlbW92ZUFuY2hvclRhZ3M6ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVwbGFjZSgvPGFcYltePl0qPihbXjxdKyk8XC9hPi9naSwiJDEiKX0sY2xlYW51cENzc1ZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmlzU3RyaW5nKHQpP3QucmVwbGFjZSgvKCFpbXBvcnRhbnQpfCg7KS9nLCIiKTp0fSxwYXJzZVF1ZXJ5U3RyaW5nOmZ1bmN0aW9uKHQpe3ZhciBlLG4saSxyLG89e307Zm9yKGU9MCxuPShyPSh0P3QucmVwbGFjZSgvKC4qKVw/LywiIik6d2luZG93LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoMSkpLnNwbGl0KCImIikpLmxlbmd0aDtlPG47ZSs9MSlvWyhpPXJbZV0uc3BsaXQoIj0iKSlbMF1dPWlbMV07cmV0dXJuIG99LGhhc01hcmtkb3duOmZ1bmN0aW9uKHQpe3ZhciBlPS9cWy4qP11cKGh0dHBzPzpcL1wvLio/XCkvLnRlc3QodCksbj0vXCpcKi4qP1wqXCovLnRlc3QodCksaT0vXy4qP18vLnRlc3QodCkscj0vYC4qP2AvLnRlc3QodCk7cmV0dXJuIGV8fG58fGl8fHJ9fX0sIjg3ZGQiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBpfSkpO3ZhciBpPXtkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2dlbmVyaWNTdHlsZXM6eyJvdXRsaW5lOiI6Im5vbmUgIWltcG9ydGFudDsiLCJ2aXNpYmlsaXR5OiI6InZpc2libGUgIWltcG9ydGFudDsiLCJyZXNpemU6Ijoibm9uZSAhaW1wb3J0YW50OyIsImJveC1zaGFkb3c6Ijoibm9uZSAhaW1wb3J0YW50OyIsIm92ZXJmbG93OiI6InZpc2libGUgIWltcG9ydGFudDsiLCJiYWNrZ3JvdW5kOiI6Im5vbmUgIWltcG9ydGFudDsiLCJvcGFjaXR5OiI6IjEgIWltcG9ydGFudDsiLCJmaWx0ZXI6IjoiYWxwaGEob3BhY2l0eT0xMDApICFpbXBvcnRhbnQ7IiwiLW1zLWZpbHRlcjoiOiJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eSAxfSkgIWltcG9ydGFudDsiLCItbXotb3BhY2l0eToiOiIxICFpbXBvcnRhbnQ7IiwiLWtodG1sLW9wYWNpdHk6IjoiMSAhaW1wb3J0YW50OyIsInRvcDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwicmlnaHQ6IjoiYXV0byAhaW1wb3J0YW50OyIsImJvdHRvbToiOiJhdXRvICFpbXBvcnRhbnQ7IiwibGVmdDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwicG9zaXRpb246IjoiYWJzb2x1dGUgIWltcG9ydGFudDsiLCJib3JkZXI6IjoiMCAhaW1wb3J0YW50OyIsIm1pbi1oZWlnaHQ6IjoiYXV0byAhaW1wb3J0YW50OyIsIm1pbi13aWR0aDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwibWF4LWhlaWdodDoiOiJub25lICFpbXBvcnRhbnQ7IiwibWF4LXdpZHRoOiI6Im5vbmUgIWltcG9ydGFudDsiLCJwYWRkaW5nOiI6IjAgIWltcG9ydGFudDsiLCJtYXJnaW46IjoiMCAhaW1wb3J0YW50OyIsIi1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eToiOiJub25lICFpbXBvcnRhbnQ7IiwiLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiI6Im5vbmUgIWltcG9ydGFudDsiLCItby10cmFuc2l0aW9uLXByb3BlcnR5OiI6Im5vbmUgIWltcG9ydGFudDsiLCJ0cmFuc2l0aW9uLXByb3BlcnR5OiI6Im5vbmUgIWltcG9ydGFudDsiLCJ0cmFuc2Zvcm06Ijoibm9uZSAhaW1wb3J0YW50OyIsIi13ZWJraXQtdHJhbnNmb3JtOiI6Im5vbmUgIWltcG9ydGFudDsiLCItbXMtdHJhbnNmb3JtOiI6Im5vbmUgIWltcG9ydGFudDsiLCJ3aWR0aDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwiaGVpZ2h0OiI6ImF1dG8gIWltcG9ydGFudDsiLCJkaXNwbGF5OiI6ImJsb2NrICFpbXBvcnRhbnQ7Iiwiei1pbmRleDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwiYmFja2dyb3VuZC1jb2xvcjoiOiJ0cmFuc3BhcmVudCAhaW1wb3J0YW50OyIsImN1cnNvcjoiOiJub25lICFpbXBvcnRhbnQ7IiwiZmxvYXQ6Ijoibm9uZSAhaW1wb3J0YW50OyIsImJvcmRlci1yYWRpdXM6IjoidW5zZXQgIWltcG9ydGFudDsiLCJwb2ludGVyLWV2ZW50czoiOiJhdXRvICFpbXBvcnRhbnQ7IiwiY2xpcDoiOiJhdXRvICFpbXBvcnRhbnQ7IiwiY29sb3Itc2NoZW1lOiI6ImxpZ2h0ICFpbXBvcnRhbnQ7In19fX19LCI5MWNlIjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPTIxNDc0ODM2NDcscj0vW15ceDIwLVx4N0VdLyxvPS9bXHgyRVx1MzAwMlx1RkYwRVx1RkY2MV0vZyxhPXtvdmVyZmxvdzoiT3ZlcmZsb3c6IGlucHV0IG5lZWRzIHdpZGVyIGludGVnZXJzIHRvIHByb2Nlc3MiLCJub3QtYmFzaWMiOiJJbGxlZ2FsIGlucHV0ID49IDB4ODAgKG5vdCBhIGJhc2ljIGNvZGUgcG9pbnQpIiwiaW52YWxpZC1pbnB1dCI6IkludmFsaWQgaW5wdXQifSxzPU1hdGguZmxvb3IsYz1TdHJpbmcuZnJvbUNoYXJDb2RlLHU9e2Vycm9yOmZ1bmN0aW9uKHQpe3Rocm93IG5ldyBSYW5nZUVycm9yKGFbdF0pfSxtYXA6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dC5sZW5ndGgsaT1bXTtuLS07KWlbbl09ZSh0W25dKTtyZXR1cm4gaX0sbWFwRG9tYWluOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zcGxpdCgiQCIpLGk9IiI7bi5sZW5ndGg+MSYmKGk9blswXSsiQCIsdD1uWzFdKTt2YXIgcj0odD10LnJlcGxhY2UobywiLiIpKS5zcGxpdCgiLiIpO3JldHVybiBpK3RoaXMubWFwKHIsZSkuam9pbigiLiIpfSx1Y3MyZGVjb2RlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuLGk9W10scj0wLG89dC5sZW5ndGg7cjxvOykoZT10LmNoYXJDb2RlQXQocisrKSk+PTU1Mjk2JiZlPD01NjMxOSYmcjxvPzU2MzIwPT0oNjQ1MTImKG49dC5jaGFyQ29kZUF0KHIrKykpKT9pLnB1c2goKCgxMDIzJmUpPDwxMCkrKDEwMjMmbikrNjU1MzYpOihpLnB1c2goZSksci0tKTppLnB1c2goZSk7cmV0dXJuIGl9LGRpZ2l0VG9CYXNpYzpmdW5jdGlvbih0LGUpe3JldHVybiB0KzIyKzc1Kih0PDI2KS0oKDAhPWUpPDw1KX0sYWRhcHQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPTA7Zm9yKHQ9bj9zKHQvNzAwKTp0Pj4xLHQrPXModC9lKTt0PjQ1NTtpKz0zNil0PXModC8zNSk7cmV0dXJuIHMoaSszNip0Lyh0KzM4KSl9LGVuY29kZTpmdW5jdGlvbih0KXt2YXIgZSxuLHIsbyxhLHUsbCxkLGYsaCxwLG0sZyx2LHcseT1bXTtmb3IobT0odD10aGlzLnVjczJkZWNvZGUodCkpLmxlbmd0aCxlPTEyOCxuPTAsYT03Mix1PTA7dTxtOysrdSkocD10W3VdKTwxMjgmJnkucHVzaChjKHApKTtmb3Iocj1vPXkubGVuZ3RoLG8mJnkucHVzaCgiLSIpO3I8bTspe2ZvcihsPWksdT0wO3U8bTsrK3UpKHA9dFt1XSk+PWUmJnA8bCYmKGw9cCk7Zm9yKGwtZT5zKChpLW4pLyhnPXIrMSkpJiZ0aGlzLmVycm9yKCJvdmVyZmxvdyIpLG4rPShsLWUpKmcsZT1sLHU9MDt1PG07Kyt1KWlmKChwPXRbdV0pPGUmJisrbj5pJiZ0aGlzLmVycm9yKCJvdmVyZmxvdyIpLHA9PWUpe2ZvcihkPW4sZj0zNjshKGQ8KGg9Zjw9YT8xOmY+PWErMjY/MjY6Zi1hKSk7Zis9MzYpdz1kLWgsdj0zNi1oLHkucHVzaChjKHRoaXMuZGlnaXRUb0Jhc2ljKGgrdyV2LDApKSksZD1zKHcvdik7eS5wdXNoKGModGhpcy5kaWdpdFRvQmFzaWMoZCwwKSkpLGE9dGhpcy5hZGFwdChuLGcscj09byksbj0wLCsrcn0rK24sKytlfXJldHVybiB5LmpvaW4oIiIpfSx0b0FTQ0lJOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLm1hcERvbWFpbih0LChmdW5jdGlvbih0KXtyZXR1cm4gci50ZXN0KHQpPyJ4bi0tIit0aGlzLmVuY29kZSh0KTp0fSkpfX0sbD0obigiNmZjMCIpLG4oImUxYmQiKSksZD1uKCJiZGQwIiksZj1uKCI2ODFkIiksaD1uKCIyNGNhIik7ZnVuY3Rpb24gcCgpe3A9ZnVuY3Rpb24oKXtyZXR1cm4gZX07dmFyIHQsZT17fSxuPU9iamVjdC5wcm90b3R5cGUsaT1uLmhhc093blByb3BlcnR5LHI9T2JqZWN0LmRlZmluZVByb3BlcnR5fHxmdW5jdGlvbih0LGUsbil7dFtlXT1uLnZhbHVlfSxvPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2w/U3ltYm9sOnt9LGE9by5pdGVyYXRvcnx8IkBAaXRlcmF0b3IiLHM9by5hc3luY0l0ZXJhdG9yfHwiQEBhc3luY0l0ZXJhdG9yIixjPW8udG9TdHJpbmdUYWd8fCJAQHRvU3RyaW5nVGFnIjtmdW5jdGlvbiB1KHQsZSxuKXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pLHRbZV19dHJ5e3Uoe30sIiIpfWNhdGNoKHQpe3U9ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0W2VdPW59fWZ1bmN0aW9uIGwodCxlLG4saSl7dmFyIG89ZSYmZS5wcm90b3R5cGUgaW5zdGFuY2VvZiB3P2U6dyxhPU9iamVjdC5jcmVhdGUoby5wcm90b3R5cGUpLHM9bmV3IEwoaXx8W10pO3JldHVybiByKGEsIl9pbnZva2UiLHt2YWx1ZTpJKHQsbixzKX0pLGF9ZnVuY3Rpb24gZCh0LGUsbil7dHJ5e3JldHVybnt0eXBlOiJub3JtYWwiLGFyZzp0LmNhbGwoZSxuKX19Y2F0Y2godCl7cmV0dXJue3R5cGU6InRocm93Iixhcmc6dH19fWUud3JhcD1sO3ZhciBmPSJzdXNwZW5kZWRTdGFydCIsaD0iZXhlY3V0aW5nIixtPSJjb21wbGV0ZWQiLGc9e307ZnVuY3Rpb24gdygpe31mdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGIoKXt9dmFyIGs9e307dShrLGEsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSk7dmFyIFQ9T2JqZWN0LmdldFByb3RvdHlwZU9mLFM9VCYmVChUKF8oW10pKSk7UyYmUyE9PW4mJmkuY2FsbChTLGEpJiYoaz1TKTt2YXIgUD1iLnByb3RvdHlwZT13LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGspO2Z1bmN0aW9uIEUodCl7WyJuZXh0IiwidGhyb3ciLCJyZXR1cm4iXS5mb3JFYWNoKChmdW5jdGlvbihlKXt1KHQsZSwoZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2ludm9rZShlLHQpfSkpfSkpfWZ1bmN0aW9uIE8odCxlKXtmdW5jdGlvbiBuKHIsbyxhLHMpe3ZhciBjPWQodFtyXSx0LG8pO2lmKCJ0aHJvdyIhPT1jLnR5cGUpe3ZhciB1PWMuYXJnLGw9dS52YWx1ZTtyZXR1cm4gbCYmIm9iamVjdCI9PXYobCkmJmkuY2FsbChsLCJfX2F3YWl0Iik/ZS5yZXNvbHZlKGwuX19hd2FpdCkudGhlbigoZnVuY3Rpb24odCl7bigibmV4dCIsdCxhLHMpfSksKGZ1bmN0aW9uKHQpe24oInRocm93Iix0LGEscyl9KSk6ZS5yZXNvbHZlKGwpLnRoZW4oKGZ1bmN0aW9uKHQpe3UudmFsdWU9dCxhKHUpfSksKGZ1bmN0aW9uKHQpe3JldHVybiBuKCJ0aHJvdyIsdCxhLHMpfSkpfXMoYy5hcmcpfXZhciBvO3IodGhpcywiX2ludm9rZSIse3ZhbHVlOmZ1bmN0aW9uKHQsaSl7ZnVuY3Rpb24gcigpe3JldHVybiBuZXcgZSgoZnVuY3Rpb24oZSxyKXtuKHQsaSxlLHIpfSkpfXJldHVybiBvPW8/by50aGVuKHIscik6cigpfX0pfWZ1bmN0aW9uIEkoZSxuLGkpe3ZhciByPWY7cmV0dXJuIGZ1bmN0aW9uKG8sYSl7aWYocj09PWgpdGhyb3cgRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTtpZihyPT09bSl7aWYoInRocm93Ij09PW8pdGhyb3cgYTtyZXR1cm57dmFsdWU6dCxkb25lOiEwfX1mb3IoaS5tZXRob2Q9byxpLmFyZz1hOzspe3ZhciBzPWkuZGVsZWdhdGU7aWYocyl7dmFyIGM9QyhzLGkpO2lmKGMpe2lmKGM9PT1nKWNvbnRpbnVlO3JldHVybiBjfX1pZigibmV4dCI9PT1pLm1ldGhvZClpLnNlbnQ9aS5fc2VudD1pLmFyZztlbHNlIGlmKCJ0aHJvdyI9PT1pLm1ldGhvZCl7aWYocj09PWYpdGhyb3cgcj1tLGkuYXJnO2kuZGlzcGF0Y2hFeGNlcHRpb24oaS5hcmcpfWVsc2UicmV0dXJuIj09PWkubWV0aG9kJiZpLmFicnVwdCgicmV0dXJuIixpLmFyZyk7cj1oO3ZhciB1PWQoZSxuLGkpO2lmKCJub3JtYWwiPT09dS50eXBlKXtpZihyPWkuZG9uZT9tOiJzdXNwZW5kZWRZaWVsZCIsdS5hcmc9PT1nKWNvbnRpbnVlO3JldHVybnt2YWx1ZTp1LmFyZyxkb25lOmkuZG9uZX19InRocm93Ij09PXUudHlwZSYmKHI9bSxpLm1ldGhvZD0idGhyb3ciLGkuYXJnPXUuYXJnKX19fWZ1bmN0aW9uIEMoZSxuKXt2YXIgaT1uLm1ldGhvZCxyPWUuaXRlcmF0b3JbaV07aWYocj09PXQpcmV0dXJuIG4uZGVsZWdhdGU9bnVsbCwidGhyb3ciPT09aSYmZS5pdGVyYXRvci5yZXR1cm4mJihuLm1ldGhvZD0icmV0dXJuIixuLmFyZz10LEMoZSxuKSwidGhyb3ciPT09bi5tZXRob2QpfHwicmV0dXJuIiE9PWkmJihuLm1ldGhvZD0idGhyb3ciLG4uYXJnPW5ldyBUeXBlRXJyb3IoIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJyIraSsiJyBtZXRob2QiKSksZzt2YXIgbz1kKHIsZS5pdGVyYXRvcixuLmFyZyk7aWYoInRocm93Ij09PW8udHlwZSlyZXR1cm4gbi5tZXRob2Q9InRocm93IixuLmFyZz1vLmFyZyxuLmRlbGVnYXRlPW51bGwsZzt2YXIgYT1vLmFyZztyZXR1cm4gYT9hLmRvbmU/KG5bZS5yZXN1bHROYW1lXT1hLnZhbHVlLG4ubmV4dD1lLm5leHRMb2MsInJldHVybiIhPT1uLm1ldGhvZCYmKG4ubWV0aG9kPSJuZXh0IixuLmFyZz10KSxuLmRlbGVnYXRlPW51bGwsZyk6YToobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJpdGVyYXRvciByZXN1bHQgaXMgbm90IGFuIG9iamVjdCIpLG4uZGVsZWdhdGU9bnVsbCxnKX1mdW5jdGlvbiB4KHQpe3ZhciBlPXt0cnlMb2M6dFswXX07MSBpbiB0JiYoZS5jYXRjaExvYz10WzFdKSwyIGluIHQmJihlLmZpbmFsbHlMb2M9dFsyXSxlLmFmdGVyTG9jPXRbM10pLHRoaXMudHJ5RW50cmllcy5wdXNoKGUpfWZ1bmN0aW9uIEEodCl7dmFyIGU9dC5jb21wbGV0aW9ufHx7fTtlLnR5cGU9Im5vcm1hbCIsZGVsZXRlIGUuYXJnLHQuY29tcGxldGlvbj1lfWZ1bmN0aW9uIEwodCl7dGhpcy50cnlFbnRyaWVzPVt7dHJ5TG9jOiJyb290In1dLHQuZm9yRWFjaCh4LHRoaXMpLHRoaXMucmVzZXQoITApfWZ1bmN0aW9uIF8oZSl7aWYoZXx8IiI9PT1lKXt2YXIgbj1lW2FdO2lmKG4pcmV0dXJuIG4uY2FsbChlKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5uZXh0KXJldHVybiBlO2lmKCFpc05hTihlLmxlbmd0aCkpe3ZhciByPS0xLG89ZnVuY3Rpb24gbigpe2Zvcig7KytyPGUubGVuZ3RoOylpZihpLmNhbGwoZSxyKSlyZXR1cm4gbi52YWx1ZT1lW3JdLG4uZG9uZT0hMSxuO3JldHVybiBuLnZhbHVlPXQsbi5kb25lPSEwLG59O3JldHVybiBvLm5leHQ9b319dGhyb3cgbmV3IFR5cGVFcnJvcih2KGUpKyIgaXMgbm90IGl0ZXJhYmxlIil9cmV0dXJuIHkucHJvdG90eXBlPWIscihQLCJjb25zdHJ1Y3RvciIse3ZhbHVlOmIsY29uZmlndXJhYmxlOiEwfSkscihiLCJjb25zdHJ1Y3RvciIse3ZhbHVlOnksY29uZmlndXJhYmxlOiEwfSkseS5kaXNwbGF5TmFtZT11KGIsYywiR2VuZXJhdG9yRnVuY3Rpb24iKSxlLmlzR2VuZXJhdG9yRnVuY3Rpb249ZnVuY3Rpb24odCl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQuY29uc3RydWN0b3I7cmV0dXJuISFlJiYoZT09PXl8fCJHZW5lcmF0b3JGdW5jdGlvbiI9PT0oZS5kaXNwbGF5TmFtZXx8ZS5uYW1lKSl9LGUubWFyaz1mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZih0LGIpOih0Ll9fcHJvdG9fXz1iLHUodCxjLCJHZW5lcmF0b3JGdW5jdGlvbiIpKSx0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKFApLHR9LGUuYXdyYXA9ZnVuY3Rpb24odCl7cmV0dXJue19fYXdhaXQ6dH19LEUoTy5wcm90b3R5cGUpLHUoTy5wcm90b3R5cGUscywoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLkFzeW5jSXRlcmF0b3I9TyxlLmFzeW5jPWZ1bmN0aW9uKHQsbixpLHIsbyl7dm9pZCAwPT09byYmKG89UHJvbWlzZSk7dmFyIGE9bmV3IE8obCh0LG4saSxyKSxvKTtyZXR1cm4gZS5pc0dlbmVyYXRvckZ1bmN0aW9uKG4pP2E6YS5uZXh0KCkudGhlbigoZnVuY3Rpb24odCl7cmV0dXJuIHQuZG9uZT90LnZhbHVlOmEubmV4dCgpfSkpfSxFKFApLHUoUCxjLCJHZW5lcmF0b3IiKSx1KFAsYSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSx1KFAsInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4iW29iamVjdCBHZW5lcmF0b3JdIn0pKSxlLmtleXM9ZnVuY3Rpb24odCl7dmFyIGU9T2JqZWN0KHQpLG49W107Zm9yKHZhciBpIGluIGUpbi5wdXNoKGkpO3JldHVybiBuLnJldmVyc2UoKSxmdW5jdGlvbiB0KCl7Zm9yKDtuLmxlbmd0aDspe3ZhciBpPW4ucG9wKCk7aWYoaSBpbiBlKXJldHVybiB0LnZhbHVlPWksdC5kb25lPSExLHR9cmV0dXJuIHQuZG9uZT0hMCx0fX0sZS52YWx1ZXM9XyxMLnByb3RvdHlwZT17Y29uc3RydWN0b3I6TCxyZXNldDpmdW5jdGlvbihlKXtpZih0aGlzLnByZXY9MCx0aGlzLm5leHQ9MCx0aGlzLnNlbnQ9dGhpcy5fc2VudD10LHRoaXMuZG9uZT0hMSx0aGlzLmRlbGVnYXRlPW51bGwsdGhpcy5tZXRob2Q9Im5leHQiLHRoaXMuYXJnPXQsdGhpcy50cnlFbnRyaWVzLmZvckVhY2goQSksIWUpZm9yKHZhciBuIGluIHRoaXMpInQiPT09bi5jaGFyQXQoMCkmJmkuY2FsbCh0aGlzLG4pJiYhaXNOYU4oK24uc2xpY2UoMSkpJiYodGhpc1tuXT10KX0sc3RvcDpmdW5jdGlvbigpe3RoaXMuZG9uZT0hMDt2YXIgdD10aGlzLnRyeUVudHJpZXNbMF0uY29tcGxldGlvbjtpZigidGhyb3ciPT09dC50eXBlKXRocm93IHQuYXJnO3JldHVybiB0aGlzLnJ2YWx9LGRpc3BhdGNoRXhjZXB0aW9uOmZ1bmN0aW9uKGUpe2lmKHRoaXMuZG9uZSl0aHJvdyBlO3ZhciBuPXRoaXM7ZnVuY3Rpb24gcihpLHIpe3JldHVybiBzLnR5cGU9InRocm93IixzLmFyZz1lLG4ubmV4dD1pLHImJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksISFyfWZvcih2YXIgbz10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7bz49MDstLW8pe3ZhciBhPXRoaXMudHJ5RW50cmllc1tvXSxzPWEuY29tcGxldGlvbjtpZigicm9vdCI9PT1hLnRyeUxvYylyZXR1cm4gcigiZW5kIik7aWYoYS50cnlMb2M8PXRoaXMucHJldil7dmFyIGM9aS5jYWxsKGEsImNhdGNoTG9jIiksdT1pLmNhbGwoYSwiZmluYWxseUxvYyIpO2lmKGMmJnUpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX1lbHNlIGlmKGMpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApfWVsc2V7aWYoIXUpdGhyb3cgRXJyb3IoInRyeSBzdGF0ZW1lbnQgd2l0aG91dCBjYXRjaCBvciBmaW5hbGx5Iik7aWYodGhpcy5wcmV2PGEuZmluYWxseUxvYylyZXR1cm4gcihhLmZpbmFsbHlMb2MpfX19fSxhYnJ1cHQ6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO24+PTA7LS1uKXt2YXIgcj10aGlzLnRyeUVudHJpZXNbbl07aWYoci50cnlMb2M8PXRoaXMucHJldiYmaS5jYWxsKHIsImZpbmFsbHlMb2MiKSYmdGhpcy5wcmV2PHIuZmluYWxseUxvYyl7dmFyIG89cjticmVha319byYmKCJicmVhayI9PT10fHwiY29udGludWUiPT09dCkmJm8udHJ5TG9jPD1lJiZlPD1vLmZpbmFsbHlMb2MmJihvPW51bGwpO3ZhciBhPW8/by5jb21wbGV0aW9uOnt9O3JldHVybiBhLnR5cGU9dCxhLmFyZz1lLG8/KHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLm5leHQ9by5maW5hbGx5TG9jLGcpOnRoaXMuY29tcGxldGUoYSl9LGNvbXBsZXRlOmZ1bmN0aW9uKHQsZSl7aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4iYnJlYWsiPT09dC50eXBlfHwiY29udGludWUiPT09dC50eXBlP3RoaXMubmV4dD10LmFyZzoicmV0dXJuIj09PXQudHlwZT8odGhpcy5ydmFsPXRoaXMuYXJnPXQuYXJnLHRoaXMubWV0aG9kPSJyZXR1cm4iLHRoaXMubmV4dD0iZW5kIik6Im5vcm1hbCI9PT10LnR5cGUmJmUmJih0aGlzLm5leHQ9ZSksZ30sZmluaXNoOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciBuPXRoaXMudHJ5RW50cmllc1tlXTtpZihuLmZpbmFsbHlMb2M9PT10KXJldHVybiB0aGlzLmNvbXBsZXRlKG4uY29tcGxldGlvbixuLmFmdGVyTG9jKSxBKG4pLGd9fSxjYXRjaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi50cnlMb2M9PT10KXt2YXIgaT1uLmNvbXBsZXRpb247aWYoInRocm93Ij09PWkudHlwZSl7dmFyIHI9aS5hcmc7QShuKX1yZXR1cm4gcn19dGhyb3cgRXJyb3IoImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdCIpfSxkZWxlZ2F0ZVlpZWxkOmZ1bmN0aW9uKGUsbixpKXtyZXR1cm4gdGhpcy5kZWxlZ2F0ZT17aXRlcmF0b3I6XyhlKSxyZXN1bHROYW1lOm4sbmV4dExvYzppfSwibmV4dCI9PT10aGlzLm1ldGhvZCYmKHRoaXMuYXJnPXQpLGd9fSxlfWZ1bmN0aW9uIG0odCxlLG4saSxyLG8sYSl7dHJ5e3ZhciBzPXRbb10oYSksYz1zLnZhbHVlfWNhdGNoKHQpe3JldHVybiB2b2lkIG4odCl9cy5kb25lP2UoYyk6UHJvbWlzZS5yZXNvbHZlKGMpLnRoZW4oaSxyKX1mdW5jdGlvbiBnKHQpe3JldHVybiBmdW5jdGlvbigpe3ZhciBlPXRoaXMsbj1hcmd1bWVudHM7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihpLHIpe3ZhciBvPXQuYXBwbHkoZSxuKTtmdW5jdGlvbiBhKHQpe20obyxpLHIsYSxzLCJuZXh0Iix0KX1mdW5jdGlvbiBzKHQpe20obyxpLHIsYSxzLCJ0aHJvdyIsdCl9YSh2b2lkIDApfSkpfX1mdW5jdGlvbiB2KHQpe3JldHVybih2PSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gdyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQseShpLmtleSksaSl9fWZ1bmN0aW9uIHkodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9dih0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXYoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dihlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJncodC5wcm90b3R5cGUsZSksbiYmdyh0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7KGZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KSh0aGlzLHQpLHRoaXMuc2Vzc2lvbkluZm9ybWF0aW9uPW51bGx9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93O3QucHJvdG90eXBlLiRUYXdrU2Vzc2lvbk1hbmFnZXI9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJnZXRTZXNzaW9uSW5mb3JtYXRpb24iLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZT10aGlzLnN0b3JlLmdldHRlcnNbInByb3BlcnR5L2lkIl07cmV0dXJuIHRoaXMuc2Vzc2lvbkluZm9ybWF0aW9uJiYodD10aGlzLnNlc3Npb25JbmZvcm1hdGlvbiksZi5hLmxvY2FsU3RvcmUmJih0PWYuYS5sb2NhbFN0b3JlKCkuZ2V0SXRlbSgidHdrXyIrZSkpLHR8fCh0PWYuYS5jb29raWVTdG9yZSgpLmdldEl0ZW0oIlRhd2tfIitlKVswXSksdGhpcy5wYXJzZVNlc3Npb25JbmZvcm1hdGlvbih0KX19LHtrZXk6InN0b3JlU2Vzc2lvbkluZm9ybWF0aW9uIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10aGlzLnN0b3JlLmdldHRlcnNbInNlc3Npb24vdmlzaXRvclNvY2tldFNlcnZlciJdLG49ZXx8IiIsaT10aGlzLnN0b3JlLmdldHRlcnNbInNlc3Npb24vbmVlZENvbnNlbnQiXSxyPXRoaXMuc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2NvbnNlbnREYXRhIl07KGV8fHQpJiYoKHR8fCFpJiZyKSYmKG4rPSI6OmNmIiksZi5hLmxvY2FsU3RvcmUoKS5zZXRJdGVtKCJ0d2tfIit0aGlzLnN0b3JlLmdldHRlcnNbInByb3BlcnR5L2lkIl0sbil8fGYuYS5jb29raWVTdG9yZSgpLnNldEl0ZW0oIlRhd2tfIit0aGlzLnN0b3JlLmdldHRlcnNbInByb3BlcnR5L2lkIl0sbiwhMSksdGhpcy5zZXNzaW9uSW5mb3JtYXRpb249bil9fSx7a2V5OiJwYXJzZVNlc3Npb25JbmZvcm1hdGlvbiIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9W107cmV0dXJuIHQmJihlPXQuc3BsaXQoIjo6IikpLmxlbmd0aDw9MSYmKGU9dC5zcGxpdCgifHwiKSksZX19LHtrZXk6ImdldFVVSUQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGUsbil7dmFyIGkscixvPXQuc3RvcmUuZ2V0dGVyc1sicHJvcGVydHkvaWQiXSxhPSJ0d2tfdXVpZF8iLmNvbmNhdChvKTtpZih0LnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1BvcG91dCJdKXQuZ2V0UG9wb3V0VVVJRChhKS50aGVuKChmdW5jdGlvbih0KXtlKHQpfSkpLmNhdGNoKChmdW5jdGlvbigpe24oKX0pKTtlbHNle2lmKCh0LnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1dpbmRvd2VkIl18fHQuc3RvcmUuZ2V0dGVyc1sicHJvcGVydHkvaXNUYXdrSG9zdGVkUGFnZSJdKSYmKHI9Zi5hLmxvY2FsU3RvcmUoKS5nZXRJdGVtKGEpKSYmci5sZW5ndGgpdHJ5e2lmKChyPUpTT04ucGFyc2UocikpJiYib2JqZWN0Ij09PXYocikpcmV0dXJuIGUocil9Y2F0Y2godCl7Y29uc29sZS5lcnJvcih0KX1pZighciYmKHI9Zi5hLmNvb2tpZVN0b3JlKCkuZ2V0SXRlbShhKSkmJnIubGVuZ3RoKXRyeXtpPUpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KHJbMF0pKX1jYXRjaCh0KXtjb25zb2xlLmVycm9yKHQpfWl8fChpPXQuZ2V0RGVwcmVjYXRlZFVVSUQoKSksZShpKX19KSl9fSx7a2V5OiJnZXRQb3BvdXRVVUlEIix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGUsbil7dmFyIGkscixvPWYuYS5zZXNzaW9uU3RvcmUoKS5nZXRJdGVtKHQpO2lmKG8mJm8ubGVuZ3RoKXRyeXtyPUpTT04ucGFyc2UobyksZShyKX1jYXRjaCh0KXtjb25zb2xlLmVycm9yKHQpLG4oKX1lbHNlIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwoZnVuY3Rpb24gdChuKXtpZihuLmRhdGEmJm4uc291cmNlPT09d2luZG93Lm9wZW5lcil7aWYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLHQsITEpLGNsZWFyVGltZW91dChpKSxuLmRhdGEudHdrV2lkZ2V0VVVJRClyZXR1cm4gZSh7dXVpZDpuLmRhdGEudHdrV2lkZ2V0VVVJRCx2ZXJzaW9uOjN9KTtlKHt9KX19KSwhMSksaT1zZXRUaW1lb3V0KChmdW5jdGlvbigpe24oKX0pLDFlNCksd2luZG93Lm9wZW5lci5wb3N0TWVzc2FnZSgiZ2V0VHdrV2lkZ2V0VVVJRCIsIioiKX0pKX19LHtrZXk6ImdldERlcHJlY2F0ZWRVVUlEIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGUsbj0hMSxpPTEvMCxyPXUudG9BU0NJSSh3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpOyJ3d3cuIj09PXIuc3Vic3RyaW5nKDAsNCkmJihyPXIucmVwbGFjZSgid3d3LiIsIiIpKTt2YXIgbz1mLmEuY29va2llU3RvcmUoKS5nZXRJdGVtKCJfX3Rhd2t1dWlkIik7aWYobyYmby5sZW5ndGg+MClmb3IodmFyIGE9MDthPG8ubGVuZ3RoO2ErKyl7dmFyIHM9dGhpcy5wYXJzZVNlc3Npb25JbmZvcm1hdGlvbihvW2FdKTtpZig0PT09cy5sZW5ndGgpe3ZhciBjPXNbMF0sbD1zWzFdLGQ9c1syXSxoPXNbM107aWYoImUiPT09Yyl7aWYocj09PWwpe3Q9ZCxlPWg7YnJlYWt9fWVsc2UgaWYoInAiPT09Yyl7dmFyIHA9ci5tYXRjaChsKTtwJiZyLnN1YnN0cihwLmluZGV4KT09PWwmJnAuaW5kZXg8aSYmKGk9cC5pbmRleCx0PWQsZT1oLG49ITApfX19cmV0dXJuIHQ/e3V1aWQ6dCx2ZXJzaW9uOmUsaXNQYXJ0aWFsOm59Ont9fX0se2tleToiZ2V0SWRlbXBvdGVuY3lLZXkiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9ZyhwKCkubWFyaygoZnVuY3Rpb24gdCgpe3ZhciBlLG49dGhpcztyZXR1cm4gcCgpLndyYXAoKGZ1bmN0aW9uKHQpe2Zvcig7Oylzd2l0Y2godC5wcmV2PXQubmV4dCl7Y2FzZSAwOnJldHVybiB0LnByZXY9MCx0Lm5leHQ9MyxuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgiaWRlbXBvdGVuY3lfa2V5IixnKHAoKS5tYXJrKChmdW5jdGlvbiB0KCl7cmV0dXJuIHAoKS53cmFwKChmdW5jdGlvbih0KXtmb3IoOzspc3dpdGNoKHQucHJldj10Lm5leHQpe2Nhc2UgMDplPW4uZ2VuZXJhdGVJZGVtcG90ZW5jeUtleSgpO2Nhc2UgMTpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQpfSkpKSk7Y2FzZSAzOnJldHVybiB0LmFicnVwdCgicmV0dXJuIixlKTtjYXNlIDY6cmV0dXJuIHQucHJldj02LHQudDA9dC5jYXRjaCgwKSx0LmFicnVwdCgicmV0dXJuIixuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCl7dmFyIGk9MSpNYXRoLnJhbmRvbSgpKy41O3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZT1uLmdlbmVyYXRlSWRlbXBvdGVuY3lLZXkoKSx0KGUpfSksMWUzKk1hdGgucm91bmQoaSkpfSkpKTtjYXNlIDk6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0LG51bGwsW1swLDZdXSl9KSkpO3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6ImdlbmVyYXRlSWRlbXBvdGVuY3lLZXkiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9Zi5hLmNvb2tpZVN0b3JlKCkuZ2V0SXRlbSgidHdrX2lkbV9rZXkiKTtyZXR1cm4gdCYmdC5sZW5ndGg/dD10WzBdOih0PU9iamVjdChsLmEpKCksZi5hLmNvb2tpZVN0b3JlKCkuc2V0SXRlbSgidHdrX2lkbV9rZXkiLHQsITApLGYuYS5jb29raWVTdG9yZSgpLmNoZWNrSXRlbVNhdmVkKCJ0d2tfaWRtX2tleSIpKSx0fX0se2tleToic3RvcmVVVUlEIix2YWx1ZTpmdW5jdGlvbih0LGUsbil7dmFyIGk9dGhpcy5zdG9yZS5nZXR0ZXJzWyJwcm9wZXJ0eS9pZCJdLHI9InR3a191dWlkXyIuY29uY2F0KGkpLG89KG5ldyBEYXRlKS5nZXRUaW1lKCksYT1KU09OLnN0cmluZ2lmeSh7dXVpZDp0LHZlcnNpb246ZSxkb21haW46bix0czpvfSk7aWYodGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNQb3BvdXQiXSlmLmEuc2Vzc2lvblN0b3JlKCkuc2V0SXRlbShyLGEpO2Vsc2UgaWYodGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNXaW5kb3dlZCJdfHx0aGlzLnN0b3JlLmdldHRlcnNbInByb3BlcnR5L2lzVGF3a0hvc3RlZFBhZ2UiXSlmLmEubG9jYWxTdG9yZSgpLnNldEl0ZW0ocixhKTtlbHNle2YuYS5jb29raWVTdG9yZSgpLnNldEl0ZW0ocixlbmNvZGVVUklDb21wb25lbnQoYSksITEsbnx8dm9pZCAwKTt0cnl7Zi5hLmNvb2tpZVN0b3JlKCkuY2hlY2tJdGVtU2F2ZWQocil9Y2F0Y2godCl7Y29uc29sZS5lcnJvcih0KX19fX0se2tleToiZ2V0U3RvcmVkVG9rZW4iLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQsZT10aGlzLnN0b3JlLmdldHRlcnNbInByb3BlcnR5L2lkIl07cmV0dXJuKHQ9dGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNQb3BvdXQiXT9mLmEuc2Vzc2lvblN0b3JlKCkuZ2V0SXRlbSgidHdrX3Rva2VuXyIuY29uY2F0KGUpKTpmLmEubG9jYWxTdG9yZSgpLmdldEl0ZW0oInR3a190b2tlbl8iLmNvbmNhdChlKSkpfHwoZi5hLmxvY2FsU3RvcmUoKS5nZXRJdGVtKCJ0d2tfdG9rZW4iKSxmLmEubG9jYWxTdG9yZSgpLmRlbGV0ZUl0ZW0oInR3a190b2tlbiIpKSx0fX0se2tleToic3RvcmVUb2tlbiIsdmFsdWU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5zdG9yZS5nZXR0ZXJzWyJwcm9wZXJ0eS9pZCJdLG49InR3a190b2tlbl8iLmNvbmNhdChlKTt0aGlzLnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1BvcG91dCJdP2YuYS5zZXNzaW9uU3RvcmUoKS5zZXRJdGVtKG4sdCk6Zi5hLmxvY2FsU3RvcmUoKS5zZXRJdGVtKG4sdCl9fSx7a2V5OiJyZWNvbm5lY3RTZXNzaW9uIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWcocCgpLm1hcmsoKGZ1bmN0aW9uIHQoZSl7cmV0dXJuIHAoKS53cmFwKChmdW5jdGlvbih0KXtmb3IoOzspc3dpdGNoKHQucHJldj10Lm5leHQpe2Nhc2UgMDpyZXR1cm4gZT1lfHxmdW5jdGlvbigpe30sdC5uZXh0PTMsdGhpcy5UYXdrV2luZG93LmNyaXRpY2FsUmVmcmVzaCgpO2Nhc2UgMzplKCk7Y2FzZSA0OmNhc2UiZW5kIjpyZXR1cm4gdC5zdG9wKCl9fSksdCx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6ImxvZ2luIix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWcocCgpLm1hcmsoKGZ1bmN0aW9uIHQoZSxuKXt2YXIgaSxyLG8sYT10aGlzO3JldHVybiBwKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIHQucHJldj0wLHQubmV4dD0zLHRoaXMuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vY2hlY2tUb2tlblZhbGlkaXR5Iik7Y2FzZSAzOnQubmV4dD05O2JyZWFrO2Nhc2UgNTpyZXR1cm4gdC5wcmV2PTUsdC50MD10LmNhdGNoKDApLGNvbnNvbGUuZXJyb3IoIltKU0FQSS9Mb2dpbl0iLHQudDApLHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDk6aT0iIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIsIi92MS9jbGllbnQvbG9naW4iKSwocj10aGlzLmdldFN0b3JlZFRva2VuKCkpJiYobz17IlgtVGF3ay1Ub2tlbiI6cn0pLGQuYS5wb3N0KGksZSxvLChmdW5jdGlvbih0LGUpe3JldHVybiB0fHwhdCYmIWU/bighMCk6ZS5lcnJvcj9uKGUuZXJyb3IpOnZvaWQgYS5yZWNvbm5lY3RTZXNzaW9uKChmdW5jdGlvbigpe24oKSxoLmEuJGVtaXQoImZvcmNlVXBkYXRlIil9KSl9KSwhMCwhMCk7Y2FzZSAxMzpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQsdGhpcyxbWzAsNV1dKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToibG9nb3V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PWcocCgpLm1hcmsoKGZ1bmN0aW9uIHQoZSl7dmFyIG4saSxyLG89dGhpcztyZXR1cm4gcCgpLndyYXAoKGZ1bmN0aW9uKHQpe2Zvcig7Oylzd2l0Y2godC5wcmV2PXQubmV4dCl7Y2FzZSAwOnJldHVybiB0LnByZXY9MCx0Lm5leHQ9Myx0aGlzLnN0b3JlLmRpc3BhdGNoKCJzZXNzaW9uL2NoZWNrVG9rZW5WYWxpZGl0eSIpO2Nhc2UgMzp0Lm5leHQ9OTticmVhaztjYXNlIDU6cmV0dXJuIHQucHJldj01LHQudDA9dC5jYXRjaCgwKSxjb25zb2xlLmVycm9yKCJbSlNBUEkvTG9nb3V0XSIsdC50MCksdC5hYnJ1cHQoInJldHVybiIpO2Nhc2UgOTpuPSIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL3YxL2NsaWVudC9sb2dvdXQiKSwoaT10aGlzLmdldFN0b3JlZFRva2VuKCkpJiYocj17IlgtVGF3ay1Ub2tlbiI6aX0pLGQuYS5wb3N0KG4se30sciwoZnVuY3Rpb24odCxuKXtyZXR1cm4gdHx8IXQmJiFuP2UoITApOm4uZXJyb3I/ZShuLmVycm9yKTp2b2lkIG8ucmVjb25uZWN0U2Vzc2lvbigoZnVuY3Rpb24oKXtlKCksaC5hLiRlbWl0KCJmb3JjZVVwZGF0ZSIpfSkpfSksITAsITApO2Nhc2UgMTM6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0LHRoaXMsW1swLDVdXSl9KSkpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfV0pKX0sIjk5ZTEiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKHQpe3ZhciBpPW4oIjY1YjMiKTtmdW5jdGlvbiByKHQpe3JldHVybihyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsYShpLmtleSksaSl9fWZ1bmN0aW9uIGEodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9cih0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXIoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09cihlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJm8odC5wcm90b3R5cGUsZSksbiYmbyh0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiB0KCl7dmFyIGU9dGhpczsoZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0pKHRoaXMsdCksdGhpcy5mb2N1c1JlY29ubmVjdENhbGxlZD0hMSx0aGlzLmhhc0ZvY3VzPSExLHRoaXMuYWN0aXZlPSExLHRoaXMuYXdheT0hMSx0aGlzLmluYWN0aXZpdHlUaW1lb3V0PW51bGwsdGhpcy5hd2F5VGltZW91dD1udWxsLHRoaXMuaW50ZXJ2YWw9bnVsbCx0aGlzLm9uQWN0aXZpdHlIYW5kbGVyPWZ1bmN0aW9uKCl7ZS5UYXdrV2luZG93JiYoZS5hd2F5JiZ3aW5kb3cuJF9UYXdrLmNvbm5lY3RlZCYmaS5hLnB1Ymxpc2goIm5vdGlmeVNvY2tldFN0YXR1c1VwZGF0ZSIsIm9ubGluZSIpLGUuYWN0aXZlPSEwLGUuYXdheT0hMSl9LHRoaXMucG9wdXBPbkZvY3VzSGFuZGxlcj1mdW5jdGlvbigpe2UuVGF3a1dpbmRvdyYmKCF3aW5kb3cuJF9UYXdrLmNvbm5lY3RlZCYmaS5hLmlzRm9yY2VkRGlzY29ubmVjdCgpPyhlLnN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRJc0luYWN0aXZlIiwhMSksZS5UYXdrV2luZG93LmNyaXRpY2FsUmVmcmVzaCgpKTooZS5oYXNGb2N1c3x8KGUuYWN0aXZlPSEwLGUuaGFzRm9jdXM9ITAsd2luZG93LiRfVGF3ay5jb25uZWN0ZWQmJmkuYS5wdWJsaXNoKCJwb3B1cE9uRm9jdXMiLCEwKSksZS5hd2F5JiZ3aW5kb3cuJF9UYXdrLmNvbm5lY3RlZCYmaS5hLnB1Ymxpc2goIm5vdGlmeVNvY2tldFN0YXR1c1VwZGF0ZSIsIm9ubGluZSIpLGUuYXdheT0hMSkpfSx0aGlzLnBvcHVwT25CbHVySGFuZGxlcj1mdW5jdGlvbigpe2UuVGF3a1dpbmRvdyYmKGUuaGFzRm9jdXM9ITEsd2luZG93LiRfVGF3ay5jb25uZWN0ZWQmJmkuYS5wdWJsaXNoKCJwb3B1cE9uRm9jdXMiLCExKSl9LHRoaXMucmVjb25uZWN0T25BY3Rpdml0eT1mdW5jdGlvbigpe2UuVGF3a1dpbmRvdyYmIWUuZm9jdXNSZWNvbm5lY3RDYWxsZWQmJihlLmZvY3VzUmVjb25uZWN0Q2FsbGVkPSEwLGUuc3RvcmUuY29tbWl0KCJzZXNzaW9uL3NldElzSW5hY3RpdmUiLCExKSxlLlRhd2tXaW5kb3cuY3JpdGljYWxSZWZyZXNoKCkpfSx0aGlzLmluaXRBY3Rpdml0eVJlc2V0PWZ1bmN0aW9uKCl7ZS5jbGVhblVwKCksZS5yZXNldFRpbWVvdXQoKSxlLnNldHVwTGlzdGVuZXJzKCksZS5zZXR1cE1heFdpZGdldExpc3RlbmVycygpLGUuaW50ZXJ2YWw9c2V0SW50ZXJ2YWwoKGZ1bmN0aW9uKCl7ZS5hY3RpdmUmJihlLnJlc2V0VGltZW91dCgpLGUuYWN0aXZlPSExKX0pLDFlNCl9fSksW3trZXk6Imluc3RhbGwiLHZhbHVlOmZ1bmN0aW9uKHQsZSl7dmFyIG49ZS5zdG9yZSxpPWUuVGF3a1dpbmRvdzt0LnByb3RvdHlwZS4kVGF3a0FjdGl2aXR5TW9uaXRvcj10aGlzLHRoaXMuc3RvcmU9bix0aGlzLlRhd2tXaW5kb3c9aX19LHtrZXk6InJlc2V0VGltZW91dCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2NsZWFyVGltZW91dCh0aGlzLmluYWN0aXZpdHlUaW1lb3V0KSxjbGVhclRpbWVvdXQodGhpcy5hd2F5VGltZW91dCksdGhpcy5UYXdrV2luZG93JiYhaS5hLmlzRm9yY2VkRGlzY29ubmVjdCgpJiYodGhpcy5hd2F5VGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpeyF0LmF3YXkmJnQuVGF3a1dpbmRvdyYmKHQuYXdheT0hMCxpLmEmJndpbmRvdy4kX1Rhd2suY29ubmVjdGVkJiZpLmEucHVibGlzaCgibm90aWZ5U29ja2V0U3RhdHVzVXBkYXRlIiwiYXdheSIpKX0pLDZlNSksdGhpcy5pbmFjdGl2aXR5VGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuaW5hY3Rpdml0eVRpbWVvdXRIYW5kbGVyKCl9KSwxMmU1KSl9fSx7a2V5OiJpbmFjdGl2aXR5VGltZW91dEhhbmRsZXIiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5UYXdrV2luZG93JiYodGhpcy5zdG9yZS5kaXNwYXRjaCgiY2hhdC9jbGVhclVuc2Vlbk1lc3NhZ2VzIiksaS5hLmRpc2Nvbm5lY3RTb2NrZXQoKSx0aGlzLnN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRDaGF0V2luZG93U3RhdGUiLCJtaW4iKSx0aGlzLnN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRJc0luYWN0aXZlIiwhMCksdGhpcy5zZXR1cE1heFdpZGdldExpc3RlbmVyc1JlY29ubmVjdCgpLHRoaXMuc3RvcmUuZ2V0dGVyc1siYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiXT8oZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSkpOihkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMucmVjb25uZWN0T25BY3Rpdml0eSx7b25jZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSxkb2N1bWVudC5vbmZvY3VzaW4/ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSk6d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSkpfX0se2tleToiY2xlYW5VcCIsdmFsdWU6ZnVuY3Rpb24oKXtjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpLGNsZWFyVGltZW91dCh0aGlzLmluYWN0aXZpdHlUaW1lb3V0KSxjbGVhclRpbWVvdXQodGhpcy5hd2F5VGltZW91dCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMucmVjb25uZWN0T25BY3Rpdml0eSx7b25jZTohMH0pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHRoaXMucmVjb25uZWN0T25BY3Rpdml0eSx7b25jZTohMH0pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1c2luIix0aGlzLnBvcHVwT25Gb2N1c0hhbmRsZXIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0Iix0aGlzLnBvcHVwT25CbHVySGFuZGxlciksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIix0aGlzLnBvcHVwT25Gb2N1c0hhbmRsZXIpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIix0aGlzLnBvcHVwT25CbHVySGFuZGxlciksdCYmdGhpcy5UYXdrV2luZG93JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbCYmdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50JiYodGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMucmVjb25uZWN0T25BY3Rpdml0eSx7b25jZTohMH0pLHRoaXMuVGF3a1dpbmRvdy5tYXhXaWRnZXQuJGVsLmNvbnRlbnREb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLHRoaXMucmVjb25uZWN0T25BY3Rpdml0eSx7b25jZTohMH0pKSx0aGlzLmhhc0ZvY3VzPSExLHRoaXMuYWN0aXZlPSExLHRoaXMuYXdheT0hMSx0aGlzLmluYWN0aXZpdHlUaW1lb3V0PW51bGwsdGhpcy5hd2F5VGltZW91dD1udWxsLHRoaXMuaW50ZXJ2YWw9bnVsbCx0aGlzLmZvY3VzUmVjb25uZWN0Q2FsbGVkPSExfX0se2tleToic2V0dXBMaXN0ZW5lcnMiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5zdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSJdPyhkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHRoaXMub25BY3Rpdml0eUhhbmRsZXIpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSk6dGhpcy5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNXaW5kb3dlZCJdPyhkb2N1bWVudC5vbmZvY3VzaW4/KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLHRoaXMucG9wdXBPbkZvY3VzSGFuZGxlciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLHRoaXMucG9wdXBPbkJsdXJIYW5kbGVyKSk6KHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdGhpcy5wb3B1cE9uRm9jdXNIYW5kbGVyKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5wb3B1cE9uQmx1ckhhbmRsZXIpKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5wb3B1cE9uRm9jdXNIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLnBvcHVwT25Gb2N1c0hhbmRsZXIpKTooZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlcikpfX0se2tleToic2V0dXBNYXhXaWRnZXRMaXN0ZW5lcnMiLHZhbHVlOmZ1bmN0aW9uKCl7dCYmdGhpcy5UYXdrV2luZG93JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbCYmdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50JiYodGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5zdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSJdJiYodGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsdGhpcy5vbkFjdGl2aXR5SGFuZGxlciksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLm9uQWN0aXZpdHlIYW5kbGVyKSkpfX0se2tleToic2V0dXBNYXhXaWRnZXRMaXN0ZW5lcnNSZWNvbm5lY3QiLHZhbHVlOmZ1bmN0aW9uKCl7dCYmdGhpcy5UYXdrV2luZG93JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0JiZ0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbCYmdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50JiYodGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSx0aGlzLlRhd2tXaW5kb3cubWF4V2lkZ2V0LiRlbC5jb250ZW50RG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSksdGhpcy5zdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSJdJiYodGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsdGhpcy5yZWNvbm5lY3RPbkFjdGl2aXR5LHtvbmNlOiEwfSksdGhpcy5UYXdrV2luZG93Lm1heFdpZGdldC4kZWwuY29udGVudERvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLnJlY29ubmVjdE9uQWN0aXZpdHkse29uY2U6ITB9KSkpfX1dKSl9KS5jYWxsKHRoaXMsbigiYzhiYSIpKX0sIjlhMDUiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7aWQ6bnVsbCxwYWdlTmFtZToiIixpc1Rhd2tIb3N0ZWRQYWdlOiExfSxnZXR0ZXJzOntpZDpmdW5jdGlvbih0KXtyZXR1cm4gdC5pZH0saXNUYXdrSG9zdGVkUGFnZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5pc1Rhd2tIb3N0ZWRQYWdlfX0sYWN0aW9uczp7dXBkYXRlSWQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldElkIixlKX0sdXBkYXRlSXNUYXdrSG9zdGVkUGFnZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0SXNUYXdrSG9zdGVkUGFnZSIsZSl9LHJlc2V0U3RhdGU6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJ1bnNldERhdGEiKX19LG11dGF0aW9uczp7c2V0SWQ6ZnVuY3Rpb24odCxlKXt0LmlkPWV9LHNldElzVGF3a0hvc3RlZFBhZ2U6ZnVuY3Rpb24odCxlKXt0LmlzVGF3a0hvc3RlZFBhZ2U9ZX0sdW5zZXREYXRhOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT17aWQ6bnVsbCxwYWdlTmFtZToiIixpc1Rhd2tIb3N0ZWRQYWdlOiExfSxuPU9iamVjdC5rZXlzKGUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXTt0W3JdPWVbcl19fX19fSwiOWI0ZiI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuLnIoZSksZnVuY3Rpb24odCl7dmFyIGk9bigiN2Y0NiIpLHI9bigiYjdjYyIpLG89bigiMGFkMiIpLGE9bigiMjdjNiIpLHM9bigiMDI4ZSIpLGM9bigiNjViMyIpLHU9bigiYzdiOCIpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7YWdlbnRzOnt9LGFnZW50c0NvdW50OjAsYWN0aXZlUHJvZmlsZXM6W10sY2hhdDp7YnVmZmVyOltdLGRlcGFydG1lbnQ6ImFueSIsZW5kVmVyc2lvbjoxLGhpc3Rvcnk6W10saWQ6bnVsbCxvcmRlcjowLHZlcnNpb246MCx1bnJlYWRNZXNzYWdlOjAsc3luY2VkOiExLG1lc3NhZ2VzOnt9LHVuc2Vlbk1lc3NhZ2VzOltdLGhpc3RvcnlQcm9jZXNzZWQ6ITEsZW5kZWRDaGF0czpbXSxsYXN0TWVzc2FnZTp7fX0sYWxsUHJvZmlsZXM6e30scmF0aW5nOm51bGwsaW5jb21pbmdNZXNzYWdlOm51bGwsY2FsbHM6e30sY2hhdFRyYW5zZmVyOntkYXRhOm51bGwsdmVyc2lvbjpudWxsfSxvbmdvaW5nQ2FsbDohMSxpbmNvbWluZ0NhbGw6bnVsbCxoYXNDaGF0U3RhcnRlZDohMSxtZXNzYWdlQmxvY2tzOltdLHZpc2l0b3JIYXNNZXNzYWdlZDohMSxhZ2VudEhhc01lc3NhZ2VkOiExLGhhc0NoYXRFbmRlZDohMSx1cGxvYWRGaWxlczpbXSxsYXN0U2Nyb2xsUG9zaXRvbjpudWxsLG91dGdvaW5nTWVzc2FnZTpudWxsLGZpcnN0SW5jb21pbmc6ITEsZm9ybTp7cmVmczp7fSx0aWNrZXQ6e2lkOm51bGwsaGFzU3VibWl0dGVkOiExfSxsZWFkOntpZDpudWxsLGhhc1N1Ym1pdHRlZDohMX19fSxnZXR0ZXJzOnthY3RpdmVQcm9maWxlczpmdW5jdGlvbih0KXtyZXR1cm4gdC5hY3RpdmVQcm9maWxlc30sYWdlbnRzOmZ1bmN0aW9uKHQpe3JldHVybiB0LmFnZW50c30sYWdlbnRzQ291bnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuYWdlbnRzQ291bnR9LGFnZW50UHJvZmlsZTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIG49dC5hZ2VudHNbZV07cmV0dXJuIG4mJm4ucHJvZmlsZUlkP3QuYWxsUHJvZmlsZXNbbi5wcm9maWxlSWRdOm51bGx9fSxhbGxQcm9maWxlczpmdW5jdGlvbih0KXtyZXR1cm4gdC5hbGxQcm9maWxlc30sY2hhdE9yZGVyOmZ1bmN0aW9uKHQpe3JldHVybiB0LmNoYXQub3JkZXJ9LGNoYXRWZXJzaW9uOmZ1bmN0aW9uKHQpe3JldHVybiB0LmNoYXQudmVyc2lvbn0saW5jb21pbmdNZXNzYWdlOmZ1bmN0aW9uKHQpe3JldHVybiB0LmluY29taW5nTWVzc2FnZX0scHJvZmlsZXM6ZnVuY3Rpb24odCl7cmV0dXJuIHQucHJvZmlsZXN9LHJhdGluZzpmdW5jdGlvbih0KXtyZXR1cm4gdC5yYXRpbmd9LGNoYXRNZXNzYWdlczpmdW5jdGlvbih0KXtyZXR1cm4gdC5jaGF0Lm1lc3NhZ2VzfSx1bnJlYWRNZXNzYWdlQ291bnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdC51bnJlYWRNZXNzYWdlfSxpbmNvbWluZ0NhbGw6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaW5jb21pbmdDYWxsfSxjYWxsRGF0YTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQuY2FsbHNbZV19fSxjaGF0VHJhbnNmZXJEYXRhOmZ1bmN0aW9uKHQpe3JldHVybiB0LmNoYXRUcmFuc2Zlci5kYXRhfSxjYWxsczpmdW5jdGlvbih0KXtyZXR1cm4gdC5jYWxsc30saGFzQ2hhdFN0YXJ0ZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaGFzQ2hhdFN0YXJ0ZWR9LHZpc2l0b3JIYXNNZXNzYWdlZDpmdW5jdGlvbih0KXtyZXR1cm4gdC52aXNpdG9ySGFzTWVzc2FnZWR9LGFnZW50SGFzTWVzc2FnZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuYWdlbnRIYXNNZXNzYWdlZH0sY2hhdEVuZFZlcnNpb246ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdC5lbmRWZXJzaW9ufSxoYXNDaGF0RW5kZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaGFzQ2hhdEVuZGVkfSx1cGxvYWRGaWxlczpmdW5jdGlvbih0KXtyZXR1cm4gdC51cGxvYWRGaWxlc30sbGFzdFNjcm9sbFBvc2l0b246ZnVuY3Rpb24odCl7cmV0dXJuIHQubGFzdFNjcm9sbFBvc2l0b259LG91dGdvaW5nTWVzc2FnZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5vdXRnb2luZ01lc3NhZ2V9LGhpc3RvcnlQcm9jZXNzZWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdC5oaXN0b3J5UHJvY2Vzc2VkfSxpc0NoYXRPbmdvaW5nOmZ1bmN0aW9uKHQpe3JldHVybiF0Lmhhc0NoYXRFbmRlZCYmdC52aXNpdG9ySGFzTWVzc2FnZWQmJnQuYWdlbnRzQ291bnQ+MH0saXNWaXNpdG9yRW5nYWdlZDpmdW5jdGlvbih0KXtyZXR1cm4hdC5oYXNDaGF0RW5kZWQmJnQudmlzaXRvckhhc01lc3NhZ2VkfSxtZXNzYWdlQmxvY2tzOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1lc3NhZ2VCbG9ja3N9LGVuZGVkQ2hhdHM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdC5lbmRlZENoYXRzfSxsYXN0TWVzc2FnZTpmdW5jdGlvbih0KXtyZXR1cm4gdC5jaGF0Lmxhc3RNZXNzYWdlfSxmaXJzdEluY29taW5nOmZ1bmN0aW9uKHQpe3JldHVybiB0LmZpcnN0SW5jb21pbmd9LG9uZ29pbmdDYWxsOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm9uZ29pbmdDYWxsfSxmb3JtUmVmczpmdW5jdGlvbih0KXtyZXR1cm4gdC5mb3JtLnJlZnN9LGZvcm1UaWNrZXQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQuZm9ybS50aWNrZXR9LGZvcm1MZWFkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmZvcm0ubGVhZH19LGFjdGlvbnM6e3VwZGF0ZUNvbnZlcnNhdGlvbjpmdW5jdGlvbih0LGUpe3ZhciBuPXQuZGlzcGF0Y2gsaT10LnN0YXRlLHI9dC5nZXR0ZXJzLGE9dC5jb21taXQsYz0oZT1lfHx7fSkuY3Zlcnx8MCx1PWUuY3x8W107aWYoaS5jaGF0LnN5bmNlZD0hMCwhKGkuY2hhdC52ZXJzaW9uPj1jKSl7Zm9yKHZhciBsPTAsZD1pLmNoYXQuYnVmZmVyLmxlbmd0aDtsPGQ7bCsrKWkuY2hhdC5idWZmZXJbbF0uY3Zlcj5jJiZ1LnB1c2goaS5jaGF0LmJ1ZmZlcltsXSk7Zm9yKHZhciBmPWZ1bmN0aW9uKCl7dmFyIHQ9dVtoXTtpZighdC5tZHx8IXQubWQuYW8pe3ZhciBpPXMuYS5wYXJzZUNoYXRNZXNzYWdlKHQsITApO2kmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7by5hLnBsYXlTb3VuZCgpLGEoInNldEluY29taW5nTWVzc2FnZSIsaSksYSgic2V0VmVyc2lvbiIsZS5jdmVyKSxuKCJ1cGRhdGVDaGF0TWVzc2FnZSIsaSl9KSw1MCl9fSxoPTAscD11Lmxlbmd0aDtoPHA7aCsrKWYoKTtpLnZpc2l0b3JIYXNNZXNzYWdlZCYmIWkuYWdlbnRIYXNNZXNzYWdlZCYmclsid2lkZ2V0L3Nob3dFc3RpbWF0ZWRXYWl0VGltZSJdJiZuKCJzZXNzaW9uL2FkZFdhaXRUaW1lIix7fSx7cm9vdDohMH0pLGkuY2hhdC52ZXJzaW9uPWN9fSx1cGRhdGVBZ2VudENvdW50OmZ1bmN0aW9uKHQsZSl7dC5zdGF0ZS5hZ2VudHNDb3VudCs9ZX0sdXBkYXRlVmVyc2lvbjpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0VmVyc2lvbiIsZSl9LHVwZGF0ZURlcGFydG1lbnQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldERlcGFydG1lbnQiLGUpfSxpbmNvbWluZ0NoYXRNZXNzYWdlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5jb21taXQsaT10LnN0YXRlLHI9dC5kaXNwYXRjaDtpZigib2ZmbGluZSI9PT10LnJvb3RHZXR0ZXJzWyJzZXNzaW9uL3BhZ2VTdGF0dXMiXSl7aWYoImEiIT09ZS51dClyZXR1cm47cigic2Vzc2lvbi9zZXRQYWdlU3RhdHVzIix7c3RhdHVzOiJvbmxpbmUifSx7cm9vdDohMH0pfWlmKGUuY3Zlcj5pLmNoYXQudmVyc2lvbil7aWYoZS5tZCYmZS5tZC5hbylyZXR1cm4gdm9pZCBuKCJzZXRWZXJzaW9uIixlLmN2ZXIpO3ZhciBhPXMuYS5wYXJzZUNoYXRNZXNzYWdlKGUsITApO2EmJihvLmEucGxheVNvdW5kKCksbigic2V0SW5jb21pbmdNZXNzYWdlIixhKSxuKCJzZXRWZXJzaW9uIixlLmN2ZXIpLHIoInVwZGF0ZUNoYXRNZXNzYWdlIixhKSl9fSxvdXRnb2luZ0NoYXRNZXNzYWdlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5jb21taXQsaT10LnN0YXRlLHI9dC5kaXNwYXRjaDtlJiZlLmN2ZXI+aS5jaGF0LnZlcnNpb24mJihuKCJzZXRWZXJzaW9uIixlLmN2ZXIpLHIoInVwZGF0ZUNoYXRNZXNzYWdlIixlKSl9LGFnZW50Sm9pbmVkOmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuLGk9dC5zdGF0ZSxyPXQuY29tbWl0LG89dC5kaXNwYXRjaCxhPWkuYWxsUHJvZmlsZXNbZS5wcm9maWxlRGF0YS5wcm9maWxlSWRdLHM9MDtzPGkuYWN0aXZlUHJvZmlsZXMubGVuZ3RoO3MrKylpZihpLmFjdGl2ZVByb2ZpbGVzW3NdLnByb2ZpbGVJZD09PWUucHJvZmlsZURhdGEucHJvZmlsZUlkKXtuPWkuYWN0aXZlUHJvZmlsZXNbc107YnJlYWt9bj8obi5jb3VudCsrLG4ucHJvZmlsZUltYWdlIT09ZS5wcm9maWxlRGF0YS5wcm9maWxlSW1hZ2UmJihuLnByb2ZpbGVJbWFnZT1lLnByb2ZpbGVEYXRhLnByb2ZpbGVJbWFnZSxhJiYoYS5wcm9maWxlSW1hZ2U9ZS5wcm9maWxlRGF0YS5wcm9maWxlSW1hZ2UpKSk6aS5hY3RpdmVQcm9maWxlcy5wdXNoKGUucHJvZmlsZURhdGEpLGF8fChpLmFsbFByb2ZpbGVzW2UucHJvZmlsZURhdGEucHJvZmlsZUlkXT1lLnByb2ZpbGVEYXRhKSxyKCJzZXRBZ2VudCIsZSksbygidXBkYXRlQWdlbnRDb3VudCIsMSl9LGFnZW50TGVmdDpmdW5jdGlvbih0LGUpe3ZhciBuPXQuc3RhdGUsaT10LmNvbW1pdCxyPXQuZGlzcGF0Y2gsbz10LmdldHRlcnMuYWdlbnRQcm9maWxlKGUucmVzb3VyY2VJZCk7aWYobyYmby5wcm9maWxlSWQpe2Zvcih2YXIgYT0xLHM9MDtzPG4uYWN0aXZlUHJvZmlsZXMubGVuZ3RoO3MrKylpZihuLmFjdGl2ZVByb2ZpbGVzW3NdLnByb2ZpbGVJZD09PW8ucHJvZmlsZUlkKXt2YXIgYz1uLmFjdGl2ZVByb2ZpbGVzW3NdO2E9Yy5jb3VudCwtLWE8MT9uLmFjdGl2ZVByb2ZpbGVzLnNwbGljZShzLDEpOmMuY291bnQ9YTticmVha31lLmFnZW50RGF0YS5waWQ9by5wcm9maWxlSWQsaSgic2V0QWdlbnQiLGUpLHIoInVwZGF0ZUFnZW50Q291bnQiLC0xKX19LHNldFByZXZpb3VzTWVzc2FnZXM6ZnVuY3Rpb24odCl7dmFyIGUsbixpLHIsbyxhPXQuc3RhdGUsYz10LmNvbW1pdCx1PXQucm9vdEdldHRlcnMsbD10LmRpc3BhdGNoLGQ9MCxmPWEuY2hhdC5oaXN0b3J5LGg9MDtmb3IoYS5jaGF0LmVuZFZlcnNpb249MCxlPTAsbj1mLmxlbmd0aDtlPG47ZSsrKSJDSEFUX0VOREVEIj09PWZbZV0ubSYmKGwoInByb2Nlc3NFbmRlZENoYXQiLGYuc2xpY2UoaCxlKzEpKSxkPWUrMSxhLmNoYXQuZW5kVmVyc2lvbis9MSxoPWUpO3I9YS5jaGF0Lm9yZGVyPjA/YS5jaGF0Lm1lc3NhZ2VzW2EuY2hhdC5vcmRlcl06bnVsbDt2YXIgcD1mdW5jdGlvbigpe2lmKCEoaT1mW2VdKS5tZHx8aS5tZCYmIWkubWQuYW8pe2lmKHImJnIudGltZVN0YW1wPj1uZXcgRGF0ZShpLmNvKS5nZXRUaW1lKCkpcmV0dXJuIDE7InYiIT09aS51dHx8YS52aXNpdG9ySGFzTWVzc2FnZWR8fCJjIiE9PWkudHx8KG89KG5ldyBEYXRlKS5nZXRUaW1lKCktbmV3IERhdGUoaS5jbykuZ2V0VGltZSgpKTt2YXIgdD1zLmEucGFyc2VDaGF0TWVzc2FnZShpKTt0JiYoc2V0VGltZW91dCgoZnVuY3Rpb24oKXtjKCJzZXRJbmNvbWluZ01lc3NhZ2UiLHQpfSkpLGwoInVwZGF0ZUNoYXRNZXNzYWdlIix0KSl9fTtmb3IoZT1kLG49Zi5sZW5ndGg7ZTxuO2UrKylwKCk7YS52aXNpdG9ySGFzTWVzc2FnZWQmJiFhLmFnZW50SGFzTWVzc2FnZWQmJnVbIndpZGdldC9zaG93RXN0aW1hdGVkV2FpdFRpbWUiXSYmKHVbInNlc3Npb24vd2FpdFRpbWUiXTxvP2MoInNlc3Npb24vc2V0V2FpdFRpbWUiLDZlNCx7cm9vdDohMH0pOmMoInNlc3Npb24vc2V0V2FpdFRpbWUiLHVbInNlc3Npb24vd2FpdFRpbWUiXS1vLHtyb290OiEwfSksbCgic2Vzc2lvbi9hZGRXYWl0VGltZSIse30se3Jvb3Q6ITB9KSksYS5oYXNDaGF0U3RhcnRlZD1hLnZpc2l0b3JIYXNNZXNzYWdlZHx8YS5hZ2VudEhhc01lc3NhZ2VkLGEuaGFzQ2hhdEVuZGVkPSEhYS5jaGF0LmVuZFZlcnNpb24mJiFhLmhhc0NoYXRTdGFydGVkLGMoInNldEhpc3RvcnlQcm9jZXNzZWQiLCEwKX0sdXBkYXRlVW5zZWVuTWVzc2FnZXM6ZnVuY3Rpb24odCxlKXt2YXIgbj10LnN0YXRlO24uY2hhdC51bnNlZW5NZXNzYWdlcy5wdXNoKGUpLG4uY2hhdC51bnJlYWRNZXNzYWdlKz0xfSxjbGVhclVuc2Vlbk1lc3NhZ2VzOmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGU7ZS5jaGF0LnVuc2Vlbk1lc3NhZ2VzPVtdLGUuY2hhdC51bnJlYWRNZXNzYWdlPTB9LGNsZWFyUHJvZmlsZXM6ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZTtlLmFjdGl2ZVByb2ZpbGVzPVtdLGUuYWxsUHJvZmlsZXM9e30sZS5hZ2VudHM9e30sZS5hZ2VudHNDb3VudD0wfSxlbmRDaGF0OmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zdGF0ZSxpPXQuY29tbWl0LG89dC5kaXNwYXRjaCxhPXQucm9vdEdldHRlcnM7ZT1lfHxmdW5jdGlvbigpe30sYy5hLnB1Ymxpc2goImVuZFZpc2l0b3JDaGF0IiwoZnVuY3Rpb24odCxzKXtpZih0KWUoITApO2Vsc2V7Zm9yKHZhciBjPU9iamVjdC5rZXlzKG4uY2hhdC5tZXNzYWdlcyksdT1bXSxsPTA7bDxjLmxlbmd0aDtsKyspe3ZhciBkPWNbbF07dS5wdXNoKG4uY2hhdC5tZXNzYWdlc1tkXS5yYXdNZXNzYWdlKX11LnB1c2goe206IkNIQVRfRU5ERUQiLHQ6Im4iLGNvOm5ldyBEYXRlfSksbi5jaGF0LmVuZFZlcnNpb249cy5jaGF0RW5kVmVyc2lvbixuLmNoYXQubWVzc2FnZXM9e30sbi5jaGF0Lmxhc3RNZXNzYWdlPXt9LG4uaGFzQ2hhdFN0YXJ0ZWQ9ITEsbi5oYXNDaGF0RW5kZWQ9ITAsbi5jaGF0Lm9yZGVyPTAsbygicHJvY2Vzc0VuZGVkQ2hhdCIsdSksaSgic2V0Q2hhdElkIixzLm5leHRDaGF0SWQpLG8oImNsZWFyUHJvZmlsZXMiKSxhWyJ3aWRnZXQvaXNFbWJlZGRlZCJdfHxvKCJzZXNzaW9uL3RvZ2dsZVdpZGdldCIsIiIse3Jvb3Q6ITB9KSxvKCJjbGVhck1lc3NhZ2VCbG9jayIpLHIuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQ2hhdEVuZGVkIiksZSgpfX0pKX0saGFuZGxlSW5jb21pbmdDaGF0RW5kOmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQuc3RhdGUsaT10LmNvbW1pdCxvPXQuZGlzcGF0Y2gsYT10LnJvb3RHZXR0ZXJzLHM9T2JqZWN0LmtleXMobi5jaGF0Lm1lc3NhZ2VzKSxjPVtdLHU9MDt1PHMubGVuZ3RoO3UrKyl7dmFyIGw9c1t1XTtjLnB1c2gobi5jaGF0Lm1lc3NhZ2VzW2xdLnJhd01lc3NhZ2UpfWMucHVzaCh7bToiQ0hBVF9FTkRFRCIsdDoibiIsY286ZS5jb3x8bmV3IERhdGV9KSxuLmNoYXQuZW5kVmVyc2lvbis9MSxuLmNoYXQubWVzc2FnZXM9e30sbi5jaGF0Lmxhc3RNZXNzYWdlPXt9LG4uaGFzQ2hhdFN0YXJ0ZWQ9ITEsbi5oYXNDaGF0RW5kZWQ9ITAsbi5jaGF0Lm9yZGVyPTAsbygicHJvY2Vzc0VuZGVkQ2hhdCIsYyksZS5tZCYmZS5tZC5uY2kmJmkoInNldENoYXRJZCIsZS5tZC5uY2kpLG8oImNsZWFyUHJvZmlsZXMiKSxhWyJ3aWRnZXQvaXNFbWJlZGRlZCJdfHxvKCJzZXNzaW9uL3RvZ2dsZVdpZGdldCIsIiIse3Jvb3Q6ITB9KSxvKCJjbGVhck1lc3NhZ2VCbG9jayIpLHIuYS50cmlnZ2VyQXBpSGFuZGxlcnMoIm9uQ2hhdEVuZGVkIil9LHJlc2V0U3RhdGU6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJ1bnNldERhdGEiKX0sdXBkYXRlQ2FsbERhdGE6ZnVuY3Rpb24odCxlKXt2YXIgbj10LnN0YXRlO2Zvcih2YXIgaSBpbiBuLmNhbGxzW2UuY2FsbElkXT1lLG4uY2hhdC5tZXNzYWdlcylpZihuLmNoYXQubWVzc2FnZXNbaV0uY2FsbElkPT09ZS5jYWxsSWQpe24uY2hhdC5tZXNzYWdlc1tpXS5jYWxsRGF0YT1lO2JyZWFrfX0sdXBkYXRlQ2hhdFRyYW5zZmVyRGF0YTpmdW5jdGlvbih0LGUpe3ZhciBuPXQuY29tbWl0LGk9dC5zdGF0ZSxyPWUudHJhbnNmZXIsbz1lLnRyYW5zZmVyVmVyc2lvbjtvPmkuY2hhdFRyYW5zZmVyLnZlcnNpb24mJihuKCJzZXRDaGF0VHJhbnNmZXJEYXRhIixyKSxuKCJzZXRDaGF0VHJhbnNmZXJWZXJzaW9uIixvKSl9LHVwZGF0ZVJhdGluZ01lc3NhZ2U6ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdCxpPXQuc3RhdGU7ZSYmKG4oImluY3JlbWVudENoYXRPcmRlciIpLGkuY2hhdC5tZXNzYWdlc1tpLmNoYXQub3JkZXJdPWUpfSxhZGRNZXNzYWdlQmxvY2s6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInB1c2hNZXNzYWdlQmxvY2siLGUpfSxjbGVhck1lc3NhZ2VCbG9jazpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0TWVzc2FnZUJsb2NrIil9LHVwZGF0ZUNoYXRNZXNzYWdlOmZ1bmN0aW9uKGUsbil7dmFyIGk9ZS5jb21taXQsbz1lLnN0YXRlLHM9ZS5yb290R2V0dGVycztpKCJpbmNyZW1lbnRDaGF0T3JkZXIiKSxvLmNoYXQubWVzc2FnZXNbby5jaGF0Lm9yZGVyXT1uLCgiYyI9PT1uLnR5cGV8fG4uY2FsbERhdGEpJiZpKCJzZXRMYXN0TWVzc2FnZSIsbiksImMiPT09bi50eXBlJiYicyIhPT1uLnNlbmRlclR5cGUmJiFvLmhhc0NoYXRTdGFydGVkJiZzWyJzY2hlZHVsZS9pc0VuYWJsZWQiXSYmYS5hLmhhc1NjaGVkdWxlVG9kYXkoKSYmYS5hLmhhc0N1cnJlbnRUaW1lUGFzc2VkU2NoZWR1bGUoKSYmIjYwM2UyYzJjMWMxYzJhMTMwZDYzZmQ1YSI9PT1zWyJwcm9wZXJ0eS9pZCJdJiZ1LmEucmVwb3J0RXJyb3Ioe2luY2lkZW50OiJTZW5kaW5nIGNoYXQgbWVzc2FnZSB3aGlsZSBvZmZsaW5lIixkYXRhOntjdXJyZW50VGltZTpuZXcgRGF0ZSx0aW1lem9uZToobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCksdXNlckFnZW50OnQubmF2aWdhdG9yLnVzZXJBZ2VudH0sc3RhdGU6e3NjaGVkdWxlOntpc0VuYWJsZWQ6c1sic2NoZWR1bGUvaXNFbmFibGVkIl0sc2xvdHM6c1sic2NoZWR1bGUvc2xvdHMiXSx0aW1lWm9uZTpzWyJzY2hlZHVsZS90aW1lem9uZSJdfSxzZXNzaW9uOntwYWdlU3RhdHVzOnNbInNlc3Npb24vcGFnZVN0YXR1cyJdfSx3aWRnZXQ6e2lkOnNbIndpZGdldC9pZCJdfSx2aXNpdG9yOntpZDpzWyJ2aXNpdG9yL2lkIl19fX0pLCJjIiE9PW4udHlwZXx8InMiPT09bi5zZW5kZXJUeXBlfHxvLmhhc0NoYXRTdGFydGVkfHwib2ZmbGluZSI9PT1zWyJzZXNzaW9uL3BhZ2VTdGF0dXMiXXx8KGkoInNldENoYXRIYXNTdGFydGVkIiwhMCksci5hLnRyaWdnZXJBcGlIYW5kbGVycygib25DaGF0U3RhcnRlZCIse2NoYXRJZDpvLmNoYXQuaWR9KSl9LHByb2Nlc3NFbmRlZENoYXQ6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG4scixvPXQuc3RhdGUsYT1bXSxzPVtdLGM9by5jaGF0LmlkLHU9MDt1PGUubGVuZ3RoO3UrKyl7dmFyIGw9ZVt1XTsiYyIhPT1sLnQ/Im4iPT09bC50JiYiQUdFTlRfSk9JTl9DT05WRVJTQVRJT04iPT09bC5tJiZsLm1kPyhhLnB1c2goe2Rpc3BsYXlOYW1lOmkuYS5yYXdEZWNvZGUobC5uKSxwcm9maWxlSWQ6bC5tZC5waWQscHJvZmlsZUltYWdlOmwubWQucGkscHJvZmlsZVRpdGxlOmkuYS5yYXdEZWNvZGUobC5tZC5wc3QpfSksLTE9PT1zLmluZGV4T2YobC51aWQpJiZzLnB1c2gobC51aWQpKToiQ0hBVF9FTkRFRCI9PT1sLm0mJihuPWwuY28pOnI9bC5tfW8uY2hhdC5lbmRlZENoYXRzLnVuc2hpZnQoe2lkOmMrby5jaGF0LmVuZGVkQ2hhdHMubGVuZ3RoLGFnZW50QWxpYXNlczphLGFnZW50SWRzOnMsc25pcHBldDpyLG1lc3NhZ2VzOmUsZW5kZWRPbjpuLGlzVGVtcDohMH0pfSx1cGRhdGVPbmdvaW5nQ2FsbDpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0T25nb2luZ0NhbGwiLGUpfSxzZXRUaWNrZXRGb3JtSUQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInVwZGF0ZVRpY2tldEZvcm1JRCIsZSl9LHNldExlYWRGb3JtSUQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInVwZGF0ZUxlYWRGb3JtSUQiLGUpfSxzZXRTZWVuQWxsVW5zZWVuTWVzc2FnZXM6ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZSxuPXQuZGlzcGF0Y2g7aWYoZS5jaGF0LnVuc2Vlbk1lc3NhZ2VzLmxlbmd0aD4wKXt2YXIgaT1PYmplY3Qua2V5cyhlLmNoYXQubWVzc2FnZXMpLmxlbmd0aCxvPWUuY2hhdC5tZXNzYWdlc1tpXTtvJiZvLnRpbWVTdGFtcCYmKG4oInNlc3Npb24vdXBkYXRlVmlzaXRvckNoYXRTZWVuIixvLnRpbWVTdGFtcCx7cm9vdDohMH0pLG4oImNsZWFyVW5zZWVuTWVzc2FnZXMiKSxyLmEudHJpZ2dlckFwaUhhbmRsZXJzKCJvblVucmVhZENvdW50Q2hhbmdlZCIsZS5jaGF0LnVucmVhZE1lc3NhZ2VDb3VudCkpfX19LG11dGF0aW9uczp7c2V0VmVyc2lvbjpmdW5jdGlvbih0LGUpe3QuY2hhdC52ZXJzaW9uPWV9LHNldERlcGFydG1lbnQ6ZnVuY3Rpb24odCxlKXt0LmNoYXQuZGVwYXJ0bWVudD1lfSxzZXRJbmNvbWluZ01lc3NhZ2U6ZnVuY3Rpb24odCxlKXt0LmluY29taW5nTWVzc2FnZT1lLHQuZmlyc3RJbmNvbWluZz0hMSwwIT09T2JqZWN0LmtleXModC5jaGF0Lmxhc3RNZXNzYWdlKS5sZW5ndGh8fHQuZmlyc3RJbmNvbWluZ3x8KHQuZmlyc3RJbmNvbWluZz0hMCl9LGluY3JlbWVudENoYXRPcmRlcjpmdW5jdGlvbih0KXt0LmNoYXQub3JkZXIrPTF9LHNldFJhdGluZzpmdW5jdGlvbih0LGUpe3QucmF0aW5nPWV9LHNldEFnZW50OmZ1bmN0aW9uKHQsZSl7dC5hZ2VudHNbZS5yZXNvdXJjZUlkXT17cHJvZmlsZUlkOmUuYWdlbnREYXRhLnBpZCxzZXE6ZS5hZ2VudERhdGEuc2VxfX0sc2V0Q2hhdElkOmZ1bmN0aW9uKHQsZSl7dC5jaGF0LmlkPWV9LHNldEluY29taW5nQ2FsbDpmdW5jdGlvbih0LGUpe3QuaW5jb21pbmdDYWxsPWV9LHNldENoYXRUcmFuc2ZlckRhdGE6ZnVuY3Rpb24odCxlKXt0LmNoYXRUcmFuc2Zlci5kYXRhPWV9LHNldENoYXRUcmFuc2ZlclZlcnNpb246ZnVuY3Rpb24odCxlKXt0LmNoYXRUcmFuc2Zlci52ZXJzaW9uPWV9LHNldENoYXRIYXNTdGFydGVkOmZ1bmN0aW9uKHQsZSl7dC5oYXNDaGF0U3RhcnRlZD1lLHQuaGFzQ2hhdEVuZGVkPSFlfSxzZXRWaXNpdG9ySGFzTWVzc2FnZWQ6ZnVuY3Rpb24odCxlKXt0LnZpc2l0b3JIYXNNZXNzYWdlZD1lfSxzZXRBZ2VudEhhc01lc3NhZ2VkOmZ1bmN0aW9uKHQsZSl7dC5hZ2VudEhhc01lc3NhZ2VkPWV9LHNldEhpc3RvcnlNZXNzYWdlczpmdW5jdGlvbih0LGUpe3QuY2hhdC5oaXN0b3J5PWV9LGFkZEZpbGVVcGxvYWQ6ZnVuY3Rpb24odCxlKXt0LnVwbG9hZEZpbGVzLnB1c2goZSl9LHJlbW92ZUZpbGVVcGxvYWQ6ZnVuY3Rpb24odCxlKXt2YXIgbj10LnVwbG9hZEZpbGVzLmZpbmRJbmRleCgoZnVuY3Rpb24odCl7cmV0dXJuIHQudXVpZD09PWV9KSk7LTEhPT1uJiZ0LnVwbG9hZEZpbGVzLnNwbGljZShuLDEpfSxzZXRMYXN0U2Nyb2xsUG9zaXRpb246ZnVuY3Rpb24odCxlKXt0Lmxhc3RTY3JvbGxQb3NpdG9uPWV9LHNldE91dGdvaW5nTWVzc2FnZTpmdW5jdGlvbih0LGUpe3Qub3V0Z29pbmdNZXNzYWdlPWV9LHNldEhpc3RvcnlQcm9jZXNzZWQ6ZnVuY3Rpb24odCxlKXt0LmNoYXQuaGlzdG9yeVByb2Nlc3NlZD1lfSx1bnNldERhdGE6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXthZ2VudHM6e30sYWdlbnRzQ291bnQ6MCxhY3RpdmVQcm9maWxlczpbXSxjaGF0OntidWZmZXI6W10sZGVwYXJ0bWVudDoiYW55IixlbmRWZXJzaW9uOjEsaGlzdG9yeTpbXSxpZDpudWxsLG9yZGVyOjAsdmVyc2lvbjowLHVucmVhZE1lc3NhZ2U6MCxzeW5jZWQ6ITEsbWVzc2FnZXM6e30sdW5zZWVuTWVzc2FnZXM6W10saGlzdG9yeVByb2Nlc3NlZDohMSxlbmRlZENoYXRzOltdLGxhc3RNZXNzYWdlOnt9fSxhbGxQcm9maWxlczp7fSxyYXRpbmc6bnVsbCxpbmNvbWluZ01lc3NhZ2U6bnVsbCxjYWxsczp7fSxjaGF0VHJhbnNmZXI6e2RhdGE6bnVsbCx2ZXJzaW9uOm51bGx9LG9uZ29pbmdDYWxsOiExLGluY29taW5nQ2FsbDpudWxsLGhhc0NoYXRTdGFydGVkOiExLG1lc3NhZ2VCbG9ja3M6W10sdmlzaXRvckhhc01lc3NhZ2VkOiExLGFnZW50SGFzTWVzc2FnZWQ6ITEsaGFzQ2hhdEVuZGVkOiExLHVwbG9hZEZpbGVzOltdLGxhc3RTY3JvbGxQb3NpdG9uOm51bGwsb3V0Z29pbmdNZXNzYWdlOm51bGwsZmlyc3RJbmNvbWluZzohMSxmb3JtOntyZWZzOnt9LHRpY2tldDp7aWQ6bnVsbCxoYXNTdWJtaXR0ZWQ6ITF9LGxlYWQ6e2lkOm51bGwsaGFzU3VibWl0dGVkOiExfX19LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO3Rbcl09ZVtyXX19LHB1c2hNZXNzYWdlQmxvY2s6ZnVuY3Rpb24odCxlKXt0Lm1lc3NhZ2VCbG9ja3MucHVzaChlKX0sdW5zZXRNZXNzYWdlQmxvY2s6ZnVuY3Rpb24odCl7dC5tZXNzYWdlQmxvY2tzPVtdfSxzZXRMYXN0TWVzc2FnZTpmdW5jdGlvbih0LGUpe3QuY2hhdC5sYXN0TWVzc2FnZT1lfSxzZXRPbmdvaW5nQ2FsbDpmdW5jdGlvbih0LGUpe3Qub25nb2luZ0NhbGw9ZX0sc2V0Rm9ybVJlZnM6ZnVuY3Rpb24odCxlKXt0LmZvcm0ucmVmc1tlLmlkXT1lLmRvbmV9LHNldFRpY2tldEZvcm1TdWJtaXQ6ZnVuY3Rpb24odCxlKXt0LmZvcm0udGlja2V0Lmhhc1N1Ym1pdHRlZD1lfSx1cGRhdGVUaWNrZXRGb3JtSUQ6ZnVuY3Rpb24odCxlKXt0LmZvcm0udGlja2V0LmlkPWV9LHNldExlYWRGb3JtU3VibWl0OmZ1bmN0aW9uKHQsZSl7dC5mb3JtLmxlYWQuaGFzU3VibWl0dGVkPWV9LHVwZGF0ZUxlYWRGb3JtSUQ6ZnVuY3Rpb24odCxlKXt0LmZvcm0ubGVhZC5pZD1lfX19fS5jYWxsKHRoaXMsbigiYzhiYSIpKX0sIjliZTgiOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKHQpe24uZChlLCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKTt2YXIgaT1uKCJiZGQwIikscj1uKCJmYWQyIiksbz1uKCJiN2NjIiksYT1uKCI2ODFkIikscz1uKCI5MWNlIik7ZnVuY3Rpb24gYyh0KXtyZXR1cm4oYz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIHUoKXt1PWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3ZhciB0LGU9e30sbj1PYmplY3QucHJvdG90eXBlLGk9bi5oYXNPd25Qcm9wZXJ0eSxyPU9iamVjdC5kZWZpbmVQcm9wZXJ0eXx8ZnVuY3Rpb24odCxlLG4pe3RbZV09bi52YWx1ZX0sbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sP1N5bWJvbDp7fSxhPW8uaXRlcmF0b3J8fCJAQGl0ZXJhdG9yIixzPW8uYXN5bmNJdGVyYXRvcnx8IkBAYXN5bmNJdGVyYXRvciIsbD1vLnRvU3RyaW5nVGFnfHwiQEB0b1N0cmluZ1RhZyI7ZnVuY3Rpb24gZCh0LGUsbil7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSx0W2VdfXRyeXtkKHt9LCIiKX1jYXRjaCh0KXtkPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdFtlXT1ufX1mdW5jdGlvbiBmKHQsZSxuLGkpe3ZhciBvPWUmJmUucHJvdG90eXBlIGluc3RhbmNlb2Ygdz9lOncsYT1PYmplY3QuY3JlYXRlKG8ucHJvdG90eXBlKSxzPW5ldyBMKGl8fFtdKTtyZXR1cm4gcihhLCJfaW52b2tlIix7dmFsdWU6SSh0LG4scyl9KSxhfWZ1bmN0aW9uIGgodCxlLG4pe3RyeXtyZXR1cm57dHlwZToibm9ybWFsIixhcmc6dC5jYWxsKGUsbil9fWNhdGNoKHQpe3JldHVybnt0eXBlOiJ0aHJvdyIsYXJnOnR9fX1lLndyYXA9Zjt2YXIgcD0ic3VzcGVuZGVkU3RhcnQiLG09ImV4ZWN1dGluZyIsZz0iY29tcGxldGVkIix2PXt9O2Z1bmN0aW9uIHcoKXt9ZnVuY3Rpb24geSgpe31mdW5jdGlvbiBiKCl7fXZhciBrPXt9O2QoayxhLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpO3ZhciBUPU9iamVjdC5nZXRQcm90b3R5cGVPZixTPVQmJlQoVChfKFtdKSkpO1MmJlMhPT1uJiZpLmNhbGwoUyxhKSYmKGs9Uyk7dmFyIFA9Yi5wcm90b3R5cGU9dy5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShrKTtmdW5jdGlvbiBFKHQpe1sibmV4dCIsInRocm93IiwicmV0dXJuIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7ZCh0LGUsKGZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pbnZva2UoZSx0KX0pKX0pKX1mdW5jdGlvbiBPKHQsZSl7ZnVuY3Rpb24gbihyLG8sYSxzKXt2YXIgdT1oKHRbcl0sdCxvKTtpZigidGhyb3ciIT09dS50eXBlKXt2YXIgbD11LmFyZyxkPWwudmFsdWU7cmV0dXJuIGQmJiJvYmplY3QiPT1jKGQpJiZpLmNhbGwoZCwiX19hd2FpdCIpP2UucmVzb2x2ZShkLl9fYXdhaXQpLnRoZW4oKGZ1bmN0aW9uKHQpe24oIm5leHQiLHQsYSxzKX0pLChmdW5jdGlvbih0KXtuKCJ0aHJvdyIsdCxhLHMpfSkpOmUucmVzb2x2ZShkKS50aGVuKChmdW5jdGlvbih0KXtsLnZhbHVlPXQsYShsKX0pLChmdW5jdGlvbih0KXtyZXR1cm4gbigidGhyb3ciLHQsYSxzKX0pKX1zKHUuYXJnKX12YXIgbztyKHRoaXMsIl9pbnZva2UiLHt2YWx1ZTpmdW5jdGlvbih0LGkpe2Z1bmN0aW9uIHIoKXtyZXR1cm4gbmV3IGUoKGZ1bmN0aW9uKGUscil7bih0LGksZSxyKX0pKX1yZXR1cm4gbz1vP28udGhlbihyLHIpOnIoKX19KX1mdW5jdGlvbiBJKGUsbixpKXt2YXIgcj1wO3JldHVybiBmdW5jdGlvbihvLGEpe2lmKHI9PT1tKXRocm93IEVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nIik7aWYocj09PWcpe2lmKCJ0aHJvdyI9PT1vKXRocm93IGE7cmV0dXJue3ZhbHVlOnQsZG9uZTohMH19Zm9yKGkubWV0aG9kPW8saS5hcmc9YTs7KXt2YXIgcz1pLmRlbGVnYXRlO2lmKHMpe3ZhciBjPUMocyxpKTtpZihjKXtpZihjPT09diljb250aW51ZTtyZXR1cm4gY319aWYoIm5leHQiPT09aS5tZXRob2QpaS5zZW50PWkuX3NlbnQ9aS5hcmc7ZWxzZSBpZigidGhyb3ciPT09aS5tZXRob2Qpe2lmKHI9PT1wKXRocm93IHI9ZyxpLmFyZztpLmRpc3BhdGNoRXhjZXB0aW9uKGkuYXJnKX1lbHNlInJldHVybiI9PT1pLm1ldGhvZCYmaS5hYnJ1cHQoInJldHVybiIsaS5hcmcpO3I9bTt2YXIgdT1oKGUsbixpKTtpZigibm9ybWFsIj09PXUudHlwZSl7aWYocj1pLmRvbmU/Zzoic3VzcGVuZGVkWWllbGQiLHUuYXJnPT09diljb250aW51ZTtyZXR1cm57dmFsdWU6dS5hcmcsZG9uZTppLmRvbmV9fSJ0aHJvdyI9PT11LnR5cGUmJihyPWcsaS5tZXRob2Q9InRocm93IixpLmFyZz11LmFyZyl9fX1mdW5jdGlvbiBDKGUsbil7dmFyIGk9bi5tZXRob2Qscj1lLml0ZXJhdG9yW2ldO2lmKHI9PT10KXJldHVybiBuLmRlbGVnYXRlPW51bGwsInRocm93Ij09PWkmJmUuaXRlcmF0b3IucmV0dXJuJiYobi5tZXRob2Q9InJldHVybiIsbi5hcmc9dCxDKGUsbiksInRocm93Ij09PW4ubWV0aG9kKXx8InJldHVybiIhPT1pJiYobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICciK2krIicgbWV0aG9kIikpLHY7dmFyIG89aChyLGUuaXRlcmF0b3Isbi5hcmcpO2lmKCJ0aHJvdyI9PT1vLnR5cGUpcmV0dXJuIG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9by5hcmcsbi5kZWxlZ2F0ZT1udWxsLHY7dmFyIGE9by5hcmc7cmV0dXJuIGE/YS5kb25lPyhuW2UucmVzdWx0TmFtZV09YS52YWx1ZSxuLm5leHQ9ZS5uZXh0TG9jLCJyZXR1cm4iIT09bi5tZXRob2QmJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksbi5kZWxlZ2F0ZT1udWxsLHYpOmE6KG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9bmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3QiKSxuLmRlbGVnYXRlPW51bGwsdil9ZnVuY3Rpb24geCh0KXt2YXIgZT17dHJ5TG9jOnRbMF19OzEgaW4gdCYmKGUuY2F0Y2hMb2M9dFsxXSksMiBpbiB0JiYoZS5maW5hbGx5TG9jPXRbMl0sZS5hZnRlckxvYz10WzNdKSx0aGlzLnRyeUVudHJpZXMucHVzaChlKX1mdW5jdGlvbiBBKHQpe3ZhciBlPXQuY29tcGxldGlvbnx8e307ZS50eXBlPSJub3JtYWwiLGRlbGV0ZSBlLmFyZyx0LmNvbXBsZXRpb249ZX1mdW5jdGlvbiBMKHQpe3RoaXMudHJ5RW50cmllcz1be3RyeUxvYzoicm9vdCJ9XSx0LmZvckVhY2goeCx0aGlzKSx0aGlzLnJlc2V0KCEwKX1mdW5jdGlvbiBfKGUpe2lmKGV8fCIiPT09ZSl7dmFyIG49ZVthXTtpZihuKXJldHVybiBuLmNhbGwoZSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUubmV4dClyZXR1cm4gZTtpZighaXNOYU4oZS5sZW5ndGgpKXt2YXIgcj0tMSxvPWZ1bmN0aW9uIG4oKXtmb3IoOysrcjxlLmxlbmd0aDspaWYoaS5jYWxsKGUscikpcmV0dXJuIG4udmFsdWU9ZVtyXSxuLmRvbmU9ITEsbjtyZXR1cm4gbi52YWx1ZT10LG4uZG9uZT0hMCxufTtyZXR1cm4gby5uZXh0PW99fXRocm93IG5ldyBUeXBlRXJyb3IoYyhlKSsiIGlzIG5vdCBpdGVyYWJsZSIpfXJldHVybiB5LnByb3RvdHlwZT1iLHIoUCwiY29uc3RydWN0b3IiLHt2YWx1ZTpiLGNvbmZpZ3VyYWJsZTohMH0pLHIoYiwiY29uc3RydWN0b3IiLHt2YWx1ZTp5LGNvbmZpZ3VyYWJsZTohMH0pLHkuZGlzcGxheU5hbWU9ZChiLGwsIkdlbmVyYXRvckZ1bmN0aW9uIiksZS5pc0dlbmVyYXRvckZ1bmN0aW9uPWZ1bmN0aW9uKHQpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0JiZ0LmNvbnN0cnVjdG9yO3JldHVybiEhZSYmKGU9PT15fHwiR2VuZXJhdG9yRnVuY3Rpb24iPT09KGUuZGlzcGxheU5hbWV8fGUubmFtZSkpfSxlLm1hcms9ZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YodCxiKToodC5fX3Byb3RvX189YixkKHQsbCwiR2VuZXJhdG9yRnVuY3Rpb24iKSksdC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShQKSx0fSxlLmF3cmFwPWZ1bmN0aW9uKHQpe3JldHVybntfX2F3YWl0OnR9fSxFKE8ucHJvdG90eXBlKSxkKE8ucHJvdG90eXBlLHMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZS5Bc3luY0l0ZXJhdG9yPU8sZS5hc3luYz1mdW5jdGlvbih0LG4saSxyLG8pe3ZvaWQgMD09PW8mJihvPVByb21pc2UpO3ZhciBhPW5ldyBPKGYodCxuLGksciksbyk7cmV0dXJuIGUuaXNHZW5lcmF0b3JGdW5jdGlvbihuKT9hOmEubmV4dCgpLnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiB0LmRvbmU/dC52YWx1ZTphLm5leHQoKX0pKX0sRShQKSxkKFAsbCwiR2VuZXJhdG9yIiksZChQLGEsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZChQLCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgR2VuZXJhdG9yXSJ9KSksZS5rZXlzPWZ1bmN0aW9uKHQpe3ZhciBlPU9iamVjdCh0KSxuPVtdO2Zvcih2YXIgaSBpbiBlKW4ucHVzaChpKTtyZXR1cm4gbi5yZXZlcnNlKCksZnVuY3Rpb24gdCgpe2Zvcig7bi5sZW5ndGg7KXt2YXIgaT1uLnBvcCgpO2lmKGkgaW4gZSlyZXR1cm4gdC52YWx1ZT1pLHQuZG9uZT0hMSx0fXJldHVybiB0LmRvbmU9ITAsdH19LGUudmFsdWVzPV8sTC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOkwscmVzZXQ6ZnVuY3Rpb24oZSl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9dCx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz10LHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKEEpLCFlKWZvcih2YXIgbiBpbiB0aGlzKSJ0Ij09PW4uY2hhckF0KDApJiZpLmNhbGwodGhpcyxuKSYmIWlzTmFOKCtuLnNsaWNlKDEpKSYmKHRoaXNbbl09dCl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIHQ9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbihlKXtpZih0aGlzLmRvbmUpdGhyb3cgZTt2YXIgbj10aGlzO2Z1bmN0aW9uIHIoaSxyKXtyZXR1cm4gcy50eXBlPSJ0aHJvdyIscy5hcmc9ZSxuLm5leHQ9aSxyJiYobi5tZXRob2Q9Im5leHQiLG4uYXJnPXQpLCEhcn1mb3IodmFyIG89dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO28+PTA7LS1vKXt2YXIgYT10aGlzLnRyeUVudHJpZXNbb10scz1hLmNvbXBsZXRpb247aWYoInJvb3QiPT09YS50cnlMb2MpcmV0dXJuIHIoImVuZCIpO2lmKGEudHJ5TG9jPD10aGlzLnByZXYpe3ZhciBjPWkuY2FsbChhLCJjYXRjaExvYyIpLHU9aS5jYWxsKGEsImZpbmFsbHlMb2MiKTtpZihjJiZ1KXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8YS5maW5hbGx5TG9jKXJldHVybiByKGEuZmluYWxseUxvYyl9ZWxzZSBpZihjKXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKX1lbHNle2lmKCF1KXRocm93IEVycm9yKCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseSIpO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX19fX0sYWJydXB0OmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtuPj0wOy0tbil7dmFyIHI9dGhpcy50cnlFbnRyaWVzW25dO2lmKHIudHJ5TG9jPD10aGlzLnByZXYmJmkuY2FsbChyLCJmaW5hbGx5TG9jIikmJnRoaXMucHJldjxyLmZpbmFsbHlMb2Mpe3ZhciBvPXI7YnJlYWt9fW8mJigiYnJlYWsiPT09dHx8ImNvbnRpbnVlIj09PXQpJiZvLnRyeUxvYzw9ZSYmZTw9by5maW5hbGx5TG9jJiYobz1udWxsKTt2YXIgYT1vP28uY29tcGxldGlvbjp7fTtyZXR1cm4gYS50eXBlPXQsYS5hcmc9ZSxvPyh0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5uZXh0PW8uZmluYWxseUxvYyx2KTp0aGlzLmNvbXBsZXRlKGEpfSxjb21wbGV0ZTpmdW5jdGlvbih0LGUpe2lmKCJ0aHJvdyI9PT10LnR5cGUpdGhyb3cgdC5hcmc7cmV0dXJuImJyZWFrIj09PXQudHlwZXx8ImNvbnRpbnVlIj09PXQudHlwZT90aGlzLm5leHQ9dC5hcmc6InJldHVybiI9PT10LnR5cGU/KHRoaXMucnZhbD10aGlzLmFyZz10LmFyZyx0aGlzLm1ldGhvZD0icmV0dXJuIix0aGlzLm5leHQ9ImVuZCIpOiJub3JtYWwiPT09dC50eXBlJiZlJiYodGhpcy5uZXh0PWUpLHZ9LGZpbmlzaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi5maW5hbGx5TG9jPT09dClyZXR1cm4gdGhpcy5jb21wbGV0ZShuLmNvbXBsZXRpb24sbi5hZnRlckxvYyksQShuKSx2fX0sY2F0Y2g6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIG49dGhpcy50cnlFbnRyaWVzW2VdO2lmKG4udHJ5TG9jPT09dCl7dmFyIGk9bi5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT1pLnR5cGUpe3ZhciByPWkuYXJnO0Eobil9cmV0dXJuIHJ9fXRocm93IEVycm9yKCJpbGxlZ2FsIGNhdGNoIGF0dGVtcHQiKX0sZGVsZWdhdGVZaWVsZDpmdW5jdGlvbihlLG4saSl7cmV0dXJuIHRoaXMuZGVsZWdhdGU9e2l0ZXJhdG9yOl8oZSkscmVzdWx0TmFtZTpuLG5leHRMb2M6aX0sIm5leHQiPT09dGhpcy5tZXRob2QmJih0aGlzLmFyZz10KSx2fX0sZX1mdW5jdGlvbiBsKHQsZSxuLGkscixvLGEpe3RyeXt2YXIgcz10W29dKGEpLGM9cy52YWx1ZX1jYXRjaCh0KXtyZXR1cm4gdm9pZCBuKHQpfXMuZG9uZT9lKGMpOlByb21pc2UucmVzb2x2ZShjKS50aGVuKGkscil9ZnVuY3Rpb24gZCh0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oaSxyKXt2YXIgbz10LmFwcGx5KGUsbik7ZnVuY3Rpb24gYSh0KXtsKG8saSxyLGEscywibmV4dCIsdCl9ZnVuY3Rpb24gcyh0KXtsKG8saSxyLGEscywidGhyb3ciLHQpfWEodm9pZCAwKX0pKX19ZnVuY3Rpb24gZih0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaChpLmtleSksaSl9fWZ1bmN0aW9uIGgodCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9Yyh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWMoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09YyhlKT9lOmUrIiJ9dmFyIHA9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBlJiZmKHQucHJvdG90eXBlLGUpLG4mJmYodCxuKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSx0fSgoZnVuY3Rpb24gdChlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93OyhmdW5jdGlvbih0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfSkodGhpcyx0KSx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWksdGhpcy5yZWdpc3RlclRpbWU9MCx0aGlzLm1heFJldHJ5Y291bnQ9Myx0aGlzLnJldHJ5Q291bnQ9MCx0aGlzLnByZXZpb3VzUmVnaXN0ZXJDYWxsPW51bGwsdGhpcy5yZXF1ZXN0Q2FuY2VsVGltZW91dD1udWxsLHRoaXMuY29ubmVjdGlvbkNvb2tpZUludGVydmFsPW51bGwsdGhpcy5yZWdpc3RlckRlbGF5VGltZW91dD1udWxsLHRoaXMucmVnaXN0ZXJEYXRhPW51bGwsdGhpcy5yZWdpc3RlclN0YXJ0ZWQ9ITEsdGhpcy5yZXRyeURlbGF5PW51bGwsdGhpcy5yZXRyeUluaXRpYWxEZWxheT0zMCx0aGlzLnJldHJ5TXVsdGlwbGllcj0xLjUsdGhpcy5taW5SYW5kb209LjUsdGhpcy5tYXhSYW5kb209MS41LHRoaXMubWF4RGVsYXk9MTIwLHRoaXMucmV0cnlSZWdpc3RlclRpbWVvdXQ9bnVsbH0pLFt7a2V5OiJjbGVhclRpbWVycyIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLmFib3J0KCksY2xlYXJUaW1lb3V0KHRoaXMucmVxdWVzdENhbmNlbFRpbWVvdXQpLGNsZWFyVGltZW91dCh0aGlzLnJlZ2lzdGVyRGVsYXlUaW1lb3V0KSxjbGVhclRpbWVvdXQodGhpcy5yZXRyeVJlZ2lzdGVyVGltZW91dCksY2xlYXJJbnRlcnZhbCh0aGlzLmNvbm5lY3Rpb25Db29raWVJbnRlcnZhbCksdCYmdGhpcy5UYXdrV2luZG93JiZhLmEmJmEuYS5jb29raWVTdG9yZSgpLnNldEl0ZW0oIlRhd2tDb25uZWN0aW9uVGltZSIsMCwhMCksdGhpcy5yZXRyeVJlZ2lzdGVyVGltZW91dD1udWxsLHRoaXMucmVnaXN0ZXJEZWxheVRpbWVvdXQ9bnVsbCx0aGlzLnJlcXVlc3RDYW5jZWxUaW1lb3V0PW51bGwsdGhpcy5jb25uZWN0aW9uQ29va2llSW50ZXJ2YWw9bnVsbH19LHtrZXk6ImluaXQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9ZCh1KCkubWFyaygoZnVuY3Rpb24gdChlLG4pe3ZhciBpLHIsbyxhPWFyZ3VtZW50cztyZXR1cm4gdSgpLndyYXAoKGZ1bmN0aW9uKHQpe2Zvcig7Oylzd2l0Y2godC5wcmV2PXQubmV4dCl7Y2FzZSAwOnJldHVybiBpPWEubGVuZ3RoPjImJnZvaWQgMCE9PWFbMl0/YVsyXTp7fSxyPWkudmlzaXRvcixvPXZvaWQgMD09PXI/dm9pZCAwOnIsdGhpcy5yZWdpc3RlclN0YXJ0ZWQ9ITAsdGhpcy5jbGVhclRpbWVycygpLHQubmV4dD01LHRoaXMucHJlcGFyZURhdGEoe3Zpc2l0b3I6b30pO2Nhc2UgNTppZih0aGlzLnJlZ2lzdGVyRGF0YS51fHx0aGlzLnJlZ2lzdGVyRGF0YS51aWspe3QubmV4dD04O2JyZWFrfXJldHVybiB0aGlzLmNsZWFyVGltZXJzKCksdC5hYnJ1cHQoInJldHVybiIpO2Nhc2UgODp0aGlzLnN0YXJ0UmVnaXN0ZXIoZSxuKTtjYXNlIDk6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0LHRoaXMpfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJwcmVwYXJlRGF0YSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD1kKHUoKS5tYXJrKChmdW5jdGlvbiB0KCl7dmFyIGUsbixpLG8sYSxsLGQsZixoLHAsbSxnLHYsdyx5LGI9YXJndW1lbnRzO3JldHVybiB1KCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6aWYobj1iLmxlbmd0aD4wJiZ2b2lkIDAhPT1iWzBdP2JbMF06e30saT1uLnZpc2l0b3Isbz12b2lkIDA9PT1pP3ZvaWQgMDppLGE9dm9pZCAwLHRoaXMuVGF3a1dpbmRvdyl7dC5uZXh0PTQ7YnJlYWt9cmV0dXJuIHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDQ6aWYobD0iIixkPXRoaXMuc3RvcmUuZ2V0dGVycywoZj1zLmEuZ2V0U2Vzc2lvbkluZm9ybWF0aW9uKCkpLmxlbmd0aCYmKGw9ZlswXSksKChoPShuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSk8LTkwMHx8aD45MDApJiYoaD0wKSwhd2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInRhd2tfaGFzX3JlZ2lzdGVyX3Zpc2l0b3IiKSYmbnVsbCE9PShlPXdpbmRvdy5UYXdrX0FQSSkmJnZvaWQgMCE9PWUmJmUudmlzaXRvciYmIm9iamVjdCI9PT1jKHdpbmRvdy5UYXdrX0FQSS52aXNpdG9yKSYmKGE9ci5hLmZvcm1hdFZpc2l0b3JMb2dpbkRhdGEobykpLHRoaXMucmVnaXN0ZXJEYXRhP3RoaXMucmVnaXN0ZXJEYXRhLnZzcz1sOnRoaXMucmVnaXN0ZXJEYXRhPXtwOmRbInByb3BlcnR5L2lkIl18fCIiLHc6ZFsid2lkZ2V0L2lkIl0scGxhdGZvcm06ZFsiYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiXT8ibW9iaWxlIjoiZGVza3RvcCIsdHpvOmgsdXJsOmRvY3VtZW50LmxvY2F0aW9uLmhyZWYscmVmZXJyZXI6ZG9jdW1lbnQucmVmZXJyZXJ8fHZvaWQgMCx2c3M6bCx1c2VyOmF9LHA9bnVsbCx3aW5kb3cubG9jYXRpb24mJndpbmRvdy5sb2NhdGlvbi5ocmVmKXRyeXsiaHR0cDoiIT09KHA9bmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZikpLnByb3RvY29sJiYiaHR0cHM6IiE9PXAucHJvdG9jb2wmJiJmaWxlOiIhPT1wLnByb3RvY29sfHwodGhpcy5yZWdpc3RlckRhdGEudXJsPXdpbmRvdy5sb2NhdGlvbi5ocmVmKX1jYXRjaCh0KXt9aWYoIXAmJndpbmRvdy50b3AhPT13aW5kb3cpdHJ5e3dpbmRvdy50b3AuZG9jdW1lbnQmJndpbmRvdy50b3AubG9jYXRpb24mJndpbmRvdy50b3AubG9jYXRpb24uaHJlZiYmKHRoaXMucmVnaXN0ZXJEYXRhLnVybD13aW5kb3cudG9wLmRvY3VtZW50LmxvY2F0aW9uLmhyZWYpfWNhdGNoKHQpe2NvbnNvbGUuZXJyb3IoIltUYXdrL1JlZ2lzdGVyXTogRmFpbGVkIHRvIGFjY2VzcyB1cmwiKX10aGlzLnJlZ2lzdGVyRGF0YS5jb25zZW50PSExLG09MDtjYXNlIDE4OmlmKCEobTxmLmxlbmd0aCkpe3QubmV4dD0yNTticmVha31pZigiY2YiIT09ZlttXSl7dC5uZXh0PTIyO2JyZWFrfXJldHVybiB0aGlzLnJlZ2lzdGVyRGF0YS5jb25zZW50PSEwLHQuYWJydXB0KCJicmVhayIsMjUpO2Nhc2UgMjI6bSsrLHQubmV4dD0xODticmVhaztjYXNlIDI1OnJldHVybiB0aGlzLlRhd2tXaW5kb3cmJnRoaXMuVGF3a1dpbmRvdy5tYXhpbWl6ZT90aGlzLnJlZ2lzdGVyRGF0YS53c3M9Im1heCI6dGhpcy5yZWdpc3RlckRhdGEud3NzPSJtaW4iLHQucHJldj0yNix0Lm5leHQ9Mjkscy5hLmdldFVVSUQoKTtjYXNlIDI5OmlmKGc9dC5zZW50LHY9Zy51dWlkLHc9Zy52ZXJzaW9uLHk9Zy5pc1BhcnRpYWwsIXYpe3QubmV4dD0zOTticmVha310aGlzLnJlZ2lzdGVyRGF0YS51PXYsdGhpcy5yZWdpc3RlckRhdGEudXY9cGFyc2VJbnQodywxMCksMj09PXcmJnkmJih0aGlzLnJlZ2lzdGVyRGF0YS51dz0xKSx0Lm5leHQ9NDI7YnJlYWs7Y2FzZSAzOTpyZXR1cm4gdC5uZXh0PTQxLHMuYS5nZXRJZGVtcG90ZW5jeUtleSgpO2Nhc2UgNDE6dGhpcy5yZWdpc3RlckRhdGEudWlrPXQuc2VudDtjYXNlIDQyOnQubmV4dD00NzticmVhaztjYXNlIDQ0OnQucHJldj00NCx0LnQwPXQuY2F0Y2goMjYpLGNvbnNvbGUuZXJyb3IodC50MCk7Y2FzZSA0NzpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQsdGhpcyxbWzI2LDQ0XV0pfSkpKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJzdGFydFJlZ2lzdGVyIix2YWx1ZTpmdW5jdGlvbihlLG4pe3ZhciBpPXRoaXMscj1hLmEuY29va2llU3RvcmUoKS5nZXRJdGVtKCJUYXdrQ29ubmVjdGlvblRpbWUiKSxvPXBhcnNlSW50KHIubGVuZ3RoP3JbMF06bnVsbCwxMCk7IW98fChuZXcgRGF0ZSkuZ2V0VGltZSgpLW5ldyBEYXRlKG8pLmdldFRpbWUoKT4xZTM/KGEuYS5jb29raWVTdG9yZSgpLnNldEl0ZW0oIlRhd2tDb25uZWN0aW9uVGltZSIsKG5ldyBEYXRlKS5nZXRUaW1lKCksITApLHRoaXMuY29ubmVjdGlvbkNvb2tpZUludGVydmFsPXNldEludGVydmFsKChmdW5jdGlvbigpe3QmJmkuVGF3a1dpbmRvdyYmYS5hJiZhLmEuY29va2llU3RvcmUoKS5zZXRJdGVtKCJUYXdrQ29ubmVjdGlvblRpbWUiLChuZXcgRGF0ZSkuZ2V0VGltZSgpLCEwKX0pLDEwMCksdGhpcy5kb1JlZ2lzdGVyKGUsbikpOnRoaXMuZGVsYXlSZWdpc3RlcihlLG4pfX0se2tleToiZGVsYXlSZWdpc3RlciIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO2NsZWFyVGltZW91dCh0aGlzLnJlZ2lzdGVyRGVsYXlUaW1lb3V0KSx0aGlzLnJlZ2lzdGVyRGVsYXlUaW1lb3V0PXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bi5pbml0KHQsZSl9KSwxZTMpfX0se2tleToiZG9SZWdpc3RlciIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzO3RoaXMuc2V0dXBSZWdpc3RlclRpbWVvdXQoKTt2YXIgcixhPSIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL3YxL3Nlc3Npb24vc3RhcnQiKSx1PXMuYS5nZXRTdG9yZWRUb2tlbigpO3UmJihyPXsiWC1UYXdrLVRva2VuIjp1fSksdGhpcy5wcmV2aW91c1JlZ2lzdGVyQ2FsbD1pLmEucG9zdChhLHRoaXMucmVnaXN0ZXJEYXRhLHIsKGZ1bmN0aW9uKGkscil7dmFyIGE7cmV0dXJuIG4uY2xlYXJUaW1lcnMoKSxpfHwhaSYmIXI/bi5yZXRyeVJlZ2lzdGVyKHQsZSk6ci5lcnJvcj9yLmVycm9yLmNvZGUmJiJJbnRlcm5hbFNlcnZlckVycm9yIj09PXIuZXJyb3IuY29kZT9uLnJldHJ5UmVnaXN0ZXIodCxlKTplKCk6KG51bGwhPT0oYT13aW5kb3cuVGF3a19BUEkpJiZ2b2lkIDAhPT1hJiZhLnZpc2l0b3ImJiJvYmplY3QiPT09Yyh3aW5kb3cuVGF3a19BUEkudmlzaXRvcikmJndpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ0YXdrX2hhc19yZWdpc3Rlcl92aXNpdG9yIiwhMCksdChyKSx2b2lkKG4ucmVnaXN0ZXJEYXRhLnVzZXImJiJvYmplY3QiPT09YyhuLnJlZ2lzdGVyRGF0YSkmJm8uYS51bnNldFZpc2l0b3JBdHRyaWJ1dGVzKCkpKX0pLCEwLCEwKX19LHtrZXk6InNldHVwUmVnaXN0ZXJUaW1lb3V0Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7Y2xlYXJUaW1lb3V0KHRoaXMucmVxdWVzdENhbmNlbFRpbWVvdXQpLHRoaXMucmVxdWVzdENhbmNlbFRpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmFib3J0KCksdC5yZXRyeVJlZ2lzdGVyKCl9KSw5ZTQpfX0se2tleToiYWJvcnQiLHZhbHVlOmZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMucHJldmlvdXNSZWdpc3RlckNhbGwmJih0aGlzLnByZXZpb3VzUmVnaXN0ZXJDYWxsPW51bGwpfX0se2tleToicmV0cnlSZWdpc3RlciIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbixpPXRoaXM7aWYobnVsbD09PXRoaXMucmV0cnlSZWdpc3RlclRpbWVvdXQpe2lmKHRoaXMucmV0cnlDb3VudD49dGhpcy5tYXhSZXRyeWNvdW50KXJldHVybiB0aGlzLmNsZWFyVGltZXJzKCksdGhpcy5zdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi91cGRhdGVDaGF0V2luZG93U3RhdGUiLCJtaW4iKSx2b2lkIHRoaXMuc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0VmlzaWJpbGl0eSIsITEpO3RoaXMucmV0cnlDb3VudCsrLG49dGhpcy5nZXRSZXRyeVdhaXREZWxheSgpLHRoaXMucmV0cnlSZWdpc3RlclRpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLmluaXQodCxlKX0pLG4pfX19LHtrZXk6ImdldFJldHJ5V2FpdERlbGF5Iix2YWx1ZTpmdW5jdGlvbigpe3ZhciB0LGU9TWF0aC5yYW5kb20oKSoodGhpcy5tYXhSYW5kb20tdGhpcy5taW5SYW5kb20pK3RoaXMubWluUmFuZG9tO3JldHVybiBudWxsPT09dGhpcy5yZXRyeURlbGF5P3RoaXMucmV0cnlEZWxheT10aGlzLnJldHJ5SW5pdGlhbERlbGF5Oih0PXRoaXMucmV0cnlEZWxheSp0aGlzLnJldHJ5TXVsdGlwbGllcix0aGlzLnJldHJ5RGVsYXk+dGhpcy5tYXhEZWxheXx8dD50aGlzLm1heERlbGF5P3RoaXMucmV0cnlEZWxheT10aGlzLm1heERlbGF5OnRoaXMucmV0cnlEZWxheT10KSwxZTMqTWF0aC5yb3VuZCh0aGlzLnJldHJ5RGVsYXkqZSl9fSx7a2V5OiJyZXNldFJldHJ5Q291bnQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5yZXRyeUNvdW50PTAsdGhpcy5yZXRyeURlbGF5PTEwfX1dKX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSxhMThjOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBsfSkpO3ZhciBpPW4oIjQzNjAiKSxyPXtuYW1lOiJUYXdrUm91dGVyVmlldyIscmVuZGVyOmZ1bmN0aW9uKHQpe3ZhciBlO3JldHVybiBpLmEuZ2V0dGVyc1sicm91dGVyL2dldEN1cnJlbnRWaWV3Il0mJihlPXQoaS5hLmdldHRlcnNbInJvdXRlci9nZXRDdXJyZW50VmlldyJdLmNvbXBvbmVudCkpLHQoInRyYW5zaXRpb24iLHtwcm9wczp7bmFtZToic2xpZGUtZmFkZSIsbW9kZToib3V0LWluIn0scmVmOiJyb3V0ZXItdmlldyJ9LFtlXSl9fSxvPW4oImQwNDYiKTtmdW5jdGlvbiBhKHQpe3JldHVybihhPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gcyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsYyhpLmtleSksaSl9fWZ1bmN0aW9uIGModCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9YSh0KXx8IXQpcmV0dXJuIHQ7dmFyIG49dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PW4pe3ZhciBpPW4uY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWEoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09YShlKT9lOmUrIiJ9ZnVuY3Rpb24gdSh0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfXZhciBsPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmcyh0LnByb3RvdHlwZSxlKSxuJiZzKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307dSh0aGlzLHQpLHRoaXMubWF0Y2hlcj1lLnJvdXRlc30pKTtsLmluc3RhbGw9ZnVuY3Rpb24odCl7aS5hLmRpc3BhdGNoKCJyb3V0ZXIvYWRkUm91dGVzIixvLmEpLHQuY29tcG9uZW50KCJUYXdrUm91dGVyVmlldyIscil9fSxhM2NjOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO3ZhciBpPW4oImJkZDAiKSxyPW4oIjdmNDYiKTtmdW5jdGlvbiBvKHQpe3JldHVybihvPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gYSgpe2E9ZnVuY3Rpb24oKXtyZXR1cm4gZX07dmFyIHQsZT17fSxuPU9iamVjdC5wcm90b3R5cGUsaT1uLmhhc093blByb3BlcnR5LHI9T2JqZWN0LmRlZmluZVByb3BlcnR5fHxmdW5jdGlvbih0LGUsbil7dFtlXT1uLnZhbHVlfSxzPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2w/U3ltYm9sOnt9LGM9cy5pdGVyYXRvcnx8IkBAaXRlcmF0b3IiLHU9cy5hc3luY0l0ZXJhdG9yfHwiQEBhc3luY0l0ZXJhdG9yIixsPXMudG9TdHJpbmdUYWd8fCJAQHRvU3RyaW5nVGFnIjtmdW5jdGlvbiBkKHQsZSxuKXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pLHRbZV19dHJ5e2Qoe30sIiIpfWNhdGNoKHQpe2Q9ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0W2VdPW59fWZ1bmN0aW9uIGYodCxlLG4saSl7dmFyIG89ZSYmZS5wcm90b3R5cGUgaW5zdGFuY2VvZiB3P2U6dyxhPU9iamVjdC5jcmVhdGUoby5wcm90b3R5cGUpLHM9bmV3IEwoaXx8W10pO3JldHVybiByKGEsIl9pbnZva2UiLHt2YWx1ZTpJKHQsbixzKX0pLGF9ZnVuY3Rpb24gaCh0LGUsbil7dHJ5e3JldHVybnt0eXBlOiJub3JtYWwiLGFyZzp0LmNhbGwoZSxuKX19Y2F0Y2godCl7cmV0dXJue3R5cGU6InRocm93Iixhcmc6dH19fWUud3JhcD1mO3ZhciBwPSJzdXNwZW5kZWRTdGFydCIsbT0iZXhlY3V0aW5nIixnPSJjb21wbGV0ZWQiLHY9e307ZnVuY3Rpb24gdygpe31mdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGIoKXt9dmFyIGs9e307ZChrLGMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSk7dmFyIFQ9T2JqZWN0LmdldFByb3RvdHlwZU9mLFM9VCYmVChUKF8oW10pKSk7UyYmUyE9PW4mJmkuY2FsbChTLGMpJiYoaz1TKTt2YXIgUD1iLnByb3RvdHlwZT13LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGspO2Z1bmN0aW9uIEUodCl7WyJuZXh0IiwidGhyb3ciLCJyZXR1cm4iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtkKHQsZSwoZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2ludm9rZShlLHQpfSkpfSkpfWZ1bmN0aW9uIE8odCxlKXtmdW5jdGlvbiBuKHIsYSxzLGMpe3ZhciB1PWgodFtyXSx0LGEpO2lmKCJ0aHJvdyIhPT11LnR5cGUpe3ZhciBsPXUuYXJnLGQ9bC52YWx1ZTtyZXR1cm4gZCYmIm9iamVjdCI9PW8oZCkmJmkuY2FsbChkLCJfX2F3YWl0Iik/ZS5yZXNvbHZlKGQuX19hd2FpdCkudGhlbigoZnVuY3Rpb24odCl7bigibmV4dCIsdCxzLGMpfSksKGZ1bmN0aW9uKHQpe24oInRocm93Iix0LHMsYyl9KSk6ZS5yZXNvbHZlKGQpLnRoZW4oKGZ1bmN0aW9uKHQpe2wudmFsdWU9dCxzKGwpfSksKGZ1bmN0aW9uKHQpe3JldHVybiBuKCJ0aHJvdyIsdCxzLGMpfSkpfWModS5hcmcpfXZhciBhO3IodGhpcywiX2ludm9rZSIse3ZhbHVlOmZ1bmN0aW9uKHQsaSl7ZnVuY3Rpb24gcigpe3JldHVybiBuZXcgZSgoZnVuY3Rpb24oZSxyKXtuKHQsaSxlLHIpfSkpfXJldHVybiBhPWE/YS50aGVuKHIscik6cigpfX0pfWZ1bmN0aW9uIEkoZSxuLGkpe3ZhciByPXA7cmV0dXJuIGZ1bmN0aW9uKG8sYSl7aWYocj09PW0pdGhyb3cgRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTtpZihyPT09Zyl7aWYoInRocm93Ij09PW8pdGhyb3cgYTtyZXR1cm57dmFsdWU6dCxkb25lOiEwfX1mb3IoaS5tZXRob2Q9byxpLmFyZz1hOzspe3ZhciBzPWkuZGVsZWdhdGU7aWYocyl7dmFyIGM9QyhzLGkpO2lmKGMpe2lmKGM9PT12KWNvbnRpbnVlO3JldHVybiBjfX1pZigibmV4dCI9PT1pLm1ldGhvZClpLnNlbnQ9aS5fc2VudD1pLmFyZztlbHNlIGlmKCJ0aHJvdyI9PT1pLm1ldGhvZCl7aWYocj09PXApdGhyb3cgcj1nLGkuYXJnO2kuZGlzcGF0Y2hFeGNlcHRpb24oaS5hcmcpfWVsc2UicmV0dXJuIj09PWkubWV0aG9kJiZpLmFicnVwdCgicmV0dXJuIixpLmFyZyk7cj1tO3ZhciB1PWgoZSxuLGkpO2lmKCJub3JtYWwiPT09dS50eXBlKXtpZihyPWkuZG9uZT9nOiJzdXNwZW5kZWRZaWVsZCIsdS5hcmc9PT12KWNvbnRpbnVlO3JldHVybnt2YWx1ZTp1LmFyZyxkb25lOmkuZG9uZX19InRocm93Ij09PXUudHlwZSYmKHI9ZyxpLm1ldGhvZD0idGhyb3ciLGkuYXJnPXUuYXJnKX19fWZ1bmN0aW9uIEMoZSxuKXt2YXIgaT1uLm1ldGhvZCxyPWUuaXRlcmF0b3JbaV07aWYocj09PXQpcmV0dXJuIG4uZGVsZWdhdGU9bnVsbCwidGhyb3ciPT09aSYmZS5pdGVyYXRvci5yZXR1cm4mJihuLm1ldGhvZD0icmV0dXJuIixuLmFyZz10LEMoZSxuKSwidGhyb3ciPT09bi5tZXRob2QpfHwicmV0dXJuIiE9PWkmJihuLm1ldGhvZD0idGhyb3ciLG4uYXJnPW5ldyBUeXBlRXJyb3IoIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJyIraSsiJyBtZXRob2QiKSksdjt2YXIgbz1oKHIsZS5pdGVyYXRvcixuLmFyZyk7aWYoInRocm93Ij09PW8udHlwZSlyZXR1cm4gbi5tZXRob2Q9InRocm93IixuLmFyZz1vLmFyZyxuLmRlbGVnYXRlPW51bGwsdjt2YXIgYT1vLmFyZztyZXR1cm4gYT9hLmRvbmU/KG5bZS5yZXN1bHROYW1lXT1hLnZhbHVlLG4ubmV4dD1lLm5leHRMb2MsInJldHVybiIhPT1uLm1ldGhvZCYmKG4ubWV0aG9kPSJuZXh0IixuLmFyZz10KSxuLmRlbGVnYXRlPW51bGwsdik6YToobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJpdGVyYXRvciByZXN1bHQgaXMgbm90IGFuIG9iamVjdCIpLG4uZGVsZWdhdGU9bnVsbCx2KX1mdW5jdGlvbiB4KHQpe3ZhciBlPXt0cnlMb2M6dFswXX07MSBpbiB0JiYoZS5jYXRjaExvYz10WzFdKSwyIGluIHQmJihlLmZpbmFsbHlMb2M9dFsyXSxlLmFmdGVyTG9jPXRbM10pLHRoaXMudHJ5RW50cmllcy5wdXNoKGUpfWZ1bmN0aW9uIEEodCl7dmFyIGU9dC5jb21wbGV0aW9ufHx7fTtlLnR5cGU9Im5vcm1hbCIsZGVsZXRlIGUuYXJnLHQuY29tcGxldGlvbj1lfWZ1bmN0aW9uIEwodCl7dGhpcy50cnlFbnRyaWVzPVt7dHJ5TG9jOiJyb290In1dLHQuZm9yRWFjaCh4LHRoaXMpLHRoaXMucmVzZXQoITApfWZ1bmN0aW9uIF8oZSl7aWYoZXx8IiI9PT1lKXt2YXIgbj1lW2NdO2lmKG4pcmV0dXJuIG4uY2FsbChlKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5uZXh0KXJldHVybiBlO2lmKCFpc05hTihlLmxlbmd0aCkpe3ZhciByPS0xLGE9ZnVuY3Rpb24gbigpe2Zvcig7KytyPGUubGVuZ3RoOylpZihpLmNhbGwoZSxyKSlyZXR1cm4gbi52YWx1ZT1lW3JdLG4uZG9uZT0hMSxuO3JldHVybiBuLnZhbHVlPXQsbi5kb25lPSEwLG59O3JldHVybiBhLm5leHQ9YX19dGhyb3cgbmV3IFR5cGVFcnJvcihvKGUpKyIgaXMgbm90IGl0ZXJhYmxlIil9cmV0dXJuIHkucHJvdG90eXBlPWIscihQLCJjb25zdHJ1Y3RvciIse3ZhbHVlOmIsY29uZmlndXJhYmxlOiEwfSkscihiLCJjb25zdHJ1Y3RvciIse3ZhbHVlOnksY29uZmlndXJhYmxlOiEwfSkseS5kaXNwbGF5TmFtZT1kKGIsbCwiR2VuZXJhdG9yRnVuY3Rpb24iKSxlLmlzR2VuZXJhdG9yRnVuY3Rpb249ZnVuY3Rpb24odCl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQuY29uc3RydWN0b3I7cmV0dXJuISFlJiYoZT09PXl8fCJHZW5lcmF0b3JGdW5jdGlvbiI9PT0oZS5kaXNwbGF5TmFtZXx8ZS5uYW1lKSl9LGUubWFyaz1mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZih0LGIpOih0Ll9fcHJvdG9fXz1iLGQodCxsLCJHZW5lcmF0b3JGdW5jdGlvbiIpKSx0LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKFApLHR9LGUuYXdyYXA9ZnVuY3Rpb24odCl7cmV0dXJue19fYXdhaXQ6dH19LEUoTy5wcm90b3R5cGUpLGQoTy5wcm90b3R5cGUsdSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLkFzeW5jSXRlcmF0b3I9TyxlLmFzeW5jPWZ1bmN0aW9uKHQsbixpLHIsbyl7dm9pZCAwPT09byYmKG89UHJvbWlzZSk7dmFyIGE9bmV3IE8oZih0LG4saSxyKSxvKTtyZXR1cm4gZS5pc0dlbmVyYXRvckZ1bmN0aW9uKG4pP2E6YS5uZXh0KCkudGhlbigoZnVuY3Rpb24odCl7cmV0dXJuIHQuZG9uZT90LnZhbHVlOmEubmV4dCgpfSkpfSxFKFApLGQoUCxsLCJHZW5lcmF0b3IiKSxkKFAsYywoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxkKFAsInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4iW29iamVjdCBHZW5lcmF0b3JdIn0pKSxlLmtleXM9ZnVuY3Rpb24odCl7dmFyIGU9T2JqZWN0KHQpLG49W107Zm9yKHZhciBpIGluIGUpbi5wdXNoKGkpO3JldHVybiBuLnJldmVyc2UoKSxmdW5jdGlvbiB0KCl7Zm9yKDtuLmxlbmd0aDspe3ZhciBpPW4ucG9wKCk7aWYoaSBpbiBlKXJldHVybiB0LnZhbHVlPWksdC5kb25lPSExLHR9cmV0dXJuIHQuZG9uZT0hMCx0fX0sZS52YWx1ZXM9XyxMLnByb3RvdHlwZT17Y29uc3RydWN0b3I6TCxyZXNldDpmdW5jdGlvbihlKXtpZih0aGlzLnByZXY9MCx0aGlzLm5leHQ9MCx0aGlzLnNlbnQ9dGhpcy5fc2VudD10LHRoaXMuZG9uZT0hMSx0aGlzLmRlbGVnYXRlPW51bGwsdGhpcy5tZXRob2Q9Im5leHQiLHRoaXMuYXJnPXQsdGhpcy50cnlFbnRyaWVzLmZvckVhY2goQSksIWUpZm9yKHZhciBuIGluIHRoaXMpInQiPT09bi5jaGFyQXQoMCkmJmkuY2FsbCh0aGlzLG4pJiYhaXNOYU4oK24uc2xpY2UoMSkpJiYodGhpc1tuXT10KX0sc3RvcDpmdW5jdGlvbigpe3RoaXMuZG9uZT0hMDt2YXIgdD10aGlzLnRyeUVudHJpZXNbMF0uY29tcGxldGlvbjtpZigidGhyb3ciPT09dC50eXBlKXRocm93IHQuYXJnO3JldHVybiB0aGlzLnJ2YWx9LGRpc3BhdGNoRXhjZXB0aW9uOmZ1bmN0aW9uKGUpe2lmKHRoaXMuZG9uZSl0aHJvdyBlO3ZhciBuPXRoaXM7ZnVuY3Rpb24gcihpLHIpe3JldHVybiBzLnR5cGU9InRocm93IixzLmFyZz1lLG4ubmV4dD1pLHImJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksISFyfWZvcih2YXIgbz10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7bz49MDstLW8pe3ZhciBhPXRoaXMudHJ5RW50cmllc1tvXSxzPWEuY29tcGxldGlvbjtpZigicm9vdCI9PT1hLnRyeUxvYylyZXR1cm4gcigiZW5kIik7aWYoYS50cnlMb2M8PXRoaXMucHJldil7dmFyIGM9aS5jYWxsKGEsImNhdGNoTG9jIiksdT1pLmNhbGwoYSwiZmluYWxseUxvYyIpO2lmKGMmJnUpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX1lbHNlIGlmKGMpe2lmKHRoaXMucHJldjxhLmNhdGNoTG9jKXJldHVybiByKGEuY2F0Y2hMb2MsITApfWVsc2V7aWYoIXUpdGhyb3cgRXJyb3IoInRyeSBzdGF0ZW1lbnQgd2l0aG91dCBjYXRjaCBvciBmaW5hbGx5Iik7aWYodGhpcy5wcmV2PGEuZmluYWxseUxvYylyZXR1cm4gcihhLmZpbmFsbHlMb2MpfX19fSxhYnJ1cHQ6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO24+PTA7LS1uKXt2YXIgcj10aGlzLnRyeUVudHJpZXNbbl07aWYoci50cnlMb2M8PXRoaXMucHJldiYmaS5jYWxsKHIsImZpbmFsbHlMb2MiKSYmdGhpcy5wcmV2PHIuZmluYWxseUxvYyl7dmFyIG89cjticmVha319byYmKCJicmVhayI9PT10fHwiY29udGludWUiPT09dCkmJm8udHJ5TG9jPD1lJiZlPD1vLmZpbmFsbHlMb2MmJihvPW51bGwpO3ZhciBhPW8/by5jb21wbGV0aW9uOnt9O3JldHVybiBhLnR5cGU9dCxhLmFyZz1lLG8/KHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLm5leHQ9by5maW5hbGx5TG9jLHYpOnRoaXMuY29tcGxldGUoYSl9LGNvbXBsZXRlOmZ1bmN0aW9uKHQsZSl7aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4iYnJlYWsiPT09dC50eXBlfHwiY29udGludWUiPT09dC50eXBlP3RoaXMubmV4dD10LmFyZzoicmV0dXJuIj09PXQudHlwZT8odGhpcy5ydmFsPXRoaXMuYXJnPXQuYXJnLHRoaXMubWV0aG9kPSJyZXR1cm4iLHRoaXMubmV4dD0iZW5kIik6Im5vcm1hbCI9PT10LnR5cGUmJmUmJih0aGlzLm5leHQ9ZSksdn0sZmluaXNoOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciBuPXRoaXMudHJ5RW50cmllc1tlXTtpZihuLmZpbmFsbHlMb2M9PT10KXJldHVybiB0aGlzLmNvbXBsZXRlKG4uY29tcGxldGlvbixuLmFmdGVyTG9jKSxBKG4pLHZ9fSxjYXRjaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi50cnlMb2M9PT10KXt2YXIgaT1uLmNvbXBsZXRpb247aWYoInRocm93Ij09PWkudHlwZSl7dmFyIHI9aS5hcmc7QShuKX1yZXR1cm4gcn19dGhyb3cgRXJyb3IoImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdCIpfSxkZWxlZ2F0ZVlpZWxkOmZ1bmN0aW9uKGUsbixpKXtyZXR1cm4gdGhpcy5kZWxlZ2F0ZT17aXRlcmF0b3I6XyhlKSxyZXN1bHROYW1lOm4sbmV4dExvYzppfSwibmV4dCI9PT10aGlzLm1ldGhvZCYmKHRoaXMuYXJnPXQpLHZ9fSxlfWZ1bmN0aW9uIHModCxlLG4saSxyLG8sYSl7dHJ5e3ZhciBzPXRbb10oYSksYz1zLnZhbHVlfWNhdGNoKHQpe3JldHVybiB2b2lkIG4odCl9cy5kb25lP2UoYyk6UHJvbWlzZS5yZXNvbHZlKGMpLnRoZW4oaSxyKX1mdW5jdGlvbiBjKHQpe3JldHVybiBmdW5jdGlvbigpe3ZhciBlPXRoaXMsbj1hcmd1bWVudHM7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihpLHIpe3ZhciBvPXQuYXBwbHkoZSxuKTtmdW5jdGlvbiBhKHQpe3MobyxpLHIsYSxjLCJuZXh0Iix0KX1mdW5jdGlvbiBjKHQpe3MobyxpLHIsYSxjLCJ0aHJvdyIsdCl9YSh2b2lkIDApfSkpfX1lLmRlZmF1bHQ9e25hbWVzcGFjZWQ6ITAsc3RhdGU6e2Jhc2VVcmw6Ii92MS9rYiIsaWQ6bnVsbCxpdGVtczpbXSxvcHRpb25zOltdLGxvYWRpbmc6e2luZGV4OiExLHNob3c6ITEsc2VhcmNoOiExfSxzZWxlY3RlZDp7fSxpc0xvYWRpbmdDb2RlTWlycm9yOiExLGlzQ29kZU1pcnJvckxvYWRlZDohMSxzZWFyY2hEYXRhOntxdWVyeTpudWxsLHJlc3VsdHM6W10saGFzTmV4dDohMSx0b2tlbjpudWxsLHRvdGFsOjAsZXJyb3I6ITEsbGlua1RhcmdldDoic2VsZiJ9LHNpdGVJZDpudWxsLHNjcm9sbFBvc2l0aW9uOjB9LGdldHRlcnM6e2l0ZW1zOmZ1bmN0aW9uKHQpe3JldHVybiB0Lml0ZW1zfSxpc0xvYWRpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0LmxvYWRpbmdbZV19fSxzZWxlY3RlZDpmdW5jdGlvbih0KXtyZXR1cm4gdC5zZWxlY3RlZH0sb3B0aW9uczpmdW5jdGlvbih0KXtyZXR1cm4gdC5vcHRpb25zfSxpc0xvYWRpbmdDb2RlTWlycm9yOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzTG9hZGluZ0NvZGVNaXJyb3J9LGlzQ29kZU1pcnJvckxvYWRlZDpmdW5jdGlvbih0KXtyZXR1cm4gdC5pc0NvZGVNaXJyb3JMb2FkZWR9LHNlYXJjaERhdGE6ZnVuY3Rpb24odCl7cmV0dXJuIHQuc2VhcmNoRGF0YX0sc2l0ZUlkOmZ1bmN0aW9uKHQpe3JldHVybiB0LnNpdGVJZH0sc2Nyb2xsUG9zaXRpb246ZnVuY3Rpb24odCl7cmV0dXJuIHQuc2Nyb2xsUG9zaXRpb259fSxhY3Rpb25zOntzaG93OmZ1bmN0aW9uKCl7dmFyIHQ9YyhhKCkubWFyaygoZnVuY3Rpb24gdChlLG4pe3ZhciByLG8scztyZXR1cm4gYSgpLndyYXAoKGZ1bmN0aW9uKHQpe2Zvcig7Oylzd2l0Y2godC5wcmV2PXQubmV4dCl7Y2FzZSAwOmlmKHI9ZS5zdGF0ZSxvPWUuY29tbWl0LHM9ZS5yb290R2V0dGVycyxuLnNpdGVJZCYmbi5hcnRpY2xlSWQpe3QubmV4dD0zO2JyZWFrfXRocm93IlBsZWFzZSBzZXQgYXJ0aWNsZSBJRCBiZWZvcmUgY2FsbGluZyB0aGUgYWN0aW9uLnNob3ciO2Nhc2UgMzpyZXR1cm4gbygic2V0TG9hZGluZyIse2FjdGlvbjoic2hvdyIsdmFsdWU6ITB9KSx0Lm5leHQ9NixpLmEuZ2V0KCIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIikuY29uY2F0KHIuYmFzZVVybCkuY29uY2F0KG4udXJsKSx7cHJvcGVydHlJZDpzWyJwcm9wZXJ0eS9pZCJdLHNpdGVJZDpuLnNpdGVJZCxhcnRpY2xlSWQ6bi5hcnRpY2xlSWR9LG51bGwsKGZ1bmN0aW9uKHQsZSl7aWYodCl0aHJvdyBvKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJzaG93Iix2YWx1ZTohMX0pLHQ7ZS5kYXRhLnNpdGVJZD1uLnNpdGVJZCxvKCJzZXRTZWxlY3RlZCIsZS5kYXRhKSxvKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJzaG93Iix2YWx1ZTohMX0pfSkpO2Nhc2UgNjpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQpfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpLHVwZGF0ZU9wdGlvbnM6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldE9wdGlvbnMiLGUpfSx1cGRhdGVJZDpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0SWQiLGUpfSx1bnNldFNlbGVjdGVkOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgic2V0U2VsZWN0ZWQiLHt9KX0sc2V0Q29kZU1pcnJvcklzTG9hZGluZzpmdW5jdGlvbih0KXt2YXIgZT10LnN0YXRlO2UuaXNDb2RlTWlycm9yTG9hZGVkPSExLGUuaXNMb2FkaW5nQ29kZU1pcnJvcj0hMH0sc2V0Q29kZU1pcnJvcklzTG9hZGVkOmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGU7ZS5pc0NvZGVNaXJyb3JMb2FkZWQ9ITAsZS5pc0xvYWRpbmdDb2RlTWlycm9yPSExfSxzZWFyY2hBcnRpY2xlczpmdW5jdGlvbigpe3ZhciB0PWMoYSgpLm1hcmsoKGZ1bmN0aW9uIHQoZSxuKXt2YXIgcixvLHMsYyx1O3JldHVybiBhKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6aWYocj1lLmNvbW1pdCxvPWUucm9vdEdldHRlcnMscz1lLnN0YXRlLGM9ZS5kaXNwYXRjaCxyKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJzZWFyY2giLHZhbHVlOiEwfSksbiYmdm9pZCAwIT09bi5zaXRlSWQmJnIoInNldFNpdGVJZCIsbi5zaXRlSWQpLG4mJnZvaWQgMCE9PW4uc2VhcmNoJiZyKCJzZXRTZWFyY2hRdWVyeSIsbi5zZWFyY2gpLHMuc2VhcmNoRGF0YS5xdWVyeSl7dC5uZXh0PTc7YnJlYWt9cmV0dXJuIHIoInNldExvYWRpbmciLHthY3Rpb246InNlYXJjaCIsdmFsdWU6ITF9KSx0LmFicnVwdCgicmV0dXJuIik7Y2FzZSA3OnJldHVybiB1PXtwcm9wZXJ0eUlkOm9bInByb3BlcnR5L2lkIl0sc2l0ZUlkOnMuc2l0ZUlkLHF1ZXJ5OnMuc2VhcmNoRGF0YS5xdWVyeSxsaW1pdDpuJiZuLmxpbWl0P24ubGltaXQ6MTAsZnJvbTpzLnNlYXJjaERhdGEucmVzdWx0cy5sZW5ndGh9LHQubmV4dD0xMCxpLmEuZ2V0KCIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL3YxL2tiL2FydGljbGUvc2VhcmNoIiksdSxudWxsLChmdW5jdGlvbih0LGUpe3IoInNldExvYWRpbmciLHthY3Rpb246InNlYXJjaCIsdmFsdWU6ITF9KSx0P3Muc2VhcmNoRGF0YS5lcnJvcj0hMDoocigic2V0U2VhcmNoUmVzdWx0cyIsZS5kYXRhKSxjKCJzZWFyY2hQZXJmb3JtZWRBbmFseXRpY3MiKSl9KSk7Y2FzZSAxMDpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQpfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpLGFydGljbGVDbGlja2VkQW5hbHl0aWNzOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zdGF0ZTtpLmEucG9zdCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIsIi92MS9rYi9hbmFseXRpY3Mvc2VhcmNoLXJlc3VsdC1jbGlja2VkIikse3Rva2VuOm4uc2VhcmNoRGF0YS50b2tlbixhcnRpY2xlSWQ6ZX0sbnVsbCwoZnVuY3Rpb24odCxlKXtpZih0KXJldHVybiBlfSksITEsITApfSxzZWFyY2hQZXJmb3JtZWRBbmFseXRpY3M6ZnVuY3Rpb24odCl7dmFyIGU9dC5zdGF0ZTtpLmEucG9zdCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIsIi92MS9rYi9hbmFseXRpY3Mvc2VhcmNoLXBlcmZvcm1lZCIpLHt0b2tlbjplLnNlYXJjaERhdGEudG9rZW59LG51bGwsKGZ1bmN0aW9uKHQsZSl7aWYodClyZXR1cm4gZX0pLCExLCEwKX0scmVzZXRTdGF0ZTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0RGF0YSIpfSxzZXRTZWFyY2hMb2FkaW5nOmZ1bmN0aW9uKHQsZSl7KDAsdC5jb21taXQpKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJzZWFyY2giLHZhbHVlOmV9KX0sdXBkYXRlU2VhcmNoRGF0YUxpbmtUYXJnZXQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldFNlYXJjaERhdGFMaW5rVGFyZ2V0IixlKX0sdW5zZXRTZWFyY2hEYXRhOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgicmVzZXRTZWFyY2hRdWVyeSIpfSxzZXRTY3JvbGxQb3NpdGlvbjpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgibW9kaWZ5U2Nyb2xsUG9zaXRpb24iLGUpfSx1bnNldFNjcm9sbFBvc2l0aW9uOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgibW9kaWZ5U2Nyb2xsUG9zaXRpb24iLDApfSx1bnNldFNlYXJjaERhdGFSZXN1bHRzOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgic29mdFJlc2V0U2VhcmNoRGF0YSIpfX0sbXV0YXRpb25zOntzZXRJZDpmdW5jdGlvbih0LGUpe3QuaWQ9ZX0sc2V0SXRlbXM6ZnVuY3Rpb24odCxlKXt0Lml0ZW1zPWV9LHNldExvYWRpbmc6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLmFjdGlvbixpPWUudmFsdWU7dC5sb2FkaW5nW25dPWl9LHNldFNlbGVjdGVkOmZ1bmN0aW9uKHQsZSl7dC5zZWxlY3RlZD1lfSxzZXRPcHRpb25zOmZ1bmN0aW9uKHQsZSl7dC5vcHRpb25zPWV9LHNldFNlYXJjaFJlc3VsdHM6ZnVuY3Rpb24odCxlKXtlLmFydGljbGVzLmZvckVhY2goKGZ1bmN0aW9uKHQpe2lmKHQuaGlnaGxpZ2h0KXtpZih0LmhpZ2hsaWdodC50aXRsZSYmdC5oaWdobGlnaHQudGl0bGUubGVuZ3RoKWZvcih2YXIgZT0wO2U8dC5oaWdobGlnaHQudGl0bGUubGVuZ3RoO2UrKyl0LnRpdGxlPXIuYS5yYXdFbmNvZGUodC5oaWdobGlnaHQudGl0bGVbZV0pLnJlcGxhY2UoL1xbZW1cXS9naSwnPHNwYW4gY2xhc3M9InRhd2stdGV4dC1ib2xkIj4nKS5yZXBsYWNlKC9cW1wvZW1cXS9naSwiPC9zcGFuPiIpO2lmKHQuaGlnaGxpZ2h0LnN1YnRpdGxlJiZ0LmhpZ2hsaWdodC5zdWJ0aXRsZS5sZW5ndGgpZm9yKHZhciBuPTA7bjx0LmhpZ2hsaWdodC5zdWJ0aXRsZS5sZW5ndGg7bisrKXQuc3VidGl0bGU9ci5hLnJhd0VuY29kZSh0LmhpZ2hsaWdodC5zdWJ0aXRsZVtuXSkucmVwbGFjZSgvXFtlbV0vZ2ksJzxzcGFuIGNsYXNzPSJ0YXdrLXRleHQtYm9sZCI+JykucmVwbGFjZSgvXFtcL2VtXF0vZ2ksIjwvc3Bhbj4iKX19KSksdC5zZWFyY2hEYXRhLnJlc3VsdHM9dC5zZWFyY2hEYXRhLnJlc3VsdHMuY29uY2F0KGUuYXJ0aWNsZXMpLHQuc2VhcmNoRGF0YS5oYXNOZXh0PWUudG90YWw+dC5zZWFyY2hEYXRhLnJlc3VsdHMubGVuZ3RoLHQuc2VhcmNoRGF0YS50b2tlbj1lLnRva2VuLHQuc2VhcmNoRGF0YS50b3RhbD1lLnRvdGFsLHQuc2VhcmNoRGF0YS5lcnJvcj0hMX0sc2V0U2VhcmNoUXVlcnk6ZnVuY3Rpb24odCxlKXt0LnNlYXJjaERhdGEucXVlcnk9ZSx0LnNlYXJjaERhdGEucmVzdWx0cz1bXSx0LnNlYXJjaERhdGEuaGFzTmV4dD0hMSx0LnNlYXJjaERhdGEudG9rZW49bnVsbCx0LnNlYXJjaERhdGEudG90YWw9MCx0LnNlYXJjaERhdGEuZXJyb3I9ITF9LHNldFNpdGVJZDpmdW5jdGlvbih0LGUpe3Quc2l0ZUlkPWV9LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e2Jhc2VVcmw6Ii92MS9rYiIsaWQ6bnVsbCxpdGVtczpbXSxvcHRpb25zOltdLGxvYWRpbmc6e2luZGV4OiExLHNob3c6ITEsc2VhcmNoOiExfSxzZWxlY3RlZDp7fSxpc0xvYWRpbmdDb2RlTWlycm9yOiExLGlzQ29kZU1pcnJvckxvYWRlZDohMSxzZWFyY2hEYXRhOntxdWVyeTpudWxsLHJlc3VsdHM6W10saGFzTmV4dDohMSx0b2tlbjpudWxsLHRvdGFsOjAsZXJyb3I6ITEsbGlua1RhcmdldDoic2VsZiJ9LHNpdGVJZDpudWxsLHNjcm9sbFBvc2l0aW9uOjB9LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO3Rbcl09ZVtyXX19LHNldFNlYXJjaERhdGFMaW5rVGFyZ2V0OmZ1bmN0aW9uKHQsZSl7dC5zZWFyY2hEYXRhLmxpbmtUYXJnZXQ9ZX0scmVzZXRTZWFyY2hRdWVyeTpmdW5jdGlvbih0KXt0LnNlYXJjaERhdGEucXVlcnk9bnVsbCx0LnNlYXJjaERhdGEucmVzdWx0cz1bXSx0LnNlYXJjaERhdGEuaGFzTmV4dD0hMSx0LnNlYXJjaERhdGEudG9rZW49bnVsbCx0LnNlYXJjaERhdGEudG90YWw9MCx0LnNlYXJjaERhdGEuZXJyb3I9ITEsdC5zZWFyY2hEYXRhLmxpbmtUYXJnZXQ9InNlbGYifSxtb2RpZnlTY3JvbGxQb3NpdGlvbjpmdW5jdGlvbih0LGUpe3Quc2Nyb2xsUG9zaXRpb249ZX0sc29mdFJlc2V0U2VhcmNoRGF0YTpmdW5jdGlvbih0KXt0LnNlYXJjaERhdGEucmVzdWx0cz1bXSx0LnNlYXJjaERhdGEuaGFzTmV4dD0hMSx0LnNlYXJjaERhdGEudG90YWw9MCx0LnNlYXJjaERhdGEuZXJyb3I9ITF9fX19LGIyNTA6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuLnIoZSk7dmFyIGk9bigiZmFkMiIpLHI9bigiN2Y0NiIpLG89bigiOTFjZSIpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7ZW1haWw6bnVsbCxkaXNwbGF5TmFtZTpudWxsLG5hbWU6bnVsbCx0cmFuc2NyaXB0RW1haWw6bnVsbCx1dWlkOm51bGwsdXVpZFZlcjowLHZpc2l0b3JJZDpudWxsfSxnZXR0ZXJzOntnZXRFbWFpbFZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0LmVtYWlsfHx0LnRyYW5zY3JpcHRFbWFpbH0sbmFtZTpmdW5jdGlvbih0KXtyZXR1cm4gaS5hLmlzR2VuZXJhdGVkTmFtZSh0Lm5hbWUpPyIiOnQubmFtZX0sdXVpZFZlcjpmdW5jdGlvbih0KXtyZXR1cm4gdC51dWlkVmVyfSx1dWlkOmZ1bmN0aW9uKHQpe3JldHVybiB0LnV1aWR9LHRyYW5zY3JpcHRFbWFpbDpmdW5jdGlvbih0KXtyZXR1cm4gdC50cmFuc2NyaXB0RW1haWx9LHZpc2l0b3JJZDpmdW5jdGlvbih0KXtyZXR1cm4gdC52aXNpdG9ySWR9fSxhY3Rpb25zOnt1cGRhdGVVVUlEOmZ1bmN0aW9uKHQsZSl7KDAsdC5jb21taXQpKCJzZXRWaXNpdG9yVVVJRCIse3V2ZXI6ZS51dix1dWlkOmUudX0pLG8uYS5zdG9yZVVVSUQoZS51LGUudXYsZS5kb21haW4pfSx1cGRhdGVWaXNpdG9ySW5mb3JtYXRpb246ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdCxpPXQuc3RhdGUsbz17dmlzaXRvcklkOmkudmlzaXRvcklkLG5hbWU6aS5uYW1lLGVtYWlsOmkuZW1haWwsdHJhbnNjcmlwdEVtYWlsOmkudHJhbnNjcmlwdEVtYWlsfTtlLm4mJnIuYS5pc1N0cmluZyhlLm4pJiYoby5uYW1lPWUubiksZS50ZSYmci5hLmlzU3RyaW5nKGUudGUpJiYoby50cmFuc2NyaXB0RW1haWw9ZS50ZSksZS5lJiZyLmEuaXNTdHJpbmcoZS5lKSYmKG8uZW1haWw9ZS5lKSxlLnZpZCYmKG8udmlzaXRvcklkPWUudmlkKSxuKCJzZXRWaXNpdG9ySW5mb3JtYXRpb24iLG8pfSxjbGVhclZpc2l0b3JJbmZvcm1hdGlvbjpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInNldFZpc2l0b3JJbmZvcm1hdGlvbiIse25hbWU6dm9pZCAwLGVtYWlsOnZvaWQgMCx0cmFuc2NyaXB0RW1haWw6dm9pZCAwfSl9LHJlc2V0U3RhdGU6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJ1bnNldERhdGEiKX19LG11dGF0aW9uczp7c2V0VmlzaXRvclVVSUQ6ZnVuY3Rpb24odCxlKXt0LnV1aWRWZXI9ZS51dmVyfHwwLHQudXVpZD1lLnV1aWR9LHNldFZpc2l0b3JJbmZvcm1hdGlvbjpmdW5jdGlvbih0LGUpe3QudmlzaXRvcklkPWUudmlzaXRvcklkLHQubmFtZT1yLmEucmF3RGVjb2RlKGUubmFtZSksdC5kaXNwbGF5TmFtZT1pLmEucGFyc2VWaXNpdG9yTmFtZShlLm5hbWUpLHQuZW1haWw9ZS5lbWFpbCx0LnRyYW5zY3JpcHRFbWFpbD1lLnRyYW5zY3JpcHRFbWFpbH0sdW5zZXREYXRhOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT17ZW1haWw6bnVsbCxkaXNwbGF5TmFtZTpudWxsLG5hbWU6bnVsbCx0cmFuc2NyaXB0RW1haWw6bnVsbCx1dWlkOm51bGwsdXVpZFZlcjowLHZpc2l0b3JJZDpudWxsfSxuPU9iamVjdC5rZXlzKGUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXTt0W3JdPWVbcl19fX19fSxiN2NjOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiZmFkMiIpLHI9bigiOTFjZSIpLG89bigiMDI4ZSIpLGE9bigiMjRjYSIpO2Z1bmN0aW9uIHModCl7cmV0dXJuKHM9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBjKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxsKGkua2V5KSxpKX19ZnVuY3Rpb24gdSh0LGUsbil7cmV0dXJuKGU9bChlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPW4sdH1mdW5jdGlvbiBsKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXModCl8fCF0KXJldHVybiB0O3ZhciBuPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgaT1uLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1zKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXMoZSk/ZTplKyIifWUuYT1uZXcoZnVuY3Rpb24odCxlLG4pe3JldHVybiBlJiZjKHQucHJvdG90eXBlLGUpLG4mJmModCxuKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSx0fSgoZnVuY3Rpb24gdCgpe3ZhciBlPXRoaXM7aWYoZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0odGhpcyx0KSx1KHRoaXMsInRyaWdnZXJBcGlIYW5kbGVycyIsKGZ1bmN0aW9uKHQsbil7dmFyIGk9ZS5sb2NhbF9BUElbdF07aWYodm9pZCAwIT09aSl7aWYoIm9uQmVmb3JlTG9hZCI9PT10KXtpZih3aW5kb3cuVGF3a19BUEkub25CZWZvcmVMb2FkZWQpcmV0dXJuO3dpbmRvdy5UYXdrX0FQSS5vbkJlZm9yZUxvYWRlZD0hMH1lbHNlIGlmKCJvbkxvYWQiPT09dCl7aWYod2luZG93LlRhd2tfQVBJLm9uTG9hZGVkKXJldHVybjt3aW5kb3cuVGF3a19BUEkub25Mb2FkZWQ9ITB9aWYoZS5kaXNwYXRjaChpLmV2ZW50TmFtZSxuKSwiZnVuY3Rpb24iPT10eXBlb2YgaS5mdW5jKXRyeXtpLmZ1bmMobil9Y2F0Y2godCl7fWEuYS4kb24oInJlc2V0U3RhdGUiLChmdW5jdGlvbigpe3dpbmRvdy5UYXdrX0FQSS5vbkJlZm9yZUxvYWRlZD0hMSx3aW5kb3cuVGF3a19BUEkub25Mb2FkZWQ9ITF9KSl9fSkpLHUodGhpcywiZGlzcGF0Y2giLChmdW5jdGlvbih0LG4pe3ZhciBpO3QmJihpPSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuQ3VzdG9tRXZlbnQ/bmV3IEN1c3RvbUV2ZW50KHQse2RldGFpbDpufSk6bmV3IGUuQ3VzdG9tRXZlbnRJRSh0LHtkZXRhaWw6bn0pLHdpbmRvdy5kaXNwYXRjaEV2ZW50KGkpKX0pKSx1KHRoaXMsInNlY3VyZVdyYXBwZXIiLChmdW5jdGlvbih0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9e30pLGUubG9jYWxfQVBJJiZlLmxvY2FsX0FQSS52aXNpdG9yJiYoZS5sb2NhbF9BUEkudmlzaXRvci5lbWFpbCYmKHQuZW1haWw9ZS5sb2NhbF9BUEkudmlzaXRvci5lbWFpbCksZS5sb2NhbF9BUEkudmlzaXRvci5oYXNoJiYodC5oYXNoPWUubG9jYWxfQVBJLnZpc2l0b3IuaGFzaCkpLHR9KSksdSh0aGlzLCJ1bnNldFZpc2l0b3JBdHRyaWJ1dGVzIiwoZnVuY3Rpb24oKXtlLmxvY2FsX0FQSSYmZS5sb2NhbF9BUEkudmlzaXRvciYmKGUubG9jYWxfQVBJLnZpc2l0b3I9dm9pZCAwKX0pKSx0aGlzLmxvY2FsX0FQST17fSx3aW5kb3cuJF9UYXdrPXdpbmRvdy4kX1Rhd2t8fHt9LHdpbmRvdy5UYXdrX0FQST13aW5kb3cuVGF3a19BUEl8fHt9LCJvYmplY3QiPT09cyh3aW5kb3cuJF9UYXdrX0FQSSkpZm9yKHZhciBuIGluIHdpbmRvdy4kX1Rhd2tfQVBJKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh3aW5kb3cuJF9UYXdrX0FQSSxuKSYmKHdpbmRvdy5UYXdrX0FQSVtuXT13aW5kb3cuJF9UYXdrX0FQSVtuXSk7ImZ1bmN0aW9uIiE9dHlwZW9mIHdpbmRvdy5DdXN0b21FdmVudCYmKHRoaXMuQ3VzdG9tRXZlbnRJRSgpLHRoaXMuQ3VzdG9tRXZlbnRJRS5wcm90b3R5cGU9d2luZG93LkV2ZW50LnByb3RvdHlwZSksdGhpcy5pbml0KCl9KSxbe2tleToiaW5zdGFsbCIsdmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgbj1lLnN0b3JlLGk9ZS5UYXdrV2luZG93O3QucHJvdG90eXBlLiRUYXdrSlNBUEk9dGhpcyx0aGlzLnN0b3JlPW4sdGhpcy5UYXdrV2luZG93PWl9fSx7a2V5OiJDdXN0b21FdmVudElFIix2YWx1ZTpmdW5jdGlvbih0LGUpe2U9ZXx8e2J1YmJsZXM6ITEsY2FuY2VsYWJsZTohMSxkZXRhaWw6dm9pZCAwfTt2YXIgbj1kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKTtyZXR1cm4gbi5pbml0Q3VzdG9tRXZlbnQodCxlLmJ1YmJsZXMsZS5jYW5jZWxhYmxlLGUuZGV0YWlsKSxufX0se2tleToiaW5pdCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMubG9jYWxfQVBJPXtkaXNhYmxlU291bmQ6ISF3aW5kb3cuVGF3a19BUEkuZGlzYWJsZVNvdW5kLGVtYmVkZGVkOndpbmRvdy5UYXdrX0FQSS5lbWJlZGRlZHx8bnVsbCx2aXNpdG9yOndpbmRvdy5UYXdrX0FQSS52aXNpdG9yfHxudWxsLGF1dG9TdGFydDp3aW5kb3cuVGF3a19BUEkuYXV0b1N0YXJ0fHwhMCxkaXNhYmxlTW9iaWxlQmFja0hpc3Rvcnk6ISF3aW5kb3cuVGF3a19BUEkuZGlzYWJsZU1vYmlsZUJhY2tIaXN0b3J5LGRpc2FibGVXaWRnZXRGb250OndpbmRvdy5UYXdrX0FQSS5kaXNhYmxlV2lkZ2V0Rm9udHx8ITEsaXNXaW5kb3dlZDohIXdpbmRvdy5UYXdrX0FQSS5pc1BvcHVwLGN1c3RvbVN0eWxlOndpbmRvdy5UYXdrX0FQSS5jdXN0b21TdHlsZXx8bnVsbCxvbkJlZm9yZUxvYWQ6e2V2ZW50TmFtZToidGF3a0JlZm9yZUxvYWQiLGZ1bmM6d2luZG93LlRhd2tfQVBJLm9uQmVmb3JlTG9hZH0sb25Mb2FkOntldmVudE5hbWU6InRhd2tMb2FkIixmdW5jOndpbmRvdy5UYXdrX0FQSS5vbkxvYWR9LG9uU3RhdHVzQ2hhbmdlOntldmVudE5hbWU6InRhd2tTdGF0dXNDaGFuZ2UiLGZ1bmM6d2luZG93LlRhd2tfQVBJLm9uU3RhdHVzQ2hhbmdlfSxvbkNoYXRNYXhpbWl6ZWQ6e2V2ZW50TmFtZToidGF3a0NoYXRNYXhpbWl6ZWQiLGZ1bmM6d2luZG93LlRhd2tfQVBJLm9uQ2hhdE1heGltaXplZH0sb25DaGF0TWluaW1pemVkOntldmVudE5hbWU6InRhd2tDaGF0TWluaW1pemVkIixmdW5jOndpbmRvdy5UYXdrX0FQSS5vbkNoYXRNaW5pbWl6ZWR9LG9uQ2hhdEhpZGRlbjp7ZXZlbnROYW1lOiJ0YXdrQ2hhdEhpZGRlbiIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0SGlkZGVufSxvbkNoYXRTdGFydGVkOntldmVudE5hbWU6InRhd2tDaGF0U3RhcnRlZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0U3RhcnRlZH0sb25DaGF0RW5kZWQ6e2V2ZW50TmFtZToidGF3a0NoYXRFbmRlZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0RW5kZWR9LG9uUHJlY2hhdFN1Ym1pdDp7ZXZlbnROYW1lOiJ0YXdrUHJlY2hhdFN1Ym1pdCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25QcmVjaGF0U3VibWl0fSxvbk9mZmxpbmVTdWJtaXQ6e2V2ZW50TmFtZToidGF3a09mZmxpbmVTdWJtaXQiLGZ1bmM6d2luZG93LlRhd2tfQVBJLm9uT2ZmbGluZVN1Ym1pdH0sb25DaGF0TWVzc2FnZVZpc2l0b3I6e2V2ZW50TmFtZToidGF3a0NoYXRNZXNzYWdlVmlzaXRvciIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0TWVzc2FnZVZpc2l0b3J9LG9uQ2hhdE1lc3NhZ2VBZ2VudDp7ZXZlbnROYW1lOiJ0YXdrQ2hhdE1lc3NhZ2VBZ2VudCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0TWVzc2FnZUFnZW50fSxvbkNoYXRNZXNzYWdlU3lzdGVtOntldmVudE5hbWU6InRhd2tDaGF0TWVzc2FnZVN5c3RlbSIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25DaGF0TWVzc2FnZVN5c3RlbX0sb25BZ2VudEpvaW5DaGF0OntldmVudE5hbWU6InRhd2tBZ2VudEpvaW5DaGF0IixmdW5jOndpbmRvdy5UYXdrX0FQSS5vbkFnZW50Sm9pbkNoYXR9LG9uQWdlbnRMZWF2ZUNoYXQ6e2V2ZW50TmFtZToidGF3a0FnZW50TGVhdmVDaGF0IixmdW5jOndpbmRvdy5UYXdrX0FQSS5vbkFnZW50TGVhdmVDaGF0fSxvbkNoYXRTYXRpc2ZhY3Rpb246e2V2ZW50TmFtZToidGF3a0NoYXRTYXRpc2ZhY3Rpb24iLGZ1bmM6d2luZG93LlRhd2tfQVBJLm9uQ2hhdFNhdGlzZmFjdGlvbn0sb25WaXNpdG9yTmFtZUNoYW5nZWQ6e2V2ZW50TmFtZToidGF3a1Zpc2l0b3JOYW1lQ2hhbmdlZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25WaXNpdG9yTmFtZUNoYW5nZWR9LG9uRmlsZVVwbG9hZDp7ZXZlbnROYW1lOiJ0YXdrRmlsZVVwbG9hZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25GaWxlVXBsb2FkfSxvblRhZ3NVcGRhdGVkOntldmVudE5hbWU6InRhd2tUYWdzVXBkYXRlZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25UYWdzVXBkYXRlZH0sb25VbnJlYWRDb3VudENoYW5nZWQ6e2V2ZW50TmFtZToidGF3a1VucmVhZENvdW50Q2hhbmdlZCIsZnVuYzp3aW5kb3cuVGF3a19BUEkub25VbnJlYWRDb3VudENoYW5nZWR9fSx3aW5kb3cuJF9UYXdrLm1heGltaXplPXdpbmRvdy5UYXdrX0FQSS5tYXhpbWl6ZT1mdW5jdGlvbigpe3dpbmRvdy4kX1Rhd2sucmVhZHl8fHQuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlQ2hhdFdpbmRvd1N0YXRlIiwibWF4Iil9LHdpbmRvdy4kX1Rhd2subWluaW1pemU9d2luZG93LlRhd2tfQVBJLm1pbmltaXplPWZ1bmN0aW9uKCl7d2luZG93LiRfVGF3ay5yZWFkeXx8dC5zdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi91cGRhdGVDaGF0V2luZG93U3RhdGUiLCJtaW4iKX0sd2luZG93LiRfVGF3ay50b2dnbGU9d2luZG93LlRhd2tfQVBJLnRvZ2dsZT1mdW5jdGlvbigpe3dpbmRvdy4kX1Rhd2sucmVhZHl8fHQuc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vdG9nZ2xlV2lkZ2V0Iil9LHdpbmRvdy4kX1Rhd2sucG9wdXA9d2luZG93LlRhd2tfQVBJLnBvcHVwPWZ1bmN0aW9uKCl7d2luZG93LiRfVGF3ay5yZWFkeXx8dC5UYXdrV2luZG93LnBvcG91dFdpZGdldCgpfSx3aW5kb3cuJF9UYXdrLmdldFdpbmRvd1R5cGU9d2luZG93LlRhd2tfQVBJLmdldFdpbmRvd1R5cGU9ZnVuY3Rpb24oKXtpZighd2luZG93LiRfVGF3ay5yZWFkeSlyZXR1cm4gdC5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNFbWJlZGRlZCJdPyJlbWJlZCI6dC5zdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNXaW5kb3dlZCJdPyJwb3B1cCI6ImlubGluZSJ9LHdpbmRvdy4kX1Rhd2suc2hvd1dpZGdldD13aW5kb3cuVGF3a19BUEkuc2hvd1dpZGdldD1mdW5jdGlvbigpe3dpbmRvdy4kX1Rhd2sucmVhZHl8fHQuc3RvcmUuY29tbWl0KCJ3aWRnZXQvc2V0VmlzaWJpbGl0eSIsITApfSx3aW5kb3cuJF9UYXdrLmhpZGVXaWRnZXQ9d2luZG93LlRhd2tfQVBJLmhpZGVXaWRnZXQ9ZnVuY3Rpb24oKXt3aW5kb3cuJF9UYXdrLnJlYWR5fHx0LnN0b3JlLmNvbW1pdCgid2lkZ2V0L3NldFZpc2liaWxpdHkiLCExKX0sd2luZG93LiRfVGF3ay50b2dnbGVWaXNpYmlsaXR5PXdpbmRvdy5UYXdrX0FQSS50b2dnbGVWaXNpYmlsaXR5PWZ1bmN0aW9uKCl7d2luZG93LiRfVGF3ay5yZWFkeXx8dC5zdG9yZS5kaXNwYXRjaCgid2lkZ2V0L3RvZ2dsZVZpc2liaWxpdHkiKX0sd2luZG93LiRfVGF3ay5nZXRTdGF0dXM9d2luZG93LlRhd2tfQVBJLmdldFN0YXR1cz1mdW5jdGlvbigpe2lmKCF3aW5kb3cuJF9UYXdrLnJlYWR5KXJldHVybiB0LnN0b3JlLmdldHRlcnNbInNlc3Npb24vcGFnZVN0YXR1cyJdfSx3aW5kb3cuJF9UYXdrLmlzQ2hhdE1heGltaXplZD13aW5kb3cuVGF3a19BUEkuaXNDaGF0TWF4aW1pemVkPWZ1bmN0aW9uKCl7aWYoIXdpbmRvdy4kX1Rhd2sucmVhZHkpcmV0dXJuIm1heCI9PT10LnN0b3JlLmdldHRlcnNbInNlc3Npb24vY2hhdFdpbmRvd1N0YXRlIl19LHdpbmRvdy4kX1Rhd2suaXNDaGF0TWluaW1pemVkPXdpbmRvdy5UYXdrX0FQSS5pc0NoYXRNaW5pbWl6ZWQ9ZnVuY3Rpb24oKXtpZighd2luZG93LiRfVGF3ay5yZWFkeSlyZXR1cm4ibWluIj09PXQuc3RvcmUuZ2V0dGVyc1sic2Vzc2lvbi9jaGF0V2luZG93U3RhdGUiXX0sd2luZG93LiRfVGF3ay5pc0NoYXRIaWRkZW49d2luZG93LlRhd2tfQVBJLmlzQ2hhdEhpZGRlbj1mdW5jdGlvbigpe2lmKCF3aW5kb3cuJF9UYXdrLnJlYWR5KXJldHVybiF0LnN0b3JlLmdldHRlcnNbIndpZGdldC9pc1Zpc2libGUiXX0sd2luZG93LiRfVGF3ay5pc0NoYXRPbmdvaW5nPXdpbmRvdy5UYXdrX0FQSS5pc0NoYXRPbmdvaW5nPWZ1bmN0aW9uKCl7aWYoIXdpbmRvdy4kX1Rhd2sucmVhZHkpcmV0dXJuIHQuc3RvcmUuZ2V0dGVyc1siY2hhdC9pc0NoYXRPbmdvaW5nIl19LHdpbmRvdy4kX1Rhd2suaXNWaXNpdG9yRW5nYWdlZD13aW5kb3cuVGF3a19BUEkuaXNWaXNpdG9yRW5nYWdlZD1mdW5jdGlvbigpe2lmKCF3aW5kb3cuJF9UYXdrLnJlYWR5KXJldHVybiB0LnN0b3JlLmdldHRlcnNbImNoYXQvaXNWaXNpdG9yRW5nYWdlZCJdfSx3aW5kb3cuJF9UYXdrLmVuZENoYXQ9d2luZG93LlRhd2tfQVBJLmVuZENoYXQ9ZnVuY3Rpb24oKXt3aW5kb3cuJF9UYXdrLnJlYWR5fHx0LnN0b3JlLmRpc3BhdGNoKCJjaGF0L2VuZENoYXQiKX0sd2luZG93LiRfVGF3ay5hZGRFdmVudD13aW5kb3cuVGF3a19BUEkuYWRkRXZlbnQ9ZnVuY3Rpb24odCxlLG4pe3dpbmRvdy4kX1Rhd2sucmVhZHl8fG8uYS5zZW5kQXBpRXZlbnQodCxlLG4pfSx3aW5kb3cuJF9UYXdrLnNldEF0dHJpYnV0ZXM9d2luZG93LlRhd2tfQVBJLnNldEF0dHJpYnV0ZXM9ZnVuY3Rpb24oZSxuKXt0LmxvY2FsX0FQSS52aXNpdG9yPXQubG9jYWxfQVBJLnZpc2l0b3J8fHt9LGUubmFtZSYmKHQubG9jYWxfQVBJLnZpc2l0b3IubmFtZT1lLm5hbWUpLGUuZW1haWwmJih0LmxvY2FsX0FQSS52aXNpdG9yLmVtYWlsPWUuZW1haWwpLGUuaGFzaCYmKHQubG9jYWxfQVBJLnZpc2l0b3IuaGFzaD1lLmhhc2gpLG8uYS5zZW5kQXBpQXR0cmlidXRlcyhlLG4pfSx3aW5kb3cuJF9UYXdrLmFkZFRhZ3M9d2luZG93LlRhd2tfQVBJLmFkZFRhZ3M9ZnVuY3Rpb24odCxlKXtvLmEuYWRkVGFncyh0LGUpfSx3aW5kb3cuJF9UYXdrLnJlbW92ZVRhZ3M9d2luZG93LlRhd2tfQVBJLnJlbW92ZVRhZ3M9ZnVuY3Rpb24odCxlKXtvLmEucmVtb3ZlVGFncyh0LGUpfSx3aW5kb3cuJF9UYXdrLndpZGdldFBvc2l0aW9uPXdpbmRvdy5UYXdrX0FQSS53aWRnZXRQb3NpdGlvbj1mdW5jdGlvbigpe2lmKCF3aW5kb3cuJF9UYXdrLnJlYWR5KXJldHVybiB0LnN0b3JlLmdldHRlcnNbIndpZGdldC9kZXNrdG9wVmlzaWJpbGl0eSJdP3Quc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2Rlc2t0b3BWaXNpYmlsaXR5Il0ucG9zaXRpb246bnVsbH0sd2luZG93LiRfVGF3ay5sb2dpbj13aW5kb3cuVGF3a19BUEkubG9naW49ZnVuY3Rpb24oKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sZT1hcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMDtpZighd2luZG93LiRfVGF3ay5yZWFkeSl7ZT1lfHxmdW5jdGlvbigpe307dmFyIG49aS5hLmZvcm1hdFZpc2l0b3JMb2dpbkRhdGEodCk7ci5hLmxvZ2luKG4sZSl9fSx3aW5kb3cuJF9UYXdrLmxvZ291dD13aW5kb3cuVGF3a19BUEkubG9nb3V0PWZ1bmN0aW9uKHQpe3dpbmRvdy4kX1Rhd2sucmVhZHl8fCh0PXR8fGZ1bmN0aW9uKCl7fSxyLmEubG9nb3V0KHQpKX0sd2luZG93LiRfVGF3ay5zd2l0Y2hXaWRnZXQ9d2luZG93LlRhd2tfQVBJLnN3aXRjaFdpZGdldD1mdW5jdGlvbihlKXt2YXIgbj1lLnByb3BlcnR5SWQsaT12b2lkIDA9PT1uP251bGw6bixyPWUud2lkZ2V0SWQsbz12b2lkIDA9PT1yP251bGw6cixhPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpmdW5jdGlvbigpe307d2luZG93LiRfVGF3ay5yZWFkeXx8dC5zdG9yZS5kaXNwYXRjaCgid2lkZ2V0L3N3aXRjaFdpZGdldCIse3Byb3BlcnR5SWQ6aSx3aWRnZXRJZDpvLGNhbGxiYWNrOmF9KX0sd2luZG93LiRfVGF3ay5zaHV0ZG93bj13aW5kb3cuVGF3a19BUEkuc2h1dGRvd249ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06ZnVuY3Rpb24oKXt9O3dpbmRvdy4kX1Rhd2sucmVhZHl8fHQuc3RvcmUuZGlzcGF0Y2goIndpZGdldC9zaHV0ZG93biIsZSl9LHdpbmRvdy4kX1Rhd2suc3RhcnQ9d2luZG93LlRhd2tfQVBJLnN0YXJ0PWZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnt9LG49YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOmZ1bmN0aW9uKCl7fTt3aW5kb3cuJF9UYXdrLnJlYWR5fHx0LnN0b3JlLmRpc3BhdGNoKCJ3aWRnZXQvc3RhcnQiLHtwYXJhbXM6ZSxjYWxsYmFjazpufSl9fX1dKSl9LGJkZDA6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybihpPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gcih0LGUpe3ZhciBuPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksbi5wdXNoLmFwcGx5KG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gbyh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9yKE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7YSh0LGUsbltlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6cihPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBhKHQsZSxuKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1pKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIHI9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9aShyKSlyZXR1cm4gcjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1pKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1uLHR9bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBzfSkpO3ZhciBzPXtwb3N0OmZ1bmN0aW9uKHQpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fSxuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fSxpPWFyZ3VtZW50cy5sZW5ndGg+Mz9hcmd1bWVudHNbM106dm9pZCAwLHI9IShhcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XSl8fGFyZ3VtZW50c1s0XSxhPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdJiZhcmd1bWVudHNbNV0scz1bXSxjPSEwLHU9byh7fSxuKTtpZihlIGluc3RhbmNlb2YgRm9ybURhdGEpcz1lLGM9ITE7ZWxzZXtpZihhKXM9SlNPTi5zdHJpbmdpZnkoZSksdVsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgiO2Vsc2V7Zm9yKHZhciBsIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbCkmJnMucHVzaCgiIi5jb25jYXQoZW5jb2RlVVJJQ29tcG9uZW50KGwpLCI9IikuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChlW2xdKSkpO3MubGVuZ3RoJiYocz1zLmpvaW4oIiYiKSksdVsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL3d3dy14LWZvcm0tdXJsZW5jb2RlZCJ9Yz0hMH1pZih2b2lkIDAhPT13aW5kb3cuZmV0Y2gmJnZvaWQgMCE9PXdpbmRvdy5BYm9ydENvbnRyb2xsZXIpe3ZhciBkLGY9bmV3IHdpbmRvdy5BYm9ydENvbnRyb2xsZXIsaD1mLnNpZ25hbDtyZXR1cm4gZD1yP3ttZXRob2Q6IlBPU1QiLGhlYWRlcnM6dSxzaWduYWw6aCxjcmVkZW50aWFsczpjPyJpbmNsdWRlIjoic2FtZS1vcmlnaW4iLGJvZHk6c306e21ldGhvZDoiUE9TVCIsaGVhZGVyczp1LHNpZ25hbDpoLGJvZHk6c30sZmV0Y2godCxkKS50aGVuKChmdW5jdGlvbih0KXtyZXR1cm4gNTAwPT09dC5zdGF0dXM/aSghMCk6dC5qc29uKCl9KSkudGhlbigoZnVuY3Rpb24odCl7aShudWxsLHQpfSkpLmNhdGNoKChmdW5jdGlvbigpe2koITApfSkpLGh9dmFyIHA9bmV3IFhNTEh0dHBSZXF1ZXN0O2lmKHAub25lcnJvcj1pLHAub3BlbigiUE9TVCIsdCwhMCksIShlIGluc3RhbmNlb2YgRm9ybURhdGEpKXtmb3IodmFyIG0gaW4gdSlwLnNldFJlcXVlc3RIZWFkZXIobSx1W21dKTtwLndpdGhDcmVkZW50aWFscz0hMH1yZXR1cm4gcC5vbmxvYWQ9ZnVuY3Rpb24oKXtwLnN0YXR1cz49MjAwJiZwLnN0YXR1czwzMDA/aShudWxsLEpTT04ucGFyc2UocC5yZXNwb25zZVRleHQpKTppKCEwKX0scC5zZW5kKHMpLHB9LGdldDpmdW5jdGlvbih0KXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e30sbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e30saT1hcmd1bWVudHMubGVuZ3RoPjM/YXJndW1lbnRzWzNdOnZvaWQgMCxyPVtdLGE9byh7fSxuKTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmci5wdXNoKCIiLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQocyksIj0iKS5jb25jYXQoZW5jb2RlVVJJQ29tcG9uZW50KGVbc10pKSk7aWYoci5sZW5ndGgmJih0Kz0iPyIuY29uY2F0KHIuam9pbigiJiIpKSksdm9pZCAwIT09d2luZG93LmZldGNoJiZ2b2lkIDAhPT13aW5kb3cuQWJvcnRDb250cm9sbGVyKXt2YXIgYz1uZXcgd2luZG93LkFib3J0Q29udHJvbGxlcix1PWMuc2lnbmFsO3JldHVybiBmZXRjaCh0LHtoZWFkZXJzOmEsc2lnbmFsOnV9KS50aGVuKChmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KSkudGhlbigoZnVuY3Rpb24odCl7aShudWxsLHQpfSkpLmNhdGNoKChmdW5jdGlvbigpe2koITApfSkpLHV9dmFyIGw9bmV3IFhNTEh0dHBSZXF1ZXN0O2Zvcih2YXIgZCBpbiBsLm9uZXJyb3I9aSxsLm9wZW4oIkdFVCIsdCwhMCksYSlsLnNldFJlcXVlc3RIZWFkZXIoZCxhW2RdKTtyZXR1cm4gbC5vbmxvYWQ9ZnVuY3Rpb24oKXtsLnN0YXR1cz49MjAwJiZsLnN0YXR1czwzMDA/aShudWxsLEpTT04ucGFyc2UobC5yZXNwb25zZVRleHQpKTppKCEwKX0sbC5zZW5kKCksbH19fSxjM2UxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT17Ii4vYnJvd3Nlci1kYXRhLmpzIjoiMGRjMyIsIi4vY2hhdC5qcyI6IjliNGYiLCIuL2Zvcm0uanMiOiI2NjY1IiwiLi9oaXN0b3J5LmpzIjoiYzk5YSIsIi4va25vd2xlZGdlLWJhc2UuanMiOiJhM2NjIiwiLi9vdmVybGF5LmpzIjoiMjg0YiIsIi4vcHJvcGVydHkuanMiOiI5YTA1IiwiLi9yb3V0ZXIuanMiOiJkM2U5IiwiLi9zY2hlZHVsZS5qcyI6ImU0YjMiLCIuL3Nlc3Npb24uanMiOiIzYjM1IiwiLi9zb2NrZXQuanMiOiJmNDA2IiwiLi92aXNpdG9yLmpzIjoiYjI1MCIsIi4vd2lkZ2V0LmpzIjoiMzJkOSJ9O2Z1bmN0aW9uIHIodCl7dmFyIGU9byh0KTtyZXR1cm4gbihlKX1mdW5jdGlvbiBvKHQpe2lmKCFuLm8oaSx0KSl7dmFyIGU9bmV3IEVycm9yKCJDYW5ub3QgZmluZCBtb2R1bGUgJyIrdCsiJyIpO3Rocm93IGUuY29kZT0iTU9EVUxFX05PVF9GT1VORCIsZX1yZXR1cm4gaVt0XX1yLmtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmtleXMoaSl9LHIucmVzb2x2ZT1vLHQuZXhwb3J0cz1yLHIuaWQ9ImMzZTEifSxjN2I4OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7dmFyIGk9bigiYmRkMCIpO2Z1bmN0aW9uIHIodCl7cmV0dXJuKHI9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBvKHQsZSl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciBpPWVbbl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxhKGkua2V5KSxpKX19ZnVuY3Rpb24gYSh0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1yKHQpfHwhdClyZXR1cm4gdDt2YXIgbj10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9cihpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1yKGUpP2U6ZSsiIn1lLmE9bmV3KGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZSYmbyh0LnByb3RvdHlwZSxlKSxuJiZvKHQsbiksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksdH0oKGZ1bmN0aW9uIHQoKXshZnVuY3Rpb24odCxlKXtpZighKHQgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX0odGhpcyx0KX0pLFt7a2V5OiJpbnN0YWxsIix2YWx1ZTpmdW5jdGlvbih0KXt0LnByb3RvdHlwZS4kVGF3a0xvZ2dlcj10aGlzfX0se2tleToicmVwb3J0UGVyZm9ybWFuY2UiLHZhbHVlOmZ1bmN0aW9uKHQpe2kuYS5wb3N0KCIiLmNvbmNhdCgiaHR0cHM6Ly92YS50YXdrLnRvIiwiL2xvZy1wZXJmb3JtYW5jZS92MyIpLHtsb2dEYXRhOkpTT04uc3RyaW5naWZ5KHQpfSx7fSwoZnVuY3Rpb24odCl7dCYmY29uc29sZS5lcnJvcih0KX0pLCExLCEwKX19LHtrZXk6InJlcG9ydEluY2lkZW50Iix2YWx1ZTpmdW5jdGlvbigpe319LHtrZXk6InJlcG9ydEVycm9yIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT1KU09OLnN0cmluZ2lmeSh0KTtpLmEucG9zdCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIsIi9sb2ciKSxlLHt9LChmdW5jdGlvbih0KXt0JiZjb25zb2xlLmVycm9yKCJbVGF3ay9Mb2dnZXJdOiBFcnJvciByZXBvcnQgc2VudCIsdCl9KSwhMSwhMCl9fV0pKX0sYzk5YTpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO24ucihlKTt2YXIgaT1uKCJiZGQwIikscj1uKCIwMjhlIiksbz1uKCI3ZjQ2Iik7ZnVuY3Rpb24gYSh0KXtyZXR1cm4oYT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIHMoKXtzPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3ZhciB0LGU9e30sbj1PYmplY3QucHJvdG90eXBlLGk9bi5oYXNPd25Qcm9wZXJ0eSxyPU9iamVjdC5kZWZpbmVQcm9wZXJ0eXx8ZnVuY3Rpb24odCxlLG4pe3RbZV09bi52YWx1ZX0sbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sP1N5bWJvbDp7fSxjPW8uaXRlcmF0b3J8fCJAQGl0ZXJhdG9yIix1PW8uYXN5bmNJdGVyYXRvcnx8IkBAYXN5bmNJdGVyYXRvciIsbD1vLnRvU3RyaW5nVGFnfHwiQEB0b1N0cmluZ1RhZyI7ZnVuY3Rpb24gZCh0LGUsbil7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSx0W2VdfXRyeXtkKHt9LCIiKX1jYXRjaCh0KXtkPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gdFtlXT1ufX1mdW5jdGlvbiBmKHQsZSxuLGkpe3ZhciBvPWUmJmUucHJvdG90eXBlIGluc3RhbmNlb2Ygdz9lOncsYT1PYmplY3QuY3JlYXRlKG8ucHJvdG90eXBlKSxzPW5ldyBMKGl8fFtdKTtyZXR1cm4gcihhLCJfaW52b2tlIix7dmFsdWU6SSh0LG4scyl9KSxhfWZ1bmN0aW9uIGgodCxlLG4pe3RyeXtyZXR1cm57dHlwZToibm9ybWFsIixhcmc6dC5jYWxsKGUsbil9fWNhdGNoKHQpe3JldHVybnt0eXBlOiJ0aHJvdyIsYXJnOnR9fX1lLndyYXA9Zjt2YXIgcD0ic3VzcGVuZGVkU3RhcnQiLG09ImV4ZWN1dGluZyIsZz0iY29tcGxldGVkIix2PXt9O2Z1bmN0aW9uIHcoKXt9ZnVuY3Rpb24geSgpe31mdW5jdGlvbiBiKCl7fXZhciBrPXt9O2QoayxjLChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpO3ZhciBUPU9iamVjdC5nZXRQcm90b3R5cGVPZixTPVQmJlQoVChfKFtdKSkpO1MmJlMhPT1uJiZpLmNhbGwoUyxjKSYmKGs9Uyk7dmFyIFA9Yi5wcm90b3R5cGU9dy5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShrKTtmdW5jdGlvbiBFKHQpe1sibmV4dCIsInRocm93IiwicmV0dXJuIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7ZCh0LGUsKGZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pbnZva2UoZSx0KX0pKX0pKX1mdW5jdGlvbiBPKHQsZSl7ZnVuY3Rpb24gbihyLG8scyxjKXt2YXIgdT1oKHRbcl0sdCxvKTtpZigidGhyb3ciIT09dS50eXBlKXt2YXIgbD11LmFyZyxkPWwudmFsdWU7cmV0dXJuIGQmJiJvYmplY3QiPT1hKGQpJiZpLmNhbGwoZCwiX19hd2FpdCIpP2UucmVzb2x2ZShkLl9fYXdhaXQpLnRoZW4oKGZ1bmN0aW9uKHQpe24oIm5leHQiLHQscyxjKX0pLChmdW5jdGlvbih0KXtuKCJ0aHJvdyIsdCxzLGMpfSkpOmUucmVzb2x2ZShkKS50aGVuKChmdW5jdGlvbih0KXtsLnZhbHVlPXQscyhsKX0pLChmdW5jdGlvbih0KXtyZXR1cm4gbigidGhyb3ciLHQscyxjKX0pKX1jKHUuYXJnKX12YXIgbztyKHRoaXMsIl9pbnZva2UiLHt2YWx1ZTpmdW5jdGlvbih0LGkpe2Z1bmN0aW9uIHIoKXtyZXR1cm4gbmV3IGUoKGZ1bmN0aW9uKGUscil7bih0LGksZSxyKX0pKX1yZXR1cm4gbz1vP28udGhlbihyLHIpOnIoKX19KX1mdW5jdGlvbiBJKGUsbixpKXt2YXIgcj1wO3JldHVybiBmdW5jdGlvbihvLGEpe2lmKHI9PT1tKXRocm93IEVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nIik7aWYocj09PWcpe2lmKCJ0aHJvdyI9PT1vKXRocm93IGE7cmV0dXJue3ZhbHVlOnQsZG9uZTohMH19Zm9yKGkubWV0aG9kPW8saS5hcmc9YTs7KXt2YXIgcz1pLmRlbGVnYXRlO2lmKHMpe3ZhciBjPUMocyxpKTtpZihjKXtpZihjPT09diljb250aW51ZTtyZXR1cm4gY319aWYoIm5leHQiPT09aS5tZXRob2QpaS5zZW50PWkuX3NlbnQ9aS5hcmc7ZWxzZSBpZigidGhyb3ciPT09aS5tZXRob2Qpe2lmKHI9PT1wKXRocm93IHI9ZyxpLmFyZztpLmRpc3BhdGNoRXhjZXB0aW9uKGkuYXJnKX1lbHNlInJldHVybiI9PT1pLm1ldGhvZCYmaS5hYnJ1cHQoInJldHVybiIsaS5hcmcpO3I9bTt2YXIgdT1oKGUsbixpKTtpZigibm9ybWFsIj09PXUudHlwZSl7aWYocj1pLmRvbmU/Zzoic3VzcGVuZGVkWWllbGQiLHUuYXJnPT09diljb250aW51ZTtyZXR1cm57dmFsdWU6dS5hcmcsZG9uZTppLmRvbmV9fSJ0aHJvdyI9PT11LnR5cGUmJihyPWcsaS5tZXRob2Q9InRocm93IixpLmFyZz11LmFyZyl9fX1mdW5jdGlvbiBDKGUsbil7dmFyIGk9bi5tZXRob2Qscj1lLml0ZXJhdG9yW2ldO2lmKHI9PT10KXJldHVybiBuLmRlbGVnYXRlPW51bGwsInRocm93Ij09PWkmJmUuaXRlcmF0b3IucmV0dXJuJiYobi5tZXRob2Q9InJldHVybiIsbi5hcmc9dCxDKGUsbiksInRocm93Ij09PW4ubWV0aG9kKXx8InJldHVybiIhPT1pJiYobi5tZXRob2Q9InRocm93IixuLmFyZz1uZXcgVHlwZUVycm9yKCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICciK2krIicgbWV0aG9kIikpLHY7dmFyIG89aChyLGUuaXRlcmF0b3Isbi5hcmcpO2lmKCJ0aHJvdyI9PT1vLnR5cGUpcmV0dXJuIG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9by5hcmcsbi5kZWxlZ2F0ZT1udWxsLHY7dmFyIGE9by5hcmc7cmV0dXJuIGE/YS5kb25lPyhuW2UucmVzdWx0TmFtZV09YS52YWx1ZSxuLm5leHQ9ZS5uZXh0TG9jLCJyZXR1cm4iIT09bi5tZXRob2QmJihuLm1ldGhvZD0ibmV4dCIsbi5hcmc9dCksbi5kZWxlZ2F0ZT1udWxsLHYpOmE6KG4ubWV0aG9kPSJ0aHJvdyIsbi5hcmc9bmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3QiKSxuLmRlbGVnYXRlPW51bGwsdil9ZnVuY3Rpb24geCh0KXt2YXIgZT17dHJ5TG9jOnRbMF19OzEgaW4gdCYmKGUuY2F0Y2hMb2M9dFsxXSksMiBpbiB0JiYoZS5maW5hbGx5TG9jPXRbMl0sZS5hZnRlckxvYz10WzNdKSx0aGlzLnRyeUVudHJpZXMucHVzaChlKX1mdW5jdGlvbiBBKHQpe3ZhciBlPXQuY29tcGxldGlvbnx8e307ZS50eXBlPSJub3JtYWwiLGRlbGV0ZSBlLmFyZyx0LmNvbXBsZXRpb249ZX1mdW5jdGlvbiBMKHQpe3RoaXMudHJ5RW50cmllcz1be3RyeUxvYzoicm9vdCJ9XSx0LmZvckVhY2goeCx0aGlzKSx0aGlzLnJlc2V0KCEwKX1mdW5jdGlvbiBfKGUpe2lmKGV8fCIiPT09ZSl7dmFyIG49ZVtjXTtpZihuKXJldHVybiBuLmNhbGwoZSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUubmV4dClyZXR1cm4gZTtpZighaXNOYU4oZS5sZW5ndGgpKXt2YXIgcj0tMSxvPWZ1bmN0aW9uIG4oKXtmb3IoOysrcjxlLmxlbmd0aDspaWYoaS5jYWxsKGUscikpcmV0dXJuIG4udmFsdWU9ZVtyXSxuLmRvbmU9ITEsbjtyZXR1cm4gbi52YWx1ZT10LG4uZG9uZT0hMCxufTtyZXR1cm4gby5uZXh0PW99fXRocm93IG5ldyBUeXBlRXJyb3IoYShlKSsiIGlzIG5vdCBpdGVyYWJsZSIpfXJldHVybiB5LnByb3RvdHlwZT1iLHIoUCwiY29uc3RydWN0b3IiLHt2YWx1ZTpiLGNvbmZpZ3VyYWJsZTohMH0pLHIoYiwiY29uc3RydWN0b3IiLHt2YWx1ZTp5LGNvbmZpZ3VyYWJsZTohMH0pLHkuZGlzcGxheU5hbWU9ZChiLGwsIkdlbmVyYXRvckZ1bmN0aW9uIiksZS5pc0dlbmVyYXRvckZ1bmN0aW9uPWZ1bmN0aW9uKHQpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0JiZ0LmNvbnN0cnVjdG9yO3JldHVybiEhZSYmKGU9PT15fHwiR2VuZXJhdG9yRnVuY3Rpb24iPT09KGUuZGlzcGxheU5hbWV8fGUubmFtZSkpfSxlLm1hcms9ZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YodCxiKToodC5fX3Byb3RvX189YixkKHQsbCwiR2VuZXJhdG9yRnVuY3Rpb24iKSksdC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShQKSx0fSxlLmF3cmFwPWZ1bmN0aW9uKHQpe3JldHVybntfX2F3YWl0OnR9fSxFKE8ucHJvdG90eXBlKSxkKE8ucHJvdG90eXBlLHUsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZS5Bc3luY0l0ZXJhdG9yPU8sZS5hc3luYz1mdW5jdGlvbih0LG4saSxyLG8pe3ZvaWQgMD09PW8mJihvPVByb21pc2UpO3ZhciBhPW5ldyBPKGYodCxuLGksciksbyk7cmV0dXJuIGUuaXNHZW5lcmF0b3JGdW5jdGlvbihuKT9hOmEubmV4dCgpLnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiB0LmRvbmU/dC52YWx1ZTphLm5leHQoKX0pKX0sRShQKSxkKFAsbCwiR2VuZXJhdG9yIiksZChQLGMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksZChQLCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgR2VuZXJhdG9yXSJ9KSksZS5rZXlzPWZ1bmN0aW9uKHQpe3ZhciBlPU9iamVjdCh0KSxuPVtdO2Zvcih2YXIgaSBpbiBlKW4ucHVzaChpKTtyZXR1cm4gbi5yZXZlcnNlKCksZnVuY3Rpb24gdCgpe2Zvcig7bi5sZW5ndGg7KXt2YXIgaT1uLnBvcCgpO2lmKGkgaW4gZSlyZXR1cm4gdC52YWx1ZT1pLHQuZG9uZT0hMSx0fXJldHVybiB0LmRvbmU9ITAsdH19LGUudmFsdWVzPV8sTC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOkwscmVzZXQ6ZnVuY3Rpb24oZSl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9dCx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz10LHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKEEpLCFlKWZvcih2YXIgbiBpbiB0aGlzKSJ0Ij09PW4uY2hhckF0KDApJiZpLmNhbGwodGhpcyxuKSYmIWlzTmFOKCtuLnNsaWNlKDEpKSYmKHRoaXNbbl09dCl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIHQ9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PXQudHlwZSl0aHJvdyB0LmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbihlKXtpZih0aGlzLmRvbmUpdGhyb3cgZTt2YXIgbj10aGlzO2Z1bmN0aW9uIHIoaSxyKXtyZXR1cm4gcy50eXBlPSJ0aHJvdyIscy5hcmc9ZSxuLm5leHQ9aSxyJiYobi5tZXRob2Q9Im5leHQiLG4uYXJnPXQpLCEhcn1mb3IodmFyIG89dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO28+PTA7LS1vKXt2YXIgYT10aGlzLnRyeUVudHJpZXNbb10scz1hLmNvbXBsZXRpb247aWYoInJvb3QiPT09YS50cnlMb2MpcmV0dXJuIHIoImVuZCIpO2lmKGEudHJ5TG9jPD10aGlzLnByZXYpe3ZhciBjPWkuY2FsbChhLCJjYXRjaExvYyIpLHU9aS5jYWxsKGEsImZpbmFsbHlMb2MiKTtpZihjJiZ1KXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8YS5maW5hbGx5TG9jKXJldHVybiByKGEuZmluYWxseUxvYyl9ZWxzZSBpZihjKXtpZih0aGlzLnByZXY8YS5jYXRjaExvYylyZXR1cm4gcihhLmNhdGNoTG9jLCEwKX1lbHNle2lmKCF1KXRocm93IEVycm9yKCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseSIpO2lmKHRoaXMucHJldjxhLmZpbmFsbHlMb2MpcmV0dXJuIHIoYS5maW5hbGx5TG9jKX19fX0sYWJydXB0OmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtuPj0wOy0tbil7dmFyIHI9dGhpcy50cnlFbnRyaWVzW25dO2lmKHIudHJ5TG9jPD10aGlzLnByZXYmJmkuY2FsbChyLCJmaW5hbGx5TG9jIikmJnRoaXMucHJldjxyLmZpbmFsbHlMb2Mpe3ZhciBvPXI7YnJlYWt9fW8mJigiYnJlYWsiPT09dHx8ImNvbnRpbnVlIj09PXQpJiZvLnRyeUxvYzw9ZSYmZTw9by5maW5hbGx5TG9jJiYobz1udWxsKTt2YXIgYT1vP28uY29tcGxldGlvbjp7fTtyZXR1cm4gYS50eXBlPXQsYS5hcmc9ZSxvPyh0aGlzLm1ldGhvZD0ibmV4dCIsdGhpcy5uZXh0PW8uZmluYWxseUxvYyx2KTp0aGlzLmNvbXBsZXRlKGEpfSxjb21wbGV0ZTpmdW5jdGlvbih0LGUpe2lmKCJ0aHJvdyI9PT10LnR5cGUpdGhyb3cgdC5hcmc7cmV0dXJuImJyZWFrIj09PXQudHlwZXx8ImNvbnRpbnVlIj09PXQudHlwZT90aGlzLm5leHQ9dC5hcmc6InJldHVybiI9PT10LnR5cGU/KHRoaXMucnZhbD10aGlzLmFyZz10LmFyZyx0aGlzLm1ldGhvZD0icmV0dXJuIix0aGlzLm5leHQ9ImVuZCIpOiJub3JtYWwiPT09dC50eXBlJiZlJiYodGhpcy5uZXh0PWUpLHZ9LGZpbmlzaDpmdW5jdGlvbih0KXtmb3IodmFyIGU9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2U+PTA7LS1lKXt2YXIgbj10aGlzLnRyeUVudHJpZXNbZV07aWYobi5maW5hbGx5TG9jPT09dClyZXR1cm4gdGhpcy5jb21wbGV0ZShuLmNvbXBsZXRpb24sbi5hZnRlckxvYyksQShuKSx2fX0sY2F0Y2g6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIG49dGhpcy50cnlFbnRyaWVzW2VdO2lmKG4udHJ5TG9jPT09dCl7dmFyIGk9bi5jb21wbGV0aW9uO2lmKCJ0aHJvdyI9PT1pLnR5cGUpe3ZhciByPWkuYXJnO0Eobil9cmV0dXJuIHJ9fXRocm93IEVycm9yKCJpbGxlZ2FsIGNhdGNoIGF0dGVtcHQiKX0sZGVsZWdhdGVZaWVsZDpmdW5jdGlvbihlLG4saSl7cmV0dXJuIHRoaXMuZGVsZWdhdGU9e2l0ZXJhdG9yOl8oZSkscmVzdWx0TmFtZTpuLG5leHRMb2M6aX0sIm5leHQiPT09dGhpcy5tZXRob2QmJih0aGlzLmFyZz10KSx2fX0sZX1mdW5jdGlvbiBjKHQsZSl7dmFyIG49T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxuLnB1c2guYXBwbHkobixpKX1yZXR1cm4gbn1mdW5jdGlvbiB1KHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBuPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP2MoT2JqZWN0KG4pLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtsKHQsZSxuW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG4pKTpjKE9iamVjdChuKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIGwodCxlLG4pe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPWEodCl8fCF0KXJldHVybiB0O3ZhciBuPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgaT1uLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1hKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PWEoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPW4sdH1mdW5jdGlvbiBkKHQsZSxuLGkscixvLGEpe3RyeXt2YXIgcz10W29dKGEpLGM9cy52YWx1ZX1jYXRjaCh0KXtyZXR1cm4gdm9pZCBuKHQpfXMuZG9uZT9lKGMpOlByb21pc2UucmVzb2x2ZShjKS50aGVuKGkscil9ZnVuY3Rpb24gZih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49YXJndW1lbnRzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oaSxyKXt2YXIgbz10LmFwcGx5KGUsbik7ZnVuY3Rpb24gYSh0KXtkKG8saSxyLGEscywibmV4dCIsdCl9ZnVuY3Rpb24gcyh0KXtkKG8saSxyLGEscywidGhyb3ciLHQpfWEodm9pZCAwKX0pKX19ZS5kZWZhdWx0PXtuYW1lc3BhY2VkOiEwLHN0YXRlOntiYXNlVXJsOiIvdjEvY2hhdC8iLGl0ZW1zOltdLGxvYWRpbmc6e2luZGV4OiExLGNoYXQ6ITF9LG5leHRMaXN0SGFzaDpudWxsLGxhc3RNZXNzYWdlVGltZXN0YW1wOm51bGwsbG9hZEVycm9yOiExLG1lc3NhZ2VCbG9ja3M6W10sc2VsZWN0ZWRDaGF0Om51bGwsY2hhdEVycm9yOiExLHNlbGVjdGVkQ2hhdE1lc3NhZ2VzOm51bGwsc2Nyb2xsUG9zaXRpb246MCxjYWxsczp7fX0sZ2V0dGVyczp7aXRlbXM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXRlbXN9LGlzTG9hZGluZzpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQubG9hZGluZ1tlXX19LGxhc3RNZXNzYWdlVGltZXN0YW1wOmZ1bmN0aW9uKHQpe3JldHVybiB0Lmxhc3RNZXNzYWdlVGltZXN0YW1wfSxuZXh0TGlzdEhhc2g6ZnVuY3Rpb24odCl7cmV0dXJuIHQubmV4dExpc3RIYXNofSxsb2FkRXJyb3I6ZnVuY3Rpb24odCl7cmV0dXJuIHQubG9hZEVycm9yfSxjaGF0RXJyb3I6ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hhdEVycm9yfSxtZXNzYWdlQmxvY2tzOmZ1bmN0aW9uKHQpe3JldHVybiB0Lm1lc3NhZ2VCbG9ja3N9LHNlbGVjdGVkQ2hhdDpmdW5jdGlvbih0KXtyZXR1cm4gdC5zZWxlY3RlZENoYXR9LHNlbGVjdGVkQ2hhdE1lc3NhZ2VzOmZ1bmN0aW9uKHQpe3JldHVybiB0LnNlbGVjdGVkQ2hhdE1lc3NhZ2VzfSxzY3JvbGxQb3NpdGlvbjpmdW5jdGlvbih0KXtyZXR1cm4gdC5zY3JvbGxQb3NpdGlvbn0sY2FsbERhdGE6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0LmNhbGxzW2VdfX19LGFjdGlvbnM6e2xvYWQ6ZnVuY3Rpb24oKXt2YXIgdD1mKHMoKS5tYXJrKChmdW5jdGlvbiB0KGUpe3ZhciBuLHIsYSxjLGwsZCxmLGg9YXJndW1lbnRzO3JldHVybiBzKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIG49ZS5zdGF0ZSxyPWUuY29tbWl0LGE9ZS5yb290R2V0dGVycyxjPWUuZGlzcGF0Y2gsbD1oLmxlbmd0aD4xJiZ2b2lkIDAhPT1oWzFdP2hbMV06e30scigic2V0TG9hZGluZyIse2FjdGlvbjoiaW5kZXgiLHZhbHVlOiEwfSkscigic2V0TG9hZEVycm9yIiwhMSksdC5wcmV2PTQsdC5uZXh0PTcsYygic2Vzc2lvbi9jaGVja1Rva2VuVmFsaWRpdHkiLHt9LHtyb290OiEwfSk7Y2FzZSA3OnQubmV4dD0xMzticmVhaztjYXNlIDk6cmV0dXJuIHQucHJldj05LHQudDA9dC5jYXRjaCg0KSxyKCJzZXRMb2FkRXJyb3IiLCEwKSx0LmFicnVwdCgicmV0dXJuIik7Y2FzZSAxMzpkPWFbInNlc3Npb24vdG9rZW4iXSxmPXtsaW1pdDpsLmxpbWl0fHwxMH0sbC5sb2FkTmV4dCYmKGYubmV4dD1uLm5leHRMaXN0SGFzaCksaS5hLmdldCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIpLmNvbmNhdChuLmJhc2VVcmwsImxpc3QiKSxmLHsiWC1UYXdrLVRva2VuIjpkfSwoZnVuY3Rpb24odCxlKXtpZihyKCJzZXRMb2FkaW5nIix7YWN0aW9uOiJpbmRleCIsdmFsdWU6ITF9KSx0KXIoInNldExvYWRFcnJvciIsITApO2Vsc2V7aWYoZS5kYXRhJiZlLmRhdGEuY2hhdHMubGVuZ3RoKXt2YXIgbj1bXTtpZihsLmxvYWROZXh0KXtmb3IodmFyIGk9MDtpPGUuZGF0YS5jaGF0cy5sZW5ndGg7aSsrKW4ucHVzaCh1KHUoe30sZS5kYXRhLmNoYXRzW2ldKSx7fSx7c25pcHBldDpvLmEucmF3RW5jb2RlKGUuZGF0YS5jaGF0c1tpXS5zbmlwcGV0KX0pKTtyKCJhcHBlbmRJdGVtcyIsbil9ZWxzZXtmb3IodmFyIGE9MDthPGUuZGF0YS5jaGF0cy5sZW5ndGg7YSsrKW4ucHVzaCh1KHUoe30sZS5kYXRhLmNoYXRzW2FdKSx7fSx7c25pcHBldDpvLmEucmF3RW5jb2RlKGUuZGF0YS5jaGF0c1thXS5zbmlwcGV0KX0pKTtyKCJzZXRJdGVtcyIsbil9fWUuZGF0YS5oYXNOZXh0P3IoInNldE5leHRMaXN0SGFzaCIsZS5kYXRhLm5leHQpOnIoInNldE5leHRMaXN0SGFzaCIsbnVsbCl9fSkpO2Nhc2UgMTc6Y2FzZSJlbmQiOnJldHVybiB0LnN0b3AoKX19KSx0LG51bGwsW1s0LDldXSl9KSkpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpLGdldExhc3RNZXNzYWdlVGltZXN0YW1wOmZ1bmN0aW9uKCl7dmFyIHQ9ZihzKCkubWFyaygoZnVuY3Rpb24gdChlKXt2YXIgbixyLG8sYSxjO3JldHVybiBzKCkud3JhcCgoZnVuY3Rpb24odCl7Zm9yKDs7KXN3aXRjaCh0LnByZXY9dC5uZXh0KXtjYXNlIDA6cmV0dXJuIG49ZS5zdGF0ZSxyPWUuY29tbWl0LG89ZS5yb290R2V0dGVycyxhPWUuZGlzcGF0Y2gsdC5wcmV2PTEsdC5uZXh0PTQsYSgic2Vzc2lvbi9jaGVja1Rva2VuVmFsaWRpdHkiLHt9LHtyb290OiEwfSk7Y2FzZSA0OnQubmV4dD05O2JyZWFrO2Nhc2UgNjpyZXR1cm4gdC5wcmV2PTYsdC50MD10LmNhdGNoKDEpLHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDk6Yz1vWyJzZXNzaW9uL3Rva2VuIl0saS5hLmdldCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIpLmNvbmNhdChuLmJhc2VVcmwsImxpc3QiKSx7bGltaXQ6MX0seyJYLVRhd2stVG9rZW4iOmN9LChmdW5jdGlvbih0LGUpe3R8fGUuZGF0YSYmZS5kYXRhLmNoYXRzLmxlbmd0aCYmcigic2V0TGFzdE1lc3NhZ2VUaW1lc3RhbXAiLGUuZGF0YS5jaGF0c1swXS5lbmRlZE9uKX0pKTtjYXNlIDExOmNhc2UiZW5kIjpyZXR1cm4gdC5zdG9wKCl9fSksdCxudWxsLFtbMSw2XV0pfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKSxnZXRIaXN0b3J5OmZ1bmN0aW9uKCl7dmFyIHQ9ZihzKCkubWFyaygoZnVuY3Rpb24gdChlKXt2YXIgbixvLGEsYyx1LGw7cmV0dXJuIHMoKS53cmFwKChmdW5jdGlvbih0KXtmb3IoOzspc3dpdGNoKHQucHJldj10Lm5leHQpe2Nhc2UgMDppZihuPWUuc3RhdGUsbz1lLmNvbW1pdCxhPWUucm9vdEdldHRlcnMsYz1lLmRpc3BhdGNoLG8oInNldENoYXRFcnJvciIsITEpLG8oInNldExvYWRpbmciLHthY3Rpb246ImNoYXQiLHZhbHVlOiEwfSksbi5zZWxlY3RlZENoYXQpe3QubmV4dD02O2JyZWFrfXRocm93IG8oInNldENoYXRFcnJvciIsITApLG5ldyBFcnJvcigiSW52YWxpZCBJZCIpO2Nhc2UgNjpyZXR1cm4gdC5wcmV2PTYsdC5uZXh0PTksYygic2Vzc2lvbi9jaGVja1Rva2VuVmFsaWRpdHkiLHt9LHtyb290OiEwfSk7Y2FzZSA5OnQubmV4dD0xNTticmVhaztjYXNlIDExOnJldHVybiB0LnByZXY9MTEsdC50MD10LmNhdGNoKDYpLG8oInNldENoYXRFcnJvciIsITApLHQuYWJydXB0KCJyZXR1cm4iKTtjYXNlIDE1OnU9YVsic2Vzc2lvbi90b2tlbiJdLGw9e2NoYXRJZDpuLnNlbGVjdGVkQ2hhdC5pZH0saS5hLmdldCgiIi5jb25jYXQoImh0dHBzOi8vdmEudGF3ay50byIpLmNvbmNhdChuLmJhc2VVcmwsImdldCIpLGwseyJYLVRhd2stVG9rZW4iOnV9LChmdW5jdGlvbih0LGUpe2lmKHQpbygic2V0Q2hhdEVycm9yIiwhMCk7ZWxzZSBpZihlLmRhdGEmJmUuZGF0YS5lcnJvcilvKCJzZXRDaGF0RXJyb3IiLCEwKTtlbHNle3ZhciBuPXIuYS5wcm9jZXNzSGlzdG9yeU1lc3NhZ2VzKGUuZGF0YS5jaGF0Lm1lc3NhZ2VzKTtjKCJzZXRTZWxlY3RlZENoYXRNZXNzYWdlcyIsbiksYygic2V0Q2FsbHMiLGUuZGF0YS5jaGF0LmNhbGxzKX19KSk7Y2FzZSAxODpjYXNlImVuZCI6cmV0dXJuIHQuc3RvcCgpfX0pLHQsbnVsbCxbWzYsMTFdXSl9KSkpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpLHJlc2V0U3RhdGU6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJ1bnNldERhdGEiKX0sdW5zZXRJdGVtczpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInNldEl0ZW1zIixbXSl9LGFkZE1lc3NhZ2VCbG9jazpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgicHVzaE1lc3NhZ2VCbG9jayIsZSl9LGNsZWFyTWVzc2FnZUJsb2NrOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgidW5zZXRNZXNzYWdlQmxvY2siKX0sc2V0U2VsZWN0ZWRDaGF0TWVzc2FnZXM6ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdDtuKCJzZXRTZWxlY3RlZENoYXRNZXNzYWdlcyIsZSksbigic2V0TG9hZGluZyIse2FjdGlvbjoiY2hhdCIsdmFsdWU6ITF9KX0sc2V0Q2FsbHM6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInVwZGF0ZUNhbGxzIixlKX0sdW5zZXRTZWxlY3RlZENoYXQ6ZnVuY3Rpb24odCl7KDAsdC5jb21taXQpKCJzZXRTZWxlY3RlZENoYXQiLG51bGwpfSxzZXRTY3JvbGxQb3NpdGlvbjpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgibW9kaWZ5U2Nyb2xsUG9zaXRpb24iLGUpfSx1bnNldFNjcm9sbFBvc2l0aW9uOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgibW9kaWZ5U2Nyb2xsUG9zaXRpb24iLDApfX0sbXV0YXRpb25zOntzZXRJdGVtczpmdW5jdGlvbih0LGUpe3QuaXRlbXM9ZX0sc2V0TG9hZGluZzpmdW5jdGlvbih0LGUpe3ZhciBuPWUuYWN0aW9uLGk9ZS52YWx1ZTt0LmxvYWRpbmdbbl09aX0sc2V0TGFzdE1lc3NhZ2VUaW1lc3RhbXA6ZnVuY3Rpb24odCxlKXt0Lmxhc3RNZXNzYWdlVGltZXN0YW1wPWV9LHNldE5leHRMaXN0SGFzaDpmdW5jdGlvbih0LGUpe3QubmV4dExpc3RIYXNoPWV9LGFwcGVuZEl0ZW1zOmZ1bmN0aW9uKHQsZSl7dC5pdGVtcz10Lml0ZW1zLmNvbmNhdChlKX0sc2V0TG9hZEVycm9yOmZ1bmN0aW9uKHQsZSl7dC5sb2FkRXJyb3I9ZX0sc2V0U2VsZWN0ZWRDaGF0OmZ1bmN0aW9uKHQsZSl7dC5zZWxlY3RlZENoYXQ9ZX0sc2V0Q2hhdEVycm9yOmZ1bmN0aW9uKHQsZSl7dC5jaGF0RXJyb3I9ZX0sc2V0U2VsZWN0ZWRDaGF0TWVzc2FnZXM6ZnVuY3Rpb24odCxlKXt0LnNlbGVjdGVkQ2hhdE1lc3NhZ2VzPWV9LHVwZGF0ZUNhbGxzOmZ1bmN0aW9uKHQsZSl7dC5jYWxscz1lfSxwdXNoTWVzc2FnZUJsb2NrOmZ1bmN0aW9uKHQsZSl7aWYoImNhbGwiPT09ZS5tZXNzYWdlVHlwZSl7dmFyIG47aWYodC5jYWxscy5sZW5ndGgpZm9yKHZhciBpPTA7aTx0LmNhbGxzLmxlbmd0aDtpKyspaWYodC5jYWxsc1tpXS5pZD09PWUuY2FsbElkKXt2YXIgcj10LmNhbGxzW2ldO249e2NhbGxJZDpyLmlkLHN0YXR1czpyLnN0YXR1cyx2ZXJzaW9uOm51bGwsaXNNaXNzZWQ6ci5taXNzZWQsaXNSZWplY3RlZDpyLnJlamVjdGVkLGlzUmluZ2luZzohMSxpc0RvbmU6ImNvbXBsZXRlZCIsaXNWaWRlbzpyLmZlYXR1cmVzJiZyLmZlYXR1cmVzLnZpZGVvLGlzU2NyZWVuc2hhcmU6ci5mZWF0dXJlcyYmci5mZWF0dXJlcy5zY3JlZW5TaGFyZSxoYXNFcnJvcjohMSxjYWxsZXI6ci5jYWxsZXIsc3RhcnRlZEF0OnIuc3RhcnRlZE9uLGVuZGVkQXQ6ci5leHBpcmVkT259O2JyZWFrfW58fChuPXtoYXNFcnJvcjohMH0pLGUuY2FsbERhdGE9bn10Lm1lc3NhZ2VCbG9ja3MucHVzaChlKX0sdW5zZXRNZXNzYWdlQmxvY2s6ZnVuY3Rpb24odCl7dC5tZXNzYWdlQmxvY2tzPVtdfSxtb2RpZnlTY3JvbGxQb3NpdGlvbjpmdW5jdGlvbih0LGUpe3Quc2Nyb2xsUG9zaXRpb249ZX0sdW5zZXREYXRhOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT17YmFzZVVybDoiL3YxL2NoYXQvIixpdGVtczpbXSxsb2FkaW5nOntpbmRleDohMSxjaGF0OiExfSxuZXh0TGlzdEhhc2g6bnVsbCxsYXN0TWVzc2FnZVRpbWVzdGFtcDpudWxsLGxvYWRFcnJvcjohMSxtZXNzYWdlQmxvY2tzOltdLHNlbGVjdGVkQ2hhdDpudWxsLGNoYXRFcnJvcjohMSxzZWxlY3RlZENoYXRNZXNzYWdlczpudWxsLHNjcm9sbFBvc2l0aW9uOjAsY2FsbHM6e319LG49T2JqZWN0LmtleXMoZSksaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgcj1uW2ldO3Rbcl09ZVtyXX19fX19LGQwNDY6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKCJkM2E0Iikscj1be3BhdGg6Ii8iLGNvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319fSx7cGF0aDoiY2hhdCIsY29tcG9uZW50OmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7fX19LHtwYXRoOiJrYi1hcnRpY2xlIixjb21wb25lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwoW24uZSgiY2h1bmstNGZlOWQ1ZGQiKSxuLmUoImNodW5rLTMxODRjZjVhIildKS50aGVuKG4uYmluZChudWxsLCI0YjIzIikpfSxoYXNCYWNrOiEwfSx7cGF0aDoia2Itc2VhcmNoIixjb21wb25lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwoW24uZSgiY2h1bmstNGZlOWQ1ZGQiKSxuLmUoImNodW5rLTJkMjIxODMwIiksbi5lKCJjaHVuay0yZDIyODg3MyIpXSkudGhlbihuLmJpbmQobnVsbCwiZGEyMiIpKX0saGFzQmFjazohMCx0aXRsZTpmdW5jdGlvbigpe3JldHVybiBpLmE/aS5hLiRpMThuKCJrYiIsInNlYXJjaF9yZXN1bHRzIik6IlNlYXJjaCBSZXN1bHRzIn19LHtwYXRoOiJoaXN0b3J5LWxpc3QiLGNvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLmFsbChbbi5lKCJjaHVuay00ZmU5ZDVkZCIpLG4uZSgiY2h1bmstMmQwYmQyOTIiKV0pLnRoZW4obi5iaW5kKG51bGwsIjJiOGQiKSl9LGhhc0JhY2s6ITAsdGl0bGU6ZnVuY3Rpb24oKXtyZXR1cm4gaS5hP2kuYS4kaTE4bigicm91dGVzIiwiY29udmVyc2F0aW9ucyIpOiJDb252ZXJzYXRpb25zIn19LHtwYXRoOiJoaXN0b3J5LWNoYXQiLGNvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLmFsbChbbi5lKCJjaHVuay00ZmU5ZDVkZCIpLG4uZSgiY2h1bmstM2VhMmM3Y2UiKSxuLmUoImNodW5rLTc5NDFjYzA2Iiksbi5lKCJjaHVuay0yZDBhMmQ2OSIpXSkudGhlbihuLmJpbmQobnVsbCwiMDAyZSIpKX0saGFzQmFjazohMH0se3BhdGg6ImFnZW50cyIsY29tcG9uZW50OmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFtuLmUoImNodW5rLTRmZTlkNWRkIiksbi5lKCJjaHVuay0yZDBlNWVkMiIpXSkudGhlbihuLmJpbmQobnVsbCwiOTcyMCIpKX0saGFzQmFjazohMCx0aXRsZTpmdW5jdGlvbigpe3JldHVybiBpLmE/aS5hLiRpMThuKCJyb3V0ZXMiLCJhbGxfYWdlbnRzIik6IkFsbCBBZ2VudHMifX0se3BhdGg6Im9mZmxpbmUtc3VjY2VzcyIsY29tcG9uZW50OmZ1bmN0aW9uKCl7cmV0dXJuIG4uZSgiY2h1bmstMmQyMDg5YWQiKS50aGVuKG4uYmluZChudWxsLCJhNjAyIikpfX0se3BhdGg6InByZWNoYXQiLGNvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319fSx7cGF0aDoibmFtZS1mb3JtIixjb21wb25lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwoW24uZSgiY2h1bmstNGZlOWQ1ZGQiKSxuLmUoImNodW5rLTJkMGJkOWMxIildKS50aGVuKG4uYmluZChudWxsLCIyZDcwIikpfX0se3BhdGg6ImVtYWlsLXRyYW5zY3JpcHQtZm9ybSIsY29tcG9uZW50OmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFtuLmUoImNodW5rLTRmZTlkNWRkIiksbi5lKCJjaHVuay0yZDIyNjE0YiIpXSkudGhlbihuLmJpbmQobnVsbCwiZTZhZSIpKX19LHtwYXRoOiJyZXN0YXJ0LWNoYXQiLGNvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiBuLmUoImNodW5rLTJkMjA4NDhkIikudGhlbihuLmJpbmQobnVsbCwiYTNhZiIpKX19LHtwYXRoOiJtZXNzYWdlcyIsY29tcG9uZW50OmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFtuLmUoImNodW5rLTRmZTlkNWRkIiksbi5lKCJjaHVuay0yZDBlNGE3YyIpXSkudGhlbihuLmJpbmQobnVsbCwiOTBjMiIpKX0saGFzQmFjazohMCx0aXRsZTpmdW5jdGlvbigpe3JldHVybiBpLmE/aS5hLiRpMThuKCJob21lIiwibWVzc2FnZXMiKToiTWVzc2FnZXMifX1dO2UuYT1yfSxkM2E0OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKHQpe2Z1bmN0aW9uIG4odCl7cmV0dXJuKG49ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBpKHQsZSl7dmFyIG49T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxuLnB1c2guYXBwbHkobixpKX1yZXR1cm4gbn1mdW5jdGlvbiByKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBuPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP2koT2JqZWN0KG4pLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtvKHQsZSxuW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG4pKTppKE9iamVjdChuKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIG8odCxlLG4pe3JldHVybihlPXMoZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1uLHR9ZnVuY3Rpb24gYSh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQscyhpLmtleSksaSl9fWZ1bmN0aW9uIHModCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9bih0KXx8IXQpcmV0dXJuIHQ7dmFyIGk9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWkpe3ZhciByPWkuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPW4ocikpcmV0dXJuIHI7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09bihlKT9lOmUrIiJ9ZS5hPW5ldyhmdW5jdGlvbih0LGUsbil7cmV0dXJuIGUmJmEodC5wcm90b3R5cGUsZSksbiYmYSh0LG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHR9KChmdW5jdGlvbiBlKCl7KGZ1bmN0aW9uKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9KSh0aGlzLGUpLHRoaXMuJGkxOG49ZnVuY3Rpb24oZSxuLGkpe3ZhciBvPXt9O3JldHVybiBlJiYobj0iIi5jb25jYXQoZSwiLiIpLmNvbmNhdChuKSksaSYmKG89cihyKHt9LG8pLGkpKSx0LiRfVGF3ay5pMThuZXh0KG4sbyl9fSksW3trZXk6Imluc3RhbGwiLHZhbHVlOmZ1bmN0aW9uKHQpe3QucHJvdG90eXBlLiRpMThuPXRoaXMuJGkxOG59fV0pKX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSxkM2U5OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO2UuZGVmYXVsdD17bmFtZXNwYWNlZDohMCxzdGF0ZTp7cm9vdDpudWxsLGN1cnJlbnQ6Ii8iLGhpc3Rvcnk6W10scm91dGVzOltdfSxnZXR0ZXJzOntpc0hvbWU6ZnVuY3Rpb24odCl7cmV0dXJuIi8iPT09dC5jdXJyZW50fSxjdXJyZW50OmZ1bmN0aW9uKHQpe3JldHVybiB0LmN1cnJlbnR9LGdldEN1cnJlbnRWaWV3OmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8dC5yb3V0ZXMubGVuZ3RoO2UrKylpZih0LnJvdXRlc1tlXS5wYXRoPT09dC5jdXJyZW50KXJldHVybiB0LnJvdXRlc1tlXTtyZXR1cm4gbnVsbH0sZ2V0Um91dGU6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0wO248dC5yb3V0ZXMubGVuZ3RoO24rKylpZih0LnJvdXRlc1tuXS5wYXRoPT09ZSlyZXR1cm4gdC5yb3V0ZXNbbl19fSxnZXRIaXN0b3J5OmZ1bmN0aW9uKHQpe3JldHVybiB0Lmhpc3Rvcnl9fSxhY3Rpb25zOntyb3V0ZXJQdXNoOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5jb21taXQsaT10LnN0YXRlO2lmKCFpLnJvdXRlcy5zb21lKChmdW5jdGlvbih0KXtyZXR1cm4gdC5wYXRoPT09ZX0pKSl0aHJvdyJVbnJlY29nbmlzZWQgcm91dGUiO2kuY3VycmVudCYmaS5jdXJyZW50PT09ZXx8KG4oImNoYW5nZUN1cnJlbnRWaWV3IixlKSxuKCJhZGRIaXN0b3J5IixlKSl9LHJvdXRlckJhY2s6ZnVuY3Rpb24odCl7dmFyIGU9dC5jb21taXQsbj10LmRpc3BhdGNoO2UoInByZXZpb3VzUm91dGUiKSxuKCJoaWRlT3ZlcmxheSIpfSxhZGRSb3V0ZXM6ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdDtpZihlLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHQucGF0aH0pKS5zaXplPGUubGVuZ3RoKXRocm93IkR1cGxpY2F0ZSByb3V0ZXMiO24oInJlZ2lzdGVyUm91dGVzIixlKX0sdXBkYXRlUm91dGU6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dC5zdGF0ZSxpPTA7aTxuLnJvdXRlcy5sZW5ndGg7aSsrKWlmKG4ucm91dGVzW2ldLnBhdGg9PT1lLnBhdGgpe3ZvaWQgMCE9PWUuaGFzQmFjayYmKG4ucm91dGVzW2ldLmhhc0JhY2s9ZS5oYXNCYWNrKTticmVha319LGNsZWFySGlzdG9yeTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0SGlzdG9yeSIpfSxyZXNldFN0YXRlOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgidW5zZXREYXRhIil9LGhpZGVPdmVybGF5OmZ1bmN0aW9uKHQpe3ZhciBlPXQuc3RhdGUsbj10LmRpc3BhdGNoOyIvIiE9PWUuY3VycmVudCYmImNoYXQiIT09ZS5jdXJyZW50JiYicHJlY2hhdCIhPT1lLmN1cnJlbnQmJjAhPT1lLmhpc3RvcnkubGVuZ3RofHxuKCJvdmVybGF5L3Nob3dPdmVybGF5IiwhMSx7cm9vdDohMH0pfSxyZW1vdmVSb3V0ZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgiZWplY3RSb3V0ZSIsZSl9fSxtdXRhdGlvbnM6e2NoYW5nZUN1cnJlbnRWaWV3OmZ1bmN0aW9uKHQsZSl7dC5jdXJyZW50PWV9LGFkZEhpc3Rvcnk6ZnVuY3Rpb24odCxlKXt0Lmhpc3RvcnkubGVuZ3RoPjE0JiZ0Lmhpc3Rvcnkuc3BsaWNlKDAsMSksdC5oaXN0b3J5LnB1c2goZSl9LHByZXZpb3VzUm91dGU6ZnVuY3Rpb24odCl7dC5oaXN0b3J5LnBvcCgpO3ZhciBlPXQuaGlzdG9yeS5sZW5ndGgtMSxuPXQuaGlzdG9yeVtlXTt0LmN1cnJlbnQ9bnx8Ii8ifSxyZWdpc3RlclJvdXRlczpmdW5jdGlvbih0LGUpe3Qucm91dGVzPWV9LHVuc2V0SGlzdG9yeTpmdW5jdGlvbih0KXt0Lmhpc3Rvcnk9W119LGVqZWN0Um91dGU6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49MDtuPHQuaGlzdG9yeS5sZW5ndGg7bisrKWlmKHQuaGlzdG9yeVtuXT09PWUpe3QuaGlzdG9yeS5zcGxpY2UobiwxKTticmVha319LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e3Jvb3Q6bnVsbCxjdXJyZW50OiIvIixoaXN0b3J5OltdLHJvdXRlczpbXX0sbj1PYmplY3Qua2V5cyhlKSxpPTA7aTxuLmxlbmd0aDtpKyspe3ZhciByPW5baV07dFtyXT1lW3JdfX19fX0sZTRiMzpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO24ucihlKTtlLmRlZmF1bHQ9e25hbWVzcGFjZWQ6ITAsc3RhdGU6e2lzRW5hYmxlZDohMSxzbG90czpbXSx0aW1lem9uZTp7fX0sZ2V0dGVyczp7aXNFbmFibGVkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzRW5hYmxlZH0sc2xvdHM6ZnVuY3Rpb24odCl7cmV0dXJuIHQuc2xvdHN9LHRpbWV6b25lOmZ1bmN0aW9uKHQpe3JldHVybiB0LnRpbWV6b25lfX0sYWN0aW9uczp7YWRkU2xvdHM6ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNvbW1pdCxpPXQuc3RhdGUscj1bXTtpZihlJiZ2b2lkIDAhPT1lLmVuYWJsZWQ/bigic2V0U3RhdHVzIixlLmVuYWJsZWQpOm4oInNldFN0YXR1cyIsISFlKSxpLmlzRW5hYmxlZCl7dmFyIG89ZS5jb25maWc/ZS5jb25maWcuc2NoZWR1bGU6W107QXJyYXkuaXNBcnJheShvKT9yPW86T2JqZWN0LmtleXMobykuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIGU9b1t0XTswPT09ZS5zdGFydCYmMD09PWUuZW5kfHxyLnB1c2goe2RheTpwYXJzZUludCh0LDEwKSxzdGFydDpNYXRoLmZsb29yKGUuc3RhcnQvNmU0KSxlbmQ6TWF0aC5mbG9vcihlLmVuZC82ZTQpfSl9KSksbigic2V0U2xvdHMiLHIpfWVsc2UgbigicmVzZXRTbG90cyIpfSx1cGRhdGVUaW1lem9uZTpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0VGltZXpvbmUiLGU/e3R6bzp2b2lkIDAhPT1lLnR6bz9lLnR6bzplLm9mZnNldCx1dGM6ZS51dGN9Om51bGwpfSxyZXNldFN0YXRlOmZ1bmN0aW9uKHQpeygwLHQuY29tbWl0KSgidW5zZXREYXRhIil9fSxtdXRhdGlvbnM6e3Jlc2V0U2xvdHM6ZnVuY3Rpb24odCl7dC5zbG90cz1bXX0sc2V0VGltZXpvbmU6ZnVuY3Rpb24odCxlKXt0LnRpbWV6b25lPWV9LHNldFNsb3RzOmZ1bmN0aW9uKHQsZSl7dC5zbG90cz1lfSxzZXRTdGF0dXM6ZnVuY3Rpb24odCxlKXt0LmlzRW5hYmxlZD0hIWV9LHVuc2V0RGF0YTpmdW5jdGlvbih0KXtmb3IodmFyIGU9e2lzRW5hYmxlZDohMSxzbG90czpbXSx0aW1lem9uZTp7fX0sbj1PYmplY3Qua2V5cyhlKSxpPTA7aTxuLmxlbmd0aDtpKyspe3ZhciByPW5baV07dFtyXT1lW3JdfX19fX0sZjQwNjpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO24ucihlKTtlLmRlZmF1bHQ9e25hbWVzcGFjZWQ6ITAsc3RhdGU6e2FnZW50SXNUeXBpbmc6ITEsaXNSZWFkeTohMSxpc0Nvbm5lY3Rpbmc6ITEsc3RhY2s6W119LGdldHRlcnM6e2FnZW50SXNUeXBpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIHQuYWdlbnRJc1R5cGluZ30saXNSZWFkeTpmdW5jdGlvbih0KXtyZXR1cm4gdC5pc1JlYWR5fSxpc0Nvbm5lY3Rpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXNDb25uZWN0aW5nfX0sYWN0aW9uczp7dXBkYXRlRXZlbnQ6ZnVuY3Rpb24odCxlKXsoMCx0LmNvbW1pdCkoInNldEV2ZW50IixlKX0sdXBkYXRlSXNSZWFkeTpmdW5jdGlvbih0LGUpe3ZhciBuPXQuY29tbWl0OygwLHQuZGlzcGF0Y2gpKCJzZXNzaW9uL3NlbmROYXZpZ2F0aW9uRXZlbnQiLHt9LHtyb290OiEwfSksbigic2V0SXNSZWFkeSIsZSksbigic2V0SXNDb25uZWN0aW5nIiwhMSl9LHVwZGF0ZUlzQ29ubmVjdGluZzpmdW5jdGlvbih0LGUpeygwLHQuY29tbWl0KSgic2V0SXNDb25uZWN0aW5nIixlKX0scmVzZXRTdGF0ZTpmdW5jdGlvbih0KXsoMCx0LmNvbW1pdCkoInVuc2V0RGF0YSIpfX0sbXV0YXRpb25zOntzZXRFdmVudDpmdW5jdGlvbih0LGUpe3RbZS5ldmVudF09ZS52YWx1ZX0sc2V0SXNSZWFkeTpmdW5jdGlvbih0LGUpe3QuaXNSZWFkeT1lfSxzZXRJc0Nvbm5lY3Rpbmc6ZnVuY3Rpb24odCxlKXt0LmlzQ29ubmVjdGluZz1lfSx1bnNldERhdGE6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXthZ2VudElzVHlwaW5nOiExLGlzUmVhZHk6ITEsaXNDb25uZWN0aW5nOiExLHN0YWNrOltdfSxuPU9iamVjdC5rZXlzKGUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXTt0W3JdPWVbcl19fX19fSxmYWQyOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO3ZhciBpPW4oImQzYTQiKSxyPXtpc0dlbmVyYXRlZE5hbWU6ZnVuY3Rpb24odCl7cmV0dXJuL15WWzAtOV17MTZ9JC8udGVzdCh0KX0scGFyc2VWaXNpdG9yTmFtZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5pc0dlbmVyYXRlZE5hbWUodCk/aS5hJiYiZnVuY3Rpb24iPT10eXBlb2YgaS5hLiRpMThuP2kuYS4kaTE4bigiY2hhdCIsImRlZmF1bHRfbmFtZSIpOiJZb3UiOnR9LGZvcm1hdFZpc2l0b3JMb2dpbkRhdGE6ZnVuY3Rpb24odCl7dmFyIGU9e307cmV0dXJuIE9iamVjdC5rZXlzKHQpLmZvckVhY2goKGZ1bmN0aW9uKG4peyJoYXNoIiE9PW4mJiJ1c2VySWQiIT09biYmIm5hbWUiIT09biYmImVtYWlsIiE9PW4mJiJwaG9uZSIhPT1uPyh2b2lkIDA9PT1lLmF0dHJpYnV0ZXMmJihlLmF0dHJpYnV0ZXM9e30pLGUuYXR0cmlidXRlc1tuXT10W25dKTplW25dPXRbbl19KSksZX19fX1dKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9dHdrLWNodW5rLWNvbW1vbi5qcy5tYXA="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/languages/en_dev.json","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.695Z","timestamp":1785143154695,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/languages/en_dev.json HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\r\nOrigin: https://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/json\r\nlast-modified: Wed, 08 Jul 2026 14:56:39 GMT\r\netag: W/\"73eea1de9215521cb137b51419ba55a9\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11054\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=4,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c2cdb011a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":10839,"size_decoded":4370,"mime_type":"application/json","magic":"JSON text data","md5":"73eea1de9215521cb137b51419ba55a9","sha1":"a8876b573146cd5450adc92a5450febea8d33f22","sha256":"df1d970dbd95be40780e8c006102fa7892bfe26bc989ee0c9222b089038542ee","sha512":"277849fa8a9d59430663b5c1aac29a198436731ab59bc5968ed9fcfb839f00a31e6e278c3c78547f6e1c20d94847963375de011be6493af268a7bac25cd15257","ssdeep":"192:ImwHq/LrnzPLEgIE1iN+xiDgGOy+HpVHnKWyay8V1K5Av+cE:s6LrnzCE1iN+xkDOy+Hp8/5Avy","tlshash":"c7224269ce504ea702c29647399f35437624429b1f54382eb78891ac0f8ec6f71f779e","first_seen":"2026-02-18T09:54:55.751197Z","last_seen":"2026-08-03T13:22:13.496624Z","times_seen":28302,"resource_available":false,"data":"ewogICJidWJibGUiOiB7CiAgICAiYXR0ZW50aW9uX2dyYWJiZXIiOiAiQ2hhdCBhdHRlbnRpb24gZ3JhYmJlciIKICB9LAogICJjaGF0IjogewogICAgImFjY2VwdF9jYWxsIjogIkFjY2VwdCIsCiAgICAiYWN0aXZlIjogIkFjdGl2ZSIsCiAgICAiYWdlbnRfcHJvZmlsZV9pbWFnZSI6ICJBZ2VudCBwcm9maWxlIGltYWdlIiwKICAgICJhZ2VudF9yaW5naW5nIjogIkluY29taW5nIENhbGwiLAogICAgImFsbF9jb252ZXJzYXRpb25zIjogIlNlZSBhbGwgY29udmVyc2F0aW9ucyIsCiAgICAiY2FsbF9lbmRfZGV0YWlscyI6ICJTdGFydGVkIGF0IHt7IHN0YXJ0ZWRPbiB9fSBhbmQgbGFzdGVkIHt7IGR1cmF0aW9uIH19IiwKICAgICJjYWxsX2Vycm9yX2xvYWQiOiAiVW5hYmxlIHRvIGxvYWQgY2FsbCBkZXRhaWxzLiIsCiAgICAiY2FsbF9zdGFydGVkX29uIjogIlN0YXJ0ZWQgYXQge3sgc3RhcnRlZE9uIH19IiwKICAgICJjaGF0X2VuZGVkIjogIllvdXIgY2hhdCBoYXMgZW5kZWQiLAogICAgImNoYXRfaWNvbiI6ICJDaGF0IGljb24iLAogICAgImNoYXRfcW0iOiAiQ2hhdD8iLAogICAgImNoYXRfdGV4dCI6ICJDaGF0IiwKICAgICJjaGF0X3dpZGdldCI6ICJDaGF0IHdpZGdldCIsCiAgICAiY2xvc2VfaWNvbiI6ICJDbG9zZSBpY29uIiwKICAgICJjb21wbGV0ZWRfY2FsbCI6ICJDYWxsIGVuZGVkIiwKICAgICJjb252ZXJzYXRpb25fZW5kZWRfb24iOiAiQ29udmVyc2F0aW9uIGVuZGVkIG9uIiwKICAgICJkZWNsaW5lX2NhbGwiOiAiRGVjbGluZSIsCiAgICAiZGVmYXVsdF9uYW1lIjogIllvdSAoY2hhbmdlIG5hbWUpIiwKICAgICJkZXBhcnRtZW50X2lzX2F3YXkiOiAiRGVwYXJ0bWVudCB7eyBzdHJvbmdTdGFydCB9fSB7eyBkZXBhcnRtZW50TmFtZSB9fSB7eyBzdHJvbmdFbmQgfX0gaXMgY3VycmVudGx5IGF3YXkuIiwKICAgICJkZXBhcnRtZW50X2lzX29mZmxpbmUiOiAiRGVwYXJ0bWVudCB7eyBzdHJvbmdTdGFydCB9fSB7eyBkZXBhcnRtZW50TmFtZSB9fSB7eyBzdHJvbmdFbmQgfX0gaXMgY3VycmVudGx5IG9mZmxpbmUuIFlvdSBtaWdodCBiZSBzZXJ2ZWQgYnkgYW5vdGhlciBkZXBhcnRtZW50LiIsCiAgICAiZG93bmxvYWQiOiAiRG93bmxvYWQiLAogICAgImRvd25sb2FkX2ZpbGUiOiAiRG93bmxvYWQgRmlsZSIsCiAgICAiZHJhZ19kcm9wX3RleHQiOiAiRHJvcCBmaWxlcyBoZXJlIHRvIHVwbG9hZCIsCiAgICAiZW1vamlfZXJyb3JfbG9hZCI6ICJVbmFibGUgdG8gbG9hZCBlbW9qaXMiLAogICAgImVuZF9jYWxsIjogIkVuZCBjYWxsIiwKICAgICJlcnJvcl90aXRsZSI6ICJFcnJvciIsCiAgICAiZmFpbGVkIjogIkZhaWxlZCIsCiAgICAiZ2VuZXJhbF91cGxvYWRfZXJyb3IiOiAiXCJ7eyBmaWxlTmFtZSB9fVwiLCBwbGVhc2UgdHJ5IGFnYWluLiIsCiAgICAiZ2VuZXJhbF91cGxvYWRfZXJyb3JfbGFiZWwiOiAiVW5hYmxlIHRvIHVwbG9hZCBmaWxlIiwKICAgICJnb190b19sYXRlc3QiOiAiR28gdG8gbGF0ZXN0IiwKICAgICJoaWRlX2J1dHRvbiI6ICJIaWRlIENoYXQiLAogICAgImhvdXJzX29uZSI6ICJ7eyBjb3VudCB9fSBob3VyIiwKICAgICJob3Vyc19vdGhlciI6ICJ7eyBjb3VudCB9fSBob3VycyIsCiAgICAiaW5jb21pbmdfY2FsbF9tZXNzYWdlIjogIkluY29taW5nIGNhbGwgZnJvbSB7eyBuYW1lIH19IiwKICAgICJpbnNlcnRfZW1vamkiOiAiSW5zZXJ0IGVtb2ppIiwKICAgICJ2b2ljZV9tZXNzYWdlIjogIlZvaWNlIE1lc3NhZ2UiLAogICAgImp1c3Rfbm93IjogImp1c3Qgbm93IiwKICAgICJsaW1pdF8yIjogIlRoZSBtYXhpbXVtIGZpbGUgc2l6ZSBpcyAyTUIgZm9yIG1vYmlsZSBicm93c2VycywgcGxlYXNlIHVwbG9hZCBhIHNtYWxsZXIgZmlsZS4iLAogICAgImxpbWl0XzUwIjogIlRoZSBtYXhpbXVtIGZpbGUgc2l6ZSBpcyA1ME1CLCBwbGVhc2UgdXBsb2FkIGEgc21hbGxlciBmaWxlLiIsCiAgICAibWVzc2FnZV9ub3RfZGVsaXZlcmVkIjogIk1lc3NhZ2Ugbm90IGRlbGl2ZXJlZCwgY2xpY2sgaGVyZSB0byByZXNlbmQuIiwKICAgICJtZXNzYWdlX3F1ZXVlZF90ZXh0X29uZSI6ICJFc3RpbWF0ZWQgd2FpdCB0aW1lIGlzIHt7IHN0cm9uZ1N0YXJ0IH19IHt7IGNvdW50IH19IG1pbnV0ZSB7eyBzdHJvbmdFbmQgfX0iLAogICAgIm1lc3NhZ2VfcXVldWVkX3RleHRfb3RoZXIiOiAiRXN0aW1hdGVkIHdhaXQgdGltZSBpcyB7eyBzdHJvbmdTdGFydCB9fSB7eyBjb3VudCB9fSBtaW51dGVzIHt7IHN0cm9uZ0VuZCB9fSIsCiAgICAibWVzc2FnZV90b29fbG9uZyI6ICJNZXNzYWdlIGNhbm5vdCBleGNlZWQgNTAwMCBjaGFyYWN0ZXJzIiwKICAgICJtaW51dGVzX29uZSI6ICJ7eyBjb3VudCB9fSBtaW51dGUiLAogICAgIm1pbnV0ZXNfb3RoZXIiOiAie3sgY291bnQgfX0gbWludXRlcyIsCiAgICAibWlzc2VkX2FnZW50IjogIllvdXIgY2FsbCB3YXMgbWlzc2VkIiwKICAgICJtaXNzZWRfdmlzaXRvciI6ICJZb3UgbWlzc2VkIGEgY2FsbCIsCiAgICAibWlzc2VkX3Zpc2l0b3JfbWVzc2FnZV9wcmV2aWV3IjogIllvdSBtaXNzZWQgYSBjYWxsIGZyb20iLAogICAgIm1vYmlsZV9uYW1lIjogIllvdSIsCiAgICAibmV3X2NoYXQiOiAiU3RhcnQgTmV3IENoYXQiLAogICAgIm5ld19jb252ZXJzYXRpb24iOiAiTmV3IENvbnZlcnNhdGlvbiIsCiAgICAibmV3X21lc3NhZ2Vfb25lIjogInt7IGNvdW50IH19IG5ldyBtZXNzYWdlIiwKICAgICJuZXdfbWVzc2FnZV9vdGhlciI6ICJ7eyBjb3VudCB9fSBuZXcgbWVzc2FnZXMiLAogICAgIm5ld19tZXNzYWdlcyI6ICJOZXcgbWVzc2FnZXMiLAogICAgIm5vdGlmaWNhdGlvbl90aXRsZSI6ICJub3RpZmljYXRpb24iLAogICAgIm9uZ29pbmdfY2FsbCI6ICJPbmdvaW5nIENhbGwiLAogICAgInBhc3QiOiAie3sgdGltZSB9fSBhZ28iLAogICAgInBhc3RlZF9pbWFnZV90aXRsZSI6ICJQYXN0ZWQgaW1hZ2UgYXQge3sgZGF0ZVRpbWUgfX0iLAogICAgInByb2ZpbGVfcHJlY2hhdF90ZXh0IjogIlBsZWFzZSBmaWxsIG91dCB0aGUgZm9ybSBiZWxvdyB0byBzdGFydCBjaGF0dGluZyB3aXRoIG1lLiIsCiAgICAicmVqZWN0ZWRfY2FsbCI6ICJZb3UgcmVqZWN0ZWQgdGhpcyBjYWxsIiwKICAgICJyZW1vdmVfcmF0ZSI6ICJZb3UgcmVtb3ZlZCB5b3VyIHJhdGluZyBmb3IgdGhpcyBjb252ZXJzYXRpb24iLAogICAgInJlc2VuZCI6ICJSZXNlbmQiLAogICAgInJldHJ5IjogIlJldHJ5LiIsCiAgICAicmV0dXJuX3RvX2xpdmVfY2hhdCI6ICJSZXR1cm4gdG8gbGl2ZSBjaGF0IiwKICAgICJzYXlfc29tZXRoaW5nIjogIldyaXRlIGEgcmVwbHkuLiIsCiAgICAic2NyZWVuX3NoYXJlX2Vycm9yIjogIlNjcmVlbiBzaGFyZSBpcyBub3QgYXZhaWxhYmxlLiIsCiAgICAic2Vjb25kc19vbmUiOiAie3sgY291bnQgfX0gc2Vjb25kIiwKICAgICJzZWNvbmRzX290aGVyIjogInt7IGNvdW50IH19IHNlY29uZHMiLAogICAgInNlbmRfbWFpbCI6ICJTZW5kIE1haWwiLAogICAgInNlbnRfZmlsZSI6ICJTZW50IGEgZmlsZSIsCiAgICAic2VudF9mb3JtIjogIlNlbnQgYSBmb3JtIiwKICAgICJzZW50X3N1Z2dlc3RlZF9tZXNzYWdlIjogIlNlbnQgYSBzdWdnZXN0ZWQgbWVzc2FnZSIsCiAgICAidG9kYXlfdGltZSI6ICJUb2RheSwge3sgdGltZSB9fSIsCiAgICAidHJ5X2FnYWluIjogIlRyeSBhZ2Fpbi4iLAogICAgInVuYW5zd2VyZWQiOiAiVW5hbnN3ZXJlZCIsCiAgICAidXBsb2FkaW5nIjogIlVwbG9hZGluZy4uLiIsCiAgICAidmlkZW9fY2FsbF9lcnJvciI6ICJWaWRlbyBjYWxsIGlzIG5vdCBhdmFpbGFibGUuIiwKICAgICJ2aXNpdG9yX3JpbmdpbmciOiAiQ2FsbGluZy4uLiIsCiAgICAidm9pY2VfY2FsbF9lcnJvciI6ICJWb2ljZSBjYWxsIGlzIG5vdCBhdmFpbGFibGUuIiwKICAgICJ3YXJuaW5nIjogIldhcm5pbmciLAogICAgIndlX2FyZV9saXZlIjogIldlIGFyZSBsaXZlIGFuZCByZWFkeSB0byBjaGF0IHdpdGggeW91IG5vdy4gU2F5IHNvbWV0aGluZyB0byBzdGFydCBhIGxpdmUgY2hhdC4iLAogICAgInJlY2VudCI6ICJSZWNlbnQiLAogICAgInN0YXJ0X25ld19jaGF0IjogIlN0YXJ0IGEgbmV3IENoYXQiLAogICAgIm5vdyI6ICJub3ciLAogICAgImNsaWNrX3RvX3JlY29yZCI6ICJDbGljayB0byBzdGFydCByZWNvcmRpbmciLAogICAgInN0YXJ0X3JlY29yZGluZyI6ICJTdGFydCBSZWNvcmRpbmciLAogICAgInN0b3BfcmVjb3JkaW5nIjogIlN0b3AgUmVjb3JkaW5nIiwKICAgICJyZXJlY29yZCI6ICJSZS1yZWNvcmQiCiAgfSwKICAiZGF5cyI6IHsKICAgICIwIjogIlN1bmRheSIsCiAgICAiMSI6ICJNb25kYXkiLAogICAgIjIiOiAiVHVlc2RheSIsCiAgICAiMyI6ICJXZWRuZXNkYXkiLAogICAgIjQiOiAiVGh1cnNkYXkiLAogICAgIjUiOiAiRnJpZGF5IiwKICAgICI2IjogIlNhdHVyZGF5IgogIH0sCiAgImZvcm0iOiB7CiAgICAiYW55IjogIkFueSIsCiAgICAiY2FuY2VsX2J1dHRvbiI6ICJDYW5jZWwiLAogICAgImNoYXRfZW5kZWQiOiAiWW91ciBjaGF0IGhhcyBlbmRlZCIsCiAgICAiY2xvc2VfYnV0dG9uIjogIkNsb3NlIiwKICAgICJkZXBhcnRtZW50IjogIkRlcGFydG1lbnQiLAogICAgImRlcGFydG1lbnRzX2Vycm9yX21lc3NhZ2UiOiAiRGVwYXJ0bWVudCBpcyByZXF1aXJlZC4iLAogICAgImRlcGFydG1lbnRzX3BsYWNlaG9sZGVyIjogInNlbGVjdCBkZXBhcnRtZW50Li4iLAogICAgImVtYWlsIjogIkVtYWlsIiwKICAgICJlbWFpbF9lcnJvcl9tZXNzYWdlIjogIkludmFsaWQgZW1haWwgYWRkcmVzcy4iLAogICAgImVtYWlsX3BsYWNlaG9sZGVyIjogIkVtYWlsIEFkZHJlc3MiLAogICAgImVtYWlsX3RyYW5zY3JpcHRfZm9ybV9tZXNzYWdlIjogIlBsZWFzZSBmaWxsIG91dCB0aGUgZm9ybSBiZWxvdyB0byBoYXZlIHRoaXMgY29udmVyc2F0aW9uIHNlbnQgdG8geW91ciBlbWFpbCBhZGRyZXNzLiIsCiAgICAiZW1haWxfdHJhbnNjcmlwdF9zdWNjZXNzIjogIlNlbnQgZW1haWwgdHJhbnNjcmlwdCByZXF1ZXN0LiIsCiAgICAiZW1haWxfdHJhbnNjcmlwdF90byI6ICJFbWFpbCB0cmFuc2NyaXB0IHRvIiwKICAgICJlbmRfY2hhdF9tZXNzYWdlIjogIlRoYW5rIHlvdSBmb3IgY2hhdHRpbmcgd2l0aCB1cy4gRmVlbCBmcmVlIHRvIHN0YXJ0IGEgbmV3IGNoYXQgc2Vzc2lvbiBvciBlbnRlciB5b3VyIGVtYWlsIGFuZCBzZW5kIGEgdHJhbnNjcmlwdCBvZiB0aGlzIGNvbnZlcnNhdGlvbiB0byB5b3VyIGluYm94LiIsCiAgICAiZW5kX2NoYXRfbWVzc2FnZV8yIjogIlRoYW5rIHlvdSBmb3IgY2hhdHRpbmcgd2l0aCB1cy4gRmVlbCBmcmVlIHRvIHN0YXJ0IGEgbmV3IGNoYXQgc2Vzc2lvbi4iLAogICAgImVuZF9jaGF0X3RpdGxlIjogIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBlbmQgdGhpcyBjaGF0PyIsCiAgICAiZXJyb3Jfc2F2aW5nIjogIlVuYWJsZSB0byBzYXZlLiBQbGVhc2UgdHJ5IGFnYWluIiwKICAgICJtZXNzYWdlIjogIk1lc3NhZ2UiLAogICAgIm1lc3NhZ2VfcGxhY2Vob2xkZXIiOiAieW91ciBtZXNzYWdlLi4iLAogICAgIm5hbWUiOiAiTmFtZSIsCiAgICAibmFtZV9lcnJvcl9tZXNzYWdlIjogIk5hbWUgbXVzdCBiZSBwcm92aWRlZC4iLAogICAgIm5hbWVfZm9ybV9tZXNzYWdlIjogIlBsZWFzZSBjaGFuZ2UgeW91ciBuYW1lIHNvIHdlIGNhbiByZWNvZ25pemUgeW91IHRoZSBuZXh0IHRpbWUuIiwKICAgICJvZmZsaW5lX2Zvcm1fbWVzc2FnZSI6ICJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgYW5kIHdlIHdpbGwgZ2V0IGJhY2sgdG8geW91IGFzIHNvb24gYXMgcG9zc2libGUuIiwKICAgICJvZmZsaW5lX21lc3NhZ2Vfbm90X3NlbnQiOiAiWW91ciBtZXNzYWdlIHdhcyBub3QgZGVsaXZlcmVkLCBwbGVhc2UgcmV0cnkiLAogICAgIm9mZmxpbmVfbWVzc2FnZV9zZW50IjogIllvdXIgbWVzc2FnZSB3YXMgc2VudCBzdWNjZXNzZnVsbHkhIiwKICAgICJwaG9uZV9lcnJvcl9tZXNzYWdlIjogIkludmFsaWQgcGhvbmUgbnVtYmVyIiwKICAgICJwaG9uZV9pbnZhbGlkX2NvdW50cnlfY29kZSI6ICJJbnZhbGlkIGNvdW50cnkgY29kZSIsCiAgICAicGhvbmUiOiAiUGhvbmUiLAogICAgInByZV9jaGF0X2Zvcm1fbWVzc2FnZSI6ICJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgdG8gc3RhcnQgY2hhdHRpbmcgd2l0aCB0aGUgbmV4dCBhdmFpbGFibGUgYWdlbnQuIiwKICAgICJwcmVfY2hhdF9mb3JtX21lc3NhZ2VfcHJvZmlsZSI6ICJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgdG8gc3RhcnQgY2hhdHRpbmcgd2l0aCBtZS4iLAogICAgInF1ZXN0aW9uX3BsYWNlaG9sZGVyIjogInlvdXIgcXVlcnkuLiIsCiAgICAicmVxdWVzdF9zZW50IjogIllvdXIgcmVxdWVzdCBoYXMgYmVlbiBzZW50IiwKICAgICJyZXF1aXJlZF9lcnJvcl9tZXNzYWdlIjogIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQiLAogICAgImFsbF9yZXF1aXJlZF9lcnJvcl9tZXNzYWdlIjogIkZpbGwgaW4gYWxsIHJlcXVpcmVkIGZpZWxkcyB0byBzdWJtaXQuIiwKICAgICJzYXZlX2J1dHRvbiI6ICJTYXZlIiwKICAgICJzZW5kX2FnYWluIjogIlNlbmQgQWdhaW4iLAogICAgInNlbmRfYnV0dG9uIjogIlNlbmQiLAogICAgInNlbmRfbWVzc2FnZSI6ICJTZW5kIG1lc3NhZ2UiLAogICAgInN1YmplY3QiOiAiU3ViamVjdCIsCiAgICAic3RhcnRfY2hhdF9idXR0b24iOiAiU3RhcnQgQ2hhdCIsCiAgICAic3VibWl0X2J1dHRvbiI6ICJTdWJtaXQiLAogICAgInN1Ym1pdHRlZF9mcm9tIjogIlN1Ym1pdHRlZCBGcm9tIiwKICAgICJzdWJtaXR0aW5nX3Byb2Nlc3MiOiAiU3VibWl0dGluZyIsCiAgICAidHJhbnNjcmlwdF9tZXNzYWdlIjogIkZlZWwgZnJlZSB0byBlbnRlciB5b3VyIGVtYWlsIGFuZCBzZW5kIGEgdHJhbnNjcmlwdCBvZiB0aGlzIGNvbnZlcnNhdGlvbiB0byB5b3VyIGluYm94LiIsCiAgICAidmlzaXRfYnV0dG9uIjogIlZpc2l0IHRhd2sudG8iLAogICAgImxlYWRfZm9ybV9zdWNjZXNzX21lc3NhZ2UiIDogIlRoYW5rIHlvdSBmb3IgeW91ciBkZXRhaWxzISBXZSdsbCBnZXQgYmFjayB0byB5b3UgYXMgc29vbiBhcyBwb3NzaWJsZS4iLAogICAgInRpY2tldF9mb3JtX3N1Y2Nlc3NfbWVzc2FnZSIgOiAiWW91ciB0aWNrZXQgaGFzIGJlZW4gc3VibWl0dGVkLiBUaGFuayB5b3UhIiwKICAgICJpbmNvbXBsZXRlX251bWJlciI6ICJJbmNvbXBsZXRlIG51bWJlciIKICB9LAogICJob21lIjogewogICAgImJhbm5lcl9pbWFnZSI6ICJCYW5uZXIgaW1hZ2UiLAogICAgImNoYXRfYnV0dG9uIjogIk5ldyBDb252ZXJzYXRpb24iLAogICAgImNoYXRfYnV0dG9uX3N1YnRpdGxlIjogIldlIHR5cGljYWxseSByZXBseSBpbiBhIGZldyBtaW51dGVzIiwKICAgICJjaGF0X2lucHV0IjogIlR5cGUgaGVyZSBhbmQgcHJlc3MgZW50ZXIuLiIsCiAgICAiaGVhZGluZ19tYWluIjogIkhpIHRoZXJlIPCfkYsiLAogICAgImhlYWRpbmdfc3ViIjogIk5lZWQgaGVscD8gU2VhcmNoIG91ciBoZWxwIGNlbnRlciBmb3IgYW5zd2VycyBvciBzdGFydCBhIGNvbnZlcnNhdGlvbjoiLAogICAgImtiX3NlYXJjaCI6ICJTZWFyY2ggZm9yIGFuc3dlcnMiLAogICAgImxvZ29faW1hZ2UiOiAiTG9nbyBpbWFnZSIsCiAgICAicmVjZW50X2NvbnZlcnNhdGlvbnMiOiAiUmVjZW50IENvbnZlcnNhdGlvbiIsCiAgICAia2JfZmVhdHVyZWRfYXJ0aWNsZXMiOiAiS25vd2xlZGdlIEJhc2UiLAogICAgImhvbWUiOiAiSG9tZSIsCiAgICAibWVzc2FnZXMiOiAiTWVzc2FnZXMiLAogICAgIm5vX3JlY2VudF9jb252ZXJzYXRpb25zIjogIk5vIHJlY2VudCBjb252ZXJzYXRpb25zIgogIH0sCiAgImtiIjogewogICAgImFydGljbGVfaW1hZ2UiOiAiQXJ0aWNsZSBpbWFnZSIsCiAgICAiYXJ0aWNsZV9yYXRpbmciOiAiV2FzIHRoaXMgYXJ0aWNsZSBoZWxwZnVsPyIsCiAgICAiYXJ0aWNsZV9yYXRpbmdfY291bnQiOiAie3sgdG90YWxMaWtlcyB9fSBvdXQgb2Yge3sgdG90YWxWb3RlcyB9fSBsaWtlZCB0aGlzIGFydGljbGUiLAogICAgImF1dGhvcl9wcm9maWxlX2ltYWdlIjogIkF1dGhvciBwcm9maWxlIGltYWdlIiwKICAgICJjbGVhcl9zZWFyY2giOiAiQ2xlYXIgU2VhcmNoIiwKICAgICJkb3dudm90ZV9yYXRpbmdfYnV0dG9uIjogIk5vIiwKICAgICJoZWxwX2NlbnRlciI6ICJIZWxwIENlbnRlciIsCiAgICAibmVnYXRpdmVfcmF0aW5nIjogIk5lZ2F0aXZlIiwKICAgICJwb3NpdGl2ZV9yYXRpbmciOiAiUG9zaXRpdmUiLAogICAgInJlY2VudF9zZWFyY2hlcyI6ICJSZWNlbnQgU2VhcmNoZXMiLAogICAgInNlYXJjaF9mYWlsX2Rlc2NyaXB0aW9uIjogIlBsZWFzZSwgdHJ5IGFnYWluIiwKICAgICJzZWFyY2hfZmFpbF90aXRsZSI6ICJObyBzZWFyY2ggcmVzdWx0cyIsCiAgICAic2VhcmNoX3BsYWNlaG9sZGVyIjogIlNlYXJjaCBmb3IgYW5zd2VycyIsCiAgICAic2VhcmNoX3Jlc3VsdHMiOiAiU2VhcmNoIFJlc3VsdHMiLAogICAgInNob3dfYWxsX3Jlc3VsdHMiOiAiU2hvdyBhbGwgcmVzdWx0cyAoe3sgbnVtIH19KSIsCiAgICAic3VibWl0X3NlYXJjaCI6ICJTdWJtaXQgU2VhcmNoIiwKICAgICJ1cHZvdGVfcmF0aW5nX2J1dHRvbiI6ICJZZXMiLAogICAgInZpZXdfZnVsbCI6ICJWaWV3IGluIGZ1bGwiCiAgfSwKICAibWVudSI6IHsKICAgICJhZGRfY2hhdF90b195b3VyX3dlYnNpdGUiOiAiQWRkIENoYXQgdG8geW91ciB3ZWJzaXRlIiwKICAgICJjaGFuZ2VfbmFtZSI6ICJDaGFuZ2UgTmFtZSIsCiAgICAiZW1haWxfdHJhbnNjcmlwdCI6ICJFbWFpbCB0cmFuc2NyaXB0IiwKICAgICJlbmRfY2hhdF9zZXNzaW9uIjogIkVuZCB0aGlzIGNoYXQgc2Vzc2lvbiIsCiAgICAicG9wb3V0X3dpZGdldCI6ICJQb3Agb3V0IHdpZGdldCIsCiAgICAic291bmRfb2ZmIjogIlNvdW5kIE9mZiIsCiAgICAic291bmRfb24iOiAiU291bmQgT24iCiAgfSwKICAibW9udGhzIjogewogICAgIjAiOiAiSmFudWFyeSIsCiAgICAiMSI6ICJGZWJydWFyeSIsCiAgICAiMTAiOiAiTm92ZW1iZXIiLAogICAgIjExIjogIkRlY2VtYmVyIiwKICAgICIyIjogIk1hcmNoIiwKICAgICIzIjogIkFwcmlsIiwKICAgICI0IjogIk1heSIsCiAgICAiNSI6ICJKdW5lIiwKICAgICI2IjogIkp1bHkiLAogICAgIjciOiAiQXVndXN0IiwKICAgICI4IjogIlNlcHRlbWJlciIsCiAgICAiOSI6ICJPY3RvYmVyIgogIH0sCiAgIm5vdGlmaWNhdGlvbnMiOiB7CiAgICAiZGlzbWlzc19hbGVydCI6ICJEaXNtaXNzIEFsZXJ0IiwKICAgICJtYXhpbXVtX2ZpbGVfdXBsb2FkX3dhcm5pbmciOiAiU29ycnksIGZpbGUgdHJhbnNmZXIgaXMgbGltaXRlZCB0byB7eyBsaW1pdEZpbGVOdW1iZXIgfX0gZmlsZXMgYXQgYSB0aW1lLiBQbGVhc2UgdHJ5IHRoZSBmb2xsb3dpbmcgZmlsZShzKSBhZ2FpbiA6IiwKICAgICJtYXhpbXVtX3NpemVfdXBsb2FkX3dhcm5pbmciOiAiU29ycnksIGZpbGUgdHJhbnNmZXIgaXMgbGltaXRlZCB0byB7eyBsaW1pdEZpbGVTaXplIH19IHBlciBmaWxlLiBQbGVhc2UgY29tcHJlc3MgdGhlIGZvbGxvd2luZyBmaWxlKHMpIGFuZCB0cnkgYWdhaW4uIiwKICAgICJyZWNvbm5lY3RpbmciOiAiUmVjb25uZWN0aW5nIiwKICAgICJyZXRyeSI6ICJSZXRyeSIKICB9LAogICJvdmVybGF5IjogewogICAgImNvb2tpZXNfb2ZmIjogIllvdSBjYW4ndCB1c2UgdGhpcyBjaGF0IGJlY2F1c2UgeW91ciBicm93c2VyJ3MgY29va2llIGZ1bmN0aW9uYWxpdHkgaXMgdHVybmVkIG9mZi4gUGxlYXNlIHR1cm4gaXQgb24gYW5kIHJlZnJlc2ggeW91ciBicm93c2VyLiIsCiAgICAiaW5hY3RpdmUiOiAiQ2xpY2sgaGVyZSB0byByZWluaXRpYXRlIHRoZSBjaGF0IiwKICAgICJtYWludGVuYW5jZSI6ICJDaGF0IGlzIGluIG1haW50ZW5hbmNlIiwKICAgICJ0YXdrX2NvbnRlbnQiOiAiVGhpcyB3aWRnZXQgaXMgcG93ZXJlZCBieSB0YXdrLnRvIC0gYSBmcmVlIG1lc3NhZ2luZyBhcHBsaWNhdGlvbiB0aGF0IGxldHMgeW91IG1vbml0b3IgYW5kIGVuZ2FnZSB3aXRoIHRoZSB2aXNpdG9ycyBvbiB5b3VyIHdlYnNpdGUuIgogIH0sCiAgInJvbGxvdmVyIjogewogICAgImJhY2siOiAiQmFjayIsCiAgICAiY2hhdF9tZW51IjogIk1lbnUiLAogICAgImVtYWlsX3RyYW5zY3JpcHRfb3B0aW9uIjogIkVtYWlsIFRyYW5zY3JpcHQiLAogICAgImVuZCI6ICJFbmQgQ2hhdCIsCiAgICAia25vd2xlZGdlX2Jhc2UiOiAia25vd2xlZGdlIEJhc2UiLAogICAgIm1heGltaXplIjogIk1heGltaXplIiwKICAgICJtaW5pbWl6ZSI6ICJNaW5pbWl6ZSIsCiAgICAibmVnYXRpdmVfcmF0aW5nIjogIlJhdGUgdGhpcyBjb252ZXJzYXRpb24gd2l0aCAtMSIsCiAgICAicG9wX291dCI6ICJQb3Agb3V0IiwKICAgICJwb3NpdGl2ZV9yYXRpbmciOiAiUmF0ZSB0aGlzIGNvbnZlcnNhdGlvbiB3aXRoICsxIiwKICAgICJyYXRlX2NoYXQiOiAiUmF0ZSB0aGlzIGNoYXQiLAogICAgInJlc2VuZF9tZXNzYWdlIjogIlJlc2VuZCBtZXNzYWdlIiwKICAgICJyZXNpemUiOiAiUmVzaXplIiwKICAgICJzY3JlZW5fc2hhcmUiOiAiU2NyZWVuIFNoYXJlIiwKICAgICJ1cGxvYWRfZmlsZSI6ICJVcGxvYWQgRmlsZSIsCiAgICAidmlkZW9fY2FsbCI6ICJWaWRlbyBDYWxsIiwKICAgICJ2b2ljZV9jYWxsIjogIlZvaWNlIENhbGwiCiAgfSwKICAicm91dGVzIjogewogICAgImFsbF9hZ2VudHMiOiAiQWxsIEFnZW50cyIsCiAgICAiY29udmVyc2F0aW9ucyI6ICJDb252ZXJzYXRpb25zIiwKICAgICJsb2FkX21vcmUiOiAiTG9hZCBNb3JlIgogIH0sCiAgInN0YXR1cyI6IHsKICAgICJhd2F5IjogIkF3YXkiLAogICAgIm9mZmxpbmUiOiAiT2ZmbGluZSIsCiAgICAib25saW5lIjogIk9ubGluZSIKICB9Cn0K"}},"time_used":9,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-6289ff8e.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.344Z","timestamp":1785143155344,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-6289ff8e.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"2528753fcff2713c9c633700cb6ab7fe\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30e9730883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":107247,"size_decoded":27605,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"2528753fcff2713c9c633700cb6ab7fe","sha1":"3ae9318912ac6a038860dfc27d45d52a57dbffa5","sha256":"65b1a9237f942dada0c03510e49b1901c6fe2f0ad77b3031a01bd7303455a918","sha512":"e966691ba781c2a88bdb825bb2c04c702c09834c10e2f4b66dd4d37ddee1c3d1f4848c3fcc038803f9c1d3e0fe2ef450c2cb6fddad3e01c4cf872797ee4fd285","ssdeep":"1536:BigMTWFu196woffn32j8DegaOqbWbaGlDluK1k+YZdZPkx3u4V5pfYMrlSf:4nmuTcgGHbJx3u4V5pPrlSf","tlshash":"3ba3096ef091b47d8993d26120af3212f3363d55a919d0a8f234cdf859d89c9a127f3e","first_seen":"2026-07-08T23:24:03.881188Z","last_seen":"2026-08-03T12:50:03.409966Z","times_seen":2492,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstNjI4OWZmOGUiLCJjaHVuay0yZDBlNGE3YyJdLHsiMDZkNSI6ZnVuY3Rpb24odCxlLGEpeyhlPWEoIjI0ZmIiKSghMSkpLnB1c2goW3QuaSwiLnRhd2stYnV0dG9uLWhvdmVyW2RhdGEtdi0yZmMyZDk1ZF06Zm9jdXMsLnRhd2stYnV0dG9uLWhvdmVyW2RhdGEtdi0yZmMyZDk1ZF06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMikhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NXB4IWltcG9ydGFudH0iLCIiXSksdC5leHBvcnRzPWV9LCIyNGZiIjpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCxlKXt2YXIgYT10WzFdfHwiIixpPXRbM107aWYoIWkpcmV0dXJuIGE7aWYoZSYmImZ1bmN0aW9uIj09dHlwZW9mIGJ0b2Epe3ZhciBzPWZ1bmN0aW9uKHQpe3ZhciBlPWJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHQpKSkpLGE9InNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIuY29uY2F0KGUpO3JldHVybiIvKiMgIi5jb25jYXQoYSwiICovIil9KGkpLG49aS5zb3VyY2VzLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIi8qIyBzb3VyY2VVUkw9Ii5jb25jYXQoaS5zb3VyY2VSb290fHwiIikuY29uY2F0KHQsIiAqLyIpfSkpO3JldHVyblthXS5jb25jYXQobikuY29uY2F0KFtzXSkuam9pbigiXG4iKX1yZXR1cm5bYV0uam9pbigiXG4iKX10LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9W107cmV0dXJuIGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoKGZ1bmN0aW9uKGUpe3ZhciBhPWkoZSx0KTtyZXR1cm4gZVsyXT8iQG1lZGlhICIuY29uY2F0KGVbMl0sIiB7IikuY29uY2F0KGEsIn0iKTphfSkpLmpvaW4oIiIpfSxlLmk9ZnVuY3Rpb24odCxhLGkpeyJzdHJpbmciPT10eXBlb2YgdCYmKHQ9W1tudWxsLHQsIiJdXSk7dmFyIHM9e307aWYoaSlmb3IodmFyIG49MDtuPHRoaXMubGVuZ3RoO24rKyl7dmFyIHI9dGhpc1tuXVswXTtudWxsIT1yJiYoc1tyXT0hMCl9Zm9yKHZhciBvPTA7bzx0Lmxlbmd0aDtvKyspe3ZhciBjPVtdLmNvbmNhdCh0W29dKTtpJiZzW2NbMF1dfHwoYSYmKGNbMl0/Y1syXT0iIi5jb25jYXQoYSwiIGFuZCAiKS5jb25jYXQoY1syXSk6Y1syXT1hKSxlLnB1c2goYykpfX0sZX19LCI0OTllIjpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCxlKXtmb3IodmFyIGE9W10saT17fSxzPTA7czxlLmxlbmd0aDtzKyspe3ZhciBuPWVbc10scj1uWzBdLG89e2lkOnQrIjoiK3MsY3NzOm5bMV0sbWVkaWE6blsyXSxzb3VyY2VNYXA6blszXX07aVtyXT9pW3JdLnBhcnRzLnB1c2gobyk6YS5wdXNoKGlbcl09e2lkOnIscGFydHM6W29dfSl9cmV0dXJuIGF9YS5yKGUpLGEuZChlLCJkZWZhdWx0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKTt2YXIgcz0idW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50O2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgREVCVUcmJkRFQlVHJiYhcyl0aHJvdyBuZXcgRXJyb3IoInZ1ZS1zdHlsZS1sb2FkZXIgY2Fubm90IGJlIHVzZWQgaW4gYSBub24tYnJvd3NlciBlbnZpcm9ubWVudC4gVXNlIHsgdGFyZ2V0OiAnbm9kZScgfSBpbiB5b3VyIFdlYnBhY2sgY29uZmlnIHRvIGluZGljYXRlIGEgc2VydmVyLXJlbmRlcmluZyBlbnZpcm9ubWVudC4iKTt2YXIgbj17fSxyPXMmJihkb2N1bWVudC5oZWFkfHxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdKSxvPW51bGwsYz0wLGw9ITEsdT1mdW5jdGlvbigpe30saD1udWxsLGQ9ImRhdGEtdnVlLXNzci1pZCIsbT0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL21zaWUgWzYtOV1cYi8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkpO2Z1bmN0aW9uIGYodCxlLGEscyl7bD1hLGg9c3x8e307dmFyIHI9aSh0LGUpO3JldHVybiBwKHIpLGZ1bmN0aW9uKGUpe2Zvcih2YXIgYT1bXSxzPTA7czxyLmxlbmd0aDtzKyspe3ZhciBvPXJbc10sYz1uW28uaWRdO2MucmVmcy0tLGEucHVzaChjKX1mb3IoZT9wKHI9aSh0LGUpKTpyPVtdLHM9MDtzPGEubGVuZ3RoO3MrKylpZigwPT09KGM9YVtzXSkucmVmcyl7Zm9yKHZhciBsPTA7bDxjLnBhcnRzLmxlbmd0aDtsKyspYy5wYXJ0c1tsXSgpO2RlbGV0ZSBuW2MuaWRdfX19ZnVuY3Rpb24gcCh0KXtmb3IodmFyIGU9MDtlPHQubGVuZ3RoO2UrKyl7dmFyIGE9dFtlXSxpPW5bYS5pZF07aWYoaSl7aS5yZWZzKys7Zm9yKHZhciBzPTA7czxpLnBhcnRzLmxlbmd0aDtzKyspaS5wYXJ0c1tzXShhLnBhcnRzW3NdKTtmb3IoO3M8YS5wYXJ0cy5sZW5ndGg7cysrKWkucGFydHMucHVzaCh3KGEucGFydHNbc10pKTtpLnBhcnRzLmxlbmd0aD5hLnBhcnRzLmxlbmd0aCYmKGkucGFydHMubGVuZ3RoPWEucGFydHMubGVuZ3RoKX1lbHNle3ZhciByPVtdO2ZvcihzPTA7czxhLnBhcnRzLmxlbmd0aDtzKyspci5wdXNoKHcoYS5wYXJ0c1tzXSkpO25bYS5pZF09e2lkOmEuaWQscmVmczoxLHBhcnRzOnJ9fX19ZnVuY3Rpb24gZygpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7cmV0dXJuIHQudHlwZT0idGV4dC9jc3MiLHIuYXBwZW5kQ2hpbGQodCksdH1mdW5jdGlvbiB3KHQpe3ZhciBlLGEsaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJzdHlsZVsiK2QrJ349IicrdC5pZCsnIl0nKTtpZihpKXtpZihsKXJldHVybiB1O2kucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpKX1pZihtKXt2YXIgcz1jKys7aT1vfHwobz1nKCkpLGU9di5iaW5kKG51bGwsaSxzLCExKSxhPXYuYmluZChudWxsLGkscywhMCl9ZWxzZSBpPWcoKSxlPXkuYmluZChudWxsLGkpLGE9ZnVuY3Rpb24oKXtpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaSl9O3JldHVybiBlKHQpLGZ1bmN0aW9uKGkpe2lmKGkpe2lmKGkuY3NzPT09dC5jc3MmJmkubWVkaWE9PT10Lm1lZGlhJiZpLnNvdXJjZU1hcD09PXQuc291cmNlTWFwKXJldHVybjtlKHQ9aSl9ZWxzZSBhKCl9fXZhciBiPWZ1bmN0aW9uKCl7dmFyIHQ9W107cmV0dXJuIGZ1bmN0aW9uKGUsYSl7cmV0dXJuIHRbZV09YSx0LmZpbHRlcihCb29sZWFuKS5qb2luKCJcbiIpfX0oKTtmdW5jdGlvbiB2KHQsZSxhLGkpe3ZhciBzPWE/IiI6aS5jc3M7aWYodC5zdHlsZVNoZWV0KXQuc3R5bGVTaGVldC5jc3NUZXh0PWIoZSxzKTtlbHNle3ZhciBuPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHMpLHI9dC5jaGlsZE5vZGVzO3JbZV0mJnQucmVtb3ZlQ2hpbGQocltlXSksci5sZW5ndGg/dC5pbnNlcnRCZWZvcmUobixyW2VdKTp0LmFwcGVuZENoaWxkKG4pfX1mdW5jdGlvbiB5KHQsZSl7dmFyIGE9ZS5jc3MsaT1lLm1lZGlhLHM9ZS5zb3VyY2VNYXA7aWYoaSYmdC5zZXRBdHRyaWJ1dGUoIm1lZGlhIixpKSxoLnNzcklkJiZ0LnNldEF0dHJpYnV0ZShkLGUuaWQpLHMmJihhKz0iXG4vKiMgc291cmNlVVJMPSIrcy5zb3VyY2VzWzBdKyIgKi8iLGErPSJcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsIitidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzKSkpKSsiICovIiksdC5zdHlsZVNoZWV0KXQuc3R5bGVTaGVldC5jc3NUZXh0PWE7ZWxzZXtmb3IoO3QuZmlyc3RDaGlsZDspdC5yZW1vdmVDaGlsZCh0LmZpcnN0Q2hpbGQpO3QuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYSkpfX19LCI0YjNlIjpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2EuZChlLCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKTt2YXIgaT1hKCIyZjYyIik7ZnVuY3Rpb24gcyh0KXtyZXR1cm4ocz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIG4odCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIHIodCxlLGEpe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXModCl8fCF0KXJldHVybiB0O3ZhciBhPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1hKXt2YXIgaT1hLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1zKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXMoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOmEsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPWEsdH12YXIgbz17ZGF0YTpmdW5jdGlvbigpe3JldHVybntvZmZWaWRlbzohMH19LGNvbXB1dGVkOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKHQsZSxhW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGEpKTpuKE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fSh7fSxPYmplY3QoaS5jKSh7Y2hhdFdpbmRvd1N0YXRlOiJzZXNzaW9uL2NoYXRXaW5kb3dTdGF0ZSIsY3VycmVudFJvdXRlOiJyb3V0ZXIvY3VycmVudCJ9KSksd2F0Y2g6e2NoYXRXaW5kb3dTdGF0ZTpmdW5jdGlvbih0KXsibWluIj09PXR8fCIvIiE9PXRoaXMuY3VycmVudFJvdXRlJiYia2ItYXJ0aWNsZSIhPT10aGlzLmN1cnJlbnRSb3V0ZT90aGlzLm9mZlZpZGVvPSExOnRoaXMub2ZmVmlkZW89ITB9LGN1cnJlbnRSb3V0ZTpmdW5jdGlvbih0KXt0aGlzLm9mZlZpZGVvPSIvIj09PXR8fCJrYi1hcnRpY2xlIj09PXR9fX19LCI1YWY4IjpmdW5jdGlvbih0LGUsYSl7dmFyIGk9YSgiMDZkNSIpO2kuX19lc01vZHVsZSYmKGk9aS5kZWZhdWx0KSwic3RyaW5nIj09dHlwZW9mIGkmJihpPVtbdC5pLGksIiJdXSksaS5sb2NhbHMmJih0LmV4cG9ydHM9aS5sb2NhbHMpLCgwLGEoIjQ5OWUiKS5kZWZhdWx0KSgiMzhjMjU4ZWEiLGksITAse3NvdXJjZU1hcDohMSxzaGFkb3dNb2RlOiExfSl9LCI5MGMyIjpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2EucihlKTt2YXIgaT1hKCIyZjYyIikscz1hKCI5ZjNlIiksbj1hKCJkYmQxIikscj1hKCJmMGIwIik7ZnVuY3Rpb24gbyh0KXtyZXR1cm4obz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIGModCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIGwodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGE9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/YyhPYmplY3QoYSksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3UodCxlLGFbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoYSkpOmMoT2JqZWN0KGEpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYSxlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gdSh0LGUsYSl7cmV0dXJuKGU9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9byh0KXx8IXQpcmV0dXJuIHQ7dmFyIGE9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWEpe3ZhciBpPWEuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPW8oaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09byhlKT9lOmUrIiJ9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6YSxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09YSx0fXZhciBoPXtuYW1lOiJzdGFydC1jaGF0Iixjb21wb25lbnRzOntUYXdrQ2FyZDpyLlRhd2tDYXJkLFRhd2tJY29uOnIuVGF3a0ljb259LGNvbXB1dGVkOmwobCh7fSxPYmplY3QoaS5jKSh7aXNQcmVjaGF0RW5hYmxlZDoid2lkZ2V0L2lzUHJlY2hhdEVuYWJsZWQiLHByZWNoYXRGb3JtU3VibWl0dGVkOiJzZXNzaW9uL3ByZWNoYXRGb3JtU3VibWl0dGVkIixzdGF0ZXM6IndpZGdldC9zdGF0ZXMiLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyJ9KSkse30se3N0YXRlQm9keTpmdW5jdGlvbigpe3ZhciB0PXRoaXMucGFnZVN0YXR1c3x8Im9ubGluZSI7cmV0dXJuIHQmJnRoaXMuc3RhdGVzW3RdJiZ0aGlzLnN0YXRlc1t0XS5ib2R5fHxbXX0sY2hhdENhcmQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnN0YXRlQm9keS5maW5kKChmdW5jdGlvbih0KXtyZXR1cm4iY2hhdCI9PT10LnR5cGV9KSk7cmV0dXJuIHQmJnQuY29udGVudD90LmNvbnRlbnQ6e319fSksbWV0aG9kczpsKGwoe30sT2JqZWN0KGkuYikoe3JvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIixzaG93T3ZlcmxheToib3ZlcmxheS9zaG93T3ZlcmxheSIsY2xlYXJIaXN0b3J5OiJyb3V0ZXIvY2xlYXJIaXN0b3J5In0pKSx7fSx7c3RhcnRDaGF0OmZ1bmN0aW9uKCl7dGhpcy5zaG93T3ZlcmxheSghMSksdGhpcy5jbGVhckhpc3RvcnkoKSx0aGlzLmlzUHJlY2hhdEVuYWJsZWQmJiF0aGlzLnByZWNoYXRGb3JtU3VibWl0dGVkP3RoaXMucm91dGVyUHVzaCgicHJlY2hhdCIpOnRoaXMucm91dGVyUHVzaCgiY2hhdCIpfX0pfSxkPWEoIjI4NzciKSxtPU9iamVjdChkLmEpKGgsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2Utc2VjdGlvbiJ9LFtlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWhlYWRlciJ9LFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS10aXRsZSJ9LFt0Ll92KHQuX3ModC4kaTE4bigiY2hhdCIsInN0YXJ0X25ld19jaGF0IikpKV0pXSksZSgidGF3ay1jYXJkIix7c3RhdGljQ2xhc3M6InRhd2staG9tZS1jYXJkLWNoYXQgdGF3ay1ib3gtc2hhZG93LXhzbWFsbCB0YXdrLW1lc3NhZ2UtdGlsZSIsYXR0cnM6e2NvbG9yOiJpbnZlcnNlIn0sb246e2NsaWNrOnQuc3RhcnRDaGF0fX0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXgtMSB0YXdrLW1lc3NhZ2UtdGlsZS1jb250ZW50In0sW2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLXRpbGUtdGl0bGUifSxbdC5fdigiICIrdC5fcyh0LmNoYXRDYXJkLmJ1dHRvblRleHR8fCJDaGF0IHdpdGggdXMiKSsiICIpXSksZSgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtdGlsZS1zdWJ0aXRsZSJ9LFt0Ll92KCIgIit0Ll9zKHQuY2hhdENhcmQuaGFzT3duUHJvcGVydHkoImJ1dHRvblN1YnRpdGxlIik/dC5jaGF0Q2FyZC5idXR0b25TdWJ0aXRsZTp0LiRpMThuKCJob21lIiwiY2hhdF9idXR0b25fc3VidGl0bGUiKSkrIiAiKV0pXSksZSgiZGl2IixbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6InNlbmQiLHNpemU6IjI0In19KV0sMSldKV0sMSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxmPWEoIjdmNDYiKTtmdW5jdGlvbiBwKHQpe3JldHVybihwPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gZyh0KXtyZXR1cm4gZnVuY3Rpb24odCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gdyh0KX0odCl8fGZ1bmN0aW9uKHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZudWxsIT10W1N5bWJvbC5pdGVyYXRvcl18fG51bGwhPXRbIkBAaXRlcmF0b3IiXSlyZXR1cm4gQXJyYXkuZnJvbSh0KX0odCl8fGZ1bmN0aW9uKHQsZSl7aWYodCl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiB3KHQsZSk7dmFyIGE9e30udG9TdHJpbmcuY2FsbCh0KS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PWEmJnQuY29uc3RydWN0b3ImJihhPXQuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT1hfHwiU2V0Ij09PWE/QXJyYXkuZnJvbSh0KToiQXJndW1lbnRzIj09PWF8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KGEpP3codCxlKTp2b2lkIDB9fSh0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiB3KHQsZSl7KG51bGw9PWV8fGU+dC5sZW5ndGgpJiYoZT10Lmxlbmd0aCk7Zm9yKHZhciBhPTAsaT1BcnJheShlKTthPGU7YSsrKWlbYV09dFthXTtyZXR1cm4gaX1mdW5jdGlvbiBiKHQsZSl7dmFyIGE9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxhLnB1c2guYXBwbHkoYSxpKX1yZXR1cm4gYX1mdW5jdGlvbiB2KHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP2IoT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXt5KHQsZSxhW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGEpKTpiKE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIHkodCxlLGEpe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXAodCl8fCF0KXJldHVybiB0O3ZhciBhPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1hKXt2YXIgaT1hLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT1wKGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXAoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOmEsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPWEsdH12YXIgaz17bmFtZToicmVjZW50cyIsY29tcG9uZW50czp7VGF3a0xvYWRlcjpyLlRhd2tMb2FkZXIsVGF3a0J1dHRvbjpyLlRhd2tCdXR0b24sVGF3a0Vtb2ppOnIuVGF3a0Vtb2ppLFRhd2tJY29uOnIuVGF3a0ljb259LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57bG9jYWxDb252ZXJzYXRpb25zOltdfX0sY29tcHV0ZWQ6dih2KHt9LE9iamVjdChpLmMpKHtlbW9qaUVuYWJsZWQ6IndpZGdldC9lbW9qaUVuYWJsZWQiLGhpc3RvcnlDb252ZXJzYXRpb25zOiJoaXN0b3J5L2l0ZW1zIixuZXh0TGlzdEhhc2g6Imhpc3RvcnkvbmV4dExpc3RIYXNoIixhZ2VudHM6ImNoYXQvYWdlbnRzIixpbmNvbWluZ01lc3NhZ2U6ImNoYXQvaW5jb21pbmdNZXNzYWdlIixsYXN0TWVzc2FnZToiY2hhdC9sYXN0TWVzc2FnZSIsdW5yZWFkTWVzc2FnZUNvdW50OiJjaGF0L3VucmVhZE1lc3NhZ2VDb3VudCIsY29tcG9uZW50czoid2lkZ2V0L2NvbXBvbmVudHMifSkpLHt9LHtpc0xvYWRpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVyc1siaGlzdG9yeS9pc0xvYWRpbmciXSgiaW5kZXgiKX0saXNSZWNlbnRDb252ZXJzYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIXQuaXNSZWFkfX0saGFzVW5yZWFkTWVzc2FnZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnVucmVhZE1lc3NhZ2VDb3VudD4wJiYoImMiPT09dGhpcy5sYXN0TWVzc2FnZS5zZW5kZXJUeXBlfHwiYSI9PT10aGlzLmxhc3RNZXNzYWdlLnNlbmRlclR5cGV8fCJzIj09PXRoaXMubGFzdE1lc3NhZ2Uuc2VuZGVyVHlwZSl9fSksY3JlYXRlZDpmdW5jdGlvbigpe3RoaXMudXBkYXRlQ29udmVyc2F0aW9ucygpfSxtb3VudGVkOmZ1bmN0aW9uKCl7dGhpcy5sb2FkSGlzdG9yeSgpfSx3YXRjaDp7aGlzdG9yeUNvbnZlcnNhdGlvbnM6e2hhbmRsZXI6InVwZGF0ZUNvbnZlcnNhdGlvbnMiLGRlZXA6ITB9LGxhc3RNZXNzYWdlOntoYW5kbGVyOiJ1cGRhdGVDb252ZXJzYXRpb25zIixkZWVwOiEwfSxpbmNvbWluZ01lc3NhZ2U6e2hhbmRsZXI6InVwZGF0ZUNvbnZlcnNhdGlvbnMiLGRlZXA6ITB9fSxtZXRob2RzOnYodih7fSxPYmplY3QoaS5iKSh7bG9hZEhpc3Rvcnk6Imhpc3RvcnkvbG9hZCIscm91dGVyUHVzaDoicm91dGVyL3JvdXRlclB1c2giLHNob3dPdmVybGF5OiJvdmVybGF5L3Nob3dPdmVybGF5In0pKSx7fSx7dXBkYXRlQ29udmVyc2F0aW9uczpmdW5jdGlvbigpe3ZhciB0PWcodGhpcy5oaXN0b3J5Q29udmVyc2F0aW9ucyk7aWYodGhpcy5sYXN0TWVzc2FnZSYmT2JqZWN0LmtleXModGhpcy5sYXN0TWVzc2FnZSkubGVuZ3RoPjAmJnRoaXMubGFzdE1lc3NhZ2UubWVzc2FnZSl7dmFyIGU9dGhpcy5sYXN0TWVzc2FnZS5tZXNzYWdlfHwiIjt0LnVuc2hpZnQoe2lkOiJhY3RpdmUtY2hhdCIsaXNBY3RpdmU6ITAsc25pcHBldDplfSl9dGhpcy5sb2NhbENvbnZlcnNhdGlvbnM9dH0sbG9hZE1vcmVDb252ZXJzYXRpb25zOmZ1bmN0aW9uKCl7dGhpcy5sb2FkSGlzdG9yeSh7bG9hZE5leHQ6ITAsbGltaXQ6NX0pfSxnZXRDb252ZXJzYXRpb25OYW1lOmZ1bmN0aW9uKHQpe3JldHVybiB0LmlzQWN0aXZlP3RoaXMubGFzdE1lc3NhZ2UmJnRoaXMubGFzdE1lc3NhZ2UubmFtZT90aGlzLmxhc3RNZXNzYWdlLm5hbWU6dGhpcy4kaTE4bigiY2hhdCIsIm1vYmlsZV9uYW1lIik6dC5hZ2VudEFsaWFzZXMmJnQuYWdlbnRBbGlhc2VzLmxlbmd0aD4wP3QuYWdlbnRBbGlhc2VzWzBdLmRpc3BsYXlOYW1lOiJVbmtub3duIn0sZ2V0Q29udmVyc2F0aW9uVGltZTpmdW5jdGlvbih0KXtpZih0LmlzQWN0aXZlKXJldHVybiB0aGlzLiRpMThuKCJjaGF0Iiwibm93Iik7aWYoIXQuZW5kZWRPbilyZXR1cm4gdGhpcy4kaTE4bigiY2hhdCIsIm5vdyIpO3ZhciBlPW5ldyBEYXRlKHQuZW5kZWRPbiksYT1uZXcgRGF0ZTtyZXR1cm4gZS50b0RhdGVTdHJpbmcoKT09PWEudG9EYXRlU3RyaW5nKCk/ZS50b0xvY2FsZVRpbWVTdHJpbmcoImVuLUdCIix7aG91cjoiMi1kaWdpdCIsbWludXRlOiIyLWRpZ2l0Iixob3VyMTI6ITF9KTplLnRvTG9jYWxlRGF0ZVN0cmluZygiZW4tR0IiLHtkYXk6IjItZGlnaXQiLG1vbnRoOiIyLWRpZ2l0Iix5ZWFyOiJudW1lcmljIn0pfSxtZXNzYWdlVGV4dE9ubHk6ZnVuY3Rpb24odCl7cmV0dXJuIGYuYS5yZW1vdmVIVE1MVGFncyhmLmEucmVtb3ZlQW5jaG9yVGFncyh0aGlzLiRUYXdrV2luZG93Lm1ha2VIdG1sKHQpKSl9LHNlbGVjdENvbnZlcnNhdGlvbjpmdW5jdGlvbih0KXtpZih0JiZ0LmlzQWN0aXZlKXt2YXIgZT10aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaXNQcmVjaGF0RW5hYmxlZCJdLGE9dGhpcy4kc3RvcmUuZ2V0dGVyc1sic2Vzc2lvbi9wcmVjaGF0Rm9ybVN1Ym1pdHRlZCJdO2UmJiFhP3RoaXMucm91dGVyUHVzaCgicHJlY2hhdCIpOnRoaXMucm91dGVyUHVzaCgiY2hhdCIpLHRoaXMuc2hvd092ZXJsYXkoITEpfWVsc2UgdGhpcy4kc3RvcmUuY29tbWl0KCJoaXN0b3J5L3NldFNlbGVjdGVkQ2hhdCIsdCksdGhpcy5yb3V0ZXJQdXNoKCJoaXN0b3J5LWNoYXQiKSx0aGlzLnNob3dPdmVybGF5KCEwKX19KX0sQz1PYmplY3QoZC5hKShrLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10Ll9zZWxmLl9jO3JldHVybiBlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1yZWNlbnRzLW1lc3NhZ2Utc2VjdGlvbiJ9LFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS10aXRsZSJ9LFt0Ll92KHQuX3ModC4kaTE4bigiY2hhdCIsInJlY2VudCIpKSldKSx0LmlzTG9hZGluZz9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4tc21hbGwgdGF3ay1tYXJnaW4tdG9wIixzdGF0aWNTdHlsZTp7d2lkdGg6IjEwMCUifSxhdHRyczp7cm9sZToicHJvZ3Jlc3NiYXIiLCJhcmlhLWJ1c3kiOiJ0cnVlIn19LFtlKCJ0YXdrLWxvYWRlciIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwiLGF0dHJzOnt0eXBlOiJiYXIiLHNpemU6ImxhcmdlIn19KSxlKCJ0YXdrLWxvYWRlciIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwiLGF0dHJzOnt0eXBlOiJiYXIiLHNpemU6ImxhcmdlIn19KSxlKCJ0YXdrLWxvYWRlciIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwiLGF0dHJzOnt0eXBlOiJiYXIiLHNpemU6ImxhcmdlIn19KV0sMSk6W3QubG9jYWxDb252ZXJzYXRpb25zLmxlbmd0aD4wP3QuX2wodC5sb2NhbENvbnZlcnNhdGlvbnMsKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIGUoImRpdiIse2tleTphLmlkfHxpLHN0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtaXRlbSIsYXR0cnM6e3JvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6IjAifSxvbjp7Y2xpY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuc2VsZWN0Q29udmVyc2F0aW9uKGEpfSxrZXl1cDpmdW5jdGlvbihlKXtyZXR1cm4hZS50eXBlLmluZGV4T2YoImtleSIpJiZ0Ll9rKGUua2V5Q29kZSwiZW50ZXIiLDEzLGUua2V5LCJFbnRlciIpP251bGw6dC5zZWxlY3RDb252ZXJzYXRpb24oYSl9fX0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtaXRlbS1jb250ZW50In0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtaXRlbS1oZWFkZXIifSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1pdGVtLWluZm8ifSxbZSgic3BhbiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtaXRlbS1uYW1lIn0sW3QuX3YodC5fcyh0LmdldENvbnZlcnNhdGlvbk5hbWUoYSkpKV0pXSksZSgic3BhbiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtaXRlbS10aW1lIn0sW3QuX3YodC5fcyh0LmdldENvbnZlcnNhdGlvblRpbWUoYSkpKV0pXSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1pdGVtLWJvZHkifSxbdC5oYXNVbnJlYWRNZXNzYWdlJiZhLmlzQWN0aXZlP2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWl0ZW0tdGV4dCB0YXdrLW1lc3NhZ2UtaXRlbS10ZXh0LXVucmVhZCJ9LFtlKCJzcGFuIix7c3RhdGljQ2xhc3M6InRhd2stZW1vamktY29udGFpbmVyIn0sW2UoInRhd2stZW1vamkiLHtrZXk6dC5sYXN0TWVzc2FnZS5tZXNzYWdlSWQsYXR0cnM6e2Vtb2ppOnQubWVzc2FnZVRleHRPbmx5KGEuc25pcHBldCksZW5hYmxlZDp0LmVtb2ppRW5hYmxlZH19KV0sMSldKTplKCJwIix7Y2xhc3M6WyJ0YXdrLW1lc3NhZ2UtaXRlbS10ZXh0Iix0LmlzUmVjZW50Q29udmVyc2F0aW9uKGEpPyIiOiJ0YXdrLW1lc3NhZ2UtaXRlbS10ZXh0LXNlY29uZGFyeSJdfSxbZSgic3BhbiIse3N0YXRpY0NsYXNzOiJ0YXdrLWVtb2ppLWNvbnRhaW5lciJ9LFtudWxsIT1hJiZhLnNuaXBwZXQmJjAhPT1hLnNuaXBwZXQubGVuZ3RoP2UoInRhd2stZW1vamkiLHtrZXk6dC5sYXN0TWVzc2FnZS5tZXNzYWdlSWQsYXR0cnM6e2Vtb2ppOnQubWVzc2FnZVRleHRPbmx5KGEuc25pcHBldCksZW5hYmxlZDp0LmVtb2ppRW5hYmxlZH19KTplKCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1pdGFsaWMifSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImF0dGFjaG1lbnQiLHNpemU6InNtYWxsIn19KSx0Ll92KCIgIit0Ll9zKHQuJGkxOG4oImNoYXQiLCJzZW50X2ZpbGUiKSkrIiAiKV0sMSldLDEpXSksYS5pc0FjdGl2ZSYmdC51bnJlYWRNZXNzYWdlQ291bnQ+MD9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWl0ZW0tYmFkZ2UifSxbdC5fdih0Ll9zKHQudW5yZWFkTWVzc2FnZUNvdW50KSldKTp0Ll9lKCksZSgidGF3ay1pY29uIix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1jaGV2cm9uIixhdHRyczp7dHlwZToiY2hldnJvbi1yaWdodCJ9fSldLDEpXSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1kaXZpZGVyIn0pXSl9KSk6W2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi1hdXRvIHRhd2stcGFkZGluZyJ9LFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1yZWd1bGFyLTQgdGF3ay10ZXh0LWdyZXktMyJ9LFt0Ll92KHQuX3ModC4kaTE4bigiaG9tZSIsIm5vX3JlY2VudF9jb252ZXJzYXRpb25zIikpKV0pXSldXSx0Lm5leHRMaXN0SGFzaCYmIXQuaXNMb2FkaW5nP2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtY2VudGVyIHRhd2stbWFyZ2luLXRvcC1zbWFsbCJ9LFtlKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtbG9hZC1tb3JlLWJ1dHRvbiIsYXR0cnM6e2xhYmVsOnQuJGkxOG4oInJvdXRlcyIsImxvYWRfbW9yZSIpLGlzVGV4dDohMH0sb246e2NsaWNrOnQubG9hZE1vcmVDb252ZXJzYXRpb25zfX0sW3QuX3YoIiAiK3QuX3ModC4kaTE4bigicm91dGVzIiwibG9hZF9tb3JlIikpKyIgIildKV0sMSk6dC5fZSgpXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzO2Z1bmN0aW9uIE8odCl7cmV0dXJuKE89ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBTKHQsZSl7dmFyIGE9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxhLnB1c2guYXBwbHkoYSxpKX1yZXR1cm4gYX1mdW5jdGlvbiB4KHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1PKHQpfHwhdClyZXR1cm4gdDt2YXIgYT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09YSl7dmFyIGk9YS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9TyhpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1PKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIFQ9e25hbWU6Im1lc3NhZ2VzIixjb21wb25lbnRzOntCYXNlRnJhbWU6cy5hLEJhc2VCb2R5Om4uYSxTdGFydENoYXQ6bSxSZWNlbnRzOkN9LGNvbXB1dGVkOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP1MoT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXt4KHQsZSxhW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGEpKTpTKE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fSh7fSxPYmplY3QoaS5jKSh7aGFzTGl2ZUNoYXQ6IndpZGdldC9oYXNMaXZlQ2hhdCIscGFnZVN0YXR1czoic2Vzc2lvbi9wYWdlU3RhdHVzIn0pKX0sUD1PYmplY3QoZC5hKShULChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10Ll9zZWxmLl9jO3JldHVybiBlKCJiYXNlLWZyYW1lIix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS12aWV3In0sW2UoImJhc2UtYm9keSIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi10b3AifSxbdC5oYXNMaXZlQ2hhdCYmIm9mZmxpbmUiIT09dC5wYWdlU3RhdHVzP2UoInN0YXJ0LWNoYXQiKTp0Ll9lKCksZSgicmVjZW50cyIpXSwxKV0sMSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCk7ZS5kZWZhdWx0PVAuZXhwb3J0c30sYTM2YTpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2EoIjVhZjgiKX0sZDZhMzpmdW5jdGlvbih0LGUsYSl7InVzZSBzdHJpY3QiO2EucihlKTt2YXIgaT1hKCIyZjYyIikscz1hKCJmMGIwIiksbj1hKCI1YTYwIikscj17bWV0aG9kczp7Y29udmVydFRvQXZhdGFyTGluazpmdW5jdGlvbih0KXtyZXR1cm4gdD8wPT09dC5pbmRleE9mKCJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vdGF3ay10by1waSIpfHwwPT09dC5pbmRleE9mKCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIik/dDoiIi5jb25jYXQoImh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS90YXdrLXRvLXBpIiwiLyIpLmNvbmNhdCh0KToiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMiLCIvaW1hZ2VzL2RlZmF1bHQtcHJvZmlsZS5zdmciKX19fSxvPXtuYW1lOiJBdmF0YXJHcm91cCIsY29tcG9uZW50czp7VGF3a0F2YXRhcjpzLlRhd2tBdmF0YXJ9LGRpcmVjdGl2ZXM6e1Rhd2tUb29sdGlwOnMuVGF3a1Rvb2x0aXB9LG1peGluczpbcl0scHJvcHM6e2FnZW50czp7dHlwZTpBcnJheSxyZXF1aXJlZDohMCxkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuW119fSxzaG93V2VicnRjT3B0aW9uczp7dHlwZTpCb29sZWFuLGRlZmF1bHQ6ITF9LHRvb2xiYXJXaWR0aDp7dHlwZTpOdW1iZXIscmVxdWlyZWQ6ITAsZGVmYXVsdDowfX0sY29tcHV0ZWQ6e2lzRGVza3RvcFZpZXc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b29sYmFyV2lkdGg+PTM1MH0sc2hvdWxkU2hvd0FnZW50RGV0YWlsczpmdW5jdGlvbigpe3JldHVybiB0aGlzLmlzRGVza3RvcFZpZXd8fCF0aGlzLmlzRGVza3RvcFZpZXcmJiF0aGlzLnNob3dXZWJydGNPcHRpb25zfSxpc1NpbmdsZUFnZW50OmZ1bmN0aW9uKCl7cmV0dXJuIDE9PT10aGlzLmFnZW50cy5sZW5ndGh9LGZpcnN0QWdlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hZ2VudHNbMF18fHt9fSx2aXNpYmxlQWdlbnRzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWdlbnRzLnNsaWNlKDAsMyl9LGhhc092ZXJmbG93OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWdlbnRzLmxlbmd0aD4zfSxvdmVyZmxvd0NvdW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWdlbnRzLmxlbmd0aC0zfX0sbWV0aG9kczp7Z2V0QXZhdGFyU3RhY2tTdHlsZTpmdW5jdGlvbigpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTowLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXTtyZXR1cm57ZGlzcGxheToiaW5saW5lLWJsb2NrIixtYXJnaW5MZWZ0OnQ+MHx8ZT8iLSIuY29uY2F0KDgsInB4Iik6IjAiLHpJbmRleDplPzE6dGhpcy52aXNpYmxlQWdlbnRzLmxlbmd0aC10fX19fSxjPWEoIjI4NzciKSxsPU9iamVjdChjLmEpKG8sKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIHQuaXNTaW5nbGVBZ2VudD9lKCJkaXYiLHtzdGF0aWNTdHlsZTp7ZGlzcGxheToiY29udGVudHMifX0sW2UoImRpdiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHN0YXRpY1N0eWxlOntkaXNwbGF5OiJpbmxpbmUtYmxvY2sifSxhdHRyczp7ImRhdGEtdGV4dCI6dC5maXJzdEFnZW50LmRpc3BsYXlOYW1lfHwiYWdlbnQiLCJhcmlhLWxhYmVsIjp0LmZpcnN0QWdlbnQuZGlzcGxheU5hbWV8fCJhZ2VudCJ9fSxbZSgidGF3ay1hdmF0YXIiLHthdHRyczp7c3JjOnQuY29udmVydFRvQXZhdGFyTGluayh0LmZpcnN0QWdlbnQucHJvZmlsZUltYWdlKSxhbHQ6IiIuY29uY2F0KHQuJGkxOG4oImNoYXQiLCJhZ2VudF9wcm9maWxlX2ltYWdlIikpfX0pXSwxKSx0LnNob3VsZFNob3dBZ2VudERldGFpbHM/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stdG9vbGJhci1hZ2VudC1kZXRhaWxzIn0sW2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay10b29sYmFyLWFnZW50LW5hbWUgdGF3ay10ZXh0LXRydW5jYXRlIn0sW3QuX3YoIiAiK3QuX3ModC5maXJzdEFnZW50LmRpc3BsYXlOYW1lKSsiICIpXSksZSgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRvb2xiYXItYWdlbnQtdGl0bGUgdGF3ay10ZXh0LXRydW5jYXRlIn0sW3QuX3YoIiAiK3QuX3ModC5maXJzdEFnZW50LnByb2ZpbGVUaXRsZSkrIiAiKV0pXSk6dC5fZSgpXSk6ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stYXZhdGFyLWdyb3VwIn0sW3QuaXNEZXNrdG9wVmlldz9lKCJkaXYiLFt0Ll9sKHQudmlzaWJsZUFnZW50cywoZnVuY3Rpb24oYSxpKXtyZXR1cm4gZSgiZGl2Iix7ZGlyZWN0aXZlczpbe25hbWU6InRhd2stdG9vbHRpcCIscmF3TmFtZToidi10YXdrLXRvb2x0aXAifV0sa2V5OmEuaWQsc3R5bGU6dC5nZXRBdmF0YXJTdGFja1N0eWxlKGkpLGF0dHJzOnsiZGF0YS10ZXh0IjphLmRpc3BsYXlOYW1lfHwiYWdlbnQiLCJhcmlhLWxhYmVsIjphLmRpc3BsYXlOYW1lfHwiYWdlbnQifX0sW2UoInRhd2stYXZhdGFyIix7YXR0cnM6e3NyYzp0LmNvbnZlcnRUb0F2YXRhckxpbmsoYS5wcm9maWxlSW1hZ2UpLGFsdDoiIi5jb25jYXQodC4kaTE4bigiY2hhdCIsImFnZW50X3Byb2ZpbGVfaW1hZ2UiKSl9fSldLDEpfSkpLHQuaGFzT3ZlcmZsb3c/ZSgiZGl2Iix7c3R5bGU6dC5nZXRBdmF0YXJTdGFja1N0eWxlKDAsITApfSxbZSgidGF3ay1hdmF0YXIiLHthdHRyczp7Y291bnQ6dC5vdmVyZmxvd0NvdW50fX0pXSwxKTp0Ll9lKCldLDIpOmUoImRpdiIsW2UoInRhd2stYXZhdGFyIix7YXR0cnM6e2NvdW50OnQuYWdlbnRzLmxlbmd0aH19KV0sMSldKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzO2Z1bmN0aW9uIHUodCl7cmV0dXJuKHU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBoKHQsZSl7dmFyIGE9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxhLnB1c2guYXBwbHkoYSxpKX1yZXR1cm4gYX1mdW5jdGlvbiBkKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP2goT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXttKHQsZSxhW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGEpKTpoKE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIG0odCxlLGEpe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXUodCl8fCF0KXJldHVybiB0O3ZhciBhPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1hKXt2YXIgaT1hLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT11KGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXUoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOmEsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPWEsdH12YXIgZj17bmFtZToidG9vbGJhciIsY29tcG9uZW50czp7VGF3a0ljb246cy5UYXdrSWNvbixUYXdrQnV0dG9uOnMuVGF3a0J1dHRvbixUYXdrRHJvcGRvd246cy5UYXdrRHJvcGRvd24sVGF3a0F2YXRhcjpzLlRhd2tBdmF0YXIsQXZhdGFyR3JvdXA6bH0sZGlyZWN0aXZlczp7VGF3a1Rvb2x0aXA6cy5UYXdrVG9vbHRpcH0sbWl4aW5zOltyXSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2lzT3BlbjohMSxpc0FjdGl2ZTohMX19LHByb3BzOntjdXJyZW50Vmlldzp7dHlwZTpPYmplY3QsZGVmYXVsdDpmdW5jdGlvbigpe3JldHVybnt9fX0sYm9yZGVyUmFkaXVzVG9wOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIwcHgifSxoYXNCYWNrZ3JvdW5kOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMH0sc2hvd0JhY2tCdXR0b246e2RlZmF1bHQ6ITF9LHNob3dXZWJSdGNCdXR0b25zOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX0sc2hvd0FnZW50QXZhdGFyczp7ZGVmYXVsdDohMX19LGNvbXB1dGVkOmQoZCh7fSxPYmplY3QoaS5jKSh7aXNTb3VuZEVuYWJsZWQ6IndpZGdldC9pc1NvdW5kRW5hYmxlZCIsbG9jYWxTb3VuZEVuYWJsZWQ6IndpZGdldC9sb2NhbFNvdW5kRW5hYmxlZCIsaXNSb3VuZFdpZGdldDoid2lkZ2V0L2lzUm91bmRXaWRnZXQiLG1vYmlsZUJyb3dzZXJOYW1lOiJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSIsaGFzQ2hhdFN0YXJ0ZWQ6ImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiLGlzV2luZG93ZWQ6IndpZGdldC9pc1dpbmRvd2VkIixwcmVjaGF0Rm9ybVN1Ym1pdHRlZDoic2Vzc2lvbi9wcmVjaGF0Rm9ybVN1Ym1pdHRlZCIsaXNQcmVjaGF0RW5hYmxlZDoid2lkZ2V0L2lzUHJlY2hhdEVuYWJsZWQiLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyIsaXNSVEw6IndpZGdldC9pc1JUTCIsd2VicnRjT3B0aW9uczoid2lkZ2V0L3dlYnJ0Y09wdGlvbnMiLGhhc0xpdmVDaGF0OiJ3aWRnZXQvaGFzTGl2ZUNoYXQiLGFnZW50c0NvdW50OiJjaGF0L2FnZW50c0NvdW50IixuZWVkQ29uc2VudDoic2Vzc2lvbi9uZWVkQ29uc2VudCIsY3VycmVudFJvdXRlOiJyb3V0ZXIvY3VycmVudCIsY29tcG9uZW50czoid2lkZ2V0L2NvbXBvbmVudHMiLGVtYWlsVHJhbnNjcmlwdEVuYWJsZWQ6IndpZGdldC9lbWFpbFRyYW5zY3JpcHRFbmFibGVkIixhY3RpdmVQcm9maWxlczoiY2hhdC9hY3RpdmVQcm9maWxlcyIsdG9vbGJhck9wdGlvbnM6IndpZGdldC90b29sYmFyT3B0aW9ucyIsYnJhbmRpbmc6IndpZGdldC9icmFuZGluZyIsY2FsbHM6ImNoYXQvY2FsbHMiLG1lc3NhZ2VCbG9ja3M6ImNoYXQvbWVzc2FnZUJsb2NrcyIsb25nb2luZ0NhbGw6ImNoYXQvb25nb2luZ0NhbGwiLG9uQ2xpY2s6IndpZGdldC9vbkNsaWNrIixpc0hvbWU6InJvdXRlci9pc0hvbWUiLGdldExvZ29Db250ZW50OiJ3aWRnZXQvZ2V0TG9nb0NvbnRlbnQiLGNoYXRNZXNzYWdlczoiY2hhdC9jaGF0TWVzc2FnZXMiLHNlbGVjdGVkQ2hhdDoiaGlzdG9yeS9zZWxlY3RlZENoYXQiLG1heERlc2t0b3A6IndpZGdldC9tYXhEZXNrdG9wIn0pKSx7fSx7c2hvd1dlYnJ0Y09wdGlvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb21wb25lbnRzLndlYnJ0YyYmIm9mZmxpbmUiIT09dGhpcy5wYWdlU3RhdHVzJiZ0aGlzLndlYnJ0Y09wdGlvbnMmJnRoaXMud2VicnRjT3B0aW9ucy5lbmFibGVkJiYoIXRoaXMuaXNQcmVjaGF0RW5hYmxlZHx8dGhpcy5pc1ByZWNoYXRFbmFibGVkJiZ0aGlzLnByZWNoYXRGb3JtU3VibWl0dGVkKSYmdGhpcy5zaG93V2ViUnRjQnV0dG9ucyYmIXRoaXMuaXNCb3RPbmx5fSxpc0JvdE9ubHk6ZnVuY3Rpb24oKXtpZigwPT09dGhpcy5hY3RpdmVQcm9maWxlcy5sZW5ndGgpcmV0dXJuITE7dmFyIHQ9ITE7cmV0dXJuIHRoaXMuYWN0aXZlUHJvZmlsZXNbMF0uaXNCb3QmJih0PSEwKSx0fSx3cmFwcGVyQ2xhc3NlczpmdW5jdGlvbigpe3JldHVyblsidGF3ay10b29sYmFyIiwidGF3ay1mbGV4IiwidGF3ay1jYXJkLXNtYWxsIiwidGF3ay1mbGV4LW5vbmUiLCJ0YXdrLWZsZXgtbWlkZGxlIiwidGF3ay1jdXN0b20tY29sb3IiLCh0aGlzLmlzSG9tZXx8InByZWNoYXQiPT09dGhpcy5jdXJyZW50Um91dGUpJiZ0aGlzLmlzQWN0aXZlPyJ0YXdrLWFjdGl2ZSI6IiIsdGhpcy5pc0hvbWV8fCJwcmVjaGF0Ij09PXRoaXMuY3VycmVudFJvdXRlPyIiOiJ0YXdrLWFjdGl2ZSJdfSxpc0xpdmVDaGF0RmVhdHVyZUVuYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hISh0aGlzLmhhc0xpdmVDaGF0fHx0aGlzLmhhc0NoYXRTdGFydGVkJiZ0aGlzLmFnZW50c0NvdW50PjApfSxpc0hhbWJ1cmdlck1lbnVWaXNpYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIm9mZmxpbmUiIT09dGhpcy5wYWdlU3RhdHVzJiYoImNoYXQiPT09dGhpcy5jdXJyZW50Um91dGV8fCJhZ2VudHMiPT09dGhpcy5jdXJyZW50Um91dGUmJiF0aGlzLnNlbGVjdGVkQ2hhdCl9LGlzQWdlbnRBdmF0YXJzVmlzaWJsZTpmdW5jdGlvbigpe3JldHVybiEoIXRoaXMuc2hvd0FnZW50QXZhdGFyc3x8ImNoYXQiIT09dGhpcy5jdXJyZW50Um91dGUmJiJhZ2VudHMiIT09dGhpcy5jdXJyZW50Um91dGV8fCEodGhpcy5hY3RpdmVQcm9maWxlcy5sZW5ndGg+MCkpfSxsb2dvVXJsOmZ1bmN0aW9uKCl7cmV0dXJuImh0dHBzOi8vdGF3ay5saW5rIn19KSxtZXRob2RzOmQoZCh7fSxPYmplY3QoaS5iKSh7cm91dGVyUHVzaDoicm91dGVyL3JvdXRlclB1c2giLHJvdXRlckJhY2s6InJvdXRlci9yb3V0ZXJCYWNrIix0b2dnbGVMb2NhbFNvdW5kOiJ3aWRnZXQvdG9nZ2xlTG9jYWxTb3VuZCIsdG9nZ2xlV2lkZ2V0OiJzZXNzaW9uL3RvZ2dsZVdpZGdldCIsc2hvd092ZXJsYXk6Im92ZXJsYXkvc2hvd092ZXJsYXkifSkpLHt9LHtpbml0aWF0ZUNhbGw6ZnVuY3Rpb24odCxlKXt0aGlzLiRUYXdrQ2hhdE1hbmFnZXIuaW5pdGlhdGVDYWxsKHQsZSl9LHBvcG91dFdpZGdldDpmdW5jdGlvbigpe3RoaXMuJFRhd2tXaW5kb3cucG9wb3V0V2lkZ2V0KCl9LHRvZ2dsZURyb3Bkb3duOmZ1bmN0aW9uKCl7dGhpcy5pc09wZW49IXRoaXMuaXNPcGVufSxuYW1lRm9ybTpmdW5jdGlvbigpe3RoaXMuaXNPcGVuPSExLHRoaXMucm91dGVyUHVzaCgibmFtZS1mb3JtIiksdGhpcy5zaG93T3ZlcmxheSghMCl9LGVtYWlsVHJhbnNjcmlwdEZvcm06ZnVuY3Rpb24oKXt0aGlzLmlzT3Blbj0hMSx0aGlzLnJvdXRlclB1c2goImVtYWlsLXRyYW5zY3JpcHQtZm9ybSIpLHRoaXMuc2hvd092ZXJsYXkoITApfSx0b2dnbGVBZ2VudHNMaXN0OmZ1bmN0aW9uKCl7dGhpcy5yb3V0ZXJQdXNoKCJhZ2VudHMiKSx0aGlzLnNob3dPdmVybGF5KCEwKX19KSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRldmVudEJ1cy4kb24oIndpZGdldE9uRm9jdXMiLChmdW5jdGlvbihlKXt0LiRyZWZzWyJ0b29sYmFyLWJ1dHRvbiJdJiYhdC4kcmVmc1sidG9vbGJhci1idXR0b24iXS4kZWwuY29udGFpbnMoZS50YXJnZXQpJiYodC5pc09wZW49ITEpfSkpLHRoaXMuJGV2ZW50QnVzLiRvbigiY2hhdFBhbmVsU2Nyb2xsIiwoZnVuY3Rpb24oZSl7ZS5zY3JvbGxUb3A+NT90LmlzQWN0aXZlPSEwOnQuaXNBY3RpdmU9ITF9KSl9fSxwPShhKCJhMzZhIiksT2JqZWN0KGMuYSkoZiwoZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dC5fc2VsZi5fYztyZXR1cm4gZSgiZGl2Iix7cmVmOiJ0b29sYmFyIixjbGFzczp0LndyYXBwZXJDbGFzc2VzLHN0eWxlOntib3JkZXJSYWRpdXM6dC5ib3JkZXJSYWRpdXNUb3B9fSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stdG9vbGJhci1uYXYiLGF0dHJzOntyb2xlOiJuYXZpZ2F0aW9uIiwiYXJpYS1sYWJlbCI6InByaW1hcnkifX0sW3Quc2hvd0JhY2tCdXR0b24/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stcm91dGUtYmFjayB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSB0YXdrLW1hcmdpbi14c21hbGwtcmlnaHQifSxbZSgidGF3ay1idXR0b24iLHtkaXJlY3RpdmVzOlt7bmFtZToidGF3ay10b29sdGlwIixyYXdOYW1lOiJ2LXRhd2stdG9vbHRpcCJ9XSxzdGF0aWNDbGFzczoidGF3ay1oZWFkZXItdGV4dCB0YXdrLWJ1dHRvbi1ob3ZlciIsYXR0cnM6e2lzVGV4dDohMCxpbnZlcnNlOiEwLCJkYXRhLXRleHQiOnQuJGkxOG4oInJvbGxvdmVyIiwiYmFjayIpLCJhcmlhLWxhYmVsIjp0LiRpMThuKCJyb2xsb3ZlciIsImJhY2siKSx0YWJpbmRleDoiMCJ9LG9uOntjbGljazp0LnJvdXRlckJhY2t9fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImNoZXZyb24tbGVmdCJ9fSldLDEpLHQuY3VycmVudFZpZXcudGl0bGUmJiJhZ2VudHMiIT09dC5jdXJyZW50Um91dGU/ZSgic3BhbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRvb2xiYXItdGl0bGUgdGF3ay10ZXh0LXJlZ3VsYXItMyB0YXdrLWhlYWRlci10ZXh0IHRhd2stbWFyZ2luLXhzbWFsbC1sZWZ0IHRhd2stY3VzdG9tLXRleHQtY29sb3ItaW52ZXJzZSJ9LFt0Ll92KCIgIit0Ll9zKHQuY3VycmVudFZpZXcudGl0bGUoKSkrIiAiKV0pOnQuY2hhdE1lc3NhZ2VzJiZPYmplY3Qua2V5cyh0LmNoYXRNZXNzYWdlcykubGVuZ3RoPjAmJiF0LmlzQWdlbnRBdmF0YXJzVmlzaWJsZSYmInByZWNoYXQiIT09dGhpcy5jdXJyZW50Vmlldy5wYXRoP2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay10b29sYmFyLWFnZW50LW5hbWUgdGF3ay10ZXh0LXRydW5jYXRlIn0sW3QuX3YoIiAiK3QuX3ModC5jaGF0TWVzc2FnZXNbT2JqZWN0LmtleXModC5jaGF0TWVzc2FnZXMpWzBdXS5uYW1lKSsiICIpXSk6dC5fZSgpXSwxKTp0Ll9lKCksImhpc3RvcnktY2hhdCI9PT10LmN1cnJlbnRSb3V0ZT9bZSgiZGl2Iix7Y2xhc3M6WyJ0YXdrLXRvb2xiYXItYWdlbnQtYXZhdGFycyIseyJ0YXdrLW1hcmdpbi1yZW1vdmUtbGVmdCI6MT09PXQuc2VsZWN0ZWRDaGF0LmFnZW50QWxpYXNlc31dLG9uOntjbGljazp0LnRvZ2dsZUFnZW50c0xpc3R9fSxbdC5zZWxlY3RlZENoYXQuYWdlbnRBbGlhc2VzLmxlbmd0aD4xP2UoImRpdiIsdC5fbCh0LnNlbGVjdGVkQ2hhdC5hZ2VudEFsaWFzZXMsKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIGUoInRhd2stYXZhdGFyIix7a2V5OmksYXR0cnM6e3NyYzp0LmNvbnZlcnRUb0F2YXRhckxpbmsoYS5wcm9maWxlSW1hZ2UpLGFsdDoiIi5jb25jYXQodC4kaTE4bigiY2hhdCIsImFnZW50X3Byb2ZpbGVfaW1hZ2UiKSl9fSl9KSksMSk6dC5fZSgpLHQuc2VsZWN0ZWRDaGF0LmFnZW50QWxpYXNlcy5sZW5ndGg/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stdG9vbGJhci1hZ2VudC1kZXRhaWxzIn0sW3Quc2VsZWN0ZWRDaGF0LmFnZW50QWxpYXNlc1swXS5kaXNwbGF5TmFtZT9lKCJwIix7c3RhdGljQ2xhc3M6InRhd2stdG9vbGJhci1hZ2VudC1uYW1lIHRhd2stdGV4dC10cnVuY2F0ZSJ9LFt0Ll92KCIgIit0Ll9zKHQuc2VsZWN0ZWRDaGF0LmFnZW50QWxpYXNlc1swXS5kaXNwbGF5TmFtZSkrIiAiKV0pOnQuX2UoKSx0LnNlbGVjdGVkQ2hhdC5hZ2VudEFsaWFzZXNbMF0ucHJvZmlsZVRpdGxlP2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay10b29sYmFyLWFnZW50LXRpdGxlIHRhd2stdGV4dC10cnVuY2F0ZSJ9LFt0Ll92KCIgIit0Ll9zKHQuc2VsZWN0ZWRDaGF0LmFnZW50QWxpYXNlc1swXS5wcm9maWxlVGl0bGUpKyIgIildKTp0Ll9lKCldKTp0Ll9lKCksdC5zZWxlY3RlZENoYXQuYWdlbnRBbGlhc2VzLmxlbmd0aD4xP2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtbGVmdCJ9LFtlKCJ0YXdrLWF2YXRhciIse2F0dHJzOntjb3VudDp0LnNlbGVjdGVkQ2hhdC5hZ2VudEFsaWFzZXMubGVuZ3RoLTF9fSldLDEpOnQuX2UoKV0pXTp0Ll9lKCksdC5pc0hvbWUmJnQuZ2V0TG9nb0NvbnRlbnQ/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleC0xIHRhd2stcGFkZGluZy1zbWFsbCIsY2xhc3M6WyJ0YXdrLXRleHQtIi5jb25jYXQodC5nZXRMb2dvQ29udGVudC5hbGlnbm1lbnQpLCJyaWdodCI9PT10LmdldExvZ29Db250ZW50LmFsaWdubWVudD8idGF3ay1tYXJnaW4teHNtYWxsLXJpZ2h0IjoiIl19LFtlKCJpbWciLHtzdGF0aWNDbGFzczoidGF3ay10b29sYmFyLWxvZ28iLGF0dHJzOntzcmM6IiIuY29uY2F0KHQubG9nb1VybCwiLyIpLmNvbmNhdCh0LmdldExvZ29Db250ZW50LmltYWdlLmNvbnRlbnQpLGFsdDoiJ0xvZ28nIn19KV0pOnQuX2UoKSxlKCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6ImZhZGUiLG1vZGU6Im91dC1pbiJ9fSxbdC5pc0FnZW50QXZhdGFyc1Zpc2libGU/ZSgiZGl2Iix7Y2xhc3M6WyJ0YXdrLXRvb2xiYXItYWdlbnQtYXZhdGFycyIseyJ0YXdrLW1hcmdpbi1yZW1vdmUtbGVmdCI6MT09PXQuYWN0aXZlUHJvZmlsZXMubGVuZ3RofV0sYXR0cnM6e3JvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6IjAifSxvbjp7Y2xpY2s6dC50b2dnbGVBZ2VudHNMaXN0fX0sW2UoImF2YXRhci1ncm91cCIse2F0dHJzOnthZ2VudHM6dC5hY3RpdmVQcm9maWxlcyxzaG93V2VicnRjT3B0aW9uczp0LnNob3dXZWJydGNPcHRpb25zLHRvb2xiYXJXaWR0aDp0Lm1heERlc2t0b3Aud2lkdGh9fSldLDEpOnQuX2UoKV0pXSwyKSxlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4tYXV0by1sZWZ0IHRhd2stZmxleC1ub25lIHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixhdHRyczp7cm9sZToibmF2aWdhdGlvbiIsImFyaWEtbGFiZWwiOiJzZWNvbmRhcnkifX0sW3Quc2hvd1dlYnJ0Y09wdGlvbnMmJiF0Lm5lZWRDb25zZW50P2UoImRpdiIsW2UoInRhd2stYnV0dG9uIix7ZGlyZWN0aXZlczpbe25hbWU6InRhd2stdG9vbHRpcCIscmF3TmFtZToidi10YXdrLXRvb2x0aXAifV0sc3RhdGljQ2xhc3M6InRhd2staGVhZGVyLXRleHQgdGF3ay1idXR0b24taG92ZXIiLGF0dHJzOntpc1RleHQ6ITAsaW52ZXJzZTohMCxkaXNhYmxlZDp0Lm9uZ29pbmdDYWxsLCJhcmlhLWxhYmVsIjp0LiRpMThuKCJyb2xsb3ZlciIsInZvaWNlX2NhbGwiKSwiZGF0YS10ZXh0Ijp0LiRpMThuKCJyb2xsb3ZlciIsInZvaWNlX2NhbGwiKSx0YWJpbmRleDoiMCJ9LG9uOntjbGljazp0LmluaXRpYXRlQ2FsbH19LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiY2FsbCJ9fSldLDEpLHQud2VicnRjT3B0aW9ucy52aWRlbz9lKCJ0YXdrLWJ1dHRvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHN0YXRpY0NsYXNzOiJ0YXdrLWhlYWRlci10ZXh0IHRhd2stYnV0dG9uLWhvdmVyIixhdHRyczp7aXNUZXh0OiEwLGludmVyc2U6ITAsZGlzYWJsZWQ6dC5vbmdvaW5nQ2FsbCwiYXJpYS1sYWJlbCI6dC4kaTE4bigicm9sbG92ZXIiLCJ2aWRlb19jYWxsIiksImRhdGEtdGV4dCI6dC4kaTE4bigicm9sbG92ZXIiLCJ2aWRlb19jYWxsIiksdGFiaW5kZXg6IjAifSxvbjp7Y2xpY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuaW5pdGlhdGVDYWxsKCEwLCExKX19fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6InZpZGVvLWNhbGwtb24ifX0pXSwxKTp0Ll9lKCksdC53ZWJydGNPcHRpb25zLnNjcmVlbj9lKCJ0YXdrLWJ1dHRvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHN0YXRpY0NsYXNzOiJ0YXdrLWhlYWRlci10ZXh0IHRhd2stYnV0dG9uLWhvdmVyIixhdHRyczp7aXNUZXh0OiEwLGludmVyc2U6ITAsZGlzYWJsZWQ6dC5vbmdvaW5nQ2FsbCwiYXJpYS1sYWJlbCI6dC4kaTE4bigicm9sbG92ZXIiLCJzY3JlZW5fc2hhcmUiKSwiZGF0YS10ZXh0Ijp0LiRpMThuKCJyb2xsb3ZlciIsInNjcmVlbl9zaGFyZSIpLHRhYmluZGV4OiIwIn0sb246e2NsaWNrOmZ1bmN0aW9uKGUpe3JldHVybiB0LmluaXRpYXRlQ2FsbCghMSwhMCl9fX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJzaGFyZS1zY3JlZW4ifX0pXSwxKTp0Ll9lKCldLDEpOnQuX2UoKSx0LmlzSGFtYnVyZ2VyTWVudVZpc2libGUmJiF0Lm5lZWRDb25zZW50P2UoInRhd2stZHJvcGRvd24iLHtyZWY6InRvb2xiYXItbWVudSIsc3RhdGljQ2xhc3M6InRhd2stdG9vbGJhci1tZW51IixhdHRyczp7aXNPcGVuOnQuaXNPcGVuLHBvc2l0aW9uOnQuaXNSVEw/ImxlZnQiOiJyaWdodCIscm9sZToibWVudSJ9LG9uOnsidXBkYXRlOmlzT3BlbiI6ZnVuY3Rpb24oZSl7dC5pc09wZW49ZX0sInVwZGF0ZTppcy1vcGVuIjpmdW5jdGlvbihlKXt0LmlzT3Blbj1lfX19LFtlKCJ0YXdrLWJ1dHRvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHJlZjoidG9vbGJhci1idXR0b24iLHN0YXRpY0NsYXNzOiJ0YXdrLWhlYWRlci10ZXh0IHRhd2stbWFyZ2luLWF1dG8tbGVmdCB0YXdrLWZsZXgtbm9uZSB0YXdrLWJ1dHRvbi1ob3ZlciIsYXR0cnM6e2lzVGV4dDohMCxpbnZlcnNlOiEwLCJhcmlhLWxhYmVsIjp0LiRpMThuKCJyb2xsb3ZlciIsImNoYXRfbWVudSIpLCJkYXRhLXRleHQiOnQuJGkxOG4oInJvbGxvdmVyIiwiY2hhdF9tZW51IiksdGFiaW5kZXg6IjAifSxuYXRpdmVPbjp7Y2xpY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHQudG9nZ2xlRHJvcGRvd24uYXBwbHkobnVsbCxhcmd1bWVudHMpfX19LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToibWVudSJ9fSldLDEpLGUoImRpdiIse2F0dHJzOntzbG90OiJtZW51In0sc2xvdDoibWVudSJ9LFtlKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtbGVmdCB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSIsYXR0cnM6e2lzVGV4dDohMCxzaXplOiJzbWFsbCIscm9sZToiYnV0dG9uIix0YWJpbmRleDp0LmlzT3Blbj8wOi0xfSxvbjp7Y2xpY2s6dC5uYW1lRm9ybX19LFtlKCJzcGFuIix7c3RhdGljU3R5bGU6e3dpZHRoOiIyNXB4In19LFtlKCJ0YXdrLWljb24iLHtzdGF0aWNTdHlsZTp7d2lkdGg6IjIwcHgifSxhdHRyczp7dHlwZToiZWRpdCIsc2l6ZToic21hbGwifX0pXSwxKSx0Ll92KCIgIit0Ll9zKHQuJGkxOG4oIm1lbnUiLCJjaGFuZ2VfbmFtZSIpKSsiICIpXSksdC5lbWFpbFRyYW5zY3JpcHRFbmFibGVkP2UoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1sZWZ0IHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixhdHRyczp7aXNUZXh0OiEwLHNpemU6InNtYWxsIixyb2xlOiJidXR0b24iLHRhYmluZGV4OnQuaXNPcGVuPzA6LTF9LG9uOntjbGljazp0LmVtYWlsVHJhbnNjcmlwdEZvcm19fSxbZSgic3BhbiIse3N0YXRpY1N0eWxlOnt3aWR0aDoiMjVweCJ9fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImVudmVsb3BlIixzaXplOiJzbWFsbCJ9fSldLDEpLHQuX3YoIiAiK3QuX3ModC4kaTE4bigibWVudSIsImVtYWlsX3RyYW5zY3JpcHQiKSkrIiAiKV0pOnQuX2UoKSxlKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtbGVmdCB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSIsYXR0cnM6e2lzVGV4dDohMCxzaXplOiJzbWFsbCIscm9sZToiYnV0dG9uIix0YWJpbmRleDp0LmlzT3Blbj8wOi0xfSxvbjp7Y2xpY2s6dC50b2dnbGVMb2NhbFNvdW5kfX0sW3QuaXNTb3VuZEVuYWJsZWQmJnQubG9jYWxTb3VuZEVuYWJsZWQ/ZSgiZGl2IixbZSgic3BhbiIse3N0YXRpY1N0eWxlOnt3aWR0aDoiMS42cmVtIiwidmVydGljYWwtYWxpZ24iOiJtaWRkbGUifX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ2b2x1bWUtdXAiLHNpemU6Im1lZGl1bSJ9fSldLDEpLHQuX3YoIiAiK3QuX3ModC4kaTE4bigibWVudSIsInNvdW5kX29uIikpKyIgIildKTplKCJkaXYiLFtlKCJzcGFuIix7c3RhdGljU3R5bGU6e3dpZHRoOiIxLjZyZW0iLCJ2ZXJ0aWNhbC1hbGlnbiI6Im1pZGRsZSJ9fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6Im11dGUiLHNpemU6Im1lZGl1bSJ9fSldLDEpLHQuX3YoIiAiK3QuX3ModC4kaTE4bigibWVudSIsInNvdW5kX29mZiIpKSsiICIpXSldKSx0LmlzV2luZG93ZWQ/dC5fZSgpOmUoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1sZWZ0IHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixhdHRyczp7aXNUZXh0OiEwLHNpemU6InNtYWxsIixyb2xlOiJidXR0b24iLHRhYmluZGV4OnQuaXNPcGVuPzA6LTF9LG9uOntjbGljazp0LnBvcG91dFdpZGdldH19LFtlKCJzcGFuIix7c3RhdGljU3R5bGU6e3dpZHRoOiIxLjZyZW0ifX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJwb3BvdXQiLHNpemU6Im1lZGl1bSJ9fSldLDEpLHQuX3YodC5fcyh0LiRpMThuKCJtZW51IiwicG9wb3V0X3dpZGdldCIpKSsiICIpXSksdC5oYXNDaGF0U3RhcnRlZD9lKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtbGVmdCB0YXdrLWZsZXggdGF3ay1mbGV4LW1pZGRsZSIsYXR0cnM6e2lzVGV4dDohMCxzaXplOiJzbWFsbCIscm9sZToiYnV0dG9uIix0YWJpbmRleDp0LmlzT3Blbj8wOi0xfSxvbjp7Y2xpY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuJGVtaXQoInNob3dFbmRDaGF0Iil9fX0sW2UoInNwYW4iLHtzdGF0aWNTdHlsZTp7d2lkdGg6IjEuNnJlbSJ9fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImNsb3NlLWNpcmNsZSIsc2l6ZToic21hbGwifX0pXSwxKSx0Ll92KCIgIit0Ll9zKHQuJGkxOG4oIm1lbnUiLCJlbmRfY2hhdF9zZXNzaW9uIikpKyIgIildKTp0Ll9lKCksdC5icmFuZGluZyYmIXQuYnJhbmRpbmcud2hpdGVsYWJlbGVkP2UoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1sZWZ0IHRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIixhdHRyczp7aHJlZjp0LmJyYW5kaW5nLnVybCx0YXJnZXQ6ImJsYW5rIixpc1RleHQ6ITAsc2l6ZToic21hbGwiLHJvbGU6ImJ1dHRvbiIsdGFiaW5kZXg6dC5pc09wZW4/MDotMX19LFtlKCJzcGFuIix7c3RhdGljU3R5bGU6e3dpZHRoOiIxLjZyZW0ifX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJjaGF0LWJ1YmJsZSIsc2l6ZToic21hbGwifX0pXSwxKSx0Ll92KCIgIit0Ll9zKHQuJGkxOG4oIm1lbnUiLCJhZGRfY2hhdF90b195b3VyX3dlYnNpdGUiKSkrIiAiKV0pOnQuX2UoKV0sMSldLDEpOnQuX2UoKSx0LmlzV2luZG93ZWR8fHQuaXNSb3VuZFdpZGdldCYmIXQubW9iaWxlQnJvd3Nlck5hbWUmJiJzbGlkZSIhPT10aGlzLm9uQ2xpY2s/dC5fZSgpOmUoInRhd2stYnV0dG9uIix7ZGlyZWN0aXZlczpbe25hbWU6InRhd2stdG9vbHRpcCIscmF3TmFtZToidi10YXdrLXRvb2x0aXAifV0sc3RhdGljQ2xhc3M6InRhd2staGVhZGVyLXRleHQgdGF3ay1mbGV4LW5vbmUgdGF3ay1idXR0b24taG92ZXIgdGF3ay1jdXN0b20tY29sb3IiLGF0dHJzOntpc1RleHQ6ITAsImRhdGEtdGV4dCI6dC4kaTE4bigicm9sbG92ZXIiLCJtaW5pbWl6ZSIpLCJhcmlhLWxhYmVsIjp0LiRpMThuKCJyb2xsb3ZlciIsIm1pbmltaXplIil9LG5hdGl2ZU9uOntjbGljazpmdW5jdGlvbihlKXtyZXR1cm4gdC50b2dnbGVXaWRnZXQuYXBwbHkobnVsbCxhcmd1bWVudHMpfX19LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToieCJ9fSldLDEpXSwxKV0pfSksW10sITEsbnVsbCwiMmZjMmQ5NWQiLG51bGwpKS5leHBvcnRzLGc9YSgiN2Y0NiIpO2Z1bmN0aW9uIHcodCl7cmV0dXJuKHc9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBiKHQsZSl7dmFyIGE9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxhLnB1c2guYXBwbHkoYSxpKX1yZXR1cm4gYX1mdW5jdGlvbiB2KHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP2IoT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXt5KHQsZSxhW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGEpKTpiKE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIHkodCxlLGEpe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXcodCl8fCF0KXJldHVybiB0O3ZhciBhPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1hKXt2YXIgaT1hLmNhbGwodCxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT13KGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXcoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOmEsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPWEsdH12YXIgaz17bmFtZToiVGF3a01heGltaXplRm9vdGVyIixjb21wb25lbnRzOntUYXdrQ2hhdElucHV0OnMuVGF3a0NoYXRJbnB1dCxUYXdrQnJhbmRpbmc6cy5UYXdrQnJhbmRpbmcsVGF3a0ljb246cy5UYXdrSWNvbixUYXdrQnV0dG9uOnMuVGF3a0J1dHRvbn0sZGF0YTpmdW5jdGlvbigpe3JldHVybntpc0RyYWdnZWRPdmVyOiExLGltYWdlVXJsOiIiLmNvbmNhdCgiaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cyIsIi9pbWFnZXMvVGF3a3lfMTZ4MTYuc3ZnIikscG93ZXJJbWFnZVVSTDoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMiLCIvaW1hZ2VzL3Bvd2VyLnN2ZyIpfX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmF1dG9Gb2N1c0NoYXRJbnB1dCgpfSksNTAwKX0sY29tcHV0ZWQ6dih2KHt9LE9iamVjdChpLmMpKHtpc1dpbmRvd2VkOiJ3aWRnZXQvaXNXaW5kb3dlZCIsbW9iaWxlQnJvd3Nlck5hbWU6ImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIixpc0VtYmVkZGVkOiJ3aWRnZXQvaXNFbWJlZGRlZCIsaGFzTGl2ZUNoYXQ6IndpZGdldC9oYXNMaXZlQ2hhdCIsYnJhbmRpbmc6IndpZGdldC9icmFuZGluZyIsbmVlZENvbnNlbnQ6InNlc3Npb24vbmVlZENvbnNlbnQiLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyIscHJlY2hhdEZvcm1TdWJtaXR0ZWQ6InNlc3Npb24vcHJlY2hhdEZvcm1TdWJtaXR0ZWQiLGlzUHJlY2hhdEVuYWJsZWQ6IndpZGdldC9pc1ByZWNoYXRFbmFibGVkIixnZXRIaXN0b3J5OiJyb3V0ZXIvZ2V0SGlzdG9yeSIsY3VycmVudFZpZXc6InJvdXRlci9nZXRDdXJyZW50VmlldyIsZmVhdHVyZXM6IndpZGdldC9mZWF0dXJlcyIsc3RhdGVzOiJ3aWRnZXQvc3RhdGVzIixoYXNDaGF0U3RhcnRlZDoiY2hhdC9oYXNDaGF0U3RhcnRlZCIsaGFzQ2hhdEVuZGVkOiJjaGF0L2hhc0NoYXRFbmRlZCIsa2JTZWxlY3RlZDoia25vd2xlZGdlQmFzZS9zZWxlY3RlZCIsb25DbGljazoid2lkZ2V0L29uQ2xpY2siLGlzUm91bmRXaWRnZXQ6IndpZGdldC9pc1JvdW5kV2lkZ2V0IixjaGF0V2luZG93U3RhdGU6InNlc3Npb24vY2hhdFdpbmRvd1N0YXRlIn0pKSx7fSx7Ym9yZGVyUmFkaXVzQm90dG9tOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaXNXaW5kb3dlZHx8dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8dGhpcy5pc0VtYmVkZGVkPyIwcHgiOnRoaXMuaXNSb3VuZFdpZGdldD8iMCAwIDVweCA1cHgiOiIwcHgifSx3aGl0ZWxhYmVsOmZ1bmN0aW9uKCl7aWYodGhpcy5icmFuZGluZy53aGl0ZWxhYmVsZWQpe3ZhciB0PWcuYS5tYXJrZG93blRvSHRtbCh0aGlzLmJyYW5kaW5nLnRleHQpO3JldHVybiB0JiYiQ2hhdCBVKzI2QTEgYnkgPGI+dGF3ay50bzwvYj4iPT09dCYmKHQ9dC5yZXBsYWNlKCJVKzI2QTEiLCc8aW1nIHNyYz0iJy5jb25jYXQodGhpcy5wb3dlckltYWdlVVJMLCciIHN0eWxlPSJtYXgtd2lkdGg6IDhweDsiIC8+JykpKSx0JiYiOnRhd2t5OiBBZGQgZnJlZSA8Yj5saXZlIGNoYXQ8L2I+IHRvIHlvdXIgc2l0ZSI9PT10JiYodD10LnJlcGxhY2UoIjp0YXdreToiLCc8aW1nIHNyYz0iJy5jb25jYXQodGhpcy5pbWFnZVVybCwnIiAvPicpKSkse2xhYmVsOnQsdXJsOnRoaXMuYnJhbmRpbmcudXJsLHRleHRDb2xvcjp0aGlzLmJyYW5kaW5nLnRleHRDb2xvcn19fSxpc0NoYXRJbnB1dEJvdHRvbTpmdW5jdGlvbigpe3ZhciB0PSExLGU9dGhpcy5zdGF0ZXNbdGhpcy5wYWdlU3RhdHVzXTtyZXR1cm4gZSYmZS5ib2R5Lmxlbmd0aCYmKHQ9ImNoYXQiPT09ZS5ib2R5W2UuYm9keS5sZW5ndGgtMV0udHlwZSksdH0saXNMaXZlQ2hhdEZlYXR1cmVFbmFibGVkOmZ1bmN0aW9uKCl7cmV0dXJuISEodGhpcy5oYXNMaXZlQ2hhdHx8dGhpcy5oYXNDaGF0U3RhcnRlZCYmdGhpcy5hZ2VudHNDb3VudD4wKX0saW5wdXRQbGFjZWhvbGRlcjpmdW5jdGlvbigpe3ZhciB0LGU9dGhpcy5zdGF0ZXNbdGhpcy5wYWdlU3RhdHVzXTtpZihlJiZlLmJvZHkmJmUuYm9keS5sZW5ndGgpZm9yKHZhciBhPTA7YTxlLmJvZHkubGVuZ3RoO2ErKyl7dmFyIGk9ZS5ib2R5W2FdO2lmKCJjaGF0Ij09PWkudHlwZSl7dD1pLmNvbnRlbnQuaW5wdXRQbGFjZWhvbGRlcjticmVha319cmV0dXJuIHR9LG1haW5Gb290ZXJDbGFzc2VzOmZ1bmN0aW9uKCl7cmV0dXJuWyJ0YXdrLWNhcmQiLCJ0YXdrLWNhcmQtaW52ZXJzZSIsInRhd2stY2FyZC14c21hbGwiLCJ0YXdrLWZvb3RlciIsInRhd2stZmxleC1ub25lIix0aGlzLmlzRHJhZ2dlZE92ZXI/Imhhcy1kcmFnb3ZlciI6IiJdfSxzaG93Q2hhdElucHV0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY3VycmVudFZpZXcmJiJjaGF0Ij09PXRoaXMuY3VycmVudFZpZXcucGF0aH0sc2hvd1N0YXJ0Q2hhdEJ1dHRvbjpmdW5jdGlvbigpe3JldHVybiJvZmZsaW5lIiE9PXRoaXMucGFnZVN0YXR1cyYmdGhpcy5oYXNMaXZlQ2hhdCYmImhpc3RvcnktY2hhdCI9PT10aGlzLmN1cnJlbnRWaWV3LnBhdGgmJighdGhpcy5oYXNDaGF0U3RhcnRlZHx8dGhpcy5oYXNDaGF0RW5kZWQpfSxzaG93UmV0dXJuVG9MaXZlQ2hhdEJ0dG9uOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaGFzTGl2ZUNoYXQmJiJoaXN0b3J5LWNoYXQiPT09dGhpcy5jdXJyZW50Vmlldy5wYXRoJiZ0aGlzLmhhc0NoYXRTdGFydGVkJiYhdGhpcy5oYXNDaGF0RW5kZWR9LGlzU2hvd0JyYW5kaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYnJhbmRpbmcud2hpdGVsYWJlbGVkJiZ0aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHwhdGhpcy5pc1JvdW5kV2lkZ2V0JiZ0aGlzLmJyYW5kaW5nLndoaXRlbGFiZWxlZD90aGlzLmJyYW5kaW5nLnRleHQubGVuZ3RoOiEhdGhpcy5pc0VtYmVkZGVkfHwibWF4IiE9PXRoaXMub25DbGlja3x8dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8IXRoaXMuaXNSb3VuZFdpZGdldH19KSxtZXRob2RzOnYodih7fSxPYmplY3QoaS5iKSh7cm91dGVyUHVzaDoicm91dGVyL3JvdXRlclB1c2giLHNob3dPdmVybGF5OiJvdmVybGF5L3Nob3dPdmVybGF5IixjbGVhckhpc3Rvcnk6InJvdXRlci9jbGVhckhpc3RvcnkifSkpLHt9LHtkcmFnb3ZlcjpmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdGhpcy5mZWF0dXJlcy51cGxvYWQmJih0aGlzLmlzRHJhZ2dlZE92ZXI9ITApfSxkcmFnbGVhdmU6ZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZmVhdHVyZXMudXBsb2FkJiYodC5jdXJyZW50VGFyZ2V0LmNvbnRhaW5zKHQucmVsYXRlZFRhcmdldCl8fCh0aGlzLmlzRHJhZ2dlZE92ZXI9ITEpKX0sZHJvcDpmdW5jdGlvbih0KXt0aGlzLmhhc0xpdmVDaGF0JiZ0aGlzLmZlYXR1cmVzLnVwbG9hZCYmKHQucHJldmVudERlZmF1bHQoKSx0aGlzLmlzRHJhZ2dlZE92ZXI9ITEsdGhpcy4kcmVmc1sidGF3ay1jaGF0aW5wdXQiXSYmdGhpcy4kcmVmc1sidGF3ay1jaGF0aW5wdXQiXS4kcmVmcyYmdGhpcy4kcmVmc1sidGF3ay1jaGF0aW5wdXQiXS4kcmVmcy5maWxldXBsb2FkJiYodGhpcy4kcmVmc1sidGF3ay1jaGF0aW5wdXQiXS4kcmVmcy5maWxldXBsb2FkLmZpbGVzPXQuZGF0YVRyYW5zZmVyLmZpbGVzLHRoaXMuJHJlZnNbInRhd2stY2hhdGlucHV0Il0ub25GaWxlVXBsb2FkKCkpKX0sbWVzc2FnZVR5cGluZzpmdW5jdGlvbih0KXt0aGlzLiRUYXdrQ2hhdE1hbmFnZXIuc2VuZE1lc3NhZ2VQcmV2aWV3KHQpfSxzZW5kTWVzc2FnZTpmdW5jdGlvbih0KXt2YXIgZT10Lm1lc3NhZ2UsYT10LmF0dGFjaG1lbnRzLGk9dm9pZCAwPT09YT9bXTphO3RoaXMuJFRhd2tDaGF0TWFuYWdlci5zZW5kTWVzc2FnZSh7bWVzc2FnZTplLGF0dGFjaG1lbnRzOml9KSx0aGlzLnJvdXRlclB1c2goImNoYXQiKSx0aGlzLnNob3dPdmVybGF5KCExKX0scmF0aW5nQ2xpY2tlZDpmdW5jdGlvbih0KXt0aGlzLiRUYXdrQ2hhdE1hbmFnZXIuY2hhbmdlUmF0aW5nKHQpLHRoaXMucm91dGVyUHVzaCgiY2hhdCIpLHRoaXMuc2hvd092ZXJsYXkoITEpfSxjaGF0Rm9jdXM6ZnVuY3Rpb24oKXt0aGlzLiRyZWZzWyJtYWluLWZvb3RlciJdLnN0eWxlLmJveFNoYWRvdz0iMHB4IC0ycHggOHB4IHJnYmEoMCwwLDAsLjEpIn0sY2hhdEJsdXI6ZnVuY3Rpb24oKXt0aGlzLiRyZWZzWyJtYWluLWZvb3RlciJdLnN0eWxlLmJveFNoYWRvdz0iMCAwIDAgdHJhbnNwYXJlbnQifSxwYXN0ZTpmdW5jdGlvbih0KXt2YXIgZSxhPSh0Lm9yaWdpbmFsRXZlbnR8fHQpLmNsaXBib2FyZERhdGE7YSYmKChlPWEuZmlsZXMpLmxlbmd0aCYmIXRoaXMuZmVhdHVyZXMudXBsb2Fkc3x8ZSYmZS5sZW5ndGgmJih0aGlzLiRyZWZzWyJ0YXdrLWNoYXRpbnB1dCJdLiRyZWZzLmZpbGV1cGxvYWQuZmlsZXM9ZSx0aGlzLiRyZWZzWyJ0YXdrLWNoYXRpbnB1dCJdLm9uRmlsZVVwbG9hZCgpKSl9LHN0YXJ0Q2hhdDpmdW5jdGlvbigpe3RoaXMuc2hvd092ZXJsYXkoITEpLHRoaXMuY2xlYXJIaXN0b3J5KCksdGhpcy5pc1ByZWNoYXRFbmFibGVkJiYhdGhpcy5wcmVjaGF0Rm9ybVN1Ym1pdHRlZD90aGlzLnJvdXRlclB1c2goInByZWNoYXQiKTp0aGlzLnJvdXRlclB1c2goImNoYXQiKX0scmV0dXJuVG9MaXZlQ2hhdDpmdW5jdGlvbigpe3RoaXMuc2hvd092ZXJsYXkoITEpLHRoaXMuY2xlYXJIaXN0b3J5KCksdGhpcy5yb3V0ZXJQdXNoKCJjaGF0Iil9LGNsZWFyQ2hhdElucHV0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy4kcmVmc1sidGF3ay1jaGF0aW5wdXQiXTt0aGlzLiRUYXdrQ2hhdE1hbmFnZXIuY2xlYXJUeXBpbmdUaW1lb3V0KCksdCYmKHQuJHJlZnMmJnQuJHJlZnMuY2hhdGlucHV0JiYodC4kcmVmcy5jaGF0aW5wdXQudmFsdWU9IiIpLHQuaGFzVmFsdWU9ITEsdC5maWxlcz1bXSx0LnNob3dFbW9qaT0hMSx0LnNob3dSYXRpbmdzPSExKX0sYXV0b0ZvY3VzQ2hhdElucHV0OmZ1bmN0aW9uKCl7dmFyIHQ7bnVsbD09PSh0PXRoaXMuJHJlZnNbInRhd2stY2hhdGlucHV0Il0pfHx2b2lkIDA9PT10fHxudWxsPT09KHQ9dC4kcmVmcyl8fHZvaWQgMD09PXR8fG51bGw9PT0odD10LmNoYXRpbnB1dCl8fHZvaWQgMD09PXR8fHQuZm9jdXMoKX0sZ29Ub0hvbWVWaWV3OmZ1bmN0aW9uKCl7dGhpcy5yb3V0ZXJQdXNoKCIvIiksdGhpcy5zaG93T3ZlcmxheSghMSl9LGdvVG9NZXNzYWdlVmlldzpmdW5jdGlvbigpe3RoaXMucm91dGVyUHVzaCgibWVzc2FnZXMiKSx0aGlzLnNob3dPdmVybGF5KCExKX19KSx3YXRjaDp7Y3VycmVudFZpZXc6ZnVuY3Rpb24odCl7dmFyIGU9dGhpczsiY2hhdCI9PT10LnBhdGgmJnRoaXMuJG5leHRUaWNrKChmdW5jdGlvbigpe2UuYXV0b0ZvY3VzQ2hhdElucHV0KCl9KSl9LGNoYXRXaW5kb3dTdGF0ZTpmdW5jdGlvbih0KXt2YXIgZT10aGlzOyJtYXgiPT09dCYmImNoYXQiPT09dGhpcy5jdXJyZW50Vmlldy5wYXRoJiZzZXRUaW1lb3V0KChmdW5jdGlvbigpe2UuYXV0b0ZvY3VzQ2hhdElucHV0KCl9KSw1MDApfSxoYXNDaGF0U3RhcnRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmF1dG9Gb2N1c0NoYXRJbnB1dCgpfSksNTAwKX0saGFzQ2hhdEVuZGVkOmZ1bmN0aW9uKHQpe3QmJnRoaXMuY2xlYXJDaGF0SW5wdXQoKX19fSxDPU9iamVjdChjLmEpKGssKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImRpdiIse3JlZjoibWFpbi1mb290ZXIiLGNsYXNzOnQubWFpbkZvb3RlckNsYXNzZXMsc3R5bGU6e2JvcmRlclJhZGl1czp0LmJvcmRlclJhZGl1c0JvdHRvbX0sb246e2RyYWdvdmVyOnQuZHJhZ292ZXIsZHJhZ2xlYXZlOnQuZHJhZ2xlYXZlLGRyb3A6dC5kcm9wLHBhc3RlOnQucGFzdGV9fSxbdC5zaG93U3RhcnRDaGF0QnV0dG9uP2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1heC1mb290ZXItYWN0aW9ucyJ9LFtlKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1heC1mb290ZXItYWN0aW9ucy1idXR0b24iLGF0dHJzOntsYWJlbDp0LiRpMThuKCJob21lIiwiY2hhdF9idXR0b24iKSxpc091dGxpbmU6ITB9LG9uOntjbGljazp0LnN0YXJ0Q2hhdH19LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToic2VuZCJ9fSksdC5fdigiICIrdC5fcyh0LiRpMThuKCJob21lIiwiY2hhdF9idXR0b24iKSkrIiAiKV0sMSldLDEpOnQuX2UoKSx0LnNob3dSZXR1cm5Ub0xpdmVDaGF0QnR0b24/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWF4LWZvb3Rlci1hY3Rpb25zIn0sW2UoInRhd2stYnV0dG9uIix7c3RhdGljQ2xhc3M6InRhd2stbWF4LWZvb3Rlci1hY3Rpb25zLWJ1dHRvbiIsYXR0cnM6e2xhYmVsOnQuJGkxOG4oImNoYXQiLCJyZXR1cm5fdG9fbGl2ZV9jaGF0IiksaXNPdXRsaW5lOiEwfSxvbjp7Y2xpY2s6dC5yZXR1cm5Ub0xpdmVDaGF0fX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJjaGF0LWJ1YmJsZSJ9fSksdC5fdigiICIrdC5fcyh0LiRpMThuKCJjaGF0IiwicmV0dXJuX3RvX2xpdmVfY2hhdCIpKSsiICIpXSwxKV0sMSk6dC5fZSgpLHQuaXNTaG93QnJhbmRpbmc/ZSgidGF3ay1icmFuZGluZyIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtY2VudGVyIHRhd2stcGFkZGluZy1zbWFsbCIsYXR0cnM6e3doaXRlbGFiZWw6dC53aGl0ZWxhYmVsLGltYWdlVXJsOnQuaW1hZ2VVcmwsdGF3a1RvVXJsOnQuYnJhbmRpbmcudXJsfX0pOnQuX2UoKSwiLyIhPT10LmN1cnJlbnRWaWV3LnBhdGgmJiJtZXNzYWdlcyIhPT10LmN1cnJlbnRWaWV3LnBhdGh8fHQubmVlZENvbnNlbnQ/dC5fZSgpOmUoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWJvdHRvbS1uYXZiYXIiLGNsYXNzOnQuaXNTaG93QnJhbmRpbmc/InRhd2stYm90dG9tLW5hdmJhci1vZmZzZXQiOiIifSxbZSgiZGl2IixbZSgidGF3ay1idXR0b24iLHtjbGFzczp7InRhd2stbmF2LWFjdGl2ZSI6Ii8iPT09dC5jdXJyZW50Vmlldy5wYXRofSxhdHRyczp7bGFiZWw6dC4kaTE4bigiaG9tZSIsImhvbWUiKSxpc1RleHQ6ITB9LG9uOntjbGljazp0LmdvVG9Ib21lVmlld319LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiaG9tZSJ9fSldLDEpXSwxKSxlKCJkaXYiLFtlKCJ0YXdrLWJ1dHRvbiIse2NsYXNzOnsidGF3ay1uYXYtYWN0aXZlIjoibWVzc2FnZXMiPT09dC5jdXJyZW50Vmlldy5wYXRofSxhdHRyczp7bGFiZWw6dC4kaTE4bigiaG9tZSIsIm1lc3NhZ2VzIiksaXNUZXh0OiEwfSxvbjp7Y2xpY2s6dC5nb1RvTWVzc2FnZVZpZXd9fSxbZSgidGF3ay1pY29uIix7YXR0cnM6e3R5cGU6ImNoYXQtYnViYmxlIn19KV0sMSldLDEpXSksdC5pc0RyYWdnZWRPdmVyP2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LWNvbHVtbiB0YXdrLWZsZXgtY2VudGVyIHRhd2stZmxleC1taWRkbGUiLGF0dHJzOntpZDoidGF3ay1kcmFnb3Zlci1jb250YWluZXIifX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJhdHRhY2htZW50IixzaXplOiJ4bGFyZ2UifX0pLGUoInAiLFt0Ll92KHQuX3ModC4kaTE4bigicm9sbG92ZXIiLCJ1cGxvYWRfZmlsZSIpKSldKV0sMSk6dC5fZSgpLHQubmVlZENvbnNlbnR8fCJvZmZsaW5lIj09PXQucGFnZVN0YXR1c3x8dC5pc1ByZWNoYXRFbmFibGVkJiYhdC5wcmVjaGF0Rm9ybVN1Ym1pdHRlZHx8IXQuaXNMaXZlQ2hhdEZlYXR1cmVFbmFibGVkP3QuX2UoKTplKCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTp0LnNob3dDaGF0SW5wdXQsZXhwcmVzc2lvbjoic2hvd0NoYXRJbnB1dCJ9XSxyZWY6InRhd2stY2hhdGlucHV0LWNvbnRhaW5lciIsYXR0cnM6e2lkOiJ0YXdrLWNoYXRpbnB1dC1jb250YWluZXIifX0sW2UoInRhd2stY2hhdC1pbnB1dCIse3JlZjoidGF3ay1jaGF0aW5wdXQiLGF0dHJzOntwbGFjZWhvbGRlcjp0LmlucHV0UGxhY2Vob2xkZXIsZmVhdHVyZXM6dC5mZWF0dXJlc30sb246e21lc3NhZ2VUeXBpbmc6dC5tZXNzYWdlVHlwaW5nLHNlbmRNZXNzYWdlOnQuc2VuZE1lc3NhZ2UscmF0aW5nQ2xpY2tlZDp0LnJhdGluZ0NsaWNrZWQsZm9jdXM6dC5jaGF0Rm9jdXMsYmx1cjp0LmNoYXRCbHVyfX0pXSwxKV0sMSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cztmdW5jdGlvbiBPKHQpe3JldHVybihPPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gUyh0LGUpe3ZhciBhPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksYS5wdXNoLmFwcGx5KGEsaSl9cmV0dXJuIGF9ZnVuY3Rpb24geCh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgYT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9TKE9iamVjdChhKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7VCh0LGUsYVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhhKSk6UyhPYmplY3QoYSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBUKHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1PKHQpfHwhdClyZXR1cm4gdDt2YXIgYT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09YSl7dmFyIGk9YS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9TyhpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1PKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIFA9e25hbWU6ImhvbWUtaGVhZGVyIixjb21wb25lbnRzOntUYXdrSW1hZ2U6cy5UYXdrSW1hZ2UsVGF3a1ZpZGVvOnMuVGF3a1ZpZGVvLEtub3dsZWRnZUJhc2VTZWFyY2g6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBlNWYzNCIpLnRoZW4oYS5iaW5kKG51bGwsIjk3NTUiKSl9LEFnZW50Q2FyZDpmdW5jdGlvbigpe3JldHVybiBhLmUoImNodW5rLTJkMGM4ODk0IikudGhlbihhLmJpbmQobnVsbCwiNTRmZSIpKX0sVGF3a0Vtb2ppOnMuVGF3a0Vtb2ppfSxwcm9wczp7c3RhdGU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6Im9ubGluZSJ9fSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2hlYWRlcjp7fSxyZWZyZXNoSGVhZGVyOiEwfX0sbW91bnRlZDpmdW5jdGlvbigpe3RoaXMuc3RhdGUmJnRoaXMuc3RhdGVzW3RoaXMuc3RhdGVdJiYodGhpcy5oZWFkZXI9dGhpcy5zdGF0ZXNbdGhpcy5zdGF0ZV0uaGVhZGVyKX0sY29tcHV0ZWQ6eCh4KHt9LE9iamVjdChpLmMpKHtzdGF0ZXM6IndpZGdldC9zdGF0ZXMiLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyIsY2hhdFZlcnNpb246ImNoYXQvY2hhdFZlcnNpb24iLG1vYmlsZUJyb3dzZXJOYW1lOiJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSIsZW1vamlFbmFibGVkOiJ3aWRnZXQvZW1vamlFbmFibGVkIn0pKSx7fSx7bG9nb1VybDpmdW5jdGlvbigpe3JldHVybiJodHRwczovL3Rhd2subGluayJ9fSksd2F0Y2g6e3N0YXRlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLnJlZnJlc2hIZWFkZXI9ITEsdGhpcy5oZWFkZXI9e30sdGhpcy4kbmV4dFRpY2soKGZ1bmN0aW9uKCl7dC5yZWZyZXNoSGVhZGVyPSEwLHQuc3RhdGUmJnQuc3RhdGVzW3Quc3RhdGVdJiYodC5oZWFkZXI9dC5zdGF0ZXNbdC5zdGF0ZV0uaGVhZGVyKX0pKX19LG1ldGhvZHM6e2NvbnZlcnRUb0hUTUw6ZnVuY3Rpb24odCl7cmV0dXJuIGcuYS5tYXJrZG93blRvSHRtbCh0KX19fSwkPU9iamVjdChjLmEpKFAsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIHQucmVmcmVzaEhlYWRlcj9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mb3JtLXdpZHRoLTEwMCB0YXdrLWZsZXggdGF3ay1mbGV4LWNvbHVtbiJ9LHQuX2wodC5oZWFkZXIsKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIGUoImRpdiIse2tleTppfSxbKGEudHlwZSx0Ll9lKCkpLCJoZWFkaW5nIj09PWEudHlwZT9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLXRvcCIsY2xhc3M6ImhlYWRlci1jYXJkIGNhcmQtLSIrYS50eXBlfSxbZSgicCIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtYm9sZC00IHRhd2staGVhZGVyLXRleHQgdGF3ay1jdXN0b20tY29sb3IiLGNsYXNzOlthLmNvbnRlbnQuYWxpZ25tZW50JiYiY2FyZC0tYWxpZ25tZW50LSIuY29uY2F0KGEuY29udGVudC5hbGlnbm1lbnQpXSxhdHRyczp7cm9sZToiaGVhZGluZyJ9fSxbZSgidGF3ay1lbW9qaSIse2F0dHJzOntlbW9qaTp0LmNvbnZlcnRUb0hUTUwoYS5jb250ZW50LnZhbHVlKSxlbmFibGVkOnQuZW1vamlFbmFibGVkfX0pXSwxKV0pOnQuX2UoKSwidGV4dCI9PT1hLnR5cGU/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AiLGNsYXNzOiJoZWFkZXItY2FyZCBjYXJkLS0iK2EudHlwZX0sW2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZ3VsYXItNCB0YXdrLWhlYWRlci10ZXh0IHRhd2stY3VzdG9tLWNvbG9yIixjbGFzczpbYS5jb250ZW50LmFsaWdubWVudCYmImNhcmQtLWFsaWdubWVudC0iLmNvbmNhdChhLmNvbnRlbnQuYWxpZ25tZW50KV19LFtlKCJ0YXdrLWVtb2ppIix7YXR0cnM6e2Vtb2ppOnQuY29udmVydFRvSFRNTChhLmNvbnRlbnQudmFsdWUpLGVuYWJsZWQ6dC5lbW9qaUVuYWJsZWR9fSldLDEpXSk6dC5fZSgpLCJhZ2VudHMiPT09YS50eXBlP2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtdG9wIixjbGFzczpbInRhd2stZmxleCBjYXJkLS0iK2EudHlwZSxhLmNvbnRlbnQuYWxpZ25tZW50JiYiY2FyZC0tZmxleC0iLmNvbmNhdChhLmNvbnRlbnQuYWxpZ25tZW50KV19LFtlKCJhZ2VudC1jYXJkIix7YXR0cnM6e2FnZW50SWRzOmEuY29udGVudC5hZ2VudElkc319KV0sMSk6dC5fZSgpLCJpbWFnZSI9PT1hLnR5cGU/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AiLGNsYXNzOiJoZWFkZXItY2FyZCBjYXJkLS0iK2EudHlwZX0sW2UoYS5jb250ZW50Lmxpbms/ImEiOiJkaXYiLHt0YWc6ImNvbXBvbmVudCIsYXR0cnM6e2hyZWY6YS5jb250ZW50Lmxpbms/YS5jb250ZW50LmxpbmsucmVmOm51bGwsdGFyZ2V0OmEuY29udGVudC5saW5rJiYiYmxhbmsiPT09YS5jb250ZW50LmxpbmsudGFyZ2V0PyJfYmxhbmsiOiJfdG9wIn19LFtlKCJ0YXdrLWltYWdlIix7c3RhdGljQ2xhc3M6InRhd2stY3VzdG9tLWltYWdlIixhdHRyczp7cG9zaXRpb246YS5jb250ZW50LmFsaWdubWVudCxzcmM6YS5jb250ZW50LmltYWdlLmNvbnRlbnQsYWx0OmEuY29udGVudC5pbWFnZS5jb250ZW50fX0pXSwxKV0sMSk6dC5fZSgpLCJ2aWRlbyI9PT1hLnR5cGU/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AiLGNsYXNzOiJoZWFkZXItY2FyZCBjYXJkLS0iK2EudHlwZX0sW2UoInRhd2stdmlkZW8iLHthdHRyczp7Y29udGVudDp7c291cmNlOmEuY29udGVudC5zb3VyY2UsdXJsOmEuY29udGVudC51cmwsb3B0aW9uczphLmNvbnRlbnQuY29uZmlnfSxpc01vYmlsZTohIXQubW9iaWxlQnJvd3Nlck5hbWV9fSldLDEpOnQuX2UoKSwia2Itc2VhcmNoIj09PWEudHlwZT9lKCJrbm93bGVkZ2UtYmFzZS1zZWFyY2giLHthdHRyczp7Y29udGVudDphLmNvbnRlbnR9fSk6dC5fZSgpXSwxKX0pKSwwKTp0Ll9lKCl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cztmdW5jdGlvbiBqKHQpe3JldHVybihqPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gQih0LGUpe3ZhciBhPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksYS5wdXNoLmFwcGx5KGEsaSl9cmV0dXJuIGF9ZnVuY3Rpb24gXyh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgYT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9CKE9iamVjdChhKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7RSh0LGUsYVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhhKSk6QihPYmplY3QoYSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBFKHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1qKHQpfHwhdClyZXR1cm4gdDt2YXIgYT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09YSl7dmFyIGk9YS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9aihpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1qKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIE09e25hbWU6Ikl0ZW0iLG1peGluczpbYSgiNGIzZSIpLmFdLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aXNDb252ZXJzYXRpb25DYXJkOiExLHRvdGFsSGlzdG9yeUl0ZW1zOjAsaXNMb2FkaW5nSGlzdG9yeTohMCxvZmZWaWRlbzohMH19LHByb3BzOntjYXJkOnt0eXBlOk9iamVjdCxyZXF1aXJlZDohMH0saXNTdWJtaXR0aW5nOnt0eXBlOkJvb2xlYW4scmVxdWlyZWQ6ITB9LGlzU3VibWl0QnV0dG9uTG9jazp7dHlwZTpCb29sZWFuLHJlcXVpcmVkOiEwfSxzdWJtaXNzaW9uRXJyb3I6e3R5cGU6Qm9vbGVhbixyZXF1aXJlZDohMX0sYm9keTp7dHlwZTpBcnJheSxyZXF1aXJlZDohMH0sc3RhdGU6e3R5cGU6U3RyaW5nLHJlcXVpcmVkOiEwfSxoYXNDb252ZXJzYXRpb25DYXJkOnt0eXBlOkJvb2xlYW4scmVxdWlyZWQ6ITB9fSxjb21wb25lbnRzOntUYXdrQ2FyZDpzLlRhd2tDYXJkLFRhd2tJY29uOnMuVGF3a0ljb24sVGF3a0ltYWdlOnMuVGF3a0ltYWdlLFRhd2tWaWRlbzpzLlRhd2tWaWRlbyxUYXdrQnV0dG9uOnMuVGF3a0J1dHRvbixLbm93bGVkZ2VCYXNlOmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFthLmUoImNodW5rLTJkMjIxODMwIiksYS5lKCJjaHVuay0yZDBjMDJlMiIpXSkudGhlbihhLmJpbmQobnVsbCwiNDE0YyIpKX0sVGF3a0FsZXJ0OnMuVGF3a0FsZXJ0LEtub3dsZWRnZUJhc2VTZWFyY2g6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBlNWYzNCIpLnRoZW4oYS5iaW5kKG51bGwsIjk3NTUiKSl9LENvbnZlcnNhdGlvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0xOGYyMjg3OCIpLnRoZW4oYS5iaW5kKG51bGwsIjMwYmUiKSl9LEtiRmVhdHVyZWRBcnRpY2xlOmZ1bmN0aW9uKCl7cmV0dXJuIGEuZSgiY2h1bmstMmQyMDdmNDgiKS50aGVuKGEuYmluZChudWxsLCJhMzc3IikpfSxUYXdrRW1vamk6cy5UYXdrRW1vamksVGF3a0Zvcm06ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBiMzQ1YSIpLnRoZW4oYS5iaW5kKG51bGwsIjI4NTMiKSl9fSxtb3VudGVkOmZ1bmN0aW9uKCl7dGhpcy5oYXNMaXZlQ2hhdCYmInByZXZpb3VzLWNvbnZlcnNhdGlvbnMiPT09dGhpcy5jYXJkLnR5cGUmJih0aGlzLiRlbWl0KCJ1cGRhdGU6aGFzQ29udmVyc2F0aW9uQ2FyZCIsITApLHRoaXMuaXNDb252ZXJzYXRpb25DYXJkPSEwKSx0aGlzLiRlbWl0KCJjb250ZW50Q2FyZExvYWRlZCIpfSxjb21wdXRlZDpfKF8oe30sT2JqZWN0KGkuYykoe2hhc0xpdmVDaGF0OiJ3aWRnZXQvaGFzTGl2ZUNoYXQiLG1vYmlsZUJyb3dzZXJOYW1lOiJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSIsaGFzQ2hhdFN0YXJ0ZWQ6ImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiLGlzUHJlY2hhdEVuYWJsZWQ6IndpZGdldC9pc1ByZWNoYXRFbmFibGVkIixwcmVjaGF0Rm9ybVN1Ym1pdHRlZDoic2Vzc2lvbi9wcmVjaGF0Rm9ybVN1Ym1pdHRlZCIsaGlzdG9yeUl0ZW1zOiJoaXN0b3J5L2l0ZW1zIixoYXNDaGF0RW5kZWQ6ImNoYXQvaGFzQ2hhdEVuZGVkIixlbW9qaUVuYWJsZWQ6IndpZGdldC9lbW9qaUVuYWJsZWQiLGNoYXRPcmRlcjoiY2hhdC9jaGF0T3JkZXIiLGlzTm90VmFsaWRFbWFpbDoic2Vzc2lvbi9pc05vdFZhbGlkRW1haWwiLGlzTm90VmFsaWRQaG9uZToic2Vzc2lvbi9pc05vdFZhbGlkUGhvbmUiLGlzSG9tZToicm91dGVyL2lzSG9tZSJ9KSkse30se2lzQ2hhdElucHV0Qm90dG9tOmZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHRoaXMuYm9keSYmdGhpcy5ib2R5Lmxlbmd0aCYmKHQ9ImNoYXQiPT09dGhpcy5ib2R5W3RoaXMuYm9keS5sZW5ndGgtMV0udHlwZSksdH0sc2hvd1N0YXJ0Q2hhdEJ1dHRvbjpmdW5jdGlvbigpe3JldHVybiF0aGlzLmhhc0NoYXRTdGFydGVkJiYhdGhpcy5oYXNDaGF0RW5kZWQmJnRoaXMuaGFzTGl2ZUNoYXR9LHNob3dDb252ZXJzYXRpb25DYXJkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaXNMb2FkaW5nSGlzdG9yeXx8dGhpcy50b3RhbEhpc3RvcnlJdGVtc3x8dGhpcy5jaGF0T3JkZXJ9fSksbWV0aG9kczpfKF8oe30sT2JqZWN0KGkuYikoe3JvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIixzaG93T3ZlcmxheToib3ZlcmxheS9zaG93T3ZlcmxheSJ9KSkse30se3N0YXJ0Q2hhdDpmdW5jdGlvbigpe3RoaXMuaXNQcmVjaGF0RW5hYmxlZCYmIXRoaXMucHJlY2hhdEZvcm1TdWJtaXR0ZWQ/dGhpcy5yb3V0ZXJQdXNoKCJwcmVjaGF0Iik6KHRoaXMucm91dGVyUHVzaCgiY2hhdCIpLHRoaXMuc2hvd092ZXJsYXkoITEpKX0sc3VibWl0Rm9ybTpmdW5jdGlvbih0KXt0aGlzLiRlbWl0KCJzdWJtaXRGb3JtIix0KX0sY29udmVydFRvSFRNTDpmdW5jdGlvbih0KXtyZXR1cm4gZy5hLm1hcmtkb3duVG9IdG1sKHQpfSxoaXN0b3J5SXRlbXNMb2FkZWQ6ZnVuY3Rpb24odCl7dGhpcy50b3RhbEhpc3RvcnlJdGVtcz10LHRoaXMuaXNMb2FkaW5nSGlzdG9yeT0hMX19KSx3YXRjaDp7aXNOb3RWYWxpZEVtYWlsOmZ1bmN0aW9uKHQpe3QmJih0aGlzLiRlbWl0KCJ1cGRhdGU6aXNTdWJtaXR0aW5nIiwhMSksdGhpcy4kZW1pdCgidXBkYXRlOmlzU3VibWl0QnV0dG9uTG9jayIsITEpKX0saXNOb3RWYWxpZFBob25lOmZ1bmN0aW9uKHQpe3QmJih0aGlzLiRlbWl0KCJ1cGRhdGU6aXNTdWJtaXR0aW5nIiwhMSksdGhpcy4kZW1pdCgidXBkYXRlOmlzU3VibWl0QnV0dG9uTG9jayIsITEpKX19fSxMPU9iamVjdChjLmEpKE0sKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIXQuaXNDb252ZXJzYXRpb25DYXJkfHx0LmlzQ29udmVyc2F0aW9uQ2FyZCYmdC5zaG93Q29udmVyc2F0aW9uQ2FyZD9lKCJkaXYiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTohdC5pc0NvbnZlcnNhdGlvbkNhcmR8fHQuaXNDb252ZXJzYXRpb25DYXJkJiYhdC5pc0xvYWRpbmdIaXN0b3J5LGV4cHJlc3Npb246IiFpc0NvbnZlcnNhdGlvbkNhcmQgfHwgKGlzQ29udmVyc2F0aW9uQ2FyZCAmJiAhaXNMb2FkaW5nSGlzdG9yeSkifV0sc3RhdGljQ2xhc3M6ImNhcmQtY29udGFpbmVyIixjbGFzczp0LmlzQ29udmVyc2F0aW9uQ2FyZCYmdC5jaGF0T3JkZXI/InRhd2stZmxleC1maXJzdCI6IiJ9LFsiaGVhZGluZyI9PT10LmNhcmQudHlwZT9lKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ib3gtc2hhZG93LXhzbWFsbCIsY2xhc3M6ImNhcmQtLSIrdC5jYXJkLnR5cGUsYXR0cnM6e2NvbG9yOiJpbnZlcnNlIn19LFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1ib2xkLTQiLGNsYXNzOlt0LmNhcmQuY29udGVudC5hbGlnbm1lbnQmJiJjYXJkLS1hbGlnbm1lbnQtIi5jb25jYXQodC5jYXJkLmNvbnRlbnQuYWxpZ25tZW50KV0sYXR0cnM6e3JvbGU6ImhlYWRpbmcifX0sW2UoInRhd2stZW1vamkiLHthdHRyczp7ZW1vamk6dC5jb252ZXJ0VG9IVE1MKHQuY2FyZC5jb250ZW50LnZhbHVlKSxlbmFibGVkOnQuZW1vamlFbmFibGVkfX0pXSwxKV0pOiJ0ZXh0Ij09PXQuY2FyZC50eXBlP2UoInRhd2stY2FyZCIse3N0YXRpY0NsYXNzOiJ0YXdrLWJveC1zaGFkb3cteHNtYWxsIixjbGFzczoiY2FyZC0tIit0LmNhcmQudHlwZSxhdHRyczp7Y29sb3I6ImludmVyc2UifX0sW2UoInAiLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZ3VsYXItNCIsY2xhc3M6W3QuY2FyZC5jb250ZW50LmFsaWdubWVudCYmImNhcmQtLWFsaWdubWVudC0iLmNvbmNhdCh0LmNhcmQuY29udGVudC5hbGlnbm1lbnQpXX0sW2UoInRhd2stZW1vamkiLHthdHRyczp7ZW1vamk6dC5jb252ZXJ0VG9IVE1MKHQuY2FyZC5jb250ZW50LnZhbHVlKSxlbmFibGVkOnQuZW1vamlFbmFibGVkfX0pXSwxKV0pOiJpbWFnZSI9PT10LmNhcmQudHlwZT9lKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ib3gtc2hhZG93LXhzbWFsbCIsY2xhc3M6ImNhcmQtLSIrdC5jYXJkLnR5cGUsYXR0cnM6e2NvbG9yOiJpbnZlcnNlIn19LFtlKHQuY2FyZC5jb250ZW50Lmxpbms/ImEiOiJkaXYiLHt0YWc6ImNvbXBvbmVudCIsYXR0cnM6e2hyZWY6dC5jYXJkLmNvbnRlbnQubGluaz90LmNhcmQuY29udGVudC5saW5rLnJlZjpudWxsLHRhcmdldDp0LmNhcmQuY29udGVudC5saW5rJiYiYmxhbmsiPT09dC5jYXJkLmNvbnRlbnQubGluay50YXJnZXQ/Il9ibGFuayI6Il90b3AifX0sW2UoInRhd2staW1hZ2UiLHtzdGF0aWNDbGFzczoidGF3ay1jdXN0b20taW1hZ2UiLGF0dHJzOntwb3NpdGlvbjp0LmNhcmQuY29udGVudC5hbGlnbm1lbnQsc3JjOnQuY2FyZC5jb250ZW50LmltYWdlLmNvbnRlbnQsYWx0OiIiLmNvbmNhdCh0LiRpMThuKCJob21lIiwiYmFubmVyX2ltYWdlIikpLHJvbGU6ImJhbm5lciJ9fSldLDEpXSwxKToidmlkZW8iPT09dC5jYXJkLnR5cGU/ZSgidGF3ay1jYXJkIix7c3RhdGljQ2xhc3M6InRhd2stYm94LXNoYWRvdy14c21hbGwiLGNsYXNzOiJjYXJkLS0iK3QuY2FyZC50eXBlLGF0dHJzOntjb2xvcjoiaW52ZXJzZSJ9fSxbdC5vZmZWaWRlbz9lKCJ0YXdrLXZpZGVvIix7YXR0cnM6e2NvbnRlbnQ6e3NvdXJjZTp0LmNhcmQuY29udGVudC5zb3VyY2UsdXJsOnQuY2FyZC5jb250ZW50LnVybCxvcHRpb25zOnQuY2FyZC5jb250ZW50LmNvbmZpZ30saXNNb2JpbGU6ISF0Lm1vYmlsZUJyb3dzZXJOYW1lfX0pOnQuX2UoKV0sMSk6ImNoYXQiPT09dC5jYXJkLnR5cGU/W3Quc2hvd1N0YXJ0Q2hhdEJ1dHRvbj9lKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ob21lLWNhcmQtY2hhdCB0YXdrLWJveC1zaGFkb3cteHNtYWxsIixjbGFzczoiY2FyZC0tIit0LmNhcmQudHlwZSxhdHRyczp7aWQ6dC5jYXJkLmlkLGNvbG9yOiJpbnZlcnNlIn0sb246e2NsaWNrOnQuc3RhcnRDaGF0fX0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXgtMSJ9LFtlKCJwIixbdC5fdigiICIrdC5fcyh0LmNhcmQuY29udGVudC5idXR0b25UZXh0KSsiICIpXSksZSgicCIsW3QuX3YoIiAiK3QuX3ModC5jYXJkLmNvbnRlbnQuaGFzT3duUHJvcGVydHkoImJ1dHRvblN1YnRpdGxlIik/dC5jYXJkLmNvbnRlbnQuYnV0dG9uU3VidGl0bGU6dC4kaTE4bigiaG9tZSIsImNoYXRfYnV0dG9uX3N1YnRpdGxlIikpKyIgIildKV0pLGUoImRpdiIsW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJzZW5kIn19KV0sMSldKTp0Ll9lKCldOiJrYi1mZWF0dXJlZC1hcnRpY2xlcyI9PT10LmNhcmQudHlwZT9lKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ob21lLWtiLWNhcmQiLGF0dHJzOntpZDp0LmNhcmQuaWQsY29sb3I6ImludmVyc2UifX0sW2UoImtub3dsZWRnZS1iYXNlIix7YXR0cnM6e3N0YXRlOnQuc3RhdGUsY29udGVudDp0LmNhcmQuY29udGVudH19KV0sMSk6ImtiLXNlYXJjaCI9PT10LmNhcmQudHlwZT9lKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ob21lLWtiLWNhcmQgdGF3ay1ib3gtc2hhZG93LXhzbWFsbCIsYXR0cnM6e2lkOnQuY2FyZC5pZCxjb2xvcjoiaW52ZXJzZSJ9fSxbZSgia25vd2xlZGdlLWJhc2Utc2VhcmNoIix7YXR0cnM6e2NvbnRlbnQ6dC5jYXJkLmNvbnRlbnR9fSldLDEpOiJrYi1mZWF0dXJlZC1hcnRpY2xlIj09dC5jYXJkLnR5cGU/ZSgia2ItZmVhdHVyZWQtYXJ0aWNsZSIse2NsYXNzOiJjYXJkLS0iK3QuY2FyZC50eXBlLGF0dHJzOntjb250ZW50OnQuY2FyZC5jb250ZW50fX0pOiJmb3JtIj09PXQuY2FyZC50eXBlP2UoImRpdiIse3N0YXRpY0NsYXNzOiJjYXJkLS1mb3JtIixjbGFzczp0LmlzU3VibWl0dGluZyYmInN1Ym1pdHRpbmcifSxbZSgidGF3ay1mb3JtIix7YXR0cnM6e3N0YXRlOnQuc3RhdGUsc3VibWlzc2lvbkVycm9yOnQuc3VibWlzc2lvbkVycm9yLGlzU3VibWl0dGluZzp0LmlzU3VibWl0dGluZyxpc1N1Ym1pdEJ1dHRvbkxvY2s6dC5pc1N1Ym1pdEJ1dHRvbkxvY2t9LG9uOnsidXBkYXRlOmlzU3VibWl0dGluZyI6W2Z1bmN0aW9uKGUpe3QuaXNTdWJtaXR0aW5nPWV9LHQuaXNTdWJtaXR0aW5nXSwidXBkYXRlOmlzLXN1Ym1pdHRpbmciOmZ1bmN0aW9uKGUpe3QuaXNTdWJtaXR0aW5nPWV9LCJ1cGRhdGU6aXNTdWJtaXRCdXR0b25Mb2NrIjpmdW5jdGlvbihlKXt0LmlzU3VibWl0QnV0dG9uTG9jaz1lfSwidXBkYXRlOmlzLXN1Ym1pdC1idXR0b24tbG9jayI6ZnVuY3Rpb24oZSl7dC5pc1N1Ym1pdEJ1dHRvbkxvY2s9ZX0sb25Gb3JtU3VibWl0OnQuc3VibWl0Rm9ybX19KSxlKCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6InNsaWRlLWZhZGUifX0sW3Quc3VibWlzc2lvbkVycm9yP2UoInRhd2stYWxlcnQiLHtzdGF0aWNDbGFzczoidGF3ay1mb3JtLWVycm9yLWFsZXJ0IixzdGF0aWNTdHlsZTp7d2lkdGg6IjEwMCUifSxhdHRyczp7c3RhdHVzOiJkYW5nZXIiLGljb246ImVycm9yIix0aXRsZTp0LiRpMThuKCJmb3JtIiwiZXJyb3JTYXZpbmciKSxkZXNjcmlwdGlvbjoiIixpc0Rpc21pc3NhYmxlOiEwLGlzQXV0b0Rpc21pc3NhYmxlOiEwfX0pOnQuX2UoKV0sMSldLDEpOnQuX2UoKV0sMik6dC5fZSgpfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHM7ZnVuY3Rpb24gVih0KXtyZXR1cm4oVj0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIEQodCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIEEodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGE9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/RChPYmplY3QoYSksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe1IodCxlLGFbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoYSkpOkQoT2JqZWN0KGEpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYSxlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gUih0LGUsYSl7cmV0dXJuKGU9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9Vih0KXx8IXQpcmV0dXJuIHQ7dmFyIGE9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWEpe3ZhciBpPWEuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPVYoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09VihlKT9lOmUrIiJ9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6YSxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09YSx0fXZhciBJPXtuYW1lOiJIb21lQm9keSIsbWl4aW5zOlthKCJlNDljIikuYV0scHJvcHM6e3N0YXRlOnt0eXBlOlN0cmluZyxkZWZhdWx0OiJvbmxpbmUifSxvdmVyd3JpdGVTdWJtaXQ6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfSxpc1N1Ym1pdHRpbmc6e3R5cGU6Qm9vbGVhbixkZWZhdWx0OiExfX0sY29tcG9uZW50czp7VGF3a0NhcmQ6cy5UYXdrQ2FyZCxUYXdrSWNvbjpzLlRhd2tJY29uLFRhd2tCdXR0b246cy5UYXdrQnV0dG9uLENvbnRlbnRDYXJkOkwsQ29udmVyc2F0aW9uczpmdW5jdGlvbigpe3JldHVybiBhLmUoImNodW5rLTE4ZjIyODc4IikudGhlbihhLmJpbmQobnVsbCwiMzBiZSIpKX0sUmVzdGFydENoYXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDIwODQ4ZCIpLnRoZW4oYS5iaW5kKG51bGwsImEzYWYiKSl9fSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue3N1Ym1pc3Npb25FcnJvcjohMSxzdWJtaXNzaW9uU3VjY2VzczohMSxoYXNDb252ZXJzYXRpb25DYXJkOiExLHN1Ym1pdHRpbmdWYWx1ZTohMSxpc1N1Ym1pdEJ1dHRvbkxvY2s6ITF9fSxjb21wdXRlZDpBKEEoe30sT2JqZWN0KGkuYykoe3N0YXRlczoid2lkZ2V0L3N0YXRlcyIsaGFzTGl2ZUNoYXQ6IndpZGdldC9oYXNMaXZlQ2hhdCIsaGFzQ2hhdEVuZGVkOiJjaGF0L2hhc0NoYXRFbmRlZCIsY2hhdEVuZFZlcnNpb246ImNoYXQvY2hhdEVuZFZlcnNpb24iLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyIsa2JJc0xvYWRpbmc6Imtub3dsZWRnZUJhc2UvaXNMb2FkaW5nIixrYlNlbGVjdGVkOiJrbm93bGVkZ2VCYXNlL3NlbGVjdGVkIixoYXNDaGF0U3RhcnRlZDoiY2hhdC9oYXNDaGF0U3RhcnRlZCJ9KSkse30se2JvZHk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zdGF0ZSYmdGhpcy5zdGF0ZXNbdGhpcy5zdGF0ZV0/dGhpcy5zdGF0ZXNbdGhpcy5zdGF0ZV0uYm9keTpbXX0sbm9QcmVjaGF0Rm9ybTpmdW5jdGlvbigpe3ZhciB0PSEwO2lmKCJwcmVjaGF0Ij09PXRoaXMuc3RhdGUpe2Zvcih2YXIgZT0wO2U8dGhpcy5ib2R5Lmxlbmd0aDtlKyspaWYoImZvcm0iPT09dGhpcy5ib2R5W2VdLnR5cGUpe3Q9ITE7YnJlYWt9fWVsc2UgdD0hMTtyZXR1cm4gdH0saXNIaXN0b3J5Q2FyZEVuYWJsZWQ6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9ITEsZT0wO2U8dGhpcy5ib2R5Lmxlbmd0aDtlKyspe2lmKCJwcmV2aW91cy1jb252ZXJzYXRpb25zIj09PXRoaXMuYm9keVtlXS50eXBlKXt0PSEwO2JyZWFrfX1yZXR1cm4gdH0saGFzQ2hhdENhcmRFbmFibGVkOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PSExLGU9MDtlPHRoaXMuYm9keS5sZW5ndGg7ZSsrKXtpZigiY2hhdCI9PT10aGlzLmJvZHlbZV0udHlwZSl7dD0hMDticmVha319cmV0dXJuIHR9fSksbWV0aG9kczpBKEEoe30sT2JqZWN0KGkuYikoe3JvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIixzaG93T3ZlcmxheToib3ZlcmxheS9zaG93T3ZlcmxheSIsbG9hZEhpc3Rvcnk6Imhpc3RvcnkvbG9hZCIsdXBkYXRlU2hvd0NoYXQ6ImNoYXQvdXBkYXRlU2hvd0NoYXQifSkpLHt9LHtzdWJtaXRGb3JtOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7aWYoIXQuaGFzRXJyb3Ipe2lmKHRoaXMuc3VibWl0dGluZ1ZhbHVlPSEwLHRoaXMuJGVtaXQoInVwZGF0ZTppc1N1Ym1pdHRpbmciLHRoaXMuc3VibWl0dGluZ1ZhbHVlKSx0aGlzLnN1Ym1pc3Npb25FcnJvcj0hMSx0aGlzLnN1Ym1pc3Npb25TdWNjZXNzPSExLHRoaXMuJHN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRJc05vdFZhbGlkRW1haWwiLG51bGwpLHRoaXMub3ZlcndyaXRlU3VibWl0KXJldHVybiB0aGlzLiRlbWl0KCJzdWJtaXRGb3JtIix0KTt0LmZvcm1EYXRhLnN1Ym1pdHRlZEZyb209d2luZG93LmxvY2F0aW9uLmhyZWYsdC5mb3JtRGF0YS5jdXN0b21BdHRyaWJ1dGVzJiYodC5mb3JtRGF0YS53aWRnZXRJZD10aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaWQiXSksdGhpcy4kc29ja2V0LnB1Ymxpc2goIm5vdGlmeU9mZmxpbmVNZXNzYWdlIix0LmZvcm1EYXRhLChmdW5jdGlvbihhKXtpZihlLnN1Ym1pdHRpbmdWYWx1ZT0hMSxlLiRlbWl0KCJ1cGRhdGU6aXNTdWJtaXR0aW5nIixlLnN1Ym1pdHRpbmdWYWx1ZSksZS5pc1N1Ym1pdEJ1dHRvbkxvY2s9ITAsZS4kZW1pdCgidXBkYXRlOmlzU3VibWl0QnV0dG9uTG9jayIsZS5pc1N1Ym1pdEJ1dHRvbkxvY2spLGEpcmV0dXJuIkludmFsaWRBcmd1bWVudCI9PT1hLmNvZGUmJiJlbWFpbCI9PT1hLm1lc3NhZ2U/dm9pZCBlLiRzdG9yZS5jb21taXQoInNlc3Npb24vc2V0SXNOb3RWYWxpZEVtYWlsIiwiZW1haWwiKTooZS5pc1N1Ym1pdEJ1dHRvbkxvY2s9ITEsZS4kZW1pdCgidXBkYXRlOmlzU3VibWl0QnV0dG9uTG9jayIsZS5pc1N1Ym1pdEJ1dHRvbkxvY2spLHZvaWQoZS5zdWJtaXNzaW9uRXJyb3I9ITApKTtzZXRUaW1lb3V0KChmdW5jdGlvbigpe2UuaXNTdWJtaXRCdXR0b25Mb2NrPSExLGUuJGVtaXQoInVwZGF0ZTppc1N1Ym1pdEJ1dHRvbkxvY2siLGUuaXNTdWJtaXRCdXR0b25Mb2NrKX0pLDNlNCksZS5yb3V0ZXJQdXNoKCJvZmZsaW5lLXN1Y2Nlc3MiKSxlLnNob3dPdmVybGF5KCEwKSxlLiRzdG9yZS5kaXNwYXRjaCgidmlzaXRvci91cGRhdGVWaXNpdG9ySW5mb3JtYXRpb24iLHtuOnQuZm9ybURhdGEubmFtZSxlOnQuZm9ybURhdGEuZW1haWx9KSxlLiRUYXdrSlNBUEkudHJpZ2dlckFwaUhhbmRsZXJzKCJvbk9mZmxpbmVTdWJtaXQiLHQuZm9ybURhdGEpfSkpfX19KX0sVz1PYmplY3QoYy5hKShJLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10Ll9zZWxmLl9jO3JldHVybiBlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mb3JtLXdpZHRoLTEwMCB0YXdrLWZsZXggdGF3ay1mbGV4LWNvbHVtbiJ9LFt0Lmhhc0NoYXRFbmRlZCYmInByZWNoYXQiIT09dC5zdGF0ZSYmIm9mZmxpbmUiIT09dC5zdGF0ZSYmdC5jaGF0RW5kVmVyc2lvbj9lKCJkaXYiLHtzdGF0aWNDbGFzczoiY2FyZC1jb250YWluZXIifSxbZSgicmVzdGFydC1jaGF0IildLDEpOnQuX2UoKSx0Lmhhc0NoYXRDYXJkRW5hYmxlZCYmdC5oYXNDaGF0U3RhcnRlZCYmdC5oYXNMaXZlQ2hhdCYmIm9mZmxpbmUiIT09dC5wYWdlU3RhdHVzJiYib25saW5lIj09PXQuc3RhdGV8fCJhd2F5Ij09PXQuc3RhdGU/ZSgiZGl2Iix7c3RhdGljQ2xhc3M6ImNhcmQtY29udGFpbmVyIHRhd2stZmxleC1maXJzdCJ9LFtlKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ob21lLWtiLWNhcmQiLGF0dHJzOntjb2xvcjoiaW52ZXJzZSJ9fSxbZSgiY29udmVyc2F0aW9ucyIse2F0dHJzOntzdGF0ZTp0LnN0YXRlfX0pXSwxKV0sMSk6dC5fZSgpLHQuX2wodC5ib2R5LChmdW5jdGlvbihhLGkpe3JldHVybiBlKCJjb250ZW50LWNhcmQiLHtrZXk6aSxhdHRyczp7Y2FyZDphLGlzU3VibWl0dGluZzp0LnN1Ym1pdHRpbmdWYWx1ZSxpc1N1Ym1pdEJ1dHRvbkxvY2s6dC5pc1N1Ym1pdEJ1dHRvbkxvY2ssc3VibWlzc2lvbkVycm9yOnQuc3VibWlzc2lvbkVycm9yLGJvZHk6dC5ib2R5LHN0YXRlOnQuc3RhdGUsaGFzQ29udmVyc2F0aW9uQ2FyZDp0Lmhhc0NvbnZlcnNhdGlvbkNhcmR9LG9uOnsidXBkYXRlOmlzU3VibWl0dGluZyI6ZnVuY3Rpb24oZSl7dC5zdWJtaXR0aW5nVmFsdWU9ZX0sInVwZGF0ZTppcy1zdWJtaXR0aW5nIjpmdW5jdGlvbihlKXt0LnN1Ym1pdHRpbmdWYWx1ZT1lfSwidXBkYXRlOmlzU3VibWl0QnV0dG9uTG9jayI6ZnVuY3Rpb24oZSl7dC5pc1N1Ym1pdEJ1dHRvbkxvY2s9ZX0sInVwZGF0ZTppcy1zdWJtaXQtYnV0dG9uLWxvY2siOmZ1bmN0aW9uKGUpe3QuaXNTdWJtaXRCdXR0b25Mb2NrPWV9LCJ1cGRhdGU6aGFzQ29udmVyc2F0aW9uQ2FyZCI6ZnVuY3Rpb24oZSl7dC5oYXNDb252ZXJzYXRpb25DYXJkPWV9LCJ1cGRhdGU6aGFzLWNvbnZlcnNhdGlvbi1jYXJkIjpmdW5jdGlvbihlKXt0Lmhhc0NvbnZlcnNhdGlvbkNhcmQ9ZX0sc3VibWl0Rm9ybTp0LnN1Ym1pdEZvcm0sY29udGVudENhcmRMb2FkZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuJGVtaXQoImhvbWVMb2FkZWQiKX19fSl9KSksdC5ub1ByZWNoYXRGb3JtP2UoImRpdiIse3N0YXRpY0NsYXNzOiJjYXJkLWNvbnRhaW5lciJ9LFtlKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ib3gtc2hhZG93LXhzbWFsbCIsYXR0cnM6e2NvbG9yOiJpbnZlcnNlIixzaXplOiJzbWFsbCJ9fSxbZSgidGF3ay1idXR0b24iLHtzdGF0aWNDbGFzczoidGF3ay1mb3JtLXdpZHRoLTEwMCB0YXdrLWJ1dHRvbi1ob3ZlciB0YXdrLWN1c3RvbS1jb2xvciB0YXdrLWN1c3RvbS1ib3JkZXItY29sb3IiLGF0dHJzOntsYWJlbDp0LiRpMThuKCJmb3JtIiwic3RhcnRfY2hhdF9idXR0b24iKX0sb246e2NsaWNrOmZ1bmN0aW9uKGUpe3JldHVybiB0LnN1Ym1pdEZvcm0oe2Zvcm1EYXRhOnt9fSl9fX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJzZW5kIn19KSx0Ll92KCIgIit0Ll9zKHQuJGkxOG4oImZvcm0iLCJzdGFydF9jaGF0X2J1dHRvbiIpKSsiICIpXSwxKV0sMSldLDEpOnQuX2UoKV0sMil9KSxbXSwhMSxudWxsLG51bGwsbnVsbCkuZXhwb3J0cyxIPWEoIjlmM2UiKSxOPWEoImRiZDEiKTtmdW5jdGlvbiBGKHQpe3JldHVybihGPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24geih0LGUpe3ZhciBhPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksYS5wdXNoLmFwcGx5KGEsaSl9cmV0dXJuIGF9ZnVuY3Rpb24gVSh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgYT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj96KE9iamVjdChhKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cSh0LGUsYVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhhKSk6eihPYmplY3QoYSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBxKHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1GKHQpfHwhdClyZXR1cm4gdDt2YXIgYT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09YSl7dmFyIGk9YS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9RihpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1GKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIFo9e25hbWU6IkhvbWUiLGNvbXBvbmVudHM6e0Jhc2VGcmFtZTpILmEsQmFzZUJvZHk6Ti5hLEhvbWVIZWFkZXI6JCxIb21lQm9keTpXLEdlbmVyYWxEYXRhUHJvdGVjdGlvblJlZ3VsYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBjN2FkMyIpLnRoZW4oYS5iaW5kKG51bGwsIjUyNDQiKSl9LFVzVHdvUGFydHk6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDIwOTNhMiIpLnRoZW4oYS5iaW5kKG51bGwsImE3YzkiKSl9fSxwcm9wczp7aXNWaXNpYmxlOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMH19LGNvbXB1dGVkOlUoVSh7fSxPYmplY3QoaS5jKSh7c3RhdGVzOiJ3aWRnZXQvc3RhdGVzIixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLGhhc0NoYXRTdGFydGVkOiJjaGF0L2hhc0NoYXRTdGFydGVkIixwcmVjaGF0Rm9ybVN1Ym1pdHRlZDoic2Vzc2lvbi9wcmVjaGF0Rm9ybVN1Ym1pdHRlZCIsbmVlZENvbnNlbnQ6InNlc3Npb24vbmVlZENvbnNlbnQiLGNvdW50cnlDb2RlOiJzZXNzaW9uL2NvdW50cnlDb2RlIix1c1ByaXZhY3lTaGllbGQ6IndpZGdldC91c1ByaXZhY3lTaGllbGQiLHVzUHJpdmFjeVNoaWVsZEVuYWJsZWQ6IndpZGdldC91c1ByaXZhY3lTaGllbGRFbmFibGVkIixrYlNlbGVjdGVkOiJrbm93bGVkZ2VCYXNlL3NlbGVjdGVkIn0pKSx7fSx7Y29uc2VudENvbXBvbmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm5lZWRDb25zZW50PyJVUyI9PT10aGlzLmNvdW50cnlDb2RlJiZ0aGlzLnVzUHJpdmFjeVNoaWVsZD90aGlzLnVzUHJpdmFjeVNoaWVsZEVuYWJsZWQ/InVzLXR3by1wYXJ0eSI6bnVsbDoiZ2VuZXJhbC1kYXRhLXByb3RlY3Rpb24tcmVndWxhdGlvbiI6bnVsbH19KSx3YXRjaDp7cGFnZVN0YXR1czpmdW5jdGlvbih0KXt0aGlzLmhvbWVMb2FkZWQoKSwib2ZmbGluZSI9PT10P3RoaXMuJGV2ZW50QnVzLiRlbWl0KCJmb3JtT3BlbmVkIik6dGhpcy4kZXZlbnRCdXMuJGVtaXQoImZvcm1DbG9zZWQiKSx0aGlzLiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS5zY3JvbGxUb3A9MH0saXNWaXNpYmxlOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuJHJlZnNbInRhd2stbWFpbi1wYW5lbCJdLnF1ZXJ5U2VsZWN0b3JBbGwoIi50YXdrLXZpZGVvLWVsIiksZT0wO2U8dC5sZW5ndGg7ZSsrKXt2YXIgYT10W2VdOyJhYm91dDpibGFuayIhPT1hLnNyYz9hLnNyYz0iYWJvdXQ6YmxhbmsiOmEuZ2V0QXR0cmlidXRlKCJkYXRhLXNyYyIpJiYoYS5zcmM9YS5nZXRBdHRyaWJ1dGUoImRhdGEtc3JjIikpfX19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aGVhZGVyQ2xhc3M6IiJ9fSxtZXRob2RzOlUoVSh7fSxPYmplY3QoaS5iKSh7cm91dGVyUHVzaDoicm91dGVyL3JvdXRlclB1c2gifSkpLHt9LHtob21lTG9hZGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdJiZ0LiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS4kc2Nyb2xsYmFyJiZ0LiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS4kc2Nyb2xsYmFyLnVwZGF0ZSgpfSksNTAwKX0saGFuZGxlU2Nyb2xsOmZ1bmN0aW9uKCl7dGhpcy4kcmVmcyYmdGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0mJnRoaXMuJGV2ZW50QnVzLiRlbWl0KCJjaGF0UGFuZWxTY3JvbGwiLHtzY3JvbGxUb3A6dGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0uc2Nyb2xsVG9wfSl9fSksbW91bnRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7Im9mZmxpbmUiPT09dGhpcy5wYWdlU3RhdHVzJiZ0aGlzLiRldmVudEJ1cy4kZW1pdCgiZm9ybU9wZW5lZCIpLHRoaXMuJGV2ZW50QnVzLiRvbigic2Nyb2xsVG9Ub3AiLChmdW5jdGlvbigpe3QuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXIudXBkYXRlKCksdC4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0uc2Nyb2xsVG9wPTB9KSl9LGRlc3Ryb3llZDpmdW5jdGlvbigpe3RoaXMuJGV2ZW50QnVzLiRlbWl0KCJmb3JtQ2xvc2VkIil9fSxHPU9iamVjdChjLmEpKFosKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImJhc2UtZnJhbWUiLHtzdGF0aWNDbGFzczoidGF3ay1ob21lLXZpZXcgdGF3ay1jdXN0b20tZmxleC0xIixhdHRyczp7aGFzQmFja2dyb3VuZDohMH0sb246eyImc2Nyb2xsIjpmdW5jdGlvbihlKXtyZXR1cm4gdC5oYW5kbGVTY3JvbGwuYXBwbHkobnVsbCxhcmd1bWVudHMpfX19LFtlKCJiYXNlLWJvZHkiLHtyZWY6InRhd2staG9tZS1ib2R5In0sW3QuY29uc2VudENvbXBvbmVudD9lKHQuY29uc2VudENvbXBvbmVudCx7dGFnOiJjb21wb25lbnQifSk6W2UoImhvbWUtaGVhZGVyIix7cmVmOiJ0YXdrLWhvbWUtaGVhZGVyIixhdHRyczp7c3RhdGU6dC5wYWdlU3RhdHVzfX0pLGUoImhvbWUtYm9keSIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi10b3AiLGF0dHJzOntzdGF0ZTp0LnBhZ2VTdGF0dXN9LG9uOntob21lTG9hZGVkOnQuaG9tZUxvYWRlZH19KV1dLDIpXSwxKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLEo9e25hbWU6ImJhc2UtaGVhZGVyIn07ZnVuY3Rpb24gSyh0KXtyZXR1cm4oSz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfWZ1bmN0aW9uIFgodCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIFEodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGE9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/WChPYmplY3QoYSksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe1kodCxlLGFbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoYSkpOlgoT2JqZWN0KGEpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYSxlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gWSh0LGUsYSl7cmV0dXJuKGU9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCxlKXtpZigib2JqZWN0IiE9Syh0KXx8IXQpcmV0dXJuIHQ7dmFyIGE9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWEpe3ZhciBpPWEuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPUsoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09SyhlKT9lOmUrIiJ9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6YSxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09YSx0fXZhciB0dD17bmFtZToiY2hhdC1oZWFkZXIiLGNvbXBvbmVudHM6e0Jhc2VIZWFkZXI6T2JqZWN0KGMuYSkoSiwoZnVuY3Rpb24odCxlKXtyZXR1cm4gdCgiZGl2IixlLl9nKGUuX2Ioe2NsYXNzOlsidGF3ay1jYXJkIHRhd2stY2FyZC1wcmltYXJ5IHRhd2stY2FyZC1zbWFsbCB0YXdrLWhlYWRlci1jb250YWluZXIgdGF3ay1mbGV4LW5vbmUgdGF3ay1oZWFkZXIgdGF3ay1jdXN0b20tY29sb3IiLGUuZGF0YS5jbGFzcyxlLmRhdGEuc3RhdGljQ2xhc3NdLHN0eWxlOltlLmRhdGEuc3RhdGljU3R5bGUsZS5kYXRhLnN0eWxlXX0sImRpdiIsZS5kYXRhLmF0dHJzLCExKSxlLmxpc3RlbmVycyksW3QoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtY2VudGVyIn0sW2UuX3QoImRlZmF1bHQiKV0sMildKX0pLFtdLCEwLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLENoYXRBZ2VudHM6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBhNGVlMiIpLnRoZW4oYS5iaW5kKG51bGwsIjA5MTQiKSl9fSxtb3VudGVkOmZ1bmN0aW9uKCl7dGhpcy5hZGRXYWl0VGltZSgpfSxjb21wdXRlZDpRKFEoe30sT2JqZWN0KGkuYykoe3N0YXRlczoid2lkZ2V0L3N0YXRlcyIscGFnZVN0YXR1czoic2Vzc2lvbi9wYWdlU3RhdHVzIixhZ2VudHM6ImNoYXQvYWdlbnRzIixhZ2VudHNDb3VudDoiY2hhdC9hZ2VudHNDb3VudCIsYWN0aXZlUHJvZmlsZXM6ImNoYXQvYWN0aXZlUHJvZmlsZXMiLGhhc0NoYXRTdGFydGVkOiJjaGF0L2hhc0NoYXRTdGFydGVkIixhZ2VudEhhc01lc3NhZ2VkOiJjaGF0L2FnZW50SGFzTWVzc2FnZWQiLHNob3dFc3RpbWF0ZWRXYWl0VGltZToid2lkZ2V0L3Nob3dFc3RpbWF0ZWRXYWl0VGltZSIsd2FpdFRpbWU6InNlc3Npb24vd2FpdFRpbWUifSkpLHt9LHtoZWFkZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zdGF0ZXNbdGhpcy5wYWdlU3RhdHVzXT90aGlzLnN0YXRlc1t0aGlzLnBhZ2VTdGF0dXNdLmhlYWRlcjpudWxsfSxsb2dvVXJsOmZ1bmN0aW9uKCl7cmV0dXJuImh0dHBzOi8vdGF3ay5saW5rIn0saGFzSG9tZVZpZXc6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnN0YXRlc1t0aGlzLnBhZ2VTdGF0dXNdO3JldHVybiF0fHwhdC5ib2R5fHwxIT09dC5ib2R5Lmxlbmd0aHx8ImNoYXQiIT09dC5ib2R5WzBdLnR5cGV9fSksbWV0aG9kczpRKFEoe30sT2JqZWN0KGkuYikoe3JvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIixhZGRXYWl0VGltZToic2Vzc2lvbi9hZGRXYWl0VGltZSIsc2hvd092ZXJsYXk6Im92ZXJsYXkvc2hvd092ZXJsYXkifSkpLHt9LHtjaGFuZ2VWaWV3OmZ1bmN0aW9uKCl7dGhpcy5yb3V0ZXJQdXNoKCJhZ2VudHMiKSx0aGlzLnNob3dPdmVybGF5KCEwKX19KX0sZXQ9T2JqZWN0KGMuYSkodHQsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImRpdiIsWzA9PT10LmFjdGl2ZVByb2ZpbGVzLmxlbmd0aD9bdC5oYXNDaGF0U3RhcnRlZCYmIXQuYWdlbnRIYXNNZXNzYWdlZCYmdC5zaG93RXN0aW1hdGVkV2FpdFRpbWUmJnQud2FpdFRpbWU/ZSgiYmFzZS1oZWFkZXIiLFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC1ib3R0b20iLGRvbVByb3BzOntpbm5lckhUTUw6dC5fcyh0LiRpMThuKCJjaGF0IiwibWVzc2FnZV9xdWV1ZWRfdGV4dF9vdGhlciIse2NvdW50Ok1hdGguY2VpbCh0LndhaXRUaW1lLzZlNCksc3Ryb25nU3RhcnQ6IjxiPiIsc3Ryb25nRW5kOiI8L2I+In0pKX19KV0pOnQuX2UoKV06dC5fZSgpLHQuYWN0aXZlUHJvZmlsZXMubGVuZ3RoPjE/ZSgiYmFzZS1oZWFkZXIiLHtyZWY6InRhd2stYmFzZS1oZWFkZXIifSxbZSgiY2hhdC1hZ2VudHMiLHthdHRyczp7cHJvZmlsZXM6dC5hY3RpdmVQcm9maWxlcyxyb2xlOiJidXR0b24iLHRhYmluZGV4OiIwIn0sbmF0aXZlT246e2NsaWNrOmZ1bmN0aW9uKGUpe3JldHVybiB0LmNoYW5nZVZpZXcuYXBwbHkobnVsbCxhcmd1bWVudHMpfX19KV0sMSk6dC5fZSgpXSwyKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKS5leHBvcnRzLGF0PWEoIjM1MTkiKSxpdD1hKCIzZjA5Iiksc3Q9e25hbWU6InByb2dyZXNzLWJhciIscHJvcHM6e2hhbmRsZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiIn0sZmlsZU5hbWU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LGZpbGVTaXplOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIifSxwZXJjZW50YWdlOnt0eXBlOk51bWJlcixkZWZhdWx0OjB9fSxjb21wdXRlZDp7cHJvZ3Jlc3NXaWR0aDpmdW5jdGlvbigpe3JldHVybiJ3aWR0aCA6ICIuY29uY2F0KHRoaXMucGVyY2VudGFnZSwiJSIpfX0sbWV0aG9kczp7YmVhdXRpZnlGaWxlbmFtZTpmdW5jdGlvbih0LGUpe3ZhciBhPXQubGFzdEluZGV4T2YoIi4iKSxpPXQuc3Vic3RyaW5nKDAsYSkscz0iLiIuY29uY2F0KHQuc3Vic3RyaW5nKGErMSkpO3JldHVybiBpLmxlbmd0aD43JiYocz1pLnN1YnN0cmluZyhpLmxlbmd0aC0zKStzLGk9aS5zdWJzdHJpbmcoMCxpLmxlbmd0aC0zKSksJzxzcGFuIGNsYXNzPSJ0YXdrLXRleHQtdHJ1bmNhdGUiPicuY29uY2F0KGksJzwvc3Bhbj48c3BhbiBjbGFzcz0idGF3ay1mbGV4LW5vbmUiPicpLmNvbmNhdChzLCc8L3NwYW4+PHNwYW4gY2xhc3M9InRhd2stZmxleC1ub25lIj4mbmJzcDsoJykuY29uY2F0KGUsIik8L3NwYW4+Iil9fX0sbnQ9T2JqZWN0KGMuYSkoc3QsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImRpdiIse3N0YXRpY0NsYXNzOiJmaWxlLXVwbG9hZC1wcm9ncmVzcyJ9LFtlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUiLGRvbVByb3BzOntpbm5lckhUTUw6dC5fcyh0LmJlYXV0aWZ5RmlsZW5hbWUodC5maWxlTmFtZSx0LmZpbGVTaXplKSl9fSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InByb2dyZXNzIGFjdGl2ZSB0YXdrLW1hcmdpbi1zbWFsbC10b3AifSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InByb2dyZXNzLWJhciIsc3R5bGU6dC5wcm9ncmVzc1dpZHRoLGF0dHJzOntyb2xlOiJwcm9ncmVzc2JhciJ9fSldKV0pfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHM7ZnVuY3Rpb24gcnQodCl7cmV0dXJuKHJ0PSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gb3QodCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIGN0KHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP290KE9iamVjdChhKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bHQodCxlLGFbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoYSkpOm90KE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIGx0KHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1ydCh0KXx8IXQpcmV0dXJuIHQ7dmFyIGE9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWEpe3ZhciBpPWEuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXJ0KGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXJ0KGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIHV0PXtuYW1lOiJjaGF0LW1haW4iLG1peGluczpbaXQuYV0sY29tcG9uZW50czp7QmFzZUZyYW1lOkguYSxCYXNlQm9keTpOLmEsQ2hhdEhlYWRlcjpldCxDaGF0Qm9keTphdC5hLFRhd2tJY29uOnMuVGF3a0ljb24sVGF3a0J1dHRvbjpzLlRhd2tCdXR0b24sVGF3a0F2YXRhcjpzLlRhd2tBdmF0YXIsUHJvZ3Jlc3NCYXI6bnQsVGF3a0FsZXJ0OnMuVGF3a0FsZXJ0fSxjb21wdXRlZDpjdCh7fSxPYmplY3QoaS5jKSh7Y2hhdFZlcnNpb246ImNoYXQvY2hhdFZlcnNpb24iLGluY29taW5nTWVzc2FnZToiY2hhdC9pbmNvbWluZ01lc3NhZ2UiLGFnZW50UHJvZmlsZToiY2hhdC9hZ2VudFByb2ZpbGUiLGNoYXRNZXNzYWdlczoiY2hhdC9jaGF0TWVzc2FnZXMiLHVucmVhZE1lc3NhZ2VDb3VudDoiY2hhdC91bnJlYWRNZXNzYWdlQ291bnQiLGxhc3RNZXNzYWdlVGltZXN0YW1wOiJzZXNzaW9uL2xhc3RNZXNzYWdlVGltZXN0YW1wIixzaG93QWdlbnRUeXBpbmc6IndpZGdldC9zaG93QWdlbnRUeXBpbmciLGhhc0NoYXRFbmRlZDoiY2hhdC9oYXNDaGF0RW5kZWQiLHVwbG9hZEZpbGVzOiJjaGF0L3VwbG9hZEZpbGVzIixsYXN0U2Nyb2xsUG9zaXRvbjoiY2hhdC9sYXN0U2Nyb2xsUG9zaXRvbiIsb3V0Z29pbmdNZXNzYWdlOiJjaGF0L291dGdvaW5nTWVzc2FnZSIsaGlzdG9yeVByb2Nlc3NlZDoiY2hhdC9oaXN0b3J5UHJvY2Vzc2VkIixtZXNzYWdlQmxvY2tzOiJjaGF0L21lc3NhZ2VCbG9ja3MiLGVtb2ppRW5hYmxlZDoid2lkZ2V0L2Vtb2ppRW5hYmxlZCIsY3VycmVudFJvdXRlOiJyb3V0ZXIvY3VycmVudCIsY2hhdFdpbmRvd1N0YXRlOiJzZXNzaW9uL2NoYXRXaW5kb3dTdGF0ZSIsaXNGb2N1czoid2lkZ2V0L2lzRm9jdXMifSkpLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57YmFyTWVzc2FnZUlkOm51bGwsaXNMb2FkaW5nOiExLGJhck1lc3NhZ2VSZXJlbmNlOm51bGwsdW5zZWVuTWVzc2FnZXM6W10sc2hvd05vdGlmaWNhdGlvbjohMSxhZ2VudFR5cGluZzp7fSxjbGVhckJhclRpbWVvdXQ6MCx0b29CaWdGaWxlTGlzdDpudWxsLHNob3dMYXRlc3Q6ITF9fSx3YXRjaDp7aW5jb21pbmdNZXNzYWdlOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuaXNTY3JvbGxCYXJCb3R0b20oKTt0aGlzLmRpc3BsYXlNZXNzYWdlcyh7bWVzc2FnZTp0LGlzSW5jb21pbmc6ITB9KSx0aGlzLnVwZGF0ZVNjcm9sbGJhcigpLGUmJnRoaXMuc2Nyb2xsVG9Cb3R0b20oKX0sdW5yZWFkTWVzc2FnZUNvdW50OmZ1bmN0aW9uKHQpezA9PT10JiZ0aGlzLmNsZWFyQmFyTWVzc2FnZUlkKCl9LGhhc0NoYXRFbmRlZDpmdW5jdGlvbih0KXt0JiZ0aGlzLmNsZWFyRGF0YSgpfSx1cGxvYWRGaWxlczpmdW5jdGlvbigpe3RoaXMuc2Nyb2xsVG9Cb3R0b20oKX0sb3V0Z29pbmdNZXNzYWdlOmZ1bmN0aW9uKHQpe3RoaXMuaXNMb2FkaW5nfHx0JiYodGhpcy5kaXNwbGF5TWVzc2FnZXMoe21lc3NhZ2U6dCxpc0luY29taW5nOiEwfSksdGhpcy4kc3RvcmUuY29tbWl0KCJjaGF0L3NldE91dGdvaW5nTWVzc2FnZSIsbnVsbCkpfSxoaXN0b3J5UHJvY2Vzc2VkOmZ1bmN0aW9uKHQpe3QmJnRoaXMucHJvY2Vzc0NoYXRNZXNzYWdlcygpfSxjdXJyZW50Um91dGU6ZnVuY3Rpb24odCxlKXsiY2hhdCI9PT10JiYodGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0mJnRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXImJnRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXIudXBkYXRlKCksdGhpcy5jaGVja1NlZW5NZXNzYWdlVmlld3BvcnQoKSx0aGlzLmNoZWNrQmFyUG9zaXRpb24oKSksImNoYXQiPT09ZSYmdGhpcy5zYXZlU2Nyb2xsUG9zaXRpb24oKX0sY2hhdFdpbmRvd1N0YXRlOmZ1bmN0aW9uKHQpeyJtYXgiPT09dCYmImNoYXQiPT09dGhpcy5jdXJyZW50Um91dGUmJih0aGlzLnRvZ2dsZUZvY3VzKCEwKSx0aGlzLmNoZWNrU2Vlbk1lc3NhZ2VWaWV3cG9ydCgpKX0saXNGb2N1czpmdW5jdGlvbih0KXt0JiYiY2hhdCI9PT10aGlzLmN1cnJlbnRSb3V0ZSYmdGhpcy5jaGVja1NlZW5NZXNzYWdlVmlld3BvcnQoKX19LGNyZWF0ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuJGV2ZW50QnVzLiRvbigidG9vQmlnRmlsZUxpc3QiLChmdW5jdGlvbihlKXt0LnRvb0JpZ0ZpbGVMaXN0PWUuam9pbigiLCAiKX0pKX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5wcm9jZXNzQ2hhdE1lc3NhZ2VzKCksdGhpcy5zaG93QWdlbnRUeXBpbmcmJih0aGlzLiRldmVudEJ1cy4kb24oImFnZW50SXNUeXBpbmciLChmdW5jdGlvbihlKXt2YXIgYT10LmFnZW50UHJvZmlsZShlLnJzYyksaT10LmlzU2Nyb2xsQmFyQm90dG9tKCk7YSYmKHQudXBkYXRlQWdlbnRUeXBpbmcoZSxhKSx0LnVwZGF0ZVNjcm9sbGJhcigpKSxpJiZ0LnNjcm9sbFRvQm90dG9tKCl9KSksdGhpcy4kZXZlbnRCdXMuJG9uKCJhZ2VudFN0b3BlZFR5cGluZyIsKGZ1bmN0aW9uKGUpe3QucmVtb3ZlQWdlbnRJc1R5cGluZyhlLnJzYyksdC51cGRhdGVTY3JvbGxiYXIoKX0pKSksdGhpcy4kZXZlbnRCdXMuJG9uKCJ1cGRhdGVTY3JvbGxQb3NpdGlvbiIsKGZ1bmN0aW9uKCl7dC51cGRhdGVTY3JvbGxiYXIoKX0pKSx0aGlzLiRldmVudEJ1cy4kb24oImNhbGxEYXRhVXBkYXRlZCIsKGZ1bmN0aW9uKGUpe2Zvcih2YXIgYT10LmlzU2Nyb2xsQmFyQm90dG9tKCksaT0wO2k8dC5tZXNzYWdlQmxvY2tzLmxlbmd0aDtpKyspe3ZhciBzPXQubWVzc2FnZUJsb2Nrc1tpXTtpZigiY2FsbCI9PT1zLm1lc3NhZ2VUeXBlJiZzLm93bmVySWQ9PT1lLmNhbGxJZCl7cy5jYWxsRGF0YT1lO2JyZWFrfX1hJiZ0LnNjcm9sbFRvQm90dG9tKCl9KSl9LGJlZm9yZURlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLnNhdmVTY3JvbGxQb3NpdGlvbigpLHRoaXMuY2xlYXJEYXRhKCl9LG1ldGhvZHM6Y3QoY3Qoe30sT2JqZWN0KGkuYikoe2NsZWFyTWVzc2FnZUJsb2NrOiJjaGF0L2NsZWFyTWVzc2FnZUJsb2NrIix0b2dnbGVBZ2VudEF2YXRhclRvb2xiYXI6IndpZGdldC90b2dnbGVBZ2VudEF2YXRhclRvb2xiYXIiLHRvZ2dsZUZvY3VzOiJ3aWRnZXQvdG9nZ2xlRm9jdXMifSkpLHt9LHt1cGRhdGVBZ2VudFR5cGluZzpmdW5jdGlvbih0LGUpe3RoaXMuJHNldCh0aGlzLmFnZW50VHlwaW5nLHQucnNjLGUucHJvZmlsZUltYWdlKX0sc2Nyb2xsVG9Cb3R0b206ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl07ZSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLnNjcm9sbFRvcD10fHxlLnNjcm9sbEhlaWdodH0pLDMwMCl9LGhhbmRsZVNjcm9sbFByb2Nlc3M6ZnVuY3Rpb24oKXt0aGlzLmNoZWNrQmFyUG9zaXRpb24oKSx0aGlzLmNoZWNrU2Vlbk1lc3NhZ2VWaWV3cG9ydCgpLHRoaXMuaGFuZGxlQWdlbnRzQXZhdGFyVG9vbGJhcigpfSxzY3JvbGxUb0VsOmZ1bmN0aW9uKHQpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpmdW5jdGlvbigpe307aWYodCl7dmFyIGE9dGhpcy4kcmVmc1siY2hhdC1ib2R5Il0saT1hP2EuJHJlZnNbdF06bnVsbCxzPXRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdO2kmJmkubGVuZ3RoJiZzPyh2b2lkIDAhPT1pWzBdLm9mZnNldFRvcD9zLnNjcm9sbFRvcD1pWzBdLm9mZnNldFRvcC00MDpzLnNjcm9sbFRvcD1pWzBdLm9mZnNldFRvcCx0aGlzLiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXSYmdGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0uJHNjcm9sbGJhciYmdGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0uJHNjcm9sbGJhci51cGRhdGUoKSxlKCkpOmUoaSl9fSxjbGVhckJhck1lc3NhZ2VJZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7Y2xlYXJUaW1lb3V0KHRoaXMuY2xlYXJCYXJUaW1lb3V0KSx0aGlzLmNsZWFyQmFyVGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuYmFyTWVzc2FnZUlkPW51bGwsdC5iYXJNZXNzYWdlUmVyZW5jZSYmKHQuYmFyTWVzc2FnZVJlcmVuY2Uuc2hvd0Jhcj0hMSksdC5zaG93Tm90aWZpY2F0aW9uPSExLHQuYmFyTWVzc2FnZVJlcmVuY2U9bnVsbH0pLDFlMyl9LGNoZWNrU2Vlbk1lc3NhZ2VWaWV3cG9ydDpmdW5jdGlvbigpe3ZhciB0LGU9LTEsYT10aGlzLiRyZWZzWyJjaGF0LWJvZHkiXTtpZigwIT09dGhpcy51bnNlZW5NZXNzYWdlcy5sZW5ndGgmJmEmJnRoaXMuaXNGb2N1cyl7Zm9yKHZhciBpPTA7aTx0aGlzLnVuc2Vlbk1lc3NhZ2VzLmxlbmd0aDtpKyspe3Q9dGhpcy51bnNlZW5NZXNzYWdlc1tpXTt2YXIgcz1hLiRyZWZzW3QuYmxvY2tJZF07aWYocyYmdGhpcy5jaGF0RWxlbWVudEluVmlldyhzKSYmdC50aW1lU3RhbXA+dGhpcy5sYXN0TWVzc2FnZVRpbWVzdGFtcCl7ZT1pO2JyZWFrfX0tMSE9PWUmJigodD10aGlzLnVuc2Vlbk1lc3NhZ2VzW3RoaXMudW5zZWVuTWVzc2FnZXMubGVuZ3RoLTFdKSYmKHRoaXMudW5zZWVuTWVzc2FnZXM9W10sdGhpcy4kc3RvcmUuZGlzcGF0Y2goInNlc3Npb24vdXBkYXRlVmlzaXRvckNoYXRTZWVuIix0LnRpbWVTdGFtcCkpKX19LGNoYXRFbGVtZW50SW5WaWV3OmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdO3JldHVybiEhZSYmISEodFswXS5vZmZzZXRUb3A+PWUuc2Nyb2xsVG9wJiZ0WzBdLm9mZnNldFRvcDw9ZS5zY3JvbGxUb3ArZS5vZmZzZXRIZWlnaHQmJjAhPT10WzBdLmNsaWVudFdpZHRoJiYwIT09dFswXS5jbGllbnRIZWlnaHQpfSxyZW1vdmVBZ2VudElzVHlwaW5nOmZ1bmN0aW9uKHQpe3RoaXMuJGRlbGV0ZSh0aGlzLmFnZW50VHlwaW5nLHQpfSxjaGVja0JhclBvc2l0aW9uOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRuZXh0VGljaygoZnVuY3Rpb24oKXtpZih0LnNob3dOb3RpZmljYXRpb249ITEsdC5iYXJNZXNzYWdlUmVyZW5jZSYmdC5iYXJNZXNzYWdlSWQpe3ZhciBlPXQuJHJlZnNbdC5iYXJNZXNzYWdlSWRdLGE9dC4kcmVmc1siY2hhdC1ib2R5Il07aWYoYSYmYS4kcmVmc1t0LmJhck1lc3NhZ2VJZF0mJihlPWEuJHJlZnNbdC5iYXJNZXNzYWdlSWRdKSxlKWlmKHQuY2hhdEVsZW1lbnRJblZpZXcoZSkpdC5jbGVhckJhck1lc3NhZ2VJZCgpO2Vsc2V7dmFyIGk9dC4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl07aSYmaS5zY3JvbGxUb3A8ZVswXS5vZmZzZXRUb3AmJih0LnNob3dOb3RpZmljYXRpb249ITApfX10LmlzU2Nyb2xsQmFyQm90dG9tKCl8fHQuc2hvd05vdGlmaWNhdGlvbnx8dC51bnJlYWRNZXNzYWdlQ291bnQ/dC5zaG93TGF0ZXN0PSExOnQuc2hvd0xhdGVzdD0hMH0pKX0sY2xlYXJEYXRhOmZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuY2xlYXJCYXJUaW1lb3V0KSx0aGlzLmJhck1lc3NhZ2VJZD1udWxsLHRoaXMuaXNMb2FkaW5nPSExLHRoaXMuYmFyTWVzc2FnZVJlcmVuY2U9bnVsbCx0aGlzLnVuc2Vlbk1lc3NhZ2VzPVtdLHRoaXMuc2hvd05vdGlmaWNhdGlvbj0hMSx0aGlzLmFnZW50VHlwaW5nPVtdLHRoaXMuY2xlYXJCYXJUaW1lb3V0PTB9LHJldHJ5VXBsb2FkOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8dGhpcy51cGxvYWRGaWxlcy5sZW5ndGg7ZSsrKWlmKHRoaXMudXBsb2FkRmlsZXNbZV0uaGFuZGxlPT09dC5oYW5kbGUpe3RoaXMudXBsb2FkRmlsZXMuc3BsaWNlKGUsMSk7YnJlYWt9dGhpcy4kVGF3a0NoYXRNYW5hZ2VyLnVwbG9hZEZpbGVzKFt0LmZpbGVEYXRhXSl9LHByb2Nlc3NDaGF0TWVzc2FnZXM6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuaXNMb2FkaW5nPSEwO3ZhciBlPSExO2Zvcih2YXIgYSBpbiB0aGlzLmNsZWFyTWVzc2FnZUJsb2NrKCksdGhpcy5jaGF0TWVzc2FnZXMpe3ZhciBpPXRoaXMuY2hhdE1lc3NhZ2VzW2FdO3RoaXMub3V0Z29pbmdNZXNzYWdlJiYhZSYmaS5tZXNzYWdlSWQ9PT10aGlzLm91dGdvaW5nTWVzc2FnZS5tZXNzYWdlSWQ/KGU9ITAsdGhpcy5kaXNwbGF5TWVzc2FnZXMoe21lc3NhZ2U6aSxpc0luY29taW5nOiEwfSkpOnRoaXMuZGlzcGxheU1lc3NhZ2VzKHttZXNzYWdlOml9KX10aGlzLm91dGdvaW5nTWVzc2FnZSYmIWUmJnRoaXMuZGlzcGxheU1lc3NhZ2VzKHttZXNzYWdlOnRoaXMub3V0Z29pbmdNZXNzYWdlLGlzSW5jb21pbmc6ITB9KSx0aGlzLmlzTG9hZGluZz0hMSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuYmFyTWVzc2FnZUlkPyh0LnNjcm9sbFRvRWwodC5iYXJNZXNzYWdlSWQsKGZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJnQuc2Nyb2xsVG9Cb3R0b20odC5sYXN0U2Nyb2xsUG9zaXRvbil9KSksdC5jaGVja0JhclBvc2l0aW9uKCkpOnQuc2Nyb2xsVG9Cb3R0b20odC5sYXN0U2Nyb2xsUG9zaXRvbiksdC5jaGVja1NlZW5NZXNzYWdlVmlld3BvcnQoKX0pLDFlMy82Nil9LGltYWdlTG9hZGVkOmZ1bmN0aW9uKCl7dGhpcy5pc1Njcm9sbEJhckJvdHRvbSgpJiZ0aGlzLnNjcm9sbFRvQm90dG9tKCksdGhpcy4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0mJnRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXImJnRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXIudXBkYXRlKCl9LGhhbmRsZUFnZW50c0F2YXRhclRvb2xiYXI6ZnVuY3Rpb24oKXtpZih0aGlzLiRyZWZzWyJ0YXdrLWhvbWUtaGVhZGVyIl0pe3ZhciB0PXRoaXMuJHJlZnNbInRhd2staG9tZS1oZWFkZXIiXS4kZWwub2Zmc2V0SGVpZ2h0O3RoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLnNjcm9sbFRvcD50LzQ/dGhpcy50b2dnbGVBZ2VudEF2YXRhclRvb2xiYXIoITApOnRoaXMudG9nZ2xlQWdlbnRBdmF0YXJUb29sYmFyKCExKX19LHNhdmVTY3JvbGxQb3NpdGlvbjpmdW5jdGlvbigpe3ZhciB0PXRoaXMuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdO3QmJnRoaXMuJHN0b3JlLmNvbW1pdCgiY2hhdC9zZXRMYXN0U2Nyb2xsUG9zaXRpb24iLHRoaXMuaXNTY3JvbGxCYXJCb3R0b20oKT85OTk5OTk5OTk5OnQuc2Nyb2xsVG9wKX0sY29udmVydEZpbGVTaXplOmZ1bmN0aW9uKHQpe3JldHVybiB0PDEwMjQ/dCsiQiI6dDxNYXRoLnBvdygxMDI0LDIpPyh0LzEwMjQpLnRvRml4ZWQoMikrIktCIjp0PE1hdGgucG93KDEwMjQsMyk/KHQvTWF0aC5wb3coMTAyNCwyKSkudG9GaXhlZCgyKSsiTUIiOih0L01hdGgucG93KDEwMjQsMykpLnRvRml4ZWQoMikrIkdCIn0sdXBkYXRlU2Nyb2xsYmFyOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdJiZ0LiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS4kc2Nyb2xsYmFyJiZ0LiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS4kc2Nyb2xsYmFyLnVwZGF0ZSgpfSksODAwKX19KX0saHQ9T2JqZWN0KGMuYSkodXQsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImJhc2UtZnJhbWUiLHtzdGF0aWNDbGFzczoidGF3ay1jaGF0LXZpZXciLG9uOnsiJnNjcm9sbCI6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuaGFuZGxlU2Nyb2xsUHJvY2Vzcy5hcHBseShudWxsLGFyZ3VtZW50cyl9fX0sW2UoImNoYXQtaGVhZGVyIix7cmVmOiJ0YXdrLWhvbWUtaGVhZGVyIixzdGF0aWNDbGFzczoidGF3ay1mbGV4LW5vbmUifSksZSgiYmFzZS1ib2R5Iix7cmVmOiJ0YXdrLWJhc2UtYm9keSJ9LFtlKCJjaGF0LWJvZHkiLHtyZWY6ImNoYXQtYm9keSIsYXR0cnM6e2lzTG9hZGluZzp0LmlzTG9hZGluZyxtZXNzYWdlQmxvY2tzOnQubWVzc2FnZUJsb2NrcyxiYXJNZXNzYWdlUmVyZW5jZTp0LmJhck1lc3NhZ2VJZCxlbW9qaUVuYWJsZWQ6dC5lbW9qaUVuYWJsZWR9LG9uOntpbWFnZUxvYWRlZDp0LmltYWdlTG9hZGVkfX0pLGUoInRyYW5zaXRpb24tZ3JvdXAiLHthdHRyczp7bmFtZToibGlzdCJ9fSx0Ll9sKHQuYWdlbnRUeXBpbmcsKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIGUoImRpdiIse2tleTppfSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtbWlkZGxlIHRhd2stbWFyZ2luLXNtYWxsLWJvdHRvbSJ9LFtlKCJ0YXdrLWF2YXRhciIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtcHJvZmlsZSIsYXR0cnM6e3NpemU6InNtYWxsIixzcmM6YSxhbHQ6IiIuY29uY2F0KHQuJGkxOG4oImNoYXQiLCJhZ2VudF9wcm9maWxlX2ltYWdlIikpfX0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJhZ2VudFR5cGluZ0luZGljYXRvciB0YXdrLW1hcmdpbi14c21hbGwtbGVmdCJ9LFtlKCJkaXYiLHtzdGF0aWNDbGFzczoiZG90IHRhd2stYWdlbnQtY2hhdC1idWJibGUtZG90cyJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoiZG90IHRhd2stYWdlbnQtY2hhdC1idWJibGUtZG90cyJ9KSxlKCJkaXYiLHtzdGF0aWNDbGFzczoiZG90IHRhd2stYWdlbnQtY2hhdC1idWJibGUtZG90cyJ9KV0pLGUoImRpdiIse3N0YXRpY0NsYXNzOiJjbGVhcmZpeCJ9KV0sMSldKX0pKSwwKSxlKCJ0cmFuc2l0aW9uLWdyb3VwIix7c3RhdGljU3R5bGU6e3dpZHRoOiIxMDAlIixvdmVyZmxvdzoiaGlkZGVuIn0sYXR0cnM6e3RhZzoiZGl2IixuYW1lOiJsaXN0In19LHQuX2wodC51cGxvYWRGaWxlcywoZnVuY3Rpb24oYSxpKXtyZXR1cm4gZSgiZGl2Iix7a2V5OiJrZXktIi5jb25jYXQoaSksc3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AgdGF3ay1tYXJnaW4teHNtYWxsLWJvdHRvbSJ9LFthLmhhc0Vycm9yP2UoImRpdiIsW2UoInRhd2stYWxlcnQiLHthdHRyczp7c3RhdHVzOiJkYW5nZXIiLGljb246ImVycm9yIix0aXRsZTp0LiRpMThuKCJjaGF0IiwiZ2VuZXJhbF91cGxvYWRfZXJyb3JfbGFiZWwiKSxkZXNjcmlwdGlvbjp0LiRpMThuKCJjaGF0IiwiZ2VuZXJhbF91cGxvYWRfZXJyb3IiLHtmaWxlTmFtZTphLmZpbGVOYW1lfSl9fSksZSgidGF3ay1idXR0b24iLHtzdGF0aWNDbGFzczoidGF3ay10ZXh0LXJlZC0xIHRhd2stbWFyZ2luLWF1dG8tbGVmdCB0YXdrLWJ1dHRvbiB0YXdrLWJ1dHRvbi10ZXh0IHRhd2stdGV4dC1yZWd1bGFyLTIgdGF3ay1tYXJnaW4teHNtYWxsLXRvcCIsc3RhdGljU3R5bGU6e2Rpc3BsYXk6ImJsb2NrIn0sYXR0cnM6e2xhYmVsOnQuJGkxOG4oImNoYXQiLCJ0cnlfYWdhaW4iKSxpc1RleHQ6ITB9LG9uOntjbGljazpmdW5jdGlvbihlKXtyZXR1cm4gdC5yZXRyeVVwbG9hZChhKX19fSxbdC5fdigiICIrdC5fcyh0LiRpMThuKCJjaGF0IiwidHJ5X2FnYWluIikpKyIgIildKV0sMSk6ZSgicHJvZ3Jlc3MtYmFyIix7YXR0cnM6e2hhbmRsZTphLmhhbmRsZSxmaWxlTmFtZTphLmZpbGVOYW1lLGZpbGVTaXplOnQuY29udmVydEZpbGVTaXplKGEuZmlsZURhdGEuZmlsZS5zaXplKSxwZXJjZW50YWdlOmEucGVyY2VudGFnZSwiYXJpYS1idXN5IjoidHJ1ZSIsImFyaWEtdmFsdWVtaW4iOiIwIiwiYXJpYS12YWx1ZW1heCI6IjEwMCIsImFyaWEtdmFsdWVub3ciOmEucGVyY2VudGFnZX19KV0sMSl9KSksMCksdC50b29CaWdGaWxlTGlzdD9lKCJkaXYiLFtlKCJ0YXdrLWFsZXJ0Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXhzbWFsbC10b3AgdGF3ay1tYXJnaW4teHNtYWxsLWJvdHRvbSIsYXR0cnM6e3N0YXR1czoiZGFuZ2VyIixpY29uOiJlcnJvciIsdGl0bGU6dC4kaTE4bigibm90aWZpY2F0aW9ucyIsIm1heGltdW1fc2l6ZV91cGxvYWRfd2FybmluZyIse2xpbWl0RmlsZVNpemU6IjUwTUIifSksZGVzY3JpcHRpb246dC50b29CaWdGaWxlTGlzdH19KV0sMSk6dC5fZSgpXSwxKSxlKCJkaXYiLHthdHRyczp7c2xvdDoidW5zZWVuLW1lc3NhZ2UtY291bnQifSxzbG90OiJ1bnNlZW4tbWVzc2FnZS1jb3VudCJ9LFtlKCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6InNsaWRlLWZhZGUifX0sW3Quc2hvd0xhdGVzdD9lKCJ0YXdrLWJ1dHRvbiIse3N0YXRpY0NsYXNzOiJ0YXdrLW5ldy1tZXNzYWdlcy1ub3RpZmljYXRpb24iLGF0dHJzOntsYWJlbDoic2Nyb2xsIHRvIGJvdHRvbSIsaXNDaXJjbGU6ITB9LG9uOntjbGljazpmdW5jdGlvbihlKXtyZXR1cm4gdC5zY3JvbGxUb0JvdHRvbSgpfX19LFtlKCJ0YXdrLWljb24iLHthdHRyczp7dHlwZToiY2FyZXQtZG93biIsc2l6ZToibWVkaXVtIn19KV0sMSk6dC5fZSgpXSwxKV0sMSldLDEpfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHM7ZnVuY3Rpb24gZHQodCl7cmV0dXJuKGR0PSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbXQodCxlKXt2YXIgYT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO2UmJihpPWkuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpLmVudW1lcmFibGV9KSkpLGEucHVzaC5hcHBseShhLGkpfXJldHVybiBhfWZ1bmN0aW9uIGZ0KHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBhPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP210KE9iamVjdChhKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cHQodCxlLGFbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoYSkpOm10KE9iamVjdChhKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEsZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIHB0KHQsZSxhKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1kdCh0KXx8IXQpcmV0dXJuIHQ7dmFyIGE9dFtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PWEpe3ZhciBpPWEuY2FsbCh0LGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPWR0KGkpKXJldHVybiBpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKSh0KX0odCwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PWR0KGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTphLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1hLHR9dmFyIGd0PXtuYW1lOiJwcmVjaGF0LWZvcm0iLGNvbXBvbmVudHM6e0Jhc2VGcmFtZTpILmEsQmFzZUJvZHk6Ti5hLEhvbWVIZWFkZXI6JCxIb21lQm9keTpXfSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2lzRHJvcGRvd25PcGVuOiExLGlzU3VibWl0dGluZzohMSxzdWJtaXNzaW9uRXJyb3I6ITEsc3VibWlzc2lvblN1Y2Nlc3M6ITF9fSxjb21wdXRlZDpmdCh7fSxPYmplY3QoaS5jKSh7c3RhdGVzOiJ3aWRnZXQvc3RhdGVzIixkZXBhcnRtZW50czoic2Vzc2lvbi9kZXBhcnRtZW50cyIsbmFtZToidmlzaXRvci9uYW1lIixlbWFpbDoidmlzaXRvci9nZXRFbWFpbFZhbHVlIixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLGlzUHJlY2hhdEFpUmVzcG9uc2VTdXBwcmVzc2VkOiJ3aWRnZXQvaXNQcmVjaGF0QWlSZXNwb25zZVN1cHByZXNzZWQifSkpLHdhdGNoOntwYWdlU3RhdHVzOmZ1bmN0aW9uKHQpeyJvZmZsaW5lIj09PXQmJnRoaXMuc2hvd092ZXJsYXkoITEpfX0sbWV0aG9kczpmdChmdCh7fSxPYmplY3QoaS5iKSh7cm91dGVyUHVzaDoicm91dGVyL3JvdXRlclB1c2giLHNob3dPdmVybGF5OiJvdmVybGF5L3Nob3dPdmVybGF5IixyZW1vdmVSb3V0ZToicm91dGVyL3JlbW92ZVJvdXRlIn0pKSx7fSx7c3VibWl0Rm9ybTpmdW5jdGlvbih0KXt2YXIgZT10aGlzO3QuaGFzRXJyb3J8fCh0aGlzLmlzU3VibWl0dGluZz0hMCx0aGlzLnN1Ym1pc3Npb25FcnJvcj0hMSx0aGlzLnN1Ym1pc3Npb25TdWNjZXNzPSExLHRoaXMuJHN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRJc05vdFZhbGlkRW1haWwiLG51bGwpLHRoaXMuJHN0b3JlLmNvbW1pdCgic2Vzc2lvbi9zZXRJc05vdFZhbGlkUGhvbmUiLG51bGwpLHQuZm9ybURhdGEuY3VzdG9tQXR0cmlidXRlcyYmKHQuZm9ybURhdGEud2lkZ2V0SWQ9dGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2lkIl0pLHRoaXMuJHNvY2tldC5wdWJsaXNoKCJub3RpZnlQcmVjaGF0Iix0LmZvcm1EYXRhLChmdW5jdGlvbihhKXt2YXIgaT0iIjtpZihlLmlzU3VibWl0dGluZz0hMSxhKXJldHVybiJJbnZhbGlkQXJndW1lbnQiPT09YS5jb2RlPygiZW1haWwiPT09YS5tZXNzYWdlJiZlLiRzdG9yZS5jb21taXQoInNlc3Npb24vc2V0SXNOb3RWYWxpZEVtYWlsIiwiZW1haWwiKSwicGhvbmUiPT09YS5tZXNzYWdlJiZlLiRzdG9yZS5jb21taXQoInNlc3Npb24vc2V0SXNOb3RWYWxpZFBob25lIiwicGhvbmUiKSx2b2lkIGUuJGVtaXQoInVwZGF0ZTppc1N1Ym1pdHRpbmciLCExKSk6dm9pZChlLnN1Ym1pc3Npb25FcnJvcj0hMCk7ZS4kc3RvcmUuY29tbWl0KCJzZXNzaW9uL3NldFByZWNoYXRTdWJtaXR0ZWQiLCEwKSxlLiRUYXdrSlNBUEkudHJpZ2dlckFwaUhhbmRsZXJzKCJvblByZWNoYXRTdWJtaXQiLHQuZm9ybURhdGEpLGUuJG5leHRUaWNrKChmdW5jdGlvbigpe3ZhciBhPVtdLHM9dC5mb3JtRGF0YSxuPXMubmFtZSxyPXMuZW1haWwsbz1zLnBob25lLGM9cy5kZXBhcnRtZW50O2lmKG4mJmEucHVzaCgiTmFtZSA6ICIuY29uY2F0KG4pKSxyJiZhLnB1c2goIkVtYWlsIDogIi5jb25jYXQocikpLG8mJmEucHVzaCgiUGhvbmUgOiAiLmNvbmNhdChvKSksYyl7dmFyIGw9ZS5kZXBhcnRtZW50cy5maW5kKChmdW5jdGlvbih0KXtyZXR1cm4gdC5kaWQ9PT1jfSkpO2EucHVzaCgiRGVwYXJ0bWVudCA6ICIuY29uY2F0KGw/bC5uOmMpKX1mb3IodmFyIHU9dC50cmFuc2NyaXB0Q3VzdG9tRmllbGRzfHxbXSxoPTA7aDx1Lmxlbmd0aDtoKyspe3ZhciBkPXVbaF0sbT1kLmxhYmVsLGY9ZC52YWx1ZSxwPUFycmF5LmlzQXJyYXkoZik/Zi5qb2luKCIsICIpOmY7YS5wdXNoKCIiLmNvbmNhdChtLCIgOiAiKS5jb25jYXQocCkpfShpPWEuam9pbigiXHJcbiIpKSYmZS4kVGF3a0NoYXRNYW5hZ2VyLnNlbmRNZXNzYWdlVG9TZXJ2ZXIoe21lc3NhZ2U6aSxpc1ByZUNoYXQ6ZS5pc1ByZWNoYXRBaVJlc3BvbnNlU3VwcHJlc3NlZH0pLGUucm91dGVyUHVzaCgiY2hhdCIpLGUucmVtb3ZlUm91dGUoInByZWNoYXQiKSxlLnNob3dPdmVybGF5KCExKX0pKX0pKSl9LGhvbWVMb2FkZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC4kcmVmc1sidGF3ay1jaGF0LXBhbmVsIl0mJnQuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXImJnQuJHJlZnNbInRhd2stY2hhdC1wYW5lbCJdLiRzY3JvbGxiYXIudXBkYXRlKCl9KSw1MDApfSxoYW5kbGVTY3JvbGw6ZnVuY3Rpb24oKXt0aGlzLiRyZWZzJiZ0aGlzLiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXSYmdGhpcy4kZXZlbnRCdXMuJGVtaXQoImNoYXRQYW5lbFNjcm9sbCIse3Njcm9sbFRvcDp0aGlzLiRyZWZzWyJ0YXdrLWNoYXQtcGFuZWwiXS5zY3JvbGxUb3B9KX19KSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuJGV2ZW50QnVzLiRlbWl0KCJmb3JtT3BlbmVkIil9KSw1MCl9LGRlc3Ryb3llZDpmdW5jdGlvbigpe3RoaXMuJGV2ZW50QnVzLiRlbWl0KCJmb3JtQ2xvc2VkIiksdGhpcy4kZW1pdCgiaG9tZUxvYWRlZCIpfX0sd3Q9T2JqZWN0KGMuYSkoZ3QsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImJhc2UtZnJhbWUiLHtyZWY6InRhd2stZnJhbWUiLHN0YXRpY0NsYXNzOiJ0YXdrLXByZWNoYXQtdmlldyIsYXR0cnM6e2hhc0JhY2tncm91bmQ6ITB9LG9uOnsiJnNjcm9sbCI6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuaGFuZGxlU2Nyb2xsLmFwcGx5KG51bGwsYXJndW1lbnRzKX19fSxbZSgiYmFzZS1ib2R5IixbZSgiaG9tZS1oZWFkZXIiLHtyZWY6InRhd2stcHJlY2hhdC1oZWFkZXIiLGF0dHJzOntzdGF0ZToicHJlY2hhdCJ9fSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stbWFyZ2luLXRvcCIsc3RhdGljU3R5bGU6e3dpZHRoOiIxMDAlIn19LFtlKCJob21lLWJvZHkiLHtyZWY6InRhd2stcHJlY2hhdC1ib2R5IixhdHRyczp7c3RhdGU6InByZWNoYXQiLG92ZXJ3cml0ZVN1Ym1pdDohMH0sb246e3N1Ym1pdEZvcm06dC5zdWJtaXRGb3JtLGhvbWVMb2FkZWQ6dC5ob21lTG9hZGVkfX0pXSwxKV0sMSldLDEpfSksW10sITEsbnVsbCxudWxsLG51bGwpLmV4cG9ydHMsYnQ9YSgiOTBjMiIpLHZ0PWEoIjg3ZGQiKTtmdW5jdGlvbiB5dCh0KXtyZXR1cm4oeXQ9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBrdCh0LGUpe3ZhciBhPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKGk9aS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksYS5wdXNoLmFwcGx5KGEsaSl9cmV0dXJuIGF9ZnVuY3Rpb24gQ3QodCl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGE9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/a3QoT2JqZWN0KGEpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPdCh0LGUsYVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhhKSk6a3QoT2JqZWN0KGEpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYSxlKSl9KSl9cmV0dXJuIHR9ZnVuY3Rpb24gT3QodCxlLGEpe3JldHVybihlPWZ1bmN0aW9uKHQpe3ZhciBlPWZ1bmN0aW9uKHQsZSl7aWYoIm9iamVjdCIhPXl0KHQpfHwhdClyZXR1cm4gdDt2YXIgYT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09YSl7dmFyIGk9YS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9eXQoaSkpcmV0dXJuIGk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKHQpfSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09eXQoZSk/ZTplKyIifShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOmEsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPWEsdH12YXIgU3Q9e25hbWU6Ik1heGltaXplV2lkZ2V0Iixjb21wb25lbnRzOntJRnJhbWU6bi5hLENhbGxXaWRnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDIxYWQxYiIpLnRoZW4oYS5iaW5kKG51bGwsImJjYWUiKSl9LEVuZENoYXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS5lKCJjaHVuay0yZDBlOTgyZSIpLnRoZW4oYS5iaW5kKG51bGwsIjhlOWQiKSl9LEluYWN0aXZlT3ZlcmxheTpmdW5jdGlvbigpe3JldHVybiBhLmUoImNodW5rLTJkMGFmMmRhIikudGhlbihhLmJpbmQobnVsbCwiMGNlNiIpKX0sVG9vbGJhcjpwLFRhd2tBbGVydDpzLlRhd2tBbGVydCxUYXdrT3ZlcmxheTpzLlRhd2tPdmVybGF5LEhvbWVWaWV3OkcsQ2hhdFZpZXc6aHQsTWF4aW1pemVGb290ZXI6QyxQcmVjaGF0Vmlldzp3dCxNZXNzYWdlc1ZpZXc6YnQuZGVmYXVsdH0sbWl4aW5zOlt2dC5hXSxkYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2Nzc0xpbms6IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXBwLzZhNGU2NGU5ZjBkIiwiL2Nzcy9tYXgtd2lkZ2V0LmNzcyIpLGNsYXNzU3RyaW5nOiIiLHNob3dFbmRDaGF0OiExLG5vWm9vbU1ldGFUYWc6bnVsbCxyZXNpemVIZWlnaHRUbzpudWxsLGZvcm1Jc09wZW46ITEsaXNEcmFnZ2VkT3ZlcjohMSxvcmlnaW5hbEJvZHlTdHlsZTpudWxsLGlzTG9hZGVkOiExLGlzQ2hhdFN0YXR1czp7fSxyb3V0ZUxvYWRlZFRpbWVvdXQ6bnVsbCxwb3dlckltYWdlVXJsOiIiLmNvbmNhdCgiaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2Fzc2V0cyIsIi9pbWFnZXMvcG93ZXIuc3ZnIiksaW5pdGlhbGl6ZWQ6ITEsaWZyYW1lOntoZWlnaHQ6IiIsd2lkdGg6IiJ9LGlzVmlzaWJsZTohMSxrZXk6cy5IZWxwZXIuZ2VuZXJhdGVVVUlEKCksc2hvd0Nvbm5lY3RlZDohMX19LGNvbXB1dGVkOkN0KEN0KHt9LE9iamVjdChpLmMpKHttYXhEaW1lbnNpb246IndpZGdldC9tYXhEZXNrdG9wIixtaW5EZXNrdG9wOiJ3aWRnZXQvbWluRGVza3RvcCIsY2hhdFdpbmRvd1N0YXRlOiJzZXNzaW9uL2NoYXRXaW5kb3dTdGF0ZSIsc3RhdGVzOiJ3aWRnZXQvc3RhdGVzIixwYWdlU3RhdHVzOiJzZXNzaW9uL3BhZ2VTdGF0dXMiLGlzUm91bmRXaWRnZXQ6IndpZGdldC9pc1JvdW5kV2lkZ2V0IixicmFuZGluZzoid2lkZ2V0L2JyYW5kaW5nIixmZWF0dXJlczoid2lkZ2V0L2ZlYXR1cmVzIixjdXJyZW50Vmlldzoicm91dGVyL2dldEN1cnJlbnRWaWV3IixhY3RpdmVQcm9maWxlczoiY2hhdC9hY3RpdmVQcm9maWxlcyIsaGFzQ2hhdFN0YXJ0ZWQ6ImNoYXQvaGFzQ2hhdFN0YXJ0ZWQiLHByZWNoYXRGb3JtU3VibWl0dGVkOiJzZXNzaW9uL3ByZWNoYXRGb3JtU3VibWl0dGVkIixpc1ByZWNoYXRFbmFibGVkOiJ3aWRnZXQvaXNQcmVjaGF0RW5hYmxlZCIsaXNXaW5kb3dlZDoid2lkZ2V0L2lzV2luZG93ZWQiLG1vYmlsZUJyb3dzZXJOYW1lOiJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSIsaXNFbWJlZGRlZDoid2lkZ2V0L2lzRW1iZWRkZWQiLGhhc0NoYXRFbmRlZDoiY2hhdC9oYXNDaGF0RW5kZWQiLG5lZWRDb25zZW50OiJzZXNzaW9uL25lZWRDb25zZW50Iixpc0luYWN0aXZlOiJzZXNzaW9uL2lzSW5hY3RpdmUiLGlzUmlnaHQ6IndpZGdldC9pc1JpZ2h0Iixpc0JvdHRvbToid2lkZ2V0L2lzQm90dG9tIixpc0NlbnRlcjoid2lkZ2V0L2lzQ2VudGVyIixpc092ZXJsYXlPcGVuOiJvdmVybGF5L2lzT3BlbiIsZ2V0SGlzdG9yeToicm91dGVyL2dldEhpc3RvcnkiLGhhc0xpdmVDaGF0OiJ3aWRnZXQvaGFzTGl2ZUNoYXQiLHdlYnJ0Y09wdGlvbnM6IndpZGdldC93ZWJydGNPcHRpb25zIixhZ2VudHNDb3VudDoiY2hhdC9hZ2VudHNDb3VudCIsY3VycmVudFJvdXRlOiJyb3V0ZXIvY3VycmVudCIsaXNSZWNvbm5lY3Rpbmc6InNlc3Npb24vaXNSZWNvbm5lY3RpbmciLGNoYXRPcmRlcjoiY2hhdC9jaGF0T3JkZXIiLHVucmVhZE1lc3NhZ2VDb3VudDoiY2hhdC91bnJlYWRNZXNzYWdlQ291bnQiLGRlc2t0b3BWaXNpYmlsaXR5OiJ3aWRnZXQvZGVza3RvcFZpc2liaWxpdHkiLHNob3dNZXNzYWdlUHJldmlldzoid2lkZ2V0L3Nob3dNZXNzYWdlUHJldmlldyIsZmlyc3RJbmNvbWluZzoiY2hhdC9maXJzdEluY29taW5nIixpc1JlYWR5OiJzb2NrZXQvaXNSZWFkeSIsaXNDb25uZWN0aW5nOiJzb2NrZXQvaXNDb25uZWN0aW5nIixpc0lFOiJicm93c2VyRGF0YS9pc0lFIixjb21wb25lbnRzOiJ3aWRnZXQvY29tcG9uZW50cyIsb25DbGljazoid2lkZ2V0L29uQ2xpY2siLGRlZmF1bHRWaWV3OiJ3aWRnZXQvZGVmYXVsdFZpZXcifSkpLHt9LHt4T2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy54T2Zmc2V0KCl9LHlPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kVGF3a1dpZGdldFNldHRpbmdzLnlPZmZzZXQoKX0sc3R5bGVPYmplY3Q6ZnVuY3Rpb24oKXt2YXIgdCxlPW51bGw9PT0odD10aGlzLiRUYXdrSlNBUEkpfHx2b2lkIDA9PT10fHxudWxsPT09KHQ9dC5sb2NhbF9BUEkpfHx2b2lkIDA9PT10fHxudWxsPT09KHQ9dC5jdXN0b21TdHlsZSl8fHZvaWQgMD09PXQ/dm9pZCAwOnQudmlzaWJpbGl0eSxhPXsiYm9yZGVyLXJhZGl1czoiOiIiLmNvbmNhdCh0aGlzLmJvcmRlclJhZGl1cywiICFpbXBvcnRhbnQ7IiksInotaW5kZXg6IjoiMTAwMDAwMyAhaW1wb3J0YW50OyIsImhlaWdodDoiOiIiLmNvbmNhdCh0aGlzLmlmcmFtZS5oZWlnaHQsIiAhaW1wb3J0YW50OyIpLCJ3aWR0aDoiOiIiLmNvbmNhdCh0aGlzLmlmcmFtZS53aWR0aCwiICFpbXBvcnRhbnQ7IiksIm1pbi1oZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5pZnJhbWUuaGVpZ2h0LCIgIWltcG9ydGFudDsiKSwibWluLXdpZHRoOiI6IiIuY29uY2F0KHRoaXMuaWZyYW1lLndpZHRoLCIgIWltcG9ydGFudDsiKSwibWF4LWhlaWdodDoiOiIiLmNvbmNhdCh0aGlzLmlmcmFtZS5oZWlnaHQsIiAhaW1wb3J0YW50OyIpLCJtYXgtd2lkdGg6IjoiIi5jb25jYXQodGhpcy5pZnJhbWUud2lkdGgsIiAhaW1wb3J0YW50OyIpfTtpZih0aGlzLmlzV2luZG93ZWR8fHRoaXMuaXNFbWJlZGRlZD9hWyJwb3NpdGlvbjoiXT0iYWJzb2x1dGUgIWltcG9ydGFudDsiOmFbInBvc2l0aW9uOiJdPSJmaXhlZCAhaW1wb3J0YW50OyIsdGhpcy5pc1dpbmRvd2VkfHx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHx0aGlzLmlzRW1iZWRkZWQpe3ZhciBpPTAscz0wLG49MCxyPTA7dGhpcy5tb2JpbGVCcm93c2VyTmFtZSYmZSYmZS5tb2JpbGUmJmUubW9iaWxlLm1heGltaXplZCYmKGUubW9iaWxlLm1heGltaXplZC5ib3R0b21PZmZzZXQmJihpPWUubW9iaWxlLm1heGltaXplZC5ib3R0b21PZmZzZXQpLGUubW9iaWxlLm1heGltaXplZC50b3BPZmZzZXQmJihyPWUubW9iaWxlLm1heGltaXplZC50b3BPZmZzZXQpLGUubW9iaWxlLm1heGltaXplZC5sZWZ0T2Zmc2V0JiYobj1lLm1vYmlsZS5tYXhpbWl6ZWQubGVmdE9mZnNldCksZS5tb2JpbGUubWF4aW1pemVkLnJpZ2h0T2Zmc2V0JiYocz1lLm1vYmlsZS5tYXhpbWl6ZWQucmlnaHRPZmZzZXQpLGFbImhlaWdodDoiXT0iY2FsYygxMDAlIC0gIi5jb25jYXQoaStyLCJweCkgIWltcG9ydGFudDsiKSxhWyJtaW4taGVpZ2h0OiJdPSJjYWxjKDEwMCUgLSAiLmNvbmNhdChpK3IsInB4KSAhaW1wb3J0YW50OyIpLGFbIm1heC1oZWlnaHQ6Il09ImNhbGMoMTAwJSAtICIuY29uY2F0KGkrciwicHgpICFpbXBvcnRhbnQ7IiksYVsid2lkdGg6Il09ImNhbGMoMTAwJSAtICIuY29uY2F0KG4rcywicHgpICFpbXBvcnRhbnQ7IiksYVsibWluLXdpZHRoOiJdPSJjYWxjKDEwMCUgLSAiLmNvbmNhdChuK3MsInB4KSAhaW1wb3J0YW50OyIpLGFbIm1heC13aWR0aDoiXT0iY2FsYygxMDAlIC0gIi5jb25jYXQobitzLCJweCkgIWltcG9ydGFudDsiKSksYVsiYm90dG9tOiJdPSIiLmNvbmNhdChpLCJweCAhaW1wb3J0YW50OyIpLGFbInJpZ2h0OiJdPSIiLmNvbmNhdChzLCJweCAhaW1wb3J0YW50OyIpLGFbImxlZnQ6Il09IiIuY29uY2F0KG4sInB4ICFpbXBvcnRhbnQ7IiksYVsidG9wOiJdPSIiLmNvbmNhdChyLCJweCAhaW1wb3J0YW50OyIpfWVsc2V7dmFyIG87bz0ic2xpZGUiPT09dGhpcy5vbkNsaWNrPzA6dGhpcy5pc0NlbnRlciYmdGhpcy5pc1JvdW5kV2lkZ2V0P3RoaXMubWluRGVza3RvcC53aWR0aCt0aGlzLnhPZmZzZXQrMTg6dGhpcy54T2Zmc2V0LHRoaXMuaXNSaWdodD9hWyJyaWdodDoiXT0iIi5jb25jYXQobywicHggIWltcG9ydGFudDsiKTphWyJsZWZ0OiJdPSIiLmNvbmNhdChvLCJweCAhaW1wb3J0YW50OyIpLHRoaXMuaXNSb3VuZFdpZGdldCYmInNsaWRlIiE9PXRoaXMub25DbGljaz90aGlzLmlzQm90dG9tP2FbImJvdHRvbToiXT0iIi5jb25jYXQodGhpcy5taW5EZXNrdG9wLmhlaWdodCt0aGlzLnlPZmZzZXQrMTgsInB4ICFpbXBvcnRhbnQ7Iik6KGFbInRvcDoiXT0iIi5jb25jYXQodGhpcy5taW5EZXNrdG9wLmhlaWdodCt0aGlzLnlPZmZzZXQrMTgsInB4ICFpbXBvcnRhbnQ7IiksYVsiYm90dG9tOiJdPSJhdXRvICFpbXBvcnRhbnQ7Iik6YVsiYm90dG9tOiJdPSIwcHggIWltcG9ydGFudDsifXJldHVybiJtYXgiPT09dGhpcy5jaGF0V2luZG93U3RhdGV8fHRoaXMuaXNXaW5kb3dlZHx8dGhpcy5pc0VtYmVkZGVkP2FbImRpc3BsYXk6Il09ImJsb2NrICFpbXBvcnRhbnQ7IjphWyJkaXNwbGF5OiJdPSJub25lICFpbXBvcnRhbnQ7IixDdChDdCh7fSx0aGlzLmdlbmVyaWNTdHlsZXMpLGEpfSxib3JkZXJSYWRpdXM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc1dpbmRvd2VkfHx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHx0aGlzLmlzRW1iZWRkZWR8fCJzbGlkZSI9PT10aGlzLm9uQ2xpY2s/IjBweCI6dGhpcy5pc1JvdW5kV2lkZ2V0PyIxOHB4IjoiMThweCAxOHB4ICAwIDAifSxib3JkZXJSYWRpdXNUb3A6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc1dpbmRvd2VkfHx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lfHx0aGlzLmlzRW1iZWRkZWR8fCJzbGlkZSI9PT10aGlzLm9uQ2xpY2s/IjBweCI6IjE4cHggMThweCAwIDAifSxoYXNIb21lVmlldzpmdW5jdGlvbigpe3JldHVybiB0aGlzLmhhc0NoYXRFbmRlZCwhMH0sc2hvd0JhY2tCdXR0b246ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jdXJyZW50VmlldyYmKCJjaGF0Ij09PXRoaXMuY3VycmVudFZpZXcucGF0aHx8ImFnZW50cyI9PT10aGlzLmN1cnJlbnRWaWV3LnBhdGh8fCJwcmVjaGF0Ij09PXRoaXMuY3VycmVudFZpZXcucGF0aHx8Im1lc3NhZ2VzIj09PXRoaXMuY3VycmVudFZpZXcucGF0aCkmJnRoaXMuaGFzSG9tZVZpZXcmJigiYWdlbnRzIj09PXRoaXMuY3VycmVudFZpZXcucGF0aHx8Im1lc3NhZ2VzIj09PXRoaXMuY3VycmVudFZpZXcucGF0aHx8IXRoaXMuaXNPdmVybGF5T3Blbil9LGlzVG9vbGJhckVsZW1lbnRzVmlzaWJsZTpmdW5jdGlvbigpe3JldHVybiEoIXRoaXMubW9iaWxlQnJvd3Nlck5hbWUmJnRoaXMuaXNSb3VuZFdpZGdldCYmIi8iPT09dGhpcy5jdXJyZW50Um91dGUmJih2b2lkIDA9PT10aGlzLndlYnJ0Y09wdGlvbnN8fCF0aGlzLndlYnJ0Y09wdGlvbnMuZW5hYmxlZHx8dGhpcy5pc1ByZWNoYXRFbmFibGVkJiYhdGhpcy5wcmVjaGF0Rm9ybVN1Ym1pdHRlZCkpfSxpc0NoYXRJbnB1dEJvdHRvbTpmdW5jdGlvbigpe3ZhciB0PSExLGU9dGhpcy5zdGF0ZXNbdGhpcy5wYWdlU3RhdHVzXTtyZXR1cm4gZSYmZS5ib2R5Lmxlbmd0aCYmKHQ9ImNoYXQiPT09ZS5ib2R5W2UuYm9keS5sZW5ndGgtMV0udHlwZSksdH0sc2hvd0NoYXRJbnB1dDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmN1cnJlbnRWaWV3JiYoIi8iPT09dGhpcy5jdXJyZW50Vmlldy5wYXRoJiZ0aGlzLmhhc0NoYXRTdGFydGVkfHwiY2hhdCI9PT10aGlzLmN1cnJlbnRWaWV3LnBhdGgpfSxoYXNQcmVjaGF0SGlzdG9yeTpmdW5jdGlvbigpe2lmKDA9PT10aGlzLmdldEhpc3RvcnkubGVuZ3RoKXJldHVybiExO3ZhciB0PSExO3JldHVybiB0aGlzLmdldEhpc3RvcnkuZmlsdGVyKChmdW5jdGlvbihlKXsicHJlY2hhdCI9PT1lJiYodD0hMCl9KSksdH0saXNIb21lVmlld1Zpc2libGU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5uZWVkQ29uc2VudHx8ImNoYXQiIT09dGhpcy5jdXJyZW50Um91dGUmJiJhZ2VudHMiIT09dGhpcy5jdXJyZW50Um91dGUmJiJwcmVjaGF0IiE9PXRoaXMuY3VycmVudFJvdXRlJiYibWVzc2FnZXMiIT09dGhpcy5jdXJyZW50Um91dGUmJnRoaXMuaGFzSG9tZVZpZXcmJighdGhpcy5oYXNQcmVjaGF0SGlzdG9yeXx8dGhpcy5wcmVjaGF0Rm9ybVN1Ym1pdHRlZCl9LGlzV2VicnRjRW5hYmxlZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbXBvbmVudHMmJnRoaXMuY29tcG9uZW50cy53ZWJydGN9LG1heGltaXplU3R5bGU6ZnVuY3Rpb24oKXtyZXR1cm57Ym9yZGVyUmFkaXVzOnRoaXMuYm9yZGVyUmFkaXVzfX19KSx3YXRjaDp7Y2hhdFdpbmRvd1N0YXRlOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7Im1heCI9PT10Pyh0aGlzLmNsYXNzU3RyaW5nPSJvcGVuIix0aGlzLm9wZW5WaWV3KCksdGhpcy5mb3JtSXNPcGVuJiZ0aGlzLnJlc2l6ZUZyYW1lKCksdGhpcy5pc0NoYXRTdGF0dXNbImRpc3BsYXk6Il09ImJsb2NrICFpbXBvcnRhbnQ7Iix0aGlzLnNob3dNYXhXaWRnZXQoKSk6KHRoaXMuY2xhc3NTdHJpbmc9ImNsb3NlZCIsdGhpcy5ub1pvb21NZXRhVGFnLmNvbnRlbnQ9IiIsdGhpcy5ub1pvb21NZXRhVGFnLnBhcmVudE5vZGUmJnRoaXMubm9ab29tTWV0YVRhZy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMubm9ab29tTWV0YVRhZyksbnVsbCE9PXRoaXMub3JpZ2luYWxCb2R5U3R5bGUmJihkb2N1bWVudC5ib2R5LnN0eWxlLmNzc1RleHQ9dGhpcy5vcmlnaW5hbEJvZHlTdHlsZSksdGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLmlzQ2hhdFN0YXR1c1siZGlzcGxheToiXT0ibm9uZSAhaW1wb3J0YW50OyI6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLmlzQ2hhdFN0YXR1c1siZGlzcGxheToiXT0ibm9uZSAhaW1wb3J0YW50OyJ9KSwyNTApLHRoaXMuaGlkZU1heFdpZGdldCgpKX0scGFnZVN0YXR1czpmdW5jdGlvbigpeyJtYXgiPT09dGhpcy5jaGF0V2luZG93U3RhdGUmJnRoaXMub3BlblZpZXcoKSwib2ZmbGluZSI9PT10aGlzLnBhZ2VTdGF0dXMmJih0aGlzLnNob3dPdmVybGF5KCExKSx0aGlzLnJvdXRlclB1c2goIi8iKSx0aGlzLmNsZWFySGlzdG9yeSgpKX0sdW5yZWFkTWVzc2FnZUNvdW50OmZ1bmN0aW9uKHQpe3RoaXMuaXNXaW5kb3dlZHx8dGhpcy5pc0VtYmVkZGVkfHwoIXRoaXMubW9iaWxlQnJvd3Nlck5hbWUmJiF0aGlzLmRlc2t0b3BWaXNpYmlsaXR5LnNob3cmJnQ+MCYmIm1heCIhPT10aGlzLmNoYXRXaW5kb3dTdGF0ZSYmdGhpcy51cGRhdGVDaGF0V2luZG93U3RhdGUoIm1heCIpLCF0aGlzLmZpcnN0SW5jb21pbmd8fHRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fHRoaXMuc2hvd01lc3NhZ2VQcmV2aWV3fHwibWF4Ij09PXRoaXMuY2hhdFdpbmRvd1N0YXRlfHx0aGlzLnVwZGF0ZUNoYXRXaW5kb3dTdGF0ZSgibWF4IikpfSxpc1JlYWR5OmZ1bmN0aW9uKHQsZSl7dmFyIGE9dGhpczt0IT09ZSYmKHRoaXMuc2hvd0Nvbm5lY3RlZD0hMCxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2Euc2hvd0Nvbm5lY3RlZD0hMX0pLDFlMykpfSxpc1JlY29ubmVjdGluZzpmdW5jdGlvbih0LGUpe3ZhciBhPXRoaXM7dCE9PWUmJih0aGlzLnNob3dDb25uZWN0ZWQ9ITAsc2V0VGltZW91dCgoZnVuY3Rpb24oKXthLnNob3dDb25uZWN0ZWQ9ITF9KSwxZTMpKX19LG1ldGhvZHM6Q3QoQ3Qoe30sT2JqZWN0KGkuYikoe3JvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIix1cGRhdGVSb3V0ZToicm91dGVyL3VwZGF0ZVJvdXRlIix0b2dnbGVXaWRnZXQ6InNlc3Npb24vdG9nZ2xlV2lkZ2V0Iix0b2dnbGVMb2NhbFNvdW5kOiJ3aWRnZXQvdG9nZ2xlTG9jYWxTb3VuZCIsc2hvd092ZXJsYXk6Im92ZXJsYXkvc2hvd092ZXJsYXkiLHJvdXRlckJhY2s6InJvdXRlci9yb3V0ZXJCYWNrIixjbGVhckhpc3Rvcnk6InJvdXRlci9jbGVhckhpc3RvcnkiLHVwZGF0ZUNoYXRXaW5kb3dTdGF0ZToic2Vzc2lvbi91cGRhdGVDaGF0V2luZG93U3RhdGUiLHRvZ2dsZUZvY3VzOiJ3aWRnZXQvdG9nZ2xlRm9jdXMifSkpLHt9LHt0cmlnZ2VyQ2xpY2s6ZnVuY3Rpb24oKXt0aGlzLiRzdG9yZS5kaXNwYXRjaCgic2Vzc2lvbi90b2dnbGVXaWRnZXQiKX0sb3BlblZpZXc6ZnVuY3Rpb24oKXtpZih0aGlzLmluaXRpYWxpemVkPSEwLHRoaXMuc2hvd01heFdpZGdldCgpLHRoaXMubW9iaWxlQnJvd3Nlck5hbWUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIm1ldGFbbmFtZT12aWV3cG9ydF0iKXx8ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigibWV0YVtuYW1lPVZJRVdQT1JUXSIpO3RoaXMuJFRhd2tXaW5kb3cuaXNNb2JpbGVPcHRpbWl6ZWRXZWJzaXRlfHxudWxsPT09dGhpcy5ub1pvb21NZXRhVGFnfHwodGhpcy4kVGF3a1dpbmRvdy5tZXRhQ29udGVudHx8IiIhPT10aGlzLm5vWm9vbU1ldGFUYWcuY29udGVudD90aGlzLiRUYXdrV2luZG93Lm1ldGFDb250ZW50JiYhdGhpcy4kVGF3a1dpbmRvdy5oYXNOb1NjYWxlJiZ0JiZ0LnNldEF0dHJpYnV0ZSgiY29udGVudCIsdGhpcy4kVGF3a1dpbmRvdy5tZXRhQ29udGVudCsiLCB1c2VyLXNjYWxhYmxlPW5vIik6KHRoaXMubm9ab29tTWV0YVRhZy5jb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xLCB1c2VyLXNjYWxhYmxlPW5vIix0aGlzLm5vWm9vbU1ldGFUYWcucGFyZW50Tm9kZXx8ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXS5hcHBlbmRDaGlsZCh0aGlzLm5vWm9vbU1ldGFUYWcpKSk7dmFyIGU9ZG9jdW1lbnQuYm9keTt0aGlzLm9yaWdpbmFsQm9keVN0eWxlPWUuc3R5bGUuY3NzVGV4dDtmb3IodmFyIGE9WyJoZWlnaHQiLCJtaW4taGVpZ2h0IiwibWF4LWhlaWdodCIsIndpZHRoIiwibWluLXdpZHRoIiwibWF4LXdpZHRoIl0saT0wO2k8YS5sZW5ndGg7aSsrKWUuc3R5bGUuc2V0UHJvcGVydHkoYVtpXSwiMTAwJSIsImltcG9ydGFudCIpO2Uuc3R5bGUuc2V0UHJvcGVydHkoIm92ZXJmbG93IiwiaGlkZGVuIiwiaW1wb3J0YW50IiksZS5zdHlsZS5zZXRQcm9wZXJ0eSgicG9zaXRpb24iLCJmaXhlZCIsImltcG9ydGFudCIpfWlmKCF0aGlzLmN1cnJlbnRWaWV3JiZ0aGlzLmhhc0hvbWVWaWV3JiZ0aGlzLnJvdXRlclB1c2goIi8iKSwib2ZmbGluZSIhPT10aGlzLnBhZ2VTdGF0dXMpe2lmKCF0aGlzLmhhc0hvbWVWaWV3JiYhdGhpcy5wcmVjaGF0Rm9ybVN1Ym1pdHRlZCYmdGhpcy5pc1ByZWNoYXRFbmFibGVkKXJldHVybiB0aGlzLnJvdXRlclB1c2goInByZWNoYXQiKTtpZigodGhpcy5oYXNDaGF0U3RhcnRlZHx8MCE9PXRoaXMuY2hhdE9yZGVyKSYmdGhpcy5oYXNMaXZlQ2hhdCYmKHRoaXMucHJlY2hhdEZvcm1TdWJtaXR0ZWR8fCF0aGlzLmlzUHJlY2hhdEVuYWJsZWQpKXJldHVybiB0aGlzLnNob3dPdmVybGF5KCExKSx0aGlzLnJvdXRlclB1c2goImNoYXQiKTtpZih0aGlzLmN1cnJlbnRWaWV3JiYoIi8iIT09dGhpcy5jdXJyZW50Um91dGV8fHRoaXMuaGFzSG9tZVZpZXcpfHwodGhpcy5oYXNMaXZlQ2hhdCYmdGhpcy5oYXNDaGF0U3RhcnRlZHx8IXRoaXMuaGFzSG9tZVZpZXc/KHRoaXMucm91dGVyUHVzaCgiY2hhdCIpLHRoaXMuc2hvd092ZXJsYXkoITEpKTp0aGlzLnNob3dPdmVybGF5KCExKSksMD09PXRoaXMuZ2V0SGlzdG9yeS5sZW5ndGgpe2lmKCJjaGF0Ij09PXRoaXMuZGVmYXVsdFZpZXcmJiF0aGlzLnByZWNoYXRGb3JtU3VibWl0dGVkJiZ0aGlzLmlzUHJlY2hhdEVuYWJsZWQpcmV0dXJuIHZvaWQgdGhpcy5yb3V0ZXJQdXNoKCJwcmVjaGF0Iik7dmFyIHM9ImhvbWUiPT09dGhpcy5kZWZhdWx0Vmlldz8iLyI6dGhpcy5kZWZhdWx0Vmlldzt0aGlzLnJvdXRlclB1c2gocyl9fWVsc2UgdGhpcy5zaG93T3ZlcmxheSghMSl9LGxvYWRlZDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYodGhpcy5oYXNIb21lVmlld3x8KHRoaXMudXBkYXRlUm91dGUoe3BhdGg6ImNoYXQiLGhhc0JhY2s6ITF9KSx0aGlzLnVwZGF0ZVJvdXRlKHtwYXRoOiJwcmVjaGF0IixoYXNCYWNrOiExfSkpLHRoaXMuaXNXaW5kb3dlZHx8dGhpcy5pc0VtYmVkZGVkfHwibWF4Ij09PXRoaXMuY2hhdFdpbmRvd1N0YXRlP3RoaXMub3BlblZpZXcoKTp0aGlzLiRyZWZzWyJtYXgtd2lkZ2V0Il0uJGVsLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpLHRoaXMuJGV2ZW50QnVzLiRvbigiZm9ybU9wZW5lZCIsKGZ1bmN0aW9uKCl7Im1heCI9PT10LmNoYXRXaW5kb3dTdGF0ZT90LnJlc2l6ZUZyYW1lKCk6dC5mb3JtSXNPcGVuPSEwfSkpLHRoaXMuJGV2ZW50QnVzLiRvbigiZm9ybUNsb3NlZCIsKGZ1bmN0aW9uKCl7dC5yZXNpemVIZWlnaHRUbz1udWxsLHQuZm9ybUlzT3Blbj0hMX0pKSx0aGlzLiRldmVudEJ1cy4kb24oInJlc2V0U3RhdGUiLChmdW5jdGlvbigpe3QuJHN0b3JlLmNvbW1pdCgicm91dGVyL2NoYW5nZUN1cnJlbnRWaWV3IiwiLyIpLHQuJFRhd2tBY3Rpdml0eU1vbml0b3Iuc2V0dXBNYXhXaWRnZXRMaXN0ZW5lcnMoKX0pKSwhdGhpcy5pc1dpbmRvd2VkJiYhdGhpcy5pc0VtYmVkZGVkKXt2YXIgZSxhLGk9IiIscz0idGF3a01heE9wZW4iLG49InRhd2tNYXhDbG9zZSIscj10aGlzLiRlbC5pZDt0aGlzLmlzQm90dG9tPyhlPSJ0cmFuc2Zvcm06dHJhbnNsYXRlKDAsIDMwcHgpOyIsYT0idHJhbnNmb3JtOnRyYW5zbGF0ZSgwLCAwcHgpOyIpOnRoaXMuaXNDZW50ZXI/dGhpcy5pc1JpZ2h0PyhlPSJ0cmFuc2Zvcm06dHJhbnNsYXRlKDMwcHgsMCk7IixhPSJ0cmFuc2Zvcm06dHJhbnNsYXRlKDBweCwwKTsiKTooZT0idHJhbnNmb3JtOnRyYW5zbGF0ZSgtMzBweCwwKTsiLGE9InRyYW5zZm9ybTp0cmFuc2xhdGUoMHB4LDApOyIpOihlPSJ0cmFuc2Zvcm06dHJhbnNsYXRlKDAsIC0zMHB4KTsiLGE9InRyYW5zZm9ybTp0cmFuc2xhdGUoMCwgMHB4KTsiKTt2YXIgbyxjPSJ7MCV7b3BhY2l0eTowOyIrZSsiO310b3tvcGFjaXR5OjE7IithKyJ9fSI7aSs9IkBrZXlmcmFtZXMgIitzK2MsaSs9IkAtbW96LWtleWZyYW1lcyAiK3MrYyxpKz0iQC13ZWJraXQta2V5ZnJhbWVzICIrcytjLGkrPSIjIityKyIub3BlbnthbmltYXRpb24gOiAiK3MrIiAuMjVzIGVhc2UhaW1wb3J0YW50O30iLHRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fCh0aGlzLmlzUm91bmRXaWRnZXQsaSs9IkBrZXlmcmFtZXMgIituKyhvPSJ7ZnJvbXtvcGFjaXR5OiAxOyIrYSsiO310b3tvcGFjaXR5OiAwOyIrZSsiO319IiksaSs9IkAtbW96LWtleWZyYW1lcyAiK24rbyxpKz0iQC13ZWJraXQta2V5ZnJhbWVzICIrbitvLGkrPSIjIityKyIuY2xvc2Vke2FuaW1hdGlvbjogIituKyIgLjI1cyBlYXNlIWltcG9ydGFudH0iKTt2YXIgbD1kb2N1bWVudC5oZWFkLHU9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLGg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSxkPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGkpO2gudHlwZT0idGV4dC9jc3MiLHUuYXBwZW5kQ2hpbGQoaCksbC5hcHBlbmRDaGlsZCh1KSxoLnN0eWxlU2hlZXQ/aC5zdHlsZVNoZWV0LmNzc1RleHQ9ZC5ub2RlVmFsdWU6aC5hcHBlbmRDaGlsZChkKX10aGlzLiRUYXdrQWN0aXZpdHlNb25pdG9yLnNldHVwTWF4V2lkZ2V0TGlzdGVuZXJzKCl9LHdpZGdldEZvY3VzOmZ1bmN0aW9uKHQpe3RoaXMuJGV2ZW50QnVzLiRlbWl0KCJ3aWRnZXRPbkZvY3VzIix0KX0scmVzaXplRnJhbWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9MCxhPTAsaT0wO3RoaXMuaXNXaW5kb3dlZHx8dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8dGhpcy5pc0VtYmVkZGVkfHxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2lmKCF0LmlzT3ZlcmxheU9wZW4mJnQuJHJlZnNbIm1haW4tdG9vbGJhciJdJiZ0LiRyZWZzWyJtYWluLXRvb2xiYXIiXS4kZWwmJihlPXQuJHJlZnNbIm1haW4tdG9vbGJhciJdLiRlbC5vZmZzZXRIZWlnaHQpLHQuaXNPdmVybGF5T3BlbiYmdC4kcmVmc1sidmlldy1vdmVybGF5Il0mJnQuJHJlZnNbInZpZXctb3ZlcmxheSJdLiRlbC5jaGlsZHJlblswXSYmKGU9dC4kcmVmc1sidmlldy1vdmVybGF5Il0uJGVsLmNoaWxkcmVuWzBdLm9mZnNldEhlaWdodCksIXQuaXNPdmVybGF5T3BlbiYmdC4kcmVmc1sibWFpbi1mb290ZXIiXSYmKGE9dC4kcmVmc1sibWFpbi1mb290ZXIiXS4kZWwub2Zmc2V0SGVpZ2h0KSx0LmlzT3ZlcmxheU9wZW4mJnQuJHJlZnNbIm92ZXJsYXktZm9vdGVyIl0mJihhPXQuJHJlZnNbIm92ZXJsYXktZm9vdGVyIl0uJGVsLm9mZnNldEhlaWdodCksdC4kcmVmc1sicm91dGVyLXZpZXciXSYmdC4kcmVmc1sicm91dGVyLXZpZXciXS4kY2hpbGRyZW4ubGVuZ3RoKXt2YXIgcz10LiRyZWZzWyJyb3V0ZXItdmlldyJdLiRjaGlsZHJlbi5sZW5ndGg/dC4kcmVmc1sicm91dGVyLXZpZXciXS4kY2hpbGRyZW5bMF06bnVsbDtzJiZzLiRyZWZzJiZzLiRyZWZzWyJ0YXdrLWlubmVyLXBhbmVsIl0mJihpPXMuJHJlZnNbInRhd2staW5uZXItcGFuZWwiXS5vZmZzZXRIZWlnaHQpfWlmKCF0LiRyZWZzWyJyb3V0ZXItdmlldyJdLiRjaGlsZHJlbi5sZW5ndGgpe3ZhciBuOyJjaGF0Ij09PXQuY3VycmVudFJvdXRlJiZ0LiRyZWZzWyJjaGF0LXZpZXciXT9uPXQuJHJlZnNbImNoYXQtdmlldyJdLiRyZWZzWyJ0YXdrLWlubmVyLXBhbmVsIl06InByZWNoYXQiPT09dC5jdXJyZW50Um91dGUmJnQuJHJlZnNbInByZWNoYXQtdmlldyJdP249dC4kcmVmc1sicHJlY2hhdC12aWV3Il0uJHJlZnNbInRhd2staW5uZXItcGFuZWwiXTp0LiRyZWZzWyJob21lLXZpZXciXSYmKG49dC4kcmVmc1siaG9tZS12aWV3Il0uJHJlZnNbInRhd2staW5uZXItcGFuZWwiXSk7dmFyIHI9bj9uLmxhc3RDaGlsZDpudWxsO2lmKHImJjA9PT1yLm9mZnNldEhlaWdodClyZXR1cm4gdC5yZXNpemVIZWlnaHRUbz1udWxsO2k9bj9uLm9mZnNldEhlaWdodDowfXJldHVybiAwPT09aT90LnJlc2l6ZUhlaWdodFRvPW51bGw6KGk8MjUwJiYoaT0yNTApLDA9PT1pP3QucmVzaXplSGVpZ2h0VG89bnVsbDp2b2lkKChpKz1lK2EpJiZ0Lm1heERpbWVuc2lvbi5oZWlnaHQ+aSsxMCYmKHQucmVzaXplSGVpZ2h0VG89aSsxMCkpKX0pLDMwMCl9LGhhbmRsZU92ZXJsYXlCYWNrOmZ1bmN0aW9uKCl7dGhpcy5yb3V0ZXJCYWNrKCksIi8iIT09dGhpcy5jdXJyZW50Um91dGUmJiJtZXNzYWdlcyIhPT10aGlzLmN1cnJlbnRSb3V0ZXx8dGhpcy5zaG93T3ZlcmxheSghMSksdGhpcy5pc0RyYWdnZWRPdmVyPSExfSxjaGVja1JvdXRlTG9hZGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztjbGVhclRpbWVvdXQodGhpcy5yb3V0ZUxvYWRlZFRpbWVvdXQpLHZvaWQgMCE9PXRoaXMuJHJlZnNbInJvdXRlci12aWV3Il0/dGhpcy5pc0xvYWRlZD0hMDp0aGlzLnJvdXRlTG9hZGVkVGltZW91dD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuY2hlY2tSb3V0ZUxvYWRlZCgpfSksMWUzKX0saGFuZGxlRm9jdXM6ZnVuY3Rpb24oKXt0aGlzLnRvZ2dsZUZvY3VzKCEwKX0saGFuZGxlQmx1cjpmdW5jdGlvbigpe3RoaXMudG9nZ2xlRm9jdXMoITEpfSxjYWxjdWxhdGVIZWlnaHQ6ZnVuY3Rpb24oKXtpZih0aGlzLmlzV2luZG93ZWR8fHRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fHRoaXMuaXNFbWJlZGRlZHx8InNsaWRlIj09PXRoaXMub25DbGljayl0aGlzLmlmcmFtZS5oZWlnaHQ9IjEwMCUiO2Vsc2UgaWYodGhpcy5yZXNpemVIZWlnaHRUbyl0aGlzLmlmcmFtZS5oZWlnaHQ9dGhpcy5yZXNpemVIZWlnaHRUbysicHgiO2Vsc2V7aWYodGhpcy5pc1JvdW5kV2lkZ2V0KXt2YXIgdD10aGlzLm1pbkRlc2t0b3AuaGVpZ2h0K3RoaXMueU9mZnNldCsxMDtpZih0aGlzLm1heERpbWVuc2lvbi5oZWlnaHQrdD53aW5kb3cuaW5uZXJIZWlnaHQpcmV0dXJuIHZvaWQodGhpcy5pZnJhbWUuaGVpZ2h0PSIiLmNvbmNhdCh3aW5kb3cuaW5uZXJIZWlnaHQtdC0xMCwicHgiKSl9dGhpcy5tYXhEaW1lbnNpb24uaGVpZ2h0Pj13aW5kb3cuaW5uZXJIZWlnaHQ/dGhpcy5pZnJhbWUuaGVpZ2h0PSIiLmNvbmNhdCh3aW5kb3cuaW5uZXJIZWlnaHQtMTAsInB4Iik6dGhpcy5pZnJhbWUuaGVpZ2h0PSIiLmNvbmNhdCh0aGlzLm1heERpbWVuc2lvbi5oZWlnaHQsInB4Iil9fSxjYWxjdWxhdGVXaWR0aDpmdW5jdGlvbigpe2lmKHRoaXMuaXNXaW5kb3dlZHx8dGhpcy5tb2JpbGVCcm93c2VyTmFtZXx8dGhpcy5pc0VtYmVkZGVkKXRoaXMuaWZyYW1lLndpZHRoPSIxMDAlIjtlbHNle2lmKHRoaXMuaXNSb3VuZFdpZGdldCl7dmFyIHQ9dGhpcy5taW5EZXNrdG9wLndpZHRoK3RoaXMueE9mZnNldCsxMDtpZih0aGlzLm1heERpbWVuc2lvbi53aWR0aCt0PndpbmRvdy5pbm5lcldpZHRoKXJldHVybiB2b2lkKHRoaXMuaWZyYW1lLndpZHRoPSIiLmNvbmNhdCh3aW5kb3cuaW5uZXJXaWR0aC10LTEwLCJweCIpKX10aGlzLm1heERpbWVuc2lvbi53aWR0aD49d2luZG93LmlubmVyV2lkdGg/dGhpcy5pZnJhbWUud2lkdGg9IiIuY29uY2F0KHdpbmRvdy5pbm5lcldpZHRoLTEwLCJweCIpOnRoaXMuaWZyYW1lLndpZHRoPXRoaXMubWF4RGltZW5zaW9uLndpZHRoKyJweCJ9fSxjYWxjdWxhdGVJZnJhbWVTaXplOmZ1bmN0aW9uKCl7dGhpcy5jYWxjdWxhdGVIZWlnaHQoKSx0aGlzLmNhbGN1bGF0ZVdpZHRoKCl9LHNob3dNYXhXaWRnZXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuJHJlZnNbIm1heC13aWRnZXQiXS4kZWwuc3R5bGUuc2V0UHJvcGVydHkoImRpc3BsYXkiLCJibG9jayIsImltcG9ydGFudCIpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC5pc1Zpc2libGU9ITAsdC4kcmVmc1sibWF4LXdpZGdldCJdLiRlbC5zdHlsZS5zZXRQcm9wZXJ0eSgiYm94LXNoYWRvdyIsIjEwcHggMTBweCA0MHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpLCA1cHggMTRweCA4MHB4IDBweCByZ2JhKDI2LCAyNiwgMjYsIDAuMTIpIiwiaW1wb3J0YW50Iil9KSwyNTApfSxoaWRlTWF4V2lkZ2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LiRyZWZzWyJtYXgtd2lkZ2V0Il0uJGVsLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5IiwiYmxvY2siLCJpbXBvcnRhbnQiKSx0LmlzVmlzaWJsZT0hMSx0LiRyZWZzWyJtYXgtd2lkZ2V0Il0uJGVsLnN0eWxlLnNldFByb3BlcnR5KCJib3gtc2hhZG93Iiwibm9uZSIsImltcG9ydGFudCIpfSkpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC4kcmVmc1sibWF4LXdpZGdldCJdLiRlbC5zdHlsZS5zZXRQcm9wZXJ0eSgiZGlzcGxheSIsIm5vbmUiLCJpbXBvcnRhbnQiKX0pLDI1MCl9LGluamVjdFN0eWxlTm9kZTpmdW5jdGlvbigpe2lmKCF0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiYic2xpZGUiPT09dGhpcy5vbkNsaWNrKXt2YXIgdD0iLTEwMCUiLGU9dGhpcy4kcmVmc1sibWF4LXdpZGdldCJdLiRlbC5jb250ZW50RG9jdW1lbnQsYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO2EudHlwZT0idGV4dC9jc3MiLGEuY2xhc3NMaXN0LmFkZCgidGF3ay1keW5hbWljLXN0eWxlIiksdGhpcy5pc1JpZ2h0JiYodD0iMTAwJSIpLGEuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlxuXHRcdFx0XHQudGF3ay1tYXgtc2xpZGUtZW50ZXItYWN0aXZlLFxuXHRcdFx0XHQudGF3ay1tYXgtc2xpZGUtbGVhdmUtYWN0aXZlIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnRhd2stbWF4LXNsaWRlLWVudGVyIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoIi5jb25jYXQodCwiKTtcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnRhd2stbWF4LXNsaWRlLWVudGVyLXRvIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQudGF3ay1tYXgtc2xpZGUtbGVhdmUge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC50YXdrLW1heC1zbGlkZS1sZWF2ZS10byB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKCIpLmNvbmNhdCh0LCIpO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdCIpKSksZS5oZWFkLmFwcGVuZENoaWxkKGEpfX0scmVtb3ZlU3R5bGVOb2RlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy4kcmVmc1sibWF4LXdpZGdldCJdLiRlbC5jb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRhd2stZHluYW1pYy1zdHlsZSIpO3QmJnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KX19KSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLmNhbGN1bGF0ZUlmcmFtZVNpemUoKSx0aGlzLm5vWm9vbU1ldGFUYWc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibWV0YSIpLHRoaXMubm9ab29tTWV0YVRhZy5uYW1lPSJ2aWV3cG9ydCIsdGhpcy5jaGVja1JvdXRlTG9hZGVkKCksdGhpcy4kZWwuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdGhpcy5oYW5kbGVGb2N1cyksdGhpcy4kZWwuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIix0aGlzLmhhbmRsZUJsdXIpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuY2FsY3VsYXRlSWZyYW1lU2l6ZSksdGhpcy4kZXZlbnRCdXMuJG9uKCJzd2l0Y2hXaWRnZXQiLChmdW5jdGlvbigpe3Qua2V5PXMuSGVscGVyLmdlbmVyYXRlVVVJRCgpLHQuY2FsY3VsYXRlSWZyYW1lU2l6ZSgpLHQuJG5leHRUaWNrKChmdW5jdGlvbigpe3QuaW5qZWN0U3R5bGVOb2RlKCl9KSl9KSksdGhpcy4kZXZlbnRCdXMuJG9uKCJmb3JjZVVwZGF0ZSIsKGZ1bmN0aW9uKCl7dC5pbml0aWFsaXplZD0hMSx0LiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LmluaXRpYWxpemVkPSEwfSkpfSkpLHRoaXMuaW5qZWN0U3R5bGVOb2RlKCksdGhpcy4kZXZlbnRCdXMuJG9uKCJ1cGRhdGVXaWRnZXRTZXR0aW5ncyIsKGZ1bmN0aW9uKCl7dC5yZW1vdmVTdHlsZU5vZGUoKSx0LiRuZXh0VGljaygoZnVuY3Rpb24oKXt0LmluamVjdFN0eWxlTm9kZSgpfSkpfSkpLHRoaXMuJHN0b3JlLmRpc3BhdGNoKCJmb3JtL2dldCIpfSxiZWZvcmVEZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy4kZWwuY29udGVudFdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsdGhpcy5oYW5kbGVGb2N1cyksdGhpcy4kZWwuY29udGVudFdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIix0aGlzLmhhbmRsZUJsdXIpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuY2FsY3VsYXRlSWZyYW1lU2l6ZSl9fSx4dD1PYmplY3QoYy5hKShTdCwoZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dC5fc2VsZi5fYztyZXR1cm4gZSgiaS1mcmFtZSIse2tleTp0LmtleSxyZWY6Im1heC13aWRnZXQiLGF0dHJzOnt3aWR0aDp0LmlmcmFtZS53aWR0aCxoZWlnaHQ6dC5pZnJhbWUuaGVpZ2h0LGNzc0xpbms6dC5jc3NMaW5rLHN0eWxlT2JqZWN0OnQuc3R5bGVPYmplY3QsY2xhc3NTdHJpbmc6dC5jbGFzc1N0cmluZyxpc01heFdpZGdldDohMH19LFtlKCJ0cmFuc2l0aW9uIix7YXR0cnM6e3RhZzoiZGl2IixuYW1lOiJ0YXdrLW1heC1zbGlkZSJ9fSxbZSgiZGl2Iix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6dC5pc1Zpc2libGUsZXhwcmVzc2lvbjoiaXNWaXNpYmxlIn1dLHN0YXRpY0NsYXNzOiJ0YXdrLWhlaWdodC0xMDAiLG9uOnsiJnNjcm9sbCI6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuaGFuZGxlU2Nyb2xsLmFwcGx5KG51bGwsYXJndW1lbnRzKX19fSxbdC5pbml0aWFsaXplZD9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tYXgtY29udGFpbmVyIHRhd2stZmxleCB0YXdrLWZsZXgtY29sdW1uIixjbGFzczpbIXQuaXNUb29sYmFyRWxlbWVudHNWaXNpYmxlJiYidGF3ay1uby10b29sYmFyLWVsZW1lbnRzIl0sc3R5bGU6dC5tYXhpbWl6ZVN0eWxlLG9uOntjbGljazp0LndpZGdldEZvY3VzLGtleXVwOmZ1bmN0aW9uKGUpe3JldHVybiFlLnR5cGUuaW5kZXhPZigia2V5IikmJnQuX2soZS5rZXlDb2RlLCJlbnRlciIsMTMsZS5rZXksIkVudGVyIik/bnVsbDp0LndpZGdldEZvY3VzLmFwcGx5KG51bGwsYXJndW1lbnRzKX19fSxbZSgidG9vbGJhciIse3JlZjoibWFpbi10b29sYmFyIixhdHRyczp7Ym9yZGVyUmFkaXVzVG9wOnQuYm9yZGVyUmFkaXVzVG9wLHNob3dCYWNrQnV0dG9uOnQuc2hvd0JhY2tCdXR0b24sY3VycmVudFZpZXc6dC5jdXJyZW50VmlldyxzaG93V2ViUnRjQnV0dG9uczohMCxzaG93QWdlbnRBdmF0YXJzOiEwfSxvbjp7c2hvd0VuZENoYXQ6ZnVuY3Rpb24oZSl7dC5zaG93RW5kQ2hhdD0hMH19fSksdC5pc1dlYnJ0Y0VuYWJsZWQ/ZSgiY2FsbC13aWRnZXQiKTp0Ll9lKCksZSgidGF3ay1vdmVybGF5Iix7cmVmOiJ2aWV3LW92ZXJsYXkiLHN0eWxlOntib3JkZXJSYWRpdXM6dC5ib3JkZXJSYWRpdXN9LGF0dHJzOntpc09wZW46dC5pc092ZXJsYXlPcGVuLHRpdGxlOnQuY3VycmVudFZpZXcmJnQuY3VycmVudFZpZXcudGl0bGU/dC5jdXJyZW50Vmlldy50aXRsZSgpOiIiLGJhY2tUb29sdGlwVGV4dDp0LiRpMThuKCJyb2xsb3ZlciIsImJhY2siKSxoZWFkZXJDbGFzczoidGF3ay1jdXN0b20tY29sb3IiLG9wdGlvbnM6Imhpc3RvcnktY2hhdCI9PT10LmN1cnJlbnRSb3V0ZT97YWxpZ25BbGxCdXR0b25zOiJsZWZ0In06e319LG9uOntnb0JhY2s6dC5oYW5kbGVPdmVybGF5QmFja319LFtlKCJkaXYiLHthdHRyczp7c2xvdDoib3B0aW9ucyJ9LHNsb3Q6Im9wdGlvbnMifSxbdC5pc092ZXJsYXlPcGVuP2UoInRvb2xiYXIiLHthdHRyczp7Ym9yZGVyUmFkaXVzVG9wOnQuYm9yZGVyUmFkaXVzVG9wLGN1cnJlbnRWaWV3OnQuY3VycmVudFZpZXd9LG9uOntzaG93RW5kQ2hhdDpmdW5jdGlvbihlKXt0LnNob3dFbmRDaGF0PSEwfX19KTp0Ll9lKCldLDEpLGUoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWZsZXggdGF3ay1mbGV4LWNvbHVtbiIsc3RhdGljU3R5bGU6e2hlaWdodDoiMTAwJSIsb3ZlcmZsb3c6ImhpZGRlbiJ9fSxbZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtY29sdW1uIHRhd2stZmxleC0xIHRhd2stY3VzdG9tLWZsZXgtMSJ9LFtlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1yb3V0ZXItdmlldyB0YXdrLWZsZXggdGF3ay1mbGV4LTEgdGF3ay1jdXN0b20tZmxleC0xIn0sW2UoInRhd2stcm91dGVyLXZpZXciLHtyZWY6InJvdXRlci12aWV3In0pXSwxKSxlKCJtYXhpbWl6ZS1mb290ZXIiLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZTp0LmlzT3ZlcmxheU9wZW4sZXhwcmVzc2lvbjoiaXNPdmVybGF5T3BlbiJ9XSxyZWY6Im92ZXJsYXktZm9vdGVyIn0pXSwxKV0pXSksdC5pc0luYWN0aXZlP2UoImluYWN0aXZlLW92ZXJsYXkiKTp0Ll9lKCksdC5zaG93RW5kQ2hhdCYmIXQuaGFzQ2hhdEVuZGVkP2UoImVuZC1jaGF0Iix7b246e2NhbmNlbEVuZDpmdW5jdGlvbihlKXt0LnNob3dFbmRDaGF0PSExfX19KTp0Ll9lKCksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stZmxleCB0YXdrLWZsZXgtY29sdW1uIHRhd2stZmxleC0xIn0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXJvdXRlci12aWV3IHRhd2stZmxleCB0YXdrLWZsZXgtMSJ9LFt0LmlzTG9hZGVkP3QuX2UoKTplKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mbGV4IHRhd2stZmxleC1taWRkbGUgdGF3ay1mbGV4LWNlbnRlciIsc3R5bGU6e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGxlZnQ6MCx0b3A6MCxwb3NpdGlvbjoiYWJzb2x1dGUifX0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXNwaW5uZXItbG9hZGVyIixzdHlsZTp7bWFyZ2luOiIxcHgifX0pXSksZSgidHJhbnNpdGlvbiIse2F0dHJzOntuYW1lOiJzbGlkZS1mYWRlIixtb2RlOiJvdXQtaW4ifX0sWyF0Lmhhc0xpdmVDaGF0fHx0Lm5lZWRDb25zZW50fHwhdC5jaGF0T3JkZXImJiF0Lmhhc0NoYXRTdGFydGVkJiZ0Lmhhc0hvbWVWaWV3P3QuX2UoKTplKCJjaGF0LXZpZXciLHtkaXJlY3RpdmVzOlt7bmFtZToic2hvdyIscmF3TmFtZToidi1zaG93Iix2YWx1ZToiY2hhdCI9PT10LmN1cnJlbnRSb3V0ZXx8ImFnZW50cyI9PT10LmN1cnJlbnRSb3V0ZSxleHByZXNzaW9uOiJjdXJyZW50Um91dGUgPT09ICdjaGF0JyB8fCBjdXJyZW50Um91dGUgPT09ICdhZ2VudHMnIn1dLHJlZjoiY2hhdC12aWV3In0pXSwxKSxlKCJ0cmFuc2l0aW9uIix7YXR0cnM6e25hbWU6InNsaWRlLWZhZGUiLG1vZGU6Im91dC1pbiJ9fSxbdC5oYXNMaXZlQ2hhdCYmIXQubmVlZENvbnNlbnQmJnQuaXNQcmVjaGF0RW5hYmxlZCYmdC5pc1JlYWR5JiYhdC5wcmVjaGF0Rm9ybVN1Ym1pdHRlZCYmKCJwcmVjaGF0Ij09PXQuY3VycmVudFJvdXRlfHwhdC5oYXNIb21lVmlld3x8dC5oYXNQcmVjaGF0SGlzdG9yeSYmIXQucHJlY2hhdEZvcm1TdWJtaXR0ZWQpP2UoInByZWNoYXQtdmlldyIse3JlZjoicHJlY2hhdC12aWV3In0pOnQuX2UoKV0sMSksZSgidHJhbnNpdGlvbiIse2F0dHJzOntuYW1lOiJzbGlkZS1mYWRlIixtb2RlOiJvdXQtaW4ifX0sW3QuaGFzSG9tZVZpZXd8fHQubmVlZENvbnNlbnQ/ZSgiaG9tZS12aWV3Iix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6dC5pc0hvbWVWaWV3VmlzaWJsZSYmIXQuaXNPdmVybGF5T3BlbixleHByZXNzaW9uOiJpc0hvbWVWaWV3VmlzaWJsZSAmJiAhaXNPdmVybGF5T3BlbiJ9XSxyZWY6ImhvbWUtdmlldyIsYXR0cnM6e2lzVmlzaWJsZTp0LmlzSG9tZVZpZXdWaXNpYmxlJiYhdC5pc092ZXJsYXlPcGVufX0pOnQuX2UoKV0sMSksZSgidHJhbnNpdGlvbiIse2F0dHJzOntuYW1lOiJzbGlkZS1mYWRlIixtb2RlOiJvdXQtaW4ifX0sWyJtZXNzYWdlcyI9PT10LmN1cnJlbnRSb3V0ZT9lKCJtZXNzYWdlcy12aWV3Iix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6Im1lc3NhZ2VzIj09PXQuY3VycmVudFJvdXRlJiYhdC5pc092ZXJsYXlPcGVuLGV4cHJlc3Npb246ImN1cnJlbnRSb3V0ZSA9PT0gJ21lc3NhZ2VzJyAmJiAhaXNPdmVybGF5T3BlbiJ9XSxyZWY6Im1lc3NhZ2VzLXZpZXcifSk6dC5fZSgpXSwxKV0sMSksZSgibWF4aW1pemUtZm9vdGVyIix7cmVmOiJtYWluLWZvb3RlciJ9KV0sMSksZSgidHJhbnNpdGlvbiIse2F0dHJzOntuYW1lOiJzbGlkZS1mYWRlIn19LFt0LmlzUmVjb25uZWN0aW5nP2UoInRhd2stYWxlcnQiLHtzdGF0aWNTdHlsZTp7cG9zaXRpb246ImFic29sdXRlIixib3R0b206IjE2cHgiLGxlZnQ6IjE2cHgiLHJpZ2h0OiIxNnB4Iix3aWR0aDoiYXV0byIsInotaW5kZXgiOiIxMCJ9LGF0dHJzOnt0aXRsZTp0LiRpMThuKCJub3RpZmljYXRpb25zIiwicmVjb25uZWN0aW5nIiksc3RhdHVzOiJkYW5nZXIiLGRlc2NyaXB0aW9uOiIiLGljb246ImVycm9yIn19KTp0Ll9lKCldLDEpXSwxKTp0Ll9lKCldKV0pXSwxKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTtlLmRlZmF1bHQ9eHQuZXhwb3J0c319XSk7"}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/user_rankings/67b437011dbf91739863809.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.866Z","timestamp":1785143153866,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/user_rankings/67b437011dbf91739863809.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 07:30:09 GMT\r\netag: \"3ba5-67b43701-4ed3338b386f51ae;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 15269\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":15269,"size_decoded":15666,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"d27a2fd8d4ef8287621d98a730b2c4d6","sha1":"e4410b77283df07a5e81b20584488e39e8e97d6d","sha256":"a2efb4d05b8b24125a907060c273802df4054a1d825edca5036d05d79f17eb9d","sha512":"6dcccf4fd046ef58a477bce361280826704ac03aaf700a50606eba7981ee8affc5a5bcb151714f8a6b9511744cf8606049646aafe79afb80ff1933868f852483","ssdeep":"192:0SPmkxnOMghNfRQS9cYyi5dhmsEC2Zvurg8sJPpvpkCLXKUKaar3EO/buVcgjmvG:0rkhry2Y5dhjr2Zv1pRle3BiCgg2K7kd","tlshash":"c962c06b7615125c293d007c94cbef923f726709e26171e0b93eab4170f1f81a0e9e8e","first_seen":"2025-09-30T11:01:26.466721Z","last_seen":"2026-07-27T12:18:57.815978Z","times_seen":16,"resource_available":false,"data":"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"}},"time_used":117,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":113,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/templates/neo_dark/css/main.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.633Z","timestamp":1785143153633,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/css/main.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"2900b-67b374e4-9b1acddd4c838927;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 19596\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":167947,"size_decoded":20038,"mime_type":"text/css","magic":"assembler source, ASCII text","md5":"2200a8555309a6a2838e4e4f85cfa988","sha1":"9a45172b05419eda46d63156f4625357a18c8509","sha256":"7a54e30f54d3999cb23309dafba846d3fe91a636a9d1d1f83ee2a34c44e96606","sha512":"1b706c49355f6b0bc9b9135dccbc1cc29f93ef419daf50f429d1aefa87bb8268421424f9fc5c09d1abfab10d2308832bfec3b0bd8d6e15406cf17c33a1c1e216","ssdeep":"3072:TZVwIZHnAamldYLZFSqLZFS/LZFSaLZFSBLZFSvLZFSjLZFS6goSfm8I3XLZFSPn:TZVwSHnADldYLZFSqLZFS/LZFSaLZFSO","tlshash":"b6f39777a6881848311fe05cafe6dfe9173f5053ae1e0d9eb281352cd3886e94573a8d","first_seen":"2025-12-19T04:10:18.959281Z","last_seen":"2026-07-30T06:02:32.567423Z","times_seen":11,"resource_available":false,"data":"LyoKICAqKioqKioqKioqKioqKioqKioqKioqKiogQ1NTIHRhYmxlIG9mIGNvbnRlbnQgKioqKioqKioqKioqKioqKioqKioqKioqCgogIDEpICBkZWZhdWx0IG1hcmdpbiBjc3MKICAyKSAgZGVmYXVsdCBwYWRkaW5nIGNzcwogIDMpICByZXNldCBjc3MKICA0KSAgZ2xvYmFsIGNzcwogIDUpICBoZWFkZXItc2VjdGlvbgogIDYpICBoZXJvLXNlY3Rpb24KICA3KSAgaW5uZXItaGVyby1zZWN0aW9uCiAgOCkgIG5ldy1wcm9kdWN0LXNlY3Rpb24KICA5KSAgYnJhbmQtc2VjdGlvbgogIDEwKSBhZGQtc2VjdGlvbgogIDExKSBwcm9kdWN0LXF1aWNrLXZpZXcKICAxMikgdHJlbmRpbmctc2VjdGlvbgogIDEzKSBsYXRlc3QtcHJvZHVjdC1zZWN0aW9uCiAgMTQpIHRlc3RpbW9uaWFsLXNlY3Rpb24KICAxNSkgYmxvZy1zZWN0aW9uCiAgMTYpIGJsb2ctZGV0YWlscy1zZWN0aW9uCiAgMTcpIGZlYXR1cmUtc2VjdGlvbgogIDE4KSB0b3AtY29sbGVjdGlvbi1zZWN0aW9uCiAgMTkpIGJlc3Qtc2VsbGVyLXNlY3Rpb24KICAyMCkgb3ZlcnZpZXctc2VjdGlvbgogIDIxKSBwcm9kdWN0LXNlY3Rpb24KICAyMikgYWJvdXQtc2VjdGlvbgogIDIzKSB0ZWFtLXNlY3Rpb24KICAyNCkgcHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24KICAyNSkgY2FydC1zZWN0aW9uCiAgMjYpIHByaXZhY3ktc2VjdGlvbgogIDI3KSBjb250YWN0LWl0ZW0td3JhcHBlcgogIDI4KSBhY3Rpb24tc2VjdGlvbgogIDI5KSBwcm9tb3Rpb24tc2VjdGlvbgogIDMwKSBwcm9kdWN0LXRyYWNraW5nLXNlY3Rpb24KICAzMSkgZmFxLXNlY3Rpb24KICAzMikgc2lnbnVwLWFyZWEKICAzMykgc2lnbmluLWFyZWEKICAzNCkgZXJyb3ItYXJlYQogIDM1KSBmb290ZXItc2VjdGlvbgogIDM2KSBwcm9kdWN0LXNpZGViYXIKICAzNykgY29sb3ItdmVyc2lvbi10d28KCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqLwovKiBkZWZhdWx0IG1hcmdpbiBjc3Mgc3RhcnQgKi8KCgo6cm9vdHsKCS0tcHJpbWFyeTogMjQ1IDgyJSA2NyU7CiAgICAtLXNlY29uZGFyeTogMjI0IDQwJSAyNyU7CiAgICAtLXN1Y2Nlc3M6IDE0NyA2NyUgNDclOwogICAgLS1kYW5nZXI6IDM2MCA3OCUgNjIlOwogICAgLS13YXJuaW5nOiAyOSAxMDAlIDYzJTsKICAgIC0taW5mbzogMjAwIDkwJSA1MyU7CiAgICAtLWRhcms6IDIwNiA3MCUgMTElOwoJLS1iYXNlLWg6IDA7CiAgICAtLWJhc2UtczogOTglOwogICAgLS1iYXNlLWw6IDU1JTsKICAgIC0tYmFzZTogdmFyKC0tYmFzZS1oKSB2YXIoLS1iYXNlLXMpIHZhcigtLWJhc2UtbCk7CgktLXNlY29uZF9jb2xvcjogMjM1LDgxJSwxMSU7Cn0KCi50ZXh0LS1wcmltYXJ5IHsKICAgIGNvbG9yOiBoc2wodmFyKC0tcHJpbWFyeSkpICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LS1zZWNvbmRhcnkgewogICAgY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRhcnkpKSAhaW1wb3J0YW50Owp9CgoudGV4dC0tc3VjY2VzcyB7CiAgICBjb2xvcjogaHNsKHZhcigtLXN1Y2Nlc3MpKSAhaW1wb3J0YW50Owp9CgoudGV4dC0tZGFuZ2VyIHsKICAgIGNvbG9yOiBoc2wodmFyKC0tZGFuZ2VyKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLXdhcm5pbmcgewogICAgY29sb3I6IGhzbCh2YXIoLS13YXJuaW5nKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLWluZm8gewogICAgY29sb3I6IGhzbCh2YXIoLS1pbmZvKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLWRhcmsgewogICAgY29sb3I6IGhzbCh2YXIoLS1kYXJrKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLW11dGVkIHsKICAgIGNvbG9yOiBoc2wodmFyKC0tbXV0ZWQpKSAhaW1wb3J0YW50Owp9CgoudGV4dC0tYmFzZSB7CiAgICBjb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50Owp9CgoudGV4dC0tYm9keSB7CiAgICBjb2xvcjogaHNsKHZhcigtLWJvZHkpKSAhaW1wb3J0YW50Owp9CgovKiBiYWNrZ3JvdW5kIGNvbG9yIGNzcyBzdGFydCAqLwouYmctLXByaW1hcnkgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXByaW1hcnkpKSAhaW1wb3J0YW50Owp9CgouYmctLXNlY29uZGFyeSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tc2Vjb25kYXJ5KSkgIWltcG9ydGFudDsKfQoKLmJnLS1zdWNjZXNzIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1zdWNjZXNzKSkgIWltcG9ydGFudDsKfQoKLmJnLS1kYW5nZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWRhbmdlcikpICFpbXBvcnRhbnQ7Cn0KCi5iZy0td2FybmluZyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0td2FybmluZykpICFpbXBvcnRhbnQ7Cn0KCi5iZy0taW5mbyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0taW5mbykpICFpbXBvcnRhbnQ7Cn0KCi5iZy0tZGFyayB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tZGFyaykpICFpbXBvcnRhbnQ7Cn0KCi5iZy0tbGlnaHQgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWxpZ2h0KSkgIWltcG9ydGFudDsKfQoKLmJnLS1iYXNlIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1iYXNlKSkgIWltcG9ydGFudDsKfQoKLmJnLS1hY2NlbnQgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWFjY2VudCkpICFpbXBvcnRhbnQ7Cn0KCi5teS01IHsKCW1hcmdpbjogNXB4IDA7Cn0KCi5teS0xMCB7CgltYXJnaW46IDEwcHggMDsKfQoKLm15LTE1IHsKCW1hcmdpbjogMTVweCAwOwp9CgoubXktMjAgewoJbWFyZ2luOiAyMHB4IDA7Cn0KCi5teS0yNSB7CgltYXJnaW46IDI1cHggMDsKfQoKLm15LTMwIHsKCW1hcmdpbjogMzBweCAwOwp9CgoubXktMzUgewoJbWFyZ2luOiAzNXB4IDA7Cn0KCi5teS00MCB7CgltYXJnaW46IDQwcHggMDsKfQoKLm15LTQ1IHsKCW1hcmdpbjogNDVweCAwOwp9CgoubXktNTAgewoJbWFyZ2luOiA1MHB4IDA7Cn0KCi5teS01NSB7CgltYXJnaW46IDU1cHggMDsKfQoKLm15LTYwIHsKCW1hcmdpbjogNjBweCAwOwp9CgoubXktNjUgewoJbWFyZ2luOiA2NXB4IDA7Cn0KCi5teS03MCB7CgltYXJnaW46IDcwcHggMDsKfQoKLm15LTc1IHsKCW1hcmdpbjogNzVweCAwOwp9CgoubXktODAgewoJbWFyZ2luOiA4MHB4IDA7Cn0KCi5teS04NSB7CgltYXJnaW46IDg1cHggMDsKfQoKLm15LTkwIHsKCW1hcmdpbjogOTBweCAwOwp9CgoubXktOTUgewoJbWFyZ2luOiA5NXB4IDA7Cn0KCi5teS0xMDAgewoJbWFyZ2luOiAxMDBweCAwOwp9CgoubXgtNSB7CgltYXJnaW46IDAgNXB4Owp9CgoubXgtMTAgewoJbWFyZ2luOiAwIDEwcHg7Cn0KCi5teC0xNSB7CgltYXJnaW46IDAgMTVweDsKfQoKLm14LTIwIHsKCW1hcmdpbjogMCAyMHB4Owp9CgoubXgtMjUgewoJbWFyZ2luOiAwIDI1cHg7Cn0KCi5teC0zMCB7CgltYXJnaW46IDAgMzBweDsKfQoKLm14LTM1IHsKCW1hcmdpbjogMCAzNXB4Owp9CgoubXgtNDAgewoJbWFyZ2luOiAwIDQwcHg7Cn0KCi5teC00NSB7CgltYXJnaW46IDAgNDVweDsKfQoKLm14LTUwIHsKCW1hcmdpbjogMCA1MHB4Owp9CgoubXgtNTUgewoJbWFyZ2luOiAwIDU1cHg7Cn0KCi5teC02MCB7CgltYXJnaW46IDAgNjBweDsKfQoKLm14LTY1IHsKCW1hcmdpbjogMCA2NXB4Owp9CgoubXgtNzAgewoJbWFyZ2luOiAwIDcwcHg7Cn0KCi5teC03NSB7CgltYXJnaW46IDAgNzVweDsKfQoKLm14LTgwIHsKCW1hcmdpbjogMCA4MHB4Owp9CgoubXgtODUgewoJbWFyZ2luOiAwIDg1cHg7Cn0KCi5teC05MCB7CgltYXJnaW46IDAgOTBweDsKfQoKLm14LTk1IHsKCW1hcmdpbjogMCA5NXB4Owp9CgoubXgtMTAwIHsKCW1hcmdpbjogMCAxMDBweDsKfQoKLm10LTUgewoJbWFyZ2luLXRvcDogNXB4Owp9CgoubXQtMTAgewoJbWFyZ2luLXRvcDogMTBweDsKfQoKLm10LTE1IHsKCW1hcmdpbi10b3A6IDE1cHg7Cn0KCi5tdC0yMCB7CgltYXJnaW4tdG9wOiAyMHB4Owp9CgoubXQtMjUgewoJbWFyZ2luLXRvcDogMjVweDsKfQoKLm10LTMwIHsKCW1hcmdpbi10b3A6IDMwcHg7Cn0KCi5tdC0zNSB7CgltYXJnaW4tdG9wOiAzNXB4Owp9CgoubXQtNDAgewoJbWFyZ2luLXRvcDogNDBweDsKfQoKLm10LTQ1IHsKCW1hcmdpbi10b3A6IDQ1cHg7Cn0KCi5tdC01MCB7CgltYXJnaW4tdG9wOiA1MHB4Owp9CgoubXQtNTUgewoJbWFyZ2luLXRvcDogNTVweDsKfQoKLm10LTYwIHsKCW1hcmdpbi10b3A6IDYwcHg7Cn0KCi5tdC02NSB7CgltYXJnaW4tdG9wOiA2NXB4Owp9CgoubXQtNzAgewoJbWFyZ2luLXRvcDogNzBweDsKfQoKLm10LTc1IHsKCW1hcmdpbi10b3A6IDc1cHg7Cn0KCi5tdC04MCB7CgltYXJnaW4tdG9wOiA4MHB4Owp9CgoubXQtODUgewoJbWFyZ2luLXRvcDogODVweDsKfQoKLm10LTkwIHsKCW1hcmdpbi10b3A6IDkwcHg7Cn0KCi5tdC05NSB7CgltYXJnaW4tdG9wOiA5NXB4Owp9CgoubXQtMTAwIHsKCW1hcmdpbi10b3A6IDEwMHB4Owp9CgoubWItNSB7CgltYXJnaW4tYm90dG9tOiA1cHg7Cn0KCi5tYi0xMCB7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9CgoubWItMTUgewoJbWFyZ2luLWJvdHRvbTogMTVweDsKfQoKLm1iLTIwIHsKCW1hcmdpbi1ib3R0b206IDIwcHg7Cn0KCi5tYi0yNSB7CgltYXJnaW4tYm90dG9tOiAyNXB4Owp9CgoubWItMzAgewoJbWFyZ2luLWJvdHRvbTogMzBweDsKfQoKLm1iLTM1IHsKCW1hcmdpbi1ib3R0b206IDM1cHg7Cn0KCi5tYi00MCB7CgltYXJnaW4tYm90dG9tOiA0MHB4Owp9CgoubWItNDUgewoJbWFyZ2luLWJvdHRvbTogNDVweDsKfQoKLm1iLTUwIHsKCW1hcmdpbi1ib3R0b206IDUwcHg7Cn0KCi5tYi01NSB7CgltYXJnaW4tYm90dG9tOiA1NXB4Owp9CgoubWItNjAgewoJbWFyZ2luLWJvdHRvbTogNjBweDsKfQoKLm1iLTY1IHsKCW1hcmdpbi1ib3R0b206IDY1cHg7Cn0KCi5tYi03MCB7CgltYXJnaW4tYm90dG9tOiA3MHB4Owp9CgoubWItNzUgewoJbWFyZ2luLWJvdHRvbTogNzVweDsKfQoKLm1iLTgwIHsKCW1hcmdpbi1ib3R0b206IDgwcHg7Cn0KCi5tYi04NSB7CgltYXJnaW4tYm90dG9tOiA4NXB4Owp9CgoubWItOTAgewoJbWFyZ2luLWJvdHRvbTogOTBweDsKfQoKLm1iLTk1IHsKCW1hcmdpbi1ib3R0b206IDk1cHg7Cn0KCi5tYi0xMDAgewoJbWFyZ2luLWJvdHRvbTogMTAwcHg7Cn0KCi5tbC01IHsKCW1hcmdpbi1sZWZ0OiA1cHg7Cn0KCi5tbC0xMCB7CgltYXJnaW4tbGVmdDogMTBweDsKfQoKLm1sLTE1IHsKCW1hcmdpbi1sZWZ0OiAxNXB4Owp9CgoubWwtMjAgewoJbWFyZ2luLWxlZnQ6IDIwcHg7Cn0KCi5tbC0yNSB7CgltYXJnaW4tbGVmdDogMjVweDsKfQoKLm1sLTMwIHsKCW1hcmdpbi1sZWZ0OiAzMHB4Owp9CgoubWwtMzUgewoJbWFyZ2luLWxlZnQ6IDM1cHg7Cn0KCi5tbC00MCB7CgltYXJnaW4tbGVmdDogNDBweDsKfQoKLm1sLTQ1IHsKCW1hcmdpbi1sZWZ0OiA0NXB4Owp9CgoubWwtNTAgewoJbWFyZ2luLWxlZnQ6IDUwcHg7Cn0KCi5tbC01NSB7CgltYXJnaW4tbGVmdDogNTVweDsKfQoKLm1sLTYwIHsKCW1hcmdpbi1sZWZ0OiA2MHB4Owp9CgoubWwtNjUgewoJbWFyZ2luLWxlZnQ6IDY1cHg7Cn0KCi5tbC03MCB7CgltYXJnaW4tbGVmdDogNzBweDsKfQoKLm1sLTc1IHsKCW1hcmdpbi1sZWZ0OiA3NXB4Owp9CgoubWwtODAgewoJbWFyZ2luLWxlZnQ6IDgwcHg7Cn0KCi5tbC04NSB7CgltYXJnaW4tbGVmdDogODVweDsKfQoKLm1sLTkwIHsKCW1hcmdpbi1sZWZ0OiA5MHB4Owp9CgoubWwtOTUgewoJbWFyZ2luLWxlZnQ6IDk1cHg7Cn0KCi5tbC0xMDAgewoJbWFyZ2luLWxlZnQ6IDEwMHB4Owp9CgoubXItNSB7CgltYXJnaW4tcmlnaHQ6IDVweDsKfQoKLm1yLTEwIHsKCW1hcmdpbi1yaWdodDogMTBweDsKfQoKLm1yLTE1IHsKCW1hcmdpbi1yaWdodDogMTVweDsKfQoKLm1yLTIwIHsKCW1hcmdpbi1yaWdodDogMjBweDsKfQoKLm1yLTI1IHsKCW1hcmdpbi1yaWdodDogMjVweDsKfQoKLm1yLTMwIHsKCW1hcmdpbi1yaWdodDogMzBweDsKfQoKLm1yLTM1IHsKCW1hcmdpbi1yaWdodDogMzVweDsKfQoKLm1yLTQwIHsKCW1hcmdpbi1yaWdodDogNDBweDsKfQoKLm1yLTQ1IHsKCW1hcmdpbi1yaWdodDogNDVweDsKfQoKLm1yLTUwIHsKCW1hcmdpbi1yaWdodDogNTBweDsKfQoKLm1yLTU1IHsKCW1hcmdpbi1yaWdodDogNTVweDsKfQoKLm1yLTYwIHsKCW1hcmdpbi1yaWdodDogNjBweDsKfQoKLm1yLTY1IHsKCW1hcmdpbi1yaWdodDogNjVweDsKfQoKLm1yLTcwIHsKCW1hcmdpbi1yaWdodDogNzBweDsKfQoKLm1yLTc1IHsKCW1hcmdpbi1yaWdodDogNzVweDsKfQoKLm1yLTgwIHsKCW1hcmdpbi1yaWdodDogODBweDsKfQoKLm1yLTg1IHsKCW1hcmdpbi1yaWdodDogODVweDsKfQoKLm1yLTkwIHsKCW1hcmdpbi1yaWdodDogOTBweDsKfQoKLm1yLTk1IHsKCW1hcmdpbi1yaWdodDogOTVweDsKfQoKLm1yLTEwMCB7CgltYXJnaW4tcmlnaHQ6IDEwMHB4Owp9CgoubXktbm9uZS01IHsKCW1hcmdpbjogLTVweCAwOwp9CgoubXktbm9uZS0xMCB7CgltYXJnaW46IC0xMHB4IDA7Cn0KCi5teS1ub25lLTE1IHsKCW1hcmdpbjogLTE1cHggMDsKfQoKLm15LW5vbmUtMjAgewoJbWFyZ2luOiAtMjBweCAwOwp9CgoubXktbm9uZS0yNSB7CgltYXJnaW46IC0yNXB4IDA7Cn0KCi5teS1ub25lLTMwIHsKCW1hcmdpbjogLTMwcHggMDsKfQoKLm15LW5vbmUtMzUgewoJbWFyZ2luOiAtMzVweCAwOwp9CgoubXktbm9uZS00MCB7CgltYXJnaW46IC00MHB4IDA7Cn0KCi5teS1ub25lLTQ1IHsKCW1hcmdpbjogLTQ1cHggMDsKfQoKLm15LW5vbmUtNTAgewoJbWFyZ2luOiAtNTBweCAwOwp9CgoubXgtbm9uZS01IHsKCW1hcmdpbjogMCAtNXB4Owp9CgoubXgtbm9uZS0xMCB7CgltYXJnaW46IDAgLTEwcHg7Cn0KCi5teC1ub25lLTE1IHsKCW1hcmdpbjogMCAtMTVweDsKfQoKLm14LW5vbmUtMjAgewoJbWFyZ2luOiAwIC0yMHB4Owp9CgoubXgtbm9uZS0yNSB7CgltYXJnaW46IDAgLTI1cHg7Cn0KCi5teC1ub25lLTMwIHsKCW1hcmdpbjogMCAtMzBweDsKfQoKLm14LW5vbmUtMzUgewoJbWFyZ2luOiAwIC0zNXB4Owp9CgoubXgtbm9uZS00MCB7CgltYXJnaW46IDAgLTQwcHg7Cn0KCi5teC1ub25lLTQ1IHsKCW1hcmdpbjogMCAtNDVweDsKfQoKLm14LW5vbmUtNTAgewoJbWFyZ2luOiAwIC01MHB4Owp9CgoubXQtbm9uZS01IHsKCW1hcmdpbi10b3A6IC01cHg7Cn0KCi5tdC1ub25lLTEwIHsKCW1hcmdpbi10b3A6IC0xMHB4Owp9CgoubXQtbm9uZS0xNSB7CgltYXJnaW4tdG9wOiAtMTVweDsKfQoKLm10LW5vbmUtMjAgewoJbWFyZ2luLXRvcDogLTIwcHg7Cn0KCi5tdC1ub25lLTI1IHsKCW1hcmdpbi10b3A6IC0yNXB4Owp9CgoubXQtbm9uZS0zMCB7CgltYXJnaW4tdG9wOiAtMzBweDsKfQoKLm10LW5vbmUtMzUgewoJbWFyZ2luLXRvcDogLTM1cHg7Cn0KCi5tdC1ub25lLTQwIHsKCW1hcmdpbi10b3A6IC00MHB4Owp9CgoubXQtbm9uZS00NSB7CgltYXJnaW4tdG9wOiAtNDVweDsKfQoKLm10LW5vbmUtNTAgewoJbWFyZ2luLXRvcDogLTUwcHg7Cn0KCi5tYi1ub25lLTUgewoJbWFyZ2luLWJvdHRvbTogLTVweDsKfQoKLm1iLW5vbmUtMTAgewoJbWFyZ2luLWJvdHRvbTogLTEwcHg7Cn0KCi5tYi1ub25lLTE1IHsKCW1hcmdpbi1ib3R0b206IC0xNXB4Owp9CgoubWItbm9uZS0yMCB7CgltYXJnaW4tYm90dG9tOiAtMjBweDsKfQoKLm1iLW5vbmUtMjUgewoJbWFyZ2luLWJvdHRvbTogLTI1cHg7Cn0KCi5tYi1ub25lLTMwIHsKCW1hcmdpbi1ib3R0b206IC0zMHB4Owp9CgoubWItbm9uZS0zNSB7CgltYXJnaW4tYm90dG9tOiAtMzVweDsKfQoKLm1iLW5vbmUtNDAgewoJbWFyZ2luLWJvdHRvbTogLTQwcHg7Cn0KCi5tYi1ub25lLTQ1IHsKCW1hcmdpbi1ib3R0b206IC00NXB4Owp9CgoubWItbm9uZS01MCB7CgltYXJnaW4tYm90dG9tOiAtNTBweDsKfQoKLyogZGVmYXVsdCBtYXJnaW4gY3NzIGVuZCAqLwovKiBkZWZhdWx0IHBhZGRpbmcgY3NzIHN0YXJ0ICovCi5weS01IHsKCXBhZGRpbmc6IDVweCAwOwp9CgoucHktMTAgewoJcGFkZGluZzogMTBweCAwOwp9CgoucHktMTUgewoJcGFkZGluZzogMTVweCAwOwp9CgoucHktMjAgewoJcGFkZGluZzogMjBweCAwOwp9CgoucHktMjUgewoJcGFkZGluZzogMjVweCAwOwp9CgoucHktMzAgewoJcGFkZGluZzogMzBweCAwOwp9CgoucHktMzUgewoJcGFkZGluZzogMzVweCAwOwp9CgoucHktNDAgewoJcGFkZGluZzogNDBweCAwOwp9CgoucHktNDUgewoJcGFkZGluZzogNDVweCAwOwp9CgoucHktNTAgewoJcGFkZGluZzogNTBweCAwOwp9CgoucHktNTUgewoJcGFkZGluZzogNTVweCAwOwp9CgoucHktNjAgewoJcGFkZGluZzogNjBweCAwOwp9CgoucHktNjUgewoJcGFkZGluZzogNjVweCAwOwp9CgoucHktNzAgewoJcGFkZGluZzogNzBweCAwOwp9CgoucHktNzUgewoJcGFkZGluZzogNzVweCAwOwp9CgoucHktODAgewoJcGFkZGluZzogODBweCAwOwp9CgoucHktODUgewoJcGFkZGluZzogODVweCAwOwp9CgoucHktOTAgewoJcGFkZGluZzogOTBweCAwOwp9CgoucHktOTUgewoJcGFkZGluZzogOTVweCAwOwp9CgoucHktMTAwIHsKCXBhZGRpbmc6IDEwMHB4IDA7Cn0KCi5weS0xMDUgewoJcGFkZGluZzogMTA1cHggMDsKfQoKLnB5LTExMCB7CglwYWRkaW5nOiAxMTBweCAwOwp9CgoucHktMTE1IHsKCXBhZGRpbmc6IDEwMHB4IDA7Cn0KCi5weS0xMjAgewoJcGFkZGluZzogMTE1cHggMDsKfQoKLnB5LTEyNSB7CglwYWRkaW5nOiAxMjVweCAwOwp9CgoucHktMTMwIHsKCXBhZGRpbmc6IDEzMHB4IDA7Cn0KCi5weS0xMzUgewoJcGFkZGluZzogMTM1cHggMDsKfQoKLnB5LTE0MCB7CglwYWRkaW5nOiAxNDBweCAwOwp9CgoucHktMTQ1IHsKCXBhZGRpbmc6IDE0NXB4IDA7Cn0KCi5weS0xNTAgewoJcGFkZGluZzogMTUwcHggMDsKfQoKLnB4LTUgewoJcGFkZGluZzogMCA1cHg7Cn0KCi5weC0xMCB7CglwYWRkaW5nOiAwIDEwcHg7Cn0KCi5weC0xNSB7CglwYWRkaW5nOiAwIDE1cHg7Cn0KCi5weC0yMCB7CglwYWRkaW5nOiAwIDIwcHg7Cn0KCi5weC0yNSB7CglwYWRkaW5nOiAwIDI1cHg7Cn0KCi5weC0zMCB7CglwYWRkaW5nOiAwIDMwcHg7Cn0KCi5weC0zNSB7CglwYWRkaW5nOiAwIDM1cHg7Cn0KCi5weC00MCB7CglwYWRkaW5nOiAwIDQwcHg7Cn0KCi5weC00NSB7CglwYWRkaW5nOiAwIDQ1cHg7Cn0KCi5weC01MCB7CglwYWRkaW5nOiAwIDUwcHg7Cn0KCi5weC01NSB7CglwYWRkaW5nOiAwIDU1cHg7Cn0KCi5weC02MCB7CglwYWRkaW5nOiAwIDYwcHg7Cn0KCi5weC02NSB7CglwYWRkaW5nOiAwIDY1cHg7Cn0KCi5weC03MCB7CglwYWRkaW5nOiAwIDcwcHg7Cn0KCi5weC03NSB7CglwYWRkaW5nOiAwIDc1cHg7Cn0KCi5weC04MCB7CglwYWRkaW5nOiAwIDgwcHg7Cn0KCi5weC04NSB7CglwYWRkaW5nOiAwIDg1cHg7Cn0KCi5weC05MCB7CglwYWRkaW5nOiAwIDkwcHg7Cn0KCi5weC05NSB7CglwYWRkaW5nOiAwIDk1cHg7Cn0KCi5weC0xMDAgewoJcGFkZGluZzogMCAxMDBweDsKfQoKLnB4LTEwNSB7CglwYWRkaW5nOiAwIDEwNXB4Owp9CgoucHgtMTEwIHsKCXBhZGRpbmc6IDAgMTEwcHg7Cn0KCi5weC0xMTUgewoJcGFkZGluZzogMCAxMDBweDsKfQoKLnB4LTEyMCB7CglwYWRkaW5nOiAwIDExNXB4Owp9CgoucHgtMTI1IHsKCXBhZGRpbmc6IDAgMTI1cHg7Cn0KCi5weC0xMzAgewoJcGFkZGluZzogMCAxMzBweDsKfQoKLnB4LTEzNSB7CglwYWRkaW5nOiAwIDEzNXB4Owp9CgoucHgtMTQwIHsKCXBhZGRpbmc6IDAgMTQwcHg7Cn0KCi5weC0xNDUgewoJcGFkZGluZzogMCAxNDVweDsKfQoKLnB4LTE1MCB7CglwYWRkaW5nOiAwIDE1MHB4Owp9CgoucHQtNSB7CglwYWRkaW5nLXRvcDogNXB4Owp9CgoucHQtMTAgewoJcGFkZGluZy10b3A6IDEwcHg7Cn0KCi5wdC0xNSB7CglwYWRkaW5nLXRvcDogMTVweDsKfQoKLnB0LTIwIHsKCXBhZGRpbmctdG9wOiAyMHB4Owp9CgoucHQtMjUgewoJcGFkZGluZy10b3A6IDI1cHg7Cn0KCi5wdC0zMCB7CglwYWRkaW5nLXRvcDogMzBweDsKfQoKLnB0LTM1IHsKCXBhZGRpbmctdG9wOiAzNXB4Owp9CgoucHQtNDAgewoJcGFkZGluZy10b3A6IDQwcHg7Cn0KCi5wdC00NSB7CglwYWRkaW5nLXRvcDogNDVweDsKfQoKLnB0LTUwIHsKCXBhZGRpbmctdG9wOiA1MHB4Owp9CgoucHQtNTUgewoJcGFkZGluZy10b3A6IDU1cHg7Cn0KCi5wdC02MCB7CglwYWRkaW5nLXRvcDogNjBweDsKfQoKLnB0LTY1IHsKCXBhZGRpbmctdG9wOiA2NXB4Owp9CgoucHQtNzAgewoJcGFkZGluZy10b3A6IDcwcHg7Cn0KCi5wdC03NSB7CglwYWRkaW5nLXRvcDogNzVweDsKfQoKLnB0LTgwIHsKCXBhZGRpbmctdG9wOiA4MHB4Owp9CgoucHQtODUgewoJcGFkZGluZy10b3A6IDg1cHg7Cn0KCi5wdC05MCB7CglwYWRkaW5nLXRvcDogOTBweDsKfQoKLnB0LTk1IHsKCXBhZGRpbmctdG9wOiA5NXB4Owp9CgoucHQtMTAwIHsKCXBhZGRpbmctdG9wOiAxMDBweDsKfQoKLnB0LTEwNSB7CglwYWRkaW5nLXRvcDogMTA1cHg7Cn0KCi5wdC0xMTAgewoJcGFkZGluZy10b3A6IDExMHB4Owp9CgoucHQtMTE1IHsKCXBhZGRpbmctdG9wOiAxMDBweDsKfQoKLnB0LTEyMCB7CglwYWRkaW5nLXRvcDogMTE1cHg7Cn0KCi5wdC0xMjUgewoJcGFkZGluZy10b3A6IDEyNXB4Owp9CgoucHQtMTMwIHsKCXBhZGRpbmctdG9wOiAxMzBweDsKfQoKLnB0LTEzNSB7CglwYWRkaW5nLXRvcDogMTM1cHg7Cn0KCi5wdC0xNDAgewoJcGFkZGluZy10b3A6IDE0MHB4Owp9CgoucHQtMTQ1IHsKCXBhZGRpbmctdG9wOiAxNDVweDsKfQoKLnB0LTE1MCB7CglwYWRkaW5nLXRvcDogNzVweDsKfQoKLnBiLTUgewoJcGFkZGluZy1ib3R0b206IDVweDsKfQoKLnBiLTEwIHsKCXBhZGRpbmctYm90dG9tOiAxMHB4Owp9CgoucGItMTUgewoJcGFkZGluZy1ib3R0b206IDE1cHg7Cn0KCi5wYi0yMCB7CglwYWRkaW5nLWJvdHRvbTogMjBweDsKfQoKLnBiLTI1IHsKCXBhZGRpbmctYm90dG9tOiAyNXB4Owp9CgoucGItMzAgewoJcGFkZGluZy1ib3R0b206IDMwcHg7Cn0KCi5wYi0zNSB7CglwYWRkaW5nLWJvdHRvbTogMzVweDsKfQoKLnBiLTQwIHsKCXBhZGRpbmctYm90dG9tOiA0MHB4Owp9CgoucGItNDUgewoJcGFkZGluZy1ib3R0b206IDQ1cHg7Cn0KCi5wYi01MCB7CglwYWRkaW5nLWJvdHRvbTogNTBweDsKfQoKLnBiLTU1IHsKCXBhZGRpbmctYm90dG9tOiA1NXB4Owp9CgoucGItNjAgewoJcGFkZGluZy1ib3R0b206IDYwcHg7Cn0KCi5wYi02NSB7CglwYWRkaW5nLWJvdHRvbTogNjVweDsKfQoKLnBiLTcwIHsKCXBhZGRpbmctYm90dG9tOiA3MHB4Owp9CgoucGItNzUgewoJcGFkZGluZy1ib3R0b206IDc1cHg7Cn0KCi5wYi04MCB7CglwYWRkaW5nLWJvdHRvbTogODBweDsKfQoKLnBiLTg1IHsKCXBhZGRpbmctYm90dG9tOiA4NXB4Owp9CgoucGItOTAgewoJcGFkZGluZy1ib3R0b206IDkwcHg7Cn0KCi5wYi05NSB7CglwYWRkaW5nLWJvdHRvbTogOTVweDsKfQoKLnBiLTEwMCB7CglwYWRkaW5nLWJvdHRvbTogMTAwcHg7Cn0KCi5wYi0xMDUgewoJcGFkZGluZy1ib3R0b206IDEwNXB4Owp9CgoucGItMTEwIHsKCXBhZGRpbmctYm90dG9tOiAxMTBweDsKfQoKLnBiLTExNSB7CglwYWRkaW5nLWJvdHRvbTogMTAwcHg7Cn0KCi5wYi0xMjAgewoJcGFkZGluZy1ib3R0b206IDExNXB4Owp9CgoucGItMTI1IHsKCXBhZGRpbmctYm90dG9tOiAxMjVweDsKfQoKLnBiLTEzMCB7CglwYWRkaW5nLWJvdHRvbTogMTMwcHg7Cn0KCi5wYi0xMzUgewoJcGFkZGluZy1ib3R0b206IDEzNXB4Owp9CgoucGItMTQwIHsKCXBhZGRpbmctYm90dG9tOiAxNDBweDsKfQoKLnBiLTE0NSB7CglwYWRkaW5nLWJvdHRvbTogMTQ1cHg7Cn0KCi5wYi0xNTAgewoJcGFkZGluZy1ib3R0b206IDc1cHg7Cn0KCi5wbC01IHsKCXBhZGRpbmctbGVmdDogNXB4Owp9CgoucGwtMTAgewoJcGFkZGluZy1sZWZ0OiAxMHB4Owp9CgoucGwtMTUgewoJcGFkZGluZy1sZWZ0OiAxNXB4Owp9CgoucGwtMjAgewoJcGFkZGluZy1sZWZ0OiAyMHB4Owp9CgoucGwtMjUgewoJcGFkZGluZy1sZWZ0OiAyNXB4Owp9CgoucGwtMzAgewoJcGFkZGluZy1sZWZ0OiAzMHB4Owp9CgoucGwtMzUgewoJcGFkZGluZy1sZWZ0OiAzNXB4Owp9CgoucGwtNDAgewoJcGFkZGluZy1sZWZ0OiA0MHB4Owp9CgoucGwtNDUgewoJcGFkZGluZy1sZWZ0OiA0NXB4Owp9CgoucGwtNTAgewoJcGFkZGluZy1sZWZ0OiA1MHB4Owp9CgoucGwtNTUgewoJcGFkZGluZy1sZWZ0OiA1NXB4Owp9CgoucGwtNjAgewoJcGFkZGluZy1sZWZ0OiA2MHB4Owp9CgoucGwtNjUgewoJcGFkZGluZy1sZWZ0OiA2NXB4Owp9CgoucGwtNzAgewoJcGFkZGluZy1sZWZ0OiA3MHB4Owp9CgoucGwtNzUgewoJcGFkZGluZy1sZWZ0OiA3NXB4Owp9CgoucGwtODAgewoJcGFkZGluZy1sZWZ0OiA4MHB4Owp9CgoucGwtODUgewoJcGFkZGluZy1sZWZ0OiA4NXB4Owp9CgoucGwtOTAgewoJcGFkZGluZy1sZWZ0OiA5MHB4Owp9CgoucGwtOTUgewoJcGFkZGluZy1sZWZ0OiA5NXB4Owp9CgoucGwtMTAwIHsKCXBhZGRpbmctbGVmdDogMTAwcHg7Cn0KCi5wbC0xMDUgewoJcGFkZGluZy1sZWZ0OiAxMDVweDsKfQoKLnBsLTExMCB7CglwYWRkaW5nLWxlZnQ6IDExMHB4Owp9CgoucGwtMTE1IHsKCXBhZGRpbmctbGVmdDogMTAwcHg7Cn0KCi5wbC0xMjAgewoJcGFkZGluZy1sZWZ0OiAxMTVweDsKfQoKLnBsLTEyNSB7CglwYWRkaW5nLWxlZnQ6IDEyNXB4Owp9CgoucGwtMTMwIHsKCXBhZGRpbmctbGVmdDogMTMwcHg7Cn0KCi5wbC0xMzUgewoJcGFkZGluZy1sZWZ0OiAxMzVweDsKfQoKLnBsLTE0MCB7CglwYWRkaW5nLWxlZnQ6IDE0MHB4Owp9CgoucGwtMTQ1IHsKCXBhZGRpbmctbGVmdDogMTQ1cHg7Cn0KCi5wbC0xNTAgewoJcGFkZGluZy1sZWZ0OiAxNTBweDsKfQoKLnByLTUgewoJcGFkZGluZy1yaWdodDogNXB4Owp9CgoucHItMTAgewoJcGFkZGluZy1yaWdodDogMTBweDsKfQoKLnByLTE1IHsKCXBhZGRpbmctcmlnaHQ6IDE1cHg7Cn0KCi5wci0yMCB7CglwYWRkaW5nLXJpZ2h0OiAyMHB4Owp9CgoucHItMjUgewoJcGFkZGluZy1yaWdodDogMjVweDsKfQoKLnByLTMwIHsKCXBhZGRpbmctcmlnaHQ6IDMwcHg7Cn0KCi5wci0zNSB7CglwYWRkaW5nLXJpZ2h0OiAzNXB4Owp9CgoucHItNDAgewoJcGFkZGluZy1yaWdodDogNDBweDsKfQoKLnByLTQ1IHsKCXBhZGRpbmctcmlnaHQ6IDQ1cHg7Cn0KCi5wci01MCB7CglwYWRkaW5nLXJpZ2h0OiA1MHB4Owp9CgoucHItNTUgewoJcGFkZGluZy1yaWdodDogNTVweDsKfQoKLnByLTYwIHsKCXBhZGRpbmctcmlnaHQ6IDYwcHg7Cn0KCi5wci02NSB7CglwYWRkaW5nLXJpZ2h0OiA2NXB4Owp9CgoucHItNzAgewoJcGFkZGluZy1yaWdodDogNzBweDsKfQoKLnByLTc1IHsKCXBhZGRpbmctcmlnaHQ6IDc1cHg7Cn0KCi5wci04MCB7CglwYWRkaW5nLXJpZ2h0OiA4MHB4Owp9CgoucHItODUgewoJcGFkZGluZy1yaWdodDogODVweDsKfQoKLnByLTkwIHsKCXBhZGRpbmctcmlnaHQ6IDkwcHg7Cn0KCi5wci05NSB7CglwYWRkaW5nLXJpZ2h0OiA5NXB4Owp9CgoucHItMTAwIHsKCXBhZGRpbmctcmlnaHQ6IDEwMHB4Owp9CgoucHItMTA1IHsKCXBhZGRpbmctcmlnaHQ6IDEwNXB4Owp9CgoucHItMTEwIHsKCXBhZGRpbmctcmlnaHQ6IDExMHB4Owp9CgoucHItMTE1IHsKCXBhZGRpbmctcmlnaHQ6IDEwMHB4Owp9CgoucHItMTIwIHsKCXBhZGRpbmctcmlnaHQ6IDExNXB4Owp9CgoucHItMTI1IHsKCXBhZGRpbmctcmlnaHQ6IDEyNXB4Owp9CgoucHItMTMwIHsKCXBhZGRpbmctcmlnaHQ6IDEzMHB4Owp9CgoucHItMTM1IHsKCXBhZGRpbmctcmlnaHQ6IDEzNXB4Owp9CgoucHItMTQwIHsKCXBhZGRpbmctcmlnaHQ6IDE0MHB4Owp9CgoucHItMTQ1IHsKCXBhZGRpbmctcmlnaHQ6IDE0NXB4Owp9CgoucHItMTUwIHsKCXBhZGRpbmctcmlnaHQ6IDE1MHB4Owp9CgoKCi5ib3JkZXItLXByaW1hcnkgewogICAgYm9yZGVyLWNvbG9yOiBoc2wodmFyKC0tcHJpbWFyeSkpICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItLXNlY29uZGFyeSB7CiAgICBib3JkZXItY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRhcnkpKSAhaW1wb3J0YW50Owp9CgouYm9yZGVyLS1zdWNjZXNzIHsKICAgIGJvcmRlci1jb2xvcjogaHNsKHZhcigtLXN1Y2Nlc3MpKSAhaW1wb3J0YW50Owp9CgouYm9yZGVyLS1kYW5nZXIgewogICAgYm9yZGVyLWNvbG9yOiBoc2wodmFyKC0tZGFuZ2VyKSkgIWltcG9ydGFudDsKfQoKLmJvcmRlci0td2FybmluZyB7CiAgICBib3JkZXItY29sb3I6IGhzbCh2YXIoLS13YXJuaW5nKSkgIWltcG9ydGFudDsKfQoKLmJvcmRlci0taW5mbyB7CiAgICBib3JkZXItY29sb3I6IGhzbCh2YXIoLS1pbmZvKSkgIWltcG9ydGFudDsKfQoKLmJvcmRlci0tZGFyayB7CiAgICBib3JkZXItY29sb3I6IGhzbCh2YXIoLS1kYXJrKSkgIWltcG9ydGFudDsKfQoKLyogZ2xvYmFsIGNzcyBzdGFydCAqLwoudGV4dC0tcHJpbWFyeSB7CiAgICBjb2xvcjogaHNsKHZhcigtLXByaW1hcnkpKSAhaW1wb3J0YW50Owp9CgoudGV4dC0tc2Vjb25kYXJ5IHsKICAgIGNvbG9yOiBoc2wodmFyKC0tc2Vjb25kYXJ5KSkgIWltcG9ydGFudDsKfQoKLnRleHQtLXN1Y2Nlc3MgewogICAgY29sb3I6IGhzbCh2YXIoLS1zdWNjZXNzKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLWRhbmdlciB7CiAgICBjb2xvcjogaHNsKHZhcigtLWRhbmdlcikpICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LS13YXJuaW5nIHsKICAgIGNvbG9yOiBoc2wodmFyKC0td2FybmluZykpICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LS1pbmZvIHsKICAgIGNvbG9yOiBoc2wodmFyKC0taW5mbykpICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LS1kYXJrIHsKICAgIGNvbG9yOiBoc2wodmFyKC0tZGFyaykpICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LS1tdXRlZCB7CiAgICBjb2xvcjogaHNsKHZhcigtLW11dGVkKSkgIWltcG9ydGFudDsKfQoKLnRleHQtLWJvZHkgewogICAgY29sb3I6IGhzbCh2YXIoLS1ib2R5KSkgIWltcG9ydGFudDsKfQoKCi8qIGJhY2tncm91bmQgY29sb3IgY3NzIHN0YXJ0ICovCi5iZy0tcHJpbWFyeSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tcHJpbWFyeSkpICFpbXBvcnRhbnQ7Cn0KCi5iZy0tc2Vjb25kYXJ5IHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRhcnkpKSAhaW1wb3J0YW50Owp9CgouYmctLXN1Y2Nlc3MgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXN1Y2Nlc3MpKSAhaW1wb3J0YW50Owp9CgouYmctLWRhbmdlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tZGFuZ2VyKSkgIWltcG9ydGFudDsKfQoKLmJnLS13YXJuaW5nIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS13YXJuaW5nKSkgIWltcG9ydGFudDsKfQoKLmJnLS1pbmZvIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1pbmZvKSkgIWltcG9ydGFudDsKfQoKLmJnLS1kYXJrIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1kYXJrKSkgIWltcG9ydGFudDsKfQoKLmJnLS1saWdodCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tbGlnaHQpKSAhaW1wb3J0YW50Owp9CgoKCi5iYWRnZS0tYmFzZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkvMC4xNSk7CiAgICBib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tYmFzZSkpOwogICAgY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7Cn0KCi5iYWRnZS0tcHJpbWFyeSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tcHJpbWFyeSkvMC4xNSk7CiAgICBib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tcHJpbWFyeSkpOwogICAgY29sb3I6IGhzbCh2YXIoLS1wcmltYXJ5KSk7Cn0KCi5iYWRnZS0tc2Vjb25kYXJ5IHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRhcnkpLzAuMTUpOwogICAgYm9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLXNlY29uZGFyeSkpOwogICAgY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRhcnkpKTsKfQoKLmJhZGdlLS1zdWNjZXNzIHsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1zdWNjZXNzKS8wLjE1KTsKICAgIGJvcmRlcjogMXB4IHNvbGlkIGhzbCh2YXIoLS1zdWNjZXNzKSk7CiAgICBjb2xvcjogaHNsKHZhcigtLXN1Y2Nlc3MpKTsKfQoKLmJhZGdlLS1kYW5nZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWRhbmdlcikvMC4xNSk7CiAgICBib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tZGFuZ2VyKSk7CiAgICBjb2xvcjogaHNsKHZhcigtLWRhbmdlcikpOwp9CgouYmFkZ2UtLXdhcm5pbmcgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXdhcm5pbmcpLzAuMTUpOwogICAgYm9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLXdhcm5pbmcpKTsKICAgIGNvbG9yOiBoc2wodmFyKC0td2FybmluZykpOwp9CgouYmFkZ2UtLWluZm8gewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWluZm8pLzAuMTUpOwogICAgYm9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLWluZm8pKTsKICAgIGNvbG9yOiBoc2wodmFyKC0taW5mbykpOwp9CgouYmFkZ2UtLWRhcmsgewogICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLWRhcmspLzAuMTUpOwogICAgYm9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLWRhcmspKTsKICAgIGNvbG9yOiBoc2wodmFyKC0tZGFyaykpOwp9CgouYmFkZ2UgewogICAgYm9yZGVyLXJhZGl1czogMThweDsKICAgIHBhZGRpbmc6IDJweCAxNXB4IDNweDsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7Cn0KCgoKLyogZGVmYXVsdCBwYWRkaW5nIGNzcyBlbmQgKi8KLyogcmVzZXQgY3NzIHN0YXJ0ICovCmh0bWwgewoJc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7Cn0KCmJvZHkgewoJZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwoJZm9udC1zaXplOiAxNnB4OwoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKCWZvbnQtd2VpZ2h0OiA0MDA7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglvdmVyZmxvdy14OiBoaWRkZW47CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4Owp9CgppbWcgewoJbWF4LXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiBhdXRvOwp9Cgp1bCwKb2wgewoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKCWxpc3Qtc3R5bGU6IG5vbmU7Cn0KCmJ1dHRvbiB7CgljdXJzb3I6IHBvaW50ZXI7Cn0KCio6Zm9jdXMgewoJb3V0bGluZTogbm9uZTsKfQoKYnV0dG9uIHsKCWJvcmRlcjogbm9uZTsKfQoKYnV0dG9uOmZvY3VzIHsKCW91dGxpbmU6IG5vbmU7Cn0KCmlucHV0Om5vdChbdHlwZT0icmFkaW8iXSksCnRleHRhcmVhIHsKCXBhZGRpbmc6IDEwcHggMzBweDsKCXdpZHRoOiAxMDAlOwoJY29sb3I6ICNmZmZmZmY7Cglib3JkZXItcmFkaXVzOiAwOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwoJLW1vei1ib3JkZXItcmFkaXVzOiAwOwoJLW1zLWJvcmRlci1yYWRpdXM6IDA7Cgktby1ib3JkZXItcmFkaXVzOiAwOwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKaW5wdXQ6bm90KFt0eXBlPSJyYWRpbyJdKTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwKdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewoJY29sb3I6ICNmZWZlZmU7Cn0KCmlucHV0Om5vdChbdHlwZT0icmFkaW8iXSk6Oi1tb3otcGxhY2Vob2xkZXIsCnRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHsKCWNvbG9yOiAjZmVmZWZlOwp9CgppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwKdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsKCWNvbG9yOiAjZmVmZWZlOwp9CgppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOi1tb3otcGxhY2Vob2xkZXIsCnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgewoJY29sb3I6ICNmZWZlZmU7Cn0KCmlucHV0Om5vdChbdHlwZT0icmFkaW8iXSk6YWN0aXZlLAppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOmZvY3VzLAp0ZXh0YXJlYTphY3RpdmUsCnRleHRhcmVhOmZvY3VzIHsKCWJveC1zaGFkb3c6IDRweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgaW5zZXQsIC0ycHggLTJweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSBpbnNldCAhaW1wb3J0YW50Owp9CgppbnB1dDphdXRvZmlsbCwKaW5wdXQ6YXV0b2ZpbGw6aG92ZXIsCmlucHV0OmF1dG9maWxsOmZvY3VzLAppbnB1dDotd2Via2l0LWF1dG9maWxsLAppbnB1dDotd2Via2l0LWF1dG9maWxsOmhvdmVyLAppbnB1dDotd2Via2l0LWF1dG9maWxsOmZvY3VzIHsKICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZmZmOwogICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwczsKfQoKCnNlbGVjdCB7CglwYWRkaW5nOiAxMHB4IDIwcHg7Cgl3aWR0aDogMTAwJTsKCWN1cnNvcjogcG9pbnRlcjsKCWNvbG9yOiAjZmVmZWZlOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CgloZWlnaHQ6IDUwcHg7Cglib3JkZXItcmFkaXVzOiAwOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwoJLW1vei1ib3JkZXItcmFkaXVzOiAwOwoJLW1zLWJvcmRlci1yYWRpdXM6IDA7Cgktby1ib3JkZXItcmFkaXVzOiAwOwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50Owp9CgoubmljZS1zZWxlY3QgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CgloZWlnaHQ6IDYwcHggIWltcG9ydGFudDsKCWxpbmUtaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7CgltaW4taGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7CglwYWRkaW5nOiAwIDMwcHg7Cn0KCi5uaWNlLXNlbGVjdCAubGlzdCB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKfQoKLm5pY2Utc2VsZWN0IC5saXN0IC5vcHRpb24uc2VsZWN0ZWQsCi5uaWNlLXNlbGVjdCAubGlzdCAub3B0aW9uOmhvdmVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXI6IG5vbmUgIWltcG9ydGFudDsKfQoKdGV4dGFyZWEgewoJbWluLWhlaWdodDogMTUwcHg7CglyZXNpemU6IG5vbmU7Cgl3aWR0aDogMTAwJTsKfQppbnB1dFt0eXBlPSJjaGVja2JveCJdIHsKCXdpZHRoOiAxcmVtICFpbXBvcnRhbnQ7CglwYWRkaW5nOiAwICFpbXBvcnRhbnQ7Cn0KCnNwYW4gewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwp9Cgp0YWJsZSB7Cgl3aWR0aDogMTAwJTsKfQoKLyogcmVzZXQgY3NzIGVuZCAqLwovKiByZXNldCBjc3Mgc3RhcnQgKi8KaHRtbCB7CglzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsKfQoKYm9keSB7Cglmb250LWZhbWlseTogIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7Cglmb250LXNpemU6IDE2cHg7CglwYWRkaW5nOiAwOwoJbWFyZ2luOiAwOwoJZm9udC13ZWlnaHQ6IDQwMDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW92ZXJmbG93LXg6IGhpZGRlbjsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cn0KCmltZyB7CgltYXgtd2lkdGg6IDEwMCU7CgloZWlnaHQ6IGF1dG87Cn0KCnVsLApvbCB7CglwYWRkaW5nOiAwOwoJbWFyZ2luOiAwOwoJbGlzdC1zdHlsZTogbm9uZTsKfQoKYnV0dG9uIHsKCWN1cnNvcjogcG9pbnRlcjsKfQoKKjpmb2N1cyB7CglvdXRsaW5lOiBub25lOwp9CgpidXR0b24gewoJYm9yZGVyOiBub25lOwp9CgpidXR0b246Zm9jdXMgewoJb3V0bGluZTogbm9uZTsKfQoKOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7Cgljb2xvcjogI2ZmZiAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogcmVkICFpbXBvcnRhbnQ7Cn0KaW5wdXQ6bm90KFt0eXBlPSJyYWRpbyJdKSwKdGV4dGFyZWEgewoJcGFkZGluZzogMTBweCAzMHB4OwoJd2lkdGg6IDEwMCU7Cgljb2xvcjogI2ZmZmZmZjsKCWJvcmRlci1yYWRpdXM6IDA7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CgktbW96LWJvcmRlci1yYWRpdXM6IDA7CgktbXMtYm9yZGVyLXJhZGl1czogMDsKCS1vLWJvcmRlci1yYWRpdXM6IDA7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKaW5wdXQ6bm90KFt0eXBlPSJyYWRpbyJdKTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwKdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewoJY29sb3I6ICNmZWZlZmU7Cn0KCmlucHV0Om5vdChbdHlwZT0icmFkaW8iXSk6Oi1tb3otcGxhY2Vob2xkZXIsCnRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHsKCWNvbG9yOiAjZmVmZWZlOwp9CgppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwKdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsKCWNvbG9yOiAjZmVmZWZlOwp9CgppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOi1tb3otcGxhY2Vob2xkZXIsCnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgewoJY29sb3I6ICNmZWZlZmU7Cn0KCmlucHV0Om5vdChbdHlwZT0icmFkaW8iXSk6YWN0aXZlLAppbnB1dDpub3QoW3R5cGU9InJhZGlvIl0pOmZvY3VzLAp0ZXh0YXJlYTphY3RpdmUsCnRleHRhcmVhOmZvY3VzIHsKCWJveC1zaGFkb3c6IDRweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgaW5zZXQsIC0ycHggLTJweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSBpbnNldCAhaW1wb3J0YW50Owp9CgpzZWxlY3QgewoJcGFkZGluZzogMTBweCAyMHB4OwoJd2lkdGg6IDEwMCU7CgljdXJzb3I6IHBvaW50ZXI7Cgljb2xvcjogI2ZlZmVmZTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJaGVpZ2h0OiA1MHB4OwoJYm9yZGVyLXJhZGl1czogMDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKCS1tb3otYm9yZGVyLXJhZGl1czogMDsKCS1tcy1ib3JkZXItcmFkaXVzOiAwOwoJLW8tYm9yZGVyLXJhZGl1czogMDsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJvcmRlcjogMXB4IHNvbGlkICMzMDMxNDIgIWltcG9ydGFudDsKfQoKLm5pY2Utc2VsZWN0IHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7CglsaW5lLWhlaWdodDogNjBweCAhaW1wb3J0YW50OwoJbWluLWhlaWdodDogNjBweCAhaW1wb3J0YW50OwoJcGFkZGluZzogMCAzMHB4Owp9CgoubmljZS1zZWxlY3QgLmxpc3QgewoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cn0KCi5uaWNlLXNlbGVjdCAubGlzdCAub3B0aW9uLnNlbGVjdGVkLAoubmljZS1zZWxlY3QgLmxpc3QgLm9wdGlvbjpob3ZlciB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7Cn0KCnRleHRhcmVhIHsKCW1pbi1oZWlnaHQ6IDE1MHB4OwoJcmVzaXplOiBub25lOwoJd2lkdGg6IDEwMCU7Cn0KCnNwYW4gewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwp9Cgp0YWJsZSB7Cgl3aWR0aDogMTAwJTsKfQoKLmxpbmstY29sb3J7Cgljb2xvcjogcmdiKDEwNSwgMTA1LCAyNTUpCn0KCi8qIHJlc2V0IGNzcyBlbmQgKi8KCgovKiA9PT09PT09PT09PT09PT09PSBQcmVsb2FkZXIgU3RhcnQgPT09PT09PT09PT09PT09PT09PT09PT09ICovCi5wcmVsb2FkZXIgewogICAgcG9zaXRpb246IGZpeGVkOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMHZoOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzA1MDkzMzsKICAgIHotaW5kZXg6IDk5OTA7CiAgICBkaXNwbGF5OiBmbGV4OwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwp9Ci5wcmVsb2FkZXJfX2ltZy5vbmUgewoJYW5pbWF0aW9uOiBwcmVsb2FkZXJfb25lIDZzIGxpbmVhciBpbmZpbml0ZTsKfQoucHJlbG9hZGVyX19pbWdlcyB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLnByZWxvYWRlcl9faW1nLmljb24gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDI2cHg7CiAgICBsZWZ0OiAzNiU7CiAgICB0b3A6IC01MHB4OwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwoJYW5pbWF0aW9uOiBwcmVsb2FkZXJfaWNvbiAxLjVzIGxpbmVhciBpbmZpbml0ZTsKfQpAa2V5ZnJhbWVzIHByZWxvYWRlcl9pY29uIHsKCTAlIHsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgCgl9Cgk1MCUgewoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsgCgl9Cgk3NSUgewoJCW9wYWNpdHk6IDE7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpOyAKCX0KCTEwMCUgewoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MHB4KSBzY2FsZSguNSk7CgkJb3BhY2l0eTogMDsKCX0KfQoKQGtleWZyYW1lcyBwcmVsb2FkZXJfb25lIHsKCTAlIHsKCQl0cmFuc2Zvcm06IHNjYWxlKDEpOwoJfQoJNTAlIHsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuMykgOwoJfQoJMTAwJSB7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCX0KfQoKLyogPT09PT09PT09PT09PT09PT0gUHJlbG9hZGVyIEVuZCA9PT09PT09PT09PT09PT09PT09PT09PT0gKi8KCgovKiBnbG9iYWwgY3NzIHN0cmF0ICovCgoubmV1LS10YWJsZSB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4Owp9Ci5uZXUtLXRhYmxlIHRoZWFkIHRyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KLm5ldS0tdGFibGUgdGhlYWQgdHIgdGggewoJYm9yZGVyOiBub25lOwoJcGFkZGluZzogMTVweCAxMHB4Owp9CgoubmV1LS10YWJsZSB0Ym9keSB0ciB0ZCB7CglwYWRkaW5nOiAyNXB4IDE1cHg7Cglib3JkZXItdG9wOiAycHggc29saWQgIzFmMWYyMzsKfQoubmV1LS10YWJsZSB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7Cglib3JkZXItdG9wOiBub25lOwp9CgouYmdfaW1nIHsKCWJhY2tncm91bmQtc2l6ZTogY292ZXI7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7Cn0KCi5vdmVybGF5LS1kYXJrIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXotaW5kZXg6IDE7Cn0KCi5vdmVybGF5LS1kYXJrOjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOwoJb3BhY2l0eTogMC42NTsKCXotaW5kZXg6IC0xOwp9CgoudGV4dC10cmFuc2Zvcm0tbm9ybWFsIHsKCXRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7Cn0KCnNlbGVjdCBvcHRpb24gewoJYmFja2dyb3VuZC1jb2xvcjogIzAyMDE0YTsKfQoKbGFiZWwgewoJY29sb3I6ICNmZmZmZmY7CgltYXJnaW4tYm90dG9tOiAxM3B4OwoJZm9udC1mYW1pbHk6ICJFeG8iLCBzYW5zLXNlcmlmOwoJZm9udC13ZWlnaHQ6IDYwMDsKCWZvbnQtc2l6ZTogMTRweDsKfQoKaW5wdXQgewoJYm9yZGVyLXJhZGl1czogM3B4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDNweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAzcHg7Cgktby1ib3JkZXItcmFkaXVzOiAzcHg7Cn0KCi5uaWNlLXNlbGVjdCB7Cgl3aWR0aDogMTAwJTsKCW1pbi1oZWlnaHQ6IDUwcHg7CglsaW5lLWhlaWdodDogNTBweDsKCWJvcmRlci1yYWRpdXM6IDNweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7CgktbXMtYm9yZGVyLXJhZGl1czogM3B4OwoJLW8tYm9yZGVyLXJhZGl1czogM3B4Owp9CgoubmljZS1zZWxlY3QgLmxpc3QgewoJd2lkdGg6IDEwMCU7Cglib3gtc2hhZG93OiAwIDJweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTsKfQoKLmZvcm0tZ3JvdXAgewoJbWFyZ2luLWJvdHRvbTogMjBweDsKfQoKLmZvcm0tcm93IHsKCW1hcmdpbi1sZWZ0OiAtNXB4OwoJbWFyZ2luLXJpZ2h0OiAtNXB4Owp9CgouZm9ybS1yb3cgZGl2W2NsYXNzKj0iY29sIl0gewoJcGFkZGluZy1sZWZ0OiAxNXB4OwoJcGFkZGluZy1yaWdodDogMTVweDsKfQoKLnRleHQtLXdoaXRlIHsKCWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7Cn0KCi5pdGVtLWxpbmsgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJbGVmdDogMDsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxMDAlOwoJei1pbmRleDogOTsKfQoKLnZpZGVvLWljb24gewoJd2lkdGg6IDkwcHg7CgloZWlnaHQ6IDkwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOwoJbGluZS1oZWlnaHQ6IDkwcHg7Cglmb250LXNpemU6IDMycHg7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLnZpZGVvLWljb24gaSB7CgltYXJnaW4tbGVmdDogMTBweDsKfQoKLnNlY3Rpb24tYmcgewoJYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjVmYjsKfQoKLmdyYWRpZW50LWJnLW9uZSB7CgliYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgtMTc3ZGVnLCAjZjI0MzQxIDAlLCAjY2QyYzViIDUzJSwgI2E3MTU3NCAxMDAlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC0xNzdkZWcsICNmMjQzNDEgMCUsICNjZDJjNWIgNTMlLCAjYTcxNTc0IDEwMCUpOwoJYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCgtMTc3ZGVnLCAjZjI0MzQxIDAlLCAjY2QyYzViIDUzJSwgI2E3MTU3NCAxMDAlKTsKfQoKLmdyYWRpZW50LWJnLXR3byB7CgliYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgxNGRlZywgIzQ2NTZiYiAxOCUsICM5ZjA1ZTcgODIlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDE0ZGVnLCAjNDY1NmJiIDE4JSwgIzlmMDVlNyA4MiUpOwoJYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCgxNGRlZywgIzQ2NTZiYiAxOCUsICM5ZjA1ZTcgODIlKTsKfQoKLmdyYWRpZW50LWJnLXRocmVlIHsKCWJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KDE5ZGVnLCAjZWMzOThiIDAlLCAjOTk0OGEzIDQxJSwgIzQ2NTZiYiA5OSUpOwoJYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTlkZWcsICNlYzM5OGIgMCUsICM5OTQ4YTMgNDElLCAjNDY1NmJiIDk5JSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KDE5ZGVnLCAjZWMzOThiIDAlLCAjOTk0OGEzIDQxJSwgIzQ2NTZiYiA5OSUpOwp9Cgouc2VjdGlvbi1oZWFkZXIgewoJbWFyZ2luLWJvdHRvbTogNTBweDsKCW1hcmdpbi10b3A6IC04cHg7Cn0KCi5zZWN0aW9uLWhlYWRlciAuaGVhZGVyX19kaXZpZGVyIHsKCXdpZHRoOiAxOTBweDsKCWhlaWdodDogMjVweDsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbi10b3A6IDMwcHg7CglkaXNwbGF5OiBub25lOwp9Cgouc2VjdGlvbi1oZWFkZXIgLmhlYWRlcl9fZGl2aWRlcjo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA1MDsKCWxlZnQ6IDUwOwoJd2lkdGg6IDEwMHB4OwoJaGVpZ2h0OiA2cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzQzNzQ3OwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwp9Cgouc2VjdGlvbi1oZWFkZXIgLmhlYWRlcl9fZGl2aWRlcjo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDUwOwoJbGVmdDogNTA7Cgl3aWR0aDogMTAwcHg7CgloZWlnaHQ6IDZweDsKCWJhY2tncm91bmQtY29sb3I6ICMyMjIzMmU7CgltYXJnaW4tdG9wOiA2cHg7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cn0KCi5zZWN0aW9uLWhlYWRlciAuaGVhZGVyX19kaXZpZGVyIC5sZWZ0LWRvdCwKLnNlY3Rpb24taGVhZGVyIC5oZWFkZXJfX2RpdmlkZXIgLnJpZ2h0LWRvdCB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IC05cHg7CglsZWZ0OiAwOwoJd2lkdGg6IDIzcHg7CgloZWlnaHQ6IDIzcHg7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQxLCA0MiwgNTYsIDApOwoJYm94LXNoYWRvdzogaW5zZXQgLTQuMDk2cHggLTIuODY4cHggOHB4IDBweCByZ2JhKDUyLCA1NiwgNzIsIDAuOCksIGluc2V0IDIuODI4cHggMi44MjhweCAxNnB4IDBweCByZ2JhKDEyLCAxMSwgMTIsIDAuNik7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLnNlY3Rpb24taGVhZGVyIC5oZWFkZXJfX2RpdmlkZXIgLnJpZ2h0LWRvdCB7CglsZWZ0OiBhdXRvOwoJcmlnaHQ6IDA7Cn0KCi5zZWN0aW9uLWhlYWRlciAuc2VjdGlvbl9fdGl0bGUgewoJZm9udC1zaXplOiA0MHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7Cgkuc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb25fX3RpdGxlIHsKCQlmb250LXNpemU6IDM4cHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnNlY3Rpb24taGVhZGVyIC5zZWN0aW9uX190aXRsZSB7CgkJZm9udC1zaXplOiAzMHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKCS5zZWN0aW9uLWhlYWRlciAuc2VjdGlvbl9fdGl0bGUgewoJCWZvbnQtc2l6ZTogMjhweDsKCX0KfQoKLnNlY3Rpb24taGVhZGVyIHAgewoJbWFyZ2luLXRvcDogMTVweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CgkudGV4dC14cy1jZW50ZXIgewoJCXRleHQtYWxpZ246IGNlbnRlcjsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CgkuanVzdGlmeS1jb250ZW50LXhzLWNlbnRlciB7CgkJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cgl9Cn0KCi5ib3JkZXItcmFkaXVzLTEwMCB7Cglib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OwoJLW8tYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7Cn0KCi52aWRlby1idXR0b24gewoJd2lkdGg6IDExNnB4OwoJaGVpZ2h0OiAxMTZweDsKCWNvbG9yOiAjMjkyYTM4OwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJbGluZS1oZWlnaHQ6IDEyNXB4OwoJYW5pbWF0aW9uOiBwdWxzZSAyMDAwbXMgbGluZWFyIGluZmluaXRlOwoJLXdlYmtpdC1hbmltYXRpb246IHB1bHNlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7CgktbW96LWFuaW1hdGlvbjogcHVsc2UgMjAwMG1zIGxpbmVhciBpbmZpbml0ZTsKfQoKLnZpZGVvLWJ1dHRvbjo6YmVmb3JlLAoudmlkZW8tYnV0dG9uOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxMDAlOwoJbGVmdDogMDsKCXRvcDogMDsKCWJvcmRlci1yYWRpdXM6IDc0cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOwoJb3BhY2l0eTogMC4xNTsKCXotaW5kZXg6IC0xMDsKfQoKLnZpZGVvLWJ1dHRvbjo6YmVmb3JlIHsKCXotaW5kZXg6IC0xMDsKCWFuaW1hdGlvbjogaW5uZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7Cgktd2Via2l0LWFuaW1hdGlvbjogaW5uZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7CgktbW96LWFuaW1hdGlvbjogaW5uZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7Cn0KCi52aWRlby1idXR0b246OmFmdGVyIHsKCXotaW5kZXg6IC0xMDsKCWFuaW1hdGlvbjogb3V0ZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7Cgktd2Via2l0LWFuaW1hdGlvbjogb3V0ZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7CgktbW96LWFuaW1hdGlvbjogb3V0ZXItcmlwcGxlIDIwMDBtcyBsaW5lYXIgaW5maW5pdGU7Cn0KCi52aWRlby1idXR0b24gaSB7CgltYXJnaW4tbGVmdDogMTBweDsKCWZvbnQtc2l6ZTogNDJweDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIG91dGVyLXJpcHBsZSB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTgwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJb3BhY2l0eTogMDsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQktbXMtdHJhbnNmb3JtOiBzY2FsZSgyLjUpOwoJCXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQlvcGFjaXR5OiAwOwoJfQp9CgpALW1vei1rZXlmcmFtZXMgb3V0ZXItcmlwcGxlIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCQlvcGFjaXR5OiAwLjU7Cgl9CgoJODAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQktbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwoJCXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQlvcGFjaXR5OiAwOwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyLjUpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDIuNSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgyLjUpOwoJCW9wYWNpdHk6IDA7Cgl9Cn0KCkAtbXMta2V5ZnJhbWVzIG91dGVyLXJpcHBsZSB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTgwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJb3BhY2l0eTogMDsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQktbXMtdHJhbnNmb3JtOiBzY2FsZSgyLjUpOwoJCXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQlvcGFjaXR5OiAwOwoJfQp9CgpAa2V5ZnJhbWVzIG91dGVyLXJpcHBsZSB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTgwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJb3BhY2l0eTogMDsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQktbXMtdHJhbnNmb3JtOiBzY2FsZSgyLjUpOwoJCXRyYW5zZm9ybTogc2NhbGUoMi41KTsKCQlvcGFjaXR5OiAwOwoJfQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgaW5uZXItcmlwcGxlIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCQlvcGFjaXR5OiAwLjU7Cgl9CgoJMzAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCQlvcGFjaXR5OiAwLjU7Cgl9CgoJMTAwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJb3BhY2l0eTogMDsKCX0KfQoKQC1tb3ota2V5ZnJhbWVzIGlubmVyLXJpcHBsZSB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTMwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwoJCW9wYWNpdHk6IDA7Cgl9Cn0KCkAtbXMta2V5ZnJhbWVzIGlubmVyLXJpcHBsZSB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTMwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwoJCXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJb3BhY2l0eTogMC41OwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwoJCS1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwoJCW9wYWNpdHk6IDA7Cgl9Cn0KCkBrZXlmcmFtZXMgaW5uZXItcmlwcGxlIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCQlvcGFjaXR5OiAwLjU7Cgl9CgoJMzAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CgkJdHJhbnNmb3JtOiBzY2FsZSgxKTsKCQlvcGFjaXR5OiAwLjU7Cgl9CgoJMTAwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTsKCQl0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CgkJb3BhY2l0eTogMDsKCX0KfQoKLmQtcGFnaW5hdGlvbiB7CgltYXJnaW4tdG9wOiA1MHB4Owp9CgouZC1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uIHsKCW1hcmdpbjogLTVweDsKfQoKLmQtcGFnaW5hdGlvbiAucGFnaW5hdGlvbiBsaSB7CgltYXJnaW46IDVweCA1cHg7Cn0KCi5kLXBhZ2luYXRpb24gLnBhZ2luYXRpb24gbGkuYWN0aXZlIGEgewoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWNvbG9yOiAjZmZmZmZmOwp9CgouZC1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uIGxpLmFjdGl2ZSBhOmhvdmVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cgljb2xvcjogI2ZmZmZmZjsKfQoKLmQtcGFnaW5hdGlvbiAucGFnaW5hdGlvbiBsaSBhIHsKCWJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OwoJLW1vei1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7CgktbXMtYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OwoJLW8tYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OwoJY29sb3I6ICNmZWZlZmU7Cglmb250LXdlaWdodDogNTAwOwoJd2lkdGg6IDQwcHg7CgloZWlnaHQ6IDQwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CglsaW5lLWhlaWdodDogMjVweDsKCWJvcmRlcjogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICNmN2Y1ZmI7Cn0KLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7CiAgICB6LWluZGV4OiAzOwogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpICFpbXBvcnRhbnQ7CiAgICBib3JkZXItY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7Cn0KLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHsKICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjVjOwp9CgouZC1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIgewoJY29sb3I6ICMyOTJhMzg7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1jb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50Owp9Ci5wYWdpbmF0aW9uIGxpIC5wYWdlLWxpbms6aG92ZXIgewogICAgYm9yZGVyLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOwp9CgouY21uLWxpc3QgewoJbWFyZ2luLXRvcDogMjBweDsKfQoKLmNtbi1saXN0IGxpICsgbGkgewoJbWFyZ2luLXRvcDogMTVweDsKfQoKLmNtbi1saXN0IGxpIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXBhZGRpbmctbGVmdDogMzBweDsKfQoKLmNtbi1saXN0IGxpOjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAxMHB4OwoJbGVmdDogMDsKCWNvbnRlbnQ6ICIiOwoJd2lkdGg6IDEwcHg7CgloZWlnaHQ6IDEwcHg7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCWJvcmRlcjogMnB4IHNvbGlkICMyOTJhMzg7Cn0KCi5jbW4tbGlzdC5zdHlsZS0tdHdvIGxpIHsKCXBhZGRpbmctbGVmdDogMzVweDsKfQoKLmNtbi1saXN0LnN0eWxlLS10d28gbGk6OmJlZm9yZSB7Cgl3aWR0aDogMThweDsKCWhlaWdodDogMThweDsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKfQoKLmNtbi1saXN0LnN0eWxlLS10d28gbGk6OmFmdGVyIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXdpZHRoOiAxOHB4OwoJaGVpZ2h0OiAxOHB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA1cHg7CglsZWZ0OiA1cHg7Cn0KCi5jbW4tbGlzdC5zdHlsZS0tdGhyZWUgbGk6OmJlZm9yZSB7Cgljb250ZW50OiAiIjsKCXdpZHRoOiAxOHB4OwoJaGVpZ2h0OiAxOHB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCXRvcDogNHB4Owp9CgouYmFzZS0tYmcgewoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKfQoKLmNtbi1hY2NvcmRpb24gewoJbWFyZ2luOiAwIC0xMHB4IC0xMHB4IC0xMHB4Owp9CgouY21uLWFjY29yZGlvbiAuY2FyZCArIC5jYXJkIHsKCW1hcmdpbi10b3A6IDMwcHg7Cn0KCi5jbW4tYWNjb3JkaW9uIC5jYXJkIHsKCWJvcmRlcjogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50OwoJLW1vei1ib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50OwoJbWFyZ2luOiAxMHB4IDEwcHg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgouY21uLWFjY29yZGlvbi5zdHlsZS0tdHdvIC5jYXJkLWhlYWRlciAuYWNjLWJ0biB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglwYWRkaW5nLWxlZnQ6IDUwcHg7Cn0KCi5jbW4tYWNjb3JkaW9uLnN0eWxlLS10d28gLmNhcmQtaGVhZGVyIC5hY2MtYnRuOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMjRweDsKCWxlZnQ6IDIwcHg7Cgl3aWR0aDogMTRweDsKCWhlaWdodDogMTRweDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmY7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLmNtbi1hY2NvcmRpb24gLmNhcmQtaGVhZGVyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OwoJYm9yZGVyOiBub25lOwoJcGFkZGluZzogMDsKCWJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7CgktbXMtYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7Cgktby1ib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsKfQoKLmNtbi1hY2NvcmRpb24gLmNhcmQtaGVhZGVyIC5hY2MtYnRuIHsKCWRpc3BsYXk6IGJsb2NrOwoJd2lkdGg6IDEwMCU7CglwYWRkaW5nOiAxNXB4IDMwcHg7CgljdXJzb3I6IHBvaW50ZXI7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0ZXh0LWFsaWduOiBsZWZ0OwoJYm9yZGVyOiBub25lOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5jbW4tYWNjb3JkaW9uIC5jYXJkLWhlYWRlciAuYWNjLWJ0bi5jb2xsYXBzZWQ6OmJlZm9yZSB7CglkaXNwbGF5OiBub25lOwp9CgouY21uLWFjY29yZGlvbiAuY2FyZC1oZWFkZXIgLmFjYy1idG46Zm9jdXMgewoJb3V0bGluZTogbm9uZTsKfQoKLmNtbi1hY2NvcmRpb24gLmNhcmQtaGVhZGVyIC5hY2MtYnRuIC50ZXh0IHsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOwoJZm9udC1zaXplOiAxOHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5jbW4tYWNjb3JkaW9uIC5jYXJkLWhlYWRlciAuYWNjLWJ0biAudGV4dCB7CgkJZm9udC1zaXplOiAxNXB4OwoJfQp9CgouY21uLWFjY29yZGlvbiAuY2FyZC1ib2R5IHsKCXBhZGRpbmc6IDIwcHg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgoubmF2W3JvbGU9InRhYmxpc3QiXSB7Cglib3JkZXI6IG5vbmU7Cn0KCi5uYXZbcm9sZT0idGFibGlzdCJdIGxpIHsKCW1hcmdpbjogNXB4IDEwcHg7Cn0KCi5uYXZbcm9sZT0idGFibGlzdCJdIGxpIGEgewoJcGFkZGluZzogMCAxMHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJYm9yZGVyOiBub25lOwoJY29sb3I6ICNmZWZlZmU7CgoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAwOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwoJLW1vei1ib3JkZXItcmFkaXVzOiAwOwoJLW1zLWJvcmRlci1yYWRpdXM6IDA7Cgktby1ib3JkZXItcmFkaXVzOiAwOwoJZm9udC13ZWlnaHQ6IDYwMDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkubmF2W3JvbGU9InRhYmxpc3QiXSBsaSBhIHsKCQlmb250LXNpemU6IDE0cHg7Cgl9Cn0KCi5uYXZbcm9sZT0idGFibGlzdCJdIGxpIGEuYWN0aXZlIHsKCWNvbG9yOiAjMjkyYTM4Owp9CgoubmF2W3JvbGU9InRhYmxpc3QiXS5zdHlsZS0tdHdvIGxpIHsKCW1hcmdpbjogNXB4IDVweDsKCXdpZHRoOiAxODBweDsKCWhlaWdodDogNjBweDsKCWxpbmUtaGVpZ2h0OiA2MHB4Owp9CgoubmF2W3JvbGU9InRhYmxpc3QiXS5zdHlsZS0tdHdvIGxpIGEgewoJd2lkdGg6IGF1dG87Cgljb2xvcjogIzIzMjMyMzsKCWZvbnQtc2l6ZTogMjBweDsKCWZvbnQtd2VpZ2h0OiA0MDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZjdmNWZiOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkubmF2W3JvbGU9InRhYmxpc3QiXS5zdHlsZS0tdHdvIGxpIGEgewoJCWZvbnQtc2l6ZTogMThweDsKCX0KfQoKLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXR3byBsaSBhIHNwYW4gewoJY29sb3I6ICNmZWZlZmU7Cglmb250LXNpemU6IDE2cHg7Cglmb250LXdlaWdodDogNDAwOwoJbWFyZ2luLWxlZnQ6IDE1cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5uYXZbcm9sZT0idGFibGlzdCJdLnN0eWxlLS10d28gbGkgYSBzcGFuIHsKCQltYXJnaW4tbGVmdDogMDsKCQlmb250LXNpemU6IDE0cHg7CgkJZGlzcGxheTogYmxvY2s7Cgl9Cn0KCi5uYXZbcm9sZT0idGFibGlzdCJdLnN0eWxlLS10d28gbGkgYS5hY3RpdmUgewoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWJveC1zaGFkb3c6IG5vbmU7Cgljb2xvcjogI2ZmZmZmZjsKfQoKLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXR3byBsaSBhLmFjdGl2ZSBzcGFuIHsKCWNvbG9yOiAjZmZmZmZmOwp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5uYXZbcm9sZT0idGFibGlzdCJdLnN0eWxlLS10aHJlZSB7CgkJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5uYXZbcm9sZT0idGFibGlzdCJdLnN0eWxlLS10aHJlZSBsaSB7CgkJd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtIDE1cHgpOwoJCW1hcmdpbjogMDsKCQltYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXRocmVlIGxpIHsKCQl3aWR0aDogMTAwJTsKCX0KfQoKLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXRocmVlIGxpIGEgewoJYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjVmYjsKCXBhZGRpbmc6IDMwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXRocmVlIGxpIGEgewoJCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJCWRpc3BsYXk6IGZsZXg7CgkJLW1zLWZsZXgtd3JhcDogd3JhcDsKCQlmbGV4LXdyYXA6IHdyYXA7CgkJYWxpZ24taXRlbXM6IGNlbnRlcjsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkubmF2W3JvbGU9InRhYmxpc3QiXS5zdHlsZS0tdGhyZWUgbGkgYSB7CgkJcGFkZGluZzogMjBweDsKCX0KfQoKLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXRocmVlIGxpIGEuYWN0aXZlIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cgljb2xvcjogI2ZmZmZmZjsKfQoKLm5hdltyb2xlPSJ0YWJsaXN0Il0uc3R5bGUtLXRocmVlIGxpIGEuYWN0aXZlIGkgewoJY29sb3I6ICNmZmZmZmY7Cn0KCi5uYXZbcm9sZT0idGFibGlzdCJdLnN0eWxlLS10aHJlZSBsaSBhIGkgewoJZGlzcGxheTogYmxvY2s7Cglmb250LXNpemU6IDM2cHg7Cgljb2xvcjogIzI5MmEzODsKCW1hcmdpbi1ib3R0b206IDEwcHg7CglsaW5lLWhlaWdodDogMTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkubmF2W3JvbGU9InRhYmxpc3QiXS5zdHlsZS0tdGhyZWUgbGkgYSBpIHsKCQltYXJnaW4tcmlnaHQ6IDEwcHg7Cgl9Cn0KCi50ZXh0LWJvbGQgewoJZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50Owp9CgpibG9ja3F1b3RlIHAgewoJZm9udC13ZWlnaHQ6IDcwMDsKCWZvbnQtc2l6ZTogMjRweDsKCWNvbG9yOiAjZmZmZmZmOwp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKCWJsb2NrcXVvdGUgcCB7CgkJZm9udC13ZWlnaHQ6IDUwMDsKCQlmb250LXNpemU6IDIwcHg7Cgl9Cn0KCmlucHV0OmZvY3VzLAp0ZXh0YXJlYTpmb2N1cywKLm5pY2Utc2VsZWN0Lm9wZW4gewoJYm9yZGVyLWNvbG9yOiAjMjkyYTM4Owp9CgoucGFnZS1icmVhZGNydW1iIHsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CgltYXJnaW4tdG9wOiAxNXB4Owp9CgoucGFnZS1icmVhZGNydW1iIGxpIHsKCWNvbG9yOiAjZmZmZmZmOwp9CgoucGFnZS1icmVhZGNydW1iIGxpOjphZnRlciB7Cgljb250ZW50OiAiLSI7Cgljb2xvcjogI2ZmZmZmZjsKCW1hcmdpbjogMCA1cHg7Cn0KCi5wYWdlLWJyZWFkY3J1bWIgbGk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7Cgljb250ZW50OiAiXGYxMDIiOwoJZm9udC1mYW1pbHk6ICJGbGF0aWNvbiI7Cgljb2xvcjogI2VmNDI4YzsKCW1hcmdpbi1yaWdodDogNnB4Owp9CgoucGFnZS1icmVhZGNydW1iIGxpOmxhc3QtY2hpbGQ6OmFmdGVyIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5wYWdlLWJyZWFkY3J1bWIgbGkgYSB7Cgljb2xvcjogI2ZmZmZmZjsKfQoKLnJhZGlvLXdyYXBwZXIgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5yYWRpby13cmFwcGVyIC5hbW91bnRfX251bWJlciB7Cglmb250LXNpemU6IDIwcHg7Cn0KCi5yYWRpby13cmFwcGVyIGxhYmVsIHsKCWN1cnNvcjogcG9pbnRlcjsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCWhlaWdodDogMjJweDsKCWxpbmUtaGVpZ2h0OiAyMnB4OwoJcGFkZGluZy1sZWZ0OiAyMHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgoucmFkaW8td3JhcHBlciBpbnB1dFt0eXBlPSJyYWRpbyJdIHsKCWJvcmRlcjogMDsKCWNsaXA6IHJlY3QoMCAwIDAgMCk7CgloZWlnaHQ6IDFweDsKCW1hcmdpbjogLTFweDsKCW92ZXJmbG93OiBoaWRkZW47CglwYWRkaW5nOiAwOwoJcG9zaXRpb246IGFic29sdXRlOwoJd2lkdGg6IDFweDsKfQoKLnJhZGlvLXdyYXBwZXIgaW5wdXRbdHlwZT0icmFkaW8iXSB+IC5mYWtlLWJveCB7Cglib3JkZXI6IDFweCBzb2xpZCAjMjMyMzIzOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJaGVpZ2h0OiAxMnB4OwoJbGVmdDogMDsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogNTAlOwoJd2lkdGg6IDEycHg7CgltYXJnaW4tdG9wOiAwcHg7Cn0KCi5yYWRpby13cmFwcGVyIGlucHV0W3R5cGU9InJhZGlvIl0gfiAuZmFrZS1ib3g6YWZ0ZXIgewoJYmFja2dyb3VuZDogIzI5MmEzODsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCWNvbnRlbnQ6ICIiOwoJd2lkdGg6IDEycHg7CgloZWlnaHQ6IDEycHg7CglsZWZ0OiA1MCU7CgltYXJnaW4tbGVmdDogLTZweDsKCW1hcmdpbi10b3A6IC02cHg7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDUwJTsKCXZpc2liaWxpdHk6IGhpZGRlbjsKfQoKLnJhZGlvLXdyYXBwZXIgaW5wdXRbdHlwZT0icmFkaW8iXTpjaGVja2VkIH4gLmZha2UtYm94OmFmdGVyIHsKCXZpc2liaWxpdHk6IHZpc2libGU7Cn0KCi5yYWRpby13cmFwcGVyIGlucHV0W3R5cGU9InJhZGlvIl06Zm9jdXMgfiAuZmFrZS1ib3ggewoJYm94LXNoYWRvdzogMCAwIDhweCAjZTVlNWU1Owp9CgoucmFkaW8td3JhcHBlciBpbnB1dFt0eXBlPSJyYWRpbyJdOmRpc2FibGVkIH4gLnJhZGlvLXRleHQsCi5yYWRpby13cmFwcGVyIGlucHV0W3R5cGU9InJhZGlvIl06ZGlzYWJsZWQgfiAuZmFrZS1ib3ggewoJb3BhY2l0eTogMC41OwoJY3Vyc29yOiBkZWZhdWx0Owp9CgouY3VzdG9tLWZvcm0tZmllbGQgewoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgouY3VzdG9tLWZvcm0tZmllbGQgaW5wdXQgewoJcGFkZGluZy1sZWZ0OiA1NXB4Owp9CgouY3VzdG9tLWZvcm0tZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewoJY29sb3I6ICM3Nzc3Nzc7Cn0KCi5jdXN0b20tZm9ybS1maWVsZCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7Cgljb2xvcjogIzc3Nzc3NzsKfQoKLmN1c3RvbS1mb3JtLWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7Cgljb2xvcjogIzc3Nzc3NzsKfQoKLmN1c3RvbS1mb3JtLWZpZWxkIGlucHV0Oi1tb3otcGxhY2Vob2xkZXIgewoJY29sb3I6ICM3Nzc3Nzc7Cn0KCi5jdXN0b20tZm9ybS1maWVsZCBpIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogNTAlOwoJbGVmdDogMzBweDsKCWNvbG9yOiAjNzc3Nzc3OwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CgktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwp9CgouY3VzdG9tLWZvcm0tY2hlY2sgaW5wdXQgewoJZGlzcGxheTogbm9uZTsKCWN1cnNvcjogcG9pbnRlcjsKfQoKLmN1c3RvbS1mb3JtLWNoZWNrIGlucHV0OmNoZWNrZWQgKyBsYWJlbCB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOwp9CgouY3VzdG9tLWZvcm0tY2hlY2sgbGFiZWwgewoJLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOwoJYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIGluc2V0IDBweCAtMTVweCAxMHB4IC0xMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7CglwYWRkaW5nOiA1cHg7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CgljdXJzb3I6IHBvaW50ZXI7CgltYXJnaW4tYm90dG9tOiAwOwp9CgouY3VzdG9tLWZvcm0tY2hlY2sgLmxhYmVsLXRleHQgewoJY3Vyc29yOiBwb2ludGVyOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCXBhZGRpbmctbGVmdDogMTVweDsKCW1hcmdpbi1sZWZ0OiAtNXB4OwoJY29sb3I6ICNmZmZmZmY7Cglmb250LXNpemU6IDE0cHg7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBjdXN0b21Cb3VuY2UgewoJMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQoKCTI1JSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cgl9CgoJNTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsKCX0KCgk3NSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQp9CgpALW1vei1rZXlmcmFtZXMgY3VzdG9tQm91bmNlIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KCgkyNSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJfQoKCTUwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7Cgl9CgoJNzUlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KfQoKQC1tcy1rZXlmcmFtZXMgY3VzdG9tQm91bmNlIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KCgkyNSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJfQoKCTUwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7Cgl9CgoJNzUlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KfQoKQGtleWZyYW1lcyBjdXN0b21Cb3VuY2UgewoJMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQoKCTI1JSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cgl9CgoJNTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsKCX0KCgk3NSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wdC0xNTAgewoJCXBhZGRpbmctdG9wOiA3MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wYi0xNTAgewoJCXBhZGRpbmctYm90dG9tOiA3MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wdC0xMjAgewoJCXBhZGRpbmctdG9wOiA5MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wYi0xMjAgewoJCXBhZGRpbmctYm90dG9tOiA5MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wdC0xMDAgewoJCXBhZGRpbmctdG9wOiA5MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5wYi0xMDAgewoJCXBhZGRpbmctYm90dG9tOiA5MHB4OwoJfQp9CgojbGlnaHRjYXNlLW92ZXJsYXkgewoJei1pbmRleDogOTk5OTsKfQoKI2xpZ2h0Y2FzZS1jYXNlIHsKCXotaW5kZXg6IDk5OTk5Owp9Cgouc2Nyb2xsLXRvLXRvcCB7CgloZWlnaHQ6IDYwcHg7Cgl3aWR0aDogNjBweDsKCXBvc2l0aW9uOiBmaXhlZDsKCWJvdHRvbTogNSU7CglyaWdodDogNSU7CglkaXNwbGF5OiBub25lOwoJei1pbmRleDogOTk5OTk7CgljdXJzb3I6IHBvaW50ZXI7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cglib3JkZXItcmFkaXVzOiA1MCU7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJbGluZS1oZWlnaHQ6IDc3cHg7Cglib3gtc2hhZG93OiAwIDVweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTsKfQoKLnNjcm9sbC10by10b3AgLnNjcm9sbC1pY29uIHsKCWZvbnQtc2l6ZTogMzFweDsKCWNvbG9yOiAjZmZmZmZmOwoJZGlzcGxheTogaW5saW5lLWJsb2NrOwp9Cgouc2Nyb2xsLXRvLXRvcCAuc2Nyb2xsLWljb24gaSB7Cgktd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7CgktbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsKCXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7Cn0KCmFbY2xhc3MqPSJsaWdodGNhc2UtaWNvbi0iXS5saWdodGNhc2UtaWNvbi1jbG9zZSB7Cgl0b3A6IDEwMHB4OwoJcmlnaHQ6IDUwcHg7Cn0KCi5wdWxzZS1hbmltYXRpb24gewoJcG9zaXRpb246IHJlbGF0aXZlOwoJYW5pbWF0aW9uOiBwdWxzZSAwM3MgaW5maW5pdGU7Cn0KCi51cC1kb3duLWFuaW1hdGlvbiB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglhbmltYXRpb246IHVwLWRvd24tYW5pbWF0aW9uIDNzIGluZmluaXRlIGxpbmVhcjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHVwLWRvd24tYW5pbWF0aW9uIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KCgkyNSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJfQoKCTUwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cgl9CgoJNzUlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KfQoKQC1tb3ota2V5ZnJhbWVzIHVwLWRvd24tYW5pbWF0aW9uIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KCgkyNSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJfQoKCTUwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cgl9CgoJNzUlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KfQoKQC1tcy1rZXlmcmFtZXMgdXAtZG93bi1hbmltYXRpb24gewoJMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQoKCTI1JSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7Cgl9CgoJNTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKCX0KCgk3NSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJfQoKCTEwMCUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJfQp9CgpAa2V5ZnJhbWVzIHVwLWRvd24tYW5pbWF0aW9uIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KCgkyNSUgewoJCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJfQoKCTUwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cgl9CgoJNzUlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKCX0KfQoKLnRleHQtc2hhZG93IHsKCXRleHQtc2hhZG93OiAzcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7Cn0KCi5ib3gtc2hhZG93IHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmJveC1zaGFkb3c6OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouYm94LXNoYWRvdzo6YWZ0ZXIgewoJYm94LXNoYWRvdzogaW5zZXQgLTRweCAtM3B4IDhweCAwcHggcmdiYSg1MiwgNTYsIDcyLCAwLjgpLCBpbnNldCAzcHggM3B4IDE2cHggMHB4IHJnYmEoMTIsIDExLCAxMiwgMC42KSwgaW5zZXQgLTE3cHggLTEycHggMzNweCAwcHggcmdiYSg1MiwgNTYsIDcyLCAwLjgpLCBpbnNldCAxMnB4IDEycHggNjdweCAwcHggcmdiYSgxMiwgMTEsIDEyLCAwLjYpICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5ib3gtc2hhZG93OmhvdmVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzggIWltcG9ydGFudDsKCXRleHQtc2hhZG93OiBub25lOwp9CgouYm94LXNoYWRvdzpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5ib3gtc2hhZG93OmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwoJei1pbmRleDogMDsKfQoKLmJveC1zaGFkb3ctdHdvIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmJveC1zaGFkb3ctdHdvOjpiZWZvcmUgewoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmJveC1zaGFkb3ctdHdvOjphZnRlciB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5ib3gtc2hhZG93LXR3bzpob3ZlciB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OwoJdGV4dC1zaGFkb3c6IG5vbmU7Cn0KCi5ib3gtc2hhZG93LXR3bzpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5ib3gtc2hhZG93LXR3bzpob3Zlcjo6YWZ0ZXIgewoJb3BhY2l0eTogMTsKCXotaW5kZXg6IDA7Cn0KCi5uYXYtdGFicyBsaSBhIHsKCXBhZGRpbmc6IDE2cHggMTVweCAhaW1wb3J0YW50OwoJcGFkZGluZzogMjBweCAzMHB4OwoJd2lkdGg6IDIwMHB4OwoJZm9udC1zaXplOiAxOHB4OwoJZm9udC13ZWlnaHQ6IDcwMDsKCXRleHQtc2hhZG93OiAzcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJYm9yZGVyOiBub25lOwoKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgl6LWluZGV4OiAxOwp9CgoubmF2LXRhYnMgbGkgYTpmb2N1cywKLm5hdi10YWJzIGxpIGE6YWN0aXZlIHsKCW91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsKCWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7Cn0KCi5uYXYtdGFicyBsaSBhOjpiZWZvcmUgewoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDVweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7CgktbXMtYm9yZGVyLXJhZGl1czogNXB4OwoJLW8tYm9yZGVyLXJhZGl1czogNXB4OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwoJei1pbmRleDogLTE7Cn0KCi5uYXYtdGFicyBsaSBhOjphZnRlciB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDVweDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweDsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKCXotaW5kZXg6IC0xOwp9CgoubmF2LXRhYnMgbGkgYS5hY3RpdmUgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsKCXRleHQtc2hhZG93OiBub25lOwoJei1pbmRleDogOTsKfQoKLm5hdi10YWJzIGxpIGEuYWN0aXZlOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLm5hdi10YWJzIGxpIGEuYWN0aXZlOjphZnRlciB7CglvcGFjaXR5OiAxOwoJei1pbmRleDogMDsKfQoKLm5hdi10YWJzIGxpIGEuY29sb3Itb25lIHsKCWNvbG9yOiAjY2UzMzAzICFpbXBvcnRhbnQ7Cn0KCi5uYXYtdGFicyBsaSBhLmNvbG9yLXR3byB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50Owp9CgouYmxvY2stY29udGVudCBwIHsKCW1hcmdpbi10b3A6IDIwcHg7Cn0KCi5ibG9jay1jb250ZW50ICsgLmJsb2NrLWNvbnRlbnQgewoJbWFyZ2luLXRvcDogNTVweDsKfQoKLyogZ2xvYmFsIGNzcyBlbmQgKi8KaDEgewoJZm9udC1zaXplOiA2MnB4Owp9CgpoMiB7Cglmb250LXNpemU6IDQwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJaDIgewoJCWZvbnQtc2l6ZTogMzZweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgloMiB7CgkJZm9udC1zaXplOiAyOHB4OwoJfQp9CgpoMyB7Cglmb250LXNpemU6IDI0cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJaDMgewoJCWZvbnQtc2l6ZTogMjJweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgloMyB7CgkJZm9udC1zaXplOiAyMHB4OwoJfQp9CgpoNCB7Cglmb250LXNpemU6IDIycHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewoJaDQgewoJCWZvbnQtc2l6ZTogMjBweDsKCX0KfQoKaDUgewoJZm9udC1zaXplOiAyMHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKCWg1IHsKCQlmb250LXNpemU6IDE4cHg7Cgl9Cn0KCmg2IHsKCWZvbnQtc2l6ZTogMThweDsKfQoKaDEsCmgyLApoMywKaDQsCmg1LApoNiB7Cglmb250LWZhbWlseTogIkV4byIsIHNhbnMtc2VyaWY7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtd2VpZ2h0OiA3MDA7CgltYXJnaW46IDA7CglsaW5lLWhlaWdodDogMS40Owp9CgpoMSA+IGEsCmgyID4gYSwKaDMgPiBhLApoNCA+IGEsCmg1ID4gYSwKaDYgPiBhIHsKCWZvbnQtZmFtaWx5OiAiRXhvIiwgc2Fucy1zZXJpZjsKCWNvbG9yOiAjZmZmZmZmOwoJZm9udC13ZWlnaHQ6IDcwMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwoJbGluZS1oZWlnaHQ6IDEuNDsKfQoKcCwKbGksCnNwYW4gewoJZm9udC1zaXplOiAxNnB4OwoJY29sb3I6ICNmZWZlZmU7CglsaW5lLWhlaWdodDogMS43OwoJbWFyZ2luOiAwOwp9CgphIHsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCWZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKCWNvbG9yOiAjZmZmZmZmOwp9CgphOmhvdmVyIHsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCWNvbG9yOiAjZmZmZmZmOwp9CgouYnRuIHsKCXBhZGRpbmc6IDE1cHggMzBweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgl0ZXh0LXNoYWRvdzogM3B4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cglib3JkZXI6IG5vbmU7CgoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCXotaW5kZXg6IDE7Cn0KQG1lZGlhIChtYXgtd2lkdGg6NTc1cHgpIHsKCS5idG4gewoJCXBhZGRpbmc6IDEwcHggMzBweDsKCQl3aWR0aDogdW5zZXQ7Cgl9Cn0KLmJ0bjpmb2N1cywKLmJ0bjphY3RpdmUgewoJb3V0bGluZTogbm9uZSAhaW1wb3J0YW50OwoJYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsKfQoKLmJ0bjo6YmVmb3JlIHsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDVweDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweDsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmJ0bjo6YWZ0ZXIgewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5idG4uc3R5bGUtLXR3byB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmJ0bi5zdHlsZS0tdHdvOjpiZWZvcmUgewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5idG4uc3R5bGUtLXR3bzo6YWZ0ZXIgewoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDVweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7CgktbXMtYm9yZGVyLXJhZGl1czogNXB4OwoJLW8tYm9yZGVyLXJhZGl1czogNXB4OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouYnRuOmhvdmVyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7Cgl0ZXh0LXNoYWRvdzogbm9uZTsKfQoKLmJ0bjpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5idG46aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cgl6LWluZGV4OiAwOwp9CgouYnRuLmJ0bi1zbWFsbCB7CglwYWRkaW5nOiAxMnB4IDIwcHg7Cglmb250LXNpemU6IDE4cHg7Cn0KCi5idG4tcHJpbWFyeSB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKfQoKLmJ0bi1wcmltYXJ5OmhvdmVyIHsKCWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOwp9Ci5idG4tZGFuZ2VyIHsKCWNvbG9yOiAjY2UzMzAzOwp9CgouYnRuLWRhbmdlcjpob3ZlciB7Cgljb2xvcjogI2NlMzMwMzsKfQoKLmJ0bi1kYW5nZXIgewoJY29sb3I6ICNjZTMzMDM7Cn0KCi5idG4tZGFuZ2VyOmhvdmVyIHsKCWNvbG9yOiAjY2UzMzAzOwp9CgouYnRuLWFyZWEgewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKfQoKLyogaGVhZGVyLXNlY3Rpb24gc3RhcnQgKi8KLmhlYWRlci1zZWN0aW9uIHsKCXBhZGRpbmctbGVmdDogMTAwcHg7CglwYWRkaW5nLXJpZ2h0OiAxMDBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDE4NTBweCkgewoJLmhlYWRlci1zZWN0aW9uIHsKCQlwYWRkaW5nLWxlZnQ6IDUwcHg7CgkJcGFkZGluZy1yaWdodDogNTBweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDEzMDBweCkgewoJLmhlYWRlci1zZWN0aW9uIHsKCQlwYWRkaW5nLWxlZnQ6IDA7CgkJcGFkZGluZy1yaWdodDogMDsKCX0KfQoKLmhlYWRlci1zZWN0aW9uIC5oZWFkZXItZG90cyB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7Cgl6LWluZGV4OiAtMTsKCWhlaWdodDogMTAwJTsKCW92ZXJmbG93OiBoaWRkZW47Cn0KCi5oZWFkZXItc2VjdGlvbiAuaGVhZGVyLWJvdHRvbSB7CglwYWRkaW5nOiAzMHB4IDA7Cn0KLm5hdmJhci10b2dnbGVyOmZvY3VzIHsKCWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKfQoKLmhlYWRlci1zZWN0aW9uIC5zaXRlLWxvZ28gaW1nIHsKCW1heC13aWR0aDogMjYwcHg7Cn0KQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmhlYWRlci1zZWN0aW9uIC5oZWFkZXItYm90dG9tIHsKCQlwYWRkaW5nOiAwOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLnNpdGUtbG9nbyBpbWcgewoJCW1heC13aWR0aDogMjAwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAzODBweCkgewoJLmhlYWRlci1zZWN0aW9uIC5zaXRlLWxvZ28gaW1nIHsKCQltYXgtd2lkdGg6IDE1MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSB7CgkJcGFkZGluZzogMTVweCAwOwoJfQp9CgouaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaTpmaXJzdC1jaGlsZDo6YmVmb3JlIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGk6Zmlyc3QtY2hpbGQ6OmFmdGVyIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMzUwcHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGk6OmJlZm9yZSB7CgkJbGVmdDogLTIxcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGk6OmJlZm9yZSB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDEzNTBweCkgewoJLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaTo6YWZ0ZXIgewoJCWxlZnQ6IC0yNnB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpOjphZnRlciB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaS5tZW51X2hhc19jaGlsZHJlbiB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkubWVudV9oYXNfY2hpbGRyZW4ub3BlbiAuc3ViLW1lbnUgewoJZGlzcGxheTogYmxvY2s7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkubWVudV9oYXNfY2hpbGRyZW4gPiBhIHsKCQlkaXNwbGF5OiBibG9jazsKCX0KfQoKLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaSBhIHsKCXBhZGRpbmc6IDdweCAyMXB4OwoKCWZvbnQtc2l6ZTogMjBweDsKCWNvbG9yOiAjZmZmZmZmOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTc1MHB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpIGEgewoJCWZvbnQtc2l6ZTogMTZweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDE1NTBweCkgewoJLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaSBhIHsKCQlwYWRkaW5nOiAxMnB4IDE1cHg7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgYTo6YWZ0ZXIgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaSBhOjpiZWZvcmUgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpIGE6aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDA7Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgYTpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDE7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgYSB7CgkJcGFkZGluZzogOHB4IDIwcHg7CgkJZGlzcGxheTogYmxvY2s7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgLnN1Yi1tZW51IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXdpZHRoOiAyMjBweDsKCXRvcDogMTA1JTsKCWxlZnQ6IDA7Cgl6LWluZGV4OiA5OTk7CglwYWRkaW5nOiAxMHB4IDA7Cglib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDVweDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwoJb3BhY2l0eTogMDsKCXZpc2liaWxpdHk6IGhpZGRlbjsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaSAuc3ViLW1lbnUgewoJCW9wYWNpdHk6IDE7CgkJdmlzaWJpbGl0eTogdmlzaWJsZTsKCQlkaXNwbGF5OiBub25lOwoJCXBvc2l0aW9uOiBzdGF0aWM7CgkJLXdlYmtpdC10cmFuc2l0aW9uOiBub25lOwoJCS1vLXRyYW5zaXRpb246IG5vbmU7CgkJdHJhbnNpdGlvbjogbm9uZTsKCQl3aWR0aDogMTAwJTsKCQlwYWRkaW5nLWxlZnQ6IDMwcHg7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgLnN1Yi1tZW51IGxpIGEgewoJcGFkZGluZzogMTBweCAyMHB4OwoJZGlzcGxheTogYmxvY2s7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtc2l6ZTogMThweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaSAuc3ViLW1lbnUgbGkgYSB7CgkJZm9udC1zaXplOiAxNnB4OwoJfQp9CgouaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpIC5zdWItbWVudSBsaSBhOmhvdmVyIHsKCWNvbG9yOiAjZmZmZmZmOwp9CgouaGVhZGVyLXNlY3Rpb24gLm1haW4tbWVudSA+IGxpIC5zdWItbWVudSBsaSArIGxpIHsKCW1hcmdpbi1sZWZ0OiAwOwoJbWFyZ2luLXRvcDogMTBweDsKfQoKLmhlYWRlci1zZWN0aW9uIC5tYWluLW1lbnUgPiBsaTpob3ZlciAuc3ViLW1lbnUgewoJdG9wOiAxMDAlOwoJb3BhY2l0eTogMTsKCXZpc2liaWxpdHk6IHZpc2libGU7Cn0KCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51IGxpICsgbGkgewoJbWFyZ2luLWxlZnQ6IDM2cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51IGxpICsgbGkgewoJCW1hcmdpbi1sZWZ0OiAwOwoJCW1hcmdpbi10b3A6IDEwcHg7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IHsKCW1hcmdpbi1sZWZ0OiA3MHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTM1MHB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCB7CgkJbWFyZ2luLWxlZnQ6IDQwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IHsKCQltYXJnaW4tbGVmdDogMDsKCX0KfQoKLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQ6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMTVweDsKCWxlZnQ6IC0zMnB4OwoJd2lkdGg6IDRweDsKCWhlaWdodDogMjRweDsKCWJhY2tncm91bmQtY29sb3I6ICMzNDM3NDc7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMzUwcHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0OjpiZWZvcmUgewoJCWxlZnQ6IC0yMXB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodDo6YmVmb3JlIHsKCQlkaXNwbGF5OiBub25lOwoJfQp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodDo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDE1cHg7CglsZWZ0OiAtMjhweDsKCXdpZHRoOiA0cHg7CgloZWlnaHQ6IDI0cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMzJlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTM1MHB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodDo6YWZ0ZXIgewoJCWxlZnQ6IC0yNnB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodDo6YWZ0ZXIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5oZWFkZXItc2VhcmNoLWJ0biB7CglwYWRkaW5nOiAxMHB4IDMwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWNvbG9yOiAjZmZmZmZmOwoJYm9yZGVyOiBub25lOwoJZm9udC1zaXplOiAxOHB4Owp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuaGVhZGVyLXNlYXJjaC1idG46OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogOTk5OXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA5OTk5cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA5OTk5cHg7Cgktby1ib3JkZXItcmFkaXVzOiA5OTk5cHg7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5oZWFkZXItc2VhcmNoLWJ0bjo6YmVmb3JlIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA5OTk5cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1tb3otYm9yZGVyLXJhZGl1czogOTk5OXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1vLWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLmhlYWRlci1zZWFyY2gtYnRuOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAwOwp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuaGVhZGVyLXNlYXJjaC1idG46aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAxOwp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuc2lnbmluLXNpZ251cCB7CgltYXJnaW4tbGVmdDogNjBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDEzNTBweCkgewoJLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLnNpZ25pbi1zaWdudXAgewoJCW1hcmdpbi1sZWZ0OiA0MHB4OwoJfQp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuc2lnbmluLXNpZ251cDo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAxNXB4OwoJbGVmdDogLTMycHg7Cgl3aWR0aDogNHB4OwoJaGVpZ2h0OiAyNHB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzM0Mzc0NzsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDEzNTBweCkgewoJLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLnNpZ25pbi1zaWdudXA6OmJlZm9yZSB7CgkJbGVmdDogLTIxcHg7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5zaWduaW4tc2lnbnVwOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMTVweDsKCWxlZnQ6IC0yOHB4OwoJd2lkdGg6IDRweDsKCWhlaWdodDogMjRweDsKCWJhY2tncm91bmQtY29sb3I6ICMyMjIzMmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMzUwcHgpIHsKCS5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5zaWduaW4tc2lnbnVwOjphZnRlciB7CgkJbGVmdDogLTI2cHg7Cgl9Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5zaWduaW4tc2lnbnVwOmhvdmVyIC5zaWduaW4tc2lnbnVwLWRycC1kb3duIHsKCW9wYWNpdHk6IDE7Cgl2aXNpYmlsaXR5OiB2aXNpYmxlOwp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuc2lnbmluLXNpZ251cCAuc2lnbmluLXNpZ251cC1kcnAtZG93biB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDEwMCU7CglsZWZ0OiAwOwoJd2lkdGg6IDE1MHB4OwoJcGFkZGluZzogMTVweCAxNXB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAwOwoJdmlzaWJpbGl0eTogaGlkZGVuOwp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuc2lnbmluLXNpZ251cCAuc2lnbmluLXNpZ251cC1kcnAtZG93biBsaSArIGxpIHsKCW1hcmdpbi10b3A6IDEwcHg7Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5zLWJ0biB7CglwYWRkaW5nOiAxMHB4IDMwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWNvbG9yOiAjZmZmZmZmOwoJYm9yZGVyOiBub25lOwoJZm9udC1zaXplOiAyMnB4Owp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAucy1idG46OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogOTk5OXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA5OTk5cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA5OTk5cHg7Cgktby1ib3JkZXItcmFkaXVzOiA5OTk5cHg7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5oZWFkZXItc2VjdGlvbiAubmF2LXJpZ2h0IC5zLWJ0bjo6YmVmb3JlIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA5OTk5cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1tb3otYm9yZGVyLXJhZGl1czogOTk5OXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCS1vLWJvcmRlci1yYWRpdXM6IDk5OTlweDsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLnMtYnRuOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAwOwp9CgouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAucy1idG46aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAxOwp9CgoubmF2YmFyLWNvbGxhcHNlICsgLmhlYWRlci1jYXJ0IHsKCWRpc3BsYXk6IG5vbmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5uYXZiYXItY29sbGFwc2UgKyAuaGVhZGVyLWNhcnQgewoJCWRpc3BsYXk6IGJsb2NrOwoJCXBvc2l0aW9uOiBmaXhlZDsKCQl0b3A6IDE3cHg7CgkJcmlnaHQ6IDEwMHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7CgkubmF2YmFyLWNvbGxhcHNlICsgLmhlYWRlci1jYXJ0IHsKCQlyaWdodDogNTBweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkubmF2YmFyLWNvbGxhcHNlIHsKCQltYXgtaGVpZ2h0OiAzMjBweDsKCQlvdmVyZmxvdzogYXV0bzsKCX0KfQoKLm5hdmJhci10b2dnbGVyIHsKCXBhZGRpbmc6IDA7Cglib3JkZXI6IG5vbmU7Cn0KCi5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7CglvdXRsaW5lOiBub25lOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkubmF2YmFyLXRvZ2dsZXIgewoJCW1hcmdpbi1yaWdodDogNTBweDsKCX0KfQoKLm1lbnUtdG9nZ2xlIHsKCW1hcmdpbjogMjJweCAwOwoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMzVweDsKCWhlaWdodDogMjBweDsKCWN1cnNvcjogcG9pbnRlcjsKCWJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXRvcDogMnB4IHNvbGlkOwoJYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkOwoJY29sb3I6ICNmZmZmZmY7Cglmb250LXNpemU6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKCXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKCWN1cnNvcjogcG9pbnRlcjsKfQoKLm1lbnUtdG9nZ2xlOmJlZm9yZSwKLm1lbnUtdG9nZ2xlOmFmdGVyIHsKCWNvbnRlbnQ6ICIiOwoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMnB4OwoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiA1MCU7CglsZWZ0OiA1MCU7CgliYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cgl0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dDsKCS13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7Cgktby10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dDsKCXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dDsKCS1tb3otdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7CgktbXMtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7Cn0KCnNwYW4uaXMtYWN0aXZlIHsKCWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCnNwYW4uaXMtYWN0aXZlOmJlZm9yZSB7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7CgktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7Cn0KCnNwYW4uaXMtYWN0aXZlOmFmdGVyIHsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7CgktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsKfQoKc3Bhbi5pcy1hY3RpdmUgewoJYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKc3Bhbi5pcy1hY3RpdmU6YmVmb3JlIHsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTsKfQoKc3Bhbi5pcy1hY3RpdmU6YWZ0ZXIgewoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpOwp9Cgouc2VhcmNoLWZvcm0tYXJlYSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpOwoJbWFyZ2luLWxlZnQ6IDUwcHg7Cgl6LWluZGV4OiA5OTk5OTk5OwoJdG9wOiAtMTQ1cHg7CglwYWRkaW5nOiAzMHB4IDMwcHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjUsIC0wLjI1LCAwLjI1LCAxLjk1KTsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY1LCAtMC4yNSwgMC4yNSwgMS45NSk7Cgl0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NSwgLTAuMjUsIDAuMjUsIDEuOTUpOwp9Cgouc2VhcmNoLWZvcm0tYXJlYS5vcGVuIHsKCXRvcDogMzBweDsKfQoKLnNlYXJjaC1mb3JtLWFyZWEgLnNlYXJjaC1mcm9tIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXBhZGRpbmctcmlnaHQ6IDkwcHg7Cn0KCi5zZWFyY2gtZm9ybS1hcmVhIC5zZWFyY2gtZnJvbSAuc2VhcmNoLWZvcm1fX2J0biB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl3aWR0aDogNjBweDsKCWhlaWdodDogMTAwJTsKCXRvcDogMDsKCXJpZ2h0OiAwOwoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWNvbG9yOiAjZmZmZmZmOwoJZm9udC1zaXplOiAxOHB4Owp9Cgouc2VhcmNoLWZvcm0tYXJlYSAuc2VhcmNoLWZyb20gLnNlYXJjaC1mb3JtX19idG46OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc2VhcmNoLWZvcm0tYXJlYSAuc2VhcmNoLWZyb20gLnNlYXJjaC1mb3JtX19idG46OmFmdGVyIHsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJvcmRlcjogMXB4IHNvbGlkICMzMDMxNDIgIWltcG9ydGFudDsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnNlYXJjaC1mb3JtLWFyZWEgLnNlYXJjaC1mcm9tIC5zZWFyY2gtZm9ybV9fYnRuOmhvdmVyOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLnNlYXJjaC1mb3JtLWFyZWEgLnNlYXJjaC1mcm9tIC5zZWFyY2gtZm9ybV9fYnRuOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwoJei1pbmRleDogMDsKfQoKLnNoYWRvdy1pbnNpZGUgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cn0KCi8qIGhlYWRlci1zZWN0aW9uIGVuZCAqLwovKiBoZXJvLWNvbnRlbnQgY3NzIHN0YXJ0ICovCi5oZXJvLXNlY3Rpb24gewoJcGFkZGluZy10b3A6IDI1MHB4OwoJb3ZlcmZsb3c6IGhpZGRlbjsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDE0NTBweCkgewoJLmhlcm8tc2VjdGlvbiB7CgkJb3ZlcmZsb3c6IGhpZGRlbjsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkuaGVyby1zZWN0aW9uIHsKCQlwYWRkaW5nLXRvcDogMjAwcHg7CgkJcGFkZGluZy1ib3R0b206IDcwcHg7Cgl9Cn0KCi5oZXJvLWNvbnRlbnQgLmhlcm9fX3RpdGxlIHsKCWZvbnQtc2l6ZTogNjBweDsKCXRleHQtc2hhZG93OiAzcHggNXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7CgltYXJnaW4tYm90dG9tOiA0MHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVyby1jb250ZW50IC5oZXJvX190aXRsZSB7CgkJZm9udC1zaXplOiA0OHB4OwoJCW1hcmdpbi1ib3R0b206IDMwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLmhlcm8tc2VjdGlvbiB7CgkJcGFkZGluZy10b3A6IDE0MHB4OwoJCXBhZGRpbmctYm90dG9tOiA2MHB4OwoJfQoJLmhlcm8tY29udGVudCAuaGVyb19fdGl0bGUgewoJCWZvbnQtc2l6ZTogMzJweDsKCQltYXJnaW4tYm90dG9tOiAyMHB4OwoJfQp9CgouaGVyby1jb250ZW50IHAgewoJd2lkdGg6IDg4JTsKfQpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5oZXJvLWNvbnRlbnQgcCB7CgkJd2lkdGg6IDEwMCU7Cgl9Cn0KLmhlcm8tY29udGVudCAuYnRuLWFyZWEgewoJbWFyZ2luLXRvcDogNTBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuaGVyby1jb250ZW50IC5idG4tYXJlYSB7CgkJbWFyZ2luLWxlZnQ6IC0xNXB4OwoJCW1hcmdpbi1yaWdodDogLTE1cHg7CgkJbWFyZ2luLXRvcDogMzBweDsKCX0KfQoKLmhlcm8tY29udGVudCAuYnRuLWFyZWEgLmJ0biArIC5idG4gewoJbWFyZ2luLWxlZnQ6IDQwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZXJvLWNvbnRlbnQgLmJ0bi1hcmVhIC5idG4gKyAuYnRuIHsKCQltYXJnaW4tbGVmdDogMjBweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuaGVyby1jb250ZW50IC5idG4tYXJlYSAuYnRuICsgLmJ0biB7CgkJbWFyZ2luLWxlZnQ6IDE1cHg7Cgl9Cn0KCi5oZXJvLWNvbnRlbnQgLmJ0bi1hcmVhIC5idG4gewoJcGFkZGluZzogMjBweCAzMHB4OwoJd2lkdGg6IDI1NXB4OwoJZm9udC1zaXplOiAyOHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaGVyby1jb250ZW50IC5idG4tYXJlYSAuYnRuIHsKCQlwYWRkaW5nOiAxNHB4IDM1cHg7CgkJd2lkdGg6IGF1dG87CgkJZm9udC1zaXplOiAxNnB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5oZXJvLWNvbnRlbnQgLmJ0bi1hcmVhIC5idG4gewoJCW1hcmdpbjogMTBweCAxNXB4OwoJfQp9CgouaGVyby10aHVtYiB7CglmbG9hdDogbGVmdDsKCW1hcmdpbi1sZWZ0OiAxMjBweDsKCXdpZHRoOiA5MCU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5oZXJvLXRodW1iIHsKCQltYXJnaW4tbGVmdDogMDsKCQl3aWR0aDogMTAwJTsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkuaGVyby10aHVtYiB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLyogaGVyby1jb250ZW50IGNzcyBlbmQgKi8KLyogaW5uZXItaGVyby1zZWN0aW9uIGNzcyBzdGFydCAqLwouaW5uZXItaGVyby1jb250ZW50IHsKCXBhZGRpbmctdG9wOiA5MHB4OwoJcGFkZGluZy1ib3R0b206IDEyMHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaW5uZXItaGVyby1jb250ZW50IHsKCQlwYWRkaW5nLXRvcDogNTBweDsKCQlwYWRkaW5nLWJvdHRvbTogMTIwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLmlubmVyLWhlcm8tY29udGVudCB7CgkJcGFkZGluZy1ib3R0b206IDkwcHg7Cgl9Cn0KCi5pbm5lci1oZXJvLWNvbnRlbnQgLmlubmVyLWhlcm9fX3RpdGxlIHsKCWZvbnQtc2l6ZTogNDVweDsKCXRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkuaW5uZXItaGVyby1jb250ZW50IC5pbm5lci1oZXJvX190aXRsZSB7CgkJZm9udC1zaXplOiAzNXB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5pbm5lci1oZXJvLWNvbnRlbnQgLmlubmVyLWhlcm9fX3RpdGxlIHsKCQlmb250LXNpemU6IDI1cHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewoJLmlubmVyLWhlcm8tY29udGVudCAuaW5uZXItaGVyb19fdGl0bGUgewoJCWZvbnQtc2l6ZTogMjBweDsKCX0KfQoKLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIHsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKCW1hcmdpbi10b3A6IDE1cHg7Cgl0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIHsKCQltYXJnaW4tdG9wOiAxMHB4OwoJfQp9CgouaW5uZXItaGVyby1jb250ZW50IC5wYWdlX19icmVhZGN1bXMgbGksCi5pbm5lci1oZXJvLWNvbnRlbnQgLnBhZ2VfX2JyZWFkY3VtcyBhIHsKCWZvbnQtZmFtaWx5OiAiRXhvIiwgc2Fucy1zZXJpZjsKCWZvbnQtc2l6ZTogMjRweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogI2ZmZmZmZjsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIGxpLAoJLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIGEgewoJCWZvbnQtc2l6ZTogMThweDsKCX0KfQoKLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIGxpOjpiZWZvcmUgewoJY29udGVudDogIi8iOwoJcGFkZGluZzogMCAxNXB4Owp9CgouaW5uZXItaGVyby1jb250ZW50IC5wYWdlX19icmVhZGN1bXMgbGk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7CglkaXNwbGF5OiBub25lOwp9CgovKiBpbm5lci1oZXJvLXNlY3Rpb24gY3NzIGVuZCAqLwouYm94LXNoYWRvdzo6YmVmb3JlLAouYm94LXNoYWRvdzo6YWZ0ZXIsCi5ib3gtc2hhZG93LXR3bzo6YmVmb3JlLAouYm94LXNoYWRvdy10d286OmFmdGVyLAoubmF2LXRhYnMgbGkgYTo6YmVmb3JlLAoubmF2LXRhYnMgbGkgYTo6YWZ0ZXIsCi5idG46OmJlZm9yZSwKLmJ0bjo6YWZ0ZXIsCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgYTo6YWZ0ZXIsCi5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51ID4gbGkgYTo6YmVmb3JlLAouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuaGVhZGVyLXNlYXJjaC1idG46OmFmdGVyLAouaGVhZGVyLXNlY3Rpb24gLm5hdi1yaWdodCAuaGVhZGVyLXNlYXJjaC1idG46OmJlZm9yZSwKLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLnMtYnRuOjphZnRlciwKLmhlYWRlci1zZWN0aW9uIC5uYXYtcmlnaHQgLnMtYnRuOjpiZWZvcmUsCi5zZWFyY2gtZm9ybS1hcmVhIC5zZWFyY2gtZnJvbSAuc2VhcmNoLWZvcm1fX2J0bjo6YmVmb3JlLAouc2VhcmNoLWZvcm0tYXJlYSAuc2VhcmNoLWZyb20gLnNlYXJjaC1mb3JtX19idG46OmFmdGVyLAouZmVhdHVyZS1pdGVtX19pY29uOjpiZWZvcmUsCi5mZWF0dXJlLWl0ZW1fX2ljb246OmFmdGVyLAoucHJpY2luZy1pdGVtX19oZWFkZXIgLnBhY2thZ2VfX29mZmVyOjpiZWZvcmUsCi5pbnZlc3Rvci1pdGVtOjpiZWZvcmUsCi5pbnZlc3Rvci1pdGVtOjphZnRlciwKLmludmVzdG9yLXNsaWRlciAuc2xpY2stYXJyb3c6OmJlZm9yZSwKLmludmVzdG9yLXNsaWRlciAuc2xpY2stYXJyb3c6OmFmdGVyLAouaW52ZXN0b3Itc2xpZGVyLXR3byAuc2xpY2stYXJyb3c6OmJlZm9yZSwKLmludmVzdG9yLXNsaWRlci10d28gLnNsaWNrLWFycm93OjphZnRlciwKLm92ZXJ2aWV3LWl0ZW06OmJlZm9yZSwKLm92ZXJ2aWV3LWl0ZW06OmFmdGVyLAoucG9zdC1pdGVtOjpiZWZvcmUsCi5wb3N0LWl0ZW06OmFmdGVyLAouZmFxLWl0ZW06OmJlZm9yZSwKLmZhcS1pdGVtOjphZnRlciwKLmNvbnRhY3QtaXRlbTo6YmVmb3JlLAouY29udGFjdC1pdGVtOjphZnRlciwKLnN0YXQtaXRlbTo6YmVmb3JlLAouc3RhdC1pdGVtOjphZnRlciwKLmZvb3Rlci13aWRnZXQgLnNvY2lhbC1saW5rcyBsaSBhOjpiZWZvcmUsCi5mb290ZXItd2lkZ2V0IC5zb2NpYWwtbGlua3MgbGkgYTo6YWZ0ZXIsCi5zaWRlYmFyIC50YWdzIGE6OmJlZm9yZSwKLnNpZGViYXIgLnRhZ3MgYTo6YWZ0ZXIsCi5zbWFsbC1wb3N0LWxpc3QgLnNtYWxsLXBvc3Q6OmJlZm9yZSwKLnNtYWxsLXBvc3QtbGlzdCAuc21hbGwtcG9zdDo6YWZ0ZXIsCi51c2VyLXNpZGViYXItbWVudSBsaSBhOjpiZWZvcmUsCi51c2VyLXNpZGViYXItbWVudSBsaSBhOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCXotaW5kZXg6IC0xOwp9CgpsYWJlbCwKLnNlY3Rpb24taGVhZGVyIC5zZWN0aW9uX190aXRsZSwKLmlubmVyLWhlcm8tY29udGVudCAucGFnZV9fYnJlYWRjdW1zIGxpLAouaW5uZXItaGVyby1jb250ZW50IC5wYWdlX19icmVhZGN1bXMgYSwKLnByb2ZpdC1jYWxjdWxhdG9yLWZvcm0gbGFiZWwsCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgdHIgdGgsCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgdHIgdGQsCi5vdmVydmlldy1pdGVtIHNwYW4sCi5vdmVydmlldy1pdGVtIHAsCi50ZXN0aW1vbmlhbC1zaW5nbGUgaSwKLnBvc3QtaXRlbS5zdHlsZS0tdHdvIC5wb3N0X190aXRsZSBhLAouc2luZ2xlX19jb21tZW50IC5jb250ZW50IC5yZXBseS1idG4sCi5oZWxwLXdyYXBwZXIgLnBob25lX19udW1iZXIsCi5kYXNoYm9hcmRfX3VzZXIgLnNpbmdsZSAuY29udGVudCAuY2FwdGlvbiwKLnN0YXRfX2hlYWRlciAubGVmdCAuY2FwdGlvbiwKLmZvb3Rlci13aWRnZXQgLndpZGdldF9fdGl0bGUgewoJdGV4dC1zaGFkb3c6IDNweCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTsKfQoKLyogZmVhdHVyZS1zZWN0aW9uIGNzcyBzdGFydCAqLwouZmVhdHVyZS1pdGVtIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXBhZGRpbmc6IDAgNTBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7CgkuZmVhdHVyZS1pdGVtIHsKCQlwYWRkaW5nOiAwOwoJfQp9CgouZmVhdHVyZS1pdGVtOmhvdmVyIC5mZWF0dXJlLWl0ZW1fX2ljb246OmJlZm9yZSB7CglvcGFjaXR5OiAwOwp9CgouZmVhdHVyZS1pdGVtOmhvdmVyIC5mZWF0dXJlLWl0ZW1fX2ljb246OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5mZWF0dXJlLWl0ZW1fX2ljb24gewoJd2lkdGg6IDEwM3B4OwoJaGVpZ2h0OiAxMDNweDsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWxpbmUtaGVpZ2h0OiAxMDNweDsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7Cglmb250LXNpemU6IDQycHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5mZWF0dXJlLWl0ZW1fX2ljb246OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJei1pbmRleDogLTE7CglvcGFjaXR5OiAxOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cn0KCi5mZWF0dXJlLWl0ZW1fX2ljb246OmFmdGVyIHsKCWJveC1zaGFkb3c6IGluc2V0IC00cHggLTNweCA4cHggMHB4IHJnYmEoNTIsIDU2LCA3MiwgMC44KSwgaW5zZXQgM3B4IDNweCAxNnB4IDBweCByZ2JhKDEyLCAxMSwgMTIsIDAuNiksIGluc2V0IC0xN3B4IC0xMnB4IDMzcHggMHB4IHJnYmEoNTIsIDU2LCA3MiwgMC44KSwgaW5zZXQgMTJweCAxMnB4IDY3cHggMHB4IHJnYmEoMTIsIDExLCAxMiwgMC42KSAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJei1pbmRleDogLTE7CglvcGFjaXR5OiAwOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cn0KCi5mZWF0dXJlLWl0ZW1fX2NvbnRlbnQgewoJbWFyZ2luLXRvcDogMzBweDsKfQoKLmZlYXR1cmUtaXRlbV9fdGl0bGUgewoJbWFyZ2luLWJvdHRvbTogMTBweDsKfQoKZGl2W2NsYXNzKj0iY29sIl06bnRoLW9mLXR5cGUoM24gKyAxKSAuZmVhdHVyZS1pdGVtX19pY29uIHsKCWNvbG9yOiAjY2UzMzAzOwp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtb2YtdHlwZSgzbiArIDIpIC5mZWF0dXJlLWl0ZW1fX2ljb24gewoJY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7Cn0KCmRpdltjbGFzcyo9ImNvbCJdOm50aC1vZi10eXBlKDNuICsgMykgLmZlYXR1cmUtaXRlbV9faWNvbiB7Cgljb2xvcjogIzI2NWJmMzsKfQoKLmZlYXR1cmUtaXRlbS13cmFwcGVyIC5mZWF0dXJlLWl0ZW0gewoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgouZmVhdHVyZS1pdGVtLXdyYXBwZXIgLmZlYXR1cmUtaXRlbTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA0MHB4OwoJbGVmdDogLTkwcHg7Cgl3aWR0aDogMTQ0cHg7CgloZWlnaHQ6IDZweDsKCWJhY2tncm91bmQtY29sb3I6ICMzNDM3NDc7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLmZlYXR1cmUtaXRlbS13cmFwcGVyIC5mZWF0dXJlLWl0ZW06OmJlZm9yZSB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLmZlYXR1cmUtaXRlbS13cmFwcGVyIC5mZWF0dXJlLWl0ZW06OmFmdGVyIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA0N3B4OwoJbGVmdDogLTkwcHg7Cgl3aWR0aDogMTQ0cHg7CgloZWlnaHQ6IDZweDsKCWJhY2tncm91bmQtY29sb3I6ICMyMjIzMmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLmZlYXR1cmUtaXRlbS13cmFwcGVyIC5mZWF0dXJlLWl0ZW06OmFmdGVyIHsKCQlkaXNwbGF5OiBub25lOwoJfQp9CgouZmVhdHVyZS1pdGVtLXdyYXBwZXIgZGl2W2NsYXNzKj0iY29sIl06Zmlyc3QtY2hpbGQgLmZlYXR1cmUtaXRlbTo6YmVmb3JlIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5mZWF0dXJlLWl0ZW0td3JhcHBlciBkaXZbY2xhc3MqPSJjb2wiXTpmaXJzdC1jaGlsZCAuZmVhdHVyZS1pdGVtOjphZnRlciB7CglkaXNwbGF5OiBub25lOwp9CgovKiBmZWF0dXJlLXNlY3Rpb24gY3NzIGVuZCAqLwovKiBwcmljaW5nLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5wcmljaW5nLWl0ZW0gewoJdGV4dC1hbGlnbjogY2VudGVyOwoJcGFkZGluZzogMzBweDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7CgloZWlnaHQ6IDEwMCU7Cn0KCi5wcmljaW5nLWl0ZW1fX2hlYWRlciB7CglwYWRkaW5nOiA0MHB4IDMwcHggMzBweCAzMHB4OwoJYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwOwoJLW8tYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKfQoKLnByaWNpbmctaXRlbV9faGVhZGVyIC5wYWNrYWdlX19wcmljZSB7Cglmb250LXNpemU6IDI4cHg7Cglmb250LWZhbWlseTogIkV4byIsIHNhbnMtc2VyaWY7Cglmb250LXdlaWdodDogNzAwOwoJY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7CglkaXNwbGF5OiBibG9jazsKfQoKLnByaWNpbmctaXRlbV9faGVhZGVyIC5wYWNrYWdlX19vZmZlciB7CgltYXJnaW4tdG9wOiAyMHB4OwoJcGFkZGluZzogMTBweCAzMHB4OwoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJcG9zaXRpb246IHJlbGF0aXZlOwoJei1pbmRleDogMTsKCWZvbnQtZmFtaWx5OiAiRXhvIiwgc2Fucy1zZXJpZjsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtc2l6ZTogMThweDsKfQoKLnByaWNpbmctaXRlbV9faGVhZGVyIC5wYWNrYWdlX19vZmZlcjo6YmVmb3JlIHsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJvcmRlcjogMXB4IHNvbGlkICMzMDMxNDIgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDhweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiA4cHg7CgktbXMtYm9yZGVyLXJhZGl1czogOHB4OwoJLW8tYm9yZGVyLXJhZGl1czogOHB4Owp9CgoucHJpY2luZy1pdGVtIC5wYWNrYWdlX19mZWF0dXJlLWxpc3QgbGkgewoJcGFkZGluZzogMTVweCAxNXB4OwoJbWFyZ2luLXRvcDogMjBweDsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKfQoKLyogcHJpY2luZy1zZWN0aW9uIGNzcyBlbmQgKi8KLyogZG93bmxvYWQtc2VjdGlvbiBjc3Mgc3RhcnQgKi8KLmRvd25sb2FkX190aHVtYiB7CgltYXJnaW4tYm90dG9tOiA3NXB4Owp9CgouZG93bmxvYWQtY29udGVudCAuZG93bmxvYWRfX3RpdGxlIHsKCW1hcmdpbi1ib3R0b206IDMwcHg7Cn0KCi5kb3dubG9hZC1jb250ZW50IC5idG4tYXJlYSB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CglhbGlnbi1pdGVtczogY2VudGVyOwoJbWFyZ2luLXRvcDogLTVweCAtMTVweDsKfQoKLmRvd25sb2FkLWNvbnRlbnQgLmJ0bi1hcmVhIGEgewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cgl3aWR0aDogMjAwcHg7CglwYWRkaW5nOiA1cHggMjBweCAxM3B4IDI0cHg7CglsaW5lLWhlaWdodDogMTsKCW1hcmdpbjogNXB4IDE1cHg7Cn0KCi5kb3dubG9hZC1jb250ZW50IC5idG4tYXJlYSBhIC5pY29uIHsKCXdpZHRoOiA0MHB4OwoJdGV4dC1hbGlnbjogbGVmdDsKfQoKLmRvd25sb2FkLWNvbnRlbnQgLmJ0bi1hcmVhIGEgLmNvbnRlbnQgewoJd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpOwoJcGFkZGluZy1sZWZ0OiAxMHB4OwoJdGV4dC1hbGlnbjogbGVmdDsKfQoKLmRvd25sb2FkLWNvbnRlbnQgLmJ0bi1hcmVhIGEgLmNvbnRlbnQgLmNhcHRpb24gewoJZm9udC1zaXplOiAxMXB4OwoJZm9udC13ZWlnaHQ6IDQwMDsKCWNvbG9yOiAjZmZmZmZmOwoJbGluZS1oZWlnaHQ6IDE7CgltYXJnaW4tYm90dG9tOiA4cHg7Cn0KCi5kb3dubG9hZC1jb250ZW50IC5idG4tYXJlYSBhIC5jb250ZW50IHNwYW46bm90KC5jYXB0aW9uKSB7Cglmb250LXNpemU6IDE2cHg7Cglmb250LXdlaWdodDogNzAwOwoJY29sb3I6ICNmZmZmZmY7CglsaW5lLWhlaWdodDogMTsKfQoKLyogZG93bmxvYWQtc2VjdGlvbiBjc3MgZW5kICovCi8qIGhvdy13b3JrLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5ob3ctd29yay1pdGVtIHsKCXBhZGRpbmctbGVmdDogMzBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbi10b3A6IDQwcHg7Cn0KCi5ob3ctd29yay1pdGVtOjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDVweDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTVweDsKCWhlaWdodDogMTVweDsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjN2MxNzI5IDAlLCAjZWY0NjY1IDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM3YzE3MjkgMCUsICNlZjQ2NjUgNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjN2MxNzI5IDAlLCAjZWY0NjY1IDczJSk7Cn0KCi5ob3ctd29yay1pdGVtX190aXRsZSB7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9CgouaG93LXdvcmstaXRlbTpudGgtb2YtdHlwZSgyKTo6YmVmb3JlIHsKCWJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAzNTkwNyAwJSwgIzBmYmIyOCA3MyUpOwoJYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDM1OTA3IDAlLCAjMGZiYjI4IDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAzNTkwNyAwJSwgIzBmYmIyOCA3MyUpOwp9CgouaG93LXdvcmstaXRlbTpudGgtb2YtdHlwZSgzKTo6YmVmb3JlIHsKCWJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA5MzJhNyAwJSwgIzI2NWJmMyA3MyUpOwoJYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDkzMmE3IDAlLCAjMjY1YmYzIDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA5MzJhNyAwJSwgIzI2NWJmMyA3MyUpOwp9Cgouc3RlcC13cmFwcGVyIHsKCXdpZHRoOiA2NjVweDsKCWhlaWdodDogNjY1cHg7CglmbG9hdDogbGVmdDsKCWJveC1zaGFkb3c6IC0wLjcwN3B4IC0wLjcwN3B4IDBweCAwcHggcmdiYSg1MiwgNTYsIDcyLCAwLjU5KSwgNnB4IDRweCA1cHggMHB4IHJnYmEoMjgsIDI4LCAzOCwgMC4zNCksIGluc2V0IDNweCAzcHggMHB4IDBweCByZ2JhKDc0LCA3NiwgMTAxLCAwLjE2KTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5zdGVwLXdyYXBwZXIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi5zdGVwLXdyYXBwZXI6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogNTAlOwoJbGVmdDogNTAlOwoJd2lkdGg6IDQ4MHB4OwoJaGVpZ2h0OiA0ODBweDsKCWJveC1zaGFkb3c6IDAuNjY5cHggMC43NDNweCAycHggMnB4IHJnYmEoNTIsIDU2LCA3MiwgMC45KSwgLTVweCAtNHB4IDVweCAwcHggcmdiYSgyOCwgMjgsIDM4LCAwLjgpLCBpbnNldCAzcHggM3B4IDBweCAwcHggcmdiYSg3NCwgNzYsIDEwMSwgMC4yKTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJYW5pbWF0aW9uOiBjaXJjbGVTcGluIDVzIGluZmluaXRlIGxpbmVhcjsKfQoKLnN0ZXAtd3JhcHBlcjo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDUwJTsKCWxlZnQ6IDUwJTsKCXdpZHRoOiAyNjVweDsKCWhlaWdodDogMjY1cHg7Cglib3gtc2hhZG93OiAwLjY2OXB4IDAuNzQzcHggMnB4IDJweCByZ2JhKDUyLCA1NiwgNzIsIDAuOSksIC01cHggLTRweCA1cHggMHB4IHJnYmEoMjgsIDI4LCAzOCwgMC44KSwgaW5zZXQgM3B4IDNweCAwcHggMHB4IHJnYmEoNzQsIDc2LCAxMDEsIDAuMik7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CgktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCWFuaW1hdGlvbjogY2lyY2xlU3BpbiA1cyBpbmZpbml0ZSBsaW5lYXI7Cn0KCi5zdGVwLXdyYXBwZXIgLnN0ZXAtc2luZ2xlIHsKCXdpZHRoOiA5MXB4OwoJaGVpZ2h0OiA5MXB4OwoJYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjMyNDMwIDElLCAjNDc0ODYxIDEwMCUpOwoJYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjMyNDMwIDElLCAjNDc0ODYxIDEwMCUpOwoJYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyMzI0MzAgMSUsICM0NzQ4NjEgMTAwJSk7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKCWFsaWduLWNvbnRlbnQ6IGNlbnRlcjsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cglib3gtc2hhZG93OiBpbnNldCAtMTQuODQ5cHggLTE0Ljg0OXB4IDIxcHggMHB4IHJnYmEoNTIsIDU2LCA3MiwgMC44KSwgaW5zZXQgOC41cHggMTQuNzIycHggNTRweCAwcHggcmdiYSgxMiwgMTEsIDEyLCAwLjkpOwoJei1pbmRleDogMTsKfQoKLnN0ZXAtd3JhcHBlciAuc3RlcC1zaW5nbGUgc3BhbiB7Cgl0ZXh0LXNoYWRvdzogM3B4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwoJZm9udC1zaXplOiAyMnB4OwoJbGluZS1oZWlnaHQ6IDEuNDsKfQoKLnN0ZXAtd3JhcHBlciAuc3RlcC1zaW5nbGU6bnRoLWNoaWxkKDEpIHsKCXRvcDogMDsKCWxlZnQ6IDIwJTsKfQoKLnN0ZXAtd3JhcHBlciAuc3RlcC1zaW5nbGU6bnRoLWNoaWxkKDEpIHNwYW4gewoJY29sb3I6ICNjZTMzMDM7Cn0KCi5zdGVwLXdyYXBwZXIgLnN0ZXAtc2luZ2xlOm50aC1jaGlsZCgyKSB7Cgl0b3A6IDI4JTsKCXJpZ2h0OiAxMSU7Cn0KCi5zdGVwLXdyYXBwZXIgLnN0ZXAtc2luZ2xlOm50aC1jaGlsZCgyKSBzcGFuIHsKCWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOwp9Cgouc3RlcC13cmFwcGVyIC5zdGVwLXNpbmdsZTpudGgtY2hpbGQoMykgewoJdG9wOiA0OSU7CglsZWZ0OiAyNSU7Cn0KCi5zdGVwLXdyYXBwZXIgLnN0ZXAtc2luZ2xlOm50aC1jaGlsZCgzKSBzcGFuIHsKCWNvbG9yOiAjMjY1YmYzOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgY2lyY2xlU3BpbiB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7Cgl9CgoJMTAwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7Cgl9Cn0KCkAtbW96LWtleWZyYW1lcyBjaXJjbGVTcGluIHsKCTAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDBkZWcpOwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsKCX0KCgkxMDAlIHsKCQktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzNjBkZWcpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsKCX0KfQoKQC1tcy1rZXlmcmFtZXMgY2lyY2xlU3BpbiB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7Cgl9CgoJMTAwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7Cgl9Cn0KCkBrZXlmcmFtZXMgY2lyY2xlU3BpbiB7CgkwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7CgkJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7Cgl9CgoJMTAwJSB7CgkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsKCQktbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7Cgl9Cn0KCi8qIGhvdy13b3JrLXNlY3Rpb24gY3NzIGVuZCAqLwovKiBzdGF0aXN0aWNzLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5zdGF0aXN0aWMtaXRlbSB7CglwYWRkaW5nOiAzMHB4IDMwcHggMzBweCA1MHB4OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Owp9Cgouc3RhdGlzdGljLWl0ZW06aG92ZXIgewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50Owp9Cgouc3RhdGlzdGljLWl0ZW06OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCWxlZnQ6IDQ5LjMlOwoJYm90dG9tOiAtNDVweDsKCXdpZHRoOiAzcHg7CgloZWlnaHQ6IDMycHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMTYxNzIxOwp9Cgouc3RhdGlzdGljLWl0ZW06OmFmdGVyIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJbGVmdDogNTAlOwoJYm90dG9tOiAtNDVweDsKCXdpZHRoOiAzcHg7CgloZWlnaHQ6IDMycHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzMzNDQ1Owp9Cgouc3RhdGlzdGljLWl0ZW06bGFzdC1jaGlsZDo6YmVmb3JlIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5zdGF0aXN0aWMtaXRlbTpsYXN0LWNoaWxkOjphZnRlciB7CglkaXNwbGF5OiBub25lOwp9Cgouc3RhdGlzdGljLWl0ZW1fX3RpdGxlIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLnN0YXRpc3RpYy1pdGVtX190aXRsZTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA4cHg7CglsZWZ0OiAtMjZweDsKCXdpZHRoOiAxNHB4OwoJaGVpZ2h0OiAxNHB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwp9Cgouc3RhdGlzdGljLWl0ZW0uY29sb3Itb25lIC5zdGF0aXN0aWMtaXRlbV9fdGl0bGU6OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZjI1ODQgMCUsICM4NjdhZWIgNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJmMjU4NCAwJSwgIzg2N2FlYiA3MyUpOwoJYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZjI1ODQgMCUsICM4NjdhZWIgNzMlKTsKfQoKLnN0YXRpc3RpYy1pdGVtLmNvbG9yLXR3byAuc3RhdGlzdGljLWl0ZW1fX3RpdGxlOjpiZWZvcmUgewoJYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDIzZDQyIDElLCAjNjNkMGRhIDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMjNkNDIgMSUsICM2M2QwZGEgNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDIzZDQyIDElLCAjNjNkMGRhIDczJSk7Cn0KCi5zdGF0aXN0aWMtaXRlbS5jb2xvci10aHJlZSAuc3RhdGlzdGljLWl0ZW1fX3RpdGxlOjpiZWZvcmUgewoJYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjg0NTA1IDAlLCAjZmZjNTViIDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2ODQ1MDUgMCUsICNmZmM1NWIgNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjg0NTA1IDAlLCAjZmZjNTViIDczJSk7Cn0KCi5zdGF0aXN0aWMtaXRlbS5jb2xvci1mb3VyIC5zdGF0aXN0aWMtaXRlbV9fdGl0bGU6OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMzNkMGIgMSUsICMwZmJiMjggNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAzM2QwYiAxJSwgIzBmYmIyOCA3MyUpOwoJYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMzNkMGIgMSUsICMwZmJiMjggNzMlKTsKfQoKLnN0YXRpc3RpYy1pdGVtX190aXRsZSB7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9Cgouc3RhdGlzdGljLWl0ZW0gKyAuc3RhdGlzdGljLWl0ZW0gewoJbWFyZ2luLXRvcDogNjBweDsKfQoKLnN0YXRpc3RpYy10aHVtYiB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CglhbmltYXRpb246IGN1c3RvbUJvdW5jZSAzcyBpbmZpbml0ZSBsaW5lYXI7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnN0YXRpc3RpYy10aHVtYiB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLyogc3RhdGlzdGljcy1zZWN0aW9uIGNzcyBlbmQgKi8KLyogcHJvZml0LWNhbGN1bGF0b3Itc2VjdGlvbiBjc3Mgc3RhcnQgKi8KQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkucHJvZml0LWNhbGN1bGF0b3Itc2VjdGlvbiB7CgkJcGFkZGluZy1ib3R0b206IDkwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnByb2ZpdC1jYWxjdWxhdG9yLXNlY3Rpb24gewoJCXBhZGRpbmctYm90dG9tOiA4MHB4OwoJfQp9CgoucHJvZml0LWNhbGN1bGF0b3Itd3JhcHBlciAudGl0bGUgewoJZm9udC1zaXplOiA0MHB4OwoJbWFyZ2luLWJvdHRvbTogMzZweDsKCW1hcmdpbi10b3A6IC0xMHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5wcm9maXQtY2FsY3VsYXRvci13cmFwcGVyIC50aXRsZSB7CgkJZm9udC1zaXplOiAzMnB4OwoJfQp9CgoucHJvZml0LWNhbGN1bGF0b3ItZm9ybSAuZm9ybS1yb3cgewoJbWFyZ2luLWxlZnQ6IC0xNXB4OwoJbWFyZ2luLXJpZ2h0OiAtMTVweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkucHJvZml0LWNhbGN1bGF0b3ItZm9ybSAuZm9ybS1yb3cgewoJCW1hcmdpbi1ib3R0b206IC0xNXB4OwoJfQp9CgoucHJvZml0LWNhbGN1bGF0b3ItZm9ybSAuZm9ybS1yb3cgZGl2W2NsYXNzKj0iY29sIl0gewoJcGFkZGluZy1sZWZ0OiAxNXB4OwoJcGFkZGluZy1yaWdodDogMTVweDsKfQoKLnByb2ZpdC1jYWxjdWxhdG9yLWZvcm0gLmZvcm0tcm93IC5mb3JtLWdyb3VwIHsKCW1hcmdpbi1ib3R0b206IDI1cHg7Cn0KCi5wcm9maXQtY2FsY3VsYXRvci1mb3JtIGxhYmVsIHsKCWZvbnQtc2l6ZTogMThweDsKfQoKLnByb2ZpdC10aHVtYiB7Cgl0ZXh0LWFsaWduOiByaWdodDsKCWFuaW1hdGlvbjogY3VzdG9tQm91bmNlIDNzIGxpbmVhciBpbmZpbml0ZTsKCWZsb2F0OiBsZWZ0OwoJbWFyZ2luLWxlZnQ6IDEwMHB4OwoJd2lkdGg6IDE0NSU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxNDUwcHgpIHsKCS5wcm9maXQtdGh1bWIgewoJCW1hcmdpbi1sZWZ0OiA1MHB4OwoJCXdpZHRoOiAxMjAlOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTM1MHB4KSB7CgkucHJvZml0LXRodW1iIHsKCQltYXJnaW4tbGVmdDogNTBweDsKCQl3aWR0aDogMTAwJTsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLnByb2ZpdC10aHVtYiB7CgkJbWFyZ2luLWxlZnQ6IDA7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnByb2ZpdC10aHVtYiB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLyogcHJvZml0LWNhbGN1bGF0b3Itc2VjdGlvbiBjc3MgZW5kICovCi8qIGxhdGVzdC10cmFuc2FjdGlvbi1zZWN0aW9uIGNzcyBzdGFydCAqLwpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5sYXRlc3QtdHJhbnNhY3Rpb24tYXJlYSB7CgkJb3ZlcmZsb3c6IGF1dG87Cgl9Cn0KCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgewoJYm9yZGVyLXNwYWNpbmc6IDE1cHg7Cglib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOwoJYm9yZGVyLXJhZGl1czogMjVweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMjVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMjVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAyNXB4OwoJLW8tYm9yZGVyLXJhZGl1czogMjVweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkubGF0ZXN0LXRyYW5zYWN0aW9uLXRhYmxlIHsKCQl3aWR0aDogOTMwcHg7Cgl9Cn0KCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgdGhlYWQgdHIgewoJYm9yZGVyLXJhZGl1czogMjVweCAyNXB4IDAgMDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMjVweCAyNXB4IDAgMDsKCS1tb3otYm9yZGVyLXJhZGl1czogMjVweCAyNXB4IDAgMDsKCS1tcy1ib3JkZXItcmFkaXVzOiAyNXB4IDI1cHggMCAwOwoJLW8tYm9yZGVyLXJhZGl1czogMjVweCAyNXB4IDAgMDsKfQoKLmxhdGVzdC10cmFuc2FjdGlvbi10YWJsZSB0Ym9keSB0cjpob3ZlciB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cn0KCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgdHIgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgoubGF0ZXN0LXRyYW5zYWN0aW9uLXRhYmxlIHRyIHRoIHsKCXBhZGRpbmc6IDIwcHggMzBweDsKCWNvbG9yOiAjZmZmZmZmOwp9CgoubGF0ZXN0LXRyYW5zYWN0aW9uLXRhYmxlIHRyIHRkIHsKCXBhZGRpbmc6IDIwcHggMzBweDsKCWNvbG9yOiAjZmZmZmZmOwp9CgoubGF0ZXN0LXRyYW5zYWN0aW9uLXRhYmxlIC5wZXJzb24gewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5sYXRlc3QtdHJhbnNhY3Rpb24tdGFibGUgLnBlcnNvbl9fbmFtZSB7CglwYWRkaW5nLWxlZnQ6IDE1cHg7Cn0KCi8qIGxhdGVzdC10cmFuc2FjdGlvbi1zZWN0aW9uIGNzcyBlbmQgKi8KLyogaW52ZXN0b3Itc2VjdGlvbmNzcyBzdGFydCAqLwouaW52ZXN0b3ItaXRlbSB7CglwYWRkaW5nOiAyNXB4OwoJZGlzcGxheTogZmxleCAhaW1wb3J0YW50OwoJZmxleC13cmFwOiB3cmFwOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5pbnZlc3Rvci1pdGVtOjpiZWZvcmUgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJei1pbmRleDogLTE7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5pbnZlc3Rvci1pdGVtOjphZnRlciB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJvcmRlcjogMXB4IHNvbGlkICMzMDMxNDIgIWltcG9ydGFudDsKCXotaW5kZXg6IC0xOwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Ci5pbnZlc3Rvci1pdGVtOmhvdmVyOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQouaW52ZXN0b3ItaXRlbTpob3Zlcjo6YWZ0ZXIgewoJb3BhY2l0eTogMTsKfQouaW52ZXN0b3ItaXRlbV9fY29udGVudCAuaW52ZXN0b3JfX25hbWUgewoJbWFyZ2luLWJvdHRvbTogMTBweDsKCWZvbnQtd2VpZ2h0OiA1MDA7Cn0KLmludmVzdG9yLWl0ZW1fX251bWJlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogODBweDsKICAgIGhlaWdodDogODBweDsKICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1iYXNlKS8gMC4xKTsKICAgIGJvcmRlci1yYWRpdXM6IDQ2JSA1NCUgNTUlIDQ1JSAvIDM1JSAzOCUgNjIlIDY1JTsKICAgIHJpZ2h0OiAyMHB4OwogICAgdG9wOiAyMHB4OwogICAgZGlzcGxheTogZmxleDsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGZvbnQtc2l6ZTogMjNweDsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBjb2xvcjogI2ZmZmZmZjU0OwoJdHJhbnNpdGlvbjogLjJzIGxpbmVhcjsKfQouaW52ZXN0b3ItaXRlbTpob3ZlciAuaW52ZXN0b3ItaXRlbV9fbnVtYmVyIHsKCWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTExKTsKCWZvbnQtc2l6ZTogMjVweDsKfQouaW52ZXN0b3ItaXRlbSAuYW1vdW50IHsKCWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOwoJZm9udC13ZWlnaHQ6IDYwMDsKfQoKCgouaW52ZXN0b3ItY2FyZCB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwOwoJcGFkZGluZzogMjVweDsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwoJcG9zaXRpb246IHJlbGF0aXZlOwoJb3ZlcmZsb3c6IGhpZGRlbjsKfQpAbWVkaWEgKG1heC13aWR0aDogNDAwcHgpIHsKCS5pbnZlc3Rvci1jYXJkIHsKCQlwYWRkaW5nOiAyMHB4IDE1cHg7Cgl9Cn0KCgoKCgoKLyogaW52ZXN0b3Itc2VjdGlvbmNzcyBlbmQgKi8KLyogY29tbWlzc2lvbi1zZWN0aW9uIGNzcyBzdGFydCAqLwouY29tbWlzc2lvbi1pdGVtIHsKCW1hcmdpbi10b3A6IDUwcHg7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwp9CgouY29tbWlzc2lvbi1pdGVtX19pY29uIHsKCXdpZHRoOiA4MHB4OwoJaGVpZ2h0OiA4MXB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgouY29tbWlzc2lvbi1pdGVtX19pY29uIGkgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiA1MCU7CglsZWZ0OiA1MCU7Cglmb250LXNpemU6IDI4cHg7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cn0KCi5jb21taXNzaW9uLWl0ZW1fX2NvbnRlbnQgewoJd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpOwoJcGFkZGluZy1sZWZ0OiAzMHB4Owp9CgouY29tbWlzc2lvbi1pdGVtOm50aC1vZi10eXBlKDNuICsgMSkgLmNvbW1pc3Npb24taXRlbV9faWNvbiB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKfQoKLmNvbW1pc3Npb24taXRlbTpudGgtb2YtdHlwZSgzbiArIDIpIC5jb21taXNzaW9uLWl0ZW1fX2ljb24gewoJY29sb3I6ICNjZTMzMDM7Cn0KCi5jb21taXNzaW9uLWl0ZW06bnRoLW9mLXR5cGUoM24gKyAzKSAuY29tbWlzc2lvbi1pdGVtX19pY29uIHsKCWNvbG9yOiAjMjY1YmYzOwp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5jb21taXNzaW9uLXNlY3Rpb24gLm91dHNldC1jaXJjbGUgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi5vdXRzZXQtY2lyY2xlIHsKCXdpZHRoOiA2NjVweDsKCWhlaWdodDogNjY1cHg7CglmbG9hdDogbGVmdDsKCWJveC1zaGFkb3c6IC0wLjcwN3B4IC0wLjcwN3B4IDBweCAwcHggcmdiYSg1MiwgNTYsIDcyLCAwLjU5KSwgNC45MTVweCAzLjQ0MXB4IDVweCAwcHggcmdiYSgyOCwgMjgsIDM4LCAwLjgpLCBpbnNldCAyLjgyOHB4IDIuODI4cHggMHB4IDBweCByZ2JhKDc0LCA3NiwgMTAxLCAwLjE2KTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9Cgoub3V0c2V0LWNpcmNsZTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA1MCU7CglsZWZ0OiA1MCU7Cgl3aWR0aDogNDgwcHg7CgloZWlnaHQ6IDQ4MHB4OwoJYm94LXNoYWRvdzogLTAuNzA3cHggLTAuNzA3cHggMHB4IDBweCByZ2JhKDUyLCA1NiwgNzIsIDAuNTkpLCA0LjkxNXB4IDMuNDQxcHggNXB4IDBweCByZ2JhKDI4LCAyOCwgMzgsIDAuOCksIGluc2V0IDIuODI4cHggMi44MjhweCAwcHggMHB4IHJnYmEoNzQsIDc2LCAxMDEsIDAuMTYpOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CglhbmltYXRpb246IGNpcmNsZVNwaW4gNXMgaW5maW5pdGUgbGluZWE7Cn0KCi5vdXRzZXQtY2lyY2xlOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogNTAlOwoJbGVmdDogNTAlOwoJd2lkdGg6IDI2NXB4OwoJaGVpZ2h0OiAyNjVweDsKCWJveC1zaGFkb3c6IC0wLjcwN3B4IC0wLjcwN3B4IDBweCAwcHggcmdiYSg1MiwgNTYsIDcyLCAwLjU5KSwgNC45MTVweCAzLjQ0MXB4IDVweCAwcHggcmdiYSgyOCwgMjgsIDM4LCAwLjgpLCBpbnNldCAyLjgyOHB4IDIuODI4cHggMHB4IDBweCByZ2JhKDc0LCA3NiwgMTAxLCAwLjE2KTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJYW5pbWF0aW9uOiBjaXJjbGVTcGluIDVzIGluZmluaXRlIGxpbmVhOwp9Cgoub3V0c2V0LWNpcmNsZSAuY29tbWlzc2lvbl9fdGh1bWIgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAxMiU7CglsZWZ0OiAtMzVweDsKCXotaW5kZXg6IDI7CglhbmltYXRpb246IGN1c3RvbUJvdW5jZSAzcyBpbmZpbml0ZSBsaW5lYXI7Cn0KCi8qIGNvbW1pc3Npb24tc2VjdGlvbiBjc3MgZW5kKi8KLyogb3ZlcnZpZXctc2VjdGlvbiBjc3Mgc3RhcnQgKi8KLm92ZXJ2aWV3LWl0ZW0gewoJdGV4dC1hbGlnbjogY2VudGVyOwoJcGFkZGluZzogMzBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm92ZXJ2aWV3LWl0ZW06OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgoub3ZlcnZpZXctaXRlbTo6YWZ0ZXIgewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgoub3ZlcnZpZXctaXRlbTpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5vdmVydmlldy1pdGVtOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9Cgoub3ZlcnZpZXctaXRlbSBzcGFuIHsKCWZvbnQtc2l6ZTogNTBweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cglmb250LWZhbWlseTogIkV4byIsIHNhbnMtc2VyaWY7CglsaW5lLWhlaWdodDogMTsKfQoKLm92ZXJ2aWV3LWl0ZW0gc3Bhbi50ZXh0IHsKCWZvbnQtc2l6ZTogNDBweDsKfQoKLm92ZXJ2aWV3LWl0ZW0gcCB7Cglmb250LXNpemU6IDE4cHg7CgltYXJnaW4tdG9wOiAxMHB4OwoJZm9udC13ZWlnaHQ6IDUwMDsKfQoKLyogb3ZlcnZpZXctc2VjdGlvbiBjc3MgZW5kICovCi8qIHRlc3RpbW9uaWFsLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi50ZXN0aW1vbmlhbC1zbGlkZXItYXJlYSB7CgltYXJnaW46IDAgMTAwcHggNjBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkudGVzdGltb25pYWwtc2xpZGVyLWFyZWEgewoJCW1hcmdpbjogMCA1MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKCS50ZXN0aW1vbmlhbC1zbGlkZXItYXJlYSB7CgkJbWFyZ2luOiAwIDA7Cgl9Cn0KCi50ZXN0aW1vbmFpbC1zbGlkZXIgewoJcGFkZGluZzogNTBweCAxMDBweDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLnRlc3RpbW9uYWlsLXNsaWRlciB7CgkJcGFkZGluZzogNTBweCA1MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKCS50ZXN0aW1vbmFpbC1zbGlkZXIgewoJCXBhZGRpbmc6IDQwcHggMzBweDsKCX0KfQoKLnRlc3RpbW9uYWlsLXNsaWRlcjo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAzMHB4OwoJbGVmdDogLTMwcHg7Cgl6LWluZGV4OiAtMTsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cgl3aWR0aDogY2FsYygxMDAlICsgNjBweCk7CgloZWlnaHQ6IDEwMCU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkudGVzdGltb25haWwtc2xpZGVyOjpiZWZvcmUgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi50ZXN0aW1vbmFpbC1zbGlkZXI6OmFmdGVyIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA2MHB4OwoJbGVmdDogLTYwcHg7Cgl6LWluZGV4OiAtMjsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cgl3aWR0aDogY2FsYygxMDAlICsgMTIwcHgpOwoJaGVpZ2h0OiAxMDAlOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnRlc3RpbW9uYWlsLXNsaWRlcjo6YWZ0ZXIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi50ZXN0aW1vbmlhbC1zaW5nbGUgewoJdGV4dC1hbGlnbjogY2VudGVyOwp9CgoudGVzdGltb25pYWwtc2luZ2xlIC5jbGllbnRfX3RodW1iIHsKCXdpZHRoOiAxMzVweDsKCWhlaWdodDogMTM1cHg7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglvdmVyZmxvdzogaGlkZGVuOwoJYm9yZGVyLXJhZGl1czogNTAlOwp9CgoudGVzdGltb25pYWwtc2luZ2xlIC5jbGllbnRfX3RodW1iIGltZyB7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCW9iamVjdC1maXQ6IGNvdmVyOwp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS50ZXN0aW1vbmlhbC1zaW5nbGUgLmNsaWVudF9fdGh1bWIgewoJCXdpZHRoOiAxMTBweDsKCQloZWlnaHQ6IDExMHB4OwoJfQp9CgoudGVzdGltb25pYWwtc2luZ2xlIGkgewoJZm9udC1zaXplOiA3MnB4OwoJY29sb3I6ICNjZTMzMDM7CglkaXNwbGF5OiBibG9jazsKCW1hcmdpbi10b3A6IDE1cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnRlc3RpbW9uaWFsLXNpbmdsZSBpIHsKCQlmb250LXNpemU6IDQ4cHg7Cgl9Cn0KCi50ZXN0aW1vbmlhbC1zaW5nbGUgcCB7Cgljb2xvcjogd2hpdGU7Cglmb250LXNpemU6IDI0cHg7CgltYXJnaW4tdG9wOiAxNXB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS50ZXN0aW1vbmlhbC1zaW5nbGUgcCB7CgkJZm9udC1zaXplOiAxOHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKCS50ZXN0aW1vbmlhbC1zaW5nbGUgcCB7CgkJZm9udC1zaXplOiAxNnB4OwoJfQp9CgoudGVzdGltb25pYWwtc2luZ2xlIC5jbGllbnRfX25hbWUgewoJZm9udC1zaXplOiAzMHB4OwoKCW1hcmdpbi10b3A6IDMwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnRlc3RpbW9uaWFsLXNpbmdsZSAuY2xpZW50X19uYW1lIHsKCQlmb250LXNpemU6IDI0cHg7Cgl9Cn0KCi50ZXN0aW1vbmlhbC1zaW5nbGUgLmRlc2lnbmF0aW9uIHsKCWZvbnQtc2l6ZTogMThweDsKCW1hcmdpbi10b3A6IDVweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkudGVzdGltb25pYWwtc2luZ2xlIC5kZXNpZ25hdGlvbiB7CgkJZm9udC1zaXplOiAxNnB4OwoJfQp9CgoudGVzdGltb25haWwtc2xpZGVyIC5zbGljay1hcnJvdyB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDEwMHB4OwoJbGVmdDogMzElOwoJd2lkdGg6IDUwcHg7CgloZWlnaHQ6IDUwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CglsaW5lLWhlaWdodDogNTBweDsKCWNvbG9yOiAjZmVmZWZlOwoJZm9udC1zaXplOiAyMnB4OwoJY3Vyc29yOiBwb2ludGVyOwoJei1pbmRleDogMTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkudGVzdGltb25haWwtc2xpZGVyIC5zbGljay1hcnJvdyB7CgkJbGVmdDogMjAlOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS50ZXN0aW1vbmFpbC1zbGlkZXIgLnNsaWNrLWFycm93IHsKCQl0b3A6IDgwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkgewoJLnRlc3RpbW9uYWlsLXNsaWRlciAuc2xpY2stYXJyb3cgewoJCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKCX0KfQoKLnRlc3RpbW9uYWlsLXNsaWRlciAuc2xpY2stYXJyb3c6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCXotaW5kZXg6IC0xOwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi50ZXN0aW1vbmFpbC1zbGlkZXIgLnNsaWNrLWFycm93OjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCXotaW5kZXg6IC0xOwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnRlc3RpbW9uYWlsLXNsaWRlciAuc2xpY2stYXJyb3c6YWN0aXZlOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLnRlc3RpbW9uYWlsLXNsaWRlciAuc2xpY2stYXJyb3c6YWN0aXZlOjphZnRlciB7CglvcGFjaXR5OiAxOwp9CgoudGVzdGltb25haWwtc2xpZGVyIC5zbGljay1hcnJvdy5uZXh0IHsKCWxlZnQ6IDYzJTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkudGVzdGltb25haWwtc2xpZGVyIC5zbGljay1hcnJvdy5uZXh0IHsKCQlsZWZ0OiA3MCU7Cgl9Cn0KCi8qIHRlc3RpbW9uaWFsLXNlY3Rpb24gY3NzIGVuZCAqLwovKiBibG9nLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5wb3N0LWl0ZW0gewoJcGFkZGluZzogNDBweCAzMHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCWhlaWdodDogMTAwJTsKfQoKLnBvc3QtaXRlbTo6YmVmb3JlIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5wb3N0LWl0ZW06OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnBvc3QtaXRlbTpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5wb3N0LWl0ZW06aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5wb3N0LWl0ZW1fX3RhZ3MgewoJdGV4dC1hbGlnbjogY2VudGVyOwoJbWFyZ2luLWJvdHRvbTogMjBweDsKfQoKLnBvc3QtaXRlbV9fdGFncyBhIHsKCWZvbnQtc2l6ZTogMTRweDsKCgljb2xvcjogI2ZmZmZmZjsKfQoKLnBvc3QtaXRlbV9fY29udGVudCB7CgltYXJnaW4tdG9wOiAzMHB4Owp9CgoucG9zdC1pdGVtX19jb250ZW50IHAgewoJbWFyZ2luLXRvcDogMTVweDsKfQoKLnBvc3QtaXRlbS5zdHlsZS0tdHdvIHsKCXRleHQtYWxpZ246IGxlZnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgoucG9zdC1pdGVtLnN0eWxlLS10d286OmJlZm9yZSB7CglkaXNwbGF5OiBub25lOwp9CgoucG9zdC1pdGVtLnN0eWxlLS10d286OmFmdGVyIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5wb3N0LWl0ZW0uc3R5bGUtLXR3byAucG9zdC1pdGVtX19oZWFkZXIgewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKCW1hcmdpbi1ib3R0b206IDI1cHg7Cn0KCi5wb3N0LWl0ZW0uc3R5bGUtLXR3byAucG9zdF9fZGF0ZSB7Cgljb2xvcjogI2ZmZmZmZjsKfQoKLnBvc3QtaXRlbS5zdHlsZS0tdHdvIC5wb3N0X190aXRsZSB7CgltYXJnaW4tdG9wOiAxMHB4Owp9CgoucG9zdC1pdGVtLnN0eWxlLS10d28gLnBvc3RfX3RpdGxlIGEgewoJZm9udC1zaXplOiAyMHB4Owp9CgoucG9zdC1pdGVtLnN0eWxlLS10d28gLnBvc3QtaXRlbV9fdGh1bWIgewoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCW92ZXJmbG93OiBoaWRkZW47Cn0KCi5wb3N0LWl0ZW0uc3R5bGUtLXR3byAucG9zdC1pdGVtX19jb250ZW50IC5idG4gewoJbWFyZ2luLXRvcDogMzBweDsKfQoKLyogYmxvZy1zZWN0aW9uIGNzcyBlbmQgKi8KLyogYmxvZy1kZXRhaWxzIGNzcyBzdGFydCAqLwouc2luZ2xlLXBvc3RfX2NvbnRlbnQgewoJcGFkZGluZzogMzBweCAzMHB4OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnNpbmdsZS1wb3N0X19jb250ZW50IHsKCQlwYWRkaW5nOiAxNXB4OwoJfQp9Cgouc2luZ2xlLXBvc3RfX2NvbnRlbnQgLnNpbmdsZS1wb3N0X19oZWFkZXIgewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKCWdhcDogMTVweCAyNXB4Owp9Cgouc2luZ2xlLXBvc3RfX2NvbnRlbnQgLnNpbmdsZS1wb3N0X19oZWFkZXIgLnBvc3RfX2F1dGhvciB7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9CgoKCi5zaW5nbGUtcG9zdF9fY29udGVudCAuc2luZ2xlLXBvc3RfX3RodW1iIHsKCW1hcmdpbi10b3A6IDIwcHg7CglvdmVyZmxvdzogaGlkZGVuOwoJbWFyZ2luLWJvdHRvbTogMzBweDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KCi5zaW5nbGUtcG9zdF9fY29udGVudCAuc2luZ2xlLXBvc3RfX3RodW1iIGltZyB7Cgl3aWR0aDogMTAwJTsKfQoKLnNpbmdsZS1wb3N0X19jb250ZW50IHAgewoJbWFyZ2luLXRvcDogMjBweDsKfQoKLnNpbmdsZS1wb3N0X19jb250ZW50IGJsb2NrcXVvdGUgcCB7CgltYXJnaW46IDA7Cn0KCmJsb2NrcXVvdGUgewoJdGV4dC1hbGlnbjogY2VudGVyOwoJbWFyZ2luLXRvcDogNDBweDsKCW1hcmdpbi1ib3R0b206IDQwcHg7CglwYWRkaW5nOiAwIDQwcHg7Cn0KCmJsb2NrcXVvdGUgcCB7Cglmb250LXNpemU6IDE4cHg7Cglmb250LXdlaWdodDogNDAwOwoJZm9udC1zdHlsZTogaXRhbGljOwp9Cgouc2luZ2xlLXBvc3RfX2Zvb3RlciB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJcGFkZGluZzogMzBweDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJbWFyZ2luLXRvcDogMzBweDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4Owp9Cgouc2luZ2xlLXBvc3RfX2Zvb3RlciAudGFncyB7Cgl3aWR0aDogNTAlOwoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5zaW5nbGUtcG9zdF9fZm9vdGVyIC50YWdzIHNwYW4gewoJbWFyZ2luLXJpZ2h0OiAxMHB4OwoJZm9udC1zaXplOiAxOHB4Owp9Cgouc2luZ2xlLXBvc3RfX2Zvb3RlciAudGFncyBhIHsKCWZvbnQtc2l6ZTogMThweDsKfQoKLnNpbmdsZS1wb3N0X19mb290ZXIgLnRhZ3MgYTo6YWZ0ZXIgewoJY29udGVudDogIiwiOwoJbWFyZ2luLXJpZ2h0OiA1cHg7Cn0KCi5zaW5nbGUtcG9zdF9fZm9vdGVyIC50YWdzIGE6bGFzdC1jaGlsZDo6YmVmb3JlIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5zaW5nbGUtcG9zdF9fZm9vdGVyIC5zaGFyZSB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKfQoKLnNpbmdsZS1wb3N0X19mb290ZXIgLnNoYXJlIHNwYW4gewoJbWFyZ2luLXJpZ2h0OiAyMHB4OwoJZm9udC1zaXplOiAxOHB4Owp9Cgouc2luZ2xlLXBvc3RfX2Zvb3RlciAuc2hhcmUgYSB7Cgl3aWR0aDogMzRweDsKCWhlaWdodDogMzRweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWxpbmUtaGVpZ2h0OiAzNHB4OwoJZm9udC1zaXplOiAxM3B4OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cn0KCi5zaW5nbGUtcG9zdF9fZm9vdGVyIC5zaGFyZSBhOmhvdmVyIHsKCWNvbG9yOiAjY2UzMzAzOwp9Cgouc2luZ2xlLXBvc3RfX2Zvb3RlciAuc2hhcmUgYSArIGEgewoJbWFyZ2luLWxlZnQ6IDE1cHg7Cn0KCi5jb21tZW50LWFyZWEgewoJcGFkZGluZzogNTBweCAzMHB4OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCW1hcmdpbi10b3A6IDEwMHB4Owp9CgouY29tbWVudC1hcmVhX190aXRsZSB7Cglmb250LXNpemU6IDMwcHg7CgltYXJnaW4tYm90dG9tOiAzMHB4Owp9CgouY29tbWVudHMtbGlzdCA+IGxpICsgbGkgewoJbWFyZ2luLXRvcDogMzBweDsKfQoKLnNpbmdsZV9fY29tbWVudCB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwp9Cgouc2luZ2xlX19jb21tZW50IC50aHVtYiB7Cgl3aWR0aDogOTBweDsKCWhlaWdodDogOTBweDsKCW92ZXJmbG93OiBoaWRkZW47Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLnNpbmdsZV9fY29tbWVudCAuY29udGVudCB7Cgl3aWR0aDogY2FsYygxMDAlIC0gOTBweCk7CglwYWRkaW5nLWxlZnQ6IDQwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnNpbmdsZV9fY29tbWVudCAuY29udGVudCB7CgkJd2lkdGg6IDEwMCU7CgkJcGFkZGluZy1sZWZ0OiAwOwoJCW1hcmdpbi10b3A6IDMwcHg7Cgl9Cn0KCi5zaW5nbGVfX2NvbW1lbnQgLmNvbnRlbnQgLm5hbWUgewp9Cgouc2luZ2xlX19jb21tZW50IC5jb250ZW50IHAgewoJbWFyZ2luLXRvcDogMTBweDsKfQoKLnNpbmdsZV9fY29tbWVudCAuY29udGVudCAucmVwbHktYnRuIHsKCWZvbnQtc2l6ZTogMThweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogI2NlMzMwMzsKCW1hcmdpbi10b3A6IDIwcHg7Cn0KCi5oYXNfX2NvbW1lbnQgdWwgewoJcGFkZGluZy1sZWZ0OiA3MHB4OwoJbWFyZ2luLXRvcDogNDBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuaGFzX19jb21tZW50IHVsIHsKCQlwYWRkaW5nLWxlZnQ6IDM1cHg7Cgl9Cn0KCi5jb21tZW50LWZvcm0tYXJlYSB7CglwYWRkaW5nOiA1MHB4IDMwcHg7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCW1hcmdpbi10b3A6IDEwMHB4Owp9CgouY29tbWVudC1mb3JtLWFyZWFfX3RpdGxlIHsKCWZvbnQtc2l6ZTogMzBweDsKCW1hcmdpbi1ib3R0b206IDMwcHg7Cn0KCi8qIGJsb2ctZGV0YWlscyBjc3MgZW5kICovCi8qIG1pc3Npb24tdmlzc2lvbi1zZWN0aW9uIGNzcyBzdGFydCAqLwoubWlzc2lvbi12aXNzaW9uLWl0ZW0gewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5taXNzaW9uLXZpc3Npb24taXRlbSAuaXRlbV9faWNvbiB7Cgl3aWR0aDogODBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm1pc3Npb24tdmlzc2lvbi1pdGVtIC5pdGVtX19pY29uIGkgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiA1MCU7CglsZWZ0OiA1MCU7Cglmb250LXNpemU6IDI4cHg7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cn0KCi5taXNzaW9uLXZpc3Npb24taXRlbSAuaXRlbV9fY29udGVudCB7Cgl3aWR0aDogY2FsYygxMDAlIC0gODBweCk7CglwYWRkaW5nLWxlZnQ6IDMwcHg7Cn0KCi5taXNzaW9uLXZpc3Npb24taXRlbSAuaXRlbV9fdGl0bGUgewoJbWFyZ2luLWJvdHRvbTogMTBweDsKfQoKZGl2W2NsYXNzXj0iY29sIl06bnRoLW9mLXR5cGUoNG4gKyAxKSAubWlzc2lvbi12aXNzaW9uLWl0ZW0gLml0ZW1fX2ljb24gaSB7Cgljb2xvcjogI2U1YjE1NTsKfQoKZGl2W2NsYXNzXj0iY29sIl06bnRoLW9mLXR5cGUoNG4gKyAxKSAubWlzc2lvbi12aXNzaW9uLWl0ZW0gLml0ZW1fX3RpdGxlIHsKCWNvbG9yOiAjZTViMTU1Owp9CgpkaXZbY2xhc3NePSJjb2wiXTpudGgtb2YtdHlwZSg0biArIDIpIC5taXNzaW9uLXZpc3Npb24taXRlbSAuaXRlbV9faWNvbiBpIHsKCWNvbG9yOiAjMjY1YmYzOwp9CgpkaXZbY2xhc3NePSJjb2wiXTpudGgtb2YtdHlwZSg0biArIDIpIC5taXNzaW9uLXZpc3Npb24taXRlbSAuaXRlbV9fdGl0bGUgewoJY29sb3I6ICMyNjViZjM7Cn0KCmRpdltjbGFzc149ImNvbCJdOm50aC1vZi10eXBlKDRuICsgMykgLm1pc3Npb24tdmlzc2lvbi1pdGVtIC5pdGVtX19pY29uIGkgewoJY29sb3I6ICMzMWIwZTE7Cn0KCmRpdltjbGFzc149ImNvbCJdOm50aC1vZi10eXBlKDRuICsgMykgLm1pc3Npb24tdmlzc2lvbi1pdGVtIC5pdGVtX190aXRsZSB7Cgljb2xvcjogIzMxYjBlMTsKfQoKZGl2W2NsYXNzXj0iY29sIl06bnRoLW9mLXR5cGUoNG4gKyA0KSAubWlzc2lvbi12aXNzaW9uLWl0ZW0gLml0ZW1fX2ljb24gaSB7Cgljb2xvcjogIzc5NmJmZDsKfQoKZGl2W2NsYXNzXj0iY29sIl06bnRoLW9mLXR5cGUoNG4gKyA0KSAubWlzc2lvbi12aXNzaW9uLWl0ZW0gLml0ZW1fX3RpdGxlIHsKCWNvbG9yOiAjNzk2YmZkOwp9CgovKiBtaXNzaW9uLXZpc3Npb24tc2VjdGlvbiBjc3MgZW5kICovCi8qIGZhcS1zZWN0aW9uIGNzcyBzdGFydCAqLwouZmFxLWl0ZW0gewoJcGFkZGluZzogMzBweCAzMHB4IDMwcHggNTBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmZhcS1pdGVtOjpiZWZvcmUgewoJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouZmFxLWl0ZW06OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouZmFxLWl0ZW06aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAwOwp9CgouZmFxLWl0ZW06aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5mYXEtaXRlbV9fdGl0bGUgewoJZm9udC1zaXplOiAyMHB4OwoJbWFyZ2luLWJvdHRvbTogMTJweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmZhcS1pdGVtX190aXRsZTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiA1cHg7CglsZWZ0OiAtMjdweDsKCXdpZHRoOiAxNHB4OwoJaGVpZ2h0OiAxNHB4OwoJYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmYyNTg0IDAlLCAjODY3YWViIDczJSk7CgliYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZjI1ODQgMCUsICM4NjdhZWIgNzMlKTsKCWJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmYyNTg0IDAlLCAjODY3YWViIDczJSk7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLmZhcS10aHVtYiB7CglhbmltYXRpb246IGN1c3RvbUJvdW5jZSAzcyBpbmZpbml0ZSBsaW5lYXI7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLmZhcS10aHVtYiB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLmZhcS1pdGVtLXR3byB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwp9CgouZmFxLWl0ZW0tdHdvIC5udW1iZXIgewoJd2lkdGg6IDEwMHB4OwoJZm9udC1mYW1pbHk6ICJFeG8iLCBzYW5zLXNlcmlmOwoJZm9udC1zaXplOiA3MHB4OwoJZm9udC13ZWlnaHQ6IDMwMDsKCWxpbmUtaGVpZ2h0OiAxOwp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5mYXEtaXRlbS10d28gLm51bWJlciB7CgkJZm9udC1zaXplOiAzNnB4OwoJfQp9CgouZmFxLWl0ZW0tdHdvIC5jb250ZW50IHsKCXdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7CglwYWRkaW5nLWxlZnQ6IDEwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAzODBweCkgewoJLmZhcS1pdGVtLXR3byAuY29udGVudCB7CgkJd2lkdGg6IDEwMCU7CgkJcGFkZGluZy1sZWZ0OiAwOwoJCW1hcmdpbi10b3A6IDIwcHg7Cgl9Cn0KCi5mYXEtaXRlbS10d28gLmNvbnRlbnQgLnRpdGxlIHsKCW1hcmdpbi1ib3R0b206IDE1cHg7Cn0KCmRpdltjbGFzcyo9ImNvbCJdOm50aC1vZi10eXBlKDRuICsgMSkgLmZhcS1pdGVtLXR3byAubnVtYmVyIHsKCWNvbG9yOiAjZWQzZTBmOwoJdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCAjZWQzZTBmOwp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtb2YtdHlwZSg0biArIDIpIC5mYXEtaXRlbS10d28gLm51bWJlciB7Cgljb2xvcjogIzFlZWQ5MzsKCXRleHQtc2hhZG93OiAwcHggMHB4IDE1cHggIzFlZWQ5MzsKfQoKZGl2W2NsYXNzKj0iY29sIl06bnRoLW9mLXR5cGUoNG4gKyAzKSAuZmFxLWl0ZW0tdHdvIC5udW1iZXIgewoJY29sb3I6ICMwZjZkZWQ7Cgl0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICMwZjZkZWQ7Cn0KCmRpdltjbGFzcyo9ImNvbCJdOm50aC1vZi10eXBlKDRuICsgNCkgLmZhcS1pdGVtLXR3byAubnVtYmVyIHsKCWNvbG9yOiAjYWYzYWY5OwoJdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCAjYWYzYWY5Owp9CgovKiBmYXEtc2VjdGlvbiBjc3MgZW5kICovCi8qIGFzay1zZWN0aW9uIGNzcyBzdGFydCAqLwouYXNrLWNvbnRlbnQgLnRpdGxlIHsKCWZvbnQtc2l6ZTogNjBweDsKCW1hcmdpbi1ib3R0b206IDQ1cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5hc2stY29udGVudCAudGl0bGUgewoJCWZvbnQtc2l6ZTogNDhweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkuYXNrLWNvbnRlbnQgLnRpdGxlIHsKCQlmb250LXNpemU6IDQycHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewoJLmFzay1jb250ZW50IC50aXRsZSB7CgkJZm9udC1zaXplOiAzNnB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5hc2stY29udGVudCAudGl0bGUgewoJCWZvbnQtc2l6ZTogMzJweDsKCX0KfQoKLyogYXNrLXNlY3Rpb24gY3NzIGVuZCAqLwovKiBjb250YWN0LXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5jb250YWN0LWl0ZW0gKyAuY29udGFjdC1pdGVtIHsKCW1hcmdpbi10b3A6IDMwcHg7Cn0KCi5jb250YWN0LWl0ZW0gewoJcGFkZGluZzogMzBweCAzMHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5jb250YWN0LWl0ZW06OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Ci5vdXR0ZXItc2hhZG93IHsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cn0KLmlubmVyLXNoYWRvdyB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cn0KLm1haW4tYmcsCi5tb2RhbC1jb250ZW50LWJnLAouZm9ybS1jb250cm9sOmRpc2FibGVkLAouZm9ybS1jb250cm9sW3JlYWRvbmx5XSwKLmZvcm0tY29udHJvbDpmb2N1cyB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50Owp9Ci5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHsKCW9wYWNpdHk6IDAuOTsKfQouZm9ybS1jb250cm9sIHsKCWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7Cn0KLm1vZGFsLWhlYWRlciwKLm1vZGFsLWZvb3RlciB7Cglib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7Cn0KLmNvbnRhY3QtaXRlbTo6YWZ0ZXIgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouY29udGFjdC1pdGVtOmhvdmVyOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLmNvbnRhY3QtaXRlbTpob3Zlcjo6YWZ0ZXIgewoJb3BhY2l0eTogMTsKfQoKLmNvbnRhY3QtaXRlbTpudGgtY2hpbGQoMSkgLmljb24gewoJY29sb3I6ICNlZjQ2NjU7Cn0KCi5jb250YWN0LWl0ZW06bnRoLWNoaWxkKDIpIC5pY29uIHsKCWNvbG9yOiAjZmRjMzVhOwp9CgouY29udGFjdC1pdGVtOm50aC1jaGlsZCgzKSAuaWNvbiB7Cgljb2xvcjogIzBhZmY2NjsKfQoKLmNvbnRhY3QtaXRlbSAuaWNvbiB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKCWZvbnQtc2l6ZTogNzBweDsKCXdpZHRoOiA5NXB4OwoJbGluZS1oZWlnaHQ6IDE7Cn0KCi5jb250YWN0LWl0ZW0gLmNvbnRlbnQgewoJd2lkdGg6IGNhbGMoMTAwJSAtIDk1cHgpOwoJcGFkZGluZy1sZWZ0OiAzMHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKCS5jb250YWN0LWl0ZW0gLmNvbnRlbnQgewoJCXdpZHRoOiAxMDAlOwoJCXBhZGRpbmctbGVmdDogMDsKCQltYXJnaW4tdG9wOiAzMHB4OwoJfQp9CgouY29udGFjdC1pdGVtIC5jb250ZW50OjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl3aWR0aDogM3B4OwoJaGVpZ2h0OiAzMnB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzE2MTcyMTsKCXRvcDogNTAlOwoJbGVmdDogMDsKCW1hcmdpbi10b3A6IC0xNnB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKCS5jb250YWN0LWl0ZW0gLmNvbnRlbnQ6OmJlZm9yZSB7CgkJZGlzcGxheTogbm9uZTsKCX0KfQoKLmNvbnRhY3QtaXRlbSAuY29udGVudDo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl3aWR0aDogM3B4OwoJaGVpZ2h0OiAzMnB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzMzMzQ0NTsKCXRvcDogNTAlOwoJbGVmdDogM3B4OwoJbWFyZ2luLXRvcDogLTE2cHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkgewoJLmNvbnRhY3QtaXRlbSAuY29udGVudDo6YWZ0ZXIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi5jb250YWN0LWl0ZW0gLmNvbnRlbnQgLnRpdGxlIHsKCW1hcmdpbi1ib3R0b206IDEwcHg7Cn0KCi5jb250YWN0LWl0ZW0gLmNvbnRlbnQgYSB7CglkaXNwbGF5OiBibG9jazsKfQoKLmNvbnRhY3QtaXRlbSAuY29udGVudCBhICsgYSB7CgltYXJnaW4tdG9wOiA4cHg7Cn0KCi5jb250YWN0LWZvcm0td3JhcHBlciB7CglwYWRkaW5nOiA1MHB4IDMwcHg7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgouY29udGFjdC1mb3JtLXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9fdGl0bGUgewoJZm9udC1zaXplOiAzMHB4OwoJbWFyZ2luLWJvdHRvbTogMzBweDsKfQoKLmNvbnRhY3QtZm9ybS13cmFwcGVyIC5idG46OmJlZm9yZSB7Cgl6LWluZGV4OiAxOwp9CgouaGVscC13cmFwcGVyIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXBhZGRpbmc6IDEyMHB4IDMwcHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm9yZGVyLXJhZGl1czogMTBweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKCS1tb3otYm9yZGVyLXJhZGl1czogMTBweDsKCS1tcy1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW8tYm9yZGVyLXJhZGl1czogMTBweDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLmhlbHAtd3JhcHBlciB7CgkJcGFkZGluZzogOTBweCAzMHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKCS5oZWxwLXdyYXBwZXIgewoJCXBhZGRpbmc6IDUwcHggMzBweDsKCX0KfQoKLmhlbHAtd3JhcHBlcjo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICJcZjBlNiI7Cglmb250LWZhbWlseTogIkZvbnRBd2Vzb21lIjsKCWZvbnQtc2l6ZTogMTc1cHg7Cgljb2xvcjogI2ZmZmZmZjsKCW9wYWNpdHk6IDAuMDg7Cgl0b3A6IDMwJTsKCWxlZnQ6IDI1JTsKfQoKLmhlbHAtd3JhcHBlciAudGl0bGUgewoJZm9udC1zaXplOiA2MHB4OwoJbWFyZ2luLWJvdHRvbTogODhweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkuaGVscC13cmFwcGVyIC50aXRsZSB7CgkJZm9udC1zaXplOiA0OHB4OwoJCW1hcmdpbi1ib3R0b206IDUwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewoJLmhlbHAtd3JhcHBlciAudGl0bGUgewoJCWZvbnQtc2l6ZTogNDJweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuaGVscC13cmFwcGVyIC50aXRsZSB7CgkJZm9udC1zaXplOiAzNnB4OwoJfQp9CgouaGVscC13cmFwcGVyIC5waG9uZV9fbnVtYmVyIHsKCWZvbnQtc2l6ZTogNDBweDsKCWZvbnQtZmFtaWx5OiAiRXhvIiwgc2Fucy1zZXJpZjsKCWZvbnQtd2VpZ2h0OiA3MDA7CgltYXJnaW4tdG9wOiAzMHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5oZWxwLXdyYXBwZXIgLnBob25lX19udW1iZXIgewoJCWZvbnQtc2l6ZTogMzZweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkuaGVscC13cmFwcGVyIC5waG9uZV9fbnVtYmVyIHsKCQlmb250LXNpemU6IDMycHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLmhlbHAtd3JhcHBlciAucGhvbmVfX251bWJlciB7CgkJZm9udC1zaXplOiAyOHB4OwoJfQp9CgoubWFwIHsKCXdpZHRoOiA2NjVweDsKCWhlaWdodDogNjY1cHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7CgltYXJnaW4tbGVmdDogNTBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDE1NTBweCkgewoJLm1hcCB7CgkJd2lkdGg6IDUwMHB4OwoJCWhlaWdodDogNTAwcHg7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5tYXAgewoJCW1hcmdpbi1sZWZ0OiAxNXB4OwoJCXdpZHRoOiA0MDBweDsKCQloZWlnaHQ6IDQwMHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5tYXAgewoJCXdpZHRoOiAxMDAlOwoJCW1hcmdpbi1sZWZ0OiAwOwoJCXBhZGRpbmc6IDMwcHg7CgkJbWFyZ2luLXRvcDogNTBweDsKCX0KfQoKLm1hcDo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAtMTZweDsKCWxlZnQ6IC0xNnB4OwoJd2lkdGg6IGNhbGMoMTAwJSArIDM2cHgpOwoJaGVpZ2h0OiBjYWxjKDEwMCUgKyAzNnB4KTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5tYXA6OmJlZm9yZSB7CgkJYm9yZGVyLXJhZGl1czogMDsKCQktd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CgkJLW1vei1ib3JkZXItcmFkaXVzOiAwOwoJCS1tcy1ib3JkZXItcmFkaXVzOiAwOwoJCS1vLWJvcmRlci1yYWRpdXM6IDA7CgkJbGVmdDogMDsKCQl0b3A6IDA7CgkJd2lkdGg6IDEwMCU7CgkJaGVpZ2h0OiBjYWxjKDEwMCUgKyA2MHB4KTsKCX0KfQoKI21hcCB7Cgl3aWR0aDogNjY1cHg7CgloZWlnaHQ6IDY2NXB4OwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxNTUwcHgpIHsKCSNtYXAgewoJCXdpZHRoOiA1MDBweDsKCQloZWlnaHQ6IDUwMHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7CgkjbWFwIHsKCQl3aWR0aDogNDAwcHg7CgkJaGVpZ2h0OiA0MDBweDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkjbWFwIHsKCQl3aWR0aDogMTAwJTsKCQlib3JkZXItcmFkaXVzOiAwOwoJCS13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKCQktbW96LWJvcmRlci1yYWRpdXM6IDA7CgkJLW1zLWJvcmRlci1yYWRpdXM6IDA7CgkJLW8tYm9yZGVyLXJhZGl1czogMDsKCX0KfQoKLyogY29udGFjdC1zZWN0aW9uIGNzcyBlbmQgKi8KLyogZGFzaGJvYXJkLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5kYXNoYm9hcmRfX2hlYWRlciB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJcGFkZGluZzogMjBweCAyMHB4Owp9CgouZGFzaGJvYXJkX19oZWFkZXIgLnJpZ2h0IHVsIHsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CgltYXJnaW46IDAgLTE1cHg7Cn0KCi5kYXNoYm9hcmRfX2hlYWRlciAucmlnaHQgdWwgbGkgewoJbWFyZ2luOiAwIDE1cHg7Cn0KCi5kYXNoYm9hcmRfX2hlYWRlciAucmlnaHQgdWwgbGkgYSB7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtc2l6ZTogMjRweDsKfQoKLmRhc2hib2FyZF9fdXNlciB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJcGFkZGluZzogMCAyMHB4IDI1cHggMjBweDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7CgltYXJnaW4tdG9wOiAxMHB4Owp9Ci5kYXNoYm9hcmQtc2lkZS1tZW51LW9wZW4sCi5kYXNoYm9hcmQtc2lkZS1tZW51LWNsb3NlIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJY29sb3I6ICNmZmZmZmY7Cglmb250LXNpemU6IDIwcHg7CglwYWRkaW5nOiAwOwp9Ci5kYXNoYm9hcmRfX3VzZXIgLnNpbmdsZSB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJbWFyZ2luLXRvcDogMjVweDsKfQoKLmRhc2hib2FyZF9fdXNlciAuc2luZ2xlIC50aHVtYiB7Cgl3aWR0aDogNTdweDsKCWhlaWdodDogNTdweDsKCW92ZXJmbG93OiBoaWRkZW47Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKfQoKLmRhc2hib2FyZF9fdXNlciAuc2luZ2xlIC5jb250ZW50IHsKCXdpZHRoOiAxMDAlOwp9CgouZGFzaGJvYXJkX191c2VyIC5zaW5nbGUgLmNvbnRlbnQgLmNhcHRpb24gewoJZm9udC1zaXplOiAxOHB4OwoKCW1hcmdpbi1ib3R0b206IDJweDsKfQoKLmRhc2hib2FyZF9fdXNlciAuc2luZ2xlIC50aHVtYiArIC5jb250ZW50IHsKCXdpZHRoOiBjYWxjKDEwMCUgLSA1N3B4KTsKCXBhZGRpbmctbGVmdDogMjBweDsKfQoKLnN0YXQtaXRlbSB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglwYWRkaW5nOiAzMHB4IDMwcHg7Cn0KCi5zdGF0LWl0ZW06OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5zdGF0LWl0ZW06OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc3RhdC1pdGVtOmhvdmVyOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLnN0YXQtaXRlbTpob3Zlcjo6YWZ0ZXIgewoJb3BhY2l0eTogMTsKfQoKLnN0YXQtaXRlbSBpIHsKCWZvbnQtc2l6ZTogNDhweDsKCWxpbmUtaGVpZ2h0OiAxOwoJY29sb3I6ICNmZmZmZmY7Cn0KCi5zdGF0LWl0ZW0gLmNhcHRpb24gewoJZm9udC1zaXplOiAxNnB4OwoKCW1hcmdpbi10b3A6IDE1cHg7Cn0KCi5zdGF0LWl0ZW0gLnRvdGFsX19hbW91bnQgewoJZm9udC1zaXplOiAyNnB4Owp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtY2hpbGQoMSkgLnN0YXQtaXRlbSBpIHsKCWNvbG9yOiAjMGZiYjI4Owp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtY2hpbGQoMikgLnN0YXQtaXRlbSBpIHsKCWNvbG9yOiAjYmQzMTA5Owp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtY2hpbGQoMykgLnN0YXQtaXRlbSBpIHsKCWNvbG9yOiAjODY3YWViOwp9Cgouc3RhdC13cmFwcGVyLmRlcG9zaXQgLnN0YXRfX2hlYWRlciAucmlnaHQgewoJLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7CgktbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOwoJdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOwp9Cgouc3RhdC13cmFwcGVyLndpdGhkcmF3IC5zdGF0X19oZWFkZXIgLmxlZnQgLmljb24gewoJYmFja2dyb3VuZC1jb2xvcjogI2NlMzMwMzsKfQoKLnN0YXQtd3JhcHBlci53aXRoZHJhdyAuc3RhdF9faGVhZGVyIC5yaWdodCB7Cgktd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7CgktbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsKCXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7Cn0KCi5zdGF0X19oZWFkZXIgewoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLW1zLWZsZXgtd3JhcDogd3JhcDsKCWZsZXgtd3JhcDogd3JhcDsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9Cgouc3RhdF9faGVhZGVyIC5sZWZ0IHsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CglhbGlnbi1pdGVtczogY2VudGVyOwp9Cgouc3RhdF9faGVhZGVyIC5sZWZ0IC5pY29uIHsKCXdpZHRoOiAxMTBweDsKCWhlaWdodDogNjVweDsKCWNvbG9yOiAjZmZmZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzg2N2FlYjsKCWZvbnQtc2l6ZTogMzZweDsKCWxpbmUtaGVpZ2h0OiA2M3B4OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKfQoKLnN0YXRfX2hlYWRlciAubGVmdCAuY2FwdGlvbiB7CglwYWRkaW5nLWxlZnQ6IDMwcHg7Cn0KCi5zdGF0X19oZWFkZXIgLnJpZ2h0IGkgewoJY29sb3I6ICM1YzVkNjg7Cglmb250LXNpemU6IDM2cHg7CglsaW5lLWhlaWdodDogMTsKfQoKLnN0YXQtaXRlbS10d28gewoJcGFkZGluZzogMzBweCAzMHB4Owp9Cgouc3RhdC1pdGVtLXR3byAuY2FwdGlvbiB7Cglmb250LXNpemU6IDE4cHg7CgoJbWFyZ2luLWJvdHRvbTogNXB4Owp9Cgouc3RhdC1pdGVtLXR3bzpudGgtY2hpbGQoMSkgLnRvdGFsX19hbW91bnQgewoJY29sb3I6ICM4NjdhZWI7Cn0KCi5zdGF0LWl0ZW0tdHdvOm50aC1jaGlsZCgyKSAudG90YWxfX2Ftb3VudCB7Cgljb2xvcjogIzBmYmIyODsKfQoKLnN0YXQtaXRlbS10d286bnRoLWNoaWxkKDMpIC50b3RhbF9fYW1vdW50IHsKCWNvbG9yOiAjYmQzMTA5Owp9Cgouc3RhdC1pdGVtLXR3byArIC5zdGF0LWl0ZW0tdHdvIHsKCW1hcmdpbi10b3A6IDE1cHg7Cn0KCi5wcm9ncmVzcy1pdGVtIHsKCXBhZGRpbmc6IDMwcHggMzBweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQoKLnByb2dyZXNzLWl0ZW0gLmNpcmNsZSB7Cgl3aWR0aDogODBweDsKCWhlaWdodDogODBweDsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCWZvbnQtc2l6ZTogMThweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWxpbmUtaGVpZ2h0OiA2NHB4OwoJY29sb3I6ICNmZmZmZmY7Cglib3JkZXI6IDEwcHggc29saWQgI2ZkYzM1YTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgktbXMtYm9yZGVyLXJhZGl1czogNTAlOwoJLW8tYm9yZGVyLXJhZGl1czogNTAlOwp9CgoucHJvZ3Jlc3MtaXRlbSAuY2FwdGlvbiB7Cglmb250LXNpemU6IDE2cHg7CgoJbWFyZ2luLXRvcDogMTBweDsKfQoKZGl2W2NsYXNzKj0iY29sIl06bnRoLWNoaWxkKDEpIC5wcm9ncmVzcy1pdGVtIC5jaXJjbGUgewoJYm9yZGVyLWNvbG9yOiAjZmRjMzVhOwp9CgpkaXZbY2xhc3MqPSJjb2wiXTpudGgtY2hpbGQoMikgLnByb2dyZXNzLWl0ZW0gLmNpcmNsZSB7Cglib3JkZXItY29sb3I6ICNiZDMxMDk7Cn0KCmRpdltjbGFzcyo9ImNvbCJdOm50aC1jaGlsZCgzKSAucHJvZ3Jlc3MtaXRlbSAuY2lyY2xlIHsKCWJvcmRlci1jb2xvcjogIzg1NzllOTsKfQoKLyogZGFzaGJvYXJkLXNlY3Rpb24gY3NzIGVuZCAqLwovKiBzaWduaW4td3JhcHBlciBjc3Mgc3RhcnQgKi8KLnNpZ25pbi13cmFwcGVyIHsKCXBhZGRpbmc6IDE1MHB4IDA7CglvdmVyZmxvdzogaGlkZGVuOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgpAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7Cgkuc2lnbmluLXdyYXBwZXIgewoJCW1heC1oZWlnaHQ6IGF1dG87CgkJb3ZlcmZsb3cteTogYXV0bzsKCX0KfQoKLnNpZ25pbi13cmFwcGVyIC5vdXRzZXQtY2lyY2xlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWZsb2F0OiBub25lOwoJd2lkdGg6IDEwNzVweDsKCWhlaWdodDogMTA3NXB4OwoJdG9wOiAwOwoJei1pbmRleDogLTE7CglsZWZ0OiAtNiU7Cn0KCi5zaWduaW4td3JhcHBlciAub3V0c2V0LWNpcmNsZTo6YmVmb3JlIHsKCXdpZHRoOiA4MzBweDsKCWhlaWdodDogODMwcHg7Cn0KCi5zaWduaW4td3JhcHBlciAub3V0c2V0LWNpcmNsZTo6YWZ0ZXIgewoJd2lkdGg6IDUwNXB4OwoJaGVpZ2h0OiA1MDVweDsKfQoKLnNpZ25pbi13cmFwcGVyIC5jbG9zZS1idG4gewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAzMHB4OwoJcmlnaHQ6IDMwcHg7Cglmb250LXNpemU6IDMwcHg7Cn0KCi5zaWduaW4tZm9ybS1hcmVhIHsKCXBhZGRpbmc6IDUwcHggNTBweDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnNpZ25pbi1mb3JtLWFyZWEgewoJCXBhZGRpbmc6IDMwcHggMzBweDsKCX0KfQoKLnNpZ25pbi1mb3JtLWFyZWEgLnRpdGxlIHsKCWZvbnQtc2l6ZTogMzBweDsKfQoKLnNpZ25pbi10aHVtYiB7CglmbG9hdDogbGVmdDsKCW1hcmdpbi1sZWZ0OiAxNTBweDsKCXdpZHRoOiA5NiU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxNDI1cHgpIHsKCS5zaWduaW4tdGh1bWIgewoJCW1hcmdpbi1sZWZ0OiAwOwoJCXdpZHRoOiAxMDAlOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5zaWduaW4tdGh1bWIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi8qIHNpZ25pbi13cmFwcGVyIGNzcyBlbmQgKi8KLyogc2lnbmluLXdyYXBwZXIgY3NzIHN0YXJ0ICovCi5zaWdudXAtd3JhcHBlciB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS5zaWdudXAtd3JhcHBlciB7CgkJb3ZlcmZsb3cteTogYXV0bzsKCX0KfQoKLnNpZ251cC13cmFwcGVyIC5vdXRzZXQtY2lyY2xlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWZsb2F0OiBub25lOwoJd2lkdGg6IDEwNzVweDsKCWhlaWdodDogMTA3NXB4OwoJdG9wOiAxNSU7CglsZWZ0OiAtNiU7Cn0KCi5zaWdudXAtd3JhcHBlciAub3V0c2V0LWNpcmNsZTo6YmVmb3JlIHsKCXdpZHRoOiA4MzBweDsKCWhlaWdodDogODMwcHg7Cn0KCi5zaWdudXAtd3JhcHBlciAub3V0c2V0LWNpcmNsZTo6YWZ0ZXIgewoJd2lkdGg6IDUwNXB4OwoJaGVpZ2h0OiA1MDVweDsKfQoKLnNpZ251cC13cmFwcGVyIC5jbG9zZS1idG4gewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAzMHB4OwoJcmlnaHQ6IDMwcHg7Cglmb250LXNpemU6IDMwcHg7Cn0KCi5zaWdudXAtZm9ybS1hcmVhIHsKCXBhZGRpbmc6IDUwcHggNTBweDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLnNpZ251cC1mb3JtLWFyZWEgewoJCXBhZGRpbmc6IDMwcHggMTVweDsKCX0KfQoKLnNpZ251cC1mb3JtLWFyZWEgLnRpdGxlIHsKCWZvbnQtc2l6ZTogMzBweDsKfQoKLnNpZ251cC10aHVtYiB7CglmbG9hdDogbGVmdDsKCW1hcmdpbi1sZWZ0OiAxNTBweDsKCXdpZHRoOiA5NiU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxNDUwcHgpIHsKCS5zaWdudXAtdGh1bWIgewoJCW1hcmdpbi1sZWZ0OiAwOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5zaWdudXAtdGh1bWIgewoJCWRpc3BsYXk6IG5vbmU7Cgl9Cn0KCi8qIHNpZ25pbi13cmFwcGVyIGNzcyBlbmQgKi8KLyogZXJyb3Itc2VjdGlvbiBjc3Mgc3RhcnQgKi8KLmVycm9yLXNlY3Rpb24gewoJcGFkZGluZzogMTUwcHggMTAwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLmVycm9yLXNlY3Rpb24gewoJCXBhZGRpbmc6IDEwMHB4IDMwcHg7Cgl9Cn0KCi5lcnJvci1zZWN0aW9uIC5lbGUgewoJcG9zaXRpb246IGFic29sdXRlOwoJYm90dG9tOiAwOwoJbGVmdDogMDsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CglhbGlnbi1pdGVtczogZmxleC1zdGFydDsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuZXJyb3Itc2VjdGlvbiAuZWxlIHsKCQlkaXNwbGF5OiBub25lOwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5lcnJvci1zZWN0aW9uIC5lbGUgaW1nIHsKCQl3aWR0aDogNzAlOwoJfQp9CgouZXJyb3Itd3JhcHBlciB7Cgl3aWR0aDogNjAlOwoJbWFyZ2luLWxlZnQ6IGF1dG87Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewoJLmVycm9yLXdyYXBwZXIgewoJCXdpZHRoOiAxMDAlOwoJfQp9CgouZXJyb3Itd3JhcHBlciAudGl0bGUgewoJZm9udC13ZWlnaHQ6IDMwMDsKCWxldHRlci1zcGFjaW5nOiAzcHg7CgoJZm9udC1zaXplOiA0MHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJcGFkZGluZy1ib3R0b206IDQwcHg7CgltYXJnaW4tdG9wOiAyMHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKCS5lcnJvci13cmFwcGVyIC50aXRsZSB7CgkJZm9udC1zaXplOiAzMnB4OwoJfQp9CgouZXJyb3Itd3JhcHBlciAudGl0bGU6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCWJvdHRvbTogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogNnB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzIyMjMyZTsKfQoKLmVycm9yLXdyYXBwZXIgLnRpdGxlOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCWJvdHRvbTogNnB4OwoJbGVmdDogMDsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiA2cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzQzNzQ3Owp9CgovKiBlcnJvci1zZWN0aW9uIGNzcyBlbmQgKi8KLyogZm9vdGVyLXNlY3Rpb24gY3NzIHN0YXJ0ICovCi5mb290ZXItc2VjdGlvbiB7CglwYWRkaW5nLXRvcDogMTAwcHg7CglwYWRkaW5nLWJvdHRvbTogNTBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkuZm9vdGVyLXNlY3Rpb24gewoJCXBhZGRpbmctdG9wOiA3MHB4OwoJCXBhZGRpbmctYm90dG9tOiA0MHB4OwoJfQp9CgouZm9vdGVyLXNlY3Rpb246OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogNnB4OwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsKfQoKLmZvb3Rlci1zZWN0aW9uIC5jb3B5LXJpZ2h0LXRleHQgewoJY29sb3I6ICNmZmZmZmY7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgltYXJnaW4tdG9wOiAxMDBweDsKfQoKLmZvb3Rlci13aWRnZXQgLndpZGdldF9fdGl0bGUgewoJbWFyZ2luLWJvdHRvbTogNDBweDsKfQoKLmZvb3Rlci13aWRnZXQgLmFib3V0X193aWRnZXQgcCB7CgltYXJnaW4tdG9wOiAyMHB4Owp9CgouZm9vdGVyLXdpZGdldCAuc29jaWFsLWxpbmtzIHsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CgltYXJnaW4tbGVmdDogLTEwcHg7CgltYXJnaW4tcmlnaHQ6IC0xMHB4OwoJbWFyZ2luLXRvcDogMzBweDsKfQoKLmZvb3Rlci13aWRnZXQgLnNvY2lhbC1saW5rcyBsaSB7CgltYXJnaW46IDAgMTBweDsKfQoKLmZvb3Rlci13aWRnZXQgLnNvY2lhbC1saW5rcyBsaSBhIHsKCXdpZHRoOiAzOHB4OwoJaGVpZ2h0OiAzOHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJbGluZS1oZWlnaHQ6IDM4cHg7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtc2l6ZTogMTJweDsKfQoKLmZvb3Rlci13aWRnZXQgLnNvY2lhbC1saW5rcyBsaSBhOjpiZWZvcmUgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5mb290ZXItd2lkZ2V0IC5zb2NpYWwtbGlua3MgbGkgYTo6YWZ0ZXIgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLmZvb3Rlci13aWRnZXQgLnNvY2lhbC1saW5rcyBsaSBhOmhvdmVyIHsKCWNvbG9yOiAjY2UzMzAzOwp9CgouZm9vdGVyLXdpZGdldCAuc29jaWFsLWxpbmtzIGxpIGE6aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAwOwp9CgouZm9vdGVyLXdpZGdldCAuc29jaWFsLWxpbmtzIGxpIGE6aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5mb290ZXItd2lkZ2V0IC5zaG9ydF9fbGlua3MgbGkgKyBsaSB7CgltYXJnaW4tdG9wOiAxNXB4Owp9CgouZm9vdGVyLXdpZGdldCAuc2hvcnRfX2xpbmtzIGxpIHsKCXBhZGRpbmctbGVmdDogMjBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmZvb3Rlci13aWRnZXQgLnNob3J0X19saW5rcyBsaTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAxMHB4OwoJbGVmdDogMDsKCXdpZHRoOiA4cHg7CgloZWlnaHQ6IDhweDsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cglib3gtc2hhZG93OiAtMnB4IC0ycHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgMnB4IDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgouZm9vdGVyLXdpZGdldCAuc2hvcnRfX2xpbmtzIGxpOmhvdmVyOjpiZWZvcmUgewoJYmFja2dyb3VuZC1jb2xvcjogI2NlMzMwMzsKfQoKLmZvb3Rlci13aWRnZXQgLnNob3J0X19saW5rcyBsaSBhIHsKCWNvbG9yOiB3aGl0ZTsKfQoKLmZvb3Rlci13aWRnZXQgLmNvbnRhY3RfX3dpZGdldCBhIHsKCWNvbG9yOiAjZmZmZmZmOwoJbWFyZ2luLXRvcDogMTVweDsKCWRpc3BsYXk6IGJsb2NrOwp9CgovKiBmb290ZXItc2VjdGlvbiBjc3MgZW5kICovCi8qIHNpZGViYXIgY3NzIHN0YXJ0ICovCi5zaWRlYmFyIHsKCXBhZGRpbmc6IDUwcHggMzBweDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5zaWRlYmFyIHsKCQltYXJnaW4tdG9wOiA1MHB4OwoJfQp9Cgouc2lkZWJhciAud2lkZ2V0ICsgLndpZGdldCB7CgltYXJnaW4tdG9wOiA1MHB4Owp9Cgouc2lkZWJhciAud2lkZ2V0X190aXRsZSB7CgltYXJnaW4tYm90dG9tOiAzMHB4Owp9Cgouc2lkZWJhciAuY21uLWFjY29yZGlvbiAuY2FyZCB7Cglib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDVweDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweDsKfQoKLnNpZGViYXIgLmNtbi1hY2NvcmRpb24gLmNhcmQgKyAuY2FyZCB7CgltYXJnaW4tdG9wOiAxNXB4Owp9Cgouc2lkZWJhciAuY21uLWFjY29yZGlvbiAuYWNjLWJ0biB7CglwYWRkaW5nOiAxNXB4IDIwcHg7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKfQoKLnNpZGViYXIgLmNtbi1hY2NvcmRpb24gLmFjYy1idG4gLnRleHQgewoJZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwoJZm9udC13ZWlnaHQ6IDQwMDsKCWZvbnQtc2l6ZTogMThweDsKCXdpZHRoOiBjYWxjKDEwMCUgLSA0OHB4KTsKfQoKLnNpZGViYXIgLmNtbi1hY2NvcmRpb24gLmFjYy1idG4gLm51bWJlci1jb3VudGVyIHsKCXdpZHRoOiA0OHB4Owp9Cgouc2lkZWJhciAuY21uLWFjY29yZGlvbiAuYWNjLWJ0biAubnVtYmVyLWNvdW50ZXI6OmJlZm9yZSB7Cgljb250ZW50OiAiKCI7Cgljb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOwp9Cgouc2lkZWJhciAuY21uLWFjY29yZGlvbiAuYWNjLWJ0biAubnVtYmVyLWNvdW50ZXI6OmFmdGVyIHsKCWNvbnRlbnQ6ICIpIjsKCWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7Cn0KCi5zaWRlYmFyIC5jYXRlZ29yeV9fbGlzdCBsaSArIGxpIHsKCW1hcmdpbi10b3A6IDEwcHg7Cn0KCi5zaWRlYmFyIC5jYXRlZ29yeV9fbGlzdCBsaSB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglwYWRkaW5nLWxlZnQ6IDIwcHg7Cn0KCi5zaWRlYmFyIC5jYXRlZ29yeV9fbGlzdCBsaTo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAxMHB4OwoJbGVmdDogMDsKCXdpZHRoOiA4cHg7CgloZWlnaHQ6IDhweDsKCWJhY2tncm91bmQtY29sb3I6ICNiYmJkZmY7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc2lkZWJhciAuY2F0ZWdvcnlfX2xpc3QgbGk6aG92ZXI6OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzkzZWRmOwp9Cgouc2lkZWJhciAuY2F0ZWdvcnlfX2xpc3QgbGkgYSB7Cgljb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOwp9Cgouc2lkZWJhciAuZG93bmxvYWQtYnRuICsgLmRvd25sb2FkLWJ0biB7CgltYXJnaW4tdG9wOiAxNXB4Owp9Cgouc2lkZWJhciAuZG93bmxvYWQtYnRuICsgLmRvd25sb2FkLWJ0biBpIHsKCWNvbG9yOiAjY2UzMzAzOwp9Cgouc2lkZWJhciAuZG93bmxvYWQtYnRuIHsKCXBhZGRpbmc6IDIwcHggMjBweDsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS1tcy1mbGV4LXdyYXA6IHdyYXA7CglmbGV4LXdyYXA6IHdyYXA7CglhbGlnbi1pdGVtczogY2VudGVyOwoJZm9udC1zaXplOiAxOHB4OwoJY29sb3I6ICNmZmZmZmY7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5zaWRlYmFyIC5kb3dubG9hZC1idG4gaSB7CgltYXJnaW4tcmlnaHQ6IDE1cHg7Cn0KCi5zaWRlYmFyIC5kb3dubG9hZC1idG46OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJhMzg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7Cgl6LWluZGV4OiAtMTsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnNpZGViYXIgLmRvd25sb2FkLWJ0bjo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7Cgl6LWluZGV4OiAtMTsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnNpZGViYXIgLmRvd25sb2FkLWJ0bjpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5zaWRlYmFyIC5kb3dubG9hZC1idG46aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5zaWRlYmFyIC50YWdzIHsKCW1hcmdpbjogLTVweCAtM3B4Owp9Cgouc2lkZWJhciAudGFncyBhIHsKCXBhZGRpbmc6IDEycHggMjBweDsKCWZvbnQtc2l6ZTogMThweDsKCglwb3NpdGlvbjogcmVsYXRpdmU7CgltYXJnaW46IDVweCAzcHg7Cn0KCi5zaWRlYmFyIC50YWdzIGE6OmJlZm9yZSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc2lkZWJhciAudGFncyBhOjphZnRlciB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5zaWRlYmFyIC50YWdzIGE6aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAwOwp9Cgouc2lkZWJhciAudGFncyBhOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9Cgouc2lkZWJhciAuaGVscC13aWRnZXQgewoJcGFkZGluZzogMzBweCAzMHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKfQoKLnNpZGViYXIgLmhlbHAtd2lkZ2V0IC50aXRsZSB7CgltYXJnaW4tYm90dG9tOiAxNXB4Owp9Cgouc2lkZWJhciAuaGVscC13aWRnZXQgLmNhbGwtbnVtYmVyIHsKCWZvbnQtc2l6ZTogMzBweDsKCW1hcmdpbi10b3A6IDIwcHg7Cglmb250LWZhbWlseTogIkV4byIsIHNhbnMtc2VyaWY7Cglmb250LXdlaWdodDogNzAwOwp9Cgouc21hbGwtcG9zdC1saXN0IC5zbWFsbC1wb3N0ICsgLnNtYWxsLXBvc3QgewoJbWFyZ2luLXRvcDogMTVweDsKfQoKLnNtYWxsLXBvc3QtbGlzdCAuc21hbGwtcG9zdCB7CglwYWRkaW5nOiAyMHB4IDIwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBmbGV4OwoJZmxleC13cmFwOiB3cmFwOwp9Ci5zbWFsbC1wb3N0IC5zbWFsbC1wb3N0X190aHVtYiB7Cgl3aWR0aDogNjBweDsKCWRpc3BsYXk6IGZsZXg7Cglib3JkZXItcmFkaXVzOiA0cHg7CglvdmVyZmxvdzogaGlkZGVuOwp9Ci5zbWFsbC1wb3N0IC5zbWFsbC1wb3N0X190aHVtYiBhIHsKICAgIGRpc3BsYXk6IGJsb2NrOwp9Ci5zbWFsbC1wb3N0IC5zbWFsbC1wb3N0X190aHVtYiBhIGltZ3sKICAgIHdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxMDAlOwoJb2JqZWN0LWZpdDogY292ZXI7Cn0KLnNtYWxsLXBvc3QgLnNtYWxsLXBvc3RfX2NvbnRlbnQgewoJd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpOwoJcGFkZGluZy1sZWZ0OiAxNXB4Owp9Cgouc21hbGwtcG9zdC1saXN0IC5zbWFsbC1wb3N0OjpiZWZvcmUgewoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCW9wYWNpdHk6IDE7Cglib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDVweDsKCS1vLWJvcmRlci1yYWRpdXM6IDVweDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc21hbGwtcG9zdC1saXN0IC5zbWFsbC1wb3N0OjphZnRlciB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CglvcGFjaXR5OiAwOwoJYm9yZGVyLXJhZGl1czogNXB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tcy1ib3JkZXItcmFkaXVzOiA1cHg7Cgktby1ib3JkZXItcmFkaXVzOiA1cHg7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnNtYWxsLXBvc3QtbGlzdCAuc21hbGwtcG9zdDpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5zbWFsbC1wb3N0LWxpc3QgLnNtYWxsLXBvc3Q6aG92ZXI6OmFmdGVyIHsKCW9wYWNpdHk6IDE7Cn0KCi5zbWFsbC1wb3N0LWxpc3QgLnNtYWxsLXBvc3QgLnBvc3RfX3RpdGxlIGEgewoJZm9udC1zaXplOiAxOHB4Owp9Cgouc21hbGwtcG9zdC1saXN0IC5zbWFsbC1wb3N0IC5wb3N0X19tZXRhIHsKCW1hcmdpbi10b3A6IDEwcHg7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwp9Cgouc21hbGwtcG9zdC1saXN0IC5zbWFsbC1wb3N0IC5wb3N0X19tZXRhIGxpICsgbGkgewoJbWFyZ2luLWxlZnQ6IDE1cHg7Cn0KCi5zbWFsbC1wb3N0LWxpc3QgLnNtYWxsLXBvc3QgLnBvc3RfX21ldGEgbGkgYSB7Cglmb250LXNpemU6IDE0cHg7Cglmb250LXN0eWxlOiBpdGFsaWM7Cgljb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOwp9Ci5kYXNoYm9hcmQtc2lkZS1tZW51LWNsb3NlIHsKCWRpc3BsYXk6IG5vbmU7Cn0KQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7CgkudXNlci1zaWRlYmFyLnN0eWxlLS14bCB7CgkJcG9zaXRpb246IGZpeGVkOwoJCXRvcDogMDsKCQlsZWZ0OiAtMzIwcHg7CgkJei1pbmRleDogOTk5OwoJCW1pbi13aWR0aDogMzIwcHg7CgkJbWF4LWhlaWdodDogMTAwdmg7CgkJb3ZlcmZsb3cteTogc2Nyb2xsOwoJCXBhZGRpbmc6IDU1cHggMjBweCAyMHB4IDIwcHg7CgkJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCQlib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpOwoJCS1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTsKCQl0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7Cgl9CgkudXNlci1zaWRlYmFyLnN0eWxlLS14bC5hY3RpdmUgewoJCWxlZnQ6IDA7Cgl9CgkudXNlci1zaWRlYmFyLnN0eWxlLS14bCAuZGFzaGJvYXJkLXNpZGUtbWVudS1jbG9zZSB7CgkJZGlzcGxheTogYmxvY2s7CgkJcG9zaXRpb246IGFic29sdXRlOwoJCXRvcDogMTVweDsKCQlyaWdodDogMTVweDsKCX0KCgkudXNlci1zaWRlYmFyLnN0eWxlLS14bDo6LXdlYmtpdC1zY3JvbGxiYXIgewoJCXdpZHRoOiA1cHg7Cgl9CgoJLnVzZXItc2lkZWJhci5zdHlsZS0teGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKCQlib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgMC4zKTsKCX0KCgkudXNlci1zaWRlYmFyLnN0eWxlLS14bDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewoJCWJhY2tncm91bmQtY29sb3I6IGRhcmtncmV5OwoJCW91dGxpbmU6IDFweCBzb2xpZCBzbGF0ZWdyZXk7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnVzZXItc2lkZWJhciB7CgkJcG9zaXRpb246IGZpeGVkOwoJCXRvcDogMDsKCQlsZWZ0OiAtMzIwcHg7CgkJei1pbmRleDogOTk5OwoJCW1pbi13aWR0aDogMzIwcHg7CgkJbWF4LWhlaWdodDogMTAwdmg7CgkJb3ZlcmZsb3cteTogc2Nyb2xsOwoJCXBhZGRpbmc6IDU1cHggMjBweCAyMHB4IDIwcHg7CgkJYmFja2dyb3VuZC1jb2xvcjogIzI5MmEzODsKCQlib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpOwoJCS1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTsKCQl0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7Cgl9CgkudXNlci1zaWRlYmFyLmFjdGl2ZSB7CgkJbGVmdDogMDsKCX0KCS5kYXNoYm9hcmQtc2lkZS1tZW51LWNsb3NlIHsKCQlkaXNwbGF5OiBibG9jazsKCQlwb3NpdGlvbjogYWJzb2x1dGU7CgkJdG9wOiAxNXB4OwoJCXJpZ2h0OiAxNXB4OwoJfQp9CgoudXNlci1zaWRlYmFyLW1lbnUgbGkgKyBsaSB7CgltYXJnaW4tdG9wOiAxMHB4Owp9CgoudXNlci1zaWRlYmFyLW1lbnUgbGkgYSB7Cglmb250LXNpemU6IDE3cHg7CglwYWRkaW5nOiAyMHB4IDIwcHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBibG9jazsKfQoudXNlci1zaWRlYmFyLW1lbnUgbGkgYSBpIHsKCW1hcmdpbi1yaWdodDogNXB4Owp9CgoudXNlci1zaWRlYmFyLW1lbnUgbGkgYTo6YmVmb3JlIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnVzZXItc2lkZWJhci1tZW51IGxpIGE6OmFmdGVyIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgoudXNlci1zaWRlYmFyLW1lbnUgbGkgYTpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi51c2VyLXNpZGViYXItbWVudSBsaSBhOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9CgovKiBzaWRlYmFyIGNzcyBlbmQgKi8KCi8qIyBzb3VyY2VNYXBwaW5nVVJMPW1haW4uY3NzLm1hcCAqLwoKLnNlY3Rpb24taGVhZGVyIC5jYXRlIHsKCWZvbnQtc2l6ZTogMThweDsKCWRpc3BsYXk6IGJsb2NrOwoJbWFyZ2luLXRvcDogLTVweDsKCWNvbG9yOiAjZmZmOwoJbWFyZ2luLWJvdHRvbTogMTVweDsKfQoKLmZvcmdldC1wYXNzIHsKCWNvbG9yOiAjMjhjNzZmOwp9Ci5jYXJkLWJnIHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KLmN1c3RvbS0tcGFnaW5hdGlvbiB7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKCW1hcmdpbi10b3A6IDMwcHg7Cn0KLmN1c3RvbS0tcGFnaW5hdGlvbiAuc21hbGwgewoJY29sb3I6ICNmZmYgIWltcG9ydGFudDsKCWZvbnQtc2l6ZTogMTZweDsKfQoucGFnaW5hdGlvbiBsaSB7CglwYWRkaW5nOiA1cHg7Cn0KLnBhZ2luYXRpb24gbGkgYSwKLnBhZ2luYXRpb24gbGkgc3BhbiB7Cgl3aWR0aDogNDBweDsKCWhlaWdodDogNDBweDsKCWxpbmUtaGVpZ2h0OiA0MHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7CglwYWRkaW5nOiAwOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsKCWJvcmRlcjogMXB4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKSk7Cgljb2xvcjogI2ZmZjsKfQoucGFnaW5hdGlvbiBsaSBzcGFuIHsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYjM4Owp9Ci5wYWdpbmF0aW9uIGxpIGE6aG92ZXIgewoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cgljb2xvcjogI2ZmZjsKfQoucGFnaW5hdGlvbiBsaSBhIHsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6ICMyOTJiMzg7Cn0KLnBhZ2luYXRpb24gbGkuZGlzYWJsZWQgc3BhbiB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cn0KCi5jb3B5dGV4dCwKI2NvcHlCb2FyZCB7Cgl0ZXh0LXNoYWRvdzogM3B4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cgljb2xvcjogI2ZmZjsKCWJvcmRlcjogdW5zZXQ7CgljdXJzb3I6IHBvaW50ZXI7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50Owp9CgouYWN0aW9uLWJ0biB7CglwYWRkaW5nOiA4cHggMTVweDsKCXdpZHRoOiBhdXRvOwoJZm9udC13ZWlnaHQ6IDcwMDsKCS8qIHRleHQtc2hhZG93OiAzcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7ICovCgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCWJvcmRlcjogbm9uZTsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgl6LWluZGV4OiAxOwoJbWFyZ2luOiAwIDVweDsKfQouc2lkZS1tZW51LWFjdGlvbiB7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWNvbG9yOiAjZmZmZmZmOwoJZm9udC1zaXplOiAyMHB4OwoJcGFkZGluZzogMDsKCWN1cnNvcjogcG9pbnRlcjsKfQp0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewoJYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7Cn0KCi5wcmFudG8tdWwgdWwsCi5wcmFudG8tdWwgbGkgewoJbGlzdC1zdHlsZTogbm9uZTsKCW1hcmdpbjogMDsKCXBhZGRpbmc6IDA7Cn0KCi5wcmFudG8tdWwgdWwgewoJcGFkZGluZy1sZWZ0OiAxZW07Cn0KCi5yZWZlcnJhbC11bCBsaSB7CglwYWRkaW5nLWxlZnQ6IDFlbTsKCWJvcmRlcjogMXB4IGRvdHRlZCAjZmZmOwoJYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDFweDsKfQoKLnJlZmVycmFsLXVsIGxpLmNvbnRhaW5lciB7Cglib3JkZXItYm90dG9tOiAwcHg7Cgl3aWR0aDogMTAwJTsKfQoKLnJlZmVycmFsLXVsIGxpLmVtcHR5IHsKCWZvbnQtc3R5bGU6IGl0YWxpYzsKCWNvbG9yOiBzaWx2ZXI7Cglib3JkZXItY29sb3I6IHNpbHZlcjsKfQoKLnJlZmVycmFsLXVsIGxpIHAgewoJbWFyZ2luOiAwOwoJLypiYWNrZ3JvdW5kOiAjMTIxNjIyOyovCglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0b3A6IDAuNWVtOwoJcGFkZGluZy1ib3R0b206IDNweDsKfQoKLnJlZmVycmFsLXVsIGxpIHVsIHsKCWJvcmRlci10b3A6IDFweCBkb3R0ZWQgI2ZmZmZmZjsKCW1hcmdpbi1sZWZ0OiAtMWVtOwoJcGFkZGluZy1sZWZ0OiAyZW07Cn0KCi5yZWZlcnJhbC11bCB1bCBsaTpsYXN0LWNoaWxkIHVsIHsKCWJvcmRlci1sZWZ0OiAxcHggZG90dGVkICNmZmY7CgltYXJnaW4tbGVmdDogLTE3cHg7Cn0KLnctMTAwIHsKCXdpZHRoOiAxMDAlOwp9CgouZGVwb3NpdC1pbWcgewoJbWF4LXdpZHRoOiAxMDBweDsKCW1heC1oZWlnaHQ6IDEwMHB4OwoJbWFyZ2luOiAwIGF1dG87Cn0KLm5pYy10ZXh0ICogewoJY29sb3I6ICNmZmYgIWltcG9ydGFudDsKfQoudGFibGUgdGggewoJcGFkZGluZzogMC43NXJlbTsKCXZlcnRpY2FsLWFsaWduOiB0b3A7Cglib3JkZXItdG9wOiBub25lOwp9Ci50YWJsZSB0aGVhZCB0aCB7Cgl2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOwoJYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMzI0MmY7Cn0KCi50YWJsZSB0ZCB7CglwYWRkaW5nOiAwLjc1cmVtOwoJdmVydGljYWwtYWxpZ246IHRvcDsKCWJvcmRlci10b3A6IDFweCBzb2xpZCAjMjEyMjJkOwoJY29sb3I6ICNmZmY7Cn0KCi53aXRoZHJhdy1saXN0IC5saXN0LWdyb3VwLWl0ZW0gewoJcGFkZGluZzogMTVweCAxNXB4OwoJbWFyZ2luLXRvcDogMjBweDsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9Ci5saXN0LWdyb3VwewogICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjFmOyAKCWJvcmRlci1ib3R0b206IDA7Cn0KLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbXsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmMWY7IAp9CgouYWRkb24tYmcgewoJdGV4dC1zaGFkb3c6IDNweCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJY29sb3I6ICNmZmY7Cglib3JkZXI6IHVuc2V0OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSkgIWltcG9ydGFudDsKfQoKLmJnLXRyYW5zcGFyZW50IHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9CgouaW1nLWlucHV0LWRpdiBpbnB1dFt0eXBlPSJmaWxlIl0gewoJei1pbmRleDogOTsKfQoKLmZpbGVpbnB1dCAudGh1bWJuYWlsID4gaW1nIHsKCW1heC13aWR0aDogMzAwcHg7Cn0KCi5nYXRld2F5LXByZXZpZXcgewoJbWF4LXdpZHRoOiAxMDBweDsKCW1heC1oZWlnaHQ6IDEwMHB4OwoJbWFyZ2luOiAwIGF1dG87Cn0KLmRlcG9zaXQtaW5mbyAqIHsKCWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7Cn0KCi5tYXBzIHsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7CgloZWlnaHQ6IDEwMCU7CglvdmVyZmxvdzogaGlkZGVuOwp9CgoucG9seS11c2VyIHsKCWRpc3BsYXk6IC13ZWJraXQtYm94OwoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKCS1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CglhbGlnbi1pdGVtczogY2VudGVyOwoJbWF4LXdpZHRoOiAyMTBweDsKfQoucG9seS10aHVtYiB7CgloZWlnaHQ6IDc1cHg7Cgl3aWR0aDogNzVweDsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCWRpc3BsYXk6IC13ZWJraXQtYm94OwoJZGlzcGxheTogLW1zLWZsZXhib3g7CglkaXNwbGF5OiBmbGV4OwoJLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKCS1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CglhbGlnbi1pdGVtczogY2VudGVyOwoJLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwoJLW1zLWZsZXgtcGFjazogY2VudGVyOwoJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cglib3gtc2hhZG93OiBpbnNldCAtNC4wOTZweCAtMi44NjhweCA4cHggMHB4IHJnYmEoNTIsIDU2LCA3MiwgMC44KSwgaW5zZXQgMi44MjhweCAyLjgyOHB4IDE2cHggMHB4IHJnYmEoMTIsIDExLCAxMiwgMC42KTsKCW1hcmdpbjogMCBhdXRvOwp9Ci5wb2x5LXRodW1iIC50aHVtYiB7Cgl3aWR0aDogNjVweDsKCWhlaWdodDogNjVweDsKCWJvcmRlci1yYWRpdXM6IGluaGVyaXQ7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjkyYTM4OwoJYm94LXNoYWRvdzogaW5zZXQgLTQuMDk2cHggLTIuODY4cHggOHB4IDBweCByZ2JhKDUyLCA1NiwgNzIsIDAuOCksIGluc2V0IDIuODI4cHggMi44MjhweCAxNnB4IDBweCByZ2JhKDEyLCAxMSwgMTIsIDAuNik7Cglib3JkZXItcmFkaXVzOiA1MCU7CglkaXNwbGF5OiAtd2Via2l0LWJveDsKCWRpc3BsYXk6IC1tcy1mbGV4Ym94OwoJZGlzcGxheTogZmxleDsKCS13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CgktbXMtZmxleC1hbGlnbjogY2VudGVyOwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCS13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKCS1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKCWp1c3RpZnktY29udGVudDogY2VudGVyOwp9Ci5wb2x5LXRodW1iIC50aHVtYiBpbWcgewoJYm9yZGVyLXJhZGl1czogNTAlOwoJd2lkdGg6IDUwcHg7CgloZWlnaHQ6IDUwcHg7Cn0KCi8qU3Vic0NyaWJlIEZvcm1zIFN0YXJ0cyBIZXJlKi8KLmJnLTIgewoJYmFja2dyb3VuZC1jb2xvcjogIzFhMWMzMzsKfQouYmctMiAuc2VjdGlvbi1oZWFkZXIgLmNhdGUgewoJY29sb3I6ICMwYWZmNjY7Cn0KLmJnLTIgLm5ld3NsYXRlci1mb3JtIGlucHV0IHsKCWJvcmRlci1jb2xvcjogIzFhMWMzMyAhaW1wb3J0YW50Owp9Ci5iZy0yIC5uZXdzbGF0ZXItZm9ybSBidXR0b24gewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSksIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9Ci5zZWN0aW9uLWhlYWRlciAuY2F0ZSB7Cgljb2xvcjogIzBhZmY2NjsKfQoubmV3c2xhdGVyLWZvcm0gewoJcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5uZXdzbGF0ZXItZm9ybSBpbnB1dCB7CgloZWlnaHQ6IDYwcHg7Cn0KLm5ld3NsYXRlci1mb3JtIGJ1dHRvbiB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDA7CglyaWdodDogMDsKCWhlaWdodDogNjBweDsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpLCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWNvbG9yOiAjZmZmZmZmOwoJd2lkdGg6IDYwcHg7Cn0KLypQYXltZW50LVNlY3Rpb24gU3RhcnRzIEhlcmUqLwoucGF5bWVudC10aHVtYiB7CglwYWRkaW5nOiAxMHB4OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldDsKCW1hcmdpbjogMTBweDsKfQoucGF5bWVudC10aHVtYiBhIHsKCXBhZGRpbmc6IDEwcHg7CglkaXNwbGF5OiBibG9jazsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpLCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7Cn0KLnBheW1lbnQtdGh1bWIgaW1nIHsKCXdpZHRoOiAxMDAlOwoJbWluLWhlaWdodDogODRweDsKfQouY3VycmVuY3ktc2xpZGVyIHsKCW1hcmdpbjogLTEwcHg7Cn0KLypBYm91dC1TZWN0aW9uIFN0YXJ0cyBIZXJlKi8KLmFib3V0LXRodW1iIHsKCXBhZGRpbmc6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKCS1tb3otYm9yZGVyLXJhZGl1czogNXB4OwoJYm9yZGVyLXJhZGl1czogNXB4OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSksIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTsKfQoKQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHsKCS5hYm91dC10aHVtYiB7CgkJbWFyZ2luLWJvdHRvbTogNDBweDsKCX0KfQouYWJvdXQtdGh1bWIgLnRodW1iIHsKCXBhZGRpbmc6IDEwcHg7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0Owp9Ci5hYm91dC10aHVtYiBpbWcgewoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDVweDsKCWJvcmRlci1yYWRpdXM6IDVweDsKCXdpZHRoOiAxMDAlOwp9Ci8qVGVhbS1TZWN0aW9uIFN0YXJ0cyBIZXJlKi8KLnRlYW0tY2FyZCB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgltYXJnaW46IDE1cHg7Cn0KLnRlYW0tY2FyZCAuY2FyZC1mb290ZXIgewoJcGFkZGluZzogMC43NXJlbSAxLjI1cmVtIDEuMnJlbTsKfQouY2FyZC1mb290ZXI6bGFzdC1jaGlsZCB7Cglib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpOwp9Ci5tLS0xNSB7CgltYXJnaW46IC0xNXB4Owp9Ci8qVGVhbSBTZWN0aW9uIFN0YXJ0cyBIZXJlKi8KLnRlYW0tY2FyZCB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpOwp9Ci50ZWFtLWNhcmQgLmNhcmQtYm9keSB7CglwYWRkaW5nOiAxNXB4OwoJcGFkZGluZy1ib3R0b206IDA7Cn0KLnRlYW0tY2FyZCAuY2FyZC1ib2R5IC5jYXJkLXRodW1iIHsKCWJveC1zaGFkb3c6IDdweCA3cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpIGluc2V0LCAtNHB4IC00cHggNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgaW5zZXQgIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9Ci50ZWFtLWNhcmQgLmNhcmQtZm9vdGVyIC50aXRsZSB7Cgl0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKCW1hcmdpbi10b3A6IDA7Cn0KLnRlYW0tY2FyZCAuY2FyZC1mb290ZXIgLmluZm8gewoJZGlzcGxheTogYmxvY2s7CgltYXJnaW4tYm90dG9tOiAxNXB4Owp9Ci50ZWFtLWNhcmQgLmNhcmQtZm9vdGVyIC5pbmZvOmxhc3QtY2hpbGQgewoJbWFyZ2luLWJvdHRvbTogMDsKfQoKLnNvY2lhbC1saW5rcyB7CglkaXNwbGF5OiAtbXMtZmxleGJveDsKCWRpc3BsYXk6IGZsZXg7CgktbXMtZmxleC13cmFwOiB3cmFwOwoJZmxleC13cmFwOiB3cmFwOwoJbWFyZ2luOiAtNXB4OwoJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KCi5zb2NpYWwtbGlua3MgbGkgewoJbWFyZ2luOiA1cHg7Cn0KLnNvY2lhbC1saW5rcyBsaSBhIGkgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJei1pbmRleDogMTsKfQoKLnNvY2lhbC1saW5rcyBsaSBhIHsKCXdpZHRoOiAzOHB4OwoJaGVpZ2h0OiAzOHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJbGluZS1oZWlnaHQ6IDM4cHg7Cgljb2xvcjogI2ZmZmZmZjsKCWZvbnQtc2l6ZTogMTJweDsKfQoKLnNvY2lhbC1saW5rcyBsaSBhOjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCA0cHggNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpICFpbXBvcnRhbnQ7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tb3otYm9yZGVyLXJhZGl1czogNTAlOwoJLW1zLWJvcmRlci1yYWRpdXM6IDUwJTsKCS1vLWJvcmRlci1yYWRpdXM6IDUwJTsKCW9wYWNpdHk6IDE7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwoJLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgMC4zczsKfQoKLnNvY2lhbC1saW5rcyBsaSBhOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYm9yZGVyLXJhZGl1czogNTAlOwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS1tcy1ib3JkZXItcmFkaXVzOiA1MCU7Cgktby1ib3JkZXItcmFkaXVzOiA1MCU7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5zb2NpYWwtbGlua3MgbGkgYTpob3ZlciB7Cgljb2xvcjogI2NlMzMwMzsKfQoKLnNvY2lhbC1saW5rcyBsaSBhOmhvdmVyOjpiZWZvcmUgewoJb3BhY2l0eTogMDsKfQoKLnNvY2lhbC1saW5rcyBsaSBhOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9Ci8qRmVhdHVyZS1TZWN0aW9uIFN0YXJ0cyBIZXJlKi8KLmZlYXR1cmUtLWl0ZW0gewoJdGV4dC1hbGlnbjogY2VudGVyOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KTsKCXBhZGRpbmc6IDQwcHggMjVweDsKCW1hcmdpbi1ib3R0b206IDMwcHg7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7CgktbW96LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwoJcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5mZWF0dXJlLS1pdGVtOjpiZWZvcmUsCi5mZWF0dXJlLS1pdGVtOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDA7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKfQoKLmZlYXR1cmUtLWl0ZW06OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouZmVhdHVyZS0taXRlbTo6YWZ0ZXIgewoJYm94LXNoYWRvdzogN3B4IDdweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgaW5zZXQsIC00cHggLTRweCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSBpbnNldCAhaW1wb3J0YW50OwoJYm9yZGVyOiAxcHggc29saWQgIzMwMzE0MiAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMDsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9CgouZmVhdHVyZS0taXRlbTpob3Zlcjo6YmVmb3JlIHsKCW9wYWNpdHk6IDA7Cn0KCi5mZWF0dXJlLS1pdGVtOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9CgouZmVhdHVyZS0taXRlbSAuZmVhdHVyZS10aHVtYiB7CgloZWlnaHQ6IDQwcHg7CgltYXJnaW4tYm90dG9tOiAyNXB4Owp9CgouZmVhdHVyZS0taXRlbSAuZmVhdHVyZS10aHVtYiBpbWcgewoJbWF4LWhlaWdodDogMTAwJTsKfQoKLmZlYXR1cmUtdGh1bWIuaWNvbiB7Cglmb250LXNpemU6IDQwcHg7CglsaW5lLWhlaWdodDogNTBweDsKCWNvbG9yOiAjZmZmOwp9CgouZmVhdHVyZS0taXRlbSAuZmVhdHVyZS1jb250ZW50IC50aXRsZSB7CgltYXJnaW4tYm90dG9tOiAyNXB4OwoJdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7CgktbW96LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwp9CgouZmVhdHVyZS0taXRlbSAuZmVhdHVyZS1jb250ZW50IHAgewoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwoJLW1vei10cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIGVhc2UgMC4zczsKfQoKLmZlYXR1cmUtLWl0ZW0uYWN0aXZlLAouZmVhdHVyZS0taXRlbTpob3ZlciB7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7Cn0KCi5mZWF0dXJlLS1pdGVtLmFjdGl2ZSBwLAouZmVhdHVyZS0taXRlbTpob3ZlciBwIHsKCWNvbG9yOiAjZmZmZmZmOwp9CgouZmVhdHVyZS0taXRlbS5hY3RpdmUgLmZlYXR1cmUtY29udGVudCAudGl0bGUsCi5mZWF0dXJlLS1pdGVtOmhvdmVyIC5mZWF0dXJlLWNvbnRlbnQgLnRpdGxlIHsKCWNvbG9yOiAjMmVjYzcxOwp9Cgouc2VydmljZS1pdGVtIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXBhZGRpbmc6IDYwcHggMjBweDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm94LXNoYWRvdzogLTRweCAtNHB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7CgltYXJnaW4tYm90dG9tOiAzMHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5zZXJ2aWNlLWl0ZW06OmJlZm9yZSwKLnNlcnZpY2UtaXRlbTo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7Cn0KCi5zZXJ2aWNlLWl0ZW06OmJlZm9yZSB7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjM1KSAhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4OwoJLW1zLWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktby1ib3JkZXItcmFkaXVzOiAxMHB4OwoJb3BhY2l0eTogMTsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7Cgktby10cmFuc2l0aW9uOiBhbGwgMC4zczsKCXRyYW5zaXRpb246IGFsbCAwLjNzOwp9Cgouc2VydmljZS1pdGVtOjphZnRlciB7Cglib3gtc2hhZG93OiA3cHggN3B4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBpbnNldCwgLTRweCAtNHB4IDRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIGluc2V0ICFpbXBvcnRhbnQ7Cglib3JkZXI6IDFweCBzb2xpZCAjMzAzMTQyICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7CgktbXMtYm9yZGVyLXJhZGl1czogMTBweDsKCS1vLWJvcmRlci1yYWRpdXM6IDEwcHg7CglvcGFjaXR5OiAwOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cn0KCi5zZXJ2aWNlLWl0ZW06aG92ZXI6OmJlZm9yZSB7CglvcGFjaXR5OiAwOwp9Cgouc2VydmljZS1pdGVtOmhvdmVyOjphZnRlciB7CglvcGFjaXR5OiAxOwp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAobWluLXdpZHRoOiA1NzZweCkgewoJLnNlcnZpY2UtaXRlbSB7CgkJbWF4LXdpZHRoOiA0MjBweDsKCQltYXJnaW46IDAgYXV0byAzMHB4OwoJfQp9Cgouc2VydmljZS1pdGVtIC5zZXJ2aWNlLXRodW1iIHsKCWhlaWdodDogNzBweDsKfQoKLnNlcnZpY2UtaXRlbSAuc2VydmljZS10aHVtYiBpbWcgewoJbWF4LWhlaWdodDogMTAwJTsKfQoKLnNlcnZpY2UtaXRlbSAuc2VydmljZS1jb250ZW50IC50aXRsZSB7CgltYXJnaW4tYm90dG9tOiAyNXB4OwoJdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7Cn0KCi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2UtY29udGVudCBwIHsKCW1hcmdpbi1ib3R0b206IDI0cHg7Cn0KLnBhZGRpbmctdG9wIHsKCXBhZGRpbmctdG9wOiA5MHB4Owp9CgoucGFkZGluZy1ib3R0b20gewoJcGFkZGluZy1ib3R0b206IDkwcHg7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgewoJLnBhZGRpbmctdG9wIHsKCQlwYWRkaW5nLXRvcDogOTBweDsKCX0KCgkucGFkZGluZy1ib3R0b20gewoJCXBhZGRpbmctYm90dG9tOiA5MHB4OwoJfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKCS5wYWRkaW5nLXRvcCB7CgkJcGFkZGluZy10b3A6IDc1cHg7Cgl9CgoJLnBhZGRpbmctYm90dG9tIHsKCQlwYWRkaW5nLWJvdHRvbTogNzVweDsKCX0KfQoKLnNlY3Rpb24taGVhZGVyLm1hcmdpbi1vbHBvIHsKCW1hcmdpbi1ib3R0b206IDMwcHg7Cn0KQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7Cgkuc2VjdGlvbi1oZWFkZXIubWFyZ2luLW9scG8gewoJCW1hcmdpbi1ib3R0b206IDQwcHg7Cgl9Cn0KCi5zaXRlLWxvZ28gaW1nIHsKCW1heC13aWR0aDogMjU5cHg7Cn0KCi5mb290ZXItd2lkZ2V0IC5hYm91dF9fd2lkZ2V0IGltZyB7CgltYXgtd2lkdGg6IDI1OXB4Owp9Ci5oZWFkZXItc2VjdGlvbiAubWFpbi1tZW51IC5uaWNlLXNlbGVjdCAubGlzdCBsaSArIGxpIHsKCW1hcmdpbi1sZWZ0OiAwOwp9CgouY29va2llX193cmFwcGVyIHsKCXBvc2l0aW9uOiBmaXhlZDsKCWJvdHRvbTogMDsKCXJpZ2h0OiAwOwoJbGVmdDogMDsKCWJhY2tncm91bmQ6ICMwMDA7CglwYWRkaW5nOiA0MHB4OwoJZGlzcGxheTogZmxleDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKCW1pbi1oZWlnaHQ6IDEwdmg7Cglmb250LXNpemU6IDE4cHg7Cgl6LWluZGV4OiA5OTk5OTsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiKDI1NSAyNTUgMjU1IC8gMTAlKSwgNHB4IDRweCA1cHggcmdiKDAgMCAwIC8gMzUlKSAhaW1wb3J0YW50Owp9Ci5jb29raWVfX3dyYXBwZXIgLnR4dCB7CgltYXgtd2lkdGg6IDcyMHB4OwoJbWFyZ2luLXJpZ2h0OiAyMHB4Owp9CgouZm9ybS0tY29udHJvbCB7CgliYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50Owp9Ci50aHVtYl9fMzUwcHggewoJaGVpZ2h0OiAzNTBweDsKfQpAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsKCS50aHVtYl9fMzUwcHggewoJCWhlaWdodDogMjUwcHg7Cgl9Cn0KLnRodW1iX18zNTBweCBpbWcgewoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7CglvYmplY3QtZml0OiBjb3ZlcjsKfQouY21uLS1jYXJkIHsKCWJhY2tncm91bmQ6IHRyYW5zcGFyZW50Owp9Ci5yZWZlcnJhbC1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCB7CgloZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsKCWNvbG9yOiAjZmZmOwoJb3BhY2l0eTogMSAhaW1wb3J0YW50OwoJcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAyMHB4OwoJbWluLWhlaWdodDogMTgwcHg7Cn0KdGV4dGFyZWEuZm9ybS1jb250cm9sIHsKICAgIG1pbi1oZWlnaHQ6IDE4MHB4Owp9Ci5mb3JtLWNvbnRyb2wgewoJYXBwZWFyYW5jZTogYXV0bzsKfQoucmVmZXJyYWwtZm9ybSAuaW5wdXQtZ3JvdXAtdGV4dCB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjY2NhMzU0OwoJYm9yZGVyOiAxcHggc29saWQgI2NjYTM1NDsKfQouY21uLS1jYXJkIHsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiKDI1NSAyNTUgMjU1IC8gMTAlKSwgNHB4IDRweCA1cHggcmdiKDAgMCAwIC8gMzUlKSAhaW1wb3J0YW50Owp9Ci5pbnB1dC1ncm91cC10ZXh0IHsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLWNvbG9yOiAjMzAzMTQyICFpbXBvcnRhbnQ7Cgljb2xvcjogI2ZmZjsKfQoKLmFsZXJ0IHsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgcGFkZGluZzogMDsKICAgIGJvcmRlcjogbm9uZTsKICAgIGJvcmRlci1yYWRpdXM6IDVweDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OwogICAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7CiAgICAtbXMtYm9yZGVyLXJhZGl1czogNXB4OwogICAgLW8tYm9yZGVyLXJhZGl1czogNXB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOwp9Ci5hbGVydC5hbGVydC0tYmFzZSB7Cglib3JkZXI6IDFweCBzb2xpZCAgaHNsKHZhcigtLWJhc2UpLy42KTsKCXBhZGRpbmc6IDEzcHggMTVweDsKICB9CiAgLmFsZXJ0LWljb24gewoJY29sb3I6IGhzbCh2YXIoLS1iYXNlKSk7CgltYXJnaW4tcmlnaHQ6IDEycHg7CiAgfQogIC5hbGVydC5hbGVydC0tYmFzZSBwIHsKCWZvbnQtc3R5bGU6IGl0YWxpYzsKICB9Ci5hbGVydCBidXR0b24uY2xvc2UgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBwYWRkaW5nOiAxMnB4OwogICAgZGlzcGxheTogZmxleDsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKfQoKLmFsZXJ0X19tZXNzYWdlIHsKICAgIHBhZGRpbmc6IDEycHg7CiAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4Owp9CgouYWxlcnRfX2ljb24gewogICAgcGFkZGluZzogMTNweCAxNHB4OwoJY29sb3I6ICNmZmY7Cn0KCmJvZHksIC5tb2RhbC1jb250ZW50LWJnLCAudXNlci1zaWRlYmFyLnN0eWxlLS14bCwgLmZvcm0tY29udHJvbCwuaGVhZGVyLXNlY3Rpb24uaGVhZGVyLWZpeGVkIHsKCWJhY2tncm91bmQtY29sb3I6IGhzbCh2YXIoLS1zZWNvbmRfY29sb3IpKSAhaW1wb3J0YW50Owp9CgouZm9vdGVyLXNlY3Rpb246OmJlZm9yZSwgLmNtbi1hY2NvcmRpb24uc3R5bGUtLXR3byAuY2FyZC1oZWFkZXIgLmFjYy1idG46OmFmdGVyLC5iYXNlLS1iZywqOjotd2Via2l0LXNjcm9sbGJhci1idXR0b24sKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsOjpzZWxlY3Rpb24gICB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpICFpbXBvcnRhbnQ7Cn0KCi5mb290ZXItd2lkZ2V0IC5zb2NpYWwtbGlua3MgbGkgYTpob3ZlciAsIC5zb2NpYWwtbGlua3MgbGkgYTpob3ZlciAsIC50ZXN0aW1vbmlhbC1zaW5nbGUgaSwgLnByaWNpbmctaXRlbV9faGVhZGVyIC5wYWNrYWdlX19wcmljZSAsIC5idG4tcHJpbWFyeSwgLm92ZXJ2aWV3LWl0ZW0gc3BhbiwgLmZlYXR1cmUtdGh1bWIuaWNvbiwgCi5mZWF0dXJlLS1pdGVtLmFjdGl2ZSAuZmVhdHVyZS1jb250ZW50IC50aXRsZSwgLmZlYXR1cmUtLWl0ZW06aG92ZXIgLmZlYXR1cmUtY29udGVudCAudGl0bGUsIC5uYXYtdGFicyBsaSBhLmNvbG9yLW9uZSwgLm5hdi10YWJzIGxpIGEuY29sb3Itb25lICwgLm5hdi10YWJzIGxpIGEuY29sb3ItdHdvICwgLnNpbmdsZS1wb3N0X19mb290ZXIgLnNoYXJlIGE6aG92ZXIsIC5jYXB0Y2hhIHNwYW4sIC5jb250YWN0LWl0ZW0gLmljb24gLC5pbm5lci1oZXJvLWNvbnRlbnQgLnBhZ2VfX2JyZWFkY3VtcyBhLC5wcml2YWN5LWxpbmtzIGxpIGE6aG92ZXIsIC5iYXNlLS1jb2xvciwud29yay1pdGVtIC53b3JrLWljb24gaSwud29yay1pdGVtIC53b3JrLWNvbnRlbnQgLnN1Yi10aXRsZSB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50Owp9CgouYnRuLXByaW1hcnk6aG92ZXIgewogICAgY29sb3I6ICNmZmY7Cn0KLmZvb3Rlci1ib3R0b217CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgaHNsKHZhcigtLWJhc2UpLzYzKTsKfQouaGVhZGVyLXRvcCB7CiAgICBwYWRkaW5nLXRvcDogMTBweDsKICAgIHBhZGRpbmctYm90dG9tOiAxNXB4OwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKS81MCk7Cn0KLndvcmstaXRlbSAud29yay1pY29uOjpiZWZvcmUgewogICAgYm9yZGVyOiAycHggZGFzaGVkIGhzbCh2YXIoLS1iYXNlKSk7Cn0KQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCl7CgogICAgLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDsKICAgIH0KICAgIC5oZWFkZXItc2VjdGlvbiB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXNlY29uZF9jb2xvcikpOwogICAgfQp9CgouaW5uZXItaGVyby1zZWN0aW9uewogICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKSk7Cn0KLmxpc3QtZ3JvdXAtaXRlbSwgLnJlZmVycmFsLWZvcm0gLmlucHV0LWdyb3VwLXRleHQgewogICAgYm9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLWJhc2UpKTIwOwp9CgoubGlzdC1ncm91cC1pdGVtewogICAgYm9yZGVyLWNvbG9yOiAjNGE0NjQ2OwogICAgY29sb3I6ICNjNWM1YzU7Cn0KCi5oZXJvLXNlY3Rpb24gewogICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIGhzbCh2YXIoLS1iYXNlKSk7Cn0KLnJlZmVycmFsLWZvcm0gLmlucHV0LWdyb3VwLXRleHQgewogICAgYmFja2dyb3VuZDogaHNsKHZhcigtLWJhc2UpKTsKfQoKLmNvb2tpZV9fd3JhcHBlcnsKICAgIGJhY2tncm91bmQ6IGhzbCh2YXIoLS1zZWNvbmRfY29sb3IpKQp9CgoubW9kYWwtY29udGVudCB7CgliYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tc2Vjb25kX2NvbG9yKSkgIWltcG9ydGFudDsKfQoKLmJ0bi0tYmFzZSB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKCWJveC1zaGFkb3c6IDBweCAxMHB4IDIwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7Cn0KLmJ0bi0tYmFzZTpkaXNhYmxlZCB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKSAhaW1wb3J0YW50OwoJYm94LXNoYWRvdzogMHB4IDEwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsKfQoKLmJ0bi0tYmFzZTpob3ZlciB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKCWJhY2tncm91bmQtY29sb3I6ICNiNzhiMzY7Cglib3gtc2hhZG93OiAwcHggMTBweCAyMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOwp9CgoKLyogPT09PT09PT09PT09PT09PT09IElucHV0IFR5cGUgRmlsZSBCdXR0b24gU3RhcnQgPT09PT09PT09PT09PSAqLwouZm9ybS0tY29udHJvbFt0eXBlPSJmaWxlIl0gewoJbGluZS1oZWlnaHQ6IDUwcHg7CglwYWRkaW5nOiAwOwoJcG9zaXRpb246IHJlbGF0aXZlOwogIH0KICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5mb3JtLS1jb250cm9sW3R5cGU9ImZpbGUiXSB7CgkgIGhlaWdodDogNTBweDsKCX0KICB9CiAgLmZvcm0tLWNvbnRyb2xbdHlwZT0iZmlsZSJdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7Cglib3JkZXI6IDA7CglwYWRkaW5nOiA0cHggNnB4OwoJZm9udC1zaXplOiAxNHB4OwoJYm9yZGVyLXJhZGl1czogLjJlbTsKCWJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYxNyAgIWltcG9ydGFudDsKCS13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGxpbmVhcjsKCXRyYW5zaXRpb246IC4ycyBsaW5lYXI7CglsaW5lLWhlaWdodDogMjVweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbi1sZWZ0OiAxNXB4OwoJY29sb3I6ICMwMDA7CiAgfQogIC5mb3JtLS1jb250cm9sOmhvdmVyW3R5cGU9ImZpbGUiXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24gewoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjFjICFpbXBvcnRhbnQ7Cgljb2xvcjogI2ZmZiAhaW1wb3J0YW50OwogIH0KLyogPT09PT09PT09PT09PT09PT09IElucHV0IFR5cGUgRmlsZSBCdXR0b24gRW5kID09PT09PT09PT09PT0gKi8KCi5jb3VudGRvd24tY2FyZCB7CglwYWRkaW5nOiA0MHB4IDMwcHg7Cn0KQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkuY291bnRkb3duLWNhcmQgewoJCXBhZGRpbmc6IDMwcHggMjBweDsgCgl9Cn0KQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CgkuY291bnRkb3duLWNhcmQgewoJCXBhZGRpbmc6IDI1cHggMTVweDsgCgl9CgkuY291bnRkb3duLWNhcmQgaDR7CgkJZm9udC1zaXplOiAxOHB4OwoJCWZvbnQtd2VpZ2h0OiA1MDA7Cgl9CgkuY291bnRkb3duLWNhcmQgaDJ7CgkJZm9udC1zaXplOiAyMHB4OwoJfQoJCn0KCi5jb3VudGRvd24td3JhcHBlciB7CiAgICBkaXNwbGF5OiBmbGV4OwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CglmbGV4LXdyYXA6IHdyYXA7Cn0KLmNvdW50ZG93bi13cmFwcGVyIHNwYW4gewogICAgYmFja2dyb3VuZDogI2ZmZmZmZjBkOwogICAgd2lkdGg6IDYwcHg7CiAgICBoZWlnaHQ6IDYwcHg7CiAgICBkaXNwbGF5OiBmbGV4OwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwoJbWFyZ2luOiAwIDVweDsKCWZvbnQtc2l6ZTogMjJweDsKCWJvcmRlci1yYWRpdXM6IDVweDsKfQpAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHsKCS5jb3VudGRvd24td3JhcHBlciBzcGFuIHsKCQl3aWR0aDogNTBweDsKCQloZWlnaHQ6IDUwcHg7CgkJZm9udC1zaXplOiAxOHB4OwoJfQp9CgoKQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7CgkucmFraW5nLWludmVzdCB7CgkJZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsKCQltYXJnaW46IDAgYXV0bzsKCQl0ZXh0LWFsaWduOiBjZW50ZXI7Cgl9Cn0KCi5yYWtpbmctaW52ZXN0IHNwYW46Zmlyc3QtY2hpbGQgewoJbWFyZ2luLWJvdHRvbTogNXB4Owp9CgoucmFraW5nLWludmVzdCBoNSB7CgltYXJnaW4tYm90dG9tOiA1cHg7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKfQoKLnJha2luZy1jb21tb24gc3BhbiB7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9CgoucmFraW5nLWNvbW1vbiBoNSB7Cgljb2xvcjogaHNsKHZhcigtLWJhc2UpKTsKfQoKLmludmVzdC1iYWRnZV9fbGlzdCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIG1pbi13aWR0aDogMjkwcHg7CiAgICByaWdodDogLTc0JTsKICAgIHRvcDogLTEzcHg7CiAgICBvcGFjaXR5OiAwOwogICAgYmFja2dyb3VuZDogaHNsKHZhcigtLWJhc2UpKTsKICAgIHotaW5kZXg6IDE7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBwYWRkaW5nOiAyMHB4OwogICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgIHRleHQtYWxpZ246IGxlZnQ7Cn0KCi5pbnZlc3QtYmFkZ2U6aG92ZXIgLmludmVzdC1iYWRnZV9fbGlzdCB7CglvcGFjaXR5OiAxOwoJdmlzaWJpbGl0eTogdmlzaWJsZQp9CgouaW52ZXN0LWJhZGdlX19saXN0IGxpIHNwYW4gewoJd2lkdGg6IDUwJTsKCWZvbnQtc2l6ZTogMTRweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkuaW52ZXN0LWJhZGdlX19zdWJ0aXRsZSB7CgkJZm9udC1zaXplOiAxMnB4OwoJfQp9CgouaW52ZXN0LWJhZGdlX19saXN0IGxpIHNwYW46Zmlyc3QtY2hpbGQgewoJZm9udC13ZWlnaHQ6IDYwMDsKCWNvbG9yOiBoc2wodmFyKC0td2hpdGUpKTsKfQoKLmludmVzdC1iYWRnZV9fbGlzdCBsaSB7CgltYXJnaW4tYm90dG9tOiA1cHg7Cn0KCgovKiBpbnZlc3QtYmFkZ2Ugc3RhcnQgaGVyZSAqLwoKLmludmVzdC1iYWRnZSB7CglwYWRkaW5nOiAyMHB4OwoJYm9yZGVyLXJhZGl1czogMTBweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmludmVzdC1iYWRnZV9fdGh1bWIgewoJbWFyZ2luLWJvdHRvbTogMTBweDsKfQoKLmludmVzdC1iYWRnZV9fdGh1bWJfX21hc2sgewoJY29udGVudDogIiI7Cgl3aWR0aDogMTI2cHg7CgloZWlnaHQ6IDE0MnB4OwoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJYmFja2dyb3VuZDogIzc0NzQ3NDsKCS13ZWJraXQtbWFzazogdXJsKCcuLi9pbWFnZXMvc2hhcGUucG5nJykgbm8tcmVwZWF0IDUwJSA1MCU7CgltYXNrLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaGFwZS5wbmcnKTsKCW1hc2stc2l6ZTogYXV0bzsKCS13ZWJraXQtbWFzay1zaXplOiBjb3ZlcjsKCW1hc2stc2l6ZTogY29udGFpbjsKCW1heC13aWR0aDogMTAwJTsKCW1heC1oZWlnaHQ6IDEwMCU7CglsaW5lLWhlaWdodDogOTsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXRyYW5zaXRpb246IDAuNXM7Cn0KCi5pbnZlc3QtYmFkZ2U6aG92ZXIgLmJhZGdlLWxvY2sgewoJYmFja2dyb3VuZC1jb2xvcjogI2NkYTEzMTsKfQoKLmludmVzdC1iYWRnZV9fdGh1bWJfX21hc2s6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAnJzsKCXdpZHRoOiAxMDAlOwoJYmFja2dyb3VuZDogI2NkYTEzMTsKCWxlZnQ6IDA7Cglib3R0b206IDA7Cgl6LWluZGV4OiAtMTsKCXRyYW5zaXRpb246IC4zcyBsaW5lYXI7Cn0KCi5pbnZlc3QtYmFkZ2U6aG92ZXIgLmludmVzdC1iYWRnZV9fdGh1bWJfX21hc2s6OmJlZm9yZSB7CgloZWlnaHQ6IDEwMCU7Cn0KCi5iYWRnZS1sb2NrIGltZyB7CglmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsKfQoKLmJhZGdlLWxvY2s6OmJlZm9yZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAnJzsKCWhlaWdodDogMTAwJTsKCXdpZHRoOiAxMDAlOwoJbGVmdDogMDsKCXJpZ2h0OiAwOwoJYm90dG9tOiAwOwoJei1pbmRleDogOTsKCW9wYWNpdHk6IDAuMTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9CgouaW52ZXN0LWJhZGdlOmhvdmVyIC5iYWRnZS1sb2NrIGltZyB7CglmaWx0ZXI6IGdyYXlzY2FsZSgwKTsKCXRyYW5zaXRpb246IDAuNXM7Cn0KCi5iYWRnZS1sb2NrOjphZnRlciB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAnXGYwMjMnOwoJZm9udC1mYW1pbHk6ICJGb250IEF3ZXNvbWUgNSBGcmVlIjsKCWZvbnQtd2VpZ2h0OiA5MDA7Cglmb250LXNpemU6IDM1cHg7Cgl0b3A6IDUwJTsKCWxlZnQ6IDUwJTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJdmlzaWJpbGl0eTogdmlzaWJsZTsKCXRyYW5zaXRpb246IDAuNXM7Cgl6LWluZGV4OiA5OTsKCWNvbG9yOiBoc2wodmFyKC0tZGFyaykpCn0KCi5pbnZlc3QtYmFkZ2U6aG92ZXIgLmJhZGdlLWxvY2s6OmFmdGVyIHsKCXZpc2liaWxpdHk6IGhpZGRlbjsKCW9wYWNpdHk6IDA7Cgl0b3A6IDYwJTsKfQoKLmludmVzdC1iYWRnZV9fdGh1bWJfX21hc2sgaW1nIHsKCW1hcmdpbjogMCBhdXRvOwoJd2lkdGg6IDEwMHB4OwoJaGVpZ2h0OiAxMDBweDsKfQoKLmludmVzdC1iYWRnZV9fZGV0YWlscy0zLAouaW52ZXN0LWJhZGdlX19kZXRhaWxzLTQgewoJbGVmdDogLTczJSAhaW1wb3J0YW50Owp9CgoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewoJLmludmVzdC1iYWRnZV9fZGV0YWlscyB7CgkJbGVmdDogYXV0byAhaW1wb3J0YW50OwoJCXJpZ2h0OiAtNzUlICFpbXBvcnRhbnQ7Cgl9CgoJLmludmVzdC1iYWRnZV9fZGV0YWlsX29uZSB7CgkJcmlnaHQ6IDAgIWltcG9ydGFudDsKCQlsZWZ0OiAtNzUlICFpbXBvcnRhbnQ7Cgl9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHsKCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTMsCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTQgewoJCWxlZnQ6IC04OCUgIWltcG9ydGFudDsKCX0KCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTEsCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTIgewoJCXJpZ2h0OiAtODglICFpbXBvcnRhbnQ7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoKCS5pbnZlc3QtYmFkZ2VfX2RldGFpbHMtMSwKCS5pbnZlc3QtYmFkZ2VfX2RldGFpbHMtMyB7CgkJbGVmdDogYXV0byAhaW1wb3J0YW50OwoJCXJpZ2h0OiAtNzMlICFpbXBvcnRhbnQ7Cgl9CgoJLmludmVzdC1iYWRnZV9fZGV0YWlscy0yLAoJLmludmVzdC1iYWRnZV9fZGV0YWlscy00IHsKCQlyaWdodDogYXV0byAhaW1wb3J0YW50OwoJCWxlZnQ6IC03MyUgIWltcG9ydGFudDsKCX0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkuaW52ZXN0LWJhZGdlX19saXN0IHsKCQlsZWZ0OiAtMjJweCAhaW1wb3J0YW50OwoJCXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7CgkJdG9wOiAxMDAlICFpbXBvcnRhbnQ7CgkJei1pbmRleDogOTk7CgkJd2lkdGg6IDI5MHB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHsKCS5pbnZlc3QtYmFkZ2VfX2xpc3QgewoJCWxlZnQ6IDUwJSAhaW1wb3J0YW50OwoJCXRvcDogMTQwJSAhaW1wb3J0YW50OwoJCXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwoJCXotaW5kZXg6IDk5OwoJCXdpZHRoOiAyOTBweDsKCX0KfQoKLmludmVzdC1iYWRnZV9fZGV0YWlsczo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJd2lkdGg6IDE1cHg7CgloZWlnaHQ6IDExcHg7CgliYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tYmFzZSkpOwoJY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgNTAlIDEwMCUsIDEwMCUgMCk7Cgl0b3A6IDUwJTsKfQpAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7CgoJLmludmVzdC1iYWRnZV9fZGV0YWlscy0xOjpiZWZvcmUsCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTI6OmJlZm9yZSB7CgkJbGVmdDogLTEzcHg7CgkJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg5MGRlZyk7Cgl9CgoJLmludmVzdC1iYWRnZV9fZGV0YWlscy0zOjpiZWZvcmUsCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTQ6OmJlZm9yZSB7CgkJcmlnaHQ6IC0xM3B4OwoJCXRyYW5zZm9ybTogIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIGFuZCAobWluLXdpZHRoOjk5MnB4KSB7CgkuaW52ZXN0LWJhZGdlX19kZXRhaWxfb25lOjpiZWZvcmUgewoJCXJpZ2h0OiAtMTNweDsKCQl0b3A6IDQ2JTsKCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7Cgl9CgoJLmludmVzdC1iYWRnZV9fZGV0YWlsX3R3bzo6YmVmb3JlIHsKCQlsZWZ0OiAtMTNweDsKCQl0b3A6IDQ2JTsKCQl0cmFuc2Zvcm06ICB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg5MGRlZyk7Cgl9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtaW4td2lkdGg6NzY4cHgpIHsKCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTE6OmJlZm9yZSwKCS5pbnZlc3QtYmFkZ2VfX2RldGFpbHMtMzo6YmVmb3JlIHsKCQlsZWZ0OiAtMTNweDsKCQl0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7Cgl9CgoJLmludmVzdC1iYWRnZV9fZGV0YWlscy0yOjpiZWZvcmUsCgkuaW52ZXN0LWJhZGdlX19kZXRhaWxzLTQ6OmJlZm9yZSB7CgkJcmlnaHQ6IC0xM3B4OwoJCXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7Cgl9Cn0KCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsKCS5pbnZlc3QtYmFkZ2VfX2RldGFpbHM6OmJlZm9yZSB7CgkJdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsKCQl0b3A6IC0xMXB4OwoJCWxlZnQ6IDQ4JTsKCX0KfQoKLmludmVzdC1iYWRnZV9fdGh1bWJfX21hc2s6OmJlZm9yZSB7CgloZWlnaHQ6IHZhcigtLWJlZm9yZS1oZWlnaHQpOwp9CgovKiBSYW5raW5nIFNlY3Rpb24gKi8KLnRhYmxlLS1yZXNwb25zaXZlIHsKCW1heC13aWR0aDogMTAwJTsKCW92ZXJmbG93LXk6IGhpZGRlbjsKCW92ZXJmbG93LXg6IGF1dG87Cgp9Cgo6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKCXdpZHRoOiA1cHg7CgloZWlnaHQ6IDVweDsKfQoKCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIHsKCWRpc3BsYXk6IGZsZXg7Cn0KCi5yZWZlcnJhbF9fbGVmdCB7CglkaXNwbGF5OiBmbGV4OwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCWZsZXgtd3JhcDogd3JhcDsKCXdpZHRoOiAyNDBweDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgkucmVmZXJyYWxfX2xlZnQgewoJCXdpZHRoOiAxODBweDsKCX0KfQoKLnJlZmVycmFsX19yaWdodCB7Cgl3aWR0aDogY2FsYygxMDAlIC0gMjQwcHgpOwoJcGFkZGluZy1sZWZ0OiAxNXB4Owp9CgpAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsKCS5yZWZlcnJhbF9fcmlnaHQgewoJCXdpZHRoOiBjYWxjKDEwMCUgLSAxODBweCk7Cgl9Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX3RodW1iIHsKCXdpZHRoOiA0MHB4OwoJaGVpZ2h0OiA0MHB4OwoJYWxpZ24tc2VsZjogY2VudGVyOwp9CgoucmVmZXJyYWxfX2xldmVsX19pdGVtX19pbm5lciAucmVmZXJyYWxfX2xldmVsX190aHVtYiBpbWcgewoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7CglvYmplY3QtZml0OiBjb250YWluOwp9CgoucmVmZXJyYWxfX2xldmVsX19pdGVtX19pbm5lciAucmVmZXJyYWxfX2xldmVsX19uYW1lLAoucmVmZXJyYWxfX2xldmVsX19pdGVtX19pbm5lciAucmVmZXJyYWxfX2xldmVsX19wcm9maXQsCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQgewoJcGFkZGluZzogMTBweCAyMHB4OwoJYmFja2dyb3VuZDogIzA1MDkzMzsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwoJLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7Cglib3JkZXItcmFkaXVzOiAzcHg7Cgljb2xvcjogI2ZmZjsKCS13ZWJraXQtdHJhbnNpdGlvbjogYWxsIGVhc2UgMC4zczsKCS1tb3otdHJhbnNpdGlvbjogYWxsIGVhc2UgMC4zczsKCXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7CgloZWlnaHQ6IDU0cHg7CglsaW5lLWhlaWdodDogMzhweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLnJlZmVycmFsX19sZXZlbF9fY29udGVudCB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX25hbWU6OmJlZm9yZSwKLnJlZmVycmFsX19sZXZlbF9fY29udGVudDo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNvbnRlbnQ6ICIiOwoJdG9wOiAwOwoJbGVmdDogMDsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxMDAlOwoJei1pbmRleDogLTE7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJveC1zaGFkb3c6IC00cHggLTRweCAzcHggcmdiKDI1NSAyNTUgMjU1IC8gMTAlKSwgNHB4IDRweCA1cHggcmdiKDAgMCAwIC8gMzUlKSAhaW1wb3J0YW50OwoJei1pbmRleDogLTE7CglvcGFjaXR5OiAxOwoJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsKCS1vLXRyYW5zaXRpb246IGFsbCAwLjNzOwoJdHJhbnNpdGlvbjogYWxsIDAuM3M7Cglib3gtc2hhZG93OiAtNHB4IC00cHggM3B4IHJnYigyNTUgMjU1IDI1NSAvIDEwJSksIDRweCA0cHggNXB4IHJnYigwIDAgMCAvIDM1JSkgIWltcG9ydGFudDsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CgoJLnJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIgLnJlZmVycmFsX19sZXZlbF9fbmFtZSwKCS5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX3Byb2ZpdCwKCS5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQgewoJCXBhZGRpbmc6IDEwcHg7Cgl9Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX25hbWU6bm90KDpsYXN0LWNoaWxkKSwKLnJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIgLnJlZmVycmFsX19sZXZlbF9fcHJvZml0Om5vdCg6bGFzdC1jaGlsZCksCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQ6bm90KDpsYXN0LWNoaWxkKSB7CgltYXJnaW4tcmlnaHQ6IDE1cHg7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX3Byb2ZpdCB7Cgl3aWR0aDogMTAwcHg7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX2NvbnRlbnQuY3VzdG9tLXdpZHRoIHsKCXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5yZWZlcnJhbF9fbGV2ZWxfX25hbWUgewoJd2lkdGg6IDE5MHB4OwoJZm9udC1zaXplOiAyMHB4OwoJbWFyZ2luLWxlZnQ6IDEwcHg7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewoJLnJlZmVycmFsX19sZXZlbF9faXRlbV9faW5uZXIgLnJlZmVycmFsX19sZXZlbF9fbmFtZSB7CgkJd2lkdGg6IDEzMHB4OwoJCWZvbnQtc2l6ZTogMTZweDsKCX0KfQoKLnJlZmVycmFsX19sZXZlbF9faXRlbTpob3ZlciAucmVmZXJyYWxfX2xldmVsX19pdGVtX19pbm5lciAucmVmZXJyYWxfX2xldmVsX19jb250ZW50LmN1c3RvbS13aWR0aCB7CgltYXgtd2lkdGg6IDEwMDAlICFpbXBvcnRhbnQ7Cgl0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwp9CgoucmVmZXJyYWxfX2xldmVsX19pdGVtX19pbm5lciAucmVmZXJyYWxfX2xldmVsX19jb250ZW50X19jb250ZW50IHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW1fX2lubmVyIC5ob3Zlcl9fbm9uZSB7CglkaXNwbGF5OiBmbGV4Owp9CgoucmVmZXJyYWxfX2xldmVsX19pdGVtIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLnJlZmVycmFsX19sZXZlbF9faXRlbTpub3QoOmxhc3QtY2hpbGQpIHsKCW1hcmdpbi1ib3R0b206IDE1cHg7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06aG92ZXIgLnJlZmVycmFsX19sZXZlbF9fbmFtZSwKLnJlZmVycmFsX19sZXZlbF9faXRlbTpob3ZlciAucmVmZXJyYWxfX2xldmVsX19wcm9maXQsCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06aG92ZXIgLnJlZmVycmFsX19sZXZlbF9fY29udGVudCB7CgliYWNrZ3JvdW5kOiBoc2wodmFyKC0tYmFzZSkpOwoJY29sb3I6ICNmZmY7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06aG92ZXIgLnJlZmVycmFsX19sZXZlbF9fY29udGVudCB7CglmbGV4LWdyb3c6IDE7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06aG92ZXIgLmhvdmVyX19ub25lIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06aG92ZXIgLnJlZmVycmFsX19sZXZlbF9fY29udGVudF9fY29udGVudCB7CglkaXNwbGF5OiBmbGV4Owp9CgoucmVmZXJyYWxfX2xldmVsX19pdGVtOmhvdmVyIC5yZWZlcnJhbF9fdG9vbHRpcCB7CglvcGFjaXR5OiAxOwoJdmlzaWJpbGl0eTogdmlzaWJsZTsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwoJLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKfQoKLnJlZmVycmFsX19sZXZlbF9faXRlbTpudGgtbGFzdC1vZi10eXBlKDMpIC5yZWZlcnJhbF9fdG9vbHRpcCwKLnJlZmVycmFsX19sZXZlbF9faXRlbTpudGgtbGFzdC1vZi10eXBlKDIpIC5yZWZlcnJhbF9fdG9vbHRpcCwKLnJlZmVycmFsX19sZXZlbF9faXRlbTpudGgtbGFzdC1vZi10eXBlKDEpIC5yZWZlcnJhbF9fdG9vbHRpcCB7Cglib3R0b206IDEwMCU7Cgl0b3A6IHVuc2V0OwoJbWFyZ2luLWJvdHRvbTogNXB4OwoJYm94LXNoYWRvdzogMHB4IC0xcHggMnB4IDJweCAjZGRkZGRkNDA7Cn0KCi5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW06bnRoLWxhc3Qtb2YtdHlwZSgzKSAucmVmZXJyYWxfX3Rvb2x0aXA6OmJlZm9yZSwKLnJlZmVycmFsX19sZXZlbF9faXRlbTpudGgtbGFzdC1vZi10eXBlKDIpIC5yZWZlcnJhbF9fdG9vbHRpcDo6YmVmb3JlLAoucmVmZXJyYWxfX2xldmVsX19pdGVtOm50aC1sYXN0LW9mLXR5cGUoMSkgLnJlZmVycmFsX190b29sdGlwOjpiZWZvcmUgewoJdG9wOiAxMDAlOwoJYm90dG9tOiB1bnNldDsKCWNsaXAtcGF0aDogcG9seWdvbig1MCUgMTAwJSwgMCAwLCAxMDAlIDApOwp9CgoucmVmZXJyYWxfX3Rvb2x0aXAgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAxMDAlOwoJbGVmdDogNTAlOwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNXB4KTsKCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNXB4KTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE1cHgpOwoJd2lkdGg6IDEwMCU7CgltYXgtd2lkdGg6IDM1MHB4OwoJYmFja2dyb3VuZDogI2ZmZjsKCXBhZGRpbmc6IDMwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cglmb250LXNpemU6IDE0cHg7CglsaW5lLWhlaWdodDogMS42OwoJYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDQsIDM4LCA4NiwgMC4yKTsKCXZpc2liaWxpdHk6IGhpZGRlbjsKCW9wYWNpdHk6IDA7Cgktd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7CgktbW96LXRyYW5zaXRpb246IGFsbCBlYXNlIDAuM3M7Cgl0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOwoJei1pbmRleDogOTsKCWJhY2tncm91bmQtY29sb3I6ICMwNTA5MzM7Cglib3gtc2hhZG93OiAwcHggMXB4IDZweCAycHggI2RkZGRkZDQwOwoJYm9yZGVyLXJhZGl1czogM3B4OwoJbWFyZ2luLXRvcDogNXB4Owp9CgoucmVmZXJyYWxfX3Rvb2x0aXA6OmJlZm9yZSB7CgljbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpOwoJYmFja2dyb3VuZDogaW5oZXJpdDsKCXdpZHRoOiAyMHB4OwoJaGVpZ2h0OiAxNXB4OwoJY29udGVudDogIiI7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cglib3R0b206IDEwMCU7CglsZWZ0OiA1MCU7CgltYXJnaW4tbGVmdDogLTEwcHg7Cn0KCkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQyNHB4KSB7CgkucmVmZXJyYWxfX3Rvb2x0aXAgewoJCW1heC13aWR0aDogMjgwcHg7CgkJcGFkZGluZzogMzBweCAxNXB4OwoJfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNDI0cHgpIHsKCS5yZWZlcnJhbF9fbGV2ZWxfX25hbWUgewoJCXBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OwoJCXRvcDogLTIwcHg7CgkJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsKCQlwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CgkJbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDsKCQlmb250LXNpemU6IDE1cHggIWltcG9ydGFudDsKCQloZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsKCQl3aWR0aDogYXV0byAhaW1wb3J0YW50OwoJfQoJLnJlZmVycmFsX19sZXZlbF9fbmFtZTo6YmVmb3JlIHsKCQlkaXNwbGF5OiBub25lOwoJfQoJLnJlZmVycmFsX19sZWZ0IHsKCQl3aWR0aDogYXV0bzsKCX0KCS5yZWZlcnJhbF9fbGV2ZWxfX2l0ZW0gewoJCW1hcmdpbi10b3A6IDQwcHg7Cgl9CgkucmVmZXJyYWxfX3JpZ2h0IHsKCQl3aWR0aDogMTAwJTsKCX0KfQ=="}},"time_used":74,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":47,"receive":27,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/frontend/about/67b41f81c0f411739857793.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.862Z","timestamp":1785143153862,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/frontend/about/67b41f81c0f411739857793.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 05:49:53 GMT\r\netag: \"15d55-67b41f81-f29d5eb2fd52ca4b;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 89429\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":89429,"size_decoded":89827,"mime_type":"image/png","magic":"PNG image data, 600 x 360, 8-bit/color RGBA, non-interlaced","md5":"ec1b3521c89a7a2cc018a754c25f1441","sha1":"e7bcb949d95edd82430c87d9a797f9901afc81a9","sha256":"b9c85098f037bfa912975e9a47891b202d08129ac0bc33be0cf2e6f8fb8ce162","sha512":"b27142ab891e34bf3c7198575b6317e82ea57cfeb82c6db1d19dd9fd09f5359fd78b6f5be3ced539389cf8b08e2041a63291cb192fdf62ea4a83b9242c93e77f","ssdeep":"1536:dE4ya+mW/vidZmhdJNnYosLTi2jtNxb+zSMUeoGMDNO+cN+ejZBAtIup6IO:24yp7yZ87fs1ZNVUSM0NOVYsmIup6f","tlshash":"b293021cd8df786a8ccbfe9d3b8811c18159c5c28937841a59d8c113235f6ffad29b46","first_seen":"2025-12-19T04:10:18.980016Z","last_seen":"2026-07-27T09:07:02.804135Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":111,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":10,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"va.tawk.to/v1/widget-settings?propertyId=67b4301f3812ff19107c7949\u0026widgetId=1ikbtnvah\u0026sv=null","fqdn":"va.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.691Z","timestamp":1785143154691,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /v1/widget-settings?propertyId=67b4301f3812ff19107c7949\u0026widgetId=1ikbtnvah\u0026sv=null HTTP/1.1\r\nHost: va.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\r\nOrigin: https://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-served-by: visitor-application-preemptive-4qsd\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3600\r\naccess-control-allow-methods: GET,OPTIONS\r\naccess-control-allow-headers: content-type,x-tawk-token\r\ncache-control: public, max-age=7200, s-maxage=1800\r\netag: W/\"2-4-0\"\r\ncontent-type: application/json\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\npriority: u=4,i=?0\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\ncf-cache-status: REVALIDATED\r\nserver: cloudflare\r\ncf-ray: a21a7c2cdb001a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":3245,"size_decoded":1958,"mime_type":"application/json","magic":"JSON text data","md5":"a71ac7ae040546c3b452e3bc5c5584d9","sha1":"fcd07b7b11656088e16d2a3ff5fa8320d4beb174","sha256":"e3f7cf92755825903a184b7d8c3b8131fa2daf11ca04831206d19ba9c482716f","sha512":"aad4fb5a9ed955e20504ce94ea6519afa225791247fcc4c134129cccf2d71ebaa895f8549da5d5ab918d888cda2c10a9eb4b469d9b1ef8bf17902fbb9e0d71af","ssdeep":"","tlshash":"d461432a8916dd7993c9925365df7627b93dd023e384190ce198a93883efacd221274b","first_seen":"2026-07-27T06:02:19.017952Z","last_seen":"2026-07-27T09:07:02.798796Z","times_seen":3,"resource_available":false,"data":"eyJvayI6dHJ1ZSwiZGF0YSI6eyJzZXR0aW5nc1ZlcnNpb24iOiIyLTQtMCIsInByb3BlcnR5TmFtZSI6IlByb2Z4IiwiYnJhbmRpbmciOnsid2hpdGVsYWJlbGVkIjpmYWxzZSwidGV4dCI6Ijp0YXdreTogQWRkIGZyZWUgKmxpdmUgY2hhdCogdG8geW91ciBzaXRlIiwidXJsIjoiaHR0cHM6Ly93d3cudGF3ay50by8/dXRtX3NvdXJjZT10YXdrLW1lc3NlbmdlciZ1dG1fbWVkaXVtPWxpbmsmdXRtX2NhbXBhaWduPXJlZmVycmFsJnV0bV90ZXJtPTY3YjQzMDFmMzgxMmZmMTkxMDdjNzk0OSJ9LCJ3aWRnZXQiOnsidHlwZSI6ImlubGluZSIsInZlcnNpb24iOjMsImFnZW50RHJpdmVuU3RhdHVzIjpmYWxzZSwibGFuZ3VhZ2UiOiJlbiIsIm1pbmltaXplZCI6eyJkZXNrdG9wIjp7InR5cGUiOiJyb3VuZCJ9LCJtb2JpbGUiOnsidHlwZSI6InJvdW5kIn19LCJtYXhpbWl6ZWQiOnsiZGVza3RvcCI6eyJoZWlnaHQiOjAsIndpZHRoIjowfX0sImJ1YmJsZSI6eyJ0eXBlIjoiaW1hZ2UiLCJjb25maWciOnsid2lkdGgiOjEyNCwiaGVpZ2h0Ijo3OSwiekluZGV4IjoxLCJyb3RhdGUiOjAsIm9mZnNldFgiOjAsIm9mZnNldFkiOjMwLCJpbWFnZSI6eyJ0eXBlIjoiZ2FsbGVyeSIsImNvbnRlbnQiOiIxNjgifX19LCJ0aGVtZSI6eyJoZWFkZXIiOnsidGV4dCI6IiNmZmZmZmYiLCJiYWNrZ3JvdW5kIjoiIzAzYTg0ZSJ9LCJhZ2VudCI6eyJtZXNzYWdlVGV4dCI6IiNmZmZmZmYiLCJtZXNzYWdlQmFja2dyb3VuZCI6IiMwM2E4NGUifSwidmlzaXRvciI6eyJtZXNzYWdlVGV4dCI6IiMzMzMzMzMiLCJtZXNzYWdlQmFja2dyb3VuZCI6IiNlNWU1ZTUifX0sIm5vdGlmaWNhdGlvbiI6eyJhbGwiOnsiZXN0aW1hdGVkV2FpdFRpbWUiOmZhbHNlLCJzb3VuZCI6dHJ1ZSwiYWdlbnRUeXBpbmciOnRydWUsInZpc2l0b3JUeXBpbmciOnRydWUsInRhYiI6dHJ1ZX0sImRlc2t0b3AiOnsicHJldmlldyI6dHJ1ZX0sIm1vYmlsZSI6eyJwcmV2aWV3Ijp0cnVlfX0sImJlaGF2aW9yIjp7ImNsaWNrIjoibWF4IiwiZGVmYXVsdFZpZXciOiJob21lIn0sInZpc2liaWxpdHkiOnsiYWxsIjp7InNob3dXaGVuT2ZmbGluZSI6dHJ1ZX0sImRlc2t0b3AiOnsicG9zaXRpb24iOiJiciIsInNob3ciOnRydWV9LCJtb2JpbGUiOnsicG9zaXRpb24iOiJiciIsInNob3ciOnRydWV9fSwiZmVhdHVyZXMiOnsiZW1vamkiOnRydWUsInVwbG9hZHMiOnRydWUsInJhdGluZyI6dHJ1ZSwidHJhbnNjcmlwdCI6dHJ1ZX0sImNvbXBvbmVudHMiOnsibGl2ZUNoYXQiOnRydWUsImtiIjp0cnVlLCJ3ZWJydGMiOnRydWV9LCJzY2hlZHVsZXIiOnsiZW5hYmxlZCI6ZmFsc2V9LCJzdGF0ZXMiOnsib25saW5lIjp7ImhlYWRlciI6W3siaWQiOiJoZWFkaW5nOnA0bzNlWThRdlQiLCJ0eXBlIjoiaGVhZGluZyIsImNvbnRlbnQiOnsidmFsdWUiOiJIaSB0aGVyZSDwn5GLIiwiYWxpZ25tZW50IjoibGVmdCJ9fSx7ImlkIjoidGV4dDpsb2VKdVBHUWQtIiwidHlwZSI6InRleHQiLCJjb250ZW50Ijp7InZhbHVlIjoiTmVlZCBoZWxwPyBTZWFyY2ggb3VyIGhlbHAgY2VudGVyIGZvciBhbnN3ZXJzIG9yIHN0YXJ0IGEgY29udmVyc2F0aW9uOiIsImFsaWdubWVudCI6ImxlZnQifX1dLCJib2R5IjpbeyJpZCI6ImticzpQVm1hTWhpT2NOIiwidHlwZSI6ImtiLXNlYXJjaCIsImNvbnRlbnQiOnsic2l0ZUlkIjoicHJpbWFyeSIsImxpbmtUYXJnZXQiOiJzZWxmIiwiaW5wdXRQbGFjZWhvbGRlciI6IlNlYXJjaCBmb3IgYW5zd2VycyIsImNhcmRUaXRsZVRleHQiOiJIZWxwIENlbnRlciJ9fSx7ImlkIjoiY2hhdDpPVXNwWmtxeW5uIiwidHlwZSI6ImNoYXQiLCJjb250ZW50Ijp7ImJ1dHRvblRleHQiOiJOZXcgQ29udmVyc2F0aW9uIiwiaW5wdXRQbGFjZWhvbGRlciI6IlR5cGUgaGVyZSBhbmQgcHJlc3MgZW50ZXIuLiIsInJlY2VudENvbnZDYXJkVGl0bGVUZXh0IjoiUmVjZW50IENvbnZlcnNhdGlvbnMiLCJidXR0b25TdWJ0aXRsZSI6IldlIHR5cGljYWxseSByZXBseSBpbiBhIGZldyBtaW51dGVzIn19XSwibWluaW1pemVkVGV4dCI6Ik9ubGluZSJ9LCJhd2F5Ijp7ImhlYWRlciI6W3siaWQiOiJoZWFkaW5nOm9uZW9LN2NfODMiLCJ0eXBlIjoiaGVhZGluZyIsImNvbnRlbnQiOnsidmFsdWUiOiJIaSB0aGVyZSDwn5GLIiwiYWxpZ25tZW50IjoibGVmdCJ9fV0sImJvZHkiOlt7ImlkIjoia2JzOmMzcXhlN25FZzQiLCJ0eXBlIjoia2Itc2VhcmNoIiwiY29udGVudCI6eyJzaXRlSWQiOiJwcmltYXJ5IiwibGlua1RhcmdldCI6InNlbGYiLCJpbnB1dFBsYWNlaG9sZGVyIjoiU2VhcmNoIGZvciBhbnN3ZXJzIiwiY2FyZFRpdGxlVGV4dCI6IkhlbHAgQ2VudGVyIn19LHsiaWQiOiJjaGF0OnJaYkxWOF9WT3giLCJ0eXBlIjoiY2hhdCIsImNvbnRlbnQiOnsiYnV0dG9uVGV4dCI6Ik5ldyBDb252ZXJzYXRpb24iLCJpbnB1dFBsYWNlaG9sZGVyIjoiVHlwZSBoZXJlIGFuZCBwcmVzcyBlbnRlci4uIiwicmVjZW50Q29udkNhcmRUaXRsZVRleHQiOiJSZWNlbnQgQ29udmVyc2F0aW9ucyIsImJ1dHRvblN1YnRpdGxlIjoiV2UgdHlwaWNhbGx5IHJlcGx5IGluIGEgZmV3IG1pbnV0ZXMifX1dLCJtaW5pbWl6ZWRUZXh0IjoiQXdheSJ9LCJvZmZsaW5lIjp7ImhlYWRlciI6W3siaWQiOiJ0ZXh0OlJBTkxzdEVVdjYiLCJ0eXBlIjoidGV4dCIsImNvbnRlbnQiOnsidmFsdWUiOiJQbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cgYW5kIHdlIHdpbGwgZ2V0IGJhY2sgdG8geW91IGFzIHNvb24gYXMgcG9zc2libGUuIiwiYWxpZ25tZW50IjoiY2VudGVyIn19XSwiYm9keSI6W3siaWQiOiJmb3JtOmM1akhDbzVPS0QiLCJ0eXBlIjoiZm9ybSIsImNvbnRlbnQiOnsiZmllbGRzIjpbeyJsYWJlbCI6Ik5hbWUiLCJyZXF1aXJlZCI6dHJ1ZSwidHlwZSI6InRleHQiLCJjb250ZXh0IjoibmFtZSJ9LHsibGFiZWwiOiJFbWFpbCIsInJlcXVpcmVkIjp0cnVlLCJ0eXBlIjoidGV4dCIsImNvbnRleHQiOiJlbWFpbCIsImZvcm1hdCI6ImVtYWlsIn0seyJsYWJlbCI6Ik1lc3NhZ2UiLCJyZXF1aXJlZCI6dHJ1ZSwidHlwZSI6InRleHRhcmVhIn1dfX1dLCJtaW5pbWl6ZWRUZXh0IjoiU2VuZCBtZXNzYWdlIn19LCJ1c1ByaXZhY3lTaGllbGQiOnsiZGVmYXVsdCI6eyJlbmFibGVkIjpmYWxzZSwiZm9ybSI6eyJhaUxhYmVsaW5nIjpmYWxzZSwicG9saWN5Ijp7InRleHQiOiIiLCJ1cmwiOiIifSwiYWN0aW9ucyI6eyJhY2NlcHQiOiJBY2NlcHQgJiBTdGFydCBDaGF0IiwicmVqZWN0IjoiTm8gdGhhbmtzIn19fX19fX0="}},"time_used":483,"timings":{"blocked":4,"dns":4,"connect":0,"send":0,"wait":475,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0d2b7c.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.333Z","timestamp":1785143155333,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0d2b7c.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"8c2091a992e4303600967e53388cb5c8\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591666\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30d9680883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":10918,"size_decoded":3756,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (10918), with no line terminators","md5":"8c2091a992e4303600967e53388cb5c8","sha1":"70cb06404a117829d3c53f5890077f5ff82957c9","sha256":"52edf640b5358d2e388d34d85bae2bf9973c26383165c4187da4e98b7703233a","sha512":"4d379fa96658dead5908f119d36ff91db8ec34d145fad5888370bd681ec575615351eaa0336fba48e4ad102b84e07881286bb1a958ec15ac36f86677de149d15","ssdeep":"192:0CFny7CpmYbZTxcwr40v0zSrj5D6/L6LvGokD36b4hwseQ:08mCTZTJr40v0GF/LvV4hwsR","tlshash":"9332a6b7e0a1107ea316871c106fa610f61f6c8ab2561da5ba7ab46f900ddcfc065f7c","first_seen":"2026-04-21T04:02:24.334927Z","last_seen":"2026-08-03T12:50:03.365356Z","times_seen":13477,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstMmQwZDJiN2MiXSx7IjVhNjAiOmZ1bmN0aW9uKHQsZSxvKXsidXNlIHN0cmljdCI7dmFyIHI9bygiMmIwZSIpLG49bygiZjBiMCIpLGE9ZnVuY3Rpb24odCl7cmV0dXJuKDI5OSpwYXJzZUludCh0LnNsaWNlKDEsMyksMTYpKzU4NypwYXJzZUludCh0LnNsaWNlKDMsNSksMTYpKzE0NCpwYXJzZUludCh0LnNsaWNlKDUsNyksMTYpKS8xZTM+PTE4MD8iIzAwMDAwMCI6IiNGRkZGRkYifTtmdW5jdGlvbiBpKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIHR9KHQpfHxmdW5jdGlvbih0LGUpe3ZhciBvPW51bGw9PXQ/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmdFtTeW1ib2wuaXRlcmF0b3JdfHx0WyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9byl7dmFyIHIsbixhLGkscz1bXSxsPSEwLGM9ITE7dHJ5e2lmKGE9KG89by5jYWxsKHQpKS5uZXh0LDA9PT1lKXtpZihPYmplY3QobykhPT1vKXJldHVybjtsPSExfWVsc2UgZm9yKDshKGw9KHI9YS5jYWxsKG8pKS5kb25lKSYmKHMucHVzaChyLnZhbHVlKSxzLmxlbmd0aCE9PWUpO2w9ITApO31jYXRjaCh0KXtjPSEwLG49dH1maW5hbGx5e3RyeXtpZighbCYmbnVsbCE9by5yZXR1cm4mJihpPW8ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYoYyl0aHJvdyBufX1yZXR1cm4gc319KHQsZSl8fGZ1bmN0aW9uKHQsZSl7aWYodCl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiBzKHQsZSk7dmFyIG89e30udG9TdHJpbmcuY2FsbCh0KS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PW8mJnQuY29uc3RydWN0b3ImJihvPXQuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT1vfHwiU2V0Ij09PW8/QXJyYXkuZnJvbSh0KToiQXJndW1lbnRzIj09PW98fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG8pP3ModCxlKTp2b2lkIDB9fSh0LGUpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gcyh0LGUpeyhudWxsPT1lfHxlPnQubGVuZ3RoKSYmKGU9dC5sZW5ndGgpO2Zvcih2YXIgbz0wLHI9QXJyYXkoZSk7bzxlO28rKylyW29dPXRbb107cmV0dXJuIHJ9dmFyIGw9ci5hLmNvbXBvbmVudCgiaS1mcmFtZSIse3Byb3BzOnt3aWR0aDp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSxoZWlnaHQ6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6bnVsbH0sY3NzTGluazp7dHlwZTpTdHJpbmcsZGVmYXVsdDpudWxsfSxzdHlsZU9iamVjdDp7dHlwZTpbT2JqZWN0LEFycmF5XX0sY2xhc3NTdHJpbmc6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiJ9LGlzTWF4V2lkZ2V0Ont0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aWQ6bi5IZWxwZXIuZ2VuZXJhdGVVVUlEKCl9fSxyZW5kZXI6ZnVuY3Rpb24odCl7cmV0dXJuIHQoImlmcmFtZSIse29uOntsb2FkOnRoaXMucmVuZGVyQ2hpbGRyZW59LGF0dHJzOntzcmNkb2M6dGhpcy5pc01heFdpZGdldD8iPGh0bWw+PC9odG1sPiI6bnVsbCxzcmM6dGhpcy5pc01heFdpZGdldD9udWxsOiJhYm91dDpibGFuayIsZnJhbWVib3JkZXI6IjAiLHNjcm9sbGluZzoibm8iLHdpZHRoOnRoaXMud2lkdGgsaGVpZ2h0OnRoaXMuaGVpZ2h0LHN0eWxlOk9iamVjdC5lbnRyaWVzKHRoaXMuc3R5bGVPYmplY3QpLm1hcCgoZnVuY3Rpb24odCl7dmFyIGU9aSh0LDIpO3JldHVybiBlWzBdK2VbMV19KSkuam9pbigiICIpLGlkOnRoaXMuaWQsY2xhc3M6dGhpcy5jbGFzc1N0cmluZyxyZWZlcnJlcnBvbGljeToibm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUifX0pfSxiZWZvcmVVcGRhdGU6ZnVuY3Rpb24oKXt0aGlzLmlBcHAmJih0aGlzLmlBcHAuY2hpbGRyZW49T2JqZWN0LmZyZWV6ZSh0aGlzLiRzbG90cy5kZWZhdWx0KSl9LG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuJGV2ZW50QnVzLiRvbigidXBkYXRlV2lkZ2V0U2V0dGluZ3MiLChmdW5jdGlvbigpe3QucmVJbmplY3RDU1NHbG9iYWxWYXJpYWJsZXMoKX0pKX0sbWV0aG9kczp7cmVuZGVyQ2hpbGRyZW46ZnVuY3Rpb24oKXt2YXIgdD10aGlzLiRzbG90cy5kZWZhdWx0LGU9dGhpcy4kZWwuY29udGVudERvY3VtZW50LmRvY3VtZW50RWxlbWVudCxvPXRoaXMuJGVsLmNvbnRlbnREb2N1bWVudC5ib2R5LG49dGhpcy4kZWwuY29udGVudERvY3VtZW50LmhlYWQsaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKSxsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKSxjPW5ldyByLmEoe25hbWU6ImlBcHAiLGRhdGE6e2NoaWxkcmVuOk9iamVjdC5mcmVlemUodCl9LHJlbmRlcjpmdW5jdGlvbih0KXtyZXR1cm4gdCgiZGl2Iix7YXR0cnM6e3N0eWxlOiJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyJ9fSx0aGlzLmNoaWxkcmVuKX0sc3RvcmU6dGhpcy4kc3RvcmUsbW91bnRlZDpmdW5jdGlvbigpe3RoaXMuY2hpbGRyZW4ubGVuZ3RoJiZ0aGlzLmNoaWxkcmVuWzBdJiZ0aGlzLmNoaWxkcmVuWzBdLmNvbnRleHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNoaWxkcmVuWzBdLmNvbnRleHQubG9hZGVkJiZ0aGlzLmNoaWxkcmVuWzBdLmNvbnRleHQubG9hZGVkKCl9fSk7cy5ocmVmPXRoaXMuY3NzTGluayxzLnJlbD0ic3R5bGVzaGVldCIsbC5ocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TGF0bzoxMDAsMTAwaSwzMDAsMzAwaSw0MDAsNDAwaSw3MDAsNzAwaSw5MDAsOTAwaSZzdWJzZXQ9bGF0aW4tZXh0IixvLmFwcGVuZENoaWxkKGkpLG8uY2xhc3NMaXN0LmFkZCgiZm9udC1sYXRvIik7dmFyIGQ9IjFyZW0iLGg9IjAiO2lmKHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9pc1JUTCJdJiZvLmNsYXNzTGlzdC5hZGQoInRhd2stcnRsIiksdGhpcy4kc3RvcmUuZ2V0dGVyc1siYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiXSl7dmFyIG07ZS5jbGFzc0xpc3QuYWRkKCJ0YXdrLW1vYmlsZSIpLG8uY2xhc3NMaXN0LmFkZCgidGF3ay1tb2JpbGUiKTt2YXIgZz1udWxsPT09KG09dGhpcy4kVGF3a0pTQVBJKXx8dm9pZCAwPT09bXx8bnVsbD09PShtPW0ubG9jYWxfQVBJKXx8dm9pZCAwPT09bXx8bnVsbD09PShtPW0uY3VzdG9tU3R5bGUpfHx2b2lkIDA9PT1tP3ZvaWQgMDptLnZpc2liaWxpdHk7ZyYmZy5tb2JpbGUmJmcubW9iaWxlLm1heGltaXplZCYmKGcubW9iaWxlLm1heGltaXplZC5wYWRkaW5nVG9wJiYoZD0iIi5jb25jYXQoZy5tb2JpbGUubWF4aW1pemVkLnBhZGRpbmdUb3AsInB4IikpLGcubW9iaWxlLm1heGltaXplZC5wYWRkaW5nQm90dG9tJiYoaD0iIi5jb25jYXQoZy5tb2JpbGUubWF4aW1pemVkLnBhZGRpbmdCb3R0b20sInB4IikpKX10aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvbGFuZ3VhZ2UiXSYmZS5zZXRBdHRyaWJ1dGUoImxhbmciLHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9sYW5ndWFnZSJdKTt2YXIgcD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJtZXRhIik7cFsiaHR0cC1lcXVpdiJdPSJDb250ZW50LVR5cGUiLHAuY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ijt2YXIgdT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJtZXRhIik7dS5uYW1lPSJ2aWV3cG9ydCIsdS5jb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xLCB1c2VyLXNjYWxhYmxlPW5vIixuLmFwcGVuZENoaWxkKHApLG4uYXBwZW5kQ2hpbGQodSk7dmFyIHc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTt3LnR5cGU9InRleHQvY3NzIix3LmNsYXNzTGlzdC5hZGQoInRhd2stZ2xvYmFsLXZhcmlhYmxlcyIpO3ZhciBiPSI6cm9vdCB7XG5cdFx0XHRcdFx0LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAiLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyQmdDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0XHQtLXRhd2staGVhZGVyLWJhY2tncm91bmQtY29sb3ItYWxwaGE6ICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyQmdDb2xvciJdLCI1MCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdC0tdGF3ay1oZWFkZXItdGV4dC1jb2xvcjogIikuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9oZWFkZXJUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0XHQtLXRhd2staGVhZGVyLW92ZXJyaWRlLXBhZGRpbmctdG9wOiAiKS5jb25jYXQoZCwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0LS10YXdrLWZvb3Rlci1vdmVycmlkZS1wYWRkaW5nLWJvdHRvbTogIikuY29uY2F0KGgsIiAhaW1wb3J0YW50O1xuXHRcdFx0XHR9Iik7Yis9Ii50YXdrLWNoYXQtYnViYmxlIGNvZGUsXG5cdFx0XHRcdFx0XHQudGF3ay1jaGF0LWJ1YmJsZSBwcmUge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICAiLmNvbmNhdChhKHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC92aXNpdG9yQmdDb2xvciJdKSwiNDAgIWltcG9ydGFudDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvciA6ICIpLmNvbmNhdChhKHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC92aXNpdG9yQmdDb2xvciJdKSwiMjAgIWltcG9ydGFudDtcblx0XHRcdH0iKSxiKz0iLnRhd2stdmlzaXRvci1jaGF0LWJ1YmJsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQgOiAgIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L3Zpc2l0b3JCZ0NvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0XHRjb2xvciA6ICAiKS5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L3Zpc2l0b3JUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdH0iKSxiKz0iLnRhd2stdmlzaXRvci1jaGF0LWJ1YmJsZSAudGF3ay10aW1lYWdvIHtcblx0XHRcdFx0Y29sb3IgOiAgIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L3Zpc2l0b3JUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdH0iKSxiKz0iLnRhd2stYWdlbnQtY2hhdC1idWJibGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kIDogICIuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9hZ2VudEJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGNvbG9yIDogICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvYWdlbnRUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdH0iKSxiKz0iLnRhd2stYWdlbnQtY2hhdC1idWJibGUgLnRhd2stdGltZWFnbyB7XG5cdFx0XHRcdGNvbG9yIDogICIuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9hZ2VudFR4dENvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0fSIpLGIrPSIudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZS1kb3RzIHtcblx0XHRcdFx0YmFja2dyb3VuZCA6ICAiLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvYWdlbnRCZ0NvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0fSIpLHRoaXMuJHN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL2lzSUUiXSYmdGhpcy4kc3RvcmUuZ2V0dGVyc1siYnJvd3NlckRhdGEvdmVyc2lvbiJdPD0xMSYmKGIrPSIudGF3ay1jdXN0b20tY29sb3ItaW52ZXJzZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlclR4dENvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdGNvbG9yOiAiKS5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlckJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRhd2stY3VzdG9tLWJvcmRlci1jb2xvciB7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAiKS5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlckJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRhd2stY3VzdG9tLWJvcmRlci1sZWZ0IHtcblx0XHRcdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyQmdDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQudGF3ay1jdXN0b20tY29sb3Ige1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyQmdDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0XHRjb2xvcjogIikuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9oZWFkZXJUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQudGF3ay1jdXN0b20tdGV4dC1jb2xvciB7XG5cdFx0XHRcdFx0Y29sb3I6ICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyQmdDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQudGF3ay1jdXN0b20tdGV4dC1jb2xvci1pbnZlcnNlIHtcblx0XHRcdFx0XHRjb2xvcjogIikuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9oZWFkZXJUeHRDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQudGF3ay1jdXN0b20taW1hZ2UgLnRhd2staW1hZ2Uge1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDI1MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC50YXdrLXRpbWVhZ28ge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogLjc1cmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC50YXdrLW1haW4tcGFuZWwgLnRhd2stY2hhdC1wYW5lbCB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC50YXdrLXRvb2x0aXAtaG92ZXIgIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5jYXJkLWNvbnRhaW5lcjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAiKS5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlckJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcblx0XHRcdFx0LnRhd2stZm9ybS13cmFwcGVyIC50YXdrLXRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC50YXdrLWhvbWUtbGlzdC1jaGF0LWNvbnRlbnQge1xuXHRcdFx0XHRcdC1tcy1mbGV4LWdyb3c6MTtcblx0XHRcdFx0XHQtbXMtZmxleDogMTtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0XHQudGF3ay1ob21lLWxpc3QtY2hhdC1jb250ZW50IC50YXdrLWN1c3RvbS1jaGF0LWxlZnQge1xuXHRcdFx0XHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA1MCU7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC50YXdrLWhvbWUtbGlzdC1jaGF0LWNvbnRlbnQgLnRhd2stY3VzdG9tLWNoYXQtcmlnaHQge1xuXHRcdFx0XHRcdGZsZXg6IDAgMCA0MCU7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA0MCU7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRhd2staG9tZS1saXN0LWNoYXQtY29udGVudCAudGF3ay1jdXN0b20tY2hhdC1yaWdodCAudGF3ay10aW1lYWdvIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0d29yZC13cmFwOiBicmVhay13b3JkO1xuXHRcdFx0XHRcdHdvcmQtYnJlYWs6IGFsbDtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0fSIpKSx0aGlzLiRzdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9pc0lFIl0mJnRoaXMuJHN0b3JlLmdldHRlcnNbImJyb3dzZXJEYXRhL3ZlcnNpb24iXTw9MTAmJihiKz0iXG5cdFx0XHRcdFx0LnRhd2stY3VzdG9tLWZsZXgtMSB7XG5cdFx0XHRcdFx0XHRmbGV4OiAwIDAgYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQudGF3ay1pbnB1dCwgLnRhd2stc2VsZWN0LCAudGF3ay10ZXh0YXJlYSwgLnRhd2stY2hhdGlucHV0LWVkaXRvciwgLnRhd2stZm9ybS1sYWJlbCB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IC44MTJyZW0gIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdCIpLHcuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYikpLHRoaXMuJFRhd2tKU0FQSS5sb2NhbF9BUEkuZGlzYWJsZVdpZGdldEZvbnR8fG4uYXBwZW5kQ2hpbGQobCksbi5hcHBlbmRDaGlsZChzKSxzLm9ubG9hZD1mdW5jdGlvbigpe2MuJG1vdW50KGkpfSxuLmFwcGVuZENoaWxkKHcpLHRoaXMuaUFwcD1jfSxyZUluamVjdENTU0dsb2JhbFZhcmlhYmxlczpmdW5jdGlvbigpe3ZhciB0PXRoaXMuJGVsLmNvbnRlbnREb2N1bWVudC5oZWFkLGU9dC5xdWVyeVNlbGVjdG9yKCIudGF3ay1nbG9iYWwtdmFyaWFibGVzIik7ZSYmZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGUpO3ZhciBvPSIxcmVtIixyPSIwIjtpZih0aGlzLiRzdG9yZS5nZXR0ZXJzWyJicm93c2VyRGF0YS9tb2JpbGVCcm93c2VyTmFtZSJdKXt2YXIgbixhPW51bGw9PT0obj10aGlzLiRUYXdrSlNBUEkpfHx2b2lkIDA9PT1ufHxudWxsPT09KG49bi5sb2NhbF9BUEkpfHx2b2lkIDA9PT1ufHxudWxsPT09KG49bi5jdXN0b21TdHlsZSl8fHZvaWQgMD09PW4/dm9pZCAwOm4udmlzaWJpbGl0eTthJiZhLm1vYmlsZSYmYS5tb2JpbGUubWF4aW1pemVkJiYoYS5tb2JpbGUubWF4aW1pemVkLnBhZGRpbmdUb3AmJihvPSIiLmNvbmNhdChhLm1vYmlsZS5tYXhpbWl6ZWQucGFkZGluZ1RvcCwicHgiKSksYS5tb2JpbGUubWF4aW1pemVkLnBhZGRpbmdCb3R0b20mJihyPSIiLmNvbmNhdChhLm1vYmlsZS5tYXhpbWl6ZWQucGFkZGluZ0JvdHRvbSwicHgiKSkpfXZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7aS50eXBlPSJ0ZXh0L2NzcyIsaS5jbGFzc0xpc3QuYWRkKCJ0YXdrLWdsb2JhbC12YXJpYWJsZXMiKTt2YXIgcz0iOnJvb3Qge1xuXHRcdFx0XHRcdC0tdGF3ay1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlckJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0LS10YXdrLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yLWFscGhhOiAiKS5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2hlYWRlckJnQ29sb3IiXSwiNTAgIWltcG9ydGFudDtcblx0XHRcdFx0XHQtLXRhd2staGVhZGVyLXRleHQtY29sb3I6ICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvaGVhZGVyVHh0Q29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0LS10YXdrLWhlYWRlci1vdmVycmlkZS1wYWRkaW5nLXRvcDogIikuY29uY2F0KG8sIiAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdC0tdGF3ay1mb290ZXItb3ZlcnJpZGUtcGFkZGluZy1ib3R0b206ICIpLmNvbmNhdChyLCIgIWltcG9ydGFudDtcblx0XHRcdFx0fSIpO3MrPSIudGF3ay12aXNpdG9yLWNoYXQtYnViYmxlIHtcblx0XHRcdFx0YmFja2dyb3VuZCA6ICAiLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvdmlzaXRvckJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGNvbG9yIDogICIpLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvdmlzaXRvclR4dENvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0fSIpLHMrPSIudGF3ay12aXNpdG9yLWNoYXQtYnViYmxlIC50YXdrLXRpbWVhZ28ge1xuXHRcdFx0XHRjb2xvciA6ICAiLmNvbmNhdCh0aGlzLiRzdG9yZS5nZXR0ZXJzWyJ3aWRnZXQvdmlzaXRvclR4dENvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0fSIpLHMrPSIudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQgOiAgIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2FnZW50QmdDb2xvciJdLCIgIWltcG9ydGFudDtcblx0XHRcdFx0Y29sb3IgOiAgIikuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9hZ2VudFR4dENvbG9yIl0sIiAhaW1wb3J0YW50O1xuXHRcdFx0fSIpLHMrPSIudGF3ay1hZ2VudC1jaGF0LWJ1YmJsZSAudGF3ay10aW1lYWdvIHtcblx0XHRcdFx0Y29sb3IgOiAgIi5jb25jYXQodGhpcy4kc3RvcmUuZ2V0dGVyc1sid2lkZ2V0L2FnZW50VHh0Q29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHR9Iikscys9Ii50YXdrLWFnZW50LWNoYXQtYnViYmxlLWRvdHMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kIDogICIuY29uY2F0KHRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9hZ2VudEJnQ29sb3IiXSwiICFpbXBvcnRhbnQ7XG5cdFx0XHR9IiksaS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzKSksdC5hcHBlbmRDaGlsZChpKX19fSksYz1vKCIyODc3IiksZD1PYmplY3QoYy5hKShsLHZvaWQgMCx2b2lkIDAsITEsbnVsbCxudWxsLG51bGwpO2UuYT1kLmV4cG9ydHN9fV0pOw=="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-SV56JW0DKX","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.818Z","timestamp":1785143153818,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/js?id=G-SV56JW0DKX HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nexpires: Mon, 27 Jul 2026 09:05:53 GMT\r\ncache-control: private, max-age=900\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 166374\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":488466,"size_decoded":166978,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (6033)","md5":"432e2b1b9ebbf5f37fd43852262111d1","sha1":"80da928076d4962f5e4b3f18535cc263731ae5c3","sha256":"0eea30e041104d4d559d90d197414520718728e83569cd90c3d87b98a15d754b","sha512":"44893cd2a1bc20cd913ed1bcff63d8c78134f8102bf17057f6fdbb46c7a5b12a41b7d2da26742ff7fa785d1584c7075f562ed9e736d25aad3809206d90ac5f7d","ssdeep":"6144:RHdEU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:JdB1WLP69VwqxVZOvg","tlshash":"2aa4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","first_seen":"2026-07-27T09:06:29.09711Z","last_seen":"2026-07-27T09:07:02.808961Z","times_seen":2,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMSIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiZ29vZ2xlLm5vIn0seyJmdW5jdGlvbiI6Il9fYyIsInZ0cF92YWx1ZSI6MH1dLAogICJ0YWdzIjpbeyJmdW5jdGlvbiI6Il9fb2d0XzFwX2RhdGFfdjIiLCJwcmlvcml0eSI6MTMsInZ0cF9pc0F1dG9FbmFibGVkIjp0cnVlLCJ2dHBfYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiOlsibGlzdCIsWyJtYXAiLCJleGNsdXNpb25TZWxlY3RvciIsIiJdXSwidnRwX2lzRW5hYmxlZCI6dHJ1ZSwidnRwX21hbnVhbEVtYWlsRW5hYmxlZCI6ZmFsc2UsInZ0cF9jaXR5VmFsdWUiOiIiLCJ2dHBfYXV0b0VtYWlsRW5hYmxlZCI6dHJ1ZSwidnRwX3Bvc3RhbENvZGVWYWx1ZSI6IiIsInZ0cF9sYXN0TmFtZVZhbHVlIjoiIiwidnRwX3Bob25lVmFsdWUiOiIiLCJ2dHBfYXV0b1Bob25lRW5hYmxlZCI6ZmFsc2UsInZ0cF9lbWFpbFZhbHVlIjoiIiwidnRwX2ZpcnN0TmFtZVZhbHVlIjoiIiwidnRwX3N0cmVldFZhbHVlIjoiIiwidnRwX2F1dG9BZGRyZXNzRW5hYmxlZCI6ZmFsc2UsInZ0cF9yZWdpb25WYWx1ZSI6IiIsInZ0cF9jb3VudHJ5VmFsdWUiOiIiLCJ2dHBfaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIjpmYWxzZSwidGFnX2lkIjo0fSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfZmlyc3QiLCJwcmlvcml0eSI6MTIsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjE4fSx7ImZ1bmN0aW9uIjoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIsInByaW9yaXR5IjoxMSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctU1Y1NkpXMERLWCIsInZ0cF9mb3JlaWduVGxkTWFjcm9SZXN1bHQiOlsibWFjcm8iLDFdLCJ2dHBfaXNDaGluYVZpcFJlZ2lvbk1hY3JvUmVzdWx0IjpbIm1hY3JvIiwyXSwidGFnX2lkIjoxN30seyJmdW5jdGlvbiI6Il9fY2NkX2dhX3JlZ3Njb3BlIiwicHJpb3JpdHkiOjEwLCJ2dHBfc2V0dGluZ3NUYWJsZSI6WyJsaXN0IixbIm1hcCIsInJlZGFjdEZpZWxkR3JvdXAiLCJERVZJQ0VfQU5EX0dFTyIsImRpc2FsbG93QWxsUmVnaW9ucyIsZmFsc2UsImRpc2FsbG93ZWRSZWdpb25zIiwiIl0sWyJtYXAiLCJyZWRhY3RGaWVsZEdyb3VwIiwiR09PR0xFX1NJR05BTFMiLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLHRydWUsImRpc2FsbG93ZWRSZWdpb25zIiwiIl1dLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1TVjU2SlcwREtYIiwidGFnX2lkIjoxNn0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX2Rvd25sb2FkIiwicHJpb3JpdHkiOjksInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1TVjU2SlcwREtYIiwidGFnX2lkIjoxNX0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX2Zvcm0iLCJwcmlvcml0eSI6OCwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjE0fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siLCJwcmlvcml0eSI6NywidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjEzfSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fcGFnZV92aWV3IiwicHJpb3JpdHkiOjYsInZ0cF9oaXN0b3J5RXZlbnRzIjp0cnVlLCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctU1Y1NkpXMERLWCIsInRhZ19pZCI6MTJ9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9zY3JvbGwiLCJwcmlvcml0eSI6NSwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjExfSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fc2l0ZV9zZWFyY2giLCJwcmlvcml0eSI6NCwidnRwX3NlYXJjaFF1ZXJ5UGFyYW1zIjoicSxzLHNlYXJjaCxxdWVyeSxrZXl3b3JkIiwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjEwfSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fdmlkZW8iLCJwcmlvcml0eSI6MywidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVNWNTZKVzBES1giLCJ0YWdfaWQiOjl9LHsiZnVuY3Rpb24iOiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciLCJwcmlvcml0eSI6MiwidnRwX2NvbnZlcnNpb25SdWxlcyI6WyJsaXN0IixbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcInB1cmNoYXNlXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il1dLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1TVjU2SlcwREtYIiwidGFnX2lkIjo4fSx7ImZ1bmN0aW9uIjoiX19jY2RfYXV0b19yZWRhY3QiLCJwcmlvcml0eSI6MSwidnRwX3JlZGFjdEVtYWlsIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1TVjU2SlcwREtYIiwidGFnX2lkIjo3fSx7ImZ1bmN0aW9uIjoiX19nY3QiLCJ2dHBfdHJhY2tpbmdJZCI6IkctU1Y1NkpXMERLWCIsInZ0cF9zZXNzaW9uRHVyYXRpb24iOjAsInRhZ19pZCI6MX0seyJmdW5jdGlvbiI6Il9fY2NkX2dhX2xhc3QiLCJwcmlvcml0eSI6MCwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctU1Y1NkpXMERLWCIsInRhZ19pZCI6Nn1dLAogICJwcmVkaWNhdGVzIjpbeyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmpzIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmluaXQifV0sCiAgInJ1bGVzIjpbW1siaWYiLDBdLFsiYWRkIiwxM11dLFtbImlmIiwxXSxbImFkZCIsMCwxNCwxMiwxMSwxMCw5LDgsNyw2LDUsNCwzLDIsMV1dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fYyIsWzQ2LCJhIl0sWzM2LFsxNyxbMTUsImEiXSwidmFsdWUiXV1dCiAsWzUwLCJfX2NjZF9hdXRvX3JlZGFjdCIsWzQ2LCJhIl0sWzUwLCJ2IixbNDYsImFGIl0sWzM2LFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJ1Il0sIlxcJDEiXV1dXSxbNTAsInciLFs0NiwiYUYiXSxbNTIsImFHIixbMzAsWyJjIixbMTUsImFGIl1dLFsxNSwiYUYiXV1dLFs1MiwiYUgiLFs3XV0sWzY1LCJhSSIsWzIsWzE1LCJhRyJdLCJzcGxpdCIsWzcsIiJdXSxbNDYsWzUzLFs1MiwiYUoiLFs3LFsidiIsWzE1LCJhSSJdXV1dLFs1MiwiYUsiLFsiZCIsWzE1LCJhSSJdXV0sWzIyLFsxMixbMTUsImFLIl0sWzQ1XV0sWzQ2LFs1MyxbMzYsWyJkIixbInYiLFsxNSwiYUYiXV1dXV1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbMTUsImFJIl1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbMTUsImFLIl1dXSxbMjIsWzIxLFsxNSwiYUkiXSxbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXSxbNDYsWzUzLFsyLFsxNSwiYUoiXSwicHVzaCIsWzcsWyJkIixbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXV1dXV0sWzQ2LFsyMixbMjEsWzE1LCJhSSJdLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbImQiLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dXV1dXV1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFKIl0sImxlbmd0aCJdLDFdLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMCxbMCwiKD86IixbMixbMTUsImFKIl0sImpvaW4iLFs3LCJ8Il1dXSwiKSJdXV1dXSxbNDYsWzUzLFsyLFsxNSwiYUgiXSwicHVzaCIsWzcsWzE2LFsxNSwiYUoiXSwwXV1dXV1dXV1dLFszNixbMixbMTUsImFIIl0sImpvaW4iLFs3LCIiXV1dXSxbNTAsIngiLFs0NiwiYUYiLCJhRyIsImFIIl0sWzUyLCJhSSIsWyJ6IixbMTUsImFGIl0sWzE1LCJhSCJdXV0sWzIyLFsyOCxbMTUsImFJIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjgsWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFs0MSwiYUoiXSxbMywiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNjUsImFLIixbMTUsImFHIl0sWzQ2LFs1MyxbNTIsImFMIixbNyxbInYiLFsxNSwiYUsiXV0sWyJ3IixbMTUsImFLIl1dXV0sWzY1LCJhTSIsWzE1LCJhTCJdLFs0NixbNTMsWzUyLCJhTiIsWzMwLFsxNixbMTUsInQiXSxbMTUsImFNIl1dLFs0MyxbMTUsInQiXSxbMTUsImFNIl0sWyJiIixbMCxbMCwiKFs/Jl0iLFsxNSwiYU0iXV0sIj0pKFteJl0qKSJdLCJnaSJdXV1dLFszLCJhSiIsWzIsWzE1LCJhSiJdLCJyZXBsYWNlIixbNyxbMTUsImFOIl0sWzAsIiQxIixbMTUsInIiXV1dXV1dXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjAsWzE2LFsxNSwiYUoiXSwwXSwiJiJdLFs0NixbMywiYUoiLFsyLFsxNSwiYUoiXSwic3Vic3RyaW5nIixbNywxXV1dXV0sWzIyLFsyMSxbMTYsWzE1LCJhSiJdLDBdLCI/Il0sWzQ2LFszLCJhSiIsWzAsIj8iLFsxNSwiYUoiXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sIj8iXSxbNDYsWzMsImFKIiwiIl1dXSxbNDMsWzE1LCJhSSJdLCJzZWFyY2giLFsxNSwiYUoiXV0sWzM2LFsiYUEiLFsxNSwiYUkiXSxbMTUsImFIIl1dXV0sWzUwLCJ6IixbNDYsImFGIiwiYUciXSxbMjIsWzIwLFsxNSwiYUciXSxbMTcsWzE1LCJzIl0sIlBBVEgiXV0sWzQ2LFs1MyxbMywiYUYiLFswLFsxNSwieSJdLFsxNSwiYUYiXV1dXV1dLFszNixbImYiLFsxNSwiYUYiXV1dXSxbNTAsImFBIixbNDYsImFGIiwiYUciXSxbNDEsImFIIl0sWzMsImFIIiwiIl0sWzIyLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJVUkwiXV0sWzQ2LFs1MyxbNDEsImFJIl0sWzMsImFJIiwiIl0sWzIyLFszMCxbMTcsWzE1LCJhRiJdLCJ1c2VybmFtZSJdLFsxNyxbMTUsImFGIl0sInBhc3N3b3JkIl1dLFs0NixbNTMsWzMsImFJIixbMCxbMTUsImFJIl0sWzAsWzAsWzAsWzE3LFsxNSwiYUYiXSwidXNlcm5hbWUiXSxbMzksWzE3LFsxNSwiYUYiXSwicGFzc3dvcmQiXSwiOiIsIiJdXSxbMTcsWzE1LCJhRiJdLCJwYXNzd29yZCJdXSwiQCJdXV1dXV0sWzMsImFIIixbMCxbMCxbMCxbMTcsWzE1LCJhRiJdLCJwcm90b2NvbCJdLCIvLyJdLFsxNSwiYUkiXV0sWzE3LFsxNSwiYUYiXSwiaG9zdCJdXV1dXV0sWzM2LFswLFswLFswLFsxNSwiYUgiXSxbMTcsWzE1LCJhRiJdLCJwYXRobmFtZSJdXSxbMTcsWzE1LCJhRiJdLCJzZWFyY2giXV0sWzE3LFsxNSwiYUYiXSwiaGFzaCJdXV1dLFs1MCwiYUIiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJuIl0sWzE1LCJyIl1dXV0sWzIyLFszMCxbMjAsWzE1LCJhRyJdLFsxNyxbMTUsInMiXSwiVVJMIl1dLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJQQVRIIl1dXSxbNDYsWzUzLFs1MiwiYUkiLFsieiIsWzE1LCJhSCJdLFsxNSwiYUciXV1dLFsyMixbMjAsWzE1LCJhSSJdLFs0NF1dLFs0NixbMzYsWzE1LCJhSCJdXV1dLFs1MiwiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNTIsImFLIixbMixbMTUsImFKIl0sInJlcGxhY2UiLFs3LFsxNSwibyJdLFsxNSwiciJdXV1dLFsyMixbMjAsWzE1LCJhSiJdLFsxNSwiYUsiXV0sWzQ2LFszNixbMTUsImFIIl1dXV0sWzQzLFsxNSwiYUkiXSwic2VhcmNoIixbMTUsImFLIl1dLFszLCJhSCIsWyJhQSIsWzE1LCJhSSJdLFsxNSwiYUciXV1dXV1dLFszNixbMTUsImFIIl1dXSxbNTAsImFDIixbNDYsImFGIl0sWzIyLFsyMCxbMTUsImFGIl0sWzE1LCJxIl1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiUEFUSCJdXV1dLFs0NixbMjIsWzIxLFsyLFsxNSwicCJdLCJpbmRleE9mIixbNyxbMTUsImFGIl1dXSxbMjcsMV1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiVVJMIl1dXV0sWzQ2LFs1MyxbMzYsWzE3LFsxNSwicyJdLCJURVhUIl1dXV1dXV1dLFs1MCwiYUQiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLGZhbHNlXSxbNTIsImFJIixbImUiLFsxNSwiYUYiXV1dLFszOCxbMTUsImFJIl0sWzQ2LCJzdHJpbmciLCJhcnJheSIsIm9iamVjdCJdLFs0NixbNSxbNDYsWzUyLCJhSiIsWyJhQiIsWzE1LCJhRiJdLFsxNSwiYUciXV1dLFsyMixbMjEsWzE1LCJhRiJdLFsxNSwiYUoiXV0sWzQ2LFs1MyxbMzYsWzE1LCJhSiJdXV1dXSxbNF1dXSxbNSxbNDYsWzUzLFs0MSwiYUsiXSxbMywiYUsiLDBdLFs2MyxbNywiYUsiXSxbMjMsWzE1LCJhSyJdLFsxNyxbMTUsImFGIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhSyJdLFszLCJhSyIsWzAsWzE1LCJhSyJdLDFdXV0sWzQ2LFs1MyxbNTIsImFMIixbImFEIixbMTYsWzE1LCJhRiJdLFsxNSwiYUsiXV0sWzE3LFsxNSwicyJdLCJURVhUIl1dXSxbMjIsWzIxLFsxNSwiYUwiXSxbNDRdXSxbNDYsWzUzLFs0MyxbMTUsImFGIl0sWzE1LCJhSyJdLFsxNSwiYUwiXV0sWzMsImFIIix0cnVlXV1dXV1dXV0sWzRdXV0sWzUsWzQ2LFs1NCwiYUsiLFsxNSwiYUYiXSxbNDYsWzUzLFs1MiwiYUwiLFsiYUQiLFsxNixbMTUsImFGIl0sWzE1LCJhSyJdXSxbMTcsWzE1LCJzIl0sIlRFWFQiXV1dLFsyMixbMjEsWzE1LCJhTCJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiYUYiXSxbMTUsImFLIl0sWzE1LCJhTCJdXSxbMywiYUgiLHRydWVdXV1dXV1dLFs0XV1dXV0sWzM2LFszOSxbMTUsImFIIl0sWzE1LCJhRiJdLFs0NF1dXV0sWzUwLCJhRSIsWzQ2LCJhRiIsImFHIl0sWzUyLCJhSCIsWzMwLFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQUMiXV1dLFs3XV1dLFsyMixbMjAsWzIsWzE1LCJhSCJdLCJpbmRleE9mIixbNyxbMTUsImFHIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMTUsImFHIl1dXV1dXSxbMixbMTUsImFGIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJoIl0sIkFDIl0sWzE1LCJhSCJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJlbmNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJyZWRhY3RFbWFpbCJdXSxbNTIsImwiLFsxNyxbMTUsImEiXSwicmVkYWN0UXVlcnlQYXJhbXMiXV0sWzUyLCJtIixbMzksWzE1LCJsIl0sWzIsWzE1LCJsIl0sInNwbGl0IixbNywiLCJdXSxbN11dXSxbMjIsWzEsWzI4LFsxNyxbMTUsIm0iXSwibGVuZ3RoIl1dLFsyOCxbMTUsImsiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwibiIsWyJiIiwiW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcXC5bQS1aXXsyLH0iLCJnaSJdXSxbNTIsIm8iLFsiYiIsWzAsIihbQS1aMC05Ll8tXXwlMjV8JTJCKSslNDBbQS1aMC05Li1dIiwiK1xcLltBLVpdezIsfSJdLCJnaSJdXSxbNTIsInAiLFs3LCJwYWdlX2xvY2F0aW9uIiwicGFnZV9yZWZlcnJlciIsInBhZ2VfcGF0aCIsImxpbmtfdXJsIiwidmlkZW9fdXJsIiwiZm9ybV9kZXN0aW5hdGlvbiJdXSxbNTIsInEiLCJwYWdlX3BhdGgiXSxbNTIsInIiLCIocmVkYWN0ZWQpIl0sWzUyLCJzIixbOCwiVEVYVCIsMCwiVVJMIiwxLCJQQVRIIiwyXV0sWzUyLCJ0IixbOF1dLFs1MiwidSIsWyJiIiwiKFtcXFxcXiQufD8qKygpe31dfFxcW3xcXFspIiwiZyJdXSxbNTIsInkiLCJodHRwOi8vLiJdLFsiZyIsWzE1LCJqIl0sWzUxLCIiLFs3LCJhRiJdLFsyMixbMTUsImsiXSxbNDYsWzUzLFs1MiwiYUciLFsyLFsxNSwiYUYiXSwiZ2V0SGl0S2V5cyIsWzddXV0sWzY1LCJhSCIsWzE1LCJhRyJdLFs0NixbNTMsWzIyLFsyMCxbMTUsImFIIl0sIl9zc3RfcGFyYW1ldGVycyJdLFs0NixbNl1dXSxbNTIsImFJIixbMixbMTUsImFGIl0sImdldEhpdERhdGEiLFs3LFsxNSwiYUgiXV1dXSxbMjIsWzI4LFsxNSwiYUkiXV0sWzQ2LFs2XV1dLFs1MiwiYUoiLFsiYUMiLFsxNSwiYUgiXV1dLFs1MiwiYUsiLFsiYUQiLFsxNSwiYUkiXSxbMTUsImFKIl1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbNDRdXSxbNDYsWzUzLFsyLFsxNSwiYUYiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJhSCJdLFsxNSwiYUsiXV1dLFsiYUUiLFsxNSwiYUYiXSxbMzksWzIsWzE1LCJhRiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJCTyJdXV0sWzE3LFsxNSwiaSJdLCJXIl0sWzE3LFsxNSwiaSJdLCJPIl1dXV1dXV1dXV1dXSxbMjIsWzE3LFsxNSwibSJdLCJsZW5ndGgiXSxbNDYsWzUzLFs2NSwiYUciLFsxNSwicCJdLFs0NixbNTMsWzUyLCJhSCIsWzIsWzE1LCJhRiJdLCJnZXRIaXREYXRhIixbNyxbMTUsImFHIl1dXV0sWzIyLFsyOCxbMTUsImFIIl1dLFs0NixbNl1dXSxbNTIsImFJIixbMzksWzIwLFsxNSwiYUciXSxbMTUsInEiXV0sWzE3LFsxNSwicyJdLCJQQVRIIl0sWzE3LFsxNSwicyJdLCJVUkwiXV1dLFs1MiwiYUoiLFsieCIsWzE1LCJhSCJdLFsxNSwibSJdLFsxNSwiYUkiXV1dLFsyMixbMjEsWzE1LCJhSiJdLFsxNSwiYUgiXV0sWzQ2LFs1MyxbMixbMTUsImFGIl0sInNldEhpdERhdGEiLFs3LFsxNSwiYUciXSxbMTUsImFKIl1dXSxbImFFIixbMTUsImFGIl0sWzM5LFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQk8iXV1dLFsxNyxbMTUsImkiXSwiWCJdLFsxNyxbMTUsImkiXSwiUCJdXV1dXV1dXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIixbNDYsImEiXSxbMjIsWzMwLFsyOCxbMTcsWzE1LCJhIl0sImNvbnZlcnNpb25SdWxlcyJdXSxbMjAsWzE3LFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlQcmVIaXQiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIiwiZmlyc3RfdmlzaXQiXSxbNTIsImciLCJzZXNzaW9uX3N0YXJ0Il0sWzQxLCJoIl0sWzQxLCJpIl0sWyJkIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFs1MSwiIixbNywiaiJdLFs1MiwiayIsWzgsInByZUhpdCIsWzE1LCJqIl1dXSxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiUCJdLHRydWVdXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVYiXSx0cnVlXV0sWzRdXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVoiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImgiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJmIl1dXSxbMywiaCIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImgiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkEiXSx0cnVlXV0sWzRdXV1dXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkwiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImkiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJnIl1dXSxbMywiaSIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImkiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQk0iXSx0cnVlXV0sWzRdXV1dXV1dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXQogLFs1MCwiX19jY2RfZW1fZG93bmxvYWQiLFs0NiwiYSJdLFs1MCwicSIsWzQ2LCJ2Il0sWzM2LFsxLFsxNSwidiJdLFsyMSxbMixbMixbMTUsInYiXSwidG9Mb3dlckNhc2UiLFs3XV0sIm1hdGNoIixbNyxbMTUsInAiXV1dLFs0NV1dXV1dLFs1MCwiciIsWzQ2LCJ2Il0sWzUyLCJ3IixbMixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl0sInNwbGl0IixbNywiLiJdXV0sWzUyLCJ4IixbMzksWzE4LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sMV0sWzE2LFsxNSwidyJdLFszNyxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdLDFdXSwiIl1dLFszNixbMTYsWzIsWzE1LCJ4Il0sInNwbGl0IixbNywiLyJdXSwwXV1dLFs1MCwicyIsWzQ2LCJ2Il0sWzM2LFszOSxbMTIsWzIsWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLCJzdWJzdHJpbmciLFs3LDAsMV1dLCIvIl0sWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLFswLCIvIixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl1dXV1dLFs1MCwidCIsWzQ2LCJ2Il0sWzQxLCJ3Il0sWzMsInciLCIiXSxbMjIsWzEsWzE1LCJ2Il0sWzE3LFsxNSwidiJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ4Il0sWzMsIngiLFsyLFsxNyxbMTUsInYiXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsInciLFszOSxbMjMsWzE1LCJ4Il0sMF0sWzE3LFsxNSwidiJdLCJocmVmIl0sWzIsWzE3LFsxNSwidiJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsIngiXV1dXV1dXV0sWzM2LFsxNSwidyJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbURvd25sb2FkQWN0aXZpdHkiXV0sWzUyLCJmIixbMTcsWzE1LCJkIl0sIkEiXV0sWzUyLCJnIiwiZmlsZV9kb3dubG9hZCJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibCJdLCJBIixbNywiZG93bmxvYWQiXV1dLFs1MiwicCIsWzAsIl4ocGRmfHhsc3g/fGRvY3g/fHR4dHxydGZ8Y3N2fGV4ZXxrZXl8cHAoc3x0fHR4KXw3enxwa2d8cmFyfGd6fHppcHxhdml8IiwibW92fG1wNHxtcGU/Z3x3bXZ8bWlkaT98bXAzfHdhdnx3bWEpJCJdXSxbNTIsInUiLFsiayIsWzgsImNoZWNrVmFsaWRhdGlvbiIsdHJ1ZV1dXSxbMjIsWzI4LFsxNSwidSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImMiXSwic2V0SXRlbSIsWzcsWzE1LCJoIl0sdHJ1ZV1dLFsiaiIsImd0bS5saW5rQ2xpY2siLFs1MSwiIixbNywidiIsInciXSxbInciXSxbNTIsIngiLFs4LCJldmVudElkIixbMTYsWzE1LCJ2Il0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbNTIsInkiLFsxNixbMTUsInYiXSwiZ3RtLmVsZW1lbnRVcmwiXV0sWzUyLCJ6IixbIm0iLFsxNSwieSJdXV0sWzIyLFsyOCxbMTUsInoiXV0sWzQ2LFszNl1dXSxbNTIsImFBIixbInIiLFsxNSwieiJdXV0sWzIyLFsyOCxbInEiLFsxNSwiYUEiXV1dLFs0NixbNTMsWzM2XV1dXSxbNTIsImFCIixbOCwibGlua19pZCIsWzE2LFsxNSwidiJdLCJndG0uZWxlbWVudElkIl0sImxpbmtfdXJsIixbInQiLFsxNSwieiJdXSwibGlua190ZXh0IixbMTYsWzE1LCJ2Il0sImd0bS5lbGVtZW50VGV4dCJdLCJmaWxlX25hbWUiLFsicyIsWzE1LCJ6Il1dLCJmaWxlX2V4dGVuc2lvbiIsWzE1LCJhQSJdXV0sWzIsWzE1LCJsIl0sIkIiLFs3LFsxNSwieCJdXV0sWyJuIixbMTUsIm8iXSxbMTUsImciXSxbMTUsImFCIl0sWzE1LCJ4Il1dXSxbMTUsInUiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX2Zvcm0iLFs0NiwiYSJdLFs1MCwieCIsWzQ2LCJhTCJdLFs1MiwiYU0iLFszMCxbMTYsWzE1LCJhTCJdLFsxNSwiciJdXSxbOF1dXSxbNDMsWzE1LCJhTSJdLCJldmVudF91c2FnZSIsWzcsWzE3LFsxNSwiZyJdLCJIIl1dXSxbNDMsWzE1LCJhTCJdLFsxNSwiciJdLFsxNSwiYU0iXV1dLFs1MCwieSIsWzQ2LCJhTCIsImFNIl0sWzUyLCJhTiIsWzMwLFsxNixbMTUsImFMIl0sWzE1LCJyIl1dLFs4XV1dLFsyMixbMTYsWzE1LCJhTSJdLCJndG0uZm9ybUNhbmNlbGVkIl0sWzQ2LFs1MyxbNDMsWzE1LCJhTiJdLFsxNyxbMTUsImkiXSwiQUoiXSx0cnVlXV1dXSxbMixbMTUsInUiXSwiQiIsWzcsWzE1LCJhTCJdLFsxNSwiYU4iXV1dXSxbNTAsInoiLFs0NiwiYUwiLCJhTSIsImFOIl0sWzUyLCJhTyIsWzIsWzE1LCJ3Il0sImZpbHRlciIsWzcsWzUxLCIiLFs3LCJhUSJdLFszNixbMjAsWzIsWzE1LCJhUSJdLCJpbmRleE9mIixbNywiQVctIl1dLDBdXV1dXV0sWzIyLFsxOCxbMTcsWzE1LCJhTyJdLCJsZW5ndGgiXSwwXSxbNDYsWzUzLFsidiIsWzE1LCJhTyJdLFsxNSwiYUwiXSxbMTUsImFNIl0sWzE1LCJhTiJdXV1dXSxbNTIsImFQIixbMixbMTUsInciXSwiZmlsdGVyIixbNyxbNTEsIiIsWzcsImFRIl0sWzM2LFsyMSxbMixbMTUsImFRIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFQIl0sImxlbmd0aCJdLDBdLFs0NixbNTMsWzQzLFsxNSwiYU4iXSwiZGVmZXJyYWJsZSIsdHJ1ZV0sWyJ2IixbMTUsImFQIl0sWzE1LCJhTCJdLFsxNSwiYU0iXSxbMTUsImFOIl1dXV1dXSxbNTAsImFLIixbNDZdLFs1MiwiYUwiLFsibSIsWyJsIiwwLDIuMTQ3NDgzNjQ3RTldXV0sWzQxLCJhTSJdLFszLCJhTSIsMF0sWzM2LFs1MSwiIixbNywiYU4iXSxbMjIsWzIwLFsxNSwiYU4iXSxbMTUsInMiXV0sWzQ2LFs1MyxbMywiYU0iLFsiayJdXSxbMzYsWzAsWyJtIixbMTUsImFNIl1dLFsxNSwiYUwiXV1dXV0sWzQ2LFsyMixbMjAsWzE1LCJhTiJdLFsxNSwibyJdXSxbNDYsWzUzLFsyMixbMjAsWzE1LCJhTSJdLDBdLFs0NixbNTMsWzM2LFswLFsibSIsWyJrIl1dLFsxNSwiYUwiXV1dXV1dLFs1MiwiYU8iLFsiayJdXSxbMjIsWzIzLFszNyxbMTUsImFPIl0sWzE1LCJhTSJdXSwyMDBdLFs0NixbNTMsWzUyLCJhUCIsWzE1LCJhTSJdXSxbMywiYU0iLDBdLFszNixbMCxbIm0iLFsxNSwiYVAiXV0sWzE1LCJhTCJdXV1dXV0sWzMsImFNIiwwXSxbMzYsWzAsWyJtIixbMTUsImFPIl1dLFsxNSwiYUwiXV1dXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jY2RFbUZvcm1BY3Rpdml0eSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2dvbGRFdmVudFVzYWdlSWQiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJnZXRUaW1lc3RhbXBNaWxsaXMiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJnZW5lcmF0ZVJhbmRvbSJdXSxbNTIsIm0iLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJuIixbMTcsWzE1LCJoIl0sIkIiXV0sWzUyLCJvIiwiZm9ybV9zdWJtaXQiXSxbNTIsInAiLCJmb3JtX3N0YXJ0Il0sWzUyLCJxIiwiaXNSZWdpc3RlcmVkIl0sWzUyLCJyIiwiZXZlbnRNZXRhZGF0YSJdLFs1MiwicyIsImNsaWNrIl0sWzUyLCJ0IixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbMjIsWyJkIixbMTUsInQiXSxbMTUsIm4iXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsxNSwiYSJdLCJza2lwVmFsaWRhdGlvbiJdLFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIyLFsyLFsxNSwiZiJdLCJnZXRJdGVtIixbNyxbMTUsInEiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNyxbMTUsInEiXSx0cnVlXV0sWzUyLCJ1IixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJ2IixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwidyIsWzIsWzE1LCJ1Il0sIkEiLFs3LCJmb3JtIl1dXSxbNTIsImFBIixbOF1dLFs1MiwiYUIiLFs1MSwiIixbNywiYUwiLCJhTSJdLFsyMixbMTUsImFNIl0sWzQ2LFsiYU0iXV1dLFs1MiwiYU4iLFsxNixbMTUsImFMIl0sImd0bS5lbGVtZW50SWQiXV0sWzIyLFsxNixbMTUsImFBIl0sWzE1LCJhTiJdXSxbNDYsWzM2XV1dLFs0MyxbMTUsImFBIl0sWzE1LCJhTiJdLHRydWVdLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTUsImFOIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZpcnN0X2ZpZWxkX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl0sImZpcnN0X2ZpZWxkX25hbWUiLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkTmFtZSJdLCJmaXJzdF9maWVsZF90eXBlIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZFR5cGUiXSwiZmlyc3RfZmllbGRfcG9zaXRpb24iLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXV1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdGFydCJdLFsieiIsWzE1LCJwIl0sWzE1LCJhTyJdLFsxNSwiYVAiXV1dXSxbNTIsImFDIixbImFLIl1dLFs1MiwiYUQiLFs1MSwiIixbNywiYUwiLCJhTSJdLFs1MiwiYU4iLFsiYUMiLFsxNSwibyJdXV0sWyJhQiIsWzE1LCJhTCJdLFs0NF1dLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudElkIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZvcm1fc3VibWl0X3RleHQiLFsxNixbMTUsImFMIl0sImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXV1dLFs0MyxbMTUsImFPIl0sImV2ZW50X2NhbGxiYWNrIixbMTUsImFNIl1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdWJtaXQiXSxbNDMsWzE2LFsxNSwiYVAiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJTIl0sWzE1LCJhTiJdXSxbInoiLFsxNSwibyJdLFsxNSwiYU8iXSxbMTUsImFQIl1dXV0sWzUyLCJhRSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuYWRkRGF0YUxheWVyRXZlbnRMaXN0ZW5lciJdXSxbNTIsImFGIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiXV0sWzUyLCJhRyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtSW50ZXJhY3Rpb24iXV0sWzUyLCJhSCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayJdXSxbNTIsImFJIixbImFHIl1dLFsyMixbMjgsWzE1LCJhSSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbImFFIiwiZ3RtLmZvcm1JbnRlcmFjdCIsWzE1LCJhQiJdLFsxNSwiYUkiXV0sWzUyLCJhSiIsWyJhRiIsWzgsImNoZWNrVmFsaWRhdGlvbiIsZmFsc2UsIndhaXRGb3JUYWdzIixmYWxzZV1dXSxbMjIsWzI4LFsxNSwiYUoiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWyJhRSIsImd0bS5mb3JtU3VibWl0IixbMTUsImFEIl0sWzE1LCJhSiJdXSxbMjIsWyJlIixbMTcsWzE1LCJiIl0sIkNQIl1dLFs0NixbNTMsWzUyLCJhTCIsWyJhSCIsWzgsInVzZVYyRXZlbnROYW1lIix0cnVlLCJjc3NTZWxlY3RvciIsWzAsWzAsWzAsWzAsWzAsWzAsWzAsImZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sICIsImZvcm0gYnV0dG9uOm5vdChbdHlwZV0pLCJdLCJmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sICJdLCJmb3JtIGlucHV0W3R5cGU9XCJpbWFnZVwiXSwgIl0sImJ1dHRvbltmb3JtXVt0eXBlPVwic3VibWl0XCJdLCAiXSwiYnV0dG9uW2Zvcm1dOm5vdChbdHlwZV0pLCAiXSwiaW5wdXRbdHlwZT1cInN1Ym1pdFwiXVtmb3JtXSwgIl0sImlucHV0W3R5cGU9XCJpbWFnZVwiXVtmb3JtXSJdXV1dLFs1MCwiYU0iLFs0NiwiYU4iLCJhTyJdLFs1MiwiYVAiLFs4LCJldmVudF9jYWxsYmFjayIsWzE1LCJhTyJdXV0sWzUyLCJhUSIsWzgsImV2ZW50SWQiLFsxNixbMTUsImFOIl0sImd0bS51bmlxdWVFdmVudElkIl1dXSxbIngiLFsxNSwiYVEiXV0sWyJ5IixbMTUsImFRIl0sWzE1LCJhTiJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBUiJdLFsxNyxbMTUsImoiXSwiSyJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBQSJdLCJjbGljayJdLFs0MyxbMTYsWzE1LCJhUSJdLFsxNSwiciJdXSxbMTcsWzE1LCJpIl0sIlMiXSxbImFDIixbMTUsInMiXV1dLFsieiIsWzE1LCJvIl0sWzE1LCJhUCJdLFsxNSwiYVEiXV1dLFsiYUUiLCJndG0uY2xpY2stdjIiLFsxNSwiYU0iXSxbMTUsImFMIl1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsWzQ2LCJhIl0sWzUwLCJyIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLCIiXSxbMjIsWzEsWzE1LCJ3Il0sWzE3LFsxNSwidyJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ5Il0sWzMsInkiLFsyLFsxNyxbMTUsInciXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsIngiLFszOSxbMjMsWzE1LCJ5Il0sMF0sWzE3LFsxNSwidyJdLCJocmVmIl0sWzIsWzE3LFsxNSwidyJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsInkiXV1dXV1dXV0sWzM2LFsxNSwieCJdXV0sWzUwLCJzIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXV0sWzUyLCJ5IixbMixbMTUsIngiXSwibWF0Y2giLFs3LCJed3d3XFxkKlxcLiJdXV0sWzIyLFsxLFsxNSwieSJdLFsxNixbMTUsInkiXSwwXV0sWzQ2LFszLCJ4IixbMixbMTUsIngiXSwic3Vic3RyaW5nIixbNyxbMTcsWzE2LFsxNSwieSJdLDBdLCJsZW5ndGgiXV1dXV1dLFszNixbMTUsIngiXV1dLFs1MCwidCIsWzQ2LCJ3Il0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbNTIsIngiLFsyLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXSwidG9Mb3dlckNhc2UiLFs3XV1dLFsyMixbMjgsWzE1LCJ4Il1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNDEsInkiXSxbMywieSIsWzIsWyJzIixbIm8iLFsibiJdXV0sInRvTG93ZXJDYXNlIixbN11dXSxbNDEsInoiXSxbMywieiIsWzM3LFsxNyxbMTUsIngiXSwibGVuZ3RoIl0sWzE3LFsxNSwieSJdLCJsZW5ndGgiXV1dLFsyMixbMSxbMTgsWzE1LCJ6Il0sMF0sWzI5LFsyLFsxNSwieSJdLCJjaGFyQXQiLFs3LDBdXSwiLiJdXSxbNDYsWzUzLFszMixbMTUsInoiXSxbMywieiIsWzM3LFsxNSwieiJdLDFdXV0sWzMsInkiLFswLCIuIixbMTUsInkiXV1dXV1dLFsyMixbMSxbMTksWzE1LCJ6Il0sMF0sWzEyLFsyLFsxNSwieCJdLCJpbmRleE9mIixbNyxbMTUsInkiXSxbMTUsInoiXV1dLFsxNSwieiJdXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFszNix0cnVlXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbU91dGJvdW5kQ2xpY2tBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRCJdXSxbNTIsImciLCJjbGljayJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsIm4iLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsIm8iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwicCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsInEiLFsyLFsxNSwibCJdLCJBIixbNywib3V0Ym91bmRfY2xpY2siXV1dLFs1MiwidSIsWyJtIixbMTUsImkiXSwiY3Jvc3NfZG9tYWluX2NvbmRpdGlvbnMiXV0sWzUyLCJ2IixbImsiLFs4LCJhZmZpbGlhdGVEb21haW5zIixbMTUsInUiXSwiY2hlY2tWYWxpZGF0aW9uIix0cnVlLCJ3YWl0Rm9yVGFncyIsZmFsc2VdXV0sWzIyLFsyOCxbMTUsInYiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sInNldEl0ZW0iLFs3LFsxNSwiaCJdLHRydWVdXSxbImoiLCJndG0ubGlua0NsaWNrIixbNTEsIiIsWzcsInciLCJ4Il0sWzUyLCJ5IixbIm8iLFsxNixbMTUsInciXSwiZ3RtLmVsZW1lbnRVcmwiXV1dLFsyMixbMjgsWyJ0IixbMTUsInkiXV1dLFs0NixbNTMsWyJ4Il0sWzM2XV1dXSxbNTIsInoiLFs4LCJsaW5rX2lkIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50SWQiXSwibGlua19jbGFzc2VzIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50Q2xhc3NlcyJdLCJsaW5rX3VybCIsWyJyIixbMTUsInkiXV0sImxpbmtfZG9tYWluIixbInMiLFsxNSwieSJdXSwib3V0Ym91bmQiLHRydWVdXSxbNDMsWzE1LCJ6Il0sImV2ZW50X2NhbGxiYWNrIixbMTUsIngiXV0sWzUyLCJhQSIsWzgsImV2ZW50SWQiLFsxNixbMTUsInciXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXSwiZGVmZXJyYWJsZSIsdHJ1ZV1dLFsyLFsxNSwibCJdLCJCIixbNyxbMTUsImFBIl1dXSxbInAiLFsxNSwicSJdLFsxNSwiZyJdLFsxNSwieiJdLFsxNSwiYUEiXV1dLFsxNSwidiJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZW1fcGFnZV92aWV3IixbNDYsImEiXSxbMjIsWzI4LFsxNyxbMTUsImEiXSwiaGlzdG9yeUV2ZW50cyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImQiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1QYWdlVmlld0FjdGl2aXR5Il1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImciLFsxNyxbMTUsImYiXSwiQyJdXSxbNTIsImgiLCJwYWdlX3ZpZXciXSxbNTIsImkiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaiJdLFsxNSwiZyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJqIl1dXSxbMjIsWzIsWzE1LCJkIl0sImdldEl0ZW0iLFs3LFsxNSwiaSJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25IaXN0b3J5Q2hhbmdlIl1dLFs1MiwibSIsWzE1LCJfX21vZHVsZV9lbmhhbmNlZE1lYXN1cmVtZW50Il1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibSJdLCJBIixbNywicGFnZV92aWV3Il1dXSxbNTIsInAiLFs4LCJpbnRlcnZhbCIsMTAwMCwidXNlVjJFdmVudE5hbWUiLHRydWVdXSxbNTIsInEiLFsibCIsWzE1LCJwIl1dXSxbMjIsWzI4LFsxNSwicSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImQiXSwic2V0SXRlbSIsWzcsWzE1LCJpIl0sdHJ1ZV1dLFsiayIsImd0bS5oaXN0b3J5Q2hhbmdlLXYyIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS5vbGRVcmwiXV0sWzIyLFsyMCxbMTYsWzE1LCJyIl0sImd0bS5uZXdVcmwiXSxbMTUsInQiXV0sWzQ2LFszNl1dXSxbNTIsInUiLFsxNixbMTUsInIiXSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiXV0sWzIyLFsxLFsxLFsyMSxbMTUsInUiXSwicHVzaFN0YXRlIl0sWzIxLFsxNSwidSJdLCJwb3BzdGF0ZSJdXSxbMjEsWzE1LCJ1Il0sInJlcGxhY2VTdGF0ZSJdXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJ2IixbOF1dLFsyMixbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwicGFnZV9sb2NhdGlvbiIsWzE2LFsxNSwiciJdLCJndG0ubmV3VXJsIl1dLFs0MyxbMTUsInYiXSwicGFnZV9yZWZlcnJlciIsWzE1LCJ0Il1dXV1dLFs1MiwidyIsWzgsImV2ZW50SWQiLFsxNixbMTUsInIiXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJkZWZlclBhZ2VWaWV3Il0sZmFsc2VdLFs0NixbNTMsWzQzLFsxNSwidyJdLCJkZWZlcnJhYmxlIix0cnVlXV1dXSxbMixbMTUsIm0iXSwiQiIsWzcsWzE1LCJ3Il1dXSxbIm4iLFsxNSwibyJdLFsxNSwiaCJdLFsxNSwidiJdLFsxNSwidyJdXV0sWzE1LCJxIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zY3JvbGwiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwidGVtcGxhdGVTdG9yYWdlIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1TY3JvbGxBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbNTIsImgiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImkiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJpIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaCJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25TY3JvbGwiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwibiIsWzIsWzE1LCJsIl0sIkEiLFs3LCJzY3JvbGwiXV1dLFs1MiwibyIsWyJrIixbOCwidmVydGljYWxUaHJlc2hvbGRVbml0cyIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbFRocmVzaG9sZHMiLDkwXV1dLFsyMixbMjgsWzE1LCJvIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImgiXSx0cnVlXV0sWyJqIiwiZ3RtLnNjcm9sbERlcHRoIixbNTEsIiIsWzcsInAiLCJxIl0sWyJxIl0sWzUyLCJyIixbOCwiZXZlbnRJZCIsWzE2LFsxNSwicCJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzUyLCJzIixbOCwicGVyY2VudF9zY3JvbGxlZCIsWzE2LFsxNSwicCJdLCJndG0uc2Nyb2xsVGhyZXNob2xkIl1dXSxbMixbMTUsImwiXSwiQiIsWzcsWzE1LCJyIl1dXSxbIm0iLFsxNSwibiJdLFsxNSwiZyJdLFsxNSwicyJdLFsxNSwiciJdXV0sWzE1LCJvIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJnZXRRdWVyeVBhcmFtZXRlcnMiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiZ2V0Q29udGFpbmVyVmVyc2lvbiJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImgiLFsxNSwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiXV0sWzUyLCJpIixbMixbMTUsImgiXSwiQSIsWzcsWzE3LFsxNSwiYSJdLCJzZWFyY2hRdWVyeVBhcmFtcyJdLFsxNSwiYiJdXV1dLFs1MiwiaiIsWzMwLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsiZCJdLCJjb250YWluZXJJZCJdXV0sWzUyLCJrIixbOCwiZGVmZXJyYWJsZSIsdHJ1ZSwiZXZlbnRJZCIsWzE3LFsxNSwiYSJdLCJndG1FdmVudElkIl0sImV2ZW50TWV0YWRhdGEiLFs4LCJlbV9ldmVudCIsdHJ1ZV1dXSxbMjIsWzE1LCJpIl0sWzQ2LFs1MyxbNTIsImwiLFszOSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIsWzE1LCJoIl0sIkIiLFs3LFsxNSwiaSJdLFsxNyxbMTUsImEiXSwiYWRkaXRpb25hbFF1ZXJ5UGFyYW1zIl0sWzE1LCJiIl1dXSxbOF1dXSxbNDMsWzE3LFsxNSwiayJdLCJldmVudE1ldGFkYXRhIl0sWzE3LFsxNSwiZyJdLCJaIl0sImEiXSxbImMiLFsxNSwiaiJdLCJ2aWV3X3NlYXJjaF9yZXN1bHRzIixbMTUsImwiXSxbMTUsImsiXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3ZpZGVvIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2NjZEVtVmlkZW9BY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRiJdXSxbNTIsImciLCJ2aWRlb19zdGFydCJdLFs1MiwiaCIsInZpZGVvX3Byb2dyZXNzIl0sWzUyLCJpIiwidmlkZW9fY29tcGxldGUiXSxbNTIsImoiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImsiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJrIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaiJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJsIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Zb3VUdWJlQWN0aXZpdHkiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJvIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwicCIsWzIsWzE1LCJuIl0sIkEiLFs3LCJ2aWRlbyJdXV0sWzUyLCJxIixbIm0iLFs4LCJjYXB0dXJlQ29tcGxldGUiLHRydWUsImNhcHR1cmVTdGFydCIsdHJ1ZSwicHJvZ3Jlc3NUaHJlc2hvbGRzUGVyY2VudCIsWzcsMTAsMjUsNTAsNzVdXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImoiXSx0cnVlXV0sWyJsIiwiZ3RtLnZpZGVvIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS52aWRlb1N0YXR1cyJdXSxbNDEsInUiXSxbMjIsWzIwLFsxNSwidCJdLCJzdGFydCJdLFs0NixbNTMsWzMsInUiLFsxNSwiZyJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJwcm9ncmVzcyJdLFs0NixbNTMsWzMsInUiLFsxNSwiaCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJjb21wbGV0ZSJdLFs0NixbNTMsWzMsInUiLFsxNSwiaSJdXV1dLFs0NixbNTMsWzM2XV1dXV1dXV0sWzUyLCJ2IixbOCwidmlkZW9fY3VycmVudF90aW1lIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0N1cnJlbnRUaW1lIl0sInZpZGVvX2R1cmF0aW9uIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0R1cmF0aW9uIl0sInZpZGVvX3BlcmNlbnQiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvUGVyY2VudCJdLCJ2aWRlb19wcm92aWRlciIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9Qcm92aWRlciJdLCJ2aWRlb190aXRsZSIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9UaXRsZSJdLCJ2aWRlb191cmwiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVXJsIl0sInZpc2libGUiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVmlzaWJsZSJdXV0sWzUyLCJ3IixbOCwiZXZlbnRJZCIsWzE2LFsxNSwiciJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzIsWzE1LCJuIl0sIkIiLFs3LFsxNSwidyJdXV0sWyJvIixbMTUsInAiXSxbMTUsInUiXSxbMTUsInYiXSxbMTUsInciXV1dLFsxNSwicSJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfZmlyc3QiLFs0NiwiYSJdLFs1MCwiZSIsWzQ2LCJmIl0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNSwiZiJdXV0sWzIsWzE1LCJkIl0sIkEiLFs3LFsxNSwiZiJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyJdXSxbImIiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzUxLCIiLFs3LCJmIl0sWyJlIixbMTUsImYiXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfbGFzdCIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2dhX3JlZ3Njb3BlIixbNDYsImEiXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyJdXSxbNTIsImMiLFsyLFsxNSwiYiJdLCJCIixbNyxbMTUsImEiXV1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJhIl0sWzE1LCJjIl1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19lIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImludGVybmFsLmdldEV2ZW50RGF0YSJdXSxbIiQwIiwiZXZlbnQiXV1dXQogLFs1MCwiX19nY3QiLFs0NiwiYSJdLFs1MCwiZyIsWzQ2LCJtIl0sWzUyLCJuIixbN11dLFs2NSwibyIsWzE1LCJtIl0sWzQ2LFs1MyxbNTIsInAiLFsiYiIsWzE1LCJvIl1dXSxbMjIsWzIxLFsxNSwicCJdLFs0NV1dLFs0NixbMixbMTUsIm4iXSwicHVzaCIsWzcsWzE1LCJwIl1dXV1dXV1dLFszNixbMTUsIm4iXV1dLFs1MCwiaCIsWzQ2LCJtIl0sWzUyLCJuIixbMTcsWzE1LCJtIl0sImxpbmtlciJdXSxbMjIsWzEsWzE1LCJuIl0sWzE2LFsxNSwibiJdLCJkb21haW5zIl1dLFs0NixbNTMsWzQzLFsxNSwibiJdLCJkb21haW5zIixbImciLFsxNixbMTUsIm4iXSwiZG9tYWlucyJdXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJpIixbNDYsIm0iXSxbNTIsIm4iLFsxNyxbMTUsIm0iXSwicmVmZXJyYWxFeGNsdXNpb25EZWZpbml0aW9uIl1dLFsyMixbMSxbMTUsIm4iXSxbMTYsWzE1LCJuIl0sImluY2x1ZGVfY29uZGl0aW9ucyJdXSxbNDYsWzUzLFs0MyxbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIixbImciLFsxNixbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIl1dXV1dXSxbMzYsWzE1LCJuIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNyZWF0ZVJlZ2V4Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiJdXSxbNTIsImYiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImoiLFszMCxbMixbMTUsImYiXSwiZ2V0SXRlbSIsWzcsInJlZ2V4Il1dLFsiYiIsIlsuKitcXC0/XiR7fSgpfFtcXF1cXFxcXSIsImciXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNywicmVnZXgiLFsxNSwiaiJdXV0sWzUyLCJrIixbOF1dLFs1MiwibCIsWzE3LFsxNSwiYSJdLCJzZXNzaW9uRHVyYXRpb24iXV0sWzIyLFsxOCxbMTUsImwiXSwwXSxbNDYsWzUzLFs0MyxbMTUsImsiXSwic2Vzc2lvbl9kdXJhdGlvbiIsWzE1LCJsIl1dXV1dLFs0MyxbMTUsImsiXSwiZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5ncyJdXSxbNDMsWzE1LCJrIl0sImR5bmFtaWNfZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZHluYW1pY0V2ZW50U2V0dGluZ3MiXV0sWzQzLFsxNSwiayJdLCJnb29nbGVfc2lnbmFscyIsWzIwLFsxNyxbMTUsImEiXSwiZ29vZ2xlU2lnbmFscyJdLDFdXSxbNDMsWzE1LCJrIl0sImdvb2dsZV90bGQiLFsxNyxbMTUsImEiXSwiZm9yZWlnblRsZCJdXSxbNDMsWzE1LCJrIl0sImdhX3Jlc3RyaWN0X2RvbWFpbiIsWzIwLFsxNyxbMTUsImEiXSwicmVzdHJpY3REb21haW4iXSwxXV0sWzQzLFsxNSwiayJdLCJpbnRlcm5hbF90cmFmZmljX3Jlc3VsdHMiLFsxNyxbMTUsImEiXSwiaW50ZXJuYWxUcmFmZmljUmVzdWx0cyJdXSxbNDMsWzE1LCJrIl0sImxpbmtlciIsWyJoIixbMTUsImEiXV1dLFs0MyxbMTUsImsiXSwicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLFsiaSIsWzE1LCJhIl1dXSxbImQiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdLFsxNSwiayJdXSxbImUiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfMXBfZGF0YV92MiIsWzQ2LCJhIl0sWzUwLCJwIixbNDYsInIiLCJzIiwidCIsInUiXSxbMjIsWzIwLFsxNixbMTUsInMiXSwidHlwZSJdLFsxNSwidCJdXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJyIl1dLFs0NixbNTMsWzMsInIiLFs4XV1dXV0sWzIyLFsyOCxbMTYsWzE1LCJyIl0sWzE1LCJ0Il1dXSxbNDYsWzUzLFs0MyxbMTUsInIiXSxbMTUsInQiXSxbMTYsWzE1LCJzIl0sInVzZXJEYXRhIl1dLFs1MiwidiIsWzgsIm1vZGUiLCJhIl1dLFsyMixbMTYsWzE1LCJzIl0sInRhZ05hbWUiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwibG9jYXRpb24iLFsxNixbMTUsInMiXSwidGFnTmFtZSJdXV1dXSxbMjIsWzE2LFsxNSwicyJdLCJxdWVyeVNlbGVjdG9yIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInNlbGVjdG9yIixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXV1dXV0sWzQzLFsxNSwidSJdLFsxNSwidCJdLFsxNSwidiJdXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsInEiLFs0NiwiciIsInMiLCJ0Il0sWzIyLFsyOCxbMTYsWzE1LCJhIl0sWzE1LCJ0Il1dXSxbNDYsWzM2XV1dLFs0MyxbMTUsInIiXSxbMTUsInMiXSxbOCwidmFsdWUiLFsxNixbMTUsImEiXSxbMTUsInQiXV1dXV0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImlzRW5hYmxlZCJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsiYyIsWzE3LFsxNSwiZSJdLCJBVCJdXV0sWzUyLCJuIixbMzAsWyJmIl0sWzddXV0sWzUyLCJvIixbOCwiZW5hYmxlX2NvZGUiLHRydWVdXSxbMjIsWzE3LFsxNSwiYSJdLCJpc0F1dG9FbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs3XV0sWzIyLFsxLFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzQ2LFs1MyxbNTMsWzQxLCJ1Il0sWzMsInUiLDBdLFs2MyxbNywidSJdLFsyMyxbMTUsInUiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidSJdLFszLCJ1IixbMCxbMTUsInUiXSwxXV1dLFs0NixbNTMsWzUyLCJ2IixbMTcsWzE2LFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTUsInUiXV0sImV4Y2x1c2lvblNlbGVjdG9yIl1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwiciJdLCJwdXNoIixbNyxbMTUsInYiXV1dXV1dXV1dXV1dXSxbNTIsInMiLFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl1dLFs1MiwidCIsWzM5LFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl0sWzE3LFsxNSwiYSJdLCJhdXRvRW1haWxFbmFibGVkIl0sdHJ1ZV1dLFs0MyxbMTUsIm8iXSwiYXV0b19kZXRlY3QiLFs4LCJlbWFpbCIsWzE1LCJ0Il0sInBob25lIixbMSxbMTUsInMiXSxbMTcsWzE1LCJhIl0sImF1dG9QaG9uZUVuYWJsZWQiXV0sImFkZHJlc3MiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b0FkZHJlc3NFbmFibGVkIl1dLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIixbMTUsInIiXV1dXV1dLFsyMixbMTcsWzE1LCJhIl0sImlzTWFudWFsRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJyIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEVtYWlsRW5hYmxlZCJdLFs0NixbNTMsWyJxIixbMTUsInIiXSwiZW1haWwiLCJlbWFpbFZhbHVlIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsUGhvbmVFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJwaG9uZSIsInBob25lVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxBZGRyZXNzRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJzIixbOF1dLFsicSIsWzE1LCJzIl0sImZpcnN0X25hbWUiLCJmaXJzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImxhc3RfbmFtZSIsImxhc3ROYW1lVmFsdWUiXSxbInEiLFsxNSwicyJdLCJzdHJlZXQiLCJzdHJlZXRWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNpdHkiLCJjaXR5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJyZWdpb24iLCJyZWdpb25WYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNvdW50cnkiLCJjb3VudHJ5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJwb3N0YWxfY29kZSIsInBvc3RhbENvZGVWYWx1ZSJdLFs0MyxbMTUsInIiXSwibmFtZV9hbmRfYWRkcmVzcyIsWzcsWzE1LCJzIl1dXV1dXSxbNDMsWzE1LCJvIl0sInNlbGVjdG9ycyIsWzE1LCJyIl1dXV1dLFs2NSwiciIsWzE1LCJuIl0sWzQ2LFs1MyxbImkiLFsxNSwiciJdLCJ1c2VyX2RhdGFfc2V0dGluZ3MiLFsxNSwibyJdXSxbNTIsInMiLFsxNixbMTUsIm8iXSwiYXV0b19kZXRlY3QiXV0sWzIyLFsyOCxbMTUsInMiXV0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJ0IixbNTEsIiIsWzcsInUiXSxbNTIsInYiLFsyLFsxNSwidSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWCJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFszNixbMTUsInYiXV1dXV0sWzUyLCJ3IixbImMiLFsxNyxbMTUsImUiXSwiQlYiXV1dLFs1MiwieCIsWyJjIixbMTcsWzE1LCJlIl0sIkNJIl1dXSxbNDEsInkiXSxbMjIsWyJoIiwiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iXSxbNDYsWzUzLFszLCJ5IixbImciLFs4LCJleGNsdWRlRWxlbWVudFNlbGVjdG9ycyIsWzE2LFsxNSwicyJdLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIl0sImZpZWxkRmlsdGVycyIsWzgsImVtYWlsIixbMTYsWzE1LCJzIl0sImVtYWlsIl0sInBob25lIixbMTYsWzE1LCJzIl0sInBob25lIl0sImFkZHJlc3MiLFsxNixbMTUsInMiXSwiYWRkcmVzcyJdXSwiaW5jbHVkZVNlbGVjdG9yIixbMTUsInciXSwicmVhZEZyb21EYXRhTGF5ZXIiLFsxNSwieCJdXV1dXV1dLFs1MiwieiIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLCJlbGVtZW50cyJdXV0sWzUyLCJhQSIsWzhdXSxbNTIsImFCIixbOF1dLFsyMixbMSxbMTUsInoiXSxbMTgsWzE3LFsxNSwieiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNDEsImFDIl0sWzQxLCJhRCJdLFszLCJhRCIsWzhdXSxbNTMsWzQxLCJhRSJdLFszLCJhRSIsMF0sWzYzLFs3LCJhRSJdLFsyMyxbMTUsImFFIl0sWzE3LFsxNSwieiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYUUiXSxbMywiYUUiLFswLFsxNSwiYUUiXSwxXV1dLFs0NixbNTMsWzUyLCJhRiIsWzE2LFsxNSwieiJdLFsxNSwiYUUiXV1dLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwiZW1haWwiLFsxNSwiYUIiXV0sWzIyLFsiYyIsWzE3LFsxNSwiZSJdLCJCTyJdXSxbNDYsWzUzLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwicGhvbmVfbnVtYmVyIixbMTUsImFCIl1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJmaXJzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwibGFzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwiY291bnRyeSIsWzE1LCJhRCJdXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sInBvc3RhbF9jb2RlIixbMTUsImFEIl1dXV1dXV1dXV0sWzIyLFsxLFsxNSwiYUMiXSxbMjgsWzE2LFsxNSwiYUEiXSwiYWRkcmVzcyJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJhQSJdLCJhZGRyZXNzIixbMTUsImFDIl1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFs0MyxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUQiXV1dXV1dXV1dXV0sWzIyLFsxLFsxNSwieSJdLFsxNSwieCJdXSxbNDYsWzUzLFs1MiwiYUMiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoVGltZSJdXSxbNTIsImFEIixbMTYsWzE1LCJ5Il0sImRhdGFMYXllclNlYXJjaENvdW50Il1dLFsyLFsxNSwidSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImwiXSwiRlQiXSxbOCwiZGxzdCIsWzE1LCJhQyJdLCJkbHNjIixbMTUsImFEIl1dXV1dXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzIyLFszMCxbMTYsWzE1LCJhQSJdLCJlbWFpbCJdLFsxNixbMTUsImFBIl0sInBob25lX251bWJlciJdXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUIiXV1dXV1dXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl0sWzE1LCJhQSJdXV0sWzM2LFsxNSwiYUEiXV1dXSxbImoiLFsxNSwiciJdLFs1MSwiIixbNywidSJdLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWSJdLFsxNSwidCJdXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTIsIl9fbW9kdWxlX2Fkd29yZHNIaXRUeXBlIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiY29udmVyc2lvbiJdLFs1MiwiYyIsImZsb29kbGlnaHQiXSxbNTIsImQiLCJnYV9jb252ZXJzaW9uIl0sWzUyLCJlIiwicGFnZV92aWV3Il0sWzUyLCJmIiwicmVtYXJrZXRpbmciXSxbNTIsImciLCJ1c2VyX2RhdGFfbGVhZCJdLFs1MiwiaCIsInVzZXJfZGF0YV93ZWIiXSxbMzYsWzgsIkQiLFsxNSwiYiJdLCJFIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIkgiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZ3RhZ1NjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiYyIsImFkX3N0b3JhZ2UiXSxbNTIsImQiLCJhZF91c2VyX2RhdGEiXSxbNTIsImUiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImYiLCJhcHBfcmVtb3ZlIl0sWzUyLCJnIiwiYXBwX3N0b3JlX3JlZnVuZCJdLFs1MiwiaCIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIl0sWzUyLCJpIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Il0sWzUyLCJqIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyJdLFs1MiwiayIsImNvbnZlcnNpb24iXSxbNTIsImwiLCJwdXJjaGFzZSJdLFs1MiwibSIsImZpcnN0X29wZW4iXSxbNTIsIm4iLCJmaXJzdF92aXNpdCJdLFs1MiwibyIsImd0YWcuY29uZmlnIl0sWzUyLCJwIiwiaW5fYXBwX3B1cmNoYXNlIl0sWzUyLCJxIiwicGFnZV92aWV3Il0sWzUyLCJyIiwic2Vzc2lvbl9zdGFydCJdLFs1MiwicyIsInVzZXJfZW5nYWdlbWVudCJdLFs1MiwidCIsImFkc19kYXRhX3JlZGFjdGlvbiJdLFs1MiwidSIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbl9zaWduYWxzIl0sWzUyLCJ2IiwiYWxsb3dfY3VzdG9tX3NjcmlwdHMiXSxbNTIsInciLCJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyJdLFs1MiwieCIsImFsbG93X2dvb2dsZV9zaWduYWxzIl0sWzUyLCJ5IiwiYXVpZCJdLFs1MiwieiIsImF3X3JlbWFya2V0aW5nX29ubHkiXSxbNTIsImFBIiwiZGlzY291bnQiXSxbNTIsImFCIiwiYXdfZmVlZF9jb3VudHJ5Il0sWzUyLCJhQyIsImF3X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImFEIiwiaXRlbXMiXSxbNTIsImFFIiwiYXdfbWVyY2hhbnRfaWQiXSxbNTIsImFGIiwiYXdfYmFza2V0X3R5cGUiXSxbNTIsImFHIiwiY2xpZW50X2lkIl0sWzUyLCJhSCIsImNvbnZlcnNpb25fY29va2llX3ByZWZpeCJdLFs1MiwiYUkiLCJjb252ZXJzaW9uX2lkIl0sWzUyLCJhSiIsImNvbnZlcnNpb25fbGlua2VyIl0sWzUyLCJhSyIsImNvbnZlcnNpb25fYXBpIl0sWzUyLCJhTCIsImNvb2tpZV9kZXByZWNhdGlvbiJdLFs1MiwiYU0iLCJjb29raWVfZXhwaXJlcyJdLFs1MiwiYU4iLCJjb29raWVfcHJlZml4Il0sWzUyLCJhTyIsImNvb2tpZV91cGRhdGUiXSxbNTIsImFQIiwiY291bnRyeSJdLFs1MiwiYVEiLCJjdXJyZW5jeSJdLFs1MiwiYVIiLCJjdXN0b21lcl9saWZldGltZV92YWx1ZSJdLFs1MiwiYVMiLCJjdXN0b21lcl90eXBlIl0sWzUyLCJhVCIsImRlYnVnX21vZGUiXSxbNTIsImFVIiwic2hpcHBpbmciXSxbNTIsImFWIiwiZW5nYWdlbWVudF90aW1lX21zZWMiXSxbNTIsImFXIiwiZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGUiXSxbNTIsImFYIiwiZXZlbnRfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiYVkiLCJldmVudF9pZCJdLFs1MiwiYVoiLCJldmVudCJdLFs1MiwiYkEiLCJfJmFlIl0sWzUyLCJiQiIsImV2ZW50X3RpbWVvdXQiXSxbNTIsImJDIiwiZXh0X2NsaWVudF9pZCJdLFs1MiwiYkQiLCJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIl0sWzUyLCJiRSIsIm1hdGNoX2lkIl0sWzUyLCJiRiIsImdkcHJfYXBwbGllcyJdLFs1MiwiYkciLCJfZ3RfbWV0YWRhdGEiXSxbNTIsImJIIiwiZ29vZ2xlX2FuYWx5c2lzX3BhcmFtcyJdLFs1MiwiYkkiLCJfZ29vZ2xlX25nIl0sWzUyLCJiSiIsIl9vbm8iXSxbNTIsImJLIiwiZ3BwX3NpZCJdLFs1MiwiYkwiLCJncHBfc3RyaW5nIl0sWzUyLCJiTSIsImdzYV9leHBlcmltZW50X2lkIl0sWzUyLCJiTiIsImd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSJdLFs1MiwiYk8iLCJpZnJhbWVfc3RhdGUiXSxbNTIsImJQIiwiaWdub3JlX3JlZmVycmVyIl0sWzUyLCJiUSIsImlzX3Bhc3N0aHJvdWdoIl0sWzUyLCJiUiIsImxhbmd1YWdlIl0sWzUyLCJiUyIsIm1lcmNoYW50X2ZlZWRfbGFiZWwiXSxbNTIsImJUIiwibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSJdLFs1MiwiYlUiLCJtZXJjaGFudF9pZCJdLFs1MiwiYlYiLCJuZXdfY3VzdG9tZXIiXSxbNTIsImJXIiwicGFnZV9ob3N0bmFtZSJdLFs1MiwiYlgiLCJwYWdlX3BhdGgiXSxbNTIsImJZIiwicGFnZV9yZWZlcnJlciJdLFs1MiwiYloiLCJwYWdlX3RpdGxlIl0sWzUyLCJjQSIsIl9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyJdLFs1MiwiY0IiLCJxdWFudGl0eSJdLFs1MiwiY0MiLCJyZXN0cmljdGVkX2RhdGFfcHJvY2Vzc2luZyJdLFs1MiwiY0QiLCJzY3JlZW5fcmVzb2x1dGlvbiJdLFs1MiwiY0UiLCJzZW5kX3BhZ2VfdmlldyJdLFs1MiwiY0YiLCJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiXSxbNTIsImNHIiwic2VydmVyX2NvbnRhaW5lcl91cmwiXSxbNTIsImNIIiwic2Vzc2lvbl9kdXJhdGlvbiJdLFs1MiwiY0kiLCJzZXNzaW9uX2VuZ2FnZWRfdGltZSJdLFs1MiwiY0oiLCJzZXNzaW9uX2lkIl0sWzUyLCJjSyIsIl9zaGFyZWRfdXNlcl9pZCJdLFs1MiwiY0wiLCJkZWxpdmVyeV9wb3N0YWxfY29kZSJdLFs1MiwiY00iLCJ0ZXN0b25seSJdLFs1MiwiY04iLCJ0b3Btb3N0X3VybCJdLFs1MiwiY08iLCJ0cmFuc2FjdGlvbl9pZCJdLFs1MiwiY1AiLCJ0cmFuc2FjdGlvbl9pZF9zb3VyY2UiXSxbNTIsImNRIiwidHJhbnNwb3J0X3VybCJdLFs1MiwiY1IiLCJ1cGRhdGUiXSxbNTIsImNTIiwiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIl0sWzUyLCJjVCIsIl91c2VyX2FnZW50X2JpdG5lc3MiXSxbNTIsImNVIiwiX3VzZXJfYWdlbnRfZnVsbF92ZXJzaW9uX2xpc3QiXSxbNTIsImNWIiwiX3VzZXJfYWdlbnRfbW9iaWxlIl0sWzUyLCJjVyIsIl91c2VyX2FnZW50X21vZGVsIl0sWzUyLCJjWCIsIl91c2VyX2FnZW50X3BsYXRmb3JtIl0sWzUyLCJjWSIsIl91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iXSxbNTIsImNaIiwiX3VzZXJfYWdlbnRfd293NjQiXSxbNTIsImRBIiwidXNlcl9kYXRhIl0sWzUyLCJkQiIsInVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiXSxbNTIsImRDIiwidXNlcl9kYXRhX2F1dG9fbWV0YSJdLFs1MiwiZEQiLCJ1c2VyX2RhdGFfYXV0b19tdWx0aSJdLFs1MiwiZEUiLCJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiXSxbNTIsImRGIiwidXNlcl9kYXRhX2F1dG9fc3RhdHVzIl0sWzUyLCJkRyIsInVzZXJfZGF0YV9tb2RlIl0sWzUyLCJkSCIsInVzZXJfaWQiXSxbNTIsImRJIiwidXNlcl9wcm9wZXJ0aWVzIl0sWzUyLCJkSiIsInVzX3ByaXZhY3lfc3RyaW5nIl0sWzUyLCJkSyIsInZhbHVlIl0sWzUyLCJkTCIsIl9mcG1fcGFyYW1ldGVycyJdLFs1MiwiZE0iLCJfaG9zdF9uYW1lIl0sWzUyLCJkTiIsIl9pbl9wYWdlX2NvbW1hbmQiXSxbNTIsImRPIiwiX21lYXN1cmVtZW50X3R5cGUiXSxbNTIsImRQIiwibm9uX3BlcnNvbmFsaXplZF9hZHMiXSxbNTIsImRRIiwiY29udmVyc2lvbl9sYWJlbCJdLFs1MiwiZFIiLCJwYWdlX2xvY2F0aW9uIl0sWzUyLCJkUyIsIl9leHRyYWN0ZWRfZGF0YSJdLFs1MiwiZFQiLCJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiZFUiLCJ0Y19wcml2YWN5X3N0cmluZyJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkkiLFsxNSwiZiJdLCJKIixbMTUsImciXSwiSyIsWzE1LCJoIl0sIkwiLFsxNSwiaSJdLCJNIixbMTUsImoiXSwiTyIsWzE1LCJrIl0sIkFBIixbMTUsImwiXSwiQUYiLFsxNSwibSJdLCJBRyIsWzE1LCJuIl0sIkFIIixbMTUsIm8iXSwiQUoiLFsxNSwicCJdLCJBSyIsWzE1LCJxIl0sIkFNIixbMTUsInIiXSwiQVEiLFsxNSwicyJdLCJCQyIsWzE1LCJ0Il0sIkJKIixbMTUsInUiXSwiQksiLFsxNSwidiJdLCJCTSIsWzE1LCJ3Il0sIkJOIixbMTUsIngiXSwiQlQiLFsxNSwieSJdLCJCWCIsWzE1LCJ6Il0sIkJZIixbMTUsImFBIl0sIkJaIixbMTUsImFCIl0sIkNBIixbMTUsImFDIl0sIkNCIixbMTUsImFEIl0sIkNDIixbMTUsImFFIl0sIkNEIixbMTUsImFGIl0sIkNMIixbMTUsImFHIl0sIkNRIixbMTUsImFIIl0sIkNSIixbMTUsImFJIl0sIktHIixbMTUsImRRIl0sIkNTIixbMTUsImFKIl0sIkNVIixbMTUsImFLIl0sIkNXIixbMTUsImFMIl0sIkNZIixbMTUsImFNIl0sIkRDIixbMTUsImFOIl0sIkREIixbMTUsImFPIl0sIkRFIixbMTUsImFQIl0sIkRGIixbMTUsImFRIl0sIkRHIixbMTUsImFSIl0sIkRIIixbMTUsImFTIl0sIkROIixbMTUsImFUIl0sIkVBIixbMTUsImFVIl0sIkVDIixbMTUsImFWIl0sIkVHIixbMTUsImFXIl0sIkVKIixbMTUsImFYIl0sIkVLIixbMTUsImFZIl0sIkVOIixbMTUsImFaIl0sIkVPIixbMTUsImJBIl0sIkVRIixbMTUsImJCIl0sIktJIixbMTUsImRTIl0sIkVVIixbMTUsImJDIl0sIkVXIixbMTUsImJEIl0sIkZFIixbMTUsImJFIl0sIkZPIixbMTUsImJGIl0sIkZQIixbMTUsImJHIl0sIktKIixbMTUsImRUIl0sIkZUIixbMTUsImJIIl0sIkZVIixbMTUsImJJIl0sIkZWIixbMTUsImJKIl0sIkZZIixbMTUsImJLIl0sIkZaIixbMTUsImJMIl0sIkdCIixbMTUsImJNIl0sIkdDIixbMTUsImJOIl0sIkdFIixbMTUsImJPIl0sIkdGIixbMTUsImJQIl0sIkdLIixbMTUsImJRIl0sIkdNIixbMTUsImJSIl0sIkdUIixbMTUsImJTIl0sIkdVIixbMTUsImJUIl0sIkdWIixbMTUsImJVIl0sIkdaIixbMTUsImJWIl0sIkhDIixbMTUsImJXIl0sIktIIixbMTUsImRSIl0sIkhEIixbMTUsImJYIl0sIkhFIixbMTUsImJZIl0sIkhGIixbMTUsImJaIl0sIkhOIixbMTUsImNBIl0sIkhQIixbMTUsImNCIl0sIkhUIixbMTUsImNDIl0sIkhYIixbMTUsImNEIl0sIklBIixbMTUsImNFIl0sIklDIixbMTUsImNGIl0sIklEIixbMTUsImNHIl0sIklGIixbMTUsImNIIl0sIklIIixbMTUsImNJIl0sIklJIixbMTUsImNKIl0sIklLIixbMTUsImNLIl0sIklMIixbMTUsImNMIl0sIktLIixbMTUsImRVIl0sIklQIixbMTUsImNNIl0sIklSIixbMTUsImNOIl0sIklVIixbMTUsImNPIl0sIklWIixbMTUsImNQIl0sIklXIixbMTUsImNRIl0sIklZIixbMTUsImNSIl0sIkpCIixbMTUsImNTIl0sIkpDIixbMTUsImNUIl0sIkpEIixbMTUsImNVIl0sIkpFIixbMTUsImNWIl0sIkpGIixbMTUsImNXIl0sIkpHIixbMTUsImNYIl0sIkpIIixbMTUsImNZIl0sIkpJIixbMTUsImNaIl0sIkpKIixbMTUsImRBIl0sIkpLIixbMTUsImRCIl0sIkpMIixbMTUsImRDIl0sIkpNIixbMTUsImREIl0sIkpOIixbMTUsImRFIl0sIkpPIixbMTUsImRGIl0sIkpQIixbMTUsImRHIl0sIkpSIixbMTUsImRIIl0sIkpTIixbMTUsImRJIl0sIkpVIixbMTUsImRKIl0sIkpWIixbMTUsImRLIl0sIkpYIixbMTUsImRMIl0sIkpZIixbMTUsImRNIl0sIkpaIixbMTUsImROIl0sIktDIixbMTUsImRPIl0sIktEIixbMTUsImRQIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFib3J0X3dpdGhvdXRfZmFpbCJdLFs1MiwiYyIsImFjY2VwdF9ieV9kZWZhdWx0Il0sWzUyLCJkIiwiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIl0sWzUyLCJlIiwiY29uc2VudF9zdGF0ZSJdLFs1MiwiZiIsImNvbnNlbnRfdXBkYXRlZCJdLFs1MiwiZyIsImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiXSxbNTIsImgiLCJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIl0sWzUyLCJpIiwiY29va2llX29wdGlvbnMiXSxbNTIsImoiLCJkZWR1cGVfaWQiXSxbNTIsImsiLCJlbV9ldmVudCJdLFs1MiwibCIsImV2ZW50X3Byb3ZlbmFuY2UiXSxbNTIsIm0iLCJldmVudF9zb3VyY2UiXSxbNTIsIm4iLCJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiXSxbNTIsIm8iLCJldmVudF91c2FnZSJdLFs1MiwicCIsImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyJdLFs1MiwicSIsImZvcm1fZXZlbnRfY2FuY2VsZWQiXSxbNTIsInIiLCJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iXSxbNTIsInMiLCJndG1fZXh0cmFjdGVkX2RhdGEiXSxbNTIsInQiLCJoYW5kbGVfaW50ZXJuYWxseSJdLFs1MiwidSIsImhhc19nYV9jb252ZXJzaW9uX2NvbnNlbnRzIl0sWzUyLCJ2IiwiaGl0X3R5cGUiXSxbNTIsInciLCJoaXRfdHlwZV9vdmVycmlkZSJdLFs1MiwieCIsImlnbm9yZV9kdXBlX2NvbmZpZyJdLFs1MiwieSIsImlzX2NvbnZlcnNpb24iXSxbNTIsInoiLCJpc19leHRlcm5hbF9ldmVudCJdLFs1MiwiYUEiLCJpc19maXJzdF92aXNpdCJdLFs1MiwiYUIiLCJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIl0sWzUyLCJhQyIsImlzX2ZwbV9lbmNyeXB0aW9uIl0sWzUyLCJhRCIsImlzX2ZwbV9zcGxpdCJdLFs1MiwiYUUiLCJpc19nY3BfYnJvd3NlciJdLFs1MiwiYUYiLCJpc19nb29nbGVfbWVhc3VyZW1lbnRfYWxsb3dlZCJdLFs1MiwiYUciLCJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiJdLFs1MiwiYUgiLCJpc19zZXNzaW9uX3N0YXJ0Il0sWzUyLCJhSSIsImlzX3Nlc3Npb25fc3RhcnRfY29udmVyc2lvbiJdLFs1MiwiYUoiLCJpc19zZ3RtX2dhX2Fkc19jb252ZXJzaW9uX3N0dWR5X2NvbnRyb2xfZ3JvdXAiXSxbNTIsImFLIiwiaXNfc2d0bV9wcmVoaXQiXSxbNTIsImFMIiwiaXNfc3BsaXRfY29udmVyc2lvbiJdLFs1MiwiYU0iLCJpc19zeW4iXSxbNTIsImFOIiwiaXNfdGVzdF9ldmVudCJdLFs1MiwiYU8iLCJwcmVoaXRfZm9yX3JldHJ5Il0sWzUyLCJhUCIsInJlZGFjdF9hZHNfZGF0YSJdLFs1MiwiYVEiLCJyZWRhY3RfY2xpY2tfaWRzIl0sWzUyLCJhUiIsInNlbmRfY2NtX3BhcmFsbGVsX3BpbmciXSxbNTIsImFTIiwic2VuZF91c2VyX2RhdGFfaGl0Il0sWzUyLCJhVCIsInNwZWN1bGF0aXZlIl0sWzUyLCJhVSIsInN5bl9vcl9tb2QiXSxbNTIsImFWIiwidHJhbnNpZW50X2Vjc2lkIl0sWzUyLCJhVyIsInVzZXJfZGF0YSJdLFs1MiwiYVgiLCJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiXSxbNTIsImFZIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciJdLFs1MiwiYVoiLCJ1c2VyX2RhdGFfZnJvbV9jb2RlIl0sWzUyLCJiQSIsInVzZXJfZGF0YV9mcm9tX21hbnVhbCJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJGIixbMTUsImQiXSwiTSIsWzE1LCJlIl0sIk4iLFsxNSwiZiJdLCJPIixbMTUsImciXSwiUCIsWzE1LCJoIl0sIlEiLFsxNSwiaSJdLCJTIixbMTUsImoiXSwiVCIsWzE1LCJrIl0sIloiLFsxNSwibCJdLCJBQSIsWzE1LCJtIl0sIkFCIixbMTUsIm4iXSwiQUMiLFsxNSwibyJdLCJBRCIsWzE1LCJwIl0sIkFKIixbMTUsInEiXSwiQUsiLFsxNSwiciJdLCJBTiIsWzE1LCJzIl0sIkFPIixbMTUsInQiXSwiQVAiLFsxNSwidSJdLCJBUSIsWzE1LCJ2Il0sIkFSIixbMTUsInciXSwiQVMiLFsxNSwieCJdLCJBViIsWzE1LCJ5Il0sIkFZIixbMTUsInoiXSwiQVoiLFsxNSwiYUEiXSwiQkEiLFsxNSwiYUIiXSwiQkMiLFsxNSwiYUMiXSwiQkQiLFsxNSwiYUQiXSwiQkUiLFsxNSwiYUUiXSwiQkYiLFsxNSwiYUYiXSwiQksiLFsxNSwiYUciXSwiQkwiLFsxNSwiYUgiXSwiQk0iLFsxNSwiYUkiXSwiQk4iLFsxNSwiYUoiXSwiQk8iLFsxNSwiYUsiXSwiQlEiLFsxNSwiYUwiXSwiQlIiLFsxNSwiYU0iXSwiQlMiLFsxNSwiYU4iXSwiQlkiLFsxNSwiYU8iXSwiQ0IiLFsxNSwiYVAiXSwiQ0MiLFsxNSwiYVEiXSwiQ0UiLFsxNSwiYVIiXSwiQ04iLFsxNSwiYVMiXSwiQ1EiLFsxNSwiYVQiXSwiQ1QiLFsxNSwiYVUiXSwiQ1UiLFsxNSwiYVYiXSwiQ1ciLFsxNSwiYVciXSwiQ1giLFsxNSwiYVgiXSwiQ1kiLFsxNSwiYVkiXSwiQ1oiLFsxNSwiYVoiXSwiREEiLFsxNSwiYkEiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsNDVdLFs1MiwiYyIsNDZdLFs1MiwiZCIsNDddLFs1MiwiZSIsMTc0XSxbNTIsImYiLDI3Nl0sWzM2LFs4LCJGIixbMTUsImIiXSwiRyIsWzE1LCJjIl0sIkgiLFsxNSwiZCJdLCJWIixbMTUsImUiXSwiQUQiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZWNUeXBlcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImZzcmMiXSxbNTIsImMiLCJmZWlkIl0sWzUyLCJkIiwiMCJdLFs1MiwiZSIsIjEiXSxbNTIsImYiLCIyIl0sWzUyLCJnIiwiMyJdLFs1MiwiaCIsIjQiXSxbMzYsWzgsIkIiLFsxNSwiYyJdLCJGIixbMTUsImciXSwiRCIsWzE1LCJlIl0sIkUiLFsxNSwiZiJdLCJDIixbMTUsImQiXSwiRyIsWzE1LCJoIl0sIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZmVhdHVyZXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDQyNV0sWzUyLCJjIiw0MzVdLFs1MiwiZCIsNDg4XSxbNTIsImUiLDQ4OV0sWzUyLCJmIiw0OThdLFs1MiwiZyIsNTAzXSxbNTIsImgiLDUwNF0sWzUyLCJpIiw1MDZdLFs1MiwiaiIsNTIzXSxbNTIsImsiLDUzMl0sWzUyLCJsIiw1NTNdLFs1MiwibSIsNTY4XSxbNTIsIm4iLDU3N10sWzUyLCJvIiw1ODFdLFs1MiwicCIsNTgzXSxbNTIsInEiLDU5Ml0sWzUyLCJyIiw1OTRdLFs1MiwicyIsNTk5XSxbMzYsWzgsIkFWIixbMTUsImsiXSwiQUQiLFsxNSwiZCJdLCJDSSIsWzE1LCJxIl0sIkJWIixbMTUsIm4iXSwiQk8iLFsxNSwibSJdLCJDSyIsWzE1LCJyIl0sIkNQIixbMTUsInMiXSwiQU0iLFsxNSwiZyJdLCJCWiIsWzE1LCJvIl0sIkFUIixbMTUsImoiXSwiQUUiLFsxNSwiZSJdLCJBTiIsWzE1LCJoIl0sIkwiLFsxNSwiYyJdLCJCQyIsWzE1LCJsIl0sIkFPIixbMTUsImkiXSwiQ0IiLFsxNSwicCJdLCJBSSIsWzE1LCJmIl0sIkkiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJjb29raWVfZGVwcmVjYXRpb25fbGFiZWwiXSxbNTIsImMiLCJwbGQiXSxbNTIsImQiLCJzaGFyZWRfdXNlcl9pZCJdLFs1MiwiZSIsInNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCJdLFs1MiwiZiIsInNoYXJlZF91c2VyX2lkX3NvdXJjZSJdLFszNixbOCwiQiIsWzE1LCJiIl0sIk4iLFsxNSwiYyJdLCJTIixbMTUsImQiXSwiVCIsWzE1LCJlIl0sIlUiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1TY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDFdLFs1MiwiYyIsMl0sWzUyLCJkIiwzXSxbNTIsImUiLDRdLFs1MiwiZiIsNV0sWzUyLCJnIiw2XSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJGIixbMTUsImciXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9nb2xkRXZlbnRVc2FnZUlkIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwxXSxbNTIsImMiLDJdLFs1MiwiZCIsNV0sWzUyLCJlIiw2XSxbNTIsImYiLDddLFs1MiwiZyIsOF0sWzUyLCJoIiw5XSxbNTIsImkiLDExXSxbNTIsImoiLDE1XSxbNTIsImsiLDE2XSxbNTIsImwiLDIwXSxbNTIsIm0iLDIxXSxbNTIsIm4iLDIzXSxbNTIsIm8iLDI0XSxbNTIsInAiLDI3XSxbNTIsInEiLDQwXSxbNTIsInIiLDQxXSxbMzYsWzgsIk8iLFsxNSwiaiJdLCJXIixbMTUsIm4iXSwiUCIsWzE1LCJrIl0sIlgiLFsxNSwibyJdLCJLIixbMTUsImkiXSwiQSIsWzE1LCJiIl0sIlQiLFsxNSwibCJdLCJFIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkIiLFsxNSwiYyJdLCJIIixbMTUsImciXSwiQU4iLFsxNSwicSJdLCJJIixbMTUsImgiXSwiRyIsWzE1LCJmIl0sIlUiLFsxNSwibSJdLCJBTyIsWzE1LCJyIl0sIkFBIixbMTUsInAiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWVfYmxvY2tfZG93bmxvYWRzIl0sWzUyLCJjIiwiYWVfYmxvY2tfZm9ybSJdLFs1MiwiZCIsImFlX2Jsb2NrX2hpc3RvcnkiXSxbNTIsImUiLCJhZV9ibG9ja19vdXRib3VuZF9jbGljayJdLFs1MiwiZiIsImFlX2Jsb2NrX3Njcm9sbCJdLFs1MiwiZyIsImFlX2Jsb2NrX3ZpZGVvIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl0sIkYiLFsxNSwiZyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImIiLFs0NiwiZCIsImUiXSxbNTIsImYiLFsyLFszMCxbMTUsImQiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiZyJdLFszLCJnIiwwXSxbNjMsWzcsImciXSxbMjMsWzE1LCJnIl0sWzE3LFsxNSwiZiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiZyJdLFszLCJnIixbMCxbMTUsImciXSwxXV1dLFs0NixbNTMsWzUyLCJoIixbImUiLFsyLFsxNixbMTUsImYiXSxbMTUsImciXV0sInRyaW0iLFs3XV1dXSxbMjIsWzIxLFsxNSwiaCJdLFs0NF1dLFs0NixbNTMsWzM2LFsxNSwiaCJdXV1dXV1dXV1dLFs1MCwiYyIsWzQ2LCJkIiwiZSIsImYiXSxbNTIsImciLFs4LCJzZWFyY2hfdGVybSIsWzE1LCJkIl1dXSxbNTIsImgiLFsyLFszMCxbMTUsImUiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiaSJdLFszLCJpIiwwXSxbNjMsWzcsImkiXSxbMjMsWzE1LCJpIl0sWzE3LFsxNSwiaCJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiaSJdLFszLCJpIixbMCxbMTUsImkiXSwxXV1dLFs0NixbNTMsWzUyLCJqIixbMixbMTYsWzE1LCJoIl0sWzE1LCJpIl1dLCJ0cmltIixbN11dXSxbNTIsImsiLFsiZiIsWzE1LCJqIl1dXSxbMjIsWzIxLFsxNSwiayJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiZyJdLFswLCJxXyIsWzE1LCJqIl1dLFsxNSwiayJdXV1dXV1dXV0sWzM2LFsxNSwiZyJdXV0sWzM2LFs4LCJCIixbMTUsImMiXSwiQSIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9hY3Rpdml0aWVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJiIixbNDYsImMiLCJkIl0sWzM2LFszOSxbMTUsImQiXSxbImQiLFsxNSwiYyJdXSxbMTUsImMiXV1dXSxbMzYsWzgsIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0Nl0sWzY4LCJ3IixbNTMsWzIyLFsxLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiQUkiXV1dLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiSSJdXV1dLFs0NixbNTMsWzM2LFs3XV1dXV0sWzUyLCJ3IixbImIiLFsxNyxbMTUsImciXSwiTiJdXV0sWzIyLFsibiIsWzE1LCJ3Il1dLFs0NixbNTMsWzM2LFsxNSwidyJdXV1dXSxbNTIsIngiLFs3XV0sWzIyLFsicCJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJBIl1dXV1dLFsyMixbInEiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiQiJdXV1dXSxbMjIsWyJyIl0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkYiXV1dXV0sWzIyLFsidSJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJEIl1dXV1dLFsyMixbInMiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiRSJdXV1dXSxbMjIsWyJ0Il0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkMiXV1dXV0sWzIyLFsibCJdLFs0NixbNTMsWyJmIixbMTcsWzE1LCJnIl0sIk4iXSxbMTUsIngiXSx0cnVlXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNDZdXSxbMzYsWzddXV0sWzUwLCJwIixbNDZdLFs2OCwidyIsWzUzLFszNixbMjgsWzI4LFsiYyIsInNjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePVwibWFnZS9cIl0iXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJxIixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWyJtIiwiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjXj1cIi8vIixbMTUsInciXV0sIlwiXSJdXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJyIixbNDZdLFsyMixbMjgsWyJlIixbMTcsWzE1LCJoIl0sIkkiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNjgsInciLFs1MyxbNTIsInciLFsibSIsImMyaHZjR2xtZVM1amIyMD0iXV0sWzUyLCJ4IixbIm0iLCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSJdXSxbMjIsWzMwLFsyOCxbMTUsInciXV0sWzI4LFsxNSwieCJdXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLCJzY3JpcHRbc3JjKj1cImNkbi4iLFsxNSwidyJdXSwiXCJdLCJdLCJtZXRhW3Byb3BlcnR5PVwib2c6aW1hZ2VcIl1bY29udGVudCo9XCJjZG4uIl0sWzE1LCJ3Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cImNkbi4iXSxbMTUsInciXV0sIlwiXSwiXSwibGlua1tyZWw9XCJwcmVjb25uZWN0XCJdW2hyZWYqPVwiZm9udHMuIl0sWzE1LCJ4Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cIml0ZXJhYmxlLXNob3BpZnlcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cInYuIl0sWzE1LCJ3Il1dLCJcIl0iXV1dXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwicyIsWzQ2XSxbNjgsInciLFs1MyxbNTIsInciLFsiZCIsInByb3RvY29sIl1dLFs1MiwieCIsWyJkIiwiaG9zdCJdXSxbNTIsInkiLFszOSxbMSxbMTUsInciXSxbMTUsIngiXV0sWzAsWzAsWzAsWzAsIltzcmNePVwiIixbMTUsInciXV0sIjovLyJdLFsxNSwieCJdXSwiL3dwLWNvbnRlbnRcIl0sIl0sIiJdXSxbNTIsInoiLFsibSIsIkxuZHZjbVJ3Y21WemN5NWpiMjA9Il1dLFs1MiwiYUEiLFsibSIsIkx5OXpMbmN1YjNKbiJdXSxbMjIsWzMwLFsyOCxbMTUsInoiXV0sWzI4LFsxNSwiYUEiXV1dLFs0NixbMzYsZmFsc2VdXV0sWzM2LFszMCxbInYiLFsxNSwieCJdLFsxNSwieiJdXSxbMjgsWzI4LFsiYyIsWzAsWzAsWzAsWzAsWzE1LCJ5Il0sIm1ldGFbbmFtZT1cImdlbmVyYXRvclwiXVtjb250ZW50Xj1cIldvcmRQcmVzcyBcIl0sIl0sImxpbmtbcmVsPVwiZG5zLXByZWZldGNoXCJdW2hyZWY9XCIiXSxbMTUsImFBIl1dLCJcIl0iXV1dXV1dXSxbNDZdXSxbMzYsZmFsc2VdXSxbNTAsInQiLFs0Nl0sWzY4LCJ3IixbNTMsWzUyLCJ3IixbMjgsWzI4LFsiYyIsWzAsIltjbGFzcyo9XCJ3b29jb21tZXJjZVwiXSwiLCJtZXRhW25hbWU9XCJnZW5lcmF0b3JcIl1bY29udGVudF49XCJXb29Db21tZXJjZSBcIl0iXV1dXV0sWzIyLFsxNSwidyJdLFs0NixbNTNdXV0sWzM2LFsxNSwidyJdXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJ1IixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjKj1cIndvb2NvbW1lcmNlXCJdLCIsImxpbmtbaHJlZio9XCJ3b29jb21tZXJjZVwiXSwiXSwiW2NsYXNzfD1cIndvb2NvbW1lcmNlXCJdIl1dXV1dLFsyMixbMTUsInciXSxbNDYsWzUzXV1dLFszNixbMTUsInciXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMSxbMTksWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ4Il0sImxlbmd0aCJdXSxbMjAsWzIsWzE1LCJ3Il0sInN1YnN0cmluZyIsWzcsWzM3LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sWzE3LFsxNSwieCJdLCJsZW5ndGgiXV0sWzE3LFsxNSwidyJdLCJsZW5ndGgiXV1dLFsxNSwieCJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG9tUmVhZHkiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJmcm9tQmFzZTY0Il1dLFs1MiwibiIsWzUxLCIiLFs3LCJ3Il0sWzM2LFsyMCxbImsiLFsxNSwidyJdXSwiYXJyYXkiXV1dXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Eb3dubG9hZEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfdXJsIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJsaW5rX3RleHQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImZpbGVfbmFtZSIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywiZmlsZV9leHRlbnNpb24iLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiQSJdXSxbNTIsImciLCJmaWxlX2Rvd25sb2FkIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZyJdLFs1MiwiaCIsWyJiIl1dLFs1MiwiaSIsWzddXSxbNTMsWzQxLCJqIl0sWzMsImoiLDBdLFs2MyxbNywiaiJdLFsyMyxbMTUsImoiXSxbMTcsWzE1LCJoIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJqIl0sWzMsImoiLFswLFsxNSwiaiJdLDFdXV0sWzQ2LFs1MyxbNTIsImsiLFsxNixbMTUsImgiXSxbMTUsImoiXV1dLFsyMixbImQiLFsxNSwiZyJdLFsxNSwiayJdXSxbNDYsWzUzLFsyLFsxNSwiaSJdLCJwdXNoIixbNyxbMTUsImsiXV1dXV1dXV1dXSxbMzYsWzE1LCJpIl1dXSxbNTAsImYiLFs0NiwiZyIsImgiXSxbNTIsImkiLFszMCxbMTUsImgiXSxbOF1dXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJUIl0sdHJ1ZV0sWzQzLFsxNSwiaSJdLFsxNyxbMTUsImMiXSwiQ1EiXSx0cnVlXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJaIl0sImEiXSxbNDMsWzE1LCJnIl0sImV2ZW50TWV0YWRhdGEiLFsxNSwiaSJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jbGFpbURlc3RpbmF0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJlIl0sIkIiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Gb3JtQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm4iLFs0NiwibyIsInAiLCJxIl0sWzUyLCJyIixbMjAsWzIsWzE1LCJvIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dLFsyMixbMjAsWzE1LCJwIl0sWzQ0XV0sWzQ2LFs1MyxbMywicCIsWzE1LCJyIl1dXV1dLFsiYyIsWzE1LCJvIl0sWzUxLCIiLFs3LCJzIl0sWzUyLCJ0IixbMixbMTUsInMiXSwiZ2V0RXZlbnROYW1lIixbN11dXSxbNTIsInUiLFszMCxbMjAsWzE1LCJ0Il0sWzE1LCJsIl1dLFsyMCxbMTUsInQiXSxbMTUsImsiXV1dXSxbMjIsWzMwLFsyOCxbMTUsInUiXV0sWzI4LFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsIm8iXSxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzEsWzI4LFsxNSwicCJdXSxbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQUoiXV1dXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFs1MiwidiIsWzIsWzE1LCJzIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIkFBIl1dXV0sWzIyLFsxLFsyOCxbMTUsInIiXV0sWzIwLFsxNSwidiJdLFsxNSwibSJdXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzI4LFsiaCIsWzE3LFsxNSwiaSJdLCJCWiJdXV0sWzQ2LFs1MyxbMjIsWzIwLFsxNSwidiJdLFsxNSwibSJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV0sWzQ2LFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJrIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlMiXSxbNDRdXV1dXV1dXV1dXSxbMixbMTUsInMiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMSxbMTUsInYiXSxbMTUsInIiXV0sWzQ2LFs1MyxbNDEsInciXSxbMywidyIsWzE3LFsxNSwiZyJdLCJDIl1dLFs0MSwieCJdLFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJsIl1dLFs0NixbNTMsWzMsInciLFsxNyxbMTUsImciXSwiRCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidiJdLFsxNSwiayJdXSxbNDYsWzUzLFszLCJ3IixbMTcsWzE1LCJnIl0sIkUiXV0sWzMsIngiLFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJTIl1dXV1dXSxbNDYsWzIyLFsyMCxbMTUsInYiXSxbMTUsIm0iXV0sWzQ2LFs1MyxbMywidyIsWzE3LFsxNSwiZyJdLCJGIl1dLFszLCJ4IixbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiUyJdXV1dXV1dXV1dXSxbNTIsInkiLFs4XV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiQSJdLFsxNSwidyJdXSxbMjIsWzE1LCJ4Il0sWzQ2LFs1MyxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJCIl0sWzE1LCJ4Il1dXV1dLFsyLFsxNSwicyJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImYiXSwiRlQiXSxbMTUsInkiXV1dXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX2lkIixbNDRdXV0sWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fZGVzdGluYXRpb24iLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fbGVuZ3RoIixbNDRdXV0sWzIyLFsyMCxbMTUsInQiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fc3VibWl0X3RleHQiLFs0NF1dXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLFsxNSwibCJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJzZXRIaXREYXRhIixbNywiZmlyc3RfZmllbGRfaWQiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3R5cGUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3Bvc2l0aW9uIixbNDRdXV1dXV1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfZWNUeXBlcyJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJpIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaiIsWzE3LFsxNSwiZSJdLCJCIl1dLFs1MiwiayIsImZvcm1fc3VibWl0Il0sWzUyLCJsIiwiZm9ybV9zdGFydCJdLFs1MiwibSIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsIm4iXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtT3V0Ym91bmRDbGlja0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfY2xhc3NlcyIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua191cmwiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfZG9tYWluIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJvdXRib3VuZCIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJEIl1dLFs1MiwiZyIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtUGFnZVZpZXdBY3Rpdml0eSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJrIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsImwiXSxbMjIsWzMwLFsyMSxbMixbMTUsImwiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiaSJdXSxbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiaCJdXSxbNDYsWzUzLFsyLFsxNSwibCJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyMixbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIkJPIl1dXV0sWzQ2LFs1MyxbImQiLFsxNSwiayJdLFsxNyxbMTUsImYiXSwiSEUiXSxbMixbMTUsImwiXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZiJdLCJIRSJdXV1dXV1dLFsyLFsxNSwibCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJDUSJdLGZhbHNlXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkMiXV0sWzUyLCJpIixbMTcsWzE1LCJmIl0sIkFLIl1dLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RFbVNjcm9sbEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsInBlcmNlbnRfc2Nyb2xsZWQiLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbMzYsWzgsIkEiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1WaWRlb0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJqIixbNDYsImsiLCJsIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsIm0iXSxbNTIsIm4iLFsyLFsxNSwibSJdLCJnZXRFdmVudE5hbWUiLFs3XV1dLFs1MiwibyIsWzMwLFszMCxbMjAsWzE1LCJuIl0sWzE1LCJnIl1dLFsyMCxbMTUsIm4iXSxbMTUsImgiXV1dLFsyMCxbMTUsIm4iXSxbMTUsImkiXV1dXSxbMjIsWzMwLFsyOCxbMTUsIm8iXV0sWzI4LFsyLFsxNSwibSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsImsiXSxbMTUsImYiXV0sWzQ2LFs1MyxbMixbMTUsIm0iXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMixbMTUsIm0iXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMjgsWzE1LCJsIl1dLFs0NixbNTMsWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19jdXJyZW50X3RpbWUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX2R1cmF0aW9uIixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wZXJjZW50IixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wcm92aWRlciIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlkZW9fdGl0bGUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX3VybCIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlzaWJsZSIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJGIl1dLFs1MiwiZyIsInZpZGVvX3N0YXJ0Il0sWzUyLCJoIiwidmlkZW9fcHJvZ3Jlc3MiXSxbNTIsImkiLCJ2aWRlb19jb21wbGV0ZSJdLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZiIsWzQ2LCJnIl0sWzIyLFsyLFsxNSwiZyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJCUyJdXV0sWzQ2LFs1MyxbMixbMTUsImciXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJJUCJdLCIxIl1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJtIiwibiIsIm8iXSxbNTAsInQiLFs0NiwidiJdLFs1MiwidyIsWzE2LFsxNSwiaSJdLFsxNSwidiJdXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNl1dXSxbNTMsWzQxLCJ4Il0sWzMsIngiLDBdLFs2MyxbNywieCJdLFsyMyxbMTUsIngiXSxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdXSxbMzMsWzE1LCJ4Il0sWzMsIngiLFswLFsxNSwieCJdLDFdXV0sWzQ2LFs1MyxbNTIsInkiLFsxNixbMTUsInciXSxbMTUsIngiXV1dLFsicSIsWzE1LCJwIl0sWzE3LFsxNSwieSJdLCJuYW1lIl0sWzE3LFsxNSwieSJdLCJ2YWx1ZSJdXV1dXV1dLFs1MCwidSIsWzQ2LCJ2Il0sWzIyLFszMCxbMjgsWzE1LCJyIl1dLFsyMSxbMTcsWzE1LCJyIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzQxLCJ3Il0sWzMsInciLFsxNixbMTUsInYiXSxbMTUsInMiXV1dLFsyMixbMjAsWzE1LCJ3Il0sWzQ0XV0sWzQ2LFs1MyxbMywidyIsWzE2LFsxNSwidiJdLFsxNSwiciJdXV1dXV0sWzM2LFsyOCxbMjgsWzE1LCJ3Il1dXV1dLFsyMixbMjgsWzE1LCJuIl1dLFs0NixbMzZdXV0sWzUyLCJwIixbMzAsWzE3LFsxNSwibSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbMTcsWyJjIl0sImNvbnRhaW5lcklkIl1dXSxbNTIsInEiLFsiaCIsWzE1LCJmIl0sWzE1LCJvIl1dXSxbNTIsInIiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbImgiLFsxNSwiZCJdLFsxNSwibyJdXV0sWyIkMCJdXV0sWzUyLCJzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJoIixbMTUsImUiXSxbMTUsIm8iXV1dLFsiJDAiXV1dLFs1MyxbNDEsInYiXSxbMywidiIsMF0sWzYzLFs3LCJ2Il0sWzIzLFsxNSwidiJdLFsxNyxbMTUsIm4iXSwibGVuZ3RoIl1dLFszMyxbMTUsInYiXSxbMywidiIsWzAsWzE1LCJ2Il0sMV1dXSxbNDYsWzUzLFs1MiwidyIsWzE2LFsxNSwibiJdLFsxNSwidiJdXV0sWzIyLFszMCxbMTcsWzE1LCJ3Il0sImRpc2FsbG93QWxsUmVnaW9ucyJdLFsidSIsWzE3LFsxNSwidyJdLCJkaXNhbGxvd2VkUmVnaW9ucyJdXV0sWzQ2LFs1MyxbInQiLFsxNyxbMTUsInciXSwicmVkYWN0RmllbGRHcm91cCJdXV1dXV1dXV1dLFs1MCwiayIsWzQ2LCJtIl0sWzUyLCJuIixbOF1dLFsyMixbMjgsWzE1LCJtIl1dLFs0NixbMzYsWzE1LCJuIl1dXV0sWzUyLCJvIixbMixbMTUsIm0iXSwic3BsaXQiLFs3LCIsIl1dXSxbNTMsWzQxLCJwIl0sWzMsInAiLDBdLFs2MyxbNywicCJdLFsyMyxbMTUsInAiXSxbMTcsWzE1LCJvIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJwIl0sWzMsInAiLFswLFsxNSwicCJdLDFdXV0sWzQ2LFs1MyxbNTIsInEiLFsyLFsxNixbMTUsIm8iXSxbMTUsInAiXV0sInRyaW0iLFs3XV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNl1dXSxbNTIsInIiLFsyLFsxNSwicSJdLCJzcGxpdCIsWzcsIi0iXV1dLFs1MiwicyIsWzE2LFsxNSwiciJdLDBdXSxbNTIsInQiLFszOSxbMjAsWzE3LFsxNSwiciJdLCJsZW5ndGgiXSwyXSxbMTUsInEiXSxbNDRdXV0sWzIyLFszMCxbMjgsWzE1LCJzIl1dLFsyMSxbMTcsWzE1LCJzIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFs2XV1dXSxbMjIsWzEsWzIxLFsxNSwidCJdLFs0NF1dLFszMCxbMjMsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw0XSxbMTgsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw2XV1dLFs0NixbNTMsWzZdXV1dLFs0MyxbMTUsIm4iXSxbMTUsInEiXSx0cnVlXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJsIixbNDYsIm0iXSxbMjIsWzI4LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdXSxbNDYsWzM2LFs3XV1dXSxbNTIsIm4iLFs4XV0sWzUzLFs0MSwibyJdLFszLCJvIiwwXSxbNjMsWzcsIm8iXSxbMjMsWzE1LCJvIl0sWzE3LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdLCJsZW5ndGgiXV0sWzMzLFsxNSwibyJdLFszLCJvIixbMCxbMTUsIm8iXSwxXV1dLFs0NixbNTMsWzUyLCJwIixbMTYsWzE3LFsxNSwibSJdLCJzZXR0aW5nc1RhYmxlIl0sWzE1LCJvIl1dXSxbNTIsInEiLFsxNyxbMTUsInAiXSwicmVkYWN0RmllbGRHcm91cCJdXSxbMjIsWzI4LFsxNixbMTUsImkiXSxbMTUsInEiXV1dLFs0NixbNl1dXSxbNDMsWzE1LCJuIl0sWzE1LCJxIl0sWzgsInJlZGFjdEZpZWxkR3JvdXAiLFsxNSwicSJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLGZhbHNlLCJkaXNhbGxvd2VkUmVnaW9ucyIsWzhdXV0sWzUyLCJyIixbMTYsWzE1LCJuIl0sWzE1LCJxIl1dXSxbMjIsWzE3LFsxNSwicCJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiXSxbNDYsWzUzLFs0MyxbMTUsInIiXSwiZGlzYWxsb3dBbGxSZWdpb25zIix0cnVlXSxbNl1dXV0sWzQzLFsxNSwiciJdLCJkaXNhbGxvd2VkUmVnaW9ucyIsWyJrIixbMTcsWzE1LCJwIl0sImRpc2FsbG93ZWRSZWdpb25zIl1dXV1dXV0sWzM2LFsyLFsxNSwiYiJdLCJ2YWx1ZXMiLFs3LFsxNSwibiJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImdldENvbnRhaW5lclZlcnNpb24iXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRDb3VudHJ5Q29kZSJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlZ2lvbkNvZGUiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2FjdGl2aXRpZXMiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkEiXV0sWzUyLCJpIixbOCwiR09PR0xFX1NJR05BTFMiLFs3LFs4LCJuYW1lIiwiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiLCJ2YWx1ZSIsZmFsc2VdXSwiREVWSUNFX0FORF9HRU8iLFs3LFs4LCJuYW1lIiwiZ2VvX2dyYW51bGFyaXR5IiwidmFsdWUiLHRydWVdLFs4LCJuYW1lIiwicmVkYWN0X2RldmljZV9pbmZvIiwidmFsdWUiLHRydWVdXV1dLFszNixbOCwiQSIsWzE1LCJqIl0sIkIiLFsxNSwibCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJkIixbNDYsImUiXSxbNTIsImYiLFsyLFsxNSwiYyJdLCJBIixbN11dXSxbMjIsWzEsWzE1LCJmIl0sWzE4LFsxNyxbMTUsImYiXSwibGVuZ3RoIl0sMF1dLFs0NixbNTMsWzIsWzE1LCJlIl0sIm1lcmdlSGl0RGF0YUZvcktleSIsWzcsWzE3LFsxNSwiYiJdLCJGVCJdLFs4LCJwbGYiLFsyLFsxNSwiZiJdLCJqb2luIixbNywiLiJdXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtRGV0ZWN0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJkIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAKXQosImVudGl0aWVzIjp7CiJfX2MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfYXV0b19yZWRhY3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Zvcm0iOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fcGFnZV92aWV3Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX3Njcm9sbCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV92aWRlbyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9maXJzdCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9sYXN0Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2dhX3JlZ3Njb3BlIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZSI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2djdCI6eyI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF8xcF9kYXRhX3YyIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KCgp9CiwiYmxvYiI6eyIxIjoiMSIsIjEwIjoiRy1TVjU2SlcwREtYfEdULVA4VjhIOTdGIiwiMTEiOnRydWUsIjE0IjoiNjdtMCIsIjE1IjoiMCIsIjE2IjoiQ2hFSThJT2Mwd1lRZ09tc2t2dWx4S3FSQVJJZEFMMlBZWllWbHF3QVpGVHNYTFBLL1V4dCtJNmN3L2hPb2F0WmxESWFBZ2J1IiwiMTciOiIiLCIxOSI6ImRhdGFMYXllciIsIjIiOnRydWUsIjIwIjoiIiwiMjEiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIyMiI6ImV5SXdJam9pVGs4aUxDSXhJam9pVGs4dE1ETWlMQ0l5SWpwbVlXeHpaU3dpTXlJNkltZHZiMmRzWlM1dWJ5SXNJalFpT2lKeVpXZHBiMjR4SWl3aU5TSTZabUZzYzJVc0lqWWlPblJ5ZFdVc0lqY2lPaUpoWkY5emRHOXlZV2RsZkdGdVlXeDVkR2xqYzE5emRHOXlZV2RsZkdGa1gzVnpaWEpmWkdGMFlYeGhaRjl3WlhKemIyNWhiR2w2WVhScGIyNGlMQ0k1SWpwMGNuVmxmUSIsIjIzIjoiZ29vZ2xlLnRhZ21hbmFnZXIuZGVidWd1aTIucXVldWUiLCIyNCI6InRhZ2Fzc2lzdGFudC5nb29nbGUuY29tIiwiMjciOjAuMDA1LCIzIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMzAiOiJOTyIsIjMxIjoiTk8tMDMiLCIzMiI6ZmFsc2UsIjMzIjoicmVnaW9uMSIsIjM0IjoiRy1TVjU2SlcwREtYIiwiMzUiOiJHIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NSI6dHJ1ZSwiNDYiOnsiMSI6IjEwMDAiLCIxMCI6IjY2dTAiLCIxMSI6IjY2ZzAiLCIxNCI6IjEwMDAiLCIxNiI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMTciOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjIiOiI5IiwiMjAiOiI1MDAwIiwiMjEiOiI1MDAwIiwiMjIiOiI0LjQuMCIsIjIzIjoiMC4wLjAiLCIyNSI6IjEiLCIyNiI6IjQwMDAiLCIyNyI6IjEwMCIsIjMiOiI1IiwiNCI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhfGFkX3BlcnNvbmFsaXphdGlvbiIsIjQ0IjoiMTUwMDAiLCI0OCI6IjMwMDAwIiwiNSI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhIiwiNiI6IjEiLCI2MSI6IjEwMDAiLCI2MiI6IkE2T05IUlk3L2J2QnJvK0lNWmQvYTZMTmpuN1NTdjk5OVNrTi9oRkFFOUw2dk1yMzRkTmdmZFNWZFltdjRVK05IWmcxc3hkMzhSdGNpUnBSVXRJUlBnUUFBQUNDZXlKdmNtbG5hVzRpT2lKb2RIUndjem92TDNkM2R5NW5iMjluYkdWMFlXZHRZVzVoWjJWeUxtTnZiVG8wTkRNaUxDSm1aV0YwZFhKbElqb2lVMmhoY21Wa1YyOXlhMlZ5UlhoMFpXNWtaV1JNYVdabGRHbHRaU0lzSW1WNGNHbHllU0k2TVRjM05qY3lPVFl3TUN3aWFYTlVhR2x5WkZCaGNuUjVJanAwY25WbGZRPT0iLCI2MyI6IjEwMDAiLCI2NiI6IjEwMCIsIjciOiIxMCJ9LCI0OCI6dHJ1ZSwiNSI6IkctU1Y1NkpXMERLWCIsIjU1IjpbIkctU1Y1NkpXMERLWCJdLCI1NiI6W3siMSI6NDAzLCIzIjowLjUsIjQiOjExNTkzODQ2NSwiNSI6MTE1OTM4NDY2LCI2IjowLCI3IjoyfSx7IjEiOjQwNCwiMyI6MC41LCI0IjoxMTU5Mzg0NjgsIjUiOjExNTkzODQ2OSwiNiI6MCwiNyI6MX0seyIxIjo2MDIsIjMiOjAuMDEsIjQiOjEyMDEyNDQ1NSwiNSI6MTIwMTI0NDUzLCI2IjoxMjAxMjQ0NTQsIjciOjN9LHsiMSI6NTY5LCIyIjp0cnVlfSx7IjEiOjQ3NSwiMiI6dHJ1ZX0seyIxIjo1MDIsIjIiOnRydWV9LHsiMSI6NTc3LCIyIjp0cnVlfSx7IjEiOjU2OCwiMyI6MC4wMSwiNCI6MTE5NzkxNzQ5LCI1IjoxMTk3OTE3NDgsIjYiOjAsIjciOjF9LHsiMSI6NDkwLCIyIjp0cnVlfSx7IjEiOjQ5MSwiMyI6MC4wMSwiNCI6MTE4MDEyMDA3LCI1IjoxMTgwMTIwMDgsIjYiOjExODAxMjAwOSwiNyI6MX0seyIxIjo0ODAsIjIiOnRydWV9LHsiMSI6NTk0LCIzIjowLjAxLCI0IjoxMTk3OTM5NzQsIjUiOjExOTc5Mzk3MiwiNiI6MTE5NzkzOTczLCI3IjoxfSx7IjEiOjU5OSwiMiI6dHJ1ZX0seyIxIjo1ODAsIjMiOjAuMSwiNCI6MTE5NTI3MDIwLCI1IjoxMTk1MjcwMTksIjYiOjAsIjciOjF9LHsiMSI6NTIzLCIyIjp0cnVlfSx7IjEiOjU4MSwiMyI6MC4wMSwiNCI6MTE5OTQ4ODU0LCI1IjoxMTk5NDg4NTIsIjYiOjExOTk0ODg1MywiNyI6M30seyIxIjo1NTUsIjMiOjAuMDEsIjQiOjExOTI1OTYwNiwiNSI6MTE5MjU5NjA1LCI2IjowLCI3IjoyfSx7IjEiOjUwNCwiMiI6dHJ1ZX0seyIxIjo0NjIsIjMiOjAuMDUsIjQiOjExODgwNjUyNCwiNSI6MTE4ODA2NTI1LCI2IjoxMTg4MDY1MjYsIjciOjF9LHsiMSI6NDEzLCIyIjp0cnVlfSx7IjEiOjU5MywiMiI6dHJ1ZX0seyIxIjo1MDYsIjIiOnRydWV9LHsiMSI6NTAwLCIyIjp0cnVlfSx7IjEiOjU2MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMywiNSI6MTE5NDA0NzAyLCI2IjowLCI3IjoxfSx7IjEiOjQ4MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMSwiNSI6MTE5NDA0NzAwLCI2IjowLCI3IjoxfSx7IjEiOjQ1MCwiMyI6MC4wMSwiNCI6MTE3MjI3NzE0LCI1IjoxMTcyMjc3MTUsIjYiOjExNzIyNzcxNiwiNyI6M30seyIxIjo1ODMsIjMiOjAuNSwiNCI6MTE5ODk2ODAzLCI1IjoxMTk4OTY4MDIsIjYiOjAsIjciOjF9LHsiMSI6NDU4LCIyIjp0cnVlfSx7IjEiOjU4MiwiMyI6MC4wMSwiNCI6MTE5MzgxNjY0LCI1IjoxMTkzODE2NjIsIjYiOjExOTM4MTY2MywiNyI6MX0seyIxIjo1NzAsIjIiOnRydWV9LHsiMSI6NDk4LCIzIjowLjIsIjQiOjExNTYxNjk4NSwiNSI6MTE1NjE2OTg2LCI2IjowLCI3IjoxfSx7IjEiOjU5NSwiMiI6dHJ1ZX0seyIxIjo1ODksIjMiOjAuMDEsIjQiOjEyMDA4NDIxNSwiNSI6MTIwMDg0MjE0LCI2IjowLCI3IjoxfSx7IjEiOjQ5NSwiMyI6MC4wNSwiNCI6MTE4MTMxODEwLCI1IjoxMTgxMzE4MDgsIjYiOjExODEzMTgwOSwiNyI6M30seyIxIjo1ODcsIjMiOjAuMSwiNCI6MTE5NzMyMTcxLCI1IjoxMTk3MzIxNzAsIjYiOjAsIjciOjN9LHsiMSI6NTg0LCIyIjp0cnVlfSx7IjEiOjU2NCwiMyI6MC4wMDAxLCI0IjoxMTkyMDUzMTcsIjUiOjExOTIwNTMxNSwiNiI6MTE5MjA1MzE2LCI3IjoxfSx7IjEiOjU1NywiMiI6dHJ1ZX0seyIxIjo0MjcsIjMiOjAuMSwiNCI6MTE5NzI0MzIyLCI1IjoxMTk3MjQzMjAsIjYiOjExOTcyNDMyMSwiNyI6Mn0seyIxIjo1NzYsIjMiOjAuMDEsIjQiOjExOTMxNzgxMCwiNSI6MTE5MzE3ODExLCI2IjoxMTkzMTgxNzcsIjciOjN9LHsiMSI6NTczLCIyIjp0cnVlfSx7IjEiOjQ5OSwiMiI6dHJ1ZX0seyIxIjo1MTYsIjMiOjAuMSwiNCI6MTE4Mzk1MzM1LCI1IjoxMTgzOTUzMzMsIjYiOjExODM5NTMzNCwiNyI6MX0seyIxIjo1MjQsIjIiOnRydWV9XSwiNTkiOlsiRy1TVjU2SlcwREtYIl0sIjYiOiIyMDY1NTUzMTQiLCI2MiI6dHJ1ZSwiNjMiOjAuMDA1fQosInBlcm1pc3Npb25zIjp7CiJfX2MiOnt9CiwKIl9fY2NkX2F1dG9fcmVkYWN0Ijp7fQosCiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciOnt9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9mb3JtIjp7ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIjp7fSwibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uZm9ybUludGVyYWN0IiwiZ3RtLmZvcm1TdWJtaXQiLCJndG0uY2xpY2stdjIiXX0sImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9LCJkZXRlY3RfY2xpY2tfZXZlbnRzIjp7fSwiZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sImxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9wYWdlX3ZpZXciOnsibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uaGlzdG9yeUNoYW5nZS12MiJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2Nyb2xsIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLnNjcm9sbERlcHRoIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9zY3JvbGxfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2l0ZV9zZWFyY2giOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sInJlYWRfY29udGFpbmVyX2RhdGEiOnt9fQosCiJfX2NjZF9lbV92aWRlbyI6eyJsaXN0ZW5fZGF0YV9sYXllciI6eyJhY2Nlc3NUeXBlIjoic3BlY2lmaWMiLCJhbGxvd2VkRXZlbnRzIjpbImd0bS52aWRlbyJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiOnsiYWxsb3dGaXhNaXNzaW5nSmF2YVNjcmlwdEFwaSI6ZmFsc2V9fQosCiJfX2NjZF9nYV9maXJzdCI6eyJyZWFkX2RvbV9lbGVtZW50cyI6eyJhbGxvd2VkQ3NzU2VsZWN0b3JzIjoiYW55In0sImdldF91cmwiOnsidXJsUGFydHMiOiJzcGVjaWZpYyIsInByb3RvY29sIjp0cnVlLCJob3N0Ijp0cnVlfX0KLAoiX19jY2RfZ2FfbGFzdCI6e30KLAoiX19jY2RfZ2FfcmVnc2NvcGUiOnsicmVhZF9jb250YWluZXJfZGF0YSI6e319CiwKIl9fZSI6eyJyZWFkX2V2ZW50X2RhdGEiOnsiZXZlbnREYXRhQWNjZXNzIjoic3BlY2lmaWMiLCJrZXlQYXR0ZXJucyI6WyJldmVudCJdfX0KLAoiX19nY3QiOnsiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9fQosCiJfX29ndF8xcF9kYXRhX3YyIjp7ImRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEiOnsibGltaXREYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dBdXRvRGF0YVNvdXJjZXMiOnRydWUsImFsbG93TWFudWFsRGF0YVNvdXJjZXMiOmZhbHNlLCJhbGxvd0NvZGVEYXRhU291cmNlcyI6ZmFsc2V9fQosCiJfX3NldF9wcm9kdWN0X3NldHRpbmdzIjp7fQoKCn0KCgoKLCJzZWN1cml0eV9ncm91cHMiOnsKImdvb2dsZSI6WwoiX19jIgosCiJfX2NjZF9hdXRvX3JlZGFjdCIKLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIgosCiJfX2NjZF9lbV9kb3dubG9hZCIKLAoiX19jY2RfZW1fZm9ybSIKLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siCiwKIl9fY2NkX2VtX3BhZ2VfdmlldyIKLAoiX19jY2RfZW1fc2Nyb2xsIgosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIKLAoiX19jY2RfZW1fdmlkZW8iCiwKIl9fY2NkX2dhX2ZpcnN0IgosCiJfX2NjZF9nYV9sYXN0IgosCiJfX2NjZF9nYV9yZWdzY29wZSIKLAoiX19lIgosCiJfX2djdCIKLAoiX19vZ3RfMXBfZGF0YV92MiIKLAoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIKCl0KCgp9CgoKCgoKfTsKCgoKCnZhciBrLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O2IucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxiYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixjKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1jLnZhbHVlO3JldHVybiBhfSxjYT1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkJiZkLk1hdGg9PU1hdGgpcmV0dXJuIGR9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTsKfSxoYT1jYSh0aGlzKSxpYT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCIsa2E9e30sbGE9e30sbmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXt2YXIgZD1sYVtiXTtpZihkPT1udWxsKXJldHVybiBhW2JdO3ZhciBlPWFbZF07cmV0dXJuIGUhPT12b2lkIDA/ZTphW2JdfX0sb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpYTp7dmFyIGQ9YS5zcGxpdCgiLiIpLGU9ZC5sZW5ndGg9PT0xLGY9ZFswXSxnOyFlJiZmIGluIGthP2c9a2E6Zz1oYTtmb3IodmFyIGg9MDtoPGQubGVuZ3RoLTE7aCsrKXt2YXIgbD1kW2hdO2lmKCEobCBpbiBnKSlicmVhayBhO2c9Z1tsXX12YXIgbj1kW2QubGVuZ3RoLTFdLHA9aWEmJmM9PT0iZXM2Ij9nW25dOm51bGwscT1iKHApO2lmKHEhPW51bGwpaWYoZSliYShrYSxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cX0pO2Vsc2UgaWYocSE9PXApe2lmKGxhW25dPT09dm9pZCAwKXt2YXIgcj0KTWF0aC5yYW5kb20oKSoxRTk+Pj4wO2xhW25dPWlhP2hhLlN5bWJvbChuKToiJGpzY3AkIityKyIkIitufWJhKGcsbGFbbl0se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSl9fX0scGE7aWYoaWEmJnR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpcGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHJhO2E6e3ZhciB0YT17YTohMH0sdWE9e307dHJ5e3VhLl9fcHJvdG9fXz10YTtyYT11YS5hO2JyZWFrIGF9Y2F0Y2goYSl7fXJhPSExfXBhPXJhP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhKyIgaXMgbm90IGV4dGVuc2libGUiKTtyZXR1cm4gYX06bnVsbH0KdmFyIHZhPXBhLHdhPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9YWEoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYodmEpdmEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLkZ0PWIucHJvdG90eXBlfSx4YT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sbT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6eGEoYSl9Owp0aHJvdyBFcnJvcihTdHJpbmcoYSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7fSx5YT1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTtyZXR1cm4gY30sdz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFycmF5P2E6eWEobShhKSl9LEFhPWZ1bmN0aW9uKGEpe3JldHVybiB6YShhLGEpfSx6YT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9LEJhPWlhJiZ0eXBlb2YgbmEoT2JqZWN0LCJhc3NpZ24iKT09ImZ1bmN0aW9uIj9uYShPYmplY3QsImFzc2lnbiIpOmZ1bmN0aW9uKGEsYil7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBudWxsaXNoIGFyZyIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTsKaWYoZClmb3IodmFyIGUgaW4gZClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O29hKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8QmF9LCJlczYiKTt2YXIgQ2E9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgT2JqZWN0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJdGVyYXRvciByZXN1bHQgIithKyIgaXMgbm90IGFuIG9iamVjdCIpO30sRGE9ZnVuY3Rpb24oKXt0aGlzLmZhPSExO3RoaXMuUj1udWxsO3RoaXMuamE9dm9pZCAwO3RoaXMuSD0xO3RoaXMuTj10aGlzLlo9MDt0aGlzLkxhPXRoaXMuSz1udWxsfSxFYT1mdW5jdGlvbihhKXtpZihhLmZhKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTthLmZhPSEwfTtEYS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7dGhpcy5qYT1hfTsKdmFyIEdhPWZ1bmN0aW9uKGEsYil7YS5LPXthbzpiLGlzRXhjZXB0aW9uOiEwfTthLkg9YS5afHxhLk59O0RhLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O0RhLnByb3RvdHlwZS5nZXRZaWVsZFJlc3VsdEpzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmphfTtEYS5wcm90b3R5cGUucmV0dXJuPWZ1bmN0aW9uKGEpe3RoaXMuSz17cmV0dXJuOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZVsicmV0dXJuIl09RGEucHJvdG90eXBlLnJldHVybjtEYS5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oYSl7dGhpcy5LPXtuZDphfTt0aGlzLkg9dGhpcy5OfTtEYS5wcm90b3R5cGUuanVtcFRocm91Z2hGaW5hbGx5QmxvY2tzPURhLnByb3RvdHlwZS5BajtEYS5wcm90b3R5cGUuYWM9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YjtyZXR1cm57dmFsdWU6YX19O0RhLnByb3RvdHlwZS55aWVsZD1EYS5wcm90b3R5cGUuYWM7CkRhLnByb3RvdHlwZS54cz1mdW5jdGlvbihhLGIpe3ZhciBjPW0oYSksZD1jLm5leHQoKTtDYShkKTtpZihkLmRvbmUpdGhpcy5qYT1kLnZhbHVlLHRoaXMuSD1iO2Vsc2UgcmV0dXJuIHRoaXMuUj1jLHRoaXMuYWMoZC52YWx1ZSxiKX07RGEucHJvdG90eXBlLnlpZWxkQWxsPURhLnByb3RvdHlwZS54cztEYS5wcm90b3R5cGUubmQ9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5qdW1wVG89RGEucHJvdG90eXBlLm5kO0RhLnByb3RvdHlwZS5Eaj1mdW5jdGlvbigpe3RoaXMuSD0wfTtEYS5wcm90b3R5cGUuanVtcFRvRW5kPURhLnByb3RvdHlwZS5EajtEYS5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTtiIT12b2lkIDAmJih0aGlzLk49Yil9O0RhLnByb3RvdHlwZS5zZXRDYXRjaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLk5qO0RhLnByb3RvdHlwZS52Zz1mdW5jdGlvbihhKXt0aGlzLlo9MDt0aGlzLk49YXx8MH07CkRhLnByb3RvdHlwZS5zZXRGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLnZnO0RhLnByb3RvdHlwZS5Jaj1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuWj1ifHwwfTtEYS5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1EYS5wcm90b3R5cGUuSWo7RGEucHJvdG90eXBlLlBoPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfHwwO3ZhciBiPXRoaXMuSy5hbzt0aGlzLks9bnVsbDtyZXR1cm4gYn07RGEucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1EYS5wcm90b3R5cGUuUGg7RGEucHJvdG90eXBlLmtkPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuTGFbY109dGhpcy5LOnRoaXMuTGE9W3RoaXMuS107dGhpcy5aPWF8fDA7dGhpcy5OPWJ8fDB9O0RhLnByb3RvdHlwZS5lbnRlckZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUua2Q7CkRhLnByb3RvdHlwZS5oZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTGEuc3BsaWNlKGJ8fDApWzBdLGQ9dGhpcy5LPXRoaXMuS3x8YztkP2QuaXNFeGNlcHRpb24/dGhpcy5IPXRoaXMuWnx8dGhpcy5OOmQubmQhPXZvaWQgMCYmdGhpcy5OPGQubmQ/KHRoaXMuSD1kLm5kLHRoaXMuSz1udWxsKTp0aGlzLkg9dGhpcy5OOnRoaXMuSD1hfTtEYS5wcm90b3R5cGUubGVhdmVGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLmhlO0RhLnByb3RvdHlwZS5mZT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhhKGEpfTtEYS5wcm90b3R5cGUuZm9ySW49RGEucHJvdG90eXBlLmZlO3ZhciBIYT1mdW5jdGlvbihhKXt0aGlzLks9YTt0aGlzLkg9W107Zm9yKHZhciBiIGluIGEpdGhpcy5ILnB1c2goYik7dGhpcy5ILnJldmVyc2UoKX07SGEucHJvdG90eXBlLmhvPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLkgubGVuZ3RoPjA7KXt2YXIgYT10aGlzLkgucG9wKCk7aWYoYSBpbiB0aGlzLkspcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpIYS5wcm90b3R5cGUuZ2V0TmV4dD1IYS5wcm90b3R5cGUuaG87CnZhciBJYT1mdW5jdGlvbihhKXt0aGlzLkg9bmV3IERhO3RoaXMuSz1hfSxMYT1mdW5jdGlvbihhLGIpe0VhKGEuSCk7dmFyIGM9YS5ILlI7aWYoYylyZXR1cm4gSmEoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5ILnJldHVybik7YS5ILnJldHVybihiKTtyZXR1cm4gS2EoYSl9LEphPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5ILlIsYyk7Q2EoZSk7aWYoIWUuZG9uZSlyZXR1cm4gYS5ILmZhPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5ILlI9bnVsbCxHYShhLkgsZyksS2EoYSl9YS5ILlI9bnVsbDtkLmNhbGwoYS5ILGYpO3JldHVybiBLYShhKX0sS2E9ZnVuY3Rpb24oYSl7Zm9yKDthLkguSDspdHJ5e3ZhciBiPWEuSyhhLkgpO2lmKGIpcmV0dXJuIGEuSC5mYT0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChkKXthLkguamE9dm9pZCAwLEdhKGEuSCwKZCl9YS5ILmZhPSExO2lmKGEuSC5LKXt2YXIgYz1hLkguSzthLkguSz1udWxsO2lmKGMuaXNFeGNlcHRpb24pdGhyb3cgYy5hbztyZXR1cm57dmFsdWU6Yy5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0sTWE9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe3ZhciBjO0VhKGEuSCk7YS5ILlI/Yz1KYShhLGEuSC5SLm5leHQsYixhLkgueWEpOihhLkgueWEoYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMudGhyb3c9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlJbInRocm93Il0sYixhLkgueWEpOihHYShhLkgsYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBMYShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319LE5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1hKG5ldyBJYShiKSk7dmEmJmEucHJvdG90eXBlJiZ2YShjLAphLnByb3RvdHlwZSk7cmV0dXJuIGN9LE9hPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9LFFhPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgUmE9dGhpc3x8c2VsZixTYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5GdD1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EubnY9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmRhdGE9Yn07dmFyIFVhPWZ1bmN0aW9uKCl7dGhpcy5tYXA9e307dGhpcy5IPXt9fTtVYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcFsiZHVzdC4iK2FdfTtVYS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShjKXx8KHRoaXMubWFwW2NdPWIpfTtVYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eSgiZHVzdC4iK2EpfTtVYS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3ZhciBiPSJkdXN0LiIrYTt0aGlzLkguaGFzT3duUHJvcGVydHkoYil8fGRlbGV0ZSB0aGlzLm1hcFtiXX07CnZhciBWYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5tYXApaWYoYS5tYXAuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO3N3aXRjaChiKXtjYXNlIDE6Yy5wdXNoKGUpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5tYXBbZF0pO2JyZWFrO2Nhc2UgMzpjLnB1c2goW2UsYS5tYXBbZF1dKX19cmV0dXJuIGN9O1VhLnByb3RvdHlwZS5GYT1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDEpfTtVYS5wcm90b3R5cGUuaGM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywyKX07VWEucHJvdG90eXBlLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMyl9O3ZhciBXYT1mdW5jdGlvbigpe307V2EucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7fTt2YXIgWGE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9O3RoaXMucHJlZml4PSJndG0uIn07az1YYS5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlW3RoaXMucHJlZml4K1N0cmluZyhhKV09Yn07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkodGhpcy5wcmVmaXgrU3RyaW5nKGEpKX07ay5kZWxldGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5wcmVmaXgrU3RyaW5nKGEpO3JldHVybiB0aGlzLnZhbHVlLmhhc093blByb3BlcnR5KGIpPyhkZWxldGUgdGhpcy52YWx1ZVtiXSwhMCk6ITF9O2suY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9fTsKay52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3JldHVybiBmdW5jdGlvbiBjKCl7dmFyIGQsZSxmO3JldHVybiBOYShjLGZ1bmN0aW9uKGcpe3N3aXRjaChnLkgpe2Nhc2UgMTpnLnZnKDIpLGU9Zy5mZShhLnZhbHVlKTtjYXNlIDQ6aWYoKGQ9ZS5obygpKT09bnVsbCl7Zy5uZCgyKTticmVha31pZighYS52YWx1ZS5oYXNPd25Qcm9wZXJ0eShkKSl7Zy5uZCg0KTticmVha31mPVFhO3JldHVybiBnLmFjKGEudmFsdWVbZF0sOCk7Y2FzZSA4OmYoZy5qYSk7Zy5uZCg0KTticmVhaztjYXNlIDI6Zy5rZCgpLGcuaGUoMCl9fSl9KCl9O2hhLk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFhhLnByb3RvdHlwZSx7c2l6ZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudmFsdWUpLmxlbmd0aH19fSk7CmZ1bmN0aW9uIFlhKCl7dHJ5e2lmKE1hcClyZXR1cm4gbmV3IE1hcH1jYXRjaChhKXt9cmV0dXJuIG5ldyBYYX07dmFyIFphPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZXM9W119O1phLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZXMuaW5kZXhPZihhKT09PS0xJiZ0aGlzLnZhbHVlcy5wdXNoKGEpfTtaYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlcy5pbmRleE9mKGEpPi0xfTt2YXIgJGE9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLlI9dGhpcy5LPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuTj1mdW5jdGlvbihkLGUsZil7cmV0dXJuIGQuYXBwbHkoZSxmKX07dGhpcy5IPVlhKCk7dmFyIGM7YTp7dHJ5e2lmKFNldCl7Yz1uZXcgU2V0O2JyZWFrIGF9fWNhdGNoKGQpe31jPW5ldyBaYX10aGlzLlo9Y307JGEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe2FiKHRoaXMsYSxiLCExKX07JGEucHJvdG90eXBlLlFoPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITApfTt2YXIgYWI9ZnVuY3Rpb24oYSxiLGMsZCl7YS5IYnx8YS5aLmhhcyhiKXx8KGQmJmEuWi5hZGQoYiksYS5ILnNldChiLGMpKX07az0kYS5wcm90b3R5cGU7Cmsuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLkguaGFzKGEpJiZ0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuaGFzKGEpP3RoaXMucGFyZW50LnNldChhLGIpOnRoaXMuWi5oYXMoYSl8fHRoaXMuSC5zZXQoYSxiKSl9O2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkguaGFzKGEpP3RoaXMuSC5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLkguaGFzKGEpfHwhKCF0aGlzLnBhcmVudHx8IXRoaXMucGFyZW50LmhhcyhhKSl9O2sud2I9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgJGEodGhpcy5mYSx0aGlzKTt0aGlzLksmJmEuUWIodGhpcy5LKTthLnNkKHRoaXMuTik7YS51ZSh0aGlzLlIpO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmF9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTsKay5zZD1mdW5jdGlvbihhKXt0aGlzLk49YX07ay5Qaj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkhiPSEwfTtrLnVlPWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07dmFyIGJiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxhLm1lc3NhZ2UpO3RoaXMubWVzc2FnZT1kLm1lc3NhZ2U7InN0YWNrImluIGQmJih0aGlzLnN0YWNrPWQuc3RhY2spO3RoaXMudm89YTt0aGlzLlNuPWM9PT12b2lkIDA/ITE6Yzt0aGlzLks9W107dGhpcy5IPWJ9O3dhKGJiLEVycm9yKTt2YXIgY2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBiYj9hOm5ldyBiYihhLHZvaWQgMCwhMCl9O3ZhciBkYj1ZYSgpO2Z1bmN0aW9uIGViKGEsYil7Zm9yKHZhciBjLGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmUmJiEoYz1mYihhLGUudmFsdWUpLGMgaW5zdGFuY2VvZiBUYSk7ZT1kLm5leHQoKSk7cmV0dXJuIGN9ZnVuY3Rpb24gZmIoYSxiKXt0cnl7dmFyIGM9YlswXSxkPWIuc2xpY2UoMSksZT1TdHJpbmcoYyksZj1kYi5oYXMoZSk/ZGIuZ2V0KGUpOmEuZ2V0KGUpO2lmKCFmfHx0eXBlb2YgZi5pbnZva2UhPT0iZnVuY3Rpb24iKXRocm93IGNiKEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4ZWN1dGUgbm9uLWZ1bmN0aW9uICIrYlswXSsiLiIpKTtyZXR1cm4gZi5hcHBseShhLGQpfWNhdGNoKGgpe3ZhciBnPWEuZm8oKTtnJiZnKGgsYi5jb250ZXh0P3tpZDpiWzBdLGxpbmU6Yi5jb250ZXh0LmxpbmV9Om51bGwpO3Rocm93IGg7fX07dmFyIGdiPWZ1bmN0aW9uKCl7dGhpcy5LPW5ldyBXYTt0aGlzLkg9bmV3ICRhKHRoaXMuSyl9O2s9Z2IucHJvdG90eXBlO2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07ay5zZD1mdW5jdGlvbihhKXt0aGlzLkguc2QoYSl9O2suZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yayhbYV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLnJrPWZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9bShPYS5hcHBseSgwLGFyZ3VtZW50cykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWE9ZmIodGhpcy5ILGMudmFsdWUpO3JldHVybiBhfTtrLkpxPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKSxjPXRoaXMuSC53YigpO2MudWUoYSk7Zm9yKHZhciBkLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkPWZiKGMsZi52YWx1ZSk7cmV0dXJuIGR9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07dmFyIGhiPWZ1bmN0aW9uKGEsYil7dGhpcy5SPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLk49dGhpcy5IPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuSz1mdW5jdGlvbihjLGQsZSl7cmV0dXJuIGMuYXBwbHkoZCxlKX07dGhpcy52YWx1ZXM9bmV3IFVhfTtoYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7amIodGhpcyxhLGIsITEpfTtoYi5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMCl9O3ZhciBqYj1mdW5jdGlvbihhLGIsYyxkKXtpZighYS5IYilpZihkKXt2YXIgZT1hLnZhbHVlcztlLnNldChiLGMpO2UuSFsiZHVzdC4iK2JdPSEwfWVsc2UgYS52YWx1ZXMuc2V0KGIsYyl9O2s9aGIucHJvdG90eXBlO2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLnZhbHVlcy5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy52YWx1ZXMuc2V0KGEsYikpfTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmhhcyhhKT90aGlzLnZhbHVlcy5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLnZhbHVlcy5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyBoYih0aGlzLlIsdGhpcyk7dGhpcy5IJiZhLlFiKHRoaXMuSCk7YS5zZCh0aGlzLkspO2EudWUodGhpcy5OKTtyZXR1cm4gYX07ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSz1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuS307ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTt2YXIga2I9ZnVuY3Rpb24oKXt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhfTtrPWtiLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITB9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gbGIoKXtmb3IodmFyIGE9bWIsYj17fSxjPTA7YzxhLmxlbmd0aDsrK2MpYlthW2NdXT1jO3JldHVybiBifWZ1bmN0aW9uIG5iKCl7dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjthKz1hLnRvTG93ZXJDYXNlKCkrIjAxMjM0NTY3ODktXyI7cmV0dXJuIGErIi4ifXZhciBtYixvYjtmdW5jdGlvbiBwYihhKXttYj1tYnx8bmIoKTtvYj1vYnx8bGIoKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7Yys9Myl7dmFyIGQ9YysxPGEubGVuZ3RoLGU9YysyPGEubGVuZ3RoLGY9YS5jaGFyQ29kZUF0KGMpLGc9ZD9hLmNoYXJDb2RlQXQoYysxKTowLGg9ZT9hLmNoYXJDb2RlQXQoYysyKTowLGw9Zj4+MixuPShmJjMpPDw0fGc+PjQscD0oZyYxNSk8PDJ8aD4+NixxPWgmNjM7ZXx8KHE9NjQsZHx8KHA9NjQpKTtiLnB1c2gobWJbbF0sbWJbbl0sbWJbcF0sbWJbcV0pfXJldHVybiBiLmpvaW4oIiIpfQpmdW5jdGlvbiBxYihhKXtmdW5jdGlvbiBiKGwpe2Zvcig7ZDxhLmxlbmd0aDspe3ZhciBuPWEuY2hhckF0KGQrKykscD1vYltuXTtpZihwIT1udWxsKXJldHVybiBwO2lmKCEvXltcc1x4YTBdKiQvLnRlc3QobikpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrbik7fXJldHVybiBsfW1iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYz0iIixkPTA7Oyl7dmFyIGU9YigtMSksZj1iKDApLGc9Yig2NCksaD1iKDY0KTtpZihoPT09NjQmJmU9PT0tMSlyZXR1cm4gYztjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGU8PDJ8Zj4+NCk7ZyE9PTY0JiYoYys9U3RyaW5nLmZyb21DaGFyQ29kZShmPDw0JjI0MHxnPj4yKSxoIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGc8PDYmMTkyfGgpKSl9fTt2YXIgcmI9e307ZnVuY3Rpb24gc2IoYSxiKXt2YXIgYz1yYlthXTtjfHwoYz1yYlthXT1bXSk7Y1tiXT0hMH1mdW5jdGlvbiB0Yigpe2RlbGV0ZSByYi5HQTRfRVZFTlR9ZnVuY3Rpb24gdWIoKXt2YXIgYT12Yi5ILnNsaWNlKCk7cmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUw9YX1mdW5jdGlvbiB3YihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKylkJTg9PT0wJiZkPjAmJihiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShjKSksYz0wKSxhW2RdJiYoY3w9MTw8ZCU4KTtjPjAmJmIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKTtyZXR1cm4gcGIoYi5qb2luKCIiKSkucmVwbGFjZSgvXC4rJC8sIiIpfTtmdW5jdGlvbiB4Yigpe31mdW5jdGlvbiB5YihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHpiKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIEFiKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiYhaXNOYU4oYSl9ZnVuY3Rpb24gQmIoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpbYV19ZnVuY3Rpb24gQ2IoYSxiKXtpZihhJiZBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmIoYVtjXSkpcmV0dXJuIGFbY119ZnVuY3Rpb24gRGIoYSxiKXtpZighQWIoYSl8fCFBYihiKXx8YT5iKWE9MCxiPTIxNDc0ODM2NDc7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSooYi1hKzEpK2EpfQpmdW5jdGlvbiBFYihhLGIpe2Zvcih2YXIgYz1uZXcgRmIsZD0wO2Q8YS5sZW5ndGg7ZCsrKWMuc2V0KGFbZF0sITApO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGMuZ2V0KGJbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEdiKGEsYil7Zm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYyxhW2NdKX1mdW5jdGlvbiBIYihhKXtyZXR1cm4hIWEmJihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSk9PT0iW29iamVjdCBBcmd1bWVudHNdInx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsImNhbGxlZSIpKX1mdW5jdGlvbiBJYihhKXtyZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIoYSkpfHwwfWZ1bmN0aW9uIEpiKGEpe3JldHVybiJmYWxzZSI9PT1TdHJpbmcoYSkudG9Mb3dlckNhc2UoKT8hMTohIWF9CmZ1bmN0aW9uIEtiKGEpe3ZhciBiPVtdO2lmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFN0cmluZyhhW2NdKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTGIoYSl7cmV0dXJuIGE/YS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIik6IiJ9ZnVuY3Rpb24gTWIoKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSl9ZnVuY3Rpb24gTmIoKXtyZXR1cm4gTWIoKS5nZXRUaW1lKCl9dmFyIEZiPWZ1bmN0aW9uKCl7dGhpcy5wcmVmaXg9Imd0bS4iO3RoaXMudmFsdWVzPXt9fTtGYi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV09Yn07RmIucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV19O0ZiLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nZXQoYSkhPT12b2lkIDB9OwpmdW5jdGlvbiBPYihhLGIsYyl7cmV0dXJuIGEmJmEuaGFzT3duUHJvcGVydHkoYik/YVtiXTpjfWZ1bmN0aW9uIFBiKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPXZvaWQgMDt0cnl7YygpfWNhdGNoKGQpe319fX1mdW5jdGlvbiBRYihhLGIpe2Zvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJihhW2NdPWJbY10pfWZ1bmN0aW9uIFJiKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXSksYy5wdXNoLmFwcGx5KGMsYlthW2RdXXx8W10pO3JldHVybiBjfWZ1bmN0aW9uIFNiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoMCxiLmxlbmd0aCk9PT1ifWZ1bmN0aW9uIFRiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoYS5sZW5ndGgtYi5sZW5ndGgsYS5sZW5ndGgpPT09Yn0KZnVuY3Rpb24gVWIoYSxiLGMpe2M9Y3x8W107Zm9yKHZhciBkPWEsZT0wO2U8Yi5sZW5ndGgtMTtlKyspe2lmKCFkLmhhc093blByb3BlcnR5KGJbZV0pKXJldHVybjtkPWRbYltlXV07aWYoYy5pbmRleE9mKGQpPj0wKXJldHVybn1yZXR1cm4gZH1mdW5jdGlvbiBWYihhLGIpe2Zvcih2YXIgYz17fSxkPWMsZT1hLnNwbGl0KCIuIiksZj0wO2Y8ZS5sZW5ndGgtMTtmKyspZD1kW2VbZl1dPXt9O2RbZVtlLmxlbmd0aC0xXV09YjtyZXR1cm4gY312YXIgV2I9L15cd3sxLDl9JC87ZnVuY3Rpb24gWWIoYSxiKXthPWF8fHt9O2I9Ynx8IiwiO3ZhciBjPVtdO0diKGEsZnVuY3Rpb24oZCxlKXtXYi50ZXN0KGQpJiZlJiZjLnB1c2goZCl9KTtyZXR1cm4gYy5qb2luKGIpfQpmdW5jdGlvbiBaYihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hLmNoYXJDb2RlQXQoYyk7ZDwxMjg/Yi5wdXNoKGQpOmQ8MjA0OD9iLnB1c2goMTkyfGQ+PjYsMTI4fGQmNjMpOmQ8NTUyOTZ8fGQ+PTU3MzQ0P2IucHVzaCgyMjR8ZD4+MTIsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpOihkPTY1NTM2KygoZCYxMDIzKTw8MTB8YS5jaGFyQ29kZUF0KCsrYykmMTAyMyksYi5wdXNoKDI0MHxkPj4xOCwxMjh8ZD4+MTImNjMsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYil9ZnVuY3Rpb24gJGIoYSl7aWYoIWEpcmV0dXJuIGE7dmFyIGI9YTt0cnl7Yj1kZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goZCl7fXZhciBjPWIuc3BsaXQoIiwiKTtyZXR1cm4gYy5sZW5ndGg9PT0yJiZjWzBdPT09Y1sxXT9jWzBdOmF9CmZ1bmN0aW9uIGFjKGEsYixjKXtmdW5jdGlvbiBkKG4pe3ZhciBwPW4uc3BsaXQoIj0iKVswXTtpZihhLmluZGV4T2YocCk8MClyZXR1cm4gbjtpZihjIT09dm9pZCAwKXJldHVybiBwKyI9IitjfWZ1bmN0aW9uIGUobil7cmV0dXJuIG4uc3BsaXQoIiYiKS5tYXAoZCkuZmlsdGVyKGZ1bmN0aW9uKHApe3JldHVybiBwIT09dm9pZCAwfSkuam9pbigiJiIpfXZhciBmPWIuaHJlZi5zcGxpdCgvWz8jXS8pWzBdLGc9Yi5zZWFyY2gsaD1iLmhhc2g7Z1swXT09PSI/IiYmKGc9Zy5zdWJzdHJpbmcoMSkpO2hbMF09PT0iIyImJihoPWguc3Vic3RyaW5nKDEpKTtnPWUoZyk7aD1lKGgpO2chPT0iIiYmKGc9Ij8iK2cpO2ghPT0iIiYmKGg9IiMiK2gpO3ZhciBsPSIiK2YrZytoO2xbbC5sZW5ndGgtMV09PT0iLyImJihsPWwuc3Vic3RyaW5nKDAsbC5sZW5ndGgtMSkpO3JldHVybiBsfQpmdW5jdGlvbiBiYyhhKXtmb3IodmFyIGI9MDtiPDM7KytiKXRyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvXCsvZywiICIpO2lmKGM9PT1hKWJyZWFrO2E9Y31jYXRjaChkKXtyZXR1cm4iIn1yZXR1cm4gYX1mdW5jdGlvbiBjYygpe3ZhciBhPUEsYjthOnt2YXIgYz1hLmNyeXB0b3x8YS5tc0NyeXB0bztpZihjJiZjLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoMjUpO2MuZ2V0UmFuZG9tVmFsdWVzKGQpO2I9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KGQpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTticmVhayBhfWNhdGNoKGUpe31iPXZvaWQgMH1yZXR1cm4gYn07LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGRjPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLGVjO2Z1bmN0aW9uIGZjKCl7dmFyIGE9bnVsbDtpZighZGMpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPWRjLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpiLGNyZWF0ZVNjcmlwdDpiLGNyZWF0ZVNjcmlwdFVSTDpifSl9Y2F0Y2goYyl7fXJldHVybiBhfWZ1bmN0aW9uIGhjKCl7ZWM9PT12b2lkIDAmJihlYz1mYygpKTtyZXR1cm4gZWN9O3ZhciBpYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07aWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07ZnVuY3Rpb24gamMoYSl7dmFyIGI9YSxjPWhjKCksZD1jP2MuY3JlYXRlU2NyaXB0VVJMKGIpOmI7cmV0dXJuIG5ldyBpYyhkKX1mdW5jdGlvbiBrYyhhKXtpZihhIGluc3RhbmNlb2YgaWMpcmV0dXJuIGEuSDt0aHJvdyBFcnJvcigiIik7fTt2YXIgbGM9QWEoWyIiXSksbWM9emEoWyJceDAwIl0sWyJcXDAiXSksbmM9emEoWyJcbiJdLFsiXFxuIl0pLG9jPXphKFsiXHgwMCJdLFsiXFx1MDAwMCJdKTtmdW5jdGlvbiBwYyhhKXtyZXR1cm4gYS50b1N0cmluZygpLmluZGV4T2YoImAiKT09PS0xfXBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKGxjKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShtYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobmMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG9jKX0pO3ZhciBxYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07cWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07dmFyIHJjPWZ1bmN0aW9uKGEpe3RoaXMuSnM9YX07ZnVuY3Rpb24gc2MoYSl7cmV0dXJuIG5ldyByYyhmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgdGM9W3NjKCJkYXRhIiksc2MoImh0dHAiKSxzYygiaHR0cHMiKSxzYygibWFpbHRvIiksc2MoImZ0cCIpLG5ldyByYyhmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldO2Z1bmN0aW9uIHVjKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD90YzpiO2lmKGEgaW5zdGFuY2VvZiBxYylyZXR1cm4gYTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkIGluc3RhbmNlb2YgcmMmJmQuSnMoYSkpcmV0dXJuIG5ldyBxYyhhKX19dmFyIHZjPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7CmZ1bmN0aW9uIHdjKGEpe3ZhciBiO2lmKGEgaW5zdGFuY2VvZiBxYylpZihhIGluc3RhbmNlb2YgcWMpYj1hLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7ZWxzZSBiPXZjLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGJ9O2Z1bmN0aW9uIHhjKGEsYil7dmFyIGM9d2MoYik7YyE9PXZvaWQgMCYmKGEuYWN0aW9uPWMpfTtmdW5jdGlvbiB5YyhhLGIpe3Rocm93IEVycm9yKGI9PT12b2lkIDA/InVuZXhwZWN0ZWQgdmFsdWUgIithKyIhIjpiKTt9O3ZhciB6Yz1mdW5jdGlvbihhKXt0aGlzLkg9YX07emMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07dmFyIEJjPWZ1bmN0aW9uKCl7dGhpcy5IPUFjWzBdLnRvTG93ZXJDYXNlKCl9O0JjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2Z1bmN0aW9uIENjKGEsYil7dmFyIGM9W25ldyBCY107aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCIiKTt2YXIgZD1jLm1hcChmdW5jdGlvbihmKXt2YXIgZztpZihmIGluc3RhbmNlb2YgQmMpZz1mLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGd9KSxlPWIudG9Mb3dlckNhc2UoKTtpZihkLmV2ZXJ5KGZ1bmN0aW9uKGYpe3JldHVybiBlLmluZGV4T2YoZikhPT0wfSkpdGhyb3cgRXJyb3IoJ0F0dHJpYnV0ZSAiJytiKyciIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgYWxsb3dlZCBwcmVmaXhlcy4nKTthLnNldEF0dHJpYnV0ZShiLCJ0cnVlIil9O3ZhciBEYz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIHR5cGVvZiBiIT09InN0cmluZyJ8fGIubGVuZ3RoIT0xPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OyJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwKIklOUFVUIl0pO2Z1bmN0aW9uIEVjKGEpe3JldHVybiBhPT09bnVsbD8ibnVsbCI6YT09PXZvaWQgMD8idW5kZWZpbmVkIjphfTt2YXIgQT13aW5kb3csRmM9W10sR2M9d2luZG93Lmhpc3RvcnksQj1kb2N1bWVudCxIYz1uYXZpZ2F0b3I7ZnVuY3Rpb24gSWMoKXt2YXIgYTt0cnl7YT1IYy5zZXJ2aWNlV29ya2VyfWNhdGNoKGIpe3JldHVybn1yZXR1cm4gYX12YXIgSmM9Qi5jdXJyZW50U2NyaXB0LEtjPUpjJiZKYy5zcmM7ZnVuY3Rpb24gTWMoYSxiKXt2YXIgYz1BLGQ9Y1thXTtjW2FdPWQ9PT12b2lkIDA/YjpkO3JldHVybiBjW2FdfWZ1bmN0aW9uIE5jKGEpe3JldHVybihIYy51c2VyQWdlbnR8fCIiKS5pbmRleE9mKGEpIT09LTF9ZnVuY3Rpb24gT2MoKXtyZXR1cm4gTmMoIkZpcmVmb3giKXx8TmMoIkZ4aU9TIil9ZnVuY3Rpb24gUGMoKXtyZXR1cm4oTmMoIkdTQSIpfHxOYygiR29vZ2xlQXBwIikpJiYoTmMoImlQaG9uZSIpfHxOYygiaVBhZCIpKX1mdW5jdGlvbiBRYygpe3JldHVybiBOYygiRWRnLyIpfHxOYygiRWRnQS8iKXx8TmMoIkVkZ2lPUy8iKX0KdmFyIFJjPXthc3luYzoxLG5vbmNlOjEsb25lcnJvcjoxLG9ubG9hZDoxLHNyYzoxLHR5cGU6MX0sU2M9e2hlaWdodDoxLG9ubG9hZDoxLHNyYzoxLHN0eWxlOjEsd2lkdGg6MX07ZnVuY3Rpb24gVGMoYSxiLGMpe2ImJkdiKGIsZnVuY3Rpb24oZCxlKXtkPWQudG9Mb3dlckNhc2UoKTtjLmhhc093blByb3BlcnR5KGQpfHxhLnNldEF0dHJpYnV0ZShkLGUpfSl9CmZ1bmN0aW9uIFVjKGEsYixjLGQsZSl7dmFyIGY9Qi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtUYyhmLGQsUmMpO2YudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtmLmFzeW5jPWQmJmQuYXN5bmM9PT0hMT8hMTohMDt2YXIgZztnPWpjKEVjKGEpKTtmLnNyYz1rYyhnKTt2YXIgaCxsPWYub3duZXJEb2N1bWVudDtsPWw9PT12b2lkIDA/ZG9jdW1lbnQ6bDt2YXIgbixwLHE9KHA9KG49bCkucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOnAuY2FsbChuLCJzY3JpcHRbbm9uY2VdIik7KGg9cT09bnVsbD8iIjpxLm5vbmNlfHxxLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiIpJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGgpO2ImJihmLm9ubG9hZD1iKTtjJiYoZi5vbmVycm9yPWMpO2U/ZS5hcHBlbmRDaGlsZChmKTpWYy5CcyhmKTtyZXR1cm4gZn0KZnVuY3Rpb24gV2MoKXtpZihLYyl7dmFyIGE9S2MudG9Mb3dlckNhc2UoKTtpZihhLmluZGV4T2YoImh0dHBzOi8vIik9PT0wKXJldHVybiAyO2lmKGEuaW5kZXhPZigiaHR0cDovLyIpPT09MClyZXR1cm4gM31yZXR1cm4gMX1mdW5jdGlvbiBYYyhhLGIsYyxkLGUsZil7Zj1mPT09dm9pZCAwPyEwOmY7dmFyIGc9ZSxoPSExO2d8fChnPUIuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaD0hMCk7VGMoZyxjLFNjKTtkJiZHYihkLGZ1bmN0aW9uKG4scCl7Zy5kYXRhc2V0W25dPXB9KTtmJiYoZy5oZWlnaHQ9IjAiLGcud2lkdGg9IjAiLGcuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iKTthIT09dm9pZCAwJiYoZy5zcmM9YSk7aWYoaCl7dmFyIGw9Qi5ib2R5JiZCLmJvZHkubGFzdENoaWxkfHxCLmJvZHl8fEIuaGVhZDtsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGcsbCl9YiYmKGcub25sb2FkPWIpO3JldHVybiBnfQpmdW5jdGlvbiBaYygpe3JldHVybiBWYy5Fci5hcHBseShWYyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfWZ1bmN0aW9uICRjKGEsYixjLGQpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhIWQpfWZ1bmN0aW9uIGFkKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIGJkKGEpe0Euc2V0VGltZW91dChhLDApfWZ1bmN0aW9uIGNkKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQsZT0oZD1BKS5zZXRJbnRlcnZhbC5hcHBseShkLFthLGJdLmNvbmNhdCh3KGMpKSk7RmMucHVzaChlKTtyZXR1cm4gZX0KZnVuY3Rpb24gZGQoYSl7dmFyIGI9QTt5YihiLnF1ZXVlTWljcm90YXNrKT9iLnF1ZXVlTWljcm90YXNrKGEpOnliKGIuUHJvbWlzZSkmJmIuUHJvbWlzZS5yZXNvbHZlP2IuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe2EoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk6YmQoYSl9ZnVuY3Rpb24gZWQoYSxiKXtyZXR1cm4gYSYmYiYmYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXNbYl0/YS5hdHRyaWJ1dGVzW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24gZmQoYSl7dmFyIGI9YS5pbm5lclRleHR8fGEudGV4dENvbnRlbnR8fCIiO2ImJmIhPT0iICImJihiPWIucmVwbGFjZSgvXltcc1x4YTBdKy9nLCIiKSxiPWIucmVwbGFjZSgvW1xzXHhhMF0rJC9nLCIiKSk7YiYmKGI9Yi5yZXBsYWNlKC8oXHhhMCt8XHN7Mix9fFxufFxyXHQpL2csIiAiKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGdkKGEpe3ZhciBiPUIuY3JlYXRlRWxlbWVudCgiZGl2IiksYz1iLGQsZT1FYygiQTxkaXY+IithKyI8L2Rpdj4iKSxmPWhjKCksZz1mP2YuY3JlYXRlSFRNTChlKTplO2Q9bmV3IHpjKGcpO2lmKGMubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYy50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7dmFyIGg7aWYoZCBpbnN0YW5jZW9mIHpjKWg9ZC5IO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO2MuaW5uZXJIVE1MPWg7Yj1iLmxhc3RDaGlsZDtmb3IodmFyIGw9W107YiYmYi5maXJzdENoaWxkOylsLnB1c2goYi5yZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpKTtyZXR1cm4gbH0KZnVuY3Rpb24gaGQoYSxiLGMpe2M9Y3x8MTAwO2Zvcih2YXIgZD17fSxlPTA7ZTxiLmxlbmd0aDtlKyspZFtiW2VdXT0hMDtmb3IodmFyIGY9YSxnPTA7ZiYmZzw9YztnKyspe2lmKGRbU3RyaW5nKGYudGFnTmFtZSkudG9Mb3dlckNhc2UoKV0pcmV0dXJuIGY7Zj1mLnBhcmVudEVsZW1lbnR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWQoYSxiLGMpe3ZhciBkO3RyeXtkPUhjLnNlbmRCZWFjb24mJkhjLnNlbmRCZWFjb24oYSl9Y2F0Y2goZSl7c2IoIlRBR0dJTkciLDE1KX1kP2I9PW51bGx8fGIoKTpaYyhhLGIsYyl9ZnVuY3Rpb24gamQoYSxiKXt0cnl7aWYoSGMuc2VuZEJlYWNvbiE9PXZvaWQgMClyZXR1cm4gSGMuc2VuZEJlYWNvbihhLGIpfWNhdGNoKGMpe3NiKCJUQUdHSU5HIiwxNSl9cmV0dXJuITF9ZnVuY3Rpb24ga2QoKXtyZXR1cm4gSGMuc2VuZEJlYWNvbiE9PXZvaWQgMH0KdmFyIGxkPXtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixrZWVwYWxpdmU6ITAsbWV0aG9kOiJQT1NUIixtb2RlOiJuby1jb3JzIixyZWRpcmVjdDoiZm9sbG93In07CmZ1bmN0aW9uIG1kKGEsYixjLGQsZSl7aWYobmQoKSl7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7YiYmKGYuYm9keT1iKTtjJiYoYy5hdHRyaWJ1dGlvblJlcG9ydGluZyYmKGYuYXR0cmlidXRpb25SZXBvcnRpbmc9Yy5hdHRyaWJ1dGlvblJlcG9ydGluZyksYy5icm93c2luZ1RvcGljcyE9PXZvaWQgMCYmKGYuYnJvd3NpbmdUb3BpY3M9Yy5icm93c2luZ1RvcGljcyksYy5jcmVkZW50aWFscyYmKGYuY3JlZGVudGlhbHM9Yy5jcmVkZW50aWFscyksYy5rZWVwYWxpdmUhPT12b2lkIDAmJihmLmtlZXBhbGl2ZT1jLmtlZXBhbGl2ZSksYy5tZXRob2QmJihmLm1ldGhvZD1jLm1ldGhvZCksYy5tb2RlJiYoZi5tb2RlPWMubW9kZSkpO3RyeXt2YXIgZz1BLmZldGNoKGEsZik7aWYoZylyZXR1cm4gZy50aGVuKGZ1bmN0aW9uKGwpe2wmJihsLm9rfHxsLnN0YXR1cz09PTApP2Q9PW51bGx8fGQoKTplPT1udWxsfHxlKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PQpudWxsfHxlKCl9KSwhMH1jYXRjaChsKXt9fWlmKChjPT1udWxsPzA6Yy5RZyl8fChjPT1udWxsPzA6Yy5jcmVkZW50aWFscykmJmMuY3JlZGVudGlhbHMhPT0iaW5jbHVkZSIpcmV0dXJuIGU9PW51bGx8fGUoKSwhMTtpZihiKXt2YXIgaD1qZChhLGIpO2g/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKTtyZXR1cm4gaH1WYy53dChhLGQsZSk7cmV0dXJuITB9ZnVuY3Rpb24gbmQoKXtyZXR1cm4geWIoQS5mZXRjaCl9ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hW2JdO2MmJnR5cGVvZiBjLmFuaW1WYWw9PT0ic3RyaW5nIiYmKGM9Yy5hbmltVmFsKTtyZXR1cm4gY31mdW5jdGlvbiBwZCgpe3ZhciBhPUEucGVyZm9ybWFuY2U7aWYoYSYmeWIoYS5ub3cpKXJldHVybiBhLm5vdygpfQpmdW5jdGlvbiBxZCgpe3ZhciBhLGI9QS5wZXJmb3JtYW5jZTtpZihiJiZiLmdldEVudHJpZXNCeVR5cGUpdHJ5e3ZhciBjPWIuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2MmJmMubGVuZ3RoPjAmJihhPWNbMF0udHlwZSl9Y2F0Y2goZCl7cmV0dXJuImUifWlmKCFhKXJldHVybiJ1Ijtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJuIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJoIjtjYXNlICJyZWxvYWQiOnJldHVybiJyIjtjYXNlICJwcmVyZW5kZXIiOnJldHVybiJwIjtkZWZhdWx0OnJldHVybiJ4In19ZnVuY3Rpb24gcmQoKXtyZXR1cm4gQS5wZXJmb3JtYW5jZXx8dm9pZCAwfWZ1bmN0aW9uIHNkKCl7dmFyIGE9QS53ZWJQaXhlbHNNYW5hZ2VyO3JldHVybiBhP2EuY3JlYXRlU2hvcGlmeUV4dGVuZCE9PXZvaWQgMDohMX0KdmFyIFZjPXtFcjpmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgSW1hZ2UoMSwxKTtUYyhlLGQse30pO2Uub25sb2FkPWZ1bmN0aW9uKCl7ZS5vbmxvYWQ9bnVsbDtiJiZiKCl9O2Uub25lcnJvcj1mdW5jdGlvbigpe2Uub25lcnJvcj1udWxsO2MmJmMoKX07ZS5zcmM9YTtyZXR1cm4gZX0sQnM6ZnVuY3Rpb24oYSl7dmFyIGI9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF18fEIuYm9keXx8Qi5oZWFkO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxiKX0sd3Q6aWR9O2Z1bmN0aW9uIHRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdWQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT09PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB3ZChhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO3JldHVybiBTdHJpbmcoYykuaW5kZXhPZihTdHJpbmcoZCkpPi0xfWZ1bmN0aW9uIHhkKGEsYil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYSkpLGQ9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYikpO3JldHVybiBjLnN1YnN0cmluZygwLGQubGVuZ3RoKT09PWR9CmZ1bmN0aW9uIHlkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7c3dpdGNoKGMpe2Nhc2UgInBhZ2VMb2NhdGlvbiI6dmFyIGU9QS5sb2NhdGlvbi5ocmVmO2QgaW5zdGFuY2VvZiBrYiYmZC5nZXQoInN0cmlwUHJvdG9jb2wiKSYmKGU9ZS5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSk7cmV0dXJuIGV9fTsvKgogalF1ZXJ5IChjKSAyMDA1LCAyMDEyIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGpxdWVyeS5vcmcvbGljZW5zZS4KKi8KdmFyIHpkPS9cW29iamVjdCAoQm9vbGVhbnxOdW1iZXJ8U3RyaW5nfEZ1bmN0aW9ufEFycmF5fERhdGV8UmVnRXhwKVxdLyxBZD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBTdHJpbmcoYSk7dmFyIGI9emQuZXhlYyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoT2JqZWN0KGEpKSk7cmV0dXJuIGI/YlsxXS50b0xvd2VyQ2FzZSgpOiJvYmplY3QifSxCZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoT2JqZWN0KGEpLGIpfSxDZD1mdW5jdGlvbihhKXtpZighYXx8QWQoYSkhPSJvYmplY3QifHxhLm5vZGVUeXBlfHxhPT1hLndpbmRvdylyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIUJkKGEsImNvbnN0cnVjdG9yIikmJiFCZChhLmNvbnN0cnVjdG9yLnByb3RvdHlwZSwiaXNQcm90b3R5cGVPZiIpKXJldHVybiExfWNhdGNoKGMpe3JldHVybiExfWZvcih2YXIgYiBpbiBhKTtyZXR1cm4gYj09PXZvaWQgMHx8CkJkKGEsYil9LEVkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8KEFkKGEpPT0iYXJyYXkiP1tdOnt9KSxkO2ZvcihkIGluIGEpaWYoQmQoYSxkKSl7dmFyIGU9YVtkXTtBZChlKT09ImFycmF5Ij8oQWQoY1tkXSkhPSJhcnJheSImJihjW2RdPVtdKSxjW2RdPUVkKGUsY1tkXSkpOkNkKGUpPyhDZChjW2RdKXx8KGNbZF09e30pLGNbZF09RWQoZSxjW2RdKSk6Y1tkXT1lfXJldHVybiBjfTtmdW5jdGlvbiBGZChhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIiYmYT49MCYmaXNGaW5pdGUoYSkmJmElMT09PTB8fHR5cGVvZiBhPT09InN0cmluZyImJmFbMF0hPT0iLSImJmE9PT0iIitwYXJzZUludChhKX07dmFyIEdkPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO3RoaXMubGE9bmV3IFVhO3RoaXMudmFsdWVzPVtdO3RoaXMuTmE9ITE7Zm9yKHZhciBiIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShiKSYmKEZkKGIpP3RoaXMudmFsdWVzW051bWJlcihiKV09YVtOdW1iZXIoYildOnRoaXMubGEuc2V0KGIsYVtiXSkpfTtrPUdkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKGEpe2lmKGEmJmEuaW5kZXhPZih0aGlzKT49MClyZXR1cm4iIjtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy52YWx1ZXMubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy52YWx1ZXNbY107ZD09PW51bGx8fGQ9PT12b2lkIDA/Yi5wdXNoKCIiKTpkIGluc3RhbmNlb2YgR2Q/KGE9YXx8W10sYS5wdXNoKHRoaXMpLGIucHVzaChkLnRvU3RyaW5nKGEpKSxhLnBvcCgpKTpiLnB1c2goU3RyaW5nKGQpKX1yZXR1cm4gYi5qb2luKCIsIil9OwprLnNldD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLk5hKWlmKGE9PT0ibGVuZ3RoIil7aWYoIUZkKGIpKXRocm93IGNiKEVycm9yKCJSYW5nZUVycm9yOiBMZW5ndGggcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIuIikpO3RoaXMudmFsdWVzLmxlbmd0aD1OdW1iZXIoYil9ZWxzZSBGZChhKT90aGlzLnZhbHVlc1tOdW1iZXIoYSldPWI6dGhpcy5sYS5zZXQoYSxiKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0ibGVuZ3RoIj90aGlzLmxlbmd0aCgpOkZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV06dGhpcy5sYS5nZXQoYSl9O2subGVuZ3RoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aH07ay5GYT1mdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmxhLkZhKCksYj0wO2I8dGhpcy52YWx1ZXMubGVuZ3RoO2IrKyl0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShiKSYmYS5wdXNoKFN0cmluZyhiKSk7cmV0dXJuIGF9OwprLmhjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuaGMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2godGhpcy52YWx1ZXNbYl0pO3JldHVybiBhfTtrLmZjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuZmMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goW1N0cmluZyhiKSx0aGlzLnZhbHVlc1tiXV0pO3JldHVybiBhfTtrLnJlbW92ZT1mdW5jdGlvbihhKXtGZChhKT9kZWxldGUgdGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMucG9wKCl9O2sucHVzaD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wdXNoLmFwcGx5KHRoaXMudmFsdWVzLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9O2suc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMuc2hpZnQoKX07Cmsuc3BsaWNlPWZ1bmN0aW9uKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpO3JldHVybiBiPT09dm9pZCAwJiZjLmxlbmd0aD09PTA/bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZShhKSk6bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZS5hcHBseSh0aGlzLnZhbHVlcyxbYSxifHwwXS5jb25jYXQodyhjKSkpKX07ay51bnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnVuc2hpZnQuYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIEZkKGEpJiZ0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShhKXx8dGhpcy5sYS5oYXMoYSl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwO09iamVjdC5mcmVlemUodGhpcy52YWx1ZXMpfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9OwpmdW5jdGlvbiBIZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGgoKTtjKyspYS5oYXMoYykmJihiW2NdPWEuZ2V0KGMpKTtyZXR1cm4gYn07dmFyIElkPWZ1bmN0aW9uKGEsYil7dGhpcy5mdW5jdGlvbk5hbWU9YTt0aGlzLmllPWI7dGhpcy5sYT1uZXcgVWE7dGhpcy5OYT0hMX07az1JZC5wcm90b3R5cGU7ay50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bmN0aW9uTmFtZX07ay5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldEtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEdkKHRoaXMuRmEoKSl9O2suaW52b2tlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmllLmNhbGwuYXBwbHkodGhpcy5pZSxbbmV3IEpkKHRoaXMsYSldLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKX07ay5hcHBseT1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmllLmFwcGx5KG5ldyBKZCh0aGlzLGEpLGIpfTtrLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTt0cnl7cmV0dXJuIHRoaXMuaW52b2tlLmFwcGx5KHRoaXMsW2FdLmNvbmNhdCh3KGIpKSl9Y2F0Y2goYyl7fX07CmsuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTt2YXIgS2Q9ZnVuY3Rpb24oYSxiKXtJZC5jYWxsKHRoaXMsYSxiKX07d2EoS2QsSWQpO3ZhciBMZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShMZCxJZCk7dmFyIEpkPWZ1bmN0aW9uKGEsYil7dGhpcy5pZT1hO3RoaXMuVD1ifTsKSmQucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuVDtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9mYihiLGEpOmF9O0pkLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWUuZ2V0TmFtZSgpfTtKZC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ULmplKCl9O3ZhciBNZD1mdW5jdGlvbigpe3RoaXMubWFwPW5ldyBNYXB9O01kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm1hcC5zZXQoYSxiKX07TWQucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5tYXAuZ2V0KGEpfTt2YXIgTmQ9ZnVuY3Rpb24oKXt0aGlzLmtleXM9W107dGhpcy52YWx1ZXM9W119O05kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmtleXMucHVzaChhKTt0aGlzLnZhbHVlcy5wdXNoKGIpfTtOZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMua2V5cy5pbmRleE9mKGEpO2lmKGI+LTEpcmV0dXJuIHRoaXMudmFsdWVzW2JdfTtmdW5jdGlvbiBPZCgpe3RyeXtyZXR1cm4gTWFwP25ldyBNZDpuZXcgTmR9Y2F0Y2goYSl7cmV0dXJuIG5ldyBOZH19O3ZhciBQZD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUGQpcmV0dXJuIGE7dmFyIGI7YTppZihhPT12b2lkIDB8fEFycmF5LmlzQXJyYXkoYSl8fENkKGEpKWI9ITA7ZWxzZXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpjYXNlICJmdW5jdGlvbiI6Yj0hMDticmVhayBhfWI9ITF9aWYoYil0aHJvdyBFcnJvcigiVHlwZSBvZiBnaXZlbiB2YWx1ZSBoYXMgYW4gZXF1aXZhbGVudCBQaXhpZSB0eXBlLiIpO3RoaXMudmFsdWU9YX07UGQucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O1BkLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy52YWx1ZSl9O3ZhciBTZD1mdW5jdGlvbihhKXt0aGlzLnByb21pc2U9YTt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhO3RoaXMubGEuc2V0KCJ0aGVuIixSZCh0aGlzKSk7dGhpcy5sYS5zZXQoImNhdGNoIixSZCh0aGlzLCEwKSk7dGhpcy5sYS5zZXQoImZpbmFsbHkiLFJkKHRoaXMsITEsITApKX07az1TZC5wcm90b3R5cGU7ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9Owp2YXIgUmQ9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMTpiO2M9Yz09PXZvaWQgMD8hMTpjO3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oZCxlKXtiJiYoZT1kLGQ9dm9pZCAwKTtjJiYoZT1kKTtkIGluc3RhbmNlb2YgS2R8fChkPXZvaWQgMCk7ZSBpbnN0YW5jZW9mIEtkfHwoZT12b2lkIDApO3ZhciBmPXRoaXMuVC53YigpLGc9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gYz8obC5pbnZva2UoZiksYS5wcm9taXNlKTpsLmludm9rZShmLG4pfWNhdGNoKHApe3JldHVybiBQcm9taXNlLnJlamVjdChwIGluc3RhbmNlb2YgRXJyb3I/bmV3IFBkKHApOlN0cmluZyhwKSl9fX0saD1hLnByb21pc2UudGhlbihkJiZnKGQpLGUmJmcoZSkpO3JldHVybiBuZXcgU2QoaCl9KX07U2QucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07U2QucHJvdG90eXBlLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O2Z1bmN0aW9uIFRkKGEsYixjKXt2YXIgZD1PZCgpLGU9ZnVuY3Rpb24oZyxoKXtmb3IodmFyIGw9Zy5GYSgpLG49MDtuPGwubGVuZ3RoO24rKyloW2xbbl1dPWYoZy5nZXQobFtuXSkpfSxmPWZ1bmN0aW9uKGcpe2lmKGc9PT1udWxsfHxnPT09dm9pZCAwKXJldHVybiBnO3ZhciBoPWQuZ2V0KGcpO2lmKGgpcmV0dXJuIGg7aWYoZyBpbnN0YW5jZW9mIEdkKXt2YXIgbD1bXTtkLnNldChnLGwpO2Zvcih2YXIgbj1nLkZhKCkscD0wO3A8bi5sZW5ndGg7cCsrKWxbbltwXV09ZihnLmdldChuW3BdKSk7cmV0dXJuIGx9aWYoZyBpbnN0YW5jZW9mIFNkKXJldHVybiBnLnByb21pc2UudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gVGQodSxiLDEpfSxmdW5jdGlvbih1KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoVGQodSxiLDEpKX0pO2lmKGcgaW5zdGFuY2VvZiBrYil7dmFyIHE9e307ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9aWYoZyBpbnN0YW5jZW9mIEtkKXt2YXIgcj1mdW5jdGlvbigpe2Zvcih2YXIgdT0KW10sdj0wO3Y8YXJndW1lbnRzLmxlbmd0aDt2KyspdVt2XT1VZChhcmd1bWVudHNbdl0sYixjKTt2YXIgeD1uZXcgaGIoYj9iLmplKCk6bmV3IFdhKTtiJiZ4LnVlKGIueGIoKSk7cmV0dXJuIGYoZy5hcHBseSh4LHUpKX07ZC5zZXQoZyxyKTtlKGcscik7cmV0dXJuIHJ9dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2Nhc2UgMzp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGcgaW5zdGFuY2VvZiBQZCYmdClyZXR1cm4gZy5nZXRWYWx1ZSgpO3N3aXRjaCh0eXBlb2YgZyl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgInVuZGVmaW5lZCI6cmV0dXJuIGc7Y2FzZSAib2JqZWN0IjppZihnPT09Cm51bGwpcmV0dXJuIG51bGx9fTtyZXR1cm4gZihhKX0KZnVuY3Rpb24gVWQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbCBpbiBnKWcuaGFzT3duUHJvcGVydHkobCkmJmguc2V0KGwsZihnW2xdKSl9LGY9ZnVuY3Rpb24oZyl7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihBcnJheS5pc0FycmF5KGcpfHxIYihnKSl7dmFyIGw9bmV3IEdkO2Quc2V0KGcsbCk7Zm9yKHZhciBuIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShuKSYmbC5zZXQobixmKGdbbl0pKTtyZXR1cm4gbH1pZihDZChnKSl7dmFyIHA9bmV3IGtiO2Quc2V0KGcscCk7ZShnLHApO3JldHVybiBwfWlmKHR5cGVvZiBnPT09ImZ1bmN0aW9uIil7dmFyIHE9bmV3IEtkKCIiLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PU9hLmFwcGx5KDAsYXJndW1lbnRzKSx2PVtdLHg9MDt4PHUubGVuZ3RoO3grKyl2W3hdPVRkKHRoaXMuZXZhbHVhdGUodVt4XSksYixjKTtyZXR1cm4gZih0aGlzLlQuUGooKShnLGcsdikpfSk7ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9dmFyIHI9dHlwZW9mIGc7aWYoZz09PW51bGx8fHI9PT0ic3RyaW5nInx8cj09PSJudW1iZXIifHxyPT09ImJvb2xlYW4iKXJldHVybiBnO3ZhciB0PSExO3N3aXRjaChjKXtjYXNlIDE6dD0hMDticmVhaztjYXNlIDI6dD0hMTticmVhaztkZWZhdWx0On1pZihnIT09dm9pZCAwJiZ0KXJldHVybiBuZXcgUGQoZyl9O3JldHVybiBmKGEpfTt2YXIgVmQ9e3N1cHBvcnRlZE1ldGhvZHM6ImNvbmNhdCBldmVyeSBmaWx0ZXIgZm9yRWFjaCBoYXNPd25Qcm9wZXJ0eSBpbmRleE9mIGpvaW4gbGFzdEluZGV4T2YgbWFwIHBvcCBwdXNoIHJlZHVjZSByZWR1Y2VSaWdodCByZXZlcnNlIHNoaWZ0IHNsaWNlIHNvbWUgc29ydCBzcGxpY2UgdW5zaGlmdCB0b1N0cmluZyIuc3BsaXQoIiAiKSxjb25jYXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9MDtjPHRoaXMubGVuZ3RoKCk7YysrKWIucHVzaCh0aGlzLmdldChjKSk7Zm9yKHZhciBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKylpZihhcmd1bWVudHNbZF1pbnN0YW5jZW9mIEdkKWZvcih2YXIgZT1hcmd1bWVudHNbZF0sZj0wO2Y8ZS5sZW5ndGgoKTtmKyspYi5wdXNoKGUuZ2V0KGYpKTtlbHNlIGIucHVzaChhcmd1bWVudHNbZF0pO3JldHVybiBuZXcgR2QoYil9LGV2ZXJ5OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmCmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJiFiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcykpcmV0dXJuITE7cmV0dXJuITB9LGZpbHRlcjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9W10sZT0wO2U8dGhpcy5sZW5ndGgoKSYmZTxjO2UrKyl0aGlzLmhhcyhlKSYmYi5pbnZva2UoYSx0aGlzLmdldChlKSxlLHRoaXMpJiZkLnB1c2godGhpcy5nZXQoZSkpO3JldHVybiBuZXcgR2QoZCl9LGZvckVhY2g6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiZkPGM7ZCsrKXRoaXMuaGFzKGQpJiZiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcyl9LGhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaGFzKGIpfSxpbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9Yz09PXZvaWQgMD8wOk51bWJlcihjKTtlPDAmJihlPU1hdGgubWF4KGQrZSwwKSk7Zm9yKHZhciBmPQplO2Y8ZDtmKyspaWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sam9pbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDx0aGlzLmxlbmd0aCgpO2QrKyljLnB1c2godGhpcy5nZXQoZCkpO3JldHVybiBjLmpvaW4oYil9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9ZC0xO2MhPT12b2lkIDAmJihlPWM8MD9kK2M6TWF0aC5taW4oYyxlKSk7Zm9yKHZhciBmPWU7Zj49MDtmLS0paWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sbWFwOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiYoZFtlXT1iLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykpO3JldHVybiBuZXcgR2QoZCl9LHBvcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnBvcCgpfSxwdXNoOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2guYXBwbHkodGhpcywKdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX0scmVkdWNlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj0wO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlIG9uIExpc3Qgd2l0aCBubyBlbGVtZW50cy4iKSk7Zm9yKHZhciBnPTA7ZzxkO2crKylpZih0aGlzLmhhcyhnKSl7ZT10aGlzLmdldChnKTtmPWcrMTticmVha31pZihnPT09ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aDxkO2grKyl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZWR1Y2VSaWdodDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKSxlLGY9ZC0xO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTsKZm9yKHZhciBnPTE7Zzw9ZDtnKyspaWYodGhpcy5oYXMoZC1nKSl7ZT10aGlzLmdldChkLWcpO2Y9ZC0oZysxKTticmVha31pZihnPmQpdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aD49MDtoLS0pdGhpcy5oYXMoaCkmJihlPWIuaW52b2tlKGEsZSx0aGlzLmdldChoKSxoLHRoaXMpKTtyZXR1cm4gZX0scmV2ZXJzZTpmdW5jdGlvbigpe2Zvcih2YXIgYT1IZCh0aGlzKSxiPWEubGVuZ3RoLTEsYz0wO2I+PTA7Yi0tLGMrKylhLmhhc093blByb3BlcnR5KGIpP3RoaXMuc2V0KGMsYVtiXSk6dGhpcy5yZW1vdmUoYyk7cmV0dXJuIHRoaXN9LHNoaWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hpZnQoKX0sc2xpY2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCk7Yj09PXZvaWQgMCYmKGI9MCk7Yj1iPDA/TWF0aC5tYXgoZCtiLDApOk1hdGgubWluKGIsZCk7Yz1jPT09CnZvaWQgMD9kOmM8MD9NYXRoLm1heChkK2MsMCk6TWF0aC5taW4oYyxkKTtjPU1hdGgubWF4KGIsYyk7Zm9yKHZhciBlPVtdLGY9YjtmPGM7ZisrKWUucHVzaCh0aGlzLmdldChmKSk7cmV0dXJuIG5ldyBHZChlKX0sc29tZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMDtyZXR1cm4hMX0sc29ydDpmdW5jdGlvbihhLGIpe3ZhciBjPUhkKHRoaXMpO2I9PT12b2lkIDA/Yy5zb3J0KCk6Yy5zb3J0KGZ1bmN0aW9uKGUsZil7cmV0dXJuIE51bWJlcihiLmludm9rZShhLGUsZikpfSk7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspYy5oYXNPd25Qcm9wZXJ0eShkKT90aGlzLnNldChkLGNbZF0pOnRoaXMucmVtb3ZlKGQpO3JldHVybiB0aGlzfSxzcGxpY2U6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0aGlzLnNwbGljZS5hcHBseSh0aGlzLApbYixjXS5jb25jYXQodyhPYS5hcHBseSgzLGFyZ3VtZW50cykpKSl9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sdW5zaGlmdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51bnNoaWZ0LmFwcGx5KHRoaXMsdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX19O3ZhciBXZD17Y2hhckF0OjEsY29uY2F0OjEsaW5kZXhPZjoxLGxhc3RJbmRleE9mOjEsbWF0Y2g6MSxyZXBsYWNlOjEsc2VhcmNoOjEsc2xpY2U6MSxzcGxpdDoxLHN1YnN0cmluZzoxLHRvTG93ZXJDYXNlOjEsdG9Mb2NhbGVMb3dlckNhc2U6MSx0b1N0cmluZzoxLHRvVXBwZXJDYXNlOjEsdG9Mb2NhbGVVcHBlckNhc2U6MSx0cmltOjF9LFhkPW5ldyBUYSgiYnJlYWsiKSxZZD1uZXcgVGEoImNvbnRpbnVlIik7ZnVuY3Rpb24gWmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSt0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uICRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogTm9uLUxpc3QgYXJndW1lbnQgZ2l2ZW4gdG8gQXBwbHkgaW5zdHJ1Y3Rpb24uIik7aWYoZD09PW51bGx8fGQ9PT12b2lkIDApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogQ2FuJ3QgcmVhZCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7dmFyIGc9dHlwZW9mIGQ9PT0ibnVtYmVyIjtpZih0eXBlb2YgZD09PSJib29sZWFuInx8Zyl7aWYoZT09PSJ0b1N0cmluZyIpe2lmKGcmJmYubGVuZ3RoKCkpe3ZhciBoPVRkKGYuZ2V0KDApKTt0cnl7cmV0dXJuIGQudG9TdHJpbmcoaCl9Y2F0Y2godSl7fX1yZXR1cm4gZC50b1N0cmluZygpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZCsiLiIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uLiIpKTt9aWYodHlwZW9mIGQ9PT0KInN0cmluZyIpe2lmKFdkLmhhc093blByb3BlcnR5KGUpKXt2YXIgbD1UZChmLHZvaWQgMCwxKTtyZXR1cm4gVWQoZFtlXS5hcHBseShkLGwpLHRoaXMuVCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGQgaW5zdGFuY2VvZiBHZCl7aWYoZC5oYXMoZSkpe3ZhciBuPWQuZ2V0KFN0cmluZyhlKSk7aWYobiBpbnN0YW5jZW9mIEtkKXt2YXIgcD1IZChmKTtyZXR1cm4gbi5hcHBseSh0aGlzLlQscCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKFZkLnN1cHBvcnRlZE1ldGhvZHMuaW5kZXhPZihlKT49MCl7dmFyIHE9SGQoZik7cmV0dXJuIFZkW2VdLmNhbGwuYXBwbHkoVmRbZV0sW2QsdGhpcy5UXS5jb25jYXQodyhxKSkpfX1pZihkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkKXtpZihkLmhhcyhlKSl7dmFyIHI9ZC5nZXQoZSk7CmlmKHIgaW5zdGFuY2VvZiBLZCl7dmFyIHQ9SGQoZik7cmV0dXJuIHIuYXBwbHkodGhpcy5ULHQpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uIikpO31pZihlPT09InRvU3RyaW5nIilyZXR1cm4gZCBpbnN0YW5jZW9mIEtkP2QuZ2V0TmFtZSgpOmQudG9TdHJpbmcoKTtpZihlPT09Imhhc093blByb3BlcnR5IilyZXR1cm4gZC5oYXMoZi5nZXQoMCkpfWlmKGQgaW5zdGFuY2VvZiBQZCYmZT09PSJ0b1N0cmluZyIpcmV0dXJuIGQudG9TdHJpbmcoKTt0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBPYmplY3QgaGFzIG5vICciK2UrIicgcHJvcGVydHkuIikpO30KZnVuY3Rpb24gYmUoYSxiKXthPXRoaXMuZXZhbHVhdGUoYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigiSW52YWxpZCBrZXkgbmFtZSBnaXZlbiBmb3IgYXNzaWdubWVudC4iKTt2YXIgYz10aGlzLlQ7aWYoIWMuaGFzKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFzc2lnbiB0byB1bmRlZmluZWQgdmFsdWUgIitiKTt2YXIgZD10aGlzLmV2YWx1YXRlKGIpO2Muc2V0KGEsZCk7cmV0dXJuIGR9ZnVuY3Rpb24gY2UoKXt2YXIgYT1PYS5hcHBseSgwLGFyZ3VtZW50cyksYj10aGlzLlQud2IoKSxjPWViKGIsYSk7aWYoYyBpbnN0YW5jZW9mIFRhKXJldHVybiBjfWZ1bmN0aW9uIGRlKCl7cmV0dXJuIFhkfWZ1bmN0aW9uIGVlKGEpe2Zvcih2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiW2NdKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9fQpmdW5jdGlvbiBmZSgpe2Zvcih2YXIgYT10aGlzLlQsYj0wO2I8YXJndW1lbnRzLmxlbmd0aC0xO2IrPTIpe3ZhciBjPWFyZ3VtZW50c1tiXTtpZih0eXBlb2YgYz09PSJzdHJpbmciKXt2YXIgZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLlFoKGMsZCl9fX1mdW5jdGlvbiBnZSgpe3JldHVybiBZZH1mdW5jdGlvbiBoZShhLGIpe3JldHVybiBuZXcgVGEoYSx0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBpZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2Q9bmV3IEdkO2Zvcih2YXIgZT10aGlzLmV2YWx1YXRlKGIpLGY9MDtmPGUubGVuZ3RoO2YrKylkLnB1c2goZVtmXSk7dmFyIGc9WzUxLGEsZF0uY29uY2F0KHcoYykpO3RoaXMuVC5hZGQoYSx0aGlzLmV2YWx1YXRlKGcpKX1mdW5jdGlvbiBqZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpL3RoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGtlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYiksZT1jIGluc3RhbmNlb2YgUGQsZj1kIGluc3RhbmNlb2YgUGQ7cmV0dXJuIGV8fGY/ZSYmZj9jLmdldFZhbHVlKCk9PT1kLmdldFZhbHVlKCk6ITE6Yz09ZH1mdW5jdGlvbiBsZSgpe2Zvcih2YXIgYSxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylhPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTtyZXR1cm4gYX1mdW5jdGlvbiBtZShhLGIsYyxkKXtmb3IodmFyIGU9MDtlPGIoKTtlKyspe3ZhciBmPWEoYyhlKSksZz1lYihmLGQpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ319fQpmdW5jdGlvbiBuZShhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBiLmxlbmd0aH0sZnVuY3Rpb24oZil7cmV0dXJuIGZ9LGMpO2lmKGIgaW5zdGFuY2VvZiBrYnx8YiBpbnN0YW5jZW9mIFNkfHxiIGluc3RhbmNlb2YgR2R8fGIgaW5zdGFuY2VvZiBLZCl7dmFyIGQ9Yi5GYSgpLGU9ZC5sZW5ndGg7cmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gZX0sZnVuY3Rpb24oZil7cmV0dXJuIGRbZl19LGMpfX1mdW5jdGlvbiBvZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXtnLnNldChkLGgpO3JldHVybiBnfSxlLGYpfQpmdW5jdGlvbiBwZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5RaChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLmFkZChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHJlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHRlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gdWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9CmZ1bmN0aW9uIHNlKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihkKXtyZXR1cm4gYltkXX0sYyk7aWYoYiBpbnN0YW5jZW9mIEdkKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RoKCl9LGZ1bmN0aW9uKGQpe3JldHVybiBiLmdldChkKX0sYyk7dGhyb3cgY2IoRXJyb3IoIlRoZSB2YWx1ZSBpcyBub3QgaXRlcmFibGUuIikpO30KZnVuY3Rpb24gdmUoYSxiLGMsZCl7ZnVuY3Rpb24gZShxLHIpe2Zvcih2YXIgdD0wO3Q8Zi5sZW5ndGgoKTt0Kyspe3ZhciB1PWYuZ2V0KHQpO3IuYWRkKHUscS5nZXQodSkpfX12YXIgZj10aGlzLmV2YWx1YXRlKGEpO2lmKCEoZiBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiVHlwZUVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBGb3JMZXQgaW5zdHJ1Y3Rpb24uIik7dmFyIGc9dGhpcy5ULGg9dGhpcy5ldmFsdWF0ZShkKSxsPWcud2IoKTtmb3IoZShnLGwpO2ZiKGwsYik7KXt2YXIgbj1lYihsLGgpO2lmKG4gaW5zdGFuY2VvZiBUYSl7aWYobi50eXBlPT09ImJyZWFrIilicmVhaztpZihuLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gbn12YXIgcD1nLndiKCk7ZShsLHApO2ZiKHAsYyk7bD1wfX0KZnVuY3Rpb24gd2UoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD10aGlzLlQsZT10aGlzLmV2YWx1YXRlKGIpO2lmKCEoZSBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiRXJyb3I6IG5vbi1MaXN0IHZhbHVlIGdpdmVuIGZvciBGbiBhcmd1bWVudCBuYW1lcy4iKTtyZXR1cm4gbmV3IEtkKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz1kLndiKCk7Zy54YigpPT09dm9pZCAwJiZnLnVlKHRoaXMuVC54YigpKTtmb3IodmFyIGg9W10sbD0wO2w8Zi5sZW5ndGg7bCsrKXt2YXIgbj10aGlzLmV2YWx1YXRlKGZbbF0pO2hbbF09bn1mb3IodmFyIHA9ZS5nZXQoImxlbmd0aCIpLHE9MDtxPHA7cSsrKXE8aC5sZW5ndGg/Zy5hZGQoZS5nZXQocSksaFtxXSk6Zy5hZGQoZS5nZXQocSksdm9pZCAwKTtnLmFkZCgiYXJndW1lbnRzIixuZXcgR2QoaCkpO3ZhciByPWViKGcsYyk7aWYociBpbnN0YW5jZW9mIFRhKXJldHVybiByLnR5cGU9PT0KInJldHVybiI/ci5kYXRhOnJ9fSgpKX1mdW5jdGlvbiB4ZShhKXt2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9dGhpcy5UO2lmKHllJiYhYy5oYXMoYikpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKGIrIiBpcyBub3QgZGVmaW5lZC4iKTtyZXR1cm4gYy5nZXQoYil9CmZ1bmN0aW9uIHplKGEsYil7dmFyIGMsZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKTtpZihkPT09dm9pZCAwfHxkPT09bnVsbCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW5ub3QgcmVhZCBwcm9wZXJ0aWVzIG9mICIrZCsiIChyZWFkaW5nICciK2UrIicpIikpO2lmKGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkfHxkIGluc3RhbmNlb2YgR2R8fGQgaW5zdGFuY2VvZiBLZCljPWQuZ2V0KGUpO2Vsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIillPT09Imxlbmd0aCI/Yz1kLmxlbmd0aDpGZChlKSYmKGM9ZFtlXSk7ZWxzZSBpZihkIGluc3RhbmNlb2YgUGQpcmV0dXJuO3JldHVybiBjfWZ1bmN0aW9uIEFlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBCZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPj10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBDZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO2MgaW5zdGFuY2VvZiBQZCYmKGM9Yy5nZXRWYWx1ZSgpKTtkIGluc3RhbmNlb2YgUGQmJihkPWQuZ2V0VmFsdWUoKSk7cmV0dXJuIGM9PT1kfWZ1bmN0aW9uIERlKGEsYil7cmV0dXJuIUNlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIEVlKGEsYixjKXt2YXIgZD1bXTt0aGlzLmV2YWx1YXRlKGEpP2Q9dGhpcy5ldmFsdWF0ZShiKTpjJiYoZD10aGlzLmV2YWx1YXRlKGMpKTt2YXIgZT1lYih0aGlzLlQsZCk7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlfXZhciB5ZT0hMTsKZnVuY3Rpb24gRmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEdlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk8PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gSGUoKXtmb3IodmFyIGE9bmV3IEdkLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiXSk7YS5wdXNoKGMpfXJldHVybiBhfWZ1bmN0aW9uIEllKCl7Zm9yKHZhciBhPW5ldyBrYixiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKSksZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLnNldChjLGQpfXJldHVybiBhfWZ1bmN0aW9uIEplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkldGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gS2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSp0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIExlKGEpe3JldHVybi10aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE1lKGEpe3JldHVybiF0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE5lKGEsYil7cmV0dXJuIWtlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gUGUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBRZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSk7dGhpcy5ldmFsdWF0ZShiKTtyZXR1cm4gY31mdW5jdGlvbiBSZShhKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKX1mdW5jdGlvbiBTZSgpe3JldHVybiBPYS5hcHBseSgwLGFyZ3VtZW50cyl9ZnVuY3Rpb24gVGUoYSl7cmV0dXJuIG5ldyBUYSgicmV0dXJuIix0aGlzLmV2YWx1YXRlKGEpKX0KZnVuY3Rpb24gVWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCBzZXQgcHJvcGVydHkgIitlKyIgb2YgIitkKyIuIikpOyhkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIGtiKSYmZC5zZXQoU3RyaW5nKGUpLGYpO3JldHVybiBmfWZ1bmN0aW9uIFZlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSktdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gV2UoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighQXJyYXkuaXNBcnJheShlKXx8IUFycmF5LmlzQXJyYXkoZikpdGhyb3cgRXJyb3IoIkVycm9yOiBNYWxmb3JtZWQgc3dpdGNoIGluc3RydWN0aW9uLiIpO2Zvcih2YXIgZyxoPSExLGw9MDtsPGUubGVuZ3RoO2wrKylpZihofHxkPT09dGhpcy5ldmFsdWF0ZShlW2xdKSlpZihnPXRoaXMuZXZhbHVhdGUoZltsXSksZyBpbnN0YW5jZW9mIFRhKXt2YXIgbj1nLnR5cGU7aWYobj09PSJicmVhayIpcmV0dXJuO2lmKG49PT0icmV0dXJuInx8bj09PSJjb250aW51ZSIpcmV0dXJuIGd9ZWxzZSBoPSEwO2lmKGYubGVuZ3RoPT09ZS5sZW5ndGgrMSYmKGc9dGhpcy5ldmFsdWF0ZShmW2YubGVuZ3RoLTFdKSxnIGluc3RhbmNlb2YgVGEmJihnLnR5cGU9PT0icmV0dXJuInx8Zy50eXBlPT09ImNvbnRpbnVlIikpKXJldHVybiBnfQpmdW5jdGlvbiBYZShhLGIsYyl7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk/dGhpcy5ldmFsdWF0ZShiKTp0aGlzLmV2YWx1YXRlKGMpfWZ1bmN0aW9uIFllKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSk7cmV0dXJuIGIgaW5zdGFuY2VvZiBLZD8iZnVuY3Rpb24iOnR5cGVvZiBifWZ1bmN0aW9uIFplKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKyl7dmFyIGM9YXJndW1lbnRzW2JdO3R5cGVvZiBjIT09InN0cmluZyJ8fGEuYWRkKGMsdm9pZCAwKX19CmZ1bmN0aW9uICRlKGEsYixjLGQpe3ZhciBlPXRoaXMuZXZhbHVhdGUoZCk7aWYodGhpcy5ldmFsdWF0ZShjKSl7dmFyIGY9ZWIodGhpcy5ULGUpO2lmKGYgaW5zdGFuY2VvZiBUYSl7aWYoZi50eXBlPT09ImJyZWFrIilyZXR1cm47aWYoZi50eXBlPT09InJldHVybiIpcmV0dXJuIGZ9fWZvcig7dGhpcy5ldmFsdWF0ZShhKTspe3ZhciBnPWViKHRoaXMuVCxlKTtpZihnIGluc3RhbmNlb2YgVGEpe2lmKGcudHlwZT09PSJicmVhayIpYnJlYWs7aWYoZy50eXBlPT09InJldHVybiIpcmV0dXJuIGd9dGhpcy5ldmFsdWF0ZShiKX19ZnVuY3Rpb24gYWYoYSl7cmV0dXJufk51bWJlcih0aGlzLmV2YWx1YXRlKGEpKX1mdW5jdGlvbiBiZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk8PE51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBjZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX0KZnVuY3Rpb24gZGYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpPj4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGVmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKSZOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZmYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpXk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBnZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSl8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGhmKCl7fQpmdW5jdGlvbiBrZihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfWNhdGNoKGgpe2lmKCEoaCBpbnN0YW5jZW9mIGJiJiZoLlNuKSl0aHJvdyBoO3ZhciBlPXRoaXMuVC53YigpO2EhPT0iIiYmKGggaW5zdGFuY2VvZiBiYiYmKGg9aC52byksZS5hZGQoYSxuZXcgUGQoaCkpKTt2YXIgZj10aGlzLmV2YWx1YXRlKGMpLGc9ZWIoZSxmKTtpZihnIGluc3RhbmNlb2YgVGEpcmV0dXJuIGd9fWZ1bmN0aW9uIGxmKGEsYil7dmFyIGMsZDt0cnl7ZD10aGlzLmV2YWx1YXRlKGEpfWNhdGNoKGYpe2lmKCEoZiBpbnN0YW5jZW9mIGJiJiZmLlNuKSl0aHJvdyBmO2M9Zn12YXIgZT10aGlzLmV2YWx1YXRlKGIpO2lmKGUgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZTtpZihjKXRocm93IGM7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfTt2YXIgbmY9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGdiO21mKHRoaXMpfTtuZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ILnJrKGEpfTt2YXIgbWY9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYyxkKXt2YXIgZT1uZXcgTGQoU3RyaW5nKGMpLGQpO2UuWmEoKTt2YXIgZj1TdHJpbmcoYyk7YS5ILkguc2V0KGYsZSk7ZGIuc2V0KGYsZSl9O2IoIm1hcCIsSWUpO2IoImFuZCIsdGQpO2IoImNvbnRhaW5zIix3ZCk7YigiZXF1YWxzIix1ZCk7Yigib3IiLHZkKTtiKCJzdGFydHNXaXRoIix4ZCk7YigidmFyaWFibGUiLHlkKX07bmYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07dmFyIHBmPWZ1bmN0aW9uKCl7dGhpcy5LPSExO3RoaXMuSD1uZXcgZ2I7b2YodGhpcyk7dGhpcy5LPSEwfTtwZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gcWYodGhpcy5ILnJrKGEpKX07dmFyIHJmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gcWYoYS5ILkpxKGIsYykpfTtwZi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07CnZhciBvZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPVN0cmluZyhjKSxmPW5ldyBMZChlLGQpO2YuWmEoKTthLkguSC5zZXQoZSxmKTtkYi5zZXQoZSxmKX07YigwLFpkKTtiKDEsJGQpO2IoMixhZSk7YigzLGJlKTtiKDU2LGVmKTtiKDU3LGJmKTtiKDU4LGFmKTtiKDU5LGdmKTtiKDYwLGNmKTtiKDYxLGRmKTtiKDYyLGZmKTtiKDUzLGNlKTtiKDQsZGUpO2IoNSxlZSk7Yig2OCxrZik7Yig1MixmZSk7Yig2LGdlKTtiKDQ5LGhlKTtiKDcsSGUpO2IoOCxJZSk7Yig5LGVlKTtiKDUwLGllKTtiKDEwLGplKTtiKDEyLGtlKTtiKDEzLGxlKTtiKDY3LGxmKTtiKDUxLHdlKTtiKDQ3LG9lKTtiKDU0LHBlKTtiKDU1LHFlKTtiKDYzLHZlKTtiKDY0LHJlKTtiKDY1LHRlKTtiKDY2LHVlKTtiKDE1LHhlKTtiKDE2LHplKTtiKDE3LHplKTtiKDE4LEFlKTtiKDE5LEJlKTtiKDIwLENlKTtiKDIxLERlKTtiKDIyLEVlKTtiKDIzLEZlKTtiKDI0LEdlKTtiKDI1LEplKTtiKDI2LApLZSk7YigyNyxMZSk7YigyOCxNZSk7YigyOSxOZSk7Yig0NSxPZSk7YigzMCxQZSk7YigzMixRZSk7YigzMyxRZSk7YigzNCxSZSk7YigzNSxSZSk7Yig0NixTZSk7YigzNixUZSk7Yig0MyxVZSk7YigzNyxWZSk7YigzOCxXZSk7YigzOSxYZSk7Yig0MCxZZSk7Yig0NCxoZik7Yig0MSxaZSk7Yig0MiwkZSl9O3BmLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguamUoKX07cGYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07cGYucHJvdG90eXBlLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07CmZ1bmN0aW9uIHFmKGEpe2lmKGEgaW5zdGFuY2VvZiBUYXx8YSBpbnN0YW5jZW9mIEtkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgUGR8fGE9PT1udWxsfHxhPT09dm9pZCAwfHx0eXBlb2YgYT09PSJzdHJpbmcifHx0eXBlb2YgYT09PSJudW1iZXIifHx0eXBlb2YgYT09PSJib29sZWFuIilyZXR1cm4gYX07dmFyIHNmPWZ1bmN0aW9uKGEpe3RoaXMubWVzc2FnZT1hfTtmdW5jdGlvbiB0ZihhKXthLnF2PSEwO3JldHVybiBhfTt2YXIgdWY9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSx2Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLHdmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO2Z1bmN0aW9uIHhmKGEpe3ZhciBiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlthXTtyZXR1cm4gYj09PXZvaWQgMD9uZXcgc2YoIlZhbHVlICIrYSsiIGNhbiBub3QgYmUgZW5jb2RlZCBpbiB3ZWItc2FmZSBiYXNlNjQgZGljdGlvbmFyeS4iKTpifTtmdW5jdGlvbiB5ZihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiIxIjtjYXNlIDI6Y2FzZSA0OnJldHVybiIwIjtkZWZhdWx0OnJldHVybiItIn19O3ZhciB6Zj0vXlsxLTlhLXpBLVpfLV1bMS05YS1jXVsxLTlhLXZdXGQkLztmdW5jdGlvbiBBZihhLGIpe2Zvcih2YXIgYz0iIixkPSEwO2E+Nzspe3ZhciBlPWEmMzE7YT4+PTU7ZD9kPSExOmV8PTMyO2M9IiIreGYoZSkrY31hPDw9MjtkfHwoYXw9MzIpO3JldHVybiBjPSIiK3hmKGF8YikrY31mdW5jdGlvbiBCZihhLGIpe3JldHVybiBiPT09dm9pZCAwfHxiPT09MD8iIjoiIitBZihhLDEpK3hmKGIpfQpmdW5jdGlvbiBDZihhLGIpe3ZhciBjO3ZhciBkPWEuaGksZT1hLmJrO2Q9PT12b2lkIDA/Yz0iIjooZXx8KGU9MCksYz0iIitBZigxLDEpK3hmKGQ8PDJ8ZSkpO3ZhciBmPSI0IitjK0JmKDIsYS5xciksZyxoPWEuSW87Zz1oJiZ6Zi50ZXN0KGgpPyIiK0FmKDMsMikraDoiIjt2YXIgbDt2YXIgbj1hLmN0aWQ7aWYobiYmYil7dmFyIHA9QWYoNSwzKSxxPW4uc3BsaXQoIi0iKSxyPXFbMF0udG9VcHBlckNhc2UoKTtpZihyIT09IkdUTSImJnIhPT0iT1BUIilsPSIiO2Vsc2V7dmFyIHQ9cVsxXTtsPSIiK3AreGYoMSt0Lmxlbmd0aCkrKGEuTHN8fDApK3R9fWVsc2UgbD0iIjt2YXIgdT1hLmNhbm9uaWNhbElkLHY9YS5tYyx4PWEuenYseT1mK2crQmYoNCxhLkRvKStsK0JmKDYsYS5EdCkrKHU/IiIrQWYoNywzKSt4Zih1Lmxlbmd0aCkrdToiIikrKHY/IiIrQWYoOCwzKSt4Zih2Lmxlbmd0aCkrdjoiIikrKHg/IiIrQWYoOSwzKSt4Zih4Lmxlbmd0aCkreDoiIiksejt2YXIgQz1hLnpyO0M9CkM9PT12b2lkIDA/e306Qztmb3IodmFyIEQ9W10sST1tKE9iamVjdC5rZXlzKEMpKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtEW051bWJlcihOKV09Q1tOXX1pZihELmxlbmd0aCl7dmFyIFM9QWYoMTAsMyksVztpZihELmxlbmd0aD09PTApVz14ZigwKTtlbHNle2Zvcih2YXIgZWE9W10samE9MCxmYT0hMSxzYT0wO3NhPEQubGVuZ3RoO3NhKyspe2ZhPSEwO3ZhciBkYT1zYSU2O0Rbc2FdJiYoamF8PTE8PGRhKTtkYT09PTUmJihlYS5wdXNoKHhmKGphKSksamE9MCxmYT0hMSl9ZmEmJmVhLnB1c2goeGYoamEpKTtXPWVhLmpvaW4oIiIpfXZhciBtYT1XO3o9IiIrUyt4ZihtYS5sZW5ndGgpK21hfWVsc2Ugej0iIjt2YXIgUGE9YS5VcyxGYT1hLm50O3JldHVybiB5K3orKFBhPyIiK0FmKDExLDMpK3hmKFBhLmxlbmd0aCkrUGE6IiIpKyhGYT8iIitBZigxMywzKSt4ZihGYS5sZW5ndGgpK0ZhOiIiKStCZigxNCxhLkV0KStCZigxNSxhLnJ2KStCZigxNiwKYS5Bdil9O2Z1bmN0aW9uIERmKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09NTYzMjA/KGU9NjU1MzYrKChlJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2QpJjEwMjMpLGJbYysrXT1lPj4xOHwyNDAsYltjKytdPWU+PjEyJjYzfDEyOCk6YltjKytdPWU+PjEyfDIyNCxiW2MrK109ZT4+NiY2M3wxMjgpLGJbYysrXT1lJjYzfDEyOCl9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVmKGEsYil7Zm9yKHZhciBjPXFiKGIpLGQ9bmV3IFVpbnQ4QXJyYXkoYy5sZW5ndGgpLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPWMuY2hhckNvZGVBdChlKTtpZihkLmxlbmd0aCE9PTMyKXRocm93IEVycm9yKCJLZXkgaXMgbm90IDMyIGJ5dGVzLiIpO3JldHVybiBGZihhLGQpfWZ1bmN0aW9uIEZmKGEsYil7aWYoYT09PSIiKXJldHVybiIiO3ZhciBjPVpiKGEpLGQ9Yi5zbGljZSgtMiksZT1bXS5jb25jYXQodyhkKSx3KGMpKS5tYXAoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZ15iW2glYi5sZW5ndGhdfSksZj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhlKSx3KGQpKSk7cmV0dXJuIHBiKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZikpKS5yZXBsYWNlKC9cLiskLywiIil9O3ZhciBHZj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7cmV0dXJue3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9fX1yZXR1cm57Y3A6YSgiY29uc2VudCIpLFprOmEoImNvbnZlcnRfY2FzZV90byIpLGFsOmEoImNvbnZlcnRfZmFsc2VfdG8iKSxibDphKCJjb252ZXJ0X251bGxfdG8iKSxlcDphKCJjb252ZXJ0X3RvX2Jvb2xlYW4iKSxhaDphKCJjb252ZXJ0X3RvX251bWJlciIpLGZsOmEoImNvbnZlcnRfdHJ1ZV90byIpLGlsOmEoImNvbnZlcnRfdW5kZWZpbmVkX3RvIiksWXQ6YSgiZGVidWdfbW9kZV9tZXRhZGF0YSIpLFliOmEoImZ1bmN0aW9uIiksUm06YSgiaW5zdGFuY2VfbmFtZSIpLE5xOmEoImxpdmVfb25seSIpLE9xOmEoIm1hbHdhcmVfZGlzYWJsZWQiKSxNRVRBREFUQTphKCJtZXRhZGF0YSIpLFJxOmEoIm9yaWdpbmFsX2FjdGl2aXR5X2lkIiksVHU6YSgib3JpZ2luYWxfdmVuZG9yX3RlbXBsYXRlX2lkIiksU3U6YSgib25jZV9vbl9sb2FkIiksUXE6YSgib25jZV9wZXJfZXZlbnQiKSwKa246YSgib25jZV9wZXJfbG9hZCIpLFZ1OmEoInByaW9yaXR5X292ZXJyaWRlIiksWXU6YSgicmVzcGVjdGVkX2NvbnNlbnRfdHlwZXMiKSx0bjphKCJzZXR1cF90YWdzIikseWo6YSgidGFnX2lkIiksRG46YSgidGVhcmRvd25fdGFncyIpLHBsOmEoImRpc2FibGVkX2luX2dvb2dsZV9tb2RlIiksRnE6YSgiZ2VuZXJhdGVkX3RhZ2dpbmdfbWV0YWRhdGEiKX19KCk7ZnVuY3Rpb24gSGYoYSxiKXt2YXIgYz17fTtjW0dmLlliXT0iX18iK2E7Zm9yKHZhciBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbInZ0cF8iK2RdPWJbZF0pO3JldHVybiBjfTtmdW5jdGlvbiBJZihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpPyEhZGF0YS5ibG9iW2FdOmJ9ZnVuY3Rpb24gRShhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYyxkO3JldHVybigoYz1kYXRhKT09bnVsbD8wOihkPWMuYmxvYik9PW51bGw/MDpkLmhhc093blByb3BlcnR5KGEpKT9TdHJpbmcoZGF0YS5ibG9iW2FdKTpifWZ1bmN0aW9uIEpmKGEpe3ZhciBiLGM7cmV0dXJuKChiPWRhdGEpPT1udWxsPzA6KGM9Yi5ibG9iKT09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihkYXRhLmJsb2JbYV0pOjB9ZnVuY3Rpb24gS2YoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP1tdOmI7dmFyIGMsZCxlPShjPWRhdGEpPT1udWxsP3ZvaWQgMDooZD1jLmJsb2IpPT1udWxsP3ZvaWQgMDpkW2FdO3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6Yn0KZnVuY3Rpb24gTGYoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyIiOmI7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhjW2FdKTpifWZ1bmN0aW9uIE5mKGEsYil7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihjW2FdKTpifWZ1bmN0aW9uIE1mKGEpe3ZhciBiLGM7cmV0dXJuKGI9ZGF0YSk9PW51bGw/dm9pZCAwOihjPWIuYmxvYik9PW51bGw/dm9pZCAwOmNbYV19O3ZhciBPZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7ZD1FcnJvci5jYWxsKHRoaXMsYyk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy5wZXJtaXNzaW9uSWQ9YTt0aGlzLnBhcmFtZXRlcnM9Yjt0aGlzLm5hbWU9IlBlcm1pc3Npb25FcnJvciJ9O3dhKE9mLEVycm9yKTtPZi5wcm90b3R5cGUuZ2V0TWVzc2FnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1lc3NhZ2V9O2Z1bmN0aW9uIFBmKGEsYil7aWYoQXJyYXkuaXNBcnJheShhKSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImNvbnRleHQiLHt2YWx1ZTp7bGluZTpiWzBdfX0pO2Zvcih2YXIgYz0xO2M8YS5sZW5ndGg7YysrKVBmKGFbY10sYltjXSl9fTtmdW5jdGlvbiBRZigpe3JldHVybiBmdW5jdGlvbihhLGIpe3ZhciBjO3ZhciBkPVJmO2EgaW5zdGFuY2VvZiBiYj8oYS5IPWQsYz1hKTpjPW5ldyBiYihhLGQpO3ZhciBlPWM7YiYmZS5LLnB1c2goYik7dGhyb3cgZTt9fWZ1bmN0aW9uIFJmKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gYTthLnB1c2goe2lkOiJtYWluIixsaW5lOjB9KTtmb3IodmFyIGI9YS5sZW5ndGgtMTtiPjA7Yi0tKUFiKGFbYl0uaWQpJiZhLnNwbGljZShiKyssMSk7Zm9yKHZhciBjPWEubGVuZ3RoLTE7Yz4wO2MtLSlhW2NdLmxpbmU9YVtjLTFdLmxpbmU7YS5zcGxpY2UoMCwxKTtyZXR1cm4gYX07dmFyIFNmPVJlZ0V4cCgiW14wLTlcXC4rLV0iLCJnIiksVGY9UmVnRXhwKCJbXjAtOVxcLCstXSIsImciKSxVZj1SZWdFeHAoIlteMC05Ky1dIiwiZyIpOwpmdW5jdGlvbiBWZihhLGIpe2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuIGE7dmFyIGM9U3RyaW5nKGEpLGQ7aWYoYj09PSJBVVRPTUFUSUMiKXt2YXIgZT0oYy5tYXRjaCgvXC4vZyl8fFtdKS5sZW5ndGgsZj0oYy5tYXRjaCgvLC9nKXx8W10pLmxlbmd0aCxnPSJOT05FIjtpZihlPjAmJmY+MCl7dmFyIGg9Yy5sYXN0SW5kZXhPZigiLiIpPmMubGFzdEluZGV4T2YoIiwiKTtoJiZlPT09MT9nPSJQRVJJT0QiOmh8fGYhPT0xfHwoZz0iQ09NTUEiKX1lbHNlIGU9PT0xP2c9KGMuc3BsaXQoIi4iKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJQRVJJT0QiOiJOT05FIjpmPT09MSYmKGc9KGMuc3BsaXQoIiwiKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJDT01NQSI6Ik5PTkUiKTtkPWd9ZWxzZSBkPWI9PT0iQ09NTUEiPyJDT01NQSI6IlBFUklPRCI7dmFyIGwsbjtkPT09IlBFUklPRCI/KGw9Ii4iLG49U2YpOmQ9PT0iQ09NTUEiPyhsPSIsIiwKbj1UZik6KGw9IiIsbj1VZik7dmFyIHA9Yy5yZXBsYWNlKG4sIiIpO2lmKGwhPT0iIiYmcC5zcGxpdChsKS5sZW5ndGg+MilyZXR1cm4gYTt2YXIgcT1wLnJlcGxhY2UoLywvZywiLiIpO2lmKHE9PT0iIilyZXR1cm4gYTt2YXIgcj1OdW1iZXIocSk7cmV0dXJuIGlzTmFOKHIpP2E6cn07dmFyIFdmPVtdLFhmPXt9O2Z1bmN0aW9uIFlmKGEpe3JldHVybiBXZlthXT09PXZvaWQgMD8hMTpXZlthXX07dmFyIFpmPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSwkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO2EuSFtiXS5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkobnVsbCx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfSl9O2Z1bmN0aW9uIGFnKGEsYixjLGQpe2lmKGEpZm9yKHZhciBlPTA7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPXZvaWQgMCxnPSJBIHBvbGljeSBmdW5jdGlvbiBkZW5pZWQgdGhlIHBlcm1pc3Npb24gcmVxdWVzdCI7dHJ5e2Y9YVtlXShiLGMsZCksZys9Ii4ifWNhdGNoKGgpe2c9dHlwZW9mIGg9PT0ic3RyaW5nIj9nKygiOiAiK2gpOmggaW5zdGFuY2VvZiBFcnJvcj9nKygiOiAiK2gubWVzc2FnZSk6ZysiLiJ9aWYoIWYpdGhyb3cgbmV3IE9mKGMsZCxnKTt9fQpmdW5jdGlvbiBiZyhhLGIpe3ZhciBjPWNnKGRnLkgsYixmdW5jdGlvbigpe3JldHVybnt9fSk7dHJ5e3JldHVybiBjKGEpLCEwfWNhdGNoKGQpe3JldHVybiExfX1mdW5jdGlvbiBjZyhhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKGQpe3ZhciBlPWEuSFtkXSxmPWEuSC5hbGw7aWYoZXx8Zil7dmFyIGc9Yy5hcHBseSh2b2lkIDAsW2RdLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKTthZyhlLGIsZCxnKTthZyhmLGIsZCxnKX19fX07dmFyIGdnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSz17fTt0aGlzLkg9bmV3IFpmO3ZhciBlPXt9LGY9e30sZz1jZyh0aGlzLkgsYSxmdW5jdGlvbihoKXtyZXR1cm4gaCYmZVtoXT9lW2hdLmFwcGx5KHZvaWQgMCxbaF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpOnt9fSk7R2IoYixmdW5jdGlvbihoLGwpe2Z1bmN0aW9uIG4ocSl7dmFyIHI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKCFwW3FdKXRocm93IGVnKHEse30sIlRoZSByZXF1ZXN0ZWQgYWRkaXRpb25hbCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO2cuYXBwbHkobnVsbCxbcV0uY29uY2F0KHcocikpKX12YXIgcD17fTtHYihsLGZ1bmN0aW9uKHEscil7dmFyIHQ9ZmcocSxyLGMpO3BbcV09dC5hc3NlcnQ7ZVtxXXx8KGVbcV09dC5hYSk7dC5PbiYmIWZbcV0mJihmW3FdPXQuT24pfSk7ZC5LW2hdPWZ1bmN0aW9uKHEscil7dmFyIHQ9cFtxXTtpZighdCl0aHJvdyBlZyhxLAp7fSwiVGhlIHJlcXVlc3RlZCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO3ZhciB1PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTt0LmFwcGx5KHZvaWQgMCx1KTtnLmFwcGx5KHZvaWQgMCx1KTt2YXIgdj1mW3FdO3YmJnYuYXBwbHkobnVsbCxbbl0uY29uY2F0KHcodS5zbGljZSgxKSkpKX19KX0saGc9ZnVuY3Rpb24oYSl7cmV0dXJuIGRnLktbYV18fGZ1bmN0aW9uKCl7fX07CmZ1bmN0aW9uIGZnKGEsYixjKXt0cnl7dmFyIGQ9Y1siX18iK2FdO2lmKCFkKXRocm93IEVycm9yKCJObyBmdW5jdGlvbiBmb3VuZCBmb3IgcGVybWlzc2lvbjogIithKyIuIik7dmFyIGU9SGYoYSxiKTtlLnZ0cF9wZXJtaXNzaW9uTmFtZT1hO2UudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcj1lZztkZWxldGUgZVtHZi5ZYl07cmV0dXJuIGQoZSl9Y2F0Y2goZil7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihnKXt0aHJvdyBuZXcgT2YoZyx7fSwiUGVybWlzc2lvbiAiK2crIiBpcyB1bmtub3duLiIpO30sYWE6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgT2YoYSx7fSwiUGVybWlzc2lvbiAiK2ErIiBpcyB1bmtub3duLiIpO319fX1mdW5jdGlvbiBlZyhhLGIsYyl7cmV0dXJuIG5ldyBPZihhLGIsYyl9O3ZhciBpZz1FKDUpLGpnPUUoMjApLGtnPUUoMSksbGc9ITE7dmFyIG1nPXt9O21nLlBvPUlmKDI5KTttZy5Lcj1JZigyOCk7ZnVuY3Rpb24gbmcoYSl7dmFyIGI9MSxjLGQsZTtpZihhKWZvcihiPTAsZD1hLmxlbmd0aC0xO2Q+PTA7ZC0tKWU9YS5jaGFyQ29kZUF0KGQpLGI9KGI8PDYmMjY4NDM1NDU1KStlKyhlPDwxNCksYz1iJjI2NjMzODMwNCxiPWMhPT0wP2JeYz4+MjE6YjtyZXR1cm4gYn07dmFyIG9nPWZ1bmN0aW9uKGEpe3RoaXMuY2FjaGU9YX07b2cucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXt2YXIgYj1uZyhhKSxjPXRoaXMuY2FjaGUuZ2V0KGIpO2lmKCFjKXJldHVybntwcm9taXNlOnZvaWQgMCxLajowfTtpZihEYXRlLm5vdygpPj1jLnRpbWVzdGFtcCs5RTUpcmV0dXJuIHRoaXMuY2FjaGUuZGVsZXRlKGIpLHtwcm9taXNlOnZvaWQgMCxLajozfTt2YXIgZD1jLnJlc29sdmVkVmFsdWU/MjoxO3JldHVybntwcm9taXNlOmMucmVzb2x2ZWRWYWx1ZT9Qcm9taXNlLnJlc29sdmUoYy5yZXNvbHZlZFZhbHVlKTpjLnByb21pc2UsS2o6ZH19O29nLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz17cHJvbWlzZTpiLHJlc29sdmVkVmFsdWU6dm9pZCAwLHRpbWVzdGFtcDpEYXRlLm5vdygpfTt0aGlzLmNhY2hlLnNldChuZyhhKSxjKTtiLnRoZW4oZnVuY3Rpb24oZCl7Yy5yZXNvbHZlZFZhbHVlPWR9KX07ZnVuY3Rpb24gcGcoYSl7c3dpdGNoKGEpe2Nhc2UgMDpicmVhaztjYXNlIDk6cmV0dXJuImU0IjtjYXNlIDY6cmV0dXJuImU1IjtjYXNlIDE0OnJldHVybiJlNiI7ZGVmYXVsdDpyZXR1cm4iZTcifX07dmFyIEY9e0Q6e1hhOiJhZF9wZXJzb25hbGl6YXRpb24iLGthOiJhZF9zdG9yYWdlIixtYToiYWRfdXNlcl9kYXRhIixyYToiYW5hbHl0aWNzX3N0b3JhZ2UiLG5jOiJyZWdpb24iLHNhOiJjb25zZW50X3VwZGF0ZWQiLFlnOiJ3YWl0X2Zvcl91cGRhdGUiLGVoOiJlbmRwb2ludF90eXBlIixxcDoiYXBwX3JlbW92ZSIscnA6ImFwcF9zdG9yZV9yZWZ1bmQiLHRwOiJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCIsdXA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCIsdnA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciLHdwOiJjb25zZW50X3VwZGF0ZSIseHA6ImNvbnZlcnNpb24iLHZsOiJhZGRfcGF5bWVudF9pbmZvIix3bDoiYWRkX3NoaXBwaW5nX2luZm8iLHhlOiJhZGRfdG9fY2FydCIseWU6InJlbW92ZV9mcm9tX2NhcnQiLHhsOiJ2aWV3X2NhcnQiLEFkOiJiZWdpbl9jaGVja291dCIsZXU6ImdlbmVyYXRlX2xlYWQiLHplOiJzZWxlY3RfaXRlbSIsb2M6InZpZXdfaXRlbV9saXN0IiwKUWM6InNlbGVjdF9wcm9tb3Rpb24iLHFjOiJ2aWV3X3Byb21vdGlvbiIsSWI6InB1cmNoYXNlIixBZToicmVmdW5kIixyYzoidmlld19pdGVtIix5bDoiYWRkX3RvX3dpc2hsaXN0Iix5cDoiZXhjZXB0aW9uIix6cDoiZmlyc3Rfb3BlbiIsQXA6ImZpcnN0X3Zpc2l0Iix3YToiZ3RhZy5jb25maWciLEpiOiJndGFnLmdldCIsQnA6ImluX2FwcF9wdXJjaGFzZSIsc2M6InBhZ2VfdmlldyIsQ3A6InNjcmVlbl92aWV3IixEcDoic2Vzc2lvbl9zdGFydCIsRXA6InNvdXJjZV91cGRhdGUiLEZwOiJ0aW1pbmdfY29tcGxldGUiLEdwOiJ0cmFja19zb2NpYWwiLHlmOiJ1c2VyX2VuZ2FnZW1lbnQiLEhwOiJ1c2VyX2lkX3VwZGF0ZSIsZmg6ImJyYWlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLGdoOiJicmFpZF9zdG9yYWdlX3NvdXJjZSIsQmQ6ImdjbGlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLENkOiJnY2xpZF9zdG9yYWdlX3NvdXJjZSIsU2I6ImdjbGdiIixsYjoiZ2NsaWQiLHpsOiJnY2xpZF9sZW4iLApCZToiZ2NsZ3MiLENlOiJnY2xscCIsRGU6ImdjbHN0IixtYjoiYWRzX2RhdGFfcmVkYWN0aW9uIix6ZjoiZ2FkX3NvdXJjZSIsQWY6ImdhZF9zb3VyY2Vfc3JjIixEZDoiZ2NsaWRfdXJsIixBbDoiZ2Nsc3JjIixCZjoiZ2JyYWlkIixFZToid2JyYWlkIixSYzoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiLHJpOiJhbGxvd19jdXN0b21fc2NyaXB0cyIsaGg6ImFsbG93X2Rpc3BsYXlfZmVhdHVyZXMiLHNpOiJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyIsU2M6ImFsbG93X2dvb2dsZV9zaWduYWxzIix1aToiYWxsb3dfaW50ZXJlc3RfZ3JvdXBzIixJcDoiYXBwX2lkIixKcDoiYXBwX2luc3RhbGxlcl9pZCIsS3A6ImFwcF9uYW1lIixMcDoiYXBwX3ZlcnNpb24iLEVkOiJhdWlkIixmdToiYXV0b19kZXRlY3Rpb25fZW5hYmxlZCIsQmw6ImF1dG9fZXZlbnQiLENsOiJhd19yZW1hcmtldGluZyIsaWg6ImF3X3JlbWFya2V0aW5nX29ubHkiLENmOiJkaXNjb3VudCIsRGY6ImF3X2ZlZWRfY291bnRyeSIsCkVmOiJhd19mZWVkX2xhbmd1YWdlIixIYToiaXRlbXMiLEZmOiJhd19tZXJjaGFudF9pZCIsd2k6ImF3X2Jhc2tldF90eXBlIixHZjoiY2FtcGFpZ25fY29udGVudCIsSGY6ImNhbXBhaWduX2lkIixJZjoiY2FtcGFpZ25fbWVkaXVtIixKZjoiY2FtcGFpZ25fbmFtZSIsS2Y6ImNhbXBhaWduIixMZjoiY2FtcGFpZ25fc291cmNlIixNZjoiY2FtcGFpZ25fdGVybSIsS2I6ImNsaWVudF9pZCIsRGw6InJuZCIseGk6ImNvbnNlbnRfdXBkYXRlX3R5cGUiLE1wOiJjb250ZW50X2dyb3VwIixOcDoiY29udGVudF90eXBlIixGZDoiY29udmVyc2lvbl9jb29raWVfcHJlZml4Iix5aToiY29udmVyc2lvbl9pZCIsdWM6ImNvbnZlcnNpb25fbGlua2VyIixIZDoiY29udmVyc2lvbl9saW5rZXJfZGlzYWJsZWQiLEZlOiJjb252ZXJzaW9uX2FwaSIsemk6Il8mcmNiIixqaDoiY29va2llX2RlcHJlY2F0aW9uIixMYjoiY29va2llX2RvbWFpbiIsQ2I6ImNvb2tpZV9leHBpcmVzIixUYjoiY29va2llX2ZsYWdzIiwKSWQ6ImNvb2tpZV9uYW1lIix2YzoiY29va2llX3BhdGgiLG5iOiJjb29raWVfcHJlZml4IixKZDoiY29va2llX3VwZGF0ZSIsVGM6ImNvdW50cnkiLGViOiJjdXJyZW5jeSIsR2U6ImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIixraDoiY3VzdG9tZXJfdHlwZSIsSGU6ImN1c3RvbV9tYXAiLEFpOiJnY2xkY19saW5rX2RlY29yYXRpb25fc291cmNlIixCaToiZ2NsZGNfc3RvcmFnZV9zb3VyY2UiLE5mOiJnY2xkYyIsS2Q6ImRjbGlkIixFbDoiZGVidWdfbW9kZSIsT2E6ImRldmVsb3Blcl9pZCIsT3A6ImRpc2FibGVfbWVyY2hhbnRfcmVwb3J0ZWRfcHVyY2hhc2VzIixVYzoiZGNfY3VzdG9tX3BhcmFtcyIsUHA6ImRjX25hdHVyYWxfc2VhcmNoIixRcDoiZHluYW1pY19ldmVudF9zZXR0aW5ncyIsRmw6ImFmZmlsaWF0aW9uIixtaDoiY2hlY2tvdXRfb3B0aW9uIixDaToiY2hlY2tvdXRfc3RlcCIsR2w6ImNvdXBvbiIsT2Y6Iml0ZW1fbGlzdF9uYW1lIixEaToibGlzdF9uYW1lIixScDoicHJvbW90aW9ucyIsCkxkOiJzaGlwcGluZyIsSGw6InRheCIsbmg6ImVuZ2FnZW1lbnRfdGltZV9tc2VjIixvaDoiZW5oYW5jZWRfY2xpZW50X2lkIixTcDoiZW5oYW5jZWRfY29udmVyc2lvbnMiLGd1OiJlbmhhbmNlZF9jb252ZXJzaW9uc19hdXRvbWF0aWNfc2V0dGluZ3MiLEllOiJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSIsUGY6ImV2ZW50X2NhbGxiYWNrIixUcDoiZXZlbnRfY2F0ZWdvcnkiLFZjOiJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIixNZDoiZXZlbnRfaWQiLEVpOiJfZXZlbnRfam9pbl9pZCIsVXA6ImV2ZW50X2xhYmVsIixVYjoiZXZlbnQiLElsOiJfJmFlIixGaToiZXZlbnRfc2V0dGluZ3MiLHBoOiJldmVudF90aW1lb3V0IixWcDoiZGVzY3JpcHRpb24iLFdwOiJmYXRhbCIsWHA6ImV4cGVyaW1lbnRzIixOZDoiZXh0X2NsaWVudF9pZCIsR2k6ImZpcmViYXNlX2lkIixRZjoiZmlyc3RfcGFydHlfY29sbGVjdGlvbiIsUmY6Il94XzIwIixWYjoiX3hfMTkiLFlwOiJmbGlnaHRfZXJyb3JfY29kZSIsClpwOiJmbGlnaHRfZXJyb3JfbWVzc2FnZSIsSGk6ImZsX2FjdGl2aXR5X2NhdGVnb3J5IixJaToiZmxfYWN0aXZpdHlfZ3JvdXAiLHFoOiJmbF9hZHZlcnRpc2VyX2lkIixKaToibWF0Y2hfaWQiLEpsOiJmbF9yYW5kb21fbnVtYmVyIixLbDoidHJhbiIsTGw6InUiLHJoOiJnYWNfZ2NsaWQiLEplOiJnYWNfd2JyYWlkIixNbDoiZ2FjX3dicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsYXE6ImdhX3Jlc3RyaWN0X2RvbWFpbiIsTmw6ImdhX3RlbXBfY2xpZW50X2lkIixicToiZ2FfdGVtcF9lY2lkIixLZToiZ2Rwcl9hcHBsaWVzIixzaDoiX2d0X21ldGFkYXRhIixPbDoiZ2VvX2dyYW51bGFyaXR5IixTZjoidmFsdWVfY2FsbGJhY2siLFRmOiJ2YWx1ZV9rZXkiLFRhOiJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIixMZToiX2dvb2dsZV9uZyIsY3E6Il9vbm8iLFVmOiJnb29nbGVfc2lnbmFscyIsZnE6Imdvb2dsZV90bGQiLHRoOiJncHBfc2lkIix1aDoiZ3BwX3N0cmluZyIsT2Q6Imdyb3VwcyIsClBsOiJnc2FfZXhwZXJpbWVudF9pZCIsVmY6Imd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSIsUWw6Imd0bV91cCIsTWU6ImlmcmFtZV9zdGF0ZSIsV2Y6Imlnbm9yZV9yZWZlcnJlciIsUmw6ImludGVybmFsX3RyYWZmaWNfcmVzdWx0cyIsU2w6Il9pc19mcG0iLFljOiJpc19sZWdhY3lfY29udmVydGVkIixaYzoiaXNfbGVnYWN5X2xvYWRlZCIsS2k6ImlzX3Bhc3N0aHJvdWdoIixQZDoiX2xwcyIsdGI6Imxhbmd1YWdlIixMaToibGVnYWN5X2RldmVsb3Blcl9pZF9zdHJpbmciLERiOiJsaW5rZXIiLFhmOiJhY2NlcHRfaW5jb21pbmciLHdjOiJkZWNvcmF0ZV9mb3JtcyIsQWE6ImRvbWFpbnMiLGFkOiJ1cmxfcG9zaXRpb24iLFFkOiJtZXJjaGFudF9mZWVkX2xhYmVsIixSZDoibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSIsU2Q6Im1lcmNoYW50X2lkIixUbDoibWV0aG9kIixncToibmFtZSIsVWw6Im5hdmlnYXRpb25fdHlwZSIsTmU6Im5ld19jdXN0b21lciIsTWk6Im5vbl9pbnRlcmFjdGlvbiIsCmhxOiJvcHRpbWl6ZV9pZCIsVmw6InBhZ2VfaG9zdG5hbWUiLFlmOiJwYWdlX3BhdGgiLFVhOiJwYWdlX3JlZmVycmVyIixNYjoicGFnZV90aXRsZSIsaXE6InBhc3NlbmdlcnMiLFdsOiJwaG9uZV9jb252ZXJzaW9uX2NhbGxiYWNrIixqcToicGhvbmVfY29udmVyc2lvbl9jb3VudHJ5X2NvZGUiLFhsOiJwaG9uZV9jb252ZXJzaW9uX2Nzc19jbGFzcyIsa3E6InBob25lX2NvbnZlcnNpb25faWRzIixZbDoicGhvbmVfY29udmVyc2lvbl9udW1iZXIiLFpsOiJwaG9uZV9jb252ZXJzaW9uX29wdGlvbnMiLGxxOiJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiLG1xOiJfcHJvdGVjdGVkX2F1ZGllbmNlX2VuYWJsZWQiLHdoOiJxdWFudGl0eSIseGg6InJlZGFjdF9kZXZpY2VfaW5mbyIsYW06InJlZmVycmFsX2V4Y2x1c2lvbl9kZWZpbml0aW9uIixodToiX3JlcXVlc3Rfc3RhcnRfdGltZSIsV2I6InJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIixucToicmV0b2tlbiIsb3E6InNhbXBsZV9yYXRlIiwKTmk6InNjcmVlbl9uYW1lIixiZDoic2NyZWVuX3Jlc29sdXRpb24iLGJtOiJfc2NyaXB0X3NvdXJjZSIscHE6InNlYXJjaF90ZXJtIixUZDoic2VuZF9wYWdlX3ZpZXciLFhiOiJzZW5kX3RvIixPaToic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50IixkZDoic2VydmVyX2NvbnRhaW5lcl91cmwiLHFxOiJzZXNzaW9uX2F0dHJpYnV0ZXNfZW5jb2RlZCIseWg6InNlc3Npb25fZHVyYXRpb24iLHpoOiJzZXNzaW9uX2VuZ2FnZWQiLFBpOiJzZXNzaW9uX2VuZ2FnZWRfdGltZSIseGM6InNlc3Npb25faWQiLEFoOiJzZXNzaW9uX251bWJlciIsWmY6Il9zaGFyZWRfdXNlcl9pZCIsVWQ6ImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIixpdToiX3RhZ19maXJpbmdfZGVsYXkiLGp1OiJfdGFnX2ZpcmluZ190aW1lIixrdToidGVtcG9yYXJ5X2NsaWVudF9pZCIsUWk6InRlc3Rvbmx5IixycToiX3RpbWV6b25lIixQZToidG9wbW9zdF91cmwiLFFlOiJ0cmFja2luZ19pZCIsUmk6InRyYWZmaWNfdHlwZSIsClBhOiJ0cmFuc2FjdGlvbl9pZCIsZG06InRyYW5zYWN0aW9uX2lkX3NvdXJjZSIseWM6InRyYW5zcG9ydF91cmwiLHNxOiJ0cmlwX3R5cGUiLFZkOiJ1cGRhdGUiLHpjOiJ1cmxfcGFzc3Rocm91Z2giLGZtOiJ1cHRncyIsY2c6Il91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSIsZGc6Il91c2VyX2FnZW50X2JpdG5lc3MiLGVnOiJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCIsZmc6Il91c2VyX2FnZW50X21vYmlsZSIsZ2c6Il91c2VyX2FnZW50X21vZGVsIixoZzoiX3VzZXJfYWdlbnRfcGxhdGZvcm0iLGlnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIixqZzoiX3VzZXJfYWdlbnRfd293NjQiLEFjOiJ1c2VyX2RhdGEiLGdtOiJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5IixobToidXNlcl9kYXRhX2F1dG9fbWV0YSIsaW06InVzZXJfZGF0YV9hdXRvX211bHRpIixqbToidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIixrbToidXNlcl9kYXRhX2F1dG9fc3RhdHVzIixCYzoidXNlcl9kYXRhX21vZGUiLApsbToidXNlcl9kYXRhX3NldHRpbmdzIixmYjoidXNlcl9pZCIsV2Q6InVzZXJfcHJvcGVydGllcyIsb206Il91c2VyX3JlZ2lvbiIsa2c6InVzX3ByaXZhY3lfc3RyaW5nIixRYToidmFsdWUiLHFtOiJ3YnJhaWRfbXVsdGlwbGVfY29udmVyc2lvbnMiLGVkOiJfZnBtX3BhcmFtZXRlcnMiLFdpOiJfaG9zdF9uYW1lIixWbToiX2luX3BhZ2VfY29tbWFuZCIsWWk6Il9pcF9vdmVycmlkZSIsWm06Il9pc19wYXNzdGhyb3VnaF9jaWQiLEpoOiJfbWVhc3VyZW1lbnRfdHlwZSIsZGU6Im5vbl9wZXJzb25hbGl6ZWRfYWRzIixvajoiX3NzdF9wYXJhbWV0ZXJzIixZcToic2d0bV9nZW9fdXNlcl9jb3VudHJ5IixHZDoiY29udmVyc2lvbl9sYWJlbCIsemE6InBhZ2VfbG9jYXRpb24iLFdjOiJfZXh0cmFjdGVkX2RhdGEiLFhjOiJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyIsT2U6InRjX3ByaXZhY3lfc3RyaW5nIn19O3ZhciBIPXtKOntTbzoiYWJvcnRfd2l0aG91dF9mYWlsIixraToiYWNjZXB0X2J5X2RlZmF1bHQiLEJrOiJhZGRfdGFnX3RpbWluZyIsRGs6ImFkc19jb25zZW50X2dyYW50ZWQiLHZkOiJhZHNfZXZlbnRfcGFnZV92aWV3Iix3ZDoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIixRdDoiYXV0b19ldmVudCIsS2s6ImJhdGNoX29uX25hdmlnYXRpb24iLFhnOiJiaXNjb3R0aV9qb2luX2lkIixQazoiY2xpZW50X2lkX3NvdXJjZSIsdWY6ImNvbnNlbnRfZXZlbnRfaWQiLHZmOiJjb25zZW50X3ByaW9yaXR5X2lkIixTdDoiY29uc2VudF9zdGF0ZSIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsd2Y6ImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiLFR0OiJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIixHYToiY29va2llX29wdGlvbnMiLG9sOiJkY19yYW5kb20iLFp0OiJkZWR1cGVfaWQiLFBjOiJlbV9ldmVudCIsYnU6ImVuZHBvaW50X2Zvcl9kZWJ1ZyIsdGw6ImVuaGFuY2VkX2NsaWVudF9pZF9zb3VyY2UiLApwcDoiZW5oYW5jZWRfbWF0Y2hfcmVzdWx0IixybToiZXVpZF9sb2dnZWRfaW5fc3RhdGUiLGxnOiJldWlkX21vZGVfZW5hYmxlZCIsdHE6ImV2ZW50X3Byb3ZlbmFuY2UiLG11OiJldmVudF9zb3VyY2UiLEViOiJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiLHdtOiJldmVudF91c2FnZSIsQ2g6ImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyIscHU6ImFkZF9wYXJhbWV0ZXIiLFVpOiJjb3VudGluZ19tZXRob2QiLERoOiJzZW5kX2FzX2lmcmFtZSIscXU6InBhcmFtZXRlcl9vcmRlciIsRWg6InBhcnNlZF90YXJnZXQiLHN1OiJmb3JtX2V2ZW50X2NhbmNlbGVkIixBcToiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIixWaToiZ2E0X3JlcXVlc3RfZmxhZ3MiLE5tOiJnYnJhaWRfY29va2llX21hcmtlZCIsUW06Imd0bV9leHRyYWN0ZWRfZGF0YSIsQ2M6ImhhbmRsZV9pbnRlcm5hbGx5Iix1dToiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiLGRhOiJoaXRfdHlwZSIsRGM6ImhpdF90eXBlX292ZXJyaWRlIiwKSHE6Imlnbm9yZV9kdXBlX2NvbmZpZyIsT3U6ImlzX2NvbmZpZ19jb21tYW5kIixHaDoiaXNfY29uc2VudF91cGRhdGUiLG1nOiJpc19jb252ZXJzaW9uIixXbToiaXNfZWNvbW1lcmNlIixYbToiaXNfZWNfY21fc3BsaXQiLGFlOiJpc19leHRlcm5hbF9ldmVudCIsbmc6ImlzX2ZpcnN0X3Zpc2l0IixZbToiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiIsWmk6ImlzX2ZsX2ZhbGxiYWNrX2NvbnZlcnNpb25fZmxvd19hbGxvd2VkIixmZDoiaXNfZnBtX2VuY3J5cHRpb24iLGFqOiJpc19mcG1fc3BsaXQiLG9iOiJpc19nY3BfYnJvd3NlciIsYmo6ImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIixjajoiaXNfZ29vZ2xlX3NpZ25hbHNfZW5hYmxlZCIsYmU6ImlzX21lcmNoYW50X2NlbnRlciIsSGg6ImlzX25ld190b19zaXRlIixFYzoiaXNfcGVyc29uYWxpemF0aW9uIixkajoiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iLFRlOiJpc19zZXNzaW9uX3N0YXJ0IixibjoiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIiwKUHU6ImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCIsUXU6ImlzX3NndG1fcHJlaGl0IixkbjoiaXNfc2d0bV9zZXJ2aWNlX3dvcmtlciIsSWg6ImlzX3NwbGl0X2NvbnZlcnNpb24iLElxOiJpc19zeW4iLEZjOiJpc190ZXN0X2V2ZW50IixvZzoiam9pbl9pZCIsZWo6ImpvaW5fZWxhcHNlZCIscGc6ImpvaW5fdGltZXJfc2VjIixnbjoibG9jYWxfc3RvcmFnZV9hd19jb252ZXJzaW9uX2NvdW50ZXJzIixXZToidHVubmVsX3VwZGF0ZWQiLFV1OiJwcmVoaXRfZm9yX3JldHJ5IixXdToicHJvbWlzZXMiLFh1OiJyZWNvcmRfYXdfbGF0ZW5jeSIsWGU6InJlZGFjdF9hZHNfZGF0YSIsWWU6InJlZGFjdF9jbGlja19pZHMiLHBuOiJyZW1hcmtldGluZ19vbmx5Iixsajoic2VuZF9jY21fcGFyYWxsZWxfcGluZyIsaGQ6InNlbmRfZG91YmxlY2xpY2tfam9pbiIsTWg6InNlbmRfZnBtX2dlb19qb2luIixOaDoic2VuZF9mcG1fZ29vZ2xlX2pvaW4iLFp1OiJzZW5kX2NjbV9wYXJhbGxlbF90ZXN0X3BpbmciLApybjoic2VuZF9nb29nbGVfbWVhc3VyZW1lbnQiLHJnOiJzZW5kX3RsZF9qb2luIixzZzoic2VuZF90b19kZXN0aW5hdGlvbnMiLG1qOiJzZW5kX3RvX3RhcmdldHMiLHNuOiJzZW5kX3VzZXJfZGF0YV9oaXQiLHBqOiJzZXJ2aWNlX3dvcmtlcl9jb250ZXh0IixOYjoic291cmNlX2Nhbm9uaWNhbF9pZCIsSmE6InNwZWN1bGF0aXZlIix5bjoic3BlY3VsYXRpdmVfaW5fbWVzc2FnZSIsQW46InN1cHByZXNzX3NjcmlwdF9sb2FkIixCbjoic3luX29yX21vZCIsemo6InRyYW5zaWVudF9lY3NpZCIsdGc6InRyYW5zbWlzc2lvbl90eXBlIixZYToidXNlcl9kYXRhIixndjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIixodjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciIsR246InVzZXJfZGF0YV9mcm9tX2NvZGUiLGlyOiJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiLGp2OiJ1c2VyX2RhdGFfbW9kZSIsdWc6InVzZXJfaWRfdXBkYXRlZCJ9fTsKdmFyIHRnPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9MDtHYihhLGZ1bmN0aW9uKGUsZil7aWYoZiE9bnVsbCl7dmFyIGc9KCIiK2YpLnJlcGxhY2UoL34vZywifn4iKTtpZihxZy5oYXNPd25Qcm9wZXJ0eShlKSliW3FnW2VdXT1nO2Vsc2UgaWYocmcuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBoPXJnW2VdO2IuaGFzT3duUHJvcGVydHkoaCl8fChiW2hdPWcpfWVsc2UgaWYoZT09PSJjYXRlZ29yeSIpZm9yKHZhciBsPWcuc3BsaXQoIi8iLDUpLG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIHA9YixxPXNnW25dLHI9bFtuXTtwLmhhc093blByb3BlcnR5KHEpfHwocFtxXT1yKX1lbHNlIGlmKGM8Mjcpe3ZhciB0PVN0cmluZy5mcm9tQ2hhckNvZGUoYzwxMD80OCtjOjY1K2MtMTApO2JbImsiK3RdPSgiIitTdHJpbmcoZSkpLnJlcGxhY2UoL34vZywifn4iKTtiWyJ2Iit0XT1nO2MrK319fSk7dmFyIGQ9W107R2IoYixmdW5jdGlvbihlLGYpe2QucHVzaCgiIitlK2YpfSk7cmV0dXJuIGQuam9pbigifiIpfSwKcWc9e2l0ZW1faWQ6ImlkIixpdGVtX25hbWU6Im5tIixpdGVtX2JyYW5kOiJiciIsaXRlbV9jYXRlZ29yeToiY2EiLGl0ZW1fY2F0ZWdvcnkyOiJjMiIsaXRlbV9jYXRlZ29yeTM6ImMzIixpdGVtX2NhdGVnb3J5NDoiYzQiLGl0ZW1fY2F0ZWdvcnk1OiJjNSIsaXRlbV92YXJpYW50OiJ2YSIscHJpY2U6InByIixxdWFudGl0eToicXQiLGNvdXBvbjoiY3AiLGl0ZW1fbGlzdF9uYW1lOiJsbiIsaW5kZXg6ImxwIixpdGVtX2xpc3RfaWQ6ImxpIixkaXNjb3VudDoiZHMiLGFmZmlsaWF0aW9uOiJhZiIscHJvbW90aW9uX2lkOiJwaSIscHJvbW90aW9uX25hbWU6InBuIixjcmVhdGl2ZV9uYW1lOiJjbiIsY3JlYXRpdmVfc2xvdDoiY3MiLGxvY2F0aW9uX2lkOiJsbyJ9LHJnPXtpZDoiaWQiLG5hbWU6Im5tIixicmFuZDoiYnIiLHZhcmlhbnQ6InZhIixsaXN0X25hbWU6ImxuIixsaXN0X3Bvc2l0aW9uOiJscCIsbGlzdDoibG4iLHBvc2l0aW9uOiJscCIsY3JlYXRpdmU6ImNuIn0sc2c9WyJjYSIsCiJjMiIsImMzIiwiYzQiLCJjNSJdO3ZhciB1Zz1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSkpfSk7cmV0dXJuIGIuam9pbigiJiIpfSx2Zz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe3RoaXMuYmFzZVVybD1iO3RoaXMuZW5kcG9pbnQ9Yzt0aGlzLmRlc3RpbmF0aW9uSWQ9Zjt0aGlzLmV2ZW50SWQ9Zzt0aGlzLnByaW9yaXR5SWQ9aDt0aGlzLkJhPWEuQmE7dGhpcy52ZT1hLnZlO3RoaXMuTGo9YS5Majt0aGlzLk49ZDt0aGlzLks9dWcoYS5CYSk7dGhpcy5IPXVnKGEuTGopO3RoaXMuUj10aGlzLkgubGVuZ3RoO2lmKGUmJnRoaXMuUj4xNjM4NCl0aHJvdyBFcnJvcigiRVZFTlRfVE9PX0xBUkdFIik7fTsKdmFyIHdnPWZ1bmN0aW9uKCl7dGhpcy5ldmVudHM9W107dGhpcy5IPSIiO3RoaXMuQmE9e307dGhpcy5iYXNlVXJsPSIiO3RoaXMuTj0wO3RoaXMuSz0xO3RoaXMuZW5kcG9pbnQ9MH07d2cucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5SKGEpPyh0aGlzLmV2ZW50cy5wdXNoKGEpLHRoaXMuSD1hLkssdGhpcy5CYT1hLkJhLHRoaXMuYmFzZVVybD1hLmJhc2VVcmwsdGhpcy5OKz1hLlIsdGhpcy5LPWEuTix0aGlzLmVuZHBvaW50PWEuZW5kcG9pbnQsdGhpcy5kZXN0aW5hdGlvbklkPWEuZGVzdGluYXRpb25JZCx0aGlzLlo9YS5ldmVudElkLHRoaXMuZmE9YS5wcmlvcml0eUlkLCEwKTohMX07d2cucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZXZlbnRzLmxlbmd0aD90aGlzLmV2ZW50cy5sZW5ndGg+PTIwfHxhLlIrdGhpcy5OPj0xNjM4ND8hMTp0aGlzLmJhc2VVcmw9PT1hLmJhc2VVcmwmJnRoaXMuSz09PWEuTiYmdGhpcy5qYShhKTohMH07CndnLnByb3RvdHlwZS5qYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5IPT09YS5LfTt2YXIgSj17VTp7a3A6MSxtcDoyLEVuOjMsbm46NCxxbDo1LHJsOjYsRXE6NyxucDo4LERxOjksanA6MTAsaHA6MTEseG46MTIsdm46MTMsTms6MTQsVW86MTUsV286MTYsaG46MTcsc2w6MTgsZm46MTksbHA6MjAsUHE6MjEsYXA6MjIsVm86MjMsWG86MjQsbmw6MjUsTGs6MjYsZXI6MjcsSm06MjgsVW06MjksVG06MzAsU206MzEsTW06MzIsS206MzMsTG06MzQsR206MzUsRm06MzYsSG06MzcsSW06MzgsQnE6MzksQ3E6NDAsVXE6NDF9fTtKLlVbSi5VLmtwXT0iQ1JFQVRFX0VWRU5UX1NPVVJDRSI7Si5VW0ouVS5tcF09IkVESVRfRVZFTlQiO0ouVVtKLlUuRW5dPSJUUkFGRklDX1RZUEUiO0ouVVtKLlUubm5dPSJSRUZFUlJBTF9FWENMVVNJT04iO0ouVVtKLlUucWxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVEFHIjtKLlVbSi5VLnJsXT0iRUNPTU1FUkNFX0ZST01fR1RNX1VBX1NDSEVNQSI7Si5VW0ouVS5FcV09IkdBX1NFTkQiO0ouVVtKLlUubnBdPSJFTV9GT1JNIjsKSi5VW0ouVS5EcV09IkdBX0dBTV9MSU5LIjtKLlVbSi5VLmpwXT0iQ1JFQVRFX0VWRU5UX0FVVE9fUEFHRV9QQVRIIjtKLlVbSi5VLmhwXT0iQ1JFQVRFRF9FVkVOVCI7Si5VW0ouVS54bl09IlNJREVMT0FERUQiO0ouVVtKLlUudm5dPSJTR1RNX0xFR0FDWV9DT05GSUdVUkFUSU9OIjtKLlVbSi5VLk5rXT0iQ0NEX0VNX0VWRU5UIjtKLlVbSi5VLlVvXT0iQVVUT19SRURBQ1RfRU1BSUwiO0ouVVtKLlUuV29dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTSI7Si5VW0ouVS5obl09Ik1VTFRJUExFX1BBR0VWSUVXX0ZST01fQ09ORklHIjtKLlVbSi5VLnNsXT0iRU1fRVZFTlRfU0VOVF9CRUZPUkVfQ09ORklHIjtKLlVbSi5VLmZuXT0iTE9BREVEX1ZJQV9DU1RfT1JfU0lERUxPQURJTkciO0ouVVtKLlUubHBdPSJERUNPREVEX1BBUkFNX01BVENIIjtKLlVbSi5VLlBxXT0iTk9OX0RFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuYXBdPSJDQ0RfRVZFTlRfU0dUTSI7CkouVVtKLlUuVm9dPSJBVVRPX1JFREFDVF9FTUFJTF9TR1RNIjtKLlVbSi5VLlhvXT0iQVVUT19SRURBQ1RfUVVFUllfUEFSQU1fU0dUTSI7Si5VW0ouVS5ubF09IkRBSUxZX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuTGtdPSJCVVJTVF9MSU1JVF9SRUFDSEVEIjtKLlVbSi5VLmVyXT0iU0hBUkVEX1VTRVJfSURfU0VUX0FGVEVSX1JFUVVFU1QiO0ouVVtKLlUuSm1dPSJHQTRfTVVMVElQTEVfU0VTU0lPTl9DT09LSUVTIjtKLlVbSi5VLlVtXT0iSU5WQUxJRF9HQTRfU0VTU0lPTl9DT1VOVCI7Si5VW0ouVS5UbV09IklOVkFMSURfR0E0X0xBU1RfRVZFTlRfVElNRVNUQU1QIjtKLlVbSi5VLlNtXT0iSU5WQUxJRF9HQTRfSk9JTl9USU1FUiI7Si5VW0ouVS5NbV09IkdBNF9TVEFMRV9TRVNTSU9OX0NPT0tJRV9TRUxFQ1RFRCI7Si5VW0ouVS5LbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzFfUkVBRCI7Si5VW0ouVS5MbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzJfUkVBRCI7CkouVVtKLlUuR21dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVZBSUxBQkxFIjtKLlVbSi5VLkZtXT0iR0E0X0RMX1BBUkFNX1JFQ09WRVJZX0FQUExJRUQiO0ouVVtKLlUuSG1dPSJHQTRfR09PR0xFX01FQVNVUkVNRU5UX0FMTE9XRUQiO0ouVVtKLlUuSW1dPSJHQTRfR09PR0xFX1NJR05BTFNfRU5BQkxFRCI7Si5VW0ouVS5CcV09IkdBNF9GQUxMQkFDS19SRVFVRVNUIjtKLlVbSi5VLkNxXT0iR0FfQURTX0xJTktfQkVGT1JFX0NPTlZFUlNJT05fTUFSS0lORyI7Si5VW0ouVS5VcV09IlBMQVRJTlVNX0VMSUdJQkxFIjt2YXIgeGc9e30seWc9KHhnLnVhYT0hMCx4Zy51YWI9ITAseGcudWFmdmw9ITAseGcudWFtYj0hMCx4Zy51YW09ITAseGcudWFwPSEwLHhnLnVhcHY9ITAseGcudWF3PSEwLHhnKTsKdmFyIEJnPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5ldmVudHM7aWYoYy5sZW5ndGg9PT0xKXJldHVybiB6ZyhjWzBdLGIpO3ZhciBkPVtdO2EuSCYmZC5wdXNoKGEuSCk7Zm9yKHZhciBlPXt9LGY9MDtmPGMubGVuZ3RoO2YrKylHYihjW2ZdLnZlLGZ1bmN0aW9uKHQsdSl7dSE9bnVsbCYmKGVbdF09ZVt0XXx8e30sZVt0XVtTdHJpbmcodSldPWVbdF1bU3RyaW5nKHUpXSsxfHwxKX0pO3ZhciBnPXt9O0diKGUsZnVuY3Rpb24odCx1KXt2YXIgdix4PS0xLHk9MDtHYih1LGZ1bmN0aW9uKHosQyl7eSs9Qzt2YXIgRD0oei5sZW5ndGgrdC5sZW5ndGgrMikqKEMtMSk7RD54JiYodj16LHg9RCl9KTt5PT09Yy5sZW5ndGgmJihnW3RdPXYpfSk7QWcoZyxkKTtiJiZkLnB1c2goIl9zPSIrYik7Zm9yKHZhciBoPWQuam9pbigiJiIpLGw9W10sbj17fSxwPTA7cDxjLmxlbmd0aDtuPXtmazp2b2lkIDB9LHArKyl7dmFyIHE9W107bi5maz17fTtHYihjW3BdLnZlLGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbih1LAp2KXtnW3VdIT09IiIrdiYmKHQuZmtbdV09dil9fShuKSk7Y1twXS5IJiZxLnB1c2goY1twXS5IKTtBZyhuLmZrLHEpO2wucHVzaChxLmpvaW4oIiYiKSl9dmFyIHI9bC5qb2luKCJcclxuIik7cmV0dXJue3BhcmFtczpoLGJvZHk6cn19LHpnPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107YS5LJiZjLnB1c2goYS5LKTtiJiZjLnB1c2goIl9zPSIrYik7QWcoYS52ZSxjKTt2YXIgZD0hMTthLkgmJihjLnB1c2goYS5IKSxkPSEwKTt2YXIgZT1jLmpvaW4oIiYiKSxmPSIiLGc9ZS5sZW5ndGgrYS5iYXNlVXJsLmxlbmd0aCsxO2QmJmc+MjA0OCYmKGY9Yy5wb3AoKSxlPWMuam9pbigiJiIpKTtyZXR1cm57cGFyYW1zOmUsYm9keTpmfX0sQWc9ZnVuY3Rpb24oYSxiKXtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGQpKX0pfTsKdmFyIEVnPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWEsZT1iW2NdO2lmKCFDZy5leGVjKGUpKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSB3aWxkY2FyZCIpO3ZhciBmPWUuaW5kZXhPZigiLioiKSxnPWYhPT0tMSYmZj09PWUubGVuZ3RoLTIsaD1nP2Uuc2xpY2UoMCxlLmxlbmd0aC0yKTplLGw7YTppZihkLmxlbmd0aD09PTApbD0hMTtlbHNle2Zvcih2YXIgbj1kLnNwbGl0KCIuIikscD0wO3A8bi5sZW5ndGg7cCsrKWlmKCFEZy5leGVjKG5bcF0pKXtsPSExO2JyZWFrIGF9bD0hMH1pZighbHx8aC5sZW5ndGg+ZC5sZW5ndGh8fCFnJiZkLmxlbmd0aCE9PWUubGVuZ3RoPzA6Zz9TYihkLGgpJiYoZD09PWh8fGQuY2hhckF0KGgubGVuZ3RoKT09PSIuIik6ZD09PWgpcmV0dXJuITB9cmV0dXJuITF9LERnPS9eW2EteiRfXVtcdy0kXSokL2ksQ2c9L14oPzpbYS16XyRdW2Etei1fJDAtOV0qXC4pKlthLXpfJF1bYS16LV8kMC05XSooPzpcLlwqKT8kL2k7CnZhciBGZz1bIm1hdGNoZXMiLCJ3ZWJraXRNYXRjaGVzU2VsZWN0b3IiLCJtb3pNYXRjaGVzU2VsZWN0b3IiLCJtc01hdGNoZXNTZWxlY3RvciIsIm9NYXRjaGVzU2VsZWN0b3IiXTtmdW5jdGlvbiBHZyhhLGIpe2lmKCFhKXJldHVybiExO3RyeXtmb3IodmFyIGM9MDtjPEZnLmxlbmd0aDtjKyspe3ZhciBkPUZnW2NdO2lmKGFbZF0hPW51bGwpcmV0dXJuIGFbZF0oYil9fWNhdGNoKGUpe31yZXR1cm4hMX1mdW5jdGlvbiBIZyhhLGIpe3ZhciBjPVN0cmluZyhhKSxkPVN0cmluZyhiKSxlPWMubGVuZ3RoLWQubGVuZ3RoO3JldHVybiBlPj0wJiZjLmluZGV4T2YoZCxlKT09PWV9ZnVuY3Rpb24gSWcoYSxiKXtyZXR1cm4gU3RyaW5nKGEpLnNwbGl0KCIsIikuaW5kZXhPZihTdHJpbmcoYikpPj0wfQpmdW5jdGlvbiBKZyhhLGIsYyxkKXt2YXIgZT1jPyJpIjp2b2lkIDA7dHJ5e3ZhciBmPVN0cmluZyhiKStTdHJpbmcoZSksZz1kPT1udWxsP3ZvaWQgMDpkLmdldChmKTtnfHwoZz1uZXcgUmVnRXhwKGIsZSksZD09bnVsbHx8ZC5zZXQoZixnKSk7cmV0dXJuIGcudGVzdChhKX1jYXRjaChoKXtyZXR1cm4hMX19ZnVuY3Rpb24gS2coYSxiKXtyZXR1cm4gU3RyaW5nKGEpLmluZGV4T2YoU3RyaW5nKGIpKT49MH1mdW5jdGlvbiBMZyhhLGIpe3JldHVybiBTdHJpbmcoYSk9PT1TdHJpbmcoYil9ZnVuY3Rpb24gTWcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPj1OdW1iZXIoYil9ZnVuY3Rpb24gTmcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPD1OdW1iZXIoYil9ZnVuY3Rpb24gT2coYSxiKXtyZXR1cm4gTnVtYmVyKGEpPk51bWJlcihiKX1mdW5jdGlvbiBQZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8TnVtYmVyKGIpfQpmdW5jdGlvbiBRZyhhLGIpe3JldHVybiBTYihTdHJpbmcoYSksU3RyaW5nKGIpKX07ZnVuY3Rpb24gWGcoYSl7dmFyIGI9YS5zZWFyY2g7cmV0dXJuIGEucHJvdG9jb2wrIi8vIithLmhvc3RuYW1lK2EucGF0aG5hbWUrKGI/YisiJnJpY2hzc3Rzc2UiOiI/cmljaHNzdHNzZSIpfTt2YXIgWWc9ZnVuY3Rpb24oKXt0aGlzLlI9IiJ9LCRnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9Yi5mYWxsYmFja191cmwsZD1iLmZhbGxiYWNrX3VybF9tZXRob2Q7aWYoYyYmZCl7dmFyIGU9e307WmcoYSwoZVtkXT1bY10sZS5vcHRpb25zPXt9LGUpKX19fSxhaD1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTt0eXBlb2YgZj09PSJzdHJpbmciJiZjKGYsYil9fSxaZz1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPUNkKGIub3B0aW9ucyk/Yi5vcHRpb25zOnt9LGQ9bShPYmplY3Qua2V5cyhiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1iW2ZdO3N3aXRjaChmKXtjYXNlICJzZW5kX3BpeGVsIjphaChnLGMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLksoaCxsKX0pO2JyZWFrO2Nhc2UgImZldGNoIjphaChnLApjLGZ1bmN0aW9uKGgsbCl7cmV0dXJuIHZvaWQgYS5IKGgsbCl9KX19fTt2YXIgYmg9L14oW2Etel1bYS16MC05XSopOighfFw/KShcKnxzdHJpbmd8Ym9vbGVhbnxudW1iZXJ8Rm58UGl4aWVNYXB8TGlzdHxPcGFxdWVWYWx1ZSkkL2ksY2g9e0ZuOiJmdW5jdGlvbiIsUGl4aWVNYXA6Ik9iamVjdCIsTGlzdDoiQXJyYXkifTsKZnVuY3Rpb24gZGgoYSxiKXtmb3IodmFyIGM9WyJpbnB1dDohKiJdLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9YmguZXhlYyhjW2RdKTtpZighZSl0aHJvdyBFcnJvcigiSW50ZXJuYWwgRXJyb3IgaW4gIithKTt2YXIgZj1lWzFdLGc9ZVsyXT09PSIhIixoPWVbM10sbD1iW2RdO2lmKGw9PW51bGwpe2lmKGcpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBSZXF1aXJlZCBhcmd1bWVudCAiK2YrIiBub3Qgc3VwcGxpZWQuIik7fWVsc2UgaWYoaCE9PSIqIil7dmFyIG49dHlwZW9mIGw7bCBpbnN0YW5jZW9mIEtkP249IkZuIjpsIGluc3RhbmNlb2YgR2Q/bj0iTGlzdCI6bCBpbnN0YW5jZW9mIGtiP249IlBpeGllTWFwIjpsIGluc3RhbmNlb2YgU2Q/bj0iUGl4aWVQcm9taXNlIjpsIGluc3RhbmNlb2YgUGQmJihuPSJPcGFxdWVWYWx1ZSIpO2lmKG4hPT1oKXRocm93IEVycm9yKCJFcnJvciBpbiAiK2ErIi4gQXJndW1lbnQgIitmKyIgaGFzIHR5cGUgIisoKGNoW25dfHxuKSsiLCB3aGljaCBkb2VzIG5vdCBtYXRjaCByZXF1aXJlZCB0eXBlICIpKwooKGNoW2hdfHxoKSsiLiIpKTt9fX1mdW5jdGlvbiBLKGEsYixjKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2cgaW5zdGFuY2VvZiBLZD9kLnB1c2goImZ1bmN0aW9uIik6ZyBpbnN0YW5jZW9mIEdkP2QucHVzaCgiQXJyYXkiKTpnIGluc3RhbmNlb2Yga2I/ZC5wdXNoKCJPYmplY3QiKTpnIGluc3RhbmNlb2YgU2Q/ZC5wdXNoKCJQcm9taXNlIik6ZyBpbnN0YW5jZW9mIFBkP2QucHVzaCgiT3BhcXVlVmFsdWUiKTpkLnB1c2godHlwZW9mIGcpfXJldHVybiBFcnJvcigiQXJndW1lbnQgZXJyb3IgaW4gIithKyIuIEV4cGVjdGVkIGFyZ3VtZW50IHR5cGVzIFsiKyhiLmpvaW4oIiwiKSsiXSwgYnV0IHJlY2VpdmVkIFsiKSsoZC5qb2luKCIsIikrIl0uIikpfWZ1bmN0aW9uIGVoKGEpe3JldHVybiBhIGluc3RhbmNlb2Yga2J9ZnVuY3Rpb24gZmgoYSl7cmV0dXJuIGVoKGEpfHxhPT09bnVsbHx8Z2goYSl9CmZ1bmN0aW9uIGhoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgS2R9ZnVuY3Rpb24gaWgoYSl7cmV0dXJuIGhoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gamgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBHZH1mdW5jdGlvbiBraChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFBkfWZ1bmN0aW9uIGxoKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIG1oKGEpe3JldHVybiBsaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIG5oKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn1mdW5jdGlvbiBvaChhKXtyZXR1cm4gbmgoYSl8fGdoKGEpfWZ1bmN0aW9uIHBoKGEpe3JldHVybiBuaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIHFoKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIifWZ1bmN0aW9uIGdoKGEpe3JldHVybiBhPT09dm9pZCAwfTtmdW5jdGlvbiByaChhKXtyZXR1cm4iIithfQpmdW5jdGlvbiBzaChhLGIpe3ZhciBjPVtdO3JldHVybiBjfTtmdW5jdGlvbiB0aChhLGIpe3ZhciBjPW5ldyBLZChhLGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXT10aGlzLmV2YWx1YXRlKGRbZV0pO3RyeXtyZXR1cm4gYi5hcHBseSh0aGlzLGQpfWNhdGNoKGcpe3Rocm93IGNiKGcpO319KTtjLlphKCk7cmV0dXJuIGN9CmZ1bmN0aW9uIHVoKGEsYil7dmFyIGM9bmV3IGtiLGQ7Zm9yKGQgaW4gYilpZihiLmhhc093blByb3BlcnR5KGQpKXt2YXIgZT1iW2RdO3liKGUpP2Muc2V0KGQsdGgoYSsiXyIrZCxlKSk6Q2QoZSk/Yy5zZXQoZCx1aChhKyJfIitkLGUpKTooQWIoZSl8fHpiKGUpfHx0eXBlb2YgZT09PSJib29sZWFuIikmJmMuc2V0KGQsZSl9Yy5aYSgpO3JldHVybiBjfTtmdW5jdGlvbiB3aChhLGIpe2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydEFwaVN1YmplY3QiLApjKX07ZnVuY3Rpb24geGgoYSxiKXtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIFNkKXRocm93IEVycm9yKCJBcmd1bWVudCBhY3R1YWwgY2Fubm90IGhhdmUgdHlwZSBQcm9taXNlLiBBc3NlcnRpb25zIG9uIGFzeW5jaHJvbm91cyBjb2RlIGFyZW4ndCBzdXBwb3J0ZWQuIik7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydFRoYXRTdWJqZWN0IixjKX07ZnVuY3Rpb24geWgoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBiPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxjPVtdLGQ9dGhpcy5ULGU9MDtlPGIubGVuZ3RoOysrZSljLnB1c2goVGQoYltlXSxkKSk7cmV0dXJuIFVkKGEuYXBwbHkobnVsbCxjKSl9fWZ1bmN0aW9uIHpoKCl7Zm9yKHZhciBhPU1hdGgsYj1BaCxjPXt9LGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTthLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT15aChhW2VdLmJpbmQoYSkpKX1yZXR1cm4gY307ZnVuY3Rpb24gQmgoYSl7cmV0dXJuIGEhPW51bGwmJlNiKGEsIl9fY3Z0XyIpfTtmdW5jdGlvbiBDaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRGgoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChjKXt9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJKGEpfWNhdGNoKGIpe319O2Z1bmN0aW9uIEZoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhhKSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gR2goYSxiKXt2YXIgYz0hMTt2YXIgZD1KU09OLnBhcnNlKGEpO2lmKCFkKXRocm93IEVycm9yKCJJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBzdHJpbmcgd2FzIGdpdmVuLiIpO2M9SGgoZCxiKTtyZXR1cm4gY30KdmFyIEloPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe2lmKGE9PT12b2lkIDApcmV0dXJuO2E9YVtiW2NdXX1yZXR1cm4gYX0sSmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnByZUhpdDtpZihjKXt2YXIgZD1hWzBdO3N3aXRjaChkKXtjYXNlICJoaXREYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRIaXREYXRhKGFbMV0pLGEuc2xpY2UoMikpO2Nhc2UgIm1ldGFkYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRNZXRhZGF0YShhWzFdKSxhLnNsaWNlKDIpKTtjYXNlICJldmVudE5hbWUiOnJldHVybiBjLmdldEV2ZW50TmFtZSgpO2Nhc2UgImRlc3RpbmF0aW9uSWQiOnJldHVybiBjLmdldERlc3RpbmF0aW9uSWQoKTtkZWZhdWx0OnRocm93IEVycm9yKGQrIiBpcyBub3QgYSB2YWxpZCBmaWVsZCB0aGF0IGNhbiBiZSBhY2Nlc3NlZFxuICAgICAgICAgICAgICAgICAgICAgIGZyb20gUHJlSGl0IGRhdGEuIik7fX19LApLaD1mdW5jdGlvbihhLGIpe2lmKGEpe2lmKGEuY29udGV4dFZhbHVlIT09dm9pZCAwKXt2YXIgYzthOnt2YXIgZD1hLmNvbnRleHRWYWx1ZSxlPWQua2V5UGFydHM7aWYoZSYmZS5sZW5ndGghPT0wKXt2YXIgZj1kLm5hbWVzcGFjZVR5cGU7c3dpdGNoKGYpe2Nhc2UgMTpjPUpoKGUsYik7YnJlYWsgYTtjYXNlIDI6dmFyIGc9Yi5tYWNybztjPWc/Z1tlWzBdXTp2b2lkIDA7YnJlYWsgYTtkZWZhdWx0OnRocm93IEVycm9yKCJVbmtub3duIE5hbWVzcGFjZSBUeXBlIHVzZWQ6ICIrZik7fX1jPXZvaWQgMH1yZXR1cm4gY31pZihhLmJvb2xlYW5FeHByZXNzaW9uVmFsdWUhPT12b2lkIDApcmV0dXJuIEhoKGEuYm9vbGVhbkV4cHJlc3Npb25WYWx1ZSxiKTtpZihhLmJvb2xlYW5WYWx1ZSE9PXZvaWQgMClyZXR1cm4hIWEuYm9vbGVhblZhbHVlO2lmKGEuc3RyaW5nVmFsdWUhPT12b2lkIDApcmV0dXJuIFN0cmluZyhhLnN0cmluZ1ZhbHVlKTtpZihhLmludGVnZXJWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuaW50ZWdlclZhbHVlKTsKaWYoYS5kb3VibGVWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuZG91YmxlVmFsdWUpO3Rocm93IEVycm9yKCJVbmtub3duIGZpZWxkIHVzZWQgZm9yIHZhcmlhYmxlIG9mIHR5cGUgRXhwcmVzc2lvblZhbHVlOiIrYSk7fX0sSGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmFyZ3M7aWYoIUFycmF5LmlzQXJyYXkoYyl8fGMubGVuZ3RoPT09MCl0aHJvdyBFcnJvcignSW52YWxpZCBib29sZWFuIGV4cHJlc3Npb24gZm9ybWF0LiBFeHBlY3RlZCAiYXJncyI6JytjKyIgcHJvcGVydHkgdG9cbiAgICAgICAgIGJlIG5vbi1lbXB0eSBhcnJheS4iKTt2YXIgZD1mdW5jdGlvbihnKXtyZXR1cm4gS2goZyxiKX07c3dpdGNoKGEudHlwZSl7Y2FzZSAxOmZvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKWlmKGQoY1tlXSkpcmV0dXJuITA7cmV0dXJuITE7Y2FzZSAyOmZvcih2YXIgZj0wO2Y8Yy5sZW5ndGg7ZisrKWlmKCFkKGNbZl0pKXJldHVybiExO3JldHVybiBjLmxlbmd0aD4wO2Nhc2UgMzpyZXR1cm4hZChjWzBdKTsKY2FzZSA0OnJldHVybiBKZyhkKGNbMF0pLGQoY1sxXSksITEsYi5yZWdleENhY2hlKTtjYXNlIDU6cmV0dXJuIExnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA2OnJldHVybiBRZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgNzpyZXR1cm4gSGcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDg6cmV0dXJuIEtnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA5OnJldHVybiBQZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTA6cmV0dXJuIE5nKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMTpyZXR1cm4gT2coZChjWzBdKSxkKGNbMV0pKTtjYXNlIDEyOnJldHVybiBNZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTM6cmV0dXJuIElnKGQoY1swXSksU3RyaW5nKGQoY1sxXSkpKTtkZWZhdWx0OnRocm93IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBmb3JtYXQuIEV4cGVjdGVkICJ0eXBlIiBwcm9wZXJ0eSB0b2JlIGEgcG9zaXRpdmUgaW50ZWdlciB3aGljaCBpcyBsZXNzIHRoYW4gMTQuJyk7fX07CmZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtyZXR1cm4gZT9kOm51bGx9O3ZhciBBaD0iZmxvb3IgY2VpbCByb3VuZCBtYXggbWluIGFicyBwb3cgc3FydCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBWaCgpe3ZhciBhPXt9O3JldHVybntXcjpmdW5jdGlvbihiKXtyZXR1cm4gYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOnZvaWQgMH0sS286ZnVuY3Rpb24oYixjKXthW2JdPWN9LHJlc2V0OmZ1bmN0aW9uKCl7YT17fX19fWZ1bmN0aW9uIFdoKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEtkLnByb3RvdHlwZS5pbnZva2UuYXBwbHkoYSxbYl0uY29uY2F0KHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSkpfX0KZnVuY3Rpb24gWGgoYSxiKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7fQpmdW5jdGlvbiBZaChhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJQaXhpZU1hcCJdLGFyZ3VtZW50cyk7fTt2YXIgWmg9e307dmFyICRoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYjtpZihhIGluc3RhbmNlb2YgR2QpZm9yKHZhciBjPWEuRmEoKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF07YS5oYXMoZSkmJmIuc2V0KGUsYS5nZXQoZSkpfWVsc2UgaWYoYSBpbnN0YW5jZW9mIEtkKWZvcih2YXIgZj1hLkZhKCksZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO2Iuc2V0KGgsYS5nZXQoaCkpfWVsc2UgZm9yKHZhciBsPTA7bDxhLmxlbmd0aDtsKyspYi5zZXQobCxhW2xdKTtyZXR1cm4gYn07ClpoLmtleXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5GYSgpKTtyZXR1cm4gbmV3IEdkfTsKWmgudmFsdWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuaGMoKSk7cmV0dXJuIG5ldyBHZH07ClpoLmVudHJpZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5mYygpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gbmV3IEdkKGIpfSkpO3JldHVybiBuZXcgR2R9OwpaaC5mcmVlemU9ZnVuY3Rpb24oYSl7KGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZCkmJmEuWmEoKTtyZXR1cm4gYX07WmguZGVsZXRlPWZ1bmN0aW9uKGEsYil7aWYoYSBpbnN0YW5jZW9mIGtiJiYhYS5IYigpKXJldHVybiBhLnJlbW92ZShiKSwhMDtyZXR1cm4hMX07ZnVuY3Rpb24gTChhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPWEuVC54YigpO2lmKCFkKXRocm93IEVycm9yKCJNaXNzaW5nIHByb2dyYW0gc3RhdGUuIik7aWYoZC5pdCl7dHJ5e2QuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX1jYXRjaChlKXt0aHJvdyBzYigiVEFHR0lORyIsMjEpLGU7fXJldHVybn1kLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9O3ZhciBhaT1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPSEwO307YWkucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuY29udGFpbnMoYSk/dGhpcy5LW2FdOnZvaWQgMDtyZXR1cm4gY307YWkucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLksuaGFzT3duUHJvcGVydHkoYSl9OwphaS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZih0aGlzLkguaGFzT3duUHJvcGVydHkoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGFuIEFQSSB3aXRoIGFuIGV4aXN0aW5nIHByaXZhdGUgQVBJIG5hbWU6ICIrYSsiLiIpO3RoaXMuS1thXT1jP3ZvaWQgMDp5YihiKT90aChhLGIpOnVoKGEsYil9O2Z1bmN0aW9uIGJpKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfTtmdW5jdGlvbiBjaSgpe3ZhciBhPXt9OwpyZXR1cm4gYX07dmFyIGRpPXt9LGVpPShkaVtGLkQuc2FdPSJnY3UiLGRpW0YuRC5laF09ImVwdCIsZGlbRi5ELlNiXT0iZ2NsZ2IiLGRpW0YuRC5sYl09ImdjbGF3IixkaVtGLkQuemxdPSJnY2xpZF9sZW4iLGRpW0YuRC5CZV09ImdjbGdzIixkaVtGLkQuQ2VdPSJnY2xscCIsZGlbRi5ELkRlXT0iZ2Nsc3QiLGRpW0YuRC5FZF09ImF1aWQiLGRpW0YuRC5CbF09ImFlIixkaVtGLkQuQ2ZdPSJkc2NudCIsZGlbRi5ELkRmXT0iZmNudHIiLGRpW0YuRC5FZl09ImZsbmciLGRpW0YuRC5GZl09Im1pZCIsZGlbRi5ELndpXT0iYnR0eXBlIixkaVtGLkQuS2JdPSJnYWNpZCIsZGlbRi5ELkdkXT0ibGFiZWwiLGRpW0YuRC5GZV09ImNhcGkiLGRpW0YuRC5qaF09InBzY2RsIixkaVtGLkQuZWJdPSJjdXJyZW5jeV9jb2RlIixkaVtGLkQuR2VdPSJ2ZGx0diIsZGlbRi5ELmtoXT0iY2xvY3QiLGRpW0YuRC5FbF09Il9kYmciLGRpW0YuRC5JZV09Im9lZGVsZCIsZGlbRi5ELlZjXT0iZWRpZCIsZGlbRi5ELk1kXT0iZXZuaWQiLApkaVtGLkQuRWldPSJldmppZCIsZGlbRi5ELk5kXT0iZXhjaWQiLGRpW0YuRC5yaF09ImdhYyIsZGlbRi5ELkplXT0iZ2FjZ2IiLGRpW0YuRC5NbF09ImdhY21jb3YiLGRpW0YuRC5LZV09ImdkcHIiLGRpW0YuRC5YY109ImdkaWQiLGRpW0YuRC5MZV09Il9uZyIsZGlbRi5ELmNxXT0iX29ubyIsZGlbRi5ELnRoXT0iZ3BwX3NpZCIsZGlbRi5ELnVoXT0iZ3BwIixkaVtGLkQuUGxdPSJnc2FleHAiLGRpW0YuRC5WZl09Il90dSIsZGlbRi5ELk1lXT0iZnJtIixkaVtGLkQuS2ldPSJndG1fdXAiLGRpW0YuRC5QZF09ImxwcyIsZGlbRi5ELkxpXT0iZGlkIixkaVtGLkQuUWRdPSJmY250ciIsZGlbRi5ELlJkXT0iZmxuZyIsZGlbRi5ELlNkXT0ibWlkIixkaVtGLkQuTmVdPXZvaWQgMCxkaVtGLkQuTWJdPSJ0aWJhIixkaVtGLkQuV2JdPSJyZHAiLGRpW0YuRC54Y109ImVjc2lkIixkaVtGLkQuWmZdPSJnYV91aWQiLGRpW0YuRC5VZF09ImRlbG9wYyIsZGlbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IiwKZGlbRi5ELlBhXT0ib2lkIixkaVtGLkQuZG1dPSJvaWRzcmMiLGRpW0YuRC5mbV09InVwdGdzIixkaVtGLkQuY2ddPSJ1YWEiLGRpW0YuRC5kZ109InVhYiIsZGlbRi5ELmVnXT0idWFmdmwiLGRpW0YuRC5mZ109InVhbWIiLGRpW0YuRC5nZ109InVhbSIsZGlbRi5ELmhnXT0idWFwIixkaVtGLkQuaWddPSJ1YXB2IixkaVtGLkQuamddPSJ1YXciLGRpW0YuRC5nbV09ImVjX2xhdCIsZGlbRi5ELmhtXT0iZWNfbWV0YSIsZGlbRi5ELmltXT0iZWNfbSIsZGlbRi5ELmptXT0iZWNfc2VsIixkaVtGLkQua21dPSJlY19zIixkaVtGLkQuQmNdPSJlY19tb2RlIixkaVtGLkQuZmJdPSJ1c2VySWQiLGRpW0YuRC5rZ109InVzX3ByaXZhY3kiLGRpW0YuRC5RYV09InZhbHVlIixkaVtGLkQucW1dPSJtY292IixkaVtGLkQuV2ldPSJobiIsZGlbRi5ELlZtXT0iZ3RtX2VlIixkaVtGLkQuWWldPSJ1aXAiLGRpW0YuRC5KaF09Im10IixkaVtGLkQuZGVdPSJucGEiLGRpW0YuRC5ZcV09InNnX3VjIixkaVtGLkQueWldPQpudWxsLGRpW0YuRC5iZF09bnVsbCxkaVtGLkQudGJdPW51bGwsZGlbRi5ELkhhXT1udWxsLGRpW0YuRC56YV09bnVsbCxkaVtGLkQuVWFdPW51bGwsZGlbRi5ELlBlXT1udWxsLGRpW0YuRC5lZF09bnVsbCxkaVtGLkQuc2hdPW51bGwsZGlbRi5ELkJkXT1udWxsLGRpW0YuRC5DZF09bnVsbCxkaVtGLkQuZmhdPW51bGwsZGlbRi5ELmdoXT1udWxsLGRpW0YuRC5UYV09bnVsbCxkaVtGLkQuV2NdPW51bGwsZGkpO2Z1bmN0aW9uIGZpKGEsYil7aWYoYSl7dmFyIGM9YS5zcGxpdCgieCIpO2MubGVuZ3RoPT09MiYmKGdpKGIsInVfdyIsY1swXSksZ2koYiwidV9oIixjWzFdKSl9fWZ1bmN0aW9uIGhpKGEpe3ZhciBiPWlpO2I9Yj09PXZvaWQgMD9qaTpiO3JldHVybiBraShsaShhLGIpKX1mdW5jdGlvbiBraShhKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4hIWJ9KS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIigiK1ttaShiLnZhbHVlKSxtaShiLnF1YW50aXR5KSxtaShiLml0ZW1faWQpLG1pKGIuc3RhcnRfZGF0ZSksbWkoYi5lbmRfZGF0ZSldLmpvaW4oIioiKSsiKSJ9KS5qb2luKCIiKX0KZnVuY3Rpb24gbGkoYSxiKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hIWN9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJue2l0ZW1faWQ6YihjKSxxdWFudGl0eTpjLnF1YW50aXR5LHZhbHVlOmMucHJpY2Usc3RhcnRfZGF0ZTpjLnN0YXJ0X2RhdGUsZW5kX2RhdGU6Yy5lbmRfZGF0ZX19KX1mdW5jdGlvbiBqaShhKXtyZXR1cm5bYS5pdGVtX2lkLGEuaWQsYS5pdGVtX25hbWVdLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIhPW51bGx9KX1mdW5jdGlvbiBuaShhKXtpZihhJiZhLmxlbmd0aClyZXR1cm4gYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU/Yi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZToiIn0pLmpvaW4oIiwiKX1mdW5jdGlvbiBnaShhLGIsYyl7Yz09PXZvaWQgMHx8Yz09PW51bGx8fGM9PT0iIiYmIXlnW2JdfHwoYVtiXT1jKX0KZnVuY3Rpb24gbWkoYSl7cmV0dXJuIHR5cGVvZiBhIT09Im51bWJlciImJnR5cGVvZiBhIT09InN0cmluZyI/IiI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBvaSgpe3RoaXMuYmxvY2tTaXplPS0xfTtmdW5jdGlvbiBwaShhLGIpe3RoaXMuYmxvY2tTaXplPS0xO3RoaXMuYmxvY2tTaXplPTY0O3RoaXMuTj1SYS5VaW50OEFycmF5P25ldyBVaW50OEFycmF5KHRoaXMuYmxvY2tTaXplKTpBcnJheSh0aGlzLmJsb2NrU2l6ZSk7dGhpcy5SPXRoaXMuSz0wO3RoaXMuSD1bXTt0aGlzLmZhPWE7dGhpcy5aPWI7dGhpcy5qYT1SYS5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCk7cWk9PT12b2lkIDAmJihSYS5JbnQzMkFycmF5P3FpPW5ldyBJbnQzMkFycmF5KHJpKTpxaT1yaSk7dGhpcy5yZXNldCgpfVNhKHBpLG9pKTtmb3IodmFyIHNpPVtdLHRpPTA7dGk8NjM7dGkrKylzaVt0aV09MDt2YXIgdWk9W10uY29uY2F0KDEyOCxzaSk7CnBpLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuUj10aGlzLks9MDt2YXIgYTtpZihSYS5JbnQzMkFycmF5KWE9bmV3IEludDMyQXJyYXkodGhpcy5aKTtlbHNle3ZhciBiPXRoaXMuWixjPWIubGVuZ3RoO2lmKGM+MCl7Zm9yKHZhciBkPUFycmF5KGMpLGU9MDtlPGM7ZSsrKWRbZV09YltlXTthPWR9ZWxzZSBhPVtdfXRoaXMuSD1hfTsKdmFyIHZpPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hLk4sYz1hLmphLGQ9MCxlPTA7ZTxiLmxlbmd0aDspY1tkKytdPWJbZV08PDI0fGJbZSsxXTw8MTZ8YltlKzJdPDw4fGJbZSszXSxlPWQqNDtmb3IodmFyIGY9MTY7Zjw2NDtmKyspe3ZhciBnPWNbZi0xNV18MCxoPWNbZi0yXXwwO2NbZl09KChjW2YtMTZdfDApKygoZz4+Pjd8Zzw8MjUpXihnPj4+MTh8Zzw8MTQpXmc+Pj4zKXwwKSsoKGNbZi03XXwwKSsoKGg+Pj4xN3xoPDwxNSleKGg+Pj4xOXxoPDwxMyleaD4+PjEwKXwwKXwwfWZvcih2YXIgbD1hLkhbMF18MCxuPWEuSFsxXXwwLHA9YS5IWzJdfDAscT1hLkhbM118MCxyPWEuSFs0XXwwLHQ9YS5IWzVdfDAsdT1hLkhbNl18MCx2PWEuSFs3XXwwLHg9MDt4PDY0O3grKyl7dmFyIHk9KChsPj4+MnxsPDwzMCleKGw+Pj4xM3xsPDwxOSleKGw+Pj4yMnxsPDwxMCkpKyhsJm5ebCZwXm4mcCl8MCx6PSh2Kygocj4+PjZ8cjw8MjYpXihyPj4+MTF8cjw8MjEpXihyPj4+MjV8cjw8NykpfAowKSsoKChyJnRefnImdSkrKHFpW3hdfDApfDApKyhjW3hdfDApfDApfDA7dj11O3U9dDt0PXI7cj1xK3p8MDtxPXA7cD1uO249bDtsPXoreXwwfWEuSFswXT1hLkhbMF0rbHwwO2EuSFsxXT1hLkhbMV0rbnwwO2EuSFsyXT1hLkhbMl0rcHwwO2EuSFszXT1hLkhbM10rcXwwO2EuSFs0XT1hLkhbNF0rcnwwO2EuSFs1XT1hLkhbNV0rdHwwO2EuSFs2XT1hLkhbNl0rdXwwO2EuSFs3XT1hLkhbN10rdnwwfTsKcGkucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWEubGVuZ3RoKTt2YXIgYz0wLGQ9dGhpcy5LO2lmKHR5cGVvZiBhPT09InN0cmluZyIpZm9yKDtjPGI7KXRoaXMuTltkKytdPWEuY2hhckNvZGVBdChjKyspLGQ9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKTtlbHNle3ZhciBlLGY9dHlwZW9mIGE7ZT1mIT0ib2JqZWN0Ij9mOmE/QXJyYXkuaXNBcnJheShhKT8iYXJyYXkiOmY6Im51bGwiO2lmKGU9PSJhcnJheSJ8fGU9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKWZvcig7YzxiOyl7dmFyIGc9YVtjKytdO2lmKCEoIm51bWJlciI9PXR5cGVvZiBnJiYwPD1nJiYyNTU+PWcmJmc9PShnfDApKSl0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIGEgYnl0ZSBhcnJheSIpO3RoaXMuTltkKytdPWc7ZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApfWVsc2UgdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBzdHJpbmcgb3IgYXJyYXkiKTsKfXRoaXMuSz1kO3RoaXMuUis9Yn07cGkucHJvdG90eXBlLmRpZ2VzdD1mdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5SKjg7dGhpcy5LPDU2P3RoaXMudXBkYXRlKHVpLDU2LXRoaXMuSyk6dGhpcy51cGRhdGUodWksdGhpcy5ibG9ja1NpemUtKHRoaXMuSy01NikpO2Zvcih2YXIgYz02MztjPj01NjtjLS0pdGhpcy5OW2NdPWImMjU1LGIvPTI1Njt2aSh0aGlzKTtmb3IodmFyIGQ9MCxlPTA7ZTx0aGlzLmZhO2UrKylmb3IodmFyIGY9MjQ7Zj49MDtmLT04KWFbZCsrXT10aGlzLkhbZV0+PmYmMjU1O3JldHVybiBhfTsKdmFyIHJpPVsxMTE2MzUyNDA4LDE4OTk0NDc0NDEsMzA0OTMyMzQ3MSwzOTIxMDA5NTczLDk2MTk4NzE2MywxNTA4OTcwOTkzLDI0NTM2MzU3NDgsMjg3MDc2MzIyMSwzNjI0MzgxMDgwLDMxMDU5ODQwMSw2MDcyMjUyNzgsMTQyNjg4MTk4NywxOTI1MDc4Mzg4LDIxNjIwNzgyMDYsMjYxNDg4ODEwMywzMjQ4MjIyNTgwLDM4MzUzOTA0MDEsNDAyMjIyNDc3NCwyNjQzNDcwNzgsNjA0ODA3NjI4LDc3MDI1NTk4MywxMjQ5MTUwMTIyLDE1NTUwODE2OTIsMTk5NjA2NDk4NiwyNTU0MjIwODgyLDI4MjE4MzQzNDksMjk1Mjk5NjgwOCwzMjEwMzEzNjcxLDMzMzY1NzE4OTEsMzU4NDUyODcxMSwxMTM5MjY5OTMsMzM4MjQxODk1LDY2NjMwNzIwNSw3NzM1Mjk5MTIsMTI5NDc1NzM3MiwxMzk2MTgyMjkxLDE2OTUxODM3MDAsMTk4NjY2MTA1MSwyMTc3MDI2MzUwLDI0NTY5NTYwMzcsMjczMDQ4NTkyMSwyODIwMzAyNDExLDMyNTk3MzA4MDAsMzM0NTc2NDc3MSwzNTE2MDY1ODE3LDM2MDAzNTI4MDQsCjQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxxaTtmdW5jdGlvbiB3aSgpe3BpLmNhbGwodGhpcyw4LHhpKX1TYSh3aSxwaSk7dmFyIHhpPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV07dmFyIHlpPS9eWzAtOUEtRmEtZl17NjR9JC87ZnVuY3Rpb24gemkoYSl7dHJ5e3JldHVybihuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKX1jYXRjaChiKXtyZXR1cm4gWmIoYSl9fWZ1bmN0aW9uIEFpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3ZhciBjO2lmKChjPWIuY3J5cHRvKT09bnVsbD8wOmMuc3VidGxlKXtpZih5aS50ZXN0KGEpKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dHJ5e3ZhciBkPXppKGEpO3JldHVybiBiLmNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2IixkKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBCaShlLGIpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4iZTIifSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTIiKX19ZWxzZSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMSIpfQpmdW5jdGlvbiBDaShhKXt0cnl7dmFyIGI9bmV3IHdpO2IudXBkYXRlKHppKGEpKTtyZXR1cm4gYi5kaWdlc3QoKX1jYXRjaChjKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBEaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCJ8fHlpLnRlc3QoYSkpcmV0dXJuIGE7dmFyIGM9Q2koYSk7aWYoYz09PSJlMiIpcmV0dXJuImUyIjt0cnl7cmV0dXJuIEJpKGMsYil9Y2F0Y2goZCl7cmV0dXJuImUyIn19ZnVuY3Rpb24gQmkoYSxiKXt2YXIgYz1BcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGEpKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZCl9KS5qb2luKCIiKTtyZXR1cm4gYi5idG9hKGMpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9O2Z1bmN0aW9uIEVpKCl7Zm9yKHZhciBhPSExLGI9ITEsYz0wO2E9PT1iOylpZihhPURiKDAsMSk9PT0wLGI9RGIoMCwxKT09PTAsYysrLGM+MzApcmV0dXJuO3JldHVybiBhfXZhciBHaT17c2s6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBGaS5zayhhLGIsYyl9fSxIaT1mdW5jdGlvbigpe3RoaXMuc3R1ZGllcz17fTt0aGlzLkg9RWl9OwpIaS5wcm90b3R5cGUuc2s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc3R1ZGllc1tiXTtpZighKChjPT09dm9pZCAwP0RiKDAsOTk5OSk6YyUxRTQpPGQucHJvYmFiaWxpdHkqKGQuY29udHJvbElkMj80OjIpKjFFNCkpcmV0dXJuIGE7YTp7dmFyIGU9ZC5zdHVkeUlkLGY9ZC5leHBlcmltZW50SWQsZz1kLmNvbnRyb2xJZCxoPWQuY29udHJvbElkMjtpZighKChhLmV4cHx8e30pW2ZdfHwoYS5leHB8fHt9KVtnXXx8aCYmKGEuZXhwfHx7fSlbaF0pKXt2YXIgbD1jIT09dm9pZCAwP2MlMj09PTA6dGhpcy5IKCk7aWYobCE9PXZvaWQgMCl7dmFyIG49bD8wOjE7aWYoaCl7dmFyIHA9YyE9PXZvaWQgMD8oYz4+MSklMj09PTA6dGhpcy5IKCk7aWYocD09PXZvaWQgMClicmVhayBhO258PShwPzA6MSk8PDF9bj09PTA/SWkoYSxmLGUpOm49PT0xP0lpKGEsZyxlKTpuPT09MiYmSWkoYSxoLGUpfX19cmV0dXJuIGF9Owp2YXIgS2k9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdP0ppKGMsYil8fCEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmV4cGVyaW1lbnRJZF06ITF9LExpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZCYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkXTohMX0sTWk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkMiYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkMl06ITF9LE5pPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEuZXhwfHx7fSxkPW0oT2JqZWN0LmtleXMoYykubWFwKE51bWJlcikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGNbZl09PT1iKXJldHVybiBmfX0sSmk9ZnVuY3Rpb24oYSwKYil7cmV0dXJuISFhLnN0dWRpZXNbYl0uYWN0aXZlfHxhLnN0dWRpZXNbYl0ucHJvYmFiaWxpdHk+LjV9LElpPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLmV4cHx8e307ZFtiXT1jO2EuZXhwPWR9LEZpPW5ldyBIaTt2YXIgaWo9ZnVuY3Rpb24oKXt0aGlzLkg9QS5nb29nbGVfdGFnX21hbmFnZXI9QS5nb29nbGVfdGFnX21hbmFnZXJ8fHt9fSxqajtmdW5jdGlvbiBraihhLGIpe2xqKCk7dmFyIGM9amo7cmV0dXJuIGMuSFthXT1jLkhbYV18fGIoKX1mdW5jdGlvbiBtaihhKXtsaigpO3JldHVybiBqai5IW2FdfWZ1bmN0aW9uIG5qKGEsYil7bGooKTtqai5IW2FdPWJ9ZnVuY3Rpb24gb2ooYSl7dmFyIGI9RSg1KTtsaigpO3ZhciBjPWpqO2MuSFtiXT1jLkhbYl18fGF9ZnVuY3Rpb24gcGooKXt2YXIgYT1FKDE5KTtsaigpO3ZhciBiPWpqO3JldHVybiBiLkhbYV09Yi5IW2FdfHx7fX1mdW5jdGlvbiBxaigpe3ZhciBhPUUoMTkpO2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gcmooKXtsaigpO3ZhciBhPWpqLGI9YS5ILnNlcXVlbmNlfHwxO2EuSC5zZXF1ZW5jZT1iKzE7cmV0dXJuIGJ9ZnVuY3Rpb24gbGooKXtqanx8KGpqPW5ldyBpail9O3ZhciBzaj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiAwO2Nhc2UgNDkxOnJldHVybiAxMjtjYXNlIDQ4MDpyZXR1cm4gMTE7Y2FzZSA0OTk6cmV0dXJuIDEwO2Nhc2UgNTAwOnJldHVybiA2O2Nhc2UgNDIxOnJldHVybiA5O2Nhc2UgNTYxOnJldHVybiAxNztjYXNlIDQ4MjpyZXR1cm4gMTU7Y2FzZSA1NzA6cmV0dXJuIDE5O2Nhc2UgNDk1OnJldHVybiAxMztjYXNlIDUxNDpyZXR1cm4gMTY7Y2FzZSA1NzM6cmV0dXJuIDE4O2Nhc2UgMjM1OnJldHVybiA4O2Nhc2UgNTM6cmV0dXJuIDE7Y2FzZSA1NDpyZXR1cm4gMjtjYXNlIDUyOnJldHVybiA0O2Nhc2UgNzU6cmV0dXJuIDN9fSx0aj1mdW5jdGlvbihhLGIpe2EuTltiXT0hMDt2YXIgYz1zaihiKTtjIT09dm9pZCAwJiYoV2ZbY109ITApfSxNPWZ1bmN0aW9uKGEpe3JldHVybiEhdWouTlthXX0sdWo9bmV3IGZ1bmN0aW9uKCl7dGhpcy5OPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107CnRqKHRoaXMsMTMyKTt2YXIgYT1OZig2LDZFNCk7WGZbMV09YTt2YXIgYj1OZig3LDEpO1hmWzNdPWI7dmFyIGM9TmYoMzUsNTApO1hmWzJdPWM7dmFyIGQ9TmYoNjksMTc3NjQ0ODkyMCk7WGZbNF09ZDsKdGoodGhpcyw0MzUpO3RqKHRoaXMsMTQxKTsKfTt2YXIgdmo9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFNldDt0aGlzLks9bmV3IFNldH0seGo9ZnVuY3Rpb24oYSl7dmFyIGI9d2ouSDthPWE9PT12b2lkIDA/W106YTt2YXIgYz1bXS5jb25jYXQodyhiLkgpKS5jb25jYXQoW10uY29uY2F0KHcoYi5LKSkpLmNvbmNhdChhKTtjLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGN9LHlqPWZ1bmN0aW9uKCl7dmFyIGE9W10uY29uY2F0KHcod2ouSC5IKSk7YS5zb3J0KGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGItY30pO3JldHVybiBhfSx6aj1mdW5jdGlvbigpe3ZhciBhPXdqLkgsYj1FKDQ0KTthLkg9bmV3IFNldDtpZihiIT09IiIpZm9yKHZhciBjPW0oYi5zcGxpdCgifiIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9TnVtYmVyKGQudmFsdWUpO2lzTmFOKGUpfHxhLkguYWRkKGUpfX07dmFyIEFqPXt9LEJqPXtfX2NsOjEsX19lY2w6MSxfX2VobDoxLF9fZXZsOjEsX19mYWw6MSxfX2ZpbDoxLF9fZnNsOjEsX19obDoxLF9famVsOjEsX19sY2w6MSxfX3NkbDoxLF9fdGw6MSxfX3l0bDoxfSxDaj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHtfX3BhdXNlZDoxLF9fdGc6MX0sQmopLERqLEVqPSExO0RqPUVqO3ZhciBGaj0iIjtBai5xaj1Gajt2YXIgd2o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPW5ldyB2an07dmFyIEdqPS86WzAtOV0rJC8sSGo9L15cZCtcLmZsc1wuZG91YmxlY2xpY2tcLm5ldCQvO2Z1bmN0aW9uIElqKGEsYixjLGQpe3ZhciBlPUpqKGEsISFkLGIpLGYsZztyZXR1cm4gYz8oZz1lW2JdKSE9bnVsbD9nOltdOihmPWVbYl0pPT1udWxsP3ZvaWQgMDpmWzBdfWZ1bmN0aW9uIEpqKGEsYixjKXtmb3IodmFyIGQ9e30sZT1tKGEuc3BsaXQoIiYiKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZS5zcGxpdCgiPSIpKSxoPWcubmV4dCgpLnZhbHVlLGw9eWEoZyksbj1kZWNvZGVVUklDb21wb25lbnQoaC5yZXBsYWNlKC9cKy9nLCIgIikpO2lmKGM9PT12b2lkIDB8fG49PT1jKXt2YXIgcD1sLmpvaW4oIj0iKTtkW25dfHwoZFtuXT1bXSk7ZFtuXS5wdXNoKGI/cDpkZWNvZGVVUklDb21wb25lbnQocC5yZXBsYWNlKC9cKy9nLCIgIikpKX19cmV0dXJuIGR9CmZ1bmN0aW9uIEtqKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIpe319ZnVuY3Rpb24gTGooYSxiLGMsZCxlKXtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7aWYoYj09PSJwcm90b2NvbCJ8fGI9PT0icG9ydCIpYS5wcm90b2NvbD1NaihhLnByb3RvY29sKXx8TWooQS5sb2NhdGlvbi5wcm90b2NvbCk7Yj09PSJwb3J0Ij9hLnBvcnQ9U3RyaW5nKE51bWJlcihhLmhvc3RuYW1lP2EucG9ydDpBLmxvY2F0aW9uLnBvcnQpfHwoYS5wcm90b2NvbD09PSJodHRwIj84MDphLnByb3RvY29sPT09Imh0dHBzIj80NDM6IiIpKTpiPT09Imhvc3QiJiYoYS5ob3N0bmFtZT0oYS5ob3N0bmFtZXx8QS5sb2NhdGlvbi5ob3N0bmFtZSkucmVwbGFjZShHaiwiIikudG9Mb3dlckNhc2UoKSk7cmV0dXJuIE5qKGEsYixjLGQsZSl9CmZ1bmN0aW9uIE5qKGEsYixjLGQsZSl7dmFyIGYsZz1NaihhLnByb3RvY29sKTtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7c3dpdGNoKGIpe2Nhc2UgInVybF9ub19mcmFnbWVudCI6Zj1PaihhKTticmVhaztjYXNlICJwcm90b2NvbCI6Zj1nO2JyZWFrO2Nhc2UgImhvc3QiOmY9YS5ob3N0bmFtZS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpO2lmKGMpe3ZhciBoPS9ed3d3XGQqXC4vLmV4ZWMoZik7aCYmaFswXSYmKGY9Zi5zdWJzdHJpbmcoaFswXS5sZW5ndGgpKX1icmVhaztjYXNlICJwb3J0IjpmPVN0cmluZyhOdW1iZXIoYS5wb3J0KXx8KGc9PT0iaHR0cCI/ODA6Zz09PSJodHRwcyI/NDQzOiIiKSk7YnJlYWs7Y2FzZSAicGF0aCI6YS5wYXRobmFtZXx8YS5ob3N0bmFtZXx8c2IoIlRBR0dJTkciLDEpO2Y9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCwxKT09PSIvIj9hLnBhdGhuYW1lOiIvIithLnBhdGhuYW1lO3ZhciBsPWYuc3BsaXQoIi8iKTsoZHx8W10pLmluZGV4T2YobFtsLmxlbmd0aC0KMV0pPj0wJiYobFtsLmxlbmd0aC0xXT0iIik7Zj1sLmpvaW4oIi8iKTticmVhaztjYXNlICJxdWVyeSI6Zj1hLnNlYXJjaC5yZXBsYWNlKCI/IiwiIik7ZSYmKGY9SWooZixlLCExKSk7YnJlYWs7Y2FzZSAiZXh0ZW5zaW9uIjp2YXIgbj1hLnBhdGhuYW1lLnNwbGl0KCIuIik7Zj1uLmxlbmd0aD4xP25bbi5sZW5ndGgtMV06IiI7Zj1mLnNwbGl0KCIvIilbMF07YnJlYWs7Y2FzZSAiZnJhZ21lbnQiOmY9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKTticmVhaztkZWZhdWx0OmY9YSYmYS5ocmVmfXJldHVybiBmfWZ1bmN0aW9uIE1qKGEpe3JldHVybiBhP2EucmVwbGFjZSgiOiIsIiIpLnRvTG93ZXJDYXNlKCk6IiJ9ZnVuY3Rpb24gT2ooYSl7dmFyIGI9IiI7aWYoYSYmYS5ocmVmKXt2YXIgYz1hLmhyZWYuaW5kZXhPZigiIyIpO2I9YzwwP2EuaHJlZjphLmhyZWYuc3Vic3RyaW5nKDAsYyl9cmV0dXJuIGJ9dmFyIFBqPXt9LFFqPTA7CmZ1bmN0aW9uIFJqKGEpe3ZhciBiPVBqW2FdO2lmKCFiKXt2YXIgYz1CLmNyZWF0ZUVsZW1lbnQoImEiKTthJiYoYy5ocmVmPWEpO3ZhciBkPWMucGF0aG5hbWU7ZFswXSE9PSIvIiYmKGF8fHNiKCJUQUdHSU5HIiwxKSxkPSIvIitkKTt2YXIgZT1jLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpO2I9e2hyZWY6Yy5ocmVmLHByb3RvY29sOmMucHJvdG9jb2wsaG9zdDpjLmhvc3QsaG9zdG5hbWU6ZSxwYXRobmFtZTpkLHNlYXJjaDpjLnNlYXJjaCxoYXNoOmMuaGFzaCxwb3J0OmMucG9ydH07UWo8NSYmKFBqW2FdPWIsUWorKyl9cmV0dXJuIGJ9ZnVuY3Rpb24gU2ooYSxiLGMpe3ZhciBkPVJqKGEpO3JldHVybiBhYyhiLGQsYyl9CmZ1bmN0aW9uIFRqKGEpe3ZhciBiPVJqKEEubG9jYXRpb24uaHJlZiksYz1MaihiLCJob3N0IiwhMSk7aWYoYyYmYy5tYXRjaChIaikpe3ZhciBkPUxqKGIsInBhdGgiKTtpZihkKXt2YXIgZT1kLnNwbGl0KGErIj0iKTtpZihlLmxlbmd0aD4xKXJldHVybiBlWzFdLnNwbGl0KCI7IilbMF0uc3BsaXQoIj8iKVswXX19fTt2YXIgVWo9eyJodHRwczovL3d3dy5nb29nbGUuY29tIjoiL2ciLCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSI6Ii9hcyIsImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iOiIvZ3MifSxWaj1bIi9hcy9kL2NjbS9jb252ZXJzaW9uIiwiL2cvZC9jY20vY29udmVyc2lvbiIsIi9ncy9jY20vY29udmVyc2lvbiIsIi9kL2NjbS9mb3JtLWRhdGEiXTtmdW5jdGlvbiBXaigpe3JldHVybiBJZig0Nyk/SmYoNTQpIT09MTohMX1mdW5jdGlvbiBYaigpe3ZhciBhPUUoMTgpLGI9YS5sZW5ndGg7cmV0dXJuIGFbYi0xXT09PSIvIj9hLnN1YnN0cmluZygwLGItMSk6YX0KZnVuY3Rpb24gWWooYSxiKXtpZihhKXt2YXIgYz0iIithO2MuaW5kZXhPZigiaHR0cDovLyIpIT09MCYmYy5pbmRleE9mKCJodHRwczovLyIpIT09MCYmKGM9Imh0dHBzOi8vIitjKTtjW2MubGVuZ3RoLTFdPT09Ii8iJiYoYz1jLnN1YnN0cmluZygwLGMubGVuZ3RoLTEpKTtyZXR1cm4gUmooIiIrYytiKS5ocmVmfX1mdW5jdGlvbiBaaihhKXtpZihhaygpKXJldHVybiBZaihhLCIvYW5hbHl0aWNzLmpzIil9ZnVuY3Rpb24gYmsoYSl7cmV0dXJuIGE9PT0yfHxhPT09M31mdW5jdGlvbiBjayhhKXtyZXR1cm4gTSg1ODgpJiZhPT09M31mdW5jdGlvbiBhaygpe3JldHVybiBXaigpfHxJZig1MCl9ZnVuY3Rpb24gZGsoKXtyZXR1cm4hIUFqLnFqJiZBai5xai5zcGxpdCgiQEAiKS5qb2luKCIiKSE9PSJTR1RNX1RPS0VOIn0KZnVuY3Rpb24gZWsoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9TyhhLGMudmFsdWUpO2lmKGQpcmV0dXJuIGR9fWZ1bmN0aW9uIGZrKGEsYixjKXtjPWM9PT12b2lkIDA/IiI6YztpZighV2ooKSlyZXR1cm4gYTt2YXIgZD1iP1VqW2FdfHwiIjoiIjtkPT09Ii9ncyImJihjPSIiKTtyZXR1cm4iIitYaigpK2QrY31mdW5jdGlvbiBnayhhKXtpZihXaigpKWZvcih2YXIgYj1tKFZqKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihTYihhLCIiK1hqKCkrZCkpcmV0dXJuIjo6In19CmZ1bmN0aW9uIGhrKCl7dmFyIGE9QTtpZighYSlyZXR1cm4hMTt0cnl7aWYoYT09PWEudG9wKXJldHVybiExO3ZhciBiPWEubG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGIuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIvIikhPT0tMSYmVGIoYiwiL3N3X2lmcmFtZS5odG1sIil9Y2F0Y2goYyl7cmV0dXJuITF9fTt2YXIgaWs9L2d0YWdbLlwvXWpzLyxqaz0vZ3RtWy5cL11qcy8sbGs9ZnVuY3Rpb24oYSl7dmFyIGI9a2s7aWYoKGEuc2NyaXB0Q29udGFpbmVySWR8fCIiKS5pbmRleE9mKCJHVE0tIik+PTApe3ZhciBjO2E6e3ZhciBkLGU9KGQ9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZC5zcmM7aWYoZSl7Zm9yKHZhciBmPUlmKDQ3KSxnPVJqKGUpLGg9Zj9nLnBhdGhuYW1lOiIiK2cuaG9zdG5hbWUrZy5wYXRobmFtZSxsPUIuc2NyaXB0cyxuPSIiLHA9MDtwPGwubGVuZ3RoOysrcCl7dmFyIHE9bFtwXTtpZighKHEuaW5uZXJIVE1MLmxlbmd0aD09PTB8fCFmJiZxLmlubmVySFRNTC5pbmRleE9mKGEuc2NyaXB0Q29udGFpbmVySWR8fCJTSE9VTERfTk9UX0JFX1NFVCIpPDB8fHEuaW5uZXJIVE1MLmluZGV4T2YoaCk8MCkpe2lmKHEuaW5uZXJIVE1MLmluZGV4T2YoIihmdW5jdGlvbih3LGQscyxsLGkpIik+PTApe2M9U3RyaW5nKHApO2JyZWFrIGF9bj1TdHJpbmcocCl9fWlmKG4pe2M9Cm47YnJlYWsgYX19Yz12b2lkIDB9dmFyIHI9YztpZihyKXJldHVybiBiLkg9ITAscn12YXIgdD1bXS5zbGljZS5jYWxsKEIuc2NyaXB0cyk7cmV0dXJuIGEuc2NyaXB0RWxlbWVudD9TdHJpbmcodC5pbmRleE9mKGEuc2NyaXB0RWxlbWVudCkpOiItMSJ9LG1rPWZ1bmN0aW9uKGEpe2lmKGtrLkgpcmV0dXJuIjEiO3ZhciBiLGM9KGI9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6Yi5zcmM7aWYoYyl7aWYoaWsudGVzdChjKSlyZXR1cm4iMyI7aWYoamsudGVzdChjKSlyZXR1cm4iMiJ9cmV0dXJuIjAifSxraz1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O2Z1bmN0aW9uIFAoYSl7c2IoIkdUTSIsYSl9O2Z1bmN0aW9uIG5rKGEpe3ZhciBiPW9rKCkuZGVzdGluYXRpb25BcnJheVthXSxjPW9rKCkuZGVzdGluYXRpb25bYV07cmV0dXJuIGImJmIubGVuZ3RoPjA/YlswXTpjfWZ1bmN0aW9uIHBrKGEsYil7dmFyIGM9b2soKTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO0NiKGMucGVuZGluZyxmdW5jdGlvbihkKXtyZXR1cm4gZC50YXJnZXQuY3RpZD09PWEuY3RpZCYmZC50YXJnZXQuaXNEZXN0aW5hdGlvbj09PWEuaXNEZXN0aW5hdGlvbn0pfHxjLnBlbmRpbmcucHVzaCh7dGFyZ2V0OmEsb25Mb2FkOmJ9KX1mdW5jdGlvbiBxaygpe3ZhciBhPUEuZ29vZ2xlX3RhZ3NfZmlyc3RfcGFydHk7QXJyYXkuaXNBcnJheShhKXx8KGE9W10pO2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpYltkLnZhbHVlXT0hMDtyZXR1cm4gT2JqZWN0LmZyZWV6ZShiKX0KdmFyIHJrPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5kZXN0aW5hdGlvbj17fTt0aGlzLmRlc3RpbmF0aW9uQXJyYXk9e307dGhpcy5jYW5vbmljYWw9e307dGhpcy5wZW5kaW5nPVtdO3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz17fTt0aGlzLmluamVjdGVkRmlyc3RQYXJ0eUNvbnRhaW5lcnM9cWsoKX07CmZ1bmN0aW9uIG9rKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pLGI9YS50aWRyO2ImJnR5cGVvZiBiPT09Im9iamVjdCJ8fChiPW5ldyByayxhLnRpZHI9Yik7dmFyIGM9YjtjLmNvbnRhaW5lcnx8KGMuY29udGFpbmVyPXt9KTtjLmRlc3RpbmF0aW9ufHwoYy5kZXN0aW5hdGlvbj17fSk7Yy5kZXN0aW5hdGlvbkFycmF5fHwoYy5kZXN0aW5hdGlvbkFycmF5PXt9KTtjLmNhbm9uaWNhbHx8KGMuY2Fub25pY2FsPXt9KTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO2MuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc3x8KGMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpKTtyZXR1cm4gY307ZnVuY3Rpb24gc2soKXtyZXR1cm4gSWYoNykmJnRrKCkuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYT09PUUoNSl9KX1mdW5jdGlvbiB1aygpe3ZhciBhO3JldHVybihhPUtmKDU1KSkhPW51bGw/YTpbXX1mdW5jdGlvbiB2aygpe3JldHVybiBFKDYpfHwiXyIrRSg1KX1mdW5jdGlvbiB3aygpe3ZhciBhPUUoMTApO3JldHVybiBhP2Euc3BsaXQoInwiKTpbRSg1KV19ZnVuY3Rpb24gdGsoKXt2YXIgYT1LZig1OSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyJ9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuaW5kZXhPZigiR1RNLSIpIT09MH0pOltdfWZ1bmN0aW9uIHhrKCl7dmFyIGE9eWsoemsoKSksYj1hJiZhLnBhcmVudDtpZihiKXJldHVybiB5ayhiKX0KZnVuY3Rpb24gQWsoKXt2YXIgYT15ayh6aygpKTtpZihhKXtmb3IoO2EucGFyZW50Oyl7dmFyIGI9eWsoYS5wYXJlbnQpO2lmKCFiKWJyZWFrO2E9Yn1yZXR1cm4gYX19ZnVuY3Rpb24geWsoYSl7dmFyIGI9b2soKTtyZXR1cm4gYS5pc0Rlc3RpbmF0aW9uP25rKGEuY3RpZCk6Yi5jb250YWluZXJbYS5jdGlkXX1mdW5jdGlvbiBCaygpe3ZhciBhPW9rKCk7aWYoYS5wZW5kaW5nKXtmb3IodmFyIGIsYz1bXSxkPSExLGU9d2soKSxmPXRrKCksZz17fSxoPTA7aDxhLnBlbmRpbmcubGVuZ3RoO2c9e1JnOnZvaWQgMH0saCsrKWcuUmc9YS5wZW5kaW5nW2hdLENiKGcuUmcudGFyZ2V0LmlzRGVzdGluYXRpb24/ZjplLGZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbj09PWwuUmcudGFyZ2V0LmN0aWR9fShnKSk/ZHx8KGI9Zy5SZy5vbkxvYWQsZD0hMCk6Yy5wdXNoKGcuUmcpO2EucGVuZGluZz1jO2lmKGIpdHJ5e2IodmsoKSl9Y2F0Y2gobCl7fX19CmZ1bmN0aW9uIENrKCl7Zm9yKHZhciBhPUUoNSksYj13aygpLGM9dGsoKSxkPXVrKCksZT1mdW5jdGlvbihxLHIpe3ZhciB0PXtjYW5vbmljYWxDb250YWluZXJJZDpFKDYpLHNjcmlwdENvbnRhaW5lcklkOmEsc3RhdGU6Mixjb250YWluZXJzOmIuc2xpY2UoKSxkZXN0aW5hdGlvbnM6Yy5zbGljZSgpfTtKYyYmKHQuc2NyaXB0RWxlbWVudD1KYyk7S2MmJih0LnNjcmlwdFNvdXJjZT1LYyk7eGsoKT09PXZvaWQgMCYmKHQuaHRtbExvYWRPcmRlcj1sayh0KSx0LmxvYWRTY3JpcHRUeXBlPW1rKHQpKTt2YXIgdSx2O3N3aXRjaChyKXtjYXNlIDA6dT1mdW5jdGlvbih6KXtmLmNvbnRhaW5lcltxXT16fTt2PWYuY29udGFpbmVyW3FdO2JyZWFrO2Nhc2UgMTp1PWZ1bmN0aW9uKHope2YuZGVzdGluYXRpb25BcnJheVtxXT1mLmRlc3RpbmF0aW9uQXJyYXlbcV18fFtdO2YuZGVzdGluYXRpb25BcnJheVtxXS51bnNoaWZ0KHopfTt2YXIgeCx5PSgoeD1mLmRlc3RpbmF0aW9uQXJyYXlbcV0pPT0KbnVsbD92b2lkIDA6eFswXSl8fGYuZGVzdGluYXRpb25bcV07IXl8fHkuc3RhdGUhPT0wJiZ5LnN0YXRlIT09MXx8KHY9eSk7YnJlYWs7Y2FzZSAyOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnB1c2goeil9LHY9dm9pZCAwfXUmJih2Pyh2LnN0YXRlPT09MCYmUCg5MyksbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx2LHQpKTp1KHQpKX0sZj1vaygpLGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSllKGgudmFsdWUsMCk7Zm9yKHZhciBsPW0oYyksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZC5pbmNsdWRlcyhwKT9lKHAsMSk6ZShwLDIpfWYuY2Fub25pY2FsW3ZrKCldPXt9O0JrKCl9ZnVuY3Rpb24gRGsoKXt2YXIgYT12aygpO3JldHVybiEhb2soKS5jYW5vbmljYWxbYV19CmZ1bmN0aW9uIEVrKGEpe3JldHVybiEhb2soKS5jb250YWluZXJbYV19ZnVuY3Rpb24gRmsoKXt2YXIgYT16aygpLGI9eWsoYSk7cmV0dXJuIGImJmIuY29udGV4dH1mdW5jdGlvbiBHayhhKXt2YXIgYj1uayhhKTtyZXR1cm4gYj9iLnN0YXRlIT09MDohMX1mdW5jdGlvbiB6aygpe3JldHVybntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpJZig3KX19ZnVuY3Rpb24gSGsoYSxiLGMpe3ZhciBkPXprKCksZT1vaygpLmNvbnRhaW5lclthXTtlJiZlLnN0YXRlIT09M3x8KG9rKCkuY29udGFpbmVyW2FdPXtzdGF0ZToxLGNvbnRleHQ6YixwYXJlbnQ6ZH0scGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiExfSxjKSl9ZnVuY3Rpb24gSWsoYSxiLGMpe3ZhciBkPW9rKCksZT1uayhhKTtlP2Uuc3RhdGU9MTooZT17Y29udGV4dDpiLHN0YXRlOjEscGFyZW50OnprKCl9LGQuZGVzdGluYXRpb25BcnJheVthXT1bZV0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sYyl9CmZ1bmN0aW9uIEprKGEsYixjLGQpe3ZhciBlPW9rKCksZj1uayhhKTtmP2Yuc3RhdGU9MDooZj17c3RhdGU6MCx0cmFuc3BvcnRVcmw6Yixjb250ZXh0OmMscGFyZW50OnprKCl9LGUuZGVzdGluYXRpb25BcnJheVthXT1bZl0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sZCk7UCg5MSl9ZnVuY3Rpb24gS2soKXt2YXIgYT1vaygpLmNvbnRhaW5lcixiO2ZvcihiIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtiXS5zdGF0ZT09PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gTGsoKXt2YXIgYT17fTtHYihvaygpLmRlc3RpbmF0aW9uLGZ1bmN0aW9uKGIsYyl7KGM9PW51bGw/dm9pZCAwOmMuc3RhdGUpPT09MCYmKGFbYl09Yyl9KTtHYihvaygpLmRlc3RpbmF0aW9uQXJyYXksZnVuY3Rpb24oYixjKXt2YXIgZD1jWzBdOyhkPT1udWxsP3ZvaWQgMDpkLnN0YXRlKT09PTAmJihhW2JdPWQpfSk7cmV0dXJuIGF9CmZ1bmN0aW9uIE1rKGEpe3JldHVybiEhKGEmJmEucGFyZW50JiZhLmNvbnRleHQmJmEuY29udGV4dC5zb3VyY2U9PT0xJiZhLnBhcmVudC5jdGlkLmluZGV4T2YoIkdUTS0iKSE9PTApfWZ1bmN0aW9uIE5rKCl7Zm9yKHZhciBhPW9rKCksYj1tKHdrKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGEuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc1tjLnZhbHVlXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIE9rPWZ1bmN0aW9uKCl7fTtPay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIn07dmFyIFBrPW5ldyBPazt2YXIgWGs9ZnVuY3Rpb24oKXt0aGlzLnN0b3JhZ2U9WWEoKX07WGsucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIpfTtYay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0b3JhZ2UuZ2V0KFN0cmluZyhhKSl9O3ZhciBZaztmdW5jdGlvbiBaayhhLGIpe1lrfHwoWWs9bmV3IFhrKTtZay5zZXQoYSxiKX1mdW5jdGlvbiAkayhhKXtZa3x8KFlrPW5ldyBYayk7cmV0dXJuIFlrLmdldChhKX1mdW5jdGlvbiBhbChhLGIpe1lrfHwoWWs9bmV3IFhrKTt2YXIgYz1ZaztjLnN0b3JhZ2UuaGFzKFN0cmluZyhhKSl8fGMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIoKSk7cmV0dXJuIGMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07ZnVuY3Rpb24gYmwoYSxiKXtmdW5jdGlvbiBjKGcpe3ZhciBoPVJqKGcpLGw9TGooaCwicHJvdG9jb2wiKSxuPUxqKGgsImhvc3QiLCEwKSxwPUxqKGgsInBvcnQiKSxxPUxqKGgsInBhdGgiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1wvJC8sIiIpO2lmKGw9PT12b2lkIDB8fGw9PT0iaHR0cCImJnA9PT0iODAifHxsPT09Imh0dHBzIiYmcD09PSI0NDMiKWw9IndlYiIscD0iZGVmYXVsdCI7cmV0dXJuW2wsbixwLHFdfWZvcih2YXIgZD1jKFN0cmluZyhhKSksZT1jKFN0cmluZyhiKSksZj0wO2Y8ZC5sZW5ndGg7ZisrKWlmKGRbZl0hPT1lW2ZdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGNsKGEpe3JldHVybiBkbChhKT8xOjB9CmZ1bmN0aW9uIGRsKGEpe3ZhciBiPWEuYXJnMCxjPWEuYXJnMTtpZihhLmFueV9vZiYmQXJyYXkuaXNBcnJheShjKSl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPUVkKGEse30pO0VkKHthcmcxOmNbZF0sYW55X29mOnZvaWQgMH0sZSk7aWYoY2woZSkpcmV0dXJuITB9cmV0dXJuITF9c3dpdGNoKGFbImZ1bmN0aW9uIl0pe2Nhc2UgIl9jbiI6cmV0dXJuIEtnKGIsYyk7Y2FzZSAiX2NzcyI6cmV0dXJuIEdnKGIsYyk7Y2FzZSAiX2V3IjpyZXR1cm4gSGcoYixjKTtjYXNlICJfZXEiOnJldHVybiBMZyhiLGMpO2Nhc2UgIl9nZSI6cmV0dXJuIE1nKGIsYyk7Y2FzZSAiX2d0IjpyZXR1cm4gT2coYixjKTtjYXNlICJfbGMiOnJldHVybiBJZyhiLGMpO2Nhc2UgIl9sZSI6cmV0dXJuIE5nKGIsYyk7Y2FzZSAiX2x0IjpyZXR1cm4gUGcoYixjKTtjYXNlICJfcmUiOnJldHVybiBKZyhiLGMsYS5pZ25vcmVfY2FzZSxhbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSk7Y2FzZSAiX3N3IjpyZXR1cm4gUWcoYiwKYyk7Y2FzZSAiX3VtIjpyZXR1cm4gYmwoYixjKX1yZXR1cm4hMX07ZnVuY3Rpb24gZWwoYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgZjtzd2l0Y2goYVswXSl7Y2FzZSAiZnVuY3Rpb25faWQiOnJldHVybiBhWzFdO2Nhc2UgImxpc3QiOmY9W107Zm9yKHZhciBnPTE7ZzxhLmxlbmd0aDtnKyspZi5wdXNoKGVsKGFbZ10sYixjLGQsZSkpO3JldHVybiBmO2Nhc2UgIm1hY3JvIjp2YXIgaD1kW2FbMV1dO3JldHVybiBoP2guZXZhbHVhdGUoYixlKTp2b2lkIDA7Y2FzZSAibWFwIjpmPXt9O2Zvcih2YXIgbD0xO2w8YS5sZW5ndGg7bCs9MilmW2VsKGFbbF0sYixjLGQsZSldPWVsKGFbbCsxXSxiLGMsZCxlKTtyZXR1cm4gZjtjYXNlICJ0ZW1wbGF0ZSI6Zj1bXTtmb3IodmFyIG49ITEscD0xO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1lbChhW3BdLGIsYyxkLGUpO2YucHVzaChxKX1yZXR1cm4gZi5qb2luKCIiKTtjYXNlICJlc2NhcGUiOmY9ZWwoYVsxXSxiLGMsZCxlKTtmPVN0cmluZyhmKTtmb3IodmFyIHk9Mjt5PGEubGVuZ3RoO3krKylVaVthW3ldXSYmKGY9VWlbYVt5XV0oZikpO3JldHVybiBmO2Nhc2UgInRhZyI6dmFyIHo9YVsxXTtpZighY1t6XSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHJlc29sdmUgdGFnIHJlZmVyZW5jZSAiKwp6KyIuIik7cmV0dXJue2JvOmFbMl0saW5kZXg6en07Y2FzZSAiemIiOnZhciBDPXt9LEQ9KENbR2YuWWJdPWFbMV0sQy5hcmcwPWVsKGFbMl0sYixjLGQsZSksQy5hcmcxPWVsKGFbM10sYixjLGQsZSksQy5pZ25vcmVfY2FzZT1lbChhWzVdLGIsYyxkLGUpLEMpLEk9Y2woRCksRz0hIWFbNF07cmV0dXJuIEd8fEkhPT0yP0chPT0oST09PTEpOm51bGw7ZGVmYXVsdDp0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBleHBhbmQgdW5rbm93biBWYWx1ZSB0eXBlOiAiK2FbMF0rIi4iKTt9fXJldHVybiBhfTtmdW5jdGlvbiBmbChhKXtyZXR1cm4gYSYmYS5pbmRleE9mKCJwZW5kaW5nOiIpPT09MD9nbChhLnN1YnN0cig4KSk6ITF9ZnVuY3Rpb24gZ2woYSl7aWYoYT09bnVsbHx8YS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciBiPU51bWJlcihhKSxjPU5iKCk7cmV0dXJuIGI8YyszRTUmJmI+Yy05RTV9O3ZhciBobD0hMSxpbD0hMSxqbD0hMSxrbD0wLGxsPSExLG1sPXZvaWQgMCxubD1bXTtmdW5jdGlvbiBvbChhKXtpZihrbD09PTApbGwmJm5sJiYobmwubGVuZ3RoPj0xMDAmJm5sLnNoaWZ0KCksbmwucHVzaChhKSk7ZWxzZSBpZihwbCgpKXt2YXIgYj1FKDQxKSxjPU1jKGIsW10pO2MubGVuZ3RoPj01MCYmYy5zaGlmdCgpO2MucHVzaChhKX19ZnVuY3Rpb24gcWwoKXtpbHx8KHJsKCksc2woa2wpKX1mdW5jdGlvbiBzbChhKXtpZighaWx8fGtsPT09MiYmYT09PTEpaWYoaWw9ITAsamwmJihhZChCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwpLGpsPSExKSxtbCE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KG1sKSxtbD12b2lkIDApLGtsPWEsYT09PTEpe3ZhciBiPW5sO25sPXZvaWQgMDtiPT1udWxsfHxiLmZvckVhY2goZnVuY3Rpb24oYyl7b2woYyl9KX19CmZ1bmN0aW9uIHJsKCl7dmFyIGE9Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJvZC1wcmVzZW50Iik7Z2woYSk/a2w9MTohZmwoYSl8fGhsfHxqbD9rbD0yOihqbD0hMCwkYyhCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwsITEpLG1sPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2lsfHwocmwoKSxzbChrbCkpO2hsPSEwfSwyMDApKX1mdW5jdGlvbiBwbCgpe2lmKCFsbClyZXR1cm4hMTtzd2l0Y2goa2wpe2Nhc2UgMTpjYXNlIDA6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITF9fTtmdW5jdGlvbiB0bCgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtyZXR1cm4gYS5pY3M9YS5pY3N8fG5ldyB1bH12YXIgdWw9ZnVuY3Rpb24oKXt0aGlzLmVudHJpZXM9e307dGhpcy53YWl0UGVyaW9kVGltZWRPdXQ9dGhpcy53YXNTZXRMYXRlPXRoaXMuYWNjZXNzZWRBbnk9dGhpcy5hY2Nlc3NlZERlZmF1bHQ9dGhpcy51c2VkSW1wbGljaXQ9dGhpcy51c2VkVXBkYXRlPXRoaXMudXNlZERlZmF1bHQ9dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMTt0aGlzLkg9W119Owp1bC5wcm90b3R5cGUuZGVmYXVsdD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHwhdGhpcy5hY2Nlc3NlZERlZmF1bHQmJiF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWREZWZhdWx0PXRoaXMuYWN0aXZlPSEwO3NiKCJUQUdHSU5HIiwxOSk7Yj09bnVsbD9zYigiVEFHR0lORyIsMTgpOnZsKHRoaXMsYSxiPT09ImdyYW50ZWQiLGMsZCxlLGYsZyl9O3VsLnByb3RvdHlwZS53YWl0Rm9yVXBkYXRlPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrKyl2bCh0aGlzLGFbZF0sdm9pZCAwLHZvaWQgMCwiIiwiIixiLGMpfTsKdmFyIHZsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9YS5lbnRyaWVzLG49bFtiXXx8e30scD1uLnJlZ2lvbixxPWQmJnpiKGQpP2QudG9VcHBlckNhc2UoKTp2b2lkIDA7ZT1lLnRvVXBwZXJDYXNlKCk7Zj1mLnRvVXBwZXJDYXNlKCk7aWYoZT09PSIifHxxPT09Znx8KHE9PT1lP3AhPT1mOiFxJiYhcCkpe3ZhciByPSEhKGcmJmc+MCYmbi51cGRhdGU9PT12b2lkIDApLHQ9e3JlZ2lvbjpxLGRlY2xhcmVfcmVnaW9uOm4uZGVjbGFyZV9yZWdpb24saW1wbGljaXQ6bi5pbXBsaWNpdCxkZWZhdWx0OmMhPT12b2lkIDA/YzpuLmRlZmF1bHQsZGVjbGFyZTpuLmRlY2xhcmUsdXBkYXRlOm4udXBkYXRlLHF1aWV0OnJ9O2lmKGUhPT0iInx8bi5kZWZhdWx0IT09ITEpbFtiXT10O3ImJkEuc2V0VGltZW91dChmdW5jdGlvbigpe2xbYl09PT10JiZ0LnF1aWV0JiYoc2IoIlRBR0dJTkciLDIpLGEud2FpdFBlcmlvZFRpbWVkT3V0PSEwLGEuY2xlYXJUaW1lb3V0KGIsdm9pZCAwLGgpLAphLm5vdGlmeUxpc3RlbmVycygpKX0sZyl9fTtrPXVsLnByb3RvdHlwZTtrLmNsZWFyVGltZW91dD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W2FdLGU9Yy5kZWxlZ2F0ZWRDb25zZW50VHlwZXMsZjtmb3IoZiBpbiBlKWUuaGFzT3duUHJvcGVydHkoZikmJmVbZl09PT1hJiZkLnB1c2goZik7dmFyIGc9dGhpcy5lbnRyaWVzW2FdfHx7fSxoPXRoaXMuZ2V0Q29uc2VudFN0YXRlKGEsYyk7aWYoZy5xdWlldCl7Zy5xdWlldD0hMTtmb3IodmFyIGw9bShkKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl3bCh0aGlzLG4udmFsdWUpfWVsc2UgaWYoYiE9PXZvaWQgMCYmaCE9PWIpZm9yKHZhciBwPW0oZCkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpd2wodGhpcyxxLnZhbHVlKX07CmsudXBkYXRlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHx0aGlzLnVzZWRVcGRhdGV8fCF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWRVcGRhdGU9dGhpcy5hY3RpdmU9ITA7aWYoYiE9bnVsbCl7dmFyIGQ9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKSxlPXRoaXMuZW50cmllczsoZVthXT1lW2FdfHx7fSkudXBkYXRlPWI9PT0iZ3JhbnRlZCI7dGhpcy5jbGVhclRpbWVvdXQoYSxkLGMpfX07CmsuZGVjbGFyZT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudXNlZERlY2xhcmU9dGhpcy5hY3RpdmU9ITA7dmFyIGY9dGhpcy5lbnRyaWVzLGc9ZlthXXx8e30saD1nLmRlY2xhcmVfcmVnaW9uLGw9YyYmemIoYyk/Yy50b1VwcGVyQ2FzZSgpOnZvaWQgMDtkPWQudG9VcHBlckNhc2UoKTtlPWUudG9VcHBlckNhc2UoKTtpZihkPT09IiJ8fGw9PT1lfHwobD09PWQ/aCE9PWU6IWwmJiFoKSl7dmFyIG49e3JlZ2lvbjpnLnJlZ2lvbixkZWNsYXJlX3JlZ2lvbjpsLGRlY2xhcmU6Yj09PSJncmFudGVkIixpbXBsaWNpdDpnLmltcGxpY2l0LGRlZmF1bHQ6Zy5kZWZhdWx0LHVwZGF0ZTpnLnVwZGF0ZSxxdWlldDpnLnF1aWV0fTtpZihkIT09IiJ8fGcuZGVjbGFyZSE9PSExKWZbYV09bn19OwprLmltcGxpY2l0PWZ1bmN0aW9uKGEsYil7dGhpcy51c2VkSW1wbGljaXQ9ITA7dmFyIGM9dGhpcy5lbnRyaWVzLGQ9Y1thXT1jW2FdfHx7fTtkLmltcGxpY2l0IT09ITEmJihkLmltcGxpY2l0PWI9PT0iZ3JhbnRlZCIpfTsKay5nZXRDb25zZW50U3RhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdfHx7fSxlPWQudXBkYXRlO2lmKGUhPT12b2lkIDApcmV0dXJuIGU/MToyO2lmKGIudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXt2YXIgZj1iLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2FdO2lmKGY9PT0zKXJldHVybiAxO2lmKGY9PT0yKXJldHVybiAyfWVsc2UgaWYoZT1kLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYj09bnVsbD8wOmIuZGVsZWdhdGVkQ29uc2VudFR5cGVzLmhhc093blByb3BlcnR5KGEpKXt2YXIgZz1iLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXSxoPWNbZ118fHt9O2U9aC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBsPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbZ107aWYobD09PTMpcmV0dXJuIDE7aWYobD09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPQpoLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjJ9ZT1kLmRlY2xhcmU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7ZT1kLmltcGxpY2l0O3JldHVybiBlIT09dm9pZCAwP2U/Mzo0OjB9O2suYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkgucHVzaCh7Y29uc2VudFR5cGVzOmEsaWU6Yn0pfTt2YXIgd2w9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGEuSC5sZW5ndGg7KytjKXt2YXIgZD1hLkhbY107QXJyYXkuaXNBcnJheShkLmNvbnNlbnRUeXBlcykmJmQuY29uc2VudFR5cGVzLmluZGV4T2YoYikhPT0tMSYmKGQueG89ITApfX07dWwucHJvdG90eXBlLm5vdGlmeUxpc3RlbmVycz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5ILmxlbmd0aDsrK2Mpe3ZhciBkPXRoaXMuSFtjXTtpZihkLnhvKXtkLnhvPSExO3RyeXtkLmllKHtjb25zZW50RXZlbnRJZDphLGNvbnNlbnRQcmlvcml0eUlkOmJ9KX1jYXRjaChlKXt9fX19O3ZhciB4bD0hMSx5bD0hMSx6bD17fSxBbD17ZGVsZWdhdGVkQ29uc2VudFR5cGVzOnt9LGNvcmVQbGF0Zm9ybVNlcnZpY2VzOnt9LHVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlczohMSxzZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLGNvbnRhaW5lclNjb3BlZERlZmF1bHRzOih6bC5hZF9zdG9yYWdlPTEsemwuYW5hbHl0aWNzX3N0b3JhZ2U9MSx6bC5hZF91c2VyX2RhdGE9MSx6bC5hZF9wZXJzb25hbGl6YXRpb249MSx6bCksdXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzOiExfTtmdW5jdGlvbiBCbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuKHpiKGEpP1thXTphKS5ldmVyeShmdW5jdGlvbihjKXtzd2l0Y2goYi5nZXRDb25zZW50U3RhdGUoYyxBbCkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOmNhc2UgNDpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pfQpmdW5jdGlvbiBDbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuIGIuZ2V0Q29uc2VudFN0YXRlKGEsQWwpfWZ1bmN0aW9uIERsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4hKGIuZW50cmllc1thXXx8e30pLnF1aWV0fWZ1bmN0aW9uIEVsKCl7aWYoIVlmKDUpKXJldHVybiExO3ZhciBhPXRsKCk7YS5hY2Nlc3NlZEFueT0hMDtpZihhLmFjdGl2ZSlyZXR1cm4hMDtpZighQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXJldHVybiExO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYy52YWx1ZV0hPT0xKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEZsKGEsYil7dGwoKS5hZGRMaXN0ZW5lcihhLGIpfQpmdW5jdGlvbiBHbChhLGIpe3RsKCkubm90aWZ5TGlzdGVuZXJzKGEsYil9ZnVuY3Rpb24gSGwoYSxiKXtpZihiLmV2ZXJ5KERsKSlhKHt9KTtlbHNle3ZhciBjPSExO0ZsKGIsZnVuY3Rpb24oZCl7IWMmJmIuZXZlcnkoRGwpJiYoYz0hMCxhKGQpKX0pfX0KZnVuY3Rpb24gSWwoYSxiKXt2YXIgYz16YihiKT9bYl06YixkPXt9LGU9ZnVuY3Rpb24oKXtyZXR1cm4gYy5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIEJsKGgpJiYhZFtoXX0pfSxmPWUoKTtpZihmLmxlbmd0aCE9PWMubGVuZ3RoKXt2YXIgZz1mdW5jdGlvbihoKXtmb3IodmFyIGw9bShoKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSlkW24udmFsdWVdPSEwfTtnKGYpO0ZsKGMsZnVuY3Rpb24oaCl7ZnVuY3Rpb24gbChxKXtxLmxlbmd0aCE9PTAmJihnKHEpLGguY29uc2VudFR5cGVzPXEsYShoKSl9dmFyIG49ZSgpO2lmKG4ubGVuZ3RoIT09MCl7dmFyIHA9T2JqZWN0LmtleXMoZCkubGVuZ3RoO24ubGVuZ3RoK3A+PWMubGVuZ3RoP2wobik6QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bChlKCkpfSw1MDApfX0pfX07dmFyIEpsPSExO2Z1bmN0aW9uIEtsKGEsYil7dmFyIGM9d2soKSxkPXRrKCk7RSgyNik7dmFyIGU9SWYoNDcpPzA6SWYoNTApPzE6MyxmPVhqKCk7aWYocGwoKSl7dmFyIGc9TGwoIklOSVQiKTtnLmNvbnRhaW5lckxvYWRTb3VyY2U9YSE9bnVsbD9hOjA7YiYmKGcucGFyZW50VGFyZ2V0UmVmZXJlbmNlPWIpO2cuYWxpYXNlcz1jO2cuZGVzdGluYXRpb25zPWQ7ZSE9PXZvaWQgMCYmKGcuZ3RnPXtzb3VyY2U6ZSxtUGF0aDpmIT1udWxsP2Y6IiJ9KTtvbChnKX19CmZ1bmN0aW9uIE1sKGEpe3ZhciBiLGMsZCxlO2I9YS50YXJnZXRJZDtjPWEucmVxdWVzdDtkPWEucWI7ZT1hLmlzQmF0Y2hlZDt2YXIgZjtpZihmPXBsKCkpe3ZhciBnO2E6c3dpdGNoKGMuZW5kcG9pbnQpe2Nhc2UgNjg6Y2FzZSA2OTpjYXNlIDE5OmNhc2UgNjI6Y2FzZSA0NzpnPSEwO2JyZWFrIGE7ZGVmYXVsdDpnPSExfWY9IWd9aWYoZil7dmFyIGg9TGwoIkdUQUdfSElUIix7ZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTtoLnRhcmdldD1iO2gudXJsPWMudXJsO2MucG9zdEJvZHkmJihoLnBvc3RCb2R5PWMucG9zdEJvZHkpO2gucGFyYW1ldGVyRW5jb2Rpbmc9Yy5wYXJhbWV0ZXJFbmNvZGluZztoLmVuZHBvaW50PWMuZW5kcG9pbnQ7ZSE9PXZvaWQgMCYmKGguaXNCYXRjaGVkPWUpO29sKGgpfX1mdW5jdGlvbiBObChhKXtwbCgpJiZNbChhKCkpfQpmdW5jdGlvbiBMbChhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2IuZ3JvdXBJZD1PbDt2YXIgYyxkPWIsZT1QbCxmPXtwdWJsaWNJZDpRbH07ZC5ldmVudElkIT1udWxsJiYoZi5ldmVudElkPWQuZXZlbnRJZCk7ZC5wcmlvcml0eUlkIT1udWxsJiYoZi5wcmlvcml0eUlkPWQucHJpb3JpdHlJZCk7ZC5ldmVudE5hbWUmJihmLmV2ZW50TmFtZT1kLmV2ZW50TmFtZSk7ZC5ncm91cElkJiYoZi5ncm91cElkPWQuZ3JvdXBJZCk7ZC50YWdOYW1lJiYoZi50YWdOYW1lPWQudGFnTmFtZSk7Yz17Y29udGFpbmVyUHJvZHVjdDoiR1RNIixrZXk6Zix2ZXJzaW9uOmUsbWVzc2FnZVR5cGU6YX07Yy5jb250YWluZXJQcm9kdWN0PUpsPyJPR1QiOiJHVE0iO2Mua2V5LnRhcmdldFJlZj1SbDtyZXR1cm4gY312YXIgUWw9IiIsUGw9IiIsUmw9e2N0aWQ6IiIsaXNEZXN0aW5hdGlvbjohMX0sT2w7CmZ1bmN0aW9uIFNsKGEpe3ZhciBiPUUoNSksYz1JZig0NSksZD1zaygpLGU9RSg2KSxmPUUoMSk7RSgyMyk7a2w9MDtsbD0hMDtybCgpO09sPWE7UWw9YjtQbD1mO0psPWM7Umw9e2N0aWQ6Yixpc0Rlc3RpbmF0aW9uOmQsY2Fub25pY2FsSWQ6ZX19O2Z1bmN0aW9uIFRsKGEsYixjLGQpe2lmKHBsKCkpe3ZhciBlPWIuTTtNbCh7dGFyZ2V0SWQ6ZHx8W2IudGFyZ2V0LmRlc3RpbmF0aW9uSWRdLHJlcXVlc3Q6e3VybDphLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6Y30scWI6e2V2ZW50SWQ6ZS5ldmVudElkLHByaW9yaXR5SWQ6ZS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX07ZnVuY3Rpb24gVWwoYSxiLGMpe3ZhciBkPSJodHRwczovLyIrYStiO3JldHVybiBjP2Z1bmN0aW9uKCl7cmV0dXJuIFdqKCk/WGooKStjK2I6ZH06ZnVuY3Rpb24oKXtyZXR1cm4gZH19O3ZhciBWbD17fSxXbD0oVmxbMjJdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvYXMvZCIpLFZsWzYwXT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZ3MiKSxWbFsyM109VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9jb252ZXJzaW9uIiwiL2cvZCIpLFZsKTt2YXIgWGw9e30sWWw9KFhsWzVdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iLCIvZ3MiKSxYbFs4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs2Nl09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC91Y29udmVyc2lvbiIpLFhsWzYzXT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiksWGxbNjRdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzY1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs3NF09ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2FzL3AvYyJ9LFhsKTt2YXIgWmw9e30sJGw9KFpsWzQ1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbGxlY3QiKSxabFs0Nl09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2NjbS9jb2xsZWN0IiwiL2dzIiksWmxbNjldPVVsKCJhZC5kb3VibGVjbGljay5uZXQiLCIvY2NtL3MvY29sbGVjdCIpLFpsWzU4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3NldF9wYXJ0aXRpb25lZF9jb29raWUiKSxabFs1N109VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsKTt2YXIgYW09e30sYm09KGFtWzldPVVsKCJnb29nbGVhZHMuZy5kb3VibGVjbGljay5uZXQiLCIvcGFnZWFkL3ZpZXd0aHJvdWdoY29udmVyc2lvbiIpLGFtWzY4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcm1rdC9jb2xsZWN0IiksYW0pO3ZhciBjbT17fSxkbT0oY21bMTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVsyMV09VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9mb3JtLWRhdGEiLCIvZCIpLGNtWzcyXT1VbCgiZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVs3M109VWwoImdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY20pO3ZhciBlbT17fSxmbT0oZW1bNTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi90cmF2ZWwvZmxpZ2h0cy9jbGljay9jb252ZXJzaW9uIiksZW0pO3ZhciBnbT17fSxobT0oZ21bMV09ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9hZC5kb3VibGVjbGljay5uZXQvYWN0aXZpdHk7In0sZ21bMl09ZnVuY3Rpb24oKXtyZXR1cm4oV2ooKT9YaigpOiJodHRwczovL2FkZS5nb29nbGVzeW5kaWNhdGlvbi5jb20iKSsiL2RkbS9hY3Rpdml0eSIrKE0oNDY3KT8iOyI6Ii8iKX0sZ21bM109ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHBzOi8vIithLmxyKyIuZmxzLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eWk7In0sZ20pO2Z1bmN0aW9uIGltKGEpe3NiKCJIRUFMVEgiLGEpfTt2YXIgam09e2JhOntQdDoiYXdfdXNlcl9kYXRhX2NhY2hlIixvaToiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIixiaDoiZGlhZ25vc3RpY3NfcGFnZV9pZCIsb3A6ImVtZW1vIixkdToiZW1fcmVnaXN0cnkiLFNpOiJlYWIiLHJ1OiJmbF91c2VyX2RhdGFfY2FjaGUiLHR1OiJnYTRfdXNlcl9kYXRhX2NhY2hlIixMdToiaWRjX3B2X2NsYWltIixTZToiaXBfZ2VvX2RhdGFfY2FjaGUiLFhpOiJpcF9nZW9fZmV0Y2hfaW5fcHJvZ3Jlc3MiLGpuOiJuYl9kYXRhIixUcToicGFnZV9leHBlcmltZW50X2lkcyIsbG46InBsZCIsVmU6InB0X2RhdGEiLG1uOiJwdF9saXN0ZW5lcl9zZXQiLGtqOiJyZXRyeV9jb250YWluZXJzIixPaDoic2VydmljZV93b3JrZXJfZW5kcG9pbnQiLFpxOiJzaGFyZWRfdXNlcl9pZCIsYXI6InNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCIsc2o6InNoYXJlZF91c2VyX2lkX3NvdXJjZSIsYnY6ImF3aCIsaHI6InVuaXZlcnNhbF9jbGFpbV9yZWdpc3RyeSJ9fTt2YXIga209ZnVuY3Rpb24oYSl7cmV0dXJuIHRmKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYyBpbiBhKWlmKGI9PT1hW2NdJiYhL15bMC05XSskLy50ZXN0KGMpKXJldHVybiEwO3JldHVybiExfSl9KGptLmJhKTsKZnVuY3Rpb24gbG0oYSxiKXtiPWI9PT12b2lkIDA/ITE6YjtpZihrbShhKSl7dmFyIGMsZCxlPShkPShjPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSkueGNkKSE9bnVsbD9kOmMueGNkPXt9O2lmKGVbYV0pcmV0dXJuIGVbYV07aWYoYil7dmFyIGY9dm9pZCAwLGc9MSxoPXt9LGw9e3NldDpmdW5jdGlvbihuKXtmPW47bC5ub3RpZnkoKX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHN1YnNjcmliZTpmdW5jdGlvbihuKXtoW1N0cmluZyhnKV09bjtyZXR1cm4gZysrfSx1bnN1YnNjcmliZTpmdW5jdGlvbihuKXt2YXIgcD1TdHJpbmcobik7cmV0dXJuIGguaGFzT3duUHJvcGVydHkocCk/KGRlbGV0ZSBoW3BdLCEwKTohMX0sbm90aWZ5OmZ1bmN0aW9uKCl7Zm9yKHZhciBuPW0oT2JqZWN0LmtleXMoaCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3RyeXtoW3FdKGEsZil9Y2F0Y2gocil7fX19fTtyZXR1cm4gZVthXT1sfX19CmZ1bmN0aW9uIG1tKGEsYil7dmFyIGM9bG0oYSwhMCk7YyYmYy5zZXQoYil9ZnVuY3Rpb24gbm0oYSl7dmFyIGI7cmV0dXJuKGI9bG0oYSkpPT1udWxsP3ZvaWQgMDpiLmdldCgpfWZ1bmN0aW9uIG9tKGEsYil7dmFyIGM9bG0oYSk7aWYoIWMpe2M9bG0oYSwhMCk7aWYoIWMpcmV0dXJuO2Muc2V0KGIpfXJldHVybiBjLmdldCgpfWZ1bmN0aW9uIHBtKGEsYil7aWYodHlwZW9mIGI9PT0iZnVuY3Rpb24iKXt2YXIgYztyZXR1cm4oYz1sbShhLCEwKSk9PW51bGw/dm9pZCAwOmMuc3Vic2NyaWJlKGIpfX1mdW5jdGlvbiBxbShhLGIpe3ZhciBjPWxtKGEpO3JldHVybiBjP2MudW5zdWJzY3JpYmUoYik6ITF9O3ZhciBzbT1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9ITF9O3NtLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dGhpcy5LfHwodGhpcy5IPXRtKCksdGhpcy5IWyIwIl0mJm9tKGptLmJhLlNlLEpTT04uc3RyaW5naWZ5KHRoaXMuSCkpKX07CnZhciB4bT1mdW5jdGlvbigpe3ZhciBhPXVtLGI9dm0sYz12b2lkIDAsZD1mdW5jdGlvbigpe2MhPT12b2lkIDAmJnFtKGptLmJhLlNlLGMpO3RyeXt2YXIgZj1ubShqbS5iYS5TZSk7Yi5IPUpTT04ucGFyc2UoZil9Y2F0Y2goZyl7UCgxMjMpLGltKDIpLGIuSD17fX1iLks9ITA7YSgpfSxlPW5tKGptLmJhLlNlKTtlP2QoZSk6KGM9cG0oam0uYmEuU2UsZCksd20oKSl9LHdtPWZ1bmN0aW9uKCl7aWYoIW5tKGptLmJhLlhpKSl7bW0oam0uYmEuWGksITApO3ZhciBhPWZ1bmN0aW9uKGIpe21tKGptLmJhLlNlLGJ8fCJ7fSIpO21tKGptLmJhLlhpLCExKX07dHJ5e0EuZmV0Y2goImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY2NtL2dlbyIse21ldGhvZDoiR0VUIixjYWNoZToibm8tc3RvcmUiLG1vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJvbWl0In0pLnRoZW4oZnVuY3Rpb24oYil7Yi5vaz9iLnRleHQoKS50aGVuKGZ1bmN0aW9uKGMpe2EoYyl9LGZ1bmN0aW9uKCl7YSgpfSk6YSgpfSxmdW5jdGlvbigpe2EoKX0pfWNhdGNoKGIpe2EoKX19fSwKdG09ZnVuY3Rpb24oKXt2YXIgYT1FKDIyKTt0cnl7cmV0dXJuIEpTT04ucGFyc2UocWIoYSkpfWNhdGNoKGIpe3JldHVybiBQKDEyMyksaW0oMikse319fSx5bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIwIl18fCIifSx6bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIxIl18fCIifSxBbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7Yj0hIWEuSFsiMiJdO3JldHVybiBifSxCbT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyI2Il0hPT0hMX0sQ209ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjkiXTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyI0Il18fCIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyIzIl18fCIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIFg9e1Y6e01rOiJjYWxsX2NvbnZlcnNpb24iLHpkOiJjY21fY29udmVyc2lvbiIsUWs6ImNvbW1vbl9hdyIseGE6ImNvbnZlcnNpb24iLHdxOiJmbG9vZGxpZ2h0IixZZDoiZ2FfY29udmVyc2lvbiIsWmQ6ImdjcF9yZW1hcmtldGluZyIsS2E6InBhZ2VfdmlldyIsdWI6InJlbWFya2V0aW5nIixPYjoidXNlcl9kYXRhX2xlYWQiLEZiOiJ1c2VyX2RhdGFfd2ViIn19O2Z1bmN0aW9uIGJ2KGEsYil7YiYmR2IoYixmdW5jdGlvbihjLGQpe3R5cGVvZiBkIT09Im9iamVjdCImJmQhPT12b2lkIDAmJihhWyIxcC4iK2NdPVN0cmluZyhkKSl9KX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTt2YXIgVnY9ImVtYWlsIGVtYWlsX2FkZHJlc3Mgc2hhMjU2X2VtYWlsX2FkZHJlc3MgcGhvbmVfbnVtYmVyIHNoYTI1Nl9waG9uZV9udW1iZXIgZmlyc3RfbmFtZSBsYXN0X25hbWUiLnNwbGl0KCIgIiksV3Y9ImZpcnN0X25hbWUgc2hhMjU2X2ZpcnN0X25hbWUgbGFzdF9uYW1lIHNoYTI1Nl9sYXN0X25hbWUgc3RyZWV0IHNoYTI1Nl9zdHJlZXQgY2l0eSByZWdpb24gY291bnRyeSBwb3N0YWxfY29kZSIuc3BsaXQoIiAiKTtmdW5jdGlvbiBYdihhLGIpe2lmKCFiLl90YWdfbWV0YWRhdGEpe2Zvcih2YXIgYz17fSxkPTAsZT0wO2U8YS5sZW5ndGg7ZSsrKWQrPVl2KGFbZV0sYixjKT8xOjA7ZD4wJiYoYi5fdGFnX21ldGFkYXRhPWMpfX0KZnVuY3Rpb24gWXYoYSxiLGMpe3ZhciBkPWJbYV07aWYoZD09PXZvaWQgMHx8ZD09PW51bGwpcmV0dXJuITE7Y1thXT1BcnJheS5pc0FycmF5KGQpP2QubWFwKGZ1bmN0aW9uKCl7cmV0dXJue21vZGU6ImMifX0pOnttb2RlOiJjIn07cmV0dXJuITB9ZnVuY3Rpb24gWnYoYSl7aWYoTSg1MjMpJiZhKXtYdihWdixhKTtmb3IodmFyIGI9QmIoYS5hZGRyZXNzKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY107ZCYmWHYoV3YsZCl9dmFyIGU9YS5ob21lX2FkZHJlc3M7ZSYmWHYoV3YsZSl9fQpmdW5jdGlvbiAkdihhLGIsYyl7ZnVuY3Rpb24gZChmLGcpe2c9U3RyaW5nKGcpLnN1YnN0cmluZygwLDEwMCk7ZS5wdXNoKCIiK2YrZW5jb2RlVVJJQ29tcG9uZW50KGcpKX1pZighYylyZXR1cm4iIjt2YXIgZT1bXTtkKCJpIixTdHJpbmcoYSkpO2QoImYiLGIpO2MubW9kZSYmZCgibSIsYy5tb2RlKTtjLmlzUHJlSGFzaGVkJiZkKCJwIiwiMSIpO2MucmF3TGVuZ3RoJiZkKCJyIixTdHJpbmcoYy5yYXdMZW5ndGgpKTtjLm5vcm1hbGl6ZWRMZW5ndGgmJmQoIm4iLFN0cmluZyhjLm5vcm1hbGl6ZWRMZW5ndGgpKTtjLmxvY2F0aW9uJiZkKCJsIixjLmxvY2F0aW9uKTtjLnNlbGVjdG9yJiZkKCJzIixjLnNlbGVjdG9yKTtyZXR1cm4gZS5qb2luKCIuIil9O3ZhciBhdz12b2lkIDA7ZnVuY3Rpb24gYncoKXtpZighYXcpe3ZhciBhPW9tKGptLmJhLm9wLG5ldyBNYXApO2F3PW5ldyBvZyhhKX1yZXR1cm4gYXd9Owp2YXIgY3c9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIGE7Zm9yKHZhciBiPXt9LGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7ZSE9PSJhZGRyZXNzIiYmZSE9PSJwaG9uZV9udW1iZXIiJiZlIT09InNoYTI1Nl9waG9uZV9udW1iZXIiJiYoYltlXT1hW2VdKX1yZXR1cm4gYn0sZnc9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9WyJ0di4xIl0sZD1bInR2ZC4xIl0sZT1kdyhhKTtpZihlKXJldHVybiBjLnB1c2goZSkse2hhc1VwZDohMSxPbzpjLmpvaW4oIn4iKSxZbjpjLmpvaW4oIn4iKSxlbmNyeXB0aW9uS2V5U3RyaW5nOnZvaWQgMCxpaTp7fSxtZXRhZGF0YVBhcmFtOmI/ZC5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZj17fSxnPTA7dmFyIGg9MCxsPWV3KGEsZnVuY3Rpb24ocSxyLHQpe2grKzt2YXIgdT1xLnZhbHVlLHY7CmlmKHQpe3ZhciB4PXIrIl9fIitnKys7dj0iJHt1c2VyRGF0YS4iK3grInxzaGEyNTZ9IjtmW3hdPXV9ZWxzZSB2PWVuY29kZVVSSUNvbXBvbmVudChlbmNvZGVVUklDb21wb25lbnQodSkpO3EuaW5kZXghPT12b2lkIDAmJihyKz1xLmluZGV4KTtjLnB1c2gocisiLiIrdik7aWYoYil7dmFyIHk9JHYoaCxyLHEubWV0YWRhdGEpO3kmJmQucHVzaCh5KX19KS5oYXNVcGQsbj1kLmpvaW4oIn4iKTt2YXIgcD1jLmpvaW4oIn4iKTtyZXR1cm57aGFzVXBkOmwsT286cCxpaTp7dXNlckRhdGE6Zn0sWW46InR2LjF+JHsiKyhwKyJ8IisoTSg1NTUpPyJlbmNyeXB0X3dpdGhfbWVtbyI6ImVuY3J5cHQiKSsifSIpLGVuY3J5cHRpb25LZXlTdHJpbmc6RSg0MyksbWV0YWRhdGFQYXJhbTpiP246dm9pZCAwfX0saHc9ZnVuY3Rpb24oYSl7aWYoIShhIT1udWxsJiZPYmplY3Qua2V5cyhhKS5sZW5ndGg+MCkpcmV0dXJuITE7CnZhciBiPWd3KGEpO3JldHVybiBldyhiLGZ1bmN0aW9uKCl7fSkuaGFzVXBkfSxldz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9mdW5jdGlvbigpe306Yjtmb3IodmFyIGM9ITEsZD0hMSxlPW0oYSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZy52YWx1ZSl7dmFyIGg9aXdbZy5uYW1lXTtpZihoKXt2YXIgbD1qdyhnKTtsJiYoYz0hMCk7ZD0hMDtiKGcsaCxsKX19fXJldHVybntoYXNVcGQ6ZCxoYXNVcGRUb0hhc2g6Y319LGp3PWZ1bmN0aW9uKGEpe3ZhciBiPWt3KGEubmFtZSksYz0vXmVcZCskLy50ZXN0KGEudmFsdWUpLGQ7aWYoZD1iJiYhYyl7dmFyIGU9YS52YWx1ZTtkPSEobHcudGVzdChlKXx8eWkudGVzdChlKSl9cmV0dXJuIGR9LGt3PWZ1bmN0aW9uKGEpe3JldHVybiBtdy5pbmRleE9mKGEpIT09LTF9LHN3PWZ1bmN0aW9uKGEsYixjKXtpZih5YihBLlByb21pc2UpKXRyeXt2YXIgZD0hMTt2YXIgZT1ndyhhLGQpLGY9bncoZSkudGhlbihmdW5jdGlvbihoKXt2YXIgbD1oLnliLG49bC5maWx0ZXIoZnVuY3Rpb24ocSl7cmV0dXJuIVNiKHEubmFtZSwicmF3Iil9KSxwPW93KHt5YjpufSk7cmV0dXJue3Jlc3VsdDp7cGFyYW06cC5wYXJhbSxoYXNVcGRUb0hhc2g6cC5oYXNVcGRUb0hhc2gsaGFzVXBkOnAuaGFzVXBkLGhhZEVycm9yOnAuaGFkRXJyb3IsbWV0YWRhdGFQYXJhbTpwLm1ldGFkYXRhUGFyYW19LHliOmx9fSk7cmV0dXJuIGYudGhlbihmdW5jdGlvbihoKXtyZXR1cm4gaC5yZXN1bHR9KX1jYXRjaChoKXt9fSxxdz1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9LG93PWZ1bmN0aW9uKGEpe3ZhciBiPU0oNTIzKSxjPWEueWIsZD1bInR2LjEiXSxlPVsidHZkLjEiXSxmPWR3KGMpO2lmKGYpcmV0dXJuIGQucHVzaChmKSx7cGFyYW06ZC5qb2luKCJ+IiksaGFzVXBkVG9IYXNoOiExLGhhc1VwZDohMSxoYWRFcnJvcjohMCxtZXRhZGF0YVBhcmFtOmI/ZS5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZz1jLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hancocSl9KSxoPTAsbD1ldyhnLGZ1bmN0aW9uKHEscil7aCsrO3ZhciB0PXEudmFsdWUsdT1xLmluZGV4O3UhPT12b2lkIDAmJihyKz11KTtkLnB1c2gocisiLiIrdCk7aWYoYil7dmFyIHY9JHYoaCxyLHEubWV0YWRhdGEpO3YmJmUucHVzaCh2KX19KSxuPWwuaGFzVXBkVG9IYXNoLHA9bC5oYXNVcGQ7cmV0dXJue3BhcmFtOmVuY29kZVVSSUNvbXBvbmVudChkLmpvaW4oIn4iKSksCmhhc1VwZFRvSGFzaDpuLGhhc1VwZDpwLGhhZEVycm9yOiExLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9fSxkdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4gaXcuZXJyb3JfY29kZSsiLiIrYVswXS52YWx1ZX0scHc9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xJiZhWzBdLm5hbWU9PT0iZXJyb3JfY29kZSIpcmV0dXJuITE7Zm9yKHZhciBiPW0oYSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWU7aWYoaXdbZC5uYW1lXSYmZC52YWx1ZSlyZXR1cm4hMH1yZXR1cm4hMX0sZ3c9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1bXTtpZihBLmxvY2F0aW9uLnByb3RvY29sIT09Imh0dHBzOiIpcmV0dXJuIGMucHVzaCh7bmFtZToiZXJyb3JfY29kZSIsdmFsdWU6ImUzIixpbmRleDp2b2lkIDB9KSxjO3ZhciBkPWMucHVzaCxlPWQuYXBwbHksZj1bXSwKZz1mLmNvbmNhdCxoLGw9YS5fdGFnX21ldGFkYXRhfHx7fTtoPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJlbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzcyxhYjpsLmVtYWlsLG1kOmwuc2hhMjU2X2VtYWlsX2FkZHJlc3N9LHV3KSksdyh0dyh7bmFtZToicGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyLGFiOmwucGhvbmVfbnVtYmVyLG1kOmwuc2hhMjU2X3Bob25lX251bWJlcn0sdncpKSk7dmFyIG49dyhoKSxwLHE9YS5fdGFnX21ldGFkYXRhfHx7fSxyPWEuaG9tZV9hZGRyZXNzfHx7fSx0PXIuX3RhZ19tZXRhZGF0YXx8e307cD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lLGFiOnEuZmlyc3RfbmFtZSxtZDpxLnNoYTI1Nl9maXJzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSwKU2E6YS5zaGEyNTZfbGFzdF9uYW1lLGFiOnEubGFzdF9uYW1lLG1kOnEuc2hhMjU2X2xhc3RfbmFtZX0sd3coeHcpKSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ci5zdHJlZXQsU2E6ci5zaGEyNTZfc3RyZWV0LGFiOnQuc3RyZWV0LG1kOnQuc2hhMjU2X3N0cmVldH0sd3coeXcpKSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnIuY2l0eSxhYjp0LmNpdHl9LHd3KHl3KSkpLHcodHcoe25hbWU6InBvc3RhbF9jb2RlIixyYXc6ci5wb3N0YWxfY29kZSxhYjp0LnBvc3RhbF9jb2RlfSx3dyh6dykpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzpyLnJlZ2lvbixhYjp0LnJlZ2lvbn0sd3coeXcpKSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnIuY291bnRyeSxhYjp0LmNvdW50cnl9LHd3KHp3KSkpKTtmb3IodmFyIHU9dyhwKSx2PVtdLHg9QmIoYS5hZGRyZXNzfHx7fSkseT0wO3k8eC5sZW5ndGg7eSsrKXtmb3IodmFyIHo9eFt5XSxDPXouX3RhZ19tZXRhZGF0YXx8e30sRD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIsCnJhdzp6LmZpcnN0X25hbWUsU2E6ei5zaGEyNTZfZmlyc3RfbmFtZSxhYjpDLmZpcnN0X25hbWUsbWQ6Qy5zaGEyNTZfZmlyc3RfbmFtZX0seHcpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzp6Lmxhc3RfbmFtZSxTYTp6LnNoYTI1Nl9sYXN0X25hbWUsYWI6Qy5sYXN0X25hbWUsbWQ6Qy5zaGEyNTZfbGFzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6InN0cmVldCIscmF3Onouc3RyZWV0LFNhOnouc2hhMjU2X3N0cmVldCxhYjpDLnN0cmVldCxtZDpDLnNoYTI1Nl9zdHJlZXR9LHl3KSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnouY2l0eSxhYjpDLmNpdHl9LHl3KSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzp6LnBvc3RhbF9jb2RlLGFiOkMucG9zdGFsX2NvZGV9LHp3KSksdyh0dyh7bmFtZToicmVnaW9uIixyYXc6ei5yZWdpb24sYWI6Qy5yZWdpb259LHl3KSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnouY291bnRyeSxhYjpDLmNvdW50cnl9LHp3KSkpLEk9MDtJPApELmxlbmd0aDtJKyspRFtJXS5pbmRleD15O3YucHVzaC5hcHBseSh2LHcoRCkpfWUuY2FsbChkLGMsZy5jYWxsKGYsbix1LHcodikpKTtpZihiJiZCcCgpKXt2YXIgRz1jLnB1c2gsTj1HLmFwcGx5LFM9W107Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19lbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzc30pKSx3KEF3KHtuYW1lOiJyYXdfcGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyfSkpKSk7Zm9yKHZhciBXPUJiKGEuYWRkcmVzc3x8e30pLGVhPTA7ZWE8Vy5sZW5ndGg7ZWErKyl7dmFyIGphPVdbZWFdO1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmphLmZpcnN0X25hbWUsU2E6amEuc2hhMjU2X2ZpcnN0X25hbWV9LGVhKSksdyhBdyh7bmFtZToicmF3X2xhc3RfbmFtZSIscmF3OmphLmxhc3RfbmFtZSxTYTpqYS5zaGEyNTZfbGFzdF9uYW1lfSwKZWEpKSx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6amEuc3RyZWV0LFNhOmphLnNoYTI1Nl9zdHJlZXR9LGVhKSkpKX1pZihhLmZpcnN0X25hbWV8fGEuaG9tZV9hZGRyZXNzKXtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2ZpcnN0X25hbWUiLHJhdzphLmZpcnN0X25hbWUsU2E6YS5zaGEyNTZfZmlyc3RfbmFtZX0pKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6YS5sYXN0X25hbWUsU2E6YS5zaGEyNTZfbGFzdF9uYW1lfSkpKSk7dmFyIGZhPWEuaG9tZV9hZGRyZXNzfHx7fTtTLnB1c2guYXBwbHkoUyx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6ZmEuc3RyZWV0LFNhOmZhLnNoYTI1Nl9zdHJlZXR9KSkpfU4uY2FsbChHLGMsdyhTKSl9cmV0dXJuIGN9LHd3PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtQKDY0KTtyZXR1cm4gYShiKX19LEF3PWZ1bmN0aW9uKGEsYil7dmFyIGM9W107aWYoYS5TYSlyZXR1cm4gYztmb3IodmFyIGQ9CkJiKGEucmF3KSxlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPUJ3KGRbZV0pO2lmKGYmJiF5aS50ZXN0KGYpKWlmKC9eZVxkKyQvLnRlc3QoZikpYy5wdXNoKHtuYW1lOmEubmFtZSx2YWx1ZTpmLGluZGV4OmJ9KTtlbHNle3ZhciBnPWMsaD1nLnB1c2gsbD1hLm5hbWUsbjt2YXIgcD1BO3RyeXtuPUJpKEFycmF5LmZyb20oWmIoZikpLHApfWNhdGNoKHEpe249ImUwIn1oLmNhbGwoZyx7bmFtZTpsLHZhbHVlOm4saW5kZXg6Yn0pfX1yZXR1cm4gY30sdHc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkPU0oNTIzKSxlPWEucmF3LGY9ZD9hLmFiOnZvaWQgMDtDdyhlLCExKTthLlNhJiYoZSYmUCg5MCksZT1hLlNhLGY9ZD9hLm1kOnZvaWQgMCxDdyhlLCEwKSk7Zm9yKHZhciBnPUJiKGUpLGg9QmIoZiksbD0wO2w8Zy5sZW5ndGg7KytsKXt2YXIgbjt2YXIgcD1hLm5hbWUscT1iLHI9aFtsXSx0PUJ3KGdbbF0pO2lmKHQhPT0iIilpZih5aS50ZXN0KHQpKXtyJiYoci5pc1ByZUhhc2hlZD0hMCk7CnZhciB1PXtuYW1lOnAsdmFsdWU6dCxpbmRleDp2b2lkIDB9O3ImJih1Lm1ldGFkYXRhPXIpO249dX1lbHNle3ZhciB2PXEodCkseD17bmFtZTpwLHZhbHVlOnYsaW5kZXg6dm9pZCAwfTtyJiYoeC5tZXRhZGF0YT1yLHYmJihyLnJhd0xlbmd0aD1TdHJpbmcodCkubGVuZ3RoLHIubm9ybWFsaXplZExlbmd0aD12Lmxlbmd0aCkpO249eH1lbHNlIG49dm9pZCAwO3ZhciB5PW47eSYmYy5wdXNoKHkpfXJldHVybiBjfSxDdz1mdW5jdGlvbihhLGIpe2lmKHpiKGEpfHxBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz1CYihhKSxkPTA7ZDxjLmxlbmd0aDsrK2Qpe3ZhciBlPUJ3KGNbZF0pLGY9eWkudGVzdChlKTtiJiYhZiYmUCg4OSk7IWImJmYmJlAoODgpfX0sRHc9ZnVuY3Rpb24oYSl7dmFyIGI9YT9ndyhhKTpbXTtyZXR1cm4gb3coe3liOmJ9KX0sRXc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wJiZ5YihBLlByb21pc2UpP2d3KGEpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJgprdyhiLm5hbWUpJiYheWkudGVzdChiLnZhbHVlKX0pOiExfSxCdz1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbD8iIjp6YihhKT9MYihTdHJpbmcoYSkpOiJlMCJ9LHp3PWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoRncsIiIpfSx4dz1mdW5jdGlvbihhKXtyZXR1cm4geXcoYS5yZXBsYWNlKC9ccy9nLCIiKSl9LHl3PWZ1bmN0aW9uKGEpe3JldHVybiBMYihhLnJlcGxhY2UoR3csIiIpLnRvTG93ZXJDYXNlKCkpfSx2dz1mdW5jdGlvbihhKXthPWEucmVwbGFjZSgvW1xzLSgpLy5dL2csIiIpO2EuY2hhckF0KDApIT09IisiJiYoYT0iKyIrYSk7cmV0dXJuKE0oNTk3KT9IdzpJdykudGVzdChhKT9hOiJlMCJ9LHV3PWZ1bmN0aW9uKGEpe3ZhciBiPWEudG9Mb3dlckNhc2UoKS5zcGxpdCgiQCIpO2lmKGIubGVuZ3RoPT09Mil7dmFyIGM9YlswXTsvXihnbWFpbHxnb29nbGVtYWlsKVwuLy50ZXN0KGJbMV0pJiYoYz1jLnJlcGxhY2UoL1wuL2csIiIpKTtjPWMrIkAiK2JbMV07aWYoSncudGVzdChjKSlyZXR1cm4gY31yZXR1cm4iZTAifSwKS3c9ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmZvckVhY2goZnVuY3Rpb24oYil7Yi52YWx1ZSYma3coYi5uYW1lKSYmKGIudmFsdWU9RGkoYi52YWx1ZSkpfSkse3liOmF9fWNhdGNoKGIpe3JldHVybnt5YjpbXX19fSxudz1mdW5jdGlvbihhKXtyZXR1cm4gYS5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpfSk/eWIoQS5Qcm9taXNlKT9Qcm9taXNlLmFsbChhLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYma3coYi5uYW1lKT9BaShiLnZhbHVlKS50aGVuKGZ1bmN0aW9uKGMpe2IudmFsdWU9Y30pOlByb21pc2UucmVzb2x2ZSgpfSkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm57eWI6YX19KS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt5YjpbXX19KTp7dGhlbjpmdW5jdGlvbihiKXtiKHt5YjpbXX0pfX06UHJvbWlzZS5yZXNvbHZlKHt5YjphfSl9LEd3PS9bMC05YH4hQCMkJV4mKigpX1wtKz06Ozw+LC4/fC9cXFtcXV0vZyxKdz0vXlxTK0BcUytcLlxTKyQvLApJdz0vXlwrXGR7MTAsMTV9JC8sSHc9L15cK1xkezcsMTV9JC8sRnc9L1sufl0vZyxsdz0vXlswLTlBLVphLXpfLV17NDN9JC8sTHc9WyJyZW0iLCJycG4iLCJyZm4iLCJybG4iLCJyc2EiXSxNdz17fSxpdz0oTXcuZW1haWw9ImVtIixNdy5waG9uZV9udW1iZXI9InBuIixNdy5maXJzdF9uYW1lPSJmbiIsTXcubGFzdF9uYW1lPSJsbiIsTXcuc3RyZWV0PSJzYSIsTXcuY2l0eT0iY3QiLE13LnJlZ2lvbj0icmciLE13LmNvdW50cnk9ImNvIixNdy5wb3N0YWxfY29kZT0icGMiLE13LmVycm9yX2NvZGU9ImVjIixNdy5yYXdfZW1haWw9InJlbSIsTXcucmF3X3Bob25lX251bWJlcj0icnBuIixNdy5yYXdfZmlyc3RfbmFtZT0icmZuIixNdy5yYXdfbGFzdF9uYW1lPSJybG4iLE13LnJhd19zdHJlZXQ9InJzYSIsTXcpO3ZhciBtdz1PYmplY3QuZnJlZXplKFsiZW1haWwiLAoicGhvbmVfbnVtYmVyIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsInN0cmVldCJdKTt2YXIgbXg9T2JqZWN0LmZyZWV6ZSh7YXR0cmlidXRpb25zcmM6IiJ9KSxueD1PYmplY3QuZnJlZXplKHtldmVudFNvdXJjZUVsaWdpYmxlOiExLHRyaWdnZXJFbGlnaWJsZTohMH0pO2Z1bmN0aW9uIG94KCl7dmFyIGE9WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlO3JldHVybiBhJiZ5YihhLnNldEF0dHJpYnV0aW9uUmVwb3J0aW5nKX07dmFyIHB4PU9iamVjdC5mcmVlemUoe2NhY2hlOiJuby1zdG9yZSIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLG1ldGhvZDoiR0VUIixrZWVwYWxpdmU6ITAscmVkaXJlY3Q6ImZvbGxvdyJ9KTsKZnVuY3Rpb24gcXgoYSxiLGMsZCxlLGYpe2lmKCF5YihBLmZldGNoKSlyZXR1cm4gZj09bnVsbHx8Zih2b2lkIDAsdm9pZCAwKSwhMTt2YXIgZz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHB4KTtiJiYoZy5ib2R5PWIsZy5tZXRob2Q9IlBPU1QiKTtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGcsZCk7QS5mZXRjaChhLGcpLnRoZW4oZnVuY3Rpb24oaCl7aWYoaC5vayl7aWYoaC5ib2R5KXt2YXIgbD1oLmJvZHkuZ2V0UmVhZGVyKCksbj1uZXcgVGV4dERlY29kZXI7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHApe2Z1bmN0aW9uIHEoKXtsLnJlYWQoKS50aGVuKGZ1bmN0aW9uKHIpe3ZhciB0O3Q9ci5kb25lO3ZhciB1PW4uZGVjb2RlKHIudmFsdWUse3N0cmVhbTohdH0pO3U9Yy5SK3U7Zm9yKHZhciB2PXUuaW5kZXhPZigiXG5cbiIpO3YhPT0tMTspe3ZhciB4PVpnLHk7YTp7dmFyIHo9bSh1LnN1YnN0cmluZygwLHYpLnNwbGl0KCJcbiIpKSxDPQp6Lm5leHQoKS52YWx1ZSxEPXoubmV4dCgpLnZhbHVlO2lmKFNiKEMsImV2ZW50OiBtZXNzYWdlIikmJlNiKEQsImRhdGE6ICIpKXt2YXIgST1ELnN1YnN0cmluZyg2KTt0cnl7eT1KU09OLnBhcnNlKEkpO2JyZWFrIGF9Y2F0Y2goRyl7fX15PXZvaWQgMH14KGMseSk7dT11LnN1YnN0cmluZyh2KzIpO3Y9dS5pbmRleE9mKCJcblxuIil9Yy5SPXU7dD8oZT09bnVsbHx8ZShoKSxwKCkpOnEoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZT09bnVsbHx8ZShoKTtwKCl9KX1xKCl9KX1lPT1udWxsfHxlKGgpfWVsc2UgZj09bnVsbHx8ZihoLHZvaWQgMCl9KS5jYXRjaChmdW5jdGlvbihoKXtmPT1udWxsfHxmKHZvaWQgMCxoKX0pO3JldHVybiEwfTt2YXIgcng9ZnVuY3Rpb24oYSl7aHUuY2FsbCh0aGlzLCJGZXRjaFJpY2hSZXNwb25zZSIsMSk7dGhpcy5OPWF9O3dhKHJ4LGh1KTtyeC5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4geWIoQS5mZXRjaCl9O3J4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3J4LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtxeChiLGM9PW51bGw/dm9pZCAwOmMuYm9keSx0aGlzLk4sYz09bnVsbD92b2lkIDA6Yy5HYixhLnBlLGZ1bmN0aW9uKGQsZSl7YS5vbkZhaWx1cmUoZSl9KX07dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIFF4PWZ1bmN0aW9uKGEsYil7dGhpcy5IPWE7dGhpcy50aW1lb3V0TXM9Yjt0aGlzLlJiPXZvaWQgMH0sUng9ZnVuY3Rpb24oYSl7YS5SYnx8KGEuUmI9c2V0VGltZW91dChmdW5jdGlvbigpe2EuSCgpO2EuUmI9dm9pZCAwfSxhLnRpbWVvdXRNcykpfSxUbj1mdW5jdGlvbihhKXthLlJiJiYoY2xlYXJUaW1lb3V0KGEuUmIpLGEuUmI9dm9pZCAwKX07dmFyIFN4PWZ1bmN0aW9uKCl7dmFyIGE9TmYoNjYsMCk7dGhpcy5LPVtdO3RoaXMuUj1hO3RoaXMuSD1ZYSgpfSxVeD1mdW5jdGlvbihhKXt2YXIgYj1UeDtiLksucHVzaChhKTtiLk58fChiLk49ZnVuY3Rpb24oKXtmb3IodmFyIGM9bShiLkspLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO3RyeXtlKCl9Y2F0Y2gobCl7fX1mb3IodmFyIGY9bShiLkgudmFsdWVzKCkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD12b2lkIDA7KGg9Zy52YWx1ZS53ZSk9PW51bGx8fFRuKGgpfWIuSC5jbGVhcigpfSwkYyhBLCJwYWdlaGlkZSIsYi5OKSl9LFZ4PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWF0Y2goTW4pWzNdfHxudWxsLGM9KGI/ZGVjb2RlVVJJKGIpOmIpfHwiIixkPVBuKGEsImxhYmVsIil8fCIiLGU9UG4oYSwicmFuZG9tIil8fCIiO3JldHVybiBjKyI6IitMbihkKSsiOiIrTG4oZSl9LFd4PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1UeCwKZT1WeChhKTtpZighKGQuSC5oYXMoZSl8fGQuSC5zaXplPj1kLlIpKXt2YXIgZj17fTtiJiZiPjAmJmMmJihmLndlPW5ldyBReChjLGIpKTtkLkguc2V0KGUsZik7dmFyIGc7KGc9Zi53ZSk9PW51bGx8fFJ4KGcpfX0sVW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1WeChiKSxkLGU7KGQ9YS5ILmdldChjKSk9PW51bGx8fChlPWQud2UpPT1udWxsfHxUbihlKTthLkguZGVsZXRlKGMpfTtTeC5wcm90b3R5cGUuZ2V0U2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguc2l6ZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBEeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPTA7dGhpcy5LPSExO00oNDYyKSYmVW0oImZzIixmdW5jdGlvbigpe3JldHVybiBhLkg+MCYmYS5IPDU/U3RyaW5nKGEuSCk6dm9pZCAwfSwhMSl9LEV5O2Z1bmN0aW9uIEZ5KGEsYil7RXl8fChFeT1uZXcgRHkpO3ZhciBjPUV5O00oNDYyKSYmZm4uSyYmKGI9PT0iZ3RtLmZvcm1TdWJtaXQifHxiPT09ImZvcm1fc3VibWl0IiYmSWYoNDUpKSYmKGE9PT0xfHxjLkspJiYoYy5LPSEwLGMuSD1hLGEhPT01P1ZtKCJmcyIpOlFtLkguZnM9ITEpfTt2YXIgR3k9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuS2Epe3ZhciBiPWZ1KGEpO2lmKCFNKDQyNykmJihqcChhLGIpfHxRKGEsSC5KLmhkKSkmJlhvKGZwKSl7dmFyIGM9bHAoYSxiKTtpZihjKXt2YXIgZD1ObSg2OSxjKTtUbChkLGEsNjkpO1luKHtkZXN0aW5hdGlvbklkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsZW5kcG9pbnQ6NjksZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKX19dmFyIGU9eWIoYS5NLm9uU3VjY2Vzcyk/YS5NLm9uU3VjY2Vzczp4YjskdShhLGIpO2UoKX19O3ZhciBIeT17WDp7V3E6MCxFazoxLFpnOjIsWGs6MyxtaTo0LFZrOjUsV2s6NixZazo3LG5pOjgsdG06OSxzbToxMCxUaToxMSx2bToxMixCaDoxMyxFbToxNCxpajoxNSxTcToxNixqZDoxNyx1ajoxOCx2ajoxOSx3ajoyMCxDbjoyMSx4ajoyMn19O0h5LlhbSHkuWC5XcV09IlJFU0VSVkVEX1pFUk8iO0h5LlhbSHkuWC5Fa109IkFEU19DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLlpnXT0iQ09OVEFJTkVSX0VYRUNVVEVfU1RBUlQiO0h5LlhbSHkuWC5Ya109IkNPTlRBSU5FUl9TRVRVUF9FTkQiO0h5LlhbSHkuWC5taV09IkNPTlRBSU5FUl9TRVRVUF9TVEFSVCI7SHkuWFtIeS5YLlZrXT0iQ09OVEFJTkVSX0JMT0NLSU5HX0VORCI7SHkuWFtIeS5YLldrXT0iQ09OVEFJTkVSX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlguWWtdPSJDT05UQUlORVJfWUlFTERfRU5EIjtIeS5YW0h5LlgubmldPSJDT05UQUlORVJfWUlFTERfU1RBUlQiO0h5LlhbSHkuWC50bV09IkVWRU5UX0VYRUNVVEVfRU5EIjsKSHkuWFtIeS5YLnNtXT0iRVZFTlRfRVZBTFVBVElPTl9FTkQiO0h5LlhbSHkuWC5UaV09IkVWRU5UX0VWQUxVQVRJT05fU1RBUlQiO0h5LlhbSHkuWC52bV09IkVWRU5UX1NFVFVQX0VORCI7SHkuWFtIeS5YLkJoXT0iRVZFTlRfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5FbV09IkdBNF9DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLmlqXT0iUEFHRV9MT0FEIjtIeS5YW0h5LlguU3FdPSJQQUdFVklFVyI7SHkuWFtIeS5YLmpkXT0iU05JUFBFVF9MT0FEIjtIeS5YW0h5LlgudWpdPSJUQUdfQ0FMTEJBQ0tfRVJST1IiO0h5LlhbSHkuWC52al09IlRBR19DQUxMQkFDS19GQUlMVVJFIjtIeS5YW0h5Llgud2pdPSJUQUdfQ0FMTEJBQ0tfU1VDQ0VTUyI7SHkuWFtIeS5YLkNuXT0iVEFHX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlgueGpdPSJUQUdfRVhFQ1VURV9TVEFSVCI7dmFyIEl5PXt9O0l5Llg9SHkuWDt2YXIgSnk9e1J1OiJMIixYcToiUyIsa3Y6IlkiLFJ0OiJCIixudToiRSIsTnU6IkkiLGZ2OiJUQyIsdnU6IkhUQyIsb3U6IkYiLE11OiJDIn0sS3k9e1hxOiJTIixsdToiViIsYXU6IkUiLGR2OiJ0YWcifSxMeT17fSxNeT0oTHlbSXkuWC52al09IjYiLEx5W0l5Llgud2pdPSI1IixMeVtJeS5YLnVqXT0iNyIsTHkpO2Z1bmN0aW9uIE55KGEpe3ZhciBiPUUoNSksYz1OdW1iZXIoYS5ldmVudElkKSxkPU51bWJlcihhLnRhZ0lkKTtyZXR1cm4oU2IoYiwiR1RNLSIpP2I6IkdUTS0iK2IpKyI6IisoQWIoYyk/YysiOiI6IiIpKyhBYihkKT9kKyI6IjoiIikrYS5zdGFnZX07ZnVuY3Rpb24gT3koKXt2YXIgYT1yZCgpO3JldHVybiEhKGEmJmEubWFyayBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLm1lYXN1cmUgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5jbGVhck1lYXN1cmVzIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNYXJrcyBpbnN0YW5jZW9mIEZ1bmN0aW9uKX07dmFyIFB5PWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSxReTtmdW5jdGlvbiBSeSgpe1F5fHwoUXk9bmV3IFB5KTtyZXR1cm4gUXl9ZnVuY3Rpb24gU3koYSl7dmFyIGI9UnkoKSxjPU55KGEpO3JldHVybiBiLkhbY119ZnVuY3Rpb24gVHkoYSxiKXt2YXIgYzthOnt2YXIgZD1SeSgpO2lmKE95KCkpe3ZhciBlPU55KGEpLGYsZztpZihmPShnPXJkKCkpPT1udWxsP3ZvaWQgMDpnLm1hcmsoZSxiKSl7Yz1kLkhbZV09ZjticmVhayBhfX1jPXZvaWQgMH1yZXR1cm4gY307ZnVuY3Rpb24gVXkoYSxiKXtpZihPeSgpKXthLmVudHJ5PU55KGEpO3ZhciBjPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSk7Yy5zdGFnZT1iO2RlbGV0ZSBjLnNlbnQ7dmFyIGQ9U3koYj09PUl5LlguamQ/e3N0YWdlOkl5LlguamR9OmMpLGU9U3koYSk7aWYoZCYmZSYmIShkLnN0YXJ0VGltZT5lLnN0YXJ0VGltZSkpe2Muc3RhZ2U9YisiOiIrYS5zdGFnZTt2YXIgZj1OeShjKSxnPXtzdGFydDpkLm5hbWUsZW5kOmUubmFtZX0saCxsO3JldHVybihsPShoPXJkKCkpPT1udWxsP3ZvaWQgMDpoLm1lYXN1cmUoZixnKSk9PW51bGw/dm9pZCAwOmwuZHVyYXRpb259fX07dmFyIFd5PWZ1bmN0aW9uKCl7dmFyIGE9NTtWeS5Sbz4wJiYoYT1WeS5Sbyk7dGhpcy5LPWE7dGhpcy5IPTA7dGhpcy5OPVtdfSxYeT1mdW5jdGlvbihhKXtyZXR1cm4gYS5IPGEuSz8hMTpOYigpLWEuTlthLkglYS5LXTwxRTN9LFl5PWZ1bmN0aW9uKGEpe3ZhciBiPWEuSCsrJWEuSzthLk5bYl09TmIoKX07dmFyIFZ5PXtSbzpOZigzLDApfSwkeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy55YT1bXTt0aGlzLkg9dm9pZCAwO3RoaXMuWj17fTt0aGlzLks9dm9pZCAwO3RoaXMuamE9bmV3IFd5O3RoaXMuTGE9MUUzO3RoaXMuUj10aGlzLk49ITE7dGhpcy5mYT1EYigpO1p5KHRoaXMsZnVuY3Rpb24oKXt2YXIgYj1bWyJ2IiwiMyJdLFsidCIsInQiXSxbInBpZCIsU3RyaW5nKGEuZmEpXV0sYz1kdSgpO2MmJmIucHVzaChbImd0bSIsY10pO3JldHVybiBifSk7Y2QoZnVuY3Rpb24oKXthLmZhPURiKCl9LDg2NEU1KX0sWnk9ZnVuY3Rpb24oYSxiKXthLnlhLnB1c2goYil9LGF6PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkg7aWYoZD09PXZvaWQgMClpZihjKWQ9cmooKTtlbHNlIHJldHVybiIiO2Zvcih2YXIgZT1bZmsoImh0dHBzOi8vIitFKDIxKSksIi9hIiwiP2lkPSIrRSg1KV0sZj1tKGEueWEpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9Cmgoe2V2ZW50SWQ6ZCx0ZjohIWJ9KSxuPW0obCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPW0ocC52YWx1ZSkscj1xLm5leHQoKS52YWx1ZSx0PXEubmV4dCgpLnZhbHVlO2UucHVzaCgiJiIrcisiPSIrdCl9ZS5wdXNoKCImej0wIik7cmV0dXJuIGUuam9pbigiIil9LGJ6PWZ1bmN0aW9uKGEpe2lmKCRrKDI2KSYmKGEuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCksYS5IIT09dm9pZCAwJiZhLlIpKXt2YXIgYj1sbyhjby5pYS5aYik7aWYoZ28oYikpYS5OfHwoYS5OPSEwLGlvKGIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBieihhKX0pKTtlbHNlIGlmKGEuWlthLkhdfHxYeShhLmphKXx8YS5MYS0tPD0wKVAoMSksYS5aW2EuSF09ITA7ZWxzZXtZeShhLmphKTt2YXIgYz1heihhLCEwKTtYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6YS5IfSxjKTthLlI9ITE7YS5OPSExfX19LGN6PWZ1bmN0aW9uKGEpe2EuS3x8KGEuSz0KQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9LDUwMCkpfSxlej1mdW5jdGlvbihhKXt2YXIgYj1kejtiLlpbYV18fChhIT09Yi5IJiYoYnooYiksYi5IPWEpLGIuUj0hMCxjeihiKSxheihiKS5sZW5ndGg+PTIwMjImJmJ6KGIpKX0sZHo7ZnVuY3Rpb24gZnooYSl7Z3ooKTtaeShkeixhKX1mdW5jdGlvbiBoeigpe3ZhciBhO2E9YT09PXZvaWQgMD8hMTphO2d6KCk7dmFyIGI9YSxjPWR6O2I9Yj09PXZvaWQgMD8hMTpiO2lmKGZuLk4mJiRrKDI2KSl7dmFyIGQ9YXooYywhMCwhMCk7Yj9Wbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKTpYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKX19ZnVuY3Rpb24gZ3ooKXtkenx8KGR6PW5ldyAkeSl9O2Z1bmN0aW9uIGl6KCl7ZnVuY3Rpb24gYShjLGQpe3ZhciBlPXdiKHJiW2RdfHxbXSk7ZSYmYi5wdXNoKFtjLGVdKX12YXIgYj1bXTthKCJ1IiwiR1RNIik7YSgidXQiLCJUQUdHSU5HIik7YSgiaCIsIkhFQUxUSCIpO3JldHVybiBifTt2YXIgano9Imh0dHBzOi8vIitFKDIxKSxrej1mdW5jdGlvbigpe3RoaXMuTj0hMTt0aGlzLlI9W107dGhpcy5aPVtdO3RoaXMuSD17VEM6MCxIVEM6MH07dGhpcy5LPXt9fSxsej1mdW5jdGlvbihhLGIsYyxkKXthLktbYl18fChhLktbYl09e30pO2EuS1tiXVtjXT1kfSxvej1mdW5jdGlvbihhKXt2YXIgYj0iIixjPSIiLGQ9bXooKTtBYihkKSYmKGEuSC5JPU1hdGguZmxvb3IoZCkpO2M9bnooYS5ILEp5KS50b1N0cmluZygpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGEuSykpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlLGg9YS5LW2ddLm5hbWUsbD0iIixuPW56KGEuS1tnXSxLeSk7biYmKGw9aCsiLiIrbi50b1N0cmluZygpLGIrPSJ+IitsKX12YXIgcD0ifkFXQ1QiK2EuUi5qb2luKCIuIikscT0ifkdBIithLlouam9pbigiLiIpLHI9IiZjY2lkPSIrdmsoKS50b1N0cmluZygpKyImY2lkPSIrRSg1KS50b1N0cmluZygpKyImbD0iK2MrYisoYS5SLmxlbmd0aD8KcDoiIikrKGEuWi5sZW5ndGg/cToiIik7aWYoTSgyMTQpKXt2YXIgdCx1PSh0PXJkKCkpPT1udWxsP3ZvaWQgMDp0LmdldEVudHJpZXNCeU5hbWUoS2MpLm1hcChmdW5jdGlvbih2KXtyZXR1cm4gU3RyaW5nKHYuZHVyYXRpb24pfSkuam9pbigiLiIpO3UmJihyKz0iflNTIit1KX1yZXR1cm4gcn0scHo9ZnVuY3Rpb24oYSxiKXtpZighYi5zdGFnZXx8YS5OfHwhT3koKXx8U3koYikpcmV0dXJuITE7dmFyIGMsZD0oYz1yZCgpKT09bnVsbD92b2lkIDA6Yy50aW1lT3JpZ2luO2lmKCFBYihkKSlhLk49ITA7ZWxzZSBpZihBYigkaygyNSkpJiYhU3koe3N0YWdlOkl5LlguamR9KSYmIWEuTiYmT3koKSl0cnl7dmFyIGU9TnVtYmVyKCRrKDI1KSk7VHkoe3N0YWdlOkl5LlguamR9LHtzdGFydFRpbWU6TWF0aC5tYXgoZS1kLDApfSk7VHkoe3N0YWdlOkl5LlguaWp9LHtzdGFydFRpbWU6MH0pO3ZhciBmPVV5KHtzdGFnZTpJeS5YLmpkfSxJeS5YLmlqKTtmJiYoYS5ILkw9TWF0aC5mbG9vcihmKSl9Y2F0Y2goZyl7YS5OPQohMH1pZihhLk4pcmV0dXJuITE7dHJ5e2lmKCFUeShiKSlyZXR1cm4hMX1jYXRjaChnKXtyZXR1cm4gYS5OPSEwLCExfXJldHVybiEwfSxxej1mdW5jdGlvbihhLGIsYyl7aWYocHooYSxiKSl0cnl7dmFyIGQ9VXkoYixjKTtpZihkKXJldHVybiBNYXRoLmZsb29yKGQpfWNhdGNoKGUpe2EuTj0hMH19LHN6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm1pfSl9LHR6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKSxiPXF6KGEse3N0YWdlOkl5LlguWGt9LEl5LlgubWkpO2IhPT12b2lkIDAmJihhLkguUz1iKX0sdXo9ZnVuY3Rpb24oKXt2YXIgYT1yeigpO3B6KGEse3N0YWdlOkl5Llgubml9KX0sdno9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlguQmgsZXZlbnRJZDphfSk7Yy5LW2FdJiZjLktbYV0ubmFtZXx8bHooYyxhLCJuYW1lIixTYihiLCJndG0uIik/YjoiKiIpfSx3ej1mdW5jdGlvbihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC52bSwKZXZlbnRJZDphfSxJeS5YLkJoKTtjIT09dm9pZCAwJiZseihiLGEsIlMiLGMpfSx5ej1mdW5jdGlvbihhLGIpe3ZhciBjPXJ6KCksZD1xeihjLHtzdGFnZTpJeS5YLnRtLGV2ZW50SWQ6YX0sSXkuWC5CaCk7ZCE9PXZvaWQgMCYmbHooYyxhLCJFIixkKTtpZihiPT09Imd0bS5sb2FkIil7dmFyIGU9cXooYyx7c3RhZ2U6SXkuWC5Xa30sSXkuWC5aZyk7ZSE9PXZvaWQgMCYmKGMuSC5FPWUpO2lvKGxvKGNvLmlhLlpiKSxmdW5jdGlvbigpe2lmKCFjLk4mJk95KCkmJkUoNSkpe3ZhciBmPXh6KCk7ZiE9PXZvaWQgMCYmKGMuSC5GPU1hdGguZmxvb3IoZikpO3RyeXtmb3IodmFyIGc9aXooe2V2ZW50SWQ6MCx0ZjohMX0pLGg9W10sbD1tKGcpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1tKG4udmFsdWUpLHE9cC5uZXh0KCkudmFsdWUscj1wLm5leHQoKS52YWx1ZTtoLnB1c2goIiYiK3ErIj0iK3IpfXZhciB0PUNwKCksdT1bW2ZrKGp6KSwiL2E/dj0zJnQ9bCIsIiZwaWQ9IisKRGIoKS50b1N0cmluZygpLCImcnY9IitFKDE0KSx0PyImdGFnX2V4cD0iK3Q6IiIsaC5qb2luKCIiKV0uam9pbigiIiksIiZndG09IixkdSgpLG96KGMpXS5qb2luKCIiKTtpZih1Lmxlbmd0aD4yMDIyKXt2YXIgdj1NYXRoLm1heCh1Lmxhc3RJbmRleE9mKCIuVFMiLDIwMjIpLHUubGFzdEluZGV4T2YoIn4iLDIwMjIpKTt1PXUuc2xpY2UoMCx2KX1Ybih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2fSx1KX1jYXRjaCh4KXt9fX0pfX0seno7ZnVuY3Rpb24gcnooKXt6enx8KHp6PW5ldyBreik7cmV0dXJuIHp6fWZ1bmN0aW9uIG16KCl7dHJ5e3ZhciBhO3JldHVybigoYT1yZCgpKT09bnVsbD92b2lkIDA6YS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0pLmRvbUludGVyYWN0aXZlfWNhdGNoKGIpe319CmZ1bmN0aW9uIG56KGEsYil7cmV0dXJuIE9iamVjdC5rZXlzKGIpLm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYltjXX0pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gYVtjXSE9PXZvaWQgMH0pLm1hcChmdW5jdGlvbihjKXtyZXR1cm4oIiIrKGM9PT0idGFnIj8iIjpjKSkuY29uY2F0KGFbY10udG9TdHJpbmcoKSl9KS5qb2luKCIuIil9ZnVuY3Rpb24gQXooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRW0sZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLloucHVzaChjKX1mdW5jdGlvbiBCeihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC5FayxldmVudElkOmF9LEl5LlguamQpO2MhPT12b2lkIDAmJmIuUi5wdXNoKGMpfWZ1bmN0aW9uIEN6KGEpe3ZhciBiPXJ6KCk7cHooYix7c3RhZ2U6SXkuWC5UaSxldmVudElkOmF9KX0KZnVuY3Rpb24gRHooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llguc20sZXZlbnRJZDphfSxJeS5YLlRpKTtjIT09dm9pZCAwJiZseihiLGEsIlYiLGMpfWZ1bmN0aW9uIHh6KCl7dHJ5e3ZhciBhLGI7cmV0dXJuKGI9KGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKS5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLm5hbWU9PT0iZmlyc3QtY29udGVudGZ1bC1wYWludCJ9KSk9PW51bGw/dm9pZCAwOmIuc3RhcnRUaW1lfWNhdGNoKGMpe319ZnVuY3Rpb24gRXooYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlgueGosZXZlbnRJZDphLmlkLHRhZ0lkOk51bWJlcihiW0dmLnlqXSl9KX0KZnVuY3Rpb24gRnooYSxiLGMpe3ZhciBkPXJ6KCksZT1kbihiKSxmPU51bWJlcihiW0dmLnlqXSksZz1xeihkLHtzdGFnZTpjLGV2ZW50SWQ6YS5pZCx0YWdJZDpmfSxJeS5YLnhqKTtpZihnIT09dm9pZCAwJiZkLktbYS5pZF0pe3ZhciBoPWQuS1thLmlkXS50YWd8fCIiLGwsbj0obD1NeVtjXSkhPW51bGw/bDoiMSIscD1uZXcgUmVnRXhwKCJUU1xcZCIrZSsiLlRJIitmKSxxPSJUUyIrbitlKyIuVEkiK2YrIi5URSIrZztoLnNlYXJjaChwKT49MD9uIT09IjEiJiZseihkLGEuaWQsInRhZyIsaC5yZXBsYWNlKHAscS5yZXBsYWNlKCIuVEUiK2csIiIpKSk6KGx6KGQsYS5pZCwidGFnIiwoaD9oKyIuIjoiIikrcSksZT09PSJodG1sIiYmKGQuSC5IVEMrPTEpLGQuSC5UQys9MSl9fTt2YXIgS3o9e2dqOnticDoiMSIsdXE6IjIiLFZxOiIzIn19Owp2YXIgTHo9e30sTXo9T2JqZWN0LmZyZWV6ZSgoTHpbRi5ELmZoXT0xLEx6W0YuRC5naF09MSxMeltGLkQuQmRdPTEsTHpbRi5ELkNkXT0xLEx6W0YuRC5SY109MSxMeltGLkQuc2ldPTEsTHpbRi5ELnVpXT0xLEx6W0YuRC5DbF09MSxMeltGLkQuaWhdPTEsTHpbRi5ELkNmXT0xLEx6W0YuRC5EZl09MSxMeltGLkQuRWZdPTEsTHpbRi5ELkhhXT0xLEx6W0YuRC5GZl09MSxMeltGLkQuRmRdPTEsTHpbRi5ELnVjXT0xLEx6W0YuRC5IZF09MSxMeltGLkQuTGJdPTEsTHpbRi5ELkNiXT0xLEx6W0YuRC5UYl09MSxMeltGLkQubmJdPTEsTHpbRi5ELmViXT0xLEx6W0YuRC5HZV09MSxMeltGLkQua2hdPTEsTHpbRi5ELk9hXT0xLEx6W0YuRC5PcF09MSxMeltGLkQuU3BdPTEsTHpbRi5ELkllXT0xLEx6W0YuRC5HaV09MSxMeltGLkQuUWZdPTEsTHpbRi5ELlRhXT0xLEx6W0YuRC5ZY109MSxMeltGLkQuWmNdPTEsTHpbRi5ELnRiXT0xLEx6W0YuRC5RZF09MSxMeltGLkQuUmRdPTEsTHpbRi5ELlNkXT0KMSxMeltGLkQuTmVdPTEsTHpbRi5ELnphXT0xLEx6W0YuRC5VYV09MSxMeltGLkQuV2xdPTEsTHpbRi5ELlhsXT0xLEx6W0YuRC5ZbF09MSxMeltGLkQuWmxdPTEsTHpbRi5ELldiXT0xLEx6W0YuRC5UZF09MSxMeltGLkQuWGJdPTEsTHpbRi5ELmRkXT0xLEx6W0YuRC5VZF09MSxMeltGLkQuUWVdPTEsTHpbRi5ELlBhXT0xLEx6W0YuRC55Y109MSxMeltGLkQuVmRdPTEsTHpbRi5ELnpjXT0xLEx6W0YuRC5BY109MSxMeltGLkQuZmJdPTEsTHpbRi5ELlFhXT0xLEx6KSksTno9e30sT3o9KE56W0YuRC5VY109MSxOeltGLkQuUHBdPTEsTnpbRi5ELkhlXT0xLE56W0YuRC5yaV09MSxOei5vcmVmPTEsTnopO3ZhciBQeixRejsKZnVuY3Rpb24gUnooYSxiKXt2YXIgYz1hW0dmLlliXSxkPWImJmIuZXZlbnQ7aWYoIWMpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBlPVF6W2NdLGY9e30sZztmb3IoZyBpbiBhKWEuaGFzT3duUHJvcGVydHkoZykmJihTYihnLCJ2dHBfIik/ZltlIT09dm9pZCAwP2c6Zy5zdWJzdHJpbmcoNCldPWFbZ106Zz09PUdmLkZxLnRvU3RyaW5nKCkmJihmW2UhPT12b2lkIDA/InZ0cF9ndG1HZW5lcmF0ZWRUYWdnaW5nTWV0YWRhdGEiOmddPWFbZ10pKTtJZig2MSkmJmUmJihmLnZ0cF9leHRyYUV4cGVyaW1lbnRJZHM9ITApO2UmJmQmJmQuY2FjaGVkTW9kZWxWYWx1ZXMmJihmLnZ0cF9ndG1DYWNoZWRWYWx1ZXM9ZC5jYWNoZWRNb2RlbFZhbHVlcyk7YiYmZSYmKGYudnRwX2d0bUVudGl0eUluZGV4PWIuaW5kZXgsZi52dHBfZ3RtRW50aXR5TmFtZT1iLm5hbWUpO3JldHVybiBlIT09dm9pZCAwP2UoZik6UHooYyxmLApiKX12YXIgVHo9ZnVuY3Rpb24oKXt2YXIgYT1TejtpZihNKDU4NSkmJmZuLkspe3ZhciBiPUUoNSkuaW5kZXhPZigiR1RNLSIpPT09MCYmSWYoNjIpLGMsZD0oKGM9RmsoKSk9PW51bGw/dm9pZCAwOmMuc291cmNlKT09PTE7YiYmIWR8fGEuSHx8KGEuSD0hMCxVbSgiYWJsIiwiMSIpLHRvKCkpfX0sU3o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPSExfTt2YXIgVXo9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5IPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5uYW1lPVN0cmluZyh0aGlzLkhbR2YuUm1dfHwiIil9OwpVei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXtpZighYlt0aGlzLmluZGV4XSYmIWEuaXNCbG9ja2VkKHRoaXMuSCkpe2JbdGhpcy5pbmRleF09ITA7dGhpcy5IW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO3ZhciBjPXRoaXMubmFtZSxkO3RyeXt2YXIgZT17fSxmO2ZvcihmIGluIHRoaXMuSCl0aGlzLkguaGFzT3duUHJvcGVydHkoZikmJihlW2ZdPWVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKSk7ZS52dHBfZ3RtRXZlbnRJZD1hLmlkO2EucHJpb3JpdHlJZCYmKGUudnRwX2d0bVByaW9yaXR5SWQ9YS5wcmlvcml0eUlkKTt2YXIgZz1kPVJ6KGUse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjIsbmFtZTpjfSk7ZVtHZi5aa10mJnR5cGVvZiBnPT09InN0cmluZyImJihnPWVbR2YuWmtdPT09MT9nLnRvTG93ZXJDYXNlKCk6Zy50b1VwcGVyQ2FzZSgpKTtlLmhhc093blByb3BlcnR5KEdmLmFoKSYmKGc9WWYoMTgpP2VbR2YuYWhdPT09MT8KVmYoZywiUEVSSU9EIik6ZVtHZi5haF09PT0yP1ZmKGcsIkNPTU1BIik6VmYoZywiQVVUT01BVElDIik6ZVtHZi5haF09PT0xP1ZmKGcsIlBFUklPRCIpOlZmKGcsIkNPTU1BIikpO2UuaGFzT3duUHJvcGVydHkoR2YuYmwpJiZnPT09bnVsbCYmKGc9ZVtHZi5ibF0pO2UuaGFzT3duUHJvcGVydHkoR2YuaWwpJiZnPT09dm9pZCAwJiYoZz1lW0dmLmlsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5lcCkmJihnPUpiKGcpKTtlLmhhc093blByb3BlcnR5KEdmLmZsKSYmZz09PSEwJiYoZz1lW0dmLmZsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5hbCkmJmc9PT0hMSYmKGc9ZVtHZi5hbF0pO2Q9Z31jYXRjaChoKXthLmxvZ01hY3JvRXJyb3ImJmEubG9nTWFjcm9FcnJvcihoLE51bWJlcih0aGlzLmluZGV4KSxjKSxkPSExfWJbdGhpcy5pbmRleF09ITE7cmV0dXJuIGR9fTtVei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgVno9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuSD1hO3RoaXMudGFncz1iO3RoaXMubWFjcm9zPWN9O1Z6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3RyeXtmb3IodmFyIGM9e30sZD1tKE9iamVjdC5rZXlzKHRoaXMuSCkpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2NbZl09Zj09PSJmdW5jdGlvbiI/dGhpcy5IW2ZdOmVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKX1yZXR1cm4gY2woYyl9Y2F0Y2goZyl7SlNPTi5zdHJpbmdpZnkodGhpcy5IKX1yZXR1cm4gMn07VnoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5IKX07dmFyIFd6PWZ1bmN0aW9uKGEsYil7dGhpcy5pbmRleD1iO3RoaXMuTj1bXTt0aGlzLlI9W107dGhpcy5LPVtdO3RoaXMuSD1bXTt0aGlzLm5hbWU9IiI7Zm9yKHZhciBjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPW0oZC52YWx1ZSksZj1lLm5leHQoKS52YWx1ZSxnPXlhKGUpLGg9ZixsPWc7aD09PSJpZiI/dGhpcy5OPWw6aD09PSJ1bmxlc3MiP3RoaXMuUj1sOmg9PT0iYWRkIj90aGlzLks9bDpoPT09ImJsb2NrIj90aGlzLkg9bDpoPT09InJ1bGVOYW1lIiYmKHRoaXMubmFtZT1sWzBdKX19OwpXei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1Yeih0aGlzLGIpLGQ9W10sZT1bXTtjPyhkLnB1c2guYXBwbHkoZCx3KHRoaXMuSykpLGUucHVzaC5hcHBseShlLHcodGhpcy5IKSkpOmM9PT1udWxsJiZlLnB1c2guYXBwbHkoZSx3KHRoaXMuSCkpO3JldHVybntmaXJpbmdUYWdzOmQsYmxvY2tpbmdUYWdzOmV9fTsKdmFyIFh6PWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW0oYS5OKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9YihkLnZhbHVlKTtpZihlPT09MClyZXR1cm4hMTtpZihlPT09MilyZXR1cm4gbnVsbH1mb3IodmFyIGY9bShhLlIpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1iKGcudmFsdWUpO2lmKGg9PT0yKXJldHVybiBudWxsO2lmKGg9PT0xKXJldHVybiExfXJldHVybiEwfTtXei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBZej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLklhPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5PPVN0cmluZyh0aGlzLklhW0dmLlliXSk7dGhpcy5uYW1lPVN0cmluZyh0aGlzLklhW0dmLlJtXXx8IiIpO3RoaXMudGFnSWQ9TnVtYmVyKHRoaXMuSWFbR2YueWpdKX07Cll6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwP3t9OmM7dmFyIGQsZT1jO2U9ZT09PXZvaWQgMD97fTplO3ZhciBmPXt9LGc7Zm9yKGcgaW4gdGhpcy5JYSl0aGlzLklhLmhhc093blByb3BlcnR5KGcpJiYoZltnXT1lbCh0aGlzLklhW2ddLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLFtdKSk7ZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGYsZSk7ZC52dHBfZ3RtVGFnSWQ9dGhpcy50YWdJZDt0aGlzLklhW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO1J6KGQse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjEsbmFtZTp0aGlzLm5hbWV9KX07WXoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5JYSl9Owp2YXIgWno9ZnVuY3Rpb24oYSxiKXtpZihhLklhW0dmLnRuXSlyZXR1cm4gZWwoYS5JYVtHZi50bl0sYixhLnRhZ3MsYS5tYWNyb3MsW10pfSwkej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YuRG5dKXJldHVybiBlbChhLklhW0dmLkRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LGFBPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5JYVtHZi5jcF07aWYoYylyZXR1cm4gZWwoYyxiLGEudGFncyxhLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXRNZXRhZGF0YT1mdW5jdGlvbihhKXtyZXR1cm4gZWwodGhpcy5JYVtHZi5NRVRBREFUQV0sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pfTtZei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBiQT1mdW5jdGlvbigpe3RoaXMubWFjcm9zPVtdO3RoaXMucnVsZXM9W107dGhpcy5wcmVkaWNhdGVzPVtdO3RoaXMudGFncz1bXTt0aGlzLnZrPVtdfTtiQS5wcm90b3R5cGUuZ2V0UnVsZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydWxlc307dmFyIGNBPW5ldyBiQTtmdW5jdGlvbiBkQShhLGIsYyxkKXt2YXIgZT1XYygpLGY7aWYoZT09PTEpYTp7dmFyIGc9RSgzKTtnPWcudG9Mb3dlckNhc2UoKTtmb3IodmFyIGg9Imh0dHBzOi8vIitnLGw9Imh0dHA6Ly8iK2csbj0xLHA9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IikscT0wO3E8cC5sZW5ndGgmJnE8MTAwO3ErKyl7dmFyIHI9cFtxXS5zcmM7aWYocil7cj1yLnRvTG93ZXJDYXNlKCk7aWYoci5pbmRleE9mKGwpPT09MCl7Zj0zO2JyZWFrIGF9bj09PTEmJnIuaW5kZXhPZihoKT09PTAmJihuPTIpfX1mPW59ZWxzZSBmPWU7cmV0dXJuKGY9PT0yfHxkfHwiaHR0cDoiIT09QS5sb2NhdGlvbi5wcm90b2NvbD9hOmIpK2N9O3ZhciBlQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGEuSylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5LLGQpJiZjLnB1c2goZCsifiIrYS5LW2RdKTt2YXIgZT1bXSxmO2ZvcihmIGluIGEuSClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5ILGYpJiZlLnB1c2goZisifiIrYS5IW2ZdKTtiLnRmJiYoYS5LPXt9LGEuSD17fSk7dmFyIGc9W107Yy5sZW5ndGg+MCYmZy5wdXNoKFsiYmNzIixjLmpvaW4oIi4iKV0pO2UubGVuZ3RoPjAmJmcucHVzaChbImJldCIsZS5qb2luKCIuIildKTtyZXR1cm4gZ30pfSxmQTtmdW5jdGlvbiBnQSgpe2ZBfHwoZkE9bmV3IGVBKX07ZnVuY3Rpb24gaEEoYSxiLGMsZCxlKXtpZighRWsoYSkpe2QubG9hZEV4cGVyaW1lbnRzPXlqKCk7SGsoYSxkLGUpO3ZhciBmPWlBKGEpLGc9ZnVuY3Rpb24oKXtvaygpLmNvbnRhaW5lclthXSYmKG9rKCkuY29udGFpbmVyW2FdLnN0YXRlPTMpO2pBKCl9LGg9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgbD1YaigpLG49bCsiLyIra0EoZixhKTtabihoLG4sdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxuLGwrIi8iK2YsaCxnKX0pfWVsc2V7dmFyIHA9U2IoYSwiR1RNLSIpLHE9ZGsoKSxyPWM/Ii9ndGFnL2pzIjoiL2d0bS5qcyIsdD1tQShiLHIrZixhKTtpZighdCl7dmFyIHU9RSgzKStyO3EmJktjJiZwJiYodT1LYy5yZXBsYWNlKC9eKD86aHR0cHM/OlwvXC8pPy9pLCIiKS5zcGxpdCgvWz8jXS8pWzBdKTt0PWRBKCJodHRwczovLyIsImh0dHA6Ly8iLHUrZil9Wm4oaCx0LHZvaWQgMCxnKX19fQpmdW5jdGlvbiBqQSgpe0trKCl8fEdiKExrKCksZnVuY3Rpb24oYSxiKXtuQShhLGIudHJhbnNwb3J0VXJsLGIuY29udGV4dCk7UCg5Mil9KX1mdW5jdGlvbiBuQShhLGIsYyxkKXtpZighR2soYSkpaWYoYy5sb2FkRXhwZXJpbWVudHN8fChjLmxvYWRFeHBlcmltZW50cz15aigpKSxLaygpKUprKGEsYixjLGQpO2Vsc2V7SWsoYSxjLGQpO3ZhciBlPXtkZXN0aW5hdGlvbklkOmEsZW5kcG9pbnQ6MH07aWYoV2ooKSl7dmFyIGY9WGooKSxnPSJndGQiK2lBKGEsITApLGg9ZisiLyIra0EoZyxhKTtabihlLGgsdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxoLGYrIi8iK2csZSl9KX1lbHNle3ZhciBsPSIvZ3RhZy9kZXN0aW5hdGlvbiIraUEoYSwhMCksbj1tQShiLGwsYSk7bnx8KG49ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsRSgzKStsKSk7Wm4oZSxuKX19fQpmdW5jdGlvbiBsQShhLGIsYyxkLGUpe2lmKE0oNDEzKSl7Z0EoKTt2YXIgZj1mQTtpZihmbi5OKXt2YXIgZz1BLnBlcmZvcm1hbmNlLGg9LTE7aWYoZyYmZy5nZXRFbnRyaWVzQnlUeXBlKXt2YXIgbD1SaihiKS5ocmVmLG49Zy5nZXRFbnRyaWVzQnlOYW1lKGwpLnBvcCgpO2lmKCFuKWZvcih2YXIgcD1nLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikscT0wO3E8cC5sZW5ndGg7cSsrKXt2YXIgcj1wW3FdO2lmKHIubmFtZSYmci5uYW1lLmluZGV4T2YoYikhPT0tMSl7bj1yO2JyZWFrfX1uJiZuLnJlc3BvbnNlU3RhdHVzIT09dm9pZCAwJiYoaD1uLnJlc3BvbnNlU3RhdHVzKX1mLktbYV09aH1QKDE5MCk7dmFyIHQ9bm0oam0uYmEua2opfHx7fTt0W2FdPSEwO21tKGptLmJhLmtqLHQpO3ZhciB1PWMrKGMuaW5kZXhPZigiPyIpPT09LTE/Ij9mPTEiOiImZj0xIik7ZT9abihkLHUsdm9pZCAwLGUpOlpuKGQsdSl9ZWxzZSBlJiZlKCl9CmZ1bmN0aW9uIGlBKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9Ij9pZD0iK2VuY29kZVVSSUNvbXBvbmVudChhKSxkPUUoMTkpO2QhPT0iZGF0YUxheWVyIiYmKGMrPSImbD0iK2QpO3ZhciBlPVNiKGEsIkdUTS0iKTtpZighZXx8YiljKz0iJmN4PWMiO2UmJklmKDYyKSYmKGMrPSImZ29vZ2xlX29ubHk9dHJ1ZSIpO3ZhciBmPWMsZyxoPXtEbzpKZigxNSksSW86RSgxNCl9O2c9Q2YoaCk7Yz1mKygiJmd0bT0iK2cpO2RrKCkmJihjKz0iJnNpZ249IitBai5xaik7dmFyIGw9YyxuPUpmKDU0KTtpZihuPT09MSl7bCs9IiZmcHM9ZmMiO3ZhciBwPUUoNjApO3AmJihsKz0iJmdkZXY9IitwKX1lbHNlIG49PT0yJiYobCs9IiZmcHM9ZmUiKTtyZXR1cm4gbH0KZnVuY3Rpb24ga0EoYSxiKXtpZighTSg0MTMpfHwhWGooKSlyZXR1cm4gYTt2YXIgYz1FKDU4KTtpZighYylyZXR1cm4gUCgxODIpLGE7dHJ5e3ZhciBkPU5iKCksZT1FZihhLGMpLGY9TmIoKS1kO2dBKCk7dmFyIGc9ZkE7Zm4uTiYmKGcuSFtiXT1mKTtyZXR1cm4gZX1jYXRjaChoKXtyZXR1cm4gUCgxODMpLGF9fWZ1bmN0aW9uIG1BKGEsYixjKXtpZihhaygpJiZhKXt2YXIgZD1FKDU4KSxlPVhqKCk7aWYoZCYmZSl0cnl7dmFyIGY9TmIoKTtiPWUrIi8iK0VmKGIsZCk7dmFyIGc9TmIoKS1mO2dBKCk7dmFyIGg9ZkE7Zm4uTiYmKGguSFtjXT1nKX1jYXRjaChsKXtQKDE4Myl9cmV0dXJuIFlqKGEsYil9fTt2YXIgcEE9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSz1uZXcgRmI7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLlI9e25hbWU6RSgxOSksc2V0OmZ1bmN0aW9uKGIsYyl7RWQoVmIoYixjKSxhLkgpO29BKGEpfSxnZXQ6ZnVuY3Rpb24oYil7cmV0dXJuIGEuZ2V0KGIsMil9LHJlc2V0OmZ1bmN0aW9uKCl7YS5LPW5ldyBGYjthLkg9e307b0EoYSl9fX07cEEucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3JldHVybiBiIT0yP3RoaXMuSy5nZXQoYSk6cUEodGhpcyxhKX07dmFyIHFBPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iLnNwbGl0KCIuIik7Yz1jfHxbXTtmb3IodmFyIGU9YS5ILGY9MDtmPGQubGVuZ3RoO2YrKyl7aWYoZT09PW51bGwpcmV0dXJuITE7aWYoZT09PXZvaWQgMClicmVhaztlPWVbZFtmXV07aWYoYy5pbmRleE9mKGUpIT09LTEpcmV0dXJufXJldHVybiBlfTsKcEEucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTi5oYXNPd25Qcm9wZXJ0eShhKXx8KHRoaXMuSy5zZXQoYSxiKSxFZChWYihhLGIpLHRoaXMuSCksb0EodGhpcykpfTt2YXIgc0E9ZnVuY3Rpb24oKXtmb3IodmFyIGE9WyJndG0uYWxsb3dsaXN0IiwiZ3RtLmJsb2NrbGlzdCIsImd0bS53aGl0ZWxpc3QiLCJndG0uYmxhY2tsaXN0IiwidGFnVHlwZUJsYWNrbGlzdCJdLGI9ckEsYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLGU9Yi5nZXQoZCwxKTtpZihBcnJheS5pc0FycmF5KGUpfHxDZChlKSllPUVkKGUsbnVsbCk7Yi5OW2RdPWV9fSxvQT1mdW5jdGlvbihhLGIpe0diKGEuTixmdW5jdGlvbihjLGQpe2EuSy5zZXQoYyxkKTtFZChWYihjKSxhLkgpO0VkKFZiKGMsZCksYS5IKTtiJiZkZWxldGUgYS5OW2NdfSl9LHJBPW5ldyBwQSx0QT1yQS5SO2Z1bmN0aW9uIHVBKGEsYil7cmV0dXJuIHJBLmdldChhLGIpfQpmdW5jdGlvbiB2QShhLGIpe3ZhciBjPWI9PT12b2lkIDA/MjpiLGQ9ckEsZSxmPShjPT09dm9pZCAwPzI6YykhPT0xP3FBKGQsYSk6ZC5LLmdldChhKTtBZChmKT09PSJhcnJheSJ8fEFkKGYpPT09Im9iamVjdCI/ZT1FZChmLG51bGwpOmU9ZjtyZXR1cm4gZX07dmFyIHdBPW5ldyBSZWdFeHAoL14oLipcLik/KGdvb2dsZXx5b3V0dWJlfGJsb2dnZXJ8d2l0aGdvb2dsZSkoXC5jb20/KT8oXC5bYS16XXsyfSk/XC4/JC8pLHhBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbIm5vbkdvb2dsZVBpeGVscyJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCIsImN1c3RvbVBpeGVscyIsIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlUGl4ZWxzOltdLG5vbkdvb2dsZVNjcmlwdHM6WyJub25Hb29nbGVQaXhlbHMiXSxub25Hb29nbGVJZnJhbWVzOlsibm9uR29vZ2xlUGl4ZWxzIl19LHlBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbImN1c3RvbVNjcmlwdHMiLAoiaHRtbCJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIl0sY3VzdG9tU2NyaXB0czpbImh0bWwiXSxub25Hb29nbGVQaXhlbHM6WyJjdXN0b21QaXhlbHMiLCJjdXN0b21TY3JpcHRzIiwiaHRtbCIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlU2NyaXB0czpbImN1c3RvbVNjcmlwdHMiLCJodG1sIl0sbm9uR29vZ2xlSWZyYW1lczpbImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyJdfSx6QT0iZ29vZ2xlIGN1c3RvbVBpeGVscyBjdXN0b21TY3JpcHRzIGh0bWwgbm9uR29vZ2xlUGl4ZWxzIG5vbkdvb2dsZVNjcmlwdHMgbm9uR29vZ2xlSWZyYW1lcyIuc3BsaXQoIiAiKTsKZnVuY3Rpb24gQUEoKXt2YXIgYT11QSgiZ3RtLmFsbG93bGlzdCIpfHx1QSgiZ3RtLndoaXRlbGlzdCIpO2EmJlAoOSk7SWYoNjIpJiYoYT12b2lkIDApO0JBKCkmJihJZig2Mik/UCgxMTYpOihQKDExNyksSWYoNDgpJiYoYT1bXSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdUTSBibG9ja2VkLiBTZWUgZ28vMTM2ODc3MjguIikpKSk7dmFyIGI9YSYmUmIoS2IoYSkseEEpLGM9dUEoImd0bS5ibG9ja2xpc3QiKXx8dUEoImd0bS5ibGFja2xpc3QiKTtjfHwoYz11QSgidGFnVHlwZUJsYWNrbGlzdCIpKSYmUCgzKTtjP1AoOCk6Yz1bXTtCQSgpJiYoYz1LYihjKSxjLnB1c2goIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJzYW5kYm94ZWRTY3JpcHRzIikpO0tiKGMpLmluZGV4T2YoImdvb2dsZSIpPj0wJiZQKDIpO3ZhciBkPWMmJlJiKEtiKGMpLHlBKSxlPXt9O3JldHVybiBmdW5jdGlvbihmKXt2YXIgZz1mJiYKZltHZi5ZYl07aWYoIWd8fHR5cGVvZiBnIT09InN0cmluZyIpcmV0dXJuITA7Zz1nLnJlcGxhY2UoL15fKi8sIiIpO2lmKGVbZ10hPT12b2lkIDApcmV0dXJuIGVbZ107dmFyIGg9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ddfHxbXSxsPSEwO2EmJihsPWwmJkNBKGcsaCxiKSk7dmFyIG49ITE7YyYmKG49REEoZyxoLGQpKTt2YXIgcD0hbHx8bjshcCYmKGguaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpPT09LTF8fGImJmIuaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpIT09LTE/MDpFYihkLHpBKSkmJihwPSEwKTtyZXR1cm4gZVtnXT1wfX1mdW5jdGlvbiBDQShhLGIsYyl7aWYoYy5pbmRleE9mKGEpPDApaWYoYiYmYi5sZW5ndGg+MClmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7aWYoYy5pbmRleE9mKGJbZF0pPDApcmV0dXJuIFAoMTEpLCExfWVsc2UgcmV0dXJuITE7cmV0dXJuITB9CmZ1bmN0aW9uIERBKGEsYixjKXt2YXIgZD1jLmluZGV4T2YoYSk+PTA7aWYoZClyZXR1cm4gZDt2YXIgZT1FYihjLGJ8fFtdKTtlJiZQKDEwKTtyZXR1cm4gZX1mdW5jdGlvbiBCQSgpe3JldHVybiB3QS50ZXN0KEEubG9jYXRpb24mJkEubG9jYXRpb24uaG9zdG5hbWUpfTtmdW5jdGlvbiBFQShhKXtmb3IodmFyIGI9W10sYz1bXSxkPUZBKGEpLGU9bShjQS5nZXRSdWxlcygpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7Zm9yKHZhciBnPWYudmFsdWUuZXZhbHVhdGUoYSxkKSxoPWcuZmlyaW5nVGFncyxsPWcuYmxvY2tpbmdUYWdzLG49MDtuPGgubGVuZ3RoO24rKyliW2hbbl1dPSEwO2Zvcih2YXIgcD0wO3A8bC5sZW5ndGg7cCsrKWNbbFtwXV09ITB9Zm9yKHZhciBxPVtdLHI9MDtyPGNBLnRhZ3MubGVuZ3RoO3IrKyliW3JdJiYhY1tyXSYmKHFbcl09ITApO3JldHVybiBxfWZ1bmN0aW9uIEZBKGEpe3ZhciBiPVtdO3JldHVybiBmdW5jdGlvbihjKXtiW2NdPT09dm9pZCAwJiYoYltjXT1jQS5wcmVkaWNhdGVzW2NdLmV2YWx1YXRlKGEsW10pKTtyZXR1cm4gYltjXX19O3ZhciBHQT1mdW5jdGlvbigpe3RoaXMuSz0wO3RoaXMuSD17fX07R0EucHJvdG90eXBlLmFkZExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0rK3RoaXMuSzt0aGlzLkhbYV09dGhpcy5IW2FdfHx7fTt0aGlzLkhbYV1bU3RyaW5nKGQpXT17bGlzdGVuZXI6YixyZjpjfTtyZXR1cm4gZH07R0EucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5IW2FdLGQ9U3RyaW5nKGIpO2lmKCFjfHwhY1tkXSlyZXR1cm4hMTtkZWxldGUgY1tkXTtyZXR1cm4hMH07dmFyIElBPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107R2IoSEEuSFthXSxmdW5jdGlvbihkLGUpe2MuaW5kZXhPZihlLmxpc3RlbmVyKTwwJiYoZS5yZj09PXZvaWQgMHx8Yi5pbmRleE9mKGUucmYpPj0wKSYmYy5wdXNoKGUubGlzdGVuZXIpfSk7cmV0dXJuIGN9O2Z1bmN0aW9uIEpBKGEsYixjKXtyZXR1cm57ZW50aXR5VHlwZTphLGluZGV4SW5PcmlnaW5Db250YWluZXI6YixuYW1lSW5PcmlnaW5Db250YWluZXI6YyxvcmlnaW5Db250YWluZXJJZDpFKDUpLG9yaWdpbkNJZDp2aygpfX07ZnVuY3Rpb24gS0EoYSxiKXtpZihkYXRhLmVudGl0aWVzKXt2YXIgYz1kYXRhLmVudGl0aWVzW2FdO2lmKGMpcmV0dXJuIGNbYl19fTt2YXIgTUE9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9ITE7dGhpcy5SPVtdO3RoaXMuZXZlbnREYXRhPXt0YWdzOltdfTt0aGlzLlo9ITE7dGhpcy5LPXRoaXMuTj0wO0xBKHRoaXMsYSxiKX0sTkE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoQ2ouaGFzT3duUHJvcGVydHkoYil8fGI9PT0iX196b25lIilyZXR1cm4tMTt2YXIgZT17fTtDZChkKSYmKGU9RWQoZCxlKSk7ZS5pZD1jO2Uuc3RhdHVzPSJ0aW1lb3V0IjtyZXR1cm4gYS5ldmVudERhdGEudGFncy5wdXNoKGUpLTF9LE9BPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuZXZlbnREYXRhLnRhZ3NbYl07ZSYmKGUuc3RhdHVzPWMsZS5leGVjdXRpb25UaW1lPWQpfSxQQT1mdW5jdGlvbihhKXtpZighYS5IKXtmb3IodmFyIGI9YS5SLGM9MDtjPGIubGVuZ3RoO2MrKyliW2NdKCk7YS5IPSEwO2EuUi5sZW5ndGg9MH19LExBPWZ1bmN0aW9uKGEsYixjKXtiIT09dm9pZCAwJiZhLndnKGIpO2MmJkEuc2V0VGltZW91dChmdW5jdGlvbigpe1BBKGEpfSwKTnVtYmVyKGMpKX07TUEucHJvdG90eXBlLndnPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1QYihmdW5jdGlvbigpe2JkKGZ1bmN0aW9uKCl7YShFKDUpLGIuZXZlbnREYXRhKX0pfSk7dGhpcy5IP2MoKTp0aGlzLlIucHVzaChjKX07dmFyIFFBPWZ1bmN0aW9uKGEpe2EuTisrO3JldHVybiBQYihmdW5jdGlvbigpe2EuSysrO2EuWiYmYS5LPj1hLk4mJlBBKGEpfSl9LFJBPWZ1bmN0aW9uKGEpe2EuWj0hMDthLks+PWEuTiYmUEEoYSl9O2Z1bmN0aW9uIFNBKCl7cmV0dXJuIEFbVEEoKV19CmZ1bmN0aW9uIFRBKCl7cmV0dXJuIEEuR29vZ2xlQW5hbHl0aWNzT2JqZWN0fHwiZ2EifXZhciBXQT1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e319O2Z1bmN0aW9uIFhBKCl7YTp7dmFyIGE9RSg1KTt9fQpmdW5jdGlvbiBZQShhLGIpe3JldHVybiBmdW5jdGlvbigpe3ZhciBjPVNBKCksZD1jJiZjLmdldEJ5TmFtZSYmYy5nZXRCeU5hbWUoYSk7aWYoZCl7dmFyIGU9ZC5nZXQoInNlbmRIaXRUYXNrIik7ZC5zZXQoInNlbmRIaXRUYXNrIixmdW5jdGlvbihmKXt2YXIgZz1mLmdldCgiaGl0UGF5bG9hZCIpLGg9Zi5nZXQoImhpdENhbGxiYWNrIiksbD1nLmluZGV4T2YoIiZ0aWQ9IitiKTwwO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZy5yZXBsYWNlKC8mdGlkPVVBLVswLTldKy1bMC05XSsvLCImdGlkPSIrYiksITApLGYuc2V0KCJoaXRDYWxsYmFjayIsdm9pZCAwLCEwKSk7ZShmKTtsJiYoZi5zZXQoImhpdFBheWxvYWQiLGcsITApLGYuc2V0KCJoaXRDYWxsYmFjayIsaCwhMCksZi5zZXQoIl94XzE5Iix2b2lkIDAsITApLGUoZikpfSl9fX07dmFyIGFCPVsiZXMiLCIxIl0sYkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZXZlbnREYXRhPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYzt2YXIgZD1iLmV2ZW50SWQsZT1iLnRmO2lmKGEuZXZlbnREYXRhW2RdKXt2YXIgZj1bXTthLkhbZF18fGYucHVzaChhQik7Zi5wdXNoLmFwcGx5KGYsdyhhLmV2ZW50RGF0YVtkXSkpO2UmJihhLkhbZF09ITApO2M9Zn1lbHNlIGM9W107cmV0dXJuIGN9KX0sY0I7ZnVuY3Rpb24gZEIoYSxiKXt2YXIgYztpZigoYz1jQikhPW51bGwmJmZuLk4pe3ZhciBkPWMuZXZlbnREYXRhLGU7ZT1iLm1hdGNoKC9eKGd0bXxndGFnKVwuLyk/ZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIqIjtkW2FdPVtbImUiLGVdLFsiZWlkIixTdHJpbmcoYSldXTtneigpO2V6KGEpfX07dmFyIGVCPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307dGhpcy5LPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbInRyIixmLmpvaW4oIi4iKV0pO3ZhciBnPWEuS1tjXXx8W107Zy5sZW5ndGgmJmUucHVzaChbInRpIixnLmpvaW4oIi4iKV0pO2QmJihkZWxldGUgYS5IW2NdLGRlbGV0ZSBhLktbY10pO3JldHVybiBlfSl9LGZCOwpmdW5jdGlvbiBnQihhLGIsYyl7ZkJ8fChmQj1uZXcgZUIpO3ZhciBkPWZCO2lmKGZuLk4mJmIpe3ZhciBlPWRuKGIpO2QuSFthXT1kLkhbYV18fFtdO2QuSFthXS5wdXNoKGMrZSk7dmFyIGY9YltHZi5ZYl07aWYoIWYpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBnPShReltmXT8iMSI6IjIiKStlO2QuS1thXT1kLktbYV18fFtdO2QuS1thXS5wdXNoKGcpO2d6KCk7ZXooYSl9fTtmdW5jdGlvbiBoQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigwLGEsYixjKX1mdW5jdGlvbiBqQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDAsYSl9ZnVuY3Rpb24ga0IoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2lCKCkuYWRkUmVzdHJpY3Rpb24oMSxhLGIsYyl9ZnVuY3Rpb24gbEIoKXt2YXIgYT12aygpO3JldHVybiBpQigpLmdldFJlc3RyaWN0aW9ucygxLGEpfXZhciBtQj1mdW5jdGlvbigpe3RoaXMuY29udGFpbmVyPXt9O3RoaXMuSD17fX0sbkI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmNvbnRhaW5lcltiXTtjfHwoYz17X2VudGl0eTp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119LF9ldmVudDp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119fSxhLmNvbnRhaW5lcltiXT1jKTtyZXR1cm4gY307Cm1CLnByb3RvdHlwZS5hZGRSZXN0cmljdGlvbj1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDtpZighZHx8IXRoaXMuSFtiXSl7dmFyIGU9bkIodGhpcyxiKTthPT09MD9kP2UuX2VudGl0eS5leHRlcm5hbC5wdXNoKGMpOmUuX2VudGl0eS5pbnRlcm5hbC5wdXNoKGMpOmE9PT0xJiYoZD9lLl9ldmVudC5leHRlcm5hbC5wdXNoKGMpOmUuX2V2ZW50LmludGVybmFsLnB1c2goYykpfX07Cm1CLnByb3RvdHlwZS5nZXRSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uQih0aGlzLGIpO2lmKGE9PT0wKXt2YXIgZCxlO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmludGVybmFsKXx8W10pLHcoKGM9PW51bGw/dm9pZCAwOihlPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXSkpfWlmKGE9PT0xKXt2YXIgZixnO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZj1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmYuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGc9Yy5fZXZlbnQpPT1udWxsP3ZvaWQgMDpnLmV4dGVybmFsKXx8W10pKX1yZXR1cm5bXX07Cm1CLnByb3RvdHlwZS5nZXRFeHRlcm5hbFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYiksZCxlO3JldHVybiBhPT09MD8oYz09bnVsbD92b2lkIDA6KGQ9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZC5leHRlcm5hbCl8fFtdOihjPT1udWxsP3ZvaWQgMDooZT1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXX07bUIucHJvdG90eXBlLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEpe3ZhciBiPW5CKHRoaXMsYSk7Yi5fZXZlbnQmJihiLl9ldmVudC5leHRlcm5hbD1bXSk7Yi5fZW50aXR5JiYoYi5fZW50aXR5LmV4dGVybmFsPVtdKTt0aGlzLkhbYV09ITB9O2Z1bmN0aW9uIGlCKCl7cmV0dXJuIGtqKCJyIixmdW5jdGlvbigpe3JldHVybiBuZXcgbUJ9KX07ZnVuY3Rpb24gb0IoYSxiLGMsZCl7dmFyIGU9Y0EudGFnc1thXSxmPXBCKGEsYixjLGQpO2lmKCFmKXJldHVybiBudWxsO3ZhciBnPVp6KGUsYyk7aWYoZyYmZy5sZW5ndGgpe3ZhciBoPWdbMF07Zj1vQihoLmluZGV4LHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6aC5ibz09PTE/Yi50ZXJtaW5hdGU6Zix0ZXJtaW5hdGU6Yi50ZXJtaW5hdGV9LGMsZCl9cmV0dXJuIGZ9CmZ1bmN0aW9uIHBCKGEsYixjLGQpe2Z1bmN0aW9uIGUoKXtmdW5jdGlvbiB5KCl7aW0oMyk7dmFyIFM9TmIoKS1OO0pBKDEsYSxmLmdldE5hbWUoKSk7Z0IoYy5pZCxnLCI3Iik7T0EoYy5sZCxELCJleGNlcHRpb24iLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnVqKTtJfHwoST0hMCxsKCkpfWlmKGYuSWFbR2YuT3FdKWwoKTtlbHNle3ZhciB6PWFBKGYsYyk7aWYoeiE9bnVsbClmb3IodmFyIEM9MDtDPHoubGVuZ3RoO0MrKylpZighWG8oeltDXSkpe2woKTtyZXR1cm59dmFyIEQ9TkEoYy5sZCxmLk8sZi50YWdJZCxmLmdldE1ldGFkYXRhKGMpKSxJPSExLEc9e3Z0cF9ndG1PblN1Y2Nlc3M6ZnVuY3Rpb24oKXtpZighSSl7ST0hMDt2YXIgUz1OYigpLU47Z0IoYy5pZCxnLCI1Iik7T0EoYy5sZCxELCJzdWNjZXNzIixTKTtmbi5IJiZGeihjLGcsSXkuWC53aik7aCgpfX0sdnRwX2d0bU9uRmFpbHVyZTpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjYiKTsKT0EoYy5sZCxELCJmYWlsdXJlIixTKTtmbi5IJiZGeihjLGcsSXkuWC52aik7bCgpfX19O0cudnRwX2d0bUV2ZW50SWQ9Yy5pZDtjLnByaW9yaXR5SWQmJihHLnZ0cF9ndG1Qcmlvcml0eUlkPWMucHJpb3JpdHlJZCk7Z0IoYy5pZCxnLCIxIik7Zm4uSCYmRXooYyxnKTt2YXIgTj1OYigpO3RyeXtmLmV2YWx1YXRlKGMsZCxHKX1jYXRjaChTKXt5KFMpfWZuLkgmJkZ6KGMsZyxJeS5YLkNuKX19dmFyIGY9Y0EudGFnc1thXSxnPWYuRmcoKSxoPWIub25TdWNjZXNzLGw9Yi5vbkZhaWx1cmUsbj1iLnRlcm1pbmF0ZTtpZihjLmlzQmxvY2tlZChnKSlyZXR1cm4gbnVsbDt2YXIgcD0keihmLGMpO2lmKHAmJnAubGVuZ3RoKXt2YXIgcT1wWzBdLHI9b0IocS5pbmRleCx7b25TdWNjZXNzOmgsb25GYWlsdXJlOmwsdGVybWluYXRlOm59LGMsZCk7aWYoIXIpcmV0dXJuIG51bGw7aD1yO2w9cS5ibz09PTI/bjpyfWlmKGYuSWFbR2Yua25dfHxmLklhW0dmLlFxXSl7dmFyIHQ9Zi5JYVtHZi5rbl0/CmNBLnZrOmMudmssdT1oLHY9bDtpZighdFthXSl7dmFyIHg9cUIoYSx0LFBiKGUpKTtoPXgub25TdWNjZXNzO2w9eC5vbkZhaWx1cmV9cmV0dXJuIGZ1bmN0aW9uKCl7dFthXSh1LHYpfX1yZXR1cm4gZX1mdW5jdGlvbiBxQihhLGIsYyl7dmFyIGQ9W10sZT1bXTtiW2FdPXJCKGQsZSxjKTtyZXR1cm57b25TdWNjZXNzOmZ1bmN0aW9uKCl7YlthXT1zQjtmb3IodmFyIGY9MDtmPGQubGVuZ3RoO2YrKylkW2ZdKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2JbYV09dEI7Zm9yKHZhciBmPTA7ZjxlLmxlbmd0aDtmKyspZVtmXSgpfX19ZnVuY3Rpb24gckIoYSxiLGMpe3JldHVybiBmdW5jdGlvbihkLGUpe2EucHVzaChkKTtiLnB1c2goZSk7YygpfX1mdW5jdGlvbiBzQihhKXthKCl9ZnVuY3Rpb24gdEIoYSxiKXtiKCl9O3ZhciB3Qj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxjQS50YWdzLmxlbmd0aDtkKyspaWYoYVtkXSl7dmFyIGU9Y0EudGFnc1tkXTt2YXIgZj1RQShiLmxkKTt0cnl7dmFyIGc9b0IoZCx7b25TdWNjZXNzOmYsb25GYWlsdXJlOmYsdGVybWluYXRlOmZ9LGIsZCk7aWYoZyl7dmFyIGg9UXpbZS5PXTtjLnB1c2goe05vOmQscHJpb3JpdHlPdmVycmlkZTooaD9oLnByaW9yaXR5T3ZlcnJpZGV8fDA6MCl8fEtBKGUuTywxKXx8MCxleGVjdXRlOmd9KX1lbHNlIHVCKGQsYiksZigpfWNhdGNoKG4pe2YoKX19Yy5zb3J0KHZCKTtmb3IodmFyIGw9MDtsPGMubGVuZ3RoO2wrKyljW2xdLmV4ZWN1dGUoKTtyZXR1cm4gYy5sZW5ndGg+MH07CmZ1bmN0aW9uIHhCKGEsYil7aWYoIUhBKXJldHVybiExO3ZhciBjPWFbImd0bS50cmlnZ2VycyJdJiZTdHJpbmcoYVsiZ3RtLnRyaWdnZXJzIl0pLGQ9SUEoYS5ldmVudCxjP1N0cmluZyhjKS5zcGxpdCgiLCIpOltdKTtpZighZC5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPVFBKGIpO3RyeXtkW2VdKGEsZil9Y2F0Y2goZyl7ZigpfX1yZXR1cm4hMH1mdW5jdGlvbiB2QihhLGIpe3ZhciBjLGQ9Yi5wcmlvcml0eU92ZXJyaWRlLGU9YS5wcmlvcml0eU92ZXJyaWRlO2M9ZD5lPzE6ZDxlPy0xOjA7dmFyIGY7aWYoYyE9PTApZj1jO2Vsc2V7dmFyIGc9YS5ObyxoPWIuTm87Zj1nPmg/MTpnPGg/LTE6MH1yZXR1cm4gZn0KZnVuY3Rpb24gdUIoYSxiKXtpZihmbi5OKXt2YXIgYz1mdW5jdGlvbihkKXt2YXIgZT1iLmlzQmxvY2tlZChjQS50YWdzW2RdLkZnKCkpPyIzIjoiNCIsZj1aeihjQS50YWdzW2RdLGIpO2YmJmYubGVuZ3RoJiZjKGZbMF0uaW5kZXgpO2dCKGIuaWQsY0EudGFnc1tkXS5GZygpLGUpO3ZhciBnPSR6KGNBLnRhZ3NbZF0sYik7ZyYmZy5sZW5ndGgmJmMoZ1swXS5pbmRleCl9O2MoYSl9fXZhciBIQTtmdW5jdGlvbiB5Qigpe0hBfHwoSEE9bmV3IEdBKTtyZXR1cm4gSEF9CmZ1bmN0aW9uIHpCKGEpe3ZhciBiPWFbImd0bS51bmlxdWVFdmVudElkIl0sYz1hWyJndG0ucHJpb3JpdHlJZCJdLGQ9YVsiZ3RtLnByaW9yaXR5UXVldWUiXSxlPWEuZXZlbnQ7Zm4uSCYmdnooYixlKTtpZihlPT09Imd0bS5qcyIpe2lmKCRrKDEzKSlyZXR1cm4hMTtaaygxMywhMCl9dmFyIGY9ITEsZz1sQigpLGg9RWQoYSxudWxsKTtpZighZy5ldmVyeShmdW5jdGlvbih1KXtyZXR1cm4gdSh7b3JpZ2luYWxFdmVudERhdGE6aH0pfSkpe2lmKGUhPT0iZ3RtLmpzIiYmZSE9PSJndG0uaW5pdCImJmUhPT0iZ3RtLmluaXRfY29uc2VudCIpcmV0dXJuITE7Zj0hMH1kQihiLGUpO3ZhciBsPWEuZXZlbnRDYWxsYmFjayxuPWEuZXZlbnRUaW1lb3V0LHA9e2lkOmIscHJpb3JpdHlJZDpjLHByaW9yaXR5UXVldWU6ZCxuYW1lOmUsaXNCbG9ja2VkOkFCKGgsZiksdms6W10sbG9nTWFjcm9FcnJvcjpmdW5jdGlvbih1LHYseCl7UCg2KTtpbSg0KTtKQSgyLHYseCl9LGNhY2hlZE1vZGVsVmFsdWVzOkJCKCksCmxkOm5ldyBNQShmdW5jdGlvbigpe2ZuLkgmJnl6KGIsZSk7RnkoNSxlKTtsJiZsLmFwcGx5KGwsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApKX0sbiksb3JpZ2luYWxFdmVudERhdGE6aH07Zm4uSCYmQ3oocC5pZCk7dmFyIHE9RUEocCk7Zm4uSCYmRHoocC5pZCk7RnkoMixlKTtjQS5nZXRSdWxlcygpO2YmJihxPUNCKHEpKTtmbi5IJiZ3eihiKTt2YXIgcj13QihxLHApO3ImJkZ5KDQsZSk7dmFyIHQ9eEIoYSxwLmxkKTtSQShwLmxkKTtlIT09Imd0bS5qcyImJmUhPT0iZ3RtLnN5bmMifHxYQSgpO3JldHVybiBEQihxLHIpfHx0fQpmdW5jdGlvbiBCQigpe3ZhciBhPXt9O2EuZXZlbnQ9dkEoImV2ZW50IiwxKTthLmVjb21tZXJjZT12QSgiZWNvbW1lcmNlIiwxKTthLmd0bT12QSgiZ3RtIik7YS5ldmVudE1vZGVsPXZBKCJldmVudE1vZGVsIik7cmV0dXJuIGF9CmZ1bmN0aW9uIEFCKGEsYil7dmFyIGM9QUEoKTtyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGU9YyhkKTtpZihlKXJldHVybiEwO3ZhciBmPWQmJmRbR2YuWWJdO2lmKCFmfHx0eXBlb2YgZiE9PSJzdHJpbmciKXJldHVybiEwO2Y9Zi5yZXBsYWNlKC9eXyovLCIiKTt2YXIgZz1qQigpLGg9YTtiJiYoaD1FZChhLG51bGwpLGhbImd0bS51bmlxdWVFdmVudElkIl09TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO2Zvcih2YXIgbD0hMSxuPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KVtmXXx8W10scD1tKGcpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlO3RyeXtyKHtlbnRpdHlJZDpmLHNlY3VyaXR5R3JvdXBzOm4sb3JpZ2luYWxFdmVudERhdGE6aH0pfHwobD0hMCl9Y2F0Y2godCl7bD0hMH19cmV0dXJuIGx8fGV9fQpmdW5jdGlvbiBDQihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10pe3ZhciBkPWNBLnRhZ3NbY10uTztpZihCaltkXXx8Y0EudGFnc1tjXS5JYVtHZi5ScV0hPT12b2lkIDB8fEtBKGQsMikpYltjXT0hMH1yZXR1cm4gYn1mdW5jdGlvbiBEQihhLGIpe2lmKCFiKXJldHVybiBiO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmNBLnRhZ3NbY10mJiFDaltjQS50YWdzW2NdLk9dKXJldHVybiEwO3JldHVybiExfTt2YXIgRUI9TmYoNjEsMUUzKSxGQj1OZig2OCwyRTMpLFpvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl07ZnVuY3Rpb24gR0IoYSxiKXtpZihhKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSksZDthIT09Mnx8KChkPUhCKCkpPT1udWxsP3ZvaWQgMDpkLnN0YXR1cykhPT0zfHxiIT09dm9pZCAwJiZiPD1GQnx8KGE9MyxjLmRsPWI/TWF0aC5mbG9vcihiLzFFMyk6dm9pZCAwKTtjLnM9YTtJQihjKX19ZnVuY3Rpb24gSUIoYSl7aWYoYS5zKXt2YXIgYj1mdW5jdGlvbigpe3ZhciBjPXtzdGF0dXM6YS5zLGV4cGlyZXM6RGF0ZS5ub3coKSs4NjRFNX07YS5kbCE9PXZvaWQgMCYmKGMuZGVsYXk9YS5kbCk7a3IoImd0Z19sb2FkX3N0YXR1cyIsYyl9O2JwKGZ1bmN0aW9uKCl7aWYoWW8oKSliKCk7ZWxzZSBmb3IodmFyIGM9UGIoYiksZD1tKFpvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlJbChjLGUudmFsdWUpfSxabyl9fQpmdW5jdGlvbiBKQigpe3ZhciBhPUtCKCEwKTtyZXR1cm4gYT8oTEIoYS5zdGF0dXMsYS5kZWxheSksITEpOiEwfWZ1bmN0aW9uIEtCKGEpe2E9YT09PXZvaWQgMD8hMTphO2lmKGFrKCkpe3ZhciBiPW5yKCJndGdfbG9hZF9zdGF0dXMiKSxjPWIudmFsdWUsZD1hJiZBYihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpJiYoYz09bnVsbD92b2lkIDA6Yy5leHBpcmVzKTxEYXRlLm5vdygpKzM2RTU7aWYoYi5lcnJvcj09PTAmJkFiKGM9PW51bGw/dm9pZCAwOmMuc3RhdHVzKSYmIWQpe3ZhciBlPXtzdGF0dXM6Yy5zdGF0dXN9OyhjPT1udWxsP3ZvaWQgMDpjLmRlbGF5KSE9PXZvaWQgMCYmKGUuZGVsYXk9Yy5kZWxheSk7cmV0dXJuIGV9cmV0dXJuIEhCKCl9fWZ1bmN0aW9uIExCKGEsYil7dmFyIGM9a2ooImd0aCIsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2Mucz1hO2IhPT12b2lkIDAmJihjLmRsPWIpfQpmdW5jdGlvbiBIQigpe3ZhciBhPW1qKCJndGgiKTtpZihhIT1udWxsJiZhLnMpe3ZhciBiPXtzdGF0dXM6YS5zfTthLmRsIT09dm9pZCAwJiYoYi5kZWxheT1hLmRsKTtyZXR1cm4gYn19ZnVuY3Rpb24gTUIoKXt2YXIgYTsoKGE9SEIoKSk9PW51bGw/dm9pZCAwOmEuc3RhdHVzKT09PTEmJkdCKDMpfWZ1bmN0aW9uIE5CKCl7aWYoSkIoKSl7dmFyIGE9RGF0ZS5ub3coKTtuaigiZ3RoIix7bDpmdW5jdGlvbigpe0dCKDIsRGF0ZS5ub3coKS1hKX0sczoxfSk7dmFyIGI9RSg1KSxjPVNiKGIsIkdUTS0iKT8iL2d0bS5qcyI6Ii9ndGFnL2pzIixkPSJodHRwczovLyIrRSgzKStjKyI/aWQ9IitiKyImZ3RnX2hlYWx0aD0xIjtVYyhkLE1CLE1CKTtBLnNldFRpbWVvdXQoTUIsRUIpfX07ZnVuY3Rpb24gT0IoKXt5QigpLmFkZExpc3RlbmVyKCJndG0uaW5pdCIsZnVuY3Rpb24oYSxiKXtaaygyNiwhMCk7TSg1NTYpJiZhaygpJiYhSWYoNDUpJiYoZm8uSFtjby5pYS5aYl09Ym8uTWEuTGgpO2lmKGFrKCkpe3ZhciBjO2M9bG8oY28uaWEuWmIpO2dvKGMpP2lvKGMsTkIpOk5CKCl9dG8oITEsITApO2IoKX0pfTtmdW5jdGlvbiBQQigpe2lmKG1qKCJwc2NkbCIpIT09dm9pZCAwKW5tKGptLmJhLm9pKT09PXZvaWQgMCYmbW0oam0uYmEub2ksbWooInBzY2RsIikpO2Vsc2V7dmFyIGE9ZnVuY3Rpb24oYyl7bmooInBzY2RsIixjKTttbShqbS5iYS5vaSxjKX0sYj1mdW5jdGlvbigpe2EoImVycm9yIil9O3RyeXtIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsPyhhKCJwZW5kaW5nIiksSGMuY29va2llRGVwcmVjYXRpb25MYWJlbC5nZXRWYWx1ZSgpLnRoZW4oYSkuY2F0Y2goYikpOmEoIm5vYXBpIil9Y2F0Y2goYyl7YihjKX19fTt2YXIgUkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMucmVhZHk9ITE7dGhpcy5LPTA7dGhpcy5IPVtdO3ZhciBiPUE7aWYoQi5yZWFkeVN0YXRlPT09ImludGVyYWN0aXZlIiYmIUIuY3JlYXRlRXZlbnRPYmplY3R8fEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vblJlYWR5KCk7ZWxzZXskYyhCLCJET01Db250ZW50TG9hZGVkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTskYyhCLCJyZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTtpZihCLmNyZWF0ZUV2ZW50T2JqZWN0JiZCLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbCl7dmFyIGM9ITA7dHJ5e2M9IWIuZnJhbWVFbGVtZW50fWNhdGNoKGQpe31jJiZRQih0aGlzKX0kYyhiLCJsb2FkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KX19O1JCLnByb3RvdHlwZS5pc1JlYWR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVhZHl9OwpSQi5wcm90b3R5cGUub25SZWFkeT1mdW5jdGlvbihhKXtpZighdGhpcy5yZWFkeSl7dmFyIGI9Qi5jcmVhdGVFdmVudE9iamVjdCxjPUIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIsZD1CLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiO2lmKCFhfHxhLnR5cGUhPT0icmVhZHlzdGF0ZWNoYW5nZSJ8fGN8fCFiJiZkKXt0aGlzLnJlYWR5PSEwO2Zvcih2YXIgZT0wO2U8dGhpcy5ILmxlbmd0aDtlKyspYmQodGhpcy5IW2VdKX10aGlzLkgucHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz0wO2c8Zi5sZW5ndGg7ZysrKWJkKGZbZ10pO3JldHVybiAwfX19Owp2YXIgUUI9ZnVuY3Rpb24oYSl7aWYoIWEucmVhZHkmJmEuSzwxNDApe2EuSysrO3RyeXt2YXIgYixjOyhjPShiPUIuZG9jdW1lbnRFbGVtZW50KS5kb1Njcm9sbCk9PW51bGx8fGMuY2FsbChiLCJsZWZ0Iik7YS5vblJlYWR5KCl9Y2F0Y2goZCl7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgUUIoYSl9LDUwKX19fSxTQjtmdW5jdGlvbiBUQigpe1NCfHwoU0I9bmV3IFJCKX1mdW5jdGlvbiBVQigpe1RCKCk7dmFyIGE7cmV0dXJuKGE9U0IpPT1udWxsP3ZvaWQgMDphLmlzUmVhZHkoKX1mdW5jdGlvbiBWQihhKXtUQigpO3ZhciBiOyhiPVNCKSE9bnVsbCYmKGIucmVhZHk/YmQoYSk6Yi5ILnB1c2goYSkpfTt2YXIgWEI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVdCLGU7aWYoKGU9ZC5IKT09bnVsbHx8IWUuT3Ipe3ZhciBmPU9iamVjdC5rZXlzKGIpLmxlbmd0aD4wPzI6MSxnLGgsbD0oYz09bnVsbD92b2lkIDA6KGg9Yy5vcmlnaW5hdGluZ0VudGl0eSk9PW51bGw/dm9pZCAwOmgub3JpZ2luQ29udGFpbmVySWQpfHwiIjtnPWw/U2IobCwiR1RNLSIpPzM6MjoxO2lmKCFhKWQuSD17dHlwZTpmLHNvdXJjZTpnLHBhcmFtczpifTtlbHNlIGlmKGQuSCl7UCgxODQpO3ZhciBuPSExO2QuSC5zb3VyY2U9PT1nfHxkLkguc291cmNlIT09MyYmZyE9PTN8fChVbSgiaWRjcyIsIjEiKSxuPSEwKTtkLkgudHlwZSE9PTImJmYhPT0yfHxQKDE4Nik7dmFyIHA7aWYocD1kLkgudHlwZT09PTImJmY9PT0yKWE6e3ZhciBxPWQuSC5wYXJhbXMscj1PYmplY3Qua2V5cyhxKSx0PU9iamVjdC5rZXlzKGIpO2lmKHIubGVuZ3RoIT09dC5sZW5ndGgpcD0hMDtlbHNle2Zvcih2YXIgdT1tKHIpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtpZighYi5oYXNPd25Qcm9wZXJ0eSh4KXx8cVt4XSE9PWJbeF0pe3A9ITA7YnJlYWsgYX19cD0hMX19cCYmKFVtKCJpZGNjIiwiMSIpLG49ITApO24mJih0bygpLGQuSC5Pcj0hMCl9fX0sV0I9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXZvaWQgMH07dmFyIFpCPWZ1bmN0aW9uKGEpe3ZhciBiPVlCOyghZm4uS3x8U2IoRSg1KSwiR1RNLSIpPzA6YT09PXZvaWQgMCkmJmIuSD09PTAmJihVbSgibWNjIiwiMSIpLGIuSD0xKX0sWUI9bmV3IGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9MDtVbSgibmNjIixmdW5jdGlvbigpe2lmKElmKDQ1KSYmYS5IIT09MilyZXR1cm4iMSJ9KX07dmFyICRCPS9eKD86QVd8REN8R3xHRnxHVHxIQXxNQ3xVQSkkLyxhQz0vXHMvOwpmdW5jdGlvbiBiQyhhLGIpe2lmKHpiKGEpKXthPUxiKGEpO3ZhciBjPWEuaW5kZXhPZigiLSIpO2lmKCEoYzwwKSl7dmFyIGQ9YS5zdWJzdHJpbmcoMCxjKTtpZigkQi50ZXN0KGQpKXt2YXIgZT1hLnN1YnN0cmluZyhjKzEpLGY7aWYoYil7dmFyIGc9ZnVuY3Rpb24obil7dmFyIHA9bi5pbmRleE9mKCIvIik7cmV0dXJuIHA8MD9bbl06W24uc3Vic3RyaW5nKDAscCksbi5zdWJzdHJpbmcocCsxKV19O2Y9ZyhlKTtpZihkPT09IkRDIiYmZi5sZW5ndGg9PT0yKXt2YXIgaD1nKGZbMV0pO2gubGVuZ3RoPT09MiYmKGZbMV09aFswXSxmLnB1c2goaFsxXSkpfX1lbHNle2Y9ZS5zcGxpdCgiLyIpO2Zvcih2YXIgbD0wO2w8Zi5sZW5ndGg7bCsrKWlmKCFmW2xdfHxhQy50ZXN0KGZbbF0pJiYoZCE9PSJBVyJ8fGwhPT0xKSlyZXR1cm59cmV0dXJue2lkOmEscHJlZml4OmQsZGVzdGluYXRpb25JZDpkKyItIitmWzBdLGlkczpmLEpjOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWQhPT10aGlzLmRlc3RpbmF0aW9uSWR9fX19fX0KZnVuY3Rpb24gY0MoYSxiKXtmb3IodmFyIGM9e30sZD0wO2Q8YS5sZW5ndGg7KytkKXt2YXIgZT1iQyhhW2RdLGIpO2UmJihjW2UuaWRdPWUpfXZhciBmPVtdLGc7Zm9yKGcgaW4gYylpZihjLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1jW2ddO2gucHJlZml4PT09IkFXIiYmaC5pZHNbZENbMV1dJiZmLnB1c2goaC5kZXN0aW5hdGlvbklkKX1mb3IodmFyIGw9MDtsPGYubGVuZ3RoOysrbClkZWxldGUgY1tmW2xdXTtmb3IodmFyIG49W10scD1tKE9iamVjdC5rZXlzKGMpKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSluLnB1c2goY1txLnZhbHVlXSk7cmV0dXJuIG59dmFyIGVDPXt9LGRDPShlQ1swXT0wLGVDWzFdPTEsZUNbMl09MixlQ1szXT0wLGVDWzRdPTEsZUNbNV09MCxlQ1s2XT0wLGVDWzddPTAsZUMpO3ZhciBmQz17aW5pdGlhbGl6ZWQ6MTEsY29tcGxldGU6MTIsaW50ZXJhY3RpdmU6MTN9LGdDPXt9LGhDPU9iamVjdC5mcmVlemUoKGdDW0YuRC5UZF09ITAsZ0MpKSxpQz1mdW5jdGlvbigpe3RoaXMuUj1OZigzNCw1MDApO3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5LPXZvaWQgMH0sakM9ZnVuY3Rpb24oYSxiLGMpe2lmKGMubGVuZ3RoJiZmbi5LKXt2YXIgZDsoZD1hLkgpW2JdIT1udWxsfHwoZFtiXT1bXSk7dmFyIGU7KGU9YS5OKVtiXSE9bnVsbHx8KGVbYl09W10pO3ZhciBmPWMuZmlsdGVyKGZ1bmN0aW9uKGcpe3JldHVybiFhLk5bYl0uaW5jbHVkZXMoZyl9KTthLkhbYl0ucHVzaC5hcHBseShhLkhbYl0sdyhmKSk7YS5OW2JdLnB1c2guYXBwbHkoYS5OW2JdLHcoZikpOyFhLksmJmYubGVuZ3RoPjAmJihWbSgidGRjIiwhMCksYS5LPUEuc2V0VGltZW91dChmdW5jdGlvbigpe3RvKCk7YS5IPXt9O2EuSz12b2lkIDB9LGEuUikpfX07CmlDLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztVbSgidGRjIixmdW5jdGlvbigpe2EuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCk7dmFyIGI9W10sYztmb3IoYyBpbiBhLkgpYS5ILmhhc093blByb3BlcnR5KGMpJiZiLnB1c2goYysiKiIrYS5IW2NdLmpvaW4oIi4iKSk7cmV0dXJuIGIubGVuZ3RoP2Iuam9pbigiISIpOnZvaWQgMH0sITEpfTsKdmFyIGtDPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZDtmb3IoZCBpbiBiKWIuaGFzT3duUHJvcGVydHkoZCkmJihjW2RdPSEwKTtmb3IodmFyIGUgaW4gYSlhLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT0hMCk7cmV0dXJuIGN9LGxDPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwP3t9OmQ7ZT1lPT09dm9pZCAwPyIiOmU7aWYoYj09PWMpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24odCx1KXt2YXIgdjtBZCh1KT09PSJvYmplY3QiP3Y9dVt0XTpBZCh1KT09PSJhcnJheSImJih2PXVbdF0pO3JldHVybiB2PT09dm9pZCAwP2hDW3RdOnZ9LGc9a0MoYixjKSxoO2ZvcihoIGluIGcpaWYoZy5oYXNPd25Qcm9wZXJ0eShoKSYmaCE9PUYuRC5YYil7dmFyIGw9KGU/ZSsiLiI6IiIpK2gsbj1mKGgsYikscD1mKGgsYykscT1BZChuKT09PSJvYmplY3QifHxBZChuKT09PSJhcnJheSIscj1BZChwKT09PSJvYmplY3QifHxBZChwKT09PSJhcnJheSI7aWYocSYmcilsQyhhLG4scCxkLGwpOwplbHNlIGlmKHF8fHJ8fG4hPT1wKWRbbF09ITB9cmV0dXJuIE9iamVjdC5rZXlzKGQpfSxtQz1uZXcgaUM7dmFyIG5DPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSz1OYigpO3RoaXMuSD1iO3RoaXMuYXJncz1jO3RoaXMubWVzc2FnZUNvbnRleHQ9ZDt0aGlzLnR5cGU9YX0sb0M9ZnVuY3Rpb24oKXt0aGlzLldhPXt9O3RoaXMuaWI9e307dGhpcy5LPXt9O3RoaXMuTj1udWxsO3RoaXMuaGI9e307dGhpcy5IPSExO3RoaXMuc3RhdHVzPTF9O2Z1bmN0aW9uIHBDKGEsYil7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg9PT0xP3FDKCJzZXQiLGEpOnFDKCJzZXQiLGEsYil9ZnVuY3Rpb24gckMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoImNvbmZpZyIsYSk6cUMoImNvbmZpZyIsYSxiKX1mdW5jdGlvbiBzQyhhLGIsYyl7Yz1jfHx7fTtjW0YuRC5YYl09YTtyZXR1cm4gcUMoImV2ZW50IixiLGMpfWZ1bmN0aW9uIHFDKCl7cmV0dXJuIGFyZ3VtZW50c307dmFyIHRDPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxsLG4scCxxLHIpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9ZDt0aGlzLldhPWU7dGhpcy5oYj1mO3RoaXMuSGM9Zzt0aGlzLkJnPWg7dGhpcy5pYj1sO3RoaXMuZXZlbnRNZXRhZGF0YT1uO3RoaXMub25TdWNjZXNzPXA7dGhpcy5vbkZhaWx1cmU9cTt0aGlzLmlzR3RtRXZlbnQ9cn0sdUM9ZnVuY3Rpb24oYSl7dmFyIGI9e29uU3VjY2Vzczp4YixvbkZhaWx1cmU6eGJ9O2I9Yj09PXZvaWQgMD97fTpiO3ZhciBjLGQsZSxmLGcsaCxsLG4scCxxLHIsdCx1LHYseCx5LHosQyxELEksRyxOLFMsVyxlYSxqYTtyZXR1cm4gbmV3IHRDKCh2PShjPWIpPT1udWxsP3ZvaWQgMDpjLmV2ZW50SWQpIT1udWxsP3Y6YS5ldmVudElkLCh4PShkPWIpPT1udWxsP3ZvaWQgMDpkLnByaW9yaXR5SWQpIT1udWxsP3g6YS5wcmlvcml0eUlkLCh5PShlPWIpPT1udWxsP3ZvaWQgMDplLnByaW9yaXR5UXVldWUpIT0KbnVsbD95OmEucHJpb3JpdHlRdWV1ZSwoej0oZj1iKT09bnVsbD92b2lkIDA6Zi5FYSkhPW51bGw/ejphLkVhLChDPShnPWIpPT1udWxsP3ZvaWQgMDpnLldhKSE9bnVsbD9DOmEuV2EsKEQ9KGg9Yik9PW51bGw/dm9pZCAwOmguaGIpIT1udWxsP0Q6YS5oYiwoST0obD1iKT09bnVsbD92b2lkIDA6bC5IYykhPW51bGw/STphLkhjLChHPShuPWIpPT1udWxsP3ZvaWQgMDpuLkJnKSE9bnVsbD9HOmEuQmcsKE49KHA9Yik9PW51bGw/dm9pZCAwOnAuaWIpIT1udWxsP046YS5pYiwoUz0ocT1iKT09bnVsbD92b2lkIDA6cS5ldmVudE1ldGFkYXRhKSE9bnVsbD9TOmEuZXZlbnRNZXRhZGF0YSwoVz0ocj1iKT09bnVsbD92b2lkIDA6ci5vblN1Y2Nlc3MpIT1udWxsP1c6YS5vblN1Y2Nlc3MsKGVhPSh0PWIpPT1udWxsP3ZvaWQgMDp0Lm9uRmFpbHVyZSkhPW51bGw/ZWE6YS5vbkZhaWx1cmUsKGphPSh1PWIpPT1udWxsP3ZvaWQgMDp1LmlzR3RtRXZlbnQpIT1udWxsP2phOmEuaXNHdG1FdmVudCl9LAp2Qz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO3N3aXRjaChiKXtjYXNlIDM6Yy5wdXNoKGEuRWEpO2MucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDI6Yy5wdXNoKGEuRWEpO2JyZWFrO2Nhc2UgMTpjLnB1c2goYS5XYSk7Yy5wdXNoKGEuaGIpO2MucHVzaChhLkhjKTtjLnB1c2goYS5pYik7YnJlYWs7Y2FzZSA0OmMucHVzaChhLkVhKSxjLnB1c2goYS5XYSksYy5wdXNoKGEuaGIpLGMucHVzaChhLkhjKX1yZXR1cm4gY30sTz1mdW5jdGlvbihhLGIsYyxkKXtmb3IodmFyIGU9bSh2QyhhLGQ9PT12b2lkIDA/MzpkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZ1tiXSE9PXZvaWQgMClyZXR1cm4gZ1tiXX1yZXR1cm4gY30sd0M9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9dkMoYSw0KSxkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpZm9yKHZhciBmPU9iamVjdC5rZXlzKGUudmFsdWUpLApnPW0oZiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpYltoLnZhbHVlXT0xO3JldHVybiBPYmplY3Qua2V5cyhiKX07dEMucHJvdG90eXBlLmdldE1lcmdlZFZhbHVlcz1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPzM6Yjt2YXIgZD17fSxlPSExLGY9ZnVuY3Rpb24obil7Q2QobikmJkdiKG4sZnVuY3Rpb24ocCxxKXtlPSEwO2RbcF09cX0pfTtjJiZmKGMpO3ZhciBnPXZDKHRoaXMsYik7Zy5yZXZlcnNlKCk7Zm9yKHZhciBoPW0oZyksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpZihsLnZhbHVlW2FdKTtyZXR1cm4gZT9kOnZvaWQgMH07CnZhciB4Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9W0YuRC5LZixGLkQuR2YsRi5ELkhmLEYuRC5JZixGLkQuSmYsRi5ELkxmLEYuRC5NZl0sYz12QyhhLDMpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7Zm9yKHZhciBmPWUudmFsdWUsZz17fSxoPSExLGw9bShiKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtmW3BdIT09dm9pZCAwJiYoZ1twXT1mW3BdLGg9ITApfXZhciBxPWg/Zzp2b2lkIDA7aWYocSlyZXR1cm4gcX1yZXR1cm57fX0seUM9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9e307dGhpcy5XYT17fTt0aGlzLmhiPXt9O3RoaXMuSGM9e307dGhpcy5CZz17fTt0aGlzLmliPXt9O3RoaXMuZXZlbnRNZXRhZGF0YT17fTt0aGlzLmlzR3RtRXZlbnQ9ITE7dGhpcy5vblN1Y2Nlc3M9ZnVuY3Rpb24oKXt9O3RoaXMub25GYWlsdXJlPQpmdW5jdGlvbigpe319LHpDPWZ1bmN0aW9uKGEsYil7YS5FYT1iO3JldHVybiBhfSxBQz1mdW5jdGlvbihhLGIpe2EuV2E9YjtyZXR1cm4gYX0sQkM9ZnVuY3Rpb24oYSxiKXthLmhiPWI7cmV0dXJuIGF9LENDPWZ1bmN0aW9uKGEsYil7YS5IYz1iO3JldHVybiBhfSxEQz1mdW5jdGlvbihhLGIpe2EuQmc9YjtyZXR1cm4gYX0sRUM9ZnVuY3Rpb24oYSxiKXthLmliPWI7cmV0dXJuIGF9LEZDPWZ1bmN0aW9uKGEsYil7YS5ldmVudE1ldGFkYXRhPWJ8fHt9O3JldHVybiBhfSxHQz1mdW5jdGlvbihhLGIpe2Eub25TdWNjZXNzPWI7cmV0dXJuIGF9LEhDPWZ1bmN0aW9uKGEsYil7YS5vbkZhaWx1cmU9YjtyZXR1cm4gYX0sSUM9ZnVuY3Rpb24oYSxiKXthLmlzR3RtRXZlbnQ9YjtyZXR1cm4gYX0sSkM9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyB0QyhhLmV2ZW50SWQsYS5wcmlvcml0eUlkLGEucHJpb3JpdHlRdWV1ZSxhLkVhLGEuV2EsYS5oYixhLkhjLGEuQmcsYS5pYixhLmV2ZW50TWV0YWRhdGEsCmEub25TdWNjZXNzLGEub25GYWlsdXJlLGEuaXNHdG1FdmVudCl9O2Z1bmN0aW9uIEtDKGEsYil7R2IoYSxmdW5jdGlvbihjKXt2YXIgZDtpZihkPWMuY2hhckF0KDApPT09Il8iKXt2YXIgZTthOnN3aXRjaChjKXtjYXNlIEYuRC5WYjpjYXNlIEYuRC5SZjpjYXNlIEYuRC5zaDplPSEwO2JyZWFrIGE7ZGVmYXVsdDplPSExfWQ9IWV9ZCYmKGImJmIoYyksZGVsZXRlIGFbY10pfSl9O3ZhciBMQz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbImVwciIsZi5qb2luKCIuIildKTtkJiZkZWxldGUgYS5IW2NdO3JldHVybiBlfSl9LE5DPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1NQztmbi5OJiZhIT09dm9pZCAwJiYoZC5IW2FdPWQuSFthXXx8W10sZC5IW2FdLnB1c2goYytiKSxneigpLGV6KGEpKX0sTUM7ZnVuY3Rpb24gT0MoKXtNQ3x8KE1DPW5ldyBMQyl9O3ZhciBQQz1mdW5jdGlvbigpe3RoaXMuZGVzdGluYXRpb25zPXt9O3RoaXMuSD17fTt0aGlzLmNvbW1hbmRzPVtdfSxRQz1mdW5jdGlvbihhLGIpe3JldHVybiBhLmRlc3RpbmF0aW9uc1tiLmRlc3RpbmF0aW9uSWRdPWEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF18fG5ldyBvQ30sUkM9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoZC5IKXt2YXIgZT1RQyhhLGQuSCksZj1lLk47aWYoZil7dmFyIGc9RWQoYyxudWxsKSxoPUVkKGUuV2FbZC5ILmRlc3RpbmF0aW9uSWRdLG51bGwpLGw9RWQoZS5oYixudWxsKSxuPUVkKGUuaWIsbnVsbCkscD1FZChhLkgsbnVsbCkscT17fTtpZihmbi5OKXRyeXtxPUVkKHJBLkgsbnVsbCl9Y2F0Y2goeCl7UCg3Mil9dmFyIHI9ZC5ILnByZWZpeCx0PWZ1bmN0aW9uKHgpe3ZhciB5PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHkscix4KX0sdT1KQyhJQyhIQyhHQyhGQyhEQyhDQyhFQyhCQyhBQyh6QyhuZXcgeUMoZC5tZXNzYWdlQ29udGV4dC5ldmVudElkLApkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5SWQsZC5tZXNzYWdlQ29udGV4dC5wcmlvcml0eVF1ZXVlKSxnKSxoKSxsKSxuKSxwKSxxKSxkLm1lc3NhZ2VDb250ZXh0LmV2ZW50TWV0YWRhdGEpLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIyIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MpZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MoKX19KSxmdW5jdGlvbigpe2lmKHQpe3ZhciB4PXQ7dD12b2lkIDA7eCgiMyIpO2lmKGQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKWQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKCl9fSksISFkLm1lc3NhZ2VDb250ZXh0LmlzR3RtRXZlbnQpKSx2PWZ1bmN0aW9uKCl7dHJ5e3ZhciB4PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHgsciwiMSIpO3ZhciB5PWQuSC5pZCx6PW1DO2lmKGZuLksmJmI9PT1GLkQud2Epe3ZhciBDLEQ9KEM9YkMoeSkpPT1udWxsP3ZvaWQgMDpDLmlkcztpZighKEQmJkQubGVuZ3RoPgoxKSl7dmFyIEk9dS5FYVtGLkQuWGJdO2lmKCFJfHxJPT09eSl7dmFyIEcsTj1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSk7Ti50ZHx8KE4udGQ9e30pO0c9Ti50ZDt2YXIgUz1FZCh1LkhjLG51bGwpO0VkKHUuRWEsUyk7dmFyIFc9W10sZWE7Zm9yKGVhIGluIEcpRy5oYXNPd25Qcm9wZXJ0eShlYSkmJmxDKHosR1tlYV0sUykubGVuZ3RoJiZXLnB1c2goZWEpO1cubGVuZ3RoJiYoakMoeix5LFcpLHNiKCJUQUdHSU5HIixmQ1tCLnJlYWR5U3RhdGVdfHwxNCkpO0dbeV09U319fWYoZC5ILmlkLGIsZC5LLHUpfWNhdGNoKGZhKXt2YXIgamE9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoamEsciwiNCIpfX07Yj09PSJndGFnLmdldCI/digpOmlvKGUuUix2KX19fSxTQz1mdW5jdGlvbihhLGIpe2lmKGIudHlwZSE9PSJyZXF1aXJlIil7dmFyIGM9dm9pZCAwO2IudHlwZT09PSJldmVudCImJihjPWIuYXJnc1sxXSk7aWYoYi5IKWZvcih2YXIgZD1RQyhhLGIuSCkuS1tiLnR5cGVdfHwKW10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWRbZV0oYyk7ZWxzZSBmb3IodmFyIGYgaW4gYS5kZXN0aW5hdGlvbnMpaWYoYS5kZXN0aW5hdGlvbnMuaGFzT3duUHJvcGVydHkoZikpe3ZhciBnPWEuZGVzdGluYXRpb25zW2ZdO2lmKGcmJmcuSylmb3IodmFyIGg9Zy5LW2IudHlwZV18fFtdLGw9MDtsPGgubGVuZ3RoO2wrKyloW2xdKGMpfX19O1BDLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1RQyh0aGlzLGEpO2Uuc3RhdHVzIT09MyYmKGUuTj1iLGUuc3RhdHVzPTMsZS5SPWxvKGMpLFRDKHRoaXMsYSxkfHx7fSksdGhpcy5mbHVzaCgpKX07ClBDLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEsYixjLGQpe2MhPT12b2lkIDAmJihRQyh0aGlzLGMpLnN0YXR1cz09PTEmJihRQyh0aGlzLGMpLnN0YXR1cz0yLHRoaXMucHVzaCgicmVxdWlyZSIsW3t9XSxjLHt9KSksUUModGhpcyxjKS5IJiYoZC5kZWZlcnJhYmxlPSExKSxkLmV2ZW50TWV0YWRhdGF8fChkLmV2ZW50TWV0YWRhdGE9e30pLGQuZXZlbnRNZXRhZGF0YVtILkouc2ddfHwoZC5ldmVudE1ldGFkYXRhW0guSi5zZ109W2MuZGVzdGluYXRpb25JZF0pLGQuZXZlbnRNZXRhZGF0YVtILkoubWpdfHwoZC5ldmVudE1ldGFkYXRhW0guSi5tal09W2MuaWRdKSk7dGhpcy5jb21tYW5kcy5wdXNoKG5ldyBuQyhhLGMsYixkKSk7ZC5kZWZlcnJhYmxlfHx0aGlzLmZsdXNoKCl9OwpQQy5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMsYz1bXSxkPSExLGU9e307dGhpcy5jb21tYW5kcy5sZW5ndGg7ZT17Wm46dm9pZCAwfSl7dmFyIGY9dGhpcy5jb21tYW5kc1swXSxnPWYuSDtpZihmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGUpIWd8fFFDKHRoaXMsZykuSD8oZi5tZXNzYWdlQ29udGV4dC5kZWZlcnJhYmxlPSExLHRoaXMuY29tbWFuZHMucHVzaChmKSk6Yy5wdXNoKGYpLHRoaXMuY29tbWFuZHMuc2hpZnQoKTtlbHNle3N3aXRjaChmLnR5cGUpe2Nhc2UgInJlcXVpcmUiOmlmKFFDKHRoaXMsZykuc3RhdHVzIT09MyYmIWEpe3RoaXMuY29tbWFuZHMucHVzaC5hcHBseSh0aGlzLmNvbW1hbmRzLGMpO3JldHVybn1icmVhaztjYXNlICJzZXQiOnZhciBoPWYuYXJnc1swXTtLQyhoKTtVQyhoKTtHYihoLGZ1bmN0aW9uKHgseSl7RWQoVmIoeCx5KSxiLkgpfSk7SHUoaCwhMCk7YnJlYWs7Y2FzZSAiZXZlbnQiOmUuWm49Zi5hcmdzWzFdO3ZhciBsPQpWQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt9fShlKSksbj1sW0YuRC5YYl07biYmbiE9PWcuaWR8fEh1KGwpO1JDKHRoaXMsZS5abixsLGYpO2JyZWFrO2Nhc2UgImdldCI6dmFyIHA9e30scT0ocFtGLkQuVGZdPWYuYXJnc1swXSxwW0YuRC5TZl09Zi5hcmdzWzFdLHApO1JDKHRoaXMsRi5ELkpiLHEsZik7YnJlYWs7Y2FzZSAiY29udGFpbmVyX2NvbmZpZyI6dmFyIHI9UUModGhpcyxnKSx0PVZDKGYuYXJnc1swXSxmdW5jdGlvbigpe30pO0h1KHQsITApO3IuSD0hMDtFZCh0LHIuaGIpO2Q9ITA7YnJlYWs7Y2FzZSAiZGVzdGluYXRpb25fY29uZmlnIjp2YXIgdT1RQyh0aGlzLGcpLHY9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodiwhMCk7dS5XYVtnLmlkXXx8KHUuV2FbZy5pZF09e30pO3UuSD0hMDtFZCh2LHUuV2FbZy5pZF0pO2Q9ITA7YnJlYWs7Y2FzZSAicmVzZXRfY29udGFpbmVyX2NvbmZpZyI6UUModGhpcyxnKS5oYj17fTticmVhazsKY2FzZSAicmVzZXRfdGFyZ2V0X2NvbmZpZyI6UUModGhpcyxnKS5XYVtnLmlkXT17fX10aGlzLmNvbW1hbmRzLnNoaWZ0KCk7U0ModGhpcyxmKX19dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7ZCYmdGhpcy5mbHVzaCgpfTt2YXIgVEM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPUVkKGMsbnVsbCk7RWQoUUMoYSxiKS5pYixkKTtRQyhhLGIpLmliPWR9O2Z1bmN0aW9uIFZDKGEsYil7dmFyIGM9e307R2IoYSxmdW5jdGlvbihkLGUpe0VkKFZiKGQsZSksYyl9KTtLQyhjLGIpO1VDKGMpO3JldHVybiBjfQpmdW5jdGlvbiBVQyhhKXtpZihNKDYwMSkmJkJBKCkpe2Zvcih2YXIgYj0hMSxjPW0obmV3IFNldChbRi5ELnljLEYuRC5kZF0pKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTthW2VdIT09dm9pZCAwJiYoYj0hMCxkZWxldGUgYVtlXSl9YiYmIWFsKDM1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSYmKFprKDM1LCEwKSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdvb2dsZSBUYWcgTWFuYWdlcjogU2VydmVyLXNpZGUgR1RNIHBhcmFtZXRlcnMgKHRyYW5zcG9ydF91cmwvc2VydmVyX2NvbnRhaW5lcl91cmwpIGFyZSBub3QgcGVybWl0dGVkIG9uIHRoaXMgZG9tYWluIGFuZCBoYXZlIGJlZW4gaWdub3JlZC4iKSxQKDE5NykpfX07dmFyIFdDPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBQQzt0aGlzLks9ITF9O1dDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMuSC5mbHVzaCgpfTt2YXIgWEM7ZnVuY3Rpb24gWUMoKXtYQ3x8KFhDPW5ldyBXQyk7cmV0dXJuIFhDfWZ1bmN0aW9uIFpDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmKGUuSyYmKGQuZGVmZXJyYWJsZT0hMCksZS5ILnB1c2goImV2ZW50IixbYixhXSxmLGQpKX1mdW5jdGlvbiAkQyhhLGIsYyxkKXt2YXIgZT1ZQygpLGY9YkMoYyxkLmlzR3RtRXZlbnQpO2YmJmUuSC5wdXNoKCJnZXQiLFthLGJdLGYsZCl9ZnVuY3Rpb24gYUQoYSxiLGMpe3ZhciBkPVlDKCksZT1iQyhhLGMuaXNHdG1FdmVudCk7ZSYmZC5ILnB1c2goImNvbnRhaW5lcl9jb25maWciLFtiXSxlLGMpfQpmdW5jdGlvbiBiRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiZGVzdGluYXRpb25fY29uZmlnIixbYl0sZSxjKX1mdW5jdGlvbiBjRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7YyYmYi5ILnB1c2goInJlc2V0X2NvbnRhaW5lcl9jb25maWciLFtdLGMse30pfWZ1bmN0aW9uIGREKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfdGFyZ2V0X2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZUQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5pYjp7fX1mdW5jdGlvbiBmRChhKXtyZXR1cm4gWUMoKS5ILkhbYV19ZnVuY3Rpb24gZ0QoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5IOiExfTtmdW5jdGlvbiBoRChhLGIpe2EuaGFzT3duUHJvcGVydHkoImd0bS51bmlxdWVFdmVudElkIil8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJndG0udW5pcXVlRXZlbnRJZCIse3ZhbHVlOnJqKCl9KTtiLmV2ZW50SWQ9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtiLnByaW9yaXR5SWQ9YVsiZ3RtLnByaW9yaXR5SWQiXTtyZXR1cm57ZXZlbnRJZDpiLmV2ZW50SWQscHJpb3JpdHlJZDpiLnByaW9yaXR5SWR9fWZ1bmN0aW9uIGlEKGEpe2Zvcih2YXIgYj1tKFtGLkQuZGQsRi5ELnljXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWUsZT1hJiZhW2RdfHxmRChkKTtpZihlKXJldHVybiBlfX1mdW5jdGlvbiBqRChhKXtyZXR1cm4hYS5pc0d0bUV2ZW50fHxhLmV2ZW50TWV0YWRhdGEmJmEuZXZlbnRNZXRhZGF0YVtILkouQ2NdJiZhLmV2ZW50TWV0YWRhdGFbSC5KLk5iXSE9PXZrKCk/ITE6ITB9O3ZhciBrRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBsRD1mdW5jdGlvbigpe3RoaXMubWVzc2FnZXM9W107dGhpcy5IPVtdfTtsRC5wcm90b3R5cGUuZW5xdWV1ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5tZXNzYWdlcy5sZW5ndGgrMTthWyJndG0udW5pcXVlRXZlbnRJZCJdPWI7YVsiZ3RtLnByaW9yaXR5SWQiXT1kO3ZhciBlPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZXZlbnRJZDpiLHByaW9yaXR5SWQ6ZCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOiEwfSk7aWYoTSg1OTUpKXt2YXIgZj1jLnByaW9yaXR5UXVldWU/W10uY29uY2F0KHcoYy5wcmlvcml0eVF1ZXVlKSxbZF0pOltkXTthWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWY7ZS5wcmlvcml0eVF1ZXVlPWZ9dmFyIGc9e21lc3NhZ2U6YSxub3RCZWZvcmVFdmVudElkOmIscHJpb3JpdHlJZDpkLG1lc3NhZ2VDb250ZXh0OmV9O3RoaXMubWVzc2FnZXMucHVzaChnKTtmb3IodmFyIGg9MDtoPHRoaXMuSC5sZW5ndGg7aCsrKXRyeXt0aGlzLkhbaF0oZyl9Y2F0Y2gobCl7fX07CmxELnByb3RvdHlwZS5saXN0ZW49ZnVuY3Rpb24oYSl7dGhpcy5ILnB1c2goYSl9O2xELnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE9e30sYj0wO2I8dGhpcy5tZXNzYWdlcy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLm1lc3NhZ2VzW2JdLGQ9YVtjLm5vdEJlZm9yZUV2ZW50SWRdO2R8fChkPVtdLGFbYy5ub3RCZWZvcmVFdmVudElkXT1kKTtkLnB1c2goYyl9cmV0dXJuIGF9O2xELnByb3RvdHlwZS5wcnVuZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz1bXSxkPTA7ZDx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtkKyspe3ZhciBlPXRoaXMubWVzc2FnZXNbZF07ZS5ub3RCZWZvcmVFdmVudElkPT09YT9iLnB1c2goZSk6Yy5wdXNoKGUpfXRoaXMubWVzc2FnZXM9YztyZXR1cm4gYn07CmZ1bmN0aW9uIG1EKGEsYixjKXtjLmV2ZW50TWV0YWRhdGE9Yy5ldmVudE1ldGFkYXRhfHx7fTtjLmV2ZW50TWV0YWRhdGFbSC5KLk5iXT1NKDU1MCk/dmsoKTpFKDYpO25EKCkuZW5xdWV1ZShhLGIsYyl9ZnVuY3Rpb24gbkQoKXtyZXR1cm4ga2ooIm1iIixmdW5jdGlvbigpe3JldHVybiBuZXcgbER9KX07dmFyIHBEPWZ1bmN0aW9uKGEsYil7dmFyIGM9b0Q7Yj1TdHJpbmcoYikuc3BsaXQoIiwiKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9Yy5OW2JbZF1dfHxbXTtjLk5bYltkXV09ZTtlLmluZGV4T2YoYSk8MCYmZS5wdXNoKGEpfX0scUQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9b0QsZD1bXSxlPVtdLGY9e30sZz0wO2c8YS5sZW5ndGg7Zj17bGs6dm9pZCAwLFFqOnZvaWQgMCxSajp2b2lkIDB9LGcrKyl7dmFyIGg9YVtnXTtpZihoLmluZGV4T2YoIi0iKT49MCl7aWYoZi5saz1iQyhoLGIpLGYubGspe3ZhciBsPXRrKCk7Q2IobCxmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7cmV0dXJuIHgubGsuZGVzdGluYXRpb25JZD09PXl9fShmKSk/ZC5wdXNoKGgpOmUucHVzaChoKX19ZWxzZXtpZihNKDU1MCkpe3ZhciBuPWMuS1toXXx8W107Zi5Saj17fTtuLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUmpbeV09ITB9fShmKSk7Zm9yKHZhciBwPQp0aygpLHE9MDtxPHAubGVuZ3RoO3ErKylmLlJqW3BbcV1dJiZkLnB1c2gocFtxXSl9ZWxzZXt2YXIgcj1jLkhbaF18fFtdO2YuUWo9e307ci5mb3JFYWNoKGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXt4LlFqW3ldPSEwfX0oZikpO2Zvcih2YXIgdD13aygpLHU9MDt1PHQubGVuZ3RoO3UrKylpZihmLlFqW3RbdV1dKXtkPWQuY29uY2F0KHRrKCkpO2JyZWFrfX12YXIgdj1jLk5baF18fFtdO3YubGVuZ3RoJiYoZD1kLmNvbmNhdCh2KSl9fXJldHVybntlazpkLFBzOmV9fSxyRD1mdW5jdGlvbihhKXtHYihvRC5ILGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sc0Q9ZnVuY3Rpb24oYSl7R2Iob0QuSyxmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLDEpfSl9LHREPWZ1bmN0aW9uKGEpe0diKG9ELk4sZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwKMSl9KX0sb0Q9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9e319O2Z1bmN0aW9uIHVEKGEsYixjKXt2YXIgZD1FZChhLG51bGwpO2QuZXZlbnRJZD12b2lkIDA7ZC5pbmhlcml0UGFyZW50Q29uZmlnPXZvaWQgMDtPYmplY3Qua2V5cyhiKS5zb21lKGZ1bmN0aW9uKGYpe3JldHVybiBiW2ZdIT09dm9pZCAwfSkmJlAoMTM2KTt2YXIgZT1FZChiLG51bGwpO0VkKGMsZSk7bUQockMod2soKVswXSxlKSxhLmV2ZW50SWQsZCl9CmZ1bmN0aW9uIHZEKGEsYixjLGQpe3ZhciBlPXt9LGY9KGVbRi5ELlViXT1GLkQud2EsZVsiZ3RtLmNvbmZpZ0NvbnRhaW5lcklkIl09YS5pZCxlWyJndG0uY29uZmlnUGFyYW1ldGVycyJdPWIsZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1kLmV2ZW50SWQsZSk7Yy5wcmlvcml0eVF1ZXVlJiYoZlsiZ3RtLnByaW9yaXR5UXVldWUiXT1jLnByaW9yaXR5UXVldWUpO2MuZXZlbnRNZXRhZGF0YSYmKGZbImd0bS5ldmVudE1ldGFkYXRhIl09Yy5ldmVudE1ldGFkYXRhKTthLkpjKCkmJihmWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT13aygpWzBdLGZbImd0bS5vcmlnaW5hbENvbmZpZ1RhcmdldElkIl09YS5pZCk7cmV0dXJuIGZ9ZnVuY3Rpb24gd0QoYSxiLGMpe2lmKElmKDExKSYmIWMmJiFhW0YuRC5WZF0pe3ZhciBkPWFsKDEwLGZ1bmN0aW9uKCl7cmV0dXJuITF9KTtaaygxMCwhMCk7WEIoZCxhLGIpO2lmKGQpcmV0dXJuITB9cmV0dXJuITF9O2Z1bmN0aW9uIHhEKGEsYil7dmFyIGM9e30sZD0oYy5ldmVudD1hLGMpO2ImJihkLmV2ZW50TW9kZWw9RWQoYixudWxsKSxiW0YuRC5QZl0mJihkLmV2ZW50Q2FsbGJhY2s9YltGLkQuUGZdKSxiW0YuRC5waF0mJihkLmV2ZW50VGltZW91dD1iW0YuRC5waF0pKTtyZXR1cm4gZH0KZnVuY3Rpb24geUQoYSxiKXt2YXIgYz1hJiZhW0YuRC5YYl07Yz09PXZvaWQgMCYmKGM9dUEoRi5ELlhiLDIpLGM9PT12b2lkIDAmJihjPSJkZWZhdWx0IikpO2lmKHpiKGMpfHxBcnJheS5pc0FycmF5KGMpKXt2YXIgZDtkPWIuaXNHdG1FdmVudD96YihjKT9bY106YzpjLnRvU3RyaW5nKCkucmVwbGFjZSgvXHMrL2csIiIpLnNwbGl0KCIsIik7dmFyIGU9cUQoZCxiLmlzR3RtRXZlbnQpLGY9ZS5layxnPWUuUHM7aWYoZy5sZW5ndGgpZm9yKHZhciBoPWlEKGEpLGw9MDtsPGcubGVuZ3RoO2wrKyl7dmFyIG49YkMoZ1tsXSxiLmlzR3RtRXZlbnQpO2lmKG4pe3ZhciBwPW4uZGVzdGluYXRpb25JZCxxPXZvaWQgMDsoKHE9bmsobi5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOnEuc3RhdGUpPT09MHx8bkEocCxoLHtzb3VyY2U6Myxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX12YXIgcj1mLmNvbmNhdChnKTtyZXR1cm57ZWs6Y0MoZixiLmlzR3RtRXZlbnQpLAptcjpjQyhyLGIuaXNHdG1FdmVudCl9fX07dmFyIHpEPXt9LEFEPSh6RC5jb25maWc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1oRChhLGIpLGQ7YTp7aWYoIShhLmxlbmd0aDwyKSYmemIoYVsxXSkpe3ZhciBlPXt9O2lmKGEubGVuZ3RoPjIpe2lmKGFbMl0hPT12b2lkIDAmJiFDZChhWzJdKXx8YS5sZW5ndGg+Myl7ZD12b2lkIDA7YnJlYWsgYX1lPWFbMl19dmFyIGY9YkMoYVsxXSxiLmlzR3RtRXZlbnQpO2lmKGYpe2Q9e3RhcmdldDpmLHBhcmFtczplfTticmVhayBhfX1kPXZvaWQgMH12YXIgZz1kO2lmKGcpe3ZhciBoPWcudGFyZ2V0LGw9Zy5wYXJhbXMsbjthOntpZighSWYoNykpe3ZhciBwPXlrKHprKCkpO2lmKE1rKHApKXt2YXIgcT1wLnBhcmVudCxyPXEuaXNEZXN0aW5hdGlvbjtuPXtWczp5ayhxKSxNczpyfTticmVhayBhfX1uPXZvaWQgMH12YXIgdD1uLHU9dD09bnVsbD92b2lkIDA6dC5Wcyx2PXQ9PW51bGw/dm9pZCAwOnQuTXM7ZEIoYy5ldmVudElkLCJndGFnLmNvbmZpZyIpO3ZhciB4LHk9aC5kZXN0aW5hdGlvbklkOwppZihoLkpjKCk/dGsoKS5pbmRleE9mKHkpIT09LTE6d2soKS5pbmRleE9mKHkpIT09LTEpYTp7aWYodSYmKFAoMTI4KSx2JiZQKDEzMCksYi5pbmhlcml0UGFyZW50Q29uZmlnKSl7dmFyIHo7dmFyIEM9JGsoMTIpO2lmKEMpdUQoYixDLGwpLHo9ITE7ZWxzZXt2YXIgRD0kaygxMSk7IWxbRi5ELlZkXSYmKE0oNTUwKXx8SWYoMTEpKSYmRHx8WmsoMTEsRWQobCxudWxsKSk7ej0hMH16JiZ1LmNvbnRhaW5lcnMmJnUuY29udGFpbmVycy5qb2luKCIsIik7eD12b2lkIDA7YnJlYWsgYX12YXIgST0hSWYoNDUpLEc9IVNiKGguaWQsIkdUTS0iKTtJJiZHJiYoT2JqZWN0LmtleXMobCkubGVuZ3RoPT09MD9HdShULlcuU2spOkd1KFQuVy5UayksRWwoKSYmR3UoVC5XLlJrKSwkaygzMSkmJkd1KFQuVy5VaykpO3ZhciBOPVlCO2ZuLksmJihOLkg9PT0xJiYoUW0uSC5tY2M9ITEpLE4uSD0yKTtpZihNKDU1MCl8fCF3RChsLGIsaC5KYygpKSl7a0QuSHx8UCg0Myk7aWYoIU0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIFM9CmguaWQ7aWYoaC5KYygpKXREKFMpLHBEKFMsbFtGLkQuT2RdfHwiZGVmYXVsdCIpO2Vsc2V7ckQoUyk7dmFyIFc9bFtGLkQuT2RdfHwiZGVmYXVsdCIsZWE9b0Q7Vz1XLnRvU3RyaW5nKCkuc3BsaXQoIiwiKTtmb3IodmFyIGphPTA7amE8Vy5sZW5ndGg7amErKyl7dmFyIGZhPWVhLkhbV1tqYV1dfHxbXTtlYS5IW1dbamFdXT1mYTtmYS5pbmRleE9mKFMpPDAmJmZhLnB1c2goUyl9fX1kZWxldGUgbFtGLkQuT2RdfXZhciBzYT1iLmV2ZW50TWV0YWRhdGF8fHt9O3NhLmhhc093blByb3BlcnR5KEguSi5hZSl8fChzYVtILkouYWVdPSFiLmZyb21Db250YWluZXJFeGVjdXRpb24pO2IuZXZlbnRNZXRhZGF0YT1zYTtkZWxldGUgbFtGLkQuUGZdO2lmKE0oNTUwKSl7eD12RChoLGwsYixjKTticmVhayBhfXZhciBkYT0hIWxbRi5ELlZkXTtkZWxldGUgbFtGLkQuVmRdO3ZhciBtYT10aygpLFBhPWNELEZhPWFEO2guSmMoKSYmKG1hPVtoLmlkXSxQYT1kRCxGYT1iRCk7Zm9yKHZhciBxYT0wO3FhPAptYS5sZW5ndGg7cWErKyl7ZGF8fFBhKG1hW3FhXSk7dmFyIGliPWdEKG1hW3FhXSk7RmEobWFbcWFdLEVkKGwsbnVsbCksRWQoYixudWxsKSk7aWImJmRhfHxaQyhGLkQud2EsRWQobCxudWxsKSxtYVtxYV0sRWQoYixudWxsKSl9fXg9dm9pZCAwfWVsc2UgYTp7aWYoIWIuaW5oZXJpdFBhcmVudENvbmZpZyYmIWxbRi5ELlpjXSl7dmFyIFhiPWlEKGwpLExjPWguZGVzdGluYXRpb25JZDtpZihoLkpjKCkpbkEoTGMsWGIse3NvdXJjZToyLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSk7ZWxzZSBpZih1IT09dm9pZCAwJiZ1LmNvbnRhaW5lcnMuaW5kZXhPZihMYykhPT0tMSl7dmFyIFFkPSRrKDExKSxZYz0kaygxMik7UWQ/dUQoYixsLFFkKTpZY3x8WmsoMTIsRWQobCxudWxsKSl9ZWxzZSBpZihoQShMYyxYYiwhMCx7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KSxNKDU1MCkpe3g9dkQoaCwKbCxiLGMpO2JyZWFrIGF9fXg9dm9pZCAwfXJldHVybiB4fX0sekQuY29uc2VudD1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09Myl7UCgzOSk7dmFyIGM9aEQoYSxiKSxkPWFbMV0sZT17fSxmPU9vKGFbMl0pLGc7Zm9yKGcgaW4gZilpZihmLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1mW2ddO2VbZ109Zz09PUYuRC5ZZz9BcnJheS5pc0FycmF5KGgpP05hTjpOdW1iZXIoaCk6Zz09PUYuRC5uYz8oQXJyYXkuaXNBcnJheShoKT9oOltoXSkubWFwKFBvKTpRbyhoKX1iLmZyb21Db250YWluZXJFeGVjdXRpb258fChlW0YuRC5tYV0mJlAoMTM5KSxlW0YuRC5YYV0mJlAoMTQwKSk7ZD09PSJkZWZhdWx0Ij9UbyhlKTpkPT09InVwZGF0ZSI/Vm8oZSxjKTpkPT09ImRlY2xhcmUiJiZiLmZyb21Db250YWluZXJFeGVjdXRpb24mJlNvKGUpfX0sekQuY29udGFpbmVyX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9CmFbMl0sZD1iQyhhWzFdLCEwKTtkJiZhRChkLmRlc3RpbmF0aW9uSWQsYyxFZChiLG51bGwpKX19LHpELmRlc3RpbmF0aW9uX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9YVsyXSxkPWJDKGFbMV0sITApO2lmKGQpe2lmKE0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIGU9ZC5pZDtpZihkLkpjKCkpdEQoZSkscEQoZSxjW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtzRChlKTt2YXIgZj1jW0YuRC5PZF18fCJkZWZhdWx0IixnPW9EO2Y9U3RyaW5nKGYpLnNwbGl0KCIsIik7Zm9yKHZhciBoPTA7aDxmLmxlbmd0aDtoKyspe3ZhciBsPWcuS1tmW2hdXXx8W107Zy5LW2ZbaF1dPWw7bC5pbmRleE9mKGUpPDAmJmwucHVzaChlKX19fWRlbGV0ZSBjW0YuRC5PZF19YkQoZC5pZCxjLEVkKGIsbnVsbCkpfX19LHpELmV2ZW50PWZ1bmN0aW9uKGEsYil7dmFyIGM9YVsxXTtpZighKGEubGVuZ3RoPDIpJiYKemIoYykpe3ZhciBkPXZvaWQgMDtpZihhLmxlbmd0aD4yKXtpZighQ2QoYVsyXSkmJmFbMl0hPT12b2lkIDB8fGEubGVuZ3RoPjMpcmV0dXJuO2Q9YVsyXX12YXIgZT14RChjLGQpLGY9aEQoYSxiKSxnPWYuZXZlbnRJZCxoPWYucHJpb3JpdHlJZDtlWyJndG0udW5pcXVlRXZlbnRJZCJdPWc7aCYmKGVbImd0bS5wcmlvcml0eUlkIl09aCk7Yi5wcmlvcml0eVF1ZXVlJiYoZVsiZ3RtLnByaW9yaXR5UXVldWUiXT1iLnByaW9yaXR5UXVldWUpO2lmKGM9PT0ib3B0aW1pemUuY2FsbGJhY2siKXJldHVybiBlLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fSxlO3ZhciBsPXlEKGQsYik7aWYobCl7Zm9yKHZhciBuPWwuZWsscD1sLm1yLHE9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSxyPXAubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmRlc3RpbmF0aW9uSWR9KSx0PW4ubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkfSksdT1tKHRrKCkpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtyLmluZGV4T2YoeCk8MCYmdC5wdXNoKHgpfWRCKGcsYyk7Zm9yKHZhciB5PW0odCksej15Lm5leHQoKTshei5kb25lO3o9eS5uZXh0KCkpe3ZhciBDPXoudmFsdWUsRD1FZChiLG51bGwpLEk9RWQoZCxudWxsKTtkZWxldGUgSVtGLkQuUGZdO3ZhciBHPUQuZXZlbnRNZXRhZGF0YXx8e307Ry5oYXNPd25Qcm9wZXJ0eShILkouYWUpfHwoR1tILkouYWVdPSFELmZyb21Db250YWluZXJFeGVjdXRpb24pO0dbSC5KLm1qXT1xLnNsaWNlKCk7R1tILkouc2ddPXIuc2xpY2UoKTtELmV2ZW50TWV0YWRhdGE9RztaQyhjLEksQyxEKX1lLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fTtxLmxlbmd0aD4wP2UuZXZlbnRNb2RlbFtGLkQuWGJdPXEuam9pbigiLCIpOmRlbGV0ZSBlLmV2ZW50TW9kZWxbRi5ELlhiXTtrRC5IfHxQKDQzKTtiLm5vR3RtRXZlbnQ9PT12b2lkIDAmJmIuZXZlbnRNZXRhZGF0YSYmYi5ldmVudE1ldGFkYXRhW0guSi5Cbl0mJihiLm5vR3RtRXZlbnQ9CiEwKTtlLmV2ZW50TW9kZWxbRi5ELlljXSYmKGIubm9HdG1FdmVudD0hMCk7cmV0dXJuIGIubm9HdG1FdmVudD92b2lkIDA6ZX19fSx6RC5nZXQ9ZnVuY3Rpb24oYSxiKXtQKDUzKTtpZihhLmxlbmd0aD09PTQmJnpiKGFbMV0pJiZ6YihhWzJdKSYmeWIoYVszXSkpe3ZhciBjPWJDKGFbMV0sYi5pc0d0bUV2ZW50KSxkPVN0cmluZyhhWzJdKSxlPWFbM107aWYoYyl7a0QuSHx8UCg0Myk7dmFyIGY9aUQoKTtpZihDYih0aygpLGZ1bmN0aW9uKGgpe3JldHVybiBjLmRlc3RpbmF0aW9uSWQ9PT1ofSkpe2hEKGEsYik7dmFyIGc9e307RWQoKGdbRi5ELlRmXT1kLGdbRi5ELlNmXT1lLGcpLG51bGwpOyRDKGQsZnVuY3Rpb24oaCl7YmQoZnVuY3Rpb24oKXtlKGgpfSl9LGMuaWQsYil9ZWxzZSBuQShjLmRlc3RpbmF0aW9uSWQsZix7c291cmNlOjQsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KX19fSx6RC5qcz1mdW5jdGlvbihhLGIpe3ZhciBjO2lmKGEubGVuZ3RoPT09CjImJmFbMV0uZ2V0VGltZSl7a0QuSD0hMDt2YXIgZD1oRChhLGIpLGU9ZC5ldmVudElkLGY9ZC5wcmlvcml0eUlkLGc9e307Yz0oZy5ldmVudD0iZ3RtLmpzIixnWyJndG0uc3RhcnQiXT1hWzFdLmdldFRpbWUoKSxnWyJndG0udW5pcXVlRXZlbnRJZCJdPWUsZ1siZ3RtLnByaW9yaXR5SWQiXT1mLGcpfWVsc2UgYz12b2lkIDA7cmV0dXJuIGN9LHpELnBvbGljeT1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZ5YihhWzJdKSl7aWYoaHkoYVsxXSxhWzJdKSxQKDc0KSxhWzFdPT09ImFsbCIpe1AoNzUpO3ZhciBiPSExO3RyeXtiPWFbMl0oRSg1KSwidW5rbm93biIse30pfWNhdGNoKGMpe31ifHxQKDc2KX19ZWxzZSBQKDczKX0sekQucmVzZXRfdGFyZ2V0X2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTImJnpiKGFbMV0pKXt2YXIgYz1iQyhhWzFdLCEwKTtjJiZkRChjLmlkKX19LHpELnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXZvaWQgMDsKYS5sZW5ndGg9PT0yJiZDZChhWzFdKT9jPUVkKGFbMV0sbnVsbCk6YS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmKGM9e30sQ2QoYVsyXSl8fEFycmF5LmlzQXJyYXkoYVsyXSk/Y1thWzFdXT1FZChhWzJdLG51bGwpOmNbYVsxXV09YVsyXSk7aWYoYyl7WmsoMzEsITApO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQ7RWQoYyxudWxsKTtFKDUpO3ZhciBnPUVkKGMsbnVsbCk7WUMoKS5ILnB1c2goInNldCIsW2ddLHZvaWQgMCxiKTtjWyJndG0udW5pcXVlRXZlbnRJZCJdPWU7ZiYmKGNbImd0bS5wcmlvcml0eUlkIl09Zik7ZGVsZXRlIGMuZXZlbnQ7Yi5vdmVyd3JpdGVNb2RlbEZpZWxkcz0hMDtyZXR1cm4gY319LHpEKSxCRD17fSxDRD0oQkQucG9saWN5PSEwLEJEKTt2YXIgRUQ9ZnVuY3Rpb24oYSl7aWYoREQoYSkpcmV0dXJuIGE7dGhpcy52YWx1ZT1hfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O3ZhciBERD1mdW5jdGlvbihhKXtyZXR1cm4hYXx8QWQoYSkhPT0ib2JqZWN0Inx8Q2QoYSk/ITE6ImdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSJpbiBhfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPUVELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU7dmFyIEZEPXtCYjoiMSIsZWU6IjIiLFhkOiIzIixjZToiNCIseGY6IjUiLHFnOiI2IixLaDoiNyIsdGo6IjgiLGxpOiI5IixqajoiMTAifTsKdmFyIEdEPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9YS50cmltKCkucmVwbGFjZUFsbCgvXHMrL2csIiIpLnJlcGxhY2VBbGwoLyhcZHsyLH0pXC4vZywiJDEiKS5yZXBsYWNlQWxsKC8tL2csIiIpLnJlcGxhY2VBbGwoL1woKFxkKylcKS9nLCIkMSIpO2lmKGImJmMubWF0Y2goL15cKz9cZHszLDR9JC8pKXJldHVybiBjO2MuY2hhckF0KDApIT09IisiJiYoYz0iKyIrYyk7aWYoYy5tYXRjaChuZXcgUmVnRXhwKCJeXFwrXFxkeyIrKE0oNTk3KT83OjEwKSsiLDE1fSQiKSkpcmV0dXJuIGN9fSxJRD1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj1hLnRyaW0oKTtpZihIRC50ZXN0KGIpKXJldHVybiBiLnRvTG93ZXJDYXNlKCkucmVwbGFjZUFsbCgvWy0gXSsvZywiIil9fSxNRD1mdW5jdGlvbihhKXt2YXIgYj1KRChLRCkoYSk7aWYoYiYmIUxEKGIpKXJldHVybiBifSxMRD1mdW5jdGlvbihhKXtpZighQS5sb2NhdGlvbilyZXR1cm4hMTt2YXIgYj1OaihBLmxvY2F0aW9uLCJob3N0IiwhMCksCmM7aWYoTSg2MDIpKWE6e2Zvcih2YXIgZD1iLnNwbGl0KCIuIiksZT1hLnRvTG93ZXJDYXNlKCksZj0wO2Y8ZC5sZW5ndGgtMTtmKyspe3ZhciBnPWQuc2xpY2UoZikuam9pbigiLiIpO2lmKGUubWF0Y2goIkAiK2crIiQiKSl7Yz0hMDticmVhayBhfX1jPSExfWVsc2UgYz1hLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihiKT49MDtyZXR1cm4gY30sSkQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPWIubWF0Y2goYSk7cmV0dXJuIGM/Y1swXS50cmltKCkudG9Mb3dlckNhc2UoKTp2b2lkIDB9fSxLRD0vW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcLltBLVpdezIsfS9pLE5EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzKSskLyksSEQ9UmVnRXhwKCJeKD86W0EtWl17MSwyfVxcZFtBLVpcXGRdP1sgLV0/XFxkW0EtWl17Mn18W0EtWl1cXGRbQS1aXVsgLV0/XFxkW0EtWl1cXGR8XFxkezR9ID9bQS1aXXsyfXxbQS1aXVxcZHs0fVtBLVpdezN9fFxcZHs1fSg/Oi1cXGR7NH0pP3xcXGR7NX0tXFxkezN9fFxcZHs0fS1cXGR7M318XFxkezN9LVxcZHs0fXxcXGR7Mn0tXFxkezN9fFxcZHszfSA/XFxkezJ9fFxcZHs0LDd9KSQiLAoiaSIpLE9EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzfFxkKSskLyk7CnZhciBQRD1mdW5jdGlvbigpe3ZhciBhPVN0cmluZyhhbCgzMyxmdW5jdGlvbigpe3JldHVybiAwfSkpO2EuaW5kZXhPZigiLiIpIT09LTEmJihhPWEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCIuIikrMykpO3ZhciBiPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtyZXR1cm57dnQ6TnVtYmVyKGEpLHN0OmJ9fSxRRD1mdW5jdGlvbigpe3JldHVybiBhbCgzMixmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSl9LFNEPWZ1bmN0aW9uKGEpe3ZhciBiPXBkKCl8fDAsYz1bRkQuQmJdO00oNTY4KSYmYy5wdXNoKEZELmVlLEZELlhkLEZELmNlLEZELnhmLEZELnFnLEZELnRqLEZELmxpLEZELmpqKTtmb3IodmFyIGQ9UkQoYSxuZXcgU2V0KGMpKSxlPWFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSxmPW0oZCksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5zZXQoaC5EYSxoKX12YXIgbD0ocGQoKXx8MCktYixuPWFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTsKWmsoMzMsbitsKTt2YXIgcD1hbCgzNCxmdW5jdGlvbigpe3JldHVybiAwfSk7WmsoMzQscCsxKX0sUkQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9TmYoMzYsMiksZD1bXSxlPVt7b286YSxkZXB0aDowfV07ZS5sZW5ndGg+MDspZm9yKHZhciBmPWUuc2hpZnQoKSxnPWYub28saD1mLmRlcHRoLGw9bShPYmplY3Qua2V5cyhnKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aWYoIVRELmhhcyhwKSl7dmFyIHE9Z1twXTtpZihxKWlmKENkKHEpKWgrMTw9YyYmZS5wdXNoKHtvbzpxLGRlcHRoOmgrMX0pO2Vsc2V7Zm9yKHZhciByPW0oYiksdD1yLm5leHQoKTshdC5kb25lO3Q9ci5uZXh0KCkpe3ZhciB1PXQudmFsdWUsdj1VRFt1XTtpZih2JiZ2LktjLnRlc3QocCkpe3ZhciB4PXYubmEoU3RyaW5nKHEpKTtpZih4KXtkLnB1c2goe0NhOngsRGE6dX0pO2IuZGVsZXRlKHUpO2JyZWFrfX19aWYoYi5zaXplPT09MClyZXR1cm4gZH19fXJldHVybiBkfSxURD0KbmV3IFNldChbIml0ZW1zIiwiZWNvbW1lcmNlIl0pLFZEPVJlZ0V4cCgicGhvbmUiLCJpIiksV0Q9UmVnRXhwKCJmaXJzdF8/bmFtZSIsImkiKSxYRD1SZWdFeHAoImxhc3RfP25hbWUiLCJpIiksWUQ9UmVnRXhwKCJjb3VudHJ5IiwiaSIpLFpEPVJlZ0V4cCgicG9zdHx6aXAiLCJpIiksJEQ9UmVnRXhwKCJhZGRyZXNzfHN0cmVldCIsImkiKSxhRT1SZWdFeHAoImNpdHkiLCJpIiksYkU9UmVnRXhwKCJyZWdpb258c3RhdGV8cHJvdmluY2UiLCJpIiksY0U9e30sVUQ9KGNFW0ZELkJiXT17S2M6UmVnRXhwKCJlbWFpbCIsImkiKSxuYTpNRH0sY0VbRkQuZWVdPXtLYzpWRCxuYTpmdW5jdGlvbihhKXtyZXR1cm4gR0QoYSwhMSl9fSxjRVtGRC5YZF09e0tjOldELG5hOk5EfSxjRVtGRC5jZV09e0tjOlhELG5hOk5EfSxjRVtGRC50al09e0tjOiRELG5hOk9EfSxjRVtGRC5saV09e0tjOmFFLG5hOk5EfSxjRVtGRC5qal09e0tjOmJFLG5hOk5EfSxjRVtGRC5xZ109e0tjOlpELG5hOklEfSxjRVtGRC54Zl09CntLYzpZRCxuYTpORH0sY0UpO3ZhciBkRT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5sb2FkZWQ9ITE7dGhpcy5IPVtdO2lmKEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vbkxvYWQoKTtlbHNlICRjKEEsImxvYWQiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYS5vbkxvYWQoKX0pfTtkRS5wcm90b3R5cGUub25Mb2FkPWZ1bmN0aW9uKCl7aWYoIXRoaXMubG9hZGVkKXt0aGlzLmxvYWRlZD0hMDtmb3IodmFyIGE9MDthPHRoaXMuSC5sZW5ndGg7YSsrKWJkKHRoaXMuSFthXSl9fTt2YXIgZkU9ZnVuY3Rpb24oYSl7dmFyIGI9ZUU7Yi5sb2FkZWQ/YmQoYSk6Yi5ILnB1c2goYSl9LGVFPW5ldyBkRTt2YXIgZ0U9ZnVuY3Rpb24oKXt0aGlzLlo9MDt0aGlzLks9e307dGhpcy5IPVtdO3RoaXMuTj1bXTt0aGlzLmZhPXRoaXMuUj10aGlzLmphPSExfSxpRT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aEU7YS5ldmVudENhbGxiYWNrPWI7YyYmKGEuZXZlbnRUaW1lb3V0PWMpO3JldHVybiBkLnB1c2goYSl9LGpFPWZ1bmN0aW9uKGEsYil7aWYoIUFiKGIpfHxiPDApYj0wO3ZhciBjPXFqKCksZD0wLGU9ITEsZj12b2lkIDA7Zj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlfHwoZT0hMCxhKCkpO2Y9dm9pZCAwfSxiKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZz1jP2Muc3Vic2NyaWJlcnM6MTsrK2Q9PT1nJiYoZiYmKEEuY2xlYXJUaW1lb3V0KGYpLGY9dm9pZCAwKSxlfHwoYSgpLGU9ITApKX19LGxFPWZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEuTi5sZW5ndGgpYj1hLk4uc2hpZnQoKTtlbHNlIGlmKGEuSC5sZW5ndGgpYj1hLkguc2hpZnQoKTtlbHNlIHJldHVybjt2YXIgYzt2YXIgZD1iO2lmKGEuamF8fAoha0UoZC5tZXNzYWdlKSljPWQ7ZWxzZXthLmphPSEwO3ZhciBlPWQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxmLGc7dHlwZW9mIGU9PT0ibnVtYmVyIj8oZj1lLTIsZz1lLTEpOihmPXJqKCksZz1yaigpLGQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1yaigpKTt2YXIgaD17fSxsPXttZXNzYWdlOihoLmV2ZW50PSJndG0uaW5pdF9jb25zZW50IixoWyJndG0udW5pcXVlRXZlbnRJZCJdPWYsaCksbWVzc2FnZUNvbnRleHQ6e2V2ZW50SWQ6Zn19LG49e30scD17bWVzc2FnZToobi5ldmVudD0iZ3RtLmluaXQiLG5bImd0bS51bmlxdWVFdmVudElkIl09ZyxuKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpnfX07YS5ILnVuc2hpZnQocCxkKTtjPWx9cmV0dXJuIGN9LG9FPWZ1bmN0aW9uKGEpe2EuZmF8fFAoMTk2KTtmb3IodmFyIGI9ITEsYzshYS5SJiYoYz1sRShhKSk7KXthLlI9ITA7dmFyIGQ9ckE7ZGVsZXRlIGQuSC5ldmVudE1vZGVsO29BKGQpO3ZhciBlPWMsZj0KZS5tZXNzYWdlLGc9ZS5tZXNzYWdlQ29udGV4dDtpZihmPT1udWxsKWEuUj0hMTtlbHNle2cuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmc0EoKTt0cnl7aWYoeWIoZikpdHJ5e2YuY2FsbCh0QSl9Y2F0Y2goUyl7fWVsc2UgaWYoQXJyYXkuaXNBcnJheShmKSl7aWYoemIoZlswXSkpe3ZhciBoPWZbMF0uc3BsaXQoIi4iKSxsPWgucG9wKCksbj1mLnNsaWNlKDEpLHA9dUEoaC5qb2luKCIuIiksMik7aWYocCE9bnVsbCl0cnl7cFtsXS5hcHBseShwLG4pfWNhdGNoKFMpe319fWVsc2V7dmFyIHE9dm9pZCAwO2lmKEhiKGYpKWE6e2lmKGYubGVuZ3RoJiZ6YihmWzBdKSl7dmFyIHI9QURbZlswXV07aWYociYmKCFnLmZyb21Db250YWluZXJFeGVjdXRpb258fCFDRFtmWzBdXSkpe3E9cihmLGcpO2JyZWFrIGF9fXE9dm9pZCAwfWVsc2UgcT1mO2lmKHEpe3ZhciB0O2Zvcih2YXIgdT1xLHY9dS5fY2xlYXJ8fGcub3ZlcndyaXRlTW9kZWxGaWVsZHMseD1tKE9iamVjdC5rZXlzKHUpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT0KeC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7eiE9PSJfY2xlYXIiJiYodiYmckEuc2V0KHosdm9pZCAwKSxyQS5zZXQoeix1W3pdKSl9TSg1OTIpJiZTRCh1KTskaygyNSl8fFprKDI1LHVbImd0bS5zdGFydCJdKTt2YXIgQz11WyJndG0udW5pcXVlRXZlbnRJZCJdO3UuZXZlbnQ/KHR5cGVvZiBDIT09Im51bWJlciImJihDPXJqKCksdVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1DLHJBLnNldCgiZ3RtLnVuaXF1ZUV2ZW50SWQiLEMpKSx0PXpCKHUpKTp0PSExO2I9dHx8Yn19fWZpbmFsbHl7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZvQShyQSwhMCk7dmFyIEQ9ZlsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtpZih0eXBlb2YgRD09PSJudW1iZXIiKXtmb3IodmFyIEk9YSxHPUkuS1tTdHJpbmcoRCldfHxbXSxOPTA7TjxHLmxlbmd0aDtOKyspSS5OLnB1c2gobUUoR1tOXSkpO0cubGVuZ3RoJiZJLk4uc29ydChuRSk7ZGVsZXRlIEkuS1tTdHJpbmcoRCldO0Q+YS5aJiYoYS5aPUQpfWEuUj0hMX19fXJldHVybiFifSwKcEU9ZnVuY3Rpb24oKXt2YXIgYT1oRTthLmZhJiZQKDE5NSk7YS5mYT0hMDtpZihmbi5IKXt2YXIgYj0hSWYoNTEpLGM9cnooKTtweihjLHtzdGFnZTpJeS5YLlpnfSk7aWYoYil7dmFyIGQ9cXooYyx7c3RhZ2U6SXkuWC5Za30sSXkuWC5uaSk7ZCE9PXZvaWQgMCYmKGMuSC5ZPWQpfXZhciBlPWEuSC5sZW5ndGg7cnooKS5ILkM9ZX1vRShhKTtpZihmbi5IKXt2YXIgZj1yeigpLGc9cXooZix7c3RhZ2U6SXkuWC5Wa30sSXkuWC5aZyk7ZyE9PXZvaWQgMCYmKGYuSC5CPWcpfXRyeXt2YXIgaD1BW0UoMTkpXSxsPUUoNSksbj1oLmhpZGU7aWYobiYmbltsXSE9PXZvaWQgMCYmbi5lbmQpe25bbF09ITE7dmFyIHA9ITAscTtmb3IocSBpbiBuKWlmKG4uaGFzT3duUHJvcGVydHkocSkmJm5bcV09PT0hMCl7cD0hMTticmVha31wJiYobi5lbmQoKSxuLmVuZD1udWxsKX19Y2F0Y2gocil7RSg1KX19LHFFPWZ1bmN0aW9uKGEsYil7aWYoYS5aPGIubm90QmVmb3JlRXZlbnRJZCl7dmFyIGM9U3RyaW5nKGIubm90QmVmb3JlRXZlbnRJZCk7CmEuS1tjXT1hLktbY118fFtdO2EuS1tjXS5wdXNoKGIpfWVsc2V7YS5OLnB1c2gobUUoYikpO2EuTi5zb3J0KG5FKTt2YXIgZD1mdW5jdGlvbigpe2EuUnx8b0UoYSl9O00oNTgwKT9kZChkKTpiZChkKX19OwpnRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoaCl7dmFyIGw9e307aWYoREQoaCkpe3ZhciBuPWg7aD1ERChuKT9uLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSgpOnZvaWQgMDtsLmZyb21Db250YWluZXJFeGVjdXRpb249ITB9cmV0dXJue21lc3NhZ2U6aCxtZXNzYWdlQ29udGV4dDpsfX12YXIgYj10aGlzLGM9TWMoRSgxOSksW10pLGQ9cGooKTtkLnBydW5lZD09PSEwJiZQKDgzKTt0aGlzLks9bkQoKS5nZXQoKTtuRCgpLmxpc3RlbihmdW5jdGlvbihoKXtxRShiLGgpfSk7ZC5zdWJzY3JpYmVycz0oZC5zdWJzY3JpYmVyc3x8MCkrMTt2YXIgZT1jLnB1c2gsZj10aGlzO2MucHVzaD1mdW5jdGlvbigpe3ZhciBoO2xqKCk7aWYoamouSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPjApe2g9W107Zm9yKHZhciBsPTA7bDxhcmd1bWVudHMubGVuZ3RoO2wrKyloW2xdPW5ldyBFRChhcmd1bWVudHNbbF0pfWVsc2UgaD1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTsKdmFyIG49aC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGEodCl9KTtmLkgucHVzaC5hcHBseShmLkgsbik7dmFyIHA9ZS5hcHBseShjLGgpLHE9TWF0aC5tYXgoMTAwLE5mKDEsMzAwKSk7aWYodGhpcy5sZW5ndGg+cSlmb3IoUCg0KSxkLnBydW5lZD0hMDt0aGlzLmxlbmd0aD5xOyl0aGlzLnNoaWZ0KCk7dmFyIHI9dHlwZW9mIHAhPT0iYm9vbGVhbiJ8fHA7cmV0dXJuIG9FKGYpJiZyfTt2YXIgZz1jLnNsaWNlKDApLm1hcChmdW5jdGlvbihoKXtyZXR1cm4gYShoKX0pO3RoaXMuSC5wdXNoLmFwcGx5KHRoaXMuSCxnKTtJZig1MSl8fChmbi5IJiZ1eigpLGJkKHJFKSk7VkIoZnVuY3Rpb24oKXtpZighZC5ndG1Eb20pe2QuZ3RtRG9tPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmRvbSIsaCkpfX0pO2ZFKGZ1bmN0aW9uKCl7aWYoIWQuZ3RtTG9hZCl7ZC5ndG1Mb2FkPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmxvYWQiLGgpKX19KX07CmdFLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEpe3JldHVybiBBW0UoMTkpXS5wdXNoKGEpfTt2YXIgaEU9bmV3IGdFO2Z1bmN0aW9uIG5FKGEsYil7dmFyIGM9YS5tZXNzYWdlQ29udGV4dCxkPWIubWVzc2FnZUNvbnRleHQ7aWYoYy5ldmVudElkIT09ZC5ldmVudElkKXJldHVybiBjLmV2ZW50SWQtZC5ldmVudElkO2lmKCFNKDU5NSkpcmV0dXJuIGMucHJpb3JpdHlJZC1kLnByaW9yaXR5SWQ7dmFyIGUsZixnO2E6e2Zvcih2YXIgaD0oZT1jLnByaW9yaXR5UXVldWUpIT1udWxsP2U6W2MucHJpb3JpdHlJZF0sbD0oZj1kLnByaW9yaXR5UXVldWUpIT1udWxsP2Y6W2QucHJpb3JpdHlJZF0sbj1NYXRoLm1pbihoLmxlbmd0aCxsLmxlbmd0aCkscD0wO3A8bjtwKyspaWYoaFtwXSE9PWxbcF0pe2c9aFtwXS1sW3BdO2JyZWFrIGF9Zz1oLmxlbmd0aC1sLmxlbmd0aH1yZXR1cm4gZ30KZnVuY3Rpb24ga0UoYSl7aWYoYT09bnVsbHx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZihhLmV2ZW50KXJldHVybiEwO2lmKEhiKGEpKXt2YXIgYj1hWzBdO2lmKGI9PT0iY29uZmlnInx8Yj09PSJldmVudCJ8fGI9PT0ianMifHxiPT09ImdldCIpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gbUUoYSl7cmV0dXJue21lc3NhZ2U6YS5tZXNzYWdlLG1lc3NhZ2VDb250ZXh0OmEubWVzc2FnZUNvbnRleHR9fWZ1bmN0aW9uIHNFKGEsYixjKXtyZXR1cm4gaUUoYSxiLGMpfWZ1bmN0aW9uIHRFKGEsYil7cmV0dXJuIGpFKGEsYil9ZnVuY3Rpb24gckUoKXtwRSgpfWZ1bmN0aW9uIHVFKGEpe3JldHVybiBoRS5wdXNoKGEpfTt2YXIgdkU9ZnVuY3Rpb24oKXt9O3ZFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGEsYj1SaihBLmxvY2F0aW9uLmhyZWYpOyhhPWIuaG9zdG5hbWUrYi5wYXRobmFtZSkmJlVtKCJkbCIsZW5jb2RlVVJJQ29tcG9uZW50KGEpKTt2YXIgYzt2YXIgZD1FKDUpO2lmKGQpe3ZhciBlPUlmKDcpPzE6MCxmPUZrKCksZz1mJiZmLmZyb21Db250YWluZXJFeGVjdXRpb24/MTowLGg9ZiYmZi5zb3VyY2V8fDAsbD1FKDYpO2M9ZCsiOyIrbCsiOyIrZysiOyIraCsiOyIrZX1lbHNlIGM9dm9pZCAwO3ZhciBuPWM7biYmVW0oInRkcCIsbik7dmFyIHA9T3AoITApO3AhPT12b2lkIDAmJlVtKCJmcm0iLFN0cmluZyhwKSl9O3ZhciB3RT1uZXcgdkU7dmFyIHhFPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCk7dGhpcy5LPXZvaWQgMH0seUU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gWm0oYSxmdW5jdGlvbihjKXtyZXR1cm4gYy5qYj4wP2I/Yy5qYisiXyIrV20oYyk6U3RyaW5nKGMuamIpOnZvaWQgMH0pfTsKeEUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO2lmKHBsKCl8fGZuLkspVW0oImNzcCIsZnVuY3Rpb24oKXt2YXIgYj15RShhLkgsITApOyRtKGEuSCk7cmV0dXJuIGJ9LCExKSxVbSgibWRlIixmdW5jdGlvbigpe3ZhciBiPWNuLkgsYz15RShiLCExKTskbShiKTtyZXR1cm4gY30sITEpLEEuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLGZ1bmN0aW9uKGIpe2lmKGIuZGlzcG9zaXRpb249PT0iZW5mb3JjZSIpe1AoMTc5KTt2YXIgYz1ubihiLmVmZmVjdGl2ZURpcmVjdGl2ZSk7aWYoYyl7dmFyIGQ7YTp7dmFyIGU9Yi5ibG9ja2VkVVJJLGY9a247aWYoZm4uSyYmZSl7dmFyIGc9am4oYyxlKTtpZihnKXt2YXIgaDtkPShoPWxuKGYsYykpPT1udWxsP3ZvaWQgMDpoW2ddO2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBsPWQ7aWYobCl7dmFyIG47YTp7dHJ5e3ZhciBwPW5ldyBVUkwoYi5ibG9ja2VkVVJJKSxxPXAucGF0aG5hbWUuaW5kZXhPZigiOyIpOwpuPXE+PTA/cC5vcmlnaW4rcC5wYXRobmFtZS5zdWJzdHJpbmcoMCxxKTpwLm9yaWdpbitwLnBhdGhuYW1lO2JyZWFrIGF9Y2F0Y2goRCl7fW49dm9pZCAwfXZhciByPW47aWYocil7Zm9yKHZhciB0PW0obCksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpe3ZhciB2PXUudmFsdWU7aWYoIXYuRW8pe3YuRW89ITA7dmFyIHg9e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfTtpZihwbCgpKXt2YXIgeT14LHo9e3R5cGU6MSxibG9ja2VkVXJsOnIsZW5kcG9pbnQ6di5lbmRwb2ludCx2aW9sYXRpb246Yi5lZmZlY3RpdmVEaXJlY3RpdmV9O2lmKHBsKCkpe3ZhciBDPUxsKCJUQUdfRElBR05PU1RJQ1MiLHtldmVudElkOnk9PW51bGw/dm9pZCAwOnkuZXZlbnRJZCxwcmlvcml0eUlkOnk9PW51bGw/dm9pZCAwOnkucHJpb3JpdHlJZH0pO0MudGFnRGlhZ25vc3RpY3M9ejtvbChDKX19ekUoYSx2LmRlc3RpbmF0aW9uSWQsdi5lbmRwb2ludCxjKX19bW4oYywKYi5ibG9ja2VkVVJJKX19fX19KX07dmFyIHpFPWZ1bmN0aW9uKGEsYixjLGQpe2FuKGEuSCxiLGMsMSxkKTtWbSgiY3NwIiwhMCk7Vm0oIm1kZSIsITApO2MhPT02MSYmYyE9PTU2JiZhLks9PT12b2lkIDAmJihhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5ILmpiPjAmJnRvKCExKTthLks9dm9pZCAwfSw1MDApKX0sQUU9bmV3IHhFO3ZhciBCRT1mdW5jdGlvbigpe3RoaXMuc2VxdWVuY2VOdW1iZXI9MH07QkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO0NFKHRoaXMpO0lmKDY1KSYmVW0oIm10YmwiLCIxIik7VW0oInYiLCIzIik7VW0oInQiLCJ0Iik7VW0oInBpZCIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKG5tKGptLmJhLmJoKSl9KTtVbSgiZ3RtIixmdW5jdGlvbigpe3JldHVybiBkdSgpfSk7VW0oInNlcSIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKCsrYS5zZXF1ZW5jZU51bWJlcil9KTtVbSgiZXhwIixmdW5jdGlvbigpe3JldHVybiBDcCgpfSl9O3ZhciBDRT1mdW5jdGlvbihhKXtpZihubShqbS5iYS5iaCk9PT12b2lkIDApe3ZhciBiPWZ1bmN0aW9uKCl7bW0oam0uYmEuYmgsRGIoKSk7YS5zZXF1ZW5jZU51bWJlcj0wfTtiKCk7Y2QoYiw4NjRFNSl9ZWxzZSBwbShqbS5iYS5iaCxmdW5jdGlvbigpe2Euc2VxdWVuY2VOdW1iZXI9MH0pO2Euc2VxdWVuY2VOdW1iZXI9MH0sREU9bmV3IEJFO2Z1bmN0aW9uIEVFKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBW2FdfX0KdmFyIEZFPXt9LEdFPShGRVsxNF09ZnVuY3Rpb24oKXt2YXIgYTtyZXR1cm4oYT1BLmNyeXB0byk9PW51bGw/dm9pZCAwOmEuZ2V0UmFuZG9tVmFsdWVzfSxGRVsxNV09ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6KGI9YS5zdWJ0bGUpPT1udWxsP3ZvaWQgMDpiLmRpZ2VzdH0sRkVbMV09RUUoImZldGNoIiksRkVbNl09RUUoIk1hcCIpLEZFWzJdPWZ1bmN0aW9uKCl7cmV0dXJuIE1hdGgucmFuZG9tfSxGRVs4XT1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpfSxGRVs5XT1mdW5jdGlvbigpe3JldHVybiBPYmplY3QuZW50cmllc30sRkVbMTBdPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5mcm9tRW50cmllc30sRkVbNV09RUUoIlByb21pc2UiKSxGRVsxM109RUUoIlJlZ0V4cCIpLEZFWzNdPWZ1bmN0aW9uKCl7cmV0dXJuIEhjLnNlbmRCZWFjb259LEZFWzddPUVFKCJTZXQiKSxGRVsxMl09ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0aH0sCkZFWzExXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGh9LEZFWzRdPUVFKCJYTUxIdHRwUmVxdWVzdCIpLEZFKSxIRT17fSxJRT0oSEVbMTVdPSEwLEhFKTt2YXIgTkU9L14oaHR0cHM/Oik/XC9cLy87CgpmdW5jdGlvbiBoRigpe307ZnVuY3Rpb24gaUYoKXtJZig2MikmJihoeSgiZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQud2FpdEZvclRhZ3MpIT09ITB9KSxoeSgiZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLmZpeE1pc3NpbmdBcGkpIT09ITB9KSl9O3ZhciBqRj1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O2pGLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O3ZhciBrRj1uZXcgakY7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtsdCh7R3U6MCxGdToxLEN1OjIseHU6MyxEdTo0LHl1OjUsRXU6NixBdTo3LEJ1Ojgsd3U6OSx6dToxMCxIdToxMX0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7bHQoe0p1OjAsS3U6MSxJdToyfSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBOdW1iZXIoYSl9KTt2YXIgbEY9ZnVuY3Rpb24oYSxiLGMsZCl7cnQuY2FsbCh0aGlzKTt0aGlzLmZlPWI7dGhpcy5rZD1jO3RoaXMuYWM9ZDt0aGlzLkxhPW5ldyBNYXA7dGhpcy5oZT0wO3RoaXMuamE9bmV3IE1hcDt0aGlzLnlhPW5ldyBNYXA7dGhpcy5aPXZvaWQgMDt0aGlzLks9YX07d2EobEYscnQpO2xGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuSDt0aGlzLkxhLmNsZWFyKCk7dGhpcy5qYS5jbGVhcigpO3RoaXMueWEuY2xlYXIoKTt0aGlzLlomJihudCh0aGlzLkssIm1lc3NhZ2UiLHRoaXMuWiksZGVsZXRlIHRoaXMuWik7ZGVsZXRlIHRoaXMuSztkZWxldGUgdGhpcy5hYztydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdmFyIG1GPWZ1bmN0aW9uKGEpe2lmKGEuSClyZXR1cm4gYS5IO2Eua2QmJmEua2QoYS5LKT9hLkg9YS5LOmEuSD1OcChhLkssYS5mZSk7dmFyIGI7cmV0dXJuKGI9YS5IKSE9bnVsbD9iOm51bGx9LG9GPWZ1bmN0aW9uKGEsYixjKXtpZihtRihhKSlpZihhLkg9PT1hLkspe3ZhciBkPWEuTGEuZ2V0KGIpO2QmJmQoYS5ILGMpfWVsc2V7dmFyIGU9YS5qYS5nZXQoYik7aWYoZSYmZS5kayl7bkYoYSk7dmFyIGY9KythLmhlO2EueWEuc2V0KGYse3BlOmUucGUsSXI6ZS5ubyhjKSxwZXJzaXN0ZW50OmI9PT0iYWRkRXZlbnRMaXN0ZW5lciJ9KTthLkgucG9zdE1lc3NhZ2UoZS5kayhjLGYpLCIqIil9fX0sbkY9ZnVuY3Rpb24oYSl7YS5afHwoYS5aPWZ1bmN0aW9uKGIpe2lmKGIuc291cmNlPT09YS5IKXRyeXt2YXIgYztjPWEuYWM/YS5hYyhiKTp2b2lkIDA7aWYoYyl7dmFyIGQ9Yy5ZcyxlPWEueWEuZ2V0KGQpO2lmKGUpe2UucGVyc2lzdGVudHx8YS55YS5kZWxldGUoZCk7dmFyIGY7KGY9CmUucGUpPT1udWxsfHxmLmNhbGwoZSxlLklyLGMucGF5bG9hZCl9fX1jYXRjaChnKXt9fSxtdChhLkssIm1lc3NhZ2UiLGEuWikpfTt2YXIgcEY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmxpc3RlbmVyLGQ9KDAsYS5fX2dwcCkoImFkZEV2ZW50TGlzdGVuZXIiLGMpO2QmJmMoZCwhMCl9LHFGPWZ1bmN0aW9uKGEsYil7KDAsYS5fX2dwcCkoInJlbW92ZUV2ZW50TGlzdGVuZXIiLGIubGlzdGVuZXIsYi5saXN0ZW5lcklkKX0sckY9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoiYWRkRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIn0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuO2EoYy5yZXR1cm5WYWx1ZSxjLnN1Y2Nlc3MpfX0sc0Y9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoicmVtb3ZlRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIiwKcGFyYW1ldGVyOmEubGlzdGVuZXJJZH0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuLGQ9Yy5yZXR1cm5WYWx1ZS5kYXRhO2E9PW51bGx8fGEoZCxjLnN1Y2Nlc3MpfX07ZnVuY3Rpb24gdEYoYSl7dmFyIGI9e307dmYoYS5kYXRhKT9iPUpTT04ucGFyc2UoYS5kYXRhKTpiPWEuZGF0YTtyZXR1cm57cGF5bG9hZDpiLFlzOmIuX19ncHBSZXR1cm4uY2FsbElkfX0KdmFyIHVGPWZ1bmN0aW9uKGEsYil7dmFyIGM7Yz0oYj09PXZvaWQgMD97fTpiKS50aW1lb3V0TXM7cnQuY2FsbCh0aGlzKTt0aGlzLmNhbGxlcj1uZXcgbEYoYSwiX19ncHBMb2NhdG9yIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX19ncHA9PT0iZnVuY3Rpb24ifSx0Rik7dGhpcy5jYWxsZXIuTGEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixwRik7dGhpcy5jYWxsZXIuamEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixyRik7dGhpcy5jYWxsZXIuTGEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixxRik7dGhpcy5jYWxsZXIuamEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixzRik7dGhpcy50aW1lb3V0TXM9YyE9bnVsbD9jOjUwMH07d2EodUYscnQpO3VGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7dGhpcy5jYWxsZXIuZGlzcG9zZSgpO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9Owp1Ri5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9SHAoZnVuY3Rpb24oKXthKHZGLCEwKX0pLGQ9dGhpcy50aW1lb3V0TXM9PT0tMT92b2lkIDA6c2V0VGltZW91dChmdW5jdGlvbigpe2MoKX0sdGhpcy50aW1lb3V0TXMpO29GKHRoaXMuY2FsbGVyLCJhZGRFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oZSxmKXtjbGVhclRpbWVvdXQoZCk7dHJ5e3ZhciBnO3ZhciBoOygoaD1lLnBpbmdEYXRhKT09bnVsbD92b2lkIDA6aC5ncHBWZXJzaW9uKT09PXZvaWQgMHx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEifHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT0iMS4wIj8oYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjEsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0lTX0RFUFJFQ0FURURfU1BFQyIsCmFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pOkFycmF5LmlzQXJyYXkoZS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMpP2c9ZTooYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0VYUEVDVEVEX0FQUExJQ0FUSU9OX1NFQ1RJT05fQVJSQVkiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pO2EoZyxmKX1jYXRjaChsKXtpZihlPT1udWxsPzA6ZS5saXN0ZW5lcklkKXRyeXtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKX1jYXRjaChuKXthKHdGLCEwKTtyZXR1cm59YSh4RiwhMCl9fX0pfTsKdUYucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7b0YodGhpcy5jYWxsZXIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLHtsaXN0ZW5lcjpmdW5jdGlvbigpe30sbGlzdGVuZXJJZDphfSl9Owp2YXIgeEY9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19VTkFWQUlMQUJMRSIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LHZGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfTElTVEVORVJfUkVHSVNUUkFUSU9OX1RJTUVPVVQiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx3Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX1JFTU9WRV9FVkVOVF9MSVNURU5FUl9FUlJPUiIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9O2Z1bmN0aW9uIHlGKGEpe3ZhciBiO2lmKCEoYj1hLnBpbmdEYXRhLnNpZ25hbFN0YXR1cz09PSJyZWFkeSIpKXt2YXIgYz1hLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucztiPSFjfHxjLmxlbmd0aD09PTEmJmNbMF09PT0tMX1pZihiKXtrRi5ncHBTdHJpbmc9YS5waW5nRGF0YS5ncHBTdHJpbmc7dmFyIGQ9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMuam9pbigiLCIpO2tGLkg9ZH19ZnVuY3Rpb24gekYoKXt0cnl7dmFyIGE9bmV3IHVGKEEse3RpbWVvdXRNczotMX0pO21GKGEuY2FsbGVyKSYmYS5hZGRFdmVudExpc3RlbmVyKHlGKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBBRigpe3ZhciBhPVtbImN2IixFKDEpXSxbInJ2IixFKDE0KV0sWyJ0YyIsY0EudGFncy5maWx0ZXIoZnVuY3Rpb24oZCl7cmV0dXJuIGR9KS5sZW5ndGhdXSxiPUpmKDE1KTtiJiZhLnB1c2goWyJ4IixiXSk7dmFyIGM9Q3AoKTtjJiZhLnB1c2goWyJ0YWdfZXhwIixjXSk7cmV0dXJuIGF9O3ZhciBCRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O3RoaXMuSz17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJoZiIsZi5qb2luKCIuIildKTt2YXIgZz1hLktbY118fFtdO2cubGVuZ3RoJiZlLnB1c2goWyJodCIsZy5qb2luKCIuIildKTtkJiYoZGVsZXRlIGEuSFtjXSxkZWxldGUgYS5LW2NdKTtyZXR1cm4gZX0pfSxDRj1mdW5jdGlvbigpe3ZhciBhPTA7cmV0dXJuIGZ1bmN0aW9uKGIpe3N3aXRjaChiKXtjYXNlIDE6YXw9MTticmVhaztjYXNlIDI6YXw9MjticmVhaztjYXNlIDM6YXw9NH1yZXR1cm4gYX19LERGO3ZhciBFRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPSIiO2ZuLk4mJk0oNTE2KSYmZnooZnVuY3Rpb24oKXt2YXIgYj1bXTthLkgmJmIucHVzaChbInBzZCIsYS5IXSk7cmV0dXJuIGJ9KX0sRkY7ZnVuY3Rpb24gR0YoKXtyZXR1cm4hMX0KZnVuY3Rpb24gSEYoKXt2YXIgYT17fTtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe319O2Z1bmN0aW9uIElGKCl7dmFyIGE9SkY7cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt2YXIgZT1kJiZkLmV2ZW50O0tGKGMpO3ZhciBmPUJoKGIpP3ZvaWQgMDoxLGc9bmV3IGtiO0diKGMsZnVuY3Rpb24ocix0KXt2YXIgdT1VZCh0LHZvaWQgMCxmKTt1PT09dm9pZCAwJiZ0IT09dm9pZCAwJiZQKDQ0KTtnLnNldChyLHUpfSk7YS5RYihRZigpKTt2YXIgaD17Um46aGcoYiksZXZlbnRJZDplPT1udWxsP3ZvaWQgMDplLmlkLHByaW9yaXR5SWQ6ZSE9PXZvaWQgMD9lLnByaW9yaXR5SWQ6dm9pZCAwLHByaW9yaXR5UXVldWU6ZSE9PXZvaWQgMD9lLnByaW9yaXR5UXVldWU6dm9pZCAwLHdnOmUhPT12b2lkIDA/ZnVuY3Rpb24ocil7ZS5sZC53ZyhyKX06dm9pZCAwLFBiOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGxvZzpmdW5jdGlvbigpe30sTnI6e2luZGV4OmQ9PW51bGw/dm9pZCAwOmQuaW5kZXgsdHlwZTpkPT1udWxsP3ZvaWQgMDpkLnR5cGUsbmFtZTpkPT1udWxsP3ZvaWQgMDpkLm5hbWV9LAppdDohIUtBKGIsMyksb3JpZ2luYWxFdmVudERhdGE6ZT09bnVsbD92b2lkIDA6ZS5vcmlnaW5hbEV2ZW50RGF0YX07ZSYmZS5jYWNoZWRNb2RlbFZhbHVlcyYmKGguY2FjaGVkTW9kZWxWYWx1ZXM9e2d0bTplLmNhY2hlZE1vZGVsVmFsdWVzLmd0bSxlY29tbWVyY2U6ZS5jYWNoZWRNb2RlbFZhbHVlcy5lY29tbWVyY2V9KTtpZihHRigpKXt2YXIgbD1IRigpLG4scDtoLkFiPXt3azpbXSx5Zzp7fSxqYzpmdW5jdGlvbihyLHQsdSl7dD09PTEmJihuPXIpO3Q9PT03JiYocD11KTtsKHIsdCx1KX0sZWk6VmgoKX07aC5sb2c9ZnVuY3Rpb24ocil7dmFyIHQ9T2EuYXBwbHkoMSxhcmd1bWVudHMpO24mJmwobiw0LHtsZXZlbDpyLHNvdXJjZTpwLG1lc3NhZ2U6dH0pfX0KdmFyIHE9cmYoYSxoLFtiLGddKTthLlFiKCk7cSBpbnN0YW5jZW9mIFRhJiYocS50eXBlPT09InJldHVybiI/cT1xLmRhdGE6cT12b2lkIDApO3JldHVybiBUZChxLHZvaWQgMCxmKX19ZnVuY3Rpb24gS0YoYSl7dmFyIGI9YS5ndG1PblN1Y2Nlc3MsYz1hLmd0bU9uRmFpbHVyZTt5YihiKSYmKGEuZ3RtT25TdWNjZXNzPWZ1bmN0aW9uKCl7YmQoYil9KTt5YihjKSYmKGEuZ3RtT25GYWlsdXJlPWZ1bmN0aW9uKCl7YmQoYyl9KX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO2lmKCFsaChhKXx8IWhoKGIpfHwhbWgoYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChkLCJsaXN0ZW5fZGF0YV9sYXllciIsYSl9XSk7ZT15QigpLmFkZExpc3RlbmVyKGEsVGQoYix2b2lkIDAsMSksYz09PW51bGw/dm9pZCAwOmMpO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwp2YXIgWkY9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YTpTdHJpbmcocmooKSl9LGJHPWZ1bmN0aW9uKGEsYil7JEYoYSwiaW5pdCIsITEpfHwoYUcoYSwiaW5pdCIsITApLGIoKSl9LCRGPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jRyhhKTtyZXR1cm4gT2IoZCxiLGMpfSxkRz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jRyhhKSxmPU9iKGUsYixkKSxnPWMoZik7cmV0dXJuIGVbYl09Z30sYUc9ZnVuY3Rpb24oYSxiLGMpe2NHKGEpW2JdPWN9LGNHPWZ1bmN0aW9uKGEpe3ZhciBiPWtqKCJhdXRvRXZlbnRzU2V0dGluZ3MiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtiLmhhc093blByb3BlcnR5KGEpfHwoYlthXT17fSk7cmV0dXJuIGJbYV19LGVHPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17ZXZlbnQ6YiwiZ3RtLmVsZW1lbnQiOmEsImd0bS5lbGVtZW50Q2xhc3NlcyI6b2QoYSwiY2xhc3NOYW1lIiksImd0bS5lbGVtZW50SWQiOmEuZm9yfHxlZChhLCJpZCIpfHwKIiIsImd0bS5lbGVtZW50VGFyZ2V0IjphLmZvcm1UYXJnZXR8fG9kKGEsInRhcmdldCIpfHwiIn07YyYmKGRbImd0bS50cmlnZ2VycyJdPWMuam9pbigiLCIpKTtkWyJndG0uZWxlbWVudFVybCJdPShhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2EuZm9ybUFjdGlvbjoiIil8fGEuYWN0aW9ufHxvZChhLCJocmVmIil8fGEuc3JjfHxhLmNvZGV8fGEuY29kZWJhc2V8fCIiO3JldHVybiBkfTt2YXIgaEc9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhLmVsZW1lbnRzKXJldHVybiAwO2Zvcih2YXIgZD1iLmRhdGFzZXRbY10sZT0wLGY9MTtlPGEuZWxlbWVudHMubGVuZ3RoO2UrKyl7dmFyIGc9YS5lbGVtZW50c1tlXSxoPWcudGFnTmFtZS50b0xvd2VyQ2FzZSgpO2lmKCEoZkcuaW5kZXhPZihoKTwwfHxoPT09ImlucHV0IiYmZ0cuaW5kZXhPZihnLnR5cGUudG9Mb3dlckNhc2UoKSk+PTApKXtpZihnLmRhdGFzZXRbY109PT1kKXJldHVybiBmO2YrK319cmV0dXJuIDB9LGZHPVsiaW5wdXQiLCJzZWxlY3QiLCJ0ZXh0YXJlYSJdLGdHPVsiYnV0dG9uIiwiaGlkZGVuIiwiaW1hZ2UiLCJyZXNldCIsInN1Ym1pdCJdOwpmdW5jdGlvbiBpRyhhKXtpZihhLmZvcm0pe3ZhciBiO3JldHVybigoYj1hLmZvcm0pPT1udWxsPzA6Yi50YWdOYW1lKT9hLmZvcm06Qi5nZXRFbGVtZW50QnlJZChhLmZvcm0pfXJldHVybiBoZChhLFsiZm9ybSJdLDEwMCl9OwpmdW5jdGlvbiBtRyhhKXt9bUcuUD0iaW50ZXJuYWwuYWRkRm9ybUFiYW5kb25tZW50TGlzdGVuZXIiO2Z1bmN0aW9uIG5HKGEsYixjLGQpe30KbkcuUD0iaW50ZXJuYWwuYWRkRm9ybURhdGEiOwpmdW5jdGlvbiBzRyhhKXt9c0cuUD0iaW50ZXJuYWwuYWRkR2FTZW5kTGlzdGVuZXIiO2Z1bmN0aW9uIHRHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPWEuTnI7cmV0dXJuIEpBKGIudHlwZSxiLmluZGV4LGIubmFtZSl9ZnVuY3Rpb24gdUcoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9e29yaWdpbmF0aW5nRW50aXR5OnRHKGEpfTthLnByaW9yaXR5UXVldWUmJihiLnByaW9yaXR5UXVldWU9YS5wcmlvcml0eVF1ZXVlKTtyZXR1cm4gYn07ZnVuY3Rpb24gQ0coYSl7dmFyIGI9bWooInpvbmVzIik7cmV0dXJuIGI/Yi5nZXRJc0FsbG93ZWRGbih3aygpLGEpOmZ1bmN0aW9uKCl7cmV0dXJuITB9fWZ1bmN0aW9uIERHKCl7dmFyIGE9bWooInpvbmVzIik7YSYmYS51bnJlZ2lzdGVyQ2hpbGQod2soKSl9CmZ1bmN0aW9uIEVHKCl7a0IodmsoKSxmdW5jdGlvbihhKXt2YXIgYj1hLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdLGM9bWooInpvbmVzIik7cmV0dXJuIGM/Yy5pc0FjdGl2ZSh3aygpLGIpOiEwfSk7aEIodmsoKSxmdW5jdGlvbihhKXt2YXIgYixjO2I9YS5lbnRpdHlJZDtjPWEuc2VjdXJpdHlHcm91cHM7cmV0dXJuIENHKE51bWJlcihhLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdKSkoYixjKX0pfTt2YXIgRkc9ZnVuY3Rpb24oYSxiKXt0aGlzLnRhZ0lkPWE7dGhpcy5jYW5vbmljYWxJZD1ifTsKZnVuY3Rpb24gR0coYSxiKXt2YXIgYz10aGlzO3JldHVybiBhfUdHLlA9ImludGVybmFsLmxvYWRHb29nbGVUYWciO2Z1bmN0aW9uIEhHKGEpe3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShiKTtpZihjIGluc3RhbmNlb2YgS2QpcmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbigpe3ZhciBkPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxlPXRoaXMsZj1FZChYRih0aGlzKSxudWxsKTtmLmV2ZW50SWQ9YS5ldmVudElkO2YucHJpb3JpdHlJZD1hLnByaW9yaXR5SWQ7Zi5vcmlnaW5hbEV2ZW50RGF0YT1hLm9yaWdpbmFsRXZlbnREYXRhO3ZhciBnPWQubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBlLmV2YWx1YXRlKGwpfSksaD10aGlzLlQud2IoKTtoLnVlKGYpO3JldHVybiBjLk5jLmFwcGx5KGMsW2hdLmNvbmNhdCh3KGcpKSl9KX0pfTtmdW5jdGlvbiBJRyhhLGIsYyl7dmFyIGQ9dGhpczt9SUcuUD0iaW50ZXJuYWwuYWRkR29vZ2xlVGFnUmVzdHJpY3Rpb24iOwpmdW5jdGlvbiBQRyhhLGIpe31QRy5QPSJpbnRlcm5hbC5hZGRIaXN0b3J5Q2hhbmdlTGlzdGVuZXIiO2Z1bmN0aW9uIFFHKGEsYixjKXt9UUcucHVibGljTmFtZT0iYWRkV2luZG93RXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24gUkcoYSxiKXtyZXR1cm4hMH1SRy5wdWJsaWNOYW1lPSJhbGlhc0luV2luZG93IjtmdW5jdGlvbiBTRyhhLGIsYyl7fVNHLlA9ImludGVybmFsLmFwcGVuZFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gVEcoYSl7dmFyIGI7cmV0dXJuIGJ9ClRHLnB1YmxpY05hbWU9ImNhbGxJbldpbmRvdyI7ZnVuY3Rpb24gVUcoYSl7fVVHLnB1YmxpY05hbWU9ImNhbGxMYXRlciI7ZnVuY3Rpb24gVkcoYSl7fVZHLlA9ImNhbGxPbkRvbVJlYWR5IjtmdW5jdGlvbiBXRyhhKXt9V0cuUD0iY2FsbE9uV2luZG93TG9hZCI7dmFyIFlHPWZ1bmN0aW9uKGEsYil7dmFyIGM9bm0oWEcpfHx7fSxkPWNbYV18fHt9O2lmKGRbYl0pcmV0dXJuITE7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxkKTtlW2JdPSEwO3ZhciBmPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7ZlthXT1lO21tKFhHLGYpO3JldHVybiEwfSxYRz1qbS5iYS5ocjtmdW5jdGlvbiBaRyhhLGIpe2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPVlHKGEsYik7cmV0dXJuIGN9WkcuUD0iaW50ZXJuYWwuY2xhaW1EZXN0aW5hdGlvbiI7ZnVuY3Rpb24gJEcoYSxiKXt2YXIgYztyZXR1cm4gY30kRy5QPSJpbnRlcm5hbC5jb21wdXRlR3RtUGFyYW1ldGVyIjtmdW5jdGlvbiBhSChhLGIpe3ZhciBjPXRoaXM7fWFILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZUZpcnN0VHJ5IjtmdW5jdGlvbiBiSChhLGIpe3ZhciBjPXRoaXM7fWJILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZVJldHJ5IjtmdW5jdGlvbiBjSChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGM9YTtpZigha20oYykpdGhyb3cgRXJyb3IoImNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTt2YXIgZD1ubShjKTtiPVVkKGQsdGhpcy5ULDEpO3JldHVybiBifWNILlA9ImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBkSChhLGIpe3ZhciBjO3ZhciBlPVVkKGMsdGhpcy5ULEJoKFhGKHRoaXMpLlBiKCkpPzI6MSk7ZT09PXZvaWQgMCYmYyE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGV9ZEgucHVibGljTmFtZT0iY29weUZyb21EYXRhTGF5ZXIiOwpmdW5jdGlvbiBlSChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9ZUguUD0iaW50ZXJuYWwuY29weUZyb21EYXRhTGF5ZXJDYWNoZSI7ZnVuY3Rpb24gZkgoYSl7dmFyIGI7cmV0dXJuIGJ9ZkgucHVibGljTmFtZT0iY29weUZyb21XaW5kb3ciO2Z1bmN0aW9uIGdIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYix0aGlzLlQsMSl9Z0guUD0iaW50ZXJuYWwuY29weUtleUZyb21XaW5kb3ciO3ZhciBoSD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PWNvLmlhLmNiJiZmby5IW2FdPT09Ym8uTWEuVWUmJiFYbyhGLkQua2EpfTt2YXIgaUg9ZnVuY3Rpb24oKXtyZXR1cm4iMCJ9LGpIPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuIiI7dmFyIGI9WyJnY2xpZCIsImRjbGlkIiwid2JyYWlkIiwiX2dsIl07TSgxMDIpJiZiLnB1c2goImdicmFpZCIpO3JldHVybiBTaihhLGIsIjAiKX07dmFyIGtIPXt9LGxIPXt9LG1IPXt9LG5IPXt9LG9IPXt9LHBIPXt9LHFIPXt9LHJIPXt9LHNIPXt9LHRIPXt9LHVIPXt9LHZIPXt9LHdIPXt9LHhIPXt9LHlIPXt9LHpIPXt9LEFIPXt9LEJIPXt9LENIPXt9LERIPXt9LEVIPXt9LEZIPXt9LEdIPXt9LEhIPXt9LElIPXt9LEpIPXt9LEtIPShKSFtGLkQuZmJdPShrSFsyXT1baEhdLGtIKSxKSFtGLkQuWmZdPShsSFsyXT1baEhdLGxIKSxKSFtGLkQuSmldPShtSFsyXT1baEhdLG1IKSxKSFtGLkQuZ21dPShuSFsyXT1baEhdLG5IKSxKSFtGLkQuaG1dPShvSFsyXT1baEhdLG9IKSxKSFtGLkQuaW1dPShwSFsyXT1baEhdLHBIKSxKSFtGLkQuam1dPShxSFsyXT1baEhdLHFIKSxKSFtGLkQua21dPShySFsyXT1baEhdLHJIKSxKSFtGLkQuQmNdPShzSFsyXT1baEhdLHNIKSxKSFtGLkQuY2ddPSh0SFsyXT1baEhdLHRIKSxKSFtGLkQuZGddPSh1SFsyXT1baEhdLHVIKSxKSFtGLkQuZWddPSh2SFsyXT1baEhdLHZIKSxKSFtGLkQuZmddPSh3SFsyXT0KW2hIXSx3SCksSkhbRi5ELmdnXT0oeEhbMl09W2hIXSx4SCksSkhbRi5ELmhnXT0oeUhbMl09W2hIXSx5SCksSkhbRi5ELmlnXT0oekhbMl09W2hIXSx6SCksSkhbRi5ELmpnXT0oQUhbMl09W2hIXSxBSCksSkhbRi5ELmxiXT0oQkhbMV09W2hIXSxCSCksSkhbRi5ELkRkXT0oQ0hbMV09W2hIXSxDSCksSkhbRi5ELktkXT0oREhbMV09W2hIXSxESCksSkhbRi5ELkVlXT0oRUhbMV09W2hIXSxFSCksSkhbRi5ELkJmXT0oRkhbMV09W2Z1bmN0aW9uKGEpe3JldHVybiBNKDEwMikmJmhIKGEpfV0sRkgpLEpIW0YuRC5VY109KEdIWzFdPVtoSF0sR0gpLEpIW0YuRC56YV09KEhIWzFdPVtoSF0sSEgpLEpIW0YuRC5VYV09KElIWzFdPVtoSF0sSUgpLEpIKSxMSD17fSxNSD0oTEhbRi5ELmxiXT1pSCxMSFtGLkQuRGRdPWlILExIW0YuRC5LZF09aUgsTEhbRi5ELkVlXT1pSCxMSFtGLkQuQmZdPWlILExIW0YuRC5VY109ZnVuY3Rpb24oYSl7aWYoIUNkKGEpKXJldHVybnt9O3ZhciBiPUVkKGEsCm51bGwpO2RlbGV0ZSBiLm1hdGNoX2lkO3JldHVybiBifSxMSFtGLkQuemFdPWpILExIW0YuRC5VYV09akgsTEgpLE5IPXt9LE9IPXt9LFBIPShPSFtILkouWWFdPShOSFsyXT1baEhdLE5IKSxPSCksUUg9e307dmFyIFJIPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSD1hO3RoaXMuTj1iO3RoaXMuUj1jO3RoaXMuWj1kfTtSSC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2NvLmlhLmdkOmE7aWYoIXRoaXMuTi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSkpcmV0dXJuIHRoaXMuUi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSk/dGhpcy5aKHRoaXMuSCk6dGhpcy5IfTtSSC5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiBBZCh0aGlzLkgpPT09ImFycmF5Inx8Q2QodGhpcy5IKT9FZCh0aGlzLkgsbnVsbCk6dGhpcy5IfTsKdmFyIFNIPWZ1bmN0aW9uKCl7fSxUSD1mdW5jdGlvbihhLGIpe3RoaXMuY29uZGl0aW9ucz1hO3RoaXMuSD1ifSxVSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0oKGQ9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZFsyXSl8fFtdLGYsZz0oKGY9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZlsxXSl8fFtdO3JldHVybiBuZXcgUkgoYyxlLGcsYS5IW2JdfHxTSCl9LFZILFdIO3ZhciBZSD1mdW5jdGlvbihhKXthLks9ITA7YS5IPSExO2lmKElmKDUyKSl7aWYoTSg1MTYpJiZYSCgpKXt2YXIgYjthLnNldHRpbmdzPShiPWRhdGEucHJvZHVjdFNldHRpbmdzKSE9bnVsbD9iOnt9O2EuSD0hMH1lbHNle3ZhciBjO2Euc2V0dGluZ3M9KGM9cHJvZHVjdFNldHRpbmdzKSE9bnVsbD9jOnt9fXByb2R1Y3RTZXR0aW5ncz12b2lkIDA7ZGF0YS5wcm9kdWN0U2V0dGluZ3M9dm9pZCAwO3ZhciBkOyhkPUZGKSE9bnVsbCYmZm4uTiYmTSg1MTYpJiYoZC5IPWEuSD8iMSI6IjAiKX19LCRIPWZ1bmN0aW9uKGEpe3ZhciBiPVpIO2IuS3x8WUgoYik7cmV0dXJuIGIuc2V0dGluZ3NbYV19LFpIPW5ldyBmdW5jdGlvbigpe3RoaXMuc2V0dGluZ3M9e307dGhpcy5LPXRoaXMuSD0hMX07CmZ1bmN0aW9uIFhIKCl7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzJiYhcHJvZHVjdFNldHRpbmdzKXJldHVybiEwO2lmKCFkYXRhLnByb2R1Y3RTZXR0aW5nc3x8IXByb2R1Y3RTZXR0aW5nc3x8T2JqZWN0LmtleXMoZGF0YS5wcm9kdWN0U2V0dGluZ3MpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHByb2R1Y3RTZXR0aW5ncykubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgYSBpbiBwcm9kdWN0U2V0dGluZ3MpaWYoIWRhdGEucHJvZHVjdFNldHRpbmdzLmhhc093blByb3BlcnR5KGEpfHxkYXRhLnByb2R1Y3RTZXR0aW5nc1thXS5wcmVBdXRvUGlpIT09cHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkpcmV0dXJuITE7cmV0dXJuITB9O3ZhciBhST1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudE5hbWU9Yjt0aGlzLk09Yzt0aGlzLkg9e307dGhpcy5pc0Fib3J0ZWQ9ITE7dGhpcy50YXJnZXQ9YTt0aGlzLm1ldGFkYXRhPXt9O2Zvcih2YXIgZD1jLmV2ZW50TWV0YWRhdGF8fHt9LGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7Vih0aGlzLGcsZFtnXSl9fSxSPWZ1bmN0aW9uKGEsYil7dmFyIGMsZDtyZXR1cm4oYz1hLkhbYl0pPT1udWxsP3ZvaWQgMDooZD1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMsUShhLEguSi50ZykpfSxldT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKX0sVT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5ILGU7Yz09PXZvaWQgMD9lPXZvaWQgMDooVkghPW51bGx8fChWSD1uZXcgVEgoS0gsTUgpKSxlPVVIKFZILGIsYykpO2RbYl09ZX07CmFJLnByb3RvdHlwZS5tZXJnZUhpdERhdGFGb3JLZXk9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU7Yz0oZD10aGlzLkhbYV0pPT1udWxsP3ZvaWQgMDooZT1kLkspPT1udWxsP3ZvaWQgMDplLmNhbGwoZCk7aWYoIWMpcmV0dXJuIFUodGhpcyxhLGIpLCEwO2lmKCFDZChjKSlyZXR1cm4hMTtVKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsYikpO3JldHVybiEwfTt2YXIgYkk9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306Yjtmb3IodmFyIGM9bShPYmplY3Qua2V5cyhhLkgpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEuSFtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDpoLmNhbGwoZyl9cmV0dXJuIGJ9OwphSS5wcm90b3R5cGUuY29weVRvSGl0RGF0YT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Tyh0aGlzLk0sYSk7ZD09PXZvaWQgMCYmKGQ9Yik7aWYoemIoZCkmJmMhPT12b2lkIDApdHJ5e2Q9YyhkKX1jYXRjaChlKXt9ZCE9PXZvaWQgMCYmVSh0aGlzLGEsZCl9Owp2YXIgUT1mdW5jdGlvbihhLGIpe3ZhciBjPWEubWV0YWRhdGFbYl07aWYoYj09PUguSi50Zyl7dmFyIGQ7cmV0dXJuIGM9PW51bGw/dm9pZCAwOihkPWMuSyk9PW51bGw/dm9pZCAwOmQuY2FsbChjKX12YXIgZTtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGU9Yy5nZXRWYWx1ZSk9PW51bGw/dm9pZCAwOmUuY2FsbChjLFEoYSxILkoudGcpKX0sVj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5tZXRhZGF0YSxlO2M9PT12b2lkIDA/ZT1jOihXSCE9bnVsbHx8KFdIPW5ldyBUSChQSCxRSCkpLGU9VUgoV0gsYixjKSk7ZFtiXT1lfSxjST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEubWV0YWRhdGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEubWV0YWRhdGFbZV0pPT1udWxsP3ZvaWQgMDooaD0oZz1mKS5LKT09bnVsbD92b2lkIDA6CmguY2FsbChnKX1yZXR1cm4gYn0sZEk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRIKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO3JldHVybiBkJiZkW2JdIT09dm9pZCAwP2RbYl06Y30sWnU9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bmV3IGFJKChiPT1udWxsP3ZvaWQgMDpiLnRhcmdldCl8fGEudGFyZ2V0LChiPT1udWxsP3ZvaWQgMDpiLmV2ZW50TmFtZSl8fGEuZXZlbnROYW1lLChiPT1udWxsP3ZvaWQgMDpiLk0pfHxhLk0pLGQ9YkkoYSksZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtVKGMsZyxkW2ddKX1mb3IodmFyIGg9Y0koYSksbD1tKE9iamVjdC5rZXlzKGgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtWKGMscCxoW3BdKX1jLmlzQWJvcnRlZD1hLmlzQWJvcnRlZDtyZXR1cm4gY30sZUk9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLGM9Yi5ldmVudElkLGQ9Yi5wcmlvcml0eUlkOwpyZXR1cm4gZD9jKyJfIitkOlN0cmluZyhjKX07YUkucHJvdG90eXBlLmFjY2VwdD1mdW5jdGlvbigpe3ZhciBhPW9tKGptLmJhLlNpLHt9KSxiPWVJKHRoaXMpLGM9dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZDthW2JdfHwoYVtiXT17fSk7YVtiXVtjXT12aygpO3ZhciBkPWptLmJhLlNpO2lmKGttKGQpKXt2YXIgZTsoZT1sbShkKSk9PW51bGx8fGUubm90aWZ5KCl9fTthSS5wcm90b3R5cGUuY2FuQmVBY2NlcHRlZD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5TaSk7aWYoIWIpcmV0dXJuITA7dmFyIGM9YltlSSh0aGlzKV07aWYoIWMpcmV0dXJuITA7dmFyIGQ9Y1thIT1udWxsP2E6dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZF07cmV0dXJuIGQ9PT12b2lkIDB8fGQ9PT12aygpfTtmdW5jdGlvbiBmSShhKXtyZXR1cm57Z2V0RGVzdGluYXRpb25JZDpmdW5jdGlvbigpe3JldHVybiBhLnRhcmdldC5kZXN0aW5hdGlvbklkfSxnZXRFdmVudE5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gYS5ldmVudE5hbWV9LHNldEV2ZW50TmFtZTpmdW5jdGlvbihiKXthLmV2ZW50TmFtZT1ifSxnZXRIaXREYXRhOmZ1bmN0aW9uKGIpe3JldHVybiBSKGEsYil9LHNldEhpdERhdGE6ZnVuY3Rpb24oYixjKXtVKGEsYixjKX0sc2V0SGl0RGF0YUlmTm90RGVmaW5lZDpmdW5jdGlvbihiLGMpe1IoYSxiKT09PXZvaWQgMCYmVShhLGIsYyl9LGNvcHlUb0hpdERhdGE6ZnVuY3Rpb24oYixjKXthLmNvcHlUb0hpdERhdGEoYixjKX0sZ2V0TWV0YWRhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFEoYSxiKX0sc2V0TWV0YWRhdGE6ZnVuY3Rpb24oYixjKXtWKGEsYixjKX0saXNBYm9ydGVkOmZ1bmN0aW9uKCl7cmV0dXJuIGEuaXNBYm9ydGVkfSxhYm9ydDpmdW5jdGlvbigpe2EuaXNBYm9ydGVkPSEwfSwKZ2V0RnJvbUV2ZW50Q29udGV4dDpmdW5jdGlvbihiKXtyZXR1cm4gTyhhLk0sYil9LHJiOmZ1bmN0aW9uKCl7cmV0dXJuIGF9LGdldEhpdEtleXM6ZnVuY3Rpb24oKXtyZXR1cm4gZXUoYSl9LGdldE1lcmdlZFZhbHVlczpmdW5jdGlvbihiKXtyZXR1cm4gYS5NLmdldE1lcmdlZFZhbHVlcyhiLDMpfSxtZXJnZUhpdERhdGFGb3JLZXk6ZnVuY3Rpb24oYixjKXtyZXR1cm4gQ2QoYyk/YS5tZXJnZUhpdERhdGFGb3JLZXkoYixjKTohMX0sYWNjZXB0OmZ1bmN0aW9uKCl7YS5hY2NlcHQoKX0sY2FuQmVBY2NlcHRlZDpmdW5jdGlvbihiKXtyZXR1cm4gYS5jYW5CZUFjY2VwdGVkKGIpfX19O2Z1bmN0aW9uIGdJKGEsYil7dmFyIGM7aWYoIWVoKGEpfHwhZmgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBkPVRkKGIpfHx7fSxlPVRkKGEsdGhpcy5ULDEpLnJiKCksZj1lLk07ZC5vbWl0RXZlbnRDb250ZXh0JiYoZj1KQyhuZXcgeUMoZS5NLmV2ZW50SWQsZS5NLnByaW9yaXR5SWQpKSk7dmFyIGc9bmV3IGFJKGUudGFyZ2V0LGUuZXZlbnROYW1lLGYpO2lmKCFkLm9taXRIaXREYXRhKWZvcih2YXIgaD1iSShlKSxsPW0oT2JqZWN0LmtleXMoaCkpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO1UoZyxwLGhbcF0pfWlmKGQub21pdE1ldGFkYXRhKWcubWV0YWRhdGE9e307ZWxzZSBmb3IodmFyIHE9Y0koZSkscj1tKE9iamVjdC5rZXlzKHEpKSx0PXIubmV4dCgpOyF0LmRvbmU7dD0Kci5uZXh0KCkpe3ZhciB1PXQudmFsdWU7VihnLHUscVt1XSl9Zy5pc0Fib3J0ZWQ9ZS5pc0Fib3J0ZWQ7Yz1VZChmSShnKSx0aGlzLlQsMSk7cmV0dXJuIGN9Z0kuUD0iaW50ZXJuYWwuY29weVByZUhpdCI7ZnVuY3Rpb24gaEkoYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjLHRoaXMuVCwyKX1oSS5wdWJsaWNOYW1lPSJjcmVhdGVBcmd1bWVudHNRdWV1ZSI7ZnVuY3Rpb24gaUkoYSl7cmV0dXJuIFVkKGZ1bmN0aW9uKGMpe3ZhciBkPVNBKCk7aWYodHlwZW9mIGM9PT0iZnVuY3Rpb24iKWQoZnVuY3Rpb24oKXtjKGZ1bmN0aW9uKGYsZyxoKXt2YXIgbD0KU0EoKSxuPWwmJmwuZ2V0QnlOYW1lJiZsLmdldEJ5TmFtZShmKTtyZXR1cm4obmV3IEEuZ2FwbHVnaW5zLkxpbmtlcihuKSkuZGVjb3JhdGUoZyxoKX0pfSk7ZWxzZSBpZihBcnJheS5pc0FycmF5KGMpKXt2YXIgZT1TdHJpbmcoY1swXSkuc3BsaXQoIi4iKTtiW2UubGVuZ3RoPT09MT9lWzBdOmVbMV1dJiZkLmFwcGx5KG51bGwsYyl9ZWxzZSBpZihjPT09ImlzTG9hZGVkIilyZXR1cm4hIWQubG9hZGVkfSx0aGlzLlQsMSl9aUkuUD0iaW50ZXJuYWwuY3JlYXRlR2FDb21tYW5kUXVldWUiO2Z1bmN0aW9uIGpJKGEpe3JldHVybiBVZChmdW5jdGlvbigpe2lmKCF5YihlLnB1c2gpKXRocm93IEVycm9yKCJPYmplY3QgYXQgIithKyIgaW4gd2luZG93IGlzIG5vdCBhbiBhcnJheS4iKTtlLnB1c2guYXBwbHkoZSxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSx0aGlzLlQsCkJoKFhGKHRoaXMpLlBiKCkpPzI6MSl9akkucHVibGljTmFtZT0iY3JlYXRlUXVldWUiO2Z1bmN0aW9uIGtJKGEsYil7dmFyIGM9bnVsbDtpZighbGgoYSl8fCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dHJ5e3ZhciBkPShifHwiIikuc3BsaXQoIiIpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4iaWciLmluZGV4T2YoZSk+PTB9KS5qb2luKCIiKTtjPW5ldyBQZChuZXcgUmVnRXhwKGEsZCkpfWNhdGNoKGUpe31yZXR1cm4gY31rSS5QPSJpbnRlcm5hbC5jcmVhdGVSZWdleCI7ZnVuY3Rpb24gbEkoYSl7fWxJLlA9ImludGVybmFsLmRlY2xhcmVDb25zZW50U3RhdGUiO2Z1bmN0aW9uIG1JKGEpe3ZhciBiPSIiO3JldHVybiBifW1JLlA9ImludGVybmFsLmRlY29kZVVybEh0bWxFbnRpdGllcyI7ZnVuY3Rpb24gbkkoYSxiLGMpe3ZhciBkO3JldHVybiBkfW5JLlA9ImludGVybmFsLmRlY29yYXRlVXJsV2l0aEdhQ29va2llcyI7ZnVuY3Rpb24gb0koKXt9b0kuUD0iaW50ZXJuYWwuZGVmZXJDdXN0b21FdmVudHMiO2Z1bmN0aW9uIHBJKGEsYil7dHJ5e3JldHVybiBhLmNsb3Nlc3QoYil9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fTtmdW5jdGlvbiBxSSgpe3ZhciBhPUEuc2NyZWVuO3JldHVybnt3aWR0aDphP2Eud2lkdGg6MCxoZWlnaHQ6YT9hLmhlaWdodDowfX0KZnVuY3Rpb24gckkoYSl7aWYoQi5oaWRkZW4pcmV0dXJuITA7dmFyIGI9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihiLnRvcD09PWIuYm90dG9tfHxiLmxlZnQ9PT1iLnJpZ2h0fHwhQS5nZXRDb21wdXRlZFN0eWxlKXJldHVybiEwO3ZhciBjPUEuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpO2lmKGMudmlzaWJpbGl0eT09PSJoaWRkZW4iKXJldHVybiEwO2Zvcih2YXIgZD1hLGU9YztkOyl7aWYoZS5kaXNwbGF5PT09Im5vbmUiKXJldHVybiEwO3ZhciBmPWUub3BhY2l0eSxnPWUuZmlsdGVyO2lmKGcpe3ZhciBoPWcuaW5kZXhPZigib3BhY2l0eSgiKTtoPj0wJiYoZz1nLnN1YnN0cmluZyhoKzgsZy5pbmRleE9mKCIpIixoKSksZy5jaGFyQXQoZy5sZW5ndGgtMSk9PT0iJSImJihnPWcuc3Vic3RyaW5nKDAsZy5sZW5ndGgtMSkpLGY9U3RyaW5nKE1hdGgubWluKE51bWJlcihnKSxOdW1iZXIoZikpKSl9aWYoZiE9PXZvaWQgMCYmTnVtYmVyKGYpPD0wKXJldHVybiEwOyhkPWQucGFyZW50RWxlbWVudCkmJgooZT1BLmdldENvbXB1dGVkU3R5bGUoZCxudWxsKSl9cmV0dXJuITF9CnZhciB0ST1mdW5jdGlvbihhKXt2YXIgYj1zSSgpLGM9Yi5oZWlnaHQsZD1iLndpZHRoLGU9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxmPWUuYm90dG9tLWUudG9wLGc9ZS5yaWdodC1lLmxlZnQ7cmV0dXJuIGYmJmc/KDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS5sZWZ0LDApK01hdGgubWF4KGUucmlnaHQtZCwwKSkvZywxKSkqKDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS50b3AsMCkrTWF0aC5tYXgoZS5ib3R0b20tYywwKSkvZiwxKSk6MH0sc0k9ZnVuY3Rpb24oKXt2YXIgYT1CLmJvZHksYj1CLmRvY3VtZW50RWxlbWVudHx8YSYmYS5wYXJlbnRFbGVtZW50LGMsZDtpZihCLmNvbXBhdE1vZGUmJkIuY29tcGF0TW9kZSE9PSJCYWNrQ29tcGF0IiljPWI/Yi5jbGllbnRIZWlnaHQ6MCxkPWI/Yi5jbGllbnRXaWR0aDowO2Vsc2V7dmFyIGU9ZnVuY3Rpb24oZixnKXtyZXR1cm4gZiYmZz9NYXRoLm1pbihmLGcpOk1hdGgubWF4KGYsZyl9O2M9ZShiP2IuY2xpZW50SGVpZ2h0OjAsYT8KYS5jbGllbnRIZWlnaHQ6MCk7ZD1lKGI/Yi5jbGllbnRXaWR0aDowLGE/YS5jbGllbnRXaWR0aDowKX1yZXR1cm57d2lkdGg6ZCxoZWlnaHQ6Y319O3ZhciB2ST1mdW5jdGlvbihhKXtpZih1SSl7dmFyIGI9YWwoMjQsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGE+PTAmJmE8Yi5sZW5ndGgmJmJbYV0pe3ZhciBjOyhjPWJbYV0pPT1udWxsfHxjLmRpc2Nvbm5lY3QoKTtiW2FdPXZvaWQgMH19ZWxzZSBBLmNsZWFySW50ZXJ2YWwoYSl9LHlJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdPjE/Y1tkXT0xOmNbZF08MCYmKGNbZF09MCk7aWYodUkpe3ZhciBlPSExO2JkKGZ1bmN0aW9uKCl7ZXx8d0koYSxiLGMpKCl9KTtyZXR1cm4geEkoZnVuY3Rpb24oZil7ZT0hMDtmb3IodmFyIGc9e0hnOjB9O2cuSGc8Zi5sZW5ndGg7Zz17SGc6Zy5IZ30sZy5IZysrKWJkKGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe2EoZltoLkhnXSl9fShnKSl9LApiLGMpfXJldHVybiBjZCh3SShhLGIsYyksMUUzKX0sd0k9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoaCxsKXt2YXIgbj17dG9wOjAsYm90dG9tOjAscmlnaHQ6MCxsZWZ0OjAsd2lkdGg6MCxoZWlnaHQ6MH0scD17Ym91bmRpbmdDbGllbnRSZWN0OmguZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaW50ZXJzZWN0aW9uUmF0aW86bCxpbnRlcnNlY3Rpb25SZWN0Om4saXNJbnRlcnNlY3Rpbmc6bD4wLHJvb3RCb3VuZHM6bix0YXJnZXQ6aCx0aW1lOk5iKCl9O2JkKGZ1bmN0aW9uKCl7YShwKX0pfWZvcih2YXIgZT1bXSxmPVtdLGc9MDtnPGIubGVuZ3RoO2crKyllLnB1c2goMCksZi5wdXNoKC0xKTtjLnNvcnQoZnVuY3Rpb24oaCxsKXtyZXR1cm4gaC1sfSk7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBoPTA7aDxiLmxlbmd0aDtoKyspe3ZhciBsPXRJKGJbaF0pO2lmKGw+ZVtoXSlmb3IoO2ZbaF08Yy5sZW5ndGgtMSYmbD49Y1tmW2hdKzFdOylkKGJbaF0sbCksZltoXSsrO2Vsc2UgaWYobDwKZVtoXSlmb3IoO2ZbaF0+PTAmJmw8PWNbZltoXV07KWQoYltoXSxsKSxmW2hdLS07ZVtoXT1sfX19LHhJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9bmV3IEEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoYSx7dGhyZXNob2xkOmN9KSxlPTA7ZTxiLmxlbmd0aDtlKyspZC5vYnNlcnZlKGJbZV0pO2Zvcih2YXIgZj1hbCgyNCxmdW5jdGlvbigpe3JldHVybltdfSksZz0wO2c8Zi5sZW5ndGg7ZysrKWlmKCFmW2ddKXJldHVybiBmW2ddPWQsZztyZXR1cm4gZi5wdXNoKGQpLTF9LHVJPSEoIUEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXJ8fCFBLkludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpOwp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO0wodGhpcywiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iKTt2YXIgYz1UZChhKXx8e30sZD1KSSh7aW5jbHVkZVNlbGVjdG9yOiEhYy5pbmNsdWRlU2VsZWN0b3IsaW5jbHVkZVZpc2liaWxpdHk6ISFjLmluY2x1ZGVWaXNpYmlsaXR5LGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmMuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMsZmllbGRGaWx0ZXJzOmMuZmllbGRGaWx0ZXJzLHNlbGVjdE11bHRpcGxlRWxlbWVudHM6ISFjLnNlbGVjdE11bHRpcGxlRWxlbWVudHN9KTtiPW5ldyBrYjt2YXIgZT1uZXcgR2Q7Yi5zZXQoImVsZW1lbnRzIixlKTtmb3IodmFyIGY9ZC5lbGVtZW50cyxnPTA7ZzxmLmxlbmd0aDtnKyspZS5wdXNoKGdKKGZbZ10pKTtkLmdpIT09dm9pZCAwJiZiLnNldCgicHJlZmVycmVkRW1haWxFbGVtZW50IiwKZ0ooZC5naSkpO2Iuc2V0KCJzdGF0dXMiLGQuc3RhdHVzKTtpZihjLnJlYWRGcm9tRGF0YUxheWVyKXtoSihlLGMpO3ZhciBoPVBEKCksbD1oLnN0O2Iuc2V0KCJkYXRhTGF5ZXJTZWFyY2hUaW1lIixoLnZ0KTtiLnNldCgiZGF0YUxheWVyU2VhcmNoQ291bnQiLGwpfXJldHVybiBifQp2YXIgaUo9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgRkQuQmI6cmV0dXJuImVtYWlsIjtjYXNlIEZELmVlOnJldHVybiJwaG9uZV9udW1iZXIiO2Nhc2UgRkQuWGQ6cmV0dXJuImZpcnN0X25hbWUiO2Nhc2UgRkQuY2U6cmV0dXJuImxhc3RfbmFtZSI7Y2FzZSBGRC50ajpyZXR1cm4ic3RyZWV0IjtjYXNlIEZELmxpOnJldHVybiJjaXR5IjtjYXNlIEZELmpqOnJldHVybiJyZWdpb24iO2Nhc2UgRkQucWc6cmV0dXJuInBvc3RhbF9jb2RlIjtjYXNlIEZELnhmOnJldHVybiJjb3VudHJ5In19LGpKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYixjPWlKKGEuRGEpO2MhPT12b2lkIDAmJmIuc2V0KCJ0eXBlIixjKTtiLnNldCgidXNlckRhdGEiLGEuQ2EpO2Iuc2V0KCJ0YWdOYW1lIiwiRExZUiIpO3JldHVybiBifSxoSj1mdW5jdGlvbihhLGIpe3ZhciBjPVFEKCk7aWYoTSg1NjgpKWZvcih2YXIgZD1uZXcgU2V0KGEuaGMoKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIuZ2V0KCJ0eXBlIil9KSksCmU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlKSxoPWcubmV4dCgpLnZhbHVlLGw9Zy5uZXh0KCkudmFsdWUsbj1oLHA9bDtpZihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHMpYS5wdXNoKGpKKHApKTtlbHNle3ZhciBxPWlKKG4pO3EmJiFkLmhhcyhxKSYmYS5wdXNoKGpKKHApKX19ZWxzZSBjLmhhcyhGRC5CYikmJihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHN8fGEubGVuZ3RoKCk9PT0wKSYmYS5wdXNoKGpKKGMuZ2V0KEZELkJiKSkpfSxnSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsYS50YWdOYW1lKTthLnF1ZXJ5U2VsZWN0b3IhPT12b2lkIDAmJmIuc2V0KCJxdWVyeVNlbGVjdG9yIixhLnF1ZXJ5U2VsZWN0b3IpO2EuaXNWaXNpYmxlIT09dm9pZCAwJiZiLnNldCgiaXNWaXNpYmxlIixhLmlzVmlzaWJsZSk7aWYoTSg1NjgpKXt2YXIgYz1pSihhLnR5cGUpO2MhPT0Kdm9pZCAwJiZiLnNldCgidHlwZSIsYyl9ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNlIEZELkJiOmIuc2V0KCJ0eXBlIiwiZW1haWwiKX1yZXR1cm4gYn07ZkouUD0iaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSI7CnZhciBrSj1mdW5jdGlvbihhKXt2YXIgYj1oZChhLFsiYnV0dG9uIiwiaW5wdXQiXSw1MCk7aWYoIWIpcmV0dXJuIG51bGw7dmFyIGM9U3RyaW5nKGIudGFnTmFtZSkudG9Mb3dlckNhc2UoKTtpZihjPT09ImJ1dHRvbiIpcmV0dXJuIGI7aWYoYz09PSJpbnB1dCIpe3ZhciBkPWVkKGIsInR5cGUiKTtpZihkPT09ImJ1dHRvbiJ8fGQ9PT0ic3VibWl0Inx8ZD09PSJpbWFnZSJ8fGQ9PT0iZmlsZSJ8fGQ9PT0icmVzZXQiKXJldHVybiBifXJldHVybiBudWxsfSxsSj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yy50YXJnZXQ7aWYoZCl7dmFyIGU9JEYoYSwiaW5kaXZpZHVhbEVsZW1lbnRJZHMiLFtdKTtpZihlLmxlbmd0aD4wKXt2YXIgZj1lRyhkLGIsZSk7dUUoZil9dmFyIGc9ITEsaD0kRihhLCJjb21tb25CdXR0b25JZHMiLFtdKTtpZihoLmxlbmd0aD4wKXt2YXIgbD1rSihkKTtpZihsKXt2YXIgbj1lRyhsLGIsaCk7dUUobik7Zz0hMH19dmFyIHA9JEYoYSwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLAp7fSkscTtmb3IocSBpbiBwKWlmKHAuaGFzT3duUHJvcGVydHkocSkpe3ZhciByPWc/cFtxXS5maWx0ZXIoZnVuY3Rpb24odil7cmV0dXJuIGguaW5kZXhPZih2KT09PS0xfSk6cFtxXTtpZihyLmxlbmd0aCE9PTApe3ZhciB0PXBJKGQscSk7aWYodCl7dmFyIHU9ZUcodCxiLHIpO3VFKHUpfX19fX07CmZ1bmN0aW9uIG1KKGEsYil7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgYz1hP1RkKGEpOnt9LGQ9SmIoYy5tYXRjaENvbW1vbkJ1dHRvbnMpLGU9ISFjLmNzc1NlbGVjdG9yLGY9WkYoYik7TCh0aGlzLCJkZXRlY3RfY2xpY2tfZXZlbnRzIixjLm1hdGNoQ29tbW9uQnV0dG9ucyxjLmNzc1NlbGVjdG9yKTt2YXIgZz1jLnVzZVYyRXZlbnROYW1lPyJndG0uY2xpY2stdjIiOiJndG0uY2xpY2siLGg9Yy51c2VWMkV2ZW50TmFtZT8iZWNsIjoiY2wiLGw9ZnVuY3Rpb24ocCl7cC5wdXNoKGYpO3JldHVybiBwfTtpZihlfHxkKXtpZihkJiZkRyhoLCJjb21tb25CdXR0b25JZHMiLGwsW10pLGUpe3ZhciBuPUxiKFN0cmluZyhjLmNzc1NlbGVjdG9yKSk7ZEcoaCwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLApmdW5jdGlvbihwKXtwLmhhc093blByb3BlcnR5KG4pfHwocFtuXT1bXSk7bChwW25dKTtyZXR1cm4gcH0se30pfX1lbHNlIGRHKGgsImluZGl2aWR1YWxFbGVtZW50SWRzIixsLFtdKTtiRyhoLGZ1bmN0aW9uKCl7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKHApe2xKKGgsZyxwKX0sITApfSk7cmV0dXJuIGZ9bUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayI7CnZhciBuSj1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLk49ISFBLk11dGF0aW9uT2JzZXJ2ZXJ9O25KLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYodGhpcy5ILmxlbmd0aD09PTApe3ZhciBjPWZ1bmN0aW9uKCl7dmFyIGQ9Qi5ib2R5O2lmKGQpaWYoYi5OKShuZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKS5vYnNlcnZlKGQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSk7ZWxzZXt2YXIgZT0hMTskYyhkLCJET01Ob2RlSW5zZXJ0ZWQiLGZ1bmN0aW9uKCl7ZXx8KGU9ITAsYmQoZnVuY3Rpb24oKXtlPSExO2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKX0pfX07Qi5ib2R5P2MoKTpiZChjKX10aGlzLkgucHVzaChhKX07bkoucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7aWYodGhpcy5IKWZvcih2YXIgYj0wO2I8dGhpcy5ILmxlbmd0aDtiKyspdGhpcy5IW2JdPT09CmEmJnRoaXMuSC5zcGxpY2UoYiwxKX07dmFyIG9KPW5ldyBuSjsKZnVuY3Rpb24gdEooYSxiKXtyZXR1cm4gcH10Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVsZW1lbnRWaXNpYmlsaXR5IjtmdW5jdGlvbiB1Sigpe311Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVycm9yIjsKdmFyIHdKPWZ1bmN0aW9uKGEsYil7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPWJbY107ZSYmR2IoZCxmdW5jdGlvbihmLGcpe3ZKKGcsZSl9KX0pfSx6Sj1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0iIitiO2lmKGNbaF0pY1toXS5wdXNoKGEpO2Vsc2V7dmFyIGw9W2FdO2NbaF09bDt2YXIgbj1kW2hdO258fChuPXt9LGRbaF09bik7ZS5wdXNoKGZ1bmN0aW9uKHApe3ZhciBxPXAudGFyZ2V0O2lmKHEpe3ZhciByPWlHKHEpO2lmKHIpe3ZhciB0PXhKKHIsImd0bUZvcm1JbnRlcmFjdElkIixmKSx1PXhKKHEsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiLGcpO2lmKHQhPT1udWxsJiZ1IT09bnVsbCl7dmFyIHY9blt0XTt2Pyh2LlJiJiYoQS5jbGVhclRpbWVvdXQodi5SYiksdi5kZi5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLWZvcm0taW50ZXJhY3QtZmllbGQtaWQiKSE9PXUmJnZKKHYsbCkpLHYuZGY9cSx5Sih2LGwsYikpOihuW3RdPXtmb3JtOnIsZGY6cSxzZXF1ZW5jZU51bWJlcjowLApSYjpudWxsfSx5SihuW3RdLGwsYikpfX19fSl9fSx2Sj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZm9ybSxkPWEuZGYsZT1lRyhjLCJndG0uZm9ybUludGVyYWN0IixiKSxmPWMuYWN0aW9uO2YmJmYudGFnTmFtZSYmKGY9Yy5jbG9uZU5vZGUoITEpLmFjdGlvbik7ZVsiZ3RtLmVsZW1lbnRVcmwiXT1mO2VbImd0bS5pbnRlcmFjdGVkRm9ybU5hbWUiXT1jLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2MuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUxlbmd0aCJdPWMubGVuZ3RoO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkIl09ZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl09ZC5pZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZE5hbWUiXT1kLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2QuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXT1oRyhjLGQsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiKTsKZVsiZ3RtLmludGVyYWN0ZWRGb3JtRmllbGRUeXBlIl09ZC5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9bnVsbD9kLmdldEF0dHJpYnV0ZSgidHlwZSIpOnZvaWQgMDtlWyJndG0uaW50ZXJhY3RTZXF1ZW5jZU51bWJlciJdPWEuc2VxdWVuY2VOdW1iZXI7dUUoZSk7YS5zZXF1ZW5jZU51bWJlcisrO2EuUmI9bnVsbH0seUo9ZnVuY3Rpb24oYSxiLGMpe2M/YS5SYj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2SihhLGIpfSxjKTp2SihhLGIpfSx4Sj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7dHJ5e2lmKGQ9YS5kYXRhc2V0W2JdKXJldHVybiBkO2Q9U3RyaW5nKGMoKSk7YS5kYXRhc2V0W2JdPWR9Y2F0Y2goZSl7ZD1udWxsfXJldHVybiBkfTsKZnVuY3Rpb24gQUooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMiKX1dKTt2YXIgZD1aRihiKSxlPWEmJk51bWJlcihhLmdldCgiaW50ZXJ2YWwiKSk7ZT4wJiZpc0Zpbml0ZShlKXx8KGU9MCk7aWYoJEYoImZpbCIsImluaXQiLCExKSl7dmFyIGY9JEYoImZpbCIsInJlZyIpO2lmKGYpZihkLGUpO2Vsc2UgdGhyb3cgRXJyb3IoIkZhaWxlZCB0byByZWdpc3RlciB0cmlnZ2VyOiAiK2QpO31lbHNle3ZhciBnPXt9LGg9W10sbD17fSxuPTAscD1mdW5jdGlvbigpe3JldHVybiBuKyt9LHE9MCxyPWZ1bmN0aW9uKCl7cmV0dXJuIHErK307JGMoQiwiY2hhbmdlIiwKZnVuY3Rpb24odCl7Zm9yKHZhciB1PTA7dTxoLmxlbmd0aDt1KyspaFt1XSh0KX0pOyRjKEEsInBhZ2VoaWRlIixmdW5jdGlvbigpe3dKKGwsZyl9KTt6SihkLGUsZyxsLGgscCxyKTthRygiZmlsIiwicmVnIixmdW5jdGlvbih0LHUpe3pKKHQsdSxnLGwsaCxwLHIpfSk7YUcoImZpbCIsImluaXQiLCEwKX1yZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CnZhciBCSj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSRGKCJmc2wiLGM/Im52Lm13dCI6Im13dCIsMCksZztnPWM/JEYoImZzbCIsIm52LmlkcyIsW10pOiRGKCJmc2wiLCJpZHMiLFtdKTtpZighZy5sZW5ndGgpcmV0dXJuITA7dmFyIGg9ZUcoYSwiZ3RtLmZvcm1TdWJtaXQiLGcpLGw9YS5hY3Rpb247bCYmbC50YWdOYW1lJiYobD1hLmNsb25lTm9kZSghMSkuYWN0aW9uKTtQKDEyMSk7aWYobD09PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vdHIvIilyZXR1cm4gUCgxMjIpLCEwO2hbImd0bS5lbGVtZW50VXJsIl09bDtoWyJndG0uZm9ybUNhbmNlbGVkIl09YzthLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsJiYoaFsiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdPWEuZ2V0QXR0cmlidXRlKCJuYW1lIikpO2UmJihoWyJndG0uZm9ybVN1Ym1pdEVsZW1lbnQiXT1lLGhbImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXT1lLnZhbHVlKTtpZihkJiZmKXtpZighc0UoaCxqRShiLApmKSxmKSlyZXR1cm4hMX1lbHNlIEZ5KDEsImd0bS5mb3JtU3VibWl0Iiksc0UoaCxmdW5jdGlvbigpe30sZnx8MkUzKTtyZXR1cm4hMH0sQ0o9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPWZ1bmN0aW9uKGMpe3JldHVybiBDYihhLGZ1bmN0aW9uKGQpe3JldHVybiBkLmZvcm09PT1jfSl9O3JldHVybntzdG9yZTpmdW5jdGlvbihjLGQpe3ZhciBlPWIoYyk7ZT9lLmJ1dHRvbj1kOmEucHVzaCh7Zm9ybTpjLGJ1dHRvbjpkfSl9LGdldDpmdW5jdGlvbihjKXt2YXIgZD1iKGMpO2lmKGQpcmV0dXJuIGQuYnV0dG9ufX19LERKPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0O3JldHVybiBiJiZiIT09Il9zZWxmIiYmYiE9PSJfcGFyZW50IiYmYiE9PSJfdG9wIj8hMTohMH0sRUo9ZnVuY3Rpb24oKXt2YXIgYT1DSigpLGI9SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQpe3ZhciBlPWhkKGQsWyJidXR0b24iLAoiaW5wdXQiXSwxMDApO2lmKGUmJihlLnR5cGU9PT0ic3VibWl0Inx8ZS50eXBlPT09ImltYWdlIikmJmUubmFtZSYmZWQoZSwidmFsdWUiKSl7dmFyIGY9aUcoZSk7ZiYmYS5zdG9yZShmLGUpfX19LCExKTskYyhCLCJzdWJtaXQiLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKCFkKXJldHVybiBjLnJldHVyblZhbHVlO3ZhciBlPWMuZGVmYXVsdFByZXZlbnRlZHx8Yy5yZXR1cm5WYWx1ZT09PSExLGY9REooZCkmJiFlLGc9YS5nZXQoZCksaD0hMDtpZihCSihkLGZ1bmN0aW9uKCl7aWYoaCl7dmFyIGw9bnVsbCxuPXt9O2cmJihsPUIuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxsLnR5cGU9ImhpZGRlbiIsbC5uYW1lPWcubmFtZSxsLnZhbHVlPWcudmFsdWUsZC5hcHBlbmRDaGlsZChsKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybWFjdGlvbiIpJiYobi5hY3Rpb249ZC5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpLHhjKGQsZy5nZXRBdHRyaWJ1dGUoImZvcm1hY3Rpb24iKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtZW5jdHlwZSIpJiYKKG4uZW5jdHlwZT1kLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpLGQuc2V0QXR0cmlidXRlKCJlbmN0eXBlIixnLmdldEF0dHJpYnV0ZSgiZm9ybWVuY3R5cGUiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtbWV0aG9kIikmJihuLm1ldGhvZD1kLmdldEF0dHJpYnV0ZSgibWV0aG9kIiksZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsZy5nZXRBdHRyaWJ1dGUoImZvcm1tZXRob2QiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtdmFsaWRhdGUiKSYmKG4udmFsaWRhdGU9ZC5nZXRBdHRyaWJ1dGUoInZhbGlkYXRlIiksZC5zZXRBdHRyaWJ1dGUoInZhbGlkYXRlIixnLmdldEF0dHJpYnV0ZSgiZm9ybXZhbGlkYXRlIikpKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybXRhcmdldCIpJiYobi50YXJnZXQ9ZC5nZXRBdHRyaWJ1dGUoInRhcmdldCIpLGQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLGcuZ2V0QXR0cmlidXRlKCJmb3JtdGFyZ2V0IikpKSk7Yi5jYWxsKGQpO2wmJihkLnJlbW92ZUNoaWxkKGwpLG4uaGFzT3duUHJvcGVydHkoImFjdGlvbiIpJiYKeGMoZCxuLmFjdGlvbiksbi5oYXNPd25Qcm9wZXJ0eSgiZW5jdHlwZSIpJiZkLnNldEF0dHJpYnV0ZSgiZW5jdHlwZSIsbi5lbmN0eXBlKSxuLmhhc093blByb3BlcnR5KCJtZXRob2QiKSYmZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsbi5tZXRob2QpLG4uaGFzT3duUHJvcGVydHkoInZhbGlkYXRlIikmJmQuc2V0QXR0cmlidXRlKCJ2YWxpZGF0ZSIsbi52YWxpZGF0ZSksbi5oYXNPd25Qcm9wZXJ0eSgidGFyZ2V0IikmJmQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLG4udGFyZ2V0KSl9fSxlLGYsZykpaD0hMTtlbHNlIHJldHVybiBlfHwoYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITEpLCExO3JldHVybiBjLnJldHVyblZhbHVlfSwhMSk7SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ9ZnVuY3Rpb24oKXt2YXIgYz10aGlzLGQ9ITA7QkooYyxmdW5jdGlvbigpe2QmJmIuY2FsbChjKX0sITEsREooYykpJiYoYi5jYWxsKGMpLGQ9CiExKX19OwpmdW5jdGlvbiBGSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgZD1hJiZhLmdldCgid2FpdEZvclRhZ3MiKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiLHt3YWl0Rm9yVGFnczohIWR9KX1dKTt2YXIgZT1hJiZhLmdldCgiY2hlY2tWYWxpZGF0aW9uIiksZj1aRihiKTtpZihkKXt2YXIgZz1OdW1iZXIoYS5nZXQoIndhaXRGb3JUYWdzVGltZW91dCIpKTtnPjAmJmlzRmluaXRlKGcpfHwoZz0yRTMpO3ZhciBoPWZ1bmN0aW9uKG4pe3JldHVybiBNYXRoLm1heChnLG4pfTtkRygiZnNsIiwibXd0IixoLDApO2V8fGRHKCJmc2wiLCJudi5td3QiLGgsMCl9dmFyIGw9ZnVuY3Rpb24obil7bi5wdXNoKGYpOwpyZXR1cm4gbn07ZEcoImZzbCIsImlkcyIsbCxbXSk7ZXx8ZEcoImZzbCIsIm52LmlkcyIsbCxbXSk7JEYoImZzbCIsImluaXQiLCExKXx8KEVKKCksYUcoImZzbCIsImluaXQiLCEwKSk7cmV0dXJuIGZ9RkouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtU3VibWl0IjsKZnVuY3Rpb24gS0ooKXt2YXIgYT10aGlzO31LSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkdhU2VuZCI7CnZhciBNSj1mdW5jdGlvbihhLGIsYyxkKXtjPWM9PT12b2lkIDA/e306YztkPWQ9PT12b2lkIDA/W106ZDt2YXIgZT0iIitiO2lmKGNbZV0pY1tlXS5wdXNoKGEpO2Vsc2V7dmFyIGY9W2FdO2NbZV09Zjt2YXIgZz1MSigiZ3RtLmhpc3RvcnlDaGFuZ2UtdjIiKSxoPS0xO2QucHVzaChmdW5jdGlvbihsKXtoPj0wJiZBLmNsZWFyVGltZW91dChoKTtiP2g9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZyhsLGYpO2g9LTF9LGIpOmcobCxmKX0pfX0sTEo9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5ocmVmLGM9e3NvdXJjZTpudWxsLHN0YXRlOkEuaGlzdG9yeS5zdGF0ZXx8bnVsbCx1cmw6T2ooUmooYikpLGtiOkxqKFJqKGIpLCJmcmFnbWVudCIpfTtyZXR1cm4gZnVuY3Rpb24oZCxlKXt2YXIgZj1jLGc9e307Z1tmLnNvdXJjZV09ITA7Z1tkLnNvdXJjZV09ITA7aWYoIWcucG9wc3RhdGV8fCFnLmhhc2hjaGFuZ2V8fGYua2IhPT1kLmtiKXt2YXIgaD17ZXZlbnQ6YSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiOmQuc291cmNlLAoiZ3RtLm9sZFVybEZyYWdtZW50IjpjLmtiLCJndG0ubmV3VXJsRnJhZ21lbnQiOmQua2IsImd0bS5vbGRIaXN0b3J5U3RhdGUiOmMuc3RhdGUsImd0bS5uZXdIaXN0b3J5U3RhdGUiOmQuc3RhdGUsImd0bS5vbGRVcmwiOmMudXJsLCJndG0ubmV3VXJsIjpkLnVybH07ZSYmKGhbImd0bS50cmlnZ2VycyJdPWUuam9pbigiLCIpKTtjPWQ7dUUoaCl9fX0sTko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1BLmhpc3RvcnksZD1jW2FdO2lmKHliKGQpKXRyeXtjW2FdPWZ1bmN0aW9uKGUsZixnKXtkLmFwcGx5KGMsW10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpO3ZhciBoPUEubG9jYXRpb24uaHJlZjtiKHtzb3VyY2U6YSxzdGF0ZTplLHVybDpPaihSaihoKSksa2I6TGooUmooaCksImZyYWdtZW50Iil9KX19Y2F0Y2goZSl7fX0sUEo9ZnVuY3Rpb24oYSl7QS5hZGRFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJwb3BzdGF0ZSIsc3RhdGU6Yi5zdGF0ZSwKdXJsOk9qKFJqKGMpKSxrYjpMaihSaihjKSwiZnJhZ21lbnQiKX0pfSl9LFFKPWZ1bmN0aW9uKGEpe0EuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJoYXNoY2hhbmdlIixzdGF0ZTpudWxsLHVybDpPaihSaihjKSksa2I6TGooUmooYyksImZyYWdtZW50Iil9KX0pfSxPSj1mdW5jdGlvbihhKXt2YXIgYixjO3JldHVybigoYj1hLnRhcmdldCk9PW51bGw/dm9pZCAwOihjPWIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpjLmhyZWYpfHxBLmxvY2F0aW9uLmhyZWZ9OwpmdW5jdGlvbiBSSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiKX1dKTt2YXIgZD1hJiZhLmdldCgidXNlVjJFdmVudE5hbWUiKT8iZWhsIjoiaGwiLGU9TnVtYmVyKGEmJmEuZ2V0KCJpbnRlcnZhbCIpKTtlPjAmJmlzRmluaXRlKGUpfHwoZT0wKTt2YXIgZjtpZighJEYoZCwiaW5pdCIsITEpKXt2YXIgZz17fSxoPVtdLGw7ZD09PSJlaGwiPyhsPWZ1bmN0aW9uKHApe2Zvcih2YXIgcT0wO3E8aC5sZW5ndGg7cSsrKWhbcV0ocCl9LGY9WkYoYiksTUooZixlLGcsaCksYUcoZCwicmVnIixmdW5jdGlvbihwLHEpe01KKHAscSxnLGgpfSkpOmw9TEooImd0bS5oaXN0b3J5Q2hhbmdlIik7ClFKKGwpO1BKKGwpO05KKCJwdXNoU3RhdGUiLGwpO05KKCJyZXBsYWNlU3RhdGUiLGwpO2FHKGQsImluaXQiLCEwKX1lbHNlIGlmKGQ9PT0iZWhsIil7dmFyIG49JEYoZCwicmVnIik7biYmKGY9WkYoYiksbihmLGUpKX1kPT09ImhsIiYmKGY9dm9pZCAwKTtyZXR1cm4gZn1SSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkhpc3RvcnlDaGFuZ2UiO3ZhciBTSj1bImh0dHA6Ly8iLCJodHRwczovLyIsImphdmFzY3JpcHQ6IiwiZmlsZTovLyJdOwp2YXIgVEo9ZnVuY3Rpb24oYSxiKXtpZihhLndoaWNoPT09Mnx8YS5jdHJsS2V5fHxhLnNoaWZ0S2V5fHxhLmFsdEtleXx8YS5tZXRhS2V5KXJldHVybiExO3ZhciBjPW9kKGIsImhyZWYiKTtpZihjLmluZGV4T2YoIjoiKSE9PS0xJiYhU0ouc29tZShmdW5jdGlvbihoKXtyZXR1cm4gU2IoYyxoKX0pKXJldHVybiExO3ZhciBkPWMuaW5kZXhPZigiIyIpLGU9b2QoYiwidGFyZ2V0Iik7aWYoZSYmZSE9PSJfc2VsZiImJmUhPT0iX3BhcmVudCImJmUhPT0iX3RvcCJ8fGQ9PT0wKXJldHVybiExO2lmKGQ+MCl7dmFyIGY9T2ooUmooYykpLGc9T2ooUmooQS5sb2NhdGlvbi5ocmVmKSk7cmV0dXJuIGYhPT1nfXJldHVybiEwfSxVSj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1MaihSaigoYi5hdHRyaWJ1dGVzJiZiLmF0dHJpYnV0ZXMuZm9ybWFjdGlvbj9iLmZvcm1BY3Rpb246IiIpfHxiLmFjdGlvbnx8b2QoYiwiaHJlZiIpfHxiLnNyY3x8Yi5jb2RlfHxiLmNvZGViYXNlfHwiIiksImhvc3QiKSwKZD0wO2Q8YS5sZW5ndGg7ZCsrKXRyeXtpZigobmV3IFJlZ0V4cChhW2RdKSkudGVzdChjKSlyZXR1cm4hMX1jYXRjaChlKXt9cmV0dXJuITB9LFZKPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShjKXt2YXIgZD1jLnRhcmdldDtpZihkJiZjLndoaWNoIT09MyYmIShjLkh8fGMudGltZVN0YW1wJiZjLnRpbWVTdGFtcD09PWIpKXtiPWMudGltZVN0YW1wO2Q9aGQoZCxbImEiLCJhcmVhIl0sMTAwKTtpZighZClyZXR1cm4gYy5yZXR1cm5WYWx1ZTt2YXIgZT1jLmRlZmF1bHRQcmV2ZW50ZWR8fGMucmV0dXJuVmFsdWU9PT0hMSxmPSRGKCJsY2wiLGU/Im52Lm13dCI6Im13dCIsMCksZztnPWU/JEYoImxjbCIsIm52LmlkcyIsW10pOiRGKCJsY2wiLCJpZHMiLFtdKTtmb3IodmFyIGg9W10sbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1nW2xdLHA9JEYoImxjbCIsImFmZi5tYXAiLHt9KVtuXTtwJiYhVUoocCxkKXx8aC5wdXNoKG4pfWlmKGgubGVuZ3RoKXt2YXIgcT1USihjLGQpLHI9ZUcoZCwiZ3RtLmxpbmtDbGljayIsCmgpO3JbImd0bS5lbGVtZW50VGV4dCJdPWZkKGQpO3JbImd0bS53aWxsT3BlbkluTmV3V2luZG93Il09IXE7aWYocSYmIWUmJmYmJmQuaHJlZil7dmFyIHQ9ISFDYihTdHJpbmcob2QoZCwicmVsIil8fCIiKS5zcGxpdCgiICIpLGZ1bmN0aW9uKHkpe3JldHVybiB5LnRvTG93ZXJDYXNlKCk9PT0ibm9yZWZlcnJlciJ9KSx1PUFbKG9kKGQsInRhcmdldCIpfHwiX3NlbGYiKS5zdWJzdHJpbmcoMSldLHY9ITAseD10RShmdW5jdGlvbigpe3ZhciB5O2lmKHk9diYmdSl7dmFyIHo7YTppZih0KXt2YXIgQzt0cnl7Qz1uZXcgTW91c2VFdmVudChjLnR5cGUse2J1YmJsZXM6ITB9KX1jYXRjaChEKXtpZighQi5jcmVhdGVFdmVudCl7ej0hMTticmVhayBhfUM9Qi5jcmVhdGVFdmVudCgiTW91c2VFdmVudHMiKTtDLmluaXRFdmVudChjLnR5cGUsITAsITApfUMuSD0hMDtjLnRhcmdldC5kaXNwYXRjaEV2ZW50KEMpO3o9ITB9ZWxzZSB6PSExO3k9IXp9eSYmKHUubG9jYXRpb24uaHJlZj1vZChkLAoiaHJlZiIpKX0sZik7aWYoaUUocix4LGYpKXY9ITE7ZWxzZSByZXR1cm4gYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITF9ZWxzZSBzRShyLGZ1bmN0aW9uKCl7fSxmfHwyRTMpO3JldHVybiEwfX19dmFyIGI9MDskYyhCLCJjbGljayIsYSwhMSk7JGMoQiwiYXV4Y2xpY2siLGEsITEpfTsKZnVuY3Rpb24gV0ooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7dmFyIGQ9VGQoYSk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiLGQpfV0pO3ZhciBlPWQmJiEhZC53YWl0Rm9yVGFncyxmPWQmJiEhZC5jaGVja1ZhbGlkYXRpb24sZz1kP2QuYWZmaWxpYXRlRG9tYWluczp2b2lkIDAsaD1aRihiKTtpZihlKXt2YXIgbD1OdW1iZXIoZC53YWl0Rm9yVGFnc1RpbWVvdXQpO2w+MCYmaXNGaW5pdGUobCl8fChsPTJFMyk7dmFyIG49ZnVuY3Rpb24ocSl7cmV0dXJuIE1hdGgubWF4KGwscSl9O2RHKCJsY2wiLCJtd3QiLG4sMCk7Znx8ZEcoImxjbCIsIm52Lm13dCIsbiwwKX12YXIgcD1mdW5jdGlvbihxKXtxLnB1c2goaCk7CnJldHVybiBxfTtkRygibGNsIiwiaWRzIixwLFtdKTtmfHxkRygibGNsIiwibnYuaWRzIixwLFtdKTtnJiZkRygibGNsIiwiYWZmLm1hcCIsZnVuY3Rpb24ocSl7cVtoXT1nO3JldHVybiBxfSx7fSk7JEYoImxjbCIsImluaXQiLCExKXx8KFZKKCksYUcoImxjbCIsImluaXQiLCEwKSk7cmV0dXJuIGh9V0ouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25MaW5rQ2xpY2siOwp2YXIgWEo9ZnVuY3Rpb24oYSl7cmV0dXJuICRGKCJzZGwiLGEse30pfSxZSj1mdW5jdGlvbihhLGIsYyl7aWYoYil7dmFyIGQ9QXJyYXkuaXNBcnJheShhKT9hOlthXTtkRygic2RsIixjLGZ1bmN0aW9uKGUpe2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1TdHJpbmcoZFtmXSk7ZS5oYXNPd25Qcm9wZXJ0eShnKXx8KGVbZ109W10pO2VbZ10ucHVzaChiKX1yZXR1cm4gZX0se30pfX0sYUs9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7WkooYSxiKTskSihjLCEwKX1yZXR1cm4gY30sYks9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aD9nPUEuc2V0VGltZW91dChjLGUpOihnPTAsWkooYSxiKSwkSihkKSk7aD0hMX1mdW5jdGlvbiBkKCl7ZiYmYigpO2c/aD0hMDooZz1BLnNldFRpbWVvdXQoYyxlKSxhRygic2RsIiwicGVuZGluZyIsITApKX12YXIgZT0yNTAsZj0hMTtCLnNjcm9sbGluZ0VsZW1lbnQmJkIuZG9jdW1lbnRFbGVtZW50JiYoZT01MCxmPSEwKTt2YXIgZz0KMCxoPSExO3JldHVybiBkfSwkSj1mdW5jdGlvbihhLGIpeyRGKCJzZGwiLCJpbml0IiwhMSkmJiFjSygpJiYoYj9hZChBLCJzY3JvbGxlbmQiLGEpOmFkKEEsInNjcm9sbCIsYSksYWQoQSwicmVzaXplIixhKSxhRygic2RsIiwiaW5pdCIsITEpKX0sWko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iKCksZD1jLmRlcHRoWCxlPWMuZGVwdGhZLGY9ZC9hLnNjcm9sbFdpZHRoKjEwMCxnPWUvYS5zY3JvbGxIZWlnaHQqMTAwO2RLKGQsImhvcml6LnBpeCIsIlBJWEVMUyIsImhvcml6b250YWwiKTtkSyhmLCJob3Jpei5wY3QiLCJQRVJDRU5UIiwiaG9yaXpvbnRhbCIpO2RLKGUsInZlcnQucGl4IiwiUElYRUxTIiwidmVydGljYWwiKTtkSyhnLCJ2ZXJ0LnBjdCIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbCIpO2FHKCJzZGwiLCJwZW5kaW5nIiwhMSl9LGRLPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVhKKGIpLGY9e30sZztmb3IoZyBpbiBlKWlmKGY9e3FmOmYucWZ9LGYucWY9ZyxlLmhhc093blByb3BlcnR5KGYucWYpKXt2YXIgaD0KTnVtYmVyKGYucWYpO2lmKCEoYTxoKSl7dmFyIGw9e307dUUoKGwuZXZlbnQ9Imd0bS5zY3JvbGxEZXB0aCIsbFsiZ3RtLnNjcm9sbFRocmVzaG9sZCJdPWgsbFsiZ3RtLnNjcm9sbFVuaXRzIl09Yy50b0xvd2VyQ2FzZSgpLGxbImd0bS5zY3JvbGxEaXJlY3Rpb24iXT1kLGxbImd0bS50cmlnZ2VycyJdPWVbZi5xZl0uam9pbigiLCIpLGwpKTtkRygic2RsIixiLGZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbihwKXtkZWxldGUgcFtuLnFmXTtyZXR1cm4gcH19KGYpLHt9KX19fSxmSz1mdW5jdGlvbigpe3ZhciBhPWRHKCJzZGwiLCJzY3IiLGZ1bmN0aW9uKGMpe2N8fChjPUIuc2Nyb2xsaW5nRWxlbWVudHx8Qi5ib2R5JiZCLmJvZHkucGFyZW50Tm9kZSk7cmV0dXJuIGN9LG51bGwpLGI9ZEcoInNkbCIsImRlcHRoIixmdW5jdGlvbihjKXtjfHwoYz1lSyhhKSk7cmV0dXJuIGN9KTtyZXR1cm57c2Nyb2xsaW5nRWxlbWVudDphLHZyOmJ9fSxlSz1mdW5jdGlvbihhKXt2YXIgYj0wLGM9CjA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGQ9c0koKSxlPWQuaGVpZ2h0O2I9TWF0aC5tYXgoYS5zY3JvbGxMZWZ0K2Qud2lkdGgsYik7Yz1NYXRoLm1heChhLnNjcm9sbFRvcCtlLGMpO3JldHVybntkZXB0aFg6YixkZXB0aFk6Y319fSxjSz1mdW5jdGlvbigpe3JldHVybiEhKE9iamVjdC5rZXlzKFhKKCJob3Jpei5waXgiKSkubGVuZ3RofHxPYmplY3Qua2V5cyhYSigiaG9yaXoucGN0IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGl4IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGN0IikpLmxlbmd0aCl9OwpmdW5jdGlvbiBnSyhhLGIpe3ZhciBjPXRoaXM7aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X3Njcm9sbF9ldmVudHMiKX1dKTt2YXIgZD1mSygpLGU9ZC5zY3JvbGxpbmdFbGVtZW50LGY9ZC52cjtpZighZSlyZXR1cm47dmFyIGc9WkYoYiksaD1UZChhKTtzd2l0Y2goaC5ob3Jpem9udGFsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC5ob3Jpem9udGFsVGhyZXNob2xkcyxnLCJob3Jpei5waXgiKTticmVhaztjYXNlICJQRVJDRU5UIjpZSihoLmhvcml6b250YWxUaHJlc2hvbGRzLGcsImhvcml6LnBjdCIpfXN3aXRjaChoLnZlcnRpY2FsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsCmcsInZlcnQucGl4Iik7YnJlYWs7Y2FzZSAiUEVSQ0VOVCI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsZywidmVydC5wY3QiKX0kRigic2RsIiwiaW5pdCIsITEpPyRGKCJzZGwiLCJwZW5kaW5nIiwhMSl8fGJkKGZ1bmN0aW9uKCl7WkooZSxmKX0pOihhRygic2RsIiwiaW5pdCIsITApLGFHKCJzZGwiLCJwZW5kaW5nIiwhMCksYmQoZnVuY3Rpb24oKXtaSihlLGYpO2lmKGNLKCkpe3ZhciBsPWJLKGUsZik7Im9uc2Nyb2xsZW5kImluIEE/KGw9YUsoZSxmKSwkYyhBLCJzY3JvbGxlbmQiLGwpKTokYyhBLCJzY3JvbGwiLGwpOyRjKEEsInJlc2l6ZSIsbCl9ZWxzZSBhRygic2RsIiwiaW5pdCIsITEpfSkpO3JldHVybiBnfWdLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uU2Nyb2xsIjtmdW5jdGlvbiBoSyhhKXtyZXR1cm4gZnVuY3Rpb24oKXtpZihhLmxpbWl0JiZhLmdrPj1hLmxpbWl0KWEuYWkmJkEuY2xlYXJJbnRlcnZhbChhLmFpKTtlbHNle2EuZ2srKzt2YXIgYj1OYigpO3VFKHtldmVudDphLmV2ZW50TmFtZSwiZ3RtLnRpbWVySWQiOmEuYWksImd0bS50aW1lckV2ZW50TnVtYmVyIjphLmdrLCJndG0udGltZXJJbnRlcnZhbCI6YS5pbnRlcnZhbCwiZ3RtLnRpbWVyTGltaXQiOmEubGltaXQsImd0bS50aW1lclN0YXJ0VGltZSI6YS5NbywiZ3RtLnRpbWVyQ3VycmVudFRpbWUiOmIsImd0bS50aW1lckVsYXBzZWRUaW1lIjpiLWEuTW8sImd0bS50cmlnZ2VycyI6YS5MdH0pfX19CmZ1bmN0aW9uIGlLKGEsYil7CnJldHVybiBmfWlLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uVGltZXIiOwp2YXIgaks9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoKXt2YXIgZz1hKCk7Zis9ZT8oTmIoKS1lKSpnLnBsYXliYWNrUmF0ZS8xRTM6MDtlPU5iKCl9dmFyIGU9MCxmPTA7cmV0dXJue2NyZWF0ZUV2ZW50OmZ1bmN0aW9uKGcsaCxsKXt2YXIgbj1hKCkscD1uLlduLHE9bD9NYXRoLnJvdW5kKGwpOmg/TWF0aC5yb3VuZChuLlduKmgpOk1hdGgucm91bmQobi5Hcikscj1oIT09dm9pZCAwP01hdGgucm91bmQoaCoxMDApOnA8PTA/MDpNYXRoLnJvdW5kKHEvcCoxMDApLHQ9Qi5oaWRkZW4/ITE6dEkoYyk+PS41O2QoKTt2YXIgdT12b2lkIDA7YiE9PXZvaWQgMCYmKHU9W2JdKTt2YXIgdj1lRyhjLCJndG0udmlkZW8iLHUpO3ZbImd0bS52aWRlb1Byb3ZpZGVyIl09InlvdXR1YmUiO3ZbImd0bS52aWRlb1N0YXR1cyJdPWc7dlsiZ3RtLnZpZGVvVXJsIl09bi51cmw7dlsiZ3RtLnZpZGVvVGl0bGUiXT1uLnRpdGxlO3ZbImd0bS52aWRlb0R1cmF0aW9uIl09TWF0aC5yb3VuZChwKTt2WyJndG0udmlkZW9DdXJyZW50VGltZSJdPQpNYXRoLnJvdW5kKHEpO3ZbImd0bS52aWRlb0VsYXBzZWRUaW1lIl09TWF0aC5yb3VuZChmKTt2WyJndG0udmlkZW9QZXJjZW50Il09cjt2WyJndG0udmlkZW9WaXNpYmxlIl09dDtyZXR1cm4gdn0sbXQ6ZnVuY3Rpb24oKXtlPU5iKCl9LEJqOmZ1bmN0aW9uKCl7ZCgpfX19O3ZhciBBYz1BYShbImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iXSksa0s9WyJ3d3cueW91dHViZS5jb20iLCJ3d3cueW91dHViZS1ub2Nvb2tpZS5jb20iXSxsSzsKdmFyIG1LPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLm1hcChmdW5jdGlvbihnKXtyZXR1cm57dGU6ZyxKbzpnLHdvOnZvaWQgMH19KTtpZighYi5sZW5ndGgpcmV0dXJuIGQ7dmFyIGU9Yi5tYXAoZnVuY3Rpb24oZyl7cmV0dXJue3RlOmcqYyxKbzp2b2lkIDAsd286Z319KTtpZighZC5sZW5ndGgpcmV0dXJuIGU7dmFyIGY9ZC5jb25jYXQoZSk7Zi5zb3J0KGZ1bmN0aW9uKGcsaCl7cmV0dXJuIGcudGUtaC50ZX0pO3JldHVybiBmfSxuSz1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWFbY108MHx8Yi5wdXNoKGFbY10pO2Iuc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLWV9KTtyZXR1cm4gYn0sb0s9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7Zm9yKHZhciBiPVtdLGM9MDtjPGEubGVuZ3RoO2MrKylhW2NdPjEwMHx8YVtjXTwwfHwoYltjXT1hW2NdLzEwMCk7Yi5zb3J0KGZ1bmN0aW9uKGQsZSl7cmV0dXJuIGQtCmV9KTtyZXR1cm4gYn0scEs9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO2Z1bmN0aW9uIGUoKXt0PWpLKGZ1bmN0aW9uKCl7cmV0dXJue3VybDp4LHRpdGxlOnksV246dixHcjphLmdldEN1cnJlbnRUaW1lKCkscGxheWJhY2tSYXRlOnp9fSxiLnJmLGEuZ2V0SWZyYW1lKCkpO3Y9MDt5PXg9IiI7ej0xO3JldHVybiBmfWZ1bmN0aW9uIGYoRyl7c3dpdGNoKEcpe2Nhc2UgMTp2PU1hdGgucm91bmQoYS5nZXREdXJhdGlvbigpKTt4PWEuZ2V0VmlkZW9VcmwoKTtpZihhLmdldFZpZGVvRGF0YSl7dmFyIE49YS5nZXRWaWRlb0RhdGEoKTt5PU4/Ti50aXRsZToiIn16PWEuZ2V0UGxheWJhY2tSYXRlKCk7Yi55cj91RSh0LmNyZWF0ZUV2ZW50KCJzdGFydCIpKTp0LkJqKCk7dT1tSyhiLmV0LGIuY3QsYS5nZXREdXJhdGlvbigpKTtyZXR1cm4gZyhHKTtkZWZhdWx0OnJldHVybiBmfX1mdW5jdGlvbiBnKCl7Qz1hLmdldEN1cnJlbnRUaW1lKCk7RD1NYigpLmdldFRpbWUoKTt0Lm10KCk7cigpO3JldHVybiBofQpmdW5jdGlvbiBoKEcpe3ZhciBOO3N3aXRjaChHKXtjYXNlIDA6cmV0dXJuIG4oRyk7Y2FzZSAyOk49InBhdXNlIjtjYXNlIDM6dmFyIFM9YS5nZXRDdXJyZW50VGltZSgpLUM7Tj1NYXRoLmFicygoTWIoKS5nZXRUaW1lKCktRCkvMUUzKnotUyk+MT8ic2VlayI6Tnx8ImJ1ZmZlcmluZyI7YS5nZXRDdXJyZW50VGltZSgpJiYoYi54cj91RSh0LmNyZWF0ZUV2ZW50KE4pKTp0LkJqKCkpO3EoKTtyZXR1cm4gbDtjYXNlIC0xOnJldHVybiBlKEcpO2RlZmF1bHQ6cmV0dXJuIGh9fWZ1bmN0aW9uIGwoRyl7c3dpdGNoKEcpe2Nhc2UgMDpyZXR1cm4gbihHKTtjYXNlIDE6cmV0dXJuIGcoRyk7Y2FzZSAtMTpyZXR1cm4gZShHKTtkZWZhdWx0OnJldHVybiBsfX1mdW5jdGlvbiBuKCl7Zm9yKDtkOyl7dmFyIEc9YztBLmNsZWFyVGltZW91dChkKTtHKCl9Yi53ciYmdUUodC5jcmVhdGVFdmVudCgiY29tcGxldGUiLDEpKTtyZXR1cm4gZSgtMSl9ZnVuY3Rpb24gcCgpe31mdW5jdGlvbiBxKCl7ZCYmCihBLmNsZWFyVGltZW91dChkKSxkPTAsYz1wKX1mdW5jdGlvbiByKCl7aWYodS5sZW5ndGgmJnohPT0wKXt2YXIgRz0tMSxOO2Rve049dVswXTtpZihOLnRlPmEuZ2V0RHVyYXRpb24oKSlyZXR1cm47Rz0oTi50ZS1hLmdldEN1cnJlbnRUaW1lKCkpL3o7aWYoRzwwJiYodS5zaGlmdCgpLHUubGVuZ3RoPT09MCkpcmV0dXJufXdoaWxlKEc8MCk7Yz1mdW5jdGlvbigpe2Q9MDtjPXA7dS5sZW5ndGg+MCYmdVswXS50ZT09PU4udGUmJih1LnNoaWZ0KCksdUUodC5jcmVhdGVFdmVudCgicHJvZ3Jlc3MiLE4ud28sTi5KbykpKTtyKCl9O2Q9QS5zZXRUaW1lb3V0KGMsRyoxRTMpfX12YXIgdCx1PVtdLHYseCx5LHosQyxELEk9ZSgtMSk7ZD0wO2M9cDtyZXR1cm57b25TdGF0ZUNoYW5nZTpmdW5jdGlvbihHKXtJPUkoRyl9LG9uUGxheWJhY2tSYXRlQ2hhbmdlOmZ1bmN0aW9uKEcpe0M9YS5nZXRDdXJyZW50VGltZSgpO0Q9TWIoKS5nZXRUaW1lKCk7dC5CaigpO3o9RztxKCk7cigpfX19LHJLPQpmdW5jdGlvbihhKXtiZChmdW5jdGlvbigpe2Z1bmN0aW9uIGIoKXtmb3IodmFyIGQ9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZyYW1lIiksZT1kLmxlbmd0aCxmPTA7ZjxlO2YrKylxSyhkW2ZdLGEpfXZhciBjPUI7YigpO29KLksoYil9KX0scUs9ZnVuY3Rpb24oYSxiKXtpZighYS5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iK2IucmYpJiYoQ2MoYSwiZGF0YS1ndG0teXQtaW5zcGVjdGVkLSIrYi5yZiksc0soYSxiLmNvKSkpe2EuaWR8fChhLmlkPXRLKCkpO3ZhciBjPUEuWVQsZD1jLmdldChhLmlkKTtkfHwoZD1uZXcgYy5QbGF5ZXIoYS5pZCkpO3ZhciBlPXBLKGQsYiksZj17fSxnO2ZvcihnIGluIGUpZj17TWc6Zi5NZ30sZi5NZz1nLGUuaGFzT3duUHJvcGVydHkoZi5NZykmJmQuYWRkRXZlbnRMaXN0ZW5lcihmLk1nLGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbihsKXtyZXR1cm4gZVtoLk1nXShsLmRhdGEpfX0oZikpfX0sc0s9ZnVuY3Rpb24oYSwKYil7dmFyIGM9YS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKHVLKGMsImVtYmVkLyIpKXtpZihjLmluZGV4T2YoImVuYWJsZWpzYXBpPTEiKT4wKXJldHVybiEwO2lmKGIpe3ZhciBkO3ZhciBlPWMuaW5kZXhPZigiPyIpIT09LTE/IiYiOiI/IjtjLmluZGV4T2YoIm9yaWdpbj0iKT4tMT9kPWMrZSsiZW5hYmxlanNhcGk9MSI6KGxLfHwobEs9Qi5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK0IubG9jYXRpb24uaG9zdG5hbWUsQi5sb2NhdGlvbi5wb3J0JiYobEsrPSI6IitCLmxvY2F0aW9uLnBvcnQpKSxkPWMrZSsiZW5hYmxlanNhcGk9MSZvcmlnaW49IitlbmNvZGVVUklDb21wb25lbnQobEspKTt2YXIgZjtmPWpjKGQpO2Euc3JjPWtjKGYpLnRvU3RyaW5nKCk7cmV0dXJuITB9fXJldHVybiExfSx1Sz1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO2Zvcih2YXIgYz0wO2M8a0subGVuZ3RoO2MrKylpZihhLmluZGV4T2YoIi8vIitrS1tjXSsiLyIrYik+PTApcmV0dXJuITA7cmV0dXJuITF9LAp0Sz1mdW5jdGlvbigpe3ZhciBhPSIiK01hdGgucm91bmQoTWF0aC5yYW5kb20oKSoxRTkpO3JldHVybiBCLmdldEVsZW1lbnRCeUlkKGEpP3RLKCk6YX07CmZ1bmN0aW9uIHZLKGEsYil7dmFyIGM9dGhpczt2YXIgZD1mdW5jdGlvbigpe3JLKHEpfTtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiLHtmaXhNaXNzaW5nQXBpOiEhYS5nZXQoImZpeE1pc3NpbmdBcGkiKX0pfV0pO3ZhciBlPVpGKGIpLGY9ISFhLmdldCgiY2FwdHVyZVN0YXJ0IiksZz0hIWEuZ2V0KCJjYXB0dXJlQ29tcGxldGUiKSxoPSEhYS5nZXQoImNhcHR1cmVQYXVzZSIpLGw9b0soVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1BlcmNlbnQiKSkpLG49bksoVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1RpbWVJblNlY29uZHMiKSkpLHA9ISFhLmdldCgiZml4TWlzc2luZ0FwaSIpOwppZighKGZ8fGd8fGh8fGwubGVuZ3RofHxuLmxlbmd0aCkpcmV0dXJuO3ZhciBxPXt5cjpmLHdyOmcseHI6aCxjdDpsLGV0Om4sY286cCxyZjplfSxyPUEuWVQ7aWYocilyZXR1cm4gci5yZWFkeSYmci5yZWFkeShkKSxlO3ZhciB0PUEsdT10Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5O3Qub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk9ZnVuY3Rpb24oKXt1JiZ1KCk7ZCgpfTtiZChmdW5jdGlvbigpe2Zvcih2YXIgdj1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSx4PXYubGVuZ3RoLHk9MDt5PHg7eSsrKXt2YXIgej12W3ldLmdldEF0dHJpYnV0ZSgic3JjIik7aWYodUsoeiwiaWZyYW1lX2FwaSIpfHx1Syh6LCJwbGF5ZXJfYXBpIikpcmV0dXJuIGV9Zm9yKHZhciBDPUIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImlmcmFtZSIpLEQ9Qy5sZW5ndGgsST1hbCg1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxHPTA7RzxEO0crKylpZighSSYmc0soQ1tHXSxxLmNvKSlyZXR1cm4gVWMoImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGkiKSwKWmsoNSwhMCksZX0pO3JldHVybiBlfXZLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uWW91VHViZUFjdGl2aXR5IjtmdW5jdGlvbiB3SyhhLGIpe2lmKCFsaChhKXx8IWZoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz1iP1RkKGIpOnt9O2MucmVnZXhDYWNoZT1hbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KTtyZXR1cm4gR2goYSxjKX13Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIjtmdW5jdGlvbiB4SyhhKXt2YXIgYj0hMTtyZXR1cm4gYn14Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZU1hdGNoaW5nUnVsZXMiO3ZhciB5Sz1uZXcgTWFwKFtbImF3Iiw0XV0pO2Z1bmN0aW9uIHpLKGEpe3ZhciBiPXZyW2FdLGM9eUsuZ2V0KGEpO3JldHVybiBjPyh3cShiLGMpfHxbXSkuc29tZShmdW5jdGlvbihkKXtyZXR1cm4gZC5tPT09IjAifHxkLm09PT12b2lkIDB9KTohMX0KZnVuY3Rpb24gQUsoYSxiKXtpZihNKDQ5NSkpe2Zvcih2YXIgYz1uZXcgTWFwLGQ9bSh5SyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPW0oZS52YWx1ZSksZz1mLm5leHQoKS52YWx1ZSxoPWYubmV4dCgpLnZhbHVlLGw9ZyxuPWFbbF0scD1BcnJheS5pc0FycmF5KG4pP25bMF06bjtpZihwIT09dm9pZCAwKXt2YXIgcT17fSxyPShxLms9cCxxLmk9U3RyaW5nKE1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpKSxxLmI9W10scS5tPSIxIixxKSx0PWFxKHIsaCk7dCYmKHpLKGwpfHxjLnNldChsLHQpKX19aWYoYy5zaXplKXt2YXIgdSx2PVtdLHg9Yi5wYXRofHwiLyI7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgicCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeCkpO2IuQXImJnYucHVzaChlbmNvZGVVUklDb21wb25lbnQoImNlIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYi5BcikpKTt2YXIgeT1iLmRvbWFpbiYmYi5kb21haW4hPT0iYXV0byI/CmIuZG9tYWluOiJhdXRvOiIrQS5sb2NhdGlvbi5ob3N0bmFtZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJkIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh5KSk7Zm9yKHZhciB6PW0oYyksQz16Lm5leHQoKTshQy5kb25lO0M9ei5uZXh0KCkpe3ZhciBEPW0oQy52YWx1ZSksST1ELm5leHQoKS52YWx1ZSxHPUQubmV4dCgpLnZhbHVlO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoSSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChHKSl9dT0iXy9zZXRfY29va2llPyIrdi5qb2luKCImIik7dmFyIE4sUz1FKDU4KTtOPUVmKHUsUyk7dmFyIFc9WGooKSsiLyIrTjttZChXKX19fTtmdW5jdGlvbiBCSyhhKXtyZXR1cm4iQ1dWV2ViVmlld01lc3NhZ2UiaW4gYX1mdW5jdGlvbiBDSyhhKXt2YXIgYj1BLGM9Yi53ZWJraXQ7ZGVsZXRlIGIud2Via2l0O2EoYi53ZWJraXQpO2Iud2Via2l0PWN9ZnVuY3Rpb24gREsoYSxiKXt2YXIgYz17YWN0aW9uOiJnY2xfc2V0dXAifTtpZihCSyhhLm1lc3NhZ2VIYW5kbGVycykpcmV0dXJuIGEubWVzc2FnZUhhbmRsZXJzLkNXVldlYlZpZXdNZXNzYWdlLnBvc3RNZXNzYWdlKHtjb21tYW5kOmIscGF5bG9hZDpjfSksITA7dmFyIGQ9YS5tZXNzYWdlSGFuZGxlcnNbYl07cmV0dXJuIGQ/KGQucG9zdE1lc3NhZ2UoYyksITApOiExfTt2YXIgRUs9e30sRks9KEVLLmF3Yj17bm90Rm91bmQ6MTc4fSxFSy55dGI9e25vdEZvdW5kOjE5NH0sRUspO2Z1bmN0aW9uIEdLKGEpe3ZhciBiLGM9KGI9RktbYV0pPT1udWxsP3ZvaWQgMDpiLm5vdEZvdW5kO2MmJlAoYyl9CmZ1bmN0aW9uIEhLKGEpe2lmKCFubShqbS5iYS5qbikmJiJ3ZWJraXQiaW4gQSYmQS53ZWJraXQubWVzc2FnZUhhbmRsZXJzKXt2YXIgYj1mdW5jdGlvbigpe3RyeXtDSyhmdW5jdGlvbihjKXtpZihjKXt2YXIgZDtkPUJLKGMubWVzc2FnZUhhbmRsZXJzKXx8ImF3YiJpbiBjLm1lc3NhZ2VIYW5kbGVycz97Y29tbWFuZDoiYXdiIixzb3VyY2U6NX06KEJLKGMubWVzc2FnZUhhbmRsZXJzKXx8Inl0YiJpbiBjLm1lc3NhZ2VIYW5kbGVycykmJk0oNDk5KT97Y29tbWFuZDoieXRiIixzb3VyY2U6OH06dm9pZCAwO2QmJihtbShqbS5iYS5qbixmdW5jdGlvbihlKXt2YXIgZj1kLnNvdXJjZTtlLmdjbGlkJiZscygiZ2NsX2F3IixlLmdjbGlkLGYsYSk7ZS53YnJhaWQmJmxzKCJnY2xfZ2IiLGUud2JyYWlkLGYsYSl9KSxESyhjLGQuY29tbWFuZCl8fEdLKGQuY29tbWFuZCkpfX0pfWNhdGNoKGMpe1AoMTkzKX19O0hsKGZ1bmN0aW9uKCl7QnIoZnApP2IoKTpJbChiLGZwKX0sZnApfX07dmFyIElLPVsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbSIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIiwiaHR0cHM6Ly9tLnlvdXR1YmUuY29tIl07ZnVuY3Rpb24gSksoYSl7cmV0dXJuIGEuZGF0YS5hY3Rpb24hPT0iZ2NsX3RyYW5zZmVyIj8oUCgxNzMpLCEwKTphLmRhdGEuZ2FkU291cmNlP2EuZGF0YS5nY2xpZD8hMTooUCgxODEpLCEwKTooUCgxODApLCEwKX0KZnVuY3Rpb24gS0soYSxiKXtpZighYXx8TShhKSl7aWYobm0oam0uYmEuVmUpKXJldHVybiBQKDE3Niksam0uYmEuVmU7aWYobm0oam0uYmEubW4pKXJldHVybiBQKDE3MCksam0uYmEuVmU7dmFyIGM9RnAoKTtpZighYylQKDE3MSk7ZWxzZSBpZihjLm9wZW5lcil7dmFyIGQ9ZnVuY3Rpb24oZyl7aWYoIUlLLmluY2x1ZGVzKGcub3JpZ2luKSlQKDE3Mik7ZWxzZSBpZighSksoZykpe3ZhciBoPXtnYWRTb3VyY2U6Zy5kYXRhLmdhZFNvdXJjZX07aC5nY2xpZD1nLmRhdGEuZ2NsaWQ7bW0oam0uYmEuVmUsaCk7YiYmZy5kYXRhLmdjbGlkJiZscygiZ2NsX2F3IixTdHJpbmcoZy5kYXRhLmdjbGlkKSw2LGIpO3ZhciBsOyhsPWcuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKT09bnVsbHx8bC5jYWxsKGcpO250KGMsIm1lc3NhZ2UiLGQpfX07aWYobXQoYywibWVzc2FnZSIsZCkpe21tKGptLmJhLm1uLCEwKTtmb3IodmFyIGU9bShJSyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpYy5vcGVuZXIucG9zdE1lc3NhZ2Uoe2FjdGlvbjoiZ2NsX3NldHVwIn0sCmYudmFsdWUpO1AoMTc0KTtyZXR1cm4gam0uYmEuVmV9UCgxNzUpfX19Owp2YXIgTEs9ZnVuY3Rpb24oYSl7dmFyIGI9e3ByZWZpeDpPKGEuTSxGLkQuRmQpfHxPKGEuTSxGLkQubmIpLGRvbWFpbjpPKGEuTSxGLkQuTGIpLHBkOk8oYS5NLEYuRC5DYiksZmxhZ3M6TyhhLk0sRi5ELlRiKX07YS5NLmlzR3RtRXZlbnQmJihiLnBhdGg9TyhhLk0sRi5ELnZjKSk7cmV0dXJuIGJ9LE1LPWZ1bmN0aW9uKGEsYil7aWYoIVEoYSxILkouV2UpKXt2YXIgYz1LSygxMTkpO2lmKGMpe3ZhciBkPW5tKGMpLGU9ZnVuY3Rpb24oZyl7VihhLEguSi5XZSwhMCk7dmFyIGg9UihhLEYuRC56ZiksbD1SKGEsRi5ELkFmKTtVKGEsRi5ELnpmLFN0cmluZyhnLmdhZFNvdXJjZSkpO1UoYSxGLkQuQWYsNik7VihhLEguSi5zYSk7VihhLEguSi51Zyk7VShhLEYuRC5zYSk7YigpO1UoYSxGLkQuemYsaCk7VShhLEYuRC5BZixsKTtWKGEsSC5KLldlLCExKX07aWYoZCllKGQpO2Vsc2V7dmFyIGY9dm9pZCAwO2Y9cG0oYyxmdW5jdGlvbihnLGgpe2UoaCk7cW0oYyxmKX0pfX19fSxQSz1mdW5jdGlvbihhKXt2YXIgYiwKYyxkLGU7Yj1hLlRuO2M9YS5tbztkPWEuUW87ZT1hLlVuO2lmKGIpe2lmKGRyKGNbRi5ELlhmXSwhIWNbRi5ELkFhXSkpe2lmKFdqKCkmJkJyKEFyKCkpKXtmb3IodmFyIGY9VXEoITApLGc9e30saD1tKE9iamVjdC5rZXlzKHZyKSksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpe3ZhciBuPWwudmFsdWUscD12cltuXSxxPWZbcF07aWYocSl7dmFyIHI9JHAocSw0KTtyJiYob3MoTWF0aC5taW4oTnIociksTmIoKSl8fE5iKCkscCw0KXx8KGdbbl09cSkpfX1mb3IodmFyIHQ9e30sdT1tKE9iamVjdC5rZXlzKGcpKSx2PXUubmV4dCgpOyF2LmRvbmU7dj11Lm5leHQoKSl7dmFyIHg9di52YWx1ZSx5PWdbeF07aWYoeSE9PXZvaWQgMCl7dmFyIHo9JHAoeSw0KTt6JiZ6Lm09PT0iMSImJih0W3hdPXouayl9fUFLKHQsZSl9cHMoZSk7dHMoZSk7UXYoZSl9aWYoT3AoKSE9PTIpe2dzKGUpO2lzKGUpO2lmKFlmKDE1KSl7dmFyIEM9ZSxEPWRzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7CkQubGVuZ3RofHwoRD1kcyhBLmRvY3VtZW50LnJlZmVycmVyLCExLCEwKSk7aWYoRC5sZW5ndGgpe0M9Q3x8e307dmFyIEk9RFswXTtJLnZhbHVlJiZtcygiZ2NsX2RjIixbe3ZlcnNpb246IiIsZ2NsaWQ6SS52YWx1ZSx0aW1lc3RhbXA6TmIoKSxxYTpJLnFhfV0sQyl9fUhLKGUpO0tLKHZvaWQgMCxlKX1lbHNlIGdzKGUpO2lmKFdqKCkmJkJyKEFyKCkpKXt2YXIgRz1mcygpO0FLKEcsZSl9eHMocXMsZSk7eXMoZSl9Y1tGLkQuQWFdJiYodnMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSksdXMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksd3MoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksUnYoR3YoZS5wcmVmaXgpLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSksUnYoIkZQQVUiLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSkpO2QmJkFzKE5LKTtDcyhPSyl9LHFzPVsiYXciLCJkYyIsCiJnYiJdLE9LPVsiYXciLCJkYyIsImdiIiwiYWciXSxOSz1bImF3IiwiZGMiLCJnYiIsImFnIiwiZ2FkX3NvdXJjZSJdO2Z1bmN0aW9uIFZLKCl7cmV0dXJuIE10KDcpJiZNdCg5KSYmTXQoMTApfTt2YXIgV0s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5vaiwoZFtiXT1jLGQpKX0sWEs9ZnVuY3Rpb24oYSxiKXt2YXIgYz1kSShhLEYuRC5GaSxhLk0uaWJbRi5ELkZpXSk7aWYoYyYmY1tifHxhLmV2ZW50TmFtZV0hPT12b2lkIDApcmV0dXJuIGNbYnx8YS5ldmVudE5hbWVdfSxZSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLllhKTtpZihDZChiKSlyZXR1cm4gYn0sWks9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5iZSl8fCFlayhhLk0pKXJldHVybiAxO2lmKCFPKGEuTSxGLkQuZGQpKXt2YXIgYj1PKGEuTSxGLkQuUWYpO2lmKGIhPT0hMCYmYiE9PSJ0cnVlIilyZXR1cm4gMX12YXIgYz1PKGEuTSxGLkQuT2kpO3JldHVybiBjPT09ITF8fGM9PT0iZmFsc2UiPzM6Mn07CnZhciBhTD1mdW5jdGlvbihhLGIpe2EmJigkSygic2lkIixhLnRhcmdldElkLGIpLCRLKCJjYyIsYS5jbGllbnRDb3VudCxiKSwkSygidGwiLGEudG90YWxMaWZlTXMsYiksJEsoImhjIixhLmhlYXJ0YmVhdENvdW50LGIpLCRLKCJjbCIsYS5jbGllbnRMaWZlTXMsYikpfSwkSz1mdW5jdGlvbihhLGIsYyl7YiE9bnVsbCYmYy5wdXNoKGErIj0iK2IpfSxiTD1mdW5jdGlvbigpe3ZhciBhPUIucmVmZXJyZXI7aWYoYSl7dmFyIGI7cmV0dXJuIExqKFJqKGEpLCJob3N0Iik9PT0oKGI9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmIuaG9zdCk/MToyfXJldHVybiAwfSxkTD1mdW5jdGlvbigpe3RoaXMuamE9Y0w7dGhpcy5OPTA7dGhpcy55YT1OZig1Nyw1KTt0aGlzLlI9TmYoNTgsNTApO3RoaXMuZmE9RGIoKTt0aGlzLkxhPSJodHRwczovLyIrRSgyMSkrIi9hPyJ9O2RMLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjLGQpewp2YXIgZT1iTCgpLGYsZz1bXTtmPUE9PT1BLnRvcCYmZSE9PTAmJmI/KGI9PW51bGw/dm9pZCAwOmIuY2xpZW50Q291bnQpPjE/ZT09PTI/MToyOmU9PT0yPzA6Mzo0O2EmJiRLKCJzaSIsYS5KZyxnKTskSygibSIsMCxnKTskSygiaXNzIixmLGcpOyRLKCJpZiIsYyxnKTthTChiLGcpO2QmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGQuc3Vic3RyaW5nKDAsdGhpcy5SKSksZyk7dGhpcy5aKGcpO307ZEwucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bXTskSygibSIsMSxmKTskSygicyIsYSxmKTskSygicG8iLGJMKCksZik7YiYmKCRLKCJzdCIsYi5zdGF0ZSxmKSwkSygic2kiLGIuSmcsZiksJEsoInNtIixiLlVnLGYpKTthTChjLGYpOyRLKCJjIixkLGYpO2UmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGUuc3Vic3RyaW5nKDAsCnRoaXMuUikpLGYpO3RoaXMuWihmKTt9O2RMLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphOyFmbi5OfHx0aGlzLk4+PXRoaXMueWF8fCgkSygicGlkIix0aGlzLmZhLGEpLCRLKCJiYyIsKyt0aGlzLk4sYSksYS51bnNoaWZ0KCJjdGlkPSIrRSg1KSsiJnQ9cyIpLHRoaXMuamEoIiIrdGhpcy5MYSthLmpvaW4oIiYiKSkpfTtmdW5jdGlvbiBlTChhKXtyZXR1cm4gYS5wZXJmb3JtYW5jZSYmYS5wZXJmb3JtYW5jZS5ub3coKXx8RGF0ZS5ub3coKX0KdmFyIGZMPWZ1bmN0aW9uKGEsYil7dmFyIGM9QSxkPU5mKDUzLDUwMCksZT1OZig1NCw1RTMpLGY9TmYoOCwyMCksZz1OZig1NSw1RTMpLGg7dmFyIGw9ZnVuY3Rpb24obixwLHEpe3E9cT09PXZvaWQgMD97cW86ZnVuY3Rpb24oKXt9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbigpe30sb25GYWlsdXJlOmZ1bmN0aW9uKCl7fX06cTt0aGlzLklqPW47dGhpcy5IPXA7dGhpcy5OPXE7dGhpcy5mYT10aGlzLmphPXRoaXMuaGVhcnRiZWF0Q291bnQ9dGhpcy5Eaj0wO3RoaXMuZmU9ITE7dGhpcy5LPXt9O3RoaXMuaWQ9U3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpO3RoaXMuc3RhdGU9MDt0aGlzLkpnPWVMKHRoaXMuSCk7dGhpcy5VZz1lTCh0aGlzLkgpO3RoaXMuWj0xMH07bC5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe3RoaXMuUigxKTsKdGhpcy5MYSgpfTtsLnByb3RvdHlwZS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybntzdGF0ZTp0aGlzLnN0YXRlLEpnOk1hdGgucm91bmQoZUwodGhpcy5IKS10aGlzLkpnKSxVZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5VZyl9fTtsLnByb3RvdHlwZS5SPWZ1bmN0aW9uKG4pe3RoaXMuc3RhdGUhPT1uJiYodGhpcy5zdGF0ZT1uLHRoaXMuVWc9ZUwodGhpcy5IKSl9O2wucHJvdG90eXBlLnZnPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLkRqKyspfTtsLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5oZWFydGJlYXRDb3VudCsrO3RoaXMueWEoe3R5cGU6MCxjbGllbnRJZDp0aGlzLmlkLHJlcXVlc3RJZDp0aGlzLnZnKCksbWF4RGVsYXk6dGhpcy5oZSgpfSxmdW5jdGlvbihwKXtpZihwLnR5cGU9PT0wKXt2YXIgcTtpZigoKHE9cC5mYWlsdXJlKT09bnVsbD92b2lkIDA6cS5mYWlsdXJlVHlwZSkhPW51bGwpaWYocC5zdGF0cyYmKG4uc3RhdHM9CnAuc3RhdHMpLG4uZmErKyxwLmlzRGVhZHx8bi5mYT5mKXt2YXIgcj1wLmlzRGVhZCYmcC5mYWlsdXJlLmZhaWx1cmVUeXBlO24uWj1yfHwxMDtuLlIoNCk7bi5BaigpO3ZhciB0LHU7KHU9KHQ9bi5OKS5wbyk9PW51bGx8fHUuY2FsbCh0LHtmYWlsdXJlVHlwZTpyfHwxMCxkYXRhOnAuZmFpbHVyZS5kYXRhfSl9ZWxzZSBuLlIoMyksbi5QaCgpO2Vsc2V7aWYobi5oZWFydGJlYXRDb3VudD5wLnN0YXRzLmhlYXJ0YmVhdENvdW50K2Ype24uaGVhcnRiZWF0Q291bnQ9cC5zdGF0cy5oZWFydGJlYXRDb3VudDt2YXIgdix4Oyh4PSh2PW4uTikub25GYWlsdXJlKT09bnVsbHx8eC5jYWxsKHYse2ZhaWx1cmVUeXBlOjEzfSl9bi5zdGF0cz1wLnN0YXRzO3ZhciB5PW4uc3RhdGU7bi5SKDIpO2lmKHkhPT0yKWlmKG4uZmUpe3ZhciB6LEM7KEM9KHo9bi5OKS5zbyk9PW51bGx8fEMuY2FsbCh6KX1lbHNle24uZmU9ITA7dmFyIEQsSTsoST0oRD1uLk4pLnFvKT09bnVsbHx8SS5jYWxsKEQpfW4uZmE9CjA7bi5OaigpO24uUGgoKX19fSl9O2wucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0yP2U6ZH07bC5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5MYSgpfSxNYXRoLm1heCgwLHRoaXMuaGUoKS0oZUwodGhpcy5IKS10aGlzLmphKSkpfTtsLnByb3RvdHlwZS5rcj1mdW5jdGlvbihuLHAscSl7dmFyIHI9dGhpczt0aGlzLnlhKHt0eXBlOjEsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLGNvbW1hbmQ6bn0sZnVuY3Rpb24odCl7aWYodC50eXBlPT09MSlpZih0LnJlc3VsdClwKHQucmVzdWx0KTtlbHNle3ZhciB1LHYseCx5PXtmYWlsdXJlVHlwZTooeD0odT10LmZhaWx1cmUpPT1udWxsP3ZvaWQgMDp1LmZhaWx1cmVUeXBlKSE9bnVsbD94OjEyLGRhdGE6KHY9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6di5kYXRhfSx6LEM7KEM9KHo9ci5OKS5vbkZhaWx1cmUpPT0KbnVsbHx8Qy5jYWxsKHoseSk7cSh5KX19KX07bC5wcm90b3R5cGUueWE9ZnVuY3Rpb24obixwKXt2YXIgcT10aGlzO2lmKHRoaXMuc3RhdGU9PT00KW4uZmFpbHVyZT17ZmFpbHVyZVR5cGU6dGhpcy5afSxwKG4pO2Vsc2V7dmFyIHI9dGhpcy5zdGF0ZSE9PTImJm4udHlwZSE9PTAsdD1uLnJlcXVlc3RJZCx1LHY9dGhpcy5ILnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgeT1xLktbdF07eSYmKGltKDYpLHEua2QoeSw3KSl9LCh1PW4ubWF4RGVsYXkpIT1udWxsP3U6ZykseD17cmVxdWVzdDpuLEhvOnAsem86cixOczp2fTt0aGlzLktbdF09eDtyfHx0aGlzLnNlbmRSZXF1ZXN0KHgpfX07bC5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24obil7dGhpcy5qYT1lTCh0aGlzLkgpO24uem89ITE7dGhpcy5JaihuLnJlcXVlc3QpfTtsLnByb3RvdHlwZS5Oaj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT0KdGhpcy5LW3AudmFsdWVdO3Euem8mJnRoaXMuc2VuZFJlcXVlc3QocSl9fTtsLnByb3RvdHlwZS5Baj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXRoaXMua2QodGhpcy5LW3AudmFsdWVdLHRoaXMuWil9O2wucHJvdG90eXBlLmtkPWZ1bmN0aW9uKG4scCl7dGhpcy5hYyhuKTt2YXIgcT1uLnJlcXVlc3Q7cS5mYWlsdXJlPXtmYWlsdXJlVHlwZTpwfTtuLkhvKHEpfTtsLnByb3RvdHlwZS5hYz1mdW5jdGlvbihuKXtkZWxldGUgdGhpcy5LW24ucmVxdWVzdC5yZXF1ZXN0SWRdO3RoaXMuSC5jbGVhclRpbWVvdXQobi5Ocyl9O2wucHJvdG90eXBlLmtzPWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTt2YXIgcD10aGlzLktbbi5yZXF1ZXN0SWRdO2lmKHApdGhpcy5hYyhwKSxwLkhvKG4pO2Vsc2V7dmFyIHEscjsocj0ocT10aGlzLk4pLm9uRmFpbHVyZSk9PW51bGx8fHIuY2FsbChxLHtmYWlsdXJlVHlwZToxNH0pfX07Cmg9bmV3IGwoYSxjLGIpO3JldHVybiBofTsKdmFyIGdMPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDE4LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkTH0pfSxjTD1mdW5jdGlvbihhKXtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtaYyhhKX0pfSxoTD1mdW5jdGlvbihhKXt2YXIgYj1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIiKSk7cmV0dXJuIiYxcD0xIisoYj8iJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoYik6IiIpfSxpTD1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLm9yaWdpbjtpZighYilyZXR1cm4gbnVsbDsoTSg0MzIpP1dqKCk6V2ooKSYmIWEpJiYoYT0iIitiK1hqKCkrIi9fL3NlcnZpY2Vfd29ya2VyIik7dmFyIGM9YSxkLGU9TGYoMTEpO2U9TGYoMTApO2Q9ZTtjPyhjLmNoYXJBdChjLmxlbmd0aC0xKSE9PSIvIiYmCihjKz0iLyIpLGE9YytkKTphPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9zdGF0aWMvc2VydmljZV93b3JrZXIvIitkKyIvIjt2YXIgZjt0cnl7Zj1uZXcgVVJMKGEpfWNhdGNoKGcpe3JldHVybiBudWxsfXJldHVybiBmLnByb3RvY29sIT09Imh0dHBzOiI/bnVsbDpmfSxqTD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5PaCk7cmV0dXJuIGImJmJbYV19LGtMPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5LPWdMKCk7dGhpcy5aPXRoaXMuUj0hMTt0aGlzLmZhPW51bGw7dGhpcy5pbml0VGltZT1NYXRoLnJvdW5kKE5iKCkpO3RoaXMuSD0xNTt0aGlzLk49dGhpcy5GcihhKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmluaXRpYWxpemUoKX0sMUUzKTtiZChmdW5jdGlvbigpe2IuenMoYSl9KX07az1rTC5wcm90b3R5cGU7ay5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dGhpcy5nZXRTdGF0ZSgpIT09Mj8odGhpcy5LLkgodGhpcy5ILHtzdGF0ZTp0aGlzLmdldFN0YXRlKCksCkpnOnRoaXMuaW5pdFRpbWUsVWc6TWF0aC5yb3VuZChOYigpKS10aGlzLmluaXRUaW1lfSx2b2lkIDAsYS5jb21tYW5kVHlwZSksYyh7ZmFpbHVyZVR5cGU6dGhpcy5IfSkpOnRoaXMuTi5rcihhLGIsYyl9O2suZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OLmdldFN0YXRlKCkuc3RhdGV9O2suenM9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW4sYz10aGlzLGQ9WGMoKTt0cnl7dmFyIGU9ZC5jb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksZj1hLnBhdGhuYW1lLGc9ZltmLmxlbmd0aC0xXT09PSIvIj9hLnRvU3RyaW5nKCk6YS50b1N0cmluZygpKyIvIixoPWEub3JpZ2luIT09Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj9oTChmKToiIixsO00oMTMzKSYmKGw9e3NhbmRib3g6ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMifSk7WGMoZysic3dfaWZyYW1lLmh0bWw/b3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKwpoLHZvaWQgMCxsLHZvaWQgMCxlKTt2YXIgbj1mdW5jdGlvbigpe2QuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe2MuZmE9ZS5jb250ZW50V2luZG93O2QuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbihwKXtwLm9yaWdpbj09PWEub3JpZ2luJiZjLk4ua3MocC5kYXRhKX0pO2MuaW5pdGlhbGl6ZSgpfSl9O2QuY29udGVudERvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiP24oKTpkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtuKCl9KX1jYXRjaChwKXtkLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZCksdGhpcy5IPTExLHRoaXMuSy5LKHZvaWQgMCx2b2lkIDAsdGhpcy5ILHAudG9TdHJpbmcoKSl9fTtrLkZyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1mTChmdW5jdGlvbihkKXt2YXIgZTsoZT1iLmZhKT09Cm51bGx8fGUucG9zdE1lc3NhZ2UoZCxhLm9yaWdpbil9LHtxbzpmdW5jdGlvbigpe2IuUj0hMDtiLksuSyhjLmdldFN0YXRlKCksYy5zdGF0cyl9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbihkKXtiLlI/KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDEwLGIuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyx2b2lkIDAsZD09bnVsbD92b2lkIDA6ZC5kYXRhKSk6KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDQsYi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMsYi5ILGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oZCl7Yi5IPWQuZmFpbHVyZVR5cGU7Yi5LLkgoYi5ILGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGQuY29tbWFuZCxkLmRhdGEpfX0pO3JldHVybiBjfTtrLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt0aGlzLlp8fHRoaXMuTi5pbml0KCk7dGhpcy5aPSEwfTsKdmFyIGxMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlO2lmKChlPWpMKGEpKT09bnVsbHx8IWUuZGVsZWdhdGUpe3ZhciBmPUljKCk/MTY6NjtnTCgpLkgoZix2b2lkIDAsdm9pZCAwLGIuY29tbWFuZFR5cGUpO2Qoe2ZhaWx1cmVUeXBlOmZ9KTtyZXR1cm59akwoYSkuZGVsZWdhdGUoYixjLGQpO307CmZ1bmN0aW9uIG1MKGEsYixjLGQpe3ZhciBlPWlMKGEpO2lmKGU9PT1udWxsKXtkKCJfaXNfc3c9ZiIrKEljKCk/MTY6NikrInRlIik7cmV0dXJufXZhciBmPWI/MTowLGc9TWF0aC5yb3VuZChOYigpKSxoLGw9KGg9akwoZS5vcmlnaW4pKT09bnVsbD92b2lkIDA6aC5pbml0VGltZSxuPWw/Zy1sOnZvaWQgMCxwO00oNDMyKT9wPVdqKCk/dm9pZCAwOkEubG9jYXRpb24uaHJlZjpwPUEubG9jYXRpb24uaHJlZjtsTChlLm9yaWdpbix7Y29tbWFuZFR5cGU6MCxwYXJhbXM6e3VybDphLG1ldGhvZDpmLHRlbXBsYXRlczpjLGJvZHk6Ynx8IiIscHJvY2Vzc1Jlc3BvbnNlOiEwLHNpbmNlSW5pdDpuLGF0dHJpYnV0aW9uUmVwb3J0aW5nOiEwLHJlZmVyZXI6cCxzdHJpY3Q6TSg1ODQpfX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHEpe3ZhciByPSJfaXNfc3c9ZiIrcS5mYWlsdXJlVHlwZSx0LHU9KHQ9akwoZS5vcmlnaW4pKT09Cm51bGw/dm9pZCAwOnQuZ2V0U3RhdGUoKTt1IT09dm9pZCAwJiYocis9InMiK3UpO2Qobj9yKygidCIrbik6cisidGUiKX0pO307ZnVuY3Rpb24gbkwoYSl7aWYoSWYoNDcpJiZkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmV2ooKSl7dmFyIGI9YS5NO2lmKEljKCkmJmJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIikpe3ZhciBjPWVrKGIpLGQ9V2ooKT9YaigpOnZvaWQgMCxlO2U9ZD97cGF0aDpkLGVvOiJmdWxsIn06Yz97cGF0aDpjLGVvOiJsaXRlIn06dm9pZCAwO2lmKGUpe3ZhciBmPWUuZW8sZz1uZXcgVVJMKGUucGF0aCxBLmxvY2F0aW9uLm9yaWdpbik7aWYoZy5vcmlnaW49PT1BLmxvY2F0aW9uLm9yaWdpbiYmcHkoZik9PT12b2lkIDApe3ZhciBoPW9tKGptLmJhLk9oLHt9KTtoW2ZdfHwoaFtmXT1uZXcgbnkoZykpfX19fX07ZnVuY3Rpb24gc0woKXt2YXIgYTthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTt2YXIgYjtyZXR1cm4hKChiPWEuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFiLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKSl9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07CnZhciB4TD1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj1TdHJpbmcoYSkuc3Vic3RyaW5nKDAsNTEyKSxjPWIuaW5kZXhPZigiIyIpO3JldHVybiBjPT09LTE/YjpiLnN1YnN0cmluZygwLGMpfXJldHVybiIifSx5TD1mdW5jdGlvbigpe3ZhciBhPUIudGl0bGU7aWYoYT09PXZvaWQgMHx8YT09PSIiKXJldHVybiIiO2E9ZW5jb2RlVVJJQ29tcG9uZW50KGEpO2Zvcih2YXIgYj0yNTY7Yj4wJiZLaihhLnN1YnN0cmluZygwLGIpKT09PXZvaWQgMDspYi0tO3JldHVybiBLaihhLnN1YnN0cmluZygwLGIpKXx8IiJ9O2Z1bmN0aW9uIEFMKGEpe1YoYSxILkouSmEsITApO1YoYSxILkouRWIsTmIoKSk7VihhLEguSi55bixhLk0uZXZlbnRNZXRhZGF0YVtILkouSmFdKX07dmFyIFNMPWZ1bmN0aW9uKGEpe3ZhciBiPVhvKEYuRC5rYSk/bWooInBzY2RsIik6ImRlbmllZCI7YiE9bnVsbCYmVShhLEYuRC5qaCxiKX07dmFyIFRMPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07dmFyIFVMPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5NO2lmKGI9PT12b2lkIDA/MDpiKXt2YXIgZD1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EpO1liKGQpJiZVKGEsRi5ELkxpLFliKGQpKX12YXIgZT1PbyhmRChGLkQuT2EpKSxmPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSwxLGUpLGc9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDIpLGg9WWIobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxmLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sVEwuSCkpLCIuIiksbD1ZYihnLCIuIik7aCYmVShhLEYuRC5YYyxoKTtsJiZVKGEsRi5ELlZjLGwpfTt2YXIgVkw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi50cSk7YiYmVShhLEYuRC5JbCxiKX07ZnVuY3Rpb24gV0woYSl7dmFyIGI9S0IoITEpO2lmKGIhPW51bGwmJmIuc3RhdHVzKXt2YXIgYz17Z3RiOmIuc3RhdHVzfTtiLmRlbGF5JiYoYy5ndGJkPWIuZGVsYXkpO2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxjKX19O3ZhciBYTD1mdW5jdGlvbihhKXt6bSgpPT09IlVTLUNPIiYmVShhLEYuRC5MZSwxKX07dmFyIFlMPXtSYTp7Q2s6MSx6bjoyLEhuOjMsSW46NCxKbjo1LHduOjZ9fTtZTC5SYVtZTC5SYS5Da109IkFET0JFX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS56bl09IlNRVUFSRVNQQUNFIjtZTC5SYVtZTC5SYS5Ibl09IldPT19DT01NRVJDRSI7WUwuUmFbWUwuUmEuSW5dPSJXT09fQ09NTUVSQ0VfTEVHQUNZIjtZTC5SYVtZTC5SYS5Kbl09IldPUkRfUFJFU1MiO1lMLlJhW1lMLlJhLnduXT0iU0hPUElGWSI7ZnVuY3Rpb24gWkwoYSl7dmFyIGI9QTtyZXR1cm4gS2ooYi5lc2NhcGUoYi5hdG9iKGEpKSl9CmZ1bmN0aW9uICRMKCl7dHJ5e2lmKCFNKDQ5OCkmJiFNKDQyNSkpcmV0dXJuW107dmFyIGE9bm0oam0uYmEubG4pO2lmKEFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGE7dmFyIGI9W10sYzthOnt0cnl7Yz0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W2RhdGEtcmVxdWlyZW1vZHVsZV49Im1hZ2UvIl0nKTticmVhayBhfWNhdGNoKHkpe31jPSExfWMmJmIucHVzaChZTC5SYS5Dayk7dmFyIGQ7YTp7dHJ5e3ZhciBlPVpMKCJZWE56WlhSekxuTnhkV0Z5WlhOd1lXTmxMbU52YlM4PSIpO2Q9ZT8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyY149Ii8vJytlKyciXScpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWQ9ITF9ZCYmYi5wdXNoKFlMLlJhLnpuKTt2YXIgZjthOntpZihNKDQyNSkpdHJ5e3ZhciBnPVpMKCJjMmh2Y0dsbWVTNWpiMjA9IiksaD1aTCgiYzJodmNHbG1lV05rYmk1amIyMD0iKTtmPWcmJmg/ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJjZG4uJytnKyciXSxtZXRhW3Byb3BlcnR5PSJvZzppbWFnZSJdW2NvbnRlbnQqPSJjZG4uJysKKGcrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9ImNkbi4nKSsoZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iZm9udHMuJykrKGgrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9Iml0ZXJhYmxlLXNob3BpZnkiXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJ2LicpKyhnKyciXScpKTohMTticmVhayBhfWNhdGNoKHkpe31mPSExfWYmJmIucHVzaChZTC5SYS53bik7dmFyIGw7YTp7dHJ5e2w9ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJ3b29jb21tZXJjZSJdLGxpbmtbaHJlZio9Indvb2NvbW1lcmNlIl0sW2NsYXNzfD0id29vY29tbWVyY2UiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWw9ITF9bCYmYi5wdXNoKFlMLlJhLkluKTt2YXIgbjthOnt0cnl7dmFyIHAscT0oKHA9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnAuaG9zdG5hbWUpfHwiIixyLHQ9KChyPUIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpyLm9yaWdpbil8fAoiIix1PVpMKCJMbmR2Y21Sd2NtVnpjeTVqYjIwPSIpLHY9WkwoIkx5OXpMbmN1YjNKbiIpO249dSYmdj9UYihxLHUpfHwhIUIucXVlcnlTZWxlY3RvcignW3NyY149IicrdCsnL3dwLWNvbnRlbnQiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb3JkUHJlc3MgIl0sbGlua1tyZWw9ImRucy1wcmVmZXRjaCJdW2hyZWY9IicrKHYrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fW49ITF9biYmYi5wdXNoKFlMLlJhLkpuKTt2YXIgeDthOnt0cnl7eD0hIUIucXVlcnlTZWxlY3RvcignW2NsYXNzKj0id29vY29tbWVyY2UiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb29Db21tZXJjZSAiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fXg9ITF9eCYmYi5wdXNoKFlMLlJhLkhuKTtVQigpJiZtbShqbS5iYS5sbixiKTtyZXR1cm4gYn1jYXRjaCh5KXt9cmV0dXJuW119O2Z1bmN0aW9uIHdNKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe3ZhciBiPU5mKDY3LDE1MDApLGM9YS5tZXJnZUhpdERhdGFGb3JLZXksZD1GLkQuVGEsZT17fTtjLmNhbGwoYSxkLGUpfX07dmFyIHhNPSJwbGF0Zm9ybSBwbGF0Zm9ybVZlcnNpb24gYXJjaGl0ZWN0dXJlIG1vZGVsIHVhRnVsbFZlcnNpb24gYml0bmVzcyBmdWxsVmVyc2lvbkxpc3Qgd293NjQiLnNwbGl0KCIgIik7ZnVuY3Rpb24geU0oYSl7dmFyIGI7cmV0dXJuKGI9YS5nb29nbGVfdGFnX2RhdGEpIT1udWxsP2I6YS5nb29nbGVfdGFnX2RhdGE9e319ZnVuY3Rpb24gek0oYSl7dmFyIGIsYztyZXR1cm4oYz0oYj1hLmdvb2dsZV90YWdfZGF0YSk9PW51bGw/dm9pZCAwOmIudWFjaF9wcm9taXNlKSE9bnVsbD9jOm51bGx9ZnVuY3Rpb24gQU0oYSl7dmFyIGIsYztyZXR1cm4gdHlwZW9mKChiPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6KGM9Yi51c2VyQWdlbnREYXRhKT09bnVsbD92b2lkIDA6Yy5nZXRIaWdoRW50cm9weVZhbHVlcyk9PT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBCTShhKXtpZighQU0oYSkpcmV0dXJuIG51bGw7dmFyIGI9eU0oYSk7aWYoYi51YWNoX3Byb21pc2UpcmV0dXJuIGIudWFjaF9wcm9taXNlO3ZhciBjPWEubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoeE0pLnRoZW4oZnVuY3Rpb24oZCl7Yi51YWNoIT1udWxsfHwoYi51YWNoPWQpO3JldHVybiBkfSk7cmV0dXJuIGIudWFjaF9wcm9taXNlPWN9Owp2YXIgQ009ZnVuY3Rpb24oKXt0aGlzLndpbmRvdz1BO3RoaXMuTj1OYn07Q00ucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtpZihBTSh0aGlzLndpbmRvdykmJih0aGlzLlo9dGhpcy5OKCksIXpNKHRoaXMud2luZG93KSkpe3ZhciBhPUJNKHRoaXMud2luZG93KTthJiZhLnRoZW4oZnVuY3Rpb24oKXtQKDk1KX0pLmNhdGNoKGZ1bmN0aW9uKCl7UCg5Nil9KX19O0NNLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy53aW5kb3cuZ29vZ2xlX3RhZ19kYXRhLGI7aWYoYSE9bnVsbCYmYS51YWNoKXt2YXIgYz1hLnVhY2gsZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMpO2MuZnVsbFZlcnNpb25MaXN0JiYoZC5mdWxsVmVyc2lvbkxpc3Q9Yy5mdWxsVmVyc2lvbkxpc3Quc2xpY2UoMCkpO2I9ZH1lbHNlIGI9bnVsbDtyZXR1cm4gYn07Q00ucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz10aGlzLGQ9ZnVuY3Rpb24oaCxsKXt0cnl7YShoLGwpfWNhdGNoKG4pe319LAplPXRoaXMuSCgpO2lmKGUpZChlKTtlbHNle3ZhciBmPXpNKHRoaXMud2luZG93KTtpZihmKXtiPU1hdGgubWluKE1hdGgubWF4KGlzRmluaXRlKGIpP2I6MCwwKSwxRTMpO3ZhciBnPXRoaXMud2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLktnfHwoZC5LZz0hMCxQKDEwNiksZChudWxsLEVycm9yKCJUaW1lb3V0IikpKX0sYik7Zi50aGVuKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA0KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChoKSl9KS5jYXRjaChmdW5jdGlvbihoKXtkLktnfHwoZC5LZz0hMCxQKDEwNSksYy53aW5kb3cuY2xlYXJUaW1lb3V0KGcpLGQobnVsbCxoKSl9KX1lbHNlIGQobnVsbCl9fTtDTS5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlohPT12b2lkIDB9O3ZhciBETT1mdW5jdGlvbigpe3ZhciBhO2E9YT09PXZvaWQgMD9BOmE7cmV0dXJuIEFNKGEpfSxFTT1mdW5jdGlvbihhKXt2YXIgYj17fTtiW0YuRC5jZ109YS5hcmNoaXRlY3R1cmU7CmJbRi5ELmRnXT1hLmJpdG5lc3M7YS5mdWxsVmVyc2lvbkxpc3QmJihiW0YuRC5lZ109YS5mdWxsVmVyc2lvbkxpc3QubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoYy5icmFuZHx8IiIpKyI7IitlbmNvZGVVUklDb21wb25lbnQoYy52ZXJzaW9ufHwiIil9KS5qb2luKCJ8IikpO2JbRi5ELmZnXT1hLm1vYmlsZT8iMSI6IjAiO2JbRi5ELmdnXT1hLm1vZGVsO2JbRi5ELmhnXT1hLnBsYXRmb3JtO2JbRi5ELmlnXT1hLnBsYXRmb3JtVmVyc2lvbjtiW0YuRC5qZ109YS53b3c2ND8iMSI6IjAiO3JldHVybiBifSxGTT1uZXcgQ007dmFyIEdNPWZ1bmN0aW9uKGEpe2lmKCFETSgpKVAoODcpO2Vsc2UgaWYoRk0uSygpKXtQKDg1KTt2YXIgYj1GTS5IKCk7aWYoYil7aWYoYilmb3IodmFyIGM9RU0oYiksZD1tKE9iamVjdC5rZXlzKGMpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtVKGEsZixjW2ZdKX19ZWxzZSBQKDg2KX19O2Z1bmN0aW9uIEhNKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9UShhLEguSi5zZyksZD1kSShhLCJjdXN0b21fZXZlbnRfYWNjZXB0X3J1bGVzIiwhMSkmJiFiO2lmKGMpe3ZhciBlPWMuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxmPSEwO1EoYSxILkouQ2MpJiYoZj1RKGEsSC5KLk5iKT09PXZrKCkpO2UmJmY/VihhLEguSi5raSwhMCk6KFYoYSxILkoua2ksITEpLGR8fChhLmlzQWJvcnRlZD0hMCkpO2lmKGEuY2FuQmVBY2NlcHRlZCgpKXt2YXIgZz11aygpLmluZGV4T2YoYS50YXJnZXQuZGVzdGluYXRpb25JZCk+PTAsaD0hMTtpZighZyl7dmFyIGwsbj0obD1uayhhLnRhcmdldC5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOmwuY2Fub25pY2FsQ29udGFpbmVySWQ7biYmKGg9dmsoKT09PW4pfWd8fGg/UShhLEguSi5raSkmJmEuYWNjZXB0KCk6YS5pc0Fib3J0ZWQ9ITB9ZWxzZSBhLmlzQWJvcnRlZD0hMH19O3ZhciBJTT1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpLGM9TyhhLk0sRi5ELlljKTtiJiYhYz8oYS5ldmVudE5hbWUhPT1GLkQud2EmJmEuZXZlbnROYW1lIT09Ri5ELnlmJiZQKDEzMSksYS5pc0Fib3J0ZWQ9ITApOiFiJiZjJiYoUCgxMzIpLGEuaXNBYm9ydGVkPSEwKX07dmFyIEpNPWZ1bmN0aW9uKGEpe2lmKGEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1JZigxMSksYz1RKGEsSC5KLkhxKTshKCFNKDU1MCkmJmJ8fGMpfHxhLnRhcmdldC5KYygpfHxZRygiaWRjX2NvbmZpZ19wdiIsYS50YXJnZXQuZGVzdGluYXRpb25JZCl8fChhLmlzQWJvcnRlZD0hMCl9fTt2YXIgTE09ZnVuY3Rpb24oYSxiKXtLTS5OKGEsYil9LE1NPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fTtNTS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFthXTtjfHwoYz10aGlzLkhbYV09W10pO2MucHVzaChiKX07TU0ucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5IW2EudGFyZ2V0LmRlc3RpbmF0aW9uSWRdO2lmKCFhLmlzQWJvcnRlZCYmYilmb3IodmFyIGM9ZkkoYSksZD0wO2Q8Yi5sZW5ndGg7KytkKXt0cnl7YltkXShjKX1jYXRjaChlKXthLmlzQWJvcnRlZD0hMH1pZihhLmlzQWJvcnRlZClicmVha319O3ZhciBLTT1uZXcgTU07dmFyIE5NPWZ1bmN0aW9uKGEpe0tNLksoYSk7fTt2YXIgT009ZnVuY3Rpb24oYSl7YSYmKEFwKDQ5NSxhKSxBcCg1NjcsYSksQXAoNDUwLGEpLEFwKDQ0MyxhKSxBcCg1ODcsYSksQXAoNTc2LGEpLEFwKDU3MCxhKSxBcCg1ODEsYSksQXAoNjAyLGEpKX0sUE09ZnVuY3Rpb24oYSl7aWYoUShhLEguSi53ZikmJlhvKGZwKSl7dmFyIGI9UShhLEguSi5HYSksYz1RKGEsSC5KLmRhKSE9PVguVi51YiYmUShhLEguSi5kYSkhPT1YLlYuT2ImJlEoYSxILkouZGEpIT09WC5WLkZiJiZhLmV2ZW50TmFtZSE9PUYuRC5KYjtIdihiLGMpO3ZhciBkPUR2W0d2KGIucHJlZml4KV07T00oZCk7VShhLEYuRC5FZCxkKX19O2Z1bmN0aW9uIFFNKCl7cmV0dXJuIGtqKCJkZWR1cGVfZ2NsaWQiLGZ1bmN0aW9uKCl7cmV0dXJuIEF2KCl9KX07dmFyIFJNPS9eKHd3d1wuKT9nb29nbGUoXC5jb20/KT8oXC5bYS16XXsyfXQ/KT8kLyxTTT0vXnd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSQvO2Z1bmN0aW9uIFRNKGEpe2F8fChhPVVNKCkpO3JldHVybiBhLk50PyExOmEubnN8fGEucXN8fGEudnN8fGEucnN8fGEuRGd8fGEuVGh8fGEuVHJ8fGEuVmg9PT0iYXcuZHMifHxNKDIzNSkmJmEuVmg9PT0iYXcuZHYifHxhLllyPyEwOiExfQpmdW5jdGlvbiBVTSgpe3ZhciBhPXt9LGI9VXEoITApO2EuTnQ9ISFiLl91cDt2YXIgYz1lcygpLGQ9YXQoKTthLm5zPWMuYXchPT12b2lkIDA7YS5xcz1jLmRjIT09dm9pZCAwO2EudnM9Yy53YnJhaWQhPT12b2lkIDA7YS5ycz1jLmdicmFpZCE9PXZvaWQgMDthLlZoPXR5cGVvZiBjLmdjbHNyYz09PSJzdHJpbmciP2MuZ2Nsc3JjOnZvaWQgMDthLkRnPWQuRGc7YS5UaD1kLlRoO3ZhciBlPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjthLllyPVJNLnRlc3QoZSk7YS5Ucj1TTS50ZXN0KGUpO3JldHVybiBhfTtmdW5jdGlvbiBWTSgpe3ZhciBhPUEuX191c3BhcGk7aWYoeWIoYSkpe3ZhciBiPSIiO3RyeXthKCJnZXRVU1BEYXRhIiwxLGZ1bmN0aW9uKGMsZCl7aWYoZCYmYyl7dmFyIGU9Yy51c3BTdHJpbmc7ZSYmUmVnRXhwKCJeW1xcZGEtekEtWi1dezEsMjB9JCIpLnRlc3QoZSkmJihiPWUpfX0pfWNhdGNoKGMpe31yZXR1cm4gYn19Owp2YXIgV009ZnVuY3Rpb24oYSl7dmFyIGI9WG8oZnApO1YoYSxILkouWWUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExJiYhYik7dmFyIGM9UShhLEguSi5kaiksZD1PKGEuTSxGLkQudWMpIT09ITEsZT1MSyhhKTtkfHxVKGEsRi5ELkhkLCIxIik7dmFyIGY9SHIoZS5wcmVmaXgpLGc9UShhLEguSi5zYSl8fFEoYSxILkoudWcpfHxRKGEsSC5KLldlKTtjfHxnfHxVKGEsIl8mYXB2YyIsIjAiKTthLk0uaXNHdG1FdmVudCYmVShhLEYuRC5JbCwiZyIpO1UoYSxGLkQuRWQpO1UoYSxGLkQuTWIpO2lmKGImJihVKGEsRi5ELk1iLHlMKCkpLGQpKXtIdihlKTt2YXIgaD1EdltHdihlLnByZWZpeCldO1UoYSxGLkQuRWQsaCk7T00oaCl9aWYoYS5ldmVudE5hbWU9PT1GLkQud2EmJiFnKXt2YXIgbD1PKGEuTSxGLkQuemMpLG49TyhhLk0sRi5ELkRiKXx8e307UEsoe1RuOmQsbW86bixRbzpsLFVuOmV9KTshYyYmWXMoZikmJihWKGEsSC5KLnZkLCEwKSxVKGEsIl8mYXB2YyIsCiIxIikpfWlmKGMpYS5pc0Fib3J0ZWQ9ITA7ZWxzZXthLnRhcmdldC5kZXN0aW5hdGlvbklkJiZVKGEsRi5ELlFlLGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO1UoYSxGLkQuVWIsYS5ldmVudE5hbWUpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZVKGEsRi5ELlViLEYuRC5zYyk7aWYoUShhLEguSi5zYSkpVShhLEYuRC5VYixGLkQud3ApLFUoYSxGLkQuc2EsIjEiKTtlbHNlIGlmKFEoYSxILkoudWcpKVUoYSxGLkQuVWIsRi5ELkhwKTtlbHNlIGlmKFEoYSxILkouV2UpKVUoYSxGLkQuVWIsRi5ELkVwKTtlbHNle3ZhciBwPWVzKCk7VShhLEYuRC5EZCxwLmdjbGlkKTtVKGEsRi5ELktkLHAuZGNsaWQpO1UoYSxGLkQuQWwscC5nY2xzcmMpO2lmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpfHxNKDQyMSkpVShhLEYuRC5FZSxwLndicmFpZCksVShhLEYuRC5CZixwLmdicmFpZCk7dmFyIHE9TSg1ODkpLHI9ZnVuY3Rpb24oZmEpe3JldHVybiBmYS5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpfSwKdD0hIU8oYS5NLEYuRC56YSksdT1xP3Q/ZnVuY3Rpb24oZmEpe3JldHVybiB4TChyKGZhKSl9OmZ1bmN0aW9uKGZhKXtyZXR1cm4geEwoZmEucmVwbGFjZSgvIy4qJC8sIiIpKX06cix2PWJ0KHUpO1UoYSxGLkQuemEsdik7dmFyIHg9ISFPKGEuTSxGLkQuVWEpLHk9Qi5yZWZlcnJlcjtVKGEsRi5ELlVhLHE/eD9yKHkpOnkucmVwbGFjZSgvIy4qJC8sIiIpOkIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIik7d0woYSx2LHUsITApO2lmKEtjKXt2YXIgej1MaihSaihLYyksImhvc3QiKTt6JiZVKGEsRi5ELmJtLHopfWlmKCFRKGEsSC5KLldlKSl7dmFyIEM9YXQoKTtVKGEsRi5ELnpmLEMuRGcpO1UoYSxGLkQuQWYsQy5Tcil9dmFyIEQ9VU0oKTtUTShEKSYmVShhLEYuRC5QZCwiMSIpO1UoYSxGLkQuRGwsUU0oKSk7VXEoITEpLl91cD09PSIxIiYmVShhLEYuRC5RbCwiMSIpfXdvLkg9ITA7VShhLEYuRC5TYik7VShhLEYuRC5sYik7aWYoTSg0MjEpKXt2YXIgST1GcihlKTsKSS5sZW5ndGg+MCYmVShhLEYuRC5TYixJLmpvaW4oIi4iKSk7dmFyIEc9RHIoZisiX2F3Iik7Ry5sZW5ndGg+MCYmVShhLEYuRC5sYixHLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5EZCkmJiFSKGEsRi5ELktkKSYmV3MoZikpe3ZhciBOPUZyKGUpO04ubGVuZ3RoPjAmJlUoYSxGLkQuU2IsTi5qb2luKCIuIikpfWVsc2UgaWYoIVIoYSxGLkQuRWUpJiZiKXt2YXIgUz1EcihmKyJfYXciKTtTLmxlbmd0aD4wJiZVKGEsRi5ELmxiLFMuam9pbigiLiIpKX1VKGEsRi5ELlVsLHFkKCkpO2EuTS5pc0d0bUV2ZW50JiYoYS5NLkVhW0YuRC5SY109ZkQoRi5ELlJjKSk7U3QoYS5NKT9VKGEsRi5ELmRlLCExKTpVKGEsRi5ELmRlLCEwKTtWKGEsSC5KLkJrLCEwKTt2YXIgVz1WTSgpO1chPT12b2lkIDAmJlUoYSxGLkQua2csV3x8ImVycm9yIik7dmFyIGVhPUx0KCk7ZWEmJlUoYSxGLkQuS2UsZWEpO3ZhciBqYT1LdCgpO2phJiZVKGEsRi5ELk9lLGphKTtRKGEsSC5KLlBjKXx8VihhLEguSi5KYSwKITEpfX07CnZhciBYTT1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyEwOmI7Yz1jPT09dm9pZCAwP3t9OmM7aWYoYS5ldmVudE5hbWU9PT1GLkQuSmImJiFhLk0uaXNHdG1FdmVudCl7dmFyIGQ9TyhhLk0sRi5ELlNmKTtpZih0eXBlb2YgZD09PSJmdW5jdGlvbiImJiFRKGEsSC5KLnNhKSl7dmFyIGU9U3RyaW5nKE8oYS5NLEYuRC5UZikpLGY9ZTtjW2VdJiYoZj1jW2VdKTt2YXIgZz1SKGEsZil8fE8oYS5NLGUpO2lmKGIpe2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIilpZihlPT09Ri5ELmxiJiZnIT09dm9pZCAwKXt2YXIgaD1nLnNwbGl0KCIuIik7aC5sZW5ndGg9PT0wP2Qodm9pZCAwKTpoLmxlbmd0aD09PTE/ZChoWzBdKTpkKGgpfWVsc2UgaWYoZT09PUYuRC5xcSYmTSgyNTgpKXt2YXIgbCxuPXt9O1hvKGZwKSYmKG4uYXVpZD1SKGEsRi5ELkVkKSk7dmFyIHA9VU0oKTtpZihUTShwKSluLmdhZF9zb3VyY2U9cC5EZyxuLmdhZF9jYW1wYWlnbmlkPXAuVGgsbi5zZXNzaW9uX3N0YXJ0X3RpbWVfdXNlYz0KKERhdGUubm93KCkqMUUzKS50b1N0cmluZygpLG4ubGFuZGluZ19wYWdlX3VybD1BLmxvY2F0aW9uLmhyZWYsbi5sYW5kaW5nX3BhZ2VfcmVmZXJyZXI9Qi5yZWZlcnJlcixuLmxhbmRpbmdfcGFnZV91c2VyX2FnZW50PUhjLnVzZXJBZ2VudDtlbHNle3ZhciBxPVEoYSxILkouR2EpO24uZ2FkX3NvdXJjZT1ScyhxLnByZWZpeCkuRWd9bD1idG9hKEpTT04uc3RyaW5naWZ5KG4pKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2QobCl9ZWxzZSBkKGcpfWVsc2UgZChnKX1hLmlzQWJvcnRlZD0hMH19O3ZhciBZTT1mdW5jdGlvbihhKXtpZihNKDQyNSkmJlEoYSxILkouRmMpKXtmb3IodmFyIGI9WyJfJmFwdmMiLCJ0aWRzIixGLkQuVGEsRi5ELlFpLEYuRC5VYixGLkQuUWUsRi5ELlZjLEYuRC5YY10sYz1tKGV1KGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtpZihlPT09Ri5ELnphKXt2YXIgZj1SKGEsZSk7ZiYmKGY9Zi5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpKTtVKGEsZSxmKX1lbHNlIGIuaW5jbHVkZXMoZSl8fFUoYSxlKX1WKGEsSC5KLlhnKTtWKGEsSC5KLmhkKX19O2Z1bmN0aW9uIFpNKGEpe2lmKGZuLkspaWYod28uSD0hMCxhLmV2ZW50TmFtZT09PUYuRC53YSl6byhhLk0sYS50YXJnZXQuaWQpO2Vsc2V7UShhLEguSi5QYyl8fCh3by5LW2EudGFyZ2V0LmlkXT0hMCk7dmFyIGI9UShhLEguSi5OYik7WkIoYil9fTt2YXIgJE09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj1iPT09dm9pZCAwP3t9OmI7Yz1mLlNqPT09dm9pZCAwPyExOmYuU2o7ZD1mLk1qPT09dm9pZCAwPyExOmYuTWo7ZT1mLmtvPT09dm9pZCAwPyExOmYua287ZHx8KGEuTS5pc0d0bUV2ZW50P1EoYSxILkouZGEpIT09WC5WLnhhJiZhLmV2ZW50TmFtZSYmVShhLEYuRC5VYixhLmV2ZW50TmFtZSk6VShhLEYuRC5VYixhLmV2ZW50TmFtZSkpO0diKGEuTS5FYSxmdW5jdGlvbihnLGgpe016W2ddfHxjJiZCb1tnXXx8ZSYmT3pbZ118fFUoYSxnLGgpfSl9O3ZhciBhTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9bShbRi5ELlBhLEYuRC5RYSxGLkQuZWIsRi5ELk5lLEYuRC5HZSxGLkQuVWQsRi5ELkllLEYuRC5UYyxGLkQuTGQsRi5ELmtoLEYuRC5GZixGLkQuRGYsRi5ELkVmLEYuRC5DZixGLkQud2ksRi5ELlNkLEYuRC5RZCxGLkQuUmQsRi5ELnRiXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5jb3B5VG9IaXREYXRhKGMudmFsdWUpfTtmdW5jdGlvbiBiTihhLGIpe3JldHVybiBrcigiZ3NpZF9kYyIse3ZhbHVlOntqb2luSWQ6YSxsYXN0Sm9pbmVkVGltZU1zOmJ9LGV4cGlyZXM6YiszRTV9KT09PTA/ITA6ITF9Owp2YXIgY049ZnVuY3Rpb24oYSl7aWYoWG8oZnApKXt2YXIgYjthOnt2YXIgYz1ucigiZ3NpZF9kYyIpO2lmKGMuZXJyb3I9PT0wJiZjLnZhbHVlJiZ0eXBlb2YgYy52YWx1ZT09PSJvYmplY3QiKXt2YXIgZD1jLnZhbHVlO2lmKGQudmFsdWUmJnR5cGVvZiBkLnZhbHVlPT09Im9iamVjdCIpe3ZhciBlPWQudmFsdWU7aWYoZS5qb2luSWQmJmUubGFzdEpvaW5lZFRpbWVNcyYmdHlwZW9mIGUuam9pbklkPT09InN0cmluZyImJnR5cGVvZiBlLmxhc3RKb2luZWRUaW1lTXM9PT0ibnVtYmVyIil7Yj1lO2JyZWFrIGF9fX1iPXZvaWQgMH12YXIgZj1iLGc9Zj09bnVsbD92b2lkIDA6Zi5qb2luSWQsaD1OYigpO2lmKCFmfHwhZ3x8Zi5sYXN0Sm9pbmVkVGltZU1zPGgtM0U1KXt2YXIgbD1jYygpO2c9bCYmYk4obCxOYigpKT9sOnZvaWQgMDtnJiZWKGEsSC5KLmhkLCEwKX1lbHNlIGcmJmYubGFzdEpvaW5lZFRpbWVNczxoLTZFNCYmYk4oZi5qb2luSWQsaCkmJlYoYSxILkouaGQsITApO2cmJk0oNDc0KSYmClYoYSxILkouWGcsZyl9fTt2YXIgZE49ZnVuY3Rpb24oYSl7VihhLEguSi53ZixPKGEuTSxGLkQudWMpIT09ITEpO1YoYSxILkouR2EsTEsoYSkpO1YoYSxILkouWGUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExKTtWKGEsSC5KLndkLFN0KGEuTSkpfTt2YXIgZU49e3pxOntVdDoiY2QiLGZwOiJjZSIsVnQ6ImNmIixXdDoiY3BmIixYdDoiY3UifX07dmFyIGZOPWZ1bmN0aW9uKGEpe3ZhciBiPWVOLnpxLmZwLGM9TyhhLk0sRi5ELkNiKTtSKGEsRi5ELmVkKXx8VShhLEYuRC5lZCx7fSk7UihhLEYuRC5lZClbYl09Y307ZnVuY3Rpb24gZ04oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYz13YihyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTHx8W10pO2MmJihVKGEsRi5ELlZmLGMpLGImJnViKCkpfTt2YXIgaE49ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLmdldE1lcmdlZFZhbHVlcyhGLkQuVGEpO2ImJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxiKX07dmFyIGlOPWZ1bmN0aW9uKGEpe3ZhciBiPU9wKCExKTtVKGEsRi5ELk1lLGIpfTt2YXIgak49ZnVuY3Rpb24oYSl7UShhLEguSi53ZCk/VShhLEYuRC5kZSwiMCIpOlUoYSxGLkQuZGUsIjEiKX07dmFyIGtOPWZ1bmN0aW9uKGEsYil7aWYoYj09PXZvaWQgMHx8Yil7dmFyIGM9Vk0oKTtjIT09dm9pZCAwJiZVKGEsRi5ELmtnLGN8fCJlcnJvciIpfXZhciBkPUx0KCk7ZCYmVShhLEYuRC5LZSxkKTt2YXIgZT1LdCgpO2UmJlUoYSxGLkQuT2UsZSl9O3ZhciBsTj1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5raiksYz1FKDUpO2ImJmJbY10mJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7cmV0cnk6IjEifSl9O3ZhciBtTj1mdW5jdGlvbihhKXtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELktpLCIxIil9Owp2YXIgbk49ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPT12b2lkIDApcmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToibSIsbG9jYXRpb246YixzZWxlY3RvcjpjfX0pOnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSxvTj1mdW5jdGlvbihhLGIsYyxkKXtpZighYylyZXR1cm4hMTtmb3IodmFyIGU9U3RyaW5nKGMudmFsdWUpLGYsZz12b2lkIDAsaD1lLnJlcGxhY2UoL1xbIj8nPy9nLCIuIikucmVwbGFjZSgvIj8nP1xdL2csIiIpLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKHUpe3JldHVybiB1LnRyaW0oKX0pLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdSYmIVNiKHUsIiMiKSYmIVNiKHUsIi4iKX0pLGw9MDtsPGgubGVuZ3RoO2wrKyl7dmFyIG49aFtsXTtpZihTYihuLCJkYXRhTGF5ZXIuIikpZj11QShuLnN1YnN0cmluZygxMCkpLGc9bk4oZiwiZCIsbik7ZWxzZXt2YXIgcD1uLnNwbGl0KCIuIik7Zj1BW3Auc2hpZnQoKV07CmZvcih2YXIgcT0wO3E8cC5sZW5ndGg7cSsrKWY9ZiYmZltwW3FdXTtnPW5OKGYsImoiLG4pfWlmKGYhPT12b2lkIDApYnJlYWt9aWYoZj09PXZvaWQgMCl0cnl7dmFyIHI9Qi5xdWVyeVNlbGVjdG9yQWxsKGUpO2lmKHImJnIubGVuZ3RoPjApe2Y9W107Zm9yKHZhciB0PTA7dDxyLmxlbmd0aCYmdDwoYj09PSJlbWFpbCJ8fGI9PT0icGhvbmVfbnVtYmVyIj81OjEpO3QrKylmLnB1c2goZmQoclt0XSl8fExiKHJbdF0udmFsdWUpKTtmPWYubGVuZ3RoPT09MT9mWzBdOmY7Zz1uTihmLCJjIixlKX19Y2F0Y2godSl7UCgxNDkpfXJldHVybiBmPyhhW2JdPWYsZCYmZyYmKGRbYl09ZyksITApOiExfTsKdmFyIHBOPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImNjZF9hZGRfMXBfZGF0YSIsITEpJiZYbyhmcCkpe3ZhciBiPWEuTS5pYltGLkQubG1dO2lmKENkKGIpJiZiLmVuYWJsZV9jb2RlKXt2YXIgYz1PKGEuTSxGLkQuQWMpO2lmKGM9PT1udWxsKVYoYSxILkouR24sbnVsbCk7ZWxzZSBpZihiLmVuYWJsZV9jb2RlJiZDZChjKSYmKFp2KGMpLFYoYSxILkouR24sYykpLENkKGIuc2VsZWN0b3JzKSl7dmFyIGQ9SC5KLmlyLGU7dmFyIGY9Yi5zZWxlY3RvcnMsZz1NKDUyMyk7Zz1nPT09dm9pZCAwPyExOmc7aWYoZil7dmFyIGg9e30sbD0hMSxuPXt9O2w9b04oaCwiZW1haWwiLGYuZW1haWwsbil8fGw7bD1vTihoLCJwaG9uZV9udW1iZXIiLGYucGhvbmUsbil8fGw7aC5hZGRyZXNzPVtdO2Zvcih2YXIgcD1mLm5hbWVfYW5kX2FkZHJlc3N8fFtdLHE9MDtxPHAubGVuZ3RoO3ErKyl7dmFyIHI9e30sdD17fTtsPW9OKHIsImZpcnN0X25hbWUiLHBbcV0uZmlyc3RfbmFtZSx0KXx8bDtsPW9OKHIsCiJsYXN0X25hbWUiLHBbcV0ubGFzdF9uYW1lLHQpfHxsO2w9b04ociwic3RyZWV0IixwW3FdLnN0cmVldCx0KXx8bDtsPW9OKHIsImNpdHkiLHBbcV0uY2l0eSx0KXx8bDtsPW9OKHIsInJlZ2lvbiIscFtxXS5yZWdpb24sdCl8fGw7bD1vTihyLCJjb3VudHJ5IixwW3FdLmNvdW50cnksdCl8fGw7bD1vTihyLCJwb3N0YWxfY29kZSIscFtxXS5wb3N0YWxfY29kZSx0KXx8bDtoLmFkZHJlc3MucHVzaChyKTtnJiYoci5fdGFnX21ldGFkYXRhPXQpfWcmJihoLl90YWdfbWV0YWRhdGE9bik7ZT1sP2g6dm9pZCAwfWVsc2UgZT12b2lkIDA7VihhLGQsZSl9fX19O2Z1bmN0aW9uIEZPKGEsYixjLGQpe31GTy5QPSJpbnRlcm5hbC5leGVjdXRlRXZlbnRQcm9jZXNzb3IiO2Z1bmN0aW9uIEdPKGEpe3ZhciBiO3JldHVybiBVZChiLHRoaXMuVCwxKX1HTy5QPSJpbnRlcm5hbC5leGVjdXRlSmF2YXNjcmlwdFN0cmluZyI7ZnVuY3Rpb24gSE8oYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPUE7dHJ5e2I9S2ooYy5lc2NhcGUoYy5hdG9iKGEpKSl9Y2F0Y2goZCl7cmV0dXJufXJldHVybiBifTtmdW5jdGlvbiBJTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1JTy5QPSJpbnRlcm5hbC5nZW5lcmF0ZUNsaWVudElkIjtmdW5jdGlvbiBKTyhhKXt2YXIgYj17fTtyZXR1cm4gVWQoYil9Sk8uUD0iaW50ZXJuYWwuZ2V0QWRzQ29va2llV3JpdGluZ09wdGlvbnMiO2Z1bmN0aW9uIEtPKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9S08uUD0iaW50ZXJuYWwuZ2V0QWxsb3dBZFBlcnNvbmFsaXphdGlvbiI7ZnVuY3Rpb24gTE8oKXt2YXIgYTtyZXR1cm4gYX1MTy5QPSJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiO2Z1bmN0aW9uIE1PKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7cmV0dXJuIGN9TU8uUD0iaW50ZXJuYWwuZ2V0QXVpZCI7ZnVuY3Rpb24gTk8oKXt2YXIgYT1bXTtyZXR1cm4gVWQoYSl9Tk8uUD0iaW50ZXJuYWwuZ2V0Q29udGFpbmVySWRzIjtmdW5jdGlvbiBPTygpe3ZhciBhPW5ldyBrYjtMKHRoaXMsInJlYWRfY29udGFpbmVyX2RhdGEiKSxhLnNldCgiY29udGFpbmVySWQiLGlnKSxhLnNldCgidmVyc2lvbiIsa2cpLGEuc2V0KCJlbnZpcm9ubWVudE5hbWUiLGpnKSxhLnNldCgiZGVidWdNb2RlIixsZyksYS5zZXQoInByZXZpZXdNb2RlIixtZy5QbyksYS5zZXQoImVudmlyb25tZW50TW9kZSIsbWcuS3IpLGEuc2V0KCJmaXJzdFBhcnR5U2VydmluZyIsYWsoKSksYS5zZXQoImNvbnRhaW5lclVybCIsS2MpLGEuc2V0KCJpc0dvb2dsZU9ubHlNb2RlIixJZig2MikpLGEuWmEoKTtyZXR1cm4gYX1PTy5wdWJsaWNOYW1lPSJnZXRDb250YWluZXJWZXJzaW9uIjtmdW5jdGlvbiBQTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO3JldHVybiBjfVBPLnB1YmxpY05hbWU9ImdldENvb2tpZVZhbHVlcyI7ZnVuY3Rpb24gUU8oKXt2YXIgYT0iIjtyZXR1cm4gYX1RTy5QPSJpbnRlcm5hbC5nZXRDb3JlUGxhdGZvcm1TZXJ2aWNlc1BhcmFtIjtmdW5jdGlvbiBSTygpe3JldHVybiB5bSgpfVJPLlA9ImludGVybmFsLmdldENvdW50cnlDb2RlIjtmdW5jdGlvbiBTTygpe3ZhciBhPVtdO2E9dGsoKTtyZXR1cm4gVWQoYSl9U08uUD0iaW50ZXJuYWwuZ2V0RGVzdGluYXRpb25JZHMiO2Z1bmN0aW9uIFRPKGEpe3ZhciBiPW5ldyBrYjtyZXR1cm4gYn1UTy5QPSJpbnRlcm5hbC5nZXREZXZlbG9wZXJJZHMiO2Z1bmN0aW9uIFVPKGEpe3ZhciBiO3JldHVybiBifVVPLlA9ImludGVybmFsLmdldEVjc2lkQ29va2llVmFsdWUiO2Z1bmN0aW9uIFZPKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gY31WTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QXR0cmlidXRlIjtmdW5jdGlvbiBXTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVdPLlA9ImludGVybmFsLmdldEVsZW1lbnRCeUlkIjtmdW5jdGlvbiBYTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1YTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50SW5uZXJUZXh0IjtmdW5jdGlvbiBZTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVlPLlA9ImludGVybmFsLmdldEVsZW1lbnRQYXJlbnQiO2Z1bmN0aW9uIFpPKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9Wk8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFByZXZpb3VzU2libGluZyI7ZnVuY3Rpb24gJE8oYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjKX0kTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UHJvcGVydHkiO2Z1bmN0aW9uIGFQKGEpe3ZhciBiO3JldHVybiBifWFQLlA9ImludGVybmFsLmdldEVsZW1lbnRWYWx1ZSI7ZnVuY3Rpb24gYlAoYSl7dmFyIGI9MDtyZXR1cm4gYn1iUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50VmlzaWJpbGl0eVJhdGlvIjtmdW5jdGlvbiBjUChhKXt2YXIgYj1udWxsO3JldHVybiBifWNQLlA9ImludGVybmFsLmdldEVsZW1lbnRzQnlDc3NTZWxlY3RvciI7CmZ1bmN0aW9uIGRQKGEpe3ZhciBiO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZXZlbnRfZGF0YSIsYSk7dmFyIGM7YTp7dmFyIGQ9YSxlPVhGKHRoaXMpLm9yaWdpbmFsRXZlbnREYXRhO2lmKGUpe2Zvcih2YXIgZj1lLGc9e30saD17fSxsPXt9LG49W10scD1kLnNwbGl0KCJcXFxcIikscT0wO3E8cC5sZW5ndGg7cSsrKXtmb3IodmFyIHI9cFtxXS5zcGxpdCgiXFwuIiksdD0wO3Q8ci5sZW5ndGg7dCsrKXtmb3IodmFyIHU9clt0XS5zcGxpdCgiLiIpLHY9MDt2PHUubGVuZ3RoO3YrKyluLnB1c2godVt2XSksdiE9PXUubGVuZ3RoLTEmJm4ucHVzaChsKTt0IT09ci5sZW5ndGgtMSYmbi5wdXNoKGgpfXEhPT1wLmxlbmd0aC0xJiZuLnB1c2goZyl9Zm9yKHZhciB4PVtdLHk9IiIsej1tKG4pLEM9ei5uZXh0KCk7IUMuZG9uZTtDPQp6Lm5leHQoKSl7dmFyIEQ9Qy52YWx1ZTtEPT09bD8oeC5wdXNoKHkpLHk9IiIpOnk9RD09PWc/eSsiXFwiOkQ9PT1oP3krIi4iOnkrRH15JiZ4LnB1c2goeSk7Zm9yKHZhciBJPW0oeCksRz1JLm5leHQoKTshRy5kb25lO0c9SS5uZXh0KCkpe2lmKGY9PW51bGwpe2M9dm9pZCAwO2JyZWFrIGF9Zj1mW0cudmFsdWVdfWM9Zn1lbHNlIGM9dm9pZCAwfWI9VWQoYyx0aGlzLlQsMSk7cmV0dXJuIGJ9ZFAuUD0iaW50ZXJuYWwuZ2V0RXZlbnREYXRhIjtmdW5jdGlvbiBlUChhKXt2YXIgYj1udWxsO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZG9tX2VsZW1lbnRzIiwiY3NzIixhKTt0cnl7dmFyIGM9Qi5xdWVyeVNlbGVjdG9yKGEpO2MmJihiPW5ldyBQZChjKSl9Y2F0Y2goZCl7cmV0dXJuIG51bGx9cmV0dXJuIGJ9ZVAuUD0iaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gZlAoKXt2YXIgYTtyZXR1cm4gYX1mUC5QPSJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiO2Z1bmN0aW9uIGdQKCl7cmV0dXJuIG5ldyBQZChQayl9Z1AuUD0iaW50ZXJuYWwuZ2V0SHRtbElkIjtmdW5jdGlvbiBoUCgpe3ZhciBhO3JldHVybiBhfWhQLlA9ImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiO2Z1bmN0aW9uIGlQKGEsYil7dmFyIGM9e307cmV0dXJuIFVkKGMpfWlQLlA9ImludGVybmFsLmdldExpbmtlclZhbHVlRnJvbUxvY2F0aW9uIjtmdW5jdGlvbiBqUCgpe3ZhciBhPW5ldyBrYjtyZXR1cm4gYX1qUC5QPSJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyI7ZnVuY3Rpb24ga1AoYSxiKXt2YXIgYztpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgZD0kSChhKXx8e307Yz1VZChkW2JdLHRoaXMuVCk7cmV0dXJuIGN9a1AuUD0iaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIjtmdW5jdGlvbiBsUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IXBoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJib29sZWFufHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJnZXRfdXJsIiwicXVlcnkiLGEpO3ZhciBkPUxqKFJqKEEubG9jYXRpb24uaHJlZiksInF1ZXJ5IiksZT1JaihkLGEsYik7Yz1VZChlLHRoaXMuVCk7cmV0dXJuIGN9bFAucHVibGljTmFtZT0iZ2V0UXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBtUChhLGIpe3ZhciBjO3JldHVybiBjfW1QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyUXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBuUChhKXt2YXIgYj0iIjtyZXR1cm4gYn1uUC5wdWJsaWNOYW1lPSJnZXRSZWZlcnJlclVybCI7ZnVuY3Rpb24gb1AoKXtyZXR1cm4gem0oKX1vUC5QPSJpbnRlcm5hbC5nZXRSZWdpb25Db2RlIjtmdW5jdGlvbiBwUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPWVEKGEpO2M9VWQoZFtiXSx0aGlzLlQpO3JldHVybiBjfXBQLlA9ImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gcVAoYSxiKXt2YXIgYz1udWxsOwpyZXR1cm4gY31xUC5QPSJpbnRlcm5hbC5nZXRTY29wZWRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIHJQKCl7dmFyIGE9bmV3IGtiO2Euc2V0KCJ3aWR0aCIsMCk7YS5zZXQoImhlaWdodCIsMCk7cmV0dXJuIGF9clAuUD0iaW50ZXJuYWwuZ2V0U2NyZWVuRGltZW5zaW9ucyI7ZnVuY3Rpb24gc1AoKXt2YXIgYT0iIjtyZXR1cm4gYX1zUC5QPSJpbnRlcm5hbC5nZXRUb3BTYW1lRG9tYWluVXJsIjtmdW5jdGlvbiB0UCgpe3ZhciBhPSIiO3JldHVybiBhfXRQLlA9ImludGVybmFsLmdldFRvcFdpbmRvd1VybCI7ZnVuY3Rpb24gdVAoYSl7dmFyIGI9IiI7aWYoIW1oKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImdldF91cmwiLGEpO2I9TGooUmooQS5sb2NhdGlvbi5ocmVmKSxhKTtyZXR1cm4gYn11UC5wdWJsaWNOYW1lPSJnZXRVcmwiO2Z1bmN0aW9uIHZQKCl7TCh0aGlzLCJnZXRfdXNlcl9hZ2VudCIpO3JldHVybiBIYy51c2VyQWdlbnR9dlAucHVibGljTmFtZT0iZ2V0VXNlckFnZW50Ijt2UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnQiO2Z1bmN0aW9uIHdQKCl7dmFyIGE7cmV0dXJuIGE/VWQoRU0oYSkpOmF9d1AuUD0iaW50ZXJuYWwuZ2V0VXNlckFnZW50Q2xpZW50SGludHMiO3ZhciB5UD1mdW5jdGlvbihhKXt2YXIgYj1hLmV2ZW50TmFtZT09PUYuRC5zYyYmRWwoKSYmYmsoWksoYSkpLGM9UShhLEguSi5kbiksZD1RKGEsSC5KLktrKSxlPVEoYSxILkoubWcpLGY9UShhLEguSi5UZSksZz1RKGEsSC5KLkZjKSxoPVEoYSxILkouaGQpLGw9UShhLEguSi5yZyksbj1RKGEsSC5KLk1oKSxwPVEoYSxILkouTmgpLHE9ISFZSyhhKXx8ISFRKGEsSC5KLnBwKTtyZXR1cm4hKCFuZCgpJiYha2QoKXx8ZXx8cXx8Znx8Z3x8aHx8bHx8cHx8bnx8Ynx8Y3x8IWQmJnhQKCkpfSx4UD1mdW5jdGlvbigpe3JldHVybiBhbCg5LGZ1bmN0aW9uKCl7cmV0dXJuITF9KX07ZnVuY3Rpb24gelAoKXt2YXIgYT1BO3JldHVybiBhLmdhR2xvYmFsPWEuZ2FHbG9iYWx8fHt9fWZ1bmN0aW9uIEFQKGEsYil7dmFyIGM9elAoKTtpZihjLnZpZD09PXZvaWQgMHx8YiYmIWMuZnJvbV9jb29raWUpYy52aWQ9YSxjLmZyb21fY29va2llPWJ9O3ZhciBCUD1bIkdBMSJdOwp2YXIgQ1A9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVEoYSxILkouUGspO2lmKGQ9PT12b2lkIDB8fGM8PWQpVShhLEYuRC5LYixiKSxWKGEsSC5KLlBrLGMpfSxFUD1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQuS2IpO2lmKE8oYS5NLEYuRC5aYykmJk8oYS5NLEYuRC5ZYyl8fGImJmM9PT1iKXJldHVybiBjO2lmKGMpe2M9IiIrYztpZighRFAoYyxhKSlyZXR1cm4gUCgzMSksYS5pc0Fib3J0ZWQ9ITAsIiI7QVAoYyxYbyhGLkQucmEpKTtyZXR1cm4gY31QKDMyKTthLmlzQWJvcnRlZD0hMDtyZXR1cm4iIn0sRlA9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYz1iLnByZWZpeCsiX2dhIixkPUJ2KGIucHJlZml4KyJfZ2EiLGIuZG9tYWluLGIucGF0aCxCUCxGLkQucmEpO2lmKCFkKXt2YXIgZT1TdHJpbmcoTyhhLk0sRi5ELklkLCIiKSk7ZSYmZSE9PWMmJihkPUJ2KGUsYi5kb21haW4sYi5wYXRoLEJQLEYuRC5yYSkpfXJldHVybiBkfSxEUD1mdW5jdGlvbihhLGIpe3ZhciBjOwp2YXIgZD1RKGIsSC5KLkdhKSxlPWQucHJlZml4KyJfZ2EiLGY9dXEoZCx2b2lkIDAsdm9pZCAwLEYuRC5yYSk7aWYoTyhiLk0sRi5ELkpkKT09PSExJiZGUChiKT09PWEpYz0hMDtlbHNle3ZhciBnO2c9W0JQWzBdLHRxKGQuZG9tYWluLGQucGF0aCksYV0uam9pbigiLiIpO2M9b3EoZSxnLGYpIT09MX1yZXR1cm4gY307CnZhciBHUD1mdW5jdGlvbihhKXt2YXIgYj0wLGM9MDtyZXR1cm57c3RhcnQ6ZnVuY3Rpb24oKXtiPU5iKCl9LHN0b3A6ZnVuY3Rpb24oKXtjPXRoaXMuZ2V0KCl9LGdldDpmdW5jdGlvbigpe3ZhciBkPTA7YS5WaigpJiYoZD1OYigpLWIpO3JldHVybiBkK2N9fX0sSFA9ZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwO3RoaXMuSz0wO3RoaXMuaXNBY3RpdmU9dGhpcy5pc1Zpc2libGU9dGhpcy5OPSExO3RoaXMuWj10aGlzLlI9dm9pZCAwfTtrPUhQLnByb3RvdHlwZTtrLktxPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYoIXRoaXMuSCl7dGhpcy5OPUIuaGFzRm9jdXMoKTt0aGlzLmlzVmlzaWJsZT0hQi5oaWRkZW47dGhpcy5pc0FjdGl2ZT0hMDt2YXIgYz1mdW5jdGlvbihlLGYsZyl7JGMoZSxmLGZ1bmN0aW9uKGgpe2IuSC5zdG9wKCk7ZyhoKTtiLlZqKCkmJmIuSC5zdGFydCgpfSl9LGQ9QTtjKGQsImZvY3VzIixmdW5jdGlvbigpe2IuTj0hMH0pO2MoZCwiYmx1ciIsZnVuY3Rpb24oKXtiLk49CiExfSk7YyhkLCJwYWdlc2hvdyIsZnVuY3Rpb24oZSl7Yi5pc0FjdGl2ZT0hMDtlLnBlcnNpc3RlZCYmUCg1Nik7Yi5aJiZiLlooKX0pO2MoZCwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7Yi5pc0FjdGl2ZT0hMTtiLlImJmIuUigpfSk7YyhCLCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2IuaXNWaXNpYmxlPSFCLmhpZGRlbn0pO2JrKFpLKGEpKSYmIU9jKCkmJmMoZCwiYmVmb3JldW5sb2FkIixmdW5jdGlvbigpe1prKDksITApfSk7dGhpcy5xayghMCk7dGhpcy5LPTB9fTtrLnFrPWZ1bmN0aW9uKGEpe2lmKChhPT09dm9pZCAwPzA6YSl8fHRoaXMuSCl0aGlzLksrPXRoaXMuWWgoKSx0aGlzLkg9R1AodGhpcyksdGhpcy5WaigpJiZ0aGlzLkguc3RhcnQoKX07ay5LdD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLlloKCk7Yj4wJiZVKGEsRi5ELm5oLGIpfTtrLmxzPWZ1bmN0aW9uKGEpe1UoYSxGLkQubmgpO3RoaXMucWsoKTt0aGlzLks9MH07ay5Waj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk4mJgp0aGlzLmlzVmlzaWJsZSYmdGhpcy5pc0FjdGl2ZX07ay5Ycj1mdW5jdGlvbigpe3JldHVybiB0aGlzLksrdGhpcy5ZaCgpfTtrLlloPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCYmdGhpcy5ILmdldCgpfHwwfTtrLmh0PWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLkNvPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfTt2YXIgSVA9ZnVuY3Rpb24oYSl7c2IoIkdBNF9FVkVOVCIsYSl9O3ZhciBKUD1mdW5jdGlvbihhKXt2YXIgYixjPVEoYSxILkoud20pO2lmKEFycmF5LmlzQXJyYXkoYykpZm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspSVAoY1tkXSk7KGI9d2IocmIuR0E0X0VWRU5UfHxbXSkpJiZVKGEsIl9ldSIsYil9Owp2YXIgTVA9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFJlZ0V4cCgiXiIrKCgoYT09bnVsbD92b2lkIDA6YS5wcmVmaXgpfHwiIikrIl9nYV9cXHcrJCIpKSxjPXlxKGZ1bmN0aW9uKHApe3JldHVybiBiLnRlc3QocCl9KSxkPXt9LGU7Zm9yKGUgaW4gYylpZihjLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1LUChjW2VdKTtpZihmKXt2YXIgZz1icShmLDIpO2lmKGcpe3ZhciBoPUxQKGcpO2lmKGgpe3ZhciBsPXZvaWQgMCxuPSgoKGw9YSk9PW51bGw/dm9pZCAwOmwucHJlZml4KXx8IiIpLmxlbmd0aCs0O2RbIkctIitlLnN1YnN0cmluZyhuKV09aH19fX1yZXR1cm4gZH0sTlA9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI7YTp7dmFyIGM9KFNiKGEsInMiKSYmYS5pbmRleE9mKCIuIik9PT0tMT8iR1MyIjoiR1MxIikrIi4xLiIrYTt0cnl7Yj0kcChjLDIpO2JyZWFrIGF9Y2F0Y2goZCl7fWI9dm9pZCAwfXJldHVybiBifX0sS1A9ZnVuY3Rpb24oYSl7aWYoYSYmYS5sZW5ndGghPT0wKXtmb3IodmFyIGIsCmM9LUluZmluaXR5LGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtpZihmLnQhPT12b2lkIDApe3ZhciBnPU51bWJlcihmLnQpOyFpc05hTihnKSYmZz5jJiYoYz1nLGI9Zil9fXJldHVybiBifX0senE9ZnVuY3Rpb24oYSl7YSYmKGE9PT0iR1MxIj9JUChKLlUuS20pOmE9PT0iR1MyIiYmSVAoSi5VLkxtKSl9LExQPWZ1bmN0aW9uKGEpe3ZhciBiPU5QKGEpO2lmKGIpe3ZhciBjPU51bWJlcihiLm8pLGQ9TnVtYmVyKGIudCksZT1OdW1iZXIoYi5qfHwwKTtjfHxJUChKLlUuVW0pO2R8fElQKEouVS5UbSk7aXNOYU4oZSkmJklQKEouVS5TbSk7aWYoYyYmZCYmIWlzTmFOKGUpKXt2YXIgZj1iLmgsZz1mJiZmIT09IjAiP1N0cmluZyhmKTp2b2lkIDAsaD1iLmQ/U3RyaW5nKGIuZCk6dm9pZCAwLGw9e307cmV0dXJuIGwucz1TdHJpbmcoYi5zKSxsLm89YyxsLmc9ISFOdW1iZXIoYi5nKSxsLnQ9ZCxsLmQ9aCxsLmo9ZSxsLmw9Yi5sPT09IjEiLApsLmg9ZyxsfX19Owp2YXIgUFA9ZnVuY3Rpb24oYSxiLGMpe2lmKCFiKXJldHVybiBhO2lmKCFhKXJldHVybiBiO3ZhciBkPUxQKGEpO2lmKCFkKXJldHVybiBiO3ZhciBlLGY9SWIoKGU9TyhjLk0sRi5ELnloKSkhPW51bGw/ZTozMCksZz1RKGMsSC5KLkViKTtpZighKE1hdGguZmxvb3IoZy8xRTMpPmQudCtmKjYwKSlyZXR1cm4gYTt2YXIgaD1MUChiKTtpZighaClyZXR1cm4gYTtoLm89ZC5vKzE7dmFyIGw7cmV0dXJuKGw9T1AoaCkpIT1udWxsP2w6Yn0sUlA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1RKGIsSC5KLkdhKSxkPVFQKGIsYyksZT1OUChhKTtpZighZSlyZXR1cm4hMTt2YXIgZj11cShjfHx7fSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSk7b3EoZCx2b2lkIDAsZik7cmV0dXJuIEFxKGQsZSwyLGMpIT09MX0sU1A9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYzt2YXIgZD1RUChhLGIpLGU7Yjp7dmFyIGY9enEsZz1acFsyXTtpZihnKXt2YXIgaCxsPXJxKGIuZG9tYWluKSxuPXNxKGIucGF0aCksCnA9T2JqZWN0LmtleXMoZy5qaSkscT12cS5nZXQoMikscjtpZihoPShyPWdxKGQsbCxuLHAscSkpPT1udWxsP3ZvaWQgMDpyLkJyKXt2YXIgdD0kcChoLDIsZik7ZT10P3hxKHQpOnZvaWQgMDticmVhayBifX1lPXZvaWQgMH1pZihlKXt2YXIgdT13cShkLDIsenEpO2lmKHUmJnUubGVuZ3RoPjEpe0lQKEouVS5KbSk7dmFyIHY9S1AodSk7diYmdi50IT09ZS50JiYoSVAoSi5VLk1tKSxlPXYpfWM9YnEoZSwyKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfSxUUD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkViKSxjPXt9O2Mucz1SKGEsRi5ELnhjKTtjLm89UihhLEYuRC5BaCk7dmFyIGQ7ZD1SKGEsRi5ELnpoKTt2YXIgZT0oYy5nPWQsYy50PU1hdGguZmxvb3IoYi8xRTMpLGMuZD1RKGEsSC5KLm9nKSxjLmo9UShhLEguSi5wZyl8fDAsYy5sPSEhUShhLEguSi5ybSksYy5oPVIoYSxGLkQub2gpLGMpO3JldHVybiBPUChlKX0sT1A9ZnVuY3Rpb24oYSl7aWYoYS5zJiZhLm8pe3ZhciBiPQp7fSxjPShiLnM9YS5zLGIubz1TdHJpbmcoYS5vKSxiLmc9SWIoYS5nKT8iMSI6IjAiLGIudD1TdHJpbmcoYS50KSxiLmo9U3RyaW5nKGEuaiksYi5sPWEubD8iMSI6IjAiLGIuaD1hLmh8fCIwIixiLmQ9YS5kLGIpO3JldHVybiBicShjLDIpfX0sUVA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5wcmVmaXgrIl9nYV8iK2EudGFyZ2V0Lmlkc1tkQ1s2XV19Owp2YXIgVVA9ZnVuY3Rpb24oKXtyZXR1cm4gYWwoMixmdW5jdGlvbigpe3JldHVybiExfSl9LFZQPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5EYiksYz1hLk0uaWJbRi5ELkRiXTtpZihjPT09YilyZXR1cm4gYzt2YXIgZD1FZChiLG51bGwpO2MmJmNbRi5ELkFhXSYmKGRbRi5ELkFhXT0oZFtGLkQuQWFdfHxbXSkuY29uY2F0KGNbRi5ELkFhXSkpO3JldHVybiBkfSxXUD1mdW5jdGlvbihhLGIpe3ZhciBjPVVxKCEwKTtyZXR1cm4gYy5fdXAhPT0iMSI/e306e2NsaWVudElkOmNbYV0semI6Y1tiXX19LFhQPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1VcSghMCksZT1kW2JdO2UmJihDUChhLGUsMiksRFAoZSxhKSk7dmFyIGY9ZFtjXTtmJiZSUChmLGEpO3JldHVybntjbGllbnRJZDplLHpiOmZ9fSxZUD1mdW5jdGlvbigpe3ZhciBhPU5qKEEubG9jYXRpb24sImhvc3QiKSxiPU5qKFJqKEIucmVmZXJyZXIpLCJob3N0Iik7cmV0dXJuIGEmJmI/YT09PWJ8fGEuaW5kZXhPZigiLiIrYik+PQowfHxiLmluZGV4T2YoIi4iK2EpPj0wPyEwOiExOiExfSxaUD1mdW5jdGlvbihhKXtpZighTyhhLk0sRi5ELnpjKSlyZXR1cm57fTt2YXIgYj1RKGEsSC5KLkdhKSxjPWIucHJlZml4KyJfZ2EiLGQ9UVAoYSxiKTticihmdW5jdGlvbigpe3ZhciBlO2lmKFhvKCJhbmFseXRpY3Nfc3RvcmFnZSIpKWU9e307ZWxzZXt2YXIgZj17X3VwOiIxIn0sZztnPVIoYSxGLkQuS2IpO2U9KGZbY109ZyxmW2RdPVRQKGEpLGYpfXJldHVybiBlfSwxKTtyZXR1cm4hWG8oImFuYWx5dGljc19zdG9yYWdlIikmJllQKCk/V1AoYyxkKTp7fX0sJFA9ZnVuY3Rpb24oYSl7dmFyIGI9VlAoYSl8fHt9LGM9UShhLEguSi5HYSksZD1jLnByZWZpeCsiX2dhIixlPVFQKGEsYyksZj17fTtkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pJiYoZj1YUChhLGQsZSksZi5jbGllbnRJZCYmZi56YiYmWmsoMiwhMCkpO2JbRi5ELkFhXSYmYXIoZnVuY3Rpb24oKXt2YXIgZz17fSxoPUZQKGEpO2gmJihnW2RdPWgpO3ZhciBsPVNQKGEpOwpsJiYoZ1tlXT1sKTt2YXIgbj1jcSgiRlBMQyIsdm9pZCAwLHZvaWQgMCxGLkQucmEpO24ubGVuZ3RoJiYoZy5fZnBsYz1uWzBdKTtyZXR1cm4gZ30sYltGLkQuQWFdLGJbRi5ELmFkXSwhIWJbRi5ELndjXSk7cmV0dXJuIGZ9O3ZhciBhUT1mdW5jdGlvbihhKXtpZighUShhLEguSi5iZSkmJmVrKGEuTSkpe3ZhciBiPVZQKGEpfHx7fSxjPShkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pP1VxKCEwKS5fZnBsYzp2b2lkIDApfHwoY3EoIkZQTEMiLHZvaWQgMCx2b2lkIDAsRi5ELnJhKS5sZW5ndGg+MD92b2lkIDA6IjAiKTtVKGEsIl9mcGxjIixjKX19O2Z1bmN0aW9uIGJRKGEpeyhiayhaSyhhKSl8fFdqKCkpJiZVKGEsRi5ELm9tLHptKCl8fHltKCkpOyFiayhaSyhhKSkmJldqKCkmJlUoYSxGLkQuWWksIjo6Iil9ZnVuY3Rpb24gY1EoYSl7V2ooKSYmKGJrKFpLKGEpKXx8RG0oKXx8VShhLEYuRC5TbCwhMCkpfTt2YXIgZVE9ZnVuY3Rpb24oYSxiKXtraigiZ3JsIixmdW5jdGlvbigpe3JldHVybiBkUSgpfSkoYil8fChQKDM1KSxhLmlzQWJvcnRlZD0hMCl9LGRRPWZ1bmN0aW9uKCl7dmFyIGE9TmIoKSxiPWErODY0RTUsYz0yMCxkPTVFMztyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIGY9TmIoKTtmPj1iJiYoYj1mKzg2NEU1LGQ9NUUzKTtjPU1hdGgubWluKGMrKGYtYSkvMUUzKjUsMjApO2E9Zjt2YXIgZz0hMTtkPDF8fGM8MXx8KGc9ITAsZC0tLGMtLSk7ZSYmKGUuSHI9ZCxlLnVyPWMpO3JldHVybiBnfX07CnZhciBmUT1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELlVhKTtyZXR1cm4gTGooUmooYiksImhvc3QiLCEwKX0sZ1E9ZnVuY3Rpb24oYSl7aWYoTyhhLk0sRi5ELldmKSE9PXZvaWQgMClhLmNvcHlUb0hpdERhdGEoRi5ELldmKTtlbHNle3ZhciBiPU8oYS5NLEYuRC5hbSksYyxkO2E6e2lmKFVQKCkpe3ZhciBlPVZQKGEpfHx7fTtpZihlJiZlW0YuRC5BYV0pZm9yKHZhciBmPWZRKGEpLGc9ZVtGLkQuQWFdLGg9MDtoPGcubGVuZ3RoO2grKylpZihnW2hdaW5zdGFuY2VvZiBSZWdFeHApe2lmKGdbaF0udGVzdChmKSl7ZD0hMDticmVhayBhfX1lbHNlIGlmKGYuaW5kZXhPZihnW2hdKT49MCl7ZD0hMDticmVhayBhfX1kPSExfWlmKCEoYz1kKSl7dmFyIGw7aWYobD1iKWE6e2Zvcih2YXIgbj1iLmluY2x1ZGVfY29uZGl0aW9uc3x8W10scD1mUShhKSxxPTA7cTxuLmxlbmd0aDtxKyspaWYobltxXS50ZXN0KHApKXtsPSEwO2JyZWFrIGF9bD0hMX1jPWx9YyYmKFUoYSxGLkQuV2YsIjEiKSwKSVAoSi5VLm5uKSl9fTtmdW5jdGlvbiBoUShhLGIsYyxkKXt2YXIgZTtpZigobmQoKXx8a2QoKSkmJlhqKCkmJlhqKCkhPT0iLyIpe3ZhciBmPVJqKGEpO2U9SWYoNTApJiZkJiZUYihmLnBhdGhuYW1lLCIvZy9jb2xsZWN0Iik/MjooZHx8IVdqKCl8fERtKCk/MDpUYihmLnBhdGhuYW1lLCIvZ2EvZy9jIil8fFRiKGYucGF0aG5hbWUsIi9hZy9nL2MiKSk/MTowfWVsc2UgZT0wO3N3aXRjaChlKXtjYXNlIDI6dmFyIGc7aWYoTSg1NDYpKXt2YXIgaD1UYihhLCIvZy9jb2xsZWN0Iik/YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCk6YSxsPWlRKCksbj1oK2wscD1qUSgiL2cvY29sbGVjdCIsYixjKTtnPXtJYzpuLGtmOiIiLGJvZHk6cH19ZWxzZSBnPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gZztjYXNlIDE6dmFyIHE7aWYoTSg1NDcpKXt2YXIgcj1pUSgpLHQ9YS5pbmRleE9mKHIpLHU9YS5zdWJzdHJpbmcoMCx0KStyLHY9alEoYS5zdWJzdHJpbmcodCtyLmxlbmd0aC0xKSxiLGMpO3E9e0ljOnUsa2Y6IiIsCmJvZHk6dn19ZWxzZSBxPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gcTtkZWZhdWx0OnJldHVybntJYzphLGtmOmIsYm9keTpjfX19ZnVuY3Rpb24gaVEoKXt2YXIgYT1YaigpO2lmKCFhKXJldHVybiIiO1NiKGEsIi8iKXx8KGE9Ii8iK2EpO1RiKGEsIi8iKXx8KGErPSIvIik7cmV0dXJuIGF9ZnVuY3Rpb24galEoYSxiLGMpe3ZhciBkPVthXTtiJiZkLnB1c2goIj8iLGIpO2MmJmQucHVzaCgiXHJcbiIsYyk7cmV0dXJuIGQuam9pbigiIil9Owp2YXIga1E9ZnVuY3Rpb24oYSxiKXtUdCgpJiYoYS5nY3M9VXQoKSxRKGIsSC5KLkdoKSYmKGEuZ2N1PSIxIikpO2EuZ2NkPVl0KGIuTSk7YS5ucGE9UShiLEguSi53ZCk/IjAiOiIxIjt6bSgpPT09IlVTLUNPIiYmKGEuX25nPSIxIil9LGxRPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouYmUpKXJldHVybnt1cmw6ZmsoImh0dHBzOi8vd3d3Lm1lcmNoYW50LWNlbnRlci1hbmFseXRpY3MuZ29vZyIsdm9pZCAwLCIiKSsiL21jL2NvbGxlY3QiLGVuZHBvaW50OjIwfTt2YXIgYj1ZaihlayhhLk0pLCIvZy9jb2xsZWN0Iik7aWYoYilyZXR1cm57dXJsOmIsZW5kcG9pbnQ6MTZ9O3ZhciBjO2M9UShhLEguSi5ybikmJiFRKGEsSC5KLkZjKT8xNzoxNjtyZXR1cm57dXJsOk1tW2NdKHZvaWQgMCksZW5kcG9pbnQ6Y319LG1RPXt9O21RW0YuRC5LYl09ImNpZCI7bVFbRi5ELnhpXT0iZ2N1dCI7bVFbRi5ELkZlXT0iYXJlIjttUVtGLkQuamhdPSJwc2NkbCI7bVFbRi5ELk5kXT0iZXhjaWQiO21RW0YuRC5HaV09CiJfZmlkIjttUVtGLkQuT2xdPSJfZ2VvIjttUVtGLkQuWGNdPSJnZGlkIjttUVtGLkQuTGVdPSJfbmciO21RW0YuRC5NZV09ImZybSI7bVFbRi5ELldmXT0iaXIiO21RW0YuRC5TbF09ImZwIjttUVtGLkQudGJdPSJ1bCI7bVFbRi5ELk1pXT0ibmkiO21RW0YuRC5tcV09InBhZSI7bVFbRi5ELnhoXT0iX3JkaSI7bVFbRi5ELmJkXT0ic3IiO21RW0YuRC5RaV09InRlc3Rvbmx5IjttUVtGLkQuUWVdPSJ0aWQiO21RW0YuRC5SaV09InR0IjttUVtGLkQuQmNdPSJlY19tb2RlIjttUVtGLkQuWm1dPSJndG1fdXAiO21RW0YuRC5jZ109InVhYSI7bVFbRi5ELmRnXT0idWFiIjttUVtGLkQuZWddPSJ1YWZ2bCI7bVFbRi5ELmZnXT0idWFtYiI7bVFbRi5ELmdnXT0idWFtIjsKbVFbRi5ELmhnXT0idWFwIjttUVtGLkQuaWddPSJ1YXB2IjttUVtGLkQuamddPSJ1YXciO21RW0YuRC5vbV09InVyIjttUVtGLkQuWWldPSJfdWlwIjttUVtGLkQubHFdPSJfcHJzIjttUVtGLkQuUGRdPSJscHMiO21RW0YuRC5CZV09ImdjbGdzIjttUVtGLkQuRGVdPSJnY2xzdCI7bVFbRi5ELkNlXT0iZ2NsbHAiO3ZhciBuUT17fTtuUVtGLkQuR2ZdPSJjYyI7blFbRi5ELkhmXT0iY2kiO25RW0YuRC5JZl09ImNtIjtuUVtGLkQuSmZdPSJjbiI7blFbRi5ELkxmXT0iY3MiO25RW0YuRC5NZl09ImNrIjtuUVtGLkQuZWJdPSJjdSI7blFbRi5ELlZmXT0iX3R1IjtuUVtGLkQuemFdPSJkbCI7blFbRi5ELllmXT0iZHAiO25RW0YuRC5VYV09ImRyIjtuUVtGLkQuTWJdPSJkdCI7blFbRi5ELnpoXT0ic2VnIjtuUVtGLkQueGNdPQoic2lkIjtuUVtGLkQuQWhdPSJzY3QiO25RW0YuRC5mYl09InVpZCI7dmFyIG9RPXt9O29RW0YuRC5uaF09Il9ldCI7b1FbRi5ELlZjXT0iZWRpZCI7b1FbRi5ELk1kXT0iZXZuaWQiO00oOTQpJiYob1EuX2V1PSJfZXUiKTt2YXIgcFE9e307cFFbRi5ELkdmXT0iY2MiO3BRW0YuRC5IZl09ImNpIjtwUVtGLkQuSWZdPSJjbSI7cFFbRi5ELkpmXT0iY24iO3BRW0YuRC5MZl09ImNzIjtwUVtGLkQuTWZdPSJjayI7dmFyIHFRPXt9LHJRPShxUVtGLkQuQWNdPTEscVEpLHNRPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKGRhLG1hKXtpZihtYSE9PXZvaWQgMCYmIUJvLmhhc093blByb3BlcnR5KGRhKSl7bWE9PT1udWxsJiYobWE9IiIpO3ZhciBQYTt2YXIgRmE9bWE7ZGEhPT1GLkQub2g/UGE9ITE6UShhLEguSi5sZyl8fGJrKFpLKGEpKT8oZS5lY2lkPUZhLFBhPSEwKTpQYT12b2lkIDA7aWYoIVBhKXt2YXIgcWE9bWE7bWE9PT0hMCYmKHFhPSIxIik7bWE9PT0hMSYmKHFhPSIwIik7cWE9ClN0cmluZyhxYSk7dmFyIGliO2lmKGRhIT09Ri5ELk5kJiZkYSE9PUYuRC5NZHx8TSg1MDQpKWlmKG1RW2RhXSlpYj1tUVtkYV0sdltpYl09cWE7ZWxzZSBpZihuUVtkYV0paWI9blFbZGFdLGdbaWJdPXFhO2Vsc2UgaWYob1FbZGFdKWliPW9RW2RhXSxmW2liXT1xYTtlbHNlIGlmKFNiKGRhLCJfJiIpKWliPWRhLnN1YnN0cmluZygyKSx2W2liXT1xYTtlbHNlIGlmKGRhLmNoYXJBdCgwKT09PSJfIil2W2RhXT1xYTtlbHNle3ZhciBYYjtwUVtkYV0/WGI9ITA6ZGEhPT1GLkQuS2Y/WGI9ITE6KHR5cGVvZiBtYSE9PSJvYmplY3QiJiZ1KGRhLG1hKSxYYj0hMCk7WGJ8fHUoZGEsbWEpfWVsc2UgdShkYSxtYSl9fX12YXIgZT17fSxmPXt9LGc9e307ZS52PSIyIjtlLnRpZD1hLnRhcmdldC5kZXN0aW5hdGlvbklkO2UuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxlZjpRKGEsSC5KLkNjKX0pO2UuX3A9JGsoMjUpO2MmJihjLmhhc1VwZHx8Yy5oYWRFcnJvcikmJihlLmVtPWMucGFyYW0pO1EoYSwKSC5KLnJnKSYmKGUuX2dhej0xKTtrUShlLGEpO2F1KCkmJihlLmRtYV9jcHM9WnQoKSk7ZS5kbWE9JHQoKTt2dChFdCgpKSYmKGUudGNmZD1idSgpKTt2YXIgaD1DcChhKTtoJiYoZy50YWdfZXhwPWgpO3ZhciBsPVIoYSxGLkQuWGMpO2wmJihlLmdkaWQ9bCk7Zi5lbj1TdHJpbmcoYS5ldmVudE5hbWUpO2lmKFEoYSxILkoubmcpKXt2YXIgbj1RKGEsSC5KLlltKTtmLl9mdj1uPzI6MX1RKGEsSC5KLkhoKSYmKGYuX25zaT0xKTtpZihRKGEsSC5KLlRlKSl7dmFyIHA9UShhLEguSi5ibik7Zi5fc3M9cD8yOjF9UShhLEguSi5tZykmJihmLl9jPTEpO1EoYSxILkouYWUpJiYoZi5fZWU9MSk7aWYoUShhLEguSi5XbSkpe3ZhciBxPVIoYSxGLkQuSGEpfHxPKGEuTSxGLkQuSGEpO2lmKEFycmF5LmlzQXJyYXkocSkpZm9yKHZhciByPTA7cjxxLmxlbmd0aCYmcjwyMDA7cisrKWZbInByIisocisxKV09dGcocVtyXSl9dmFyIHQ9UihhLEYuRC5WYyk7dCYmKGYuZWRpZD10KTtodChhLGYpO2Zvcih2YXIgdT0KZnVuY3Rpb24oZGEsbWEpe2lmKHR5cGVvZiBtYSE9PSJvYmplY3QifHwhclFbZGFdKXt2YXIgUGE9ImVwLiIrZGEsRmE9ImVwbi4iK2RhO2RhPUFiKG1hKT9GYTpQYTt2YXIgcWE9QWIobWEpP1BhOkZhO2YuaGFzT3duUHJvcGVydHkocWEpJiZkZWxldGUgZltxYV07ZltkYV09U3RyaW5nKG1hKX19LHY9e30seD1tKGV1KGEpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT14Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTtkKHosUihhLHopKX1mb3IodmFyIEM9bShPYmplY3Qua2V5cyh2KS5zb3J0KCkpLEQ9Qy5uZXh0KCk7IUQuZG9uZTtEPUMubmV4dCgpKXt2YXIgST1ELnZhbHVlO2VbSV09dltJXX0oZnVuY3Rpb24oZGEpe2JrKFpLKGEpKSYmdHlwZW9mIGRhPT09Im9iamVjdCImJkdiKGRhfHx7fSxmdW5jdGlvbihtYSxQYSl7dHlwZW9mIFBhIT09Im9iamVjdCImJihlWyJzc3QuIittYV09U3RyaW5nKFBhKSl9KX0pKFIoYSxGLkQub2opKTtidihlLFIoYSxGLkQuZWQpKTt2YXIgRz1SKGEsRi5ELldkKXx8Cnt9O0diKEcsZnVuY3Rpb24oZGEsbWEpe21hIT09dm9pZCAwJiYoKG1hPT09bnVsbCYmKG1hPSIiKSxkYSE9PUYuRC5mYnx8Zy51aWQpP2JbZGFdIT09bWEmJihmWyhBYihtYSk/InVwbi4iOiJ1cC4iKStTdHJpbmcoZGEpXT1TdHJpbmcobWEpLGJbZGFdPW1hKTpnLnVpZD1TdHJpbmcobWEpKX0pO2lmKFdqKCkmJiFEbSgpJiYhYmsoWksoYSkpKXt2YXIgTj1RKGEsSC5KLm9nKTtOP2UuX2dzaWQ9TjplLm5qaWQ9IjEifXZhciBTPVEoYSxILkouVmkpOyhTPT1udWxsP3ZvaWQgMDpTLnZhbHVlKT4wJiYoZS5nYWY9Uy5nZXQoKSk7dmFyIFc9UihhLEYuRC5XYyk7aWYoVylmb3IodmFyIGVhPW0oT2JqZWN0LmtleXMoVykpLGphPWVhLm5leHQoKTshamEuZG9uZTtqYT1lYS5uZXh0KCkpe3ZhciBmYT1qYS52YWx1ZTtmWyJleHQuIitmYV09V1tmYV18fCIifXZhciBzYT1sUShhKTt2Zy5jYWxsKHRoaXMse0JhOmUsdmU6ZyxMajpmfSxzYS51cmwsc2EuZW5kcG9pbnQsWksoYSksdm9pZCAwLAphLnRhcmdldC5kZXN0aW5hdGlvbklkLGEuTS5ldmVudElkLGEuTS5wcmlvcml0eUlkKX07d2Eoc1EsdmcpOwp2YXIgdFE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5yZXBsYWNlKC9cJFx7KFteXH1dKylcfS9nLGZ1bmN0aW9uKGMsZCl7cmV0dXJuIGJbZF18fGN9KX0sdVE9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz0iIixkPWEucGF0aG5hbWUuaW5kZXhPZigiL2cvY29sbGVjdCIpO2Q+PTAmJihjPWEucGF0aG5hbWUuc3Vic3RyaW5nKDAsZCkpO2IudHJhbnNwb3J0X3VybD1hLnByb3RvY29sKyIvLyIrYS5ob3N0bmFtZStjO3ZhciBlO3RyeXtlPWVuY29kZVVSSUNvbXBvbmVudChjfHwiLyIpfWNhdGNoKGYpe2U9ZW5jb2RlVVJJQ29tcG9uZW50KCIvIil9Yi5lbmNvZGVkX3BhdGg9ZTtyZXR1cm4gYn0sdlE9ZnVuY3Rpb24oYSxiKXtpZighTSg1NDYpKXJldHVybnt1cmw6YSxib2R5OmJ9O3ZhciBjPW0oYS5zcGxpdCgiPyIpKSxkPWMubmV4dCgpLnZhbHVlLGU9Yy5uZXh0KCkudmFsdWUsZj1oUShkLGV8fCIiLGJ8fCIiLCEwKSxnPWYuSWMsaD1mLmtmO2E9aCE9PSIiP2crIj8iK2g6ZztiPWYuYm9keTsKcmV0dXJue3VybDphLGJvZHk6Yn19LHhRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1SaihiKSxlPXVRKGQpLGY9dlEoWGcoZCksYyksZz1mdW5jdGlvbihoKXtxeChmLnVybCxmLmJvZHksbmV3IHdRKGUsaCkpJiZhJiZrbi5yZWdpc3RlcihhLDEsZi51cmwpfTshTSgxMzIpfHxOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpP2coKTptTChmLnVybCxmLmJvZHksZSxnKX0sd1E9ZnVuY3Rpb24oYSxiKXtDeC5jYWxsKHRoaXMpO3RoaXMudGVtcGxhdGVzPWE7dGhpcy5OPWJ9O3dhKHdRLEN4KTt3US5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXt2YXIgYj10UShhLHRoaXMudGVtcGxhdGVzKTtyZXR1cm4gdGhpcy5OP2IucmVwbGFjZSgiX2lzX3N3PTAiLHRoaXMuTik6Yn07d1EucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLlooYSk7Q3gucHJvdG90eXBlLksuY2FsbCh0aGlzLGMsYil9O3dRLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYil7dmFyIGM9CnRoaXMuWihhKTtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYyxiKX07CnZhciB5UT1mdW5jdGlvbihhKXtyZXR1cm4hU2IoYSxGbSgpKSYmIVNiKGEsR20oKSl9LEFRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZighbmQoKSlyZXR1cm4gelEoYSxiLGMsZCksITA7WW4oYyxiIT09IiI/YSsiPyIrYjphLGQsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxlfHx7fSx7UWc6ITB9KSx2b2lkIDAsZil8fHpRKGEsYixjLGQpO3JldHVybiEwfSx6UT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iIT09IiI/YSsiPyIrYjphO2Q/V24oYyxlLGQpOlZuKGMsZSl9LENRPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YixnPXBkKCk7ZyE9PXZvaWQgMCYmKGYrPSImdGZkPSIrTWF0aC5yb3VuZChnKSk7Yj1mO3ZhciBoPWErIj8iK2I7aWYoIWJrKGQpfHxjayhkKXx8eFAoKSl7dmFyIGw9aFEoYSxiLGMsYmsoZCkpO2E9bC5JYztiPWwua2Y7Yz1sLmJvZHk7QVEoYSxiLGUsYyx2b2lkIDAsQlEoYSxiLGUsYykpfHx6UShhLGIsZSxjKX1lbHNlIHhRKGUsaCxjKTsKYmsoZCkmJk0oNTY0KSYmbmQoKSYmVGIoYSwiL2cvY29sbGVjdCIpJiZBLmZldGNoKGEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtMTApLHttZXRob2Q6IlBPU1QiLGJvZHk6IkNqQU9BVHdjQ0JnTyIsY3JlZGVudGlhbHM6Im9taXQifSl9LEJRPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCF5UShhKSl7dmFyIGU9TW1bNjddKHZvaWQgMCk7aWYoZSlyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZjt2YXIgZz1iLnJlcGxhY2UoL15cPy8sIiIpLGg9TnVtYmVyKElqKGcsImdhZiIsITEpKSxsPTA7TnVtYmVyLmlzSW50ZWdlcihoKSYmKGw9aCk7dmFyIG49bmV3IGVyKGwpO2ZyKG4sMSk7aWYobi52YWx1ZSE9PTApe3ZhciBwLHE9bi5nZXQoKSxyPVJlZ0V4cCgiKF58Wz8mXSlnYWY9W14mXSooJnwkKSIpO3A9ci50ZXN0KGcpP2cucmVwbGFjZShyLCIkMWdhZj0iK3ErIiQyIik6Zy5pbmRleE9mKCI/Iik+PTA/ZysiJmdhZj0iK3E6Z1swXT09PSIvInx8Zy5pbmRleE9mKCI6Ly8iKT49MD9nKyI/Z2FmPSIrCnE6Zy5sZW5ndGg+MD9nKyImZ2FmPSIrcToiZ2FmPSIrcTtmPWIuaW5kZXhPZigiPyIpPT09MD8iPyIrcDpwfWVsc2UgZj12b2lkIDA7QVEoZSxmfHxiLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZW5kcG9pbnQ6Njd9KSxkLGMuZW5kcG9pbnQ9PT0xNz92b2lkIDA6e2NyZWRlbnRpYWxzOiJvbWl0In0pfX19LERRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPWZ1bmN0aW9uKGgpe2QucHVzaChoKyI9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS5CYVtoXSkpfTtkLnB1c2goInY9MiIpO2UoIl9nc2lkIik7ZSgiZ3RtIik7YS5CYS5fZ2VvJiZlKCJfZ2VvIik7dmFyIGY9Imh0dHBzOi8ve2dhNENvbGxlY3Rpb25TdWJkb21haW4ufWdvb2dsZS1hbmFseXRpY3MuY29tL2cvcy9jb2xsZWN0Ii5yZXBsYWNlKCJ7Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59IiwoYnx8Ind3dyIpKyIuIiksZz1kLmpvaW4oIiYiKTt6UShmLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwKIiIsZW5kcG9pbnQ6NjIsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9KTtNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZisiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjYyfSxxYjpjfSl9LEVRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0iaHR0cHM6Ly97Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59YW5hbHl0aWNzLmdvb2dsZS5jb20vZy9zL2NvbGxlY3QiLnJlcGxhY2UoIntnYTRDb2xsZWN0aW9uU3ViZG9tYWluLn0iLGI/YisiLiI6IiIpLGU9W10sZj1mdW5jdGlvbihoKXtlLnB1c2goaCsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KCIiK2EuQmFbaF0pKX07ZigiX2dzaWQiKTtmKCJndG0iKTthLkJhLl9nZW8mJmYoIl9nZW8iKTt2YXIgZz1lLmpvaW4oIiYiKTt6UShkLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOCxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pOwpNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjE4fSxxYjpjfSl9LEZRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtjJiZiLnB1c2goInRhZ19leHA9IitjKTtiLnB1c2goIno9IitEYigpKTtpZighZSl7dmFyIGc9ZCYmU2IoZCwiZ29vZ2xlLiIpJiZkIT09Imdvb2dsZS5jb20iPyJodHRwczovL3d3dy4lL2Fkcy9nYS1hdWRpZW5jZXM/dj0xJnQ9c3Imc2xmX3JkPTEmX3I9NCYiLnJlcGxhY2UoIiUiLGQpOnZvaWQgMDtpZihnKXt2YXIgaD1nK2Iuam9pbigiJiIpO1huKHtkZXN0aW5hdGlvbklkOmEuZGVzdGluYXRpb25JZHx8IiIsZW5kcG9pbnQ6NDcsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9LGgpO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDpoLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6NDd9LHFiOmZ9KX19fSxHUT0KZnVuY3Rpb24oYSxiLGMsZCl7YyYmYi5wdXNoKCJ0YWdfZXhwPSIrYyk7elEoImh0dHBzOi8vc3RhdHMuZy5kb3VibGVjbGljay5uZXQvZy9jb2xsZWN0Iiwidj0yJiIrYi5qb2luKCImIikse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOSxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDoiaHR0cHM6Ly9zdGF0cy5nLmRvdWJsZWNsaWNrLm5ldC9nL2NvbGxlY3Q/dj0yJiIrYi5qb2luKCImIikscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDoxOX0scWI6ZH0pfSxIUT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGModil7cS5wdXNoKHYrIj0iK2VuY29kZVVSSUNvbXBvbmVudCgiIithLkJhW3ZdKSl9dmFyIGQ9Yi54dCxlPWIuQnQsZj1iLkF0LGc9Yi56dCxoPWIuWnIsbD1iLkNzLG49Yi5QcixwPWIuR3Q7aWYoZHx8ZXx8Znx8Zyl7dmFyIHE9CltdO2EuQmEuX25nJiZjKCJfbmciKTthLkJhLm5ncyYmYygibmdzIik7YS5CYS5pYnQmJmMoImlidCIpO2MoInRpZCIpO2MoImNpZCIpO2MoImd0bSIpO2Zvcih2YXIgcj1tKE9GKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZTthLkJhW3VdIT1udWxsJiZjKHUpfXEucHVzaCgiYWlwPTEiKTthLnZlLnVpZCYmcS5wdXNoKCJ1aWQ9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS52ZS51aWQpKTtjKCJkbWEiKTthLkJhLmRtYV9jcHMhPW51bGwmJmMoImRtYV9jcHMiKTthLkJhLmdjcyE9bnVsbCYmYygiZ2NzIik7YygiZ2NkIik7YS5CYS5ucGEhPW51bGwmJmMoIm5wYSIpO2EuQmEuZnJtIT1udWxsJiZjKCJmcm0iKTtkJiZHUShhLHEuc2xpY2UoKSxwLGIucWIpO2UmJkZRKGEscS5zbGljZSgpLHAsaCxsLGIucWIpO2YmJkVRKGEsbixiLnFiKTtnJiZEUShhLG4sYi5xYil9fSxJUT1mdW5jdGlvbigpe3RoaXMuUj0xO3RoaXMuWj17fTt0aGlzLks9LTE7dGhpcy5IPQpuZXcgd2d9O0lRLnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcyxkPW5ldyBzUShhLHRoaXMuWixiKSxlPXtldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9LGY9eVAoYSksZyxoO2YmJnRoaXMuSC5SKGQpfHx0aGlzLmZsdXNoKCk7dmFyIGw9ZiYmdGhpcy5ILmFkZChkKTtpZihsKXtpZih0aGlzLks8MCl7dmFyIG49QSxwPW4uc2V0VGltZW91dCxxO2JrKFpLKGEpKT9KUT8oSlE9ITEscT1LUSk6cT1MUTpxPTVFMzt0aGlzLks9cC5jYWxsKG4sZnVuY3Rpb24oKXtjLmZsdXNoKCl9LHEpfX1lbHNle3ZhciByPXpnKGQsdGhpcy5SKyspLHQ9ci5wYXJhbXMsdT1yLmJvZHk7Zz10O2g9dTtGeSgzLGEuZXZlbnROYW1lKTtDUShkLmJhc2VVcmwsdCx1LGQuTix7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmQuZW5kcG9pbnQsZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTsKdmFyIHY9UShhLEguSi5oZCkseD1RKGEsSC5KLnJnKSx5PVEoYSxILkouTmgpLHo9UShhLEguSi5NaCksQz1PKGEuTSxGLkQudWkpIT09ITEsRD1TdChhLk0pLEk9e3h0OnYsQnQ6eCxBdDp5LHp0OnosWnI6RW0oKSxtdjpDLGx2OkQsQ3M6QW0oKSxxYjplLE06YS5NLFByOkRtKCksR3Q6Q3AoYSl9O0hRKGQsSSl9Zm4uSCYmQXooYS5NLmV2ZW50SWQpO05sKGZ1bmN0aW9uKCl7aWYobCl7dmFyIEc9emcoZCksTj1HLmJvZHk7Zz1HLnBhcmFtcztoPU59cmV0dXJue3RhcmdldElkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQscmVxdWVzdDp7dXJsOmQuYmFzZVVybCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLHBvc3RCb2R5OmgsZW5kcG9pbnQ6ZC5lbmRwb2ludH0scWI6ZSxpc0JhdGNoZWQ6ITF9fSl9O0lRLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7WUsoYSkmJiF4UCgpP3RoaXMuZmEoYSk6dGhpcy5OKGEpfTtJUS5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXtpZih0aGlzLkguZXZlbnRzLmxlbmd0aCl7dmFyIGE9CkJnKHRoaXMuSCx0aGlzLlIrKyk7Q1EodGhpcy5ILmJhc2VVcmwsYS5wYXJhbXMsYS5ib2R5LHRoaXMuSC5LLHtkZXN0aW5hdGlvbklkOnRoaXMuSC5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDp0aGlzLkguZW5kcG9pbnQsZXZlbnRJZDp0aGlzLkguWixwcmlvcml0eUlkOnRoaXMuSC5mYX0pO3RoaXMuSD1uZXcgd2c7dGhpcy5LPj0wJiYoQS5jbGVhclRpbWVvdXQodGhpcy5LKSx0aGlzLks9LTEpfX07SVEucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1ZSyhhKTtNKDU2OCkmJiFNKDU4NikmJlIoYSxGLkQuQmMpPT09ImEiJiYoYz1jdyhjKSk7aWYoRXcoYykpe3ZhciBkPXN3KGMpO2Q/ZC50aGVuKGZ1bmN0aW9uKGYpe2IuTihhLGYpfSxmdW5jdGlvbigpe2IuTihhKX0pOnRoaXMuTihhKX1lbHNle3ZhciBlPUR3KGMpO3RoaXMuTihhLGUpfX07dmFyIEtRPU5mKDI0LDUwMCksTFE9TmYoNTYsNUUzKSxKUT0hMDt2YXIgTVE9ZnVuY3Rpb24oYSl7dmFyIGI9U3QoYS5NKTtPKGEuTSxGLkQuV2IpPT09ITAmJihiPSExKTtWKGEsSC5KLndkLGIpfTsKdmFyIE5RPWZ1bmN0aW9uKGEsYixjKXtjPT09dm9pZCAwJiYoYz17fSk7aWYoYj09bnVsbClyZXR1cm4gYztpZih0eXBlb2YgYj09PSJvYmplY3QiKWZvcih2YXIgZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtOUShhKyIuIitmLGJbZl0sYyl9ZWxzZSBjW2FdPWI7cmV0dXJuIGN9LE9RPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7YltlXT0hIVhvKGUpfXJldHVybiBifSxRUT1mdW5jdGlvbihhLGIpe3ZhciBjPVBRLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hWG8oZSl9KTtpZihjLmxlbmd0aCl7dmFyIGQ9T1EoYyk7JG8oYyxmdW5jdGlvbigpe2Zvcih2YXIgZT1PUShjKSxmPVtdLGc9bShjKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZTshZFtsXSYmZVtsXSYmZi5wdXNoKGwpO2VbbF0mJgooZFtsXT0hMCl9aWYoZi5sZW5ndGgpe1YoYixILkouR2gsITApO3ZhciBuPWYubWFwKGZ1bmN0aW9uKHApe3JldHVybiBMb1twXX0pLmpvaW4oIi4iKTtuJiZXSyhiLCJnY3V0IixuKTtNUShiKTthKGIpfX0pfX0sUlE9ZnVuY3Rpb24oYSl7UihhLEYuRC5XYykmJiFiayhaSyhhKSkmJlUoYSxGLkQuV2MpfSxTUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsIm5hdnQiLHFkKCkpfSxUUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsImxwYyIsaXIoKSl9LFVRPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9TyhhLk0sRi5ELldiKSxjO2I9PT0hMCYmKGM9IjEiKTtiPT09ITEmJihjPSIwIik7YyYmV0soYSwicmRwIixjKX19LFZRPWZ1bmN0aW9uKGEsYil7aWYoYmsoWksoYikpKXt2YXIgYz1RKGIsSC5KLm1nKTsoYi5ldmVudE5hbWU9PT0icGFnZV92aWV3Inx8YykmJlFRKGEsYil9fSxXUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkmJmEuZXZlbnROYW1lPT09Ri5ELnlmJiYKUShhLEguSi5HaCkpe3ZhciBiPVIoYSxGLkQueGkpO2ImJihXSyhhLCJnY3V0IixiKSxXSyhhLCJzeW4iLDEpKX19LFhRPWZ1bmN0aW9uKGEsYixjKXtpZihhPT09YilyZXR1cm4gV2ooKSYmU2IoYysiLyIsWGooKSsiLyIpPyI3IjoiMSI7aWYoVGIoYSwiLiIrYikpcmV0dXJuIjIiO2lmKFRiKGIsIi4iK2EpKXJldHVybiIzIjt2YXIgZD1hLnNwbGl0KCIuIiksZT1iLnNwbGl0KCIuIiksZj1mdW5jdGlvbihnKXtpZihkLmxlbmd0aDxnfHxlLmxlbmd0aDxnKXJldHVybiExO2Zvcih2YXIgaD0xO2g8PWc7aCsrKWlmKGRbZC5sZW5ndGgtaF0hPT1lW2UubGVuZ3RoLWhdKXJldHVybiExO3JldHVybiEwfTtyZXR1cm4gZigzKT8iNiI6ZigyKT8iNSI6IjQifSxZUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe3ZhciBiPWVrKGEuTSk7aWYoYil7dmFyIGM9WWooYiwiLyIpLGQ9UmooYyksZT1OaihkLCJob3N0IiksZj1OaihBLmxvY2F0aW9uLCJob3N0Iik7aWYoZSYmZil7dmFyIGc9TmooZCwKInBhdGgiKTthLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEse3NzdGQ6WFEoZSxmLGcpfSl9fX19LFpRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmVihhLEguSi5KYSwhMSl9LCRRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmKFEoYSxILkouSmEpJiZXSyhhLCJzcCIsMSksUShhLEguSi5JcSkmJldLKGEsInN5biIsMSksUShhLEguSi5QYykmJihXSyhhLCJlbV9ldmVudCIsMSksV0soYSwic3AiLDEpKSl9LGFSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9JGsoMjUpO2ImJldLKGEsInRmdCIsTnVtYmVyKGIpKX19LGJSPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZSl7dmFyIGY9TlEoRi5ELkFjLGUpO0diKGYsZnVuY3Rpb24oZyxoKXtVKGEsZyxoKX0pfWlmKGJrKFpLKGEpKSl7dmFyIGM9ZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSk/MTowO1dLKGEsInVkZSIsYyk7dmFyIGQ9TyhhLk0sRi5ELkFjKTtkIT09dm9pZCAwPyhadihkKSxiKGQpLFUoYSxGLkQuQmMsImMiKSk6CmIoUShhLEguSi5ZYSkpO1YoYSxILkouWWEpfX0sY1I9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj1WTSgpO2ImJldLKGEsInVzX3ByaXZhY3kiLGIpO3ZhciBjPUx0KCk7YyYmV0soYSwiZ2RwciIsYyk7dmFyIGQ9S3QoKTtkJiZXSyhhLCJnZHByX2NvbnNlbnQiLGQpO3ZhciBlPWtGLmdwcFN0cmluZztlJiZXSyhhLCJncHAiLGUpO3ZhciBmPWtGLkg7ZiYmV0soYSwiZ3BwX3NpZCIsZil9fSxkUj1mdW5jdGlvbihhKXtiayhaSyhhKSkmJkVsKCkmJk8oYS5NLEYuRC5tYikmJldLKGEsImFkciIsMSl9LGVSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9RG0oKTtiJiZXSyhhLCJnY3N1YiIsYil9fSxmUj1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe08oYS5NLEYuRC5TYyx2b2lkIDAsNCk9PT0hMSYmV0soYSwibmdzIiwxKTtBbSgpJiZXSyhhLCJnYV9yZCIsMSk7VksoKXx8V0soYSwibmdzdCIsMSk7dmFyIGI9RW0oKTtiJiZXSyhhLCJldGxkIixiKX19LGdSPQpmdW5jdGlvbihhKXt9LGhSPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmRWwoKSYmV0soYSwicm5kIixRTSgpKX0sUFE9W0YuRC5rYSxGLkQubWEsRi5ELlhhXTsKdmFyIGlSPWZ1bmN0aW9uKGEsYil7dmFyIGM7YTp7aWYoIVEoYSxILkouRmMpKXt2YXIgZD1UUChhKTtpZihkKXtpZihSUChkLGEpKXtjPWQ7YnJlYWsgYX1QKDI1KTthLmlzQWJvcnRlZD0hMH19Yz12b2lkIDB9dmFyIGU9YztyZXR1cm57Y2xpZW50SWQ6RVAoYSxiKSx6YjplfX0salI9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1RbyhPKGEuTSxGLkQuS2IpKTtpZihPKGEuTSxGLkQuWmMpJiZPKGEuTSxGLkQuWWMpKWY/Q1AoYSxmLDEpOihQKDEyNyksYS5pc0Fib3J0ZWQ9ITApO2Vsc2V7dmFyIGc9Zj8xOjg7VihhLEguSi5IaCwhMSk7Znx8KGY9RlAoYSksZz0zKTtmfHwoZj1iLGc9NSk7aWYoIWYpe3ZhciBoPVhvKEYuRC5yYSksbD16UCgpO2Y9IWwuZnJvbV9jb29raWV8fGg/bC52aWQ6dm9pZCAwO2c9Nn1mP2Y9IiIrZjooZj1BdigpLGc9NyxWKGEsSC5KLm5nLCEwKSxWKGEsSC5KLkhoLCEwKSk7Q1AoYSxmLGcpfVIoYSxGLkQuS2IpO2lmKCFRKGEsSC5KLkZjKSl7dmFyIG49ClEoYSxILkouRWIpLHA9TWF0aC5mbG9vcihuLzFFMykscT12b2lkIDA7UShhLEguSi5IaCl8fChxPVNQKGEpfHxjKTt2YXIgcj1JYihPKGEuTSxGLkQueWgsMzApKTtyPU1hdGgubWluKDQ3NSxyKTtyPU1hdGgubWF4KDUscik7dmFyIHQ9SWIoTyhhLk0sRi5ELlBpLDFFNCkpLHU9TFAocSk7VihhLEguSi5uZywhMSk7VihhLEguSi5UZSwhMSk7VihhLEguSi5wZywwKTt1JiZ1LmomJlYoYSxILkoucGcsTWF0aC5tYXgoMCx1LmotTWF0aC5tYXgoMCxwLXUudCkpKTt2YXIgdj0hMTtpZighdSl7VihhLEguSi5uZywhMCk7dj0hMDt2YXIgeD17fTt1PSh4LnM9U3RyaW5nKHApLHgubz0xLHguZz0hMSx4LnQ9cCx4Lmw9ITEseC5oPXZvaWQgMCx4KX1wPnUudCtyKjYwJiYodj0hMCx1LnM9U3RyaW5nKHApLHUubysrLHUuZz0hMSx1Lmg9dm9pZCAwKTtpZih2KVYoYSxILkouVGUsITApLGQubHMoYSk7ZWxzZSBpZihkLlhyKCk+dHx8YS5ldmVudE5hbWU9PT1GLkQuc2MpdS5nPSEwO1EoYSxILkoubGcpPwpPKGEuTSxGLkQuZmIpP3UubD0hMDp1Lmw9ITE6dS5sPSExO3ZhciB5PXUuaDtpZihRKGEsSC5KLmxnKXx8YmsoWksoYSkpKXt2YXIgej1PKGEuTSxGLkQub2gpLEM9ej8xOjg7enx8KHo9eSxDPTQpO3p8fCh6PXp2KCksQz03KTt2YXIgRD16LnRvU3RyaW5nKCksST1DLEc9UShhLEguSi50bCk7aWYoRz09PXZvaWQgMHx8STw9RylVKGEsRi5ELm9oLEQpLFYoYSxILkoudGwsSSl9ZT8oYS5jb3B5VG9IaXREYXRhKEYuRC54Yyx1LnMpLGEuY29weVRvSGl0RGF0YShGLkQuQWgsdS5vKSxhLmNvcHlUb0hpdERhdGEoRi5ELnpoLHUuZz8xOjApKTooVShhLEYuRC54Yyx1LnMpLFUoYSxGLkQuQWgsdS5vKSxVKGEsRi5ELnpoLHUuZz8xOjApKTtWKGEsSC5KLnJtLHUubD8xOjApO1dqKCkmJlYoYSxILkoub2csdS5kfHxjYygpKX19Owp2YXIga1I9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pbmRleE9mKCI/IiksYz1iPT09LTE/YTphLnN1YnN0cmluZygwLGIpLGQ9S2ooYyk7ZCYmKGM9ZCk7cmV0dXJuIGI9PT0tMT9jOiIiK2MrYS5zdWJzdHJpbmcoYil9LGxSPWZ1bmN0aW9uKGEpe2lmKCFPKGEuTSxGLkQuWWMpfHwhTyhhLk0sRi5ELlpjKSl7dmFyIGI9YS5jb3B5VG9IaXREYXRhLGM9Ri5ELnphLGQ9IiIsZT1CLmxvY2F0aW9uO2lmKGUpe3ZhciBmPWUucGF0aG5hbWV8fCIiO2YuY2hhckF0KDApIT09Ii8iJiYoZj0iLyIrZik7dmFyIGc9ZS5zZWFyY2h8fCIiO2lmKGdbMF09PT0iPyIpZm9yKHZhciBoPWcuc3Vic3RyaW5nKDEpLnNwbGl0KCImIiksbD0wO2w8aC5sZW5ndGg7KytsKXt2YXIgbj1oW2xdLnNwbGl0KCI9Iik7biYmbi5sZW5ndGg9PT0yJiZuWzBdPT09IndicmFpZCImJihnPWcucmVwbGFjZSgvKFs/Jl0pd2JyYWlkPVteJl0rLywiJDF3YnJhaWQ9IiskYihuWzFdKSkpfWQ9ZS5wcm90b2NvbCsiLy8iK2UuaG9zdG5hbWUrCmYrZ31iLmNhbGwoYSxjLGQsa1IpO3ZhciBwPWEuY29weVRvSGl0RGF0YSxxPUYuRC5VYSxyPXVBKCJndG0uZ3RhZ1JlZmVycmVyLiIrYS50YXJnZXQuZGVzdGluYXRpb25JZCksdD1CLnJlZmVycmVyO3AuY2FsbChhLHEsKHI/IiIrcjp0KXx8dm9pZCAwLGtSKTthLmNvcHlUb0hpdERhdGEoRi5ELk1iLEIudGl0bGUpO2EuY29weVRvSGl0RGF0YShGLkQudGIsKEhjLmxhbmd1YWdlfHwiIikudG9Mb3dlckNhc2UoKSk7dmFyIHU9cUkoKTthLmNvcHlUb0hpdERhdGEoRi5ELmJkLHUud2lkdGgrIngiK3UuaGVpZ2h0KTthLmNvcHlUb0hpdERhdGEoRi5ELllmLHZvaWQgMCxrUik7VE0oKSYmYS5jb3B5VG9IaXREYXRhKEYuRC5QZCwiMSIpfX07dmFyIG5SPWZ1bmN0aW9uKGEpe3ZhciBiPXhDKGEuTSksYz1mdW5jdGlvbihkLGUpe21SW2RdJiZVKGEsZCxlKX07Q2QoYltGLkQuS2ZdKT9HYihiW0YuRC5LZl0sZnVuY3Rpb24oZCxlKXtjKChGLkQuS2YrIl8iK2QpLnRvTG93ZXJDYXNlKCksZSl9KTpHYihiLGMpfSxvUj17fSxtUj0ob1JbRi5ELkdmXT0xLG9SW0YuRC5IZl09MSxvUltGLkQuSWZdPTEsb1JbRi5ELkpmXT0xLG9SW0YuRC5MZl09MSxvUltGLkQuTWZdPTEsb1IpO3ZhciBwUj1mdW5jdGlvbihhKXtpZighYmsoWksoYSkpJiZRKGEsSC5KLm1nKSYmWG8oRi5ELmthKSYmZEkoYSwiZ2E0X2Fkc19saW5rZWQiLCExKSl7dmFyIGI9TEsoYSksYz1IcihiLnByZWZpeCksZD1ScyhjKTtVKGEsRi5ELkJlLGQuRWcpO1UoYSxGLkQuRGUsZC5XaCk7VShhLEYuRC5DZSxkLlVoKX19O3ZhciBxUj1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpO2ImJklQKEouVS54bik7UShhLEguSi5QYykmJklQKEouVS5Oayk7dmFyIGM9eWsoemsoKSk7KGJ8fE1rKGMpfHxjJiZjLnBhcmVudCYmYy5jb250ZXh0JiZjLmNvbnRleHQuc291cmNlPT09NSkmJklQKEouVS5mbik7UShhLEguSi5jaikmJklQKEouVS5JbSk7UShhLEguSi5iaikmJklQKEouVS5IbSl9O3ZhciByUj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlZpKXx8bmV3IGVyO1EoYSxILkouYmopJiZRKGEsSC5KLmNqKSYmZnIoYiwyKTtWKGEsSC5KLlZpLGIpfTtmdW5jdGlvbiBzUihhKXthLmNvcHlUb0hpdERhdGEoRi5ELmZiKTt2YXIgYj1PKGEuTSxGLkQuV2QpO2ImJihLQyhiLGZ1bmN0aW9uKCl7fSksVShhLEYuRC5XZCxiKSl9O3ZhciB1Uj1mdW5jdGlvbihhKXtpZih0Ui5Nci5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKS5pbmRleE9mKGEuZXZlbnROYW1lKT49MClhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPVhLKGEpO2ImJmIuYmxhY2tsaXN0ZWQmJihhLmlzQWJvcnRlZD0hMCl9fSx0Uj17TXI6TGYoMzEpfTtmdW5jdGlvbiB2UihhKXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4hIWMmJmMuY29udmVyc2lvbn07VihhLEguSi5tZyxiKFhLKGEpKSk7UShhLEguSi5uZykmJlYoYSxILkouWW0sYihYSyhhLCJmaXJzdF92aXNpdCIpKSk7UShhLEguSi5UZSkmJlYoYSxILkouYm4sYihYSyhhLCJzZXNzaW9uX3N0YXJ0IikpKX07dmFyIHdSPWZ1bmN0aW9uKGEpe0ZvLmhhc093blByb3BlcnR5KGEuZXZlbnROYW1lKSYmKFYoYSxILkouV20sITApLGEuY29weVRvSGl0RGF0YShGLkQuSGEpLGEuY29weVRvSGl0RGF0YShGLkQuZWIpKX07dmFyIHhSPWZ1bmN0aW9uKGEpe1EoYSxILkouYmUpP1YoYSxILkoubGcsITEpOmRJKGEsImNjZF9hZGRfZWNfc3RpdGNoaW5nIiwhMSkmJlYoYSxILkoubGcsITApfTt2YXIgeVI9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5wZyk7Yj1ifHwwO3ZhciBjPSEhUShhLEguSi5zYSksZD1iPT09MHx8YztWKGEsSC5KLmVqLGQpO2QmJlYoYSxILkoucGcsNjApfTt2YXIgQVI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9U3RyaW5nKHpSLmNvb2tpZSkuc3BsaXQoIjsiKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF0uc3BsaXQoIj0iKSxmPWVbMF0udHJpbSgpO2lmKGYmJmEoZikpe3ZhciBnPWUuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtnJiYoZz1kZWNvZGVVUklDb21wb25lbnQoZykpO3ZhciBoPXZvaWQgMCxsPXZvaWQgMDsoKGg9YilbbD1mXXx8KGhbbF09W10pKS5wdXNoKGcpfX1yZXR1cm4gYn07dmFyIEJSPXdpbmRvdyx6Uj1kb2N1bWVudCxDUj1mdW5jdGlvbihhKXt2YXIgYj1CUi5fZ2FVc2VyUHJlZnM7aWYoYiYmYi5pb28mJmIuaW9vKCl8fHpSLmRvY3VtZW50RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhdGEtZ29vZ2xlLWFuYWx5dGljcy1vcHQtb3V0Iil8fGEmJkJSWyJnYS1kaXNhYmxlLSIrYV09PT0hMClyZXR1cm4hMDt0cnl7dmFyIGM9QlIuZXh0ZXJuYWw7aWYoYyYmYy5fZ2FVc2VyUHJlZnMmJmMuX2dhVXNlclByZWZzPT0ib28iKXJldHVybiEwfWNhdGNoKGYpe31mb3IodmFyIGQ9QVIoZnVuY3Rpb24oZil7cmV0dXJuIGY9PT0iQU1QX1RPS0VOIn0pLkFNUF9UT0tFTnx8W10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWlmKGRbZV09PSIkT1BUX09VVCIpcmV0dXJuITA7cmV0dXJuIHpSLmdldEVsZW1lbnRCeUlkKCJfX2dhT3B0T3V0RXh0ZW5zaW9uIik/ITA6ITF9O3ZhciBEUj1mdW5jdGlvbihhKXtpZihDUihhLnRhcmdldC5kZXN0aW5hdGlvbklkKSlQKDI4KSxhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPXhrKCk7aWYoYiYmQXJyYXkuaXNBcnJheShiLmRlc3RpbmF0aW9ucykpZm9yKHZhciBjPTA7YzxiLmRlc3RpbmF0aW9ucy5sZW5ndGg7YysrKWlmKENSKGIuZGVzdGluYXRpb25zW2NdKSl7UCgxMjUpO2EuaXNBYm9ydGVkPSEwO2JyZWFrfX19O3ZhciBFUj1mdW5jdGlvbihhKXt2YXIgYj1CLmxvY2F0aW9uLnByb3RvY29sO2IhPT0iaHR0cDoiJiZiIT09Imh0dHBzOiImJihQKDI5KSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBGUj1mdW5jdGlvbihhKXtIYyYmSGMubG9hZFB1cnBvc2U9PT0icHJldmlldyImJihQKDMwKSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBHUj1mdW5jdGlvbihhLGIpe2IuVGomJihWKGEsSC5KLnNhLCEwKSxiLlRqPSExLFdqKCkmJlYoYSxILkoub2csY2MoKSkpfTt2YXIgSFI9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjLGQpe0JvW2NdfHxkPT09dm9pZCAwfHxVKGEsYyxkKX1NKDU1MCkmJkdiKGEuTS5XYSxiKTtHYihhLk0uaGIsYik7R2IoYS5NLkVhLGIpfTt2YXIgSVI9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWU9PT1GLkQud2EmJihPKGEuTSxGLkQuVGQsITApPyhhLk0uRWFbRi5ELk9hXSYmKE0oNTUwKSYmKGEuTS5XYVtGLkQuT2FdPWEuTS5FYVtGLkQuT2FdKSxhLk0uaGJbRi5ELk9hXT1hLk0uRWFbRi5ELk9hXSxhLk0uRWFbRi5ELk9hXT12b2lkIDAsVShhLEYuRC5PYSkpLGEuZXZlbnROYW1lPUYuRC5zYyk6YS5pc0Fib3J0ZWQ9ITApfTsKdmFyIEpSPWZ1bmN0aW9uKGEpe2lmKE0oMTMyKSl7dmFyIGI9WksoYSk7aWYoYmsoYikpaWYoY2soYikpY2soWksoYSkpJiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEseyIzcGQiOiIxIn0pO2Vsc2UgaWYoIShOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpKSYmWG8oRi5ELnJhKSl7VihhLEguSi5kbiwhMCk7YmsoWksoYSkpJiZXSyhhLCJzd19leHAiLDEpO2E6e2lmKCFNKDEzMil8fCFiayhaSyhhKSl8fGNrKFpLKGEpKSlicmVhayBhO2I6e3ZhciBjPXtvdDpZaihlayhhLk0pLCIvXy9zZXJ2aWNlX3dvcmtlciIpfSxkO2Q9KGM9PT12b2lkIDA/e306Yykub3Q7dmFyIGU9aUwoZCk7aWYoZT09PW51bGx8fCFiZygiaW50ZXJuYWxfc3dfYWxsb3dlZCIsIiIpfHxqTChlLm9yaWdpbikpYnJlYWsgYjsKaWYoIUljKCkpe2dMKCkuSyh2b2lkIDAsdm9pZCAwLDYpO2JyZWFrIGJ9dmFyIGY9bmV3IGtMKGUpO29tKGptLmJhLk9oLHt9KVtlLm9yaWdpbl09Zjt9fX19fTt2YXIgTFI9ZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5PbCk7TyhhLk0sRi5ELnhoKSYmKFUoYSxGLkQueGgsITApLGJrKFpLKGEpKXx8S1IoYSkpfSxLUj1mdW5jdGlvbihhKXt2YXIgYj1GLkQuYmQsYztjfHwoYz1mdW5jdGlvbigpe30pO1IoYSxiKSE9PXZvaWQgMCYmVShhLGIsYyhSKGEsYikpKX07dmFyIE1SPSJnY2xpZCBkY2xpZCBnY2xzcmMgd2JyYWlkIGdicmFpZCBnYWRfc291cmNlIGdhZF9jYW1wYWlnbmlkIHV0bV9zb3VyY2UgdXRtX21lZGl1bSB1dG1fY2FtcGFpZ24gdXRtX3Rlcm0gdXRtX2NvbnRlbnQgdXRtX2lkIi5zcGxpdCgiICIpO2Z1bmN0aW9uIE5SKCl7dmFyIGE9Qi5sb2NhdGlvbixiLGM9YT09bnVsbD92b2lkIDA6KGI9YS5zZWFyY2gpPT1udWxsP3ZvaWQgMDpiLnJlcGxhY2UoIj8iLCIiKSxkO2lmKGMpe2Zvcih2YXIgZT1bXSxmPUpqKGMsITApLGc9bShNUiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1mW2xdO2lmKG4pZm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07cSE9PXZvaWQgMCYmZS5wdXNoKHtuYW1lOmwsdmFsdWU6cX0pfX1kPWV9ZWxzZSBkPVtdO3JldHVybiBkfTt2YXIgT1I9ZnVuY3Rpb24oYSl7dmFyIGI9TSgyNjYpLGM9TSgyNjcpO2lmKGJ8fGMpe3ZhciBkPVIoYSxGLkQuemEpO2lmKGQmJmQuaW5kZXhPZigiPyIpPT09LTEpe3ZhciBlPU5SKCk7aWYoZS5sZW5ndGghPT0wJiYoYiYmSVAoSi5VLkdtKSxjKSl7SVAoSi5VLkZtKTt2YXIgZj1lLm1hcChmdW5jdGlvbihnKXtyZXR1cm4gZy5uYW1lKyI9IitnLnZhbHVlfSkuam9pbigiJiIpO1UoYSxGLkQuemEsZCsiPyIrZil9fX19O3ZhciBQUj1bRi5ELnJhLEYuRC5rYV0sUVI9W0YuRC5yYSxGLkQua2EsRi5ELm1hXTsKZnVuY3Rpb24gUlIoYSl7dmFyIGIsYz1NKDUwNikmJiFkSShhLCJjY2RfZ2FfYWRzX2lkc19vcHRfb3V0IiwhMSksZD0hIWRJKGEsImdvb2dsZV9uZyIsITEpLGU9WG8oYz9kP1FSOmZwOlBSKSxmO2Y9ZEkoYSxGLkQuVWYsTyhhLk0sRi5ELlVmKSl8fCEhZEkoYSwiZ29vZ2xlX25nIiwhMSk7Yj17aGY6YyxFczpkLEdvOmUsZmY6ZixMZzohIWRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSksYmk6QW0oKSxHajohVksoKSxGczpiayhaSyhhKSksRHM6ISFRKGEsSC5KLmJlKSxHczohIVEoYSxILkouVGUpLHVzOiEhTyhhLk0sRi5ELk5sKSxLczohIVEoYSxILkouZWopLHhnOk8oYS5NLEYuRC5TYyksbnI6TyhhLk0sRi5ELlNjLHZvaWQgMCw0KSxIczohIVEoYSxILkouRmMpfTtWKGEsSC5KLmNqLGIuZmYpO1YoYSxILkouYmosU1IoYikpO2IuaGYmJiFiLmZmJiZiLkxnJiZTUihiKSYmVShhLCJfJmlidCIsIjEiKTtTUihiKSYmYi5HbyYmKGIuaGY/Yi54ZyE9PSExfHxiLkxnOjEpJiZWKGEsCkguSi5ybiwhMCk7Yi5FcyYmIWIuYmkmJlUoYSxGLkQuTGUsMSk7KGIuaGY/Yi54ZzpiLm5yKT09PSExJiZVKGEsIl8mbmdzIiwiMSIpO1YoYSxILkouaGQsVFIoYikmJihiLkdzfHxiLnVzKSk7VihhLEguSi5yZyxUUihiKSYmYi5LcyYmIWIuYmkpfWZ1bmN0aW9uIFNSKGEpe3JldHVybiBhLmhmPyhhLkxnfHxhLmZmKSYmIWEuYmkmJiFhLkdqOmEuZmYmJmEueGchPT0hMSYmIWEuR2omJiFhLmJpfWZ1bmN0aW9uIFRSKGEpe2lmKGEuSHMpcmV0dXJuITE7aWYoYS5oZil7aWYoIWEuZmYmJiFhLkxnKXJldHVybiExfWVsc2UgaWYoIWEuZmYpcmV0dXJuITE7cmV0dXJuIGEuRnN8fGEuRHN8fGEuR2p8fChhLmhmP2EueGc9PT0hMSYmIWEuTGc6YS54Zz09PSExKXx8IWEuR28/ITE6ITB9O3ZhciBVUj1mdW5jdGlvbihhKXtzTCgpJiZVKGEsRi5ELkZlLCIxIil9O3ZhciBWUj1mdW5jdGlvbihhKXt2YXIgYj17cHJlZml4OlN0cmluZyhPKGEuTSxGLkQubmIsIiIpKSxwYXRoOlN0cmluZyhPKGEuTSxGLkQudmMsIi8iKSksZmxhZ3M6U3RyaW5nKE8oYS5NLEYuRC5UYiwiIikpLGRvbWFpbjpTdHJpbmcoTyhhLk0sRi5ELkxiLCJhdXRvIikpLHBkOk51bWJlcihPKGEuTSxGLkQuQ2IsNjMwNzJFMykpfTtWKGEsSC5KLkdhLGIpfTt2YXIgV1I9ZnVuY3Rpb24oYSl7aWYoTSg0MzUpfHxNKDU1Mykpe3ZhciBiPURtKCk7YiYmVihhLEguSi5BcSxiKX19O3ZhciBZUj1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELlJpKTtmb3IodmFyIGI9TyhhLk0sRi5ELlJsKXx8W10sYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1iW2NdO2lmKGQucnVsZV9yZXN1bHQpe2EuY29weVRvSGl0RGF0YShGLkQuUmksZC50cmFmZmljX3R5cGUpO0lQKEouVS5Fbik7YnJlYWt9fX07dmFyIFpSPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSkmJmEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1PKGEuTSxGLkQudWMpIT09ITE7aWYoYil7dmFyIGM9TEsoYSk7Yy5wZCYmKGMucGQ9TWF0aC5taW4oYy5wZCw3Nzc2RTMpKTtQSyh7VG46YixtbzpPbyhPKGEuTSxGLkQuRGIpKSxRbzohIU8oYS5NLEYuRC56YyksVW46Y30pfX19O3ZhciAkUj1mdW5jdGlvbihhKXtWKGEsSC5KLk1oLCExKTtWKGEsSC5KLk5oLCExKTtpZighRG0oKSYmV2ooKSYmIWJrKFpLKGEpKSYmIVEoYSxILkouYmUpJiZRKGEsSC5KLmVqKSl7dmFyIGI9UShhLEguSi5yZyk7UShhLEguSi5vZykmJihiP1YoYSxILkouTmgsITApOlYoYSxILkouTWgsITApKX19O3ZhciBhUz1mdW5jdGlvbihhKXtPKGEuTSxGLkQuemMpJiYoWG8oRi5ELnJhKXx8TyhhLk0sRi5ELktiKXx8VShhLEYuRC5abSwhMCkpO3ZhciBiO3ZhciBjO2M9Yz09PXZvaWQgMD8zOmM7dmFyIGQ9QS5sb2NhdGlvbi5ocmVmO2lmKGQpe3ZhciBlPVJqKGQpLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZj1JaihlLCJfZ2wiLCExLCEwKXx8IiI7Yj1mP1ZxKGYsYykhPT12b2lkIDA6ITF9ZWxzZSBiPSExO2ImJmJrKFpLKGEpKSYmV0soYSwiZ2x2IiwxKTtpZihhLmV2ZW50TmFtZSE9PUYuRC53YSlyZXR1cm57fTtPKGEuTSxGLkQuemMpJiZBcyhbImF3IiwiZGMiXSk7Q3MoWyJhdyIsImRjIl0pO3ZhciBnPSRQKGEpLGg9WlAoYSk7cmV0dXJuIE9iamVjdC5rZXlzKGcpLmxlbmd0aD9nOmh9O3ZhciBiUz1mdW5jdGlvbihhKXt2YXIgYj0hMDtiPWI9PT12b2lkIDA/ITE6YjtpZihNKDQyNSkmJiEocGwoKXx8YiYmUShhLEguSi5kail8fGEuZXZlbnROYW1lIT09Ri5ELndhfHxRKGEsSC5KLkZjKSkpe3ZhciBjPXt9LGQ9e30sZT17ZXZlbnRNZXRhZGF0YTpuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEuTS5ldmVudE1ldGFkYXRhLChjW0guSi5GY109ITAsYyksYj97fTooZFtILkouRGNdPVguVi5LYSxkKSksbm9HdG1FdmVudDohMH0sZj1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLCJzdHJ1Y3R1cmVkX2RhdGEiLGEuTS5FYSk7bUQoZixhLk0uZXZlbnRJZCxlKX19Owp2YXIgZFM9ZnVuY3Rpb24oYSl7cmV0dXJuIWF8fGNTLnRlc3QoYSl8fERvLmhhc093blByb3BlcnR5KGEpfSxjUz0vXihffGdhX3xnb29nbGVffGd0YWdcLnxmaXJlYmFzZV8pLiokLyxlUz1mdW5jdGlvbihhKXt0aGlzLnlhPWE7dGhpcy5IPXRoaXMuemI9dGhpcy5jbGllbnRJZD12b2lkIDA7dGhpcy5qYT10aGlzLlI9ITE7dGhpcy5MYT0wO3RoaXMuTj0hMTt0aGlzLlo9e1RqOiExfTt0aGlzLmZhPW5ldyBJUTt0aGlzLks9bmV3IEhQfTtrPWVTLnByb3RvdHlwZTtrLlpzPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLGU9YkModGhpcy55YSk7aWYoZSlpZihjLmV2ZW50TWV0YWRhdGFbSC5KLmFlXSYmYS5jaGFyQXQoMCk9PT0iXyIpYy5vbkZhaWx1cmUoKTtlbHNle2EhPT1GLkQud2EmJmEhPT1GLkQuSmImJmRTKGEpJiZQKDU4KTt2YXIgZj1uZXcgYUkoZSxhLGMpO1YoZixILkouRWIsYik7dmFyIGc9W0YuRC5yYV0saD1iayhaSyhmKSk7VihmLEguSi5kaixoKTtpZihkSShmLEYuRC5VZiwKTyhmLk0sRi5ELlVmKSl8fGgpZy5wdXNoKEYuRC5rYSksZy5wdXNoKEYuRC5tYSk7Rk0uZmEoZnVuY3Rpb24oKXticChmdW5jdGlvbigpe2QuYnQoZil9LGcpfSl9ZWxzZSBjLm9uRmFpbHVyZSgpfTtrLmJ0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dHJ5e0hNKGEpO2lmKGEuaXNBYm9ydGVkKXt0YigpO3JldHVybn1KTShhKTtEUihhKTt1UihhKTtFUihhKTtGUihhKTtJTShhKTt2YXIgYz17fTtlUShhLGMpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5IPWE7dmFyIGQ9Yy51cjtjLkhyPT09MCYmSVAoSi5VLm5sKTtkPT09MCYmSVAoSi5VLkxrKTtaTShhKTtWKGEsSC5KLnRnLGNvLmlhLnhkKTtWUihhKTtIUihhKTt0aGlzLkxxKGEpO3RoaXMuSy5LdChhKTtVKGEsRi5ELnppLGFsKDgsTkYpKTt4UihhKTtwTihhKTtaUihhKTtNUShhKTt0aGlzLkFvKGFTKGEpKTtiUyhhKTt2YXIgZT1hLmV2ZW50TmFtZT09PUYuRC53YTtlJiYodGhpcy5OPQohMCk7SVIoYSk7ZSYmIWEuaXNBYm9ydGVkJiZ0aGlzLkxhKys+MCYmSVAoSi5VLmhuKTtVTChhKTtqUihhLHRoaXMuY2xpZW50SWQsdGhpcy56Yix0aGlzLkssIXRoaXMuamEpO25SKGEpO2xSKGEpO09SKGEpO1hMKGEpO0dSKGEsdGhpcy5aKTt5UihhKTt2UihhKTt3UihhKTtZUihhKTthUShhKTtnUShhKTt3TShhKTtoUihhKTtZUShhKTtnUihhKTtmUihhKTtlUihhKTtkUihhKTtjUihhKTthUihhKTskUShhKTtXUShhKTtVUShhKTtUUShhKTtTUShhKTtiUShhKTtjUShhKTtPKGEuTSxGLkQueGgpJiYhYmsoWksoYSkpfHxHTShhKTtVUihhKTtXUihhKTtpTihhKTtWTChhKTtTTChhKTtsTihhKTtoTihhKTtYTShhLCExKTtzUihhKTtSUihhKTskUihhKTtOTShhKTtyUihhKTtwUihhKTtiUihhKTtaUShhKTtSUShhKTtxUihhKTshdGhpcy5OJiZRKGEsSC5KLlBjKSYmSVAoSi5VLnNsKTtKUChhKTtpZihNKDU3NSkpe2lmKGEuaXNBYm9ydGVkKXtpZighUShhLEguSi5TbykpYS5NLm9uRmFpbHVyZSgpOwp0YigpO3JldHVybn1pZihRKGEsSC5KLkphKSl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufX1lbHNlIGlmKFEoYSxILkouSmEpfHxhLmlzQWJvcnRlZCl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufXRoaXMuQW8oaVIoYSx0aGlzLmNsaWVudElkKSk7dGhpcy5qYT0hMDt0aGlzLkh0KGEpO0pSKGEpO1ZRKGZ1bmN0aW9uKGYpe2IuTW4oZil9LGEpO3RoaXMuSy5xaygpO0xSKGEpO2dOKGEpO1dMKGEpO1lNKGEpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5NbihhKTthLk0ub25TdWNjZXNzKCl9Y2F0Y2goZil7YS5NLm9uRmFpbHVyZSgpfXRiKCl9O2suTW49ZnVuY3Rpb24oYSl7dGhpcy5mYS5hZGQoYSl9O2suQW89ZnVuY3Rpb24oYSl7dmFyIGI9YS5jbGllbnRJZCxjPWEuemI7YiYmYyYmKHRoaXMuY2xpZW50SWQ9Yix0aGlzLnpiPWMpfTtrLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5mYS5mbHVzaCgpfTtrLkh0PWZ1bmN0aW9uKGEpe3ZhciBiPQp0aGlzO2lmKCF0aGlzLlIpe3ZhciBjPVhvKEYuRC5tYSksZD1YbyhGLkQucmEpOyRvKFtGLkQubWEsRi5ELnJhLEYuRC5rYV0sZnVuY3Rpb24oZSl7dmFyIGY7Zj0oZT09PXZvaWQgMD97fTplKS5jb25zZW50RXZlbnRJZDt2YXIgZz1YbyhGLkQubWEpLGg9WG8oRi5ELnJhKSxsPSExLG49e30scD17fTtpZihkIT09aCYmYi5IJiZiLnpiJiZiLmNsaWVudElkKXt2YXIgcT1iLmNsaWVudElkLHI7dmFyIHQ9TFAoYi56Yik7cj10P3QuaDp2b2lkIDA7aWYoaCl7dmFyIHU9RlAoYi5IKTtpZih1KXtiLmNsaWVudElkPXU7dmFyIHY9U1AoYi5IKTt2JiYoYi56Yj1QUCh2LGIuemIsYi5IKSl9ZWxzZSBEUChiLmNsaWVudElkLGIuSCksQVAoYi5jbGllbnRJZCwhMCk7UlAoYi56YixiLkgpO2w9ITA7bltGLkQuTmxdPXE7ciYmKG5bRi5ELmJxXT1yKX1lbHNlIGIuemI9dm9pZCAwLGIuY2xpZW50SWQ9dm9pZCAwLEEuZ2FHbG9iYWw9e319ZyYmIWMmJihsPSEwLHBbSC5KLkdoXT0hMCxuW0YuRC54aV09CkxvW0YuRC5tYV0pO2lmKGwpe3ZhciB4PXNDKGIueWEsRi5ELnlmLG4pO21EKHgsZiE9bnVsbD9mOmEuTS5ldmVudElkLHtldmVudE1ldGFkYXRhOnB9KX1kPWg7Yz1nO2IuWi5Uaj0hMH0pO3RoaXMuUj0hMH19O2suTHE9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWUhPT1GLkQuSmImJnRoaXMuSy5LcShhKX07dmFyIGdTPWZ1bmN0aW9uKGEpe2lmKCFmUyhhKSl7dmFyIGI9ITEsYz1mdW5jdGlvbigpeyFiJiZmUyhhKSYmKGI9ITAsYWQoQiwidmlzaWJpbGl0eWNoYW5nZSIsYyksYWQoQiwicHJlcmVuZGVyaW5nY2hhbmdlIixjKSxQKDU1KSl9OyRjKEIsInZpc2liaWxpdHljaGFuZ2UiLGMpOyRjKEIsInByZXJlbmRlcmluZ2NoYW5nZSIsYyk7UCg1NCl9fSxmUz1mdW5jdGlvbihhKXtpZigicHJlcmVuZGVyaW5nImluIEI/Qi5wcmVyZW5kZXJpbmc6Qi52aXNpYmlsaXR5U3RhdGU9PT0icHJlcmVuZGVyIilyZXR1cm4hMTthKCk7cmV0dXJuITB9O2Z1bmN0aW9uIGhTKGEpe2dTKGZ1bmN0aW9uKCl7dmFyIGI9YkMoYSk7aWYoYil7dmFyIGM9aVMoYiksZD1jby5pYS54ZCxlPVlDKCksZj1iQyhhLCEwKTtmJiZlLkgucmVnaXN0ZXIoZixjLGQsdm9pZCAwKX19KTt9ZnVuY3Rpb24gaVMoYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O3ZhciBjPW5ldyBlUyhhLmlkKSxkPWEucHJlZml4PT09Ik1DIjtiPWZ1bmN0aW9uKGUsZixnLGgpe2QmJihoLmV2ZW50TWV0YWRhdGFbSC5KLmJlXT0hMCk7Yy5acyhmLGcsaCl9O2pTKGEsYyk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGpTKGEsYil7dmFyIGM9Yi5LO2MuaHQoZnVuY3Rpb24oKXtaayg5LCEwKTtZQygpLmZsdXNoKCk7aWYoYy5ZaCgpPj0xRTMmJmtkKCkpe3ZhciBkPXt9LGU9e2V2ZW50SWQ6cmooKSxldmVudE1ldGFkYXRhOihkW0guSi5La109ITAsZCksZGVmZXJyYWJsZTohMH07WkMoRi5ELnlmLHt9LGEuaWQsZSl9Yi5mbHVzaCgpO2MuQ28oZnVuY3Rpb24oKXtaayg5LCExKTtjLkNvKCl9KX0pO312YXIga1M9Si5VLnFsLGxTPUouVS5ybDtmdW5jdGlvbiBtUyhhLGIpe3ZhciBjPXRrKCk7YyYmYy5pbmRleE9mKGIpPi0xJiYoYVtILkouQ2NdPSEwKX1mdW5jdGlvbiBvUyhhLGIsYyl7dmFyIGQ9dGhpczt9b1MuUD0iaW50ZXJuYWwuZ3RhZ0NvbmZpZyI7ZnVuY3Rpb24gcFMoYSxiLGMsZCl7dmFyIGU9dGhpczt9cFMuUD0iaW50ZXJuYWwuZ3RhZ0Rlc3RpbmF0aW9uQ29uZmlnIjsKZnVuY3Rpb24gclMoYSxiKXt9CnJTLnB1YmxpY05hbWU9Imd0YWdTZXQiO2Z1bmN0aW9uIHNTKCl7dmFyIGE9e307cmV0dXJuIGF9O2Z1bmN0aW9uIHRTKGEpe310Uy5QPSJpbnRlcm5hbC5pbml0aWFsaXplU2VydmljZVdvcmtlciI7ZnVuY3Rpb24gdVMoYSxiKXt9dVMucHVibGljTmFtZT0iaW5qZWN0SGlkZGVuSWZyYW1lIjtmdW5jdGlvbiB2UyhhLGIsYyxkLGUpe312Uy5QPSJpbnRlcm5hbC5pbmplY3RIdG1sIjt2YXIgQVM9e2RsOjEsaWQ6MX07CmZ1bmN0aW9uIEJTKGEsYixjLGQpe31CUy5wdWJsaWNOYW1lPSJpbmplY3RTY3JpcHQiO2Z1bmN0aW9uIENTKCl7dmFyIGE9dm0sYj0hMTtiPSEhYS5IWyI1Il07cmV0dXJuIGJ9Q1MuUD0iaW50ZXJuYWwuaXNBdXRvUGlpRWxpZ2libGUiO2Z1bmN0aW9uIERTKGEpe3ZhciBiPSEwO3JldHVybiBifURTLnB1YmxpY05hbWU9ImlzQ29uc2VudEdyYW50ZWQiO2Z1bmN0aW9uIEVTKGEpe3ZhciBiPSExO3JldHVybiBifUVTLlA9ImludGVybmFsLmlzRGVidWdNb2RlIjtmdW5jdGlvbiBGUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1GUy5QPSJpbnRlcm5hbC5pc0Rlc3RpbmF0aW9uSW5pdGlhbGl6ZWQiO2Z1bmN0aW9uIEdTKCl7cmV0dXJuIEJtKCl9R1MuUD0iaW50ZXJuYWwuaXNEbWFSZWdpb24iO2Z1bmN0aW9uIEhTKCl7cmV0dXJuIFVCKCl9SFMuUD0iaW50ZXJuYWwuaXNEb21SZWFkeSI7ZnVuY3Rpb24gSVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9SVMuUD0iaW50ZXJuYWwuaXNFbnRpdHlJbmZyYXN0cnVjdHVyZSI7ZnVuY3Rpb24gSlMoYSl7dmFyIGI9ITE7aWYoIXFoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiXSxbYV0pO2I9TShhKTtyZXR1cm4gYn1KUy5QPSJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIjtmdW5jdGlvbiBLUygpe3ZhciBhPSExO3JldHVybiBhfUtTLlA9ImludGVybmFsLmlzRnBmZSI7ZnVuY3Rpb24gTFMoKXt2YXIgYT0hMTtyZXR1cm4gYX1MUy5QPSJpbnRlcm5hbC5pc0djcEJyb3dzZXIiO2Z1bmN0aW9uIE1TKCl7dmFyIGE9ITE7cmV0dXJuIGF9TVMuUD0iaW50ZXJuYWwuaXNMYW5kaW5nUGFnZSI7ZnVuY3Rpb24gTlMoKXt2YXIgYT0hMTtyZXR1cm4gYX1OUy5QPSJpbnRlcm5hbC5pc09ndCI7ZnVuY3Rpb24gT1MoKXt2YXIgYTtyZXR1cm4gYX1PUy5QPSJpbnRlcm5hbC5pc1NhZmFyaVBjbUVsaWdpYmxlQnJvd3NlciI7ZnVuY3Rpb24gUFMoKXt2YXIgYT1RaChmdW5jdGlvbihiKXtYRih0aGlzKS5sb2coImVycm9yIixiKX0pO2EucHVibGljTmFtZT0iSlNPTiI7cmV0dXJuIGF9O2Z1bmN0aW9uIFFTKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYil9UVMuUD0iaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiO2Z1bmN0aW9uIFJTKCl7cmV0dXJuITF9CnZhciBTUz17Z2V0SXRlbTpmdW5jdGlvbihhKXt2YXIgYj1udWxsO3JldHVybiBifSxzZXRJdGVtOmZ1bmN0aW9uKGEsYil7cmV0dXJuITF9LHJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7fX07ZnVuY3Rpb24gVFMoKXt9VFMucHVibGljTmFtZT0ibG9nVG9Db25zb2xlIjtmdW5jdGlvbiBVUyhhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBjPWEsZD1UZChiLHRoaXMuVCksZT1ZQygpLGY9YkMoYywhMCk7ZiYmVEMoZS5ILGYsZCk7fVVTLlA9ImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIjtmdW5jdGlvbiBWUyhhLGIsYyl7Yz1jPT09dm9pZCAwPyEwOmM7dmFyIGQ9W107cmV0dXJuIFVkKGQpfVZTLlA9ImludGVybmFsLnBhcnNlQ29va2llVmFsdWVzRnJvbVN0cmluZyI7ZnVuY3Rpb24gV1MoYSl7dmFyIGI9dm9pZCAwO2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuO2EmJlNiKGEsIi8vIikmJihhPUIubG9jYXRpb24ucHJvdG9jb2wrYSk7aWYodHlwZW9mIFVSTD09PSJmdW5jdGlvbiIpe3ZhciBjO2E6e3ZhciBkO3RyeXtkPW5ldyBVUkwoYSl9Y2F0Y2goeCl7Yz12b2lkIDA7YnJlYWsgYX1mb3IodmFyIGU9e30sZj1BcnJheS5mcm9tKGQuc2VhcmNoUGFyYW1zKSxnPTA7ZzxmLmxlbmd0aDtnKyspe3ZhciBoPWZbZ11bMF0sbD1mW2ddWzFdO2UuaGFzT3duUHJvcGVydHkoaCk/dHlwZW9mIGVbaF09PT0ic3RyaW5nIj9lW2hdPVtlW2hdLGxdOmVbaF0ucHVzaChsKTplW2hdPWx9Yz17aHJlZjpkLmhyZWYsb3JpZ2luOmQub3JpZ2luLHByb3RvY29sOmQucHJvdG9jb2wsdXNlcm5hbWU6ZC51c2VybmFtZSxwYXNzd29yZDpkLnBhc3N3b3JkLGhvc3Q6ZC5ob3N0LGhvc3RuYW1lOmQuaG9zdG5hbWUsCnBvcnQ6ZC5wb3J0LHBhdGhuYW1lOmQucGF0aG5hbWUsc2VhcmNoOmQuc2VhcmNoLHNlYXJjaFBhcmFtczplLGhhc2g6ZC5oYXNofX1yZXR1cm4gVWQoYyl9dmFyIG47dHJ5e249UmooYSl9Y2F0Y2goeCl7cmV0dXJufWlmKCFuLnByb3RvY29sfHwhbi5ob3N0KXJldHVybjt2YXIgcD17fTtpZihuLnNlYXJjaClmb3IodmFyIHE9bi5zZWFyY2gucmVwbGFjZSgiPyIsIiIpLnNwbGl0KCImIikscj0wO3I8cS5sZW5ndGg7cisrKXt2YXIgdD1xW3JdLnNwbGl0KCI9IiksdT10WzBdLHY9S2oodC5zcGxpY2UoMSkuam9pbigiPSIpKXx8IiI7dj12LnJlcGxhY2UoL1wrL2csIiAiKTtwLmhhc093blByb3BlcnR5KHUpP3R5cGVvZiBwW3VdPT09InN0cmluZyI/cFt1XT1bcFt1XSx2XTpwW3VdLnB1c2godik6cFt1XT12fW4uc2VhcmNoUGFyYW1zPXA7bi5vcmlnaW49bi5wcm90b2NvbCsiLy8iK24uaG9zdDtuLnVzZXJuYW1lPSIiO24ucGFzc3dvcmQ9IiI7Yj1VZChuKTsKcmV0dXJuIGJ9V1MucHVibGljTmFtZT0icGFyc2VVcmwiO2Z1bmN0aW9uIFhTKGEpe31YUy5QPSJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCI7ZnVuY3Rpb24gWVMoYSxiLGMpe3ZhciBkO3JldHVybiBkfVlTLlA9ImludGVybmFsLnB1c2hUb0RhdGFMYXllciI7ZnVuY3Rpb24gWlMoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9ITE7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2Zvcih2YXIgZD1bdGhpcyxhXSxlPW0oYiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpZC5wdXNoKFRkKGYudmFsdWUsdGhpcy5ULDEpKTt0cnl7TC5hcHBseShudWxsLGQpLGM9ITB9Y2F0Y2goZyl7cmV0dXJuITF9cmV0dXJuIGN9WlMucHVibGljTmFtZT0icXVlcnlQZXJtaXNzaW9uIjtmdW5jdGlvbiAkUyhhKXt2YXIgYj10aGlzO30kUy5QPSJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiI7ZnVuY3Rpb24gYVQoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWFULnB1YmxpY05hbWU9InJlYWRBbmFseXRpY3NTdG9yYWdlIjtmdW5jdGlvbiBiVCgpe3ZhciBhPSIiO3JldHVybiBhfWJULnB1YmxpY05hbWU9InJlYWRDaGFyYWN0ZXJTZXQiO2Z1bmN0aW9uIGNUKCl7cmV0dXJuIEUoMTkpfWNULlA9ImludGVybmFsLnJlYWREYXRhTGF5ZXJOYW1lIjtmdW5jdGlvbiBkVCgpe3ZhciBhPSIiO3JldHVybiBhfWRULnB1YmxpY05hbWU9InJlYWRUaXRsZSI7ZnVuY3Rpb24gZVQoYSxiKXt2YXIgYz10aGlzO2lmKCFsaChhKXx8IWhoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7TE0oYSxmdW5jdGlvbihkKXtiLmludm9rZShjLlQsVWQoZCxjLlQsMSkpfSk7fWVULlA9ImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siO2Z1bmN0aW9uIGZUKGEsYil7aWYoIWxoKGEpfHwhZWgoYikmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoQmgoWEYodGhpcykuUGIoKSkpcmV0dXJuITE7dmFyIGMsZCxlPWJDKGEsITApO2lmKCFlKXJldHVybiExO3N3aXRjaChlLnByZWZpeCl7Y2FzZSAiQVciOmM9dE47ZD1jby5pYS5jYjticmVhaztjYXNlICJEQyI6Yz1JTjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkdGIjpjPU5OO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiSEEiOmM9UE47ZD1jby5pYS5nZDticmVhaztjYXNlICJVQSI6Yz1mTztkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIk1DIjpjPWlTKGUpO2Q9Y28uaWEueGQ7YnJlYWs7Y2FzZSAiRyI6cmV0dXJuIGhTKGEpLCEwO2RlZmF1bHQ6cmV0dXJuITF9dmFyIGY9YSwKZz1jLGg9ZCxsPVRkKGIsdGhpcy5ULDEpLG49WUMoKSxwPWJDKGYsITApO3AmJm4uSC5yZWdpc3RlcihwLGcsaCxsKTtyZXR1cm4hMH1mVC5QPSJpbnRlcm5hbC5yZWdpc3RlckRlc3RpbmF0aW9uIjt2YXIgZ1Q9WyJldmVudCJdO2Z1bmN0aW9uIGhUKGEsYixjKXt9aFQuUD0iaW50ZXJuYWwucmVnaXN0ZXJHdGFnQ29tbWFuZExpc3RlbmVyIjtmdW5jdGlvbiBpVChhLGIpe3ZhciBjPSExO3JldHVybiBjfWlULlA9ImludGVybmFsLnJlbW92ZURhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIGpUKGEsYil7fQpqVC5QPSJpbnRlcm5hbC5yZW1vdmVGb3JtRGF0YSI7ZnVuY3Rpb24ga1QoKXt9a1QucHVibGljTmFtZT0icmVzZXREYXRhTGF5ZXIiO2Z1bmN0aW9uIGxUKGEsYixjKXt2YXIgZD12b2lkIDA7cmV0dXJuIGR9bFQuUD0iaW50ZXJuYWwuc2NydWJVcmxQYXJhbXMiO2Z1bmN0aW9uIG1UKGEpe31tVC5QPSJpbnRlcm5hbC5zZW5kQWRzSGl0IjtmdW5jdGlvbiBuVChhLGIsYyxkKXtpZihhcmd1bWVudHMubGVuZ3RoPDJ8fCFmaChkKXx8IWZoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnkiLCJPYmplY3R8dW5kZWZpbmVkIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9Yz9UZChjLHRoaXMuVCwxKTp7fSxmPVRkKGEpLGc9QXJyYXkuaXNBcnJheShmKT9mOltmXTtiPVN0cmluZyhiKTt2YXIgaD1kP1RkKGQpOnt9LGw9WEYodGhpcyk7aC5vcmlnaW5hdGluZ0VudGl0eT10RyhsKTtsLnByaW9yaXR5UXVldWUmJihoLnByaW9yaXR5UXVldWU9bC5wcmlvcml0eVF1ZXVlKTtmb3IodmFyIG49MDtuPGcubGVuZ3RoO24rKyl7dmFyIHA9Z1tuXTtpZih0eXBlb2YgcD09PSJzdHJpbmciKXt2YXIgcT17fTtFZChlLHEpO3ZhciByPXt9O0VkKGgscik7dmFyIHQ9c0MocCxiLHEpO21EKHQsCmguZXZlbnRJZHx8bC5ldmVudElkLHIpfX19blQuUD0iaW50ZXJuYWwuc2VuZEd0YWdFdmVudCI7ZnVuY3Rpb24gb1QoYSxiLGMpe31vVC5wdWJsaWNOYW1lPSJzZW5kUGl4ZWwiO2Z1bmN0aW9uIHBUKGEsYil7fXBULlA9ImludGVybmFsLnNldEFuY2hvckhyZWYiO2Z1bmN0aW9uIHFUKGEpe31xVC5QPSJpbnRlcm5hbC5zZXRDb250YWluZXJDb25zZW50RGVmYXVsdHMiO2Z1bmN0aW9uIHJUKGEsYixjLGQpe3ZhciBlPXRoaXM7ZD1kPT09dm9pZCAwPyEwOmQ7dmFyIGY9ITE7CnJldHVybiBmfXJULnB1YmxpY05hbWU9InNldENvb2tpZSI7ZnVuY3Rpb24gc1QoYSl7fXNULlA9ImludGVybmFsLnNldENvcmVQbGF0Zm9ybVNlcnZpY2VzIjtmdW5jdGlvbiB0VChhLGIpe310VC5QPSJpbnRlcm5hbC5zZXREYXRhTGF5ZXJWYWx1ZSI7ZnVuY3Rpb24gdVQoYSl7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7fXZULlA9ImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIjtmdW5jdGlvbiB3VChhLGIpe313VC5QPSJpbnRlcm5hbC5zZXRGb3JtQWN0aW9uIjtmdW5jdGlvbiB4VChhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aWYoIWxoKGEpfHwhb2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZigha20oYSkpdGhyb3cgRXJyb3IoInNldEluQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTsoY3x8bm0oYSk9PT12b2lkIDApJiZtbShhLFRkKGIsdGhpcy5ULDEpKTt9eFQuUD0iaW50ZXJuYWwuc2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIHlUKGEsYixjKXtyZXR1cm4hMX15VC5wdWJsaWNOYW1lPSJzZXRJbldpbmRvdyI7ZnVuY3Rpb24gelQoYSxiLGMpe316VC5QPSJpbnRlcm5hbC5zZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIEFUKGEsYixjKXtpZighbGgoYSl8fCFsaChiKXx8YXJndW1lbnRzLmxlbmd0aCE9PTMpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWVEKGEpLGY9MDtmPGQubGVuZ3RoLTE7ZisrKXtpZihlW2RbZl1dPT09dm9pZCAwKWVbZFtmXV09e307ZWxzZSBpZighQ2QoZVtkW2ZdXSkpdGhyb3cgRXJyb3IoInNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciBmYWlsZWQsIHBhdGggY29udGFpbnMgYSBub24tb2JqZWN0IHR5cGU6ICIrZFtmXSk7ZT1lW2RbZl1dfWVbZFtmXV09VGQoYyx0aGlzLlQsMSk7fUFULlA9ImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gQlQoYSxiKXt9CkJULlA9ImludGVybmFsLnNldFRyYW5zbWlzc2lvbk1vZGUiO2Z1bmN0aW9uIENUKGEsYixjLGQpe3ZhciBlPXRoaXM7fUNULnB1YmxpY05hbWU9InNoYTI1NiI7ZnVuY3Rpb24gRFQoYSxiLGMpe30KRFQuUD0iaW50ZXJuYWwuc29ydFJlbW90ZUNvbmZpZ1BhcmFtZXRlcnMiO2Z1bmN0aW9uIEVUKGEpe31FVC5QPSJpbnRlcm5hbC5zdG9yZUFkc0JyYWlkTGFiZWxzIjtmdW5jdGlvbiBGVChhLGIpe3ZhciBjPXZvaWQgMDtyZXR1cm4gY31GVC5QPSJpbnRlcm5hbC5zdWJzY3JpYmVUb0Nyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gR1QoYSl7fUdULlA9ImludGVybmFsLnRhc2tTZW5kQWRzSGl0cyI7dmFyIEhUPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBjPVhGKHRoaXMpLlBiKCksZD1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtkW2NdJiYoYj1kW2NdLmhhc093blByb3BlcnR5KCJndG0uIithKT9kW2NdWyJndG0uIithXTpudWxsKTtyZXR1cm4gYn0sc2V0SXRlbTpmdW5jdGlvbihhLGIpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYz1YRih0aGlzKS5QYigpLGQ9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7ZFtjXT1kW2NdfHx7fTtkW2NdWyJndG0uIithXT1iO30sCnJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBiPVhGKHRoaXMpLlBiKCksYz1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtpZighY1tiXXx8IWNbYl0uaGFzT3duUHJvcGVydHkoImd0bS4iK2EpKXJldHVybjtkZWxldGUgY1tiXVsiZ3RtLiIrYV07fSxjbGVhcjpmdW5jdGlvbigpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYT1YRih0aGlzKS5QYigpO2RlbGV0ZSBhbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KVthXTt9LApwdWJsaWNOYW1lOiJ0ZW1wbGF0ZVN0b3JhZ2UifTtmdW5jdGlvbiBJVChhLGIpe3ZhciBjPSExO3JldHVybiBjfUlULlA9ImludGVybmFsLnRlc3RSZWdleCI7ZnVuY3Rpb24gSlQoYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIEtUKGEsYil7fUtULlA9ImludGVybmFsLnRyYWNrVXNhZ2UiO2Z1bmN0aW9uIExUKGEsYil7dmFyIGM7cmV0dXJuIGN9TFQuUD0iaW50ZXJuYWwudW5zdWJzY3JpYmVGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBNVChhKXt9TVQucHVibGljTmFtZT0idXBkYXRlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBOVChhKXt2YXIgYj0hMTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTtQVHx8KFBUPW5ldyBPVCk7cmV0dXJuIFFUKCl9O3ZhciBKRjtmdW5jdGlvbiBWVCgpe0pGLnNkKGZ1bmN0aW9uKGEsYixjKXtsaigpO3ZhciBkPWpqO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPWQuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFfHwwO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFKys7dHJ5e3JldHVybiBhLmFwcGx5KGIsYyl9ZmluYWxseXtsaigpLGpqLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRS0tfX0pfWZ1bmN0aW9uIFdUKGEpe2lmKGEmJmEubGVuZ3RoKWZvcih2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSksYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLnJlcGxhY2UoL15fKi8sIiIpO2JbZF09WyJzYW5kYm94ZWRTY3JpcHRzIl19fQpmdW5jdGlvbiBYVChhKXtpZihhKXt2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSk7R2IoYSxmdW5jdGlvbihjLGQpe2Zvcih2YXIgZT0wO2U8ZC5sZW5ndGg7ZSsrKXt2YXIgZj1kW2VdLnJlcGxhY2UoL15fKi8sIiIpO2JbZl09YltmXXx8W107YltmXS5wdXNoKGMpfX0pfX07ZnVuY3Rpb24gWlQoYSl7bUQocEMoImRldmVsb3Blcl9pZC4iK2EsITApLDAse30pfTtmdW5jdGlvbiAkVChhLGIpe3JldHVybiBFZChhLGJ8fG51bGwpfWZ1bmN0aW9uIFkoYSl7cmV0dXJuIHdpbmRvdy5lbmNvZGVVUklDb21wb25lbnQoYSl9ZnVuY3Rpb24gYVUoYSl7WmMoYSx2b2lkIDAsdm9pZCAwKX1mdW5jdGlvbiBiVShhKXt2YXIgYj1bInZlaW50ZXJhY3RpdmUuY29tIiwidmUtaW50ZXJhY3RpdmUuY24iXTtpZighYSlyZXR1cm4hMTt2YXIgYz1MaihSaihhKSwiaG9zdCIpO2lmKCFjKXJldHVybiExO2Zvcih2YXIgZD0wO2ImJmQ8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdJiZiW2RdLnRvTG93ZXJDYXNlKCk7aWYoZSl7dmFyIGY9Yy5sZW5ndGgtZS5sZW5ndGg7Zj4wJiZlLmNoYXJBdCgwKSE9PSIuIiYmKGYtLSxlPSIuIitlKTtpZihmPj0wJiZjLmluZGV4T2YoZSxmKT09PWYpcmV0dXJuITB9fXJldHVybiExfQpmdW5jdGlvbiBjVShhLGIsYyl7Zm9yKHZhciBkPXt9LGU9ITEsZj0wO2EmJmY8YS5sZW5ndGg7ZisrKWFbZl0mJmFbZl0uaGFzT3duUHJvcGVydHkoYikmJmFbZl0uaGFzT3duUHJvcGVydHkoYykmJihkW2FbZl1bYl1dPWFbZl1bY10sZT0hMCk7cmV0dXJuIGU/ZDpudWxsfWZ1bmN0aW9uIGRVKGEsYil7dmFyIGM9e307aWYoYSlmb3IodmFyIGQgaW4gYSlhLmhhc093blByb3BlcnR5KGQpJiYoY1tkXT1hW2RdKTtpZihiKXt2YXIgZT1jVShiLCJwYXJhbWV0ZXIiLCJwYXJhbWV0ZXJWYWx1ZSIpO2UmJihjPSRUKGUsYykpfXJldHVybiBjfWZ1bmN0aW9uIGVVKGEsYixjKXtyZXR1cm4gYT09PXZvaWQgMHx8YT09PWM/YjphfWZ1bmN0aW9uIGZVKGEsYixjKXtyZXR1cm4gVWMoYSxiLGMsdm9pZCAwKX1mdW5jdGlvbiBnVShhLGIpe0FbYV09Yn1mdW5jdGlvbiBoVShhLGIsYyl7dmFyIGQ9QTtiJiYoZFthXT09PXZvaWQgMHx8YyYmIWRbYV0pJiYoZFthXT1iKTtyZXR1cm4gZFthXX12YXIgaVU9e30salU9WC5WO3ZhciBaPXtzZWN1cml0eUdyb3Vwczp7fX07CgpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPVsiZ29vZ2xlIl0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPWZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuTz0iYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc1ZlbmRvclRlbXBsYXRlPSEwLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5wcmlvcml0eU92ZXJyaWRlPTAsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI1Il09ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI2Il09ITE7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9ldmVudF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2tleTpjfX0oZnVuY3Rpb24oYil7Wi5fX3JlYWRfZXZlbnRfZGF0YT1iO1ouX19yZWFkX2V2ZW50X2RhdGEuTz0icmVhZF9ldmVudF9kYXRhIjtaLl9fcmVhZF9ldmVudF9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjUiXT0hMTtaLl9fcmVhZF9ldmVudF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9ldmVudERhdGFBY2Nlc3MsZD1iLnZ0cF9rZXlQYXR0ZXJuc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKGchPW51bGwmJiF6YihnKSl0aHJvdyBlKGYse2tleTpnfSwiS2V5IG11c3QgYmUgYSBzdHJpbmcuIik7CmlmKGMhPT0iYW55Iil7dHJ5e2lmKGM9PT0ic3BlY2lmaWMiJiZnIT1udWxsJiZFZyhnLGQpKXJldHVybn1jYXRjaChoKXt0aHJvdyBlKGYse2tleTpnfSwiSW52YWxpZCBrZXkgZmlsdGVyLiIpO310aHJvdyBlKGYse2tleTpnfSwiUHJvaGliaXRlZCByZWFkIGZyb20gZXZlbnQgZGF0YS4iKTt9fSxhYTphfX0pfSgpOwoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczp7Zml4TWlzc2luZ0FwaTohIWMuZml4TWlzc2luZ0FwaX19fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzPWI7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5PPSJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHNbIjYiXT0KITF9KShmdW5jdGlvbihiKXt2YXIgYz0hIWIudnRwX2FsbG93Rml4TWlzc2luZ0phdmFTY3JpcHRBcGksZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihlLGYpe2lmKCFjJiZmJiZmLmZpeE1pc3NpbmdBcGkpdGhyb3cgZChlLHt9LCJQcm9oaWJpdGVkIG9wdGlvbjogZml4TWlzc2luZ0FwaS4iKTt9LGFhOmF9fSl9KCk7CgoKCgoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1iO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLk89ImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTphfX0pfSgpOwoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue29wdGlvbnM6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLk89ImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyI7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dXYWl0Rm9yVGFncyxkPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGUsCmYpe2lmKCFjJiZmJiZmLndhaXRGb3JUYWdzKXRocm93IGQoZSx7fSwiUHJvaGliaXRlZCBvcHRpb24gd2FpdEZvclRhZ3MuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9YjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5PPSJkZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93V2FpdEZvclRhZ3MsZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighYyYmZiYmZi53YWl0Rm9yVGFncyl0aHJvdyBkKGUse30sIlByb2hpYml0ZWQgb3B0aW9uIHdhaXRGb3JUYWdzLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2NvbnRhaW5lcl9kYXRhPVsiZ29vZ2xlIl0sWi5fX3JlYWRfY29udGFpbmVyX2RhdGE9ZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTpmdW5jdGlvbigpe3JldHVybnt9fX19LFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLk89InJlYWRfY29udGFpbmVyX2RhdGEiLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITAsWi5fX3JlYWRfY29udGFpbmVyX2RhdGEucHJpb3JpdHlPdmVycmlkZT0wLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX3JlYWRfY29udGFpbmVyX2RhdGFbIjUiXT0hMSxaLl9fcmVhZF9jb250YWluZXJfZGF0YVsiNiJdPSExOwpaLnNlY3VyaXR5R3JvdXBzLmxpc3Rlbl9kYXRhX2xheWVyPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2V2ZW50TmFtZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyPWI7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLk89Imxpc3Rlbl9kYXRhX2xheWVyIjtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19saXN0ZW5fZGF0YV9sYXllci5pc0luZnJhc3RydWN0dXJlPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNSJdPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWNjZXNzVHlwZSxkPWIudnRwX2FsbG93ZWRFdmVudHN8fFtdLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZighemIoZykpdGhyb3cgZShmLHtldmVudE5hbWU6Z30sCiJFdmVudCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7aWYoIShjPT09ImFueSJ8fGM9PT0ic3BlY2lmaWMiJiZkLmluZGV4T2YoZyk+PTApKXRocm93IGUoZix7ZXZlbnROYW1lOmd9LCJQcm9oaWJpdGVkIGxpc3RlbiBvbiBkYXRhIGxheWVyIGV2ZW50LiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2RhdGFTb3VyY2U6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPWI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuTz0iZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YVsiNSJdPSExO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihkLAplKXtpZihlIT09ImF1dG8iJiZlIT09Im1hbnVhbCImJmUhPT0iY29kZSIpdGhyb3cgYyhkLHt9LCJVbmtub3duIHVzZXIgcHJvdmlkZWQgZGF0YSBzb3VyY2UuIik7aWYoYi52dHBfbGltaXREYXRhU291cmNlcylpZihlIT09ImF1dG8ifHxiLnZ0cF9hbGxvd0F1dG9EYXRhU291cmNlcyl7aWYoZT09PSJtYW51YWwiJiYhYi52dHBfYWxsb3dNYW51YWxEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgdmlhIG1hbnVhbGx5IHNwZWNpZmllZCBDU1Mgc2VsZWN0b3JzIGlzIG5vdCBhbGxvd2VkLiIpO2lmKGU9PT0iY29kZSImJiFiLnZ0cF9hbGxvd0NvZGVEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgZnJvbSBhbiBpbi1wYWdlIHZhcmlhYmxlIGlzIG5vdCBhbGxvd2VkLiIpO31lbHNlIHRocm93IGMoZCx7fSwiQXV0b21hdGljIGRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgaXMgbm90IGFsbG93ZWQuIik7Cn0sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5nZXRfdXJsPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57Y29tcG9uZW50OmMscXVlcnlLZXk6ZH19KGZ1bmN0aW9uKGIpe1ouX19nZXRfdXJsPWI7Wi5fX2dldF91cmwuTz0iZ2V0X3VybCI7Wi5fX2dldF91cmwuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZ2V0X3VybC5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2dldF91cmwuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZ2V0X3VybFsiNSJdPSExO1ouX19nZXRfdXJsWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF91cmxQYXJ0cz09PSJhbnkiP251bGw6W107YyYmKGIudnRwX3Byb3RvY29sJiZjLnB1c2goInByb3RvY29sIiksYi52dHBfaG9zdCYmYy5wdXNoKCJob3N0IiksYi52dHBfcG9ydCYmYy5wdXNoKCJwb3J0IiksYi52dHBfcGF0aCYmYy5wdXNoKCJwYXRoIiksYi52dHBfZXh0ZW5zaW9uJiZjLnB1c2goImV4dGVuc2lvbiIpLGIudnRwX3F1ZXJ5JiYKYy5wdXNoKCJxdWVyeSIpLGIudnRwX2ZyYWdtZW50JiZjLnB1c2goImZyYWdtZW50IikpO3ZhciBkPWMmJmIudnRwX3F1ZXJpZXNBbGxvd2VkIT09ImFueSI/Yi52dHBfcXVlcnlLZXlzfHxbXTpudWxsLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnLGgpe2lmKGcpe2lmKCF6YihnKSl0aHJvdyBlKGYse30sIlVSTCBjb21wb25lbnQgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihjJiZjLmluZGV4T2YoZyk8MCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgVVJMIGNvbXBvbmVudDogIitnKTtpZihnPT09InF1ZXJ5IiYmZCl7aWYoIWgpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHF1ZXJ5IHdoZW4gcXVlcnkga2V5cyBhcmUgc3BlY2lmaWVkLiIpO2lmKCF6YihoKSl0aHJvdyBlKGYse30sIlF1ZXJ5IGtleSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGQuaW5kZXhPZihoKTwwKXRocm93IGUoZix7fSwKIlByb2hpYml0ZWQgcXVlcnkga2V5OiAiK2gpO319ZWxzZSBpZihjKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBmcm9tIGdldHRpbmcgZW50aXJlIFVSTCB3aGVuIGNvbXBvbmVudHMgYXJlIHNwZWNpZmllZC4iKTt9LGFhOmF9fSl9KCk7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9kb21fZWxlbWVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnt0eXBlOmMsdmFsdWU6ZH19KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2RvbV9lbGVtZW50cz1iO1ouX19yZWFkX2RvbV9lbGVtZW50cy5PPSJyZWFkX2RvbV9lbGVtZW50cyI7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fcmVhZF9kb21fZWxlbWVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjUiXT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93ZWRFbGVtZW50SWRzfHwibm9uZSIsZD1iLnZ0cF9hbGxvd2VkQ3NzU2VsZWN0b3JzfHwibm9uZSIsZT1iLnZ0cF9lbGVtZW50SWRzfHxbXSxmPWIudnRwX2Nzc1NlbGVjdG9yc3x8W10sZz0KYi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oaCxsLG4pe3N3aXRjaChsKXtjYXNlICJpZCI6aWYoYz09PSJub25lIilicmVhaztpZihjPT09ImFueSJ8fGUuaW5kZXhPZihuKT4tMSlyZXR1cm47YnJlYWs7Y2FzZSAiY3NzIjppZihkPT09Im5vbmUiKWJyZWFrO2lmKGQ9PT0iYW55Inx8Zi5pbmRleE9mKG4pPi0xKXJldHVybjticmVhaztkZWZhdWx0OnRocm93IGcoaCx7fSwiVW5rbm93biBzZWxlY3RvciB0eXBlICIrbCsiLiIpO310aHJvdyBnKGgse30sIlByb2hpYml0ZWQgc2VsZWN0b3IgdmFsdWUgIituKyIgZm9yIHNlbGVjdG9yIHR5cGUgIitsKyIuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9jbGlja19ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnttYXRjaENvbW1vbkJ1dHRvbnM6Yyxjc3NTZWxlY3RvcjpkfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5PPSJkZXRlY3RfY2xpY2tfZXZlbnRzIjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9jbGlja19ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsZSxmKXtpZihlIT09dm9pZCAwJiZ0eXBlb2YgZSE9PQoiYm9vbGVhbiIpdGhyb3cgYyhkLHt9LCJtYXRjaENvbW1vbkJ1dHRvbnMgbXVzdCBiZSBhIGJvb2xlYW4uIik7aWYoZiE9PXZvaWQgMCYmdHlwZW9mIGYhPT0ic3RyaW5nIil0aHJvdyBjKGQse30sImNzc1NlbGVjdG9yIG11c3QgYmUgYSBzdHJpbmcuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9zY3JvbGxfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7cmV0dXJue319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cz1iO1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cy5PPSJkZXRlY3Rfc2Nyb2xsX2V2ZW50cyI7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6YX19KX0oKTsKCgoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtyZXR1cm57fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cz1iO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMuTz0iZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LAphYTphfX0pfSgpOwpmdW5jdGlvbiBrVSgpe3ZhciBhPXt9LGI9e2RhdGFMYXllcjp0QSxjYWxsYmFjazpmdW5jdGlvbihjKXthLmhhc093blByb3BlcnR5KGMpJiZ5YihhW2NdKSYmYVtjXSgpO2RlbGV0ZSBhW2NdfSxib290c3RyYXA6MH07cmV0dXJuIGJ9CmZ1bmN0aW9uIGxVKCl7dmFyIGE9a1UoKTtvaihhKTtDaygpO2pBKCk7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO1FiKGIsWi5zZWN1cml0eUdyb3Vwcyk7dmFyIGM9eWsoemsoKSksZCxlPWM9PW51bGw/dm9pZCAwOihkPWMuY29udGV4dCk9PW51bGw/dm9pZCAwOmQuc291cmNlO0tsKGUsYz09bnVsbD92b2lkIDA6Yy5wYXJlbnQpO2UhPT0yJiZlIT09NCYmZSE9PTN8fFAoMTQyKTtyZXR1cm4gYX1mdW5jdGlvbiBtVSgpe3ZhciBhPUUoNjApO2lmKGEpZm9yKHZhciBiPWEuc3BsaXQoIi4iKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1UTDtkJiYoZS5IW2RdPSEwKX19CmZ1bmN0aW9uIG5VKCl7enAoKTtsaigpO2Zvcih2YXIgYT1kYXRhLnJlc291cmNlfHx7fSxiPWNBLGM9YS5tYWNyb3N8fFtdLGQ9MDtkPGMubGVuZ3RoO2QrKyliLm1hY3Jvcy5wdXNoKG5ldyBVeihjW2RdLGQsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBlPWEudGFnc3x8W10sZj0wO2Y8ZS5sZW5ndGg7ZisrKWIudGFncy5wdXNoKG5ldyBZeihlW2ZdLGYsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBnPWEucHJlZGljYXRlc3x8W10saD0wO2g8Zy5sZW5ndGg7aCsrKWIucHJlZGljYXRlcy5wdXNoKG5ldyBWeihnW2hdLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgbD1hLnJ1bGVzfHxbXSxuPTA7bjxsLmxlbmd0aDtuKyspYi5ydWxlcy5wdXNoKG5ldyBXeihsW25dLG4pKTtRej1aO3ZhciBwPWRhdGEucGVybWlzc2lvbnN8fHt9LHE9WjtkZz1uZXcgZ2coRSg1KSxwLHEpO3ZhciByPWRhdGEuc2FuZGJveGVkX3NjcmlwdHMsdD1kYXRhLnNlY3VyaXR5X2dyb3Vwcyx1PWRhdGEucnVudGltZXx8CltdLHY9ZGF0YS5ydW50aW1lX2xpbmVzO0pGPW5ldyBwZjtWVCgpO1B6PUlGKCk7dmFyIHg9SkYseT1VVCgpLHo9bmV3IExkKCJyZXF1aXJlIix5KTt6LlphKCk7eC5ILkguc2V0KCJyZXF1aXJlIix6KTtkYi5zZXQoInJlcXVpcmUiLHopO2Zvcih2YXIgQz0wO0M8dS5sZW5ndGg7QysrKXt2YXIgRD11W0NdO2lmKCFBcnJheS5pc0FycmF5KEQpfHxELmxlbmd0aDwzKXtpZihELmxlbmd0aD09PTApY29udGludWU7YnJlYWt9diYmdltDXSYmdltDXS5sZW5ndGgmJlBmKEQsdltDXSk7dHJ5e0pGLmV4ZWN1dGUoRCl9Y2F0Y2gob1Upe319V1Qocik7WFQodCk7dmFyIEk9bFUoKTtpRigpO3ZtLmJpbmQoKTtpZighRGopZm9yKHZhciBHPUJtKCk/ZXAoTGYoNSkpOmVwKExmKDQpKSxOPW0oUm8pLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlLGVhPVcsamE9R1tXXT8iZ3JhbnRlZCI6ImRlbmllZCI7dGwoKS5pbXBsaWNpdChlYSxqYSl9aEUuYmluZCgpO1RCKCk7Ck9CKCk7Zm4uTiYmKGd6KCksZnooQUYpLGdBKCksY0I9bmV3IGJCLGZ6KGl6KSxPQygpLERGfHwoREY9bmV3IEJGKSxmQnx8KGZCPW5ldyBlQiksRkY9bmV3IEVGKTtpZihmbi5LKXtERS5iaW5kKCk7bUMuYmluZCgpO3dFLmJpbmQoKTt2YXIgZmE9QWsoKTtpZihmYSl7dmFyIHNhO2E6e3ZhciBkYSxtYT0oZGE9ZmEuc2NyaXB0RWxlbWVudCk9PW51bGw/dm9pZCAwOmRhLnNyYztpZihtYSl7dmFyIFBhO3RyeXt2YXIgRmE7UGE9KEZhPXJkKCkpPT1udWxsP3ZvaWQgMDpGYS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpfWNhdGNoKG9VKXt9aWYoUGEpe2Zvcih2YXIgcWE9LTEsaWI9bShQYSksWGI9aWIubmV4dCgpOyFYYi5kb25lO1hiPWliLm5leHQoKSl7dmFyIExjPVhiLnZhbHVlO2lmKExjLmluaXRpYXRvclR5cGU9PT0KInNjcmlwdCImJihxYSs9MSxMYy5uYW1lLnJlcGxhY2UoTkUsIiIpPT09bWEucmVwbGFjZShORSwiIikpKXtzYT1xYTticmVhayBhfX1QKDE0Nil9ZWxzZSBQKDE0NSl9c2E9dm9pZCAwfXZhciBRZD1zYTtRZCE9PXZvaWQgMCYmKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkJiZVbSgicnRnIixTdHJpbmcoZmEuY2Fub25pY2FsQ29udGFpbmVySWQpKSxVbSgic2xvIixTdHJpbmcoUWQpKSxVbSgiaGxvIixmYS5odG1sTG9hZE9yZGVyfHwiLTEiKSxVbSgibHN0IixTdHJpbmcoZmEubG9hZFNjcmlwdFR5cGV8fCIwIikpKX1lbHNlIFAoMTQ0KTt2YXIgWWM7dmFyIERkPXhrKCk7aWYoRGQpaWYoRGQuY2Fub25pY2FsQ29udGFpbmVySWQpWWM9RGQuY2Fub25pY2FsQ29udGFpbmVySWQ7ZWxzZXt2YXIgamYsdmg9RGQuc2NyaXB0Q29udGFpbmVySWR8fCgoamY9RGQuZGVzdGluYXRpb25zKT09bnVsbD92b2lkIDA6amZbMF0pO1ljPXZoPyJfIit2aDp2b2lkIDB9ZWxzZSBZYz12b2lkIDA7dmFyIEpFPQpZYztKRSYmVW0oInBjaWQiLEpFKTtVbSgiYnQiLFN0cmluZyhJZig0Nyk/MjpJZig1MCk/MTowKSk7VW0oImN0IixTdHJpbmcoSWYoNDcpPzA6SWYoNTApPzE6MykpO0FFLmJpbmQoKTtmb3IodmFyIFdyPVtdLFhyPVtdLEtFPW0oT2JqZWN0LmtleXMoR0UpKSxZcj1LRS5uZXh0KCk7IVlyLmRvbmU7WXI9S0UubmV4dCgpKXt2YXIgcm09WXIudmFsdWU7aWYod2luZG93LmlzU2VjdXJlQ29udGV4dHx8IUlFW3JtXSl7dmFyIExFPUdFW3JtXSgpO2lmKHliKExFKSl7dmFyIE1FPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKExFKTtUYihNRSwieyBbbmF0aXZlIGNvZGVdIH0iKXx8VGIoTUUsIntcbiAgICBbbmF0aXZlIGNvZGVdXG59Iil8fFhyLnB1c2gocm0pfWVsc2UgV3IucHVzaChybSl9fVdyLmxlbmd0aD4wJiZVbSgianNtIixXci5qb2luKCJ+IikpO1hyLmxlbmd0aD4wJiZVbSgianNwIixYci5qb2luKCJ+IikpO0V5fHwoRXk9bmV3IER5KX1oRigpO2ltKDEpO0VHKCk7cmV0dXJuIEl9CmZ1bmN0aW9uIHVtKCl7dHJ5e2lmKCFoaygpJiYoSWYoNDcpfHwhTmsoKSkpe0lmKDY0KSYmd2ouSC5LLmFkZCgxMTg1MTc5MTcpO3pqKCk7Zm4uSCYmc3ooKTtXZls1XT0hMDt2YXIgYT1raigiZGVidWdHcm91cElkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoTWF0aC5mbG9vcihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUipNYXRoLnJhbmRvbSgpKSl9KTtTbChhKTtrdCgpO3pGKCk7RnQoKTtQQigpO2lmKERrKCkpe0UoNSk7REcoKTtpQigpLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zKHZrKCkpO31lbHNle0ZNLlIoKTtuVSgpLmJvb3RzdHJhcD1OYigpO0lmKDUxKSYmcEUoKTsKZm4uSCYmdHooKTt0eXBlb2YgQS5uYW1lPT09InN0cmluZyImJlNiKEEubmFtZSwid2ViLXBpeGVsLXNhbmRib3gtQ1VTVE9NIikmJnNkKCk/WlQoImRNRGcwWXoiKTpBLlNob3BpZnkmJihaVCgiZE4yWmtNaiIpLHNkKCkmJlpUKCJkTlRVMFl6IikpO21VKCl9fX1jYXRjaChiKXtpbSg1KSxoeigpfX0KKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtuPUIuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS10YWctYXNzaXN0YW50LXByZXNlbnQiKTtnbChuKSYmKGw9aC54bSl9ZnVuY3Rpb24gYygpe2wmJktjP2cobCk6YSgpfWlmKCFBW0UoMzcpXSl7dmFyIGQ9ITE7aWYoQi5yZWZlcnJlcil7dmFyIGU9UmooQi5yZWZlcnJlcik7ZD1OaihlLCJob3N0Iik9PT1FKDM4KX1pZighZCl7dmFyIGY9Y3EoRSgzOSkpO2Q9ISghZi5sZW5ndGh8fCFmWzBdLmxlbmd0aCl9ZCYmKEFbRSgzNyldPSEwLFVjKEUoNDApKSl9dmFyIGc9ZnVuY3Rpb24odSl7dmFyIHY9IkdUTSIseD0iR1RNIjtJZig0NSkmJih2PSJPR1QiLHg9IkdUQUciKTt2YXIgeT1FKDIzKSx6PUFbeV07enx8KHo9W10sQVt5XT16LFVjKCJodHRwczovLyIrRSgzKSsiL2RlYnVnL2Jvb3RzdHJhcD9pZD0iK0UoNSkrIiZzcmM9Iit4KyImY29uZD0iK1N0cmluZyh1KSsiJmd0bT0iK2R1KCkpKTt2YXIgQz17bWVzc2FnZVR5cGU6IkNPTlRBSU5FUl9TVEFSVElORyIsCmRhdGE6e3NjcmlwdFNvdXJjZTpLYyxjb250YWluZXJQcm9kdWN0OnYsZGVidWc6ITEsaWQ6RSg1KSx0YXJnZXRSZWY6e2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOnNrKCksY2Fub25pY2FsSWQ6RSg2KX0sYWxpYXNlczp3aygpLGRlc3RpbmF0aW9uczp0aygpfX0sRD1DLmRhdGE7RC5yZXN1bWU9ZnVuY3Rpb24oKXthKCl9O0QucmVzdW1lV2l0aE1lbW9zPWZ1bmN0aW9uKCl7c2woMSk7YSgpfTtJZigyKSYmKEMuZGF0YS5pbml0aWFsUHVibGlzaD0hMCk7ei5wdXNoKEMpfSxoPXtHcToxLFBtOjIsb246MyxqbDo0LHhtOjV9O2hbaC5HcV09IkdUTV9ERUJVR19MRUdBQ1lfUEFSQU0iO2hbaC5QbV09IkdUTV9ERUJVR19QQVJBTSI7aFtoLm9uXT0iUkVGRVJSRVIiO2hbaC5qbF09IkNPT0tJRSI7aFtoLnhtXT0iRVhURU5TSU9OX1BBUkFNIjt2YXIgbD12b2lkIDAsbj12b2lkIDAscD1MaihBLmxvY2F0aW9uLCJxdWVyeSIsITEsdm9pZCAwLCJndG1fZGVidWciKTtnbChwKSYmKGw9aC5QbSk7CmlmKCFsJiZCLnJlZmVycmVyKXt2YXIgcT1SaihCLnJlZmVycmVyKTtOaihxLCJob3N0Iik9PT1FKDI0KSYmKGw9aC5vbil9aWYoIWwpe3ZhciByPWNxKCJfX1RBR19BU1NJU1RBTlQiKTtyLmxlbmd0aCYmclswXS5sZW5ndGgmJihsPWguamwpfWx8fGIoKTtpZighbCYmZmwobikpe3ZhciB0PSExOyRjKEIsIlRBRGVidWdTaWduYWwiLGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LCExKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sMjAwKX1lbHNlIGMoKX0pKGZ1bmN0aW9uKCl7IUlmKDQ3KXx8dG0oKVsiMCJdP3VtKCk6eG0oKX0pOwoKfSkoKQoK"}},"time_used":135,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":37,"receive":46,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/planCalculator","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.189Z","timestamp":1785143154189,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"POST /planCalculator HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8\r\nX-Requested-With: XMLHttpRequest\r\nContent-Length: 78\r\nOrigin: https://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"POST","post_data":{"size":78,"data":"planId=6\u0026_token=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU\u0026investAmount=15000.00"}},"response":{"raw":"HTTP/3 200 \r\nx-powered-by: PHP/8.3.31\r\ncache-control: no-cache, private\r\ncontent-type: application/json\r\nset-cookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; expires=Mon, 27 Jul 2026 11:05:54 GMT; Max-Age=7200; path=/; secure; samesite=lax\nlaravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos; expires=Mon, 27 Jul 2026 11:05:54 GMT; Max-Age=7200; path=/; secure; httponly; samesite=lax\r\ncontent-length: 135\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"PHP:8.3.31","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":131,"size_decoded":750,"mime_type":"application/json","magic":"JSON text data","md5":"7022d36e6a3325c21949dcfbd30fccdb","sha1":"28ff5a044db5a1d0292304e4c4a00a6d53ada475","sha256":"ec326daddad832e5292304b980f2e6d6fd833da9c919a82fe578d0ae7a40d7ba","sha512":"8e36a2ea7d8814cb10eee6378486697bea465582afa21df597fe229e3f94e1dc12802ef32ce0d03ed1197e142236620968ab58427e58996f45aaa71b67944517","ssdeep":"","tlshash":"9ac02bac304fcec1663107c177d62e19033960b12c647585a8e0cb500cd5560d41e804","first_seen":"2025-12-19T04:10:18.941544Z","last_seen":"2026-07-27T09:07:02.812526Z","times_seen":5,"resource_available":false,"data":"eyJkZXNjcmlwdGlvbiI6IlJldHVybiAkMzAwLjAwIFVTRCBFdmVyeSBEYXkgRm9yIDE4MCBEYXkuIFRvdGFsIDU0MDAwIFVTRCtDYXBpdGFsIiwidG90YWxNb25leSI6NjkwMDAsIm5ldFByb2ZpdCI6IiQ1NCwwMDAuMDAgVVNEIn0="}},"time_used":97,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":97,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/logo_icon/logo.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.397Z","timestamp":1785143154397,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/logo_icon/logo.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos; _ga_SV56JW0DKX=GS2.1.s1785143154$o1$g0$t1785143154$j60$l0$h0; _ga=GA1.1.787021117.1785143154\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 09:05:54 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 06:10:27 GMT\r\netag: \"ee2c-67b42453-cd43067001bf7efa;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 60972\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":60972,"size_decoded":61369,"mime_type":"image/png","magic":"PNG image data, 919 x 271, 8-bit/color RGBA, non-interlaced","md5":"2167c4e6411830e15b9c23f99c8144f8","sha1":"dc5c144188f52d3e941ba8114f44610fd58990ea","sha256":"52e3f9f925751eb28308925e17429de451e42e7e3235fc2b1033713c1c0624eb","sha512":"a22501c7ecaed9673610c84b48da79cebd9beb5dd46505973564c7d9ff4df90cf0681b801a0b6144ee16e780f72f07cfd4c465539367be838fe88f123df3362d","ssdeep":"1536:R44JeLKTUQFjFla1FgMSsJmKdPVJL638LN:R4L+UKjfaIMnmmdJLb","tlshash":"47530229e138d813b93b70702a69c7431f9bd5fc2fe2f064c486847d5adaf2565848ea","first_seen":"2025-12-19T04:10:19.00391Z","last_seen":"2026-07-27T09:07:02.794118Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":28,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":27,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/bubble-widget.css","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.401Z","timestamp":1785143155401,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/css/bubble-widget.css HTTP/1.1\r\nHost: embed.tawk.to\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\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: text/css\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"ce7c2f1d3256f84d0760bd9f400963fc\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c3149850883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":23063,"size_decoded":5843,"mime_type":"text/css","magic":"ASCII text, with very long lines (23017)","md5":"ce7c2f1d3256f84d0760bd9f400963fc","sha1":"1375bb0f0223b374f9805cb441970de2cb004591","sha256":"ff92cac16c5ea67e7df480d38f6fd806385a85e69d13da5317ceb3acc469af62","sha512":"3f33f2cf811797404a3bdd12ab6af60b5356bdd577c82e8a97ad7d4cf81dcd1b24bf87c1256e175a6ae6f44d0d2f9c9daf8c29316bc60b370288f98e78e5716e","ssdeep":"384:Wgfco+ziLwH0Lg26/tFTiBB6TXngxYe4fbFU3xi7Ur3K:B+ziLwH0Lg261F2BBCXrsr3K","tlshash":"efa2dbf5e47b10d87363c02293d4f2685499f370ca8adea1f52b661c49e52763682efc","first_seen":"2025-04-29T09:54:46.086393Z","last_seen":"2026-08-03T12:50:03.429382Z","times_seen":38359,"resource_available":false,"data":"LnRhd2stdG9vbHRpcDpob3ZlciAudGF3ay10b29sdGlwLWhvdmVye29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGxpbmVhciAuNXN9LnRhd2stdG9vbHRpcCAudGF3ay10b29sdGlwLWhvdmVye3Bvc2l0aW9uOmZpeGVkO21hcmdpbi10b3A6OHB4O3BhZGRpbmc6NHB4IDhweDtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOiMxMjEyMTI7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6Ljc1cmVtO3JpZ2h0OjA7bGVmdDphdXRvO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgMHMgbGluZWFyO3otaW5kZXg6Mn0udGF3ay10b29sdGlwIC50YXdrLXRvb2x0aXAtaG92ZXIgLnRhd2stdG9vbHRpcC1hcnJvd3t0b3A6LTE2cHg7ZGlzcGxheTpibG9jaztsZWZ0OjUwJTtib3JkZXI6OHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b20tY29sb3I6IzEyMTIxMjtwb3NpdGlvbjphYnNvbHV0ZX0udGF3ay10b29sdGlwIC50YXdrLXRvb2x0aXAtaG92ZXIuYm90dG9tIC50YXdrLXRvb2x0aXAtYXJyb3d7Ym9yZGVyLWNvbG9yOiMxMjEyMTIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym90dG9tOi0xNnB4O3RvcDphdXRvfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6dGF3ay1mb250LWljb247c3JjOnVybCgvZm9udHMvdGF3ay1mb250LWljb24tMy53b2ZmPzU1NzU1NzI4KSBmb3JtYXQoIndvZmYiKSx1cmwoL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMudHRmPzU1NzU1NzI4KSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC9mb250cy90YXdrLWZvbnQtaWNvbi0zLnN2Zz81NTc1NTcyOCN0YXdrLWZvbnQtaWNvbikgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC1kaXNwbGF5OnN3YXB9LnRhd2staWNvbntmb250LWZhbWlseTp0YXdrLWZvbnQtaWNvbjtmb250LXNpemU6MS4xMjVyZW07Y29sb3I6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXN0eWxlOm5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MCAuMmVtO3dpZHRoOjFlbTt0ZXh0LWFsaWduOmNlbnRlcn1ib2R5LnRhd2stcnRsIC50YXdrLWljb257dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnRhd2staWNvbi14c21hbGx7Zm9udC1zaXplOi43NXJlbX0udGF3ay1pY29uLXNtYWxse2ZvbnQtc2l6ZTouODEycmVtfS50YXdrLWljb24tbWVkaXVte2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWljb24tbGFyZ2V7Zm9udC1zaXplOjEuMjVyZW19LnRhd2staWNvbi14bGFyZ2V7Zm9udC1zaXplOjEuNXJlbX0udGF3ay1pY29uLXh4bGFyZ2V7Zm9udC1zaXplOjJyZW19LnRhd2staWNvbi1sYXllcnMxOmJlZm9yZXtjb250ZW50OiJcZTkwMCJ9LnRhd2staWNvbi1iYW46YmVmb3Jle2NvbnRlbnQ6IlxlOTAxIn0udGF3ay1pY29uLWNoZWNrLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDIifS50YXdrLWljb24tY2xvc2UtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkwMyJ9LnRhd2staWNvbi1oZWxwLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU5MDQifS50YXdrLWljb24tZGV0YWlsczpiZWZvcmV7Y29udGVudDoiXGU5MDUifS50YXdrLWljb24td2FybmluZy10cmlhbmdsZTpiZWZvcmV7Y29udGVudDoiXGU5MDYifS50YXdrLWljb24tc2F2ZTpiZWZvcmV7Y29udGVudDoiXGU5MDcifS50YXdrLWljb24tdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOTA4In0udGF3ay1pY29uLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOTA5In0udGF3ay1pY29uLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZTkwYSJ9LnRhd2staWNvbi1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU5MGIifS50YXdrLWljb24teDpiZWZvcmV7Y29udGVudDoiXGU5MGMifS50YXdrLWljb24tYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5MGQifS50YXdrLWljb24tYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTBlIn0udGF3ay1pY29uLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZTkwZiJ9LnRhd2staWNvbi1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZTkxMCJ9LnRhd2staWNvbi1tb3JlLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTkxMSJ9LnRhd2staWNvbi1tZW51OmJlZm9yZXtjb250ZW50OiJcZTkxMiJ9LnRhd2staWNvbi1ob21lOmJlZm9yZXtjb250ZW50OiJcZTkxMyJ9LnRhd2staWNvbi1pbmJveDpiZWZvcmV7Y29udGVudDoiXGU5MTQifS50YXdrLWljb24tY29udGFjdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTE1In0udGF3ay1pY29uLWFkZE9uczpiZWZvcmV7Y29udGVudDoiXGU5MTYifS50YXdrLWljb24ta25vd2xlZGdlLWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTE3In0udGF3ay1pY29uLXNldHRpbmdzOmJlZm9yZXtjb250ZW50OiJcZTkxOCJ9LnRhd2staWNvbi1tb25pdG9yaW5nOmJlZm9yZXtjb250ZW50OiJcZTkxOSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZTpiZWZvcmV7Y29udGVudDoiXGU5MWEifS50YXdrLWljb24tc2VhcmNoOmJlZm9yZXtjb250ZW50OiJcZTkxYiJ9LnRhd2staWNvbi1ncm91cC1pbmNvbWluZy1jaGF0czpiZWZvcmV7Y29udGVudDoiXGU5MWMifS50YXdrLWljb24tYXNzaWduZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTFkIn0udGF3ay1pY29uLWZpbHRlci1saW5lOmJlZm9yZXtjb250ZW50OiJcZTkxZSJ9LnRhd2staWNvbi1maWx0ZXItZnVubmVsOmJlZm9yZXtjb250ZW50OiJcZTkxZiJ9LnRhd2staWNvbi1ub3RpZmljYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTIwIn0udGF3ay1pY29uLWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTkyMSJ9LnRhd2staWNvbi1jaGF0LWJ1YmJsZS13LWRvdHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTIyIn0udGF3ay1pY29uLWNhbGw6YmVmb3Jle2NvbnRlbnQ6IlxlOTIzIn0udGF3ay1pY29uLWVudmVsb3BlOmJlZm9yZXtjb250ZW50OiJcZTkyNCJ9LnRhd2staWNvbi1kcmFmdDpiZWZvcmV7Y29udGVudDoiXGU5MjUifS50YXdrLWljb24tc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5MjYifS50YXdrLWljb24tc2VnbWVudDpiZWZvcmV7Y29udGVudDoiXGU5MjcifS50YXdrLWljb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZTkyOCJ9LnRhd2staWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTI5In0udGF3ay1pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTJhIn0udGF3ay1pY29uLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTJiIn0udGF3ay1pY29uLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGU5MmMifS50YXdrLWljb24tcG9wb3V0OmJlZm9yZXtjb250ZW50OiJcZTkyZCJ9LnRhd2staWNvbi1tZXJnZS1pbjpiZWZvcmV7Y29udGVudDoiXGU5MmUifS50YXdrLWljb24taW1wb3J0OmJlZm9yZXtjb250ZW50OiJcZTkyZiJ9LnRhd2staWNvbi1leHBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTMwIn0udGF3ay1pY29uLXRodW1icy11cDpiZWZvcmV7Y29udGVudDoiXGU5MzEifS50YXdrLWljb24tdGh1bWJzLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTMyIn0udGF3ay1pY29uLXNvcnQtYXNjZW5kaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzMyJ9LnRhd2staWNvbi1zb3J0LWRlc2NlbmRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlOTM0In0udGF3ay1pY29uLWNvbHVtbi1zZXR0aW5nczpiZWZvcmV7Y29udGVudDoiXGU5MzUifS50YXdrLWljb24tY2FsbC1pbmdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNiJ9LnRhd2staWNvbi1jYWxsLW91dGdvaW5nOmJlZm9yZXtjb250ZW50OiJcZTkzNyJ9LnRhd2staWNvbi11c2VyLWRldGFpbHM6YmVmb3Jle2NvbnRlbnQ6IlxlOTM4In0udGF3ay1pY29uLXNob3J0Y3V0OmJlZm9yZXtjb250ZW50OiJcZTkzOSJ9LnRhd2staWNvbi1oaXN0b3J5OmJlZm9yZXtjb250ZW50OiJcZTkzYSJ9LnRhd2staWNvbi1zaG9wcGluZy1iYWc6YmVmb3Jle2NvbnRlbnQ6IlxlOTNiIn0udGF3ay1pY29uLXNob3BpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlOTNjIn0udGF3ay1pY29uLWdyb3VwLWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTNkIn0udGF3ay1pY29uLXRhZzpiZWZvcmV7Y29udGVudDoiXGU5M2UifS50YXdrLWljb24tdXNlcjpiZWZvcmV7Y29udGVudDoiXGU5M2YifS50YXdrLWljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQwIn0udGF3ay1pY29uLW5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTQxIn0udGF3ay1pY29uLWVkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQyIn0udGF3ay1pY29uLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZTk0MyJ9LnRhd2staWNvbi1vcmdhbml6YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ0In0udGF3ay1pY29uLXRyYW5zY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTQ1In0udGF3ay1pY29uLXByaW50OmJlZm9yZXtjb250ZW50OiJcZTk0NiJ9LnRhd2staWNvbi1leWUtaGlkZTpiZWZvcmV7Y29udGVudDoiXGU5NDcifS50YXdrLWljb24td2hpc3BlcjpiZWZvcmV7Y29udGVudDoiXGU5NDgifS50YXdrLWljb24tam9pbi1jb252ZXJzYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTQ5In0udGF3ay1pY29uLW1lc3NhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTRhIn0udGF3ay1pY29uLXRleHQtZm9ybWF0dGluZy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk0YiJ9LnRhd2staWNvbi10ZXh0LWZvcm1hdHRpbmctc2hvdzpiZWZvcmV7Y29udGVudDoiXGU5NGMifS50YXdrLWljb24tZW1vamk6YmVmb3Jle2NvbnRlbnQ6IlxlOTRkIn0udGF3ay1pY29uLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTRlIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb246YmVmb3Jle2NvbnRlbnQ6IlxlOTRmIn0udGF3ay1pY29uLXZpZGVvLWNhbGwtb2ZmOmJlZm9yZXtjb250ZW50OiJcZTk1MCJ9LnRhd2staWNvbi1zaGFyZS1zY3JlZW46YmVmb3Jle2NvbnRlbnQ6IlxlOTUxIn0udGF3ay1pY29uLXNlbmQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUyIn0udGF3ay1pY29uLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTUzIn0udGF3ay1pY29uLWl0YWxpY3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTU0In0udGF3ay1pY29uLXVuZGVybGluZTpiZWZvcmV7Y29udGVudDoiXGU5NTUifS50YXdrLWljb24tY2FwaXRhbGl6ZTpiZWZvcmV7Y29udGVudDoiXGU5NTYifS50YXdrLWljb24tZXllOmJlZm9yZXtjb250ZW50OiJcZTk1NyJ9LnRhd2staWNvbi1zdHJpa2V0aHJvdWdoOmJlZm9yZXtjb250ZW50OiJcZTk1OCJ9LnRhd2staWNvbi1idWxsZXQtcG9pbnRzOmJlZm9yZXtjb250ZW50OiJcZTk1OSJ9LnRhd2staWNvbi1saW5rOmJlZm9yZXtjb250ZW50OiJcZTk1YSJ9LnRhd2staWNvbi1hcmNoaXZlOmJlZm9yZXtjb250ZW50OiJcZTk1YiJ9LnRhd2staWNvbi11bnJlYWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVjIn0udGF3ay1pY29uLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZTk1ZCJ9LnRhd2staWNvbi1tb3ZlLXRvOmJlZm9yZXtjb250ZW50OiJcZTk1ZSJ9LnRhd2staWNvbi1mb3J3YXJkLWFzLWF0dGFjaG1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTVmIn0udGF3ay1pY29uLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlOTYwIn0udGF3ay1pY29uLXVubG9jazpiZWZvcmV7Y29udGVudDoiXGU5NjEifS50YXdrLWljb24tcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOTYyIn0udGF3ay1pY29uLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGU5NjMifS50YXdrLWljb24tdGV4dC1hcmVhOmJlZm9yZXtjb250ZW50OiJcZTk2NCJ9LnRhd2staWNvbi1zaHVmZmxlOmJlZm9yZXtjb250ZW50OiJcZTk2NSJ9LnRhd2staWNvbi1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOTY2In0udGF3ay1pY29uLWFkZC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTY3In0udGF3ay1pY29uLWNoYW5nZS1hc3NpZ25lZTpiZWZvcmV7Y29udGVudDoiXGU5NjgifS50YXdrLWljb24tZmxhZzpiZWZvcmV7Y29udGVudDoiXGU5NjkifS50YXdrLWljb24td2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZTk2YSJ9LnRhd2staWNvbi1yZWZyZXNoOmJlZm9yZXtjb250ZW50OiJcZTk2YiJ9LnRhd2staWNvbi1yZXBvcnRzOmJlZm9yZXtjb250ZW50OiJcZTk2YyJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTk2ZCJ9LnRhd2staWNvbi1kb3VibGUtY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU5NmUifS50YXdrLWljb24tZG91YmxlLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOTZmIn0udGF3ay1pY29uLWRvdWJsZS1jaGV2cm9uLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlOTcwIn0udGF3ay1pY29uLWxvY2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZTk3MSJ9LnRhd2staWNvbi1hZGQtbm90ZTpiZWZvcmV7Y29udGVudDoiXGU5NzIifS50YXdrLWljb24tYWdlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTczIn0udGF3ay1pY29uLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOTc0In0udGF3ay1pY29uLWN1c3RvbS1maWVsZDpiZWZvcmV7Y29udGVudDoiXGU5NzUifS50YXdrLWljb24tYnJvd3NlcjpiZWZvcmV7Y29udGVudDoiXGU5NzYifS50YXdrLWljb24tbWluZTpiZWZvcmV7Y29udGVudDoiXGU5NzcifS50YXdrLWljb24tYWxsOmJlZm9yZXtjb250ZW50OiJcZTk3OCJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1oaWRlOmJlZm9yZXtjb250ZW50OiJcZTk3OSJ9LnRhd2staWNvbi1jdXN0b20tdGFicy1zaG93OmJlZm9yZXtjb250ZW50OiJcZTk3YSJ9LnRhd2staWNvbi1tZWdhcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxlOTdiIn0udGF3ay1pY29uLW5hdmlnYXRlOmJlZm9yZXtjb250ZW50OiJcZTk3YyJ9LnRhd2staWNvbi1jYWxlbmRhcjpiZWZvcmV7Y29udGVudDoiXGU5N2QifS50YXdrLWljb24tY2FsZW5kYXItc2VlbjpiZWZvcmV7Y29udGVudDoiXGU5N2UifS50YXdrLWljb24td2ViLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOTdmIn0udGF3ay1pY29uLWlwLWFkZHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxlOTgwIn0udGF3ay1pY29uLWNvbXB1dGVyOmJlZm9yZXtjb250ZW50OiJcZTk4MSJ9LnRhd2staWNvbi1kYXRhYmFzZTpiZWZvcmV7Y29udGVudDoiXGU5ODIifS50YXdrLWljb24td2ViLXBhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOTgzIn0udGF3ay1pY29uLXdlYi12aWV3OmJlZm9yZXtjb250ZW50OiJcZTk4NCJ9LnRhd2staWNvbi13ZWItdGltZS1zcGVudDpiZWZvcmV7Y29udGVudDoiXGU5ODUifS50YXdrLWljb24tcmVzdG9yZTpiZWZvcmV7Y29udGVudDoiXGU5ODYifS50YXdrLWljb24tY29weTpiZWZvcmV7Y29udGVudDoiXGU5ODcifS50YXdrLWljb24tZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOTg4In0udGF3ay1pY29uLXJlc2l6ZS1sZWZ0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTk4OSJ9LnRhd2staWNvbi1yZXNpemUtdXAtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5OGEifS50YXdrLWljb24tbWF4aW1pc2U6YmVmb3Jle2NvbnRlbnQ6IlxlOThiIn0udGF3ay1pY29uLW1pbmltaXNlOmJlZm9yZXtjb250ZW50OiJcZTk4YyJ9LnRhd2staWNvbi1wdXJnZTpiZWZvcmV7Y29udGVudDoiXGU5OGQifS50YXdrLWljb24tY2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZTk4ZSJ9LnRhd2staWNvbi12aXNpdG9yOmJlZm9yZXtjb250ZW50OiJcZTk4ZiJ9LnRhd2staWNvbi1uZXctaGlyZTpiZWZvcmV7Y29udGVudDoiXGU5OTAifS50YXdrLWljb24tcGluOmJlZm9yZXtjb250ZW50OiJcZTk5MSJ9LnRhd2staWNvbi1sZWFkZXJib2FyZDpiZWZvcmV7Y29udGVudDoiXGU5OTIifS50YXdrLWljb24tc3RhcjpiZWZvcmV7Y29udGVudDoiXGU5OTMifS50YXdrLWljb24tdmlkZW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTQifS50YXdrLWljb24tYXVkaW8tZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTUifS50YXdrLWljb24tY3N2LWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTk2In0udGF3ay1pY29uLXBkZi1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5NyJ9LnRhd2staWNvbi1kb2MtZmlsZTpiZWZvcmV7Y29udGVudDoiXGU5OTgifS50YXdrLWljb24tdGV4dC1maWxlOmJlZm9yZXtjb250ZW50OiJcZTk5OSJ9LnRhd2staWNvbi1nZW5lcmljLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlhIn0udGF3ay1pY29uLXNwbGl0LXZpZXctc2luZ2xlOmJlZm9yZXtjb250ZW50OiJcZTk5YiJ9LnRhd2staWNvbi1zcGxpdC12aWV3LWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGU5OWMifS50YXdrLWljb24tc3BsaXQtdmlldy10cmlwbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOTlkIn0udGF3ay1pY29uLXNwbGl0LXZpZXctcXVhZHJ1cGxlOmJlZm9yZXtjb250ZW50OiJcZTk5ZSJ9LnRhd2staWNvbi10aW1lbGluZTpiZWZvcmV7Y29udGVudDoiXGU5OWYifS50YXdrLWljb24tY29udGFjdC1hdHRyaWJ1dGVzOmJlZm9yZXtjb250ZW50OiJcZTlhMCJ9LnRhd2staWNvbi1jb252ZXJ0ZWQtdGlja2V0OmJlZm9yZXtjb250ZW50OiJcZTlhMSJ9LnRhd2staWNvbi10cmVuZC11cDpiZWZvcmV7Y29udGVudDoiXGU5YTIifS50YXdrLWljb24tdHJlbmQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5YTMifS50YXdrLWljb24tb25nb2luZy1jYWxsOmJlZm9yZXtjb250ZW50OiJcZTlhNCJ9LnRhd2staWNvbi1jYXRlZ29yeTpiZWZvcmV7Y29udGVudDoiXGU5YTUifS50YXdrLWljb24tYXJ0aWNsZTpiZWZvcmV7Y29udGVudDoiXGU5YTYifS50YXdrLWljb24tZHJhZy1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE3In0udGF3ay1pY29uLWNoaWxkLXRyZWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWE4In0udGF3ay1pY29uLXRyYW5zbGF0ZTpiZWZvcmV7Y29udGVudDoiXGU5YTkifS50YXdrLWljb24tYnVsYjpiZWZvcmV7Y29udGVudDoiXGU5YWEifS50YXdrLWljb24tbWVyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWFiIn0udGF3ay1pY29uLXRodW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWFjIn0udGF3ay1pY29uLW92ZXJ2aWV3OmJlZm9yZXtjb250ZW50OiJcZTlhZCJ9LnRhd2staWNvbi11c2VyLW1hbmFnZW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWFlIn0udGF3ay1pY29uLWFnZW50LWFsZXJ0OmJlZm9yZXtjb250ZW50OiJcZTlhZiJ9LnRhd2staWNvbi1wcm9wZXJ0eS1tZW1iZXJzOmJlZm9yZXtjb250ZW50OiJcZTliMCJ9LnRhd2staWNvbi1kZXBhcnRtZW50czpiZWZvcmV7Y29udGVudDoiXGU5YjEifS50YXdrLWljb24tdGFiOmJlZm9yZXtjb250ZW50OiJcZTliMiJ9LnRhd2staWNvbi1tYWlsLW5vdGlmaWNhdGlvbjpiZWZvcmV7Y29udGVudDoiXGU5YjMifS50YXdrLWljb24taW4tY2hhdC1wYXltZW50OmJlZm9yZXtjb250ZW50OiJcZTliNCJ9LnRhd2staWNvbi1oaXJlLWxpdmUtYWdlbnRzOmJlZm9yZXtjb250ZW50OiJcZTliNSJ9LnRhd2staWNvbi1oaXJlLXZpcnR1YWwtYXNzaXN0YW50OmJlZm9yZXtjb250ZW50OiJcZTliNiJ9LnRhd2staWNvbi1wYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI3In0udGF3ay1pY29uLXNob3BwaW5nLWNhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWI4In0udGF3ay1pY29uLWNoYW5uZWxzOmJlZm9yZXtjb250ZW50OiJcZTliOSJ9LnRhd2staWNvbi1wYWdlOmJlZm9yZXtjb250ZW50OiJcZTliYSJ9LnRhd2staWNvbi1wYXltZW50LW1ldGhvZDpiZWZvcmV7Y29udGVudDoiXGU5YmIifS50YXdrLWljb24tYmlsbC1vdmVydmlldzpiZWZvcmV7Y29udGVudDoiXGU5YmMifS50YXdrLWljb24tbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWJkIn0udGF3ay1pY29uLWFjdGl2YXRlLXBob25lLW51bWJlcjpiZWZvcmV7Y29udGVudDoiXGU5YmUifS50YXdrLWljb24tbW9iaWxlLXBob25lOmJlZm9yZXtjb250ZW50OiJcZTliZiJ9LnRhd2staWNvbi1zdGF0dXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWMwIn0udGF3ay1pY29uLWJyb3dzZXItdGl0bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWMxIn0udGF3ay1pY29uLWdlbmVyYWwtZmlsbC11cDpiZWZvcmV7Y29udGVudDoiXGU5YzIifS50YXdrLWljb24tY2FyZC1sYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWMzIn0udGF3ay1pY29uLXZlcmlmaWVkOmJlZm9yZXtjb250ZW50OiJcZTljNCJ9LnRhd2staWNvbi1icmFpbnN0b3JtOmJlZm9yZXtjb250ZW50OiJcZTljNSJ9LnRhd2staWNvbi1jaGFuZ2UtdG9uZTpiZWZvcmV7Y29udGVudDoiXGU5YzYifS50YXdrLWljb24tZml4LWdyYW1tYXI6YmVmb3Jle2NvbnRlbnQ6IlxlOWM3In0udGF3ay1pY29uLWJ1bGxldC1wb29pbnRzLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGU5YzgifS50YXdrLWljb24tcmV3cml0ZTpiZWZvcmV7Y29udGVudDoiXGU5YzkifS50YXdrLWljb24tc2VudGVuY2UtZXhwYW5kOmJlZm9yZXtjb250ZW50OiJcZTljYSJ9LnRhd2staWNvbi1zaW1wbGlmeTpiZWZvcmV7Y29udGVudDoiXGU5Y2IifS50YXdrLWljb24tc3RlcC1ieS1zdGVwOmJlZm9yZXtjb250ZW50OiJcZTljYyJ9LnRhd2staWNvbi1zdW1tYXJpemU6YmVmb3Jle2NvbnRlbnQ6IlxlOWNkIn0udGF3ay1pY29uLXN1Z2dlc3QtcmVwbHk6YmVmb3Jle2NvbnRlbnQ6IlxlOWNlIn0udGF3ay1pY29uLVdyaXRlLWFib3V0OmJlZm9yZXtjb250ZW50OiJcZTljZiJ9LnRhd2staWNvbi1haS1Bc3Npc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWQwIn0udGF3ay1pY29uLXNlc3Npb246YmVmb3Jle2NvbnRlbnQ6IlxlOWQxIn0udGF3ay1pY29uLXNtYXJ0LXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZTlkMiJ9LnRhd2staWNvbi1jYWxsLWVuZDpiZWZvcmV7Y29udGVudDoiXGU5ZDMifS50YXdrLWljb24tc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ0In0udGF3ay1pY29uLXN0YXR1cy1jaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ1In0udGF3ay1pY29uLXJlY29ubmVjdDpiZWZvcmV7Y29udGVudDoiXGU5ZDYifS50YXdrLWljb24tZGlzY29ubmVjdGVkOmJlZm9yZXtjb250ZW50OiJcZTlkNyJ9LnRhd2staWNvbi1ub3Qtc3BhbTpiZWZvcmV7Y29udGVudDoiXGU5ZDgifS50YXdrLWljb24tc2VhcmNoZXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWQ5In0udGF3ay1pY29uLWNoYXQtZHVyYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWRhIn0udGF3ay1pY29uLWNoYXQtdm9sdW1lOmJlZm9yZXtjb250ZW50OiJcZTlkYiJ9LnRhd2staWNvbi1taXNzZWQtY2hhdDpiZWZvcmV7Y29udGVudDoiXGU5ZGMifS50YXdrLWljb24tb2ZmbGluZS1tZXNzYWdlOmJlZm9yZXtjb250ZW50OiJcZTlkZCJ9LnRhd2staWNvbi1maXJzdC1yZXNwb25zZS10aW1lOmJlZm9yZXtjb250ZW50OiJcZTlkZSJ9LnRhd2staWNvbi10aWNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWRmIn0udGF3ay1pY29uLXRpY2tldC1zb2x2ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWUwIn0udGF3ay1pY29uLXRpY2tldC1yZW9wZW5lZDpiZWZvcmV7Y29udGVudDoiXGU5ZTEifS50YXdrLWljb24tdGlja2V0LXJlc29sdXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlOWUyIn0udGF3ay1pY29uLXRpY2tldC1zb3VyY2U6YmVmb3Jle2NvbnRlbnQ6IlxlOWUzIn0udGF3ay1pY29uLXRpY2tldC12b2x1bWU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU0In0udGF3ay1pY29uLXVzZXItc2F0aXNmYWN0aW9uOmJlZm9yZXtjb250ZW50OiJcZTllNSJ9LnRhd2staWNvbi1ncm91cC1wZW9wbGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWU2In0udGF3ay1pY29uLXJlbW92ZS1icmFuZGluZzpiZWZvcmV7Y29udGVudDoiXGU5ZTcifS50YXdrLWljb24tY2FyZXQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlOWU4In0udGF3ay1pY29uLWNoYXQtd2lkZ2V0OmJlZm9yZXtjb250ZW50OiJcZTllOSJ9LnRhd2staWNvbi11bmxpbms6YmVmb3Jle2NvbnRlbnQ6IlxlOWVhIn0udGF3ay1pY29uLWF1ZGlvOmJlZm9yZXtjb250ZW50OiJcZTllYiJ9LnRhd2staWNvbi1hdWRpby1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxlOWVjIn0udGF3ay1pY29uLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlxlOWVkIn0udGF3ay1pY29uLWNoYXRib3Q6YmVmb3Jle2NvbnRlbnQ6IlxlOWVlIn0udGF3ay1pY29uLXVzZXJzOmJlZm9yZXtjb250ZW50OiJcZTllZiJ9LnRhd2staWNvbi11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlOWYwIn0udGF3ay1pY29uLWxvZy1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWYxIn0udGF3ay1pY29uLWNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWYyIn0udGF3ay1pY29uLWxheWVyczpiZWZvcmV7Y29udGVudDoiXGU5ZjMifS50YXdrLWljb24tY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGU5ZjQifS50YXdrLWljb24tY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGU5ZjUifS50YXdrLWljb24tY2FyZXQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlOWY2In0udGF3ay1pY29uLW11dGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY3In0udGF3ay1pY29uLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTlmOCJ9LnRhd2staWNvbi1wdXp6bGU6YmVmb3Jle2NvbnRlbnQ6IlxlOWY5In0udGF3ay1pY29uLXZvbHVtZS11cDpiZWZvcmV7Y29udGVudDoiXGU5ZmEifS50YXdrLWZsZXh7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0udGF3ay1mbGV4LWlubGluZXtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4fS50YXdrLWZsZXgtaW5saW5lOmFmdGVyLC50YXdrLWZsZXgtaW5saW5lOmJlZm9yZSwudGF3ay1mbGV4OmFmdGVyLC50YXdrLWZsZXg6YmVmb3Jle2Rpc3BsYXk6bm9uZX0udGF3ay1mbGV4LWxlZnR7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlcnstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHR7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlbnstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmR7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NDBweCl7LnRhd2stZmxleC1sZWZ0XEBzey1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LnRhd2stZmxleC1jZW50ZXJcQHN7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0udGF3ay1mbGV4LXJpZ2h0XEBzey1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0udGF3ay1mbGV4LWJldHdlZW5cQHN7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtYXJvdW5kXEBzey1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsudGF3ay1mbGV4LWxlZnRcQG17LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAbXstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQG17LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAbXstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQG17LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXsudGF3ay1mbGV4LWxlZnRcQGx7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0udGF3ay1mbGV4LWNlbnRlclxAbHstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtcmlnaHRcQGx7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAbHstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnRhd2stZmxleC1hcm91bmRcQGx7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsudGF3ay1mbGV4LWxlZnRcQHhsey1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LnRhd2stZmxleC1jZW50ZXJcQHhsey1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRhd2stZmxleC1yaWdodFxAeGx7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtYmV0d2VlblxAeGx7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS50YXdrLWZsZXgtYXJvdW5kXEB4bHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGU7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH19LnRhd2stZmxleC1zdHJldGNoey1tcy1mbGV4LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaH0udGF3ay1mbGV4LXRvcHstbXMtZmxleC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS50YXdrLWZsZXgtbWlkZGxley1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnRhd2stZmxleC1ib3R0b217LW1zLWZsZXgtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS50YXdrLWZsZXgtcm93ey1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fS50YXdrLWZsZXgtcm93LXJldmVyc2V7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS50YXdrLWZsZXgtY29sdW1uey1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS50YXdrLWZsZXgtY29sdW1uLXJldmVyc2V7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS50YXdrLWZsZXgtbm93cmFwey1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXB9LnRhd2stZmxleC13cmFwey1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcH0udGF3ay1mbGV4LXdyYXAtcmV2ZXJzZXstbXMtZmxleC13cmFwOndyYXAtcmV2ZXJzZTtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlfS50YXdrLWZsZXgtd3JhcC1zdHJldGNoey1tcy1mbGV4LWxpbmUtcGFjazpzdHJldGNoO2FsaWduLWNvbnRlbnQ6c3RyZXRjaH0udGF3ay1mbGV4LXdyYXAtdG9wey1tcy1mbGV4LWxpbmUtcGFjazpzdGFydDthbGlnbi1jb250ZW50OmZsZXgtc3RhcnR9LnRhd2stZmxleC13cmFwLW1pZGRsZXstbXMtZmxleC1saW5lLXBhY2s6Y2VudGVyO2FsaWduLWNvbnRlbnQ6Y2VudGVyfS50YXdrLWZsZXgtd3JhcC1ib3R0b217LW1zLWZsZXgtbGluZS1wYWNrOmVuZDthbGlnbi1jb250ZW50OmZsZXgtZW5kfS50YXdrLWZsZXgtd3JhcC1iZXR3ZWVuey1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0udGF3ay1mbGV4LXdyYXAtYXJvdW5key1tcy1mbGV4LWxpbmUtcGFjazpkaXN0cmlidXRlO2FsaWduLWNvbnRlbnQ6c3BhY2UtYXJvdW5kfS50YXdrLWZsZXgtZmlyc3R7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0ey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjQwcHgpey50YXdrLWZsZXgtZmlyc3RcQHN7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBzey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsudGF3ay1mbGV4LWZpcnN0XEBtey1tcy1mbGV4LW9yZGVyOi0xO29yZGVyOi0xfS50YXdrLWZsZXgtbGFzdFxAbXstbXMtZmxleC1vcmRlcjo5OTtvcmRlcjo5OX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLWZsZXgtZmlyc3RcQGx7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEBsey1tcy1mbGV4LW9yZGVyOjk5O29yZGVyOjk5fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDBweCl7LnRhd2stZmxleC1maXJzdFxAeGx7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9LnRhd2stZmxleC1sYXN0XEB4bHstbXMtZmxleC1vcmRlcjo5OTtvcmRlcjo5OX19LnRhd2stZmxleC1ub25ley1tcy1mbGV4Om5vbmU7ZmxleDpub25lfS50YXdrLWZsZXgtYXV0b3stbXMtZmxleDphdXRvO2ZsZXg6YXV0b30udGF3ay1mbGV4LTF7LW1zLWZsZXg6MTtmbGV4OjF9LnRhd2stdGV4dC1yZWd1bGFyLTF7Zm9udC1zaXplOi43NXJlbX0udGF3ay10ZXh0LXJlZ3VsYXItMSwudGF3ay10ZXh0LXJlZ3VsYXItMntsaW5lLWhlaWdodDoxLjYxODtmb250LXdlaWdodDo0MDA7Y29sb3I6IzEyMTIxMn0udGF3ay10ZXh0LXJlZ3VsYXItMntmb250LXNpemU6LjgxMnJlbX0udGF3ay10ZXh0LXJlZ3VsYXItM3tmb250LXNpemU6LjkzN3JlbTtsaW5lLWhlaWdodDoxLjYxODtmb250LXdlaWdodDo0MDA7Y29sb3I6IzEyMTIxMn0udGF3ay10ZXh0LWJvbGQtMSwudGF3ay10ZXh0LXJlZ3VsYXItNHtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjYxODtmb250LXdlaWdodDo0MDA7Y29sb3I6IzEyMTIxMn0udGF3ay10ZXh0LWJvbGQtMntmb250LXNpemU6MS4yNXJlbX0udGF3ay10ZXh0LWJvbGQtMiwudGF3ay10ZXh0LWJvbGQtM3tsaW5lLWhlaWdodDoxLjU7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ib2xkLTN7Zm9udC1zaXplOjEuNXJlbX0udGF3ay10ZXh0LWJvbGQtNHtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoxLjU7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOiMxMjEyMTJ9LnRhd2stdGV4dC1ncmVlbi0xe2NvbG9yOiMwM2E4NGUhaW1wb3J0YW50fS50YXdrLXRleHQteWVsbG93LTF7Y29sb3I6I2ZkYzIwZiFpbXBvcnRhbnR9LnRhd2stdGV4dC1yZWQtMXtjb2xvcjojYmYxMjEyIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktMHtjb2xvcjojMjQyNDI0IWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktMXtjb2xvcjojMTIxMjEyIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktMntjb2xvcjojMjEyMTIxIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktM3tjb2xvcjojNTQ1NDU0IWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktNHtjb2xvcjojNmU2ZTZlIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktNXtjb2xvcjojODI4MjgyIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktNntjb2xvcjojYjJiMmIyIWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktN3tjb2xvcjojZDRkNGQ0IWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktOHtjb2xvcjojZTVlNWU1IWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktOXtjb2xvcjojZjVmNWY1IWltcG9ydGFudH0udGF3ay10ZXh0LWdyZXktMTB7Y29sb3I6I2ZhZmFmYSFpbXBvcnRhbnR9LnRhd2stdGV4dC13aGl0ZXtjb2xvcjojZmZmIWltcG9ydGFudH0udGF3ay10ZXh0LWJvbGR7Zm9udC13ZWlnaHQ6NjAwfS50YXdrLXRleHQtaXRhbGlje2ZvbnQtc3R5bGU6aXRhbGljfS50YXdrLXRleHQtb2JsaXF1ZXtmb250LXN0eWxlOm9ibGlxdWV9LnRhd2stdGV4dC11bmRlcmxpbmV7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0udGF3ay10ZXh0LXVwcGVyY2FzZXt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2UhaW1wb3J0YW50fS50YXdrLXRleHQtY2FwaXRhbGl6ZXt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplIWltcG9ydGFudH0udGF3ay10ZXh0LWxvd2VyY2FzZXt0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2UhaW1wb3J0YW50fS50YXdrLXRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtcmlnaHQsYm9keS50YXdrLXJ0bCAudGF3ay10ZXh0LWxlZnR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS50YXdrLXRleHQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjQwcHgpey50YXdrLXRleHQtbGVmdFxAc3t0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtcmlnaHRcQHMsYm9keS50YXdrLXJ0bCAudGF3ay10ZXh0LWxlZnRcQHN7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEBze3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1jZW50ZXJcQHN7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsudGF3ay10ZXh0LWxlZnRcQG17dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGF3ay10ZXh0LXJpZ2h0XEBtLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEBte3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fWJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1yaWdodFxAbXt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtY2VudGVyXEBte3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpey50YXdrLXRleHQtbGVmdFxAbHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtcmlnaHRcQGwsYm9keS50YXdrLXJ0bCAudGF3ay10ZXh0LWxlZnRcQGx7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9Ym9keS50YXdrLXJ0bCAudGF3ay10ZXh0LXJpZ2h0XEBse3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1jZW50ZXJcQGx7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDBweCl7LnRhd2stdGV4dC1sZWZ0XEB4bHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50YXdrLXRleHQtcmlnaHRcQHhsLGJvZHkudGF3ay1ydGwgLnRhd2stdGV4dC1sZWZ0XEB4bHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH1ib2R5LnRhd2stcnRsIC50YXdrLXRleHQtcmlnaHRcQHhse3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRhd2stdGV4dC1jZW50ZXJcQHhse3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19LnRhd2stdGV4dC10b3B7dmVydGljYWwtYWxpZ246dG9wIWltcG9ydGFudH0udGF3ay10ZXh0LW1pZGRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGUhaW1wb3J0YW50fS50YXdrLXRleHQtYm90dG9te3ZlcnRpY2FsLWFsaWduOmJvdHRvbSFpbXBvcnRhbnR9LnRhd2stdGV4dC1iYXNlbGluZXt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZSFpbXBvcnRhbnR9LnRhd2stdGV4dC1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfWFiYnIsYWRkcmVzcyxhcnRpY2xlLGFzaWRlLGF1ZGlvLGIsYmxvY2txdW90ZSxib2R5LGNhbnZhcyxjYXB0aW9uLGNpdGUsY29kZSxkZCxkZWwsZGV0YWlscyxkZm4sZGl2LGRsLGR0LGVtLGZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvb3Rlcixmb3JtLGgxLGgyLGgzLGg0LGg1LGg2LGhlYWRlcixoZ3JvdXAsaHRtbCxpLGlmcmFtZSxpbWcsaW5zLGtiZCxsYWJlbCxsZWdlbmQsbGksbWFyayxtZW51LG5hdixvYmplY3Qsb2wscCxwcmUscSxzYW1wLHNlY3Rpb24sc21hbGwsc3BhbixzdHJvbmcsc3ViLHN1bW1hcnksc3VwLHRhYmxlLHRib2R5LHRkLHRmb290LHRoLHRoZWFkLHRpbWUsdHIsdWwsdmFyLHZpZGVve21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MDtvdXRsaW5lOjA7Zm9udC1zaXplOjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Ym9keXtsaW5lLWhlaWdodDoxfWJvZHkuZm9udC1sYXRve2ZvbnQtZmFtaWx5OkxhdG8sT3BlbiBTYW5zLHNhbnMtc2VyaWYhaW1wb3J0YW50fWJvZHkudGF3ay1ydGx7ZGlyZWN0aW9uOnJ0bDtvdmVyZmxvdzpoaWRkZW59QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjEwMjRweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToyMnB4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NDgxcHgpIGFuZCAobWF4LXdpZHRoOjc2N3B4KXtib2R5LnRhd2stbW9iaWxlLGh0bWwudGF3ay1tb2JpbGV7Zm9udC1zaXplOjE4cHghaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo0ODBweCl7Ym9keS50YXdrLW1vYmlsZSxodG1sLnRhd2stbW9iaWxle2ZvbnQtc2l6ZToxOHB4IWltcG9ydGFudH19Kntmb250LWZhbWlseTppbmhlcml0fWFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLGhncm91cCxtZW51LG5hdixzZWN0aW9ue2Rpc3BsYXk6YmxvY2t9bmF2IHVse2xpc3Qtc3R5bGU6bm9uZX1ibG9ja3F1b3RlLHF7cXVvdGVzOm5vbmV9YmxvY2txdW90ZTphZnRlcixibG9ja3F1b3RlOmJlZm9yZSxxOmFmdGVyLHE6YmVmb3Jle2NvbnRlbnQ6IiI7Y29udGVudDpub25lfWF7bWFyZ2luOjA7cGFkZGluZzowO2ZvbnQtc2l6ZToxMDAlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9aW5ze3RleHQtZGVjb3JhdGlvbjpub25lfWlucyxtYXJre2JhY2tncm91bmQtY29sb3I6I2ZmOTtjb2xvcjojMDAwfW1hcmt7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NzAwfWRlbHt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdofWFiYnJbdGl0bGVdLGRmblt0aXRsZV17Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkO2N1cnNvcjpoZWxwfXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowfWhye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCAjY2NjO21hcmdpbjoxZW0gMDtwYWRkaW5nOjB9aW5wdXQsc2VsZWN0e3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1ib2R5LGh0bWx7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xpbmUtaGVpZ2h0OjE7cG9zaXRpb246cmVsYXRpdmU7Zm9udDo0MDAgMTZweCBIZWx2ZXRpY2Esc2Fucy1zZXJpZiFpbXBvcnRhbnR9Ym9keS5mb250LWxhdG8saHRtbC5mb250LWxhdG97Zm9udDo0MDAgMTZweCBMYXRvLHNhbnMtc2VyaWYhaW1wb3J0YW50fS5jbGVhcntjbGVhcjpib3RofS5jbGVhcmZpeDphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTowO2NvbnRlbnQ6IiAiO2NsZWFyOmJvdGg7aGVpZ2h0OjB9LmNsZWFyZml4e2Rpc3BsYXk6aW5saW5lLWJsb2NrfSogaHRtbCAuY2xlYXJmaXh7aGVpZ2h0OjElfS5jbGVhcmZpeHtkaXNwbGF5OmJsb2NrfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6dGF3ay1mb250LWljb247c3JjOnVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMud29mZj81NTc1NTcyOD0pIGZvcm1hdCgid29mZiIpLHVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMudHRmPzU1NzU1NzI4PSkgZm9ybWF0KCJ0cnVldHlwZSIpLHVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMuc3ZnPzU1NzU1NzI4PSN0YXdrLWZvbnQtaWNvbikgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC1kaXNwbGF5OnN3YXB9QGZvbnQtZmFjZXtmb250LWZhbWlseTp0YXdrLWljb247c3JjOnVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMud29mZj81NTc1NTcyOD0pIGZvcm1hdCgid29mZiIpLHVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMudHRmPzU1NzU1NzI4PSkgZm9ybWF0KCJ0cnVldHlwZSIpLHVybChodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzL2ZvbnRzL3Rhd2stZm9udC1pY29uLTMuc3ZnPzU1NzU1NzI4PSN0YXdrLWZvbnQtaWNvbikgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9LnRhd2staWNvbntmb250LWZhbWlseTp0YXdrLWljb24haW1wb3J0YW50fS50YXdrLWJ1YmJsZS1jb250YWluZXJ7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCV9LnRhd2stYnViYmxlLXRleHQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDo0LjA2MjVyZW07d2lkdGg6OC41cmVtO2ZvbnQtc2l6ZTouOTM3cmVtfS50YXdrLWJ1YmJsZS1jb250YWluZXIgLnRhd2staWNvbi1jbG9zZXt2aXNpYmlsaXR5OmhpZGRlbjtmb250LXdlaWdodDo3MDB9LnRhd2stYnViYmxlLWNvbnRhaW5lcjpmb2N1cyAudGF3ay1pY29uLWNsb3NlLC50YXdrLWJ1YmJsZS1jb250YWluZXI6aG92ZXIgLnRhd2staWNvbi1jbG9zZXt2aXNpYmlsaXR5OnZpc2libGV9LnRhd2stYnViYmxlLWNvbnRhaW5lciAudGF3ay1pY29uLWJvdHRvbSAudGF3ay1pY29uLWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3JpZ2h0OjB9LnRhd2stYnViYmxlLWNvbnRhaW5lciAudGF3ay1pY29uLWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50YXdrLWJ1YmJsZS1jb250YWluZXIgLnRhd2staWNvbi1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fQoKLyojIHNvdXJjZU1hcHBpbmdVUkw9YnViYmxlLXdpZGdldC5jc3MubWFwKi8="}},"time_used":10,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/fonts/la-solid-900.woff2","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.953Z","timestamp":1785143153953,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/fonts/la-solid-900.woff2 HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/assets/global/css/line-awesome.min.css\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"179f0-67b374e4-700f19289b244646;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 96752\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":96752,"size_decoded":97151,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 96752, version 1.0","md5":"36fc297902c9a2e857858baa6ac25f2c","sha1":"89d9531c0c70a8751dff83c1917baab1f16a2071","sha256":"10a68e01209d939afa9318ee71601b0a6e10f025d4cd6d98a492d340b73941fb","sha512":"c5711d5027762fbc8d352dfdf64094958348b873671c891e8c5cf701a569c3bad672a380db7fad76692bf79dc9235b37f76b6f42f73698c9f85d2c7a23aa62fd","ssdeep":"1536:H8wZeXMjWqtJeAAHBX6ANib7HTYJv+Nr1ScHQjn6t/k5LBNCMAG35y:H8hXMjWeeVHtA7evKr1Xwelk51N4Gw","tlshash":"1f930257f0921be097c688990e189035cd39fd71397fe9f4e603ae4cc361927e52a4b6","first_seen":"2023-04-05T18:32:05Z","last_seen":"2026-08-03T08:11:11.717684Z","times_seen":13595,"resource_available":false,"data":"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"}},"time_used":39,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":27,"receive":12,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/assets/fonts/tawk-font-icon-3.woff?55755728=","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:57.379Z","timestamp":1785143157379,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/assets/fonts/tawk-font-icon-3.woff?55755728= HTTP/1.1\r\nHost: embed.tawk.to\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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://embed.tawk.to/_s/v4/app/6a4e64e9f0d/css/message-preview.css\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:57 GMT\r\ncontent-type: font/woff\r\nserver-timing: cfExtPri\r\nlast-modified: Wed, 23 Apr 2025 10:39:13 GMT\r\netag: \"07d578c95ece55d04d46b095fa8ab50a\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11056\r\naccept-ranges: bytes\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c3dae691a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 93868\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":93868,"size_decoded":94440,"mime_type":"font/woff","magic":"Web Open Font Format, TrueType, length 93868, version 1.0","md5":"07d578c95ece55d04d46b095fa8ab50a","sha1":"2d7b26de9cdc4b40d467186de2073e3dd7804ae6","sha256":"4326543bece14c56ef8ba2534fdb356452cb0650bcded3521cb8b09a9b03bd12","sha512":"89124c4f86613c63f43940a6f1914c1eee5ed90129e6aaa2c16ce446fa10581d389f7c77a579da2270125bce585efa07bf4b3e0880d283795dba42ddd9c7b0cc","ssdeep":"1536:daI2Ltj6D4Han3AHZy92Nzi2tcw52LHqH:2N6E6nOM2Nzi2t55gK","tlshash":"b393e7171706ef8fd42589bb684280734de2e901672ee243398b4d15961eaf44ef87bf","first_seen":"2025-04-29T12:23:34.02726Z","last_seen":"2026-08-03T12:50:03.393851Z","times_seen":35418,"resource_available":false,"data":"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AAAAAAAAAAACAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAoAFAAeAQABegH2AuwD/ATOBTwF/AbyB0gHdAfIB/4INghuCKYI3gkWCY4KFgquDGANCg3eEJgRBBFmEdYS3hPKFEQUjBVQFhYXCBfmGNIZchomGqQa/BsgG0YbbBuSHGgdMB3+HqYfQB/aIO4h1CJOIwgj1iRWJTQmMibmKCwp4CpoKxQsLCz+LW4uWi+sMSgyAjLQNAg1LjXcNmY23DgAOLI5Njm8OpQ7CDuKO+A8NjywPTI9rD6uP6xACkCEQSxB0kJsQsJDFEOORCJE+kV8RcpGwkhSSJRJRkp4S7pMEExkTLpNEE3aTpxPtFA6USRSZFNqVRhV7lbIV4BYBFjKWk5bglxIXMhdel3cXtxf0mB0YShhuGJwYwhjuGRaZThmRmd8aOxpvGrsa5xsUm14bmBvcnDgcaBx/HJWcrhzLnOOdMh1gneEeBZ4qHome0R8GH0IfSp+Gn6EfxZ/roBSgPCBxoKAguiDNoP0hI6E/oWkh1yHwokAiUCJpopKi2SL1IxkjOaNTI2+jkqPCI/+kMiRipIgkt6TRJQUlKyVdpYIlrCXypimmT6ZqpnOmkyatJtEm6CcLJzMnWSd5J6kn0agbKEyojyjJKP6pNamFKbep9ioGqi6qYyqGqsiq4CsRK0YrbSuIq5mry6vcK+yr/SwYrDGsaKyOgABAAAA/wHvAAoAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADgAAAAEAAAAAAAIABwCfAAEAAAAAAAMADgBLAAEAAAAAAAQADgC0AAEAAAAAAAUACwAqAAEAAAAAAAYADgB1AAEAAAAAAAoAGgDeAAMAAQQJAAEAHAAOAAMAAQQJAAIADgCmAAMAAQQJAAMAHABZAAMAAQQJAAQAHADCAAMAAQQJAAUAFgA1AAMAAQQJAAYAHACDAAMAAQQJAAoANAD4dGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwdGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBudGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuUmVndWxhcgBSAGUAZwB1AGwAYQBydGF3ay1mb250LWljb24AdABhAHcAawAtAGYAbwBuAHQALQBpAGMAbwBuRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="}},"time_used":9,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/css/all.min.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.621Z","timestamp":1785143153621,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/all.min.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"190f9-67b374e4-9aef5ed501eb2ffa;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 21710\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":102649,"size_decoded":22152,"mime_type":"text/css","magic":"ASCII text, with very long lines (52269), with CRLF line terminators","md5":"d04b0cf35abb0e22eecca58c52984615","sha1":"9a0821025ba59e2602ae3a03467842a5d80f77cd","sha256":"ce6f72d6b4c728f562906a8e51e2456a9011acb20b4c90e0eb79b580cce8f229","sha512":"0bb42546a13d12035276562d4d2e01b8569649ab9dcf6e67caedae652af9df3f90fda288b4f646f057efbb399d6e02d4e33a5ffad3dbe920482ffd975010838a","ssdeep":"1536:yjMCMPMCMjMCM4MCMwMCM3sVM7709gbPMfjSFOTyPG9SpgSLCJ:N709gMGFiyPG9SiSLCJ","tlshash":"7ca3a7f9e44c05d97732c44bab95b37c65b6f738d5810ca9f02f580c1ad26a822c6f7a","first_seen":"2024-05-29T20:38:41Z","last_seen":"2026-08-03T07:41:24.27057Z","times_seen":1693,"resource_available":false,"data":"LyohDQogKiBGb250IEF3ZXNvbWUgRnJlZSA2LjUuMSBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbQ0KICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSkNCiAqIENvcHlyaWdodCAyMDIzIEZvbnRpY29ucywgSW5jLg0KICovDQouZmF7Zm9udC1mYW1pbHk6dmFyKC0tZmEtc3R5bGUtZmFtaWx5LCJGb250IEF3ZXNvbWUgNiBGcmVlIik7Zm9udC13ZWlnaHQ6dmFyKC0tZmEtc3R5bGUsOTAwKX0uZmEsLmZhLWJyYW5kcywuZmEtY2xhc3NpYywuZmEtcmVndWxhciwuZmEtc2hhcnAsLmZhLXNvbGlkLC5mYWIsLmZhciwuZmFzey1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO2Rpc3BsYXk6dmFyKC0tZmEtZGlzcGxheSxpbmxpbmUtYmxvY2spO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7bGluZS1oZWlnaHQ6MTt0ZXh0LXJlbmRlcmluZzphdXRvfS5mYS1jbGFzc2ljLC5mYS1yZWd1bGFyLC5mYS1zb2xpZCwuZmFyLC5mYXN7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA2IEZyZWUifS5mYS1icmFuZHMsLmZhYntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDYgQnJhbmRzIn0uZmEtMXh7Zm9udC1zaXplOjFlbX0uZmEtMnh7Zm9udC1zaXplOjJlbX0uZmEtM3h7Zm9udC1zaXplOjNlbX0uZmEtNHh7Zm9udC1zaXplOjRlbX0uZmEtNXh7Zm9udC1zaXplOjVlbX0uZmEtNnh7Zm9udC1zaXplOjZlbX0uZmEtN3h7Zm9udC1zaXplOjdlbX0uZmEtOHh7Zm9udC1zaXplOjhlbX0uZmEtOXh7Zm9udC1zaXplOjllbX0uZmEtMTB4e2ZvbnQtc2l6ZToxMGVtfS5mYS0yeHN7Zm9udC1zaXplOi42MjVlbTtsaW5lLWhlaWdodDouMWVtO3ZlcnRpY2FsLWFsaWduOi4yMjVlbX0uZmEteHN7Zm9udC1zaXplOi43NWVtO2xpbmUtaGVpZ2h0Oi4wODMzM2VtO3ZlcnRpY2FsLWFsaWduOi4xMjVlbX0uZmEtc217Zm9udC1zaXplOi44NzVlbTtsaW5lLWhlaWdodDouMDcxNDNlbTt2ZXJ0aWNhbC1hbGlnbjouMDUzNTdlbX0uZmEtbGd7Zm9udC1zaXplOjEuMjVlbTtsaW5lLWhlaWdodDouMDVlbTt2ZXJ0aWNhbC1hbGlnbjotLjA3NWVtfS5mYS14bHtmb250LXNpemU6MS41ZW07bGluZS1oZWlnaHQ6LjA0MTY3ZW07dmVydGljYWwtYWxpZ246LS4xMjVlbX0uZmEtMnhse2ZvbnQtc2l6ZToyZW07bGluZS1oZWlnaHQ6LjAzMTI1ZW07dmVydGljYWwtYWxpZ246LS4xODc1ZW19LmZhLWZ3e3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEuMjVlbX0uZmEtdWx7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luLWxlZnQ6dmFyKC0tZmEtbGktbWFyZ2luLDIuNWVtKTtwYWRkaW5nLWxlZnQ6MH0uZmEtdWw+bGl7cG9zaXRpb246cmVsYXRpdmV9LmZhLWxpe2xlZnQ6Y2FsYyh2YXIoLS1mYS1saS13aWR0aCwgMmVtKSotMSk7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6dmFyKC0tZmEtbGktd2lkdGgsMmVtKTtsaW5lLWhlaWdodDppbmhlcml0fS5mYS1ib3JkZXJ7Ym9yZGVyLXJhZGl1czp2YXIoLS1mYS1ib3JkZXItcmFkaXVzLC4xZW0pO2JvcmRlcjp2YXIoLS1mYS1ib3JkZXItd2lkdGgsLjA4ZW0pIHZhcigtLWZhLWJvcmRlci1zdHlsZSxzb2xpZCkgdmFyKC0tZmEtYm9yZGVyLWNvbG9yLCNlZWUpO3BhZGRpbmc6dmFyKC0tZmEtYm9yZGVyLXBhZGRpbmcsLjJlbSAuMjVlbSAuMTVlbSl9LmZhLXB1bGwtbGVmdHtmbG9hdDpsZWZ0O21hcmdpbi1yaWdodDp2YXIoLS1mYS1wdWxsLW1hcmdpbiwuM2VtKX0uZmEtcHVsbC1yaWdodHtmbG9hdDpyaWdodDttYXJnaW4tbGVmdDp2YXIoLS1mYS1wdWxsLW1hcmdpbiwuM2VtKX0uZmEtYmVhdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhLWJlYXQ7YW5pbWF0aW9uLW5hbWU6ZmEtYmVhdDstd2Via2l0LWFuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpO2FuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpOy13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxlYXNlLWluLW91dCk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLGVhc2UtaW4tb3V0KX0uZmEtYm91bmNley13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmEtYm91bmNlO2FuaW1hdGlvbi1uYW1lOmZhLWJvdW5jZTstd2Via2l0LWFuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpO2FuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpOy13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxjdWJpYy1iZXppZXIoLjI4LC44NCwuNDIsMSkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxjdWJpYy1iZXppZXIoLjI4LC44NCwuNDIsMSkpfS5mYS1mYWRley13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmEtZmFkZTthbmltYXRpb24tbmFtZTpmYS1mYWRlOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLGN1YmljLWJlemllciguNCwwLC42LDEpKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkpfS5mYS1iZWF0LWZhZGUsLmZhLWZhZGV7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTthbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTstd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpO2FuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyk7YW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyl9LmZhLWJlYXQtZmFkZXstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhLWJlYXQtZmFkZTthbmltYXRpb24tbmFtZTpmYS1iZWF0LWZhZGU7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxjdWJpYy1iZXppZXIoLjQsMCwuNiwxKSl9LmZhLWZsaXB7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYS1mbGlwO2FuaW1hdGlvbi1uYW1lOmZhLWZsaXA7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTthbmltYXRpb24tZGVsYXk6dmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LDBzKTstd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpO2FuaW1hdGlvbi1kaXJlY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyk7YW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwxcyk7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsaW5maW5pdGUpO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsZWFzZS1pbi1vdXQpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxlYXNlLWluLW91dCl9LmZhLXNoYWtley13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmEtc2hha2U7YW5pbWF0aW9uLW5hbWU6ZmEtc2hha2U7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxsaW5lYXIpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxsaW5lYXIpfS5mYS1zaGFrZSwuZmEtc3Bpbnstd2Via2l0LWFuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpO2FuaW1hdGlvbi1kZWxheTp2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksMHMpOy13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCl9LmZhLXNwaW57LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYS1zcGluO2FuaW1hdGlvbi1uYW1lOmZhLXNwaW47LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDJzKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDJzKTstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxsaW5lYXIpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxsaW5lYXIpfS5mYS1zcGluLXJldmVyc2V7LS1mYS1hbmltYXRpb24tZGlyZWN0aW9uOnJldmVyc2V9LmZhLXB1bHNlLC5mYS1zcGluLXB1bHNley13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmEtc3BpbjthbmltYXRpb24tbmFtZTpmYS1zcGluOy13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7YW5pbWF0aW9uLWRpcmVjdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCk7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTthbmltYXRpb24tZHVyYXRpb246dmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLDFzKTstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6dmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCxpbmZpbml0ZSk7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDp2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LGluZmluaXRlKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZyxzdGVwcyg4KSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLHN0ZXBzKDgpKX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZmEtYmVhdCwuZmEtYmVhdC1mYWRlLC5mYS1ib3VuY2UsLmZhLWZhZGUsLmZhLWZsaXAsLmZhLXB1bHNlLC5mYS1zaGFrZSwuZmEtc3BpbiwuZmEtc3Bpbi1wdWxzZXstd2Via2l0LWFuaW1hdGlvbi1kZWxheTotMW1zO2FuaW1hdGlvbi1kZWxheTotMW1zOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjFtczthbmltYXRpb24tZHVyYXRpb246MW1zOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDoxO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kZWxheTowczstd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246MHM7dHJhbnNpdGlvbi1kdXJhdGlvbjowc319QC13ZWJraXQta2V5ZnJhbWVzIGZhLWJlYXR7MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX00NSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYmVhdC1zY2FsZSwxLjI1KSk7dHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJlYXQtc2NhbGUsMS4yNSkpfX1Aa2V5ZnJhbWVzIGZhLWJlYXR7MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX00NSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYmVhdC1zY2FsZSwxLjI1KSk7dHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJlYXQtc2NhbGUsMS4yNSkpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZmEtYm91bmNlezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9MTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJvdW5jZS1zdGFydC1zY2FsZS14LDEuMSksdmFyKC0tZmEtYm91bmNlLXN0YXJ0LXNjYWxlLXksLjkpKSB0cmFuc2xhdGVZKDApO3RyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1ib3VuY2Utc3RhcnQtc2NhbGUteCwxLjEpLHZhcigtLWZhLWJvdW5jZS1zdGFydC1zY2FsZS15LC45KSkgdHJhbnNsYXRlWSgwKX0zMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLWp1bXAtc2NhbGUteCwuOSksdmFyKC0tZmEtYm91bmNlLWp1bXAtc2NhbGUteSwxLjEpKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1oZWlnaHQsLS41ZW0pKTt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLWp1bXAtc2NhbGUteCwuOSksdmFyKC0tZmEtYm91bmNlLWp1bXAtc2NhbGUteSwxLjEpKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1oZWlnaHQsLS41ZW0pKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLWxhbmQtc2NhbGUteCwxLjA1KSx2YXIoLS1mYS1ib3VuY2UtbGFuZC1zY2FsZS15LC45NSkpIHRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJvdW5jZS1sYW5kLXNjYWxlLXgsMS4wNSksdmFyKC0tZmEtYm91bmNlLWxhbmQtc2NhbGUteSwuOTUpKSB0cmFuc2xhdGVZKDApfTU3JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1yZWJvdW5kLC0uMTI1ZW0pKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSh2YXIoLS1mYS1ib3VuY2UtcmVib3VuZCwtLjEyNWVtKSl9NjQley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKX19QGtleWZyYW1lcyBmYS1ib3VuY2V7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKX0xMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLXN0YXJ0LXNjYWxlLXgsMS4xKSx2YXIoLS1mYS1ib3VuY2Utc3RhcnQtc2NhbGUteSwuOSkpIHRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJvdW5jZS1zdGFydC1zY2FsZS14LDEuMSksdmFyKC0tZmEtYm91bmNlLXN0YXJ0LXNjYWxlLXksLjkpKSB0cmFuc2xhdGVZKDApfTMwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS14LC45KSx2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS15LDEuMSkpIHRyYW5zbGF0ZVkodmFyKC0tZmEtYm91bmNlLWhlaWdodCwtLjVlbSkpO3RyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS14LC45KSx2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS15LDEuMSkpIHRyYW5zbGF0ZVkodmFyKC0tZmEtYm91bmNlLWhlaWdodCwtLjVlbSkpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1ib3VuY2UtbGFuZC1zY2FsZS14LDEuMDUpLHZhcigtLWZhLWJvdW5jZS1sYW5kLXNjYWxlLXksLjk1KSkgdHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYm91bmNlLWxhbmQtc2NhbGUteCwxLjA1KSx2YXIoLS1mYS1ib3VuY2UtbGFuZC1zY2FsZS15LC45NSkpIHRyYW5zbGF0ZVkoMCl9NTcley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkodmFyKC0tZmEtYm91bmNlLXJlYm91bmQsLS4xMjVlbSkpO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1yZWJvdW5kLC0uMTI1ZW0pKX02NCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgZmEtZmFkZXs1MCV7b3BhY2l0eTp2YXIoLS1mYS1mYWRlLW9wYWNpdHksLjQpfX1Aa2V5ZnJhbWVzIGZhLWZhZGV7NTAle29wYWNpdHk6dmFyKC0tZmEtZmFkZS1vcGFjaXR5LC40KX19QC13ZWJraXQta2V5ZnJhbWVzIGZhLWJlYXQtZmFkZXswJSx0b3tvcGFjaXR5OnZhcigtLWZhLWJlYXQtZmFkZS1vcGFjaXR5LC40KTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1iZWF0LWZhZGUtc2NhbGUsMS4xMjUpKTt0cmFuc2Zvcm06c2NhbGUodmFyKC0tZmEtYmVhdC1mYWRlLXNjYWxlLDEuMTI1KSl9fUBrZXlmcmFtZXMgZmEtYmVhdC1mYWRlezAlLHRve29wYWNpdHk6dmFyKC0tZmEtYmVhdC1mYWRlLW9wYWNpdHksLjQpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX01MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKHZhcigtLWZhLWJlYXQtZmFkZS1zY2FsZSwxLjEyNSkpO3RyYW5zZm9ybTpzY2FsZSh2YXIoLS1mYS1iZWF0LWZhZGUtc2NhbGUsMS4xMjUpKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhLWZsaXB7NTAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZTNkKHZhcigtLWZhLWZsaXAteCwwKSx2YXIoLS1mYS1mbGlwLXksMSksdmFyKC0tZmEtZmxpcC16LDApLHZhcigtLWZhLWZsaXAtYW5nbGUsLTE4MGRlZykpO3RyYW5zZm9ybTpyb3RhdGUzZCh2YXIoLS1mYS1mbGlwLXgsMCksdmFyKC0tZmEtZmxpcC15LDEpLHZhcigtLWZhLWZsaXAteiwwKSx2YXIoLS1mYS1mbGlwLWFuZ2xlLC0xODBkZWcpKX19QGtleWZyYW1lcyBmYS1mbGlwezUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUzZCh2YXIoLS1mYS1mbGlwLXgsMCksdmFyKC0tZmEtZmxpcC15LDEpLHZhcigtLWZhLWZsaXAteiwwKSx2YXIoLS1mYS1mbGlwLWFuZ2xlLC0xODBkZWcpKTt0cmFuc2Zvcm06cm90YXRlM2QodmFyKC0tZmEtZmxpcC14LDApLHZhcigtLWZhLWZsaXAteSwxKSx2YXIoLS1mYS1mbGlwLXosMCksdmFyKC0tZmEtZmxpcC1hbmdsZSwtMTgwZGVnKSl9fUAtd2Via2l0LWtleWZyYW1lcyBmYS1zaGFrZXswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xNWRlZyl9NCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDE1ZGVnKX04JSwyNCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xOGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMThkZWcpfTEyJSwyOCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDE4ZGVnKX0xNiV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0yMmRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMjJkZWcpfTIwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjJkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjJkZWcpfTMyJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTEyZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xMmRlZyl9MzYley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMmRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxMmRlZyl9NDAlLHRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfX1Aa2V5ZnJhbWVzIGZhLXNoYWtlezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTE1ZGVnKX00JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTVkZWcpfTglLDI0JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE4ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xOGRlZyl9MTIlLDI4JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMThkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMThkZWcpfTE2JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTIyZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0yMmRlZyl9MjAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMmRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgyMmRlZyl9MzIley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTJkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTEyZGVnKX0zNiV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDEyZGVnKTt0cmFuc2Zvcm06cm90YXRlKDEyZGVnKX00MCUsdG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fUAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUBrZXlmcmFtZXMgZmEtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0uZmEtcm90YXRlLTkwey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmZhLXJvdGF0ZS0xODB7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5mYS1yb3RhdGUtMjcwey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKX0uZmEtZmxpcC1ob3Jpem9udGFsey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgtMSk7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LmZhLWZsaXAtdmVydGljYWx7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKC0xKTt0cmFuc2Zvcm06c2NhbGVZKC0xKX0uZmEtZmxpcC1ib3RoLC5mYS1mbGlwLWhvcml6b250YWwuZmEtZmxpcC12ZXJ0aWNhbHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgtMSk7dHJhbnNmb3JtOnNjYWxlKC0xKX0uZmEtcm90YXRlLWJ5ey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSh2YXIoLS1mYS1yb3RhdGUtYW5nbGUsbm9uZSkpO3RyYW5zZm9ybTpyb3RhdGUodmFyKC0tZmEtcm90YXRlLWFuZ2xlLG5vbmUpKX0uZmEtc3RhY2t7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoyZW07cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjIuNWVtfS5mYS1zdGFjay0xeCwuZmEtc3RhY2stMnh7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCU7ei1pbmRleDp2YXIoLS1mYS1zdGFjay16LWluZGV4LGF1dG8pfS5mYS1zdGFjay0xeHtsaW5lLWhlaWdodDppbmhlcml0fS5mYS1zdGFjay0yeHtmb250LXNpemU6MmVtfS5mYS1pbnZlcnNle2NvbG9yOnZhcigtLWZhLWludmVyc2UsI2ZmZil9DQoNCi5mYS0wOmJlZm9yZXtjb250ZW50OiJcMzAifS5mYS0xOmJlZm9yZXtjb250ZW50OiJcMzEifS5mYS0yOmJlZm9yZXtjb250ZW50OiJcMzIifS5mYS0zOmJlZm9yZXtjb250ZW50OiJcMzMifS5mYS00OmJlZm9yZXtjb250ZW50OiJcMzQifS5mYS01OmJlZm9yZXtjb250ZW50OiJcMzUifS5mYS02OmJlZm9yZXtjb250ZW50OiJcMzYifS5mYS03OmJlZm9yZXtjb250ZW50OiJcMzcifS5mYS04OmJlZm9yZXtjb250ZW50OiJcMzgifS5mYS05OmJlZm9yZXtjb250ZW50OiJcMzkifS5mYS1maWxsLWRyaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTc2In0uZmEtYXJyb3dzLXRvLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU0YmQifS5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUsLmZhLWNpcmNsZS1jaGV2cm9uLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEzOCJ9LmZhLWF0OmJlZm9yZXtjb250ZW50OiJcNDAifS5mYS10cmFzaC1hbHQ6YmVmb3JlLC5mYS10cmFzaC1jYW46YmVmb3Jle2NvbnRlbnQ6IlxmMmVkIn0uZmEtdGV4dC1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM0In0uZmEtdXNlci10aW1lczpiZWZvcmUsLmZhLXVzZXIteG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMjM1In0uZmEtc3RldGhvc2NvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGYxIn0uZmEtY29tbWVudC1hbHQ6YmVmb3JlLC5mYS1tZXNzYWdlOmJlZm9yZXtjb250ZW50OiJcZjI3YSJ9LmZhLWluZm86YmVmb3Jle2NvbnRlbnQ6IlxmMTI5In0uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSwuZmEtZG93bi1sZWZ0LWFuZC11cC1yaWdodC10by1jZW50ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDIyIn0uZmEtZXhwbG9zaW9uOmJlZm9yZXtjb250ZW50OiJcZTRlOSJ9LmZhLWZpbGUtYWx0OmJlZm9yZSwuZmEtZmlsZS1saW5lczpiZWZvcmUsLmZhLWZpbGUtdGV4dDpiZWZvcmV7Y29udGVudDoiXGYxNWMifS5mYS13YXZlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGY4M2UifS5mYS1yaW5nOmJlZm9yZXtjb250ZW50OiJcZjcwYiJ9LmZhLWJ1aWxkaW5nLXVuOmJlZm9yZXtjb250ZW50OiJcZTRkOSJ9LmZhLWRpY2UtdGhyZWU6YmVmb3Jle2NvbnRlbnQ6IlxmNTI3In0uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSwuZmEtY2FsZW5kYXItZGF5czpiZWZvcmV7Y29udGVudDoiXGYwNzMifS5mYS1hbmNob3ItY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTRhYSJ9LmZhLWJ1aWxkaW5nLWNpcmNsZS1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU0ZDEifS5mYS12b2xsZXliYWxsLWJhbGw6YmVmb3JlLC5mYS12b2xsZXliYWxsOmJlZm9yZXtjb250ZW50OiJcZjQ1ZiJ9LmZhLWFycm93cy11cC10by1saW5lOmJlZm9yZXtjb250ZW50OiJcZTRjMiJ9LmZhLXNvcnQtZGVzYzpiZWZvcmUsLmZhLXNvcnQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwZGQifS5mYS1jaXJjbGUtbWludXM6YmVmb3JlLC5mYS1taW51cy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU2In0uZmEtZG9vci1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjUyYiJ9LmZhLXJpZ2h0LWZyb20tYnJhY2tldDpiZWZvcmUsLmZhLXNpZ24tb3V0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjUifS5mYS1hdG9tOmJlZm9yZXtjb250ZW50OiJcZjVkMiJ9LmZhLXNvYXA6YmVmb3Jle2NvbnRlbnQ6IlxlMDZlIn0uZmEtaGVhcnQtbXVzaWMtY2FtZXJhLWJvbHQ6YmVmb3JlLC5mYS1pY29uczpiZWZvcmV7Y29udGVudDoiXGY4NmQifS5mYS1taWNyb3Bob25lLWFsdC1zbGFzaDpiZWZvcmUsLmZhLW1pY3JvcGhvbmUtbGluZXMtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTM5In0uZmEtYnJpZGdlLWNpcmNsZS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU0YzkifS5mYS1wdW1wLW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxlMDZhIn0uZmEtZmluZ2VycHJpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTc3In0uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTQifS5mYS1tYWduaWZ5aW5nLWdsYXNzLWxvY2F0aW9uOmJlZm9yZSwuZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZXtjb250ZW50OiJcZjY4OSJ9LmZhLWZvcndhcmQtc3RlcDpiZWZvcmUsLmZhLXN0ZXAtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNTEifS5mYS1mYWNlLXNtaWxlLWJlYW06YmVmb3JlLC5mYS1zbWlsZS1iZWFtOmJlZm9yZXtjb250ZW50OiJcZjViOCJ9LmZhLWZsYWctY2hlY2tlcmVkOmJlZm9yZXtjb250ZW50OiJcZjExZSJ9LmZhLWZvb3RiYWxsLWJhbGw6YmVmb3JlLC5mYS1mb290YmFsbDpiZWZvcmV7Y29udGVudDoiXGY0NGUifS5mYS1zY2hvb2wtY2lyY2xlLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTU2YyJ9LmZhLWNyb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTI1In0uZmEtYW5nbGUtZG91YmxlLWRvd246YmVmb3JlLC5mYS1hbmdsZXMtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxMDMifS5mYS11c2Vycy1yZWN0YW5nbGU6YmVmb3Jle2NvbnRlbnQ6IlxlNTk0In0uZmEtcGVvcGxlLXJvb2Y6YmVmb3Jle2NvbnRlbnQ6IlxlNTM3In0uZmEtcGVvcGxlLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNTM0In0uZmEtYmVlci1tdWctZW1wdHk6YmVmb3JlLC5mYS1iZWVyOmJlZm9yZXtjb250ZW50OiJcZjBmYyJ9LmZhLWRpYWdyYW0tcHJlZGVjZXNzb3I6YmVmb3Jle2NvbnRlbnQ6IlxlNDc3In0uZmEtYXJyb3ctdXAtbG9uZzpiZWZvcmUsLmZhLWxvbmctYXJyb3ctdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTc2In0uZmEtYnVybjpiZWZvcmUsLmZhLWZpcmUtZmxhbWUtc2ltcGxlOmJlZm9yZXtjb250ZW50OiJcZjQ2YSJ9LmZhLW1hbGU6YmVmb3JlLC5mYS1wZXJzb246YmVmb3Jle2NvbnRlbnQ6IlxmMTgzIn0uZmEtbGFwdG9wOmJlZm9yZXtjb250ZW50OiJcZjEwOSJ9LmZhLWZpbGUtY3N2OmJlZm9yZXtjb250ZW50OiJcZjZkZCJ9LmZhLW1lbm9yYWg6YmVmb3Jle2NvbnRlbnQ6IlxmNjc2In0uZmEtdHJ1Y2stcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNThmIn0uZmEtcmVjb3JkLXZpbnlsOmJlZm9yZXtjb250ZW50OiJcZjhkOSJ9LmZhLWZhY2UtZ3Jpbi1zdGFyczpiZWZvcmUsLmZhLWdyaW4tc3RhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmNTg3In0uZmEtYm9uZzpiZWZvcmV7Y29udGVudDoiXGY1NWMifS5mYS1wYXN0YWZhcmlhbmlzbTpiZWZvcmUsLmZhLXNwYWdoZXR0aS1tb25zdGVyLWZseWluZzpiZWZvcmV7Y29udGVudDoiXGY2N2IifS5mYS1hcnJvdy1kb3duLXVwLWFjcm9zcy1saW5lOmJlZm9yZXtjb250ZW50OiJcZTRhZiJ9LmZhLXNwb29uOmJlZm9yZSwuZmEtdXRlbnNpbC1zcG9vbjpiZWZvcmV7Y29udGVudDoiXGYyZTUifS5mYS1qYXItd2hlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTE3In0uZmEtZW52ZWxvcGVzLWJ1bGs6YmVmb3JlLC5mYS1tYWlsLWJ1bGs6YmVmb3Jle2NvbnRlbnQ6IlxmNjc0In0uZmEtZmlsZS1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNGViIn0uZmEtY2lyY2xlLWg6YmVmb3JlLC5mYS1ob3NwaXRhbC1zeW1ib2w6YmVmb3Jle2NvbnRlbnQ6IlxmNDdlIn0uZmEtcGFnZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODE1In0uZmEtYWRkcmVzcy1ib29rOmJlZm9yZSwuZmEtY29udGFjdC1ib29rOmJlZm9yZXtjb250ZW50OiJcZjJiOSJ9LmZhLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6IlxmMGNjIn0uZmEtazpiZWZvcmV7Y29udGVudDoiXDRiIn0uZmEtbGFuZG1hcmstZmxhZzpiZWZvcmV7Y29udGVudDoiXGU1MWMifS5mYS1wZW5jaWwtYWx0OmJlZm9yZSwuZmEtcGVuY2lsOmJlZm9yZXtjb250ZW50OiJcZjMwMyJ9LmZhLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0YSJ9LmZhLWNhcmV0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBkYSJ9LmZhLWNvbW1lbnRzOmJlZm9yZXtjb250ZW50OiJcZjA4NiJ9LmZhLWZpbGUtY2xpcGJvYXJkOmJlZm9yZSwuZmEtcGFzdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGVhIn0uZmEtY29kZS1wdWxsLXJlcXVlc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMTNjIn0uZmEtY2xpcGJvYXJkLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNDZkIn0uZmEtdHJ1Y2stbG9hZGluZzpiZWZvcmUsLmZhLXRydWNrLXJhbXAtYm94OmJlZm9yZXtjb250ZW50OiJcZjRkZSJ9LmZhLXVzZXItY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNGZjIn0uZmEtdmlhbC12aXJ1czpiZWZvcmV7Y29udGVudDoiXGU1OTcifS5mYS1zaGVldC1wbGFzdGljOmJlZm9yZXtjb250ZW50OiJcZTU3MSJ9LmZhLWJsb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNzgxIn0uZmEtdXNlci1uaW5qYTpiZWZvcmV7Y29udGVudDoiXGY1MDQifS5mYS1wZXJzb24tYXJyb3ctdXAtZnJvbS1saW5lOmJlZm9yZXtjb250ZW50OiJcZTUzOSJ9LmZhLXNjcm9sbC10b3JhaDpiZWZvcmUsLmZhLXRvcmFoOmJlZm9yZXtjb250ZW50OiJcZjZhMCJ9LmZhLWJyb29tLWJhbGw6YmVmb3JlLC5mYS1xdWlkZGl0Y2gtYnJvb20tYmFsbDpiZWZvcmUsLmZhLXF1aWRkaXRjaDpiZWZvcmV7Y29udGVudDoiXGY0NTgifS5mYS10b2dnbGUtb2ZmOmJlZm9yZXtjb250ZW50OiJcZjIwNCJ9LmZhLWFyY2hpdmU6YmVmb3JlLC5mYS1ib3gtYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGYxODcifS5mYS1wZXJzb24tZHJvd25pbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNTQ1In0uZmEtYXJyb3ctZG93bi05LTE6YmVmb3JlLC5mYS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmUsLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODYifS5mYS1mYWNlLWdyaW4tdG9uZ3VlLXNxdWludDpiZWZvcmUsLmZhLWdyaW4tdG9uZ3VlLXNxdWludDpiZWZvcmV7Y29udGVudDoiXGY1OGEifS5mYS1zcHJheS1jYW46YmVmb3Jle2NvbnRlbnQ6IlxmNWJkIn0uZmEtdHJ1Y2stbW9uc3RlcjpiZWZvcmV7Y29udGVudDoiXGY2M2IifS5mYS13OmJlZm9yZXtjb250ZW50OiJcNTcifS5mYS1lYXJ0aC1hZnJpY2E6YmVmb3JlLC5mYS1nbG9iZS1hZnJpY2E6YmVmb3Jle2NvbnRlbnQ6IlxmNTdjIn0uZmEtcmFpbmJvdzpiZWZvcmV7Y29udGVudDoiXGY3NWIifS5mYS1jaXJjbGUtbm90Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWNlIn0uZmEtdGFibGV0LWFsdDpiZWZvcmUsLmZhLXRhYmxldC1zY3JlZW4tYnV0dG9uOmJlZm9yZXtjb250ZW50OiJcZjNmYSJ9LmZhLXBhdzpiZWZvcmV7Y29udGVudDoiXGYxYjAifS5mYS1jbG91ZDpiZWZvcmV7Y29udGVudDoiXGYwYzIifS5mYS10cm93ZWwtYnJpY2tzOmJlZm9yZXtjb250ZW50OiJcZTU4YSJ9LmZhLWZhY2UtZmx1c2hlZDpiZWZvcmUsLmZhLWZsdXNoZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTc5In0uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmV7Y29udGVudDoiXGY4MGQifS5mYS10ZW50LWFycm93LWxlZnQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTdmIn0uZmEtZ2F2ZWw6YmVmb3JlLC5mYS1sZWdhbDpiZWZvcmV7Y29udGVudDoiXGYwZTMifS5mYS1iaW5vY3VsYXJzOmJlZm9yZXtjb250ZW50OiJcZjFlNSJ9LmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMTMxIn0uZmEtYm94LXRpc3N1ZTpiZWZvcmV7Y29udGVudDoiXGUwNWIifS5mYS1tb3RvcmN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjIxYyJ9LmZhLWJlbGwtY29uY2llcmdlOmJlZm9yZSwuZmEtY29uY2llcmdlLWJlbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNTYyIn0uZmEtcGVuLXJ1bGVyOmJlZm9yZSwuZmEtcGVuY2lsLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjVhZSJ9LmZhLXBlb3BsZS1hcnJvd3MtbGVmdC1yaWdodDpiZWZvcmUsLmZhLXBlb3BsZS1hcnJvd3M6YmVmb3Jle2NvbnRlbnQ6IlxlMDY4In0uZmEtbWFycy1hbmQtdmVudXMtYnVyc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlNTIzIn0uZmEtY2FyZXQtc3F1YXJlLXJpZ2h0OmJlZm9yZSwuZmEtc3F1YXJlLWNhcmV0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjE1MiJ9LmZhLWN1dDpiZWZvcmUsLmZhLXNjaXNzb3JzOmJlZm9yZXtjb250ZW50OiJcZjBjNCJ9LmZhLXN1bi1wbGFudC13aWx0OmJlZm9yZXtjb250ZW50OiJcZTU3YSJ9LmZhLXRvaWxldHMtcG9ydGFibGU6YmVmb3Jle2NvbnRlbnQ6IlxlNTg0In0uZmEtaG9ja2V5LXB1Y2s6YmVmb3Jle2NvbnRlbnQ6IlxmNDUzIn0uZmEtdGFibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNlIn0uZmEtbWFnbmlmeWluZy1nbGFzcy1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU1MjEifS5mYS1kaWdpdGFsLXRhY2hvZ3JhcGg6YmVmb3JlLC5mYS10YWNob2dyYXBoLWRpZ2l0YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTY2In0uZmEtdXNlcnMtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDczIn0uZmEtY2xvdmVyOmJlZm9yZXtjb250ZW50OiJcZTEzOSJ9LmZhLW1haWwtcmVwbHk6YmVmb3JlLC5mYS1yZXBseTpiZWZvcmV7Y29udGVudDoiXGYzZTUifS5mYS1zdGFyLWFuZC1jcmVzY2VudDpiZWZvcmV7Y29udGVudDoiXGY2OTkifS5mYS1ob3VzZS1maXJlOmJlZm9yZXtjb250ZW50OiJcZTUwYyJ9LmZhLW1pbnVzLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1taW51czpiZWZvcmV7Y29udGVudDoiXGYxNDYifS5mYS1oZWxpY29wdGVyOmJlZm9yZXtjb250ZW50OiJcZjUzMyJ9LmZhLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTRlIn0uZmEtY2FyZXQtc3F1YXJlLWRvd246YmVmb3JlLC5mYS1zcXVhcmUtY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNTAifS5mYS1maWxlLWNpcmNsZS1xdWVzdGlvbjpiZWZvcmV7Y29udGVudDoiXGU0ZWYifS5mYS1sYXB0b3AtY29kZTpiZWZvcmV7Y29udGVudDoiXGY1ZmMifS5mYS1zd2F0Y2hib29rOmJlZm9yZXtjb250ZW50OiJcZjVjMyJ9LmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3Jle2NvbnRlbnQ6IlxmNDg1In0uZmEtYmFyczpiZWZvcmUsLmZhLW5hdmljb246YmVmb3Jle2NvbnRlbnQ6IlxmMGM5In0uZmEtcGVvcGxlLWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZTUzMyJ9LmZhLWhvdXJnbGFzcy0zOmJlZm9yZSwuZmEtaG91cmdsYXNzLWVuZDpiZWZvcmV7Y29udGVudDoiXGYyNTMifS5mYS1oZWFydC1icm9rZW46YmVmb3JlLC5mYS1oZWFydC1jcmFjazpiZWZvcmV7Y29udGVudDoiXGY3YTkifS5mYS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6YmVmb3JlLC5mYS1zcXVhcmUtdXAtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzYwIn0uZmEtZmFjZS1raXNzLWJlYW06YmVmb3JlLC5mYS1raXNzLWJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTk3In0uZmEtZmlsbTpiZWZvcmV7Y29udGVudDoiXGYwMDgifS5mYS1ydWxlci1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OiJcZjU0NyJ9LmZhLXBlb3BsZS1yb2JiZXJ5OmJlZm9yZXtjb250ZW50OiJcZTUzNiJ9LmZhLWxpZ2h0YnVsYjpiZWZvcmV7Y29udGVudDoiXGYwZWIifS5mYS1jYXJldC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjBkOSJ9LmZhLWNpcmNsZS1leGNsYW1hdGlvbjpiZWZvcmUsLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNmEifS5mYS1zY2hvb2wtY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTU2ZCJ9LmZhLWFycm93LXJpZ2h0LWZyb20tYnJhY2tldDpiZWZvcmUsLmZhLXNpZ24tb3V0OmJlZm9yZXtjb250ZW50OiJcZjA4YiJ9LmZhLWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlLC5mYS1jaXJjbGUtY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZjEzYSJ9LmZhLXVubG9jay1hbHQ6YmVmb3JlLC5mYS11bmxvY2sta2V5aG9sZTpiZWZvcmV7Y29udGVudDoiXGYxM2UifS5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZXtjb250ZW50OiJcZjc0MCJ9LmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSwuZmEtaGVhZHBob25lcy1zaW1wbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNThmIn0uZmEtc2l0ZW1hcDpiZWZvcmV7Y29udGVudDoiXGYwZTgifS5mYS1jaXJjbGUtZG9sbGFyLXRvLXNsb3Q6YmVmb3JlLC5mYS1kb25hdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGI5In0uZmEtbWVtb3J5OmJlZm9yZXtjb250ZW50OiJcZjUzOCJ9LmZhLXJvYWQtc3Bpa2VzOmJlZm9yZXtjb250ZW50OiJcZTU2OCJ9LmZhLWZpcmUtYnVybmVyOmJlZm9yZXtjb250ZW50OiJcZTRmMSJ9LmZhLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxmMDI0In0uZmEtaGFudWtpYWg6YmVmb3Jle2NvbnRlbnQ6IlxmNmU2In0uZmEtZmVhdGhlcjpiZWZvcmV7Y29udGVudDoiXGY1MmQifS5mYS12b2x1bWUtZG93bjpiZWZvcmUsLmZhLXZvbHVtZS1sb3c6YmVmb3Jle2NvbnRlbnQ6IlxmMDI3In0uZmEtY29tbWVudC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY0YjMifS5mYS1jbG91ZC1zdW4tcmFpbjpiZWZvcmV7Y29udGVudDoiXGY3NDMifS5mYS1jb21wcmVzczpiZWZvcmV7Y29udGVudDoiXGYwNjYifS5mYS13aGVhdC1hbHQ6YmVmb3JlLC5mYS13aGVhdC1hd246YmVmb3Jle2NvbnRlbnQ6IlxlMmNkIn0uZmEtYW5raDpiZWZvcmV7Y29udGVudDoiXGY2NDQifS5mYS1oYW5kcy1ob2xkaW5nLWNoaWxkOmJlZm9yZXtjb250ZW50OiJcZTRmYSJ9LmZhLWFzdGVyaXNrOmJlZm9yZXtjb250ZW50OiJcMmEifS5mYS1jaGVjay1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMTRhIn0uZmEtcGVzZXRhLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMjIxIn0uZmEtaGVhZGVyOmJlZm9yZSwuZmEtaGVhZGluZzpiZWZvcmV7Y29udGVudDoiXGYxZGMifS5mYS1naG9zdDpiZWZvcmV7Y29udGVudDoiXGY2ZTIifS5mYS1saXN0LXNxdWFyZXM6YmVmb3JlLC5mYS1saXN0OmJlZm9yZXtjb250ZW50OiJcZjAzYSJ9LmZhLXBob25lLXNxdWFyZS1hbHQ6YmVmb3JlLC5mYS1zcXVhcmUtcGhvbmUtZmxpcDpiZWZvcmV7Y29udGVudDoiXGY4N2IifS5mYS1jYXJ0LXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjE3In0uZmEtZ2FtZXBhZDpiZWZvcmV7Y29udGVudDoiXGYxMWIifS5mYS1jaXJjbGUtZG90OmJlZm9yZSwuZmEtZG90LWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxOTIifS5mYS1kaXp6eTpiZWZvcmUsLmZhLWZhY2UtZGl6enk6YmVmb3Jle2NvbnRlbnQ6IlxmNTY3In0uZmEtZWdnOmJlZm9yZXtjb250ZW50OiJcZjdmYiJ9LmZhLWhvdXNlLW1lZGljYWwtY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTUxMyJ9LmZhLWNhbXBncm91bmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmJiIn0uZmEtZm9sZGVyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmNjVlIn0uZmEtZnV0Ym9sLWJhbGw6YmVmb3JlLC5mYS1mdXRib2w6YmVmb3JlLC5mYS1zb2NjZXItYmFsbDpiZWZvcmV7Y29udGVudDoiXGYxZTMifS5mYS1wYWludC1icnVzaDpiZWZvcmUsLmZhLXBhaW50YnJ1c2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWZjIn0uZmEtbG9jazpiZWZvcmV7Y29udGVudDoiXGYwMjMifS5mYS1nYXMtcHVtcDpiZWZvcmV7Y29udGVudDoiXGY1MmYifS5mYS1ob3QtdHViLXBlcnNvbjpiZWZvcmUsLmZhLWhvdC10dWI6YmVmb3Jle2NvbnRlbnQ6IlxmNTkzIn0uZmEtbWFwLWxvY2F0aW9uOmJlZm9yZSwuZmEtbWFwLW1hcmtlZDpiZWZvcmV7Y29udGVudDoiXGY1OWYifS5mYS1ob3VzZS1mbG9vZC13YXRlcjpiZWZvcmV7Y29udGVudDoiXGU1MGUifS5mYS10cmVlOmJlZm9yZXtjb250ZW50OiJcZjFiYiJ9LmZhLWJyaWRnZS1sb2NrOmJlZm9yZXtjb250ZW50OiJcZTRjYyJ9LmZhLXNhY2stZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZjgxZCJ9LmZhLWVkaXQ6YmVmb3JlLC5mYS1wZW4tdG8tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA0NCJ9LmZhLWNhci1zaWRlOmJlZm9yZXtjb250ZW50OiJcZjVlNCJ9LmZhLXNoYXJlLWFsdDpiZWZvcmUsLmZhLXNoYXJlLW5vZGVzOmJlZm9yZXtjb250ZW50OiJcZjFlMCJ9LmZhLWhlYXJ0LWNpcmNsZS1taW51czpiZWZvcmV7Y29udGVudDoiXGU0ZmYifS5mYS1ob3VyZ2xhc3MtMjpiZWZvcmUsLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjI1MiJ9LmZhLW1pY3Jvc2NvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNjEwIn0uZmEtc2luazpiZWZvcmV7Y29udGVudDoiXGUwNmQifS5mYS1iYWctc2hvcHBpbmc6YmVmb3JlLC5mYS1zaG9wcGluZy1iYWc6YmVmb3Jle2NvbnRlbnQ6IlxmMjkwIn0uZmEtYXJyb3ctZG93bi16LWE6YmVmb3JlLC5mYS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlLC5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZXtjb250ZW50OiJcZjg4MSJ9LmZhLW1pdHRlbjpiZWZvcmV7Y29udGVudDoiXGY3YjUifS5mYS1wZXJzb24tcmF5czpiZWZvcmV7Y29udGVudDoiXGU1NGQifS5mYS11c2VyczpiZWZvcmV7Y29udGVudDoiXGYwYzAifS5mYS1leWUtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDcwIn0uZmEtZmxhc2stdmlhbDpiZWZvcmV7Y29udGVudDoiXGU0ZjMifS5mYS1oYW5kLXBhcGVyOmJlZm9yZSwuZmEtaGFuZDpiZWZvcmV7Y29udGVudDoiXGYyNTYifS5mYS1vbTpiZWZvcmV7Y29udGVudDoiXGY2NzkifS5mYS13b3JtOmJlZm9yZXtjb250ZW50OiJcZTU5OSJ9LmZhLWhvdXNlLWNpcmNsZS14bWFyazpiZWZvcmV7Y29udGVudDoiXGU1MGIifS5mYS1wbHVnOmJlZm9yZXtjb250ZW50OiJcZjFlNiJ9LmZhLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMDc3In0uZmEtaGFuZC1zcG9jazpiZWZvcmV7Y29udGVudDoiXGYyNTkifS5mYS1zdG9wd2F0Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmMmYyIn0uZmEtZmFjZS1raXNzOmJlZm9yZSwuZmEta2lzczpiZWZvcmV7Y29udGVudDoiXGY1OTYifS5mYS1icmlkZ2UtY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTRjYiJ9LmZhLWZhY2UtZ3Jpbi10b25ndWU6YmVmb3JlLC5mYS1ncmluLXRvbmd1ZTpiZWZvcmV7Y29udGVudDoiXGY1ODkifS5mYS1jaGVzcy1iaXNob3A6YmVmb3Jle2NvbnRlbnQ6IlxmNDNhIn0uZmEtZmFjZS1ncmluLXdpbms6YmVmb3JlLC5mYS1ncmluLXdpbms6YmVmb3Jle2NvbnRlbnQ6IlxmNThjIn0uZmEtZGVhZjpiZWZvcmUsLmZhLWRlYWZuZXNzOmJlZm9yZSwuZmEtZWFyLWRlYWY6YmVmb3JlLC5mYS1oYXJkLW9mLWhlYXJpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMmE0In0uZmEtcm9hZC1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNTY0In0uZmEtZGljZS1maXZlOmJlZm9yZXtjb250ZW50OiJcZjUyMyJ9LmZhLXJzcy1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtcnNzOmJlZm9yZXtjb250ZW50OiJcZjE0MyJ9LmZhLWxhbmQtbWluZS1vbjpiZWZvcmV7Y29udGVudDoiXGU1MWIifS5mYS1pLWN1cnNvcjpiZWZvcmV7Y29udGVudDoiXGYyNDYifS5mYS1zdGFtcDpiZWZvcmV7Y29udGVudDoiXGY1YmYifS5mYS1zdGFpcnM6YmVmb3Jle2NvbnRlbnQ6IlxlMjg5In0uZmEtaTpiZWZvcmV7Y29udGVudDoiXDQ5In0uZmEtaHJ5dm5pYS1zaWduOmJlZm9yZSwuZmEtaHJ5dm5pYTpiZWZvcmV7Y29udGVudDoiXGY2ZjIifS5mYS1waWxsczpiZWZvcmV7Y29udGVudDoiXGY0ODQifS5mYS1mYWNlLWdyaW4td2lkZTpiZWZvcmUsLmZhLWdyaW4tYWx0OmJlZm9yZXtjb250ZW50OiJcZjU4MSJ9LmZhLXRvb3RoOmJlZm9yZXtjb250ZW50OiJcZjVjOSJ9LmZhLXY6YmVmb3Jle2NvbnRlbnQ6Ilw1NiJ9LmZhLWJhbmdsYWRlc2hpLXRha2Etc2lnbjpiZWZvcmV7Y29udGVudDoiXGUyZTYifS5mYS1iaWN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjIwNiJ9LmZhLXJvZC1hc2NsZXBpdXM6YmVmb3JlLC5mYS1yb2Qtc25ha2U6YmVmb3JlLC5mYS1zdGFmZi1hZXNjdWxhcGl1czpiZWZvcmUsLmZhLXN0YWZmLXNuYWtlOmJlZm9yZXtjb250ZW50OiJcZTU3OSJ9LmZhLWhlYWQtc2lkZS1jb3VnaC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNjIifS5mYS1hbWJ1bGFuY2U6YmVmb3JlLC5mYS10cnVjay1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjBmOSJ9LmZhLXdoZWF0LWF3bi1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNTk4In0uZmEtc25vd21hbjpiZWZvcmV7Y29udGVudDoiXGY3ZDAifS5mYS1tb3J0YXItcGVzdGxlOmJlZm9yZXtjb250ZW50OiJcZjVhNyJ9LmZhLXJvYWQtYmFycmllcjpiZWZvcmV7Y29udGVudDoiXGU1NjIifS5mYS1zY2hvb2w6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ5In0uZmEtaWdsb286YmVmb3Jle2NvbnRlbnQ6IlxmN2FlIn0uZmEtam9pbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTk1In0uZmEtYW5nbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTA1In0uZmEtaG9yc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNmYwIn0uZmEtcTpiZWZvcmV7Y29udGVudDoiXDUxIn0uZmEtZzpiZWZvcmV7Y29udGVudDoiXDQ3In0uZmEtbm90ZXMtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0ODEifS5mYS10ZW1wZXJhdHVyZS0yOmJlZm9yZSwuZmEtdGVtcGVyYXR1cmUtaGFsZjpiZWZvcmUsLmZhLXRoZXJtb21ldGVyLTI6YmVmb3JlLC5mYS10aGVybW9tZXRlci1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjJjOSJ9LmZhLWRvbmctc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxNjkifS5mYS1jYXBzdWxlczpiZWZvcmV7Y29udGVudDoiXGY0NmIifS5mYS1wb28tYm9sdDpiZWZvcmUsLmZhLXBvby1zdG9ybTpiZWZvcmV7Y29udGVudDoiXGY3NWEifS5mYS1mYWNlLWZyb3duLW9wZW46YmVmb3JlLC5mYS1mcm93bi1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjU3YSJ9LmZhLWhhbmQtcG9pbnQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGE2In0uZmEtbW9uZXktYmlsbDpiZWZvcmV7Y29udGVudDoiXGYwZDYifS5mYS1ib29rbWFyazpiZWZvcmV7Y29udGVudDoiXGYwMmUifS5mYS1hbGlnbi1qdXN0aWZ5OmJlZm9yZXtjb250ZW50OiJcZjAzOSJ9LmZhLXVtYnJlbGxhLWJlYWNoOmJlZm9yZXtjb250ZW50OiJcZjVjYSJ9LmZhLWhlbG1ldC11bjpiZWZvcmV7Y29udGVudDoiXGU1MDMifS5mYS1idWxsc2V5ZTpiZWZvcmV7Y29udGVudDoiXGYxNDAifS5mYS1iYWNvbjpiZWZvcmV7Y29udGVudDoiXGY3ZTUifS5mYS1oYW5kLXBvaW50LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMGE3In0uZmEtYXJyb3ctdXAtZnJvbS1icmFja2V0OmJlZm9yZXtjb250ZW50OiJcZTA5YSJ9LmZhLWZvbGRlci1ibGFuazpiZWZvcmUsLmZhLWZvbGRlcjpiZWZvcmV7Y29udGVudDoiXGYwN2IifS5mYS1maWxlLW1lZGljYWwtYWx0OmJlZm9yZSwuZmEtZmlsZS13YXZlZm9ybTpiZWZvcmV7Y29udGVudDoiXGY0NzgifS5mYS1yYWRpYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmN2I5In0uZmEtY2hhcnQtc2ltcGxlOmJlZm9yZXtjb250ZW50OiJcZTQ3MyJ9LmZhLW1hcnMtc3Ryb2tlOmJlZm9yZXtjb250ZW50OiJcZjIyOSJ9LmZhLXZpYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNDkyIn0uZmEtZGFzaGJvYXJkOmJlZm9yZSwuZmEtZ2F1Z2UtbWVkOmJlZm9yZSwuZmEtZ2F1Z2U6YmVmb3JlLC5mYS10YWNob21ldGVyLWFsdC1hdmVyYWdlOmJlZm9yZXtjb250ZW50OiJcZjYyNCJ9LmZhLW1hZ2ljLXdhbmQtc3BhcmtsZXM6YmVmb3JlLC5mYS13YW5kLW1hZ2ljLXNwYXJrbGVzOmJlZm9yZXtjb250ZW50OiJcZTJjYSJ9LmZhLWU6YmVmb3Jle2NvbnRlbnQ6Ilw0NSJ9LmZhLXBlbi1hbHQ6YmVmb3JlLC5mYS1wZW4tY2xpcDpiZWZvcmV7Y29udGVudDoiXGYzMDUifS5mYS1icmlkZ2UtY2lyY2xlLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTRjYSJ9LmZhLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA3In0uZmEtc2Nob29sLWNpcmNsZS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU1NmIifS5mYS1kdW1wc3RlcjpiZWZvcmV7Y29udGVudDoiXGY3OTMifS5mYS1zaHV0dGxlLXZhbjpiZWZvcmUsLmZhLXZhbi1zaHV0dGxlOmJlZm9yZXtjb250ZW50OiJcZjViNiJ9LmZhLWJ1aWxkaW5nLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxlNGRhIn0uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlLC5mYS1zcXVhcmUtY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxOTEifS5mYS1oaWdobGlnaHRlcjpiZWZvcmV7Y29udGVudDoiXGY1OTEifS5mYS1rZXk6YmVmb3Jle2NvbnRlbnQ6IlxmMDg0In0uZmEtYnVsbGhvcm46YmVmb3Jle2NvbnRlbnQ6IlxmMGExIn0uZmEtZ2xvYmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGFjIn0uZmEtc3luYWdvZ3VlOmJlZm9yZXtjb250ZW50OiJcZjY5YiJ9LmZhLXBlcnNvbi1oYWxmLWRyZXNzOmJlZm9yZXtjb250ZW50OiJcZTU0OCJ9LmZhLXJvYWQtYnJpZGdlOmJlZm9yZXtjb250ZW50OiJcZTU2MyJ9LmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZXtjb250ZW50OiJcZjEyNCJ9LmZhLWM6YmVmb3Jle2NvbnRlbnQ6Ilw0MyJ9LmZhLXRhYmxldC1idXR0b246YmVmb3Jle2NvbnRlbnQ6IlxmMTBhIn0uZmEtYnVpbGRpbmctbG9jazpiZWZvcmV7Y29udGVudDoiXGU0ZDYifS5mYS1waXp6YS1zbGljZTpiZWZvcmV7Y29udGVudDoiXGY4MTgifS5mYS1tb25leS1iaWxsLXdhdmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTNhIn0uZmEtYXJlYS1jaGFydDpiZWZvcmUsLmZhLWNoYXJ0LWFyZWE6YmVmb3Jle2NvbnRlbnQ6IlxmMWZlIn0uZmEtaG91c2UtZmxhZzpiZWZvcmV7Y29udGVudDoiXGU1MGQifS5mYS1wZXJzb24tY2lyY2xlLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZTU0MCJ9LmZhLWJhbjpiZWZvcmUsLmZhLWNhbmNlbDpiZWZvcmV7Y29udGVudDoiXGYwNWUifS5mYS1jYW1lcmEtcm90YXRlOmJlZm9yZXtjb250ZW50OiJcZTBkOCJ9LmZhLWFpci1mcmVzaGVuZXI6YmVmb3JlLC5mYS1zcHJheS1jYW4tc3BhcmtsZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNWQwIn0uZmEtc3RhcjpiZWZvcmV7Y29udGVudDoiXGYwMDUifS5mYS1yZXBlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzYzIn0uZmEtY3Jvc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNjU0In0uZmEtYm94OmJlZm9yZXtjb250ZW50OiJcZjQ2NiJ9LmZhLXZlbnVzLW1hcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjI4In0uZmEtYXJyb3ctcG9pbnRlcjpiZWZvcmUsLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ1In0uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlLC5mYS1tYXhpbWl6ZTpiZWZvcmV7Y29udGVudDoiXGYzMWUifS5mYS1jaGFyZ2luZy1zdGF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjVlNyJ9LmZhLXNoYXBlczpiZWZvcmUsLmZhLXRyaWFuZ2xlLWNpcmNsZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNjFmIn0uZmEtcmFuZG9tOmJlZm9yZSwuZmEtc2h1ZmZsZTpiZWZvcmV7Y29udGVudDoiXGYwNzQifS5mYS1wZXJzb24tcnVubmluZzpiZWZvcmUsLmZhLXJ1bm5pbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNzBjIn0uZmEtbW9iaWxlLXJldHJvOmJlZm9yZXtjb250ZW50OiJcZTUyNyJ9LmZhLWdyaXAtbGluZXMtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmN2E1In0uZmEtc3BpZGVyOmJlZm9yZXtjb250ZW50OiJcZjcxNyJ9LmZhLWhhbmRzLWJvdW5kOmJlZm9yZXtjb250ZW50OiJcZTRmOSJ9LmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTcxIn0uZmEtcGxhbmUtY2lyY2xlLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTU1NiJ9LmZhLXgtcmF5OmJlZm9yZXtjb250ZW50OiJcZjQ5NyJ9LmZhLXNwZWxsLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjg5MSJ9LmZhLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjcxNSJ9LmZhLWNvbXB1dGVyLW1vdXNlOmJlZm9yZSwuZmEtbW91c2U6YmVmb3Jle2NvbnRlbnQ6IlxmOGNjIn0uZmEtYXJyb3ctcmlnaHQtdG8tYnJhY2tldDpiZWZvcmUsLmZhLXNpZ24taW46YmVmb3Jle2NvbnRlbnQ6IlxmMDkwIn0uZmEtc2hvcC1zbGFzaDpiZWZvcmUsLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNzAifS5mYS1zZXJ2ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjMzIn0uZmEtdmlydXMtY292aWQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlNGE5In0uZmEtc2hvcC1sb2NrOmJlZm9yZXtjb250ZW50OiJcZTRhNSJ9LmZhLWhvdXJnbGFzcy0xOmJlZm9yZSwuZmEtaG91cmdsYXNzLXN0YXJ0OmJlZm9yZXtjb250ZW50OiJcZjI1MSJ9LmZhLWJsZW5kZXItcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmNmI2In0uZmEtYnVpbGRpbmctd2hlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNGRiIn0uZmEtcGVyc29uLWJyZWFzdGZlZWRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNTNhIn0uZmEtcmlnaHQtdG8tYnJhY2tldDpiZWZvcmUsLmZhLXNpZ24taW4tYWx0OmJlZm9yZXtjb250ZW50OiJcZjJmNiJ9LmZhLXZlbnVzOmJlZm9yZXtjb250ZW50OiJcZjIyMSJ9LmZhLXBhc3Nwb3J0OmJlZm9yZXtjb250ZW50OiJcZjVhYiJ9LmZhLWhlYXJ0LXB1bHNlOmJlZm9yZSwuZmEtaGVhcnRiZWF0OmJlZm9yZXtjb250ZW50OiJcZjIxZSJ9LmZhLXBlb3BsZS1jYXJyeS1ib3g6YmVmb3JlLC5mYS1wZW9wbGUtY2Fycnk6YmVmb3Jle2NvbnRlbnQ6IlxmNGNlIn0uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmV7Y29udGVudDoiXGY3NjkifS5mYS1taWNyb2NoaXA6YmVmb3Jle2NvbnRlbnQ6IlxmMmRiIn0uZmEtY3Jvd246YmVmb3Jle2NvbnRlbnQ6IlxmNTIxIn0uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNWNkIn0uZmEteG1hcmtzLWxpbmVzOmJlZm9yZXtjb250ZW50OiJcZTU5YSJ9LmZhLWZpbGUtcHJlc2NyaXB0aW9uOmJlZm9yZXtjb250ZW50OiJcZjU3MiJ9LmZhLXdlaWdodC1zY2FsZTpiZWZvcmUsLmZhLXdlaWdodDpiZWZvcmV7Y29udGVudDoiXGY0OTYifS5mYS11c2VyLWZyaWVuZHM6YmVmb3JlLC5mYS11c2VyLWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjUwMCJ9LmZhLWFycm93LXVwLWEtejpiZWZvcmUsLmZhLXNvcnQtYWxwaGEtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTVlIn0uZmEtY2hlc3Mta25pZ2h0OmJlZm9yZXtjb250ZW50OiJcZjQ0MSJ9LmZhLWZhY2UtbGF1Z2gtc3F1aW50OmJlZm9yZSwuZmEtbGF1Z2gtc3F1aW50OmJlZm9yZXtjb250ZW50OiJcZjU5YiJ9LmZhLXdoZWVsY2hhaXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTkzIn0uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSwuZmEtY2lyY2xlLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjBhYSJ9LmZhLXRvZ2dsZS1vbjpiZWZvcmV7Y29udGVudDoiXGYyMDUifS5mYS1wZXJzb24td2Fsa2luZzpiZWZvcmUsLmZhLXdhbGtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNTU0In0uZmEtbDpiZWZvcmV7Y29udGVudDoiXDRjIn0uZmEtZmlyZTpiZWZvcmV7Y29udGVudDoiXGYwNmQifS5mYS1iZWQtcHVsc2U6YmVmb3JlLC5mYS1wcm9jZWR1cmVzOmJlZm9yZXtjb250ZW50OiJcZjQ4NyJ9LmZhLXNodXR0bGUtc3BhY2U6YmVmb3JlLC5mYS1zcGFjZS1zaHV0dGxlOmJlZm9yZXtjb250ZW50OiJcZjE5NyJ9LmZhLWZhY2UtbGF1Z2g6YmVmb3JlLC5mYS1sYXVnaDpiZWZvcmV7Y29udGVudDoiXGY1OTkifS5mYS1mb2xkZXItb3BlbjpiZWZvcmV7Y29udGVudDoiXGYwN2MifS5mYS1oZWFydC1jaXJjbGUtcGx1czpiZWZvcmV7Y29udGVudDoiXGU1MDAifS5mYS1jb2RlLWZvcms6YmVmb3Jle2NvbnRlbnQ6IlxlMTNiIn0uZmEtY2l0eTpiZWZvcmV7Y29udGVudDoiXGY2NGYifS5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUsLmZhLW1pY3JvcGhvbmUtbGluZXM6YmVmb3Jle2NvbnRlbnQ6IlxmM2M5In0uZmEtcGVwcGVyLWhvdDpiZWZvcmV7Y29udGVudDoiXGY4MTYifS5mYS11bmxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDljIn0uZmEtY29sb24tc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxNDAifS5mYS1oZWFkc2V0OmJlZm9yZXtjb250ZW50OiJcZjU5MCJ9LmZhLXN0b3JlLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTA3MSJ9LmZhLXJvYWQtY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTU2NiJ9LmZhLXVzZXItbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTAzIn0uZmEtbWFycy1zdHJva2UtdXA6YmVmb3JlLC5mYS1tYXJzLXN0cm9rZS12OmJlZm9yZXtjb250ZW50OiJcZjIyYSJ9LmZhLWNoYW1wYWduZS1nbGFzc2VzOmJlZm9yZSwuZmEtZ2xhc3MtY2hlZXJzOmJlZm9yZXtjb250ZW50OiJcZjc5ZiJ9LmZhLWNsaXBib2FyZDpiZWZvcmV7Y29udGVudDoiXGYzMjgifS5mYS1ob3VzZS1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNTBhIn0uZmEtZmlsZS1hcnJvdy11cDpiZWZvcmUsLmZhLWZpbGUtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjU3NCJ9LmZhLXdpZmktMzpiZWZvcmUsLmZhLXdpZmktc3Ryb25nOmJlZm9yZSwuZmEtd2lmaTpiZWZvcmV7Y29udGVudDoiXGYxZWIifS5mYS1iYXRoOmJlZm9yZSwuZmEtYmF0aHR1YjpiZWZvcmV7Y29udGVudDoiXGYyY2QifS5mYS11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNkIn0uZmEtdXNlci1lZGl0OmJlZm9yZSwuZmEtdXNlci1wZW46YmVmb3Jle2NvbnRlbnQ6IlxmNGZmIn0uZmEtc2lnbmF0dXJlOmJlZm9yZXtjb250ZW50OiJcZjViNyJ9LmZhLXN0cm9vcHdhZmVsOmJlZm9yZXtjb250ZW50OiJcZjU1MSJ9LmZhLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMyIn0uZmEtYW5jaG9yLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNGFkIn0uZmEtYnVpbGRpbmctbmdvOmJlZm9yZXtjb250ZW50OiJcZTRkNyJ9LmZhLW1hbmF0LXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMWQ1In0uZmEtbm90LWVxdWFsOmJlZm9yZXtjb250ZW50OiJcZjUzZSJ9LmZhLWJvcmRlci1zdHlsZTpiZWZvcmUsLmZhLWJvcmRlci10b3AtbGVmdDpiZWZvcmV7Y29udGVudDoiXGY4NTMifS5mYS1tYXAtbG9jYXRpb24tZG90OmJlZm9yZSwuZmEtbWFwLW1hcmtlZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWEwIn0uZmEtamVkaTpiZWZvcmV7Y29udGVudDoiXGY2NjkifS5mYS1wb2xsOmJlZm9yZSwuZmEtc3F1YXJlLXBvbGwtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNjgxIn0uZmEtbXVnLWhvdDpiZWZvcmV7Y29udGVudDoiXGY3YjYifS5mYS1iYXR0ZXJ5LWNhcjpiZWZvcmUsLmZhLWNhci1iYXR0ZXJ5OmJlZm9yZXtjb250ZW50OiJcZjVkZiJ9LmZhLWdpZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDZiIn0uZmEtZGljZS10d286YmVmb3Jle2NvbnRlbnQ6IlxmNTI4In0uZmEtY2hlc3MtcXVlZW46YmVmb3Jle2NvbnRlbnQ6IlxmNDQ1In0uZmEtZ2xhc3NlczpiZWZvcmV7Y29udGVudDoiXGY1MzAifS5mYS1jaGVzcy1ib2FyZDpiZWZvcmV7Y29udGVudDoiXGY0M2MifS5mYS1idWlsZGluZy1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNGQyIn0uZmEtcGVyc29uLWNoYWxrYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTNkIn0uZmEtbWFycy1zdHJva2UtaDpiZWZvcmUsLmZhLW1hcnMtc3Ryb2tlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjIyYiJ9LmZhLWhhbmQtYmFjay1maXN0OmJlZm9yZSwuZmEtaGFuZC1yb2NrOmJlZm9yZXtjb250ZW50OiJcZjI1NSJ9LmZhLWNhcmV0LXNxdWFyZS11cDpiZWZvcmUsLmZhLXNxdWFyZS1jYXJldC11cDpiZWZvcmV7Y29udGVudDoiXGYxNTEifS5mYS1jbG91ZC1zaG93ZXJzLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZTRlNCJ9LmZhLWJhci1jaGFydDpiZWZvcmUsLmZhLWNoYXJ0LWJhcjpiZWZvcmV7Y29udGVudDoiXGYwODAifS5mYS1oYW5kcy1idWJibGVzOmJlZm9yZSwuZmEtaGFuZHMtd2FzaDpiZWZvcmV7Y29udGVudDoiXGUwNWUifS5mYS1sZXNzLXRoYW4tZXF1YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTM3In0uZmEtdHJhaW46YmVmb3Jle2NvbnRlbnQ6IlxmMjM4In0uZmEtZXllLWxvdy12aXNpb246YmVmb3JlLC5mYS1sb3ctdmlzaW9uOmJlZm9yZXtjb250ZW50OiJcZjJhOCJ9LmZhLWNyb3c6YmVmb3Jle2NvbnRlbnQ6IlxmNTIwIn0uZmEtc2FpbGJvYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNDQ1In0uZmEtd2luZG93LXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMmQyIn0uZmEtcGx1cy1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtcGx1czpiZWZvcmV7Y29udGVudDoiXGYwZmUifS5mYS10b3JpaS1nYXRlOmJlZm9yZXtjb250ZW50OiJcZjZhMSJ9LmZhLWZyb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNTJlIn0uZmEtYnVja2V0OmJlZm9yZXtjb250ZW50OiJcZTRjZiJ9LmZhLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZjAzZSJ9LmZhLW1pY3JvcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTMwIn0uZmEtY293OmJlZm9yZXtjb250ZW50OiJcZjZjOCJ9LmZhLWNhcmV0LXVwOmJlZm9yZXtjb250ZW50OiJcZjBkOCJ9LmZhLXNjcmV3ZHJpdmVyOmJlZm9yZXtjb250ZW50OiJcZjU0YSJ9LmZhLWZvbGRlci1jbG9zZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTg1In0uZmEtaG91c2UtdHN1bmFtaTpiZWZvcmV7Y29udGVudDoiXGU1MTUifS5mYS1zcXVhcmUtbmZpOmJlZm9yZXtjb250ZW50OiJcZTU3NiJ9LmZhLWFycm93LXVwLWZyb20tZ3JvdW5kLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZTRiNSJ9LmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSwuZmEtbWFydGluaS1nbGFzczpiZWZvcmV7Y29udGVudDoiXGY1N2IifS5mYS1yb3RhdGUtYmFjazpiZWZvcmUsLmZhLXJvdGF0ZS1iYWNrd2FyZDpiZWZvcmUsLmZhLXJvdGF0ZS1sZWZ0OmJlZm9yZSwuZmEtdW5kby1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmVhIn0uZmEtY29sdW1uczpiZWZvcmUsLmZhLXRhYmxlLWNvbHVtbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMGRiIn0uZmEtbGVtb246YmVmb3Jle2NvbnRlbnQ6IlxmMDk0In0uZmEtaGVhZC1zaWRlLW1hc2s6YmVmb3Jle2NvbnRlbnQ6IlxlMDYzIn0uZmEtaGFuZHNoYWtlOmJlZm9yZXtjb250ZW50OiJcZjJiNSJ9LmZhLWdlbTpiZWZvcmV7Y29udGVudDoiXGYzYTUifS5mYS1kb2xseS1ib3g6YmVmb3JlLC5mYS1kb2xseTpiZWZvcmV7Y29udGVudDoiXGY0NzIifS5mYS1zbW9raW5nOmJlZm9yZXtjb250ZW50OiJcZjQ4ZCJ9LmZhLWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3JlLC5mYS1taW5pbWl6ZTpiZWZvcmV7Y29udGVudDoiXGY3OGMifS5mYS1tb251bWVudDpiZWZvcmV7Y29udGVudDoiXGY1YTYifS5mYS1zbm93cGxvdzpiZWZvcmV7Y29udGVudDoiXGY3ZDIifS5mYS1hbmdsZS1kb3VibGUtcmlnaHQ6YmVmb3JlLC5mYS1hbmdsZXMtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTAxIn0uZmEtY2FubmFiaXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTVmIn0uZmEtY2lyY2xlLXBsYXk6YmVmb3JlLC5mYS1wbGF5LWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxNDQifS5mYS10YWJsZXRzOmJlZm9yZXtjb250ZW50OiJcZjQ5MCJ9LmZhLWV0aGVybmV0OmJlZm9yZXtjb250ZW50OiJcZjc5NiJ9LmZhLWV1cjpiZWZvcmUsLmZhLWV1cm8tc2lnbjpiZWZvcmUsLmZhLWV1cm86YmVmb3Jle2NvbnRlbnQ6IlxmMTUzIn0uZmEtY2hhaXI6YmVmb3Jle2NvbnRlbnQ6IlxmNmMwIn0uZmEtY2hlY2stY2lyY2xlOmJlZm9yZSwuZmEtY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjA1OCJ9LmZhLWNpcmNsZS1zdG9wOmJlZm9yZSwuZmEtc3RvcC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjhkIn0uZmEtY29tcGFzcy1kcmFmdGluZzpiZWZvcmUsLmZhLWRyYWZ0aW5nLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNTY4In0uZmEtcGxhdGUtd2hlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTVhIn0uZmEtaWNpY2xlczpiZWZvcmV7Y29udGVudDoiXGY3YWQifS5mYS1wZXJzb24tc2hlbHRlcjpiZWZvcmV7Y29udGVudDoiXGU1NGYifS5mYS1uZXV0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjJjIn0uZmEtaWQtYmFkZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMmMxIn0uZmEtbWFya2VyOmJlZm9yZXtjb250ZW50OiJcZjVhMSJ9LmZhLWZhY2UtbGF1Z2gtYmVhbTpiZWZvcmUsLmZhLWxhdWdoLWJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTlhIn0uZmEtaGVsaWNvcHRlci1zeW1ib2w6YmVmb3Jle2NvbnRlbnQ6IlxlNTAyIn0uZmEtdW5pdmVyc2FsLWFjY2VzczpiZWZvcmV7Y29udGVudDoiXGYyOWEifS5mYS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUsLmZhLWNpcmNsZS1jaGV2cm9uLXVwOmJlZm9yZXtjb250ZW50OiJcZjEzOSJ9LmZhLWxhcmktc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxYzgifS5mYS12b2xjYW5vOmJlZm9yZXtjb250ZW50OiJcZjc3MCJ9LmZhLXBlcnNvbi13YWxraW5nLWRhc2hlZC1saW5lLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTU1MyJ9LmZhLWdicDpiZWZvcmUsLmZhLXBvdW5kLXNpZ246YmVmb3JlLC5mYS1zdGVybGluZy1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1NCJ9LmZhLXZpcnVzZXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDc2In0uZmEtc3F1YXJlLXBlcnNvbi1jb25maW5lZDpiZWZvcmV7Y29udGVudDoiXGU1NzcifS5mYS11c2VyLXRpZTpiZWZvcmV7Y29udGVudDoiXGY1MDgifS5mYS1hcnJvdy1kb3duLWxvbmc6YmVmb3JlLC5mYS1sb25nLWFycm93LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTc1In0uZmEtdGVudC1hcnJvdy1kb3duLXRvLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNTdlIn0uZmEtY2VydGlmaWNhdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGEzIn0uZmEtbWFpbC1yZXBseS1hbGw6YmVmb3JlLC5mYS1yZXBseS1hbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMTIyIn0uZmEtc3VpdGNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGYyIn0uZmEtcGVyc29uLXNrYXRpbmc6YmVmb3JlLC5mYS1za2F0aW5nOmJlZm9yZXtjb250ZW50OiJcZjdjNSJ9LmZhLWZpbHRlci1jaXJjbGUtZG9sbGFyOmJlZm9yZSwuZmEtZnVubmVsLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2NjIifS5mYS1jYW1lcmEtcmV0cm86YmVmb3Jle2NvbnRlbnQ6IlxmMDgzIn0uZmEtYXJyb3ctY2lyY2xlLWRvd246YmVmb3JlLC5mYS1jaXJjbGUtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYWIifS5mYS1hcnJvdy1yaWdodC10by1maWxlOmJlZm9yZSwuZmEtZmlsZS1pbXBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTZmIn0uZmEtZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtYXJyb3ctdXAtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTRjIn0uZmEtYm94LW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmNDllIn0uZmEtc2Nyb2xsOmJlZm9yZXtjb250ZW50OiJcZjcwZSJ9LmZhLXNwYTpiZWZvcmV7Y29udGVudDoiXGY1YmIifS5mYS1sb2NhdGlvbi1waW4tbG9jazpiZWZvcmV7Y29udGVudDoiXGU1MWYifS5mYS1wYXVzZTpiZWZvcmV7Y29udGVudDoiXGYwNGMifS5mYS1oaWxsLWF2YWxhbmNoZTpiZWZvcmV7Y29udGVudDoiXGU1MDcifS5mYS10ZW1wZXJhdHVyZS0wOmJlZm9yZSwuZmEtdGVtcGVyYXR1cmUtZW1wdHk6YmVmb3JlLC5mYS10aGVybW9tZXRlci0wOmJlZm9yZSwuZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMmNiIn0uZmEtYm9tYjpiZWZvcmV7Y29udGVudDoiXGYxZTIifS5mYS1yZWdpc3RlcmVkOmJlZm9yZXtjb250ZW50OiJcZjI1ZCJ9LmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUsLmZhLWNvbnRhY3QtY2FyZDpiZWZvcmUsLmZhLXZjYXJkOmJlZm9yZXtjb250ZW50OiJcZjJiYiJ9LmZhLWJhbGFuY2Utc2NhbGUtcmlnaHQ6YmVmb3JlLC5mYS1zY2FsZS11bmJhbGFuY2VkLWZsaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTE2In0uZmEtc3Vic2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZjEyYyJ9LmZhLWRpYW1vbmQtdHVybi1yaWdodDpiZWZvcmUsLmZhLWRpcmVjdGlvbnM6YmVmb3Jle2NvbnRlbnQ6IlxmNWViIn0uZmEtYnVyc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlNGRjIn0uZmEtaG91c2UtbGFwdG9wOmJlZm9yZSwuZmEtbGFwdG9wLWhvdXNlOmJlZm9yZXtjb250ZW50OiJcZTA2NiJ9LmZhLWZhY2UtdGlyZWQ6YmVmb3JlLC5mYS10aXJlZDpiZWZvcmV7Y29udGVudDoiXGY1YzgifS5mYS1tb25leS1iaWxsczpiZWZvcmV7Y29udGVudDoiXGUxZjMifS5mYS1zbW9nOmJlZm9yZXtjb250ZW50OiJcZjc1ZiJ9LmZhLWNydXRjaDpiZWZvcmV7Y29udGVudDoiXGY3ZjcifS5mYS1jbG91ZC1hcnJvdy11cDpiZWZvcmUsLmZhLWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3JlLC5mYS1jbG91ZC11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGVlIn0uZmEtcGFsZXR0ZTpiZWZvcmV7Y29udGVudDoiXGY1M2YifS5mYS1hcnJvd3MtdHVybi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU0YzAifS5mYS12ZXN0OmJlZm9yZXtjb250ZW50OiJcZTA4NSJ9LmZhLWZlcnJ5OmJlZm9yZXtjb250ZW50OiJcZTRlYSJ9LmZhLWFycm93cy1kb3duLXRvLXBlb3BsZTpiZWZvcmV7Y29udGVudDoiXGU0YjkifS5mYS1zZWVkbGluZzpiZWZvcmUsLmZhLXNwcm91dDpiZWZvcmV7Y29udGVudDoiXGY0ZDgifS5mYS1hcnJvd3MtYWx0LWg6YmVmb3JlLC5mYS1sZWZ0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjMzNyJ9LmZhLWJveGVzLXBhY2tpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNGM3In0uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlLC5mYS1jaXJjbGUtYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwYTgifS5mYS1ncm91cC1hcnJvd3Mtcm90YXRlOmJlZm9yZXtjb250ZW50OiJcZTRmNiJ9LmZhLWJvd2wtZm9vZDpiZWZvcmV7Y29udGVudDoiXGU0YzYifS5mYS1jYW5keS1jYW5lOmJlZm9yZXtjb250ZW50OiJcZjc4NiJ9LmZhLWFycm93LWRvd24td2lkZS1zaG9ydDpiZWZvcmUsLmZhLXNvcnQtYW1vdW50LWFzYzpiZWZvcmUsLmZhLXNvcnQtYW1vdW50LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTYwIn0uZmEtY2xvdWQtYm9sdDpiZWZvcmUsLmZhLXRodW5kZXJzdG9ybTpiZWZvcmV7Y29udGVudDoiXGY3NmMifS5mYS1yZW1vdmUtZm9ybWF0OmJlZm9yZSwuZmEtdGV4dC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY4N2QifS5mYS1mYWNlLXNtaWxlLXdpbms6YmVmb3JlLC5mYS1zbWlsZS13aW5rOmJlZm9yZXtjb250ZW50OiJcZjRkYSJ9LmZhLWZpbGUtd29yZDpiZWZvcmV7Y29udGVudDoiXGYxYzIifS5mYS1maWxlLXBvd2VycG9pbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWM0In0uZmEtYXJyb3dzLWg6YmVmb3JlLC5mYS1hcnJvd3MtbGVmdC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwN2UifS5mYS1ob3VzZS1sb2NrOmJlZm9yZXtjb250ZW50OiJcZTUxMCJ9LmZhLWNsb3VkLWFycm93LWRvd246YmVmb3JlLC5mYS1jbG91ZC1kb3dubG9hZC1hbHQ6YmVmb3JlLC5mYS1jbG91ZC1kb3dubG9hZDpiZWZvcmV7Y29udGVudDoiXGYwZWQifS5mYS1jaGlsZHJlbjpiZWZvcmV7Y29udGVudDoiXGU0ZTEifS5mYS1ibGFja2JvYXJkOmJlZm9yZSwuZmEtY2hhbGtib2FyZDpiZWZvcmV7Y29udGVudDoiXGY1MWIifS5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUsLmZhLXVzZXItbGFyZ2Utc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNGZhIn0uZmEtZW52ZWxvcGUtb3BlbjpiZWZvcmV7Y29udGVudDoiXGYyYjYifS5mYS1oYW5kc2hha2UtYWx0LXNsYXNoOmJlZm9yZSwuZmEtaGFuZHNoYWtlLXNpbXBsZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNWYifS5mYS1tYXR0cmVzcy1waWxsb3c6YmVmb3Jle2NvbnRlbnQ6IlxlNTI1In0uZmEtZ3VhcmFuaS1zaWduOmJlZm9yZXtjb250ZW50OiJcZTE5YSJ9LmZhLWFycm93cy1yb3RhdGU6YmVmb3JlLC5mYS1yZWZyZXNoOmJlZm9yZSwuZmEtc3luYzpiZWZvcmV7Y29udGVudDoiXGYwMjEifS5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmV7Y29udGVudDoiXGYxMzQifS5mYS1jcnV6ZWlyby1zaWduOmJlZm9yZXtjb250ZW50OiJcZTE1MiJ9LmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmV7Y29udGVudDoiXGY1MzIifS5mYS1zaGllbGQtYWx0OmJlZm9yZSwuZmEtc2hpZWxkLWhhbHZlZDpiZWZvcmV7Y29udGVudDoiXGYzZWQifS5mYS1hdGxhczpiZWZvcmUsLmZhLWJvb2stYXRsYXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTU4In0uZmEtdmlydXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDc0In0uZmEtZW52ZWxvcGUtY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTRlOCJ9LmZhLWxheWVyLWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjVmZCJ9LmZhLWFycm93cy10by1kb3Q6YmVmb3Jle2NvbnRlbnQ6IlxlNGJlIn0uZmEtYXJjaHdheTpiZWZvcmV7Y29udGVudDoiXGY1NTcifS5mYS1oZWFydC1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNGZkIn0uZmEtaG91c2UtY2hpbW5leS1jcmFjazpiZWZvcmUsLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmV7Y29udGVudDoiXGY2ZjEifS5mYS1maWxlLWFyY2hpdmU6YmVmb3JlLC5mYS1maWxlLXppcHBlcjpiZWZvcmV7Y29udGVudDoiXGYxYzYifS5mYS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGM4In0uZmEtZ2xhc3MtbWFydGluaTpiZWZvcmUsLmZhLW1hcnRpbmktZ2xhc3MtZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIn0uZmEtY291Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmNGI4In0uZmEtY2VkaS1zaWduOmJlZm9yZXtjb250ZW50OiJcZTBkZiJ9LmZhLWl0YWxpYzpiZWZvcmV7Y29udGVudDoiXGYwMzMifS5mYS1jaHVyY2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTFkIn0uZmEtY29tbWVudHMtZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZjY1MyJ9LmZhLWRlbW9jcmF0OmJlZm9yZXtjb250ZW50OiJcZjc0NyJ9LmZhLXo6YmVmb3Jle2NvbnRlbnQ6Ilw1YSJ9LmZhLXBlcnNvbi1za2lpbmc6YmVmb3JlLC5mYS1za2lpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmN2M5In0uZmEtcm9hZC1sb2NrOmJlZm9yZXtjb250ZW50OiJcZTU2NyJ9LmZhLWE6YmVmb3Jle2NvbnRlbnQ6Ilw0MSJ9LmZhLXRlbXBlcmF0dXJlLWFycm93LWRvd246YmVmb3JlLC5mYS10ZW1wZXJhdHVyZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTAzZiJ9LmZhLWZlYXRoZXItYWx0OmJlZm9yZSwuZmEtZmVhdGhlci1wb2ludGVkOmJlZm9yZXtjb250ZW50OiJcZjU2YiJ9LmZhLXA6YmVmb3Jle2NvbnRlbnQ6Ilw1MCJ9LmZhLXNub3dmbGFrZTpiZWZvcmV7Y29udGVudDoiXGYyZGMifS5mYS1uZXdzcGFwZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWVhIn0uZmEtYWQ6YmVmb3JlLC5mYS1yZWN0YW5nbGUtYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjQxIn0uZmEtYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSwuZmEtY2lyY2xlLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBhOSJ9LmZhLWZpbHRlci1jaXJjbGUteG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxlMTdiIn0uZmEtbG9jdXN0OmJlZm9yZXtjb250ZW50OiJcZTUyMCJ9LmZhLXNvcnQ6YmVmb3JlLC5mYS11bnNvcnRlZDpiZWZvcmV7Y29udGVudDoiXGYwZGMifS5mYS1saXN0LTEtMjpiZWZvcmUsLmZhLWxpc3QtbnVtZXJpYzpiZWZvcmUsLmZhLWxpc3Qtb2w6YmVmb3Jle2NvbnRlbnQ6IlxmMGNiIn0uZmEtcGVyc29uLWRyZXNzLWJ1cnN0OmJlZm9yZXtjb250ZW50OiJcZTU0NCJ9LmZhLW1vbmV5LWNoZWNrLWFsdDpiZWZvcmUsLmZhLW1vbmV5LWNoZWNrLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY1M2QifS5mYS12ZWN0b3Itc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjVjYiJ9LmZhLWJyZWFkLXNsaWNlOmJlZm9yZXtjb250ZW50OiJcZjdlYyJ9LmZhLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OiJcZjFhYiJ9LmZhLWZhY2Uta2lzcy13aW5rLWhlYXJ0OmJlZm9yZSwuZmEta2lzcy13aW5rLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZjU5OCJ9LmZhLWZpbHRlcjpiZWZvcmV7Y29udGVudDoiXGYwYjAifS5mYS1xdWVzdGlvbjpiZWZvcmV7Y29udGVudDoiXDNmIn0uZmEtZmlsZS1zaWduYXR1cmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTczIn0uZmEtYXJyb3dzLWFsdDpiZWZvcmUsLmZhLXVwLWRvd24tbGVmdC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYjIifS5mYS1ob3VzZS1jaGltbmV5LXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDY1In0uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZjRiZSJ9LmZhLXB1enpsZS1waWVjZTpiZWZvcmV7Y29udGVudDoiXGYxMmUifS5mYS1tb25leS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY1M2MifS5mYS1zdGFyLWhhbGYtYWx0OmJlZm9yZSwuZmEtc3Rhci1oYWxmLXN0cm9rZTpiZWZvcmV7Y29udGVudDoiXGY1YzAifS5mYS1jb2RlOmJlZm9yZXtjb250ZW50OiJcZjEyMSJ9LmZhLWdsYXNzLXdoaXNrZXk6YmVmb3JlLC5mYS13aGlza2V5LWdsYXNzOmJlZm9yZXtjb250ZW50OiJcZjdhMCJ9LmZhLWJ1aWxkaW5nLWNpcmNsZS1leGNsYW1hdGlvbjpiZWZvcmV7Y29udGVudDoiXGU0ZDMifS5mYS1tYWduaWZ5aW5nLWdsYXNzLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZTUyMiJ9LmZhLWFycm93LXVwLXJpZ2h0LWZyb20tc3F1YXJlOmJlZm9yZSwuZmEtZXh0ZXJuYWwtbGluazpiZWZvcmV7Y29udGVudDoiXGYwOGUifS5mYS1jdWJlcy1zdGFja2VkOmJlZm9yZXtjb250ZW50OiJcZTRlNiJ9LmZhLWtydzpiZWZvcmUsLmZhLXdvbi1zaWduOmJlZm9yZSwuZmEtd29uOmJlZm9yZXtjb250ZW50OiJcZjE1OSJ9LmZhLXZpcnVzLWNvdmlkOmJlZm9yZXtjb250ZW50OiJcZTRhOCJ9LmZhLWF1c3RyYWwtc2lnbjpiZWZvcmV7Y29udGVudDoiXGUwYTkifS5mYS1mOmJlZm9yZXtjb250ZW50OiJcNDYifS5mYS1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjA2YyJ9LmZhLXJvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE4In0uZmEtY2FiOmJlZm9yZSwuZmEtdGF4aTpiZWZvcmV7Y29udGVudDoiXGYxYmEifS5mYS1wZXJzb24tY2lyY2xlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxlNTQxIn0uZmEtY2hhcnQtcGllOmJlZm9yZSwuZmEtcGllLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjIwMCJ9LmZhLWJvbHQtbGlnaHRuaW5nOmJlZm9yZXtjb250ZW50OiJcZTBiNyJ9LmZhLXNhY2steG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxlNTZhIn0uZmEtZmlsZS1leGNlbDpiZWZvcmV7Y29udGVudDoiXGYxYzMifS5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZXtjb250ZW50OiJcZjU2YyJ9LmZhLWZpc2gtZmluczpiZWZvcmV7Y29udGVudDoiXGU0ZjIifS5mYS1idWlsZGluZy1mbGFnOmJlZm9yZXtjb250ZW50OiJcZTRkNSJ9LmZhLWZhY2UtZ3Jpbi1iZWFtOmJlZm9yZSwuZmEtZ3Jpbi1iZWFtOmJlZm9yZXtjb250ZW50OiJcZjU4MiJ9LmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0OCJ9LmZhLXBvb3A6YmVmb3Jle2NvbnRlbnQ6IlxmNjE5In0uZmEtbG9jYXRpb24tcGluOmJlZm9yZSwuZmEtbWFwLW1hcmtlcjpiZWZvcmV7Y29udGVudDoiXGYwNDEifS5mYS1rYWFiYTpiZWZvcmV7Y29udGVudDoiXGY2NmIifS5mYS10b2lsZXQtcGFwZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzFlIn0uZmEtaGFyZC1oYXQ6YmVmb3JlLC5mYS1oYXQtaGFyZDpiZWZvcmUsLmZhLWhlbG1ldC1zYWZldHk6YmVmb3Jle2NvbnRlbnQ6IlxmODA3In0uZmEtZWplY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDUyIn0uZmEtYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmUsLmZhLWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYzNWEifS5mYS1wbGFuZS1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNTU1In0uZmEtZmFjZS1yb2xsaW5nLWV5ZXM6YmVmb3JlLC5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZXtjb250ZW50OiJcZjVhNSJ9LmZhLW9iamVjdC1ncm91cDpiZWZvcmV7Y29udGVudDoiXGYyNDcifS5mYS1jaGFydC1saW5lOmJlZm9yZSwuZmEtbGluZS1jaGFydDpiZWZvcmV7Y29udGVudDoiXGYyMDEifS5mYS1tYXNrLXZlbnRpbGF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxlNTI0In0uZmEtYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDYxIn0uZmEtbWFwLXNpZ25zOmJlZm9yZSwuZmEtc2lnbnMtcG9zdDpiZWZvcmV7Y29udGVudDoiXGYyNzcifS5mYS1jYXNoLXJlZ2lzdGVyOmJlZm9yZXtjb250ZW50OiJcZjc4OCJ9LmZhLXBlcnNvbi1jaXJjbGUtcXVlc3Rpb246YmVmb3Jle2NvbnRlbnQ6IlxlNTQyIn0uZmEtaDpiZWZvcmV7Y29udGVudDoiXDQ4In0uZmEtdGFycDpiZWZvcmV7Y29udGVudDoiXGU1N2IifS5mYS1zY3Jld2RyaXZlci13cmVuY2g6YmVmb3JlLC5mYS10b29sczpiZWZvcmV7Y29udGVudDoiXGY3ZDkifS5mYS1hcnJvd3MtdG8tZXllOmJlZm9yZXtjb250ZW50OiJcZTRiZiJ9LmZhLXBsdWctY2lyY2xlLWJvbHQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTViIn0uZmEtaGVhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDA0In0uZmEtbWFycy1hbmQtdmVudXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjI0In0uZmEtaG9tZS11c2VyOmJlZm9yZSwuZmEtaG91c2UtdXNlcjpiZWZvcmV7Y29udGVudDoiXGUxYjAifS5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZXtjb250ZW50OiJcZjc5NCJ9LmZhLWhvdXNlLWNyYWNrOmJlZm9yZXtjb250ZW50OiJcZTNiMSJ9LmZhLWNvY2t0YWlsOmJlZm9yZSwuZmEtbWFydGluaS1nbGFzcy1jaXRydXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTYxIn0uZmEtZmFjZS1zdXJwcmlzZTpiZWZvcmUsLmZhLXN1cnByaXNlOmJlZm9yZXtjb250ZW50OiJcZjVjMiJ9LmZhLWJvdHRsZS13YXRlcjpiZWZvcmV7Y29udGVudDoiXGU0YzUifS5mYS1jaXJjbGUtcGF1c2U6YmVmb3JlLC5mYS1wYXVzZS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjhiIn0uZmEtdG9pbGV0LXBhcGVyLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTA3MiJ9LmZhLWFwcGxlLWFsdDpiZWZvcmUsLmZhLWFwcGxlLXdob2xlOmJlZm9yZXtjb250ZW50OiJcZjVkMSJ9LmZhLWtpdGNoZW4tc2V0OmJlZm9yZXtjb250ZW50OiJcZTUxYSJ9LmZhLXI6YmVmb3Jle2NvbnRlbnQ6Ilw1MiJ9LmZhLXRlbXBlcmF0dXJlLTE6YmVmb3JlLC5mYS10ZW1wZXJhdHVyZS1xdWFydGVyOmJlZm9yZSwuZmEtdGhlcm1vbWV0ZXItMTpiZWZvcmUsLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMmNhIn0uZmEtY3ViZTpiZWZvcmV7Y29udGVudDoiXGYxYjIifS5mYS1iaXRjb2luLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMGI0In0uZmEtc2hpZWxkLWRvZzpiZWZvcmV7Y29udGVudDoiXGU1NzMifS5mYS1zb2xhci1wYW5lbDpiZWZvcmV7Y29udGVudDoiXGY1YmEifS5mYS1sb2NrLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmM2MxIn0uZmEtZWxldmF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxlMTZkIn0uZmEtbW9uZXktYmlsbC10cmFuc2ZlcjpiZWZvcmV7Y29udGVudDoiXGU1MjgifS5mYS1tb25leS1iaWxsLXRyZW5kLXVwOmJlZm9yZXtjb250ZW50OiJcZTUyOSJ9LmZhLWhvdXNlLWZsb29kLXdhdGVyLWNpcmNsZS1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU1MGYifS5mYS1wb2xsLWg6YmVmb3JlLC5mYS1zcXVhcmUtcG9sbC1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OiJcZjY4MiJ9LmZhLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxMTEifS5mYS1iYWNrd2FyZC1mYXN0OmJlZm9yZSwuZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNDkifS5mYS1yZWN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjFiOCJ9LmZhLXVzZXItYXN0cm9uYXV0OmJlZm9yZXtjb250ZW50OiJcZjRmYiJ9LmZhLXBsYW5lLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTA2OSJ9LmZhLXRyYWRlbWFyazpiZWZvcmV7Y29udGVudDoiXGYyNWMifS5mYS1iYXNrZXRiYWxsLWJhbGw6YmVmb3JlLC5mYS1iYXNrZXRiYWxsOmJlZm9yZXtjb250ZW50OiJcZjQzNCJ9LmZhLXNhdGVsbGl0ZS1kaXNoOmJlZm9yZXtjb250ZW50OiJcZjdjMCJ9LmZhLWFycm93LWFsdC1jaXJjbGUtdXA6YmVmb3JlLC5mYS1jaXJjbGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMzViIn0uZmEtbW9iaWxlLWFsdDpiZWZvcmUsLmZhLW1vYmlsZS1zY3JlZW4tYnV0dG9uOmJlZm9yZXtjb250ZW50OiJcZjNjZCJ9LmZhLXZvbHVtZS1oaWdoOmJlZm9yZSwuZmEtdm9sdW1lLXVwOmJlZm9yZXtjb250ZW50OiJcZjAyOCJ9LmZhLXVzZXJzLXJheXM6YmVmb3Jle2NvbnRlbnQ6IlxlNTkzIn0uZmEtd2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZjU1NSJ9LmZhLWNsaXBib2FyZC1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY0NmMifS5mYS1maWxlLWF1ZGlvOmJlZm9yZXtjb250ZW50OiJcZjFjNyJ9LmZhLWJ1cmdlcjpiZWZvcmUsLmZhLWhhbWJ1cmdlcjpiZWZvcmV7Y29udGVudDoiXGY4MDUifS5mYS13cmVuY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMGFkIn0uZmEtYnVnczpiZWZvcmV7Y29udGVudDoiXGU0ZDAifS5mYS1ydXBlZS1zaWduOmJlZm9yZSwuZmEtcnVwZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMTU2In0uZmEtZmlsZS1pbWFnZTpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5mYS1jaXJjbGUtcXVlc3Rpb246YmVmb3JlLC5mYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU5In0uZmEtcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZXtjb250ZW50OiJcZjViMCJ9LmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNjAifS5mYS1ib29rLWJvb2ttYXJrOmJlZm9yZXtjb250ZW50OiJcZTBiYiJ9LmZhLWNvZGUtYnJhbmNoOmJlZm9yZXtjb250ZW50OiJcZjEyNiJ9LmZhLWhhdC1jb3dib3k6YmVmb3Jle2NvbnRlbnQ6IlxmOGMwIn0uZmEtYnJpZGdlOmJlZm9yZXtjb250ZW50OiJcZTRjOCJ9LmZhLXBob25lLWFsdDpiZWZvcmUsLmZhLXBob25lLWZsaXA6YmVmb3Jle2NvbnRlbnQ6IlxmODc5In0uZmEtdHJ1Y2stZnJvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMmI3In0uZmEtY2F0OmJlZm9yZXtjb250ZW50OiJcZjZiZSJ9LmZhLWFuY2hvci1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNGFiIn0uZmEtdHJ1Y2stZmllbGQ6YmVmb3Jle2NvbnRlbnQ6IlxlNThkIn0uZmEtcm91dGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGQ3In0uZmEtY2xpcGJvYXJkLXF1ZXN0aW9uOmJlZm9yZXtjb250ZW50OiJcZTRlMyJ9LmZhLXBhbm9yYW1hOmJlZm9yZXtjb250ZW50OiJcZTIwOSJ9LmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZjUifS5mYS10ZWV0aC1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjYyZiJ9LmZhLWZpbGUtY2lyY2xlLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZTRlZCJ9LmZhLXRhZ3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDJjIn0uZmEtd2luZS1nbGFzczpiZWZvcmV7Y29udGVudDoiXGY0ZTMifS5mYS1mYXN0LWZvcndhcmQ6YmVmb3JlLC5mYS1mb3J3YXJkLWZhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDUwIn0uZmEtZmFjZS1tZWgtYmxhbms6YmVmb3JlLC5mYS1tZWgtYmxhbms6YmVmb3Jle2NvbnRlbnQ6IlxmNWE0In0uZmEtcGFya2luZzpiZWZvcmUsLmZhLXNxdWFyZS1wYXJraW5nOmJlZm9yZXtjb250ZW50OiJcZjU0MCJ9LmZhLWhvdXNlLXNpZ25hbDpiZWZvcmV7Y29udGVudDoiXGUwMTIifS5mYS1iYXJzLXByb2dyZXNzOmJlZm9yZSwuZmEtdGFza3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjgyOCJ9LmZhLWZhdWNldC1kcmlwOmJlZm9yZXtjb250ZW50OiJcZTAwNiJ9LmZhLWNhcnQtZmxhdGJlZDpiZWZvcmUsLmZhLWRvbGx5LWZsYXRiZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDc0In0uZmEtYmFuLXNtb2tpbmc6YmVmb3JlLC5mYS1zbW9raW5nLWJhbjpiZWZvcmV7Y29udGVudDoiXGY1NGQifS5mYS10ZXJtaW5hbDpiZWZvcmV7Y29udGVudDoiXGYxMjAifS5mYS1tb2JpbGUtYnV0dG9uOmJlZm9yZXtjb250ZW50OiJcZjEwYiJ9LmZhLWhvdXNlLW1lZGljYWwtZmxhZzpiZWZvcmV7Y29udGVudDoiXGU1MTQifS5mYS1iYXNrZXQtc2hvcHBpbmc6YmVmb3JlLC5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjkxIn0uZmEtdGFwZTpiZWZvcmV7Y29udGVudDoiXGY0ZGIifS5mYS1idXMtYWx0OmJlZm9yZSwuZmEtYnVzLXNpbXBsZTpiZWZvcmV7Y29udGVudDoiXGY1NWUifS5mYS1leWU6YmVmb3Jle2NvbnRlbnQ6IlxmMDZlIn0uZmEtZmFjZS1zYWQtY3J5OmJlZm9yZSwuZmEtc2FkLWNyeTpiZWZvcmV7Y29udGVudDoiXGY1YjMifS5mYS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmV7Y29udGVudDoiXGYyOWUifS5mYS1wZXJzb24tbWlsaXRhcnktdG8tcGVyc29uOmJlZm9yZXtjb250ZW50OiJcZTU0YyJ9LmZhLWZpbGUtc2hpZWxkOmJlZm9yZXtjb250ZW50OiJcZTRmMCJ9LmZhLXVzZXItc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTA2In0uZmEtcGVuOmJlZm9yZXtjb250ZW50OiJcZjMwNCJ9LmZhLXRvd2VyLW9ic2VydmF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTU4NiJ9LmZhLWZpbGUtY29kZTpiZWZvcmV7Y29udGVudDoiXGYxYzkifS5mYS1zaWduYWwtNTpiZWZvcmUsLmZhLXNpZ25hbC1wZXJmZWN0OmJlZm9yZSwuZmEtc2lnbmFsOmJlZm9yZXtjb250ZW50OiJcZjAxMiJ9LmZhLWJ1czpiZWZvcmV7Y29udGVudDoiXGYyMDcifS5mYS1oZWFydC1jaXJjbGUteG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxlNTAxIn0uZmEtaG9tZS1sZzpiZWZvcmUsLmZhLWhvdXNlLWNoaW1uZXk6YmVmb3Jle2NvbnRlbnQ6IlxlM2FmIn0uZmEtd2luZG93LW1heGltaXplOmJlZm9yZXtjb250ZW50OiJcZjJkMCJ9LmZhLWZhY2UtZnJvd246YmVmb3JlLC5mYS1mcm93bjpiZWZvcmV7Y29udGVudDoiXGYxMTkifS5mYS1wcmVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNWIxIn0uZmEtc2hvcDpiZWZvcmUsLmZhLXN0b3JlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1NGYifS5mYS1mbG9wcHktZGlzazpiZWZvcmUsLmZhLXNhdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGM3In0uZmEtdmloYXJhOmJlZm9yZXtjb250ZW50OiJcZjZhNyJ9LmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUsLmZhLXNjYWxlLXVuYmFsYW5jZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTE1In0uZmEtc29ydC1hc2M6YmVmb3JlLC5mYS1zb3J0LXVwOmJlZm9yZXtjb250ZW50OiJcZjBkZSJ9LmZhLWNvbW1lbnQtZG90czpiZWZvcmUsLmZhLWNvbW1lbnRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGFkIn0uZmEtcGxhbnQtd2lsdDpiZWZvcmV7Y29udGVudDoiXGU1YWEifS5mYS1kaWFtb25kOmJlZm9yZXtjb250ZW50OiJcZjIxOSJ9LmZhLWZhY2UtZ3Jpbi1zcXVpbnQ6YmVmb3JlLC5mYS1ncmluLXNxdWludDpiZWZvcmV7Y29udGVudDoiXGY1ODUifS5mYS1oYW5kLWhvbGRpbmctZG9sbGFyOmJlZm9yZSwuZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmV7Y29udGVudDoiXGY0YzAifS5mYS1iYWN0ZXJpdW06YmVmb3Jle2NvbnRlbnQ6IlxlMDVhIn0uZmEtaGFuZC1wb2ludGVyOmJlZm9yZXtjb250ZW50OiJcZjI1YSJ9LmZhLWRydW0tc3RlZWxwYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTZhIn0uZmEtaGFuZC1zY2lzc29yczpiZWZvcmV7Y29udGVudDoiXGYyNTcifS5mYS1oYW5kcy1wcmF5aW5nOmJlZm9yZSwuZmEtcHJheWluZy1oYW5kczpiZWZvcmV7Y29udGVudDoiXGY2ODQifS5mYS1hcnJvdy1yaWdodC1yb3RhdGU6YmVmb3JlLC5mYS1hcnJvdy1yb3RhdGUtZm9yd2FyZDpiZWZvcmUsLmZhLWFycm93LXJvdGF0ZS1yaWdodDpiZWZvcmUsLmZhLXJlZG86YmVmb3Jle2NvbnRlbnQ6IlxmMDFlIn0uZmEtYmlvaGF6YXJkOmJlZm9yZXtjb250ZW50OiJcZjc4MCJ9LmZhLWxvY2F0aW9uLWNyb3NzaGFpcnM6YmVmb3JlLC5mYS1sb2NhdGlvbjpiZWZvcmV7Y29udGVudDoiXGY2MDEifS5mYS1tYXJzLWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGYyMjcifS5mYS1jaGlsZC1kcmVzczpiZWZvcmV7Y29udGVudDoiXGU1OWMifS5mYS11c2Vycy1iZXR3ZWVuLWxpbmVzOmJlZm9yZXtjb250ZW50OiJcZTU5MSJ9LmZhLWx1bmdzLXZpcnVzOmJlZm9yZXtjb250ZW50OiJcZTA2NyJ9LmZhLWZhY2UtZ3Jpbi10ZWFyczpiZWZvcmUsLmZhLWdyaW4tdGVhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmNTg4In0uZmEtcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDk1In0uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlLC5mYS1jYWxlbmRhci14bWFyazpiZWZvcmV7Y29udGVudDoiXGYyNzMifS5mYS1jaGlsZC1yZWFjaGluZzpiZWZvcmV7Y29udGVudDoiXGU1OWQifS5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDY0In0uZmEtdXNlci1jb2c6YmVmb3JlLC5mYS11c2VyLWdlYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNGZlIn0uZmEtYXJyb3ctdXAtMS05OmJlZm9yZSwuZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZXtjb250ZW50OiJcZjE2MyJ9LmZhLWRvb3ItY2xvc2VkOmJlZm9yZXtjb250ZW50OiJcZjUyYSJ9LmZhLXNoaWVsZC12aXJ1czpiZWZvcmV7Y29udGVudDoiXGUwNmMifS5mYS1kaWNlLXNpeDpiZWZvcmV7Y29udGVudDoiXGY1MjYifS5mYS1tb3NxdWl0by1uZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTJjIn0uZmEtYnJpZGdlLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZTRjZSJ9LmZhLXBlcnNvbi1ib290aDpiZWZvcmV7Y29udGVudDoiXGY3NTYifS5mYS10ZXh0LXdpZHRoOmJlZm9yZXtjb250ZW50OiJcZjAzNSJ9LmZhLWhhdC13aXphcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmU4In0uZmEtcGVuLWZhbmN5OmJlZm9yZXtjb250ZW50OiJcZjVhYyJ9LmZhLWRpZ2dpbmc6YmVmb3JlLC5mYS1wZXJzb24tZGlnZ2luZzpiZWZvcmV7Y29udGVudDoiXGY4NWUifS5mYS10cmFzaDpiZWZvcmV7Y29udGVudDoiXGYxZjgifS5mYS1nYXVnZS1zaW1wbGUtbWVkOmJlZm9yZSwuZmEtZ2F1Z2Utc2ltcGxlOmJlZm9yZSwuZmEtdGFjaG9tZXRlci1hdmVyYWdlOmJlZm9yZXtjb250ZW50OiJcZjYyOSJ9LmZhLWJvb2stbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZTYifS5mYS1wb286YmVmb3Jle2NvbnRlbnQ6IlxmMmZlIn0uZmEtcXVvdGUtcmlnaHQtYWx0OmJlZm9yZSwuZmEtcXVvdGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTBlIn0uZmEtc2hpcnQ6YmVmb3JlLC5mYS10LXNoaXJ0OmJlZm9yZSwuZmEtdHNoaXJ0OmJlZm9yZXtjb250ZW50OiJcZjU1MyJ9LmZhLWN1YmVzOmJlZm9yZXtjb250ZW50OiJcZjFiMyJ9LmZhLWRpdmlkZTpiZWZvcmV7Y29udGVudDoiXGY1MjkifS5mYS10ZW5nZS1zaWduOmJlZm9yZSwuZmEtdGVuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q3In0uZmEtaGVhZHBob25lczpiZWZvcmV7Y29udGVudDoiXGYwMjUifS5mYS1oYW5kcy1ob2xkaW5nOmJlZm9yZXtjb250ZW50OiJcZjRjMiJ9LmZhLWhhbmRzLWNsYXBwaW5nOmJlZm9yZXtjb250ZW50OiJcZTFhOCJ9LmZhLXJlcHVibGljYW46YmVmb3Jle2NvbnRlbnQ6IlxmNzVlIn0uZmEtYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwNjAifS5mYS1wZXJzb24tY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTU0MyJ9LmZhLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjU0NSJ9LmZhLWFsaWduLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM2In0uZmEtZGljZS1kNjpiZWZvcmV7Y29udGVudDoiXGY2ZDEifS5mYS1yZXN0cm9vbTpiZWZvcmV7Y29udGVudDoiXGY3YmQifS5mYS1qOmJlZm9yZXtjb250ZW50OiJcNGEifS5mYS11c2Vycy12aWV3ZmluZGVyOmJlZm9yZXtjb250ZW50OiJcZTU5NSJ9LmZhLWZpbGUtdmlkZW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM4In0uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlLC5mYS11cC1yaWdodC1mcm9tLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYzNWQifS5mYS10YWJsZS1jZWxsczpiZWZvcmUsLmZhLXRoOmJlZm9yZXtjb250ZW50OiJcZjAwYSJ9LmZhLWZpbGUtcGRmOmJlZm9yZXtjb250ZW50OiJcZjFjMSJ9LmZhLWJpYmxlOmJlZm9yZSwuZmEtYm9vay1iaWJsZTpiZWZvcmV7Y29udGVudDoiXGY2NDcifS5mYS1vOmJlZm9yZXtjb250ZW50OiJcNGYifS5mYS1tZWRraXQ6YmVmb3JlLC5mYS1zdWl0Y2FzZS1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjBmYSJ9LmZhLXVzZXItc2VjcmV0OmJlZm9yZXtjb250ZW50OiJcZjIxYiJ9LmZhLW90dGVyOmJlZm9yZXtjb250ZW50OiJcZjcwMCJ9LmZhLWZlbWFsZTpiZWZvcmUsLmZhLXBlcnNvbi1kcmVzczpiZWZvcmV7Y29udGVudDoiXGYxODIifS5mYS1jb21tZW50LWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2NTEifS5mYS1icmllZmNhc2UtY2xvY2s6YmVmb3JlLC5mYS1idXNpbmVzcy10aW1lOmJlZm9yZXtjb250ZW50OiJcZjY0YSJ9LmZhLXRhYmxlLWNlbGxzLWxhcmdlOmJlZm9yZSwuZmEtdGgtbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDA5In0uZmEtYm9vay10YW5ha2g6YmVmb3JlLC5mYS10YW5ha2g6YmVmb3Jle2NvbnRlbnQ6IlxmODI3In0uZmEtcGhvbmUtdm9sdW1lOmJlZm9yZSwuZmEtdm9sdW1lLWNvbnRyb2wtcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMmEwIn0uZmEtaGF0LWNvd2JveS1zaWRlOmJlZm9yZXtjb250ZW50OiJcZjhjMSJ9LmZhLWNsaXBib2FyZC11c2VyOmJlZm9yZXtjb250ZW50OiJcZjdmMyJ9LmZhLWNoaWxkOmJlZm9yZXtjb250ZW50OiJcZjFhZSJ9LmZhLWxpcmEtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxOTUifS5mYS1zYXRlbGxpdGU6YmVmb3Jle2NvbnRlbnQ6IlxmN2JmIn0uZmEtcGxhbmUtbG9jazpiZWZvcmV7Y29udGVudDoiXGU1NTgifS5mYS10YWc6YmVmb3Jle2NvbnRlbnQ6IlxmMDJiIn0uZmEtY29tbWVudDpiZWZvcmV7Y29udGVudDoiXGYwNzUifS5mYS1iaXJ0aGRheS1jYWtlOmJlZm9yZSwuZmEtY2FrZS1jYW5kbGVzOmJlZm9yZSwuZmEtY2FrZTpiZWZvcmV7Y29udGVudDoiXGYxZmQifS5mYS1lbnZlbG9wZTpiZWZvcmV7Y29udGVudDoiXGYwZTAifS5mYS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlLC5mYS1hbmdsZXMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTAyIn0uZmEtcGFwZXJjbGlwOmJlZm9yZXtjb250ZW50OiJcZjBjNiJ9LmZhLWFycm93LXJpZ2h0LXRvLWNpdHk6YmVmb3Jle2NvbnRlbnQ6IlxlNGIzIn0uZmEtcmliYm9uOmJlZm9yZXtjb250ZW50OiJcZjRkNiJ9LmZhLWx1bmdzOmJlZm9yZXtjb250ZW50OiJcZjYwNCJ9LmZhLWFycm93LXVwLTktMTpiZWZvcmUsLmZhLXNvcnQtbnVtZXJpYy11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODg3In0uZmEtbGl0ZWNvaW4tc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxZDMifS5mYS1ib3JkZXItbm9uZTpiZWZvcmV7Y29udGVudDoiXGY4NTAifS5mYS1jaXJjbGUtbm9kZXM6YmVmb3Jle2NvbnRlbnQ6IlxlNGUyIn0uZmEtcGFyYWNodXRlLWJveDpiZWZvcmV7Y29udGVudDoiXGY0Y2QifS5mYS1pbmRlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNjIn0uZmEtdHJ1Y2stZmllbGQtdW46YmVmb3Jle2NvbnRlbnQ6IlxlNThlIn0uZmEtaG91cmdsYXNzLWVtcHR5OmJlZm9yZSwuZmEtaG91cmdsYXNzOmJlZm9yZXtjb250ZW50OiJcZjI1NCJ9LmZhLW1vdW50YWluOmJlZm9yZXtjb250ZW50OiJcZjZmYyJ9LmZhLXVzZXItZG9jdG9yOmJlZm9yZSwuZmEtdXNlci1tZDpiZWZvcmV7Y29udGVudDoiXGYwZjAifS5mYS1jaXJjbGUtaW5mbzpiZWZvcmUsLmZhLWluZm8tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1YSJ9LmZhLWNsb3VkLW1lYXRiYWxsOmJlZm9yZXtjb250ZW50OiJcZjczYiJ9LmZhLWNhbWVyYS1hbHQ6YmVmb3JlLC5mYS1jYW1lcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMDMwIn0uZmEtc3F1YXJlLXZpcnVzOmJlZm9yZXtjb250ZW50OiJcZTU3OCJ9LmZhLW1ldGVvcjpiZWZvcmV7Y29udGVudDoiXGY3NTMifS5mYS1jYXItb246YmVmb3Jle2NvbnRlbnQ6IlxlNGRkIn0uZmEtc2xlaWdoOmJlZm9yZXtjb250ZW50OiJcZjdjYyJ9LmZhLWFycm93LWRvd24tMS05OmJlZm9yZSwuZmEtc29ydC1udW1lcmljLWFzYzpiZWZvcmUsLmZhLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE2MiJ9LmZhLWhhbmQtaG9sZGluZy1kcm9wbGV0OmJlZm9yZSwuZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZjRjMSJ9LmZhLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZjc3MyJ9LmZhLWNhbGVuZGFyLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjI3NCJ9LmZhLWJyYWlsbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMmExIn0uZmEtcHJlc2NyaXB0aW9uLWJvdHRsZS1hbHQ6YmVmb3JlLC5mYS1wcmVzY3JpcHRpb24tYm90dGxlLW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNDg2In0uZmEtbGFuZG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxmNjZmIn0uZmEtdHJ1Y2s6YmVmb3Jle2NvbnRlbnQ6IlxmMGQxIn0uZmEtY3Jvc3NoYWlyczpiZWZvcmV7Y29udGVudDoiXGYwNWIifS5mYS1wZXJzb24tY2FuZTpiZWZvcmV7Y29udGVudDoiXGU1M2MifS5mYS10ZW50OmJlZm9yZXtjb250ZW50OiJcZTU3ZCJ9LmZhLXZlc3QtcGF0Y2hlczpiZWZvcmV7Y29udGVudDoiXGUwODYifS5mYS1jaGVjay1kb3VibGU6YmVmb3Jle2NvbnRlbnQ6IlxmNTYwIn0uZmEtYXJyb3ctZG93bi1hLXo6YmVmb3JlLC5mYS1zb3J0LWFscGhhLWFzYzpiZWZvcmUsLmZhLXNvcnQtYWxwaGEtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNWQifS5mYS1tb25leS1iaWxsLXdoZWF0OmJlZm9yZXtjb250ZW50OiJcZTUyYSJ9LmZhLWNvb2tpZTpiZWZvcmV7Y29udGVudDoiXGY1NjMifS5mYS1hcnJvdy1sZWZ0LXJvdGF0ZTpiZWZvcmUsLmZhLWFycm93LXJvdGF0ZS1iYWNrOmJlZm9yZSwuZmEtYXJyb3ctcm90YXRlLWJhY2t3YXJkOmJlZm9yZSwuZmEtYXJyb3ctcm90YXRlLWxlZnQ6YmVmb3JlLC5mYS11bmRvOmJlZm9yZXtjb250ZW50OiJcZjBlMiJ9LmZhLWhhcmQtZHJpdmU6YmVmb3JlLC5mYS1oZGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGEwIn0uZmEtZmFjZS1ncmluLXNxdWludC10ZWFyczpiZWZvcmUsLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZXtjb250ZW50OiJcZjU4NiJ9LmZhLWR1bWJiZWxsOmJlZm9yZXtjb250ZW50OiJcZjQ0YiJ9LmZhLWxpc3QtYWx0OmJlZm9yZSwuZmEtcmVjdGFuZ2xlLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDIyIn0uZmEtdGFycC1kcm9wbGV0OmJlZm9yZXtjb250ZW50OiJcZTU3YyJ9LmZhLWhvdXNlLW1lZGljYWwtY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTUxMSJ9LmZhLXBlcnNvbi1za2lpbmctbm9yZGljOmJlZm9yZSwuZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmV7Y29udGVudDoiXGY3Y2EifS5mYS1jYWxlbmRhci1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjI3MSJ9LmZhLXBsYW5lLWFycml2YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNWFmIn0uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSwuZmEtY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzU5In0uZmEtc3Vid2F5OmJlZm9yZSwuZmEtdHJhaW4tc3Vid2F5OmJlZm9yZXtjb250ZW50OiJcZjIzOSJ9LmZhLWNoYXJ0LWdhbnR0OmJlZm9yZXtjb250ZW50OiJcZTBlNCJ9LmZhLWluZGlhbi1ydXBlZS1zaWduOmJlZm9yZSwuZmEtaW5kaWFuLXJ1cGVlOmJlZm9yZSwuZmEtaW5yOmJlZm9yZXtjb250ZW50OiJcZTFiYyJ9LmZhLWNyb3AtYWx0OmJlZm9yZSwuZmEtY3JvcC1zaW1wbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNTY1In0uZmEtbW9uZXktYmlsbC0xOmJlZm9yZSwuZmEtbW9uZXktYmlsbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2QxIn0uZmEtbGVmdC1sb25nOmJlZm9yZSwuZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYzMGEifS5mYS1kbmE6YmVmb3Jle2NvbnRlbnQ6IlxmNDcxIn0uZmEtdmlydXMtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDc1In0uZmEtbWludXM6YmVmb3JlLC5mYS1zdWJ0cmFjdDpiZWZvcmV7Y29udGVudDoiXGYwNjgifS5mYS1jaGVzczpiZWZvcmV7Y29udGVudDoiXGY0MzkifS5mYS1hcnJvdy1sZWZ0LWxvbmc6YmVmb3JlLC5mYS1sb25nLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTc3In0uZmEtcGx1Zy1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNTVjIn0uZmEtc3RyZWV0LXZpZXc6YmVmb3Jle2NvbnRlbnQ6IlxmMjFkIn0uZmEtZnJhbmMtc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxOGYifS5mYS12b2x1bWUtb2ZmOmJlZm9yZXtjb250ZW50OiJcZjAyNiJ9LmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSwuZmEtYXNsLWludGVycHJldGluZzpiZWZvcmUsLmZhLWhhbmRzLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSwuZmEtaGFuZHMtYXNsLWludGVycHJldGluZzpiZWZvcmV7Y29udGVudDoiXGYyYTMifS5mYS1jb2c6YmVmb3JlLC5mYS1nZWFyOmJlZm9yZXtjb250ZW50OiJcZjAxMyJ9LmZhLWRyb3BsZXQtc2xhc2g6YmVmb3JlLC5mYS10aW50LXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjVjNyJ9LmZhLW1vc3F1ZTpiZWZvcmV7Y29udGVudDoiXGY2NzgifS5mYS1tb3NxdWl0bzpiZWZvcmV7Y29udGVudDoiXGU1MmIifS5mYS1zdGFyLW9mLWRhdmlkOmJlZm9yZXtjb250ZW50OiJcZjY5YSJ9LmZhLXBlcnNvbi1taWxpdGFyeS1yaWZsZTpiZWZvcmV7Y29udGVudDoiXGU1NGIifS5mYS1jYXJ0LXNob3BwaW5nOmJlZm9yZSwuZmEtc2hvcHBpbmctY2FydDpiZWZvcmV7Y29udGVudDoiXGYwN2EifS5mYS12aWFsczpiZWZvcmV7Y29udGVudDoiXGY0OTMifS5mYS1wbHVnLWNpcmNsZS1wbHVzOmJlZm9yZXtjb250ZW50OiJcZTU1ZiJ9LmZhLXBsYWNlLW9mLXdvcnNoaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNjdmIn0uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGY1OGUifS5mYS1hcnJvdy10dXJuLXVwOmJlZm9yZSwuZmEtbGV2ZWwtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTQ4In0uZmEtdTpiZWZvcmV7Y29udGVudDoiXDU1In0uZmEtc3F1YXJlLXJvb3QtYWx0OmJlZm9yZSwuZmEtc3F1YXJlLXJvb3QtdmFyaWFibGU6YmVmb3Jle2NvbnRlbnQ6IlxmNjk4In0uZmEtY2xvY2stZm91cjpiZWZvcmUsLmZhLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZjAxNyJ9LmZhLWJhY2t3YXJkLXN0ZXA6YmVmb3JlLC5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0OCJ9LmZhLXBhbGxldDpiZWZvcmV7Y29udGVudDoiXGY0ODIifS5mYS1mYXVjZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDA1In0uZmEtYmFzZWJhbGwtYmF0LWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDMyIn0uZmEtczpiZWZvcmV7Y29udGVudDoiXDUzIn0uZmEtdGltZWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlMjljIn0uZmEta2V5Ym9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFjIn0uZmEtY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwZDcifS5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUsLmZhLWhvdXNlLWNoaW1uZXktbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZjIifS5mYS10ZW1wZXJhdHVyZS0zOmJlZm9yZSwuZmEtdGVtcGVyYXR1cmUtdGhyZWUtcXVhcnRlcnM6YmVmb3JlLC5mYS10aGVybW9tZXRlci0zOmJlZm9yZSwuZmEtdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMmM4In0uZmEtbW9iaWxlLWFuZHJvaWQtYWx0OmJlZm9yZSwuZmEtbW9iaWxlLXNjcmVlbjpiZWZvcmV7Y29udGVudDoiXGYzY2YifS5mYS1wbGFuZS11cDpiZWZvcmV7Y29udGVudDoiXGUyMmQifS5mYS1waWdneS1iYW5rOmJlZm9yZXtjb250ZW50OiJcZjRkMyJ9LmZhLWJhdHRlcnktMzpiZWZvcmUsLmZhLWJhdHRlcnktaGFsZjpiZWZvcmV7Y29udGVudDoiXGYyNDIifS5mYS1tb3VudGFpbi1jaXR5OmJlZm9yZXtjb250ZW50OiJcZTUyZSJ9LmZhLWNvaW5zOmJlZm9yZXtjb250ZW50OiJcZjUxZSJ9LmZhLWtoYW5kYTpiZWZvcmV7Y29udGVudDoiXGY2NmQifS5mYS1zbGlkZXJzLWg6YmVmb3JlLC5mYS1zbGlkZXJzOmJlZm9yZXtjb250ZW50OiJcZjFkZSJ9LmZhLWZvbGRlci10cmVlOmJlZm9yZXtjb250ZW50OiJcZjgwMiJ9LmZhLW5ldHdvcmstd2lyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmZmIn0uZmEtbWFwLXBpbjpiZWZvcmV7Y29udGVudDoiXGYyNzYifS5mYS1oYW1zYTpiZWZvcmV7Y29udGVudDoiXGY2NjUifS5mYS1jZW50LXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlM2Y1In0uZmEtZmxhc2s6YmVmb3Jle2NvbnRlbnQ6IlxmMGMzIn0uZmEtcGVyc29uLXByZWduYW50OmJlZm9yZXtjb250ZW50OiJcZTMxZSJ9LmZhLXdhbmQtc3BhcmtsZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNzJiIn0uZmEtZWxsaXBzaXMtdjpiZWZvcmUsLmZhLWVsbGlwc2lzLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjE0MiJ9LmZhLXRpY2tldDpiZWZvcmV7Y29udGVudDoiXGYxNDUifS5mYS1wb3dlci1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDExIn0uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlLC5mYS1yaWdodC1sb25nOmJlZm9yZXtjb250ZW50OiJcZjMwYiJ9LmZhLWZsYWctdXNhOmJlZm9yZXtjb250ZW50OiJcZjc0ZCJ9LmZhLWxhcHRvcC1maWxlOmJlZm9yZXtjb250ZW50OiJcZTUxZCJ9LmZhLXRlbGV0eXBlOmJlZm9yZSwuZmEtdHR5OmJlZm9yZXtjb250ZW50OiJcZjFlNCJ9LmZhLWRpYWdyYW0tbmV4dDpiZWZvcmV7Y29udGVudDoiXGU0NzYifS5mYS1wZXJzb24tcmlmbGU6YmVmb3Jle2NvbnRlbnQ6IlxlNTRlIn0uZmEtaG91c2UtbWVkaWNhbC1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNTEyIn0uZmEtY2xvc2VkLWNhcHRpb25pbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMjBhIn0uZmEtaGlraW5nOmJlZm9yZSwuZmEtcGVyc29uLWhpa2luZzpiZWZvcmV7Y29udGVudDoiXGY2ZWMifS5mYS12ZW51cy1kb3VibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjI2In0uZmEtaW1hZ2VzOmJlZm9yZXtjb250ZW50OiJcZjMwMiJ9LmZhLWNhbGN1bGF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmMWVjIn0uZmEtcGVvcGxlLXB1bGxpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNTM1In0uZmEtbjpiZWZvcmV7Y29udGVudDoiXDRlIn0uZmEtY2FibGUtY2FyOmJlZm9yZSwuZmEtdHJhbTpiZWZvcmV7Y29udGVudDoiXGY3ZGEifS5mYS1jbG91ZC1yYWluOmJlZm9yZXtjb250ZW50OiJcZjczZCJ9LmZhLWJ1aWxkaW5nLWNpcmNsZS14bWFyazpiZWZvcmV7Y29udGVudDoiXGU0ZDQifS5mYS1zaGlwOmJlZm9yZXtjb250ZW50OiJcZjIxYSJ9LmZhLWFycm93cy1kb3duLXRvLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNGI4In0uZmEtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE5In0uZmEtZmFjZS1ncmluOmJlZm9yZSwuZmEtZ3JpbjpiZWZvcmV7Y29udGVudDoiXGY1ODAifS5mYS1iYWNrc3BhY2U6YmVmb3JlLC5mYS1kZWxldGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGY1NWEifS5mYS1leWUtZHJvcHBlci1lbXB0eTpiZWZvcmUsLmZhLWV5ZS1kcm9wcGVyOmJlZm9yZSwuZmEtZXllZHJvcHBlcjpiZWZvcmV7Y29udGVudDoiXGYxZmIifS5mYS1maWxlLWNpcmNsZS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGU1YTAifS5mYS1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0ZSJ9LmZhLW1vYmlsZS1hbmRyb2lkOmJlZm9yZSwuZmEtbW9iaWxlLXBob25lOmJlZm9yZSwuZmEtbW9iaWxlOmJlZm9yZXtjb250ZW50OiJcZjNjZSJ9LmZhLWZhY2UtbWVoOmJlZm9yZSwuZmEtbWVoOmJlZm9yZXtjb250ZW50OiJcZjExYSJ9LmZhLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDoiXGYwMzcifS5mYS1ib29rLWRlYWQ6YmVmb3JlLC5mYS1ib29rLXNrdWxsOmJlZm9yZXtjb250ZW50OiJcZjZiNyJ9LmZhLWRyaXZlcnMtbGljZW5zZTpiZWZvcmUsLmZhLWlkLWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmMyIn0uZmEtZGVkZW50OmJlZm9yZSwuZmEtb3V0ZGVudDpiZWZvcmV7Y29udGVudDoiXGYwM2IifS5mYS1oZWFydC1jaXJjbGUtZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlNGZlIn0uZmEtaG9tZS1hbHQ6YmVmb3JlLC5mYS1ob21lLWxnLWFsdDpiZWZvcmUsLmZhLWhvbWU6YmVmb3JlLC5mYS1ob3VzZTpiZWZvcmV7Y29udGVudDoiXGYwMTUifS5mYS1jYWxlbmRhci13ZWVrOmJlZm9yZXtjb250ZW50OiJcZjc4NCJ9LmZhLWxhcHRvcC1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjgxMiJ9LmZhLWI6YmVmb3Jle2NvbnRlbnQ6Ilw0MiJ9LmZhLWZpbGUtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NzcifS5mYS1kaWNlLW9uZTpiZWZvcmV7Y29udGVudDoiXGY1MjUifS5mYS1raXdpLWJpcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTM1In0uZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdDpiZWZvcmUsLmZhLWV4Y2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZjBlYyJ9LmZhLXJlZG8tYWx0OmJlZm9yZSwuZmEtcm90YXRlLWZvcndhcmQ6YmVmb3JlLC5mYS1yb3RhdGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmY5In0uZmEtY3V0bGVyeTpiZWZvcmUsLmZhLXV0ZW5zaWxzOmJlZm9yZXtjb250ZW50OiJcZjJlNyJ9LmZhLWFycm93LXVwLXdpZGUtc2hvcnQ6YmVmb3JlLC5mYS1zb3J0LWFtb3VudC11cDpiZWZvcmV7Y29udGVudDoiXGYxNjEifS5mYS1taWxsLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMWVkIn0uZmEtYm93bC1yaWNlOmJlZm9yZXtjb250ZW50OiJcZTJlYiJ9LmZhLXNrdWxsOmJlZm9yZXtjb250ZW50OiJcZjU0YyJ9LmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUsLmZhLXRvd2VyLWJyb2FkY2FzdDpiZWZvcmV7Y29udGVudDoiXGY1MTkifS5mYS10cnVjay1waWNrdXA6YmVmb3Jle2NvbnRlbnQ6IlxmNjNjIn0uZmEtbG9uZy1hcnJvdy1hbHQtdXA6YmVmb3JlLC5mYS11cC1sb25nOmJlZm9yZXtjb250ZW50OiJcZjMwYyJ9LmZhLXN0b3A6YmVmb3Jle2NvbnRlbnQ6IlxmMDRkIn0uZmEtY29kZS1tZXJnZTpiZWZvcmV7Y29udGVudDoiXGYzODcifS5mYS11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDkzIn0uZmEtaHVycmljYW5lOmJlZm9yZXtjb250ZW50OiJcZjc1MSJ9LmZhLW1vdW5kOmJlZm9yZXtjb250ZW50OiJcZTUyZCJ9LmZhLXRvaWxldC1wb3J0YWJsZTpiZWZvcmV7Y29udGVudDoiXGU1ODMifS5mYS1jb21wYWN0LWRpc2M6YmVmb3Jle2NvbnRlbnQ6IlxmNTFmIn0uZmEtZmlsZS1hcnJvdy1kb3duOmJlZm9yZSwuZmEtZmlsZS1kb3dubG9hZDpiZWZvcmV7Y29udGVudDoiXGY1NmQifS5mYS1jYXJhdmFuOmJlZm9yZXtjb250ZW50OiJcZjhmZiJ9LmZhLXNoaWVsZC1jYXQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTcyIn0uZmEtYm9sdDpiZWZvcmUsLmZhLXphcDpiZWZvcmV7Y29udGVudDoiXGYwZTcifS5mYS1nbGFzcy13YXRlcjpiZWZvcmV7Y29udGVudDoiXGU0ZjQifS5mYS1vaWwtd2VsbDpiZWZvcmV7Y29udGVudDoiXGU1MzIifS5mYS12YXVsdDpiZWZvcmV7Y29udGVudDoiXGUyYzUifS5mYS1tYXJzOmJlZm9yZXtjb250ZW50OiJcZjIyMiJ9LmZhLXRvaWxldDpiZWZvcmV7Y29udGVudDoiXGY3ZDgifS5mYS1wbGFuZS1jaXJjbGUteG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxlNTU3In0uZmEtY255OmJlZm9yZSwuZmEtanB5OmJlZm9yZSwuZmEtcm1iOmJlZm9yZSwuZmEteWVuLXNpZ246YmVmb3JlLC5mYS15ZW46YmVmb3Jle2NvbnRlbnQ6IlxmMTU3In0uZmEtcm91YmxlOmJlZm9yZSwuZmEtcnViOmJlZm9yZSwuZmEtcnVibGUtc2lnbjpiZWZvcmUsLmZhLXJ1YmxlOmJlZm9yZXtjb250ZW50OiJcZjE1OCJ9LmZhLXN1bjpiZWZvcmV7Y29udGVudDoiXGYxODUifS5mYS1ndWl0YXI6YmVmb3Jle2NvbnRlbnQ6IlxmN2E2In0uZmEtZmFjZS1sYXVnaC13aW5rOmJlZm9yZSwuZmEtbGF1Z2gtd2luazpiZWZvcmV7Y29udGVudDoiXGY1OWMifS5mYS1ob3JzZS1oZWFkOmJlZm9yZXtjb250ZW50OiJcZjdhYiJ9LmZhLWJvcmUtaG9sZTpiZWZvcmV7Y29udGVudDoiXGU0YzMifS5mYS1pbmR1c3RyeTpiZWZvcmV7Y29udGVudDoiXGYyNzUifS5mYS1hcnJvdy1hbHQtY2lyY2xlLWRvd246YmVmb3JlLC5mYS1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYzNTgifS5mYS1hcnJvd3MtdHVybi10by1kb3RzOmJlZm9yZXtjb250ZW50OiJcZTRjMSJ9LmZhLWZsb3Jpbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZTE4NCJ9LmZhLWFycm93LWRvd24tc2hvcnQtd2lkZTpiZWZvcmUsLmZhLXNvcnQtYW1vdW50LWRlc2M6YmVmb3JlLC5mYS1zb3J0LWFtb3VudC1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODQifS5mYS1sZXNzLXRoYW46YmVmb3Jle2NvbnRlbnQ6IlwzYyJ9LmZhLWFuZ2xlLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTA3In0uZmEtY2FyLXR1bm5lbDpiZWZvcmV7Y29udGVudDoiXGU0ZGUifS5mYS1oZWFkLXNpZGUtY291Z2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDYxIn0uZmEtZ3JpcC1saW5lczpiZWZvcmV7Y29udGVudDoiXGY3YTQifS5mYS10aHVtYnMtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNjUifS5mYS11c2VyLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNTAyIn0uZmEtYXJyb3ctcmlnaHQtbG9uZzpiZWZvcmUsLmZhLWxvbmctYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTc4In0uZmEtYW5jaG9yLWNpcmNsZS14bWFyazpiZWZvcmV7Y29udGVudDoiXGU0YWMifS5mYS1lbGxpcHNpcy1oOmJlZm9yZSwuZmEtZWxsaXBzaXM6YmVmb3Jle2NvbnRlbnQ6IlxmMTQxIn0uZmEtY2hlc3MtcGF3bjpiZWZvcmV7Y29udGVudDoiXGY0NDMifS5mYS1maXJzdC1haWQ6YmVmb3JlLC5mYS1raXQtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NzkifS5mYS1wZXJzb24tdGhyb3VnaC13aW5kb3c6YmVmb3Jle2NvbnRlbnQ6IlxlNWE5In0uZmEtdG9vbGJveDpiZWZvcmV7Y29udGVudDoiXGY1NTIifS5mYS1oYW5kcy1ob2xkaW5nLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGU0ZmIifS5mYS1idWc6YmVmb3Jle2NvbnRlbnQ6IlxmMTg4In0uZmEtY3JlZGl0LWNhcmQtYWx0OmJlZm9yZSwuZmEtY3JlZGl0LWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDlkIn0uZmEtYXV0b21vYmlsZTpiZWZvcmUsLmZhLWNhcjpiZWZvcmV7Y29udGVudDoiXGYxYjkifS5mYS1oYW5kLWhvbGRpbmctaGFuZDpiZWZvcmV7Y29udGVudDoiXGU0ZjcifS5mYS1ib29rLW9wZW4tcmVhZGVyOmJlZm9yZSwuZmEtYm9vay1yZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWRhIn0uZmEtbW91bnRhaW4tc3VuOmJlZm9yZXtjb250ZW50OiJcZTUyZiJ9LmZhLWFycm93cy1sZWZ0LXJpZ2h0LXRvLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNGJhIn0uZmEtZGljZS1kMjA6YmVmb3Jle2NvbnRlbnQ6IlxmNmNmIn0uZmEtdHJ1Y2stZHJvcGxldDpiZWZvcmV7Y29udGVudDoiXGU1OGMifS5mYS1maWxlLWNpcmNsZS14bWFyazpiZWZvcmV7Y29udGVudDoiXGU1YTEifS5mYS10ZW1wZXJhdHVyZS1hcnJvdy11cDpiZWZvcmUsLmZhLXRlbXBlcmF0dXJlLXVwOmJlZm9yZXtjb250ZW50OiJcZTA0MCJ9LmZhLW1lZGFsOmJlZm9yZXtjb250ZW50OiJcZjVhMiJ9LmZhLWJlZDpiZWZvcmV7Y29udGVudDoiXGYyMzYifS5mYS1oLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1oOmJlZm9yZXtjb250ZW50OiJcZjBmZCJ9LmZhLXBvZGNhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmNlIn0uZmEtdGVtcGVyYXR1cmUtNDpiZWZvcmUsLmZhLXRlbXBlcmF0dXJlLWZ1bGw6YmVmb3JlLC5mYS10aGVybW9tZXRlci00OmJlZm9yZSwuZmEtdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmV7Y29udGVudDoiXGYyYzcifS5mYS1iZWxsOmJlZm9yZXtjb250ZW50OiJcZjBmMyJ9LmZhLXN1cGVyc2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZjEyYiJ9LmZhLXBsdWctY2lyY2xlLXhtYXJrOmJlZm9yZXtjb250ZW50OiJcZTU2MCJ9LmZhLXN0YXItb2YtbGlmZTpiZWZvcmV7Y29udGVudDoiXGY2MjEifS5mYS1waG9uZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYzZGQifS5mYS1wYWludC1yb2xsZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWFhIn0uZmEtaGFuZHMtaGVscGluZzpiZWZvcmUsLmZhLWhhbmRzaGFrZS1hbmdsZTpiZWZvcmV7Y29udGVudDoiXGY0YzQifS5mYS1sb2NhdGlvbi1kb3Q6YmVmb3JlLC5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzYzUifS5mYS1maWxlOmJlZm9yZXtjb250ZW50OiJcZjE1YiJ9LmZhLWdyZWF0ZXItdGhhbjpiZWZvcmV7Y29udGVudDoiXDNlIn0uZmEtcGVyc29uLXN3aW1taW5nOmJlZm9yZSwuZmEtc3dpbW1lcjpiZWZvcmV7Y29udGVudDoiXGY1YzQifS5mYS1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjA2MyJ9LmZhLWRyb3BsZXQ6YmVmb3JlLC5mYS10aW50OmJlZm9yZXtjb250ZW50OiJcZjA0MyJ9LmZhLWVyYXNlcjpiZWZvcmV7Y29udGVudDoiXGYxMmQifS5mYS1lYXJ0aC1hbWVyaWNhOmJlZm9yZSwuZmEtZWFydGgtYW1lcmljYXM6YmVmb3JlLC5mYS1lYXJ0aDpiZWZvcmUsLmZhLWdsb2JlLWFtZXJpY2FzOmJlZm9yZXtjb250ZW50OiJcZjU3ZCJ9LmZhLXBlcnNvbi1idXJzdDpiZWZvcmV7Y29udGVudDoiXGU1M2IifS5mYS1kb3ZlOmJlZm9yZXtjb250ZW50OiJcZjRiYSJ9LmZhLWJhdHRlcnktMDpiZWZvcmUsLmZhLWJhdHRlcnktZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ0In0uZmEtc29ja3M6YmVmb3Jle2NvbnRlbnQ6IlxmNjk2In0uZmEtaW5ib3g6YmVmb3Jle2NvbnRlbnQ6IlxmMDFjIn0uZmEtc2VjdGlvbjpiZWZvcmV7Y29udGVudDoiXGU0NDcifS5mYS1nYXVnZS1oaWdoOmJlZm9yZSwuZmEtdGFjaG9tZXRlci1hbHQtZmFzdDpiZWZvcmUsLmZhLXRhY2hvbWV0ZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjYyNSJ9LmZhLWVudmVsb3BlLW9wZW4tdGV4dDpiZWZvcmV7Y29udGVudDoiXGY2NTgifS5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlLC5mYS1ob3NwaXRhbC13aWRlOmJlZm9yZSwuZmEtaG9zcGl0YWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGY4In0uZmEtd2luZS1ib3R0bGU6YmVmb3Jle2NvbnRlbnQ6IlxmNzJmIn0uZmEtY2hlc3Mtcm9vazpiZWZvcmV7Y29udGVudDoiXGY0NDcifS5mYS1iYXJzLXN0YWdnZXJlZDpiZWZvcmUsLmZhLXJlb3JkZXI6YmVmb3JlLC5mYS1zdHJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTUwIn0uZmEtZGhhcm1hY2hha3JhOmJlZm9yZXtjb250ZW50OiJcZjY1NSJ9LmZhLWhvdGRvZzpiZWZvcmV7Y29udGVudDoiXGY4MGYifS5mYS1ibGluZDpiZWZvcmUsLmZhLXBlcnNvbi13YWxraW5nLXdpdGgtY2FuZTpiZWZvcmV7Y29udGVudDoiXGYyOWQifS5mYS1kcnVtOmJlZm9yZXtjb250ZW50OiJcZjU2OSJ9LmZhLWljZS1jcmVhbTpiZWZvcmV7Y29udGVudDoiXGY4MTAifS5mYS1oZWFydC1jaXJjbGUtYm9sdDpiZWZvcmV7Y29udGVudDoiXGU0ZmMifS5mYS1mYXg6YmVmb3Jle2NvbnRlbnQ6IlxmMWFjIn0uZmEtcGFyYWdyYXBoOmJlZm9yZXtjb250ZW50OiJcZjFkZCJ9LmZhLWNoZWNrLXRvLXNsb3Q6YmVmb3JlLC5mYS12b3RlLXllYTpiZWZvcmV7Y29udGVudDoiXGY3NzIifS5mYS1zdGFyLWhhbGY6YmVmb3Jle2NvbnRlbnQ6IlxmMDg5In0uZmEtYm94ZXMtYWx0OmJlZm9yZSwuZmEtYm94ZXMtc3RhY2tlZDpiZWZvcmUsLmZhLWJveGVzOmJlZm9yZXtjb250ZW50OiJcZjQ2OCJ9LmZhLWNoYWluOmJlZm9yZSwuZmEtbGluazpiZWZvcmV7Y29udGVudDoiXGYwYzEifS5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlLC5mYS1lYXItbGlzdGVuOmJlZm9yZXtjb250ZW50OiJcZjJhMiJ9LmZhLXRyZWUtY2l0eTpiZWZvcmV7Y29udGVudDoiXGU1ODcifS5mYS1wbGF5OmJlZm9yZXtjb250ZW50OiJcZjA0YiJ9LmZhLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMxIn0uZmEtcnVwaWFoLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMjNkIn0uZmEtbWFnbmlmeWluZy1nbGFzczpiZWZvcmUsLmZhLXNlYXJjaDpiZWZvcmV7Y29udGVudDoiXGYwMDIifS5mYS1waW5nLXBvbmctcGFkZGxlLWJhbGw6YmVmb3JlLC5mYS10YWJsZS10ZW5uaXMtcGFkZGxlLWJhbGw6YmVmb3JlLC5mYS10YWJsZS10ZW5uaXM6YmVmb3Jle2NvbnRlbnQ6IlxmNDVkIn0uZmEtZGlhZ25vc2VzOmJlZm9yZSwuZmEtcGVyc29uLWRvdHMtZnJvbS1saW5lOmJlZm9yZXtjb250ZW50OiJcZjQ3MCJ9LmZhLXRyYXNoLWNhbi1hcnJvdy11cDpiZWZvcmUsLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjgyYSJ9LmZhLW5haXJhLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMWY2In0uZmEtY2FydC1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjIxOCJ9LmZhLXdhbGtpZS10YWxraWU6YmVmb3Jle2NvbnRlbnQ6IlxmOGVmIn0uZmEtZmlsZS1lZGl0OmJlZm9yZSwuZmEtZmlsZS1wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMzFjIn0uZmEtcmVjZWlwdDpiZWZvcmV7Y29udGVudDoiXGY1NDMifS5mYS1wZW4tc3F1YXJlOmJlZm9yZSwuZmEtcGVuY2lsLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMTRiIn0uZmEtc3VpdGNhc2Utcm9sbGluZzpiZWZvcmV7Y29udGVudDoiXGY1YzEifS5mYS1wZXJzb24tY2lyY2xlLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTUzZiJ9LmZhLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNzgifS5mYS1iYXR0ZXJ5LTU6YmVmb3JlLC5mYS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlLC5mYS1iYXR0ZXJ5OmJlZm9yZXtjb250ZW50OiJcZjI0MCJ9LmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNzE0In0uZmEtY29kZS1jb21wYXJlOmJlZm9yZXtjb250ZW50OiJcZTEzYSJ9LmZhLWxpc3QtZG90czpiZWZvcmUsLmZhLWxpc3QtdWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGNhIn0uZmEtc2Nob29sLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNTZmIn0uZmEtdG93ZXItY2VsbDpiZWZvcmV7Y29udGVudDoiXGU1ODUifS5mYS1kb3duLWxvbmc6YmVmb3JlLC5mYS1sb25nLWFycm93LWFsdC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjMwOSJ9LmZhLXJhbmtpbmctc3RhcjpiZWZvcmV7Y29udGVudDoiXGU1NjEifS5mYS1jaGVzcy1raW5nOmJlZm9yZXtjb250ZW50OiJcZjQzZiJ9LmZhLXBlcnNvbi1oYXJhc3Npbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNTQ5In0uZmEtYnJhemlsaWFuLXJlYWwtc2lnbjpiZWZvcmV7Y29udGVudDoiXGU0NmMifS5mYS1sYW5kbWFyay1hbHQ6YmVmb3JlLC5mYS1sYW5kbWFyay1kb21lOmJlZm9yZXtjb250ZW50OiJcZjc1MiJ9LmZhLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjA2MiJ9LmZhLXRlbGV2aXNpb246YmVmb3JlLC5mYS10di1hbHQ6YmVmb3JlLC5mYS10djpiZWZvcmV7Y29udGVudDoiXGYyNmMifS5mYS1zaHJpbXA6YmVmb3Jle2NvbnRlbnQ6IlxlNDQ4In0uZmEtbGlzdC1jaGVjazpiZWZvcmUsLmZhLXRhc2tzOmJlZm9yZXtjb250ZW50OiJcZjBhZSJ9LmZhLWp1Zy1kZXRlcmdlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlNTE5In0uZmEtY2lyY2xlLXVzZXI6YmVmb3JlLC5mYS11c2VyLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYyYmQifS5mYS11c2VyLXNoaWVsZDpiZWZvcmV7Y29udGVudDoiXGY1MDUifS5mYS13aW5kOmJlZm9yZXtjb250ZW50OiJcZjcyZSJ9LmZhLWNhci1idXJzdDpiZWZvcmUsLmZhLWNhci1jcmFzaDpiZWZvcmV7Y29udGVudDoiXGY1ZTEifS5mYS15OmJlZm9yZXtjb250ZW50OiJcNTkifS5mYS1wZXJzb24tc25vd2JvYXJkaW5nOmJlZm9yZSwuZmEtc25vd2JvYXJkaW5nOmJlZm9yZXtjb250ZW50OiJcZjdjZSJ9LmZhLXNoaXBwaW5nLWZhc3Q6YmVmb3JlLC5mYS10cnVjay1mYXN0OmJlZm9yZXtjb250ZW50OiJcZjQ4YiJ9LmZhLWZpc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTc4In0uZmEtdXNlci1ncmFkdWF0ZTpiZWZvcmV7Y29udGVudDoiXGY1MDEifS5mYS1hZGp1c3Q6YmVmb3JlLC5mYS1jaXJjbGUtaGFsZi1zdHJva2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDQyIn0uZmEtY2xhcHBlcmJvYXJkOmJlZm9yZXtjb250ZW50OiJcZTEzMSJ9LmZhLWNpcmNsZS1yYWRpYXRpb246YmVmb3JlLC5mYS1yYWRpYXRpb24tYWx0OmJlZm9yZXtjb250ZW50OiJcZjdiYSJ9LmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlLC5mYS1iYXNlYmFsbDpiZWZvcmV7Y29udGVudDoiXGY0MzMifS5mYS1qZXQtZmlnaHRlci11cDpiZWZvcmV7Y29udGVudDoiXGU1MTgifS5mYS1kaWFncmFtLXByb2plY3Q6YmVmb3JlLC5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTQyIn0uZmEtY29weTpiZWZvcmV7Y29udGVudDoiXGYwYzUifS5mYS12b2x1bWUtbXV0ZTpiZWZvcmUsLmZhLXZvbHVtZS10aW1lczpiZWZvcmUsLmZhLXZvbHVtZS14bWFyazpiZWZvcmV7Y29udGVudDoiXGY2YTkifS5mYS1oYW5kLXNwYXJrbGVzOmJlZm9yZXtjb250ZW50OiJcZTA1ZCJ9LmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUsLmZhLWdyaXA6YmVmb3Jle2NvbnRlbnQ6IlxmNThkIn0uZmEtc2hhcmUtZnJvbS1zcXVhcmU6YmVmb3JlLC5mYS1zaGFyZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRkIn0uZmEtY2hpbGQtY29tYmF0YW50OmJlZm9yZSwuZmEtY2hpbGQtcmlmbGU6YmVmb3Jle2NvbnRlbnQ6IlxlNGUwIn0uZmEtZ3VuOmJlZm9yZXtjb250ZW50OiJcZTE5YiJ9LmZhLXBob25lLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1waG9uZTpiZWZvcmV7Y29udGVudDoiXGYwOTgifS5mYS1hZGQ6YmVmb3JlLC5mYS1wbHVzOmJlZm9yZXtjb250ZW50OiJcMmIifS5mYS1leHBhbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDY1In0uZmEtY29tcHV0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxlNGU1In0uZmEtY2xvc2U6YmVmb3JlLC5mYS1tdWx0aXBseTpiZWZvcmUsLmZhLXJlbW92ZTpiZWZvcmUsLmZhLXRpbWVzOmJlZm9yZSwuZmEteG1hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMDBkIn0uZmEtYXJyb3dzLXVwLWRvd24tbGVmdC1yaWdodDpiZWZvcmUsLmZhLWFycm93czpiZWZvcmV7Y29udGVudDoiXGYwNDcifS5mYS1jaGFsa2JvYXJkLXRlYWNoZXI6YmVmb3JlLC5mYS1jaGFsa2JvYXJkLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTFjIn0uZmEtcGVzby1zaWduOmJlZm9yZXtjb250ZW50OiJcZTIyMiJ9LmZhLWJ1aWxkaW5nLXNoaWVsZDpiZWZvcmV7Y29udGVudDoiXGU0ZDgifS5mYS1iYWJ5OmJlZm9yZXtjb250ZW50OiJcZjc3YyJ9LmZhLXVzZXJzLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNTkyIn0uZmEtcXVvdGUtbGVmdC1hbHQ6YmVmb3JlLC5mYS1xdW90ZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwZCJ9LmZhLXRyYWN0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmNzIyIn0uZmEtdHJhc2gtYXJyb3ctdXA6YmVmb3JlLC5mYS10cmFzaC1yZXN0b3JlOmJlZm9yZXtjb250ZW50OiJcZjgyOSJ9LmZhLWFycm93LWRvd24tdXAtbG9jazpiZWZvcmV7Y29udGVudDoiXGU0YjAifS5mYS1saW5lcy1sZWFuaW5nOmJlZm9yZXtjb250ZW50OiJcZTUxZSJ9LmZhLXJ1bGVyLWNvbWJpbmVkOmJlZm9yZXtjb250ZW50OiJcZjU0NiJ9LmZhLWNvcHlyaWdodDpiZWZvcmV7Y29udGVudDoiXGYxZjkifS5mYS1lcXVhbHM6YmVmb3Jle2NvbnRlbnQ6IlwzZCJ9LmZhLWJsZW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTE3In0uZmEtdGVldGg6YmVmb3Jle2NvbnRlbnQ6IlxmNjJlIn0uZmEtaWxzOmJlZm9yZSwuZmEtc2hla2VsLXNpZ246YmVmb3JlLC5mYS1zaGVrZWw6YmVmb3JlLC5mYS1zaGVxZWwtc2lnbjpiZWZvcmUsLmZhLXNoZXFlbDpiZWZvcmV7Y29udGVudDoiXGYyMGIifS5mYS1tYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMjc5In0uZmEtcm9ja2V0OmJlZm9yZXtjb250ZW50OiJcZjEzNSJ9LmZhLXBob3RvLWZpbG06YmVmb3JlLC5mYS1waG90by12aWRlbzpiZWZvcmV7Y29udGVudDoiXGY4N2MifS5mYS1mb2xkZXItbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmNjVkIn0uZmEtc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTRlIn0uZmEtYXJyb3ctdHJlbmQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlMDk4In0uZmEtcGx1Zy1jaXJjbGUtbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxlNTVlIn0uZmEtc2lnbi1oYW5naW5nOmJlZm9yZSwuZmEtc2lnbjpiZWZvcmV7Y29udGVudDoiXGY0ZDkifS5mYS1iZXppZXItY3VydmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTViIn0uZmEtYmVsbC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxZjYifS5mYS10YWJsZXQtYW5kcm9pZDpiZWZvcmUsLmZhLXRhYmxldDpiZWZvcmV7Y29udGVudDoiXGYzZmIifS5mYS1zY2hvb2wtZmxhZzpiZWZvcmV7Y29udGVudDoiXGU1NmUifS5mYS1maWxsOmJlZm9yZXtjb250ZW50OiJcZjU3NSJ9LmZhLWFuZ2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjEwNiJ9LmZhLWRydW1zdGljay1iaXRlOmJlZm9yZXtjb250ZW50OiJcZjZkNyJ9LmZhLWhvbGx5LWJlcnJ5OmJlZm9yZXtjb250ZW50OiJcZjdhYSJ9LmZhLWNoZXZyb24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwNTMifS5mYS1iYWN0ZXJpYTpiZWZvcmV7Y29udGVudDoiXGUwNTkifS5mYS1oYW5kLWxpemFyZDpiZWZvcmV7Y29udGVudDoiXGYyNTgifS5mYS1ub3RkZWY6YmVmb3Jle2NvbnRlbnQ6IlxlMWZlIn0uZmEtZGlzZWFzZTpiZWZvcmV7Y29udGVudDoiXGY3ZmEifS5mYS1icmllZmNhc2UtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NjkifS5mYS1nZW5kZXJsZXNzOmJlZm9yZXtjb250ZW50OiJcZjIyZCJ9LmZhLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDU0In0uZmEtcmV0d2VldDpiZWZvcmV7Y29udGVudDoiXGYwNzkifS5mYS1jYXItYWx0OmJlZm9yZSwuZmEtY2FyLXJlYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWRlIn0uZmEtcHVtcC1zb2FwOmJlZm9yZXtjb250ZW50OiJcZTA2YiJ9LmZhLXZpZGVvLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZjRlMiJ9LmZhLWJhdHRlcnktMjpiZWZvcmUsLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmV7Y29udGVudDoiXGYyNDMifS5mYS1yYWRpbzpiZWZvcmV7Y29udGVudDoiXGY4ZDcifS5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSwuZmEtY2FycmlhZ2UtYmFieTpiZWZvcmV7Y29udGVudDoiXGY3N2QifS5mYS10cmFmZmljLWxpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjYzNyJ9LmZhLXRoZXJtb21ldGVyOmJlZm9yZXtjb250ZW50OiJcZjQ5MSJ9LmZhLXZyLWNhcmRib2FyZDpiZWZvcmV7Y29udGVudDoiXGY3MjkifS5mYS1oYW5kLW1pZGRsZS1maW5nZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODA2In0uZmEtcGVyY2VudDpiZWZvcmUsLmZhLXBlcmNlbnRhZ2U6YmVmb3Jle2NvbnRlbnQ6IlwyNSJ9LmZhLXRydWNrLW1vdmluZzpiZWZvcmV7Y29udGVudDoiXGY0ZGYifS5mYS1nbGFzcy13YXRlci1kcm9wbGV0OmJlZm9yZXtjb250ZW50OiJcZTRmNSJ9LmZhLWRpc3BsYXk6YmVmb3Jle2NvbnRlbnQ6IlxlMTYzIn0uZmEtZmFjZS1zbWlsZTpiZWZvcmUsLmZhLXNtaWxlOmJlZm9yZXtjb250ZW50OiJcZjExOCJ9LmZhLXRodW1iLXRhY2s6YmVmb3JlLC5mYS10aHVtYnRhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDhkIn0uZmEtdHJvcGh5OmJlZm9yZXtjb250ZW50OiJcZjA5MSJ9LmZhLXBlcnNvbi1wcmF5aW5nOmJlZm9yZSwuZmEtcHJheTpiZWZvcmV7Y29udGVudDoiXGY2ODMifS5mYS1oYW1tZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNmUzIn0uZmEtaGFuZC1wZWFjZTpiZWZvcmV7Y29udGVudDoiXGYyNWIifS5mYS1yb3RhdGU6YmVmb3JlLC5mYS1zeW5jLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjEifS5mYS1zcGlubmVyOmJlZm9yZXtjb250ZW50OiJcZjExMCJ9LmZhLXJvYm90OmJlZm9yZXtjb250ZW50OiJcZjU0NCJ9LmZhLXBlYWNlOmJlZm9yZXtjb250ZW50OiJcZjY3YyJ9LmZhLWNvZ3M6YmVmb3JlLC5mYS1nZWFyczpiZWZvcmV7Y29udGVudDoiXGYwODUifS5mYS13YXJlaG91c2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDk0In0uZmEtYXJyb3ctdXAtcmlnaHQtZG90czpiZWZvcmV7Y29udGVudDoiXGU0YjcifS5mYS1zcGxvdGNoOmJlZm9yZXtjb250ZW50OiJcZjViYyJ9LmZhLWZhY2UtZ3Jpbi1oZWFydHM6YmVmb3JlLC5mYS1ncmluLWhlYXJ0czpiZWZvcmV7Y29udGVudDoiXGY1ODQifS5mYS1kaWNlLWZvdXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTI0In0uZmEtc2ltLWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2M0In0uZmEtdHJhbnNnZW5kZXItYWx0OmJlZm9yZSwuZmEtdHJhbnNnZW5kZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjI1In0uZmEtbWVyY3VyeTpiZWZvcmV7Y29udGVudDoiXGYyMjMifS5mYS1hcnJvdy10dXJuLWRvd246YmVmb3JlLC5mYS1sZXZlbC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE0OSJ9LmZhLXBlcnNvbi1mYWxsaW5nLWJ1cnN0OmJlZm9yZXtjb250ZW50OiJcZTU0NyJ9LmZhLWF3YXJkOmJlZm9yZXtjb250ZW50OiJcZjU1OSJ9LmZhLXRpY2tldC1hbHQ6YmVmb3JlLC5mYS10aWNrZXQtc2ltcGxlOmJlZm9yZXtjb250ZW50OiJcZjNmZiJ9LmZhLWJ1aWxkaW5nOmJlZm9yZXtjb250ZW50OiJcZjFhZCJ9LmZhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSwuZmEtYW5nbGVzLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTAwIn0uZmEtcXJjb2RlOmJlZm9yZXtjb250ZW50OiJcZjAyOSJ9LmZhLWNsb2NrLXJvdGF0ZS1sZWZ0OmJlZm9yZSwuZmEtaGlzdG9yeTpiZWZvcmV7Y29udGVudDoiXGYxZGEifS5mYS1mYWNlLWdyaW4tYmVhbS1zd2VhdDpiZWZvcmUsLmZhLWdyaW4tYmVhbS1zd2VhdDpiZWZvcmV7Y29udGVudDoiXGY1ODMifS5mYS1hcnJvdy1yaWdodC1mcm9tLWZpbGU6YmVmb3JlLC5mYS1maWxlLWV4cG9ydDpiZWZvcmV7Y29udGVudDoiXGY1NmUifS5mYS1zaGllbGQtYmxhbms6YmVmb3JlLC5mYS1zaGllbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTMyIn0uZmEtYXJyb3ctdXAtc2hvcnQtd2lkZTpiZWZvcmUsLmZhLXNvcnQtYW1vdW50LXVwLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODUifS5mYS1ob3VzZS1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTNiMiJ9LmZhLWdvbGYtYmFsbC10ZWU6YmVmb3JlLC5mYS1nb2xmLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDUwIn0uZmEtY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUsLmZhLWNpcmNsZS1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM3In0uZmEtaG91c2UtY2hpbW5leS13aW5kb3c6YmVmb3Jle2NvbnRlbnQ6IlxlMDBkIn0uZmEtcGVuLW5pYjpiZWZvcmV7Y29udGVudDoiXGY1YWQifS5mYS10ZW50LWFycm93LXR1cm4tbGVmdDpiZWZvcmV7Y29udGVudDoiXGU1ODAifS5mYS10ZW50czpiZWZvcmV7Y29udGVudDoiXGU1ODIifS5mYS1tYWdpYzpiZWZvcmUsLmZhLXdhbmQtbWFnaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMGQwIn0uZmEtZG9nOmJlZm9yZXtjb250ZW50OiJcZjZkMyJ9LmZhLWNhcnJvdDpiZWZvcmV7Y29udGVudDoiXGY3ODcifS5mYS1tb29uOmJlZm9yZXtjb250ZW50OiJcZjE4NiJ9LmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSwuZmEtd2luZS1nbGFzcy1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGY1Y2UifS5mYS1jaGVlc2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2VmIn0uZmEteWluLXlhbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNmFkIn0uZmEtbXVzaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMDAxIn0uZmEtY29kZS1jb21taXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzg2In0uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZXtjb250ZW50OiJcZjc2YiJ9LmZhLWJpa2luZzpiZWZvcmUsLmZhLXBlcnNvbi1iaWtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmODRhIn0uZmEtYnJvb206YmVmb3Jle2NvbnRlbnQ6IlxmNTFhIn0uZmEtc2hpZWxkLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZTU3NCJ9LmZhLWdvcHVyYW06YmVmb3Jle2NvbnRlbnQ6IlxmNjY0In0uZmEtZWFydGgtb2NlYW5pYTpiZWZvcmUsLmZhLWdsb2JlLW9jZWFuaWE6YmVmb3Jle2NvbnRlbnQ6IlxlNDdiIn0uZmEtc3F1YXJlLXhtYXJrOmJlZm9yZSwuZmEtdGltZXMtc3F1YXJlOmJlZm9yZSwuZmEteG1hcmstc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjJkMyJ9LmZhLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlwyMyJ9LmZhLWV4cGFuZC1hbHQ6YmVmb3JlLC5mYS11cC1yaWdodC1hbmQtZG93bi1sZWZ0LWZyb20tY2VudGVyOmJlZm9yZXtjb250ZW50OiJcZjQyNCJ9LmZhLW9pbC1jYW46YmVmb3Jle2NvbnRlbnQ6IlxmNjEzIn0uZmEtdDpiZWZvcmV7Y29udGVudDoiXDU0In0uZmEtaGlwcG86YmVmb3Jle2NvbnRlbnQ6IlxmNmVkIn0uZmEtY2hhcnQtY29sdW1uOmJlZm9yZXtjb250ZW50OiJcZTBlMyJ9LmZhLWluZmluaXR5OmJlZm9yZXtjb250ZW50OiJcZjUzNCJ9LmZhLXZpYWwtY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTU5NiJ9LmZhLXBlcnNvbi1hcnJvdy1kb3duLXRvLWxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxlNTM4In0uZmEtdm9pY2VtYWlsOmJlZm9yZXtjb250ZW50OiJcZjg5NyJ9LmZhLWZhbjpiZWZvcmV7Y29udGVudDoiXGY4NjMifS5mYS1wZXJzb24td2Fsa2luZy1sdWdnYWdlOmJlZm9yZXtjb250ZW50OiJcZTU1NCJ9LmZhLWFycm93cy1hbHQtdjpiZWZvcmUsLmZhLXVwLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMzM4In0uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZXtjb250ZW50OiJcZjczYyJ9LmZhLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OiJcZjEzMyJ9LmZhLXRyYWlsZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDQxIn0uZmEtYmFoYWk6YmVmb3JlLC5mYS1oYXlrYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNjY2In0uZmEtc2QtY2FyZDpiZWZvcmV7Y29udGVudDoiXGY3YzIifS5mYS1kcmFnb246YmVmb3Jle2NvbnRlbnQ6IlxmNmQ1In0uZmEtc2hvZS1wcmludHM6YmVmb3Jle2NvbnRlbnQ6IlxmNTRiIn0uZmEtY2lyY2xlLXBsdXM6YmVmb3JlLC5mYS1wbHVzLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNTUifS5mYS1mYWNlLWdyaW4tdG9uZ3VlLXdpbms6YmVmb3JlLC5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZXtjb250ZW50OiJcZjU4YiJ9LmZhLWhhbmQtaG9sZGluZzpiZWZvcmV7Y29udGVudDoiXGY0YmQifS5mYS1wbHVnLWNpcmNsZS1leGNsYW1hdGlvbjpiZWZvcmV7Y29udGVudDoiXGU1NWQifS5mYS1jaGFpbi1icm9rZW46YmVmb3JlLC5mYS1jaGFpbi1zbGFzaDpiZWZvcmUsLmZhLWxpbmstc2xhc2g6YmVmb3JlLC5mYS11bmxpbms6YmVmb3Jle2NvbnRlbnQ6IlxmMTI3In0uZmEtY2xvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMjRkIn0uZmEtcGVyc29uLXdhbGtpbmctYXJyb3ctbG9vcC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTU1MSJ9LmZhLWFycm93LXVwLXotYTpiZWZvcmUsLmZhLXNvcnQtYWxwaGEtdXAtYWx0OmJlZm9yZXtjb250ZW50OiJcZjg4MiJ9LmZhLWZpcmUtYWx0OmJlZm9yZSwuZmEtZmlyZS1mbGFtZS1jdXJ2ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2U0In0uZmEtdG9ybmFkbzpiZWZvcmV7Y29udGVudDoiXGY3NmYifS5mYS1maWxlLWNpcmNsZS1wbHVzOmJlZm9yZXtjb250ZW50OiJcZTQ5NCJ9LmZhLWJvb2stcXVyYW46YmVmb3JlLC5mYS1xdXJhbjpiZWZvcmV7Y29udGVudDoiXGY2ODcifS5mYS1hbmNob3I6YmVmb3Jle2NvbnRlbnQ6IlxmMTNkIn0uZmEtYm9yZGVyLWFsbDpiZWZvcmV7Y29udGVudDoiXGY4NGMifS5mYS1hbmdyeTpiZWZvcmUsLmZhLWZhY2UtYW5ncnk6YmVmb3Jle2NvbnRlbnQ6IlxmNTU2In0uZmEtY29va2llLWJpdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNTY0In0uZmEtYXJyb3ctdHJlbmQtZG93bjpiZWZvcmV7Y29udGVudDoiXGUwOTcifS5mYS1mZWVkOmJlZm9yZSwuZmEtcnNzOmJlZm9yZXtjb250ZW50OiJcZjA5ZSJ9LmZhLWRyYXctcG9seWdvbjpiZWZvcmV7Y29udGVudDoiXGY1ZWUifS5mYS1iYWxhbmNlLXNjYWxlOmJlZm9yZSwuZmEtc2NhbGUtYmFsYW5jZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjRlIn0uZmEtZ2F1Z2Utc2ltcGxlLWhpZ2g6YmVmb3JlLC5mYS10YWNob21ldGVyLWZhc3Q6YmVmb3JlLC5mYS10YWNob21ldGVyOmJlZm9yZXtjb250ZW50OiJcZjYyYSJ9LmZhLXNob3dlcjpiZWZvcmV7Y29udGVudDoiXGYyY2MifS5mYS1kZXNrdG9wLWFsdDpiZWZvcmUsLmZhLWRlc2t0b3A6YmVmb3Jle2NvbnRlbnQ6IlxmMzkwIn0uZmEtbTpiZWZvcmV7Y29udGVudDoiXDRkIn0uZmEtdGFibGUtbGlzdDpiZWZvcmUsLmZhLXRoLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDBiIn0uZmEtY29tbWVudC1zbXM6YmVmb3JlLC5mYS1zbXM6YmVmb3Jle2NvbnRlbnQ6IlxmN2NkIn0uZmEtYm9vazpiZWZvcmV7Y29udGVudDoiXGYwMmQifS5mYS11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjM0In0uZmEtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDBjIn0uZmEtYmF0dGVyeS00OmJlZm9yZSwuZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmV7Y29udGVudDoiXGYyNDEifS5mYS1ob3VzZS1jaXJjbGUtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxlNTA5In0uZmEtYW5nbGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxMDQifS5mYS1kaWFncmFtLXN1Y2Nlc3NvcjpiZWZvcmV7Y29udGVudDoiXGU0N2EifS5mYS10cnVjay1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU1OGIifS5mYS1hcnJvd3Mtc3BsaXQtdXAtYW5kLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlNGJjIn0uZmEtZmlzdC1yYWlzZWQ6YmVmb3JlLC5mYS1oYW5kLWZpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNmRlIn0uZmEtY2xvdWQtbW9vbjpiZWZvcmV7Y29udGVudDoiXGY2YzMifS5mYS1icmllZmNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGIxIn0uZmEtcGVyc29uLWZhbGxpbmc6YmVmb3Jle2NvbnRlbnQ6IlxlNTQ2In0uZmEtaW1hZ2UtcG9ydHJhaXQ6YmVmb3JlLC5mYS1wb3J0cmFpdDpiZWZvcmV7Y29udGVudDoiXGYzZTAifS5mYS11c2VyLXRhZzpiZWZvcmV7Y29udGVudDoiXGY1MDcifS5mYS1ydWc6YmVmb3Jle2NvbnRlbnQ6IlxlNTY5In0uZmEtZWFydGgtZXVyb3BlOmJlZm9yZSwuZmEtZ2xvYmUtZXVyb3BlOmJlZm9yZXtjb250ZW50OiJcZjdhMiJ9LmZhLWNhcnQtZmxhdGJlZC1zdWl0Y2FzZTpiZWZvcmUsLmZhLWx1Z2dhZ2UtY2FydDpiZWZvcmV7Y29udGVudDoiXGY1OWQifS5mYS1yZWN0YW5nbGUtdGltZXM6YmVmb3JlLC5mYS1yZWN0YW5nbGUteG1hcms6YmVmb3JlLC5mYS10aW1lcy1yZWN0YW5nbGU6YmVmb3JlLC5mYS13aW5kb3ctY2xvc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uZmEtYmFodC1zaWduOmJlZm9yZXtjb250ZW50OiJcZTBhYyJ9LmZhLWJvb2stb3BlbjpiZWZvcmV7Y29udGVudDoiXGY1MTgifS5mYS1ib29rLWpvdXJuYWwtd2hpbGxzOmJlZm9yZSwuZmEtam91cm5hbC13aGlsbHM6YmVmb3Jle2NvbnRlbnQ6IlxmNjZhIn0uZmEtaGFuZGN1ZmZzOmJlZm9yZXtjb250ZW50OiJcZTRmOCJ9LmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSwuZmEtdHJpYW5nbGUtZXhjbGFtYXRpb246YmVmb3JlLC5mYS13YXJuaW5nOmJlZm9yZXtjb250ZW50OiJcZjA3MSJ9LmZhLWRhdGFiYXNlOmJlZm9yZXtjb250ZW50OiJcZjFjMCJ9LmZhLW1haWwtZm9yd2FyZDpiZWZvcmUsLmZhLXNoYXJlOmJlZm9yZXtjb250ZW50OiJcZjA2NCJ9LmZhLWJvdHRsZS1kcm9wbGV0OmJlZm9yZXtjb250ZW50OiJcZTRjNCJ9LmZhLW1hc2stZmFjZTpiZWZvcmV7Y29udGVudDoiXGUxZDcifS5mYS1oaWxsLXJvY2tzbGlkZTpiZWZvcmV7Y29udGVudDoiXGU1MDgifS5mYS1leGNoYW5nZS1hbHQ6YmVmb3JlLC5mYS1yaWdodC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjM2MiJ9LmZhLXBhcGVyLXBsYW5lOmJlZm9yZXtjb250ZW50OiJcZjFkOCJ9LmZhLXJvYWQtY2lyY2xlLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZTU2NSJ9LmZhLWR1bmdlb246YmVmb3Jle2NvbnRlbnQ6IlxmNmQ5In0uZmEtYWxpZ24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM4In0uZmEtbW9uZXktYmlsbC0xLXdhdmU6YmVmb3JlLC5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjUzYiJ9LmZhLWxpZmUtcmluZzpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5mYS1oYW5kczpiZWZvcmUsLmZhLXNpZ24tbGFuZ3VhZ2U6YmVmb3JlLC5mYS1zaWduaW5nOmJlZm9yZXtjb250ZW50OiJcZjJhNyJ9LmZhLWNhbGVuZGFyLWRheTpiZWZvcmV7Y29udGVudDoiXGY3ODMifS5mYS1sYWRkZXItd2F0ZXI6YmVmb3JlLC5mYS1zd2ltbWluZy1wb29sOmJlZm9yZSwuZmEtd2F0ZXItbGFkZGVyOmJlZm9yZXtjb250ZW50OiJcZjVjNSJ9LmZhLWFycm93cy11cC1kb3duOmJlZm9yZSwuZmEtYXJyb3dzLXY6YmVmb3Jle2NvbnRlbnQ6IlxmMDdkIn0uZmEtZmFjZS1ncmltYWNlOmJlZm9yZSwuZmEtZ3JpbWFjZTpiZWZvcmV7Y29udGVudDoiXGY1N2YifS5mYS13aGVlbGNoYWlyLWFsdDpiZWZvcmUsLmZhLXdoZWVsY2hhaXItbW92ZTpiZWZvcmV7Y29udGVudDoiXGUyY2UifS5mYS1sZXZlbC1kb3duLWFsdDpiZWZvcmUsLmZhLXR1cm4tZG93bjpiZWZvcmV7Y29udGVudDoiXGYzYmUifS5mYS1wZXJzb24td2Fsa2luZy1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGU1NTIifS5mYS1lbnZlbG9wZS1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtZW52ZWxvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTk5In0uZmEtZGljZTpiZWZvcmV7Y29udGVudDoiXGY1MjIifS5mYS1ib3dsaW5nLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDM2In0uZmEtYnJhaW46YmVmb3Jle2NvbnRlbnQ6IlxmNWRjIn0uZmEtYmFuZC1haWQ6YmVmb3JlLC5mYS1iYW5kYWdlOmJlZm9yZXtjb250ZW50OiJcZjQ2MiJ9LmZhLWNhbGVuZGFyLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjI3MiJ9LmZhLWNpcmNsZS14bWFyazpiZWZvcmUsLmZhLXRpbWVzLWNpcmNsZTpiZWZvcmUsLmZhLXhtYXJrLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNTcifS5mYS1naWZ0czpiZWZvcmV7Y29udGVudDoiXGY3OWMifS5mYS1ob3RlbDpiZWZvcmV7Y29udGVudDoiXGY1OTQifS5mYS1lYXJ0aC1hc2lhOmJlZm9yZSwuZmEtZ2xvYmUtYXNpYTpiZWZvcmV7Y29udGVudDoiXGY1N2UifS5mYS1pZC1jYXJkLWFsdDpiZWZvcmUsLmZhLWlkLWNhcmQtY2xpcDpiZWZvcmV7Y29udGVudDoiXGY0N2YifS5mYS1tYWduaWZ5aW5nLWdsYXNzLXBsdXM6YmVmb3JlLC5mYS1zZWFyY2gtcGx1czpiZWZvcmV7Y29udGVudDoiXGYwMGUifS5mYS10aHVtYnMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTY0In0uZmEtdXNlci1jbG9jazpiZWZvcmV7Y29udGVudDoiXGY0ZmQifS5mYS1hbGxlcmdpZXM6YmVmb3JlLC5mYS1oYW5kLWRvdHM6YmVmb3Jle2NvbnRlbnQ6IlxmNDYxIn0uZmEtZmlsZS1pbnZvaWNlOmJlZm9yZXtjb250ZW50OiJcZjU3MCJ9LmZhLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmV7Y29udGVudDoiXGYyZDEifS5mYS1jb2ZmZWU6YmVmb3JlLC5mYS1tdWctc2F1Y2VyOmJlZm9yZXtjb250ZW50OiJcZjBmNCJ9LmZhLWJydXNoOmJlZm9yZXtjb250ZW50OiJcZjU1ZCJ9LmZhLW1hc2s6YmVmb3Jle2NvbnRlbnQ6IlxmNmZhIn0uZmEtbWFnbmlmeWluZy1nbGFzcy1taW51czpiZWZvcmUsLmZhLXNlYXJjaC1taW51czpiZWZvcmV7Y29udGVudDoiXGYwMTAifS5mYS1ydWxlci12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGY1NDgifS5mYS11c2VyLWFsdDpiZWZvcmUsLmZhLXVzZXItbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDA2In0uZmEtdHJhaW4tdHJhbTpiZWZvcmV7Y29udGVudDoiXGU1YjQifS5mYS11c2VyLW51cnNlOmJlZm9yZXtjb250ZW50OiJcZjgyZiJ9LmZhLXN5cmluZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDhlIn0uZmEtY2xvdWQtc3VuOmJlZm9yZXtjb250ZW50OiJcZjZjNCJ9LmZhLXN0b3B3YXRjaC0yMDpiZWZvcmV7Y29udGVudDoiXGUwNmYifS5mYS1zcXVhcmUtZnVsbDpiZWZvcmV7Y29udGVudDoiXGY0NWMifS5mYS1tYWduZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc2In0uZmEtamFyOmJlZm9yZXtjb250ZW50OiJcZTUxNiJ9LmZhLW5vdGUtc3RpY2t5OmJlZm9yZSwuZmEtc3RpY2t5LW5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ5In0uZmEtYnVnLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTQ5MCJ9LmZhLWFycm93LXVwLWZyb20td2F0ZXItcHVtcDpiZWZvcmV7Y29udGVudDoiXGU0YjYifS5mYS1ib25lOmJlZm9yZXtjb250ZW50OiJcZjVkNyJ9LmZhLXVzZXItaW5qdXJlZDpiZWZvcmV7Y29udGVudDoiXGY3MjgifS5mYS1mYWNlLXNhZC10ZWFyOmJlZm9yZSwuZmEtc2FkLXRlYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWI0In0uZmEtcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDcyIn0uZmEtdGVudC1hcnJvd3MtZG93bjpiZWZvcmV7Y29udGVudDoiXGU1ODEifS5mYS1leGNsYW1hdGlvbjpiZWZvcmV7Y29udGVudDoiXDIxIn0uZmEtYXJyb3dzLXNwaW46YmVmb3Jle2NvbnRlbnQ6IlxlNGJiIn0uZmEtcHJpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDJmIn0uZmEtdHJ5OmJlZm9yZSwuZmEtdHVya2lzaC1saXJhLXNpZ246YmVmb3JlLC5mYS10dXJraXNoLWxpcmE6YmVmb3Jle2NvbnRlbnQ6IlxlMmJiIn0uZmEtZG9sbGFyLXNpZ246YmVmb3JlLC5mYS1kb2xsYXI6YmVmb3JlLC5mYS11c2Q6YmVmb3Jle2NvbnRlbnQ6IlwyNCJ9LmZhLXg6YmVmb3Jle2NvbnRlbnQ6Ilw1OCJ9LmZhLW1hZ25pZnlpbmctZ2xhc3MtZG9sbGFyOmJlZm9yZSwuZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2ODgifS5mYS11c2Vycy1jb2c6YmVmb3JlLC5mYS11c2Vycy1nZWFyOmJlZm9yZXtjb250ZW50OiJcZjUwOSJ9LmZhLXBlcnNvbi1taWxpdGFyeS1wb2ludGluZzpiZWZvcmV7Y29udGVudDoiXGU1NGEifS5mYS1iYW5rOmJlZm9yZSwuZmEtYnVpbGRpbmctY29sdW1uczpiZWZvcmUsLmZhLWluc3RpdHV0aW9uOmJlZm9yZSwuZmEtbXVzZXVtOmJlZm9yZSwuZmEtdW5pdmVyc2l0eTpiZWZvcmV7Y29udGVudDoiXGYxOWMifS5mYS11bWJyZWxsYTpiZWZvcmV7Y29udGVudDoiXGYwZTkifS5mYS10cm93ZWw6YmVmb3Jle2NvbnRlbnQ6IlxlNTg5In0uZmEtZDpiZWZvcmV7Y29udGVudDoiXDQ0In0uZmEtc3RhcGxlcjpiZWZvcmV7Y29udGVudDoiXGU1YWYifS5mYS1tYXNrcy10aGVhdGVyOmJlZm9yZSwuZmEtdGhlYXRlci1tYXNrczpiZWZvcmV7Y29udGVudDoiXGY2MzAifS5mYS1raXAtc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxYzQifS5mYS1oYW5kLXBvaW50LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE1In0uZmEtaGFuZHNoYWtlLWFsdDpiZWZvcmUsLmZhLWhhbmRzaGFrZS1zaW1wbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGM2In0uZmEtZmlnaHRlci1qZXQ6YmVmb3JlLC5mYS1qZXQtZmlnaHRlcjpiZWZvcmV7Y29udGVudDoiXGYwZmIifS5mYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLXNoYXJlLW5vZGVzOmJlZm9yZXtjb250ZW50OiJcZjFlMSJ9LmZhLWJhcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDJhIn0uZmEtcGx1cy1taW51czpiZWZvcmV7Y29udGVudDoiXGU0M2MifS5mYS12aWRlby1jYW1lcmE6YmVmb3JlLC5mYS12aWRlbzpiZWZvcmV7Y29udGVudDoiXGYwM2QifS5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUsLmZhLW1vcnRhci1ib2FyZDpiZWZvcmV7Y29udGVudDoiXGYxOWQifS5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGUwNWMifS5mYS1wZXJzb24tY2lyY2xlLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTUzZSJ9LmZhLWxldmVsLXVwLWFsdDpiZWZvcmUsLmZhLXR1cm4tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmM2JmIn0NCi5mYS1zci1vbmx5LC5mYS1zci1vbmx5LWZvY3VzYWJsZTpub3QoOmZvY3VzKSwuc3Itb25seSwuc3Itb25seS1mb2N1c2FibGU6bm90KDpmb2N1cyl7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7cGFkZGluZzowO21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowfTpob3N0LDpyb290ey0tZmEtc3R5bGUtZmFtaWx5LWJyYW5kczoiRm9udCBBd2Vzb21lIDYgQnJhbmRzIjstLWZhLWZvbnQtYnJhbmRzOm5vcm1hbCA0MDAgMWVtLzEgIkZvbnQgQXdlc29tZSA2IEJyYW5kcyJ9QGZvbnQtZmFjZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDYgQnJhbmRzIjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpfS5mYS1icmFuZHMsLmZhYntmb250LXdlaWdodDo0MDB9LmZhLW1vbmVybzpiZWZvcmV7Y29udGVudDoiXGYzZDAifS5mYS1ob29saTpiZWZvcmV7Y29udGVudDoiXGY0MjcifS5mYS15ZWxwOmJlZm9yZXtjb250ZW50OiJcZjFlOSJ9LmZhLWNjLXZpc2E6YmVmb3Jle2NvbnRlbnQ6IlxmMWYwIn0uZmEtbGFzdGZtOmJlZm9yZXtjb250ZW50OiJcZjIwMiJ9LmZhLXNob3B3YXJlOmJlZm9yZXtjb250ZW50OiJcZjViNSJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtbmM6YmVmb3Jle2NvbnRlbnQ6IlxmNGU4In0uZmEtYXdzOmJlZm9yZXtjb250ZW50OiJcZjM3NSJ9LmZhLXJlZGhhdDpiZWZvcmV7Y29udGVudDoiXGY3YmMifS5mYS15b2FzdDpiZWZvcmV7Y29udGVudDoiXGYyYjEifS5mYS1jbG91ZGZsYXJlOmJlZm9yZXtjb250ZW50OiJcZTA3ZCJ9LmZhLXVwczpiZWZvcmV7Y29udGVudDoiXGY3ZTAifS5mYS1waXhpdjpiZWZvcmV7Y29udGVudDoiXGU2NDAifS5mYS13cGV4cGxvcmVyOmJlZm9yZXtjb250ZW50OiJcZjJkZSJ9LmZhLWR5YWxvZzpiZWZvcmV7Y29udGVudDoiXGYzOTkifS5mYS1iaXR5OmJlZm9yZXtjb250ZW50OiJcZjM3YSJ9LmZhLXN0YWNrcGF0aDpiZWZvcmV7Y29udGVudDoiXGY4NDIifS5mYS1idXlzZWxsYWRzOmJlZm9yZXtjb250ZW50OiJcZjIwZCJ9LmZhLWZpcnN0LW9yZGVyOmJlZm9yZXtjb250ZW50OiJcZjJiMCJ9LmZhLW1vZHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjg1In0uZmEtZ3VpbGRlZDpiZWZvcmV7Y29udGVudDoiXGUwN2UifS5mYS12bnY6YmVmb3Jle2NvbnRlbnQ6IlxmNDBiIn0uZmEtanMtc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLWpzOmJlZm9yZXtjb250ZW50OiJcZjNiOSJ9LmZhLW1pY3Jvc29mdDpiZWZvcmV7Y29udGVudDoiXGYzY2EifS5mYS1xcTpiZWZvcmV7Y29udGVudDoiXGYxZDYifS5mYS1vcmNpZDpiZWZvcmV7Y29udGVudDoiXGY4ZDIifS5mYS1qYXZhOmJlZm9yZXtjb250ZW50OiJcZjRlNCJ9LmZhLWludmlzaW9uOmJlZm9yZXtjb250ZW50OiJcZjdiMCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjRlZCJ9LmZhLWNlbnRlcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzgwIn0uZmEtZ2xpZGUtZzpiZWZvcmV7Y29udGVudDoiXGYyYTYifS5mYS1kcnVwYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWE5In0uZmEtaGlyZS1hLWhlbHBlcjpiZWZvcmV7Y29udGVudDoiXGYzYjAifS5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZXtjb250ZW50OiJcZjRlNyJ9LmZhLXVuaXR5OmJlZm9yZXtjb250ZW50OiJcZTA0OSJ9LmZhLXdobWNzOmJlZm9yZXtjb250ZW50OiJcZjQwZCJ9LmZhLXJvY2tldGNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U4In0uZmEtdms6YmVmb3Jle2NvbnRlbnQ6IlxmMTg5In0uZmEtdW50YXBwZDpiZWZvcmV7Y29udGVudDoiXGY0MDUifS5mYS1tYWlsY2hpbXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTllIn0uZmEtY3NzMy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzhiIn0uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1yZWRkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWEyIn0uZmEtdmltZW8tdjpiZWZvcmV7Y29udGVudDoiXGYyN2QifS5mYS1jb250YW86YmVmb3Jle2NvbnRlbnQ6IlxmMjZkIn0uZmEtc3F1YXJlLWZvbnQtYXdlc29tZTpiZWZvcmV7Y29udGVudDoiXGU1YWQifS5mYS1kZXNrcHJvOmJlZm9yZXtjb250ZW50OiJcZjM4ZiJ9LmZhLWJyYXZlOmJlZm9yZXtjb250ZW50OiJcZTYzYyJ9LmZhLXNpc3RyaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2VlIn0uZmEtaW5zdGFncmFtLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1pbnN0YWdyYW06YmVmb3Jle2NvbnRlbnQ6IlxlMDU1In0uZmEtYmF0dGxlLW5ldDpiZWZvcmV7Y29udGVudDoiXGY4MzUifS5mYS10aGUtcmVkLXlldGk6YmVmb3Jle2NvbnRlbnQ6IlxmNjlkIn0uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLWhhY2tlci1uZXdzOmJlZm9yZXtjb250ZW50OiJcZjNhZiJ9LmZhLWVkZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMjgyIn0uZmEtdGhyZWFkczpiZWZvcmV7Y29udGVudDoiXGU2MTgifS5mYS1uYXBzdGVyOmJlZm9yZXtjb250ZW50OiJcZjNkMiJ9LmZhLXNuYXBjaGF0LXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1zbmFwY2hhdDpiZWZvcmV7Y29udGVudDoiXGYyYWQifS5mYS1nb29nbGUtcGx1cy1nOmJlZm9yZXtjb250ZW50OiJcZjBkNSJ9LmZhLWFydHN0YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNzdhIn0uZmEtbWFya2Rvd246YmVmb3Jle2NvbnRlbnQ6IlxmNjBmIn0uZmEtc291cmNldHJlZTpiZWZvcmV7Y29udGVudDoiXGY3ZDMifS5mYS1nb29nbGUtcGx1czpiZWZvcmV7Y29udGVudDoiXGYyYjMifS5mYS1kaWFzcG9yYTpiZWZvcmV7Y29udGVudDoiXGY3OTEifS5mYS1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE4MCJ9LmZhLXN0YWNrLW92ZXJmbG93OmJlZm9yZXtjb250ZW50OiJcZjE2YyJ9LmZhLWdpdGh1Yi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTEzIn0uZmEtcGhvZW5peC1zcXVhZHJvbjpiZWZvcmV7Y29udGVudDoiXGY1MTEifS5mYS1wYWdlbGluZXM6YmVmb3Jle2NvbnRlbnQ6IlxmMThjIn0uZmEtYWxnb2xpYTpiZWZvcmV7Y29udGVudDoiXGYzNmMifS5mYS1yZWQtcml2ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmM2UzIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmV7Y29udGVudDoiXGY0ZWYifS5mYS1zYWZhcmk6YmVmb3Jle2NvbnRlbnQ6IlxmMjY3In0uZmEtZ29vZ2xlOmJlZm9yZXtjb250ZW50OiJcZjFhMCJ9LmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlLC5mYS1zcXVhcmUtZm9udC1hd2Vzb21lLXN0cm9rZTpiZWZvcmV7Y29udGVudDoiXGYzNWMifS5mYS1hdGxhc3NpYW46YmVmb3Jle2NvbnRlbnQ6IlxmNzdiIn0uZmEtbGlua2VkaW4taW46YmVmb3Jle2NvbnRlbnQ6IlxmMGUxIn0uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmV7Y29udGVudDoiXGYzOTEifS5mYS1uaW1ibHI6YmVmb3Jle2NvbnRlbnQ6IlxmNWE4In0uZmEtY2hyb21lY2FzdDpiZWZvcmV7Y29udGVudDoiXGY4MzgifS5mYS1ldmVybm90ZTpiZWZvcmV7Y29udGVudDoiXGY4MzkifS5mYS1oYWNrZXItbmV3czpiZWZvcmV7Y29udGVudDoiXGYxZDQifS5mYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZXtjb250ZW50OiJcZjRmMCJ9LmZhLWFkdmVyc2FsOmJlZm9yZXtjb250ZW50OiJcZjM2YSJ9LmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjVlIn0uZmEtd2F0Y2htYW4tbW9uaXRvcmluZzpiZWZvcmV7Y29udGVudDoiXGUwODcifS5mYS1mb250aWNvbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjgwIn0uZmEtd2VpeGluOmJlZm9yZXtjb250ZW50OiJcZjFkNyJ9LmZhLXNoaXJ0c2luYnVsazpiZWZvcmV7Y29udGVudDoiXGYyMTQifS5mYS1jb2RlcGVuOmJlZm9yZXtjb250ZW50OiJcZjFjYiJ9LmZhLWdpdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODQxIn0uZmEtbHlmdDpiZWZvcmV7Y29udGVudDoiXGYzYzMifS5mYS1yZXY6YmVmb3Jle2NvbnRlbnQ6IlxmNWIyIn0uZmEtd2luZG93czpiZWZvcmV7Y29udGVudDoiXGYxN2EifS5mYS13aXphcmRzLW9mLXRoZS1jb2FzdDpiZWZvcmV7Y29udGVudDoiXGY3MzAifS5mYS1zcXVhcmUtdmlhZGVvOmJlZm9yZSwuZmEtdmlhZGVvLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYyYWEifS5mYS1tZWV0dXA6YmVmb3Jle2NvbnRlbnQ6IlxmMmUwIn0uZmEtY2VudG9zOmJlZm9yZXtjb250ZW50OiJcZjc4OSJ9LmZhLWFkbjpiZWZvcmV7Y29udGVudDoiXGYxNzAifS5mYS1jbG91ZHNtaXRoOmJlZm9yZXtjb250ZW50OiJcZjM4NCJ9LmZhLW9wZW5zdXNlOmJlZm9yZXtjb250ZW50OiJcZTYyYiJ9LmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjFhOCJ9LmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1kcmliYmJsZTpiZWZvcmV7Y29udGVudDoiXGYzOTcifS5mYS1jb2RpZXBpZTpiZWZvcmV7Y29udGVudDoiXGYyODQifS5mYS1ub2RlOmJlZm9yZXtjb250ZW50OiJcZjQxOSJ9LmZhLW1peDpiZWZvcmV7Y29udGVudDoiXGYzY2IifS5mYS1zdGVhbTpiZWZvcmV7Y29udGVudDoiXGYxYjYifS5mYS1jYy1hcHBsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNDE2In0uZmEtc2NyaWJkOmJlZm9yZXtjb250ZW50OiJcZjI4YSJ9LmZhLWRlYmlhbjpiZWZvcmV7Y29udGVudDoiXGU2MGIifS5mYS1vcGVuaWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTliIn0uZmEtaW5zdGFsb2Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDgxIn0uZmEtZXhwZWRpdGVkc3NsOmJlZm9yZXtjb250ZW50OiJcZjIzZSJ9LmZhLXNlbGxjYXN0OmJlZm9yZXtjb250ZW50OiJcZjJkYSJ9LmZhLXNxdWFyZS10d2l0dGVyOmJlZm9yZSwuZmEtdHdpdHRlci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDgxIn0uZmEtci1wcm9qZWN0OmJlZm9yZXtjb250ZW50OiJcZjRmNyJ9LmZhLWRlbGljaW91czpiZWZvcmV7Y29udGVudDoiXGYxYTUifS5mYS1mcmVlYnNkOmJlZm9yZXtjb250ZW50OiJcZjNhNCJ9LmZhLXZ1ZWpzOmJlZm9yZXtjb250ZW50OiJcZjQxZiJ9LmZhLWFjY3Vzb2Z0OmJlZm9yZXtjb250ZW50OiJcZjM2OSJ9LmZhLWlveGhvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMjA4In0uZmEtZm9udGljb25zLWZpOmJlZm9yZXtjb250ZW50OiJcZjNhMiJ9LmZhLWFwcC1zdG9yZTpiZWZvcmV7Y29udGVudDoiXGYzNmYifS5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZXtjb250ZW50OiJcZjFmMSJ9LmZhLWl0dW5lcy1ub3RlOmJlZm9yZXtjb250ZW50OiJcZjNiNSJ9LmZhLWdvbGFuZzpiZWZvcmV7Y29udGVudDoiXGU0MGYifS5mYS1raWNrc3RhcnRlcjpiZWZvcmV7Y29udGVudDoiXGYzYmIifS5mYS1ncmF2OmJlZm9yZXtjb250ZW50OiJcZjJkNiJ9LmZhLXdlaWJvOmJlZm9yZXtjb250ZW50OiJcZjE4YSJ9LmZhLXVuY2hhcnRlZDpiZWZvcmV7Y29udGVudDoiXGUwODQifS5mYS1maXJzdGRyYWZ0OmJlZm9yZXtjb250ZW50OiJcZjNhMSJ9LmZhLXNxdWFyZS15b3V0dWJlOmJlZm9yZSwuZmEteW91dHViZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNDMxIn0uZmEtd2lraXBlZGlhLXc6YmVmb3Jle2NvbnRlbnQ6IlxmMjY2In0uZmEtcmVuZGFjdDpiZWZvcmUsLmZhLXdwcmVzc3I6YmVmb3Jle2NvbnRlbnQ6IlxmM2U0In0uZmEtYW5nZWxsaXN0OmJlZm9yZXtjb250ZW50OiJcZjIwOSJ9LmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZXtjb250ZW50OiJcZjUwYyJ9LmZhLW5mYy1kaXJlY3Rpb25hbDpiZWZvcmV7Y29udGVudDoiXGU1MzAifS5mYS1za3lwZTpiZWZvcmV7Y29udGVudDoiXGYxN2UifS5mYS1qb2dldDpiZWZvcmV7Y29udGVudDoiXGYzYjcifS5mYS1mZWRvcmE6YmVmb3Jle2NvbnRlbnQ6IlxmNzk4In0uZmEtc3RyaXBlLXM6YmVmb3Jle2NvbnRlbnQ6IlxmNDJhIn0uZmEtbWV0YTpiZWZvcmV7Y29udGVudDoiXGU0OWIifS5mYS1sYXJhdmVsOmJlZm9yZXtjb250ZW50OiJcZjNiZCJ9LmZhLWhvdGphcjpiZWZvcmV7Y29udGVudDoiXGYzYjEifS5mYS1ibHVldG9vdGgtYjpiZWZvcmV7Y29udGVudDoiXGYyOTQifS5mYS1zcXVhcmUtbGV0dGVyYm94ZDpiZWZvcmV7Y29udGVudDoiXGU2MmUifS5mYS1zdGlja2VyLW11bGU6YmVmb3Jle2NvbnRlbnQ6IlxmM2Y3In0uZmEtY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZXtjb250ZW50OiJcZjRmMyJ9LmZhLWhpcHM6YmVmb3Jle2NvbnRlbnQ6IlxmNDUyIn0uZmEtYmVoYW5jZTpiZWZvcmV7Y29udGVudDoiXGYxYjQifS5mYS1yZWRkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWExIn0uZmEtZGlzY29yZDpiZWZvcmV7Y29udGVudDoiXGYzOTIifS5mYS1jaHJvbWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjY4In0uZmEtYXBwLXN0b3JlLWlvczpiZWZvcmV7Y29udGVudDoiXGYzNzAifS5mYS1jYy1kaXNjb3ZlcjpiZWZvcmV7Y29udGVudDoiXGYxZjIifS5mYS13cGJlZ2lubmVyOmJlZm9yZXtjb250ZW50OiJcZjI5NyJ9LmZhLWNvbmZsdWVuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNzhkIn0uZmEtc2hvZWxhY2U6YmVmb3Jle2NvbnRlbnQ6IlxlNjBjIn0uZmEtbWRiOmJlZm9yZXtjb250ZW50OiJcZjhjYSJ9LmZhLWRvY2h1YjpiZWZvcmV7Y29udGVudDoiXGYzOTQifS5mYS1hY2Nlc3NpYmxlLWljb246YmVmb3Jle2NvbnRlbnQ6IlxmMzY4In0uZmEtZWJheTpiZWZvcmV7Y29udGVudDoiXGY0ZjQifS5mYS1hbWF6b246YmVmb3Jle2NvbnRlbnQ6IlxmMjcwIn0uZmEtdW5zcGxhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDdjIn0uZmEteWFybjpiZWZvcmV7Y29udGVudDoiXGY3ZTMifS5mYS1zcXVhcmUtc3RlYW06YmVmb3JlLC5mYS1zdGVhbS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI3In0uZmEtNTAwcHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjZlIn0uZmEtc3F1YXJlLXZpbWVvOmJlZm9yZSwuZmEtdmltZW8tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE5NCJ9LmZhLWFzeW1tZXRyaWs6YmVmb3Jle2NvbnRlbnQ6IlxmMzcyIn0uZmEtZm9udC1hd2Vzb21lLWZsYWc6YmVmb3JlLC5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSwuZmEtZm9udC1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZjJiNCJ9LmZhLWdyYXRpcGF5OmJlZm9yZXtjb250ZW50OiJcZjE4NCJ9LmZhLWFwcGxlOmJlZm9yZXtjb250ZW50OiJcZjE3OSJ9LmZhLWhpdmU6YmVmb3Jle2NvbnRlbnQ6IlxlMDdmIn0uZmEtZ2l0a3Jha2VuOmJlZm9yZXtjb250ZW50OiJcZjNhNiJ9LmZhLWtleWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNGY1In0uZmEtYXBwbGUtcGF5OmJlZm9yZXtjb250ZW50OiJcZjQxNSJ9LmZhLXBhZGxldDpiZWZvcmV7Y29udGVudDoiXGU0YTAifS5mYS1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OiJcZjQyYyJ9LmZhLWdpdGh1Yi1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtZ2l0aHViOmJlZm9yZXtjb250ZW50OiJcZjA5MiJ9LmZhLXN0dW1ibGV1cG9uOmJlZm9yZXtjb250ZW50OiJcZjFhNCJ9LmZhLWZlZGV4OmJlZm9yZXtjb250ZW50OiJcZjc5NyJ9LmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZXtjb250ZW50OiJcZjNkYyJ9LmZhLXNob3BpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlMDU3In0uZmEtbmVvczpiZWZvcmV7Y29udGVudDoiXGY2MTIifS5mYS1zcXVhcmUtdGhyZWFkczpiZWZvcmV7Y29udGVudDoiXGU2MTkifS5mYS1oYWNrZXJyYW5rOmJlZm9yZXtjb250ZW50OiJcZjVmNyJ9LmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmV7Y29udGVudDoiXGY0ZjgifS5mYS1zd2lmdDpiZWZvcmV7Y29udGVudDoiXGY4ZTEifS5mYS1hbmd1bGFyOmJlZm9yZXtjb250ZW50OiJcZjQyMCJ9LmZhLXNwZWFrYXA6YmVmb3Jle2NvbnRlbnQ6IlxmM2YzIn0uZmEtYW5ncnljcmVhdGl2ZTpiZWZvcmV7Y29udGVudDoiXGYzNmUifS5mYS15LWNvbWJpbmF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjNiIn0uZmEtZW1waXJlOmJlZm9yZXtjb250ZW50OiJcZjFkMSJ9LmZhLWVudmlyYTpiZWZvcmV7Y29udGVudDoiXGYyOTkifS5mYS1nb29nbGUtc2Nob2xhcjpiZWZvcmV7Y29udGVudDoiXGU2M2IifS5mYS1naXRsYWItc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLWdpdGxhYjpiZWZvcmV7Y29udGVudDoiXGU1YWUifS5mYS1zdHVkaW92aW5hcmk6YmVmb3Jle2NvbnRlbnQ6IlxmM2Y4In0uZmEtcGllZC1waXBlcjpiZWZvcmV7Y29udGVudDoiXGYyYWUifS5mYS13b3JkcHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTlhIn0uZmEtcHJvZHVjdC1odW50OmJlZm9yZXtjb250ZW50OiJcZjI4OCJ9LmZhLWZpcmVmb3g6YmVmb3Jle2NvbnRlbnQ6IlxmMjY5In0uZmEtbGlub2RlOmJlZm9yZXtjb250ZW50OiJcZjJiOCJ9LmZhLWdvb2RyZWFkczpiZWZvcmV7Y29udGVudDoiXGYzYTgifS5mYS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1vZG5va2xhc3NuaWtpOmJlZm9yZXtjb250ZW50OiJcZjI2NCJ9LmZhLWpzZmlkZGxlOmJlZm9yZXtjb250ZW50OiJcZjFjYyJ9LmZhLXNpdGg6YmVmb3Jle2NvbnRlbnQ6IlxmNTEyIn0uZmEtdGhlbWVpc2xlOmJlZm9yZXtjb250ZW50OiJcZjJiMiJ9LmZhLXBhZ2U0OmJlZm9yZXtjb250ZW50OiJcZjNkNyJ9LmZhLWhhc2hub2RlOmJlZm9yZXtjb250ZW50OiJcZTQ5OSJ9LmZhLXJlYWN0OmJlZm9yZXtjb250ZW50OiJcZjQxYiJ9LmZhLWNjLXBheXBhbDpiZWZvcmV7Y29udGVudDoiXGYxZjQifS5mYS1zcXVhcmVzcGFjZTpiZWZvcmV7Y29udGVudDoiXGY1YmUifS5mYS1jYy1zdHJpcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWY1In0uZmEtY3JlYXRpdmUtY29tbW9ucy1zaGFyZTpiZWZvcmV7Y29udGVudDoiXGY0ZjIifS5mYS1iaXRjb2luOmJlZm9yZXtjb250ZW50OiJcZjM3OSJ9LmZhLWtleWNkbjpiZWZvcmV7Y29udGVudDoiXGYzYmEifS5mYS1vcGVyYTpiZWZvcmV7Y29udGVudDoiXGYyNmEifS5mYS1pdGNoLWlvOmJlZm9yZXtjb250ZW50OiJcZjgzYSJ9LmZhLXVtYnJhY286YmVmb3Jle2NvbnRlbnQ6IlxmOGU4In0uZmEtZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZXtjb250ZW50OiJcZjUwZCJ9LmZhLXVidW50dTpiZWZvcmV7Y29udGVudDoiXGY3ZGYifS5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZXtjb250ZW50OiJcZjM5NiJ9LmZhLXN0cmlwZTpiZWZvcmV7Y29udGVudDoiXGY0MjkifS5mYS1ob3V6ejpiZWZvcmV7Y29udGVudDoiXGYyN2MifS5mYS1nZzpiZWZvcmV7Y29udGVudDoiXGYyNjAifS5mYS1kaGw6YmVmb3Jle2NvbnRlbnQ6IlxmNzkwIn0uZmEtcGludGVyZXN0LXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1waW50ZXJlc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMGQzIn0uZmEteGluZzpiZWZvcmV7Y29udGVudDoiXGYxNjgifS5mYS1ibGFja2JlcnJ5OmJlZm9yZXtjb250ZW50OiJcZjM3YiJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGVjIn0uZmEtcGxheXN0YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmM2RmIn0uZmEtcXVpbnNjYXBlOmJlZm9yZXtjb250ZW50OiJcZjQ1OSJ9LmZhLWxlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNDFkIn0uZmEtYmxvZ2dlci1iOmJlZm9yZXtjb250ZW50OiJcZjM3ZCJ9LmZhLW9wZW5jYXJ0OmJlZm9yZXtjb250ZW50OiJcZjIzZCJ9LmZhLXZpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWNhIn0uZmEtc2lnbmFsLW1lc3NlbmdlcjpiZWZvcmV7Y29udGVudDoiXGU2NjMifS5mYS1wYXlwYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWVkIn0uZmEtZ2l0bGFiOmJlZm9yZXtjb250ZW50OiJcZjI5NiJ9LmZhLXR5cG8zOmJlZm9yZXtjb250ZW50OiJcZjQyYiJ9LmZhLXJlZGRpdC1hbGllbjpiZWZvcmV7Y29udGVudDoiXGYyODEifS5mYS15YWhvbzpiZWZvcmV7Y29udGVudDoiXGYxOWUifS5mYS1kYWlseW1vdGlvbjpiZWZvcmV7Y29udGVudDoiXGUwNTIifS5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmV7Y29udGVudDoiXGYzNmIifS5mYS1waWVkLXBpcGVyLXBwOmJlZm9yZXtjb250ZW50OiJcZjFhNyJ9LmZhLWJvb3RzdHJhcDpiZWZvcmV7Y29udGVudDoiXGY4MzYifS5mYS1vZG5va2xhc3NuaWtpOmJlZm9yZXtjb250ZW50OiJcZjI2MyJ9LmZhLW5mYy1zeW1ib2w6YmVmb3Jle2NvbnRlbnQ6IlxlNTMxIn0uZmEtbWludGJpdDpiZWZvcmV7Y29udGVudDoiXGU2MmYifS5mYS1ldGhlcmV1bTpiZWZvcmV7Y29udGVudDoiXGY0MmUifS5mYS1zcGVha2VyLWRlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmODNjIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1uYy1ldTpiZWZvcmV7Y29udGVudDoiXGY0ZTkifS5mYS1wYXRyZW9uOmJlZm9yZXtjb250ZW50OiJcZjNkOSJ9LmZhLWF2aWFuZXg6YmVmb3Jle2NvbnRlbnQ6IlxmMzc0In0uZmEtZWxsbzpiZWZvcmV7Y29udGVudDoiXGY1ZjEifS5mYS1nb2ZvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2E3In0uZmEtYmltb2JqZWN0OmJlZm9yZXtjb250ZW50OiJcZjM3OCJ9LmZhLWJyYXZlLXJldmVyc2U6YmVmb3Jle2NvbnRlbnQ6IlxlNjNkIn0uZmEtZmFjZWJvb2stZjpiZWZvcmV7Y29udGVudDoiXGYzOWUifS5mYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtZ29vZ2xlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ0In0uZmEtbWFuZGFsb3JpYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTBmIn0uZmEtZmlyc3Qtb3JkZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjUwYSJ9LmZhLW9zaTpiZWZvcmV7Y29udGVudDoiXGY0MWEifS5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZjFlZSJ9LmZhLWQtYW5kLWQtYmV5b25kOmJlZm9yZXtjb250ZW50OiJcZjZjYSJ9LmZhLXBlcmlzY29wZTpiZWZvcmV7Y29udGVudDoiXGYzZGEifS5mYS1mdWxjcnVtOmJlZm9yZXtjb250ZW50OiJcZjUwYiJ9LmZhLWNsb3Vkc2NhbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzgzIn0uZmEtZm9ydW1iZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjExIn0uZmEtbWl6dW5pOmJlZm9yZXtjb250ZW50OiJcZjNjYyJ9LmZhLXNjaGxpeDpiZWZvcmV7Y29udGVudDoiXGYzZWEifS5mYS1zcXVhcmUteGluZzpiZWZvcmUsLmZhLXhpbmctc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE2OSJ9LmZhLWJhbmRjYW1wOmJlZm9yZXtjb250ZW50OiJcZjJkNSJ9LmZhLXdwZm9ybXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjk4In0uZmEtY2xvdWR2ZXJzaWZ5OmJlZm9yZXtjb250ZW50OiJcZjM4NSJ9LmZhLXVzcHM6YmVmb3Jle2NvbnRlbnQ6IlxmN2UxIn0uZmEtbWVnYXBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWEzIn0uZmEtbWFnZW50bzpiZWZvcmV7Y29udGVudDoiXGYzYzQifS5mYS1zcG90aWZ5OmJlZm9yZXtjb250ZW50OiJcZjFiYyJ9LmZhLW9wdGluLW1vbnN0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjNjIn0uZmEtZmx5OmJlZm9yZXtjb250ZW50OiJcZjQxNyJ9LmZhLWF2aWF0bzpiZWZvcmV7Y29udGVudDoiXGY0MjEifS5mYS1pdHVuZXM6YmVmb3Jle2NvbnRlbnQ6IlxmM2I0In0uZmEtY3V0dGxlZmlzaDpiZWZvcmV7Y29udGVudDoiXGYzOGMifS5mYS1ibG9nZ2VyOmJlZm9yZXtjb250ZW50OiJcZjM3YyJ9LmZhLWZsaWNrcjpiZWZvcmV7Y29udGVudDoiXGYxNmUifS5mYS12aWJlcjpiZWZvcmV7Y29udGVudDoiXGY0MDkifS5mYS1zb3VuZGNsb3VkOmJlZm9yZXtjb250ZW50OiJcZjFiZSJ9LmZhLWRpZ2c6YmVmb3Jle2NvbnRlbnQ6IlxmMWE2In0uZmEtdGVuY2VudC13ZWlibzpiZWZvcmV7Y29udGVudDoiXGYxZDUifS5mYS1sZXR0ZXJib3hkOmJlZm9yZXtjb250ZW50OiJcZTYyZCJ9LmZhLXN5bWZvbnk6YmVmb3Jle2NvbnRlbnQ6IlxmODNkIn0uZmEtbWF4Y2RuOmJlZm9yZXtjb250ZW50OiJcZjEzNiJ9LmZhLWV0c3k6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ3In0uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZXtjb250ZW50OiJcZjM5ZiJ9LmZhLWF1ZGlibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzczIn0uZmEtdGhpbmstcGVha3M6YmVmb3Jle2NvbnRlbnQ6IlxmNzMxIn0uZmEtYmlsaWJpbGk6YmVmb3Jle2NvbnRlbnQ6IlxlM2Q5In0uZmEtZXJsYW5nOmJlZm9yZXtjb250ZW50OiJcZjM5ZCJ9LmZhLXgtdHdpdHRlcjpiZWZvcmV7Y29udGVudDoiXGU2MWIifS5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZXtjb250ZW50OiJcZjg5ZSJ9LmZhLWRhc2hjdWJlOmJlZm9yZXtjb250ZW50OiJcZjIxMCJ9LmZhLTQyLWdyb3VwOmJlZm9yZSwuZmEtaW5ub3NvZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDgwIn0uZmEtc3RhY2stZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMThkIn0uZmEtZWxlbWVudG9yOmJlZm9yZXtjb250ZW50OiJcZjQzMCJ9LmZhLXBpZWQtcGlwZXItc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLXBpZWQtcGlwZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDFlIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmV7Y29udGVudDoiXGY0ZWIifS5mYS1wYWxmZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q4In0uZmEtc3VwZXJwb3dlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMmRkIn0uZmEtcmVzb2x2aW5nOmJlZm9yZXtjb250ZW50OiJcZjNlNyJ9LmZhLXhib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNDEyIn0uZmEtc2VhcmNoZW5naW46YmVmb3Jle2NvbnRlbnQ6IlxmM2ViIn0uZmEtdGlrdG9rOmJlZm9yZXtjb250ZW50OiJcZTA3YiJ9LmZhLWZhY2Vib29rLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1mYWNlYm9vazpiZWZvcmV7Y29udGVudDoiXGYwODIifS5mYS1yZW5yZW46YmVmb3Jle2NvbnRlbnQ6IlxmMThiIn0uZmEtbGludXg6YmVmb3Jle2NvbnRlbnQ6IlxmMTdjIn0uZmEtZ2xpZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMmE1In0uZmEtbGlua2VkaW46YmVmb3Jle2NvbnRlbnQ6IlxmMDhjIn0uZmEtaHVic3BvdDpiZWZvcmV7Y29udGVudDoiXGYzYjIifS5mYS1kZXBsb3lkb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMzhlIn0uZmEtdHdpdGNoOmJlZm9yZXtjb250ZW50OiJcZjFlOCJ9LmZhLXJhdmVscnk6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ5In0uZmEtbWl4ZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDU2In0uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUsLmZhLXNxdWFyZS1sYXN0Zm06YmVmb3Jle2NvbnRlbnQ6IlxmMjAzIn0uZmEtdmltZW86YmVmb3Jle2NvbnRlbnQ6IlxmNDBhIn0uZmEtbWVuZGVsZXk6YmVmb3Jle2NvbnRlbnQ6IlxmN2IzIn0uZmEtdW5pcmVnaXN0cnk6YmVmb3Jle2NvbnRlbnQ6IlxmNDA0In0uZmEtZmlnbWE6YmVmb3Jle2NvbnRlbnQ6IlxmNzk5In0uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmV7Y29udGVudDoiXGY0ZWUifS5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OiJcZjQyZCJ9LmZhLWRyb3Bib3g6YmVmb3Jle2NvbnRlbnQ6IlxmMTZiIn0uZmEtaW5zdGFncmFtOmJlZm9yZXtjb250ZW50OiJcZjE2ZCJ9LmZhLWNtcGxpZDpiZWZvcmV7Y29udGVudDoiXGUzNjAifS5mYS11cHdvcms6YmVmb3Jle2NvbnRlbnQ6IlxlNjQxIn0uZmEtZmFjZWJvb2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDlhIn0uZmEtZ3JpcGZpcmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2FjIn0uZmEtamVkaS1vcmRlcjpiZWZvcmV7Y29udGVudDoiXGY1MGUifS5mYS11aWtpdDpiZWZvcmV7Y29udGVudDoiXGY0MDMifS5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNhMyJ9LmZhLXBoYWJyaWNhdG9yOmJlZm9yZXtjb250ZW50OiJcZjNkYiJ9LmZhLXVzc3VubmFoOmJlZm9yZXtjb250ZW50OiJcZjQwNyJ9LmZhLWVhcmx5YmlyZHM6YmVmb3Jle2NvbnRlbnQ6IlxmMzlhIn0uZmEtdHJhZGUtZmVkZXJhdGlvbjpiZWZvcmV7Y29udGVudDoiXGY1MTMifS5mYS1hdXRvcHJlZml4ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDFjIn0uZmEtd2hhdHNhcHA6YmVmb3Jle2NvbnRlbnQ6IlxmMjMyIn0uZmEtc2xpZGVzaGFyZTpiZWZvcmV7Y29udGVudDoiXGYxZTcifS5mYS1nb29nbGUtcGxheTpiZWZvcmV7Y29udGVudDoiXGYzYWIifS5mYS12aWFkZW86YmVmb3Jle2NvbnRlbnQ6IlxmMmE5In0uZmEtbGluZTpiZWZvcmV7Y29udGVudDoiXGYzYzAifS5mYS1nb29nbGUtZHJpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2FhIn0uZmEtc2VydmljZXN0YWNrOmJlZm9yZXtjb250ZW50OiJcZjNlYyJ9LmZhLXNpbXBseWJ1aWx0OmJlZm9yZXtjb250ZW50OiJcZjIxNSJ9LmZhLWJpdGJ1Y2tldDpiZWZvcmV7Y29udGVudDoiXGYxNzEifS5mYS1pbWRiOmJlZm9yZXtjb250ZW50OiJcZjJkOCJ9LmZhLWRlZXplcjpiZWZvcmV7Y29udGVudDoiXGUwNzcifS5mYS1yYXNwYmVycnktcGk6YmVmb3Jle2NvbnRlbnQ6IlxmN2JiIn0uZmEtamlyYTpiZWZvcmV7Y29udGVudDoiXGY3YjEifS5mYS1kb2NrZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMzk1In0uZmEtc2NyZWVucGFsOmJlZm9yZXtjb250ZW50OiJcZTU3MCJ9LmZhLWJsdWV0b290aDpiZWZvcmV7Y29udGVudDoiXGYyOTMifS5mYS1naXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDI2In0uZmEtZC1hbmQtZDpiZWZvcmV7Y29udGVudDoiXGYzOGQifS5mYS1taWNyb2Jsb2c6YmVmb3Jle2NvbnRlbnQ6IlxlMDFhIn0uZmEtY2MtZGluZXJzLWNsdWI6YmVmb3Jle2NvbnRlbnQ6IlxmMjRjIn0uZmEtZ2ctY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjI2MSJ9LmZhLXBpZWQtcGlwZXItaGF0OmJlZm9yZXtjb250ZW50OiJcZjRlNSJ9LmZhLWtpY2tzdGFydGVyLWs6YmVmb3Jle2NvbnRlbnQ6IlxmM2JjIn0uZmEteWFuZGV4OmJlZm9yZXtjb250ZW50OiJcZjQxMyJ9LmZhLXJlYWRtZTpiZWZvcmV7Y29udGVudDoiXGY0ZDUifS5mYS1odG1sNTpiZWZvcmV7Y29udGVudDoiXGYxM2IifS5mYS1zZWxsc3k6YmVmb3Jle2NvbnRlbnQ6IlxmMjEzIn0uZmEtc2FzczpiZWZvcmV7Y29udGVudDoiXGY0MWUifS5mYS13aXJzaW5kaGFuZHdlcms6YmVmb3JlLC5mYS13c2g6YmVmb3Jle2NvbnRlbnQ6IlxlMmQwIn0uZmEtYnVyb21vYmVsZXhwZXJ0ZTpiZWZvcmV7Y29udGVudDoiXGYzN2YifS5mYS1zYWxlc2ZvcmNlOmJlZm9yZXtjb250ZW50OiJcZjgzYiJ9LmZhLW9jdG9wdXMtZGVwbG95OmJlZm9yZXtjb250ZW50OiJcZTA4MiJ9LmZhLW1lZGFwcHM6YmVmb3Jle2NvbnRlbnQ6IlxmM2M2In0uZmEtbnM4OmJlZm9yZXtjb250ZW50OiJcZjNkNSJ9LmZhLXBpbnRlcmVzdC1wOmJlZm9yZXtjb250ZW50OiJcZjIzMSJ9LmZhLWFwcGVyOmJlZm9yZXtjb250ZW50OiJcZjM3MSJ9LmZhLWZvcnQtYXdlc29tZTpiZWZvcmV7Y29udGVudDoiXGYyODYifS5mYS13YXplOmJlZm9yZXtjb250ZW50OiJcZjgzZiJ9LmZhLWNjLWpjYjpiZWZvcmV7Y29udGVudDoiXGYyNGIifS5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUsLmZhLXNuYXBjaGF0OmJlZm9yZXtjb250ZW50OiJcZjJhYiJ9LmZhLWZhbnRhc3ktZmxpZ2h0LWdhbWVzOmJlZm9yZXtjb250ZW50OiJcZjZkYyJ9LmZhLXJ1c3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDdhIn0uZmEtd2l4OmJlZm9yZXtjb250ZW50OiJcZjVjZiJ9LmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSwuZmEtc3F1YXJlLWJlaGFuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWI1In0uZmEtc3VwcGxlOmJlZm9yZXtjb250ZW50OiJcZjNmOSJ9LmZhLXdlYmZsb3c6YmVmb3Jle2NvbnRlbnQ6IlxlNjVjIn0uZmEtcmViZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWQwIn0uZmEtY3NzMzpiZWZvcmV7Y29udGVudDoiXGYxM2MifS5mYS1zdGF5bGlua2VkOmJlZm9yZXtjb250ZW50OiJcZjNmNSJ9LmZhLWthZ2dsZTpiZWZvcmV7Y29udGVudDoiXGY1ZmEifS5mYS1zcGFjZS1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZTVhYyJ9LmZhLWRldmlhbnRhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWJkIn0uZmEtY3BhbmVsOmJlZm9yZXtjb250ZW50OiJcZjM4OCJ9LmZhLWdvb2RyZWFkcy1nOmJlZm9yZXtjb250ZW50OiJcZjNhOSJ9LmZhLWdpdC1zcXVhcmU6YmVmb3JlLC5mYS1zcXVhcmUtZ2l0OmJlZm9yZXtjb250ZW50OiJcZjFkMiJ9LmZhLXNxdWFyZS10dW1ibHI6YmVmb3JlLC5mYS10dW1ibHItc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE3NCJ9LmZhLXRyZWxsbzpiZWZvcmV7Y29udGVudDoiXGYxODEifS5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZXtjb250ZW50OiJcZjRlYSJ9LmZhLWdldC1wb2NrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjY1In0uZmEtcGVyYnl0ZTpiZWZvcmV7Y29udGVudDoiXGUwODMifS5mYS1ncnVudDpiZWZvcmV7Y29udGVudDoiXGYzYWQifS5mYS13ZWVibHk6YmVmb3Jle2NvbnRlbnQ6IlxmNWNjIn0uZmEtY29ubmVjdGRldmVsb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMjBlIn0uZmEtbGVhbnB1YjpiZWZvcmV7Y29udGVudDoiXGYyMTIifS5mYS1ibGFjay10aWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjdlIn0uZmEtdGhlbWVjbzpiZWZvcmV7Y29udGVudDoiXGY1YzYifS5mYS1weXRob246YmVmb3Jle2NvbnRlbnQ6IlxmM2UyIn0uZmEtYW5kcm9pZDpiZWZvcmV7Y29udGVudDoiXGYxN2IifS5mYS1ib3RzOmJlZm9yZXtjb250ZW50OiJcZTM0MCJ9LmZhLWZyZWUtY29kZS1jYW1wOmJlZm9yZXtjb250ZW50OiJcZjJjNSJ9LmZhLWhvcm5iaWxsOmJlZm9yZXtjb250ZW50OiJcZjU5MiJ9LmZhLWpzOmJlZm9yZXtjb250ZW50OiJcZjNiOCJ9LmZhLWlkZWFsOmJlZm9yZXtjb250ZW50OiJcZTAxMyJ9LmZhLWdpdDpiZWZvcmV7Y29udGVudDoiXGYxZDMifS5mYS1kZXY6YmVmb3Jle2NvbnRlbnQ6IlxmNmNjIn0uZmEtc2tldGNoOmJlZm9yZXtjb250ZW50OiJcZjdjNiJ9LmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZXtjb250ZW50OiJcZjQxNCJ9LmZhLWNjLWFtZXg6YmVmb3Jle2NvbnRlbnQ6IlxmMWYzIn0uZmEtdWJlcjpiZWZvcmV7Y29udGVudDoiXGY0MDIifS5mYS1naXRodWI6YmVmb3Jle2NvbnRlbnQ6IlxmMDliIn0uZmEtcGhwOmJlZm9yZXtjb250ZW50OiJcZjQ1NyJ9LmZhLWFsaXBheTpiZWZvcmV7Y29udGVudDoiXGY2NDIifS5mYS15b3V0dWJlOmJlZm9yZXtjb250ZW50OiJcZjE2NyJ9LmZhLXNreWF0bGFzOmJlZm9yZXtjb250ZW50OiJcZjIxNiJ9LmZhLWZpcmVmb3gtYnJvd3NlcjpiZWZvcmV7Y29udGVudDoiXGUwMDcifS5mYS1yZXBseWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U2In0uZmEtc3VzZTpiZWZvcmV7Y29udGVudDoiXGY3ZDYifS5mYS1qZW5raW5zOmJlZm9yZXtjb250ZW50OiJcZjNiNiJ9LmZhLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDk5In0uZmEtcm9ja3JtczpiZWZvcmV7Y29udGVudDoiXGYzZTkifS5mYS1waW50ZXJlc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMGQyIn0uZmEtYnVmZmVyOmJlZm9yZXtjb250ZW50OiJcZjgzNyJ9LmZhLW5wbTpiZWZvcmV7Y29udGVudDoiXGYzZDQifS5mYS15YW1tZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODQwIn0uZmEtYnRjOmJlZm9yZXtjb250ZW50OiJcZjE1YSJ9LmZhLWRyaWJiYmxlOmJlZm9yZXtjb250ZW50OiJcZjE3ZCJ9LmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxYTMifS5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmV7Y29udGVudDoiXGYyNmIifS5mYS1zdHViYmVyOmJlZm9yZXtjb250ZW50OiJcZTVjNyJ9LmZhLXRlbGVncmFtLXBsYW5lOmJlZm9yZSwuZmEtdGVsZWdyYW06YmVmb3Jle2NvbnRlbnQ6IlxmMmM2In0uZmEtb2xkLXJlcHVibGljOmJlZm9yZXtjb250ZW50OiJcZjUxMCJ9LmZhLW9keXNlZTpiZWZvcmV7Y29udGVudDoiXGU1YzYifS5mYS1zcXVhcmUtd2hhdHNhcHA6YmVmb3JlLC5mYS13aGF0c2FwcC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNDBjIn0uZmEtbm9kZS1qczpiZWZvcmV7Y29udGVudDoiXGYzZDMifS5mYS1lZGdlLWxlZ2FjeTpiZWZvcmV7Y29udGVudDoiXGUwNzgifS5mYS1zbGFjay1oYXNoOmJlZm9yZSwuZmEtc2xhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMTk4In0uZmEtbWVkcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2M4In0uZmEtdXNiOmJlZm9yZXtjb250ZW50OiJcZjI4NyJ9LmZhLXR1bWJscjpiZWZvcmV7Y29udGVudDoiXGYxNzMifS5mYS12YWFkaW46YmVmb3Jle2NvbnRlbnQ6IlxmNDA4In0uZmEtcXVvcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMmM0In0uZmEtc3F1YXJlLXgtdHdpdHRlcjpiZWZvcmV7Y29udGVudDoiXGU2MWEifS5mYS1yZWFjdGV1cm9wZTpiZWZvcmV7Y29udGVudDoiXGY3NWQifS5mYS1tZWRpdW0tbTpiZWZvcmUsLmZhLW1lZGl1bTpiZWZvcmV7Y29udGVudDoiXGYyM2EifS5mYS1hbWlsaWE6YmVmb3Jle2NvbnRlbnQ6IlxmMzZkIn0uZmEtbWl4Y2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjg5In0uZmEtZmxpcGJvYXJkOmJlZm9yZXtjb250ZW50OiJcZjQ0ZCJ9LmZhLXZpYWNvaW46YmVmb3Jle2NvbnRlbnQ6IlxmMjM3In0uZmEtY3JpdGljYWwtcm9sZTpiZWZvcmV7Y29udGVudDoiXGY2YzkifS5mYS1zaXRyb3g6YmVmb3Jle2NvbnRlbnQ6IlxlNDRhIn0uZmEtZGlzY291cnNlOmJlZm9yZXtjb250ZW50OiJcZjM5MyJ9LmZhLWpvb21sYTpiZWZvcmV7Y29udGVudDoiXGYxYWEifS5mYS1tYXN0b2RvbjpiZWZvcmV7Y29udGVudDoiXGY0ZjYifS5mYS1haXJibmI6YmVmb3Jle2NvbnRlbnQ6IlxmODM0In0uZmEtd29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmV7Y29udGVudDoiXGY1MTQifS5mYS1idXktbi1sYXJnZTpiZWZvcmV7Y29udGVudDoiXGY4YTYifS5mYS1ndWxwOmJlZm9yZXtjb250ZW50OiJcZjNhZSJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmV7Y29udGVudDoiXGY0ZjEifS5mYS1zdHJhdmE6YmVmb3Jle2NvbnRlbnQ6IlxmNDI4In0uZmEtZW1iZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDIzIn0uZmEtY2FuYWRpYW4tbWFwbGUtbGVhZjpiZWZvcmV7Y29udGVudDoiXGY3ODUifS5mYS10ZWFtc3BlYWs6YmVmb3Jle2NvbnRlbnQ6IlxmNGY5In0uZmEtcHVzaGVkOmJlZm9yZXtjb250ZW50OiJcZjNlMSJ9LmZhLXdvcmRwcmVzcy1zaW1wbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNDExIn0uZmEtbnV0cml0aW9uaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q2In0uZmEtd29kdTpiZWZvcmV7Y29udGVudDoiXGUwODgifS5mYS1nb29nbGUtcGF5OmJlZm9yZXtjb250ZW50OiJcZTA3OSJ9LmZhLWludGVyY29tOmJlZm9yZXtjb250ZW50OiJcZjdhZiJ9LmZhLXpoaWh1OmJlZm9yZXtjb250ZW50OiJcZjYzZiJ9LmZhLWtvcnZ1ZTpiZWZvcmV7Y29udGVudDoiXGY0MmYifS5mYS1waXg6YmVmb3Jle2NvbnRlbnQ6IlxlNDNhIn0uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZXtjb250ZW50OiJcZjNmNiJ9Omhvc3QsOnJvb3R7LS1mYS1mb250LXJlZ3VsYXI6bm9ybWFsIDQwMCAxZW0vMSAiRm9udCBBd2Vzb21lIDYgRnJlZSJ9QGZvbnQtZmFjZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDYgRnJlZSI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtZGlzcGxheTpibG9jaztzcmM6dXJsKC4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpfS5mYS1yZWd1bGFyLC5mYXJ7Zm9udC13ZWlnaHQ6NDAwfTpob3N0LDpyb290ey0tZmEtc3R5bGUtZmFtaWx5LWNsYXNzaWM6IkZvbnQgQXdlc29tZSA2IEZyZWUiOy0tZmEtZm9udC1zb2xpZDpub3JtYWwgOTAwIDFlbS8xICJGb250IEF3ZXNvbWUgNiBGcmVlIn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNiBGcmVlIjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo5MDA7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtc29saWQtOTAwLndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKX0uZmEtc29saWQsLmZhc3tmb250LXdlaWdodDo5MDB9QGZvbnQtZmFjZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LWRpc3BsYXk6YmxvY2s7Zm9udC13ZWlnaHQ6NDAwO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtZGlzcGxheTpibG9jaztmb250LXdlaWdodDo5MDA7c3JjOnVybCguLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjIpIGZvcm1hdCgid29mZjIiKSx1cmwoLi4vd2ViZm9udHMvZmEtc29saWQtOTAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtZGlzcGxheTpibG9jaztmb250LXdlaWdodDo0MDA7c3JjOnVybCguLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250QXdlc29tZSI7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtc29saWQtOTAwLndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250QXdlc29tZSI7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnRBd2Vzb21lIjtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKTt1bmljb2RlLXJhbmdlOnUrZjAwMyx1K2YwMDYsdStmMDE0LHUrZjAxNi1mMDE3LHUrZjAxYS1mMDFiLHUrZjAxZCx1K2YwMjIsdStmMDNlLHUrZjA0NCx1K2YwNDYsdStmMDVjLWYwNWQsdStmMDZlLHUrZjA3MCx1K2YwODctZjA4OCx1K2YwOGEsdStmMDk0LHUrZjA5Ni1mMDk3LHUrZjA5ZCx1K2YwYTAsdStmMGEyLHUrZjBhNC1mMGE3LHUrZjBjNSx1K2YwYzcsdStmMGU1LWYwZTYsdStmMGViLHUrZjBmNi1mMGY4LHUrZjEwYyx1K2YxMTQtZjExNSx1K2YxMTgtZjExYSx1K2YxMWMtZjExZCx1K2YxMzMsdStmMTQ3LHUrZjE0ZSx1K2YxNTAtZjE1Mix1K2YxODUtZjE4Nix1K2YxOGUsdStmMTkwLWYxOTIsdStmMTk2LHUrZjFjMS1mMWM5LHUrZjFkOSx1K2YxZGIsdStmMWUzLHUrZjFlYSx1K2YxZjcsdStmMWY5LHUrZjIwYSx1K2YyNDctZjI0OCx1K2YyNGEsdStmMjRkLHUrZjI1NS1mMjViLHUrZjI1ZCx1K2YyNzEtZjI3NCx1K2YyNzgsdStmMjdiLHUrZjI4Yyx1K2YyOGUsdStmMjljLHUrZjJiNSx1K2YyYjcsdStmMmJhLHUrZjJiYyx1K2YyYmUsdStmMmMwLWYyYzEsdStmMmMzLHUrZjJkMCx1K2YyZDIsdStmMmQ0LHUrZjJkY31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250QXdlc29tZSI7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZmEtdjRjb21wYXRpYmlsaXR5LndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL3dlYmZvbnRzL2ZhLXY0Y29tcGF0aWJpbGl0eS50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKTt1bmljb2RlLXJhbmdlOnUrZjA0MSx1K2YwNDcsdStmMDY1LWYwNjYsdStmMDdkLWYwN2UsdStmMDgwLHUrZjA4Yix1K2YwOGUsdStmMDkwLHUrZjA5YSx1K2YwYWMsdStmMGFlLHUrZjBiMix1K2YwZDAsdStmMGQ2LHUrZjBlNCx1K2YwZWMsdStmMTBhLWYxMGIsdStmMTIzLHUrZjEzZSx1K2YxNDgtZjE0OSx1K2YxNGMsdStmMTU2LHUrZjE1ZSx1K2YxNjAtZjE2MSx1K2YxNjMsdStmMTc1LWYxNzgsdStmMTk1LHUrZjFmOCx1K2YyMTksdStmMjdhfQ=="}},"time_used":58,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":40,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-main.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.563Z","timestamp":1785143154563,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-main.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\netag: W/\"da5bb1dc647470204df0e49f5afac2de\"\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\nx-content-type-options: nosniff\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11055\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\ncontent-encoding: br\r\ncf-ray: a21a7c2c0ae51a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":121,"size_decoded":658,"mime_type":"application/javascript","magic":"ASCII text, with no line terminators","md5":"da5bb1dc647470204df0e49f5afac2de","sha1":"f5cbf596ca5e4fe208e4c55af6e45b71f9febbe8","sha256":"705186becc9e0a306a6b4867ae2768aa9dd3b8c12393d9f9c52029e9a6fcf31c","sha512":"d9c0eda8c93df421f8147960ff4b00f8eacd8791b8386b020f04d0478c6b7a4328767a82b52b8cfbb7c3a44cb55cec488c2d1008670bee709d67d8bdbd887c39","ssdeep":"","tlshash":"d4b09b6c1057f86955e8064ed3b7f65d1d961050811104301658a1753321143c61c55b","first_seen":"2023-03-07T01:02:45Z","last_seen":"2026-08-03T13:22:13.478428Z","times_seen":92463,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1sibWFpbiJdLFtdLFtbIjU2ZDciLCJydW50aW1lIiwidmVuZG9yIiwiY2h1bmstdmVuZG9ycyIsImNodW5rLWNvbW1vbiJdXV0pOw=="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-app.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:54.586Z","timestamp":1785143154586,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-app.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:54 GMT\r\ncontent-type: application/javascript\r\netag: W/\"e736e189edb5d0d9d5b8e7f23dd9114a\"\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\nx-content-type-options: nosniff\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 11055\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\ncontent-encoding: br\r\ncf-ray: a21a7c2c2af31a30-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":151,"size_decoded":682,"mime_type":"application/javascript","magic":"ASCII text, with no line terminators","md5":"e736e189edb5d0d9d5b8e7f23dd9114a","sha1":"bcabee193f13756fa9154fc492fe420c47140343","sha256":"13cf82e6f9d48221cd55f8b3c3d206f7bdb83f291034b478e484ccfef7d500dd","sha512":"ea972884c185633ea238bdacea6ac9da0e0e92f88588cd85c214514c3597bc7d811c4dc4cd35b671dd2db97179bedceb38bd5d200abb9653fbcaeac2ca6ec7b5","ssdeep":"","tlshash":"a0c080ac1496fc9c1674154a8377f54a5cd510108055141015d851a11311546560c54d","first_seen":"2023-03-07T01:02:46Z","last_seen":"2026-08-03T13:22:13.511822Z","times_seen":92493,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siYXBwIl0sW2Z1bmN0aW9uKG4sbyxwKXtuLmV4cG9ydHM9cCgiNTZkNyIpfV0sW1swLCJydW50aW1lIiwidmVuZG9yIiwiY2h1bmstdmVuZG9ycyIsImNodW5rLWNvbW1vbiJdXV0pOw=="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0da3af.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.340Z","timestamp":1785143155340,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0da3af.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"4d9736a6cf175b83c2d5a50234a16b44\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30e9700883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":14277,"size_decoded":5536,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (14277), with no line terminators","md5":"4d9736a6cf175b83c2d5a50234a16b44","sha1":"930111650d3fb0035c89a075ad226f32589a0939","sha256":"175791cee0d4323d07bd395c74e2ebb88f8916a7236928717c07527e4b1891be","sha512":"6e3990c6b08e10f1a5419d130f8d068962b1836ef457a464124a817c6f8e154826445b4ce09d64233f1738a501c6d9af33e423184563c45701916f893bee90cb","ssdeep":"384:Nqw/U5YK8HxhquThWazJbUZDkM0kWEYPk6c+UtKM5eH:A+hquThWazJbUZDkM0kWEYPk6c+92eH","tlshash":"d352d6a7b2a4782d46379752308f3204f33b7d45b215d919f36ddcea4aa84c16056f3e","first_seen":"2026-07-08T23:24:03.877553Z","last_seen":"2026-08-03T12:50:03.381749Z","times_seen":2272,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstMmQwZGEzYWYiXSx7IjZiNWIiOmZ1bmN0aW9uKHQsZSxpKXsidXNlIHN0cmljdCI7aS5yKGUpO3ZhciBzPWkoIjVhNjAiKSxhPWkoIjJmNjIiKSxvPWkoImYwYjAiKSxyPWkoIjI5NjYiKSxuPWkoIjg3ZGQiKSxjPWkoIjNjNDAiKTtmdW5jdGlvbiBoKHQpe3JldHVybihoPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gbCh0LGUpe3ZhciBpPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKHM9cy5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksaS5wdXNoLmFwcGx5KGkscyl9cmV0dXJuIGl9ZnVuY3Rpb24gbSh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgaT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9sKE9iamVjdChpKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Zyh0LGUsaVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhpKSk6bChPYmplY3QoaSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihpLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBnKHQsZSxpKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1oKHQpfHwhdClyZXR1cm4gdDt2YXIgaT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09aSl7dmFyIHM9aS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9aChzKSlyZXR1cm4gczt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1oKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTppLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1pLHR9dmFyIGQ9e25hbWU6Ik1lc3NhZ2VQcmV2aWV3Iixjb21wb25lbnRzOnsiaS1mcmFtZSI6cy5hLFRhd2tDYXJkOm8uVGF3a0NhcmQsVGF3a0ljb246by5UYXdrSWNvbixDYWxsV2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGkuZSgiY2h1bmstMmQyMWFkMWIiKS50aGVuKGkuYmluZChudWxsLCJiY2FlIikpfSxUYXdrRW1vamk6by5UYXdrRW1vamksU3VydmV5T3B0aW9uczpyLmEsVGF3a0NoYXRCdWJibGU6by5UYXdrQ2hhdEJ1YmJsZX0sZGlyZWN0aXZlczp7VGF3a1Rvb2x0aXA6by5UYXdrVG9vbHRpcH0sbWl4aW5zOltuLmFdLGNvbXB1dGVkOm0obSh7fSxPYmplY3QoYS5jKSh7bWluRGVza3RvcDoid2lkZ2V0L21pbkRlc2t0b3AiLG1pbk1vYmlsZToid2lkZ2V0L21pbk1vYmlsZSIscGFnZVN0YXR1czoic2Vzc2lvbi9wYWdlU3RhdHVzIixjaGF0V2luZG93U3RhdGU6InNlc3Npb24vY2hhdFdpbmRvd1N0YXRlIixzaG93TWVzc2FnZVByZXZpZXc6IndpZGdldC9zaG93TWVzc2FnZVByZXZpZXciLGlzUmlnaHQ6IndpZGdldC9pc1JpZ2h0Iixpc0JvdHRvbToid2lkZ2V0L2lzQm90dG9tIixpc0NlbnRlcjoid2lkZ2V0L2lzQ2VudGVyIixmZWF0dXJlczoid2lkZ2V0L2ZlYXR1cmVzIixpc1JvdW5kV2lkZ2V0OiJ3aWRnZXQvaXNSb3VuZFdpZGdldCIsaW5jb21pbmdNZXNzYWdlOiJjaGF0L2luY29taW5nTWVzc2FnZSIsY2hhdFZlcnNpb246ImNoYXQvY2hhdFZlcnNpb24iLHN0YXRlczoid2lkZ2V0L3N0YXRlcyIscHJlY2hhdEZvcm1TdWJtaXR0ZWQ6InNlc3Npb24vcHJlY2hhdEZvcm1TdWJtaXR0ZWQiLGFnZW50UHJvZmlsZToiY2hhdC9hZ2VudFByb2ZpbGUiLGluY29taW5nQ2FsbDoiY2hhdC9pbmNvbWluZ0NhbGwiLGhhc0xpdmVDaGF0OiJ3aWRnZXQvaGFzTGl2ZUNoYXQiLHpvb21SYXRpbzoid2lkZ2V0L3pvb21SYXRpbyIsbW9iaWxlQnJvd3Nlck5hbWU6ImJyb3dzZXJEYXRhL21vYmlsZUJyb3dzZXJOYW1lIixoYXNDaGF0U3RhcnRlZDoiY2hhdC9oYXNDaGF0U3RhcnRlZCIsYWdlbnRzQ291bnQ6ImNoYXQvYWdlbnRzQ291bnQiLGVtb2ppRW5hYmxlZDoid2lkZ2V0L2Vtb2ppRW5hYmxlZCIsaXNQcmVjaGF0RW5hYmxlZDoid2lkZ2V0L2lzUHJlY2hhdEVuYWJsZWQiLHByb3BlcnR5SWQ6InByb3BlcnR5L2lkIix3aWRnZXRJZDoid2lkZ2V0L2lkIixvczoiYnJvd3NlckRhdGEvb3MifSkpLHt9LHt4T2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy54T2Zmc2V0KCl9LHlPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kVGF3a1dpZGdldFNldHRpbmdzLnlPZmZzZXQoKX0seE9mZnNldE1vYmlsZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MueE9mZnNldE1vYmlsZSgpfSx5T2Zmc2V0TW9iaWxlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy55T2Zmc2V0TW9iaWxlKCl9LHdpZHRoOmZ1bmN0aW9uKCl7dmFyIHQ9MzYwO3JldHVybiB0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiYodD0uNip3aW5kb3cuc2NyZWVuLmF2YWlsV2lkdGgpLHQ8MzYwJiYodD0zNjApLHdpbmRvdy5pbm5lcldpZHRoPD10KzIqdGhpcy5wYWRkaW5nJiYodD13aW5kb3cuaW5uZXJXaWR0aC0yKnRoaXMucGFkZGluZyksdH0sZnJhbWVXaWR0aDpmdW5jdGlvbigpe3ZhciB0PXRoaXMud2lkdGgqdGhpcy56b29tUmF0aW87cmV0dXJuIHRoaXMucHJldmlld1hPZmZzZXQrdD53aW5kb3cuaW5uZXJXaWR0aCYmKHQ9d2luZG93LmlubmVyV2lkdGgtdGhpcy5wcmV2aWV3WE9mZnNldCksIiIuY29uY2F0KHQsInB4Iil9LGZyYW1lSGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIiIuY29uY2F0KCh0aGlzLmhlaWdodCs0NSkqdGhpcy56b29tUmF0aW8sInB4Iil9LHByZXZpZXdZT2Zmc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLm1pbk1vYmlsZTp0aGlzLm1pbkRlc2t0b3AsZT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3RoaXMueU9mZnNldE1vYmlsZTp0aGlzLnlPZmZzZXQ7cmV0dXJuIHRoaXMuaXNDZW50ZXI/ZToodC5oZWlnaHQrdGhpcy5wYWRkaW5nLzIrZSkqdGhpcy56b29tUmF0aW99LHByZXZpZXdYT2Zmc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLm1pbk1vYmlsZTp0aGlzLm1pbkRlc2t0b3AsZT10aGlzLm1vYmlsZUJyb3dzZXJOYW1lP3RoaXMueE9mZnNldE1vYmlsZTp0aGlzLnhPZmZzZXQ7cmV0dXJuIHRoaXMuaXNDZW50ZXI/KHQuaGVpZ2h0K3RoaXMucGFkZGluZytlKSp0aGlzLnpvb21SYXRpbzplKnRoaXMuem9vbVJhdGlvfSxzdHlsZU9iamVjdDpmdW5jdGlvbigpe3ZhciB0PXsicG9zaXRpb246IjoiZml4ZWQgIWltcG9ydGFudDsiLCJoZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5mcmFtZUhlaWdodCwiICFpbXBvcnRhbnQ7IiksIndpZHRoOiI6IiIuY29uY2F0KHRoaXMuZnJhbWVXaWR0aCwiICFpbXBvcnRhbnQ7IiksIm1pbi1oZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5mcmFtZUhlaWdodCwiICFpbXBvcnRhbnQ7IiksIm1pbi13aWR0aDoiOiIiLmNvbmNhdCh0aGlzLmZyYW1lV2lkdGgsIiAhaW1wb3J0YW50OyIpLCJtYXgtaGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuZnJhbWVIZWlnaHQsIiAhaW1wb3J0YW50OyIpLCJtYXgtd2lkdGg6IjoiIi5jb25jYXQodGhpcy5mcmFtZVdpZHRoLCIgIWltcG9ydGFudDsiKX07cmV0dXJuIHRoaXMuaXNDZW50ZXI/KHRbInRvcDoiXT0iY2FsYyg1MCUgKyAiLmNvbmNhdCh0aGlzLnByZXZpZXdZT2Zmc2V0LCJweCk7IiksdFsidHJhbnNmb3JtOiJdPSJ0cmFuc2xhdGUoMCwgLTUwJSkgIWltcG9ydGFudDsiLHRbIi13ZWJraXQtdHJhbnNmb3JtOiJdPSJ0cmFuc2xhdGUoMCwgLTUwJSkgIWltcG9ydGFudDsiKTp0aGlzLmlzQm90dG9tP3RbImJvdHRvbToiXT0iIi5jb25jYXQodGhpcy5wcmV2aWV3WU9mZnNldCwicHg7Iik6dFsidG9wOiJdPSIiLmNvbmNhdCh0aGlzLnByZXZpZXdZT2Zmc2V0LCJweDsiKSx0aGlzLmlzUmlnaHQ/dFsicmlnaHQ6Il09IiIuY29uY2F0KHRoaXMucHJldmlld1hPZmZzZXQsInB4ICFpbXBvcnRhbnQ7Iik6dFsibGVmdDoiXT0iIi5jb25jYXQodGhpcy5wcmV2aWV3WE9mZnNldCwicHggIWltcG9ydGFudDsiKSx0aGlzLmlzVmlzaWJsZT90WyJkaXNwbGF5OiJdPSJibG9jayAhaW1wb3J0YW50OyI6dFsiZGlzcGxheToiXT0ibm9uZSAhaW1wb3J0YW50OyIsbShtKHt9LHRoaXMuZ2VuZXJpY1N0eWxlcyksdCl9LGlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZDpmdW5jdGlvbigpe3JldHVybiEhKHRoaXMuaGFzTGl2ZUNoYXR8fHRoaXMuaGFzQ2hhdFN0YXJ0ZWQmJnRoaXMuYWdlbnRzQ291bnQ+MCl9LGlzU3VydmV5T3B0aW9uT25seTpmdW5jdGlvbigpe3ZhciB0PSEwO3JldHVybiB0aGlzLm1lc3NhZ2VzLmZpbHRlcigoZnVuY3Rpb24oZSl7KCFlLnN1cnZleU9ianx8ZS5zdXJ2ZXlPYmomJjAhPT1lLm1lc3NhZ2UubGVuZ3RoKSYmKHQ9ITEpfSkpLHR9LGdldFN1cnZleU9wdGlvbnM6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9e30sZT1udWxsLGk9MCxzPXRoaXMubWVzc2FnZXMubGVuZ3RoLTE7cz49MCYmaTw9MztzLS0pe3ZhciBhPXRoaXMubWVzc2FnZXNbc107aWYoIWEuZGF0YXx8ITAhPT1hLmRhdGEucGNzKXtlPWE7YnJlYWt9aSsrfXJldHVybiBlJiZlLnN1cnZleU9iaiYmKHQ9bShtKHt9LGUuc3VydmV5T2JqKSx7fSx7c2VuZGVyVHlwZTplLnNlbmRlclR5cGV9KSksdH0sY2hhdEJ1YmJsZUN1c3RvbVN0eWxlOmZ1bmN0aW9uKCl7dmFyIHQ9e307cmV0dXJuIHRoaXMuaXNCb3R0b20/dGhpcy5pc1JpZ2h0P3RbImJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzIl09IjBweCI6dFsiYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cyJdPSIwcHgiOnRoaXMuaXNSaWdodD90WyJib3JkZXItdG9wLXJpZ2h0LXJhZGl1cyJdPSIwcHgiOnRbImJvcmRlci10b3AtbGVmdC1yYWRpdXMiXT0iMHB4Iix0fX0pLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57aXNDbG9zZVZpc2libGU6ITEsYmFja2dyb3VuZENvbG9yOnRoaXMuJHN0b3JlLmdldHRlcnNbIndpZGdldC9oZWFkZXJCZ0NvbG9yIl0sY3NzTGluazoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQiLCIvY3NzL21lc3NhZ2UtcHJldmlldy5jc3MiKSxpc1Zpc2libGU6ITEsbWVzc2FnZXM6W10saXNEdXJhdGlvbjohMCxoZWlnaHQ6NTAwLGlzTGl2ZTohMCxwYWRkaW5nOjIwLGtleTpvLkhlbHBlci5nZW5lcmF0ZVVVSUQoKX19LHdhdGNoOntpbmNvbWluZ01lc3NhZ2U6ZnVuY3Rpb24odCxlKXsibWluIj09PXRoaXMuY2hhdFdpbmRvd1N0YXRlJiZ0JiYidiIhPT10LnNlbmRlclR5cGUmJighZXx8IWUuY3Zlcnx8ZS5jdmVyJiZlLmN2ZXI8dC5jdmVyKSYmKHRoaXMuZGlzcGxheU1lc3NhZ2UodCksdGhpcy5pc1Zpc2libGU9ITApfSxjaGF0V2luZG93U3RhdGU6ZnVuY3Rpb24odCl7Im1heCI9PT10JiZ0aGlzLmNsZWFyTWVzc2FnZXMoKX0saXNWaXNpYmxlOmZ1bmN0aW9uKHQpe3RoaXMuJGV2ZW50QnVzLiRlbWl0KCJtcElzVmlzaWJsZSIsdCl9LGluY29taW5nQ2FsbDpmdW5jdGlvbih0KXsibWluIj09PXRoaXMuY2hhdFdpbmRvd1N0YXRlJiYodGhpcy5pc1Zpc2libGU9ISF0fHwwIT09dGhpcy5tZXNzYWdlcy5sZW5ndGgpfX0sbWV0aG9kczptKG0oe30sT2JqZWN0KGEuYikoe3RvZ2dsZVdpZGdldDoic2Vzc2lvbi90b2dnbGVXaWRnZXQiLHJvdXRlclB1c2g6InJvdXRlci9yb3V0ZXJQdXNoIn0pKSx7fSx7aW1hZ2VMb2FkZWQ6ZnVuY3Rpb24oKXt0aGlzLnJlY2FsY3VsYXRlSGVpZ2h0KCl9LG1heGltaXplV2lkZ2V0OmZ1bmN0aW9uKCl7dGhpcy5pc1Zpc2libGU9ITEsdGhpcy50b2dnbGVXaWRnZXQoKSx0aGlzLmNsZWFyTWVzc2FnZXMoKSx0aGlzLmlzUHJlY2hhdEVuYWJsZWQmJiF0aGlzLnByZWNoYXRGb3JtU3VibWl0dGVkP3RoaXMucm91dGVyUHVzaCgicHJlY2hhdCIpOnRoaXMucm91dGVyUHVzaCgiY2hhdCIpfSxjbGVhck1lc3NhZ2VzOmZ1bmN0aW9uKCl7dGhpcy5pc1Zpc2libGU9ITEsdGhpcy5tZXNzYWdlcz1bXX0sZGlzcGxheU1lc3NhZ2U6ZnVuY3Rpb24odCl7aWYoInYiIT09dC51dCYmIXQuY2FsbElkKXtpZih0LnByb2ZpbGVJbWcpdC5wcm9maWxlSW1hZ2U9IiIuY29uY2F0KCJodHRwczovL3Rhd2subGluayIsIi8iKS5jb25jYXQodC5wcm9maWxlSW1nKTtlbHNlIGlmKHQuZGF0YSYmdC5kYXRhLnJzYyl7dmFyIGU9dGhpcy5hZ2VudFByb2ZpbGUodC5kYXRhLnJzYyk7aWYoIWUpcmV0dXJuO3QucHJvZmlsZUltYWdlPWUucHJvZmlsZUltYWdlfWlmKHQubWVzc2FnZT8icyI9PT10LnNlbmRlclR5cGU/dC5zbmlwcGV0PXRoaXMubGltaXRNZXNzYWdlTGVuZ3RoKHQubWVzc2FnZSw1MDApOnQuc25pcHBldD10aGlzLmxpbWl0TWVzc2FnZUxlbmd0aCh0Lm1lc3NhZ2UsMTUwKTp0LnNuaXBwZXQ9IiIsdC5zaG93UHJvZmlsZT0hMCx0aGlzLm1lc3NhZ2VzLmxlbmd0aD49MyYmKCh0aGlzLmlzQm90dG9tP3RoaXMubWVzc2FnZXMuc3BsaWNlKDAsMSk6dGhpcy5tZXNzYWdlcy5zcGxpY2UoLTEsMSkpWzBdLnNob3dQcm9maWxlJiZ0aGlzLm1lc3NhZ2VzLmxlbmd0aD4wJiYodGhpcy5pc0JvdHRvbT90aGlzLm1lc3NhZ2VzWzBdLnNob3dQcm9maWxlPSEwOnRoaXMubWVzc2FnZXNbdGhpcy5tZXNzYWdlcy5sZW5ndGgtMV0uc2hvd1Byb2ZpbGU9ITApKSx0aGlzLm1lc3NhZ2VzLmxlbmd0aD4wKXRoaXMubWVzc2FnZXNbdGhpcy5tZXNzYWdlcy5sZW5ndGgtMV0ub3duZXJJZD09PXQub3duZXJJZCYmKHQuc2hvd1Byb2ZpbGU9ITEpO3RoaXMuaXNCb3R0b20/dGhpcy5tZXNzYWdlcy5wdXNoKHQpOnRoaXMubWVzc2FnZXMudW5zaGlmdCh0KSx0aGlzLnJlY2FsY3VsYXRlSGVpZ2h0KCl9fSxyZWNhbGN1bGF0ZUhlaWdodDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0LmhlaWdodD10LiRyZWZzWyJ0YXdrLW1lc3NhZ2UtcHJldmlldy1jb250ZW50Il0uY2xpZW50SGVpZ2h0O3ZhciBlPXdpbmRvdy5pbm5lckhlaWdodC10LnByZXZpZXdZT2Zmc2V0LTQ1O3QuJHJlZnNbInRhd2stY2hhdC1tZXNzYWdlLWNvbnRhaW5lciJdLnN0eWxlWyJtYXgtaGVpZ2h0Il09IiIuY29uY2F0KGUqdC56b29tUmF0aW8sInB4IiksdC4kcmVmc1sidGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVyIl0uc2Nyb2xsVG9wPTk5OTk5OTk5OSx0LnNjYWxlQ29udGVudCgpfSksNDAwKX0sbGltaXRNZXNzYWdlTGVuZ3RoOmZ1bmN0aW9uKHQsZSl7dmFyIGk9MDtpZih0Lmxlbmd0aD5lKWZvcihpPTA7aTxlOylpZignPGltZyBjbGFzcz0iZW1vamlvbmUiJz09PXQuc3Vic3RyaW5nKGksaSsyMSl8fCc8YSB0YXJnZXQ9Il9ibGFuayInPT09dC5zdWJzdHJpbmcoaSxpKzE4KSl7Zm9yKHZhciBzPWk7czx0Lmxlbmd0aDtzKyspaWYoaSsrLGUrKywiPiI9PT10LnN1YnN0cmluZyhzLHMrMSkpe2UtPTE7YnJlYWt9fWVsc2UgaSsrO3JldHVybiB0LnN1YnN0cmluZygwLGUpKyh0Lmxlbmd0aD5lPyJbLi4uXSI6IiIpfSxkaXNtaXNzUHJldmlldzpmdW5jdGlvbih0LGUpe2lmKHQmJnQuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5tZXNzYWdlcy5sZW5ndGgpe2lmKCFlKXt2YXIgaT10aGlzLm1lc3NhZ2VzW3RoaXMubWVzc2FnZXMubGVuZ3RoLTFdO2lmKCFpfHwhaS50aW1lU3RhbXApcmV0dXJuO3RoaXMuJHNvY2tldC5wdWJsaXNoKCJ2aXNpdG9yQ2hhdERpc21pc3MiLHt0aW1lc3RhbXA6aS50aW1lU3RhbXB9LChmdW5jdGlvbigpe30pKX10aGlzLmNsZWFyTWVzc2FnZXMoKX19LHNjYWxlQ29udGVudDpmdW5jdGlvbigpe2lmKHRoaXMubW9iaWxlQnJvd3Nlck5hbWUpe3ZhciB0LGU9dGhpcy5pc1JpZ2h0PyJyaWdodCI6ImxlZnQiO2lmKHQ9dGhpcy5pc0JvdHRvbT8iYm90dG9tIjoidG9wIiwhdGhpcy4kVGF3a1dpbmRvdy5pc01vYmlsZU9wdGltaXplZFdlYnNpdGUpe3ZhciBpPSJzY2FsZSgiLmNvbmNhdCh0aGlzLnpvb21SYXRpbywiKSIpLHM9Ii1tb3otdHJhbnNmb3JtOiAiLmNvbmNhdChpLCI7XG5cdFx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiAiKS5jb25jYXQoaSwiO1xuXHRcdFx0XHRcdFx0XHQtby10cmFuc2Zvcm06ICIpLmNvbmNhdChpLCI7XG5cdFx0XHRcdFx0XHRcdC1tcy10cmFuc2Zvcm06ICIpLmNvbmNhdChpLCI7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogIikuY29uY2F0KGksIjsiKSxhPSItbW96LXRyYW5zZm9ybS1vcmlnaW46ICIuY29uY2F0KHQsIiAiKS5jb25jYXQoZSwiO1xuXHRcdFx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogIikuY29uY2F0KHQsIiAgIikuY29uY2F0KGUsIjtcblx0XHRcdFx0XHRcdFx0XHQtby10cmFuc2Zvcm0tb3JnaW46ICIpLmNvbmNhdCh0LCIgICIpLmNvbmNhdChlLCI7XG5cdFx0XHRcdFx0XHRcdFx0LW1zLXRyYW5zZm9ybS1vcmlnaW46ICIpLmNvbmNhdCh0LCIgICIpLmNvbmNhdChlLCI7XG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogIikuY29uY2F0KHQsIiAgIikuY29uY2F0KGUpO3RoaXMuJHJlZnNbInRhd2stbWVzc2FnZS1wcmV2aWV3LWNvbnRlbnQiXS5zdHlsZS5jc3NUZXh0Kz1zK2E7dmFyIG89cGFyc2VJbnQodGhpcy5mcmFtZVdpZHRoLnJlcGxhY2UoInB4IiwiIiksMTApO28mJihvLz10aGlzLnpvb21SYXRpbyksdGhpcy4kcmVmc1sidGF3ay1tZXNzYWdlLXByZXZpZXciXS5zdHlsZS53aWR0aD0iIi5jb25jYXQobywicHgiKX19fSxsb2FkZWQ6ZnVuY3Rpb24oKXt2YXIgdCxlPXRoaXM7dD10aGlzLiRyZWZzWyJ0YXdrLW1lc3NhZ2UtcHJldmlldyJdP3BhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiRyZWZzWyJ0YXdrLW1lc3NhZ2UtcHJldmlldyJdKS5mb250U2l6ZSk6MTYsdGhpcy50ZXh0QXJlYUhlaWdodD10KzIsdGhpcy4kZXZlbnRCdXMuJG9uKCJyZXNldFN0YXRlIiwoZnVuY3Rpb24oKXtlLmNsZWFyTWVzc2FnZXMoKX0pKX0sc3VibWl0U3VydmV5OmZ1bmN0aW9uKHQpe3RoaXMuJFRhd2tDaGF0TWFuYWdlci5zZW5kTWVzc2FnZSh7bWVzc2FnZTp0fSl9LHBhcnNlTWFya2Rvd246ZnVuY3Rpb24odCl7dHJ5e3ZhciBlLGk9T2JqZWN0KGMuYSkodCx0aGlzLiRUYXdrV2luZG93Lm1ha2VIdG1sLCEwKTtyZXR1cm4oaSBpbnN0YW5jZW9mIEVycm9yfHx2b2lkIDA9PT1pKSYmdGhpcy4kVGF3a0xvZ2dlci5yZXBvcnRFcnJvcih7ZXJyb3I6aSxzb3VyY2U6e25hbWU6ImNvbXBvbmVudHMvbWVzc2FnZS1wcmV2aWV3L2Jhc2UudnVlIixtZXRob2Q6InBhcnNlTWFya2Rvd24oKSJ9LGRhdGE6e3Byb3BlcnR5SWQ6dGhpcy5wcm9wZXJ0eUlkLHdpZGdldElkOnRoaXMud2lkZ2V0SWQsb3M6dGhpcy5vcyx1c2VyQWdlbnQ6bnVsbD09PShlPW5hdmlnYXRvcil8fHZvaWQgMD09PWU/dm9pZCAwOmUudXNlckFnZW50fX0pLGl9Y2F0Y2goZSl7dmFyIHM7cmV0dXJuIHRoaXMuJFRhd2tMb2dnZXIucmVwb3J0RXJyb3Ioe2Vycm9yOmUsc291cmNlOntuYW1lOiJjb21wb25lbnRzL21lc3NhZ2UtcHJldmlldy9iYXNlLnZ1ZSIsbWV0aG9kOiJwYXJzZU1hcmtkb3duKCkifSxkYXRhOntwcm9wZXJ0eUlkOnRoaXMucHJvcGVydHlJZCx3aWRnZXRJZDp0aGlzLndpZGdldElkLG9zOnRoaXMub3MsdXNlckFnZW50Om51bGw9PT0ocz1uYXZpZ2F0b3IpfHx2b2lkIDA9PT1zP3ZvaWQgMDpzLnVzZXJBZ2VudH19KSx0fX0saGFuZGxlTW91c2VPdmVyOmZ1bmN0aW9uKCl7dGhpcy5pc0Nsb3NlVmlzaWJsZSYmIXRoaXMubW9iaWxlQnJvd3Nlck5hbWV8fCh0aGlzLmlzQ2xvc2VWaXNpYmxlPSEwKX0saGFuZGxlTW91c2VMZWF2ZTpmdW5jdGlvbigpeyh0aGlzLmlzQ2xvc2VWaXNpYmxlfHx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lKSYmKHRoaXMuaXNDbG9zZVZpc2libGU9ITEpfX0pLG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMucmVjYWxjdWxhdGVIZWlnaHQpLHRoaXMuJGV2ZW50QnVzLiRvbigiZGlzbWlzc1ByZXZpZXciLChmdW5jdGlvbihlKXtlLnRzJiZ0LmRpc21pc3NQcmV2aWV3KG51bGwsITApfSkpLHRoaXMuJGV2ZW50QnVzLiRvbigic3dpdGNoV2lkZ2V0IiwoZnVuY3Rpb24oKXt0LmtleT1vLkhlbHBlci5nZW5lcmF0ZVVVSUQoKX0pKSx0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiYodGhpcy5pc0Nsb3NlVmlzaWJsZT0hMCl9LGJlZm9yZURlc3Ryb3k6ZnVuY3Rpb24oKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLnJlY2FsY3VsYXRlSGVpZ2h0KSx0aGlzLiRldmVudEJ1cy4kb2ZmKCJkaXNtaXNzUHJldmlldyIpfX0sdT1pKCIyODc3IiksZj1PYmplY3QodS5hKShkLChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT10Ll9zZWxmLl9jO3JldHVybiBlKCJpLWZyYW1lIix7a2V5OnQua2V5LGF0dHJzOnt3aWR0aDp0LmZyYW1lV2lkdGgsaGVpZ2h0OnQuZnJhbWVIZWlnaHQsY3NzTGluazp0LmNzc0xpbmssc3R5bGVPYmplY3Q6dC5zdHlsZU9iamVjdH19LFtlKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1mbGV4IixzdGF0aWNTdHlsZTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSJ9LHN0eWxlOnsianVzdGlmeS1jb250ZW50IjoiIi5jb25jYXQodC5pc1JpZ2h0PyJmbGV4LWVuZCI6ImZsZXgtc3RhcnQiKX19LFtlKCJkaXYiLHtyZWY6InRhd2stbWVzc2FnZS1wcmV2aWV3IixzdGF0aWNDbGFzczoidGF3ay1mbGV4IHRhd2stbWVzc2FnZS1wcmV2aWV3IHRhd2stZmFkZUluIHRhd2stcGFkZGluZy1zbWFsbCIsY2xhc3M6W3QuaXNCb3R0b20/InRhd2stZmxleC1ib3R0b20iOiJ0YXdrLWZsZXgtdG9wIl0sc3R5bGU6e3dpZHRoOiIiLmNvbmNhdCh0LndpZHRoLCJweCIpLCJqdXN0aWZ5LWNvbnRlbnQiOiIiLmNvbmNhdCh0LmlzUmlnaHQ/ImZsZXgtZW5kIjoiZmxleC1zdGFydCIpLCJib3gtc2l6aW5nIjoiYm9yZGVyLWJveCJ9LGF0dHJzOntpZDoidGF3ay1tZXNzYWdlLXByZXZpZXcifSxvbjp7bW91c2VvdmVyOnQuaGFuZGxlTW91c2VPdmVyLG1vdXNlbGVhdmU6dC5oYW5kbGVNb3VzZUxlYXZlfX0sW2UoImRpdiIse3JlZjoidGF3ay1tZXNzYWdlLXByZXZpZXctY29udGVudCIsc3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1wcmV2aWV3LWNvbnRlbnQiLGF0dHJzOntpZDoidGF3ay1tZXNzYWdlLXByZXZpZXctY29udGVudCJ9fSxbZSgiZGl2Iix7c3R5bGU6e3Zpc2liaWxpdHk6IiIuY29uY2F0KHQuaXNDbG9zZVZpc2libGU/InZpc2libGUiOiJoaWRkZW4iKX19LFt0LmlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZCYmIXQuaXNTdXJ2ZXlPcHRpb25Pbmx5P2UoInRhd2stY2FyZCIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLHN0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UtcHJldmlldy1jbG9zZSB0YXdrLWJveC1zaGFkb3cteHNtYWxsIixjbGFzczp0LmlzUmlnaHQ/InRhd2stbWFyZ2luLWF1dG8tbGVmdCI6InRhd2stbWFyZ2luLWF1dG8tcmlnaHQiLGF0dHJzOntpZDoidGF3ay1tcHJldmlldy1jbG9zZSIscm9sZToiYnV0dG9uIix0YWJpbmRleDoiMCIsImRhdGEtdGV4dCI6IiIuY29uY2F0KHQuJGkxOG4oImJ1YmJsZSIsImF0dGVudGlvbl9ncmFiYmVyIikpLCJhcmlhLWxhYmVsIjoiIi5jb25jYXQodC4kaTE4bigiYnViYmxlIiwiYXR0ZW50aW9uX2dyYWJiZXIiKSl9LG9uOntjbGljazp0LmRpc21pc3NQcmV2aWV3fX0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJ4In19KV0sMSk6dC5fZSgpXSwxKSx0LmluY29taW5nQ2FsbD9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWJveCB0YXdrLWNhbGwtY2FyZCB0YXdrLWZsZXggdGF3ay1mbGV4LWJvdHRvbSJ9LFtlKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ib3gtc2hhZG93LXhzbWFsbCB0YXdrLW1lc3NhZ2UgdGF3ay1jYWxsLWNhcmQiLGNsYXNzOnQuaXNSaWdodD8idGF3ay1tYXJnaW4tYXV0by1sZWZ0IjoidGF3ay1tYXJnaW4tYXV0by1yaWdodCIsc3R5bGU6dC5jaGF0QnViYmxlQ3VzdG9tU3R5bGUsYXR0cnM6e3NpemU6InhzbWFsbCJ9fSxbZSgiY2FsbC13aWRnZXQiLHthdHRyczp7ZnVsbFZlcnNpb246ITF9fSldLDEpXSwxKTp0Ll9lKCksZSgiZGl2Iix7ZGlyZWN0aXZlczpbe25hbWU6InNob3ciLHJhd05hbWU6InYtc2hvdyIsdmFsdWU6IXQuaW5jb21pbmdDYWxsJiZ0LmlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZCxleHByZXNzaW9uOiIhaW5jb21pbmdDYWxsICYmXG5cdFx0XHRcdFx0XHRcdGlzTGl2ZUNoYXRGZWF0dXJlRW5hYmxlZCJ9XX0sW2UoImRpdiIse3JlZjoidGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVyIixzdGF0aWNDbGFzczoidGF3ay1jaGF0LW1lc3NhZ2UtY29udGFpbmVyIixhdHRyczp7aWQ6InRhd2stY2hhdC1tZXNzYWdlLWNvbnRhaW5lciIscm9sZToiYnV0dG9uIix0YWJpbmRleDoiMCJ9LG9uOntjbGljazp0Lm1heGltaXplV2lkZ2V0fX0sW2UoInRyYW5zaXRpb24tZ3JvdXAiLHthdHRyczp7bmFtZToibGlzdCIsbW9kZToiaW4tb3V0In19LHQuX2wodC5tZXNzYWdlcywoZnVuY3Rpb24oaSl7cmV0dXJuIGUoImRpdiIse2tleTppLm1lc3NhZ2VJZCxzdGF0aWNDbGFzczoidGF3ay1tYXJnaW4teHNtYWxsLWJvdHRvbSJ9LFtpLm1lc3NhZ2UubGVuZ3RofHxpLmF0dGNocz9lKCJkaXYiLHtzdGF0aWNDbGFzczoidGF3ay1tZXNzYWdlLWJveCB0YXdrLWZsZXggdGF3ay1mbGV4LWJvdHRvbSJ9LFtlKCJ0YXdrLWNhcmQiLHtzdGF0aWNDbGFzczoidGF3ay1ib3gtc2hhZG93LXhzbWFsbCB0YXdrLW1lc3NhZ2UiLGNsYXNzOnQuaXNSaWdodD8idGF3ay1tYXJnaW4tYXV0by1sZWZ0IjoidGF3ay1tYXJnaW4tYXV0by1yaWdodCIsc3R5bGU6dC5jaGF0QnViYmxlQ3VzdG9tU3R5bGUsYXR0cnM6e3NpemU6InNtYWxsIn19LFtbaS5hdHRjaHN8fGkuc25pcHBldD9lKCJ0YXdrLWNoYXQtYnViYmxlIix7c3RhdGljQ2xhc3M6InRhd2stbWVzc2FnZS1wcmV2aWV3LWNoYXQtYnViYmxlIixhdHRyczp7YXR0YWNobWVudHM6aS5hdHRjaHN9LG9uOntpbWFnZUxvYWRlZDp0LmltYWdlTG9hZGVkfX0sW2UoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLXRleHQtcmVndWxhci0zIixzdGF0aWNTdHlsZTp7ImZvbnQtc2l6ZSI6Ii44NzVyZW0ifX0sW2kuc25pcHBldD9lKCJ0YXdrLWVtb2ppIix7YXR0cnM6e2Vtb2ppOnQucGFyc2VNYXJrZG93bihpLnNuaXBwZXQpLGVuYWJsZWQ6dC5lbW9qaUVuYWJsZWR9fSk6dC5fZSgpXSwxKV0pOmUoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLW1hcmdpbi14c21hbGwtYm90dG9tIn0sW2UoInRhd2staWNvbiIse2F0dHJzOnt0eXBlOiJhdHRhY2htZW50IixzaXplOiJzbWFsbCJ9fSksdC5fdigiICIrdC5fcyh0LiRpMThuKCJjaGF0Iiwic2VudF9mb3JtIikpKyIgIildLDEpXV0sMildLDEpOnQuX2UoKV0pfSkpLDApLE9iamVjdC5rZXlzKHQuZ2V0U3VydmV5T3B0aW9ucykubGVuZ3RoJiYidiIhPT10LmdldFN1cnZleU9wdGlvbnMuc2VuZGVyVHlwZT9lKCJkaXYiLFtlKCJzdXJ2ZXktb3B0aW9ucyIse3N0YXRpY0NsYXNzOiJ0YXdrLW1lc3NhZ2UgdGF3ay1tYXJnaW4tdG9wIixjbGFzczp0LmlzUmlnaHQ/InRhd2stZmxleC1ib3R0b20gdGF3ay1tYXJnaW4tYXV0by1sZWZ0IjoidGF3ay1mbGV4LXRvcCB0YXdrLW1hcmdpbi1hdXRvLXJpZ2h0IixhdHRyczp7b3B0aW9uczp0LmdldFN1cnZleU9wdGlvbnMub3B0aW9uc30sb246e3NlbGVjdFN1cnZleTp0LnN1Ym1pdFN1cnZleX19KV0sMSk6dC5fZSgpXSwxKV0pXSldKV0pXSl9KSxbXSwhMSxudWxsLG51bGwsbnVsbCk7ZS5kZWZhdWx0PWYuZXhwb3J0c319XSk7"}},"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":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-4fe9d5dd.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.342Z","timestamp":1785143155342,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-4fe9d5dd.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"8249fafc9a9fbe0f75d4bef0aae2305a\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30e9710883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":1000,"size_decoded":1082,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (1000), with no line terminators","md5":"8249fafc9a9fbe0f75d4bef0aae2305a","sha1":"fab6dda0967dfbaf8ba0cfe5cfade8e150d1735d","sha256":"69b650b4d6479fd29987836a9b74147aade85cc9c50024bcacd5dfb2cb793e8d","sha512":"d0bc9a750061e5b4b761db081656b0e1e655126a413aaa22e87ce14cdfaeac34d532acd08eb0d61274707212871f6d84369b8b2a1a6d3e6c3bfd3d4167afa865","ssdeep":"","tlshash":"f9110248f056b8fcdc8af64288df143034627d4a898cf9e6f5f0aad405555ab312bb5f","first_seen":"2025-04-29T08:39:38.372752Z","last_seen":"2026-08-03T12:50:03.409076Z","times_seen":49219,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstNGZlOWQ1ZGQiXSx7IjlmM2UiOmZ1bmN0aW9uKGEsdCxzKXsidXNlIHN0cmljdCI7dmFyIGU9e25hbWU6ImJhc2UtZnJhbWUiLHByb3BzOntoYXNCYWNrZ3JvdW5kOnt0eXBlOkJvb2xlYW4sZGVmYXVsdDohMX19fSxuPXMoIjI4NzciKSxsPU9iamVjdChuLmEpKGUsKGZ1bmN0aW9uKGEsdCl7cmV0dXJuIGEoImRpdiIse3JlZjoidGF3ay1tYWluLXBhbmVsIixzdGF0aWNDbGFzczoidGF3ay1tYWluLXBhbmVsIHRhd2stY3VzdG9tLWZsZXgtMSIsY2xhc3M6W3QuZGF0YS5jbGFzcyx0LmRhdGEuc3RhdGljQ2xhc3NdfSxbYSgiZGl2Iix0Ll9nKHtkaXJlY3RpdmVzOlt7bmFtZToidGF3ay1zY3JvbGwiLHJhd05hbWU6InYtdGF3ay1zY3JvbGwifV0scmVmOiJ0YXdrLWNoYXQtcGFuZWwiLHN0YXRpY0NsYXNzOiJ0YXdrLWNoYXQtcGFuZWwgdGF3ay1jdXN0b20tZmxleC0xIHBzLS1hY3RpdmUteSIsY2xhc3M6dC5wcm9wcy5oYXNCYWNrZ3JvdW5kPyJ0YXdrLWhvbWUtYmciOiIifSx0Lmxpc3RlbmVycyksW2EoImRpdiIse3JlZjoidGF3ay1pbm5lci1wYW5lbCIsc3RhdGljQ2xhc3M6InRhd2stY2hhdC1wYW5lbC1pbm5lciB0YXdrLWZsZXggdGF3ay1mbGV4LWNvbHVtbiJ9LFt0Ll90KCJkZWZhdWx0IildLDIpXSksdC5fdCgidW5zZWVuLW1lc3NhZ2UtY291bnQiKV0sMil9KSxbXSwhMCxudWxsLG51bGwsbnVsbCk7dC5hPWwuZXhwb3J0c30sZGJkMTpmdW5jdGlvbihhLHQscyl7InVzZSBzdHJpY3QiO3ZhciBlPXtuYW1lOiJiYXNlLWJvZHkifSxuPXMoIjI4NzciKSxsPU9iamVjdChuLmEpKGUsKGZ1bmN0aW9uKCl7cmV0dXJuKDAsdGhpcy5fc2VsZi5fYykoImRpdiIse3N0YXRpY0NsYXNzOiJ0YXdrLWJvZHkiLGF0dHJzOntpZDoidGF3ay1ib2R5In19LFt0aGlzLl90KCJkZWZhdWx0IildLDIpfSksW10sITEsbnVsbCxudWxsLG51bGwpO3QuYT1sLmV4cG9ydHN9fV0pOw=="}},"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":"profx.io/assets/global/css/bootstrap.min.css","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.619Z","timestamp":1785143153619,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/css/bootstrap.min.css HTTP/1.1\r\nHost: profx.io\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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"2f95a-67b374e4-d3a764218234cab5;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 23869\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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"]},{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":194906,"size_decoded":24489,"mime_type":"text/css","magic":"Unicode text, UTF-8 text, with very long lines (65301), with CRLF line terminators","md5":"dc2a3883b9beb1d7ee8d3dd0460f335d","sha1":"3a07cb42128798658eaa78ef9900d94951159d0a","sha256":"aec86a9f655cc6b81a5e65ed69979d698ff3bd317eb5301ef0fb277c2fedd0e4","sha512":"f70e320ab2f94c04dafa1822c56699bb3ceba21bb05e16a35e1feb58c802ac30cec5c53badac2b2146deb5acbc10c7f80787d6a780dc7eb3febbeb72ab25dbd8","ssdeep":"1536:YtGg9JfWgeQK5wlP72qgOfI3N9LsqkVkpz600I4l8:YtGg9JfWD9kVkpz600I4l8","tlshash":"9c1482d6f190307d98a7c2499591fefd866fa585d7120aaaf0137b6807ca7c30963ecc","first_seen":"2024-03-24T05:51:39Z","last_seen":"2026-08-01T08:14:07.746459Z","times_seen":273,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsvKiENCiAqIEJvb3RzdHJhcCAgdjUuMi4zIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKQ0KICogQ29weXJpZ2h0IDIwMTEtMjAyMiBUaGUgQm9vdHN0cmFwIEF1dGhvcnMNCiAqIENvcHlyaWdodCAyMDExLTIwMjIgVHdpdHRlciwgSW5jLg0KICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpDQogKi86cm9vdHstLWJzLWJsdWU6IzBkNmVmZDstLWJzLWluZGlnbzojNjYxMGYyOy0tYnMtcHVycGxlOiM2ZjQyYzE7LS1icy1waW5rOiNkNjMzODQ7LS1icy1yZWQ6I2RjMzU0NTstLWJzLW9yYW5nZTojZmQ3ZTE0Oy0tYnMteWVsbG93OiNmZmMxMDc7LS1icy1ncmVlbjojMTk4NzU0Oy0tYnMtdGVhbDojMjBjOTk3Oy0tYnMtY3lhbjojMGRjYWYwOy0tYnMtYmxhY2s6IzAwMDstLWJzLXdoaXRlOiNmZmY7LS1icy1ncmF5OiM2Yzc1N2Q7LS1icy1ncmF5LWRhcms6IzM0M2E0MDstLWJzLWdyYXktMTAwOiNmOGY5ZmE7LS1icy1ncmF5LTIwMDojZTllY2VmOy0tYnMtZ3JheS0zMDA6I2RlZTJlNjstLWJzLWdyYXktNDAwOiNjZWQ0ZGE7LS1icy1ncmF5LTUwMDojYWRiNWJkOy0tYnMtZ3JheS02MDA6IzZjNzU3ZDstLWJzLWdyYXktNzAwOiM0OTUwNTc7LS1icy1ncmF5LTgwMDojMzQzYTQwOy0tYnMtZ3JheS05MDA6IzIxMjUyOTstLWJzLXByaW1hcnk6IzBkNmVmZDstLWJzLXNlY29uZGFyeTojNmM3NTdkOy0tYnMtc3VjY2VzczojMTk4NzU0Oy0tYnMtaW5mbzojMGRjYWYwOy0tYnMtd2FybmluZzojZmZjMTA3Oy0tYnMtZGFuZ2VyOiNkYzM1NDU7LS1icy1saWdodDojZjhmOWZhOy0tYnMtZGFyazojMjEyNTI5Oy0tYnMtcHJpbWFyeS1yZ2I6MTMsMTEwLDI1MzstLWJzLXNlY29uZGFyeS1yZ2I6MTA4LDExNywxMjU7LS1icy1zdWNjZXNzLXJnYjoyNSwxMzUsODQ7LS1icy1pbmZvLXJnYjoxMywyMDIsMjQwOy0tYnMtd2FybmluZy1yZ2I6MjU1LDE5Myw3Oy0tYnMtZGFuZ2VyLXJnYjoyMjAsNTMsNjk7LS1icy1saWdodC1yZ2I6MjQ4LDI0OSwyNTA7LS1icy1kYXJrLXJnYjozMywzNyw0MTstLWJzLXdoaXRlLXJnYjoyNTUsMjU1LDI1NTstLWJzLWJsYWNrLXJnYjowLDAsMDstLWJzLWJvZHktY29sb3ItcmdiOjMzLDM3LDQxOy0tYnMtYm9keS1iZy1yZ2I6MjU1LDI1NSwyNTU7LS1icy1mb250LXNhbnMtc2VyaWY6c3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sIlNlZ29lIFVJIixSb2JvdG8sIkhlbHZldGljYSBOZXVlIiwiTm90byBTYW5zIiwiTGliZXJhdGlvbiBTYW5zIixBcmlhbCxzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSI7LS1icy1mb250LW1vbm9zcGFjZTpTRk1vbm8tUmVndWxhcixNZW5sbyxNb25hY28sQ29uc29sYXMsIkxpYmVyYXRpb24gTW9ubyIsIkNvdXJpZXIgTmV3Iixtb25vc3BhY2U7LS1icy1ncmFkaWVudDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTstLWJzLWJvZHktZm9udC1mYW1pbHk6dmFyKC0tYnMtZm9udC1zYW5zLXNlcmlmKTstLWJzLWJvZHktZm9udC1zaXplOjFyZW07LS1icy1ib2R5LWZvbnQtd2VpZ2h0OjQwMDstLWJzLWJvZHktbGluZS1oZWlnaHQ6MS41Oy0tYnMtYm9keS1jb2xvcjojMjEyNTI5Oy0tYnMtYm9keS1iZzojZmZmOy0tYnMtYm9yZGVyLXdpZHRoOjFweDstLWJzLWJvcmRlci1zdHlsZTpzb2xpZDstLWJzLWJvcmRlci1jb2xvcjojZGVlMmU2Oy0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OnJnYmEoMCwgMCwgMCwgMC4xNzUpOy0tYnMtYm9yZGVyLXJhZGl1czowLjM3NXJlbTstLWJzLWJvcmRlci1yYWRpdXMtc206MC4yNXJlbTstLWJzLWJvcmRlci1yYWRpdXMtbGc6MC41cmVtOy0tYnMtYm9yZGVyLXJhZGl1cy14bDoxcmVtOy0tYnMtYm9yZGVyLXJhZGl1cy0yeGw6MnJlbTstLWJzLWJvcmRlci1yYWRpdXMtcGlsbDo1MHJlbTstLWJzLWxpbmstY29sb3I6IzBkNmVmZDstLWJzLWxpbmstaG92ZXItY29sb3I6IzBhNThjYTstLWJzLWNvZGUtY29sb3I6I2Q2MzM4NDstLWJzLWhpZ2hsaWdodC1iZzojZmZmM2NkfSosOjphZnRlciw6OmJlZm9yZXtib3gtc2l6aW5nOmJvcmRlci1ib3h9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOm5vLXByZWZlcmVuY2Upezpyb290e3Njcm9sbC1iZWhhdmlvcjpzbW9vdGh9fWJvZHl7bWFyZ2luOjA7Zm9udC1mYW1pbHk6dmFyKC0tYnMtYm9keS1mb250LWZhbWlseSk7Zm9udC1zaXplOnZhcigtLWJzLWJvZHktZm9udC1zaXplKTtmb250LXdlaWdodDp2YXIoLS1icy1ib2R5LWZvbnQtd2VpZ2h0KTtsaW5lLWhlaWdodDp2YXIoLS1icy1ib2R5LWxpbmUtaGVpZ2h0KTtjb2xvcjp2YXIoLS1icy1ib2R5LWNvbG9yKTt0ZXh0LWFsaWduOnZhcigtLWJzLWJvZHktdGV4dC1hbGlnbik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1ib2R5LWJnKTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9aHJ7bWFyZ2luOjFyZW0gMDtjb2xvcjppbmhlcml0O2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkO29wYWNpdHk6LjI1fS5oMSwuaDIsLmgzLC5oNCwuaDUsLmg2LGgxLGgyLGgzLGg0LGg1LGg2e21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxLjJ9LmgxLGgxe2ZvbnQtc2l6ZTpjYWxjKDEuMzc1cmVtICsgMS41dncpfUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmgxLGgxe2ZvbnQtc2l6ZToyLjVyZW19fS5oMixoMntmb250LXNpemU6Y2FsYygxLjMyNXJlbSArIC45dncpfUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmgyLGgye2ZvbnQtc2l6ZToycmVtfX0uaDMsaDN7Zm9udC1zaXplOmNhbGMoMS4zcmVtICsgLjZ2dyl9QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuaDMsaDN7Zm9udC1zaXplOjEuNzVyZW19fS5oNCxoNHtmb250LXNpemU6Y2FsYygxLjI3NXJlbSArIC4zdncpfUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7Lmg0LGg0e2ZvbnQtc2l6ZToxLjVyZW19fS5oNSxoNXtmb250LXNpemU6MS4yNXJlbX0uaDYsaDZ7Zm9udC1zaXplOjFyZW19cHttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbToxcmVtfWFiYnJbdGl0bGVdey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7Y3Vyc29yOmhlbHA7LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6bm9uZTt0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6bm9uZX1hZGRyZXNze21hcmdpbi1ib3R0b206MXJlbTtmb250LXN0eWxlOm5vcm1hbDtsaW5lLWhlaWdodDppbmhlcml0fW9sLHVse3BhZGRpbmctbGVmdDoycmVtfWRsLG9sLHVse21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjFyZW19b2wgb2wsb2wgdWwsdWwgb2wsdWwgdWx7bWFyZ2luLWJvdHRvbTowfWR0e2ZvbnQtd2VpZ2h0OjcwMH1kZHttYXJnaW4tYm90dG9tOi41cmVtO21hcmdpbi1sZWZ0OjB9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW19YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfS5zbWFsbCxzbWFsbHtmb250LXNpemU6Ljg3NWVtfS5tYXJrLG1hcmt7cGFkZGluZzouMTg3NWVtO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtaGlnaGxpZ2h0LWJnKX1zdWIsc3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZTouNzVlbTtsaW5lLWhlaWdodDowO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1Yntib3R0b206LS4yNWVtfXN1cHt0b3A6LS41ZW19YXtjb2xvcjp2YXIoLS1icy1saW5rLWNvbG9yKTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWE6aG92ZXJ7Y29sb3I6dmFyKC0tYnMtbGluay1ob3Zlci1jb2xvcil9YTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSksYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXJ7Y29sb3I6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246bm9uZX1jb2RlLGtiZCxwcmUsc2FtcHtmb250LWZhbWlseTp2YXIoLS1icy1mb250LW1vbm9zcGFjZSk7Zm9udC1zaXplOjFlbX1wcmV7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbToxcmVtO292ZXJmbG93OmF1dG87Zm9udC1zaXplOi44NzVlbX1wcmUgY29kZXtmb250LXNpemU6aW5oZXJpdDtjb2xvcjppbmhlcml0O3dvcmQtYnJlYWs6bm9ybWFsfWNvZGV7Zm9udC1zaXplOi44NzVlbTtjb2xvcjp2YXIoLS1icy1jb2RlLWNvbG9yKTt3b3JkLXdyYXA6YnJlYWstd29yZH1hPmNvZGV7Y29sb3I6aW5oZXJpdH1rYmR7cGFkZGluZzouMTg3NXJlbSAuMzc1cmVtO2ZvbnQtc2l6ZTouODc1ZW07Y29sb3I6dmFyKC0tYnMtYm9keS1iZyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1ib2R5LWNvbG9yKTtib3JkZXItcmFkaXVzOi4yNXJlbX1rYmQga2Jke3BhZGRpbmc6MDtmb250LXNpemU6MWVtfWZpZ3VyZXttYXJnaW46MCAwIDFyZW19aW1nLHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9dGFibGV7Y2FwdGlvbi1zaWRlOmJvdHRvbTtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9Y2FwdGlvbntwYWRkaW5nLXRvcDouNXJlbTtwYWRkaW5nLWJvdHRvbTouNXJlbTtjb2xvcjojNmM3NTdkO3RleHQtYWxpZ246bGVmdH10aHt0ZXh0LWFsaWduOmluaGVyaXQ7dGV4dC1hbGlnbjotd2Via2l0LW1hdGNoLXBhcmVudH10Ym9keSx0ZCx0Zm9vdCx0aCx0aGVhZCx0cntib3JkZXItY29sb3I6aW5oZXJpdDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjB9bGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2t9YnV0dG9ue2JvcmRlci1yYWRpdXM6MH1idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOjB9YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXttYXJnaW46MDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXR9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfVtyb2xlPWJ1dHRvbl17Y3Vyc29yOnBvaW50ZXJ9c2VsZWN0e3dvcmQtd3JhcDpub3JtYWx9c2VsZWN0OmRpc2FibGVke29wYWNpdHk6MX1bbGlzdF06bm90KFt0eXBlPWRhdGVdKTpub3QoW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdKTpub3QoW3R5cGU9bW9udGhdKTpub3QoW3R5cGU9d2Vla10pOm5vdChbdHlwZT10aW1lXSk6Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvcntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fVt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF0sYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259W3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxbdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSxidXR0b246bm90KDpkaXNhYmxlZCl7Y3Vyc29yOnBvaW50ZXJ9OjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXItc3R5bGU6bm9uZX10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9ZmllbGRzZXR7bWluLXdpZHRoOjA7cGFkZGluZzowO21hcmdpbjowO2JvcmRlcjowfWxlZ2VuZHtmbG9hdDpsZWZ0O3dpZHRoOjEwMCU7cGFkZGluZzowO21hcmdpbi1ib3R0b206LjVyZW07Zm9udC1zaXplOmNhbGMoMS4yNzVyZW0gKyAuM3Z3KTtsaW5lLWhlaWdodDppbmhlcml0fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7bGVnZW5ke2ZvbnQtc2l6ZToxLjVyZW19fWxlZ2VuZCsqe2NsZWFyOmxlZnR9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZHtwYWRkaW5nOjB9Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfVt0eXBlPXNlYXJjaF17b3V0bGluZS1vZmZzZXQ6LTJweDstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkfTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX06Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXJ7cGFkZGluZzowfTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257Zm9udDppbmhlcml0Oy13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntmb250OmluaGVyaXQ7LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbn1vdXRwdXR7ZGlzcGxheTppbmxpbmUtYmxvY2t9aWZyYW1le2JvcmRlcjowfXN1bW1hcnl7ZGlzcGxheTpsaXN0LWl0ZW07Y3Vyc29yOnBvaW50ZXJ9cHJvZ3Jlc3N7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9W2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH0ubGVhZHtmb250LXNpemU6MS4yNXJlbTtmb250LXdlaWdodDozMDB9LmRpc3BsYXktMXtmb250LXNpemU6Y2FsYygxLjYyNXJlbSArIDQuNXZ3KTtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MS4yfUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmRpc3BsYXktMXtmb250LXNpemU6NXJlbX19LmRpc3BsYXktMntmb250LXNpemU6Y2FsYygxLjU3NXJlbSArIDMuOXZ3KTtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MS4yfUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmRpc3BsYXktMntmb250LXNpemU6NC41cmVtfX0uZGlzcGxheS0ze2ZvbnQtc2l6ZTpjYWxjKDEuNTI1cmVtICsgMy4zdncpO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZGlzcGxheS0ze2ZvbnQtc2l6ZTo0cmVtfX0uZGlzcGxheS00e2ZvbnQtc2l6ZTpjYWxjKDEuNDc1cmVtICsgMi43dncpO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZGlzcGxheS00e2ZvbnQtc2l6ZTozLjVyZW19fS5kaXNwbGF5LTV7Zm9udC1zaXplOmNhbGMoMS40MjVyZW0gKyAyLjF2dyk7Zm9udC13ZWlnaHQ6MzAwO2xpbmUtaGVpZ2h0OjEuMn1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5kaXNwbGF5LTV7Zm9udC1zaXplOjNyZW19fS5kaXNwbGF5LTZ7Zm9udC1zaXplOmNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7Zm9udC13ZWlnaHQ6MzAwO2xpbmUtaGVpZ2h0OjEuMn1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5kaXNwbGF5LTZ7Zm9udC1zaXplOjIuNXJlbX19Lmxpc3QtdW5zdHlsZWR7cGFkZGluZy1sZWZ0OjA7bGlzdC1zdHlsZTpub25lfS5saXN0LWlubGluZXtwYWRkaW5nLWxlZnQ6MDtsaXN0LXN0eWxlOm5vbmV9Lmxpc3QtaW5saW5lLWl0ZW17ZGlzcGxheTppbmxpbmUtYmxvY2t9Lmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tcmlnaHQ6LjVyZW19LmluaXRpYWxpc217Zm9udC1zaXplOi44NzVlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmJsb2NrcXVvdGV7bWFyZ2luLWJvdHRvbToxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtfS5ibG9ja3F1b3RlPjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uYmxvY2txdW90ZS1mb290ZXJ7bWFyZ2luLXRvcDotMXJlbTttYXJnaW4tYm90dG9tOjFyZW07Zm9udC1zaXplOi44NzVlbTtjb2xvcjojNmM3NTdkfS5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3Jle2NvbnRlbnQ6IuKAlCAifS5pbWctZmx1aWR7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99LmltZy10aHVtYm5haWx7cGFkZGluZzouMjVyZW07YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtib3JkZXItcmFkaXVzOi4zNzVyZW07bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99LmZpZ3VyZXtkaXNwbGF5OmlubGluZS1ibG9ja30uZmlndXJlLWltZ3ttYXJnaW4tYm90dG9tOi41cmVtO2xpbmUtaGVpZ2h0OjF9LmZpZ3VyZS1jYXB0aW9ue2ZvbnQtc2l6ZTouODc1ZW07Y29sb3I6IzZjNzU3ZH0uY29udGFpbmVyLC5jb250YWluZXItZmx1aWQsLmNvbnRhaW5lci1sZywuY29udGFpbmVyLW1kLC5jb250YWluZXItc20sLmNvbnRhaW5lci14bCwuY29udGFpbmVyLXh4bHstLWJzLWd1dHRlci14OjEuNXJlbTstLWJzLWd1dHRlci15OjA7d2lkdGg6MTAwJTtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogLjUpO3BhZGRpbmctbGVmdDpjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC41KTttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY29udGFpbmVyLC5jb250YWluZXItc217bWF4LXdpZHRoOjU0MHB4fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLW1kLC5jb250YWluZXItc217bWF4LXdpZHRoOjcyMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLWxnLC5jb250YWluZXItbWQsLmNvbnRhaW5lci1zbXttYXgtd2lkdGg6OTYwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLWxnLC5jb250YWluZXItbWQsLmNvbnRhaW5lci1zbSwuY29udGFpbmVyLXhse21heC13aWR0aDoxMTQwcHh9fUBtZWRpYSAobWluLXdpZHRoOjE0MDBweCl7LmNvbnRhaW5lciwuY29udGFpbmVyLWxnLC5jb250YWluZXItbWQsLmNvbnRhaW5lci1zbSwuY29udGFpbmVyLXhsLC5jb250YWluZXIteHhse21heC13aWR0aDoxMzIwcHh9fS5yb3d7LS1icy1ndXR0ZXIteDoxLjVyZW07LS1icy1ndXR0ZXIteTowO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW4tdG9wOmNhbGMoLTEgKiB2YXIoLS1icy1ndXR0ZXIteSkpO21hcmdpbi1yaWdodDpjYWxjKC0uNSAqIHZhcigtLWJzLWd1dHRlci14KSk7bWFyZ2luLWxlZnQ6Y2FsYygtLjUgKiB2YXIoLS1icy1ndXR0ZXIteCkpfS5yb3c+KntmbGV4LXNocmluazowO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC41KTtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAuNSk7bWFyZ2luLXRvcDp2YXIoLS1icy1ndXR0ZXIteSl9LmNvbHtmbGV4OjEgMCAwJX0ucm93LWNvbHMtYXV0bz4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30ucm93LWNvbHMtMT4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MTAwJX0ucm93LWNvbHMtMj4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6NTAlfS5yb3ctY29scy0zPip7ZmxleDowIDAgYXV0bzt3aWR0aDozMy4zMzMzMzMzMzMzJX0ucm93LWNvbHMtND4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MjUlfS5yb3ctY29scy01Pip7ZmxleDowIDAgYXV0bzt3aWR0aDoyMCV9LnJvdy1jb2xzLTY+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjE2LjY2NjY2NjY2NjclfS5jb2wtYXV0b3tmbGV4OjAgMCBhdXRvO3dpZHRoOmF1dG99LmNvbC0xe2ZsZXg6MCAwIGF1dG87d2lkdGg6OC4zMzMzMzMzMyV9LmNvbC0ye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjclfS5jb2wtM3tmbGV4OjAgMCBhdXRvO3dpZHRoOjI1JX0uY29sLTR7ZmxleDowIDAgYXV0bzt3aWR0aDozMy4zMzMzMzMzMyV9LmNvbC01e2ZsZXg6MCAwIGF1dG87d2lkdGg6NDEuNjY2NjY2NjclfS5jb2wtNntmbGV4OjAgMCBhdXRvO3dpZHRoOjUwJX0uY29sLTd7ZmxleDowIDAgYXV0bzt3aWR0aDo1OC4zMzMzMzMzMyV9LmNvbC04e2ZsZXg6MCAwIGF1dG87d2lkdGg6NjYuNjY2NjY2NjclfS5jb2wtOXtmbGV4OjAgMCBhdXRvO3dpZHRoOjc1JX0uY29sLTEwe2ZsZXg6MCAwIGF1dG87d2lkdGg6ODMuMzMzMzMzMzMlfS5jb2wtMTF7ZmxleDowIDAgYXV0bzt3aWR0aDo5MS42NjY2NjY2NyV9LmNvbC0xMntmbGV4OjAgMCBhdXRvO3dpZHRoOjEwMCV9Lm9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5vZmZzZXQtMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NyV9Lm9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMlfS5vZmZzZXQtNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NyV9Lm9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0ub2Zmc2V0LTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMlfS5vZmZzZXQtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NyV9Lm9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0ub2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY3JX0uZy0wLC5neC0wey0tYnMtZ3V0dGVyLXg6MH0uZy0wLC5neS0wey0tYnMtZ3V0dGVyLXk6MH0uZy0xLC5neC0xey0tYnMtZ3V0dGVyLXg6MC4yNXJlbX0uZy0xLC5neS0xey0tYnMtZ3V0dGVyLXk6MC4yNXJlbX0uZy0yLC5neC0yey0tYnMtZ3V0dGVyLXg6MC41cmVtfS5nLTIsLmd5LTJ7LS1icy1ndXR0ZXIteTowLjVyZW19LmctMywuZ3gtM3stLWJzLWd1dHRlci14OjFyZW19LmctMywuZ3ktM3stLWJzLWd1dHRlci15OjFyZW19LmctNCwuZ3gtNHstLWJzLWd1dHRlci14OjEuNXJlbX0uZy00LC5neS00ey0tYnMtZ3V0dGVyLXk6MS41cmVtfS5nLTUsLmd4LTV7LS1icy1ndXR0ZXIteDozcmVtfS5nLTUsLmd5LTV7LS1icy1ndXR0ZXIteTozcmVtfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY29sLXNte2ZsZXg6MSAwIDAlfS5yb3ctY29scy1zbS1hdXRvPip7ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvfS5yb3ctY29scy1zbS0xPip7ZmxleDowIDAgYXV0bzt3aWR0aDoxMDAlfS5yb3ctY29scy1zbS0yPip7ZmxleDowIDAgYXV0bzt3aWR0aDo1MCV9LnJvdy1jb2xzLXNtLTM+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzMzMlfS5yb3ctY29scy1zbS00Pip7ZmxleDowIDAgYXV0bzt3aWR0aDoyNSV9LnJvdy1jb2xzLXNtLTU+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjIwJX0ucm93LWNvbHMtc20tNj4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjY2NyV9LmNvbC1zbS1hdXRve2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30uY29sLXNtLTF7ZmxleDowIDAgYXV0bzt3aWR0aDo4LjMzMzMzMzMzJX0uY29sLXNtLTJ7ZmxleDowIDAgYXV0bzt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC1zbS0ze2ZsZXg6MCAwIGF1dG87d2lkdGg6MjUlfS5jb2wtc20tNHtmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLXNtLTV7ZmxleDowIDAgYXV0bzt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC1zbS02e2ZsZXg6MCAwIGF1dG87d2lkdGg6NTAlfS5jb2wtc20tN3tmbGV4OjAgMCBhdXRvO3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLXNtLTh7ZmxleDowIDAgYXV0bzt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC1zbS05e2ZsZXg6MCAwIGF1dG87d2lkdGg6NzUlfS5jb2wtc20tMTB7ZmxleDowIDAgYXV0bzt3aWR0aDo4My4zMzMzMzMzMyV9LmNvbC1zbS0xMXtmbGV4OjAgMCBhdXRvO3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLXNtLTEye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTAwJX0ub2Zmc2V0LXNtLTB7bWFyZ2luLWxlZnQ6MH0ub2Zmc2V0LXNtLTF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMyV9Lm9mZnNldC1zbS0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0ub2Zmc2V0LXNtLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQtc20tNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMyV9Lm9mZnNldC1zbS01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0ub2Zmc2V0LXNtLTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtc20tN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMyV9Lm9mZnNldC1zbS04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0ub2Zmc2V0LXNtLTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQtc20tMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMlfS5vZmZzZXQtc20tMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5nLXNtLTAsLmd4LXNtLTB7LS1icy1ndXR0ZXIteDowfS5nLXNtLTAsLmd5LXNtLTB7LS1icy1ndXR0ZXIteTowfS5nLXNtLTEsLmd4LXNtLTF7LS1icy1ndXR0ZXIteDowLjI1cmVtfS5nLXNtLTEsLmd5LXNtLTF7LS1icy1ndXR0ZXIteTowLjI1cmVtfS5nLXNtLTIsLmd4LXNtLTJ7LS1icy1ndXR0ZXIteDowLjVyZW19Lmctc20tMiwuZ3ktc20tMnstLWJzLWd1dHRlci15OjAuNXJlbX0uZy1zbS0zLC5neC1zbS0zey0tYnMtZ3V0dGVyLXg6MXJlbX0uZy1zbS0zLC5neS1zbS0zey0tYnMtZ3V0dGVyLXk6MXJlbX0uZy1zbS00LC5neC1zbS00ey0tYnMtZ3V0dGVyLXg6MS41cmVtfS5nLXNtLTQsLmd5LXNtLTR7LS1icy1ndXR0ZXIteToxLjVyZW19Lmctc20tNSwuZ3gtc20tNXstLWJzLWd1dHRlci14OjNyZW19Lmctc20tNSwuZ3ktc20tNXstLWJzLWd1dHRlci15OjNyZW19fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29sLW1ke2ZsZXg6MSAwIDAlfS5yb3ctY29scy1tZC1hdXRvPip7ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvfS5yb3ctY29scy1tZC0xPip7ZmxleDowIDAgYXV0bzt3aWR0aDoxMDAlfS5yb3ctY29scy1tZC0yPip7ZmxleDowIDAgYXV0bzt3aWR0aDo1MCV9LnJvdy1jb2xzLW1kLTM+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzMzMlfS5yb3ctY29scy1tZC00Pip7ZmxleDowIDAgYXV0bzt3aWR0aDoyNSV9LnJvdy1jb2xzLW1kLTU+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjIwJX0ucm93LWNvbHMtbWQtNj4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjY2NyV9LmNvbC1tZC1hdXRve2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30uY29sLW1kLTF7ZmxleDowIDAgYXV0bzt3aWR0aDo4LjMzMzMzMzMzJX0uY29sLW1kLTJ7ZmxleDowIDAgYXV0bzt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC1tZC0ze2ZsZXg6MCAwIGF1dG87d2lkdGg6MjUlfS5jb2wtbWQtNHtmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLW1kLTV7ZmxleDowIDAgYXV0bzt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC1tZC02e2ZsZXg6MCAwIGF1dG87d2lkdGg6NTAlfS5jb2wtbWQtN3tmbGV4OjAgMCBhdXRvO3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLW1kLTh7ZmxleDowIDAgYXV0bzt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC1tZC05e2ZsZXg6MCAwIGF1dG87d2lkdGg6NzUlfS5jb2wtbWQtMTB7ZmxleDowIDAgYXV0bzt3aWR0aDo4My4zMzMzMzMzMyV9LmNvbC1tZC0xMXtmbGV4OjAgMCBhdXRvO3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLW1kLTEye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTAwJX0ub2Zmc2V0LW1kLTB7bWFyZ2luLWxlZnQ6MH0ub2Zmc2V0LW1kLTF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMyV9Lm9mZnNldC1tZC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0ub2Zmc2V0LW1kLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQtbWQtNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMyV9Lm9mZnNldC1tZC01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0ub2Zmc2V0LW1kLTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtbWQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMyV9Lm9mZnNldC1tZC04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0ub2Zmc2V0LW1kLTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQtbWQtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMlfS5vZmZzZXQtbWQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5nLW1kLTAsLmd4LW1kLTB7LS1icy1ndXR0ZXIteDowfS5nLW1kLTAsLmd5LW1kLTB7LS1icy1ndXR0ZXIteTowfS5nLW1kLTEsLmd4LW1kLTF7LS1icy1ndXR0ZXIteDowLjI1cmVtfS5nLW1kLTEsLmd5LW1kLTF7LS1icy1ndXR0ZXIteTowLjI1cmVtfS5nLW1kLTIsLmd4LW1kLTJ7LS1icy1ndXR0ZXIteDowLjVyZW19LmctbWQtMiwuZ3ktbWQtMnstLWJzLWd1dHRlci15OjAuNXJlbX0uZy1tZC0zLC5neC1tZC0zey0tYnMtZ3V0dGVyLXg6MXJlbX0uZy1tZC0zLC5neS1tZC0zey0tYnMtZ3V0dGVyLXk6MXJlbX0uZy1tZC00LC5neC1tZC00ey0tYnMtZ3V0dGVyLXg6MS41cmVtfS5nLW1kLTQsLmd5LW1kLTR7LS1icy1ndXR0ZXIteToxLjVyZW19LmctbWQtNSwuZ3gtbWQtNXstLWJzLWd1dHRlci14OjNyZW19LmctbWQtNSwuZ3ktbWQtNXstLWJzLWd1dHRlci15OjNyZW19fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuY29sLWxne2ZsZXg6MSAwIDAlfS5yb3ctY29scy1sZy1hdXRvPip7ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvfS5yb3ctY29scy1sZy0xPip7ZmxleDowIDAgYXV0bzt3aWR0aDoxMDAlfS5yb3ctY29scy1sZy0yPip7ZmxleDowIDAgYXV0bzt3aWR0aDo1MCV9LnJvdy1jb2xzLWxnLTM+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzMzMlfS5yb3ctY29scy1sZy00Pip7ZmxleDowIDAgYXV0bzt3aWR0aDoyNSV9LnJvdy1jb2xzLWxnLTU+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjIwJX0ucm93LWNvbHMtbGctNj4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjY2NyV9LmNvbC1sZy1hdXRve2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30uY29sLWxnLTF7ZmxleDowIDAgYXV0bzt3aWR0aDo4LjMzMzMzMzMzJX0uY29sLWxnLTJ7ZmxleDowIDAgYXV0bzt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC1sZy0ze2ZsZXg6MCAwIGF1dG87d2lkdGg6MjUlfS5jb2wtbGctNHtmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLWxnLTV7ZmxleDowIDAgYXV0bzt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC1sZy02e2ZsZXg6MCAwIGF1dG87d2lkdGg6NTAlfS5jb2wtbGctN3tmbGV4OjAgMCBhdXRvO3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLWxnLTh7ZmxleDowIDAgYXV0bzt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC1sZy05e2ZsZXg6MCAwIGF1dG87d2lkdGg6NzUlfS5jb2wtbGctMTB7ZmxleDowIDAgYXV0bzt3aWR0aDo4My4zMzMzMzMzMyV9LmNvbC1sZy0xMXtmbGV4OjAgMCBhdXRvO3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLWxnLTEye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTAwJX0ub2Zmc2V0LWxnLTB7bWFyZ2luLWxlZnQ6MH0ub2Zmc2V0LWxnLTF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMyV9Lm9mZnNldC1sZy0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0ub2Zmc2V0LWxnLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQtbGctNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMyV9Lm9mZnNldC1sZy01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0ub2Zmc2V0LWxnLTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtbGctN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMyV9Lm9mZnNldC1sZy04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0ub2Zmc2V0LWxnLTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQtbGctMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMlfS5vZmZzZXQtbGctMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5nLWxnLTAsLmd4LWxnLTB7LS1icy1ndXR0ZXIteDowfS5nLWxnLTAsLmd5LWxnLTB7LS1icy1ndXR0ZXIteTowfS5nLWxnLTEsLmd4LWxnLTF7LS1icy1ndXR0ZXIteDowLjI1cmVtfS5nLWxnLTEsLmd5LWxnLTF7LS1icy1ndXR0ZXIteTowLjI1cmVtfS5nLWxnLTIsLmd4LWxnLTJ7LS1icy1ndXR0ZXIteDowLjVyZW19LmctbGctMiwuZ3ktbGctMnstLWJzLWd1dHRlci15OjAuNXJlbX0uZy1sZy0zLC5neC1sZy0zey0tYnMtZ3V0dGVyLXg6MXJlbX0uZy1sZy0zLC5neS1sZy0zey0tYnMtZ3V0dGVyLXk6MXJlbX0uZy1sZy00LC5neC1sZy00ey0tYnMtZ3V0dGVyLXg6MS41cmVtfS5nLWxnLTQsLmd5LWxnLTR7LS1icy1ndXR0ZXIteToxLjVyZW19LmctbGctNSwuZ3gtbGctNXstLWJzLWd1dHRlci14OjNyZW19LmctbGctNSwuZ3ktbGctNXstLWJzLWd1dHRlci15OjNyZW19fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNvbC14bHtmbGV4OjEgMCAwJX0ucm93LWNvbHMteGwtYXV0bz4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30ucm93LWNvbHMteGwtMT4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MTAwJX0ucm93LWNvbHMteGwtMj4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6NTAlfS5yb3ctY29scy14bC0zPip7ZmxleDowIDAgYXV0bzt3aWR0aDozMy4zMzMzMzMzMzMzJX0ucm93LWNvbHMteGwtND4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6MjUlfS5yb3ctY29scy14bC01Pip7ZmxleDowIDAgYXV0bzt3aWR0aDoyMCV9LnJvdy1jb2xzLXhsLTY+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjE2LjY2NjY2NjY2NjclfS5jb2wteGwtYXV0b3tmbGV4OjAgMCBhdXRvO3dpZHRoOmF1dG99LmNvbC14bC0xe2ZsZXg6MCAwIGF1dG87d2lkdGg6OC4zMzMzMzMzMyV9LmNvbC14bC0ye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjclfS5jb2wteGwtM3tmbGV4OjAgMCBhdXRvO3dpZHRoOjI1JX0uY29sLXhsLTR7ZmxleDowIDAgYXV0bzt3aWR0aDozMy4zMzMzMzMzMyV9LmNvbC14bC01e2ZsZXg6MCAwIGF1dG87d2lkdGg6NDEuNjY2NjY2NjclfS5jb2wteGwtNntmbGV4OjAgMCBhdXRvO3dpZHRoOjUwJX0uY29sLXhsLTd7ZmxleDowIDAgYXV0bzt3aWR0aDo1OC4zMzMzMzMzMyV9LmNvbC14bC04e2ZsZXg6MCAwIGF1dG87d2lkdGg6NjYuNjY2NjY2NjclfS5jb2wteGwtOXtmbGV4OjAgMCBhdXRvO3dpZHRoOjc1JX0uY29sLXhsLTEwe2ZsZXg6MCAwIGF1dG87d2lkdGg6ODMuMzMzMzMzMzMlfS5jb2wteGwtMTF7ZmxleDowIDAgYXV0bzt3aWR0aDo5MS42NjY2NjY2NyV9LmNvbC14bC0xMntmbGV4OjAgMCBhdXRvO3dpZHRoOjEwMCV9Lm9mZnNldC14bC0we21hcmdpbi1sZWZ0OjB9Lm9mZnNldC14bC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5vZmZzZXQteGwtMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NyV9Lm9mZnNldC14bC0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LXhsLTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMlfS5vZmZzZXQteGwtNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NyV9Lm9mZnNldC14bC02e21hcmdpbi1sZWZ0OjUwJX0ub2Zmc2V0LXhsLTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMlfS5vZmZzZXQteGwtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NyV9Lm9mZnNldC14bC05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LXhsLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0ub2Zmc2V0LXhsLTExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY3JX0uZy14bC0wLC5neC14bC0wey0tYnMtZ3V0dGVyLXg6MH0uZy14bC0wLC5neS14bC0wey0tYnMtZ3V0dGVyLXk6MH0uZy14bC0xLC5neC14bC0xey0tYnMtZ3V0dGVyLXg6MC4yNXJlbX0uZy14bC0xLC5neS14bC0xey0tYnMtZ3V0dGVyLXk6MC4yNXJlbX0uZy14bC0yLC5neC14bC0yey0tYnMtZ3V0dGVyLXg6MC41cmVtfS5nLXhsLTIsLmd5LXhsLTJ7LS1icy1ndXR0ZXIteTowLjVyZW19LmcteGwtMywuZ3gteGwtM3stLWJzLWd1dHRlci14OjFyZW19LmcteGwtMywuZ3kteGwtM3stLWJzLWd1dHRlci15OjFyZW19LmcteGwtNCwuZ3gteGwtNHstLWJzLWd1dHRlci14OjEuNXJlbX0uZy14bC00LC5neS14bC00ey0tYnMtZ3V0dGVyLXk6MS41cmVtfS5nLXhsLTUsLmd4LXhsLTV7LS1icy1ndXR0ZXIteDozcmVtfS5nLXhsLTUsLmd5LXhsLTV7LS1icy1ndXR0ZXIteTozcmVtfX1AbWVkaWEgKG1pbi13aWR0aDoxNDAwcHgpey5jb2wteHhse2ZsZXg6MSAwIDAlfS5yb3ctY29scy14eGwtYXV0bz4qe2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0b30ucm93LWNvbHMteHhsLTE+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjEwMCV9LnJvdy1jb2xzLXh4bC0yPip7ZmxleDowIDAgYXV0bzt3aWR0aDo1MCV9LnJvdy1jb2xzLXh4bC0zPip7ZmxleDowIDAgYXV0bzt3aWR0aDozMy4zMzMzMzMzMzMzJX0ucm93LWNvbHMteHhsLTQ+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjI1JX0ucm93LWNvbHMteHhsLTU+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjIwJX0ucm93LWNvbHMteHhsLTY+KntmbGV4OjAgMCBhdXRvO3dpZHRoOjE2LjY2NjY2NjY2NjclfS5jb2wteHhsLWF1dG97ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvfS5jb2wteHhsLTF7ZmxleDowIDAgYXV0bzt3aWR0aDo4LjMzMzMzMzMzJX0uY29sLXh4bC0ye2ZsZXg6MCAwIGF1dG87d2lkdGg6MTYuNjY2NjY2NjclfS5jb2wteHhsLTN7ZmxleDowIDAgYXV0bzt3aWR0aDoyNSV9LmNvbC14eGwtNHtmbGV4OjAgMCBhdXRvO3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLXh4bC01e2ZsZXg6MCAwIGF1dG87d2lkdGg6NDEuNjY2NjY2NjclfS5jb2wteHhsLTZ7ZmxleDowIDAgYXV0bzt3aWR0aDo1MCV9LmNvbC14eGwtN3tmbGV4OjAgMCBhdXRvO3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLXh4bC04e2ZsZXg6MCAwIGF1dG87d2lkdGg6NjYuNjY2NjY2NjclfS5jb2wteHhsLTl7ZmxleDowIDAgYXV0bzt3aWR0aDo3NSV9LmNvbC14eGwtMTB7ZmxleDowIDAgYXV0bzt3aWR0aDo4My4zMzMzMzMzMyV9LmNvbC14eGwtMTF7ZmxleDowIDAgYXV0bzt3aWR0aDo5MS42NjY2NjY2NyV9LmNvbC14eGwtMTJ7ZmxleDowIDAgYXV0bzt3aWR0aDoxMDAlfS5vZmZzZXQteHhsLTB7bWFyZ2luLWxlZnQ6MH0ub2Zmc2V0LXh4bC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5vZmZzZXQteHhsLTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY2NjclfS5vZmZzZXQteHhsLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQteHhsLTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMlfS5vZmZzZXQteHhsLTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY2NjclfS5vZmZzZXQteHhsLTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQteHhsLTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMlfS5vZmZzZXQteHhsLTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY2NjclfS5vZmZzZXQteHhsLTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQteHhsLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0ub2Zmc2V0LXh4bC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NjY2NyV9LmcteHhsLTAsLmd4LXh4bC0wey0tYnMtZ3V0dGVyLXg6MH0uZy14eGwtMCwuZ3kteHhsLTB7LS1icy1ndXR0ZXIteTowfS5nLXh4bC0xLC5neC14eGwtMXstLWJzLWd1dHRlci14OjAuMjVyZW19LmcteHhsLTEsLmd5LXh4bC0xey0tYnMtZ3V0dGVyLXk6MC4yNXJlbX0uZy14eGwtMiwuZ3gteHhsLTJ7LS1icy1ndXR0ZXIteDowLjVyZW19LmcteHhsLTIsLmd5LXh4bC0yey0tYnMtZ3V0dGVyLXk6MC41cmVtfS5nLXh4bC0zLC5neC14eGwtM3stLWJzLWd1dHRlci14OjFyZW19LmcteHhsLTMsLmd5LXh4bC0zey0tYnMtZ3V0dGVyLXk6MXJlbX0uZy14eGwtNCwuZ3gteHhsLTR7LS1icy1ndXR0ZXIteDoxLjVyZW19LmcteHhsLTQsLmd5LXh4bC00ey0tYnMtZ3V0dGVyLXk6MS41cmVtfS5nLXh4bC01LC5neC14eGwtNXstLWJzLWd1dHRlci14OjNyZW19LmcteHhsLTUsLmd5LXh4bC01ey0tYnMtZ3V0dGVyLXk6M3JlbX19LnRhYmxley0tYnMtdGFibGUtY29sb3I6dmFyKC0tYnMtYm9keS1jb2xvcik7LS1icy10YWJsZS1iZzp0cmFuc3BhcmVudDstLWJzLXRhYmxlLWJvcmRlci1jb2xvcjp2YXIoLS1icy1ib3JkZXItY29sb3IpOy0tYnMtdGFibGUtYWNjZW50LWJnOnRyYW5zcGFyZW50Oy0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjp2YXIoLS1icy1ib2R5LWNvbG9yKTstLWJzLXRhYmxlLXN0cmlwZWQtYmc6cmdiYSgwLCAwLCAwLCAwLjA1KTstLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjp2YXIoLS1icy1ib2R5LWNvbG9yKTstLWJzLXRhYmxlLWFjdGl2ZS1iZzpyZ2JhKDAsIDAsIDAsIDAuMSk7LS1icy10YWJsZS1ob3Zlci1jb2xvcjp2YXIoLS1icy1ib2R5LWNvbG9yKTstLWJzLXRhYmxlLWhvdmVyLWJnOnJnYmEoMCwgMCwgMCwgMC4wNzUpO3dpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbToxcmVtO2NvbG9yOnZhcigtLWJzLXRhYmxlLWNvbG9yKTt2ZXJ0aWNhbC1hbGlnbjp0b3A7Ym9yZGVyLWNvbG9yOnZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcil9LnRhYmxlPjpub3QoY2FwdGlvbik+Kj4qe3BhZGRpbmc6LjVyZW0gLjVyZW07YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy10YWJsZS1iZyk7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHg7Ym94LXNoYWRvdzppbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tYnMtdGFibGUtYWNjZW50LWJnKX0udGFibGU+dGJvZHl7dmVydGljYWwtYWxpZ246aW5oZXJpdH0udGFibGU+dGhlYWR7dmVydGljYWwtYWxpZ246Ym90dG9tfS50YWJsZS1ncm91cC1kaXZpZGVye2JvcmRlci10b3A6MnB4IHNvbGlkIGN1cnJlbnRjb2xvcn0uY2FwdGlvbi10b3B7Y2FwdGlvbi1zaWRlOnRvcH0udGFibGUtc20+Om5vdChjYXB0aW9uKT4qPip7cGFkZGluZzouMjVyZW0gLjI1cmVtfS50YWJsZS1ib3JkZXJlZD46bm90KGNhcHRpb24pPip7Ym9yZGVyLXdpZHRoOjFweCAwfS50YWJsZS1ib3JkZXJlZD46bm90KGNhcHRpb24pPio+Kntib3JkZXItd2lkdGg6MCAxcHh9LnRhYmxlLWJvcmRlcmxlc3M+Om5vdChjYXB0aW9uKT4qPip7Ym9yZGVyLWJvdHRvbS13aWR0aDowfS50YWJsZS1ib3JkZXJsZXNzPjpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLXdpZHRoOjB9LnRhYmxlLXN0cmlwZWQ+dGJvZHk+dHI6bnRoLW9mLXR5cGUob2RkKT4qey0tYnMtdGFibGUtYWNjZW50LWJnOnZhcigtLWJzLXRhYmxlLXN0cmlwZWQtYmcpO2NvbG9yOnZhcigtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3IpfS50YWJsZS1zdHJpcGVkLWNvbHVtbnM+Om5vdChjYXB0aW9uKT50cj46bnRoLWNoaWxkKDJuKXstLWJzLXRhYmxlLWFjY2VudC1iZzp2YXIoLS1icy10YWJsZS1zdHJpcGVkLWJnKTtjb2xvcjp2YXIoLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yKX0udGFibGUtYWN0aXZley0tYnMtdGFibGUtYWNjZW50LWJnOnZhcigtLWJzLXRhYmxlLWFjdGl2ZS1iZyk7Y29sb3I6dmFyKC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yKX0udGFibGUtaG92ZXI+dGJvZHk+dHI6aG92ZXI+KnstLWJzLXRhYmxlLWFjY2VudC1iZzp2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7Y29sb3I6dmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpfS50YWJsZS1wcmltYXJ5ey0tYnMtdGFibGUtY29sb3I6IzAwMDstLWJzLXRhYmxlLWJnOiNjZmUyZmY7LS1icy10YWJsZS1ib3JkZXItY29sb3I6I2JhY2JlNjstLWJzLXRhYmxlLXN0cmlwZWQtYmc6I2M1ZDdmMjstLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDstLWJzLXRhYmxlLWFjdGl2ZS1iZzojYmFjYmU2Oy0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiMwMDA7LS1icy10YWJsZS1ob3Zlci1iZzojYmZkMWVjOy0tYnMtdGFibGUtaG92ZXItY29sb3I6IzAwMDtjb2xvcjp2YXIoLS1icy10YWJsZS1jb2xvcik7Ym9yZGVyLWNvbG9yOnZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcil9LnRhYmxlLXNlY29uZGFyeXstLWJzLXRhYmxlLWNvbG9yOiMwMDA7LS1icy10YWJsZS1iZzojZTJlM2U1Oy0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiNjYmNjY2U7LS1icy10YWJsZS1zdHJpcGVkLWJnOiNkN2Q4ZGE7LS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiMwMDA7LS1icy10YWJsZS1hY3RpdmUtYmc6I2NiY2NjZTstLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjojMDAwOy0tYnMtdGFibGUtaG92ZXItYmc6I2QxZDJkNDstLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Y29sb3I6dmFyKC0tYnMtdGFibGUtY29sb3IpO2JvcmRlci1jb2xvcjp2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpfS50YWJsZS1zdWNjZXNzey0tYnMtdGFibGUtY29sb3I6IzAwMDstLWJzLXRhYmxlLWJnOiNkMWU3ZGQ7LS1icy10YWJsZS1ib3JkZXItY29sb3I6I2JjZDBjNzstLWJzLXRhYmxlLXN0cmlwZWQtYmc6I2M3ZGJkMjstLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDstLWJzLXRhYmxlLWFjdGl2ZS1iZzojYmNkMGM3Oy0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiMwMDA7LS1icy10YWJsZS1ob3Zlci1iZzojYzFkNmNjOy0tYnMtdGFibGUtaG92ZXItY29sb3I6IzAwMDtjb2xvcjp2YXIoLS1icy10YWJsZS1jb2xvcik7Ym9yZGVyLWNvbG9yOnZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcil9LnRhYmxlLWluZm97LS1icy10YWJsZS1jb2xvcjojMDAwOy0tYnMtdGFibGUtYmc6I2NmZjRmYzstLWJzLXRhYmxlLWJvcmRlci1jb2xvcjojYmFkY2UzOy0tYnMtdGFibGUtc3RyaXBlZC1iZzojYzVlOGVmOy0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMDAwOy0tYnMtdGFibGUtYWN0aXZlLWJnOiNiYWRjZTM7LS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDstLWJzLXRhYmxlLWhvdmVyLWJnOiNiZmUyZTk7LS1icy10YWJsZS1ob3Zlci1jb2xvcjojMDAwO2NvbG9yOnZhcigtLWJzLXRhYmxlLWNvbG9yKTtib3JkZXItY29sb3I6dmFyKC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yKX0udGFibGUtd2FybmluZ3stLWJzLXRhYmxlLWNvbG9yOiMwMDA7LS1icy10YWJsZS1iZzojZmZmM2NkOy0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiNlNmRiYjk7LS1icy10YWJsZS1zdHJpcGVkLWJnOiNmMmU3YzM7LS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiMwMDA7LS1icy10YWJsZS1hY3RpdmUtYmc6I2U2ZGJiOTstLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjojMDAwOy0tYnMtdGFibGUtaG92ZXItYmc6I2VjZTFiZTstLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Y29sb3I6dmFyKC0tYnMtdGFibGUtY29sb3IpO2JvcmRlci1jb2xvcjp2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpfS50YWJsZS1kYW5nZXJ7LS1icy10YWJsZS1jb2xvcjojMDAwOy0tYnMtdGFibGUtYmc6I2Y4ZDdkYTstLWJzLXRhYmxlLWJvcmRlci1jb2xvcjojZGZjMmM0Oy0tYnMtdGFibGUtc3RyaXBlZC1iZzojZWNjY2NmOy0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMDAwOy0tYnMtdGFibGUtYWN0aXZlLWJnOiNkZmMyYzQ7LS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDstLWJzLXRhYmxlLWhvdmVyLWJnOiNlNWM3Y2E7LS1icy10YWJsZS1ob3Zlci1jb2xvcjojMDAwO2NvbG9yOnZhcigtLWJzLXRhYmxlLWNvbG9yKTtib3JkZXItY29sb3I6dmFyKC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yKX0udGFibGUtbGlnaHR7LS1icy10YWJsZS1jb2xvcjojMDAwOy0tYnMtdGFibGUtYmc6I2Y4ZjlmYTstLWJzLXRhYmxlLWJvcmRlci1jb2xvcjojZGZlMGUxOy0tYnMtdGFibGUtc3RyaXBlZC1iZzojZWNlZGVlOy0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMDAwOy0tYnMtdGFibGUtYWN0aXZlLWJnOiNkZmUwZTE7LS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDstLWJzLXRhYmxlLWhvdmVyLWJnOiNlNWU2ZTc7LS1icy10YWJsZS1ob3Zlci1jb2xvcjojMDAwO2NvbG9yOnZhcigtLWJzLXRhYmxlLWNvbG9yKTtib3JkZXItY29sb3I6dmFyKC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yKX0udGFibGUtZGFya3stLWJzLXRhYmxlLWNvbG9yOiNmZmY7LS1icy10YWJsZS1iZzojMjEyNTI5Oy0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiMzNzNiM2U7LS1icy10YWJsZS1zdHJpcGVkLWJnOiMyYzMwMzQ7LS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiNmZmY7LS1icy10YWJsZS1hY3RpdmUtYmc6IzM3M2IzZTstLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjojZmZmOy0tYnMtdGFibGUtaG92ZXItYmc6IzMyMzUzOTstLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiNmZmY7Y29sb3I6dmFyKC0tYnMtdGFibGUtY29sb3IpO2JvcmRlci1jb2xvcjp2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpfS50YWJsZS1yZXNwb25zaXZle292ZXJmbG93LXg6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUtc217b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUtbWR7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUtbGd7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey50YWJsZS1yZXNwb25zaXZlLXhse292ZXJmbG93LXg6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH19QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsudGFibGUtcmVzcG9uc2l2ZS14eGx7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofX0uZm9ybS1sYWJlbHttYXJnaW4tYm90dG9tOi41cmVtfS5jb2wtZm9ybS1sYWJlbHtwYWRkaW5nLXRvcDpjYWxjKC4zNzVyZW0gKyAxcHgpO3BhZGRpbmctYm90dG9tOmNhbGMoLjM3NXJlbSArIDFweCk7bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OjEuNX0uY29sLWZvcm0tbGFiZWwtbGd7cGFkZGluZy10b3A6Y2FsYyguNXJlbSArIDFweCk7cGFkZGluZy1ib3R0b206Y2FsYyguNXJlbSArIDFweCk7Zm9udC1zaXplOjEuMjVyZW19LmNvbC1mb3JtLWxhYmVsLXNte3BhZGRpbmctdG9wOmNhbGMoLjI1cmVtICsgMXB4KTtwYWRkaW5nLWJvdHRvbTpjYWxjKC4yNXJlbSArIDFweCk7Zm9udC1zaXplOi44NzVyZW19LmZvcm0tdGV4dHttYXJnaW4tdG9wOi4yNXJlbTtmb250LXNpemU6Ljg3NWVtO2NvbG9yOiM2Yzc1N2R9LmZvcm0tY29udHJvbHtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7cGFkZGluZzouMzc1cmVtIC43NXJlbTtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6MXB4IHNvbGlkICNjZWQ0ZGE7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JvcmRlci1yYWRpdXM6LjM3NXJlbTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZm9ybS1jb250cm9se3RyYW5zaXRpb246bm9uZX19LmZvcm0tY29udHJvbFt0eXBlPWZpbGVde292ZXJmbG93OmhpZGRlbn0uZm9ybS1jb250cm9sW3R5cGU9ZmlsZV06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pe2N1cnNvcjpwb2ludGVyfS5mb3JtLWNvbnRyb2w6Zm9jdXN7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiM4NmI3ZmU7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuMjUpfS5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZXtoZWlnaHQ6MS41ZW19LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNmM3NTdkO29wYWNpdHk6MX0uZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcntjb2xvcjojNmM3NTdkO29wYWNpdHk6MX0uZm9ybS1jb250cm9sOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6I2U5ZWNlZjtvcGFjaXR5OjF9LmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257cGFkZGluZzouMzc1cmVtIC43NXJlbTttYXJnaW46LS4zNzVyZW0gLS43NXJlbTstd2Via2l0LW1hcmdpbi1lbmQ6Ljc1cmVtO21hcmdpbi1pbmxpbmUtZW5kOi43NXJlbTtjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2U5ZWNlZjtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1jb2xvcjppbmhlcml0O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MDtib3JkZXItaW5saW5lLWVuZC13aWR0aDoxcHg7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXR9LmZvcm0tY29udHJvbDo6ZmlsZS1zZWxlY3Rvci1idXR0b257cGFkZGluZzouMzc1cmVtIC43NXJlbTttYXJnaW46LS4zNzVyZW0gLS43NXJlbTstd2Via2l0LW1hcmdpbi1lbmQ6Ljc1cmVtO21hcmdpbi1pbmxpbmUtZW5kOi43NXJlbTtjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2U5ZWNlZjtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1jb2xvcjppbmhlcml0O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MDtib3JkZXItaW5saW5lLWVuZC13aWR0aDoxcHg7Ym9yZGVyLXJhZGl1czowO3RyYW5zaXRpb246Y29sb3IgLjE1cyBlYXNlLWluLW91dCxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uey13ZWJraXQtdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX0uZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnt0cmFuc2l0aW9uOm5vbmV9fS5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNkZGUwZTN9LmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2JhY2tncm91bmQtY29sb3I6I2RkZTBlM30uZm9ybS1jb250cm9sLXBsYWludGV4dHtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7cGFkZGluZzouMzc1cmVtIDA7bWFyZ2luLWJvdHRvbTowO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOnNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci13aWR0aDoxcHggMH0uZm9ybS1jb250cm9sLXBsYWludGV4dDpmb2N1c3tvdXRsaW5lOjB9LmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnLC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbXtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LmZvcm0tY29udHJvbC1zbXttaW4taGVpZ2h0OmNhbGMoMS41ZW0gKyAuNXJlbSArIDJweCk7cGFkZGluZzouMjVyZW0gLjVyZW07Zm9udC1zaXplOi44NzVyZW07Ym9yZGVyLXJhZGl1czouMjVyZW19LmZvcm0tY29udHJvbC1zbTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257cGFkZGluZzouMjVyZW0gLjVyZW07bWFyZ2luOi0uMjVyZW0gLS41cmVtOy13ZWJraXQtbWFyZ2luLWVuZDouNXJlbTttYXJnaW4taW5saW5lLWVuZDouNXJlbX0uZm9ybS1jb250cm9sLXNtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntwYWRkaW5nOi4yNXJlbSAuNXJlbTttYXJnaW46LS4yNXJlbSAtLjVyZW07LXdlYmtpdC1tYXJnaW4tZW5kOi41cmVtO21hcmdpbi1pbmxpbmUtZW5kOi41cmVtfS5mb3JtLWNvbnRyb2wtbGd7bWluLWhlaWdodDpjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7cGFkZGluZzouNXJlbSAxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2JvcmRlci1yYWRpdXM6LjVyZW19LmZvcm0tY29udHJvbC1sZzo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257cGFkZGluZzouNXJlbSAxcmVtO21hcmdpbjotLjVyZW0gLTFyZW07LXdlYmtpdC1tYXJnaW4tZW5kOjFyZW07bWFyZ2luLWlubGluZS1lbmQ6MXJlbX0uZm9ybS1jb250cm9sLWxnOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntwYWRkaW5nOi41cmVtIDFyZW07bWFyZ2luOi0uNXJlbSAtMXJlbTstd2Via2l0LW1hcmdpbi1lbmQ6MXJlbTttYXJnaW4taW5saW5lLWVuZDoxcmVtfXRleHRhcmVhLmZvcm0tY29udHJvbHttaW4taGVpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0gKyAycHgpfXRleHRhcmVhLmZvcm0tY29udHJvbC1zbXttaW4taGVpZ2h0OmNhbGMoMS41ZW0gKyAuNXJlbSArIDJweCl9dGV4dGFyZWEuZm9ybS1jb250cm9sLWxne21pbi1oZWlnaHQ6Y2FsYygxLjVlbSArIDFyZW0gKyAycHgpfS5mb3JtLWNvbnRyb2wtY29sb3J7d2lkdGg6M3JlbTtoZWlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7cGFkZGluZzouMzc1cmVtfS5mb3JtLWNvbnRyb2wtY29sb3I6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pe2N1cnNvcjpwb2ludGVyfS5mb3JtLWNvbnRyb2wtY29sb3I6Oi1tb3otY29sb3Itc3dhdGNoe2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4zNzVyZW19LmZvcm0tY29udHJvbC1jb2xvcjo6LXdlYmtpdC1jb2xvci1zd2F0Y2h7Ym9yZGVyLXJhZGl1czouMzc1cmVtfS5mb3JtLWNvbnRyb2wtY29sb3IuZm9ybS1jb250cm9sLXNte2hlaWdodDpjYWxjKDEuNWVtICsgLjVyZW0gKyAycHgpfS5mb3JtLWNvbnRyb2wtY29sb3IuZm9ybS1jb250cm9sLWxne2hlaWdodDpjYWxjKDEuNWVtICsgMXJlbSArIDJweCl9LmZvcm0tc2VsZWN0e2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtwYWRkaW5nOi4zNzVyZW0gMi4yNXJlbSAuMzc1cmVtIC43NXJlbTstbW96LXBhZGRpbmctc3RhcnQ6Y2FsYygwLjc1cmVtIC0gM3B4KTtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLyUzZSUzYy9zdmclM2UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAuNzVyZW0gY2VudGVyO2JhY2tncm91bmQtc2l6ZToxNnB4IDEycHg7Ym9yZGVyOjFweCBzb2xpZCAjY2VkNGRhO2JvcmRlci1yYWRpdXM6LjM3NXJlbTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZvcm0tc2VsZWN0e3RyYW5zaXRpb246bm9uZX19LmZvcm0tc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjojODZiN2ZlO291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KX0uZm9ybS1zZWxlY3RbbXVsdGlwbGVdLC5mb3JtLXNlbGVjdFtzaXplXTpub3QoW3NpemU9IjEiXSl7cGFkZGluZy1yaWdodDouNzVyZW07YmFja2dyb3VuZC1pbWFnZTpub25lfS5mb3JtLXNlbGVjdDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWZ9LmZvcm0tc2VsZWN0Oi1tb3otZm9jdXNyaW5ne2NvbG9yOnRyYW5zcGFyZW50O3RleHQtc2hhZG93OjAgMCAwICMyMTI1Mjl9LmZvcm0tc2VsZWN0LXNte3BhZGRpbmctdG9wOi4yNXJlbTtwYWRkaW5nLWJvdHRvbTouMjVyZW07cGFkZGluZy1sZWZ0Oi41cmVtO2ZvbnQtc2l6ZTouODc1cmVtO2JvcmRlci1yYWRpdXM6LjI1cmVtfS5mb3JtLXNlbGVjdC1sZ3twYWRkaW5nLXRvcDouNXJlbTtwYWRkaW5nLWJvdHRvbTouNXJlbTtwYWRkaW5nLWxlZnQ6MXJlbTtmb250LXNpemU6MS4yNXJlbTtib3JkZXItcmFkaXVzOi41cmVtfS5mb3JtLWNoZWNre2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDoxLjVyZW07cGFkZGluZy1sZWZ0OjEuNWVtO21hcmdpbi1ib3R0b206LjEyNXJlbX0uZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dHtmbG9hdDpsZWZ0O21hcmdpbi1sZWZ0Oi0xLjVlbX0uZm9ybS1jaGVjay1yZXZlcnNle3BhZGRpbmctcmlnaHQ6MS41ZW07cGFkZGluZy1sZWZ0OjA7dGV4dC1hbGlnbjpyaWdodH0uZm9ybS1jaGVjay1yZXZlcnNlIC5mb3JtLWNoZWNrLWlucHV0e2Zsb2F0OnJpZ2h0O21hcmdpbi1yaWdodDotMS41ZW07bWFyZ2luLWxlZnQ6MH0uZm9ybS1jaGVjay1pbnB1dHt3aWR0aDoxZW07aGVpZ2h0OjFlbTttYXJnaW4tdG9wOi4yNWVtO3ZlcnRpY2FsLWFsaWduOnRvcDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO2JhY2tncm91bmQtc2l6ZTpjb250YWluO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMjUpOy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDpleGFjdDtjb2xvci1hZGp1c3Q6ZXhhY3Q7cHJpbnQtY29sb3ItYWRqdXN0OmV4YWN0fS5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hde2JvcmRlci1yYWRpdXM6LjI1ZW19LmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb117Ym9yZGVyLXJhZGl1czo1MCV9LmZvcm0tY2hlY2staW5wdXQ6YWN0aXZle2ZpbHRlcjpicmlnaHRuZXNzKDkwJSl9LmZvcm0tY2hlY2staW5wdXQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM4NmI3ZmU7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuMjUpfS5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWR7YmFja2dyb3VuZC1jb2xvcjojMGQ2ZWZkO2JvcmRlci1jb2xvcjojMGQ2ZWZkfS5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWRbdHlwZT1jaGVja2JveF17YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLyUzZSUzYy9zdmclM2UiKX0uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9cmFkaW9de2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPScyJyBmaWxsPSclMjNmZmYnLyUzZSUzYy9zdmclM2UiKX0uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRle2JhY2tncm91bmQtY29sb3I6IzBkNmVmZDtib3JkZXItY29sb3I6IzBkNmVmZDtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvJTNlJTNjL3N2ZyUzZSIpfS5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmU7ZmlsdGVyOm5vbmU7b3BhY2l0eTouNX0uZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZH4uZm9ybS1jaGVjay1sYWJlbCwuZm9ybS1jaGVjay1pbnB1dFtkaXNhYmxlZF1+LmZvcm0tY2hlY2stbGFiZWx7Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNX0uZm9ybS1zd2l0Y2h7cGFkZGluZy1sZWZ0OjIuNWVtfS5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dHt3aWR0aDoyZW07bWFyZ2luLWxlZnQ6LTIuNWVtO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSdyZ2JhJTI4MCwgMCwgMCwgMC4yNSUyOScvJTNlJTNjL3N2ZyUzZSIpO2JhY2tncm91bmQtcG9zaXRpb246bGVmdCBjZW50ZXI7Ym9yZGVyLXJhZGl1czoyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXR9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0e3RyYW5zaXRpb246bm9uZX19LmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0OmZvY3Vze2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSclMjM4NmI3ZmUnLyUzZSUzYy9zdmclM2UiKX0uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IGNlbnRlcjtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlIil9LmZvcm0tc3dpdGNoLmZvcm0tY2hlY2stcmV2ZXJzZXtwYWRkaW5nLXJpZ2h0OjIuNWVtO3BhZGRpbmctbGVmdDowfS5mb3JtLXN3aXRjaC5mb3JtLWNoZWNrLXJldmVyc2UgLmZvcm0tY2hlY2staW5wdXR7bWFyZ2luLXJpZ2h0Oi0yLjVlbTttYXJnaW4tbGVmdDowfS5mb3JtLWNoZWNrLWlubGluZXtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tcmlnaHQ6MXJlbX0uYnRuLWNoZWNre3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwLDAsMCwwKTtwb2ludGVyLWV2ZW50czpub25lfS5idG4tY2hlY2s6ZGlzYWJsZWQrLmJ0biwuYnRuLWNoZWNrW2Rpc2FibGVkXSsuYnRue3BvaW50ZXItZXZlbnRzOm5vbmU7ZmlsdGVyOm5vbmU7b3BhY2l0eTouNjV9LmZvcm0tcmFuZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6MS41cmVtO3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX0uZm9ybS1yYW5nZTpmb2N1c3tvdXRsaW5lOjB9LmZvcm0tcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1ie2JveC1zaGFkb3c6MCAwIDAgMXB4ICNmZmYsMCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuMjUpfS5mb3JtLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRodW1ie2JveC1zaGFkb3c6MCAwIDAgMXB4ICNmZmYsMCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuMjUpfS5mb3JtLXJhbmdlOjotbW96LWZvY3VzLW91dGVye2JvcmRlcjowfS5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYnt3aWR0aDoxcmVtO2hlaWdodDoxcmVtO21hcmdpbi10b3A6LS4yNXJlbTtiYWNrZ3JvdW5kLWNvbG9yOiMwZDZlZmQ7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxcmVtOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX19LmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNiNmQ0ZmV9LmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre3dpZHRoOjEwMCU7aGVpZ2h0Oi41cmVtO2NvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6I2RlZTJlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxcmVtfS5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1ie3dpZHRoOjFyZW07aGVpZ2h0OjFyZW07YmFja2dyb3VuZC1jb2xvcjojMGQ2ZWZkO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MXJlbTstbW96LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iey1tb3otdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX19LmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6I2I2ZDRmZX0uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10cmFja3t3aWR0aDoxMDAlO2hlaWdodDouNXJlbTtjb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNkZWUyZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MXJlbX0uZm9ybS1yYW5nZTpkaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5mb3JtLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiNhZGI1YmR9LmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojYWRiNWJkfS5mb3JtLWZsb2F0aW5ne3Bvc2l0aW9uOnJlbGF0aXZlfS5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2wsLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbC1wbGFpbnRleHQsLmZvcm0tZmxvYXRpbmc+LmZvcm0tc2VsZWN0e2hlaWdodDpjYWxjKDMuNXJlbSArIDJweCk7bGluZS1oZWlnaHQ6MS4yNX0uZm9ybS1mbG9hdGluZz5sYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwYWRkaW5nOjFyZW0gLjc1cmVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDt0cmFuc2Zvcm0tb3JpZ2luOjAgMDt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXR9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmZvcm0tZmxvYXRpbmc+bGFiZWx7dHJhbnNpdGlvbjpub25lfX0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0e3BhZGRpbmc6MXJlbSAuNzVyZW19LmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbC1wbGFpbnRleHQ6Oi1tb3otcGxhY2Vob2xkZXIsLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjp0cmFuc3BhcmVudH0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLXBsYWludGV4dDo6cGxhY2Vob2xkZXIsLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXJ7Y29sb3I6dHJhbnNwYXJlbnR9LmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbC1wbGFpbnRleHQ6bm90KDotbW96LXBsYWNlaG9sZGVyLXNob3duKSwuZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sOm5vdCg6LW1vei1wbGFjZWhvbGRlci1zaG93bil7cGFkZGluZy10b3A6MS42MjVyZW07cGFkZGluZy1ib3R0b206LjYyNXJlbX0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLXBsYWludGV4dDpmb2N1cywuZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLXBsYWludGV4dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSwuZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sOmZvY3VzLC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bil7cGFkZGluZy10b3A6MS42MjVyZW07cGFkZGluZy1ib3R0b206LjYyNXJlbX0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLXBsYWludGV4dDotd2Via2l0LWF1dG9maWxsLC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbHtwYWRkaW5nLXRvcDoxLjYyNXJlbTtwYWRkaW5nLWJvdHRvbTouNjI1cmVtfS5mb3JtLWZsb2F0aW5nPi5mb3JtLXNlbGVjdHtwYWRkaW5nLXRvcDoxLjYyNXJlbTtwYWRkaW5nLWJvdHRvbTouNjI1cmVtfS5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDotbW96LXBsYWNlaG9sZGVyLXNob3duKX5sYWJlbHtvcGFjaXR5Oi42NTt0cmFuc2Zvcm06c2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pfS5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0fmxhYmVsLC5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6Zm9jdXN+bGFiZWwsLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKX5sYWJlbCwuZm9ybS1mbG9hdGluZz4uZm9ybS1zZWxlY3R+bGFiZWx7b3BhY2l0eTouNjU7dHJhbnNmb3JtOnNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKX0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGx+bGFiZWx7b3BhY2l0eTouNjU7dHJhbnNmb3JtOnNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKX0uZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLXBsYWludGV4dH5sYWJlbHtib3JkZXItd2lkdGg6MXB4IDB9LmlucHV0LWdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpzdHJldGNoO3dpZHRoOjEwMCV9LmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWZsb2F0aW5nLC5pbnB1dC1ncm91cD4uZm9ybS1zZWxlY3R7cG9zaXRpb246cmVsYXRpdmU7ZmxleDoxIDEgYXV0bzt3aWR0aDoxJTttaW4td2lkdGg6MH0uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpmb2N1cywuaW5wdXQtZ3JvdXA+LmZvcm0tZmxvYXRpbmc6Zm9jdXMtd2l0aGluLC5pbnB1dC1ncm91cD4uZm9ybS1zZWxlY3Q6Zm9jdXN7ei1pbmRleDo1fS5pbnB1dC1ncm91cCAuYnRue3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0uaW5wdXQtZ3JvdXAgLmJ0bjpmb2N1c3t6LWluZGV4OjV9LmlucHV0LWdyb3VwLXRleHR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOi4zNzVyZW0gLjc1cmVtO2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzIxMjUyOTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2dyb3VuZC1jb2xvcjojZTllY2VmO2JvcmRlcjoxcHggc29saWQgI2NlZDRkYTtib3JkZXItcmFkaXVzOi4zNzVyZW19LmlucHV0LWdyb3VwLWxnPi5idG4sLmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwLWxnPi5mb3JtLXNlbGVjdCwuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLXRleHR7cGFkZGluZzouNXJlbSAxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2JvcmRlci1yYWRpdXM6LjVyZW19LmlucHV0LWdyb3VwLXNtPi5idG4sLmlucHV0LWdyb3VwLXNtPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwLXNtPi5mb3JtLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLXRleHR7cGFkZGluZzouMjVyZW0gLjVyZW07Zm9udC1zaXplOi44NzVyZW07Ym9yZGVyLXJhZGl1czouMjVyZW19LmlucHV0LWdyb3VwLWxnPi5mb3JtLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmZvcm0tc2VsZWN0e3BhZGRpbmctcmlnaHQ6M3JlbX0uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbik+LmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuKzMpLC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT4uZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPi5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCk+LmZvcm0tc2VsZWN0LC5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKT46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuKzQpLC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj4uZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuKzMpPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uPi5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4rMyk+LmZvcm0tc2VsZWN0LC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbj46bnRoLWxhc3QtY2hpbGQobiszKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXA+Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC52YWxpZC10b29sdGlwKTpub3QoLnZhbGlkLWZlZWRiYWNrKTpub3QoLmludmFsaWQtdG9vbHRpcCk6bm90KC5pbnZhbGlkLWZlZWRiYWNrKXttYXJnaW4tbGVmdDotMXB4O2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LmlucHV0LWdyb3VwPi5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpPi5mb3JtLXNlbGVjdHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS52YWxpZC1mZWVkYmFja3tkaXNwbGF5Om5vbmU7d2lkdGg6MTAwJTttYXJnaW4tdG9wOi4yNXJlbTtmb250LXNpemU6Ljg3NWVtO2NvbG9yOiMxOTg3NTR9LnZhbGlkLXRvb2x0aXB7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7ei1pbmRleDo1O2Rpc3BsYXk6bm9uZTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOi4yNXJlbSAuNXJlbTttYXJnaW4tdG9wOi4xcmVtO2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1LDEzNSw4NCwuOSk7Ym9yZGVyLXJhZGl1czouMzc1cmVtfS5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssLmlzLXZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgOnZhbGlkfi52YWxpZC10b29sdGlwe2Rpc3BsYXk6YmxvY2t9LmZvcm0tY29udHJvbC5pcy12YWxpZCwud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlke2JvcmRlci1jb2xvcjojMTk4NzU0O3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMTk4NzU0JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjYWxjKC4zNzVlbSArIC4xODc1cmVtKSBjZW50ZXI7YmFja2dyb3VuZC1zaXplOmNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSl9LmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3Vze2JvcmRlci1jb2xvcjojMTk4NzU0O2JveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjUsMTM1LDg0LC4yNSl9Lndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZHtwYWRkaW5nLXJpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0pO2JhY2tncm91bmQtcG9zaXRpb246dG9wIGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIHJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pfS5mb3JtLXNlbGVjdC5pcy12YWxpZCwud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWR7Ym9yZGVyLWNvbG9yOiMxOTg3NTR9LmZvcm0tc2VsZWN0LmlzLXZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSwuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9IjEiXSwud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT0iMSJde3BhZGRpbmctcmlnaHQ6NC4xMjVyZW07YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvJTNlJTNjL3N2ZyUzZSIpLHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZSIpO2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgLjc1cmVtIGNlbnRlcixjZW50ZXIgcmlnaHQgMi4yNXJlbTtiYWNrZ3JvdW5kLXNpemU6MTZweCAxMnB4LGNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSl9LmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpmb2N1c3tib3JkZXItY29sb3I6IzE5ODc1NDtib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDI1LDEzNSw4NCwuMjUpfS5mb3JtLWNvbnRyb2wtY29sb3IuaXMtdmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbC1jb2xvcjp2YWxpZHt3aWR0aDpjYWxjKDNyZW0gKyBjYWxjKDEuNWVtICsgLjc1cmVtKSl9LmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR7Ym9yZGVyLWNvbG9yOiMxOTg3NTR9LmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCwud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpjaGVja2Vke2JhY2tncm91bmQtY29sb3I6IzE5ODc1NH0uZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDI1LDEzNSw4NCwuMjUpfS5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVse2NvbG9yOiMxOTg3NTR9LmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0fi52YWxpZC1mZWVkYmFja3ttYXJnaW4tbGVmdDouNWVtfS5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOm5vdCg6Zm9jdXMpLmlzLXZhbGlkLC5pbnB1dC1ncm91cD4uZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikuaXMtdmFsaWQsLmlucHV0LWdyb3VwPi5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKS5pcy12YWxpZCwud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpub3QoOmZvY3VzKTp2YWxpZCwud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXA+LmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pOnZhbGlkLC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cD4uZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyk6dmFsaWR7ei1pbmRleDozfS5pbnZhbGlkLWZlZWRiYWNre2Rpc3BsYXk6bm9uZTt3aWR0aDoxMDAlO21hcmdpbi10b3A6LjI1cmVtO2ZvbnQtc2l6ZTouODc1ZW07Y29sb3I6I2RjMzU0NX0uaW52YWxpZC10b29sdGlwe3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO3otaW5kZXg6NTtkaXNwbGF5Om5vbmU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzouMjVyZW0gLjVyZW07bWFyZ2luLXRvcDouMXJlbTtmb250LXNpemU6Ljg3NXJlbTtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgyMjAsNTMsNjksLjkpO2JvcmRlci1yYWRpdXM6LjM3NXJlbX0uaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuaXMtaW52YWxpZH4uaW52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uZm9ybS1jb250cm9sLmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlke2JvcmRlci1jb2xvcjojZGMzNTQ1O3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjYWxjKC4zNzVlbSArIC4xODc1cmVtKSBjZW50ZXI7YmFja2dyb3VuZC1zaXplOmNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSl9LmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1c3tib3JkZXItY29sb3I6I2RjMzU0NTtib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDIyMCw1Myw2OSwuMjUpfS53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlke3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7YmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSkgcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSl9LmZvcm0tc2VsZWN0LmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWR7Ym9yZGVyLWNvbG9yOiNkYzM1NDV9LmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdChbbXVsdGlwbGVdKVtzaXplPSIxIl0sLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkOm5vdChbbXVsdGlwbGVdKVtzaXplPSIxIl17cGFkZGluZy1yaWdodDo0LjEyNXJlbTtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlIiksdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGMzNTQ1JyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlIik7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAuNzVyZW0gY2VudGVyLGNlbnRlciByaWdodCAyLjI1cmVtO2JhY2tncm91bmQtc2l6ZToxNnB4IDEycHgsY2FsYyguNzVlbSArIC4zNzVyZW0pIGNhbGMoLjc1ZW0gKyAuMzc1cmVtKX0uZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZDpmb2N1c3tib3JkZXItY29sb3I6I2RjMzU0NTtib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDIyMCw1Myw2OSwuMjUpfS5mb3JtLWNvbnRyb2wtY29sb3IuaXMtaW52YWxpZCwud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sLWNvbG9yOmludmFsaWR7d2lkdGg6Y2FsYygzcmVtICsgY2FsYygxLjVlbSArIC43NXJlbSkpfS5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZHtib3JkZXItY29sb3I6I2RjMzU0NX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZDpjaGVja2Vke2JhY2tncm91bmQtY29sb3I6I2RjMzU0NX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyMjAsNTMsNjksLjI1KX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWR+LmZvcm0tY2hlY2stbGFiZWx7Y29sb3I6I2RjMzU0NX0uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXR+LmludmFsaWQtZmVlZGJhY2t7bWFyZ2luLWxlZnQ6LjVlbX0uaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpub3QoOmZvY3VzKS5pcy1pbnZhbGlkLC5pbnB1dC1ncm91cD4uZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikuaXMtaW52YWxpZCwuaW5wdXQtZ3JvdXA+LmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyk6aW52YWxpZCwud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXA+LmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pOmludmFsaWQsLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwPi5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKTppbnZhbGlke3otaW5kZXg6NH0uYnRuey0tYnMtYnRuLXBhZGRpbmcteDowLjc1cmVtOy0tYnMtYnRuLXBhZGRpbmcteTowLjM3NXJlbTstLWJzLWJ0bi1mb250LWZhbWlseTogOy0tYnMtYnRuLWZvbnQtc2l6ZToxcmVtOy0tYnMtYnRuLWZvbnQtd2VpZ2h0OjQwMDstLWJzLWJ0bi1saW5lLWhlaWdodDoxLjU7LS1icy1idG4tY29sb3I6IzIxMjUyOTstLWJzLWJ0bi1iZzp0cmFuc3BhcmVudDstLWJzLWJ0bi1ib3JkZXItd2lkdGg6MXB4Oy0tYnMtYnRuLWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDstLWJzLWJ0bi1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDstLWJzLWJ0bi1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7LS1icy1idG4tZGlzYWJsZWQtb3BhY2l0eTowLjY1Oy0tYnMtYnRuLWZvY3VzLWJveC1zaGFkb3c6MCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiKSwgLjUpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6dmFyKC0tYnMtYnRuLXBhZGRpbmcteSkgdmFyKC0tYnMtYnRuLXBhZGRpbmcteCk7Zm9udC1mYW1pbHk6dmFyKC0tYnMtYnRuLWZvbnQtZmFtaWx5KTtmb250LXNpemU6dmFyKC0tYnMtYnRuLWZvbnQtc2l6ZSk7Zm9udC13ZWlnaHQ6dmFyKC0tYnMtYnRuLWZvbnQtd2VpZ2h0KTtsaW5lLWhlaWdodDp2YXIoLS1icy1idG4tbGluZS1oZWlnaHQpO2NvbG9yOnZhcigtLWJzLWJ0bi1jb2xvcik7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlO2N1cnNvcjpwb2ludGVyOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtib3JkZXI6dmFyKC0tYnMtYnRuLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtYnRuLWJvcmRlci1jb2xvcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1idG4tYm9yZGVyLXJhZGl1cyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1idG4tYmcpO3RyYW5zaXRpb246Y29sb3IgLjE1cyBlYXNlLWluLW91dCxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5idG57dHJhbnNpdGlvbjpub25lfX0uYnRuOmhvdmVye2NvbG9yOnZhcigtLWJzLWJ0bi1ob3Zlci1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1idG4taG92ZXItYmcpO2JvcmRlci1jb2xvcjp2YXIoLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yKX0uYnRuLWNoZWNrKy5idG46aG92ZXJ7Y29sb3I6dmFyKC0tYnMtYnRuLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLWJ0bi1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLWJzLWJ0bi1ib3JkZXItY29sb3IpfS5idG46Zm9jdXMtdmlzaWJsZXtjb2xvcjp2YXIoLS1icy1idG4taG92ZXItY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtYnRuLWhvdmVyLWJnKTtib3JkZXItY29sb3I6dmFyKC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcik7b3V0bGluZTowO2JveC1zaGFkb3c6dmFyKC0tYnMtYnRuLWZvY3VzLWJveC1zaGFkb3cpfS5idG4tY2hlY2s6Zm9jdXMtdmlzaWJsZSsuYnRue2JvcmRlci1jb2xvcjp2YXIoLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtvdXRsaW5lOjA7Ym94LXNoYWRvdzp2YXIoLS1icy1idG4tZm9jdXMtYm94LXNoYWRvdyl9LmJ0bi1jaGVjazpjaGVja2VkKy5idG4sLmJ0bi5hY3RpdmUsLmJ0bi5zaG93LC5idG46Zmlyc3QtY2hpbGQ6YWN0aXZlLDpub3QoLmJ0bi1jaGVjaykrLmJ0bjphY3RpdmV7Y29sb3I6dmFyKC0tYnMtYnRuLWFjdGl2ZS1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1idG4tYWN0aXZlLWJnKTtib3JkZXItY29sb3I6dmFyKC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpfS5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuOmZvY3VzLXZpc2libGUsLmJ0bi5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwuYnRuLnNob3c6Zm9jdXMtdmlzaWJsZSwuYnRuOmZpcnN0LWNoaWxkOmFjdGl2ZTpmb2N1cy12aXNpYmxlLDpub3QoLmJ0bi1jaGVjaykrLmJ0bjphY3RpdmU6Zm9jdXMtdmlzaWJsZXtib3gtc2hhZG93OnZhcigtLWJzLWJ0bi1mb2N1cy1ib3gtc2hhZG93KX0uYnRuLmRpc2FibGVkLC5idG46ZGlzYWJsZWQsZmllbGRzZXQ6ZGlzYWJsZWQgLmJ0bntjb2xvcjp2YXIoLS1icy1idG4tZGlzYWJsZWQtY29sb3IpO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1idG4tZGlzYWJsZWQtYmcpO2JvcmRlci1jb2xvcjp2YXIoLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtvcGFjaXR5OnZhcigtLWJzLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KX0uYnRuLXByaW1hcnl7LS1icy1idG4tY29sb3I6I2ZmZjstLWJzLWJ0bi1iZzojMGQ2ZWZkOy0tYnMtYnRuLWJvcmRlci1jb2xvcjojMGQ2ZWZkOy0tYnMtYnRuLWhvdmVyLWNvbG9yOiNmZmY7LS1icy1idG4taG92ZXItYmc6IzBiNWVkNzstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IzBhNThjYTstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjQ5LDEzMiwyNTM7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiMwYTU4Y2E7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMGE1M2JlOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmY7LS1icy1idG4tZGlzYWJsZWQtYmc6IzBkNmVmZDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzBkNmVmZH0uYnRuLXNlY29uZGFyeXstLWJzLWJ0bi1jb2xvcjojZmZmOy0tYnMtYnRuLWJnOiM2Yzc1N2Q7LS1icy1idG4tYm9yZGVyLWNvbG9yOiM2Yzc1N2Q7LS1icy1idG4taG92ZXItY29sb3I6I2ZmZjstLWJzLWJ0bi1ob3Zlci1iZzojNWM2MzZhOy0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjojNTY1ZTY0Oy0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6MTMwLDEzOCwxNDU7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiM1NjVlNjQ7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojNTE1ODVlOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmY7LS1icy1idG4tZGlzYWJsZWQtYmc6IzZjNzU3ZDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzZjNzU3ZH0uYnRuLXN1Y2Nlc3N7LS1icy1idG4tY29sb3I6I2ZmZjstLWJzLWJ0bi1iZzojMTk4NzU0Oy0tYnMtYnRuLWJvcmRlci1jb2xvcjojMTk4NzU0Oy0tYnMtYnRuLWhvdmVyLWNvbG9yOiNmZmY7LS1icy1idG4taG92ZXItYmc6IzE1NzM0NzstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IzE0NmM0MzstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjYwLDE1MywxMTA7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiMxNDZjNDM7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMTM2NTNmOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmY7LS1icy1idG4tZGlzYWJsZWQtYmc6IzE5ODc1NDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzE5ODc1NH0uYnRuLWluZm97LS1icy1idG4tY29sb3I6IzAwMDstLWJzLWJ0bi1iZzojMGRjYWYwOy0tYnMtYnRuLWJvcmRlci1jb2xvcjojMGRjYWYwOy0tYnMtYnRuLWhvdmVyLWNvbG9yOiMwMDA7LS1icy1idG4taG92ZXItYmc6IzMxZDJmMjstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IzI1Y2ZmMjstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjExLDE3MiwyMDQ7LS1icy1idG4tYWN0aXZlLWNvbG9yOiMwMDA7LS1icy1idG4tYWN0aXZlLWJnOiMzZGQ1ZjM7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMjVjZmYyOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiMwMDA7LS1icy1idG4tZGlzYWJsZWQtYmc6IzBkY2FmMDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzBkY2FmMH0uYnRuLXdhcm5pbmd7LS1icy1idG4tY29sb3I6IzAwMDstLWJzLWJ0bi1iZzojZmZjMTA3Oy0tYnMtYnRuLWJvcmRlci1jb2xvcjojZmZjMTA3Oy0tYnMtYnRuLWhvdmVyLWNvbG9yOiMwMDA7LS1icy1idG4taG92ZXItYmc6I2ZmY2EyYzstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6I2ZmYzcyMDstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjIxNywxNjQsNjstLWJzLWJ0bi1hY3RpdmUtY29sb3I6IzAwMDstLWJzLWJ0bi1hY3RpdmUtYmc6I2ZmY2QzOTstLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiNmZmM3MjA7LS1icy1idG4tYWN0aXZlLXNoYWRvdzppbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7LS1icy1idG4tZGlzYWJsZWQtY29sb3I6IzAwMDstLWJzLWJ0bi1kaXNhYmxlZC1iZzojZmZjMTA3Oy0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjojZmZjMTA3fS5idG4tZGFuZ2Vyey0tYnMtYnRuLWNvbG9yOiNmZmY7LS1icy1idG4tYmc6I2RjMzU0NTstLWJzLWJ0bi1ib3JkZXItY29sb3I6I2RjMzU0NTstLWJzLWJ0bi1ob3Zlci1jb2xvcjojZmZmOy0tYnMtYnRuLWhvdmVyLWJnOiNiYjJkM2I7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiNiMDJhMzc7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoyMjUsODMsOTc7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiNiMDJhMzc7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojYTUyODM0Oy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmY7LS1icy1idG4tZGlzYWJsZWQtYmc6I2RjMzU0NTstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6I2RjMzU0NX0uYnRuLWxpZ2h0ey0tYnMtYnRuLWNvbG9yOiMwMDA7LS1icy1idG4tYmc6I2Y4ZjlmYTstLWJzLWJ0bi1ib3JkZXItY29sb3I6I2Y4ZjlmYTstLWJzLWJ0bi1ob3Zlci1jb2xvcjojMDAwOy0tYnMtYnRuLWhvdmVyLWJnOiNkM2Q0ZDU7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiNjNmM3Yzg7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoyMTEsMjEyLDIxMzstLWJzLWJ0bi1hY3RpdmUtY29sb3I6IzAwMDstLWJzLWJ0bi1hY3RpdmUtYmc6I2M2YzdjODstLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiNiYWJiYmM7LS1icy1idG4tYWN0aXZlLXNoYWRvdzppbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7LS1icy1idG4tZGlzYWJsZWQtY29sb3I6IzAwMDstLWJzLWJ0bi1kaXNhYmxlZC1iZzojZjhmOWZhOy0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjojZjhmOWZhfS5idG4tZGFya3stLWJzLWJ0bi1jb2xvcjojZmZmOy0tYnMtYnRuLWJnOiMyMTI1Mjk7LS1icy1idG4tYm9yZGVyLWNvbG9yOiMyMTI1Mjk7LS1icy1idG4taG92ZXItY29sb3I6I2ZmZjstLWJzLWJ0bi1ob3Zlci1iZzojNDI0NjQ5Oy0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjojMzczYjNlOy0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6NjYsNzAsNzM7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiM0ZDUxNTQ7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMzczYjNlOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmY7LS1icy1idG4tZGlzYWJsZWQtYmc6IzIxMjUyOTstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzIxMjUyOX0uYnRuLW91dGxpbmUtcHJpbWFyeXstLWJzLWJ0bi1jb2xvcjojMGQ2ZWZkOy0tYnMtYnRuLWJvcmRlci1jb2xvcjojMGQ2ZWZkOy0tYnMtYnRuLWhvdmVyLWNvbG9yOiNmZmY7LS1icy1idG4taG92ZXItYmc6IzBkNmVmZDstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IzBkNmVmZDstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjEzLDExMCwyNTM7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiMwZDZlZmQ7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMGQ2ZWZkOy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiMwZDZlZmQ7LS1icy1idG4tZGlzYWJsZWQtYmc6dHJhbnNwYXJlbnQ7LS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiMwZDZlZmQ7LS1icy1ncmFkaWVudDpub25lfS5idG4tb3V0bGluZS1zZWNvbmRhcnl7LS1icy1idG4tY29sb3I6IzZjNzU3ZDstLWJzLWJ0bi1ib3JkZXItY29sb3I6IzZjNzU3ZDstLWJzLWJ0bi1ob3Zlci1jb2xvcjojZmZmOy0tYnMtYnRuLWhvdmVyLWJnOiM2Yzc1N2Q7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiM2Yzc1N2Q7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoxMDgsMTE3LDEyNTstLWJzLWJ0bi1hY3RpdmUtY29sb3I6I2ZmZjstLWJzLWJ0bi1hY3RpdmUtYmc6IzZjNzU3ZDstLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiM2Yzc1N2Q7LS1icy1idG4tYWN0aXZlLXNoYWRvdzppbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7LS1icy1idG4tZGlzYWJsZWQtY29sb3I6IzZjNzU3ZDstLWJzLWJ0bi1kaXNhYmxlZC1iZzp0cmFuc3BhcmVudDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzZjNzU3ZDstLWJzLWdyYWRpZW50Om5vbmV9LmJ0bi1vdXRsaW5lLXN1Y2Nlc3N7LS1icy1idG4tY29sb3I6IzE5ODc1NDstLWJzLWJ0bi1ib3JkZXItY29sb3I6IzE5ODc1NDstLWJzLWJ0bi1ob3Zlci1jb2xvcjojZmZmOy0tYnMtYnRuLWhvdmVyLWJnOiMxOTg3NTQ7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiMxOTg3NTQ7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoyNSwxMzUsODQ7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiMxOTg3NTQ7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojMTk4NzU0Oy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiMxOTg3NTQ7LS1icy1idG4tZGlzYWJsZWQtYmc6dHJhbnNwYXJlbnQ7LS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiMxOTg3NTQ7LS1icy1ncmFkaWVudDpub25lfS5idG4tb3V0bGluZS1pbmZvey0tYnMtYnRuLWNvbG9yOiMwZGNhZjA7LS1icy1idG4tYm9yZGVyLWNvbG9yOiMwZGNhZjA7LS1icy1idG4taG92ZXItY29sb3I6IzAwMDstLWJzLWJ0bi1ob3Zlci1iZzojMGRjYWYwOy0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjojMGRjYWYwOy0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6MTMsMjAyLDI0MDstLWJzLWJ0bi1hY3RpdmUtY29sb3I6IzAwMDstLWJzLWJ0bi1hY3RpdmUtYmc6IzBkY2FmMDstLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiMwZGNhZjA7LS1icy1idG4tYWN0aXZlLXNoYWRvdzppbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7LS1icy1idG4tZGlzYWJsZWQtY29sb3I6IzBkY2FmMDstLWJzLWJ0bi1kaXNhYmxlZC1iZzp0cmFuc3BhcmVudDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IzBkY2FmMDstLWJzLWdyYWRpZW50Om5vbmV9LmJ0bi1vdXRsaW5lLXdhcm5pbmd7LS1icy1idG4tY29sb3I6I2ZmYzEwNzstLWJzLWJ0bi1ib3JkZXItY29sb3I6I2ZmYzEwNzstLWJzLWJ0bi1ob3Zlci1jb2xvcjojMDAwOy0tYnMtYnRuLWhvdmVyLWJnOiNmZmMxMDc7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiNmZmMxMDc7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoyNTUsMTkzLDc7LS1icy1idG4tYWN0aXZlLWNvbG9yOiMwMDA7LS1icy1idG4tYWN0aXZlLWJnOiNmZmMxMDc7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojZmZjMTA3Oy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNmZmMxMDc7LS1icy1idG4tZGlzYWJsZWQtYmc6dHJhbnNwYXJlbnQ7LS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiNmZmMxMDc7LS1icy1ncmFkaWVudDpub25lfS5idG4tb3V0bGluZS1kYW5nZXJ7LS1icy1idG4tY29sb3I6I2RjMzU0NTstLWJzLWJ0bi1ib3JkZXItY29sb3I6I2RjMzU0NTstLWJzLWJ0bi1ob3Zlci1jb2xvcjojZmZmOy0tYnMtYnRuLWhvdmVyLWJnOiNkYzM1NDU7LS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiNkYzM1NDU7LS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjoyMjAsNTMsNjk7LS1icy1idG4tYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1idG4tYWN0aXZlLWJnOiNkYzM1NDU7LS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjojZGMzNTQ1Oy0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiNkYzM1NDU7LS1icy1idG4tZGlzYWJsZWQtYmc6dHJhbnNwYXJlbnQ7LS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiNkYzM1NDU7LS1icy1ncmFkaWVudDpub25lfS5idG4tb3V0bGluZS1saWdodHstLWJzLWJ0bi1jb2xvcjojZjhmOWZhOy0tYnMtYnRuLWJvcmRlci1jb2xvcjojZjhmOWZhOy0tYnMtYnRuLWhvdmVyLWNvbG9yOiMwMDA7LS1icy1idG4taG92ZXItYmc6I2Y4ZjlmYTstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6I2Y4ZjlmYTstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjI0OCwyNDksMjUwOy0tYnMtYnRuLWFjdGl2ZS1jb2xvcjojMDAwOy0tYnMtYnRuLWFjdGl2ZS1iZzojZjhmOWZhOy0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6I2Y4ZjlmYTstLWJzLWJ0bi1hY3RpdmUtc2hhZG93Omluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTstLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjojZjhmOWZhOy0tYnMtYnRuLWRpc2FibGVkLWJnOnRyYW5zcGFyZW50Oy0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjojZjhmOWZhOy0tYnMtZ3JhZGllbnQ6bm9uZX0uYnRuLW91dGxpbmUtZGFya3stLWJzLWJ0bi1jb2xvcjojMjEyNTI5Oy0tYnMtYnRuLWJvcmRlci1jb2xvcjojMjEyNTI5Oy0tYnMtYnRuLWhvdmVyLWNvbG9yOiNmZmY7LS1icy1idG4taG92ZXItYmc6IzIxMjUyOTstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IzIxMjUyOTstLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOjMzLDM3LDQxOy0tYnMtYnRuLWFjdGl2ZS1jb2xvcjojZmZmOy0tYnMtYnRuLWFjdGl2ZS1iZzojMjEyNTI5Oy0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IzIxMjUyOTstLWJzLWJ0bi1hY3RpdmUtc2hhZG93Omluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTstLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjojMjEyNTI5Oy0tYnMtYnRuLWRpc2FibGVkLWJnOnRyYW5zcGFyZW50Oy0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjojMjEyNTI5Oy0tYnMtZ3JhZGllbnQ6bm9uZX0uYnRuLWxpbmt7LS1icy1idG4tZm9udC13ZWlnaHQ6NDAwOy0tYnMtYnRuLWNvbG9yOnZhcigtLWJzLWxpbmstY29sb3IpOy0tYnMtYnRuLWJnOnRyYW5zcGFyZW50Oy0tYnMtYnRuLWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDstLWJzLWJ0bi1ob3Zlci1jb2xvcjp2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yKTstLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7LS1icy1idG4tYWN0aXZlLWNvbG9yOnZhcigtLWJzLWxpbmstaG92ZXItY29sb3IpOy0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7LS1icy1idG4tZGlzYWJsZWQtY29sb3I6IzZjNzU3ZDstLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7LS1icy1idG4tYm94LXNoYWRvdzpub25lOy0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6NDksMTMyLDI1Mzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5idG4tbGluazpmb2N1cy12aXNpYmxle2NvbG9yOnZhcigtLWJzLWJ0bi1jb2xvcil9LmJ0bi1saW5rOmhvdmVye2NvbG9yOnZhcigtLWJzLWJ0bi1ob3Zlci1jb2xvcil9LmJ0bi1ncm91cC1sZz4uYnRuLC5idG4tbGd7LS1icy1idG4tcGFkZGluZy15OjAuNXJlbTstLWJzLWJ0bi1wYWRkaW5nLXg6MXJlbTstLWJzLWJ0bi1mb250LXNpemU6MS4yNXJlbTstLWJzLWJ0bi1ib3JkZXItcmFkaXVzOjAuNXJlbX0uYnRuLWdyb3VwLXNtPi5idG4sLmJ0bi1zbXstLWJzLWJ0bi1wYWRkaW5nLXk6MC4yNXJlbTstLWJzLWJ0bi1wYWRkaW5nLXg6MC41cmVtOy0tYnMtYnRuLWZvbnQtc2l6ZTowLjg3NXJlbTstLWJzLWJ0bi1ib3JkZXItcmFkaXVzOjAuMjVyZW19LmZhZGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5mYWRle3RyYW5zaXRpb246bm9uZX19LmZhZGU6bm90KC5zaG93KXtvcGFjaXR5OjB9LmNvbGxhcHNlOm5vdCguc2hvdyl7ZGlzcGxheTpub25lfS5jb2xsYXBzaW5ne2hlaWdodDowO292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGVhc2V9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbGxhcHNpbmd7dHJhbnNpdGlvbjpub25lfX0uY29sbGFwc2luZy5jb2xsYXBzZS1ob3Jpem9udGFse3dpZHRoOjA7aGVpZ2h0OmF1dG87dHJhbnNpdGlvbjp3aWR0aCAuMzVzIGVhc2V9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbGxhcHNpbmcuY29sbGFwc2UtaG9yaXpvbnRhbHt0cmFuc2l0aW9uOm5vbmV9fS5kcm9wZG93biwuZHJvcGRvd24tY2VudGVyLC5kcm9wZW5kLC5kcm9wc3RhcnQsLmRyb3B1cCwuZHJvcHVwLWNlbnRlcntwb3NpdGlvbjpyZWxhdGl2ZX0uZHJvcGRvd24tdG9nZ2xle3doaXRlLXNwYWNlOm5vd3JhcH0uZHJvcGRvd24tdG9nZ2xlOjphZnRlcntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDouMjU1ZW07dmVydGljYWwtYWxpZ246LjI1NWVtO2NvbnRlbnQ6IiI7Ym9yZGVyLXRvcDouM2VtIHNvbGlkO2JvcmRlci1yaWdodDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206MDtib3JkZXItbGVmdDouM2VtIHNvbGlkIHRyYW5zcGFyZW50fS5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3Bkb3duLW1lbnV7LS1icy1kcm9wZG93bi16aW5kZXg6MTAwMDstLWJzLWRyb3Bkb3duLW1pbi13aWR0aDoxMHJlbTstLWJzLWRyb3Bkb3duLXBhZGRpbmcteDowOy0tYnMtZHJvcGRvd24tcGFkZGluZy15OjAuNXJlbTstLWJzLWRyb3Bkb3duLXNwYWNlcjowLjEyNXJlbTstLWJzLWRyb3Bkb3duLWZvbnQtc2l6ZToxcmVtOy0tYnMtZHJvcGRvd24tY29sb3I6IzIxMjUyOTstLWJzLWRyb3Bkb3duLWJnOiNmZmY7LS1icy1kcm9wZG93bi1ib3JkZXItY29sb3I6dmFyKC0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTstLWJzLWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6MC4zNzVyZW07LS1icy1kcm9wZG93bi1ib3JkZXItd2lkdGg6MXB4Oy0tYnMtZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czpjYWxjKDAuMzc1cmVtIC0gMXB4KTstLWJzLWRyb3Bkb3duLWRpdmlkZXItYmc6dmFyKC0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTstLWJzLWRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6MC41cmVtOy0tYnMtZHJvcGRvd24tYm94LXNoYWRvdzowIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7LS1icy1kcm9wZG93bi1saW5rLWNvbG9yOiMyMTI1Mjk7LS1icy1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiMxZTIxMjU7LS1icy1kcm9wZG93bi1saW5rLWhvdmVyLWJnOiNlOWVjZWY7LS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjojZmZmOy0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtYmc6IzBkNmVmZDstLWJzLWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6I2FkYjViZDstLWJzLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OjFyZW07LS1icy1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTowLjI1cmVtOy0tYnMtZHJvcGRvd24taGVhZGVyLWNvbG9yOiM2Yzc1N2Q7LS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OjFyZW07LS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OjAuNXJlbTtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OnZhcigtLWJzLWRyb3Bkb3duLXppbmRleCk7ZGlzcGxheTpub25lO21pbi13aWR0aDp2YXIoLS1icy1kcm9wZG93bi1taW4td2lkdGgpO3BhZGRpbmc6dmFyKC0tYnMtZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS1icy1kcm9wZG93bi1wYWRkaW5nLXgpO21hcmdpbjowO2ZvbnQtc2l6ZTp2YXIoLS1icy1kcm9wZG93bi1mb250LXNpemUpO2NvbG9yOnZhcigtLWJzLWRyb3Bkb3duLWNvbG9yKTt0ZXh0LWFsaWduOmxlZnQ7bGlzdC1zdHlsZTpub25lO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtZHJvcGRvd24tYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6dmFyKC0tYnMtZHJvcGRvd24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1kcm9wZG93bi1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtZHJvcGRvd24tYm9yZGVyLXJhZGl1cyl9LmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJde3RvcDoxMDAlO2xlZnQ6MDttYXJnaW4tdG9wOnZhcigtLWJzLWRyb3Bkb3duLXNwYWNlcil9LmRyb3Bkb3duLW1lbnUtc3RhcnR7LS1icy1wb3NpdGlvbjpzdGFydH0uZHJvcGRvd24tbWVudS1zdGFydFtkYXRhLWJzLXBvcHBlcl17cmlnaHQ6YXV0bztsZWZ0OjB9LmRyb3Bkb3duLW1lbnUtZW5key0tYnMtcG9zaXRpb246ZW5kfS5kcm9wZG93bi1tZW51LWVuZFtkYXRhLWJzLXBvcHBlcl17cmlnaHQ6MDtsZWZ0OmF1dG99QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5kcm9wZG93bi1tZW51LXNtLXN0YXJ0ey0tYnMtcG9zaXRpb246c3RhcnR9LmRyb3Bkb3duLW1lbnUtc20tc3RhcnRbZGF0YS1icy1wb3BwZXJde3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi1tZW51LXNtLWVuZHstLWJzLXBvc2l0aW9uOmVuZH0uZHJvcGRvd24tbWVudS1zbS1lbmRbZGF0YS1icy1wb3BwZXJde3JpZ2h0OjA7bGVmdDphdXRvfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmRyb3Bkb3duLW1lbnUtbWQtc3RhcnR7LS1icy1wb3NpdGlvbjpzdGFydH0uZHJvcGRvd24tbWVudS1tZC1zdGFydFtkYXRhLWJzLXBvcHBlcl17cmlnaHQ6YXV0bztsZWZ0OjB9LmRyb3Bkb3duLW1lbnUtbWQtZW5key0tYnMtcG9zaXRpb246ZW5kfS5kcm9wZG93bi1tZW51LW1kLWVuZFtkYXRhLWJzLXBvcHBlcl17cmlnaHQ6MDtsZWZ0OmF1dG99fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuZHJvcGRvd24tbWVudS1sZy1zdGFydHstLWJzLXBvc2l0aW9uOnN0YXJ0fS5kcm9wZG93bi1tZW51LWxnLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXXtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24tbWVudS1sZy1lbmR7LS1icy1wb3NpdGlvbjplbmR9LmRyb3Bkb3duLW1lbnUtbGctZW5kW2RhdGEtYnMtcG9wcGVyXXtyaWdodDowO2xlZnQ6YXV0b319QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZHJvcGRvd24tbWVudS14bC1zdGFydHstLWJzLXBvc2l0aW9uOnN0YXJ0fS5kcm9wZG93bi1tZW51LXhsLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXXtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24tbWVudS14bC1lbmR7LS1icy1wb3NpdGlvbjplbmR9LmRyb3Bkb3duLW1lbnUteGwtZW5kW2RhdGEtYnMtcG9wcGVyXXtyaWdodDowO2xlZnQ6YXV0b319QG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KXsuZHJvcGRvd24tbWVudS14eGwtc3RhcnR7LS1icy1wb3NpdGlvbjpzdGFydH0uZHJvcGRvd24tbWVudS14eGwtc3RhcnRbZGF0YS1icy1wb3BwZXJde3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi1tZW51LXh4bC1lbmR7LS1icy1wb3NpdGlvbjplbmR9LmRyb3Bkb3duLW1lbnUteHhsLWVuZFtkYXRhLWJzLXBvcHBlcl17cmlnaHQ6MDtsZWZ0OmF1dG99fS5kcm9wdXAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJde3RvcDphdXRvO2JvdHRvbToxMDAlO21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOnZhcigtLWJzLWRyb3Bkb3duLXNwYWNlcil9LmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlcntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDouMjU1ZW07dmVydGljYWwtYWxpZ246LjI1NWVtO2NvbnRlbnQ6IiI7Ym9yZGVyLXRvcDowO2JvcmRlci1yaWdodDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206LjNlbSBzb2xpZDtib3JkZXItbGVmdDouM2VtIHNvbGlkIHRyYW5zcGFyZW50fS5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXJ7bWFyZ2luLWxlZnQ6MH0uZHJvcGVuZCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl17dG9wOjA7cmlnaHQ6YXV0bztsZWZ0OjEwMCU7bWFyZ2luLXRvcDowO21hcmdpbi1sZWZ0OnZhcigtLWJzLWRyb3Bkb3duLXNwYWNlcil9LmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbTtjb250ZW50OiIiO2JvcmRlci10b3A6LjNlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6MDtib3JkZXItYm90dG9tOi4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWxlZnQ6LjNlbSBzb2xpZH0uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVye3ZlcnRpY2FsLWFsaWduOjB9LmRyb3BzdGFydCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl17dG9wOjA7cmlnaHQ6MTAwJTtsZWZ0OmF1dG87bWFyZ2luLXRvcDowO21hcmdpbi1yaWdodDp2YXIoLS1icy1kcm9wZG93bi1zcGFjZXIpfS5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbTtjb250ZW50OiIifS5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXJ7ZGlzcGxheTpub25lfS5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDouMjU1ZW07dmVydGljYWwtYWxpZ246LjI1NWVtO2NvbnRlbnQ6IiI7Ym9yZGVyLXRvcDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDouM2VtIHNvbGlkO2JvcmRlci1ib3R0b206LjNlbSBzb2xpZCB0cmFuc3BhcmVudH0uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmV7dmVydGljYWwtYWxpZ246MH0uZHJvcGRvd24tZGl2aWRlcntoZWlnaHQ6MDttYXJnaW46dmFyKC0tYnMtZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYnMtZHJvcGRvd24tZGl2aWRlci1iZyk7b3BhY2l0eToxfS5kcm9wZG93bi1pdGVte2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtwYWRkaW5nOnZhcigtLWJzLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS1icy1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7Y2xlYXI6Ym90aDtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0tYnMtZHJvcGRvd24tbGluay1jb2xvcik7dGV4dC1hbGlnbjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lO3doaXRlLXNwYWNlOm5vd3JhcDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowfS5kcm9wZG93bi1pdGVtOmZvY3VzLC5kcm9wZG93bi1pdGVtOmhvdmVye2NvbG9yOnZhcigtLWJzLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1iZyl9LmRyb3Bkb3duLWl0ZW0uYWN0aXZlLC5kcm9wZG93bi1pdGVtOmFjdGl2ZXtjb2xvcjp2YXIoLS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZyl9LmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWR7Y29sb3I6dmFyKC0tYnMtZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5kcm9wZG93bi1tZW51LnNob3d7ZGlzcGxheTpibG9ja30uZHJvcGRvd24taGVhZGVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZzp2YXIoLS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14KTttYXJnaW4tYm90dG9tOjA7Zm9udC1zaXplOi44NzVyZW07Y29sb3I6dmFyKC0tYnMtZHJvcGRvd24taGVhZGVyLWNvbG9yKTt3aGl0ZS1zcGFjZTpub3dyYXB9LmRyb3Bkb3duLWl0ZW0tdGV4dHtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6dmFyKC0tYnMtZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLWJzLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtjb2xvcjp2YXIoLS1icy1kcm9wZG93bi1saW5rLWNvbG9yKX0uZHJvcGRvd24tbWVudS1kYXJrey0tYnMtZHJvcGRvd24tY29sb3I6I2RlZTJlNjstLWJzLWRyb3Bkb3duLWJnOiMzNDNhNDA7LS1icy1kcm9wZG93bi1ib3JkZXItY29sb3I6dmFyKC0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTstLWJzLWRyb3Bkb3duLWJveC1zaGFkb3c6IDstLWJzLWRyb3Bkb3duLWxpbmstY29sb3I6I2RlZTJlNjstLWJzLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6I2ZmZjstLWJzLWRyb3Bkb3duLWRpdmlkZXItYmc6dmFyKC0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTstLWJzLWRyb3Bkb3duLWxpbmstaG92ZXItYmc6cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTstLWJzLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiNmZmY7LS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzojMGQ2ZWZkOy0tYnMtZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjojYWRiNWJkOy0tYnMtZHJvcGRvd24taGVhZGVyLWNvbG9yOiNhZGI1YmR9LmJ0bi1ncm91cCwuYnRuLWdyb3VwLXZlcnRpY2Fse3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWZsZXg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwuYnRuLWdyb3VwPi5idG57cG9zaXRpb246cmVsYXRpdmU7ZmxleDoxIDEgYXV0b30uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1jaGVjazpmb2N1cysuYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi5hY3RpdmUsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmFjdGl2ZSwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46Zm9jdXMsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmhvdmVyLC5idG4tZ3JvdXA+LmJ0bi1jaGVjazpjaGVja2VkKy5idG4sLmJ0bi1ncm91cD4uYnRuLWNoZWNrOmZvY3VzKy5idG4sLmJ0bi1ncm91cD4uYnRuLmFjdGl2ZSwuYnRuLWdyb3VwPi5idG46YWN0aXZlLC5idG4tZ3JvdXA+LmJ0bjpmb2N1cywuYnRuLWdyb3VwPi5idG46aG92ZXJ7ei1pbmRleDoxfS5idG4tdG9vbGJhcntkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LmJ0bi10b29sYmFyIC5pbnB1dC1ncm91cHt3aWR0aDphdXRvfS5idG4tZ3JvdXB7Ym9yZGVyLXJhZGl1czouMzc1cmVtfS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSwuYnRuLWdyb3VwPjpub3QoLmJ0bi1jaGVjazpmaXJzdC1jaGlsZCkrLmJ0bnttYXJnaW4tbGVmdDotMXB4fS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPi5idG4sLmJ0bi1ncm91cD4uYnRuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDpmaXJzdC1jaGlsZCwuYnRuLWdyb3VwPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXA+LmJ0bjpudGgtY2hpbGQobiszKSwuYnRuLWdyb3VwPjpub3QoLmJ0bi1jaGVjaykrLmJ0bntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5kcm9wZG93bi10b2dnbGUtc3BsaXR7cGFkZGluZy1yaWdodDouNTYyNXJlbTtwYWRkaW5nLWxlZnQ6LjU2MjVyZW19LmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3Jle21hcmdpbi1yaWdodDowfS5idG4tZ3JvdXAtc20+LmJ0bisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LC5idG4tc20rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdHtwYWRkaW5nLXJpZ2h0Oi4zNzVyZW07cGFkZGluZy1sZWZ0Oi4zNzVyZW19LmJ0bi1ncm91cC1sZz4uYnRuKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsLmJ0bi1sZysuZHJvcGRvd24tdG9nZ2xlLXNwbGl0e3BhZGRpbmctcmlnaHQ6Ljc1cmVtO3BhZGRpbmctbGVmdDouNzVyZW19LmJ0bi1ncm91cC12ZXJ0aWNhbHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXB7d2lkdGg6MTAwJX0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCksLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi10b3A6LTFweH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+LmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG5+LmJ0bntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubmF2ey0tYnMtbmF2LWxpbmstcGFkZGluZy14OjFyZW07LS1icy1uYXYtbGluay1wYWRkaW5nLXk6MC41cmVtOy0tYnMtbmF2LWxpbmstZm9udC13ZWlnaHQ6IDstLWJzLW5hdi1saW5rLWNvbG9yOnZhcigtLWJzLWxpbmstY29sb3IpOy0tYnMtbmF2LWxpbmstaG92ZXItY29sb3I6dmFyKC0tYnMtbGluay1ob3Zlci1jb2xvcik7LS1icy1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjojNmM3NTdkO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjA7bGlzdC1zdHlsZTpub25lfS5uYXYtbGlua3tkaXNwbGF5OmJsb2NrO3BhZGRpbmc6dmFyKC0tYnMtbmF2LWxpbmstcGFkZGluZy15KSB2YXIoLS1icy1uYXYtbGluay1wYWRkaW5nLXgpO2ZvbnQtc2l6ZTp2YXIoLS1icy1uYXYtbGluay1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OnZhcigtLWJzLW5hdi1saW5rLWZvbnQtd2VpZ2h0KTtjb2xvcjp2YXIoLS1icy1uYXYtbGluay1jb2xvcik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsubmF2LWxpbmt7dHJhbnNpdGlvbjpub25lfX0ubmF2LWxpbms6Zm9jdXMsLm5hdi1saW5rOmhvdmVye2NvbG9yOnZhcigtLWJzLW5hdi1saW5rLWhvdmVyLWNvbG9yKX0ubmF2LWxpbmsuZGlzYWJsZWR7Y29sb3I6dmFyKC0tYnMtbmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO3BvaW50ZXItZXZlbnRzOm5vbmU7Y3Vyc29yOmRlZmF1bHR9Lm5hdi10YWJzey0tYnMtbmF2LXRhYnMtYm9yZGVyLXdpZHRoOjFweDstLWJzLW5hdi10YWJzLWJvcmRlci1jb2xvcjojZGVlMmU2Oy0tYnMtbmF2LXRhYnMtYm9yZGVyLXJhZGl1czowLjM3NXJlbTstLWJzLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2Oy0tYnMtbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6IzQ5NTA1NzstLWJzLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiNmZmY7LS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6I2RlZTJlNiAjZGVlMmU2ICNmZmY7Ym9yZGVyLWJvdHRvbTp2YXIoLS1icy1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW5hdi10YWJzLWJvcmRlci1jb2xvcil9Lm5hdi10YWJzIC5uYXYtbGlua3ttYXJnaW4tYm90dG9tOmNhbGMoLTEgKiB2YXIoLS1icy1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTtiYWNrZ3JvdW5kOjAgMDtib3JkZXI6dmFyKC0tYnMtbmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOnZhcigtLWJzLW5hdi10YWJzLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLW5hdi10YWJzLWJvcmRlci1yYWRpdXMpfS5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMsLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcntpc29sYXRpb246aXNvbGF0ZTtib3JkZXItY29sb3I6dmFyKC0tYnMtbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpfS5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQsLm5hdi10YWJzIC5uYXYtbGluazpkaXNhYmxlZHtjb2xvcjp2YXIoLS1icy1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9Lm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluaywubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZXtjb2xvcjp2YXIoLS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLWJzLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcil9Lm5hdi10YWJzIC5kcm9wZG93bi1tZW51e21hcmdpbi10b3A6Y2FsYygtMSAqIHZhcigtLWJzLW5hdi10YWJzLWJvcmRlci13aWR0aCkpO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5uYXYtcGlsbHN7LS1icy1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1czowLjM3NXJlbTstLWJzLW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjojZmZmOy0tYnMtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiMwZDZlZmR9Lm5hdi1waWxscyAubmF2LWxpbmt7YmFja2dyb3VuZDowIDA7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyl9Lm5hdi1waWxscyAubmF2LWxpbms6ZGlzYWJsZWR7Y29sb3I6dmFyKC0tYnMtbmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSwubmF2LXBpbGxzIC5zaG93Pi5uYXYtbGlua3tjb2xvcjp2YXIoLS1icy1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKX0ubmF2LWZpbGwgLm5hdi1pdGVtLC5uYXYtZmlsbD4ubmF2LWxpbmt7ZmxleDoxIDEgYXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0sLm5hdi1qdXN0aWZpZWQ+Lm5hdi1saW5re2ZsZXgtYmFzaXM6MDtmbGV4LWdyb3c6MTt0ZXh0LWFsaWduOmNlbnRlcn0ubmF2LWZpbGwgLm5hdi1pdGVtIC5uYXYtbGluaywubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0gLm5hdi1saW5re3dpZHRoOjEwMCV9LnRhYi1jb250ZW50Pi50YWItcGFuZXtkaXNwbGF5Om5vbmV9LnRhYi1jb250ZW50Pi5hY3RpdmV7ZGlzcGxheTpibG9ja30ubmF2YmFyey0tYnMtbmF2YmFyLXBhZGRpbmcteDowOy0tYnMtbmF2YmFyLXBhZGRpbmcteTowLjVyZW07LS1icy1uYXZiYXItY29sb3I6cmdiYSgwLCAwLCAwLCAwLjU1KTstLWJzLW5hdmJhci1ob3Zlci1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuNyk7LS1icy1uYXZiYXItZGlzYWJsZWQtY29sb3I6cmdiYSgwLCAwLCAwLCAwLjMpOy0tYnMtbmF2YmFyLWFjdGl2ZS1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuOSk7LS1icy1uYXZiYXItYnJhbmQtcGFkZGluZy15OjAuMzEyNXJlbTstLWJzLW5hdmJhci1icmFuZC1tYXJnaW4tZW5kOjFyZW07LS1icy1uYXZiYXItYnJhbmQtZm9udC1zaXplOjEuMjVyZW07LS1icy1uYXZiYXItYnJhbmQtY29sb3I6cmdiYSgwLCAwLCAwLCAwLjkpOy0tYnMtbmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC45KTstLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6MC41cmVtOy0tYnMtbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OjAuMjVyZW07LS1icy1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6MC43NXJlbTstLWJzLW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZToxLjI1cmVtOy0tYnMtbmF2YmFyLXRvZ2dsZXItaWNvbi1iZzp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgwLCAwLCAwLCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZSIpOy0tYnMtbmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKTstLWJzLW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6MC4zNzVyZW07LS1icy1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDowLjI1cmVtOy0tYnMtbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjpib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzp2YXIoLS1icy1uYXZiYXItcGFkZGluZy15KSB2YXIoLS1icy1uYXZiYXItcGFkZGluZy14KX0ubmF2YmFyPi5jb250YWluZXIsLm5hdmJhcj4uY29udGFpbmVyLWZsdWlkLC5uYXZiYXI+LmNvbnRhaW5lci1sZywubmF2YmFyPi5jb250YWluZXItbWQsLm5hdmJhcj4uY29udGFpbmVyLXNtLC5uYXZiYXI+LmNvbnRhaW5lci14bCwubmF2YmFyPi5jb250YWluZXIteHhse2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6aW5oZXJpdDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm5hdmJhci1icmFuZHtwYWRkaW5nLXRvcDp2YXIoLS1icy1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtwYWRkaW5nLWJvdHRvbTp2YXIoLS1icy1uYXZiYXItYnJhbmQtcGFkZGluZy15KTttYXJnaW4tcmlnaHQ6dmFyKC0tYnMtbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQpO2ZvbnQtc2l6ZTp2YXIoLS1icy1uYXZiYXItYnJhbmQtZm9udC1zaXplKTtjb2xvcjp2YXIoLS1icy1uYXZiYXItYnJhbmQtY29sb3IpO3RleHQtZGVjb3JhdGlvbjpub25lO3doaXRlLXNwYWNlOm5vd3JhcH0ubmF2YmFyLWJyYW5kOmZvY3VzLC5uYXZiYXItYnJhbmQ6aG92ZXJ7Y29sb3I6dmFyKC0tYnMtbmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yKX0ubmF2YmFyLW5hdnstLWJzLW5hdi1saW5rLXBhZGRpbmcteDowOy0tYnMtbmF2LWxpbmstcGFkZGluZy15OjAuNXJlbTstLWJzLW5hdi1saW5rLWZvbnQtd2VpZ2h0OiA7LS1icy1uYXYtbGluay1jb2xvcjp2YXIoLS1icy1uYXZiYXItY29sb3IpOy0tYnMtbmF2LWxpbmstaG92ZXItY29sb3I6dmFyKC0tYnMtbmF2YmFyLWhvdmVyLWNvbG9yKTstLWJzLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOnZhcigtLWJzLW5hdmJhci1kaXNhYmxlZC1jb2xvcik7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjA7bGlzdC1zdHlsZTpub25lfS5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsLm5hdmJhci1uYXYgLnNob3c+Lm5hdi1saW5re2NvbG9yOnZhcigtLWJzLW5hdmJhci1hY3RpdmUtY29sb3IpfS5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOnN0YXRpY30ubmF2YmFyLXRleHR7cGFkZGluZy10b3A6LjVyZW07cGFkZGluZy1ib3R0b206LjVyZW07Y29sb3I6dmFyKC0tYnMtbmF2YmFyLWNvbG9yKX0ubmF2YmFyLXRleHQgYSwubmF2YmFyLXRleHQgYTpmb2N1cywubmF2YmFyLXRleHQgYTpob3Zlcntjb2xvcjp2YXIoLS1icy1uYXZiYXItYWN0aXZlLWNvbG9yKX0ubmF2YmFyLWNvbGxhcHNle2ZsZXgtYmFzaXM6MTAwJTtmbGV4LWdyb3c6MTthbGlnbi1pdGVtczpjZW50ZXJ9Lm5hdmJhci10b2dnbGVye3BhZGRpbmc6dmFyKC0tYnMtbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15KSB2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO2ZvbnQtc2l6ZTp2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1mb250LXNpemUpO2xpbmUtaGVpZ2h0OjE7Y29sb3I6dmFyKC0tYnMtbmF2YmFyLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjp2YXIoLS1icy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTt0cmFuc2l0aW9uOnZhcigtLWJzLW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5uYXZiYXItdG9nZ2xlcnt0cmFuc2l0aW9uOm5vbmV9fS5uYXZiYXItdG9nZ2xlcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0ubmF2YmFyLXRvZ2dsZXI6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmU7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgdmFyKC0tYnMtbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpfS5uYXZiYXItdG9nZ2xlci1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEuNWVtO2hlaWdodDoxLjVlbTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7YmFja2dyb3VuZC1pbWFnZTp2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1pY29uLWJnKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7YmFja2dyb3VuZC1zaXplOjEwMCV9Lm5hdmJhci1uYXYtc2Nyb2xse21heC1oZWlnaHQ6dmFyKC0tYnMtc2Nyb2xsLWhlaWdodCw3NXZoKTtvdmVyZmxvdy15OmF1dG99QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5uYXZiYXItZXhwYW5kLXNte2ZsZXgtd3JhcDpub3dyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXZ7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLXJpZ2h0OnZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO3BhZGRpbmctbGVmdDp2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KX0ubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGx7b3ZlcmZsb3c6dmlzaWJsZX0ubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLWNvbGxhcHNle2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnQ7ZmxleC1iYXNpczphdXRvfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlcntkaXNwbGF5Om5vbmV9Lm5hdmJhci1leHBhbmQtc20gLm9mZmNhbnZhc3twb3NpdGlvbjpzdGF0aWM7ei1pbmRleDphdXRvO2ZsZXgtZ3JvdzoxO3dpZHRoOmF1dG8haW1wb3J0YW50O2hlaWdodDphdXRvIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lfS5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1oZWFkZXJ7ZGlzcGxheTpub25lfS5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MDtwYWRkaW5nOjA7b3ZlcmZsb3cteTp2aXNpYmxlfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lm5hdmJhci1leHBhbmQtbWR7ZmxleC13cmFwOm5vd3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdntmbGV4LWRpcmVjdGlvbjpyb3d9Lm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGV9Lm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctcmlnaHQ6dmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7cGFkZGluZy1sZWZ0OnZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpfS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2LXNjcm9sbHtvdmVyZmxvdzp2aXNpYmxlfS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItY29sbGFwc2V7ZGlzcGxheTpmbGV4IWltcG9ydGFudDtmbGV4LWJhc2lzOmF1dG99Lm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci10b2dnbGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFze3Bvc2l0aW9uOnN0YXRpYzt6LWluZGV4OmF1dG87ZmxleC1ncm93OjE7d2lkdGg6YXV0byFpbXBvcnRhbnQ7aGVpZ2h0OmF1dG8haW1wb3J0YW50O3Zpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O3RyYW5zZm9ybTpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmV9Lm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlcntkaXNwbGF5Om5vbmV9Lm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZ3JvdzowO3BhZGRpbmc6MDtvdmVyZmxvdy15OnZpc2libGV9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubmF2YmFyLWV4cGFuZC1sZ3tmbGV4LXdyYXA6bm93cmFwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2e2ZsZXgtZGlyZWN0aW9uOnJvd30ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmt7cGFkZGluZy1yaWdodDp2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtwYWRkaW5nLWxlZnQ6dmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCl9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xse292ZXJmbG93OnZpc2libGV9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfS5uYXZiYXItZXhwYW5kLWxnIC5vZmZjYW52YXN7cG9zaXRpb246c3RhdGljO3otaW5kZXg6YXV0bztmbGV4LWdyb3c6MTt3aWR0aDphdXRvIWltcG9ydGFudDtoZWlnaHQ6YXV0byFpbXBvcnRhbnQ7dmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O3RyYW5zaXRpb246bm9uZX0ubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzIC5vZmZjYW52YXMtaGVhZGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1ncm93OjA7cGFkZGluZzowO292ZXJmbG93LXk6dmlzaWJsZX19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubmF2YmFyLWV4cGFuZC14bHtmbGV4LXdyYXA6bm93cmFwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2e2ZsZXgtZGlyZWN0aW9uOnJvd30ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmt7cGFkZGluZy1yaWdodDp2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtwYWRkaW5nLWxlZnQ6dmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCl9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYtc2Nyb2xse292ZXJmbG93OnZpc2libGV9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfS5uYXZiYXItZXhwYW5kLXhsIC5vZmZjYW52YXN7cG9zaXRpb246c3RhdGljO3otaW5kZXg6YXV0bztmbGV4LWdyb3c6MTt3aWR0aDphdXRvIWltcG9ydGFudDtoZWlnaHQ6YXV0byFpbXBvcnRhbnQ7dmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O3RyYW5zaXRpb246bm9uZX0ubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzIC5vZmZjYW52YXMtaGVhZGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1ncm93OjA7cGFkZGluZzowO292ZXJmbG93LXk6dmlzaWJsZX19QG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KXsubmF2YmFyLWV4cGFuZC14eGx7ZmxleC13cmFwOm5vd3JhcDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXZ7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctcmlnaHQ6dmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7cGFkZGluZy1sZWZ0OnZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpfS5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdi1zY3JvbGx7b3ZlcmZsb3c6dmlzaWJsZX0ubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci10b2dnbGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhc3twb3NpdGlvbjpzdGF0aWM7ei1pbmRleDphdXRvO2ZsZXgtZ3JvdzoxO3dpZHRoOmF1dG8haW1wb3J0YW50O2hlaWdodDphdXRvIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lfS5uYXZiYXItZXhwYW5kLXh4bCAub2ZmY2FudmFzIC5vZmZjYW52YXMtaGVhZGVye2Rpc3BsYXk6bm9uZX0ubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZ3JvdzowO3BhZGRpbmc6MDtvdmVyZmxvdy15OnZpc2libGV9fS5uYXZiYXItZXhwYW5ke2ZsZXgtd3JhcDpub3dyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXZ7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLXJpZ2h0OnZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO3BhZGRpbmctbGVmdDp2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KX0ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGx7b3ZlcmZsb3c6dmlzaWJsZX0ubmF2YmFyLWV4cGFuZCAubmF2YmFyLWNvbGxhcHNle2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnQ7ZmxleC1iYXNpczphdXRvfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItdG9nZ2xlcntkaXNwbGF5Om5vbmV9Lm5hdmJhci1leHBhbmQgLm9mZmNhbnZhc3twb3NpdGlvbjpzdGF0aWM7ei1pbmRleDphdXRvO2ZsZXgtZ3JvdzoxO3dpZHRoOmF1dG8haW1wb3J0YW50O2hlaWdodDphdXRvIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lfS5uYXZiYXItZXhwYW5kIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1oZWFkZXJ7ZGlzcGxheTpub25lfS5uYXZiYXItZXhwYW5kIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MDtwYWRkaW5nOjA7b3ZlcmZsb3cteTp2aXNpYmxlfS5uYXZiYXItZGFya3stLWJzLW5hdmJhci1jb2xvcjpyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpOy0tYnMtbmF2YmFyLWhvdmVyLWNvbG9yOnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7LS1icy1uYXZiYXItZGlzYWJsZWQtY29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTstLWJzLW5hdmJhci1hY3RpdmUtY29sb3I6I2ZmZjstLWJzLW5hdmJhci1icmFuZC1jb2xvcjojZmZmOy0tYnMtbmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiNmZmY7LS1icy1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOy0tYnMtbmF2YmFyLXRvZ2dsZXItaWNvbi1iZzp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZSIpfS5jYXJkey0tYnMtY2FyZC1zcGFjZXIteToxcmVtOy0tYnMtY2FyZC1zcGFjZXIteDoxcmVtOy0tYnMtY2FyZC10aXRsZS1zcGFjZXIteTowLjVyZW07LS1icy1jYXJkLWJvcmRlci13aWR0aDoxcHg7LS1icy1jYXJkLWJvcmRlci1jb2xvcjp2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpOy0tYnMtY2FyZC1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtY2FyZC1ib3gtc2hhZG93OiA7LS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6Y2FsYygwLjM3NXJlbSAtIDFweCk7LS1icy1jYXJkLWNhcC1wYWRkaW5nLXk6MC41cmVtOy0tYnMtY2FyZC1jYXAtcGFkZGluZy14OjFyZW07LS1icy1jYXJkLWNhcC1iZzpyZ2JhKDAsIDAsIDAsIDAuMDMpOy0tYnMtY2FyZC1jYXAtY29sb3I6IDstLWJzLWNhcmQtaGVpZ2h0OiA7LS1icy1jYXJkLWNvbG9yOiA7LS1icy1jYXJkLWJnOiNmZmY7LS1icy1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6MXJlbTstLWJzLWNhcmQtZ3JvdXAtbWFyZ2luOjAuNzVyZW07cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MDtoZWlnaHQ6dmFyKC0tYnMtY2FyZC1oZWlnaHQpO3dvcmQtd3JhcDpicmVhay13b3JkO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtY2FyZC1iZyk7YmFja2dyb3VuZC1jbGlwOmJvcmRlci1ib3g7Ym9yZGVyOnZhcigtLWJzLWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1jYXJkLWJvcmRlci1jb2xvcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1jYXJkLWJvcmRlci1yYWRpdXMpfS5jYXJkPmhye21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LmNhcmQ+Lmxpc3QtZ3JvdXB7Ym9yZGVyLXRvcDppbmhlcml0O2JvcmRlci1ib3R0b206aW5oZXJpdH0uY2FyZD4ubGlzdC1ncm91cDpmaXJzdC1jaGlsZHtib3JkZXItdG9wLXdpZHRoOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czp2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyl9LmNhcmQ+Lmxpc3QtZ3JvdXA6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXdpZHRoOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6dmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOnZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyl9LmNhcmQ+LmNhcmQtaGVhZGVyKy5saXN0LWdyb3VwLC5jYXJkPi5saXN0LWdyb3VwKy5jYXJkLWZvb3Rlcntib3JkZXItdG9wOjB9LmNhcmQtYm9keXtmbGV4OjEgMSBhdXRvO3BhZGRpbmc6dmFyKC0tYnMtY2FyZC1zcGFjZXIteSkgdmFyKC0tYnMtY2FyZC1zcGFjZXIteCk7Y29sb3I6dmFyKC0tYnMtY2FyZC1jb2xvcil9LmNhcmQtdGl0bGV7bWFyZ2luLWJvdHRvbTp2YXIoLS1icy1jYXJkLXRpdGxlLXNwYWNlci15KX0uY2FyZC1zdWJ0aXRsZXttYXJnaW4tdG9wOmNhbGMoLS41ICogdmFyKC0tYnMtY2FyZC10aXRsZS1zcGFjZXIteSkpO21hcmdpbi1ib3R0b206MH0uY2FyZC10ZXh0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5jYXJkLWxpbmsrLmNhcmQtbGlua3ttYXJnaW4tbGVmdDp2YXIoLS1icy1jYXJkLXNwYWNlci14KX0uY2FyZC1oZWFkZXJ7cGFkZGluZzp2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCk7bWFyZ2luLWJvdHRvbTowO2NvbG9yOnZhcigtLWJzLWNhcmQtY2FwLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLWNhcmQtY2FwLWJnKTtib3JkZXItYm90dG9tOnZhcigtLWJzLWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1jYXJkLWJvcmRlci1jb2xvcil9LmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxke2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMH0uY2FyZC1mb290ZXJ7cGFkZGluZzp2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCk7Y29sb3I6dmFyKC0tYnMtY2FyZC1jYXAtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtY2FyZC1jYXAtYmcpO2JvcmRlci10b3A6dmFyKC0tYnMtY2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWNhcmQtYm9yZGVyLWNvbG9yKX0uY2FyZC1mb290ZXI6bGFzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMCB2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyl9LmNhcmQtaGVhZGVyLXRhYnN7bWFyZ2luLXJpZ2h0OmNhbGMoLS41ICogdmFyKC0tYnMtY2FyZC1jYXAtcGFkZGluZy14KSk7bWFyZ2luLWJvdHRvbTpjYWxjKC0xICogdmFyKC0tYnMtY2FyZC1jYXAtcGFkZGluZy15KSk7bWFyZ2luLWxlZnQ6Y2FsYygtLjUgKiB2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXgpKTtib3JkZXItYm90dG9tOjB9LmNhcmQtaGVhZGVyLXRhYnMgLm5hdi1saW5rLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLWNhcmQtYmcpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tYnMtY2FyZC1iZyl9LmNhcmQtaGVhZGVyLXBpbGxze21hcmdpbi1yaWdodDpjYWxjKC0uNSAqIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCkpO21hcmdpbi1sZWZ0OmNhbGMoLS41ICogdmFyKC0tYnMtY2FyZC1jYXAtcGFkZGluZy14KSl9LmNhcmQtaW1nLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7cGFkZGluZzp2YXIoLS1icy1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmcpO2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKX0uY2FyZC1pbWcsLmNhcmQtaW1nLWJvdHRvbSwuY2FyZC1pbWctdG9we3dpZHRoOjEwMCV9LmNhcmQtaW1nLC5jYXJkLWltZy10b3B7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czp2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyl9LmNhcmQtaW1nLC5jYXJkLWltZy1ib3R0b217Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6dmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOnZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyl9LmNhcmQtZ3JvdXA+LmNhcmR7bWFyZ2luLWJvdHRvbTp2YXIoLS1icy1jYXJkLWdyb3VwLW1hcmdpbil9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5jYXJkLWdyb3Vwe2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6cm93IHdyYXB9LmNhcmQtZ3JvdXA+LmNhcmR7ZmxleDoxIDAgMCU7bWFyZ2luLWJvdHRvbTowfS5jYXJkLWdyb3VwPi5jYXJkKy5jYXJke21hcmdpbi1sZWZ0OjA7Ym9yZGVyLWxlZnQ6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWhlYWRlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3B7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b217Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciwuY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9we2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1mb290ZXIsLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9fS5hY2NvcmRpb257LS1icy1hY2NvcmRpb24tY29sb3I6IzIxMjUyOTstLWJzLWFjY29yZGlvbi1iZzojZmZmOy0tYnMtYWNjb3JkaW9uLXRyYW5zaXRpb246Y29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCxib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dCxib3JkZXItcmFkaXVzIDAuMTVzIGVhc2U7LS1icy1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOnZhcigtLWJzLWJvcmRlci1jb2xvcik7LS1icy1hY2NvcmRpb24tYm9yZGVyLXdpZHRoOjFweDstLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6Y2FsYygwLjM3NXJlbSAtIDFweCk7LS1icy1hY2NvcmRpb24tYnRuLXBhZGRpbmcteDoxLjI1cmVtOy0tYnMtYWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXk6MXJlbTstLWJzLWFjY29yZGlvbi1idG4tY29sb3I6IzIxMjUyOTstLWJzLWFjY29yZGlvbi1idG4tYmc6dmFyKC0tYnMtYWNjb3JkaW9uLWJnKTstLWJzLWFjY29yZGlvbi1idG4taWNvbjp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzIxMjUyOSclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZSIpOy0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoOjEuMjVyZW07LS1icy1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTstLWJzLWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0Oy0tYnMtYWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzBjNjNlNCclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZSIpOy0tYnMtYWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3JkZXItY29sb3I6Izg2YjdmZTstLWJzLWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdzowIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTstLWJzLWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDoxLjI1cmVtOy0tYnMtYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OjFyZW07LS1icy1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiMwYzYzZTQ7LS1icy1hY2NvcmRpb24tYWN0aXZlLWJnOiNlN2YxZmZ9LmFjY29yZGlvbi1idXR0b257cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO3BhZGRpbmc6dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXkpIHZhcigtLWJzLWFjY29yZGlvbi1idG4tcGFkZGluZy14KTtmb250LXNpemU6MXJlbTtjb2xvcjp2YXIoLS1icy1hY2NvcmRpb24tYnRuLWNvbG9yKTt0ZXh0LWFsaWduOmxlZnQ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1hY2NvcmRpb24tYnRuLWJnKTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7b3ZlcmZsb3ctYW5jaG9yOm5vbmU7dHJhbnNpdGlvbjp2YXIoLS1icy1hY2NvcmRpb24tdHJhbnNpdGlvbil9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmFjY29yZGlvbi1idXR0b257dHJhbnNpdGlvbjpub25lfX0uYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCl7Y29sb3I6dmFyKC0tYnMtYWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1hY2NvcmRpb24tYWN0aXZlLWJnKTtib3gtc2hhZG93Omluc2V0IDAgY2FsYygtMSAqIHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItd2lkdGgpKSAwIHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItY29sb3IpfS5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKTo6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp2YXIoLS1icy1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uKTt0cmFuc2Zvcm06dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSl9LmFjY29yZGlvbi1idXR0b246OmFmdGVye2ZsZXgtc2hyaW5rOjA7d2lkdGg6dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtoZWlnaHQ6dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTttYXJnaW4tbGVmdDphdXRvO2NvbnRlbnQ6IiI7YmFja2dyb3VuZC1pbWFnZTp2YXIoLS1icy1hY2NvcmRpb24tYnRuLWljb24pO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTt0cmFuc2l0aW9uOnZhcigtLWJzLWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uKX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXJ7dHJhbnNpdGlvbjpub25lfX0uYWNjb3JkaW9uLWJ1dHRvbjpob3Zlcnt6LWluZGV4OjJ9LmFjY29yZGlvbi1idXR0b246Zm9jdXN7ei1pbmRleDozO2JvcmRlci1jb2xvcjp2YXIoLS1icy1hY2NvcmRpb24tYnRuLWZvY3VzLWJvcmRlci1jb2xvcik7b3V0bGluZTowO2JveC1zaGFkb3c6dmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KX0uYWNjb3JkaW9uLWhlYWRlcnttYXJnaW4tYm90dG9tOjB9LmFjY29yZGlvbi1pdGVte2NvbG9yOnZhcigtLWJzLWFjY29yZGlvbi1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1hY2NvcmRpb24tYmcpO2JvcmRlcjp2YXIoLS1icy1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKX0uYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOnZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czp2YXIoLS1icy1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cyl9LmFjY29yZGlvbi1pdGVtOmZpcnN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b257Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czp2YXIoLS1icy1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpfS5hY2NvcmRpb24taXRlbTpub3QoOmZpcnN0LW9mLXR5cGUpe2JvcmRlci10b3A6MH0uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBle2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOnZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOnZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKX0uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZHtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czp2YXIoLS1icy1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cyl9LmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWNvbGxhcHNle2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOnZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOnZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKX0uYWNjb3JkaW9uLWJvZHl7cGFkZGluZzp2YXIoLS1icy1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXkpIHZhcigtLWJzLWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCl9LmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWNvbGxhcHNle2JvcmRlci13aWR0aDowfS5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVte2JvcmRlci1yaWdodDowO2JvcmRlci1sZWZ0OjA7Ym9yZGVyLXJhZGl1czowfS5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3A6MH0uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206MH0uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWJ1dHRvbiwuYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWR7Ym9yZGVyLXJhZGl1czowfS5icmVhZGNydW1iey0tYnMtYnJlYWRjcnVtYi1wYWRkaW5nLXg6MDstLWJzLWJyZWFkY3J1bWItcGFkZGluZy15OjA7LS1icy1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206MXJlbTstLWJzLWJyZWFkY3J1bWItYmc6IDstLWJzLWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogOy0tYnMtYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiM2Yzc1N2Q7LS1icy1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OjAuNXJlbTstLWJzLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6IzZjNzU3ZDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7cGFkZGluZzp2YXIoLS1icy1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tYnMtYnJlYWRjcnVtYi1wYWRkaW5nLXgpO21hcmdpbi1ib3R0b206dmFyKC0tYnMtYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtmb250LXNpemU6dmFyKC0tYnMtYnJlYWRjcnVtYi1mb250LXNpemUpO2xpc3Qtc3R5bGU6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLWJyZWFkY3J1bWItYmcpO2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKX0uYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW17cGFkZGluZy1sZWZ0OnZhcigtLWJzLWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpfS5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbTo6YmVmb3Jle2Zsb2F0OmxlZnQ7cGFkZGluZy1yaWdodDp2YXIoLS1icy1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtjb2xvcjp2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXItY29sb3IpO2NvbnRlbnQ6dmFyKC0tYnMtYnJlYWRjcnVtYi1kaXZpZGVyLCAiLyIpfS5icmVhZGNydW1iLWl0ZW0uYWN0aXZle2NvbG9yOnZhcigtLWJzLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpfS5wYWdpbmF0aW9uey0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXg6MC43NXJlbTstLWJzLXBhZ2luYXRpb24tcGFkZGluZy15OjAuMzc1cmVtOy0tYnMtcGFnaW5hdGlvbi1mb250LXNpemU6MXJlbTstLWJzLXBhZ2luYXRpb24tY29sb3I6dmFyKC0tYnMtbGluay1jb2xvcik7LS1icy1wYWdpbmF0aW9uLWJnOiNmZmY7LS1icy1wYWdpbmF0aW9uLWJvcmRlci13aWR0aDoxcHg7LS1icy1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcjojZGVlMmU2Oy0tYnMtcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjp2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yKTstLWJzLXBhZ2luYXRpb24taG92ZXItYmc6I2U5ZWNlZjstLWJzLXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiNkZWUyZTY7LS1icy1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yOnZhcigtLWJzLWxpbmstaG92ZXItY29sb3IpOy0tYnMtcGFnaW5hdGlvbi1mb2N1cy1iZzojZTllY2VmOy0tYnMtcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OjAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpOy0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6I2ZmZjstLWJzLXBhZ2luYXRpb24tYWN0aXZlLWJnOiMwZDZlZmQ7LS1icy1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6IzBkNmVmZDstLWJzLXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6IzZjNzU3ZDstLWJzLXBhZ2luYXRpb24tZGlzYWJsZWQtYmc6I2ZmZjstLWJzLXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiNkZWUyZTY7ZGlzcGxheTpmbGV4O3BhZGRpbmctbGVmdDowO2xpc3Qtc3R5bGU6bm9uZX0ucGFnZS1saW5re3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7cGFkZGluZzp2YXIoLS1icy1wYWdpbmF0aW9uLXBhZGRpbmcteSkgdmFyKC0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXgpO2ZvbnQtc2l6ZTp2YXIoLS1icy1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7Y29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1jb2xvcik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1wYWdpbmF0aW9uLWJnKTtib3JkZXI6dmFyKC0tYnMtcGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsucGFnZS1saW5re3RyYW5zaXRpb246bm9uZX19LnBhZ2UtbGluazpob3Zlcnt6LWluZGV4OjI7Y29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1wYWdpbmF0aW9uLWhvdmVyLWJnKTtib3JkZXItY29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3IpfS5wYWdlLWxpbms6Zm9jdXN7ei1pbmRleDozO2NvbG9yOnZhcigtLWJzLXBhZ2luYXRpb24tZm9jdXMtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1mb2N1cy1iZyk7b3V0bGluZTowO2JveC1zaGFkb3c6dmFyKC0tYnMtcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KX0uYWN0aXZlPi5wYWdlLWxpbmssLnBhZ2UtbGluay5hY3RpdmV7ei1pbmRleDozO2NvbG9yOnZhcigtLWJzLXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLXBhZ2luYXRpb24tYWN0aXZlLWJnKTtib3JkZXItY29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKX0uZGlzYWJsZWQ+LnBhZ2UtbGluaywucGFnZS1saW5rLmRpc2FibGVke2NvbG9yOnZhcigtLWJzLXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IpO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1wYWdpbmF0aW9uLWRpc2FibGVkLWJnKTtib3JkZXItY29sb3I6dmFyKC0tYnMtcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpfS5wYWdlLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGlua3ttYXJnaW4tbGVmdDotMXB4fS5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGlua3tib3JkZXItdG9wLWxlZnQtcmFkaXVzOnZhcigtLWJzLXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpfS5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5re2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6dmFyKC0tYnMtcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKX0ucGFnaW5hdGlvbi1sZ3stLWJzLXBhZ2luYXRpb24tcGFkZGluZy14OjEuNXJlbTstLWJzLXBhZ2luYXRpb24tcGFkZGluZy15OjAuNzVyZW07LS1icy1wYWdpbmF0aW9uLWZvbnQtc2l6ZToxLjI1cmVtOy0tYnMtcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOjAuNXJlbX0ucGFnaW5hdGlvbi1zbXstLWJzLXBhZ2luYXRpb24tcGFkZGluZy14OjAuNXJlbTstLWJzLXBhZ2luYXRpb24tcGFkZGluZy15OjAuMjVyZW07LS1icy1wYWdpbmF0aW9uLWZvbnQtc2l6ZTowLjg3NXJlbTstLWJzLXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czowLjI1cmVtfS5iYWRnZXstLWJzLWJhZGdlLXBhZGRpbmcteDowLjY1ZW07LS1icy1iYWRnZS1wYWRkaW5nLXk6MC4zNWVtOy0tYnMtYmFkZ2UtZm9udC1zaXplOjAuNzVlbTstLWJzLWJhZGdlLWZvbnQtd2VpZ2h0OjcwMDstLWJzLWJhZGdlLWNvbG9yOiNmZmY7LS1icy1iYWRnZS1ib3JkZXItcmFkaXVzOjAuMzc1cmVtO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6dmFyKC0tYnMtYmFkZ2UtcGFkZGluZy15KSB2YXIoLS1icy1iYWRnZS1wYWRkaW5nLXgpO2ZvbnQtc2l6ZTp2YXIoLS1icy1iYWRnZS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OnZhcigtLWJzLWJhZGdlLWZvbnQtd2VpZ2h0KTtsaW5lLWhlaWdodDoxO2NvbG9yOnZhcigtLWJzLWJhZGdlLWNvbG9yKTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1iYWRnZS1ib3JkZXItcmFkaXVzKX0uYmFkZ2U6ZW1wdHl7ZGlzcGxheTpub25lfS5idG4gLmJhZGdle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMXB4fS5hbGVydHstLWJzLWFsZXJ0LWJnOnRyYW5zcGFyZW50Oy0tYnMtYWxlcnQtcGFkZGluZy14OjFyZW07LS1icy1hbGVydC1wYWRkaW5nLXk6MXJlbTstLWJzLWFsZXJ0LW1hcmdpbi1ib3R0b206MXJlbTstLWJzLWFsZXJ0LWNvbG9yOmluaGVyaXQ7LS1icy1hbGVydC1ib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7LS1icy1hbGVydC1ib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJzLWFsZXJ0LWJvcmRlci1jb2xvcik7LS1icy1hbGVydC1ib3JkZXItcmFkaXVzOjAuMzc1cmVtO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6dmFyKC0tYnMtYWxlcnQtcGFkZGluZy15KSB2YXIoLS1icy1hbGVydC1wYWRkaW5nLXgpO21hcmdpbi1ib3R0b206dmFyKC0tYnMtYWxlcnQtbWFyZ2luLWJvdHRvbSk7Y29sb3I6dmFyKC0tYnMtYWxlcnQtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtYWxlcnQtYmcpO2JvcmRlcjp2YXIoLS1icy1hbGVydC1ib3JkZXIpO2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtYWxlcnQtYm9yZGVyLXJhZGl1cyl9LmFsZXJ0LWhlYWRpbmd7Y29sb3I6aW5oZXJpdH0uYWxlcnQtbGlua3tmb250LXdlaWdodDo3MDB9LmFsZXJ0LWRpc21pc3NpYmxle3BhZGRpbmctcmlnaHQ6M3JlbX0uYWxlcnQtZGlzbWlzc2libGUgLmJ0bi1jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3otaW5kZXg6MjtwYWRkaW5nOjEuMjVyZW0gMXJlbX0uYWxlcnQtcHJpbWFyeXstLWJzLWFsZXJ0LWNvbG9yOiMwODQyOTg7LS1icy1hbGVydC1iZzojY2ZlMmZmOy0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiNiNmQ0ZmV9LmFsZXJ0LXByaW1hcnkgLmFsZXJ0LWxpbmt7Y29sb3I6IzA2MzU3YX0uYWxlcnQtc2Vjb25kYXJ5ey0tYnMtYWxlcnQtY29sb3I6IzQxNDY0YjstLWJzLWFsZXJ0LWJnOiNlMmUzZTU7LS1icy1hbGVydC1ib3JkZXItY29sb3I6I2QzZDZkOH0uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5re2NvbG9yOiMzNDM4M2N9LmFsZXJ0LXN1Y2Nlc3N7LS1icy1hbGVydC1jb2xvcjojMGY1MTMyOy0tYnMtYWxlcnQtYmc6I2QxZTdkZDstLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjojYmFkYmNjfS5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5re2NvbG9yOiMwYzQxMjh9LmFsZXJ0LWluZm97LS1icy1hbGVydC1jb2xvcjojMDU1MTYwOy0tYnMtYWxlcnQtYmc6I2NmZjRmYzstLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjojYjZlZmZifS5hbGVydC1pbmZvIC5hbGVydC1saW5re2NvbG9yOiMwNDQxNGR9LmFsZXJ0LXdhcm5pbmd7LS1icy1hbGVydC1jb2xvcjojNjY0ZDAzOy0tYnMtYWxlcnQtYmc6I2ZmZjNjZDstLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjojZmZlY2I1fS5hbGVydC13YXJuaW5nIC5hbGVydC1saW5re2NvbG9yOiM1MjNlMDJ9LmFsZXJ0LWRhbmdlcnstLWJzLWFsZXJ0LWNvbG9yOiM4NDIwMjk7LS1icy1hbGVydC1iZzojZjhkN2RhOy0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiNmNWMyYzd9LmFsZXJ0LWRhbmdlciAuYWxlcnQtbGlua3tjb2xvcjojNmExYTIxfS5hbGVydC1saWdodHstLWJzLWFsZXJ0LWNvbG9yOiM2MzY0NjQ7LS1icy1hbGVydC1iZzojZmVmZWZlOy0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiNmZGZkZmV9LmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5re2NvbG9yOiM0ZjUwNTB9LmFsZXJ0LWRhcmt7LS1icy1hbGVydC1jb2xvcjojMTQxNjE5Oy0tYnMtYWxlcnQtYmc6I2QzZDNkNDstLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjojYmNiZWJmfS5hbGVydC1kYXJrIC5hbGVydC1saW5re2NvbG9yOiMxMDEyMTR9QGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6MXJlbX19LnByb2dyZXNzey0tYnMtcHJvZ3Jlc3MtaGVpZ2h0OjFyZW07LS1icy1wcm9ncmVzcy1mb250LXNpemU6MC43NXJlbTstLWJzLXByb2dyZXNzLWJnOiNlOWVjZWY7LS1icy1wcm9ncmVzcy1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtcHJvZ3Jlc3MtYm94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7LS1icy1wcm9ncmVzcy1iYXItY29sb3I6I2ZmZjstLWJzLXByb2dyZXNzLWJhci1iZzojMGQ2ZWZkOy0tYnMtcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246d2lkdGggMC42cyBlYXNlO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6dmFyKC0tYnMtcHJvZ3Jlc3MtaGVpZ2h0KTtvdmVyZmxvdzpoaWRkZW47Zm9udC1zaXplOnZhcigtLWJzLXByb2dyZXNzLWZvbnQtc2l6ZSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1wcm9ncmVzcy1iZyk7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKX0ucHJvZ3Jlc3MtYmFye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47Y29sb3I6dmFyKC0tYnMtcHJvZ3Jlc3MtYmFyLWNvbG9yKTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1wcm9ncmVzcy1iYXItYmcpO3RyYW5zaXRpb246dmFyKC0tYnMtcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5wcm9ncmVzcy1iYXJ7dHJhbnNpdGlvbjpub25lfX0ucHJvZ3Jlc3MtYmFyLXN0cmlwZWR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtc2l6ZTp2YXIoLS1icy1wcm9ncmVzcy1oZWlnaHQpIHZhcigtLWJzLXByb2dyZXNzLWhlaWdodCl9LnByb2dyZXNzLWJhci1hbmltYXRlZHthbmltYXRpb246MXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5wcm9ncmVzcy1iYXItYW5pbWF0ZWR7YW5pbWF0aW9uOm5vbmV9fS5saXN0LWdyb3Vwey0tYnMtbGlzdC1ncm91cC1jb2xvcjojMjEyNTI5Oy0tYnMtbGlzdC1ncm91cC1iZzojZmZmOy0tYnMtbGlzdC1ncm91cC1ib3JkZXItY29sb3I6cmdiYSgwLCAwLCAwLCAwLjEyNSk7LS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aDoxcHg7LS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6MC4zNzVyZW07LS1icy1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OjFyZW07LS1icy1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OjAuNXJlbTstLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiM0OTUwNTc7LS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjojNDk1MDU3Oy0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6I2Y4ZjlmYTstLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjojMjEyNTI5Oy0tYnMtbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiNlOWVjZWY7LS1icy1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiM2Yzc1N2Q7LS1icy1saXN0LWdyb3VwLWRpc2FibGVkLWJnOiNmZmY7LS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjojZmZmOy0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYmc6IzBkNmVmZDstLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjojMGQ2ZWZkO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZy1sZWZ0OjA7bWFyZ2luLWJvdHRvbTowO2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKX0ubGlzdC1ncm91cC1udW1iZXJlZHtsaXN0LXN0eWxlLXR5cGU6bm9uZTtjb3VudGVyLXJlc2V0OnNlY3Rpb259Lmxpc3QtZ3JvdXAtbnVtYmVyZWQ+Lmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3Jle2NvbnRlbnQ6Y291bnRlcnMoc2VjdGlvbiwgIi4iKSAiLiAiO2NvdW50ZXItaW5jcmVtZW50OnNlY3Rpb259Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb257d2lkdGg6MTAwJTtjb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcik7dGV4dC1hbGlnbjppbmhlcml0fS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye3otaW5kZXg6MTtjb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyl9Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZle2NvbG9yOnZhcigtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpfS5saXN0LWdyb3VwLWl0ZW17cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOnZhcigtLWJzLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkpIHZhcigtLWJzLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXgpO2NvbG9yOnZhcigtLWJzLWxpc3QtZ3JvdXAtY29sb3IpO3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtbGlzdC1ncm91cC1iZyk7Ym9yZGVyOnZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcil9Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmluaGVyaXQ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6aW5oZXJpdH0ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6aW5oZXJpdDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmluaGVyaXR9Lmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwubGlzdC1ncm91cC1pdGVtOmRpc2FibGVke2NvbG9yOnZhcigtLWJzLWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWRpc2FibGVkLWJnKX0ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXt6LWluZGV4OjI7Y29sb3I6dmFyKC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYmcpO2JvcmRlci1jb2xvcjp2YXIoLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3IpfS5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbXtib3JkZXItdG9wLXdpZHRoOjB9Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOmNhbGMoLTEgKiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpO2JvcmRlci10b3Atd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpfS5saXN0LWdyb3VwLWhvcml6b250YWx7ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLXRvcDowfS5saXN0LWdyb3VwLWhvcml6b250YWw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVte2JvcmRlci10b3Atd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO2JvcmRlci1sZWZ0LXdpZHRoOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle21hcmdpbi1sZWZ0OmNhbGMoLTEgKiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpO2JvcmRlci1sZWZ0LXdpZHRoOnZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbXtmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLXRvcC13aWR0aDp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7Ym9yZGVyLWxlZnQtd2lkdGg6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLWxlZnQ6Y2FsYygtMSAqIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7Ym9yZGVyLWxlZnQtd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZHtmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLXRvcC13aWR0aDp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7Ym9yZGVyLWxlZnQtd2lkdGg6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLWxlZnQ6Y2FsYygtMSAqIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7Ym9yZGVyLWxlZnQtd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpfX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZ3tmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLXRvcC13aWR0aDp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7Ym9yZGVyLWxlZnQtd2lkdGg6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLWxlZnQ6Y2FsYygtMSAqIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7Ym9yZGVyLWxlZnQtd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5saXN0LWdyb3VwLWhvcml6b250YWwteGx7ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmV7bWFyZ2luLXRvcDowfS5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVte2JvcmRlci10b3Atd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO2JvcmRlci1sZWZ0LXdpZHRoOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle21hcmdpbi1sZWZ0OmNhbGMoLTEgKiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpO2JvcmRlci1sZWZ0LXdpZHRoOnZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKX19QG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KXsubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bHtmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5saXN0LWdyb3VwLWhvcml6b250YWwteHhsPi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bD4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tdG9wOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVte2JvcmRlci10b3Atd2lkdGg6dmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO2JvcmRlci1sZWZ0LXdpZHRoOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtLmFjdGl2ZXttYXJnaW4tbGVmdDpjYWxjKC0xICogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTtib3JkZXItbGVmdC13aWR0aDp2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCl9fS5saXN0LWdyb3VwLWZsdXNoe2JvcmRlci1yYWRpdXM6MH0ubGlzdC1ncm91cC1mbHVzaD4ubGlzdC1ncm91cC1pdGVte2JvcmRlci13aWR0aDowIDAgdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpfS5saXN0LWdyb3VwLWZsdXNoPi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXdpZHRoOjB9Lmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5e2NvbG9yOiMwODQyOTg7YmFja2dyb3VuZC1jb2xvcjojY2ZlMmZmfS5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2NvbG9yOiMwODQyOTg7YmFja2dyb3VuZC1jb2xvcjojYmFjYmU2fS5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzA4NDI5ODtib3JkZXItY29sb3I6IzA4NDI5OH0ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeXtjb2xvcjojNDE0NjRiO2JhY2tncm91bmQtY29sb3I6I2UyZTNlNX0ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7Y29sb3I6IzQxNDY0YjtiYWNrZ3JvdW5kLWNvbG9yOiNjYmNjY2V9Lmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM0MTQ2NGI7Ym9yZGVyLWNvbG9yOiM0MTQ2NGJ9Lmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNze2NvbG9yOiMwZjUxMzI7YmFja2dyb3VuZC1jb2xvcjojZDFlN2RkfS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2NvbG9yOiMwZjUxMzI7YmFja2dyb3VuZC1jb2xvcjojYmNkMGM3fS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzBmNTEzMjtib3JkZXItY29sb3I6IzBmNTEzMn0ubGlzdC1ncm91cC1pdGVtLWluZm97Y29sb3I6IzA1NTE2MDtiYWNrZ3JvdW5kLWNvbG9yOiNjZmY0ZmN9Lmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7Y29sb3I6IzA1NTE2MDtiYWNrZ3JvdW5kLWNvbG9yOiNiYWRjZTN9Lmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDU1MTYwO2JvcmRlci1jb2xvcjojMDU1MTYwfS5saXN0LWdyb3VwLWl0ZW0td2FybmluZ3tjb2xvcjojNjY0ZDAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjNjZH0ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojNjY0ZDAzO2JhY2tncm91bmQtY29sb3I6I2U2ZGJiOX0ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2NjRkMDM7Ym9yZGVyLWNvbG9yOiM2NjRkMDN9Lmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXJ7Y29sb3I6Izg0MjAyOTtiYWNrZ3JvdW5kLWNvbG9yOiNmOGQ3ZGF9Lmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2NvbG9yOiM4NDIwMjk7YmFja2dyb3VuZC1jb2xvcjojZGZjMmM0fS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojODQyMDI5O2JvcmRlci1jb2xvcjojODQyMDI5fS5saXN0LWdyb3VwLWl0ZW0tbGlnaHR7Y29sb3I6IzYzNjQ2NDtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmV9Lmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojNjM2NDY0O2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNX0ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojNjM2NDY0O2JvcmRlci1jb2xvcjojNjM2NDY0fS5saXN0LWdyb3VwLWl0ZW0tZGFya3tjb2xvcjojMTQxNjE5O2JhY2tncm91bmQtY29sb3I6I2QzZDNkNH0ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojMTQxNjE5O2JhY2tncm91bmQtY29sb3I6I2JlYmViZn0ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxNDE2MTk7Ym9yZGVyLWNvbG9yOiMxNDE2MTl9LmJ0bi1jbG9zZXtib3gtc2l6aW5nOmNvbnRlbnQtYm94O3dpZHRoOjFlbTtoZWlnaHQ6MWVtO3BhZGRpbmc6LjI1ZW0gLjI1ZW07Y29sb3I6IzAwMDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMDAwJyUzZSUzY3BhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLyUzZSUzYy9zdmclM2UiKSBjZW50ZXIvMWVtIGF1dG8gbm8tcmVwZWF0O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6LjM3NXJlbTtvcGFjaXR5Oi41fS5idG4tY2xvc2U6aG92ZXJ7Y29sb3I6IzAwMDt0ZXh0LWRlY29yYXRpb246bm9uZTtvcGFjaXR5Oi43NX0uYnRuLWNsb3NlOmZvY3Vze291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KTtvcGFjaXR5OjF9LmJ0bi1jbG9zZS5kaXNhYmxlZCwuYnRuLWNsb3NlOmRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO29wYWNpdHk6LjI1fS5idG4tY2xvc2Utd2hpdGV7ZmlsdGVyOmludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKX0udG9hc3R7LS1icy10b2FzdC16aW5kZXg6MTA5MDstLWJzLXRvYXN0LXBhZGRpbmcteDowLjc1cmVtOy0tYnMtdG9hc3QtcGFkZGluZy15OjAuNXJlbTstLWJzLXRvYXN0LXNwYWNpbmc6MS41cmVtOy0tYnMtdG9hc3QtbWF4LXdpZHRoOjM1MHB4Oy0tYnMtdG9hc3QtZm9udC1zaXplOjAuODc1cmVtOy0tYnMtdG9hc3QtY29sb3I6IDstLWJzLXRvYXN0LWJnOnJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7LS1icy10b2FzdC1ib3JkZXItd2lkdGg6MXB4Oy0tYnMtdG9hc3QtYm9yZGVyLWNvbG9yOnZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7LS1icy10b2FzdC1ib3JkZXItcmFkaXVzOjAuMzc1cmVtOy0tYnMtdG9hc3QtYm94LXNoYWRvdzowIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7LS1icy10b2FzdC1oZWFkZXItY29sb3I6IzZjNzU3ZDstLWJzLXRvYXN0LWhlYWRlci1iZzpyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpOy0tYnMtdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMDUpO3dpZHRoOnZhcigtLWJzLXRvYXN0LW1heC13aWR0aCk7bWF4LXdpZHRoOjEwMCU7Zm9udC1zaXplOnZhcigtLWJzLXRvYXN0LWZvbnQtc2l6ZSk7Y29sb3I6dmFyKC0tYnMtdG9hc3QtY29sb3IpO3BvaW50ZXItZXZlbnRzOmF1dG87YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy10b2FzdC1iZyk7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjp2YXIoLS1icy10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXRvYXN0LWJvcmRlci1jb2xvcik7Ym94LXNoYWRvdzp2YXIoLS1icy10b2FzdC1ib3gtc2hhZG93KTtib3JkZXItcmFkaXVzOnZhcigtLWJzLXRvYXN0LWJvcmRlci1yYWRpdXMpfS50b2FzdC5zaG93aW5ne29wYWNpdHk6MH0udG9hc3Q6bm90KC5zaG93KXtkaXNwbGF5Om5vbmV9LnRvYXN0LWNvbnRhaW5lcnstLWJzLXRvYXN0LXppbmRleDoxMDkwO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6dmFyKC0tYnMtdG9hc3QtemluZGV4KTt3aWR0aDotd2Via2l0LW1heC1jb250ZW50O3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnQ7bWF4LXdpZHRoOjEwMCU7cG9pbnRlci1ldmVudHM6bm9uZX0udG9hc3QtY29udGFpbmVyPjpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1ib3R0b206dmFyKC0tYnMtdG9hc3Qtc3BhY2luZyl9LnRvYXN0LWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6dmFyKC0tYnMtdG9hc3QtcGFkZGluZy15KSB2YXIoLS1icy10b2FzdC1wYWRkaW5nLXgpO2NvbG9yOnZhcigtLWJzLXRvYXN0LWhlYWRlci1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy10b2FzdC1oZWFkZXItYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXItYm90dG9tOnZhcigtLWJzLXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLWJzLXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tYnMtdG9hc3QtYm9yZGVyLXdpZHRoKSk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1icy10b2FzdC1ib3JkZXItcmFkaXVzKSAtIHZhcigtLWJzLXRvYXN0LWJvcmRlci13aWR0aCkpfS50b2FzdC1oZWFkZXIgLmJ0bi1jbG9zZXttYXJnaW4tcmlnaHQ6Y2FsYygtLjUgKiB2YXIoLS1icy10b2FzdC1wYWRkaW5nLXgpKTttYXJnaW4tbGVmdDp2YXIoLS1icy10b2FzdC1wYWRkaW5nLXgpfS50b2FzdC1ib2R5e3BhZGRpbmc6dmFyKC0tYnMtdG9hc3QtcGFkZGluZy14KTt3b3JkLXdyYXA6YnJlYWstd29yZH0ubW9kYWx7LS1icy1tb2RhbC16aW5kZXg6MTA1NTstLWJzLW1vZGFsLXdpZHRoOjUwMHB4Oy0tYnMtbW9kYWwtcGFkZGluZzoxcmVtOy0tYnMtbW9kYWwtbWFyZ2luOjAuNXJlbTstLWJzLW1vZGFsLWNvbG9yOiA7LS1icy1tb2RhbC1iZzojZmZmOy0tYnMtbW9kYWwtYm9yZGVyLWNvbG9yOnZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7LS1icy1tb2RhbC1ib3JkZXItd2lkdGg6MXB4Oy0tYnMtbW9kYWwtYm9yZGVyLXJhZGl1czowLjVyZW07LS1icy1tb2RhbC1ib3gtc2hhZG93OjAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTstLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXM6Y2FsYygwLjVyZW0gLSAxcHgpOy0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteDoxcmVtOy0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteToxcmVtOy0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmc6MXJlbSAxcmVtOy0tYnMtbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjp2YXIoLS1icy1ib3JkZXItY29sb3IpOy0tYnMtbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDoxcHg7LS1icy1tb2RhbC10aXRsZS1saW5lLWhlaWdodDoxLjU7LS1icy1tb2RhbC1mb290ZXItZ2FwOjAuNXJlbTstLWJzLW1vZGFsLWZvb3Rlci1iZzogOy0tYnMtbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjp2YXIoLS1icy1ib3JkZXItY29sb3IpOy0tYnMtbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDoxcHg7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3otaW5kZXg6dmFyKC0tYnMtbW9kYWwtemluZGV4KTtkaXNwbGF5Om5vbmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87b3V0bGluZTowfS5tb2RhbC1kaWFsb2d7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6YXV0bzttYXJnaW46dmFyKC0tYnMtbW9kYWwtbWFyZ2luKTtwb2ludGVyLWV2ZW50czpub25lfS5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2d7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O3RyYW5zZm9ybTp0cmFuc2xhdGUoMCwtNTBweCl9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZ3t0cmFuc2l0aW9uOm5vbmV9fS5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2d7dHJhbnNmb3JtOm5vbmV9Lm1vZGFsLm1vZGFsLXN0YXRpYyAubW9kYWwtZGlhbG9ne3RyYW5zZm9ybTpzY2FsZSgxLjAyKX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGV7aGVpZ2h0OmNhbGMoMTAwJSAtIHZhcigtLWJzLW1vZGFsLW1hcmdpbikgKiAyKX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnR7bWF4LWhlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbn0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfS5tb2RhbC1kaWFsb2ctY2VudGVyZWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjttaW4taGVpZ2h0OmNhbGMoMTAwJSAtIHZhcigtLWJzLW1vZGFsLW1hcmdpbikgKiAyKX0ubW9kYWwtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3dpZHRoOjEwMCU7Y29sb3I6dmFyKC0tYnMtbW9kYWwtY29sb3IpO3BvaW50ZXItZXZlbnRzOmF1dG87YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1tb2RhbC1iZyk7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjp2YXIoLS1icy1tb2RhbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW1vZGFsLWJvcmRlci1jb2xvcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1tb2RhbC1ib3JkZXItcmFkaXVzKTtvdXRsaW5lOjB9Lm1vZGFsLWJhY2tkcm9wey0tYnMtYmFja2Ryb3AtemluZGV4OjEwNTA7LS1icy1iYWNrZHJvcC1iZzojMDAwOy0tYnMtYmFja2Ryb3Atb3BhY2l0eTowLjU7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3otaW5kZXg6dmFyKC0tYnMtYmFja2Ryb3AtemluZGV4KTt3aWR0aDoxMDB2dztoZWlnaHQ6MTAwdmg7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1iYWNrZHJvcC1iZyl9Lm1vZGFsLWJhY2tkcm9wLmZhZGV7b3BhY2l0eTowfS5tb2RhbC1iYWNrZHJvcC5zaG93e29wYWNpdHk6dmFyKC0tYnMtYmFja2Ryb3Atb3BhY2l0eSl9Lm1vZGFsLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1zaHJpbms6MDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzp2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZyk7Ym9yZGVyLWJvdHRvbTp2YXIoLS1icy1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yKTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOnZhcigtLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOnZhcigtLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpfS5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZXtwYWRkaW5nOmNhbGModmFyKC0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy14KSAqIC41KTttYXJnaW46Y2FsYygtLjUgKiB2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgY2FsYygtLjUgKiB2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgYXV0b30ubW9kYWwtdGl0bGV7bWFyZ2luLWJvdHRvbTowO2xpbmUtaGVpZ2h0OnZhcigtLWJzLW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KX0ubW9kYWwtYm9keXtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4OjEgMSBhdXRvO3BhZGRpbmc6dmFyKC0tYnMtbW9kYWwtcGFkZGluZyl9Lm1vZGFsLWZvb3RlcntkaXNwbGF5OmZsZXg7ZmxleC1zaHJpbms6MDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3BhZGRpbmc6Y2FsYyh2YXIoLS1icy1tb2RhbC1wYWRkaW5nKSAtIHZhcigtLWJzLW1vZGFsLWZvb3Rlci1nYXApICogLjUpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtbW9kYWwtZm9vdGVyLWJnKTtib3JkZXItdG9wOnZhcigtLWJzLW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOnZhcigtLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6dmFyKC0tYnMtbW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cyl9Lm1vZGFsLWZvb3Rlcj4qe21hcmdpbjpjYWxjKHZhcigtLWJzLW1vZGFsLWZvb3Rlci1nYXApICogLjUpfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsubW9kYWx7LS1icy1tb2RhbC1tYXJnaW46MS43NXJlbTstLWJzLW1vZGFsLWJveC1zaGFkb3c6MCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpfS5tb2RhbC1kaWFsb2d7bWF4LXdpZHRoOnZhcigtLWJzLW1vZGFsLXdpZHRoKTttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfS5tb2RhbC1zbXstLWJzLW1vZGFsLXdpZHRoOjMwMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7Lm1vZGFsLWxnLC5tb2RhbC14bHstLWJzLW1vZGFsLXdpZHRoOjgwMHB4fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5tb2RhbC14bHstLWJzLW1vZGFsLXdpZHRoOjExNDBweH19Lm1vZGFsLWZ1bGxzY3JlZW57d2lkdGg6MTAwdnc7bWF4LXdpZHRoOm5vbmU7aGVpZ2h0OjEwMCU7bWFyZ2luOjB9Lm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWNvbnRlbnR7aGVpZ2h0OjEwMCU7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowfS5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1mb290ZXIsLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWhlYWRlcntib3JkZXItcmFkaXVzOjB9Lm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3due3dpZHRoOjEwMHZ3O21heC13aWR0aDpub25lO2hlaWdodDoxMDAlO21hcmdpbjowfS5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWNvbnRlbnR7aGVpZ2h0OjEwMCU7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowfS5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWZvb3RlciwubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1oZWFkZXJ7Ym9yZGVyLXJhZGl1czowfS5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7Lm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93bnt3aWR0aDoxMDB2dzttYXgtd2lkdGg6bm9uZTtoZWlnaHQ6MTAwJTttYXJnaW46MH0ubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1jb250ZW50e2hlaWdodDoxMDAlO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MH0ubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1mb290ZXIsLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtaGVhZGVye2JvcmRlci1yYWRpdXM6MH0ubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1ib2R5e292ZXJmbG93LXk6YXV0b319QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd257d2lkdGg6MTAwdnc7bWF4LXdpZHRoOm5vbmU7aGVpZ2h0OjEwMCU7bWFyZ2luOjB9Lm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtY29udGVudHtoZWlnaHQ6MTAwJTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjB9Lm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtZm9vdGVyLC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWhlYWRlcntib3JkZXItcmFkaXVzOjB9Lm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtYm9keXtvdmVyZmxvdy15OmF1dG99fUBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCl7Lm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93bnt3aWR0aDoxMDB2dzttYXgtd2lkdGg6bm9uZTtoZWlnaHQ6MTAwJTttYXJnaW46MH0ubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1jb250ZW50e2hlaWdodDoxMDAlO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MH0ubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1mb290ZXIsLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtaGVhZGVye2JvcmRlci1yYWRpdXM6MH0ubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1ib2R5e292ZXJmbG93LXk6YXV0b319QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93bnt3aWR0aDoxMDB2dzttYXgtd2lkdGg6bm9uZTtoZWlnaHQ6MTAwJTttYXJnaW46MH0ubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtY29udGVudHtoZWlnaHQ6MTAwJTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjB9Lm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWZvb3RlciwubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtaGVhZGVye2JvcmRlci1yYWRpdXM6MH0ubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtYm9keXtvdmVyZmxvdy15OmF1dG99fS50b29sdGlwey0tYnMtdG9vbHRpcC16aW5kZXg6MTA4MDstLWJzLXRvb2x0aXAtbWF4LXdpZHRoOjIwMHB4Oy0tYnMtdG9vbHRpcC1wYWRkaW5nLXg6MC41cmVtOy0tYnMtdG9vbHRpcC1wYWRkaW5nLXk6MC4yNXJlbTstLWJzLXRvb2x0aXAtbWFyZ2luOiA7LS1icy10b29sdGlwLWZvbnQtc2l6ZTowLjg3NXJlbTstLWJzLXRvb2x0aXAtY29sb3I6I2ZmZjstLWJzLXRvb2x0aXAtYmc6IzAwMDstLWJzLXRvb2x0aXAtYm9yZGVyLXJhZGl1czowLjM3NXJlbTstLWJzLXRvb2x0aXAtb3BhY2l0eTowLjk7LS1icy10b29sdGlwLWFycm93LXdpZHRoOjAuOHJlbTstLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0OjAuNHJlbTt6LWluZGV4OnZhcigtLWJzLXRvb2x0aXAtemluZGV4KTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6dmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpO21hcmdpbjp2YXIoLS1icy10b29sdGlwLW1hcmdpbik7Zm9udC1mYW1pbHk6dmFyKC0tYnMtZm9udC1zYW5zLXNlcmlmKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O3RleHQtYWxpZ246bGVmdDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93Om5vbmU7dGV4dC10cmFuc2Zvcm06bm9uZTtsZXR0ZXItc3BhY2luZzpub3JtYWw7d29yZC1icmVhazpub3JtYWw7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzpub3JtYWw7bGluZS1icmVhazphdXRvO2ZvbnQtc2l6ZTp2YXIoLS1icy10b29sdGlwLWZvbnQtc2l6ZSk7d29yZC13cmFwOmJyZWFrLXdvcmQ7b3BhY2l0eTowfS50b29sdGlwLnNob3d7b3BhY2l0eTp2YXIoLS1icy10b29sdGlwLW9wYWNpdHkpfS50b29sdGlwIC50b29sdGlwLWFycm93e2Rpc3BsYXk6YmxvY2s7d2lkdGg6dmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCk7aGVpZ2h0OnZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KX0udG9vbHRpcCAudG9vbHRpcC1hcnJvdzo6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2NvbnRlbnQ6IiI7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZH0uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdywuYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3d7Ym90dG9tOjB9LmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwuYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZXt0b3A6LTFweDtib3JkZXItd2lkdGg6dmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDtib3JkZXItdG9wLWNvbG9yOnZhcigtLWJzLXRvb2x0aXAtYmcpfS5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3csLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93e2xlZnQ6MDt3aWR0aDp2YXIoLS1icy10b29sdGlwLWFycm93LWhlaWdodCk7aGVpZ2h0OnZhcigtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGgpfS5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwuYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZXtyaWdodDotMXB4O2JvcmRlci13aWR0aDpjYWxjKHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7Ym9yZGVyLXJpZ2h0LWNvbG9yOnZhcigtLWJzLXRvb2x0aXAtYmcpfS5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93LC5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvd3t0b3A6MH0uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLC5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdzo6YmVmb3Jle2JvdHRvbTotMXB4O2JvcmRlci13aWR0aDowIGNhbGModmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tYnMtdG9vbHRpcC1iZyl9LmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93LC5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93e3JpZ2h0OjA7d2lkdGg6dmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpO2hlaWdodDp2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKX0uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwuYnMtdG9vbHRpcC1zdGFydCAudG9vbHRpcC1hcnJvdzo6YmVmb3Jle2xlZnQ6LTFweDtib3JkZXItd2lkdGg6Y2FsYyh2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWJzLXRvb2x0aXAtYmcpfS50b29sdGlwLWlubmVye21heC13aWR0aDp2YXIoLS1icy10b29sdGlwLW1heC13aWR0aCk7cGFkZGluZzp2YXIoLS1icy10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tYnMtdG9vbHRpcC1wYWRkaW5nLXgpO2NvbG9yOnZhcigtLWJzLXRvb2x0aXAtY29sb3IpO3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtdG9vbHRpcC1iZyk7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy10b29sdGlwLWJvcmRlci1yYWRpdXMpfS5wb3BvdmVyey0tYnMtcG9wb3Zlci16aW5kZXg6MTA3MDstLWJzLXBvcG92ZXItbWF4LXdpZHRoOjI3NnB4Oy0tYnMtcG9wb3Zlci1mb250LXNpemU6MC44NzVyZW07LS1icy1wb3BvdmVyLWJnOiNmZmY7LS1icy1wb3BvdmVyLWJvcmRlci13aWR0aDoxcHg7LS1icy1wb3BvdmVyLWJvcmRlci1jb2xvcjp2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpOy0tYnMtcG9wb3Zlci1ib3JkZXItcmFkaXVzOjAuNXJlbTstLWJzLXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czpjYWxjKDAuNXJlbSAtIDFweCk7LS1icy1wb3BvdmVyLWJveC1zaGFkb3c6MCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpOy0tYnMtcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OjFyZW07LS1icy1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6MC41cmVtOy0tYnMtcG9wb3Zlci1oZWFkZXItZm9udC1zaXplOjFyZW07LS1icy1wb3BvdmVyLWhlYWRlci1jb2xvcjogOy0tYnMtcG9wb3Zlci1oZWFkZXItYmc6I2YwZjBmMDstLWJzLXBvcG92ZXItYm9keS1wYWRkaW5nLXg6MXJlbTstLWJzLXBvcG92ZXItYm9keS1wYWRkaW5nLXk6MXJlbTstLWJzLXBvcG92ZXItYm9keS1jb2xvcjojMjEyNTI5Oy0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aDoxcmVtOy0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQ6MC41cmVtOy0tYnMtcG9wb3Zlci1hcnJvdy1ib3JkZXI6dmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItY29sb3IpO3otaW5kZXg6dmFyKC0tYnMtcG9wb3Zlci16aW5kZXgpO2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOnZhcigtLWJzLXBvcG92ZXItbWF4LXdpZHRoKTtmb250LWZhbWlseTp2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7dGV4dC1hbGlnbjpsZWZ0O3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO2xldHRlci1zcGFjaW5nOm5vcm1hbDt3b3JkLWJyZWFrOm5vcm1hbDt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC1zcGFjaW5nOm5vcm1hbDtsaW5lLWJyZWFrOmF1dG87Zm9udC1zaXplOnZhcigtLWJzLXBvcG92ZXItZm9udC1zaXplKTt3b3JkLXdyYXA6YnJlYWstd29yZDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLXBvcG92ZXItYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6dmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLWNvbG9yKTtib3JkZXItcmFkaXVzOnZhcigtLWJzLXBvcG92ZXItYm9yZGVyLXJhZGl1cyl9LnBvcG92ZXIgLnBvcG92ZXItYXJyb3d7ZGlzcGxheTpibG9jazt3aWR0aDp2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKTtoZWlnaHQ6dmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQpfS5wb3BvdmVyIC5wb3BvdmVyLWFycm93OjphZnRlciwucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7Y29udGVudDoiIjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdPi5wb3BvdmVyLWFycm93LC5icy1wb3BvdmVyLXRvcD4ucG9wb3Zlci1hcnJvd3tib3R0b206Y2FsYygtMSAqICh2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpKX0uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXT4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSwuYnMtcG9wb3Zlci10b3A+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLXRvcD4ucG9wb3Zlci1hcnJvdzo6YmVmb3Jle2JvcmRlci13aWR0aDp2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdPi5wb3BvdmVyLWFycm93OjpiZWZvcmUsLmJzLXBvcG92ZXItdG9wPi5wb3BvdmVyLWFycm93OjpiZWZvcmV7Ym90dG9tOjA7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1icy1wb3BvdmVyLWFycm93LWJvcmRlcil9LmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLXRvcD4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXJ7Ym90dG9tOnZhcigtLWJzLXBvcG92ZXItYm9yZGVyLXdpZHRoKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWJzLXBvcG92ZXItYmcpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0+LnBvcG92ZXItYXJyb3csLmJzLXBvcG92ZXItZW5kPi5wb3BvdmVyLWFycm93e2xlZnQ6Y2FsYygtMSAqICh2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpKTt3aWR0aDp2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCk7aGVpZ2h0OnZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSwuYnMtcG9wb3Zlci1lbmQ+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLWVuZD4ucG9wb3Zlci1hcnJvdzo6YmVmb3Jle2JvcmRlci13aWR0aDpjYWxjKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDB9LmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XT4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlLC5icy1wb3BvdmVyLWVuZD4ucG9wb3Zlci1hcnJvdzo6YmVmb3Jle2xlZnQ6MDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1ib3JkZXIpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLWVuZD4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXJ7bGVmdDp2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCk7Ym9yZGVyLXJpZ2h0LWNvbG9yOnZhcigtLWJzLXBvcG92ZXItYmcpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dPi5wb3BvdmVyLWFycm93LC5icy1wb3BvdmVyLWJvdHRvbT4ucG9wb3Zlci1hcnJvd3t0b3A6Y2FsYygtMSAqICh2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpKX0uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXT4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSwuYnMtcG9wb3Zlci1ib3R0b20+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLWJvdHRvbT4ucG9wb3Zlci1hcnJvdzo6YmVmb3Jle2JvcmRlci13aWR0aDowIGNhbGModmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dPi5wb3BvdmVyLWFycm93OjpiZWZvcmUsLmJzLXBvcG92ZXItYm90dG9tPi5wb3BvdmVyLWFycm93OjpiZWZvcmV7dG9wOjA7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1icy1wb3BvdmVyLWFycm93LWJvcmRlcil9LmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLC5icy1wb3BvdmVyLWJvdHRvbT4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXJ7dG9wOnZhcigtLWJzLXBvcG92ZXItYm9yZGVyLXdpZHRoKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLWJzLXBvcG92ZXItYmcpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLC5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjUwJTtkaXNwbGF5OmJsb2NrO3dpZHRoOnZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpO21hcmdpbi1sZWZ0OmNhbGMoLS41ICogdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCkpO2NvbnRlbnQ6IiI7Ym9yZGVyLWJvdHRvbTp2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtcG9wb3Zlci1oZWFkZXItYmcpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XT4ucG9wb3Zlci1hcnJvdywuYnMtcG9wb3Zlci1zdGFydD4ucG9wb3Zlci1hcnJvd3tyaWdodDpjYWxjKC0xICogKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCkpO3dpZHRoOnZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtoZWlnaHQ6dmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCl9LmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdPi5wb3BvdmVyLWFycm93OjphZnRlciwuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSwuYnMtcG9wb3Zlci1zdGFydD4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsLmJzLXBvcG92ZXItc3RhcnQ+LnBvcG92ZXItYXJyb3c6OmJlZm9yZXtib3JkZXItd2lkdGg6Y2FsYyh2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQpfS5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XT4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlLC5icy1wb3BvdmVyLXN0YXJ0Pi5wb3BvdmVyLWFycm93OjpiZWZvcmV7cmlnaHQ6MDtib3JkZXItbGVmdC1jb2xvcjp2YXIoLS1icy1wb3BvdmVyLWFycm93LWJvcmRlcil9LmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdPi5wb3BvdmVyLWFycm93OjphZnRlciwuYnMtcG9wb3Zlci1zdGFydD4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXJ7cmlnaHQ6dmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWJzLXBvcG92ZXItYmcpfS5wb3BvdmVyLWhlYWRlcntwYWRkaW5nOnZhcigtLWJzLXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tYnMtcG9wb3Zlci1oZWFkZXItcGFkZGluZy14KTttYXJnaW4tYm90dG9tOjA7Zm9udC1zaXplOnZhcigtLWJzLXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSk7Y29sb3I6dmFyKC0tYnMtcG9wb3Zlci1oZWFkZXItY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtcG9wb3Zlci1oZWFkZXItYmcpO2JvcmRlci1ib3R0b206dmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLWNvbG9yKTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOnZhcigtLWJzLXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKX0ucG9wb3Zlci1oZWFkZXI6ZW1wdHl7ZGlzcGxheTpub25lfS5wb3BvdmVyLWJvZHl7cGFkZGluZzp2YXIoLS1icy1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS1icy1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtjb2xvcjp2YXIoLS1icy1wb3BvdmVyLWJvZHktY29sb3IpfS5jYXJvdXNlbHtwb3NpdGlvbjpyZWxhdGl2ZX0uY2Fyb3VzZWwucG9pbnRlci1ldmVudHt0b3VjaC1hY3Rpb246cGFuLXl9LmNhcm91c2VsLWlubmVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS5jYXJvdXNlbC1pbm5lcjo6YWZ0ZXJ7ZGlzcGxheTpibG9jaztjbGVhcjpib3RoO2NvbnRlbnQ6IiJ9LmNhcm91c2VsLWl0ZW17cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpub25lO2Zsb2F0OmxlZnQ7d2lkdGg6MTAwJTttYXJnaW4tcmlnaHQ6LTEwMCU7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNnMgZWFzZS1pbi1vdXR9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNhcm91c2VsLWl0ZW17dHJhbnNpdGlvbjpub25lfX0uY2Fyb3VzZWwtaXRlbS1uZXh0LC5jYXJvdXNlbC1pdGVtLXByZXYsLmNhcm91c2VsLWl0ZW0uYWN0aXZle2Rpc3BsYXk6YmxvY2t9LmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCwuY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCl7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9LmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LC5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCl7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfS5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVte29wYWNpdHk6MDt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNmb3JtOm5vbmV9LmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LC5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQsLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZle3otaW5kZXg6MTtvcGFjaXR5OjF9LmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCwuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnR7ei1pbmRleDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgMHMgLjZzfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQsLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0e3RyYW5zaXRpb246bm9uZX19LmNhcm91c2VsLWNvbnRyb2wtbmV4dCwuY2Fyb3VzZWwtY29udHJvbC1wcmV2e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO3otaW5kZXg6MTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTUlO3BhZGRpbmc6MDtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQ6MCAwO2JvcmRlcjowO29wYWNpdHk6LjU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuY2Fyb3VzZWwtY29udHJvbC1uZXh0LC5jYXJvdXNlbC1jb250cm9sLXByZXZ7dHJhbnNpdGlvbjpub25lfX0uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmZvY3VzLC5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cywuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVye2NvbG9yOiNmZmY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7b3V0bGluZTowO29wYWNpdHk6Ljl9LmNhcm91c2VsLWNvbnRyb2wtcHJldntsZWZ0OjB9LmNhcm91c2VsLWNvbnRyb2wtbmV4dHtyaWdodDowfS5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiwuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJX0uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyM2ZmZiclM2UlM2NwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvJTNlJTNjL3N2ZyUzZSIpfS5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmJyUzZSUzY3BhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZSIpfS5jYXJvdXNlbC1pbmRpY2F0b3Jze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6MjtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjA7bWFyZ2luLXJpZ2h0OjE1JTttYXJnaW4tYm90dG9tOjFyZW07bWFyZ2luLWxlZnQ6MTUlO2xpc3Qtc3R5bGU6bm9uZX0uY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRde2JveC1zaXppbmc6Y29udGVudC1ib3g7ZmxleDowIDEgYXV0bzt3aWR0aDozMHB4O2hlaWdodDozcHg7cGFkZGluZzowO21hcmdpbi1yaWdodDozcHg7bWFyZ2luLWxlZnQ6M3B4O3RleHQtaW5kZW50Oi05OTlweDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjowO2JvcmRlci10b3A6MTBweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjEwcHggc29saWQgdHJhbnNwYXJlbnQ7b3BhY2l0eTouNTt0cmFuc2l0aW9uOm9wYWNpdHkgLjZzIGVhc2V9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XXt0cmFuc2l0aW9uOm5vbmV9fS5jYXJvdXNlbC1pbmRpY2F0b3JzIC5hY3RpdmV7b3BhY2l0eToxfS5jYXJvdXNlbC1jYXB0aW9ue3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE1JTtib3R0b206MS4yNXJlbTtsZWZ0OjE1JTtwYWRkaW5nLXRvcDoxLjI1cmVtO3BhZGRpbmctYm90dG9tOjEuMjVyZW07Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcn0uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24sLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29ue2ZpbHRlcjppbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCl9LmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9LmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNhcHRpb257Y29sb3I6IzAwMH0uc3Bpbm5lci1ib3JkZXIsLnNwaW5uZXItZ3Jvd3tkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDp2YXIoLS1icy1zcGlubmVyLXdpZHRoKTtoZWlnaHQ6dmFyKC0tYnMtc3Bpbm5lci1oZWlnaHQpO3ZlcnRpY2FsLWFsaWduOnZhcigtLWJzLXNwaW5uZXItdmVydGljYWwtYWxpZ24pO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp2YXIoLS1icy1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZCkgbGluZWFyIGluZmluaXRlIHZhcigtLWJzLXNwaW5uZXItYW5pbWF0aW9uLW5hbWUpfUBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXJ7dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uc3Bpbm5lci1ib3JkZXJ7LS1icy1zcGlubmVyLXdpZHRoOjJyZW07LS1icy1zcGlubmVyLWhlaWdodDoycmVtOy0tYnMtc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjotMC4xMjVlbTstLWJzLXNwaW5uZXItYm9yZGVyLXdpZHRoOjAuMjVlbTstLWJzLXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOjAuNzVzOy0tYnMtc3Bpbm5lci1hbmltYXRpb24tbmFtZTpzcGlubmVyLWJvcmRlcjtib3JkZXI6dmFyKC0tYnMtc3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtib3JkZXItcmlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LnNwaW5uZXItYm9yZGVyLXNtey0tYnMtc3Bpbm5lci13aWR0aDoxcmVtOy0tYnMtc3Bpbm5lci1oZWlnaHQ6MXJlbTstLWJzLXNwaW5uZXItYm9yZGVyLXdpZHRoOjAuMmVtfUBrZXlmcmFtZXMgc3Bpbm5lci1ncm93ezAle3RyYW5zZm9ybTpzY2FsZSgwKX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0uc3Bpbm5lci1ncm93ey0tYnMtc3Bpbm5lci13aWR0aDoycmVtOy0tYnMtc3Bpbm5lci1oZWlnaHQ6MnJlbTstLWJzLXNwaW5uZXItdmVydGljYWwtYWxpZ246LTAuMTI1ZW07LS1icy1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDowLjc1czstLWJzLXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6c3Bpbm5lci1ncm93O2JhY2tncm91bmQtY29sb3I6Y3VycmVudGNvbG9yO29wYWNpdHk6MH0uc3Bpbm5lci1ncm93LXNtey0tYnMtc3Bpbm5lci13aWR0aDoxcmVtOy0tYnMtc3Bpbm5lci1oZWlnaHQ6MXJlbX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuc3Bpbm5lci1ib3JkZXIsLnNwaW5uZXItZ3Jvd3stLWJzLXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOjEuNXN9fS5vZmZjYW52YXMsLm9mZmNhbnZhcy1sZywub2ZmY2FudmFzLW1kLC5vZmZjYW52YXMtc20sLm9mZmNhbnZhcy14bCwub2ZmY2FudmFzLXh4bHstLWJzLW9mZmNhbnZhcy16aW5kZXg6MTA0NTstLWJzLW9mZmNhbnZhcy13aWR0aDo0MDBweDstLWJzLW9mZmNhbnZhcy1oZWlnaHQ6MzB2aDstLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXg6MXJlbTstLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXk6MXJlbTstLWJzLW9mZmNhbnZhcy1jb2xvcjogOy0tYnMtb2ZmY2FudmFzLWJnOiNmZmY7LS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOjFweDstLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3I6dmFyKC0tYnMtYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTstLWJzLW9mZmNhbnZhcy1ib3gtc2hhZG93OjAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7Lm9mZmNhbnZhcy1zbXtwb3NpdGlvbjpmaXhlZDtib3R0b206MDt6LWluZGV4OnZhcigtLWJzLW9mZmNhbnZhcy16aW5kZXgpO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWF4LXdpZHRoOjEwMCU7Y29sb3I6dmFyKC0tYnMtb2ZmY2FudmFzLWNvbG9yKTt2aXNpYmlsaXR5OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJzLW9mZmNhbnZhcy1iZyk7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O291dGxpbmU6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXR9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsub2ZmY2FudmFzLXNte3RyYW5zaXRpb246bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpey5vZmZjYW52YXMtc20ub2ZmY2FudmFzLXN0YXJ0e3RvcDowO2xlZnQ6MDt3aWR0aDp2YXIoLS1icy1vZmZjYW52YXMtd2lkdGgpO2JvcmRlci1yaWdodDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy1lbmR7dG9wOjA7cmlnaHQ6MDt3aWR0aDp2YXIoLS1icy1vZmZjYW52YXMtd2lkdGgpO2JvcmRlci1sZWZ0OnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7Lm9mZmNhbnZhcy1zbS5vZmZjYW52YXMtdG9we3RvcDowO3JpZ2h0OjA7bGVmdDowO2hlaWdodDp2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTttYXgtaGVpZ2h0OjEwMCU7Ym9yZGVyLWJvdHRvbTp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy1ib3R0b217cmlnaHQ6MDtsZWZ0OjA7aGVpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO21heC1oZWlnaHQ6MTAwJTtib3JkZXItdG9wOnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfX1AbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCl7Lm9mZmNhbnZhcy1zbS5zaG93Om5vdCguaGlkaW5nKSwub2ZmY2FudmFzLXNtLnNob3dpbmd7dHJhbnNmb3JtOm5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsub2ZmY2FudmFzLXNtLmhpZGluZywub2ZmY2FudmFzLXNtLnNob3csLm9mZmNhbnZhcy1zbS5zaG93aW5ne3Zpc2liaWxpdHk6dmlzaWJsZX19QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5vZmZjYW52YXMtc217LS1icy1vZmZjYW52YXMtaGVpZ2h0OmF1dG87LS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOjA7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm9mZmNhbnZhcy1zbSAub2ZmY2FudmFzLWhlYWRlcntkaXNwbGF5Om5vbmV9Lm9mZmNhbnZhcy1zbSAub2ZmY2FudmFzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZ3JvdzowO3BhZGRpbmc6MDtvdmVyZmxvdy15OnZpc2libGU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsub2ZmY2FudmFzLW1ke3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3otaW5kZXg6dmFyKC0tYnMtb2ZmY2FudmFzLXppbmRleCk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXgtd2lkdGg6MTAwJTtjb2xvcjp2YXIoLS1icy1vZmZjYW52YXMtY29sb3IpO3Zpc2liaWxpdHk6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtb2ZmY2FudmFzLWJnKTtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7b3V0bGluZTowO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBlYXNlLWluLW91dH19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5vZmZjYW52YXMtbWR7dHJhbnNpdGlvbjpub25lfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7Lm9mZmNhbnZhcy1tZC5vZmZjYW52YXMtc3RhcnR7dG9wOjA7bGVmdDowO3dpZHRoOnZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7Ym9yZGVyLXJpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5vZmZjYW52YXMtbWQub2ZmY2FudmFzLWVuZHt0b3A6MDtyaWdodDowO3dpZHRoOnZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7Ym9yZGVyLWxlZnQ6dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsub2ZmY2FudmFzLW1kLm9mZmNhbnZhcy10b3B7dG9wOjA7cmlnaHQ6MDtsZWZ0OjA7aGVpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO21heC1oZWlnaHQ6MTAwJTtib3JkZXItYm90dG9tOnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5vZmZjYW52YXMtbWQub2ZmY2FudmFzLWJvdHRvbXtyaWdodDowO2xlZnQ6MDtoZWlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7bWF4LWhlaWdodDoxMDAlO2JvcmRlci10b3A6dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KXsub2ZmY2FudmFzLW1kLnNob3c6bm90KC5oaWRpbmcpLC5vZmZjYW52YXMtbWQuc2hvd2luZ3t0cmFuc2Zvcm06bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey5vZmZjYW52YXMtbWQuaGlkaW5nLC5vZmZjYW52YXMtbWQuc2hvdywub2ZmY2FudmFzLW1kLnNob3dpbmd7dmlzaWJpbGl0eTp2aXNpYmxlfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lm9mZmNhbnZhcy1tZHstLWJzLW9mZmNhbnZhcy1oZWlnaHQ6YXV0bzstLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0ub2ZmY2FudmFzLW1kIC5vZmZjYW52YXMtaGVhZGVye2Rpc3BsYXk6bm9uZX0ub2ZmY2FudmFzLW1kIC5vZmZjYW52YXMtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1ncm93OjA7cGFkZGluZzowO292ZXJmbG93LXk6dmlzaWJsZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5vZmZjYW52YXMtbGd7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7ei1pbmRleDp2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO2NvbG9yOnZhcigtLWJzLW9mZmNhbnZhcy1jb2xvcik7dmlzaWJpbGl0eTpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1vZmZjYW52YXMtYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtvdXRsaW5lOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0fX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCkgYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm9mZmNhbnZhcy1sZ3t0cmFuc2l0aW9uOm5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KXsub2ZmY2FudmFzLWxnLm9mZmNhbnZhcy1zdGFydHt0b3A6MDtsZWZ0OjA7d2lkdGg6dmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtib3JkZXItcmlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7Lm9mZmNhbnZhcy1sZy5vZmZjYW52YXMtZW5ke3RvcDowO3JpZ2h0OjA7d2lkdGg6dmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtib3JkZXItbGVmdDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5vZmZjYW52YXMtbGcub2ZmY2FudmFzLXRvcHt0b3A6MDtyaWdodDowO2xlZnQ6MDtoZWlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1ib3R0b206dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwMCUpfX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7Lm9mZmNhbnZhcy1sZy5vZmZjYW52YXMtYm90dG9te3JpZ2h0OjA7bGVmdDowO2hlaWdodDp2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTttYXgtaGVpZ2h0OjEwMCU7Ym9yZGVyLXRvcDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5vZmZjYW52YXMtbGcuc2hvdzpub3QoLmhpZGluZyksLm9mZmNhbnZhcy1sZy5zaG93aW5ne3RyYW5zZm9ybTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7Lm9mZmNhbnZhcy1sZy5oaWRpbmcsLm9mZmNhbnZhcy1sZy5zaG93LC5vZmZjYW52YXMtbGcuc2hvd2luZ3t2aXNpYmlsaXR5OnZpc2libGV9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsub2ZmY2FudmFzLWxney0tYnMtb2ZmY2FudmFzLWhlaWdodDphdXRvOy0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDowO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5vZmZjYW52YXMtbGcgLm9mZmNhbnZhcy1oZWFkZXJ7ZGlzcGxheTpub25lfS5vZmZjYW52YXMtbGcgLm9mZmNhbnZhcy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MDtwYWRkaW5nOjA7b3ZlcmZsb3cteTp2aXNpYmxlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey5vZmZjYW52YXMteGx7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7ei1pbmRleDp2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO2NvbG9yOnZhcigtLWJzLW9mZmNhbnZhcy1jb2xvcik7dmlzaWJpbGl0eTpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1vZmZjYW52YXMtYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtvdXRsaW5lOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0fX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5vZmZjYW52YXMteGx7dHJhbnNpdGlvbjpub25lfX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey5vZmZjYW52YXMteGwub2ZmY2FudmFzLXN0YXJ0e3RvcDowO2xlZnQ6MDt3aWR0aDp2YXIoLS1icy1vZmZjYW52YXMtd2lkdGgpO2JvcmRlci1yaWdodDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCl7Lm9mZmNhbnZhcy14bC5vZmZjYW52YXMtZW5ke3RvcDowO3JpZ2h0OjA7d2lkdGg6dmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtib3JkZXItbGVmdDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6MTE5OS45OHB4KXsub2ZmY2FudmFzLXhsLm9mZmNhbnZhcy10b3B7dG9wOjA7cmlnaHQ6MDtsZWZ0OjA7aGVpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO21heC1oZWlnaHQ6MTAwJTtib3JkZXItYm90dG9tOnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6MTE5OS45OHB4KXsub2ZmY2FudmFzLXhsLm9mZmNhbnZhcy1ib3R0b217cmlnaHQ6MDtsZWZ0OjA7aGVpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO21heC1oZWlnaHQ6MTAwJTtib3JkZXItdG9wOnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey5vZmZjYW52YXMteGwuc2hvdzpub3QoLmhpZGluZyksLm9mZmNhbnZhcy14bC5zaG93aW5ne3RyYW5zZm9ybTpub25lfX1AbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpey5vZmZjYW52YXMteGwuaGlkaW5nLC5vZmZjYW52YXMteGwuc2hvdywub2ZmY2FudmFzLXhsLnNob3dpbmd7dmlzaWJpbGl0eTp2aXNpYmxlfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5vZmZjYW52YXMteGx7LS1icy1vZmZjYW52YXMtaGVpZ2h0OmF1dG87LS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOjA7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm9mZmNhbnZhcy14bCAub2ZmY2FudmFzLWhlYWRlcntkaXNwbGF5Om5vbmV9Lm9mZmNhbnZhcy14bCAub2ZmY2FudmFzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZ3JvdzowO3BhZGRpbmc6MDtvdmVyZmxvdy15OnZpc2libGU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjEzOTkuOThweCl7Lm9mZmNhbnZhcy14eGx7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7ei1pbmRleDp2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO2NvbG9yOnZhcigtLWJzLW9mZmNhbnZhcy1jb2xvcik7dmlzaWJpbGl0eTpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1icy1vZmZjYW52YXMtYmcpO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtvdXRsaW5lOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0fX1AbWVkaWEgKG1heC13aWR0aDoxMzk5Ljk4cHgpIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5vZmZjYW52YXMteHhse3RyYW5zaXRpb246bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsub2ZmY2FudmFzLXh4bC5vZmZjYW52YXMtc3RhcnR7dG9wOjA7bGVmdDowO3dpZHRoOnZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7Ym9yZGVyLXJpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsub2ZmY2FudmFzLXh4bC5vZmZjYW52YXMtZW5ke3RvcDowO3JpZ2h0OjA7d2lkdGg6dmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtib3JkZXItbGVmdDp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX19QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsub2ZmY2FudmFzLXh4bC5vZmZjYW52YXMtdG9we3RvcDowO3JpZ2h0OjA7bGVmdDowO2hlaWdodDp2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTttYXgtaGVpZ2h0OjEwMCU7Ym9yZGVyLWJvdHRvbTp2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjEzOTkuOThweCl7Lm9mZmNhbnZhcy14eGwub2ZmY2FudmFzLWJvdHRvbXtyaWdodDowO2xlZnQ6MDtoZWlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7bWF4LWhlaWdodDoxMDAlO2JvcmRlci10b3A6dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9fUBtZWRpYSAobWF4LXdpZHRoOjEzOTkuOThweCl7Lm9mZmNhbnZhcy14eGwuc2hvdzpub3QoLmhpZGluZyksLm9mZmNhbnZhcy14eGwuc2hvd2luZ3t0cmFuc2Zvcm06bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MTM5OS45OHB4KXsub2ZmY2FudmFzLXh4bC5oaWRpbmcsLm9mZmNhbnZhcy14eGwuc2hvdywub2ZmY2FudmFzLXh4bC5zaG93aW5ne3Zpc2liaWxpdHk6dmlzaWJsZX19QG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KXsub2ZmY2FudmFzLXh4bHstLWJzLW9mZmNhbnZhcy1oZWlnaHQ6YXV0bzstLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0ub2ZmY2FudmFzLXh4bCAub2ZmY2FudmFzLWhlYWRlcntkaXNwbGF5Om5vbmV9Lm9mZmNhbnZhcy14eGwgLm9mZmNhbnZhcy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MDtwYWRkaW5nOjA7b3ZlcmZsb3cteTp2aXNpYmxlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fX0ub2ZmY2FudmFze3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3otaW5kZXg6dmFyKC0tYnMtb2ZmY2FudmFzLXppbmRleCk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXgtd2lkdGg6MTAwJTtjb2xvcjp2YXIoLS1icy1vZmZjYW52YXMtY29sb3IpO3Zpc2liaWxpdHk6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6dmFyKC0tYnMtb2ZmY2FudmFzLWJnKTtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7b3V0bGluZTowO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsub2ZmY2FudmFze3RyYW5zaXRpb246bm9uZX19Lm9mZmNhbnZhcy5vZmZjYW52YXMtc3RhcnR7dG9wOjA7bGVmdDowO3dpZHRoOnZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7Ym9yZGVyLXJpZ2h0OnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0ub2ZmY2FudmFzLm9mZmNhbnZhcy1lbmR7dG9wOjA7cmlnaHQ6MDt3aWR0aDp2YXIoLS1icy1vZmZjYW52YXMtd2lkdGgpO2JvcmRlci1sZWZ0OnZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpfS5vZmZjYW52YXMub2ZmY2FudmFzLXRvcHt0b3A6MDtyaWdodDowO2xlZnQ6MDtoZWlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1ib3R0b206dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwMCUpfS5vZmZjYW52YXMub2ZmY2FudmFzLWJvdHRvbXtyaWdodDowO2xlZnQ6MDtoZWlnaHQ6dmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7bWF4LWhlaWdodDoxMDAlO2JvcmRlci10b3A6dmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9Lm9mZmNhbnZhcy5zaG93Om5vdCguaGlkaW5nKSwub2ZmY2FudmFzLnNob3dpbmd7dHJhbnNmb3JtOm5vbmV9Lm9mZmNhbnZhcy5oaWRpbmcsLm9mZmNhbnZhcy5zaG93LC5vZmZjYW52YXMuc2hvd2luZ3t2aXNpYmlsaXR5OnZpc2libGV9Lm9mZmNhbnZhcy1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxMDQwO3dpZHRoOjEwMHZ3O2hlaWdodDoxMDB2aDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9Lm9mZmNhbnZhcy1iYWNrZHJvcC5mYWRle29wYWNpdHk6MH0ub2ZmY2FudmFzLWJhY2tkcm9wLnNob3d7b3BhY2l0eTouNX0ub2ZmY2FudmFzLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6dmFyKC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteCl9Lm9mZmNhbnZhcy1oZWFkZXIgLmJ0bi1jbG9zZXtwYWRkaW5nOmNhbGModmFyKC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy14KSAqIC41KTttYXJnaW4tdG9wOmNhbGMoLS41ICogdmFyKC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteSkpO21hcmdpbi1yaWdodDpjYWxjKC0uNSAqIHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXgpKTttYXJnaW4tYm90dG9tOmNhbGMoLS41ICogdmFyKC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteSkpfS5vZmZjYW52YXMtdGl0bGV7bWFyZ2luLWJvdHRvbTowO2xpbmUtaGVpZ2h0OjEuNX0ub2ZmY2FudmFzLWJvZHl7ZmxleC1ncm93OjE7cGFkZGluZzp2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy14KTtvdmVyZmxvdy15OmF1dG99LnBsYWNlaG9sZGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21pbi1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtjdXJzb3I6d2FpdDtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRjb2xvcjtvcGFjaXR5Oi41fS5wbGFjZWhvbGRlci5idG46OmJlZm9yZXtkaXNwbGF5OmlubGluZS1ibG9jaztjb250ZW50OiIifS5wbGFjZWhvbGRlci14c3ttaW4taGVpZ2h0Oi42ZW19LnBsYWNlaG9sZGVyLXNte21pbi1oZWlnaHQ6LjhlbX0ucGxhY2Vob2xkZXItbGd7bWluLWhlaWdodDoxLjJlbX0ucGxhY2Vob2xkZXItZ2xvdyAucGxhY2Vob2xkZXJ7YW5pbWF0aW9uOnBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93ezUwJXtvcGFjaXR5Oi4yfX0ucGxhY2Vob2xkZXItd2F2ZXstd2Via2l0LW1hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDEzMGRlZywjMDAwIDU1JSxyZ2JhKDAsMCwwLDAuOCkgNzUlLCMwMDAgOTUlKTttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCgxMzBkZWcsIzAwMCA1NSUscmdiYSgwLDAsMCwwLjgpIDc1JSwjMDAwIDk1JSk7LXdlYmtpdC1tYXNrLXNpemU6MjAwJSAxMDAlO21hc2stc2l6ZToyMDAlIDEwMCU7YW5pbWF0aW9uOnBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZXsxMDAley13ZWJraXQtbWFzay1wb3NpdGlvbjotMjAwJSAwJTttYXNrLXBvc2l0aW9uOi0yMDAlIDAlfX0uY2xlYXJmaXg6OmFmdGVye2Rpc3BsYXk6YmxvY2s7Y2xlYXI6Ym90aDtjb250ZW50OiIifS50ZXh0LWJnLXByaW1hcnl7Y29sb3I6I2ZmZiFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjpSR0JBKDEzLDExMCwyNTMsdmFyKC0tYnMtYmctb3BhY2l0eSwxKSkhaW1wb3J0YW50fS50ZXh0LWJnLXNlY29uZGFyeXtjb2xvcjojZmZmIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOlJHQkEoMTA4LDExNywxMjUsdmFyKC0tYnMtYmctb3BhY2l0eSwxKSkhaW1wb3J0YW50fS50ZXh0LWJnLXN1Y2Nlc3N7Y29sb3I6I2ZmZiFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjpSR0JBKDI1LDEzNSw4NCx2YXIoLS1icy1iZy1vcGFjaXR5LDEpKSFpbXBvcnRhbnR9LnRleHQtYmctaW5mb3tjb2xvcjojMDAwIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOlJHQkEoMTMsMjAyLDI0MCx2YXIoLS1icy1iZy1vcGFjaXR5LDEpKSFpbXBvcnRhbnR9LnRleHQtYmctd2FybmluZ3tjb2xvcjojMDAwIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOlJHQkEoMjU1LDE5Myw3LHZhcigtLWJzLWJnLW9wYWNpdHksMSkpIWltcG9ydGFudH0udGV4dC1iZy1kYW5nZXJ7Y29sb3I6I2ZmZiFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjpSR0JBKDIyMCw1Myw2OSx2YXIoLS1icy1iZy1vcGFjaXR5LDEpKSFpbXBvcnRhbnR9LnRleHQtYmctbGlnaHR7Y29sb3I6IzAwMCFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjpSR0JBKDI0OCwyNDksMjUwLHZhcigtLWJzLWJnLW9wYWNpdHksMSkpIWltcG9ydGFudH0udGV4dC1iZy1kYXJre2NvbG9yOiNmZmYhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6UkdCQSgzMywzNyw0MSx2YXIoLS1icy1iZy1vcGFjaXR5LDEpKSFpbXBvcnRhbnR9LmxpbmstcHJpbWFyeXtjb2xvcjojMGQ2ZWZkIWltcG9ydGFudH0ubGluay1wcmltYXJ5OmZvY3VzLC5saW5rLXByaW1hcnk6aG92ZXJ7Y29sb3I6IzBhNThjYSFpbXBvcnRhbnR9Lmxpbmstc2Vjb25kYXJ5e2NvbG9yOiM2Yzc1N2QhaW1wb3J0YW50fS5saW5rLXNlY29uZGFyeTpmb2N1cywubGluay1zZWNvbmRhcnk6aG92ZXJ7Y29sb3I6IzU2NWU2NCFpbXBvcnRhbnR9Lmxpbmstc3VjY2Vzc3tjb2xvcjojMTk4NzU0IWltcG9ydGFudH0ubGluay1zdWNjZXNzOmZvY3VzLC5saW5rLXN1Y2Nlc3M6aG92ZXJ7Y29sb3I6IzE0NmM0MyFpbXBvcnRhbnR9LmxpbmstaW5mb3tjb2xvcjojMGRjYWYwIWltcG9ydGFudH0ubGluay1pbmZvOmZvY3VzLC5saW5rLWluZm86aG92ZXJ7Y29sb3I6IzNkZDVmMyFpbXBvcnRhbnR9Lmxpbmstd2FybmluZ3tjb2xvcjojZmZjMTA3IWltcG9ydGFudH0ubGluay13YXJuaW5nOmZvY3VzLC5saW5rLXdhcm5pbmc6aG92ZXJ7Y29sb3I6I2ZmY2QzOSFpbXBvcnRhbnR9LmxpbmstZGFuZ2Vye2NvbG9yOiNkYzM1NDUhaW1wb3J0YW50fS5saW5rLWRhbmdlcjpmb2N1cywubGluay1kYW5nZXI6aG92ZXJ7Y29sb3I6I2IwMmEzNyFpbXBvcnRhbnR9LmxpbmstbGlnaHR7Y29sb3I6I2Y4ZjlmYSFpbXBvcnRhbnR9LmxpbmstbGlnaHQ6Zm9jdXMsLmxpbmstbGlnaHQ6aG92ZXJ7Y29sb3I6I2Y5ZmFmYiFpbXBvcnRhbnR9LmxpbmstZGFya3tjb2xvcjojMjEyNTI5IWltcG9ydGFudH0ubGluay1kYXJrOmZvY3VzLC5saW5rLWRhcms6aG92ZXJ7Y29sb3I6IzFhMWUyMSFpbXBvcnRhbnR9LnJhdGlve3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LnJhdGlvOjpiZWZvcmV7ZGlzcGxheTpibG9jaztwYWRkaW5nLXRvcDp2YXIoLS1icy1hc3BlY3QtcmF0aW8pO2NvbnRlbnQ6IiJ9LnJhdGlvPip7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnJhdGlvLTF4MXstLWJzLWFzcGVjdC1yYXRpbzoxMDAlfS5yYXRpby00eDN7LS1icy1hc3BlY3QtcmF0aW86NzUlfS5yYXRpby0xNng5ey0tYnMtYXNwZWN0LXJhdGlvOjU2LjI1JX0ucmF0aW8tMjF4OXstLWJzLWFzcGVjdC1yYXRpbzo0Mi44NTcxNDI4NTcxJX0uZml4ZWQtdG9we3Bvc2l0aW9uOmZpeGVkO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTAzMH0uZml4ZWQtYm90dG9te3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6MTAzMH0uc3RpY2t5LXRvcHtwb3NpdGlvbjotd2Via2l0LXN0aWNreTtwb3NpdGlvbjpzdGlja3k7dG9wOjA7ei1pbmRleDoxMDIwfS5zdGlja3ktYm90dG9te3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTtib3R0b206MDt6LWluZGV4OjEwMjB9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5zdGlja3ktc20tdG9we3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjEwMjB9LnN0aWNreS1zbS1ib3R0b217cG9zaXRpb246LXdlYmtpdC1zdGlja3k7cG9zaXRpb246c3RpY2t5O2JvdHRvbTowO3otaW5kZXg6MTAyMH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5zdGlja3ktbWQtdG9we3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjEwMjB9LnN0aWNreS1tZC1ib3R0b217cG9zaXRpb246LXdlYmtpdC1zdGlja3k7cG9zaXRpb246c3RpY2t5O2JvdHRvbTowO3otaW5kZXg6MTAyMH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5zdGlja3ktbGctdG9we3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjEwMjB9LnN0aWNreS1sZy1ib3R0b217cG9zaXRpb246LXdlYmtpdC1zdGlja3k7cG9zaXRpb246c3RpY2t5O2JvdHRvbTowO3otaW5kZXg6MTAyMH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuc3RpY2t5LXhsLXRvcHtwb3NpdGlvbjotd2Via2l0LXN0aWNreTtwb3NpdGlvbjpzdGlja3k7dG9wOjA7ei1pbmRleDoxMDIwfS5zdGlja3kteGwtYm90dG9te3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTtib3R0b206MDt6LWluZGV4OjEwMjB9fUBtZWRpYSAobWluLXdpZHRoOjE0MDBweCl7LnN0aWNreS14eGwtdG9we3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjEwMjB9LnN0aWNreS14eGwtYm90dG9te3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5O3Bvc2l0aW9uOnN0aWNreTtib3R0b206MDt6LWluZGV4OjEwMjB9fS5oc3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24tc2VsZjpzdHJldGNofS52c3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXg6MSAxIGF1dG87ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLXNlbGY6c3RyZXRjaH0udmlzdWFsbHktaGlkZGVuLC52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKXtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7d2lkdGg6MXB4IWltcG9ydGFudDtoZWlnaHQ6MXB4IWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50O21hcmdpbjotMXB4IWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O2NsaXA6cmVjdCgwLDAsMCwwKSFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnR9LnN0cmV0Y2hlZC1saW5rOjphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjE7Y29udGVudDoiIn0udGV4dC10cnVuY2F0ZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnZye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2FsaWduLXNlbGY6c3RyZXRjaDt3aWR0aDoxcHg7bWluLWhlaWdodDoxZW07YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Y29sb3I7b3BhY2l0eTouMjV9LmFsaWduLWJhc2VsaW5le3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tdG9we3ZlcnRpY2FsLWFsaWduOnRvcCFpbXBvcnRhbnR9LmFsaWduLW1pZGRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGUhaW1wb3J0YW50fS5hbGlnbi1ib3R0b217dmVydGljYWwtYWxpZ246Ym90dG9tIWltcG9ydGFudH0uYWxpZ24tdGV4dC1ib3R0b217dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b20haW1wb3J0YW50fS5hbGlnbi10ZXh0LXRvcHt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LXRvcCFpbXBvcnRhbnR9LmZsb2F0LXN0YXJ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1lbmR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5vcGFjaXR5LTB7b3BhY2l0eTowIWltcG9ydGFudH0ub3BhY2l0eS0yNXtvcGFjaXR5Oi4yNSFpbXBvcnRhbnR9Lm9wYWNpdHktNTB7b3BhY2l0eTouNSFpbXBvcnRhbnR9Lm9wYWNpdHktNzV7b3BhY2l0eTouNzUhaW1wb3J0YW50fS5vcGFjaXR5LTEwMHtvcGFjaXR5OjEhaW1wb3J0YW50fS5vdmVyZmxvdy1hdXRve292ZXJmbG93OmF1dG8haW1wb3J0YW50fS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudH0ub3ZlcmZsb3ctdmlzaWJsZXtvdmVyZmxvdzp2aXNpYmxlIWltcG9ydGFudH0ub3ZlcmZsb3ctc2Nyb2xse292ZXJmbG93OnNjcm9sbCFpbXBvcnRhbnR9LmQtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLWdyaWR7ZGlzcGxheTpncmlkIWltcG9ydGFudH0uZC10YWJsZXtkaXNwbGF5OnRhYmxlIWltcG9ydGFudH0uZC10YWJsZS1yb3d7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fS5kLXRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsIWltcG9ydGFudH0uZC1mbGV4e2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnR9LmQtaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9LmQtbm9uZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5zaGFkb3d7Ym94LXNoYWRvdzowIC41cmVtIDFyZW0gcmdiYSgwLDAsMCwuMTUpIWltcG9ydGFudH0uc2hhZG93LXNte2JveC1zaGFkb3c6MCAuMTI1cmVtIC4yNXJlbSByZ2JhKDAsMCwwLC4wNzUpIWltcG9ydGFudH0uc2hhZG93LWxne2JveC1zaGFkb3c6MCAxcmVtIDNyZW0gcmdiYSgwLDAsMCwuMTc1KSFpbXBvcnRhbnR9LnNoYWRvdy1ub25le2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LnBvc2l0aW9uLXN0YXRpY3twb3NpdGlvbjpzdGF0aWMhaW1wb3J0YW50fS5wb3NpdGlvbi1yZWxhdGl2ZXtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnR9LnBvc2l0aW9uLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0ucG9zaXRpb24tZml4ZWR7cG9zaXRpb246Zml4ZWQhaW1wb3J0YW50fS5wb3NpdGlvbi1zdGlja3l7cG9zaXRpb246LXdlYmtpdC1zdGlja3khaW1wb3J0YW50O3Bvc2l0aW9uOnN0aWNreSFpbXBvcnRhbnR9LnRvcC0we3RvcDowIWltcG9ydGFudH0udG9wLTUwe3RvcDo1MCUhaW1wb3J0YW50fS50b3AtMTAwe3RvcDoxMDAlIWltcG9ydGFudH0uYm90dG9tLTB7Ym90dG9tOjAhaW1wb3J0YW50fS5ib3R0b20tNTB7Ym90dG9tOjUwJSFpbXBvcnRhbnR9LmJvdHRvbS0xMDB7Ym90dG9tOjEwMCUhaW1wb3J0YW50fS5zdGFydC0we2xlZnQ6MCFpbXBvcnRhbnR9LnN0YXJ0LTUwe2xlZnQ6NTAlIWltcG9ydGFudH0uc3RhcnQtMTAwe2xlZnQ6MTAwJSFpbXBvcnRhbnR9LmVuZC0we3JpZ2h0OjAhaW1wb3J0YW50fS5lbmQtNTB7cmlnaHQ6NTAlIWltcG9ydGFudH0uZW5kLTEwMHtyaWdodDoxMDAlIWltcG9ydGFudH0udHJhbnNsYXRlLW1pZGRsZXt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkhaW1wb3J0YW50fS50cmFuc2xhdGUtbWlkZGxlLXh7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSkhaW1wb3J0YW50fS50cmFuc2xhdGUtbWlkZGxlLXl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkhaW1wb3J0YW50fS5ib3JkZXJ7Ym9yZGVyOnZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpIWltcG9ydGFudH0uYm9yZGVyLTB7Ym9yZGVyOjAhaW1wb3J0YW50fS5ib3JkZXItdG9we2JvcmRlci10b3A6dmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikhaW1wb3J0YW50fS5ib3JkZXItdG9wLTB7Ym9yZGVyLXRvcDowIWltcG9ydGFudH0uYm9yZGVyLWVuZHtib3JkZXItcmlnaHQ6dmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikhaW1wb3J0YW50fS5ib3JkZXItZW5kLTB7Ym9yZGVyLXJpZ2h0OjAhaW1wb3J0YW50fS5ib3JkZXItYm90dG9te2JvcmRlci1ib3R0b206dmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikhaW1wb3J0YW50fS5ib3JkZXItYm90dG9tLTB7Ym9yZGVyLWJvdHRvbTowIWltcG9ydGFudH0uYm9yZGVyLXN0YXJ0e2JvcmRlci1sZWZ0OnZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpIWltcG9ydGFudH0uYm9yZGVyLXN0YXJ0LTB7Ym9yZGVyLWxlZnQ6MCFpbXBvcnRhbnR9LmJvcmRlci1wcmltYXJ5ey0tYnMtYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksdmFyKC0tYnMtYm9yZGVyLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJvcmRlci1zZWNvbmRhcnl7LS1icy1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItc3VjY2Vzc3stLWJzLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItaW5mb3stLWJzLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYnMtaW5mby1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItd2FybmluZ3stLWJzLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYnMtd2FybmluZy1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItZGFuZ2Vyey0tYnMtYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiYSh2YXIoLS1icy1kYW5nZXItcmdiKSx2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpIWltcG9ydGFudH0uYm9yZGVyLWxpZ2h0ey0tYnMtYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiYSh2YXIoLS1icy1saWdodC1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItZGFya3stLWJzLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYnMtZGFyay1yZ2IpLHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkhaW1wb3J0YW50fS5ib3JkZXItd2hpdGV7LS1icy1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWJzLXdoaXRlLXJnYiksdmFyKC0tYnMtYm9yZGVyLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJvcmRlci0xey0tYnMtYm9yZGVyLXdpZHRoOjFweH0uYm9yZGVyLTJ7LS1icy1ib3JkZXItd2lkdGg6MnB4fS5ib3JkZXItM3stLWJzLWJvcmRlci13aWR0aDozcHh9LmJvcmRlci00ey0tYnMtYm9yZGVyLXdpZHRoOjRweH0uYm9yZGVyLTV7LS1icy1ib3JkZXItd2lkdGg6NXB4fS5ib3JkZXItb3BhY2l0eS0xMHstLWJzLWJvcmRlci1vcGFjaXR5OjAuMX0uYm9yZGVyLW9wYWNpdHktMjV7LS1icy1ib3JkZXItb3BhY2l0eTowLjI1fS5ib3JkZXItb3BhY2l0eS01MHstLWJzLWJvcmRlci1vcGFjaXR5OjAuNX0uYm9yZGVyLW9wYWNpdHktNzV7LS1icy1ib3JkZXItb3BhY2l0eTowLjc1fS5ib3JkZXItb3BhY2l0eS0xMDB7LS1icy1ib3JkZXItb3BhY2l0eToxfS53LTI1e3dpZHRoOjI1JSFpbXBvcnRhbnR9LnctNTB7d2lkdGg6NTAlIWltcG9ydGFudH0udy03NXt3aWR0aDo3NSUhaW1wb3J0YW50fS53LTEwMHt3aWR0aDoxMDAlIWltcG9ydGFudH0udy1hdXRve3dpZHRoOmF1dG8haW1wb3J0YW50fS5tdy0xMDB7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50fS52dy0xMDB7d2lkdGg6MTAwdnchaW1wb3J0YW50fS5taW4tdnctMTAwe21pbi13aWR0aDoxMDB2dyFpbXBvcnRhbnR9LmgtMjV7aGVpZ2h0OjI1JSFpbXBvcnRhbnR9LmgtNTB7aGVpZ2h0OjUwJSFpbXBvcnRhbnR9LmgtNzV7aGVpZ2h0Ojc1JSFpbXBvcnRhbnR9LmgtMTAwe2hlaWdodDoxMDAlIWltcG9ydGFudH0uaC1hdXRve2hlaWdodDphdXRvIWltcG9ydGFudH0ubWgtMTAwe21heC1oZWlnaHQ6MTAwJSFpbXBvcnRhbnR9LnZoLTEwMHtoZWlnaHQ6MTAwdmghaW1wb3J0YW50fS5taW4tdmgtMTAwe21pbi1oZWlnaHQ6MTAwdmghaW1wb3J0YW50fS5mbGV4LWZpbGx7ZmxleDoxIDEgYXV0byFpbXBvcnRhbnR9LmZsZXgtcm93e2ZsZXgtZGlyZWN0aW9uOnJvdyFpbXBvcnRhbnR9LmZsZXgtY29sdW1ue2ZsZXgtZGlyZWN0aW9uOmNvbHVtbiFpbXBvcnRhbnR9LmZsZXgtcm93LXJldmVyc2V7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1ncm93LTB7ZmxleC1ncm93OjAhaW1wb3J0YW50fS5mbGV4LWdyb3ctMXtmbGV4LWdyb3c6MSFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTB7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTF7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9LmZsZXgtd3JhcHtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LXdyYXAtcmV2ZXJzZXtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1ldmVubHl7anVzdGlmeS1jb250ZW50OnNwYWNlLWV2ZW5seSFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtYmFzZWxpbmV7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXN0YXJ0e2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtZW5ke2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtYmV0d2VlbnthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWFyb3VuZHthbGlnbi1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc3RyZXRjaHthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLWF1dG97YWxpZ24tc2VsZjphdXRvIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWVuZHthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1jZW50ZXJ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWJhc2VsaW5le2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH0ub3JkZXItZmlyc3R7b3JkZXI6LTEhaW1wb3J0YW50fS5vcmRlci0we29yZGVyOjAhaW1wb3J0YW50fS5vcmRlci0xe29yZGVyOjEhaW1wb3J0YW50fS5vcmRlci0ye29yZGVyOjIhaW1wb3J0YW50fS5vcmRlci0ze29yZGVyOjMhaW1wb3J0YW50fS5vcmRlci00e29yZGVyOjQhaW1wb3J0YW50fS5vcmRlci01e29yZGVyOjUhaW1wb3J0YW50fS5vcmRlci1sYXN0e29yZGVyOjYhaW1wb3J0YW50fS5tLTB7bWFyZ2luOjAhaW1wb3J0YW50fS5tLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm0tMnttYXJnaW46LjVyZW0haW1wb3J0YW50fS5tLTN7bWFyZ2luOjFyZW0haW1wb3J0YW50fS5tLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm0tNXttYXJnaW46M3JlbSFpbXBvcnRhbnR9Lm0tYXV0b3ttYXJnaW46YXV0byFpbXBvcnRhbnR9Lm14LTB7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50O21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5teC0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9Lm14LTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm14LTN7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5teC00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Lm14LTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5teC1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudDttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH0ubXktMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50O21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9Lm15LTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubXktMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubXktM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206MXJlbSFpbXBvcnRhbnR9Lm15LTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubXktNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm15LWF1dG97bWFyZ2luLXRvcDphdXRvIWltcG9ydGFudDttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tdC0we21hcmdpbi10b3A6MCFpbXBvcnRhbnR9Lm10LTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tdC0ye21hcmdpbi10b3A6LjVyZW0haW1wb3J0YW50fS5tdC0ze21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9Lm10LTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tdC01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm10LWF1dG97bWFyZ2luLXRvcDphdXRvIWltcG9ydGFudH0ubWUtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1lLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnR9Lm1lLTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWUtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9Lm1lLTR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9Lm1lLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tZS1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH0ubWItMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tYi0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWItMnttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubWItM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tYi00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWItNXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5tYi1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1zLTB7bWFyZ2luLWxlZnQ6MCFpbXBvcnRhbnR9Lm1zLTF7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubXMtMnttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm1zLTN7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9Lm1zLTR7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubXMtNXttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH0ubXMtYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH0ucC0we3BhZGRpbmc6MCFpbXBvcnRhbnR9LnAtMXtwYWRkaW5nOi4yNXJlbSFpbXBvcnRhbnR9LnAtMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucC0ze3BhZGRpbmc6MXJlbSFpbXBvcnRhbnR9LnAtNHtwYWRkaW5nOjEuNXJlbSFpbXBvcnRhbnR9LnAtNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5weC0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5weC0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ucHgtMntwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5weC0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5weC00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ucHgtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ucHktMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0ucHktMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnB5LTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucHktM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxcmVtIWltcG9ydGFudH0ucHktNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnB5LTV7cGFkZGluZy10b3A6M3JlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnB0LTB7cGFkZGluZy10b3A6MCFpbXBvcnRhbnR9LnB0LTF7cGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudH0ucHQtMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnB0LTN7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnR9LnB0LTR7cGFkZGluZy10b3A6MS41cmVtIWltcG9ydGFudH0ucHQtNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucGUtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wZS0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ucGUtMntwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ucGUtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5wZS00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ucGUtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wYi0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBiLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wYi0ze3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5wYi00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBiLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBzLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wcy0xe3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5wcy0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnBzLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wcy00e3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5wcy01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0uZ2FwLTB7Z2FwOjAhaW1wb3J0YW50fS5nYXAtMXtnYXA6LjI1cmVtIWltcG9ydGFudH0uZ2FwLTJ7Z2FwOi41cmVtIWltcG9ydGFudH0uZ2FwLTN7Z2FwOjFyZW0haW1wb3J0YW50fS5nYXAtNHtnYXA6MS41cmVtIWltcG9ydGFudH0uZ2FwLTV7Z2FwOjNyZW0haW1wb3J0YW50fS5mb250LW1vbm9zcGFjZXtmb250LWZhbWlseTp2YXIoLS1icy1mb250LW1vbm9zcGFjZSkhaW1wb3J0YW50fS5mcy0xe2ZvbnQtc2l6ZTpjYWxjKDEuMzc1cmVtICsgMS41dncpIWltcG9ydGFudH0uZnMtMntmb250LXNpemU6Y2FsYygxLjMyNXJlbSArIC45dncpIWltcG9ydGFudH0uZnMtM3tmb250LXNpemU6Y2FsYygxLjNyZW0gKyAuNnZ3KSFpbXBvcnRhbnR9LmZzLTR7Zm9udC1zaXplOmNhbGMoMS4yNzVyZW0gKyAuM3Z3KSFpbXBvcnRhbnR9LmZzLTV7Zm9udC1zaXplOjEuMjVyZW0haW1wb3J0YW50fS5mcy02e2ZvbnQtc2l6ZToxcmVtIWltcG9ydGFudH0uZnN0LWl0YWxpY3tmb250LXN0eWxlOml0YWxpYyFpbXBvcnRhbnR9LmZzdC1ub3JtYWx7Zm9udC1zdHlsZTpub3JtYWwhaW1wb3J0YW50fS5mdy1saWdodHtmb250LXdlaWdodDozMDAhaW1wb3J0YW50fS5mdy1saWdodGVye2ZvbnQtd2VpZ2h0OmxpZ2h0ZXIhaW1wb3J0YW50fS5mdy1ub3JtYWx7Zm9udC13ZWlnaHQ6NDAwIWltcG9ydGFudH0uZnctYm9sZHtmb250LXdlaWdodDo3MDAhaW1wb3J0YW50fS5mdy1zZW1pYm9sZHtmb250LXdlaWdodDo2MDAhaW1wb3J0YW50fS5mdy1ib2xkZXJ7Zm9udC13ZWlnaHQ6Ym9sZGVyIWltcG9ydGFudH0ubGgtMXtsaW5lLWhlaWdodDoxIWltcG9ydGFudH0ubGgtc217bGluZS1oZWlnaHQ6MS4yNSFpbXBvcnRhbnR9LmxoLWJhc2V7bGluZS1oZWlnaHQ6MS41IWltcG9ydGFudH0ubGgtbGd7bGluZS1oZWlnaHQ6MiFpbXBvcnRhbnR9LnRleHQtc3RhcnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1lbmR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGV4dC1kZWNvcmF0aW9uLW5vbmV7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50fS50ZXh0LWRlY29yYXRpb24tdW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUhaW1wb3J0YW50fS50ZXh0LWRlY29yYXRpb24tbGluZS10aHJvdWdoe3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2ghaW1wb3J0YW50fS50ZXh0LWxvd2VyY2FzZXt0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2UhaW1wb3J0YW50fS50ZXh0LXVwcGVyY2FzZXt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2UhaW1wb3J0YW50fS50ZXh0LWNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZSFpbXBvcnRhbnR9LnRleHQtd3JhcHt3aGl0ZS1zcGFjZTpub3JtYWwhaW1wb3J0YW50fS50ZXh0LW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXAhaW1wb3J0YW50fS50ZXh0LWJyZWFre3dvcmQtd3JhcDpicmVhay13b3JkIWltcG9ydGFudDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQhaW1wb3J0YW50fS50ZXh0LXByaW1hcnl7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSx2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnR9LnRleHQtc2Vjb25kYXJ5ey0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSx2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnR9LnRleHQtc3VjY2Vzc3stLWJzLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IpLHZhcigtLWJzLXRleHQtb3BhY2l0eSkpIWltcG9ydGFudH0udGV4dC1pbmZvey0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiYSh2YXIoLS1icy1pbmZvLXJnYiksdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50fS50ZXh0LXdhcm5pbmd7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKHZhcigtLWJzLXdhcm5pbmctcmdiKSx2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnR9LnRleHQtZGFuZ2Vyey0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiYSh2YXIoLS1icy1kYW5nZXItcmdiKSx2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnR9LnRleHQtbGlnaHR7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKHZhcigtLWJzLWxpZ2h0LXJnYiksdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50fS50ZXh0LWRhcmt7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKHZhcigtLWJzLWRhcmstcmdiKSx2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnR9LnRleHQtYmxhY2t7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKHZhcigtLWJzLWJsYWNrLXJnYiksdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50fS50ZXh0LXdoaXRley0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiYSh2YXIoLS1icy13aGl0ZS1yZ2IpLHZhcigtLWJzLXRleHQtb3BhY2l0eSkpIWltcG9ydGFudH0udGV4dC1ib2R5ey0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiYSh2YXIoLS1icy1ib2R5LWNvbG9yLXJnYiksdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50fS50ZXh0LW11dGVkey0tYnMtdGV4dC1vcGFjaXR5OjE7Y29sb3I6IzZjNzU3ZCFpbXBvcnRhbnR9LnRleHQtYmxhY2stNTB7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKDAsMCwwLC41KSFpbXBvcnRhbnR9LnRleHQtd2hpdGUtNTB7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC41KSFpbXBvcnRhbnR9LnRleHQtcmVzZXR7LS1icy10ZXh0LW9wYWNpdHk6MTtjb2xvcjppbmhlcml0IWltcG9ydGFudH0udGV4dC1vcGFjaXR5LTI1ey0tYnMtdGV4dC1vcGFjaXR5OjAuMjV9LnRleHQtb3BhY2l0eS01MHstLWJzLXRleHQtb3BhY2l0eTowLjV9LnRleHQtb3BhY2l0eS03NXstLWJzLXRleHQtb3BhY2l0eTowLjc1fS50ZXh0LW9wYWNpdHktMTAwey0tYnMtdGV4dC1vcGFjaXR5OjF9LmJnLXByaW1hcnl7LS1icy1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSx2YXIoLS1icy1iZy1vcGFjaXR5KSkhaW1wb3J0YW50fS5iZy1zZWNvbmRhcnl7LS1icy1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJnLXN1Y2Nlc3N7LS1icy1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSx2YXIoLS1icy1iZy1vcGFjaXR5KSkhaW1wb3J0YW50fS5iZy1pbmZvey0tYnMtYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiYSh2YXIoLS1icy1pbmZvLXJnYiksdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudH0uYmctd2FybmluZ3stLWJzLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEodmFyKC0tYnMtd2FybmluZy1yZ2IpLHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJnLWRhbmdlcnstLWJzLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEodmFyKC0tYnMtZGFuZ2VyLXJnYiksdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudH0uYmctbGlnaHR7LS1icy1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKHZhcigtLWJzLWxpZ2h0LXJnYiksdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudH0uYmctZGFya3stLWJzLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEodmFyKC0tYnMtZGFyay1yZ2IpLHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJnLWJsYWNrey0tYnMtYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiYSh2YXIoLS1icy1ibGFjay1yZ2IpLHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJnLXdoaXRley0tYnMtYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiYSh2YXIoLS1icy13aGl0ZS1yZ2IpLHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnR9LmJnLWJvZHl7LS1icy1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKHZhcigtLWJzLWJvZHktYmctcmdiKSx2YXIoLS1icy1iZy1vcGFjaXR5KSkhaW1wb3J0YW50fS5iZy10cmFuc3BhcmVudHstLWJzLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0uYmctb3BhY2l0eS0xMHstLWJzLWJnLW9wYWNpdHk6MC4xfS5iZy1vcGFjaXR5LTI1ey0tYnMtYmctb3BhY2l0eTowLjI1fS5iZy1vcGFjaXR5LTUwey0tYnMtYmctb3BhY2l0eTowLjV9LmJnLW9wYWNpdHktNzV7LS1icy1iZy1vcGFjaXR5OjAuNzV9LmJnLW9wYWNpdHktMTAwey0tYnMtYmctb3BhY2l0eToxfS5iZy1ncmFkaWVudHtiYWNrZ3JvdW5kLWltYWdlOnZhcigtLWJzLWdyYWRpZW50KSFpbXBvcnRhbnR9LnVzZXItc2VsZWN0LWFsbHstd2Via2l0LXVzZXItc2VsZWN0OmFsbCFpbXBvcnRhbnQ7LW1vei11c2VyLXNlbGVjdDphbGwhaW1wb3J0YW50O3VzZXItc2VsZWN0OmFsbCFpbXBvcnRhbnR9LnVzZXItc2VsZWN0LWF1dG97LXdlYmtpdC11c2VyLXNlbGVjdDphdXRvIWltcG9ydGFudDstbW96LXVzZXItc2VsZWN0OmF1dG8haW1wb3J0YW50O3VzZXItc2VsZWN0OmF1dG8haW1wb3J0YW50fS51c2VyLXNlbGVjdC1ub25ley13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZSFpbXBvcnRhbnQ7LW1vei11c2VyLXNlbGVjdDpub25lIWltcG9ydGFudDt1c2VyLXNlbGVjdDpub25lIWltcG9ydGFudH0ucGUtbm9uZXtwb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudH0ucGUtYXV0b3twb2ludGVyLWV2ZW50czphdXRvIWltcG9ydGFudH0ucm91bmRlZHtib3JkZXItcmFkaXVzOnZhcigtLWJzLWJvcmRlci1yYWRpdXMpIWltcG9ydGFudH0ucm91bmRlZC0we2JvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnR9LnJvdW5kZWQtMXtib3JkZXItcmFkaXVzOnZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pIWltcG9ydGFudH0ucm91bmRlZC0ye2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtYm9yZGVyLXJhZGl1cykhaW1wb3J0YW50fS5yb3VuZGVkLTN7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzLWxnKSFpbXBvcnRhbnR9LnJvdW5kZWQtNHtib3JkZXItcmFkaXVzOnZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpIWltcG9ydGFudH0ucm91bmRlZC01e2JvcmRlci1yYWRpdXM6dmFyKC0tYnMtYm9yZGVyLXJhZGl1cy0yeGwpIWltcG9ydGFudH0ucm91bmRlZC1jaXJjbGV7Ym9yZGVyLXJhZGl1czo1MCUhaW1wb3J0YW50fS5yb3VuZGVkLXBpbGx7Ym9yZGVyLXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzLXBpbGwpIWltcG9ydGFudH0ucm91bmRlZC10b3B7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnQ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6dmFyKC0tYnMtYm9yZGVyLXJhZGl1cykhaW1wb3J0YW50fS5yb3VuZGVkLWVuZHtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnQ7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6dmFyKC0tYnMtYm9yZGVyLXJhZGl1cykhaW1wb3J0YW50fS5yb3VuZGVkLWJvdHRvbXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnQ7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnR9LnJvdW5kZWQtc3RhcnR7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnQ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czp2YXIoLS1icy1ib3JkZXItcmFkaXVzKSFpbXBvcnRhbnR9LnZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudH0uaW52aXNpYmxle3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmZsb2F0LXNtLXN0YXJ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1zbS1lbmR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1zbS1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5kLXNtLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtc20taW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1zbS1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1zbS1ncmlke2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmQtc20tdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtc20tdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1zbS10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtc20tZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLXNtLWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fS5kLXNtLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZmxleC1zbS1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LXNtLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LXNtLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LXNtLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1zbS1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtc20tZ3Jvdy0we2ZsZXgtZ3JvdzowIWltcG9ydGFudH0uZmxleC1zbS1ncm93LTF7ZmxleC1ncm93OjEhaW1wb3J0YW50fS5mbGV4LXNtLXNocmluay0we2ZsZXgtc2hyaW5rOjAhaW1wb3J0YW50fS5mbGV4LXNtLXNocmluay0xe2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fS5mbGV4LXNtLXdyYXB7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LXNtLW5vd3JhcHtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC1zbS13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zbS1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zbS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXNtLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tZXZlbmx5e2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHkhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zbS1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMtc20tZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc20tY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc20tc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zbS1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWVuZHthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zbS1jZW50ZXJ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zbS1hcm91bmR7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2h7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc20tc3RhcnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1lbmR7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc20tY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1iYXNlbGluZXthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9Lm9yZGVyLXNtLWZpcnN0e29yZGVyOi0xIWltcG9ydGFudH0ub3JkZXItc20tMHtvcmRlcjowIWltcG9ydGFudH0ub3JkZXItc20tMXtvcmRlcjoxIWltcG9ydGFudH0ub3JkZXItc20tMntvcmRlcjoyIWltcG9ydGFudH0ub3JkZXItc20tM3tvcmRlcjozIWltcG9ydGFudH0ub3JkZXItc20tNHtvcmRlcjo0IWltcG9ydGFudH0ub3JkZXItc20tNXtvcmRlcjo1IWltcG9ydGFudH0ub3JkZXItc20tbGFzdHtvcmRlcjo2IWltcG9ydGFudH0ubS1zbS0we21hcmdpbjowIWltcG9ydGFudH0ubS1zbS0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tLXNtLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubS1zbS0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubS1zbS00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tLXNtLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tLXNtLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5teC1zbS0we21hcmdpbi1yaWdodDowIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXgtc20tMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5teC1zbS0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5teC1zbS0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubXgtc20tNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5teC1zbS01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH0ubXgtc20tYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9Lm15LXNtLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5teS1zbS0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm15LXNtLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm15LXNtLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5teS1zbS00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm15LXNtLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5teS1zbS1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTphdXRvIWltcG9ydGFudH0ubXQtc20tMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tdC1zbS0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXQtc20tMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXQtc20tM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tdC1zbS00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXQtc20tNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tdC1zbS1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1lLXNtLTB7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50fS5tZS1zbS0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tZS1zbS0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnR9Lm1lLXNtLTN7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5tZS1zbS00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tZS1zbS01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWUtc20tYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9Lm1iLXNtLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWItc20tMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLTJ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWItc20tNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLTV7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0ubWItc20tYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tcy1zbS0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tcy1zbS0xe21hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9Lm1zLXNtLTJ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5tcy1zbS0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tcy1zbS00e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Lm1zLXNtLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9Lm1zLXNtLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9LnAtc20tMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wLXNtLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wLXNtLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnAtc20tM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wLXNtLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wLXNtLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHgtc20tMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHgtc20tMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnB4LXNtLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudH0ucHgtc20tM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHgtc20tNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnB4LXNtLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnB5LXNtLTB7cGFkZGluZy10b3A6MCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnB5LXNtLTF7cGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5weS1zbS0ye3BhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9LnB5LXNtLTN7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnB5LXNtLTR7cGFkZGluZy10b3A6MS41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5weS1zbS01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wdC1zbS0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wdC1zbS0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnB0LXNtLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wdC1zbS0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wdC1zbS00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnB0LXNtLTV7cGFkZGluZy10b3A6M3JlbSFpbXBvcnRhbnR9LnBlLXNtLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0ucGUtc20tMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnR9LnBlLXNtLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBlLXNtLTN7cGFkZGluZy1yaWdodDoxcmVtIWltcG9ydGFudH0ucGUtc20tNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9LnBlLXNtLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudH0ucGItc20tMHtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0ucGItc20tMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wYi1zbS0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGItc20tM3twYWRkaW5nLWJvdHRvbToxcmVtIWltcG9ydGFudH0ucGItc20tNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wYi1zbS01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wcy1zbS0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHMtc20tMXtwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ucHMtc20tMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wcy1zbS0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHMtc20tNHtwYWRkaW5nLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ucHMtc20tNXtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LmdhcC1zbS0we2dhcDowIWltcG9ydGFudH0uZ2FwLXNtLTF7Z2FwOi4yNXJlbSFpbXBvcnRhbnR9LmdhcC1zbS0ye2dhcDouNXJlbSFpbXBvcnRhbnR9LmdhcC1zbS0ze2dhcDoxcmVtIWltcG9ydGFudH0uZ2FwLXNtLTR7Z2FwOjEuNXJlbSFpbXBvcnRhbnR9LmdhcC1zbS01e2dhcDozcmVtIWltcG9ydGFudH0udGV4dC1zbS1zdGFydHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXNtLWVuZHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1zbS1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmZsb2F0LW1kLXN0YXJ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1tZC1lbmR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1tZC1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5kLW1kLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtbWQtaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1tZC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1tZC1ncmlke2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmQtbWQtdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtbWQtdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1tZC10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtbWQtZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLW1kLWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fS5kLW1kLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZmxleC1tZC1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LW1kLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LW1kLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LW1kLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtbWQtZ3Jvdy0we2ZsZXgtZ3JvdzowIWltcG9ydGFudH0uZmxleC1tZC1ncm93LTF7ZmxleC1ncm93OjEhaW1wb3J0YW50fS5mbGV4LW1kLXNocmluay0we2ZsZXgtc2hyaW5rOjAhaW1wb3J0YW50fS5mbGV4LW1kLXNocmluay0xe2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fS5mbGV4LW1kLXdyYXB7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LW1kLW5vd3JhcHtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC1tZC13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LW1kLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LW1kLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbWQtZXZlbmx5e2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHkhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1tZC1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLWVuZHthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1jZW50ZXJ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1hcm91bmR7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2h7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbWQtc3RhcnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1lbmR7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbWQtY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1iYXNlbGluZXthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9Lm9yZGVyLW1kLWZpcnN0e29yZGVyOi0xIWltcG9ydGFudH0ub3JkZXItbWQtMHtvcmRlcjowIWltcG9ydGFudH0ub3JkZXItbWQtMXtvcmRlcjoxIWltcG9ydGFudH0ub3JkZXItbWQtMntvcmRlcjoyIWltcG9ydGFudH0ub3JkZXItbWQtM3tvcmRlcjozIWltcG9ydGFudH0ub3JkZXItbWQtNHtvcmRlcjo0IWltcG9ydGFudH0ub3JkZXItbWQtNXtvcmRlcjo1IWltcG9ydGFudH0ub3JkZXItbWQtbGFzdHtvcmRlcjo2IWltcG9ydGFudH0ubS1tZC0we21hcmdpbjowIWltcG9ydGFudH0ubS1tZC0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tLW1kLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubS1tZC0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubS1tZC00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tLW1kLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tLW1kLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5teC1tZC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXgtbWQtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5teC1tZC0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5teC1tZC0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubXgtbWQtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5teC1tZC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH0ubXgtbWQtYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9Lm15LW1kLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5teS1tZC0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm15LW1kLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm15LW1kLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5teS1tZC00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm15LW1kLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5teS1tZC1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTphdXRvIWltcG9ydGFudH0ubXQtbWQtMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tdC1tZC0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXQtbWQtMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXQtbWQtM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tdC1tZC00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXQtbWQtNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tdC1tZC1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1lLW1kLTB7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50fS5tZS1tZC0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tZS1tZC0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnR9Lm1lLW1kLTN7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5tZS1tZC00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tZS1tZC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWUtbWQtYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9Lm1iLW1kLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWItbWQtMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLTJ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWItbWQtNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLTV7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0ubWItbWQtYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tcy1tZC0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tcy1tZC0xe21hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9Lm1zLW1kLTJ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5tcy1tZC0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tcy1tZC00e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Lm1zLW1kLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9Lm1zLW1kLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9LnAtbWQtMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wLW1kLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wLW1kLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnAtbWQtM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wLW1kLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wLW1kLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHgtbWQtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHgtbWQtMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnB4LW1kLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudH0ucHgtbWQtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHgtbWQtNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnB4LW1kLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnB5LW1kLTB7cGFkZGluZy10b3A6MCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnB5LW1kLTF7cGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5weS1tZC0ye3BhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9LnB5LW1kLTN7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnB5LW1kLTR7cGFkZGluZy10b3A6MS41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5weS1tZC01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wdC1tZC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wdC1tZC0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnB0LW1kLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wdC1tZC0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wdC1tZC00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnB0LW1kLTV7cGFkZGluZy10b3A6M3JlbSFpbXBvcnRhbnR9LnBlLW1kLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0ucGUtbWQtMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnR9LnBlLW1kLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBlLW1kLTN7cGFkZGluZy1yaWdodDoxcmVtIWltcG9ydGFudH0ucGUtbWQtNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9LnBlLW1kLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudH0ucGItbWQtMHtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0ucGItbWQtMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wYi1tZC0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGItbWQtM3twYWRkaW5nLWJvdHRvbToxcmVtIWltcG9ydGFudH0ucGItbWQtNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wYi1tZC01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wcy1tZC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHMtbWQtMXtwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ucHMtbWQtMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wcy1tZC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHMtbWQtNHtwYWRkaW5nLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ucHMtbWQtNXtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LmdhcC1tZC0we2dhcDowIWltcG9ydGFudH0uZ2FwLW1kLTF7Z2FwOi4yNXJlbSFpbXBvcnRhbnR9LmdhcC1tZC0ye2dhcDouNXJlbSFpbXBvcnRhbnR9LmdhcC1tZC0ze2dhcDoxcmVtIWltcG9ydGFudH0uZ2FwLW1kLTR7Z2FwOjEuNXJlbSFpbXBvcnRhbnR9LmdhcC1tZC01e2dhcDozcmVtIWltcG9ydGFudH0udGV4dC1tZC1zdGFydHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LW1kLWVuZHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1tZC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmZsb2F0LWxnLXN0YXJ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1sZy1lbmR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1sZy1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5kLWxnLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtbGctaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1sZy1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1sZy1ncmlke2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmQtbGctdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtbGctdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1sZy10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtbGctZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLWxnLWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fS5kLWxnLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZmxleC1sZy1maWxse2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LWxnLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LWxnLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LWxnLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1sZy1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtbGctZ3Jvdy0we2ZsZXgtZ3JvdzowIWltcG9ydGFudH0uZmxleC1sZy1ncm93LTF7ZmxleC1ncm93OjEhaW1wb3J0YW50fS5mbGV4LWxnLXNocmluay0we2ZsZXgtc2hyaW5rOjAhaW1wb3J0YW50fS5mbGV4LWxnLXNocmluay0xe2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fS5mbGV4LWxnLXdyYXB7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LWxnLW5vd3JhcHtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC1sZy13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1sZy1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1sZy1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbGctZXZlbmx5e2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHkhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMtbGctZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbGctY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbGctc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1sZy1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLWVuZHthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1sZy1jZW50ZXJ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1sZy1hcm91bmR7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2h7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbGctc3RhcnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1lbmR7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbGctY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1iYXNlbGluZXthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9Lm9yZGVyLWxnLWZpcnN0e29yZGVyOi0xIWltcG9ydGFudH0ub3JkZXItbGctMHtvcmRlcjowIWltcG9ydGFudH0ub3JkZXItbGctMXtvcmRlcjoxIWltcG9ydGFudH0ub3JkZXItbGctMntvcmRlcjoyIWltcG9ydGFudH0ub3JkZXItbGctM3tvcmRlcjozIWltcG9ydGFudH0ub3JkZXItbGctNHtvcmRlcjo0IWltcG9ydGFudH0ub3JkZXItbGctNXtvcmRlcjo1IWltcG9ydGFudH0ub3JkZXItbGctbGFzdHtvcmRlcjo2IWltcG9ydGFudH0ubS1sZy0we21hcmdpbjowIWltcG9ydGFudH0ubS1sZy0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tLWxnLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubS1sZy0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubS1sZy00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tLWxnLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tLWxnLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5teC1sZy0we21hcmdpbi1yaWdodDowIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXgtbGctMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5teC1sZy0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5teC1sZy0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubXgtbGctNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5teC1sZy01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDozcmVtIWltcG9ydGFudH0ubXgtbGctYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9Lm15LWxnLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5teS1sZy0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm15LWxnLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm15LWxnLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5teS1sZy00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm15LWxnLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5teS1sZy1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTphdXRvIWltcG9ydGFudH0ubXQtbGctMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tdC1sZy0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXQtbGctMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXQtbGctM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tdC1sZy00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXQtbGctNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tdC1sZy1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1lLWxnLTB7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50fS5tZS1sZy0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tZS1sZy0ye21hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnR9Lm1lLWxnLTN7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5tZS1sZy00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tZS1sZy01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWUtbGctYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9Lm1iLWxnLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWItbGctMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLTJ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWItbGctNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLTV7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0ubWItbGctYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tcy1sZy0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tcy1sZy0xe21hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9Lm1zLWxnLTJ7bWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5tcy1sZy0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tcy1sZy00e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Lm1zLWxnLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9Lm1zLWxnLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9LnAtbGctMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wLWxnLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wLWxnLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnAtbGctM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wLWxnLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wLWxnLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHgtbGctMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHgtbGctMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnB4LWxnLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudH0ucHgtbGctM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHgtbGctNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnB4LWxnLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnB5LWxnLTB7cGFkZGluZy10b3A6MCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnB5LWxnLTF7cGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5weS1sZy0ye3BhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9LnB5LWxnLTN7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnB5LWxnLTR7cGFkZGluZy10b3A6MS41cmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5weS1sZy01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wdC1sZy0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wdC1sZy0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnB0LWxnLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wdC1sZy0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wdC1sZy00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnB0LWxnLTV7cGFkZGluZy10b3A6M3JlbSFpbXBvcnRhbnR9LnBlLWxnLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0ucGUtbGctMXtwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnR9LnBlLWxnLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBlLWxnLTN7cGFkZGluZy1yaWdodDoxcmVtIWltcG9ydGFudH0ucGUtbGctNHtwYWRkaW5nLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnR9LnBlLWxnLTV7cGFkZGluZy1yaWdodDozcmVtIWltcG9ydGFudH0ucGItbGctMHtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0ucGItbGctMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wYi1sZy0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGItbGctM3twYWRkaW5nLWJvdHRvbToxcmVtIWltcG9ydGFudH0ucGItbGctNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wYi1sZy01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wcy1sZy0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHMtbGctMXtwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ucHMtbGctMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wcy1sZy0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHMtbGctNHtwYWRkaW5nLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ucHMtbGctNXtwYWRkaW5nLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LmdhcC1sZy0we2dhcDowIWltcG9ydGFudH0uZ2FwLWxnLTF7Z2FwOi4yNXJlbSFpbXBvcnRhbnR9LmdhcC1sZy0ye2dhcDouNXJlbSFpbXBvcnRhbnR9LmdhcC1sZy0ze2dhcDoxcmVtIWltcG9ydGFudH0uZ2FwLWxnLTR7Z2FwOjEuNXJlbSFpbXBvcnRhbnR9LmdhcC1sZy01e2dhcDozcmVtIWltcG9ydGFudH0udGV4dC1sZy1zdGFydHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LWxnLWVuZHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1sZy1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5mbG9hdC14bC1zdGFydHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uZmxvYXQteGwtZW5ke2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0uZmxvYXQteGwtbm9uZXtmbG9hdDpub25lIWltcG9ydGFudH0uZC14bC1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLXhsLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQteGwtYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQteGwtZ3JpZHtkaXNwbGF5OmdyaWQhaW1wb3J0YW50fS5kLXhsLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXhsLXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQteGwtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLXhsLWZsZXh7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC14bC1pbmxpbmUtZmxleHtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH0uZC14bC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmZsZXgteGwtZmlsbHtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC14bC1yb3d7ZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudH0uZmxleC14bC1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudH0uZmxleC14bC1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgteGwtY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXhsLWdyb3ctMHtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgteGwtZ3Jvdy0xe2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC14bC1zaHJpbmstMHtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC14bC1zaHJpbmstMXtmbGV4LXNocmluazoxIWltcG9ydGFudH0uZmxleC14bC13cmFwe2ZsZXgtd3JhcDp3cmFwIWltcG9ydGFudH0uZmxleC14bC1ub3dyYXB7ZmxleC13cmFwOm5vd3JhcCFpbXBvcnRhbnR9LmZsZXgteGwtd3JhcC1yZXZlcnNle2ZsZXgtd3JhcDp3cmFwLXJldmVyc2UhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteGwtc3RhcnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteGwtZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14bC1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWFyb3VuZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWV2ZW5seXtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtZXZlbmx5IWltcG9ydGFudH0uYWxpZ24taXRlbXMteGwtc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXhsLWVuZHthbGlnbi1pdGVtczpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXhsLWNlbnRlcnthbGlnbi1pdGVtczpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14bC1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXhsLXN0cmV0Y2h7YWxpZ24taXRlbXM6c3RyZXRjaCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteGwtc3RhcnR7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1lbmR7YWxpZ24tY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteGwtY2VudGVye2FsaWduLWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1iZXR3ZWVue2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteGwtYXJvdW5ke2FsaWduLWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1zdHJldGNoe2FsaWduLWNvbnRlbnQ6c3RyZXRjaCFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtYXV0b3thbGlnbi1zZWxmOmF1dG8haW1wb3J0YW50fS5hbGlnbi1zZWxmLXhsLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtZW5ke2FsaWduLXNlbGY6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXhsLWNlbnRlcnthbGlnbi1zZWxmOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtYmFzZWxpbmV7YWxpZ24tc2VsZjpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtc3RyZXRjaHthbGlnbi1zZWxmOnN0cmV0Y2ghaW1wb3J0YW50fS5vcmRlci14bC1maXJzdHtvcmRlcjotMSFpbXBvcnRhbnR9Lm9yZGVyLXhsLTB7b3JkZXI6MCFpbXBvcnRhbnR9Lm9yZGVyLXhsLTF7b3JkZXI6MSFpbXBvcnRhbnR9Lm9yZGVyLXhsLTJ7b3JkZXI6MiFpbXBvcnRhbnR9Lm9yZGVyLXhsLTN7b3JkZXI6MyFpbXBvcnRhbnR9Lm9yZGVyLXhsLTR7b3JkZXI6NCFpbXBvcnRhbnR9Lm9yZGVyLXhsLTV7b3JkZXI6NSFpbXBvcnRhbnR9Lm9yZGVyLXhsLWxhc3R7b3JkZXI6NiFpbXBvcnRhbnR9Lm0teGwtMHttYXJnaW46MCFpbXBvcnRhbnR9Lm0teGwtMXttYXJnaW46LjI1cmVtIWltcG9ydGFudH0ubS14bC0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm0teGwtM3ttYXJnaW46MXJlbSFpbXBvcnRhbnR9Lm0teGwtNHttYXJnaW46MS41cmVtIWltcG9ydGFudH0ubS14bC01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubS14bC1hdXRve21hcmdpbjphdXRvIWltcG9ydGFudH0ubXgteGwtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MCFpbXBvcnRhbnR9Lm14LXhsLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubXgteGwtMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubXgteGwtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9Lm14LXhsLTR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubXgteGwtNXttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9Lm14LXhsLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fS5teS14bC0we21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubXkteGwtMXttYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5teS14bC0ye21hcmdpbi10b3A6LjVyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5teS14bC0ze21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubXkteGwtNHttYXJnaW4tdG9wOjEuNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5teS14bC01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0ubXkteGwtYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm10LXhsLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXQteGwtMXttYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnR9Lm10LXhsLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm10LXhsLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudH0ubXQteGwtNHttYXJnaW4tdG9wOjEuNXJlbSFpbXBvcnRhbnR9Lm10LXhsLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0ubXQteGwtYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50fS5tZS14bC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWUteGwtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWUteGwtMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tZS14bC0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWUteGwtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWUteGwtNXttYXJnaW4tcmlnaHQ6M3JlbSFpbXBvcnRhbnR9Lm1lLXhsLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi14bC0we21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9Lm1iLXhsLTF7bWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5tYi14bC0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tYi14bC0ze21hcmdpbi1ib3R0b206MXJlbSFpbXBvcnRhbnR9Lm1iLXhsLTR7bWFyZ2luLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5tYi14bC01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1iLXhsLWF1dG97bWFyZ2luLWJvdHRvbTphdXRvIWltcG9ydGFudH0ubXMteGwtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXMteGwtMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tcy14bC0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubXMteGwtM3ttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubXMteGwtNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tcy14bC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5tcy14bC1hdXRve21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fS5wLXhsLTB7cGFkZGluZzowIWltcG9ydGFudH0ucC14bC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucC14bC0ye3BhZGRpbmc6LjVyZW0haW1wb3J0YW50fS5wLXhsLTN7cGFkZGluZzoxcmVtIWltcG9ydGFudH0ucC14bC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucC14bC01e3BhZGRpbmc6M3JlbSFpbXBvcnRhbnR9LnB4LXhsLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9LnB4LXhsLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5weC14bC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnB4LXhsLTN7cGFkZGluZy1yaWdodDoxcmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnB4LXhsLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5weC14bC01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5weS14bC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5weS14bC0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ucHkteGwtMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5weS14bC0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5weS14bC00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MS41cmVtIWltcG9ydGFudH0ucHkteGwtNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTozcmVtIWltcG9ydGFudH0ucHQteGwtMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHQteGwtMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wdC14bC0ye3BhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudH0ucHQteGwtM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0ucHQteGwtNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wdC14bC01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wZS14bC0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBlLXhsLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wZS14bC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5wZS14bC0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBlLXhsLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wZS14bC01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLXhsLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBiLXhsLTF7cGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ucGIteGwtMntwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9LnBiLXhsLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBiLXhsLTR7cGFkZGluZy1ib3R0b206MS41cmVtIWltcG9ydGFudH0ucGIteGwtNXtwYWRkaW5nLWJvdHRvbTozcmVtIWltcG9ydGFudH0ucHMteGwtMHtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9LnBzLXhsLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnBzLXhsLTJ7cGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudH0ucHMteGwtM3twYWRkaW5nLWxlZnQ6MXJlbSFpbXBvcnRhbnR9LnBzLXhsLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnBzLXhsLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5nYXAteGwtMHtnYXA6MCFpbXBvcnRhbnR9LmdhcC14bC0xe2dhcDouMjVyZW0haW1wb3J0YW50fS5nYXAteGwtMntnYXA6LjVyZW0haW1wb3J0YW50fS5nYXAteGwtM3tnYXA6MXJlbSFpbXBvcnRhbnR9LmdhcC14bC00e2dhcDoxLjVyZW0haW1wb3J0YW50fS5nYXAteGwtNXtnYXA6M3JlbSFpbXBvcnRhbnR9LnRleHQteGwtc3RhcnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC14bC1lbmR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQteGwtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KXsuZmxvYXQteHhsLXN0YXJ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC14eGwtZW5ke2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0uZmxvYXQteHhsLW5vbmV7ZmxvYXQ6bm9uZSFpbXBvcnRhbnR9LmQteHhsLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQteHhsLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQteHhsLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLXh4bC1ncmlke2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmQteHhsLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXh4bC10YWJsZS1yb3d7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fS5kLXh4bC10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQteHhsLWZsZXh7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC14eGwtaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9LmQteHhsLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZmxleC14eGwtZmlsbHtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC14eGwtcm93e2ZsZXgtZGlyZWN0aW9uOnJvdyFpbXBvcnRhbnR9LmZsZXgteHhsLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LXh4bC1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgteHhsLWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlIWltcG9ydGFudH0uZmxleC14eGwtZ3Jvdy0we2ZsZXgtZ3JvdzowIWltcG9ydGFudH0uZmxleC14eGwtZ3Jvdy0xe2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC14eGwtc2hyaW5rLTB7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgteHhsLXNocmluay0xe2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fS5mbGV4LXh4bC13cmFwe2ZsZXgtd3JhcDp3cmFwIWltcG9ydGFudH0uZmxleC14eGwtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LXh4bC13cmFwLXJldmVyc2V7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14eGwtc3RhcnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteHhsLWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteHhsLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXh4bC1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXh4bC1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14eGwtZXZlbmx5e2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHkhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14eGwtc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXh4bC1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14eGwtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXh4bC1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXh4bC1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXh4bC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXh4bC1lbmR7YWxpZ24tY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteHhsLWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteHhsLWJldHdlZW57YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14eGwtYXJvdW5ke2FsaWduLWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14eGwtc3RyZXRjaHthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLXh4bC1hdXRve2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYteHhsLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLXNlbGYteHhsLWVuZHthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi14eGwtY2VudGVye2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi14eGwtYmFzZWxpbmV7YWxpZ24tc2VsZjpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLXNlbGYteHhsLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH0ub3JkZXIteHhsLWZpcnN0e29yZGVyOi0xIWltcG9ydGFudH0ub3JkZXIteHhsLTB7b3JkZXI6MCFpbXBvcnRhbnR9Lm9yZGVyLXh4bC0xe29yZGVyOjEhaW1wb3J0YW50fS5vcmRlci14eGwtMntvcmRlcjoyIWltcG9ydGFudH0ub3JkZXIteHhsLTN7b3JkZXI6MyFpbXBvcnRhbnR9Lm9yZGVyLXh4bC00e29yZGVyOjQhaW1wb3J0YW50fS5vcmRlci14eGwtNXtvcmRlcjo1IWltcG9ydGFudH0ub3JkZXIteHhsLWxhc3R7b3JkZXI6NiFpbXBvcnRhbnR9Lm0teHhsLTB7bWFyZ2luOjAhaW1wb3J0YW50fS5tLXh4bC0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tLXh4bC0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm0teHhsLTN7bWFyZ2luOjFyZW0haW1wb3J0YW50fS5tLXh4bC00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tLXh4bC01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubS14eGwtYXV0b3ttYXJnaW46YXV0byFpbXBvcnRhbnR9Lm14LXh4bC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudDttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXgteHhsLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubXgteHhsLTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm14LXh4bC0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudDttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubXgteHhsLTR7bWFyZ2luLXJpZ2h0OjEuNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubXgteHhsLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50O21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5teC14eGwtYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9Lm15LXh4bC0we21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubXkteHhsLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubXkteHhsLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm15LXh4bC0ze21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubXkteHhsLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50O21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubXkteHhsLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5teS14eGwtYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm10LXh4bC0we21hcmdpbi10b3A6MCFpbXBvcnRhbnR9Lm10LXh4bC0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXQteHhsLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm10LXh4bC0ze21hcmdpbi10b3A6MXJlbSFpbXBvcnRhbnR9Lm10LXh4bC00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXQteHhsLTV7bWFyZ2luLXRvcDozcmVtIWltcG9ydGFudH0ubXQteHhsLWF1dG97bWFyZ2luLXRvcDphdXRvIWltcG9ydGFudH0ubWUteHhsLTB7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50fS5tZS14eGwtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWUteHhsLTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWUteHhsLTN7bWFyZ2luLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5tZS14eGwtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWUteHhsLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tZS14eGwtYXV0b3ttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9Lm1iLXh4bC0we21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9Lm1iLXh4bC0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWIteHhsLTJ7bWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnR9Lm1iLXh4bC0ze21hcmdpbi1ib3R0b206MXJlbSFpbXBvcnRhbnR9Lm1iLXh4bC00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWIteHhsLTV7bWFyZ2luLWJvdHRvbTozcmVtIWltcG9ydGFudH0ubWIteHhsLWF1dG97bWFyZ2luLWJvdHRvbTphdXRvIWltcG9ydGFudH0ubXMteHhsLTB7bWFyZ2luLWxlZnQ6MCFpbXBvcnRhbnR9Lm1zLXh4bC0xe21hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9Lm1zLXh4bC0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubXMteHhsLTN7bWFyZ2luLWxlZnQ6MXJlbSFpbXBvcnRhbnR9Lm1zLXh4bC00e21hcmdpbi1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9Lm1zLXh4bC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5tcy14eGwtYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudH0ucC14eGwtMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wLXh4bC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucC14eGwtMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucC14eGwtM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wLXh4bC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucC14eGwtNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5weC14eGwtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50O3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHgteHhsLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5weC14eGwtMntwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5weC14eGwtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHgteHhsLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5weC14eGwtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50O3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ucHkteHhsLTB7cGFkZGluZy10b3A6MCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnB5LXh4bC0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ucHkteHhsLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50O3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucHkteHhsLTN7cGFkZGluZy10b3A6MXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnB5LXh4bC00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MS41cmVtIWltcG9ydGFudH0ucHkteHhsLTV7cGFkZGluZy10b3A6M3JlbSFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnB0LXh4bC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wdC14eGwtMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wdC14eGwtMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnB0LXh4bC0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wdC14eGwtNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wdC14eGwtNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucGUteHhsLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0ucGUteHhsLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wZS14eGwtMntwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ucGUteHhsLTN7cGFkZGluZy1yaWdodDoxcmVtIWltcG9ydGFudH0ucGUteHhsLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wZS14eGwtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi14eGwtMHtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0ucGIteHhsLTF7cGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ucGIteHhsLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wYi14eGwtM3twYWRkaW5nLWJvdHRvbToxcmVtIWltcG9ydGFudH0ucGIteHhsLTR7cGFkZGluZy1ib3R0b206MS41cmVtIWltcG9ydGFudH0ucGIteHhsLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBzLXh4bC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHMteHhsLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnBzLXh4bC0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnBzLXh4bC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucHMteHhsLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnBzLXh4bC01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0uZ2FwLXh4bC0we2dhcDowIWltcG9ydGFudH0uZ2FwLXh4bC0xe2dhcDouMjVyZW0haW1wb3J0YW50fS5nYXAteHhsLTJ7Z2FwOi41cmVtIWltcG9ydGFudH0uZ2FwLXh4bC0ze2dhcDoxcmVtIWltcG9ydGFudH0uZ2FwLXh4bC00e2dhcDoxLjVyZW0haW1wb3J0YW50fS5nYXAteHhsLTV7Z2FwOjNyZW0haW1wb3J0YW50fS50ZXh0LXh4bC1zdGFydHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXh4bC1lbmR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQteHhsLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmZzLTF7Zm9udC1zaXplOjIuNXJlbSFpbXBvcnRhbnR9LmZzLTJ7Zm9udC1zaXplOjJyZW0haW1wb3J0YW50fS5mcy0ze2ZvbnQtc2l6ZToxLjc1cmVtIWltcG9ydGFudH0uZnMtNHtmb250LXNpemU6MS41cmVtIWltcG9ydGFudH19QG1lZGlhIHByaW50ey5kLXByaW50LWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmQtcHJpbnQtaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH0uZC1wcmludC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1wcmludC1ncmlke2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnR9LmQtcHJpbnQtdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtcHJpbnQtdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1wcmludC10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtcHJpbnQtZmxleHtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLXByaW50LWlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fS5kLXByaW50LW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH19DQovKiMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAubWluLmNzcy5tYXAgKi8="}},"time_used":41,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":33,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/frontend/preloader/67b42762aee961739859810.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.856Z","timestamp":1785143153856,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/frontend/preloader/67b42762aee961739859810.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 06:23:30 GMT\r\netag: \"1768-67b42762-b5e25451590797e5;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 5992\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":5992,"size_decoded":6388,"mime_type":"image/png","magic":"PNG image data, 100 x 90, 8-bit/color RGBA, non-interlaced","md5":"150455cb1a561cb5d9ccbf17becdb67b","sha1":"c2d9174c94dc6dc79cee6cff19f9462402db6fb1","sha256":"210ab43fd6d751e29c15500353668b7452510cf3cad4ca9a47ef2ed2e31a1145","sha512":"e43f47ac43420da213fba8d97674ff6fb17b0dfc97f521ebf4d1fe1a10fe4e51b8eb063beab5ced406ecd4119504d3b4f1766f3b8bacb55547a4a3bb2d55a13e","ssdeep":"96:Li6GQh1btxa2SWoYsz0CZQMlXeG4suc/URkm7KZMe0Mvyhcx/ESg/i6jQxYXfvv+:uQ7txaNWmzXpMXsr/Pm7cMYvRxcSgjQF","tlshash":"10c19e732676364adb2b92ca01668320d3374304a340dc5d95eebaed65476a2f305b6a","first_seen":"2025-12-19T04:10:19.009625Z","last_seen":"2026-07-27T09:07:02.786578Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":100,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":55,"receive":45,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/frontend/calculation/633ef22566efe1665069605.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.863Z","timestamp":1785143153863,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/frontend/calculation/633ef22566efe1665069605.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"1665b-67b374e4-4706d18c54fade70;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 91739\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":91739,"size_decoded":92137,"mime_type":"image/png","magic":"PNG image data, 600 x 400, 8-bit/color RGBA, non-interlaced","md5":"c91dbcea82af1a3f6ef5399f7fce8286","sha1":"4229c48f08cb4ab4dc253a6c0bd8f6b8aa910d94","sha256":"19fa398894be354179b9d5ed1274747d6a5904ed70c084d7e505d0d2882a1074","sha512":"8a0b8a2c87f66426aa27bde44862a8429395731b95dd217f43703a65d3b754fc703f9b7da624e5cb78e0b21af7f9350249d942ae9411166ee29d6217139e119e","ssdeep":"1536:v+jkEC7w7l2M34tqeZieM/poXt4gdKvivXKm3ssVraQgGWjOVu52t2ttdoAps4N4:GYHsl2M340q9PBVutjOVKtlz4","tlshash":"4f93129d94253a5c09c9b0a71e429b36e51a9f6e42adf8808c0f741c8ccd3b6a775f93","first_seen":"2023-07-15T17:41:21Z","last_seen":"2026-07-30T06:02:32.549275Z","times_seen":27,"resource_available":false,"data":"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"}},"time_used":115,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":109,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/images/user_rankings/67b4373c9e3971739863868.png","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.867Z","timestamp":1785143153867,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/images/user_rankings/67b4373c9e3971739863868.png HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: image/png\r\nlast-modified: Tue, 18 Feb 2025 07:31:08 GMT\r\netag: \"3072-67b4373c-eb92709d5c600000;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 12402\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\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":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]}],"data":{"size":12402,"size_decoded":12799,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"2de1bc04d23145f7ff64dc7c9ae8fdb7","sha1":"299723f5ae3294be46bef7f19927cf8640453331","sha256":"fce9991f1cdd73cf0c610a0b20e233c98573a9eb3e6e8b6f1d78fe75c768923b","sha512":"28010f2fd8bdba9f7eaea5d441bb607ec048ac82e137cb2408ac74f4ee01ff583102924a3539f8eb261139c818a2114e3526f84b4cde090c46a2475bdd5f8080","ssdeep":"384:IjlPKArWcWat8CiRumT7IPrpHqaGo35L/U:I1fNWaqorp+o3h/U","tlshash":"3542c082cdad9ad18d93375371e59f705b748049436ea7c3ca2a57e7b2892840f37343","first_seen":"2025-09-30T11:01:26.474699Z","last_seen":"2026-07-27T12:18:57.827177Z","times_seen":16,"resource_available":false,"data":"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"}},"time_used":120,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"receive":82,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/fonts/la-brands-400.woff2","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.954Z","timestamp":1785143153954,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/fonts/la-brands-400.woff2 HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/assets/global/css/line-awesome.min.css\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"14b24-67b374e4-92fecf2b78bfcda3;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 84772\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":84772,"size_decoded":85171,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 84772, version 1.0","md5":"54b0b4e7de85711c3796882b2b19eb00","sha1":"89f4f0d9ee3a2bde5fa250bbe6dc4a4804e1a863","sha256":"ff70c9bc4650cf5e6b12d1feaa7af29ebf0681993fc0c5ffe3658cea0dbd5403","sha512":"38490f72deaf75fd7a82a23919fe479b5a5a0d0d7279aab96e153dfe413c1ee89f2095111dcccdc58470c17622f6bb44ea4d63a8da6208c973bfea7035a37a21","ssdeep":"1536:5W447cpQ00eKOVGTZUbT3g4SAXjZoUANGBem/V1R6WsMpEEeOWeB:5zSiVGZUwEXjOvGws/WweOhB","tlshash":"e7830284fb35e9e4718ecb30d58432a9d5e9a0f8b91a0456f1c7c07bce2d6fcb196492","first_seen":"2023-04-10T16:26:38Z","last_seen":"2026-08-03T02:29:08.469118Z","times_seen":3221,"resource_available":false,"data":"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"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":29,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"profx.io/assets/global/fonts/la-regular-400.woff2","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.957Z","timestamp":1785143153957,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/global/fonts/la-regular-400.woff2 HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/assets/global/css/line-awesome.min.css\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\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 09:05:53 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"3264-67b374e4-9670b6a33525f787;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 12900\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":12900,"size_decoded":13298,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 12900, version 1.0","md5":"88d9d9416c58bde56378dc4439e3a144","sha1":"bebed8d7033a4df35bebba69f1fc261a78a4ee22","sha256":"51ca2c00a3e30945e52227147fed9e296dde03af3c4d7589e8e95ca5740037db","sha512":"906884d6b687dd0b583872578a107fc7264e4198b3218545c01dd2185a397015b7226e0c96ae3dea6294abf7599052d3d271b6bb8461e972c5e49149f28b95f6","ssdeep":"384:cQ/ZCDaw2Q49jW8QIkW5SepdRZS3KUWSQoppk6CMRYtPP:l/BwzojW8lB5SenCKUtDC3tPP","tlshash":"fe42e1629963cb089c9d5b38b0ee5d401792703dfd9d5bec022bfe52cd4e09e4b1a076","first_seen":"2023-04-05T18:32:05Z","last_seen":"2026-08-03T06:34:27.354056Z","times_seen":5211,"resource_available":false,"data":"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"}},"time_used":41,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":29,"receive":12,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0aef27.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.337Z","timestamp":1785143155337,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0aef27.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"e4f17b44539cdb517c1475424aec5722\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30d96d0883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":11888,"size_decoded":4543,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (11888), with no line terminators","md5":"e4f17b44539cdb517c1475424aec5722","sha1":"6f02d2f55076fd3a4742f18bc41abe2ab11fdbd4","sha256":"c0be6022318db42025ee57c3ef987e375f0591db734457caa0ad249df1202f67","sha512":"2bb5554affecc7a9c5049cf93876876c49f2f36aea08e4ef1ea87374af28b440573078e2c934a850218c45f9e47aa058b0861a3ce19c4e6162dbde3772b35c15","ssdeep":"192:0H9Ma6RIU9HkKRU0Ve20lqXvtsTBkpfCNmeAhbKqxK4ILZvUZaUZSsgM:K6b9HkS316xAFKpLZEh","tlshash":"2732a3c6e8c7b9564227160451efa128f73f2a94771adc18f0a895f34a948c3507bfba","first_seen":"2026-07-08T23:36:09.661392Z","last_seen":"2026-08-03T12:50:03.421837Z","times_seen":1728,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstMmQwYWVmMjciXSx7IjBiZGMiOmZ1bmN0aW9uKHQsZSxpKXsidXNlIHN0cmljdCI7aS5yKGUpO3ZhciBzPWkoIjVhNjAiKSxvPWkoIjJmNjIiKSxuPWkoImYwYjAiKSxhPWkoIjg3ZGQiKTtmdW5jdGlvbiByKHQpe3JldHVybihyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gYih0LGUpe3ZhciBpPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKHM9cy5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksaS5wdXNoLmFwcGx5KGkscyl9cmV0dXJuIGl9ZnVuY3Rpb24gbCh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgaT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9iKE9iamVjdChpKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aCh0LGUsaVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhpKSk6YihPYmplY3QoaSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihpLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBoKHQsZSxpKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1yKHQpfHwhdClyZXR1cm4gdDt2YXIgaT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09aSl7dmFyIHM9aS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9cihzKSlyZXR1cm4gczt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1yKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTppLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1pLHR9dmFyIGM9e25hbWU6IkJ1YmJsZVdpZGdldCIsY29tcG9uZW50czp7ImktZnJhbWUiOnMuYSxUYXdrSWNvbjpuLlRhd2tJY29ufSxkaXJlY3RpdmVzOntUYXdrVG9vbHRpcDpuLlRhd2tUb29sdGlwfSxtaXhpbnM6W2EuYV0sZGF0YTpmdW5jdGlvbigpe3JldHVybntpc0hpZGRlbjoiaGlkZGVuIixjc3NMaW5rOiIiLmNvbmNhdCgiaHR0cHM6Ly9lbWJlZC50YXdrLnRvL19zL3Y0L2FwcC82YTRlNjRlOWYwZCIsIi9jc3MvYnViYmxlLXdpZGdldC5jc3MiKSxjbG9zZUljb25XaWR0aDoxNixtZXNzYWdlUHJldmlld0lzVmlzaWJsZTohMSxrZXk6bi5IZWxwZXIuZ2VuZXJhdGVVVUlEKCl9fSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLiRldmVudEJ1cy4kb24oInN3aXRjaFdpZGdldCIsKGZ1bmN0aW9uKCl7dC5rZXk9bi5IZWxwZXIuZ2VuZXJhdGVVVUlEKCl9KSl9LGNvbXB1dGVkOmwobCh7fSxPYmplY3Qoby5jKSh7bWluRGVza3RvcDoid2lkZ2V0L21pbkRlc2t0b3AiLGNoYXRXaW5kb3dTdGF0ZToic2Vzc2lvbi9jaGF0V2luZG93U3RhdGUiLHBhZ2VTdGF0dXM6InNlc3Npb24vcGFnZVN0YXR1cyIsYnViYmxlOiJ3aWRnZXQvYnViYmxlIixpc0NlbnRlcjoid2lkZ2V0L2lzQ2VudGVyIixpc1JpZ2h0OiJ3aWRnZXQvaXNSaWdodCIsaXNCb3R0b206IndpZGdldC9pc0JvdHRvbSIsY2hhdEJ1YmJsZUNsb3NlZDoic2Vzc2lvbi9jaGF0QnViYmxlQ2xvc2VkIixpc1JUTDoid2lkZ2V0L2lzUlRMIn0pKSx7fSx7aXNSb3VuZFdpZGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MuaXNSb3VuZFdpZGdldCgpfSx4T2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy54T2Zmc2V0KCl9LHlPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kVGF3a1dpZGdldFNldHRpbmdzLnlPZmZzZXQoKX0sYnViYmxlWE9mZnNldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MuYnViYmxlWE9mZnNldCgpfSxidWJibGVZT2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJFRhd2tXaWRnZXRTZXR0aW5ncy5idWJibGVZT2Zmc2V0KCl9LGJ1YmJsZVJvdGF0ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MuYnViYmxlUm90YXRlKCl9LGNsb3NlQnV0dG9uUG9zaXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc0JvdHRvbXx8dGhpcy5pc0NlbnRlcj90aGlzLmlzQ2VudGVyJiZ0aGlzLmlzUmlnaHQ/InRhd2staWNvbi1sZWZ0IjoidGF3ay1pY29uLXJpZ2h0IjoidGF3ay1pY29uLWJvdHRvbSJ9LHRleHRDbG9zZUJ1dHRvbjpmdW5jdGlvbigpe3ZhciB0PXt3aWR0aDoiMjVweCIsaGVpZ2h0OiIyNXB4IixwYWRkaW5nOjAsYmFja2dyb3VuZDoidHJhbnNwYXJlbnQiLHBvc2l0aW9uOiJhYnNvbHV0ZSJ9O3JldHVybiB0aGlzLmlzUlRMP3QubGVmdD0iMnB4Ijp0LnJpZ2h0PSIycHgiLHRoaXMuaXNCb3R0b218fHRoaXMuaXNDZW50ZXI/dC50b3A9IjAiOnQuYm90dG9tPSIwIix0fSxzdHlsZU9iamVjdDpmdW5jdGlvbigpe3ZhciB0PWwoeyJwb3NpdGlvbjoiOiJmaXhlZCAhaW1wb3J0YW50OyIsImRpc3BsYXk6Ijoibm9uZSAhaW1wb3J0YW50OyIsInotaW5kZXg6IjoiIi5jb25jYXQoMD09PXRoaXMuYnViYmxlLmNvbmZpZy56SW5kZXg/IjEwMDAwMDAiOiIxMDAwMDA0IiwiICFpbXBvcnRhbnQ7IiksImhlaWdodDoiOiIiLmNvbmNhdCh0aGlzLmhlaWdodCwiICFpbXBvcnRhbnQ7IiksIm1heC1oZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5oZWlnaHQsIiAhaW1wb3J0YW50OyIpLCJtaW4taGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuaGVpZ2h0LCIgIWltcG9ydGFudDsiKSwid2lkdGg6IjoiIi5jb25jYXQodGhpcy53aWR0aCwiICFpbXBvcnRhbnQ7IiksIm1heC13aWR0aDoiOiIiLmNvbmNhdCh0aGlzLndpZHRoLCIgIWltcG9ydGFudDsiKSwibWluLXdpZHRoOiI6IiIuY29uY2F0KHRoaXMud2lkdGgsIiAhaW1wb3J0YW50OyIpfSx0aGlzLmNhbGN1bGF0ZVBvc2l0aW9uKCkpO3JldHVybiJtYXgiPT09dGhpcy5jaGF0V2luZG93U3RhdGV8fCJvZmZsaW5lIj09PXRoaXMucGFnZVN0YXR1c3x8dGhpcy5jaGF0QnViYmxlQ2xvc2VkfHx0aGlzLm1lc3NhZ2VQcmV2aWV3SXNWaXNpYmxlP3RbImRpc3BsYXk6Il09Im5vbmUgIWltcG9ydGFudDsiOnRbImRpc3BsYXk6Il09ImJsb2NrICFpbXBvcnRhbnQ7IixsKGwoe30sdGhpcy5nZW5lcmljU3R5bGVzKSx0KX0sd2lkdGg6ZnVuY3Rpb24oKXtpZigidGV4dCI9PT10aGlzLmJ1YmJsZS50eXBlKXJldHVybiIxNDZweCI7dmFyIHQ9ImltYWdlIj09PXRoaXMuYnViYmxlLnR5cGUmJiJnYWxsZXJ5IiE9PXRoaXMuYnViYmxlLmNvbmZpZy5pbWFnZS50eXBlJiY5MD09PU1hdGguYWJzKHRoaXMuYnViYmxlUm90YXRlKTtyZXR1cm4iIi5jb25jYXQodD90aGlzLmJ1YmJsZS5jb25maWcuaGVpZ2h0OnRoaXMuYnViYmxlLmNvbmZpZy53aWR0aCwicHgiKX0saGVpZ2h0OmZ1bmN0aW9uKCl7aWYoInRleHQiPT09dGhpcy5idWJibGUudHlwZSlyZXR1cm4iODVweCI7dmFyIHQ9ImltYWdlIj09PXRoaXMuYnViYmxlLnR5cGUmJiJnYWxsZXJ5IiE9PXRoaXMuYnViYmxlLmNvbmZpZy5pbWFnZS50eXBlJiY5MD09PU1hdGguYWJzKHRoaXMuYnViYmxlUm90YXRlKTtyZXR1cm4iIi5jb25jYXQodD90aGlzLmJ1YmJsZS5jb25maWcud2lkdGgrdGhpcy5jbG9zZUljb25XaWR0aDp0aGlzLmJ1YmJsZS5jb25maWcuaGVpZ2h0K3RoaXMuY2xvc2VJY29uV2lkdGgsInB4Iil9LGltYWdlU3R5bGVzOmZ1bmN0aW9uKCl7dmFyIHQ9e3dpZHRoOiIiLmNvbmNhdCh0aGlzLmJ1YmJsZS5jb25maWcud2lkdGgsInB4IiksaGVpZ2h0OiIiLmNvbmNhdCh0aGlzLmJ1YmJsZS5jb25maWcuaGVpZ2h0LCJweCIpfTtpZighKCJpbWFnZSI9PT10aGlzLmJ1YmJsZS50eXBlJiYiZ2FsbGVyeSIhPT10aGlzLmJ1YmJsZS5jb25maWcuaW1hZ2UudHlwZSl8fDA9PT10aGlzLmJ1YmJsZVJvdGF0ZSlyZXR1cm4gdDt2YXIgZT1sKGwoe30sdCkse30se29iamVjdEZpdDoiY29udGFpbiIsdHJhbnNmb3JtT3JpZ2luOiJ0b3AgbGVmdCJ9KTtyZXR1cm4gOTA9PT10aGlzLmJ1YmJsZVJvdGF0ZT9lLnRyYW5zZm9ybT0icm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMCwgLTEwMCUpIjotOTA9PT10aGlzLmJ1YmJsZVJvdGF0ZSYmKGUudHJhbnNmb3JtPSJyb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoLTEwMCUsIDApIiksZX0saW1hZ2VVcmw6ZnVuY3Rpb24oKXt2YXIgdCxlPXRoaXMuYnViYmxlLmNvbmZpZztpZigiZ2FsbGVyeSI9PT1lLmltYWdlLnR5cGUpe3ZhciBpPXBhcnNlSW50KGUuaW1hZ2UuY29udGVudCwxMCkscz0yMj09PWk7dGhpcy5pc1JvdW5kV2lkZ2V0JiYoaSs9Ii1yIiksdGhpcy5pc0NlbnRlcj9pKz10aGlzLmlzUmlnaHQ/Ii1jciI6Ii1jbCI6dGhpcy5pc0JvdHRvbT9pKz10aGlzLmlzUmlnaHQ/Ii1iciI6Ii1ibCI6aSs9dGhpcy5pc1JpZ2h0PyItdHIiOiItdGwiLHQ9IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIiwiL2ltYWdlcy9hdHRlbnRpb24tZ3JhYmJlcnMvIikuY29uY2F0KGkpLmNvbmNhdChzPyIucG5nIjoiLnN2ZyIpfWVsc2UgdD0iIi5jb25jYXQoImh0dHBzOi8vdGF3ay5saW5rIiwiLyIpLmNvbmNhdChlLmltYWdlLmNvbnRlbnQpO3JldHVybiB0fSxvZmZzZXRzOmZ1bmN0aW9uKCl7dmFyIHQ9MCxlPTAsaT0wO2lmKHRoaXMuaXNDZW50ZXIpaWYoInRleHQiPT09dGhpcy5idWJibGUudHlwZSllPXRoaXMueU9mZnNldCx0aGlzLmlzUmlnaHQ/KGk9LTkwLHRoaXMuaXNSVEwmJihlPXRoaXMubWluRGVza3RvcC53aWR0aCtlLTE0NiksZS09MTApOihpPTkwLHRoaXMuaXNSb3VuZFdpZGdldHx8KGU9dGhpcy5taW5EZXNrdG9wLndpZHRoK2UtMTQ2KSxlKz0xMCksdD10aGlzLm1pbkRlc2t0b3AuaGVpZ2h0K3RoaXMueE9mZnNldCsyO2Vsc2V7dmFyIHM9ImltYWdlIj09PXRoaXMuYnViYmxlLnR5cGUmJiJnYWxsZXJ5Ij09PXRoaXMuYnViYmxlLmNvbmZpZy5pbWFnZS50eXBlO2U9dGhpcy5idWJibGVZT2Zmc2V0LHQ9dGhpcy5idWJibGVYT2Zmc2V0LGk9dGhpcy5idWJibGVSb3RhdGUscyYmKGUrPXRoaXMueU9mZnNldCx0Kz10aGlzLnhPZmZzZXQpLDAhPT10aGlzLmJ1YmJsZVJvdGF0ZSYmKHM/dC09Mzp0Kz0yKX1lbHNlInRleHQiPT09dGhpcy5idWJibGUudHlwZT8oZT10aGlzLm1pbkRlc2t0b3AuaGVpZ2h0K3RoaXMueU9mZnNldCsyLHQ9dGhpcy54T2Zmc2V0KToiaW1hZ2UiPT09dGhpcy5idWJibGUudHlwZSYmImdhbGxlcnkiPT09dGhpcy5idWJibGUuY29uZmlnLmltYWdlLnR5cGU/KGU9dGhpcy55T2Zmc2V0K3RoaXMuYnViYmxlWU9mZnNldCx0PXRoaXMueE9mZnNldCt0aGlzLmJ1YmJsZVhPZmZzZXQsaT10aGlzLmJ1YmJsZVJvdGF0ZSk6KGU9dGhpcy5idWJibGVZT2Zmc2V0LHQ9dGhpcy5idWJibGVYT2Zmc2V0LGk9dGhpcy5idWJibGVSb3RhdGUpO3JldHVybnt4T2Zmc2V0OnQseU9mZnNldDplLHJvdGF0ZTppfX19KSxtZXRob2RzOmwobCh7fSxPYmplY3Qoby5iKSh7dG9nZ2xlV2lkZ2V0OiJzZXNzaW9uL3RvZ2dsZVdpZGdldCIsY2xvc2VDaGF0QnViYmxlOiJzZXNzaW9uL2Nsb3NlQ2hhdEJ1YmJsZSJ9KSkse30se2NhbGN1bGF0ZVBvc2l0aW9uOmZ1bmN0aW9uKCl7dmFyIHQ9ImltYWdlIj09PXRoaXMuYnViYmxlLnR5cGUmJiJnYWxsZXJ5Ij09PXRoaXMuYnViYmxlLmNvbmZpZy5pbWFnZS50eXBlLGU9ImltYWdlIj09PXRoaXMuYnViYmxlLnR5cGUmJiJnYWxsZXJ5IiE9PXRoaXMuYnViYmxlLmNvbmZpZy5pbWFnZS50eXBlJiY5MD09PU1hdGguYWJzKHRoaXMuYnViYmxlUm90YXRlKSxpPXRoaXMub2Zmc2V0cyxzPSJ0ZXh0Ij09PXRoaXMuYnViYmxlLnR5cGU/ODU6dGhpcy5idWJibGUuY29uZmlnLmhlaWdodCt0aGlzLmNsb3NlSWNvbldpZHRoLG89InRleHQiPT09dGhpcy5idWJibGUudHlwZT8xNDY6dGhpcy5idWJibGUuY29uZmlnLndpZHRoO2UmJihvPXRoaXMuYnViYmxlLmNvbmZpZy5oZWlnaHQscz10aGlzLmJ1YmJsZS5jb25maWcud2lkdGgrdGhpcy5jbG9zZUljb25XaWR0aCk7dmFyIG4sYSxyPXt9LGI9IjA7IixsPSI1MCUgIWltcG9ydGFudDsiO2lmKHRoaXMuaXNDZW50ZXIpe3ZhciBoLGM9aS55T2Zmc2V0LHU9LS41KnM7Yj0iNDklOyIsMD09PWkucm90YXRlPyh0PyhoPTAsbD0iY2FsYyg1MCUgLSAiLmNvbmNhdCguNSp0aGlzLmJ1YmJsZS5jb25maWcuaGVpZ2h0KzEzLWMsInB4KSAhaW1wb3J0YW50OyIpLG49IjAiKTpoPS41Kih0aGlzLm1pbkRlc2t0b3Aud2lkdGgtcyksYT0iIi5jb25jYXQoaS54T2Zmc2V0LCJweCAhaW1wb3J0YW50OyIpKTp0PyhoPTAsYz0wPT09dGhpcy55T2Zmc2V0PzA6aS55T2Zmc2V0LGE9IiIuY29uY2F0KC0xKiguNSooby1zKS1pLnlPZmZzZXQpLCJweCAhaW1wb3J0YW50OyIpKTooaD0uNSoodGhpcy5taW5EZXNrdG9wLndpZHRoLW8pLGE9IiIuY29uY2F0KC0xKiguNSooby1zKS1pLnhPZmZzZXQpLCJweCAhaW1wb3J0YW50OyIpKSx0aGlzLmlzUmlnaHQ/KHJbInJpZ2h0OiJdPWEsclsibGVmdDoiXT0iYXV0byAhaW1wb3J0YW50OyIpOihyWyJyaWdodDoiXT0iYXV0byAhaW1wb3J0YW50OyIsclsibGVmdDoiXT1hKSxyWyJ0b3A6Il09bCxyWyJib3R0b206Il09ImF1dG8gIWltcG9ydGFudDsiLG58fChuPXUtaCtjKX1lbHNle249IjAiO3RoaXMuaXNCb3R0b20/KHJbImJvdHRvbToiXT1pLnlPZmZzZXQrInB4ICFpbXBvcnRhbnQ7IixyWyJ0b3A6Il09ImF1dG8gIWltcG9ydGFudDsiKTooclsiYm90dG9tOiJdPSJhdXRvICFpbXBvcnRhbnQ7IixyWyJ0b3A6Il09aS55T2Zmc2V0LTE4KyJweCAhaW1wb3J0YW50OyIpLHRoaXMuaXNSaWdodD8oclsicmlnaHQ6Il09aS54T2Zmc2V0KyJweCAhaW1wb3J0YW50OyIsclsibGVmdDoiXT0iYXV0byAhaW1wb3J0YW50OyIpOihyWyJyaWdodDoiXT0iYXV0byAhaW1wb3J0YW50OyIsclsibGVmdDoiXT1pLnhPZmZzZXQrInB4ICFpbXBvcnRhbnQ7Iil9dmFyIGY9ZT8idHJhbnNsYXRlWigwKTsiOiJyb3RhdGUoIi5jb25jYXQoaS5yb3RhdGUsImRlZykgdHJhbnNsYXRlWigwKTsiKTtyZXR1cm4gclsidHJhbnNmb3JtOiJdPWYsclsiLW1vei10cmFuc2Zvcm06Il09ZixyWyItd2Via2l0LXRyYW5zZm9ybToiXT1mLHJbIi1vLXRyYW5zZm9ybToiXT1mLHJbIi1tcy10cmFuc2Zvcm06Il09ZixyWyJ0cmFuc2Zvcm0tb3JpZ2luOiJdPWIsclsiLW1vei10cmFuc2Zvcm0tb3JpZ2luOiJdPWIsclsiLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiJdPWIsclsiLW8tdHJhbnNmb3JtLW9yaWdpbjoiXT1iLHJbIi1tcy10cmFuc2Zvcm0tb3JpZ2luOiJdPWIsclsibWFyZ2luOiJdPSIiLmNvbmNhdChuLCJweCAwIDAgMCAhaW1wb3J0YW50OyIpLHJ9LGJ1YmJsZUNsb3NlOmZ1bmN0aW9uKHQpe3Quc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbG9zZUNoYXRCdWJibGUoKX0sdXBkYXRlTWVzc2FnUHJldmlld0RhdGE6ZnVuY3Rpb24odCl7dGhpcy5tZXNzYWdlUHJldmlld0lzVmlzaWJsZT10fSxsb2FkZWQ6ZnVuY3Rpb24oKXtpZigidGV4dCI9PT10aGlzLmJ1YmJsZS50eXBlKXt2YXIgdCxlLGkscyxvLG4sYSxyLGIsbCxoLGMsdSxmPXRoaXMuJHJlZnNbInRhd2stY2FudmFzLWJ1YmJsZSJdO2lmKCFmfHwhZi5nZXRDb250ZXh0KXJldHVybjt2YXIgZz01LHA9MTM0LG09NjMsZD10aGlzLmJ1YmJsZS5jb25maWcuYmFja2dyb3VuZCx5PWYuZ2V0Q29udGV4dCgiMmQiKSx3PSIjZTNlMGU3Ijt5LmNsZWFyUmVjdCgwLDAsMTM0LDYzKSx5LmZpbGxTdHlsZT1kLHRoaXMuaXNDZW50ZXJ8fHRoaXMuaXNCb3R0b20/KHQ9Zz02LGU9ZyttLTMsaT01NSxzPTc5LG89ITAsbj17czE6LjksYTE6LjEsczI6LjQsYTI6MS4xNX0pOih0PTY4LGU9KGc9MTYpKzMsaT04MSxzPTYsbz0hMSxuPXtzMToxLjEsYTE6MS45LHMyOjEuNixhMjouODV9KSx0aGlzLmlzUlRMPyhyPShhPTEwKSsyLGI9YSs1LGw9YS0yLGg9YS0yLGM9YSs1LGk9ODEsdT0hbyx0aGlzLmlzQm90dG9tfHx0aGlzLmlzQ2VudGVyPyh1PSFvLG4uczI9LjYsbi5hMj0xLjg1KToodT1vLG4uczI9LjIsbi5hMj0xLjQ1KSk6KHI9KGE9MikrcC0yLGI9YStwLTUsbD1hK3ArMixoPWErcCsyLGM9YStwLTUsdT1vKSx5LmJlZ2luUGF0aCgpLHkubW92ZVRvKGErOCxnKSx5LmxpbmVUbyg2OCxnKSx5LmxpbmVUbyhhK3AtOCxnKSx5LnF1YWRyYXRpY0N1cnZlVG8oYStwLGcsYStwLGcrOCkseS5saW5lVG8oYStwLGcrbS04KSx5LnF1YWRyYXRpY0N1cnZlVG8oYStwLGcrbSxhK3AtOCxnK20pLHkubGluZVRvKGErOCxnK20pLHkucXVhZHJhdGljQ3VydmVUbyhhLGcrbSxhLGcrbS04KSx5LmxpbmVUbyhhLGcrOCkseS5xdWFkcmF0aWNDdXJ2ZVRvKGEsZyxhKzgsZykseS5zdHJva2VTdHlsZT13LHkubGluZVdpZHRoPTIseS5zdHJva2UoKSx5LmNsb3NlUGF0aCgpLHkuZmlsbCgpLHkuYmVnaW5QYXRoKCkseS5hcmMoNjgsZSwxMCxNYXRoLlBJKm4uczEsTWF0aC5QSSpuLmExLG8pLHkuc3Ryb2tlU3R5bGU9dyx5LmxpbmVXaWR0aD0yLHkuc3Ryb2tlKCkseS5maWxsKCksdGhpcy5pc1JvdW5kV2lkZ2V0JiYodGhpcy5pc0JvdHRvbXx8dGhpcy5pc0NlbnRlcnx8dGhpcy5pc1JpZ2h0Pyh0aGlzLmlzQm90dG9tJiZ0aGlzLmlzUmlnaHR8fHRoaXMuaXNDZW50ZXImJnRoaXMuaXNSaWdodCkmJihpKz0zMCk6aS09MzApLHkuYmVnaW5QYXRoKCkseS5hcmMoaSxzLDUsMCwyKk1hdGguUEksITEpLHkuc3Ryb2tlU3R5bGU9dyx5LmxpbmVXaWR0aD0yLHkuc3Ryb2tlKCkseS5jbG9zZVBhdGgoKSx5LmZpbGwoKSx5LmJlZ2luUGF0aCgpLHkuYXJjKHIsdCs1LDEwLE1hdGguUEkqbi5zMixNYXRoLlBJKm4uYTIsdSkseS5zdHJva2VTdHlsZT13LHkubGluZVdpZHRoPTIseS5zdHJva2UoKSx5LmNsb3NlUGF0aCgpLHkuZmlsbFN0eWxlPWQseS5maWxsKCkseS5iZWdpblBhdGgoKSx5Lm1vdmVUbyhiLHQrMS41KSx5LmxpbmVUbyhsLHQrOCkseS5jbG9zZVBhdGgoKSx5LmxpbmVXaWR0aD0yLHkuc3Ryb2tlU3R5bGU9dGhpcy5idWJibGUuY29uZmlnLmZvcmVncm91bmQseS5zdHJva2UoKSx5LmJlZ2luUGF0aCgpLHkubW92ZVRvKGgsdCsxLjUpLHkubGluZVRvKGMsdCs4KSx5LmNsb3NlUGF0aCgpLHkubGluZVdpZHRoPTIseS5zdHJva2VTdHlsZT10aGlzLmJ1YmJsZS5jb25maWcuZm9yZWdyb3VuZCx5LnN0cm9rZSgpfXRoaXMuJGV2ZW50QnVzLiRvbigibXBJc1Zpc2libGUiLHRoaXMudXBkYXRlTWVzc2FnUHJldmlld0RhdGEpfSxiZWZvcmVEZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy4kZXZlbnRCdXMuJG9mZigibXBJc1Zpc2libGUiLHRoaXMudXBkYXRlTWVzc2FnUHJldmlld0RhdGEpfX0pfSx1PWkoIjI4NzciKSxmPU9iamVjdCh1LmEpKGMsKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxlPXQuX3NlbGYuX2M7cmV0dXJuIGUoImktZnJhbWUiLHtrZXk6dC5rZXksYXR0cnM6e2Nzc0xpbms6dC5jc3NMaW5rLHN0eWxlT2JqZWN0OnQuc3R5bGVPYmplY3Qsd2lkdGg6dC53aWR0aCxoZWlnaHQ6dC5oZWlnaHR9fSxbZSgiZGl2Iix7cmVmOiJ0YXdrLWJ1YmJsZS1jb250YWluZXIiLHN0YXRpY0NsYXNzOiJ0YXdrLWJ1YmJsZS1jb250YWluZXIiLGF0dHJzOntpZDoidGF3ay1idWJibGUtY29udGFpbmVyIixyb2xlOiJidXR0b24iLHRhYmluZGV4OiIwIn0sb246e2NsaWNrOnQudG9nZ2xlV2lkZ2V0LGtleXVwOmZ1bmN0aW9uKGUpe3JldHVybiFlLnR5cGUuaW5kZXhPZigia2V5IikmJnQuX2soZS5rZXlDb2RlLCJlbnRlciIsMTMsZS5rZXksIkVudGVyIik/bnVsbDp0LnRvZ2dsZVdpZGdldC5hcHBseShudWxsLGFyZ3VtZW50cyl9fX0sWyJ0ZXh0Ij09PXQuYnViYmxlLnR5cGU/ZSgiZGl2IixbZSgiY2FudmFzIix7cmVmOiJ0YXdrLWNhbnZhcy1idWJibGUiLGF0dHJzOntpZDoidGF3ay1jYW52YXMtYnViYmxlIix3aWR0aDoiMTQ2cHgiLGhlaWdodDoiODVweCJ9fSksZSgiZGl2Iix7c3RhdGljQ2xhc3M6InRhd2stYnViYmxlLXRleHQtY29udGFpbmVyIHRhd2stZmxleCB0YXdrLWZsZXgtY2VudGVyIHRhd2stZmxleC1taWRkbGUiLHN0eWxlOnt0b3A6dC5pc0JvdHRvbXx8dC5pc0NlbnRlcj8iNXB4IjoiYXV0byIsYm90dG9tOnQuaXNCb3R0b218fHQuaXNDZW50ZXI/ImF1dG8iOiI1cHgiLGxlZnQ6ImF1dG8iLHJpZ2h0OiI5cHgifSxhdHRyczp7aWQ6InRhd2stYnViYmxlLXRleHQtY29udGFpbmVyIn19LFtlKCJwIix7c3RhdGljQ2xhc3M6InRhd2stdGV4dC1jZW50ZXIgdGF3ay10ZXh0LWl0YWxpYyIsc3R5bGU6e2NvbG9yOnQuYnViYmxlLmNvbmZpZy5mb3JlZ3JvdW5kfSxhdHRyczp7aWQ6InRhd2stYnViYmxlLXRleHQifX0sW3QuX3YoIiAiK3QuX3ModC5idWJibGUuY29uZmlnLmNvbnRlbnQpKyIgIildKV0pLGUoImRpdiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIix2YWx1ZTp7cG9zaXRpb246dGhpcy5pc0JvdHRvbXx8dGhpcy5pc0NlbnRlcj8iIjoiYm90dG9tIn0sZXhwcmVzc2lvbjoie3Bvc2l0aW9uIDogKHRoaXMuaXNCb3R0b20gfHwgdGhpcy5pc0NlbnRlciA/ICcnIDogJ2JvdHRvbScpfSJ9XSxzdHlsZTp0LnRleHRDbG9zZUJ1dHRvbixhdHRyczp7cm9sZToiYnV0dG9uIix0YWJpbmRleDoiMCIsImRhdGEtdGV4dCI6dC4kaTE4bigiZm9ybSIsImNsb3NlX2J1dHRvbiIpLCJhcmlhLWxhYmVsIjp0LiRpMThuKCJmb3JtIiwiY2xvc2VfYnV0dG9uIil9LG9uOntjbGljazp0LmJ1YmJsZUNsb3NlLGtleWRvd246ZnVuY3Rpb24oZSl7cmV0dXJuIWUudHlwZS5pbmRleE9mKCJrZXkiKSYmdC5fayhlLmtleUNvZGUsImVudGVyIiwxMyxlLmtleSwiRW50ZXIiKT9udWxsOnQuYnViYmxlQ2xvc2UuYXBwbHkobnVsbCxhcmd1bWVudHMpfX19KV0pOmUoImRpdiIse2NsYXNzOnQuY2xvc2VCdXR0b25Qb3NpdGlvbn0sW2UoInRhd2staWNvbiIse2RpcmVjdGl2ZXM6W3tuYW1lOiJ0YXdrLXRvb2x0aXAiLHJhd05hbWU6InYtdGF3ay10b29sdGlwIn1dLGF0dHJzOnt0eXBlOiJ4Iixyb2xlOiJidXR0b24iLHRhYmluZGV4OiIwIiwiZGF0YS10ZXh0Ijp0LiRpMThuKCJmb3JtIiwiY2xvc2VfYnV0dG9uIiksImFyaWEtbGFiZWwiOnQuJGkxOG4oImZvcm0iLCJjbG9zZV9idXR0b24iKX0sb246e2NsaWNrOnQuYnViYmxlQ2xvc2Usa2V5ZG93bjpmdW5jdGlvbihlKXtyZXR1cm4hZS50eXBlLmluZGV4T2YoImtleSIpJiZ0Ll9rKGUua2V5Q29kZSwiZW50ZXIiLDEzLGUua2V5LCJFbnRlciIpP251bGw6dC5idWJibGVDbG9zZS5hcHBseShudWxsLGFyZ3VtZW50cyl9fX0pLGUoImltZyIse3N0eWxlOnQuaW1hZ2VTdHlsZXMsYXR0cnM6e3NyYzp0LmltYWdlVXJsLGFsdDoiIi5jb25jYXQodC4kaTE4bigiYnViYmxlIiwiYXR0ZW50aW9uX2dyYWJiZXIiKSl9fSldLDEpXSldKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTtlLmRlZmF1bHQ9Zi5leHBvcnRzfX1dKTs="}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"embed.tawk.to/_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0c8092.js","fqdn":"embed.tawk.to","domain":"tawk.to","tld":"to"},"ip":{"addr":"172.66.161.212","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:55.348Z","timestamp":1785143155348,"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":"tawk.to","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 02 Jul 2026 14:04:11 GMT","end":"Wed, 30 Sep 2026 15:03:57 GMT"},"fingerprint":{"sha1":"ED:3E:E2:72:09:AB:BB:25:BA:C7:69:1A:2C:33:2D:08:34:B4:E4:78","sha256":"91:61:3A:D6:A9:8E:D7:99:DA:67:1E:EC:DB:72:D9:C5:E9:CC:9F:8B:2F:1F:13:51:07:F4:56:8A:90:BA:77:C4"}}},"request":{"raw":"GET /_s/v4/app/6a4e64e9f0d/js/twk-chunk-2d0c8092.js HTTP/1.1\r\nHost: embed.tawk.to\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) 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://profx.io/\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\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 09:05:55 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Wed, 08 Jul 2026 14:56:38 GMT\r\netag: W/\"8f81a7bf3d3d053b77fe013413abf8e2\"\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=2592000, immutable\r\nx-cache-status: HIT\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=0; includeSubDomains; preload\r\nage: 1591665\r\nvary: accept-encoding\r\ncf-cache-status: HIT\r\npriority: u=3,i=?0\r\nx-content-type-options: nosniff\r\ncf-ray: a21a7c30e9750883-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":5261,"size_decoded":2634,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (5261), with no line terminators","md5":"8f81a7bf3d3d053b77fe013413abf8e2","sha1":"d080f3787f12145036209fada5c29f6d2931bb8b","sha256":"d71f406a3ecbcf4dcb1b79d075c15d935f11dee4efd1fcf4dea492182278c261","sha512":"6c3499d947c237b6c6731448ab2a7eeccc25dc62c2cbf1f59bc1528e12b3ff2d50c4c10c4f847b8473407fbe5f417fd6f5bea070815c46352ba7a9f29a1ae249","ssdeep":"96:zNC9Hqt7pEma7hY/rcKoJBPDRIv6hJQ7i16p3n4vkjvxQcsD:zKHhNYmLRIvgx43nVY","tlshash":"c3b1859ef247b456c156225150ef3b1df33a281ca61ccdc8a66565f218784cba077f3d","first_seen":"2026-07-08T23:24:03.884969Z","last_seen":"2026-08-03T12:50:03.428379Z","times_seen":2521,"resource_available":true,"data":"KHdpbmRvdy50YXdrSnNvbnA9d2luZG93LnRhd2tKc29ucHx8W10pLnB1c2goW1siY2h1bmstMmQwYzgwOTIiXSx7IjUyYmEiOmZ1bmN0aW9uKHQsZSxpKXsidXNlIHN0cmljdCI7aS5yKGUpO3ZhciBuPWkoIjJmNjIiKSxyPWkoImYwYjAiKSxvPWkoIjVhNjAiKSxzPWkoIjg3ZGQiKSxhPWkoIjdmNDYiKTtmdW5jdGlvbiBjKHQpe3JldHVybihjPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSkodCl9ZnVuY3Rpb24gZCh0LGUpe3ZhciBpPU9iamVjdC5rZXlzKHQpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSksaS5wdXNoLmFwcGx5KGksbil9cmV0dXJuIGl9ZnVuY3Rpb24gaCh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgaT1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9kKE9iamVjdChpKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bSh0LGUsaVtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhpKSk6ZChPYmplY3QoaSkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihpLGUpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiBtKHQsZSxpKXtyZXR1cm4oZT1mdW5jdGlvbih0KXt2YXIgZT1mdW5jdGlvbih0LGUpe2lmKCJvYmplY3QiIT1jKHQpfHwhdClyZXR1cm4gdDt2YXIgaT10W1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09aSl7dmFyIG49aS5jYWxsKHQsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9YyhuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikodCl9KHQsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT1jKGUpP2U6ZSsiIn0oZSkpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTppLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1pLHR9dmFyIGc9e25hbWU6IkJyYW5kaW5nV2lkZ2V0Iixjb21wb25lbnRzOntJRnJhbWU6by5hLFRhd2tCcmFuZGluZzpyLlRhd2tCcmFuZGluZ30sbWl4aW5zOltzLmFdLGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y3NzTGluazoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hcHAvNmE0ZTY0ZTlmMGQiLCIvY3NzL2JyYW5kaW5nLXdpZGdldC5jc3MiKSxpbWFnZVVybDoiIi5jb25jYXQoImh0dHBzOi8vZW1iZWQudGF3ay50by9fcy92NC9hc3NldHMiLCIvaW1hZ2VzL1Rhd2t5XzE2eDE2LnN2ZyIpLHBvd2VySW1hZ2VVUkw6IiIuY29uY2F0KCJodHRwczovL2VtYmVkLnRhd2sudG8vX3MvdjQvYXNzZXRzIiwiL2ltYWdlcy9wb3dlci5zdmciKSxpZnJhbWU6e2hlaWdodDoiIix3aWR0aDoiIn0sa2V5OnIuSGVscGVyLmdlbmVyYXRlVVVJRCgpLHNob3dCcmFuZGluZzohMX19LG1vdW50ZWQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzOyJtYXgiPT09dGhpcy5jaGF0V2luZG93U3RhdGUmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC4kcmVmc1siYnJhbmRpbmctd2lkZ2V0Il0uJGVsLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5IiwiYmxvY2siLCJpbXBvcnRhbnQiKSx0LnNob3dCcmFuZGluZz0hMH0pLDI1MCksdGhpcy4kZXZlbnRCdXMuJG9uKCJzd2l0Y2hXaWRnZXQiLChmdW5jdGlvbigpe3Qua2V5PXIuSGVscGVyLmdlbmVyYXRlVVVJRCgpfSkpfSx3YXRjaDp7Y2hhdFdpbmRvd1N0YXRlOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7Im1heCI9PT10aGlzLm9uQ2xpY2smJiF0aGlzLm1vYmlsZUJyb3dzZXJOYW1lJiZ0aGlzLmlzUm91bmRXaWRnZXQmJnRoaXMuJHJlZnMmJnRoaXMuJHJlZnNbImJyYW5kaW5nLXdpZGdldCJdJiYoIm1heCI9PT10P3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS4kcmVmc1siYnJhbmRpbmctd2lkZ2V0Il0uJGVsLnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5IiwiYmxvY2siLCJpbXBvcnRhbnQiKSxlLnNob3dCcmFuZGluZz0hMH0pLDI1MCk6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLiRyZWZzWyJicmFuZGluZy13aWRnZXQiXS4kZWwuc3R5bGUuc2V0UHJvcGVydHkoImRpc3BsYXkiLCJub25lIiwiaW1wb3J0YW50IiksZS5zaG93QnJhbmRpbmc9ITF9KSwyNTApKX19LGNvbXB1dGVkOmgoaCh7fSxPYmplY3Qobi5jKSh7aXNSaWdodDoid2lkZ2V0L2lzUmlnaHQiLGlzQm90dG9tOiJ3aWRnZXQvaXNCb3R0b20iLGlzQ2VudGVyOiJ3aWRnZXQvaXNDZW50ZXIiLGJyYW5kaW5nOiJ3aWRnZXQvYnJhbmRpbmciLGNoYXRXaW5kb3dTdGF0ZToic2Vzc2lvbi9jaGF0V2luZG93U3RhdGUiLGlzV2luZG93ZWQ6IndpZGdldC9pc1dpbmRvd2VkIixpc0VtYmVkZGVkOiJ3aWRnZXQvaXNFbWJlZGRlZCIsbWluRGVza3RvcDoid2lkZ2V0L21pbkRlc2t0b3AiLG1heERlc2t0b3A6IndpZGdldC9tYXhEZXNrdG9wIixtb2JpbGVCcm93c2VyTmFtZToiYnJvd3NlckRhdGEvbW9iaWxlQnJvd3Nlck5hbWUiLG9uQ2xpY2s6IndpZGdldC9vbkNsaWNrIixpc1JvdW5kV2lkZ2V0OiJ3aWRnZXQvaXNSb3VuZFdpZGdldCJ9KSkse30se3hPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kVGF3a1dpZGdldFNldHRpbmdzLnhPZmZzZXQoKX0seU9mZnNldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRUYXdrV2lkZ2V0U2V0dGluZ3MueU9mZnNldCgpfSxpRnJhbWVIZWlnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4gMzB9LGlGcmFtZVdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDE3NX0sc3R5bGVPYmplY3Q6ZnVuY3Rpb24oKXt2YXIgdCxlPXsiei1pbmRleDoiOiIxMDAwMDAyICFpbXBvcnRhbnQ7IiwiaGVpZ2h0OiI6IiIuY29uY2F0KHRoaXMuaUZyYW1lSGVpZ2h0KzE1LCJweCAhaW1wb3J0YW50OyIpLCJ3aWR0aDoiOiIiLmNvbmNhdCh0aGlzLm1heERlc2t0b3Aud2lkdGgsInB4ICFpbXBvcnRhbnQ7IiksIm1pbi1oZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5pRnJhbWVIZWlnaHQrMTUsInB4ICFpbXBvcnRhbnQ7IiksIm1pbi13aWR0aDoiOiIiLmNvbmNhdCh0aGlzLm1heERlc2t0b3Aud2lkdGgsInB4ICFpbXBvcnRhbnQ7IiksIm1heC1oZWlnaHQ6IjoiIi5jb25jYXQodGhpcy5pRnJhbWVIZWlnaHQrMTUsInB4ICFpbXBvcnRhbnQ7IiksIm1heC13aWR0aDoiOiIiLmNvbmNhdCh0aGlzLm1heERlc2t0b3Aud2lkdGgsInB4ICFpbXBvcnRhbnQ7IiksInBvc2l0aW9uOiI6ImZpeGVkICFpbXBvcnRhbnQ7In07dD10aGlzLmlzQ2VudGVyP3RoaXMubWluRGVza3RvcC53aWR0aCt0aGlzLnhPZmZzZXQrMTA6dGhpcy54T2Zmc2V0LHRoaXMuaXNSaWdodD9lWyJyaWdodDoiXT0iIi5jb25jYXQodCwicHggIWltcG9ydGFudDsiKTplWyJsZWZ0OiJdPSIiLmNvbmNhdCh0LCJweCAhaW1wb3J0YW50OyIpLCJtYXgiPT09dGhpcy5jaGF0V2luZG93U3RhdGV8fHRoaXMuaXNFbWJlZGRlZD9lWyJkaXNwbGF5OiJdPSJibG9jayAhaW1wb3J0YW50OyI6ZVsiZGlzcGxheToiXT0ibm9uZSAhaW1wb3J0YW50OyI7cmV0dXJuIHRoaXMuaXNCb3R0b20/ZVsiYm90dG9tOiJdPSIiLmNvbmNhdCh0aGlzLm1pbkRlc2t0b3AuaGVpZ2h0K3RoaXMueU9mZnNldC01MCwicHggIWltcG9ydGFudDsiKTooZVsidG9wOiJdPSIiLmNvbmNhdCh0aGlzLm1heERlc2t0b3AuaGVpZ2h0K3RoaXMubWluRGVza3RvcC5oZWlnaHQrdGhpcy55T2Zmc2V0KzMwLCJweCAhaW1wb3J0YW50OyIpLGVbImJvdHRvbToiXT0iYXV0byAhaW1wb3J0YW50OyIpLGgoaCh7fSx0aGlzLmdlbmVyaWNTdHlsZXMpLGUpfSx3aGl0ZWxhYmVsOmZ1bmN0aW9uKCl7aWYodGhpcy5icmFuZGluZy53aGl0ZWxhYmVsZWQpe3ZhciB0PWEuYS5tYXJrZG93blRvSHRtbCh0aGlzLmJyYW5kaW5nLnRleHQpO3JldHVybiB0JiYiQ2hhdCBVKzI2QTEgYnkgPGI+dGF3ay50bzwvYj4iPT09dCYmKHQ9dC5yZXBsYWNlKCJVKzI2QTEiLCc8aW1nIHNyYz0iJy5jb25jYXQodGhpcy5wb3dlckltYWdlVVJMLCciIHN0eWxlPSJtYXgtd2lkdGg6IDhweDsiIC8+JykpKSx0JiYiOnRhd2t5OiBBZGQgZnJlZSA8Yj5saXZlIGNoYXQ8L2I+IHRvIHlvdXIgc2l0ZSI9PT10JiYodD10LnJlcGxhY2UoIjp0YXdreToiLCc8aW1nIHNyYz0iJy5jb25jYXQodGhpcy5pbWFnZVVybCwnIiAvPicpKSkse2xhYmVsOnQsdXJsOnRoaXMuYnJhbmRpbmcudXJsLHRleHRDb2xvcjp0aGlzLmJyYW5kaW5nLnRleHRDb2xvcn19fSxpc1Nob3c6ZnVuY3Rpb24oKXtyZXR1cm4ic2xpZGUiIT09dGhpcy5vbkNsaWNrJiYhIXRoaXMuaXNSb3VuZFdpZGdldCYmIXRoaXMuaXNFbWJlZGRlZCYmKHRoaXMuYnJhbmRpbmcud2hpdGVsYWJlbGVkJiYhdGhpcy5tb2JpbGVCcm93c2VyTmFtZT90aGlzLmJyYW5kaW5nLnRleHQubGVuZ3RoOiJtYXgiPT09dGhpcy5vbkNsaWNrJiYhdGhpcy5tb2JpbGVCcm93c2VyTmFtZSl9fSl9LGw9aSgiMjg3NyIpLHA9T2JqZWN0KGwuYSkoZywoZnVuY3Rpb24oKXt2YXIgdD10aGlzLGU9dC5fc2VsZi5fYztyZXR1cm4gdC5pc1Nob3c/ZSgiaS1mcmFtZSIse2tleTp0LmtleSxyZWY6ImJyYW5kaW5nLXdpZGdldCIsYXR0cnM6e2hlaWdodDoiIi5jb25jYXQodC5pRnJhbWVIZWlnaHQsInB4IiksY3NzTGluazp0LmNzc0xpbmssc3R5bGVPYmplY3Q6dC5zdHlsZU9iamVjdH19LFtlKCJkaXYiLFt0LnNob3dCcmFuZGluZz9lKCJ0YXdrLWJyYW5kaW5nIix7cmVmOiJicmFuZGluZyIsYXR0cnM6e3doaXRlbGFiZWw6dC53aGl0ZWxhYmVsLGltYWdlVXJsOnQuaW1hZ2VVcmwsdGF3a1RvVXJsOnQuYnJhbmRpbmcudXJsLGlzRmxvYXRpbmc6ITB9fSk6dC5fZSgpXSwxKV0pOnQuX2UoKX0pLFtdLCExLG51bGwsbnVsbCxudWxsKTtlLmRlZmF1bHQ9cC5leHBvcnRzfX1dKTs="}},"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":"profx.io/assets/templates/neo_dark/js/vendor/slick.min.js","fqdn":"profx.io","domain":"profx.io","tld":"io"},"ip":{"addr":"147.79.103.91","port":443,"asn":47583,"as":"Hostinger International Limited","country":"France","country_code":"FR"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://profx.io/","date":"2026-07-27T09:05:53.826Z","timestamp":1785143153826,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"profx.io","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Mon, 15 Jun 2026 23:00:27 GMT","end":"Sun, 13 Sep 2026 23:00:26 GMT"},"fingerprint":{"sha1":"A7:CA:5D:73:BB:BE:10:1B:CC:F0:AC:C4:96:48:49:69:D1:9F:EE:04","sha256":"48:07:14:58:82:47:AA:45:55:84:3D:8B:B7:F6:D7:CC:CC:98:4A:9A:C8:2B:A5:D5:73:DD:3B:5B:4C:70:C9:A3"}}},"request":{"raw":"GET /assets/templates/neo_dark/js/vendor/slick.min.js HTTP/1.1\r\nHost: profx.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://profx.io/\r\nCookie: XSRF-TOKEN=7tz5t3Zq7RD9av2lf59CF1MoBEVCf3D6QaufSmBU; laravel_session=cxQ0AsoSGdKxflorifdQvjU6phzHI7cvgYlL7vos\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 09:05:53 GMT\r\ncontent-type: application/x-javascript\r\nlast-modified: Mon, 17 Feb 2025 17:41:56 GMT\r\netag: \"a76f-67b374e4-4a4e294233e609f;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 9950\r\ndate: Mon, 27 Jul 2026 09:05:53 GMT\r\nserver: LiteSpeed\r\nplatform: hostinger\r\npanel: hpanel\r\ncontent-security-policy: upgrade-insecure-requests\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Hostinger","description":"Hostinger is an employee-owned Web hosting provider and internet domain registrar.","website":"https://www.hostinger.com","common_platform_enumeration":"","icon":"Hostinger.svg","categories":["Hosting"]},{"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":42863,"size_decoded":10405,"mime_type":"application/x-javascript","magic":"JavaScript source, ASCII text, with very long lines (42862)","md5":"d5a61c749e44e47159af8a6579dda121","sha1":"3b41b3bc956685015a347a2238e71db29dfa0dbb","sha256":"0c7178cc6ca34fb18e30f070a5e7a1c287b2d7ccfcba2cfdf06e0f46eda55740","sha512":"5ed98cb4311c373da3ede92bb47bce551e22c30683ea8fc55097baf99abe1e0702b24de48f8b9241047cc1e4364158f5a343e4e8fc182e8866db4e99ccd7ee6e","ssdeep":"768:4rkkX123A5YHi6pWzYdlNWYcx16nnYdXRRMd2KYCQCsPShb1ez7RFmYH:EPrYdlNixEePiYH","tlshash":"e513a549d205276285d721e62105c40eb3f7fb3cba22c0e475c9d3ea646ec4896d7bfa","first_seen":"2023-03-07T01:06:34Z","last_seen":"2026-08-03T13:21:16.17803Z","times_seen":110013,"resource_available":true,"data":"IWZ1bmN0aW9uKGkpeyJ1c2Ugc3RyaWN0IjsiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbImpxdWVyeSJdLGkpOiJ1bmRlZmluZWQiIT10eXBlb2YgZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1pKHJlcXVpcmUoImpxdWVyeSIpKTppKGpRdWVyeSl9KGZ1bmN0aW9uKGkpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT13aW5kb3cuU2xpY2t8fHt9OyhlPWZ1bmN0aW9uKCl7dmFyIGU9MDtyZXR1cm4gZnVuY3Rpb24odCxvKXt2YXIgcyxuPXRoaXM7bi5kZWZhdWx0cz17YWNjZXNzaWJpbGl0eTohMCxhZGFwdGl2ZUhlaWdodDohMSxhcHBlbmRBcnJvd3M6aSh0KSxhcHBlbmREb3RzOmkodCksYXJyb3dzOiEwLGFzTmF2Rm9yOm51bGwscHJldkFycm93Oic8YnV0dG9uIGNsYXNzPSJzbGljay1wcmV2IiBhcmlhLWxhYmVsPSJQcmV2aW91cyIgdHlwZT0iYnV0dG9uIj5QcmV2aW91czwvYnV0dG9uPicsbmV4dEFycm93Oic8YnV0dG9uIGNsYXNzPSJzbGljay1uZXh0IiBhcmlhLWxhYmVsPSJOZXh0IiB0eXBlPSJidXR0b24iPk5leHQ8L2J1dHRvbj4nLGF1dG9wbGF5OiExLGF1dG9wbGF5U3BlZWQ6M2UzLGNlbnRlck1vZGU6ITEsY2VudGVyUGFkZGluZzoiNTBweCIsY3NzRWFzZToiZWFzZSIsY3VzdG9tUGFnaW5nOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkoJzxidXR0b24gdHlwZT0iYnV0dG9uIiAvPicpLnRleHQodCsxKX0sZG90czohMSxkb3RzQ2xhc3M6InNsaWNrLWRvdHMiLGRyYWdnYWJsZTohMCxlYXNpbmc6ImxpbmVhciIsZWRnZUZyaWN0aW9uOi4zNSxmYWRlOiExLGZvY3VzT25TZWxlY3Q6ITEsZm9jdXNPbkNoYW5nZTohMSxpbmZpbml0ZTohMCxpbml0aWFsU2xpZGU6MCxsYXp5TG9hZDoib25kZW1hbmQiLG1vYmlsZUZpcnN0OiExLHBhdXNlT25Ib3ZlcjohMCxwYXVzZU9uRm9jdXM6ITAscGF1c2VPbkRvdHNIb3ZlcjohMSxyZXNwb25kVG86IndpbmRvdyIscmVzcG9uc2l2ZTpudWxsLHJvd3M6MSxydGw6ITEsc2xpZGU6IiIsc2xpZGVzUGVyUm93OjEsc2xpZGVzVG9TaG93OjEsc2xpZGVzVG9TY3JvbGw6MSxzcGVlZDo1MDAsc3dpcGU6ITAsc3dpcGVUb1NsaWRlOiExLHRvdWNoTW92ZTohMCx0b3VjaFRocmVzaG9sZDo1LHVzZUNTUzohMCx1c2VUcmFuc2Zvcm06ITAsdmFyaWFibGVXaWR0aDohMSx2ZXJ0aWNhbDohMSx2ZXJ0aWNhbFN3aXBpbmc6ITEsd2FpdEZvckFuaW1hdGU6ITAsekluZGV4OjFlM30sbi5pbml0aWFscz17YW5pbWF0aW5nOiExLGRyYWdnaW5nOiExLGF1dG9QbGF5VGltZXI6bnVsbCxjdXJyZW50RGlyZWN0aW9uOjAsY3VycmVudExlZnQ6bnVsbCxjdXJyZW50U2xpZGU6MCxkaXJlY3Rpb246MSwkZG90czpudWxsLGxpc3RXaWR0aDpudWxsLGxpc3RIZWlnaHQ6bnVsbCxsb2FkSW5kZXg6MCwkbmV4dEFycm93Om51bGwsJHByZXZBcnJvdzpudWxsLHNjcm9sbGluZzohMSxzbGlkZUNvdW50Om51bGwsc2xpZGVXaWR0aDpudWxsLCRzbGlkZVRyYWNrOm51bGwsJHNsaWRlczpudWxsLHNsaWRpbmc6ITEsc2xpZGVPZmZzZXQ6MCxzd2lwZUxlZnQ6bnVsbCxzd2lwaW5nOiExLCRsaXN0Om51bGwsdG91Y2hPYmplY3Q6e30sdHJhbnNmb3Jtc0VuYWJsZWQ6ITEsdW5zbGlja2VkOiExfSxpLmV4dGVuZChuLG4uaW5pdGlhbHMpLG4uYWN0aXZlQnJlYWtwb2ludD1udWxsLG4uYW5pbVR5cGU9bnVsbCxuLmFuaW1Qcm9wPW51bGwsbi5icmVha3BvaW50cz1bXSxuLmJyZWFrcG9pbnRTZXR0aW5ncz1bXSxuLmNzc1RyYW5zaXRpb25zPSExLG4uZm9jdXNzZWQ9ITEsbi5pbnRlcnJ1cHRlZD0hMSxuLmhpZGRlbj0iaGlkZGVuIixuLnBhdXNlZD0hMCxuLnBvc2l0aW9uUHJvcD1udWxsLG4ucmVzcG9uZFRvPW51bGwsbi5yb3dDb3VudD0xLG4uc2hvdWxkQ2xpY2s9ITAsbi4kc2xpZGVyPWkodCksbi4kc2xpZGVzQ2FjaGU9bnVsbCxuLnRyYW5zZm9ybVR5cGU9bnVsbCxuLnRyYW5zaXRpb25UeXBlPW51bGwsbi52aXNpYmlsaXR5Q2hhbmdlPSJ2aXNpYmlsaXR5Y2hhbmdlIixuLndpbmRvd1dpZHRoPTAsbi53aW5kb3dUaW1lcj1udWxsLHM9aSh0KS5kYXRhKCJzbGljayIpfHx7fSxuLm9wdGlvbnM9aS5leHRlbmQoe30sbi5kZWZhdWx0cyxvLHMpLG4uY3VycmVudFNsaWRlPW4ub3B0aW9ucy5pbml0aWFsU2xpZGUsbi5vcmlnaW5hbFNldHRpbmdzPW4ub3B0aW9ucyx2b2lkIDAhPT1kb2N1bWVudC5tb3pIaWRkZW4/KG4uaGlkZGVuPSJtb3pIaWRkZW4iLG4udmlzaWJpbGl0eUNoYW5nZT0ibW96dmlzaWJpbGl0eWNoYW5nZSIpOnZvaWQgMCE9PWRvY3VtZW50LndlYmtpdEhpZGRlbiYmKG4uaGlkZGVuPSJ3ZWJraXRIaWRkZW4iLG4udmlzaWJpbGl0eUNoYW5nZT0id2Via2l0dmlzaWJpbGl0eWNoYW5nZSIpLG4uYXV0b1BsYXk9aS5wcm94eShuLmF1dG9QbGF5LG4pLG4uYXV0b1BsYXlDbGVhcj1pLnByb3h5KG4uYXV0b1BsYXlDbGVhcixuKSxuLmF1dG9QbGF5SXRlcmF0b3I9aS5wcm94eShuLmF1dG9QbGF5SXRlcmF0b3Isbiksbi5jaGFuZ2VTbGlkZT1pLnByb3h5KG4uY2hhbmdlU2xpZGUsbiksbi5jbGlja0hhbmRsZXI9aS5wcm94eShuLmNsaWNrSGFuZGxlcixuKSxuLnNlbGVjdEhhbmRsZXI9aS5wcm94eShuLnNlbGVjdEhhbmRsZXIsbiksbi5zZXRQb3NpdGlvbj1pLnByb3h5KG4uc2V0UG9zaXRpb24sbiksbi5zd2lwZUhhbmRsZXI9aS5wcm94eShuLnN3aXBlSGFuZGxlcixuKSxuLmRyYWdIYW5kbGVyPWkucHJveHkobi5kcmFnSGFuZGxlcixuKSxuLmtleUhhbmRsZXI9aS5wcm94eShuLmtleUhhbmRsZXIsbiksbi5pbnN0YW5jZVVpZD1lKyssbi5odG1sRXhwcj0vXig/OlxzKig8W1x3XFddKz4pW14+XSopJC8sbi5yZWdpc3RlckJyZWFrcG9pbnRzKCksbi5pbml0KCEwKX19KCkpLnByb3RvdHlwZS5hY3RpdmF0ZUFEQT1mdW5jdGlvbigpe3RoaXMuJHNsaWRlVHJhY2suZmluZCgiLnNsaWNrLWFjdGl2ZSIpLmF0dHIoeyJhcmlhLWhpZGRlbiI6ImZhbHNlIn0pLmZpbmQoImEsIGlucHV0LCBidXR0b24sIHNlbGVjdCIpLmF0dHIoe3RhYmluZGV4OiIwIn0pfSxlLnByb3RvdHlwZS5hZGRTbGlkZT1lLnByb3RvdHlwZS5zbGlja0FkZD1mdW5jdGlvbihlLHQsbyl7dmFyIHM9dGhpcztpZigiYm9vbGVhbiI9PXR5cGVvZiB0KW89dCx0PW51bGw7ZWxzZSBpZih0PDB8fHQ+PXMuc2xpZGVDb3VudClyZXR1cm4hMTtzLnVubG9hZCgpLCJudW1iZXIiPT10eXBlb2YgdD8wPT09dCYmMD09PXMuJHNsaWRlcy5sZW5ndGg/aShlKS5hcHBlbmRUbyhzLiRzbGlkZVRyYWNrKTpvP2koZSkuaW5zZXJ0QmVmb3JlKHMuJHNsaWRlcy5lcSh0KSk6aShlKS5pbnNlcnRBZnRlcihzLiRzbGlkZXMuZXEodCkpOiEwPT09bz9pKGUpLnByZXBlbmRUbyhzLiRzbGlkZVRyYWNrKTppKGUpLmFwcGVuZFRvKHMuJHNsaWRlVHJhY2spLHMuJHNsaWRlcz1zLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSkscy4kc2xpZGVUcmFjay5jaGlsZHJlbih0aGlzLm9wdGlvbnMuc2xpZGUpLmRldGFjaCgpLHMuJHNsaWRlVHJhY2suYXBwZW5kKHMuJHNsaWRlcykscy4kc2xpZGVzLmVhY2goZnVuY3Rpb24oZSx0KXtpKHQpLmF0dHIoImRhdGEtc2xpY2staW5kZXgiLGUpfSkscy4kc2xpZGVzQ2FjaGU9cy4kc2xpZGVzLHMucmVpbml0KCl9LGUucHJvdG90eXBlLmFuaW1hdGVIZWlnaHQ9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2lmKDE9PT1pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYhMD09PWkub3B0aW9ucy5hZGFwdGl2ZUhlaWdodCYmITE9PT1pLm9wdGlvbnMudmVydGljYWwpe3ZhciBlPWkuJHNsaWRlcy5lcShpLmN1cnJlbnRTbGlkZSkub3V0ZXJIZWlnaHQoITApO2kuJGxpc3QuYW5pbWF0ZSh7aGVpZ2h0OmV9LGkub3B0aW9ucy5zcGVlZCl9fSxlLnByb3RvdHlwZS5hbmltYXRlU2xpZGU9ZnVuY3Rpb24oZSx0KXt2YXIgbz17fSxzPXRoaXM7cy5hbmltYXRlSGVpZ2h0KCksITA9PT1zLm9wdGlvbnMucnRsJiYhMT09PXMub3B0aW9ucy52ZXJ0aWNhbCYmKGU9LWUpLCExPT09cy50cmFuc2Zvcm1zRW5hYmxlZD8hMT09PXMub3B0aW9ucy52ZXJ0aWNhbD9zLiRzbGlkZVRyYWNrLmFuaW1hdGUoe2xlZnQ6ZX0scy5vcHRpb25zLnNwZWVkLHMub3B0aW9ucy5lYXNpbmcsdCk6cy4kc2xpZGVUcmFjay5hbmltYXRlKHt0b3A6ZX0scy5vcHRpb25zLnNwZWVkLHMub3B0aW9ucy5lYXNpbmcsdCk6ITE9PT1zLmNzc1RyYW5zaXRpb25zPyghMD09PXMub3B0aW9ucy5ydGwmJihzLmN1cnJlbnRMZWZ0PS1zLmN1cnJlbnRMZWZ0KSxpKHthbmltU3RhcnQ6cy5jdXJyZW50TGVmdH0pLmFuaW1hdGUoe2FuaW1TdGFydDplfSx7ZHVyYXRpb246cy5vcHRpb25zLnNwZWVkLGVhc2luZzpzLm9wdGlvbnMuZWFzaW5nLHN0ZXA6ZnVuY3Rpb24oaSl7aT1NYXRoLmNlaWwoaSksITE9PT1zLm9wdGlvbnMudmVydGljYWw/KG9bcy5hbmltVHlwZV09InRyYW5zbGF0ZSgiK2krInB4LCAwcHgpIixzLiRzbGlkZVRyYWNrLmNzcyhvKSk6KG9bcy5hbmltVHlwZV09InRyYW5zbGF0ZSgwcHgsIitpKyJweCkiLHMuJHNsaWRlVHJhY2suY3NzKG8pKX0sY29tcGxldGU6ZnVuY3Rpb24oKXt0JiZ0LmNhbGwoKX19KSk6KHMuYXBwbHlUcmFuc2l0aW9uKCksZT1NYXRoLmNlaWwoZSksITE9PT1zLm9wdGlvbnMudmVydGljYWw/b1tzLmFuaW1UeXBlXT0idHJhbnNsYXRlM2QoIitlKyJweCwgMHB4LCAwcHgpIjpvW3MuYW5pbVR5cGVdPSJ0cmFuc2xhdGUzZCgwcHgsIitlKyJweCwgMHB4KSIscy4kc2xpZGVUcmFjay5jc3MobyksdCYmc2V0VGltZW91dChmdW5jdGlvbigpe3MuZGlzYWJsZVRyYW5zaXRpb24oKSx0LmNhbGwoKX0scy5vcHRpb25zLnNwZWVkKSl9LGUucHJvdG90eXBlLmdldE5hdlRhcmdldD1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLm9wdGlvbnMuYXNOYXZGb3I7cmV0dXJuIHQmJm51bGwhPT10JiYodD1pKHQpLm5vdChlLiRzbGlkZXIpKSx0fSxlLnByb3RvdHlwZS5hc05hdkZvcj1mdW5jdGlvbihlKXt2YXIgdD10aGlzLmdldE5hdlRhcmdldCgpO251bGwhPT10JiYib2JqZWN0Ij09dHlwZW9mIHQmJnQuZWFjaChmdW5jdGlvbigpe3ZhciB0PWkodGhpcykuc2xpY2soImdldFNsaWNrIik7dC51bnNsaWNrZWR8fHQuc2xpZGVIYW5kbGVyKGUsITApfSl9LGUucHJvdG90eXBlLmFwcGx5VHJhbnNpdGlvbj1mdW5jdGlvbihpKXt2YXIgZT10aGlzLHQ9e307ITE9PT1lLm9wdGlvbnMuZmFkZT90W2UudHJhbnNpdGlvblR5cGVdPWUudHJhbnNmb3JtVHlwZSsiICIrZS5vcHRpb25zLnNwZWVkKyJtcyAiK2Uub3B0aW9ucy5jc3NFYXNlOnRbZS50cmFuc2l0aW9uVHlwZV09Im9wYWNpdHkgIitlLm9wdGlvbnMuc3BlZWQrIm1zICIrZS5vcHRpb25zLmNzc0Vhc2UsITE9PT1lLm9wdGlvbnMuZmFkZT9lLiRzbGlkZVRyYWNrLmNzcyh0KTplLiRzbGlkZXMuZXEoaSkuY3NzKHQpfSxlLnByb3RvdHlwZS5hdXRvUGxheT1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5hdXRvUGxheUNsZWFyKCksaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpLmF1dG9QbGF5VGltZXI9c2V0SW50ZXJ2YWwoaS5hdXRvUGxheUl0ZXJhdG9yLGkub3B0aW9ucy5hdXRvcGxheVNwZWVkKSl9LGUucHJvdG90eXBlLmF1dG9QbGF5Q2xlYXI9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2kuYXV0b1BsYXlUaW1lciYmY2xlYXJJbnRlcnZhbChpLmF1dG9QbGF5VGltZXIpfSxlLnByb3RvdHlwZS5hdXRvUGxheUl0ZXJhdG9yPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcyxlPWkuY3VycmVudFNsaWRlK2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDtpLnBhdXNlZHx8aS5pbnRlcnJ1cHRlZHx8aS5mb2N1c3NlZHx8KCExPT09aS5vcHRpb25zLmluZmluaXRlJiYoMT09PWkuZGlyZWN0aW9uJiZpLmN1cnJlbnRTbGlkZSsxPT09aS5zbGlkZUNvdW50LTE/aS5kaXJlY3Rpb249MDowPT09aS5kaXJlY3Rpb24mJihlPWkuY3VycmVudFNsaWRlLWkub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCxpLmN1cnJlbnRTbGlkZS0xPT0wJiYoaS5kaXJlY3Rpb249MSkpKSxpLnNsaWRlSGFuZGxlcihlKSl9LGUucHJvdG90eXBlLmJ1aWxkQXJyb3dzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczshMD09PWUub3B0aW9ucy5hcnJvd3MmJihlLiRwcmV2QXJyb3c9aShlLm9wdGlvbnMucHJldkFycm93KS5hZGRDbGFzcygic2xpY2stYXJyb3ciKSxlLiRuZXh0QXJyb3c9aShlLm9wdGlvbnMubmV4dEFycm93KS5hZGRDbGFzcygic2xpY2stYXJyb3ciKSxlLnNsaWRlQ291bnQ+ZS5vcHRpb25zLnNsaWRlc1RvU2hvdz8oZS4kcHJldkFycm93LnJlbW92ZUNsYXNzKCJzbGljay1oaWRkZW4iKS5yZW1vdmVBdHRyKCJhcmlhLWhpZGRlbiB0YWJpbmRleCIpLGUuJG5leHRBcnJvdy5yZW1vdmVDbGFzcygic2xpY2staGlkZGVuIikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4gdGFiaW5kZXgiKSxlLmh0bWxFeHByLnRlc3QoZS5vcHRpb25zLnByZXZBcnJvdykmJmUuJHByZXZBcnJvdy5wcmVwZW5kVG8oZS5vcHRpb25zLmFwcGVuZEFycm93cyksZS5odG1sRXhwci50ZXN0KGUub3B0aW9ucy5uZXh0QXJyb3cpJiZlLiRuZXh0QXJyb3cuYXBwZW5kVG8oZS5vcHRpb25zLmFwcGVuZEFycm93cyksITAhPT1lLm9wdGlvbnMuaW5maW5pdGUmJmUuJHByZXZBcnJvdy5hZGRDbGFzcygic2xpY2stZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwidHJ1ZSIpKTplLiRwcmV2QXJyb3cuYWRkKGUuJG5leHRBcnJvdykuYWRkQ2xhc3MoInNsaWNrLWhpZGRlbiIpLmF0dHIoeyJhcmlhLWRpc2FibGVkIjoidHJ1ZSIsdGFiaW5kZXg6Ii0xIn0pKX0sZS5wcm90b3R5cGUuYnVpbGREb3RzPWZ1bmN0aW9uKCl7dmFyIGUsdCxvPXRoaXM7aWYoITA9PT1vLm9wdGlvbnMuZG90cyl7Zm9yKG8uJHNsaWRlci5hZGRDbGFzcygic2xpY2stZG90dGVkIiksdD1pKCI8dWwgLz4iKS5hZGRDbGFzcyhvLm9wdGlvbnMuZG90c0NsYXNzKSxlPTA7ZTw9by5nZXREb3RDb3VudCgpO2UrPTEpdC5hcHBlbmQoaSgiPGxpIC8+IikuYXBwZW5kKG8ub3B0aW9ucy5jdXN0b21QYWdpbmcuY2FsbCh0aGlzLG8sZSkpKTtvLiRkb3RzPXQuYXBwZW5kVG8oby5vcHRpb25zLmFwcGVuZERvdHMpLG8uJGRvdHMuZmluZCgibGkiKS5maXJzdCgpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKX19LGUucHJvdG90eXBlLmJ1aWxkT3V0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztlLiRzbGlkZXM9ZS4kc2xpZGVyLmNoaWxkcmVuKGUub3B0aW9ucy5zbGlkZSsiOm5vdCguc2xpY2stY2xvbmVkKSIpLmFkZENsYXNzKCJzbGljay1zbGlkZSIpLGUuc2xpZGVDb3VudD1lLiRzbGlkZXMubGVuZ3RoLGUuJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKGUsdCl7aSh0KS5hdHRyKCJkYXRhLXNsaWNrLWluZGV4IixlKS5kYXRhKCJvcmlnaW5hbFN0eWxpbmciLGkodCkuYXR0cigic3R5bGUiKXx8IiIpfSksZS4kc2xpZGVyLmFkZENsYXNzKCJzbGljay1zbGlkZXIiKSxlLiRzbGlkZVRyYWNrPTA9PT1lLnNsaWRlQ291bnQ/aSgnPGRpdiBjbGFzcz0ic2xpY2stdHJhY2siLz4nKS5hcHBlbmRUbyhlLiRzbGlkZXIpOmUuJHNsaWRlcy53cmFwQWxsKCc8ZGl2IGNsYXNzPSJzbGljay10cmFjayIvPicpLnBhcmVudCgpLGUuJGxpc3Q9ZS4kc2xpZGVUcmFjay53cmFwKCc8ZGl2IGNsYXNzPSJzbGljay1saXN0Ii8+JykucGFyZW50KCksZS4kc2xpZGVUcmFjay5jc3MoIm9wYWNpdHkiLDApLCEwIT09ZS5vcHRpb25zLmNlbnRlck1vZGUmJiEwIT09ZS5vcHRpb25zLnN3aXBlVG9TbGlkZXx8KGUub3B0aW9ucy5zbGlkZXNUb1Njcm9sbD0xKSxpKCJpbWdbZGF0YS1sYXp5XSIsZS4kc2xpZGVyKS5ub3QoIltzcmNdIikuYWRkQ2xhc3MoInNsaWNrLWxvYWRpbmciKSxlLnNldHVwSW5maW5pdGUoKSxlLmJ1aWxkQXJyb3dzKCksZS5idWlsZERvdHMoKSxlLnVwZGF0ZURvdHMoKSxlLnNldFNsaWRlQ2xhc3NlcygibnVtYmVyIj09dHlwZW9mIGUuY3VycmVudFNsaWRlP2UuY3VycmVudFNsaWRlOjApLCEwPT09ZS5vcHRpb25zLmRyYWdnYWJsZSYmZS4kbGlzdC5hZGRDbGFzcygiZHJhZ2dhYmxlIil9LGUucHJvdG90eXBlLmJ1aWxkUm93cz1mdW5jdGlvbigpe3ZhciBpLGUsdCxvLHMsbixyLGw9dGhpcztpZihvPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxuPWwuJHNsaWRlci5jaGlsZHJlbigpLGwub3B0aW9ucy5yb3dzPjEpe2ZvcihyPWwub3B0aW9ucy5zbGlkZXNQZXJSb3cqbC5vcHRpb25zLnJvd3Mscz1NYXRoLmNlaWwobi5sZW5ndGgvciksaT0wO2k8cztpKyspe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2ZvcihlPTA7ZTxsLm9wdGlvbnMucm93cztlKyspe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Zvcih0PTA7dDxsLm9wdGlvbnMuc2xpZGVzUGVyUm93O3QrKyl7dmFyIGM9aSpyKyhlKmwub3B0aW9ucy5zbGlkZXNQZXJSb3crdCk7bi5nZXQoYykmJmEuYXBwZW5kQ2hpbGQobi5nZXQoYykpfWQuYXBwZW5kQ2hpbGQoYSl9by5hcHBlbmRDaGlsZChkKX1sLiRzbGlkZXIuZW1wdHkoKS5hcHBlbmQobyksbC4kc2xpZGVyLmNoaWxkcmVuKCkuY2hpbGRyZW4oKS5jaGlsZHJlbigpLmNzcyh7d2lkdGg6MTAwL2wub3B0aW9ucy5zbGlkZXNQZXJSb3crIiUiLGRpc3BsYXk6ImlubGluZS1ibG9jayJ9KX19LGUucHJvdG90eXBlLmNoZWNrUmVzcG9uc2l2ZT1mdW5jdGlvbihlLHQpe3ZhciBvLHMsbixyPXRoaXMsbD0hMSxkPXIuJHNsaWRlci53aWR0aCgpLGE9d2luZG93LmlubmVyV2lkdGh8fGkod2luZG93KS53aWR0aCgpO2lmKCJ3aW5kb3ciPT09ci5yZXNwb25kVG8/bj1hOiJzbGlkZXIiPT09ci5yZXNwb25kVG8/bj1kOiJtaW4iPT09ci5yZXNwb25kVG8mJihuPU1hdGgubWluKGEsZCkpLHIub3B0aW9ucy5yZXNwb25zaXZlJiZyLm9wdGlvbnMucmVzcG9uc2l2ZS5sZW5ndGgmJm51bGwhPT1yLm9wdGlvbnMucmVzcG9uc2l2ZSl7cz1udWxsO2ZvcihvIGluIHIuYnJlYWtwb2ludHMpci5icmVha3BvaW50cy5oYXNPd25Qcm9wZXJ0eShvKSYmKCExPT09ci5vcmlnaW5hbFNldHRpbmdzLm1vYmlsZUZpcnN0P248ci5icmVha3BvaW50c1tvXSYmKHM9ci5icmVha3BvaW50c1tvXSk6bj5yLmJyZWFrcG9pbnRzW29dJiYocz1yLmJyZWFrcG9pbnRzW29dKSk7bnVsbCE9PXM/bnVsbCE9PXIuYWN0aXZlQnJlYWtwb2ludD8ocyE9PXIuYWN0aXZlQnJlYWtwb2ludHx8dCkmJihyLmFjdGl2ZUJyZWFrcG9pbnQ9cywidW5zbGljayI9PT1yLmJyZWFrcG9pbnRTZXR0aW5nc1tzXT9yLnVuc2xpY2socyk6KHIub3B0aW9ucz1pLmV4dGVuZCh7fSxyLm9yaWdpbmFsU2V0dGluZ3Msci5icmVha3BvaW50U2V0dGluZ3Nbc10pLCEwPT09ZSYmKHIuY3VycmVudFNsaWRlPXIub3B0aW9ucy5pbml0aWFsU2xpZGUpLHIucmVmcmVzaChlKSksbD1zKTooci5hY3RpdmVCcmVha3BvaW50PXMsInVuc2xpY2siPT09ci5icmVha3BvaW50U2V0dGluZ3Nbc10/ci51bnNsaWNrKHMpOihyLm9wdGlvbnM9aS5leHRlbmQoe30sci5vcmlnaW5hbFNldHRpbmdzLHIuYnJlYWtwb2ludFNldHRpbmdzW3NdKSwhMD09PWUmJihyLmN1cnJlbnRTbGlkZT1yLm9wdGlvbnMuaW5pdGlhbFNsaWRlKSxyLnJlZnJlc2goZSkpLGw9cyk6bnVsbCE9PXIuYWN0aXZlQnJlYWtwb2ludCYmKHIuYWN0aXZlQnJlYWtwb2ludD1udWxsLHIub3B0aW9ucz1yLm9yaWdpbmFsU2V0dGluZ3MsITA9PT1lJiYoci5jdXJyZW50U2xpZGU9ci5vcHRpb25zLmluaXRpYWxTbGlkZSksci5yZWZyZXNoKGUpLGw9cyksZXx8ITE9PT1sfHxyLiRzbGlkZXIudHJpZ2dlcigiYnJlYWtwb2ludCIsW3IsbF0pfX0sZS5wcm90b3R5cGUuY2hhbmdlU2xpZGU9ZnVuY3Rpb24oZSx0KXt2YXIgbyxzLG4scj10aGlzLGw9aShlLmN1cnJlbnRUYXJnZXQpO3N3aXRjaChsLmlzKCJhIikmJmUucHJldmVudERlZmF1bHQoKSxsLmlzKCJsaSIpfHwobD1sLmNsb3Nlc3QoImxpIikpLG49ci5zbGlkZUNvdW50JXIub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCE9MCxvPW4/MDooci5zbGlkZUNvdW50LXIuY3VycmVudFNsaWRlKSVyLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwsZS5kYXRhLm1lc3NhZ2Upe2Nhc2UicHJldmlvdXMiOnM9MD09PW8/ci5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOnIub3B0aW9ucy5zbGlkZXNUb1Nob3ctbyxyLnNsaWRlQ291bnQ+ci5vcHRpb25zLnNsaWRlc1RvU2hvdyYmci5zbGlkZUhhbmRsZXIoci5jdXJyZW50U2xpZGUtcywhMSx0KTticmVhaztjYXNlIm5leHQiOnM9MD09PW8/ci5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOm8sci5zbGlkZUNvdW50PnIub3B0aW9ucy5zbGlkZXNUb1Nob3cmJnIuc2xpZGVIYW5kbGVyKHIuY3VycmVudFNsaWRlK3MsITEsdCk7YnJlYWs7Y2FzZSJpbmRleCI6dmFyIGQ9MD09PWUuZGF0YS5pbmRleD8wOmUuZGF0YS5pbmRleHx8bC5pbmRleCgpKnIub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDtyLnNsaWRlSGFuZGxlcihyLmNoZWNrTmF2aWdhYmxlKGQpLCExLHQpLGwuY2hpbGRyZW4oKS50cmlnZ2VyKCJmb2N1cyIpO2JyZWFrO2RlZmF1bHQ6cmV0dXJufX0sZS5wcm90b3R5cGUuY2hlY2tOYXZpZ2FibGU9ZnVuY3Rpb24oaSl7dmFyIGUsdDtpZihlPXRoaXMuZ2V0TmF2aWdhYmxlSW5kZXhlcygpLHQ9MCxpPmVbZS5sZW5ndGgtMV0paT1lW2UubGVuZ3RoLTFdO2Vsc2UgZm9yKHZhciBvIGluIGUpe2lmKGk8ZVtvXSl7aT10O2JyZWFrfXQ9ZVtvXX1yZXR1cm4gaX0sZS5wcm90b3R5cGUuY2xlYW5VcEV2ZW50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5vcHRpb25zLmRvdHMmJm51bGwhPT1lLiRkb3RzJiYoaSgibGkiLGUuJGRvdHMpLm9mZigiY2xpY2suc2xpY2siLGUuY2hhbmdlU2xpZGUpLm9mZigibW91c2VlbnRlci5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCEwKSkub2ZmKCJtb3VzZWxlYXZlLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITEpKSwhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiZlLiRkb3RzLm9mZigia2V5ZG93bi5zbGljayIsZS5rZXlIYW5kbGVyKSksZS4kc2xpZGVyLm9mZigiZm9jdXMuc2xpY2sgYmx1ci5zbGljayIpLCEwPT09ZS5vcHRpb25zLmFycm93cyYmZS5zbGlkZUNvdW50PmUub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihlLiRwcmV2QXJyb3cmJmUuJHByZXZBcnJvdy5vZmYoImNsaWNrLnNsaWNrIixlLmNoYW5nZVNsaWRlKSxlLiRuZXh0QXJyb3cmJmUuJG5leHRBcnJvdy5vZmYoImNsaWNrLnNsaWNrIixlLmNoYW5nZVNsaWRlKSwhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiYoZS4kcHJldkFycm93JiZlLiRwcmV2QXJyb3cub2ZmKCJrZXlkb3duLnNsaWNrIixlLmtleUhhbmRsZXIpLGUuJG5leHRBcnJvdyYmZS4kbmV4dEFycm93Lm9mZigia2V5ZG93bi5zbGljayIsZS5rZXlIYW5kbGVyKSkpLGUuJGxpc3Qub2ZmKCJ0b3VjaHN0YXJ0LnNsaWNrIG1vdXNlZG93bi5zbGljayIsZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub2ZmKCJ0b3VjaG1vdmUuc2xpY2sgbW91c2Vtb3ZlLnNsaWNrIixlLnN3aXBlSGFuZGxlciksZS4kbGlzdC5vZmYoInRvdWNoZW5kLnNsaWNrIG1vdXNldXAuc2xpY2siLGUuc3dpcGVIYW5kbGVyKSxlLiRsaXN0Lm9mZigidG91Y2hjYW5jZWwuc2xpY2sgbW91c2VsZWF2ZS5zbGljayIsZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub2ZmKCJjbGljay5zbGljayIsZS5jbGlja0hhbmRsZXIpLGkoZG9jdW1lbnQpLm9mZihlLnZpc2liaWxpdHlDaGFuZ2UsZS52aXNpYmlsaXR5KSxlLmNsZWFuVXBTbGlkZUV2ZW50cygpLCEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJmUuJGxpc3Qub2ZmKCJrZXlkb3duLnNsaWNrIixlLmtleUhhbmRsZXIpLCEwPT09ZS5vcHRpb25zLmZvY3VzT25TZWxlY3QmJmkoZS4kc2xpZGVUcmFjaykuY2hpbGRyZW4oKS5vZmYoImNsaWNrLnNsaWNrIixlLnNlbGVjdEhhbmRsZXIpLGkod2luZG93KS5vZmYoIm9yaWVudGF0aW9uY2hhbmdlLnNsaWNrLnNsaWNrLSIrZS5pbnN0YW5jZVVpZCxlLm9yaWVudGF0aW9uQ2hhbmdlKSxpKHdpbmRvdykub2ZmKCJyZXNpemUuc2xpY2suc2xpY2stIitlLmluc3RhbmNlVWlkLGUucmVzaXplKSxpKCJbZHJhZ2dhYmxlIT10cnVlXSIsZS4kc2xpZGVUcmFjaykub2ZmKCJkcmFnc3RhcnQiLGUucHJldmVudERlZmF1bHQpLGkod2luZG93KS5vZmYoImxvYWQuc2xpY2suc2xpY2stIitlLmluc3RhbmNlVWlkLGUuc2V0UG9zaXRpb24pfSxlLnByb3RvdHlwZS5jbGVhblVwU2xpZGVFdmVudHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2UuJGxpc3Qub2ZmKCJtb3VzZWVudGVyLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITApKSxlLiRsaXN0Lm9mZigibW91c2VsZWF2ZS5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCExKSl9LGUucHJvdG90eXBlLmNsZWFuVXBSb3dzPWZ1bmN0aW9uKCl7dmFyIGksZT10aGlzO2Uub3B0aW9ucy5yb3dzPjEmJigoaT1lLiRzbGlkZXMuY2hpbGRyZW4oKS5jaGlsZHJlbigpKS5yZW1vdmVBdHRyKCJzdHlsZSIpLGUuJHNsaWRlci5lbXB0eSgpLmFwcGVuZChpKSl9LGUucHJvdG90eXBlLmNsaWNrSGFuZGxlcj1mdW5jdGlvbihpKXshMT09PXRoaXMuc2hvdWxkQ2xpY2smJihpLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLGkuc3RvcFByb3BhZ2F0aW9uKCksaS5wcmV2ZW50RGVmYXVsdCgpKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3QuYXV0b1BsYXlDbGVhcigpLHQudG91Y2hPYmplY3Q9e30sdC5jbGVhblVwRXZlbnRzKCksaSgiLnNsaWNrLWNsb25lZCIsdC4kc2xpZGVyKS5kZXRhY2goKSx0LiRkb3RzJiZ0LiRkb3RzLnJlbW92ZSgpLHQuJHByZXZBcnJvdyYmdC4kcHJldkFycm93Lmxlbmd0aCYmKHQuJHByZXZBcnJvdy5yZW1vdmVDbGFzcygic2xpY2stZGlzYWJsZWQgc2xpY2stYXJyb3cgc2xpY2staGlkZGVuIikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4gYXJpYS1kaXNhYmxlZCB0YWJpbmRleCIpLmNzcygiZGlzcGxheSIsIiIpLHQuaHRtbEV4cHIudGVzdCh0Lm9wdGlvbnMucHJldkFycm93KSYmdC4kcHJldkFycm93LnJlbW92ZSgpKSx0LiRuZXh0QXJyb3cmJnQuJG5leHRBcnJvdy5sZW5ndGgmJih0LiRuZXh0QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIHNsaWNrLWFycm93IHNsaWNrLWhpZGRlbiIpLnJlbW92ZUF0dHIoImFyaWEtaGlkZGVuIGFyaWEtZGlzYWJsZWQgdGFiaW5kZXgiKS5jc3MoImRpc3BsYXkiLCIiKSx0Lmh0bWxFeHByLnRlc3QodC5vcHRpb25zLm5leHRBcnJvdykmJnQuJG5leHRBcnJvdy5yZW1vdmUoKSksdC4kc2xpZGVzJiYodC4kc2xpZGVzLnJlbW92ZUNsYXNzKCJzbGljay1zbGlkZSBzbGljay1hY3RpdmUgc2xpY2stY2VudGVyIHNsaWNrLXZpc2libGUgc2xpY2stY3VycmVudCIpLnJlbW92ZUF0dHIoImFyaWEtaGlkZGVuIikucmVtb3ZlQXR0cigiZGF0YS1zbGljay1pbmRleCIpLmVhY2goZnVuY3Rpb24oKXtpKHRoaXMpLmF0dHIoInN0eWxlIixpKHRoaXMpLmRhdGEoIm9yaWdpbmFsU3R5bGluZyIpKX0pLHQuJHNsaWRlVHJhY2suY2hpbGRyZW4odGhpcy5vcHRpb25zLnNsaWRlKS5kZXRhY2goKSx0LiRzbGlkZVRyYWNrLmRldGFjaCgpLHQuJGxpc3QuZGV0YWNoKCksdC4kc2xpZGVyLmFwcGVuZCh0LiRzbGlkZXMpKSx0LmNsZWFuVXBSb3dzKCksdC4kc2xpZGVyLnJlbW92ZUNsYXNzKCJzbGljay1zbGlkZXIiKSx0LiRzbGlkZXIucmVtb3ZlQ2xhc3MoInNsaWNrLWluaXRpYWxpemVkIiksdC4kc2xpZGVyLnJlbW92ZUNsYXNzKCJzbGljay1kb3R0ZWQiKSx0LnVuc2xpY2tlZD0hMCxlfHx0LiRzbGlkZXIudHJpZ2dlcigiZGVzdHJveSIsW3RdKX0sZS5wcm90b3R5cGUuZGlzYWJsZVRyYW5zaXRpb249ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcyx0PXt9O3RbZS50cmFuc2l0aW9uVHlwZV09IiIsITE9PT1lLm9wdGlvbnMuZmFkZT9lLiRzbGlkZVRyYWNrLmNzcyh0KTplLiRzbGlkZXMuZXEoaSkuY3NzKHQpfSxlLnByb3RvdHlwZS5mYWRlU2xpZGU9ZnVuY3Rpb24oaSxlKXt2YXIgdD10aGlzOyExPT09dC5jc3NUcmFuc2l0aW9ucz8odC4kc2xpZGVzLmVxKGkpLmNzcyh7ekluZGV4OnQub3B0aW9ucy56SW5kZXh9KSx0LiRzbGlkZXMuZXEoaSkuYW5pbWF0ZSh7b3BhY2l0eToxfSx0Lm9wdGlvbnMuc3BlZWQsdC5vcHRpb25zLmVhc2luZyxlKSk6KHQuYXBwbHlUcmFuc2l0aW9uKGkpLHQuJHNsaWRlcy5lcShpKS5jc3Moe29wYWNpdHk6MSx6SW5kZXg6dC5vcHRpb25zLnpJbmRleH0pLGUmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmRpc2FibGVUcmFuc2l0aW9uKGkpLGUuY2FsbCgpfSx0Lm9wdGlvbnMuc3BlZWQpKX0sZS5wcm90b3R5cGUuZmFkZVNsaWRlT3V0PWZ1bmN0aW9uKGkpe3ZhciBlPXRoaXM7ITE9PT1lLmNzc1RyYW5zaXRpb25zP2UuJHNsaWRlcy5lcShpKS5hbmltYXRlKHtvcGFjaXR5OjAsekluZGV4OmUub3B0aW9ucy56SW5kZXgtMn0sZS5vcHRpb25zLnNwZWVkLGUub3B0aW9ucy5lYXNpbmcpOihlLmFwcGx5VHJhbnNpdGlvbihpKSxlLiRzbGlkZXMuZXEoaSkuY3NzKHtvcGFjaXR5OjAsekluZGV4OmUub3B0aW9ucy56SW5kZXgtMn0pKX0sZS5wcm90b3R5cGUuZmlsdGVyU2xpZGVzPWUucHJvdG90eXBlLnNsaWNrRmlsdGVyPWZ1bmN0aW9uKGkpe3ZhciBlPXRoaXM7bnVsbCE9PWkmJihlLiRzbGlkZXNDYWNoZT1lLiRzbGlkZXMsZS51bmxvYWQoKSxlLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSkuZGV0YWNoKCksZS4kc2xpZGVzQ2FjaGUuZmlsdGVyKGkpLmFwcGVuZFRvKGUuJHNsaWRlVHJhY2spLGUucmVpbml0KCkpfSxlLnByb3RvdHlwZS5mb2N1c0hhbmRsZXI9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2UuJHNsaWRlci5vZmYoImZvY3VzLnNsaWNrIGJsdXIuc2xpY2siKS5vbigiZm9jdXMuc2xpY2sgYmx1ci5zbGljayIsIioiLGZ1bmN0aW9uKHQpe3Quc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7dmFyIG89aSh0aGlzKTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5vcHRpb25zLnBhdXNlT25Gb2N1cyYmKGUuZm9jdXNzZWQ9by5pcygiOmZvY3VzIiksZS5hdXRvUGxheSgpKX0sMCl9KX0sZS5wcm90b3R5cGUuZ2V0Q3VycmVudD1lLnByb3RvdHlwZS5zbGlja0N1cnJlbnRTbGlkZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmN1cnJlbnRTbGlkZX0sZS5wcm90b3R5cGUuZ2V0RG90Q291bnQ9ZnVuY3Rpb24oKXt2YXIgaT10aGlzLGU9MCx0PTAsbz0wO2lmKCEwPT09aS5vcHRpb25zLmluZmluaXRlKWlmKGkuc2xpZGVDb3VudDw9aS5vcHRpb25zLnNsaWRlc1RvU2hvdykrK287ZWxzZSBmb3IoO2U8aS5zbGlkZUNvdW50OykrK28sZT10K2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCx0Kz1pLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw8PWkub3B0aW9ucy5zbGlkZXNUb1Nob3c/aS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOmkub3B0aW9ucy5zbGlkZXNUb1Nob3c7ZWxzZSBpZighMD09PWkub3B0aW9ucy5jZW50ZXJNb2RlKW89aS5zbGlkZUNvdW50O2Vsc2UgaWYoaS5vcHRpb25zLmFzTmF2Rm9yKWZvcig7ZTxpLnNsaWRlQ291bnQ7KSsrbyxlPXQraS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsLHQrPWkub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDw9aS5vcHRpb25zLnNsaWRlc1RvU2hvdz9pLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw6aS5vcHRpb25zLnNsaWRlc1RvU2hvdztlbHNlIG89MStNYXRoLmNlaWwoKGkuc2xpZGVDb3VudC1pLm9wdGlvbnMuc2xpZGVzVG9TaG93KS9pLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwpO3JldHVybiBvLTF9LGUucHJvdG90eXBlLmdldExlZnQ9ZnVuY3Rpb24oaSl7dmFyIGUsdCxvLHMsbj10aGlzLHI9MDtyZXR1cm4gbi5zbGlkZU9mZnNldD0wLHQ9bi4kc2xpZGVzLmZpcnN0KCkub3V0ZXJIZWlnaHQoITApLCEwPT09bi5vcHRpb25zLmluZmluaXRlPyhuLnNsaWRlQ291bnQ+bi5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKG4uc2xpZGVPZmZzZXQ9bi5zbGlkZVdpZHRoKm4ub3B0aW9ucy5zbGlkZXNUb1Nob3cqLTEscz0tMSwhMD09PW4ub3B0aW9ucy52ZXJ0aWNhbCYmITA9PT1uLm9wdGlvbnMuY2VudGVyTW9kZSYmKDI9PT1uLm9wdGlvbnMuc2xpZGVzVG9TaG93P3M9LTEuNToxPT09bi5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKHM9LTIpKSxyPXQqbi5vcHRpb25zLnNsaWRlc1RvU2hvdypzKSxuLnNsaWRlQ291bnQlbi5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsIT0wJiZpK24ub3B0aW9ucy5zbGlkZXNUb1Njcm9sbD5uLnNsaWRlQ291bnQmJm4uc2xpZGVDb3VudD5uLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYoaT5uLnNsaWRlQ291bnQ/KG4uc2xpZGVPZmZzZXQ9KG4ub3B0aW9ucy5zbGlkZXNUb1Nob3ctKGktbi5zbGlkZUNvdW50KSkqbi5zbGlkZVdpZHRoKi0xLHI9KG4ub3B0aW9ucy5zbGlkZXNUb1Nob3ctKGktbi5zbGlkZUNvdW50KSkqdCotMSk6KG4uc2xpZGVPZmZzZXQ9bi5zbGlkZUNvdW50JW4ub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCpuLnNsaWRlV2lkdGgqLTEscj1uLnNsaWRlQ291bnQlbi5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsKnQqLTEpKSk6aStuLm9wdGlvbnMuc2xpZGVzVG9TaG93Pm4uc2xpZGVDb3VudCYmKG4uc2xpZGVPZmZzZXQ9KGkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdy1uLnNsaWRlQ291bnQpKm4uc2xpZGVXaWR0aCxyPShpK24ub3B0aW9ucy5zbGlkZXNUb1Nob3ctbi5zbGlkZUNvdW50KSp0KSxuLnNsaWRlQ291bnQ8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihuLnNsaWRlT2Zmc2V0PTAscj0wKSwhMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlJiZuLnNsaWRlQ291bnQ8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/bi5zbGlkZU9mZnNldD1uLnNsaWRlV2lkdGgqTWF0aC5mbG9vcihuLm9wdGlvbnMuc2xpZGVzVG9TaG93KS8yLW4uc2xpZGVXaWR0aCpuLnNsaWRlQ291bnQvMjohMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlJiYhMD09PW4ub3B0aW9ucy5pbmZpbml0ZT9uLnNsaWRlT2Zmc2V0Kz1uLnNsaWRlV2lkdGgqTWF0aC5mbG9vcihuLm9wdGlvbnMuc2xpZGVzVG9TaG93LzIpLW4uc2xpZGVXaWR0aDohMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlJiYobi5zbGlkZU9mZnNldD0wLG4uc2xpZGVPZmZzZXQrPW4uc2xpZGVXaWR0aCpNYXRoLmZsb29yKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMikpLGU9ITE9PT1uLm9wdGlvbnMudmVydGljYWw/aSpuLnNsaWRlV2lkdGgqLTErbi5zbGlkZU9mZnNldDppKnQqLTErciwhMD09PW4ub3B0aW9ucy52YXJpYWJsZVdpZHRoJiYobz1uLnNsaWRlQ291bnQ8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3d8fCExPT09bi5vcHRpb25zLmluZmluaXRlP24uJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmVxKGkpOm4uJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmVxKGkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdyksZT0hMD09PW4ub3B0aW9ucy5ydGw/b1swXT8tMSoobi4kc2xpZGVUcmFjay53aWR0aCgpLW9bMF0ub2Zmc2V0TGVmdC1vLndpZHRoKCkpOjA6b1swXT8tMSpvWzBdLm9mZnNldExlZnQ6MCwhMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlJiYobz1uLnNsaWRlQ291bnQ8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3d8fCExPT09bi5vcHRpb25zLmluZmluaXRlP24uJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmVxKGkpOm4uJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmVxKGkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdysxKSxlPSEwPT09bi5vcHRpb25zLnJ0bD9vWzBdPy0xKihuLiRzbGlkZVRyYWNrLndpZHRoKCktb1swXS5vZmZzZXRMZWZ0LW8ud2lkdGgoKSk6MDpvWzBdPy0xKm9bMF0ub2Zmc2V0TGVmdDowLGUrPShuLiRsaXN0LndpZHRoKCktby5vdXRlcldpZHRoKCkpLzIpKSxlfSxlLnByb3RvdHlwZS5nZXRPcHRpb249ZS5wcm90b3R5cGUuc2xpY2tHZXRPcHRpb249ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMub3B0aW9uc1tpXX0sZS5wcm90b3R5cGUuZ2V0TmF2aWdhYmxlSW5kZXhlcz1mdW5jdGlvbigpe3ZhciBpLGU9dGhpcyx0PTAsbz0wLHM9W107Zm9yKCExPT09ZS5vcHRpb25zLmluZmluaXRlP2k9ZS5zbGlkZUNvdW50Oih0PS0xKmUub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCxvPS0xKmUub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCxpPTIqZS5zbGlkZUNvdW50KTt0PGk7KXMucHVzaCh0KSx0PW8rZS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsLG8rPWUub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDw9ZS5vcHRpb25zLnNsaWRlc1RvU2hvdz9lLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw6ZS5vcHRpb25zLnNsaWRlc1RvU2hvdztyZXR1cm4gc30sZS5wcm90b3R5cGUuZ2V0U2xpY2s9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sZS5wcm90b3R5cGUuZ2V0U2xpZGVDb3VudD1mdW5jdGlvbigpe3ZhciBlLHQsbz10aGlzO3JldHVybiB0PSEwPT09by5vcHRpb25zLmNlbnRlck1vZGU/by5zbGlkZVdpZHRoKk1hdGguZmxvb3Ioby5vcHRpb25zLnNsaWRlc1RvU2hvdy8yKTowLCEwPT09by5vcHRpb25zLnN3aXBlVG9TbGlkZT8oby4kc2xpZGVUcmFjay5maW5kKCIuc2xpY2stc2xpZGUiKS5lYWNoKGZ1bmN0aW9uKHMsbil7aWYobi5vZmZzZXRMZWZ0LXQraShuKS5vdXRlcldpZHRoKCkvMj4tMSpvLnN3aXBlTGVmdClyZXR1cm4gZT1uLCExfSksTWF0aC5hYnMoaShlKS5hdHRyKCJkYXRhLXNsaWNrLWluZGV4Iiktby5jdXJyZW50U2xpZGUpfHwxKTpvLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGx9LGUucHJvdG90eXBlLmdvVG89ZS5wcm90b3R5cGUuc2xpY2tHb1RvPWZ1bmN0aW9uKGksZSl7dGhpcy5jaGFuZ2VTbGlkZSh7ZGF0YTp7bWVzc2FnZToiaW5kZXgiLGluZGV4OnBhcnNlSW50KGkpfX0sZSl9LGUucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztpKHQuJHNsaWRlcikuaGFzQ2xhc3MoInNsaWNrLWluaXRpYWxpemVkIil8fChpKHQuJHNsaWRlcikuYWRkQ2xhc3MoInNsaWNrLWluaXRpYWxpemVkIiksdC5idWlsZFJvd3MoKSx0LmJ1aWxkT3V0KCksdC5zZXRQcm9wcygpLHQuc3RhcnRMb2FkKCksdC5sb2FkU2xpZGVyKCksdC5pbml0aWFsaXplRXZlbnRzKCksdC51cGRhdGVBcnJvd3MoKSx0LnVwZGF0ZURvdHMoKSx0LmNoZWNrUmVzcG9uc2l2ZSghMCksdC5mb2N1c0hhbmRsZXIoKSksZSYmdC4kc2xpZGVyLnRyaWdnZXIoImluaXQiLFt0XSksITA9PT10Lm9wdGlvbnMuYWNjZXNzaWJpbGl0eSYmdC5pbml0QURBKCksdC5vcHRpb25zLmF1dG9wbGF5JiYodC5wYXVzZWQ9ITEsdC5hdXRvUGxheSgpKX0sZS5wcm90b3R5cGUuaW5pdEFEQT1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1NYXRoLmNlaWwoZS5zbGlkZUNvdW50L2Uub3B0aW9ucy5zbGlkZXNUb1Nob3cpLG89ZS5nZXROYXZpZ2FibGVJbmRleGVzKCkuZmlsdGVyKGZ1bmN0aW9uKGkpe3JldHVybiBpPj0wJiZpPGUuc2xpZGVDb3VudH0pO2UuJHNsaWRlcy5hZGQoZS4kc2xpZGVUcmFjay5maW5kKCIuc2xpY2stY2xvbmVkIikpLmF0dHIoeyJhcmlhLWhpZGRlbiI6InRydWUiLHRhYmluZGV4OiItMSJ9KS5maW5kKCJhLCBpbnB1dCwgYnV0dG9uLCBzZWxlY3QiKS5hdHRyKHt0YWJpbmRleDoiLTEifSksbnVsbCE9PWUuJGRvdHMmJihlLiRzbGlkZXMubm90KGUuJHNsaWRlVHJhY2suZmluZCgiLnNsaWNrLWNsb25lZCIpKS5lYWNoKGZ1bmN0aW9uKHQpe3ZhciBzPW8uaW5kZXhPZih0KTtpKHRoaXMpLmF0dHIoe3JvbGU6InRhYnBhbmVsIixpZDoic2xpY2stc2xpZGUiK2UuaW5zdGFuY2VVaWQrdCx0YWJpbmRleDotMX0pLC0xIT09cyYmaSh0aGlzKS5hdHRyKHsiYXJpYS1kZXNjcmliZWRieSI6InNsaWNrLXNsaWRlLWNvbnRyb2wiK2UuaW5zdGFuY2VVaWQrc30pfSksZS4kZG90cy5hdHRyKCJyb2xlIiwidGFibGlzdCIpLmZpbmQoImxpIikuZWFjaChmdW5jdGlvbihzKXt2YXIgbj1vW3NdO2kodGhpcykuYXR0cih7cm9sZToicHJlc2VudGF0aW9uIn0pLGkodGhpcykuZmluZCgiYnV0dG9uIikuZmlyc3QoKS5hdHRyKHtyb2xlOiJ0YWIiLGlkOiJzbGljay1zbGlkZS1jb250cm9sIitlLmluc3RhbmNlVWlkK3MsImFyaWEtY29udHJvbHMiOiJzbGljay1zbGlkZSIrZS5pbnN0YW5jZVVpZCtuLCJhcmlhLWxhYmVsIjpzKzErIiBvZiAiK3QsImFyaWEtc2VsZWN0ZWQiOm51bGwsdGFiaW5kZXg6Ii0xIn0pfSkuZXEoZS5jdXJyZW50U2xpZGUpLmZpbmQoImJ1dHRvbiIpLmF0dHIoeyJhcmlhLXNlbGVjdGVkIjoidHJ1ZSIsdGFiaW5kZXg6IjAifSkuZW5kKCkpO2Zvcih2YXIgcz1lLmN1cnJlbnRTbGlkZSxuPXMrZS5vcHRpb25zLnNsaWRlc1RvU2hvdztzPG47cysrKWUuJHNsaWRlcy5lcShzKS5hdHRyKCJ0YWJpbmRleCIsMCk7ZS5hY3RpdmF0ZUFEQSgpfSxlLnByb3RvdHlwZS5pbml0QXJyb3dFdmVudHM9ZnVuY3Rpb24oKXt2YXIgaT10aGlzOyEwPT09aS5vcHRpb25zLmFycm93cyYmaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpLiRwcmV2QXJyb3cub2ZmKCJjbGljay5zbGljayIpLm9uKCJjbGljay5zbGljayIse21lc3NhZ2U6InByZXZpb3VzIn0saS5jaGFuZ2VTbGlkZSksaS4kbmV4dEFycm93Lm9mZigiY2xpY2suc2xpY2siKS5vbigiY2xpY2suc2xpY2siLHttZXNzYWdlOiJuZXh0In0saS5jaGFuZ2VTbGlkZSksITA9PT1pLm9wdGlvbnMuYWNjZXNzaWJpbGl0eSYmKGkuJHByZXZBcnJvdy5vbigia2V5ZG93bi5zbGljayIsaS5rZXlIYW5kbGVyKSxpLiRuZXh0QXJyb3cub24oImtleWRvd24uc2xpY2siLGkua2V5SGFuZGxlcikpKX0sZS5wcm90b3R5cGUuaW5pdERvdEV2ZW50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ITA9PT1lLm9wdGlvbnMuZG90cyYmKGkoImxpIixlLiRkb3RzKS5vbigiY2xpY2suc2xpY2siLHttZXNzYWdlOiJpbmRleCJ9LGUuY2hhbmdlU2xpZGUpLCEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJmUuJGRvdHMub24oImtleWRvd24uc2xpY2siLGUua2V5SGFuZGxlcikpLCEwPT09ZS5vcHRpb25zLmRvdHMmJiEwPT09ZS5vcHRpb25zLnBhdXNlT25Eb3RzSG92ZXImJmkoImxpIixlLiRkb3RzKS5vbigibW91c2VlbnRlci5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCEwKSkub24oIm1vdXNlbGVhdmUuc2xpY2siLGkucHJveHkoZS5pbnRlcnJ1cHQsZSwhMSkpfSxlLnByb3RvdHlwZS5pbml0U2xpZGVFdmVudHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2Uub3B0aW9ucy5wYXVzZU9uSG92ZXImJihlLiRsaXN0Lm9uKCJtb3VzZWVudGVyLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITApKSxlLiRsaXN0Lm9uKCJtb3VzZWxlYXZlLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITEpKSl9LGUucHJvdG90eXBlLmluaXRpYWxpemVFdmVudHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2UuaW5pdEFycm93RXZlbnRzKCksZS5pbml0RG90RXZlbnRzKCksZS5pbml0U2xpZGVFdmVudHMoKSxlLiRsaXN0Lm9uKCJ0b3VjaHN0YXJ0LnNsaWNrIG1vdXNlZG93bi5zbGljayIse2FjdGlvbjoic3RhcnQifSxlLnN3aXBlSGFuZGxlciksZS4kbGlzdC5vbigidG91Y2htb3ZlLnNsaWNrIG1vdXNlbW92ZS5zbGljayIse2FjdGlvbjoibW92ZSJ9LGUuc3dpcGVIYW5kbGVyKSxlLiRsaXN0Lm9uKCJ0b3VjaGVuZC5zbGljayBtb3VzZXVwLnNsaWNrIix7YWN0aW9uOiJlbmQifSxlLnN3aXBlSGFuZGxlciksZS4kbGlzdC5vbigidG91Y2hjYW5jZWwuc2xpY2sgbW91c2VsZWF2ZS5zbGljayIse2FjdGlvbjoiZW5kIn0sZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub24oImNsaWNrLnNsaWNrIixlLmNsaWNrSGFuZGxlciksaShkb2N1bWVudCkub24oZS52aXNpYmlsaXR5Q2hhbmdlLGkucHJveHkoZS52aXNpYmlsaXR5LGUpKSwhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiZlLiRsaXN0Lm9uKCJrZXlkb3duLnNsaWNrIixlLmtleUhhbmRsZXIpLCEwPT09ZS5vcHRpb25zLmZvY3VzT25TZWxlY3QmJmkoZS4kc2xpZGVUcmFjaykuY2hpbGRyZW4oKS5vbigiY2xpY2suc2xpY2siLGUuc2VsZWN0SGFuZGxlciksaSh3aW5kb3cpLm9uKCJvcmllbnRhdGlvbmNoYW5nZS5zbGljay5zbGljay0iK2UuaW5zdGFuY2VVaWQsaS5wcm94eShlLm9yaWVudGF0aW9uQ2hhbmdlLGUpKSxpKHdpbmRvdykub24oInJlc2l6ZS5zbGljay5zbGljay0iK2UuaW5zdGFuY2VVaWQsaS5wcm94eShlLnJlc2l6ZSxlKSksaSgiW2RyYWdnYWJsZSE9dHJ1ZV0iLGUuJHNsaWRlVHJhY2spLm9uKCJkcmFnc3RhcnQiLGUucHJldmVudERlZmF1bHQpLGkod2luZG93KS5vbigibG9hZC5zbGljay5zbGljay0iK2UuaW5zdGFuY2VVaWQsZS5zZXRQb3NpdGlvbiksaShlLnNldFBvc2l0aW9uKX0sZS5wcm90b3R5cGUuaW5pdFVJPWZ1bmN0aW9uKCl7dmFyIGk9dGhpczshMD09PWkub3B0aW9ucy5hcnJvd3MmJmkuc2xpZGVDb3VudD5pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYoaS4kcHJldkFycm93LnNob3coKSxpLiRuZXh0QXJyb3cuc2hvdygpKSwhMD09PWkub3B0aW9ucy5kb3RzJiZpLnNsaWRlQ291bnQ+aS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmaS4kZG90cy5zaG93KCl9LGUucHJvdG90eXBlLmtleUhhbmRsZXI9ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcztpLnRhcmdldC50YWdOYW1lLm1hdGNoKCJURVhUQVJFQXxJTlBVVHxTRUxFQ1QiKXx8KDM3PT09aS5rZXlDb2RlJiYhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5P2UuY2hhbmdlU2xpZGUoe2RhdGE6e21lc3NhZ2U6ITA9PT1lLm9wdGlvbnMucnRsPyJuZXh0IjoicHJldmlvdXMifX0pOjM5PT09aS5rZXlDb2RlJiYhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiZlLmNoYW5nZVNsaWRlKHtkYXRhOnttZXNzYWdlOiEwPT09ZS5vcHRpb25zLnJ0bD8icHJldmlvdXMiOiJuZXh0In19KSl9LGUucHJvdG90eXBlLmxhenlMb2FkPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlKXtpKCJpbWdbZGF0YS1sYXp5XSIsZSkuZWFjaChmdW5jdGlvbigpe3ZhciBlPWkodGhpcyksdD1pKHRoaXMpLmF0dHIoImRhdGEtbGF6eSIpLG89aSh0aGlzKS5hdHRyKCJkYXRhLXNyY3NldCIpLHM9aSh0aGlzKS5hdHRyKCJkYXRhLXNpemVzIil8fG4uJHNsaWRlci5hdHRyKCJkYXRhLXNpemVzIikscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTtyLm9ubG9hZD1mdW5jdGlvbigpe2UuYW5pbWF0ZSh7b3BhY2l0eTowfSwxMDAsZnVuY3Rpb24oKXtvJiYoZS5hdHRyKCJzcmNzZXQiLG8pLHMmJmUuYXR0cigic2l6ZXMiLHMpKSxlLmF0dHIoInNyYyIsdCkuYW5pbWF0ZSh7b3BhY2l0eToxfSwyMDAsZnVuY3Rpb24oKXtlLnJlbW92ZUF0dHIoImRhdGEtbGF6eSBkYXRhLXNyY3NldCBkYXRhLXNpemVzIikucmVtb3ZlQ2xhc3MoInNsaWNrLWxvYWRpbmciKX0pLG4uJHNsaWRlci50cmlnZ2VyKCJsYXp5TG9hZGVkIixbbixlLHRdKX0pfSxyLm9uZXJyb3I9ZnVuY3Rpb24oKXtlLnJlbW92ZUF0dHIoImRhdGEtbGF6eSIpLnJlbW92ZUNsYXNzKCJzbGljay1sb2FkaW5nIikuYWRkQ2xhc3MoInNsaWNrLWxhenlsb2FkLWVycm9yIiksbi4kc2xpZGVyLnRyaWdnZXIoImxhenlMb2FkRXJyb3IiLFtuLGUsdF0pfSxyLnNyYz10fSl9dmFyIHQsbyxzLG49dGhpcztpZighMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlPyEwPT09bi5vcHRpb25zLmluZmluaXRlP3M9KG89bi5jdXJyZW50U2xpZGUrKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMisxKSkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdysyOihvPU1hdGgubWF4KDAsbi5jdXJyZW50U2xpZGUtKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMisxKSkscz1uLm9wdGlvbnMuc2xpZGVzVG9TaG93LzIrMSsyK24uY3VycmVudFNsaWRlKToobz1uLm9wdGlvbnMuaW5maW5pdGU/bi5vcHRpb25zLnNsaWRlc1RvU2hvdytuLmN1cnJlbnRTbGlkZTpuLmN1cnJlbnRTbGlkZSxzPU1hdGguY2VpbChvK24ub3B0aW9ucy5zbGlkZXNUb1Nob3cpLCEwPT09bi5vcHRpb25zLmZhZGUmJihvPjAmJm8tLSxzPD1uLnNsaWRlQ291bnQmJnMrKykpLHQ9bi4kc2xpZGVyLmZpbmQoIi5zbGljay1zbGlkZSIpLnNsaWNlKG8scyksImFudGljaXBhdGVkIj09PW4ub3B0aW9ucy5sYXp5TG9hZClmb3IodmFyIHI9by0xLGw9cyxkPW4uJHNsaWRlci5maW5kKCIuc2xpY2stc2xpZGUiKSxhPTA7YTxuLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw7YSsrKXI8MCYmKHI9bi5zbGlkZUNvdW50LTEpLHQ9KHQ9dC5hZGQoZC5lcShyKSkpLmFkZChkLmVxKGwpKSxyLS0sbCsrO2UodCksbi5zbGlkZUNvdW50PD1uLm9wdGlvbnMuc2xpZGVzVG9TaG93P2Uobi4kc2xpZGVyLmZpbmQoIi5zbGljay1zbGlkZSIpKTpuLmN1cnJlbnRTbGlkZT49bi5zbGlkZUNvdW50LW4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/ZShuLiRzbGlkZXIuZmluZCgiLnNsaWNrLWNsb25lZCIpLnNsaWNlKDAsbi5vcHRpb25zLnNsaWRlc1RvU2hvdykpOjA9PT1uLmN1cnJlbnRTbGlkZSYmZShuLiRzbGlkZXIuZmluZCgiLnNsaWNrLWNsb25lZCIpLnNsaWNlKC0xKm4ub3B0aW9ucy5zbGlkZXNUb1Nob3cpKX0sZS5wcm90b3R5cGUubG9hZFNsaWRlcj1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5zZXRQb3NpdGlvbigpLGkuJHNsaWRlVHJhY2suY3NzKHtvcGFjaXR5OjF9KSxpLiRzbGlkZXIucmVtb3ZlQ2xhc3MoInNsaWNrLWxvYWRpbmciKSxpLmluaXRVSSgpLCJwcm9ncmVzc2l2ZSI9PT1pLm9wdGlvbnMubGF6eUxvYWQmJmkucHJvZ3Jlc3NpdmVMYXp5TG9hZCgpfSxlLnByb3RvdHlwZS5uZXh0PWUucHJvdG90eXBlLnNsaWNrTmV4dD1mdW5jdGlvbigpe3RoaXMuY2hhbmdlU2xpZGUoe2RhdGE6e21lc3NhZ2U6Im5leHQifX0pfSxlLnByb3RvdHlwZS5vcmllbnRhdGlvbkNoYW5nZT1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5jaGVja1Jlc3BvbnNpdmUoKSxpLnNldFBvc2l0aW9uKCl9LGUucHJvdG90eXBlLnBhdXNlPWUucHJvdG90eXBlLnNsaWNrUGF1c2U9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2kuYXV0b1BsYXlDbGVhcigpLGkucGF1c2VkPSEwfSxlLnByb3RvdHlwZS5wbGF5PWUucHJvdG90eXBlLnNsaWNrUGxheT1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5hdXRvUGxheSgpLGkub3B0aW9ucy5hdXRvcGxheT0hMCxpLnBhdXNlZD0hMSxpLmZvY3Vzc2VkPSExLGkuaW50ZXJydXB0ZWQ9ITF9LGUucHJvdG90eXBlLnBvc3RTbGlkZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3QudW5zbGlja2VkfHwodC4kc2xpZGVyLnRyaWdnZXIoImFmdGVyQ2hhbmdlIixbdCxlXSksdC5hbmltYXRpbmc9ITEsdC5zbGlkZUNvdW50PnQub3B0aW9ucy5zbGlkZXNUb1Nob3cmJnQuc2V0UG9zaXRpb24oKSx0LnN3aXBlTGVmdD1udWxsLHQub3B0aW9ucy5hdXRvcGxheSYmdC5hdXRvUGxheSgpLCEwPT09dC5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJih0LmluaXRBREEoKSx0Lm9wdGlvbnMuZm9jdXNPbkNoYW5nZSYmaSh0LiRzbGlkZXMuZ2V0KHQuY3VycmVudFNsaWRlKSkuYXR0cigidGFiaW5kZXgiLDApLmZvY3VzKCkpKX0sZS5wcm90b3R5cGUucHJldj1lLnByb3RvdHlwZS5zbGlja1ByZXY9ZnVuY3Rpb24oKXt0aGlzLmNoYW5nZVNsaWRlKHtkYXRhOnttZXNzYWdlOiJwcmV2aW91cyJ9fSl9LGUucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKGkpe2kucHJldmVudERlZmF1bHQoKX0sZS5wcm90b3R5cGUucHJvZ3Jlc3NpdmVMYXp5TG9hZD1mdW5jdGlvbihlKXtlPWV8fDE7dmFyIHQsbyxzLG4scixsPXRoaXMsZD1pKCJpbWdbZGF0YS1sYXp5XSIsbC4kc2xpZGVyKTtkLmxlbmd0aD8odD1kLmZpcnN0KCksbz10LmF0dHIoImRhdGEtbGF6eSIpLHM9dC5hdHRyKCJkYXRhLXNyY3NldCIpLG49dC5hdHRyKCJkYXRhLXNpemVzIil8fGwuJHNsaWRlci5hdHRyKCJkYXRhLXNpemVzIiksKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIikpLm9ubG9hZD1mdW5jdGlvbigpe3MmJih0LmF0dHIoInNyY3NldCIscyksbiYmdC5hdHRyKCJzaXplcyIsbikpLHQuYXR0cigic3JjIixvKS5yZW1vdmVBdHRyKCJkYXRhLWxhenkgZGF0YS1zcmNzZXQgZGF0YS1zaXplcyIpLnJlbW92ZUNsYXNzKCJzbGljay1sb2FkaW5nIiksITA9PT1sLm9wdGlvbnMuYWRhcHRpdmVIZWlnaHQmJmwuc2V0UG9zaXRpb24oKSxsLiRzbGlkZXIudHJpZ2dlcigibGF6eUxvYWRlZCIsW2wsdCxvXSksbC5wcm9ncmVzc2l2ZUxhenlMb2FkKCl9LHIub25lcnJvcj1mdW5jdGlvbigpe2U8Mz9zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bC5wcm9ncmVzc2l2ZUxhenlMb2FkKGUrMSl9LDUwMCk6KHQucmVtb3ZlQXR0cigiZGF0YS1sYXp5IikucmVtb3ZlQ2xhc3MoInNsaWNrLWxvYWRpbmciKS5hZGRDbGFzcygic2xpY2stbGF6eWxvYWQtZXJyb3IiKSxsLiRzbGlkZXIudHJpZ2dlcigibGF6eUxvYWRFcnJvciIsW2wsdCxvXSksbC5wcm9ncmVzc2l2ZUxhenlMb2FkKCkpfSxyLnNyYz1vKTpsLiRzbGlkZXIudHJpZ2dlcigiYWxsSW1hZ2VzTG9hZGVkIixbbF0pfSxlLnByb3RvdHlwZS5yZWZyZXNoPWZ1bmN0aW9uKGUpe3ZhciB0LG8scz10aGlzO289cy5zbGlkZUNvdW50LXMub3B0aW9ucy5zbGlkZXNUb1Nob3csIXMub3B0aW9ucy5pbmZpbml0ZSYmcy5jdXJyZW50U2xpZGU+byYmKHMuY3VycmVudFNsaWRlPW8pLHMuc2xpZGVDb3VudDw9cy5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKHMuY3VycmVudFNsaWRlPTApLHQ9cy5jdXJyZW50U2xpZGUscy5kZXN0cm95KCEwKSxpLmV4dGVuZChzLHMuaW5pdGlhbHMse2N1cnJlbnRTbGlkZTp0fSkscy5pbml0KCksZXx8cy5jaGFuZ2VTbGlkZSh7ZGF0YTp7bWVzc2FnZToiaW5kZXgiLGluZGV4OnR9fSwhMSl9LGUucHJvdG90eXBlLnJlZ2lzdGVyQnJlYWtwb2ludHM9ZnVuY3Rpb24oKXt2YXIgZSx0LG8scz10aGlzLG49cy5vcHRpb25zLnJlc3BvbnNpdmV8fG51bGw7aWYoImFycmF5Ij09PWkudHlwZShuKSYmbi5sZW5ndGgpe3MucmVzcG9uZFRvPXMub3B0aW9ucy5yZXNwb25kVG98fCJ3aW5kb3ciO2ZvcihlIGluIG4paWYobz1zLmJyZWFrcG9pbnRzLmxlbmd0aC0xLG4uaGFzT3duUHJvcGVydHkoZSkpe2Zvcih0PW5bZV0uYnJlYWtwb2ludDtvPj0wOylzLmJyZWFrcG9pbnRzW29dJiZzLmJyZWFrcG9pbnRzW29dPT09dCYmcy5icmVha3BvaW50cy5zcGxpY2UobywxKSxvLS07cy5icmVha3BvaW50cy5wdXNoKHQpLHMuYnJlYWtwb2ludFNldHRpbmdzW3RdPW5bZV0uc2V0dGluZ3N9cy5icmVha3BvaW50cy5zb3J0KGZ1bmN0aW9uKGksZSl7cmV0dXJuIHMub3B0aW9ucy5tb2JpbGVGaXJzdD9pLWU6ZS1pfSl9fSxlLnByb3RvdHlwZS5yZWluaXQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2UuJHNsaWRlcz1lLiRzbGlkZVRyYWNrLmNoaWxkcmVuKGUub3B0aW9ucy5zbGlkZSkuYWRkQ2xhc3MoInNsaWNrLXNsaWRlIiksZS5zbGlkZUNvdW50PWUuJHNsaWRlcy5sZW5ndGgsZS5jdXJyZW50U2xpZGU+PWUuc2xpZGVDb3VudCYmMCE9PWUuY3VycmVudFNsaWRlJiYoZS5jdXJyZW50U2xpZGU9ZS5jdXJyZW50U2xpZGUtZS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsKSxlLnNsaWRlQ291bnQ8PWUub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihlLmN1cnJlbnRTbGlkZT0wKSxlLnJlZ2lzdGVyQnJlYWtwb2ludHMoKSxlLnNldFByb3BzKCksZS5zZXR1cEluZmluaXRlKCksZS5idWlsZEFycm93cygpLGUudXBkYXRlQXJyb3dzKCksZS5pbml0QXJyb3dFdmVudHMoKSxlLmJ1aWxkRG90cygpLGUudXBkYXRlRG90cygpLGUuaW5pdERvdEV2ZW50cygpLGUuY2xlYW5VcFNsaWRlRXZlbnRzKCksZS5pbml0U2xpZGVFdmVudHMoKSxlLmNoZWNrUmVzcG9uc2l2ZSghMSwhMCksITA9PT1lLm9wdGlvbnMuZm9jdXNPblNlbGVjdCYmaShlLiRzbGlkZVRyYWNrKS5jaGlsZHJlbigpLm9uKCJjbGljay5zbGljayIsZS5zZWxlY3RIYW5kbGVyKSxlLnNldFNsaWRlQ2xhc3NlcygibnVtYmVyIj09dHlwZW9mIGUuY3VycmVudFNsaWRlP2UuY3VycmVudFNsaWRlOjApLGUuc2V0UG9zaXRpb24oKSxlLmZvY3VzSGFuZGxlcigpLGUucGF1c2VkPSFlLm9wdGlvbnMuYXV0b3BsYXksZS5hdXRvUGxheSgpLGUuJHNsaWRlci50cmlnZ2VyKCJyZUluaXQiLFtlXSl9LGUucHJvdG90eXBlLnJlc2l6ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7aSh3aW5kb3cpLndpZHRoKCkhPT1lLndpbmRvd1dpZHRoJiYoY2xlYXJUaW1lb3V0KGUud2luZG93RGVsYXkpLGUud2luZG93RGVsYXk9d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLndpbmRvd1dpZHRoPWkod2luZG93KS53aWR0aCgpLGUuY2hlY2tSZXNwb25zaXZlKCksZS51bnNsaWNrZWR8fGUuc2V0UG9zaXRpb24oKX0sNTApKX0sZS5wcm90b3R5cGUucmVtb3ZlU2xpZGU9ZS5wcm90b3R5cGUuc2xpY2tSZW1vdmU9ZnVuY3Rpb24oaSxlLHQpe3ZhciBvPXRoaXM7aWYoaT0iYm9vbGVhbiI9PXR5cGVvZiBpPyEwPT09KGU9aSk/MDpvLnNsaWRlQ291bnQtMTohMD09PWU/LS1pOmksby5zbGlkZUNvdW50PDF8fGk8MHx8aT5vLnNsaWRlQ291bnQtMSlyZXR1cm4hMTtvLnVubG9hZCgpLCEwPT09dD9vLiRzbGlkZVRyYWNrLmNoaWxkcmVuKCkucmVtb3ZlKCk6by4kc2xpZGVUcmFjay5jaGlsZHJlbih0aGlzLm9wdGlvbnMuc2xpZGUpLmVxKGkpLnJlbW92ZSgpLG8uJHNsaWRlcz1vLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSksby4kc2xpZGVUcmFjay5jaGlsZHJlbih0aGlzLm9wdGlvbnMuc2xpZGUpLmRldGFjaCgpLG8uJHNsaWRlVHJhY2suYXBwZW5kKG8uJHNsaWRlcyksby4kc2xpZGVzQ2FjaGU9by4kc2xpZGVzLG8ucmVpbml0KCl9LGUucHJvdG90eXBlLnNldENTUz1mdW5jdGlvbihpKXt2YXIgZSx0LG89dGhpcyxzPXt9OyEwPT09by5vcHRpb25zLnJ0bCYmKGk9LWkpLGU9ImxlZnQiPT1vLnBvc2l0aW9uUHJvcD9NYXRoLmNlaWwoaSkrInB4IjoiMHB4Iix0PSJ0b3AiPT1vLnBvc2l0aW9uUHJvcD9NYXRoLmNlaWwoaSkrInB4IjoiMHB4IixzW28ucG9zaXRpb25Qcm9wXT1pLCExPT09by50cmFuc2Zvcm1zRW5hYmxlZD9vLiRzbGlkZVRyYWNrLmNzcyhzKToocz17fSwhMT09PW8uY3NzVHJhbnNpdGlvbnM/KHNbby5hbmltVHlwZV09InRyYW5zbGF0ZSgiK2UrIiwgIit0KyIpIixvLiRzbGlkZVRyYWNrLmNzcyhzKSk6KHNbby5hbmltVHlwZV09InRyYW5zbGF0ZTNkKCIrZSsiLCAiK3QrIiwgMHB4KSIsby4kc2xpZGVUcmFjay5jc3MocykpKX0sZS5wcm90b3R5cGUuc2V0RGltZW5zaW9ucz1mdW5jdGlvbigpe3ZhciBpPXRoaXM7ITE9PT1pLm9wdGlvbnMudmVydGljYWw/ITA9PT1pLm9wdGlvbnMuY2VudGVyTW9kZSYmaS4kbGlzdC5jc3Moe3BhZGRpbmc6IjBweCAiK2kub3B0aW9ucy5jZW50ZXJQYWRkaW5nfSk6KGkuJGxpc3QuaGVpZ2h0KGkuJHNsaWRlcy5maXJzdCgpLm91dGVySGVpZ2h0KCEwKSppLm9wdGlvbnMuc2xpZGVzVG9TaG93KSwhMD09PWkub3B0aW9ucy5jZW50ZXJNb2RlJiZpLiRsaXN0LmNzcyh7cGFkZGluZzppLm9wdGlvbnMuY2VudGVyUGFkZGluZysiIDBweCJ9KSksaS5saXN0V2lkdGg9aS4kbGlzdC53aWR0aCgpLGkubGlzdEhlaWdodD1pLiRsaXN0LmhlaWdodCgpLCExPT09aS5vcHRpb25zLnZlcnRpY2FsJiYhMT09PWkub3B0aW9ucy52YXJpYWJsZVdpZHRoPyhpLnNsaWRlV2lkdGg9TWF0aC5jZWlsKGkubGlzdFdpZHRoL2kub3B0aW9ucy5zbGlkZXNUb1Nob3cpLGkuJHNsaWRlVHJhY2sud2lkdGgoTWF0aC5jZWlsKGkuc2xpZGVXaWR0aCppLiRzbGlkZVRyYWNrLmNoaWxkcmVuKCIuc2xpY2stc2xpZGUiKS5sZW5ndGgpKSk6ITA9PT1pLm9wdGlvbnMudmFyaWFibGVXaWR0aD9pLiRzbGlkZVRyYWNrLndpZHRoKDVlMyppLnNsaWRlQ291bnQpOihpLnNsaWRlV2lkdGg9TWF0aC5jZWlsKGkubGlzdFdpZHRoKSxpLiRzbGlkZVRyYWNrLmhlaWdodChNYXRoLmNlaWwoaS4kc2xpZGVzLmZpcnN0KCkub3V0ZXJIZWlnaHQoITApKmkuJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmxlbmd0aCkpKTt2YXIgZT1pLiRzbGlkZXMuZmlyc3QoKS5vdXRlcldpZHRoKCEwKS1pLiRzbGlkZXMuZmlyc3QoKS53aWR0aCgpOyExPT09aS5vcHRpb25zLnZhcmlhYmxlV2lkdGgmJmkuJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLndpZHRoKGkuc2xpZGVXaWR0aC1lKX0sZS5wcm90b3R5cGUuc2V0RmFkZT1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpczt0LiRzbGlkZXMuZWFjaChmdW5jdGlvbihvLHMpe2U9dC5zbGlkZVdpZHRoKm8qLTEsITA9PT10Lm9wdGlvbnMucnRsP2kocykuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUiLHJpZ2h0OmUsdG9wOjAsekluZGV4OnQub3B0aW9ucy56SW5kZXgtMixvcGFjaXR5OjB9KTppKHMpLmNzcyh7cG9zaXRpb246InJlbGF0aXZlIixsZWZ0OmUsdG9wOjAsekluZGV4OnQub3B0aW9ucy56SW5kZXgtMixvcGFjaXR5OjB9KX0pLHQuJHNsaWRlcy5lcSh0LmN1cnJlbnRTbGlkZSkuY3NzKHt6SW5kZXg6dC5vcHRpb25zLnpJbmRleC0xLG9wYWNpdHk6MX0pfSxlLnByb3RvdHlwZS5zZXRIZWlnaHQ9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2lmKDE9PT1pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYhMD09PWkub3B0aW9ucy5hZGFwdGl2ZUhlaWdodCYmITE9PT1pLm9wdGlvbnMudmVydGljYWwpe3ZhciBlPWkuJHNsaWRlcy5lcShpLmN1cnJlbnRTbGlkZSkub3V0ZXJIZWlnaHQoITApO2kuJGxpc3QuY3NzKCJoZWlnaHQiLGUpfX0sZS5wcm90b3R5cGUuc2V0T3B0aW9uPWUucHJvdG90eXBlLnNsaWNrU2V0T3B0aW9uPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLHMsbixyPXRoaXMsbD0hMTtpZigib2JqZWN0Ij09PWkudHlwZShhcmd1bWVudHNbMF0pPyhvPWFyZ3VtZW50c1swXSxsPWFyZ3VtZW50c1sxXSxuPSJtdWx0aXBsZSIpOiJzdHJpbmciPT09aS50eXBlKGFyZ3VtZW50c1swXSkmJihvPWFyZ3VtZW50c1swXSxzPWFyZ3VtZW50c1sxXSxsPWFyZ3VtZW50c1syXSwicmVzcG9uc2l2ZSI9PT1hcmd1bWVudHNbMF0mJiJhcnJheSI9PT1pLnR5cGUoYXJndW1lbnRzWzFdKT9uPSJyZXNwb25zaXZlIjp2b2lkIDAhPT1hcmd1bWVudHNbMV0mJihuPSJzaW5nbGUiKSksInNpbmdsZSI9PT1uKXIub3B0aW9uc1tvXT1zO2Vsc2UgaWYoIm11bHRpcGxlIj09PW4paS5lYWNoKG8sZnVuY3Rpb24oaSxlKXtyLm9wdGlvbnNbaV09ZX0pO2Vsc2UgaWYoInJlc3BvbnNpdmUiPT09bilmb3IodCBpbiBzKWlmKCJhcnJheSIhPT1pLnR5cGUoci5vcHRpb25zLnJlc3BvbnNpdmUpKXIub3B0aW9ucy5yZXNwb25zaXZlPVtzW3RdXTtlbHNle2ZvcihlPXIub3B0aW9ucy5yZXNwb25zaXZlLmxlbmd0aC0xO2U+PTA7KXIub3B0aW9ucy5yZXNwb25zaXZlW2VdLmJyZWFrcG9pbnQ9PT1zW3RdLmJyZWFrcG9pbnQmJnIub3B0aW9ucy5yZXNwb25zaXZlLnNwbGljZShlLDEpLGUtLTtyLm9wdGlvbnMucmVzcG9uc2l2ZS5wdXNoKHNbdF0pfWwmJihyLnVubG9hZCgpLHIucmVpbml0KCkpfSxlLnByb3RvdHlwZS5zZXRQb3NpdGlvbj1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5zZXREaW1lbnNpb25zKCksaS5zZXRIZWlnaHQoKSwhMT09PWkub3B0aW9ucy5mYWRlP2kuc2V0Q1NTKGkuZ2V0TGVmdChpLmN1cnJlbnRTbGlkZSkpOmkuc2V0RmFkZSgpLGkuJHNsaWRlci50cmlnZ2VyKCJzZXRQb3NpdGlvbiIsW2ldKX0sZS5wcm90b3R5cGUuc2V0UHJvcHM9ZnVuY3Rpb24oKXt2YXIgaT10aGlzLGU9ZG9jdW1lbnQuYm9keS5zdHlsZTtpLnBvc2l0aW9uUHJvcD0hMD09PWkub3B0aW9ucy52ZXJ0aWNhbD8idG9wIjoibGVmdCIsInRvcCI9PT1pLnBvc2l0aW9uUHJvcD9pLiRzbGlkZXIuYWRkQ2xhc3MoInNsaWNrLXZlcnRpY2FsIik6aS4kc2xpZGVyLnJlbW92ZUNsYXNzKCJzbGljay12ZXJ0aWNhbCIpLHZvaWQgMD09PWUuV2Via2l0VHJhbnNpdGlvbiYmdm9pZCAwPT09ZS5Nb3pUcmFuc2l0aW9uJiZ2b2lkIDA9PT1lLm1zVHJhbnNpdGlvbnx8ITA9PT1pLm9wdGlvbnMudXNlQ1NTJiYoaS5jc3NUcmFuc2l0aW9ucz0hMCksaS5vcHRpb25zLmZhZGUmJigibnVtYmVyIj09dHlwZW9mIGkub3B0aW9ucy56SW5kZXg/aS5vcHRpb25zLnpJbmRleDwzJiYoaS5vcHRpb25zLnpJbmRleD0zKTppLm9wdGlvbnMuekluZGV4PWkuZGVmYXVsdHMuekluZGV4KSx2b2lkIDAhPT1lLk9UcmFuc2Zvcm0mJihpLmFuaW1UeXBlPSJPVHJhbnNmb3JtIixpLnRyYW5zZm9ybVR5cGU9Ii1vLXRyYW5zZm9ybSIsaS50cmFuc2l0aW9uVHlwZT0iT1RyYW5zaXRpb24iLHZvaWQgMD09PWUucGVyc3BlY3RpdmVQcm9wZXJ0eSYmdm9pZCAwPT09ZS53ZWJraXRQZXJzcGVjdGl2ZSYmKGkuYW5pbVR5cGU9ITEpKSx2b2lkIDAhPT1lLk1velRyYW5zZm9ybSYmKGkuYW5pbVR5cGU9Ik1velRyYW5zZm9ybSIsaS50cmFuc2Zvcm1UeXBlPSItbW96LXRyYW5zZm9ybSIsaS50cmFuc2l0aW9uVHlwZT0iTW96VHJhbnNpdGlvbiIsdm9pZCAwPT09ZS5wZXJzcGVjdGl2ZVByb3BlcnR5JiZ2b2lkIDA9PT1lLk1velBlcnNwZWN0aXZlJiYoaS5hbmltVHlwZT0hMSkpLHZvaWQgMCE9PWUud2Via2l0VHJhbnNmb3JtJiYoaS5hbmltVHlwZT0id2Via2l0VHJhbnNmb3JtIixpLnRyYW5zZm9ybVR5cGU9Ii13ZWJraXQtdHJhbnNmb3JtIixpLnRyYW5zaXRpb25UeXBlPSJ3ZWJraXRUcmFuc2l0aW9uIix2b2lkIDA9PT1lLnBlcnNwZWN0aXZlUHJvcGVydHkmJnZvaWQgMD09PWUud2Via2l0UGVyc3BlY3RpdmUmJihpLmFuaW1UeXBlPSExKSksdm9pZCAwIT09ZS5tc1RyYW5zZm9ybSYmKGkuYW5pbVR5cGU9Im1zVHJhbnNmb3JtIixpLnRyYW5zZm9ybVR5cGU9Ii1tcy10cmFuc2Zvcm0iLGkudHJhbnNpdGlvblR5cGU9Im1zVHJhbnNpdGlvbiIsdm9pZCAwPT09ZS5tc1RyYW5zZm9ybSYmKGkuYW5pbVR5cGU9ITEpKSx2b2lkIDAhPT1lLnRyYW5zZm9ybSYmITEhPT1pLmFuaW1UeXBlJiYoaS5hbmltVHlwZT0idHJhbnNmb3JtIixpLnRyYW5zZm9ybVR5cGU9InRyYW5zZm9ybSIsaS50cmFuc2l0aW9uVHlwZT0idHJhbnNpdGlvbiIpLGkudHJhbnNmb3Jtc0VuYWJsZWQ9aS5vcHRpb25zLnVzZVRyYW5zZm9ybSYmbnVsbCE9PWkuYW5pbVR5cGUmJiExIT09aS5hbmltVHlwZX0sZS5wcm90b3R5cGUuc2V0U2xpZGVDbGFzc2VzPWZ1bmN0aW9uKGkpe3ZhciBlLHQsbyxzLG49dGhpcztpZih0PW4uJHNsaWRlci5maW5kKCIuc2xpY2stc2xpZGUiKS5yZW1vdmVDbGFzcygic2xpY2stYWN0aXZlIHNsaWNrLWNlbnRlciBzbGljay1jdXJyZW50IikuYXR0cigiYXJpYS1oaWRkZW4iLCJ0cnVlIiksbi4kc2xpZGVzLmVxKGkpLmFkZENsYXNzKCJzbGljay1jdXJyZW50IiksITA9PT1uLm9wdGlvbnMuY2VudGVyTW9kZSl7dmFyIHI9bi5vcHRpb25zLnNsaWRlc1RvU2hvdyUyPT0wPzE6MDtlPU1hdGguZmxvb3Iobi5vcHRpb25zLnNsaWRlc1RvU2hvdy8yKSwhMD09PW4ub3B0aW9ucy5pbmZpbml0ZSYmKGk+PWUmJmk8PW4uc2xpZGVDb3VudC0xLWU/bi4kc2xpZGVzLnNsaWNlKGktZStyLGkrZSsxKS5hZGRDbGFzcygic2xpY2stYWN0aXZlIikuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpOihvPW4ub3B0aW9ucy5zbGlkZXNUb1Nob3craSx0LnNsaWNlKG8tZSsxK3IsbytlKzIpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKS5hdHRyKCJhcmlhLWhpZGRlbiIsImZhbHNlIikpLDA9PT1pP3QuZXEodC5sZW5ndGgtMS1uLm9wdGlvbnMuc2xpZGVzVG9TaG93KS5hZGRDbGFzcygic2xpY2stY2VudGVyIik6aT09PW4uc2xpZGVDb3VudC0xJiZ0LmVxKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cpLmFkZENsYXNzKCJzbGljay1jZW50ZXIiKSksbi4kc2xpZGVzLmVxKGkpLmFkZENsYXNzKCJzbGljay1jZW50ZXIiKX1lbHNlIGk+PTAmJmk8PW4uc2xpZGVDb3VudC1uLm9wdGlvbnMuc2xpZGVzVG9TaG93P24uJHNsaWRlcy5zbGljZShpLGkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdykuYWRkQ2xhc3MoInNsaWNrLWFjdGl2ZSIpLmF0dHIoImFyaWEtaGlkZGVuIiwiZmFsc2UiKTp0Lmxlbmd0aDw9bi5vcHRpb25zLnNsaWRlc1RvU2hvdz90LmFkZENsYXNzKCJzbGljay1hY3RpdmUiKS5hdHRyKCJhcmlhLWhpZGRlbiIsImZhbHNlIik6KHM9bi5zbGlkZUNvdW50JW4ub3B0aW9ucy5zbGlkZXNUb1Nob3csbz0hMD09PW4ub3B0aW9ucy5pbmZpbml0ZT9uLm9wdGlvbnMuc2xpZGVzVG9TaG93K2k6aSxuLm9wdGlvbnMuc2xpZGVzVG9TaG93PT1uLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwmJm4uc2xpZGVDb3VudC1pPG4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/dC5zbGljZShvLShuLm9wdGlvbnMuc2xpZGVzVG9TaG93LXMpLG8rcykuYWRkQ2xhc3MoInNsaWNrLWFjdGl2ZSIpLmF0dHIoImFyaWEtaGlkZGVuIiwiZmFsc2UiKTp0LnNsaWNlKG8sbytuLm9wdGlvbnMuc2xpZGVzVG9TaG93KS5hZGRDbGFzcygic2xpY2stYWN0aXZlIikuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpKTsib25kZW1hbmQiIT09bi5vcHRpb25zLmxhenlMb2FkJiYiYW50aWNpcGF0ZWQiIT09bi5vcHRpb25zLmxhenlMb2FkfHxuLmxhenlMb2FkKCl9LGUucHJvdG90eXBlLnNldHVwSW5maW5pdGU9ZnVuY3Rpb24oKXt2YXIgZSx0LG8scz10aGlzO2lmKCEwPT09cy5vcHRpb25zLmZhZGUmJihzLm9wdGlvbnMuY2VudGVyTW9kZT0hMSksITA9PT1zLm9wdGlvbnMuaW5maW5pdGUmJiExPT09cy5vcHRpb25zLmZhZGUmJih0PW51bGwscy5zbGlkZUNvdW50PnMub3B0aW9ucy5zbGlkZXNUb1Nob3cpKXtmb3Iobz0hMD09PXMub3B0aW9ucy5jZW50ZXJNb2RlP3Mub3B0aW9ucy5zbGlkZXNUb1Nob3crMTpzLm9wdGlvbnMuc2xpZGVzVG9TaG93LGU9cy5zbGlkZUNvdW50O2U+cy5zbGlkZUNvdW50LW87ZS09MSl0PWUtMSxpKHMuJHNsaWRlc1t0XSkuY2xvbmUoITApLmF0dHIoImlkIiwiIikuYXR0cigiZGF0YS1zbGljay1pbmRleCIsdC1zLnNsaWRlQ291bnQpLnByZXBlbmRUbyhzLiRzbGlkZVRyYWNrKS5hZGRDbGFzcygic2xpY2stY2xvbmVkIik7Zm9yKGU9MDtlPG8rcy5zbGlkZUNvdW50O2UrPTEpdD1lLGkocy4kc2xpZGVzW3RdKS5jbG9uZSghMCkuYXR0cigiaWQiLCIiKS5hdHRyKCJkYXRhLXNsaWNrLWluZGV4Iix0K3Muc2xpZGVDb3VudCkuYXBwZW5kVG8ocy4kc2xpZGVUcmFjaykuYWRkQ2xhc3MoInNsaWNrLWNsb25lZCIpO3MuJHNsaWRlVHJhY2suZmluZCgiLnNsaWNrLWNsb25lZCIpLmZpbmQoIltpZF0iKS5lYWNoKGZ1bmN0aW9uKCl7aSh0aGlzKS5hdHRyKCJpZCIsIiIpfSl9fSxlLnByb3RvdHlwZS5pbnRlcnJ1cHQ9ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcztpfHxlLmF1dG9QbGF5KCksZS5pbnRlcnJ1cHRlZD1pfSxlLnByb3RvdHlwZS5zZWxlY3RIYW5kbGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbz1pKGUudGFyZ2V0KS5pcygiLnNsaWNrLXNsaWRlIik/aShlLnRhcmdldCk6aShlLnRhcmdldCkucGFyZW50cygiLnNsaWNrLXNsaWRlIikscz1wYXJzZUludChvLmF0dHIoImRhdGEtc2xpY2staW5kZXgiKSk7c3x8KHM9MCksdC5zbGlkZUNvdW50PD10Lm9wdGlvbnMuc2xpZGVzVG9TaG93P3Quc2xpZGVIYW5kbGVyKHMsITEsITApOnQuc2xpZGVIYW5kbGVyKHMpfSxlLnByb3RvdHlwZS5zbGlkZUhhbmRsZXI9ZnVuY3Rpb24oaSxlLHQpe3ZhciBvLHMsbixyLGwsZD1udWxsLGE9dGhpcztpZihlPWV8fCExLCEoITA9PT1hLmFuaW1hdGluZyYmITA9PT1hLm9wdGlvbnMud2FpdEZvckFuaW1hdGV8fCEwPT09YS5vcHRpb25zLmZhZGUmJmEuY3VycmVudFNsaWRlPT09aSkpaWYoITE9PT1lJiZhLmFzTmF2Rm9yKGkpLG89aSxkPWEuZ2V0TGVmdChvKSxyPWEuZ2V0TGVmdChhLmN1cnJlbnRTbGlkZSksYS5jdXJyZW50TGVmdD1udWxsPT09YS5zd2lwZUxlZnQ/cjphLnN3aXBlTGVmdCwhMT09PWEub3B0aW9ucy5pbmZpbml0ZSYmITE9PT1hLm9wdGlvbnMuY2VudGVyTW9kZSYmKGk8MHx8aT5hLmdldERvdENvdW50KCkqYS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsKSkhMT09PWEub3B0aW9ucy5mYWRlJiYobz1hLmN1cnJlbnRTbGlkZSwhMCE9PXQ/YS5hbmltYXRlU2xpZGUocixmdW5jdGlvbigpe2EucG9zdFNsaWRlKG8pfSk6YS5wb3N0U2xpZGUobykpO2Vsc2UgaWYoITE9PT1hLm9wdGlvbnMuaW5maW5pdGUmJiEwPT09YS5vcHRpb25zLmNlbnRlck1vZGUmJihpPDB8fGk+YS5zbGlkZUNvdW50LWEub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCkpITE9PT1hLm9wdGlvbnMuZmFkZSYmKG89YS5jdXJyZW50U2xpZGUsITAhPT10P2EuYW5pbWF0ZVNsaWRlKHIsZnVuY3Rpb24oKXthLnBvc3RTbGlkZShvKX0pOmEucG9zdFNsaWRlKG8pKTtlbHNle2lmKGEub3B0aW9ucy5hdXRvcGxheSYmY2xlYXJJbnRlcnZhbChhLmF1dG9QbGF5VGltZXIpLHM9bzwwP2Euc2xpZGVDb3VudCVhLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwhPTA/YS5zbGlkZUNvdW50LWEuc2xpZGVDb3VudCVhLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw6YS5zbGlkZUNvdW50K286bz49YS5zbGlkZUNvdW50P2Euc2xpZGVDb3VudCVhLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwhPTA/MDpvLWEuc2xpZGVDb3VudDpvLGEuYW5pbWF0aW5nPSEwLGEuJHNsaWRlci50cmlnZ2VyKCJiZWZvcmVDaGFuZ2UiLFthLGEuY3VycmVudFNsaWRlLHNdKSxuPWEuY3VycmVudFNsaWRlLGEuY3VycmVudFNsaWRlPXMsYS5zZXRTbGlkZUNsYXNzZXMoYS5jdXJyZW50U2xpZGUpLGEub3B0aW9ucy5hc05hdkZvciYmKGw9KGw9YS5nZXROYXZUYXJnZXQoKSkuc2xpY2soImdldFNsaWNrIikpLnNsaWRlQ291bnQ8PWwub3B0aW9ucy5zbGlkZXNUb1Nob3cmJmwuc2V0U2xpZGVDbGFzc2VzKGEuY3VycmVudFNsaWRlKSxhLnVwZGF0ZURvdHMoKSxhLnVwZGF0ZUFycm93cygpLCEwPT09YS5vcHRpb25zLmZhZGUpcmV0dXJuITAhPT10PyhhLmZhZGVTbGlkZU91dChuKSxhLmZhZGVTbGlkZShzLGZ1bmN0aW9uKCl7YS5wb3N0U2xpZGUocyl9KSk6YS5wb3N0U2xpZGUocyksdm9pZCBhLmFuaW1hdGVIZWlnaHQoKTshMCE9PXQ/YS5hbmltYXRlU2xpZGUoZCxmdW5jdGlvbigpe2EucG9zdFNsaWRlKHMpfSk6YS5wb3N0U2xpZGUocyl9fSxlLnByb3RvdHlwZS5zdGFydExvYWQ9ZnVuY3Rpb24oKXt2YXIgaT10aGlzOyEwPT09aS5vcHRpb25zLmFycm93cyYmaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpLiRwcmV2QXJyb3cuaGlkZSgpLGkuJG5leHRBcnJvdy5oaWRlKCkpLCEwPT09aS5vcHRpb25zLmRvdHMmJmkuc2xpZGVDb3VudD5pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiZpLiRkb3RzLmhpZGUoKSxpLiRzbGlkZXIuYWRkQ2xhc3MoInNsaWNrLWxvYWRpbmciKX0sZS5wcm90b3R5cGUuc3dpcGVEaXJlY3Rpb249ZnVuY3Rpb24oKXt2YXIgaSxlLHQsbyxzPXRoaXM7cmV0dXJuIGk9cy50b3VjaE9iamVjdC5zdGFydFgtcy50b3VjaE9iamVjdC5jdXJYLGU9cy50b3VjaE9iamVjdC5zdGFydFktcy50b3VjaE9iamVjdC5jdXJZLHQ9TWF0aC5hdGFuMihlLGkpLChvPU1hdGgucm91bmQoMTgwKnQvTWF0aC5QSSkpPDAmJihvPTM2MC1NYXRoLmFicyhvKSksbzw9NDUmJm8+PTA/ITE9PT1zLm9wdGlvbnMucnRsPyJsZWZ0IjoicmlnaHQiOm88PTM2MCYmbz49MzE1PyExPT09cy5vcHRpb25zLnJ0bD8ibGVmdCI6InJpZ2h0IjpvPj0xMzUmJm88PTIyNT8hMT09PXMub3B0aW9ucy5ydGw/InJpZ2h0IjoibGVmdCI6ITA9PT1zLm9wdGlvbnMudmVydGljYWxTd2lwaW5nP28+PTM1JiZvPD0xMzU/ImRvd24iOiJ1cCI6InZlcnRpY2FsIn0sZS5wcm90b3R5cGUuc3dpcGVFbmQ9ZnVuY3Rpb24oaSl7dmFyIGUsdCxvPXRoaXM7aWYoby5kcmFnZ2luZz0hMSxvLnN3aXBpbmc9ITEsby5zY3JvbGxpbmcpcmV0dXJuIG8uc2Nyb2xsaW5nPSExLCExO2lmKG8uaW50ZXJydXB0ZWQ9ITEsby5zaG91bGRDbGljaz0hKG8udG91Y2hPYmplY3Quc3dpcGVMZW5ndGg+MTApLHZvaWQgMD09PW8udG91Y2hPYmplY3QuY3VyWClyZXR1cm4hMTtpZighMD09PW8udG91Y2hPYmplY3QuZWRnZUhpdCYmby4kc2xpZGVyLnRyaWdnZXIoImVkZ2UiLFtvLG8uc3dpcGVEaXJlY3Rpb24oKV0pLG8udG91Y2hPYmplY3Quc3dpcGVMZW5ndGg+PW8udG91Y2hPYmplY3QubWluU3dpcGUpe3N3aXRjaCh0PW8uc3dpcGVEaXJlY3Rpb24oKSl7Y2FzZSJsZWZ0IjpjYXNlImRvd24iOmU9by5vcHRpb25zLnN3aXBlVG9TbGlkZT9vLmNoZWNrTmF2aWdhYmxlKG8uY3VycmVudFNsaWRlK28uZ2V0U2xpZGVDb3VudCgpKTpvLmN1cnJlbnRTbGlkZStvLmdldFNsaWRlQ291bnQoKSxvLmN1cnJlbnREaXJlY3Rpb249MDticmVhaztjYXNlInJpZ2h0IjpjYXNlInVwIjplPW8ub3B0aW9ucy5zd2lwZVRvU2xpZGU/by5jaGVja05hdmlnYWJsZShvLmN1cnJlbnRTbGlkZS1vLmdldFNsaWRlQ291bnQoKSk6by5jdXJyZW50U2xpZGUtby5nZXRTbGlkZUNvdW50KCksby5jdXJyZW50RGlyZWN0aW9uPTF9InZlcnRpY2FsIiE9dCYmKG8uc2xpZGVIYW5kbGVyKGUpLG8udG91Y2hPYmplY3Q9e30sby4kc2xpZGVyLnRyaWdnZXIoInN3aXBlIixbbyx0XSkpfWVsc2Ugby50b3VjaE9iamVjdC5zdGFydFghPT1vLnRvdWNoT2JqZWN0LmN1clgmJihvLnNsaWRlSGFuZGxlcihvLmN1cnJlbnRTbGlkZSksby50b3VjaE9iamVjdD17fSl9LGUucHJvdG90eXBlLnN3aXBlSGFuZGxlcj1mdW5jdGlvbihpKXt2YXIgZT10aGlzO2lmKCEoITE9PT1lLm9wdGlvbnMuc3dpcGV8fCJvbnRvdWNoZW5kImluIGRvY3VtZW50JiYhMT09PWUub3B0aW9ucy5zd2lwZXx8ITE9PT1lLm9wdGlvbnMuZHJhZ2dhYmxlJiYtMSE9PWkudHlwZS5pbmRleE9mKCJtb3VzZSIpKSlzd2l0Y2goZS50b3VjaE9iamVjdC5maW5nZXJDb3VudD1pLm9yaWdpbmFsRXZlbnQmJnZvaWQgMCE9PWkub3JpZ2luYWxFdmVudC50b3VjaGVzP2kub3JpZ2luYWxFdmVudC50b3VjaGVzLmxlbmd0aDoxLGUudG91Y2hPYmplY3QubWluU3dpcGU9ZS5saXN0V2lkdGgvZS5vcHRpb25zLnRvdWNoVGhyZXNob2xkLCEwPT09ZS5vcHRpb25zLnZlcnRpY2FsU3dpcGluZyYmKGUudG91Y2hPYmplY3QubWluU3dpcGU9ZS5saXN0SGVpZ2h0L2Uub3B0aW9ucy50b3VjaFRocmVzaG9sZCksaS5kYXRhLmFjdGlvbil7Y2FzZSJzdGFydCI6ZS5zd2lwZVN0YXJ0KGkpO2JyZWFrO2Nhc2UibW92ZSI6ZS5zd2lwZU1vdmUoaSk7YnJlYWs7Y2FzZSJlbmQiOmUuc3dpcGVFbmQoaSl9fSxlLnByb3RvdHlwZS5zd2lwZU1vdmU9ZnVuY3Rpb24oaSl7dmFyIGUsdCxvLHMsbixyLGw9dGhpcztyZXR1cm4gbj12b2lkIDAhPT1pLm9yaWdpbmFsRXZlbnQ/aS5vcmlnaW5hbEV2ZW50LnRvdWNoZXM6bnVsbCwhKCFsLmRyYWdnaW5nfHxsLnNjcm9sbGluZ3x8biYmMSE9PW4ubGVuZ3RoKSYmKGU9bC5nZXRMZWZ0KGwuY3VycmVudFNsaWRlKSxsLnRvdWNoT2JqZWN0LmN1clg9dm9pZCAwIT09bj9uWzBdLnBhZ2VYOmkuY2xpZW50WCxsLnRvdWNoT2JqZWN0LmN1clk9dm9pZCAwIT09bj9uWzBdLnBhZ2VZOmkuY2xpZW50WSxsLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoPU1hdGgucm91bmQoTWF0aC5zcXJ0KE1hdGgucG93KGwudG91Y2hPYmplY3QuY3VyWC1sLnRvdWNoT2JqZWN0LnN0YXJ0WCwyKSkpLHI9TWF0aC5yb3VuZChNYXRoLnNxcnQoTWF0aC5wb3cobC50b3VjaE9iamVjdC5jdXJZLWwudG91Y2hPYmplY3Quc3RhcnRZLDIpKSksIWwub3B0aW9ucy52ZXJ0aWNhbFN3aXBpbmcmJiFsLnN3aXBpbmcmJnI+ND8obC5zY3JvbGxpbmc9ITAsITEpOighMD09PWwub3B0aW9ucy52ZXJ0aWNhbFN3aXBpbmcmJihsLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoPXIpLHQ9bC5zd2lwZURpcmVjdGlvbigpLHZvaWQgMCE9PWkub3JpZ2luYWxFdmVudCYmbC50b3VjaE9iamVjdC5zd2lwZUxlbmd0aD40JiYobC5zd2lwaW5nPSEwLGkucHJldmVudERlZmF1bHQoKSkscz0oITE9PT1sLm9wdGlvbnMucnRsPzE6LTEpKihsLnRvdWNoT2JqZWN0LmN1clg+bC50b3VjaE9iamVjdC5zdGFydFg/MTotMSksITA9PT1sLm9wdGlvbnMudmVydGljYWxTd2lwaW5nJiYocz1sLnRvdWNoT2JqZWN0LmN1clk+bC50b3VjaE9iamVjdC5zdGFydFk/MTotMSksbz1sLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoLGwudG91Y2hPYmplY3QuZWRnZUhpdD0hMSwhMT09PWwub3B0aW9ucy5pbmZpbml0ZSYmKDA9PT1sLmN1cnJlbnRTbGlkZSYmInJpZ2h0Ij09PXR8fGwuY3VycmVudFNsaWRlPj1sLmdldERvdENvdW50KCkmJiJsZWZ0Ij09PXQpJiYobz1sLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoKmwub3B0aW9ucy5lZGdlRnJpY3Rpb24sbC50b3VjaE9iamVjdC5lZGdlSGl0PSEwKSwhMT09PWwub3B0aW9ucy52ZXJ0aWNhbD9sLnN3aXBlTGVmdD1lK28qczpsLnN3aXBlTGVmdD1lK28qKGwuJGxpc3QuaGVpZ2h0KCkvbC5saXN0V2lkdGgpKnMsITA9PT1sLm9wdGlvbnMudmVydGljYWxTd2lwaW5nJiYobC5zd2lwZUxlZnQ9ZStvKnMpLCEwIT09bC5vcHRpb25zLmZhZGUmJiExIT09bC5vcHRpb25zLnRvdWNoTW92ZSYmKCEwPT09bC5hbmltYXRpbmc/KGwuc3dpcGVMZWZ0PW51bGwsITEpOnZvaWQgbC5zZXRDU1MobC5zd2lwZUxlZnQpKSkpfSxlLnByb3RvdHlwZS5zd2lwZVN0YXJ0PWZ1bmN0aW9uKGkpe3ZhciBlLHQ9dGhpcztpZih0LmludGVycnVwdGVkPSEwLDEhPT10LnRvdWNoT2JqZWN0LmZpbmdlckNvdW50fHx0LnNsaWRlQ291bnQ8PXQub3B0aW9ucy5zbGlkZXNUb1Nob3cpcmV0dXJuIHQudG91Y2hPYmplY3Q9e30sITE7dm9pZCAwIT09aS5vcmlnaW5hbEV2ZW50JiZ2b2lkIDAhPT1pLm9yaWdpbmFsRXZlbnQudG91Y2hlcyYmKGU9aS5vcmlnaW5hbEV2ZW50LnRvdWNoZXNbMF0pLHQudG91Y2hPYmplY3Quc3RhcnRYPXQudG91Y2hPYmplY3QuY3VyWD12b2lkIDAhPT1lP2UucGFnZVg6aS5jbGllbnRYLHQudG91Y2hPYmplY3Quc3RhcnRZPXQudG91Y2hPYmplY3QuY3VyWT12b2lkIDAhPT1lP2UucGFnZVk6aS5jbGllbnRZLHQuZHJhZ2dpbmc9ITB9LGUucHJvdG90eXBlLnVuZmlsdGVyU2xpZGVzPWUucHJvdG90eXBlLnNsaWNrVW5maWx0ZXI9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO251bGwhPT1pLiRzbGlkZXNDYWNoZSYmKGkudW5sb2FkKCksaS4kc2xpZGVUcmFjay5jaGlsZHJlbih0aGlzLm9wdGlvbnMuc2xpZGUpLmRldGFjaCgpLGkuJHNsaWRlc0NhY2hlLmFwcGVuZFRvKGkuJHNsaWRlVHJhY2spLGkucmVpbml0KCkpfSxlLnByb3RvdHlwZS51bmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2koIi5zbGljay1jbG9uZWQiLGUuJHNsaWRlcikucmVtb3ZlKCksZS4kZG90cyYmZS4kZG90cy5yZW1vdmUoKSxlLiRwcmV2QXJyb3cmJmUuaHRtbEV4cHIudGVzdChlLm9wdGlvbnMucHJldkFycm93KSYmZS4kcHJldkFycm93LnJlbW92ZSgpLGUuJG5leHRBcnJvdyYmZS5odG1sRXhwci50ZXN0KGUub3B0aW9ucy5uZXh0QXJyb3cpJiZlLiRuZXh0QXJyb3cucmVtb3ZlKCksZS4kc2xpZGVzLnJlbW92ZUNsYXNzKCJzbGljay1zbGlkZSBzbGljay1hY3RpdmUgc2xpY2stdmlzaWJsZSBzbGljay1jdXJyZW50IikuYXR0cigiYXJpYS1oaWRkZW4iLCJ0cnVlIikuY3NzKCJ3aWR0aCIsIiIpfSxlLnByb3RvdHlwZS51bnNsaWNrPWZ1bmN0aW9uKGkpe3ZhciBlPXRoaXM7ZS4kc2xpZGVyLnRyaWdnZXIoInVuc2xpY2siLFtlLGldKSxlLmRlc3Ryb3koKX0sZS5wcm90b3R5cGUudXBkYXRlQXJyb3dzPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztNYXRoLmZsb29yKGkub3B0aW9ucy5zbGlkZXNUb1Nob3cvMiksITA9PT1pLm9wdGlvbnMuYXJyb3dzJiZpLnNsaWRlQ291bnQ+aS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmIWkub3B0aW9ucy5pbmZpbml0ZSYmKGkuJHByZXZBcnJvdy5yZW1vdmVDbGFzcygic2xpY2stZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwiZmFsc2UiKSxpLiRuZXh0QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsImZhbHNlIiksMD09PWkuY3VycmVudFNsaWRlPyhpLiRwcmV2QXJyb3cuYWRkQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsInRydWUiKSxpLiRuZXh0QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsImZhbHNlIikpOmkuY3VycmVudFNsaWRlPj1pLnNsaWRlQ291bnQtaS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmITE9PT1pLm9wdGlvbnMuY2VudGVyTW9kZT8oaS4kbmV4dEFycm93LmFkZENsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIiksaS4kcHJldkFycm93LnJlbW92ZUNsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpKTppLmN1cnJlbnRTbGlkZT49aS5zbGlkZUNvdW50LTEmJiEwPT09aS5vcHRpb25zLmNlbnRlck1vZGUmJihpLiRuZXh0QXJyb3cuYWRkQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsInRydWUiKSxpLiRwcmV2QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsImZhbHNlIikpKX0sZS5wcm90b3R5cGUudXBkYXRlRG90cz1mdW5jdGlvbigpe3ZhciBpPXRoaXM7bnVsbCE9PWkuJGRvdHMmJihpLiRkb3RzLmZpbmQoImxpIikucmVtb3ZlQ2xhc3MoInNsaWNrLWFjdGl2ZSIpLmVuZCgpLGkuJGRvdHMuZmluZCgibGkiKS5lcShNYXRoLmZsb29yKGkuY3VycmVudFNsaWRlL2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCkpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKSl9LGUucHJvdG90eXBlLnZpc2liaWxpdHk9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2kub3B0aW9ucy5hdXRvcGxheSYmKGRvY3VtZW50W2kuaGlkZGVuXT9pLmludGVycnVwdGVkPSEwOmkuaW50ZXJydXB0ZWQ9ITEpfSxpLmZuLnNsaWNrPWZ1bmN0aW9uKCl7dmFyIGksdCxvPXRoaXMscz1hcmd1bWVudHNbMF0sbj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSkscj1vLmxlbmd0aDtmb3IoaT0wO2k8cjtpKyspaWYoIm9iamVjdCI9PXR5cGVvZiBzfHx2b2lkIDA9PT1zP29baV0uc2xpY2s9bmV3IGUob1tpXSxzKTp0PW9baV0uc2xpY2tbc10uYXBwbHkob1tpXS5zbGljayxuKSx2b2lkIDAhPT10KXJldHVybiB0O3JldHVybiBvfX0pOwo="}},"time_used":72,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":71,"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":"profx.io","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}}]}
