{"report_id":"cc4d2d9b-fd6f-4559-8ad2-52731f8223f1","version":0,"status":"done","tags":[],"date":"2026-07-26T21:40:29Z","url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":0,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"final":{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"title":"Exchange - Швидкий обмін криптовалют","dom":{"size":174906,"mime_type":"text/html; charset=utf-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (37425)","md5":"07726c6891d696d75eb9e6ae07305432","sha1":"7262a7be6017d10e48c9773f297d1615ab7b7d3d","sha256":"8a696933f81521eaf121af0fb2b7c8bdcc570378f74b5ce2b275398faae99b17","sha512":"72f4b65c6ba8785bafacdea17cab5ebb8430761b99a42555c44b1845fe7fab90fee34dbefbdca4c80aef3f3e962d2704eec2e9748f1ba2a952883a29399bcc8c","ssdeep":"1536:jyMehK40MJlIvRmVEIH+rdh+0AQ5rOIBcFo0F6rC6SLJgJAoghn4qAPH/IeQzAmX:jyxhKAVEIH+r+9648OzxR","tlshash":"6c04b77421f1107b9c87e2f2f6952a2efd24d2a7cd2b8249b69c05952fd3ce2cd47a44","dom_hash":"domhashddaa840a0c214f0153363c2b39ce817a","first_seen":"2026-07-26T21:40:33.830761Z","last_seen":"2026-07-26T21:43:05.434904Z","times_seen":4,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":0,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-30T21:40:29Z","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":0}},"detection":{"ids":null,"analyzer":null,"urlquery":null},"summary":[{"fqdn":"unpkg.com","ip":{"addr":"104.18.0.22","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2016-01-06","domain_rank":1093,"first_seen":"2016-01-07T23:26:01Z","last_seen":"2026-07-20T07:49:24.133645Z","alert_count":0,"request_count":2,"received_data":42027,"sent_data":971,"comment":"","tags":null,"fingerprints":[{"name":"Fly.io","description":"Fly is a platform for running full stack apps and databases.","website":"https://fly.io","common_platform_enumeration":"","icon":"Fly.io.png","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"images.unsplash.com","ip":{"addr":"151.101.194.208","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"domain_registered":"2013-05-29","domain_rank":86676,"first_seen":"2015-08-06T06:03:25Z","last_seen":"2026-07-22T19:18:27.674209Z","alert_count":0,"request_count":2,"received_data":200185,"sent_data":1516,"comment":"","tags":null,"fingerprints":null},{"fqdn":"cdn.tailwindcss.com","ip":{"addr":"172.67.68.11","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2017-07-20","domain_rank":117330,"first_seen":"2018-07-09T05:46:13Z","last_seen":"2026-07-20T08:40:19.100598Z","alert_count":0,"request_count":2,"received_data":408705,"sent_data":940,"comment":"","tags":null,"fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"exxchanger.com.ua","ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"domain_registered":"2026-04-21","domain_rank":0,"first_seen":"2026-07-26T21:40:30.518037Z","last_seen":"2026-07-26T21:40:30.518037Z","alert_count":0,"request_count":3,"received_data":145590,"sent_data":1500,"comment":"","tags":null,"fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"PHP:8.1.34","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":"Tailwind CSS","description":"Tailwind is a utility-first CSS framework.","website":"https://tailwindcss.com/","common_platform_enumeration":"","icon":"tailwindcss.svg","categories":["UI frameworks"]},{"name":"AOS:2.3.1","description":"JavaScript library to animate elements on your page as you scroll.","website":"https://michalsnik.github.io/aos/","common_platform_enumeration":"","icon":"AOS.svg","categories":["JavaScript libraries"]},{"name":"Unpkg","description":"Unpkg is a content delivery network for everything on npm.","website":"https://unpkg.com","common_platform_enumeration":"","icon":"Unpkg.png","categories":["CDN"]}]}],"files":null,"artifacts":{"windows_shortcuts":null,"files":null,"telegram":null,"pdfs":null,"clipboard":null},"sensors":{"ids":null,"analyzer":null,"urlquery":null},"javascript":{"script":[{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"3018c8d3437657bbaf392688a1633203","sha1":"7a6dee651d71a731bdc9c3f271289fd35e6fc8af","sha256":"c0a888e3efbd6be0383d16717b814cdc77df14ffb49c7429c6c6fe291dd30173","sha512":"e37b65175ddde3c5a82ba788278addcfa49f81452426a9989b377a9972bad5c518ed52cddc918e40bb7b228d8ce1f1e1e54db3fd0ec727083626b8830d815482","ssdeep":"","tlshash":"dff028096dbb352910eb1ba727f79b7d36340083984881147a3cde850f51870ed239c4","size":563,"data":"","first_seen":"2026-07-26T21:40:33.84754Z","last_seen":"2026-07-26T21:43:05.446737Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"2430150f0a0304aa7e484948bb71c5fc","sha1":"b84bc4abed3d4a1803ef1d6abe330604821ecec7","sha256":"591e2dfbeabaad86a2c7e5e80f249c83088146adf2144a3744ab190b7364f7ee","sha512":"0be5cbfe0668a015c09898040a51b5bcf48bd4683fb28a373fab337c894c7c54ee66fc7f456035415ccd5c93895621cbbb74e54d475e52bc30230cffb4c1d6f9","ssdeep":"192:g4qn0BSMZBuvrvLwxuQwQcdVpXjA/lfek+kynNFDhkOZ7XmSDt3o:Lqnqi8oVLaN2k+7nLGw7XFp4","tlshash":"68f1975631a32035866f267b6e4b434caa35b0873806e68c7d5cc9462f7ad245737eec","size":7552,"data":"","first_seen":"2026-07-26T21:40:33.849605Z","last_seen":"2026-07-26T21:43:05.447576Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"14121ac2eefdd3094d6aed2e71333958","sha1":"a062598a809f66b890737e2b599f50dc30beaa87","sha256":"62748ba4a5e765bd3624ebefa8d3cb49ea00ca0d1b3f0cdfaedd65fc35b0158b","sha512":"0c7123ec42f17ddbe011d3a9ff7b596abfbeb76ee868d45739322eb974fdc0633eaab0d3354d7a3c58fafded40693ce197712f3d13556fcc75b82edef4e55507","ssdeep":"192:l823qwm2wvDGYO0vXYm6yQo0zju0wnb0/S0hIyhSHzNMbVCQ2F/NS5F/xPFRGpO4:lL3k7sI1/NSf/xNDq6NTC","tlshash":"854293773db624b581dbc5b713cb608df52591627c53a2c475ac80a60fe2880e27efe6","size":12134,"data":"","first_seen":"2026-07-26T21:40:33.851681Z","last_seen":"2026-07-26T21:43:05.456707Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.tailwindcss.com/","fqdn":"cdn.tailwindcss.com","domain":"tailwindcss.com","tld":"com"},"ip":{"addr":"172.67.68.11","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"7a614b9a197e532c00d09a23b0996b5f","sha1":"1ff1738a40f3716e30e9031b181b0955ae578955","sha256":"176e894661aa9cdc9a5cba6c720044cbbf7b8bd80d1c9a142a7c24b1b6c50d15","sha512":"a67bc26f52d938358471be5671ff4b79e11af4e68b486aaf73a35a4c9bf3777aab51101af81563b4e5b7ba4b04dd8971fcfa9ee2c41fb10a0c1ee5604a99abd6","ssdeep":"12288:fpgrZxSAoNbJb0Wie75aUXGuyQZhK4O0s:RCVoNB0Wie75aUWmnO0s","tlshash":"e8844aa57396702647eb51e850ea1042f2beaa38840c44bcf7edd4da39e5e4440fbf79","size":407279,"data":"","first_seen":"2025-07-28T16:58:08.903462Z","last_seen":"2026-08-11T04:45:48.769704Z","times_seen":48779,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"unpkg.com/aos@2.3.1/dist/aos.js","fqdn":"unpkg.com","domain":"unpkg.com","tld":"com"},"ip":{"addr":"104.18.0.22","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"70b4897108480dbe11c443c2ab7679c9","sha1":"70dbfd38a0f1fc3b1a7d9fadab58786484c34f17","sha256":"f268612ba59ead1b24353bb77d66783bcc435aff1c22be5f93c40bac3869968e","sha512":"466084fa711d299e394e96c2260bd8bdf103cf75da8869934c997a19fc884d6ddfa2e92ce253533a4a0c5d627d580e9a40efb7155f1c8c0e9fbd3a2c3a06c2ae","ssdeep":"384:3I2fNaC8QiHbcggNFUWTgMe91sa6XCZy54:42fNaC8QiHbfgNFUWg17slXCZy54","tlshash":"a752e6dc3681f0a617a794f7827f600ff2f14835245e90a0d269c4e27db58ae8673e5e","size":14239,"data":"","first_seen":"2023-03-07T01:14:45Z","last_seen":"2026-08-11T05:04:55.225971Z","times_seen":22883,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"warn","text":"cdn.tailwindcss.com should not be used in production. To use Tailwind CSS in production, install it as a PostCSS plugin or use the Tailwind CLI: https://tailwindcss.com/docs/installation","filename":"https://cdn.tailwindcss.com/","line_number":64,"column_number":1711}]},"http":[{"url":{"schema":"https","addr":"exxchanger.com.ua/icon.png","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.819Z","timestamp":1785102002819,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"exxchanger.com.ua","organization":""},"issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validity":{"start":"Sun, 28 Jun 2026 14:15:16 GMT","end":"Sat, 26 Sep 2026 14:15:15 GMT"},"fingerprint":{"sha1":"F9:EA:7C:99:68:9B:EF:3D:3C:80:3A:37:2F:98:F2:E5:43:4C:77:7F","sha256":"58:64:80:3B:10:AA:78:D8:CC:6A:A5:72:B8:35:1A:4C:DB:B2:C0:06:8D:83:20:D6:54:ED:8F:F2:C7:0F:87:38"}}},"request":{"raw":"GET /icon.png HTTP/1.1\r\nHost: exxchanger.com.ua\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://exxchanger.com.ua/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncache-control: public, max-age=604800\r\nexpires: Sun, 02 Aug 2026 21:40:02 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 15 Sep 2025 16:02:22 GMT\r\naccept-ranges: bytes\r\ncontent-length: 2945\r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\nserver: LiteSpeed\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2945,"size_decoded":3230,"mime_type":"image/png","magic":"PNG image data, 192 x 192, 8-bit/color RGBA, non-interlaced","md5":"a194107f90d35b5349b8608a3b744165","sha1":"c38d83e54ab8eb4c3898f487f84e43418d1c1931","sha256":"207ab071e17c411a52c30ea0c1e00b9f83bd6c80499c6ddbf03f64f9e77b5580","sha512":"7e6025a2df61e93000cacc3f2119e5f58598b4f299c04c5ea9e76da634cc735e21475e592eb2f50ba1bc83e52b32ab26f8a74245a3b6a183ce6831ca334c0072","ssdeep":"","tlshash":"2f5108abd3c01ab5f90c0175f7532796b2ecac6702bd206c197b98811cb030819b1fa1","first_seen":"2026-07-26T21:40:33.834191Z","last_seen":"2026-07-26T21:43:05.436641Z","times_seen":4,"resource_available":false,"data":"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"}},"time_used":35,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":35,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"exxchanger.com.ua/","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-26T21:40:00.563Z","timestamp":1785102000563,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"exxchanger.com.ua","organization":""},"issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validity":{"start":"Sun, 28 Jun 2026 14:15:16 GMT","end":"Sat, 26 Sep 2026 14:15:15 GMT"},"fingerprint":{"sha1":"F9:EA:7C:99:68:9B:EF:3D:3C:80:3A:37:2F:98:F2:E5:43:4C:77:7F","sha256":"58:64:80:3B:10:AA:78:D8:CC:6A:A5:72:B8:35:1A:4C:DB:B2:C0:06:8D:83:20:D6:54:ED:8F:F2:C7:0F:87:38"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: exxchanger.com.ua\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.1.34\r\nvary: Accept-Encoding\r\ncontent-type: text/html; charset=UTF-8\r\ncontent-encoding: gzip\r\ndate: Sun, 26 Jul 2026 21:40:01 GMT\r\nserver: LiteSpeed\r\nalt-svc: h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\"\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"PHP:8.1.34","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":"Tailwind CSS","description":"Tailwind is a utility-first CSS framework.","website":"https://tailwindcss.com/","common_platform_enumeration":"","icon":"tailwindcss.svg","categories":["UI frameworks"]},{"name":"AOS:2.3.1","description":"JavaScript library to animate elements on your page as you scroll.","website":"https://michalsnik.github.io/aos/","common_platform_enumeration":"","icon":"AOS.svg","categories":["JavaScript libraries"]},{"name":"Unpkg","description":"Unpkg is a content delivery network for everything on npm.","website":"https://unpkg.com","common_platform_enumeration":"","icon":"Unpkg.png","categories":["CDN"]},{"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":138748,"size_decoded":22084,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (338), with CRLF line terminators","md5":"c48b0a6c985e83f98cfec3bcbeb809ac","sha1":"4aaae9ae5e3fab7a8af17195f4a96e208f437216","sha256":"05183f4e9b68202a8745c304e129f22e44585f4903f7387f882d05e950a2eed6","sha512":"ccecef33c15c27112d475ecce131a8722b8938e8e91ab49f1fd62da4b979f76c0022b421ecdcf6e41942b31fd1bfd77e12db770f74a55400ca1e25c93fd187d6","ssdeep":"1536:78gCLy2fwhiYpiQJ+QtZKehlINHJRX6+R1z6aHuDJ9Uuv8N0h/FhotkWu:7AwhiYpH+b6+0ktpu","tlshash":"48d3637431d104ba84b7c3b2aa906ba9fd64c267da0bd28972ec16d71ff3c10ce57a54","first_seen":"2026-07-26T21:40:33.836591Z","last_seen":"2026-07-26T21:43:05.441407Z","times_seen":4,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJ1ayI+DQo8aGVhZD4NCiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+DQogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPg0KICAgIDx0aXRsZT5FeGNoYW5nZSAtINCo0LLQuNC00LrQuNC5INC+0LHQvNGW0L0g0LrRgNC40L/RgtC+0LLQsNC70Y7RgjwvdGl0bGU+DQogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9ItCd0LDQtNGW0LnQvdC40Lkg0YPQutGA0LDRl9C90YHRjNC60LjQuSDRgdC10YDQstGW0YEg0LTQu9GPINC+0LHQvNGW0L3RgyDQutGA0LjQv9GC0L7QstCw0LvRjtGCLiDQntCx0LzRltC90Y7QudGC0LUgVVNEVCDQvdCwINCz0L7RgtGW0LLQutGDLCDQsdCw0L3QutGW0LLRgdGM0LrRliDQutCw0YDRgtC4INCw0LHQviDRgNCw0YXRg9C90LrQuCDQpNCe0J8g0Lcg0L3QsNC50LrRgNCw0YnQuNC80Lgg0LrRg9GA0YHQsNC80LguIj4NCiAgICANCiAgICA8IS0tIE5vIGV4dGVybmFsIGZvbnRzIG5lZWRlZCAtIHVzaW5nIHN5c3RlbSBmb250IHN0YWNrIC0tPg0KICAgIA0KICAgIDwhLS0gVGFpbHdpbmQgQ1NTIC0tPg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi50YWlsd2luZGNzcy5jb20iPjwvc2NyaXB0Pg0KICAgIA0KICAgIDwhLS0gQU9TIChBbmltYXRlIE9uIFNjcm9sbCkgZm9yIGJlYXV0aWZ1bCBzY3JvbGwgYW5pbWF0aW9ucyAtLT4NCiAgICA8bGluayBocmVmPSJodHRwczovL3VucGtnLmNvbS9hb3NAMi4zLjEvZGlzdC9hb3MuY3NzIiByZWw9InN0eWxlc2hlZXQiPg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL3VucGtnLmNvbS9hb3NAMi4zLjEvZGlzdC9hb3MuanMiPjwvc2NyaXB0Pg0KICAgIA0KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBzaXplcz0iMzJ4MzIiIGhyZWY9Ii9pY29uLnBuZyI+DQogICAgPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIHNpemVzPSIxNngxNiIgaHJlZj0iL2ljb24ucG5nIj4NCiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxODB4MTgwIiBocmVmPSIvaWNvbi5wbmciPg0KDQogICAgPCEtLSBDdXN0b20gU3R5bA0KICAgICAgICA6cm9vdCB7DQogICAgICAgICAgICAtLWZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgICAgIC0tYmFja2dyb3VuZDogI2ZmZmZmZjsNCiAgICAgICAgICAgIC0tZm9yZWdyb3VuZDogb2tsY2goMC4xNDUgMCAwKTsNCiAgICAgICAgICAgIC0tY2FyZDogI2ZmZmZmZjsNCiAgICAgICAgICAgIC0tY2FyZC1mb3JlZ3JvdW5kOiBva2xjaCgwLjE0NSAwIDApOw0KICAgICAgICAgICAgLS1wb3BvdmVyOiBva2xjaCgxIDAgMCk7DQogICAgICAgICAgICAtLXBvcG92ZXItZm9yZWdyb3VuZDogb2tsY2goMC4xNDUgMCAwKTsNCiAgICAgICAgICAgIC0tcHJpbWFyeTogIzAzMDIxMzsNCiAgICAgICAgICAgIC0tcHJpbWFyeS1mb3JlZ3JvdW5kOiBva2xjaCgxIDAgMCk7DQogICAgICAgICAgICAtLXNlY29uZGFyeTogb2tsY2goMC45NSAwLjAwNTggMjY0LjUzKTsNCiAgICAgICAgICAgIC0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6ICMwMzAyMTM7DQogICAgICAgICAgICAtLW11dGVkOiAjZWNlY2YwOw0KICAgICAgICAgICAgLS1tdXRlZC1mb3JlZ3JvdW5kOiAjNzE3MTgyOw0KICAgICAgICAgICAgLS1hY2NlbnQ6ICNlOWViZWY7DQogICAgICAgICAgICAtLWFjY2VudC1mb3JlZ3JvdW5kOiAjMDMwMjEzOw0KICAgICAgICAgICAgLS1kZXN0cnVjdGl2ZTogI2Q0MTgzZDsNCiAgICAgICAgICAgIC0tZGVzdHJ1Y3RpdmUtZm9yZWdyb3VuZDogI2ZmZmZmZjsNCiAgICAgICAgICAgIC0tYm9yZGVyOiByZ2JhKDAsIDAsIDAsIDAuMSk7DQogICAgICAgICAgICAtLWlucHV0OiB0cmFuc3BhcmVudDsNCiAgICAgICAgICAgIC0taW5wdXQtYmFja2dyb3VuZDogI2YzZjNmNTsNCiAgICAgICAgICAgIC0tc3dpdGNoLWJhY2tncm91bmQ6ICNjYmNlZDQ7DQogICAgICAgICAgICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwOw0KICAgICAgICAgICAgLS1mb250LXdlaWdodC1ub3JtYWw6IDQwMDsNCiAgICAgICAgICAgIC0tcmluZzogb2tsY2goMC43MDggMCAwKTsNCiAgICAgICAgICAgIC0tY2hhcnQtMTogb2tsY2goMC42NDYgMC4yMjIgNDEuMTE2KTsNCiAgICAgICAgICAgIC0tY2hhcnQtMjogb2tsY2goMC42IDAuMTE4IDE4NC43MDQpOw0KICAgICAgICAgICAgLS1jaGFydC0zOiBva2xjaCgwLjM5OCAwLjA3IDIyNy4zOTIpOw0KICAgICAgICAgICAgLS1jaGFydC00OiBva2xjaCgwLjgyOCAwLjE4OSA4NC40MjkpOw0KICAgICAgICAgICAgLS1jaGFydC01OiBva2xjaCgwLjc2OSAwLjE4OCA3MC4wOCk7DQogICAgICAgICAgICAtLXJhZGl1czogMC42MjVyZW07DQogICAgICAgICAgICAtLXNpZGViYXI6IG9rbGNoKDAuOTg1IDAgMCk7DQogICAgICAgICAgICAtLXNpZGViYXItZm9yZWdyb3VuZDogb2tsY2goMC4xNDUgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1wcmltYXJ5OiAjMDMwMjEzOw0KICAgICAgICAgICAgLS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDogb2tsY2goMC45ODUgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1hY2NlbnQ6IG9rbGNoKDAuOTcgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1hY2NlbnQtZm9yZWdyb3VuZDogb2tsY2goMC4yMDUgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1ib3JkZXI6IG9rbGNoKDAuOTIyIDAgMCk7DQogICAgICAgICAgICAtLXNpZGViYXItcmluZzogb2tsY2goMC43MDggMCAwKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgLyogVGV4dCBzaXplcyBmb3IgYmFzZSB0eXBvZ3JhcGh5ICovDQogICAgICAgICAgICAtLXRleHQtYmFzZTogMXJlbTsNCiAgICAgICAgICAgIC0tdGV4dC1sZzogMS4xMjVyZW07DQogICAgICAgICAgICAtLXRleHQteGw6IDEuMjVyZW07DQogICAgICAgICAgICAtLXRleHQtMnhsOiAxLjVyZW07DQogICAgICAgIH0NCg0KICAgICAgICAuZGFyayB7DQogICAgICAgICAgICAtLWJhY2tncm91bmQ6IG9rbGNoKDAuMTQ1IDAgMCk7DQogICAgICAgICAgICAtLWZvcmVncm91bmQ6IG9rbGNoKDAuOTg1IDAgMCk7DQogICAgICAgICAgICAtLWNhcmQ6IG9rbGNoKDAuMTQ1IDAgMCk7DQogICAgICAgICAgICAtLWNhcmQtZm9yZWdyb3VuZDogb2tsY2goMC45ODUgMCAwKTsNCiAgICAgICAgICAgIC0tcG9wb3Zlcjogb2tsY2goMC4xNDUgMCAwKTsNCiAgICAgICAgICAgIC0tcG9wb3Zlci1mb3JlZ3JvdW5kOiBva2xjaCgwLjk4NSAwIDApOw0KICAgICAgICAgICAgLS1wcmltYXJ5OiBva2xjaCgwLjk4NSAwIDApOw0KICAgICAgICAgICAgLS1wcmltYXJ5LWZvcmVncm91bmQ6IG9rbGNoKDAuMjA1IDAgMCk7DQogICAgICAgICAgICAtLXNlY29uZGFyeTogb2tsY2goMC4yNjkgMCAwKTsNCiAgICAgICAgICAgIC0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6IG9rbGNoKDAuOTg1IDAgMCk7DQogICAgICAgICAgICAtLW11dGVkOiBva2xjaCgwLjI2OSAwIDApOw0KICAgICAgICAgICAgLS1tdXRlZC1mb3JlZ3JvdW5kOiBva2xjaCgwLjcwOCAwIDApOw0KICAgICAgICAgICAgLS1hY2NlbnQ6IG9rbGNoKDAuMjY5IDAgMCk7DQogICAgICAgICAgICAtLWFjY2VudC1mb3JlZ3JvdW5kOiBva2xjaCgwLjk4NSAwIDApOw0KICAgICAgICAgICAgLS1kZXN0cnVjdGl2ZTogb2tsY2goMC4zOTYgMC4xNDEgMjUuNzIzKTsNCiAgICAgICAgICAgIC0tZGVzdHJ1Y3RpdmUtZm9yZWdyb3VuZDogb2tsY2goMC42MzcgMC4yMzcgMjUuMzMxKTsNCiAgICAgICAgICAgIC0tYm9yZGVyOiBva2xjaCgwLjI2OSAwIDApOw0KICAgICAgICAgICAgLS1pbnB1dDogb2tsY2goMC4yNjkgMCAwKTsNCiAgICAgICAgICAgIC0tcmluZzogb2tsY2goMC40MzkgMCAwKTsNCiAgICAgICAgICAgIC0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7DQogICAgICAgICAgICAtLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwOw0KICAgICAgICAgICAgLS1jaGFydC0xOiBva2xjaCgwLjQ4OCAwLjI0MyAyNjQuMzc2KTsNCiAgICAgICAgICAgIC0tY2hhcnQtMjogb2tsY2goMC42OTYgMC4xNyAxNjIuNDgpOw0KICAgICAgICAgICAgLS1jaGFydC0zOiBva2xjaCgwLjc2OSAwLjE4OCA3MC4wOCk7DQogICAgICAgICAgICAtLWNoYXJ0LTQ6IG9rbGNoKDAuNjI3IDAuMjY1IDMwMy45KTsNCiAgICAgICAgICAgIC0tY2hhcnQtNTogb2tsY2goMC42NDUgMC4yNDYgMTYuNDM5KTsNCiAgICAgICAgICAgIC0tc2lkZWJhcjogb2tsY2goMC4yMDUgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1mb3JlZ3JvdW5kOiBva2xjaCgwLjk4NSAwIDApOw0KICAgICAgICAgICAgLS1zaWRlYmFyLXByaW1hcnk6IG9rbGNoKDAuNDg4IDAuMjQzIDI2NC4zNzYpOw0KICAgICAgICAgICAgLS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDogb2tsY2goMC45ODUgMCAwKTsNCiAgICAgICAgICAgIC0tc2lkZWJhci1hY2NlbnQ6IG9rbGNoKDAuMjY5IDAgMCk7DQogICAgICAgICAgICAtLXNpZGViYXItYWNjZW50LWZvcmVncm91bmQ6IG9rbGNoKDAuOTg1IDAgMCk7DQogICAgICAgICAgICAtLXNpZGViYXItYm9yZGVyOiBva2xjaCgwLjI2OSAwIDApOw0KICAgICAgICAgICAgLS1zaWRlYmFyLXJpbmc6IG9rbGNoKDAuNDM5IDAgMCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8qIEJhc2Ugc3R5bGVzIGV4YWN0bHkgZnJvbSB5b3VyIGdsb2JhbHMuY3NzICovDQogICAgICAgICogew0KICAgICAgICAgICAgZm9udC1mYW1pbHk6IHVpLXNhbnMtc2VyaWYsIHN5c3RlbS11aSwgc2Fucy1zZXJpZiwgIkFwcGxlIENvbG9yIEVtb2ppIiwgIlNlZ29lIFVJIEVtb2ppIiwgIlNlZ29lIFVJIFN5bWJvbCIsICJOb3RvIENvbG9yIEVtb2ppIjsNCiAgICAgICAgfQ0KDQogICAgICAgIGJvZHkgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZCk7DQogICAgICAgICAgICBjb2xvcjogdmFyKC0tZm9yZWdyb3VuZCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8qIEJhc2UgdHlwb2dyYXBoeSBmcm9tIHlvdXIgZ2xvYmFscy5jc3MgKi8NCiAgICAgICAgaDEgew0KICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LTJ4bCk7DQogICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsNCiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7DQogICAgICAgIH0NCg0KICAgICAgICBoMiB7DQogICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXRleHQteGwpOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICB9DQoNCiAgICAgICAgaDMgew0KICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LWxnKTsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsNCiAgICAgICAgfQ0KDQogICAgICAgIGg0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1iYXNlKTsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsNCiAgICAgICAgfQ0KDQogICAgICAgIHAgew0KICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LWJhc2UpOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICB9DQoNCiAgICAgICAgbGFiZWwgew0KICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LWJhc2UpOw0KICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7DQogICAgICAgICAgICBsaW5lLWhlaWdodDogMS41Ow0KICAgICAgICB9DQoNCiAgICAgICAgYnV0dG9uIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1iYXNlKTsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsNCiAgICAgICAgfQ0KDQogICAgICAgIGlucHV0IHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC1iYXNlKTsNCiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpOw0KICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7DQogICAgICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgaHRtbCB7DQogICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7DQogICAgICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kKTsNCiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mb3JlZ3JvdW5kKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLyogQW5pbWF0aW9uIGNsYXNzZXMgKi8NCiAgICAgICAgLmZsb2F0aW5nLWFuaW1hdGlvbiB7DQogICAgICAgICAgICBhbmltYXRpb246IGZsb2F0IDE1cyBlYXNlLWluLW91dCBpbmZpbml0ZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgQGtleWZyYW1lcyBmbG9hdCB7DQogICAgICAgICAgICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHJvdGF0ZSgwZGVnKTsgb3BhY2l0eTogMC4zOyB9DQogICAgICAgICAgICAyNSUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHJvdGF0ZSg5MGRlZyk7IG9wYWNpdHk6IDAuODsgfQ0KICAgICAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MHB4KSByb3RhdGUoMTgwZGVnKTsgb3BhY2l0eTogMC4zOyB9DQogICAgICAgICAgICA3NSUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHJvdGF0ZSgyNzBkZWcpOyBvcGFjaXR5OiAwLjg7IH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnJvdGF0aW5nLWFycm93IHsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRlIDJzIGxpbmVhciBpbmZpbml0ZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgQGtleWZyYW1lcyByb3RhdGUgew0KICAgICAgICAgICAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9DQogICAgICAgICAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLmdyYWRpZW50LXRleHQgew0KICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzY2N2VlYSAwJSwgIzc2NGJhMiAxMDAlKTsNCiAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0Ow0KICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0Ow0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuY2FyZC1ob3ZlciB7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuY2FyZC1ob3Zlcjpob3ZlciB7DQogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCkgc2NhbGUoMS4wMyk7DQogICAgICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggMjVweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4xKSwgMCAxMHB4IDEwcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMDQpOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuYnRuLWdyYWRpZW50IHsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5idG4tZ3JhZGllbnQ6aG92ZXIgew0KICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpIHNjYWxlKDEuMDIpOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuY3VycmVuY3ktYnRuOmhvdmVyIHsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KSBzY2FsZSgxLjAyKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLm5hdmJhciB7DQogICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5mb3JtLWlucHV0IHsNCiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5mb3JtLWlucHV0OmZvY3VzIHsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4zKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnRhYi1idG4gew0KICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsNCiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjRweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7DQogICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnRhYi1idG4uYWN0aXZlIHsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnN1Y2Nlc3MtY2hlY2ttYXJrIHsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogY2hlY2ttYXJrIDAuNnMgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIEBrZXlmcmFtZXMgY2hlY2ttYXJrIHsNCiAgICAgICAgICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfQ0KICAgICAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9DQogICAgICAgICAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfQ0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuaGVyby1iZyB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI2LCAyNiwgNDYsIDAuOSkgMCUsIHJnYmEoMjIsIDMzLCA2MiwgMC45NSkgNTAlLCByZ2JhKDE1LCA1MiwgOTYsIDAuOSkgMTAwJSksDQogICAgICAgICAgICAgICAgICAgICAgICB1cmwoJ2h0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNjkyNDE3NjcxMzgwLTI3ZGYwNzk4NzVhZj9jcm9wPWVudHJvcHkmY3M9dGlueXNyZ2ImZml0PW1heCZmbT1qcGcmaXhpZD1NM3czTnpnNE56ZDhNSHd4ZkhObFlYSmphSHd4Zkh4a1lYSnJKVEl3WTNKNWNIUnZZM1Z5Y21WdVkza2xNakJpYVhSamIybHVKVEl3WW1GamEyZHliM1Z1Wkh4bGJud3hmSHg4ZkRFM05UWTVNemsxTnpKOE1BJml4bGliPXJiLTQuMS4wJnE9ODAmdz0xMDgwJyk7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLmljb24tcm90YXRlOmhvdmVyIHsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRlIDAuNXMgZWFzZS1pbi1vdXQ7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8qIFJldmlldyBNb2RhbCBTdHlsZXMgKi8NCiAgICAgICAgLm1vZGFsIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICB6LWluZGV4OiAxMDAwOw0KICAgICAgICAgICAgbGVmdDogMDsNCiAgICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOw0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOw0KICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5tb2RhbC5zaG93IHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5tb2RhbC1jb250ZW50IHsNCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOw0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDsNCiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7DQogICAgICAgICAgICB3aWR0aDogOTAlOw0KICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDsNCiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDkwdmg7DQogICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvOw0KICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLm1vZGFsLnNob3cgLm1vZGFsLWNvbnRlbnQgew0KICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnN0YXItcmF0aW5nIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBnYXA6IDRweDsNCiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgICAgbWFyZ2luOiAxNnB4IDA7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5zdGFyIHsNCiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDsNCiAgICAgICAgICAgIGNvbG9yOiAjZDFkNWRiOw0KICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsNCiAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMXB4ICMwMDA7DQogICAgICAgICAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAxcHggI2QxZDVkYjsNCiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnN0YXI6aG92ZXIsDQogICAgICAgIC5zdGFyLmFjdGl2ZSB7DQogICAgICAgICAgICBjb2xvcjogI2ZiYmYyNDsNCiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsNCiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZmJiZjI0Ow0KICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCA4cHggcmdiYSgyNTEsIDE5MSwgMzYsIDAuNSk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8qIEVuaGFuY2VkIGVtcHR5IHN0YXIgdmlzaWJpbGl0eSAqLw0KICAgICAgICAuc3RhciB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgzMCUpOw0KICAgICAgICAgICAgb3BhY2l0eTogMC42Ow0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuc3Rhcjpob3ZlciB7DQogICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwJSk7DQogICAgICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAuc3Rhci5hY3RpdmUgew0KICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCUpOw0KICAgICAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLyogUGFnaW5hdGlvbiBTdHlsZXMgKi8NCiAgICAgICAgLnBhZ2luYXRpb24tZG90LmFjdGl2ZSB7DQogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5wYWdpbmF0aW9uLWRvdC5hY3RpdmU6OmJlZm9yZSB7DQogICAgICAgICAgICBjb250ZW50OiAnJzsNCiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICAgICAgICAgIGluc2V0OiAtMnB4Ow0KICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzNiODJmNjsNCiAgICAgICAgICAgIGFuaW1hdGlvbjogcGFnaW5hdGlvblB1bHNlIDEwcyBsaW5lYXIgaW5maW5pdGU7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIEBrZXlmcmFtZXMgcGFnaW5hdGlvblB1bHNlIHsNCiAgICAgICAgICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgb3BhY2l0eTogMTsgfQ0KICAgICAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMik7IG9wYWNpdHk6IDA7IH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLnJldmlld3MtcGFnZSB7DQogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJbiAwLjVzIGVhc2UtaW4tb3V0Ow0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICBAa2V5ZnJhbWVzIGZhZGVJbiB7DQogICAgICAgICAgICBmcm9tIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpOyB9DQogICAgICAgICAgICB0byB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfQ0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICANCiAgICAgICAgLnB4LTggew0KICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtICFpbXBvcnRhbnQ7DQogICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC5weS02IHsNCiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50Ow0KICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIA0KICAgICAgICAudGFiLWJ0biB7DQogICAgICAgICAgICB3aWR0aDogMjQlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAucC00IHsNCiAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIA0KICAgICAgICAuc3BhY2UteC0yID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSB7DQogICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweCAhaW1wb3J0YW50Ow0KICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDsNCiAgICAgICAgfQ0KDQogICAgICAgIA0KICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsNCiAgICAgICAgICAgIC5oZXJvLWJnIHsNCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgLnRhYi1idG4gew0KICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCA4cHg7DQogICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4Ow0KICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7DQogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICAgICAgICAgIHdpZHRoOiAyMiU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIC5wLTQgew0KICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gIWltcG9ydGFudDsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAgICAuam4yM2pjbjIgew0KICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLmRmbzNrMyB7DQogICAgICAgICAgICB3aWR0aDogOTclOw0KICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLmtqajJkIHsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4Ow0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAubXQtNzAgew0KICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDsNCiAgICAgICAgfQ0KICAgICAgICAudy1tYXggew0KICB3aWR0aDogNjUwcHggIWltcG9ydGFudDsNCn0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLm1vZGFsIHsNCiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgei1pbmRleDogMTAwMDsNCiAgICAgICAgICBsZWZ0OiAwOw0KICAgICAgICAgIHRvcDogMDsNCiAgICAgICAgICB3aWR0aDogMTAwJTsNCiAgICAgICAgICBoZWlnaHQ6IDEwMCU7DQogICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOw0KICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpOw0KICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgICAgIH0NCiAgICAgICAgDQoNCiAgICA8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQogICAgPCEtLSBOYXZpZ2F0aW9uIC0tPg0KICAgIDxuYXYgY2xhc3M9Im5hdmJhciBmaXhlZCB0b3AtMCBsZWZ0LTAgcmlnaHQtMCB6LTUwIGJnLWJsYWNrLzIwIGJvcmRlci1iIGJvcmRlci13aGl0ZS8xMCI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBteC1hdXRvIHB4LTQgcHktNCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0yIj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZm9udC1ib2xkIHRleHQteGwgdGV4dC13aGl0ZSI+RXhjaGFuZ2U8L3NwYW4+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGlkZGVuIG1kOmZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtNiI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iI2V4Y2hhbmdlIiBjbGFzcz0idGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXB1cnBsZS00MDAgdHJhbnNpdGlvbi1jb2xvcnMgY3Vyc29yLXBvaW50ZXIiPtCe0LHQvNGW0L08L2E+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iI2Fib3V0IiBjbGFzcz0idGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LWJsdWUtNDAwIHRyYW5zaXRpb24tY29sb3JzIGN1cnNvci1wb2ludGVyIj7Qn9GA0L4g0L3QsNGBPC9hPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiN0ZXN0aW1vbmlhbHMiIGNsYXNzPSJ0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtZ3JlZW4tNDAwIHRyYW5zaXRpb24tY29sb3JzIGN1cnNvci1wb2ludGVyIj7QktGW0LTQs9GD0LrQuDwvYT4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjY29udGFjdHMiIGNsYXNzPSJ0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQteWVsbG93LTQwMCB0cmFuc2l0aW9uLWNvbG9ycyBjdXJzb3ItcG9pbnRlciI+0JrQvtC90YLQsNC60YLQuDwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly90Lm1lL2V4X2NoYW5nZXVhIj4NCiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJvcmRlciBib3JkZXItd2hpdGUvMzAgdGV4dC1ibGFjayBob3ZlcjpiZy13aGl0ZS8xMCBiZy13aGl0ZSBweC00IHB5LTIgcm91bmRlZC1sZyB0cmFuc2l0aW9uLWNvbG9ycyI+DQogICAgICAgICAgICAgICAg0J/RltC00YLRgNC40LzQutCwDQogICAgICAgICAgICA8L2J1dHRvbj48L2E+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvbmF2Pg0KDQogICAgPCEtLSBIZXJvIFNlY3Rpb24gLS0+DQogICAgPHNlY3Rpb24gY2xhc3M9Imhlcm8tYmcgbWluLWgtc2NyZWVuIGZsZXggaXRlbXMtY2VudGVyIHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiI+DQogICAgICAgIDwhLS0gRmxvYXRpbmcgSWNvbnMgLS0+DQogICAgICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIGluc2V0LTAgcG9pbnRlci1ldmVudHMtbm9uZSI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdGluZy1hbmltYXRpb24gYWJzb2x1dGUgdGV4dC1vcmFuZ2UtNTAwIHRleHQtNHhsIiBzdHlsZT0idG9wOiAyMCU7IGxlZnQ6IDEwJTsgYW5pbWF0aW9uLWRlbGF5OiAwczsiPuKCvzwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxvYXRpbmctYW5pbWF0aW9uIGFic29sdXRlIHRleHQtZ3JlZW4tNTAwIHRleHQtM3hsIiBzdHlsZT0idG9wOiA0MCU7IHJpZ2h0OiAyMCU7IGFuaW1hdGlvbi1kZWxheTogMXM7Ij4kPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdGluZy1hbmltYXRpb24gYWJzb2x1dGUgdGV4dC1ibHVlLTUwMCB0ZXh0LTN4bCIgc3R5bGU9ImJvdHRvbTogNDAlOyBsZWZ0OiAyMCU7IGFuaW1hdGlvbi1kZWxheTogMnM7Ij7igqw8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsb2F0aW5nLWFuaW1hdGlvbiBhYnNvbHV0ZSB0ZXh0LXB1cnBsZS01MDAgdGV4dC0zeGwiIHN0eWxlPSJib3R0b206IDIwJTsgcmlnaHQ6IDEwJTsgYW5pbWF0aW9uLWRlbGF5OiAzczsiPvCfk4g8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsb2F0aW5nLWFuaW1hdGlvbiBhYnNvbHV0ZSB0ZXh0LXllbGxvdy01MDAgdGV4dC0yeGwiIHN0eWxlPSJ0b3A6IDYwJTsgbGVmdDogNTAlOyBhbmltYXRpb24tZGVsYXk6IDRzOyI+4pqhPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdGluZy1hbmltYXRpb24gYWJzb2x1dGUgdGV4dC1jeWFuLTUwMCB0ZXh0LTJ4bCIgc3R5bGU9InRvcDogMzAlOyByaWdodDogNDAlOyBhbmltYXRpb24tZGVsYXk6IDVzOyI+8J+boe+4jzwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgDQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBteC1hdXRvIHB4LTQgcHQtMjAgcGItMjAgcmVsYXRpdmUgei0xMCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGxnOmdyaWQtY29scy0yIGdhcC0xMiBpdGVtcy1jZW50ZXIgdy1mdWxsIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTgiIGRhdGEtYW9zPSJmYWRlLXJpZ2h0IiBkYXRhLWFvcy1kdXJhdGlvbj0iODAwIj4NCiAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPSJ0ZXh0LTV4bCBsZzp0ZXh0LTZ4bCBmb250LWJvbGQgbGVhZGluZy10aWdodCB0ZXh0LXdoaXRlIG10LTcwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgINCo0LLQuNC00LrQuNC5INGC0LAg0LHQtdC30L/QtdGH0L3QuNC5IA0KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJnLWdyYWRpZW50LXRvLXIgZnJvbS1wdXJwbGUtNDAwIHZpYS1ibHVlLTQwMCB0by1ncmVlbi00MDAgYmctY2xpcC10ZXh0IHRleHQtdHJhbnNwYXJlbnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgINC+0LHQvNGW0L0g0LrRgNC40L/RgtC+0LLQsNC70Y7Rgg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICA8L2gxPg0KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC14bCB0ZXh0LXdoaXRlLzgwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICDQntCx0LzRltC90Y7QudGC0LUgVVNEVCDRgtCwINGW0L3RiNGWINC60YDQuNC/0YLQvtCy0LDQu9GO0YLQuCDQvdCwINCz0L7RgtGW0LLQutGDLCDQsdCw0L3QutGW0LLRgdGM0LrRliDQutCw0YDRgtC4INCw0LHQviDRgNCw0YXRg9C90LrQuCDQpNCe0J8g0Lcg0L3QsNC50LrRgNCw0YnQuNC80Lgg0LrRg9GA0YHQsNC80Lgg0LIg0KPQutGA0LDRl9C90ZYuINCc0Lgg0L/RgNCw0YbRjtGU0LzQviDRhtGW0LvQvtC00L7QsdC+0LLQviDQtNC70Y8g0LLQsNGI0L7RlyDQt9GA0YPRh9C90L7RgdGC0ZYuDQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhpZGRlbiBtZDpibG9jayBiZy13aGl0ZS8xMCBiYWNrZHJvcC1ibHVyLXNtIHJvdW5kZWQtbGcgcC02IGJvcmRlciBib3JkZXItd2hpdGUvMjAiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMzAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGV4dC0yeGwgZm9udC1ib2xkIHRleHQtd2hpdGUgbWItNCB0ZXh0LWxlZnQiPtCn0L7QvNGDINC+0LHQuNGA0LDRjtGC0Ywg0L3QsNGBPzwvaDM+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGdhcC00IHRleHQtd2hpdGUvOTAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMiBoLTIgYmctZ3JlZW4tNDAwIHJvdW5kZWQtZnVsbCI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LWxlZnQiPtCc0ZbQvdGW0LzQsNC70YzQvdCwINC60L7QvNGW0YHRltGPIDAuNSU8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0zIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0yIGgtMiBiZy1ibHVlLTQwMCByb3VuZGVkLWZ1bGwiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7QktC10YDQuNGE0ZbQutCw0YbRltGPINC30LAgMiDRhdCy0LjQu9C40L3QuDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTIgaC0yIGJnLXB1cnBsZS00MDAgcm91bmRlZC1mdWxsIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+0J/QvtC90LDQtCAxMDAwINGD0YHQv9GW0YjQvdC40YUg0L7Qv9C10YDQsNGG0ZbQuTwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTIgaC0yIGJnLXllbGxvdy00MDAgcm91bmRlZC1mdWxsIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+0JHQtdC30L/QtdC60LAg0L3QsCDRgNGW0LLQvdGWINCx0LDQvdC60ZbQsjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggZmxleC1jb2wgc206ZmxleC1yb3cgZ2FwLTQiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNDAwIj4NCjxkaXYgY2xhc3M9ImZsZXggZmxleC1jb2wgc206ZmxleC1yb3cgZ2FwLTQiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNDAwIj4NCiAgICA8YnV0dG9uIG9uY2xpY2s9InNjcm9sbFRvU2VjdGlvbignY29udGFjdHMnKSIgY2xhc3M9ImJ0bi1ncmFkaWVudCBiZy1ncmFkaWVudC10by1yIGZyb20tcHVycGxlLTYwMCB0by1ibHVlLTYwMCBob3Zlcjpmcm9tLXB1cnBsZS03MDAgaG92ZXI6dG8tYmx1ZS03MDAgdGV4dC13aGl0ZSBweC04IHB5LTYgcm91bmRlZC1sZyB0ZXh0LWxnIGZvbnQtbWVkaXVtIGJvcmRlci0wIj4NCiAgICAgICAg0JrQvtC90YLQsNC60YLQuA0KICAgIDwvYnV0dG9uPg0KDQogICAgPGJ1dHRvbiBvbmNsaWNrPSJvcGVuQ29tcGFueU1vZGFsKCkiIGNsYXNzPSJib3JkZXIgYm9yZGVyLXB1cnBsZS00MDAvNTAgdGV4dC1wdXJwbGUtMzAwIGJnLXB1cnBsZS01MDAvMjAgaG92ZXI6YmctcHVycGxlLTUwMC8zMCBob3Zlcjpib3JkZXItcHVycGxlLTMwMCBob3Zlcjp0ZXh0LXdoaXRlIHB4LTggcHktNiByb3VuZGVkLWxnIHRleHQtbGcgZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1hbGwiPg0KICAgICAgICDQoNC10LrQstGW0LfQuNGC0LgNCiAgICA8L2J1dHRvbj4NCjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhpZGRlbiBtZDpncmlkIGdyaWQtY29scy0yIG1kOmdyaWQtY29scy00IGdhcC02IHB0LTYiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgdGV4dC1jZW50ZXIgYmctd2hpdGUvNSBiYWNrZHJvcC1ibHVyLXNtIHJvdW5kZWQtbGcgcC00IGJvcmRlciBib3JkZXItd2hpdGUvMTAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtM3hsIGZvbnQtYm9sZCB0ZXh0LXB1cnBsZS00MDAiPjI0Lzc8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIHRleHQtd2hpdGUvNjAiPtCf0ZbQtNGC0YDQuNC80LrQsDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHRleHQtY2VudGVyIGJnLXdoaXRlLzUgYmFja2Ryb3AtYmx1ci1zbSByb3VuZGVkLWxnIHAtNCBib3JkZXIgYm9yZGVyLXdoaXRlLzEwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LTN4bCBmb250LWJvbGQgdGV4dC1ibHVlLTQwMCI+NSDRhdCyPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSB0ZXh0LXdoaXRlLzYwIj7QqNCy0LjQtNC60ZbRgdGC0Yw8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciB0ZXh0LWNlbnRlciBiZy13aGl0ZS81IGJhY2tkcm9wLWJsdXItc20gcm91bmRlZC1sZyBwLTQgYm9yZGVyIGJvcmRlci13aGl0ZS8xMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0zeGwgZm9udC1ib2xkIHRleHQtZ3JlZW4tNDAwIj4xNSs8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIHRleHQtd2hpdGUvNjAiPtCS0LDQu9GO0YI8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciB0ZXh0LWNlbnRlciBiZy13aGl0ZS81IGJhY2tkcm9wLWJsdXItc20gcm91bmRlZC1sZyBwLTQgYm9yZGVyIGJvcmRlci13aGl0ZS8xMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0zeGwgZm9udC1ib2xkIHRleHQteWVsbG93LTQwMCI+OTklPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSB0ZXh0LXdoaXRlLzYwIj7Qo9GB0L/RltGI0L3RltGB0YLRjDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDwhLS0gUmVzZXJ2ZXMgU2VjdGlvbiAtLT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTYiIGRhdGEtYW9zPSJmYWRlLWxlZnQiIGRhdGEtYW9zLWR1cmF0aW9uPSI4MDAiIGRhdGEtYW9zLWRlbGF5PSIyMDAiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciBtYi04Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0idGV4dC0zeGwgZm9udC1ib2xkIHRleHQtd2hpdGUgbWItMiI+0J3QsNGI0ZYg0YDQtdC30LXRgNCy0Lg8L2gyPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2hpdGUvNzAiPtCX0LDQstC20LTQuCDQtNC+0YHRgtCw0YLQvdGM0L4g0LrQvtGI0YLRltCyINC00LvRjyDQvtCx0LzRltC90YM8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBncmlkLWNvbHMtMiBnYXAtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIGJnLXdoaXRlLzEwIGJhY2tkcm9wLWJsdXItbWQgYm9yZGVyIGJvcmRlci13aGl0ZS8yMCByb3VuZGVkLWxnIHAtNiB0ZXh0LWNlbnRlciBob3ZlcjpiZy13aGl0ZS8xNSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMzAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdy0xMiBoLTEyIHJvdW5kZWQtZnVsbCBiZy1ncmVlbi01MDAvMjAgbWItMyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmb250LWJvbGQgdGV4dC1ncmVlbi00MDAiPlVTRFQ8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0yeGwgZm9udC1ib2xkIHRleHQtZ3JlZW4tNDAwIG1iLTEiPjIsODQ3LDM5MjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtd2hpdGUvNjAgdGV4dC1zbSI+VVNEVDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIGJnLXdoaXRlLzEwIGJhY2tkcm9wLWJsdXItbWQgYm9yZGVyIGJvcmRlci13aGl0ZS8yMCByb3VuZGVkLWxnIHAtNiB0ZXh0LWNlbnRlciBob3ZlcjpiZy13aGl0ZS8xNSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNDAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdy0xMiBoLTEyIHJvdW5kZWQtZnVsbCBiZy1ibHVlLTUwMC8yMCBtYi0zIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZvbnQtYm9sZCB0ZXh0LWJsdWUtNDAwIj5FVVI8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0yeGwgZm9udC1ib2xkIHRleHQtYmx1ZS00MDAgbWItMSI+NDU2LDgyMTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtd2hpdGUvNjAgdGV4dC1zbSI+RVVSTzwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIGJnLXdoaXRlLzEwIGJhY2tkcm9wLWJsdXItbWQgYm9yZGVyIGJvcmRlci13aGl0ZS8yMCByb3VuZGVkLWxnIHAtNiB0ZXh0LWNlbnRlciBob3ZlcjpiZy13aGl0ZS8xNSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdy0xMiBoLTEyIHJvdW5kZWQtZnVsbCBiZy1vcmFuZ2UtNTAwLzIwIG1iLTMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZm9udC1ib2xkIHRleHQtb3JhbmdlLTQwMCI+QlRDPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtMnhsIGZvbnQtYm9sZCB0ZXh0LW9yYW5nZS00MDAgbWItMSI+MTI3Ljg5PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC13aGl0ZS82MCB0ZXh0LXNtIj5CVEM8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBiZy13aGl0ZS8xMCBiYWNrZHJvcC1ibHVyLW1kIGJvcmRlciBib3JkZXItd2hpdGUvMjAgcm91bmRlZC1sZyBwLTYgdGV4dC1jZW50ZXIgaG92ZXI6Ymctd2hpdGUvMTUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjYwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHctMTIgaC0xMiByb3VuZGVkLWZ1bGwgYmcteWVsbG93LTUwMC8yMCBtYi0zIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZvbnQtYm9sZCB0ZXh0LXllbGxvdy00MDAiPlVBSDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LTJ4bCBmb250LWJvbGQgdGV4dC15ZWxsb3ctNDAwIG1iLTEiPjE4LDkzNCw1Njc8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXdoaXRlLzYwIHRleHQtc20iPlVBSDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1jZW50ZXIgcHQtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13aGl0ZS82MCB0ZXh0LXNtIGFuaW1hdGUtcHVsc2UiPuKcqCDQoNC10LfQtdGA0LLQuCDQvtC90L7QstC70Y7RjtGC0YzRgdGPINCyINGA0LXQsNC70YzQvdC+0LzRgyDRh9Cw0YHRljwvcD4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9zZWN0aW9uPg0KDQogICAgPCEtLSBFeGNoYW5nZSBGb3JtIFNlY3Rpb24gLS0+DQogICAgPHNlY3Rpb24gaWQ9ImV4Y2hhbmdlIiBjbGFzcz0icHktMjAgYmctZ3JhZGllbnQtdG8tYnIgZnJvbS1wdXJwbGUtNTAgdmlhLWJsdWUtNTAgdG8tZ3JlZW4tNTAiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgbXgtYXV0byBweC00Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtY2VudGVyIG1iLTEyIiBkYXRhLWFvcz0iZmFkZS11cCI+DQogICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJ0ZXh0LTV4bCBmb250LWJvbGQgbWItNCBiZy1ncmFkaWVudC10by1yIGZyb20tcHVycGxlLTYwMCB2aWEtYmx1ZS02MDAgdG8tZ3JlZW4tNjAwIGJnLWNsaXAtdGV4dCB0ZXh0LXRyYW5zcGFyZW50Ij4NCiAgICAgICAgICAgICAgICAgICAg0J7QsdC80ZbQvSDQutGA0LjQv9GC0L7QstCw0LvRjtGCDQogICAgICAgICAgICAgICAgPC9oMj4NCiAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC14bCB0ZXh0LWdyYXktNjAwIj7QntCx0LXRgNGW0YLRjCDQt9GA0YPRh9C90LjQuSDQtNC70Y8g0LLQsNGBINGB0L/QvtGB0ZbQsSDQvtGC0YDQuNC80LDQvdC90Y8g0LrQvtGI0YLRltCyPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InctZnVsbCBteC1hdXRvIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjIwMCI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSByb3VuZGVkLTJ4bCBzaGFkb3ctMnhsIGJvcmRlci0wIG92ZXJmbG93LWhpZGRlbiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJnLWdyYWRpZW50LXRvLXIgZnJvbS1wdXJwbGUtNTAwIHZpYS1ibHVlLTUwMCB0by1ncmVlbi01MDAgdGV4dC13aGl0ZSBweS00IHB4LTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJ0ZXh0LTJ4bCB0ZXh0LWNlbnRlciBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+4pqhPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgINCa0YDQvtC6IDE6INC+0LHQtdGA0ZbRgtGMINGJ0L4g0JLQuCDQstGW0LTQtNCw0ZTRgtC1DQogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InAtNiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBpZD0iZXhjaGFuZ2VGb3JtIiBvbnN1Ym1pdD0ic3VibWl0Rm9ybShldmVudCkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVGFicyB3aXRoIHByb3BlciBzdHlsaW5nIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im92ZXJmbG93LXgtYXV0byBtYi02Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCB3LW1heCBtaW4tdy1mdWxsIGJnLWdyYXktMTAwIHJvdW5kZWQtbGcgcC0yIGdhcC0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJzaG93VGFiKCdjYXNoJykiIGlkPSJ0YWItY2FzaCIgY2xhc3M9InRhYi1idG4gYWN0aXZlIGZsZXgtc2hyaW5rLTAgYmctZ3JhZGllbnQtdG8tciBmcm9tLXllbGxvdy01MDAgdG8tb3JhbmdlLTUwMCB0ZXh0LWJsYWNrIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCT0L7RgtGW0LLQutCwDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJzaG93VGFiKCdjcnlwdG8nKSIgaWQ9InRhYi1jcnlwdG8iIGNsYXNzPSJ0YWItYnRuIGZsZXgtc2hyaW5rLTAgdGV4dC1ncmF5LTcwMCBob3ZlcjpiZy1ncmF5LTUwIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCa0YDQuNC/0YLQvtCy0LDQu9GO0YLQsA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0ic2hvd1RhYignY2FyZCcpIiBpZD0idGFiLWNhcmQiIGNsYXNzPSJ0YWItYnRuIGZsZXgtc2hyaW5rLTAgdGV4dC1ncmF5LTcwMCBob3ZlcjpiZy1ncmF5LTUwIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCR0LDQvdC60ZbQstGB0YzQutCwINC60LDRgNGC0LANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9InNob3dUYWIoJ2J1c2luZXNzJykiIGlkPSJ0YWItYnVzaW5lc3MiIGNsYXNzPSJ0YWItYnRuIGZsZXgtc2hyaW5rLTAgdGV4dC1ncmF5LTcwMCBob3ZlcjpiZy1ncmF5LTUwIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCi0J7Qkiwg0KTQntCfDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDdXJyZW5jeSBTZWxlY3Rpb24gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0zIG1iLTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCIgaWQ9ImN1cnJlbmN5LWxhYmVsIj7QntCx0LXRgNGW0YLRjCDQutGA0LjQv9GC0L7QstCw0LvRjtGC0YMg0LTQu9GPINC+0LHQvNGW0L3RgyDQvdCwINCz0L7RgtGW0LLQutGDPC9sYWJlbD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMyBnYXAtMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0ic2VsZWN0Q3VycmVuY3koJ3VzZHQtdHJjMjAnKSIgaWQ9ImN1cnJlbmN5LXVzZHQtdHJjMjAiIGNsYXNzPSJjdXJyZW5jeS1idG4gdy1mdWxsIGgtMTAgYmctZ3JlZW4tNTAwIGhvdmVyOmJnLWdyZWVuLTYwMCB0ZXh0LXdoaXRlIGJvcmRlci0wIHNoYWRvdy1sZyByb3VuZGVkLWxnIHRyYW5zaXRpb24tYWxsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0RUIFRSQzIwDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJzZWxlY3RDdXJyZW5jeSgndXNkdC1lcmMyMCcpIiBpZD0iY3VycmVuY3ktdXNkdC1lcmMyMCIgY2xhc3M9ImN1cnJlbmN5LWJ0biB3LWZ1bGwgaC0xMCBib3JkZXIgYm9yZGVyLWdyYXktMzAwIGhvdmVyOmJnLWdyYXktNTAgdGV4dC1ncmF5LTcwMCByb3VuZGVkLWxnIHRyYW5zaXRpb24tYWxsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0RUIEVSQzIwDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJzZWxlY3RDdXJyZW5jeSgndXNkYycpIiBpZD0iY3VycmVuY3ktdXNkYyIgY2xhc3M9ImN1cnJlbmN5LWJ0biB3LWZ1bGwgaC0xMCBib3JkZXIgYm9yZGVyLWdyYXktMzAwIGhvdmVyOmJnLWdyYXktNTAgdGV4dC1ncmF5LTcwMCByb3VuZGVkLWxnIHRyYW5zaXRpb24tYWxsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0RDDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBSb3RhdGluZyBFeGNoYW5nZSBJY29uIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgganVzdGlmeS1jZW50ZXIgbWItNiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImV4Y2hhbmdlLWljb24iIGNsYXNzPSJiZy1ncmFkaWVudC10by1yIGZyb20teWVsbG93LTUwMCB0by1vcmFuZ2UtNTAwIHAtMiByb3VuZGVkLWZ1bGwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0idy01IGgtNSB0ZXh0LXdoaXRlIHJvdGF0aW5nLWFycm93IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgdmlld0JveD0iMCAwIDI0IDI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTcgMTZWNG0wIDBMMyA4bTQtNGw0IDRtNiAwdjEybTAgMGw0LTRtLTQgNGwtNC00Ij48L3BhdGg+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBGb3JtIEZpZWxkcyAtIE9OTFkgNCBmaWVsZHMgZm9yIGNyeXB0byB0YWIgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZm9ybS1maWVsZHMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENhc2ggVGFiIEZpZWxkcyAoNSBmaWVsZHMpIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjYXNoLWZpZWxkcyIgY2xhc3M9InNwYWNlLXktNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGdhcC00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJhbW91bnQiIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAiPtCh0YPQvNCwPC9sYWJlbD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJhbW91bnQiIG5hbWU9ImFtb3VudCIgdmFsdWU9IjIwMDAwIiBwbGFjZWhvbGRlcj0i0LLRltC0IDIwMDAwIFVBSCIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZm9ybS1pbnB1dCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyYXktNTAgdG8tZ3JheS0xMDAgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIGZvY3VzOmJvcmRlci15ZWxsb3ctNDAwIGgtMTAgcHgtMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJwaG9uZSIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0J3QvtC80LXRgCDRgtC10LvQtdGE0L7QvdGDPC9sYWJlbD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRlbCIgaWQ9InBob25lIiBuYW1lPSJwaG9uZSIgcGxhY2Vob2xkZXI9IiszODAiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImZvcm0taW5wdXQgdy1mdWxsIGJnLWdyYWRpZW50LXRvLXIgZnJvbS1ncmF5LTUwIHRvLWdyYXktMTAwIGJvcmRlci0yIGJvcmRlci1ncmF5LTIwMCBmb2N1czpib3JkZXItb3JhbmdlLTQwMCBoLTEwIHB4LTMgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibmFtZSIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0IbQvCfRjzwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ibmFtZSIgbmFtZT0ibmFtZSIgcGxhY2Vob2xkZXI9ItCS0LDRiNC1INGW0Lwn0Y8iIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImZvcm0taW5wdXQgdy1mdWxsIGJnLWdyYWRpZW50LXRvLXIgZnJvbS1ncmF5LTUwIHRvLWdyYXktMTAwIGJvcmRlci0yIGJvcmRlci1ncmF5LTIwMCBmb2N1czpib3JkZXItcmVkLTQwMCBoLTEwIHB4LTMgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0idGVsZWdyYW0iIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAiPtCS0LDRiCBUZWxlZ3JhbTwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGVsZWdyYW0iIG5hbWU9InRlbGVncmFtIiBwbGFjZWhvbGRlcj0iQHVzZXJuYW1lIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJmb3JtLWlucHV0IHctZnVsbCBiZy1ncmFkaWVudC10by1yIGZyb20tZ3JheS01MCB0by1ncmF5LTEwMCBib3JkZXItMiBib3JkZXItZ3JheS0yMDAgZm9jdXM6Ym9yZGVyLXBpbmstNDAwIGgtMTAgcHgtMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBBZGRpdGlvbmFsIEZpZWxkIGZvciBDYXNoIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJhZGRpdGlvbmFsIiBpZD0iYWRkaXRpb25hbC1sYWJlbCIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0JzRltGB0YLQvjwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJhZGRpdGlvbmFsIiBuYW1lPSJhZGRpdGlvbmFsIiBwbGFjZWhvbGRlcj0i0JrQuNGX0LIsINCl0LDRgNC60ZbQsiwg0J7QtNC10YHQsC4uLiIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJmb3JtLWlucHV0IHctZnVsbCBiZy1ncmFkaWVudC10by1yIGZyb20tZ3JheS01MCB0by1ncmF5LTEwMCBib3JkZXItMiBib3JkZXItZ3JheS0yMDAgZm9jdXM6Ym9yZGVyLWdyZWVuLTQwMCBoLTEwIHB4LTMgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENyeXB0byBUYWIgRmllbGRzICg0IGZpZWxkcyBvbmx5KSAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iY3J5cHRvLWZpZWxkcyIgY2xhc3M9InNwYWNlLXktNCBoaWRkZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMiBnYXAtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iYW1vdW50LWNyeXB0byIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0KHRg9C80LA8L2xhYmVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImFtb3VudC1jcnlwdG8iIG5hbWU9ImFtb3VudCIgcGxhY2Vob2xkZXI9ItCy0ZbQtCAxMDAgVVNEVCIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZm9ybS1pbnB1dCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyYXktNTAgdG8tZ3JheS0xMDAgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIGZvY3VzOmJvcmRlci1wdXJwbGUtNDAwIGgtMTAgcHgtMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJwaG9uZS1jcnlwdG8iIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAiPtCd0L7QvNC10YAg0YLQtdC70LXRhNC+0L3RgzwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZWwiIGlkPSJwaG9uZS1jcnlwdG8iIG5hbWU9InBob25lIiBwbGFjZWhvbGRlcj0iKzM4MCIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZm9ybS1pbnB1dCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyYXktNTAgdG8tZ3JheS0xMDAgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIGZvY3VzOmJvcmRlci1ibHVlLTQwMCBoLTEwIHB4LTMgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibmFtZS1jcnlwdG8iIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAiPtCG0Lwn0Y88L2xhYmVsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Im5hbWUtY3J5cHRvIiBuYW1lPSJuYW1lIiBwbGFjZWhvbGRlcj0i0JLQsNGI0LUg0ZbQvCfRjyIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZm9ybS1pbnB1dCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyYXktNTAgdG8tZ3JheS0xMDAgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIGZvY3VzOmJvcmRlci1pbmRpZ28tNDAwIGgtMTAgcHgtMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJ0ZWxlZ3JhbS1jcnlwdG8iIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAiPtCS0LDRiCBUZWxlZ3JhbTwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGVsZWdyYW0tY3J5cHRvIiBuYW1lPSJ0ZWxlZ3JhbSIgcGxhY2Vob2xkZXI9IkB1c2VybmFtZSIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iZm9ybS1pbnB1dCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyYXktNTAgdG8tZ3JheS0xMDAgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIGZvY3VzOmJvcmRlci1jeWFuLTQwMCBoLTEwIHB4LTMgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTk8gYWRkaXRpb25hbCBmaWVsZCBmb3IgY3J5cHRvIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgaWQ9InN1Ym1pdC1idG4iIGNsYXNzPSJidG4tZ3JhZGllbnQgdy1mdWxsIGJnLWdyYWRpZW50LXRvLXIgZnJvbS15ZWxsb3ctNDAwIHZpYS1vcmFuZ2UtNDAwIHRvLXJlZC00MDAgaG92ZXI6ZnJvbS15ZWxsb3ctNTAwIGhvdmVyOnZpYS1vcmFuZ2UtNTAwIGhvdmVyOnRvLXJlZC01MDAgdGV4dC1ibGFjayBib3JkZXItMCBzaGFkb3ctbGcgaC0xMiByb3VuZGVkLWxnIGZvbnQtbWVkaXVtIHRleHQtbGcgbXQtNiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIPCfkrAg0J7QsdC80ZbQvdGP0YLQuCDQvdCwINCz0L7RgtGW0LLQutGDDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvc2VjdGlvbj4NCg0KICAgIDwhLS0gU3VjY2VzcyBNb2RhbCAtLT4NCiAgICA8ZGl2IGlkPSJzdWNjZXNzTW9kYWwiIGNsYXNzPSJmaXhlZCBpbnNldC0wIGJnLWJsYWNrLzUwIGJhY2tkcm9wLWJsdXItc20gei01MCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBwLTQgaGlkZGVuIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iYmctd2hpdGUvOTAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCByb3VuZGVkLTJ4bCBzaGFkb3ctMnhsIHAtMTIgbWF4LXctMnhsIHctZnVsbCB0ZXh0LWNlbnRlciB0cmFuc2Zvcm0gc2NhbGUtOTUgdHJhbnNpdGlvbi10cmFuc2Zvcm0iPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3VjY2Vzcy1jaGVja21hcmsgdGV4dC1ncmVlbi01MDAgdGV4dC02eGwgbWItNiI+4pyTPC9kaXY+DQogICAgICAgICAgICA8aDIgY2xhc3M9InRleHQtNHhsIGZvbnQtYm9sZCBtYi00IGJnLWdyYWRpZW50LXRvLXIgZnJvbS1ncmVlbi02MDAgdmlhLXRlYWwtNjAwIHRvLWN5YW4tNjAwIGJnLWNsaXAtdGV4dCB0ZXh0LXRyYW5zcGFyZW50Ij4NCiAgICAgICAgICAgICAgICDQlNGP0LrRg9GU0LzQviDQt9CwINC30LDRj9Cy0LrRgyEg8J+OiQ0KICAgICAgICAgICAgPC9oMj4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXhsIHRleHQtZ3JheS02MDAgbWItNiI+DQogICAgICAgICAgICAgICAg0JLQsNGI0LAg0LfQsNGP0LLQutCwINGD0YHQv9GW0YjQvdC+INCy0ZbQtNC/0YDQsNCy0LvQtdC90LAuINCd0LDRiCDQvNC10L3QtdC00LbQtdGAINC30LIn0Y/QttC10YLRjNGB0Y8g0Lcg0LLQsNC80Lgg0L3QsNC50LHQu9C40LbRh9C40Lwg0YfQsNGB0L7QvCDQtNC70Y8g0YPRgtC+0YfQvdC10L3QvdGPINC00LXRgtCw0LvQtdC5INC+0LHQvNGW0L3Rgy4NCiAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJnLWdyYWRpZW50LXRvLXIgZnJvbS1ncmVlbi0xMDAgdmlhLXRlYWwtMTAwIHRvLWN5YW4tMTAwIHJvdW5kZWQteGwgcC02IG1iLTgiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0zIG1iLTMiPg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC0yeGwiPvCfkqw8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtdGVhbC04MDAiPtCe0YfRltC60YPQudGC0LUg0L/QvtCy0ZbQtNC+0LzQu9C10L3QvdGPINCyIFRlbGVncmFtPC9zcGFuPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXRlYWwtNzAwIj4NCiAgICAgICAgICAgICAgICAgICAg0JfQsNC30LLQuNGH0LDQuSDQvdCw0YjRliDQvNC10L3QtdC00LbQtdGA0Lgg0LLRltC00L/QvtCy0ZbQtNCw0Y7RgtGMINC/0YDQvtGC0Y/Qs9C+0LwgNS0xNSDRhdCy0LjQu9C40L0g0YMg0YDQvtCx0L7Rh9C40Lkg0YfQsNGBICgwOTowMCAtIDIxOjAwKQ0KICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS00Ij4NCiAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9ImNsb3NlU3VjY2Vzc01vZGFsKCkiIGNsYXNzPSJidG4tZ3JhZGllbnQgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyZWVuLTUwMCB2aWEtdGVhbC01MDAgdG8tY3lhbi01MDAgaG92ZXI6ZnJvbS1ncmVlbi02MDAgaG92ZXI6dmlhLXRlYWwtNjAwIGhvdmVyOnRvLWN5YW4tNjAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIHB4LTggcHktMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAg0J7Qug0KICAgICAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InB0LTQiPg0KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNTAwIiBpZD0ib3JkZXItbnVtYmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgINCd0L7QvNC10YAg0LfQsNGP0LLQutC4OiAjMTIzNDU2DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjxkaXYgaWQ9ImNvbXBhbnlNb2RhbCIgY2xhc3M9ImZpeGVkIGluc2V0LTAgei1bOTk5OV0gaGlkZGVuIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBwLTMgc206cC00Ij4NCiAgICA8ZGl2IGNsYXNzPSJhYnNvbHV0ZSBpbnNldC0wIGJnLWJsYWNrLzcwIGJhY2tkcm9wLWJsdXItbWQiIG9uY2xpY2s9ImNsb3NlQ29tcGFueU1vZGFsKCkiPjwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0icmVsYXRpdmUgdy1bY2FsYygxMDB2dy0xLjVyZW0pXSBzbTp3LWZ1bGwgc206bWF4LXctM3hsIG1heC1oLVs5MHZoXSBvdmVyZmxvdy15LWF1dG8gcm91bmRlZC0yeGwgc206cm91bmRlZC0zeGwgYm9yZGVyIGJvcmRlci13aGl0ZS8xMCBiZy1zbGF0ZS05NTAvOTUgc2hhZG93LTJ4bCI+DQogICAgICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIGluc2V0LXgtMCB0b3AtMCBoLTEgYmctZ3JhZGllbnQtdG8tciBmcm9tLXB1cnBsZS01MDAgdmlhLWJsdWUtNTAwIHRvLWdyZWVuLTUwMCI+PC9kaXY+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0icmVsYXRpdmUgcC00IHNtOnAtNiBsZzpwLTgiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBqdXN0aWZ5LWJldHdlZW4gZ2FwLTQgbWItNiBzbTptYi04Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW4tdy0wIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLXdoaXRlLzEwIGJnLXdoaXRlLzUgcHgtMyBzbTpweC00IHB5LTIgdGV4dC1bMTBweF0gc206dGV4dC14cyB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gc206dHJhY2tpbmctWzAuMjVlbV0gdGV4dC13aGl0ZS82MCI+DQogICAgICAgICAgICAgICAgICAgICAgICDQntGE0ZbRhtGW0LnQvdGWINGA0LXQutCy0ZbQt9C40YLQuA0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtdC0zIHNtOm10LTQgdGV4dC14bCBzbTp0ZXh0LTJ4bCBsZzp0ZXh0LTN4bCBmb250LWJvbGQgdGV4dC13aGl0ZSBsZWFkaW5nLXRpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgINCg0LXQutCy0ZbQt9C40YLQuCDQutC+0LzQv9Cw0L3RltGXDQogICAgICAgICAgICAgICAgICAgIDwvaDM+DQogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gc206dGV4dC1iYXNlIHRleHQtd2hpdGUvNjAiPg0KICAgICAgICAgICAgICAgICAgICAgICAg0JTQsNC90ZYg0Y7RgNC40LTQuNGH0L3QvtGXINC+0YHQvtCx0LgNCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgPGJ1dHRvbg0KICAgICAgICAgICAgICAgICAgICB0eXBlPSJidXR0b24iDQogICAgICAgICAgICAgICAgICAgIG9uY2xpY2s9ImNsb3NlQ29tcGFueU1vZGFsKCkiDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJzaHJpbmstMCB0ZXh0LXdoaXRlLzUwIGhvdmVyOnRleHQtd2hpdGUgdHJhbnNpdGlvbiB0ZXh0LTN4bCBsZWFkaW5nLW5vbmUgLW10LTEiDQogICAgICAgICAgICAgICAgPg0KICAgICAgICAgICAgICAgICAgICAmdGltZXM7DQogICAgICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBnYXAtMyBzbTpnYXAtNCBtZDpncmlkLWNvbHMtMiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC0yeGwgYm9yZGVyIGJvcmRlci13aGl0ZS8xMCBiZy13aGl0ZS81IHAtNCBzbTpwLTUiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LVsxMHB4XSBzbTp0ZXh0LXhzIHVwcGVyY2FzZSB0cmFja2luZy1bMC4xOGVtXSBzbTp0cmFja2luZy1bMC4yZW1dIHRleHQtd2hpdGUvNDAgbWItMiI+DQogICAgICAgICAgICAgICAgICAgICAgICDQn9C+0LLQvdCwINC90LDQt9Cy0LANCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gc206dGV4dC1iYXNlIHRleHQtd2hpdGUgZm9udC1zZW1pYm9sZCBsZWFkaW5nLXJlbGF4ZWQgYnJlYWstd29yZHMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgTElNSVRFRCBMSUFCSUxJVFkgQ09NUEFOWSAiRklOQU5DSUFMIENPTVBBTlkgIkZJTk9GSVMiDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC0yeGwgYm9yZGVyIGJvcmRlci13aGl0ZS8xMCBiZy13aGl0ZS81IHAtNCBzbTpwLTUiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LVsxMHB4XSBzbTp0ZXh0LXhzIHVwcGVyY2FzZSB0cmFja2luZy1bMC4xOGVtXSBzbTp0cmFja2luZy1bMC4yZW1dIHRleHQtd2hpdGUvNDAgbWItMiI+DQogICAgICAgICAgICAgICAgICAgICAgICDQmtC+0LQNCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gc206dGV4dC1iYXNlIHRleHQtd2hpdGUgZm9udC1zZW1pYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICA0MzQ3Mzc5Nw0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItd2hpdGUvMTAgYmctd2hpdGUvNSBwLTQgc206cC01Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1bMTBweF0gc206dGV4dC14cyB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gc206dHJhY2tpbmctWzAuMmVtXSB0ZXh0LXdoaXRlLzQwIG1iLTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAg0KDQtdGU0YHRgtGA0LDRhtGW0LnQvdC40Lkg0L3QvtC80LXRgA0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSBzbTp0ZXh0LWJhc2UgdGV4dC13aGl0ZSBmb250LXNlbWlib2xkIGJyZWFrLWFsbCI+DQogICAgICAgICAgICAgICAgICAgICAgICAxMzM5MTAyMDAwMDAxOTAzNg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItd2hpdGUvMTAgYmctd2hpdGUvNSBwLTQgc206cC01Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1bMTBweF0gc206dGV4dC14cyB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gc206dHJhY2tpbmctWzAuMmVtXSB0ZXh0LXdoaXRlLzQwIG1iLTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAg0JTQsNGC0LAg0YDQtdGU0YHRgtGA0LDRhtGW0ZcNCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gc206dGV4dC1iYXNlIHRleHQtd2hpdGUgZm9udC1zZW1pYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAyOC4wMS4yMDIwDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTMgc206bXQtNCByb3VuZGVkLTJ4bCBib3JkZXIgYm9yZGVyLXdoaXRlLzEwIGJnLXdoaXRlLzUgcC00IHNtOnAtNSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1bMTBweF0gc206dGV4dC14cyB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gc206dHJhY2tpbmctWzAuMmVtXSB0ZXh0LXdoaXRlLzQwIG1iLTMiPg0KICAgICAgICAgICAgICAgICAgICDQkNC00YDQtdGB0LANCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIHNtOnRleHQtYmFzZSB0ZXh0LXdoaXRlLzgwIGxlYWRpbmctcmVsYXhlZCBicmVhay13b3JkcyI+DQogICAgICAgICAgICAgICAgICAgINCj0LrRgNCw0ZfQvdCwLCAwODEzNywg0JrQuNGX0LLRgdGM0LrQsCDQvtCx0LvQsNGB0YLRjCwg0JHRg9GH0LDQvdGB0YzQutC40Lkg0YDQsNC50L7QvSwg0YHQtdC70L4g0KHQvtGE0ZbRl9Cy0YHRjNC60LAg0JHQvtGA0YnQsNCz0ZbQstC60LAsINCy0YPQu9C40YbRjyDQnNCw0LvQsCDQmtGW0LvRjNGG0LXQstCwLCDQsdGD0LTQuNC90L7QuiA00LAsINGW0L3RiNC1INC/0YDQuNC80ZbRidC10L3QvdGPIDIwDQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtMyBzbTptdC00IHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItd2hpdGUvMTAgYmctd2hpdGUvNSBwLTQgc206cC01Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LVsxMHB4XSBzbTp0ZXh0LXhzIHVwcGVyY2FzZSB0cmFja2luZy1bMC4xOGVtXSBzbTp0cmFja2luZy1bMC4yZW1dIHRleHQtd2hpdGUvNDAgbWItMyI+DQogICAgICAgICAgICAgICAgICAgINCa0LXRgNGW0LLQvdC40LoNCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIHNtOnRleHQtYmFzZSB0ZXh0LXdoaXRlIGZvbnQtc2VtaWJvbGQgYnJlYWstd29yZHMiPg0KICAgICAgICAgICAgICAgICAgICDQn9GD0YHRgtC+0LLQvtC50YIg0JPQsNC90L3QsCDQktC+0LvQvtC00LjQvNC40YDRltCy0L3QsA0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9kaXY+DQoNCjxzY3JpcHQ+DQpmdW5jdGlvbiBvcGVuQ29tcGFueU1vZGFsKCkgew0KICAgIGNvbnN0IG1vZGFsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbXBhbnlNb2RhbCcpOw0KICAgIGlmICghbW9kYWwpIHJldHVybjsNCiAgICBtb2RhbC5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTsNCiAgICBtb2RhbC5jbGFzc0xpc3QuYWRkKCdmbGV4Jyk7DQogICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nOw0KfQ0KDQpmdW5jdGlvbiBjbG9zZUNvbXBhbnlNb2RhbCgpIHsNCiAgICBjb25zdCBtb2RhbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb21wYW55TW9kYWwnKTsNCiAgICBpZiAoIW1vZGFsKSByZXR1cm47DQogICAgbW9kYWwuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7DQogICAgbW9kYWwuY2xhc3NMaXN0LnJlbW92ZSgnZmxleCcpOw0KICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnJzsNCn0NCg0KZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGZ1bmN0aW9uIChlKSB7DQogICAgaWYgKGUua2V5ID09PSAnRXNjYXBlJykgY2xvc2VDb21wYW55TW9kYWwoKTsNCn0pOw0KPC9zY3JpcHQ+DQogICAgPCEtLSBBYm91dCBTZWN0aW9uIC0tPg0KICAgIDxzZWN0aW9uIGlkPSJhYm91dCIgY2xhc3M9InB5LTIwIGJnLWdyYWRpZW50LXRvLWJyIGZyb20tb3JhbmdlLTUwIHZpYS1yZWQtNTAgdG8tcGluay01MCI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBteC1hdXRvIHB4LTQiPg0KICAgICAgICAgICAgPCEtLSBBYm91dCBVcyAtLT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgbWQ6Z3JpZC1jb2xzLTIgZ2FwLTEyIGl0ZW1zLWNlbnRlciBtYi0yMCI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS02IiBkYXRhLWFvcz0iZmFkZS1yaWdodCIgZGF0YS1hb3MtZHVyYXRpb249IjgwMCI+DQogICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0idGV4dC01eGwgZm9udC1ib2xkIGJnLWdyYWRpZW50LXRvLXIgZnJvbS1vcmFuZ2UtNjAwIHZpYS1yZWQtNjAwIHRvLXBpbmstNjAwIGJnLWNsaXAtdGV4dCB0ZXh0LXRyYW5zcGFyZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgINCf0YDQviDQvdCw0Ygg0YHQtdGA0LLRltGBDQogICAgICAgICAgICAgICAgICAgIDwvaDI+DQogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICBDcnlwdG9FeGNoYW5nZSDigJQg0YbQtSDQvdCw0LTRltC50L3QuNC5INGD0LrRgNCw0ZfQvdGB0YzQutC40Lkg0YHQtdGA0LLRltGBINC00LvRjyDQvtCx0LzRltC90YMg0LrRgNC40L/RgtC+0LLQsNC70Y7Rgiwg0Y/QutC40Lkg0L/RgNCw0YbRjtGUINC3IDIwMTkg0YDQvtC60YMuINCc0Lgg0LTQvtC/0L7QvNCw0LPQsNGU0LzQviDRgtC40YHRj9GH0LDQvCDQutC70ZbRlNC90YLRltCyINCx0LXQt9C/0LXRh9C90L4g0YLQsCDRiNCy0LjQtNC60L4g0L7QsdC80ZbQvdGO0LLQsNGC0Lgg0YbQuNGE0YDQvtCy0ZYg0LDQutGC0LjQstC4INC90LAg0LPQvtGC0ZbQstC60YMg0YLQsCDQsdCw0L3QutGW0LLRgdGM0LrRliDQutC+0YjRgtC4Lg0KICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICDQndCw0YjQsCDQvNGW0YHRltGPIOKAlCDQt9GA0L7QsdC40YLQuCDQutGA0LjQv9GC0L7QstCw0LvRjtGC0L3RliDQvtC/0LXRgNCw0YbRltGXINC00L7RgdGC0YPQv9C90LjQvNC4INGC0LAg0LfRgNC+0LfRg9C80ZbQu9C40LzQuCDQtNC70Y8g0LrQvtC20L3QvtCz0L4g0YPQutGA0LDRl9C90YbRjywg0LfQsNCx0LXQt9C/0LXRh9GD0Y7Rh9C4INC/0YDQuCDRhtGM0L7QvNGDINC90LDQudCy0LjRidC40Lkg0YDRltCy0LXQvdGMINCx0LXQt9C/0LXQutC4INGC0LAg0YHQtdGA0LLRltGB0YMuDQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC04IHB0LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciB0ZXh0LWNlbnRlciBwLTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLW9yYW5nZS00MDAgdG8tcmVkLTQwMCByb3VuZGVkLTJ4bCB0ZXh0LXdoaXRlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LTN4bCBmb250LWJvbGQiPjE1LDAwMCs8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIj7Ql9Cw0LTQvtCy0L7Qu9C10L3QuNGFINC60LvRltGU0L3RgtGW0LI8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciB0ZXh0LWNlbnRlciBwLTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLXJlZC00MDAgdG8tcGluay00MDAgcm91bmRlZC0yeGwgdGV4dC13aGl0ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0zeGwgZm9udC1ib2xkIj7igrQyLjXQvNC70L08L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIj7QntCx0LzRltC90ZbQsiDRidC+0LzRltGB0Y/RhtGPPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVsYXRpdmUiIGRhdGEtYW9zPSJmYWRlLWxlZnQiIGRhdGEtYW9zLWR1cmF0aW9uPSI4MDAiIGRhdGEtYW9zLWRlbGF5PSIyMDAiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pbWFnZXMudW5zcGxhc2guY29tL3Bob3RvLTE2NzA4NTEwNTAyNDUtZDg2MWZkNDMzZDA2P2Nyb3A9ZW50cm9weSZjcz10aW55c3JnYiZmaXQ9bWF4JmZtPWpwZyZpeGlkPU0zdzNOemc0TnpkOE1Id3hmSE5sWVhKamFId3hmSHhrWVhKckpUSXdZM0o1Y0hSdlkzVnljbVZ1WTNrbE1qQmlhWFJqYjJsdUpUSXdZbUZqYTJkeWIzVnVaSHhsYm53eGZIeDhmREUzTlRZNU16azFOeko4TUEmaXhsaWI9cmItNC4xLjAmcT04MCZ3PTEwODAiIA0KICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iT3VyIHRlYW0iIGNsYXNzPSJ3LWZ1bGwgaC1hdXRvIHJvdW5kZWQtMnhsIHNoYWRvdy0yeGwiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYnNvbHV0ZSBpbnNldC0wIGJnLWdyYWRpZW50LXRvLXQgZnJvbS1vcmFuZ2UtNTAwLzIwIHRvLXRyYW5zcGFyZW50IHJvdW5kZWQtMnhsIj48L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8IS0tIEFkdmFudGFnZXMgLS0+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciBtYi0xMiIgZGF0YS1hb3M9ImZhZGUtdXAiPg0KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGV4dC00eGwgZm9udC1ib2xkIG1iLTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLW9yYW5nZS02MDAgdG8tcGluay02MDAgYmctY2xpcC10ZXh0IHRleHQtdHJhbnNwYXJlbnQiPg0KICAgICAgICAgICAgICAgICAgICDQndCw0YjRliDQv9C10YDQtdCy0LDQs9C4DQogICAgICAgICAgICAgICAgPC9oMz4NCiAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC14bCB0ZXh0LWdyYXktNjAwIj4NCiAgICAgICAgICAgICAgICAgICAg0KfQvtC80YMg0L/QvtC90LDQtCAxNSwwMDAg0LrQu9GW0ZTQvdGC0ZbQsiDQvtCx0YDQsNC70Lgg0YHQsNC80LUg0L3QsNGBDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgbWQ6Z3JpZC1jb2xzLTIgbGc6Z3JpZC1jb2xzLTMgZ2FwLTYiPg0KICAgICAgICAgICAgICAgIDwhLS0gQWR2YW50YWdlIDEgLS0+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdGF0ZSB3LTE0IGgtMTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLWJsdWUtNTAwIHRvLWN5YW4tNTAwIHJvdW5kZWQteGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZmxleC1zaHJpbmstMCBzaGFkb3ctbGciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9InctNyBoLTcgdGV4dC13aGl0ZSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHZpZXdCb3g9IjAgMCAyNCAyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNOSAxMmwyIDIgNC00bTUuNjE4LTQuMDE2QTExLjk1NSAxMS45NTUgMCAwMTEyIDIuOTQ0YTExLjk1NSAxMS45NTUgMCAwMS04LjYxOCAzLjA0QTEyLjAyIDEyLjAyIDAgMDAzIDljMCA1LjU5MSAzLjgyNCAxMC4yOSA5IDExLjYyMiA1LjE3Ni0xLjMzMiA5LTYuMDMgOS0xMS42MjIgMC0xLjA0Mi0uMTMzLTIuMDUyLS4zODItMy4wMTZ6Ii8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LWJvbGQgbWItMyB0ZXh0LWxnIj7QnNCw0LrRgdC40LzQsNC70YzQvdCwINCx0LXQt9C/0LXQutCwPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+0JLRgdGWINC+0L/QtdGA0LDRhtGW0Zcg0LfQsNGF0LjRidC10L3RliDRgdGD0YfQsNGB0L3QuNC80Lgg0YLQtdGF0L3QvtC70L7Qs9GW0Y/QvNC4INGI0LjRhNGA0YPQstCw0L3QvdGPPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDwhLS0gQWR2YW50YWdlIDIgLS0+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIyMDAiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdGF0ZSB3LTE0IGgtMTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyZWVuLTUwMCB0by1lbWVyYWxkLTUwMCByb3VuZGVkLXhsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGZsZXgtc2hyaW5rLTAgc2hhZG93LWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJ3LTcgaC03IHRleHQtd2hpdGUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMjQgMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTEyIDh2NGwzIDNtNi0zYTkgOSAwIDExLTE4IDAgOSA5IDAgMDExOCAweiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1ib2xkIG1iLTMgdGV4dC1sZyI+0KjQstC40LTQutGW0YHRgtGMINC+0LHQvNGW0L3RgzwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPtCh0LXRgNC10LTQvdGW0Lkg0YfQsNGBINC+0LHRgNC+0LHQutC4INC30LDRj9Cy0LrQuCDRgdC60LvQsNC00LDRlCDQstGB0YzQvtCz0L4gNS0xNSDRhdCy0LjQu9C40L08L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPCEtLSBBZHZhbnRhZ2UgMyAtLT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjMwMCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tcm90YXRlIHctMTQgaC0xNCBiZy1ncmFkaWVudC10by1yIGZyb20tcHVycGxlLTUwMCB0by1waW5rLTUwMCByb3VuZGVkLXhsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGZsZXgtc2hyaW5rLTAgc2hhZG93LWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJ3LTcgaC03IHRleHQtd2hpdGUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMjQgMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTEyIDQuMzU0YTQgNCAwIDExMCA1LjI5Mk0xNSAyMUgzdi0xYTYgNiAwIDAxMTIgMHYxem0wIDBoNnYtMWE2IDYgMCAwMC05LTUuMTk3bTEzLjUuNWE0IDQgMCAxMS04IDAgNCA0IDAgMDE4IDB6Ii8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LWJvbGQgbWItMyB0ZXh0LWxnIj7QlNC+0YHQstGW0LTRh9C10L3QsCDQutC+0LzQsNC90LTQsDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPtCf0L7QvdCw0LQgNSDRgNC+0LrRltCyINC00L7RgdCy0ZbQtNGDINGA0L7QsdC+0YLQuCDQvdCwINGA0LjQvdC60YMg0LrRgNC40L/RgtC+0LLQsNC70Y7RgjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8IS0tIEFkdmFudGFnZSA0IC0tPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iNDAwIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbi1yb3RhdGUgdy0xNCBoLTE0IGJnLWdyYWRpZW50LXRvLXIgZnJvbS15ZWxsb3ctNTAwIHRvLW9yYW5nZS01MDAgcm91bmRlZC14bCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBmbGV4LXNocmluay0wIHNoYWRvdy1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0idy03IGgtNyB0ZXh0LXdoaXRlIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgdmlld0JveD0iMCAwIDI0IDI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xMyAxMFYzTDQgMTRoN3Y3bDktMTFoLTd6Ii8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LWJvbGQgbWItMyB0ZXh0LWxnIj7QktC40LPRltC00L3RliDQutGD0YDRgdC4PC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+0JrQvtC90LrRg9GA0LXQvdGC0L3RliDQutGD0YDRgdC4INC+0LHQvNGW0L3RgyDQsdC10Lcg0L/RgNC40YXQvtCy0LDQvdC40YUg0LrQvtC80ZbRgdGW0Lk8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPCEtLSBBZHZhbnRhZ2UgNSAtLT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjUwMCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tcm90YXRlIHctMTQgaC0xNCBiZy1ncmFkaWVudC10by1yIGZyb20tcmVkLTUwMCB0by1waW5rLTUwMCByb3VuZGVkLXhsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGZsZXgtc2hyaW5rLTAgc2hhZG93LWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJ3LTcgaC03IHRleHQtd2hpdGUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMjQgMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE5IDExYTcgNyAwIDAxLTcgN20wIDBhNyA3IDAgMDEtNy03bTcgN3Y0bTAgMEg4bTQgMGg0bS00LThhMyAzIDAgMDEtMy0zVjVhMyAzIDAgMTE2IDB2NmEzIDMgMCAwMS0zIDN6Ii8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LWJvbGQgbWItMyB0ZXh0LWxnIj7Qn9GW0LTRgtGA0LjQvNC60LAgMjQvNzwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPtCm0ZbQu9C+0LTQvtCx0L7QstCwINC/0ZbQtNGC0YDQuNC80LrQsCDQutC70ZbRlNC90YLRltCyINGDIFRlbGVncmFtINGC0LAg0L/QviDRgtC10LvQtdGE0L7QvdGDPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDwhLS0gQWR2YW50YWdlIDYgLS0+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSI2MDAiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdGF0ZSB3LTE0IGgtMTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLWluZGlnby01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC14bCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBmbGV4LXNocmluay0wIHNoYWRvdy1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0idy03IGgtNyB0ZXh0LXdoaXRlIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgdmlld0JveD0iMCAwIDI0IDI0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xMyA3aDhtMCAwdjhtMC04bC04IDgtNC00LTYgNiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1ib2xkIG1iLTMgdGV4dC1sZyI+0JLQtdC70LjQutGWINGB0YPQvNC4PC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+0J7QsdC80ZbQvSDQstGW0LQgNTAwJCDQtNC+IDEsMDAwLDAwMCQg0LHQtdC3INC00L7QtNCw0YLQutC+0LLQuNGFINC/0LXRgNC10LLRltGA0L7QujwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L3NlY3Rpb24+DQoNCjwhLS0gVGVzdGltb25pYWxzIFNlY3Rpb24gLS0+DQo8c2VjdGlvbiBpZD0idGVzdGltb25pYWxzIiBjbGFzcz0icHktMjAgYmctZ3JhZGllbnQtdG8tYnIgZnJvbS10ZWFsLTUwIHZpYS1jeWFuLTUwIHRvLWJsdWUtNTAiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBteC1hdXRvIHB4LTQiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciBtYi0xMiIgZGF0YS1hb3M9ImZhZGUtdXAiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJ0ZXh0LTV4bCBmb250LWJvbGQgbWItNCBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC02MDAgdmlhLWN5YW4tNjAwIHRvLWJsdWUtNjAwIGJnLWNsaXAtdGV4dCB0ZXh0LXRyYW5zcGFyZW50Ij4NCiAgICAgICAgICAgICAgICDQktGW0LTQs9GD0LrQuCDQvdCw0YjQuNGFINC60LvRltGU0L3RgtGW0LINCiAgICAgICAgICAgIDwvaDI+DQogICAgICAgICAgICA8cCBjbGFzcz0idGV4dC14bCB0ZXh0LWdyYXktNjAwIG1iLTYiPg0KICAgICAgICAgICAgICAgINCU0ZbQt9C90LDQudGC0LXRgdGPLCDRidC+INC60LDQttGD0YLRjCDQv9GA0L4g0L3QsNGBINC90LDRiNGWINC60L7RgNC40YHRgtGD0LLQsNGH0ZYNCiAgICAgICAgICAgIDwvcD4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIA0KICAgICAgICA8IS0tIE5hdmlnYXRpb24gYW5kIFJldmlldyBCdXR0b24gLS0+DQogICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiBtYi04IGpuMjNqY24yIiBpZD0icGFnaW5hdGlvbi1jb250cm9scyIgb25tb3VzZWVudGVyPSJwYXVzZUF1dG9Qcm9ncmVzcygpIiBvbm1vdXNlbGVhdmU9InJlc3VtZUF1dG9Qcm9ncmVzcygpIj4NCiAgICAgICAgICAgIDwhLS0gTGVmdCBzaWRlIC0gTmF2aWdhdGlvbiBidXR0b25zIC0tPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0yIj4NCiAgICAgICAgICAgICAgICA8YnV0dG9uIGlkPSJwcmV2LWJ0biIgb25jbGljaz0icHJldmlvdXNQYWdlKCkiIGNsYXNzPSJramoyZCBiZy1ncmFkaWVudC10by1yIGZyb20tYmx1ZS01MDAgdmlhLWJsdWUtNjAwIHRvLWJsdWUtNzAwIGhvdmVyOmZyb20tYmx1ZS02MDAgaG92ZXI6dmlhLWJsdWUtNzAwIGhvdmVyOnRvLWJsdWUtODAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIGRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCBweC00IHB5LTMgcm91bmRlZC1sZyBmb250LW1lZGl1bSIgZGlzYWJsZWQ+DQogICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9InctNSBoLTUgbXItMiBpbmxpbmUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMjQgMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xNSAxOWwtNy03IDctNyIvPg0KICAgICAgICAgICAgICAgICAgICA8L3N2Zz4NCiAgICAgICAgICAgICAgICAgICAg0J/QvtC/0LXRgNC10LTQvdGWDQogICAgICAgICAgICAgICAgPC9idXR0b24+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTMgcmVsYXRpdmUgbXgtNiIgaWQ9InBhZ2luYXRpb24tZG90cyI+DQogICAgICAgICAgICAgICAgICAgIDwhLS0gZG90cyB3aWxsIGJlIHJlbmRlcmVkIGJ5IEpTIC0tPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgPGJ1dHRvbiBpZD0ibmV4dC1idG4iIG9uY2xpY2s9Im5leHRQYWdlKCkiIGNsYXNzPSJramoyZCBiZy1ncmFkaWVudC10by1yIGZyb20tYmx1ZS01MDAgdmlhLWJsdWUtNjAwIHRvLWJsdWUtNzAwIGhvdmVyOmZyb20tYmx1ZS02MDAgaG92ZXI6dmlhLWJsdWUtNzAwIGhvdmVyOnRvLWJsdWUtODAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIGRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCBweC00IHB5LTMgcm91bmRlZC1sZyBmb250LW1lZGl1bSI+DQogICAgICAgICAgICAgICAgICAgINCd0LDRgdGC0YPQv9C90ZYNCiAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0idy01IGgtNSBtbC0yIGlubGluZSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHZpZXdCb3g9IjAgMCAyNCAyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTkgNWw3IDctNyA3Ii8+DQogICAgICAgICAgICAgICAgICAgIDwvc3ZnPg0KICAgICAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDwhLS0gUmlnaHQgc2lkZSAtIFJldmlldyBidXR0b24gLS0+DQogICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9Im9wZW5SZXZpZXdNb2RhbCgpIiBjbGFzcz0iYmctZ3JhZGllbnQtdG8tciBmcm9tLWFtYmVyLTUwMCB2aWEtb3JhbmdlLTUwMCB0by1yZWQtNTAwIGhvdmVyOmZyb20tYW1iZXItNjAwIGhvdmVyOnZpYS1vcmFuZ2UtNjAwIGhvdmVyOnRvLXJlZC02MDAgdGV4dC13aGl0ZSBib3JkZXItMCBzaGFkb3ctbGcgcHgtNiBweS0zIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIGRmbzNrMyI+DQogICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0idy01IGgtNSBtci0yIGlubGluZSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHZpZXdCb3g9IjAgMCAyNCAyNCI+DQogICAgICAgICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNOCAxMmguMDFNMTIgMTJoLjAxTTE2IDEyaC4wMU0yMSAxMmMwIDQuNDE4LTQuMDMgOC05IDhhOS44NjMgOS44NjMgMCAwMS00LjI1NS0uOTQ5TDMgMjBsMS4zOTUtMy43MkMzLjUxMiAxNS4wNDIgMyAxMy41NzQgMyAxMmMwLTQuNDE4IDQuMDMtOCA5LThzOSAzLjU4MiA5IDh6Ii8+DQogICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAg0JfQsNC70LjRiNC40YLQuCDQstGW0LTQs9GD0LoNCiAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgDQogICAgICAgIDwhLS0gUmV2aWV3cyBDb250YWluZXIgLS0+DQogICAgICAgIDxkaXYgY2xhc3M9Im1iLTEyIiBpZD0icmV2aWV3cy1jb250YWluZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InJldmlld3MtcGFnZS0wIiBjbGFzcz0icmV2aWV3cy1wYWdlIGdyaWQgbWQ6Z3JpZC1jb2xzLTIgbGc6Z3JpZC1jb2xzLTMgZ2FwLTYgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQntCUICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCe0LvQtdC60YHQsNC90LTRgCDQlC48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MjAuMDYuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0KHRg9C/0LXRgCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQrtCRICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCu0YDRltC5INCRLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4xMi4wNi4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQn9C10YDQtdC60LDQt9C4INCz0L7RgtGW0LLQutC4INC60L7RgNC40YHRgtGD0Y7RgdGMLCDQutC+0LbQtdC9INGA0LDQtyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQntCiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCe0LvQtdC60YHQsNC90LTRgCDQoi48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MDQuMDYuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0JfQsNCy0LbQtNC4INC/0LjRgtCw0LnRgtC1INC30L3QuNC20LrRgyDwn5GNIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjEwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQgbWItNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMTIgaC0xMiBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgZm9udC1ib2xkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCc0KggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+0JzQuNC60L7Qu9CwINCoLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4yNS4wNS4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQktGB0LUg0YfRltGC0LrQviEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0KLQniAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QotCw0YDQsNGBINCeLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4xNS4wNS4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQpdC+0YDQvtGI0LjQuSDRgdC10YDQstC40YEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0IbQlCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QhtC90LPQsCDQlC48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MDYuMDUuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0KHRg9C/0LXRgCDwn5GNIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icmV2aWV3cy1wYWdlLTEiIGNsYXNzPSJyZXZpZXdzLXBhZ2UgZ3JpZCBtZDpncmlkLWNvbHMtMiBsZzpncmlkLWNvbHMtMyBnYXAtNiBoaWRkZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjEwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQgbWItNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMTIgaC0xMiBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgZm9udC1ib2xkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCi0J4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+0KLQsNGA0LDRgSDQni48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MjkuMDQuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0JDQtNC10LrQstCw0YLQvdC40Lkg0YHQtdGA0LLRltGBIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjEwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQgbWItNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMTIgaC0xMiBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgZm9udC1ib2xkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCR0KUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+0JHQvtCz0LTQsNC9INClLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4yNi4wMi4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQqNC+0YHRgtC40Lkg0L7QsdC80ZbQvSDQt9CwINC+0YHRgtCw0L3QvdGWINC00LLQsCDQvNGW0YHRj9GG0ZYuINCh0YLQsNCx0ZbQu9GM0L3QviDQvdCw0LnQutGA0LDRidC40Lkg0LrRg9GA0YEgVVNEVC9VQUguINCa0L7RiNGC0Lgg0L7RgtGA0LjQvNGD0Y4g0L/RgNC+0YLRj9Cz0L7QvCAxNSDRhdCy0LjQu9C40L0uINCf0YDQvtGB0YLQviDQvdCw0LnQutGA0LDRidGWINC90LAg0YDQuNC90LrRgyEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0IbQnCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QhtGA0LjQvdCwINCcLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4yMi4wMi4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQntCx0LzRltC90Y7QstCw0LvQsCBVU0RUIEVSQzIwINC90LAg0LPQvtGC0ZbQstC60YMg0LIg0KXQsNGA0LrQvtCy0ZYuINCX0YPRgdGC0YDRltGHINC/0YDQvtC50YjQu9CwINCyINCx0LXQt9C/0LXRh9C90L7QvNGDINC80ZbRgdGG0ZYsINCy0YHQtSDRiNCy0LjQtNC60L4g0YLQsCDQv9GA0L7RhNC10YHRltC50L3Qvi4g0JTRj9C60YPRjiEg0J7QsdC+0LImIzAzOTvRj9C30LrQvtCy0L4g0LfQstC10YDQvdGD0YHRjCDRidC1LiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQktCaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCS0LvQsNC00LjRgdC70LDQsiDQmi48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MTguMDIuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0KLQvtC/0L7QstC40Lkg0YHQtdGA0LLRltGBISDQl9CwINGA0ZbQuiDQutC+0YDQuNGB0YLRg9Cy0LDQvdC90Y8g0LbQvtC00L3QuNGFINC/0YDQvtCx0LvQtdC8LiDQntCx0LzRltC90Y7RjiDQstC10LvQuNC60ZYg0YHRg9C80Lgg0LTQu9GPINCx0ZbQt9C90LXRgdGDIC0g0LLRgdC1INC/0YDQvtC30L7RgNC+LCDRlCDQstGB0ZYg0LTQvtC60YPQvNC10L3RgtC4LiDQoNC10LrQvtC80LXQvdC00YPRjiDQv9GW0LTQv9GA0LjRlNC80YbRj9C8ISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQm9CfICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCb0Y7QtNC80LjQu9CwINCfLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4xNC4wMi4yMDI2PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQlNGD0LbQtSDQstC00Y/Rh9C90LAg0LrQvtC80LDQvdC00ZYgRXhjaGFuZ2UhINCS0L/QtdGA0YjQtSDQvtCx0LzRltC90Y7QstCw0LvQsCDQutGA0LjQv9GC0L7QstCw0LvRjtGC0YMsINC00YPQttC1INC/0LXRgNC10LbQuNCy0LDQu9CwLiDQnNC10L3QtdC00LbQtdGAINGB0YPQv9GA0L7QstC+0LTQttGD0LLQsNCyINC90LAg0LrQvtC20L3QvtC80YMg0LrRgNC+0YbRli4g0KHQtdGA0LLRltGBINC90LDQudCy0LjRidC+0LPQviDRgNGW0LLQvdGPISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQn9CTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCf0LDQstC10Lsg0JMuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDimIY8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjExLjAyLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCd0LXQv9C70L7RhdC+0Lkg0YHQtdGA0LLQuNGBLCDQv9C+0LvRjNC30YPRjtGB0Ywg0LLRgtC+0YDQvtC5INGA0LDQty4g0JIg0Y3RgtC+0YIg0YDQsNC3INCx0YvQu9CwINC90LXQsdC+0LvRjNGI0LDRjyDQt9Cw0LTQtdGA0LbQutCwINGBINC/0L7QtNGC0LLQtdGA0LbQtNC10L3QuNC10LwsINC90L4g0LTQtdC90YzQs9C4INC/0L7Qu9GD0YfQuNC7LiDQmtGD0YDRgSDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YDQvtGI0LjQuS4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJyZXZpZXdzLXBhZ2UtMiIgY2xhc3M9InJldmlld3MtcGFnZSBncmlkIG1kOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zIGdhcC02IGhpZGRlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0J7QoCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QntC60YHQsNC90LAg0KAuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjA3LjAyLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCX0LDQvNC+0LLQu9GP0LvQsCDQvtCx0LzRltC9INC90LAg0LHQsNC90LrRltCy0YHRjNC60YMg0LrQsNGA0YLRgy4g0JLRgdC1INGH0ZbRgtC60L4sINCx0LXQtyDQt9Cw0YLRgNC40LzQvtC6LiDQntC/0LXRgNCw0YLQvtGAINCy0LLRltGH0LvQuNCy0LjQuSwg0LTQvtC/0L7QvNGW0LMg0L7QsdGA0LDRgtC4INC+0L/RgtC40LzQsNC70YzQvdC40Lkg0YHQv9C+0YHRltCxINC/0LXRgNC10LrQsNC30YMuIDEwLzEwISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQkNCaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCQ0YDRgtC10Lwg0JouPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjAzLjAyLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCe0LHQvNGW0L0gVVNEVCDQvdCwINGU0LLRgNC+INC/0YDQvtC50YjQvtCyINGH0YPQtNC+0LLQvi4g0J7RgtGA0LjQvNCw0LIg0LPQvtGC0ZbQstC60YMg0YMg0JvRjNCy0L7QstGWINC/0YDQvtGC0Y/Qs9C+0LwgMjAg0YXQstC40LvQuNC9INC/0ZbRgdC70Y8g0LLRltC00L/RgNCw0LLQutC4INC60YDQuNC/0YLQuC4g0JTRg9C20LUg0LfQsNC00L7QstC+0LvQtdC90LjQuSEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0JzQlCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QnNCw0LrRgdC40Lwg0JQuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjMwLjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCS0LbQtSDQv9GW0LLRgNC+0LrRgyDRgtGW0LvRjNC60Lgg0YfQtdGA0LXQtyBFeGNoYW5nZSDQvtCx0LzRltC90Y7RjiDQutGA0LjQv9GC0YMuINCW0L7QtNC90L7Qs9C+INGA0LDQt9GDINC90LUg0L/RltC00LLQtdC70LguINCh0YzQvtCz0L7QtNC90ZYg0L7QsdC80ZbQvSBVU0RUINC90LAg0LTQvtC70LDRgNC4IC0gMTAg0YXQstC40LvQuNC9INGWINCz0YDQvtGI0ZYg0LIg0LrQuNGI0LXQvdGWISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQktCcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCS0ZbQutGC0L7RgNGW0Y8g0JwuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDimIY8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjI2LjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCT0LDRgNC90LjQuSDQvtCx0LzRltC90L3QuNC6LCDQsNC70LUg0ZbQvdC+0LTRliDQtNC+0LLQvtC00LjRgtGM0YHRjyDRh9C10LrQsNGC0Lgg0L7Qv9C10YDQsNGC0L7RgNCwINCyINGH0LXRgNC30ZYuINCSINGW0L3RiNC+0LzRgyDQstGB0LUg0YHRg9C/0LXRgCAtINC60YPRgNGBLCDQsdC10LfQv9C10LrQsCwg0LfRgNGD0YfQvdGW0YHRgtGMLiDQoNC10LrQvtC80LXQvdC00YPRjiEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0JzQlyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QnNC40YXQsNC40Lsg0JcuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjIyLjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCe0LHQvNC10L3QuNCy0LDQuyAyMDAwIFVTRFQg0L3QsCDQvdCw0LvQuNGH0L3Ri9C1INCz0YDQuNCy0L3Riy4g0KHQtNC10LvQutCwINC/0YDQvtGI0LvQsCDQsiDRhtC10L3RgtGA0LUg0J7QtNC10YHRgdGLLCDQstGB0LUg0LHQtdC30L7Qv9Cw0YHQvdC+INC4INCx0YvRgdGC0YDQvi4g0JvRg9GH0YjQuNC5INGB0LXRgNCy0LjRgSwg0L7QtNC90L7Qt9C90LDRh9C90L4gNSDQt9Cy0LXQt9C0ISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQmtCRICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCa0LDRgtC10YDQuNC90LAg0JEuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjE5LjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCd0LDQudC60YDQsNGJ0LjQuSDRgdC10YDQstGW0YEg0LTQu9GPINC+0LHQvNGW0L3RgyDQutGA0LjQv9GC0L7QstCw0LvRjtGCINCyINCj0LrRgNCw0ZfQvdGWISDQn9C+0YHRgtGW0LnQvdC+INC60L7RgNC40YHRgtGD0ZTQvNC+0YHRjCDQtyDRh9C+0LvQvtCy0ZbQutC+0LwuINCa0YPRgNGBINC30LDQstC20LTQuCDQv9GA0LjRlNC80L3QuNC5LCDQutC+0LzRltGB0ZbRjyDQvNGW0L3RltC80LDQu9GM0L3QsC4g0JTRj9C60YPRlNC80L4hIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icmV2aWV3cy1wYWdlLTMiIGNsYXNzPSJyZXZpZXdzLXBhZ2UgZ3JpZCBtZDpncmlkLWNvbHMtMiBsZzpncmlkLWNvbHMtMyBnYXAtNiBoaWRkZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjEwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQgbWItNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMTIgaC0xMiBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgZm9udC1ib2xkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCg0JogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+0KDQvtC80LDQvSDQmi48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKYhjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MTQuMDEuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0J7QsdC80ZbQvdGO0LLQsNCyINCy0LXQu9C40LrRgyDRgdGD0LzRgyDQvdCwINGA0LDRhdGD0L3QvtC6INCk0J7Qny4g0JLRgdC1INC/0YDQvtC30L7RgNC+LCDQvdCw0LTQsNC70Lgg0LfQsNC60YDQuNCy0LDRjtGH0ZYg0LTQvtC60YPQvNC10L3RgtC4LiDQnNGW0L3Rg9GBINC+0LTQvdCwINC30ZbRgNC60LAg0LfQsCDQtNC+0LLQs9GDINCy0LXRgNC40YTRltC60LDRhtGW0Y4sINCw0LvQtSDQsiDRhtGW0LvQvtC80YMg0YHQtdGA0LLRltGBINGC0L7Qvy4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0K7QmyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QrtC70ZbRjyDQmy48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MTEuMDEuMjAyNjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0J/QtdGA0YjQuNC5INGA0LDQtyDQutC+0YDQuNGB0YLRg9Cy0LDQu9Cw0YHRjCDQutGA0LjQv9GC0L7QvtCx0LzRltC90L3QuNC60L7QvCwg0LTRg9C20LUg0YXQstC40LvRjtCy0LDQu9Cw0YHRjC4g0JzQtdC90LXQtNC20LXRgCDQstGB0LUg0LTQtdGC0LDQu9GM0L3QviDQv9C+0Y/RgdC90LjQsiwg0L7Qv9C10YDQsNGG0ZbRjyDQv9GA0L7QudGI0LvQsCDRg9GB0L/RltGI0L3Qvi4g0KLQtdC/0LXRgCDRjyDQstCw0Ygg0L/QvtGB0YLRltC50L3QuNC5INC60LvRltGU0L3RgiEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQVYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+QWxleGFuZGVyIFYuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjA4LjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCe0YLQu9C40YfQvdGL0Lkg0L7QsdC80LXQvdC90LjQuiEg0JzQtdC90Y/QuyBCVEMg0L3QsCBVU0RULCDQutGD0YDRgSDQv9C+0YDQsNC00L7QstCw0LsuINCi0LXRhdC/0L7QtNC00LXRgNC20LrQsCDRgNCw0LHQvtGC0LDQtdGCINC+0L/QtdGA0LDRgtC40LLQvdC+LCDQv9C+0LzQvtCz0LvQuCDRgNCw0LfQvtCx0YDQsNGC0YzRgdGPINC90L7QstC40YfQutGDLiDQodC/0LDRgdC40LHQviEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0KHQoiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QodC10YDQs9GW0Lkg0KIuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjA1LjAxLjIwMjY8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCe0LHQvNGW0L0gVVNEVCBUUkMyMCDQvdCwINCz0L7RgtGW0LLQutGDINC/0YDQvtC50YjQvtCyINCx0LXQt9C00L7Qs9Cw0L3QvdC+LiDQl9GD0YHRgtGA0ZbQu9C40YHRjCDQsiDQmtC40ZTQstGWLCDQstGB0LUg0YfRltGC0LrQviDQt9CwINC00L7QvNC+0LLQu9C10L3RltGB0YLRji4g0KDQtdC60L7QvNC10L3QtNGD0Y4g0YbQtdC5INGB0LXRgNCy0ZbRgSDQtNGA0YPQt9GP0LwhIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIHAtNiBoLWZ1bGwgYmctd2hpdGUvODAgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaG92ZXI6c2hhZG93LXhsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCByb3VuZGVkLWxnIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjEwMCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTQgbWItNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctMTIgaC0xMiBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgZm9udC1ib2xkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCd0KEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+0J3QsNGC0LDQu9GW0Y8g0KEuPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjMwLjEyLjIwMjU8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCU0Y/QutGD0Y4g0LfQsCDQv9GA0L7RhNC10YHRltC+0L3QsNC70ZbQt9C8ISDQntGE0L7RgNC80LvRj9C70LAg0L7QsdC80ZbQvSDQtNC70Y8g0KTQntCfIC0g0LLRgdGWINC00L7QutGD0LzQtdC90YLQuCDQvdCw0LTQsNC70LgsINC60L7RiNGC0Lgg0LfQsNGA0LDRhdGD0LLQsNC70Lgg0YjQstC40LTQutC+LiDQkdGD0LTRgyDQt9Cy0LXRgNGC0LDRgtC40YHRjCDRidC1ISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQktCaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCS0LDRgdC40LvRjCDQmi48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKYhjwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MjYuMTIuMjAyNTwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0JPQsNGA0L3QuNC5INGB0LXRgNCy0ZbRgSDQtNC70Y8g0L7QsdC80ZbQvdGDIFVTRFQg0L3QsCDQs9C+0YLRltCy0LrRgy4g0JLRgdC1INGH0LXRgdC90L4sINCx0LXQtyDQv9GA0LjRhdC+0LLQsNC90LjRhSDQutC+0LzRltGB0ZbQuS4g0ITQtNC40L3QtSDQv9C+0LHQsNC20LDQvdC90Y8gLSDRgNC+0LfRiNC40YDQuNGC0Lgg0YHQv9C40YHQvtC6INC00L7RgdGC0YPQv9C90LjRhSDQutGA0LjQv9GC0L7QstCw0LvRjtGCLiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InJldmlld3MtcGFnZS00IiBjbGFzcz0icmV2aWV3cy1wYWdlIGdyaWQgbWQ6Z3JpZC1jb2xzLTIgbGc6Z3JpZC1jb2xzLTMgZ2FwLTYgaGlkZGVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQotCcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCi0LDRgtGM0Y/QvdCwINCcLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4yMi4xMi4yMDI1PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQntCx0LzQtdC90LjQstCw0Y4g0LrRgNC40L/RgtC+0LLQsNC70Y7RgtGDINGC0L7Qu9GM0LrQviDQt9C00LXRgdGMLiDQl9CwINC/0L7Qu9Cz0L7QtNCwINC90Lgg0L7QtNC90L7QuSDQt9Cw0LTQtdGA0LbQutC4LCDQstGB0LXQs9C00LAg0LvRg9GH0YjQuNC5INC60YPRgNGBINC90LAg0YDRi9C90LrQtS4g0J/QvtC00LTQtdGA0LbQutCwINC+0YLQstC10YfQsNC10YIg0LzQvtC80LXQvdGC0LDQu9GM0L3Qvi4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0IbQkSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QhtCz0L7RgCDQkS48L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXllbGxvdy00MDAiPuKtkOKtkOKtkOKtkOKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCI+MTguMTIuMjAyNTwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC1ncmF5LTYwMCBsZWFkaW5nLXJlbGF4ZWQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi0J3QtdC50LzQvtCy0ZbRgNC90L4g0YjQstC40LTQutC40Lkg0YHQtdGA0LLRltGBISDQktGW0LTQv9GA0LDQstC40LIg0LfQsNGP0LLQutGDINC+IDIzOjAwLCDRh9C10YDQtdC3IDEwINGF0LLQuNC70LjQvSDQstC20LUg0L7RgtGA0LjQvNCw0LIg0LrQvtGI0YLQuCDQvdCwINC60LDRgNGC0YMuIDI0Lzcg0YDQtdCw0LvRjNC90L4g0L/RgNCw0YbRjtGULiDQnNC+0LvQvtC00YbRliEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0J7QkyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QntC70LXQvdCwINCTLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4q2QPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4xMy4xMi4yMDI1PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQktC20LUg0YLRgNC10YLRltC5INGA0LDQtyDQutC+0YDQuNGB0YLRg9GO0YHRjCDQvtCx0LzRltC90L3QuNC60L7QvC4g0J/QvtGB0YLRltC50L3QviDQstC40LPRltC00L3QuNC5INC60YPRgNGBLCDQv9GA0LjQstGW0YLQvdC40Lkg0L/QtdGA0YHQvtC90LDQuy4g0KHRjNC+0LPQvtC00L3RliDQvtCx0LzRltC90Y/Qu9CwIDUwMCBVU0RUINC90LAg0ZTQstGA0L4g0LHQtdC3INC/0YDQvtCx0LvQtdC8ISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciBwLTYgaC1mdWxsIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWRlbGF5PSIxMDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtc3RhcnQgc3BhY2UteC00IG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3LTEyIGgtMTIgYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIGZvbnQtYm9sZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQlNChICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJmb250LXNlbWlib2xkIHRleHQtbGciPtCU0LzQuNGC0YDQuNC5INChLjwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0xIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQteWVsbG93LTQwMCI+4q2Q4q2Q4q2Q4q2Q4piGPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIj4xMC4xMi4yMDI1PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1zbSB0ZXh0LWdyYXktNjAwIGxlYWRpbmctcmVsYXhlZCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICLQpdC+0YDQvtGI0LjQuSDRgdC10YDQstC40YEsINCx0YvRgdGC0YDQviDQvtGC0LLQtdGH0LDRjtGCINCyIFRlbGVncmFtLiDQldC00LjQvdGB0YLQstC10L3QvdGL0Lkg0L3RjtCw0L3RgSAtINGF0L7RgtC10LvQvtGB0Ywg0LHRiyDQsdC+0LvRjNGI0LUg0YHQv9C+0YHQvtCx0L7QsiDQvtC/0LvQsNGC0YsuINCd0L4g0LIg0YbQtdC70L7QvCDRgNC10LrQvtC80LXQvdC00YPRji4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0JzQnyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QnNCw0YDQuNC90LAg0J8uPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjA3LjEyLjIwMjU8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCU0YPQttC1INC30YDRg9GH0L3QuNC5INGB0LXRgNCy0ZbRgSEg0J/RgNC+0LLQtdC70LAg0L7QsdC80ZbQvSDQutGA0LjQv9GC0L7QstCw0LvRjtGC0Lgg0L3QsCDQutCw0YDRgtGDINCf0YDQuNCy0LDRgtCR0LDQvdC60YMuINCa0L7RiNGC0Lgg0L3QsNC00ZbQudGI0LvQuCDQvNC40YLRgtGU0LLQvi4g0JTRj9C60YPRjiDQutC+0LzQsNC90LTRliBFeGNoYW5nZSEiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIgcC02IGgtZnVsbCBiZy13aGl0ZS84MCBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZyBob3ZlcjpzaGFkb3cteGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIHJvdW5kZWQtbGciIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMTAwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLXN0YXJ0IHNwYWNlLXgtNCBtYi00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idy0xMiBoLTEyIGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB0by1ibHVlLTUwMCByb3VuZGVkLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC13aGl0ZSBmb250LWJvbGQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0JDQqCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXgtMSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0iZm9udC1zZW1pYm9sZCB0ZXh0LWxnIj7QkNC90LTRgNGW0Lkg0KguPC9oND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC15ZWxsb3ctNDAwIj7irZDirZDirZDirZDirZA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAiPjAzLjEyLjIwMjU8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtZ3JheS02MDAgbGVhZGluZy1yZWxheGVkIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgItCe0LHQvNGW0L3Rj9CyIFVTRFQg0L3QsCDQs9C+0YLRltCy0LrRgyDQt9CwIDE1INGF0LLQuNC70LjQvS4g0JrRg9GA0YEg0L3QsNC50LrRgNCw0YnQuNC5LCDRj9C60LjQuSDQt9C90LDRhdC+0LTQuNCyINCyINCj0LrRgNCw0ZfQvdGWLiDQnNC10L3QtdC00LbQtdGAINCx0YPQsiDQvdCwINC30LImIzAzOTvRj9C30LrRgyDQstC10YHRjCDRh9Cw0YEuINCg0LXQutC+0LzQtdC90LTRg9GOISINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8IS0tIFN0YXRzIC0tPg0KICAgICAgICA8ZGl2IGNsYXNzPSJiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC01MDAgdmlhLWN5YW4tNTAwIHRvLWJsdWUtNTAwIHJvdW5kZWQtMnhsIHAtOCBzaGFkb3ctMnhsIHRleHQtd2hpdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMzAwIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgZ3JpZC1jb2xzLTIgbWQ6Z3JpZC1jb2xzLTQgZ2FwLTYgdGV4dC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LTR4bCBmb250LWJvbGQgbWItMiI+NC45LzU8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSBvcGFjaXR5LTkwIj7QodC10YDQtdC00L3RjyDQvtGG0ZbQvdC60LA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC00eGwgZm9udC1ib2xkIG1iLTIiPjMwPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gb3BhY2l0eS05MCI+0JLRltC00LPRg9C60ZbQsiDQv9C+0LrQsNC30LDQvdC+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ob3ZlciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtNHhsIGZvbnQtYm9sZCBtYi0yIj45OCU8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSBvcGFjaXR5LTkwIj7Qn9C+0LfQuNGC0LjQstC90LjRhTwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtaG92ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LTR4bCBmb250LWJvbGQgbWItMiI+MTUsMDAwKzwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIG9wYWNpdHktOTAiPtCa0LvRltGU0L3RgtGW0LI8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCg0KPCEtLSBSZXZpZXcgTW9kYWwgKGtlZXBzIHlvdXIgb3JpZ2luYWwgbWFya3VwKSAtLT4NCiAgICA8IS0tIFJldmlldyBNb2RhbCBleGFjdGx5IGxpa2UgaW4gUmVhY3QgLS0+DQogICAgPGRpdiBpZD0icmV2aWV3TW9kYWwiIGNsYXNzPSJtb2RhbCI+DQogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQiPg0KICAgICAgICAgICAgPGRpdiBpZD0icmV2aWV3Rm9ybSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyIG1iLTYiPg0KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InRleHQtMnhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlciBmbGV4LTEiPvCfkqwg0JfQsNC70LjRiNC40YLQuCDQstGW0LTQs9GD0Lo8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9ImNsb3NlUmV2aWV3TW9kYWwoKSIgY2xhc3M9InRleHQtZ3JheS01MDAgaG92ZXI6dGV4dC1ncmF5LTcwMCB0ZXh0LTJ4bCI+JnRpbWVzOzwvYnV0dG9uPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxmb3JtIG9uc3VibWl0PSJzdWJtaXRSZXZpZXcoZXZlbnQpIiBjbGFzcz0ic3BhY2UteS00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBncmlkLWNvbHMtMiBnYXAtNCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9ImZpcnN0TmFtZSIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0IbQvCfRjzwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJmaXJzdE5hbWUiIG5hbWU9ImZpcnN0TmFtZSIgcGxhY2Vob2xkZXI9ItCS0LDRiNC1INGW0Lwn0Y8iIHJlcXVpcmVkIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0idy1mdWxsIGJvcmRlci0yIGJvcmRlci10ZWFsLTIwMCBmb2N1czpib3JkZXItdGVhbC00MDAgaC0xMCBweC0zIHJvdW5kZWQtbGciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Imxhc3ROYW1lIiBjbGFzcz0iYmxvY2sgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LWdyYXktNzAwIj7Qn9GA0ZbQt9Cy0LjRidC1PC9sYWJlbD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Imxhc3ROYW1lIiBuYW1lPSJsYXN0TmFtZSIgcGxhY2Vob2xkZXI9ItCS0LDRiNC1INC/0YDRltC30LLQuNGJ0LUiIHJlcXVpcmVkIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0idy1mdWxsIGJvcmRlci0yIGJvcmRlci1jeWFuLTIwMCBmb2N1czpib3JkZXItY3lhbi00MDAgaC0xMCBweC0zIHJvdW5kZWQtbGciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2UteS0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9ImVtYWlsIiBjbGFzcz0iYmxvY2sgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LWdyYXktNzAwIj5FbWFpbDwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iZW1haWwiIGlkPSJlbWFpbCIgbmFtZT0iZW1haWwiIHBsYWNlaG9sZGVyPSJ5b3VyQGVtYWlsLmNvbSIgcmVxdWlyZWQgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9InctZnVsbCBib3JkZXItMiBib3JkZXItYmx1ZS0yMDAgZm9jdXM6Ym9yZGVyLWJsdWUtNDAwIGgtMTAgcHgtMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAgZmxleCBpdGVtcy1jZW50ZXIgc3BhY2UteC0yIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7QntGG0ZbQvdC60LA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InJhdGluZy1oaW50IiBjbGFzcz0idGV4dC14cyB0ZXh0LWdyYXktNTAwIj4o0L3QsNGC0LjRgdC90ZbRgtGMINC90LAg0LfRltGA0L7Rh9C60YMpPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXItcmF0aW5nIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhciIgZGF0YS1yYXRpbmc9IjEiPuKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhciIgZGF0YS1yYXRpbmc9IjIiPuKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhciIgZGF0YS1yYXRpbmc9IjMiPuKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhciIgZGF0YS1yYXRpbmc9IjQiPuKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhciIgZGF0YS1yYXRpbmc9IjUiPuKtkDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9InJhdGluZy1mZWVkYmFjayIgY2xhc3M9InRleHQtY2VudGVyIHRleHQtc20gdGV4dC10ZWFsLTYwMCBoaWRkZW4iPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZS15LTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0icmV2aWV3VGV4dCIgY2xhc3M9ImJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMCI+0JLQsNGIINCy0ZbQtNCz0YPQujwvbGFiZWw+DQogICAgICAgICAgICAgICAgICAgICAgICA8dGV4dGFyZWEgaWQ9InJldmlld1RleHQiIG5hbWU9InJldmlld1RleHQiIHJvd3M9IjQiIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSLQn9C+0LTRltC70ZbRgtGM0YHRjyDRgdCy0L7Rl9C8INC00L7RgdCy0ZbQtNC+0Lwg0LLQuNC60L7RgNC40YHRgtCw0L3QvdGPINC90LDRiNC+0LPQviDRgdC10YDQstGW0YHRgy4uLiIgcmVxdWlyZWQgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9InctZnVsbCBib3JkZXItMiBib3JkZXItcHVycGxlLTIwMCBmb2N1czpib3JkZXItcHVycGxlLTQwMCBweC0zIHB5LTIgcm91bmRlZC1sZyI+PC90ZXh0YXJlYT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGp1c3RpZnktZW5kIHNwYWNlLXgtMiBwdC00Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJjbG9zZVJldmlld01vZGFsKCkiIGNsYXNzPSJib3JkZXIgYm9yZGVyLWdyYXktMzAwIHRleHQtZ3JheS03MDAgaG92ZXI6YmctZ3JheS01MCBweC00IHB5LTIgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg0KHQutCw0YHRg9Cy0LDRgtC4DQogICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0IiBpZD0ic3VibWl0UmV2aWV3QnRuIiBjbGFzcz0iYnRuLWdyYWRpZW50IGJnLWdyYWRpZW50LXRvLXIgZnJvbS10ZWFsLTUwMCB2aWEtY3lhbi01MDAgdG8tYmx1ZS01MDAgaG92ZXI6ZnJvbS10ZWFsLTYwMCBob3Zlcjp2aWEtY3lhbi02MDAgaG92ZXI6dG8tYmx1ZS02MDAgdGV4dC13aGl0ZSBib3JkZXItMCBweC00IHB5LTIgcm91bmRlZC1sZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg4q2QINCS0ZbQtNC/0YDQsNCy0LjRgtC4INCy0ZbQtNCz0YPQug0KICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZm9ybT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgICAgICA8ZGl2IGlkPSJyZXZpZXdTdWNjZXNzIiBjbGFzcz0idGV4dC1jZW50ZXIgcHktOCBoaWRkZW4iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN1Y2Nlc3MtY2hlY2ttYXJrIHRleHQtdGVhbC01MDAgdGV4dC02eGwgbWItNiI+4pyTPC9kaXY+DQogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJ0ZXh0LTJ4bCBmb250LWJvbGQgbWItMyBiZy1ncmFkaWVudC10by1yIGZyb20tdGVhbC02MDAgdmlhLWN5YW4tNjAwIHRvLWJsdWUtNjAwIGJnLWNsaXAtdGV4dCB0ZXh0LXRyYW5zcGFyZW50Ij4NCiAgICAgICAgICAgICAgICAgICAg0JTRj9C60YPRlNC80L4g0LfQsCDQstGW0LTQs9GD0LohIPCfjJ8NCiAgICAgICAgICAgICAgICA8L2gzPg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWdyYXktNjAwIG1iLTQiPg0KICAgICAgICAgICAgICAgICAgICDQktCw0Ygg0LLRltC00LPRg9C6INGD0YHQv9GW0YjQvdC+INCy0ZbQtNC/0YDQsNCy0LvQtdC90LjQuSDQvdCwINC80L7QtNC10YDQsNGG0ZbRji4g0J/RltGB0LvRjyDQv9C10YDQtdCy0ZbRgNC60Lgg0LLRltC9INC3J9GP0LLQuNGC0YzRgdGPINC90LAg0YHQsNC50YLRli4NCiAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmctZ3JhZGllbnQtdG8tciBmcm9tLXRlYWwtMTAwIHZpYS1jeWFuLTEwMCB0by1ibHVlLTEwMCByb3VuZGVkLWxnIHAtNCI+DQogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIHRleHQtdGVhbC03MDAiPg0KICAgICAgICAgICAgICAgICAgICAgICAg0J/RltGB0LvRjyDQvNC+0LTQtdGA0LDRhtGW0Zcg0LLQsNGIINCy0ZbQtNCz0YPQuiDQtyfRj9Cy0LjRgtGM0YHRjyDQvdCwINGB0LDQudGC0ZYhIPCfkpkNCiAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCjxzY3JpcHQ+DQovKiBGcm9udGVuZCBzY3JpcHQgKHBhc3RlIGludG8gcGFnZSwga2VlcHMgeW91ciBjbGFzc2VzL0lEcy9zdHlsZSkgKi8NCg0KLyogUGFnaW5hdGlvbiBhbmQgcmV2aWV3IHZhcmlhYmxlcyBwb3B1bGF0ZWQgZnJvbSBQSFAgKi8NCmxldCBjdXJyZW50UmV2aWV3UGFnZSA9IDA7DQpsZXQgdG90YWxSZXZpZXdQYWdlcyA9IDU7DQpsZXQgcmV2aWV3c1BlclBhZ2UgPSA2Ow0KbGV0IHRvdGFsUmV2aWV3cyA9IDMwOw0KbGV0IGF1dG9Qcm9ncmVzc0ludGVydmFsID0gbnVsbDsNCmxldCBpc1BhdXNlZCA9IGZhbHNlOw0KbGV0IHNlbGVjdGVkUmF0aW5nID0gMDsNCg0KY29uc3QgUkVWSUVXX0VORFBPSU5UID0gJy90ZWxlZ3JhbV93ZWJob29rLnBocCc7IC8vIEFKQVggdGFyZ2V0IHRvIHNhdmUgcmV2aWV3IGFuZCBzZW5kIG1vZGVyYXRpb24gdG8gVGVsZWdyYW0NCg0KLy8gSW5pdGlhbGl6ZSBBT1MgaWYgYXZhaWxhYmxlDQppZiAod2luZG93LkFPUykgew0KICAgIEFPUy5pbml0KHsgZHVyYXRpb246IDYwMCwgb25jZTogdHJ1ZSwgb2Zmc2V0OiAxMDAgfSk7DQp9DQoNCmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHsNCiAgICBpbml0aWFsaXplUGFnaW5hdGlvbigpOw0KICAgIGluaXRTdGFycygpOw0KfSk7DQoNCi8vIFBhZ2luYXRpb24NCmZ1bmN0aW9uIGluaXRpYWxpemVQYWdpbmF0aW9uKCkgew0KICAgIHJlbmRlclBhZ2luYXRpb25Eb3RzKCk7DQogICAgdXBkYXRlUGFnaW5hdGlvblVJKCk7DQogICAgc3RhcnRBdXRvUHJvZ3Jlc3MoKTsNCiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgZnVuY3Rpb24oZXZlbnQpIHsNCiAgICAgICAgY29uc3QgbW9kYWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmV2aWV3TW9kYWwnKTsNCiAgICAgICAgaWYgKG1vZGFsICYmIG1vZGFsLnN0eWxlLmRpc3BsYXkgPT09ICdibG9jaycpIHJldHVybjsNCiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0Fycm93TGVmdCcgJiYgY3VycmVudFJldmlld1BhZ2UgPiAwKSBwcmV2aW91c1BhZ2UoKTsNCiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0Fycm93UmlnaHQnICYmIGN1cnJlbnRSZXZpZXdQYWdlIDwgdG90YWxSZXZpZXdQYWdlcyAtIDEpIG5leHRQYWdlKCk7DQogICAgfSk7DQp9DQoNCmZ1bmN0aW9uIHJlbmRlclBhZ2luYXRpb25Eb3RzKCkgew0KICAgIGNvbnN0IGNvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdpbmF0aW9uLWRvdHMnKTsNCiAgICBjb250YWluZXIuaW5uZXJIVE1MID0gJyc7DQogICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0b3RhbFJldmlld1BhZ2VzOyBpKyspIHsNCiAgICAgICAgY29uc3QgYnRuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7DQogICAgICAgIGJ0bi5jbGFzc05hbWUgPSAncGFnaW5hdGlvbi1kb3Qgdy0zIGgtMyByb3VuZGVkLWZ1bGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIGJnLWdyYXktMzAwIGhvdmVyOmJnLWdyYWRpZW50LXRvLXIgaG92ZXI6ZnJvbS1ibHVlLTMwMCBob3Zlcjp0by1ibHVlLTUwMCc7DQogICAgICAgIGJ0bi5vbmNsaWNrID0gKGZ1bmN0aW9uKHBhZ2UpeyByZXR1cm4gZnVuY3Rpb24oKXsgZ29Ub1BhZ2UocGFnZSk7IH07IH0pKGkpOw0KICAgICAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQoYnRuKTsNCiAgICB9DQp9DQoNCmZ1bmN0aW9uIHByZXZpb3VzUGFnZSgpIHsgaWYgKGN1cnJlbnRSZXZpZXdQYWdlID4gMCkgeyBnb1RvUGFnZShjdXJyZW50UmV2aWV3UGFnZSAtIDEpOyBwYXVzZUF1dG9Qcm9ncmVzcygzMDAwKTsgfSB9DQpmdW5jdGlvbiBuZXh0UGFnZSgpIHsgaWYgKGN1cnJlbnRSZXZpZXdQYWdlIDwgdG90YWxSZXZpZXdQYWdlcyAtIDEpIHsgZ29Ub1BhZ2UoY3VycmVudFJldmlld1BhZ2UgKyAxKTsgcGF1c2VBdXRvUHJvZ3Jlc3MoMzAwMCk7IH0gfQ0KDQpmdW5jdGlvbiBnb1RvUGFnZShwYWdlTnVtYmVyKSB7DQogICAgaWYgKHBhZ2VOdW1iZXIgPCAwIHx8IHBhZ2VOdW1iZXIgPj0gdG90YWxSZXZpZXdQYWdlcyB8fCBwYWdlTnVtYmVyID09PSBjdXJyZW50UmV2aWV3UGFnZSkgcmV0dXJuOw0KICAgIGNvbnN0IGN1ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGByZXZpZXdzLXBhZ2UtJHtjdXJyZW50UmV2aWV3UGFnZX1gKTsNCiAgICBpZiAoY3VyKSBjdXIuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7DQogICAgY3VycmVudFJldmlld1BhZ2UgPSBwYWdlTnVtYmVyOw0KICAgIGNvbnN0IG5leHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgcmV2aWV3cy1wYWdlLSR7Y3VycmVudFJldmlld1BhZ2V9YCk7DQogICAgaWYgKG5leHQpIG5leHQuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7DQogICAgdXBkYXRlUGFnaW5hdGlvblVJKCk7DQogICAgc2V0VGltZW91dCgoKSA9PiB7IGlmICh3aW5kb3cuQU9TKSBBT1MucmVmcmVzaCgpOyB9LCAxMDApOw0KfQ0KDQpmdW5jdGlvbiB1cGRhdGVQYWdpbmF0aW9uVUkoKSB7DQogICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnBhZ2luYXRpb24tZG90JykuZm9yRWFjaCgoZG90LCBpbmRleCkgPT4gew0KICAgICAgICBpZiAoaW5kZXggPT09IGN1cnJlbnRSZXZpZXdQYWdlKSB7DQogICAgICAgICAgICBkb3QuY2xhc3NOYW1lID0gJ3BhZ2luYXRpb24tZG90IGFjdGl2ZSB3LTMgaC0zIHJvdW5kZWQtZnVsbCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgYmctZ3JhZGllbnQtdG8tciBmcm9tLWJsdWUtNTAwIHRvLWJsdWUtNzAwIHNjYWxlLTEyNSBzaGFkb3ctbGcgc2hhZG93LWJsdWUtNTAwLzUwJzsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGRvdC5jbGFzc05hbWUgPSAncGFnaW5hdGlvbi1kb3Qgdy0zIGgtMyByb3VuZGVkLWZ1bGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwIGJnLWdyYXktMzAwIGhvdmVyOmJnLWdyYWRpZW50LXRvLXIgaG92ZXI6ZnJvbS1ibHVlLTMwMCBob3Zlcjp0by1ibHVlLTUwMCc7DQogICAgICAgIH0NCiAgICB9KTsNCiAgICBjb25zdCBwcmV2QnRuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ByZXYtYnRuJyk7DQogICAgY29uc3QgbmV4dEJ0biA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduZXh0LWJ0bicpOw0KICAgIGlmIChwcmV2QnRuKSBwcmV2QnRuLmRpc2FibGVkID0gY3VycmVudFJldmlld1BhZ2UgPT09IDA7DQogICAgaWYgKG5leHRCdG4pIG5leHRCdG4uZGlzYWJsZWQgPSBjdXJyZW50UmV2aWV3UGFnZSA9PT0gdG90YWxSZXZpZXdQYWdlcyAtIDE7DQp9DQoNCmZ1bmN0aW9uIHN0YXJ0QXV0b1Byb2dyZXNzKCkgeyBpZiAoYXV0b1Byb2dyZXNzSW50ZXJ2YWwpIGNsZWFySW50ZXJ2YWwoYXV0b1Byb2dyZXNzSW50ZXJ2YWwpOyBhdXRvUHJvZ3Jlc3NJbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHsgaWYgKCFpc1BhdXNlZCkgeyBjb25zdCBuZXh0UGFnZU51bSA9IChjdXJyZW50UmV2aWV3UGFnZSArIDEpICUgdG90YWxSZXZpZXdQYWdlczsgZ29Ub1BhZ2UobmV4dFBhZ2VOdW0pOyB9IH0sIDEwMDAwKTsgfQ0KZnVuY3Rpb24gcGF1c2VBdXRvUHJvZ3Jlc3MocmVzdW1lQWZ0ZXIgPSBudWxsKSB7IGlzUGF1c2VkID0gdHJ1ZTsgaWYgKHJlc3VtZUFmdGVyKSBzZXRUaW1lb3V0KCgpID0+IHJlc3VtZUF1dG9Qcm9ncmVzcygpLCByZXN1bWVBZnRlcik7IH0NCmZ1bmN0aW9uIHJlc3VtZUF1dG9Qcm9ncmVzcygpIHsgaXNQYXVzZWQgPSBmYWxzZTsgfQ0KDQovLyBNb2RhbCAmIHN0YXJzDQpmdW5jdGlvbiBvcGVuUmV2aWV3TW9kYWwoKSB7IGNvbnN0IG0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmV2aWV3TW9kYWwnKTsgaWYgKG0pIHsgbS5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnOyByZXNldFJldmlld0Zvcm0oKTsgfSB9DQpmdW5jdGlvbiBjbG9zZVJldmlld01vZGFsKCkgeyBjb25zdCBtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jldmlld01vZGFsJyk7IGlmIChtKSB7IG0uc3R5bGUuZGlzcGxheSA9ICdub25lJzsgcmVzZXRSZXZpZXdGb3JtKCk7IH0gfQ0KDQpmdW5jdGlvbiByZXNldFJldmlld0Zvcm0oKSB7DQogICAgY29uc3QgZm9ybVdyYXAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmV2aWV3Rm9ybScpOw0KICAgIGNvbnN0IHN1Y2MgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmV2aWV3U3VjY2VzcycpOw0KICAgIGlmIChmb3JtV3JhcCkgZm9ybVdyYXAuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7DQogICAgaWYgKHN1Y2MpIHN1Y2MuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7DQogICAgY29uc3QgZnJtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3Jldmlld01vZGFsIGZvcm0nKTsNCiAgICBpZiAoZnJtKSBmcm0ucmVzZXQoKTsNCiAgICBzZWxlY3RlZFJhdGluZyA9IDA7DQogICAgdXBkYXRlU3RhcnMoKTsNCn0NCg0KZnVuY3Rpb24gaW5pdFN0YXJzKCkgew0KICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5zdGFyJykuZm9yRWFjaChzdGFyID0+IHsNCiAgICAgICAgc3Rhci5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKCkgeyBzZWxlY3RlZFJhdGluZyA9IHBhcnNlSW50KHRoaXMuZGF0YXNldC5yYXRpbmcpOyB1cGRhdGVTdGFycygpOyB9KTsNCiAgICAgICAgc3Rhci5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWVudGVyJywgZnVuY3Rpb24oKSB7IGNvbnN0IGhvdmVyUmF0aW5nID0gcGFyc2VJbnQodGhpcy5kYXRhc2V0LnJhdGluZyk7IHVwZGF0ZVN0YXJzKGhvdmVyUmF0aW5nKTsgfSk7DQogICAgfSk7DQogICAgY29uc3Qgc3IgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc3Rhci1yYXRpbmcnKTsNCiAgICBpZiAoc3IpIHNyLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBmdW5jdGlvbigpeyB1cGRhdGVTdGFycygpOyB9KTsNCn0NCg0KZnVuY3Rpb24gdXBkYXRlU3RhcnMoaG92ZXJSYXRpbmcgPSBudWxsKSB7DQogICAgY29uc3QgcmF0aW5nID0gaG92ZXJSYXRpbmcgfHwgc2VsZWN0ZWRSYXRpbmc7DQogICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnN0YXInKS5mb3JFYWNoKChzdGFyLCBpbmRleCkgPT4geyBpZiAoaW5kZXggPCByYXRpbmcpIHN0YXIuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7IGVsc2Ugc3Rhci5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsgfSk7DQogICAgY29uc3QgZmVlZGJhY2sgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmF0aW5nLWZlZWRiYWNrJyk7DQogICAgY29uc3QgaGludCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyYXRpbmctaGludCcpOw0KICAgIGlmIChzZWxlY3RlZFJhdGluZyA+IDAgJiYgIWhvdmVyUmF0aW5nKSB7IGlmIChmZWVkYmFjaykgeyBmZWVkYmFjay50ZXh0Q29udGVudCA9IGDQktCw0YjQsCDQvtGG0ZbQvdC60LA6ICR7c2VsZWN0ZWRSYXRpbmd9INC3IDUg0LfRltGA0L7QuiDirZBgOyBmZWVkYmFjay5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTsgZmVlZGJhY2suc3R5bGUuZGlzcGxheSA9ICdibG9jayc7IH0gaWYgKGhpbnQpIGhpbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJzsgfQ0KICAgIGVsc2UgaWYgKHNlbGVjdGVkUmF0aW5nID09PSAwKSB7IGlmIChmZWVkYmFjaykgeyBmZWVkYmFjay5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTsgZmVlZGJhY2suc3R5bGUuZGlzcGxheSA9ICdub25lJzsgfSBpZiAoaGludCkgaGludC5zdHlsZS5kaXNwbGF5ID0gJ2lubGluZSc7IH0NCn0NCg0KLy8gQUpBWCBzdWJtaXQgcmV2aWV3IC0+IHNlbmRzIHRvIHRlbGVncmFtX3dlYmhvb2sucGhwIHdoaWNoIHN0b3JlcyByZXZpZXcgYW5kIHNlbmRzIG1vZGVyYXRpb24gbWVzc2FnZQ0KYXN5bmMgZnVuY3Rpb24gc3VibWl0UmV2aWV3KGV2ZW50KSB7DQogICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsNCiAgICBpZiAoc2VsZWN0ZWRSYXRpbmcgPT09IDApIHsgYWxlcnQoJ9CR0YPQtNGMINC70LDRgdC60LAsINC+0LHQtdGA0ZbRgtGMINC+0YbRltC90LrRgycpOyByZXR1cm47IH0NCiAgICBjb25zdCBzdWJtaXRCdG4gPSBldmVudC50YXJnZXQucXVlcnlTZWxlY3RvcignYnV0dG9uW3R5cGU9InN1Ym1pdCJdJyk7DQogICAgY29uc3Qgb3JpZ2luYWxUZXh0ID0gc3VibWl0QnRuID8gc3VibWl0QnRuLmlubmVySFRNTCA6ICcnOw0KICAgIGlmIChzdWJtaXRCdG4pIHsgc3VibWl0QnRuLmlubmVySFRNTCA9ICfij7Mg0JLRltC00L/RgNCw0LLQu9GP0ZTQvNC+Li4uJzsgc3VibWl0QnRuLmRpc2FibGVkID0gdHJ1ZTsgfQ0KDQogICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoZXZlbnQudGFyZ2V0KTsNCiAgICBjb25zdCBwYXlsb2FkID0gew0KICAgICAgICBmaXJzdE5hbWU6IGZvcm1EYXRhLmdldCgnZmlyc3ROYW1lJyksDQogICAgICAgIGxhc3ROYW1lOiBmb3JtRGF0YS5nZXQoJ2xhc3ROYW1lJyksDQogICAgICAgIGVtYWlsOiBmb3JtRGF0YS5nZXQoJ2VtYWlsJyksDQogICAgICAgIHJhdGluZzogc2VsZWN0ZWRSYXRpbmcsDQogICAgICAgIHJldmlld1RleHQ6IGZvcm1EYXRhLmdldCgncmV2aWV3VGV4dCcpDQogICAgfTsNCg0KICAgIHRyeSB7DQogICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFJFVklFV19FTkRQT0lOVCwgew0KICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsDQogICAgICAgICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSwNCiAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpDQogICAgICAgIH0pOw0KICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzLmpzb24oKTsNCiAgICAgICAgaWYgKGRhdGEub2spIHsNCiAgICAgICAgICAgIC8vIHN1Y2Nlc3MgVUkNCiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXZpZXdGb3JtJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsNCiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXZpZXdTdWNjZXNzJykuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7DQogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgY2xvc2VSZXZpZXdNb2RhbCgpOyB9LCAzMDAwKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGFsZXJ0KCfQn9C+0LzQuNC70LrQsCDQstGW0LTQv9GA0LDQstC60LguINCh0L/RgNC+0LHRg9C50YLQtSDRidC1INGA0LDQty4nKTsNCiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZGF0YSk7DQogICAgICAgIH0NCiAgICB9IGNhdGNoIChlKSB7DQogICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7DQogICAgICAgIGFsZXJ0KCfQn9C+0LzQuNC70LrQsCDQvNC10YDQtdC20ZYuINCh0L/RgNC+0LHRg9C50YLQtSDRidC1INGA0LDQty4nKTsNCiAgICB9IGZpbmFsbHkgew0KICAgICAgICBpZiAoc3VibWl0QnRuKSB7IHN1Ym1pdEJ0bi5pbm5lckhUTUwgPSBvcmlnaW5hbFRleHQ7IHN1Ym1pdEJ0bi5kaXNhYmxlZCA9IGZhbHNlOyB9DQogICAgfQ0KfQ0KDQovLyBjbG9zZSBtb2RhbCBvbiBvdXRzaWRlIGNsaWNrDQp3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihldmVudCkgew0KICAgIGNvbnN0IHJldmlld01vZGFsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jldmlld01vZGFsJyk7DQogICAgaWYgKCFyZXZpZXdNb2RhbCkgcmV0dXJuOw0KICAgIGlmIChldmVudC50YXJnZXQgPT09IHJldmlld01vZGFsKSBjbG9zZVJldmlld01vZGFsKCk7DQp9KTsNCjwvc2NyaXB0Pg0KDQoNCiAgICA8IS0tIENvbnRhY3RzIFNlY3Rpb24gLS0+DQogICAgPHNlY3Rpb24gaWQ9ImNvbnRhY3RzIiBjbGFzcz0icHktMjAgYmctZ3JhZGllbnQtdG8tYnIgZnJvbS1pbmRpZ28tNTAgdmlhLXB1cnBsZS01MCB0by1waW5rLTUwIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIG14LWF1dG8gcHgtNCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciBtYi0xMiIgZGF0YS1hb3M9ImZhZGUtdXAiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0idGV4dC01eGwgZm9udC1ib2xkIG1iLTQgYmctZ3JhZGllbnQtdG8tciBmcm9tLWluZGlnby02MDAgdmlhLXB1cnBsZS02MDAgdG8tcGluay02MDAgYmctY2xpcC10ZXh0IHRleHQtdHJhbnNwYXJlbnQiPg0KICAgICAgICAgICAgICAgICAgICDQmtC+0L3RgtCw0LrRgtC4DQogICAgICAgICAgICAgICAgPC9oMj4NCiAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC14bCB0ZXh0LWdyYXktNjAwIj4NCiAgICAgICAgICAgICAgICAgICAg0JfQsifRj9C20ZbRgtGM0YHRjyDQtyDQvdCw0LzQuCDRh9C10YDQtdC3IFRlbGVncmFtDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1heC13LW1kIG14LWF1dG8iIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kZWxheT0iMjAwIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhvdmVyIGJnLXdoaXRlLzgwIGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGhvdmVyOnNoYWRvdy14bCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgcm91bmRlZC1sZyBwLTgiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdGF0ZSB3LTE2IGgtMTYgYmctZ3JhZGllbnQtdG8tciBmcm9tLWJsdWUtNTAwIHRvLXB1cnBsZS01MDAgcm91bmRlZC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIG14LWF1dG8gbWItNCBzaGFkb3ctbGciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9InctOCBoLTggdGV4dC13aGl0ZSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHZpZXdCb3g9IjAgMCAyNCAyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNOCAxMmguMDFNMTIgMTJoLjAxTTE2IDEyaC4wMU0yMSAxMmMwIDQuNDE4LTQuMDMgOC05IDhhOS44NjMgOS44NjMgMCAwMS00LjI1NS0uOTQ5TDMgMjBsMS4zOTUtMy43MkMzLjUxMiAxNS4wNDIgMyAxMy41NzQgMyAxMmMwLTQuNDE4IDQuMDMtOCA5LThzOSAzLjU4MiA5IDh6Ii8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGV4dC0yeGwgZm9udC1ib2xkIG1iLTIiPlRlbGVncmFtPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWdyYXktNjAwIG1iLTYiPtCd0LDQudGI0LLQuNC00YjQuNC5INGB0L/QvtGB0ZbQsSDQt9CyJ9GP0LfQutGDPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJ3aW5kb3cub3BlbignaHR0cHM6Ly90Lm1lL2V4X2NoYW5nZXVhJywgJ19ibGFuaycpIiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImJ0bi1ncmFkaWVudCBiZy1ncmFkaWVudC10by1yIGZyb20tYmx1ZS01MDAgdG8tcHVycGxlLTUwMCB0ZXh0LXdoaXRlIGJvcmRlci0wIGhvdmVyOmZyb20tYmx1ZS02MDAgaG92ZXI6dG8tcHVycGxlLTYwMCB0ZXh0LWxnIHB4LTggcHktMyByb3VuZGVkLWxnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZXhfY2hhbmdldWENCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L3NlY3Rpb24+DQoNCiAgICA8IS0tIEZvb3RlciAtLT4NCiAgICA8Zm9vdGVyIGNsYXNzPSJiZy1ncmFkaWVudC10by1iciBmcm9tLWdyYXktOTAwIHZpYS1wdXJwbGUtOTAwIHRvLWJsdWUtOTAwIHB0LTggcGItNiB0ZXh0LXdoaXRlIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIG14LWF1dG8gcHgtNCI+DQogICAgICAgICAgICA8IS0tIENvbXBhbnkgSW5mbyAtLT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtY2VudGVyIG1iLTgiIGRhdGEtYW9zPSJmYWRlLXVwIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBzcGFjZS14LTIgbWItNCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InctOCBoLTggYmctZ3JhZGllbnQtdG8tciBmcm9tLXB1cnBsZS01MDAgdG8tYmx1ZS01MDAgcm91bmRlZC1sZyBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC13aGl0ZSBmb250LWJvbGQiPkU8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZm9udC1ib2xkIHRleHQteGwgdGV4dC13aGl0ZSI+RXhjaGFuZ2U8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gdGV4dC13aGl0ZS83MCBtYXgtdy1tZCBteC1hdXRvIj4NCiAgICAgICAgICAgICAgICAgICAg0J3QsNC00ZbQudC90LjQuSDRg9C60YDQsNGX0L3RgdGM0LrQuNC5INGB0LXRgNCy0ZbRgSDQtNC70Y8g0L7QsdC80ZbQvdGDINC60YDQuNC/0YLQvtCy0LDQu9GO0YIuINCR0LXQt9C/0LXRh9C90L4sINGI0LLQuNC00LrQviwg0LLQuNCz0ZbQtNC90L4uDQogICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJvcmRlci10IGJvcmRlci13aGl0ZS8yMCBtYi02Ij48L2Rpdj4NCg0KICAgICAgICAgICAgPCEtLSBCb3R0b20gRm9vdGVyIC0tPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1jZW50ZXIgc3BhY2UteS00IiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZGVsYXk9IjIwMCI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSB0ZXh0LXdoaXRlLzcwIj4NCiAgICAgICAgICAgICAgICAgICAgwqkgMjAyNCBFeGNoYW5nZS4g0JLRgdGWINC/0YDQsNCy0LAg0LfQsNGF0LjRidC10L3Rli4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIHRleHQtd2hpdGUvNzAgYW5pbWF0ZS1wdWxzZSI+DQogICAgICAgICAgICAgICAgICAgIOKaoSDQmtGD0YDRgdC4INC+0L3QvtCy0LvRjtGO0YLRjNGB0Y8g0LrQvtC20L3RliAzMCDRgdC10LrRg9C90LQNCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8IS0tIERpc2NsYWltZXIgLS0+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC02IHB0LTYgYm9yZGVyLXQgYm9yZGVyLXdoaXRlLzIwIj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9Pcmdhbml6YXRpb24iPg0KICAgIDxwIGNsYXNzPSJ0ZXh0LWNlbnRlciI+DQogICAgICDQl9GA0L7QsdC70LXQvdC+INC3INC70Y7QsdC+0LIn0Y4NCiAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd2Vic2llbnNlLmNvbSIgaXRlbXByb3A9InVybCIgdGl0bGU9IldlYnNpZW5zZSDigJQg0LLQtdCxLdGB0YLRg9C00ZbRjyI+DQogICAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj53ZWJzaWVuc2U8L3NwYW4+DQogICAgICA8L2E+DQogICAgPC9wPg0KICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Zvb3Rlcj4NCg0KPHNjcmlwdD4NCi8qINCn0LjRgdGC0YvQuSDRgdC60YDQuNC/0YIg4oCUINGC0L7Qu9GM0LrQviDRhNC+0YDQvNCwINC+0LHQvNC10L3QsCArINC+0YLQv9GA0LDQstC60LAg0LIgVGVsZWdyYW0gKyDRgtCw0LHRiy/QstCw0LvRjtGC0LAgKi8NCg0KLyogR2xvYmFsIHN0YXRlICovDQpsZXQgY3VycmVudFRhYiA9ICdjYXNoJzsNCmxldCBzZWxlY3RlZEN1cnJlbmN5ID0gJ3VzZHQtdHJjMjAnOw0KDQovKiBUZWxlZ3JhbSBjb25maWcgLSBzdG9yZWQgaW4gc2VwYXJhdGUgY29uZmlnIGZpbGUsIGxvYWRlZCB2aWEgZW5kcG9pbnQgKi8NCmNvbnN0IEVYQ0hBTkdFX0VORFBPSU5UID0gJy90ZWxlZ3JhbV93ZWJob29rLnBocCc7DQoNCi8qIEluaXQgQU9TINC10YHQu9C4INC/0L7QtNC60LvRjtGH0ZHQvSAqLw0KaWYgKHdpbmRvdy5BT1MpIHsNCiAgQU9TLmluaXQoeyBkdXJhdGlvbjogNjAwLCBvbmNlOiB0cnVlLCBvZmZzZXQ6IDEwMCB9KTsNCn0NCg0KLyog0JjQvdC40YbQuNCw0LvQuNC30LDRhtC40Y8g0L/RgNC4INC30LDQs9GA0YPQt9C60LUgKi8NCmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHsNCiAgdHJ5IHsgc2hvd1RhYignY2FzaCcpOyB9IGNhdGNoKGUpeyAvKiBpZ25vcmUgaWYgbm8gdGFicyBpbiBtYXJrdXAgKi8gfQ0KICB0cnkgeyBzZWxlY3RDdXJyZW5jeSgndXNkdC10cmMyMCcpOyB9IGNhdGNoKGUpeyAvKiBpZ25vcmUgKi8gfQ0KfSk7DQoNCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgVGFiIHN3aXRjaGluZyAoY2FzaC9jcnlwdG8vLi4uKQ0KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQpmdW5jdGlvbiBzaG93VGFiKHRhYikgew0KICBjdXJyZW50VGFiID0gdGFiIHx8IGN1cnJlbnRUYWI7DQoNCiAgLy8gUmVzZXQgdGFiIGJ1dHRvbnMgaWYgZXhpc3QNCiAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnRhYi1idG4nKS5mb3JFYWNoKGJ0biA9PiB7DQogICAgYnRuLmNsYXNzTmFtZSA9ICd0YWItYnRuIGZsZXgtc2hyaW5rLTAgdGV4dC1ncmF5LTcwMCBob3ZlcjpiZy1ncmF5LTUwIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0nOw0KICB9KTsNCg0KICAvLyBIaWRlIC8gc2hvdyBmaWVsZHNldHMgKGlmIGV4aXN0KQ0KICBjb25zdCBjYXNoRmllbGRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Nhc2gtZmllbGRzJyk7DQogIGNvbnN0IGNyeXB0b0ZpZWxkcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjcnlwdG8tZmllbGRzJyk7DQoNCiAgaWYgKGNhc2hGaWVsZHMpIGNhc2hGaWVsZHMuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7DQogIGlmIChjcnlwdG9GaWVsZHMpIGNyeXB0b0ZpZWxkcy5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTsNCg0KICAvLyBSZW1vdmUgcmVxdWlyZWQgb24gaGlkZGVuIGlucHV0cyBzYWZlbHkNCiAgaWYgKGNhc2hGaWVsZHMpIGNhc2hGaWVsZHMucXVlcnlTZWxlY3RvckFsbCgnaW5wdXRbcmVxdWlyZWRdJykuZm9yRWFjaChpID0+IGkucmVtb3ZlQXR0cmlidXRlKCdyZXF1aXJlZCcpKTsNCiAgaWYgKGNyeXB0b0ZpZWxkcykgY3J5cHRvRmllbGRzLnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0W3JlcXVpcmVkXScpLmZvckVhY2goaSA9PiBpLnJlbW92ZUF0dHJpYnV0ZSgncmVxdWlyZWQnKSk7DQoNCiAgLy8gU3R5bGUgYWN0aXZlIHRhYiBidXR0b24NCiAgY29uc3QgYWN0aXZlVGFiID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYHRhYi0ke3RhYn1gKTsNCiAgY29uc3QgdGFiU3R5bGVzID0gew0KICAgIGNhc2g6ICd0YWItYnRuIGFjdGl2ZSBmbGV4LXNocmluay0wIGJnLWdyYWRpZW50LXRvLXIgZnJvbS15ZWxsb3ctNTAwIHRvLW9yYW5nZS01MDAgdGV4dC1ibGFjayByb3VuZGVkLWxnIGZvbnQtbWVkaXVtJywNCiAgICBjcnlwdG86ICd0YWItYnRuIGFjdGl2ZSBmbGV4LXNocmluay0wIGJnLWdyYWRpZW50LXRvLXIgZnJvbS1wdXJwbGUtNTAwIHRvLWJsdWUtNTAwIHRleHQtd2hpdGUgcm91bmRlZC1sZyBmb250LW1lZGl1bScsDQogICAgY2FyZDogJ3RhYi1idG4gYWN0aXZlIGZsZXgtc2hyaW5rLTAgYmctZ3JhZGllbnQtdG8tciBmcm9tLWJsdWUtNTAwIHRvLWdyZWVuLTUwMCB0ZXh0LXdoaXRlIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0nLA0KICAgIGJ1c2luZXNzOiAndGFiLWJ0biBhY3RpdmUgZmxleC1zaHJpbmstMCBiZy1ncmFkaWVudC10by1yIGZyb20tZ3JlZW4tNTAwIHRvLXRlYWwtNTAwIHRleHQtd2hpdGUgcm91bmRlZC1sZyBmb250LW1lZGl1bScNCiAgfTsNCiAgaWYgKGFjdGl2ZVRhYiAmJiB0YWJTdHlsZXNbdGFiXSkgYWN0aXZlVGFiLmNsYXNzTmFtZSA9IHRhYlN0eWxlc1t0YWJdOw0KDQogIC8vIFNob3cgYXBwcm9wcmlhdGUgZmllbGRzIGFuZCBzZXQgcmVxdWlyZWQNCiAgaWYgKHRhYiA9PT0gJ2NyeXB0bycpIHsNCiAgICBpZiAoY3J5cHRvRmllbGRzKSB7DQogICAgICBjcnlwdG9GaWVsZHMuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7DQogICAgICBjcnlwdG9GaWVsZHMucXVlcnlTZWxlY3RvckFsbCgnaW5wdXQnKS5mb3JFYWNoKGlucHV0ID0+IGlucHV0LnNldEF0dHJpYnV0ZSgncmVxdWlyZWQnLCdyZXF1aXJlZCcpKTsNCiAgICAgIGNvbnN0IGFtdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhbW91bnQtY3J5cHRvJyk7DQogICAgICBpZiAoYW10KSB7IGFtdC52YWx1ZSA9ICcxMDAnOyBhbXQucGxhY2Vob2xkZXIgPSAn0LLRltC0IDEwMCBVU0RUJzsgfQ0KICAgIH0NCiAgfSBlbHNlIHsNCiAgICBpZiAoY2FzaEZpZWxkcykgew0KICAgICAgY2FzaEZpZWxkcy5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTsNCiAgICAgIGNhc2hGaWVsZHMucXVlcnlTZWxlY3RvckFsbCgnaW5wdXQnKS5mb3JFYWNoKGlucHV0ID0+IGlucHV0LnNldEF0dHJpYnV0ZSgncmVxdWlyZWQnLCdyZXF1aXJlZCcpKTsNCiAgICB9DQogICAgdXBkYXRlRm9ybUZvclRhYih0YWIpOw0KICB9DQoNCiAgLy8gVXBkYXRlIGJ1dHRvbi9sYWJlbCBVSSAoZ3VhcmRlZCkNCiAgY29uc3QgY3VycmVuY3lMYWJlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjdXJyZW5jeS1sYWJlbCcpOw0KICBjb25zdCBzdWJtaXRCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3VibWl0LWJ0bicpOw0KICBjb25zdCBleGNoYW5nZUljb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXhjaGFuZ2UtaWNvbicpOw0KDQogIHN3aXRjaCh0YWIpIHsNCiAgICBjYXNlICdjYXNoJzoNCiAgICAgIGlmIChjdXJyZW5jeUxhYmVsKSBjdXJyZW5jeUxhYmVsLnRleHRDb250ZW50ID0gJ9Ce0LHQtdGA0ZbRgtGMINC60YDQuNC/0YLQvtCy0LDQu9GO0YLRgyDQtNC70Y8g0L7QsdC80ZbQvdGDINC90LAg0LPQvtGC0ZbQstC60YMnOw0KICAgICAgaWYgKHN1Ym1pdEJ0bikgew0KICAgICAgICBzdWJtaXRCdG4uaW5uZXJIVE1MID0gJ/CfkrAg0J7QsdC80ZbQvdGP0YLQuCDQvdCwINCz0L7RgtGW0LLQutGDJzsNCiAgICAgICAgc3VibWl0QnRuLmNsYXNzTmFtZSA9ICdidG4tZ3JhZGllbnQgdy1mdWxsIGJnLWdyYWRpZW50LXRvLXIgZnJvbS15ZWxsb3ctNDAwIHZpYS1vcmFuZ2UtNDAwIHRvLXJlZC00MDAgaG92ZXI6ZnJvbS15ZWxsb3ctNTAwIGhvdmVyOnZpYS1vcmFuZ2UtNTAwIGhvdmVyOnRvLXJlZC01MDAgdGV4dC1ibGFjayBib3JkZXItMCBzaGFkb3ctbGcgaC0xMiByb3VuZGVkLWxnIGZvbnQtbWVkaXVtIHRleHQtbGcgbXQtNic7DQogICAgICB9DQogICAgICBpZiAoZXhjaGFuZ2VJY29uKSBleGNoYW5nZUljb24uY2xhc3NOYW1lID0gJ2JnLWdyYWRpZW50LXRvLXIgZnJvbS15ZWxsb3ctNTAwIHRvLW9yYW5nZS01MDAgcC0yIHJvdW5kZWQtZnVsbCc7DQogICAgICBicmVhazsNCiAgICBjYXNlICdjcnlwdG8nOg0KICAgICAgaWYgKGN1cnJlbmN5TGFiZWwpIGN1cnJlbmN5TGFiZWwudGV4dENvbnRlbnQgPSAn0J7QsdC10YDRltGC0Ywg0LrRgNC40L/RgtC+0LLQsNC70Y7RgtGDINC00LvRjyDQvtCx0LzRltC90YMnOw0KICAgICAgaWYgKHN1Ym1pdEJ0bikgew0KICAgICAgICBzdWJtaXRCdG4uaW5uZXJIVE1MID0gJ/CfmoAg0J7QsdC80ZbQvdGP0YLQuCDQutGA0LjQv9GC0L7QstCw0LvRjtGC0YMnOw0KICAgICAgICBzdWJtaXRCdG4uY2xhc3NOYW1lID0gJ2J0bi1ncmFkaWVudCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLXB1cnBsZS01MDAgdmlhLWJsdWUtNTAwIHRvLWN5YW4tNTAwIGhvdmVyOmZyb20tcHVycGxlLTYwMCBob3Zlcjp2aWEtYmx1ZS02MDAgaG92ZXI6dG8tY3lhbi02MDAgdGV4dC13aGl0ZSBib3JkZXItMCBzaGFkb3ctbGcgaC0xMiByb3VuZGVkLWxnIGZvbnQtbWVkaXVtIHRleHQtbGcgbXQtNic7DQogICAgICB9DQogICAgICBpZiAoZXhjaGFuZ2VJY29uKSBleGNoYW5nZUljb24uY2xhc3NOYW1lID0gJ2JnLWdyYWRpZW50LXRvLXIgZnJvbS1wdXJwbGUtNTAwIHRvLWJsdWUtNTAwIHAtMiByb3VuZGVkLWZ1bGwnOw0KICAgICAgYnJlYWs7DQogICAgY2FzZSAnY2FyZCc6DQogICAgICBpZiAoY3VycmVuY3lMYWJlbCkgY3VycmVuY3lMYWJlbC50ZXh0Q29udGVudCA9ICfQntCx0LXRgNGW0YLRjCDQutGA0LjQv9GC0L7QstCw0LvRjtGC0YMg0LTQu9GPINC+0LHQvNGW0L3RgyDQvdCwINCx0LDQvdC60ZbQstGB0YzQutGDINC60LDRgNGC0YMnOw0KICAgICAgaWYgKHN1Ym1pdEJ0bikgew0KICAgICAgICBzdWJtaXRCdG4uaW5uZXJIVE1MID0gJ/CfkrMg0J7QsdC80ZbQvdGP0YLQuCDQvdCwINC60LDRgNGC0YMnOw0KICAgICAgICBzdWJtaXRCdG4uY2xhc3NOYW1lID0gJ2J0bi1ncmFkaWVudCB3LWZ1bGwgYmctZ3JhZGllbnQtdG8tciBmcm9tLWJsdWUtNTAwIHZpYS1ncmVlbi01MDAgdG8tdGVhbC01MDAgaG92ZXI6ZnJvbS1ibHVlLTYwMCBob3Zlcjp2aWEtZ3JlZW4tNjAwIGhvdmVyOnRvLXRlYWwtNjAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIGgtMTIgcm91bmRlZC1sZyBmb250LW1lZGl1bSB0ZXh0LWxnIG10LTYnOw0KICAgICAgfQ0KICAgICAgaWYgKGV4Y2hhbmdlSWNvbikgZXhjaGFuZ2VJY29uLmNsYXNzTmFtZSA9ICdiZy1ncmFkaWVudC10by1yIGZyb20tYmx1ZS01MDAgdG8tZ3JlZW4tNTAwIHAtMiByb3VuZGVkLWZ1bGwnOw0KICAgICAgYnJlYWs7DQogICAgY2FzZSAnYnVzaW5lc3MnOg0KICAgICAgaWYgKGN1cnJlbmN5TGFiZWwpIGN1cnJlbmN5TGFiZWwudGV4dENvbnRlbnQgPSAn0J7QsdC10YDRltGC0Ywg0LrRgNC40L/RgtC+0LLQsNC70Y7RgtGDINC00LvRjyDQvtCx0LzRltC90YMg0L3QsCDRgNCw0YXRg9C90L7QuiDQotCe0JIv0KTQntCfJzsNCiAgICAgIGlmIChzdWJtaXRCdG4pIHsNCiAgICAgICAgc3VibWl0QnRuLmlubmVySFRNTCA9ICfwn4+iINCe0LHQvNGW0L3Rj9GC0Lgg0LTQu9GPINCx0ZbQt9C90LXRgdGDJzsNCiAgICAgICAgc3VibWl0QnRuLmNsYXNzTmFtZSA9ICdidG4tZ3JhZGllbnQgdy1mdWxsIGJnLWdyYWRpZW50LXRvLXIgZnJvbS1ncmVlbi01MDAgdmlhLXRlYWwtNTAwIHRvLWVtZXJhbGQtNTAwIGhvdmVyOmZyb20tZ3JlZW4tNjAwIGhvdmVyOnZpYS10ZWFsLTYwMCBob3Zlcjp0by1lbWVyYWxkLTYwMCB0ZXh0LXdoaXRlIGJvcmRlci0wIHNoYWRvdy1sZyBoLTEyIHJvdW5kZWQtbGcgZm9udC1tZWRpdW0gdGV4dC1sZyBtdC02JzsNCiAgICAgIH0NCiAgICAgIGlmIChleGNoYW5nZUljb24pIGV4Y2hhbmdlSWNvbi5jbGFzc05hbWUgPSAnYmctZ3JhZGllbnQtdG8tciBmcm9tLWdyZWVuLTUwMCB0by10ZWFsLTUwMCBwLTIgcm91bmRlZC1mdWxsJzsNCiAgICAgIGJyZWFrOw0KICB9DQp9DQoNCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgVXBkYXRlIGZvcm0gY29udGVudCBwZXIgdGFiDQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCmZ1bmN0aW9uIHVwZGF0ZUZvcm1Gb3JUYWIodGFiKSB7DQogIGNvbnN0IGFkZGl0aW9uYWxMYWJlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhZGRpdGlvbmFsLWxhYmVsJyk7DQogIGNvbnN0IGFkZGl0aW9uYWxJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhZGRpdGlvbmFsJyk7DQogIGNvbnN0IGFtb3VudElucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Ftb3VudCcpOw0KDQogIGlmICghYWRkaXRpb25hbExhYmVsIHx8ICFhZGRpdGlvbmFsSW5wdXQgfHwgIWFtb3VudElucHV0KSByZXR1cm47DQoNCiAgc3dpdGNoKHRhYikgew0KICAgIGNhc2UgJ2Nhc2gnOg0KICAgICAgYWRkaXRpb25hbExhYmVsLnRleHRDb250ZW50ID0gJ9Cc0ZbRgdGC0L4nOw0KICAgICAgYWRkaXRpb25hbElucHV0LnBsYWNlaG9sZGVyID0gJ9Ca0LjRl9CyLCDQpdCw0YDQutGW0LIsINCe0LTQtdGB0LAuLi4nOw0KICAgICAgYW1vdW50SW5wdXQudmFsdWUgPSAnMjAwMDAnOw0KICAgICAgYW1vdW50SW5wdXQucGxhY2Vob2xkZXIgPSAn0LLRltC0IDIwMDAwIFVBSCc7DQogICAgICBicmVhazsNCiAgICBjYXNlICdjYXJkJzoNCiAgICAgIGFkZGl0aW9uYWxMYWJlbC50ZXh0Q29udGVudCA9ICfQndC+0LzQtdGAINCx0LDQvdC60ZbQstGB0YzQutC+0Zcg0LrQsNGA0YLQuCc7DQogICAgICBhZGRpdGlvbmFsSW5wdXQucGxhY2Vob2xkZXIgPSAnNTU1NSAqKioqICoqKiogMTIzNCc7DQogICAgICBhbW91bnRJbnB1dC52YWx1ZSA9ICcxMDAwJzsNCiAgICAgIGFtb3VudElucHV0LnBsYWNlaG9sZGVyID0gJ9Cy0ZbQtCAxMDAwIFVBSCc7DQogICAgICBicmVhazsNCiAgICBjYXNlICdidXNpbmVzcyc6DQogICAgICBhZGRpdGlvbmFsTGFiZWwudGV4dENvbnRlbnQgPSAn0KDQtdC60LLRltC30LjRgtC4INCi0J7Qki/QpNCe0J8nOw0KICAgICAgYWRkaXRpb25hbElucHV0LnBsYWNlaG9sZGVyID0gJ9Cd0LDQt9Cy0LAg0LrQvtC80L/QsNC90ZbRlywg0ITQlNCg0J/QntCjLi4uJzsNCiAgICAgIGFtb3VudElucHV0LnZhbHVlID0gJzUwMDAwJzsNCiAgICAgIGFtb3VudElucHV0LnBsYWNlaG9sZGVyID0gJ9Cy0ZbQtCA1MDAwMCBVQUgnOw0KICAgICAgYnJlYWs7DQogIH0NCn0NCg0KLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICBDdXJyZW5jeSBzZWxlY3Rpb24NCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KZnVuY3Rpb24gc2VsZWN0Q3VycmVuY3koY3VycmVuY3kpIHsNCiAgaWYgKCFjdXJyZW5jeSkgcmV0dXJuOw0KICBzZWxlY3RlZEN1cnJlbmN5ID0gY3VycmVuY3k7DQoNCiAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmN1cnJlbmN5LWJ0bicpLmZvckVhY2goYnRuID0+IHsNCiAgICBidG4uY2xhc3NOYW1lID0gJ2N1cnJlbmN5LWJ0biB3LWZ1bGwgaC0xMCBib3JkZXIgYm9yZGVyLWdyYXktMzAwIGhvdmVyOmJnLWdyYXktNTAgdGV4dC1ncmF5LTcwMCByb3VuZGVkLWxnIHRyYW5zaXRpb24tYWxsJzsNCiAgfSk7DQoNCiAgY29uc3Qgc2VsZWN0ZWRCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgY3VycmVuY3ktJHtjdXJyZW5jeX1gKTsNCiAgY29uc3QgY29sb3JzID0gew0KICAgICd1c2R0LXRyYzIwJzogJ2N1cnJlbmN5LWJ0biB3LWZ1bGwgaC0xMCBiZy1ncmVlbi01MDAgaG92ZXI6YmctZ3JlZW4tNjAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIHJvdW5kZWQtbGcgdHJhbnNpdGlvbi1hbGwnLA0KICAgICd1c2R0LWVyYzIwJzogJ2N1cnJlbmN5LWJ0biB3LWZ1bGwgaC0xMCBiZy1ibHVlLTUwMCBob3ZlcjpiZy1ibHVlLTYwMCB0ZXh0LXdoaXRlIGJvcmRlci0wIHNoYWRvdy1sZyByb3VuZGVkLWxnIHRyYW5zaXRpb24tYWxsJywNCiAgICAndXNkYyc6ICdjdXJyZW5jeS1idG4gdy1mdWxsIGgtMTAgYmctcHVycGxlLTUwMCBob3ZlcjpiZy1wdXJwbGUtNjAwIHRleHQtd2hpdGUgYm9yZGVyLTAgc2hhZG93LWxnIHJvdW5kZWQtbGcgdHJhbnNpdGlvbi1hbGwnDQogIH07DQoNCiAgaWYgKHNlbGVjdGVkQnRuICYmIGNvbG9yc1tjdXJyZW5jeV0pIHNlbGVjdGVkQnRuLmNsYXNzTmFtZSA9IGNvbG9yc1tjdXJyZW5jeV07DQp9DQoNCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgc3VibWl0Rm9ybTogdmFsaWRhdGUgKyBzZW5kIHRvIGJhY2tlbmQgaGFuZGxlcg0KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQphc3luYyBmdW5jdGlvbiBzdWJtaXRGb3JtKGV2ZW50KSB7DQogIGlmIChldmVudCAmJiB0eXBlb2YgZXZlbnQucHJldmVudERlZmF1bHQgPT09ICdmdW5jdGlvbicpIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7DQoNCiAgbGV0IGZvcm1EYXRhOw0KICBsZXQgaXNWYWxpZCA9IHRydWU7DQogIGxldCBlcnJvck1lc3NhZ2UgPSAnJzsNCg0KICAvLyBFbnN1cmUgY3VycmVudFRhYiBhbmQgc2VsZWN0ZWRDdXJyZW5jeSBkZWZpbmVkDQogIGlmICghY3VycmVudFRhYikgY3VycmVudFRhYiA9ICdjYXNoJzsNCiAgaWYgKCFzZWxlY3RlZEN1cnJlbmN5KSBzZWxlY3RlZEN1cnJlbmN5ID0gJ3VzZHQtdHJjMjAnOw0KDQogIGlmIChjdXJyZW50VGFiID09PSAnY3J5cHRvJykgew0KICAgIGNvbnN0IGFtb3VudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhbW91bnQtY3J5cHRvJyk/LnZhbHVlPy50cmltKCkgfHwgJyc7DQogICAgY29uc3QgcGhvbmUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGhvbmUtY3J5cHRvJyk/LnZhbHVlPy50cmltKCkgfHwgJyc7DQogICAgY29uc3QgbmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduYW1lLWNyeXB0bycpPy52YWx1ZT8udHJpbSgpIHx8ICcnOw0KICAgIGNvbnN0IHRlbGVncmFtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RlbGVncmFtLWNyeXB0bycpPy52YWx1ZT8udHJpbSgpIHx8ICcnOw0KDQogICAgaWYgKCFhbW91bnQgfHwgIXBob25lIHx8ICFuYW1lIHx8ICF0ZWxlZ3JhbSkgew0KICAgICAgaXNWYWxpZCA9IGZhbHNlOw0KICAgICAgZXJyb3JNZXNzYWdlID0gJ9CR0YPQtNGMINC70LDRgdC60LAsINC30LDQv9C+0LLQvdGW0YLRjCDQstGB0ZYg0L/QvtC70Y8nOw0KICAgIH0NCg0KICAgIGZvcm1EYXRhID0geyB0eXBlOiBjdXJyZW50VGFiLCBjdXJyZW5jeTogc2VsZWN0ZWRDdXJyZW5jeSwgYW1vdW50LCBwaG9uZSwgbmFtZSwgdGVsZWdyYW0gfTsNCiAgfSBlbHNlIHsNCiAgICBjb25zdCBmb3JtID0gZXZlbnQgJiYgZXZlbnQudGFyZ2V0ID8gZXZlbnQudGFyZ2V0IDogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2V4Y2hhbmdlRm9ybScpOw0KICAgIGNvbnN0IGRhdGEgPSBuZXcgRm9ybURhdGEoZm9ybSk7DQogICAgY29uc3QgYW1vdW50ID0gKGRhdGEuZ2V0KCdhbW91bnQnKSB8fCAnJykudHJpbSgpOw0KICAgIGNvbnN0IHBob25lID0gKGRhdGEuZ2V0KCdwaG9uZScpIHx8ICcnKS50cmltKCk7DQogICAgY29uc3QgbmFtZSA9IChkYXRhLmdldCgnbmFtZScpIHx8ICcnKS50cmltKCk7DQogICAgY29uc3QgdGVsZWdyYW0gPSAoZGF0YS5nZXQoJ3RlbGVncmFtJykgfHwgJycpLnRyaW0oKTsNCiAgICBjb25zdCBhZGRpdGlvbmFsID0gKGRhdGEuZ2V0KCdhZGRpdGlvbmFsJykgfHwgJycpLnRyaW0oKTsNCg0KICAgIGlmICghYW1vdW50IHx8ICFwaG9uZSB8fCAhbmFtZSB8fCAhdGVsZWdyYW0gfHwgIWFkZGl0aW9uYWwpIHsNCiAgICAgIGlzVmFsaWQgPSBmYWxzZTsNCiAgICAgIGVycm9yTWVzc2FnZSA9ICfQkdGD0LTRjCDQu9Cw0YHQutCwLCDQt9Cw0L/QvtCy0L3RltGC0Ywg0LLRgdGWINC/0L7Qu9GPJzsNCiAgICB9DQoNCiAgICBmb3JtRGF0YSA9IHsgdHlwZTogY3VycmVudFRhYiwgY3VycmVuY3k6IHNlbGVjdGVkQ3VycmVuY3ksIGFtb3VudCwgcGhvbmUsIG5hbWUsIHRlbGVncmFtLCBhZGRpdGlvbmFsIH07DQogIH0NCg0KICBpZiAoIXNlbGVjdGVkQ3VycmVuY3kpIHsNCiAgICBpc1ZhbGlkID0gZmFsc2U7DQogICAgZXJyb3JNZXNzYWdlID0gJ9CR0YPQtNGMINC70LDRgdC60LAsINC+0LHQtdGA0ZbRgtGMINCy0LDQu9GO0YLRgyc7DQogIH0NCg0KICBpZiAoIWlzVmFsaWQpIHsNCiAgICBhbGVydChlcnJvck1lc3NhZ2UpOw0KICAgIHJldHVybjsNCiAgfQ0KDQogIC8vIExvYWRpbmcgc3RhdGUNCiAgY29uc3Qgc3VibWl0QnRuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3N1Ym1pdC1idG4nKTsNCiAgY29uc3Qgb3JpZ2luYWxUZXh0ID0gc3VibWl0QnRuPy5pbm5lckhUTUwgfHwgJyc7DQogIGlmIChzdWJtaXRCdG4pIHsgc3VibWl0QnRuLmlubmVySFRNTCA9ICfij7Mg0JLRltC00L/RgNCw0LLQu9GP0ZTQvNC+Li4uJzsgc3VibWl0QnRuLmRpc2FibGVkID0gdHJ1ZTsgfQ0KDQogIHRyeSB7DQogICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2goRVhDSEFOR0VfRU5EUE9JTlQsIHsNCiAgICAgIG1ldGhvZDogJ1BPU1QnLA0KICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sDQogICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShmb3JtRGF0YSkNCiAgICB9KTsNCiAgICANCiAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzLmpzb24oKTsNCg0KICAgIGlmIChkYXRhLm9rKSB7DQogICAgICBzaG93U3VjY2Vzc01vZGFsKCk7DQogICAgfSBlbHNlIHsNCiAgICAgIGlmIChkYXRhLmVycm9yID09PSAncmF0ZV9saW1pdCcpIHsNCiAgICAgIH0gZWxzZSB7DQogICAgICB9DQogICAgfQ0KICB9IGNhdGNoIChlcnIpIHsNCiAgICBjb25zb2xlLmVycm9yKGVycik7DQogICAgYWxlcnQoJ9Cf0L7QvNC40LvQutCwLiDQodC/0YDQvtCx0YPQudGC0LUg0YnQtSDRgNCw0LcuJyk7DQogIH0gZmluYWxseSB7DQogICAgaWYgKHN1Ym1pdEJ0bikgeyBzdWJtaXRCdG4uaW5uZXJIVE1MID0gb3JpZ2luYWxUZXh0OyBzdWJtaXRCdG4uZGlzYWJsZWQgPSBmYWxzZTsgfQ0KICB9DQp9DQoNCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgU3VjY2VzcyBtb2RhbCBmb3IgZXhjaGFuZ2UNCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KZnVuY3Rpb24gc2hvd1N1Y2Nlc3NNb2RhbCgpIHsNCiAgY29uc3QgbW9kYWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3VjY2Vzc01vZGFsJyk7DQogIGNvbnN0IG9yZGVyTnVtYmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29yZGVyLW51bWJlcicpOw0KICBpZiAob3JkZXJOdW1iZXIpIG9yZGVyTnVtYmVyLnRleHRDb250ZW50ID0gYNCd0L7QvNC10YAg0LfQsNGP0LLQutC4OiAjJHtEYXRlLm5vdygpLnRvU3RyaW5nKCkuc2xpY2UoLTYpfWA7DQogIGlmIChtb2RhbCkgew0KICAgIG1vZGFsLmNsYXNzTGlzdC5yZW1vdmUoJ2hpZGRlbicpOw0KICAgIHRyeSB7DQogICAgICBjb25zdCB0ID0gbW9kYWwucXVlcnlTZWxlY3RvcignLnRyYW5zZm9ybScpOw0KICAgICAgaWYgKHQpIHsgdC5jbGFzc0xpc3QucmVtb3ZlKCdzY2FsZS05NScpOyB0LmNsYXNzTGlzdC5hZGQoJ3NjYWxlLTEwMCcpOyB9DQogICAgfSBjYXRjaChlKXsgLyogaWdub3JlICovIH0NCiAgfSBlbHNlIHsNCiAgICAvLyBJZiBubyBtb2RhbCwgc2hvdyBhbGVydCBhcyBmYWxsYmFjaw0KICAgIGFsZXJ0KCfQl9Cw0Y/QstC60LAg0LLRltC00L/RgNCw0LLQu9C10L3QsCEg0JzQuCDQt9CyXCfRj9C20LXQvNC+0YHRjyDQtyDQstCw0LzQuCDQvdCw0LnQsdC70LjQttGH0LjQvCDRh9Cw0YHQvtC8LicpOw0KICB9DQp9DQoNCmZ1bmN0aW9uIGNsb3NlU3VjY2Vzc01vZGFsKCkgew0KICBjb25zdCBtb2RhbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzdWNjZXNzTW9kYWwnKTsNCiAgaWYgKG1vZGFsKSBtb2RhbC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTsNCiAgY29uc3QgZm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdleGNoYW5nZUZvcm0nKTsNCiAgaWYgKGZvcm0pIGZvcm0ucmVzZXQoKTsNCiAgLy8gcmVzZXQgVUkNCiAgdHJ5IHsgc2hvd1RhYignY2FzaCcpOyBzZWxlY3RDdXJyZW5jeSgndXNkdC10cmMyMCcpOyB9IGNhdGNoKGUpeyAvKiBpZ25vcmUgKi8gfQ0KfQ0KDQpmdW5jdGlvbiBzY3JvbGxUb1NlY3Rpb24oc2VjdGlvbklkKSB7DQogIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzZWN0aW9uSWQpOw0KICBpZiAoZWxlbWVudCkgew0KICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7DQogIH0NCn0NCg0KLyogPT09PT09PT09PSBFeHBvc2UgZnVuY3Rpb25zIGlmIHVzZWQgaW5saW5lIGluIEhUTUwgPT09PT09PT09PSAqLw0Kd2luZG93LnNob3dUYWIgPSBzaG93VGFiOw0Kd2luZG93LnNlbGVjdEN1cnJlbmN5ID0gc2VsZWN0Q3VycmVuY3k7DQp3aW5kb3cuc3VibWl0Rm9ybSA9IHN1Ym1pdEZvcm07DQp3aW5kb3cuc2hvd1N1Y2Nlc3NNb2RhbCA9IHNob3dTdWNjZXNzTW9kYWw7DQp3aW5kb3cuY2xvc2VTdWNjZXNzTW9kYWwgPSBjbG9zZVN1Y2Nlc3NNb2RhbDsNCndpbmRvdy5zY3JvbGxUb1NlY3Rpb24gPSBzY3JvbGxUb1NlY3Rpb247DQo8L3NjcmlwdD4NCg0KPC9ib2R5Pg0KPC9odG1sPg=="}},"time_used":1183,"timings":{"blocked":-1,"dns":109,"connect":35,"send":0,"wait":962,"receive":0,"ssl":77},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"unpkg.com/aos@2.3.1/dist/aos.css","fqdn":"unpkg.com","domain":"unpkg.com","tld":"com"},"ip":{"addr":"104.18.0.22","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.127Z","timestamp":1785102002127,"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":"unpkg.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sat, 11 Jul 2026 17:56:32 GMT","end":"Fri, 09 Oct 2026 18:56:21 GMT"},"fingerprint":{"sha1":"81:08:7C:A2:AA:81:B4:77:02:EE:53:FB:23:6F:1D:97:C3:92:2E:A0","sha256":"13:42:07:B0:BF:53:83:27:C3:6E:69:00:B5:F0:1C:58:6C:AD:B4:DD:93:08:84:F0:97:51:3B:60:91:10:85:76"}}},"request":{"raw":"GET /aos@2.3.1/dist/aos.css HTTP/1.1\r\nHost: unpkg.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://exxchanger.com.ua/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\ncontent-type: text/css\r\ncf-ray: a2168f797c9f56a3-OSL\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\naccess-control-allow-origin: *\r\nage: 13858\r\ncache-control: public, max-age=31536000\r\nexpires: Mon, 26 Jul 2027 21:40:02 GMT\r\nlast-modified: Sat, 30 May 2026 01:45:39 GMT\r\nserver: cloudflare\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nvary: accept-encoding\r\nvia: 1.1 fly.io, 1.1 fly.io\r\naccess-control-allow-headers: *\r\naccess-control-allow-methods: GET, HEAD, OPTIONS\r\naccess-control-expose-headers: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\ncontent-digest: sha256=:GqiEX9BuR1rv5zPU5Vs2qS/NSHl1BJyBcjQYJ6ycwD4=:\r\nfly-request-id: 01KSBSK7KH697J56JW8R5G2NYD-fra\r\ncontent-encoding: gzip\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":"Fly.io","description":"Fly is a platform for running full stack apps and databases.","website":"https://fly.io","common_platform_enumeration":"","icon":"Fly.io.png","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":26053,"size_decoded":3054,"mime_type":"text/css","magic":"ASCII text, with very long lines (26053), with no line terminators","md5":"847da8fca8060ca1a70f976aab1210b9","sha1":"0557d37454b67f42f2cb101e57e5070fb1193570","sha256":"1aa8845fd06e475aefe733d4e55b36a92fcd487975049c8172341827ac9cc03e","sha512":"d5c2bbf1ad68fa1b7625c696ea0f0e5d8c2aa5ebfdfba1aa3a4cfdc6604df625148489dd2adc7020b19660e4a26ce2a32ec11d8f28d9bd80eafdc67035e6a4d3","ssdeep":"768:CMJihoCcZCOud8G8tKS65wqsZQ1G+dM2cl6iCRotsV84sxIKcv4g01UeEPEQEB4D:CMJihoCcZCOud8G8tKS65wqsZCG+dM25","tlshash":"f0c24b5a7a4cd100bf831b4762df2a0859347588e5301986be3f35ca2cd5ce6b973fa9","first_seen":"2023-04-05T07:18:45Z","last_seen":"2026-08-11T05:00:43.485742Z","times_seen":43731,"resource_available":false,"data":"W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246NTBtc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjUwbXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjE1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouMTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi4yc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMzAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjMwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjM1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjM1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIzNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMzUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi4zNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjQwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjQwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI0MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI0MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI0NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjQ1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNDUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjQ1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjQ1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI1MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI1MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iNTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi41c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iNTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi41NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjU1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iNjAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNjAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjYwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjYwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjY1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjY1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI2NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI2NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iNjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi42NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjcwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouN3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjcwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI3MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI3MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI3NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Ljc1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNzUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Ijc1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9Ijc1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI4MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI4MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI4MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI4MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iODAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iODAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi44c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iODUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iODUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi44NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Ijg1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9Ijg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI4NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI4NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Ljg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iOTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iOTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjkwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjkwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Ijk1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249Ijk1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI5NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI5NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iOTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iOTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi45NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEwMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMDAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTAwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTAwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTA1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEwNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4wNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxMTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTEwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxMTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTE1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjE1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTE1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjExNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTE1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjExNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS4xNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEyMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEyMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEyMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEyNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMjUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTI1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTMwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEzMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTMwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEzMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTMwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEzMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTM1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEzNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4zNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEzNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEzNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNDAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNDAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNDAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTQwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNDUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTQ1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjQ1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTQ1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTQ1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE0NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS40NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE1MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE1NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuNTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTU1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTYwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE2MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTYwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE2MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTYwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE2MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTY1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE2NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS42NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE2NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE2NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNzAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNzAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNzAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTcwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNzUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTc1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjc1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTc1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTc1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE3NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS43NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE4MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxODAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuOHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE4MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxODAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE4MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxODAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuOHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE4NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxODUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuODVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxODUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxODUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTg1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTkwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE5MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTkwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE5MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTkwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE5MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTk1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE5NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS45NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE5NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxOTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE5NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxOTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjAwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIwMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIwMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIwNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuMDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjA1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjA1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjA1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjEwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjIxMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi4xc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjEwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIxMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjEwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIxMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi4xc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjE1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjIxNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi4xNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIxNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIxNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuMTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMjAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjIwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMjAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjIwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMjAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjIwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjI1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIyNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjI1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIyNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi4yNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIzMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIzMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIzMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMzAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIzNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMzUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjM1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMzUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjM1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjM1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjQwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI0MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi40c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjQwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI0MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjQwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI0MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi40c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjQ1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi40NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI0NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI0NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNDUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyNTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjUwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjUwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyNTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjU1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjU1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi41NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI2MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI2MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI2MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI2NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyNjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNjUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjY1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjY1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjY1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjcwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI3MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi43c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjcwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI3MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjcwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI3MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi43c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjc1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi43NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI3NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI3NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyODAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjgwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyODAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjgwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyODAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjgwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyODUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjg1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI4NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjg1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI4NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi44NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI5MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI5MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI5MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyOTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI5NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyOTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyOTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjk1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyOTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjk1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjk1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjMwMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246M3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzMDAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzMDAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjNzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1saW5lYXJdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWxpbmVhcl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjI1LC4yNSwuNzUsLjc1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0XSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0XSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0fVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLWJhY2tdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tYmFja10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjYsLS4yOCwuNzM1LC4wNDUpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1iYWNrXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1iYWNrXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEuMjc1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjY4LC0uNTUsLjI2NSwxLjU1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1zaW5lXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NywwLC43NDUsLjcxNSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXNpbmVdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zOSwuNTc1LC41NjUsMSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NDUsLjA1LC41NSwuOTUpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tcXVhZF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wODUsLjY4LC41Myl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YWRdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuNDYsLjQ1LC45NCl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NTUsLjAzLC41MTUsLjk1NSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDg1LC42OCwuNTMpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1jdWJpY10sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtY3ViaWNdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuNDYsLjQ1LC45NCl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LWN1YmljXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQ1NSwuMDMsLjUxNSwuOTU1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wODUsLjY4LC41Myl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YXJ0XSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFydF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjI1LC40NiwuNDUsLjk0KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtcXVhcnRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNDU1LC4wMywuNTE1LC45NTUpfVtkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVde29wYWNpdHk6MDt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtfVtkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVdLmFvcy1hbmltYXRle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX1bZGF0YS1hb3M9ZmFkZS11cF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwcHgsMCl9W2RhdGEtYW9zPWZhZGUtZG93bl17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCl9W2RhdGEtYW9zPWZhZGUtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDAsMCl9W2RhdGEtYW9zPWZhZGUtdXAtcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwcHgsMTAwcHgsMCl9W2RhdGEtYW9zPWZhZGUtdXAtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLWRvd24tcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwcHgsLTEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLWRvd24tbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LC0xMDBweCwwKX1bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXXtvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybX1bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXS5hb3MtYW5pbWF0ZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGUoMSl9W2RhdGEtYW9zPXpvb20taW5de3RyYW5zZm9ybTpzY2FsZSguNil9W2RhdGEtYW9zPXpvb20taW4tdXBde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMHB4LDApIHNjYWxlKC42KX1bZGF0YS1hb3M9em9vbS1pbi1kb3duXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwcHgsMCkgc2NhbGUoLjYpfVtkYXRhLWFvcz16b29tLWluLXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCkgc2NhbGUoLjYpfVtkYXRhLWFvcz16b29tLWluLWxlZnRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDBweCwwLDApIHNjYWxlKC42KX1bZGF0YS1hb3M9em9vbS1vdXRde3RyYW5zZm9ybTpzY2FsZSgxLjIpfVtkYXRhLWFvcz16b29tLW91dC11cF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwcHgsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3M9em9vbS1vdXQtZG93bl17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMHB4LDApIHNjYWxlKDEuMil9W2RhdGEtYW9zPXpvb20tb3V0LXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3M9em9vbS1vdXQtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDAsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3NePXNsaWRlXVtkYXRhLWFvc149c2xpZGVde3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtfVtkYXRhLWFvc149c2xpZGVdW2RhdGEtYW9zXj1zbGlkZV0uYW9zLWFuaW1hdGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9W2RhdGEtYW9zPXNsaWRlLXVwXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfVtkYXRhLWFvcz1zbGlkZS1kb3duXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX1bZGF0YS1hb3M9c2xpZGUtcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfVtkYXRhLWFvcz1zbGlkZS1sZWZ0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfVtkYXRhLWFvc149ZmxpcF1bZGF0YS1hb3NePWZsaXBde2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtfVtkYXRhLWFvcz1mbGlwLWxlZnRde3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoLTEwMGRlZyl9W2RhdGEtYW9zPWZsaXAtbGVmdF0uYW9zLWFuaW1hdGV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKX1bZGF0YS1hb3M9ZmxpcC1yaWdodF17dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgxMDBkZWcpfVtkYXRhLWFvcz1mbGlwLXJpZ2h0XS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApfVtkYXRhLWFvcz1mbGlwLXVwXXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpfVtkYXRhLWFvcz1mbGlwLXVwXS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApfVtkYXRhLWFvcz1mbGlwLWRvd25de3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMTAwZGVnKX1bZGF0YS1hb3M9ZmxpcC1kb3duXS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApfQ=="}},"time_used":49,"timings":{"blocked":-1,"dns":2,"connect":19,"send":0,"wait":28,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"unpkg.com/aos@2.3.1/dist/aos.js","fqdn":"unpkg.com","domain":"unpkg.com","tld":"com"},"ip":{"addr":"104.18.0.22","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.129Z","timestamp":1785102002129,"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":"unpkg.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sat, 11 Jul 2026 17:56:32 GMT","end":"Fri, 09 Oct 2026 18:56:21 GMT"},"fingerprint":{"sha1":"81:08:7C:A2:AA:81:B4:77:02:EE:53:FB:23:6F:1D:97:C3:92:2E:A0","sha256":"13:42:07:B0:BF:53:83:27:C3:6E:69:00:B5:F0:1C:58:6C:AD:B4:DD:93:08:84:F0:97:51:3B:60:91:10:85:76"}}},"request":{"raw":"GET /aos@2.3.1/dist/aos.js HTTP/1.1\r\nHost: unpkg.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://exxchanger.com.ua/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\ncontent-type: text/javascript; charset=utf-8\r\ncf-ray: a2168f797ca756a3-OSL\r\ncf-cache-status: HIT\r\npriority: u=2,i=?0\r\naccess-control-allow-origin: *\r\nage: 359545\r\ncache-control: public, max-age=31536000\r\nexpires: Mon, 26 Jul 2027 21:40:02 GMT\r\nlast-modified: Fri, 15 May 2026 07:50:34 GMT\r\nserver: cloudflare\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nvary: accept-encoding\r\nvia: 1.1 fly.io, 1.1 fly.io\r\naccess-control-allow-headers: *\r\naccess-control-allow-methods: GET, HEAD, OPTIONS\r\naccess-control-expose-headers: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\ncontent-digest: sha256=:8mhhK6WerRskNTu3fWZ4O8xDWv8cIr5fk8QLrDhplo4=:\r\nfly-request-id: 01KPGRATPCNFE8WM00P8CJ7J3Q-arn\r\ncontent-encoding: gzip\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":"Fly.io","description":"Fly is a platform for running full stack apps and databases.","website":"https://fly.io","common_platform_enumeration":"","icon":"Fly.io.png","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":14239,"size_decoded":5381,"mime_type":"text/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (14239), with no line terminators","md5":"70b4897108480dbe11c443c2ab7679c9","sha1":"70dbfd38a0f1fc3b1a7d9fadab58786484c34f17","sha256":"f268612ba59ead1b24353bb77d66783bcc435aff1c22be5f93c40bac3869968e","sha512":"466084fa711d299e394e96c2260bd8bdf103cf75da8869934c997a19fc884d6ddfa2e92ce253533a4a0c5d627d580e9a40efb7155f1c8c0e9fbd3a2c3a06c2ae","ssdeep":"384:3I2fNaC8QiHbcggNFUWTgMe91sa6XCZy54:42fNaC8QiHbfgNFUWg17slXCZy54","tlshash":"a752e6dc3681f0a617a794f7827f600ff2f14835245e90a0d269c4e27db58ae8673e5e","first_seen":"2023-03-07T01:14:45Z","last_seen":"2026-08-11T05:04:55.225971Z","times_seen":22883,"resource_available":true,"data":"IWZ1bmN0aW9uKGUsdCl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz10KCk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sdCk6Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzP2V4cG9ydHMuQU9TPXQoKTplLkFPUz10KCl9KHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChvKXtpZihuW29dKXJldHVybiBuW29dLmV4cG9ydHM7dmFyIGk9bltvXT17ZXhwb3J0czp7fSxpZDpvLGxvYWRlZDohMX07cmV0dXJuIGVbb10uY2FsbChpLmV4cG9ydHMsaSxpLmV4cG9ydHMsdCksaS5sb2FkZWQ9ITAsaS5leHBvcnRzfXZhciBuPXt9O3JldHVybiB0Lm09ZSx0LmM9bix0LnA9ImRpc3QvIix0KDApfShbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUpe3JldHVybiBlJiZlLl9fZXNNb2R1bGU/ZTp7ZGVmYXVsdDplfX12YXIgaT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciBvIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sbykmJihlW29dPW5bb10pfXJldHVybiBlfSxyPW4oMSksYT0obyhyKSxuKDYpKSx1PW8oYSksYz1uKDcpLGY9byhjKSxzPW4oOCksZD1vKHMpLGw9big5KSxwPW8obCksbT1uKDEwKSxiPW8obSksdj1uKDExKSx5PW8odiksZz1uKDE0KSxoPW8oZyksdz1bXSxrPSExLHg9ZG9jdW1lbnQuYWxsJiYhd2luZG93LmF0b2Isaj17b2Zmc2V0OjEyMCxkZWxheTowLGVhc2luZzoiZWFzZSIsZHVyYXRpb246NDAwLGRpc2FibGU6ITEsb25jZTohMSxzdGFydEV2ZW50OiJET01Db250ZW50TG9hZGVkIix0aHJvdHRsZURlbGF5Ojk5LGRlYm91bmNlRGVsYXk6NTAsZGlzYWJsZU11dGF0aW9uT2JzZXJ2ZXI6ITF9LE89ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXSYmYXJndW1lbnRzWzBdO2lmKGUmJihrPSEwKSxrKXJldHVybiB3PSgwLHkuZGVmYXVsdCkodyxqKSwoMCxiLmRlZmF1bHQpKHcsai5vbmNlKSx3fSxfPWZ1bmN0aW9uKCl7dz0oMCxoLmRlZmF1bHQpKCksTygpfSxTPWZ1bmN0aW9uKCl7dy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7ZS5ub2RlLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1hb3MiKSxlLm5vZGUucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWFvcy1lYXNpbmciKSxlLm5vZGUucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWFvcy1kdXJhdGlvbiIpLGUubm9kZS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtYW9zLWRlbGF5Iil9KX0sej1mdW5jdGlvbihlKXtyZXR1cm4gZT09PSEwfHwibW9iaWxlIj09PWUmJnAuZGVmYXVsdC5tb2JpbGUoKXx8InBob25lIj09PWUmJnAuZGVmYXVsdC5waG9uZSgpfHwidGFibGV0Ij09PWUmJnAuZGVmYXVsdC50YWJsZXQoKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUoKT09PSEwfSxBPWZ1bmN0aW9uKGUpe3JldHVybiBqPWkoaixlKSx3PSgwLGguZGVmYXVsdCkoKSx6KGouZGlzYWJsZSl8fHg/UygpOihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJib2R5Iikuc2V0QXR0cmlidXRlKCJkYXRhLWFvcy1lYXNpbmciLGouZWFzaW5nKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJib2R5Iikuc2V0QXR0cmlidXRlKCJkYXRhLWFvcy1kdXJhdGlvbiIsai5kdXJhdGlvbiksZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYm9keSIpLnNldEF0dHJpYnV0ZSgiZGF0YS1hb3MtZGVsYXkiLGouZGVsYXkpLCJET01Db250ZW50TG9hZGVkIj09PWouc3RhcnRFdmVudCYmWyJjb21wbGV0ZSIsImludGVyYWN0aXZlIl0uaW5kZXhPZihkb2N1bWVudC5yZWFkeVN0YXRlKT4tMT9PKCEwKToibG9hZCI9PT1qLnN0YXJ0RXZlbnQ/d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoai5zdGFydEV2ZW50LGZ1bmN0aW9uKCl7TyghMCl9KTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKGouc3RhcnRFdmVudCxmdW5jdGlvbigpe08oITApfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKDAsZi5kZWZhdWx0KShPLGouZGVib3VuY2VEZWxheSwhMCkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsKDAsZi5kZWZhdWx0KShPLGouZGVib3VuY2VEZWxheSwhMCkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCgwLHUuZGVmYXVsdCkoZnVuY3Rpb24oKXsoMCxiLmRlZmF1bHQpKHcsai5vbmNlKX0sai50aHJvdHRsZURlbGF5KSksai5kaXNhYmxlTXV0YXRpb25PYnNlcnZlcnx8KDAsZC5kZWZhdWx0KSgiW2RhdGEtYW9zXSIsXyksdyl9O2UuZXhwb3J0cz17aW5pdDpBLHJlZnJlc2g6TyxyZWZyZXNoSGFyZDpffX0sZnVuY3Rpb24oZSx0KXt9LCwsLCxmdW5jdGlvbihlLHQpeyhmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQsbil7ZnVuY3Rpb24gbyh0KXt2YXIgbj1iLG89djtyZXR1cm4gYj12PXZvaWQgMCxrPXQsZz1lLmFwcGx5KG8sbil9ZnVuY3Rpb24gcihlKXtyZXR1cm4gaz1lLGg9c2V0VGltZW91dChzLHQpLF8/byhlKTpnfWZ1bmN0aW9uIGEoZSl7dmFyIG49ZS13LG89ZS1rLGk9dC1uO3JldHVybiBTP2ooaSx5LW8pOml9ZnVuY3Rpb24gYyhlKXt2YXIgbj1lLXcsbz1lLWs7cmV0dXJuIHZvaWQgMD09PXd8fG4+PXR8fG48MHx8UyYmbz49eX1mdW5jdGlvbiBzKCl7dmFyIGU9TygpO3JldHVybiBjKGUpP2QoZSk6dm9pZChoPXNldFRpbWVvdXQocyxhKGUpKSl9ZnVuY3Rpb24gZChlKXtyZXR1cm4gaD12b2lkIDAseiYmYj9vKGUpOihiPXY9dm9pZCAwLGcpfWZ1bmN0aW9uIGwoKXt2b2lkIDAhPT1oJiZjbGVhclRpbWVvdXQoaCksaz0wLGI9dz12PWg9dm9pZCAwfWZ1bmN0aW9uIHAoKXtyZXR1cm4gdm9pZCAwPT09aD9nOmQoTygpKX1mdW5jdGlvbiBtKCl7dmFyIGU9TygpLG49YyhlKTtpZihiPWFyZ3VtZW50cyx2PXRoaXMsdz1lLG4pe2lmKHZvaWQgMD09PWgpcmV0dXJuIHIodyk7aWYoUylyZXR1cm4gaD1zZXRUaW1lb3V0KHMsdCksbyh3KX1yZXR1cm4gdm9pZCAwPT09aCYmKGg9c2V0VGltZW91dChzLHQpKSxnfXZhciBiLHYseSxnLGgsdyxrPTAsXz0hMSxTPSExLHo9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcihmKTtyZXR1cm4gdD11KHQpfHwwLGkobikmJihfPSEhbi5sZWFkaW5nLFM9Im1heFdhaXQiaW4gbix5PVM/eCh1KG4ubWF4V2FpdCl8fDAsdCk6eSx6PSJ0cmFpbGluZyJpbiBuPyEhbi50cmFpbGluZzp6KSxtLmNhbmNlbD1sLG0uZmx1c2g9cCxtfWZ1bmN0aW9uIG8oZSx0LG8pe3ZhciByPSEwLGE9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcihmKTtyZXR1cm4gaShvKSYmKHI9ImxlYWRpbmciaW4gbz8hIW8ubGVhZGluZzpyLGE9InRyYWlsaW5nImluIG8/ISFvLnRyYWlsaW5nOmEpLG4oZSx0LHtsZWFkaW5nOnIsbWF4V2FpdDp0LHRyYWlsaW5nOmF9KX1mdW5jdGlvbiBpKGUpe3ZhciB0PSJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjpjKGUpO3JldHVybiEhZSYmKCJvYmplY3QiPT10fHwiZnVuY3Rpb24iPT10KX1mdW5jdGlvbiByKGUpe3JldHVybiEhZSYmIm9iamVjdCI9PSgidW5kZWZpbmVkIj09dHlwZW9mIGU/InVuZGVmaW5lZCI6YyhlKSl9ZnVuY3Rpb24gYShlKXtyZXR1cm4ic3ltYm9sIj09KCJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjpjKGUpKXx8cihlKSYmay5jYWxsKGUpPT1kfWZ1bmN0aW9uIHUoZSl7aWYoIm51bWJlciI9PXR5cGVvZiBlKXJldHVybiBlO2lmKGEoZSkpcmV0dXJuIHM7aWYoaShlKSl7dmFyIHQ9ImZ1bmN0aW9uIj09dHlwZW9mIGUudmFsdWVPZj9lLnZhbHVlT2YoKTplO2U9aSh0KT90KyIiOnR9aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiAwPT09ZT9lOitlO2U9ZS5yZXBsYWNlKGwsIiIpO3ZhciBuPW0udGVzdChlKTtyZXR1cm4gbnx8Yi50ZXN0KGUpP3YoZS5zbGljZSgyKSxuPzI6OCk6cC50ZXN0KGUpP3M6K2V9dmFyIGM9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24oZSl7cmV0dXJuIHR5cGVvZiBlfTpmdW5jdGlvbihlKXtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmZS5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmZSE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9LGY9IkV4cGVjdGVkIGEgZnVuY3Rpb24iLHM9TmFOLGQ9IltvYmplY3QgU3ltYm9sXSIsbD0vXlxzK3xccyskL2cscD0vXlstK10weFswLTlhLWZdKyQvaSxtPS9eMGJbMDFdKyQvaSxiPS9eMG9bMC03XSskL2ksdj1wYXJzZUludCx5PSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiB0PyJ1bmRlZmluZWQiOmModCkpJiZ0JiZ0Lk9iamVjdD09PU9iamVjdCYmdCxnPSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmPyJ1bmRlZmluZWQiOmMoc2VsZikpJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZixoPXl8fGd8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksdz1PYmplY3QucHJvdG90eXBlLGs9dy50b1N0cmluZyx4PU1hdGgubWF4LGo9TWF0aC5taW4sTz1mdW5jdGlvbigpe3JldHVybiBoLkRhdGUubm93KCl9O2UuZXhwb3J0cz1vfSkuY2FsbCh0LGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCkpfSxmdW5jdGlvbihlLHQpeyhmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQsbil7ZnVuY3Rpb24gaSh0KXt2YXIgbj1iLG89djtyZXR1cm4gYj12PXZvaWQgMCxPPXQsZz1lLmFwcGx5KG8sbil9ZnVuY3Rpb24gcihlKXtyZXR1cm4gTz1lLGg9c2V0VGltZW91dChzLHQpLF8/aShlKTpnfWZ1bmN0aW9uIHUoZSl7dmFyIG49ZS13LG89ZS1PLGk9dC1uO3JldHVybiBTP3goaSx5LW8pOml9ZnVuY3Rpb24gZihlKXt2YXIgbj1lLXcsbz1lLU87cmV0dXJuIHZvaWQgMD09PXd8fG4+PXR8fG48MHx8UyYmbz49eX1mdW5jdGlvbiBzKCl7dmFyIGU9aigpO3JldHVybiBmKGUpP2QoZSk6dm9pZChoPXNldFRpbWVvdXQocyx1KGUpKSl9ZnVuY3Rpb24gZChlKXtyZXR1cm4gaD12b2lkIDAseiYmYj9pKGUpOihiPXY9dm9pZCAwLGcpfWZ1bmN0aW9uIGwoKXt2b2lkIDAhPT1oJiZjbGVhclRpbWVvdXQoaCksTz0wLGI9dz12PWg9dm9pZCAwfWZ1bmN0aW9uIHAoKXtyZXR1cm4gdm9pZCAwPT09aD9nOmQoaigpKX1mdW5jdGlvbiBtKCl7dmFyIGU9aigpLG49ZihlKTtpZihiPWFyZ3VtZW50cyx2PXRoaXMsdz1lLG4pe2lmKHZvaWQgMD09PWgpcmV0dXJuIHIodyk7aWYoUylyZXR1cm4gaD1zZXRUaW1lb3V0KHMsdCksaSh3KX1yZXR1cm4gdm9pZCAwPT09aCYmKGg9c2V0VGltZW91dChzLHQpKSxnfXZhciBiLHYseSxnLGgsdyxPPTAsXz0hMSxTPSExLHo9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcihjKTtyZXR1cm4gdD1hKHQpfHwwLG8obikmJihfPSEhbi5sZWFkaW5nLFM9Im1heFdhaXQiaW4gbix5PVM/ayhhKG4ubWF4V2FpdCl8fDAsdCk6eSx6PSJ0cmFpbGluZyJpbiBuPyEhbi50cmFpbGluZzp6KSxtLmNhbmNlbD1sLG0uZmx1c2g9cCxtfWZ1bmN0aW9uIG8oZSl7dmFyIHQ9InVuZGVmaW5lZCI9PXR5cGVvZiBlPyJ1bmRlZmluZWQiOnUoZSk7cmV0dXJuISFlJiYoIm9iamVjdCI9PXR8fCJmdW5jdGlvbiI9PXQpfWZ1bmN0aW9uIGkoZSl7cmV0dXJuISFlJiYib2JqZWN0Ij09KCJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjp1KGUpKX1mdW5jdGlvbiByKGUpe3JldHVybiJzeW1ib2wiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBlPyJ1bmRlZmluZWQiOnUoZSkpfHxpKGUpJiZ3LmNhbGwoZSk9PXN9ZnVuY3Rpb24gYShlKXtpZigibnVtYmVyIj09dHlwZW9mIGUpcmV0dXJuIGU7aWYocihlKSlyZXR1cm4gZjtpZihvKGUpKXt2YXIgdD0iZnVuY3Rpb24iPT10eXBlb2YgZS52YWx1ZU9mP2UudmFsdWVPZigpOmU7ZT1vKHQpP3QrIiI6dH1pZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIDA9PT1lP2U6K2U7ZT1lLnJlcGxhY2UoZCwiIik7dmFyIG49cC50ZXN0KGUpO3JldHVybiBufHxtLnRlc3QoZSk/YihlLnNsaWNlKDIpLG4/Mjo4KTpsLnRlc3QoZSk/ZjorZX12YXIgdT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0sYz0iRXhwZWN0ZWQgYSBmdW5jdGlvbiIsZj1OYU4scz0iW29iamVjdCBTeW1ib2xdIixkPS9eXHMrfFxzKyQvZyxsPS9eWy0rXTB4WzAtOWEtZl0rJC9pLHA9L14wYlswMV0rJC9pLG09L14wb1swLTddKyQvaSxiPXBhcnNlSW50LHY9Im9iamVjdCI9PSgidW5kZWZpbmVkIj09dHlwZW9mIHQ/InVuZGVmaW5lZCI6dSh0KSkmJnQmJnQuT2JqZWN0PT09T2JqZWN0JiZ0LHk9Im9iamVjdCI9PSgidW5kZWZpbmVkIj09dHlwZW9mIHNlbGY/InVuZGVmaW5lZCI6dShzZWxmKSkmJnNlbGYmJnNlbGYuT2JqZWN0PT09T2JqZWN0JiZzZWxmLGc9dnx8eXx8RnVuY3Rpb24oInJldHVybiB0aGlzIikoKSxoPU9iamVjdC5wcm90b3R5cGUsdz1oLnRvU3RyaW5nLGs9TWF0aC5tYXgseD1NYXRoLm1pbixqPWZ1bmN0aW9uKCl7cmV0dXJuIGcuRGF0ZS5ub3coKX07ZS5leHBvcnRzPW59KS5jYWxsKHQsZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKSl9LGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0KXt2YXIgbj1uZXcgcihvKTthPXQsbi5vYnNlcnZlKGkuZG9jdW1lbnRFbGVtZW50LHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMCxyZW1vdmVkTm9kZXM6ITB9KX1mdW5jdGlvbiBvKGUpe2UmJmUuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlLmFkZGVkTm9kZXMpLG49QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZS5yZW1vdmVkTm9kZXMpLG89dC5jb25jYXQobikuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlLmhhc0F0dHJpYnV0ZSYmZS5oYXNBdHRyaWJ1dGUoImRhdGEtYW9zIil9KS5sZW5ndGg7byYmYSgpfSl9T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBpPXdpbmRvdy5kb2N1bWVudCxyPXdpbmRvdy5NdXRhdGlvbk9ic2VydmVyfHx3aW5kb3cuV2ViS2l0TXV0YXRpb25PYnNlcnZlcnx8d2luZG93Lk1vek11dGF0aW9uT2JzZXJ2ZXIsYT1mdW5jdGlvbigpe307dC5kZWZhdWx0PW59LGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0KXtpZighKGUgaW5zdGFuY2VvZiB0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX1mdW5jdGlvbiBvKCl7cmV0dXJuIG5hdmlnYXRvci51c2VyQWdlbnR8fG5hdmlnYXRvci52ZW5kb3J8fHdpbmRvdy5vcGVyYXx8IiJ9T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBpPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQpe2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz10W25dO28uZW51bWVyYWJsZT1vLmVudW1lcmFibGV8fCExLG8uY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBvJiYoby53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsby5rZXksbyl9fXJldHVybiBmdW5jdGlvbih0LG4sbyl7cmV0dXJuIG4mJmUodC5wcm90b3R5cGUsbiksbyYmZSh0LG8pLHR9fSgpLHI9LyhhbmRyb2lkfGJiXGQrfG1lZWdvKS4rbW9iaWxlfGF2YW50Z298YmFkYVwvfGJsYWNrYmVycnl8YmxhemVyfGNvbXBhbHxlbGFpbmV8ZmVubmVjfGhpcHRvcHxpZW1vYmlsZXxpcChob25lfG9kKXxpcmlzfGtpbmRsZXxsZ2UgfG1hZW1vfG1pZHB8bW1wfG1vYmlsZS4rZmlyZWZveHxuZXRmcm9udHxvcGVyYSBtKG9ifGluKWl8cGFsbSggb3MpP3xwaG9uZXxwKGl4aXxyZSlcL3xwbHVja2VyfHBvY2tldHxwc3B8c2VyaWVzKDR8NikwfHN5bWJpYW58dHJlb3x1cFwuKGJyb3dzZXJ8bGluayl8dm9kYWZvbmV8d2FwfHdpbmRvd3MgY2V8eGRhfHhpaW5vL2ksYT0vMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLHU9LyhhbmRyb2lkfGJiXGQrfG1lZWdvKS4rbW9iaWxlfGF2YW50Z298YmFkYVwvfGJsYWNrYmVycnl8YmxhemVyfGNvbXBhbHxlbGFpbmV8ZmVubmVjfGhpcHRvcHxpZW1vYmlsZXxpcChob25lfG9kKXxpcmlzfGtpbmRsZXxsZ2UgfG1hZW1vfG1pZHB8bW1wfG1vYmlsZS4rZmlyZWZveHxuZXRmcm9udHxvcGVyYSBtKG9ifGluKWl8cGFsbSggb3MpP3xwaG9uZXxwKGl4aXxyZSlcL3xwbHVja2VyfHBvY2tldHxwc3B8c2VyaWVzKDR8NikwfHN5bWJpYW58dHJlb3x1cFwuKGJyb3dzZXJ8bGluayl8dm9kYWZvbmV8d2FwfHdpbmRvd3MgY2V8eGRhfHhpaW5vfGFuZHJvaWR8aXBhZHxwbGF5Ym9va3xzaWxrL2ksYz0vMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLGY9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7bih0aGlzLGUpfXJldHVybiBpKGUsW3trZXk6InBob25lIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBlPW8oKTtyZXR1cm4hKCFyLnRlc3QoZSkmJiFhLnRlc3QoZS5zdWJzdHIoMCw0KSkpfX0se2tleToibW9iaWxlIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBlPW8oKTtyZXR1cm4hKCF1LnRlc3QoZSkmJiFjLnRlc3QoZS5zdWJzdHIoMCw0KSkpfX0se2tleToidGFibGV0Iix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1vYmlsZSgpJiYhdGhpcy5waG9uZSgpfX1dKSxlfSgpO3QuZGVmYXVsdD1uZXcgZn0sZnVuY3Rpb24oZSx0KXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPWZ1bmN0aW9uKGUsdCxuKXt2YXIgbz1lLm5vZGUuZ2V0QXR0cmlidXRlKCJkYXRhLWFvcy1vbmNlIik7dD5lLnBvc2l0aW9uP2Uubm9kZS5jbGFzc0xpc3QuYWRkKCJhb3MtYW5pbWF0ZSIpOiJ1bmRlZmluZWQiIT10eXBlb2YgbyYmKCJmYWxzZSI9PT1vfHwhbiYmInRydWUiIT09bykmJmUubm9kZS5jbGFzc0xpc3QucmVtb3ZlKCJhb3MtYW5pbWF0ZSIpfSxvPWZ1bmN0aW9uKGUsdCl7dmFyIG89d2luZG93LnBhZ2VZT2Zmc2V0LGk9d2luZG93LmlubmVySGVpZ2h0O2UuZm9yRWFjaChmdW5jdGlvbihlLHIpe24oZSxpK28sdCl9KX07dC5kZWZhdWx0PW99LGZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBpPW4oMTIpLHI9byhpKSxhPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihlLG4pe2Uubm9kZS5jbGFzc0xpc3QuYWRkKCJhb3MtaW5pdCIpLGUucG9zaXRpb249KDAsci5kZWZhdWx0KShlLm5vZGUsdC5vZmZzZXQpfSksZX07dC5kZWZhdWx0PWF9LGZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBpPW4oMTMpLHI9byhpKSxhPWZ1bmN0aW9uKGUsdCl7dmFyIG49MCxvPTAsaT13aW5kb3cuaW5uZXJIZWlnaHQsYT17b2Zmc2V0OmUuZ2V0QXR0cmlidXRlKCJkYXRhLWFvcy1vZmZzZXQiKSxhbmNob3I6ZS5nZXRBdHRyaWJ1dGUoImRhdGEtYW9zLWFuY2hvciIpLGFuY2hvclBsYWNlbWVudDplLmdldEF0dHJpYnV0ZSgiZGF0YS1hb3MtYW5jaG9yLXBsYWNlbWVudCIpfTtzd2l0Y2goYS5vZmZzZXQmJiFpc05hTihhLm9mZnNldCkmJihvPXBhcnNlSW50KGEub2Zmc2V0KSksYS5hbmNob3ImJmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYS5hbmNob3IpJiYoZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGEuYW5jaG9yKVswXSksbj0oMCxyLmRlZmF1bHQpKGUpLnRvcCxhLmFuY2hvclBsYWNlbWVudCl7Y2FzZSJ0b3AtYm90dG9tIjpicmVhaztjYXNlImNlbnRlci1ib3R0b20iOm4rPWUub2Zmc2V0SGVpZ2h0LzI7YnJlYWs7Y2FzZSJib3R0b20tYm90dG9tIjpuKz1lLm9mZnNldEhlaWdodDticmVhaztjYXNlInRvcC1jZW50ZXIiOm4rPWkvMjticmVhaztjYXNlImJvdHRvbS1jZW50ZXIiOm4rPWkvMitlLm9mZnNldEhlaWdodDticmVhaztjYXNlImNlbnRlci1jZW50ZXIiOm4rPWkvMitlLm9mZnNldEhlaWdodC8yO2JyZWFrO2Nhc2UidG9wLXRvcCI6bis9aTticmVhaztjYXNlImJvdHRvbS10b3AiOm4rPWUub2Zmc2V0SGVpZ2h0K2k7YnJlYWs7Y2FzZSJjZW50ZXItdG9wIjpuKz1lLm9mZnNldEhlaWdodC8yK2l9cmV0dXJuIGEuYW5jaG9yUGxhY2VtZW50fHxhLm9mZnNldHx8aXNOYU4odCl8fChvPXQpLG4rb307dC5kZWZhdWx0PWF9LGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPTA7ZSYmIWlzTmFOKGUub2Zmc2V0TGVmdCkmJiFpc05hTihlLm9mZnNldFRvcCk7KXQrPWUub2Zmc2V0TGVmdC0oIkJPRFkiIT1lLnRhZ05hbWU/ZS5zY3JvbGxMZWZ0OjApLG4rPWUub2Zmc2V0VG9wLSgiQk9EWSIhPWUudGFnTmFtZT9lLnNjcm9sbFRvcDowKSxlPWUub2Zmc2V0UGFyZW50O3JldHVybnt0b3A6bixsZWZ0OnR9fTt0LmRlZmF1bHQ9bn0sZnVuY3Rpb24oZSx0KXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPWZ1bmN0aW9uKGUpe3JldHVybiBlPWV8fGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLWFvc10iKSxBcnJheS5wcm90b3R5cGUubWFwLmNhbGwoZSxmdW5jdGlvbihlKXtyZXR1cm57bm9kZTplfX0pfTt0LmRlZmF1bHQ9bn1dKX0pOw=="}},"time_used":42,"timings":{"blocked":15,"dns":0,"connect":0,"send":0,"wait":27,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"images.unsplash.com/photo-1692417671380-27df079875af?crop=entropy\u0026cs=tinysrgb\u0026fit=max\u0026fm=jpg\u0026ixid=M3w3Nzg4Nzd8MHwxfHNlYXJjaHwxfHxkYXJrJTIwY3J5cHRvY3VycmVuY3klMjBiaXRjb2luJTIwYmFja2dyb3VuZHxlbnwxfHx8fDE3NTY5Mzk1NzJ8MA\u0026ixlib=rb-4.1.0\u0026q=80\u0026w=1080","fqdn":"images.unsplash.com","domain":"unsplash.com","tld":"com"},"ip":{"addr":"151.101.194.208","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.564Z","timestamp":1785102002564,"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":"images.unsplash.com","organization":""},"issuer":{"commonName":"GlobalSign Atlas R3 DV TLS CA 2025 Q3","organization":"GlobalSign nv-sa"},"validity":{"start":"Tue, 12 Aug 2025 01:21:13 GMT","end":"Sun, 13 Sep 2026 01:21:12 GMT"},"fingerprint":{"sha1":"46:28:F0:69:6F:53:FC:9F:BA:6A:73:37:D0:D7:C8:87:AE:06:47:7A","sha256":"80:93:A2:9A:83:84:21:A8:A0:ED:D9:72:A8:E3:4D:EC:8E:A5:E4:4B:42:68:17:09:AA:D6:6C:7C:1B:9D:2A:48"}}},"request":{"raw":"GET /photo-1692417671380-27df079875af?crop=entropy\u0026cs=tinysrgb\u0026fit=max\u0026fm=jpg\u0026ixid=M3w3Nzg4Nzd8MHwxfHNlYXJjaHwxfHxkYXJrJTIwY3J5cHRvY3VycmVuY3klMjBiaXRjb2luJTIwYmFja2dyb3VuZHxlbnwxfHx8fDE3NTY5Mzk1NzJ8MA\u0026ixlib=rb-4.1.0\u0026q=80\u0026w=1080 HTTP/1.1\r\nHost: images.unsplash.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://exxchanger.com.ua/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-length: 76328\r\nx-imgix-id: c103fc3f94de209a3fef7746dbf5e98dbb92e575\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 23 Jul 2026 00:21:24 GMT\r\nserver: imgix\r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\nage: 335918\r\naccept-ranges: bytes\r\ncontent-type: image/jpeg\r\naccess-control-allow-origin: *\r\ntiming-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\nx-served-by: cache-fra-eddf8230107-FRA, cache-bma-essb1270028-BMA\r\nx-cache: HIT, HIT\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":null,"data":{"size":76328,"size_decoded":76912,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, resolution (DPI), density 72x72, segment length 16, progressive, precision 8, 1080x720, components 3","md5":"5a34e6bf669cccbeb72a6028fa2c5965","sha1":"fbbe0c954521509f0f3383d54cad95f159e6bdb7","sha256":"00f25879fd8b03a2ec031ecdda1b1e152d0fc857f0993b27fb55f8d9084b5a4b","sha512":"c000686b8a8587205383af7e67885407970297462b44a8d75eb89cfd26116216945b7c4d55467b69cae317a54c907efeb3b498443e84e1d7dd6a95ffe7b1cefb","ssdeep":"1536:dtFeWA4aZ6TOvvTkoW8exbzLF4QfyL5jB+Mlr9FdbLuZ4Fx+bg:NeWIATOvvTkoW8eQQqLj+Mlr9F5nSE","tlshash":"427312b179658211c3fdb5b19b5eea3532f9e723cc39058c2c9ae719427cdaa20d0357","first_seen":"2026-07-26T21:40:33.841038Z","last_seen":"2026-07-26T21:43:05.445879Z","times_seen":4,"resource_available":false,"data":"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"}},"time_used":19,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":10,"receive":9,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"exxchanger.com.ua/icon.png","fqdn":"exxchanger.com.ua","domain":"exxchanger.com.ua","tld":"com.ua"},"ip":{"addr":"31.131.26.121","port":443,"asn":56851,"as":"PE Skurykhin Mukola Volodumurovuch","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.821Z","timestamp":1785102002821,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"exxchanger.com.ua","organization":""},"issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validity":{"start":"Sun, 28 Jun 2026 14:15:16 GMT","end":"Sat, 26 Sep 2026 14:15:15 GMT"},"fingerprint":{"sha1":"F9:EA:7C:99:68:9B:EF:3D:3C:80:3A:37:2F:98:F2:E5:43:4C:77:7F","sha256":"58:64:80:3B:10:AA:78:D8:CC:6A:A5:72:B8:35:1A:4C:DB:B2:C0:06:8D:83:20:D6:54:ED:8F:F2:C7:0F:87:38"}}},"request":{"raw":"GET /icon.png HTTP/1.1\r\nHost: exxchanger.com.ua\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://exxchanger.com.ua/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncache-control: public, max-age=604800\r\nexpires: Sun, 02 Aug 2026 21:40:02 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 15 Sep 2025 16:02:22 GMT\r\naccept-ranges: bytes\r\ncontent-length: 2945\r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\nserver: LiteSpeed\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2945,"size_decoded":3230,"mime_type":"image/png","magic":"PNG image data, 192 x 192, 8-bit/color RGBA, non-interlaced","md5":"a194107f90d35b5349b8608a3b744165","sha1":"c38d83e54ab8eb4c3898f487f84e43418d1c1931","sha256":"207ab071e17c411a52c30ea0c1e00b9f83bd6c80499c6ddbf03f64f9e77b5580","sha512":"7e6025a2df61e93000cacc3f2119e5f58598b4f299c04c5ea9e76da634cc735e21475e592eb2f50ba1bc83e52b32ab26f8a74245a3b6a183ce6831ca334c0072","ssdeep":"","tlshash":"2f5108abd3c01ab5f90c0175f7532796b2ecac6702bd206c197b98811cb030819b1fa1","first_seen":"2026-07-26T21:40:33.834191Z","last_seen":"2026-07-26T21:43:05.436641Z","times_seen":4,"resource_available":false,"data":"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"}},"time_used":35,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":35,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.tailwindcss.com/","fqdn":"cdn.tailwindcss.com","domain":"tailwindcss.com","tld":"com"},"ip":{"addr":"172.67.68.11","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.125Z","timestamp":1785102002125,"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":"tailwindcss.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Fri, 17 Jul 2026 20:38:38 GMT","end":"Thu, 15 Oct 2026 21:38:35 GMT"},"fingerprint":{"sha1":"AF:4F:AD:59:FA:ED:77:04:0D:32:56:48:B0:E5:1B:38:67:6D:7D:02","sha256":"E7:FC:CF:2D:6A:CC:F5:3C:4C:1E:9D:CD:21:8A:72:A3:DB:7C:B1:50:0F:83:D1:DC:E4:AD:25:90:8F:98:37:0F"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: cdn.tailwindcss.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://exxchanger.com.ua/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 302 \r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\ncache-control: max-age=14400\r\nlocation: /3.4.17\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000\r\nx-vercel-cache: MISS\r\nx-vercel-id: fra1::iad1::scsxc-1785101147225-daeff51f1eab\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nage: 854\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=mUi1Xg1fkHzR4dhHdSOpe4%2FOBu%2BpNNA2nJnWweZN9thXL2ncygcWw0LZxeJqyhN%2FPX8%2BsJHVMVKZNExvWLnMHULBFPXsEDqa%2BirnkAg5JqGEe6NpXTEQxqRZqwI6lEb90S2Rvho%3D\"}]}\r\ncf-ray: a2168f7979fab515-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"302","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/javascript","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-11T04:57:21.506886Z","times_seen":17830408,"resource_available":true,"data":null}},"time_used":38,"timings":{"blocked":-1,"dns":3,"connect":2,"send":0,"wait":13,"receive":0,"ssl":19},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"images.unsplash.com/photo-1670851050245-d861fd433d06?crop=entropy\u0026cs=tinysrgb\u0026fit=max\u0026fm=jpg\u0026ixid=M3w3Nzg4Nzd8MHwxfHNlYXJjaHwxfHxkYXJrJTIwY3J5cHRvY3VycmVuY3klMjBiaXRjb2luJTIwYmFja2dyb3VuZHxlbnwxfHx8fDE3NTY5Mzk1NzJ8MA\u0026ixlib=rb-4.1.0\u0026q=80\u0026w=1080","fqdn":"images.unsplash.com","domain":"unsplash.com","tld":"com"},"ip":{"addr":"151.101.194.208","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.137Z","timestamp":1785102002137,"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":"images.unsplash.com","organization":""},"issuer":{"commonName":"GlobalSign Atlas R3 DV TLS CA 2025 Q3","organization":"GlobalSign nv-sa"},"validity":{"start":"Tue, 12 Aug 2025 01:21:13 GMT","end":"Sun, 13 Sep 2026 01:21:12 GMT"},"fingerprint":{"sha1":"46:28:F0:69:6F:53:FC:9F:BA:6A:73:37:D0:D7:C8:87:AE:06:47:7A","sha256":"80:93:A2:9A:83:84:21:A8:A0:ED:D9:72:A8:E3:4D:EC:8E:A5:E4:4B:42:68:17:09:AA:D6:6C:7C:1B:9D:2A:48"}}},"request":{"raw":"GET /photo-1670851050245-d861fd433d06?crop=entropy\u0026cs=tinysrgb\u0026fit=max\u0026fm=jpg\u0026ixid=M3w3Nzg4Nzd8MHwxfHNlYXJjaHwxfHxkYXJrJTIwY3J5cHRvY3VycmVuY3klMjBiaXRjb2luJTIwYmFja2dyb3VuZHxlbnwxfHx8fDE3NTY5Mzk1NzJ8MA\u0026ixlib=rb-4.1.0\u0026q=80\u0026w=1080 HTTP/1.1\r\nHost: images.unsplash.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://exxchanger.com.ua/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nx-imgix-id: 6373baef4814a3f84aaabfb1a52c0961fd3451f5\r\ncache-control: public, max-age=31536000\r\nlast-modified: Tue, 23 Jun 2026 04:36:39 GMT\r\nserver: imgix\r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\nage: 2912602\r\naccept-ranges: bytes\r\ncontent-type: image/jpeg\r\naccess-control-allow-origin: *\r\ntiming-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\nx-served-by: cache-fra-etou8220165-FRA, cache-bma-essb1270038-BMA\r\nx-cache: HIT, HIT\r\nalt-svc: h3=\":443\";ma=86400,h3-29=\":443\";ma=86400,h3-27=\":443\";ma=86400\r\ncontent-length: 122667\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":122667,"size_decoded":123273,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, resolution (DPI), density 72x72, segment length 16, progressive, precision 8, 1080x777, components 3","md5":"45ed76aafb8764f61cb3169c652d80c8","sha1":"399a6c05406719925376d50aef563676e019c5eb","sha256":"aa0f00e9112e0502a4566d57139c6023fbb5f7b7cec77f91f7e58969b74ca5bf","sha512":"b208732d3b6c5bb5d67b6443b9516fb65f320c24608acdaddc8809a4bcc2c4b1666780bb241f6174352ef9cc0cd3e35b971a3f76348622c591459205b5299597","ssdeep":"3072:EwabM3MVXiERU3asAZ3uxbwUftWynRt/pp/081GsHaO9wZ:EL3yEBsM3uRwU8ynhpKyeZ","tlshash":"95c3122b6bc3f110de865976bd998e1b728838e479e477c9636b7c059f27001133ac7a","first_seen":"2026-05-10T21:00:25.078096Z","last_seen":"2026-07-26T21:43:05.437917Z","times_seen":5,"resource_available":false,"data":"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"}},"time_used":94,"timings":{"blocked":38,"dns":0,"connect":9,"send":0,"wait":11,"receive":19,"ssl":17},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.tailwindcss.com/3.4.17","fqdn":"cdn.tailwindcss.com","domain":"tailwindcss.com","tld":"com"},"ip":{"addr":"172.67.68.11","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://exxchanger.com.ua/","date":"2026-07-26T21:40:02.167Z","timestamp":1785102002167,"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":"tailwindcss.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Fri, 17 Jul 2026 20:38:38 GMT","end":"Thu, 15 Oct 2026 21:38:35 GMT"},"fingerprint":{"sha1":"AF:4F:AD:59:FA:ED:77:04:0D:32:56:48:B0:E5:1B:38:67:6D:7D:02","sha256":"E7:FC:CF:2D:6A:CC:F5:3C:4C:1E:9D:CD:21:8A:72:A3:DB:7C:B1:50:0F:83:D1:DC:E4:AD:25:90:8F:98:37:0F"}}},"request":{"raw":"GET /3.4.17 HTTP/1.1\r\nHost: cdn.tailwindcss.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://exxchanger.com.ua/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Sun, 26 Jul 2026 21:40:02 GMT\r\ncontent-type: text/javascript\r\ncache-control: max-age=31536000\r\ncontent-encoding: br\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000\r\nx-vercel-cache: MISS\r\nx-vercel-id: fra1::iad1::bj55r-1781146628084-40ce7f37f405\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\nage: 3955373\r\nlast-modified: Wed, 01 Jul 2026 01:49:34 GMT\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=OqOXRP8DHAiz9NfIkfs1bZern%2FjOePvSTaTwJ5n%2BEJcmPlcGdL8EmV1mOEm2OhnJrYK5uH0Hk1dt5dE9%2BkejCugMiFoXWckHVjkU2NhV04uUknVPtUWpZBS2qaYdKqDDHeOYoxM%3D\"}]}\r\ncf-ray: a2168f798a0eb515-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":407279,"size_decoded":127120,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (52853)","md5":"7a614b9a197e532c00d09a23b0996b5f","sha1":"1ff1738a40f3716e30e9031b181b0955ae578955","sha256":"176e894661aa9cdc9a5cba6c720044cbbf7b8bd80d1c9a142a7c24b1b6c50d15","sha512":"a67bc26f52d938358471be5671ff4b79e11af4e68b486aaf73a35a4c9bf3777aab51101af81563b4e5b7ba4b04dd8971fcfa9ee2c41fb10a0c1ee5604a99abd6","ssdeep":"12288:fpgrZxSAoNbJb0Wie75aUXGuyQZhK4O0s:RCVoNB0Wie75aUWmnO0s","tlshash":"e8844aa57396702647eb51e850ea1042f2beaa38840c44bcf7edd4da39e5e4440fbf79","first_seen":"2025-07-28T16:58:08.903462Z","last_seen":"2026-08-11T04:45:48.769704Z","times_seen":48779,"resource_available":true,"data":"KCgpPT57dmFyIHF2PU9iamVjdC5jcmVhdGU7dmFyIEhpPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTt2YXIgJHY9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt2YXIgTHY9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXM7dmFyIE12PU9iamVjdC5nZXRQcm90b3R5cGVPZixOdj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBkZj1yPT5IaShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgaGY9cj0+e2lmKHR5cGVvZiByZXF1aXJlIT0idW5kZWZpbmVkIilyZXR1cm4gcmVxdWlyZShyKTt0aHJvdyBuZXcgRXJyb3IoJ0R5bmFtaWMgcmVxdWlyZSBvZiAiJytyKyciIGlzIG5vdCBzdXBwb3J0ZWQnKX07dmFyIFA9KHIsZSk9PigpPT4ociYmKGU9cihyPTApKSxlKTt2YXIgeD0ocixlKT0+KCk9PihlfHxyKChlPXtleHBvcnRzOnt9fSkuZXhwb3J0cyxlKSxlLmV4cG9ydHMpLEdlPShyLGUpPT57ZGYocik7Zm9yKHZhciB0IGluIGUpSGkocix0LHtnZXQ6ZVt0XSxlbnVtZXJhYmxlOiEwfSl9LEJ2PShyLGUsdCk9PntpZihlJiZ0eXBlb2YgZT09Im9iamVjdCJ8fHR5cGVvZiBlPT0iZnVuY3Rpb24iKWZvcihsZXQgaSBvZiBMdihlKSkhTnYuY2FsbChyLGkpJiZpIT09ImRlZmF1bHQiJiZIaShyLGkse2dldDooKT0+ZVtpXSxlbnVtZXJhYmxlOiEodD0kdihlLGkpKXx8dC5lbnVtZXJhYmxlfSk7cmV0dXJuIHJ9LHBlPXI9PkJ2KGRmKEhpKHIhPW51bGw/cXYoTXYocikpOnt9LCJkZWZhdWx0IixyJiZyLl9fZXNNb2R1bGUmJiJkZWZhdWx0ImluIHI/e2dldDooKT0+ci5kZWZhdWx0LGVudW1lcmFibGU6ITB9Ont2YWx1ZTpyLGVudW1lcmFibGU6ITB9KSkscik7dmFyIG0sdT1QKCgpPT57bT17cGxhdGZvcm06IiIsZW52Ont9LHZlcnNpb25zOntub2RlOiIxNC4xNy42In19fSk7dmFyIEZ2LGJlLGZ0PVAoKCk9Pnt1KCk7RnY9MCxiZT17cmVhZEZpbGVTeW5jOnI9PnNlbGZbcl18fCIiLHN0YXRTeW5jOigpPT4oe210aW1lTXM6RnYrK30pLHByb21pc2VzOntyZWFkRmlsZTpyPT5Qcm9taXNlLnJlc29sdmUoc2VsZltyXXx8IiIpfX19KTt2YXIgRnM9eCgob1AsZ2YpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgbWY9Y2xhc3N7Y29uc3RydWN0b3IoZT17fSl7aWYoIShlLm1heFNpemUmJmUubWF4U2l6ZT4wKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJgbWF4U2l6ZWAgbXVzdCBiZSBhIG51bWJlciBncmVhdGVyIHRoYW4gMCIpO2lmKHR5cGVvZiBlLm1heEFnZT09Im51bWJlciImJmUubWF4QWdlPT09MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJgbWF4QWdlYCBtdXN0IGJlIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIik7dGhpcy5tYXhTaXplPWUubWF4U2l6ZSx0aGlzLm1heEFnZT1lLm1heEFnZXx8MS8wLHRoaXMub25FdmljdGlvbj1lLm9uRXZpY3Rpb24sdGhpcy5jYWNoZT1uZXcgTWFwLHRoaXMub2xkQ2FjaGU9bmV3IE1hcCx0aGlzLl9zaXplPTB9X2VtaXRFdmljdGlvbnMoZSl7aWYodHlwZW9mIHRoaXMub25FdmljdGlvbj09ImZ1bmN0aW9uIilmb3IobGV0W3QsaV1vZiBlKXRoaXMub25FdmljdGlvbih0LGkudmFsdWUpfV9kZWxldGVJZkV4cGlyZWQoZSx0KXtyZXR1cm4gdHlwZW9mIHQuZXhwaXJ5PT0ibnVtYmVyIiYmdC5leHBpcnk8PURhdGUubm93KCk/KHR5cGVvZiB0aGlzLm9uRXZpY3Rpb249PSJmdW5jdGlvbiImJnRoaXMub25FdmljdGlvbihlLHQudmFsdWUpLHRoaXMuZGVsZXRlKGUpKTohMX1fZ2V0T3JEZWxldGVJZkV4cGlyZWQoZSx0KXtpZih0aGlzLl9kZWxldGVJZkV4cGlyZWQoZSx0KT09PSExKXJldHVybiB0LnZhbHVlfV9nZXRJdGVtVmFsdWUoZSx0KXtyZXR1cm4gdC5leHBpcnk/dGhpcy5fZ2V0T3JEZWxldGVJZkV4cGlyZWQoZSx0KTp0LnZhbHVlfV9wZWVrKGUsdCl7bGV0IGk9dC5nZXQoZSk7cmV0dXJuIHRoaXMuX2dldEl0ZW1WYWx1ZShlLGkpfV9zZXQoZSx0KXt0aGlzLmNhY2hlLnNldChlLHQpLHRoaXMuX3NpemUrKyx0aGlzLl9zaXplPj10aGlzLm1heFNpemUmJih0aGlzLl9zaXplPTAsdGhpcy5fZW1pdEV2aWN0aW9ucyh0aGlzLm9sZENhY2hlKSx0aGlzLm9sZENhY2hlPXRoaXMuY2FjaGUsdGhpcy5jYWNoZT1uZXcgTWFwKX1fbW92ZVRvUmVjZW50KGUsdCl7dGhpcy5vbGRDYWNoZS5kZWxldGUoZSksdGhpcy5fc2V0KGUsdCl9Kl9lbnRyaWVzQXNjZW5kaW5nKCl7Zm9yKGxldCBlIG9mIHRoaXMub2xkQ2FjaGUpe2xldFt0LGldPWU7dGhpcy5jYWNoZS5oYXModCl8fHRoaXMuX2RlbGV0ZUlmRXhwaXJlZCh0LGkpPT09ITEmJih5aWVsZCBlKX1mb3IobGV0IGUgb2YgdGhpcy5jYWNoZSl7bGV0W3QsaV09ZTt0aGlzLl9kZWxldGVJZkV4cGlyZWQodCxpKT09PSExJiYoeWllbGQgZSl9fWdldChlKXtpZih0aGlzLmNhY2hlLmhhcyhlKSl7bGV0IHQ9dGhpcy5jYWNoZS5nZXQoZSk7cmV0dXJuIHRoaXMuX2dldEl0ZW1WYWx1ZShlLHQpfWlmKHRoaXMub2xkQ2FjaGUuaGFzKGUpKXtsZXQgdD10aGlzLm9sZENhY2hlLmdldChlKTtpZih0aGlzLl9kZWxldGVJZkV4cGlyZWQoZSx0KT09PSExKXJldHVybiB0aGlzLl9tb3ZlVG9SZWNlbnQoZSx0KSx0LnZhbHVlfX1zZXQoZSx0LHttYXhBZ2U6aT10aGlzLm1heEFnZT09PTEvMD92b2lkIDA6RGF0ZS5ub3coKSt0aGlzLm1heEFnZX09e30pe3RoaXMuY2FjaGUuaGFzKGUpP3RoaXMuY2FjaGUuc2V0KGUse3ZhbHVlOnQsbWF4QWdlOml9KTp0aGlzLl9zZXQoZSx7dmFsdWU6dCxleHBpcnk6aX0pfWhhcyhlKXtyZXR1cm4gdGhpcy5jYWNoZS5oYXMoZSk/IXRoaXMuX2RlbGV0ZUlmRXhwaXJlZChlLHRoaXMuY2FjaGUuZ2V0KGUpKTp0aGlzLm9sZENhY2hlLmhhcyhlKT8hdGhpcy5fZGVsZXRlSWZFeHBpcmVkKGUsdGhpcy5vbGRDYWNoZS5nZXQoZSkpOiExfXBlZWsoZSl7aWYodGhpcy5jYWNoZS5oYXMoZSkpcmV0dXJuIHRoaXMuX3BlZWsoZSx0aGlzLmNhY2hlKTtpZih0aGlzLm9sZENhY2hlLmhhcyhlKSlyZXR1cm4gdGhpcy5fcGVlayhlLHRoaXMub2xkQ2FjaGUpfWRlbGV0ZShlKXtsZXQgdD10aGlzLmNhY2hlLmRlbGV0ZShlKTtyZXR1cm4gdCYmdGhpcy5fc2l6ZS0tLHRoaXMub2xkQ2FjaGUuZGVsZXRlKGUpfHx0fWNsZWFyKCl7dGhpcy5jYWNoZS5jbGVhcigpLHRoaXMub2xkQ2FjaGUuY2xlYXIoKSx0aGlzLl9zaXplPTB9cmVzaXplKGUpe2lmKCEoZSYmZT4wKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJgbWF4U2l6ZWAgbXVzdCBiZSBhIG51bWJlciBncmVhdGVyIHRoYW4gMCIpO2xldCB0PVsuLi50aGlzLl9lbnRyaWVzQXNjZW5kaW5nKCldLGk9dC5sZW5ndGgtZTtpPDA/KHRoaXMuY2FjaGU9bmV3IE1hcCh0KSx0aGlzLm9sZENhY2hlPW5ldyBNYXAsdGhpcy5fc2l6ZT10Lmxlbmd0aCk6KGk+MCYmdGhpcy5fZW1pdEV2aWN0aW9ucyh0LnNsaWNlKDAsaSkpLHRoaXMub2xkQ2FjaGU9bmV3IE1hcCh0LnNsaWNlKGkpKSx0aGlzLmNhY2hlPW5ldyBNYXAsdGhpcy5fc2l6ZT0wKSx0aGlzLm1heFNpemU9ZX0qa2V5cygpe2ZvcihsZXRbZV1vZiB0aGlzKXlpZWxkIGV9KnZhbHVlcygpe2ZvcihsZXRbLGVdb2YgdGhpcyl5aWVsZCBlfSpbU3ltYm9sLml0ZXJhdG9yXSgpe2ZvcihsZXQgZSBvZiB0aGlzLmNhY2hlKXtsZXRbdCxpXT1lO3RoaXMuX2RlbGV0ZUlmRXhwaXJlZCh0LGkpPT09ITEmJih5aWVsZFt0LGkudmFsdWVdKX1mb3IobGV0IGUgb2YgdGhpcy5vbGRDYWNoZSl7bGV0W3QsaV09ZTt0aGlzLmNhY2hlLmhhcyh0KXx8dGhpcy5fZGVsZXRlSWZFeHBpcmVkKHQsaSk9PT0hMSYmKHlpZWxkW3QsaS52YWx1ZV0pfX0qZW50cmllc0Rlc2NlbmRpbmcoKXtsZXQgZT1bLi4udGhpcy5jYWNoZV07Zm9yKGxldCB0PWUubGVuZ3RoLTE7dD49MDstLXQpe2xldCBpPWVbdF0sW24sc109aTt0aGlzLl9kZWxldGVJZkV4cGlyZWQobixzKT09PSExJiYoeWllbGRbbixzLnZhbHVlXSl9ZT1bLi4udGhpcy5vbGRDYWNoZV07Zm9yKGxldCB0PWUubGVuZ3RoLTE7dD49MDstLXQpe2xldCBpPWVbdF0sW24sc109aTt0aGlzLmNhY2hlLmhhcyhuKXx8dGhpcy5fZGVsZXRlSWZFeHBpcmVkKG4scyk9PT0hMSYmKHlpZWxkW24scy52YWx1ZV0pfX0qZW50cmllc0FzY2VuZGluZygpe2ZvcihsZXRbZSx0XW9mIHRoaXMuX2VudHJpZXNBc2NlbmRpbmcoKSl5aWVsZFtlLHQudmFsdWVdfWdldCBzaXplKCl7aWYoIXRoaXMuX3NpemUpcmV0dXJuIHRoaXMub2xkQ2FjaGUuc2l6ZTtsZXQgZT0wO2ZvcihsZXQgdCBvZiB0aGlzLm9sZENhY2hlLmtleXMoKSl0aGlzLmNhY2hlLmhhcyh0KXx8ZSsrO3JldHVybiBNYXRoLm1pbih0aGlzLl9zaXplK2UsdGhpcy5tYXhTaXplKX19O2dmLmV4cG9ydHM9bWZ9KTt2YXIgeWYsYmY9UCgoKT0+e3UoKTt5Zj1yPT5yJiZyLl9oYXNofSk7ZnVuY3Rpb24gV2kocil7cmV0dXJuIHlmKHIse2lnbm9yZVVua25vd246ITB9KX12YXIgd2Y9UCgoKT0+e3UoKTtiZigpfSk7ZnVuY3Rpb24geHQocil7aWYocj1gJHtyfWAscj09PSIwIilyZXR1cm4iMCI7aWYoL15bKy1dPyhcZCt8XGQqXC5cZCspKGVbKy1dP1xkKyk/KCV8XHcrKT8kLy50ZXN0KHIpKXJldHVybiByLnJlcGxhY2UoL15bKy1dPy8sdD0+dD09PSItIj8iIjoiLSIpO2xldCBlPVsidmFyIiwiY2FsYyIsIm1pbiIsIm1heCIsImNsYW1wIl07Zm9yKGxldCB0IG9mIGUpaWYoci5pbmNsdWRlcyhgJHt0fShgKSlyZXR1cm5gY2FsYygke3J9ICogLTEpYH12YXIgR2k9UCgoKT0+e3UoKX0pO3ZhciB2Zix4Zj1QKCgpPT57dSgpO3ZmPVsicHJlZmxpZ2h0IiwiY29udGFpbmVyIiwiYWNjZXNzaWJpbGl0eSIsInBvaW50ZXJFdmVudHMiLCJ2aXNpYmlsaXR5IiwicG9zaXRpb24iLCJpbnNldCIsImlzb2xhdGlvbiIsInpJbmRleCIsIm9yZGVyIiwiZ3JpZENvbHVtbiIsImdyaWRDb2x1bW5TdGFydCIsImdyaWRDb2x1bW5FbmQiLCJncmlkUm93IiwiZ3JpZFJvd1N0YXJ0IiwiZ3JpZFJvd0VuZCIsImZsb2F0IiwiY2xlYXIiLCJtYXJnaW4iLCJib3hTaXppbmciLCJsaW5lQ2xhbXAiLCJkaXNwbGF5IiwiYXNwZWN0UmF0aW8iLCJzaXplIiwiaGVpZ2h0IiwibWF4SGVpZ2h0IiwibWluSGVpZ2h0Iiwid2lkdGgiLCJtaW5XaWR0aCIsIm1heFdpZHRoIiwiZmxleCIsImZsZXhTaHJpbmsiLCJmbGV4R3JvdyIsImZsZXhCYXNpcyIsInRhYmxlTGF5b3V0IiwiY2FwdGlvblNpZGUiLCJib3JkZXJDb2xsYXBzZSIsImJvcmRlclNwYWNpbmciLCJ0cmFuc2Zvcm1PcmlnaW4iLCJ0cmFuc2xhdGUiLCJyb3RhdGUiLCJza2V3Iiwic2NhbGUiLCJ0cmFuc2Zvcm0iLCJhbmltYXRpb24iLCJjdXJzb3IiLCJ0b3VjaEFjdGlvbiIsInVzZXJTZWxlY3QiLCJyZXNpemUiLCJzY3JvbGxTbmFwVHlwZSIsInNjcm9sbFNuYXBBbGlnbiIsInNjcm9sbFNuYXBTdG9wIiwic2Nyb2xsTWFyZ2luIiwic2Nyb2xsUGFkZGluZyIsImxpc3RTdHlsZVBvc2l0aW9uIiwibGlzdFN0eWxlVHlwZSIsImxpc3RTdHlsZUltYWdlIiwiYXBwZWFyYW5jZSIsImNvbHVtbnMiLCJicmVha0JlZm9yZSIsImJyZWFrSW5zaWRlIiwiYnJlYWtBZnRlciIsImdyaWRBdXRvQ29sdW1ucyIsImdyaWRBdXRvRmxvdyIsImdyaWRBdXRvUm93cyIsImdyaWRUZW1wbGF0ZUNvbHVtbnMiLCJncmlkVGVtcGxhdGVSb3dzIiwiZmxleERpcmVjdGlvbiIsImZsZXhXcmFwIiwicGxhY2VDb250ZW50IiwicGxhY2VJdGVtcyIsImFsaWduQ29udGVudCIsImFsaWduSXRlbXMiLCJqdXN0aWZ5Q29udGVudCIsImp1c3RpZnlJdGVtcyIsImdhcCIsInNwYWNlIiwiZGl2aWRlV2lkdGgiLCJkaXZpZGVTdHlsZSIsImRpdmlkZUNvbG9yIiwiZGl2aWRlT3BhY2l0eSIsInBsYWNlU2VsZiIsImFsaWduU2VsZiIsImp1c3RpZnlTZWxmIiwib3ZlcmZsb3ciLCJvdmVyc2Nyb2xsQmVoYXZpb3IiLCJzY3JvbGxCZWhhdmlvciIsInRleHRPdmVyZmxvdyIsImh5cGhlbnMiLCJ3aGl0ZXNwYWNlIiwidGV4dFdyYXAiLCJ3b3JkQnJlYWsiLCJib3JkZXJSYWRpdXMiLCJib3JkZXJXaWR0aCIsImJvcmRlclN0eWxlIiwiYm9yZGVyQ29sb3IiLCJib3JkZXJPcGFjaXR5IiwiYmFja2dyb3VuZENvbG9yIiwiYmFja2dyb3VuZE9wYWNpdHkiLCJiYWNrZ3JvdW5kSW1hZ2UiLCJncmFkaWVudENvbG9yU3RvcHMiLCJib3hEZWNvcmF0aW9uQnJlYWsiLCJiYWNrZ3JvdW5kU2l6ZSIsImJhY2tncm91bmRBdHRhY2htZW50IiwiYmFja2dyb3VuZENsaXAiLCJiYWNrZ3JvdW5kUG9zaXRpb24iLCJiYWNrZ3JvdW5kUmVwZWF0IiwiYmFja2dyb3VuZE9yaWdpbiIsImZpbGwiLCJzdHJva2UiLCJzdHJva2VXaWR0aCIsIm9iamVjdEZpdCIsIm9iamVjdFBvc2l0aW9uIiwicGFkZGluZyIsInRleHRBbGlnbiIsInRleHRJbmRlbnQiLCJ2ZXJ0aWNhbEFsaWduIiwiZm9udEZhbWlseSIsImZvbnRTaXplIiwiZm9udFdlaWdodCIsInRleHRUcmFuc2Zvcm0iLCJmb250U3R5bGUiLCJmb250VmFyaWFudE51bWVyaWMiLCJsaW5lSGVpZ2h0IiwibGV0dGVyU3BhY2luZyIsInRleHRDb2xvciIsInRleHRPcGFjaXR5IiwidGV4dERlY29yYXRpb24iLCJ0ZXh0RGVjb3JhdGlvbkNvbG9yIiwidGV4dERlY29yYXRpb25TdHlsZSIsInRleHREZWNvcmF0aW9uVGhpY2tuZXNzIiwidGV4dFVuZGVybGluZU9mZnNldCIsImZvbnRTbW9vdGhpbmciLCJwbGFjZWhvbGRlckNvbG9yIiwicGxhY2Vob2xkZXJPcGFjaXR5IiwiY2FyZXRDb2xvciIsImFjY2VudENvbG9yIiwib3BhY2l0eSIsImJhY2tncm91bmRCbGVuZE1vZGUiLCJtaXhCbGVuZE1vZGUiLCJib3hTaGFkb3ciLCJib3hTaGFkb3dDb2xvciIsIm91dGxpbmVTdHlsZSIsIm91dGxpbmVXaWR0aCIsIm91dGxpbmVPZmZzZXQiLCJvdXRsaW5lQ29sb3IiLCJyaW5nV2lkdGgiLCJyaW5nQ29sb3IiLCJyaW5nT3BhY2l0eSIsInJpbmdPZmZzZXRXaWR0aCIsInJpbmdPZmZzZXRDb2xvciIsImJsdXIiLCJicmlnaHRuZXNzIiwiY29udHJhc3QiLCJkcm9wU2hhZG93IiwiZ3JheXNjYWxlIiwiaHVlUm90YXRlIiwiaW52ZXJ0Iiwic2F0dXJhdGUiLCJzZXBpYSIsImZpbHRlciIsImJhY2tkcm9wQmx1ciIsImJhY2tkcm9wQnJpZ2h0bmVzcyIsImJhY2tkcm9wQ29udHJhc3QiLCJiYWNrZHJvcEdyYXlzY2FsZSIsImJhY2tkcm9wSHVlUm90YXRlIiwiYmFja2Ryb3BJbnZlcnQiLCJiYWNrZHJvcE9wYWNpdHkiLCJiYWNrZHJvcFNhdHVyYXRlIiwiYmFja2Ryb3BTZXBpYSIsImJhY2tkcm9wRmlsdGVyIiwidHJhbnNpdGlvblByb3BlcnR5IiwidHJhbnNpdGlvbkRlbGF5IiwidHJhbnNpdGlvbkR1cmF0aW9uIiwidHJhbnNpdGlvblRpbWluZ0Z1bmN0aW9uIiwid2lsbENoYW5nZSIsImNvbnRhaW4iLCJjb250ZW50IiwiZm9yY2VkQ29sb3JBZGp1c3QiXX0pO2Z1bmN0aW9uIGtmKHIsZSl7cmV0dXJuIHI9PT12b2lkIDA/ZTpBcnJheS5pc0FycmF5KHIpP3I6Wy4uLm5ldyBTZXQoZS5maWx0ZXIoaT0+ciE9PSExJiZyW2ldIT09ITEpLmNvbmNhdChPYmplY3Qua2V5cyhyKS5maWx0ZXIoaT0+cltpXSE9PSExKSkpXX12YXIgU2Y9UCgoKT0+e3UoKX0pO3ZhciBBZj17fTtHZShBZix7ZGVmYXVsdDooKT0+UWV9KTt2YXIgUWUsUWk9UCgoKT0+e3UoKTtRZT1uZXcgUHJveHkoe30se2dldDooKT0+U3RyaW5nfSl9KTtmdW5jdGlvbiBqcyhyLGUsdCl7dHlwZW9mIG0hPSJ1bmRlZmluZWQiJiZtLmVudi5KRVNUX1dPUktFUl9JRHx8dCYmQ2YuaGFzKHQpfHwodCYmQ2YuYWRkKHQpLGNvbnNvbGUud2FybigiIiksZS5mb3JFYWNoKGk9PmNvbnNvbGUud2FybihyLCItIixpKSkpfWZ1bmN0aW9uIHpzKHIpe3JldHVybiBRZS5kaW0ocil9dmFyIENmLEcsQmU9UCgoKT0+e3UoKTtRaSgpO0NmPW5ldyBTZXQ7Rz17aW5mbyhyLGUpe2pzKFFlLmJvbGQoUWUuY3lhbigiaW5mbyIpKSwuLi5BcnJheS5pc0FycmF5KHIpP1tyXTpbZSxyXSl9LHdhcm4ocixlKXtbImNvbnRlbnQtcHJvYmxlbXMiXS5pbmNsdWRlcyhyKXx8anMoUWUuYm9sZChRZS55ZWxsb3coIndhcm4iKSksLi4uQXJyYXkuaXNBcnJheShyKT9bcl06W2Uscl0pfSxyaXNrKHIsZSl7anMoUWUuYm9sZChRZS5tYWdlbnRhKCJyaXNrIikpLC4uLkFycmF5LmlzQXJyYXkocik/W3JdOltlLHJdKX19fSk7dmFyIF9mPXt9O0dlKF9mLHtkZWZhdWx0OigpPT5Vc30pO2Z1bmN0aW9uIHFyKHt2ZXJzaW9uOnIsZnJvbTplLHRvOnR9KXtHLndhcm4oYCR7ZX0tY29sb3ItcmVuYW1lZGAsW2BBcyBvZiBUYWlsd2luZCBDU1MgJHtyfSwgXGAke2V9XGAgaGFzIGJlZW4gcmVuYW1lZCB0byBcYCR7dH1cYC5gLCJVcGRhdGUgeW91ciBjb25maWd1cmF0aW9uIGZpbGUgdG8gc2lsZW5jZSB0aGlzIHdhcm5pbmcuIl0pfXZhciBVcyxWcz1QKCgpPT57dSgpO0JlKCk7VXM9e2luaGVyaXQ6ImluaGVyaXQiLGN1cnJlbnQ6ImN1cnJlbnRDb2xvciIsdHJhbnNwYXJlbnQ6InRyYW5zcGFyZW50IixibGFjazoiIzAwMCIsd2hpdGU6IiNmZmYiLHNsYXRlOns1MDoiI2Y4ZmFmYyIsMTAwOiIjZjFmNWY5IiwyMDA6IiNlMmU4ZjAiLDMwMDoiI2NiZDVlMSIsNDAwOiIjOTRhM2I4Iiw1MDA6IiM2NDc0OGIiLDYwMDoiIzQ3NTU2OSIsNzAwOiIjMzM0MTU1Iiw4MDA6IiMxZTI5M2IiLDkwMDoiIzBmMTcyYSIsOTUwOiIjMDIwNjE3In0sZ3JheTp7NTA6IiNmOWZhZmIiLDEwMDoiI2YzZjRmNiIsMjAwOiIjZTVlN2ViIiwzMDA6IiNkMWQ1ZGIiLDQwMDoiIzljYTNhZiIsNTAwOiIjNmI3MjgwIiw2MDA6IiM0YjU1NjMiLDcwMDoiIzM3NDE1MSIsODAwOiIjMWYyOTM3Iiw5MDA6IiMxMTE4MjciLDk1MDoiIzAzMDcxMiJ9LHppbmM6ezUwOiIjZmFmYWZhIiwxMDA6IiNmNGY0ZjUiLDIwMDoiI2U0ZTRlNyIsMzAwOiIjZDRkNGQ4Iiw0MDA6IiNhMWExYWEiLDUwMDoiIzcxNzE3YSIsNjAwOiIjNTI1MjViIiw3MDA6IiMzZjNmNDYiLDgwMDoiIzI3MjcyYSIsOTAwOiIjMTgxODFiIiw5NTA6IiMwOTA5MGIifSxuZXV0cmFsOns1MDoiI2ZhZmFmYSIsMTAwOiIjZjVmNWY1IiwyMDA6IiNlNWU1ZTUiLDMwMDoiI2Q0ZDRkNCIsNDAwOiIjYTNhM2EzIiw1MDA6IiM3MzczNzMiLDYwMDoiIzUyNTI1MiIsNzAwOiIjNDA0MDQwIiw4MDA6IiMyNjI2MjYiLDkwMDoiIzE3MTcxNyIsOTUwOiIjMGEwYTBhIn0sc3RvbmU6ezUwOiIjZmFmYWY5IiwxMDA6IiNmNWY1ZjQiLDIwMDoiI2U3ZTVlNCIsMzAwOiIjZDZkM2QxIiw0MDA6IiNhOGEyOWUiLDUwMDoiIzc4NzE2YyIsNjAwOiIjNTc1MzRlIiw3MDA6IiM0NDQwM2MiLDgwMDoiIzI5MjUyNCIsOTAwOiIjMWMxOTE3Iiw5NTA6IiMwYzBhMDkifSxyZWQ6ezUwOiIjZmVmMmYyIiwxMDA6IiNmZWUyZTIiLDIwMDoiI2ZlY2FjYSIsMzAwOiIjZmNhNWE1Iiw0MDA6IiNmODcxNzEiLDUwMDoiI2VmNDQ0NCIsNjAwOiIjZGMyNjI2Iiw3MDA6IiNiOTFjMWMiLDgwMDoiIzk5MWIxYiIsOTAwOiIjN2YxZDFkIiw5NTA6IiM0NTBhMGEifSxvcmFuZ2U6ezUwOiIjZmZmN2VkIiwxMDA6IiNmZmVkZDUiLDIwMDoiI2ZlZDdhYSIsMzAwOiIjZmRiYTc0Iiw0MDA6IiNmYjkyM2MiLDUwMDoiI2Y5NzMxNiIsNjAwOiIjZWE1ODBjIiw3MDA6IiNjMjQxMGMiLDgwMDoiIzlhMzQxMiIsOTAwOiIjN2MyZDEyIiw5NTA6IiM0MzE0MDcifSxhbWJlcjp7NTA6IiNmZmZiZWIiLDEwMDoiI2ZlZjNjNyIsMjAwOiIjZmRlNjhhIiwzMDA6IiNmY2QzNGQiLDQwMDoiI2ZiYmYyNCIsNTAwOiIjZjU5ZTBiIiw2MDA6IiNkOTc3MDYiLDcwMDoiI2I0NTMwOSIsODAwOiIjOTI0MDBlIiw5MDA6IiM3ODM1MGYiLDk1MDoiIzQ1MWEwMyJ9LHllbGxvdzp7NTA6IiNmZWZjZTgiLDEwMDoiI2ZlZjljMyIsMjAwOiIjZmVmMDhhIiwzMDA6IiNmZGUwNDciLDQwMDoiI2ZhY2MxNSIsNTAwOiIjZWFiMzA4Iiw2MDA6IiNjYThhMDQiLDcwMDoiI2ExNjIwNyIsODAwOiIjODU0ZDBlIiw5MDA6IiM3MTNmMTIiLDk1MDoiIzQyMjAwNiJ9LGxpbWU6ezUwOiIjZjdmZWU3IiwxMDA6IiNlY2ZjY2IiLDIwMDoiI2Q5Zjk5ZCIsMzAwOiIjYmVmMjY0Iiw0MDA6IiNhM2U2MzUiLDUwMDoiIzg0Y2MxNiIsNjAwOiIjNjVhMzBkIiw3MDA6IiM0ZDdjMGYiLDgwMDoiIzNmNjIxMiIsOTAwOiIjMzY1MzE0Iiw5NTA6IiMxYTJlMDUifSxncmVlbjp7NTA6IiNmMGZkZjQiLDEwMDoiI2RjZmNlNyIsMjAwOiIjYmJmN2QwIiwzMDA6IiM4NmVmYWMiLDQwMDoiIzRhZGU4MCIsNTAwOiIjMjJjNTVlIiw2MDA6IiMxNmEzNGEiLDcwMDoiIzE1ODAzZCIsODAwOiIjMTY2NTM0Iiw5MDA6IiMxNDUzMmQiLDk1MDoiIzA1MmUxNiJ9LGVtZXJhbGQ6ezUwOiIjZWNmZGY1IiwxMDA6IiNkMWZhZTUiLDIwMDoiI2E3ZjNkMCIsMzAwOiIjNmVlN2I3Iiw0MDA6IiMzNGQzOTkiLDUwMDoiIzEwYjk4MSIsNjAwOiIjMDU5NjY5Iiw3MDA6IiMwNDc4NTciLDgwMDoiIzA2NWY0NiIsOTAwOiIjMDY0ZTNiIiw5NTA6IiMwMjJjMjIifSx0ZWFsOns1MDoiI2YwZmRmYSIsMTAwOiIjY2NmYmYxIiwyMDA6IiM5OWY2ZTQiLDMwMDoiIzVlZWFkNCIsNDAwOiIjMmRkNGJmIiw1MDA6IiMxNGI4YTYiLDYwMDoiIzBkOTQ4OCIsNzAwOiIjMGY3NjZlIiw4MDA6IiMxMTVlNTkiLDkwMDoiIzEzNGU0YSIsOTUwOiIjMDQyZjJlIn0sY3lhbjp7NTA6IiNlY2ZlZmYiLDEwMDoiI2NmZmFmZSIsMjAwOiIjYTVmM2ZjIiwzMDA6IiM2N2U4ZjkiLDQwMDoiIzIyZDNlZSIsNTAwOiIjMDZiNmQ0Iiw2MDA6IiMwODkxYjIiLDcwMDoiIzBlNzQ5MCIsODAwOiIjMTU1ZTc1Iiw5MDA6IiMxNjRlNjMiLDk1MDoiIzA4MzM0NCJ9LHNreTp7NTA6IiNmMGY5ZmYiLDEwMDoiI2UwZjJmZSIsMjAwOiIjYmFlNmZkIiwzMDA6IiM3ZGQzZmMiLDQwMDoiIzM4YmRmOCIsNTAwOiIjMGVhNWU5Iiw2MDA6IiMwMjg0YzciLDcwMDoiIzAzNjlhMSIsODAwOiIjMDc1OTg1Iiw5MDA6IiMwYzRhNmUiLDk1MDoiIzA4MmY0OSJ9LGJsdWU6ezUwOiIjZWZmNmZmIiwxMDA6IiNkYmVhZmUiLDIwMDoiI2JmZGJmZSIsMzAwOiIjOTNjNWZkIiw0MDA6IiM2MGE1ZmEiLDUwMDoiIzNiODJmNiIsNjAwOiIjMjU2M2ViIiw3MDA6IiMxZDRlZDgiLDgwMDoiIzFlNDBhZiIsOTAwOiIjMWUzYThhIiw5NTA6IiMxNzI1NTQifSxpbmRpZ286ezUwOiIjZWVmMmZmIiwxMDA6IiNlMGU3ZmYiLDIwMDoiI2M3ZDJmZSIsMzAwOiIjYTViNGZjIiw0MDA6IiM4MThjZjgiLDUwMDoiIzYzNjZmMSIsNjAwOiIjNGY0NmU1Iiw3MDA6IiM0MzM4Y2EiLDgwMDoiIzM3MzBhMyIsOTAwOiIjMzEyZTgxIiw5NTA6IiMxZTFiNGIifSx2aW9sZXQ6ezUwOiIjZjVmM2ZmIiwxMDA6IiNlZGU5ZmUiLDIwMDoiI2RkZDZmZSIsMzAwOiIjYzRiNWZkIiw0MDA6IiNhNzhiZmEiLDUwMDoiIzhiNWNmNiIsNjAwOiIjN2MzYWVkIiw3MDA6IiM2ZDI4ZDkiLDgwMDoiIzViMjFiNiIsOTAwOiIjNGMxZDk1Iiw5NTA6IiMyZTEwNjUifSxwdXJwbGU6ezUwOiIjZmFmNWZmIiwxMDA6IiNmM2U4ZmYiLDIwMDoiI2U5ZDVmZiIsMzAwOiIjZDhiNGZlIiw0MDA6IiNjMDg0ZmMiLDUwMDoiI2E4NTVmNyIsNjAwOiIjOTMzM2VhIiw3MDA6IiM3ZTIyY2UiLDgwMDoiIzZiMjFhOCIsOTAwOiIjNTgxYzg3Iiw5NTA6IiMzYjA3NjQifSxmdWNoc2lhOns1MDoiI2ZkZjRmZiIsMTAwOiIjZmFlOGZmIiwyMDA6IiNmNWQwZmUiLDMwMDoiI2YwYWJmYyIsNDAwOiIjZTg3OWY5Iiw1MDA6IiNkOTQ2ZWYiLDYwMDoiI2MwMjZkMyIsNzAwOiIjYTIxY2FmIiw4MDA6IiM4NjE5OGYiLDkwMDoiIzcwMWE3NSIsOTUwOiIjNGEwNDRlIn0scGluazp7NTA6IiNmZGYyZjgiLDEwMDoiI2ZjZTdmMyIsMjAwOiIjZmJjZmU4IiwzMDA6IiNmOWE4ZDQiLDQwMDoiI2Y0NzJiNiIsNTAwOiIjZWM0ODk5Iiw2MDA6IiNkYjI3NzciLDcwMDoiI2JlMTg1ZCIsODAwOiIjOWQxNzRkIiw5MDA6IiM4MzE4NDMiLDk1MDoiIzUwMDcyNCJ9LHJvc2U6ezUwOiIjZmZmMWYyIiwxMDA6IiNmZmU0ZTYiLDIwMDoiI2ZlY2RkMyIsMzAwOiIjZmRhNGFmIiw0MDA6IiNmYjcxODUiLDUwMDoiI2Y0M2Y1ZSIsNjAwOiIjZTExZDQ4Iiw3MDA6IiNiZTEyM2MiLDgwMDoiIzlmMTIzOSIsOTAwOiIjODgxMzM3Iiw5NTA6IiM0YzA1MTkifSxnZXQgbGlnaHRCbHVlKCl7cmV0dXJuIHFyKHt2ZXJzaW9uOiJ2Mi4yIixmcm9tOiJsaWdodEJsdWUiLHRvOiJza3kifSksdGhpcy5za3l9LGdldCB3YXJtR3JheSgpe3JldHVybiBxcih7dmVyc2lvbjoidjMuMCIsZnJvbToid2FybUdyYXkiLHRvOiJzdG9uZSJ9KSx0aGlzLnN0b25lfSxnZXQgdHJ1ZUdyYXkoKXtyZXR1cm4gcXIoe3ZlcnNpb246InYzLjAiLGZyb206InRydWVHcmF5Iix0bzoibmV1dHJhbCJ9KSx0aGlzLm5ldXRyYWx9LGdldCBjb29sR3JheSgpe3JldHVybiBxcih7dmVyc2lvbjoidjMuMCIsZnJvbToiY29vbEdyYXkiLHRvOiJncmF5In0pLHRoaXMuZ3JheX0sZ2V0IGJsdWVHcmF5KCl7cmV0dXJuIHFyKHt2ZXJzaW9uOiJ2My4wIixmcm9tOiJibHVlR3JheSIsdG86InNsYXRlIn0pLHRoaXMuc2xhdGV9fX0pO2Z1bmN0aW9uIEhzKHIsLi4uZSl7Zm9yKGxldCB0IG9mIGUpe2ZvcihsZXQgaSBpbiB0KXI/Lmhhc093blByb3BlcnR5Py4oaSl8fChyW2ldPXRbaV0pO2ZvcihsZXQgaSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpKXI/Lmhhc093blByb3BlcnR5Py4oaSl8fChyW2ldPXRbaV0pfXJldHVybiByfXZhciBFZj1QKCgpPT57dSgpfSk7ZnVuY3Rpb24ga3Qocil7aWYoQXJyYXkuaXNBcnJheShyKSlyZXR1cm4gcjtsZXQgZT1yLnNwbGl0KCJbIikubGVuZ3RoLTEsdD1yLnNwbGl0KCJdIikubGVuZ3RoLTE7aWYoZSE9PXQpdGhyb3cgbmV3IEVycm9yKGBQYXRoIGlzIGludmFsaWQuIEhhcyB1bmJhbGFuY2VkIGJyYWNrZXRzOiAke3J9YCk7cmV0dXJuIHIuc3BsaXQoL1wuKD8hW15cW10qXF0pfFtcW1xdXS9nKS5maWx0ZXIoQm9vbGVhbil9dmFyIFlpPVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiB3ZShyLGUpe3JldHVybiBLaS5mdXR1cmUuaW5jbHVkZXMoZSk/ci5mdXR1cmU9PT0iYWxsInx8KHI/LmZ1dHVyZT8uW2VdPz9PZltlXT8/ITEpOktpLmV4cGVyaW1lbnRhbC5pbmNsdWRlcyhlKT9yLmV4cGVyaW1lbnRhbD09PSJhbGwifHwocj8uZXhwZXJpbWVudGFsPy5bZV0/P09mW2VdPz8hMSk6ITF9ZnVuY3Rpb24gVGYocil7cmV0dXJuIHIuZXhwZXJpbWVudGFsPT09ImFsbCI/S2kuZXhwZXJpbWVudGFsOk9iamVjdC5rZXlzKHI/LmV4cGVyaW1lbnRhbD8/e30pLmZpbHRlcihlPT5LaS5leHBlcmltZW50YWwuaW5jbHVkZXMoZSkmJnIuZXhwZXJpbWVudGFsW2VdKX1mdW5jdGlvbiBSZihyKXtpZihtLmVudi5KRVNUX1dPUktFUl9JRD09PXZvaWQgMCYmVGYocikubGVuZ3RoPjApe2xldCBlPVRmKHIpLm1hcCh0PT5RZS55ZWxsb3codCkpLmpvaW4oIiwgIik7Ry53YXJuKCJleHBlcmltZW50YWwtZmxhZ3MtZW5hYmxlZCIsW2BZb3UgaGF2ZSBlbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0dXJlczogJHtlfWAsIkV4cGVyaW1lbnRhbCBmZWF0dXJlcyBpbiBUYWlsd2luZCBDU1MgYXJlIG5vdCBjb3ZlcmVkIGJ5IHNlbXZlciwgbWF5IGludHJvZHVjZSBicmVha2luZyBjaGFuZ2VzLCBhbmQgY2FuIGNoYW5nZSBhdCBhbnkgdGltZS4iXSl9fXZhciBPZixLaSxjdD1QKCgpPT57dSgpO1FpKCk7QmUoKTtPZj17b3B0aW1pemVVbml2ZXJzYWxEZWZhdWx0czohMSxnZW5lcmFsaXplZE1vZGlmaWVyczohMCxkaXNhYmxlQ29sb3JPcGFjaXR5VXRpbGl0aWVzQnlEZWZhdWx0OiExLHJlbGF0aXZlQ29udGVudFBhdGhzQnlEZWZhdWx0OiExfSxLaT17ZnV0dXJlOlsiaG92ZXJPbmx5V2hlblN1cHBvcnRlZCIsInJlc3BlY3REZWZhdWx0UmluZ0NvbG9yT3BhY2l0eSIsImRpc2FibGVDb2xvck9wYWNpdHlVdGlsaXRpZXNCeURlZmF1bHQiLCJyZWxhdGl2ZUNvbnRlbnRQYXRoc0J5RGVmYXVsdCJdLGV4cGVyaW1lbnRhbDpbIm9wdGltaXplVW5pdmVyc2FsRGVmYXVsdHMiLCJnZW5lcmFsaXplZE1vZGlmaWVycyJdfX0pO2Z1bmN0aW9uIFBmKHIpeygoKT0+e2lmKHIucHVyZ2V8fCFyLmNvbnRlbnR8fCFBcnJheS5pc0FycmF5KHIuY29udGVudCkmJiEodHlwZW9mIHIuY29udGVudD09Im9iamVjdCImJnIuY29udGVudCE9PW51bGwpKXJldHVybiExO2lmKEFycmF5LmlzQXJyYXkoci5jb250ZW50KSlyZXR1cm4gci5jb250ZW50LmV2ZXJ5KHQ9PnR5cGVvZiB0PT0ic3RyaW5nIj8hMDohKHR5cGVvZiB0Py5yYXchPSJzdHJpbmcifHx0Py5leHRlbnNpb24mJnR5cGVvZiB0Py5leHRlbnNpb24hPSJzdHJpbmciKSk7aWYodHlwZW9mIHIuY29udGVudD09Im9iamVjdCImJnIuY29udGVudCE9PW51bGwpe2lmKE9iamVjdC5rZXlzKHIuY29udGVudCkuc29tZSh0PT4hWyJmaWxlcyIsInJlbGF0aXZlIiwiZXh0cmFjdCIsInRyYW5zZm9ybSJdLmluY2x1ZGVzKHQpKSlyZXR1cm4hMTtpZihBcnJheS5pc0FycmF5KHIuY29udGVudC5maWxlcykpe2lmKCFyLmNvbnRlbnQuZmlsZXMuZXZlcnkodD0+dHlwZW9mIHQ9PSJzdHJpbmciPyEwOiEodHlwZW9mIHQ/LnJhdyE9InN0cmluZyJ8fHQ/LmV4dGVuc2lvbiYmdHlwZW9mIHQ/LmV4dGVuc2lvbiE9InN0cmluZyIpKSlyZXR1cm4hMTtpZih0eXBlb2Ygci5jb250ZW50LmV4dHJhY3Q9PSJvYmplY3QiKXtmb3IobGV0IHQgb2YgT2JqZWN0LnZhbHVlcyhyLmNvbnRlbnQuZXh0cmFjdCkpaWYodHlwZW9mIHQhPSJmdW5jdGlvbiIpcmV0dXJuITF9ZWxzZSBpZighKHIuY29udGVudC5leHRyYWN0PT09dm9pZCAwfHx0eXBlb2Ygci5jb250ZW50LmV4dHJhY3Q9PSJmdW5jdGlvbiIpKXJldHVybiExO2lmKHR5cGVvZiByLmNvbnRlbnQudHJhbnNmb3JtPT0ib2JqZWN0Iil7Zm9yKGxldCB0IG9mIE9iamVjdC52YWx1ZXMoci5jb250ZW50LnRyYW5zZm9ybSkpaWYodHlwZW9mIHQhPSJmdW5jdGlvbiIpcmV0dXJuITF9ZWxzZSBpZighKHIuY29udGVudC50cmFuc2Zvcm09PT12b2lkIDB8fHR5cGVvZiByLmNvbnRlbnQudHJhbnNmb3JtPT0iZnVuY3Rpb24iKSlyZXR1cm4hMTtpZih0eXBlb2Ygci5jb250ZW50LnJlbGF0aXZlIT0iYm9vbGVhbiImJnR5cGVvZiByLmNvbnRlbnQucmVsYXRpdmUhPSJ1bmRlZmluZWQiKXJldHVybiExfXJldHVybiEwfXJldHVybiExfSkoKXx8Ry53YXJuKCJwdXJnZS1kZXByZWNhdGlvbiIsWyJUaGUgYHB1cmdlYC9gY29udGVudGAgb3B0aW9ucyBoYXZlIGNoYW5nZWQgaW4gVGFpbHdpbmQgQ1NTIHYzLjAuIiwiVXBkYXRlIHlvdXIgY29uZmlndXJhdGlvbiBmaWxlIHRvIGVsaW1pbmF0ZSB0aGlzIHdhcm5pbmcuIiwiaHR0cHM6Ly90YWlsd2luZGNzcy5jb20vZG9jcy91cGdyYWRlLWd1aWRlI2NvbmZpZ3VyZS1jb250ZW50LXNvdXJjZXMiXSksci5zYWZlbGlzdD0oKCk9PntsZXR7Y29udGVudDp0LHB1cmdlOmksc2FmZWxpc3Q6bn09cjtyZXR1cm4gQXJyYXkuaXNBcnJheShuKT9uOkFycmF5LmlzQXJyYXkodD8uc2FmZWxpc3QpP3Quc2FmZWxpc3Q6QXJyYXkuaXNBcnJheShpPy5zYWZlbGlzdCk/aS5zYWZlbGlzdDpBcnJheS5pc0FycmF5KGk/Lm9wdGlvbnM/LnNhZmVsaXN0KT9pLm9wdGlvbnMuc2FmZWxpc3Q6W119KSgpLHIuYmxvY2tsaXN0PSgoKT0+e2xldHtibG9ja2xpc3Q6dH09cjtpZihBcnJheS5pc0FycmF5KHQpKXtpZih0LmV2ZXJ5KGk9PnR5cGVvZiBpPT0ic3RyaW5nIikpcmV0dXJuIHQ7Ry53YXJuKCJibG9ja2xpc3QtaW52YWxpZCIsWyJUaGUgYGJsb2NrbGlzdGAgb3B0aW9uIG11c3QgYmUgYW4gYXJyYXkgb2Ygc3RyaW5ncy4iLCJodHRwczovL3RhaWx3aW5kY3NzLmNvbS9kb2NzL2NvbnRlbnQtY29uZmlndXJhdGlvbiNkaXNjYXJkaW5nLWNsYXNzZXMiXSl9cmV0dXJuW119KSgpLHR5cGVvZiByLnByZWZpeD09ImZ1bmN0aW9uIj8oRy53YXJuKCJwcmVmaXgtZnVuY3Rpb24iLFsiQXMgb2YgVGFpbHdpbmQgQ1NTIHYzLjAsIGBwcmVmaXhgIGNhbm5vdCBiZSBhIGZ1bmN0aW9uLiIsIlVwZGF0ZSBgcHJlZml4YCBpbiB5b3VyIGNvbmZpZ3VyYXRpb24gdG8gYmUgYSBzdHJpbmcgdG8gZWxpbWluYXRlIHRoaXMgd2FybmluZy4iLCJodHRwczovL3RhaWx3aW5kY3NzLmNvbS9kb2NzL3VwZ3JhZGUtZ3VpZGUjcHJlZml4LWNhbm5vdC1iZS1hLWZ1bmN0aW9uIl0pLHIucHJlZml4PSIiKTpyLnByZWZpeD1yLnByZWZpeD8/IiIsci5jb250ZW50PXtyZWxhdGl2ZTooKCk9PntsZXR7Y29udGVudDp0fT1yO3JldHVybiB0Py5yZWxhdGl2ZT90LnJlbGF0aXZlOndlKHIsInJlbGF0aXZlQ29udGVudFBhdGhzQnlEZWZhdWx0Iil9KSgpLGZpbGVzOigoKT0+e2xldHtjb250ZW50OnQscHVyZ2U6aX09cjtyZXR1cm4gQXJyYXkuaXNBcnJheShpKT9pOkFycmF5LmlzQXJyYXkoaT8uY29udGVudCk/aS5jb250ZW50OkFycmF5LmlzQXJyYXkodCk/dDpBcnJheS5pc0FycmF5KHQ/LmNvbnRlbnQpP3QuY29udGVudDpBcnJheS5pc0FycmF5KHQ/LmZpbGVzKT90LmZpbGVzOltdfSkoKSxleHRyYWN0OigoKT0+e2xldCB0PSgoKT0+ci5wdXJnZT8uZXh0cmFjdD9yLnB1cmdlLmV4dHJhY3Q6ci5jb250ZW50Py5leHRyYWN0P3IuY29udGVudC5leHRyYWN0OnIucHVyZ2U/LmV4dHJhY3Q/LkRFRkFVTFQ/ci5wdXJnZS5leHRyYWN0LkRFRkFVTFQ6ci5jb250ZW50Py5leHRyYWN0Py5ERUZBVUxUP3IuY29udGVudC5leHRyYWN0LkRFRkFVTFQ6ci5wdXJnZT8ub3B0aW9ucz8uZXh0cmFjdG9ycz9yLnB1cmdlLm9wdGlvbnMuZXh0cmFjdG9yczpyLmNvbnRlbnQ/Lm9wdGlvbnM/LmV4dHJhY3RvcnM/ci5jb250ZW50Lm9wdGlvbnMuZXh0cmFjdG9yczp7fSkoKSxpPXt9LG49KCgpPT57aWYoci5wdXJnZT8ub3B0aW9ucz8uZGVmYXVsdEV4dHJhY3RvcilyZXR1cm4gci5wdXJnZS5vcHRpb25zLmRlZmF1bHRFeHRyYWN0b3I7aWYoci5jb250ZW50Py5vcHRpb25zPy5kZWZhdWx0RXh0cmFjdG9yKXJldHVybiByLmNvbnRlbnQub3B0aW9ucy5kZWZhdWx0RXh0cmFjdG9yfSkoKTtpZihuIT09dm9pZCAwJiYoaS5ERUZBVUxUPW4pLHR5cGVvZiB0PT0iZnVuY3Rpb24iKWkuREVGQVVMVD10O2Vsc2UgaWYoQXJyYXkuaXNBcnJheSh0KSlmb3IobGV0e2V4dGVuc2lvbnM6cyxleHRyYWN0b3I6YX1vZiB0Pz9bXSlmb3IobGV0IG8gb2YgcylpW29dPWE7ZWxzZSB0eXBlb2YgdD09Im9iamVjdCImJnQhPT1udWxsJiZPYmplY3QuYXNzaWduKGksdCk7cmV0dXJuIGl9KSgpLHRyYW5zZm9ybTooKCk9PntsZXQgdD0oKCk9PnIucHVyZ2U/LnRyYW5zZm9ybT9yLnB1cmdlLnRyYW5zZm9ybTpyLmNvbnRlbnQ/LnRyYW5zZm9ybT9yLmNvbnRlbnQudHJhbnNmb3JtOnIucHVyZ2U/LnRyYW5zZm9ybT8uREVGQVVMVD9yLnB1cmdlLnRyYW5zZm9ybS5ERUZBVUxUOnIuY29udGVudD8udHJhbnNmb3JtPy5ERUZBVUxUP3IuY29udGVudC50cmFuc2Zvcm0uREVGQVVMVDp7fSkoKSxpPXt9O3JldHVybiB0eXBlb2YgdD09ImZ1bmN0aW9uIj9pLkRFRkFVTFQ9dDp0eXBlb2YgdD09Im9iamVjdCImJnQhPT1udWxsJiZPYmplY3QuYXNzaWduKGksdCksaX0pKCl9O2ZvcihsZXQgdCBvZiByLmNvbnRlbnQuZmlsZXMpaWYodHlwZW9mIHQ9PSJzdHJpbmciJiYveyhbXixdKj8pfS9nLnRlc3QodCkpe0cud2FybigiaW52YWxpZC1nbG9iLWJyYWNlcyIsW2BUaGUgZ2xvYiBwYXR0ZXJuICR7enModCl9IGluIHlvdXIgVGFpbHdpbmQgQ1NTIGNvbmZpZ3VyYXRpb24gaXMgaW52YWxpZC5gLGBVcGRhdGUgaXQgdG8gJHt6cyh0LnJlcGxhY2UoL3soW14sXSo/KX0vZywiJDEiKSl9IHRvIHNpbGVuY2UgdGhpcyB3YXJuaW5nLmBdKTticmVha31yZXR1cm4gcn12YXIgSWY9UCgoKT0+e3UoKTtjdCgpO0JlKCl9KTtmdW5jdGlvbiBrZShyKXtpZihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwocikhPT0iW29iamVjdCBPYmplY3RdIilyZXR1cm4hMTtsZXQgZT1PYmplY3QuZ2V0UHJvdG90eXBlT2Yocik7cmV0dXJuIGU9PT1udWxsfHxPYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk9PT1udWxsfXZhciBLdD1QKCgpPT57dSgpfSk7ZnVuY3Rpb24gU3Qocil7cmV0dXJuIEFycmF5LmlzQXJyYXkocik/ci5tYXAoZT0+U3QoZSkpOnR5cGVvZiByPT0ib2JqZWN0IiYmciE9PW51bGw/T2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5lbnRyaWVzKHIpLm1hcCgoW2UsdF0pPT5bZSxTdCh0KV0pKTpyfXZhciBYaT1QKCgpPT57dSgpfSk7ZnVuY3Rpb24ganQocil7cmV0dXJuIHIucmVwbGFjZSgvXFwsL2csIlxcMmMgIil9dmFyIFppPVAoKCk9Pnt1KCl9KTt2YXIgV3MsRGY9UCgoKT0+e3UoKTtXcz17YWxpY2VibHVlOlsyNDAsMjQ4LDI1NV0sYW50aXF1ZXdoaXRlOlsyNTAsMjM1LDIxNV0sYXF1YTpbMCwyNTUsMjU1XSxhcXVhbWFyaW5lOlsxMjcsMjU1LDIxMl0sYXp1cmU6WzI0MCwyNTUsMjU1XSxiZWlnZTpbMjQ1LDI0NSwyMjBdLGJpc3F1ZTpbMjU1LDIyOCwxOTZdLGJsYWNrOlswLDAsMF0sYmxhbmNoZWRhbG1vbmQ6WzI1NSwyMzUsMjA1XSxibHVlOlswLDAsMjU1XSxibHVldmlvbGV0OlsxMzgsNDMsMjI2XSxicm93bjpbMTY1LDQyLDQyXSxidXJseXdvb2Q6WzIyMiwxODQsMTM1XSxjYWRldGJsdWU6Wzk1LDE1OCwxNjBdLGNoYXJ0cmV1c2U6WzEyNywyNTUsMF0sY2hvY29sYXRlOlsyMTAsMTA1LDMwXSxjb3JhbDpbMjU1LDEyNyw4MF0sY29ybmZsb3dlcmJsdWU6WzEwMCwxNDksMjM3XSxjb3Juc2lsazpbMjU1LDI0OCwyMjBdLGNyaW1zb246WzIyMCwyMCw2MF0sY3lhbjpbMCwyNTUsMjU1XSxkYXJrYmx1ZTpbMCwwLDEzOV0sZGFya2N5YW46WzAsMTM5LDEzOV0sZGFya2dvbGRlbnJvZDpbMTg0LDEzNCwxMV0sZGFya2dyYXk6WzE2OSwxNjksMTY5XSxkYXJrZ3JlZW46WzAsMTAwLDBdLGRhcmtncmV5OlsxNjksMTY5LDE2OV0sZGFya2toYWtpOlsxODksMTgzLDEwN10sZGFya21hZ2VudGE6WzEzOSwwLDEzOV0sZGFya29saXZlZ3JlZW46Wzg1LDEwNyw0N10sZGFya29yYW5nZTpbMjU1LDE0MCwwXSxkYXJrb3JjaGlkOlsxNTMsNTAsMjA0XSxkYXJrcmVkOlsxMzksMCwwXSxkYXJrc2FsbW9uOlsyMzMsMTUwLDEyMl0sZGFya3NlYWdyZWVuOlsxNDMsMTg4LDE0M10sZGFya3NsYXRlYmx1ZTpbNzIsNjEsMTM5XSxkYXJrc2xhdGVncmF5Ols0Nyw3OSw3OV0sZGFya3NsYXRlZ3JleTpbNDcsNzksNzldLGRhcmt0dXJxdW9pc2U6WzAsMjA2LDIwOV0sZGFya3Zpb2xldDpbMTQ4LDAsMjExXSxkZWVwcGluazpbMjU1LDIwLDE0N10sZGVlcHNreWJsdWU6WzAsMTkxLDI1NV0sZGltZ3JheTpbMTA1LDEwNSwxMDVdLGRpbWdyZXk6WzEwNSwxMDUsMTA1XSxkb2RnZXJibHVlOlszMCwxNDQsMjU1XSxmaXJlYnJpY2s6WzE3OCwzNCwzNF0sZmxvcmFsd2hpdGU6WzI1NSwyNTAsMjQwXSxmb3Jlc3RncmVlbjpbMzQsMTM5LDM0XSxmdWNoc2lhOlsyNTUsMCwyNTVdLGdhaW5zYm9ybzpbMjIwLDIyMCwyMjBdLGdob3N0d2hpdGU6WzI0OCwyNDgsMjU1XSxnb2xkOlsyNTUsMjE1LDBdLGdvbGRlbnJvZDpbMjE4LDE2NSwzMl0sZ3JheTpbMTI4LDEyOCwxMjhdLGdyZWVuOlswLDEyOCwwXSxncmVlbnllbGxvdzpbMTczLDI1NSw0N10sZ3JleTpbMTI4LDEyOCwxMjhdLGhvbmV5ZGV3OlsyNDAsMjU1LDI0MF0saG90cGluazpbMjU1LDEwNSwxODBdLGluZGlhbnJlZDpbMjA1LDkyLDkyXSxpbmRpZ286Wzc1LDAsMTMwXSxpdm9yeTpbMjU1LDI1NSwyNDBdLGtoYWtpOlsyNDAsMjMwLDE0MF0sbGF2ZW5kZXI6WzIzMCwyMzAsMjUwXSxsYXZlbmRlcmJsdXNoOlsyNTUsMjQwLDI0NV0sbGF3bmdyZWVuOlsxMjQsMjUyLDBdLGxlbW9uY2hpZmZvbjpbMjU1LDI1MCwyMDVdLGxpZ2h0Ymx1ZTpbMTczLDIxNiwyMzBdLGxpZ2h0Y29yYWw6WzI0MCwxMjgsMTI4XSxsaWdodGN5YW46WzIyNCwyNTUsMjU1XSxsaWdodGdvbGRlbnJvZHllbGxvdzpbMjUwLDI1MCwyMTBdLGxpZ2h0Z3JheTpbMjExLDIxMSwyMTFdLGxpZ2h0Z3JlZW46WzE0NCwyMzgsMTQ0XSxsaWdodGdyZXk6WzIxMSwyMTEsMjExXSxsaWdodHBpbms6WzI1NSwxODIsMTkzXSxsaWdodHNhbG1vbjpbMjU1LDE2MCwxMjJdLGxpZ2h0c2VhZ3JlZW46WzMyLDE3OCwxNzBdLGxpZ2h0c2t5Ymx1ZTpbMTM1LDIwNiwyNTBdLGxpZ2h0c2xhdGVncmF5OlsxMTksMTM2LDE1M10sbGlnaHRzbGF0ZWdyZXk6WzExOSwxMzYsMTUzXSxsaWdodHN0ZWVsYmx1ZTpbMTc2LDE5NiwyMjJdLGxpZ2h0eWVsbG93OlsyNTUsMjU1LDIyNF0sbGltZTpbMCwyNTUsMF0sbGltZWdyZWVuOls1MCwyMDUsNTBdLGxpbmVuOlsyNTAsMjQwLDIzMF0sbWFnZW50YTpbMjU1LDAsMjU1XSxtYXJvb246WzEyOCwwLDBdLG1lZGl1bWFxdWFtYXJpbmU6WzEwMiwyMDUsMTcwXSxtZWRpdW1ibHVlOlswLDAsMjA1XSxtZWRpdW1vcmNoaWQ6WzE4Niw4NSwyMTFdLG1lZGl1bXB1cnBsZTpbMTQ3LDExMiwyMTldLG1lZGl1bXNlYWdyZWVuOls2MCwxNzksMTEzXSxtZWRpdW1zbGF0ZWJsdWU6WzEyMywxMDQsMjM4XSxtZWRpdW1zcHJpbmdncmVlbjpbMCwyNTAsMTU0XSxtZWRpdW10dXJxdW9pc2U6WzcyLDIwOSwyMDRdLG1lZGl1bXZpb2xldHJlZDpbMTk5LDIxLDEzM10sbWlkbmlnaHRibHVlOlsyNSwyNSwxMTJdLG1pbnRjcmVhbTpbMjQ1LDI1NSwyNTBdLG1pc3R5cm9zZTpbMjU1LDIyOCwyMjVdLG1vY2Nhc2luOlsyNTUsMjI4LDE4MV0sbmF2YWpvd2hpdGU6WzI1NSwyMjIsMTczXSxuYXZ5OlswLDAsMTI4XSxvbGRsYWNlOlsyNTMsMjQ1LDIzMF0sb2xpdmU6WzEyOCwxMjgsMF0sb2xpdmVkcmFiOlsxMDcsMTQyLDM1XSxvcmFuZ2U6WzI1NSwxNjUsMF0sb3JhbmdlcmVkOlsyNTUsNjksMF0sb3JjaGlkOlsyMTgsMTEyLDIxNF0scGFsZWdvbGRlbnJvZDpbMjM4LDIzMiwxNzBdLHBhbGVncmVlbjpbMTUyLDI1MSwxNTJdLHBhbGV0dXJxdW9pc2U6WzE3NSwyMzgsMjM4XSxwYWxldmlvbGV0cmVkOlsyMTksMTEyLDE0N10scGFwYXlhd2hpcDpbMjU1LDIzOSwyMTNdLHBlYWNocHVmZjpbMjU1LDIxOCwxODVdLHBlcnU6WzIwNSwxMzMsNjNdLHBpbms6WzI1NSwxOTIsMjAzXSxwbHVtOlsyMjEsMTYwLDIyMV0scG93ZGVyYmx1ZTpbMTc2LDIyNCwyMzBdLHB1cnBsZTpbMTI4LDAsMTI4XSxyZWJlY2NhcHVycGxlOlsxMDIsNTEsMTUzXSxyZWQ6WzI1NSwwLDBdLHJvc3licm93bjpbMTg4LDE0MywxNDNdLHJveWFsYmx1ZTpbNjUsMTA1LDIyNV0sc2FkZGxlYnJvd246WzEzOSw2OSwxOV0sc2FsbW9uOlsyNTAsMTI4LDExNF0sc2FuZHlicm93bjpbMjQ0LDE2NCw5Nl0sc2VhZ3JlZW46WzQ2LDEzOSw4N10sc2Vhc2hlbGw6WzI1NSwyNDUsMjM4XSxzaWVubmE6WzE2MCw4Miw0NV0sc2lsdmVyOlsxOTIsMTkyLDE5Ml0sc2t5Ymx1ZTpbMTM1LDIwNiwyMzVdLHNsYXRlYmx1ZTpbMTA2LDkwLDIwNV0sc2xhdGVncmF5OlsxMTIsMTI4LDE0NF0sc2xhdGVncmV5OlsxMTIsMTI4LDE0NF0sc25vdzpbMjU1LDI1MCwyNTBdLHNwcmluZ2dyZWVuOlswLDI1NSwxMjddLHN0ZWVsYmx1ZTpbNzAsMTMwLDE4MF0sdGFuOlsyMTAsMTgwLDE0MF0sdGVhbDpbMCwxMjgsMTI4XSx0aGlzdGxlOlsyMTYsMTkxLDIxNl0sdG9tYXRvOlsyNTUsOTksNzFdLHR1cnF1b2lzZTpbNjQsMjI0LDIwOF0sdmlvbGV0OlsyMzgsMTMwLDIzOF0sd2hlYXQ6WzI0NSwyMjIsMTc5XSx3aGl0ZTpbMjU1LDI1NSwyNTVdLHdoaXRlc21va2U6WzI0NSwyNDUsMjQ1XSx5ZWxsb3c6WzI1NSwyNTUsMF0seWVsbG93Z3JlZW46WzE1NCwyMDUsNTBdfX0pO2Z1bmN0aW9uICRyKHIse2xvb3NlOmU9ITF9PXt9KXtpZih0eXBlb2YgciE9InN0cmluZyIpcmV0dXJuIG51bGw7aWYocj1yLnRyaW0oKSxyPT09InRyYW5zcGFyZW50IilyZXR1cm57bW9kZToicmdiIixjb2xvcjpbIjAiLCIwIiwiMCJdLGFscGhhOiIwIn07aWYociBpbiBXcylyZXR1cm57bW9kZToicmdiIixjb2xvcjpXc1tyXS5tYXAocz0+cy50b1N0cmluZygpKX07bGV0IHQ9ci5yZXBsYWNlKHp2LChzLGEsbyxsLGMpPT5bIiMiLGEsYSxvLG8sbCxsLGM/YytjOiIiXS5qb2luKCIiKSkubWF0Y2goanYpO2lmKHQhPT1udWxsKXJldHVybnttb2RlOiJyZ2IiLGNvbG9yOltwYXJzZUludCh0WzFdLDE2KSxwYXJzZUludCh0WzJdLDE2KSxwYXJzZUludCh0WzNdLDE2KV0ubWFwKHM9PnMudG9TdHJpbmcoKSksYWxwaGE6dFs0XT8ocGFyc2VJbnQodFs0XSwxNikvMjU1KS50b1N0cmluZygpOnZvaWQgMH07bGV0IGk9ci5tYXRjaChVdik/P3IubWF0Y2goVnYpO2lmKGk9PT1udWxsKXJldHVybiBudWxsO2xldCBuPVtpWzJdLGlbM10saVs0XV0uZmlsdGVyKEJvb2xlYW4pLm1hcChzPT5zLnRvU3RyaW5nKCkpO3JldHVybiBuLmxlbmd0aD09PTImJm5bMF0uc3RhcnRzV2l0aCgidmFyKCIpP3ttb2RlOmlbMV0sY29sb3I6W25bMF1dLGFscGhhOm5bMV19OiFlJiZuLmxlbmd0aCE9PTN8fG4ubGVuZ3RoPDMmJiFuLnNvbWUocz0+L152YXJcKC4qP1wpJC8udGVzdChzKSk/bnVsbDp7bW9kZTppWzFdLGNvbG9yOm4sYWxwaGE6aVs1XT8udG9TdHJpbmc/LigpfX1mdW5jdGlvbiBHcyh7bW9kZTpyLGNvbG9yOmUsYWxwaGE6dH0pe2xldCBpPXQhPT12b2lkIDA7cmV0dXJuIHI9PT0icmdiYSJ8fHI9PT0iaHNsYSI/YCR7cn0oJHtlLmpvaW4oIiwgIil9JHtpP2AsICR7dH1gOiIifSlgOmAke3J9KCR7ZS5qb2luKCIgIil9JHtpP2AgLyAke3R9YDoiIn0pYH12YXIganYsenYsQXQsSmkscWYsQ3QsVXYsVnYsUXM9UCgoKT0+e3UoKTtEZigpO2p2PS9eIyhbYS1mXGRdezJ9KShbYS1mXGRdezJ9KShbYS1mXGRdezJ9KShbYS1mXGRdezJ9KT8kL2ksenY9L14jKFthLWZcZF0pKFthLWZcZF0pKFthLWZcZF0pKFthLWZcZF0pPyQvaSxBdD0vKD86XGQrfFxkKlwuXGQrKSU/LyxKaT0vKD86XHMqLFxzKnxccyspLyxxZj0vXHMqWywvXVxzKi8sQ3Q9L3ZhclwoLS0oPzpbXiApXSo/KSg/OiwoPzpbXiApXSo/fHZhclwoLS1bXiApXSo/XCkpKT9cKS8sVXY9bmV3IFJlZ0V4cChgXihyZ2JhPylcXChcXHMqKCR7QXQuc291cmNlfXwke0N0LnNvdXJjZX0pKD86JHtKaS5zb3VyY2V9KCR7QXQuc291cmNlfXwke0N0LnNvdXJjZX0pKT8oPzoke0ppLnNvdXJjZX0oJHtBdC5zb3VyY2V9fCR7Q3Quc291cmNlfSkpPyg/OiR7cWYuc291cmNlfSgke0F0LnNvdXJjZX18JHtDdC5zb3VyY2V9KSk/XFxzKlxcKSRgKSxWdj1uZXcgUmVnRXhwKGBeKGhzbGE/KVxcKFxccyooKD86JHtBdC5zb3VyY2V9KSg/OmRlZ3xyYWR8Z3JhZHx0dXJuKT98JHtDdC5zb3VyY2V9KSg/OiR7Smkuc291cmNlfSgke0F0LnNvdXJjZX18JHtDdC5zb3VyY2V9KSk/KD86JHtKaS5zb3VyY2V9KCR7QXQuc291cmNlfXwke0N0LnNvdXJjZX0pKT8oPzoke3FmLnNvdXJjZX0oJHtBdC5zb3VyY2V9fCR7Q3Quc291cmNlfSkpP1xccypcXCkkYCl9KTtmdW5jdGlvbiBKZShyLGUsdCl7aWYodHlwZW9mIHI9PSJmdW5jdGlvbiIpcmV0dXJuIHIoe29wYWNpdHlWYWx1ZTplfSk7bGV0IGk9JHIocix7bG9vc2U6ITB9KTtyZXR1cm4gaT09PW51bGw/dDpHcyh7Li4uaSxhbHBoYTplfSl9ZnVuY3Rpb24gQWUoe2NvbG9yOnIscHJvcGVydHk6ZSx2YXJpYWJsZTp0fSl7bGV0IGk9W10uY29uY2F0KGUpO2lmKHR5cGVvZiByPT0iZnVuY3Rpb24iKXJldHVybntbdF06IjEiLC4uLk9iamVjdC5mcm9tRW50cmllcyhpLm1hcChzPT5bcyxyKHtvcGFjaXR5VmFyaWFibGU6dCxvcGFjaXR5VmFsdWU6YHZhcigke3R9LCAxKWB9KV0pKX07bGV0IG49JHIocik7cmV0dXJuIG49PT1udWxsP09iamVjdC5mcm9tRW50cmllcyhpLm1hcChzPT5bcyxyXSkpOm4uYWxwaGEhPT12b2lkIDA/T2JqZWN0LmZyb21FbnRyaWVzKGkubWFwKHM9PltzLHJdKSk6e1t0XToiMSIsLi4uT2JqZWN0LmZyb21FbnRyaWVzKGkubWFwKHM9PltzLEdzKHsuLi5uLGFscGhhOmB2YXIoJHt0fSwgMSlgfSldKSl9fXZhciBMcj1QKCgpPT57dSgpO1FzKCl9KTtmdW5jdGlvbiB2ZShyLGUpe2xldCB0PVtdLGk9W10sbj0wLHM9ITE7Zm9yKGxldCBhPTA7YTxyLmxlbmd0aDthKyspe2xldCBvPXJbYV07dC5sZW5ndGg9PT0wJiZvPT09ZVswXSYmIXMmJihlLmxlbmd0aD09PTF8fHIuc2xpY2UoYSxhK2UubGVuZ3RoKT09PWUpJiYoaS5wdXNoKHIuc2xpY2UobixhKSksbj1hK2UubGVuZ3RoKSxzPXM/ITE6bz09PSJcXCIsbz09PSIoInx8bz09PSJbInx8bz09PSJ7Ij90LnB1c2gobyk6KG89PT0iKSImJnRbdC5sZW5ndGgtMV09PT0iKCJ8fG89PT0iXSImJnRbdC5sZW5ndGgtMV09PT0iWyJ8fG89PT0ifSImJnRbdC5sZW5ndGgtMV09PT0ieyIpJiZ0LnBvcCgpfXJldHVybiBpLnB1c2goci5zbGljZShuKSksaX12YXIgenQ9UCgoKT0+e3UoKX0pO2Z1bmN0aW9uIGVuKHIpe3JldHVybiB2ZShyLCIsIikubWFwKHQ9PntsZXQgaT10LnRyaW0oKSxuPXtyYXc6aX0scz1pLnNwbGl0KFd2KSxhPW5ldyBTZXQ7Zm9yKGxldCBvIG9mIHMpJGYubGFzdEluZGV4PTAsIWEuaGFzKCJLRVlXT1JEIikmJkh2LmhhcyhvKT8obi5rZXl3b3JkPW8sYS5hZGQoIktFWVdPUkQiKSk6JGYudGVzdChvKT9hLmhhcygiWCIpP2EuaGFzKCJZIik/YS5oYXMoIkJMVVIiKT9hLmhhcygiU1BSRUFEIil8fChuLnNwcmVhZD1vLGEuYWRkKCJTUFJFQUQiKSk6KG4uYmx1cj1vLGEuYWRkKCJCTFVSIikpOihuLnk9byxhLmFkZCgiWSIpKToobi54PW8sYS5hZGQoIlgiKSk6bi5jb2xvcj8obi51bmtub3dufHwobi51bmtub3duPVtdKSxuLnVua25vd24ucHVzaChvKSk6bi5jb2xvcj1vO3JldHVybiBuLnZhbGlkPW4ueCE9PXZvaWQgMCYmbi55IT09dm9pZCAwLG59KX1mdW5jdGlvbiBMZihyKXtyZXR1cm4gci5tYXAoZT0+ZS52YWxpZD9bZS5rZXl3b3JkLGUueCxlLnksZS5ibHVyLGUuc3ByZWFkLGUuY29sb3JdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgIik6ZS5yYXcpLmpvaW4oIiwgIil9dmFyIEh2LFd2LCRmLFlzPVAoKCk9Pnt1KCk7enQoKTtIdj1uZXcgU2V0KFsiaW5zZXQiLCJpbmhlcml0IiwiaW5pdGlhbCIsInJldmVydCIsInVuc2V0Il0pLFd2PS9cICsoPyFbXihdKlwpKS9nLCRmPS9eLT8oXGQrfFwuXGQrKSguKj8pJC9nfSk7ZnVuY3Rpb24gS3Mocil7cmV0dXJuIEd2LnNvbWUoZT0+bmV3IFJlZ0V4cChgXiR7ZX1cXCguKlxcKWApLnRlc3QocikpfWZ1bmN0aW9uIEsocixlPW51bGwsdD0hMCl7bGV0IGk9ZSYmUXYuaGFzKGUucHJvcGVydHkpO3JldHVybiByLnN0YXJ0c1dpdGgoIi0tIikmJiFpP2B2YXIoJHtyfSlgOnIuaW5jbHVkZXMoInVybCgiKT9yLnNwbGl0KC8odXJsXCguKj9cKSkvZykuZmlsdGVyKEJvb2xlYW4pLm1hcChuPT4vXnVybFwoLio/XCkkLy50ZXN0KG4pP246SyhuLGUsITEpKS5qb2luKCIiKToocj1yLnJlcGxhY2UoLyhbXlxcXSlfKy9nLChuLHMpPT5zKyIgIi5yZXBlYXQobi5sZW5ndGgtMSkpLnJlcGxhY2UoL15fL2csIiAiKS5yZXBsYWNlKC9cXF8vZywiXyIpLHQmJihyPXIudHJpbSgpKSxyPVl2KHIpLHIpfWZ1bmN0aW9uIFllKHIpe3JldHVybiByLmluY2x1ZGVzKCI9IikmJihyPXIucmVwbGFjZSgvKD0uKikvZywoZSx0KT0+e2lmKHRbMV09PT0iJyJ8fHRbMV09PT0nIicpcmV0dXJuIHQ7aWYodC5sZW5ndGg+Mil7bGV0IGk9dFt0Lmxlbmd0aC0xXTtpZih0W3QubGVuZ3RoLTJdPT09IiAiJiYoaT09PSJpInx8aT09PSJJInx8aT09PSJzInx8aT09PSJTIikpcmV0dXJuYD0iJHt0LnNsaWNlKDEsLTIpfSIgJHt0W3QubGVuZ3RoLTFdfWB9cmV0dXJuYD0iJHt0LnNsaWNlKDEpfSJgfSkpLHJ9ZnVuY3Rpb24gWXYocil7bGV0IGU9WyJ0aGVtZSJdLHQ9WyJtaW4tY29udGVudCIsIm1heC1jb250ZW50IiwiZml0LWNvbnRlbnQiLCJzYWZlLWFyZWEtaW5zZXQtdG9wIiwic2FmZS1hcmVhLWluc2V0LXJpZ2h0Iiwic2FmZS1hcmVhLWluc2V0LWJvdHRvbSIsInNhZmUtYXJlYS1pbnNldC1sZWZ0IiwidGl0bGViYXItYXJlYS14IiwidGl0bGViYXItYXJlYS15IiwidGl0bGViYXItYXJlYS13aWR0aCIsInRpdGxlYmFyLWFyZWEtaGVpZ2h0Iiwia2V5Ym9hcmQtaW5zZXQtdG9wIiwia2V5Ym9hcmQtaW5zZXQtcmlnaHQiLCJrZXlib2FyZC1pbnNldC1ib3R0b20iLCJrZXlib2FyZC1pbnNldC1sZWZ0Iiwia2V5Ym9hcmQtaW5zZXQtd2lkdGgiLCJrZXlib2FyZC1pbnNldC1oZWlnaHQiLCJyYWRpYWwtZ3JhZGllbnQiLCJsaW5lYXItZ3JhZGllbnQiLCJjb25pYy1ncmFkaWVudCIsInJlcGVhdGluZy1yYWRpYWwtZ3JhZGllbnQiLCJyZXBlYXRpbmctbGluZWFyLWdyYWRpZW50IiwicmVwZWF0aW5nLWNvbmljLWdyYWRpZW50IiwiYW5jaG9yLXNpemUiXTtyZXR1cm4gci5yZXBsYWNlKC8oY2FsY3xtaW58bWF4fGNsYW1wKVwoLitcKS9nLGk9PntsZXQgbj0iIjtmdW5jdGlvbiBzKCl7bGV0IGE9bi50cmltRW5kKCk7cmV0dXJuIGFbYS5sZW5ndGgtMV19Zm9yKGxldCBhPTA7YTxpLmxlbmd0aDthKyspe2xldCBvPWZ1bmN0aW9uKGYpe3JldHVybiBmLnNwbGl0KCIiKS5ldmVyeSgoZCxwKT0+aVthK3BdPT09ZCl9LGw9ZnVuY3Rpb24oZil7bGV0IGQ9MS8wO2ZvcihsZXQgaCBvZiBmKXtsZXQgYj1pLmluZGV4T2YoaCxhKTtiIT09LTEmJmI8ZCYmKGQ9Yil9bGV0IHA9aS5zbGljZShhLGQpO3JldHVybiBhKz1wLmxlbmd0aC0xLHB9LGM9aVthXTtpZihvKCJ2YXIiKSluKz1sKFsiKSIsIiwiXSk7ZWxzZSBpZih0LnNvbWUoZj0+byhmKSkpe2xldCBmPXQuZmluZChkPT5vKGQpKTtuKz1mLGErPWYubGVuZ3RoLTF9ZWxzZSBlLnNvbWUoZj0+byhmKSk/bis9bChbIikiXSk6bygiWyIpP24rPWwoWyJdIl0pOlsiKyIsIi0iLCIqIiwiLyJdLmluY2x1ZGVzKGMpJiYhWyIoIiwiKyIsIi0iLCIqIiwiLyIsIiwiXS5pbmNsdWRlcyhzKCkpP24rPWAgJHtjfSBgOm4rPWN9cmV0dXJuIG4ucmVwbGFjZSgvXHMrL2csIiAiKX0pfWZ1bmN0aW9uIFhzKHIpe3JldHVybiByLnN0YXJ0c1dpdGgoInVybCgiKX1mdW5jdGlvbiBacyhyKXtyZXR1cm4haXNOYU4oTnVtYmVyKHIpKXx8S3Mocil9ZnVuY3Rpb24gTXIocil7cmV0dXJuIHIuZW5kc1dpdGgoIiUiKSYmWnMoci5zbGljZSgwLC0xKSl8fEtzKHIpfWZ1bmN0aW9uIE5yKHIpe3JldHVybiByPT09IjAifHxuZXcgUmVnRXhwKGBeWystXT9bMC05XSouP1swLTldKyg/OltlRV1bKy1dP1swLTldKyk/JHtYdn0kYCkudGVzdChyKXx8S3Mocil9ZnVuY3Rpb24gTWYocil7cmV0dXJuIFp2LmhhcyhyKX1mdW5jdGlvbiBOZihyKXtsZXQgZT1lbihLKHIpKTtmb3IobGV0IHQgb2YgZSlpZighdC52YWxpZClyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBCZihyKXtsZXQgZT0wO3JldHVybiB2ZShyLCJfIikuZXZlcnkoaT0+KGk9SyhpKSxpLnN0YXJ0c1dpdGgoInZhcigiKT8hMDokcihpLHtsb29zZTohMH0pIT09bnVsbD8oZSsrLCEwKTohMSkpP2U+MDohMX1mdW5jdGlvbiBGZihyKXtsZXQgZT0wO3JldHVybiB2ZShyLCIsIikuZXZlcnkoaT0+KGk9SyhpKSxpLnN0YXJ0c1dpdGgoInZhcigiKT8hMDpYcyhpKXx8ZXgoaSl8fFsiZWxlbWVudCgiLCJpbWFnZSgiLCJjcm9zcy1mYWRlKCIsImltYWdlLXNldCgiXS5zb21lKG49Pmkuc3RhcnRzV2l0aChuKSk/KGUrKywhMCk6ITEpKT9lPjA6ITF9ZnVuY3Rpb24gZXgocil7cj1LKHIpO2ZvcihsZXQgZSBvZiBKdilpZihyLnN0YXJ0c1dpdGgoYCR7ZX0oYCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gamYocil7bGV0IGU9MDtyZXR1cm4gdmUociwiXyIpLmV2ZXJ5KGk9PihpPUsoaSksaS5zdGFydHNXaXRoKCJ2YXIoIik/ITA6dHguaGFzKGkpfHxOcihpKXx8TXIoaSk/KGUrKywhMCk6ITEpKT9lPjA6ITF9ZnVuY3Rpb24gemYocil7bGV0IGU9MDtyZXR1cm4gdmUociwiLCIpLmV2ZXJ5KGk9PihpPUsoaSksaS5zdGFydHNXaXRoKCJ2YXIoIik/ITA6aS5pbmNsdWRlcygiICIpJiYhLyhbJyJdKShbXiInXSspXDEvZy50ZXN0KGkpfHwvXlxkL2cudGVzdChpKT8hMTooZSsrLCEwKSkpP2U+MDohMX1mdW5jdGlvbiBVZihyKXtyZXR1cm4gcnguaGFzKHIpfWZ1bmN0aW9uIFZmKHIpe3JldHVybiBpeC5oYXMocil9ZnVuY3Rpb24gSGYocil7cmV0dXJuIG54LmhhcyhyKX12YXIgR3YsUXYsS3YsWHYsWnYsSnYsdHgscngsaXgsbngsQnI9UCgoKT0+e3UoKTtRcygpO1lzKCk7enQoKTtHdj1bIm1pbiIsIm1heCIsImNsYW1wIiwiY2FsYyJdO1F2PW5ldyBTZXQoWyJzY3JvbGwtdGltZWxpbmUtbmFtZSIsInRpbWVsaW5lLXNjb3BlIiwidmlldy10aW1lbGluZS1uYW1lIiwiZm9udC1wYWxldHRlIiwiYW5jaG9yLW5hbWUiLCJhbmNob3Itc2NvcGUiLCJwb3NpdGlvbi1hbmNob3IiLCJwb3NpdGlvbi10cnktb3B0aW9ucyIsInNjcm9sbC10aW1lbGluZSIsImFuaW1hdGlvbi10aW1lbGluZSIsInZpZXctdGltZWxpbmUiLCJwb3NpdGlvbi10cnkiXSk7S3Y9WyJjbSIsIm1tIiwiUSIsImluIiwicGMiLCJwdCIsInB4IiwiZW0iLCJleCIsImNoIiwicmVtIiwibGgiLCJybGgiLCJ2dyIsInZoIiwidm1pbiIsInZtYXgiLCJ2YiIsInZpIiwic3Z3Iiwic3ZoIiwibHZ3IiwibHZoIiwiZHZ3IiwiZHZoIiwiY3F3IiwiY3FoIiwiY3FpIiwiY3FiIiwiY3FtaW4iLCJjcW1heCJdLFh2PWAoPzoke0t2LmpvaW4oInwiKX0pYDtadj1uZXcgU2V0KFsidGhpbiIsIm1lZGl1bSIsInRoaWNrIl0pO0p2PW5ldyBTZXQoWyJjb25pYy1ncmFkaWVudCIsImxpbmVhci1ncmFkaWVudCIsInJhZGlhbC1ncmFkaWVudCIsInJlcGVhdGluZy1jb25pYy1ncmFkaWVudCIsInJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQiLCJyZXBlYXRpbmctcmFkaWFsLWdyYWRpZW50Il0pO3R4PW5ldyBTZXQoWyJjZW50ZXIiLCJ0b3AiLCJyaWdodCIsImJvdHRvbSIsImxlZnQiXSk7cng9bmV3IFNldChbInNlcmlmIiwic2Fucy1zZXJpZiIsIm1vbm9zcGFjZSIsImN1cnNpdmUiLCJmYW50YXN5Iiwic3lzdGVtLXVpIiwidWktc2VyaWYiLCJ1aS1zYW5zLXNlcmlmIiwidWktbW9ub3NwYWNlIiwidWktcm91bmRlZCIsIm1hdGgiLCJlbW9qaSIsImZhbmdzb25nIl0pO2l4PW5ldyBTZXQoWyJ4eC1zbWFsbCIsIngtc21hbGwiLCJzbWFsbCIsIm1lZGl1bSIsImxhcmdlIiwieC1sYXJnZSIsInh4LWxhcmdlIiwieHh4LWxhcmdlIl0pO254PW5ldyBTZXQoWyJsYXJnZXIiLCJzbWFsbGVyIl0pfSk7ZnVuY3Rpb24gV2Yocil7bGV0IGU9WyJjb3ZlciIsImNvbnRhaW4iXTtyZXR1cm4gdmUociwiLCIpLmV2ZXJ5KHQ9PntsZXQgaT12ZSh0LCJfIikuZmlsdGVyKEJvb2xlYW4pO3JldHVybiBpLmxlbmd0aD09PTEmJmUuaW5jbHVkZXMoaVswXSk/ITA6aS5sZW5ndGghPT0xJiZpLmxlbmd0aCE9PTI/ITE6aS5ldmVyeShuPT5OcihuKXx8TXIobil8fG49PT0iYXV0byIpfSl9dmFyIEdmPVAoKCk9Pnt1KCk7QnIoKTt6dCgpfSk7ZnVuY3Rpb24gUWYocixlKXtyLndhbGtDbGFzc2VzKHQ9Pnt0LnZhbHVlPWUodC52YWx1ZSksdC5yYXdzJiZ0LnJhd3MudmFsdWUmJih0LnJhd3MudmFsdWU9anQodC5yYXdzLnZhbHVlKSl9KX1mdW5jdGlvbiBZZihyLGUpe2lmKCFfdChyKSlyZXR1cm47bGV0IHQ9ci5zbGljZSgxLC0xKTtpZighIWUodCkpcmV0dXJuIEsodCl9ZnVuY3Rpb24gc3gocixlPXt9LHQpe2xldCBpPWVbcl07aWYoaSE9PXZvaWQgMClyZXR1cm4geHQoaSk7aWYoX3Qocikpe2xldCBuPVlmKHIsdCk7cmV0dXJuIG49PT12b2lkIDA/dm9pZCAwOnh0KG4pfX1mdW5jdGlvbiB0bihyLGU9e30se3ZhbGlkYXRlOnQ9KCk9PiEwfT17fSl7bGV0IGk9ZS52YWx1ZXM/LltyXTtyZXR1cm4gaSE9PXZvaWQgMD9pOmUuc3VwcG9ydHNOZWdhdGl2ZVZhbHVlcyYmci5zdGFydHNXaXRoKCItIik/c3goci5zbGljZSgxKSxlLnZhbHVlcyx0KTpZZihyLHQpfWZ1bmN0aW9uIF90KHIpe3JldHVybiByLnN0YXJ0c1dpdGgoIlsiKSYmci5lbmRzV2l0aCgiXSIpfWZ1bmN0aW9uIEtmKHIpe2xldCBlPXIubGFzdEluZGV4T2YoIi8iKSx0PXIubGFzdEluZGV4T2YoIlsiLGUpLGk9ci5pbmRleE9mKCJdIixlKTtyZXR1cm4gcltlLTFdPT09Il0ifHxyW2UrMV09PT0iWyJ8fHQhPT0tMSYmaSE9PS0xJiZ0PGUmJmU8aSYmKGU9ci5sYXN0SW5kZXhPZigiLyIsdCkpLGU9PT0tMXx8ZT09PXIubGVuZ3RoLTE/W3Isdm9pZCAwXTpfdChyKSYmIXIuaW5jbHVkZXMoIl0vWyIpP1tyLHZvaWQgMF06W3Iuc2xpY2UoMCxlKSxyLnNsaWNlKGUrMSldfWZ1bmN0aW9uIFh0KHIpe2lmKHR5cGVvZiByPT0ic3RyaW5nIiYmci5pbmNsdWRlcygiPGFscGhhLXZhbHVlPiIpKXtsZXQgZT1yO3JldHVybih7b3BhY2l0eVZhbHVlOnQ9MX0pPT5lLnJlcGxhY2UoLzxhbHBoYS12YWx1ZT4vZyx0KX1yZXR1cm4gcn1mdW5jdGlvbiBYZihyKXtyZXR1cm4gSyhyLnNsaWNlKDEsLTEpKX1mdW5jdGlvbiBheChyLGU9e30se3RhaWx3aW5kQ29uZmlnOnQ9e319PXt9KXtpZihlLnZhbHVlcz8uW3JdIT09dm9pZCAwKXJldHVybiBYdChlLnZhbHVlcz8uW3JdKTtsZXRbaSxuXT1LZihyKTtpZihuIT09dm9pZCAwKXtsZXQgcz1lLnZhbHVlcz8uW2ldPz8oX3QoaSk/aS5zbGljZSgxLC0xKTp2b2lkIDApO3JldHVybiBzPT09dm9pZCAwP3ZvaWQgMDoocz1YdChzKSxfdChuKT9KZShzLFhmKG4pKTp0LnRoZW1lPy5vcGFjaXR5Py5bbl09PT12b2lkIDA/dm9pZCAwOkplKHMsdC50aGVtZS5vcGFjaXR5W25dKSl9cmV0dXJuIHRuKHIsZSx7dmFsaWRhdGU6QmZ9KX1mdW5jdGlvbiBveChyLGU9e30pe3JldHVybiBlLnZhbHVlcz8uW3JdfWZ1bmN0aW9uIHFlKHIpe3JldHVybihlLHQpPT50bihlLHQse3ZhbGlkYXRlOnJ9KX1mdW5jdGlvbiBseChyLGUpe2xldCB0PXIuaW5kZXhPZihlKTtyZXR1cm4gdD09PS0xP1t2b2lkIDAscl06W3Iuc2xpY2UoMCx0KSxyLnNsaWNlKHQrMSldfWZ1bmN0aW9uIGVhKHIsZSx0LGkpe2lmKHQudmFsdWVzJiZlIGluIHQudmFsdWVzKWZvcihsZXR7dHlwZTpzfW9mIHI/P1tdKXtsZXQgYT1Kc1tzXShlLHQse3RhaWx3aW5kQ29uZmlnOml9KTtpZihhIT09dm9pZCAwKXJldHVyblthLHMsbnVsbF19aWYoX3QoZSkpe2xldCBzPWUuc2xpY2UoMSwtMSksW2Esb109bHgocywiOiIpO2lmKCEvXltcdy1fXSskL2cudGVzdChhKSlvPXM7ZWxzZSBpZihhIT09dm9pZCAwJiYhWmYuaW5jbHVkZXMoYSkpcmV0dXJuW107aWYoby5sZW5ndGg+MCYmWmYuaW5jbHVkZXMoYSkpcmV0dXJuW3RuKGBbJHtvfV1gLHQpLGEsbnVsbF19bGV0IG49dGEocixlLHQsaSk7Zm9yKGxldCBzIG9mIG4pcmV0dXJuIHM7cmV0dXJuW119ZnVuY3Rpb24qdGEocixlLHQsaSl7bGV0IG49d2UoaSwiZ2VuZXJhbGl6ZWRNb2RpZmllcnMiKSxbcyxhXT1LZihlKTtpZihuJiZ0Lm1vZGlmaWVycyE9bnVsbCYmKHQubW9kaWZpZXJzPT09ImFueSJ8fHR5cGVvZiB0Lm1vZGlmaWVycz09Im9iamVjdCImJihhJiZfdChhKXx8YSBpbiB0Lm1vZGlmaWVycykpfHwocz1lLGE9dm9pZCAwKSxhIT09dm9pZCAwJiZzPT09IiImJihzPSJERUZBVUxUIiksYSE9PXZvaWQgMCYmdHlwZW9mIHQubW9kaWZpZXJzPT0ib2JqZWN0Iil7bGV0IGw9dC5tb2RpZmllcnM/LlthXT8/bnVsbDtsIT09bnVsbD9hPWw6X3QoYSkmJihhPVhmKGEpKX1mb3IobGV0e3R5cGU6bH1vZiByPz9bXSl7bGV0IGM9SnNbbF0ocyx0LHt0YWlsd2luZENvbmZpZzppfSk7YyE9PXZvaWQgMCYmKHlpZWxkW2MsbCxhPz9udWxsXSl9fXZhciBKcyxaZixGcj1QKCgpPT57dSgpO1ppKCk7THIoKTtCcigpO0dpKCk7R2YoKTtjdCgpO0pzPXthbnk6dG4sY29sb3I6YXgsdXJsOnFlKFhzKSxpbWFnZTpxZShGZiksbGVuZ3RoOnFlKE5yKSxwZXJjZW50YWdlOnFlKE1yKSxwb3NpdGlvbjpxZShqZiksbG9va3VwOm94LCJnZW5lcmljLW5hbWUiOnFlKFVmKSwiZmFtaWx5LW5hbWUiOnFlKHpmKSxudW1iZXI6cWUoWnMpLCJsaW5lLXdpZHRoIjpxZShNZiksImFic29sdXRlLXNpemUiOnFlKFZmKSwicmVsYXRpdmUtc2l6ZSI6cWUoSGYpLHNoYWRvdzpxZShOZiksc2l6ZTpxZShXZil9LFpmPU9iamVjdC5rZXlzKEpzKX0pO2Z1bmN0aW9uIFgocil7cmV0dXJuIHR5cGVvZiByPT0iZnVuY3Rpb24iP3Ioe30pOnJ9dmFyIHJhPVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiBadChyKXtyZXR1cm4gdHlwZW9mIHI9PSJmdW5jdGlvbiJ9ZnVuY3Rpb24ganIociwuLi5lKXtsZXQgdD1lLnBvcCgpO2ZvcihsZXQgaSBvZiBlKWZvcihsZXQgbiBpbiBpKXtsZXQgcz10KHJbbl0saVtuXSk7cz09PXZvaWQgMD9rZShyW25dKSYma2UoaVtuXSk/cltuXT1qcih7fSxyW25dLGlbbl0sdCk6cltuXT1pW25dOnJbbl09c31yZXR1cm4gcn1mdW5jdGlvbiB1eChyLC4uLmUpe3JldHVybiBadChyKT9yKC4uLmUpOnJ9ZnVuY3Rpb24gZngocil7cmV0dXJuIHIucmVkdWNlKChlLHtleHRlbmQ6dH0pPT5qcihlLHQsKGksbik9Pmk9PT12b2lkIDA/W25dOkFycmF5LmlzQXJyYXkoaSk/W24sLi4uaV06W24saV0pLHt9KX1mdW5jdGlvbiBjeChyKXtyZXR1cm57Li4uci5yZWR1Y2UoKGUsdCk9PkhzKGUsdCkse30pLGV4dGVuZDpmeChyKX19ZnVuY3Rpb24gSmYocixlKXtpZihBcnJheS5pc0FycmF5KHIpJiZrZShyWzBdKSlyZXR1cm4gci5jb25jYXQoZSk7aWYoQXJyYXkuaXNBcnJheShlKSYma2UoZVswXSkmJmtlKHIpKXJldHVybltyLC4uLmVdO2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9ZnVuY3Rpb24gcHgoe2V4dGVuZDpyLC4uLmV9KXtyZXR1cm4ganIoZSxyLCh0LGkpPT4hWnQodCkmJiFpLnNvbWUoWnQpP2pyKHt9LHQsLi4uaSxKZik6KG4scyk9PmpyKHt9LC4uLlt0LC4uLmldLm1hcChhPT51eChhLG4scykpLEpmKSl9ZnVuY3Rpb24qZHgocil7bGV0IGU9a3Qocik7aWYoZS5sZW5ndGg9PT0wfHwoeWllbGQgZSxBcnJheS5pc0FycmF5KHIpKSlyZXR1cm47bGV0IHQ9L14oLio/KVxzKlwvXHMqKFteL10rKSQvLGk9ci5tYXRjaCh0KTtpZihpIT09bnVsbCl7bGV0WyxuLHNdPWksYT1rdChuKTthLmFscGhhPXMseWllbGQgYX19ZnVuY3Rpb24gaHgocil7bGV0IGU9KHQsaSk9Pntmb3IobGV0IG4gb2YgZHgodCkpe2xldCBzPTAsYT1yO2Zvcig7YSE9bnVsbCYmczxuLmxlbmd0aDspYT1hW25bcysrXV0sYT1adChhKSYmKG4uYWxwaGE9PT12b2lkIDB8fHM8PW4ubGVuZ3RoLTEpP2EoZSxpYSk6YTtpZihhIT09dm9pZCAwKXtpZihuLmFscGhhIT09dm9pZCAwKXtsZXQgbz1YdChhKTtyZXR1cm4gSmUobyxuLmFscGhhLFgobykpfXJldHVybiBrZShhKT9TdChhKTphfX1yZXR1cm4gaX07cmV0dXJuIE9iamVjdC5hc3NpZ24oZSx7dGhlbWU6ZSwuLi5pYX0pLE9iamVjdC5rZXlzKHIpLnJlZHVjZSgodCxpKT0+KHRbaV09WnQocltpXSk/cltpXShlLGlhKTpyW2ldLHQpLHt9KX1mdW5jdGlvbiBlYyhyKXtsZXQgZT1bXTtyZXR1cm4gci5mb3JFYWNoKHQ9PntlPVsuLi5lLHRdO2xldCBpPXQ/LnBsdWdpbnM/P1tdO2kubGVuZ3RoIT09MCYmaS5mb3JFYWNoKG49PntuLl9faXNPcHRpb25zRnVuY3Rpb24mJihuPW4oKSksZT1bLi4uZSwuLi5lYyhbbj8uY29uZmlnPz97fV0pXX0pfSksZX1mdW5jdGlvbiBteChyKXtyZXR1cm5bLi4ucl0ucmVkdWNlUmlnaHQoKHQsaSk9Plp0KGkpP2koe2NvcmVQbHVnaW5zOnR9KTprZihpLHQpLHZmKX1mdW5jdGlvbiBneChyKXtyZXR1cm5bLi4ucl0ucmVkdWNlUmlnaHQoKHQsaSk9PlsuLi50LC4uLmldLFtdKX1mdW5jdGlvbiBuYShyKXtsZXQgZT1bLi4uZWMocikse3ByZWZpeDoiIixpbXBvcnRhbnQ6ITEsc2VwYXJhdG9yOiI6In1dO3JldHVybiBQZihIcyh7dGhlbWU6aHgocHgoY3goZS5tYXAodD0+dD8udGhlbWU/P3t9KSkpKSxjb3JlUGx1Z2luczpteChlLm1hcCh0PT50LmNvcmVQbHVnaW5zKSkscGx1Z2luczpneChyLm1hcCh0PT50Py5wbHVnaW5zPz9bXSkpfSwuLi5lKSl9dmFyIGlhLHRjPVAoKCk9Pnt1KCk7R2koKTt4ZigpO1NmKCk7VnMoKTtFZigpO1lpKCk7SWYoKTtLdCgpO1hpKCk7RnIoKTtMcigpO3JhKCk7aWE9e2NvbG9yczpVcyxuZWdhdGl2ZShyKXtyZXR1cm4gT2JqZWN0LmtleXMocikuZmlsdGVyKGU9PnJbZV0hPT0iMCIpLnJlZHVjZSgoZSx0KT0+e2xldCBpPXh0KHJbdF0pO3JldHVybiBpIT09dm9pZCAwJiYoZVtgLSR7dH1gXT1pKSxlfSx7fSl9LGJyZWFrcG9pbnRzKHIpe3JldHVybiBPYmplY3Qua2V5cyhyKS5maWx0ZXIoZT0+dHlwZW9mIHJbZV09PSJzdHJpbmciKS5yZWR1Y2UoKGUsdCk9Pih7Li4uZSxbYHNjcmVlbi0ke3R9YF06clt0XX0pLHt9KX19fSk7dmFyIHJuPXgoKGYzLHJjKT0+e3UoKTtyYy5leHBvcnRzPXtjb250ZW50OltdLHByZXNldHM6W10sZGFya01vZGU6Im1lZGlhIix0aGVtZTp7YWNjZW50Q29sb3I6KHt0aGVtZTpyfSk9Pih7Li4ucigiY29sb3JzIiksYXV0bzoiYXV0byJ9KSxhbmltYXRpb246e25vbmU6Im5vbmUiLHNwaW46InNwaW4gMXMgbGluZWFyIGluZmluaXRlIixwaW5nOiJwaW5nIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpIGluZmluaXRlIixwdWxzZToicHVsc2UgMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSBpbmZpbml0ZSIsYm91bmNlOiJib3VuY2UgMXMgaW5maW5pdGUifSxhcmlhOntidXN5OididXN5PSJ0cnVlIicsY2hlY2tlZDonY2hlY2tlZD0idHJ1ZSInLGRpc2FibGVkOidkaXNhYmxlZD0idHJ1ZSInLGV4cGFuZGVkOidleHBhbmRlZD0idHJ1ZSInLGhpZGRlbjonaGlkZGVuPSJ0cnVlIicscHJlc3NlZDoncHJlc3NlZD0idHJ1ZSInLHJlYWRvbmx5OidyZWFkb25seT0idHJ1ZSInLHJlcXVpcmVkOidyZXF1aXJlZD0idHJ1ZSInLHNlbGVjdGVkOidzZWxlY3RlZD0idHJ1ZSInfSxhc3BlY3RSYXRpbzp7YXV0bzoiYXV0byIsc3F1YXJlOiIxIC8gMSIsdmlkZW86IjE2IC8gOSJ9LGJhY2tkcm9wQmx1cjooe3RoZW1lOnJ9KT0+cigiYmx1ciIpLGJhY2tkcm9wQnJpZ2h0bmVzczooe3RoZW1lOnJ9KT0+cigiYnJpZ2h0bmVzcyIpLGJhY2tkcm9wQ29udHJhc3Q6KHt0aGVtZTpyfSk9PnIoImNvbnRyYXN0IiksYmFja2Ryb3BHcmF5c2NhbGU6KHt0aGVtZTpyfSk9PnIoImdyYXlzY2FsZSIpLGJhY2tkcm9wSHVlUm90YXRlOih7dGhlbWU6cn0pPT5yKCJodWVSb3RhdGUiKSxiYWNrZHJvcEludmVydDooe3RoZW1lOnJ9KT0+cigiaW52ZXJ0IiksYmFja2Ryb3BPcGFjaXR5Oih7dGhlbWU6cn0pPT5yKCJvcGFjaXR5IiksYmFja2Ryb3BTYXR1cmF0ZTooe3RoZW1lOnJ9KT0+cigic2F0dXJhdGUiKSxiYWNrZHJvcFNlcGlhOih7dGhlbWU6cn0pPT5yKCJzZXBpYSIpLGJhY2tncm91bmRDb2xvcjooe3RoZW1lOnJ9KT0+cigiY29sb3JzIiksYmFja2dyb3VuZEltYWdlOntub25lOiJub25lIiwiZ3JhZGllbnQtdG8tdCI6ImxpbmVhci1ncmFkaWVudCh0byB0b3AsIHZhcigtLXR3LWdyYWRpZW50LXN0b3BzKSkiLCJncmFkaWVudC10by10ciI6ImxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsIHZhcigtLXR3LWdyYWRpZW50LXN0b3BzKSkiLCJncmFkaWVudC10by1yIjoibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10dy1ncmFkaWVudC1zdG9wcykpIiwiZ3JhZGllbnQtdG8tYnIiOiJsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCB2YXIoLS10dy1ncmFkaWVudC1zdG9wcykpIiwiZ3JhZGllbnQtdG8tYiI6ImxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLXR3LWdyYWRpZW50LXN0b3BzKSkiLCJncmFkaWVudC10by1ibCI6ImxpbmVhci1ncmFkaWVudCh0byBib3R0b20gbGVmdCwgdmFyKC0tdHctZ3JhZGllbnQtc3RvcHMpKSIsImdyYWRpZW50LXRvLWwiOiJsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgdmFyKC0tdHctZ3JhZGllbnQtc3RvcHMpKSIsImdyYWRpZW50LXRvLXRsIjoibGluZWFyLWdyYWRpZW50KHRvIHRvcCBsZWZ0LCB2YXIoLS10dy1ncmFkaWVudC1zdG9wcykpIn0sYmFja2dyb3VuZE9wYWNpdHk6KHt0aGVtZTpyfSk9PnIoIm9wYWNpdHkiKSxiYWNrZ3JvdW5kUG9zaXRpb246e2JvdHRvbToiYm90dG9tIixjZW50ZXI6ImNlbnRlciIsbGVmdDoibGVmdCIsImxlZnQtYm90dG9tIjoibGVmdCBib3R0b20iLCJsZWZ0LXRvcCI6ImxlZnQgdG9wIixyaWdodDoicmlnaHQiLCJyaWdodC1ib3R0b20iOiJyaWdodCBib3R0b20iLCJyaWdodC10b3AiOiJyaWdodCB0b3AiLHRvcDoidG9wIn0sYmFja2dyb3VuZFNpemU6e2F1dG86ImF1dG8iLGNvdmVyOiJjb3ZlciIsY29udGFpbjoiY29udGFpbiJ9LGJsdXI6ezA6IjAiLG5vbmU6IiIsc206IjRweCIsREVGQVVMVDoiOHB4IixtZDoiMTJweCIsbGc6IjE2cHgiLHhsOiIyNHB4IiwiMnhsIjoiNDBweCIsIjN4bCI6IjY0cHgifSxib3JkZXJDb2xvcjooe3RoZW1lOnJ9KT0+KHsuLi5yKCJjb2xvcnMiKSxERUZBVUxUOnIoImNvbG9ycy5ncmF5LjIwMCIsImN1cnJlbnRDb2xvciIpfSksYm9yZGVyT3BhY2l0eTooe3RoZW1lOnJ9KT0+cigib3BhY2l0eSIpLGJvcmRlclJhZGl1czp7bm9uZToiMHB4IixzbToiMC4xMjVyZW0iLERFRkFVTFQ6IjAuMjVyZW0iLG1kOiIwLjM3NXJlbSIsbGc6IjAuNXJlbSIseGw6IjAuNzVyZW0iLCIyeGwiOiIxcmVtIiwiM3hsIjoiMS41cmVtIixmdWxsOiI5OTk5cHgifSxib3JkZXJTcGFjaW5nOih7dGhlbWU6cn0pPT4oey4uLnIoInNwYWNpbmciKX0pLGJvcmRlcldpZHRoOntERUZBVUxUOiIxcHgiLDA6IjBweCIsMjoiMnB4Iiw0OiI0cHgiLDg6IjhweCJ9LGJveFNoYWRvdzp7c206IjAgMXB4IDJweCAwIHJnYigwIDAgMCAvIDAuMDUpIixERUZBVUxUOiIwIDFweCAzcHggMCByZ2IoMCAwIDAgLyAwLjEpLCAwIDFweCAycHggLTFweCByZ2IoMCAwIDAgLyAwLjEpIixtZDoiMCA0cHggNnB4IC0xcHggcmdiKDAgMCAwIC8gMC4xKSwgMCAycHggNHB4IC0ycHggcmdiKDAgMCAwIC8gMC4xKSIsbGc6IjAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC4xKSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4xKSIseGw6IjAgMjBweCAyNXB4IC01cHggcmdiKDAgMCAwIC8gMC4xKSwgMCA4cHggMTBweCAtNnB4IHJnYigwIDAgMCAvIDAuMSkiLCIyeGwiOiIwIDI1cHggNTBweCAtMTJweCByZ2IoMCAwIDAgLyAwLjI1KSIsaW5uZXI6Imluc2V0IDAgMnB4IDRweCAwIHJnYigwIDAgMCAvIDAuMDUpIixub25lOiJub25lIn0sYm94U2hhZG93Q29sb3I6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLGJyaWdodG5lc3M6ezA6IjAiLDUwOiIuNSIsNzU6Ii43NSIsOTA6Ii45Iiw5NToiLjk1IiwxMDA6IjEiLDEwNToiMS4wNSIsMTEwOiIxLjEiLDEyNToiMS4yNSIsMTUwOiIxLjUiLDIwMDoiMiJ9LGNhcmV0Q29sb3I6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLGNvbG9yczooe2NvbG9yczpyfSk9Pih7aW5oZXJpdDpyLmluaGVyaXQsY3VycmVudDpyLmN1cnJlbnQsdHJhbnNwYXJlbnQ6ci50cmFuc3BhcmVudCxibGFjazpyLmJsYWNrLHdoaXRlOnIud2hpdGUsc2xhdGU6ci5zbGF0ZSxncmF5OnIuZ3JheSx6aW5jOnIuemluYyxuZXV0cmFsOnIubmV1dHJhbCxzdG9uZTpyLnN0b25lLHJlZDpyLnJlZCxvcmFuZ2U6ci5vcmFuZ2UsYW1iZXI6ci5hbWJlcix5ZWxsb3c6ci55ZWxsb3csbGltZTpyLmxpbWUsZ3JlZW46ci5ncmVlbixlbWVyYWxkOnIuZW1lcmFsZCx0ZWFsOnIudGVhbCxjeWFuOnIuY3lhbixza3k6ci5za3ksYmx1ZTpyLmJsdWUsaW5kaWdvOnIuaW5kaWdvLHZpb2xldDpyLnZpb2xldCxwdXJwbGU6ci5wdXJwbGUsZnVjaHNpYTpyLmZ1Y2hzaWEscGluazpyLnBpbmsscm9zZTpyLnJvc2V9KSxjb2x1bW5zOnthdXRvOiJhdXRvIiwxOiIxIiwyOiIyIiwzOiIzIiw0OiI0Iiw1OiI1Iiw2OiI2Iiw3OiI3Iiw4OiI4Iiw5OiI5IiwxMDoiMTAiLDExOiIxMSIsMTI6IjEyIiwiM3hzIjoiMTZyZW0iLCIyeHMiOiIxOHJlbSIseHM6IjIwcmVtIixzbToiMjRyZW0iLG1kOiIyOHJlbSIsbGc6IjMycmVtIix4bDoiMzZyZW0iLCIyeGwiOiI0MnJlbSIsIjN4bCI6IjQ4cmVtIiwiNHhsIjoiNTZyZW0iLCI1eGwiOiI2NHJlbSIsIjZ4bCI6IjcycmVtIiwiN3hsIjoiODByZW0ifSxjb250YWluZXI6e30sY29udGVudDp7bm9uZToibm9uZSJ9LGNvbnRyYXN0OnswOiIwIiw1MDoiLjUiLDc1OiIuNzUiLDEwMDoiMSIsMTI1OiIxLjI1IiwxNTA6IjEuNSIsMjAwOiIyIn0sY3Vyc29yOnthdXRvOiJhdXRvIixkZWZhdWx0OiJkZWZhdWx0Iixwb2ludGVyOiJwb2ludGVyIix3YWl0OiJ3YWl0Iix0ZXh0OiJ0ZXh0Iixtb3ZlOiJtb3ZlIixoZWxwOiJoZWxwIiwibm90LWFsbG93ZWQiOiJub3QtYWxsb3dlZCIsbm9uZToibm9uZSIsImNvbnRleHQtbWVudSI6ImNvbnRleHQtbWVudSIscHJvZ3Jlc3M6InByb2dyZXNzIixjZWxsOiJjZWxsIixjcm9zc2hhaXI6ImNyb3NzaGFpciIsInZlcnRpY2FsLXRleHQiOiJ2ZXJ0aWNhbC10ZXh0IixhbGlhczoiYWxpYXMiLGNvcHk6ImNvcHkiLCJuby1kcm9wIjoibm8tZHJvcCIsZ3JhYjoiZ3JhYiIsZ3JhYmJpbmc6ImdyYWJiaW5nIiwiYWxsLXNjcm9sbCI6ImFsbC1zY3JvbGwiLCJjb2wtcmVzaXplIjoiY29sLXJlc2l6ZSIsInJvdy1yZXNpemUiOiJyb3ctcmVzaXplIiwibi1yZXNpemUiOiJuLXJlc2l6ZSIsImUtcmVzaXplIjoiZS1yZXNpemUiLCJzLXJlc2l6ZSI6InMtcmVzaXplIiwidy1yZXNpemUiOiJ3LXJlc2l6ZSIsIm5lLXJlc2l6ZSI6Im5lLXJlc2l6ZSIsIm53LXJlc2l6ZSI6Im53LXJlc2l6ZSIsInNlLXJlc2l6ZSI6InNlLXJlc2l6ZSIsInN3LXJlc2l6ZSI6InN3LXJlc2l6ZSIsImV3LXJlc2l6ZSI6ImV3LXJlc2l6ZSIsIm5zLXJlc2l6ZSI6Im5zLXJlc2l6ZSIsIm5lc3ctcmVzaXplIjoibmVzdy1yZXNpemUiLCJud3NlLXJlc2l6ZSI6Im53c2UtcmVzaXplIiwiem9vbS1pbiI6Inpvb20taW4iLCJ6b29tLW91dCI6Inpvb20tb3V0In0sZGl2aWRlQ29sb3I6KHt0aGVtZTpyfSk9PnIoImJvcmRlckNvbG9yIiksZGl2aWRlT3BhY2l0eTooe3RoZW1lOnJ9KT0+cigiYm9yZGVyT3BhY2l0eSIpLGRpdmlkZVdpZHRoOih7dGhlbWU6cn0pPT5yKCJib3JkZXJXaWR0aCIpLGRyb3BTaGFkb3c6e3NtOiIwIDFweCAxcHggcmdiKDAgMCAwIC8gMC4wNSkiLERFRkFVTFQ6WyIwIDFweCAycHggcmdiKDAgMCAwIC8gMC4xKSIsIjAgMXB4IDFweCByZ2IoMCAwIDAgLyAwLjA2KSJdLG1kOlsiMCA0cHggM3B4IHJnYigwIDAgMCAvIDAuMDcpIiwiMCAycHggMnB4IHJnYigwIDAgMCAvIDAuMDYpIl0sbGc6WyIwIDEwcHggOHB4IHJnYigwIDAgMCAvIDAuMDQpIiwiMCA0cHggM3B4IHJnYigwIDAgMCAvIDAuMSkiXSx4bDpbIjAgMjBweCAxM3B4IHJnYigwIDAgMCAvIDAuMDMpIiwiMCA4cHggNXB4IHJnYigwIDAgMCAvIDAuMDgpIl0sIjJ4bCI6IjAgMjVweCAyNXB4IHJnYigwIDAgMCAvIDAuMTUpIixub25lOiIwIDAgIzAwMDAifSxmaWxsOih7dGhlbWU6cn0pPT4oe25vbmU6Im5vbmUiLC4uLnIoImNvbG9ycyIpfSksZmxleDp7MToiMSAxIDAlIixhdXRvOiIxIDEgYXV0byIsaW5pdGlhbDoiMCAxIGF1dG8iLG5vbmU6Im5vbmUifSxmbGV4QmFzaXM6KHt0aGVtZTpyfSk9Pih7YXV0bzoiYXV0byIsLi4ucigic3BhY2luZyIpLCIxLzIiOiI1MCUiLCIxLzMiOiIzMy4zMzMzMzMlIiwiMi8zIjoiNjYuNjY2NjY3JSIsIjEvNCI6IjI1JSIsIjIvNCI6IjUwJSIsIjMvNCI6Ijc1JSIsIjEvNSI6IjIwJSIsIjIvNSI6IjQwJSIsIjMvNSI6IjYwJSIsIjQvNSI6IjgwJSIsIjEvNiI6IjE2LjY2NjY2NyUiLCIyLzYiOiIzMy4zMzMzMzMlIiwiMy82IjoiNTAlIiwiNC82IjoiNjYuNjY2NjY3JSIsIjUvNiI6IjgzLjMzMzMzMyUiLCIxLzEyIjoiOC4zMzMzMzMlIiwiMi8xMiI6IjE2LjY2NjY2NyUiLCIzLzEyIjoiMjUlIiwiNC8xMiI6IjMzLjMzMzMzMyUiLCI1LzEyIjoiNDEuNjY2NjY3JSIsIjYvMTIiOiI1MCUiLCI3LzEyIjoiNTguMzMzMzMzJSIsIjgvMTIiOiI2Ni42NjY2NjclIiwiOS8xMiI6Ijc1JSIsIjEwLzEyIjoiODMuMzMzMzMzJSIsIjExLzEyIjoiOTEuNjY2NjY3JSIsZnVsbDoiMTAwJSJ9KSxmbGV4R3Jvdzp7MDoiMCIsREVGQVVMVDoiMSJ9LGZsZXhTaHJpbms6ezA6IjAiLERFRkFVTFQ6IjEifSxmb250RmFtaWx5OntzYW5zOlsidWktc2Fucy1zZXJpZiIsInN5c3RlbS11aSIsInNhbnMtc2VyaWYiLCciQXBwbGUgQ29sb3IgRW1vamkiJywnIlNlZ29lIFVJIEVtb2ppIicsJyJTZWdvZSBVSSBTeW1ib2wiJywnIk5vdG8gQ29sb3IgRW1vamkiJ10sc2VyaWY6WyJ1aS1zZXJpZiIsIkdlb3JnaWEiLCJDYW1icmlhIiwnIlRpbWVzIE5ldyBSb21hbiInLCJUaW1lcyIsInNlcmlmIl0sbW9ubzpbInVpLW1vbm9zcGFjZSIsIlNGTW9uby1SZWd1bGFyIiwiTWVubG8iLCJNb25hY28iLCJDb25zb2xhcyIsJyJMaWJlcmF0aW9uIE1vbm8iJywnIkNvdXJpZXIgTmV3IicsIm1vbm9zcGFjZSJdfSxmb250U2l6ZTp7eHM6WyIwLjc1cmVtIix7bGluZUhlaWdodDoiMXJlbSJ9XSxzbTpbIjAuODc1cmVtIix7bGluZUhlaWdodDoiMS4yNXJlbSJ9XSxiYXNlOlsiMXJlbSIse2xpbmVIZWlnaHQ6IjEuNXJlbSJ9XSxsZzpbIjEuMTI1cmVtIix7bGluZUhlaWdodDoiMS43NXJlbSJ9XSx4bDpbIjEuMjVyZW0iLHtsaW5lSGVpZ2h0OiIxLjc1cmVtIn1dLCIyeGwiOlsiMS41cmVtIix7bGluZUhlaWdodDoiMnJlbSJ9XSwiM3hsIjpbIjEuODc1cmVtIix7bGluZUhlaWdodDoiMi4yNXJlbSJ9XSwiNHhsIjpbIjIuMjVyZW0iLHtsaW5lSGVpZ2h0OiIyLjVyZW0ifV0sIjV4bCI6WyIzcmVtIix7bGluZUhlaWdodDoiMSJ9XSwiNnhsIjpbIjMuNzVyZW0iLHtsaW5lSGVpZ2h0OiIxIn1dLCI3eGwiOlsiNC41cmVtIix7bGluZUhlaWdodDoiMSJ9XSwiOHhsIjpbIjZyZW0iLHtsaW5lSGVpZ2h0OiIxIn1dLCI5eGwiOlsiOHJlbSIse2xpbmVIZWlnaHQ6IjEifV19LGZvbnRXZWlnaHQ6e3RoaW46IjEwMCIsZXh0cmFsaWdodDoiMjAwIixsaWdodDoiMzAwIixub3JtYWw6IjQwMCIsbWVkaXVtOiI1MDAiLHNlbWlib2xkOiI2MDAiLGJvbGQ6IjcwMCIsZXh0cmFib2xkOiI4MDAiLGJsYWNrOiI5MDAifSxnYXA6KHt0aGVtZTpyfSk9PnIoInNwYWNpbmciKSxncmFkaWVudENvbG9yU3RvcHM6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLGdyYWRpZW50Q29sb3JTdG9wUG9zaXRpb25zOnsiMCUiOiIwJSIsIjUlIjoiNSUiLCIxMCUiOiIxMCUiLCIxNSUiOiIxNSUiLCIyMCUiOiIyMCUiLCIyNSUiOiIyNSUiLCIzMCUiOiIzMCUiLCIzNSUiOiIzNSUiLCI0MCUiOiI0MCUiLCI0NSUiOiI0NSUiLCI1MCUiOiI1MCUiLCI1NSUiOiI1NSUiLCI2MCUiOiI2MCUiLCI2NSUiOiI2NSUiLCI3MCUiOiI3MCUiLCI3NSUiOiI3NSUiLCI4MCUiOiI4MCUiLCI4NSUiOiI4NSUiLCI5MCUiOiI5MCUiLCI5NSUiOiI5NSUiLCIxMDAlIjoiMTAwJSJ9LGdyYXlzY2FsZTp7MDoiMCIsREVGQVVMVDoiMTAwJSJ9LGdyaWRBdXRvQ29sdW1uczp7YXV0bzoiYXV0byIsbWluOiJtaW4tY29udGVudCIsbWF4OiJtYXgtY29udGVudCIsZnI6Im1pbm1heCgwLCAxZnIpIn0sZ3JpZEF1dG9Sb3dzOnthdXRvOiJhdXRvIixtaW46Im1pbi1jb250ZW50IixtYXg6Im1heC1jb250ZW50IixmcjoibWlubWF4KDAsIDFmcikifSxncmlkQ29sdW1uOnthdXRvOiJhdXRvIiwic3Bhbi0xIjoic3BhbiAxIC8gc3BhbiAxIiwic3Bhbi0yIjoic3BhbiAyIC8gc3BhbiAyIiwic3Bhbi0zIjoic3BhbiAzIC8gc3BhbiAzIiwic3Bhbi00Ijoic3BhbiA0IC8gc3BhbiA0Iiwic3Bhbi01Ijoic3BhbiA1IC8gc3BhbiA1Iiwic3Bhbi02Ijoic3BhbiA2IC8gc3BhbiA2Iiwic3Bhbi03Ijoic3BhbiA3IC8gc3BhbiA3Iiwic3Bhbi04Ijoic3BhbiA4IC8gc3BhbiA4Iiwic3Bhbi05Ijoic3BhbiA5IC8gc3BhbiA5Iiwic3Bhbi0xMCI6InNwYW4gMTAgLyBzcGFuIDEwIiwic3Bhbi0xMSI6InNwYW4gMTEgLyBzcGFuIDExIiwic3Bhbi0xMiI6InNwYW4gMTIgLyBzcGFuIDEyIiwic3Bhbi1mdWxsIjoiMSAvIC0xIn0sZ3JpZENvbHVtbkVuZDp7YXV0bzoiYXV0byIsMToiMSIsMjoiMiIsMzoiMyIsNDoiNCIsNToiNSIsNjoiNiIsNzoiNyIsODoiOCIsOToiOSIsMTA6IjEwIiwxMToiMTEiLDEyOiIxMiIsMTM6IjEzIn0sZ3JpZENvbHVtblN0YXJ0OnthdXRvOiJhdXRvIiwxOiIxIiwyOiIyIiwzOiIzIiw0OiI0Iiw1OiI1Iiw2OiI2Iiw3OiI3Iiw4OiI4Iiw5OiI5IiwxMDoiMTAiLDExOiIxMSIsMTI6IjEyIiwxMzoiMTMifSxncmlkUm93OnthdXRvOiJhdXRvIiwic3Bhbi0xIjoic3BhbiAxIC8gc3BhbiAxIiwic3Bhbi0yIjoic3BhbiAyIC8gc3BhbiAyIiwic3Bhbi0zIjoic3BhbiAzIC8gc3BhbiAzIiwic3Bhbi00Ijoic3BhbiA0IC8gc3BhbiA0Iiwic3Bhbi01Ijoic3BhbiA1IC8gc3BhbiA1Iiwic3Bhbi02Ijoic3BhbiA2IC8gc3BhbiA2Iiwic3Bhbi03Ijoic3BhbiA3IC8gc3BhbiA3Iiwic3Bhbi04Ijoic3BhbiA4IC8gc3BhbiA4Iiwic3Bhbi05Ijoic3BhbiA5IC8gc3BhbiA5Iiwic3Bhbi0xMCI6InNwYW4gMTAgLyBzcGFuIDEwIiwic3Bhbi0xMSI6InNwYW4gMTEgLyBzcGFuIDExIiwic3Bhbi0xMiI6InNwYW4gMTIgLyBzcGFuIDEyIiwic3Bhbi1mdWxsIjoiMSAvIC0xIn0sZ3JpZFJvd0VuZDp7YXV0bzoiYXV0byIsMToiMSIsMjoiMiIsMzoiMyIsNDoiNCIsNToiNSIsNjoiNiIsNzoiNyIsODoiOCIsOToiOSIsMTA6IjEwIiwxMToiMTEiLDEyOiIxMiIsMTM6IjEzIn0sZ3JpZFJvd1N0YXJ0OnthdXRvOiJhdXRvIiwxOiIxIiwyOiIyIiwzOiIzIiw0OiI0Iiw1OiI1Iiw2OiI2Iiw3OiI3Iiw4OiI4Iiw5OiI5IiwxMDoiMTAiLDExOiIxMSIsMTI6IjEyIiwxMzoiMTMifSxncmlkVGVtcGxhdGVDb2x1bW5zOntub25lOiJub25lIixzdWJncmlkOiJzdWJncmlkIiwxOiJyZXBlYXQoMSwgbWlubWF4KDAsIDFmcikpIiwyOiJyZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpIiwzOiJyZXBlYXQoMywgbWlubWF4KDAsIDFmcikpIiw0OiJyZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpIiw1OiJyZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpIiw2OiJyZXBlYXQoNiwgbWlubWF4KDAsIDFmcikpIiw3OiJyZXBlYXQoNywgbWlubWF4KDAsIDFmcikpIiw4OiJyZXBlYXQoOCwgbWlubWF4KDAsIDFmcikpIiw5OiJyZXBlYXQoOSwgbWlubWF4KDAsIDFmcikpIiwxMDoicmVwZWF0KDEwLCBtaW5tYXgoMCwgMWZyKSkiLDExOiJyZXBlYXQoMTEsIG1pbm1heCgwLCAxZnIpKSIsMTI6InJlcGVhdCgxMiwgbWlubWF4KDAsIDFmcikpIn0sZ3JpZFRlbXBsYXRlUm93czp7bm9uZToibm9uZSIsc3ViZ3JpZDoic3ViZ3JpZCIsMToicmVwZWF0KDEsIG1pbm1heCgwLCAxZnIpKSIsMjoicmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKSIsMzoicmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKSIsNDoicmVwZWF0KDQsIG1pbm1heCgwLCAxZnIpKSIsNToicmVwZWF0KDUsIG1pbm1heCgwLCAxZnIpKSIsNjoicmVwZWF0KDYsIG1pbm1heCgwLCAxZnIpKSIsNzoicmVwZWF0KDcsIG1pbm1heCgwLCAxZnIpKSIsODoicmVwZWF0KDgsIG1pbm1heCgwLCAxZnIpKSIsOToicmVwZWF0KDksIG1pbm1heCgwLCAxZnIpKSIsMTA6InJlcGVhdCgxMCwgbWlubWF4KDAsIDFmcikpIiwxMToicmVwZWF0KDExLCBtaW5tYXgoMCwgMWZyKSkiLDEyOiJyZXBlYXQoMTIsIG1pbm1heCgwLCAxZnIpKSJ9LGhlaWdodDooe3RoZW1lOnJ9KT0+KHthdXRvOiJhdXRvIiwuLi5yKCJzcGFjaW5nIiksIjEvMiI6IjUwJSIsIjEvMyI6IjMzLjMzMzMzMyUiLCIyLzMiOiI2Ni42NjY2NjclIiwiMS80IjoiMjUlIiwiMi80IjoiNTAlIiwiMy80IjoiNzUlIiwiMS81IjoiMjAlIiwiMi81IjoiNDAlIiwiMy81IjoiNjAlIiwiNC81IjoiODAlIiwiMS82IjoiMTYuNjY2NjY3JSIsIjIvNiI6IjMzLjMzMzMzMyUiLCIzLzYiOiI1MCUiLCI0LzYiOiI2Ni42NjY2NjclIiwiNS82IjoiODMuMzMzMzMzJSIsZnVsbDoiMTAwJSIsc2NyZWVuOiIxMDB2aCIsc3ZoOiIxMDBzdmgiLGx2aDoiMTAwbHZoIixkdmg6IjEwMGR2aCIsbWluOiJtaW4tY29udGVudCIsbWF4OiJtYXgtY29udGVudCIsZml0OiJmaXQtY29udGVudCJ9KSxodWVSb3RhdGU6ezA6IjBkZWciLDE1OiIxNWRlZyIsMzA6IjMwZGVnIiw2MDoiNjBkZWciLDkwOiI5MGRlZyIsMTgwOiIxODBkZWcifSxpbnNldDooe3RoZW1lOnJ9KT0+KHthdXRvOiJhdXRvIiwuLi5yKCJzcGFjaW5nIiksIjEvMiI6IjUwJSIsIjEvMyI6IjMzLjMzMzMzMyUiLCIyLzMiOiI2Ni42NjY2NjclIiwiMS80IjoiMjUlIiwiMi80IjoiNTAlIiwiMy80IjoiNzUlIixmdWxsOiIxMDAlIn0pLGludmVydDp7MDoiMCIsREVGQVVMVDoiMTAwJSJ9LGtleWZyYW1lczp7c3Bpbjp7dG86e3RyYW5zZm9ybToicm90YXRlKDM2MGRlZykifX0scGluZzp7Ijc1JSwgMTAwJSI6e3RyYW5zZm9ybToic2NhbGUoMikiLG9wYWNpdHk6IjAifX0scHVsc2U6eyI1MCUiOntvcGFjaXR5OiIuNSJ9fSxib3VuY2U6eyIwJSwgMTAwJSI6e3RyYW5zZm9ybToidHJhbnNsYXRlWSgtMjUlKSIsYW5pbWF0aW9uVGltaW5nRnVuY3Rpb246ImN1YmljLWJlemllcigwLjgsMCwxLDEpIn0sIjUwJSI6e3RyYW5zZm9ybToibm9uZSIsYW5pbWF0aW9uVGltaW5nRnVuY3Rpb246ImN1YmljLWJlemllcigwLDAsMC4yLDEpIn19fSxsZXR0ZXJTcGFjaW5nOnt0aWdodGVyOiItMC4wNWVtIix0aWdodDoiLTAuMDI1ZW0iLG5vcm1hbDoiMGVtIix3aWRlOiIwLjAyNWVtIix3aWRlcjoiMC4wNWVtIix3aWRlc3Q6IjAuMWVtIn0sbGluZUhlaWdodDp7bm9uZToiMSIsdGlnaHQ6IjEuMjUiLHNudWc6IjEuMzc1Iixub3JtYWw6IjEuNSIscmVsYXhlZDoiMS42MjUiLGxvb3NlOiIyIiwzOiIuNzVyZW0iLDQ6IjFyZW0iLDU6IjEuMjVyZW0iLDY6IjEuNXJlbSIsNzoiMS43NXJlbSIsODoiMnJlbSIsOToiMi4yNXJlbSIsMTA6IjIuNXJlbSJ9LGxpc3RTdHlsZVR5cGU6e25vbmU6Im5vbmUiLGRpc2M6ImRpc2MiLGRlY2ltYWw6ImRlY2ltYWwifSxsaXN0U3R5bGVJbWFnZTp7bm9uZToibm9uZSJ9LG1hcmdpbjooe3RoZW1lOnJ9KT0+KHthdXRvOiJhdXRvIiwuLi5yKCJzcGFjaW5nIil9KSxsaW5lQ2xhbXA6ezE6IjEiLDI6IjIiLDM6IjMiLDQ6IjQiLDU6IjUiLDY6IjYifSxtYXhIZWlnaHQ6KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpLG5vbmU6Im5vbmUiLGZ1bGw6IjEwMCUiLHNjcmVlbjoiMTAwdmgiLHN2aDoiMTAwc3ZoIixsdmg6IjEwMGx2aCIsZHZoOiIxMDBkdmgiLG1pbjoibWluLWNvbnRlbnQiLG1heDoibWF4LWNvbnRlbnQiLGZpdDoiZml0LWNvbnRlbnQifSksbWF4V2lkdGg6KHt0aGVtZTpyLGJyZWFrcG9pbnRzOmV9KT0+KHsuLi5yKCJzcGFjaW5nIiksbm9uZToibm9uZSIseHM6IjIwcmVtIixzbToiMjRyZW0iLG1kOiIyOHJlbSIsbGc6IjMycmVtIix4bDoiMzZyZW0iLCIyeGwiOiI0MnJlbSIsIjN4bCI6IjQ4cmVtIiwiNHhsIjoiNTZyZW0iLCI1eGwiOiI2NHJlbSIsIjZ4bCI6IjcycmVtIiwiN3hsIjoiODByZW0iLGZ1bGw6IjEwMCUiLG1pbjoibWluLWNvbnRlbnQiLG1heDoibWF4LWNvbnRlbnQiLGZpdDoiZml0LWNvbnRlbnQiLHByb3NlOiI2NWNoIiwuLi5lKHIoInNjcmVlbnMiKSl9KSxtaW5IZWlnaHQ6KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpLGZ1bGw6IjEwMCUiLHNjcmVlbjoiMTAwdmgiLHN2aDoiMTAwc3ZoIixsdmg6IjEwMGx2aCIsZHZoOiIxMDBkdmgiLG1pbjoibWluLWNvbnRlbnQiLG1heDoibWF4LWNvbnRlbnQiLGZpdDoiZml0LWNvbnRlbnQifSksbWluV2lkdGg6KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpLGZ1bGw6IjEwMCUiLG1pbjoibWluLWNvbnRlbnQiLG1heDoibWF4LWNvbnRlbnQiLGZpdDoiZml0LWNvbnRlbnQifSksb2JqZWN0UG9zaXRpb246e2JvdHRvbToiYm90dG9tIixjZW50ZXI6ImNlbnRlciIsbGVmdDoibGVmdCIsImxlZnQtYm90dG9tIjoibGVmdCBib3R0b20iLCJsZWZ0LXRvcCI6ImxlZnQgdG9wIixyaWdodDoicmlnaHQiLCJyaWdodC1ib3R0b20iOiJyaWdodCBib3R0b20iLCJyaWdodC10b3AiOiJyaWdodCB0b3AiLHRvcDoidG9wIn0sb3BhY2l0eTp7MDoiMCIsNToiMC4wNSIsMTA6IjAuMSIsMTU6IjAuMTUiLDIwOiIwLjIiLDI1OiIwLjI1IiwzMDoiMC4zIiwzNToiMC4zNSIsNDA6IjAuNCIsNDU6IjAuNDUiLDUwOiIwLjUiLDU1OiIwLjU1Iiw2MDoiMC42Iiw2NToiMC42NSIsNzA6IjAuNyIsNzU6IjAuNzUiLDgwOiIwLjgiLDg1OiIwLjg1Iiw5MDoiMC45Iiw5NToiMC45NSIsMTAwOiIxIn0sb3JkZXI6e2ZpcnN0OiItOTk5OSIsbGFzdDoiOTk5OSIsbm9uZToiMCIsMToiMSIsMjoiMiIsMzoiMyIsNDoiNCIsNToiNSIsNjoiNiIsNzoiNyIsODoiOCIsOToiOSIsMTA6IjEwIiwxMToiMTEiLDEyOiIxMiJ9LG91dGxpbmVDb2xvcjooe3RoZW1lOnJ9KT0+cigiY29sb3JzIiksb3V0bGluZU9mZnNldDp7MDoiMHB4IiwxOiIxcHgiLDI6IjJweCIsNDoiNHB4Iiw4OiI4cHgifSxvdXRsaW5lV2lkdGg6ezA6IjBweCIsMToiMXB4IiwyOiIycHgiLDQ6IjRweCIsODoiOHB4In0scGFkZGluZzooe3RoZW1lOnJ9KT0+cigic3BhY2luZyIpLHBsYWNlaG9sZGVyQ29sb3I6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLHBsYWNlaG9sZGVyT3BhY2l0eTooe3RoZW1lOnJ9KT0+cigib3BhY2l0eSIpLHJpbmdDb2xvcjooe3RoZW1lOnJ9KT0+KHtERUZBVUxUOnIoImNvbG9ycy5ibHVlLjUwMCIsIiMzYjgyZjYiKSwuLi5yKCJjb2xvcnMiKX0pLHJpbmdPZmZzZXRDb2xvcjooe3RoZW1lOnJ9KT0+cigiY29sb3JzIikscmluZ09mZnNldFdpZHRoOnswOiIwcHgiLDE6IjFweCIsMjoiMnB4Iiw0OiI0cHgiLDg6IjhweCJ9LHJpbmdPcGFjaXR5Oih7dGhlbWU6cn0pPT4oe0RFRkFVTFQ6IjAuNSIsLi4ucigib3BhY2l0eSIpfSkscmluZ1dpZHRoOntERUZBVUxUOiIzcHgiLDA6IjBweCIsMToiMXB4IiwyOiIycHgiLDQ6IjRweCIsODoiOHB4In0scm90YXRlOnswOiIwZGVnIiwxOiIxZGVnIiwyOiIyZGVnIiwzOiIzZGVnIiw2OiI2ZGVnIiwxMjoiMTJkZWciLDQ1OiI0NWRlZyIsOTA6IjkwZGVnIiwxODA6IjE4MGRlZyJ9LHNhdHVyYXRlOnswOiIwIiw1MDoiLjUiLDEwMDoiMSIsMTUwOiIxLjUiLDIwMDoiMiJ9LHNjYWxlOnswOiIwIiw1MDoiLjUiLDc1OiIuNzUiLDkwOiIuOSIsOTU6Ii45NSIsMTAwOiIxIiwxMDU6IjEuMDUiLDExMDoiMS4xIiwxMjU6IjEuMjUiLDE1MDoiMS41In0sc2NyZWVuczp7c206IjY0MHB4IixtZDoiNzY4cHgiLGxnOiIxMDI0cHgiLHhsOiIxMjgwcHgiLCIyeGwiOiIxNTM2cHgifSxzY3JvbGxNYXJnaW46KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpfSksc2Nyb2xsUGFkZGluZzooe3RoZW1lOnJ9KT0+cigic3BhY2luZyIpLHNlcGlhOnswOiIwIixERUZBVUxUOiIxMDAlIn0sc2tldzp7MDoiMGRlZyIsMToiMWRlZyIsMjoiMmRlZyIsMzoiM2RlZyIsNjoiNmRlZyIsMTI6IjEyZGVnIn0sc3BhY2U6KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpfSksc3BhY2luZzp7cHg6IjFweCIsMDoiMHB4IiwuNToiMC4xMjVyZW0iLDE6IjAuMjVyZW0iLDEuNToiMC4zNzVyZW0iLDI6IjAuNXJlbSIsMi41OiIwLjYyNXJlbSIsMzoiMC43NXJlbSIsMy41OiIwLjg3NXJlbSIsNDoiMXJlbSIsNToiMS4yNXJlbSIsNjoiMS41cmVtIiw3OiIxLjc1cmVtIiw4OiIycmVtIiw5OiIyLjI1cmVtIiwxMDoiMi41cmVtIiwxMToiMi43NXJlbSIsMTI6IjNyZW0iLDE0OiIzLjVyZW0iLDE2OiI0cmVtIiwyMDoiNXJlbSIsMjQ6IjZyZW0iLDI4OiI3cmVtIiwzMjoiOHJlbSIsMzY6IjlyZW0iLDQwOiIxMHJlbSIsNDQ6IjExcmVtIiw0ODoiMTJyZW0iLDUyOiIxM3JlbSIsNTY6IjE0cmVtIiw2MDoiMTVyZW0iLDY0OiIxNnJlbSIsNzI6IjE4cmVtIiw4MDoiMjByZW0iLDk2OiIyNHJlbSJ9LHN0cm9rZTooe3RoZW1lOnJ9KT0+KHtub25lOiJub25lIiwuLi5yKCJjb2xvcnMiKX0pLHN0cm9rZVdpZHRoOnswOiIwIiwxOiIxIiwyOiIyIn0sc3VwcG9ydHM6e30sZGF0YTp7fSx0ZXh0Q29sb3I6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLHRleHREZWNvcmF0aW9uQ29sb3I6KHt0aGVtZTpyfSk9PnIoImNvbG9ycyIpLHRleHREZWNvcmF0aW9uVGhpY2tuZXNzOnthdXRvOiJhdXRvIiwiZnJvbS1mb250IjoiZnJvbS1mb250IiwwOiIwcHgiLDE6IjFweCIsMjoiMnB4Iiw0OiI0cHgiLDg6IjhweCJ9LHRleHRJbmRlbnQ6KHt0aGVtZTpyfSk9Pih7Li4ucigic3BhY2luZyIpfSksdGV4dE9wYWNpdHk6KHt0aGVtZTpyfSk9PnIoIm9wYWNpdHkiKSx0ZXh0VW5kZXJsaW5lT2Zmc2V0OnthdXRvOiJhdXRvIiwwOiIwcHgiLDE6IjFweCIsMjoiMnB4Iiw0OiI0cHgiLDg6IjhweCJ9LHRyYW5zZm9ybU9yaWdpbjp7Y2VudGVyOiJjZW50ZXIiLHRvcDoidG9wIiwidG9wLXJpZ2h0IjoidG9wIHJpZ2h0IixyaWdodDoicmlnaHQiLCJib3R0b20tcmlnaHQiOiJib3R0b20gcmlnaHQiLGJvdHRvbToiYm90dG9tIiwiYm90dG9tLWxlZnQiOiJib3R0b20gbGVmdCIsbGVmdDoibGVmdCIsInRvcC1sZWZ0IjoidG9wIGxlZnQifSx0cmFuc2l0aW9uRGVsYXk6ezA6IjBzIiw3NToiNzVtcyIsMTAwOiIxMDBtcyIsMTUwOiIxNTBtcyIsMjAwOiIyMDBtcyIsMzAwOiIzMDBtcyIsNTAwOiI1MDBtcyIsNzAwOiI3MDBtcyIsMWUzOiIxMDAwbXMifSx0cmFuc2l0aW9uRHVyYXRpb246e0RFRkFVTFQ6IjE1MG1zIiwwOiIwcyIsNzU6Ijc1bXMiLDEwMDoiMTAwbXMiLDE1MDoiMTUwbXMiLDIwMDoiMjAwbXMiLDMwMDoiMzAwbXMiLDUwMDoiNTAwbXMiLDcwMDoiNzAwbXMiLDFlMzoiMTAwMG1zIn0sdHJhbnNpdGlvblByb3BlcnR5Ontub25lOiJub25lIixhbGw6ImFsbCIsREVGQVVMVDoiY29sb3IsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvciwgdGV4dC1kZWNvcmF0aW9uLWNvbG9yLCBmaWxsLCBzdHJva2UsIG9wYWNpdHksIGJveC1zaGFkb3csIHRyYW5zZm9ybSwgZmlsdGVyLCBiYWNrZHJvcC1maWx0ZXIiLGNvbG9yczoiY29sb3IsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvciwgdGV4dC1kZWNvcmF0aW9uLWNvbG9yLCBmaWxsLCBzdHJva2UiLG9wYWNpdHk6Im9wYWNpdHkiLHNoYWRvdzoiYm94LXNoYWRvdyIsdHJhbnNmb3JtOiJ0cmFuc2Zvcm0ifSx0cmFuc2l0aW9uVGltaW5nRnVuY3Rpb246e0RFRkFVTFQ6ImN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSkiLGxpbmVhcjoibGluZWFyIixpbjoiY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSkiLG91dDoiY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSkiLCJpbi1vdXQiOiJjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIn0sdHJhbnNsYXRlOih7dGhlbWU6cn0pPT4oey4uLnIoInNwYWNpbmciKSwiMS8yIjoiNTAlIiwiMS8zIjoiMzMuMzMzMzMzJSIsIjIvMyI6IjY2LjY2NjY2NyUiLCIxLzQiOiIyNSUiLCIyLzQiOiI1MCUiLCIzLzQiOiI3NSUiLGZ1bGw6IjEwMCUifSksc2l6ZTooe3RoZW1lOnJ9KT0+KHthdXRvOiJhdXRvIiwuLi5yKCJzcGFjaW5nIiksIjEvMiI6IjUwJSIsIjEvMyI6IjMzLjMzMzMzMyUiLCIyLzMiOiI2Ni42NjY2NjclIiwiMS80IjoiMjUlIiwiMi80IjoiNTAlIiwiMy80IjoiNzUlIiwiMS81IjoiMjAlIiwiMi81IjoiNDAlIiwiMy81IjoiNjAlIiwiNC81IjoiODAlIiwiMS82IjoiMTYuNjY2NjY3JSIsIjIvNiI6IjMzLjMzMzMzMyUiLCIzLzYiOiI1MCUiLCI0LzYiOiI2Ni42NjY2NjclIiwiNS82IjoiODMuMzMzMzMzJSIsIjEvMTIiOiI4LjMzMzMzMyUiLCIyLzEyIjoiMTYuNjY2NjY3JSIsIjMvMTIiOiIyNSUiLCI0LzEyIjoiMzMuMzMzMzMzJSIsIjUvMTIiOiI0MS42NjY2NjclIiwiNi8xMiI6IjUwJSIsIjcvMTIiOiI1OC4zMzMzMzMlIiwiOC8xMiI6IjY2LjY2NjY2NyUiLCI5LzEyIjoiNzUlIiwiMTAvMTIiOiI4My4zMzMzMzMlIiwiMTEvMTIiOiI5MS42NjY2NjclIixmdWxsOiIxMDAlIixtaW46Im1pbi1jb250ZW50IixtYXg6Im1heC1jb250ZW50IixmaXQ6ImZpdC1jb250ZW50In0pLHdpZHRoOih7dGhlbWU6cn0pPT4oe2F1dG86ImF1dG8iLC4uLnIoInNwYWNpbmciKSwiMS8yIjoiNTAlIiwiMS8zIjoiMzMuMzMzMzMzJSIsIjIvMyI6IjY2LjY2NjY2NyUiLCIxLzQiOiIyNSUiLCIyLzQiOiI1MCUiLCIzLzQiOiI3NSUiLCIxLzUiOiIyMCUiLCIyLzUiOiI0MCUiLCIzLzUiOiI2MCUiLCI0LzUiOiI4MCUiLCIxLzYiOiIxNi42NjY2NjclIiwiMi82IjoiMzMuMzMzMzMzJSIsIjMvNiI6IjUwJSIsIjQvNiI6IjY2LjY2NjY2NyUiLCI1LzYiOiI4My4zMzMzMzMlIiwiMS8xMiI6IjguMzMzMzMzJSIsIjIvMTIiOiIxNi42NjY2NjclIiwiMy8xMiI6IjI1JSIsIjQvMTIiOiIzMy4zMzMzMzMlIiwiNS8xMiI6IjQxLjY2NjY2NyUiLCI2LzEyIjoiNTAlIiwiNy8xMiI6IjU4LjMzMzMzMyUiLCI4LzEyIjoiNjYuNjY2NjY3JSIsIjkvMTIiOiI3NSUiLCIxMC8xMiI6IjgzLjMzMzMzMyUiLCIxMS8xMiI6IjkxLjY2NjY2NyUiLGZ1bGw6IjEwMCUiLHNjcmVlbjoiMTAwdnciLHN2dzoiMTAwc3Z3Iixsdnc6IjEwMGx2dyIsZHZ3OiIxMDBkdnciLG1pbjoibWluLWNvbnRlbnQiLG1heDoibWF4LWNvbnRlbnQiLGZpdDoiZml0LWNvbnRlbnQifSksd2lsbENoYW5nZTp7YXV0bzoiYXV0byIsc2Nyb2xsOiJzY3JvbGwtcG9zaXRpb24iLGNvbnRlbnRzOiJjb250ZW50cyIsdHJhbnNmb3JtOiJ0cmFuc2Zvcm0ifSx6SW5kZXg6e2F1dG86ImF1dG8iLDA6IjAiLDEwOiIxMCIsMjA6IjIwIiwzMDoiMzAiLDQwOiI0MCIsNTA6IjUwIn19LHBsdWdpbnM6W119fSk7ZnVuY3Rpb24gbm4ocil7bGV0IGU9KHI/LnByZXNldHM/P1tpYy5kZWZhdWx0XSkuc2xpY2UoKS5yZXZlcnNlKCkuZmxhdE1hcChuPT5ubihuIGluc3RhbmNlb2YgRnVuY3Rpb24/bigpOm4pKSx0PXtyZXNwZWN0RGVmYXVsdFJpbmdDb2xvck9wYWNpdHk6e3RoZW1lOntyaW5nQ29sb3I6KHt0aGVtZTpufSk9Pih7REVGQVVMVDoiIzNiODJmNjdmIiwuLi5uKCJjb2xvcnMiKX0pfX0sZGlzYWJsZUNvbG9yT3BhY2l0eVV0aWxpdGllc0J5RGVmYXVsdDp7Y29yZVBsdWdpbnM6e2JhY2tncm91bmRPcGFjaXR5OiExLGJvcmRlck9wYWNpdHk6ITEsZGl2aWRlT3BhY2l0eTohMSxwbGFjZWhvbGRlck9wYWNpdHk6ITEscmluZ09wYWNpdHk6ITEsdGV4dE9wYWNpdHk6ITF9fX0saT1PYmplY3Qua2V5cyh0KS5maWx0ZXIobj0+d2UocixuKSkubWFwKG49PnRbbl0pO3JldHVybltyLC4uLmksLi4uZV19dmFyIGljLG5jPVAoKCk9Pnt1KCk7aWM9cGUocm4oKSk7Y3QoKX0pO3ZhciBzYz17fTtHZShzYyx7ZGVmYXVsdDooKT0+enJ9KTtmdW5jdGlvbiB6ciguLi5yKXtsZXRbLC4uLmVdPW5uKHJbMF0pO3JldHVybiBuYShbLi4uciwuLi5lXSl9dmFyIHNhPVAoKCk9Pnt1KCk7dGMoKTtuYygpfSk7dmFyIFVyPXt9O0dlKFVyLHtkZWZhdWx0OigpPT5tZX0pO3ZhciBtZSxldD1QKCgpPT57dSgpO21lPXtyZXNvbHZlOnI9PnIsZXh0bmFtZTpyPT4iLiIrci5zcGxpdCgiLiIpLnBvcCgpfX0pO2Z1bmN0aW9uIHNuKHIpe3JldHVybiB0eXBlb2Ygcj09Im9iamVjdCImJnIhPT1udWxsfWZ1bmN0aW9uIGJ4KHIpe3JldHVybiBPYmplY3Qua2V5cyhyKS5sZW5ndGg9PT0wfWZ1bmN0aW9uIGFjKHIpe3JldHVybiB0eXBlb2Ygcj09InN0cmluZyJ8fHIgaW5zdGFuY2VvZiBTdHJpbmd9ZnVuY3Rpb24gYWEocil7cmV0dXJuIHNuKHIpJiZyLmNvbmZpZz09PXZvaWQgMCYmIWJ4KHIpP251bGw6c24ocikmJnIuY29uZmlnIT09dm9pZCAwJiZhYyhyLmNvbmZpZyk/bWUucmVzb2x2ZShyLmNvbmZpZyk6c24ocikmJnIuY29uZmlnIT09dm9pZCAwJiZzbihyLmNvbmZpZyk/bnVsbDphYyhyKT9tZS5yZXNvbHZlKHIpOnd4KCl9ZnVuY3Rpb24gd3goKXtmb3IobGV0IHIgb2YgeXgpdHJ5e2xldCBlPW1lLnJlc29sdmUocik7cmV0dXJuIGJlLmFjY2Vzc1N5bmMoZSksZX1jYXRjaChlKXt9cmV0dXJuIG51bGx9dmFyIHl4LG9jPVAoKCk9Pnt1KCk7ZnQoKTtldCgpO3l4PVsiLi90YWlsd2luZC5jb25maWcuanMiLCIuL3RhaWx3aW5kLmNvbmZpZy5janMiLCIuL3RhaWx3aW5kLmNvbmZpZy5tanMiLCIuL3RhaWx3aW5kLmNvbmZpZy50cyIsIi4vdGFpbHdpbmQuY29uZmlnLmN0cyIsIi4vdGFpbHdpbmQuY29uZmlnLm10cyJdfSk7dmFyIGxjPXt9O0dlKGxjLHtkZWZhdWx0OigpPT5vYX0pO3ZhciBvYSxsYT1QKCgpPT57dSgpO29hPXtwYXJzZTpyPT4oe2hyZWY6cn0pfX0pO3ZhciB1YT14KCgpPT57dSgpfSk7dmFyIGFuPXgoKHYzLGNjKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIHVjPShRaSgpLEFmKSxmYz11YSgpLEp0PWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoZSx0LGksbixzLGEpe3N1cGVyKGUpO3RoaXMubmFtZT0iQ3NzU3ludGF4RXJyb3IiLHRoaXMucmVhc29uPWUscyYmKHRoaXMuZmlsZT1zKSxuJiYodGhpcy5zb3VyY2U9biksYSYmKHRoaXMucGx1Z2luPWEpLHR5cGVvZiB0IT0idW5kZWZpbmVkIiYmdHlwZW9mIGkhPSJ1bmRlZmluZWQiJiYodHlwZW9mIHQ9PSJudW1iZXIiPyh0aGlzLmxpbmU9dCx0aGlzLmNvbHVtbj1pKToodGhpcy5saW5lPXQubGluZSx0aGlzLmNvbHVtbj10LmNvbHVtbix0aGlzLmVuZExpbmU9aS5saW5lLHRoaXMuZW5kQ29sdW1uPWkuY29sdW1uKSksdGhpcy5zZXRNZXNzYWdlKCksRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UmJkVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsSnQpfXNldE1lc3NhZ2UoKXt0aGlzLm1lc3NhZ2U9dGhpcy5wbHVnaW4/dGhpcy5wbHVnaW4rIjogIjoiIix0aGlzLm1lc3NhZ2UrPXRoaXMuZmlsZT90aGlzLmZpbGU6Ijxjc3MgaW5wdXQ+Iix0eXBlb2YgdGhpcy5saW5lIT0idW5kZWZpbmVkIiYmKHRoaXMubWVzc2FnZSs9IjoiK3RoaXMubGluZSsiOiIrdGhpcy5jb2x1bW4pLHRoaXMubWVzc2FnZSs9IjogIit0aGlzLnJlYXNvbn1zaG93U291cmNlQ29kZShlKXtpZighdGhpcy5zb3VyY2UpcmV0dXJuIiI7bGV0IHQ9dGhpcy5zb3VyY2U7ZT09bnVsbCYmKGU9dWMuaXNDb2xvclN1cHBvcnRlZCk7bGV0IGk9Zj0+ZixuPWY9PmYscz1mPT5mO2lmKGUpe2xldHtib2xkOmYsZ3JheTpkLHJlZDpwfT11Yy5jcmVhdGVDb2xvcnMoITApO249aD0+ZihwKGgpKSxpPWg9PmQoaCksZmMmJihzPWg9PmZjKGgpKX1sZXQgYT10LnNwbGl0KC9ccj9cbi8pLG89TWF0aC5tYXgodGhpcy5saW5lLTMsMCksbD1NYXRoLm1pbih0aGlzLmxpbmUrMixhLmxlbmd0aCksYz1TdHJpbmcobCkubGVuZ3RoO3JldHVybiBhLnNsaWNlKG8sbCkubWFwKChmLGQpPT57bGV0IHA9bysxK2QsaD0iICIrKCIgIitwKS5zbGljZSgtYykrIiB8ICI7aWYocD09PXRoaXMubGluZSl7aWYoZi5sZW5ndGg+MTYwKXtsZXQgdj0yMCx5PU1hdGgubWF4KDAsdGhpcy5jb2x1bW4tdiksdz1NYXRoLm1heCh0aGlzLmNvbHVtbit2LHRoaXMuZW5kQ29sdW1uK3YpLGs9Zi5zbGljZSh5LHcpLFM9aShoLnJlcGxhY2UoL1xkL2csIiAiKSkrZi5zbGljZSgwLE1hdGgubWluKHRoaXMuY29sdW1uLTEsdi0xKSkucmVwbGFjZSgvW15cdF0vZywiICIpO3JldHVybiBuKCI+IikraShoKStzKGspK2AKIGArUytuKCJeIil9bGV0IGI9aShoLnJlcGxhY2UoL1xkL2csIiAiKSkrZi5zbGljZSgwLHRoaXMuY29sdW1uLTEpLnJlcGxhY2UoL1teXHRdL2csIiAiKTtyZXR1cm4gbigiPiIpK2koaCkrcyhmKStgCiBgK2IrbigiXiIpfXJldHVybiIgIitpKGgpK3MoZil9KS5qb2luKGAKYCl9dG9TdHJpbmcoKXtsZXQgZT10aGlzLnNob3dTb3VyY2VDb2RlKCk7cmV0dXJuIGUmJihlPWAKCmArZStgCmApLHRoaXMubmFtZSsiOiAiK3RoaXMubWVzc2FnZStlfX07Y2MuZXhwb3J0cz1KdDtKdC5kZWZhdWx0PUp0fSk7dmFyIGZhPXgoKHgzLGRjKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIHBjPXthZnRlcjpgCmAsYmVmb3JlQ2xvc2U6YApgLGJlZm9yZUNvbW1lbnQ6YApgLGJlZm9yZURlY2w6YApgLGJlZm9yZU9wZW46IiAiLGJlZm9yZVJ1bGU6YApgLGNvbG9uOiI6ICIsY29tbWVudExlZnQ6IiAiLGNvbW1lbnRSaWdodDoiICIsZW1wdHlCb2R5OiIiLGluZGVudDoiICAgICIsc2VtaWNvbG9uOiExfTtmdW5jdGlvbiB2eChyKXtyZXR1cm4gclswXS50b1VwcGVyQ2FzZSgpK3Iuc2xpY2UoMSl9dmFyIG9uPWNsYXNze2NvbnN0cnVjdG9yKGUpe3RoaXMuYnVpbGRlcj1lfWF0cnVsZShlLHQpe2xldCBpPSJAIitlLm5hbWUsbj1lLnBhcmFtcz90aGlzLnJhd1ZhbHVlKGUsInBhcmFtcyIpOiIiO2lmKHR5cGVvZiBlLnJhd3MuYWZ0ZXJOYW1lIT0idW5kZWZpbmVkIj9pKz1lLnJhd3MuYWZ0ZXJOYW1lOm4mJihpKz0iICIpLGUubm9kZXMpdGhpcy5ibG9jayhlLGkrbik7ZWxzZXtsZXQgcz0oZS5yYXdzLmJldHdlZW58fCIiKSsodD8iOyI6IiIpO3RoaXMuYnVpbGRlcihpK24rcyxlKX19YmVmb3JlQWZ0ZXIoZSx0KXtsZXQgaTtlLnR5cGU9PT0iZGVjbCI/aT10aGlzLnJhdyhlLG51bGwsImJlZm9yZURlY2wiKTplLnR5cGU9PT0iY29tbWVudCI/aT10aGlzLnJhdyhlLG51bGwsImJlZm9yZUNvbW1lbnQiKTp0PT09ImJlZm9yZSI/aT10aGlzLnJhdyhlLG51bGwsImJlZm9yZVJ1bGUiKTppPXRoaXMucmF3KGUsbnVsbCwiYmVmb3JlQ2xvc2UiKTtsZXQgbj1lLnBhcmVudCxzPTA7Zm9yKDtuJiZuLnR5cGUhPT0icm9vdCI7KXMrPTEsbj1uLnBhcmVudDtpZihpLmluY2x1ZGVzKGAKYCkpe2xldCBhPXRoaXMucmF3KGUsbnVsbCwiaW5kZW50Iik7aWYoYS5sZW5ndGgpZm9yKGxldCBvPTA7bzxzO28rKylpKz1hfXJldHVybiBpfWJsb2NrKGUsdCl7bGV0IGk9dGhpcy5yYXcoZSwiYmV0d2VlbiIsImJlZm9yZU9wZW4iKTt0aGlzLmJ1aWxkZXIodCtpKyJ7IixlLCJzdGFydCIpO2xldCBuO2Uubm9kZXMmJmUubm9kZXMubGVuZ3RoPyh0aGlzLmJvZHkoZSksbj10aGlzLnJhdyhlLCJhZnRlciIpKTpuPXRoaXMucmF3KGUsImFmdGVyIiwiZW1wdHlCb2R5IiksbiYmdGhpcy5idWlsZGVyKG4pLHRoaXMuYnVpbGRlcigifSIsZSwiZW5kIil9Ym9keShlKXtsZXQgdD1lLm5vZGVzLmxlbmd0aC0xO2Zvcig7dD4wJiZlLm5vZGVzW3RdLnR5cGU9PT0iY29tbWVudCI7KXQtPTE7bGV0IGk9dGhpcy5yYXcoZSwic2VtaWNvbG9uIik7Zm9yKGxldCBuPTA7bjxlLm5vZGVzLmxlbmd0aDtuKyspe2xldCBzPWUubm9kZXNbbl0sYT10aGlzLnJhdyhzLCJiZWZvcmUiKTthJiZ0aGlzLmJ1aWxkZXIoYSksdGhpcy5zdHJpbmdpZnkocyx0IT09bnx8aSl9fWNvbW1lbnQoZSl7bGV0IHQ9dGhpcy5yYXcoZSwibGVmdCIsImNvbW1lbnRMZWZ0IiksaT10aGlzLnJhdyhlLCJyaWdodCIsImNvbW1lbnRSaWdodCIpO3RoaXMuYnVpbGRlcigiLyoiK3QrZS50ZXh0K2krIiovIixlKX1kZWNsKGUsdCl7bGV0IGk9dGhpcy5yYXcoZSwiYmV0d2VlbiIsImNvbG9uIiksbj1lLnByb3AraSt0aGlzLnJhd1ZhbHVlKGUsInZhbHVlIik7ZS5pbXBvcnRhbnQmJihuKz1lLnJhd3MuaW1wb3J0YW50fHwiICFpbXBvcnRhbnQiKSx0JiYobis9IjsiKSx0aGlzLmJ1aWxkZXIobixlKX1kb2N1bWVudChlKXt0aGlzLmJvZHkoZSl9cmF3KGUsdCxpKXtsZXQgbjtpZihpfHwoaT10KSx0JiYobj1lLnJhd3NbdF0sdHlwZW9mIG4hPSJ1bmRlZmluZWQiKSlyZXR1cm4gbjtsZXQgcz1lLnBhcmVudDtpZihpPT09ImJlZm9yZSImJighc3x8cy50eXBlPT09InJvb3QiJiZzLmZpcnN0PT09ZXx8cyYmcy50eXBlPT09ImRvY3VtZW50IikpcmV0dXJuIiI7aWYoIXMpcmV0dXJuIHBjW2ldO2xldCBhPWUucm9vdCgpO2lmKGEucmF3Q2FjaGV8fChhLnJhd0NhY2hlPXt9KSx0eXBlb2YgYS5yYXdDYWNoZVtpXSE9InVuZGVmaW5lZCIpcmV0dXJuIGEucmF3Q2FjaGVbaV07aWYoaT09PSJiZWZvcmUifHxpPT09ImFmdGVyIilyZXR1cm4gdGhpcy5iZWZvcmVBZnRlcihlLGkpO3tsZXQgbz0icmF3Iit2eChpKTt0aGlzW29dP249dGhpc1tvXShhLGUpOmEud2FsayhsPT57aWYobj1sLnJhd3NbdF0sdHlwZW9mIG4hPSJ1bmRlZmluZWQiKXJldHVybiExfSl9cmV0dXJuIHR5cGVvZiBuPT0idW5kZWZpbmVkIiYmKG49cGNbaV0pLGEucmF3Q2FjaGVbaV09bixufXJhd0JlZm9yZUNsb3NlKGUpe2xldCB0O3JldHVybiBlLndhbGsoaT0+e2lmKGkubm9kZXMmJmkubm9kZXMubGVuZ3RoPjAmJnR5cGVvZiBpLnJhd3MuYWZ0ZXIhPSJ1bmRlZmluZWQiKXJldHVybiB0PWkucmF3cy5hZnRlcix0LmluY2x1ZGVzKGAKYCkmJih0PXQucmVwbGFjZSgvW15cbl0rJC8sIiIpKSwhMX0pLHQmJih0PXQucmVwbGFjZSgvXFMvZywiIikpLHR9cmF3QmVmb3JlQ29tbWVudChlLHQpe2xldCBpO3JldHVybiBlLndhbGtDb21tZW50cyhuPT57aWYodHlwZW9mIG4ucmF3cy5iZWZvcmUhPSJ1bmRlZmluZWQiKXJldHVybiBpPW4ucmF3cy5iZWZvcmUsaS5pbmNsdWRlcyhgCmApJiYoaT1pLnJlcGxhY2UoL1teXG5dKyQvLCIiKSksITF9KSx0eXBlb2YgaT09InVuZGVmaW5lZCI/aT10aGlzLnJhdyh0LG51bGwsImJlZm9yZURlY2wiKTppJiYoaT1pLnJlcGxhY2UoL1xTL2csIiIpKSxpfXJhd0JlZm9yZURlY2woZSx0KXtsZXQgaTtyZXR1cm4gZS53YWxrRGVjbHMobj0+e2lmKHR5cGVvZiBuLnJhd3MuYmVmb3JlIT0idW5kZWZpbmVkIilyZXR1cm4gaT1uLnJhd3MuYmVmb3JlLGkuaW5jbHVkZXMoYApgKSYmKGk9aS5yZXBsYWNlKC9bXlxuXSskLywiIikpLCExfSksdHlwZW9mIGk9PSJ1bmRlZmluZWQiP2k9dGhpcy5yYXcodCxudWxsLCJiZWZvcmVSdWxlIik6aSYmKGk9aS5yZXBsYWNlKC9cUy9nLCIiKSksaX1yYXdCZWZvcmVPcGVuKGUpe2xldCB0O3JldHVybiBlLndhbGsoaT0+e2lmKGkudHlwZSE9PSJkZWNsIiYmKHQ9aS5yYXdzLmJldHdlZW4sdHlwZW9mIHQhPSJ1bmRlZmluZWQiKSlyZXR1cm4hMX0pLHR9cmF3QmVmb3JlUnVsZShlKXtsZXQgdDtyZXR1cm4gZS53YWxrKGk9PntpZihpLm5vZGVzJiYoaS5wYXJlbnQhPT1lfHxlLmZpcnN0IT09aSkmJnR5cGVvZiBpLnJhd3MuYmVmb3JlIT0idW5kZWZpbmVkIilyZXR1cm4gdD1pLnJhd3MuYmVmb3JlLHQuaW5jbHVkZXMoYApgKSYmKHQ9dC5yZXBsYWNlKC9bXlxuXSskLywiIikpLCExfSksdCYmKHQ9dC5yZXBsYWNlKC9cUy9nLCIiKSksdH1yYXdDb2xvbihlKXtsZXQgdDtyZXR1cm4gZS53YWxrRGVjbHMoaT0+e2lmKHR5cGVvZiBpLnJhd3MuYmV0d2VlbiE9InVuZGVmaW5lZCIpcmV0dXJuIHQ9aS5yYXdzLmJldHdlZW4ucmVwbGFjZSgvW15cczpdL2csIiIpLCExfSksdH1yYXdFbXB0eUJvZHkoZSl7bGV0IHQ7cmV0dXJuIGUud2FsayhpPT57aWYoaS5ub2RlcyYmaS5ub2Rlcy5sZW5ndGg9PT0wJiYodD1pLnJhd3MuYWZ0ZXIsdHlwZW9mIHQhPSJ1bmRlZmluZWQiKSlyZXR1cm4hMX0pLHR9cmF3SW5kZW50KGUpe2lmKGUucmF3cy5pbmRlbnQpcmV0dXJuIGUucmF3cy5pbmRlbnQ7bGV0IHQ7cmV0dXJuIGUud2FsayhpPT57bGV0IG49aS5wYXJlbnQ7aWYobiYmbiE9PWUmJm4ucGFyZW50JiZuLnBhcmVudD09PWUmJnR5cGVvZiBpLnJhd3MuYmVmb3JlIT0idW5kZWZpbmVkIil7bGV0IHM9aS5yYXdzLmJlZm9yZS5zcGxpdChgCmApO3JldHVybiB0PXNbcy5sZW5ndGgtMV0sdD10LnJlcGxhY2UoL1xTL2csIiIpLCExfX0pLHR9cmF3U2VtaWNvbG9uKGUpe2xldCB0O3JldHVybiBlLndhbGsoaT0+e2lmKGkubm9kZXMmJmkubm9kZXMubGVuZ3RoJiZpLmxhc3QudHlwZT09PSJkZWNsIiYmKHQ9aS5yYXdzLnNlbWljb2xvbix0eXBlb2YgdCE9InVuZGVmaW5lZCIpKXJldHVybiExfSksdH1yYXdWYWx1ZShlLHQpe2xldCBpPWVbdF0sbj1lLnJhd3NbdF07cmV0dXJuIG4mJm4udmFsdWU9PT1pP24ucmF3Oml9cm9vdChlKXt0aGlzLmJvZHkoZSksZS5yYXdzLmFmdGVyJiZ0aGlzLmJ1aWxkZXIoZS5yYXdzLmFmdGVyKX1ydWxlKGUpe3RoaXMuYmxvY2soZSx0aGlzLnJhd1ZhbHVlKGUsInNlbGVjdG9yIikpLGUucmF3cy5vd25TZW1pY29sb24mJnRoaXMuYnVpbGRlcihlLnJhd3Mub3duU2VtaWNvbG9uLGUsImVuZCIpfXN0cmluZ2lmeShlLHQpe2lmKCF0aGlzW2UudHlwZV0pdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIEFTVCBub2RlIHR5cGUgIitlLnR5cGUrIi4gTWF5YmUgeW91IG5lZWQgdG8gY2hhbmdlIFBvc3RDU1Mgc3RyaW5naWZpZXIuIik7dGhpc1tlLnR5cGVdKGUsdCl9fTtkYy5leHBvcnRzPW9uO29uLmRlZmF1bHQ9b259KTt2YXIgVnI9eCgoazMsaGMpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgeHg9ZmEoKTtmdW5jdGlvbiBjYShyLGUpe25ldyB4eChlKS5zdHJpbmdpZnkocil9aGMuZXhwb3J0cz1jYTtjYS5kZWZhdWx0PWNhfSk7dmFyIGxuPXgoKFMzLHBhKT0+e3UoKTsidXNlIHN0cmljdCI7cGEuZXhwb3J0cy5pc0NsZWFuPVN5bWJvbCgiaXNDbGVhbiIpO3BhLmV4cG9ydHMubXk9U3ltYm9sKCJteSIpfSk7dmFyIEdyPXgoKEEzLG1jKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIGt4PWFuKCksU3g9ZmEoKSxBeD1WcigpLHtpc0NsZWFuOkhyLG15OkN4fT1sbigpO2Z1bmN0aW9uIGRhKHIsZSl7bGV0IHQ9bmV3IHIuY29uc3RydWN0b3I7Zm9yKGxldCBpIGluIHIpe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixpKXx8aT09PSJwcm94eUNhY2hlIiljb250aW51ZTtsZXQgbj1yW2ldLHM9dHlwZW9mIG47aT09PSJwYXJlbnQiJiZzPT09Im9iamVjdCI/ZSYmKHRbaV09ZSk6aT09PSJzb3VyY2UiP3RbaV09bjpBcnJheS5pc0FycmF5KG4pP3RbaV09bi5tYXAoYT0+ZGEoYSx0KSk6KHM9PT0ib2JqZWN0IiYmbiE9PW51bGwmJihuPWRhKG4pKSx0W2ldPW4pfXJldHVybiB0fWZ1bmN0aW9uIFdyKHIsZSl7aWYoZSYmdHlwZW9mIGUub2Zmc2V0IT0idW5kZWZpbmVkIilyZXR1cm4gZS5vZmZzZXQ7bGV0IHQ9MSxpPTEsbj0wO2ZvcihsZXQgcz0wO3M8ci5sZW5ndGg7cysrKXtpZihpPT09ZS5saW5lJiZ0PT09ZS5jb2x1bW4pe249czticmVha31yW3NdPT09YApgPyh0PTEsaSs9MSk6dCs9MX1yZXR1cm4gbn12YXIgdW49Y2xhc3N7Y29uc3RydWN0b3IoZT17fSl7dGhpcy5yYXdzPXt9LHRoaXNbSHJdPSExLHRoaXNbQ3hdPSEwO2ZvcihsZXQgdCBpbiBlKWlmKHQ9PT0ibm9kZXMiKXt0aGlzLm5vZGVzPVtdO2ZvcihsZXQgaSBvZiBlW3RdKXR5cGVvZiBpLmNsb25lPT0iZnVuY3Rpb24iP3RoaXMuYXBwZW5kKGkuY2xvbmUoKSk6dGhpcy5hcHBlbmQoaSl9ZWxzZSB0aGlzW3RdPWVbdF19YWRkVG9FcnJvcihlKXtpZihlLnBvc3Rjc3NOb2RlPXRoaXMsZS5zdGFjayYmdGhpcy5zb3VyY2UmJi9cblxzezR9YXQgLy50ZXN0KGUuc3RhY2spKXtsZXQgdD10aGlzLnNvdXJjZTtlLnN0YWNrPWUuc3RhY2sucmVwbGFjZSgvXG5cc3s0fWF0IC8sYCQmJHt0LmlucHV0LmZyb219OiR7dC5zdGFydC5saW5lfToke3Quc3RhcnQuY29sdW1ufSQmYCl9cmV0dXJuIGV9YWZ0ZXIoZSl7cmV0dXJuIHRoaXMucGFyZW50Lmluc2VydEFmdGVyKHRoaXMsZSksdGhpc31hc3NpZ24oZT17fSl7Zm9yKGxldCB0IGluIGUpdGhpc1t0XT1lW3RdO3JldHVybiB0aGlzfWJlZm9yZShlKXtyZXR1cm4gdGhpcy5wYXJlbnQuaW5zZXJ0QmVmb3JlKHRoaXMsZSksdGhpc31jbGVhblJhd3MoZSl7ZGVsZXRlIHRoaXMucmF3cy5iZWZvcmUsZGVsZXRlIHRoaXMucmF3cy5hZnRlcixlfHxkZWxldGUgdGhpcy5yYXdzLmJldHdlZW59Y2xvbmUoZT17fSl7bGV0IHQ9ZGEodGhpcyk7Zm9yKGxldCBpIGluIGUpdFtpXT1lW2ldO3JldHVybiB0fWNsb25lQWZ0ZXIoZT17fSl7bGV0IHQ9dGhpcy5jbG9uZShlKTtyZXR1cm4gdGhpcy5wYXJlbnQuaW5zZXJ0QWZ0ZXIodGhpcyx0KSx0fWNsb25lQmVmb3JlKGU9e30pe2xldCB0PXRoaXMuY2xvbmUoZSk7cmV0dXJuIHRoaXMucGFyZW50Lmluc2VydEJlZm9yZSh0aGlzLHQpLHR9ZXJyb3IoZSx0PXt9KXtpZih0aGlzLnNvdXJjZSl7bGV0e2VuZDppLHN0YXJ0Om59PXRoaXMucmFuZ2VCeSh0KTtyZXR1cm4gdGhpcy5zb3VyY2UuaW5wdXQuZXJyb3IoZSx7Y29sdW1uOm4uY29sdW1uLGxpbmU6bi5saW5lfSx7Y29sdW1uOmkuY29sdW1uLGxpbmU6aS5saW5lfSx0KX1yZXR1cm4gbmV3IGt4KGUpfWdldFByb3h5UHJvY2Vzc29yKCl7cmV0dXJue2dldChlLHQpe3JldHVybiB0PT09InByb3h5T2YiP2U6dD09PSJyb290Ij8oKT0+ZS5yb290KCkudG9Qcm94eSgpOmVbdF19LHNldChlLHQsaSl7cmV0dXJuIGVbdF09PT1pfHwoZVt0XT1pLCh0PT09InByb3AifHx0PT09InZhbHVlInx8dD09PSJuYW1lInx8dD09PSJwYXJhbXMifHx0PT09ImltcG9ydGFudCJ8fHQ9PT0idGV4dCIpJiZlLm1hcmtEaXJ0eSgpKSwhMH19fW1hcmtDbGVhbigpe3RoaXNbSHJdPSEwfW1hcmtEaXJ0eSgpe2lmKHRoaXNbSHJdKXt0aGlzW0hyXT0hMTtsZXQgZT10aGlzO2Zvcig7ZT1lLnBhcmVudDspZVtIcl09ITF9fW5leHQoKXtpZighdGhpcy5wYXJlbnQpcmV0dXJuO2xldCBlPXRoaXMucGFyZW50LmluZGV4KHRoaXMpO3JldHVybiB0aGlzLnBhcmVudC5ub2Rlc1tlKzFdfXBvc2l0aW9uQnkoZSl7bGV0IHQ9dGhpcy5zb3VyY2Uuc3RhcnQ7aWYoZS5pbmRleCl0PXRoaXMucG9zaXRpb25JbnNpZGUoZS5pbmRleCk7ZWxzZSBpZihlLndvcmQpe2xldCBuPXRoaXMuc291cmNlLmlucHV0LmNzcy5zbGljZShXcih0aGlzLnNvdXJjZS5pbnB1dC5jc3MsdGhpcy5zb3VyY2Uuc3RhcnQpLFdyKHRoaXMuc291cmNlLmlucHV0LmNzcyx0aGlzLnNvdXJjZS5lbmQpKS5pbmRleE9mKGUud29yZCk7biE9PS0xJiYodD10aGlzLnBvc2l0aW9uSW5zaWRlKG4pKX1yZXR1cm4gdH1wb3NpdGlvbkluc2lkZShlKXtsZXQgdD10aGlzLnNvdXJjZS5zdGFydC5jb2x1bW4saT10aGlzLnNvdXJjZS5zdGFydC5saW5lLG49V3IodGhpcy5zb3VyY2UuaW5wdXQuY3NzLHRoaXMuc291cmNlLnN0YXJ0KSxzPW4rZTtmb3IobGV0IGE9bjthPHM7YSsrKXRoaXMuc291cmNlLmlucHV0LmNzc1thXT09PWAKYD8odD0xLGkrPTEpOnQrPTE7cmV0dXJue2NvbHVtbjp0LGxpbmU6aX19cHJldigpe2lmKCF0aGlzLnBhcmVudClyZXR1cm47bGV0IGU9dGhpcy5wYXJlbnQuaW5kZXgodGhpcyk7cmV0dXJuIHRoaXMucGFyZW50Lm5vZGVzW2UtMV19cmFuZ2VCeShlKXtsZXQgdD17Y29sdW1uOnRoaXMuc291cmNlLnN0YXJ0LmNvbHVtbixsaW5lOnRoaXMuc291cmNlLnN0YXJ0LmxpbmV9LGk9dGhpcy5zb3VyY2UuZW5kP3tjb2x1bW46dGhpcy5zb3VyY2UuZW5kLmNvbHVtbisxLGxpbmU6dGhpcy5zb3VyY2UuZW5kLmxpbmV9Ontjb2x1bW46dC5jb2x1bW4rMSxsaW5lOnQubGluZX07aWYoZS53b3JkKXtsZXQgcz10aGlzLnNvdXJjZS5pbnB1dC5jc3Muc2xpY2UoV3IodGhpcy5zb3VyY2UuaW5wdXQuY3NzLHRoaXMuc291cmNlLnN0YXJ0KSxXcih0aGlzLnNvdXJjZS5pbnB1dC5jc3MsdGhpcy5zb3VyY2UuZW5kKSkuaW5kZXhPZihlLndvcmQpO3MhPT0tMSYmKHQ9dGhpcy5wb3NpdGlvbkluc2lkZShzKSxpPXRoaXMucG9zaXRpb25JbnNpZGUocytlLndvcmQubGVuZ3RoKSl9ZWxzZSBlLnN0YXJ0P3Q9e2NvbHVtbjplLnN0YXJ0LmNvbHVtbixsaW5lOmUuc3RhcnQubGluZX06ZS5pbmRleCYmKHQ9dGhpcy5wb3NpdGlvbkluc2lkZShlLmluZGV4KSksZS5lbmQ/aT17Y29sdW1uOmUuZW5kLmNvbHVtbixsaW5lOmUuZW5kLmxpbmV9OnR5cGVvZiBlLmVuZEluZGV4PT0ibnVtYmVyIj9pPXRoaXMucG9zaXRpb25JbnNpZGUoZS5lbmRJbmRleCk6ZS5pbmRleCYmKGk9dGhpcy5wb3NpdGlvbkluc2lkZShlLmluZGV4KzEpKTtyZXR1cm4oaS5saW5lPHQubGluZXx8aS5saW5lPT09dC5saW5lJiZpLmNvbHVtbjw9dC5jb2x1bW4pJiYoaT17Y29sdW1uOnQuY29sdW1uKzEsbGluZTp0LmxpbmV9KSx7ZW5kOmksc3RhcnQ6dH19cmF3KGUsdCl7cmV0dXJuIG5ldyBTeCgpLnJhdyh0aGlzLGUsdCl9cmVtb3ZlKCl7cmV0dXJuIHRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5yZW1vdmVDaGlsZCh0aGlzKSx0aGlzLnBhcmVudD12b2lkIDAsdGhpc31yZXBsYWNlV2l0aCguLi5lKXtpZih0aGlzLnBhcmVudCl7bGV0IHQ9dGhpcyxpPSExO2ZvcihsZXQgbiBvZiBlKW49PT10aGlzP2k9ITA6aT8odGhpcy5wYXJlbnQuaW5zZXJ0QWZ0ZXIodCxuKSx0PW4pOnRoaXMucGFyZW50Lmluc2VydEJlZm9yZSh0LG4pO2l8fHRoaXMucmVtb3ZlKCl9cmV0dXJuIHRoaXN9cm9vdCgpe2xldCBlPXRoaXM7Zm9yKDtlLnBhcmVudCYmZS5wYXJlbnQudHlwZSE9PSJkb2N1bWVudCI7KWU9ZS5wYXJlbnQ7cmV0dXJuIGV9dG9KU09OKGUsdCl7bGV0IGk9e30sbj10PT1udWxsO3Q9dHx8bmV3IE1hcDtsZXQgcz0wO2ZvcihsZXQgYSBpbiB0aGlzKXtpZighT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMsYSl8fGE9PT0icGFyZW50Inx8YT09PSJwcm94eUNhY2hlIiljb250aW51ZTtsZXQgbz10aGlzW2FdO2lmKEFycmF5LmlzQXJyYXkobykpaVthXT1vLm1hcChsPT50eXBlb2YgbD09Im9iamVjdCImJmwudG9KU09OP2wudG9KU09OKG51bGwsdCk6bCk7ZWxzZSBpZih0eXBlb2Ygbz09Im9iamVjdCImJm8udG9KU09OKWlbYV09by50b0pTT04obnVsbCx0KTtlbHNlIGlmKGE9PT0ic291cmNlIil7bGV0IGw9dC5nZXQoby5pbnB1dCk7bD09bnVsbCYmKGw9cyx0LnNldChvLmlucHV0LHMpLHMrKyksaVthXT17ZW5kOm8uZW5kLGlucHV0SWQ6bCxzdGFydDpvLnN0YXJ0fX1lbHNlIGlbYV09b31yZXR1cm4gbiYmKGkuaW5wdXRzPVsuLi50LmtleXMoKV0ubWFwKGE9PmEudG9KU09OKCkpKSxpfXRvUHJveHkoKXtyZXR1cm4gdGhpcy5wcm94eUNhY2hlfHwodGhpcy5wcm94eUNhY2hlPW5ldyBQcm94eSh0aGlzLHRoaXMuZ2V0UHJveHlQcm9jZXNzb3IoKSkpLHRoaXMucHJveHlDYWNoZX10b1N0cmluZyhlPUF4KXtlLnN0cmluZ2lmeSYmKGU9ZS5zdHJpbmdpZnkpO2xldCB0PSIiO3JldHVybiBlKHRoaXMsaT0+e3QrPWl9KSx0fXdhcm4oZSx0LGkpe2xldCBuPXtub2RlOnRoaXN9O2ZvcihsZXQgcyBpbiBpKW5bc109aVtzXTtyZXR1cm4gZS53YXJuKHQsbil9Z2V0IHByb3h5T2YoKXtyZXR1cm4gdGhpc319O21jLmV4cG9ydHM9dW47dW4uZGVmYXVsdD11bn0pO3ZhciBRcj14KChDMyxnYyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBfeD1HcigpLGZuPWNsYXNzIGV4dGVuZHMgX3h7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSk7dGhpcy50eXBlPSJjb21tZW50In19O2djLmV4cG9ydHM9Zm47Zm4uZGVmYXVsdD1mbn0pO3ZhciBZcj14KChfMyx5Yyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBFeD1HcigpLGNuPWNsYXNzIGV4dGVuZHMgRXh7Y29uc3RydWN0b3IoZSl7ZSYmdHlwZW9mIGUudmFsdWUhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgZS52YWx1ZSE9InN0cmluZyImJihlPXsuLi5lLHZhbHVlOlN0cmluZyhlLnZhbHVlKX0pO3N1cGVyKGUpO3RoaXMudHlwZT0iZGVjbCJ9Z2V0IHZhcmlhYmxlKCl7cmV0dXJuIHRoaXMucHJvcC5zdGFydHNXaXRoKCItLSIpfHx0aGlzLnByb3BbMF09PT0iJCJ9fTt5Yy5leHBvcnRzPWNuO2NuLmRlZmF1bHQ9Y259KTt2YXIgRXQ9eCgoRTMsX2MpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgYmM9UXIoKSx3Yz1ZcigpLE94PUdyKCkse2lzQ2xlYW46dmMsbXk6eGN9PWxuKCksaGEsa2MsU2MsbWE7ZnVuY3Rpb24gQWMocil7cmV0dXJuIHIubWFwKGU9PihlLm5vZGVzJiYoZS5ub2Rlcz1BYyhlLm5vZGVzKSksZGVsZXRlIGUuc291cmNlLGUpKX1mdW5jdGlvbiBDYyhyKXtpZihyW3ZjXT0hMSxyLnByb3h5T2Yubm9kZXMpZm9yKGxldCBlIG9mIHIucHJveHlPZi5ub2RlcylDYyhlKX12YXIgRmU9Y2xhc3MgZXh0ZW5kcyBPeHthcHBlbmQoLi4uZSl7Zm9yKGxldCB0IG9mIGUpe2xldCBpPXRoaXMubm9ybWFsaXplKHQsdGhpcy5sYXN0KTtmb3IobGV0IG4gb2YgaSl0aGlzLnByb3h5T2Yubm9kZXMucHVzaChuKX1yZXR1cm4gdGhpcy5tYXJrRGlydHkoKSx0aGlzfWNsZWFuUmF3cyhlKXtpZihzdXBlci5jbGVhblJhd3MoZSksdGhpcy5ub2Rlcylmb3IobGV0IHQgb2YgdGhpcy5ub2Rlcyl0LmNsZWFuUmF3cyhlKX1lYWNoKGUpe2lmKCF0aGlzLnByb3h5T2Yubm9kZXMpcmV0dXJuO2xldCB0PXRoaXMuZ2V0SXRlcmF0b3IoKSxpLG47Zm9yKDt0aGlzLmluZGV4ZXNbdF08dGhpcy5wcm94eU9mLm5vZGVzLmxlbmd0aCYmKGk9dGhpcy5pbmRleGVzW3RdLG49ZSh0aGlzLnByb3h5T2Yubm9kZXNbaV0saSksbiE9PSExKTspdGhpcy5pbmRleGVzW3RdKz0xO3JldHVybiBkZWxldGUgdGhpcy5pbmRleGVzW3RdLG59ZXZlcnkoZSl7cmV0dXJuIHRoaXMubm9kZXMuZXZlcnkoZSl9Z2V0SXRlcmF0b3IoKXt0aGlzLmxhc3RFYWNofHwodGhpcy5sYXN0RWFjaD0wKSx0aGlzLmluZGV4ZXN8fCh0aGlzLmluZGV4ZXM9e30pLHRoaXMubGFzdEVhY2grPTE7bGV0IGU9dGhpcy5sYXN0RWFjaDtyZXR1cm4gdGhpcy5pbmRleGVzW2VdPTAsZX1nZXRQcm94eVByb2Nlc3Nvcigpe3JldHVybntnZXQoZSx0KXtyZXR1cm4gdD09PSJwcm94eU9mIj9lOmVbdF0/dD09PSJlYWNoInx8dHlwZW9mIHQ9PSJzdHJpbmciJiZ0LnN0YXJ0c1dpdGgoIndhbGsiKT8oLi4uaSk9PmVbdF0oLi4uaS5tYXAobj0+dHlwZW9mIG49PSJmdW5jdGlvbiI/KHMsYSk9Pm4ocy50b1Byb3h5KCksYSk6bikpOnQ9PT0iZXZlcnkifHx0PT09InNvbWUiP2k9PmVbdF0oKG4sLi4ucyk9Pmkobi50b1Byb3h5KCksLi4ucykpOnQ9PT0icm9vdCI/KCk9PmUucm9vdCgpLnRvUHJveHkoKTp0PT09Im5vZGVzIj9lLm5vZGVzLm1hcChpPT5pLnRvUHJveHkoKSk6dD09PSJmaXJzdCJ8fHQ9PT0ibGFzdCI/ZVt0XS50b1Byb3h5KCk6ZVt0XTplW3RdfSxzZXQoZSx0LGkpe3JldHVybiBlW3RdPT09aXx8KGVbdF09aSwodD09PSJuYW1lInx8dD09PSJwYXJhbXMifHx0PT09InNlbGVjdG9yIikmJmUubWFya0RpcnR5KCkpLCEwfX19aW5kZXgoZSl7cmV0dXJuIHR5cGVvZiBlPT0ibnVtYmVyIj9lOihlLnByb3h5T2YmJihlPWUucHJveHlPZiksdGhpcy5wcm94eU9mLm5vZGVzLmluZGV4T2YoZSkpfWluc2VydEFmdGVyKGUsdCl7bGV0IGk9dGhpcy5pbmRleChlKSxuPXRoaXMubm9ybWFsaXplKHQsdGhpcy5wcm94eU9mLm5vZGVzW2ldKS5yZXZlcnNlKCk7aT10aGlzLmluZGV4KGUpO2ZvcihsZXQgYSBvZiBuKXRoaXMucHJveHlPZi5ub2Rlcy5zcGxpY2UoaSsxLDAsYSk7bGV0IHM7Zm9yKGxldCBhIGluIHRoaXMuaW5kZXhlcylzPXRoaXMuaW5kZXhlc1thXSxpPHMmJih0aGlzLmluZGV4ZXNbYV09cytuLmxlbmd0aCk7cmV0dXJuIHRoaXMubWFya0RpcnR5KCksdGhpc31pbnNlcnRCZWZvcmUoZSx0KXtsZXQgaT10aGlzLmluZGV4KGUpLG49aT09PTA/InByZXBlbmQiOiExLHM9dGhpcy5ub3JtYWxpemUodCx0aGlzLnByb3h5T2Yubm9kZXNbaV0sbikucmV2ZXJzZSgpO2k9dGhpcy5pbmRleChlKTtmb3IobGV0IG8gb2Ygcyl0aGlzLnByb3h5T2Yubm9kZXMuc3BsaWNlKGksMCxvKTtsZXQgYTtmb3IobGV0IG8gaW4gdGhpcy5pbmRleGVzKWE9dGhpcy5pbmRleGVzW29dLGk8PWEmJih0aGlzLmluZGV4ZXNbb109YStzLmxlbmd0aCk7cmV0dXJuIHRoaXMubWFya0RpcnR5KCksdGhpc31ub3JtYWxpemUoZSx0KXtpZih0eXBlb2YgZT09InN0cmluZyIpZT1BYyhrYyhlKS5ub2Rlcyk7ZWxzZSBpZih0eXBlb2YgZT09InVuZGVmaW5lZCIpZT1bXTtlbHNlIGlmKEFycmF5LmlzQXJyYXkoZSkpe2U9ZS5zbGljZSgwKTtmb3IobGV0IG4gb2YgZSluLnBhcmVudCYmbi5wYXJlbnQucmVtb3ZlQ2hpbGQobiwiaWdub3JlIil9ZWxzZSBpZihlLnR5cGU9PT0icm9vdCImJnRoaXMudHlwZSE9PSJkb2N1bWVudCIpe2U9ZS5ub2Rlcy5zbGljZSgwKTtmb3IobGV0IG4gb2YgZSluLnBhcmVudCYmbi5wYXJlbnQucmVtb3ZlQ2hpbGQobiwiaWdub3JlIil9ZWxzZSBpZihlLnR5cGUpZT1bZV07ZWxzZSBpZihlLnByb3Ape2lmKHR5cGVvZiBlLnZhbHVlPT0idW5kZWZpbmVkIil0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIGZpZWxkIGlzIG1pc3NlZCBpbiBub2RlIGNyZWF0aW9uIik7dHlwZW9mIGUudmFsdWUhPSJzdHJpbmciJiYoZS52YWx1ZT1TdHJpbmcoZS52YWx1ZSkpLGU9W25ldyB3YyhlKV19ZWxzZSBpZihlLnNlbGVjdG9yfHxlLnNlbGVjdG9ycyllPVtuZXcgbWEoZSldO2Vsc2UgaWYoZS5uYW1lKWU9W25ldyBoYShlKV07ZWxzZSBpZihlLnRleHQpZT1bbmV3IGJjKGUpXTtlbHNlIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBub2RlIHR5cGUgaW4gbm9kZSBjcmVhdGlvbiIpO3JldHVybiBlLm1hcChuPT4oblt4Y118fEZlLnJlYnVpbGQobiksbj1uLnByb3h5T2Ysbi5wYXJlbnQmJm4ucGFyZW50LnJlbW92ZUNoaWxkKG4pLG5bdmNdJiZDYyhuKSxuLnJhd3N8fChuLnJhd3M9e30pLHR5cGVvZiBuLnJhd3MuYmVmb3JlPT0idW5kZWZpbmVkIiYmdCYmdHlwZW9mIHQucmF3cy5iZWZvcmUhPSJ1bmRlZmluZWQiJiYobi5yYXdzLmJlZm9yZT10LnJhd3MuYmVmb3JlLnJlcGxhY2UoL1xTL2csIiIpKSxuLnBhcmVudD10aGlzLnByb3h5T2YsbikpfXByZXBlbmQoLi4uZSl7ZT1lLnJldmVyc2UoKTtmb3IobGV0IHQgb2YgZSl7bGV0IGk9dGhpcy5ub3JtYWxpemUodCx0aGlzLmZpcnN0LCJwcmVwZW5kIikucmV2ZXJzZSgpO2ZvcihsZXQgbiBvZiBpKXRoaXMucHJveHlPZi5ub2Rlcy51bnNoaWZ0KG4pO2ZvcihsZXQgbiBpbiB0aGlzLmluZGV4ZXMpdGhpcy5pbmRleGVzW25dPXRoaXMuaW5kZXhlc1tuXStpLmxlbmd0aH1yZXR1cm4gdGhpcy5tYXJrRGlydHkoKSx0aGlzfXB1c2goZSl7cmV0dXJuIGUucGFyZW50PXRoaXMsdGhpcy5wcm94eU9mLm5vZGVzLnB1c2goZSksdGhpc31yZW1vdmVBbGwoKXtmb3IobGV0IGUgb2YgdGhpcy5wcm94eU9mLm5vZGVzKWUucGFyZW50PXZvaWQgMDtyZXR1cm4gdGhpcy5wcm94eU9mLm5vZGVzPVtdLHRoaXMubWFya0RpcnR5KCksdGhpc31yZW1vdmVDaGlsZChlKXtlPXRoaXMuaW5kZXgoZSksdGhpcy5wcm94eU9mLm5vZGVzW2VdLnBhcmVudD12b2lkIDAsdGhpcy5wcm94eU9mLm5vZGVzLnNwbGljZShlLDEpO2xldCB0O2ZvcihsZXQgaSBpbiB0aGlzLmluZGV4ZXMpdD10aGlzLmluZGV4ZXNbaV0sdD49ZSYmKHRoaXMuaW5kZXhlc1tpXT10LTEpO3JldHVybiB0aGlzLm1hcmtEaXJ0eSgpLHRoaXN9cmVwbGFjZVZhbHVlcyhlLHQsaSl7cmV0dXJuIGl8fChpPXQsdD17fSksdGhpcy53YWxrRGVjbHMobj0+e3QucHJvcHMmJiF0LnByb3BzLmluY2x1ZGVzKG4ucHJvcCl8fHQuZmFzdCYmIW4udmFsdWUuaW5jbHVkZXModC5mYXN0KXx8KG4udmFsdWU9bi52YWx1ZS5yZXBsYWNlKGUsaSkpfSksdGhpcy5tYXJrRGlydHkoKSx0aGlzfXNvbWUoZSl7cmV0dXJuIHRoaXMubm9kZXMuc29tZShlKX13YWxrKGUpe3JldHVybiB0aGlzLmVhY2goKHQsaSk9PntsZXQgbjt0cnl7bj1lKHQsaSl9Y2F0Y2gocyl7dGhyb3cgdC5hZGRUb0Vycm9yKHMpfXJldHVybiBuIT09ITEmJnQud2FsayYmKG49dC53YWxrKGUpKSxufSl9d2Fsa0F0UnVsZXMoZSx0KXtyZXR1cm4gdD9lIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMud2FsaygoaSxuKT0+e2lmKGkudHlwZT09PSJhdHJ1bGUiJiZlLnRlc3QoaS5uYW1lKSlyZXR1cm4gdChpLG4pfSk6dGhpcy53YWxrKChpLG4pPT57aWYoaS50eXBlPT09ImF0cnVsZSImJmkubmFtZT09PWUpcmV0dXJuIHQoaSxuKX0pOih0PWUsdGhpcy53YWxrKChpLG4pPT57aWYoaS50eXBlPT09ImF0cnVsZSIpcmV0dXJuIHQoaSxuKX0pKX13YWxrQ29tbWVudHMoZSl7cmV0dXJuIHRoaXMud2FsaygodCxpKT0+e2lmKHQudHlwZT09PSJjb21tZW50IilyZXR1cm4gZSh0LGkpfSl9d2Fsa0RlY2xzKGUsdCl7cmV0dXJuIHQ/ZSBpbnN0YW5jZW9mIFJlZ0V4cD90aGlzLndhbGsoKGksbik9PntpZihpLnR5cGU9PT0iZGVjbCImJmUudGVzdChpLnByb3ApKXJldHVybiB0KGksbil9KTp0aGlzLndhbGsoKGksbik9PntpZihpLnR5cGU9PT0iZGVjbCImJmkucHJvcD09PWUpcmV0dXJuIHQoaSxuKX0pOih0PWUsdGhpcy53YWxrKChpLG4pPT57aWYoaS50eXBlPT09ImRlY2wiKXJldHVybiB0KGksbil9KSl9d2Fsa1J1bGVzKGUsdCl7cmV0dXJuIHQ/ZSBpbnN0YW5jZW9mIFJlZ0V4cD90aGlzLndhbGsoKGksbik9PntpZihpLnR5cGU9PT0icnVsZSImJmUudGVzdChpLnNlbGVjdG9yKSlyZXR1cm4gdChpLG4pfSk6dGhpcy53YWxrKChpLG4pPT57aWYoaS50eXBlPT09InJ1bGUiJiZpLnNlbGVjdG9yPT09ZSlyZXR1cm4gdChpLG4pfSk6KHQ9ZSx0aGlzLndhbGsoKGksbik9PntpZihpLnR5cGU9PT0icnVsZSIpcmV0dXJuIHQoaSxuKX0pKX1nZXQgZmlyc3QoKXtpZighIXRoaXMucHJveHlPZi5ub2RlcylyZXR1cm4gdGhpcy5wcm94eU9mLm5vZGVzWzBdfWdldCBsYXN0KCl7aWYoISF0aGlzLnByb3h5T2Yubm9kZXMpcmV0dXJuIHRoaXMucHJveHlPZi5ub2Rlc1t0aGlzLnByb3h5T2Yubm9kZXMubGVuZ3RoLTFdfX07RmUucmVnaXN0ZXJQYXJzZT1yPT57a2M9cn07RmUucmVnaXN0ZXJSdWxlPXI9PnttYT1yfTtGZS5yZWdpc3RlckF0UnVsZT1yPT57aGE9cn07RmUucmVnaXN0ZXJSb290PXI9PntTYz1yfTtfYy5leHBvcnRzPUZlO0ZlLmRlZmF1bHQ9RmU7RmUucmVidWlsZD1yPT57ci50eXBlPT09ImF0cnVsZSI/T2JqZWN0LnNldFByb3RvdHlwZU9mKHIsaGEucHJvdG90eXBlKTpyLnR5cGU9PT0icnVsZSI/T2JqZWN0LnNldFByb3RvdHlwZU9mKHIsbWEucHJvdG90eXBlKTpyLnR5cGU9PT0iZGVjbCI/T2JqZWN0LnNldFByb3RvdHlwZU9mKHIsd2MucHJvdG90eXBlKTpyLnR5cGU9PT0iY29tbWVudCI/T2JqZWN0LnNldFByb3RvdHlwZU9mKHIsYmMucHJvdG90eXBlKTpyLnR5cGU9PT0icm9vdCImJk9iamVjdC5zZXRQcm90b3R5cGVPZihyLFNjLnByb3RvdHlwZSksclt4Y109ITAsci5ub2RlcyYmci5ub2Rlcy5mb3JFYWNoKGU9PntGZS5yZWJ1aWxkKGUpfSl9fSk7dmFyIHBuPXgoKE8zLE9jKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIEVjPUV0KCksS3I9Y2xhc3MgZXh0ZW5kcyBFY3tjb25zdHJ1Y3RvcihlKXtzdXBlcihlKTt0aGlzLnR5cGU9ImF0cnVsZSJ9YXBwZW5kKC4uLmUpe3JldHVybiB0aGlzLnByb3h5T2Yubm9kZXN8fCh0aGlzLm5vZGVzPVtdKSxzdXBlci5hcHBlbmQoLi4uZSl9cHJlcGVuZCguLi5lKXtyZXR1cm4gdGhpcy5wcm94eU9mLm5vZGVzfHwodGhpcy5ub2Rlcz1bXSksc3VwZXIucHJlcGVuZCguLi5lKX19O09jLmV4cG9ydHM9S3I7S3IuZGVmYXVsdD1LcjtFYy5yZWdpc3RlckF0UnVsZShLcil9KTt2YXIgZG49eCgoVDMsUGMpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgVHg9RXQoKSxUYyxSYyxlcj1jbGFzcyBleHRlbmRzIFR4e2NvbnN0cnVjdG9yKGUpe3N1cGVyKHt0eXBlOiJkb2N1bWVudCIsLi4uZX0pO3RoaXMubm9kZXN8fCh0aGlzLm5vZGVzPVtdKX10b1Jlc3VsdChlPXt9KXtyZXR1cm4gbmV3IFRjKG5ldyBSYyx0aGlzLGUpLnN0cmluZ2lmeSgpfX07ZXIucmVnaXN0ZXJMYXp5UmVzdWx0PXI9PntUYz1yfTtlci5yZWdpc3RlclByb2Nlc3Nvcj1yPT57UmM9cn07UGMuZXhwb3J0cz1lcjtlci5kZWZhdWx0PWVyfSk7dmFyIERjPXgoKFIzLEljKT0+e3UoKTt2YXIgUng9InVzZWFuZG9tLTI2VDE5ODM0MFBYNzVweEpBQ0tWRVJZTUlOREJVU0hXT0xGX0dRWmJmZ2hqa2xxdnd5enJpY3QiLFB4PShyLGU9MjEpPT4odD1lKT0+e2xldCBpPSIiLG49dDtmb3IoO24tLTspaSs9cltNYXRoLnJhbmRvbSgpKnIubGVuZ3RofDBdO3JldHVybiBpfSxJeD0ocj0yMSk9PntsZXQgZT0iIix0PXI7Zm9yKDt0LS07KWUrPVJ4W01hdGgucmFuZG9tKCkqNjR8MF07cmV0dXJuIGV9O0ljLmV4cG9ydHM9e25hbm9pZDpJeCxjdXN0b21BbHBoYWJldDpQeH19KTt2YXIgcWM9eCgoKT0+e3UoKX0pO3ZhciBnYT14KChEMywkYyk9Pnt1KCk7JGMuZXhwb3J0cz17fX0pO3ZhciBtbj14KChxMyxCYyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhcntuYW5vaWQ6RHh9PURjKCkse2lzQWJzb2x1dGU6eWEscmVzb2x2ZTpiYX09KGV0KCksVXIpLHtTb3VyY2VNYXBDb25zdW1lcjpxeCxTb3VyY2VNYXBHZW5lcmF0b3I6JHh9PXFjKCkse2ZpbGVVUkxUb1BhdGg6TGMscGF0aFRvRmlsZVVSTDpobn09KGxhKCksbGMpLE1jPWFuKCksTHg9Z2EoKSx3YT11YSgpLHZhPVN5bWJvbCgiZnJvbU9mZnNldENhY2hlIiksTXg9Qm9vbGVhbihxeCYmJHgpLE5jPUJvb2xlYW4oYmEmJnlhKSxYcj1jbGFzc3tjb25zdHJ1Y3RvcihlLHQ9e30pe2lmKGU9PT1udWxsfHx0eXBlb2YgZT09InVuZGVmaW5lZCJ8fHR5cGVvZiBlPT0ib2JqZWN0IiYmIWUudG9TdHJpbmcpdGhyb3cgbmV3IEVycm9yKGBQb3N0Q1NTIHJlY2VpdmVkICR7ZX0gaW5zdGVhZCBvZiBDU1Mgc3RyaW5nYCk7aWYodGhpcy5jc3M9ZS50b1N0cmluZygpLHRoaXMuY3NzWzBdPT09Ilx1RkVGRiJ8fHRoaXMuY3NzWzBdPT09Ilx1RkZGRSI/KHRoaXMuaGFzQk9NPSEwLHRoaXMuY3NzPXRoaXMuY3NzLnNsaWNlKDEpKTp0aGlzLmhhc0JPTT0hMSx0LmZyb20mJighTmN8fC9eXHcrOlwvXC8vLnRlc3QodC5mcm9tKXx8eWEodC5mcm9tKT90aGlzLmZpbGU9dC5mcm9tOnRoaXMuZmlsZT1iYSh0LmZyb20pKSxOYyYmTXgpe2xldCBpPW5ldyBMeCh0aGlzLmNzcyx0KTtpZihpLnRleHQpe3RoaXMubWFwPWk7bGV0IG49aS5jb25zdW1lcigpLmZpbGU7IXRoaXMuZmlsZSYmbiYmKHRoaXMuZmlsZT10aGlzLm1hcFJlc29sdmUobikpfX10aGlzLmZpbGV8fCh0aGlzLmlkPSI8aW5wdXQgY3NzICIrRHgoNikrIj4iKSx0aGlzLm1hcCYmKHRoaXMubWFwLmZpbGU9dGhpcy5mcm9tKX1lcnJvcihlLHQsaSxuPXt9KXtsZXQgcyxhLG87aWYodCYmdHlwZW9mIHQ9PSJvYmplY3QiKXtsZXQgYz10LGY9aTtpZih0eXBlb2YgYy5vZmZzZXQ9PSJudW1iZXIiKXtsZXQgZD10aGlzLmZyb21PZmZzZXQoYy5vZmZzZXQpO3Q9ZC5saW5lLGk9ZC5jb2x9ZWxzZSB0PWMubGluZSxpPWMuY29sdW1uO2lmKHR5cGVvZiBmLm9mZnNldD09Im51bWJlciIpe2xldCBkPXRoaXMuZnJvbU9mZnNldChmLm9mZnNldCk7YT1kLmxpbmUscz1kLmNvbH1lbHNlIGE9Zi5saW5lLHM9Zi5jb2x1bW59ZWxzZSBpZighaSl7bGV0IGM9dGhpcy5mcm9tT2Zmc2V0KHQpO3Q9Yy5saW5lLGk9Yy5jb2x9bGV0IGw9dGhpcy5vcmlnaW4odCxpLGEscyk7cmV0dXJuIGw/bz1uZXcgTWMoZSxsLmVuZExpbmU9PT12b2lkIDA/bC5saW5lOntjb2x1bW46bC5jb2x1bW4sbGluZTpsLmxpbmV9LGwuZW5kTGluZT09PXZvaWQgMD9sLmNvbHVtbjp7Y29sdW1uOmwuZW5kQ29sdW1uLGxpbmU6bC5lbmRMaW5lfSxsLnNvdXJjZSxsLmZpbGUsbi5wbHVnaW4pOm89bmV3IE1jKGUsYT09PXZvaWQgMD90Ontjb2x1bW46aSxsaW5lOnR9LGE9PT12b2lkIDA/aTp7Y29sdW1uOnMsbGluZTphfSx0aGlzLmNzcyx0aGlzLmZpbGUsbi5wbHVnaW4pLG8uaW5wdXQ9e2NvbHVtbjppLGVuZENvbHVtbjpzLGVuZExpbmU6YSxsaW5lOnQsc291cmNlOnRoaXMuY3NzfSx0aGlzLmZpbGUmJihobiYmKG8uaW5wdXQudXJsPWhuKHRoaXMuZmlsZSkudG9TdHJpbmcoKSksby5pbnB1dC5maWxlPXRoaXMuZmlsZSksb31mcm9tT2Zmc2V0KGUpe2xldCB0LGk7aWYodGhpc1t2YV0paT10aGlzW3ZhXTtlbHNle2xldCBzPXRoaXMuY3NzLnNwbGl0KGAKYCk7aT1uZXcgQXJyYXkocy5sZW5ndGgpO2xldCBhPTA7Zm9yKGxldCBvPTAsbD1zLmxlbmd0aDtvPGw7bysrKWlbb109YSxhKz1zW29dLmxlbmd0aCsxO3RoaXNbdmFdPWl9dD1pW2kubGVuZ3RoLTFdO2xldCBuPTA7aWYoZT49dCluPWkubGVuZ3RoLTE7ZWxzZXtsZXQgcz1pLmxlbmd0aC0yLGE7Zm9yKDtuPHM7KWlmKGE9bisocy1uPj4xKSxlPGlbYV0pcz1hLTE7ZWxzZSBpZihlPj1pW2ErMV0pbj1hKzE7ZWxzZXtuPWE7YnJlYWt9fXJldHVybntjb2w6ZS1pW25dKzEsbGluZTpuKzF9fW1hcFJlc29sdmUoZSl7cmV0dXJuL15cdys6XC9cLy8udGVzdChlKT9lOmJhKHRoaXMubWFwLmNvbnN1bWVyKCkuc291cmNlUm9vdHx8dGhpcy5tYXAucm9vdHx8Ii4iLGUpfW9yaWdpbihlLHQsaSxuKXtpZighdGhpcy5tYXApcmV0dXJuITE7bGV0IHM9dGhpcy5tYXAuY29uc3VtZXIoKSxhPXMub3JpZ2luYWxQb3NpdGlvbkZvcih7Y29sdW1uOnQsbGluZTplfSk7aWYoIWEuc291cmNlKXJldHVybiExO2xldCBvO3R5cGVvZiBpPT0ibnVtYmVyIiYmKG89cy5vcmlnaW5hbFBvc2l0aW9uRm9yKHtjb2x1bW46bixsaW5lOml9KSk7bGV0IGw7eWEoYS5zb3VyY2UpP2w9aG4oYS5zb3VyY2UpOmw9bmV3IFVSTChhLnNvdXJjZSx0aGlzLm1hcC5jb25zdW1lcigpLnNvdXJjZVJvb3R8fGhuKHRoaXMubWFwLm1hcEZpbGUpKTtsZXQgYz17Y29sdW1uOmEuY29sdW1uLGVuZENvbHVtbjpvJiZvLmNvbHVtbixlbmRMaW5lOm8mJm8ubGluZSxsaW5lOmEubGluZSx1cmw6bC50b1N0cmluZygpfTtpZihsLnByb3RvY29sPT09ImZpbGU6IilpZihMYyljLmZpbGU9TGMobCk7ZWxzZSB0aHJvdyBuZXcgRXJyb3IoImZpbGU6IHByb3RvY29sIGlzIG5vdCBhdmFpbGFibGUgaW4gdGhpcyBQb3N0Q1NTIGJ1aWxkIik7bGV0IGY9cy5zb3VyY2VDb250ZW50Rm9yKGEuc291cmNlKTtyZXR1cm4gZiYmKGMuc291cmNlPWYpLGN9dG9KU09OKCl7bGV0IGU9e307Zm9yKGxldCB0IG9mWyJoYXNCT00iLCJjc3MiLCJmaWxlIiwiaWQiXSl0aGlzW3RdIT1udWxsJiYoZVt0XT10aGlzW3RdKTtyZXR1cm4gdGhpcy5tYXAmJihlLm1hcD17Li4udGhpcy5tYXB9LGUubWFwLmNvbnN1bWVyQ2FjaGUmJihlLm1hcC5jb25zdW1lckNhY2hlPXZvaWQgMCkpLGV9Z2V0IGZyb20oKXtyZXR1cm4gdGhpcy5maWxlfHx0aGlzLmlkfX07QmMuZXhwb3J0cz1YcjtYci5kZWZhdWx0PVhyO3dhJiZ3YS5yZWdpc3RlcklucHV0JiZ3YS5yZWdpc3RlcklucHV0KFhyKX0pO3ZhciB0cj14KCgkMyxVYyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBGYz1FdCgpLGpjLHpjLFV0PWNsYXNzIGV4dGVuZHMgRmN7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSk7dGhpcy50eXBlPSJyb290Iix0aGlzLm5vZGVzfHwodGhpcy5ub2Rlcz1bXSl9bm9ybWFsaXplKGUsdCxpKXtsZXQgbj1zdXBlci5ub3JtYWxpemUoZSk7aWYodCl7aWYoaT09PSJwcmVwZW5kIil0aGlzLm5vZGVzLmxlbmd0aD4xP3QucmF3cy5iZWZvcmU9dGhpcy5ub2Rlc1sxXS5yYXdzLmJlZm9yZTpkZWxldGUgdC5yYXdzLmJlZm9yZTtlbHNlIGlmKHRoaXMuZmlyc3QhPT10KWZvcihsZXQgcyBvZiBuKXMucmF3cy5iZWZvcmU9dC5yYXdzLmJlZm9yZX1yZXR1cm4gbn1yZW1vdmVDaGlsZChlLHQpe2xldCBpPXRoaXMuaW5kZXgoZSk7cmV0dXJuIXQmJmk9PT0wJiZ0aGlzLm5vZGVzLmxlbmd0aD4xJiYodGhpcy5ub2Rlc1sxXS5yYXdzLmJlZm9yZT10aGlzLm5vZGVzW2ldLnJhd3MuYmVmb3JlKSxzdXBlci5yZW1vdmVDaGlsZChlKX10b1Jlc3VsdChlPXt9KXtyZXR1cm4gbmV3IGpjKG5ldyB6Yyx0aGlzLGUpLnN0cmluZ2lmeSgpfX07VXQucmVnaXN0ZXJMYXp5UmVzdWx0PXI9PntqYz1yfTtVdC5yZWdpc3RlclByb2Nlc3Nvcj1yPT57emM9cn07VWMuZXhwb3J0cz1VdDtVdC5kZWZhdWx0PVV0O0ZjLnJlZ2lzdGVyUm9vdChVdCl9KTt2YXIgeGE9eCgoTDMsVmMpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgWnI9e2NvbW1hKHIpe3JldHVybiBaci5zcGxpdChyLFsiLCJdLCEwKX0sc3BhY2Uocil7bGV0IGU9WyIgIixgCmAsIgkiXTtyZXR1cm4gWnIuc3BsaXQocixlKX0sc3BsaXQocixlLHQpe2xldCBpPVtdLG49IiIscz0hMSxhPTAsbz0hMSxsPSIiLGM9ITE7Zm9yKGxldCBmIG9mIHIpYz9jPSExOmY9PT0iXFwiP2M9ITA6bz9mPT09bCYmKG89ITEpOmY9PT0nIid8fGY9PT0iJyI/KG89ITAsbD1mKTpmPT09IigiP2ErPTE6Zj09PSIpIj9hPjAmJihhLT0xKTphPT09MCYmZS5pbmNsdWRlcyhmKSYmKHM9ITApLHM/KG4hPT0iIiYmaS5wdXNoKG4udHJpbSgpKSxuPSIiLHM9ITEpOm4rPWY7cmV0dXJuKHR8fG4hPT0iIikmJmkucHVzaChuLnRyaW0oKSksaX19O1ZjLmV4cG9ydHM9WnI7WnIuZGVmYXVsdD1acn0pO3ZhciBnbj14KChNMyxXYyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBIYz1FdCgpLE54PXhhKCksSnI9Y2xhc3MgZXh0ZW5kcyBIY3tjb25zdHJ1Y3RvcihlKXtzdXBlcihlKTt0aGlzLnR5cGU9InJ1bGUiLHRoaXMubm9kZXN8fCh0aGlzLm5vZGVzPVtdKX1nZXQgc2VsZWN0b3JzKCl7cmV0dXJuIE54LmNvbW1hKHRoaXMuc2VsZWN0b3IpfXNldCBzZWxlY3RvcnMoZSl7bGV0IHQ9dGhpcy5zZWxlY3Rvcj90aGlzLnNlbGVjdG9yLm1hdGNoKC8sXHMqLyk6bnVsbCxpPXQ/dFswXToiLCIrdGhpcy5yYXcoImJldHdlZW4iLCJiZWZvcmVPcGVuIik7dGhpcy5zZWxlY3Rvcj1lLmpvaW4oaSl9fTtXYy5leHBvcnRzPUpyO0pyLmRlZmF1bHQ9SnI7SGMucmVnaXN0ZXJSdWxlKEpyKX0pO3ZhciBRYz14KChOMyxHYyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBCeD1wbigpLEZ4PVFyKCksang9WXIoKSx6eD1tbigpLFV4PWdhKCksVng9dHIoKSxIeD1nbigpO2Z1bmN0aW9uIGVpKHIsZSl7aWYoQXJyYXkuaXNBcnJheShyKSlyZXR1cm4gci5tYXAobj0+ZWkobikpO2xldHtpbnB1dHM6dCwuLi5pfT1yO2lmKHQpe2U9W107Zm9yKGxldCBuIG9mIHQpe2xldCBzPXsuLi5uLF9fcHJvdG9fXzp6eC5wcm90b3R5cGV9O3MubWFwJiYocy5tYXA9ey4uLnMubWFwLF9fcHJvdG9fXzpVeC5wcm90b3R5cGV9KSxlLnB1c2gocyl9fWlmKGkubm9kZXMmJihpLm5vZGVzPXIubm9kZXMubWFwKG49PmVpKG4sZSkpKSxpLnNvdXJjZSl7bGV0e2lucHV0SWQ6biwuLi5zfT1pLnNvdXJjZTtpLnNvdXJjZT1zLG4hPW51bGwmJihpLnNvdXJjZS5pbnB1dD1lW25dKX1pZihpLnR5cGU9PT0icm9vdCIpcmV0dXJuIG5ldyBWeChpKTtpZihpLnR5cGU9PT0iZGVjbCIpcmV0dXJuIG5ldyBqeChpKTtpZihpLnR5cGU9PT0icnVsZSIpcmV0dXJuIG5ldyBIeChpKTtpZihpLnR5cGU9PT0iY29tbWVudCIpcmV0dXJuIG5ldyBGeChpKTtpZihpLnR5cGU9PT0iYXRydWxlIilyZXR1cm4gbmV3IEJ4KGkpO3Rocm93IG5ldyBFcnJvcigiVW5rbm93biBub2RlIHR5cGU6ICIrci50eXBlKX1HYy5leHBvcnRzPWVpO2VpLmRlZmF1bHQ9ZWl9KTt2YXIga2E9eCgoQjMsWWMpPT57dSgpO1ljLmV4cG9ydHM9ZnVuY3Rpb24ocixlKXtyZXR1cm57Z2VuZXJhdGU6KCk9PntsZXQgdD0iIjtyZXR1cm4gcihlLGk9Pnt0Kz1pfSksW3RdfX19fSk7dmFyIGVwPXgoKEYzLEpjKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIFNhPSInIi5jaGFyQ29kZUF0KDApLEtjPSciJy5jaGFyQ29kZUF0KDApLHluPSJcXCIuY2hhckNvZGVBdCgwKSxYYz0iLyIuY2hhckNvZGVBdCgwKSxibj1gCmAuY2hhckNvZGVBdCgwKSx0aT0iICIuY2hhckNvZGVBdCgwKSx3bj0iXGYiLmNoYXJDb2RlQXQoMCksdm49IgkiLmNoYXJDb2RlQXQoMCkseG49IlxyIi5jaGFyQ29kZUF0KDApLFd4PSJbIi5jaGFyQ29kZUF0KDApLEd4PSJdIi5jaGFyQ29kZUF0KDApLFF4PSIoIi5jaGFyQ29kZUF0KDApLFl4PSIpIi5jaGFyQ29kZUF0KDApLEt4PSJ7Ii5jaGFyQ29kZUF0KDApLFh4PSJ9Ii5jaGFyQ29kZUF0KDApLFp4PSI7Ii5jaGFyQ29kZUF0KDApLEp4PSIqIi5jaGFyQ29kZUF0KDApLGUxPSI6Ii5jaGFyQ29kZUF0KDApLHQxPSJAIi5jaGFyQ29kZUF0KDApLGtuPS9bXHRcblxmXHIgIiMnKCkvO1tcXFxde31dL2csU249L1tcdFxuXGZcciAhIiMnKCk6O0BbXFxcXXt9XXxcLyg/PVwqKS9nLHIxPS8uW1xyXG4iJygvXFxdLyxaYz0vW1xkYS1mXS9pO0pjLmV4cG9ydHM9ZnVuY3Rpb24oZSx0PXt9KXtsZXQgaT1lLmNzcy52YWx1ZU9mKCksbj10Lmlnbm9yZUVycm9ycyxzLGEsbyxsLGMsZixkLHAsaCxiLHY9aS5sZW5ndGgseT0wLHc9W10saz1bXTtmdW5jdGlvbiBTKCl7cmV0dXJuIHl9ZnVuY3Rpb24gRShSKXt0aHJvdyBlLmVycm9yKCJVbmNsb3NlZCAiK1IseSl9ZnVuY3Rpb24gVCgpe3JldHVybiBrLmxlbmd0aD09PTAmJnk+PXZ9ZnVuY3Rpb24gQihSKXtpZihrLmxlbmd0aClyZXR1cm4gay5wb3AoKTtpZih5Pj12KXJldHVybjtsZXQgRj1SP1IuaWdub3JlVW5jbG9zZWQ6ITE7c3dpdGNoKHM9aS5jaGFyQ29kZUF0KHkpLHMpe2Nhc2UgYm46Y2FzZSB0aTpjYXNlIHZuOmNhc2UgeG46Y2FzZSB3bjp7bD15O2RvIGwrPTEscz1pLmNoYXJDb2RlQXQobCk7d2hpbGUocz09PXRpfHxzPT09Ym58fHM9PT12bnx8cz09PXhufHxzPT09d24pO2Y9WyJzcGFjZSIsaS5zbGljZSh5LGwpXSx5PWwtMTticmVha31jYXNlIFd4OmNhc2UgR3g6Y2FzZSBLeDpjYXNlIFh4OmNhc2UgZTE6Y2FzZSBaeDpjYXNlIFl4OntsZXQgWT1TdHJpbmcuZnJvbUNoYXJDb2RlKHMpO2Y9W1ksWSx5XTticmVha31jYXNlIFF4OntpZihiPXcubGVuZ3RoP3cucG9wKClbMV06IiIsaD1pLmNoYXJDb2RlQXQoeSsxKSxiPT09InVybCImJmghPT1TYSYmaCE9PUtjJiZoIT09dGkmJmghPT1ibiYmaCE9PXZuJiZoIT09d24mJmghPT14bil7bD15O2Rve2lmKGQ9ITEsbD1pLmluZGV4T2YoIikiLGwrMSksbD09PS0xKWlmKG58fEYpe2w9eTticmVha31lbHNlIEUoImJyYWNrZXQiKTtmb3IocD1sO2kuY2hhckNvZGVBdChwLTEpPT09eW47KXAtPTEsZD0hZH13aGlsZShkKTtmPVsiYnJhY2tldHMiLGkuc2xpY2UoeSxsKzEpLHksbF0seT1sfWVsc2UgbD1pLmluZGV4T2YoIikiLHkrMSksYT1pLnNsaWNlKHksbCsxKSxsPT09LTF8fHIxLnRlc3QoYSk/Zj1bIigiLCIoIix5XTooZj1bImJyYWNrZXRzIixhLHksbF0seT1sKTticmVha31jYXNlIFNhOmNhc2UgS2M6e2M9cz09PVNhPyInIjonIicsbD15O2Rve2lmKGQ9ITEsbD1pLmluZGV4T2YoYyxsKzEpLGw9PT0tMSlpZihufHxGKXtsPXkrMTticmVha31lbHNlIEUoInN0cmluZyIpO2ZvcihwPWw7aS5jaGFyQ29kZUF0KHAtMSk9PT15bjspcC09MSxkPSFkfXdoaWxlKGQpO2Y9WyJzdHJpbmciLGkuc2xpY2UoeSxsKzEpLHksbF0seT1sO2JyZWFrfWNhc2UgdDE6e2tuLmxhc3RJbmRleD15KzEsa24udGVzdChpKSxrbi5sYXN0SW5kZXg9PT0wP2w9aS5sZW5ndGgtMTpsPWtuLmxhc3RJbmRleC0yLGY9WyJhdC13b3JkIixpLnNsaWNlKHksbCsxKSx5LGxdLHk9bDticmVha31jYXNlIHluOntmb3IobD15LG89ITA7aS5jaGFyQ29kZUF0KGwrMSk9PT15bjspbCs9MSxvPSFvO2lmKHM9aS5jaGFyQ29kZUF0KGwrMSksbyYmcyE9PVhjJiZzIT09dGkmJnMhPT1ibiYmcyE9PXZuJiZzIT09eG4mJnMhPT13biYmKGwrPTEsWmMudGVzdChpLmNoYXJBdChsKSkpKXtmb3IoO1pjLnRlc3QoaS5jaGFyQXQobCsxKSk7KWwrPTE7aS5jaGFyQ29kZUF0KGwrMSk9PT10aSYmKGwrPTEpfWY9WyJ3b3JkIixpLnNsaWNlKHksbCsxKSx5LGxdLHk9bDticmVha31kZWZhdWx0OntzPT09WGMmJmkuY2hhckNvZGVBdCh5KzEpPT09Sng/KGw9aS5pbmRleE9mKCIqLyIseSsyKSsxLGw9PT0wJiYobnx8Rj9sPWkubGVuZ3RoOkUoImNvbW1lbnQiKSksZj1bImNvbW1lbnQiLGkuc2xpY2UoeSxsKzEpLHksbF0seT1sKTooU24ubGFzdEluZGV4PXkrMSxTbi50ZXN0KGkpLFNuLmxhc3RJbmRleD09PTA/bD1pLmxlbmd0aC0xOmw9U24ubGFzdEluZGV4LTIsZj1bIndvcmQiLGkuc2xpY2UoeSxsKzEpLHksbF0sdy5wdXNoKGYpLHk9bCk7YnJlYWt9fXJldHVybiB5KyssZn1mdW5jdGlvbiBOKFIpe2sucHVzaChSKX1yZXR1cm57YmFjazpOLGVuZE9mRmlsZTpULG5leHRUb2tlbjpCLHBvc2l0aW9uOlN9fX0pO3ZhciBzcD14KChqMyxucCk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBpMT1wbigpLG4xPVFyKCksczE9WXIoKSxhMT10cigpLHRwPWduKCksbzE9ZXAoKSxycD17ZW1wdHk6ITAsc3BhY2U6ITB9O2Z1bmN0aW9uIGwxKHIpe2ZvcihsZXQgZT1yLmxlbmd0aC0xO2U+PTA7ZS0tKXtsZXQgdD1yW2VdLGk9dFszXXx8dFsyXTtpZihpKXJldHVybiBpfX12YXIgaXA9Y2xhc3N7Y29uc3RydWN0b3IoZSl7dGhpcy5pbnB1dD1lLHRoaXMucm9vdD1uZXcgYTEsdGhpcy5jdXJyZW50PXRoaXMucm9vdCx0aGlzLnNwYWNlcz0iIix0aGlzLnNlbWljb2xvbj0hMSx0aGlzLmNyZWF0ZVRva2VuaXplcigpLHRoaXMucm9vdC5zb3VyY2U9e2lucHV0OmUsc3RhcnQ6e2NvbHVtbjoxLGxpbmU6MSxvZmZzZXQ6MH19fWF0cnVsZShlKXtsZXQgdD1uZXcgaTE7dC5uYW1lPWVbMV0uc2xpY2UoMSksdC5uYW1lPT09IiImJnRoaXMudW5uYW1lZEF0cnVsZSh0LGUpLHRoaXMuaW5pdCh0LGVbMl0pO2xldCBpLG4scyxhPSExLG89ITEsbD1bXSxjPVtdO2Zvcig7IXRoaXMudG9rZW5pemVyLmVuZE9mRmlsZSgpOyl7aWYoZT10aGlzLnRva2VuaXplci5uZXh0VG9rZW4oKSxpPWVbMF0saT09PSIoInx8aT09PSJbIj9jLnB1c2goaT09PSIoIj8iKSI6Il0iKTppPT09InsiJiZjLmxlbmd0aD4wP2MucHVzaCgifSIpOmk9PT1jW2MubGVuZ3RoLTFdJiZjLnBvcCgpLGMubGVuZ3RoPT09MClpZihpPT09IjsiKXt0LnNvdXJjZS5lbmQ9dGhpcy5nZXRQb3NpdGlvbihlWzJdKSx0LnNvdXJjZS5lbmQub2Zmc2V0KyssdGhpcy5zZW1pY29sb249ITA7YnJlYWt9ZWxzZSBpZihpPT09InsiKXtvPSEwO2JyZWFrfWVsc2UgaWYoaT09PSJ9Iil7aWYobC5sZW5ndGg+MCl7Zm9yKHM9bC5sZW5ndGgtMSxuPWxbc107biYmblswXT09PSJzcGFjZSI7KW49bFstLXNdO24mJih0LnNvdXJjZS5lbmQ9dGhpcy5nZXRQb3NpdGlvbihuWzNdfHxuWzJdKSx0LnNvdXJjZS5lbmQub2Zmc2V0KyspfXRoaXMuZW5kKGUpO2JyZWFrfWVsc2UgbC5wdXNoKGUpO2Vsc2UgbC5wdXNoKGUpO2lmKHRoaXMudG9rZW5pemVyLmVuZE9mRmlsZSgpKXthPSEwO2JyZWFrfX10LnJhd3MuYmV0d2Vlbj10aGlzLnNwYWNlc0FuZENvbW1lbnRzRnJvbUVuZChsKSxsLmxlbmd0aD8odC5yYXdzLmFmdGVyTmFtZT10aGlzLnNwYWNlc0FuZENvbW1lbnRzRnJvbVN0YXJ0KGwpLHRoaXMucmF3KHQsInBhcmFtcyIsbCksYSYmKGU9bFtsLmxlbmd0aC0xXSx0LnNvdXJjZS5lbmQ9dGhpcy5nZXRQb3NpdGlvbihlWzNdfHxlWzJdKSx0LnNvdXJjZS5lbmQub2Zmc2V0KyssdGhpcy5zcGFjZXM9dC5yYXdzLmJldHdlZW4sdC5yYXdzLmJldHdlZW49IiIpKToodC5yYXdzLmFmdGVyTmFtZT0iIix0LnBhcmFtcz0iIiksbyYmKHQubm9kZXM9W10sdGhpcy5jdXJyZW50PXQpfWNoZWNrTWlzc2VkU2VtaWNvbG9uKGUpe2xldCB0PXRoaXMuY29sb24oZSk7aWYodD09PSExKXJldHVybjtsZXQgaT0wLG47Zm9yKGxldCBzPXQtMTtzPj0wJiYobj1lW3NdLCEoblswXSE9PSJzcGFjZSImJihpKz0xLGk9PT0yKSkpO3MtLSk7dGhyb3cgdGhpcy5pbnB1dC5lcnJvcigiTWlzc2VkIHNlbWljb2xvbiIsblswXT09PSJ3b3JkIj9uWzNdKzE6blsyXSl9Y29sb24oZSl7bGV0IHQ9MCxpLG4scztmb3IobGV0W2Esb11vZiBlLmVudHJpZXMoKSl7aWYobj1vLHM9blswXSxzPT09IigiJiYodCs9MSkscz09PSIpIiYmKHQtPTEpLHQ9PT0wJiZzPT09IjoiKWlmKCFpKXRoaXMuZG91YmxlQ29sb24obik7ZWxzZXtpZihpWzBdPT09IndvcmQiJiZpWzFdPT09InByb2dpZCIpY29udGludWU7cmV0dXJuIGF9aT1ufXJldHVybiExfWNvbW1lbnQoZSl7bGV0IHQ9bmV3IG4xO3RoaXMuaW5pdCh0LGVbMl0pLHQuc291cmNlLmVuZD10aGlzLmdldFBvc2l0aW9uKGVbM118fGVbMl0pLHQuc291cmNlLmVuZC5vZmZzZXQrKztsZXQgaT1lWzFdLnNsaWNlKDIsLTIpO2lmKC9eXHMqJC8udGVzdChpKSl0LnRleHQ9IiIsdC5yYXdzLmxlZnQ9aSx0LnJhd3MucmlnaHQ9IiI7ZWxzZXtsZXQgbj1pLm1hdGNoKC9eKFxzKikoW15dKlxTKShccyopJC8pO3QudGV4dD1uWzJdLHQucmF3cy5sZWZ0PW5bMV0sdC5yYXdzLnJpZ2h0PW5bM119fWNyZWF0ZVRva2VuaXplcigpe3RoaXMudG9rZW5pemVyPW8xKHRoaXMuaW5wdXQpfWRlY2woZSx0KXtsZXQgaT1uZXcgczE7dGhpcy5pbml0KGksZVswXVsyXSk7bGV0IG49ZVtlLmxlbmd0aC0xXTtmb3IoblswXT09PSI7IiYmKHRoaXMuc2VtaWNvbG9uPSEwLGUucG9wKCkpLGkuc291cmNlLmVuZD10aGlzLmdldFBvc2l0aW9uKG5bM118fG5bMl18fGwxKGUpKSxpLnNvdXJjZS5lbmQub2Zmc2V0Kys7ZVswXVswXSE9PSJ3b3JkIjspZS5sZW5ndGg9PT0xJiZ0aGlzLnVua25vd25Xb3JkKGUpLGkucmF3cy5iZWZvcmUrPWUuc2hpZnQoKVsxXTtmb3IoaS5zb3VyY2Uuc3RhcnQ9dGhpcy5nZXRQb3NpdGlvbihlWzBdWzJdKSxpLnByb3A9IiI7ZS5sZW5ndGg7KXtsZXQgYz1lWzBdWzBdO2lmKGM9PT0iOiJ8fGM9PT0ic3BhY2UifHxjPT09ImNvbW1lbnQiKWJyZWFrO2kucHJvcCs9ZS5zaGlmdCgpWzFdfWkucmF3cy5iZXR3ZWVuPSIiO2xldCBzO2Zvcig7ZS5sZW5ndGg7KWlmKHM9ZS5zaGlmdCgpLHNbMF09PT0iOiIpe2kucmF3cy5iZXR3ZWVuKz1zWzFdO2JyZWFrfWVsc2Ugc1swXT09PSJ3b3JkIiYmL1x3Ly50ZXN0KHNbMV0pJiZ0aGlzLnVua25vd25Xb3JkKFtzXSksaS5yYXdzLmJldHdlZW4rPXNbMV07KGkucHJvcFswXT09PSJfInx8aS5wcm9wWzBdPT09IioiKSYmKGkucmF3cy5iZWZvcmUrPWkucHJvcFswXSxpLnByb3A9aS5wcm9wLnNsaWNlKDEpKTtsZXQgYT1bXSxvO2Zvcig7ZS5sZW5ndGgmJihvPWVbMF1bMF0sIShvIT09InNwYWNlIiYmbyE9PSJjb21tZW50IikpOylhLnB1c2goZS5zaGlmdCgpKTt0aGlzLnByZWNoZWNrTWlzc2VkU2VtaWNvbG9uKGUpO2ZvcihsZXQgYz1lLmxlbmd0aC0xO2M+PTA7Yy0tKXtpZihzPWVbY10sc1sxXS50b0xvd2VyQ2FzZSgpPT09IiFpbXBvcnRhbnQiKXtpLmltcG9ydGFudD0hMDtsZXQgZj10aGlzLnN0cmluZ0Zyb20oZSxjKTtmPXRoaXMuc3BhY2VzRnJvbUVuZChlKStmLGYhPT0iICFpbXBvcnRhbnQiJiYoaS5yYXdzLmltcG9ydGFudD1mKTticmVha31lbHNlIGlmKHNbMV0udG9Mb3dlckNhc2UoKT09PSJpbXBvcnRhbnQiKXtsZXQgZj1lLnNsaWNlKDApLGQ9IiI7Zm9yKGxldCBwPWM7cD4wO3AtLSl7bGV0IGg9ZltwXVswXTtpZihkLnRyaW0oKS5zdGFydHNXaXRoKCIhIikmJmghPT0ic3BhY2UiKWJyZWFrO2Q9Zi5wb3AoKVsxXStkfWQudHJpbSgpLnN0YXJ0c1dpdGgoIiEiKSYmKGkuaW1wb3J0YW50PSEwLGkucmF3cy5pbXBvcnRhbnQ9ZCxlPWYpfWlmKHNbMF0hPT0ic3BhY2UiJiZzWzBdIT09ImNvbW1lbnQiKWJyZWFrfWUuc29tZShjPT5jWzBdIT09InNwYWNlIiYmY1swXSE9PSJjb21tZW50IikmJihpLnJhd3MuYmV0d2Vlbis9YS5tYXAoYz0+Y1sxXSkuam9pbigiIiksYT1bXSksdGhpcy5yYXcoaSwidmFsdWUiLGEuY29uY2F0KGUpLHQpLGkudmFsdWUuaW5jbHVkZXMoIjoiKSYmIXQmJnRoaXMuY2hlY2tNaXNzZWRTZW1pY29sb24oZSl9ZG91YmxlQ29sb24oZSl7dGhyb3cgdGhpcy5pbnB1dC5lcnJvcigiRG91YmxlIGNvbG9uIix7b2Zmc2V0OmVbMl19LHtvZmZzZXQ6ZVsyXStlWzFdLmxlbmd0aH0pfWVtcHR5UnVsZShlKXtsZXQgdD1uZXcgdHA7dGhpcy5pbml0KHQsZVsyXSksdC5zZWxlY3Rvcj0iIix0LnJhd3MuYmV0d2Vlbj0iIix0aGlzLmN1cnJlbnQ9dH1lbmQoZSl7dGhpcy5jdXJyZW50Lm5vZGVzJiZ0aGlzLmN1cnJlbnQubm9kZXMubGVuZ3RoJiYodGhpcy5jdXJyZW50LnJhd3Muc2VtaWNvbG9uPXRoaXMuc2VtaWNvbG9uKSx0aGlzLnNlbWljb2xvbj0hMSx0aGlzLmN1cnJlbnQucmF3cy5hZnRlcj0odGhpcy5jdXJyZW50LnJhd3MuYWZ0ZXJ8fCIiKSt0aGlzLnNwYWNlcyx0aGlzLnNwYWNlcz0iIix0aGlzLmN1cnJlbnQucGFyZW50Pyh0aGlzLmN1cnJlbnQuc291cmNlLmVuZD10aGlzLmdldFBvc2l0aW9uKGVbMl0pLHRoaXMuY3VycmVudC5zb3VyY2UuZW5kLm9mZnNldCsrLHRoaXMuY3VycmVudD10aGlzLmN1cnJlbnQucGFyZW50KTp0aGlzLnVuZXhwZWN0ZWRDbG9zZShlKX1lbmRGaWxlKCl7dGhpcy5jdXJyZW50LnBhcmVudCYmdGhpcy51bmNsb3NlZEJsb2NrKCksdGhpcy5jdXJyZW50Lm5vZGVzJiZ0aGlzLmN1cnJlbnQubm9kZXMubGVuZ3RoJiYodGhpcy5jdXJyZW50LnJhd3Muc2VtaWNvbG9uPXRoaXMuc2VtaWNvbG9uKSx0aGlzLmN1cnJlbnQucmF3cy5hZnRlcj0odGhpcy5jdXJyZW50LnJhd3MuYWZ0ZXJ8fCIiKSt0aGlzLnNwYWNlcyx0aGlzLnJvb3Quc291cmNlLmVuZD10aGlzLmdldFBvc2l0aW9uKHRoaXMudG9rZW5pemVyLnBvc2l0aW9uKCkpfWZyZWVTZW1pY29sb24oZSl7aWYodGhpcy5zcGFjZXMrPWVbMV0sdGhpcy5jdXJyZW50Lm5vZGVzKXtsZXQgdD10aGlzLmN1cnJlbnQubm9kZXNbdGhpcy5jdXJyZW50Lm5vZGVzLmxlbmd0aC0xXTt0JiZ0LnR5cGU9PT0icnVsZSImJiF0LnJhd3Mub3duU2VtaWNvbG9uJiYodC5yYXdzLm93blNlbWljb2xvbj10aGlzLnNwYWNlcyx0aGlzLnNwYWNlcz0iIil9fWdldFBvc2l0aW9uKGUpe2xldCB0PXRoaXMuaW5wdXQuZnJvbU9mZnNldChlKTtyZXR1cm57Y29sdW1uOnQuY29sLGxpbmU6dC5saW5lLG9mZnNldDplfX1pbml0KGUsdCl7dGhpcy5jdXJyZW50LnB1c2goZSksZS5zb3VyY2U9e2lucHV0OnRoaXMuaW5wdXQsc3RhcnQ6dGhpcy5nZXRQb3NpdGlvbih0KX0sZS5yYXdzLmJlZm9yZT10aGlzLnNwYWNlcyx0aGlzLnNwYWNlcz0iIixlLnR5cGUhPT0iY29tbWVudCImJih0aGlzLnNlbWljb2xvbj0hMSl9b3RoZXIoZSl7bGV0IHQ9ITEsaT1udWxsLG49ITEscz1udWxsLGE9W10sbz1lWzFdLnN0YXJ0c1dpdGgoIi0tIiksbD1bXSxjPWU7Zm9yKDtjOyl7aWYoaT1jWzBdLGwucHVzaChjKSxpPT09IigifHxpPT09IlsiKXN8fChzPWMpLGEucHVzaChpPT09IigiPyIpIjoiXSIpO2Vsc2UgaWYobyYmbiYmaT09PSJ7IilzfHwocz1jKSxhLnB1c2goIn0iKTtlbHNlIGlmKGEubGVuZ3RoPT09MClpZihpPT09IjsiKWlmKG4pe3RoaXMuZGVjbChsLG8pO3JldHVybn1lbHNlIGJyZWFrO2Vsc2UgaWYoaT09PSJ7Iil7dGhpcy5ydWxlKGwpO3JldHVybn1lbHNlIGlmKGk9PT0ifSIpe3RoaXMudG9rZW5pemVyLmJhY2sobC5wb3AoKSksdD0hMDticmVha31lbHNlIGk9PT0iOiImJihuPSEwKTtlbHNlIGk9PT1hW2EubGVuZ3RoLTFdJiYoYS5wb3AoKSxhLmxlbmd0aD09PTAmJihzPW51bGwpKTtjPXRoaXMudG9rZW5pemVyLm5leHRUb2tlbigpfWlmKHRoaXMudG9rZW5pemVyLmVuZE9mRmlsZSgpJiYodD0hMCksYS5sZW5ndGg+MCYmdGhpcy51bmNsb3NlZEJyYWNrZXQocyksdCYmbil7aWYoIW8pZm9yKDtsLmxlbmd0aCYmKGM9bFtsLmxlbmd0aC0xXVswXSwhKGMhPT0ic3BhY2UiJiZjIT09ImNvbW1lbnQiKSk7KXRoaXMudG9rZW5pemVyLmJhY2sobC5wb3AoKSk7dGhpcy5kZWNsKGwsbyl9ZWxzZSB0aGlzLnVua25vd25Xb3JkKGwpfXBhcnNlKCl7bGV0IGU7Zm9yKDshdGhpcy50b2tlbml6ZXIuZW5kT2ZGaWxlKCk7KXN3aXRjaChlPXRoaXMudG9rZW5pemVyLm5leHRUb2tlbigpLGVbMF0pe2Nhc2Uic3BhY2UiOnRoaXMuc3BhY2VzKz1lWzFdO2JyZWFrO2Nhc2UiOyI6dGhpcy5mcmVlU2VtaWNvbG9uKGUpO2JyZWFrO2Nhc2UifSI6dGhpcy5lbmQoZSk7YnJlYWs7Y2FzZSJjb21tZW50Ijp0aGlzLmNvbW1lbnQoZSk7YnJlYWs7Y2FzZSJhdC13b3JkIjp0aGlzLmF0cnVsZShlKTticmVhaztjYXNlInsiOnRoaXMuZW1wdHlSdWxlKGUpO2JyZWFrO2RlZmF1bHQ6dGhpcy5vdGhlcihlKTticmVha310aGlzLmVuZEZpbGUoKX1wcmVjaGVja01pc3NlZFNlbWljb2xvbigpe31yYXcoZSx0LGksbil7bGV0IHMsYSxvPWkubGVuZ3RoLGw9IiIsYz0hMCxmLGQ7Zm9yKGxldCBwPTA7cDxvO3ArPTEpcz1pW3BdLGE9c1swXSxhPT09InNwYWNlIiYmcD09PW8tMSYmIW4/Yz0hMTphPT09ImNvbW1lbnQiPyhkPWlbcC0xXT9pW3AtMV1bMF06ImVtcHR5IixmPWlbcCsxXT9pW3ArMV1bMF06ImVtcHR5IiwhcnBbZF0mJiFycFtmXT9sLnNsaWNlKC0xKT09PSIsIj9jPSExOmwrPXNbMV06Yz0hMSk6bCs9c1sxXTtpZighYyl7bGV0IHA9aS5yZWR1Y2UoKGgsYik9PmgrYlsxXSwiIik7ZS5yYXdzW3RdPXtyYXc6cCx2YWx1ZTpsfX1lW3RdPWx9cnVsZShlKXtlLnBvcCgpO2xldCB0PW5ldyB0cDt0aGlzLmluaXQodCxlWzBdWzJdKSx0LnJhd3MuYmV0d2Vlbj10aGlzLnNwYWNlc0FuZENvbW1lbnRzRnJvbUVuZChlKSx0aGlzLnJhdyh0LCJzZWxlY3RvciIsZSksdGhpcy5jdXJyZW50PXR9c3BhY2VzQW5kQ29tbWVudHNGcm9tRW5kKGUpe2xldCB0LGk9IiI7Zm9yKDtlLmxlbmd0aCYmKHQ9ZVtlLmxlbmd0aC0xXVswXSwhKHQhPT0ic3BhY2UiJiZ0IT09ImNvbW1lbnQiKSk7KWk9ZS5wb3AoKVsxXStpO3JldHVybiBpfXNwYWNlc0FuZENvbW1lbnRzRnJvbVN0YXJ0KGUpe2xldCB0LGk9IiI7Zm9yKDtlLmxlbmd0aCYmKHQ9ZVswXVswXSwhKHQhPT0ic3BhY2UiJiZ0IT09ImNvbW1lbnQiKSk7KWkrPWUuc2hpZnQoKVsxXTtyZXR1cm4gaX1zcGFjZXNGcm9tRW5kKGUpe2xldCB0LGk9IiI7Zm9yKDtlLmxlbmd0aCYmKHQ9ZVtlLmxlbmd0aC0xXVswXSx0PT09InNwYWNlIik7KWk9ZS5wb3AoKVsxXStpO3JldHVybiBpfXN0cmluZ0Zyb20oZSx0KXtsZXQgaT0iIjtmb3IobGV0IG49dDtuPGUubGVuZ3RoO24rKylpKz1lW25dWzFdO3JldHVybiBlLnNwbGljZSh0LGUubGVuZ3RoLXQpLGl9dW5jbG9zZWRCbG9jaygpe2xldCBlPXRoaXMuY3VycmVudC5zb3VyY2Uuc3RhcnQ7dGhyb3cgdGhpcy5pbnB1dC5lcnJvcigiVW5jbG9zZWQgYmxvY2siLGUubGluZSxlLmNvbHVtbil9dW5jbG9zZWRCcmFja2V0KGUpe3Rocm93IHRoaXMuaW5wdXQuZXJyb3IoIlVuY2xvc2VkIGJyYWNrZXQiLHtvZmZzZXQ6ZVsyXX0se29mZnNldDplWzJdKzF9KX11bmV4cGVjdGVkQ2xvc2UoZSl7dGhyb3cgdGhpcy5pbnB1dC5lcnJvcigiVW5leHBlY3RlZCB9Iix7b2Zmc2V0OmVbMl19LHtvZmZzZXQ6ZVsyXSsxfSl9dW5rbm93bldvcmQoZSl7dGhyb3cgdGhpcy5pbnB1dC5lcnJvcigiVW5rbm93biB3b3JkIix7b2Zmc2V0OmVbMF1bMl19LHtvZmZzZXQ6ZVswXVsyXStlWzBdWzFdLmxlbmd0aH0pfXVubmFtZWRBdHJ1bGUoZSx0KXt0aHJvdyB0aGlzLmlucHV0LmVycm9yKCJBdC1ydWxlIHdpdGhvdXQgbmFtZSIse29mZnNldDp0WzJdfSx7b2Zmc2V0OnRbMl0rdFsxXS5sZW5ndGh9KX19O25wLmV4cG9ydHM9aXB9KTt2YXIgQ249eCgoejMsYXApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgdTE9RXQoKSxmMT1tbigpLGMxPXNwKCk7ZnVuY3Rpb24gQW4ocixlKXtsZXQgdD1uZXcgZjEocixlKSxpPW5ldyBjMSh0KTt0cnl7aS5wYXJzZSgpfWNhdGNoKG4pe3Rocm93IG59cmV0dXJuIGkucm9vdH1hcC5leHBvcnRzPUFuO0FuLmRlZmF1bHQ9QW47dTEucmVnaXN0ZXJQYXJzZShBbil9KTt2YXIgQWE9eCgoVTMsb3ApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgX249Y2xhc3N7Y29uc3RydWN0b3IoZSx0PXt9KXtpZih0aGlzLnR5cGU9Indhcm5pbmciLHRoaXMudGV4dD1lLHQubm9kZSYmdC5ub2RlLnNvdXJjZSl7bGV0IGk9dC5ub2RlLnJhbmdlQnkodCk7dGhpcy5saW5lPWkuc3RhcnQubGluZSx0aGlzLmNvbHVtbj1pLnN0YXJ0LmNvbHVtbix0aGlzLmVuZExpbmU9aS5lbmQubGluZSx0aGlzLmVuZENvbHVtbj1pLmVuZC5jb2x1bW59Zm9yKGxldCBpIGluIHQpdGhpc1tpXT10W2ldfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMubm9kZT90aGlzLm5vZGUuZXJyb3IodGhpcy50ZXh0LHtpbmRleDp0aGlzLmluZGV4LHBsdWdpbjp0aGlzLnBsdWdpbix3b3JkOnRoaXMud29yZH0pLm1lc3NhZ2U6dGhpcy5wbHVnaW4/dGhpcy5wbHVnaW4rIjogIit0aGlzLnRleHQ6dGhpcy50ZXh0fX07b3AuZXhwb3J0cz1fbjtfbi5kZWZhdWx0PV9ufSk7dmFyIE9uPXgoKFYzLGxwKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIHAxPUFhKCksRW49Y2xhc3N7Y29uc3RydWN0b3IoZSx0LGkpe3RoaXMucHJvY2Vzc29yPWUsdGhpcy5tZXNzYWdlcz1bXSx0aGlzLnJvb3Q9dCx0aGlzLm9wdHM9aSx0aGlzLmNzcz12b2lkIDAsdGhpcy5tYXA9dm9pZCAwfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuY3NzfXdhcm4oZSx0PXt9KXt0LnBsdWdpbnx8dGhpcy5sYXN0UGx1Z2luJiZ0aGlzLmxhc3RQbHVnaW4ucG9zdGNzc1BsdWdpbiYmKHQucGx1Z2luPXRoaXMubGFzdFBsdWdpbi5wb3N0Y3NzUGx1Z2luKTtsZXQgaT1uZXcgcDEoZSx0KTtyZXR1cm4gdGhpcy5tZXNzYWdlcy5wdXNoKGkpLGl9d2FybmluZ3MoKXtyZXR1cm4gdGhpcy5tZXNzYWdlcy5maWx0ZXIoZT0+ZS50eXBlPT09Indhcm5pbmciKX1nZXQgY29udGVudCgpe3JldHVybiB0aGlzLmNzc319O2xwLmV4cG9ydHM9RW47RW4uZGVmYXVsdD1Fbn0pO3ZhciBDYT14KChIMyxmcCk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciB1cD17fTtmcC5leHBvcnRzPWZ1bmN0aW9uKGUpe3VwW2VdfHwodXBbZV09ITAsdHlwZW9mIGNvbnNvbGUhPSJ1bmRlZmluZWQiJiZjb25zb2xlLndhcm4mJmNvbnNvbGUud2FybihlKSl9fSk7dmFyIE9hPXgoKEczLGhwKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIGQxPUV0KCksaDE9ZG4oKSxtMT1rYSgpLGcxPUNuKCksY3A9T24oKSx5MT10cigpLGIxPVZyKCkse2lzQ2xlYW46dHQsbXk6dzF9PWxuKCksVzM9Q2EoKSx2MT17YXRydWxlOiJBdFJ1bGUiLGNvbW1lbnQ6IkNvbW1lbnQiLGRlY2w6IkRlY2xhcmF0aW9uIixkb2N1bWVudDoiRG9jdW1lbnQiLHJvb3Q6IlJvb3QiLHJ1bGU6IlJ1bGUifSx4MT17QXRSdWxlOiEwLEF0UnVsZUV4aXQ6ITAsQ29tbWVudDohMCxDb21tZW50RXhpdDohMCxEZWNsYXJhdGlvbjohMCxEZWNsYXJhdGlvbkV4aXQ6ITAsRG9jdW1lbnQ6ITAsRG9jdW1lbnRFeGl0OiEwLE9uY2U6ITAsT25jZUV4aXQ6ITAscG9zdGNzc1BsdWdpbjohMCxwcmVwYXJlOiEwLFJvb3Q6ITAsUm9vdEV4aXQ6ITAsUnVsZTohMCxSdWxlRXhpdDohMH0sazE9e09uY2U6ITAscG9zdGNzc1BsdWdpbjohMCxwcmVwYXJlOiEwfSxycj0wO2Z1bmN0aW9uIHJpKHIpe3JldHVybiB0eXBlb2Ygcj09Im9iamVjdCImJnR5cGVvZiByLnRoZW49PSJmdW5jdGlvbiJ9ZnVuY3Rpb24gcHAocil7bGV0IGU9ITEsdD12MVtyLnR5cGVdO3JldHVybiByLnR5cGU9PT0iZGVjbCI/ZT1yLnByb3AudG9Mb3dlckNhc2UoKTpyLnR5cGU9PT0iYXRydWxlIiYmKGU9ci5uYW1lLnRvTG93ZXJDYXNlKCkpLGUmJnIuYXBwZW5kP1t0LHQrIi0iK2UscnIsdCsiRXhpdCIsdCsiRXhpdC0iK2VdOmU/W3QsdCsiLSIrZSx0KyJFeGl0Iix0KyJFeGl0LSIrZV06ci5hcHBlbmQ/W3QscnIsdCsiRXhpdCJdOlt0LHQrIkV4aXQiXX1mdW5jdGlvbiBkcChyKXtsZXQgZTtyZXR1cm4gci50eXBlPT09ImRvY3VtZW50Ij9lPVsiRG9jdW1lbnQiLHJyLCJEb2N1bWVudEV4aXQiXTpyLnR5cGU9PT0icm9vdCI/ZT1bIlJvb3QiLHJyLCJSb290RXhpdCJdOmU9cHAocikse2V2ZW50SW5kZXg6MCxldmVudHM6ZSxpdGVyYXRvcjowLG5vZGU6cix2aXNpdG9ySW5kZXg6MCx2aXNpdG9yczpbXX19ZnVuY3Rpb24gX2Eocil7cmV0dXJuIHJbdHRdPSExLHIubm9kZXMmJnIubm9kZXMuZm9yRWFjaChlPT5fYShlKSkscn12YXIgRWE9e30scHQ9Y2xhc3N7Y29uc3RydWN0b3IoZSx0LGkpe3RoaXMuc3RyaW5naWZpZWQ9ITEsdGhpcy5wcm9jZXNzZWQ9ITE7bGV0IG47aWYodHlwZW9mIHQ9PSJvYmplY3QiJiZ0IT09bnVsbCYmKHQudHlwZT09PSJyb290Inx8dC50eXBlPT09ImRvY3VtZW50Iikpbj1fYSh0KTtlbHNlIGlmKHQgaW5zdGFuY2VvZiBwdHx8dCBpbnN0YW5jZW9mIGNwKW49X2EodC5yb290KSx0Lm1hcCYmKHR5cGVvZiBpLm1hcD09InVuZGVmaW5lZCImJihpLm1hcD17fSksaS5tYXAuaW5saW5lfHwoaS5tYXAuaW5saW5lPSExKSxpLm1hcC5wcmV2PXQubWFwKTtlbHNle2xldCBzPWcxO2kuc3ludGF4JiYocz1pLnN5bnRheC5wYXJzZSksaS5wYXJzZXImJihzPWkucGFyc2VyKSxzLnBhcnNlJiYocz1zLnBhcnNlKTt0cnl7bj1zKHQsaSl9Y2F0Y2goYSl7dGhpcy5wcm9jZXNzZWQ9ITAsdGhpcy5lcnJvcj1hfW4mJiFuW3cxXSYmZDEucmVidWlsZChuKX10aGlzLnJlc3VsdD1uZXcgY3AoZSxuLGkpLHRoaXMuaGVscGVycz17Li4uRWEscG9zdGNzczpFYSxyZXN1bHQ6dGhpcy5yZXN1bHR9LHRoaXMucGx1Z2lucz10aGlzLnByb2Nlc3Nvci5wbHVnaW5zLm1hcChzPT50eXBlb2Ygcz09Im9iamVjdCImJnMucHJlcGFyZT97Li4ucywuLi5zLnByZXBhcmUodGhpcy5yZXN1bHQpfTpzKX1hc3luYygpe3JldHVybiB0aGlzLmVycm9yP1Byb21pc2UucmVqZWN0KHRoaXMuZXJyb3IpOnRoaXMucHJvY2Vzc2VkP1Byb21pc2UucmVzb2x2ZSh0aGlzLnJlc3VsdCk6KHRoaXMucHJvY2Vzc2luZ3x8KHRoaXMucHJvY2Vzc2luZz10aGlzLnJ1bkFzeW5jKCkpLHRoaXMucHJvY2Vzc2luZyl9Y2F0Y2goZSl7cmV0dXJuIHRoaXMuYXN5bmMoKS5jYXRjaChlKX1maW5hbGx5KGUpe3JldHVybiB0aGlzLmFzeW5jKCkudGhlbihlLGUpfWdldEFzeW5jRXJyb3IoKXt0aHJvdyBuZXcgRXJyb3IoIlVzZSBwcm9jZXNzKGNzcykudGhlbihjYikgdG8gd29yayB3aXRoIGFzeW5jIHBsdWdpbnMiKX1oYW5kbGVFcnJvcihlLHQpe2xldCBpPXRoaXMucmVzdWx0Lmxhc3RQbHVnaW47dHJ5e3QmJnQuYWRkVG9FcnJvcihlKSx0aGlzLmVycm9yPWUsZS5uYW1lPT09IkNzc1N5bnRheEVycm9yIiYmIWUucGx1Z2luPyhlLnBsdWdpbj1pLnBvc3Rjc3NQbHVnaW4sZS5zZXRNZXNzYWdlKCkpOmkucG9zdGNzc1ZlcnNpb259Y2F0Y2gobil7Y29uc29sZSYmY29uc29sZS5lcnJvciYmY29uc29sZS5lcnJvcihuKX1yZXR1cm4gZX1wcmVwYXJlVmlzaXRvcnMoKXt0aGlzLmxpc3RlbmVycz17fTtsZXQgZT0odCxpLG4pPT57dGhpcy5saXN0ZW5lcnNbaV18fCh0aGlzLmxpc3RlbmVyc1tpXT1bXSksdGhpcy5saXN0ZW5lcnNbaV0ucHVzaChbdCxuXSl9O2ZvcihsZXQgdCBvZiB0aGlzLnBsdWdpbnMpaWYodHlwZW9mIHQ9PSJvYmplY3QiKWZvcihsZXQgaSBpbiB0KXtpZigheDFbaV0mJi9eW0EtWl0vLnRlc3QoaSkpdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGV2ZW50ICR7aX0gaW4gJHt0LnBvc3Rjc3NQbHVnaW59LiBUcnkgdG8gdXBkYXRlIFBvc3RDU1MgKCR7dGhpcy5wcm9jZXNzb3IudmVyc2lvbn0gbm93KS5gKTtpZighazFbaV0paWYodHlwZW9mIHRbaV09PSJvYmplY3QiKWZvcihsZXQgbiBpbiB0W2ldKW49PT0iKiI/ZSh0LGksdFtpXVtuXSk6ZSh0LGkrIi0iK24udG9Mb3dlckNhc2UoKSx0W2ldW25dKTtlbHNlIHR5cGVvZiB0W2ldPT0iZnVuY3Rpb24iJiZlKHQsaSx0W2ldKX10aGlzLmhhc0xpc3RlbmVyPU9iamVjdC5rZXlzKHRoaXMubGlzdGVuZXJzKS5sZW5ndGg+MH1hc3luYyBydW5Bc3luYygpe3RoaXMucGx1Z2luPTA7Zm9yKGxldCBlPTA7ZTx0aGlzLnBsdWdpbnMubGVuZ3RoO2UrKyl7bGV0IHQ9dGhpcy5wbHVnaW5zW2VdLGk9dGhpcy5ydW5PblJvb3QodCk7aWYocmkoaSkpdHJ5e2F3YWl0IGl9Y2F0Y2gobil7dGhyb3cgdGhpcy5oYW5kbGVFcnJvcihuKX19aWYodGhpcy5wcmVwYXJlVmlzaXRvcnMoKSx0aGlzLmhhc0xpc3RlbmVyKXtsZXQgZT10aGlzLnJlc3VsdC5yb290O2Zvcig7IWVbdHRdOyl7ZVt0dF09ITA7bGV0IHQ9W2RwKGUpXTtmb3IoO3QubGVuZ3RoPjA7KXtsZXQgaT10aGlzLnZpc2l0VGljayh0KTtpZihyaShpKSl0cnl7YXdhaXQgaX1jYXRjaChuKXtsZXQgcz10W3QubGVuZ3RoLTFdLm5vZGU7dGhyb3cgdGhpcy5oYW5kbGVFcnJvcihuLHMpfX19aWYodGhpcy5saXN0ZW5lcnMuT25jZUV4aXQpZm9yKGxldFt0LGldb2YgdGhpcy5saXN0ZW5lcnMuT25jZUV4aXQpe3RoaXMucmVzdWx0Lmxhc3RQbHVnaW49dDt0cnl7aWYoZS50eXBlPT09ImRvY3VtZW50Iil7bGV0IG49ZS5ub2Rlcy5tYXAocz0+aShzLHRoaXMuaGVscGVycykpO2F3YWl0IFByb21pc2UuYWxsKG4pfWVsc2UgYXdhaXQgaShlLHRoaXMuaGVscGVycyl9Y2F0Y2gobil7dGhyb3cgdGhpcy5oYW5kbGVFcnJvcihuKX19fXJldHVybiB0aGlzLnByb2Nlc3NlZD0hMCx0aGlzLnN0cmluZ2lmeSgpfXJ1bk9uUm9vdChlKXt0aGlzLnJlc3VsdC5sYXN0UGx1Z2luPWU7dHJ5e2lmKHR5cGVvZiBlPT0ib2JqZWN0IiYmZS5PbmNlKXtpZih0aGlzLnJlc3VsdC5yb290LnR5cGU9PT0iZG9jdW1lbnQiKXtsZXQgdD10aGlzLnJlc3VsdC5yb290Lm5vZGVzLm1hcChpPT5lLk9uY2UoaSx0aGlzLmhlbHBlcnMpKTtyZXR1cm4gcmkodFswXSk/UHJvbWlzZS5hbGwodCk6dH1yZXR1cm4gZS5PbmNlKHRoaXMucmVzdWx0LnJvb3QsdGhpcy5oZWxwZXJzKX1lbHNlIGlmKHR5cGVvZiBlPT0iZnVuY3Rpb24iKXJldHVybiBlKHRoaXMucmVzdWx0LnJvb3QsdGhpcy5yZXN1bHQpfWNhdGNoKHQpe3Rocm93IHRoaXMuaGFuZGxlRXJyb3IodCl9fXN0cmluZ2lmeSgpe2lmKHRoaXMuZXJyb3IpdGhyb3cgdGhpcy5lcnJvcjtpZih0aGlzLnN0cmluZ2lmaWVkKXJldHVybiB0aGlzLnJlc3VsdDt0aGlzLnN0cmluZ2lmaWVkPSEwLHRoaXMuc3luYygpO2xldCBlPXRoaXMucmVzdWx0Lm9wdHMsdD1iMTtlLnN5bnRheCYmKHQ9ZS5zeW50YXguc3RyaW5naWZ5KSxlLnN0cmluZ2lmaWVyJiYodD1lLnN0cmluZ2lmaWVyKSx0LnN0cmluZ2lmeSYmKHQ9dC5zdHJpbmdpZnkpO2xldCBuPW5ldyBtMSh0LHRoaXMucmVzdWx0LnJvb3QsdGhpcy5yZXN1bHQub3B0cykuZ2VuZXJhdGUoKTtyZXR1cm4gdGhpcy5yZXN1bHQuY3NzPW5bMF0sdGhpcy5yZXN1bHQubWFwPW5bMV0sdGhpcy5yZXN1bHR9c3luYygpe2lmKHRoaXMuZXJyb3IpdGhyb3cgdGhpcy5lcnJvcjtpZih0aGlzLnByb2Nlc3NlZClyZXR1cm4gdGhpcy5yZXN1bHQ7aWYodGhpcy5wcm9jZXNzZWQ9ITAsdGhpcy5wcm9jZXNzaW5nKXRocm93IHRoaXMuZ2V0QXN5bmNFcnJvcigpO2ZvcihsZXQgZSBvZiB0aGlzLnBsdWdpbnMpe2xldCB0PXRoaXMucnVuT25Sb290KGUpO2lmKHJpKHQpKXRocm93IHRoaXMuZ2V0QXN5bmNFcnJvcigpfWlmKHRoaXMucHJlcGFyZVZpc2l0b3JzKCksdGhpcy5oYXNMaXN0ZW5lcil7bGV0IGU9dGhpcy5yZXN1bHQucm9vdDtmb3IoOyFlW3R0XTspZVt0dF09ITAsdGhpcy53YWxrU3luYyhlKTtpZih0aGlzLmxpc3RlbmVycy5PbmNlRXhpdClpZihlLnR5cGU9PT0iZG9jdW1lbnQiKWZvcihsZXQgdCBvZiBlLm5vZGVzKXRoaXMudmlzaXRTeW5jKHRoaXMubGlzdGVuZXJzLk9uY2VFeGl0LHQpO2Vsc2UgdGhpcy52aXNpdFN5bmModGhpcy5saXN0ZW5lcnMuT25jZUV4aXQsZSl9cmV0dXJuIHRoaXMucmVzdWx0fXRoZW4oZSx0KXtyZXR1cm4gdGhpcy5hc3luYygpLnRoZW4oZSx0KX10b1N0cmluZygpe3JldHVybiB0aGlzLmNzc312aXNpdFN5bmMoZSx0KXtmb3IobGV0W2ksbl1vZiBlKXt0aGlzLnJlc3VsdC5sYXN0UGx1Z2luPWk7bGV0IHM7dHJ5e3M9bih0LHRoaXMuaGVscGVycyl9Y2F0Y2goYSl7dGhyb3cgdGhpcy5oYW5kbGVFcnJvcihhLHQucHJveHlPZil9aWYodC50eXBlIT09InJvb3QiJiZ0LnR5cGUhPT0iZG9jdW1lbnQiJiYhdC5wYXJlbnQpcmV0dXJuITA7aWYocmkocykpdGhyb3cgdGhpcy5nZXRBc3luY0Vycm9yKCl9fXZpc2l0VGljayhlKXtsZXQgdD1lW2UubGVuZ3RoLTFdLHtub2RlOmksdmlzaXRvcnM6bn09dDtpZihpLnR5cGUhPT0icm9vdCImJmkudHlwZSE9PSJkb2N1bWVudCImJiFpLnBhcmVudCl7ZS5wb3AoKTtyZXR1cm59aWYobi5sZW5ndGg+MCYmdC52aXNpdG9ySW5kZXg8bi5sZW5ndGgpe2xldFthLG9dPW5bdC52aXNpdG9ySW5kZXhdO3QudmlzaXRvckluZGV4Kz0xLHQudmlzaXRvckluZGV4PT09bi5sZW5ndGgmJih0LnZpc2l0b3JzPVtdLHQudmlzaXRvckluZGV4PTApLHRoaXMucmVzdWx0Lmxhc3RQbHVnaW49YTt0cnl7cmV0dXJuIG8oaS50b1Byb3h5KCksdGhpcy5oZWxwZXJzKX1jYXRjaChsKXt0aHJvdyB0aGlzLmhhbmRsZUVycm9yKGwsaSl9fWlmKHQuaXRlcmF0b3IhPT0wKXtsZXQgYT10Lml0ZXJhdG9yLG87Zm9yKDtvPWkubm9kZXNbaS5pbmRleGVzW2FdXTspaWYoaS5pbmRleGVzW2FdKz0xLCFvW3R0XSl7b1t0dF09ITAsZS5wdXNoKGRwKG8pKTtyZXR1cm59dC5pdGVyYXRvcj0wLGRlbGV0ZSBpLmluZGV4ZXNbYV19bGV0IHM9dC5ldmVudHM7Zm9yKDt0LmV2ZW50SW5kZXg8cy5sZW5ndGg7KXtsZXQgYT1zW3QuZXZlbnRJbmRleF07aWYodC5ldmVudEluZGV4Kz0xLGE9PT1ycil7aS5ub2RlcyYmaS5ub2Rlcy5sZW5ndGgmJihpW3R0XT0hMCx0Lml0ZXJhdG9yPWkuZ2V0SXRlcmF0b3IoKSk7cmV0dXJufWVsc2UgaWYodGhpcy5saXN0ZW5lcnNbYV0pe3QudmlzaXRvcnM9dGhpcy5saXN0ZW5lcnNbYV07cmV0dXJufX1lLnBvcCgpfXdhbGtTeW5jKGUpe2VbdHRdPSEwO2xldCB0PXBwKGUpO2ZvcihsZXQgaSBvZiB0KWlmKGk9PT1ycillLm5vZGVzJiZlLmVhY2gobj0+e25bdHRdfHx0aGlzLndhbGtTeW5jKG4pfSk7ZWxzZXtsZXQgbj10aGlzLmxpc3RlbmVyc1tpXTtpZihuJiZ0aGlzLnZpc2l0U3luYyhuLGUudG9Qcm94eSgpKSlyZXR1cm59fXdhcm5pbmdzKCl7cmV0dXJuIHRoaXMuc3luYygpLndhcm5pbmdzKCl9Z2V0IGNvbnRlbnQoKXtyZXR1cm4gdGhpcy5zdHJpbmdpZnkoKS5jb250ZW50fWdldCBjc3MoKXtyZXR1cm4gdGhpcy5zdHJpbmdpZnkoKS5jc3N9Z2V0IG1hcCgpe3JldHVybiB0aGlzLnN0cmluZ2lmeSgpLm1hcH1nZXQgbWVzc2FnZXMoKXtyZXR1cm4gdGhpcy5zeW5jKCkubWVzc2FnZXN9Z2V0IG9wdHMoKXtyZXR1cm4gdGhpcy5yZXN1bHQub3B0c31nZXQgcHJvY2Vzc29yKCl7cmV0dXJuIHRoaXMucmVzdWx0LnByb2Nlc3Nvcn1nZXQgcm9vdCgpe3JldHVybiB0aGlzLnN5bmMoKS5yb290fWdldFtTeW1ib2wudG9TdHJpbmdUYWddKCl7cmV0dXJuIkxhenlSZXN1bHQifX07cHQucmVnaXN0ZXJQb3N0Y3NzPXI9PntFYT1yfTtocC5leHBvcnRzPXB0O3B0LmRlZmF1bHQ9cHQ7eTEucmVnaXN0ZXJMYXp5UmVzdWx0KHB0KTtoMS5yZWdpc3RlckxhenlSZXN1bHQocHQpfSk7dmFyIGdwPXgoKFkzLG1wKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIFMxPWthKCksQTE9Q24oKSxDMT1PbigpLF8xPVZyKCksUTM9Q2EoKSxUbj1jbGFzc3tjb25zdHJ1Y3RvcihlLHQsaSl7dD10LnRvU3RyaW5nKCksdGhpcy5zdHJpbmdpZmllZD0hMSx0aGlzLl9wcm9jZXNzb3I9ZSx0aGlzLl9jc3M9dCx0aGlzLl9vcHRzPWksdGhpcy5fbWFwPXZvaWQgMDtsZXQgbixzPV8xO3RoaXMucmVzdWx0PW5ldyBDMSh0aGlzLl9wcm9jZXNzb3Isbix0aGlzLl9vcHRzKSx0aGlzLnJlc3VsdC5jc3M9dDtsZXQgYT10aGlzO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLnJlc3VsdCwicm9vdCIse2dldCgpe3JldHVybiBhLnJvb3R9fSk7bGV0IG89bmV3IFMxKHMsbix0aGlzLl9vcHRzLHQpO2lmKG8uaXNNYXAoKSl7bGV0W2wsY109by5nZW5lcmF0ZSgpO2wmJih0aGlzLnJlc3VsdC5jc3M9bCksYyYmKHRoaXMucmVzdWx0Lm1hcD1jKX1lbHNlIG8uY2xlYXJBbm5vdGF0aW9uKCksdGhpcy5yZXN1bHQuY3NzPW8uY3NzfWFzeW5jKCl7cmV0dXJuIHRoaXMuZXJyb3I/UHJvbWlzZS5yZWplY3QodGhpcy5lcnJvcik6UHJvbWlzZS5yZXNvbHZlKHRoaXMucmVzdWx0KX1jYXRjaChlKXtyZXR1cm4gdGhpcy5hc3luYygpLmNhdGNoKGUpfWZpbmFsbHkoZSl7cmV0dXJuIHRoaXMuYXN5bmMoKS50aGVuKGUsZSl9c3luYygpe2lmKHRoaXMuZXJyb3IpdGhyb3cgdGhpcy5lcnJvcjtyZXR1cm4gdGhpcy5yZXN1bHR9dGhlbihlLHQpe3JldHVybiB0aGlzLmFzeW5jKCkudGhlbihlLHQpfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuX2Nzc313YXJuaW5ncygpe3JldHVybltdfWdldCBjb250ZW50KCl7cmV0dXJuIHRoaXMucmVzdWx0LmNzc31nZXQgY3NzKCl7cmV0dXJuIHRoaXMucmVzdWx0LmNzc31nZXQgbWFwKCl7cmV0dXJuIHRoaXMucmVzdWx0Lm1hcH1nZXQgbWVzc2FnZXMoKXtyZXR1cm5bXX1nZXQgb3B0cygpe3JldHVybiB0aGlzLnJlc3VsdC5vcHRzfWdldCBwcm9jZXNzb3IoKXtyZXR1cm4gdGhpcy5yZXN1bHQucHJvY2Vzc29yfWdldCByb290KCl7aWYodGhpcy5fcm9vdClyZXR1cm4gdGhpcy5fcm9vdDtsZXQgZSx0PUExO3RyeXtlPXQodGhpcy5fY3NzLHRoaXMuX29wdHMpfWNhdGNoKGkpe3RoaXMuZXJyb3I9aX1pZih0aGlzLmVycm9yKXRocm93IHRoaXMuZXJyb3I7cmV0dXJuIHRoaXMuX3Jvb3Q9ZSxlfWdldFtTeW1ib2wudG9TdHJpbmdUYWddKCl7cmV0dXJuIk5vV29ya1Jlc3VsdCJ9fTttcC5leHBvcnRzPVRuO1RuLmRlZmF1bHQ9VG59KTt2YXIgYnA9eCgoSzMseXApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgRTE9ZG4oKSxPMT1PYSgpLFQxPWdwKCksUjE9dHIoKSxpcj1jbGFzc3tjb25zdHJ1Y3RvcihlPVtdKXt0aGlzLnZlcnNpb249IjguNC40OSIsdGhpcy5wbHVnaW5zPXRoaXMubm9ybWFsaXplKGUpfW5vcm1hbGl6ZShlKXtsZXQgdD1bXTtmb3IobGV0IGkgb2YgZSlpZihpLnBvc3Rjc3M9PT0hMD9pPWkoKTppLnBvc3Rjc3MmJihpPWkucG9zdGNzcyksdHlwZW9mIGk9PSJvYmplY3QiJiZBcnJheS5pc0FycmF5KGkucGx1Z2lucykpdD10LmNvbmNhdChpLnBsdWdpbnMpO2Vsc2UgaWYodHlwZW9mIGk9PSJvYmplY3QiJiZpLnBvc3Rjc3NQbHVnaW4pdC5wdXNoKGkpO2Vsc2UgaWYodHlwZW9mIGk9PSJmdW5jdGlvbiIpdC5wdXNoKGkpO2Vsc2UgaWYoISh0eXBlb2YgaT09Im9iamVjdCImJihpLnBhcnNlfHxpLnN0cmluZ2lmeSkpKXRocm93IG5ldyBFcnJvcihpKyIgaXMgbm90IGEgUG9zdENTUyBwbHVnaW4iKTtyZXR1cm4gdH1wcm9jZXNzKGUsdD17fSl7cmV0dXJuIXRoaXMucGx1Z2lucy5sZW5ndGgmJiF0LnBhcnNlciYmIXQuc3RyaW5naWZpZXImJiF0LnN5bnRheD9uZXcgVDEodGhpcyxlLHQpOm5ldyBPMSh0aGlzLGUsdCl9dXNlKGUpe3JldHVybiB0aGlzLnBsdWdpbnM9dGhpcy5wbHVnaW5zLmNvbmNhdCh0aGlzLm5vcm1hbGl6ZShbZV0pKSx0aGlzfX07eXAuZXhwb3J0cz1pcjtpci5kZWZhdWx0PWlyO1IxLnJlZ2lzdGVyUHJvY2Vzc29yKGlyKTtFMS5yZWdpc3RlclByb2Nlc3Nvcihpcil9KTt2YXIgJGU9eCgoWDMsQ3ApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgd3A9cG4oKSx2cD1RcigpLFAxPUV0KCksSTE9YW4oKSx4cD1ZcigpLGtwPWRuKCksRDE9UWMoKSxxMT1tbigpLCQxPU9hKCksTDE9eGEoKSxNMT1HcigpLE4xPUNuKCksVGE9YnAoKSxCMT1PbigpLFNwPXRyKCksQXA9Z24oKSxGMT1WcigpLGoxPUFhKCk7ZnVuY3Rpb24gSiguLi5yKXtyZXR1cm4gci5sZW5ndGg9PT0xJiZBcnJheS5pc0FycmF5KHJbMF0pJiYocj1yWzBdKSxuZXcgVGEocil9Si5wbHVnaW49ZnVuY3Rpb24oZSx0KXtsZXQgaT0hMTtmdW5jdGlvbiBuKC4uLmEpe2NvbnNvbGUmJmNvbnNvbGUud2FybiYmIWkmJihpPSEwLGNvbnNvbGUud2FybihlK2A6IHBvc3Rjc3MucGx1Z2luIHdhcyBkZXByZWNhdGVkLiBNaWdyYXRpb24gZ3VpZGU6Cmh0dHBzOi8vZXZpbG1hcnRpYW5zLmNvbS9jaHJvbmljbGVzL3Bvc3Rjc3MtOC1wbHVnaW4tbWlncmF0aW9uYCksbS5lbnYuTEFORyYmbS5lbnYuTEFORy5zdGFydHNXaXRoKCJjbiIpJiZjb25zb2xlLndhcm4oZStgOiBcdTkxQ0NcdTk3NjIgcG9zdGNzcy5wbHVnaW4gXHU4OEFCXHU1RjAzXHU3NTI4LiBcdThGQzFcdTc5RkJcdTYzMDdcdTUzNTc6Cmh0dHBzOi8vd3d3LnczY3RlY2guY29tL3RvcGljLzIyMjZgKSk7bGV0IG89dCguLi5hKTtyZXR1cm4gby5wb3N0Y3NzUGx1Z2luPWUsby5wb3N0Y3NzVmVyc2lvbj1uZXcgVGEoKS52ZXJzaW9uLG99bGV0IHM7cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJwb3N0Y3NzIix7Z2V0KCl7cmV0dXJuIHN8fChzPW4oKSksc319KSxuLnByb2Nlc3M9ZnVuY3Rpb24oYSxvLGwpe3JldHVybiBKKFtuKGwpXSkucHJvY2VzcyhhLG8pfSxufTtKLnN0cmluZ2lmeT1GMTtKLnBhcnNlPU4xO0ouZnJvbUpTT049RDE7Si5saXN0PUwxO0ouY29tbWVudD1yPT5uZXcgdnAocik7Si5hdFJ1bGU9cj0+bmV3IHdwKHIpO0ouZGVjbD1yPT5uZXcgeHAocik7Si5ydWxlPXI9Pm5ldyBBcChyKTtKLnJvb3Q9cj0+bmV3IFNwKHIpO0ouZG9jdW1lbnQ9cj0+bmV3IGtwKHIpO0ouQ3NzU3ludGF4RXJyb3I9STE7Si5EZWNsYXJhdGlvbj14cDtKLkNvbnRhaW5lcj1QMTtKLlByb2Nlc3Nvcj1UYTtKLkRvY3VtZW50PWtwO0ouQ29tbWVudD12cDtKLldhcm5pbmc9ajE7Si5BdFJ1bGU9d3A7Si5SZXN1bHQ9QjE7Si5JbnB1dD1xMTtKLlJ1bGU9QXA7Si5Sb290PVNwO0ouTm9kZT1NMTskMS5yZWdpc3RlclBvc3Rjc3MoSik7Q3AuZXhwb3J0cz1KO0ouZGVmYXVsdD1KfSk7dmFyIHJlLGVlLFozLEozLGVJLHRJLHJJLGlJLG5JLHNJLGFJLG9JLGxJLHVJLGZJLGNJLHBJLGRJLGhJLG1JLGdJLHlJLGJJLHdJLHZJLHhJLE90PVAoKCk9Pnt1KCk7cmU9cGUoJGUoKSksZWU9cmUuZGVmYXVsdCxaMz1yZS5kZWZhdWx0LnN0cmluZ2lmeSxKMz1yZS5kZWZhdWx0LmZyb21KU09OLGVJPXJlLmRlZmF1bHQucGx1Z2luLHRJPXJlLmRlZmF1bHQucGFyc2Usckk9cmUuZGVmYXVsdC5saXN0LGlJPXJlLmRlZmF1bHQuZG9jdW1lbnQsbkk9cmUuZGVmYXVsdC5jb21tZW50LHNJPXJlLmRlZmF1bHQuYXRSdWxlLGFJPXJlLmRlZmF1bHQucnVsZSxvST1yZS5kZWZhdWx0LmRlY2wsbEk9cmUuZGVmYXVsdC5yb290LHVJPXJlLmRlZmF1bHQuQ3NzU3ludGF4RXJyb3IsZkk9cmUuZGVmYXVsdC5EZWNsYXJhdGlvbixjST1yZS5kZWZhdWx0LkNvbnRhaW5lcixwST1yZS5kZWZhdWx0LlByb2Nlc3NvcixkST1yZS5kZWZhdWx0LkRvY3VtZW50LGhJPXJlLmRlZmF1bHQuQ29tbWVudCxtST1yZS5kZWZhdWx0Lldhcm5pbmcsZ0k9cmUuZGVmYXVsdC5BdFJ1bGUseUk9cmUuZGVmYXVsdC5SZXN1bHQsYkk9cmUuZGVmYXVsdC5JbnB1dCx3ST1yZS5kZWZhdWx0LlJ1bGUsdkk9cmUuZGVmYXVsdC5Sb290LHhJPXJlLmRlZmF1bHQuTm9kZX0pO3ZhciBSYT14KChTSSxfcCk9Pnt1KCk7X3AuZXhwb3J0cz1mdW5jdGlvbihyLGUsdCxpLG4pe2ZvcihlPWUuc3BsaXQ/ZS5zcGxpdCgiLiIpOmUsaT0wO2k8ZS5sZW5ndGg7aSsrKXI9cj9yW2VbaV1dOm47cmV0dXJuIHI9PT1uP3Q6cn19KTt2YXIgUG49eCgoUm4sRXApPT57dSgpOyJ1c2Ugc3RyaWN0IjtSbi5fX2VzTW9kdWxlPSEwO1JuLmRlZmF1bHQ9VjE7ZnVuY3Rpb24gejEocil7Zm9yKHZhciBlPXIudG9Mb3dlckNhc2UoKSx0PSIiLGk9ITEsbj0wO248NiYmZVtuXSE9PXZvaWQgMDtuKyspe3ZhciBzPWUuY2hhckNvZGVBdChuKSxhPXM+PTk3JiZzPD0xMDJ8fHM+PTQ4JiZzPD01NztpZihpPXM9PT0zMiwhYSlicmVhazt0Kz1lW25dfWlmKHQubGVuZ3RoIT09MCl7dmFyIG89cGFyc2VJbnQodCwxNiksbD1vPj01NTI5NiYmbzw9NTczNDM7cmV0dXJuIGx8fG89PT0wfHxvPjExMTQxMTE/WyJcdUZGRkQiLHQubGVuZ3RoKyhpPzE6MCldOltTdHJpbmcuZnJvbUNvZGVQb2ludChvKSx0Lmxlbmd0aCsoaT8xOjApXX19dmFyIFUxPS9cXC87ZnVuY3Rpb24gVjEocil7dmFyIGU9VTEudGVzdChyKTtpZighZSlyZXR1cm4gcjtmb3IodmFyIHQ9IiIsaT0wO2k8ci5sZW5ndGg7aSsrKXtpZihyW2ldPT09IlxcIil7dmFyIG49ejEoci5zbGljZShpKzEsaSs3KSk7aWYobiE9PXZvaWQgMCl7dCs9blswXSxpKz1uWzFdO2NvbnRpbnVlfWlmKHJbaSsxXT09PSJcXCIpe3QrPSJcXCIsaSsrO2NvbnRpbnVlfXIubGVuZ3RoPT09aSsxJiYodCs9cltpXSk7Y29udGludWV9dCs9cltpXX1yZXR1cm4gdH1FcC5leHBvcnRzPVJuLmRlZmF1bHR9KTt2YXIgVHA9eCgoSW4sT3ApPT57dSgpOyJ1c2Ugc3RyaWN0IjtJbi5fX2VzTW9kdWxlPSEwO0luLmRlZmF1bHQ9SDE7ZnVuY3Rpb24gSDEocil7Zm9yKHZhciBlPWFyZ3VtZW50cy5sZW5ndGgsdD1uZXcgQXJyYXkoZT4xP2UtMTowKSxpPTE7aTxlO2krKyl0W2ktMV09YXJndW1lbnRzW2ldO2Zvcig7dC5sZW5ndGg+MDspe3ZhciBuPXQuc2hpZnQoKTtpZighcltuXSlyZXR1cm47cj1yW25dfXJldHVybiByfU9wLmV4cG9ydHM9SW4uZGVmYXVsdH0pO3ZhciBQcD14KChEbixScCk9Pnt1KCk7InVzZSBzdHJpY3QiO0RuLl9fZXNNb2R1bGU9ITA7RG4uZGVmYXVsdD1XMTtmdW5jdGlvbiBXMShyKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlPjE/ZS0xOjApLGk9MTtpPGU7aSsrKXRbaS0xXT1hcmd1bWVudHNbaV07Zm9yKDt0Lmxlbmd0aD4wOyl7dmFyIG49dC5zaGlmdCgpO3Jbbl18fChyW25dPXt9KSxyPXJbbl19fVJwLmV4cG9ydHM9RG4uZGVmYXVsdH0pO3ZhciBEcD14KChxbixJcCk9Pnt1KCk7InVzZSBzdHJpY3QiO3FuLl9fZXNNb2R1bGU9ITA7cW4uZGVmYXVsdD1HMTtmdW5jdGlvbiBHMShyKXtmb3IodmFyIGU9IiIsdD1yLmluZGV4T2YoIi8qIiksaT0wO3Q+PTA7KXtlPWUrci5zbGljZShpLHQpO3ZhciBuPXIuaW5kZXhPZigiKi8iLHQrMik7aWYobjwwKXJldHVybiBlO2k9bisyLHQ9ci5pbmRleE9mKCIvKiIsaSl9cmV0dXJuIGU9ZStyLnNsaWNlKGkpLGV9SXAuZXhwb3J0cz1xbi5kZWZhdWx0fSk7dmFyIGlpPXgocnQ9Pnt1KCk7InVzZSBzdHJpY3QiO3J0Ll9fZXNNb2R1bGU9ITA7cnQudW5lc2M9cnQuc3RyaXBDb21tZW50cz1ydC5nZXRQcm9wPXJ0LmVuc3VyZU9iamVjdD12b2lkIDA7dmFyIFExPSRuKFBuKCkpO3J0LnVuZXNjPVExLmRlZmF1bHQ7dmFyIFkxPSRuKFRwKCkpO3J0LmdldFByb3A9WTEuZGVmYXVsdDt2YXIgSzE9JG4oUHAoKSk7cnQuZW5zdXJlT2JqZWN0PUsxLmRlZmF1bHQ7dmFyIFgxPSRuKERwKCkpO3J0LnN0cmlwQ29tbWVudHM9WDEuZGVmYXVsdDtmdW5jdGlvbiAkbihyKXtyZXR1cm4gciYmci5fX2VzTW9kdWxlP3I6e2RlZmF1bHQ6cn19fSk7dmFyIGR0PXgoKG5pLExwKT0+e3UoKTsidXNlIHN0cmljdCI7bmkuX19lc01vZHVsZT0hMDtuaS5kZWZhdWx0PXZvaWQgMDt2YXIgcXA9aWkoKTtmdW5jdGlvbiAkcChyLGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgaT1lW3RdO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsaS5rZXksaSl9fWZ1bmN0aW9uIFoxKHIsZSx0KXtyZXR1cm4gZSYmJHAoci5wcm90b3R5cGUsZSksdCYmJHAocix0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSxyfXZhciBKMT1mdW5jdGlvbiByKGUsdCl7aWYodHlwZW9mIGUhPSJvYmplY3QifHxlPT09bnVsbClyZXR1cm4gZTt2YXIgaT1uZXcgZS5jb25zdHJ1Y3Rvcjtmb3IodmFyIG4gaW4gZSlpZighIWUuaGFzT3duUHJvcGVydHkobikpe3ZhciBzPWVbbl0sYT10eXBlb2YgcztuPT09InBhcmVudCImJmE9PT0ib2JqZWN0Ij90JiYoaVtuXT10KTpzIGluc3RhbmNlb2YgQXJyYXk/aVtuXT1zLm1hcChmdW5jdGlvbihvKXtyZXR1cm4gcihvLGkpfSk6aVtuXT1yKHMsaSl9cmV0dXJuIGl9LGVrPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0KXt0PT09dm9pZCAwJiYodD17fSksT2JqZWN0LmFzc2lnbih0aGlzLHQpLHRoaXMuc3BhY2VzPXRoaXMuc3BhY2VzfHx7fSx0aGlzLnNwYWNlcy5iZWZvcmU9dGhpcy5zcGFjZXMuYmVmb3JlfHwiIix0aGlzLnNwYWNlcy5hZnRlcj10aGlzLnNwYWNlcy5hZnRlcnx8IiJ9dmFyIGU9ci5wcm90b3R5cGU7cmV0dXJuIGUucmVtb3ZlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5yZW1vdmVDaGlsZCh0aGlzKSx0aGlzLnBhcmVudD12b2lkIDAsdGhpc30sZS5yZXBsYWNlV2l0aD1mdW5jdGlvbigpe2lmKHRoaXMucGFyZW50KXtmb3IodmFyIGkgaW4gYXJndW1lbnRzKXRoaXMucGFyZW50Lmluc2VydEJlZm9yZSh0aGlzLGFyZ3VtZW50c1tpXSk7dGhpcy5yZW1vdmUoKX1yZXR1cm4gdGhpc30sZS5uZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGFyZW50LmF0KHRoaXMucGFyZW50LmluZGV4KHRoaXMpKzEpfSxlLnByZXY9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wYXJlbnQuYXQodGhpcy5wYXJlbnQuaW5kZXgodGhpcyktMSl9LGUuY2xvbmU9ZnVuY3Rpb24oaSl7aT09PXZvaWQgMCYmKGk9e30pO3ZhciBuPUoxKHRoaXMpO2Zvcih2YXIgcyBpbiBpKW5bc109aVtzXTtyZXR1cm4gbn0sZS5hcHBlbmRUb1Byb3BlcnR5QW5kRXNjYXBlPWZ1bmN0aW9uKGksbixzKXt0aGlzLnJhd3N8fCh0aGlzLnJhd3M9e30pO3ZhciBhPXRoaXNbaV0sbz10aGlzLnJhd3NbaV07dGhpc1tpXT1hK24sb3x8cyE9PW4/dGhpcy5yYXdzW2ldPShvfHxhKStzOmRlbGV0ZSB0aGlzLnJhd3NbaV19LGUuc2V0UHJvcGVydHlBbmRFc2NhcGU9ZnVuY3Rpb24oaSxuLHMpe3RoaXMucmF3c3x8KHRoaXMucmF3cz17fSksdGhpc1tpXT1uLHRoaXMucmF3c1tpXT1zfSxlLnNldFByb3BlcnR5V2l0aG91dEVzY2FwZT1mdW5jdGlvbihpLG4pe3RoaXNbaV09bix0aGlzLnJhd3MmJmRlbGV0ZSB0aGlzLnJhd3NbaV19LGUuaXNBdFBvc2l0aW9uPWZ1bmN0aW9uKGksbil7aWYodGhpcy5zb3VyY2UmJnRoaXMuc291cmNlLnN0YXJ0JiZ0aGlzLnNvdXJjZS5lbmQpcmV0dXJuISh0aGlzLnNvdXJjZS5zdGFydC5saW5lPml8fHRoaXMuc291cmNlLmVuZC5saW5lPGl8fHRoaXMuc291cmNlLnN0YXJ0LmxpbmU9PT1pJiZ0aGlzLnNvdXJjZS5zdGFydC5jb2x1bW4+bnx8dGhpcy5zb3VyY2UuZW5kLmxpbmU9PT1pJiZ0aGlzLnNvdXJjZS5lbmQuY29sdW1uPG4pfSxlLnN0cmluZ2lmeVByb3BlcnR5PWZ1bmN0aW9uKGkpe3JldHVybiB0aGlzLnJhd3MmJnRoaXMucmF3c1tpXXx8dGhpc1tpXX0sZS52YWx1ZVRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLnN0cmluZ2lmeVByb3BlcnR5KCJ2YWx1ZSIpKX0sZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVyblt0aGlzLnJhd1NwYWNlQmVmb3JlLHRoaXMudmFsdWVUb1N0cmluZygpLHRoaXMucmF3U3BhY2VBZnRlcl0uam9pbigiIil9LFoxKHIsW3trZXk6InJhd1NwYWNlQmVmb3JlIixnZXQ6ZnVuY3Rpb24oKXt2YXIgaT10aGlzLnJhd3MmJnRoaXMucmF3cy5zcGFjZXMmJnRoaXMucmF3cy5zcGFjZXMuYmVmb3JlO3JldHVybiBpPT09dm9pZCAwJiYoaT10aGlzLnNwYWNlcyYmdGhpcy5zcGFjZXMuYmVmb3JlKSxpfHwiIn0sc2V0OmZ1bmN0aW9uKGkpeygwLHFwLmVuc3VyZU9iamVjdCkodGhpcywicmF3cyIsInNwYWNlcyIpLHRoaXMucmF3cy5zcGFjZXMuYmVmb3JlPWl9fSx7a2V5OiJyYXdTcGFjZUFmdGVyIixnZXQ6ZnVuY3Rpb24oKXt2YXIgaT10aGlzLnJhd3MmJnRoaXMucmF3cy5zcGFjZXMmJnRoaXMucmF3cy5zcGFjZXMuYWZ0ZXI7cmV0dXJuIGk9PT12b2lkIDAmJihpPXRoaXMuc3BhY2VzLmFmdGVyKSxpfHwiIn0sc2V0OmZ1bmN0aW9uKGkpeygwLHFwLmVuc3VyZU9iamVjdCkodGhpcywicmF3cyIsInNwYWNlcyIpLHRoaXMucmF3cy5zcGFjZXMuYWZ0ZXI9aX19XSkscn0oKTtuaS5kZWZhdWx0PWVrO0xwLmV4cG9ydHM9bmkuZGVmYXVsdH0pO3ZhciBTZT14KGllPT57dSgpOyJ1c2Ugc3RyaWN0IjtpZS5fX2VzTW9kdWxlPSEwO2llLlVOSVZFUlNBTD1pZS5UQUc9aWUuU1RSSU5HPWllLlNFTEVDVE9SPWllLlJPT1Q9aWUuUFNFVURPPWllLk5FU1RJTkc9aWUuSUQ9aWUuQ09NTUVOVD1pZS5DT01CSU5BVE9SPWllLkNMQVNTPWllLkFUVFJJQlVURT12b2lkIDA7dmFyIHRrPSJ0YWciO2llLlRBRz10azt2YXIgcms9InN0cmluZyI7aWUuU1RSSU5HPXJrO3ZhciBpaz0ic2VsZWN0b3IiO2llLlNFTEVDVE9SPWlrO3ZhciBuaz0icm9vdCI7aWUuUk9PVD1uazt2YXIgc2s9InBzZXVkbyI7aWUuUFNFVURPPXNrO3ZhciBhaz0ibmVzdGluZyI7aWUuTkVTVElORz1hazt2YXIgb2s9ImlkIjtpZS5JRD1vazt2YXIgbGs9ImNvbW1lbnQiO2llLkNPTU1FTlQ9bGs7dmFyIHVrPSJjb21iaW5hdG9yIjtpZS5DT01CSU5BVE9SPXVrO3ZhciBmaz0iY2xhc3MiO2llLkNMQVNTPWZrO3ZhciBjaz0iYXR0cmlidXRlIjtpZS5BVFRSSUJVVEU9Y2s7dmFyIHBrPSJ1bml2ZXJzYWwiO2llLlVOSVZFUlNBTD1wa30pO3ZhciBMbj14KChzaSxGcCk9Pnt1KCk7InVzZSBzdHJpY3QiO3NpLl9fZXNNb2R1bGU9ITA7c2kuZGVmYXVsdD12b2lkIDA7dmFyIGRrPW1rKGR0KCkpLGh0PWhrKFNlKCkpO2Z1bmN0aW9uIE1wKHIpe2lmKHR5cGVvZiBXZWFrTWFwIT0iZnVuY3Rpb24iKXJldHVybiBudWxsO3ZhciBlPW5ldyBXZWFrTWFwLHQ9bmV3IFdlYWtNYXA7cmV0dXJuKE1wPWZ1bmN0aW9uKG4pe3JldHVybiBuP3Q6ZX0pKHIpfWZ1bmN0aW9uIGhrKHIsZSl7aWYoIWUmJnImJnIuX19lc01vZHVsZSlyZXR1cm4gcjtpZihyPT09bnVsbHx8dHlwZW9mIHIhPSJvYmplY3QiJiZ0eXBlb2YgciE9ImZ1bmN0aW9uIilyZXR1cm57ZGVmYXVsdDpyfTt2YXIgdD1NcChlKTtpZih0JiZ0LmhhcyhyKSlyZXR1cm4gdC5nZXQocik7dmFyIGk9e30sbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7Zm9yKHZhciBzIGluIHIpaWYocyE9PSJkZWZhdWx0IiYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHIscykpe3ZhciBhPW4/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLHMpOm51bGw7YSYmKGEuZ2V0fHxhLnNldCk/T2JqZWN0LmRlZmluZVByb3BlcnR5KGkscyxhKTppW3NdPXJbc119cmV0dXJuIGkuZGVmYXVsdD1yLHQmJnQuc2V0KHIsaSksaX1mdW5jdGlvbiBtayhyKXtyZXR1cm4gciYmci5fX2VzTW9kdWxlP3I6e2RlZmF1bHQ6cn19ZnVuY3Rpb24gZ2socixlKXt2YXIgdD10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmcltTeW1ib2wuaXRlcmF0b3JdfHxyWyJAQGl0ZXJhdG9yIl07aWYodClyZXR1cm4odD10LmNhbGwocikpLm5leHQuYmluZCh0KTtpZihBcnJheS5pc0FycmF5KHIpfHwodD15ayhyKSl8fGUmJnImJnR5cGVvZiByLmxlbmd0aD09Im51bWJlciIpe3QmJihyPXQpO3ZhciBpPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGk+PXIubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTpyW2krK119fX10aHJvdyBuZXcgVHlwZUVycm9yKGBJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuCkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC5gKX1mdW5jdGlvbiB5ayhyLGUpe2lmKCEhcil7aWYodHlwZW9mIHI9PSJzdHJpbmciKXJldHVybiBOcChyLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChyKS5zbGljZSg4LC0xKTtpZih0PT09Ik9iamVjdCImJnIuY29uc3RydWN0b3ImJih0PXIuY29uc3RydWN0b3IubmFtZSksdD09PSJNYXAifHx0PT09IlNldCIpcmV0dXJuIEFycmF5LmZyb20ocik7aWYodD09PSJBcmd1bWVudHMifHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdCh0KSlyZXR1cm4gTnAocixlKX19ZnVuY3Rpb24gTnAocixlKXsoZT09bnVsbHx8ZT5yLmxlbmd0aCkmJihlPXIubGVuZ3RoKTtmb3IodmFyIHQ9MCxpPW5ldyBBcnJheShlKTt0PGU7dCsrKWlbdF09clt0XTtyZXR1cm4gaX1mdW5jdGlvbiBCcChyLGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgaT1lW3RdO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsaS5rZXksaSl9fWZ1bmN0aW9uIGJrKHIsZSx0KXtyZXR1cm4gZSYmQnAoci5wcm90b3R5cGUsZSksdCYmQnAocix0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSxyfWZ1bmN0aW9uIHdrKHIsZSl7ci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixQYShyLGUpfWZ1bmN0aW9uIFBhKHIsZSl7cmV0dXJuIFBhPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGksbil7cmV0dXJuIGkuX19wcm90b19fPW4saX0sUGEocixlKX12YXIgdms9ZnVuY3Rpb24ocil7d2soZSxyKTtmdW5jdGlvbiBlKGkpe3ZhciBuO3JldHVybiBuPXIuY2FsbCh0aGlzLGkpfHx0aGlzLG4ubm9kZXN8fChuLm5vZGVzPVtdKSxufXZhciB0PWUucHJvdG90eXBlO3JldHVybiB0LmFwcGVuZD1mdW5jdGlvbihuKXtyZXR1cm4gbi5wYXJlbnQ9dGhpcyx0aGlzLm5vZGVzLnB1c2gobiksdGhpc30sdC5wcmVwZW5kPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBhcmVudD10aGlzLHRoaXMubm9kZXMudW5zaGlmdChuKSx0aGlzfSx0LmF0PWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLm5vZGVzW25dfSx0LmluZGV4PWZ1bmN0aW9uKG4pe3JldHVybiB0eXBlb2Ygbj09Im51bWJlciI/bjp0aGlzLm5vZGVzLmluZGV4T2Yobil9LHQucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24obil7bj10aGlzLmluZGV4KG4pLHRoaXMuYXQobikucGFyZW50PXZvaWQgMCx0aGlzLm5vZGVzLnNwbGljZShuLDEpO3ZhciBzO2Zvcih2YXIgYSBpbiB0aGlzLmluZGV4ZXMpcz10aGlzLmluZGV4ZXNbYV0scz49biYmKHRoaXMuaW5kZXhlc1thXT1zLTEpO3JldHVybiB0aGlzfSx0LnJlbW92ZUFsbD1mdW5jdGlvbigpe2Zvcih2YXIgbj1nayh0aGlzLm5vZGVzKSxzOyEocz1uKCkpLmRvbmU7KXt2YXIgYT1zLnZhbHVlO2EucGFyZW50PXZvaWQgMH1yZXR1cm4gdGhpcy5ub2Rlcz1bXSx0aGlzfSx0LmVtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVtb3ZlQWxsKCl9LHQuaW5zZXJ0QWZ0ZXI9ZnVuY3Rpb24obixzKXtzLnBhcmVudD10aGlzO3ZhciBhPXRoaXMuaW5kZXgobik7dGhpcy5ub2Rlcy5zcGxpY2UoYSsxLDAscykscy5wYXJlbnQ9dGhpczt2YXIgbztmb3IodmFyIGwgaW4gdGhpcy5pbmRleGVzKW89dGhpcy5pbmRleGVzW2xdLGE8PW8mJih0aGlzLmluZGV4ZXNbbF09bysxKTtyZXR1cm4gdGhpc30sdC5pbnNlcnRCZWZvcmU9ZnVuY3Rpb24obixzKXtzLnBhcmVudD10aGlzO3ZhciBhPXRoaXMuaW5kZXgobik7dGhpcy5ub2Rlcy5zcGxpY2UoYSwwLHMpLHMucGFyZW50PXRoaXM7dmFyIG87Zm9yKHZhciBsIGluIHRoaXMuaW5kZXhlcylvPXRoaXMuaW5kZXhlc1tsXSxvPD1hJiYodGhpcy5pbmRleGVzW2xdPW8rMSk7cmV0dXJuIHRoaXN9LHQuX2ZpbmRDaGlsZEF0UG9zaXRpb249ZnVuY3Rpb24obixzKXt2YXIgYT12b2lkIDA7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihvKXtpZihvLmF0UG9zaXRpb24pe3ZhciBsPW8uYXRQb3NpdGlvbihuLHMpO2lmKGwpcmV0dXJuIGE9bCwhMX1lbHNlIGlmKG8uaXNBdFBvc2l0aW9uKG4scykpcmV0dXJuIGE9bywhMX0pLGF9LHQuYXRQb3NpdGlvbj1mdW5jdGlvbihuLHMpe2lmKHRoaXMuaXNBdFBvc2l0aW9uKG4scykpcmV0dXJuIHRoaXMuX2ZpbmRDaGlsZEF0UG9zaXRpb24obixzKXx8dGhpc30sdC5faW5mZXJFbmRQb3NpdGlvbj1mdW5jdGlvbigpe3RoaXMubGFzdCYmdGhpcy5sYXN0LnNvdXJjZSYmdGhpcy5sYXN0LnNvdXJjZS5lbmQmJih0aGlzLnNvdXJjZT10aGlzLnNvdXJjZXx8e30sdGhpcy5zb3VyY2UuZW5kPXRoaXMuc291cmNlLmVuZHx8e30sT2JqZWN0LmFzc2lnbih0aGlzLnNvdXJjZS5lbmQsdGhpcy5sYXN0LnNvdXJjZS5lbmQpKX0sdC5lYWNoPWZ1bmN0aW9uKG4pe3RoaXMubGFzdEVhY2h8fCh0aGlzLmxhc3RFYWNoPTApLHRoaXMuaW5kZXhlc3x8KHRoaXMuaW5kZXhlcz17fSksdGhpcy5sYXN0RWFjaCsrO3ZhciBzPXRoaXMubGFzdEVhY2g7aWYodGhpcy5pbmRleGVzW3NdPTAsISF0aGlzLmxlbmd0aCl7Zm9yKHZhciBhLG87dGhpcy5pbmRleGVzW3NdPHRoaXMubGVuZ3RoJiYoYT10aGlzLmluZGV4ZXNbc10sbz1uKHRoaXMuYXQoYSksYSksbyE9PSExKTspdGhpcy5pbmRleGVzW3NdKz0xO2lmKGRlbGV0ZSB0aGlzLmluZGV4ZXNbc10sbz09PSExKXJldHVybiExfX0sdC53YWxrPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24ocyxhKXt2YXIgbz1uKHMsYSk7aWYobyE9PSExJiZzLmxlbmd0aCYmKG89cy53YWxrKG4pKSxvPT09ITEpcmV0dXJuITF9KX0sdC53YWxrQXR0cmlidXRlcz1mdW5jdGlvbihuKXt2YXIgcz10aGlzO3JldHVybiB0aGlzLndhbGsoZnVuY3Rpb24oYSl7aWYoYS50eXBlPT09aHQuQVRUUklCVVRFKXJldHVybiBuLmNhbGwocyxhKX0pfSx0LndhbGtDbGFzc2VzPWZ1bmN0aW9uKG4pe3ZhciBzPXRoaXM7cmV0dXJuIHRoaXMud2FsayhmdW5jdGlvbihhKXtpZihhLnR5cGU9PT1odC5DTEFTUylyZXR1cm4gbi5jYWxsKHMsYSl9KX0sdC53YWxrQ29tYmluYXRvcnM9ZnVuY3Rpb24obil7dmFyIHM9dGhpcztyZXR1cm4gdGhpcy53YWxrKGZ1bmN0aW9uKGEpe2lmKGEudHlwZT09PWh0LkNPTUJJTkFUT1IpcmV0dXJuIG4uY2FsbChzLGEpfSl9LHQud2Fsa0NvbW1lbnRzPWZ1bmN0aW9uKG4pe3ZhciBzPXRoaXM7cmV0dXJuIHRoaXMud2FsayhmdW5jdGlvbihhKXtpZihhLnR5cGU9PT1odC5DT01NRU5UKXJldHVybiBuLmNhbGwocyxhKX0pfSx0LndhbGtJZHM9ZnVuY3Rpb24obil7dmFyIHM9dGhpcztyZXR1cm4gdGhpcy53YWxrKGZ1bmN0aW9uKGEpe2lmKGEudHlwZT09PWh0LklEKXJldHVybiBuLmNhbGwocyxhKX0pfSx0LndhbGtOZXN0aW5nPWZ1bmN0aW9uKG4pe3ZhciBzPXRoaXM7cmV0dXJuIHRoaXMud2FsayhmdW5jdGlvbihhKXtpZihhLnR5cGU9PT1odC5ORVNUSU5HKXJldHVybiBuLmNhbGwocyxhKX0pfSx0LndhbGtQc2V1ZG9zPWZ1bmN0aW9uKG4pe3ZhciBzPXRoaXM7cmV0dXJuIHRoaXMud2FsayhmdW5jdGlvbihhKXtpZihhLnR5cGU9PT1odC5QU0VVRE8pcmV0dXJuIG4uY2FsbChzLGEpfSl9LHQud2Fsa1RhZ3M9ZnVuY3Rpb24obil7dmFyIHM9dGhpcztyZXR1cm4gdGhpcy53YWxrKGZ1bmN0aW9uKGEpe2lmKGEudHlwZT09PWh0LlRBRylyZXR1cm4gbi5jYWxsKHMsYSl9KX0sdC53YWxrVW5pdmVyc2Fscz1mdW5jdGlvbihuKXt2YXIgcz10aGlzO3JldHVybiB0aGlzLndhbGsoZnVuY3Rpb24oYSl7aWYoYS50eXBlPT09aHQuVU5JVkVSU0FMKXJldHVybiBuLmNhbGwocyxhKX0pfSx0LnNwbGl0PWZ1bmN0aW9uKG4pe3ZhciBzPXRoaXMsYT1bXTtyZXR1cm4gdGhpcy5yZWR1Y2UoZnVuY3Rpb24obyxsLGMpe3ZhciBmPW4uY2FsbChzLGwpO3JldHVybiBhLnB1c2gobCksZj8oby5wdXNoKGEpLGE9W10pOmM9PT1zLmxlbmd0aC0xJiZvLnB1c2goYSksb30sW10pfSx0Lm1hcD1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5ub2Rlcy5tYXAobil9LHQucmVkdWNlPWZ1bmN0aW9uKG4scyl7cmV0dXJuIHRoaXMubm9kZXMucmVkdWNlKG4scyl9LHQuZXZlcnk9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMubm9kZXMuZXZlcnkobil9LHQuc29tZT1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5ub2Rlcy5zb21lKG4pfSx0LmZpbHRlcj1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5ub2Rlcy5maWx0ZXIobil9LHQuc29ydD1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5ub2Rlcy5zb3J0KG4pfSx0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKFN0cmluZykuam9pbigiIil9LGJrKGUsW3trZXk6ImZpcnN0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hdCgwKX19LHtrZXk6Imxhc3QiLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmF0KHRoaXMubGVuZ3RoLTEpfX0se2tleToibGVuZ3RoIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ub2Rlcy5sZW5ndGh9fV0pLGV9KGRrLmRlZmF1bHQpO3NpLmRlZmF1bHQ9dms7RnAuZXhwb3J0cz1zaS5kZWZhdWx0fSk7dmFyIERhPXgoKGFpLHpwKT0+e3UoKTsidXNlIHN0cmljdCI7YWkuX19lc01vZHVsZT0hMDthaS5kZWZhdWx0PXZvaWQgMDt2YXIgeGs9U2soTG4oKSksa2s9U2UoKTtmdW5jdGlvbiBTayhyKXtyZXR1cm4gciYmci5fX2VzTW9kdWxlP3I6e2RlZmF1bHQ6cn19ZnVuY3Rpb24ganAocixlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIGk9ZVt0XTtpLmVudW1lcmFibGU9aS5lbnVtZXJhYmxlfHwhMSxpLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gaSYmKGkud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGkua2V5LGkpfX1mdW5jdGlvbiBBayhyLGUsdCl7cmV0dXJuIGUmJmpwKHIucHJvdG90eXBlLGUpLHQmJmpwKHIsdCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSkscn1mdW5jdGlvbiBDayhyLGUpe3IucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZS5wcm90b3R5cGUpLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsSWEocixlKX1mdW5jdGlvbiBJYShyLGUpe3JldHVybiBJYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihpLG4pe3JldHVybiBpLl9fcHJvdG9fXz1uLGl9LElhKHIsZSl9dmFyIF9rPWZ1bmN0aW9uKHIpe0NrKGUscik7ZnVuY3Rpb24gZShpKXt2YXIgbjtyZXR1cm4gbj1yLmNhbGwodGhpcyxpKXx8dGhpcyxuLnR5cGU9a2suUk9PVCxufXZhciB0PWUucHJvdG90eXBlO3JldHVybiB0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIG49dGhpcy5yZWR1Y2UoZnVuY3Rpb24ocyxhKXtyZXR1cm4gcy5wdXNoKFN0cmluZyhhKSksc30sW10pLmpvaW4oIiwiKTtyZXR1cm4gdGhpcy50cmFpbGluZ0NvbW1hP24rIiwiOm59LHQuZXJyb3I9ZnVuY3Rpb24obixzKXtyZXR1cm4gdGhpcy5fZXJyb3I/dGhpcy5fZXJyb3IobixzKTpuZXcgRXJyb3Iobil9LEFrKGUsW3trZXk6ImVycm9yR2VuZXJhdG9yIixzZXQ6ZnVuY3Rpb24obil7dGhpcy5fZXJyb3I9bn19XSksZX0oeGsuZGVmYXVsdCk7YWkuZGVmYXVsdD1fazt6cC5leHBvcnRzPWFpLmRlZmF1bHR9KTt2YXIgJGE9eCgob2ksVXApPT57dSgpOyJ1c2Ugc3RyaWN0IjtvaS5fX2VzTW9kdWxlPSEwO29pLmRlZmF1bHQ9dm9pZCAwO3ZhciBFaz1UayhMbigpKSxPaz1TZSgpO2Z1bmN0aW9uIFRrKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1mdW5jdGlvbiBSayhyLGUpe3IucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZS5wcm90b3R5cGUpLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIscWEocixlKX1mdW5jdGlvbiBxYShyLGUpe3JldHVybiBxYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihpLG4pe3JldHVybiBpLl9fcHJvdG9fXz1uLGl9LHFhKHIsZSl9dmFyIFBrPWZ1bmN0aW9uKHIpe1JrKGUscik7ZnVuY3Rpb24gZSh0KXt2YXIgaTtyZXR1cm4gaT1yLmNhbGwodGhpcyx0KXx8dGhpcyxpLnR5cGU9T2suU0VMRUNUT1IsaX1yZXR1cm4gZX0oRWsuZGVmYXVsdCk7b2kuZGVmYXVsdD1QaztVcC5leHBvcnRzPW9pLmRlZmF1bHR9KTt2YXIgTW49eCgoX0ksVnApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgSWs9e30sRGs9SWsuaGFzT3duUHJvcGVydHkscWs9ZnVuY3Rpb24oZSx0KXtpZighZSlyZXR1cm4gdDt2YXIgaT17fTtmb3IodmFyIG4gaW4gdClpW25dPURrLmNhbGwoZSxuKT9lW25dOnRbbl07cmV0dXJuIGl9LCRrPS9bIC0sXC5cLzotQFxbLVxeYFx7LX5dLyxMaz0vWyAtLFwuXC86LUBcW1xdXF5gXHstfl0vLE1rPS8oXnxcXCspPyhcXFtBLUYwLTldezEsNn0pXHgyMCg/IVthLWZBLUYwLTlceDIwXSkvZyxMYT1mdW5jdGlvbiByKGUsdCl7dD1xayh0LHIub3B0aW9ucyksdC5xdW90ZXMhPSJzaW5nbGUiJiZ0LnF1b3RlcyE9ImRvdWJsZSImJih0LnF1b3Rlcz0ic2luZ2xlIik7Zm9yKHZhciBpPXQucXVvdGVzPT0iZG91YmxlIj8nIic6IiciLG49dC5pc0lkZW50aWZpZXIscz1lLmNoYXJBdCgwKSxhPSIiLG89MCxsPWUubGVuZ3RoO288bDspe3ZhciBjPWUuY2hhckF0KG8rKyksZj1jLmNoYXJDb2RlQXQoKSxkPXZvaWQgMDtpZihmPDMyfHxmPjEyNil7aWYoZj49NTUyOTYmJmY8PTU2MzE5JiZvPGwpe3ZhciBwPWUuY2hhckNvZGVBdChvKyspOyhwJjY0NTEyKT09NTYzMjA/Zj0oKGYmMTAyMyk8PDEwKSsocCYxMDIzKSs2NTUzNjpvLS19ZD0iXFwiK2YudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkrIiAifWVsc2UgdC5lc2NhcGVFdmVyeXRoaW5nPyRrLnRlc3QoYyk/ZD0iXFwiK2M6ZD0iXFwiK2YudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkrIiAiOi9bXHRcblxmXHJceDBCXS8udGVzdChjKT9kPSJcXCIrZi50b1N0cmluZygxNikudG9VcHBlckNhc2UoKSsiICI6Yz09IlxcInx8IW4mJihjPT0nIicmJmk9PWN8fGM9PSInIiYmaT09Yyl8fG4mJkxrLnRlc3QoYyk/ZD0iXFwiK2M6ZD1jO2ErPWR9cmV0dXJuIG4mJigvXi1bLVxkXS8udGVzdChhKT9hPSJcXC0iK2Euc2xpY2UoMSk6L1xkLy50ZXN0KHMpJiYoYT0iXFwzIitzKyIgIithLnNsaWNlKDEpKSksYT1hLnJlcGxhY2UoTWssZnVuY3Rpb24oaCxiLHYpe3JldHVybiBiJiZiLmxlbmd0aCUyP2g6KGJ8fCIiKSt2fSksIW4mJnQud3JhcD9pK2EraTphfTtMYS5vcHRpb25zPXtlc2NhcGVFdmVyeXRoaW5nOiExLGlzSWRlbnRpZmllcjohMSxxdW90ZXM6InNpbmdsZSIsd3JhcDohMX07TGEudmVyc2lvbj0iMy4wLjAiO1ZwLmV4cG9ydHM9TGF9KTt2YXIgTmE9eCgobGksR3ApPT57dSgpOyJ1c2Ugc3RyaWN0IjtsaS5fX2VzTW9kdWxlPSEwO2xpLmRlZmF1bHQ9dm9pZCAwO3ZhciBOaz1IcChNbigpKSxCaz1paSgpLEZrPUhwKGR0KCkpLGprPVNlKCk7ZnVuY3Rpb24gSHAocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIFdwKHIsZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBpPWVbdF07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkocixpLmtleSxpKX19ZnVuY3Rpb24gemsocixlLHQpe3JldHVybiBlJiZXcChyLnByb3RvdHlwZSxlKSx0JiZXcChyLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHJ9ZnVuY3Rpb24gVWsocixlKXtyLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLE1hKHIsZSl9ZnVuY3Rpb24gTWEocixlKXtyZXR1cm4gTWE9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24oaSxuKXtyZXR1cm4gaS5fX3Byb3RvX189bixpfSxNYShyLGUpfXZhciBWaz1mdW5jdGlvbihyKXtVayhlLHIpO2Z1bmN0aW9uIGUoaSl7dmFyIG47cmV0dXJuIG49ci5jYWxsKHRoaXMsaSl8fHRoaXMsbi50eXBlPWprLkNMQVNTLG4uX2NvbnN0cnVjdGVkPSEwLG59dmFyIHQ9ZS5wcm90b3R5cGU7cmV0dXJuIHQudmFsdWVUb1N0cmluZz1mdW5jdGlvbigpe3JldHVybiIuIityLnByb3RvdHlwZS52YWx1ZVRvU3RyaW5nLmNhbGwodGhpcyl9LHprKGUsW3trZXk6InZhbHVlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fdmFsdWV9LHNldDpmdW5jdGlvbihuKXtpZih0aGlzLl9jb25zdHJ1Y3RlZCl7dmFyIHM9KDAsTmsuZGVmYXVsdCkobix7aXNJZGVudGlmaWVyOiEwfSk7cyE9PW4/KCgwLEJrLmVuc3VyZU9iamVjdCkodGhpcywicmF3cyIpLHRoaXMucmF3cy52YWx1ZT1zKTp0aGlzLnJhd3MmJmRlbGV0ZSB0aGlzLnJhd3MudmFsdWV9dGhpcy5fdmFsdWU9bn19XSksZX0oRmsuZGVmYXVsdCk7bGkuZGVmYXVsdD1WaztHcC5leHBvcnRzPWxpLmRlZmF1bHR9KTt2YXIgRmE9eCgodWksUXApPT57dSgpOyJ1c2Ugc3RyaWN0Ijt1aS5fX2VzTW9kdWxlPSEwO3VpLmRlZmF1bHQ9dm9pZCAwO3ZhciBIaz1HayhkdCgpKSxXaz1TZSgpO2Z1bmN0aW9uIEdrKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1mdW5jdGlvbiBRayhyLGUpe3IucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZS5wcm90b3R5cGUpLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsQmEocixlKX1mdW5jdGlvbiBCYShyLGUpe3JldHVybiBCYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihpLG4pe3JldHVybiBpLl9fcHJvdG9fXz1uLGl9LEJhKHIsZSl9dmFyIFlrPWZ1bmN0aW9uKHIpe1FrKGUscik7ZnVuY3Rpb24gZSh0KXt2YXIgaTtyZXR1cm4gaT1yLmNhbGwodGhpcyx0KXx8dGhpcyxpLnR5cGU9V2suQ09NTUVOVCxpfXJldHVybiBlfShIay5kZWZhdWx0KTt1aS5kZWZhdWx0PVlrO1FwLmV4cG9ydHM9dWkuZGVmYXVsdH0pO3ZhciB6YT14KChmaSxZcCk9Pnt1KCk7InVzZSBzdHJpY3QiO2ZpLl9fZXNNb2R1bGU9ITA7ZmkuZGVmYXVsdD12b2lkIDA7dmFyIEtrPVprKGR0KCkpLFhrPVNlKCk7ZnVuY3Rpb24gWmsocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIEprKHIsZSl7ci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixqYShyLGUpfWZ1bmN0aW9uIGphKHIsZSl7cmV0dXJuIGphPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGksbil7cmV0dXJuIGkuX19wcm90b19fPW4saX0samEocixlKX12YXIgZVM9ZnVuY3Rpb24ocil7SmsoZSxyKTtmdW5jdGlvbiBlKGkpe3ZhciBuO3JldHVybiBuPXIuY2FsbCh0aGlzLGkpfHx0aGlzLG4udHlwZT1Yay5JRCxufXZhciB0PWUucHJvdG90eXBlO3JldHVybiB0LnZhbHVlVG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iIyIrci5wcm90b3R5cGUudmFsdWVUb1N0cmluZy5jYWxsKHRoaXMpfSxlfShLay5kZWZhdWx0KTtmaS5kZWZhdWx0PWVTO1lwLmV4cG9ydHM9ZmkuZGVmYXVsdH0pO3ZhciBObj14KChjaSxacCk9Pnt1KCk7InVzZSBzdHJpY3QiO2NpLl9fZXNNb2R1bGU9ITA7Y2kuZGVmYXVsdD12b2lkIDA7dmFyIHRTPUtwKE1uKCkpLHJTPWlpKCksaVM9S3AoZHQoKSk7ZnVuY3Rpb24gS3Aocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIFhwKHIsZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBpPWVbdF07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkocixpLmtleSxpKX19ZnVuY3Rpb24gblMocixlLHQpe3JldHVybiBlJiZYcChyLnByb3RvdHlwZSxlKSx0JiZYcChyLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHJ9ZnVuY3Rpb24gc1MocixlKXtyLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLFVhKHIsZSl9ZnVuY3Rpb24gVWEocixlKXtyZXR1cm4gVWE9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24oaSxuKXtyZXR1cm4gaS5fX3Byb3RvX189bixpfSxVYShyLGUpfXZhciBhUz1mdW5jdGlvbihyKXtzUyhlLHIpO2Z1bmN0aW9uIGUoKXtyZXR1cm4gci5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9dmFyIHQ9ZS5wcm90b3R5cGU7cmV0dXJuIHQucXVhbGlmaWVkTmFtZT1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5uYW1lc3BhY2U/dGhpcy5uYW1lc3BhY2VTdHJpbmcrInwiK246bn0sdC52YWx1ZVRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucXVhbGlmaWVkTmFtZShyLnByb3RvdHlwZS52YWx1ZVRvU3RyaW5nLmNhbGwodGhpcykpfSxuUyhlLFt7a2V5OiJuYW1lc3BhY2UiLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9uYW1lc3BhY2V9LHNldDpmdW5jdGlvbihuKXtpZihuPT09ITB8fG49PT0iKiJ8fG49PT0iJiIpe3RoaXMuX25hbWVzcGFjZT1uLHRoaXMucmF3cyYmZGVsZXRlIHRoaXMucmF3cy5uYW1lc3BhY2U7cmV0dXJufXZhciBzPSgwLHRTLmRlZmF1bHQpKG4se2lzSWRlbnRpZmllcjohMH0pO3RoaXMuX25hbWVzcGFjZT1uLHMhPT1uPygoMCxyUy5lbnN1cmVPYmplY3QpKHRoaXMsInJhd3MiKSx0aGlzLnJhd3MubmFtZXNwYWNlPXMpOnRoaXMucmF3cyYmZGVsZXRlIHRoaXMucmF3cy5uYW1lc3BhY2V9fSx7a2V5OiJucyIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX25hbWVzcGFjZX0sc2V0OmZ1bmN0aW9uKG4pe3RoaXMubmFtZXNwYWNlPW59fSx7a2V5OiJuYW1lc3BhY2VTdHJpbmciLGdldDpmdW5jdGlvbigpe2lmKHRoaXMubmFtZXNwYWNlKXt2YXIgbj10aGlzLnN0cmluZ2lmeVByb3BlcnR5KCJuYW1lc3BhY2UiKTtyZXR1cm4gbj09PSEwPyIiOm59ZWxzZSByZXR1cm4iIn19XSksZX0oaVMuZGVmYXVsdCk7Y2kuZGVmYXVsdD1hUztacC5leHBvcnRzPWNpLmRlZmF1bHR9KTt2YXIgSGE9eCgocGksSnApPT57dSgpOyJ1c2Ugc3RyaWN0IjtwaS5fX2VzTW9kdWxlPSEwO3BpLmRlZmF1bHQ9dm9pZCAwO3ZhciBvUz11UyhObigpKSxsUz1TZSgpO2Z1bmN0aW9uIHVTKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1mdW5jdGlvbiBmUyhyLGUpe3IucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZS5wcm90b3R5cGUpLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsVmEocixlKX1mdW5jdGlvbiBWYShyLGUpe3JldHVybiBWYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihpLG4pe3JldHVybiBpLl9fcHJvdG9fXz1uLGl9LFZhKHIsZSl9dmFyIGNTPWZ1bmN0aW9uKHIpe2ZTKGUscik7ZnVuY3Rpb24gZSh0KXt2YXIgaTtyZXR1cm4gaT1yLmNhbGwodGhpcyx0KXx8dGhpcyxpLnR5cGU9bFMuVEFHLGl9cmV0dXJuIGV9KG9TLmRlZmF1bHQpO3BpLmRlZmF1bHQ9Y1M7SnAuZXhwb3J0cz1waS5kZWZhdWx0fSk7dmFyIEdhPXgoKGRpLGVkKT0+e3UoKTsidXNlIHN0cmljdCI7ZGkuX19lc01vZHVsZT0hMDtkaS5kZWZhdWx0PXZvaWQgMDt2YXIgcFM9aFMoZHQoKSksZFM9U2UoKTtmdW5jdGlvbiBoUyhyKXtyZXR1cm4gciYmci5fX2VzTW9kdWxlP3I6e2RlZmF1bHQ6cn19ZnVuY3Rpb24gbVMocixlKXtyLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLFdhKHIsZSl9ZnVuY3Rpb24gV2EocixlKXtyZXR1cm4gV2E9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24oaSxuKXtyZXR1cm4gaS5fX3Byb3RvX189bixpfSxXYShyLGUpfXZhciBnUz1mdW5jdGlvbihyKXttUyhlLHIpO2Z1bmN0aW9uIGUodCl7dmFyIGk7cmV0dXJuIGk9ci5jYWxsKHRoaXMsdCl8fHRoaXMsaS50eXBlPWRTLlNUUklORyxpfXJldHVybiBlfShwUy5kZWZhdWx0KTtkaS5kZWZhdWx0PWdTO2VkLmV4cG9ydHM9ZGkuZGVmYXVsdH0pO3ZhciBZYT14KChoaSx0ZCk9Pnt1KCk7InVzZSBzdHJpY3QiO2hpLl9fZXNNb2R1bGU9ITA7aGkuZGVmYXVsdD12b2lkIDA7dmFyIHlTPXdTKExuKCkpLGJTPVNlKCk7ZnVuY3Rpb24gd1Mocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIHZTKHIsZSl7ci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixRYShyLGUpfWZ1bmN0aW9uIFFhKHIsZSl7cmV0dXJuIFFhPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGksbil7cmV0dXJuIGkuX19wcm90b19fPW4saX0sUWEocixlKX12YXIgeFM9ZnVuY3Rpb24ocil7dlMoZSxyKTtmdW5jdGlvbiBlKGkpe3ZhciBuO3JldHVybiBuPXIuY2FsbCh0aGlzLGkpfHx0aGlzLG4udHlwZT1iUy5QU0VVRE8sbn12YXIgdD1lLnByb3RvdHlwZTtyZXR1cm4gdC50b1N0cmluZz1mdW5jdGlvbigpe3ZhciBuPXRoaXMubGVuZ3RoPyIoIit0aGlzLm1hcChTdHJpbmcpLmpvaW4oIiwiKSsiKSI6IiI7cmV0dXJuW3RoaXMucmF3U3BhY2VCZWZvcmUsdGhpcy5zdHJpbmdpZnlQcm9wZXJ0eSgidmFsdWUiKSxuLHRoaXMucmF3U3BhY2VBZnRlcl0uam9pbigiIil9LGV9KHlTLmRlZmF1bHQpO2hpLmRlZmF1bHQ9eFM7dGQuZXhwb3J0cz1oaS5kZWZhdWx0fSk7dmFyIEJuPXt9O0dlKEJuLHtkZXByZWNhdGU6KCk9PmtTfSk7ZnVuY3Rpb24ga1Mocil7cmV0dXJuIHJ9dmFyIEZuPVAoKCk9Pnt1KCl9KTt2YXIgaWQ9eCgoRUkscmQpPT57dSgpO3JkLmV4cG9ydHM9KEZuKCksQm4pLmRlcHJlY2F0ZX0pO3ZhciB0bz14KHlpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt5aS5fX2VzTW9kdWxlPSEwO3lpLmRlZmF1bHQ9dm9pZCAwO3lpLnVuZXNjYXBlVmFsdWU9SmE7dmFyIG1pPVhhKE1uKCkpLFNTPVhhKFBuKCkpLEFTPVhhKE5uKCkpLENTPVNlKCksS2E7ZnVuY3Rpb24gWGEocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIG5kKHIsZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBpPWVbdF07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkocixpLmtleSxpKX19ZnVuY3Rpb24gX1MocixlLHQpe3JldHVybiBlJiZuZChyLnByb3RvdHlwZSxlKSx0JiZuZChyLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLHJ9ZnVuY3Rpb24gRVMocixlKXtyLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKGUucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLFphKHIsZSl9ZnVuY3Rpb24gWmEocixlKXtyZXR1cm4gWmE9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24oaSxuKXtyZXR1cm4gaS5fX3Byb3RvX189bixpfSxaYShyLGUpfXZhciBnaT1pZCgpLE9TPS9eKCd8IikoW15dKilcMSQvLFRTPWdpKGZ1bmN0aW9uKCl7fSwiQXNzaWduaW5nIGFuIGF0dHJpYnV0ZSBhIHZhbHVlIGNvbnRhaW5pbmcgY2hhcmFjdGVycyB0aGF0IG1pZ2h0IG5lZWQgdG8gYmUgZXNjYXBlZCBpcyBkZXByZWNhdGVkLiBDYWxsIGF0dHJpYnV0ZS5zZXRWYWx1ZSgpIGluc3RlYWQuIiksUlM9Z2koZnVuY3Rpb24oKXt9LCJBc3NpZ25pbmcgYXR0ci5xdW90ZWQgaXMgZGVwcmVjYXRlZCBhbmQgaGFzIG5vIGVmZmVjdC4gQXNzaWduIHRvIGF0dHIucXVvdGVNYXJrIGluc3RlYWQuIiksUFM9Z2koZnVuY3Rpb24oKXt9LCJDb25zdHJ1Y3RpbmcgYW4gQXR0cmlidXRlIHNlbGVjdG9yIHdpdGggYSB2YWx1ZSB3aXRob3V0IHNwZWNpZnlpbmcgcXVvdGVNYXJrIGlzIGRlcHJlY2F0ZWQuIE5vdGU6IFRoZSB2YWx1ZSBzaG91bGQgYmUgdW5lc2NhcGVkIG5vdy4iKTtmdW5jdGlvbiBKYShyKXt2YXIgZT0hMSx0PW51bGwsaT1yLG49aS5tYXRjaChPUyk7cmV0dXJuIG4mJih0PW5bMV0saT1uWzJdKSxpPSgwLFNTLmRlZmF1bHQpKGkpLGkhPT1yJiYoZT0hMCkse2RlcHJlY2F0ZWRVc2FnZTplLHVuZXNjYXBlZDppLHF1b3RlTWFyazp0fX1mdW5jdGlvbiBJUyhyKXtpZihyLnF1b3RlTWFyayE9PXZvaWQgMHx8ci52YWx1ZT09PXZvaWQgMClyZXR1cm4gcjtQUygpO3ZhciBlPUphKHIudmFsdWUpLHQ9ZS5xdW90ZU1hcmssaT1lLnVuZXNjYXBlZDtyZXR1cm4gci5yYXdzfHwoci5yYXdzPXt9KSxyLnJhd3MudmFsdWU9PT12b2lkIDAmJihyLnJhd3MudmFsdWU9ci52YWx1ZSksci52YWx1ZT1pLHIucXVvdGVNYXJrPXQscn12YXIgam49ZnVuY3Rpb24ocil7RVMoZSxyKTtmdW5jdGlvbiBlKGkpe3ZhciBuO3JldHVybiBpPT09dm9pZCAwJiYoaT17fSksbj1yLmNhbGwodGhpcyxJUyhpKSl8fHRoaXMsbi50eXBlPUNTLkFUVFJJQlVURSxuLnJhd3M9bi5yYXdzfHx7fSxPYmplY3QuZGVmaW5lUHJvcGVydHkobi5yYXdzLCJ1bnF1b3RlZCIse2dldDpnaShmdW5jdGlvbigpe3JldHVybiBuLnZhbHVlfSwiYXR0ci5yYXdzLnVucXVvdGVkIGlzIGRlcHJlY2F0ZWQuIENhbGwgYXR0ci52YWx1ZSBpbnN0ZWFkLiIpLHNldDpnaShmdW5jdGlvbigpe3JldHVybiBuLnZhbHVlfSwiU2V0dGluZyBhdHRyLnJhd3MudW5xdW90ZWQgaXMgZGVwcmVjYXRlZCBhbmQgaGFzIG5vIGVmZmVjdC4gYXR0ci52YWx1ZSBpcyB1bmVzY2FwZWQgYnkgZGVmYXVsdCBub3cuIil9KSxuLl9jb25zdHJ1Y3RlZD0hMCxufXZhciB0PWUucHJvdG90eXBlO3JldHVybiB0LmdldFF1b3RlZFZhbHVlPWZ1bmN0aW9uKG4pe249PT12b2lkIDAmJihuPXt9KTt2YXIgcz10aGlzLl9kZXRlcm1pbmVRdW90ZU1hcmsobiksYT1lb1tzXSxvPSgwLG1pLmRlZmF1bHQpKHRoaXMuX3ZhbHVlLGEpO3JldHVybiBvfSx0Ll9kZXRlcm1pbmVRdW90ZU1hcms9ZnVuY3Rpb24obil7cmV0dXJuIG4uc21hcnQ/dGhpcy5zbWFydFF1b3RlTWFyayhuKTp0aGlzLnByZWZlcnJlZFF1b3RlTWFyayhuKX0sdC5zZXRWYWx1ZT1mdW5jdGlvbihuLHMpe3M9PT12b2lkIDAmJihzPXt9KSx0aGlzLl92YWx1ZT1uLHRoaXMuX3F1b3RlTWFyaz10aGlzLl9kZXRlcm1pbmVRdW90ZU1hcmsocyksdGhpcy5fc3luY1Jhd1ZhbHVlKCl9LHQuc21hcnRRdW90ZU1hcms9ZnVuY3Rpb24obil7dmFyIHM9dGhpcy52YWx1ZSxhPXMucmVwbGFjZSgvW14nXS9nLCIiKS5sZW5ndGgsbz1zLnJlcGxhY2UoL1teIl0vZywiIikubGVuZ3RoO2lmKGErbz09PTApe3ZhciBsPSgwLG1pLmRlZmF1bHQpKHMse2lzSWRlbnRpZmllcjohMH0pO2lmKGw9PT1zKXJldHVybiBlLk5PX1FVT1RFO3ZhciBjPXRoaXMucHJlZmVycmVkUXVvdGVNYXJrKG4pO2lmKGM9PT1lLk5PX1FVT1RFKXt2YXIgZj10aGlzLnF1b3RlTWFya3x8bi5xdW90ZU1hcmt8fGUuRE9VQkxFX1FVT1RFLGQ9ZW9bZl0scD0oMCxtaS5kZWZhdWx0KShzLGQpO2lmKHAubGVuZ3RoPGwubGVuZ3RoKXJldHVybiBmfXJldHVybiBjfWVsc2UgcmV0dXJuIG89PT1hP3RoaXMucHJlZmVycmVkUXVvdGVNYXJrKG4pOm88YT9lLkRPVUJMRV9RVU9URTplLlNJTkdMRV9RVU9URX0sdC5wcmVmZXJyZWRRdW90ZU1hcms9ZnVuY3Rpb24obil7dmFyIHM9bi5wcmVmZXJDdXJyZW50UXVvdGVNYXJrP3RoaXMucXVvdGVNYXJrOm4ucXVvdGVNYXJrO3JldHVybiBzPT09dm9pZCAwJiYocz1uLnByZWZlckN1cnJlbnRRdW90ZU1hcms/bi5xdW90ZU1hcms6dGhpcy5xdW90ZU1hcmspLHM9PT12b2lkIDAmJihzPWUuRE9VQkxFX1FVT1RFKSxzfSx0Ll9zeW5jUmF3VmFsdWU9ZnVuY3Rpb24oKXt2YXIgbj0oMCxtaS5kZWZhdWx0KSh0aGlzLl92YWx1ZSxlb1t0aGlzLnF1b3RlTWFya10pO249PT10aGlzLl92YWx1ZT90aGlzLnJhd3MmJmRlbGV0ZSB0aGlzLnJhd3MudmFsdWU6dGhpcy5yYXdzLnZhbHVlPW59LHQuX2hhbmRsZUVzY2FwZXM9ZnVuY3Rpb24obixzKXtpZih0aGlzLl9jb25zdHJ1Y3RlZCl7dmFyIGE9KDAsbWkuZGVmYXVsdCkocyx7aXNJZGVudGlmaWVyOiEwfSk7YSE9PXM/dGhpcy5yYXdzW25dPWE6ZGVsZXRlIHRoaXMucmF3c1tuXX19LHQuX3NwYWNlc0Zvcj1mdW5jdGlvbihuKXt2YXIgcz17YmVmb3JlOiIiLGFmdGVyOiIifSxhPXRoaXMuc3BhY2VzW25dfHx7fSxvPXRoaXMucmF3cy5zcGFjZXMmJnRoaXMucmF3cy5zcGFjZXNbbl18fHt9O3JldHVybiBPYmplY3QuYXNzaWduKHMsYSxvKX0sdC5fc3RyaW5nRm9yPWZ1bmN0aW9uKG4scyxhKXtzPT09dm9pZCAwJiYocz1uKSxhPT09dm9pZCAwJiYoYT1zZCk7dmFyIG89dGhpcy5fc3BhY2VzRm9yKHMpO3JldHVybiBhKHRoaXMuc3RyaW5naWZ5UHJvcGVydHkobiksbyl9LHQub2Zmc2V0T2Y9ZnVuY3Rpb24obil7dmFyIHM9MSxhPXRoaXMuX3NwYWNlc0ZvcigiYXR0cmlidXRlIik7aWYocys9YS5iZWZvcmUubGVuZ3RoLG49PT0ibmFtZXNwYWNlInx8bj09PSJucyIpcmV0dXJuIHRoaXMubmFtZXNwYWNlP3M6LTE7aWYobj09PSJhdHRyaWJ1dGVOUyJ8fChzKz10aGlzLm5hbWVzcGFjZVN0cmluZy5sZW5ndGgsdGhpcy5uYW1lc3BhY2UmJihzKz0xKSxuPT09ImF0dHJpYnV0ZSIpKXJldHVybiBzO3MrPXRoaXMuc3RyaW5naWZ5UHJvcGVydHkoImF0dHJpYnV0ZSIpLmxlbmd0aCxzKz1hLmFmdGVyLmxlbmd0aDt2YXIgbz10aGlzLl9zcGFjZXNGb3IoIm9wZXJhdG9yIik7cys9by5iZWZvcmUubGVuZ3RoO3ZhciBsPXRoaXMuc3RyaW5naWZ5UHJvcGVydHkoIm9wZXJhdG9yIik7aWYobj09PSJvcGVyYXRvciIpcmV0dXJuIGw/czotMTtzKz1sLmxlbmd0aCxzKz1vLmFmdGVyLmxlbmd0aDt2YXIgYz10aGlzLl9zcGFjZXNGb3IoInZhbHVlIik7cys9Yy5iZWZvcmUubGVuZ3RoO3ZhciBmPXRoaXMuc3RyaW5naWZ5UHJvcGVydHkoInZhbHVlIik7aWYobj09PSJ2YWx1ZSIpcmV0dXJuIGY/czotMTtzKz1mLmxlbmd0aCxzKz1jLmFmdGVyLmxlbmd0aDt2YXIgZD10aGlzLl9zcGFjZXNGb3IoImluc2Vuc2l0aXZlIik7cmV0dXJuIHMrPWQuYmVmb3JlLmxlbmd0aCxuPT09Imluc2Vuc2l0aXZlIiYmdGhpcy5pbnNlbnNpdGl2ZT9zOi0xfSx0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIG49dGhpcyxzPVt0aGlzLnJhd1NwYWNlQmVmb3JlLCJbIl07cmV0dXJuIHMucHVzaCh0aGlzLl9zdHJpbmdGb3IoInF1YWxpZmllZEF0dHJpYnV0ZSIsImF0dHJpYnV0ZSIpKSx0aGlzLm9wZXJhdG9yJiYodGhpcy52YWx1ZXx8dGhpcy52YWx1ZT09PSIiKSYmKHMucHVzaCh0aGlzLl9zdHJpbmdGb3IoIm9wZXJhdG9yIikpLHMucHVzaCh0aGlzLl9zdHJpbmdGb3IoInZhbHVlIikpLHMucHVzaCh0aGlzLl9zdHJpbmdGb3IoImluc2Vuc2l0aXZlRmxhZyIsImluc2Vuc2l0aXZlIixmdW5jdGlvbihhLG8pe3JldHVybiBhLmxlbmd0aD4wJiYhbi5xdW90ZWQmJm8uYmVmb3JlLmxlbmd0aD09PTAmJiEobi5zcGFjZXMudmFsdWUmJm4uc3BhY2VzLnZhbHVlLmFmdGVyKSYmKG8uYmVmb3JlPSIgIiksc2QoYSxvKX0pKSkscy5wdXNoKCJdIikscy5wdXNoKHRoaXMucmF3U3BhY2VBZnRlcikscy5qb2luKCIiKX0sX1MoZSxbe2tleToicXVvdGVkIixnZXQ6ZnVuY3Rpb24oKXt2YXIgbj10aGlzLnF1b3RlTWFyaztyZXR1cm4gbj09PSInInx8bj09PSciJ30sc2V0OmZ1bmN0aW9uKG4pe1JTKCl9fSx7a2V5OiJxdW90ZU1hcmsiLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9xdW90ZU1hcmt9LHNldDpmdW5jdGlvbihuKXtpZighdGhpcy5fY29uc3RydWN0ZWQpe3RoaXMuX3F1b3RlTWFyaz1uO3JldHVybn10aGlzLl9xdW90ZU1hcmshPT1uJiYodGhpcy5fcXVvdGVNYXJrPW4sdGhpcy5fc3luY1Jhd1ZhbHVlKCkpfX0se2tleToicXVhbGlmaWVkQXR0cmlidXRlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5xdWFsaWZpZWROYW1lKHRoaXMucmF3cy5hdHRyaWJ1dGV8fHRoaXMuYXR0cmlidXRlKX19LHtrZXk6Imluc2Vuc2l0aXZlRmxhZyIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaW5zZW5zaXRpdmU/ImkiOiIifX0se2tleToidmFsdWUiLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl92YWx1ZX0sc2V0OmZ1bmN0aW9uKG4pe2lmKHRoaXMuX2NvbnN0cnVjdGVkKXt2YXIgcz1KYShuKSxhPXMuZGVwcmVjYXRlZFVzYWdlLG89cy51bmVzY2FwZWQsbD1zLnF1b3RlTWFyaztpZihhJiZUUygpLG89PT10aGlzLl92YWx1ZSYmbD09PXRoaXMuX3F1b3RlTWFyaylyZXR1cm47dGhpcy5fdmFsdWU9byx0aGlzLl9xdW90ZU1hcms9bCx0aGlzLl9zeW5jUmF3VmFsdWUoKX1lbHNlIHRoaXMuX3ZhbHVlPW59fSx7a2V5OiJpbnNlbnNpdGl2ZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2luc2Vuc2l0aXZlfSxzZXQ6ZnVuY3Rpb24obil7bnx8KHRoaXMuX2luc2Vuc2l0aXZlPSExLHRoaXMucmF3cyYmKHRoaXMucmF3cy5pbnNlbnNpdGl2ZUZsYWc9PT0iSSJ8fHRoaXMucmF3cy5pbnNlbnNpdGl2ZUZsYWc9PT0iaSIpJiYodGhpcy5yYXdzLmluc2Vuc2l0aXZlRmxhZz12b2lkIDApKSx0aGlzLl9pbnNlbnNpdGl2ZT1ufX0se2tleToiYXR0cmlidXRlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fYXR0cmlidXRlfSxzZXQ6ZnVuY3Rpb24obil7dGhpcy5faGFuZGxlRXNjYXBlcygiYXR0cmlidXRlIixuKSx0aGlzLl9hdHRyaWJ1dGU9bn19XSksZX0oQVMuZGVmYXVsdCk7eWkuZGVmYXVsdD1qbjtqbi5OT19RVU9URT1udWxsO2puLlNJTkdMRV9RVU9URT0iJyI7am4uRE9VQkxFX1FVT1RFPSciJzt2YXIgZW89KEthPXsiJyI6e3F1b3Rlczoic2luZ2xlIix3cmFwOiEwfSwnIic6e3F1b3RlczoiZG91YmxlIix3cmFwOiEwfX0sS2FbbnVsbF09e2lzSWRlbnRpZmllcjohMH0sS2EpO2Z1bmN0aW9uIHNkKHIsZSl7cmV0dXJuIiIrZS5iZWZvcmUrcitlLmFmdGVyfX0pO3ZhciBpbz14KChiaSxhZCk9Pnt1KCk7InVzZSBzdHJpY3QiO2JpLl9fZXNNb2R1bGU9ITA7YmkuZGVmYXVsdD12b2lkIDA7dmFyIERTPSRTKE5uKCkpLHFTPVNlKCk7ZnVuY3Rpb24gJFMocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIExTKHIsZSl7ci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixybyhyLGUpfWZ1bmN0aW9uIHJvKHIsZSl7cmV0dXJuIHJvPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGksbil7cmV0dXJuIGkuX19wcm90b19fPW4saX0scm8ocixlKX12YXIgTVM9ZnVuY3Rpb24ocil7TFMoZSxyKTtmdW5jdGlvbiBlKHQpe3ZhciBpO3JldHVybiBpPXIuY2FsbCh0aGlzLHQpfHx0aGlzLGkudHlwZT1xUy5VTklWRVJTQUwsaS52YWx1ZT0iKiIsaX1yZXR1cm4gZX0oRFMuZGVmYXVsdCk7YmkuZGVmYXVsdD1NUzthZC5leHBvcnRzPWJpLmRlZmF1bHR9KTt2YXIgc289eCgod2ksb2QpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt3aS5fX2VzTW9kdWxlPSEwO3dpLmRlZmF1bHQ9dm9pZCAwO3ZhciBOUz1GUyhkdCgpKSxCUz1TZSgpO2Z1bmN0aW9uIEZTKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1mdW5jdGlvbiBqUyhyLGUpe3IucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZS5wcm90b3R5cGUpLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsbm8ocixlKX1mdW5jdGlvbiBubyhyLGUpe3JldHVybiBubz1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihpLG4pe3JldHVybiBpLl9fcHJvdG9fXz1uLGl9LG5vKHIsZSl9dmFyIHpTPWZ1bmN0aW9uKHIpe2pTKGUscik7ZnVuY3Rpb24gZSh0KXt2YXIgaTtyZXR1cm4gaT1yLmNhbGwodGhpcyx0KXx8dGhpcyxpLnR5cGU9QlMuQ09NQklOQVRPUixpfXJldHVybiBlfShOUy5kZWZhdWx0KTt3aS5kZWZhdWx0PXpTO29kLmV4cG9ydHM9d2kuZGVmYXVsdH0pO3ZhciBvbz14KCh2aSxsZCk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZpLl9fZXNNb2R1bGU9ITA7dmkuZGVmYXVsdD12b2lkIDA7dmFyIFVTPUhTKGR0KCkpLFZTPVNlKCk7ZnVuY3Rpb24gSFMocil7cmV0dXJuIHImJnIuX19lc01vZHVsZT9yOntkZWZhdWx0OnJ9fWZ1bmN0aW9uIFdTKHIsZSl7ci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixhbyhyLGUpfWZ1bmN0aW9uIGFvKHIsZSl7cmV0dXJuIGFvPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YuYmluZCgpOmZ1bmN0aW9uKGksbil7cmV0dXJuIGkuX19wcm90b19fPW4saX0sYW8ocixlKX12YXIgR1M9ZnVuY3Rpb24ocil7V1MoZSxyKTtmdW5jdGlvbiBlKHQpe3ZhciBpO3JldHVybiBpPXIuY2FsbCh0aGlzLHQpfHx0aGlzLGkudHlwZT1WUy5ORVNUSU5HLGkudmFsdWU9IiYiLGl9cmV0dXJuIGV9KFVTLmRlZmF1bHQpO3ZpLmRlZmF1bHQ9R1M7bGQuZXhwb3J0cz12aS5kZWZhdWx0fSk7dmFyIGZkPXgoKHpuLHVkKT0+e3UoKTsidXNlIHN0cmljdCI7em4uX19lc01vZHVsZT0hMDt6bi5kZWZhdWx0PVFTO2Z1bmN0aW9uIFFTKHIpe3JldHVybiByLnNvcnQoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS10fSl9dWQuZXhwb3J0cz16bi5kZWZhdWx0fSk7dmFyIGxvPXgoTT0+e3UoKTsidXNlIHN0cmljdCI7TS5fX2VzTW9kdWxlPSEwO00ud29yZD1NLnRpbGRlPU0udGFiPU0uc3RyPU0uc3BhY2U9TS5zbGFzaD1NLnNpbmdsZVF1b3RlPU0uc2VtaWNvbG9uPU0ucGx1cz1NLnBpcGU9TS5vcGVuU3F1YXJlPU0ub3BlblBhcmVudGhlc2lzPU0ubmV3bGluZT1NLmdyZWF0ZXJUaGFuPU0uZmVlZD1NLmVxdWFscz1NLmRvdWJsZVF1b3RlPU0uZG9sbGFyPU0uY3I9TS5jb21tZW50PU0uY29tbWE9TS5jb21iaW5hdG9yPU0uY29sb249TS5jbG9zZVNxdWFyZT1NLmNsb3NlUGFyZW50aGVzaXM9TS5jYXJldD1NLmJhbmc9TS5iYWNrc2xhc2g9TS5hdD1NLmFzdGVyaXNrPU0uYW1wZXJzYW5kPXZvaWQgMDt2YXIgWVM9Mzg7TS5hbXBlcnNhbmQ9WVM7dmFyIEtTPTQyO00uYXN0ZXJpc2s9S1M7dmFyIFhTPTY0O00uYXQ9WFM7dmFyIFpTPTQ0O00uY29tbWE9WlM7dmFyIEpTPTU4O00uY29sb249SlM7dmFyIGVBPTU5O00uc2VtaWNvbG9uPWVBO3ZhciB0QT00MDtNLm9wZW5QYXJlbnRoZXNpcz10QTt2YXIgckE9NDE7TS5jbG9zZVBhcmVudGhlc2lzPXJBO3ZhciBpQT05MTtNLm9wZW5TcXVhcmU9aUE7dmFyIG5BPTkzO00uY2xvc2VTcXVhcmU9bkE7dmFyIHNBPTM2O00uZG9sbGFyPXNBO3ZhciBhQT0xMjY7TS50aWxkZT1hQTt2YXIgb0E9OTQ7TS5jYXJldD1vQTt2YXIgbEE9NDM7TS5wbHVzPWxBO3ZhciB1QT02MTtNLmVxdWFscz11QTt2YXIgZkE9MTI0O00ucGlwZT1mQTt2YXIgY0E9NjI7TS5ncmVhdGVyVGhhbj1jQTt2YXIgcEE9MzI7TS5zcGFjZT1wQTt2YXIgY2Q9Mzk7TS5zaW5nbGVRdW90ZT1jZDt2YXIgZEE9MzQ7TS5kb3VibGVRdW90ZT1kQTt2YXIgaEE9NDc7TS5zbGFzaD1oQTt2YXIgbUE9MzM7TS5iYW5nPW1BO3ZhciBnQT05MjtNLmJhY2tzbGFzaD1nQTt2YXIgeUE9MTM7TS5jcj15QTt2YXIgYkE9MTI7TS5mZWVkPWJBO3ZhciB3QT0xMDtNLm5ld2xpbmU9d0E7dmFyIHZBPTk7TS50YWI9dkE7dmFyIHhBPWNkO00uc3RyPXhBO3ZhciBrQT0tMTtNLmNvbW1lbnQ9a0E7dmFyIFNBPS0yO00ud29yZD1TQTt2YXIgQUE9LTM7TS5jb21iaW5hdG9yPUFBfSk7dmFyIGhkPXgoeGk9Pnt1KCk7InVzZSBzdHJpY3QiO3hpLl9fZXNNb2R1bGU9ITA7eGkuRklFTERTPXZvaWQgMDt4aS5kZWZhdWx0PVBBO3ZhciBEPUNBKGxvKCkpLG5yLHRlO2Z1bmN0aW9uIHBkKHIpe2lmKHR5cGVvZiBXZWFrTWFwIT0iZnVuY3Rpb24iKXJldHVybiBudWxsO3ZhciBlPW5ldyBXZWFrTWFwLHQ9bmV3IFdlYWtNYXA7cmV0dXJuKHBkPWZ1bmN0aW9uKG4pe3JldHVybiBuP3Q6ZX0pKHIpfWZ1bmN0aW9uIENBKHIsZSl7aWYoIWUmJnImJnIuX19lc01vZHVsZSlyZXR1cm4gcjtpZihyPT09bnVsbHx8dHlwZW9mIHIhPSJvYmplY3QiJiZ0eXBlb2YgciE9ImZ1bmN0aW9uIilyZXR1cm57ZGVmYXVsdDpyfTt2YXIgdD1wZChlKTtpZih0JiZ0LmhhcyhyKSlyZXR1cm4gdC5nZXQocik7dmFyIGk9e30sbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7Zm9yKHZhciBzIGluIHIpaWYocyE9PSJkZWZhdWx0IiYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHIscykpe3ZhciBhPW4/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLHMpOm51bGw7YSYmKGEuZ2V0fHxhLnNldCk/T2JqZWN0LmRlZmluZVByb3BlcnR5KGkscyxhKTppW3NdPXJbc119cmV0dXJuIGkuZGVmYXVsdD1yLHQmJnQuc2V0KHIsaSksaX12YXIgX0E9KG5yPXt9LG5yW0QudGFiXT0hMCxucltELm5ld2xpbmVdPSEwLG5yW0QuY3JdPSEwLG5yW0QuZmVlZF09ITAsbnIpLEVBPSh0ZT17fSx0ZVtELnNwYWNlXT0hMCx0ZVtELnRhYl09ITAsdGVbRC5uZXdsaW5lXT0hMCx0ZVtELmNyXT0hMCx0ZVtELmZlZWRdPSEwLHRlW0QuYW1wZXJzYW5kXT0hMCx0ZVtELmFzdGVyaXNrXT0hMCx0ZVtELmJhbmddPSEwLHRlW0QuY29tbWFdPSEwLHRlW0QuY29sb25dPSEwLHRlW0Quc2VtaWNvbG9uXT0hMCx0ZVtELm9wZW5QYXJlbnRoZXNpc109ITAsdGVbRC5jbG9zZVBhcmVudGhlc2lzXT0hMCx0ZVtELm9wZW5TcXVhcmVdPSEwLHRlW0QuY2xvc2VTcXVhcmVdPSEwLHRlW0Quc2luZ2xlUXVvdGVdPSEwLHRlW0QuZG91YmxlUXVvdGVdPSEwLHRlW0QucGx1c109ITAsdGVbRC5waXBlXT0hMCx0ZVtELnRpbGRlXT0hMCx0ZVtELmdyZWF0ZXJUaGFuXT0hMCx0ZVtELmVxdWFsc109ITAsdGVbRC5kb2xsYXJdPSEwLHRlW0QuY2FyZXRdPSEwLHRlW0Quc2xhc2hdPSEwLHRlKSx1bz17fSxkZD0iMDEyMzQ1Njc4OWFiY2RlZkFCQ0RFRiI7Zm9yKFVuPTA7VW48ZGQubGVuZ3RoO1VuKyspdW9bZGQuY2hhckNvZGVBdChVbildPSEwO3ZhciBVbjtmdW5jdGlvbiBPQShyLGUpe3ZhciB0PWUsaTtkb3tpZihpPXIuY2hhckNvZGVBdCh0KSxFQVtpXSlyZXR1cm4gdC0xO2k9PT1ELmJhY2tzbGFzaD90PVRBKHIsdCkrMTp0Kyt9d2hpbGUodDxyLmxlbmd0aCk7cmV0dXJuIHQtMX1mdW5jdGlvbiBUQShyLGUpe3ZhciB0PWUsaT1yLmNoYXJDb2RlQXQodCsxKTtpZighX0FbaV0paWYodW9baV0pe3ZhciBuPTA7ZG8gdCsrLG4rKyxpPXIuY2hhckNvZGVBdCh0KzEpO3doaWxlKHVvW2ldJiZuPDYpO248NiYmaT09PUQuc3BhY2UmJnQrK31lbHNlIHQrKztyZXR1cm4gdH12YXIgUkE9e1RZUEU6MCxTVEFSVF9MSU5FOjEsU1RBUlRfQ09MOjIsRU5EX0xJTkU6MyxFTkRfQ09MOjQsU1RBUlRfUE9TOjUsRU5EX1BPUzo2fTt4aS5GSUVMRFM9UkE7ZnVuY3Rpb24gUEEocil7dmFyIGU9W10sdD1yLmNzcy52YWx1ZU9mKCksaT10LG49aS5sZW5ndGgscz0tMSxhPTEsbz0wLGw9MCxjLGYsZCxwLGgsYix2LHksdyxrLFMsRSxUO2Z1bmN0aW9uIEIoTixSKXtpZihyLnNhZmUpdCs9Uix3PXQubGVuZ3RoLTE7ZWxzZSB0aHJvdyByLmVycm9yKCJVbmNsb3NlZCAiK04sYSxvLXMsbyl9Zm9yKDtvPG47KXtzd2l0Y2goYz10LmNoYXJDb2RlQXQobyksYz09PUQubmV3bGluZSYmKHM9byxhKz0xKSxjKXtjYXNlIEQuc3BhY2U6Y2FzZSBELnRhYjpjYXNlIEQubmV3bGluZTpjYXNlIEQuY3I6Y2FzZSBELmZlZWQ6dz1vO2RvIHcrPTEsYz10LmNoYXJDb2RlQXQodyksYz09PUQubmV3bGluZSYmKHM9dyxhKz0xKTt3aGlsZShjPT09RC5zcGFjZXx8Yz09PUQubmV3bGluZXx8Yz09PUQudGFifHxjPT09RC5jcnx8Yz09PUQuZmVlZCk7VD1ELnNwYWNlLHA9YSxkPXctcy0xLGw9dzticmVhaztjYXNlIEQucGx1czpjYXNlIEQuZ3JlYXRlclRoYW46Y2FzZSBELnRpbGRlOmNhc2UgRC5waXBlOnc9bztkbyB3Kz0xLGM9dC5jaGFyQ29kZUF0KHcpO3doaWxlKGM9PT1ELnBsdXN8fGM9PT1ELmdyZWF0ZXJUaGFufHxjPT09RC50aWxkZXx8Yz09PUQucGlwZSk7VD1ELmNvbWJpbmF0b3IscD1hLGQ9by1zLGw9dzticmVhaztjYXNlIEQuYXN0ZXJpc2s6Y2FzZSBELmFtcGVyc2FuZDpjYXNlIEQuYmFuZzpjYXNlIEQuY29tbWE6Y2FzZSBELmVxdWFsczpjYXNlIEQuZG9sbGFyOmNhc2UgRC5jYXJldDpjYXNlIEQub3BlblNxdWFyZTpjYXNlIEQuY2xvc2VTcXVhcmU6Y2FzZSBELmNvbG9uOmNhc2UgRC5zZW1pY29sb246Y2FzZSBELm9wZW5QYXJlbnRoZXNpczpjYXNlIEQuY2xvc2VQYXJlbnRoZXNpczp3PW8sVD1jLHA9YSxkPW8tcyxsPXcrMTticmVhaztjYXNlIEQuc2luZ2xlUXVvdGU6Y2FzZSBELmRvdWJsZVF1b3RlOkU9Yz09PUQuc2luZ2xlUXVvdGU/IiciOiciJyx3PW87ZG8gZm9yKGg9ITEsdz10LmluZGV4T2YoRSx3KzEpLHc9PT0tMSYmQigicXVvdGUiLEUpLGI9dzt0LmNoYXJDb2RlQXQoYi0xKT09PUQuYmFja3NsYXNoOyliLT0xLGg9IWg7d2hpbGUoaCk7VD1ELnN0cixwPWEsZD1vLXMsbD13KzE7YnJlYWs7ZGVmYXVsdDpjPT09RC5zbGFzaCYmdC5jaGFyQ29kZUF0KG8rMSk9PT1ELmFzdGVyaXNrPyh3PXQuaW5kZXhPZigiKi8iLG8rMikrMSx3PT09MCYmQigiY29tbWVudCIsIiovIiksZj10LnNsaWNlKG8sdysxKSx5PWYuc3BsaXQoYApgKSx2PXkubGVuZ3RoLTEsdj4wPyhrPWErdixTPXcteVt2XS5sZW5ndGgpOihrPWEsUz1zKSxUPUQuY29tbWVudCxhPWsscD1rLGQ9dy1TKTpjPT09RC5zbGFzaD8odz1vLFQ9YyxwPWEsZD1vLXMsbD13KzEpOih3PU9BKHQsbyksVD1ELndvcmQscD1hLGQ9dy1zKSxsPXcrMTticmVha31lLnB1c2goW1QsYSxvLXMscCxkLG8sbF0pLFMmJihzPVMsUz1udWxsKSxvPWx9cmV0dXJuIGV9fSk7dmFyIGtkPXgoKGtpLHhkKT0+e3UoKTsidXNlIHN0cmljdCI7a2kuX19lc01vZHVsZT0hMDtraS5kZWZhdWx0PXZvaWQgMDt2YXIgSUE9amUoRGEoKSksZm89amUoJGEoKSksREE9amUoTmEoKSksbWQ9amUoRmEoKSkscUE9amUoemEoKSksJEE9amUoSGEoKSksY289amUoR2EoKSksTEE9amUoWWEoKSksZ2Q9Vm4odG8oKSksTUE9amUoaW8oKSkscG89amUoc28oKSksTkE9amUob28oKSksQkE9amUoZmQoKSksTz1WbihoZCgpKSxxPVZuKGxvKCkpLEZBPVZuKFNlKCkpLHVlPWlpKCksVnQsaG87ZnVuY3Rpb24geWQocil7aWYodHlwZW9mIFdlYWtNYXAhPSJmdW5jdGlvbiIpcmV0dXJuIG51bGw7dmFyIGU9bmV3IFdlYWtNYXAsdD1uZXcgV2Vha01hcDtyZXR1cm4oeWQ9ZnVuY3Rpb24obil7cmV0dXJuIG4/dDplfSkocil9ZnVuY3Rpb24gVm4ocixlKXtpZighZSYmciYmci5fX2VzTW9kdWxlKXJldHVybiByO2lmKHI9PT1udWxsfHx0eXBlb2YgciE9Im9iamVjdCImJnR5cGVvZiByIT0iZnVuY3Rpb24iKXJldHVybntkZWZhdWx0OnJ9O3ZhciB0PXlkKGUpO2lmKHQmJnQuaGFzKHIpKXJldHVybiB0LmdldChyKTt2YXIgaT17fSxuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjtmb3IodmFyIHMgaW4gcilpZihzIT09ImRlZmF1bHQiJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixzKSl7dmFyIGE9bj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIscyk6bnVsbDthJiYoYS5nZXR8fGEuc2V0KT9PYmplY3QuZGVmaW5lUHJvcGVydHkoaSxzLGEpOmlbc109cltzXX1yZXR1cm4gaS5kZWZhdWx0PXIsdCYmdC5zZXQocixpKSxpfWZ1bmN0aW9uIGplKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1mdW5jdGlvbiBiZChyLGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgaT1lW3RdO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsaS5rZXksaSl9fWZ1bmN0aW9uIGpBKHIsZSx0KXtyZXR1cm4gZSYmYmQoci5wcm90b3R5cGUsZSksdCYmYmQocix0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSxyfXZhciBtbz0oVnQ9e30sVnRbcS5zcGFjZV09ITAsVnRbcS5jcl09ITAsVnRbcS5mZWVkXT0hMCxWdFtxLm5ld2xpbmVdPSEwLFZ0W3EudGFiXT0hMCxWdCksekE9T2JqZWN0LmFzc2lnbih7fSxtbywoaG89e30saG9bcS5jb21tZW50XT0hMCxobykpO2Z1bmN0aW9uIHdkKHIpe3JldHVybntsaW5lOnJbTy5GSUVMRFMuU1RBUlRfTElORV0sY29sdW1uOnJbTy5GSUVMRFMuU1RBUlRfQ09MXX19ZnVuY3Rpb24gdmQocil7cmV0dXJue2xpbmU6cltPLkZJRUxEUy5FTkRfTElORV0sY29sdW1uOnJbTy5GSUVMRFMuRU5EX0NPTF19fWZ1bmN0aW9uIEh0KHIsZSx0LGkpe3JldHVybntzdGFydDp7bGluZTpyLGNvbHVtbjplfSxlbmQ6e2xpbmU6dCxjb2x1bW46aX19fWZ1bmN0aW9uIHNyKHIpe3JldHVybiBIdChyW08uRklFTERTLlNUQVJUX0xJTkVdLHJbTy5GSUVMRFMuU1RBUlRfQ09MXSxyW08uRklFTERTLkVORF9MSU5FXSxyW08uRklFTERTLkVORF9DT0xdKX1mdW5jdGlvbiBnbyhyLGUpe2lmKCEhcilyZXR1cm4gSHQocltPLkZJRUxEUy5TVEFSVF9MSU5FXSxyW08uRklFTERTLlNUQVJUX0NPTF0sZVtPLkZJRUxEUy5FTkRfTElORV0sZVtPLkZJRUxEUy5FTkRfQ09MXSl9ZnVuY3Rpb24gYXIocixlKXt2YXIgdD1yW2VdO2lmKHR5cGVvZiB0PT0ic3RyaW5nIilyZXR1cm4gdC5pbmRleE9mKCJcXCIpIT09LTEmJigoMCx1ZS5lbnN1cmVPYmplY3QpKHIsInJhd3MiKSxyW2VdPSgwLHVlLnVuZXNjKSh0KSxyLnJhd3NbZV09PT12b2lkIDAmJihyLnJhd3NbZV09dCkpLHJ9ZnVuY3Rpb24geW8ocixlKXtmb3IodmFyIHQ9LTEsaT1bXTsodD1yLmluZGV4T2YoZSx0KzEpKSE9PS0xOylpLnB1c2godCk7cmV0dXJuIGl9ZnVuY3Rpb24gVUEoKXt2YXIgcj1BcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGFyZ3VtZW50cyk7cmV0dXJuIHIuZmlsdGVyKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ9PT1yLmluZGV4T2YoZSl9KX12YXIgVkE9ZnVuY3Rpb24oKXtmdW5jdGlvbiByKHQsaSl7aT09PXZvaWQgMCYmKGk9e30pLHRoaXMucnVsZT10LHRoaXMub3B0aW9ucz1PYmplY3QuYXNzaWduKHtsb3NzeTohMSxzYWZlOiExfSxpKSx0aGlzLnBvc2l0aW9uPTAsdGhpcy5jc3M9dHlwZW9mIHRoaXMucnVsZT09InN0cmluZyI/dGhpcy5ydWxlOnRoaXMucnVsZS5zZWxlY3Rvcix0aGlzLnRva2Vucz0oMCxPLmRlZmF1bHQpKHtjc3M6dGhpcy5jc3MsZXJyb3I6dGhpcy5fZXJyb3JHZW5lcmF0b3IoKSxzYWZlOnRoaXMub3B0aW9ucy5zYWZlfSk7dmFyIG49Z28odGhpcy50b2tlbnNbMF0sdGhpcy50b2tlbnNbdGhpcy50b2tlbnMubGVuZ3RoLTFdKTt0aGlzLnJvb3Q9bmV3IElBLmRlZmF1bHQoe3NvdXJjZTpufSksdGhpcy5yb290LmVycm9yR2VuZXJhdG9yPXRoaXMuX2Vycm9yR2VuZXJhdG9yKCk7dmFyIHM9bmV3IGZvLmRlZmF1bHQoe3NvdXJjZTp7c3RhcnQ6e2xpbmU6MSxjb2x1bW46MX19LHNvdXJjZUluZGV4OjB9KTt0aGlzLnJvb3QuYXBwZW5kKHMpLHRoaXMuY3VycmVudD1zLHRoaXMubG9vcCgpfXZhciBlPXIucHJvdG90eXBlO3JldHVybiBlLl9lcnJvckdlbmVyYXRvcj1mdW5jdGlvbigpe3ZhciBpPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKG4scyl7cmV0dXJuIHR5cGVvZiBpLnJ1bGU9PSJzdHJpbmciP25ldyBFcnJvcihuKTppLnJ1bGUuZXJyb3IobixzKX19LGUuYXR0cmlidXRlPWZ1bmN0aW9uKCl7dmFyIGk9W10sbj10aGlzLmN1cnJUb2tlbjtmb3IodGhpcy5wb3NpdGlvbisrO3RoaXMucG9zaXRpb248dGhpcy50b2tlbnMubGVuZ3RoJiZ0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5UWVBFXSE9PXEuY2xvc2VTcXVhcmU7KWkucHVzaCh0aGlzLmN1cnJUb2tlbiksdGhpcy5wb3NpdGlvbisrO2lmKHRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdIT09cS5jbG9zZVNxdWFyZSlyZXR1cm4gdGhpcy5leHBlY3RlZCgiY2xvc2luZyBzcXVhcmUgYnJhY2tldCIsdGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuU1RBUlRfUE9TXSk7dmFyIHM9aS5sZW5ndGgsYT17c291cmNlOkh0KG5bMV0sblsyXSx0aGlzLmN1cnJUb2tlblszXSx0aGlzLmN1cnJUb2tlbls0XSksc291cmNlSW5kZXg6bltPLkZJRUxEUy5TVEFSVF9QT1NdfTtpZihzPT09MSYmIX5bcS53b3JkXS5pbmRleE9mKGlbMF1bTy5GSUVMRFMuVFlQRV0pKXJldHVybiB0aGlzLmV4cGVjdGVkKCJhdHRyaWJ1dGUiLGlbMF1bTy5GSUVMRFMuU1RBUlRfUE9TXSk7Zm9yKHZhciBvPTAsbD0iIixjPSIiLGY9bnVsbCxkPSExO288czspe3ZhciBwPWlbb10saD10aGlzLmNvbnRlbnQocCksYj1pW28rMV07c3dpdGNoKHBbTy5GSUVMRFMuVFlQRV0pe2Nhc2UgcS5zcGFjZTppZihkPSEwLHRoaXMub3B0aW9ucy5sb3NzeSlicmVhaztpZihmKXsoMCx1ZS5lbnN1cmVPYmplY3QpKGEsInNwYWNlcyIsZik7dmFyIHY9YS5zcGFjZXNbZl0uYWZ0ZXJ8fCIiO2Euc3BhY2VzW2ZdLmFmdGVyPXYraDt2YXIgeT0oMCx1ZS5nZXRQcm9wKShhLCJyYXdzIiwic3BhY2VzIixmLCJhZnRlciIpfHxudWxsO3kmJihhLnJhd3Muc3BhY2VzW2ZdLmFmdGVyPXkraCl9ZWxzZSBsPWwraCxjPWMraDticmVhaztjYXNlIHEuYXN0ZXJpc2s6aWYoYltPLkZJRUxEUy5UWVBFXT09PXEuZXF1YWxzKWEub3BlcmF0b3I9aCxmPSJvcGVyYXRvciI7ZWxzZSBpZigoIWEubmFtZXNwYWNlfHxmPT09Im5hbWVzcGFjZSImJiFkKSYmYil7bCYmKCgwLHVlLmVuc3VyZU9iamVjdCkoYSwic3BhY2VzIiwiYXR0cmlidXRlIiksYS5zcGFjZXMuYXR0cmlidXRlLmJlZm9yZT1sLGw9IiIpLGMmJigoMCx1ZS5lbnN1cmVPYmplY3QpKGEsInJhd3MiLCJzcGFjZXMiLCJhdHRyaWJ1dGUiKSxhLnJhd3Muc3BhY2VzLmF0dHJpYnV0ZS5iZWZvcmU9bCxjPSIiKSxhLm5hbWVzcGFjZT0oYS5uYW1lc3BhY2V8fCIiKStoO3ZhciB3PSgwLHVlLmdldFByb3ApKGEsInJhd3MiLCJuYW1lc3BhY2UiKXx8bnVsbDt3JiYoYS5yYXdzLm5hbWVzcGFjZSs9aCksZj0ibmFtZXNwYWNlIn1kPSExO2JyZWFrO2Nhc2UgcS5kb2xsYXI6aWYoZj09PSJ2YWx1ZSIpe3ZhciBrPSgwLHVlLmdldFByb3ApKGEsInJhd3MiLCJ2YWx1ZSIpO2EudmFsdWUrPSIkIixrJiYoYS5yYXdzLnZhbHVlPWsrIiQiKTticmVha31jYXNlIHEuY2FyZXQ6YltPLkZJRUxEUy5UWVBFXT09PXEuZXF1YWxzJiYoYS5vcGVyYXRvcj1oLGY9Im9wZXJhdG9yIiksZD0hMTticmVhaztjYXNlIHEuY29tYmluYXRvcjppZihoPT09In4iJiZiW08uRklFTERTLlRZUEVdPT09cS5lcXVhbHMmJihhLm9wZXJhdG9yPWgsZj0ib3BlcmF0b3IiKSxoIT09InwiKXtkPSExO2JyZWFrfWJbTy5GSUVMRFMuVFlQRV09PT1xLmVxdWFscz8oYS5vcGVyYXRvcj1oLGY9Im9wZXJhdG9yIik6IWEubmFtZXNwYWNlJiYhYS5hdHRyaWJ1dGUmJihhLm5hbWVzcGFjZT0hMCksZD0hMTticmVhaztjYXNlIHEud29yZDppZihiJiZ0aGlzLmNvbnRlbnQoYik9PT0ifCImJmlbbysyXSYmaVtvKzJdW08uRklFTERTLlRZUEVdIT09cS5lcXVhbHMmJiFhLm9wZXJhdG9yJiYhYS5uYW1lc3BhY2UpYS5uYW1lc3BhY2U9aCxmPSJuYW1lc3BhY2UiO2Vsc2UgaWYoIWEuYXR0cmlidXRlfHxmPT09ImF0dHJpYnV0ZSImJiFkKXtsJiYoKDAsdWUuZW5zdXJlT2JqZWN0KShhLCJzcGFjZXMiLCJhdHRyaWJ1dGUiKSxhLnNwYWNlcy5hdHRyaWJ1dGUuYmVmb3JlPWwsbD0iIiksYyYmKCgwLHVlLmVuc3VyZU9iamVjdCkoYSwicmF3cyIsInNwYWNlcyIsImF0dHJpYnV0ZSIpLGEucmF3cy5zcGFjZXMuYXR0cmlidXRlLmJlZm9yZT1jLGM9IiIpLGEuYXR0cmlidXRlPShhLmF0dHJpYnV0ZXx8IiIpK2g7dmFyIFM9KDAsdWUuZ2V0UHJvcCkoYSwicmF3cyIsImF0dHJpYnV0ZSIpfHxudWxsO1MmJihhLnJhd3MuYXR0cmlidXRlKz1oKSxmPSJhdHRyaWJ1dGUifWVsc2UgaWYoIWEudmFsdWUmJmEudmFsdWUhPT0iInx8Zj09PSJ2YWx1ZSImJiEoZHx8YS5xdW90ZU1hcmspKXt2YXIgRT0oMCx1ZS51bmVzYykoaCksVD0oMCx1ZS5nZXRQcm9wKShhLCJyYXdzIiwidmFsdWUiKXx8IiIsQj1hLnZhbHVlfHwiIjthLnZhbHVlPUIrRSxhLnF1b3RlTWFyaz1udWxsLChFIT09aHx8VCkmJigoMCx1ZS5lbnN1cmVPYmplY3QpKGEsInJhd3MiKSxhLnJhd3MudmFsdWU9KFR8fEIpK2gpLGY9InZhbHVlIn1lbHNle3ZhciBOPWg9PT0iaSJ8fGg9PT0iSSI7KGEudmFsdWV8fGEudmFsdWU9PT0iIikmJihhLnF1b3RlTWFya3x8ZCk/KGEuaW5zZW5zaXRpdmU9TiwoIU58fGg9PT0iSSIpJiYoKDAsdWUuZW5zdXJlT2JqZWN0KShhLCJyYXdzIiksYS5yYXdzLmluc2Vuc2l0aXZlRmxhZz1oKSxmPSJpbnNlbnNpdGl2ZSIsbCYmKCgwLHVlLmVuc3VyZU9iamVjdCkoYSwic3BhY2VzIiwiaW5zZW5zaXRpdmUiKSxhLnNwYWNlcy5pbnNlbnNpdGl2ZS5iZWZvcmU9bCxsPSIiKSxjJiYoKDAsdWUuZW5zdXJlT2JqZWN0KShhLCJyYXdzIiwic3BhY2VzIiwiaW5zZW5zaXRpdmUiKSxhLnJhd3Muc3BhY2VzLmluc2Vuc2l0aXZlLmJlZm9yZT1jLGM9IiIpKTooYS52YWx1ZXx8YS52YWx1ZT09PSIiKSYmKGY9InZhbHVlIixhLnZhbHVlKz1oLGEucmF3cy52YWx1ZSYmKGEucmF3cy52YWx1ZSs9aCkpfWQ9ITE7YnJlYWs7Y2FzZSBxLnN0cjppZighYS5hdHRyaWJ1dGV8fCFhLm9wZXJhdG9yKXJldHVybiB0aGlzLmVycm9yKCJFeHBlY3RlZCBhbiBhdHRyaWJ1dGUgZm9sbG93ZWQgYnkgYW4gb3BlcmF0b3IgcHJlY2VkaW5nIHRoZSBzdHJpbmcuIix7aW5kZXg6cFtPLkZJRUxEUy5TVEFSVF9QT1NdfSk7dmFyIFI9KDAsZ2QudW5lc2NhcGVWYWx1ZSkoaCksRj1SLnVuZXNjYXBlZCxZPVIucXVvdGVNYXJrO2EudmFsdWU9RixhLnF1b3RlTWFyaz1ZLGY9InZhbHVlIiwoMCx1ZS5lbnN1cmVPYmplY3QpKGEsInJhd3MiKSxhLnJhd3MudmFsdWU9aCxkPSExO2JyZWFrO2Nhc2UgcS5lcXVhbHM6aWYoIWEuYXR0cmlidXRlKXJldHVybiB0aGlzLmV4cGVjdGVkKCJhdHRyaWJ1dGUiLHBbTy5GSUVMRFMuU1RBUlRfUE9TXSxoKTtpZihhLnZhbHVlKXJldHVybiB0aGlzLmVycm9yKCdVbmV4cGVjdGVkICI9IiBmb3VuZDsgYW4gb3BlcmF0b3Igd2FzIGFscmVhZHkgZGVmaW5lZC4nLHtpbmRleDpwW08uRklFTERTLlNUQVJUX1BPU119KTthLm9wZXJhdG9yPWEub3BlcmF0b3I/YS5vcGVyYXRvcitoOmgsZj0ib3BlcmF0b3IiLGQ9ITE7YnJlYWs7Y2FzZSBxLmNvbW1lbnQ6aWYoZilpZihkfHxiJiZiW08uRklFTERTLlRZUEVdPT09cS5zcGFjZXx8Zj09PSJpbnNlbnNpdGl2ZSIpe3ZhciBfPSgwLHVlLmdldFByb3ApKGEsInNwYWNlcyIsZiwiYWZ0ZXIiKXx8IiIsUT0oMCx1ZS5nZXRQcm9wKShhLCJyYXdzIiwic3BhY2VzIixmLCJhZnRlciIpfHxfOygwLHVlLmVuc3VyZU9iamVjdCkoYSwicmF3cyIsInNwYWNlcyIsZiksYS5yYXdzLnNwYWNlc1tmXS5hZnRlcj1RK2h9ZWxzZXt2YXIgVT1hW2ZdfHwiIixsZT0oMCx1ZS5nZXRQcm9wKShhLCJyYXdzIixmKXx8VTsoMCx1ZS5lbnN1cmVPYmplY3QpKGEsInJhd3MiKSxhLnJhd3NbZl09bGUraH1lbHNlIGM9YytoO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIHRoaXMuZXJyb3IoJ1VuZXhwZWN0ZWQgIicraCsnIiBmb3VuZC4nLHtpbmRleDpwW08uRklFTERTLlNUQVJUX1BPU119KX1vKyt9YXIoYSwiYXR0cmlidXRlIiksYXIoYSwibmFtZXNwYWNlIiksdGhpcy5uZXdOb2RlKG5ldyBnZC5kZWZhdWx0KGEpKSx0aGlzLnBvc2l0aW9uKyt9LGUucGFyc2VXaGl0ZXNwYWNlRXF1aXZhbGVudFRva2Vucz1mdW5jdGlvbihpKXtpPDAmJihpPXRoaXMudG9rZW5zLmxlbmd0aCk7dmFyIG49dGhpcy5wb3NpdGlvbixzPVtdLGE9IiIsbz12b2lkIDA7ZG8gaWYobW9bdGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuVFlQRV1dKXRoaXMub3B0aW9ucy5sb3NzeXx8KGErPXRoaXMuY29udGVudCgpKTtlbHNlIGlmKHRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdPT09cS5jb21tZW50KXt2YXIgbD17fTthJiYobC5iZWZvcmU9YSxhPSIiKSxvPW5ldyBtZC5kZWZhdWx0KHt2YWx1ZTp0aGlzLmNvbnRlbnQoKSxzb3VyY2U6c3IodGhpcy5jdXJyVG9rZW4pLHNvdXJjZUluZGV4OnRoaXMuY3VyclRva2VuW08uRklFTERTLlNUQVJUX1BPU10sc3BhY2VzOmx9KSxzLnB1c2gobyl9d2hpbGUoKyt0aGlzLnBvc2l0aW9uPGkpO2lmKGEpe2lmKG8pby5zcGFjZXMuYWZ0ZXI9YTtlbHNlIGlmKCF0aGlzLm9wdGlvbnMubG9zc3kpe3ZhciBjPXRoaXMudG9rZW5zW25dLGY9dGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbi0xXTtzLnB1c2gobmV3IGNvLmRlZmF1bHQoe3ZhbHVlOiIiLHNvdXJjZTpIdChjW08uRklFTERTLlNUQVJUX0xJTkVdLGNbTy5GSUVMRFMuU1RBUlRfQ09MXSxmW08uRklFTERTLkVORF9MSU5FXSxmW08uRklFTERTLkVORF9DT0xdKSxzb3VyY2VJbmRleDpjW08uRklFTERTLlNUQVJUX1BPU10sc3BhY2VzOntiZWZvcmU6YSxhZnRlcjoiIn19KSl9fXJldHVybiBzfSxlLmNvbnZlcnRXaGl0ZXNwYWNlTm9kZXNUb1NwYWNlPWZ1bmN0aW9uKGksbil7dmFyIHM9dGhpcztuPT09dm9pZCAwJiYobj0hMSk7dmFyIGE9IiIsbz0iIjtpLmZvckVhY2goZnVuY3Rpb24oYyl7dmFyIGY9cy5sb3NzeVNwYWNlKGMuc3BhY2VzLmJlZm9yZSxuKSxkPXMubG9zc3lTcGFjZShjLnJhd1NwYWNlQmVmb3JlLG4pO2ErPWYrcy5sb3NzeVNwYWNlKGMuc3BhY2VzLmFmdGVyLG4mJmYubGVuZ3RoPT09MCksbys9ZitjLnZhbHVlK3MubG9zc3lTcGFjZShjLnJhd1NwYWNlQWZ0ZXIsbiYmZC5sZW5ndGg9PT0wKX0pLG89PT1hJiYobz12b2lkIDApO3ZhciBsPXtzcGFjZTphLHJhd1NwYWNlOm99O3JldHVybiBsfSxlLmlzTmFtZWRDb21iaW5hdG9yPWZ1bmN0aW9uKGkpe3JldHVybiBpPT09dm9pZCAwJiYoaT10aGlzLnBvc2l0aW9uKSx0aGlzLnRva2Vuc1tpKzBdJiZ0aGlzLnRva2Vuc1tpKzBdW08uRklFTERTLlRZUEVdPT09cS5zbGFzaCYmdGhpcy50b2tlbnNbaSsxXSYmdGhpcy50b2tlbnNbaSsxXVtPLkZJRUxEUy5UWVBFXT09PXEud29yZCYmdGhpcy50b2tlbnNbaSsyXSYmdGhpcy50b2tlbnNbaSsyXVtPLkZJRUxEUy5UWVBFXT09PXEuc2xhc2h9LGUubmFtZWRDb21iaW5hdG9yPWZ1bmN0aW9uKCl7aWYodGhpcy5pc05hbWVkQ29tYmluYXRvcigpKXt2YXIgaT10aGlzLmNvbnRlbnQodGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbisxXSksbj0oMCx1ZS51bmVzYykoaSkudG9Mb3dlckNhc2UoKSxzPXt9O24hPT1pJiYocy52YWx1ZT0iLyIraSsiLyIpO3ZhciBhPW5ldyBwby5kZWZhdWx0KHt2YWx1ZToiLyIrbisiLyIsc291cmNlOkh0KHRoaXMuY3VyclRva2VuW08uRklFTERTLlNUQVJUX0xJTkVdLHRoaXMuY3VyclRva2VuW08uRklFTERTLlNUQVJUX0NPTF0sdGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbisyXVtPLkZJRUxEUy5FTkRfTElORV0sdGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbisyXVtPLkZJRUxEUy5FTkRfQ09MXSksc291cmNlSW5kZXg6dGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuU1RBUlRfUE9TXSxyYXdzOnN9KTtyZXR1cm4gdGhpcy5wb3NpdGlvbj10aGlzLnBvc2l0aW9uKzMsYX1lbHNlIHRoaXMudW5leHBlY3RlZCgpfSxlLmNvbWJpbmF0b3I9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2lmKHRoaXMuY29udGVudCgpPT09InwiKXJldHVybiB0aGlzLm5hbWVzcGFjZSgpO3ZhciBuPXRoaXMubG9jYXRlTmV4dE1lYW5pbmdmdWxUb2tlbih0aGlzLnBvc2l0aW9uKTtpZihuPDB8fHRoaXMudG9rZW5zW25dW08uRklFTERTLlRZUEVdPT09cS5jb21tYXx8dGhpcy50b2tlbnNbbl1bTy5GSUVMRFMuVFlQRV09PT1xLmNsb3NlUGFyZW50aGVzaXMpe3ZhciBzPXRoaXMucGFyc2VXaGl0ZXNwYWNlRXF1aXZhbGVudFRva2VucyhuKTtpZihzLmxlbmd0aD4wKXt2YXIgYT10aGlzLmN1cnJlbnQubGFzdDtpZihhKXt2YXIgbz10aGlzLmNvbnZlcnRXaGl0ZXNwYWNlTm9kZXNUb1NwYWNlKHMpLGw9by5zcGFjZSxjPW8ucmF3U3BhY2U7YyE9PXZvaWQgMCYmKGEucmF3U3BhY2VBZnRlcis9YyksYS5zcGFjZXMuYWZ0ZXIrPWx9ZWxzZSBzLmZvckVhY2goZnVuY3Rpb24oVCl7cmV0dXJuIGkubmV3Tm9kZShUKX0pfXJldHVybn12YXIgZj10aGlzLmN1cnJUb2tlbixkPXZvaWQgMDtuPnRoaXMucG9zaXRpb24mJihkPXRoaXMucGFyc2VXaGl0ZXNwYWNlRXF1aXZhbGVudFRva2VucyhuKSk7dmFyIHA7aWYodGhpcy5pc05hbWVkQ29tYmluYXRvcigpP3A9dGhpcy5uYW1lZENvbWJpbmF0b3IoKTp0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5UWVBFXT09PXEuY29tYmluYXRvcj8ocD1uZXcgcG8uZGVmYXVsdCh7dmFsdWU6dGhpcy5jb250ZW50KCksc291cmNlOnNyKHRoaXMuY3VyclRva2VuKSxzb3VyY2VJbmRleDp0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5TVEFSVF9QT1NdfSksdGhpcy5wb3NpdGlvbisrKTptb1t0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5UWVBFXV18fGR8fHRoaXMudW5leHBlY3RlZCgpLHApe2lmKGQpe3ZhciBoPXRoaXMuY29udmVydFdoaXRlc3BhY2VOb2Rlc1RvU3BhY2UoZCksYj1oLnNwYWNlLHY9aC5yYXdTcGFjZTtwLnNwYWNlcy5iZWZvcmU9YixwLnJhd1NwYWNlQmVmb3JlPXZ9fWVsc2V7dmFyIHk9dGhpcy5jb252ZXJ0V2hpdGVzcGFjZU5vZGVzVG9TcGFjZShkLCEwKSx3PXkuc3BhY2Usaz15LnJhd1NwYWNlO2t8fChrPXcpO3ZhciBTPXt9LEU9e3NwYWNlczp7fX07dy5lbmRzV2l0aCgiICIpJiZrLmVuZHNXaXRoKCIgIik/KFMuYmVmb3JlPXcuc2xpY2UoMCx3Lmxlbmd0aC0xKSxFLnNwYWNlcy5iZWZvcmU9ay5zbGljZSgwLGsubGVuZ3RoLTEpKTp3LnN0YXJ0c1dpdGgoIiAiKSYmay5zdGFydHNXaXRoKCIgIik/KFMuYWZ0ZXI9dy5zbGljZSgxKSxFLnNwYWNlcy5hZnRlcj1rLnNsaWNlKDEpKTpFLnZhbHVlPWsscD1uZXcgcG8uZGVmYXVsdCh7dmFsdWU6IiAiLHNvdXJjZTpnbyhmLHRoaXMudG9rZW5zW3RoaXMucG9zaXRpb24tMV0pLHNvdXJjZUluZGV4OmZbTy5GSUVMRFMuU1RBUlRfUE9TXSxzcGFjZXM6UyxyYXdzOkV9KX1yZXR1cm4gdGhpcy5jdXJyVG9rZW4mJnRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdPT09cS5zcGFjZSYmKHAuc3BhY2VzLmFmdGVyPXRoaXMub3B0aW9uYWxTcGFjZSh0aGlzLmNvbnRlbnQoKSksdGhpcy5wb3NpdGlvbisrKSx0aGlzLm5ld05vZGUocCl9LGUuY29tbWE9ZnVuY3Rpb24oKXtpZih0aGlzLnBvc2l0aW9uPT09dGhpcy50b2tlbnMubGVuZ3RoLTEpe3RoaXMucm9vdC50cmFpbGluZ0NvbW1hPSEwLHRoaXMucG9zaXRpb24rKztyZXR1cm59dGhpcy5jdXJyZW50Ll9pbmZlckVuZFBvc2l0aW9uKCk7dmFyIGk9bmV3IGZvLmRlZmF1bHQoe3NvdXJjZTp7c3RhcnQ6d2QodGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbisxXSl9LHNvdXJjZUluZGV4OnRoaXMudG9rZW5zW3RoaXMucG9zaXRpb24rMV1bTy5GSUVMRFMuU1RBUlRfUE9TXX0pO3RoaXMuY3VycmVudC5wYXJlbnQuYXBwZW5kKGkpLHRoaXMuY3VycmVudD1pLHRoaXMucG9zaXRpb24rK30sZS5jb21tZW50PWZ1bmN0aW9uKCl7dmFyIGk9dGhpcy5jdXJyVG9rZW47dGhpcy5uZXdOb2RlKG5ldyBtZC5kZWZhdWx0KHt2YWx1ZTp0aGlzLmNvbnRlbnQoKSxzb3VyY2U6c3IoaSksc291cmNlSW5kZXg6aVtPLkZJRUxEUy5TVEFSVF9QT1NdfSkpLHRoaXMucG9zaXRpb24rK30sZS5lcnJvcj1mdW5jdGlvbihpLG4pe3Rocm93IHRoaXMucm9vdC5lcnJvcihpLG4pfSxlLm1pc3NpbmdCYWNrc2xhc2g9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvcigiRXhwZWN0ZWQgYSBiYWNrc2xhc2ggcHJlY2VkaW5nIHRoZSBzZW1pY29sb24uIix7aW5kZXg6dGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuU1RBUlRfUE9TXX0pfSxlLm1pc3NpbmdQYXJlbnRoZXNpcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmV4cGVjdGVkKCJvcGVuaW5nIHBhcmVudGhlc2lzIix0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5TVEFSVF9QT1NdKX0sZS5taXNzaW5nU3F1YXJlQnJhY2tldD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmV4cGVjdGVkKCJvcGVuaW5nIHNxdWFyZSBicmFja2V0Iix0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5TVEFSVF9QT1NdKX0sZS51bmV4cGVjdGVkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXJyb3IoIlVuZXhwZWN0ZWQgJyIrdGhpcy5jb250ZW50KCkrIicuIEVzY2FwaW5nIHNwZWNpYWwgY2hhcmFjdGVycyB3aXRoIFxcIG1heSBoZWxwLiIsdGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuU1RBUlRfUE9TXSl9LGUudW5leHBlY3RlZFBpcGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvcigiVW5leHBlY3RlZCAnfCcuIix0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5TVEFSVF9QT1NdKX0sZS5uYW1lc3BhY2U9ZnVuY3Rpb24oKXt2YXIgaT10aGlzLnByZXZUb2tlbiYmdGhpcy5jb250ZW50KHRoaXMucHJldlRva2VuKXx8ITA7aWYodGhpcy5uZXh0VG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLndvcmQpcmV0dXJuIHRoaXMucG9zaXRpb24rKyx0aGlzLndvcmQoaSk7aWYodGhpcy5uZXh0VG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLmFzdGVyaXNrKXJldHVybiB0aGlzLnBvc2l0aW9uKyssdGhpcy51bml2ZXJzYWwoaSk7dGhpcy51bmV4cGVjdGVkUGlwZSgpfSxlLm5lc3Rpbmc9ZnVuY3Rpb24oKXtpZih0aGlzLm5leHRUb2tlbil7dmFyIGk9dGhpcy5jb250ZW50KHRoaXMubmV4dFRva2VuKTtpZihpPT09InwiKXt0aGlzLnBvc2l0aW9uKys7cmV0dXJufX12YXIgbj10aGlzLmN1cnJUb2tlbjt0aGlzLm5ld05vZGUobmV3IE5BLmRlZmF1bHQoe3ZhbHVlOnRoaXMuY29udGVudCgpLHNvdXJjZTpzcihuKSxzb3VyY2VJbmRleDpuW08uRklFTERTLlNUQVJUX1BPU119KSksdGhpcy5wb3NpdGlvbisrfSxlLnBhcmVudGhlc2VzPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcy5jdXJyZW50Lmxhc3Qsbj0xO2lmKHRoaXMucG9zaXRpb24rKyxpJiZpLnR5cGU9PT1GQS5QU0VVRE8pe3ZhciBzPW5ldyBmby5kZWZhdWx0KHtzb3VyY2U6e3N0YXJ0OndkKHRoaXMudG9rZW5zW3RoaXMucG9zaXRpb25dKX0sc291cmNlSW5kZXg6dGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbl1bTy5GSUVMRFMuU1RBUlRfUE9TXX0pLGE9dGhpcy5jdXJyZW50O2ZvcihpLmFwcGVuZChzKSx0aGlzLmN1cnJlbnQ9czt0aGlzLnBvc2l0aW9uPHRoaXMudG9rZW5zLmxlbmd0aCYmbjspdGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLm9wZW5QYXJlbnRoZXNpcyYmbisrLHRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdPT09cS5jbG9zZVBhcmVudGhlc2lzJiZuLS0sbj90aGlzLnBhcnNlKCk6KHRoaXMuY3VycmVudC5zb3VyY2UuZW5kPXZkKHRoaXMuY3VyclRva2VuKSx0aGlzLmN1cnJlbnQucGFyZW50LnNvdXJjZS5lbmQ9dmQodGhpcy5jdXJyVG9rZW4pLHRoaXMucG9zaXRpb24rKyk7dGhpcy5jdXJyZW50PWF9ZWxzZXtmb3IodmFyIG89dGhpcy5jdXJyVG9rZW4sbD0iKCIsYzt0aGlzLnBvc2l0aW9uPHRoaXMudG9rZW5zLmxlbmd0aCYmbjspdGhpcy5jdXJyVG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLm9wZW5QYXJlbnRoZXNpcyYmbisrLHRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdPT09cS5jbG9zZVBhcmVudGhlc2lzJiZuLS0sYz10aGlzLmN1cnJUb2tlbixsKz10aGlzLnBhcnNlUGFyZW50aGVzaXNUb2tlbih0aGlzLmN1cnJUb2tlbiksdGhpcy5wb3NpdGlvbisrO2k/aS5hcHBlbmRUb1Byb3BlcnR5QW5kRXNjYXBlKCJ2YWx1ZSIsbCxsKTp0aGlzLm5ld05vZGUobmV3IGNvLmRlZmF1bHQoe3ZhbHVlOmwsc291cmNlOkh0KG9bTy5GSUVMRFMuU1RBUlRfTElORV0sb1tPLkZJRUxEUy5TVEFSVF9DT0xdLGNbTy5GSUVMRFMuRU5EX0xJTkVdLGNbTy5GSUVMRFMuRU5EX0NPTF0pLHNvdXJjZUluZGV4Om9bTy5GSUVMRFMuU1RBUlRfUE9TXX0pKX1pZihuKXJldHVybiB0aGlzLmV4cGVjdGVkKCJjbG9zaW5nIHBhcmVudGhlc2lzIix0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5TVEFSVF9QT1NdKX0sZS5wc2V1ZG89ZnVuY3Rpb24oKXtmb3IodmFyIGk9dGhpcyxuPSIiLHM9dGhpcy5jdXJyVG9rZW47dGhpcy5jdXJyVG9rZW4mJnRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdPT09cS5jb2xvbjspbis9dGhpcy5jb250ZW50KCksdGhpcy5wb3NpdGlvbisrO2lmKCF0aGlzLmN1cnJUb2tlbilyZXR1cm4gdGhpcy5leHBlY3RlZChbInBzZXVkby1jbGFzcyIsInBzZXVkby1lbGVtZW50Il0sdGhpcy5wb3NpdGlvbi0xKTtpZih0aGlzLmN1cnJUb2tlbltPLkZJRUxEUy5UWVBFXT09PXEud29yZCl0aGlzLnNwbGl0V29yZCghMSxmdW5jdGlvbihhLG8pe24rPWEsaS5uZXdOb2RlKG5ldyBMQS5kZWZhdWx0KHt2YWx1ZTpuLHNvdXJjZTpnbyhzLGkuY3VyclRva2VuKSxzb3VyY2VJbmRleDpzW08uRklFTERTLlNUQVJUX1BPU119KSksbz4xJiZpLm5leHRUb2tlbiYmaS5uZXh0VG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLm9wZW5QYXJlbnRoZXNpcyYmaS5lcnJvcigiTWlzcGxhY2VkIHBhcmVudGhlc2lzLiIse2luZGV4OmkubmV4dFRva2VuW08uRklFTERTLlNUQVJUX1BPU119KX0pO2Vsc2UgcmV0dXJuIHRoaXMuZXhwZWN0ZWQoWyJwc2V1ZG8tY2xhc3MiLCJwc2V1ZG8tZWxlbWVudCJdLHRoaXMuY3VyclRva2VuW08uRklFTERTLlNUQVJUX1BPU10pfSxlLnNwYWNlPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcy5jb250ZW50KCk7dGhpcy5wb3NpdGlvbj09PTB8fHRoaXMucHJldlRva2VuW08uRklFTERTLlRZUEVdPT09cS5jb21tYXx8dGhpcy5wcmV2VG9rZW5bTy5GSUVMRFMuVFlQRV09PT1xLm9wZW5QYXJlbnRoZXNpc3x8dGhpcy5jdXJyZW50Lm5vZGVzLmV2ZXJ5KGZ1bmN0aW9uKG4pe3JldHVybiBuLnR5cGU9PT0iY29tbWVudCJ9KT8odGhpcy5zcGFjZXM9dGhpcy5vcHRpb25hbFNwYWNlKGkpLHRoaXMucG9zaXRpb24rKyk6dGhpcy5wb3NpdGlvbj09PXRoaXMudG9rZW5zLmxlbmd0aC0xfHx0aGlzLm5leHRUb2tlbltPLkZJRUxEUy5UWVBFXT09PXEuY29tbWF8fHRoaXMubmV4dFRva2VuW08uRklFTERTLlRZUEVdPT09cS5jbG9zZVBhcmVudGhlc2lzPyh0aGlzLmN1cnJlbnQubGFzdC5zcGFjZXMuYWZ0ZXI9dGhpcy5vcHRpb25hbFNwYWNlKGkpLHRoaXMucG9zaXRpb24rKyk6dGhpcy5jb21iaW5hdG9yKCl9LGUuc3RyaW5nPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcy5jdXJyVG9rZW47dGhpcy5uZXdOb2RlKG5ldyBjby5kZWZhdWx0KHt2YWx1ZTp0aGlzLmNvbnRlbnQoKSxzb3VyY2U6c3IoaSksc291cmNlSW5kZXg6aVtPLkZJRUxEUy5TVEFSVF9QT1NdfSkpLHRoaXMucG9zaXRpb24rK30sZS51bml2ZXJzYWw9ZnVuY3Rpb24oaSl7dmFyIG49dGhpcy5uZXh0VG9rZW47aWYobiYmdGhpcy5jb250ZW50KG4pPT09InwiKXJldHVybiB0aGlzLnBvc2l0aW9uKyssdGhpcy5uYW1lc3BhY2UoKTt2YXIgcz10aGlzLmN1cnJUb2tlbjt0aGlzLm5ld05vZGUobmV3IE1BLmRlZmF1bHQoe3ZhbHVlOnRoaXMuY29udGVudCgpLHNvdXJjZTpzcihzKSxzb3VyY2VJbmRleDpzW08uRklFTERTLlNUQVJUX1BPU119KSxpKSx0aGlzLnBvc2l0aW9uKyt9LGUuc3BsaXRXb3JkPWZ1bmN0aW9uKGksbil7Zm9yKHZhciBzPXRoaXMsYT10aGlzLm5leHRUb2tlbixvPXRoaXMuY29udGVudCgpO2EmJn5bcS5kb2xsYXIscS5jYXJldCxxLmVxdWFscyxxLndvcmRdLmluZGV4T2YoYVtPLkZJRUxEUy5UWVBFXSk7KXt0aGlzLnBvc2l0aW9uKys7dmFyIGw9dGhpcy5jb250ZW50KCk7aWYobys9bCxsLmxhc3RJbmRleE9mKCJcXCIpPT09bC5sZW5ndGgtMSl7dmFyIGM9dGhpcy5uZXh0VG9rZW47YyYmY1tPLkZJRUxEUy5UWVBFXT09PXEuc3BhY2UmJihvKz10aGlzLnJlcXVpcmVkU3BhY2UodGhpcy5jb250ZW50KGMpKSx0aGlzLnBvc2l0aW9uKyspfWE9dGhpcy5uZXh0VG9rZW59dmFyIGY9eW8obywiLiIpLmZpbHRlcihmdW5jdGlvbihiKXt2YXIgdj1vW2ItMV09PT0iXFwiLHk9L15cZCtcLlxkKyUkLy50ZXN0KG8pO3JldHVybiF2JiYheX0pLGQ9eW8obywiIyIpLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gb1tiLTFdIT09IlxcIn0pLHA9eW8obywiI3siKTtwLmxlbmd0aCYmKGQ9ZC5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIX5wLmluZGV4T2YoYil9KSk7dmFyIGg9KDAsQkEuZGVmYXVsdCkoVUEoWzBdLmNvbmNhdChmLGQpKSk7aC5mb3JFYWNoKGZ1bmN0aW9uKGIsdil7dmFyIHk9aFt2KzFdfHxvLmxlbmd0aCx3PW8uc2xpY2UoYix5KTtpZih2PT09MCYmbilyZXR1cm4gbi5jYWxsKHMsdyxoLmxlbmd0aCk7dmFyIGssUz1zLmN1cnJUb2tlbixFPVNbTy5GSUVMRFMuU1RBUlRfUE9TXStoW3ZdLFQ9SHQoU1sxXSxTWzJdK2IsU1szXSxTWzJdKyh5LTEpKTtpZih+Zi5pbmRleE9mKGIpKXt2YXIgQj17dmFsdWU6dy5zbGljZSgxKSxzb3VyY2U6VCxzb3VyY2VJbmRleDpFfTtrPW5ldyBEQS5kZWZhdWx0KGFyKEIsInZhbHVlIikpfWVsc2UgaWYofmQuaW5kZXhPZihiKSl7dmFyIE49e3ZhbHVlOncuc2xpY2UoMSksc291cmNlOlQsc291cmNlSW5kZXg6RX07az1uZXcgcUEuZGVmYXVsdChhcihOLCJ2YWx1ZSIpKX1lbHNle3ZhciBSPXt2YWx1ZTp3LHNvdXJjZTpULHNvdXJjZUluZGV4OkV9O2FyKFIsInZhbHVlIiksaz1uZXcgJEEuZGVmYXVsdChSKX1zLm5ld05vZGUoayxpKSxpPW51bGx9KSx0aGlzLnBvc2l0aW9uKyt9LGUud29yZD1mdW5jdGlvbihpKXt2YXIgbj10aGlzLm5leHRUb2tlbjtyZXR1cm4gbiYmdGhpcy5jb250ZW50KG4pPT09InwiPyh0aGlzLnBvc2l0aW9uKyssdGhpcy5uYW1lc3BhY2UoKSk6dGhpcy5zcGxpdFdvcmQoaSl9LGUubG9vcD1mdW5jdGlvbigpe2Zvcig7dGhpcy5wb3NpdGlvbjx0aGlzLnRva2Vucy5sZW5ndGg7KXRoaXMucGFyc2UoITApO3JldHVybiB0aGlzLmN1cnJlbnQuX2luZmVyRW5kUG9zaXRpb24oKSx0aGlzLnJvb3R9LGUucGFyc2U9ZnVuY3Rpb24oaSl7c3dpdGNoKHRoaXMuY3VyclRva2VuW08uRklFTERTLlRZUEVdKXtjYXNlIHEuc3BhY2U6dGhpcy5zcGFjZSgpO2JyZWFrO2Nhc2UgcS5jb21tZW50OnRoaXMuY29tbWVudCgpO2JyZWFrO2Nhc2UgcS5vcGVuUGFyZW50aGVzaXM6dGhpcy5wYXJlbnRoZXNlcygpO2JyZWFrO2Nhc2UgcS5jbG9zZVBhcmVudGhlc2lzOmkmJnRoaXMubWlzc2luZ1BhcmVudGhlc2lzKCk7YnJlYWs7Y2FzZSBxLm9wZW5TcXVhcmU6dGhpcy5hdHRyaWJ1dGUoKTticmVhaztjYXNlIHEuZG9sbGFyOmNhc2UgcS5jYXJldDpjYXNlIHEuZXF1YWxzOmNhc2UgcS53b3JkOnRoaXMud29yZCgpO2JyZWFrO2Nhc2UgcS5jb2xvbjp0aGlzLnBzZXVkbygpO2JyZWFrO2Nhc2UgcS5jb21tYTp0aGlzLmNvbW1hKCk7YnJlYWs7Y2FzZSBxLmFzdGVyaXNrOnRoaXMudW5pdmVyc2FsKCk7YnJlYWs7Y2FzZSBxLmFtcGVyc2FuZDp0aGlzLm5lc3RpbmcoKTticmVhaztjYXNlIHEuc2xhc2g6Y2FzZSBxLmNvbWJpbmF0b3I6dGhpcy5jb21iaW5hdG9yKCk7YnJlYWs7Y2FzZSBxLnN0cjp0aGlzLnN0cmluZygpO2JyZWFrO2Nhc2UgcS5jbG9zZVNxdWFyZTp0aGlzLm1pc3NpbmdTcXVhcmVCcmFja2V0KCk7Y2FzZSBxLnNlbWljb2xvbjp0aGlzLm1pc3NpbmdCYWNrc2xhc2goKTtkZWZhdWx0OnRoaXMudW5leHBlY3RlZCgpfX0sZS5leHBlY3RlZD1mdW5jdGlvbihpLG4scyl7aWYoQXJyYXkuaXNBcnJheShpKSl7dmFyIGE9aS5wb3AoKTtpPWkuam9pbigiLCAiKSsiIG9yICIrYX12YXIgbz0vXlthZWlvdV0vLnRlc3QoaVswXSk/ImFuIjoiYSI7cmV0dXJuIHM/dGhpcy5lcnJvcigiRXhwZWN0ZWQgIitvKyIgIitpKycsIGZvdW5kICInK3MrJyIgaW5zdGVhZC4nLHtpbmRleDpufSk6dGhpcy5lcnJvcigiRXhwZWN0ZWQgIitvKyIgIitpKyIuIix7aW5kZXg6bn0pfSxlLnJlcXVpcmVkU3BhY2U9ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMub3B0aW9ucy5sb3NzeT8iICI6aX0sZS5vcHRpb25hbFNwYWNlPWZ1bmN0aW9uKGkpe3JldHVybiB0aGlzLm9wdGlvbnMubG9zc3k/IiI6aX0sZS5sb3NzeVNwYWNlPWZ1bmN0aW9uKGksbil7cmV0dXJuIHRoaXMub3B0aW9ucy5sb3NzeT9uPyIgIjoiIjppfSxlLnBhcnNlUGFyZW50aGVzaXNUb2tlbj1mdW5jdGlvbihpKXt2YXIgbj10aGlzLmNvbnRlbnQoaSk7cmV0dXJuIGlbTy5GSUVMRFMuVFlQRV09PT1xLnNwYWNlP3RoaXMucmVxdWlyZWRTcGFjZShuKTpufSxlLm5ld05vZGU9ZnVuY3Rpb24oaSxuKXtyZXR1cm4gbiYmKC9eICskLy50ZXN0KG4pJiYodGhpcy5vcHRpb25zLmxvc3N5fHwodGhpcy5zcGFjZXM9KHRoaXMuc3BhY2VzfHwiIikrbiksbj0hMCksaS5uYW1lc3BhY2U9bixhcihpLCJuYW1lc3BhY2UiKSksdGhpcy5zcGFjZXMmJihpLnNwYWNlcy5iZWZvcmU9dGhpcy5zcGFjZXMsdGhpcy5zcGFjZXM9IiIpLHRoaXMuY3VycmVudC5hcHBlbmQoaSl9LGUuY29udGVudD1mdW5jdGlvbihpKXtyZXR1cm4gaT09PXZvaWQgMCYmKGk9dGhpcy5jdXJyVG9rZW4pLHRoaXMuY3NzLnNsaWNlKGlbTy5GSUVMRFMuU1RBUlRfUE9TXSxpW08uRklFTERTLkVORF9QT1NdKX0sZS5sb2NhdGVOZXh0TWVhbmluZ2Z1bFRva2VuPWZ1bmN0aW9uKGkpe2k9PT12b2lkIDAmJihpPXRoaXMucG9zaXRpb24rMSk7Zm9yKHZhciBuPWk7bjx0aGlzLnRva2Vucy5sZW5ndGg7KWlmKHpBW3RoaXMudG9rZW5zW25dW08uRklFTERTLlRZUEVdXSl7bisrO2NvbnRpbnVlfWVsc2UgcmV0dXJuIG47cmV0dXJuLTF9LGpBKHIsW3trZXk6ImN1cnJUb2tlbiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9rZW5zW3RoaXMucG9zaXRpb25dfX0se2tleToibmV4dFRva2VuIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b2tlbnNbdGhpcy5wb3NpdGlvbisxXX19LHtrZXk6InByZXZUb2tlbiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9rZW5zW3RoaXMucG9zaXRpb24tMV19fV0pLHJ9KCk7a2kuZGVmYXVsdD1WQTt4ZC5leHBvcnRzPWtpLmRlZmF1bHR9KTt2YXIgQWQ9eCgoU2ksU2QpPT57dSgpOyJ1c2Ugc3RyaWN0IjtTaS5fX2VzTW9kdWxlPSEwO1NpLmRlZmF1bHQ9dm9pZCAwO3ZhciBIQT1XQShrZCgpKTtmdW5jdGlvbiBXQShyKXtyZXR1cm4gciYmci5fX2VzTW9kdWxlP3I6e2RlZmF1bHQ6cn19dmFyIEdBPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0LGkpe3RoaXMuZnVuYz10fHxmdW5jdGlvbigpe30sdGhpcy5mdW5jUmVzPW51bGwsdGhpcy5vcHRpb25zPWl9dmFyIGU9ci5wcm90b3R5cGU7cmV0dXJuIGUuX3Nob3VsZFVwZGF0ZVNlbGVjdG9yPWZ1bmN0aW9uKGksbil7bj09PXZvaWQgMCYmKG49e30pO3ZhciBzPU9iamVjdC5hc3NpZ24oe30sdGhpcy5vcHRpb25zLG4pO3JldHVybiBzLnVwZGF0ZVNlbGVjdG9yPT09ITE/ITE6dHlwZW9mIGkhPSJzdHJpbmcifSxlLl9pc0xvc3N5PWZ1bmN0aW9uKGkpe2k9PT12b2lkIDAmJihpPXt9KTt2YXIgbj1PYmplY3QuYXNzaWduKHt9LHRoaXMub3B0aW9ucyxpKTtyZXR1cm4gbi5sb3NzbGVzcz09PSExfSxlLl9yb290PWZ1bmN0aW9uKGksbil7bj09PXZvaWQgMCYmKG49e30pO3ZhciBzPW5ldyBIQS5kZWZhdWx0KGksdGhpcy5fcGFyc2VPcHRpb25zKG4pKTtyZXR1cm4gcy5yb290fSxlLl9wYXJzZU9wdGlvbnM9ZnVuY3Rpb24oaSl7cmV0dXJue2xvc3N5OnRoaXMuX2lzTG9zc3koaSl9fSxlLl9ydW49ZnVuY3Rpb24oaSxuKXt2YXIgcz10aGlzO3JldHVybiBuPT09dm9pZCAwJiYobj17fSksbmV3IFByb21pc2UoZnVuY3Rpb24oYSxvKXt0cnl7dmFyIGw9cy5fcm9vdChpLG4pO1Byb21pc2UucmVzb2x2ZShzLmZ1bmMobCkpLnRoZW4oZnVuY3Rpb24oYyl7dmFyIGY9dm9pZCAwO3JldHVybiBzLl9zaG91bGRVcGRhdGVTZWxlY3RvcihpLG4pJiYoZj1sLnRvU3RyaW5nKCksaS5zZWxlY3Rvcj1mKSx7dHJhbnNmb3JtOmMscm9vdDpsLHN0cmluZzpmfX0pLnRoZW4oYSxvKX1jYXRjaChjKXtvKGMpO3JldHVybn19KX0sZS5fcnVuU3luYz1mdW5jdGlvbihpLG4pe249PT12b2lkIDAmJihuPXt9KTt2YXIgcz10aGlzLl9yb290KGksbiksYT10aGlzLmZ1bmMocyk7aWYoYSYmdHlwZW9mIGEudGhlbj09ImZ1bmN0aW9uIil0aHJvdyBuZXcgRXJyb3IoIlNlbGVjdG9yIHByb2Nlc3NvciByZXR1cm5lZCBhIHByb21pc2UgdG8gYSBzeW5jaHJvbm91cyBjYWxsLiIpO3ZhciBvPXZvaWQgMDtyZXR1cm4gbi51cGRhdGVTZWxlY3RvciYmdHlwZW9mIGkhPSJzdHJpbmciJiYobz1zLnRvU3RyaW5nKCksaS5zZWxlY3Rvcj1vKSx7dHJhbnNmb3JtOmEscm9vdDpzLHN0cmluZzpvfX0sZS5hc3Q9ZnVuY3Rpb24oaSxuKXtyZXR1cm4gdGhpcy5fcnVuKGksbikudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5yb290fSl9LGUuYXN0U3luYz1mdW5jdGlvbihpLG4pe3JldHVybiB0aGlzLl9ydW5TeW5jKGksbikucm9vdH0sZS50cmFuc2Zvcm09ZnVuY3Rpb24oaSxuKXtyZXR1cm4gdGhpcy5fcnVuKGksbikudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy50cmFuc2Zvcm19KX0sZS50cmFuc2Zvcm1TeW5jPWZ1bmN0aW9uKGksbil7cmV0dXJuIHRoaXMuX3J1blN5bmMoaSxuKS50cmFuc2Zvcm19LGUucHJvY2Vzcz1mdW5jdGlvbihpLG4pe3JldHVybiB0aGlzLl9ydW4oaSxuKS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLnN0cmluZ3x8cy5yb290LnRvU3RyaW5nKCl9KX0sZS5wcm9jZXNzU3luYz1mdW5jdGlvbihpLG4pe3ZhciBzPXRoaXMuX3J1blN5bmMoaSxuKTtyZXR1cm4gcy5zdHJpbmd8fHMucm9vdC50b1N0cmluZygpfSxyfSgpO1NpLmRlZmF1bHQ9R0E7U2QuZXhwb3J0cz1TaS5kZWZhdWx0fSk7dmFyIENkPXgobmU9Pnt1KCk7InVzZSBzdHJpY3QiO25lLl9fZXNNb2R1bGU9ITA7bmUudW5pdmVyc2FsPW5lLnRhZz1uZS5zdHJpbmc9bmUuc2VsZWN0b3I9bmUucm9vdD1uZS5wc2V1ZG89bmUubmVzdGluZz1uZS5pZD1uZS5jb21tZW50PW5lLmNvbWJpbmF0b3I9bmUuY2xhc3NOYW1lPW5lLmF0dHJpYnV0ZT12b2lkIDA7dmFyIFFBPXplKHRvKCkpLFlBPXplKE5hKCkpLEtBPXplKHNvKCkpLFhBPXplKEZhKCkpLFpBPXplKHphKCkpLEpBPXplKG9vKCkpLGVDPXplKFlhKCkpLHRDPXplKERhKCkpLHJDPXplKCRhKCkpLGlDPXplKEdhKCkpLG5DPXplKEhhKCkpLHNDPXplKGlvKCkpO2Z1bmN0aW9uIHplKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX12YXIgYUM9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBRQS5kZWZhdWx0KGUpfTtuZS5hdHRyaWJ1dGU9YUM7dmFyIG9DPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgWUEuZGVmYXVsdChlKX07bmUuY2xhc3NOYW1lPW9DO3ZhciBsQz1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IEtBLmRlZmF1bHQoZSl9O25lLmNvbWJpbmF0b3I9bEM7dmFyIHVDPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgWEEuZGVmYXVsdChlKX07bmUuY29tbWVudD11Qzt2YXIgZkM9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBaQS5kZWZhdWx0KGUpfTtuZS5pZD1mQzt2YXIgY0M9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBKQS5kZWZhdWx0KGUpfTtuZS5uZXN0aW5nPWNDO3ZhciBwQz1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IGVDLmRlZmF1bHQoZSl9O25lLnBzZXVkbz1wQzt2YXIgZEM9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyB0Qy5kZWZhdWx0KGUpfTtuZS5yb290PWRDO3ZhciBoQz1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IHJDLmRlZmF1bHQoZSl9O25lLnNlbGVjdG9yPWhDO3ZhciBtQz1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IGlDLmRlZmF1bHQoZSl9O25lLnN0cmluZz1tQzt2YXIgZ0M9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBuQy5kZWZhdWx0KGUpfTtuZS50YWc9Z0M7dmFyIHlDPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgc0MuZGVmYXVsdChlKX07bmUudW5pdmVyc2FsPXlDfSk7dmFyIFRkPXgoWj0+e3UoKTsidXNlIHN0cmljdCI7Wi5fX2VzTW9kdWxlPSEwO1ouaXNDb21tZW50PVouaXNDb21iaW5hdG9yPVouaXNDbGFzc05hbWU9Wi5pc0F0dHJpYnV0ZT12b2lkIDA7Wi5pc0NvbnRhaW5lcj1UQztaLmlzSWRlbnRpZmllcj12b2lkIDA7Wi5pc05hbWVzcGFjZT1SQztaLmlzTmVzdGluZz12b2lkIDA7Wi5pc05vZGU9Ym87Wi5pc1BzZXVkbz12b2lkIDA7Wi5pc1BzZXVkb0NsYXNzPU9DO1ouaXNQc2V1ZG9FbGVtZW50PU9kO1ouaXNVbml2ZXJzYWw9Wi5pc1RhZz1aLmlzU3RyaW5nPVouaXNTZWxlY3Rvcj1aLmlzUm9vdD12b2lkIDA7dmFyIGZlPVNlKCksT2UsYkM9KE9lPXt9LE9lW2ZlLkFUVFJJQlVURV09ITAsT2VbZmUuQ0xBU1NdPSEwLE9lW2ZlLkNPTUJJTkFUT1JdPSEwLE9lW2ZlLkNPTU1FTlRdPSEwLE9lW2ZlLklEXT0hMCxPZVtmZS5ORVNUSU5HXT0hMCxPZVtmZS5QU0VVRE9dPSEwLE9lW2ZlLlJPT1RdPSEwLE9lW2ZlLlNFTEVDVE9SXT0hMCxPZVtmZS5TVFJJTkddPSEwLE9lW2ZlLlRBR109ITAsT2VbZmUuVU5JVkVSU0FMXT0hMCxPZSk7ZnVuY3Rpb24gYm8ocil7cmV0dXJuIHR5cGVvZiByPT0ib2JqZWN0IiYmYkNbci50eXBlXX1mdW5jdGlvbiBVZShyLGUpe3JldHVybiBibyhlKSYmZS50eXBlPT09cn12YXIgX2Q9VWUuYmluZChudWxsLGZlLkFUVFJJQlVURSk7Wi5pc0F0dHJpYnV0ZT1fZDt2YXIgd0M9VWUuYmluZChudWxsLGZlLkNMQVNTKTtaLmlzQ2xhc3NOYW1lPXdDO3ZhciB2Qz1VZS5iaW5kKG51bGwsZmUuQ09NQklOQVRPUik7Wi5pc0NvbWJpbmF0b3I9dkM7dmFyIHhDPVVlLmJpbmQobnVsbCxmZS5DT01NRU5UKTtaLmlzQ29tbWVudD14Qzt2YXIga0M9VWUuYmluZChudWxsLGZlLklEKTtaLmlzSWRlbnRpZmllcj1rQzt2YXIgU0M9VWUuYmluZChudWxsLGZlLk5FU1RJTkcpO1ouaXNOZXN0aW5nPVNDO3ZhciB3bz1VZS5iaW5kKG51bGwsZmUuUFNFVURPKTtaLmlzUHNldWRvPXdvO3ZhciBBQz1VZS5iaW5kKG51bGwsZmUuUk9PVCk7Wi5pc1Jvb3Q9QUM7dmFyIENDPVVlLmJpbmQobnVsbCxmZS5TRUxFQ1RPUik7Wi5pc1NlbGVjdG9yPUNDO3ZhciBfQz1VZS5iaW5kKG51bGwsZmUuU1RSSU5HKTtaLmlzU3RyaW5nPV9DO3ZhciBFZD1VZS5iaW5kKG51bGwsZmUuVEFHKTtaLmlzVGFnPUVkO3ZhciBFQz1VZS5iaW5kKG51bGwsZmUuVU5JVkVSU0FMKTtaLmlzVW5pdmVyc2FsPUVDO2Z1bmN0aW9uIE9kKHIpe3JldHVybiB3byhyKSYmci52YWx1ZSYmKHIudmFsdWUuc3RhcnRzV2l0aCgiOjoiKXx8ci52YWx1ZS50b0xvd2VyQ2FzZSgpPT09IjpiZWZvcmUifHxyLnZhbHVlLnRvTG93ZXJDYXNlKCk9PT0iOmFmdGVyInx8ci52YWx1ZS50b0xvd2VyQ2FzZSgpPT09IjpmaXJzdC1sZXR0ZXIifHxyLnZhbHVlLnRvTG93ZXJDYXNlKCk9PT0iOmZpcnN0LWxpbmUiKX1mdW5jdGlvbiBPQyhyKXtyZXR1cm4gd28ocikmJiFPZChyKX1mdW5jdGlvbiBUQyhyKXtyZXR1cm4hIShibyhyKSYmci53YWxrKX1mdW5jdGlvbiBSQyhyKXtyZXR1cm4gX2Qocil8fEVkKHIpfX0pO3ZhciBSZD14KEtlPT57dSgpOyJ1c2Ugc3RyaWN0IjtLZS5fX2VzTW9kdWxlPSEwO3ZhciB2bz1TZSgpO09iamVjdC5rZXlzKHZvKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe3I9PT0iZGVmYXVsdCJ8fHI9PT0iX19lc01vZHVsZSJ8fHIgaW4gS2UmJktlW3JdPT09dm9bcl18fChLZVtyXT12b1tyXSl9KTt2YXIgeG89Q2QoKTtPYmplY3Qua2V5cyh4bykuZm9yRWFjaChmdW5jdGlvbihyKXtyPT09ImRlZmF1bHQifHxyPT09Il9fZXNNb2R1bGUifHxyIGluIEtlJiZLZVtyXT09PXhvW3JdfHwoS2Vbcl09eG9bcl0pfSk7dmFyIGtvPVRkKCk7T2JqZWN0LmtleXMoa28pLmZvckVhY2goZnVuY3Rpb24ocil7cj09PSJkZWZhdWx0Inx8cj09PSJfX2VzTW9kdWxlInx8ciBpbiBLZSYmS2Vbcl09PT1rb1tyXXx8KEtlW3JdPWtvW3JdKX0pfSk7dmFyIGl0PXgoKEFpLElkKT0+e3UoKTsidXNlIHN0cmljdCI7QWkuX19lc01vZHVsZT0hMDtBaS5kZWZhdWx0PXZvaWQgMDt2YXIgUEM9cUMoQWQoKSksSUM9REMoUmQoKSk7ZnVuY3Rpb24gUGQocil7aWYodHlwZW9mIFdlYWtNYXAhPSJmdW5jdGlvbiIpcmV0dXJuIG51bGw7dmFyIGU9bmV3IFdlYWtNYXAsdD1uZXcgV2Vha01hcDtyZXR1cm4oUGQ9ZnVuY3Rpb24obil7cmV0dXJuIG4/dDplfSkocil9ZnVuY3Rpb24gREMocixlKXtpZighZSYmciYmci5fX2VzTW9kdWxlKXJldHVybiByO2lmKHI9PT1udWxsfHx0eXBlb2YgciE9Im9iamVjdCImJnR5cGVvZiByIT0iZnVuY3Rpb24iKXJldHVybntkZWZhdWx0OnJ9O3ZhciB0PVBkKGUpO2lmKHQmJnQuaGFzKHIpKXJldHVybiB0LmdldChyKTt2YXIgaT17fSxuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjtmb3IodmFyIHMgaW4gcilpZihzIT09ImRlZmF1bHQiJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixzKSl7dmFyIGE9bj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIscyk6bnVsbDthJiYoYS5nZXR8fGEuc2V0KT9PYmplY3QuZGVmaW5lUHJvcGVydHkoaSxzLGEpOmlbc109cltzXX1yZXR1cm4gaS5kZWZhdWx0PXIsdCYmdC5zZXQocixpKSxpfWZ1bmN0aW9uIHFDKHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX12YXIgU289ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBQQy5kZWZhdWx0KGUpfTtPYmplY3QuYXNzaWduKFNvLElDKTtkZWxldGUgU28uX19lc01vZHVsZTt2YXIgJEM9U287QWkuZGVmYXVsdD0kQztJZC5leHBvcnRzPUFpLmRlZmF1bHR9KTtmdW5jdGlvbiBtdChyKXtyZXR1cm5bImZvbnRTaXplIiwib3V0bGluZSJdLmluY2x1ZGVzKHIpP2U9Pih0eXBlb2YgZT09ImZ1bmN0aW9uIiYmKGU9ZSh7fSkpLEFycmF5LmlzQXJyYXkoZSkmJihlPWVbMF0pLGUpOnI9PT0iZm9udEZhbWlseSI/ZT0+e3R5cGVvZiBlPT0iZnVuY3Rpb24iJiYoZT1lKHt9KSk7bGV0IHQ9QXJyYXkuaXNBcnJheShlKSYma2UoZVsxXSk/ZVswXTplO3JldHVybiBBcnJheS5pc0FycmF5KHQpP3Quam9pbigiLCAiKTp0fTpbImJveFNoYWRvdyIsInRyYW5zaXRpb25Qcm9wZXJ0eSIsInRyYW5zaXRpb25EdXJhdGlvbiIsInRyYW5zaXRpb25EZWxheSIsInRyYW5zaXRpb25UaW1pbmdGdW5jdGlvbiIsImJhY2tncm91bmRJbWFnZSIsImJhY2tncm91bmRTaXplIiwiYmFja2dyb3VuZENvbG9yIiwiY3Vyc29yIiwiYW5pbWF0aW9uIl0uaW5jbHVkZXMocik/ZT0+KHR5cGVvZiBlPT0iZnVuY3Rpb24iJiYoZT1lKHt9KSksQXJyYXkuaXNBcnJheShlKSYmKGU9ZS5qb2luKCIsICIpKSxlKTpbImdyaWRUZW1wbGF0ZUNvbHVtbnMiLCJncmlkVGVtcGxhdGVSb3dzIiwib2JqZWN0UG9zaXRpb24iXS5pbmNsdWRlcyhyKT9lPT4odHlwZW9mIGU9PSJmdW5jdGlvbiImJihlPWUoe30pKSx0eXBlb2YgZT09InN0cmluZyImJihlPWVlLmxpc3QuY29tbWEoZSkuam9pbigiICIpKSxlKTooZSx0PXt9KT0+KHR5cGVvZiBlPT0iZnVuY3Rpb24iJiYoZT1lKHQpKSxlKX12YXIgQ2k9UCgoKT0+e3UoKTtPdCgpO0t0KCl9KTt2YXIgQmQ9eCgoTUksT28pPT57dSgpO3ZhcntBdFJ1bGU6TEMsUnVsZTpEZH09JGUoKSxxZD1pdCgpO2Z1bmN0aW9uIEFvKHIsZSl7bGV0IHQ7dHJ5e3FkKGk9Pnt0PWl9KS5wcm9jZXNzU3luYyhyKX1jYXRjaChpKXt0aHJvdyByLmluY2x1ZGVzKCI6Iik/ZT9lLmVycm9yKCJNaXNzZWQgc2VtaWNvbG9uIik6aTplP2UuZXJyb3IoaS5tZXNzYWdlKTppfXJldHVybiB0LmF0KDApfWZ1bmN0aW9uICRkKHIsZSl7bGV0IHQ9ITE7cmV0dXJuIHIuZWFjaChpPT57aWYoaS50eXBlPT09Im5lc3RpbmciKXtsZXQgbj1lLmNsb25lKHt9KTtpLnZhbHVlIT09IiYiP2kucmVwbGFjZVdpdGgoQW8oaS52YWx1ZS5yZXBsYWNlKCImIixuLnRvU3RyaW5nKCkpKSk6aS5yZXBsYWNlV2l0aChuKSx0PSEwfWVsc2Uibm9kZXMiaW4gaSYmaS5ub2RlcyYmJGQoaSxlKSYmKHQ9ITApfSksdH1mdW5jdGlvbiBMZChyLGUpe2xldCB0PVtdO3JldHVybiByLnNlbGVjdG9ycy5mb3JFYWNoKGk9PntsZXQgbj1BbyhpLHIpO2Uuc2VsZWN0b3JzLmZvckVhY2gocz0+e2lmKCFzKXJldHVybjtsZXQgYT1BbyhzLGUpOyRkKGEsbil8fChhLnByZXBlbmQocWQuY29tYmluYXRvcih7dmFsdWU6IiAifSkpLGEucHJlcGVuZChuLmNsb25lKHt9KSkpLHQucHVzaChhLnRvU3RyaW5nKCkpfSl9KSx0fWZ1bmN0aW9uIEhuKHIsZSl7bGV0IHQ9ci5wcmV2KCk7Zm9yKGUuYWZ0ZXIocik7dCYmdC50eXBlPT09ImNvbW1lbnQiOyl7bGV0IGk9dC5wcmV2KCk7ZS5hZnRlcih0KSx0PWl9cmV0dXJuIHJ9ZnVuY3Rpb24gTUMocil7cmV0dXJuIGZ1bmN0aW9uIGUodCxpLG4scz1uKXtsZXQgYT1bXTtpZihpLmVhY2gobz0+e28udHlwZT09PSJydWxlIiYmbj9zJiYoby5zZWxlY3RvcnM9TGQodCxvKSk6by50eXBlPT09ImF0cnVsZSImJm8ubm9kZXM/cltvLm5hbWVdP2UodCxvLHMpOmlbX29dIT09ITEmJmEucHVzaChvKTphLnB1c2gobyl9KSxuJiZhLmxlbmd0aCl7bGV0IG89dC5jbG9uZSh7bm9kZXM6W119KTtmb3IobGV0IGwgb2YgYSlvLmFwcGVuZChsKTtpLnByZXBlbmQobyl9fX1mdW5jdGlvbiBDbyhyLGUsdCl7bGV0IGk9bmV3IERkKHtub2RlczpbXSxzZWxlY3RvcjpyfSk7cmV0dXJuIGkuYXBwZW5kKGUpLHQuYWZ0ZXIoaSksaX1mdW5jdGlvbiBNZChyLGUpe2xldCB0PXt9O2ZvcihsZXQgaSBvZiByKXRbaV09ITA7aWYoZSlmb3IobGV0IGkgb2YgZSl0W2kucmVwbGFjZSgvXkAvLCIiKV09ITA7cmV0dXJuIHR9ZnVuY3Rpb24gTkMocil7cj1yLnRyaW0oKTtsZXQgZT1yLm1hdGNoKC9eXCgoLiopXCkkLyk7aWYoIWUpcmV0dXJue3NlbGVjdG9yOnIsdHlwZToiYmFzaWMifTtsZXQgdD1lWzFdLm1hdGNoKC9eKHdpdGgoPzpvdXQpPyk6KC4rKSQvKTtpZih0KXtsZXQgaT10WzFdPT09IndpdGgiLG49T2JqZWN0LmZyb21FbnRyaWVzKHRbMl0udHJpbSgpLnNwbGl0KC9ccysvKS5tYXAoYT0+W2EsITBdKSk7aWYoaSYmbi5hbGwpcmV0dXJue3R5cGU6Im5vb3AifTtsZXQgcz1hPT4hIW5bYV07cmV0dXJuIG4uYWxsP3M9KCk9PiEwOmkmJihzPWE9PmE9PT0iYWxsIj8hMTohblthXSkse2VzY2FwZXM6cyx0eXBlOiJ3aXRocnVsZXMifX1yZXR1cm57dHlwZToidW5rbm93biJ9fWZ1bmN0aW9uIEJDKHIpe2xldCBlPVtdLHQ9ci5wYXJlbnQ7Zm9yKDt0JiZ0IGluc3RhbmNlb2YgTEM7KWUucHVzaCh0KSx0PXQucGFyZW50O3JldHVybiBlfWZ1bmN0aW9uIEZDKHIpe2xldCBlPXJbTmRdO2lmKCFlKXIuYWZ0ZXIoci5ub2Rlcyk7ZWxzZXtsZXQgdD1yLm5vZGVzLGksbj0tMSxzLGEsbyxsPUJDKHIpO2lmKGwuZm9yRWFjaCgoYyxmKT0+e2lmKGUoYy5uYW1lKSlpPWMsbj1mLGE9bztlbHNle2xldCBkPW87bz1jLmNsb25lKHtub2RlczpbXX0pLGQmJm8uYXBwZW5kKGQpLHM9c3x8b319KSxpP2E/KHMuYXBwZW5kKHQpLGkuYWZ0ZXIoYSkpOmkuYWZ0ZXIodCk6ci5hZnRlcih0KSxyLm5leHQoKSYmaSl7bGV0IGM7bC5zbGljZSgwLG4rMSkuZm9yRWFjaCgoZixkLHApPT57bGV0IGg9YztjPWYuY2xvbmUoe25vZGVzOltdfSksaCYmYy5hcHBlbmQoaCk7bGV0IGI9W10seT0ocFtkLTFdfHxyKS5uZXh0KCk7Zm9yKDt5OyliLnB1c2goeSkseT15Lm5leHQoKTtjLmFwcGVuZChiKX0pLGMmJihhfHx0W3QubGVuZ3RoLTFdKS5hZnRlcihjKX19ci5yZW1vdmUoKX12YXIgX289U3ltYm9sKCJyb290UnVsZU1lcmdlU2VsIiksTmQ9U3ltYm9sKCJyb290UnVsZUVzY2FwZXMiKTtmdW5jdGlvbiBqQyhyKXtsZXR7cGFyYW1zOmV9PXIse2VzY2FwZXM6dCxzZWxlY3RvcjppLHR5cGU6bn09TkMoZSk7aWYobj09PSJ1bmtub3duIil0aHJvdyByLmVycm9yKGBVbmtub3duIEAke3IubmFtZX0gcGFyYW1ldGVyICR7SlNPTi5zdHJpbmdpZnkoZSl9YCk7aWYobj09PSJiYXNpYyImJmkpe2xldCBzPW5ldyBEZCh7bm9kZXM6ci5ub2RlcyxzZWxlY3RvcjppfSk7ci5yZW1vdmVBbGwoKSxyLmFwcGVuZChzKX1yW05kXT10LHJbX29dPXQ/IXQoImFsbCIpOm49PT0ibm9vcCJ9dmFyIEVvPVN5bWJvbCgiaGFzUm9vdFJ1bGUiKTtPby5leHBvcnRzPShyPXt9KT0+e2xldCBlPU1kKFsibWVkaWEiLCJzdXBwb3J0cyIsImxheWVyIiwiY29udGFpbmVyIiwic3RhcnRpbmctc3R5bGUiXSxyLmJ1YmJsZSksdD1NQyhlKSxpPU1kKFsiZG9jdW1lbnQiLCJmb250LWZhY2UiLCJrZXlmcmFtZXMiLCItd2Via2l0LWtleWZyYW1lcyIsIi1tb3ota2V5ZnJhbWVzIl0sci51bndyYXApLG49KHIucm9vdFJ1bGVOYW1lfHwiYXQtcm9vdCIpLnJlcGxhY2UoL15ALywiIikscz1yLnByZXNlcnZlRW1wdHk7cmV0dXJue09uY2UoYSl7YS53YWxrQXRSdWxlcyhuLG89PntqQyhvKSxhW0VvXT0hMH0pfSxwb3N0Y3NzUGx1Z2luOiJwb3N0Y3NzLW5lc3RlZCIsUm9vdEV4aXQoYSl7YVtFb10mJihhLndhbGtBdFJ1bGVzKG4sRkMpLGFbRW9dPSExKX0sUnVsZShhKXtsZXQgbz0hMSxsPWEsYz0hMSxmPVtdO2EuZWFjaChkPT57ZC50eXBlPT09InJ1bGUiPyhmLmxlbmd0aCYmKGw9Q28oYS5zZWxlY3RvcixmLGwpLGY9W10pLGM9ITAsbz0hMCxkLnNlbGVjdG9ycz1MZChhLGQpLGw9SG4oZCxsKSk6ZC50eXBlPT09ImF0cnVsZSI/KGYubGVuZ3RoJiYobD1DbyhhLnNlbGVjdG9yLGYsbCksZj1bXSksZC5uYW1lPT09bj8obz0hMCx0KGEsZCwhMCxkW19vXSksbD1IbihkLGwpKTplW2QubmFtZV0/KGM9ITAsbz0hMCx0KGEsZCwhMCksbD1IbihkLGwpKTppW2QubmFtZV0/KGM9ITAsbz0hMCx0KGEsZCwhMSksbD1IbihkLGwpKTpjJiZmLnB1c2goZCkpOmQudHlwZT09PSJkZWNsIiYmYyYmZi5wdXNoKGQpfSksZi5sZW5ndGgmJihsPUNvKGEuc2VsZWN0b3IsZixsKSksbyYmcyE9PSEwJiYoYS5yYXdzLnNlbWljb2xvbj0hMCxhLm5vZGVzLmxlbmd0aD09PTAmJmEucmVtb3ZlKCkpfX19O09vLmV4cG9ydHMucG9zdGNzcz0hMH0pO3ZhciBVZD14KChOSSx6ZCk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBGZD0vLShcd3wkKS9nLGpkPShyLGUpPT5lLnRvVXBwZXJDYXNlKCksekM9cj0+KHI9ci50b0xvd2VyQ2FzZSgpLHI9PT0iZmxvYXQiPyJjc3NGbG9hdCI6ci5zdGFydHNXaXRoKCItbXMtIik/ci5zdWJzdHIoMSkucmVwbGFjZShGZCxqZCk6ci5yZXBsYWNlKEZkLGpkKSk7emQuZXhwb3J0cz16Q30pO3ZhciBQbz14KChCSSxWZCk9Pnt1KCk7dmFyIFVDPVVkKCksVkM9e2JveEZsZXg6ITAsYm94RmxleEdyb3VwOiEwLGNvbHVtbkNvdW50OiEwLGZsZXg6ITAsZmxleEdyb3c6ITAsZmxleFBvc2l0aXZlOiEwLGZsZXhTaHJpbms6ITAsZmxleE5lZ2F0aXZlOiEwLGZvbnRXZWlnaHQ6ITAsbGluZUNsYW1wOiEwLGxpbmVIZWlnaHQ6ITAsb3BhY2l0eTohMCxvcmRlcjohMCxvcnBoYW5zOiEwLHRhYlNpemU6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6b29tOiEwLGZpbGxPcGFjaXR5OiEwLHN0cm9rZURhc2hvZmZzZXQ6ITAsc3Ryb2tlT3BhY2l0eTohMCxzdHJva2VXaWR0aDohMH07ZnVuY3Rpb24gVG8ocil7cmV0dXJuIHR5cGVvZiByLm5vZGVzPT0idW5kZWZpbmVkIj8hMDpSbyhyKX1mdW5jdGlvbiBSbyhyKXtsZXQgZSx0PXt9O3JldHVybiByLmVhY2goaT0+e2lmKGkudHlwZT09PSJhdHJ1bGUiKWU9IkAiK2kubmFtZSxpLnBhcmFtcyYmKGUrPSIgIitpLnBhcmFtcyksdHlwZW9mIHRbZV09PSJ1bmRlZmluZWQiP3RbZV09VG8oaSk6QXJyYXkuaXNBcnJheSh0W2VdKT90W2VdLnB1c2goVG8oaSkpOnRbZV09W3RbZV0sVG8oaSldO2Vsc2UgaWYoaS50eXBlPT09InJ1bGUiKXtsZXQgbj1SbyhpKTtpZih0W2kuc2VsZWN0b3JdKWZvcihsZXQgcyBpbiBuKXRbaS5zZWxlY3Rvcl1bc109bltzXTtlbHNlIHRbaS5zZWxlY3Rvcl09bn1lbHNlIGlmKGkudHlwZT09PSJkZWNsIil7aS5wcm9wWzBdPT09Ii0iJiZpLnByb3BbMV09PT0iLSJ8fGkucGFyZW50JiZpLnBhcmVudC5zZWxlY3Rvcj09PSI6ZXhwb3J0Ij9lPWkucHJvcDplPVVDKGkucHJvcCk7bGV0IG49aS52YWx1ZTshaXNOYU4oaS52YWx1ZSkmJlZDW2VdJiYobj1wYXJzZUZsb2F0KGkudmFsdWUpKSxpLmltcG9ydGFudCYmKG4rPSIgIWltcG9ydGFudCIpLHR5cGVvZiB0W2VdPT0idW5kZWZpbmVkIj90W2VdPW46QXJyYXkuaXNBcnJheSh0W2VdKT90W2VdLnB1c2gobik6dFtlXT1bdFtlXSxuXX19KSx0fVZkLmV4cG9ydHM9Um99KTt2YXIgV249eCgoRkksUWQpPT57dSgpO3ZhciBfaT0kZSgpLEhkPS9ccyohaW1wb3J0YW50XHMqJC9pLEhDPXsiYm94LWZsZXgiOiEwLCJib3gtZmxleC1ncm91cCI6ITAsImNvbHVtbi1jb3VudCI6ITAsZmxleDohMCwiZmxleC1ncm93IjohMCwiZmxleC1wb3NpdGl2ZSI6ITAsImZsZXgtc2hyaW5rIjohMCwiZmxleC1uZWdhdGl2ZSI6ITAsImZvbnQtd2VpZ2h0IjohMCwibGluZS1jbGFtcCI6ITAsImxpbmUtaGVpZ2h0IjohMCxvcGFjaXR5OiEwLG9yZGVyOiEwLG9ycGhhbnM6ITAsInRhYi1zaXplIjohMCx3aWRvd3M6ITAsInotaW5kZXgiOiEwLHpvb206ITAsImZpbGwtb3BhY2l0eSI6ITAsInN0cm9rZS1kYXNob2Zmc2V0IjohMCwic3Ryb2tlLW9wYWNpdHkiOiEwLCJzdHJva2Utd2lkdGgiOiEwfTtmdW5jdGlvbiBXQyhyKXtyZXR1cm4gci5yZXBsYWNlKC8oW0EtWl0pL2csIi0kMSIpLnJlcGxhY2UoL15tcy0vLCItbXMtIikudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBXZChyLGUsdCl7dD09PSExfHx0PT09bnVsbHx8KGUuc3RhcnRzV2l0aCgiLS0iKXx8KGU9V0MoZSkpLHR5cGVvZiB0PT0ibnVtYmVyIiYmKHQ9PT0wfHxIQ1tlXT90PXQudG9TdHJpbmcoKTp0Kz0icHgiKSxlPT09ImNzcy1mbG9hdCImJihlPSJmbG9hdCIpLEhkLnRlc3QodCk/KHQ9dC5yZXBsYWNlKEhkLCIiKSxyLnB1c2goX2kuZGVjbCh7cHJvcDplLHZhbHVlOnQsaW1wb3J0YW50OiEwfSkpKTpyLnB1c2goX2kuZGVjbCh7cHJvcDplLHZhbHVlOnR9KSkpfWZ1bmN0aW9uIEdkKHIsZSx0KXtsZXQgaT1faS5hdFJ1bGUoe25hbWU6ZVsxXSxwYXJhbXM6ZVszXXx8IiJ9KTt0eXBlb2YgdD09Im9iamVjdCImJihpLm5vZGVzPVtdLElvKHQsaSkpLHIucHVzaChpKX1mdW5jdGlvbiBJbyhyLGUpe2xldCB0LGksbjtmb3IodCBpbiByKWlmKGk9clt0XSwhKGk9PT1udWxsfHx0eXBlb2YgaT09InVuZGVmaW5lZCIpKWlmKHRbMF09PT0iQCIpe2xldCBzPXQubWF0Y2goL0AoXFMrKShccysoW1xXXHddKilccyopPy8pO2lmKEFycmF5LmlzQXJyYXkoaSkpZm9yKGxldCBhIG9mIGkpR2QoZSxzLGEpO2Vsc2UgR2QoZSxzLGkpfWVsc2UgaWYoQXJyYXkuaXNBcnJheShpKSlmb3IobGV0IHMgb2YgaSlXZChlLHQscyk7ZWxzZSB0eXBlb2YgaT09Im9iamVjdCI/KG49X2kucnVsZSh7c2VsZWN0b3I6dH0pLElvKGksbiksZS5wdXNoKG4pKTpXZChlLHQsaSl9UWQuZXhwb3J0cz1mdW5jdGlvbihyKXtsZXQgZT1faS5yb290KCk7cmV0dXJuIElvKHIsZSksZX19KTt2YXIgRG89eCgoakksWWQpPT57dSgpO3ZhciBHQz1QbygpO1lkLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGNvbnNvbGUmJmNvbnNvbGUud2FybiYmZS53YXJuaW5ncygpLmZvckVhY2godD0+e2xldCBpPXQucGx1Z2lufHwiUG9zdENTUyI7Y29uc29sZS53YXJuKGkrIjogIit0LnRleHQpfSksR0MoZS5yb290KX19KTt2YXIgWGQ9eCgoekksS2QpPT57dSgpO3ZhciBRQz0kZSgpLFlDPURvKCksS0M9V24oKTtLZC5leHBvcnRzPWZ1bmN0aW9uKGUpe2xldCB0PVFDKGUpO3JldHVybiBhc3luYyBpPT57bGV0IG49YXdhaXQgdC5wcm9jZXNzKGkse3BhcnNlcjpLQyxmcm9tOnZvaWQgMH0pO3JldHVybiBZQyhuKX19fSk7dmFyIEpkPXgoKFVJLFpkKT0+e3UoKTt2YXIgWEM9JGUoKSxaQz1EbygpLEpDPVduKCk7WmQuZXhwb3J0cz1mdW5jdGlvbihyKXtsZXQgZT1YQyhyKTtyZXR1cm4gdD0+e2xldCBpPWUucHJvY2Vzcyh0LHtwYXJzZXI6SkMsZnJvbTp2b2lkIDB9KTtyZXR1cm4gWkMoaSl9fX0pO3ZhciB0aD14KChWSSxlaCk9Pnt1KCk7dmFyIGVfPVBvKCksdF89V24oKSxyXz1YZCgpLGlfPUpkKCk7ZWguZXhwb3J0cz17b2JqZWN0aWZ5OmVfLHBhcnNlOnRfLGFzeW5jOnJfLHN5bmM6aV99fSk7dmFyIG9yLHJoLEhJLFdJLEdJLFFJLGloPVAoKCk9Pnt1KCk7b3I9cGUodGgoKSkscmg9b3IuZGVmYXVsdCxIST1vci5kZWZhdWx0Lm9iamVjdGlmeSxXST1vci5kZWZhdWx0LnBhcnNlLEdJPW9yLmRlZmF1bHQuYXN5bmMsUUk9b3IuZGVmYXVsdC5zeW5jfSk7ZnVuY3Rpb24gbHIocil7cmV0dXJuIEFycmF5LmlzQXJyYXkocik/ci5mbGF0TWFwKGU9PmVlKFsoMCxuaC5kZWZhdWx0KSh7YnViYmxlOlsic2NyZWVuIl19KV0pLnByb2Nlc3MoZSx7cGFyc2VyOnJofSkucm9vdC5ub2Rlcyk6bHIoW3JdKX12YXIgbmgscW89UCgoKT0+e3UoKTtPdCgpO25oPXBlKEJkKCkpO2loKCl9KTtmdW5jdGlvbiB1cihyLGUsdD0hMSl7aWYocj09PSIiKXJldHVybiBlO2xldCBpPXR5cGVvZiBlPT0ic3RyaW5nIj8oMCxzaC5kZWZhdWx0KSgpLmFzdFN5bmMoZSk6ZTtyZXR1cm4gaS53YWxrQ2xhc3NlcyhuPT57bGV0IHM9bi52YWx1ZSxhPXQmJnMuc3RhcnRzV2l0aCgiLSIpO24udmFsdWU9YT9gLSR7cn0ke3Muc2xpY2UoMSl9YDpgJHtyfSR7c31gfSksdHlwZW9mIGU9PSJzdHJpbmciP2kudG9TdHJpbmcoKTppfXZhciBzaCxHbj1QKCgpPT57dSgpO3NoPXBlKGl0KCkpfSk7ZnVuY3Rpb24gVGUocil7bGV0IGU9YWguZGVmYXVsdC5jbGFzc05hbWUoKTtyZXR1cm4gZS52YWx1ZT1yLGp0KGU/LnJhd3M/LnZhbHVlPz9lLnZhbHVlKX12YXIgYWgsZnI9UCgoKT0+e3UoKTthaD1wZShpdCgpKTtaaSgpfSk7ZnVuY3Rpb24gJG8ocil7cmV0dXJuIGp0KGAuJHtUZShyKX1gKX1mdW5jdGlvbiBRbihyLGUpe3JldHVybiAkbyhFaShyLGUpKX1mdW5jdGlvbiBFaShyLGUpe3JldHVybiBlPT09IkRFRkFVTFQiP3I6ZT09PSItInx8ZT09PSItREVGQVVMVCI/YC0ke3J9YDplLnN0YXJ0c1dpdGgoIi0iKT9gLSR7cn0ke2V9YDplLnN0YXJ0c1dpdGgoIi8iKT9gJHtyfSR7ZX1gOmAke3J9LSR7ZX1gfXZhciBMbz1QKCgpPT57dSgpO2ZyKCk7WmkoKX0pO2Z1bmN0aW9uIEwocixlPVtbcixbcl1dXSx7ZmlsdGVyRGVmYXVsdDp0PSExLC4uLml9PXt9KXtsZXQgbj1tdChyKTtyZXR1cm4gZnVuY3Rpb24oe21hdGNoVXRpbGl0aWVzOnMsdGhlbWU6YX0pe2ZvcihsZXQgbyBvZiBlKXtsZXQgbD1BcnJheS5pc0FycmF5KG9bMF0pP286W29dO3MobC5yZWR1Y2UoKGMsW2YsZF0pPT5PYmplY3QuYXNzaWduKGMse1tmXTpwPT5kLnJlZHVjZSgoaCxiKT0+QXJyYXkuaXNBcnJheShiKT9PYmplY3QuYXNzaWduKGgse1tiWzBdXTpiWzFdfSk6T2JqZWN0LmFzc2lnbihoLHtbYl06bihwKX0pLHt9KX0pLHt9KSx7Li4uaSx2YWx1ZXM6dD9PYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXMoYShyKT8/e30pLmZpbHRlcigoW2NdKT0+YyE9PSJERUZBVUxUIikpOmEocil9KX19fXZhciBvaD1QKCgpPT57dSgpO0NpKCl9KTtmdW5jdGlvbiBUdChyKXtyZXR1cm4gcj1BcnJheS5pc0FycmF5KHIpP3I6W3JdLHIubWFwKGU9PntsZXQgdD1lLnZhbHVlcy5tYXAoaT0+aS5yYXchPT12b2lkIDA/aS5yYXc6W2kubWluJiZgKG1pbi13aWR0aDogJHtpLm1pbn0pYCxpLm1heCYmYChtYXgtd2lkdGg6ICR7aS5tYXh9KWBdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgYW5kICIpKTtyZXR1cm4gZS5ub3Q/YG5vdCBhbGwgYW5kICR7dH1gOnR9KS5qb2luKCIsICIpfXZhciBZbj1QKCgpPT57dSgpfSk7ZnVuY3Rpb24gTW8ocil7cmV0dXJuIHIuc3BsaXQoZl8pLm1hcCh0PT57bGV0IGk9dC50cmltKCksbj17dmFsdWU6aX0scz1pLnNwbGl0KGNfKSxhPW5ldyBTZXQ7Zm9yKGxldCBvIG9mIHMpIWEuaGFzKCJESVJFQ1RJT05TIikmJm5fLmhhcyhvKT8obi5kaXJlY3Rpb249byxhLmFkZCgiRElSRUNUSU9OUyIpKTohYS5oYXMoIlBMQVlfU1RBVEVTIikmJnNfLmhhcyhvKT8obi5wbGF5U3RhdGU9byxhLmFkZCgiUExBWV9TVEFURVMiKSk6IWEuaGFzKCJGSUxMX01PREVTIikmJmFfLmhhcyhvKT8obi5maWxsTW9kZT1vLGEuYWRkKCJGSUxMX01PREVTIikpOiFhLmhhcygiSVRFUkFUSU9OX0NPVU5UUyIpJiYob18uaGFzKG8pfHxwXy50ZXN0KG8pKT8obi5pdGVyYXRpb25Db3VudD1vLGEuYWRkKCJJVEVSQVRJT05fQ09VTlRTIikpOiFhLmhhcygiVElNSU5HX0ZVTkNUSU9OIikmJmxfLmhhcyhvKXx8IWEuaGFzKCJUSU1JTkdfRlVOQ1RJT04iKSYmdV8uc29tZShsPT5vLnN0YXJ0c1dpdGgoYCR7bH0oYCkpPyhuLnRpbWluZ0Z1bmN0aW9uPW8sYS5hZGQoIlRJTUlOR19GVU5DVElPTiIpKTohYS5oYXMoIkRVUkFUSU9OIikmJmxoLnRlc3Qobyk/KG4uZHVyYXRpb249byxhLmFkZCgiRFVSQVRJT04iKSk6IWEuaGFzKCJERUxBWSIpJiZsaC50ZXN0KG8pPyhuLmRlbGF5PW8sYS5hZGQoIkRFTEFZIikpOmEuaGFzKCJOQU1FIik/KG4udW5rbm93bnx8KG4udW5rbm93bj1bXSksbi51bmtub3duLnB1c2gobykpOihuLm5hbWU9byxhLmFkZCgiTkFNRSIpKTtyZXR1cm4gbn0pfXZhciBuXyxzXyxhXyxvXyxsXyx1XyxmXyxjXyxsaCxwXyx1aD1QKCgpPT57dSgpO25fPW5ldyBTZXQoWyJub3JtYWwiLCJyZXZlcnNlIiwiYWx0ZXJuYXRlIiwiYWx0ZXJuYXRlLXJldmVyc2UiXSksc189bmV3IFNldChbInJ1bm5pbmciLCJwYXVzZWQiXSksYV89bmV3IFNldChbIm5vbmUiLCJmb3J3YXJkcyIsImJhY2t3YXJkcyIsImJvdGgiXSksb189bmV3IFNldChbImluZmluaXRlIl0pLGxfPW5ldyBTZXQoWyJsaW5lYXIiLCJlYXNlIiwiZWFzZS1pbiIsImVhc2Utb3V0IiwiZWFzZS1pbi1vdXQiLCJzdGVwLXN0YXJ0Iiwic3RlcC1lbmQiXSksdV89WyJjdWJpYy1iZXppZXIiLCJzdGVwcyJdLGZfPS9cLCg/IVteKF0qXCkpL2csY189L1wgKyg/IVteKF0qXCkpL2csbGg9L14oLT9bXGQuXSttP3MpJC8scF89L14oXGQrKSQvfSk7dmFyIGZoLHhlLGNoPVAoKCk9Pnt1KCk7Zmg9cj0+T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhyPz97fSkuZmxhdE1hcCgoW2UsdF0pPT50eXBlb2YgdD09Im9iamVjdCI/T2JqZWN0LmVudHJpZXMoZmgodCkpLm1hcCgoW2ksbl0pPT4oe1tlKyhpPT09IkRFRkFVTFQiPyIiOmAtJHtpfWApXTpufSkpOlt7W2Ake2V9YF06dH1dKSkseGU9Zmh9KTt2YXIgZGgscGg9UCgoKT0+e2RoPSIzLjQuMTcifSk7ZnVuY3Rpb24gUnQocixlPSEwKXtyZXR1cm4gQXJyYXkuaXNBcnJheShyKT9yLm1hcCh0PT57aWYoZSYmQXJyYXkuaXNBcnJheSh0KSl0aHJvdyBuZXcgRXJyb3IoIlRoZSB0dXBsZSBzeW50YXggaXMgbm90IHN1cHBvcnRlZCBmb3IgYHNjcmVlbnNgLiIpO2lmKHR5cGVvZiB0PT0ic3RyaW5nIilyZXR1cm57bmFtZTp0LnRvU3RyaW5nKCksbm90OiExLHZhbHVlczpbe21pbjp0LG1heDp2b2lkIDB9XX07bGV0W2ksbl09dDtyZXR1cm4gaT1pLnRvU3RyaW5nKCksdHlwZW9mIG49PSJzdHJpbmciP3tuYW1lOmksbm90OiExLHZhbHVlczpbe21pbjpuLG1heDp2b2lkIDB9XX06QXJyYXkuaXNBcnJheShuKT97bmFtZTppLG5vdDohMSx2YWx1ZXM6bi5tYXAocz0+bWgocykpfTp7bmFtZTppLG5vdDohMSx2YWx1ZXM6W21oKG4pXX19KTpSdChPYmplY3QuZW50cmllcyhyPz97fSksITEpfWZ1bmN0aW9uIEtuKHIpe3JldHVybiByLnZhbHVlcy5sZW5ndGghPT0xP3tyZXN1bHQ6ITEscmVhc29uOiJtdWx0aXBsZS12YWx1ZXMifTpyLnZhbHVlc1swXS5yYXchPT12b2lkIDA/e3Jlc3VsdDohMSxyZWFzb246InJhdy12YWx1ZXMifTpyLnZhbHVlc1swXS5taW4hPT12b2lkIDAmJnIudmFsdWVzWzBdLm1heCE9PXZvaWQgMD97cmVzdWx0OiExLHJlYXNvbjoibWluLWFuZC1tYXgifTp7cmVzdWx0OiEwLHJlYXNvbjpudWxsfX1mdW5jdGlvbiBoaChyLGUsdCl7bGV0IGk9WG4oZSxyKSxuPVhuKHQscikscz1LbihpKSxhPUtuKG4pO2lmKHMucmVhc29uPT09Im11bHRpcGxlLXZhbHVlcyJ8fGEucmVhc29uPT09Im11bHRpcGxlLXZhbHVlcyIpdGhyb3cgbmV3IEVycm9yKCJBdHRlbXB0ZWQgdG8gc29ydCBhIHNjcmVlbiB3aXRoIG11bHRpcGxlIHZhbHVlcy4gVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLiBQbGVhc2Ugb3BlbiBhIGJ1ZyByZXBvcnQuIik7aWYocy5yZWFzb249PT0icmF3LXZhbHVlcyJ8fGEucmVhc29uPT09InJhdy12YWx1ZXMiKXRocm93IG5ldyBFcnJvcigiQXR0ZW1wdGVkIHRvIHNvcnQgYSBzY3JlZW4gd2l0aCByYXcgdmFsdWVzLiBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4uIFBsZWFzZSBvcGVuIGEgYnVnIHJlcG9ydC4iKTtpZihzLnJlYXNvbj09PSJtaW4tYW5kLW1heCJ8fGEucmVhc29uPT09Im1pbi1hbmQtbWF4Iil0aHJvdyBuZXcgRXJyb3IoIkF0dGVtcHRlZCB0byBzb3J0IGEgc2NyZWVuIHdpdGggYm90aCBtaW4gYW5kIG1heCB2YWx1ZXMuIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGxlYXNlIG9wZW4gYSBidWcgcmVwb3J0LiIpO2xldHttaW46byxtYXg6bH09aS52YWx1ZXNbMF0se21pbjpjLG1heDpmfT1uLnZhbHVlc1swXTtlLm5vdCYmKFtvLGxdPVtsLG9dKSx0Lm5vdCYmKFtjLGZdPVtmLGNdKSxvPW89PT12b2lkIDA/bzpwYXJzZUZsb2F0KG8pLGw9bD09PXZvaWQgMD9sOnBhcnNlRmxvYXQobCksYz1jPT09dm9pZCAwP2M6cGFyc2VGbG9hdChjKSxmPWY9PT12b2lkIDA/ZjpwYXJzZUZsb2F0KGYpO2xldFtkLHBdPXI9PT0ibWluIj9bbyxjXTpbZixsXTtyZXR1cm4gZC1wfWZ1bmN0aW9uIFhuKHIsZSl7cmV0dXJuIHR5cGVvZiByPT0ib2JqZWN0Ij9yOntuYW1lOiJhcmJpdHJhcnktc2NyZWVuIix2YWx1ZXM6W3tbZV06cn1dfX1mdW5jdGlvbiBtaCh7Im1pbi13aWR0aCI6cixtaW46ZT1yLG1heDp0LHJhdzppfT17fSl7cmV0dXJue21pbjplLG1heDp0LHJhdzppfX12YXIgWm49UCgoKT0+e3UoKX0pO2Z1bmN0aW9uIEpuKHIsZSl7ci53YWxrRGVjbHModD0+e2lmKGUuaW5jbHVkZXModC5wcm9wKSl7dC5yZW1vdmUoKTtyZXR1cm59Zm9yKGxldCBpIG9mIGUpdC52YWx1ZS5pbmNsdWRlcyhgLyB2YXIoJHtpfSlgKT90LnZhbHVlPXQudmFsdWUucmVwbGFjZShgLyB2YXIoJHtpfSlgLCIiKTp0LnZhbHVlLmluY2x1ZGVzKGAvIHZhcigke2l9LCAxKWApJiYodC52YWx1ZT10LnZhbHVlLnJlcGxhY2UoYC8gdmFyKCR7aX0sIDEpYCwiIikpfSl9dmFyIGdoPVAoKCk9Pnt1KCl9KTt2YXIgc2UsWGUsbnQsZ2UseWgsYmg9UCgoKT0+e3UoKTtmdCgpO2V0KCk7T3QoKTtvaCgpO1luKCk7ZnIoKTt1aCgpO2NoKCk7THIoKTtyYSgpO0t0KCk7Q2koKTtwaCgpO0JlKCk7Wm4oKTtZcygpO2doKCk7Y3QoKTtCcigpO09pKCk7c2U9e2NoaWxkVmFyaWFudDooe2FkZFZhcmlhbnQ6cn0pPT57cigiKiIsIiYgPiAqIil9LHBzZXVkb0VsZW1lbnRWYXJpYW50czooe2FkZFZhcmlhbnQ6cn0pPT57cigiZmlyc3QtbGV0dGVyIiwiJjo6Zmlyc3QtbGV0dGVyIikscigiZmlyc3QtbGluZSIsIiY6OmZpcnN0LWxpbmUiKSxyKCJtYXJrZXIiLFsoe2NvbnRhaW5lcjplfSk9PihKbihlLFsiLS10dy10ZXh0LW9wYWNpdHkiXSksIiYgKjo6bWFya2VyIiksKHtjb250YWluZXI6ZX0pPT4oSm4oZSxbIi0tdHctdGV4dC1vcGFjaXR5Il0pLCImOjptYXJrZXIiKV0pLHIoInNlbGVjdGlvbiIsWyImICo6OnNlbGVjdGlvbiIsIiY6OnNlbGVjdGlvbiJdKSxyKCJmaWxlIiwiJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24iKSxyKCJwbGFjZWhvbGRlciIsIiY6OnBsYWNlaG9sZGVyIikscigiYmFja2Ryb3AiLCImOjpiYWNrZHJvcCIpLHIoImJlZm9yZSIsKHtjb250YWluZXI6ZX0pPT4oZS53YWxrUnVsZXModD0+e2xldCBpPSExO3Qud2Fsa0RlY2xzKCJjb250ZW50IiwoKT0+e2k9ITB9KSxpfHx0LnByZXBlbmQoZWUuZGVjbCh7cHJvcDoiY29udGVudCIsdmFsdWU6InZhcigtLXR3LWNvbnRlbnQpIn0pKX0pLCImOjpiZWZvcmUiKSkscigiYWZ0ZXIiLCh7Y29udGFpbmVyOmV9KT0+KGUud2Fsa1J1bGVzKHQ9PntsZXQgaT0hMTt0LndhbGtEZWNscygiY29udGVudCIsKCk9PntpPSEwfSksaXx8dC5wcmVwZW5kKGVlLmRlY2woe3Byb3A6ImNvbnRlbnQiLHZhbHVlOiJ2YXIoLS10dy1jb250ZW50KSJ9KSl9KSwiJjo6YWZ0ZXIiKSl9LHBzZXVkb0NsYXNzVmFyaWFudHM6KHthZGRWYXJpYW50OnIsbWF0Y2hWYXJpYW50OmUsY29uZmlnOnQscHJlZml4Oml9KT0+e2xldCBuPVtbImZpcnN0IiwiJjpmaXJzdC1jaGlsZCJdLFsibGFzdCIsIiY6bGFzdC1jaGlsZCJdLFsib25seSIsIiY6b25seS1jaGlsZCJdLFsib2RkIiwiJjpudGgtY2hpbGQob2RkKSJdLFsiZXZlbiIsIiY6bnRoLWNoaWxkKGV2ZW4pIl0sImZpcnN0LW9mLXR5cGUiLCJsYXN0LW9mLXR5cGUiLCJvbmx5LW9mLXR5cGUiLFsidmlzaXRlZCIsKHtjb250YWluZXI6YX0pPT4oSm4oYSxbIi0tdHctdGV4dC1vcGFjaXR5IiwiLS10dy1ib3JkZXItb3BhY2l0eSIsIi0tdHctYmctb3BhY2l0eSJdKSwiJjp2aXNpdGVkIildLCJ0YXJnZXQiLFsib3BlbiIsIiZbb3Blbl0iXSwiZGVmYXVsdCIsImNoZWNrZWQiLCJpbmRldGVybWluYXRlIiwicGxhY2Vob2xkZXItc2hvd24iLCJhdXRvZmlsbCIsIm9wdGlvbmFsIiwicmVxdWlyZWQiLCJ2YWxpZCIsImludmFsaWQiLCJpbi1yYW5nZSIsIm91dC1vZi1yYW5nZSIsInJlYWQtb25seSIsImVtcHR5IiwiZm9jdXMtd2l0aGluIixbImhvdmVyIix3ZSh0KCksImhvdmVyT25seVdoZW5TdXBwb3J0ZWQiKT8iQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkgeyAmOmhvdmVyIH0iOiImOmhvdmVyIl0sImZvY3VzIiwiZm9jdXMtdmlzaWJsZSIsImFjdGl2ZSIsImVuYWJsZWQiLCJkaXNhYmxlZCJdLm1hcChhPT5BcnJheS5pc0FycmF5KGEpP2E6W2EsYCY6JHthfWBdKTtmb3IobGV0W2Esb11vZiBuKXIoYSxsPT50eXBlb2Ygbz09ImZ1bmN0aW9uIj9vKGwpOm8pO2xldCBzPXtncm91cDooYSx7bW9kaWZpZXI6b30pPT5vP1tgOm1lcmdlKCR7aSgiLmdyb3VwIil9XFwvJHtUZShvKX0pYCwiICYiXTpbYDptZXJnZSgke2koIi5ncm91cCIpfSlgLCIgJiJdLHBlZXI6KGEse21vZGlmaWVyOm99KT0+bz9bYDptZXJnZSgke2koIi5wZWVyIil9XFwvJHtUZShvKX0pYCwiIH4gJiJdOltgOm1lcmdlKCR7aSgiLnBlZXIiKX0pYCwiIH4gJiJdfTtmb3IobGV0W2Esb11vZiBPYmplY3QuZW50cmllcyhzKSllKGEsKGw9IiIsYyk9PntsZXQgZj1LKHR5cGVvZiBsPT0iZnVuY3Rpb24iP2woYyk6bCk7Zi5pbmNsdWRlcygiJiIpfHwoZj0iJiIrZik7bGV0W2QscF09bygiIixjKSxoPW51bGwsYj1udWxsLHY9MDtmb3IobGV0IHk9MDt5PGYubGVuZ3RoOysreSl7bGV0IHc9Zlt5XTt3PT09IiYiP2g9eTp3PT09IicifHx3PT09JyInP3YrPTE6aCE9PW51bGwmJnc9PT0iICImJiF2JiYoYj15KX1yZXR1cm4gaCE9PW51bGwmJmI9PT1udWxsJiYoYj1mLmxlbmd0aCksZi5zbGljZSgwLGgpK2QrZi5zbGljZShoKzEsYikrcCtmLnNsaWNlKGIpfSx7dmFsdWVzOk9iamVjdC5mcm9tRW50cmllcyhuKSxbUHRdOntyZXNwZWN0UHJlZml4OiExfX0pfSxkaXJlY3Rpb25WYXJpYW50czooe2FkZFZhcmlhbnQ6cn0pPT57cigibHRyIiwnJjp3aGVyZShbZGlyPSJsdHIiXSwgW2Rpcj0ibHRyIl0gKiknKSxyKCJydGwiLCcmOndoZXJlKFtkaXI9InJ0bCJdLCBbZGlyPSJydGwiXSAqKScpfSxyZWR1Y2VkTW90aW9uVmFyaWFudHM6KHthZGRWYXJpYW50OnJ9KT0+e3IoIm1vdGlvbi1zYWZlIiwiQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSIpLHIoIm1vdGlvbi1yZWR1Y2UiLCJAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkiKX0sZGFya1ZhcmlhbnRzOih7Y29uZmlnOnIsYWRkVmFyaWFudDplfSk9PntsZXRbdCxpPSIuZGFyayJdPVtdLmNvbmNhdChyKCJkYXJrTW9kZSIsIm1lZGlhIikpO2lmKHQ9PT0hMSYmKHQ9Im1lZGlhIixHLndhcm4oImRhcmttb2RlLWZhbHNlIixbIlRoZSBgZGFya01vZGVgIG9wdGlvbiBpbiB5b3VyIFRhaWx3aW5kIENTUyBjb25maWd1cmF0aW9uIGlzIHNldCB0byBgZmFsc2VgLCB3aGljaCBub3cgYmVoYXZlcyB0aGUgc2FtZSBhcyBgbWVkaWFgLiIsIkNoYW5nZSBgZGFya01vZGVgIHRvIGBtZWRpYWAgb3IgcmVtb3ZlIGl0IGVudGlyZWx5LiIsImh0dHBzOi8vdGFpbHdpbmRjc3MuY29tL2RvY3MvdXBncmFkZS1ndWlkZSNyZW1vdmUtZGFyay1tb2RlLWNvbmZpZ3VyYXRpb24iXSkpLHQ9PT0idmFyaWFudCIpe2xldCBuO2lmKEFycmF5LmlzQXJyYXkoaSl8fHR5cGVvZiBpPT0iZnVuY3Rpb24iP249aTp0eXBlb2YgaT09InN0cmluZyImJihuPVtpXSksQXJyYXkuaXNBcnJheShuKSlmb3IobGV0IHMgb2YgbilzPT09Ii5kYXJrIj8odD0hMSxHLndhcm4oImRhcmttb2RlLXZhcmlhbnQtd2l0aG91dC1zZWxlY3RvciIsWyJXaGVuIHVzaW5nIGB2YXJpYW50YCBmb3IgYGRhcmtNb2RlYCwgeW91IG11c3QgcHJvdmlkZSBhIHNlbGVjdG9yLiIsJ0V4YW1wbGU6IGBkYXJrTW9kZTogWyJ2YXJpYW50IiwgIi55b3VyLXNlbGVjdG9yICYiXWAnXSkpOnMuaW5jbHVkZXMoIiYiKXx8KHQ9ITEsRy53YXJuKCJkYXJrbW9kZS12YXJpYW50LXdpdGhvdXQtYW1wZXJzYW5kIixbIldoZW4gdXNpbmcgYHZhcmlhbnRgIGZvciBgZGFya01vZGVgLCB5b3VyIHNlbGVjdG9yIG11c3QgY29udGFpbiBgJmAuIiwnRXhhbXBsZSBgZGFya01vZGU6IFsidmFyaWFudCIsICIueW91ci1zZWxlY3RvciAmIl1gJ10pKTtpPW59dD09PSJzZWxlY3RvciI/ZSgiZGFyayIsYCY6d2hlcmUoJHtpfSwgJHtpfSAqKWApOnQ9PT0ibWVkaWEiP2UoImRhcmsiLCJAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIpOnQ9PT0idmFyaWFudCI/ZSgiZGFyayIsaSk6dD09PSJjbGFzcyImJmUoImRhcmsiLGAmOmlzKCR7aX0gKilgKX0scHJpbnRWYXJpYW50Oih7YWRkVmFyaWFudDpyfSk9PntyKCJwcmludCIsIkBtZWRpYSBwcmludCIpfSxzY3JlZW5WYXJpYW50czooe3RoZW1lOnIsYWRkVmFyaWFudDplLG1hdGNoVmFyaWFudDp0fSk9PntsZXQgaT1yKCJzY3JlZW5zIik/P3t9LG49T2JqZWN0LnZhbHVlcyhpKS5ldmVyeSh3PT50eXBlb2Ygdz09InN0cmluZyIpLHM9UnQocigic2NyZWVucyIpKSxhPW5ldyBTZXQoW10pO2Z1bmN0aW9uIG8odyl7cmV0dXJuIHcubWF0Y2goLyhcRCspJC8pPy5bMV0/PyIobm9uZSkifWZ1bmN0aW9uIGwodyl7dyE9PXZvaWQgMCYmYS5hZGQobyh3KSl9ZnVuY3Rpb24gYyh3KXtyZXR1cm4gbCh3KSxhLnNpemU9PT0xfWZvcihsZXQgdyBvZiBzKWZvcihsZXQgayBvZiB3LnZhbHVlcylsKGsubWluKSxsKGsubWF4KTtsZXQgZj1hLnNpemU8PTE7ZnVuY3Rpb24gZCh3KXtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKHMuZmlsdGVyKGs9PktuKGspLnJlc3VsdCkubWFwKGs9PntsZXR7bWluOlMsbWF4OkV9PWsudmFsdWVzWzBdO2lmKHc9PT0ibWluIiYmUyE9PXZvaWQgMClyZXR1cm4gaztpZih3PT09Im1pbiImJkUhPT12b2lkIDApcmV0dXJuey4uLmssbm90OiFrLm5vdH07aWYodz09PSJtYXgiJiZFIT09dm9pZCAwKXJldHVybiBrO2lmKHc9PT0ibWF4IiYmUyE9PXZvaWQgMClyZXR1cm57Li4uayxub3Q6IWsubm90fX0pLm1hcChrPT5bay5uYW1lLGtdKSl9ZnVuY3Rpb24gcCh3KXtyZXR1cm4oayxTKT0+aGgodyxrLnZhbHVlLFMudmFsdWUpfWxldCBoPXAoIm1heCIpLGI9cCgibWluIik7ZnVuY3Rpb24gdih3KXtyZXR1cm4gaz0+e2lmKG4paWYoZil7aWYodHlwZW9mIGs9PSJzdHJpbmciJiYhYyhrKSlyZXR1cm4gRy53YXJuKCJtaW5tYXgtaGF2ZS1taXhlZC11bml0cyIsWyJUaGUgYG1pbi0qYCBhbmQgYG1heC0qYCB2YXJpYW50cyBhcmUgbm90IHN1cHBvcnRlZCB3aXRoIGEgYHNjcmVlbnNgIGNvbmZpZ3VyYXRpb24gY29udGFpbmluZyBtaXhlZCB1bml0cy4iXSksW119ZWxzZSByZXR1cm4gRy53YXJuKCJtaXhlZC1zY3JlZW4tdW5pdHMiLFsiVGhlIGBtaW4tKmAgYW5kIGBtYXgtKmAgdmFyaWFudHMgYXJlIG5vdCBzdXBwb3J0ZWQgd2l0aCBhIGBzY3JlZW5zYCBjb25maWd1cmF0aW9uIGNvbnRhaW5pbmcgbWl4ZWQgdW5pdHMuIl0pLFtdO2Vsc2UgcmV0dXJuIEcud2FybigiY29tcGxleC1zY3JlZW4tY29uZmlnIixbIlRoZSBgbWluLSpgIGFuZCBgbWF4LSpgIHZhcmlhbnRzIGFyZSBub3Qgc3VwcG9ydGVkIHdpdGggYSBgc2NyZWVuc2AgY29uZmlndXJhdGlvbiBjb250YWluaW5nIG9iamVjdHMuIl0pLFtdO3JldHVybltgQG1lZGlhICR7VHQoWG4oayx3KSl9YF19fXQoIm1heCIsdigibWF4Iikse3NvcnQ6aCx2YWx1ZXM6bj9kKCJtYXgiKTp7fX0pO2xldCB5PSJtaW4tc2NyZWVucyI7Zm9yKGxldCB3IG9mIHMpZSh3Lm5hbWUsYEBtZWRpYSAke1R0KHcpfWAse2lkOnksc29ydDpuJiZmP2I6dm9pZCAwLHZhbHVlOnd9KTt0KCJtaW4iLHYoIm1pbiIpLHtpZDp5LHNvcnQ6Yn0pfSxzdXBwb3J0c1ZhcmlhbnRzOih7bWF0Y2hWYXJpYW50OnIsdGhlbWU6ZX0pPT57cigic3VwcG9ydHMiLCh0PSIiKT0+e2xldCBpPUsodCksbj0vXlx3KlxzKlwoLy50ZXN0KGkpO3JldHVybiBpPW4/aS5yZXBsYWNlKC9cYihhbmR8b3J8bm90KVxiL2csIiAkMSAiKTppLG4/YEBzdXBwb3J0cyAke2l9YDooaS5pbmNsdWRlcygiOiIpfHwoaT1gJHtpfTogdmFyKC0tdHcpYCksaS5zdGFydHNXaXRoKCIoIikmJmkuZW5kc1dpdGgoIikiKXx8KGk9YCgke2l9KWApLGBAc3VwcG9ydHMgJHtpfWApfSx7dmFsdWVzOmUoInN1cHBvcnRzIik/P3t9fSl9LGhhc1ZhcmlhbnRzOih7bWF0Y2hWYXJpYW50OnIscHJlZml4OmV9KT0+e3IoImhhcyIsdD0+YCY6aGFzKCR7Syh0KX0pYCx7dmFsdWVzOnt9LFtQdF06e3Jlc3BlY3RQcmVmaXg6ITF9fSkscigiZ3JvdXAtaGFzIiwodCx7bW9kaWZpZXI6aX0pPT5pP2A6bWVyZ2UoJHtlKCIuZ3JvdXAiKX1cXC8ke2l9KTpoYXMoJHtLKHQpfSkgJmA6YDptZXJnZSgke2UoIi5ncm91cCIpfSk6aGFzKCR7Syh0KX0pICZgLHt2YWx1ZXM6e30sW1B0XTp7cmVzcGVjdFByZWZpeDohMX19KSxyKCJwZWVyLWhhcyIsKHQse21vZGlmaWVyOml9KT0+aT9gOm1lcmdlKCR7ZSgiLnBlZXIiKX1cXC8ke2l9KTpoYXMoJHtLKHQpfSkgfiAmYDpgOm1lcmdlKCR7ZSgiLnBlZXIiKX0pOmhhcygke0sodCl9KSB+ICZgLHt2YWx1ZXM6e30sW1B0XTp7cmVzcGVjdFByZWZpeDohMX19KX0sYXJpYVZhcmlhbnRzOih7bWF0Y2hWYXJpYW50OnIsdGhlbWU6ZX0pPT57cigiYXJpYSIsdD0+YCZbYXJpYS0ke1llKEsodCkpfV1gLHt2YWx1ZXM6ZSgiYXJpYSIpPz97fX0pLHIoImdyb3VwLWFyaWEiLCh0LHttb2RpZmllcjppfSk9Pmk/YDptZXJnZSguZ3JvdXBcXC8ke2l9KVthcmlhLSR7WWUoSyh0KSl9XSAmYDpgOm1lcmdlKC5ncm91cClbYXJpYS0ke1llKEsodCkpfV0gJmAse3ZhbHVlczplKCJhcmlhIik/P3t9fSkscigicGVlci1hcmlhIiwodCx7bW9kaWZpZXI6aX0pPT5pP2A6bWVyZ2UoLnBlZXJcXC8ke2l9KVthcmlhLSR7WWUoSyh0KSl9XSB+ICZgOmA6bWVyZ2UoLnBlZXIpW2FyaWEtJHtZZShLKHQpKX1dIH4gJmAse3ZhbHVlczplKCJhcmlhIik/P3t9fSl9LGRhdGFWYXJpYW50czooe21hdGNoVmFyaWFudDpyLHRoZW1lOmV9KT0+e3IoImRhdGEiLHQ9PmAmW2RhdGEtJHtZZShLKHQpKX1dYCx7dmFsdWVzOmUoImRhdGEiKT8/e319KSxyKCJncm91cC1kYXRhIiwodCx7bW9kaWZpZXI6aX0pPT5pP2A6bWVyZ2UoLmdyb3VwXFwvJHtpfSlbZGF0YS0ke1llKEsodCkpfV0gJmA6YDptZXJnZSguZ3JvdXApW2RhdGEtJHtZZShLKHQpKX1dICZgLHt2YWx1ZXM6ZSgiZGF0YSIpPz97fX0pLHIoInBlZXItZGF0YSIsKHQse21vZGlmaWVyOml9KT0+aT9gOm1lcmdlKC5wZWVyXFwvJHtpfSlbZGF0YS0ke1llKEsodCkpfV0gfiAmYDpgOm1lcmdlKC5wZWVyKVtkYXRhLSR7WWUoSyh0KSl9XSB+ICZgLHt2YWx1ZXM6ZSgiZGF0YSIpPz97fX0pfSxvcmllbnRhdGlvblZhcmlhbnRzOih7YWRkVmFyaWFudDpyfSk9PntyKCJwb3J0cmFpdCIsIkBtZWRpYSAob3JpZW50YXRpb246IHBvcnRyYWl0KSIpLHIoImxhbmRzY2FwZSIsIkBtZWRpYSAob3JpZW50YXRpb246IGxhbmRzY2FwZSkiKX0scHJlZmVyc0NvbnRyYXN0VmFyaWFudHM6KHthZGRWYXJpYW50OnJ9KT0+e3IoImNvbnRyYXN0LW1vcmUiLCJAbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IG1vcmUpIikscigiY29udHJhc3QtbGVzcyIsIkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogbGVzcykiKX0sZm9yY2VkQ29sb3JzVmFyaWFudHM6KHthZGRWYXJpYW50OnJ9KT0+e3IoImZvcmNlZC1jb2xvcnMiLCJAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkiKX19LFhlPVsidHJhbnNsYXRlKHZhcigtLXR3LXRyYW5zbGF0ZS14KSwgdmFyKC0tdHctdHJhbnNsYXRlLXkpKSIsInJvdGF0ZSh2YXIoLS10dy1yb3RhdGUpKSIsInNrZXdYKHZhcigtLXR3LXNrZXcteCkpIiwic2tld1kodmFyKC0tdHctc2tldy15KSkiLCJzY2FsZVgodmFyKC0tdHctc2NhbGUteCkpIiwic2NhbGVZKHZhcigtLXR3LXNjYWxlLXkpKSJdLmpvaW4oIiAiKSxudD1bInZhcigtLXR3LWJsdXIpIiwidmFyKC0tdHctYnJpZ2h0bmVzcykiLCJ2YXIoLS10dy1jb250cmFzdCkiLCJ2YXIoLS10dy1ncmF5c2NhbGUpIiwidmFyKC0tdHctaHVlLXJvdGF0ZSkiLCJ2YXIoLS10dy1pbnZlcnQpIiwidmFyKC0tdHctc2F0dXJhdGUpIiwidmFyKC0tdHctc2VwaWEpIiwidmFyKC0tdHctZHJvcC1zaGFkb3cpIl0uam9pbigiICIpLGdlPVsidmFyKC0tdHctYmFja2Ryb3AtYmx1cikiLCJ2YXIoLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzKSIsInZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0KSIsInZhcigtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZSkiLCJ2YXIoLS10dy1iYWNrZHJvcC1odWUtcm90YXRlKSIsInZhcigtLXR3LWJhY2tkcm9wLWludmVydCkiLCJ2YXIoLS10dy1iYWNrZHJvcC1vcGFjaXR5KSIsInZhcigtLXR3LWJhY2tkcm9wLXNhdHVyYXRlKSIsInZhcigtLXR3LWJhY2tkcm9wLXNlcGlhKSJdLmpvaW4oIiAiKSx5aD17cHJlZmxpZ2h0Oih7YWRkQmFzZTpyfSk9PntsZXQgZT1lZS5wYXJzZShgKiw6OmFmdGVyLDo6YmVmb3Jle2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItd2lkdGg6MDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRoZW1lKCdib3JkZXJDb2xvci5ERUZBVUxUJywgY3VycmVudENvbG9yKX06OmFmdGVyLDo6YmVmb3Jley0tdHctY29udGVudDonJ306aG9zdCxodG1se2xpbmUtaGVpZ2h0OjEuNTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbW96LXRhYi1zaXplOjQ7dGFiLXNpemU6NDtmb250LWZhbWlseTp0aGVtZSgnZm9udEZhbWlseS5zYW5zJywgdWktc2Fucy1zZXJpZiwgc3lzdGVtLXVpLCBzYW5zLXNlcmlmLCAiQXBwbGUgQ29sb3IgRW1vamkiLCAiU2Vnb2UgVUkgRW1vamkiLCAiU2Vnb2UgVUkgU3ltYm9sIiwgIk5vdG8gQ29sb3IgRW1vamkiKTtmb250LWZlYXR1cmUtc2V0dGluZ3M6dGhlbWUoJ2ZvbnRGYW1pbHkuc2Fuc1sxXS5mb250RmVhdHVyZVNldHRpbmdzJywgbm9ybWFsKTtmb250LXZhcmlhdGlvbi1zZXR0aW5nczp0aGVtZSgnZm9udEZhbWlseS5zYW5zWzFdLmZvbnRWYXJpYXRpb25TZXR0aW5ncycsIG5vcm1hbCk7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWJvZHl7bWFyZ2luOjA7bGluZS1oZWlnaHQ6aW5oZXJpdH1ocntoZWlnaHQ6MDtjb2xvcjppbmhlcml0O2JvcmRlci10b3Atd2lkdGg6MXB4fWFiYnI6d2hlcmUoW3RpdGxlXSl7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHByZSxzYW1we2ZvbnQtZmFtaWx5OnRoZW1lKCdmb250RmFtaWx5Lm1vbm8nLCB1aS1tb25vc3BhY2UsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgIkxpYmVyYXRpb24gTW9ubyIsICJDb3VyaWVyIE5ldyIsIG1vbm9zcGFjZSk7Zm9udC1mZWF0dXJlLXNldHRpbmdzOnRoZW1lKCdmb250RmFtaWx5Lm1vbm9bMV0uZm9udEZlYXR1cmVTZXR0aW5ncycsIG5vcm1hbCk7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6dGhlbWUoJ2ZvbnRGYW1pbHkubW9ub1sxXS5mb250VmFyaWF0aW9uU2V0dGluZ3MnLCBub3JtYWwpO2ZvbnQtc2l6ZToxZW19c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfXRhYmxle3RleHQtaW5kZW50OjA7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LWZlYXR1cmUtc2V0dGluZ3M6aW5oZXJpdDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczppbmhlcml0O2ZvbnQtc2l6ZToxMDAlO2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2NvbG9yOmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowfWJ1dHRvbixzZWxlY3R7dGV4dC10cmFuc2Zvcm06bm9uZX1idXR0b24saW5wdXQ6d2hlcmUoW3R5cGU9YnV0dG9uXSksaW5wdXQ6d2hlcmUoW3R5cGU9cmVzZXRdKSxpbnB1dDp3aGVyZShbdHlwZT1zdWJtaXRdKXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1pbWFnZTpub25lfTotbW96LWZvY3VzcmluZ3tvdXRsaW5lOmF1dG99Oi1tb3otdWktaW52YWxpZHtib3gtc2hhZG93Om5vbmV9cHJvZ3Jlc3N7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31bdHlwZT1zZWFyY2hdey13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7b3V0bGluZS1vZmZzZXQ6LTJweH06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfWJsb2NrcXVvdGUsZGQsZGwsZmlndXJlLGgxLGgyLGgzLGg0LGg1LGg2LGhyLHAscHJle21hcmdpbjowfWZpZWxkc2V0e21hcmdpbjowO3BhZGRpbmc6MH1sZWdlbmR7cGFkZGluZzowfW1lbnUsb2wsdWx7bGlzdC1zdHlsZTpub25lO21hcmdpbjowO3BhZGRpbmc6MH1kaWFsb2d7cGFkZGluZzowfXRleHRhcmVhe3Jlc2l6ZTp2ZXJ0aWNhbH1pbnB1dDo6cGxhY2Vob2xkZXIsdGV4dGFyZWE6OnBsYWNlaG9sZGVye29wYWNpdHk6MTtjb2xvcjp0aGVtZSgnY29sb3JzLmdyYXkuNCcsICM5Y2EzYWYpfVtyb2xlPWJ1dHRvbl0sYnV0dG9ue2N1cnNvcjpwb2ludGVyfTpkaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdH1hdWRpbyxjYW52YXMsZW1iZWQsaWZyYW1lLGltZyxvYmplY3Qsc3ZnLHZpZGVve2Rpc3BsYXk6YmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlfWltZyx2aWRlb3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0b31baGlkZGVuXTp3aGVyZSg6bm90KFtoaWRkZW49dW50aWwtZm91bmRdKSl7ZGlzcGxheTpub25lfWApO3IoW2VlLmNvbW1lbnQoe3RleHQ6YCEgdGFpbHdpbmRjc3MgdiR7ZGh9IHwgTUlUIExpY2Vuc2UgfCBodHRwczovL3RhaWx3aW5kY3NzLmNvbWB9KSwuLi5lLm5vZGVzXSl9LGNvbnRhaW5lcjooKCk9PntmdW5jdGlvbiByKHQ9W10pe3JldHVybiB0LmZsYXRNYXAoaT0+aS52YWx1ZXMubWFwKG49Pm4ubWluKSkuZmlsdGVyKGk9PmkhPT12b2lkIDApfWZ1bmN0aW9uIGUodCxpLG4pe2lmKHR5cGVvZiBuPT0idW5kZWZpbmVkIilyZXR1cm5bXTtpZighKHR5cGVvZiBuPT0ib2JqZWN0IiYmbiE9PW51bGwpKXJldHVyblt7c2NyZWVuOiJERUZBVUxUIixtaW5XaWR0aDowLHBhZGRpbmc6bn1dO2xldCBzPVtdO24uREVGQVVMVCYmcy5wdXNoKHtzY3JlZW46IkRFRkFVTFQiLG1pbldpZHRoOjAscGFkZGluZzpuLkRFRkFVTFR9KTtmb3IobGV0IGEgb2YgdClmb3IobGV0IG8gb2YgaSlmb3IobGV0e21pbjpsfW9mIG8udmFsdWVzKWw9PT1hJiZzLnB1c2goe21pbldpZHRoOmEscGFkZGluZzpuW28ubmFtZV19KTtyZXR1cm4gc31yZXR1cm4gZnVuY3Rpb24oe2FkZENvbXBvbmVudHM6dCx0aGVtZTppfSl7bGV0IG49UnQoaSgiY29udGFpbmVyLnNjcmVlbnMiLGkoInNjcmVlbnMiKSkpLHM9cihuKSxhPWUocyxuLGkoImNvbnRhaW5lci5wYWRkaW5nIikpLG89Yz0+e2xldCBmPWEuZmluZChkPT5kLm1pbldpZHRoPT09Yyk7cmV0dXJuIGY/e3BhZGRpbmdSaWdodDpmLnBhZGRpbmcscGFkZGluZ0xlZnQ6Zi5wYWRkaW5nfTp7fX0sbD1BcnJheS5mcm9tKG5ldyBTZXQocy5zbGljZSgpLnNvcnQoKGMsZik9PnBhcnNlSW50KGMpLXBhcnNlSW50KGYpKSkpLm1hcChjPT4oe1tgQG1lZGlhIChtaW4td2lkdGg6ICR7Y30pYF06eyIuY29udGFpbmVyIjp7Im1heC13aWR0aCI6YywuLi5vKGMpfX19KSk7dChbeyIuY29udGFpbmVyIjpPYmplY3QuYXNzaWduKHt3aWR0aDoiMTAwJSJ9LGkoImNvbnRhaW5lci5jZW50ZXIiLCExKT97bWFyZ2luUmlnaHQ6ImF1dG8iLG1hcmdpbkxlZnQ6ImF1dG8ifTp7fSxvKDApKX0sLi4ubF0pfX0pKCksYWNjZXNzaWJpbGl0eTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLnNyLW9ubHkiOntwb3NpdGlvbjoiYWJzb2x1dGUiLHdpZHRoOiIxcHgiLGhlaWdodDoiMXB4IixwYWRkaW5nOiIwIixtYXJnaW46Ii0xcHgiLG92ZXJmbG93OiJoaWRkZW4iLGNsaXA6InJlY3QoMCwgMCwgMCwgMCkiLHdoaXRlU3BhY2U6Im5vd3JhcCIsYm9yZGVyV2lkdGg6IjAifSwiLm5vdC1zci1vbmx5Ijp7cG9zaXRpb246InN0YXRpYyIsd2lkdGg6ImF1dG8iLGhlaWdodDoiYXV0byIscGFkZGluZzoiMCIsbWFyZ2luOiIwIixvdmVyZmxvdzoidmlzaWJsZSIsY2xpcDoiYXV0byIsd2hpdGVTcGFjZToibm9ybWFsIn19KX0scG9pbnRlckV2ZW50czooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLnBvaW50ZXItZXZlbnRzLW5vbmUiOnsicG9pbnRlci1ldmVudHMiOiJub25lIn0sIi5wb2ludGVyLWV2ZW50cy1hdXRvIjp7InBvaW50ZXItZXZlbnRzIjoiYXV0byJ9fSl9LHZpc2liaWxpdHk6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii52aXNpYmxlIjp7dmlzaWJpbGl0eToidmlzaWJsZSJ9LCIuaW52aXNpYmxlIjp7dmlzaWJpbGl0eToiaGlkZGVuIn0sIi5jb2xsYXBzZSI6e3Zpc2liaWxpdHk6ImNvbGxhcHNlIn19KX0scG9zaXRpb246KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5zdGF0aWMiOntwb3NpdGlvbjoic3RhdGljIn0sIi5maXhlZCI6e3Bvc2l0aW9uOiJmaXhlZCJ9LCIuYWJzb2x1dGUiOntwb3NpdGlvbjoiYWJzb2x1dGUifSwiLnJlbGF0aXZlIjp7cG9zaXRpb246InJlbGF0aXZlIn0sIi5zdGlja3kiOntwb3NpdGlvbjoic3RpY2t5In19KX0saW5zZXQ6TCgiaW5zZXQiLFtbImluc2V0IixbImluc2V0Il1dLFtbImluc2V0LXgiLFsibGVmdCIsInJpZ2h0Il1dLFsiaW5zZXQteSIsWyJ0b3AiLCJib3R0b20iXV1dLFtbInN0YXJ0IixbImluc2V0LWlubGluZS1zdGFydCJdXSxbImVuZCIsWyJpbnNldC1pbmxpbmUtZW5kIl1dLFsidG9wIixbInRvcCJdXSxbInJpZ2h0IixbInJpZ2h0Il1dLFsiYm90dG9tIixbImJvdHRvbSJdXSxbImxlZnQiLFsibGVmdCJdXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksaXNvbGF0aW9uOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuaXNvbGF0ZSI6e2lzb2xhdGlvbjoiaXNvbGF0ZSJ9LCIuaXNvbGF0aW9uLWF1dG8iOntpc29sYXRpb246ImF1dG8ifX0pfSx6SW5kZXg6TCgiekluZGV4IixbWyJ6IixbInpJbmRleCJdXV0se3N1cHBvcnRzTmVnYXRpdmVWYWx1ZXM6ITB9KSxvcmRlcjpMKCJvcmRlciIsdm9pZCAwLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZ3JpZENvbHVtbjpMKCJncmlkQ29sdW1uIixbWyJjb2wiLFsiZ3JpZENvbHVtbiJdXV0pLGdyaWRDb2x1bW5TdGFydDpMKCJncmlkQ29sdW1uU3RhcnQiLFtbImNvbC1zdGFydCIsWyJncmlkQ29sdW1uU3RhcnQiXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZ3JpZENvbHVtbkVuZDpMKCJncmlkQ29sdW1uRW5kIixbWyJjb2wtZW5kIixbImdyaWRDb2x1bW5FbmQiXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZ3JpZFJvdzpMKCJncmlkUm93IixbWyJyb3ciLFsiZ3JpZFJvdyJdXV0pLGdyaWRSb3dTdGFydDpMKCJncmlkUm93U3RhcnQiLFtbInJvdy1zdGFydCIsWyJncmlkUm93U3RhcnQiXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZ3JpZFJvd0VuZDpMKCJncmlkUm93RW5kIixbWyJyb3ctZW5kIixbImdyaWRSb3dFbmQiXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZmxvYXQ6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5mbG9hdC1zdGFydCI6e2Zsb2F0OiJpbmxpbmUtc3RhcnQifSwiLmZsb2F0LWVuZCI6e2Zsb2F0OiJpbmxpbmUtZW5kIn0sIi5mbG9hdC1yaWdodCI6e2Zsb2F0OiJyaWdodCJ9LCIuZmxvYXQtbGVmdCI6e2Zsb2F0OiJsZWZ0In0sIi5mbG9hdC1ub25lIjp7ZmxvYXQ6Im5vbmUifX0pfSxjbGVhcjooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmNsZWFyLXN0YXJ0Ijp7Y2xlYXI6ImlubGluZS1zdGFydCJ9LCIuY2xlYXItZW5kIjp7Y2xlYXI6ImlubGluZS1lbmQifSwiLmNsZWFyLWxlZnQiOntjbGVhcjoibGVmdCJ9LCIuY2xlYXItcmlnaHQiOntjbGVhcjoicmlnaHQifSwiLmNsZWFyLWJvdGgiOntjbGVhcjoiYm90aCJ9LCIuY2xlYXItbm9uZSI6e2NsZWFyOiJub25lIn19KX0sbWFyZ2luOkwoIm1hcmdpbiIsW1sibSIsWyJtYXJnaW4iXV0sW1sibXgiLFsibWFyZ2luLWxlZnQiLCJtYXJnaW4tcmlnaHQiXV0sWyJteSIsWyJtYXJnaW4tdG9wIiwibWFyZ2luLWJvdHRvbSJdXV0sW1sibXMiLFsibWFyZ2luLWlubGluZS1zdGFydCJdXSxbIm1lIixbIm1hcmdpbi1pbmxpbmUtZW5kIl1dLFsibXQiLFsibWFyZ2luLXRvcCJdXSxbIm1yIixbIm1hcmdpbi1yaWdodCJdXSxbIm1iIixbIm1hcmdpbi1ib3R0b20iXV0sWyJtbCIsWyJtYXJnaW4tbGVmdCJdXV1dLHtzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksYm94U2l6aW5nOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYm94LWJvcmRlciI6eyJib3gtc2l6aW5nIjoiYm9yZGVyLWJveCJ9LCIuYm94LWNvbnRlbnQiOnsiYm94LXNpemluZyI6ImNvbnRlbnQtYm94In19KX0sbGluZUNsYW1wOih7bWF0Y2hVdGlsaXRpZXM6cixhZGRVdGlsaXRpZXM6ZSx0aGVtZTp0fSk9PntyKHsibGluZS1jbGFtcCI6aT0+KHtvdmVyZmxvdzoiaGlkZGVuIixkaXNwbGF5OiItd2Via2l0LWJveCIsIi13ZWJraXQtYm94LW9yaWVudCI6InZlcnRpY2FsIiwiLXdlYmtpdC1saW5lLWNsYW1wIjpgJHtpfWB9KX0se3ZhbHVlczp0KCJsaW5lQ2xhbXAiKX0pLGUoeyIubGluZS1jbGFtcC1ub25lIjp7b3ZlcmZsb3c6InZpc2libGUiLGRpc3BsYXk6ImJsb2NrIiwiLXdlYmtpdC1ib3gtb3JpZW50IjoiaG9yaXpvbnRhbCIsIi13ZWJraXQtbGluZS1jbGFtcCI6Im5vbmUifX0pfSxkaXNwbGF5Oih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYmxvY2siOntkaXNwbGF5OiJibG9jayJ9LCIuaW5saW5lLWJsb2NrIjp7ZGlzcGxheToiaW5saW5lLWJsb2NrIn0sIi5pbmxpbmUiOntkaXNwbGF5OiJpbmxpbmUifSwiLmZsZXgiOntkaXNwbGF5OiJmbGV4In0sIi5pbmxpbmUtZmxleCI6e2Rpc3BsYXk6ImlubGluZS1mbGV4In0sIi50YWJsZSI6e2Rpc3BsYXk6InRhYmxlIn0sIi5pbmxpbmUtdGFibGUiOntkaXNwbGF5OiJpbmxpbmUtdGFibGUifSwiLnRhYmxlLWNhcHRpb24iOntkaXNwbGF5OiJ0YWJsZS1jYXB0aW9uIn0sIi50YWJsZS1jZWxsIjp7ZGlzcGxheToidGFibGUtY2VsbCJ9LCIudGFibGUtY29sdW1uIjp7ZGlzcGxheToidGFibGUtY29sdW1uIn0sIi50YWJsZS1jb2x1bW4tZ3JvdXAiOntkaXNwbGF5OiJ0YWJsZS1jb2x1bW4tZ3JvdXAifSwiLnRhYmxlLWZvb3Rlci1ncm91cCI6e2Rpc3BsYXk6InRhYmxlLWZvb3Rlci1ncm91cCJ9LCIudGFibGUtaGVhZGVyLWdyb3VwIjp7ZGlzcGxheToidGFibGUtaGVhZGVyLWdyb3VwIn0sIi50YWJsZS1yb3ctZ3JvdXAiOntkaXNwbGF5OiJ0YWJsZS1yb3ctZ3JvdXAifSwiLnRhYmxlLXJvdyI6e2Rpc3BsYXk6InRhYmxlLXJvdyJ9LCIuZmxvdy1yb290Ijp7ZGlzcGxheToiZmxvdy1yb290In0sIi5ncmlkIjp7ZGlzcGxheToiZ3JpZCJ9LCIuaW5saW5lLWdyaWQiOntkaXNwbGF5OiJpbmxpbmUtZ3JpZCJ9LCIuY29udGVudHMiOntkaXNwbGF5OiJjb250ZW50cyJ9LCIubGlzdC1pdGVtIjp7ZGlzcGxheToibGlzdC1pdGVtIn0sIi5oaWRkZW4iOntkaXNwbGF5OiJub25lIn19KX0sYXNwZWN0UmF0aW86TCgiYXNwZWN0UmF0aW8iLFtbImFzcGVjdCIsWyJhc3BlY3QtcmF0aW8iXV1dKSxzaXplOkwoInNpemUiLFtbInNpemUiLFsid2lkdGgiLCJoZWlnaHQiXV1dKSxoZWlnaHQ6TCgiaGVpZ2h0IixbWyJoIixbImhlaWdodCJdXV0pLG1heEhlaWdodDpMKCJtYXhIZWlnaHQiLFtbIm1heC1oIixbIm1heEhlaWdodCJdXV0pLG1pbkhlaWdodDpMKCJtaW5IZWlnaHQiLFtbIm1pbi1oIixbIm1pbkhlaWdodCJdXV0pLHdpZHRoOkwoIndpZHRoIixbWyJ3IixbIndpZHRoIl1dXSksbWluV2lkdGg6TCgibWluV2lkdGgiLFtbIm1pbi13IixbIm1pbldpZHRoIl1dXSksbWF4V2lkdGg6TCgibWF4V2lkdGgiLFtbIm1heC13IixbIm1heFdpZHRoIl1dXSksZmxleDpMKCJmbGV4IiksZmxleFNocmluazpMKCJmbGV4U2hyaW5rIixbWyJmbGV4LXNocmluayIsWyJmbGV4LXNocmluayJdXSxbInNocmluayIsWyJmbGV4LXNocmluayJdXV0pLGZsZXhHcm93OkwoImZsZXhHcm93IixbWyJmbGV4LWdyb3ciLFsiZmxleC1ncm93Il1dLFsiZ3JvdyIsWyJmbGV4LWdyb3ciXV1dKSxmbGV4QmFzaXM6TCgiZmxleEJhc2lzIixbWyJiYXNpcyIsWyJmbGV4LWJhc2lzIl1dXSksdGFibGVMYXlvdXQ6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii50YWJsZS1hdXRvIjp7InRhYmxlLWxheW91dCI6ImF1dG8ifSwiLnRhYmxlLWZpeGVkIjp7InRhYmxlLWxheW91dCI6ImZpeGVkIn19KX0sY2FwdGlvblNpZGU6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5jYXB0aW9uLXRvcCI6eyJjYXB0aW9uLXNpZGUiOiJ0b3AifSwiLmNhcHRpb24tYm90dG9tIjp7ImNhcHRpb24tc2lkZSI6ImJvdHRvbSJ9fSl9LGJvcmRlckNvbGxhcHNlOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYm9yZGVyLWNvbGxhcHNlIjp7ImJvcmRlci1jb2xsYXBzZSI6ImNvbGxhcHNlIn0sIi5ib3JkZXItc2VwYXJhdGUiOnsiYm9yZGVyLWNvbGxhcHNlIjoic2VwYXJhdGUifX0pfSxib3JkZXJTcGFjaW5nOih7YWRkRGVmYXVsdHM6cixtYXRjaFV0aWxpdGllczplLHRoZW1lOnR9KT0+e3IoImJvcmRlci1zcGFjaW5nIix7Ii0tdHctYm9yZGVyLXNwYWNpbmcteCI6MCwiLS10dy1ib3JkZXItc3BhY2luZy15IjowfSksZSh7ImJvcmRlci1zcGFjaW5nIjppPT4oeyItLXR3LWJvcmRlci1zcGFjaW5nLXgiOmksIi0tdHctYm9yZGVyLXNwYWNpbmcteSI6aSwiQGRlZmF1bHRzIGJvcmRlci1zcGFjaW5nIjp7fSwiYm9yZGVyLXNwYWNpbmciOiJ2YXIoLS10dy1ib3JkZXItc3BhY2luZy14KSB2YXIoLS10dy1ib3JkZXItc3BhY2luZy15KSJ9KSwiYm9yZGVyLXNwYWNpbmcteCI6aT0+KHsiLS10dy1ib3JkZXItc3BhY2luZy14IjppLCJAZGVmYXVsdHMgYm9yZGVyLXNwYWNpbmciOnt9LCJib3JkZXItc3BhY2luZyI6InZhcigtLXR3LWJvcmRlci1zcGFjaW5nLXgpIHZhcigtLXR3LWJvcmRlci1zcGFjaW5nLXkpIn0pLCJib3JkZXItc3BhY2luZy15IjppPT4oeyItLXR3LWJvcmRlci1zcGFjaW5nLXkiOmksIkBkZWZhdWx0cyBib3JkZXItc3BhY2luZyI6e30sImJvcmRlci1zcGFjaW5nIjoidmFyKC0tdHctYm9yZGVyLXNwYWNpbmcteCkgdmFyKC0tdHctYm9yZGVyLXNwYWNpbmcteSkifSl9LHt2YWx1ZXM6dCgiYm9yZGVyU3BhY2luZyIpfSl9LHRyYW5zZm9ybU9yaWdpbjpMKCJ0cmFuc2Zvcm1PcmlnaW4iLFtbIm9yaWdpbiIsWyJ0cmFuc2Zvcm1PcmlnaW4iXV1dKSx0cmFuc2xhdGU6TCgidHJhbnNsYXRlIixbW1sidHJhbnNsYXRlLXgiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy10cmFuc2xhdGUteCIsWyJ0cmFuc2Zvcm0iLFhlXV1dLFsidHJhbnNsYXRlLXkiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy10cmFuc2xhdGUteSIsWyJ0cmFuc2Zvcm0iLFhlXV1dXV0se3N1cHBvcnRzTmVnYXRpdmVWYWx1ZXM6ITB9KSxyb3RhdGU6TCgicm90YXRlIixbWyJyb3RhdGUiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy1yb3RhdGUiLFsidHJhbnNmb3JtIixYZV1dXV0se3N1cHBvcnRzTmVnYXRpdmVWYWx1ZXM6ITB9KSxza2V3OkwoInNrZXciLFtbWyJza2V3LXgiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy1za2V3LXgiLFsidHJhbnNmb3JtIixYZV1dXSxbInNrZXcteSIsW1siQGRlZmF1bHRzIHRyYW5zZm9ybSIse31dLCItLXR3LXNrZXcteSIsWyJ0cmFuc2Zvcm0iLFhlXV1dXV0se3N1cHBvcnRzTmVnYXRpdmVWYWx1ZXM6ITB9KSxzY2FsZTpMKCJzY2FsZSIsW1sic2NhbGUiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy1zY2FsZS14IiwiLS10dy1zY2FsZS15IixbInRyYW5zZm9ybSIsWGVdXV0sW1sic2NhbGUteCIsW1siQGRlZmF1bHRzIHRyYW5zZm9ybSIse31dLCItLXR3LXNjYWxlLXgiLFsidHJhbnNmb3JtIixYZV1dXSxbInNjYWxlLXkiLFtbIkBkZWZhdWx0cyB0cmFuc2Zvcm0iLHt9XSwiLS10dy1zY2FsZS15IixbInRyYW5zZm9ybSIsWGVdXV1dXSx7c3VwcG9ydHNOZWdhdGl2ZVZhbHVlczohMH0pLHRyYW5zZm9ybTooe2FkZERlZmF1bHRzOnIsYWRkVXRpbGl0aWVzOmV9KT0+e3IoInRyYW5zZm9ybSIseyItLXR3LXRyYW5zbGF0ZS14IjoiMCIsIi0tdHctdHJhbnNsYXRlLXkiOiIwIiwiLS10dy1yb3RhdGUiOiIwIiwiLS10dy1za2V3LXgiOiIwIiwiLS10dy1za2V3LXkiOiIwIiwiLS10dy1zY2FsZS14IjoiMSIsIi0tdHctc2NhbGUteSI6IjEifSksZSh7Ii50cmFuc2Zvcm0iOnsiQGRlZmF1bHRzIHRyYW5zZm9ybSI6e30sdHJhbnNmb3JtOlhlfSwiLnRyYW5zZm9ybS1jcHUiOnt0cmFuc2Zvcm06WGV9LCIudHJhbnNmb3JtLWdwdSI6e3RyYW5zZm9ybTpYZS5yZXBsYWNlKCJ0cmFuc2xhdGUodmFyKC0tdHctdHJhbnNsYXRlLXgpLCB2YXIoLS10dy10cmFuc2xhdGUteSkpIiwidHJhbnNsYXRlM2QodmFyKC0tdHctdHJhbnNsYXRlLXgpLCB2YXIoLS10dy10cmFuc2xhdGUteSksIDApIil9LCIudHJhbnNmb3JtLW5vbmUiOnt0cmFuc2Zvcm06Im5vbmUifX0pfSxhbmltYXRpb246KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmUsY29uZmlnOnR9KT0+e2xldCBpPXM9PlRlKHQoInByZWZpeCIpK3MpLG49T2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5lbnRyaWVzKGUoImtleWZyYW1lcyIpPz97fSkubWFwKChbcyxhXSk9PltzLHtbYEBrZXlmcmFtZXMgJHtpKHMpfWBdOmF9XSkpO3Ioe2FuaW1hdGU6cz0+e2xldCBhPU1vKHMpO3JldHVyblsuLi5hLmZsYXRNYXAobz0+bltvLm5hbWVdKSx7YW5pbWF0aW9uOmEubWFwKCh7bmFtZTpvLHZhbHVlOmx9KT0+bz09PXZvaWQgMHx8bltvXT09PXZvaWQgMD9sOmwucmVwbGFjZShvLGkobykpKS5qb2luKCIsICIpfV19fSx7dmFsdWVzOmUoImFuaW1hdGlvbiIpfSl9LGN1cnNvcjpMKCJjdXJzb3IiKSx0b3VjaEFjdGlvbjooe2FkZERlZmF1bHRzOnIsYWRkVXRpbGl0aWVzOmV9KT0+e3IoInRvdWNoLWFjdGlvbiIseyItLXR3LXBhbi14IjoiICIsIi0tdHctcGFuLXkiOiIgIiwiLS10dy1waW5jaC16b29tIjoiICJ9KTtsZXQgdD0idmFyKC0tdHctcGFuLXgpIHZhcigtLXR3LXBhbi15KSB2YXIoLS10dy1waW5jaC16b29tKSI7ZSh7Ii50b3VjaC1hdXRvIjp7InRvdWNoLWFjdGlvbiI6ImF1dG8ifSwiLnRvdWNoLW5vbmUiOnsidG91Y2gtYWN0aW9uIjoibm9uZSJ9LCIudG91Y2gtcGFuLXgiOnsiQGRlZmF1bHRzIHRvdWNoLWFjdGlvbiI6e30sIi0tdHctcGFuLXgiOiJwYW4teCIsInRvdWNoLWFjdGlvbiI6dH0sIi50b3VjaC1wYW4tbGVmdCI6eyJAZGVmYXVsdHMgdG91Y2gtYWN0aW9uIjp7fSwiLS10dy1wYW4teCI6InBhbi1sZWZ0IiwidG91Y2gtYWN0aW9uIjp0fSwiLnRvdWNoLXBhbi1yaWdodCI6eyJAZGVmYXVsdHMgdG91Y2gtYWN0aW9uIjp7fSwiLS10dy1wYW4teCI6InBhbi1yaWdodCIsInRvdWNoLWFjdGlvbiI6dH0sIi50b3VjaC1wYW4teSI6eyJAZGVmYXVsdHMgdG91Y2gtYWN0aW9uIjp7fSwiLS10dy1wYW4teSI6InBhbi15IiwidG91Y2gtYWN0aW9uIjp0fSwiLnRvdWNoLXBhbi11cCI6eyJAZGVmYXVsdHMgdG91Y2gtYWN0aW9uIjp7fSwiLS10dy1wYW4teSI6InBhbi11cCIsInRvdWNoLWFjdGlvbiI6dH0sIi50b3VjaC1wYW4tZG93biI6eyJAZGVmYXVsdHMgdG91Y2gtYWN0aW9uIjp7fSwiLS10dy1wYW4teSI6InBhbi1kb3duIiwidG91Y2gtYWN0aW9uIjp0fSwiLnRvdWNoLXBpbmNoLXpvb20iOnsiQGRlZmF1bHRzIHRvdWNoLWFjdGlvbiI6e30sIi0tdHctcGluY2gtem9vbSI6InBpbmNoLXpvb20iLCJ0b3VjaC1hY3Rpb24iOnR9LCIudG91Y2gtbWFuaXB1bGF0aW9uIjp7InRvdWNoLWFjdGlvbiI6Im1hbmlwdWxhdGlvbiJ9fSl9LHVzZXJTZWxlY3Q6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5zZWxlY3Qtbm9uZSI6eyJ1c2VyLXNlbGVjdCI6Im5vbmUifSwiLnNlbGVjdC10ZXh0Ijp7InVzZXItc2VsZWN0IjoidGV4dCJ9LCIuc2VsZWN0LWFsbCI6eyJ1c2VyLXNlbGVjdCI6ImFsbCJ9LCIuc2VsZWN0LWF1dG8iOnsidXNlci1zZWxlY3QiOiJhdXRvIn19KX0scmVzaXplOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIucmVzaXplLW5vbmUiOntyZXNpemU6Im5vbmUifSwiLnJlc2l6ZS15Ijp7cmVzaXplOiJ2ZXJ0aWNhbCJ9LCIucmVzaXplLXgiOntyZXNpemU6Imhvcml6b250YWwifSwiLnJlc2l6ZSI6e3Jlc2l6ZToiYm90aCJ9fSl9LHNjcm9sbFNuYXBUeXBlOih7YWRkRGVmYXVsdHM6cixhZGRVdGlsaXRpZXM6ZX0pPT57cigic2Nyb2xsLXNuYXAtdHlwZSIseyItLXR3LXNjcm9sbC1zbmFwLXN0cmljdG5lc3MiOiJwcm94aW1pdHkifSksZSh7Ii5zbmFwLW5vbmUiOnsic2Nyb2xsLXNuYXAtdHlwZSI6Im5vbmUifSwiLnNuYXAteCI6eyJAZGVmYXVsdHMgc2Nyb2xsLXNuYXAtdHlwZSI6e30sInNjcm9sbC1zbmFwLXR5cGUiOiJ4IHZhcigtLXR3LXNjcm9sbC1zbmFwLXN0cmljdG5lc3MpIn0sIi5zbmFwLXkiOnsiQGRlZmF1bHRzIHNjcm9sbC1zbmFwLXR5cGUiOnt9LCJzY3JvbGwtc25hcC10eXBlIjoieSB2YXIoLS10dy1zY3JvbGwtc25hcC1zdHJpY3RuZXNzKSJ9LCIuc25hcC1ib3RoIjp7IkBkZWZhdWx0cyBzY3JvbGwtc25hcC10eXBlIjp7fSwic2Nyb2xsLXNuYXAtdHlwZSI6ImJvdGggdmFyKC0tdHctc2Nyb2xsLXNuYXAtc3RyaWN0bmVzcykifSwiLnNuYXAtbWFuZGF0b3J5Ijp7Ii0tdHctc2Nyb2xsLXNuYXAtc3RyaWN0bmVzcyI6Im1hbmRhdG9yeSJ9LCIuc25hcC1wcm94aW1pdHkiOnsiLS10dy1zY3JvbGwtc25hcC1zdHJpY3RuZXNzIjoicHJveGltaXR5In19KX0sc2Nyb2xsU25hcEFsaWduOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuc25hcC1zdGFydCI6eyJzY3JvbGwtc25hcC1hbGlnbiI6InN0YXJ0In0sIi5zbmFwLWVuZCI6eyJzY3JvbGwtc25hcC1hbGlnbiI6ImVuZCJ9LCIuc25hcC1jZW50ZXIiOnsic2Nyb2xsLXNuYXAtYWxpZ24iOiJjZW50ZXIifSwiLnNuYXAtYWxpZ24tbm9uZSI6eyJzY3JvbGwtc25hcC1hbGlnbiI6Im5vbmUifX0pfSxzY3JvbGxTbmFwU3RvcDooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLnNuYXAtbm9ybWFsIjp7InNjcm9sbC1zbmFwLXN0b3AiOiJub3JtYWwifSwiLnNuYXAtYWx3YXlzIjp7InNjcm9sbC1zbmFwLXN0b3AiOiJhbHdheXMifX0pfSxzY3JvbGxNYXJnaW46TCgic2Nyb2xsTWFyZ2luIixbWyJzY3JvbGwtbSIsWyJzY3JvbGwtbWFyZ2luIl1dLFtbInNjcm9sbC1teCIsWyJzY3JvbGwtbWFyZ2luLWxlZnQiLCJzY3JvbGwtbWFyZ2luLXJpZ2h0Il1dLFsic2Nyb2xsLW15IixbInNjcm9sbC1tYXJnaW4tdG9wIiwic2Nyb2xsLW1hcmdpbi1ib3R0b20iXV1dLFtbInNjcm9sbC1tcyIsWyJzY3JvbGwtbWFyZ2luLWlubGluZS1zdGFydCJdXSxbInNjcm9sbC1tZSIsWyJzY3JvbGwtbWFyZ2luLWlubGluZS1lbmQiXV0sWyJzY3JvbGwtbXQiLFsic2Nyb2xsLW1hcmdpbi10b3AiXV0sWyJzY3JvbGwtbXIiLFsic2Nyb2xsLW1hcmdpbi1yaWdodCJdXSxbInNjcm9sbC1tYiIsWyJzY3JvbGwtbWFyZ2luLWJvdHRvbSJdXSxbInNjcm9sbC1tbCIsWyJzY3JvbGwtbWFyZ2luLWxlZnQiXV1dXSx7c3VwcG9ydHNOZWdhdGl2ZVZhbHVlczohMH0pLHNjcm9sbFBhZGRpbmc6TCgic2Nyb2xsUGFkZGluZyIsW1sic2Nyb2xsLXAiLFsic2Nyb2xsLXBhZGRpbmciXV0sW1sic2Nyb2xsLXB4IixbInNjcm9sbC1wYWRkaW5nLWxlZnQiLCJzY3JvbGwtcGFkZGluZy1yaWdodCJdXSxbInNjcm9sbC1weSIsWyJzY3JvbGwtcGFkZGluZy10b3AiLCJzY3JvbGwtcGFkZGluZy1ib3R0b20iXV1dLFtbInNjcm9sbC1wcyIsWyJzY3JvbGwtcGFkZGluZy1pbmxpbmUtc3RhcnQiXV0sWyJzY3JvbGwtcGUiLFsic2Nyb2xsLXBhZGRpbmctaW5saW5lLWVuZCJdXSxbInNjcm9sbC1wdCIsWyJzY3JvbGwtcGFkZGluZy10b3AiXV0sWyJzY3JvbGwtcHIiLFsic2Nyb2xsLXBhZGRpbmctcmlnaHQiXV0sWyJzY3JvbGwtcGIiLFsic2Nyb2xsLXBhZGRpbmctYm90dG9tIl1dLFsic2Nyb2xsLXBsIixbInNjcm9sbC1wYWRkaW5nLWxlZnQiXV1dXSksbGlzdFN0eWxlUG9zaXRpb246KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5saXN0LWluc2lkZSI6eyJsaXN0LXN0eWxlLXBvc2l0aW9uIjoiaW5zaWRlIn0sIi5saXN0LW91dHNpZGUiOnsibGlzdC1zdHlsZS1wb3NpdGlvbiI6Im91dHNpZGUifX0pfSxsaXN0U3R5bGVUeXBlOkwoImxpc3RTdHlsZVR5cGUiLFtbImxpc3QiLFsibGlzdFN0eWxlVHlwZSJdXV0pLGxpc3RTdHlsZUltYWdlOkwoImxpc3RTdHlsZUltYWdlIixbWyJsaXN0LWltYWdlIixbImxpc3RTdHlsZUltYWdlIl1dXSksYXBwZWFyYW5jZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmFwcGVhcmFuY2Utbm9uZSI6e2FwcGVhcmFuY2U6Im5vbmUifSwiLmFwcGVhcmFuY2UtYXV0byI6e2FwcGVhcmFuY2U6ImF1dG8ifX0pfSxjb2x1bW5zOkwoImNvbHVtbnMiLFtbImNvbHVtbnMiLFsiY29sdW1ucyJdXV0pLGJyZWFrQmVmb3JlOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYnJlYWstYmVmb3JlLWF1dG8iOnsiYnJlYWstYmVmb3JlIjoiYXV0byJ9LCIuYnJlYWstYmVmb3JlLWF2b2lkIjp7ImJyZWFrLWJlZm9yZSI6ImF2b2lkIn0sIi5icmVhay1iZWZvcmUtYWxsIjp7ImJyZWFrLWJlZm9yZSI6ImFsbCJ9LCIuYnJlYWstYmVmb3JlLWF2b2lkLXBhZ2UiOnsiYnJlYWstYmVmb3JlIjoiYXZvaWQtcGFnZSJ9LCIuYnJlYWstYmVmb3JlLXBhZ2UiOnsiYnJlYWstYmVmb3JlIjoicGFnZSJ9LCIuYnJlYWstYmVmb3JlLWxlZnQiOnsiYnJlYWstYmVmb3JlIjoibGVmdCJ9LCIuYnJlYWstYmVmb3JlLXJpZ2h0Ijp7ImJyZWFrLWJlZm9yZSI6InJpZ2h0In0sIi5icmVhay1iZWZvcmUtY29sdW1uIjp7ImJyZWFrLWJlZm9yZSI6ImNvbHVtbiJ9fSl9LGJyZWFrSW5zaWRlOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYnJlYWstaW5zaWRlLWF1dG8iOnsiYnJlYWstaW5zaWRlIjoiYXV0byJ9LCIuYnJlYWstaW5zaWRlLWF2b2lkIjp7ImJyZWFrLWluc2lkZSI6ImF2b2lkIn0sIi5icmVhay1pbnNpZGUtYXZvaWQtcGFnZSI6eyJicmVhay1pbnNpZGUiOiJhdm9pZC1wYWdlIn0sIi5icmVhay1pbnNpZGUtYXZvaWQtY29sdW1uIjp7ImJyZWFrLWluc2lkZSI6ImF2b2lkLWNvbHVtbiJ9fSl9LGJyZWFrQWZ0ZXI6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5icmVhay1hZnRlci1hdXRvIjp7ImJyZWFrLWFmdGVyIjoiYXV0byJ9LCIuYnJlYWstYWZ0ZXItYXZvaWQiOnsiYnJlYWstYWZ0ZXIiOiJhdm9pZCJ9LCIuYnJlYWstYWZ0ZXItYWxsIjp7ImJyZWFrLWFmdGVyIjoiYWxsIn0sIi5icmVhay1hZnRlci1hdm9pZC1wYWdlIjp7ImJyZWFrLWFmdGVyIjoiYXZvaWQtcGFnZSJ9LCIuYnJlYWstYWZ0ZXItcGFnZSI6eyJicmVhay1hZnRlciI6InBhZ2UifSwiLmJyZWFrLWFmdGVyLWxlZnQiOnsiYnJlYWstYWZ0ZXIiOiJsZWZ0In0sIi5icmVhay1hZnRlci1yaWdodCI6eyJicmVhay1hZnRlciI6InJpZ2h0In0sIi5icmVhay1hZnRlci1jb2x1bW4iOnsiYnJlYWstYWZ0ZXIiOiJjb2x1bW4ifX0pfSxncmlkQXV0b0NvbHVtbnM6TCgiZ3JpZEF1dG9Db2x1bW5zIixbWyJhdXRvLWNvbHMiLFsiZ3JpZEF1dG9Db2x1bW5zIl1dXSksZ3JpZEF1dG9GbG93Oih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuZ3JpZC1mbG93LXJvdyI6e2dyaWRBdXRvRmxvdzoicm93In0sIi5ncmlkLWZsb3ctY29sIjp7Z3JpZEF1dG9GbG93OiJjb2x1bW4ifSwiLmdyaWQtZmxvdy1kZW5zZSI6e2dyaWRBdXRvRmxvdzoiZGVuc2UifSwiLmdyaWQtZmxvdy1yb3ctZGVuc2UiOntncmlkQXV0b0Zsb3c6InJvdyBkZW5zZSJ9LCIuZ3JpZC1mbG93LWNvbC1kZW5zZSI6e2dyaWRBdXRvRmxvdzoiY29sdW1uIGRlbnNlIn19KX0sZ3JpZEF1dG9Sb3dzOkwoImdyaWRBdXRvUm93cyIsW1siYXV0by1yb3dzIixbImdyaWRBdXRvUm93cyJdXV0pLGdyaWRUZW1wbGF0ZUNvbHVtbnM6TCgiZ3JpZFRlbXBsYXRlQ29sdW1ucyIsW1siZ3JpZC1jb2xzIixbImdyaWRUZW1wbGF0ZUNvbHVtbnMiXV1dKSxncmlkVGVtcGxhdGVSb3dzOkwoImdyaWRUZW1wbGF0ZVJvd3MiLFtbImdyaWQtcm93cyIsWyJncmlkVGVtcGxhdGVSb3dzIl1dXSksZmxleERpcmVjdGlvbjooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmZsZXgtcm93Ijp7ImZsZXgtZGlyZWN0aW9uIjoicm93In0sIi5mbGV4LXJvdy1yZXZlcnNlIjp7ImZsZXgtZGlyZWN0aW9uIjoicm93LXJldmVyc2UifSwiLmZsZXgtY29sIjp7ImZsZXgtZGlyZWN0aW9uIjoiY29sdW1uIn0sIi5mbGV4LWNvbC1yZXZlcnNlIjp7ImZsZXgtZGlyZWN0aW9uIjoiY29sdW1uLXJldmVyc2UifX0pfSxmbGV4V3JhcDooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmZsZXgtd3JhcCI6eyJmbGV4LXdyYXAiOiJ3cmFwIn0sIi5mbGV4LXdyYXAtcmV2ZXJzZSI6eyJmbGV4LXdyYXAiOiJ3cmFwLXJldmVyc2UifSwiLmZsZXgtbm93cmFwIjp7ImZsZXgtd3JhcCI6Im5vd3JhcCJ9fSl9LHBsYWNlQ29udGVudDooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLnBsYWNlLWNvbnRlbnQtY2VudGVyIjp7InBsYWNlLWNvbnRlbnQiOiJjZW50ZXIifSwiLnBsYWNlLWNvbnRlbnQtc3RhcnQiOnsicGxhY2UtY29udGVudCI6InN0YXJ0In0sIi5wbGFjZS1jb250ZW50LWVuZCI6eyJwbGFjZS1jb250ZW50IjoiZW5kIn0sIi5wbGFjZS1jb250ZW50LWJldHdlZW4iOnsicGxhY2UtY29udGVudCI6InNwYWNlLWJldHdlZW4ifSwiLnBsYWNlLWNvbnRlbnQtYXJvdW5kIjp7InBsYWNlLWNvbnRlbnQiOiJzcGFjZS1hcm91bmQifSwiLnBsYWNlLWNvbnRlbnQtZXZlbmx5Ijp7InBsYWNlLWNvbnRlbnQiOiJzcGFjZS1ldmVubHkifSwiLnBsYWNlLWNvbnRlbnQtYmFzZWxpbmUiOnsicGxhY2UtY29udGVudCI6ImJhc2VsaW5lIn0sIi5wbGFjZS1jb250ZW50LXN0cmV0Y2giOnsicGxhY2UtY29udGVudCI6InN0cmV0Y2gifX0pfSxwbGFjZUl0ZW1zOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIucGxhY2UtaXRlbXMtc3RhcnQiOnsicGxhY2UtaXRlbXMiOiJzdGFydCJ9LCIucGxhY2UtaXRlbXMtZW5kIjp7InBsYWNlLWl0ZW1zIjoiZW5kIn0sIi5wbGFjZS1pdGVtcy1jZW50ZXIiOnsicGxhY2UtaXRlbXMiOiJjZW50ZXIifSwiLnBsYWNlLWl0ZW1zLWJhc2VsaW5lIjp7InBsYWNlLWl0ZW1zIjoiYmFzZWxpbmUifSwiLnBsYWNlLWl0ZW1zLXN0cmV0Y2giOnsicGxhY2UtaXRlbXMiOiJzdHJldGNoIn19KX0sYWxpZ25Db250ZW50Oih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuY29udGVudC1ub3JtYWwiOnsiYWxpZ24tY29udGVudCI6Im5vcm1hbCJ9LCIuY29udGVudC1jZW50ZXIiOnsiYWxpZ24tY29udGVudCI6ImNlbnRlciJ9LCIuY29udGVudC1zdGFydCI6eyJhbGlnbi1jb250ZW50IjoiZmxleC1zdGFydCJ9LCIuY29udGVudC1lbmQiOnsiYWxpZ24tY29udGVudCI6ImZsZXgtZW5kIn0sIi5jb250ZW50LWJldHdlZW4iOnsiYWxpZ24tY29udGVudCI6InNwYWNlLWJldHdlZW4ifSwiLmNvbnRlbnQtYXJvdW5kIjp7ImFsaWduLWNvbnRlbnQiOiJzcGFjZS1hcm91bmQifSwiLmNvbnRlbnQtZXZlbmx5Ijp7ImFsaWduLWNvbnRlbnQiOiJzcGFjZS1ldmVubHkifSwiLmNvbnRlbnQtYmFzZWxpbmUiOnsiYWxpZ24tY29udGVudCI6ImJhc2VsaW5lIn0sIi5jb250ZW50LXN0cmV0Y2giOnsiYWxpZ24tY29udGVudCI6InN0cmV0Y2gifX0pfSxhbGlnbkl0ZW1zOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuaXRlbXMtc3RhcnQiOnsiYWxpZ24taXRlbXMiOiJmbGV4LXN0YXJ0In0sIi5pdGVtcy1lbmQiOnsiYWxpZ24taXRlbXMiOiJmbGV4LWVuZCJ9LCIuaXRlbXMtY2VudGVyIjp7ImFsaWduLWl0ZW1zIjoiY2VudGVyIn0sIi5pdGVtcy1iYXNlbGluZSI6eyJhbGlnbi1pdGVtcyI6ImJhc2VsaW5lIn0sIi5pdGVtcy1zdHJldGNoIjp7ImFsaWduLWl0ZW1zIjoic3RyZXRjaCJ9fSl9LGp1c3RpZnlDb250ZW50Oih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuanVzdGlmeS1ub3JtYWwiOnsianVzdGlmeS1jb250ZW50Ijoibm9ybWFsIn0sIi5qdXN0aWZ5LXN0YXJ0Ijp7Imp1c3RpZnktY29udGVudCI6ImZsZXgtc3RhcnQifSwiLmp1c3RpZnktZW5kIjp7Imp1c3RpZnktY29udGVudCI6ImZsZXgtZW5kIn0sIi5qdXN0aWZ5LWNlbnRlciI6eyJqdXN0aWZ5LWNvbnRlbnQiOiJjZW50ZXIifSwiLmp1c3RpZnktYmV0d2VlbiI6eyJqdXN0aWZ5LWNvbnRlbnQiOiJzcGFjZS1iZXR3ZWVuIn0sIi5qdXN0aWZ5LWFyb3VuZCI6eyJqdXN0aWZ5LWNvbnRlbnQiOiJzcGFjZS1hcm91bmQifSwiLmp1c3RpZnktZXZlbmx5Ijp7Imp1c3RpZnktY29udGVudCI6InNwYWNlLWV2ZW5seSJ9LCIuanVzdGlmeS1zdHJldGNoIjp7Imp1c3RpZnktY29udGVudCI6InN0cmV0Y2gifX0pfSxqdXN0aWZ5SXRlbXM6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5qdXN0aWZ5LWl0ZW1zLXN0YXJ0Ijp7Imp1c3RpZnktaXRlbXMiOiJzdGFydCJ9LCIuanVzdGlmeS1pdGVtcy1lbmQiOnsianVzdGlmeS1pdGVtcyI6ImVuZCJ9LCIuanVzdGlmeS1pdGVtcy1jZW50ZXIiOnsianVzdGlmeS1pdGVtcyI6ImNlbnRlciJ9LCIuanVzdGlmeS1pdGVtcy1zdHJldGNoIjp7Imp1c3RpZnktaXRlbXMiOiJzdHJldGNoIn19KX0sZ2FwOkwoImdhcCIsW1siZ2FwIixbImdhcCJdXSxbWyJnYXAteCIsWyJjb2x1bW5HYXAiXV0sWyJnYXAteSIsWyJyb3dHYXAiXV1dXSksc3BhY2U6KHttYXRjaFV0aWxpdGllczpyLGFkZFV0aWxpdGllczplLHRoZW1lOnR9KT0+e3IoeyJzcGFjZS14IjppPT4oaT1pPT09IjAiPyIwcHgiOmkseyImID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyItLXR3LXNwYWNlLXgtcmV2ZXJzZSI6IjAiLCJtYXJnaW4tcmlnaHQiOmBjYWxjKCR7aX0gKiB2YXIoLS10dy1zcGFjZS14LXJldmVyc2UpKWAsIm1hcmdpbi1sZWZ0IjpgY2FsYygke2l9ICogY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteC1yZXZlcnNlKSkpYH19KSwic3BhY2UteSI6aT0+KGk9aT09PSIwIj8iMHB4IjppLHsiJiA+IDpub3QoW2hpZGRlbl0pIH4gOm5vdChbaGlkZGVuXSkiOnsiLS10dy1zcGFjZS15LXJldmVyc2UiOiIwIiwibWFyZ2luLXRvcCI6YGNhbGMoJHtpfSAqIGNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKWAsIm1hcmdpbi1ib3R0b20iOmBjYWxjKCR7aX0gKiB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKWB9fSl9LHt2YWx1ZXM6dCgic3BhY2UiKSxzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksZSh7Ii5zcGFjZS15LXJldmVyc2UgPiA6bm90KFtoaWRkZW5dKSB+IDpub3QoW2hpZGRlbl0pIjp7Ii0tdHctc3BhY2UteS1yZXZlcnNlIjoiMSJ9LCIuc3BhY2UteC1yZXZlcnNlID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyItLXR3LXNwYWNlLXgtcmV2ZXJzZSI6IjEifX0pfSxkaXZpZGVXaWR0aDooe21hdGNoVXRpbGl0aWVzOnIsYWRkVXRpbGl0aWVzOmUsdGhlbWU6dH0pPT57cih7ImRpdmlkZS14IjppPT4oaT1pPT09IjAiPyIwcHgiOmkseyImID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIjp7fSwiLS10dy1kaXZpZGUteC1yZXZlcnNlIjoiMCIsImJvcmRlci1yaWdodC13aWR0aCI6YGNhbGMoJHtpfSAqIHZhcigtLXR3LWRpdmlkZS14LXJldmVyc2UpKWAsImJvcmRlci1sZWZ0LXdpZHRoIjpgY2FsYygke2l9ICogY2FsYygxIC0gdmFyKC0tdHctZGl2aWRlLXgtcmV2ZXJzZSkpKWB9fSksImRpdmlkZS15IjppPT4oaT1pPT09IjAiPyIwcHgiOmkseyImID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIjp7fSwiLS10dy1kaXZpZGUteS1yZXZlcnNlIjoiMCIsImJvcmRlci10b3Atd2lkdGgiOmBjYWxjKCR7aX0gKiBjYWxjKDEgLSB2YXIoLS10dy1kaXZpZGUteS1yZXZlcnNlKSkpYCwiYm9yZGVyLWJvdHRvbS13aWR0aCI6YGNhbGMoJHtpfSAqIHZhcigtLXR3LWRpdmlkZS15LXJldmVyc2UpKWB9fSl9LHt2YWx1ZXM6dCgiZGl2aWRlV2lkdGgiKSx0eXBlOlsibGluZS13aWR0aCIsImxlbmd0aCIsImFueSJdfSksZSh7Ii5kaXZpZGUteS1yZXZlcnNlID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIjp7fSwiLS10dy1kaXZpZGUteS1yZXZlcnNlIjoiMSJ9LCIuZGl2aWRlLXgtcmV2ZXJzZSA+IDpub3QoW2hpZGRlbl0pIH4gOm5vdChbaGlkZGVuXSkiOnsiQGRlZmF1bHRzIGJvcmRlci13aWR0aCI6e30sIi0tdHctZGl2aWRlLXgtcmV2ZXJzZSI6IjEifX0pfSxkaXZpZGVTdHlsZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmRpdmlkZS1zb2xpZCA+IDpub3QoW2hpZGRlbl0pIH4gOm5vdChbaGlkZGVuXSkiOnsiYm9yZGVyLXN0eWxlIjoic29saWQifSwiLmRpdmlkZS1kYXNoZWQgPiA6bm90KFtoaWRkZW5dKSB+IDpub3QoW2hpZGRlbl0pIjp7ImJvcmRlci1zdHlsZSI6ImRhc2hlZCJ9LCIuZGl2aWRlLWRvdHRlZCA+IDpub3QoW2hpZGRlbl0pIH4gOm5vdChbaGlkZGVuXSkiOnsiYm9yZGVyLXN0eWxlIjoiZG90dGVkIn0sIi5kaXZpZGUtZG91YmxlID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyJib3JkZXItc3R5bGUiOiJkb3VibGUifSwiLmRpdmlkZS1ub25lID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSI6eyJib3JkZXItc3R5bGUiOiJub25lIn19KX0sZGl2aWRlQ29sb3I6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmUsY29yZVBsdWdpbnM6dH0pPT57cih7ZGl2aWRlOmk9PnQoImRpdmlkZU9wYWNpdHkiKT97WyImID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSJdOkFlKHtjb2xvcjppLHByb3BlcnR5OiJib3JkZXItY29sb3IiLHZhcmlhYmxlOiItLXR3LWRpdmlkZS1vcGFjaXR5In0pfTp7WyImID4gOm5vdChbaGlkZGVuXSkgfiA6bm90KFtoaWRkZW5dKSJdOnsiYm9yZGVyLWNvbG9yIjpYKGkpfX19LHt2YWx1ZXM6KCh7REVGQVVMVDppLC4uLm59KT0+bikoeGUoZSgiZGl2aWRlQ29sb3IiKSkpLHR5cGU6WyJjb2xvciIsImFueSJdfSl9LGRpdmlkZU9wYWNpdHk6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3IoeyJkaXZpZGUtb3BhY2l0eSI6dD0+KHtbIiYgPiA6bm90KFtoaWRkZW5dKSB+IDpub3QoW2hpZGRlbl0pIl06eyItLXR3LWRpdmlkZS1vcGFjaXR5Ijp0fX0pfSx7dmFsdWVzOmUoImRpdmlkZU9wYWNpdHkiKX0pfSxwbGFjZVNlbGY6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5wbGFjZS1zZWxmLWF1dG8iOnsicGxhY2Utc2VsZiI6ImF1dG8ifSwiLnBsYWNlLXNlbGYtc3RhcnQiOnsicGxhY2Utc2VsZiI6InN0YXJ0In0sIi5wbGFjZS1zZWxmLWVuZCI6eyJwbGFjZS1zZWxmIjoiZW5kIn0sIi5wbGFjZS1zZWxmLWNlbnRlciI6eyJwbGFjZS1zZWxmIjoiY2VudGVyIn0sIi5wbGFjZS1zZWxmLXN0cmV0Y2giOnsicGxhY2Utc2VsZiI6InN0cmV0Y2gifX0pfSxhbGlnblNlbGY6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5zZWxmLWF1dG8iOnsiYWxpZ24tc2VsZiI6ImF1dG8ifSwiLnNlbGYtc3RhcnQiOnsiYWxpZ24tc2VsZiI6ImZsZXgtc3RhcnQifSwiLnNlbGYtZW5kIjp7ImFsaWduLXNlbGYiOiJmbGV4LWVuZCJ9LCIuc2VsZi1jZW50ZXIiOnsiYWxpZ24tc2VsZiI6ImNlbnRlciJ9LCIuc2VsZi1zdHJldGNoIjp7ImFsaWduLXNlbGYiOiJzdHJldGNoIn0sIi5zZWxmLWJhc2VsaW5lIjp7ImFsaWduLXNlbGYiOiJiYXNlbGluZSJ9fSl9LGp1c3RpZnlTZWxmOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuanVzdGlmeS1zZWxmLWF1dG8iOnsianVzdGlmeS1zZWxmIjoiYXV0byJ9LCIuanVzdGlmeS1zZWxmLXN0YXJ0Ijp7Imp1c3RpZnktc2VsZiI6InN0YXJ0In0sIi5qdXN0aWZ5LXNlbGYtZW5kIjp7Imp1c3RpZnktc2VsZiI6ImVuZCJ9LCIuanVzdGlmeS1zZWxmLWNlbnRlciI6eyJqdXN0aWZ5LXNlbGYiOiJjZW50ZXIifSwiLmp1c3RpZnktc2VsZi1zdHJldGNoIjp7Imp1c3RpZnktc2VsZiI6InN0cmV0Y2gifX0pfSxvdmVyZmxvdzooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLm92ZXJmbG93LWF1dG8iOntvdmVyZmxvdzoiYXV0byJ9LCIub3ZlcmZsb3ctaGlkZGVuIjp7b3ZlcmZsb3c6ImhpZGRlbiJ9LCIub3ZlcmZsb3ctY2xpcCI6e292ZXJmbG93OiJjbGlwIn0sIi5vdmVyZmxvdy12aXNpYmxlIjp7b3ZlcmZsb3c6InZpc2libGUifSwiLm92ZXJmbG93LXNjcm9sbCI6e292ZXJmbG93OiJzY3JvbGwifSwiLm92ZXJmbG93LXgtYXV0byI6eyJvdmVyZmxvdy14IjoiYXV0byJ9LCIub3ZlcmZsb3cteS1hdXRvIjp7Im92ZXJmbG93LXkiOiJhdXRvIn0sIi5vdmVyZmxvdy14LWhpZGRlbiI6eyJvdmVyZmxvdy14IjoiaGlkZGVuIn0sIi5vdmVyZmxvdy15LWhpZGRlbiI6eyJvdmVyZmxvdy15IjoiaGlkZGVuIn0sIi5vdmVyZmxvdy14LWNsaXAiOnsib3ZlcmZsb3cteCI6ImNsaXAifSwiLm92ZXJmbG93LXktY2xpcCI6eyJvdmVyZmxvdy15IjoiY2xpcCJ9LCIub3ZlcmZsb3cteC12aXNpYmxlIjp7Im92ZXJmbG93LXgiOiJ2aXNpYmxlIn0sIi5vdmVyZmxvdy15LXZpc2libGUiOnsib3ZlcmZsb3cteSI6InZpc2libGUifSwiLm92ZXJmbG93LXgtc2Nyb2xsIjp7Im92ZXJmbG93LXgiOiJzY3JvbGwifSwiLm92ZXJmbG93LXktc2Nyb2xsIjp7Im92ZXJmbG93LXkiOiJzY3JvbGwifX0pfSxvdmVyc2Nyb2xsQmVoYXZpb3I6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5vdmVyc2Nyb2xsLWF1dG8iOnsib3ZlcnNjcm9sbC1iZWhhdmlvciI6ImF1dG8ifSwiLm92ZXJzY3JvbGwtY29udGFpbiI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yIjoiY29udGFpbiJ9LCIub3ZlcnNjcm9sbC1ub25lIjp7Im92ZXJzY3JvbGwtYmVoYXZpb3IiOiJub25lIn0sIi5vdmVyc2Nyb2xsLXktYXV0byI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXkiOiJhdXRvIn0sIi5vdmVyc2Nyb2xsLXktY29udGFpbiI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXkiOiJjb250YWluIn0sIi5vdmVyc2Nyb2xsLXktbm9uZSI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXkiOiJub25lIn0sIi5vdmVyc2Nyb2xsLXgtYXV0byI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXgiOiJhdXRvIn0sIi5vdmVyc2Nyb2xsLXgtY29udGFpbiI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXgiOiJjb250YWluIn0sIi5vdmVyc2Nyb2xsLXgtbm9uZSI6eyJvdmVyc2Nyb2xsLWJlaGF2aW9yLXgiOiJub25lIn19KX0sc2Nyb2xsQmVoYXZpb3I6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5zY3JvbGwtYXV0byI6eyJzY3JvbGwtYmVoYXZpb3IiOiJhdXRvIn0sIi5zY3JvbGwtc21vb3RoIjp7InNjcm9sbC1iZWhhdmlvciI6InNtb290aCJ9fSl9LHRleHRPdmVyZmxvdzooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLnRydW5jYXRlIjp7b3ZlcmZsb3c6ImhpZGRlbiIsInRleHQtb3ZlcmZsb3ciOiJlbGxpcHNpcyIsIndoaXRlLXNwYWNlIjoibm93cmFwIn0sIi5vdmVyZmxvdy1lbGxpcHNpcyI6eyJ0ZXh0LW92ZXJmbG93IjoiZWxsaXBzaXMifSwiLnRleHQtZWxsaXBzaXMiOnsidGV4dC1vdmVyZmxvdyI6ImVsbGlwc2lzIn0sIi50ZXh0LWNsaXAiOnsidGV4dC1vdmVyZmxvdyI6ImNsaXAifX0pfSxoeXBoZW5zOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuaHlwaGVucy1ub25lIjp7aHlwaGVuczoibm9uZSJ9LCIuaHlwaGVucy1tYW51YWwiOntoeXBoZW5zOiJtYW51YWwifSwiLmh5cGhlbnMtYXV0byI6e2h5cGhlbnM6ImF1dG8ifX0pfSx3aGl0ZXNwYWNlOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIud2hpdGVzcGFjZS1ub3JtYWwiOnsid2hpdGUtc3BhY2UiOiJub3JtYWwifSwiLndoaXRlc3BhY2Utbm93cmFwIjp7IndoaXRlLXNwYWNlIjoibm93cmFwIn0sIi53aGl0ZXNwYWNlLXByZSI6eyJ3aGl0ZS1zcGFjZSI6InByZSJ9LCIud2hpdGVzcGFjZS1wcmUtbGluZSI6eyJ3aGl0ZS1zcGFjZSI6InByZS1saW5lIn0sIi53aGl0ZXNwYWNlLXByZS13cmFwIjp7IndoaXRlLXNwYWNlIjoicHJlLXdyYXAifSwiLndoaXRlc3BhY2UtYnJlYWstc3BhY2VzIjp7IndoaXRlLXNwYWNlIjoiYnJlYWstc3BhY2VzIn19KX0sdGV4dFdyYXA6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii50ZXh0LXdyYXAiOnsidGV4dC13cmFwIjoid3JhcCJ9LCIudGV4dC1ub3dyYXAiOnsidGV4dC13cmFwIjoibm93cmFwIn0sIi50ZXh0LWJhbGFuY2UiOnsidGV4dC13cmFwIjoiYmFsYW5jZSJ9LCIudGV4dC1wcmV0dHkiOnsidGV4dC13cmFwIjoicHJldHR5In19KX0sd29yZEJyZWFrOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIuYnJlYWstbm9ybWFsIjp7Im92ZXJmbG93LXdyYXAiOiJub3JtYWwiLCJ3b3JkLWJyZWFrIjoibm9ybWFsIn0sIi5icmVhay13b3JkcyI6eyJvdmVyZmxvdy13cmFwIjoiYnJlYWstd29yZCJ9LCIuYnJlYWstYWxsIjp7IndvcmQtYnJlYWsiOiJicmVhay1hbGwifSwiLmJyZWFrLWtlZXAiOnsid29yZC1icmVhayI6ImtlZXAtYWxsIn19KX0sYm9yZGVyUmFkaXVzOkwoImJvcmRlclJhZGl1cyIsW1sicm91bmRlZCIsWyJib3JkZXItcmFkaXVzIl1dLFtbInJvdW5kZWQtcyIsWyJib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzIiwiYm9yZGVyLWVuZC1zdGFydC1yYWRpdXMiXV0sWyJyb3VuZGVkLWUiLFsiYm9yZGVyLXN0YXJ0LWVuZC1yYWRpdXMiLCJib3JkZXItZW5kLWVuZC1yYWRpdXMiXV0sWyJyb3VuZGVkLXQiLFsiYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cyIsImJvcmRlci10b3AtcmlnaHQtcmFkaXVzIl1dLFsicm91bmRlZC1yIixbImJvcmRlci10b3AtcmlnaHQtcmFkaXVzIiwiYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMiXV0sWyJyb3VuZGVkLWIiLFsiYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMiLCJib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzIl1dLFsicm91bmRlZC1sIixbImJvcmRlci10b3AtbGVmdC1yYWRpdXMiLCJib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzIl1dXSxbWyJyb3VuZGVkLXNzIixbImJvcmRlci1zdGFydC1zdGFydC1yYWRpdXMiXV0sWyJyb3VuZGVkLXNlIixbImJvcmRlci1zdGFydC1lbmQtcmFkaXVzIl1dLFsicm91bmRlZC1lZSIsWyJib3JkZXItZW5kLWVuZC1yYWRpdXMiXV0sWyJyb3VuZGVkLWVzIixbImJvcmRlci1lbmQtc3RhcnQtcmFkaXVzIl1dLFsicm91bmRlZC10bCIsWyJib3JkZXItdG9wLWxlZnQtcmFkaXVzIl1dLFsicm91bmRlZC10ciIsWyJib3JkZXItdG9wLXJpZ2h0LXJhZGl1cyJdXSxbInJvdW5kZWQtYnIiLFsiYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMiXV0sWyJyb3VuZGVkLWJsIixbImJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMiXV1dXSksYm9yZGVyV2lkdGg6TCgiYm9yZGVyV2lkdGgiLFtbImJvcmRlciIsW1siQGRlZmF1bHRzIGJvcmRlci13aWR0aCIse31dLCJib3JkZXItd2lkdGgiXV0sW1siYm9yZGVyLXgiLFtbIkBkZWZhdWx0cyBib3JkZXItd2lkdGgiLHt9XSwiYm9yZGVyLWxlZnQtd2lkdGgiLCJib3JkZXItcmlnaHQtd2lkdGgiXV0sWyJib3JkZXIteSIsW1siQGRlZmF1bHRzIGJvcmRlci13aWR0aCIse31dLCJib3JkZXItdG9wLXdpZHRoIiwiYm9yZGVyLWJvdHRvbS13aWR0aCJdXV0sW1siYm9yZGVyLXMiLFtbIkBkZWZhdWx0cyBib3JkZXItd2lkdGgiLHt9XSwiYm9yZGVyLWlubGluZS1zdGFydC13aWR0aCJdXSxbImJvcmRlci1lIixbWyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIix7fV0sImJvcmRlci1pbmxpbmUtZW5kLXdpZHRoIl1dLFsiYm9yZGVyLXQiLFtbIkBkZWZhdWx0cyBib3JkZXItd2lkdGgiLHt9XSwiYm9yZGVyLXRvcC13aWR0aCJdXSxbImJvcmRlci1yIixbWyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIix7fV0sImJvcmRlci1yaWdodC13aWR0aCJdXSxbImJvcmRlci1iIixbWyJAZGVmYXVsdHMgYm9yZGVyLXdpZHRoIix7fV0sImJvcmRlci1ib3R0b20td2lkdGgiXV0sWyJib3JkZXItbCIsW1siQGRlZmF1bHRzIGJvcmRlci13aWR0aCIse31dLCJib3JkZXItbGVmdC13aWR0aCJdXV1dLHt0eXBlOlsibGluZS13aWR0aCIsImxlbmd0aCJdfSksYm9yZGVyU3R5bGU6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5ib3JkZXItc29saWQiOnsiYm9yZGVyLXN0eWxlIjoic29saWQifSwiLmJvcmRlci1kYXNoZWQiOnsiYm9yZGVyLXN0eWxlIjoiZGFzaGVkIn0sIi5ib3JkZXItZG90dGVkIjp7ImJvcmRlci1zdHlsZSI6ImRvdHRlZCJ9LCIuYm9yZGVyLWRvdWJsZSI6eyJib3JkZXItc3R5bGUiOiJkb3VibGUifSwiLmJvcmRlci1oaWRkZW4iOnsiYm9yZGVyLXN0eWxlIjoiaGlkZGVuIn0sIi5ib3JkZXItbm9uZSI6eyJib3JkZXItc3R5bGUiOiJub25lIn19KX0sYm9yZGVyQ29sb3I6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmUsY29yZVBsdWdpbnM6dH0pPT57cih7Ym9yZGVyOmk9PnQoImJvcmRlck9wYWNpdHkiKT9BZSh7Y29sb3I6aSxwcm9wZXJ0eToiYm9yZGVyLWNvbG9yIix2YXJpYWJsZToiLS10dy1ib3JkZXItb3BhY2l0eSJ9KTp7ImJvcmRlci1jb2xvciI6WChpKX19LHt2YWx1ZXM6KCh7REVGQVVMVDppLC4uLm59KT0+bikoeGUoZSgiYm9yZGVyQ29sb3IiKSkpLHR5cGU6WyJjb2xvciIsImFueSJdfSkscih7ImJvcmRlci14IjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6WyJib3JkZXItbGVmdC1jb2xvciIsImJvcmRlci1yaWdodC1jb2xvciJdLHZhcmlhYmxlOiItLXR3LWJvcmRlci1vcGFjaXR5In0pOnsiYm9yZGVyLWxlZnQtY29sb3IiOlgoaSksImJvcmRlci1yaWdodC1jb2xvciI6WChpKX0sImJvcmRlci15IjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6WyJib3JkZXItdG9wLWNvbG9yIiwiYm9yZGVyLWJvdHRvbS1jb2xvciJdLHZhcmlhYmxlOiItLXR3LWJvcmRlci1vcGFjaXR5In0pOnsiYm9yZGVyLXRvcC1jb2xvciI6WChpKSwiYm9yZGVyLWJvdHRvbS1jb2xvciI6WChpKX19LHt2YWx1ZXM6KCh7REVGQVVMVDppLC4uLm59KT0+bikoeGUoZSgiYm9yZGVyQ29sb3IiKSkpLHR5cGU6WyJjb2xvciIsImFueSJdfSkscih7ImJvcmRlci1zIjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6ImJvcmRlci1pbmxpbmUtc3RhcnQtY29sb3IiLHZhcmlhYmxlOiItLXR3LWJvcmRlci1vcGFjaXR5In0pOnsiYm9yZGVyLWlubGluZS1zdGFydC1jb2xvciI6WChpKX0sImJvcmRlci1lIjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6ImJvcmRlci1pbmxpbmUtZW5kLWNvbG9yIix2YXJpYWJsZToiLS10dy1ib3JkZXItb3BhY2l0eSJ9KTp7ImJvcmRlci1pbmxpbmUtZW5kLWNvbG9yIjpYKGkpfSwiYm9yZGVyLXQiOmk9PnQoImJvcmRlck9wYWNpdHkiKT9BZSh7Y29sb3I6aSxwcm9wZXJ0eToiYm9yZGVyLXRvcC1jb2xvciIsdmFyaWFibGU6Ii0tdHctYm9yZGVyLW9wYWNpdHkifSk6eyJib3JkZXItdG9wLWNvbG9yIjpYKGkpfSwiYm9yZGVyLXIiOmk9PnQoImJvcmRlck9wYWNpdHkiKT9BZSh7Y29sb3I6aSxwcm9wZXJ0eToiYm9yZGVyLXJpZ2h0LWNvbG9yIix2YXJpYWJsZToiLS10dy1ib3JkZXItb3BhY2l0eSJ9KTp7ImJvcmRlci1yaWdodC1jb2xvciI6WChpKX0sImJvcmRlci1iIjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6ImJvcmRlci1ib3R0b20tY29sb3IiLHZhcmlhYmxlOiItLXR3LWJvcmRlci1vcGFjaXR5In0pOnsiYm9yZGVyLWJvdHRvbS1jb2xvciI6WChpKX0sImJvcmRlci1sIjppPT50KCJib3JkZXJPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6ImJvcmRlci1sZWZ0LWNvbG9yIix2YXJpYWJsZToiLS10dy1ib3JkZXItb3BhY2l0eSJ9KTp7ImJvcmRlci1sZWZ0LWNvbG9yIjpYKGkpfX0se3ZhbHVlczooKHtERUZBVUxUOmksLi4ubn0pPT5uKSh4ZShlKCJib3JkZXJDb2xvciIpKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sYm9yZGVyT3BhY2l0eTpMKCJib3JkZXJPcGFjaXR5IixbWyJib3JkZXItb3BhY2l0eSIsWyItLXR3LWJvcmRlci1vcGFjaXR5Il1dXSksYmFja2dyb3VuZENvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplLGNvcmVQbHVnaW5zOnR9KT0+e3Ioe2JnOmk9PnQoImJhY2tncm91bmRPcGFjaXR5Iik/QWUoe2NvbG9yOmkscHJvcGVydHk6ImJhY2tncm91bmQtY29sb3IiLHZhcmlhYmxlOiItLXR3LWJnLW9wYWNpdHkifSk6eyJiYWNrZ3JvdW5kLWNvbG9yIjpYKGkpfX0se3ZhbHVlczp4ZShlKCJiYWNrZ3JvdW5kQ29sb3IiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sYmFja2dyb3VuZE9wYWNpdHk6TCgiYmFja2dyb3VuZE9wYWNpdHkiLFtbImJnLW9wYWNpdHkiLFsiLS10dy1iZy1vcGFjaXR5Il1dXSksYmFja2dyb3VuZEltYWdlOkwoImJhY2tncm91bmRJbWFnZSIsW1siYmciLFsiYmFja2dyb3VuZC1pbWFnZSJdXV0se3R5cGU6WyJsb29rdXAiLCJpbWFnZSIsInVybCJdfSksZ3JhZGllbnRDb2xvclN0b3BzOigoKT0+e2Z1bmN0aW9uIHIoZSl7cmV0dXJuIEplKGUsMCwicmdiKDI1NSAyNTUgMjU1IC8gMCkiKX1yZXR1cm4gZnVuY3Rpb24oe21hdGNoVXRpbGl0aWVzOmUsdGhlbWU6dCxhZGREZWZhdWx0czppfSl7aSgiZ3JhZGllbnQtY29sb3Itc3RvcHMiLHsiLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uIjoiICIsIi0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9uIjoiICIsIi0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24iOiIgIn0pO2xldCBuPXt2YWx1ZXM6eGUodCgiZ3JhZGllbnRDb2xvclN0b3BzIikpLHR5cGU6WyJjb2xvciIsImFueSJdfSxzPXt2YWx1ZXM6dCgiZ3JhZGllbnRDb2xvclN0b3BQb3NpdGlvbnMiKSx0eXBlOlsibGVuZ3RoIiwicGVyY2VudGFnZSJdfTtlKHtmcm9tOmE9PntsZXQgbz1yKGEpO3JldHVybnsiQGRlZmF1bHRzIGdyYWRpZW50LWNvbG9yLXN0b3BzIjp7fSwiLS10dy1ncmFkaWVudC1mcm9tIjpgJHtYKGEpfSB2YXIoLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uKWAsIi0tdHctZ3JhZGllbnQtdG8iOmAke299IHZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKWAsIi0tdHctZ3JhZGllbnQtc3RvcHMiOiJ2YXIoLS10dy1ncmFkaWVudC1mcm9tKSwgdmFyKC0tdHctZ3JhZGllbnQtdG8pIn19fSxuKSxlKHtmcm9tOmE9Pih7Ii0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiI6YX0pfSxzKSxlKHt2aWE6YT0+e2xldCBvPXIoYSk7cmV0dXJueyJAZGVmYXVsdHMgZ3JhZGllbnQtY29sb3Itc3RvcHMiOnt9LCItLXR3LWdyYWRpZW50LXRvIjpgJHtvfSAgdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pYCwiLS10dy1ncmFkaWVudC1zdG9wcyI6YHZhcigtLXR3LWdyYWRpZW50LWZyb20pLCAke1goYSl9IHZhcigtLXR3LWdyYWRpZW50LXZpYS1wb3NpdGlvbiksIHZhcigtLXR3LWdyYWRpZW50LXRvKWB9fX0sbiksZSh7dmlhOmE9Pih7Ii0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9uIjphfSl9LHMpLGUoe3RvOmE9Pih7IkBkZWZhdWx0cyBncmFkaWVudC1jb2xvci1zdG9wcyI6e30sIi0tdHctZ3JhZGllbnQtdG8iOmAke1goYSl9IHZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKWB9KX0sbiksZSh7dG86YT0+KHsiLS10dy1ncmFkaWVudC10by1wb3NpdGlvbiI6YX0pfSxzKX19KSgpLGJveERlY29yYXRpb25CcmVhazooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmRlY29yYXRpb24tc2xpY2UiOnsiYm94LWRlY29yYXRpb24tYnJlYWsiOiJzbGljZSJ9LCIuZGVjb3JhdGlvbi1jbG9uZSI6eyJib3gtZGVjb3JhdGlvbi1icmVhayI6ImNsb25lIn0sIi5ib3gtZGVjb3JhdGlvbi1zbGljZSI6eyJib3gtZGVjb3JhdGlvbi1icmVhayI6InNsaWNlIn0sIi5ib3gtZGVjb3JhdGlvbi1jbG9uZSI6eyJib3gtZGVjb3JhdGlvbi1icmVhayI6ImNsb25lIn19KX0sYmFja2dyb3VuZFNpemU6TCgiYmFja2dyb3VuZFNpemUiLFtbImJnIixbImJhY2tncm91bmQtc2l6ZSJdXV0se3R5cGU6WyJsb29rdXAiLCJsZW5ndGgiLCJwZXJjZW50YWdlIiwic2l6ZSJdfSksYmFja2dyb3VuZEF0dGFjaG1lbnQ6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5iZy1maXhlZCI6eyJiYWNrZ3JvdW5kLWF0dGFjaG1lbnQiOiJmaXhlZCJ9LCIuYmctbG9jYWwiOnsiYmFja2dyb3VuZC1hdHRhY2htZW50IjoibG9jYWwifSwiLmJnLXNjcm9sbCI6eyJiYWNrZ3JvdW5kLWF0dGFjaG1lbnQiOiJzY3JvbGwifX0pfSxiYWNrZ3JvdW5kQ2xpcDooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmJnLWNsaXAtYm9yZGVyIjp7ImJhY2tncm91bmQtY2xpcCI6ImJvcmRlci1ib3gifSwiLmJnLWNsaXAtcGFkZGluZyI6eyJiYWNrZ3JvdW5kLWNsaXAiOiJwYWRkaW5nLWJveCJ9LCIuYmctY2xpcC1jb250ZW50Ijp7ImJhY2tncm91bmQtY2xpcCI6ImNvbnRlbnQtYm94In0sIi5iZy1jbGlwLXRleHQiOnsiYmFja2dyb3VuZC1jbGlwIjoidGV4dCJ9fSl9LGJhY2tncm91bmRQb3NpdGlvbjpMKCJiYWNrZ3JvdW5kUG9zaXRpb24iLFtbImJnIixbImJhY2tncm91bmQtcG9zaXRpb24iXV1dLHt0eXBlOlsibG9va3VwIixbInBvc2l0aW9uIix7cHJlZmVyT25Db25mbGljdDohMH1dXX0pLGJhY2tncm91bmRSZXBlYXQ6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5iZy1yZXBlYXQiOnsiYmFja2dyb3VuZC1yZXBlYXQiOiJyZXBlYXQifSwiLmJnLW5vLXJlcGVhdCI6eyJiYWNrZ3JvdW5kLXJlcGVhdCI6Im5vLXJlcGVhdCJ9LCIuYmctcmVwZWF0LXgiOnsiYmFja2dyb3VuZC1yZXBlYXQiOiJyZXBlYXQteCJ9LCIuYmctcmVwZWF0LXkiOnsiYmFja2dyb3VuZC1yZXBlYXQiOiJyZXBlYXQteSJ9LCIuYmctcmVwZWF0LXJvdW5kIjp7ImJhY2tncm91bmQtcmVwZWF0Ijoicm91bmQifSwiLmJnLXJlcGVhdC1zcGFjZSI6eyJiYWNrZ3JvdW5kLXJlcGVhdCI6InNwYWNlIn19KX0sYmFja2dyb3VuZE9yaWdpbjooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmJnLW9yaWdpbi1ib3JkZXIiOnsiYmFja2dyb3VuZC1vcmlnaW4iOiJib3JkZXItYm94In0sIi5iZy1vcmlnaW4tcGFkZGluZyI6eyJiYWNrZ3JvdW5kLW9yaWdpbiI6InBhZGRpbmctYm94In0sIi5iZy1vcmlnaW4tY29udGVudCI6eyJiYWNrZ3JvdW5kLW9yaWdpbiI6ImNvbnRlbnQtYm94In19KX0sZmlsbDooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7ZmlsbDp0PT4oe2ZpbGw6WCh0KX0pfSx7dmFsdWVzOnhlKGUoImZpbGwiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sc3Ryb2tlOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHtzdHJva2U6dD0+KHtzdHJva2U6WCh0KX0pfSx7dmFsdWVzOnhlKGUoInN0cm9rZSIpKSx0eXBlOlsiY29sb3IiLCJ1cmwiLCJhbnkiXX0pfSxzdHJva2VXaWR0aDpMKCJzdHJva2VXaWR0aCIsW1sic3Ryb2tlIixbInN0cm9rZS13aWR0aCJdXV0se3R5cGU6WyJsZW5ndGgiLCJudW1iZXIiLCJwZXJjZW50YWdlIl19KSxvYmplY3RGaXQ6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5vYmplY3QtY29udGFpbiI6eyJvYmplY3QtZml0IjoiY29udGFpbiJ9LCIub2JqZWN0LWNvdmVyIjp7Im9iamVjdC1maXQiOiJjb3ZlciJ9LCIub2JqZWN0LWZpbGwiOnsib2JqZWN0LWZpdCI6ImZpbGwifSwiLm9iamVjdC1ub25lIjp7Im9iamVjdC1maXQiOiJub25lIn0sIi5vYmplY3Qtc2NhbGUtZG93biI6eyJvYmplY3QtZml0Ijoic2NhbGUtZG93biJ9fSl9LG9iamVjdFBvc2l0aW9uOkwoIm9iamVjdFBvc2l0aW9uIixbWyJvYmplY3QiLFsib2JqZWN0LXBvc2l0aW9uIl1dXSkscGFkZGluZzpMKCJwYWRkaW5nIixbWyJwIixbInBhZGRpbmciXV0sW1sicHgiLFsicGFkZGluZy1sZWZ0IiwicGFkZGluZy1yaWdodCJdXSxbInB5IixbInBhZGRpbmctdG9wIiwicGFkZGluZy1ib3R0b20iXV1dLFtbInBzIixbInBhZGRpbmctaW5saW5lLXN0YXJ0Il1dLFsicGUiLFsicGFkZGluZy1pbmxpbmUtZW5kIl1dLFsicHQiLFsicGFkZGluZy10b3AiXV0sWyJwciIsWyJwYWRkaW5nLXJpZ2h0Il1dLFsicGIiLFsicGFkZGluZy1ib3R0b20iXV0sWyJwbCIsWyJwYWRkaW5nLWxlZnQiXV1dXSksdGV4dEFsaWduOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIudGV4dC1sZWZ0Ijp7InRleHQtYWxpZ24iOiJsZWZ0In0sIi50ZXh0LWNlbnRlciI6eyJ0ZXh0LWFsaWduIjoiY2VudGVyIn0sIi50ZXh0LXJpZ2h0Ijp7InRleHQtYWxpZ24iOiJyaWdodCJ9LCIudGV4dC1qdXN0aWZ5Ijp7InRleHQtYWxpZ24iOiJqdXN0aWZ5In0sIi50ZXh0LXN0YXJ0Ijp7InRleHQtYWxpZ24iOiJzdGFydCJ9LCIudGV4dC1lbmQiOnsidGV4dC1hbGlnbiI6ImVuZCJ9fSl9LHRleHRJbmRlbnQ6TCgidGV4dEluZGVudCIsW1siaW5kZW50IixbInRleHQtaW5kZW50Il1dXSx7c3VwcG9ydHNOZWdhdGl2ZVZhbHVlczohMH0pLHZlcnRpY2FsQWxpZ246KHthZGRVdGlsaXRpZXM6cixtYXRjaFV0aWxpdGllczplfSk9PntyKHsiLmFsaWduLWJhc2VsaW5lIjp7InZlcnRpY2FsLWFsaWduIjoiYmFzZWxpbmUifSwiLmFsaWduLXRvcCI6eyJ2ZXJ0aWNhbC1hbGlnbiI6InRvcCJ9LCIuYWxpZ24tbWlkZGxlIjp7InZlcnRpY2FsLWFsaWduIjoibWlkZGxlIn0sIi5hbGlnbi1ib3R0b20iOnsidmVydGljYWwtYWxpZ24iOiJib3R0b20ifSwiLmFsaWduLXRleHQtdG9wIjp7InZlcnRpY2FsLWFsaWduIjoidGV4dC10b3AifSwiLmFsaWduLXRleHQtYm90dG9tIjp7InZlcnRpY2FsLWFsaWduIjoidGV4dC1ib3R0b20ifSwiLmFsaWduLXN1YiI6eyJ2ZXJ0aWNhbC1hbGlnbiI6InN1YiJ9LCIuYWxpZ24tc3VwZXIiOnsidmVydGljYWwtYWxpZ24iOiJzdXBlciJ9fSksZSh7YWxpZ246dD0+KHsidmVydGljYWwtYWxpZ24iOnR9KX0pfSxmb250RmFtaWx5Oih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHtmb250OnQ9PntsZXRbaSxuPXt9XT1BcnJheS5pc0FycmF5KHQpJiZrZSh0WzFdKT90Olt0XSx7Zm9udEZlYXR1cmVTZXR0aW5nczpzLGZvbnRWYXJpYXRpb25TZXR0aW5nczphfT1uO3JldHVybnsiZm9udC1mYW1pbHkiOkFycmF5LmlzQXJyYXkoaSk/aS5qb2luKCIsICIpOmksLi4ucz09PXZvaWQgMD97fTp7ImZvbnQtZmVhdHVyZS1zZXR0aW5ncyI6c30sLi4uYT09PXZvaWQgMD97fTp7ImZvbnQtdmFyaWF0aW9uLXNldHRpbmdzIjphfX19fSx7dmFsdWVzOmUoImZvbnRGYW1pbHkiKSx0eXBlOlsibG9va3VwIiwiZ2VuZXJpYy1uYW1lIiwiZmFtaWx5LW5hbWUiXX0pfSxmb250U2l6ZTooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7dGV4dDoodCx7bW9kaWZpZXI6aX0pPT57bGV0W24sc109QXJyYXkuaXNBcnJheSh0KT90Olt0XTtpZihpKXJldHVybnsiZm9udC1zaXplIjpuLCJsaW5lLWhlaWdodCI6aX07bGV0e2xpbmVIZWlnaHQ6YSxsZXR0ZXJTcGFjaW5nOm8sZm9udFdlaWdodDpsfT1rZShzKT9zOntsaW5lSGVpZ2h0OnN9O3JldHVybnsiZm9udC1zaXplIjpuLC4uLmE9PT12b2lkIDA/e306eyJsaW5lLWhlaWdodCI6YX0sLi4ubz09PXZvaWQgMD97fTp7ImxldHRlci1zcGFjaW5nIjpvfSwuLi5sPT09dm9pZCAwP3t9OnsiZm9udC13ZWlnaHQiOmx9fX19LHt2YWx1ZXM6ZSgiZm9udFNpemUiKSxtb2RpZmllcnM6ZSgibGluZUhlaWdodCIpLHR5cGU6WyJhYnNvbHV0ZS1zaXplIiwicmVsYXRpdmUtc2l6ZSIsImxlbmd0aCIsInBlcmNlbnRhZ2UiXX0pfSxmb250V2VpZ2h0OkwoImZvbnRXZWlnaHQiLFtbImZvbnQiLFsiZm9udFdlaWdodCJdXV0se3R5cGU6WyJsb29rdXAiLCJudW1iZXIiLCJhbnkiXX0pLHRleHRUcmFuc2Zvcm06KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii51cHBlcmNhc2UiOnsidGV4dC10cmFuc2Zvcm0iOiJ1cHBlcmNhc2UifSwiLmxvd2VyY2FzZSI6eyJ0ZXh0LXRyYW5zZm9ybSI6Imxvd2VyY2FzZSJ9LCIuY2FwaXRhbGl6ZSI6eyJ0ZXh0LXRyYW5zZm9ybSI6ImNhcGl0YWxpemUifSwiLm5vcm1hbC1jYXNlIjp7InRleHQtdHJhbnNmb3JtIjoibm9uZSJ9fSl9LGZvbnRTdHlsZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLml0YWxpYyI6eyJmb250LXN0eWxlIjoiaXRhbGljIn0sIi5ub3QtaXRhbGljIjp7ImZvbnQtc3R5bGUiOiJub3JtYWwifX0pfSxmb250VmFyaWFudE51bWVyaWM6KHthZGREZWZhdWx0czpyLGFkZFV0aWxpdGllczplfSk9PntsZXQgdD0idmFyKC0tdHctb3JkaW5hbCkgdmFyKC0tdHctc2xhc2hlZC16ZXJvKSB2YXIoLS10dy1udW1lcmljLWZpZ3VyZSkgdmFyKC0tdHctbnVtZXJpYy1zcGFjaW5nKSB2YXIoLS10dy1udW1lcmljLWZyYWN0aW9uKSI7cigiZm9udC12YXJpYW50LW51bWVyaWMiLHsiLS10dy1vcmRpbmFsIjoiICIsIi0tdHctc2xhc2hlZC16ZXJvIjoiICIsIi0tdHctbnVtZXJpYy1maWd1cmUiOiIgIiwiLS10dy1udW1lcmljLXNwYWNpbmciOiIgIiwiLS10dy1udW1lcmljLWZyYWN0aW9uIjoiICJ9KSxlKHsiLm5vcm1hbC1udW1zIjp7ImZvbnQtdmFyaWFudC1udW1lcmljIjoibm9ybWFsIn0sIi5vcmRpbmFsIjp7IkBkZWZhdWx0cyBmb250LXZhcmlhbnQtbnVtZXJpYyI6e30sIi0tdHctb3JkaW5hbCI6Im9yZGluYWwiLCJmb250LXZhcmlhbnQtbnVtZXJpYyI6dH0sIi5zbGFzaGVkLXplcm8iOnsiQGRlZmF1bHRzIGZvbnQtdmFyaWFudC1udW1lcmljIjp7fSwiLS10dy1zbGFzaGVkLXplcm8iOiJzbGFzaGVkLXplcm8iLCJmb250LXZhcmlhbnQtbnVtZXJpYyI6dH0sIi5saW5pbmctbnVtcyI6eyJAZGVmYXVsdHMgZm9udC12YXJpYW50LW51bWVyaWMiOnt9LCItLXR3LW51bWVyaWMtZmlndXJlIjoibGluaW5nLW51bXMiLCJmb250LXZhcmlhbnQtbnVtZXJpYyI6dH0sIi5vbGRzdHlsZS1udW1zIjp7IkBkZWZhdWx0cyBmb250LXZhcmlhbnQtbnVtZXJpYyI6e30sIi0tdHctbnVtZXJpYy1maWd1cmUiOiJvbGRzdHlsZS1udW1zIiwiZm9udC12YXJpYW50LW51bWVyaWMiOnR9LCIucHJvcG9ydGlvbmFsLW51bXMiOnsiQGRlZmF1bHRzIGZvbnQtdmFyaWFudC1udW1lcmljIjp7fSwiLS10dy1udW1lcmljLXNwYWNpbmciOiJwcm9wb3J0aW9uYWwtbnVtcyIsImZvbnQtdmFyaWFudC1udW1lcmljIjp0fSwiLnRhYnVsYXItbnVtcyI6eyJAZGVmYXVsdHMgZm9udC12YXJpYW50LW51bWVyaWMiOnt9LCItLXR3LW51bWVyaWMtc3BhY2luZyI6InRhYnVsYXItbnVtcyIsImZvbnQtdmFyaWFudC1udW1lcmljIjp0fSwiLmRpYWdvbmFsLWZyYWN0aW9ucyI6eyJAZGVmYXVsdHMgZm9udC12YXJpYW50LW51bWVyaWMiOnt9LCItLXR3LW51bWVyaWMtZnJhY3Rpb24iOiJkaWFnb25hbC1mcmFjdGlvbnMiLCJmb250LXZhcmlhbnQtbnVtZXJpYyI6dH0sIi5zdGFja2VkLWZyYWN0aW9ucyI6eyJAZGVmYXVsdHMgZm9udC12YXJpYW50LW51bWVyaWMiOnt9LCItLXR3LW51bWVyaWMtZnJhY3Rpb24iOiJzdGFja2VkLWZyYWN0aW9ucyIsImZvbnQtdmFyaWFudC1udW1lcmljIjp0fX0pfSxsaW5lSGVpZ2h0OkwoImxpbmVIZWlnaHQiLFtbImxlYWRpbmciLFsibGluZUhlaWdodCJdXV0pLGxldHRlclNwYWNpbmc6TCgibGV0dGVyU3BhY2luZyIsW1sidHJhY2tpbmciLFsibGV0dGVyU3BhY2luZyJdXV0se3N1cHBvcnRzTmVnYXRpdmVWYWx1ZXM6ITB9KSx0ZXh0Q29sb3I6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmUsY29yZVBsdWdpbnM6dH0pPT57cih7dGV4dDppPT50KCJ0ZXh0T3BhY2l0eSIpP0FlKHtjb2xvcjppLHByb3BlcnR5OiJjb2xvciIsdmFyaWFibGU6Ii0tdHctdGV4dC1vcGFjaXR5In0pOntjb2xvcjpYKGkpfX0se3ZhbHVlczp4ZShlKCJ0ZXh0Q29sb3IiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sdGV4dE9wYWNpdHk6TCgidGV4dE9wYWNpdHkiLFtbInRleHQtb3BhY2l0eSIsWyItLXR3LXRleHQtb3BhY2l0eSJdXV0pLHRleHREZWNvcmF0aW9uOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIudW5kZXJsaW5lIjp7InRleHQtZGVjb3JhdGlvbi1saW5lIjoidW5kZXJsaW5lIn0sIi5vdmVybGluZSI6eyJ0ZXh0LWRlY29yYXRpb24tbGluZSI6Im92ZXJsaW5lIn0sIi5saW5lLXRocm91Z2giOnsidGV4dC1kZWNvcmF0aW9uLWxpbmUiOiJsaW5lLXRocm91Z2gifSwiLm5vLXVuZGVybGluZSI6eyJ0ZXh0LWRlY29yYXRpb24tbGluZSI6Im5vbmUifX0pfSx0ZXh0RGVjb3JhdGlvbkNvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHtkZWNvcmF0aW9uOnQ9Pih7InRleHQtZGVjb3JhdGlvbi1jb2xvciI6WCh0KX0pfSx7dmFsdWVzOnhlKGUoInRleHREZWNvcmF0aW9uQ29sb3IiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sdGV4dERlY29yYXRpb25TdHlsZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmRlY29yYXRpb24tc29saWQiOnsidGV4dC1kZWNvcmF0aW9uLXN0eWxlIjoic29saWQifSwiLmRlY29yYXRpb24tZG91YmxlIjp7InRleHQtZGVjb3JhdGlvbi1zdHlsZSI6ImRvdWJsZSJ9LCIuZGVjb3JhdGlvbi1kb3R0ZWQiOnsidGV4dC1kZWNvcmF0aW9uLXN0eWxlIjoiZG90dGVkIn0sIi5kZWNvcmF0aW9uLWRhc2hlZCI6eyJ0ZXh0LWRlY29yYXRpb24tc3R5bGUiOiJkYXNoZWQifSwiLmRlY29yYXRpb24td2F2eSI6eyJ0ZXh0LWRlY29yYXRpb24tc3R5bGUiOiJ3YXZ5In19KX0sdGV4dERlY29yYXRpb25UaGlja25lc3M6TCgidGV4dERlY29yYXRpb25UaGlja25lc3MiLFtbImRlY29yYXRpb24iLFsidGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzcyJdXV0se3R5cGU6WyJsZW5ndGgiLCJwZXJjZW50YWdlIl19KSx0ZXh0VW5kZXJsaW5lT2Zmc2V0OkwoInRleHRVbmRlcmxpbmVPZmZzZXQiLFtbInVuZGVybGluZS1vZmZzZXQiLFsidGV4dC11bmRlcmxpbmUtb2Zmc2V0Il1dXSx7dHlwZTpbImxlbmd0aCIsInBlcmNlbnRhZ2UiLCJhbnkiXX0pLGZvbnRTbW9vdGhpbmc6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5hbnRpYWxpYXNlZCI6eyItd2Via2l0LWZvbnQtc21vb3RoaW5nIjoiYW50aWFsaWFzZWQiLCItbW96LW9zeC1mb250LXNtb290aGluZyI6ImdyYXlzY2FsZSJ9LCIuc3VicGl4ZWwtYW50aWFsaWFzZWQiOnsiLXdlYmtpdC1mb250LXNtb290aGluZyI6ImF1dG8iLCItbW96LW9zeC1mb250LXNtb290aGluZyI6ImF1dG8ifX0pfSxwbGFjZWhvbGRlckNvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplLGNvcmVQbHVnaW5zOnR9KT0+e3Ioe3BsYWNlaG9sZGVyOmk9PnQoInBsYWNlaG9sZGVyT3BhY2l0eSIpP3siJjo6cGxhY2Vob2xkZXIiOkFlKHtjb2xvcjppLHByb3BlcnR5OiJjb2xvciIsdmFyaWFibGU6Ii0tdHctcGxhY2Vob2xkZXItb3BhY2l0eSJ9KX06eyImOjpwbGFjZWhvbGRlciI6e2NvbG9yOlgoaSl9fX0se3ZhbHVlczp4ZShlKCJwbGFjZWhvbGRlckNvbG9yIikpLHR5cGU6WyJjb2xvciIsImFueSJdfSl9LHBsYWNlaG9sZGVyT3BhY2l0eTooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7InBsYWNlaG9sZGVyLW9wYWNpdHkiOnQ9Pih7WyImOjpwbGFjZWhvbGRlciJdOnsiLS10dy1wbGFjZWhvbGRlci1vcGFjaXR5Ijp0fX0pfSx7dmFsdWVzOmUoInBsYWNlaG9sZGVyT3BhY2l0eSIpfSl9LGNhcmV0Q29sb3I6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3Ioe2NhcmV0OnQ9Pih7ImNhcmV0LWNvbG9yIjpYKHQpfSl9LHt2YWx1ZXM6eGUoZSgiY2FyZXRDb2xvciIpKSx0eXBlOlsiY29sb3IiLCJhbnkiXX0pfSxhY2NlbnRDb2xvcjooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7YWNjZW50OnQ9Pih7ImFjY2VudC1jb2xvciI6WCh0KX0pfSx7dmFsdWVzOnhlKGUoImFjY2VudENvbG9yIikpLHR5cGU6WyJjb2xvciIsImFueSJdfSl9LG9wYWNpdHk6TCgib3BhY2l0eSIsW1sib3BhY2l0eSIsWyJvcGFjaXR5Il1dXSksYmFja2dyb3VuZEJsZW5kTW9kZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLmJnLWJsZW5kLW5vcm1hbCI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJub3JtYWwifSwiLmJnLWJsZW5kLW11bHRpcGx5Ijp7ImJhY2tncm91bmQtYmxlbmQtbW9kZSI6Im11bHRpcGx5In0sIi5iZy1ibGVuZC1zY3JlZW4iOnsiYmFja2dyb3VuZC1ibGVuZC1tb2RlIjoic2NyZWVuIn0sIi5iZy1ibGVuZC1vdmVybGF5Ijp7ImJhY2tncm91bmQtYmxlbmQtbW9kZSI6Im92ZXJsYXkifSwiLmJnLWJsZW5kLWRhcmtlbiI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJkYXJrZW4ifSwiLmJnLWJsZW5kLWxpZ2h0ZW4iOnsiYmFja2dyb3VuZC1ibGVuZC1tb2RlIjoibGlnaHRlbiJ9LCIuYmctYmxlbmQtY29sb3ItZG9kZ2UiOnsiYmFja2dyb3VuZC1ibGVuZC1tb2RlIjoiY29sb3ItZG9kZ2UifSwiLmJnLWJsZW5kLWNvbG9yLWJ1cm4iOnsiYmFja2dyb3VuZC1ibGVuZC1tb2RlIjoiY29sb3ItYnVybiJ9LCIuYmctYmxlbmQtaGFyZC1saWdodCI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJoYXJkLWxpZ2h0In0sIi5iZy1ibGVuZC1zb2Z0LWxpZ2h0Ijp7ImJhY2tncm91bmQtYmxlbmQtbW9kZSI6InNvZnQtbGlnaHQifSwiLmJnLWJsZW5kLWRpZmZlcmVuY2UiOnsiYmFja2dyb3VuZC1ibGVuZC1tb2RlIjoiZGlmZmVyZW5jZSJ9LCIuYmctYmxlbmQtZXhjbHVzaW9uIjp7ImJhY2tncm91bmQtYmxlbmQtbW9kZSI6ImV4Y2x1c2lvbiJ9LCIuYmctYmxlbmQtaHVlIjp7ImJhY2tncm91bmQtYmxlbmQtbW9kZSI6Imh1ZSJ9LCIuYmctYmxlbmQtc2F0dXJhdGlvbiI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJzYXR1cmF0aW9uIn0sIi5iZy1ibGVuZC1jb2xvciI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJjb2xvciJ9LCIuYmctYmxlbmQtbHVtaW5vc2l0eSI6eyJiYWNrZ3JvdW5kLWJsZW5kLW1vZGUiOiJsdW1pbm9zaXR5In19KX0sbWl4QmxlbmRNb2RlOih7YWRkVXRpbGl0aWVzOnJ9KT0+e3IoeyIubWl4LWJsZW5kLW5vcm1hbCI6eyJtaXgtYmxlbmQtbW9kZSI6Im5vcm1hbCJ9LCIubWl4LWJsZW5kLW11bHRpcGx5Ijp7Im1peC1ibGVuZC1tb2RlIjoibXVsdGlwbHkifSwiLm1peC1ibGVuZC1zY3JlZW4iOnsibWl4LWJsZW5kLW1vZGUiOiJzY3JlZW4ifSwiLm1peC1ibGVuZC1vdmVybGF5Ijp7Im1peC1ibGVuZC1tb2RlIjoib3ZlcmxheSJ9LCIubWl4LWJsZW5kLWRhcmtlbiI6eyJtaXgtYmxlbmQtbW9kZSI6ImRhcmtlbiJ9LCIubWl4LWJsZW5kLWxpZ2h0ZW4iOnsibWl4LWJsZW5kLW1vZGUiOiJsaWdodGVuIn0sIi5taXgtYmxlbmQtY29sb3ItZG9kZ2UiOnsibWl4LWJsZW5kLW1vZGUiOiJjb2xvci1kb2RnZSJ9LCIubWl4LWJsZW5kLWNvbG9yLWJ1cm4iOnsibWl4LWJsZW5kLW1vZGUiOiJjb2xvci1idXJuIn0sIi5taXgtYmxlbmQtaGFyZC1saWdodCI6eyJtaXgtYmxlbmQtbW9kZSI6ImhhcmQtbGlnaHQifSwiLm1peC1ibGVuZC1zb2Z0LWxpZ2h0Ijp7Im1peC1ibGVuZC1tb2RlIjoic29mdC1saWdodCJ9LCIubWl4LWJsZW5kLWRpZmZlcmVuY2UiOnsibWl4LWJsZW5kLW1vZGUiOiJkaWZmZXJlbmNlIn0sIi5taXgtYmxlbmQtZXhjbHVzaW9uIjp7Im1peC1ibGVuZC1tb2RlIjoiZXhjbHVzaW9uIn0sIi5taXgtYmxlbmQtaHVlIjp7Im1peC1ibGVuZC1tb2RlIjoiaHVlIn0sIi5taXgtYmxlbmQtc2F0dXJhdGlvbiI6eyJtaXgtYmxlbmQtbW9kZSI6InNhdHVyYXRpb24ifSwiLm1peC1ibGVuZC1jb2xvciI6eyJtaXgtYmxlbmQtbW9kZSI6ImNvbG9yIn0sIi5taXgtYmxlbmQtbHVtaW5vc2l0eSI6eyJtaXgtYmxlbmQtbW9kZSI6Imx1bWlub3NpdHkifSwiLm1peC1ibGVuZC1wbHVzLWRhcmtlciI6eyJtaXgtYmxlbmQtbW9kZSI6InBsdXMtZGFya2VyIn0sIi5taXgtYmxlbmQtcGx1cy1saWdodGVyIjp7Im1peC1ibGVuZC1tb2RlIjoicGx1cy1saWdodGVyIn19KX0sYm94U2hhZG93OigoKT0+e2xldCByPW10KCJib3hTaGFkb3ciKSxlPVsidmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93LCAwIDAgIzAwMDApIiwidmFyKC0tdHctcmluZy1zaGFkb3csIDAgMCAjMDAwMCkiLCJ2YXIoLS10dy1zaGFkb3cpIl0uam9pbigiLCAiKTtyZXR1cm4gZnVuY3Rpb24oe21hdGNoVXRpbGl0aWVzOnQsYWRkRGVmYXVsdHM6aSx0aGVtZTpufSl7aSgiYm94LXNoYWRvdyIseyItLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyI6IjAgMCAjMDAwMCIsIi0tdHctcmluZy1zaGFkb3ciOiIwIDAgIzAwMDAiLCItLXR3LXNoYWRvdyI6IjAgMCAjMDAwMCIsIi0tdHctc2hhZG93LWNvbG9yZWQiOiIwIDAgIzAwMDAifSksdCh7c2hhZG93OnM9PntzPXIocyk7bGV0IGE9ZW4ocyk7Zm9yKGxldCBvIG9mIGEpIW8udmFsaWR8fChvLmNvbG9yPSJ2YXIoLS10dy1zaGFkb3ctY29sb3IpIik7cmV0dXJueyJAZGVmYXVsdHMgYm94LXNoYWRvdyI6e30sIi0tdHctc2hhZG93IjpzPT09Im5vbmUiPyIwIDAgIzAwMDAiOnMsIi0tdHctc2hhZG93LWNvbG9yZWQiOnM9PT0ibm9uZSI/IjAgMCAjMDAwMCI6TGYoYSksImJveC1zaGFkb3ciOmV9fX0se3ZhbHVlczpuKCJib3hTaGFkb3ciKSx0eXBlOlsic2hhZG93Il19KX19KSgpLGJveFNoYWRvd0NvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHtzaGFkb3c6dD0+KHsiLS10dy1zaGFkb3ctY29sb3IiOlgodCksIi0tdHctc2hhZG93IjoidmFyKC0tdHctc2hhZG93LWNvbG9yZWQpIn0pfSx7dmFsdWVzOnhlKGUoImJveFNoYWRvd0NvbG9yIikpLHR5cGU6WyJjb2xvciIsImFueSJdfSl9LG91dGxpbmVTdHlsZTooe2FkZFV0aWxpdGllczpyfSk9PntyKHsiLm91dGxpbmUtbm9uZSI6e291dGxpbmU6IjJweCBzb2xpZCB0cmFuc3BhcmVudCIsIm91dGxpbmUtb2Zmc2V0IjoiMnB4In0sIi5vdXRsaW5lIjp7Im91dGxpbmUtc3R5bGUiOiJzb2xpZCJ9LCIub3V0bGluZS1kYXNoZWQiOnsib3V0bGluZS1zdHlsZSI6ImRhc2hlZCJ9LCIub3V0bGluZS1kb3R0ZWQiOnsib3V0bGluZS1zdHlsZSI6ImRvdHRlZCJ9LCIub3V0bGluZS1kb3VibGUiOnsib3V0bGluZS1zdHlsZSI6ImRvdWJsZSJ9fSl9LG91dGxpbmVXaWR0aDpMKCJvdXRsaW5lV2lkdGgiLFtbIm91dGxpbmUiLFsib3V0bGluZS13aWR0aCJdXV0se3R5cGU6WyJsZW5ndGgiLCJudW1iZXIiLCJwZXJjZW50YWdlIl19KSxvdXRsaW5lT2Zmc2V0OkwoIm91dGxpbmVPZmZzZXQiLFtbIm91dGxpbmUtb2Zmc2V0IixbIm91dGxpbmUtb2Zmc2V0Il1dXSx7dHlwZTpbImxlbmd0aCIsIm51bWJlciIsInBlcmNlbnRhZ2UiLCJhbnkiXSxzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSksb3V0bGluZUNvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHtvdXRsaW5lOnQ9Pih7Im91dGxpbmUtY29sb3IiOlgodCl9KX0se3ZhbHVlczp4ZShlKCJvdXRsaW5lQ29sb3IiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0scmluZ1dpZHRoOih7bWF0Y2hVdGlsaXRpZXM6cixhZGREZWZhdWx0czplLGFkZFV0aWxpdGllczp0LHRoZW1lOmksY29uZmlnOm59KT0+e2xldCBzPSgoKT0+e2lmKHdlKG4oKSwicmVzcGVjdERlZmF1bHRSaW5nQ29sb3JPcGFjaXR5IikpcmV0dXJuIGkoInJpbmdDb2xvci5ERUZBVUxUIik7bGV0IGE9aSgicmluZ09wYWNpdHkuREVGQVVMVCIsIjAuNSIpO3JldHVybiBpKCJyaW5nQ29sb3IiKT8uREVGQVVMVD9KZShpKCJyaW5nQ29sb3IiKT8uREVGQVVMVCxhLGByZ2IoMTQ3IDE5NyAyNTMgLyAke2F9KWApOmByZ2IoMTQ3IDE5NyAyNTMgLyAke2F9KWB9KSgpO2UoInJpbmctd2lkdGgiLHsiLS10dy1yaW5nLWluc2V0IjoiICIsIi0tdHctcmluZy1vZmZzZXQtd2lkdGgiOmkoInJpbmdPZmZzZXRXaWR0aC5ERUZBVUxUIiwiMHB4IiksIi0tdHctcmluZy1vZmZzZXQtY29sb3IiOmkoInJpbmdPZmZzZXRDb2xvci5ERUZBVUxUIiwiI2ZmZiIpLCItLXR3LXJpbmctY29sb3IiOnMsIi0tdHctcmluZy1vZmZzZXQtc2hhZG93IjoiMCAwICMwMDAwIiwiLS10dy1yaW5nLXNoYWRvdyI6IjAgMCAjMDAwMCIsIi0tdHctc2hhZG93IjoiMCAwICMwMDAwIiwiLS10dy1zaGFkb3ctY29sb3JlZCI6IjAgMCAjMDAwMCJ9KSxyKHtyaW5nOmE9Pih7IkBkZWZhdWx0cyByaW5nLXdpZHRoIjp7fSwiLS10dy1yaW5nLW9mZnNldC1zaGFkb3ciOiJ2YXIoLS10dy1yaW5nLWluc2V0KSAwIDAgMCB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkgdmFyKC0tdHctcmluZy1vZmZzZXQtY29sb3IpIiwiLS10dy1yaW5nLXNoYWRvdyI6YHZhcigtLXR3LXJpbmctaW5zZXQpIDAgMCAwIGNhbGMoJHthfSArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSkgdmFyKC0tdHctcmluZy1jb2xvcilgLCJib3gtc2hhZG93IjpbInZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdykiLCJ2YXIoLS10dy1yaW5nLXNoYWRvdykiLCJ2YXIoLS10dy1zaGFkb3csIDAgMCAjMDAwMCkiXS5qb2luKCIsICIpfSl9LHt2YWx1ZXM6aSgicmluZ1dpZHRoIiksdHlwZToibGVuZ3RoIn0pLHQoeyIucmluZy1pbnNldCI6eyJAZGVmYXVsdHMgcmluZy13aWR0aCI6e30sIi0tdHctcmluZy1pbnNldCI6Imluc2V0In19KX0scmluZ0NvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplLGNvcmVQbHVnaW5zOnR9KT0+e3Ioe3Jpbmc6aT0+dCgicmluZ09wYWNpdHkiKT9BZSh7Y29sb3I6aSxwcm9wZXJ0eToiLS10dy1yaW5nLWNvbG9yIix2YXJpYWJsZToiLS10dy1yaW5nLW9wYWNpdHkifSk6eyItLXR3LXJpbmctY29sb3IiOlgoaSl9fSx7dmFsdWVzOk9iamVjdC5mcm9tRW50cmllcyhPYmplY3QuZW50cmllcyh4ZShlKCJyaW5nQ29sb3IiKSkpLmZpbHRlcigoW2ldKT0+aSE9PSJERUZBVUxUIikpLHR5cGU6WyJjb2xvciIsImFueSJdfSl9LHJpbmdPcGFjaXR5OnI9PntsZXR7Y29uZmlnOmV9PXI7cmV0dXJuIEwoInJpbmdPcGFjaXR5IixbWyJyaW5nLW9wYWNpdHkiLFsiLS10dy1yaW5nLW9wYWNpdHkiXV1dLHtmaWx0ZXJEZWZhdWx0OiF3ZShlKCksInJlc3BlY3REZWZhdWx0UmluZ0NvbG9yT3BhY2l0eSIpfSkocil9LHJpbmdPZmZzZXRXaWR0aDpMKCJyaW5nT2Zmc2V0V2lkdGgiLFtbInJpbmctb2Zmc2V0IixbIi0tdHctcmluZy1vZmZzZXQtd2lkdGgiXV1dLHt0eXBlOiJsZW5ndGgifSkscmluZ09mZnNldENvbG9yOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHsicmluZy1vZmZzZXQiOnQ9Pih7Ii0tdHctcmluZy1vZmZzZXQtY29sb3IiOlgodCl9KX0se3ZhbHVlczp4ZShlKCJyaW5nT2Zmc2V0Q29sb3IiKSksdHlwZTpbImNvbG9yIiwiYW55Il19KX0sYmx1cjooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7Ymx1cjp0PT4oeyItLXR3LWJsdXIiOnQudHJpbSgpPT09IiI/IiAiOmBibHVyKCR7dH0pYCwiQGRlZmF1bHRzIGZpbHRlciI6e30sZmlsdGVyOm50fSl9LHt2YWx1ZXM6ZSgiYmx1ciIpfSl9LGJyaWdodG5lc3M6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3Ioe2JyaWdodG5lc3M6dD0+KHsiLS10dy1icmlnaHRuZXNzIjpgYnJpZ2h0bmVzcygke3R9KWAsIkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0pfSx7dmFsdWVzOmUoImJyaWdodG5lc3MiKX0pfSxjb250cmFzdDooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7Y29udHJhc3Q6dD0+KHsiLS10dy1jb250cmFzdCI6YGNvbnRyYXN0KCR7dH0pYCwiQGRlZmF1bHRzIGZpbHRlciI6e30sZmlsdGVyOm50fSl9LHt2YWx1ZXM6ZSgiY29udHJhc3QiKX0pfSxkcm9wU2hhZG93Oih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHsiZHJvcC1zaGFkb3ciOnQ9Pih7Ii0tdHctZHJvcC1zaGFkb3ciOkFycmF5LmlzQXJyYXkodCk/dC5tYXAoaT0+YGRyb3Atc2hhZG93KCR7aX0pYCkuam9pbigiICIpOmBkcm9wLXNoYWRvdygke3R9KWAsIkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0pfSx7dmFsdWVzOmUoImRyb3BTaGFkb3ciKX0pfSxncmF5c2NhbGU6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3Ioe2dyYXlzY2FsZTp0PT4oeyItLXR3LWdyYXlzY2FsZSI6YGdyYXlzY2FsZSgke3R9KWAsIkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0pfSx7dmFsdWVzOmUoImdyYXlzY2FsZSIpfSl9LGh1ZVJvdGF0ZTooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7Imh1ZS1yb3RhdGUiOnQ9Pih7Ii0tdHctaHVlLXJvdGF0ZSI6YGh1ZS1yb3RhdGUoJHt0fSlgLCJAZGVmYXVsdHMgZmlsdGVyIjp7fSxmaWx0ZXI6bnR9KX0se3ZhbHVlczplKCJodWVSb3RhdGUiKSxzdXBwb3J0c05lZ2F0aXZlVmFsdWVzOiEwfSl9LGludmVydDooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7aW52ZXJ0OnQ9Pih7Ii0tdHctaW52ZXJ0IjpgaW52ZXJ0KCR7dH0pYCwiQGRlZmF1bHRzIGZpbHRlciI6e30sZmlsdGVyOm50fSl9LHt2YWx1ZXM6ZSgiaW52ZXJ0Iil9KX0sc2F0dXJhdGU6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3Ioe3NhdHVyYXRlOnQ9Pih7Ii0tdHctc2F0dXJhdGUiOmBzYXR1cmF0ZSgke3R9KWAsIkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0pfSx7dmFsdWVzOmUoInNhdHVyYXRlIil9KX0sc2VwaWE6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3Ioe3NlcGlhOnQ9Pih7Ii0tdHctc2VwaWEiOmBzZXBpYSgke3R9KWAsIkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0pfSx7dmFsdWVzOmUoInNlcGlhIil9KX0sZmlsdGVyOih7YWRkRGVmYXVsdHM6cixhZGRVdGlsaXRpZXM6ZX0pPT57cigiZmlsdGVyIix7Ii0tdHctYmx1ciI6IiAiLCItLXR3LWJyaWdodG5lc3MiOiIgIiwiLS10dy1jb250cmFzdCI6IiAiLCItLXR3LWdyYXlzY2FsZSI6IiAiLCItLXR3LWh1ZS1yb3RhdGUiOiIgIiwiLS10dy1pbnZlcnQiOiIgIiwiLS10dy1zYXR1cmF0ZSI6IiAiLCItLXR3LXNlcGlhIjoiICIsIi0tdHctZHJvcC1zaGFkb3ciOiIgIn0pLGUoeyIuZmlsdGVyIjp7IkBkZWZhdWx0cyBmaWx0ZXIiOnt9LGZpbHRlcjpudH0sIi5maWx0ZXItbm9uZSI6e2ZpbHRlcjoibm9uZSJ9fSl9LGJhY2tkcm9wQmx1cjooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7ImJhY2tkcm9wLWJsdXIiOnQ9Pih7Ii0tdHctYmFja2Ryb3AtYmx1ciI6dC50cmltKCk9PT0iIj8iICI6YGJsdXIoJHt0fSlgLCJAZGVmYXVsdHMgYmFja2Ryb3AtZmlsdGVyIjp7fSwiLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXIiOmdlLCJiYWNrZHJvcC1maWx0ZXIiOmdlfSl9LHt2YWx1ZXM6ZSgiYmFja2Ryb3BCbHVyIil9KX0sYmFja2Ryb3BCcmlnaHRuZXNzOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHsiYmFja2Ryb3AtYnJpZ2h0bmVzcyI6dD0+KHsiLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzIjpgYnJpZ2h0bmVzcygke3R9KWAsIkBkZWZhdWx0cyBiYWNrZHJvcC1maWx0ZXIiOnt9LCItd2Via2l0LWJhY2tkcm9wLWZpbHRlciI6Z2UsImJhY2tkcm9wLWZpbHRlciI6Z2V9KX0se3ZhbHVlczplKCJiYWNrZHJvcEJyaWdodG5lc3MiKX0pfSxiYWNrZHJvcENvbnRyYXN0Oih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHsiYmFja2Ryb3AtY29udHJhc3QiOnQ9Pih7Ii0tdHctYmFja2Ryb3AtY29udHJhc3QiOmBjb250cmFzdCgke3R9KWAsIkBkZWZhdWx0cyBiYWNrZHJvcC1maWx0ZXIiOnt9LCItd2Via2l0LWJhY2tkcm9wLWZpbHRlciI6Z2UsImJhY2tkcm9wLWZpbHRlciI6Z2V9KX0se3ZhbHVlczplKCJiYWNrZHJvcENvbnRyYXN0Iil9KX0sYmFja2Ryb3BHcmF5c2NhbGU6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3IoeyJiYWNrZHJvcC1ncmF5c2NhbGUiOnQ9Pih7Ii0tdHctYmFja2Ryb3AtZ3JheXNjYWxlIjpgZ3JheXNjYWxlKCR7dH0pYCwiQGRlZmF1bHRzIGJhY2tkcm9wLWZpbHRlciI6e30sIi13ZWJraXQtYmFja2Ryb3AtZmlsdGVyIjpnZSwiYmFja2Ryb3AtZmlsdGVyIjpnZX0pfSx7dmFsdWVzOmUoImJhY2tkcm9wR3JheXNjYWxlIil9KX0sYmFja2Ryb3BIdWVSb3RhdGU6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3IoeyJiYWNrZHJvcC1odWUtcm90YXRlIjp0PT4oeyItLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUiOmBodWUtcm90YXRlKCR7dH0pYCwiQGRlZmF1bHRzIGJhY2tkcm9wLWZpbHRlciI6e30sIi13ZWJraXQtYmFja2Ryb3AtZmlsdGVyIjpnZSwiYmFja2Ryb3AtZmlsdGVyIjpnZX0pfSx7dmFsdWVzOmUoImJhY2tkcm9wSHVlUm90YXRlIiksc3VwcG9ydHNOZWdhdGl2ZVZhbHVlczohMH0pfSxiYWNrZHJvcEludmVydDooe21hdGNoVXRpbGl0aWVzOnIsdGhlbWU6ZX0pPT57cih7ImJhY2tkcm9wLWludmVydCI6dD0+KHsiLS10dy1iYWNrZHJvcC1pbnZlcnQiOmBpbnZlcnQoJHt0fSlgLCJAZGVmYXVsdHMgYmFja2Ryb3AtZmlsdGVyIjp7fSwiLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXIiOmdlLCJiYWNrZHJvcC1maWx0ZXIiOmdlfSl9LHt2YWx1ZXM6ZSgiYmFja2Ryb3BJbnZlcnQiKX0pfSxiYWNrZHJvcE9wYWNpdHk6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3IoeyJiYWNrZHJvcC1vcGFjaXR5Ijp0PT4oeyItLXR3LWJhY2tkcm9wLW9wYWNpdHkiOmBvcGFjaXR5KCR7dH0pYCwiQGRlZmF1bHRzIGJhY2tkcm9wLWZpbHRlciI6e30sIi13ZWJraXQtYmFja2Ryb3AtZmlsdGVyIjpnZSwiYmFja2Ryb3AtZmlsdGVyIjpnZX0pfSx7dmFsdWVzOmUoImJhY2tkcm9wT3BhY2l0eSIpfSl9LGJhY2tkcm9wU2F0dXJhdGU6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e3IoeyJiYWNrZHJvcC1zYXR1cmF0ZSI6dD0+KHsiLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSI6YHNhdHVyYXRlKCR7dH0pYCwiQGRlZmF1bHRzIGJhY2tkcm9wLWZpbHRlciI6e30sIi13ZWJraXQtYmFja2Ryb3AtZmlsdGVyIjpnZSwiYmFja2Ryb3AtZmlsdGVyIjpnZX0pfSx7dmFsdWVzOmUoImJhY2tkcm9wU2F0dXJhdGUiKX0pfSxiYWNrZHJvcFNlcGlhOih7bWF0Y2hVdGlsaXRpZXM6cix0aGVtZTplfSk9PntyKHsiYmFja2Ryb3Atc2VwaWEiOnQ9Pih7Ii0tdHctYmFja2Ryb3Atc2VwaWEiOmBzZXBpYSgke3R9KWAsIkBkZWZhdWx0cyBiYWNrZHJvcC1maWx0ZXIiOnt9LCItd2Via2l0LWJhY2tkcm9wLWZpbHRlciI6Z2UsImJhY2tkcm9wLWZpbHRlciI6Z2V9KX0se3ZhbHVlczplKCJiYWNrZHJvcFNlcGlhIil9KX0sYmFja2Ryb3BGaWx0ZXI6KHthZGREZWZhdWx0czpyLGFkZFV0aWxpdGllczplfSk9PntyKCJiYWNrZHJvcC1maWx0ZXIiLHsiLS10dy1iYWNrZHJvcC1ibHVyIjoiICIsIi0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzcyI6IiAiLCItLXR3LWJhY2tkcm9wLWNvbnRyYXN0IjoiICIsIi0tdHctYmFja2Ryb3AtZ3JheXNjYWxlIjoiICIsIi0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZSI6IiAiLCItLXR3LWJhY2tkcm9wLWludmVydCI6IiAiLCItLXR3LWJhY2tkcm9wLW9wYWNpdHkiOiIgIiwiLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSI6IiAiLCItLXR3LWJhY2tkcm9wLXNlcGlhIjoiICJ9KSxlKHsiLmJhY2tkcm9wLWZpbHRlciI6eyJAZGVmYXVsdHMgYmFja2Ryb3AtZmlsdGVyIjp7fSwiLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXIiOmdlLCJiYWNrZHJvcC1maWx0ZXIiOmdlfSwiLmJhY2tkcm9wLWZpbHRlci1ub25lIjp7Ii13ZWJraXQtYmFja2Ryb3AtZmlsdGVyIjoibm9uZSIsImJhY2tkcm9wLWZpbHRlciI6Im5vbmUifX0pfSx0cmFuc2l0aW9uUHJvcGVydHk6KHttYXRjaFV0aWxpdGllczpyLHRoZW1lOmV9KT0+e2xldCB0PWUoInRyYW5zaXRpb25UaW1pbmdGdW5jdGlvbi5ERUZBVUxUIiksaT1lKCJ0cmFuc2l0aW9uRHVyYXRpb24uREVGQVVMVCIpO3Ioe3RyYW5zaXRpb246bj0+KHsidHJhbnNpdGlvbi1wcm9wZXJ0eSI6biwuLi5uPT09Im5vbmUiP3t9OnsidHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24iOnQsInRyYW5zaXRpb24tZHVyYXRpb24iOml9fSl9LHt2YWx1ZXM6ZSgidHJhbnNpdGlvblByb3BlcnR5Iil9KX0sdHJhbnNpdGlvbkRlbGF5OkwoInRyYW5zaXRpb25EZWxheSIsW1siZGVsYXkiLFsidHJhbnNpdGlvbkRlbGF5Il1dXSksdHJhbnNpdGlvbkR1cmF0aW9uOkwoInRyYW5zaXRpb25EdXJhdGlvbiIsW1siZHVyYXRpb24iLFsidHJhbnNpdGlvbkR1cmF0aW9uIl1dXSx7ZmlsdGVyRGVmYXVsdDohMH0pLHRyYW5zaXRpb25UaW1pbmdGdW5jdGlvbjpMKCJ0cmFuc2l0aW9uVGltaW5nRnVuY3Rpb24iLFtbImVhc2UiLFsidHJhbnNpdGlvblRpbWluZ0Z1bmN0aW9uIl1dXSx7ZmlsdGVyRGVmYXVsdDohMH0pLHdpbGxDaGFuZ2U6TCgid2lsbENoYW5nZSIsW1sid2lsbC1jaGFuZ2UiLFsid2lsbC1jaGFuZ2UiXV1dKSxjb250YWluOih7YWRkRGVmYXVsdHM6cixhZGRVdGlsaXRpZXM6ZX0pPT57bGV0IHQ9InZhcigtLXR3LWNvbnRhaW4tc2l6ZSkgdmFyKC0tdHctY29udGFpbi1sYXlvdXQpIHZhcigtLXR3LWNvbnRhaW4tcGFpbnQpIHZhcigtLXR3LWNvbnRhaW4tc3R5bGUpIjtyKCJjb250YWluIix7Ii0tdHctY29udGFpbi1zaXplIjoiICIsIi0tdHctY29udGFpbi1sYXlvdXQiOiIgIiwiLS10dy1jb250YWluLXBhaW50IjoiICIsIi0tdHctY29udGFpbi1zdHlsZSI6IiAifSksZSh7Ii5jb250YWluLW5vbmUiOntjb250YWluOiJub25lIn0sIi5jb250YWluLWNvbnRlbnQiOntjb250YWluOiJjb250ZW50In0sIi5jb250YWluLXN0cmljdCI6e2NvbnRhaW46InN0cmljdCJ9LCIuY29udGFpbi1zaXplIjp7IkBkZWZhdWx0cyBjb250YWluIjp7fSwiLS10dy1jb250YWluLXNpemUiOiJzaXplIixjb250YWluOnR9LCIuY29udGFpbi1pbmxpbmUtc2l6ZSI6eyJAZGVmYXVsdHMgY29udGFpbiI6e30sIi0tdHctY29udGFpbi1zaXplIjoiaW5saW5lLXNpemUiLGNvbnRhaW46dH0sIi5jb250YWluLWxheW91dCI6eyJAZGVmYXVsdHMgY29udGFpbiI6e30sIi0tdHctY29udGFpbi1sYXlvdXQiOiJsYXlvdXQiLGNvbnRhaW46dH0sIi5jb250YWluLXBhaW50Ijp7IkBkZWZhdWx0cyBjb250YWluIjp7fSwiLS10dy1jb250YWluLXBhaW50IjoicGFpbnQiLGNvbnRhaW46dH0sIi5jb250YWluLXN0eWxlIjp7IkBkZWZhdWx0cyBjb250YWluIjp7fSwiLS10dy1jb250YWluLXN0eWxlIjoic3R5bGUiLGNvbnRhaW46dH19KX0sY29udGVudDpMKCJjb250ZW50IixbWyJjb250ZW50IixbIi0tdHctY29udGVudCIsWyJjb250ZW50IiwidmFyKC0tdHctY29udGVudCkiXV1dXSksZm9yY2VkQ29sb3JBZGp1c3Q6KHthZGRVdGlsaXRpZXM6cn0pPT57cih7Ii5mb3JjZWQtY29sb3ItYWRqdXN0LWF1dG8iOnsiZm9yY2VkLWNvbG9yLWFkanVzdCI6ImF1dG8ifSwiLmZvcmNlZC1jb2xvci1hZGp1c3Qtbm9uZSI6eyJmb3JjZWQtY29sb3ItYWRqdXN0Ijoibm9uZSJ9fSl9fX0pO2Z1bmN0aW9uIGhfKHIpe2lmKHI9PT12b2lkIDApcmV0dXJuITE7aWYocj09PSJ0cnVlInx8cj09PSIxIilyZXR1cm4hMDtpZihyPT09ImZhbHNlInx8cj09PSIwIilyZXR1cm4hMTtpZihyPT09IioiKXJldHVybiEwO2xldCBlPXIuc3BsaXQoIiwiKS5tYXAodD0+dC5zcGxpdCgiOiIpWzBdKTtyZXR1cm4gZS5pbmNsdWRlcygiLXRhaWx3aW5kY3NzIik/ITE6ISFlLmluY2x1ZGVzKCJ0YWlsd2luZGNzcyIpfXZhciBaZSx3aCx2aCxlcyxObyxndCxUaSxJdD1QKCgpPT57dSgpO1plPXR5cGVvZiBtIT0idW5kZWZpbmVkIj97Tk9ERV9FTlY6InByb2R1Y3Rpb24iLERFQlVHOmhfKG0uZW52LkRFQlVHKX06e05PREVfRU5WOiJwcm9kdWN0aW9uIixERUJVRzohMX0sd2g9bmV3IE1hcCx2aD1uZXcgTWFwLGVzPW5ldyBNYXAsTm89bmV3IE1hcCxndD1uZXcgU3RyaW5nKCIqIiksVGk9U3ltYm9sKCJfX05PTkVfXyIpfSk7ZnVuY3Rpb24gY3Iocil7bGV0IGU9W10sdD0hMTtmb3IobGV0IGk9MDtpPHIubGVuZ3RoO2krKyl7bGV0IG49cltpXTtpZihuPT09IjoiJiYhdCYmZS5sZW5ndGg9PT0wKXJldHVybiExO2lmKG1fLmhhcyhuKSYmcltpLTFdIT09IlxcIiYmKHQ9IXQpLCF0JiZyW2ktMV0hPT0iXFwiKXtpZih4aC5oYXMobikpZS5wdXNoKG4pO2Vsc2UgaWYoa2guaGFzKG4pKXtsZXQgcz1raC5nZXQobik7aWYoZS5sZW5ndGg8PTB8fGUucG9wKCkhPT1zKXJldHVybiExfX19cmV0dXJuIShlLmxlbmd0aD4wKX12YXIgeGgsa2gsbV8sQm89UCgoKT0+e3UoKTt4aD1uZXcgTWFwKFtbInsiLCJ9Il0sWyJbIiwiXSJdLFsiKCIsIikiXV0pLGtoPW5ldyBNYXAoQXJyYXkuZnJvbSh4aC5lbnRyaWVzKCkpLm1hcCgoW3IsZV0pPT5bZSxyXSkpLG1fPW5ldyBTZXQoWyciJywiJyIsImAiXSl9KTtmdW5jdGlvbiBwcihyKXtsZXRbZV09U2gocik7cmV0dXJuIGUuZm9yRWFjaCgoW3QsaV0pPT50LnJlbW92ZUNoaWxkKGkpKSxyLm5vZGVzLnB1c2goLi4uZS5tYXAoKFssdF0pPT50KSkscn1mdW5jdGlvbiBTaChyKXtsZXQgZT1bXSx0PW51bGw7Zm9yKGxldCBpIG9mIHIubm9kZXMpaWYoaS50eXBlPT09ImNvbWJpbmF0b3IiKWU9ZS5maWx0ZXIoKFssbl0pPT5qbyhuKS5pbmNsdWRlcygianVtcGFibGUiKSksdD1udWxsO2Vsc2UgaWYoaS50eXBlPT09InBzZXVkbyIpe2dfKGkpPyh0PWksZS5wdXNoKFtyLGksbnVsbF0pKTp0JiZ5XyhpLHQpP2UucHVzaChbcixpLHRdKTp0PW51bGw7Zm9yKGxldCBuIG9mIGkubm9kZXM/P1tdKXtsZXRbcyxhXT1TaChuKTt0PWF8fHQsZS5wdXNoKC4uLnMpfX1yZXR1cm5bZSx0XX1mdW5jdGlvbiBBaChyKXtyZXR1cm4gci52YWx1ZS5zdGFydHNXaXRoKCI6OiIpfHxGb1tyLnZhbHVlXSE9PXZvaWQgMH1mdW5jdGlvbiBnXyhyKXtyZXR1cm4gQWgocikmJmpvKHIpLmluY2x1ZGVzKCJ0ZXJtaW5hbCIpfWZ1bmN0aW9uIHlfKHIsZSl7cmV0dXJuIHIudHlwZSE9PSJwc2V1ZG8ifHxBaChyKT8hMTpqbyhlKS5pbmNsdWRlcygiYWN0aW9uYWJsZSIpfWZ1bmN0aW9uIGpvKHIpe3JldHVybiBGb1tyLnZhbHVlXT8/Rm8uX19kZWZhdWx0X199dmFyIEZvLHRzPVAoKCk9Pnt1KCk7Rm89eyI6OmFmdGVyIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpiYWNrZHJvcCI6WyJ0ZXJtaW5hbCIsImp1bXBhYmxlIl0sIjo6YmVmb3JlIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpjdWUiOlsidGVybWluYWwiXSwiOjpjdWUtcmVnaW9uIjpbInRlcm1pbmFsIl0sIjo6Zmlyc3QtbGV0dGVyIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpmaXJzdC1saW5lIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpncmFtbWFyLWVycm9yIjpbInRlcm1pbmFsIl0sIjo6bWFya2VyIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpwYXJ0IjpbInRlcm1pbmFsIiwiYWN0aW9uYWJsZSJdLCI6OnBsYWNlaG9sZGVyIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOjpzZWxlY3Rpb24iOlsidGVybWluYWwiLCJqdW1wYWJsZSJdLCI6OnNsb3R0ZWQiOlsidGVybWluYWwiXSwiOjpzcGVsbGluZy1lcnJvciI6WyJ0ZXJtaW5hbCJdLCI6OnRhcmdldC10ZXh0IjpbInRlcm1pbmFsIl0sIjo6ZmlsZS1zZWxlY3Rvci1idXR0b24iOlsidGVybWluYWwiLCJhY3Rpb25hYmxlIl0sIjo6ZGVlcCI6WyJhY3Rpb25hYmxlIl0sIjo6di1kZWVwIjpbImFjdGlvbmFibGUiXSwiOjpuZy1kZWVwIjpbImFjdGlvbmFibGUiXSwiOmFmdGVyIjpbInRlcm1pbmFsIiwianVtcGFibGUiXSwiOmJlZm9yZSI6WyJ0ZXJtaW5hbCIsImp1bXBhYmxlIl0sIjpmaXJzdC1sZXR0ZXIiOlsidGVybWluYWwiLCJqdW1wYWJsZSJdLCI6Zmlyc3QtbGluZSI6WyJ0ZXJtaW5hbCIsImp1bXBhYmxlIl0sIjp3aGVyZSI6W10sIjppcyI6W10sIjpoYXMiOltdLF9fZGVmYXVsdF9fOlsidGVybWluYWwiLCJhY3Rpb25hYmxlIl19fSk7ZnVuY3Rpb24gZHIocix7Y29udGV4dDplLGNhbmRpZGF0ZTp0fSl7bGV0IGk9ZT8udGFpbHdpbmRDb25maWcucHJlZml4Pz8iIixuPXIubWFwKGE9PntsZXQgbz0oMCxzdC5kZWZhdWx0KSgpLmFzdFN5bmMoYS5mb3JtYXQpO3JldHVybnsuLi5hLGFzdDphLnJlc3BlY3RQcmVmaXg/dXIoaSxvKTpvfX0pLHM9c3QuZGVmYXVsdC5yb290KHtub2Rlczpbc3QuZGVmYXVsdC5zZWxlY3Rvcih7bm9kZXM6W3N0LmRlZmF1bHQuY2xhc3NOYW1lKHt2YWx1ZTpUZSh0KX0pXX0pXX0pO2ZvcihsZXR7YXN0OmF9b2YgbilbcyxhXT13XyhzLGEpLGEud2Fsa05lc3Rpbmcobz0+by5yZXBsYWNlV2l0aCguLi5zLm5vZGVzWzBdLm5vZGVzKSkscz1hO3JldHVybiBzfWZ1bmN0aW9uIF9oKHIpe2xldCBlPVtdO2Zvcig7ci5wcmV2KCkmJnIucHJldigpLnR5cGUhPT0iY29tYmluYXRvciI7KXI9ci5wcmV2KCk7Zm9yKDtyJiZyLnR5cGUhPT0iY29tYmluYXRvciI7KWUucHVzaChyKSxyPXIubmV4dCgpO3JldHVybiBlfWZ1bmN0aW9uIGJfKHIpe3JldHVybiByLnNvcnQoKGUsdCk9PmUudHlwZT09PSJ0YWciJiZ0LnR5cGU9PT0iY2xhc3MiPy0xOmUudHlwZT09PSJjbGFzcyImJnQudHlwZT09PSJ0YWciPzE6ZS50eXBlPT09ImNsYXNzIiYmdC50eXBlPT09InBzZXVkbyImJnQudmFsdWUuc3RhcnRzV2l0aCgiOjoiKT8tMTplLnR5cGU9PT0icHNldWRvIiYmZS52YWx1ZS5zdGFydHNXaXRoKCI6OiIpJiZ0LnR5cGU9PT0iY2xhc3MiPzE6ci5pbmRleChlKS1yLmluZGV4KHQpKSxyfWZ1bmN0aW9uIFVvKHIsZSl7bGV0IHQ9ITE7ci53YWxrKGk9PntpZihpLnR5cGU9PT0iY2xhc3MiJiZpLnZhbHVlPT09ZSlyZXR1cm4gdD0hMCwhMX0pLHR8fHIucmVtb3ZlKCl9ZnVuY3Rpb24gcnMocixlLHtjb250ZXh0OnQsY2FuZGlkYXRlOmksYmFzZTpufSl7bGV0IHM9dD8udGFpbHdpbmRDb25maWc/LnNlcGFyYXRvcj8/IjoiO249bj8/dmUoaSxzKS5wb3AoKTtsZXQgYT0oMCxzdC5kZWZhdWx0KSgpLmFzdFN5bmMocik7aWYoYS53YWxrQ2xhc3NlcyhmPT57Zi5yYXdzJiZmLnZhbHVlLmluY2x1ZGVzKG4pJiYoZi5yYXdzLnZhbHVlPVRlKCgwLENoLmRlZmF1bHQpKGYucmF3cy52YWx1ZSkpKX0pLGEuZWFjaChmPT5VbyhmLG4pKSxhLmxlbmd0aD09PTApcmV0dXJuIG51bGw7bGV0IG89QXJyYXkuaXNBcnJheShlKT9kcihlLHtjb250ZXh0OnQsY2FuZGlkYXRlOml9KTplO2lmKG89PT1udWxsKXJldHVybiBhLnRvU3RyaW5nKCk7bGV0IGw9c3QuZGVmYXVsdC5jb21tZW50KHt2YWx1ZToiLypfX3NpbXBsZV9fKi8ifSksYz1zdC5kZWZhdWx0LmNvbW1lbnQoe3ZhbHVlOiIvKl9fc2ltcGxlX18qLyJ9KTtyZXR1cm4gYS53YWxrQ2xhc3NlcyhmPT57aWYoZi52YWx1ZSE9PW4pcmV0dXJuO2xldCBkPWYucGFyZW50LHA9by5ub2Rlc1swXS5ub2RlcztpZihkLm5vZGVzLmxlbmd0aD09PTEpe2YucmVwbGFjZVdpdGgoLi4ucCk7cmV0dXJufWxldCBoPV9oKGYpO2QuaW5zZXJ0QmVmb3JlKGhbMF0sbCksZC5pbnNlcnRBZnRlcihoW2gubGVuZ3RoLTFdLGMpO2ZvcihsZXQgdiBvZiBwKWQuaW5zZXJ0QmVmb3JlKGhbMF0sdi5jbG9uZSgpKTtmLnJlbW92ZSgpLGg9X2gobCk7bGV0IGI9ZC5pbmRleChsKTtkLm5vZGVzLnNwbGljZShiLGgubGVuZ3RoLC4uLmJfKHN0LmRlZmF1bHQuc2VsZWN0b3Ioe25vZGVzOmh9KSkubm9kZXMpLGwucmVtb3ZlKCksYy5yZW1vdmUoKX0pLGEud2Fsa1BzZXVkb3MoZj0+e2YudmFsdWU9PT16byYmZi5yZXBsYWNlV2l0aChmLm5vZGVzKX0pLGEuZWFjaChmPT5wcihmKSksYS50b1N0cmluZygpfWZ1bmN0aW9uIHdfKHIsZSl7bGV0IHQ9W107cmV0dXJuIHIud2Fsa1BzZXVkb3MoaT0+e2kudmFsdWU9PT16byYmdC5wdXNoKHtwc2V1ZG86aSx2YWx1ZTppLm5vZGVzWzBdLnRvU3RyaW5nKCl9KX0pLGUud2Fsa1BzZXVkb3MoaT0+e2lmKGkudmFsdWUhPT16bylyZXR1cm47bGV0IG49aS5ub2Rlc1swXS50b1N0cmluZygpLHM9dC5maW5kKGM9PmMudmFsdWU9PT1uKTtpZighcylyZXR1cm47bGV0IGE9W10sbz1pLm5leHQoKTtmb3IoO28mJm8udHlwZSE9PSJjb21iaW5hdG9yIjspYS5wdXNoKG8pLG89by5uZXh0KCk7bGV0IGw9bztzLnBzZXVkby5wYXJlbnQuaW5zZXJ0QWZ0ZXIocy5wc2V1ZG8sc3QuZGVmYXVsdC5zZWxlY3Rvcih7bm9kZXM6YS5tYXAoYz0+Yy5jbG9uZSgpKX0pKSxpLnJlbW92ZSgpLGEuZm9yRWFjaChjPT5jLnJlbW92ZSgpKSxsJiZsLnR5cGU9PT0iY29tYmluYXRvciImJmwucmVtb3ZlKCl9KSxbcixlXX12YXIgc3QsQ2gsem8sVm89UCgoKT0+e3UoKTtzdD1wZShpdCgpKSxDaD1wZShQbigpKTtmcigpO0duKCk7dHMoKTt6dCgpO3pvPSI6bWVyZ2UifSk7ZnVuY3Rpb24gaXMocixlKXtsZXQgdD0oMCxIby5kZWZhdWx0KSgpLmFzdFN5bmMocik7cmV0dXJuIHQuZWFjaChpPT57aS5ub2Rlcy5zb21lKHM9PnMudHlwZT09PSJjb21iaW5hdG9yIikmJihpLm5vZGVzPVtIby5kZWZhdWx0LnBzZXVkbyh7dmFsdWU6IjppcyIsbm9kZXM6W2kuY2xvbmUoKV19KV0pLHByKGkpfSksYCR7ZX0gJHt0LnRvU3RyaW5nKCl9YH12YXIgSG8sV289UCgoKT0+e3UoKTtIbz1wZShpdCgpKTt0cygpfSk7ZnVuY3Rpb24gR28ocil7cmV0dXJuIHZfLnRyYW5zZm9ybVN5bmMocil9ZnVuY3Rpb24qeF8ocil7bGV0IGU9MS8wO2Zvcig7ZT49MDspe2xldCB0LGk9ITE7aWYoZT09PTEvMCYmci5lbmRzV2l0aCgiXSIpKXtsZXQgYT1yLmluZGV4T2YoIlsiKTtyW2EtMV09PT0iLSI/dD1hLTE6clthLTFdPT09Ii8iPyh0PWEtMSxpPSEwKTp0PS0xfWVsc2UgZT09PTEvMCYmci5pbmNsdWRlcygiLyIpPyh0PXIubGFzdEluZGV4T2YoIi8iKSxpPSEwKTp0PXIubGFzdEluZGV4T2YoIi0iLGUpO2lmKHQ8MClicmVhaztsZXQgbj1yLnNsaWNlKDAsdCkscz1yLnNsaWNlKGk/dDp0KzEpO2U9dC0xLCEobj09PSIifHxzPT09Ii8iKSYmKHlpZWxkW24sc10pfX1mdW5jdGlvbiBrXyhyLGUpe2lmKHIubGVuZ3RoPT09MHx8ZS50YWlsd2luZENvbmZpZy5wcmVmaXg9PT0iIilyZXR1cm4gcjtmb3IobGV0IHQgb2Ygcil7bGV0W2ldPXQ7aWYoaS5vcHRpb25zLnJlc3BlY3RQcmVmaXgpe2xldCBuPWVlLnJvb3Qoe25vZGVzOlt0WzFdLmNsb25lKCldfSkscz10WzFdLnJhd3MudGFpbHdpbmQuY2xhc3NDYW5kaWRhdGU7bi53YWxrUnVsZXMoYT0+e2xldCBvPXMuc3RhcnRzV2l0aCgiLSIpO2Euc2VsZWN0b3I9dXIoZS50YWlsd2luZENvbmZpZy5wcmVmaXgsYS5zZWxlY3RvcixvKX0pLHRbMV09bi5ub2Rlc1swXX19cmV0dXJuIHJ9ZnVuY3Rpb24gU18ocixlKXtpZihyLmxlbmd0aD09PTApcmV0dXJuIHI7bGV0IHQ9W107ZnVuY3Rpb24gaShuKXtyZXR1cm4gbi5wYXJlbnQmJm4ucGFyZW50LnR5cGU9PT0iYXRydWxlIiYmbi5wYXJlbnQubmFtZT09PSJrZXlmcmFtZXMifWZvcihsZXRbbixzXW9mIHIpe2xldCBhPWVlLnJvb3Qoe25vZGVzOltzLmNsb25lKCldfSk7YS53YWxrUnVsZXMobz0+e2lmKGkobykpcmV0dXJuO2xldCBsPSgwLG5zLmRlZmF1bHQpKCkuYXN0U3luYyhvLnNlbGVjdG9yKTtsLmVhY2goYz0+VW8oYyxlKSksUWYobCxjPT5jPT09ZT9gISR7Y31gOmMpLG8uc2VsZWN0b3I9bC50b1N0cmluZygpLG8ud2Fsa0RlY2xzKGM9PmMuaW1wb3J0YW50PSEwKX0pLHQucHVzaChbey4uLm4saW1wb3J0YW50OiEwfSxhLm5vZGVzWzBdXSl9cmV0dXJuIHR9ZnVuY3Rpb24gQV8ocixlLHQpe2lmKGUubGVuZ3RoPT09MClyZXR1cm4gZTtsZXQgaT17bW9kaWZpZXI6bnVsbCx2YWx1ZTpUaX07e2xldFtuLC4uLnNdPXZlKHIsIi8iKTtpZihzLmxlbmd0aD4xJiYobj1uKyIvIitzLnNsaWNlKDAsLTEpLmpvaW4oIi8iKSxzPXMuc2xpY2UoLTEpKSxzLmxlbmd0aCYmIXQudmFyaWFudE1hcC5oYXMocikmJihyPW4saS5tb2RpZmllcj1zWzBdLCF3ZSh0LnRhaWx3aW5kQ29uZmlnLCJnZW5lcmFsaXplZE1vZGlmaWVycyIpKSlyZXR1cm5bXX1pZihyLmVuZHNXaXRoKCJdIikmJiFyLnN0YXJ0c1dpdGgoIlsiKSl7bGV0IG49LyguKSgtPylcWyguKilcXS9nLmV4ZWMocik7aWYobil7bGV0WyxzLGEsb109bjtpZihzPT09IkAiJiZhPT09Ii0iKXJldHVybltdO2lmKHMhPT0iQCImJmE9PT0iIilyZXR1cm5bXTtyPXIucmVwbGFjZShgJHthfVske299XWAsIiIpLGkudmFsdWU9b319aWYoS28ocikmJiF0LnZhcmlhbnRNYXAuaGFzKHIpKXtsZXQgbj10Lm9mZnNldHMucmVjb3JkVmFyaWFudChyKSxzPUsoci5zbGljZSgxLC0xKSksYT12ZShzLCIsIik7aWYoYS5sZW5ndGg+MSlyZXR1cm5bXTtpZighYS5ldmVyeShscykpcmV0dXJuW107bGV0IG89YS5tYXAoKGwsYyk9Plt0Lm9mZnNldHMuYXBwbHlQYXJhbGxlbE9mZnNldChuLGMpLFJpKGwudHJpbSgpKV0pO3QudmFyaWFudE1hcC5zZXQocixvKX1pZih0LnZhcmlhbnRNYXAuaGFzKHIpKXtsZXQgbj1LbyhyKSxzPXQudmFyaWFudE9wdGlvbnMuZ2V0KHIpPy5bUHRdPz97fSxhPXQudmFyaWFudE1hcC5nZXQocikuc2xpY2UoKSxvPVtdLGw9KCgpPT4hKG58fHMucmVzcGVjdFByZWZpeD09PSExKSkoKTtmb3IobGV0W2MsZl1vZiBlKXtpZihjLmxheWVyPT09InVzZXIiKWNvbnRpbnVlO2xldCBkPWVlLnJvb3Qoe25vZGVzOltmLmNsb25lKCldfSk7Zm9yKGxldFtwLGgsYl1vZiBhKXtsZXQgdz1mdW5jdGlvbigpe3YucmF3cy5uZWVkZWRCYWNrdXB8fCh2LnJhd3MubmVlZGVkQmFja3VwPSEwLHYud2Fsa1J1bGVzKFQ9PlQucmF3cy5vcmlnaW5hbFNlbGVjdG9yPVQuc2VsZWN0b3IpKX0saz1mdW5jdGlvbihUKXtyZXR1cm4gdygpLHYuZWFjaChCPT57Qi50eXBlPT09InJ1bGUiJiYoQi5zZWxlY3RvcnM9Qi5zZWxlY3RvcnMubWFwKE49PlQoe2dldCBjbGFzc05hbWUoKXtyZXR1cm4gR28oTil9LHNlbGVjdG9yOk59KSkpfSksdn0sdj0oYj8/ZCkuY2xvbmUoKSx5PVtdLFM9aCh7Z2V0IGNvbnRhaW5lcigpe3JldHVybiB3KCksdn0sc2VwYXJhdG9yOnQudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yLG1vZGlmeVNlbGVjdG9yczprLHdyYXAoVCl7bGV0IEI9di5ub2Rlczt2LnJlbW92ZUFsbCgpLFQuYXBwZW5kKEIpLHYuYXBwZW5kKFQpfSxmb3JtYXQoVCl7eS5wdXNoKHtmb3JtYXQ6VCxyZXNwZWN0UHJlZml4Omx9KX0sYXJnczppfSk7aWYoQXJyYXkuaXNBcnJheShTKSl7Zm9yKGxldFtULEJdb2YgUy5lbnRyaWVzKCkpYS5wdXNoKFt0Lm9mZnNldHMuYXBwbHlQYXJhbGxlbE9mZnNldChwLFQpLEIsdi5jbG9uZSgpXSk7Y29udGludWV9aWYodHlwZW9mIFM9PSJzdHJpbmciJiZ5LnB1c2goe2Zvcm1hdDpTLHJlc3BlY3RQcmVmaXg6bH0pLFM9PT1udWxsKWNvbnRpbnVlO3YucmF3cy5uZWVkZWRCYWNrdXAmJihkZWxldGUgdi5yYXdzLm5lZWRlZEJhY2t1cCx2LndhbGtSdWxlcyhUPT57bGV0IEI9VC5yYXdzLm9yaWdpbmFsU2VsZWN0b3I7aWYoIUJ8fChkZWxldGUgVC5yYXdzLm9yaWdpbmFsU2VsZWN0b3IsQj09PVQuc2VsZWN0b3IpKXJldHVybjtsZXQgTj1ULnNlbGVjdG9yLFI9KDAsbnMuZGVmYXVsdCkoRj0+e0Yud2Fsa0NsYXNzZXMoWT0+e1kudmFsdWU9YCR7cn0ke3QudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yfSR7WS52YWx1ZX1gfSl9KS5wcm9jZXNzU3luYyhCKTt5LnB1c2goe2Zvcm1hdDpOLnJlcGxhY2UoUiwiJiIpLHJlc3BlY3RQcmVmaXg6bH0pLFQuc2VsZWN0b3I9Qn0pKSx2Lm5vZGVzWzBdLnJhd3MudGFpbHdpbmQ9ey4uLnYubm9kZXNbMF0ucmF3cy50YWlsd2luZCxwYXJlbnRMYXllcjpjLmxheWVyfTtsZXQgRT1bey4uLmMsc29ydDp0Lm9mZnNldHMuYXBwbHlWYXJpYW50T2Zmc2V0KGMuc29ydCxwLE9iamVjdC5hc3NpZ24oaSx0LnZhcmlhbnRPcHRpb25zLmdldChyKSkpLGNvbGxlY3RlZEZvcm1hdHM6KGMuY29sbGVjdGVkRm9ybWF0cz8/W10pLmNvbmNhdCh5KX0sdi5ub2Rlc1swXV07by5wdXNoKEUpfX1yZXR1cm4gb31yZXR1cm5bXX1mdW5jdGlvbiBRbyhyLGUsdD17fSl7cmV0dXJuIWtlKHIpJiYhQXJyYXkuaXNBcnJheShyKT9bW3JdLHRdOkFycmF5LmlzQXJyYXkocik/UW8oclswXSxlLHJbMV0pOihlLmhhcyhyKXx8ZS5zZXQocixscihyKSksW2UuZ2V0KHIpLHRdKX1mdW5jdGlvbiBfXyhyKXtyZXR1cm4gQ18udGVzdChyKX1mdW5jdGlvbiBFXyhyKXtpZighci5pbmNsdWRlcygiOi8vIikpcmV0dXJuITE7dHJ5e2xldCBlPW5ldyBVUkwocik7cmV0dXJuIGUuc2NoZW1lIT09IiImJmUuaG9zdCE9PSIifWNhdGNoKGUpe3JldHVybiExfX1mdW5jdGlvbiBFaChyKXtsZXQgZT0hMDtyZXR1cm4gci53YWxrRGVjbHModD0+e2lmKCFPaCh0LnByb3AsdC52YWx1ZSkpcmV0dXJuIGU9ITEsITF9KSxlfWZ1bmN0aW9uIE9oKHIsZSl7aWYoRV8oYCR7cn06JHtlfWApKXJldHVybiExO3RyeXtyZXR1cm4gZWUucGFyc2UoYGF7JHtyfToke2V9fWApLnRvUmVzdWx0KCksITB9Y2F0Y2godCl7cmV0dXJuITF9fWZ1bmN0aW9uIE9fKHIsZSl7bGV0Wyx0LGldPXIubWF0Y2goL15cWyhbYS16QS1aMC05LV9dKyk6KFxTKylcXSQvKT8/W107aWYoaT09PXZvaWQgMHx8IV9fKHQpfHwhY3IoaSkpcmV0dXJuIG51bGw7bGV0IG49SyhpLHtwcm9wZXJ0eTp0fSk7cmV0dXJuIE9oKHQsbik/W1t7c29ydDplLm9mZnNldHMuYXJiaXRyYXJ5UHJvcGVydHkociksbGF5ZXI6InV0aWxpdGllcyIsb3B0aW9uczp7cmVzcGVjdEltcG9ydGFudDohMH19LCgpPT4oe1skbyhyKV06e1t0XTpufX0pXV06bnVsbH1mdW5jdGlvbipUXyhyLGUpe2UuY2FuZGlkYXRlUnVsZU1hcC5oYXMocikmJih5aWVsZFtlLmNhbmRpZGF0ZVJ1bGVNYXAuZ2V0KHIpLCJERUZBVUxUIl0pLHlpZWxkKmZ1bmN0aW9uKihvKXtvIT09bnVsbCYmKHlpZWxkW28sIkRFRkFVTFQiXSl9KE9fKHIsZSkpO2xldCB0PXIsaT0hMSxuPWUudGFpbHdpbmRDb25maWcucHJlZml4LHM9bi5sZW5ndGgsYT10LnN0YXJ0c1dpdGgobil8fHQuc3RhcnRzV2l0aChgLSR7bn1gKTt0W3NdPT09Ii0iJiZhJiYoaT0hMCx0PW4rdC5zbGljZShzKzEpKSxpJiZlLmNhbmRpZGF0ZVJ1bGVNYXAuaGFzKHQpJiYoeWllbGRbZS5jYW5kaWRhdGVSdWxlTWFwLmdldCh0KSwiLURFRkFVTFQiXSk7Zm9yKGxldFtvLGxdb2YgeF8odCkpZS5jYW5kaWRhdGVSdWxlTWFwLmhhcyhvKSYmKHlpZWxkW2UuY2FuZGlkYXRlUnVsZU1hcC5nZXQobyksaT9gLSR7bH1gOmxdKX1mdW5jdGlvbiBSXyhyLGUpe3JldHVybiByPT09Z3Q/W2d0XTp2ZShyLGUpfWZ1bmN0aW9uKlBfKHIsZSl7Zm9yKGxldCB0IG9mIHIpdFsxXS5yYXdzLnRhaWx3aW5kPXsuLi50WzFdLnJhd3MudGFpbHdpbmQsY2xhc3NDYW5kaWRhdGU6ZSxwcmVzZXJ2ZVNvdXJjZTp0WzBdLm9wdGlvbnM/LnByZXNlcnZlU291cmNlPz8hMX0seWllbGQgdH1mdW5jdGlvbipZbyhyLGUpe2xldCB0PWUudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yLFtpLC4uLm5dPVJfKHIsdCkucmV2ZXJzZSgpLHM9ITE7aS5zdGFydHNXaXRoKCIhIikmJihzPSEwLGk9aS5zbGljZSgxKSk7Zm9yKGxldCBhIG9mIFRfKGksZSkpe2xldCBvPVtdLGw9bmV3IE1hcCxbYyxmXT1hLGQ9Yy5sZW5ndGg9PT0xO2ZvcihsZXRbcCxoXW9mIGMpe2xldCBiPVtdO2lmKHR5cGVvZiBoPT0iZnVuY3Rpb24iKWZvcihsZXQgdiBvZltdLmNvbmNhdChoKGYse2lzT25seVBsdWdpbjpkfSkpKXtsZXRbeSx3XT1Rbyh2LGUucG9zdENzc05vZGVDYWNoZSk7Zm9yKGxldCBrIG9mIHkpYi5wdXNoKFt7Li4ucCxvcHRpb25zOnsuLi5wLm9wdGlvbnMsLi4ud319LGtdKX1lbHNlIGlmKGY9PT0iREVGQVVMVCJ8fGY9PT0iLURFRkFVTFQiKXtsZXQgdj1oLFt5LHddPVFvKHYsZS5wb3N0Q3NzTm9kZUNhY2hlKTtmb3IobGV0IGsgb2YgeSliLnB1c2goW3suLi5wLG9wdGlvbnM6ey4uLnAub3B0aW9ucywuLi53fX0sa10pfWlmKGIubGVuZ3RoPjApe2xldCB2PUFycmF5LmZyb20odGEocC5vcHRpb25zPy50eXBlcz8/W10sZixwLm9wdGlvbnM/P3t9LGUudGFpbHdpbmRDb25maWcpKS5tYXAoKFt5LHddKT0+dyk7di5sZW5ndGg+MCYmbC5zZXQoYix2KSxvLnB1c2goYil9fWlmKEtvKGYpKXtpZihvLmxlbmd0aD4xKXtsZXQgYj1mdW5jdGlvbih5KXtyZXR1cm4geS5sZW5ndGg9PT0xP3lbMF06eS5maW5kKHc9PntsZXQgaz1sLmdldCh3KTtyZXR1cm4gdy5zb21lKChbe29wdGlvbnM6U30sRV0pPT5FaChFKT9TLnR5cGVzLnNvbWUoKHt0eXBlOlQscHJlZmVyT25Db25mbGljdDpCfSk9PmsuaW5jbHVkZXMoVCkmJkIpOiExKX0pfSxbcCxoXT1vLnJlZHVjZSgoeSx3KT0+KHcuc29tZSgoW3tvcHRpb25zOlN9XSk9PlMudHlwZXMuc29tZSgoe3R5cGU6RX0pPT5FPT09ImFueSIpKT95WzBdLnB1c2godyk6eVsxXS5wdXNoKHcpLHkpLFtbXSxbXV0pLHY9YihoKT8/YihwKTtpZih2KW89W3ZdO2Vsc2V7bGV0IHk9by5tYXAoaz0+bmV3IFNldChbLi4ubC5nZXQoayk/P1tdXSkpO2ZvcihsZXQgayBvZiB5KWZvcihsZXQgUyBvZiBrKXtsZXQgRT0hMTtmb3IobGV0IFQgb2YgeSlrIT09VCYmVC5oYXMoUykmJihULmRlbGV0ZShTKSxFPSEwKTtFJiZrLmRlbGV0ZShTKX1sZXQgdz1bXTtmb3IobGV0W2ssU11vZiB5LmVudHJpZXMoKSlmb3IobGV0IEUgb2YgUyl7bGV0IFQ9b1trXS5tYXAoKFssQl0pPT5CKS5mbGF0KCkubWFwKEI9PkIudG9TdHJpbmcoKS5zcGxpdChgCmApLnNsaWNlKDEsLTEpLm1hcChOPT5OLnRyaW0oKSkubWFwKE49PmAgICAgICAke059YCkuam9pbihgCmApKS5qb2luKGAKCmApO3cucHVzaChgICBVc2UgXGAke3IucmVwbGFjZSgiWyIsYFske0V9OmApfVxgIGZvciBcYCR7VC50cmltKCl9XGBgKTticmVha31HLndhcm4oW2BUaGUgY2xhc3MgXGAke3J9XGAgaXMgYW1iaWd1b3VzIGFuZCBtYXRjaGVzIG11bHRpcGxlIHV0aWxpdGllcy5gLC4uLncsYElmIHRoaXMgaXMgY29udGVudCBhbmQgbm90IGEgY2xhc3MsIHJlcGxhY2UgaXQgd2l0aCBcYCR7ci5yZXBsYWNlKCJbIiwiJmxzcWI7IikucmVwbGFjZSgiXSIsIiZyc3FiOyIpfVxgIHRvIHNpbGVuY2UgdGhpcyB3YXJuaW5nLmBdKTtjb250aW51ZX19bz1vLm1hcChwPT5wLmZpbHRlcihoPT5FaChoWzFdKSkpfW89by5mbGF0KCksbz1BcnJheS5mcm9tKFBfKG8saSkpLG89a18obyxlKSxzJiYobz1TXyhvLGkpKTtmb3IobGV0IHAgb2YgbilvPUFfKHAsbyxlKTtmb3IobGV0IHAgb2YgbylwWzFdLnJhd3MudGFpbHdpbmQ9ey4uLnBbMV0ucmF3cy50YWlsd2luZCxjYW5kaWRhdGU6cn0scD1JXyhwLHtjb250ZXh0OmUsY2FuZGlkYXRlOnJ9KSxwIT09bnVsbCYmKHlpZWxkIHApfX1mdW5jdGlvbiBJXyhyLHtjb250ZXh0OmUsY2FuZGlkYXRlOnR9KXtpZighclswXS5jb2xsZWN0ZWRGb3JtYXRzKXJldHVybiByO2xldCBpPSEwLG47dHJ5e249ZHIoclswXS5jb2xsZWN0ZWRGb3JtYXRzLHtjb250ZXh0OmUsY2FuZGlkYXRlOnR9KX1jYXRjaHtyZXR1cm4gbnVsbH1sZXQgcz1lZS5yb290KHtub2RlczpbclsxXS5jbG9uZSgpXX0pO3JldHVybiBzLndhbGtSdWxlcyhhPT57aWYoIXNzKGEpKXRyeXtsZXQgbz1ycyhhLnNlbGVjdG9yLG4se2NhbmRpZGF0ZTp0LGNvbnRleHQ6ZX0pO2lmKG89PT1udWxsKXthLnJlbW92ZSgpO3JldHVybn1hLnNlbGVjdG9yPW99Y2F0Y2h7cmV0dXJuIGk9ITEsITF9fSksIWl8fHMubm9kZXMubGVuZ3RoPT09MD9udWxsOihyWzFdPXMubm9kZXNbMF0scil9ZnVuY3Rpb24gc3Mocil7cmV0dXJuIHIucGFyZW50JiZyLnBhcmVudC50eXBlPT09ImF0cnVsZSImJnIucGFyZW50Lm5hbWU9PT0ia2V5ZnJhbWVzIn1mdW5jdGlvbiBEXyhyKXtpZihyPT09ITApcmV0dXJuIGU9PntzcyhlKXx8ZS53YWxrRGVjbHModD0+e3QucGFyZW50LnR5cGU9PT0icnVsZSImJiFzcyh0LnBhcmVudCkmJih0LmltcG9ydGFudD0hMCl9KX07aWYodHlwZW9mIHI9PSJzdHJpbmciKXJldHVybiBlPT57c3MoZSl8fChlLnNlbGVjdG9ycz1lLnNlbGVjdG9ycy5tYXAodD0+aXModCxyKSkpfX1mdW5jdGlvbiBhcyhyLGUsdD0hMSl7bGV0IGk9W10sbj1EXyhlLnRhaWx3aW5kQ29uZmlnLmltcG9ydGFudCk7Zm9yKGxldCBzIG9mIHIpe2lmKGUubm90Q2xhc3NDYWNoZS5oYXMocykpY29udGludWU7aWYoZS5jYW5kaWRhdGVSdWxlQ2FjaGUuaGFzKHMpKXtpPWkuY29uY2F0KEFycmF5LmZyb20oZS5jYW5kaWRhdGVSdWxlQ2FjaGUuZ2V0KHMpKSk7Y29udGludWV9bGV0IGE9QXJyYXkuZnJvbShZbyhzLGUpKTtpZihhLmxlbmd0aD09PTApe2Uubm90Q2xhc3NDYWNoZS5hZGQocyk7Y29udGludWV9ZS5jbGFzc0NhY2hlLnNldChzLGEpO2xldCBvPWUuY2FuZGlkYXRlUnVsZUNhY2hlLmdldChzKT8/bmV3IFNldDtlLmNhbmRpZGF0ZVJ1bGVDYWNoZS5zZXQocyxvKTtmb3IobGV0IGwgb2YgYSl7bGV0W3tzb3J0OmMsb3B0aW9uczpmfSxkXT1sO2lmKGYucmVzcGVjdEltcG9ydGFudCYmbil7bGV0IGg9ZWUucm9vdCh7bm9kZXM6W2QuY2xvbmUoKV19KTtoLndhbGtSdWxlcyhuKSxkPWgubm9kZXNbMF19bGV0IHA9W2MsdD9kLmNsb25lKCk6ZF07by5hZGQocCksZS5ydWxlQ2FjaGUuYWRkKHApLGkucHVzaChwKX19cmV0dXJuIGl9ZnVuY3Rpb24gS28ocil7cmV0dXJuIHIuc3RhcnRzV2l0aCgiWyIpJiZyLmVuZHNXaXRoKCJdIil9dmFyIG5zLHZfLENfLG9zPVAoKCk9Pnt1KCk7T3QoKTtucz1wZShpdCgpKTtxbygpO0t0KCk7R24oKTtGcigpO0JlKCk7SXQoKTtWbygpO0xvKCk7QnIoKTtPaSgpO0JvKCk7enQoKTtjdCgpO1dvKCk7dl89KDAsbnMuZGVmYXVsdCkocj0+ci5maXJzdC5maWx0ZXIoKHt0eXBlOmV9KT0+ZT09PSJjbGFzcyIpLnBvcCgpLnZhbHVlKTtDXz0vXlthLXpfLV0vfSk7dmFyIFRoLFJoPVAoKCk9Pnt1KCk7VGg9e319KTtmdW5jdGlvbiBxXyhyKXt0cnl7cmV0dXJuIFRoLmNyZWF0ZUhhc2goIm1kNSIpLnVwZGF0ZShyLCJ1dGYtOCIpLmRpZ2VzdCgiYmluYXJ5Iil9Y2F0Y2goZSl7cmV0dXJuIiJ9fWZ1bmN0aW9uIFBoKHIsZSl7bGV0IHQ9ZS50b1N0cmluZygpO2lmKCF0LmluY2x1ZGVzKCJAdGFpbHdpbmQiKSlyZXR1cm4hMTtsZXQgaT1Oby5nZXQociksbj1xXyh0KSxzPWkhPT1uO3JldHVybiBOby5zZXQocixuKSxzfXZhciBJaD1QKCgpPT57dSgpO1JoKCk7SXQoKX0pO2Z1bmN0aW9uIHVzKHIpe3JldHVybihyPjBuKS0ocjwwbil9dmFyIERoPVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiBxaChyLGUpe2xldCB0PTBuLGk9MG47Zm9yKGxldFtuLHNdb2YgZSlyJm4mJih0PXR8bixpPWl8cyk7cmV0dXJuIHImfnR8aX12YXIgJGg9UCgoKT0+e3UoKX0pO2Z1bmN0aW9uIExoKHIpe2xldCBlPW51bGw7Zm9yKGxldCB0IG9mIHIpZT1lPz90LGU9ZT50P2U6dDtyZXR1cm4gZX1mdW5jdGlvbiAkXyhyLGUpe2xldCB0PXIubGVuZ3RoLGk9ZS5sZW5ndGgsbj10PGk/dDppO2ZvcihsZXQgcz0wO3M8bjtzKyspe2xldCBhPXIuY2hhckNvZGVBdChzKS1lLmNoYXJDb2RlQXQocyk7aWYoYSE9PTApcmV0dXJuIGF9cmV0dXJuIHQtaX12YXIgWG8sTWg9UCgoKT0+e3UoKTtEaCgpOyRoKCk7WG89Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm9mZnNldHM9e2RlZmF1bHRzOjBuLGJhc2U6MG4sY29tcG9uZW50czowbix1dGlsaXRpZXM6MG4sdmFyaWFudHM6MG4sdXNlcjowbn0sdGhpcy5sYXllclBvc2l0aW9ucz17ZGVmYXVsdHM6MG4sYmFzZToxbixjb21wb25lbnRzOjJuLHV0aWxpdGllczozbix1c2VyOjRuLHZhcmlhbnRzOjVufSx0aGlzLnJlc2VydmVkVmFyaWFudEJpdHM9MG4sdGhpcy52YXJpYW50T2Zmc2V0cz1uZXcgTWFwfWNyZWF0ZShlKXtyZXR1cm57bGF5ZXI6ZSxwYXJlbnRMYXllcjplLGFyYml0cmFyeTowbix2YXJpYW50czowbixwYXJhbGxlbEluZGV4OjBuLGluZGV4OnRoaXMub2Zmc2V0c1tlXSsrLHByb3BlcnR5T2Zmc2V0OjBuLHByb3BlcnR5OiIiLG9wdGlvbnM6W119fWFyYml0cmFyeVByb3BlcnR5KGUpe3JldHVybnsuLi50aGlzLmNyZWF0ZSgidXRpbGl0aWVzIiksYXJiaXRyYXJ5OjFuLHByb3BlcnR5OmV9fWZvclZhcmlhbnQoZSx0PTApe2xldCBpPXRoaXMudmFyaWFudE9mZnNldHMuZ2V0KGUpO2lmKGk9PT12b2lkIDApdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBvZmZzZXQgZm9yIHVua25vd24gdmFyaWFudCAke2V9YCk7cmV0dXJuey4uLnRoaXMuY3JlYXRlKCJ2YXJpYW50cyIpLHZhcmlhbnRzOmk8PEJpZ0ludCh0KX19YXBwbHlWYXJpYW50T2Zmc2V0KGUsdCxpKXtyZXR1cm4gaS52YXJpYW50PXQudmFyaWFudHMsey4uLmUsbGF5ZXI6InZhcmlhbnRzIixwYXJlbnRMYXllcjplLmxheWVyPT09InZhcmlhbnRzIj9lLnBhcmVudExheWVyOmUubGF5ZXIsdmFyaWFudHM6ZS52YXJpYW50c3x0LnZhcmlhbnRzLG9wdGlvbnM6aS5zb3J0P1tdLmNvbmNhdChpLGUub3B0aW9ucyk6ZS5vcHRpb25zLHBhcmFsbGVsSW5kZXg6TGgoW2UucGFyYWxsZWxJbmRleCx0LnBhcmFsbGVsSW5kZXhdKX19YXBwbHlQYXJhbGxlbE9mZnNldChlLHQpe3JldHVybnsuLi5lLHBhcmFsbGVsSW5kZXg6QmlnSW50KHQpfX1yZWNvcmRWYXJpYW50cyhlLHQpe2ZvcihsZXQgaSBvZiBlKXRoaXMucmVjb3JkVmFyaWFudChpLHQoaSkpfXJlY29yZFZhcmlhbnQoZSx0PTEpe3JldHVybiB0aGlzLnZhcmlhbnRPZmZzZXRzLnNldChlLDFuPDx0aGlzLnJlc2VydmVkVmFyaWFudEJpdHMpLHRoaXMucmVzZXJ2ZWRWYXJpYW50Qml0cys9QmlnSW50KHQpLHsuLi50aGlzLmNyZWF0ZSgidmFyaWFudHMiKSx2YXJpYW50czp0aGlzLnZhcmlhbnRPZmZzZXRzLmdldChlKX19Y29tcGFyZShlLHQpe2lmKGUubGF5ZXIhPT10LmxheWVyKXJldHVybiB0aGlzLmxheWVyUG9zaXRpb25zW2UubGF5ZXJdLXRoaXMubGF5ZXJQb3NpdGlvbnNbdC5sYXllcl07aWYoZS5wYXJlbnRMYXllciE9PXQucGFyZW50TGF5ZXIpcmV0dXJuIHRoaXMubGF5ZXJQb3NpdGlvbnNbZS5wYXJlbnRMYXllcl0tdGhpcy5sYXllclBvc2l0aW9uc1t0LnBhcmVudExheWVyXTtmb3IobGV0IGkgb2YgZS5vcHRpb25zKWZvcihsZXQgbiBvZiB0Lm9wdGlvbnMpe2lmKGkuaWQhPT1uLmlkfHwhaS5zb3J0fHwhbi5zb3J0KWNvbnRpbnVlO2xldCBzPUxoKFtpLnZhcmlhbnQsbi52YXJpYW50XSk/PzBuLGE9fihzfHMtMW4pLG89ZS52YXJpYW50cyZhLGw9dC52YXJpYW50cyZhO2lmKG8hPT1sKWNvbnRpbnVlO2xldCBjPWkuc29ydCh7dmFsdWU6aS52YWx1ZSxtb2RpZmllcjppLm1vZGlmaWVyfSx7dmFsdWU6bi52YWx1ZSxtb2RpZmllcjpuLm1vZGlmaWVyfSk7aWYoYyE9PTApcmV0dXJuIGN9cmV0dXJuIGUudmFyaWFudHMhPT10LnZhcmlhbnRzP2UudmFyaWFudHMtdC52YXJpYW50czplLnBhcmFsbGVsSW5kZXghPT10LnBhcmFsbGVsSW5kZXg/ZS5wYXJhbGxlbEluZGV4LXQucGFyYWxsZWxJbmRleDplLmFyYml0cmFyeSE9PXQuYXJiaXRyYXJ5P2UuYXJiaXRyYXJ5LXQuYXJiaXRyYXJ5OmUucHJvcGVydHlPZmZzZXQhPT10LnByb3BlcnR5T2Zmc2V0P2UucHJvcGVydHlPZmZzZXQtdC5wcm9wZXJ0eU9mZnNldDplLmluZGV4LXQuaW5kZXh9cmVjYWxjdWxhdGVWYXJpYW50T2Zmc2V0cygpe2xldCBlPUFycmF5LmZyb20odGhpcy52YXJpYW50T2Zmc2V0cy5lbnRyaWVzKCkpLmZpbHRlcigoW25dKT0+bi5zdGFydHNXaXRoKCJbIikpLnNvcnQoKFtuXSxbc10pPT4kXyhuLHMpKSx0PWUubWFwKChbLG5dKT0+bikuc29ydCgobixzKT0+dXMobi1zKSk7cmV0dXJuIGUubWFwKChbLG5dLHMpPT5bbix0W3NdXSkuZmlsdGVyKChbbixzXSk9Pm4hPT1zKX1yZW1hcEFyYml0cmFyeVZhcmlhbnRPZmZzZXRzKGUpe2xldCB0PXRoaXMucmVjYWxjdWxhdGVWYXJpYW50T2Zmc2V0cygpO3JldHVybiB0Lmxlbmd0aD09PTA/ZTplLm1hcChpPT57bGV0W24sc109aTtyZXR1cm4gbj17Li4ubix2YXJpYW50czpxaChuLnZhcmlhbnRzLHQpfSxbbixzXX0pfXNvcnRBcmJpdHJhcnlQcm9wZXJ0aWVzKGUpe2xldCB0PW5ldyBTZXQ7Zm9yKGxldFthXW9mIGUpYS5hcmJpdHJhcnk9PT0xbiYmdC5hZGQoYS5wcm9wZXJ0eSk7aWYodC5zaXplPT09MClyZXR1cm4gZTtsZXQgaT1BcnJheS5mcm9tKHQpLnNvcnQoKSxuPW5ldyBNYXAscz0xbjtmb3IobGV0IGEgb2YgaSluLnNldChhLHMrKyk7cmV0dXJuIGUubWFwKGE9PntsZXRbbyxsXT1hO3JldHVybiBvPXsuLi5vLHByb3BlcnR5T2Zmc2V0Om4uZ2V0KG8ucHJvcGVydHkpPz8wbn0sW28sbF19KX1zb3J0KGUpe3JldHVybiBlPXRoaXMucmVtYXBBcmJpdHJhcnlWYXJpYW50T2Zmc2V0cyhlKSxlPXRoaXMuc29ydEFyYml0cmFyeVByb3BlcnRpZXMoZSksZS5zb3J0KChbdF0sW2ldKT0+dXModGhpcy5jb21wYXJlKHQsaSkpKX19fSk7ZnVuY3Rpb24gdGwocixlKXtsZXQgdD1yLnRhaWx3aW5kQ29uZmlnLnByZWZpeDtyZXR1cm4gdHlwZW9mIHQ9PSJmdW5jdGlvbiI/dChlKTp0K2V9ZnVuY3Rpb24gQmgoe3R5cGU6cj0iYW55IiwuLi5lfSl7bGV0IHQ9W10uY29uY2F0KHIpO3JldHVybnsuLi5lLHR5cGVzOnQubWFwKGk9PkFycmF5LmlzQXJyYXkoaSk/e3R5cGU6aVswXSwuLi5pWzFdfTp7dHlwZTppLHByZWZlck9uQ29uZmxpY3Q6ITF9KX19ZnVuY3Rpb24gTF8ocil7bGV0IGU9W10sdD0iIixpPTA7Zm9yKGxldCBuPTA7bjxyLmxlbmd0aDtuKyspe2xldCBzPXJbbl07aWYocz09PSJcXCIpdCs9IlxcIityWysrbl07ZWxzZSBpZihzPT09InsiKSsraSxlLnB1c2godC50cmltKCkpLHQ9IiI7ZWxzZSBpZihzPT09In0iKXtpZigtLWk8MCl0aHJvdyBuZXcgRXJyb3IoIllvdXIgeyBhbmQgfSBhcmUgdW5iYWxhbmNlZC4iKTtlLnB1c2godC50cmltKCkpLHQ9IiJ9ZWxzZSB0Kz1zfXJldHVybiB0Lmxlbmd0aD4wJiZlLnB1c2godC50cmltKCkpLGU9ZS5maWx0ZXIobj0+biE9PSIiKSxlfWZ1bmN0aW9uIE1fKHIsZSx7YmVmb3JlOnQ9W119PXt9KXtpZih0PVtdLmNvbmNhdCh0KSx0Lmxlbmd0aDw9MCl7ci5wdXNoKGUpO3JldHVybn1sZXQgaT1yLmxlbmd0aC0xO2ZvcihsZXQgbiBvZiB0KXtsZXQgcz1yLmluZGV4T2Yobik7cyE9PS0xJiYoaT1NYXRoLm1pbihpLHMpKX1yLnNwbGljZShpLDAsZSl9ZnVuY3Rpb24gRmgocil7cmV0dXJuIEFycmF5LmlzQXJyYXkocik/ci5mbGF0TWFwKGU9PiFBcnJheS5pc0FycmF5KGUpJiYha2UoZSk/ZTpscihlKSk6RmgoW3JdKX1mdW5jdGlvbiBOXyhyLGUpe3JldHVybigwLFpvLmRlZmF1bHQpKGk9PntsZXQgbj1bXTtyZXR1cm4gZSYmZShpKSxpLndhbGtDbGFzc2VzKHM9PntuLnB1c2gocy52YWx1ZSl9KSxufSkudHJhbnNmb3JtU3luYyhyKX1mdW5jdGlvbiBCXyhyKXtyLndhbGtQc2V1ZG9zKGU9PntlLnZhbHVlPT09Ijpub3QiJiZlLnJlbW92ZSgpfSl9ZnVuY3Rpb24gRl8ocixlPXtjb250YWluc05vbk9uRGVtYW5kYWJsZTohMX0sdD0wKXtsZXQgaT1bXSxuPVtdO3IudHlwZT09PSJydWxlIj9uLnB1c2goLi4uci5zZWxlY3RvcnMpOnIudHlwZT09PSJhdHJ1bGUiJiZyLndhbGtSdWxlcyhzPT5uLnB1c2goLi4ucy5zZWxlY3RvcnMpKTtmb3IobGV0IHMgb2Ygbil7bGV0IGE9Tl8ocyxCXyk7YS5sZW5ndGg9PT0wJiYoZS5jb250YWluc05vbk9uRGVtYW5kYWJsZT0hMCk7Zm9yKGxldCBvIG9mIGEpaS5wdXNoKG8pfXJldHVybiB0PT09MD9bZS5jb250YWluc05vbk9uRGVtYW5kYWJsZXx8aS5sZW5ndGg9PT0wLGldOml9ZnVuY3Rpb24gZnMocil7cmV0dXJuIEZoKHIpLmZsYXRNYXAoZT0+e2xldCB0PW5ldyBNYXAsW2ksbl09Rl8oZSk7cmV0dXJuIGkmJm4udW5zaGlmdChndCksbi5tYXAocz0+KHQuaGFzKGUpfHx0LnNldChlLGUpLFtzLHQuZ2V0KGUpXSkpfSl9ZnVuY3Rpb24gbHMocil7cmV0dXJuIHIuc3RhcnRzV2l0aCgiQCIpfHxyLmluY2x1ZGVzKCImIil9ZnVuY3Rpb24gUmkocil7cj1yLnJlcGxhY2UoL1xuKy9nLCIiKS5yZXBsYWNlKC9cc3sxLH0vZywiICIpLnRyaW0oKTtsZXQgZT1MXyhyKS5tYXAodD0+e2lmKCF0LnN0YXJ0c1dpdGgoIkAiKSlyZXR1cm4oe2Zvcm1hdDpzfSk9PnModCk7bGV0WyxpLG5dPS9AKFxTKikoIC4rfFsoe10uKik/L2cuZXhlYyh0KTtyZXR1cm4oe3dyYXA6c30pPT5zKGVlLmF0UnVsZSh7bmFtZTppLHBhcmFtczpuPy50cmltKCk/PyIifSkpfSkucmV2ZXJzZSgpO3JldHVybiB0PT57Zm9yKGxldCBpIG9mIGUpaSh0KX19ZnVuY3Rpb24gal8ocixlLHt2YXJpYW50TGlzdDp0LHZhcmlhbnRNYXA6aSxvZmZzZXRzOm4sY2xhc3NMaXN0OnN9KXtmdW5jdGlvbiBhKHAsaCl7cmV0dXJuIHA/KDAsTmguZGVmYXVsdCkocixwLGgpOnJ9ZnVuY3Rpb24gbyhwKXtyZXR1cm4gdXIoci5wcmVmaXgscCl9ZnVuY3Rpb24gbChwLGgpe3JldHVybiBwPT09Z3Q/Z3Q6aC5yZXNwZWN0UHJlZml4P2UudGFpbHdpbmRDb25maWcucHJlZml4K3A6cH1mdW5jdGlvbiBjKHAsaCxiPXt9KXtsZXQgdj1rdChwKSx5PWEoWyJ0aGVtZSIsLi4udl0saCk7cmV0dXJuIG10KHZbMF0pKHksYil9bGV0IGY9MCxkPXtwb3N0Y3NzOmVlLHByZWZpeDpvLGU6VGUsY29uZmlnOmEsdGhlbWU6Yyxjb3JlUGx1Z2luczpwPT5BcnJheS5pc0FycmF5KHIuY29yZVBsdWdpbnMpP3IuY29yZVBsdWdpbnMuaW5jbHVkZXMocCk6YShbImNvcmVQbHVnaW5zIixwXSwhMCksdmFyaWFudHM6KCk9PltdLGFkZEJhc2UocCl7Zm9yKGxldFtoLGJdb2YgZnMocCkpe2xldCB2PWwoaCx7fSkseT1uLmNyZWF0ZSgiYmFzZSIpO2UuY2FuZGlkYXRlUnVsZU1hcC5oYXModil8fGUuY2FuZGlkYXRlUnVsZU1hcC5zZXQodixbXSksZS5jYW5kaWRhdGVSdWxlTWFwLmdldCh2KS5wdXNoKFt7c29ydDp5LGxheWVyOiJiYXNlIn0sYl0pfX0sYWRkRGVmYXVsdHMocCxoKXtsZXQgYj17W2BAZGVmYXVsdHMgJHtwfWBdOmh9O2ZvcihsZXRbdix5XW9mIGZzKGIpKXtsZXQgdz1sKHYse30pO2UuY2FuZGlkYXRlUnVsZU1hcC5oYXModyl8fGUuY2FuZGlkYXRlUnVsZU1hcC5zZXQodyxbXSksZS5jYW5kaWRhdGVSdWxlTWFwLmdldCh3KS5wdXNoKFt7c29ydDpuLmNyZWF0ZSgiZGVmYXVsdHMiKSxsYXllcjoiZGVmYXVsdHMifSx5XSl9fSxhZGRDb21wb25lbnRzKHAsaCl7aD1PYmplY3QuYXNzaWduKHt9LHtwcmVzZXJ2ZVNvdXJjZTohMSxyZXNwZWN0UHJlZml4OiEwLHJlc3BlY3RJbXBvcnRhbnQ6ITF9LEFycmF5LmlzQXJyYXkoaCk/e306aCk7Zm9yKGxldFt2LHldb2YgZnMocCkpe2xldCB3PWwodixoKTtzLmFkZCh3KSxlLmNhbmRpZGF0ZVJ1bGVNYXAuaGFzKHcpfHxlLmNhbmRpZGF0ZVJ1bGVNYXAuc2V0KHcsW10pLGUuY2FuZGlkYXRlUnVsZU1hcC5nZXQodykucHVzaChbe3NvcnQ6bi5jcmVhdGUoImNvbXBvbmVudHMiKSxsYXllcjoiY29tcG9uZW50cyIsb3B0aW9uczpofSx5XSl9fSxhZGRVdGlsaXRpZXMocCxoKXtoPU9iamVjdC5hc3NpZ24oe30se3ByZXNlcnZlU291cmNlOiExLHJlc3BlY3RQcmVmaXg6ITAscmVzcGVjdEltcG9ydGFudDohMH0sQXJyYXkuaXNBcnJheShoKT97fTpoKTtmb3IobGV0W3YseV1vZiBmcyhwKSl7bGV0IHc9bCh2LGgpO3MuYWRkKHcpLGUuY2FuZGlkYXRlUnVsZU1hcC5oYXModyl8fGUuY2FuZGlkYXRlUnVsZU1hcC5zZXQodyxbXSksZS5jYW5kaWRhdGVSdWxlTWFwLmdldCh3KS5wdXNoKFt7c29ydDpuLmNyZWF0ZSgidXRpbGl0aWVzIiksbGF5ZXI6InV0aWxpdGllcyIsb3B0aW9uczpofSx5XSl9fSxtYXRjaFV0aWxpdGllczpmdW5jdGlvbihwLGgpe2g9Qmgoey4uLntyZXNwZWN0UHJlZml4OiEwLHJlc3BlY3RJbXBvcnRhbnQ6ITAsbW9kaWZpZXJzOiExfSwuLi5ofSk7bGV0IHY9bi5jcmVhdGUoInV0aWxpdGllcyIpO2ZvcihsZXQgeSBpbiBwKXtsZXQgUz1mdW5jdGlvbihULHtpc09ubHlQbHVnaW46Qn0pe2xldFtOLFIsRl09ZWEoaC50eXBlcyxULGgscik7aWYoTj09PXZvaWQgMClyZXR1cm5bXTtpZighaC50eXBlcy5zb21lKCh7dHlwZTpVfSk9PlU9PT1SKSlpZihCKUcud2FybihbYFVubmVjZXNzYXJ5IHR5cGVoaW50IFxgJHtSfVxgIGluIFxgJHt5fS0ke1R9XGAuYCxgWW91IGNhbiBzYWZlbHkgdXBkYXRlIGl0IHRvIFxgJHt5fS0ke1QucmVwbGFjZShSKyI6IiwiIil9XGAuYF0pO2Vsc2UgcmV0dXJuW107aWYoIWNyKE4pKXJldHVybltdO2xldCBZPXtnZXQgbW9kaWZpZXIoKXtyZXR1cm4gaC5tb2RpZmllcnN8fEcud2FybihgbW9kaWZpZXItdXNlZC13aXRob3V0LW9wdGlvbnMtZm9yLSR7eX1gLFsiWW91ciBwbHVnaW4gbXVzdCBzZXQgYG1vZGlmaWVyczogdHJ1ZWAgaW4gaXRzIG9wdGlvbnMgdG8gc3VwcG9ydCBtb2RpZmllcnMuIl0pLEZ9fSxfPXdlKHIsImdlbmVyYWxpemVkTW9kaWZpZXJzIik7cmV0dXJuW10uY29uY2F0KF8/ayhOLFkpOmsoTikpLmZpbHRlcihCb29sZWFuKS5tYXAoVT0+KHtbUW4oeSxUKV06VX0pKX0sdz1sKHksaCksaz1wW3ldO3MuYWRkKFt3LGhdKTtsZXQgRT1be3NvcnQ6dixsYXllcjoidXRpbGl0aWVzIixvcHRpb25zOmh9LFNdO2UuY2FuZGlkYXRlUnVsZU1hcC5oYXModyl8fGUuY2FuZGlkYXRlUnVsZU1hcC5zZXQodyxbXSksZS5jYW5kaWRhdGVSdWxlTWFwLmdldCh3KS5wdXNoKEUpfX0sbWF0Y2hDb21wb25lbnRzOmZ1bmN0aW9uKHAsaCl7aD1CaCh7Li4ue3Jlc3BlY3RQcmVmaXg6ITAscmVzcGVjdEltcG9ydGFudDohMSxtb2RpZmllcnM6ITF9LC4uLmh9KTtsZXQgdj1uLmNyZWF0ZSgiY29tcG9uZW50cyIpO2ZvcihsZXQgeSBpbiBwKXtsZXQgUz1mdW5jdGlvbihULHtpc09ubHlQbHVnaW46Qn0pe2xldFtOLFIsRl09ZWEoaC50eXBlcyxULGgscik7aWYoTj09PXZvaWQgMClyZXR1cm5bXTtpZighaC50eXBlcy5zb21lKCh7dHlwZTpVfSk9PlU9PT1SKSlpZihCKUcud2FybihbYFVubmVjZXNzYXJ5IHR5cGVoaW50IFxgJHtSfVxgIGluIFxgJHt5fS0ke1R9XGAuYCxgWW91IGNhbiBzYWZlbHkgdXBkYXRlIGl0IHRvIFxgJHt5fS0ke1QucmVwbGFjZShSKyI6IiwiIil9XGAuYF0pO2Vsc2UgcmV0dXJuW107aWYoIWNyKE4pKXJldHVybltdO2xldCBZPXtnZXQgbW9kaWZpZXIoKXtyZXR1cm4gaC5tb2RpZmllcnN8fEcud2FybihgbW9kaWZpZXItdXNlZC13aXRob3V0LW9wdGlvbnMtZm9yLSR7eX1gLFsiWW91ciBwbHVnaW4gbXVzdCBzZXQgYG1vZGlmaWVyczogdHJ1ZWAgaW4gaXRzIG9wdGlvbnMgdG8gc3VwcG9ydCBtb2RpZmllcnMuIl0pLEZ9fSxfPXdlKHIsImdlbmVyYWxpemVkTW9kaWZpZXJzIik7cmV0dXJuW10uY29uY2F0KF8/ayhOLFkpOmsoTikpLmZpbHRlcihCb29sZWFuKS5tYXAoVT0+KHtbUW4oeSxUKV06VX0pKX0sdz1sKHksaCksaz1wW3ldO3MuYWRkKFt3LGhdKTtsZXQgRT1be3NvcnQ6dixsYXllcjoiY29tcG9uZW50cyIsb3B0aW9uczpofSxTXTtlLmNhbmRpZGF0ZVJ1bGVNYXAuaGFzKHcpfHxlLmNhbmRpZGF0ZVJ1bGVNYXAuc2V0KHcsW10pLGUuY2FuZGlkYXRlUnVsZU1hcC5nZXQodykucHVzaChFKX19LGFkZFZhcmlhbnQocCxoLGI9e30pe2g9W10uY29uY2F0KGgpLm1hcCh2PT57aWYodHlwZW9mIHYhPSJzdHJpbmciKXJldHVybih5PXt9KT0+e2xldHthcmdzOncsbW9kaWZ5U2VsZWN0b3JzOmssY29udGFpbmVyOlMsc2VwYXJhdG9yOkUsd3JhcDpULGZvcm1hdDpCfT15LE49dihPYmplY3QuYXNzaWduKHttb2RpZnlTZWxlY3RvcnM6ayxjb250YWluZXI6UyxzZXBhcmF0b3I6RX0sYi50eXBlPT09Sm8uTWF0Y2hWYXJpYW50JiZ7YXJnczp3LHdyYXA6VCxmb3JtYXQ6Qn0pKTtpZih0eXBlb2YgTj09InN0cmluZyImJiFscyhOKSl0aHJvdyBuZXcgRXJyb3IoYFlvdXIgY3VzdG9tIHZhcmlhbnQgXGAke3B9XGAgaGFzIGFuIGludmFsaWQgZm9ybWF0IHN0cmluZy4gTWFrZSBzdXJlIGl0J3MgYW4gYXQtcnVsZSBvciBjb250YWlucyBhIFxgJlxgIHBsYWNlaG9sZGVyLmApO3JldHVybiBBcnJheS5pc0FycmF5KE4pP04uZmlsdGVyKFI9PnR5cGVvZiBSPT0ic3RyaW5nIikubWFwKFI9PlJpKFIpKTpOJiZ0eXBlb2YgTj09InN0cmluZyImJlJpKE4pKHkpfTtpZighbHModikpdGhyb3cgbmV3IEVycm9yKGBZb3VyIGN1c3RvbSB2YXJpYW50IFxgJHtwfVxgIGhhcyBhbiBpbnZhbGlkIGZvcm1hdCBzdHJpbmcuIE1ha2Ugc3VyZSBpdCdzIGFuIGF0LXJ1bGUgb3IgY29udGFpbnMgYSBcYCZcYCBwbGFjZWhvbGRlci5gKTtyZXR1cm4gUmkodil9KSxNXyh0LHAsYiksaS5zZXQocCxoKSxlLnZhcmlhbnRPcHRpb25zLnNldChwLGIpfSxtYXRjaFZhcmlhbnQocCxoLGIpe2xldCB2PWI/LmlkPz8rK2YseT1wPT09IkAiLHc9d2UociwiZ2VuZXJhbGl6ZWRNb2RpZmllcnMiKTtmb3IobGV0W1MsRV1vZiBPYmplY3QuZW50cmllcyhiPy52YWx1ZXM/P3t9KSlTIT09IkRFRkFVTFQiJiZkLmFkZFZhcmlhbnQoeT9gJHtwfSR7U31gOmAke3B9LSR7U31gLCh7YXJnczpULGNvbnRhaW5lcjpCfSk9PmgoRSx3P3ttb2RpZmllcjpUPy5tb2RpZmllcixjb250YWluZXI6Qn06e2NvbnRhaW5lcjpCfSksey4uLmIsdmFsdWU6RSxpZDp2LHR5cGU6Sm8uTWF0Y2hWYXJpYW50LHZhcmlhbnRJbmZvOmVsLkJhc2V9KTtsZXQgaz0iREVGQVVMVCJpbihiPy52YWx1ZXM/P3t9KTtkLmFkZFZhcmlhbnQocCwoe2FyZ3M6Uyxjb250YWluZXI6RX0pPT5TPy52YWx1ZT09PVRpJiYhaz9udWxsOmgoUz8udmFsdWU9PT1UaT9iLnZhbHVlcy5ERUZBVUxUOlM/LnZhbHVlPz8odHlwZW9mIFM9PSJzdHJpbmciP1M6IiIpLHc/e21vZGlmaWVyOlM/Lm1vZGlmaWVyLGNvbnRhaW5lcjpFfTp7Y29udGFpbmVyOkV9KSx7Li4uYixpZDp2LHR5cGU6Sm8uTWF0Y2hWYXJpYW50LHZhcmlhbnRJbmZvOmVsLkR5bmFtaWN9KX19O3JldHVybiBkfWZ1bmN0aW9uIGNzKHIpe3JldHVybiBybC5oYXMocil8fHJsLnNldChyLG5ldyBNYXApLHJsLmdldChyKX1mdW5jdGlvbiBqaChyLGUpe2xldCB0PSExLGk9bmV3IE1hcDtmb3IobGV0IG4gb2Ygcil7aWYoIW4pY29udGludWU7bGV0IHM9b2EucGFyc2UobiksYT1zLmhhc2g/cy5ocmVmLnJlcGxhY2Uocy5oYXNoLCIiKTpzLmhyZWY7YT1zLnNlYXJjaD9hLnJlcGxhY2Uocy5zZWFyY2gsIiIpOmE7bGV0IG89YmUuc3RhdFN5bmMoZGVjb2RlVVJJQ29tcG9uZW50KGEpLHt0aHJvd0lmTm9FbnRyeTohMX0pPy5tdGltZU1zOyFvfHwoKCFlLmhhcyhuKXx8bz5lLmdldChuKSkmJih0PSEwKSxpLnNldChuLG8pKX1yZXR1cm5bdCxpXX1mdW5jdGlvbiB6aChyKXtyLndhbGtBdFJ1bGVzKGU9PntbInJlc3BvbnNpdmUiLCJ2YXJpYW50cyJdLmluY2x1ZGVzKGUubmFtZSkmJih6aChlKSxlLmJlZm9yZShlLm5vZGVzKSxlLnJlbW92ZSgpKX0pfWZ1bmN0aW9uIHpfKHIpe2xldCBlPVtdO3JldHVybiByLmVhY2godD0+e3QudHlwZT09PSJhdHJ1bGUiJiZbInJlc3BvbnNpdmUiLCJ2YXJpYW50cyJdLmluY2x1ZGVzKHQubmFtZSkmJih0Lm5hbWU9ImxheWVyIix0LnBhcmFtcz0idXRpbGl0aWVzIil9KSxyLndhbGtBdFJ1bGVzKCJsYXllciIsdD0+e2lmKHpoKHQpLHQucGFyYW1zPT09ImJhc2UiKXtmb3IobGV0IGkgb2YgdC5ub2RlcyllLnB1c2goZnVuY3Rpb24oe2FkZEJhc2U6bn0pe24oaSx7cmVzcGVjdFByZWZpeDohMX0pfSk7dC5yZW1vdmUoKX1lbHNlIGlmKHQucGFyYW1zPT09ImNvbXBvbmVudHMiKXtmb3IobGV0IGkgb2YgdC5ub2RlcyllLnB1c2goZnVuY3Rpb24oe2FkZENvbXBvbmVudHM6bn0pe24oaSx7cmVzcGVjdFByZWZpeDohMSxwcmVzZXJ2ZVNvdXJjZTohMH0pfSk7dC5yZW1vdmUoKX1lbHNlIGlmKHQucGFyYW1zPT09InV0aWxpdGllcyIpe2ZvcihsZXQgaSBvZiB0Lm5vZGVzKWUucHVzaChmdW5jdGlvbih7YWRkVXRpbGl0aWVzOm59KXtuKGkse3Jlc3BlY3RQcmVmaXg6ITEscHJlc2VydmVTb3VyY2U6ITB9KX0pO3QucmVtb3ZlKCl9fSksZX1mdW5jdGlvbiBVXyhyLGUpe2xldCB0PU9iamVjdC5lbnRyaWVzKHsuLi5zZSwuLi55aH0pLm1hcCgoW2wsY10pPT5yLnRhaWx3aW5kQ29uZmlnLmNvcmVQbHVnaW5zLmluY2x1ZGVzKGwpP2M6bnVsbCkuZmlsdGVyKEJvb2xlYW4pLGk9ci50YWlsd2luZENvbmZpZy5wbHVnaW5zLm1hcChsPT4obC5fX2lzT3B0aW9uc0Z1bmN0aW9uJiYobD1sKCkpLHR5cGVvZiBsPT0iZnVuY3Rpb24iP2w6bC5oYW5kbGVyKSksbj16XyhlKSxzPVtzZS5jaGlsZFZhcmlhbnQsc2UucHNldWRvRWxlbWVudFZhcmlhbnRzLHNlLnBzZXVkb0NsYXNzVmFyaWFudHMsc2UuaGFzVmFyaWFudHMsc2UuYXJpYVZhcmlhbnRzLHNlLmRhdGFWYXJpYW50c10sYT1bc2Uuc3VwcG9ydHNWYXJpYW50cyxzZS5yZWR1Y2VkTW90aW9uVmFyaWFudHMsc2UucHJlZmVyc0NvbnRyYXN0VmFyaWFudHMsc2Uuc2NyZWVuVmFyaWFudHMsc2Uub3JpZW50YXRpb25WYXJpYW50cyxzZS5kaXJlY3Rpb25WYXJpYW50cyxzZS5kYXJrVmFyaWFudHMsc2UuZm9yY2VkQ29sb3JzVmFyaWFudHMsc2UucHJpbnRWYXJpYW50XTtyZXR1cm4oci50YWlsd2luZENvbmZpZy5kYXJrTW9kZT09PSJjbGFzcyJ8fEFycmF5LmlzQXJyYXkoci50YWlsd2luZENvbmZpZy5kYXJrTW9kZSkmJnIudGFpbHdpbmRDb25maWcuZGFya01vZGVbMF09PT0iY2xhc3MiKSYmKGE9W3NlLnN1cHBvcnRzVmFyaWFudHMsc2UucmVkdWNlZE1vdGlvblZhcmlhbnRzLHNlLnByZWZlcnNDb250cmFzdFZhcmlhbnRzLHNlLmRhcmtWYXJpYW50cyxzZS5zY3JlZW5WYXJpYW50cyxzZS5vcmllbnRhdGlvblZhcmlhbnRzLHNlLmRpcmVjdGlvblZhcmlhbnRzLHNlLmZvcmNlZENvbG9yc1ZhcmlhbnRzLHNlLnByaW50VmFyaWFudF0pLFsuLi50LC4uLnMsLi4uaSwuLi5hLC4uLm5dfWZ1bmN0aW9uIFZfKHIsZSl7bGV0IHQ9W10saT1uZXcgTWFwO2UudmFyaWFudE1hcD1pO2xldCBuPW5ldyBYbztlLm9mZnNldHM9bjtsZXQgcz1uZXcgU2V0LGE9al8oZS50YWlsd2luZENvbmZpZyxlLHt2YXJpYW50TGlzdDp0LHZhcmlhbnRNYXA6aSxvZmZzZXRzOm4sY2xhc3NMaXN0OnN9KTtmb3IobGV0IGYgb2YgcilpZihBcnJheS5pc0FycmF5KGYpKWZvcihsZXQgZCBvZiBmKWQoYSk7ZWxzZSBmPy4oYSk7bi5yZWNvcmRWYXJpYW50cyh0LGY9PmkuZ2V0KGYpLmxlbmd0aCk7Zm9yKGxldFtmLGRdb2YgaS5lbnRyaWVzKCkpZS52YXJpYW50TWFwLnNldChmLGQubWFwKChwLGgpPT5bbi5mb3JWYXJpYW50KGYsaCkscF0pKTtsZXQgbz0oZS50YWlsd2luZENvbmZpZy5zYWZlbGlzdD8/W10pLmZpbHRlcihCb29sZWFuKTtpZihvLmxlbmd0aD4wKXtsZXQgZj1bXTtmb3IobGV0IGQgb2Ygbyl7aWYodHlwZW9mIGQ9PSJzdHJpbmciKXtlLmNoYW5nZWRDb250ZW50LnB1c2goe2NvbnRlbnQ6ZCxleHRlbnNpb246Imh0bWwifSk7Y29udGludWV9aWYoZCBpbnN0YW5jZW9mIFJlZ0V4cCl7Ry53YXJuKCJyb290LXJlZ2V4IixbIlJlZ3VsYXIgZXhwcmVzc2lvbnMgaW4gYHNhZmVsaXN0YCB3b3JrIGRpZmZlcmVudGx5IGluIFRhaWx3aW5kIENTUyB2My4wLiIsIlVwZGF0ZSB5b3VyIGBzYWZlbGlzdGAgY29uZmlndXJhdGlvbiB0byBlbGltaW5hdGUgdGhpcyB3YXJuaW5nLiIsImh0dHBzOi8vdGFpbHdpbmRjc3MuY29tL2RvY3MvY29udGVudC1jb25maWd1cmF0aW9uI3NhZmVsaXN0aW5nLWNsYXNzZXMiXSk7Y29udGludWV9Zi5wdXNoKGQpfWlmKGYubGVuZ3RoPjApe2xldCBkPW5ldyBNYXAscD1lLnRhaWx3aW5kQ29uZmlnLnByZWZpeC5sZW5ndGgsaD1mLnNvbWUoYj0+Yi5wYXR0ZXJuLnNvdXJjZS5pbmNsdWRlcygiISIpKTtmb3IobGV0IGIgb2Ygcyl7bGV0IHY9QXJyYXkuaXNBcnJheShiKT8oKCk9PntsZXRbeSx3XT1iLFM9T2JqZWN0LmtleXModz8udmFsdWVzPz97fSkubWFwKEU9PkVpKHksRSkpO3JldHVybiB3Py5zdXBwb3J0c05lZ2F0aXZlVmFsdWVzJiYoUz1bLi4uUywuLi5TLm1hcChFPT4iLSIrRSldLFM9Wy4uLlMsLi4uUy5tYXAoRT0+RS5zbGljZSgwLHApKyItIitFLnNsaWNlKHApKV0pLHcudHlwZXMuc29tZSgoe3R5cGU6RX0pPT5FPT09ImNvbG9yIikmJihTPVsuLi5TLC4uLlMuZmxhdE1hcChFPT5PYmplY3Qua2V5cyhlLnRhaWx3aW5kQ29uZmlnLnRoZW1lLm9wYWNpdHkpLm1hcChUPT5gJHtFfS8ke1R9YCkpXSksaCYmdz8ucmVzcGVjdEltcG9ydGFudCYmKFM9Wy4uLlMsLi4uUy5tYXAoRT0+IiEiK0UpXSksU30pKCk6W2JdO2ZvcihsZXQgeSBvZiB2KWZvcihsZXR7cGF0dGVybjp3LHZhcmlhbnRzOms9W119b2YgZilpZih3Lmxhc3RJbmRleD0wLGQuaGFzKHcpfHxkLnNldCh3LDApLCEhdy50ZXN0KHkpKXtkLnNldCh3LGQuZ2V0KHcpKzEpLGUuY2hhbmdlZENvbnRlbnQucHVzaCh7Y29udGVudDp5LGV4dGVuc2lvbjoiaHRtbCJ9KTtmb3IobGV0IFMgb2YgayllLmNoYW5nZWRDb250ZW50LnB1c2goe2NvbnRlbnQ6UytlLnRhaWx3aW5kQ29uZmlnLnNlcGFyYXRvcit5LGV4dGVuc2lvbjoiaHRtbCJ9KX19Zm9yKGxldFtiLHZdb2YgZC5lbnRyaWVzKCkpdj09PTAmJkcud2FybihbYFRoZSBzYWZlbGlzdCBwYXR0ZXJuIFxgJHtifVxgIGRvZXNuJ3QgbWF0Y2ggYW55IFRhaWx3aW5kIENTUyBjbGFzc2VzLmAsIkZpeCB0aGlzIHBhdHRlcm4gb3IgcmVtb3ZlIGl0IGZyb20geW91ciBgc2FmZWxpc3RgIGNvbmZpZ3VyYXRpb24uIiwiaHR0cHM6Ly90YWlsd2luZGNzcy5jb20vZG9jcy9jb250ZW50LWNvbmZpZ3VyYXRpb24jc2FmZWxpc3RpbmctY2xhc3NlcyJdKX19bGV0IGw9W10uY29uY2F0KGUudGFpbHdpbmRDb25maWcuZGFya01vZGU/PyJtZWRpYSIpWzFdPz8iZGFyayIsYz1bdGwoZSxsKSx0bChlLCJncm91cCIpLHRsKGUsInBlZXIiKV07ZS5nZXRDbGFzc09yZGVyPWZ1bmN0aW9uKGQpe2xldCBwPVsuLi5kXS5zb3J0KCh5LHcpPT55PT09dz8wOnk8dz8tMToxKSxoPW5ldyBNYXAocC5tYXAoeT0+W3ksbnVsbF0pKSxiPWFzKG5ldyBTZXQocCksZSwhMCk7Yj1lLm9mZnNldHMuc29ydChiKTtsZXQgdj1CaWdJbnQoYy5sZW5ndGgpO2ZvcihsZXRbLHldb2YgYil7bGV0IHc9eS5yYXdzLnRhaWx3aW5kLmNhbmRpZGF0ZTtoLnNldCh3LGguZ2V0KHcpPz92KyspfXJldHVybiBkLm1hcCh5PT57bGV0IHc9aC5nZXQoeSk/P251bGwsaz1jLmluZGV4T2YoeSk7cmV0dXJuIHc9PT1udWxsJiZrIT09LTEmJih3PUJpZ0ludChrKSksW3ksd119KX0sZS5nZXRDbGFzc0xpc3Q9ZnVuY3Rpb24oZD17fSl7bGV0IHA9W107Zm9yKGxldCBoIG9mIHMpaWYoQXJyYXkuaXNBcnJheShoKSl7bGV0W2Isdl09aCx5PVtdLHc9T2JqZWN0LmtleXModj8ubW9kaWZpZXJzPz97fSk7dj8udHlwZXM/LnNvbWUoKHt0eXBlOkV9KT0+RT09PSJjb2xvciIpJiZ3LnB1c2goLi4uT2JqZWN0LmtleXMoZS50YWlsd2luZENvbmZpZy50aGVtZS5vcGFjaXR5Pz97fSkpO2xldCBrPXttb2RpZmllcnM6d30sUz1kLmluY2x1ZGVNZXRhZGF0YSYmdy5sZW5ndGg+MDtmb3IobGV0W0UsVF1vZiBPYmplY3QuZW50cmllcyh2Py52YWx1ZXM/P3t9KSl7aWYoVD09bnVsbCljb250aW51ZTtsZXQgQj1FaShiLEUpO2lmKHAucHVzaChTP1tCLGtdOkIpLHY/LnN1cHBvcnRzTmVnYXRpdmVWYWx1ZXMmJnh0KFQpKXtsZXQgTj1FaShiLGAtJHtFfWApO3kucHVzaChTP1tOLGtdOk4pfX1wLnB1c2goLi4ueSl9ZWxzZSBwLnB1c2goaCk7cmV0dXJuIHB9LGUuZ2V0VmFyaWFudHM9ZnVuY3Rpb24oKXtsZXQgZD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoNykudG9VcHBlckNhc2UoKSxwPVtdO2ZvcihsZXRbaCxiXW9mIGUudmFyaWFudE9wdGlvbnMuZW50cmllcygpKWIudmFyaWFudEluZm8hPT1lbC5CYXNlJiZwLnB1c2goe25hbWU6aCxpc0FyYml0cmFyeTpiLnR5cGU9PT1TeW1ib2wuZm9yKCJNQVRDSF9WQVJJQU5UIiksdmFsdWVzOk9iamVjdC5rZXlzKGIudmFsdWVzPz97fSksaGFzRGFzaDpoIT09IkAiLHNlbGVjdG9ycyh7bW9kaWZpZXI6dix2YWx1ZTp5fT17fSl7bGV0IHc9YFRBSUxXSU5EUExBQ0VIT0xERVIke2R9YCxrPWVlLnJ1bGUoe3NlbGVjdG9yOmAuJHt3fWB9KSxTPWVlLnJvb3Qoe25vZGVzOltrLmNsb25lKCldfSksRT1TLnRvU3RyaW5nKCksVD0oZS52YXJpYW50TWFwLmdldChoKT8/W10pLmZsYXRNYXAoKFtsZSxBXSk9PkEpLEI9W107Zm9yKGxldCBsZSBvZiBUKXtsZXQgQT1bXSxDPXthcmdzOnttb2RpZmllcjp2LHZhbHVlOmIudmFsdWVzPy5beV0/P3l9LHNlcGFyYXRvcjplLnRhaWx3aW5kQ29uZmlnLnNlcGFyYXRvcixtb2RpZnlTZWxlY3RvcnMoVil7cmV0dXJuIFMuZWFjaChFZT0+e0VlLnR5cGU9PT0icnVsZSImJihFZS5zZWxlY3RvcnM9RWUuc2VsZWN0b3JzLm1hcChJZT0+Vih7Z2V0IGNsYXNzTmFtZSgpe3JldHVybiBHbyhJZSl9LHNlbGVjdG9yOkllfSkpKX0pLFN9LGZvcm1hdChWKXtBLnB1c2goVil9LHdyYXAoVil7QS5wdXNoKGBAJHtWLm5hbWV9ICR7Vi5wYXJhbXN9IHsgJiB9YCl9LGNvbnRhaW5lcjpTfSxoZT1sZShDKTtpZihBLmxlbmd0aD4wJiZCLnB1c2goQSksQXJyYXkuaXNBcnJheShoZSkpZm9yKGxldCBWIG9mIGhlKUE9W10sVihDKSxCLnB1c2goQSl9bGV0IE49W10sUj1TLnRvU3RyaW5nKCk7RSE9PVImJihTLndhbGtSdWxlcyhsZT0+e2xldCBBPWxlLnNlbGVjdG9yLEM9KDAsWm8uZGVmYXVsdCkoaGU9PntoZS53YWxrQ2xhc3NlcyhWPT57Vi52YWx1ZT1gJHtofSR7ZS50YWlsd2luZENvbmZpZy5zZXBhcmF0b3J9JHtWLnZhbHVlfWB9KX0pLnByb2Nlc3NTeW5jKEEpO04ucHVzaChBLnJlcGxhY2UoQywiJiIpLnJlcGxhY2UodywiJiIpKX0pLFMud2Fsa0F0UnVsZXMobGU9PntOLnB1c2goYEAke2xlLm5hbWV9ICgke2xlLnBhcmFtc30pIHsgJiB9YCl9KSk7bGV0IEY9ISh5IGluKGIudmFsdWVzPz97fSkpLFk9YltQdF0/P3t9LF89KCgpPT4hKEZ8fFkucmVzcGVjdFByZWZpeD09PSExKSkoKTtCPUIubWFwKGxlPT5sZS5tYXAoQT0+KHtmb3JtYXQ6QSxyZXNwZWN0UHJlZml4Ol99KSkpLE49Ti5tYXAobGU9Pih7Zm9ybWF0OmxlLHJlc3BlY3RQcmVmaXg6X30pKTtsZXQgUT17Y2FuZGlkYXRlOncsY29udGV4dDplfSxVPUIubWFwKGxlPT5ycyhgLiR7d31gLGRyKGxlLFEpLFEpLnJlcGxhY2UoYC4ke3d9YCwiJiIpLnJlcGxhY2UoInsgJiB9IiwiIikudHJpbSgpKTtyZXR1cm4gTi5sZW5ndGg+MCYmVS5wdXNoKGRyKE4sUSkudG9TdHJpbmcoKS5yZXBsYWNlKGAuJHt3fWAsIiYiKSksVX19KTtyZXR1cm4gcH19ZnVuY3Rpb24gVWgocixlKXshci5jbGFzc0NhY2hlLmhhcyhlKXx8KHIubm90Q2xhc3NDYWNoZS5hZGQoZSksci5jbGFzc0NhY2hlLmRlbGV0ZShlKSxyLmFwcGx5Q2xhc3NDYWNoZS5kZWxldGUoZSksci5jYW5kaWRhdGVSdWxlTWFwLmRlbGV0ZShlKSxyLmNhbmRpZGF0ZVJ1bGVDYWNoZS5kZWxldGUoZSksci5zdHlsZXNoZWV0Q2FjaGU9bnVsbCl9ZnVuY3Rpb24gSF8ocixlKXtsZXQgdD1lLnJhd3MudGFpbHdpbmQuY2FuZGlkYXRlO2lmKCEhdCl7Zm9yKGxldCBpIG9mIHIucnVsZUNhY2hlKWlbMV0ucmF3cy50YWlsd2luZC5jYW5kaWRhdGU9PT10JiZyLnJ1bGVDYWNoZS5kZWxldGUoaSk7VWgocix0KX19ZnVuY3Rpb24gaWwocixlPVtdLHQ9ZWUucm9vdCgpKXtsZXQgaT17ZGlzcG9zYWJsZXM6W10scnVsZUNhY2hlOm5ldyBTZXQsY2FuZGlkYXRlUnVsZUNhY2hlOm5ldyBNYXAsY2xhc3NDYWNoZTpuZXcgTWFwLGFwcGx5Q2xhc3NDYWNoZTpuZXcgTWFwLG5vdENsYXNzQ2FjaGU6bmV3IFNldChyLmJsb2NrbGlzdD8/W10pLHBvc3RDc3NOb2RlQ2FjaGU6bmV3IE1hcCxjYW5kaWRhdGVSdWxlTWFwOm5ldyBNYXAsdGFpbHdpbmRDb25maWc6cixjaGFuZ2VkQ29udGVudDplLHZhcmlhbnRNYXA6bmV3IE1hcCxzdHlsZXNoZWV0Q2FjaGU6bnVsbCx2YXJpYW50T3B0aW9uczpuZXcgTWFwLG1hcmtJbnZhbGlkVXRpbGl0eUNhbmRpZGF0ZTpzPT5VaChpLHMpLG1hcmtJbnZhbGlkVXRpbGl0eU5vZGU6cz0+SF8oaSxzKX0sbj1VXyhpLHQpO3JldHVybiBWXyhuLGkpLGl9ZnVuY3Rpb24gVmgocixlLHQsaSxuLHMpe2xldCBhPWUub3B0cy5mcm9tLG89aSE9PW51bGw7WmUuREVCVUcmJmNvbnNvbGUubG9nKCJTb3VyY2UgcGF0aDoiLGEpO2xldCBsO2lmKG8mJmhyLmhhcyhhKSlsPWhyLmdldChhKTtlbHNlIGlmKFBpLmhhcyhuKSl7bGV0IHA9UGkuZ2V0KG4pO0R0LmdldChwKS5hZGQoYSksaHIuc2V0KGEscCksbD1wfWxldCBjPVBoKGEscik7aWYobCl7bGV0W3AsaF09amgoWy4uLnNdLGNzKGwpKTtpZighcCYmIWMpcmV0dXJuW2wsITEsaF19aWYoaHIuaGFzKGEpKXtsZXQgcD1oci5nZXQoYSk7aWYoRHQuaGFzKHApJiYoRHQuZ2V0KHApLmRlbGV0ZShhKSxEdC5nZXQocCkuc2l6ZT09PTApKXtEdC5kZWxldGUocCk7Zm9yKGxldFtoLGJdb2YgUGkpYj09PXAmJlBpLmRlbGV0ZShoKTtmb3IobGV0IGggb2YgcC5kaXNwb3NhYmxlcy5zcGxpY2UoMCkpaChwKX19WmUuREVCVUcmJmNvbnNvbGUubG9nKCJTZXR0aW5nIHVwIG5ldyBjb250ZXh0Li4uIik7bGV0IGY9aWwodCxbXSxyKTtPYmplY3QuYXNzaWduKGYse3VzZXJDb25maWdQYXRoOml9KTtsZXRbLGRdPWpoKFsuLi5zXSxjcyhmKSk7cmV0dXJuIFBpLnNldChuLGYpLGhyLnNldChhLGYpLER0LmhhcyhmKXx8RHQuc2V0KGYsbmV3IFNldCksRHQuZ2V0KGYpLmFkZChhKSxbZiwhMCxkXX12YXIgTmgsWm8sUHQsSm8sZWwscmwsaHIsUGksRHQsT2k9UCgoKT0+e3UoKTtmdCgpO2xhKCk7T3QoKTtOaD1wZShSYSgpKSxabz1wZShpdCgpKTtDaSgpO3FvKCk7R24oKTtLdCgpO2ZyKCk7TG8oKTtGcigpO2JoKCk7SXQoKTtJdCgpO1lpKCk7QmUoKTtHaSgpO0JvKCk7b3MoKTtJaCgpO01oKCk7Y3QoKTtWbygpO1B0PVN5bWJvbCgpLEpvPXtBZGRWYXJpYW50OlN5bWJvbC5mb3IoIkFERF9WQVJJQU5UIiksTWF0Y2hWYXJpYW50OlN5bWJvbC5mb3IoIk1BVENIX1ZBUklBTlQiKX0sZWw9e0Jhc2U6MTw8MCxEeW5hbWljOjE8PDF9O3JsPW5ldyBXZWFrTWFwO2hyPXdoLFBpPXZoLER0PWVzfSk7ZnVuY3Rpb24gbmwocil7cmV0dXJuIHIuaWdub3JlP1tdOnIuZ2xvYj9tLmVudi5ST0xMVVBfV0FUQ0g9PT0idHJ1ZSI/W3t0eXBlOiJkZXBlbmRlbmN5IixmaWxlOnIuYmFzZX1dOlt7dHlwZToiZGlyLWRlcGVuZGVuY3kiLGRpcjpyLmJhc2UsZ2xvYjpyLmdsb2J9XTpbe3R5cGU6ImRlcGVuZGVuY3kiLGZpbGU6ci5iYXNlfV19dmFyIEhoPVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiBXaChyLGUpe3JldHVybntoYW5kbGVyOnIsY29uZmlnOmV9fXZhciBHaCxRaD1QKCgpPT57dSgpO1doLndpdGhPcHRpb25zPWZ1bmN0aW9uKHIsZT0oKT0+KHt9KSl7bGV0IHQ9ZnVuY3Rpb24oaSl7cmV0dXJue19fb3B0aW9uczppLGhhbmRsZXI6cihpKSxjb25maWc6ZShpKX19O3JldHVybiB0Ll9faXNPcHRpb25zRnVuY3Rpb249ITAsdC5fX3BsdWdpbkZ1bmN0aW9uPXIsdC5fX2NvbmZpZ0Z1bmN0aW9uPWUsdH07R2g9V2h9KTt2YXIgc2w9e307R2Uoc2wse2RlZmF1bHQ6KCk9PldffSk7dmFyIFdfLGFsPVAoKCk9Pnt1KCk7UWgoKTtXXz1HaH0pO3ZhciBLaD14KCh6NCxZaCk9Pnt1KCk7dmFyIEdfPShhbCgpLHNsKS5kZWZhdWx0LFFfPXtvdmVyZmxvdzoiaGlkZGVuIixkaXNwbGF5OiItd2Via2l0LWJveCIsIi13ZWJraXQtYm94LW9yaWVudCI6InZlcnRpY2FsIn0sWV89R18oZnVuY3Rpb24oe21hdGNoVXRpbGl0aWVzOnIsYWRkVXRpbGl0aWVzOmUsdGhlbWU6dCx2YXJpYW50czppfSl7bGV0IG49dCgibGluZUNsYW1wIik7cih7ImxpbmUtY2xhbXAiOnM9Pih7Li4uUV8sIi13ZWJraXQtbGluZS1jbGFtcCI6YCR7c31gfSl9LHt2YWx1ZXM6bn0pLGUoW3siLmxpbmUtY2xhbXAtbm9uZSI6eyItd2Via2l0LWxpbmUtY2xhbXAiOiJ1bnNldCJ9fV0saSgibGluZUNsYW1wIikpfSx7dGhlbWU6e2xpbmVDbGFtcDp7MToiMSIsMjoiMiIsMzoiMyIsNDoiNCIsNToiNSIsNjoiNiJ9fSx2YXJpYW50czp7bGluZUNsYW1wOlsicmVzcG9uc2l2ZSJdfX0pO1loLmV4cG9ydHM9WV99KTtmdW5jdGlvbiBvbChyKXtyLmNvbnRlbnQuZmlsZXMubGVuZ3RoPT09MCYmRy53YXJuKCJjb250ZW50LXByb2JsZW1zIixbIlRoZSBgY29udGVudGAgb3B0aW9uIGluIHlvdXIgVGFpbHdpbmQgQ1NTIGNvbmZpZ3VyYXRpb24gaXMgbWlzc2luZyBvciBlbXB0eS4iLCJDb25maWd1cmUgeW91ciBjb250ZW50IHNvdXJjZXMgb3IgeW91ciBnZW5lcmF0ZWQgQ1NTIHdpbGwgYmUgbWlzc2luZyBzdHlsZXMuIiwiaHR0cHM6Ly90YWlsd2luZGNzcy5jb20vZG9jcy9jb250ZW50LWNvbmZpZ3VyYXRpb24iXSk7dHJ5e2xldCBlPUtoKCk7ci5wbHVnaW5zLmluY2x1ZGVzKGUpJiYoRy53YXJuKCJsaW5lLWNsYW1wLWluLWNvcmUiLFsiQXMgb2YgVGFpbHdpbmQgQ1NTIHYzLjMsIHRoZSBgQHRhaWx3aW5kY3NzL2xpbmUtY2xhbXBgIHBsdWdpbiBpcyBub3cgaW5jbHVkZWQgYnkgZGVmYXVsdC4iLCJSZW1vdmUgaXQgZnJvbSB0aGUgYHBsdWdpbnNgIGFycmF5IGluIHlvdXIgY29uZmlndXJhdGlvbiB0byBlbGltaW5hdGUgdGhpcyB3YXJuaW5nLiJdKSxyLnBsdWdpbnM9ci5wbHVnaW5zLmZpbHRlcih0PT50IT09ZSkpfWNhdGNoe31yZXR1cm4gcn12YXIgWGg9UCgoKT0+e3UoKTtCZSgpfSk7dmFyIFpoLEpoPVAoKCk9Pnt1KCk7Wmg9KCk9PiExfSk7dmFyIHBzLGVtPVAoKCk9Pnt1KCk7cHM9e3N5bmM6cj0+W10uY29uY2F0KHIpLGdlbmVyYXRlVGFza3M6cj0+W3tkeW5hbWljOiExLGJhc2U6Ii4iLG5lZ2F0aXZlOltdLHBvc2l0aXZlOltdLmNvbmNhdChyKSxwYXR0ZXJuczpbXS5jb25jYXQocil9XSxlc2NhcGVQYXRoOnI9PnJ9fSk7dmFyIGxsLHRtPVAoKCk9Pnt1KCk7bGw9cj0+cn0pO3ZhciBybSxpbT1QKCgpPT57dSgpO3JtPSgpPT4iIn0pO2Z1bmN0aW9uIG5tKHIpe2xldCBlPXIsdD1ybShyKTtyZXR1cm4gdCE9PSIuIiYmKGU9ci5zdWJzdHIodC5sZW5ndGgpLGUuY2hhckF0KDApPT09Ii8iJiYoZT1lLnN1YnN0cigxKSkpLGUuc3Vic3RyKDAsMik9PT0iLi8iP2U9ZS5zdWJzdHIoMik6ZS5jaGFyQXQoMCk9PT0iLyImJihlPWUuc3Vic3RyKDEpKSx7YmFzZTp0LGdsb2I6ZX19dmFyIHNtPVAoKCk9Pnt1KCk7aW0oKX0pO3ZhciBkcz14KFZlPT57dSgpOyJ1c2Ugc3RyaWN0IjtWZS5pc0ludGVnZXI9cj0+dHlwZW9mIHI9PSJudW1iZXIiP051bWJlci5pc0ludGVnZXIocik6dHlwZW9mIHI9PSJzdHJpbmciJiZyLnRyaW0oKSE9PSIiP051bWJlci5pc0ludGVnZXIoTnVtYmVyKHIpKTohMTtWZS5maW5kPShyLGUpPT5yLm5vZGVzLmZpbmQodD0+dC50eXBlPT09ZSk7VmUuZXhjZWVkc0xpbWl0PShyLGUsdD0xLGkpPT5pPT09ITF8fCFWZS5pc0ludGVnZXIocil8fCFWZS5pc0ludGVnZXIoZSk/ITE6KE51bWJlcihlKS1OdW1iZXIocikpL051bWJlcih0KT49aTtWZS5lc2NhcGVOb2RlPShyLGU9MCx0KT0+e2xldCBpPXIubm9kZXNbZV07IWl8fCh0JiZpLnR5cGU9PT10fHxpLnR5cGU9PT0ib3BlbiJ8fGkudHlwZT09PSJjbG9zZSIpJiZpLmVzY2FwZWQhPT0hMCYmKGkudmFsdWU9IlxcIitpLnZhbHVlLGkuZXNjYXBlZD0hMCl9O1ZlLmVuY2xvc2VCcmFjZT1yPT5yLnR5cGUhPT0iYnJhY2UiPyExOnIuY29tbWFzPj4wK3IucmFuZ2VzPj4wPT0wPyhyLmludmFsaWQ9ITAsITApOiExO1ZlLmlzSW52YWxpZEJyYWNlPXI9PnIudHlwZSE9PSJicmFjZSI/ITE6ci5pbnZhbGlkPT09ITB8fHIuZG9sbGFyPyEwOnIuY29tbWFzPj4wK3IucmFuZ2VzPj4wPT0wfHxyLm9wZW4hPT0hMHx8ci5jbG9zZSE9PSEwPyhyLmludmFsaWQ9ITAsITApOiExO1ZlLmlzT3Blbk9yQ2xvc2U9cj0+ci50eXBlPT09Im9wZW4ifHxyLnR5cGU9PT0iY2xvc2UiPyEwOnIub3Blbj09PSEwfHxyLmNsb3NlPT09ITA7VmUucmVkdWNlPXI9PnIucmVkdWNlKChlLHQpPT4odC50eXBlPT09InRleHQiJiZlLnB1c2godC52YWx1ZSksdC50eXBlPT09InJhbmdlIiYmKHQudHlwZT0idGV4dCIpLGUpLFtdKTtWZS5mbGF0dGVuPSguLi5yKT0+e2xldCBlPVtdLHQ9aT0+e2ZvcihsZXQgbj0wO248aS5sZW5ndGg7bisrKXtsZXQgcz1pW25dO2lmKEFycmF5LmlzQXJyYXkocykpe3Qocyk7Y29udGludWV9cyE9PXZvaWQgMCYmZS5wdXNoKHMpfXJldHVybiBlfTtyZXR1cm4gdChyKSxlfX0pO3ZhciBocz14KChaNCxvbSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBhbT1kcygpO29tLmV4cG9ydHM9KHIsZT17fSk9PntsZXQgdD0oaSxuPXt9KT0+e2xldCBzPWUuZXNjYXBlSW52YWxpZCYmYW0uaXNJbnZhbGlkQnJhY2UobiksYT1pLmludmFsaWQ9PT0hMCYmZS5lc2NhcGVJbnZhbGlkPT09ITAsbz0iIjtpZihpLnZhbHVlKXJldHVybihzfHxhKSYmYW0uaXNPcGVuT3JDbG9zZShpKT8iXFwiK2kudmFsdWU6aS52YWx1ZTtpZihpLnZhbHVlKXJldHVybiBpLnZhbHVlO2lmKGkubm9kZXMpZm9yKGxldCBsIG9mIGkubm9kZXMpbys9dChsKTtyZXR1cm4gb307cmV0dXJuIHQocil9fSk7dmFyIHVtPXgoKEo0LGxtKT0+e3UoKTsidXNlIHN0cmljdCI7bG0uZXhwb3J0cz1mdW5jdGlvbihyKXtyZXR1cm4gdHlwZW9mIHI9PSJudW1iZXIiP3Itcj09MDp0eXBlb2Ygcj09InN0cmluZyImJnIudHJpbSgpIT09IiI/TnVtYmVyLmlzRmluaXRlP051bWJlci5pc0Zpbml0ZSgrcik6aXNGaW5pdGUoK3IpOiExfX0pO3ZhciBibT14KChlNix5bSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBmbT11bSgpLFd0PShyLGUsdCk9PntpZihmbShyKT09PSExKXRocm93IG5ldyBUeXBlRXJyb3IoInRvUmVnZXhSYW5nZTogZXhwZWN0ZWQgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgbnVtYmVyIik7aWYoZT09PXZvaWQgMHx8cj09PWUpcmV0dXJuIFN0cmluZyhyKTtpZihmbShlKT09PSExKXRocm93IG5ldyBUeXBlRXJyb3IoInRvUmVnZXhSYW5nZTogZXhwZWN0ZWQgdGhlIHNlY29uZCBhcmd1bWVudCB0byBiZSBhIG51bWJlci4iKTtsZXQgaT17cmVsYXhaZXJvczohMCwuLi50fTt0eXBlb2YgaS5zdHJpY3RaZXJvcz09ImJvb2xlYW4iJiYoaS5yZWxheFplcm9zPWkuc3RyaWN0WmVyb3M9PT0hMSk7bGV0IG49U3RyaW5nKGkucmVsYXhaZXJvcykscz1TdHJpbmcoaS5zaG9ydGhhbmQpLGE9U3RyaW5nKGkuY2FwdHVyZSksbz1TdHJpbmcoaS53cmFwKSxsPXIrIjoiK2UrIj0iK24rcythK287aWYoV3QuY2FjaGUuaGFzT3duUHJvcGVydHkobCkpcmV0dXJuIFd0LmNhY2hlW2xdLnJlc3VsdDtsZXQgYz1NYXRoLm1pbihyLGUpLGY9TWF0aC5tYXgocixlKTtpZihNYXRoLmFicyhjLWYpPT09MSl7bGV0IHY9cisifCIrZTtyZXR1cm4gaS5jYXB0dXJlP2AoJHt2fSlgOmkud3JhcD09PSExP3Y6YCg/OiR7dn0pYH1sZXQgZD1nbShyKXx8Z20oZSkscD17bWluOnIsbWF4OmUsYTpjLGI6Zn0saD1bXSxiPVtdO2lmKGQmJihwLmlzUGFkZGVkPWQscC5tYXhMZW49U3RyaW5nKHAubWF4KS5sZW5ndGgpLGM8MCl7bGV0IHY9ZjwwP01hdGguYWJzKGYpOjE7Yj1jbSh2LE1hdGguYWJzKGMpLHAsaSksYz1wLmE9MH1yZXR1cm4gZj49MCYmKGg9Y20oYyxmLHAsaSkpLHAubmVnYXRpdmVzPWIscC5wb3NpdGl2ZXM9aCxwLnJlc3VsdD1LXyhiLGgsaSksaS5jYXB0dXJlPT09ITA/cC5yZXN1bHQ9YCgke3AucmVzdWx0fSlgOmkud3JhcCE9PSExJiZoLmxlbmd0aCtiLmxlbmd0aD4xJiYocC5yZXN1bHQ9YCg/OiR7cC5yZXN1bHR9KWApLFd0LmNhY2hlW2xdPXAscC5yZXN1bHR9O2Z1bmN0aW9uIEtfKHIsZSx0KXtsZXQgaT11bChyLGUsIi0iLCExLHQpfHxbXSxuPXVsKGUsciwiIiwhMSx0KXx8W10scz11bChyLGUsIi0/IiwhMCx0KXx8W107cmV0dXJuIGkuY29uY2F0KHMpLmNvbmNhdChuKS5qb2luKCJ8Iil9ZnVuY3Rpb24gWF8ocixlKXtsZXQgdD0xLGk9MSxuPWRtKHIsdCkscz1uZXcgU2V0KFtlXSk7Zm9yKDtyPD1uJiZuPD1lOylzLmFkZChuKSx0Kz0xLG49ZG0ocix0KTtmb3Iobj1obShlKzEsaSktMTtyPG4mJm48PWU7KXMuYWRkKG4pLGkrPTEsbj1obShlKzEsaSktMTtyZXR1cm4gcz1bLi4uc10scy5zb3J0KGVFKSxzfWZ1bmN0aW9uIFpfKHIsZSx0KXtpZihyPT09ZSlyZXR1cm57cGF0dGVybjpyLGNvdW50OltdLGRpZ2l0czowfTtsZXQgaT1KXyhyLGUpLG49aS5sZW5ndGgscz0iIixhPTA7Zm9yKGxldCBvPTA7bzxuO28rKyl7bGV0W2wsY109aVtvXTtsPT09Yz9zKz1sOmwhPT0iMCJ8fGMhPT0iOSI/cys9dEUobCxjLHQpOmErK31yZXR1cm4gYSYmKHMrPXQuc2hvcnRoYW5kPT09ITA/IlxcZCI6IlswLTldIikse3BhdHRlcm46cyxjb3VudDpbYV0sZGlnaXRzOm59fWZ1bmN0aW9uIGNtKHIsZSx0LGkpe2xldCBuPVhfKHIsZSkscz1bXSxhPXIsbztmb3IobGV0IGw9MDtsPG4ubGVuZ3RoO2wrKyl7bGV0IGM9bltsXSxmPVpfKFN0cmluZyhhKSxTdHJpbmcoYyksaSksZD0iIjtpZighdC5pc1BhZGRlZCYmbyYmby5wYXR0ZXJuPT09Zi5wYXR0ZXJuKXtvLmNvdW50Lmxlbmd0aD4xJiZvLmNvdW50LnBvcCgpLG8uY291bnQucHVzaChmLmNvdW50WzBdKSxvLnN0cmluZz1vLnBhdHRlcm4rbW0oby5jb3VudCksYT1jKzE7Y29udGludWV9dC5pc1BhZGRlZCYmKGQ9ckUoYyx0LGkpKSxmLnN0cmluZz1kK2YucGF0dGVybittbShmLmNvdW50KSxzLnB1c2goZiksYT1jKzEsbz1mfXJldHVybiBzfWZ1bmN0aW9uIHVsKHIsZSx0LGksbil7bGV0IHM9W107Zm9yKGxldCBhIG9mIHIpe2xldHtzdHJpbmc6b309YTshaSYmIXBtKGUsInN0cmluZyIsbykmJnMucHVzaCh0K28pLGkmJnBtKGUsInN0cmluZyIsbykmJnMucHVzaCh0K28pfXJldHVybiBzfWZ1bmN0aW9uIEpfKHIsZSl7bGV0IHQ9W107Zm9yKGxldCBpPTA7aTxyLmxlbmd0aDtpKyspdC5wdXNoKFtyW2ldLGVbaV1dKTtyZXR1cm4gdH1mdW5jdGlvbiBlRShyLGUpe3JldHVybiByPmU/MTplPnI/LTE6MH1mdW5jdGlvbiBwbShyLGUsdCl7cmV0dXJuIHIuc29tZShpPT5pW2VdPT09dCl9ZnVuY3Rpb24gZG0ocixlKXtyZXR1cm4gTnVtYmVyKFN0cmluZyhyKS5zbGljZSgwLC1lKSsiOSIucmVwZWF0KGUpKX1mdW5jdGlvbiBobShyLGUpe3JldHVybiByLXIlTWF0aC5wb3coMTAsZSl9ZnVuY3Rpb24gbW0ocil7bGV0W2U9MCx0PSIiXT1yO3JldHVybiB0fHxlPjE/YHske2UrKHQ/IiwiK3Q6IiIpfX1gOiIifWZ1bmN0aW9uIHRFKHIsZSx0KXtyZXR1cm5gWyR7cn0ke2Utcj09MT8iIjoiLSJ9JHtlfV1gfWZ1bmN0aW9uIGdtKHIpe3JldHVybi9eLT8oMCspXGQvLnRlc3Qocil9ZnVuY3Rpb24gckUocixlLHQpe2lmKCFlLmlzUGFkZGVkKXJldHVybiByO2xldCBpPU1hdGguYWJzKGUubWF4TGVuLVN0cmluZyhyKS5sZW5ndGgpLG49dC5yZWxheFplcm9zIT09ITE7c3dpdGNoKGkpe2Nhc2UgMDpyZXR1cm4iIjtjYXNlIDE6cmV0dXJuIG4/IjA/IjoiMCI7Y2FzZSAyOnJldHVybiBuPyIwezAsMn0iOiIwMCI7ZGVmYXVsdDpyZXR1cm4gbj9gMHswLCR7aX19YDpgMHske2l9fWB9fVd0LmNhY2hlPXt9O1d0LmNsZWFyQ2FjaGU9KCk9Pld0LmNhY2hlPXt9O3ltLmV4cG9ydHM9V3R9KTt2YXIgcGw9eCgodDYsQ20pPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgaUU9KEZuKCksQm4pLHdtPWJtKCksdm09cj0+ciE9PW51bGwmJnR5cGVvZiByPT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkociksbkU9cj0+ZT0+cj09PSEwP051bWJlcihlKTpTdHJpbmcoZSksZmw9cj0+dHlwZW9mIHI9PSJudW1iZXIifHx0eXBlb2Ygcj09InN0cmluZyImJnIhPT0iIixJaT1yPT5OdW1iZXIuaXNJbnRlZ2VyKCtyKSxjbD1yPT57bGV0IGU9YCR7cn1gLHQ9LTE7aWYoZVswXT09PSItIiYmKGU9ZS5zbGljZSgxKSksZT09PSIwIilyZXR1cm4hMTtmb3IoO2VbKyt0XT09PSIwIjspO3JldHVybiB0PjB9LHNFPShyLGUsdCk9PnR5cGVvZiByPT0ic3RyaW5nInx8dHlwZW9mIGU9PSJzdHJpbmciPyEwOnQuc3RyaW5naWZ5PT09ITAsYUU9KHIsZSx0KT0+e2lmKGU+MCl7bGV0IGk9clswXT09PSItIj8iLSI6IiI7aSYmKHI9ci5zbGljZSgxKSkscj1pK3IucGFkU3RhcnQoaT9lLTE6ZSwiMCIpfXJldHVybiB0PT09ITE/U3RyaW5nKHIpOnJ9LG1zPShyLGUpPT57bGV0IHQ9clswXT09PSItIj8iLSI6IiI7Zm9yKHQmJihyPXIuc2xpY2UoMSksZS0tKTtyLmxlbmd0aDxlOylyPSIwIityO3JldHVybiB0PyItIityOnJ9LG9FPShyLGUsdCk9PntyLm5lZ2F0aXZlcy5zb3J0KChvLGwpPT5vPGw/LTE6bz5sPzE6MCksci5wb3NpdGl2ZXMuc29ydCgobyxsKT0+bzxsPy0xOm8+bD8xOjApO2xldCBpPWUuY2FwdHVyZT8iIjoiPzoiLG49IiIscz0iIixhO3JldHVybiByLnBvc2l0aXZlcy5sZW5ndGgmJihuPXIucG9zaXRpdmVzLm1hcChvPT5tcyhTdHJpbmcobyksdCkpLmpvaW4oInwiKSksci5uZWdhdGl2ZXMubGVuZ3RoJiYocz1gLSgke2l9JHtyLm5lZ2F0aXZlcy5tYXAobz0+bXMoU3RyaW5nKG8pLHQpKS5qb2luKCJ8Iil9KWApLG4mJnM/YT1gJHtufXwke3N9YDphPW58fHMsZS53cmFwP2AoJHtpfSR7YX0pYDphfSx4bT0ocixlLHQsaSk9PntpZih0KXJldHVybiB3bShyLGUse3dyYXA6ITEsLi4uaX0pO2xldCBuPVN0cmluZy5mcm9tQ2hhckNvZGUocik7aWYocj09PWUpcmV0dXJuIG47bGV0IHM9U3RyaW5nLmZyb21DaGFyQ29kZShlKTtyZXR1cm5gWyR7bn0tJHtzfV1gfSxrbT0ocixlLHQpPT57aWYoQXJyYXkuaXNBcnJheShyKSl7bGV0IGk9dC53cmFwPT09ITAsbj10LmNhcHR1cmU/IiI6Ij86IjtyZXR1cm4gaT9gKCR7bn0ke3Iuam9pbigifCIpfSlgOnIuam9pbigifCIpfXJldHVybiB3bShyLGUsdCl9LFNtPSguLi5yKT0+bmV3IFJhbmdlRXJyb3IoIkludmFsaWQgcmFuZ2UgYXJndW1lbnRzOiAiK2lFLmluc3BlY3QoLi4ucikpLEFtPShyLGUsdCk9PntpZih0LnN0cmljdFJhbmdlcz09PSEwKXRocm93IFNtKFtyLGVdKTtyZXR1cm5bXX0sbEU9KHIsZSk9PntpZihlLnN0cmljdFJhbmdlcz09PSEwKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIHN0ZXAgIiR7cn0iIHRvIGJlIGEgbnVtYmVyYCk7cmV0dXJuW119LHVFPShyLGUsdD0xLGk9e30pPT57bGV0IG49TnVtYmVyKHIpLHM9TnVtYmVyKGUpO2lmKCFOdW1iZXIuaXNJbnRlZ2VyKG4pfHwhTnVtYmVyLmlzSW50ZWdlcihzKSl7aWYoaS5zdHJpY3RSYW5nZXM9PT0hMCl0aHJvdyBTbShbcixlXSk7cmV0dXJuW119bj09PTAmJihuPTApLHM9PT0wJiYocz0wKTtsZXQgYT1uPnMsbz1TdHJpbmcociksbD1TdHJpbmcoZSksYz1TdHJpbmcodCk7dD1NYXRoLm1heChNYXRoLmFicyh0KSwxKTtsZXQgZj1jbChvKXx8Y2wobCl8fGNsKGMpLGQ9Zj9NYXRoLm1heChvLmxlbmd0aCxsLmxlbmd0aCxjLmxlbmd0aCk6MCxwPWY9PT0hMSYmc0UocixlLGkpPT09ITEsaD1pLnRyYW5zZm9ybXx8bkUocCk7aWYoaS50b1JlZ2V4JiZ0PT09MSlyZXR1cm4geG0obXMocixkKSxtcyhlLGQpLCEwLGkpO2xldCBiPXtuZWdhdGl2ZXM6W10scG9zaXRpdmVzOltdfSx2PWs9PmJbazwwPyJuZWdhdGl2ZXMiOiJwb3NpdGl2ZXMiXS5wdXNoKE1hdGguYWJzKGspKSx5PVtdLHc9MDtmb3IoO2E/bj49czpuPD1zOylpLnRvUmVnZXg9PT0hMCYmdD4xP3Yobik6eS5wdXNoKGFFKGgobix3KSxkLHApKSxuPWE/bi10Om4rdCx3Kys7cmV0dXJuIGkudG9SZWdleD09PSEwP3Q+MT9vRShiLGksZCk6a20oeSxudWxsLHt3cmFwOiExLC4uLml9KTp5fSxmRT0ocixlLHQ9MSxpPXt9KT0+e2lmKCFJaShyKSYmci5sZW5ndGg+MXx8IUlpKGUpJiZlLmxlbmd0aD4xKXJldHVybiBBbShyLGUsaSk7bGV0IG49aS50cmFuc2Zvcm18fChwPT5TdHJpbmcuZnJvbUNoYXJDb2RlKHApKSxzPWAke3J9YC5jaGFyQ29kZUF0KDApLGE9YCR7ZX1gLmNoYXJDb2RlQXQoMCksbz1zPmEsbD1NYXRoLm1pbihzLGEpLGM9TWF0aC5tYXgocyxhKTtpZihpLnRvUmVnZXgmJnQ9PT0xKXJldHVybiB4bShsLGMsITEsaSk7bGV0IGY9W10sZD0wO2Zvcig7bz9zPj1hOnM8PWE7KWYucHVzaChuKHMsZCkpLHM9bz9zLXQ6cyt0LGQrKztyZXR1cm4gaS50b1JlZ2V4PT09ITA/a20oZixudWxsLHt3cmFwOiExLG9wdGlvbnM6aX0pOmZ9LGdzPShyLGUsdCxpPXt9KT0+e2lmKGU9PW51bGwmJmZsKHIpKXJldHVybltyXTtpZighZmwocil8fCFmbChlKSlyZXR1cm4gQW0ocixlLGkpO2lmKHR5cGVvZiB0PT0iZnVuY3Rpb24iKXJldHVybiBncyhyLGUsMSx7dHJhbnNmb3JtOnR9KTtpZih2bSh0KSlyZXR1cm4gZ3MocixlLDAsdCk7bGV0IG49ey4uLml9O3JldHVybiBuLmNhcHR1cmU9PT0hMCYmKG4ud3JhcD0hMCksdD10fHxuLnN0ZXB8fDEsSWkodCk/SWkocikmJklpKGUpP3VFKHIsZSx0LG4pOmZFKHIsZSxNYXRoLm1heChNYXRoLmFicyh0KSwxKSxuKTp0IT1udWxsJiYhdm0odCk/bEUodCxuKTpncyhyLGUsMSx0KX07Q20uZXhwb3J0cz1nc30pO3ZhciBPbT14KChyNixFbSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBjRT1wbCgpLF9tPWRzKCkscEU9KHIsZT17fSk9PntsZXQgdD0oaSxuPXt9KT0+e2xldCBzPV9tLmlzSW52YWxpZEJyYWNlKG4pLGE9aS5pbnZhbGlkPT09ITAmJmUuZXNjYXBlSW52YWxpZD09PSEwLG89cz09PSEwfHxhPT09ITAsbD1lLmVzY2FwZUludmFsaWQ9PT0hMD8iXFwiOiIiLGM9IiI7aWYoaS5pc09wZW49PT0hMClyZXR1cm4gbCtpLnZhbHVlO2lmKGkuaXNDbG9zZT09PSEwKXJldHVybiBjb25zb2xlLmxvZygibm9kZS5pc0Nsb3NlIixsLGkudmFsdWUpLGwraS52YWx1ZTtpZihpLnR5cGU9PT0ib3BlbiIpcmV0dXJuIG8/bCtpLnZhbHVlOiIoIjtpZihpLnR5cGU9PT0iY2xvc2UiKXJldHVybiBvP2wraS52YWx1ZToiKSI7aWYoaS50eXBlPT09ImNvbW1hIilyZXR1cm4gaS5wcmV2LnR5cGU9PT0iY29tbWEiPyIiOm8/aS52YWx1ZToifCI7aWYoaS52YWx1ZSlyZXR1cm4gaS52YWx1ZTtpZihpLm5vZGVzJiZpLnJhbmdlcz4wKXtsZXQgZj1fbS5yZWR1Y2UoaS5ub2RlcyksZD1jRSguLi5mLHsuLi5lLHdyYXA6ITEsdG9SZWdleDohMCxzdHJpY3RaZXJvczohMH0pO2lmKGQubGVuZ3RoIT09MClyZXR1cm4gZi5sZW5ndGg+MSYmZC5sZW5ndGg+MT9gKCR7ZH0pYDpkfWlmKGkubm9kZXMpZm9yKGxldCBmIG9mIGkubm9kZXMpYys9dChmLGkpO3JldHVybiBjfTtyZXR1cm4gdChyKX07RW0uZXhwb3J0cz1wRX0pO3ZhciBQbT14KChpNixSbSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBkRT1wbCgpLFRtPWhzKCksbXI9ZHMoKSxHdD0ocj0iIixlPSIiLHQ9ITEpPT57bGV0IGk9W107aWYocj1bXS5jb25jYXQociksZT1bXS5jb25jYXQoZSksIWUubGVuZ3RoKXJldHVybiByO2lmKCFyLmxlbmd0aClyZXR1cm4gdD9tci5mbGF0dGVuKGUpLm1hcChuPT5geyR7bn19YCk6ZTtmb3IobGV0IG4gb2YgcilpZihBcnJheS5pc0FycmF5KG4pKWZvcihsZXQgcyBvZiBuKWkucHVzaChHdChzLGUsdCkpO2Vsc2UgZm9yKGxldCBzIG9mIGUpdD09PSEwJiZ0eXBlb2Ygcz09InN0cmluZyImJihzPWB7JHtzfX1gKSxpLnB1c2goQXJyYXkuaXNBcnJheShzKT9HdChuLHMsdCk6bitzKTtyZXR1cm4gbXIuZmxhdHRlbihpKX0saEU9KHIsZT17fSk9PntsZXQgdD1lLnJhbmdlTGltaXQ9PT12b2lkIDA/MWUzOmUucmFuZ2VMaW1pdCxpPShuLHM9e30pPT57bi5xdWV1ZT1bXTtsZXQgYT1zLG89cy5xdWV1ZTtmb3IoO2EudHlwZSE9PSJicmFjZSImJmEudHlwZSE9PSJyb290IiYmYS5wYXJlbnQ7KWE9YS5wYXJlbnQsbz1hLnF1ZXVlO2lmKG4uaW52YWxpZHx8bi5kb2xsYXIpe28ucHVzaChHdChvLnBvcCgpLFRtKG4sZSkpKTtyZXR1cm59aWYobi50eXBlPT09ImJyYWNlIiYmbi5pbnZhbGlkIT09ITAmJm4ubm9kZXMubGVuZ3RoPT09Mil7by5wdXNoKEd0KG8ucG9wKCksWyJ7fSJdKSk7cmV0dXJufWlmKG4ubm9kZXMmJm4ucmFuZ2VzPjApe2xldCBkPW1yLnJlZHVjZShuLm5vZGVzKTtpZihtci5leGNlZWRzTGltaXQoLi4uZCxlLnN0ZXAsdCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoImV4cGFuZGVkIGFycmF5IGxlbmd0aCBleGNlZWRzIHJhbmdlIGxpbWl0LiBVc2Ugb3B0aW9ucy5yYW5nZUxpbWl0IHRvIGluY3JlYXNlIG9yIGRpc2FibGUgdGhlIGxpbWl0LiIpO2xldCBwPWRFKC4uLmQsZSk7cC5sZW5ndGg9PT0wJiYocD1UbShuLGUpKSxvLnB1c2goR3Qoby5wb3AoKSxwKSksbi5ub2Rlcz1bXTtyZXR1cm59bGV0IGw9bXIuZW5jbG9zZUJyYWNlKG4pLGM9bi5xdWV1ZSxmPW47Zm9yKDtmLnR5cGUhPT0iYnJhY2UiJiZmLnR5cGUhPT0icm9vdCImJmYucGFyZW50OylmPWYucGFyZW50LGM9Zi5xdWV1ZTtmb3IobGV0IGQ9MDtkPG4ubm9kZXMubGVuZ3RoO2QrKyl7bGV0IHA9bi5ub2Rlc1tkXTtpZihwLnR5cGU9PT0iY29tbWEiJiZuLnR5cGU9PT0iYnJhY2UiKXtkPT09MSYmYy5wdXNoKCIiKSxjLnB1c2goIiIpO2NvbnRpbnVlfWlmKHAudHlwZT09PSJjbG9zZSIpe28ucHVzaChHdChvLnBvcCgpLGMsbCkpO2NvbnRpbnVlfWlmKHAudmFsdWUmJnAudHlwZSE9PSJvcGVuIil7Yy5wdXNoKEd0KGMucG9wKCkscC52YWx1ZSkpO2NvbnRpbnVlfXAubm9kZXMmJmkocCxuKX1yZXR1cm4gY307cmV0dXJuIG1yLmZsYXR0ZW4oaShyKSl9O1JtLmV4cG9ydHM9aEV9KTt2YXIgRG09eCgobjYsSW0pPT57dSgpOyJ1c2Ugc3RyaWN0IjtJbS5leHBvcnRzPXtNQVhfTEVOR1RIOjFlNCxDSEFSXzA6IjAiLENIQVJfOToiOSIsQ0hBUl9VUFBFUkNBU0VfQToiQSIsQ0hBUl9MT1dFUkNBU0VfQToiYSIsQ0hBUl9VUFBFUkNBU0VfWjoiWiIsQ0hBUl9MT1dFUkNBU0VfWjoieiIsQ0hBUl9MRUZUX1BBUkVOVEhFU0VTOiIoIixDSEFSX1JJR0hUX1BBUkVOVEhFU0VTOiIpIixDSEFSX0FTVEVSSVNLOiIqIixDSEFSX0FNUEVSU0FORDoiJiIsQ0hBUl9BVDoiQCIsQ0hBUl9CQUNLU0xBU0g6IlxcIixDSEFSX0JBQ0tUSUNLOiJgIixDSEFSX0NBUlJJQUdFX1JFVFVSTjoiXHIiLENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6Il4iLENIQVJfQ09MT046IjoiLENIQVJfQ09NTUE6IiwiLENIQVJfRE9MTEFSOiIkIixDSEFSX0RPVDoiLiIsQ0hBUl9ET1VCTEVfUVVPVEU6JyInLENIQVJfRVFVQUw6Ij0iLENIQVJfRVhDTEFNQVRJT05fTUFSSzoiISIsQ0hBUl9GT1JNX0ZFRUQ6IlxmIixDSEFSX0ZPUldBUkRfU0xBU0g6Ii8iLENIQVJfSEFTSDoiIyIsQ0hBUl9IWVBIRU5fTUlOVVM6Ii0iLENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiI8IixDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6InsiLENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVDoiWyIsQ0hBUl9MSU5FX0ZFRUQ6YApgLENIQVJfTk9fQlJFQUtfU1BBQ0U6Ilx4QTAiLENIQVJfUEVSQ0VOVDoiJSIsQ0hBUl9QTFVTOiIrIixDSEFSX1FVRVNUSU9OX01BUks6Ij8iLENIQVJfUklHSFRfQU5HTEVfQlJBQ0tFVDoiPiIsQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRToifSIsQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDoiXSIsQ0hBUl9TRU1JQ09MT046IjsiLENIQVJfU0lOR0xFX1FVT1RFOiInIixDSEFSX1NQQUNFOiIgIixDSEFSX1RBQjoiCSIsQ0hBUl9VTkRFUlNDT1JFOiJfIixDSEFSX1ZFUlRJQ0FMX0xJTkU6InwiLENIQVJfWkVST19XSURUSF9OT0JSRUFLX1NQQUNFOiJcdUZFRkYifX0pO3ZhciBObT14KChzNixNbSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBtRT1ocygpLHtNQVhfTEVOR1RIOnFtLENIQVJfQkFDS1NMQVNIOmRsLENIQVJfQkFDS1RJQ0s6Z0UsQ0hBUl9DT01NQTp5RSxDSEFSX0RPVDpiRSxDSEFSX0xFRlRfUEFSRU5USEVTRVM6d0UsQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzp2RSxDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6eEUsQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRTprRSxDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6JG0sQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDpMbSxDSEFSX0RPVUJMRV9RVU9URTpTRSxDSEFSX1NJTkdMRV9RVU9URTpBRSxDSEFSX05PX0JSRUFLX1NQQUNFOkNFLENIQVJfWkVST19XSURUSF9OT0JSRUFLX1NQQUNFOl9FfT1EbSgpLEVFPShyLGU9e30pPT57aWYodHlwZW9mIHIhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgc3RyaW5nIik7bGV0IHQ9ZXx8e30saT10eXBlb2YgdC5tYXhMZW5ndGg9PSJudW1iZXIiP01hdGgubWluKHFtLHQubWF4TGVuZ3RoKTpxbTtpZihyLmxlbmd0aD5pKXRocm93IG5ldyBTeW50YXhFcnJvcihgSW5wdXQgbGVuZ3RoICgke3IubGVuZ3RofSksIGV4Y2VlZHMgbWF4IGNoYXJhY3RlcnMgKCR7aX0pYCk7bGV0IG49e3R5cGU6InJvb3QiLGlucHV0OnIsbm9kZXM6W119LHM9W25dLGE9bixvPW4sbD0wLGM9ci5sZW5ndGgsZj0wLGQ9MCxwLGg9KCk9PnJbZisrXSxiPXY9PntpZih2LnR5cGU9PT0idGV4dCImJm8udHlwZT09PSJkb3QiJiYoby50eXBlPSJ0ZXh0IiksbyYmby50eXBlPT09InRleHQiJiZ2LnR5cGU9PT0idGV4dCIpe28udmFsdWUrPXYudmFsdWU7cmV0dXJufXJldHVybiBhLm5vZGVzLnB1c2godiksdi5wYXJlbnQ9YSx2LnByZXY9byxvPXYsdn07Zm9yKGIoe3R5cGU6ImJvcyJ9KTtmPGM7KWlmKGE9c1tzLmxlbmd0aC0xXSxwPWgoKSwhKHA9PT1fRXx8cD09PUNFKSl7aWYocD09PWRsKXtiKHt0eXBlOiJ0ZXh0Iix2YWx1ZTooZS5rZWVwRXNjYXBpbmc/cDoiIikraCgpfSk7Y29udGludWV9aWYocD09PUxtKXtiKHt0eXBlOiJ0ZXh0Iix2YWx1ZToiXFwiK3B9KTtjb250aW51ZX1pZihwPT09JG0pe2wrKztsZXQgdjtmb3IoO2Y8YyYmKHY9aCgpKTspe2lmKHArPXYsdj09PSRtKXtsKys7Y29udGludWV9aWYodj09PWRsKXtwKz1oKCk7Y29udGludWV9aWYodj09PUxtJiYobC0tLGw9PT0wKSlicmVha31iKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpwfSk7Y29udGludWV9aWYocD09PXdFKXthPWIoe3R5cGU6InBhcmVuIixub2RlczpbXX0pLHMucHVzaChhKSxiKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpwfSk7Y29udGludWV9aWYocD09PXZFKXtpZihhLnR5cGUhPT0icGFyZW4iKXtiKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpwfSk7Y29udGludWV9YT1zLnBvcCgpLGIoe3R5cGU6InRleHQiLHZhbHVlOnB9KSxhPXNbcy5sZW5ndGgtMV07Y29udGludWV9aWYocD09PVNFfHxwPT09QUV8fHA9PT1nRSl7bGV0IHY9cCx5O2ZvcihlLmtlZXBRdW90ZXMhPT0hMCYmKHA9IiIpO2Y8YyYmKHk9aCgpKTspe2lmKHk9PT1kbCl7cCs9eStoKCk7Y29udGludWV9aWYoeT09PXYpe2Uua2VlcFF1b3Rlcz09PSEwJiYocCs9eSk7YnJlYWt9cCs9eX1iKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpwfSk7Y29udGludWV9aWYocD09PXhFKXtkKys7bGV0IHY9by52YWx1ZSYmby52YWx1ZS5zbGljZSgtMSk9PT0iJCJ8fGEuZG9sbGFyPT09ITA7YT1iKHt0eXBlOiJicmFjZSIsb3BlbjohMCxjbG9zZTohMSxkb2xsYXI6dixkZXB0aDpkLGNvbW1hczowLHJhbmdlczowLG5vZGVzOltdfSkscy5wdXNoKGEpLGIoe3R5cGU6Im9wZW4iLHZhbHVlOnB9KTtjb250aW51ZX1pZihwPT09a0Upe2lmKGEudHlwZSE9PSJicmFjZSIpe2Ioe3R5cGU6InRleHQiLHZhbHVlOnB9KTtjb250aW51ZX1sZXQgdj0iY2xvc2UiO2E9cy5wb3AoKSxhLmNsb3NlPSEwLGIoe3R5cGU6dix2YWx1ZTpwfSksZC0tLGE9c1tzLmxlbmd0aC0xXTtjb250aW51ZX1pZihwPT09eUUmJmQ+MCl7aWYoYS5yYW5nZXM+MCl7YS5yYW5nZXM9MDtsZXQgdj1hLm5vZGVzLnNoaWZ0KCk7YS5ub2Rlcz1bdix7dHlwZToidGV4dCIsdmFsdWU6bUUoYSl9XX1iKHt0eXBlOiJjb21tYSIsdmFsdWU6cH0pLGEuY29tbWFzKys7Y29udGludWV9aWYocD09PWJFJiZkPjAmJmEuY29tbWFzPT09MCl7bGV0IHY9YS5ub2RlcztpZihkPT09MHx8di5sZW5ndGg9PT0wKXtiKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpwfSk7Y29udGludWV9aWYoby50eXBlPT09ImRvdCIpe2lmKGEucmFuZ2U9W10sby52YWx1ZSs9cCxvLnR5cGU9InJhbmdlIixhLm5vZGVzLmxlbmd0aCE9PTMmJmEubm9kZXMubGVuZ3RoIT09NSl7YS5pbnZhbGlkPSEwLGEucmFuZ2VzPTAsby50eXBlPSJ0ZXh0Ijtjb250aW51ZX1hLnJhbmdlcysrLGEuYXJncz1bXTtjb250aW51ZX1pZihvLnR5cGU9PT0icmFuZ2UiKXt2LnBvcCgpO2xldCB5PXZbdi5sZW5ndGgtMV07eS52YWx1ZSs9by52YWx1ZStwLG89eSxhLnJhbmdlcy0tO2NvbnRpbnVlfWIoe3R5cGU6ImRvdCIsdmFsdWU6cH0pO2NvbnRpbnVlfWIoe3R5cGU6InRleHQiLHZhbHVlOnB9KX1kbyBpZihhPXMucG9wKCksYS50eXBlIT09InJvb3QiKXthLm5vZGVzLmZvckVhY2godz0+e3cubm9kZXN8fCh3LnR5cGU9PT0ib3BlbiImJih3LmlzT3Blbj0hMCksdy50eXBlPT09ImNsb3NlIiYmKHcuaXNDbG9zZT0hMCksdy5ub2Rlc3x8KHcudHlwZT0idGV4dCIpLHcuaW52YWxpZD0hMCl9KTtsZXQgdj1zW3MubGVuZ3RoLTFdLHk9di5ub2Rlcy5pbmRleE9mKGEpO3Yubm9kZXMuc3BsaWNlKHksMSwuLi5hLm5vZGVzKX13aGlsZShzLmxlbmd0aD4wKTtyZXR1cm4gYih7dHlwZToiZW9zIn0pLG59O01tLmV4cG9ydHM9RUV9KTt2YXIgam09eCgoYTYsRm0pPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgQm09aHMoKSxPRT1PbSgpLFRFPVBtKCksUkU9Tm0oKSxMZT0ocixlPXt9KT0+e2xldCB0PVtdO2lmKEFycmF5LmlzQXJyYXkocikpZm9yKGxldCBpIG9mIHIpe2xldCBuPUxlLmNyZWF0ZShpLGUpO0FycmF5LmlzQXJyYXkobik/dC5wdXNoKC4uLm4pOnQucHVzaChuKX1lbHNlIHQ9W10uY29uY2F0KExlLmNyZWF0ZShyLGUpKTtyZXR1cm4gZSYmZS5leHBhbmQ9PT0hMCYmZS5ub2R1cGVzPT09ITAmJih0PVsuLi5uZXcgU2V0KHQpXSksdH07TGUucGFyc2U9KHIsZT17fSk9PlJFKHIsZSk7TGUuc3RyaW5naWZ5PShyLGU9e30pPT50eXBlb2Ygcj09InN0cmluZyI/Qm0oTGUucGFyc2UocixlKSxlKTpCbShyLGUpO0xlLmNvbXBpbGU9KHIsZT17fSk9Pih0eXBlb2Ygcj09InN0cmluZyImJihyPUxlLnBhcnNlKHIsZSkpLE9FKHIsZSkpO0xlLmV4cGFuZD0ocixlPXt9KT0+e3R5cGVvZiByPT0ic3RyaW5nIiYmKHI9TGUucGFyc2UocixlKSk7bGV0IHQ9VEUocixlKTtyZXR1cm4gZS5ub2VtcHR5PT09ITAmJih0PXQuZmlsdGVyKEJvb2xlYW4pKSxlLm5vZHVwZXM9PT0hMCYmKHQ9Wy4uLm5ldyBTZXQodCldKSx0fTtMZS5jcmVhdGU9KHIsZT17fSk9PnI9PT0iInx8ci5sZW5ndGg8Mz9bcl06ZS5leHBhbmQhPT0hMD9MZS5jb21waWxlKHIsZSk6TGUuZXhwYW5kKHIsZSk7Rm0uZXhwb3J0cz1MZX0pO3ZhciBEaT14KChvNixXbSk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBQRT0oZXQoKSxVciksYXQ9IlxcXFwvIix6bT1gW14ke2F0fV1gLHl0PSJcXC4iLElFPSJcXCsiLERFPSJcXD8iLHlzPSJcXC8iLHFFPSIoPz0uKSIsVW09IlteL10iLGhsPWAoPzoke3lzfXwkKWAsVm09YCg/Ol58JHt5c30pYCxtbD1gJHt5dH17MSwyfSR7aGx9YCwkRT1gKD8hJHt5dH0pYCxMRT1gKD8hJHtWbX0ke21sfSlgLE1FPWAoPyEke3l0fXswLDF9JHtobH0pYCxORT1gKD8hJHttbH0pYCxCRT1gW14uJHt5c31dYCxGRT1gJHtVbX0qP2AsSG09e0RPVF9MSVRFUkFMOnl0LFBMVVNfTElURVJBTDpJRSxRTUFSS19MSVRFUkFMOkRFLFNMQVNIX0xJVEVSQUw6eXMsT05FX0NIQVI6cUUsUU1BUks6VW0sRU5EX0FOQ0hPUjpobCxET1RTX1NMQVNIOm1sLE5PX0RPVDokRSxOT19ET1RTOkxFLE5PX0RPVF9TTEFTSDpNRSxOT19ET1RTX1NMQVNIOk5FLFFNQVJLX05PX0RPVDpCRSxTVEFSOkZFLFNUQVJUX0FOQ0hPUjpWbX0sakU9ey4uLkhtLFNMQVNIX0xJVEVSQUw6YFske2F0fV1gLFFNQVJLOnptLFNUQVI6YCR7em19Kj9gLERPVFNfU0xBU0g6YCR7eXR9ezEsMn0oPzpbJHthdH1dfCQpYCxOT19ET1Q6YCg/ISR7eXR9KWAsTk9fRE9UUzpgKD8hKD86XnxbJHthdH1dKSR7eXR9ezEsMn0oPzpbJHthdH1dfCQpKWAsTk9fRE9UX1NMQVNIOmAoPyEke3l0fXswLDF9KD86WyR7YXR9XXwkKSlgLE5PX0RPVFNfU0xBU0g6YCg/ISR7eXR9ezEsMn0oPzpbJHthdH1dfCQpKWAsUU1BUktfTk9fRE9UOmBbXi4ke2F0fV1gLFNUQVJUX0FOQ0hPUjpgKD86XnxbJHthdH1dKWAsRU5EX0FOQ0hPUjpgKD86WyR7YXR9XXwkKWB9LHpFPXthbG51bToiYS16QS1aMC05IixhbHBoYToiYS16QS1aIixhc2NpaToiXFx4MDAtXFx4N0YiLGJsYW5rOiIgXFx0IixjbnRybDoiXFx4MDAtXFx4MUZcXHg3RiIsZGlnaXQ6IjAtOSIsZ3JhcGg6IlxceDIxLVxceDdFIixsb3dlcjoiYS16IixwcmludDoiXFx4MjAtXFx4N0UgIixwdW5jdDoiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLHNwYWNlOiIgXFx0XFxyXFxuXFx2XFxmIix1cHBlcjoiQS1aIix3b3JkOiJBLVphLXowLTlfIix4ZGlnaXQ6IkEtRmEtZjAtOSJ9O1dtLmV4cG9ydHM9e01BWF9MRU5HVEg6MTAyNCo2NCxQT1NJWF9SRUdFWF9TT1VSQ0U6ekUsUkVHRVhfQkFDS1NMQVNIOi9cXCg/IVsqKz9eJHt9KHwpW1xdXSkvZyxSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUzovXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sUkVHRVhfU1BFQ0lBTF9DSEFSUzovWy0qKz8uXiR7fSh8KVtcXV0vLFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjovKFxcPykoKFxXKShcMyopKS9nLFJFR0VYX1NQRUNJQUxfQ0hBUlNfR0xPQkFMOi8oWy0qKz8uXiR7fSh8KVtcXV0pL2csUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSDovKD86XFsuKj9bXlxcXVxdfFxcKD89LikpL2csUkVQTEFDRU1FTlRTOnsiKioqIjoiKiIsIioqLyoqIjoiKioiLCIqKi8qKi8qKiI6IioqIn0sQ0hBUl8wOjQ4LENIQVJfOTo1NyxDSEFSX1VQUEVSQ0FTRV9BOjY1LENIQVJfTE9XRVJDQVNFX0E6OTcsQ0hBUl9VUFBFUkNBU0VfWjo5MCxDSEFSX0xPV0VSQ0FTRV9aOjEyMixDSEFSX0xFRlRfUEFSRU5USEVTRVM6NDAsQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzo0MSxDSEFSX0FTVEVSSVNLOjQyLENIQVJfQU1QRVJTQU5EOjM4LENIQVJfQVQ6NjQsQ0hBUl9CQUNLV0FSRF9TTEFTSDo5MixDSEFSX0NBUlJJQUdFX1JFVFVSTjoxMyxDSEFSX0NJUkNVTUZMRVhfQUNDRU5UOjk0LENIQVJfQ09MT046NTgsQ0hBUl9DT01NQTo0NCxDSEFSX0RPVDo0NixDSEFSX0RPVUJMRV9RVU9URTozNCxDSEFSX0VRVUFMOjYxLENIQVJfRVhDTEFNQVRJT05fTUFSSzozMyxDSEFSX0ZPUk1fRkVFRDoxMixDSEFSX0ZPUldBUkRfU0xBU0g6NDcsQ0hBUl9HUkFWRV9BQ0NFTlQ6OTYsQ0hBUl9IQVNIOjM1LENIQVJfSFlQSEVOX01JTlVTOjQ1LENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOjYwLENIQVJfTEVGVF9DVVJMWV9CUkFDRToxMjMsQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOjkxLENIQVJfTElORV9GRUVEOjEwLENIQVJfTk9fQlJFQUtfU1BBQ0U6MTYwLENIQVJfUEVSQ0VOVDozNyxDSEFSX1BMVVM6NDMsQ0hBUl9RVUVTVElPTl9NQVJLOjYzLENIQVJfUklHSFRfQU5HTEVfQlJBQ0tFVDo2MixDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOjEyNSxDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUOjkzLENIQVJfU0VNSUNPTE9OOjU5LENIQVJfU0lOR0xFX1FVT1RFOjM5LENIQVJfU1BBQ0U6MzIsQ0hBUl9UQUI6OSxDSEFSX1VOREVSU0NPUkU6OTUsQ0hBUl9WRVJUSUNBTF9MSU5FOjEyNCxDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTo2NTI3OSxTRVA6UEUuc2VwLGV4dGdsb2JDaGFycyhyKXtyZXR1cm57IiEiOnt0eXBlOiJuZWdhdGUiLG9wZW46Iig/Oig/ISg/OiIsY2xvc2U6YCkpJHtyLlNUQVJ9KWB9LCI/Ijp7dHlwZToicW1hcmsiLG9wZW46Iig/OiIsY2xvc2U6Iik/In0sIisiOnt0eXBlOiJwbHVzIixvcGVuOiIoPzoiLGNsb3NlOiIpKyJ9LCIqIjp7dHlwZToic3RhciIsb3BlbjoiKD86IixjbG9zZToiKSoifSwiQCI6e3R5cGU6ImF0IixvcGVuOiIoPzoiLGNsb3NlOiIpIn19fSxnbG9iQ2hhcnMocil7cmV0dXJuIHI9PT0hMD9qRTpIbX19fSk7dmFyIHFpPXgoUmU9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBVRT0oZXQoKSxVciksVkU9bS5wbGF0Zm9ybT09PSJ3aW4zMiIse1JFR0VYX0JBQ0tTTEFTSDpIRSxSRUdFWF9SRU1PVkVfQkFDS1NMQVNIOldFLFJFR0VYX1NQRUNJQUxfQ0hBUlM6R0UsUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6UUV9PURpKCk7UmUuaXNPYmplY3Q9cj0+ciE9PW51bGwmJnR5cGVvZiByPT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkocik7UmUuaGFzUmVnZXhDaGFycz1yPT5HRS50ZXN0KHIpO1JlLmlzUmVnZXhDaGFyPXI9PnIubGVuZ3RoPT09MSYmUmUuaGFzUmVnZXhDaGFycyhyKTtSZS5lc2NhcGVSZWdleD1yPT5yLnJlcGxhY2UoUUUsIlxcJDEiKTtSZS50b1Bvc2l4U2xhc2hlcz1yPT5yLnJlcGxhY2UoSEUsIi8iKTtSZS5yZW1vdmVCYWNrc2xhc2hlcz1yPT5yLnJlcGxhY2UoV0UsZT0+ZT09PSJcXCI/IiI6ZSk7UmUuc3VwcG9ydHNMb29rYmVoaW5kcz0oKT0+e2xldCByPW0udmVyc2lvbi5zbGljZSgxKS5zcGxpdCgiLiIpLm1hcChOdW1iZXIpO3JldHVybiByLmxlbmd0aD09PTMmJnJbMF0+PTl8fHJbMF09PT04JiZyWzFdPj0xMH07UmUuaXNXaW5kb3dzPXI9PnImJnR5cGVvZiByLndpbmRvd3M9PSJib29sZWFuIj9yLndpbmRvd3M6VkU9PT0hMHx8VUUuc2VwPT09IlxcIjtSZS5lc2NhcGVMYXN0PShyLGUsdCk9PntsZXQgaT1yLmxhc3RJbmRleE9mKGUsdCk7cmV0dXJuIGk9PT0tMT9yOnJbaS0xXT09PSJcXCI/UmUuZXNjYXBlTGFzdChyLGUsaS0xKTpgJHtyLnNsaWNlKDAsaSl9XFwke3Iuc2xpY2UoaSl9YH07UmUucmVtb3ZlUHJlZml4PShyLGU9e30pPT57bGV0IHQ9cjtyZXR1cm4gdC5zdGFydHNXaXRoKCIuLyIpJiYodD10LnNsaWNlKDIpLGUucHJlZml4PSIuLyIpLHR9O1JlLndyYXBPdXRwdXQ9KHIsZT17fSx0PXt9KT0+e2xldCBpPXQuY29udGFpbnM/IiI6Il4iLG49dC5jb250YWlucz8iIjoiJCIscz1gJHtpfSg/OiR7cn0pJHtufWA7cmV0dXJuIGUubmVnYXRlZD09PSEwJiYocz1gKD86Xig/ISR7c30pLiokKWApLHN9fSk7dmFyIGVnPXgoKHU2LEptKT0+e3UoKTsidXNlIHN0cmljdCI7dmFyIEdtPXFpKCkse0NIQVJfQVNURVJJU0s6Z2wsQ0hBUl9BVDpZRSxDSEFSX0JBQ0tXQVJEX1NMQVNIOiRpLENIQVJfQ09NTUE6S0UsQ0hBUl9ET1Q6eWwsQ0hBUl9FWENMQU1BVElPTl9NQVJLOmJsLENIQVJfRk9SV0FSRF9TTEFTSDpRbSxDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6d2wsQ0hBUl9MRUZUX1BBUkVOVEhFU0VTOnZsLENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVDpYRSxDSEFSX1BMVVM6WkUsQ0hBUl9RVUVTVElPTl9NQVJLOlltLENIQVJfUklHSFRfQ1VSTFlfQlJBQ0U6SkUsQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzpLbSxDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUOmUyfT1EaSgpLFhtPXI9PnI9PT1RbXx8cj09PSRpLFptPXI9PntyLmlzUHJlZml4IT09ITAmJihyLmRlcHRoPXIuaXNHbG9ic3Rhcj8xLzA6MSl9LHQyPShyLGUpPT57bGV0IHQ9ZXx8e30saT1yLmxlbmd0aC0xLG49dC5wYXJ0cz09PSEwfHx0LnNjYW5Ub0VuZD09PSEwLHM9W10sYT1bXSxvPVtdLGw9cixjPS0xLGY9MCxkPTAscD0hMSxoPSExLGI9ITEsdj0hMSx5PSExLHc9ITEsaz0hMSxTPSExLEU9ITEsVD0hMSxCPTAsTixSLEY9e3ZhbHVlOiIiLGRlcHRoOjAsaXNHbG9iOiExfSxZPSgpPT5jPj1pLF89KCk9PmwuY2hhckNvZGVBdChjKzEpLFE9KCk9PihOPVIsbC5jaGFyQ29kZUF0KCsrYykpO2Zvcig7YzxpOyl7Uj1RKCk7bGV0IGhlO2lmKFI9PT0kaSl7az1GLmJhY2tzbGFzaGVzPSEwLFI9USgpLFI9PT13bCYmKHc9ITApO2NvbnRpbnVlfWlmKHc9PT0hMHx8Uj09PXdsKXtmb3IoQisrO1koKSE9PSEwJiYoUj1RKCkpOyl7aWYoUj09PSRpKXtrPUYuYmFja3NsYXNoZXM9ITAsUSgpO2NvbnRpbnVlfWlmKFI9PT13bCl7QisrO2NvbnRpbnVlfWlmKHchPT0hMCYmUj09PXlsJiYoUj1RKCkpPT09eWwpe2lmKHA9Ri5pc0JyYWNlPSEwLGI9Ri5pc0dsb2I9ITAsVD0hMCxuPT09ITApY29udGludWU7YnJlYWt9aWYodyE9PSEwJiZSPT09S0Upe2lmKHA9Ri5pc0JyYWNlPSEwLGI9Ri5pc0dsb2I9ITAsVD0hMCxuPT09ITApY29udGludWU7YnJlYWt9aWYoUj09PUpFJiYoQi0tLEI9PT0wKSl7dz0hMSxwPUYuaXNCcmFjZT0hMCxUPSEwO2JyZWFrfX1pZihuPT09ITApY29udGludWU7YnJlYWt9aWYoUj09PVFtKXtpZihzLnB1c2goYyksYS5wdXNoKEYpLEY9e3ZhbHVlOiIiLGRlcHRoOjAsaXNHbG9iOiExfSxUPT09ITApY29udGludWU7aWYoTj09PXlsJiZjPT09ZisxKXtmKz0yO2NvbnRpbnVlfWQ9YysxO2NvbnRpbnVlfWlmKHQubm9leHQhPT0hMCYmKFI9PT1aRXx8Uj09PVlFfHxSPT09Z2x8fFI9PT1ZbXx8Uj09PWJsKT09PSEwJiZfKCk9PT12bCl7aWYoYj1GLmlzR2xvYj0hMCx2PUYuaXNFeHRnbG9iPSEwLFQ9ITAsUj09PWJsJiZjPT09ZiYmKEU9ITApLG49PT0hMCl7Zm9yKDtZKCkhPT0hMCYmKFI9USgpKTspe2lmKFI9PT0kaSl7az1GLmJhY2tzbGFzaGVzPSEwLFI9USgpO2NvbnRpbnVlfWlmKFI9PT1LbSl7Yj1GLmlzR2xvYj0hMCxUPSEwO2JyZWFrfX1jb250aW51ZX1icmVha31pZihSPT09Z2wpe2lmKE49PT1nbCYmKHk9Ri5pc0dsb2JzdGFyPSEwKSxiPUYuaXNHbG9iPSEwLFQ9ITAsbj09PSEwKWNvbnRpbnVlO2JyZWFrfWlmKFI9PT1ZbSl7aWYoYj1GLmlzR2xvYj0hMCxUPSEwLG49PT0hMCljb250aW51ZTticmVha31pZihSPT09WEUpe2Zvcig7WSgpIT09ITAmJihoZT1RKCkpOyl7aWYoaGU9PT0kaSl7az1GLmJhY2tzbGFzaGVzPSEwLFEoKTtjb250aW51ZX1pZihoZT09PWUyKXtoPUYuaXNCcmFja2V0PSEwLGI9Ri5pc0dsb2I9ITAsVD0hMDticmVha319aWYobj09PSEwKWNvbnRpbnVlO2JyZWFrfWlmKHQubm9uZWdhdGUhPT0hMCYmUj09PWJsJiZjPT09Zil7Uz1GLm5lZ2F0ZWQ9ITAsZisrO2NvbnRpbnVlfWlmKHQubm9wYXJlbiE9PSEwJiZSPT09dmwpe2lmKGI9Ri5pc0dsb2I9ITAsbj09PSEwKXtmb3IoO1koKSE9PSEwJiYoUj1RKCkpOyl7aWYoUj09PXZsKXtrPUYuYmFja3NsYXNoZXM9ITAsUj1RKCk7Y29udGludWV9aWYoUj09PUttKXtUPSEwO2JyZWFrfX1jb250aW51ZX1icmVha31pZihiPT09ITApe2lmKFQ9ITAsbj09PSEwKWNvbnRpbnVlO2JyZWFrfX10Lm5vZXh0PT09ITAmJih2PSExLGI9ITEpO2xldCBVPWwsbGU9IiIsQT0iIjtmPjAmJihsZT1sLnNsaWNlKDAsZiksbD1sLnNsaWNlKGYpLGQtPWYpLFUmJmI9PT0hMCYmZD4wPyhVPWwuc2xpY2UoMCxkKSxBPWwuc2xpY2UoZCkpOmI9PT0hMD8oVT0iIixBPWwpOlU9bCxVJiZVIT09IiImJlUhPT0iLyImJlUhPT1sJiZYbShVLmNoYXJDb2RlQXQoVS5sZW5ndGgtMSkpJiYoVT1VLnNsaWNlKDAsLTEpKSx0LnVuZXNjYXBlPT09ITAmJihBJiYoQT1HbS5yZW1vdmVCYWNrc2xhc2hlcyhBKSksVSYmaz09PSEwJiYoVT1HbS5yZW1vdmVCYWNrc2xhc2hlcyhVKSkpO2xldCBDPXtwcmVmaXg6bGUsaW5wdXQ6cixzdGFydDpmLGJhc2U6VSxnbG9iOkEsaXNCcmFjZTpwLGlzQnJhY2tldDpoLGlzR2xvYjpiLGlzRXh0Z2xvYjp2LGlzR2xvYnN0YXI6eSxuZWdhdGVkOlMsbmVnYXRlZEV4dGdsb2I6RX07aWYodC50b2tlbnM9PT0hMCYmKEMubWF4RGVwdGg9MCxYbShSKXx8YS5wdXNoKEYpLEMudG9rZW5zPWEpLHQucGFydHM9PT0hMHx8dC50b2tlbnM9PT0hMCl7bGV0IGhlO2ZvcihsZXQgVj0wO1Y8cy5sZW5ndGg7VisrKXtsZXQgRWU9aGU/aGUrMTpmLEllPXNbVl0sRGU9ci5zbGljZShFZSxJZSk7dC50b2tlbnMmJihWPT09MCYmZiE9PTA/KGFbVl0uaXNQcmVmaXg9ITAsYVtWXS52YWx1ZT1sZSk6YVtWXS52YWx1ZT1EZSxabShhW1ZdKSxDLm1heERlcHRoKz1hW1ZdLmRlcHRoKSwoViE9PTB8fERlIT09IiIpJiZvLnB1c2goRGUpLGhlPUllfWlmKGhlJiZoZSsxPHIubGVuZ3RoKXtsZXQgVj1yLnNsaWNlKGhlKzEpO28ucHVzaChWKSx0LnRva2VucyYmKGFbYS5sZW5ndGgtMV0udmFsdWU9VixabShhW2EubGVuZ3RoLTFdKSxDLm1heERlcHRoKz1hW2EubGVuZ3RoLTFdLmRlcHRoKX1DLnNsYXNoZXM9cyxDLnBhcnRzPW99cmV0dXJuIEN9O0ptLmV4cG9ydHM9dDJ9KTt2YXIgaWc9eCgoZjYscmcpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgYnM9RGkoKSxNZT1xaSgpLHtNQVhfTEVOR1RIOndzLFBPU0lYX1JFR0VYX1NPVVJDRTpyMixSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUzppMixSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUY6bjIsUkVQTEFDRU1FTlRTOnRnfT1icyxzMj0ocixlKT0+e2lmKHR5cGVvZiBlLmV4cGFuZFJhbmdlPT0iZnVuY3Rpb24iKXJldHVybiBlLmV4cGFuZFJhbmdlKC4uLnIsZSk7ci5zb3J0KCk7bGV0IHQ9YFske3Iuam9pbigiLSIpfV1gO3RyeXtuZXcgUmVnRXhwKHQpfWNhdGNoKGkpe3JldHVybiByLm1hcChuPT5NZS5lc2NhcGVSZWdleChuKSkuam9pbigiLi4iKX1yZXR1cm4gdH0sZ3I9KHIsZSk9PmBNaXNzaW5nICR7cn06ICIke2V9IiAtIHVzZSAiXFxcXCR7ZX0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2AseGw9KHIsZSk9PntpZih0eXBlb2YgciE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTtyPXRnW3JdfHxyO2xldCB0PXsuLi5lfSxpPXR5cGVvZiB0Lm1heExlbmd0aD09Im51bWJlciI/TWF0aC5taW4od3MsdC5tYXhMZW5ndGgpOndzLG49ci5sZW5ndGg7aWYobj5pKXRocm93IG5ldyBTeW50YXhFcnJvcihgSW5wdXQgbGVuZ3RoOiAke259LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7aX1gKTtsZXQgcz17dHlwZToiYm9zIix2YWx1ZToiIixvdXRwdXQ6dC5wcmVwZW5kfHwiIn0sYT1bc10sbz10LmNhcHR1cmU/IiI6Ij86IixsPU1lLmlzV2luZG93cyhlKSxjPWJzLmdsb2JDaGFycyhsKSxmPWJzLmV4dGdsb2JDaGFycyhjKSx7RE9UX0xJVEVSQUw6ZCxQTFVTX0xJVEVSQUw6cCxTTEFTSF9MSVRFUkFMOmgsT05FX0NIQVI6YixET1RTX1NMQVNIOnYsTk9fRE9UOnksTk9fRE9UX1NMQVNIOncsTk9fRE9UU19TTEFTSDprLFFNQVJLOlMsUU1BUktfTk9fRE9UOkUsU1RBUjpULFNUQVJUX0FOQ0hPUjpCfT1jLE49JD0+YCgke299KD86KD8hJHtCfSR7JC5kb3Q/djpkfSkuKSo/KWAsUj10LmRvdD8iIjp5LEY9dC5kb3Q/UzpFLFk9dC5iYXNoPT09ITA/Tih0KTpUO3QuY2FwdHVyZSYmKFk9YCgke1l9KWApLHR5cGVvZiB0Lm5vZXh0PT0iYm9vbGVhbiImJih0Lm5vZXh0Z2xvYj10Lm5vZXh0KTtsZXQgXz17aW5wdXQ6cixpbmRleDotMSxzdGFydDowLGRvdDp0LmRvdD09PSEwLGNvbnN1bWVkOiIiLG91dHB1dDoiIixwcmVmaXg6IiIsYmFja3RyYWNrOiExLG5lZ2F0ZWQ6ITEsYnJhY2tldHM6MCxicmFjZXM6MCxwYXJlbnM6MCxxdW90ZXM6MCxnbG9ic3RhcjohMSx0b2tlbnM6YX07cj1NZS5yZW1vdmVQcmVmaXgocixfKSxuPXIubGVuZ3RoO2xldCBRPVtdLFU9W10sbGU9W10sQT1zLEMsaGU9KCk9Pl8uaW5kZXg9PT1uLTEsVj1fLnBlZWs9KCQ9MSk9PnJbXy5pbmRleCskXSxFZT1fLmFkdmFuY2U9KCk9PnJbKytfLmluZGV4XXx8IiIsSWU9KCk9PnIuc2xpY2UoXy5pbmRleCsxKSxEZT0oJD0iIixhZT0wKT0+e18uY29uc3VtZWQrPSQsXy5pbmRleCs9YWV9LGppPSQ9PntfLm91dHB1dCs9JC5vdXRwdXQhPW51bGw/JC5vdXRwdXQ6JC52YWx1ZSxEZSgkLnZhbHVlKX0sSXY9KCk9PntsZXQgJD0xO2Zvcig7VigpPT09IiEiJiYoVigyKSE9PSIoInx8VigzKT09PSI/Iik7KUVlKCksXy5zdGFydCsrLCQrKztyZXR1cm4gJCUyPT0wPyExOihfLm5lZ2F0ZWQ9ITAsXy5zdGFydCsrLCEwKX0semk9JD0+e19bJF0rKyxsZS5wdXNoKCQpfSxGdD0kPT57X1skXS0tLGxlLnBvcCgpfSxXPSQ9PntpZihBLnR5cGU9PT0iZ2xvYnN0YXIiKXtsZXQgYWU9Xy5icmFjZXM+MCYmKCQudHlwZT09PSJjb21tYSJ8fCQudHlwZT09PSJicmFjZSIpLEk9JC5leHRnbG9iPT09ITB8fFEubGVuZ3RoJiYoJC50eXBlPT09InBpcGUifHwkLnR5cGU9PT0icGFyZW4iKTskLnR5cGUhPT0ic2xhc2giJiYkLnR5cGUhPT0icGFyZW4iJiYhYWUmJiFJJiYoXy5vdXRwdXQ9Xy5vdXRwdXQuc2xpY2UoMCwtQS5vdXRwdXQubGVuZ3RoKSxBLnR5cGU9InN0YXIiLEEudmFsdWU9IioiLEEub3V0cHV0PVksXy5vdXRwdXQrPUEub3V0cHV0KX1pZihRLmxlbmd0aCYmJC50eXBlIT09InBhcmVuIiYmKFFbUS5sZW5ndGgtMV0uaW5uZXIrPSQudmFsdWUpLCgkLnZhbHVlfHwkLm91dHB1dCkmJmppKCQpLEEmJkEudHlwZT09PSJ0ZXh0IiYmJC50eXBlPT09InRleHQiKXtBLnZhbHVlKz0kLnZhbHVlLEEub3V0cHV0PShBLm91dHB1dHx8IiIpKyQudmFsdWU7cmV0dXJufSQucHJldj1BLGEucHVzaCgkKSxBPSR9LFVpPSgkLGFlKT0+e2xldCBJPXsuLi5mW2FlXSxjb25kaXRpb25zOjEsaW5uZXI6IiJ9O0kucHJldj1BLEkucGFyZW5zPV8ucGFyZW5zLEkub3V0cHV0PV8ub3V0cHV0O2xldCBIPSh0LmNhcHR1cmU/IigiOiIiKStJLm9wZW47emkoInBhcmVucyIpLFcoe3R5cGU6JCx2YWx1ZTphZSxvdXRwdXQ6Xy5vdXRwdXQ/IiI6Yn0pLFcoe3R5cGU6InBhcmVuIixleHRnbG9iOiEwLHZhbHVlOkVlKCksb3V0cHV0Okh9KSxRLnB1c2goSSl9LER2PSQ9PntsZXQgYWU9JC5jbG9zZSsodC5jYXB0dXJlPyIpIjoiIiksSTtpZigkLnR5cGU9PT0ibmVnYXRlIil7bGV0IEg9WTtpZigkLmlubmVyJiYkLmlubmVyLmxlbmd0aD4xJiYkLmlubmVyLmluY2x1ZGVzKCIvIikmJihIPU4odCkpLChIIT09WXx8aGUoKXx8L15cKSskLy50ZXN0KEllKCkpKSYmKGFlPSQuY2xvc2U9YCkkKSkke0h9YCksJC5pbm5lci5pbmNsdWRlcygiKiIpJiYoST1JZSgpKSYmL15cLlteXFwvLl0rJC8udGVzdChJKSl7bGV0IGNlPXhsKEksey4uLmUsZmFzdHBhdGhzOiExfSkub3V0cHV0O2FlPSQuY2xvc2U9YCkke2NlfSkke0h9KWB9JC5wcmV2LnR5cGU9PT0iYm9zIiYmKF8ubmVnYXRlZEV4dGdsb2I9ITApfVcoe3R5cGU6InBhcmVuIixleHRnbG9iOiEwLHZhbHVlOkMsb3V0cHV0OmFlfSksRnQoInBhcmVucyIpfTtpZih0LmZhc3RwYXRocyE9PSExJiYhLyheWyohXXxbLygpW1xde30iXSkvLnRlc3Qocikpe2xldCAkPSExLGFlPXIucmVwbGFjZShuMiwoSSxILGNlLENlLHllLEJzKT0+Q2U9PT0iXFwiPygkPSEwLEkpOkNlPT09Ij8iP0g/SCtDZSsoeWU/Uy5yZXBlYXQoeWUubGVuZ3RoKToiIik6QnM9PT0wP0YrKHllP1MucmVwZWF0KHllLmxlbmd0aCk6IiIpOlMucmVwZWF0KGNlLmxlbmd0aCk6Q2U9PT0iLiI/ZC5yZXBlYXQoY2UubGVuZ3RoKTpDZT09PSIqIj9IP0grQ2UrKHllP1k6IiIpOlk6SD9JOmBcXCR7SX1gKTtyZXR1cm4gJD09PSEwJiYodC51bmVzY2FwZT09PSEwP2FlPWFlLnJlcGxhY2UoL1xcL2csIiIpOmFlPWFlLnJlcGxhY2UoL1xcKy9nLEk9PkkubGVuZ3RoJTI9PTA/IlxcXFwiOkk/IlxcIjoiIikpLGFlPT09ciYmdC5jb250YWlucz09PSEwPyhfLm91dHB1dD1yLF8pOihfLm91dHB1dD1NZS53cmFwT3V0cHV0KGFlLF8sZSksXyl9Zm9yKDshaGUoKTspe2lmKEM9RWUoKSxDPT09IlwwIiljb250aW51ZTtpZihDPT09IlxcIil7bGV0IEk9VigpO2lmKEk9PT0iLyImJnQuYmFzaCE9PSEwfHxJPT09Ii4ifHxJPT09IjsiKWNvbnRpbnVlO2lmKCFJKXtDKz0iXFwiLFcoe3R5cGU6InRleHQiLHZhbHVlOkN9KTtjb250aW51ZX1sZXQgSD0vXlxcKy8uZXhlYyhJZSgpKSxjZT0wO2lmKEgmJkhbMF0ubGVuZ3RoPjImJihjZT1IWzBdLmxlbmd0aCxfLmluZGV4Kz1jZSxjZSUyIT0wJiYoQys9IlxcIikpLHQudW5lc2NhcGU9PT0hMD9DPUVlKCk6Qys9RWUoKSxfLmJyYWNrZXRzPT09MCl7Vyh7dHlwZToidGV4dCIsdmFsdWU6Q30pO2NvbnRpbnVlfX1pZihfLmJyYWNrZXRzPjAmJihDIT09Il0ifHxBLnZhbHVlPT09IlsifHxBLnZhbHVlPT09IlteIikpe2lmKHQucG9zaXghPT0hMSYmQz09PSI6Iil7bGV0IEk9QS52YWx1ZS5zbGljZSgxKTtpZihJLmluY2x1ZGVzKCJbIikmJihBLnBvc2l4PSEwLEkuaW5jbHVkZXMoIjoiKSkpe2xldCBIPUEudmFsdWUubGFzdEluZGV4T2YoIlsiKSxjZT1BLnZhbHVlLnNsaWNlKDAsSCksQ2U9QS52YWx1ZS5zbGljZShIKzIpLHllPXIyW0NlXTtpZih5ZSl7QS52YWx1ZT1jZSt5ZSxfLmJhY2t0cmFjaz0hMCxFZSgpLCFzLm91dHB1dCYmYS5pbmRleE9mKEEpPT09MSYmKHMub3V0cHV0PWIpO2NvbnRpbnVlfX19KEM9PT0iWyImJlYoKSE9PSI6Inx8Qz09PSItIiYmVigpPT09Il0iKSYmKEM9YFxcJHtDfWApLEM9PT0iXSImJihBLnZhbHVlPT09IlsifHxBLnZhbHVlPT09IlteIikmJihDPWBcXCR7Q31gKSx0LnBvc2l4PT09ITAmJkM9PT0iISImJkEudmFsdWU9PT0iWyImJihDPSJeIiksQS52YWx1ZSs9QyxqaSh7dmFsdWU6Q30pO2NvbnRpbnVlfWlmKF8ucXVvdGVzPT09MSYmQyE9PSciJyl7Qz1NZS5lc2NhcGVSZWdleChDKSxBLnZhbHVlKz1DLGppKHt2YWx1ZTpDfSk7Y29udGludWV9aWYoQz09PSciJyl7Xy5xdW90ZXM9Xy5xdW90ZXM9PT0xPzA6MSx0LmtlZXBRdW90ZXM9PT0hMCYmVyh7dHlwZToidGV4dCIsdmFsdWU6Q30pO2NvbnRpbnVlfWlmKEM9PT0iKCIpe3ppKCJwYXJlbnMiKSxXKHt0eXBlOiJwYXJlbiIsdmFsdWU6Q30pO2NvbnRpbnVlfWlmKEM9PT0iKSIpe2lmKF8ucGFyZW5zPT09MCYmdC5zdHJpY3RCcmFja2V0cz09PSEwKXRocm93IG5ldyBTeW50YXhFcnJvcihncigib3BlbmluZyIsIigiKSk7bGV0IEk9UVtRLmxlbmd0aC0xXTtpZihJJiZfLnBhcmVucz09PUkucGFyZW5zKzEpe0R2KFEucG9wKCkpO2NvbnRpbnVlfVcoe3R5cGU6InBhcmVuIix2YWx1ZTpDLG91dHB1dDpfLnBhcmVucz8iKSI6IlxcKSJ9KSxGdCgicGFyZW5zIik7Y29udGludWV9aWYoQz09PSJbIil7aWYodC5ub2JyYWNrZXQ9PT0hMHx8IUllKCkuaW5jbHVkZXMoIl0iKSl7aWYodC5ub2JyYWNrZXQhPT0hMCYmdC5zdHJpY3RCcmFja2V0cz09PSEwKXRocm93IG5ldyBTeW50YXhFcnJvcihncigiY2xvc2luZyIsIl0iKSk7Qz1gXFwke0N9YH1lbHNlIHppKCJicmFja2V0cyIpO1coe3R5cGU6ImJyYWNrZXQiLHZhbHVlOkN9KTtjb250aW51ZX1pZihDPT09Il0iKXtpZih0Lm5vYnJhY2tldD09PSEwfHxBJiZBLnR5cGU9PT0iYnJhY2tldCImJkEudmFsdWUubGVuZ3RoPT09MSl7Vyh7dHlwZToidGV4dCIsdmFsdWU6QyxvdXRwdXQ6YFxcJHtDfWB9KTtjb250aW51ZX1pZihfLmJyYWNrZXRzPT09MCl7aWYodC5zdHJpY3RCcmFja2V0cz09PSEwKXRocm93IG5ldyBTeW50YXhFcnJvcihncigib3BlbmluZyIsIlsiKSk7Vyh7dHlwZToidGV4dCIsdmFsdWU6QyxvdXRwdXQ6YFxcJHtDfWB9KTtjb250aW51ZX1GdCgiYnJhY2tldHMiKTtsZXQgST1BLnZhbHVlLnNsaWNlKDEpO2lmKEEucG9zaXghPT0hMCYmSVswXT09PSJeIiYmIUkuaW5jbHVkZXMoIi8iKSYmKEM9YC8ke0N9YCksQS52YWx1ZSs9QyxqaSh7dmFsdWU6Q30pLHQubGl0ZXJhbEJyYWNrZXRzPT09ITF8fE1lLmhhc1JlZ2V4Q2hhcnMoSSkpY29udGludWU7bGV0IEg9TWUuZXNjYXBlUmVnZXgoQS52YWx1ZSk7aWYoXy5vdXRwdXQ9Xy5vdXRwdXQuc2xpY2UoMCwtQS52YWx1ZS5sZW5ndGgpLHQubGl0ZXJhbEJyYWNrZXRzPT09ITApe18ub3V0cHV0Kz1ILEEudmFsdWU9SDtjb250aW51ZX1BLnZhbHVlPWAoJHtvfSR7SH18JHtBLnZhbHVlfSlgLF8ub3V0cHV0Kz1BLnZhbHVlO2NvbnRpbnVlfWlmKEM9PT0ieyImJnQubm9icmFjZSE9PSEwKXt6aSgiYnJhY2VzIik7bGV0IEk9e3R5cGU6ImJyYWNlIix2YWx1ZTpDLG91dHB1dDoiKCIsb3V0cHV0SW5kZXg6Xy5vdXRwdXQubGVuZ3RoLHRva2Vuc0luZGV4Ol8udG9rZW5zLmxlbmd0aH07VS5wdXNoKEkpLFcoSSk7Y29udGludWV9aWYoQz09PSJ9Iil7bGV0IEk9VVtVLmxlbmd0aC0xXTtpZih0Lm5vYnJhY2U9PT0hMHx8IUkpe1coe3R5cGU6InRleHQiLHZhbHVlOkMsb3V0cHV0OkN9KTtjb250aW51ZX1sZXQgSD0iKSI7aWYoSS5kb3RzPT09ITApe2xldCBjZT1hLnNsaWNlKCksQ2U9W107Zm9yKGxldCB5ZT1jZS5sZW5ndGgtMTt5ZT49MCYmKGEucG9wKCksY2VbeWVdLnR5cGUhPT0iYnJhY2UiKTt5ZS0tKWNlW3llXS50eXBlIT09ImRvdHMiJiZDZS51bnNoaWZ0KGNlW3llXS52YWx1ZSk7SD1zMihDZSx0KSxfLmJhY2t0cmFjaz0hMH1pZihJLmNvbW1hIT09ITAmJkkuZG90cyE9PSEwKXtsZXQgY2U9Xy5vdXRwdXQuc2xpY2UoMCxJLm91dHB1dEluZGV4KSxDZT1fLnRva2Vucy5zbGljZShJLnRva2Vuc0luZGV4KTtJLnZhbHVlPUkub3V0cHV0PSJcXHsiLEM9SD0iXFx9IixfLm91dHB1dD1jZTtmb3IobGV0IHllIG9mIENlKV8ub3V0cHV0Kz15ZS5vdXRwdXR8fHllLnZhbHVlfVcoe3R5cGU6ImJyYWNlIix2YWx1ZTpDLG91dHB1dDpIfSksRnQoImJyYWNlcyIpLFUucG9wKCk7Y29udGludWV9aWYoQz09PSJ8Iil7US5sZW5ndGg+MCYmUVtRLmxlbmd0aC0xXS5jb25kaXRpb25zKyssVyh7dHlwZToidGV4dCIsdmFsdWU6Q30pO2NvbnRpbnVlfWlmKEM9PT0iLCIpe2xldCBJPUMsSD1VW1UubGVuZ3RoLTFdO0gmJmxlW2xlLmxlbmd0aC0xXT09PSJicmFjZXMiJiYoSC5jb21tYT0hMCxJPSJ8IiksVyh7dHlwZToiY29tbWEiLHZhbHVlOkMsb3V0cHV0Okl9KTtjb250aW51ZX1pZihDPT09Ii8iKXtpZihBLnR5cGU9PT0iZG90IiYmXy5pbmRleD09PV8uc3RhcnQrMSl7Xy5zdGFydD1fLmluZGV4KzEsXy5jb25zdW1lZD0iIixfLm91dHB1dD0iIixhLnBvcCgpLEE9cztjb250aW51ZX1XKHt0eXBlOiJzbGFzaCIsdmFsdWU6QyxvdXRwdXQ6aH0pO2NvbnRpbnVlfWlmKEM9PT0iLiIpe2lmKF8uYnJhY2VzPjAmJkEudHlwZT09PSJkb3QiKXtBLnZhbHVlPT09Ii4iJiYoQS5vdXRwdXQ9ZCk7bGV0IEk9VVtVLmxlbmd0aC0xXTtBLnR5cGU9ImRvdHMiLEEub3V0cHV0Kz1DLEEudmFsdWUrPUMsSS5kb3RzPSEwO2NvbnRpbnVlfWlmKF8uYnJhY2VzK18ucGFyZW5zPT09MCYmQS50eXBlIT09ImJvcyImJkEudHlwZSE9PSJzbGFzaCIpe1coe3R5cGU6InRleHQiLHZhbHVlOkMsb3V0cHV0OmR9KTtjb250aW51ZX1XKHt0eXBlOiJkb3QiLHZhbHVlOkMsb3V0cHV0OmR9KTtjb250aW51ZX1pZihDPT09Ij8iKXtpZighKEEmJkEudmFsdWU9PT0iKCIpJiZ0Lm5vZXh0Z2xvYiE9PSEwJiZWKCk9PT0iKCImJlYoMikhPT0iPyIpe1VpKCJxbWFyayIsQyk7Y29udGludWV9aWYoQSYmQS50eXBlPT09InBhcmVuIil7bGV0IEg9VigpLGNlPUM7aWYoSD09PSI8IiYmIU1lLnN1cHBvcnRzTG9va2JlaGluZHMoKSl0aHJvdyBuZXcgRXJyb3IoIk5vZGUuanMgdjEwIG9yIGhpZ2hlciBpcyByZXF1aXJlZCBmb3IgcmVnZXggbG9va2JlaGluZHMiKTsoQS52YWx1ZT09PSIoIiYmIS9bIT08Ol0vLnRlc3QoSCl8fEg9PT0iPCImJiEvPChbIT1dfFx3Kz4pLy50ZXN0KEllKCkpKSYmKGNlPWBcXCR7Q31gKSxXKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpDLG91dHB1dDpjZX0pO2NvbnRpbnVlfWlmKHQuZG90IT09ITAmJihBLnR5cGU9PT0ic2xhc2gifHxBLnR5cGU9PT0iYm9zIikpe1coe3R5cGU6InFtYXJrIix2YWx1ZTpDLG91dHB1dDpFfSk7Y29udGludWV9Vyh7dHlwZToicW1hcmsiLHZhbHVlOkMsb3V0cHV0OlN9KTtjb250aW51ZX1pZihDPT09IiEiKXtpZih0Lm5vZXh0Z2xvYiE9PSEwJiZWKCk9PT0iKCImJihWKDIpIT09Ij8ifHwhL1shPTw6XS8udGVzdChWKDMpKSkpe1VpKCJuZWdhdGUiLEMpO2NvbnRpbnVlfWlmKHQubm9uZWdhdGUhPT0hMCYmXy5pbmRleD09PTApe0l2KCk7Y29udGludWV9fWlmKEM9PT0iKyIpe2lmKHQubm9leHRnbG9iIT09ITAmJlYoKT09PSIoIiYmVigyKSE9PSI/Iil7VWkoInBsdXMiLEMpO2NvbnRpbnVlfWlmKEEmJkEudmFsdWU9PT0iKCJ8fHQucmVnZXg9PT0hMSl7Vyh7dHlwZToicGx1cyIsdmFsdWU6QyxvdXRwdXQ6cH0pO2NvbnRpbnVlfWlmKEEmJihBLnR5cGU9PT0iYnJhY2tldCJ8fEEudHlwZT09PSJwYXJlbiJ8fEEudHlwZT09PSJicmFjZSIpfHxfLnBhcmVucz4wKXtXKHt0eXBlOiJwbHVzIix2YWx1ZTpDfSk7Y29udGludWV9Vyh7dHlwZToicGx1cyIsdmFsdWU6cH0pO2NvbnRpbnVlfWlmKEM9PT0iQCIpe2lmKHQubm9leHRnbG9iIT09ITAmJlYoKT09PSIoIiYmVigyKSE9PSI/Iil7Vyh7dHlwZToiYXQiLGV4dGdsb2I6ITAsdmFsdWU6QyxvdXRwdXQ6IiJ9KTtjb250aW51ZX1XKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpDfSk7Y29udGludWV9aWYoQyE9PSIqIil7KEM9PT0iJCJ8fEM9PT0iXiIpJiYoQz1gXFwke0N9YCk7bGV0IEk9aTIuZXhlYyhJZSgpKTtJJiYoQys9SVswXSxfLmluZGV4Kz1JWzBdLmxlbmd0aCksVyh7dHlwZToidGV4dCIsdmFsdWU6Q30pO2NvbnRpbnVlfWlmKEEmJihBLnR5cGU9PT0iZ2xvYnN0YXIifHxBLnN0YXI9PT0hMCkpe0EudHlwZT0ic3RhciIsQS5zdGFyPSEwLEEudmFsdWUrPUMsQS5vdXRwdXQ9WSxfLmJhY2t0cmFjaz0hMCxfLmdsb2JzdGFyPSEwLERlKEMpO2NvbnRpbnVlfWxldCAkPUllKCk7aWYodC5ub2V4dGdsb2IhPT0hMCYmL15cKFteP10vLnRlc3QoJCkpe1VpKCJzdGFyIixDKTtjb250aW51ZX1pZihBLnR5cGU9PT0ic3RhciIpe2lmKHQubm9nbG9ic3Rhcj09PSEwKXtEZShDKTtjb250aW51ZX1sZXQgST1BLnByZXYsSD1JLnByZXYsY2U9SS50eXBlPT09InNsYXNoInx8SS50eXBlPT09ImJvcyIsQ2U9SCYmKEgudHlwZT09PSJzdGFyInx8SC50eXBlPT09Imdsb2JzdGFyIik7aWYodC5iYXNoPT09ITAmJighY2V8fCRbMF0mJiRbMF0hPT0iLyIpKXtXKHt0eXBlOiJzdGFyIix2YWx1ZTpDLG91dHB1dDoiIn0pO2NvbnRpbnVlfWxldCB5ZT1fLmJyYWNlcz4wJiYoSS50eXBlPT09ImNvbW1hInx8SS50eXBlPT09ImJyYWNlIiksQnM9US5sZW5ndGgmJihJLnR5cGU9PT0icGlwZSJ8fEkudHlwZT09PSJwYXJlbiIpO2lmKCFjZSYmSS50eXBlIT09InBhcmVuIiYmIXllJiYhQnMpe1coe3R5cGU6InN0YXIiLHZhbHVlOkMsb3V0cHV0OiIifSk7Y29udGludWV9Zm9yKDskLnNsaWNlKDAsMyk9PT0iLyoqIjspe2xldCBWaT1yW18uaW5kZXgrNF07aWYoVmkmJlZpIT09Ii8iKWJyZWFrOyQ9JC5zbGljZSgzKSxEZSgiLyoqIiwzKX1pZihJLnR5cGU9PT0iYm9zIiYmaGUoKSl7QS50eXBlPSJnbG9ic3RhciIsQS52YWx1ZSs9QyxBLm91dHB1dD1OKHQpLF8ub3V0cHV0PUEub3V0cHV0LF8uZ2xvYnN0YXI9ITAsRGUoQyk7Y29udGludWV9aWYoSS50eXBlPT09InNsYXNoIiYmSS5wcmV2LnR5cGUhPT0iYm9zIiYmIUNlJiZoZSgpKXtfLm91dHB1dD1fLm91dHB1dC5zbGljZSgwLC0oSS5vdXRwdXQrQS5vdXRwdXQpLmxlbmd0aCksSS5vdXRwdXQ9YCg/OiR7SS5vdXRwdXR9YCxBLnR5cGU9Imdsb2JzdGFyIixBLm91dHB1dD1OKHQpKyh0LnN0cmljdFNsYXNoZXM/IikiOiJ8JCkiKSxBLnZhbHVlKz1DLF8uZ2xvYnN0YXI9ITAsXy5vdXRwdXQrPUkub3V0cHV0K0Eub3V0cHV0LERlKEMpO2NvbnRpbnVlfWlmKEkudHlwZT09PSJzbGFzaCImJkkucHJldi50eXBlIT09ImJvcyImJiRbMF09PT0iLyIpe2xldCBWaT0kWzFdIT09dm9pZCAwPyJ8JCI6IiI7Xy5vdXRwdXQ9Xy5vdXRwdXQuc2xpY2UoMCwtKEkub3V0cHV0K0Eub3V0cHV0KS5sZW5ndGgpLEkub3V0cHV0PWAoPzoke0kub3V0cHV0fWAsQS50eXBlPSJnbG9ic3RhciIsQS5vdXRwdXQ9YCR7Tih0KX0ke2h9fCR7aH0ke1ZpfSlgLEEudmFsdWUrPUMsXy5vdXRwdXQrPUkub3V0cHV0K0Eub3V0cHV0LF8uZ2xvYnN0YXI9ITAsRGUoQytFZSgpKSxXKHt0eXBlOiJzbGFzaCIsdmFsdWU6Ii8iLG91dHB1dDoiIn0pO2NvbnRpbnVlfWlmKEkudHlwZT09PSJib3MiJiYkWzBdPT09Ii8iKXtBLnR5cGU9Imdsb2JzdGFyIixBLnZhbHVlKz1DLEEub3V0cHV0PWAoPzpefCR7aH18JHtOKHQpfSR7aH0pYCxfLm91dHB1dD1BLm91dHB1dCxfLmdsb2JzdGFyPSEwLERlKEMrRWUoKSksVyh7dHlwZToic2xhc2giLHZhbHVlOiIvIixvdXRwdXQ6IiJ9KTtjb250aW51ZX1fLm91dHB1dD1fLm91dHB1dC5zbGljZSgwLC1BLm91dHB1dC5sZW5ndGgpLEEudHlwZT0iZ2xvYnN0YXIiLEEub3V0cHV0PU4odCksQS52YWx1ZSs9QyxfLm91dHB1dCs9QS5vdXRwdXQsXy5nbG9ic3Rhcj0hMCxEZShDKTtjb250aW51ZX1sZXQgYWU9e3R5cGU6InN0YXIiLHZhbHVlOkMsb3V0cHV0Oll9O2lmKHQuYmFzaD09PSEwKXthZS5vdXRwdXQ9Ii4qPyIsKEEudHlwZT09PSJib3MifHxBLnR5cGU9PT0ic2xhc2giKSYmKGFlLm91dHB1dD1SK2FlLm91dHB1dCksVyhhZSk7Y29udGludWV9aWYoQSYmKEEudHlwZT09PSJicmFja2V0Inx8QS50eXBlPT09InBhcmVuIikmJnQucmVnZXg9PT0hMCl7YWUub3V0cHV0PUMsVyhhZSk7Y29udGludWV9KF8uaW5kZXg9PT1fLnN0YXJ0fHxBLnR5cGU9PT0ic2xhc2gifHxBLnR5cGU9PT0iZG90IikmJihBLnR5cGU9PT0iZG90Ij8oXy5vdXRwdXQrPXcsQS5vdXRwdXQrPXcpOnQuZG90PT09ITA/KF8ub3V0cHV0Kz1rLEEub3V0cHV0Kz1rKTooXy5vdXRwdXQrPVIsQS5vdXRwdXQrPVIpLFYoKSE9PSIqIiYmKF8ub3V0cHV0Kz1iLEEub3V0cHV0Kz1iKSksVyhhZSl9Zm9yKDtfLmJyYWNrZXRzPjA7KXtpZih0LnN0cmljdEJyYWNrZXRzPT09ITApdGhyb3cgbmV3IFN5bnRheEVycm9yKGdyKCJjbG9zaW5nIiwiXSIpKTtfLm91dHB1dD1NZS5lc2NhcGVMYXN0KF8ub3V0cHV0LCJbIiksRnQoImJyYWNrZXRzIil9Zm9yKDtfLnBhcmVucz4wOyl7aWYodC5zdHJpY3RCcmFja2V0cz09PSEwKXRocm93IG5ldyBTeW50YXhFcnJvcihncigiY2xvc2luZyIsIikiKSk7Xy5vdXRwdXQ9TWUuZXNjYXBlTGFzdChfLm91dHB1dCwiKCIpLEZ0KCJwYXJlbnMiKX1mb3IoO18uYnJhY2VzPjA7KXtpZih0LnN0cmljdEJyYWNrZXRzPT09ITApdGhyb3cgbmV3IFN5bnRheEVycm9yKGdyKCJjbG9zaW5nIiwifSIpKTtfLm91dHB1dD1NZS5lc2NhcGVMYXN0KF8ub3V0cHV0LCJ7IiksRnQoImJyYWNlcyIpfWlmKHQuc3RyaWN0U2xhc2hlcyE9PSEwJiYoQS50eXBlPT09InN0YXIifHxBLnR5cGU9PT0iYnJhY2tldCIpJiZXKHt0eXBlOiJtYXliZV9zbGFzaCIsdmFsdWU6IiIsb3V0cHV0OmAke2h9P2B9KSxfLmJhY2t0cmFjaz09PSEwKXtfLm91dHB1dD0iIjtmb3IobGV0ICQgb2YgXy50b2tlbnMpXy5vdXRwdXQrPSQub3V0cHV0IT1udWxsPyQub3V0cHV0OiQudmFsdWUsJC5zdWZmaXgmJihfLm91dHB1dCs9JC5zdWZmaXgpfXJldHVybiBffTt4bC5mYXN0cGF0aHM9KHIsZSk9PntsZXQgdD17Li4uZX0saT10eXBlb2YgdC5tYXhMZW5ndGg9PSJudW1iZXIiP01hdGgubWluKHdzLHQubWF4TGVuZ3RoKTp3cyxuPXIubGVuZ3RoO2lmKG4+aSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke2l9YCk7cj10Z1tyXXx8cjtsZXQgcz1NZS5pc1dpbmRvd3MoZSkse0RPVF9MSVRFUkFMOmEsU0xBU0hfTElURVJBTDpvLE9ORV9DSEFSOmwsRE9UU19TTEFTSDpjLE5PX0RPVDpmLE5PX0RPVFM6ZCxOT19ET1RTX1NMQVNIOnAsU1RBUjpoLFNUQVJUX0FOQ0hPUjpifT1icy5nbG9iQ2hhcnMocyksdj10LmRvdD9kOmYseT10LmRvdD9wOmYsdz10LmNhcHR1cmU/IiI6Ij86IixrPXtuZWdhdGVkOiExLHByZWZpeDoiIn0sUz10LmJhc2g9PT0hMD8iLio/IjpoO3QuY2FwdHVyZSYmKFM9YCgke1N9KWApO2xldCBFPVI9PlIubm9nbG9ic3Rhcj09PSEwP1M6YCgke3d9KD86KD8hJHtifSR7Ui5kb3Q/YzphfSkuKSo/KWAsVD1SPT57c3dpdGNoKFIpe2Nhc2UiKiI6cmV0dXJuYCR7dn0ke2x9JHtTfWA7Y2FzZSIuKiI6cmV0dXJuYCR7YX0ke2x9JHtTfWA7Y2FzZSIqLioiOnJldHVybmAke3Z9JHtTfSR7YX0ke2x9JHtTfWA7Y2FzZSIqLyoiOnJldHVybmAke3Z9JHtTfSR7b30ke2x9JHt5fSR7U31gO2Nhc2UiKioiOnJldHVybiB2K0UodCk7Y2FzZSIqKi8qIjpyZXR1cm5gKD86JHt2fSR7RSh0KX0ke299KT8ke3l9JHtsfSR7U31gO2Nhc2UiKiovKi4qIjpyZXR1cm5gKD86JHt2fSR7RSh0KX0ke299KT8ke3l9JHtTfSR7YX0ke2x9JHtTfWA7Y2FzZSIqKi8uKiI6cmV0dXJuYCg/OiR7dn0ke0UodCl9JHtvfSk/JHthfSR7bH0ke1N9YDtkZWZhdWx0OntsZXQgRj0vXiguKj8pXC4oXHcrKSQvLmV4ZWMoUik7aWYoIUYpcmV0dXJuO2xldCBZPVQoRlsxXSk7cmV0dXJuIFk/WSthK0ZbMl06dm9pZCAwfX19LEI9TWUucmVtb3ZlUHJlZml4KHIsayksTj1UKEIpO3JldHVybiBOJiZ0LnN0cmljdFNsYXNoZXMhPT0hMCYmKE4rPWAke299P2ApLE59O3JnLmV4cG9ydHM9eGx9KTt2YXIgc2c9eCgoYzYsbmcpPT57dSgpOyJ1c2Ugc3RyaWN0Ijt2YXIgYTI9KGV0KCksVXIpLG8yPWVnKCksa2w9aWcoKSxTbD1xaSgpLGwyPURpKCksdTI9cj0+ciYmdHlwZW9mIHI9PSJvYmplY3QiJiYhQXJyYXkuaXNBcnJheShyKSxkZT0ocixlLHQ9ITEpPT57aWYoQXJyYXkuaXNBcnJheShyKSl7bGV0IGY9ci5tYXAocD0+ZGUocCxlLHQpKTtyZXR1cm4gcD0+e2ZvcihsZXQgaCBvZiBmKXtsZXQgYj1oKHApO2lmKGIpcmV0dXJuIGJ9cmV0dXJuITF9fWxldCBpPXUyKHIpJiZyLnRva2VucyYmci5pbnB1dDtpZihyPT09IiJ8fHR5cGVvZiByIT0ic3RyaW5nIiYmIWkpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgcGF0dGVybiB0byBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKTtsZXQgbj1lfHx7fSxzPVNsLmlzV2luZG93cyhlKSxhPWk/ZGUuY29tcGlsZVJlKHIsZSk6ZGUubWFrZVJlKHIsZSwhMSwhMCksbz1hLnN0YXRlO2RlbGV0ZSBhLnN0YXRlO2xldCBsPSgpPT4hMTtpZihuLmlnbm9yZSl7bGV0IGY9ey4uLmUsaWdub3JlOm51bGwsb25NYXRjaDpudWxsLG9uUmVzdWx0Om51bGx9O2w9ZGUobi5pZ25vcmUsZix0KX1sZXQgYz0oZixkPSExKT0+e2xldHtpc01hdGNoOnAsbWF0Y2g6aCxvdXRwdXQ6Yn09ZGUudGVzdChmLGEsZSx7Z2xvYjpyLHBvc2l4OnN9KSx2PXtnbG9iOnIsc3RhdGU6byxyZWdleDphLHBvc2l4OnMsaW5wdXQ6ZixvdXRwdXQ6YixtYXRjaDpoLGlzTWF0Y2g6cH07cmV0dXJuIHR5cGVvZiBuLm9uUmVzdWx0PT0iZnVuY3Rpb24iJiZuLm9uUmVzdWx0KHYpLHA9PT0hMT8odi5pc01hdGNoPSExLGQ/djohMSk6bChmKT8odHlwZW9mIG4ub25JZ25vcmU9PSJmdW5jdGlvbiImJm4ub25JZ25vcmUodiksdi5pc01hdGNoPSExLGQ/djohMSk6KHR5cGVvZiBuLm9uTWF0Y2g9PSJmdW5jdGlvbiImJm4ub25NYXRjaCh2KSxkP3Y6ITApfTtyZXR1cm4gdCYmKGMuc3RhdGU9byksY307ZGUudGVzdD0ocixlLHQse2dsb2I6aSxwb3NpeDpufT17fSk9PntpZih0eXBlb2YgciE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgaW5wdXQgdG8gYmUgYSBzdHJpbmciKTtpZihyPT09IiIpcmV0dXJue2lzTWF0Y2g6ITEsb3V0cHV0OiIifTtsZXQgcz10fHx7fSxhPXMuZm9ybWF0fHwobj9TbC50b1Bvc2l4U2xhc2hlczpudWxsKSxvPXI9PT1pLGw9byYmYT9hKHIpOnI7cmV0dXJuIG89PT0hMSYmKGw9YT9hKHIpOnIsbz1sPT09aSksKG89PT0hMXx8cy5jYXB0dXJlPT09ITApJiYocy5tYXRjaEJhc2U9PT0hMHx8cy5iYXNlbmFtZT09PSEwP289ZGUubWF0Y2hCYXNlKHIsZSx0LG4pOm89ZS5leGVjKGwpKSx7aXNNYXRjaDpCb29sZWFuKG8pLG1hdGNoOm8sb3V0cHV0Omx9fTtkZS5tYXRjaEJhc2U9KHIsZSx0LGk9U2wuaXNXaW5kb3dzKHQpKT0+KGUgaW5zdGFuY2VvZiBSZWdFeHA/ZTpkZS5tYWtlUmUoZSx0KSkudGVzdChhMi5iYXNlbmFtZShyKSk7ZGUuaXNNYXRjaD0ocixlLHQpPT5kZShlLHQpKHIpO2RlLnBhcnNlPShyLGUpPT5BcnJheS5pc0FycmF5KHIpP3IubWFwKHQ9PmRlLnBhcnNlKHQsZSkpOmtsKHIsey4uLmUsZmFzdHBhdGhzOiExfSk7ZGUuc2Nhbj0ocixlKT0+bzIocixlKTtkZS5jb21waWxlUmU9KHIsZSx0PSExLGk9ITEpPT57aWYodD09PSEwKXJldHVybiByLm91dHB1dDtsZXQgbj1lfHx7fSxzPW4uY29udGFpbnM/IiI6Il4iLGE9bi5jb250YWlucz8iIjoiJCIsbz1gJHtzfSg/OiR7ci5vdXRwdXR9KSR7YX1gO3ImJnIubmVnYXRlZD09PSEwJiYobz1gXig/ISR7b30pLiokYCk7bGV0IGw9ZGUudG9SZWdleChvLGUpO3JldHVybiBpPT09ITAmJihsLnN0YXRlPXIpLGx9O2RlLm1ha2VSZT0ocixlPXt9LHQ9ITEsaT0hMSk9PntpZighcnx8dHlwZW9mIHIhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgbm9uLWVtcHR5IHN0cmluZyIpO2xldCBuPXtuZWdhdGVkOiExLGZhc3RwYXRoczohMH07cmV0dXJuIGUuZmFzdHBhdGhzIT09ITEmJihyWzBdPT09Ii4ifHxyWzBdPT09IioiKSYmKG4ub3V0cHV0PWtsLmZhc3RwYXRocyhyLGUpKSxuLm91dHB1dHx8KG49a2wocixlKSksZGUuY29tcGlsZVJlKG4sZSx0LGkpfTtkZS50b1JlZ2V4PShyLGUpPT57dHJ5e2xldCB0PWV8fHt9O3JldHVybiBuZXcgUmVnRXhwKHIsdC5mbGFnc3x8KHQubm9jYXNlPyJpIjoiIikpfWNhdGNoKHQpe2lmKGUmJmUuZGVidWc9PT0hMCl0aHJvdyB0O3JldHVybi8kXi99fTtkZS5jb25zdGFudHM9bDI7bmcuZXhwb3J0cz1kZX0pO3ZhciBvZz14KChwNixhZyk9Pnt1KCk7InVzZSBzdHJpY3QiO2FnLmV4cG9ydHM9c2coKX0pO3ZhciBkZz14KChkNixwZyk9Pnt1KCk7InVzZSBzdHJpY3QiO3ZhciBsZz0oRm4oKSxCbiksdWc9am0oKSxvdD1vZygpLEFsPXFpKCksZmc9cj0+cj09PSIifHxyPT09Ii4vIixjZz1yPT57bGV0IGU9ci5pbmRleE9mKCJ7Iik7cmV0dXJuIGU+LTEmJnIuaW5kZXhPZigifSIsZSk+LTF9LG9lPShyLGUsdCk9PntlPVtdLmNvbmNhdChlKSxyPVtdLmNvbmNhdChyKTtsZXQgaT1uZXcgU2V0LG49bmV3IFNldCxzPW5ldyBTZXQsYT0wLG89Zj0+e3MuYWRkKGYub3V0cHV0KSx0JiZ0Lm9uUmVzdWx0JiZ0Lm9uUmVzdWx0KGYpfTtmb3IobGV0IGY9MDtmPGUubGVuZ3RoO2YrKyl7bGV0IGQ9b3QoU3RyaW5nKGVbZl0pLHsuLi50LG9uUmVzdWx0Om99LCEwKSxwPWQuc3RhdGUubmVnYXRlZHx8ZC5zdGF0ZS5uZWdhdGVkRXh0Z2xvYjtwJiZhKys7Zm9yKGxldCBoIG9mIHIpe2xldCBiPWQoaCwhMCk7IShwPyFiLmlzTWF0Y2g6Yi5pc01hdGNoKXx8KHA/aS5hZGQoYi5vdXRwdXQpOihpLmRlbGV0ZShiLm91dHB1dCksbi5hZGQoYi5vdXRwdXQpKSl9fWxldCBjPShhPT09ZS5sZW5ndGg/Wy4uLnNdOlsuLi5uXSkuZmlsdGVyKGY9PiFpLmhhcyhmKSk7aWYodCYmYy5sZW5ndGg9PT0wKXtpZih0LmZhaWxnbG9iPT09ITApdGhyb3cgbmV3IEVycm9yKGBObyBtYXRjaGVzIGZvdW5kIGZvciAiJHtlLmpvaW4oIiwgIil9ImApO2lmKHQubm9udWxsPT09ITB8fHQubnVsbGdsb2I9PT0hMClyZXR1cm4gdC51bmVzY2FwZT9lLm1hcChmPT5mLnJlcGxhY2UoL1xcL2csIiIpKTplfXJldHVybiBjfTtvZS5tYXRjaD1vZTtvZS5tYXRjaGVyPShyLGUpPT5vdChyLGUpO29lLmlzTWF0Y2g9KHIsZSx0KT0+b3QoZSx0KShyKTtvZS5hbnk9b2UuaXNNYXRjaDtvZS5ub3Q9KHIsZSx0PXt9KT0+e2U9W10uY29uY2F0KGUpLm1hcChTdHJpbmcpO2xldCBpPW5ldyBTZXQsbj1bXSxzPW89Pnt0Lm9uUmVzdWx0JiZ0Lm9uUmVzdWx0KG8pLG4ucHVzaChvLm91dHB1dCl9LGE9bmV3IFNldChvZShyLGUsey4uLnQsb25SZXN1bHQ6c30pKTtmb3IobGV0IG8gb2YgbilhLmhhcyhvKXx8aS5hZGQobyk7cmV0dXJuWy4uLmldfTtvZS5jb250YWlucz0ocixlLHQpPT57aWYodHlwZW9mIHIhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIGEgc3RyaW5nOiAiJHtsZy5pbnNwZWN0KHIpfSJgKTtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlLnNvbWUoaT0+b2UuY29udGFpbnMocixpLHQpKTtpZih0eXBlb2YgZT09InN0cmluZyIpe2lmKGZnKHIpfHxmZyhlKSlyZXR1cm4hMTtpZihyLmluY2x1ZGVzKGUpfHxyLnN0YXJ0c1dpdGgoIi4vIikmJnIuc2xpY2UoMikuaW5jbHVkZXMoZSkpcmV0dXJuITB9cmV0dXJuIG9lLmlzTWF0Y2gocixlLHsuLi50LGNvbnRhaW5zOiEwfSl9O29lLm1hdGNoS2V5cz0ocixlLHQpPT57aWYoIUFsLmlzT2JqZWN0KHIpKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHRoZSBmaXJzdCBhcmd1bWVudCB0byBiZSBhbiBvYmplY3QiKTtsZXQgaT1vZShPYmplY3Qua2V5cyhyKSxlLHQpLG49e307Zm9yKGxldCBzIG9mIGkpbltzXT1yW3NdO3JldHVybiBufTtvZS5zb21lPShyLGUsdCk9PntsZXQgaT1bXS5jb25jYXQocik7Zm9yKGxldCBuIG9mW10uY29uY2F0KGUpKXtsZXQgcz1vdChTdHJpbmcobiksdCk7aWYoaS5zb21lKGE9PnMoYSkpKXJldHVybiEwfXJldHVybiExfTtvZS5ldmVyeT0ocixlLHQpPT57bGV0IGk9W10uY29uY2F0KHIpO2ZvcihsZXQgbiBvZltdLmNvbmNhdChlKSl7bGV0IHM9b3QoU3RyaW5nKG4pLHQpO2lmKCFpLmV2ZXJ5KGE9PnMoYSkpKXJldHVybiExfXJldHVybiEwfTtvZS5hbGw9KHIsZSx0KT0+e2lmKHR5cGVvZiByIT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCBhIHN0cmluZzogIiR7bGcuaW5zcGVjdChyKX0iYCk7cmV0dXJuW10uY29uY2F0KGUpLmV2ZXJ5KGk9Pm90KGksdCkocikpfTtvZS5jYXB0dXJlPShyLGUsdCk9PntsZXQgaT1BbC5pc1dpbmRvd3ModCkscz1vdC5tYWtlUmUoU3RyaW5nKHIpLHsuLi50LGNhcHR1cmU6ITB9KS5leGVjKGk/QWwudG9Qb3NpeFNsYXNoZXMoZSk6ZSk7aWYocylyZXR1cm4gcy5zbGljZSgxKS5tYXAoYT0+YT09PXZvaWQgMD8iIjphKX07b2UubWFrZVJlPSguLi5yKT0+b3QubWFrZVJlKC4uLnIpO29lLnNjYW49KC4uLnIpPT5vdC5zY2FuKC4uLnIpO29lLnBhcnNlPShyLGUpPT57bGV0IHQ9W107Zm9yKGxldCBpIG9mW10uY29uY2F0KHJ8fFtdKSlmb3IobGV0IG4gb2YgdWcoU3RyaW5nKGkpLGUpKXQucHVzaChvdC5wYXJzZShuLGUpKTtyZXR1cm4gdH07b2UuYnJhY2VzPShyLGUpPT57aWYodHlwZW9mIHIhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgc3RyaW5nIik7cmV0dXJuIGUmJmUubm9icmFjZT09PSEwfHwhY2cocik/W3JdOnVnKHIsZSl9O29lLmJyYWNlRXhwYW5kPShyLGUpPT57aWYodHlwZW9mIHIhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgc3RyaW5nIik7cmV0dXJuIG9lLmJyYWNlcyhyLHsuLi5lLGV4cGFuZDohMH0pfTtvZS5oYXNCcmFjZXM9Y2c7cGcuZXhwb3J0cz1vZX0pO2Z1bmN0aW9uIG1nKHIsZSl7bGV0IHQ9ZS5jb250ZW50LmZpbGVzO3Q9dC5maWx0ZXIobz0+dHlwZW9mIG89PSJzdHJpbmciKSx0PXQubWFwKGxsKTtsZXQgaT1wcy5nZW5lcmF0ZVRhc2tzKHQpLG49W10scz1bXTtmb3IobGV0IG8gb2YgaSluLnB1c2goLi4uby5wb3NpdGl2ZS5tYXAobD0+Z2cobCwhMSkpKSxzLnB1c2goLi4uby5uZWdhdGl2ZS5tYXAobD0+Z2cobCwhMCkpKTtsZXQgYT1bLi4ubiwuLi5zXTtyZXR1cm4gYT1jMihyLGEpLGE9YS5mbGF0TWFwKHAyKSxhPWEubWFwKGYyKSxhfWZ1bmN0aW9uIGdnKHIsZSl7bGV0IHQ9e29yaWdpbmFsOnIsYmFzZTpyLGlnbm9yZTplLHBhdHRlcm46cixnbG9iOm51bGx9O3JldHVybiBaaChyKSYmT2JqZWN0LmFzc2lnbih0LG5tKHIpKSx0fWZ1bmN0aW9uIGYyKHIpe2xldCBlPWxsKHIuYmFzZSk7cmV0dXJuIGU9cHMuZXNjYXBlUGF0aChlKSxyLnBhdHRlcm49ci5nbG9iP2Ake2V9LyR7ci5nbG9ifWA6ZSxyLnBhdHRlcm49ci5pZ25vcmU/YCEke3IucGF0dGVybn1gOnIucGF0dGVybixyfWZ1bmN0aW9uIGMyKHIsZSl7bGV0IHQ9W107cmV0dXJuIHIudXNlckNvbmZpZ1BhdGgmJnIudGFpbHdpbmRDb25maWcuY29udGVudC5yZWxhdGl2ZSYmKHQ9W21lLmRpcm5hbWUoci51c2VyQ29uZmlnUGF0aCldKSxlLm1hcChpPT4oaS5iYXNlPW1lLnJlc29sdmUoLi4udCxpLmJhc2UpLGkpKX1mdW5jdGlvbiBwMihyKXtsZXQgZT1bcl07dHJ5e2xldCB0PWJlLnJlYWxwYXRoU3luYyhyLmJhc2UpO3QhPT1yLmJhc2UmJmUucHVzaCh7Li4ucixiYXNlOnR9KX1jYXRjaHt9cmV0dXJuIGV9ZnVuY3Rpb24geWcocixlLHQpe2xldCBpPXIudGFpbHdpbmRDb25maWcuY29udGVudC5maWxlcy5maWx0ZXIoYT0+dHlwZW9mIGEucmF3PT0ic3RyaW5nIikubWFwKCh7cmF3OmEsZXh0ZW5zaW9uOm89Imh0bWwifSk9Pih7Y29udGVudDphLGV4dGVuc2lvbjpvfSkpLFtuLHNdPWgyKGUsdCk7Zm9yKGxldCBhIG9mIG4pe2xldCBvPW1lLmV4dG5hbWUoYSkuc2xpY2UoMSk7aS5wdXNoKHtmaWxlOmEsZXh0ZW5zaW9uOm99KX1yZXR1cm5baSxzXX1mdW5jdGlvbiBkMihyKXtpZighci5zb21lKHM9PnMuaW5jbHVkZXMoIioqIikmJiF3Zy50ZXN0KHMpKSlyZXR1cm4oKT0+e307bGV0IHQ9W10saT1bXTtmb3IobGV0IHMgb2Ygcil7bGV0IGE9aGcuZGVmYXVsdC5tYXRjaGVyKHMpO3dnLnRlc3QocykmJmkucHVzaChhKSx0LnB1c2goYSl9bGV0IG49ITE7cmV0dXJuIHM9PntpZihufHxpLnNvbWUoZj0+ZihzKSkpcmV0dXJuO2xldCBhPXQuZmluZEluZGV4KGY9PmYocykpO2lmKGE9PT0tMSlyZXR1cm47bGV0IG89clthXSxsPW1lLnJlbGF0aXZlKG0uY3dkKCksbyk7bFswXSE9PSIuIiYmKGw9YC4vJHtsfWApO2xldCBjPWJnLmZpbmQoZj0+cy5pbmNsdWRlcyhmKSk7YyYmKG49ITAsRy53YXJuKCJicm9hZC1jb250ZW50LWdsb2ItcGF0dGVybiIsW2BZb3VyIFxgY29udGVudFxgIGNvbmZpZ3VyYXRpb24gaW5jbHVkZXMgYSBwYXR0ZXJuIHdoaWNoIGxvb2tzIGxpa2UgaXQncyBhY2NpZGVudGFsbHkgbWF0Y2hpbmcgYWxsIG9mIFxgJHtjfVxgIGFuZCBjYW4gY2F1c2Ugc2VyaW91cyBwZXJmb3JtYW5jZSBpc3N1ZXMuYCxgUGF0dGVybjogXGAke2x9XGBgLCJTZWUgb3VyIGRvY3VtZW50YXRpb24gZm9yIHJlY29tbWVuZGF0aW9uczoiLCJodHRwczovL3RhaWx3aW5kY3NzLmNvbS9kb2NzL2NvbnRlbnQtY29uZmlndXJhdGlvbiNwYXR0ZXJuLXJlY29tbWVuZGF0aW9ucyJdKSl9fWZ1bmN0aW9uIGgyKHIsZSl7bGV0IHQ9ci5tYXAobz0+by5wYXR0ZXJuKSxpPW5ldyBNYXAsbj1kMih0KSxzPW5ldyBTZXQ7WmUuREVCVUcmJmNvbnNvbGUudGltZSgiRmluZGluZyBjaGFuZ2VkIGZpbGVzIik7bGV0IGE9cHMuc3luYyh0LHthYnNvbHV0ZTohMH0pO2ZvcihsZXQgbyBvZiBhKXtuKG8pO2xldCBsPWUuZ2V0KG8pfHwtMS8wLGM9YmUuc3RhdFN5bmMobykubXRpbWVNcztjPmwmJihzLmFkZChvKSxpLnNldChvLGMpKX1yZXR1cm4gWmUuREVCVUcmJmNvbnNvbGUudGltZUVuZCgiRmluZGluZyBjaGFuZ2VkIGZpbGVzIiksW3MsaV19dmFyIGhnLGJnLHdnLHZnPVAoKCk9Pnt1KCk7ZnQoKTtldCgpO0poKCk7ZW0oKTt0bSgpO3NtKCk7SXQoKTtCZSgpO2hnPXBlKGRnKCkpO2JnPVsibm9kZV9tb2R1bGVzIl0sd2c9bmV3IFJlZ0V4cChgKCR7YmcubWFwKHI9PlN0cmluZy5yYXdgXGIke3J9XGJgKS5qb2luKCJ8Iil9KWApfSk7ZnVuY3Rpb24geGcoKXt9dmFyIGtnPVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiBiMihyLGUpe2ZvcihsZXQgdCBvZiBlKXtsZXQgaT1gJHtyfSR7dH1gO2lmKGJlLmV4aXN0c1N5bmMoaSkmJmJlLnN0YXRTeW5jKGkpLmlzRmlsZSgpKXJldHVybiBpfWZvcihsZXQgdCBvZiBlKXtsZXQgaT1gJHtyfS9pbmRleCR7dH1gO2lmKGJlLmV4aXN0c1N5bmMoaSkpcmV0dXJuIGl9cmV0dXJuIG51bGx9ZnVuY3Rpb24qU2cocixlLHQsaT1tZS5leHRuYW1lKHIpKXtsZXQgbj1iMihtZS5yZXNvbHZlKGUsciksbTIuaW5jbHVkZXMoaSk/ZzI6eTIpO2lmKG49PT1udWxsfHx0LmhhcyhuKSlyZXR1cm47dC5hZGQobikseWllbGQgbixlPW1lLmRpcm5hbWUobiksaT1tZS5leHRuYW1lKG4pO2xldCBzPWJlLnJlYWRGaWxlU3luYyhuLCJ1dGYtOCIpO2ZvcihsZXQgYSBvZlsuLi5zLm1hdGNoQWxsKC9pbXBvcnRbXHNcU10qP1snIl0oLnszLH0/KVsnIl0vZ2kpLC4uLnMubWF0Y2hBbGwoL2ltcG9ydFtcc1xTXSpmcm9tW1xzXFNdKj9bJyJdKC57Myx9PylbJyJdL2dpKSwuLi5zLm1hdGNoQWxsKC9yZXF1aXJlXChbJyJgXSguKylbJyJgXVwpL2dpKV0pIWFbMV0uc3RhcnRzV2l0aCgiLiIpfHwoeWllbGQqU2coYVsxXSxlLHQsaSkpfWZ1bmN0aW9uIENsKHIpe3JldHVybiByPT09bnVsbD9uZXcgU2V0Om5ldyBTZXQoU2cocixtZS5kaXJuYW1lKHIpLG5ldyBTZXQpKX12YXIgbTIsZzIseTIsQWc9UCgoKT0+e3UoKTtmdCgpO2V0KCk7bTI9WyIuanMiLCIuY2pzIiwiLm1qcyJdLGcyPVsiIiwiLmpzIiwiLmNqcyIsIi5tanMiLCIudHMiLCIuY3RzIiwiLm10cyIsIi5qc3giLCIudHN4Il0seTI9WyIiLCIudHMiLCIuY3RzIiwiLm10cyIsIi50c3giLCIuanMiLCIuY2pzIiwiLm1qcyIsIi5qc3giXX0pO2Z1bmN0aW9uIHcyKHIsZSl7aWYoX2wuaGFzKHIpKXJldHVybiBfbC5nZXQocik7bGV0IHQ9bWcocixlKTtyZXR1cm4gX2wuc2V0KHIsdCkuZ2V0KHIpfWZ1bmN0aW9uIHYyKHIpe2xldCBlPWFhKHIpO2lmKGUhPT1udWxsKXtsZXRbaSxuLHMsYV09X2cuZ2V0KGUpfHxbXSxvPUNsKGUpLGw9ITEsYz1uZXcgTWFwO2ZvcihsZXQgcCBvZiBvKXtsZXQgaD1iZS5zdGF0U3luYyhwKS5tdGltZU1zO2Muc2V0KHAsaCksKCFhfHwhYS5oYXMocCl8fGg+YS5nZXQocCkpJiYobD0hMCl9aWYoIWwpcmV0dXJuW2ksZSxuLHNdO2ZvcihsZXQgcCBvZiBvKWRlbGV0ZSBoZi5jYWNoZVtwXTtsZXQgZj1vbCh6cih4ZyhlKSkpLGQ9V2koZik7cmV0dXJuIF9nLnNldChlLFtmLGQsbyxjXSksW2YsZSxkLG9dfWxldCB0PXpyKHI/LmNvbmZpZz8/cj8/e30pO3JldHVybiB0PW9sKHQpLFt0LG51bGwsV2kodCksW11dfWZ1bmN0aW9uIEVsKHIpe3JldHVybih7dGFpbHdpbmREaXJlY3RpdmVzOmUscmVnaXN0ZXJEZXBlbmRlbmN5OnR9KT0+KGksbik9PntsZXRbcyxhLG8sbF09djIociksYz1uZXcgU2V0KGwpO2lmKGUuc2l6ZT4wKXtjLmFkZChuLm9wdHMuZnJvbSk7Zm9yKGxldCBiIG9mIG4ubWVzc2FnZXMpYi50eXBlPT09ImRlcGVuZGVuY3kiJiZjLmFkZChiLmZpbGUpfWxldFtmLCxkXT1WaChpLG4scyxhLG8sYykscD1jcyhmKSxoPXcyKGYscyk7aWYoZS5zaXplPjApe2ZvcihsZXQgeSBvZiBoKWZvcihsZXQgdyBvZiBubCh5KSl0KHcpO2xldFtiLHZdPXlnKGYsaCxwKTtmb3IobGV0IHkgb2YgYilmLmNoYW5nZWRDb250ZW50LnB1c2goeSk7Zm9yKGxldFt5LHddb2Ygdi5lbnRyaWVzKCkpZC5zZXQoeSx3KX1mb3IobGV0IGIgb2YgbCl0KHt0eXBlOiJkZXBlbmRlbmN5IixmaWxlOmJ9KTtmb3IobGV0W2Isdl1vZiBkLmVudHJpZXMoKSlwLnNldChiLHYpO3JldHVybiBmfX12YXIgQ2csX2csX2wsRWc9UCgoKT0+e3UoKTtmdCgpO0NnPXBlKEZzKCkpO3dmKCk7c2EoKTtvYygpO09pKCk7SGgoKTtYaCgpO3ZnKCk7a2coKTtBZygpO19nPW5ldyBDZy5kZWZhdWx0KHttYXhTaXplOjEwMH0pLF9sPW5ldyBXZWFrTWFwfSk7ZnVuY3Rpb24gT2wocil7bGV0IGU9bmV3IFNldCx0PW5ldyBTZXQsaT1uZXcgU2V0O2lmKHIud2Fsa0F0UnVsZXMobj0+e24ubmFtZT09PSJhcHBseSImJmkuYWRkKG4pLG4ubmFtZT09PSJpbXBvcnQiJiYobi5wYXJhbXM9PT0nInRhaWx3aW5kY3NzL2Jhc2UiJ3x8bi5wYXJhbXM9PT0iJ3RhaWx3aW5kY3NzL2Jhc2UnIj8obi5uYW1lPSJ0YWlsd2luZCIsbi5wYXJhbXM9ImJhc2UiKTpuLnBhcmFtcz09PScidGFpbHdpbmRjc3MvY29tcG9uZW50cyInfHxuLnBhcmFtcz09PSIndGFpbHdpbmRjc3MvY29tcG9uZW50cyciPyhuLm5hbWU9InRhaWx3aW5kIixuLnBhcmFtcz0iY29tcG9uZW50cyIpOm4ucGFyYW1zPT09JyJ0YWlsd2luZGNzcy91dGlsaXRpZXMiJ3x8bi5wYXJhbXM9PT0iJ3RhaWx3aW5kY3NzL3V0aWxpdGllcyciPyhuLm5hbWU9InRhaWx3aW5kIixuLnBhcmFtcz0idXRpbGl0aWVzIik6KG4ucGFyYW1zPT09JyJ0YWlsd2luZGNzcy9zY3JlZW5zIid8fG4ucGFyYW1zPT09Iid0YWlsd2luZGNzcy9zY3JlZW5zJyJ8fG4ucGFyYW1zPT09JyJ0YWlsd2luZGNzcy92YXJpYW50cyInfHxuLnBhcmFtcz09PSIndGFpbHdpbmRjc3MvdmFyaWFudHMnIikmJihuLm5hbWU9InRhaWx3aW5kIixuLnBhcmFtcz0idmFyaWFudHMiKSksbi5uYW1lPT09InRhaWx3aW5kIiYmKG4ucGFyYW1zPT09InNjcmVlbnMiJiYobi5wYXJhbXM9InZhcmlhbnRzIiksZS5hZGQobi5wYXJhbXMpKSxbImxheWVyIiwicmVzcG9uc2l2ZSIsInZhcmlhbnRzIl0uaW5jbHVkZXMobi5uYW1lKSYmKFsicmVzcG9uc2l2ZSIsInZhcmlhbnRzIl0uaW5jbHVkZXMobi5uYW1lKSYmRy53YXJuKGAke24ubmFtZX0tYXQtcnVsZS1kZXByZWNhdGVkYCxbYFRoZSBcYEAke24ubmFtZX1cYCBkaXJlY3RpdmUgaGFzIGJlZW4gZGVwcmVjYXRlZCBpbiBUYWlsd2luZCBDU1MgdjMuMC5gLCJVc2UgYEBsYXllciB1dGlsaXRpZXNgIG9yIGBAbGF5ZXIgY29tcG9uZW50c2AgaW5zdGVhZC4iLCJodHRwczovL3RhaWx3aW5kY3NzLmNvbS9kb2NzL3VwZ3JhZGUtZ3VpZGUjcmVwbGFjZS12YXJpYW50cy13aXRoLWxheWVyIl0pLHQuYWRkKG4pKX0pLCFlLmhhcygiYmFzZSIpfHwhZS5oYXMoImNvbXBvbmVudHMiKXx8IWUuaGFzKCJ1dGlsaXRpZXMiKSl7Zm9yKGxldCBuIG9mIHQpaWYobi5uYW1lPT09ImxheWVyIiYmWyJiYXNlIiwiY29tcG9uZW50cyIsInV0aWxpdGllcyJdLmluY2x1ZGVzKG4ucGFyYW1zKSl7aWYoIWUuaGFzKG4ucGFyYW1zKSl0aHJvdyBuLmVycm9yKGBcYEBsYXllciAke24ucGFyYW1zfVxgIGlzIHVzZWQgYnV0IG5vIG1hdGNoaW5nIFxgQHRhaWx3aW5kICR7bi5wYXJhbXN9XGAgZGlyZWN0aXZlIGlzIHByZXNlbnQuYCl9ZWxzZSBpZihuLm5hbWU9PT0icmVzcG9uc2l2ZSIpe2lmKCFlLmhhcygidXRpbGl0aWVzIikpdGhyb3cgbi5lcnJvcigiYEByZXNwb25zaXZlYCBpcyB1c2VkIGJ1dCBgQHRhaWx3aW5kIHV0aWxpdGllc2AgaXMgbWlzc2luZy4iKX1lbHNlIGlmKG4ubmFtZT09PSJ2YXJpYW50cyImJiFlLmhhcygidXRpbGl0aWVzIikpdGhyb3cgbi5lcnJvcigiYEB2YXJpYW50c2AgaXMgdXNlZCBidXQgYEB0YWlsd2luZCB1dGlsaXRpZXNgIGlzIG1pc3NpbmcuIil9cmV0dXJue3RhaWx3aW5kRGlyZWN0aXZlczplLGFwcGx5RGlyZWN0aXZlczppfX12YXIgT2c9UCgoKT0+e3UoKTtCZSgpfSk7ZnVuY3Rpb24gUXQocixlPXZvaWQgMCx0PXZvaWQgMCl7cmV0dXJuIHIubWFwKGk9PntsZXQgbj1pLmNsb25lKCk7cmV0dXJuIHQhPT12b2lkIDAmJihuLnJhd3MudGFpbHdpbmQ9ey4uLm4ucmF3cy50YWlsd2luZCwuLi50fSksZSE9PXZvaWQgMCYmVGcobixzPT57aWYocy5yYXdzLnRhaWx3aW5kPy5wcmVzZXJ2ZVNvdXJjZT09PSEwJiZzLnNvdXJjZSlyZXR1cm4hMTtzLnNvdXJjZT1lfSksbn0pfWZ1bmN0aW9uIFRnKHIsZSl7ZShyKSE9PSExJiZyLmVhY2g/Lih0PT5UZyh0LGUpKX12YXIgUmc9UCgoKT0+e3UoKX0pO2Z1bmN0aW9uIFRsKHIpe3JldHVybiByPUFycmF5LmlzQXJyYXkocik/cjpbcl0scj1yLm1hcChlPT5lIGluc3RhbmNlb2YgUmVnRXhwP2Uuc291cmNlOmUpLHIuam9pbigiIil9ZnVuY3Rpb24gTmUocil7cmV0dXJuIG5ldyBSZWdFeHAoVGwociksImciKX1mdW5jdGlvbiBxdChyKXtyZXR1cm5gKD86JHtyLm1hcChUbCkuam9pbigifCIpfSlgfWZ1bmN0aW9uIFJsKHIpe3JldHVybmAoPzoke1RsKHIpfSk/YH1mdW5jdGlvbiBJZyhyKXtyZXR1cm4gciYmeDIudGVzdChyKT9yLnJlcGxhY2UoUGcsIlxcJCYiKTpyfHwiIn12YXIgUGcseDIsRGc9UCgoKT0+e3UoKTtQZz0vW1xcXiQuKis/KClbXF17fXxdL2cseDI9UmVnRXhwKFBnLnNvdXJjZSl9KTtmdW5jdGlvbiBxZyhyKXtsZXQgZT1BcnJheS5mcm9tKGsyKHIpKTtyZXR1cm4gdD0+e2xldCBpPVtdO2ZvcihsZXQgbiBvZiBlKWZvcihsZXQgcyBvZiB0Lm1hdGNoKG4pPz9bXSlpLnB1c2goQzIocykpO2ZvcihsZXQgbiBvZiBpLnNsaWNlKCkpe2xldCBzPXZlKG4sIi4iKTtmb3IobGV0IGE9MDthPHMubGVuZ3RoO2ErKyl7bGV0IG89c1thXTtpZihhPj1zLmxlbmd0aC0xKXtpLnB1c2gobyk7Y29udGludWV9bGV0IGw9TnVtYmVyKHNbYSsxXSk7aXNOYU4obCk/aS5wdXNoKG8pOmErK319cmV0dXJuIGl9fWZ1bmN0aW9uKmsyKHIpe2xldCBlPXIudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yLHQ9ci50YWlsd2luZENvbmZpZy5wcmVmaXghPT0iIj9SbChOZShbLy0/LyxJZyhyLnRhaWx3aW5kQ29uZmlnLnByZWZpeCldKSk6IiIsaT1xdChbL1xbW15cczonImBdKzpbXlxzXFtcXV0rXF0vLC9cW1teXHM6JyJgXF1dKzpbXlxzXSs/XFtbXlxzXStcXVteXHNdKz9cXS8sTmUoW3F0KFsvLT8oPzpcdyspLywvQCg/Olx3KykvXSksUmwocXQoW05lKFtxdChbLy0oPzpcdystKSpcWydbXlxzXSsnXF0vLC8tKD86XHcrLSkqXFsiW15cc10rIlxdLywvLSg/Olx3Ky0pKlxbYFteXHNdK2BcXS8sLy0oPzpcdystKSpcWyg/OlteXHNcW1xdXStcW1teXHNcW1xdXStcXSkqW15cczpcW1xdXStcXS9dKSwvKD8hW3soW11dKS8sLyg/OlwvW15ccyciYFxcPjwkXSopPy9dKSxOZShbcXQoWy8tKD86XHcrLSkqXFsnW15cc10rJ1xdLywvLSg/Olx3Ky0pKlxbIlteXHNdKyJcXS8sLy0oPzpcdystKSpcW2BbXlxzXStgXF0vLC8tKD86XHcrLSkqXFsoPzpbXlxzXFtcXV0rXFtbXlxzXFtcXV0rXF0pKlteXHNcW1xdXStcXS9dKSwvKD8hW3soW11dKS8sLyg/OlwvW15ccyciYFxcJF0qKT8vXSksL1stXC9dW15ccyciYFxcJD17PjxdKi9dKSldKV0pLG49W3F0KFtOZShbL0BcW1teXHMiJ2BdK1xdKFwvW15ccyInYF0rKT8vLGVdKSxOZShbLyhbXlxzIidgXFtcXF0rLSk/XFtbXlxzIidgXStcXVwvW1x3Xy1dKy8sZV0pLE5lKFsvKFteXHMiJ2BcW1xcXSstKT9cW1teXHMiJ2BdK1xdLyxlXSksTmUoWy9bXlxzIidgXFtcXF0rLyxlXSldKSxxdChbTmUoWy8oW15ccyInYFxbXFxdKy0pP1xbW15cc2BdK1xdXC9bXHdfLV0rLyxlXSksTmUoWy8oW15ccyInYFxbXFxdKy0pP1xbW15cc2BdK1xdLyxlXSksTmUoWy9bXlxzYFxbXFxdKy8sZV0pXSldO2ZvcihsZXQgcyBvZiBuKXlpZWxkIE5lKFsiKCg/PSgoIixzLCIpKykpXFwyKT8iLC8hPy8sdCxpXSk7eWllbGQvW148PiInYFxzLigpe31bXF0jPSUkXVtePD4iJ2Bccygpe31bXF0jPSUkXSpbXjw+IidgXHMuKCl7fVtcXSM9JTokXS9nfWZ1bmN0aW9uIEMyKHIpe2lmKCFyLmluY2x1ZGVzKCItWyIpKXJldHVybiByO2xldCBlPTAsdD1bXSxpPXIubWF0Y2hBbGwoUzIpO2k9QXJyYXkuZnJvbShpKS5mbGF0TWFwKG49PntsZXRbLC4uLnNdPW47cmV0dXJuIHMubWFwKChhLG8pPT5PYmplY3QuYXNzaWduKFtdLG4se2luZGV4Om4uaW5kZXgrbywwOmF9KSl9KTtmb3IobGV0IG4gb2YgaSl7bGV0IHM9blswXSxhPXRbdC5sZW5ndGgtMV07aWYocz09PWE/dC5wb3AoKToocz09PSInInx8cz09PSciJ3x8cz09PSJgIikmJnQucHVzaChzKSwhYSl7aWYocz09PSJbIil7ZSsrO2NvbnRpbnVlfWVsc2UgaWYocz09PSJdIil7ZS0tO2NvbnRpbnVlfWlmKGU8MClyZXR1cm4gci5zdWJzdHJpbmcoMCxuLmluZGV4LTEpO2lmKGU9PT0wJiYhQTIudGVzdChzKSlyZXR1cm4gci5zdWJzdHJpbmcoMCxuLmluZGV4KX19cmV0dXJuIHJ9dmFyIFMyLEEyLCRnPVAoKCk9Pnt1KCk7RGcoKTt6dCgpO1MyPS8oW1xbXF0nImBdKShbXlxbXF0nImBdKT8vZyxBMj0vW14iJ2Bcczw+XF1dKy99KTtmdW5jdGlvbiBfMihyLGUpe2xldCB0PXIudGFpbHdpbmRDb25maWcuY29udGVudC5leHRyYWN0O3JldHVybiB0W2VdfHx0LkRFRkFVTFR8fE1nW2VdfHxNZy5ERUZBVUxUKHIpfWZ1bmN0aW9uIEUyKHIsZSl7bGV0IHQ9ci5jb250ZW50LnRyYW5zZm9ybTtyZXR1cm4gdFtlXXx8dC5ERUZBVUxUfHxOZ1tlXXx8TmcuREVGQVVMVH1mdW5jdGlvbiBPMihyLGUsdCxpKXtMaS5oYXMoZSl8fExpLnNldChlLG5ldyBMZy5kZWZhdWx0KHttYXhTaXplOjI1ZTN9KSk7Zm9yKGxldCBuIG9mIHIuc3BsaXQoYApgKSlpZihuPW4udHJpbSgpLCFpLmhhcyhuKSlpZihpLmFkZChuKSxMaS5nZXQoZSkuaGFzKG4pKWZvcihsZXQgcyBvZiBMaS5nZXQoZSkuZ2V0KG4pKXQuYWRkKHMpO2Vsc2V7bGV0IHM9ZShuKS5maWx0ZXIobz0+byE9PSIhKiIpLGE9bmV3IFNldChzKTtmb3IobGV0IG8gb2YgYSl0LmFkZChvKTtMaS5nZXQoZSkuc2V0KG4sYSl9fWZ1bmN0aW9uIFQyKHIsZSl7bGV0IHQ9ZS5vZmZzZXRzLnNvcnQociksaT17YmFzZTpuZXcgU2V0LGRlZmF1bHRzOm5ldyBTZXQsY29tcG9uZW50czpuZXcgU2V0LHV0aWxpdGllczpuZXcgU2V0LHZhcmlhbnRzOm5ldyBTZXR9O2ZvcihsZXRbbixzXW9mIHQpaVtuLmxheWVyXS5hZGQocyk7cmV0dXJuIGl9ZnVuY3Rpb24gUGwocil7cmV0dXJuIGFzeW5jIGU9PntsZXQgdD17YmFzZTpudWxsLGNvbXBvbmVudHM6bnVsbCx1dGlsaXRpZXM6bnVsbCx2YXJpYW50czpudWxsfTtpZihlLndhbGtBdFJ1bGVzKHk9Pnt5Lm5hbWU9PT0idGFpbHdpbmQiJiZPYmplY3Qua2V5cyh0KS5pbmNsdWRlcyh5LnBhcmFtcykmJih0W3kucGFyYW1zXT15KX0pLE9iamVjdC52YWx1ZXModCkuZXZlcnkoeT0+eT09PW51bGwpKXJldHVybiBlO2xldCBpPW5ldyBTZXQoWy4uLnIuY2FuZGlkYXRlcz8/W10sZ3RdKSxuPW5ldyBTZXQ7YnQuREVCVUcmJmNvbnNvbGUudGltZSgiUmVhZGluZyBjaGFuZ2VkIGZpbGVzIik7bGV0IHM9W107Zm9yKGxldCB5IG9mIHIuY2hhbmdlZENvbnRlbnQpe2xldCB3PUUyKHIudGFpbHdpbmRDb25maWcseS5leHRlbnNpb24pLGs9XzIocix5LmV4dGVuc2lvbik7cy5wdXNoKFt5LHt0cmFuc2Zvcm1lcjp3LGV4dHJhY3RvcjprfV0pfWxldCBhPTUwMDtmb3IobGV0IHk9MDt5PHMubGVuZ3RoO3krPWEpe2xldCB3PXMuc2xpY2UoeSx5K2EpO2F3YWl0IFByb21pc2UuYWxsKHcubWFwKGFzeW5jKFt7ZmlsZTprLGNvbnRlbnQ6U30se3RyYW5zZm9ybWVyOkUsZXh0cmFjdG9yOlR9XSk9PntTPWs/YXdhaXQgYmUucHJvbWlzZXMucmVhZEZpbGUoaywidXRmOCIpOlMsTzIoRShTKSxULGksbil9KSl9YnQuREVCVUcmJmNvbnNvbGUudGltZUVuZCgiUmVhZGluZyBjaGFuZ2VkIGZpbGVzIik7bGV0IG89ci5jbGFzc0NhY2hlLnNpemU7YnQuREVCVUcmJmNvbnNvbGUudGltZSgiR2VuZXJhdGUgcnVsZXMiKSxidC5ERUJVRyYmY29uc29sZS50aW1lKCJTb3J0aW5nIGNhbmRpZGF0ZXMiKTtsZXQgbD1uZXcgU2V0KFsuLi5pXS5zb3J0KCh5LHcpPT55PT09dz8wOnk8dz8tMToxKSk7YnQuREVCVUcmJmNvbnNvbGUudGltZUVuZCgiU29ydGluZyBjYW5kaWRhdGVzIiksYXMobCxyKSxidC5ERUJVRyYmY29uc29sZS50aW1lRW5kKCJHZW5lcmF0ZSBydWxlcyIpLGJ0LkRFQlVHJiZjb25zb2xlLnRpbWUoIkJ1aWxkIHN0eWxlc2hlZXQiKSwoci5zdHlsZXNoZWV0Q2FjaGU9PT1udWxsfHxyLmNsYXNzQ2FjaGUuc2l6ZSE9PW8pJiYoci5zdHlsZXNoZWV0Q2FjaGU9VDIoWy4uLnIucnVsZUNhY2hlXSxyKSksYnQuREVCVUcmJmNvbnNvbGUudGltZUVuZCgiQnVpbGQgc3R5bGVzaGVldCIpO2xldHtkZWZhdWx0czpjLGJhc2U6Zixjb21wb25lbnRzOmQsdXRpbGl0aWVzOnAsdmFyaWFudHM6aH09ci5zdHlsZXNoZWV0Q2FjaGU7dC5iYXNlJiYodC5iYXNlLmJlZm9yZShRdChbLi4uYywuLi5mXSx0LmJhc2Uuc291cmNlLHtsYXllcjoiYmFzZSJ9KSksdC5iYXNlLnJlbW92ZSgpKSx0LmNvbXBvbmVudHMmJih0LmNvbXBvbmVudHMuYmVmb3JlKFF0KFsuLi5kXSx0LmNvbXBvbmVudHMuc291cmNlLHtsYXllcjoiY29tcG9uZW50cyJ9KSksdC5jb21wb25lbnRzLnJlbW92ZSgpKSx0LnV0aWxpdGllcyYmKHQudXRpbGl0aWVzLmJlZm9yZShRdChbLi4ucF0sdC51dGlsaXRpZXMuc291cmNlLHtsYXllcjoidXRpbGl0aWVzIn0pKSx0LnV0aWxpdGllcy5yZW1vdmUoKSk7bGV0IGI9QXJyYXkuZnJvbShoKS5maWx0ZXIoeT0+e2xldCB3PXkucmF3cy50YWlsd2luZD8ucGFyZW50TGF5ZXI7cmV0dXJuIHc9PT0iY29tcG9uZW50cyI/dC5jb21wb25lbnRzIT09bnVsbDp3PT09InV0aWxpdGllcyI/dC51dGlsaXRpZXMhPT1udWxsOiEwfSk7dC52YXJpYW50cz8odC52YXJpYW50cy5iZWZvcmUoUXQoYix0LnZhcmlhbnRzLnNvdXJjZSx7bGF5ZXI6InZhcmlhbnRzIn0pKSx0LnZhcmlhbnRzLnJlbW92ZSgpKTpiLmxlbmd0aD4wJiZlLmFwcGVuZChRdChiLGUuc291cmNlLHtsYXllcjoidmFyaWFudHMifSkpLGUuc291cmNlLmVuZD1lLnNvdXJjZS5lbmQ/P2Uuc291cmNlLnN0YXJ0O2xldCB2PWIuc29tZSh5PT55LnJhd3MudGFpbHdpbmQ/LnBhcmVudExheWVyPT09InV0aWxpdGllcyIpO3QudXRpbGl0aWVzJiZwLnNpemU9PT0wJiYhdiYmRy53YXJuKCJjb250ZW50LXByb2JsZW1zIixbIk5vIHV0aWxpdHkgY2xhc3NlcyB3ZXJlIGRldGVjdGVkIGluIHlvdXIgc291cmNlIGZpbGVzLiBJZiB0aGlzIGlzIHVuZXhwZWN0ZWQsIGRvdWJsZS1jaGVjayB0aGUgYGNvbnRlbnRgIG9wdGlvbiBpbiB5b3VyIFRhaWx3aW5kIENTUyBjb25maWd1cmF0aW9uLiIsImh0dHBzOi8vdGFpbHdpbmRjc3MuY29tL2RvY3MvY29udGVudC1jb25maWd1cmF0aW9uIl0pLGJ0LkRFQlVHJiYoY29uc29sZS5sb2coIlBvdGVudGlhbCBjbGFzc2VzOiAiLGkuc2l6ZSksY29uc29sZS5sb2coIkFjdGl2ZSBjb250ZXh0czogIixlcy5zaXplKSksci5jaGFuZ2VkQ29udGVudD1bXSxlLndhbGtBdFJ1bGVzKCJsYXllciIseT0+e09iamVjdC5rZXlzKHQpLmluY2x1ZGVzKHkucGFyYW1zKSYmeS5yZW1vdmUoKX0pfX12YXIgTGcsYnQsTWcsTmcsTGksQmc9UCgoKT0+e3UoKTtmdCgpO0xnPXBlKEZzKCkpO0l0KCk7b3MoKTtCZSgpO1JnKCk7JGcoKTtidD1aZSxNZz17REVGQVVMVDpxZ30sTmc9e0RFRkFVTFQ6cj0+cixzdmVsdGU6cj0+ci5yZXBsYWNlKC8oPzpefFxzKWNsYXNzOi9nLCIgIil9O0xpPW5ldyBXZWFrTWFwfSk7ZnVuY3Rpb24geHMocil7bGV0IGU9bmV3IE1hcDtlZS5yb290KHtub2Rlczpbci5jbG9uZSgpXX0pLndhbGtSdWxlcyhzPT57KDAsdnMuZGVmYXVsdCkoYT0+e2Eud2Fsa0NsYXNzZXMobz0+e2xldCBsPW8ucGFyZW50LnRvU3RyaW5nKCksYz1lLmdldChsKTtjfHxlLnNldChsLGM9bmV3IFNldCksYy5hZGQoby52YWx1ZSl9KX0pLnByb2Nlc3NTeW5jKHMuc2VsZWN0b3IpfSk7bGV0IGk9QXJyYXkuZnJvbShlLnZhbHVlcygpLHM9PkFycmF5LmZyb20ocykpLG49aS5mbGF0KCk7cmV0dXJuIE9iamVjdC5hc3NpZ24obix7Z3JvdXBzOml9KX1mdW5jdGlvbiBJbChyKXtyZXR1cm4gUjIuYXN0U3luYyhyKX1mdW5jdGlvbiBGZyhyLGUpe2xldCB0PW5ldyBTZXQ7Zm9yKGxldCBpIG9mIHIpdC5hZGQoaS5zcGxpdChlKS5wb3AoKSk7cmV0dXJuIEFycmF5LmZyb20odCl9ZnVuY3Rpb24gamcocixlKXtsZXQgdD1yLnRhaWx3aW5kQ29uZmlnLnByZWZpeDtyZXR1cm4gdHlwZW9mIHQ9PSJmdW5jdGlvbiI/dChlKTp0K2V9ZnVuY3Rpb24qemcocil7Zm9yKHlpZWxkIHI7ci5wYXJlbnQ7KXlpZWxkIHIucGFyZW50LHI9ci5wYXJlbnR9ZnVuY3Rpb24gUDIocixlPXt9KXtsZXQgdD1yLm5vZGVzO3Iubm9kZXM9W107bGV0IGk9ci5jbG9uZShlKTtyZXR1cm4gci5ub2Rlcz10LGl9ZnVuY3Rpb24gSTIocil7Zm9yKGxldCBlIG9mIHpnKHIpKWlmKHIhPT1lKXtpZihlLnR5cGU9PT0icm9vdCIpYnJlYWs7cj1QMihlLHtub2Rlczpbcl19KX1yZXR1cm4gcn1mdW5jdGlvbiBEMihyLGUpe2xldCB0PW5ldyBNYXA7cmV0dXJuIHIud2Fsa1J1bGVzKGk9Pntmb3IobGV0IGEgb2YgemcoaSkpaWYoYS5yYXdzLnRhaWx3aW5kPy5sYXllciE9PXZvaWQgMClyZXR1cm47bGV0IG49STIoaSkscz1lLm9mZnNldHMuY3JlYXRlKCJ1c2VyIik7Zm9yKGxldCBhIG9mIHhzKGkpKXtsZXQgbz10LmdldChhKXx8W107dC5zZXQoYSxvKSxvLnB1c2goW3tsYXllcjoidXNlciIsc29ydDpzLGltcG9ydGFudDohMX0sbl0pfX0pLHR9ZnVuY3Rpb24gcTIocixlKXtmb3IobGV0IHQgb2Ygcil7aWYoZS5ub3RDbGFzc0NhY2hlLmhhcyh0KXx8ZS5hcHBseUNsYXNzQ2FjaGUuaGFzKHQpKWNvbnRpbnVlO2lmKGUuY2xhc3NDYWNoZS5oYXModCkpe2UuYXBwbHlDbGFzc0NhY2hlLnNldCh0LGUuY2xhc3NDYWNoZS5nZXQodCkubWFwKChbbixzXSk9PltuLHMuY2xvbmUoKV0pKTtjb250aW51ZX1sZXQgaT1BcnJheS5mcm9tKFlvKHQsZSkpO2lmKGkubGVuZ3RoPT09MCl7ZS5ub3RDbGFzc0NhY2hlLmFkZCh0KTtjb250aW51ZX1lLmFwcGx5Q2xhc3NDYWNoZS5zZXQodCxpKX1yZXR1cm4gZS5hcHBseUNsYXNzQ2FjaGV9ZnVuY3Rpb24gJDIocil7bGV0IGU9bnVsbDtyZXR1cm57Z2V0OnQ9PihlPWV8fHIoKSxlLmdldCh0KSksaGFzOnQ9PihlPWV8fHIoKSxlLmhhcyh0KSl9fWZ1bmN0aW9uIEwyKHIpe3JldHVybntnZXQ6ZT0+ci5mbGF0TWFwKHQ9PnQuZ2V0KGUpfHxbXSksaGFzOmU9PnIuc29tZSh0PT50LmhhcyhlKSl9fWZ1bmN0aW9uIFVnKHIpe2xldCBlPXIuc3BsaXQoL1tcc1x0XG5dKy9nKTtyZXR1cm4gZVtlLmxlbmd0aC0xXT09PSIhaW1wb3J0YW50Ij9bZS5zbGljZSgwLC0xKSwhMF06W2UsITFdfWZ1bmN0aW9uIFZnKHIsZSx0KXtsZXQgaT1uZXcgU2V0LG49W107aWYoci53YWxrQXRSdWxlcygiYXBwbHkiLGw9PntsZXRbY109VWcobC5wYXJhbXMpO2ZvcihsZXQgZiBvZiBjKWkuYWRkKGYpO24ucHVzaChsKX0pLG4ubGVuZ3RoPT09MClyZXR1cm47bGV0IHM9TDIoW3QscTIoaSxlKV0pO2Z1bmN0aW9uIGEobCxjLGYpe2xldCBkPUlsKGwpLHA9SWwoYyksYj1JbChgLiR7VGUoZil9YCkubm9kZXNbMF0ubm9kZXNbMF07cmV0dXJuIGQuZWFjaCh2PT57bGV0IHk9bmV3IFNldDtwLmVhY2godz0+e2xldCBrPSExO3c9dy5jbG9uZSgpLHcud2Fsa0NsYXNzZXMoUz0+e1MudmFsdWU9PT1iLnZhbHVlJiYoa3x8KFMucmVwbGFjZVdpdGgoLi4udi5ub2Rlcy5tYXAoRT0+RS5jbG9uZSgpKSkseS5hZGQodyksaz0hMCkpfSl9KTtmb3IobGV0IHcgb2YgeSl7bGV0IGs9W1tdXTtmb3IobGV0IFMgb2Ygdy5ub2RlcylTLnR5cGU9PT0iY29tYmluYXRvciI/KGsucHVzaChTKSxrLnB1c2goW10pKTprW2subGVuZ3RoLTFdLnB1c2goUyk7dy5ub2Rlcz1bXTtmb3IobGV0IFMgb2YgaylBcnJheS5pc0FycmF5KFMpJiZTLnNvcnQoKEUsVCk9PkUudHlwZT09PSJ0YWciJiZULnR5cGU9PT0iY2xhc3MiPy0xOkUudHlwZT09PSJjbGFzcyImJlQudHlwZT09PSJ0YWciPzE6RS50eXBlPT09ImNsYXNzIiYmVC50eXBlPT09InBzZXVkbyImJlQudmFsdWUuc3RhcnRzV2l0aCgiOjoiKT8tMTpFLnR5cGU9PT0icHNldWRvIiYmRS52YWx1ZS5zdGFydHNXaXRoKCI6OiIpJiZULnR5cGU9PT0iY2xhc3MiPzE6MCksdy5ub2Rlcz13Lm5vZGVzLmNvbmNhdChTKX12LnJlcGxhY2VXaXRoKC4uLnkpfSksZC50b1N0cmluZygpfWxldCBvPW5ldyBNYXA7Zm9yKGxldCBsIG9mIG4pe2xldFtjXT1vLmdldChsLnBhcmVudCl8fFtbXSxsLnNvdXJjZV07by5zZXQobC5wYXJlbnQsW2MsbC5zb3VyY2VdKTtsZXRbZixkXT1VZyhsLnBhcmFtcyk7aWYobC5wYXJlbnQudHlwZT09PSJhdHJ1bGUiKXtpZihsLnBhcmVudC5uYW1lPT09InNjcmVlbiIpe2xldCBwPWwucGFyZW50LnBhcmFtczt0aHJvdyBsLmVycm9yKGBAYXBwbHkgaXMgbm90IHN1cHBvcnRlZCB3aXRoaW4gbmVzdGVkIGF0LXJ1bGVzIGxpa2UgQHNjcmVlbi4gV2Ugc3VnZ2VzdCB5b3Ugd3JpdGUgdGhpcyBhcyBAYXBwbHkgJHtmLm1hcChoPT5gJHtwfToke2h9YCkuam9pbigiICIpfSBpbnN0ZWFkLmApfXRocm93IGwuZXJyb3IoYEBhcHBseSBpcyBub3Qgc3VwcG9ydGVkIHdpdGhpbiBuZXN0ZWQgYXQtcnVsZXMgbGlrZSBAJHtsLnBhcmVudC5uYW1lfS4gWW91IGNhbiBmaXggdGhpcyBieSB1bi1uZXN0aW5nIEAke2wucGFyZW50Lm5hbWV9LmApfWZvcihsZXQgcCBvZiBmKXtpZihbamcoZSwiZ3JvdXAiKSxqZyhlLCJwZWVyIildLmluY2x1ZGVzKHApKXRocm93IGwuZXJyb3IoYEBhcHBseSBzaG91bGQgbm90IGJlIHVzZWQgd2l0aCB0aGUgJyR7cH0nIHV0aWxpdHlgKTtpZighcy5oYXMocCkpdGhyb3cgbC5lcnJvcihgVGhlIFxgJHtwfVxgIGNsYXNzIGRvZXMgbm90IGV4aXN0LiBJZiBcYCR7cH1cYCBpcyBhIGN1c3RvbSBjbGFzcywgbWFrZSBzdXJlIGl0IGlzIGRlZmluZWQgd2l0aGluIGEgXGBAbGF5ZXJcYCBkaXJlY3RpdmUuYCk7bGV0IGg9cy5nZXQocCk7Zm9yKGxldFssYl1vZiBoKWIudHlwZSE9PSJhdHJ1bGUiJiZiLndhbGtSdWxlcygoKT0+e3Rocm93IGwuZXJyb3IoW2BUaGUgXGAke3B9XGAgY2xhc3MgY2Fubm90IGJlIHVzZWQgd2l0aCBcYEBhcHBseVxgIGJlY2F1c2UgXGBAYXBwbHlcYCBkb2VzIG5vdCBjdXJyZW50bHkgc3VwcG9ydCBuZXN0ZWQgQ1NTLmAsIlJld3JpdGUgdGhlIHNlbGVjdG9yIHdpdGhvdXQgbmVzdGluZyBvciBjb25maWd1cmUgdGhlIGB0YWlsd2luZGNzcy9uZXN0aW5nYCBwbHVnaW46IiwiaHR0cHM6Ly90YWlsd2luZGNzcy5jb20vZG9jcy91c2luZy13aXRoLXByZXByb2Nlc3NvcnMjbmVzdGluZyJdLmpvaW4oYApgKSl9KTtjLnB1c2goW3AsZCxoXSl9fWZvcihsZXRbbCxbYyxmXV1vZiBvKXtsZXQgZD1bXTtmb3IobGV0W2gsYix2XW9mIGMpe2xldCB5PVtoLC4uLkZnKFtoXSxlLnRhaWx3aW5kQ29uZmlnLnNlcGFyYXRvcildO2ZvcihsZXRbdyxrXW9mIHYpe2xldCBTPXhzKGwpLEU9eHMoayk7aWYoRT1FLmdyb3Vwcy5maWx0ZXIoUj0+Ui5zb21lKEY9PnkuaW5jbHVkZXMoRikpKS5mbGF0KCksRT1FLmNvbmNhdChGZyhFLGUudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yKSksUy5zb21lKFI9PkUuaW5jbHVkZXMoUikpKXRocm93IGsuZXJyb3IoYFlvdSBjYW5ub3QgXGBAYXBwbHlcYCB0aGUgXGAke2h9XGAgdXRpbGl0eSBoZXJlIGJlY2F1c2UgaXQgY3JlYXRlcyBhIGNpcmN1bGFyIGRlcGVuZGVuY3kuYCk7bGV0IEI9ZWUucm9vdCh7bm9kZXM6W2suY2xvbmUoKV19KTtCLndhbGsoUj0+e1Iuc291cmNlPWZ9KSwoay50eXBlIT09ImF0cnVsZSJ8fGsudHlwZT09PSJhdHJ1bGUiJiZrLm5hbWUhPT0ia2V5ZnJhbWVzIikmJkIud2Fsa1J1bGVzKFI9PntpZigheHMoUikuc29tZShVPT5VPT09aCkpe1IucmVtb3ZlKCk7cmV0dXJufWxldCBGPXR5cGVvZiBlLnRhaWx3aW5kQ29uZmlnLmltcG9ydGFudD09InN0cmluZyI/ZS50YWlsd2luZENvbmZpZy5pbXBvcnRhbnQ6bnVsbCxfPWwucmF3cy50YWlsd2luZCE9PXZvaWQgMCYmRiYmbC5zZWxlY3Rvci5pbmRleE9mKEYpPT09MD9sLnNlbGVjdG9yLnNsaWNlKEYubGVuZ3RoKTpsLnNlbGVjdG9yO189PT0iIiYmKF89bC5zZWxlY3RvciksUi5zZWxlY3Rvcj1hKF8sUi5zZWxlY3RvcixoKSxGJiZfIT09bC5zZWxlY3RvciYmKFIuc2VsZWN0b3I9aXMoUi5zZWxlY3RvcixGKSksUi53YWxrRGVjbHMoVT0+e1UuaW1wb3J0YW50PXcuaW1wb3J0YW50fHxifSk7bGV0IFE9KDAsdnMuZGVmYXVsdCkoKS5hc3RTeW5jKFIuc2VsZWN0b3IpO1EuZWFjaChVPT5wcihVKSksUi5zZWxlY3Rvcj1RLnRvU3RyaW5nKCl9KSwhIUIubm9kZXNbMF0mJmQucHVzaChbdy5zb3J0LEIubm9kZXNbMF1dKX19bGV0IHA9ZS5vZmZzZXRzLnNvcnQoZCkubWFwKGg9PmhbMV0pO2wuYWZ0ZXIocCl9Zm9yKGxldCBsIG9mIG4pbC5wYXJlbnQubm9kZXMubGVuZ3RoPjE/bC5yZW1vdmUoKTpsLnBhcmVudC5yZW1vdmUoKTtWZyhyLGUsdCl9ZnVuY3Rpb24gRGwocil7cmV0dXJuIGU9PntsZXQgdD0kMigoKT0+RDIoZSxyKSk7VmcoZSxyLHQpfX12YXIgdnMsUjIsSGc9UCgoKT0+e3UoKTtPdCgpO3ZzPXBlKGl0KCkpO29zKCk7ZnIoKTtXbygpO3RzKCk7UjI9KDAsdnMuZGVmYXVsdCkoKX0pO3ZhciBXZz14KChucSxrcyk9Pnt1KCk7KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoaSxuLHMpe2lmKCFpKXJldHVybiBudWxsO3IuY2FzZVNlbnNpdGl2ZXx8KGk9aS50b0xvd2VyQ2FzZSgpKTt2YXIgYT1yLnRocmVzaG9sZD09PW51bGw/bnVsbDpyLnRocmVzaG9sZCppLmxlbmd0aCxvPXIudGhyZXNob2xkQWJzb2x1dGUsbDthIT09bnVsbCYmbyE9PW51bGw/bD1NYXRoLm1pbihhLG8pOmEhPT1udWxsP2w9YTpvIT09bnVsbD9sPW86bD1udWxsO3ZhciBjLGYsZCxwLGgsYj1uLmxlbmd0aDtmb3IoaD0wO2g8YjtoKyspaWYoZj1uW2hdLHMmJihmPWZbc10pLCEhZiYmKHIuY2FzZVNlbnNpdGl2ZT9kPWY6ZD1mLnRvTG93ZXJDYXNlKCkscD10KGksZCxsKSwobD09PW51bGx8fHA8bCkmJihsPXAscyYmci5yZXR1cm5XaW5uaW5nT2JqZWN0P2M9bltoXTpjPWYsci5yZXR1cm5GaXJzdE1hdGNoKSkpcmV0dXJuIGM7cmV0dXJuIGN8fHIubnVsbFJlc3VsdFZhbHVlfXIudGhyZXNob2xkPS40LHIudGhyZXNob2xkQWJzb2x1dGU9MjAsci5jYXNlU2Vuc2l0aXZlPSExLHIubnVsbFJlc3VsdFZhbHVlPW51bGwsci5yZXR1cm5XaW5uaW5nT2JqZWN0PW51bGwsci5yZXR1cm5GaXJzdE1hdGNoPSExLHR5cGVvZiBrcyE9InVuZGVmaW5lZCImJmtzLmV4cG9ydHM/a3MuZXhwb3J0cz1yOndpbmRvdy5kaWRZb3VNZWFuPXI7dmFyIGU9TWF0aC5wb3coMiwzMiktMTtmdW5jdGlvbiB0KGksbixzKXtzPXN8fHM9PT0wP3M6ZTt2YXIgYT1pLmxlbmd0aCxvPW4ubGVuZ3RoO2lmKGE9PT0wKXJldHVybiBNYXRoLm1pbihzKzEsbyk7aWYobz09PTApcmV0dXJuIE1hdGgubWluKHMrMSxhKTtpZihNYXRoLmFicyhhLW8pPnMpcmV0dXJuIHMrMTt2YXIgbD1bXSxjLGYsZCxwLGg7Zm9yKGM9MDtjPD1vO2MrKylsW2NdPVtjXTtmb3IoZj0wO2Y8PWE7ZisrKWxbMF1bZl09Zjtmb3IoYz0xO2M8PW87YysrKXtmb3IoZD1lLHA9MSxjPnMmJihwPWMtcyksaD1vKzEsaD5zK2MmJihoPXMrYyksZj0xO2Y8PWE7ZisrKWY8cHx8Zj5oP2xbY11bZl09cysxOm4uY2hhckF0KGMtMSk9PT1pLmNoYXJBdChmLTEpP2xbY11bZl09bFtjLTFdW2YtMV06bFtjXVtmXT1NYXRoLm1pbihsW2MtMV1bZi0xXSsxLE1hdGgubWluKGxbY11bZi0xXSsxLGxbYy0xXVtmXSsxKSksbFtjXVtmXTxkJiYoZD1sW2NdW2ZdKTtpZihkPnMpcmV0dXJuIHMrMX1yZXR1cm4gbFtvXVthXX19KSgpfSk7dmFyIFFnPXgoKHNxLEdnKT0+e3UoKTt2YXIgcWw9IigiLmNoYXJDb2RlQXQoMCksJGw9IikiLmNoYXJDb2RlQXQoMCksU3M9IiciLmNoYXJDb2RlQXQoMCksTGw9JyInLmNoYXJDb2RlQXQoMCksTWw9IlxcIi5jaGFyQ29kZUF0KDApLHlyPSIvIi5jaGFyQ29kZUF0KDApLE5sPSIsIi5jaGFyQ29kZUF0KDApLEJsPSI6Ii5jaGFyQ29kZUF0KDApLEFzPSIqIi5jaGFyQ29kZUF0KDApLE0yPSJ1Ii5jaGFyQ29kZUF0KDApLE4yPSJVIi5jaGFyQ29kZUF0KDApLEIyPSIrIi5jaGFyQ29kZUF0KDApLEYyPS9eW2EtZjAtOT8tXSskL2k7R2cuZXhwb3J0cz1mdW5jdGlvbihyKXtmb3IodmFyIGU9W10sdD1yLGksbixzLGEsbyxsLGMsZixkPTAscD10LmNoYXJDb2RlQXQoZCksaD10Lmxlbmd0aCxiPVt7bm9kZXM6ZX1dLHY9MCx5LHc9IiIsaz0iIixTPSIiO2Q8aDspaWYocDw9MzIpe2k9ZDtkbyBpKz0xLHA9dC5jaGFyQ29kZUF0KGkpO3doaWxlKHA8PTMyKTthPXQuc2xpY2UoZCxpKSxzPWVbZS5sZW5ndGgtMV0scD09PSRsJiZ2P1M9YTpzJiZzLnR5cGU9PT0iZGl2Ij8ocy5hZnRlcj1hLHMuc291cmNlRW5kSW5kZXgrPWEubGVuZ3RoKTpwPT09Tmx8fHA9PT1CbHx8cD09PXlyJiZ0LmNoYXJDb2RlQXQoaSsxKSE9PUFzJiYoIXl8fHkmJnkudHlwZT09PSJmdW5jdGlvbiImJiExKT9rPWE6ZS5wdXNoKHt0eXBlOiJzcGFjZSIsc291cmNlSW5kZXg6ZCxzb3VyY2VFbmRJbmRleDppLHZhbHVlOmF9KSxkPWl9ZWxzZSBpZihwPT09U3N8fHA9PT1MbCl7aT1kLG49cD09PVNzPyInIjonIicsYT17dHlwZToic3RyaW5nIixzb3VyY2VJbmRleDpkLHF1b3RlOm59O2RvIGlmKG89ITEsaT10LmluZGV4T2YobixpKzEpLH5pKWZvcihsPWk7dC5jaGFyQ29kZUF0KGwtMSk9PT1NbDspbC09MSxvPSFvO2Vsc2UgdCs9bixpPXQubGVuZ3RoLTEsYS51bmNsb3NlZD0hMDt3aGlsZShvKTthLnZhbHVlPXQuc2xpY2UoZCsxLGkpLGEuc291cmNlRW5kSW5kZXg9YS51bmNsb3NlZD9pOmkrMSxlLnB1c2goYSksZD1pKzEscD10LmNoYXJDb2RlQXQoZCl9ZWxzZSBpZihwPT09eXImJnQuY2hhckNvZGVBdChkKzEpPT09QXMpaT10LmluZGV4T2YoIiovIixkKSxhPXt0eXBlOiJjb21tZW50Iixzb3VyY2VJbmRleDpkLHNvdXJjZUVuZEluZGV4OmkrMn0saT09PS0xJiYoYS51bmNsb3NlZD0hMCxpPXQubGVuZ3RoLGEuc291cmNlRW5kSW5kZXg9aSksYS52YWx1ZT10LnNsaWNlKGQrMixpKSxlLnB1c2goYSksZD1pKzIscD10LmNoYXJDb2RlQXQoZCk7ZWxzZSBpZigocD09PXlyfHxwPT09QXMpJiZ5JiZ5LnR5cGU9PT0iZnVuY3Rpb24iKWE9dFtkXSxlLnB1c2goe3R5cGU6IndvcmQiLHNvdXJjZUluZGV4OmQtay5sZW5ndGgsc291cmNlRW5kSW5kZXg6ZCthLmxlbmd0aCx2YWx1ZTphfSksZCs9MSxwPXQuY2hhckNvZGVBdChkKTtlbHNlIGlmKHA9PT15cnx8cD09PU5sfHxwPT09QmwpYT10W2RdLGUucHVzaCh7dHlwZToiZGl2Iixzb3VyY2VJbmRleDpkLWsubGVuZ3RoLHNvdXJjZUVuZEluZGV4OmQrYS5sZW5ndGgsdmFsdWU6YSxiZWZvcmU6ayxhZnRlcjoiIn0pLGs9IiIsZCs9MSxwPXQuY2hhckNvZGVBdChkKTtlbHNlIGlmKHFsPT09cCl7aT1kO2RvIGkrPTEscD10LmNoYXJDb2RlQXQoaSk7d2hpbGUocDw9MzIpO2lmKGY9ZCxhPXt0eXBlOiJmdW5jdGlvbiIsc291cmNlSW5kZXg6ZC13Lmxlbmd0aCx2YWx1ZTp3LGJlZm9yZTp0LnNsaWNlKGYrMSxpKX0sZD1pLHc9PT0idXJsIiYmcCE9PVNzJiZwIT09TGwpe2ktPTE7ZG8gaWYobz0hMSxpPXQuaW5kZXhPZigiKSIsaSsxKSx+aSlmb3IobD1pO3QuY2hhckNvZGVBdChsLTEpPT09TWw7KWwtPTEsbz0hbztlbHNlIHQrPSIpIixpPXQubGVuZ3RoLTEsYS51bmNsb3NlZD0hMDt3aGlsZShvKTtjPWk7ZG8gYy09MSxwPXQuY2hhckNvZGVBdChjKTt3aGlsZShwPD0zMik7ZjxjPyhkIT09YysxP2Eubm9kZXM9W3t0eXBlOiJ3b3JkIixzb3VyY2VJbmRleDpkLHNvdXJjZUVuZEluZGV4OmMrMSx2YWx1ZTp0LnNsaWNlKGQsYysxKX1dOmEubm9kZXM9W10sYS51bmNsb3NlZCYmYysxIT09aT8oYS5hZnRlcj0iIixhLm5vZGVzLnB1c2goe3R5cGU6InNwYWNlIixzb3VyY2VJbmRleDpjKzEsc291cmNlRW5kSW5kZXg6aSx2YWx1ZTp0LnNsaWNlKGMrMSxpKX0pKTooYS5hZnRlcj10LnNsaWNlKGMrMSxpKSxhLnNvdXJjZUVuZEluZGV4PWkpKTooYS5hZnRlcj0iIixhLm5vZGVzPVtdKSxkPWkrMSxhLnNvdXJjZUVuZEluZGV4PWEudW5jbG9zZWQ/aTpkLHA9dC5jaGFyQ29kZUF0KGQpLGUucHVzaChhKX1lbHNlIHYrPTEsYS5hZnRlcj0iIixhLnNvdXJjZUVuZEluZGV4PWQrMSxlLnB1c2goYSksYi5wdXNoKGEpLGU9YS5ub2Rlcz1bXSx5PWE7dz0iIn1lbHNlIGlmKCRsPT09cCYmdilkKz0xLHA9dC5jaGFyQ29kZUF0KGQpLHkuYWZ0ZXI9Uyx5LnNvdXJjZUVuZEluZGV4Kz1TLmxlbmd0aCxTPSIiLHYtPTEsYltiLmxlbmd0aC0xXS5zb3VyY2VFbmRJbmRleD1kLGIucG9wKCkseT1iW3ZdLGU9eS5ub2RlcztlbHNle2k9ZDtkbyBwPT09TWwmJihpKz0xKSxpKz0xLHA9dC5jaGFyQ29kZUF0KGkpO3doaWxlKGk8aCYmIShwPD0zMnx8cD09PVNzfHxwPT09TGx8fHA9PT1ObHx8cD09PUJsfHxwPT09eXJ8fHA9PT1xbHx8cD09PUFzJiZ5JiZ5LnR5cGU9PT0iZnVuY3Rpb24iJiYhMHx8cD09PXlyJiZ5LnR5cGU9PT0iZnVuY3Rpb24iJiYhMHx8cD09PSRsJiZ2KSk7YT10LnNsaWNlKGQsaSkscWw9PT1wP3c9YTooTTI9PT1hLmNoYXJDb2RlQXQoMCl8fE4yPT09YS5jaGFyQ29kZUF0KDApKSYmQjI9PT1hLmNoYXJDb2RlQXQoMSkmJkYyLnRlc3QoYS5zbGljZSgyKSk/ZS5wdXNoKHt0eXBlOiJ1bmljb2RlLXJhbmdlIixzb3VyY2VJbmRleDpkLHNvdXJjZUVuZEluZGV4OmksdmFsdWU6YX0pOmUucHVzaCh7dHlwZToid29yZCIsc291cmNlSW5kZXg6ZCxzb3VyY2VFbmRJbmRleDppLHZhbHVlOmF9KSxkPWl9Zm9yKGQ9Yi5sZW5ndGgtMTtkO2QtPTEpYltkXS51bmNsb3NlZD0hMCxiW2RdLnNvdXJjZUVuZEluZGV4PXQubGVuZ3RoO3JldHVybiBiWzBdLm5vZGVzfX0pO3ZhciBLZz14KChhcSxZZyk9Pnt1KCk7WWcuZXhwb3J0cz1mdW5jdGlvbiByKGUsdCxpKXt2YXIgbixzLGEsbztmb3Iobj0wLHM9ZS5sZW5ndGg7bjxzO24rPTEpYT1lW25dLGl8fChvPXQoYSxuLGUpKSxvIT09ITEmJmEudHlwZT09PSJmdW5jdGlvbiImJkFycmF5LmlzQXJyYXkoYS5ub2RlcykmJnIoYS5ub2Rlcyx0LGkpLGkmJnQoYSxuLGUpfX0pO3ZhciBleT14KChvcSxKZyk9Pnt1KCk7ZnVuY3Rpb24gWGcocixlKXt2YXIgdD1yLnR5cGUsaT1yLnZhbHVlLG4scztyZXR1cm4gZSYmKHM9ZShyKSkhPT12b2lkIDA/czp0PT09IndvcmQifHx0PT09InNwYWNlIj9pOnQ9PT0ic3RyaW5nIj8obj1yLnF1b3RlfHwiIixuK2krKHIudW5jbG9zZWQ/IiI6bikpOnQ9PT0iY29tbWVudCI/Ii8qIitpKyhyLnVuY2xvc2VkPyIiOiIqLyIpOnQ9PT0iZGl2Ij8oci5iZWZvcmV8fCIiKStpKyhyLmFmdGVyfHwiIik6QXJyYXkuaXNBcnJheShyLm5vZGVzKT8obj1aZyhyLm5vZGVzLGUpLHQhPT0iZnVuY3Rpb24iP246aSsiKCIrKHIuYmVmb3JlfHwiIikrbisoci5hZnRlcnx8IiIpKyhyLnVuY2xvc2VkPyIiOiIpIikpOml9ZnVuY3Rpb24gWmcocixlKXt2YXIgdCxpO2lmKEFycmF5LmlzQXJyYXkocikpe2Zvcih0PSIiLGk9ci5sZW5ndGgtMTt+aTtpLT0xKXQ9WGcocltpXSxlKSt0O3JldHVybiB0fXJldHVybiBYZyhyLGUpfUpnLmV4cG9ydHM9Wmd9KTt2YXIgcnk9eCgobHEsdHkpPT57dSgpO3ZhciBDcz0iLSIuY2hhckNvZGVBdCgwKSxfcz0iKyIuY2hhckNvZGVBdCgwKSxGbD0iLiIuY2hhckNvZGVBdCgwKSxqMj0iZSIuY2hhckNvZGVBdCgwKSx6Mj0iRSIuY2hhckNvZGVBdCgwKTtmdW5jdGlvbiBVMihyKXt2YXIgZT1yLmNoYXJDb2RlQXQoMCksdDtpZihlPT09X3N8fGU9PT1Dcyl7aWYodD1yLmNoYXJDb2RlQXQoMSksdD49NDgmJnQ8PTU3KXJldHVybiEwO3ZhciBpPXIuY2hhckNvZGVBdCgyKTtyZXR1cm4gdD09PUZsJiZpPj00OCYmaTw9NTd9cmV0dXJuIGU9PT1GbD8odD1yLmNoYXJDb2RlQXQoMSksdD49NDgmJnQ8PTU3KTplPj00OCYmZTw9NTd9dHkuZXhwb3J0cz1mdW5jdGlvbihyKXt2YXIgZT0wLHQ9ci5sZW5ndGgsaSxuLHM7aWYodD09PTB8fCFVMihyKSlyZXR1cm4hMTtmb3IoaT1yLmNoYXJDb2RlQXQoZSksKGk9PT1fc3x8aT09PUNzKSYmZSsrO2U8dCYmKGk9ci5jaGFyQ29kZUF0KGUpLCEoaTw0OHx8aT41NykpOyllKz0xO2lmKGk9ci5jaGFyQ29kZUF0KGUpLG49ci5jaGFyQ29kZUF0KGUrMSksaT09PUZsJiZuPj00OCYmbjw9NTcpZm9yKGUrPTI7ZTx0JiYoaT1yLmNoYXJDb2RlQXQoZSksIShpPDQ4fHxpPjU3KSk7KWUrPTE7aWYoaT1yLmNoYXJDb2RlQXQoZSksbj1yLmNoYXJDb2RlQXQoZSsxKSxzPXIuY2hhckNvZGVBdChlKzIpLChpPT09ajJ8fGk9PT16MikmJihuPj00OCYmbjw9NTd8fChuPT09X3N8fG49PT1DcykmJnM+PTQ4JiZzPD01NykpZm9yKGUrPW49PT1fc3x8bj09PUNzPzM6MjtlPHQmJihpPXIuY2hhckNvZGVBdChlKSwhKGk8NDh8fGk+NTcpKTspZSs9MTtyZXR1cm57bnVtYmVyOnIuc2xpY2UoMCxlKSx1bml0OnIuc2xpY2UoZSl9fX0pO3ZhciBheT14KCh1cSxzeSk9Pnt1KCk7dmFyIFYyPVFnKCksaXk9S2coKSxueT1leSgpO2Z1bmN0aW9uICR0KHIpe3JldHVybiB0aGlzIGluc3RhbmNlb2YgJHQ/KHRoaXMubm9kZXM9VjIociksdGhpcyk6bmV3ICR0KHIpfSR0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBBcnJheS5pc0FycmF5KHRoaXMubm9kZXMpP255KHRoaXMubm9kZXMpOiIifTskdC5wcm90b3R5cGUud2Fsaz1mdW5jdGlvbihyLGUpe3JldHVybiBpeSh0aGlzLm5vZGVzLHIsZSksdGhpc307JHQudW5pdD1yeSgpOyR0LndhbGs9aXk7JHQuc3RyaW5naWZ5PW55O3N5LmV4cG9ydHM9JHR9KTtmdW5jdGlvbiB6bChyKXtyZXR1cm4gdHlwZW9mIHI9PSJvYmplY3QiJiZyIT09bnVsbH1mdW5jdGlvbiBIMihyLGUpe2xldCB0PWt0KGUpO2RvIGlmKHQucG9wKCksKDAsTWkuZGVmYXVsdCkocix0KSE9PXZvaWQgMClicmVhazt3aGlsZSh0Lmxlbmd0aCk7cmV0dXJuIHQubGVuZ3RoP3Q6dm9pZCAwfWZ1bmN0aW9uIGJyKHIpe3JldHVybiB0eXBlb2Ygcj09InN0cmluZyI/cjpyLnJlZHVjZSgoZSx0LGkpPT50LmluY2x1ZGVzKCIuIik/YCR7ZX1bJHt0fV1gOmk9PT0wP3Q6YCR7ZX0uJHt0fWAsIiIpfWZ1bmN0aW9uIGx5KHIpe3JldHVybiByLm1hcChlPT5gJyR7ZX0nYCkuam9pbigiLCAiKX1mdW5jdGlvbiB1eShyKXtyZXR1cm4gbHkoT2JqZWN0LmtleXMocikpfWZ1bmN0aW9uIFVsKHIsZSx0LGk9e30pe2xldCBuPUFycmF5LmlzQXJyYXkoZSk/YnIoZSk6ZS5yZXBsYWNlKC9eWyciXSt8WyciXSskL2csIiIpLHM9QXJyYXkuaXNBcnJheShlKT9lOmt0KG4pLGE9KDAsTWkuZGVmYXVsdCkoci50aGVtZSxzLHQpO2lmKGE9PT12b2lkIDApe2xldCBsPWAnJHtufScgZG9lcyBub3QgZXhpc3QgaW4geW91ciB0aGVtZSBjb25maWcuYCxjPXMuc2xpY2UoMCwtMSksZj0oMCxNaS5kZWZhdWx0KShyLnRoZW1lLGMpO2lmKHpsKGYpKXtsZXQgZD1PYmplY3Qua2V5cyhmKS5maWx0ZXIoaD0+VWwocixbLi4uYyxoXSkuaXNWYWxpZCkscD0oMCxveS5kZWZhdWx0KShzW3MubGVuZ3RoLTFdLGQpO3A/bCs9YCBEaWQgeW91IG1lYW4gJyR7YnIoWy4uLmMscF0pfSc/YDpkLmxlbmd0aD4wJiYobCs9YCAnJHticihjKX0nIGhhcyB0aGUgZm9sbG93aW5nIHZhbGlkIGtleXM6ICR7bHkoZCl9YCl9ZWxzZXtsZXQgZD1IMihyLnRoZW1lLG4pO2lmKGQpe2xldCBwPSgwLE1pLmRlZmF1bHQpKHIudGhlbWUsZCk7emwocCk/bCs9YCAnJHticihkKX0nIGhhcyB0aGUgZm9sbG93aW5nIGtleXM6ICR7dXkocCl9YDpsKz1gICcke2JyKGQpfScgaXMgbm90IGFuIG9iamVjdC5gfWVsc2UgbCs9YCBZb3VyIHRoZW1lIGhhcyB0aGUgZm9sbG93aW5nIHRvcC1sZXZlbCBrZXlzOiAke3V5KHIudGhlbWUpfWB9cmV0dXJue2lzVmFsaWQ6ITEsZXJyb3I6bH19aWYoISh0eXBlb2YgYT09InN0cmluZyJ8fHR5cGVvZiBhPT0ibnVtYmVyInx8dHlwZW9mIGE9PSJmdW5jdGlvbiJ8fGEgaW5zdGFuY2VvZiBTdHJpbmd8fGEgaW5zdGFuY2VvZiBOdW1iZXJ8fEFycmF5LmlzQXJyYXkoYSkpKXtsZXQgbD1gJyR7bn0nIHdhcyBmb3VuZCBidXQgZG9lcyBub3QgcmVzb2x2ZSB0byBhIHN0cmluZy5gO2lmKHpsKGEpKXtsZXQgYz1PYmplY3Qua2V5cyhhKS5maWx0ZXIoZj0+VWwocixbLi4ucyxmXSkuaXNWYWxpZCk7Yy5sZW5ndGgmJihsKz1gIERpZCB5b3UgbWVhbiBzb21ldGhpbmcgbGlrZSAnJHticihbLi4ucyxjWzBdXSl9Jz9gKX1yZXR1cm57aXNWYWxpZDohMSxlcnJvcjpsfX1sZXRbb109cztyZXR1cm57aXNWYWxpZDohMCx2YWx1ZTptdChvKShhLGkpfX1mdW5jdGlvbiBXMihyLGUsdCl7ZT1lLm1hcChuPT5meShyLG4sdCkpO2xldCBpPVsiIl07Zm9yKGxldCBuIG9mIGUpbi50eXBlPT09ImRpdiImJm4udmFsdWU9PT0iLCI/aS5wdXNoKCIiKTppW2kubGVuZ3RoLTFdKz1qbC5kZWZhdWx0LnN0cmluZ2lmeShuKTtyZXR1cm4gaX1mdW5jdGlvbiBmeShyLGUsdCl7aWYoZS50eXBlPT09ImZ1bmN0aW9uIiYmdFtlLnZhbHVlXSE9PXZvaWQgMCl7bGV0IGk9VzIocixlLm5vZGVzLHQpO2UudHlwZT0id29yZCIsZS52YWx1ZT10W2UudmFsdWVdKHIsLi4uaSl9cmV0dXJuIGV9ZnVuY3Rpb24gRzIocixlLHQpe3JldHVybiBPYmplY3Qua2V5cyh0KS5zb21lKG49PmUuaW5jbHVkZXMoYCR7bn0oYCkpPygwLGpsLmRlZmF1bHQpKGUpLndhbGsobj0+e2Z5KHIsbix0KX0pLnRvU3RyaW5nKCk6ZX1mdW5jdGlvbipZMihyKXtyPXIucmVwbGFjZSgvXlsnIl0rfFsnIl0rJC9nLCIiKTtsZXQgZT1yLm1hdGNoKC9eKFteXHNdKykoPyFbXlxbXSpcXSkoPzpccypcL1xzKihbXlwvXHNdKykpJC8pLHQ7eWllbGRbcix2b2lkIDBdLGUmJihyPWVbMV0sdD1lWzJdLHlpZWxkW3IsdF0pfWZ1bmN0aW9uIEsyKHIsZSx0KXtsZXQgaT1BcnJheS5mcm9tKFkyKGUpKS5tYXAoKFtuLHNdKT0+T2JqZWN0LmFzc2lnbihVbChyLG4sdCx7b3BhY2l0eVZhbHVlOnN9KSx7cmVzb2x2ZWRQYXRoOm4sYWxwaGE6c30pKTtyZXR1cm4gaS5maW5kKG49Pm4uaXNWYWxpZCk/P2lbMF19ZnVuY3Rpb24gY3kocil7bGV0IGU9ci50YWlsd2luZENvbmZpZyx0PXt0aGVtZTooaSxuLC4uLnMpPT57bGV0e2lzVmFsaWQ6YSx2YWx1ZTpvLGVycm9yOmwsYWxwaGE6Y309SzIoZSxuLHMubGVuZ3RoP3M6dm9pZCAwKTtpZighYSl7bGV0IHA9aS5wYXJlbnQsaD1wPy5yYXdzLnRhaWx3aW5kPy5jYW5kaWRhdGU7aWYocCYmaCE9PXZvaWQgMCl7ci5tYXJrSW52YWxpZFV0aWxpdHlOb2RlKHApLHAucmVtb3ZlKCksRy53YXJuKCJpbnZhbGlkLXRoZW1lLWtleS1pbi1jbGFzcyIsW2BUaGUgdXRpbGl0eSBcYCR7aH1cYCBjb250YWlucyBhbiBpbnZhbGlkIHRoZW1lIHZhbHVlIGFuZCB3YXMgbm90IGdlbmVyYXRlZC5gXSk7cmV0dXJufXRocm93IGkuZXJyb3IobCl9bGV0IGY9WHQobyksZD1mIT09dm9pZCAwJiZ0eXBlb2YgZj09ImZ1bmN0aW9uIjtyZXR1cm4oYyE9PXZvaWQgMHx8ZCkmJihjPT09dm9pZCAwJiYoYz0xKSxvPUplKGYsYyxmKSksb30sc2NyZWVuOihpLG4pPT57bj1uLnJlcGxhY2UoL15bJyJdKy9nLCIiKS5yZXBsYWNlKC9bJyJdKyQvZywiIik7bGV0IGE9UnQoZS50aGVtZS5zY3JlZW5zKS5maW5kKCh7bmFtZTpvfSk9Pm89PT1uKTtpZighYSl0aHJvdyBpLmVycm9yKGBUaGUgJyR7bn0nIHNjcmVlbiBkb2VzIG5vdCBleGlzdCBpbiB5b3VyIHRoZW1lLmApO3JldHVybiBUdChhKX19O3JldHVybiBpPT57aS53YWxrKG49PntsZXQgcz1RMltuLnR5cGVdO3MhPT12b2lkIDAmJihuW3NdPUcyKG4sbltzXSx0KSl9KX19dmFyIE1pLG95LGpsLFEyLHB5PVAoKCk9Pnt1KCk7TWk9cGUoUmEoKSksb3k9cGUoV2coKSk7Q2koKTtqbD1wZShheSgpKTtabigpO1luKCk7WWkoKTtMcigpO0ZyKCk7QmUoKTtRMj17YXRydWxlOiJwYXJhbXMiLGRlY2w6InZhbHVlIn19KTtmdW5jdGlvbiBkeSh7dGFpbHdpbmRDb25maWc6e3RoZW1lOnJ9fSl7cmV0dXJuIGZ1bmN0aW9uKGUpe2Uud2Fsa0F0UnVsZXMoInNjcmVlbiIsdD0+e2xldCBpPXQucGFyYW1zLHM9UnQoci5zY3JlZW5zKS5maW5kKCh7bmFtZTphfSk9PmE9PT1pKTtpZighcyl0aHJvdyB0LmVycm9yKGBObyBcYCR7aX1cYCBzY3JlZW4gZm91bmQuYCk7dC5uYW1lPSJtZWRpYSIsdC5wYXJhbXM9VHQocyl9KX19dmFyIGh5PVAoKCk9Pnt1KCk7Wm4oKTtZbigpfSk7ZnVuY3Rpb24gWDIocil7bGV0IGU9ci5maWx0ZXIobz0+by50eXBlIT09InBzZXVkbyJ8fG8ubm9kZXMubGVuZ3RoPjA/ITA6by52YWx1ZS5zdGFydHNXaXRoKCI6OiIpfHxbIjpiZWZvcmUiLCI6YWZ0ZXIiLCI6Zmlyc3QtbGluZSIsIjpmaXJzdC1sZXR0ZXIiXS5pbmNsdWRlcyhvLnZhbHVlKSkucmV2ZXJzZSgpLHQ9bmV3IFNldChbInRhZyIsImNsYXNzIiwiaWQiLCJhdHRyaWJ1dGUiXSksaT1lLmZpbmRJbmRleChvPT50LmhhcyhvLnR5cGUpKTtpZihpPT09LTEpcmV0dXJuIGUucmV2ZXJzZSgpLmpvaW4oIiIpLnRyaW0oKTtsZXQgbj1lW2ldLHM9bXlbbi50eXBlXT9teVtuLnR5cGVdKG4pOm47ZT1lLnNsaWNlKDAsaSk7bGV0IGE9ZS5maW5kSW5kZXgobz0+by50eXBlPT09ImNvbWJpbmF0b3IiJiZvLnZhbHVlPT09Ij4iKTtyZXR1cm4gYSE9PS0xJiYoZS5zcGxpY2UoMCxhKSxlLnVuc2hpZnQoRXMuZGVmYXVsdC51bml2ZXJzYWwoKSkpLFtzLC4uLmUucmV2ZXJzZSgpXS5qb2luKCIiKS50cmltKCl9ZnVuY3Rpb24gSjIocil7cmV0dXJuIFZsLmhhcyhyKXx8Vmwuc2V0KHIsWjIudHJhbnNmb3JtU3luYyhyKSksVmwuZ2V0KHIpfWZ1bmN0aW9uIEhsKHt0YWlsd2luZENvbmZpZzpyfSl7cmV0dXJuIGU9PntsZXQgdD1uZXcgTWFwLGk9bmV3IFNldDtpZihlLndhbGtBdFJ1bGVzKCJkZWZhdWx0cyIsbj0+e2lmKG4ubm9kZXMmJm4ubm9kZXMubGVuZ3RoPjApe2kuYWRkKG4pO3JldHVybn1sZXQgcz1uLnBhcmFtczt0LmhhcyhzKXx8dC5zZXQocyxuZXcgU2V0KSx0LmdldChzKS5hZGQobi5wYXJlbnQpLG4ucmVtb3ZlKCl9KSx3ZShyLCJvcHRpbWl6ZVVuaXZlcnNhbERlZmF1bHRzIikpZm9yKGxldCBuIG9mIGkpe2xldCBzPW5ldyBNYXAsYT10LmdldChuLnBhcmFtcyk/P1tdO2ZvcihsZXQgbyBvZiBhKWZvcihsZXQgbCBvZiBKMihvLnNlbGVjdG9yKSl7bGV0IGM9bC5pbmNsdWRlcygiOi0iKXx8bC5pbmNsdWRlcygiOjotIil8fGwuaW5jbHVkZXMoIjpoYXMiKT9sOiJfX0RFRkFVTFRfXyIsZj1zLmdldChjKT8/bmV3IFNldDtzLnNldChjLGYpLGYuYWRkKGwpfWlmKHMuc2l6ZT09PTApe24ucmVtb3ZlKCk7Y29udGludWV9Zm9yKGxldFssb11vZiBzKXtsZXQgbD1lZS5ydWxlKHtzb3VyY2U6bi5zb3VyY2V9KTtsLnNlbGVjdG9ycz1bLi4ub10sbC5hcHBlbmQobi5ub2Rlcy5tYXAoYz0+Yy5jbG9uZSgpKSksbi5iZWZvcmUobCl9bi5yZW1vdmUoKX1lbHNlIGlmKGkuc2l6ZSl7bGV0IG49ZWUucnVsZSh7c2VsZWN0b3JzOlsiKiIsIjo6YmVmb3JlIiwiOjphZnRlciJdfSk7Zm9yKGxldCBhIG9mIGkpbi5hcHBlbmQoYS5ub2Rlcyksbi5wYXJlbnR8fGEuYmVmb3JlKG4pLG4uc291cmNlfHwobi5zb3VyY2U9YS5zb3VyY2UpLGEucmVtb3ZlKCk7bGV0IHM9bi5jbG9uZSh7c2VsZWN0b3JzOlsiOjpiYWNrZHJvcCJdfSk7bi5hZnRlcihzKX19fXZhciBFcyxteSxaMixWbCxneT1QKCgpPT57dSgpO090KCk7RXM9cGUoaXQoKSk7Y3QoKTtteT17aWQocil7cmV0dXJuIEVzLmRlZmF1bHQuYXR0cmlidXRlKHthdHRyaWJ1dGU6ImlkIixvcGVyYXRvcjoiPSIsdmFsdWU6ci52YWx1ZSxxdW90ZU1hcms6JyInfSl9fTtaMj0oMCxFcy5kZWZhdWx0KShyPT5yLm1hcChlPT57bGV0IHQ9ZS5zcGxpdChpPT5pLnR5cGU9PT0iY29tYmluYXRvciImJmkudmFsdWU9PT0iICIpLnBvcCgpO3JldHVybiBYMih0KX0pKSxWbD1uZXcgTWFwfSk7ZnVuY3Rpb24gV2woKXtmdW5jdGlvbiByKGUpe2xldCB0PW51bGw7ZS5lYWNoKGk9PntpZighZU8uaGFzKGkudHlwZSkpe3Q9bnVsbDtyZXR1cm59aWYodD09PW51bGwpe3Q9aTtyZXR1cm59bGV0IG49eXlbaS50eXBlXTtpLnR5cGU9PT0iYXRydWxlIiYmaS5uYW1lPT09ImZvbnQtZmFjZSI/dD1pOm4uZXZlcnkocz0+KGlbc10/PyIiKS5yZXBsYWNlKC9ccysvZywiICIpPT09KHRbc10/PyIiKS5yZXBsYWNlKC9ccysvZywiICIpKT8oaS5ub2RlcyYmdC5hcHBlbmQoaS5ub2RlcyksaS5yZW1vdmUoKSk6dD1pfSksZS5lYWNoKGk9PntpLnR5cGU9PT0iYXRydWxlIiYmcihpKX0pfXJldHVybiBlPT57cihlKX19dmFyIHl5LGVPLGJ5PVAoKCk9Pnt1KCk7eXk9e2F0cnVsZTpbIm5hbWUiLCJwYXJhbXMiXSxydWxlOlsic2VsZWN0b3IiXX0sZU89bmV3IFNldChPYmplY3Qua2V5cyh5eSkpfSk7ZnVuY3Rpb24gR2woKXtyZXR1cm4gcj0+e3Iud2Fsa1J1bGVzKGU9PntsZXQgdD1uZXcgTWFwLGk9bmV3IFNldChbXSksbj1uZXcgTWFwO2Uud2Fsa0RlY2xzKHM9PntpZihzLnBhcmVudD09PWUpe2lmKHQuaGFzKHMucHJvcCkpe2lmKHQuZ2V0KHMucHJvcCkudmFsdWU9PT1zLnZhbHVlKXtpLmFkZCh0LmdldChzLnByb3ApKSx0LnNldChzLnByb3Ascyk7cmV0dXJufW4uaGFzKHMucHJvcCl8fG4uc2V0KHMucHJvcCxuZXcgU2V0KSxuLmdldChzLnByb3ApLmFkZCh0LmdldChzLnByb3ApKSxuLmdldChzLnByb3ApLmFkZChzKX10LnNldChzLnByb3Ascyl9fSk7Zm9yKGxldCBzIG9mIGkpcy5yZW1vdmUoKTtmb3IobGV0IHMgb2Ygbi52YWx1ZXMoKSl7bGV0IGE9bmV3IE1hcDtmb3IobGV0IG8gb2Ygcyl7bGV0IGw9ck8oby52YWx1ZSk7bCE9PW51bGwmJihhLmhhcyhsKXx8YS5zZXQobCxuZXcgU2V0KSxhLmdldChsKS5hZGQobykpfWZvcihsZXQgbyBvZiBhLnZhbHVlcygpKXtsZXQgbD1BcnJheS5mcm9tKG8pLnNsaWNlKDAsLTEpO2ZvcihsZXQgYyBvZiBsKWMucmVtb3ZlKCl9fX0pfX1mdW5jdGlvbiByTyhyKXtsZXQgZT0vXi0/XGQqLj9cZCsoW1x3JV0rKT8kL2cuZXhlYyhyKTtyZXR1cm4gZT9lWzFdPz90TzpudWxsfXZhciB0Tyx3eT1QKCgpPT57dSgpO3RPPVN5bWJvbCgidW5pdGxlc3MtbnVtYmVyIil9KTtmdW5jdGlvbiBpTyhyKXtpZighci53YWxrQXRSdWxlcylyZXR1cm47bGV0IGU9bmV3IFNldDtpZihyLndhbGtBdFJ1bGVzKCJhcHBseSIsdD0+e2UuYWRkKHQucGFyZW50KX0pLGUuc2l6ZSE9PTApZm9yKGxldCB0IG9mIGUpe2xldCBpPVtdLG49W107Zm9yKGxldCBzIG9mIHQubm9kZXMpcy50eXBlPT09ImF0cnVsZSImJnMubmFtZT09PSJhcHBseSI/KG4ubGVuZ3RoPjAmJihpLnB1c2gobiksbj1bXSksaS5wdXNoKFtzXSkpOm4ucHVzaChzKTtpZihuLmxlbmd0aD4wJiZpLnB1c2gobiksaS5sZW5ndGghPT0xKXtmb3IobGV0IHMgb2ZbLi4uaV0ucmV2ZXJzZSgpKXtsZXQgYT10LmNsb25lKHtub2RlczpbXX0pO2EuYXBwZW5kKHMpLHQuYWZ0ZXIoYSl9dC5yZW1vdmUoKX19fWZ1bmN0aW9uIE9zKCl7cmV0dXJuIHI9PntpTyhyKX19dmFyIHZ5PVAoKCk9Pnt1KCl9KTtmdW5jdGlvbiBUcyhyKXtyZXR1cm4gYXN5bmMgZnVuY3Rpb24oZSx0KXtsZXR7dGFpbHdpbmREaXJlY3RpdmVzOmksYXBwbHlEaXJlY3RpdmVzOm59PU9sKGUpO09zKCkoZSx0KTtsZXQgcz1yKHt0YWlsd2luZERpcmVjdGl2ZXM6aSxhcHBseURpcmVjdGl2ZXM6bixyZWdpc3RlckRlcGVuZGVuY3koYSl7dC5tZXNzYWdlcy5wdXNoKHtwbHVnaW46InRhaWx3aW5kY3NzIixwYXJlbnQ6dC5vcHRzLmZyb20sLi4uYX0pfSxjcmVhdGVDb250ZXh0KGEsbyl7cmV0dXJuIGlsKGEsbyxlKX19KShlLHQpO2lmKHMudGFpbHdpbmRDb25maWcuc2VwYXJhdG9yPT09Ii0iKXRocm93IG5ldyBFcnJvcigiVGhlICctJyBjaGFyYWN0ZXIgY2Fubm90IGJlIHVzZWQgYXMgYSBjdXN0b20gc2VwYXJhdG9yIGluIEpJVCBtb2RlIGR1ZSB0byBwYXJzaW5nIGFtYmlndWl0eS4gUGxlYXNlIHVzZSBhbm90aGVyIGNoYXJhY3RlciBsaWtlICdfJyBpbnN0ZWFkLiIpO1JmKHMudGFpbHdpbmRDb25maWcpLGF3YWl0IFBsKHMpKGUsdCksT3MoKShlLHQpLERsKHMpKGUsdCksY3kocykoZSx0KSxkeShzKShlLHQpLEhsKHMpKGUsdCksV2wocykoZSx0KSxHbChzKShlLHQpfX12YXIgeHk9UCgoKT0+e3UoKTtPZygpO0JnKCk7SGcoKTtweSgpO2h5KCk7Z3koKTtieSgpO3d5KCk7dnkoKTtPaSgpO2N0KCl9KTtmdW5jdGlvbiBreShyLGUpe2xldCB0PW51bGwsaT1udWxsO3JldHVybiByLndhbGtBdFJ1bGVzKCJjb25maWciLG49PntpZihpPW4uc291cmNlPy5pbnB1dC5maWxlPz9lLm9wdHMuZnJvbT8/bnVsbCxpPT09bnVsbCl0aHJvdyBuLmVycm9yKCJUaGUgYEBjb25maWdgIGRpcmVjdGl2ZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IHNldHRpbmcgYGZyb21gIGluIHlvdXIgUG9zdENTUyBjb25maWcuIik7aWYodCl0aHJvdyBuLmVycm9yKCJPbmx5IG9uZSBgQGNvbmZpZ2AgZGlyZWN0aXZlIGlzIGFsbG93ZWQgcGVyIGZpbGUuIik7bGV0IHM9bi5wYXJhbXMubWF0Y2goLyhbJyJdKSguKj8pXDEvKTtpZighcyl0aHJvdyBuLmVycm9yKCJBIHBhdGggaXMgcmVxdWlyZWQgd2hlbiB1c2luZyB0aGUgYEBjb25maWdgIGRpcmVjdGl2ZS4iKTtsZXQgYT1zWzJdO2lmKG1lLmlzQWJzb2x1dGUoYSkpdGhyb3cgbi5lcnJvcigiVGhlIGBAY29uZmlnYCBkaXJlY3RpdmUgY2Fubm90IGJlIHVzZWQgd2l0aCBhbiBhYnNvbHV0ZSBwYXRoLiIpO2lmKHQ9bWUucmVzb2x2ZShtZS5kaXJuYW1lKGkpLGEpLCFiZS5leGlzdHNTeW5jKHQpKXRocm93IG4uZXJyb3IoYFRoZSBjb25maWcgZmlsZSBhdCAiJHthfSIgZG9lcyBub3QgZXhpc3QuIE1ha2Ugc3VyZSB0aGUgcGF0aCBpcyBjb3JyZWN0IGFuZCB0aGUgZmlsZSBleGlzdHMuYCk7bi5yZW1vdmUoKX0pLHR8fG51bGx9dmFyIFN5PVAoKCk9Pnt1KCk7ZnQoKTtldCgpfSk7dmFyIEF5PXgoKFdxLFFsKT0+e3UoKTtFZygpO3h5KCk7SXQoKTtTeSgpO1FsLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJue3Bvc3Rjc3NQbHVnaW46InRhaWx3aW5kY3NzIixwbHVnaW5zOltaZS5ERUJVRyYmZnVuY3Rpb24odCl7cmV0dXJuIGNvbnNvbGUubG9nKGAKYCksY29uc29sZS50aW1lKCJKSVQgVE9UQUwiKSx0fSxhc3luYyBmdW5jdGlvbih0LGkpe2U9a3kodCxpKT8/ZTtsZXQgbj1FbChlKTtpZih0LnR5cGU9PT0iZG9jdW1lbnQiKXtsZXQgcz10Lm5vZGVzLmZpbHRlcihhPT5hLnR5cGU9PT0icm9vdCIpO2ZvcihsZXQgYSBvZiBzKWEudHlwZT09PSJyb290IiYmYXdhaXQgVHMobikoYSxpKTtyZXR1cm59YXdhaXQgVHMobikodCxpKX0sWmUuREVCVUcmJmZ1bmN0aW9uKHQpe3JldHVybiBjb25zb2xlLnRpbWVFbmQoIkpJVCBUT1RBTCIpLGNvbnNvbGUubG9nKGAKYCksdH1dLmZpbHRlcihCb29sZWFuKX19O1FsLmV4cG9ydHMucG9zdGNzcz0hMH0pO3ZhciBfeT14KChHcSxDeSk9Pnt1KCk7Q3kuZXhwb3J0cz1BeSgpfSk7dmFyIFlsPXgoKFFxLEV5KT0+e3UoKTtFeS5leHBvcnRzPSgpPT5bImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTE0IiwiY2hyb21lIDExMyIsImNocm9tZSAxMDkiLCJlZGdlIDExNCIsImZpcmVmb3ggMTE0IiwiaW9zX3NhZiAxNi41IiwiaW9zX3NhZiAxNi40IiwiaW9zX3NhZiAxNi4zIiwiaW9zX3NhZiAxNi4xIiwib3BlcmEgOTkiLCJzYWZhcmkgMTYuNSIsInNhbXN1bmcgMjEiXX0pO3ZhciBScz17fTtHZShScyx7YWdlbnRzOigpPT5uTyxmZWF0dXJlOigpPT5zT30pO2Z1bmN0aW9uIHNPKCl7cmV0dXJue3N0YXR1czoiY3IiLHRpdGxlOiJDU1MgRmVhdHVyZSBRdWVyaWVzIixzdGF0czp7aWU6eyI2IjoibiIsIjciOiJuIiwiOCI6Im4iLCI5IjoibiIsIjEwIjoibiIsIjExIjoibiIsIjUuNSI6Im4ifSxlZGdlOnsiMTIiOiJ5IiwiMTMiOiJ5IiwiMTQiOiJ5IiwiMTUiOiJ5IiwiMTYiOiJ5IiwiMTciOiJ5IiwiMTgiOiJ5IiwiNzkiOiJ5IiwiODAiOiJ5IiwiODEiOiJ5IiwiODMiOiJ5IiwiODQiOiJ5IiwiODUiOiJ5IiwiODYiOiJ5IiwiODciOiJ5IiwiODgiOiJ5IiwiODkiOiJ5IiwiOTAiOiJ5IiwiOTEiOiJ5IiwiOTIiOiJ5IiwiOTMiOiJ5IiwiOTQiOiJ5IiwiOTUiOiJ5IiwiOTYiOiJ5IiwiOTciOiJ5IiwiOTgiOiJ5IiwiOTkiOiJ5IiwiMTAwIjoieSIsIjEwMSI6InkiLCIxMDIiOiJ5IiwiMTAzIjoieSIsIjEwNCI6InkiLCIxMDUiOiJ5IiwiMTA2IjoieSIsIjEwNyI6InkiLCIxMDgiOiJ5IiwiMTA5IjoieSIsIjExMCI6InkiLCIxMTEiOiJ5IiwiMTEyIjoieSIsIjExMyI6InkiLCIxMTQiOiJ5In0sZmlyZWZveDp7IjIiOiJuIiwiMyI6Im4iLCI0IjoibiIsIjUiOiJuIiwiNiI6Im4iLCI3IjoibiIsIjgiOiJuIiwiOSI6Im4iLCIxMCI6Im4iLCIxMSI6Im4iLCIxMiI6Im4iLCIxMyI6Im4iLCIxNCI6Im4iLCIxNSI6Im4iLCIxNiI6Im4iLCIxNyI6Im4iLCIxOCI6Im4iLCIxOSI6Im4iLCIyMCI6Im4iLCIyMSI6Im4iLCIyMiI6InkiLCIyMyI6InkiLCIyNCI6InkiLCIyNSI6InkiLCIyNiI6InkiLCIyNyI6InkiLCIyOCI6InkiLCIyOSI6InkiLCIzMCI6InkiLCIzMSI6InkiLCIzMiI6InkiLCIzMyI6InkiLCIzNCI6InkiLCIzNSI6InkiLCIzNiI6InkiLCIzNyI6InkiLCIzOCI6InkiLCIzOSI6InkiLCI0MCI6InkiLCI0MSI6InkiLCI0MiI6InkiLCI0MyI6InkiLCI0NCI6InkiLCI0NSI6InkiLCI0NiI6InkiLCI0NyI6InkiLCI0OCI6InkiLCI0OSI6InkiLCI1MCI6InkiLCI1MSI6InkiLCI1MiI6InkiLCI1MyI6InkiLCI1NCI6InkiLCI1NSI6InkiLCI1NiI6InkiLCI1NyI6InkiLCI1OCI6InkiLCI1OSI6InkiLCI2MCI6InkiLCI2MSI6InkiLCI2MiI6InkiLCI2MyI6InkiLCI2NCI6InkiLCI2NSI6InkiLCI2NiI6InkiLCI2NyI6InkiLCI2OCI6InkiLCI2OSI6InkiLCI3MCI6InkiLCI3MSI6InkiLCI3MiI6InkiLCI3MyI6InkiLCI3NCI6InkiLCI3NSI6InkiLCI3NiI6InkiLCI3NyI6InkiLCI3OCI6InkiLCI3OSI6InkiLCI4MCI6InkiLCI4MSI6InkiLCI4MiI6InkiLCI4MyI6InkiLCI4NCI6InkiLCI4NSI6InkiLCI4NiI6InkiLCI4NyI6InkiLCI4OCI6InkiLCI4OSI6InkiLCI5MCI6InkiLCI5MSI6InkiLCI5MiI6InkiLCI5MyI6InkiLCI5NCI6InkiLCI5NSI6InkiLCI5NiI6InkiLCI5NyI6InkiLCI5OCI6InkiLCI5OSI6InkiLCIxMDAiOiJ5IiwiMTAxIjoieSIsIjEwMiI6InkiLCIxMDMiOiJ5IiwiMTA0IjoieSIsIjEwNSI6InkiLCIxMDYiOiJ5IiwiMTA3IjoieSIsIjEwOCI6InkiLCIxMDkiOiJ5IiwiMTEwIjoieSIsIjExMSI6InkiLCIxMTIiOiJ5IiwiMTEzIjoieSIsIjExNCI6InkiLCIxMTUiOiJ5IiwiMTE2IjoieSIsIjExNyI6InkiLCIzLjUiOiJuIiwiMy42IjoibiJ9LGNocm9tZTp7IjQiOiJuIiwiNSI6Im4iLCI2IjoibiIsIjciOiJuIiwiOCI6Im4iLCI5IjoibiIsIjEwIjoibiIsIjExIjoibiIsIjEyIjoibiIsIjEzIjoibiIsIjE0IjoibiIsIjE1IjoibiIsIjE2IjoibiIsIjE3IjoibiIsIjE4IjoibiIsIjE5IjoibiIsIjIwIjoibiIsIjIxIjoibiIsIjIyIjoibiIsIjIzIjoibiIsIjI0IjoibiIsIjI1IjoibiIsIjI2IjoibiIsIjI3IjoibiIsIjI4IjoieSIsIjI5IjoieSIsIjMwIjoieSIsIjMxIjoieSIsIjMyIjoieSIsIjMzIjoieSIsIjM0IjoieSIsIjM1IjoieSIsIjM2IjoieSIsIjM3IjoieSIsIjM4IjoieSIsIjM5IjoieSIsIjQwIjoieSIsIjQxIjoieSIsIjQyIjoieSIsIjQzIjoieSIsIjQ0IjoieSIsIjQ1IjoieSIsIjQ2IjoieSIsIjQ3IjoieSIsIjQ4IjoieSIsIjQ5IjoieSIsIjUwIjoieSIsIjUxIjoieSIsIjUyIjoieSIsIjUzIjoieSIsIjU0IjoieSIsIjU1IjoieSIsIjU2IjoieSIsIjU3IjoieSIsIjU4IjoieSIsIjU5IjoieSIsIjYwIjoieSIsIjYxIjoieSIsIjYyIjoieSIsIjYzIjoieSIsIjY0IjoieSIsIjY1IjoieSIsIjY2IjoieSIsIjY3IjoieSIsIjY4IjoieSIsIjY5IjoieSIsIjcwIjoieSIsIjcxIjoieSIsIjcyIjoieSIsIjczIjoieSIsIjc0IjoieSIsIjc1IjoieSIsIjc2IjoieSIsIjc3IjoieSIsIjc4IjoieSIsIjc5IjoieSIsIjgwIjoieSIsIjgxIjoieSIsIjgzIjoieSIsIjg0IjoieSIsIjg1IjoieSIsIjg2IjoieSIsIjg3IjoieSIsIjg4IjoieSIsIjg5IjoieSIsIjkwIjoieSIsIjkxIjoieSIsIjkyIjoieSIsIjkzIjoieSIsIjk0IjoieSIsIjk1IjoieSIsIjk2IjoieSIsIjk3IjoieSIsIjk4IjoieSIsIjk5IjoieSIsIjEwMCI6InkiLCIxMDEiOiJ5IiwiMTAyIjoieSIsIjEwMyI6InkiLCIxMDQiOiJ5IiwiMTA1IjoieSIsIjEwNiI6InkiLCIxMDciOiJ5IiwiMTA4IjoieSIsIjEwOSI6InkiLCIxMTAiOiJ5IiwiMTExIjoieSIsIjExMiI6InkiLCIxMTMiOiJ5IiwiMTE0IjoieSIsIjExNSI6InkiLCIxMTYiOiJ5IiwiMTE3IjoieSJ9LHNhZmFyaTp7IjQiOiJuIiwiNSI6Im4iLCI2IjoibiIsIjciOiJuIiwiOCI6Im4iLCI5IjoieSIsIjEwIjoieSIsIjExIjoieSIsIjEyIjoieSIsIjEzIjoieSIsIjE0IjoieSIsIjE1IjoieSIsIjE3IjoieSIsIjkuMSI6InkiLCIxMC4xIjoieSIsIjExLjEiOiJ5IiwiMTIuMSI6InkiLCIxMy4xIjoieSIsIjE0LjEiOiJ5IiwiMTUuMSI6InkiLCIxNS4yLTE1LjMiOiJ5IiwiMTUuNCI6InkiLCIxNS41IjoieSIsIjE1LjYiOiJ5IiwiMTYuMCI6InkiLCIxNi4xIjoieSIsIjE2LjIiOiJ5IiwiMTYuMyI6InkiLCIxNi40IjoieSIsIjE2LjUiOiJ5IiwiMTYuNiI6InkiLFRQOiJ5IiwiMy4xIjoibiIsIjMuMiI6Im4iLCI1LjEiOiJuIiwiNi4xIjoibiIsIjcuMSI6Im4ifSxvcGVyYTp7IjkiOiJuIiwiMTEiOiJuIiwiMTIiOiJuIiwiMTUiOiJ5IiwiMTYiOiJ5IiwiMTciOiJ5IiwiMTgiOiJ5IiwiMTkiOiJ5IiwiMjAiOiJ5IiwiMjEiOiJ5IiwiMjIiOiJ5IiwiMjMiOiJ5IiwiMjQiOiJ5IiwiMjUiOiJ5IiwiMjYiOiJ5IiwiMjciOiJ5IiwiMjgiOiJ5IiwiMjkiOiJ5IiwiMzAiOiJ5IiwiMzEiOiJ5IiwiMzIiOiJ5IiwiMzMiOiJ5IiwiMzQiOiJ5IiwiMzUiOiJ5IiwiMzYiOiJ5IiwiMzciOiJ5IiwiMzgiOiJ5IiwiMzkiOiJ5IiwiNDAiOiJ5IiwiNDEiOiJ5IiwiNDIiOiJ5IiwiNDMiOiJ5IiwiNDQiOiJ5IiwiNDUiOiJ5IiwiNDYiOiJ5IiwiNDciOiJ5IiwiNDgiOiJ5IiwiNDkiOiJ5IiwiNTAiOiJ5IiwiNTEiOiJ5IiwiNTIiOiJ5IiwiNTMiOiJ5IiwiNTQiOiJ5IiwiNTUiOiJ5IiwiNTYiOiJ5IiwiNTciOiJ5IiwiNTgiOiJ5IiwiNjAiOiJ5IiwiNjIiOiJ5IiwiNjMiOiJ5IiwiNjQiOiJ5IiwiNjUiOiJ5IiwiNjYiOiJ5IiwiNjciOiJ5IiwiNjgiOiJ5IiwiNjkiOiJ5IiwiNzAiOiJ5IiwiNzEiOiJ5IiwiNzIiOiJ5IiwiNzMiOiJ5IiwiNzQiOiJ5IiwiNzUiOiJ5IiwiNzYiOiJ5IiwiNzciOiJ5IiwiNzgiOiJ5IiwiNzkiOiJ5IiwiODAiOiJ5IiwiODEiOiJ5IiwiODIiOiJ5IiwiODMiOiJ5IiwiODQiOiJ5IiwiODUiOiJ5IiwiODYiOiJ5IiwiODciOiJ5IiwiODgiOiJ5IiwiODkiOiJ5IiwiOTAiOiJ5IiwiOTEiOiJ5IiwiOTIiOiJ5IiwiOTMiOiJ5IiwiOTQiOiJ5IiwiOTUiOiJ5IiwiOTYiOiJ5IiwiOTciOiJ5IiwiOTgiOiJ5IiwiOTkiOiJ5IiwiMTAwIjoieSIsIjEyLjEiOiJ5IiwiOS41LTkuNiI6Im4iLCIxMC4wLTEwLjEiOiJuIiwiMTAuNSI6Im4iLCIxMC42IjoibiIsIjExLjEiOiJuIiwiMTEuNSI6Im4iLCIxMS42IjoibiJ9LGlvc19zYWY6eyI4IjoibiIsIjE3IjoieSIsIjkuMC05LjIiOiJ5IiwiOS4zIjoieSIsIjEwLjAtMTAuMiI6InkiLCIxMC4zIjoieSIsIjExLjAtMTEuMiI6InkiLCIxMS4zLTExLjQiOiJ5IiwiMTIuMC0xMi4xIjoieSIsIjEyLjItMTIuNSI6InkiLCIxMy4wLTEzLjEiOiJ5IiwiMTMuMiI6InkiLCIxMy4zIjoieSIsIjEzLjQtMTMuNyI6InkiLCIxNC4wLTE0LjQiOiJ5IiwiMTQuNS0xNC44IjoieSIsIjE1LjAtMTUuMSI6InkiLCIxNS4yLTE1LjMiOiJ5IiwiMTUuNCI6InkiLCIxNS41IjoieSIsIjE1LjYiOiJ5IiwiMTYuMCI6InkiLCIxNi4xIjoieSIsIjE2LjIiOiJ5IiwiMTYuMyI6InkiLCIxNi40IjoieSIsIjE2LjUiOiJ5IiwiMTYuNiI6InkiLCIzLjIiOiJuIiwiNC4wLTQuMSI6Im4iLCI0LjItNC4zIjoibiIsIjUuMC01LjEiOiJuIiwiNi4wLTYuMSI6Im4iLCI3LjAtNy4xIjoibiIsIjguMS04LjQiOiJuIn0sb3BfbWluaTp7YWxsOiJ5In0sYW5kcm9pZDp7IjMiOiJuIiwiNCI6Im4iLCIxMTQiOiJ5IiwiNC40IjoieSIsIjQuNC4zLTQuNC40IjoieSIsIjIuMSI6Im4iLCIyLjIiOiJuIiwiMi4zIjoibiIsIjQuMSI6Im4iLCI0LjItNC4zIjoibiJ9LGJiOnsiNyI6Im4iLCIxMCI6Im4ifSxvcF9tb2I6eyIxMCI6Im4iLCIxMSI6Im4iLCIxMiI6Im4iLCI3MyI6InkiLCIxMS4xIjoibiIsIjExLjUiOiJuIiwiMTIuMSI6Im4ifSxhbmRfY2hyOnsiMTE0IjoieSJ9LGFuZF9mZjp7IjExNSI6InkifSxpZV9tb2I6eyIxMCI6Im4iLCIxMSI6Im4ifSxhbmRfdWM6eyIxNS41IjoieSJ9LHNhbXN1bmc6eyI0IjoieSIsIjIwIjoieSIsIjIxIjoieSIsIjUuMC01LjQiOiJ5IiwiNi4yLTYuNCI6InkiLCI3LjItNy40IjoieSIsIjguMiI6InkiLCI5LjIiOiJ5IiwiMTAuMSI6InkiLCIxMS4xLTExLjIiOiJ5IiwiMTIuMCI6InkiLCIxMy4wIjoieSIsIjE0LjAiOiJ5IiwiMTUuMCI6InkiLCIxNi4wIjoieSIsIjE3LjAiOiJ5IiwiMTguMCI6InkiLCIxOS4wIjoieSJ9LGFuZF9xcTp7IjEzLjEiOiJ5In0sYmFpZHU6eyIxMy4xOCI6InkifSxrYWlvczp7IjIuNSI6InkiLCIzLjAtMy4xIjoieSJ9fX19dmFyIG5PLFBzPVAoKCk9Pnt1KCk7bk89e2llOntwcmVmaXg6Im1zIn0sZWRnZTp7cHJlZml4OiJ3ZWJraXQiLHByZWZpeF9leGNlcHRpb25zOnsiMTIiOiJtcyIsIjEzIjoibXMiLCIxNCI6Im1zIiwiMTUiOiJtcyIsIjE2IjoibXMiLCIxNyI6Im1zIiwiMTgiOiJtcyJ9fSxmaXJlZm94OntwcmVmaXg6Im1veiJ9LGNocm9tZTp7cHJlZml4OiJ3ZWJraXQifSxzYWZhcmk6e3ByZWZpeDoid2Via2l0In0sb3BlcmE6e3ByZWZpeDoid2Via2l0IixwcmVmaXhfZXhjZXB0aW9uczp7IjkiOiJvIiwiMTEiOiJvIiwiMTIiOiJvIiwiOS41LTkuNiI6Im8iLCIxMC4wLTEwLjEiOiJvIiwiMTAuNSI6Im8iLCIxMC42IjoibyIsIjExLjEiOiJvIiwiMTEuNSI6Im8iLCIxMS42IjoibyIsIjEyLjEiOiJvIn19LGlvc19zYWY6e3ByZWZpeDoid2Via2l0In0sb3BfbWluaTp7cHJlZml4OiJvIn0sYW5kcm9pZDp7cHJlZml4OiJ3ZWJraXQifSxiYjp7cHJlZml4OiJ3ZWJraXQifSxvcF9tb2I6e3ByZWZpeDoibyIscHJlZml4X2V4Y2VwdGlvbnM6eyI3MyI6IndlYmtpdCJ9fSxhbmRfY2hyOntwcmVmaXg6IndlYmtpdCJ9LGFuZF9mZjp7cHJlZml4OiJtb3oifSxpZV9tb2I6e3ByZWZpeDoibXMifSxhbmRfdWM6e3ByZWZpeDoid2Via2l0IixwcmVmaXhfZXhjZXB0aW9uczp7IjE1LjUiOiJ3ZWJraXQifX0sc2Ftc3VuZzp7cHJlZml4OiJ3ZWJraXQifSxhbmRfcXE6e3ByZWZpeDoid2Via2l0In0sYmFpZHU6e3ByZWZpeDoid2Via2l0In0sa2Fpb3M6e3ByZWZpeDoibW96In19fSk7dmFyIE95PXgoKCk9Pnt1KCl9KTt2YXIgX2U9eCgoWHEsTHQpPT57dSgpO3ZhcntsaXN0OktsfT0kZSgpO0x0LmV4cG9ydHMuZXJyb3I9ZnVuY3Rpb24ocil7bGV0IGU9bmV3IEVycm9yKHIpO3Rocm93IGUuYXV0b3ByZWZpeGVyPSEwLGV9O0x0LmV4cG9ydHMudW5pcT1mdW5jdGlvbihyKXtyZXR1cm5bLi4ubmV3IFNldChyKV19O0x0LmV4cG9ydHMucmVtb3ZlTm90ZT1mdW5jdGlvbihyKXtyZXR1cm4gci5pbmNsdWRlcygiICIpP3Iuc3BsaXQoIiAiKVswXTpyfTtMdC5leHBvcnRzLmVzY2FwZVJlZ2V4cD1mdW5jdGlvbihyKXtyZXR1cm4gci5yZXBsYWNlKC9bJCgpKistLj9bXFxcXV57fH1dL2csIlxcJCYiKX07THQuZXhwb3J0cy5yZWdleHA9ZnVuY3Rpb24ocixlPSEwKXtyZXR1cm4gZSYmKHI9dGhpcy5lc2NhcGVSZWdleHAocikpLG5ldyBSZWdFeHAoYChefFtcXHMsKF0pKCR7cn0oJHxbXFxzKCxdKSlgLCJnaSIpfTtMdC5leHBvcnRzLmVkaXRMaXN0PWZ1bmN0aW9uKHIsZSl7bGV0IHQ9S2wuY29tbWEociksaT1lKHQsW10pO2lmKHQ9PT1pKXJldHVybiByO2xldCBuPXIubWF0Y2goLyxccyovKTtyZXR1cm4gbj1uP25bMF06IiwgIixpLmpvaW4obil9O0x0LmV4cG9ydHMuc3BsaXRTZWxlY3Rvcj1mdW5jdGlvbihyKXtyZXR1cm4gS2wuY29tbWEocikubWFwKGU9PktsLnNwYWNlKGUpLm1hcCh0PT50LnNwbGl0KC8oPz1cLnwjKS9nKSkpfX0pO3ZhciBNdD14KChacSxQeSk9Pnt1KCk7dmFyIGFPPVlsKCksVHk9KFBzKCksUnMpLmFnZW50cyxvTz1fZSgpLFJ5PWNsYXNze3N0YXRpYyBwcmVmaXhlcygpe2lmKHRoaXMucHJlZml4ZXNDYWNoZSlyZXR1cm4gdGhpcy5wcmVmaXhlc0NhY2hlO3RoaXMucHJlZml4ZXNDYWNoZT1bXTtmb3IobGV0IGUgaW4gVHkpdGhpcy5wcmVmaXhlc0NhY2hlLnB1c2goYC0ke1R5W2VdLnByZWZpeH0tYCk7cmV0dXJuIHRoaXMucHJlZml4ZXNDYWNoZT1vTy51bmlxKHRoaXMucHJlZml4ZXNDYWNoZSkuc29ydCgoZSx0KT0+dC5sZW5ndGgtZS5sZW5ndGgpLHRoaXMucHJlZml4ZXNDYWNoZX1zdGF0aWMgd2l0aFByZWZpeChlKXtyZXR1cm4gdGhpcy5wcmVmaXhlc1JlZ2V4cHx8KHRoaXMucHJlZml4ZXNSZWdleHA9bmV3IFJlZ0V4cCh0aGlzLnByZWZpeGVzKCkuam9pbigifCIpKSksdGhpcy5wcmVmaXhlc1JlZ2V4cC50ZXN0KGUpfWNvbnN0cnVjdG9yKGUsdCxpLG4pe3RoaXMuZGF0YT1lLHRoaXMub3B0aW9ucz1pfHx7fSx0aGlzLmJyb3dzZXJzbGlzdE9wdHM9bnx8e30sdGhpcy5zZWxlY3RlZD10aGlzLnBhcnNlKHQpfXBhcnNlKGUpe2xldCB0PXt9O2ZvcihsZXQgaSBpbiB0aGlzLmJyb3dzZXJzbGlzdE9wdHMpdFtpXT10aGlzLmJyb3dzZXJzbGlzdE9wdHNbaV07cmV0dXJuIHQucGF0aD10aGlzLm9wdGlvbnMuZnJvbSxhTyhlLHQpfXByZWZpeChlKXtsZXRbdCxpXT1lLnNwbGl0KCIgIiksbj10aGlzLmRhdGFbdF0scz1uLnByZWZpeF9leGNlcHRpb25zJiZuLnByZWZpeF9leGNlcHRpb25zW2ldO3JldHVybiBzfHwocz1uLnByZWZpeCksYC0ke3N9LWB9aXNTZWxlY3RlZChlKXtyZXR1cm4gdGhpcy5zZWxlY3RlZC5pbmNsdWRlcyhlKX19O1B5LmV4cG9ydHM9Unl9KTt2YXIgTmk9eCgoSnEsSXkpPT57dSgpO0l5LmV4cG9ydHM9e3ByZWZpeChyKXtsZXQgZT1yLm1hdGNoKC9eKC1cdystKS8pO3JldHVybiBlP2VbMF06IiJ9LHVucHJlZml4ZWQocil7cmV0dXJuIHIucmVwbGFjZSgvXi1cdystLywiIil9fX0pO3ZhciB3cj14KChlJCxxeSk9Pnt1KCk7dmFyIGxPPU10KCksRHk9TmkoKSx1Tz1fZSgpO2Z1bmN0aW9uIFhsKHIsZSl7bGV0IHQ9bmV3IHIuY29uc3RydWN0b3I7Zm9yKGxldCBpIG9mIE9iamVjdC5rZXlzKHJ8fHt9KSl7bGV0IG49cltpXTtpPT09InBhcmVudCImJnR5cGVvZiBuPT0ib2JqZWN0Ij9lJiYodFtpXT1lKTppPT09InNvdXJjZSJ8fGk9PT1udWxsP3RbaV09bjpBcnJheS5pc0FycmF5KG4pP3RbaV09bi5tYXAocz0+WGwocyx0KSk6aSE9PSJfYXV0b3ByZWZpeGVyUHJlZml4IiYmaSE9PSJfYXV0b3ByZWZpeGVyVmFsdWVzIiYmaSE9PSJwcm94eUNhY2hlIiYmKHR5cGVvZiBuPT0ib2JqZWN0IiYmbiE9PW51bGwmJihuPVhsKG4sdCkpLHRbaV09bil9cmV0dXJuIHR9dmFyIElzPWNsYXNze3N0YXRpYyBoYWNrKGUpe3JldHVybiB0aGlzLmhhY2tzfHwodGhpcy5oYWNrcz17fSksZS5uYW1lcy5tYXAodD0+KHRoaXMuaGFja3NbdF09ZSx0aGlzLmhhY2tzW3RdKSl9c3RhdGljIGxvYWQoZSx0LGkpe2xldCBuPXRoaXMuaGFja3MmJnRoaXMuaGFja3NbZV07cmV0dXJuIG4/bmV3IG4oZSx0LGkpOm5ldyB0aGlzKGUsdCxpKX1zdGF0aWMgY2xvbmUoZSx0KXtsZXQgaT1YbChlKTtmb3IobGV0IG4gaW4gdClpW25dPXRbbl07cmV0dXJuIGl9Y29uc3RydWN0b3IoZSx0LGkpe3RoaXMucHJlZml4ZXM9dCx0aGlzLm5hbWU9ZSx0aGlzLmFsbD1pfXBhcmVudFByZWZpeChlKXtsZXQgdDtyZXR1cm4gdHlwZW9mIGUuX2F1dG9wcmVmaXhlclByZWZpeCE9InVuZGVmaW5lZCI/dD1lLl9hdXRvcHJlZml4ZXJQcmVmaXg6ZS50eXBlPT09ImRlY2wiJiZlLnByb3BbMF09PT0iLSI/dD1EeS5wcmVmaXgoZS5wcm9wKTplLnR5cGU9PT0icm9vdCI/dD0hMTplLnR5cGU9PT0icnVsZSImJmUuc2VsZWN0b3IuaW5jbHVkZXMoIjotIikmJi86KC1cdystKS8udGVzdChlLnNlbGVjdG9yKT90PWUuc2VsZWN0b3IubWF0Y2goLzooLVx3Ky0pLylbMV06ZS50eXBlPT09ImF0cnVsZSImJmUubmFtZVswXT09PSItIj90PUR5LnByZWZpeChlLm5hbWUpOnQ9dGhpcy5wYXJlbnRQcmVmaXgoZS5wYXJlbnQpLGxPLnByZWZpeGVzKCkuaW5jbHVkZXModCl8fCh0PSExKSxlLl9hdXRvcHJlZml4ZXJQcmVmaXg9dCxlLl9hdXRvcHJlZml4ZXJQcmVmaXh9cHJvY2VzcyhlLHQpe2lmKCF0aGlzLmNoZWNrKGUpKXJldHVybjtsZXQgaT10aGlzLnBhcmVudFByZWZpeChlKSxuPXRoaXMucHJlZml4ZXMuZmlsdGVyKGE9PiFpfHxpPT09dU8ucmVtb3ZlTm90ZShhKSkscz1bXTtmb3IobGV0IGEgb2Ygbil0aGlzLmFkZChlLGEscy5jb25jYXQoW2FdKSx0KSYmcy5wdXNoKGEpO3JldHVybiBzfWNsb25lKGUsdCl7cmV0dXJuIElzLmNsb25lKGUsdCl9fTtxeS5leHBvcnRzPUlzfSk7dmFyIGo9eCgodCQsTXkpPT57dSgpO3ZhciBmTz13cigpLGNPPU10KCksJHk9X2UoKSxMeT1jbGFzcyBleHRlbmRzIGZPe2NoZWNrKCl7cmV0dXJuITB9cHJlZml4ZWQoZSx0KXtyZXR1cm4gdCtlfW5vcm1hbGl6ZShlKXtyZXR1cm4gZX1vdGhlclByZWZpeGVzKGUsdCl7Zm9yKGxldCBpIG9mIGNPLnByZWZpeGVzKCkpaWYoaSE9PXQmJmUuaW5jbHVkZXMoaSkpcmV0dXJuITA7cmV0dXJuITF9c2V0KGUsdCl7cmV0dXJuIGUucHJvcD10aGlzLnByZWZpeGVkKGUucHJvcCx0KSxlfW5lZWRDYXNjYWRlKGUpe3JldHVybiBlLl9hdXRvcHJlZml4ZXJDYXNjYWRlfHwoZS5fYXV0b3ByZWZpeGVyQ2FzY2FkZT10aGlzLmFsbC5vcHRpb25zLmNhc2NhZGUhPT0hMSYmZS5yYXcoImJlZm9yZSIpLmluY2x1ZGVzKGAKYCkpLGUuX2F1dG9wcmVmaXhlckNhc2NhZGV9bWF4UHJlZml4ZWQoZSx0KXtpZih0Ll9hdXRvcHJlZml4ZXJNYXgpcmV0dXJuIHQuX2F1dG9wcmVmaXhlck1heDtsZXQgaT0wO2ZvcihsZXQgbiBvZiBlKW49JHkucmVtb3ZlTm90ZShuKSxuLmxlbmd0aD5pJiYoaT1uLmxlbmd0aCk7cmV0dXJuIHQuX2F1dG9wcmVmaXhlck1heD1pLHQuX2F1dG9wcmVmaXhlck1heH1jYWxjQmVmb3JlKGUsdCxpPSIiKXtsZXQgcz10aGlzLm1heFByZWZpeGVkKGUsdCktJHkucmVtb3ZlTm90ZShpKS5sZW5ndGgsYT10LnJhdygiYmVmb3JlIik7cmV0dXJuIHM+MCYmKGErPUFycmF5KHMpLmZpbGwoIiAiKS5qb2luKCIiKSksYX1yZXN0b3JlQmVmb3JlKGUpe2xldCB0PWUucmF3KCJiZWZvcmUiKS5zcGxpdChgCmApLGk9dFt0Lmxlbmd0aC0xXTt0aGlzLmFsbC5ncm91cChlKS51cChuPT57bGV0IHM9bi5yYXcoImJlZm9yZSIpLnNwbGl0KGAKYCksYT1zW3MubGVuZ3RoLTFdO2EubGVuZ3RoPGkubGVuZ3RoJiYoaT1hKX0pLHRbdC5sZW5ndGgtMV09aSxlLnJhd3MuYmVmb3JlPXQuam9pbihgCmApfWluc2VydChlLHQsaSl7bGV0IG49dGhpcy5zZXQodGhpcy5jbG9uZShlKSx0KTtpZighKCFufHxlLnBhcmVudC5zb21lKGE9PmEucHJvcD09PW4ucHJvcCYmYS52YWx1ZT09PW4udmFsdWUpKSlyZXR1cm4gdGhpcy5uZWVkQ2FzY2FkZShlKSYmKG4ucmF3cy5iZWZvcmU9dGhpcy5jYWxjQmVmb3JlKGksZSx0KSksZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUsbil9aXNBbHJlYWR5KGUsdCl7bGV0IGk9dGhpcy5hbGwuZ3JvdXAoZSkudXAobj0+bi5wcm9wPT09dCk7cmV0dXJuIGl8fChpPXRoaXMuYWxsLmdyb3VwKGUpLmRvd24obj0+bi5wcm9wPT09dCkpLGl9YWRkKGUsdCxpLG4pe2xldCBzPXRoaXMucHJlZml4ZWQoZS5wcm9wLHQpO2lmKCEodGhpcy5pc0FscmVhZHkoZSxzKXx8dGhpcy5vdGhlclByZWZpeGVzKGUudmFsdWUsdCkpKXJldHVybiB0aGlzLmluc2VydChlLHQsaSxuKX1wcm9jZXNzKGUsdCl7aWYoIXRoaXMubmVlZENhc2NhZGUoZSkpe3N1cGVyLnByb2Nlc3MoZSx0KTtyZXR1cm59bGV0IGk9c3VwZXIucHJvY2VzcyhlLHQpOyFpfHwhaS5sZW5ndGh8fCh0aGlzLnJlc3RvcmVCZWZvcmUoZSksZS5yYXdzLmJlZm9yZT10aGlzLmNhbGNCZWZvcmUoaSxlKSl9b2xkKGUsdCl7cmV0dXJuW3RoaXMucHJlZml4ZWQoZSx0KV19fTtNeS5leHBvcnRzPUx5fSk7dmFyIEJ5PXgoKHIkLE55KT0+e3UoKTtOeS5leHBvcnRzPWZ1bmN0aW9uIHIoZSl7cmV0dXJue211bDp0PT5uZXcgcihlKnQpLGRpdjp0PT5uZXcgcihlL3QpLHNpbXBsaWZ5OigpPT5uZXcgcihlKSx0b1N0cmluZzooKT0+ZS50b1N0cmluZygpfX19KTt2YXIgenk9eCgoaSQsankpPT57dSgpO3ZhciBwTz1CeSgpLGRPPXdyKCksWmw9X2UoKSxoTz0vKG1pbnxtYXgpLXJlc29sdXRpb25ccyo6XHMqXGQqXC4/XGQrKGRwcHh8ZHBjbXxkcGl8eCkvZ2ksbU89LyhtaW58bWF4KS1yZXNvbHV0aW9uKFxzKjpccyopKFxkKlwuP1xkKykoZHBweHxkcGNtfGRwaXx4KS9pLEZ5PWNsYXNzIGV4dGVuZHMgZE97cHJlZml4TmFtZShlLHQpe3JldHVybiBlPT09Ii1tb3otIj90KyItLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW8iOmUrdCsiLWRldmljZS1waXhlbC1yYXRpbyJ9cHJlZml4UXVlcnkoZSx0LGksbixzKXtyZXR1cm4gbj1uZXcgcE8obikscz09PSJkcGkiP249bi5kaXYoOTYpOnM9PT0iZHBjbSImJihuPW4ubXVsKDIuNTQpLmRpdig5NikpLG49bi5zaW1wbGlmeSgpLGU9PT0iLW8tIiYmKG49bi5uKyIvIituLmQpLHRoaXMucHJlZml4TmFtZShlLHQpK2krbn1jbGVhbihlKXtpZighdGhpcy5iYWQpe3RoaXMuYmFkPVtdO2ZvcihsZXQgdCBvZiB0aGlzLnByZWZpeGVzKXRoaXMuYmFkLnB1c2godGhpcy5wcmVmaXhOYW1lKHQsIm1pbiIpKSx0aGlzLmJhZC5wdXNoKHRoaXMucHJlZml4TmFtZSh0LCJtYXgiKSl9ZS5wYXJhbXM9WmwuZWRpdExpc3QoZS5wYXJhbXMsdD0+dC5maWx0ZXIoaT0+dGhpcy5iYWQuZXZlcnkobj0+IWkuaW5jbHVkZXMobikpKSl9cHJvY2VzcyhlKXtsZXQgdD10aGlzLnBhcmVudFByZWZpeChlKSxpPXQ/W3RdOnRoaXMucHJlZml4ZXM7ZS5wYXJhbXM9WmwuZWRpdExpc3QoZS5wYXJhbXMsKG4scyk9Pntmb3IobGV0IGEgb2Ygbil7aWYoIWEuaW5jbHVkZXMoIm1pbi1yZXNvbHV0aW9uIikmJiFhLmluY2x1ZGVzKCJtYXgtcmVzb2x1dGlvbiIpKXtzLnB1c2goYSk7Y29udGludWV9Zm9yKGxldCBvIG9mIGkpe2xldCBsPWEucmVwbGFjZShoTyxjPT57bGV0IGY9Yy5tYXRjaChtTyk7cmV0dXJuIHRoaXMucHJlZml4UXVlcnkobyxmWzFdLGZbMl0sZlszXSxmWzRdKX0pO3MucHVzaChsKX1zLnB1c2goYSl9cmV0dXJuIFpsLnVuaXEocyl9KX19O2p5LmV4cG9ydHM9Rnl9KTt2YXIgVnk9eCgobiQsVXkpPT57dSgpO3ZhciBKbD0iKCIuY2hhckNvZGVBdCgwKSxldT0iKSIuY2hhckNvZGVBdCgwKSxEcz0iJyIuY2hhckNvZGVBdCgwKSx0dT0nIicuY2hhckNvZGVBdCgwKSxydT0iXFwiLmNoYXJDb2RlQXQoMCksdnI9Ii8iLmNoYXJDb2RlQXQoMCksaXU9IiwiLmNoYXJDb2RlQXQoMCksbnU9IjoiLmNoYXJDb2RlQXQoMCkscXM9IioiLmNoYXJDb2RlQXQoMCksZ089InUiLmNoYXJDb2RlQXQoMCkseU89IlUiLmNoYXJDb2RlQXQoMCksYk89IisiLmNoYXJDb2RlQXQoMCksd089L15bYS1mMC05Py1dKyQvaTtVeS5leHBvcnRzPWZ1bmN0aW9uKHIpe2Zvcih2YXIgZT1bXSx0PXIsaSxuLHMsYSxvLGwsYyxmLGQ9MCxwPXQuY2hhckNvZGVBdChkKSxoPXQubGVuZ3RoLGI9W3tub2RlczplfV0sdj0wLHksdz0iIixrPSIiLFM9IiI7ZDxoOylpZihwPD0zMil7aT1kO2RvIGkrPTEscD10LmNoYXJDb2RlQXQoaSk7d2hpbGUocDw9MzIpO2E9dC5zbGljZShkLGkpLHM9ZVtlLmxlbmd0aC0xXSxwPT09ZXUmJnY/Uz1hOnMmJnMudHlwZT09PSJkaXYiPyhzLmFmdGVyPWEscy5zb3VyY2VFbmRJbmRleCs9YS5sZW5ndGgpOnA9PT1pdXx8cD09PW51fHxwPT09dnImJnQuY2hhckNvZGVBdChpKzEpIT09cXMmJigheXx8eSYmeS50eXBlPT09ImZ1bmN0aW9uIiYmeS52YWx1ZSE9PSJjYWxjIik/az1hOmUucHVzaCh7dHlwZToic3BhY2UiLHNvdXJjZUluZGV4OmQsc291cmNlRW5kSW5kZXg6aSx2YWx1ZTphfSksZD1pfWVsc2UgaWYocD09PURzfHxwPT09dHUpe2k9ZCxuPXA9PT1Ecz8iJyI6JyInLGE9e3R5cGU6InN0cmluZyIsc291cmNlSW5kZXg6ZCxxdW90ZTpufTtkbyBpZihvPSExLGk9dC5pbmRleE9mKG4saSsxKSx+aSlmb3IobD1pO3QuY2hhckNvZGVBdChsLTEpPT09cnU7KWwtPTEsbz0hbztlbHNlIHQrPW4saT10Lmxlbmd0aC0xLGEudW5jbG9zZWQ9ITA7d2hpbGUobyk7YS52YWx1ZT10LnNsaWNlKGQrMSxpKSxhLnNvdXJjZUVuZEluZGV4PWEudW5jbG9zZWQ/aTppKzEsZS5wdXNoKGEpLGQ9aSsxLHA9dC5jaGFyQ29kZUF0KGQpfWVsc2UgaWYocD09PXZyJiZ0LmNoYXJDb2RlQXQoZCsxKT09PXFzKWk9dC5pbmRleE9mKCIqLyIsZCksYT17dHlwZToiY29tbWVudCIsc291cmNlSW5kZXg6ZCxzb3VyY2VFbmRJbmRleDppKzJ9LGk9PT0tMSYmKGEudW5jbG9zZWQ9ITAsaT10Lmxlbmd0aCxhLnNvdXJjZUVuZEluZGV4PWkpLGEudmFsdWU9dC5zbGljZShkKzIsaSksZS5wdXNoKGEpLGQ9aSsyLHA9dC5jaGFyQ29kZUF0KGQpO2Vsc2UgaWYoKHA9PT12cnx8cD09PXFzKSYmeSYmeS50eXBlPT09ImZ1bmN0aW9uIiYmeS52YWx1ZT09PSJjYWxjIilhPXRbZF0sZS5wdXNoKHt0eXBlOiJ3b3JkIixzb3VyY2VJbmRleDpkLWsubGVuZ3RoLHNvdXJjZUVuZEluZGV4OmQrYS5sZW5ndGgsdmFsdWU6YX0pLGQrPTEscD10LmNoYXJDb2RlQXQoZCk7ZWxzZSBpZihwPT09dnJ8fHA9PT1pdXx8cD09PW51KWE9dFtkXSxlLnB1c2goe3R5cGU6ImRpdiIsc291cmNlSW5kZXg6ZC1rLmxlbmd0aCxzb3VyY2VFbmRJbmRleDpkK2EubGVuZ3RoLHZhbHVlOmEsYmVmb3JlOmssYWZ0ZXI6IiJ9KSxrPSIiLGQrPTEscD10LmNoYXJDb2RlQXQoZCk7ZWxzZSBpZihKbD09PXApe2k9ZDtkbyBpKz0xLHA9dC5jaGFyQ29kZUF0KGkpO3doaWxlKHA8PTMyKTtpZihmPWQsYT17dHlwZToiZnVuY3Rpb24iLHNvdXJjZUluZGV4OmQtdy5sZW5ndGgsdmFsdWU6dyxiZWZvcmU6dC5zbGljZShmKzEsaSl9LGQ9aSx3PT09InVybCImJnAhPT1EcyYmcCE9PXR1KXtpLT0xO2RvIGlmKG89ITEsaT10LmluZGV4T2YoIikiLGkrMSksfmkpZm9yKGw9aTt0LmNoYXJDb2RlQXQobC0xKT09PXJ1OylsLT0xLG89IW87ZWxzZSB0Kz0iKSIsaT10Lmxlbmd0aC0xLGEudW5jbG9zZWQ9ITA7d2hpbGUobyk7Yz1pO2RvIGMtPTEscD10LmNoYXJDb2RlQXQoYyk7d2hpbGUocDw9MzIpO2Y8Yz8oZCE9PWMrMT9hLm5vZGVzPVt7dHlwZToid29yZCIsc291cmNlSW5kZXg6ZCxzb3VyY2VFbmRJbmRleDpjKzEsdmFsdWU6dC5zbGljZShkLGMrMSl9XTphLm5vZGVzPVtdLGEudW5jbG9zZWQmJmMrMSE9PWk/KGEuYWZ0ZXI9IiIsYS5ub2Rlcy5wdXNoKHt0eXBlOiJzcGFjZSIsc291cmNlSW5kZXg6YysxLHNvdXJjZUVuZEluZGV4OmksdmFsdWU6dC5zbGljZShjKzEsaSl9KSk6KGEuYWZ0ZXI9dC5zbGljZShjKzEsaSksYS5zb3VyY2VFbmRJbmRleD1pKSk6KGEuYWZ0ZXI9IiIsYS5ub2Rlcz1bXSksZD1pKzEsYS5zb3VyY2VFbmRJbmRleD1hLnVuY2xvc2VkP2k6ZCxwPXQuY2hhckNvZGVBdChkKSxlLnB1c2goYSl9ZWxzZSB2Kz0xLGEuYWZ0ZXI9IiIsYS5zb3VyY2VFbmRJbmRleD1kKzEsZS5wdXNoKGEpLGIucHVzaChhKSxlPWEubm9kZXM9W10seT1hO3c9IiJ9ZWxzZSBpZihldT09PXAmJnYpZCs9MSxwPXQuY2hhckNvZGVBdChkKSx5LmFmdGVyPVMseS5zb3VyY2VFbmRJbmRleCs9Uy5sZW5ndGgsUz0iIix2LT0xLGJbYi5sZW5ndGgtMV0uc291cmNlRW5kSW5kZXg9ZCxiLnBvcCgpLHk9Ylt2XSxlPXkubm9kZXM7ZWxzZXtpPWQ7ZG8gcD09PXJ1JiYoaSs9MSksaSs9MSxwPXQuY2hhckNvZGVBdChpKTt3aGlsZShpPGgmJiEocDw9MzJ8fHA9PT1Ec3x8cD09PXR1fHxwPT09aXV8fHA9PT1udXx8cD09PXZyfHxwPT09Smx8fHA9PT1xcyYmeSYmeS50eXBlPT09ImZ1bmN0aW9uIiYmeS52YWx1ZT09PSJjYWxjInx8cD09PXZyJiZ5LnR5cGU9PT0iZnVuY3Rpb24iJiZ5LnZhbHVlPT09ImNhbGMifHxwPT09ZXUmJnYpKTthPXQuc2xpY2UoZCxpKSxKbD09PXA/dz1hOihnTz09PWEuY2hhckNvZGVBdCgwKXx8eU89PT1hLmNoYXJDb2RlQXQoMCkpJiZiTz09PWEuY2hhckNvZGVBdCgxKSYmd08udGVzdChhLnNsaWNlKDIpKT9lLnB1c2goe3R5cGU6InVuaWNvZGUtcmFuZ2UiLHNvdXJjZUluZGV4OmQsc291cmNlRW5kSW5kZXg6aSx2YWx1ZTphfSk6ZS5wdXNoKHt0eXBlOiJ3b3JkIixzb3VyY2VJbmRleDpkLHNvdXJjZUVuZEluZGV4OmksdmFsdWU6YX0pLGQ9aX1mb3IoZD1iLmxlbmd0aC0xO2Q7ZC09MSliW2RdLnVuY2xvc2VkPSEwLGJbZF0uc291cmNlRW5kSW5kZXg9dC5sZW5ndGg7cmV0dXJuIGJbMF0ubm9kZXN9fSk7dmFyIFd5PXgoKHMkLEh5KT0+e3UoKTtIeS5leHBvcnRzPWZ1bmN0aW9uIHIoZSx0LGkpe3ZhciBuLHMsYSxvO2ZvcihuPTAscz1lLmxlbmd0aDtuPHM7bis9MSlhPWVbbl0saXx8KG89dChhLG4sZSkpLG8hPT0hMSYmYS50eXBlPT09ImZ1bmN0aW9uIiYmQXJyYXkuaXNBcnJheShhLm5vZGVzKSYmcihhLm5vZGVzLHQsaSksaSYmdChhLG4sZSl9fSk7dmFyIEt5PXgoKGEkLFl5KT0+e3UoKTtmdW5jdGlvbiBHeShyLGUpe3ZhciB0PXIudHlwZSxpPXIudmFsdWUsbixzO3JldHVybiBlJiYocz1lKHIpKSE9PXZvaWQgMD9zOnQ9PT0id29yZCJ8fHQ9PT0ic3BhY2UiP2k6dD09PSJzdHJpbmciPyhuPXIucXVvdGV8fCIiLG4raSsoci51bmNsb3NlZD8iIjpuKSk6dD09PSJjb21tZW50Ij8iLyoiK2krKHIudW5jbG9zZWQ/IiI6IiovIik6dD09PSJkaXYiPyhyLmJlZm9yZXx8IiIpK2krKHIuYWZ0ZXJ8fCIiKTpBcnJheS5pc0FycmF5KHIubm9kZXMpPyhuPVF5KHIubm9kZXMsZSksdCE9PSJmdW5jdGlvbiI/bjppKyIoIisoci5iZWZvcmV8fCIiKStuKyhyLmFmdGVyfHwiIikrKHIudW5jbG9zZWQ/IiI6IikiKSk6aX1mdW5jdGlvbiBReShyLGUpe3ZhciB0LGk7aWYoQXJyYXkuaXNBcnJheShyKSl7Zm9yKHQ9IiIsaT1yLmxlbmd0aC0xO35pO2ktPTEpdD1HeShyW2ldLGUpK3Q7cmV0dXJuIHR9cmV0dXJuIEd5KHIsZSl9WXkuZXhwb3J0cz1ReX0pO3ZhciBaeT14KChvJCxYeSk9Pnt1KCk7dmFyICRzPSItIi5jaGFyQ29kZUF0KDApLExzPSIrIi5jaGFyQ29kZUF0KDApLHN1PSIuIi5jaGFyQ29kZUF0KDApLHZPPSJlIi5jaGFyQ29kZUF0KDApLHhPPSJFIi5jaGFyQ29kZUF0KDApO2Z1bmN0aW9uIGtPKHIpe3ZhciBlPXIuY2hhckNvZGVBdCgwKSx0O2lmKGU9PT1Mc3x8ZT09PSRzKXtpZih0PXIuY2hhckNvZGVBdCgxKSx0Pj00OCYmdDw9NTcpcmV0dXJuITA7dmFyIGk9ci5jaGFyQ29kZUF0KDIpO3JldHVybiB0PT09c3UmJmk+PTQ4JiZpPD01N31yZXR1cm4gZT09PXN1Pyh0PXIuY2hhckNvZGVBdCgxKSx0Pj00OCYmdDw9NTcpOmU+PTQ4JiZlPD01N31YeS5leHBvcnRzPWZ1bmN0aW9uKHIpe3ZhciBlPTAsdD1yLmxlbmd0aCxpLG4scztpZih0PT09MHx8IWtPKHIpKXJldHVybiExO2ZvcihpPXIuY2hhckNvZGVBdChlKSwoaT09PUxzfHxpPT09JHMpJiZlKys7ZTx0JiYoaT1yLmNoYXJDb2RlQXQoZSksIShpPDQ4fHxpPjU3KSk7KWUrPTE7aWYoaT1yLmNoYXJDb2RlQXQoZSksbj1yLmNoYXJDb2RlQXQoZSsxKSxpPT09c3UmJm4+PTQ4JiZuPD01Nylmb3IoZSs9MjtlPHQmJihpPXIuY2hhckNvZGVBdChlKSwhKGk8NDh8fGk+NTcpKTspZSs9MTtpZihpPXIuY2hhckNvZGVBdChlKSxuPXIuY2hhckNvZGVBdChlKzEpLHM9ci5jaGFyQ29kZUF0KGUrMiksKGk9PT12T3x8aT09PXhPKSYmKG4+PTQ4JiZuPD01N3x8KG49PT1Mc3x8bj09PSRzKSYmcz49NDgmJnM8PTU3KSlmb3IoZSs9bj09PUxzfHxuPT09JHM/MzoyO2U8dCYmKGk9ci5jaGFyQ29kZUF0KGUpLCEoaTw0OHx8aT41NykpOyllKz0xO3JldHVybntudW1iZXI6ci5zbGljZSgwLGUpLHVuaXQ6ci5zbGljZShlKX19fSk7dmFyIE1zPXgoKGwkLHRiKT0+e3UoKTt2YXIgU089VnkoKSxKeT1XeSgpLGViPUt5KCk7ZnVuY3Rpb24gTnQocil7cmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBOdD8odGhpcy5ub2Rlcz1TTyhyKSx0aGlzKTpuZXcgTnQocil9TnQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LmlzQXJyYXkodGhpcy5ub2Rlcyk/ZWIodGhpcy5ub2Rlcyk6IiJ9O050LnByb3RvdHlwZS53YWxrPWZ1bmN0aW9uKHIsZSl7cmV0dXJuIEp5KHRoaXMubm9kZXMscixlKSx0aGlzfTtOdC51bml0PVp5KCk7TnQud2Fsaz1KeTtOdC5zdHJpbmdpZnk9ZWI7dGIuZXhwb3J0cz1OdH0pO3ZhciBhYj14KCh1JCxzYik9Pnt1KCk7dmFye2xpc3Q6QU99PSRlKCkscmI9TXMoKSxDTz1NdCgpLGliPU5pKCksbmI9Y2xhc3N7Y29uc3RydWN0b3IoZSl7dGhpcy5wcm9wcz1bInRyYW5zaXRpb24iLCJ0cmFuc2l0aW9uLXByb3BlcnR5Il0sdGhpcy5wcmVmaXhlcz1lfWFkZChlLHQpe2xldCBpLG4scz10aGlzLnByZWZpeGVzLmFkZFtlLnByb3BdLGE9dGhpcy5ydWxlVmVuZG9yUHJlZml4ZXMoZSksbz1hfHxzJiZzLnByZWZpeGVzfHxbXSxsPXRoaXMucGFyc2UoZS52YWx1ZSksYz1sLm1hcChoPT50aGlzLmZpbmRQcm9wKGgpKSxmPVtdO2lmKGMuc29tZShoPT5oWzBdPT09Ii0iKSlyZXR1cm47Zm9yKGxldCBoIG9mIGwpe2lmKG49dGhpcy5maW5kUHJvcChoKSxuWzBdPT09Ii0iKWNvbnRpbnVlO2xldCBiPXRoaXMucHJlZml4ZXMuYWRkW25dO2lmKCEoIWJ8fCFiLnByZWZpeGVzKSlmb3IoaSBvZiBiLnByZWZpeGVzKXtpZihhJiYhYS5zb21lKHk9PmkuaW5jbHVkZXMoeSkpKWNvbnRpbnVlO2xldCB2PXRoaXMucHJlZml4ZXMucHJlZml4ZWQobixpKTt2IT09Ii1tcy10cmFuc2Zvcm0iJiYhYy5pbmNsdWRlcyh2KSYmKHRoaXMuZGlzYWJsZWQobixpKXx8Zi5wdXNoKHRoaXMuY2xvbmUobix2LGgpKSl9fWw9bC5jb25jYXQoZik7bGV0IGQ9dGhpcy5zdHJpbmdpZnkobCkscD10aGlzLnN0cmluZ2lmeSh0aGlzLmNsZWFuRnJvbVVucHJlZml4ZWQobCwiLXdlYmtpdC0iKSk7aWYoby5pbmNsdWRlcygiLXdlYmtpdC0iKSYmdGhpcy5jbG9uZUJlZm9yZShlLGAtd2Via2l0LSR7ZS5wcm9wfWAscCksdGhpcy5jbG9uZUJlZm9yZShlLGUucHJvcCxwKSxvLmluY2x1ZGVzKCItby0iKSl7bGV0IGg9dGhpcy5zdHJpbmdpZnkodGhpcy5jbGVhbkZyb21VbnByZWZpeGVkKGwsIi1vLSIpKTt0aGlzLmNsb25lQmVmb3JlKGUsYC1vLSR7ZS5wcm9wfWAsaCl9Zm9yKGkgb2YgbylpZihpIT09Ii13ZWJraXQtIiYmaSE9PSItby0iKXtsZXQgaD10aGlzLnN0cmluZ2lmeSh0aGlzLmNsZWFuT3RoZXJQcmVmaXhlcyhsLGkpKTt0aGlzLmNsb25lQmVmb3JlKGUsaStlLnByb3AsaCl9ZCE9PWUudmFsdWUmJiF0aGlzLmFscmVhZHkoZSxlLnByb3AsZCkmJih0aGlzLmNoZWNrRm9yV2FybmluZyh0LGUpLGUuY2xvbmVCZWZvcmUoKSxlLnZhbHVlPWQpfWZpbmRQcm9wKGUpe2xldCB0PWVbMF0udmFsdWU7aWYoL15cZC8udGVzdCh0KSl7Zm9yKGxldFtpLG5db2YgZS5lbnRyaWVzKCkpaWYoaSE9PTAmJm4udHlwZT09PSJ3b3JkIilyZXR1cm4gbi52YWx1ZX1yZXR1cm4gdH1hbHJlYWR5KGUsdCxpKXtyZXR1cm4gZS5wYXJlbnQuc29tZShuPT5uLnByb3A9PT10JiZuLnZhbHVlPT09aSl9Y2xvbmVCZWZvcmUoZSx0LGkpe3RoaXMuYWxyZWFkeShlLHQsaSl8fGUuY2xvbmVCZWZvcmUoe3Byb3A6dCx2YWx1ZTppfSl9Y2hlY2tGb3JXYXJuaW5nKGUsdCl7aWYodC5wcm9wIT09InRyYW5zaXRpb24tcHJvcGVydHkiKXJldHVybjtsZXQgaT0hMSxuPSExO3QucGFyZW50LmVhY2gocz0+e2lmKHMudHlwZSE9PSJkZWNsInx8cy5wcm9wLmluZGV4T2YoInRyYW5zaXRpb24tIikhPT0wKXJldHVybjtsZXQgYT1BTy5jb21tYShzLnZhbHVlKTtpZihzLnByb3A9PT0idHJhbnNpdGlvbi1wcm9wZXJ0eSIpe2EuZm9yRWFjaChvPT57bGV0IGw9dGhpcy5wcmVmaXhlcy5hZGRbb107bCYmbC5wcmVmaXhlcyYmbC5wcmVmaXhlcy5sZW5ndGg+MCYmKGk9ITApfSk7cmV0dXJufXJldHVybiBuPW58fGEubGVuZ3RoPjEsITF9KSxpJiZuJiZ0Lndhcm4oZSwiUmVwbGFjZSB0cmFuc2l0aW9uLXByb3BlcnR5IHRvIHRyYW5zaXRpb24sIGJlY2F1c2UgQXV0b3ByZWZpeGVyIGNvdWxkIG5vdCBzdXBwb3J0IGFueSBjYXNlcyBvZiB0cmFuc2l0aW9uLXByb3BlcnR5IGFuZCBvdGhlciB0cmFuc2l0aW9uLSoiKX1yZW1vdmUoZSl7bGV0IHQ9dGhpcy5wYXJzZShlLnZhbHVlKTt0PXQuZmlsdGVyKGE9PntsZXQgbz10aGlzLnByZWZpeGVzLnJlbW92ZVt0aGlzLmZpbmRQcm9wKGEpXTtyZXR1cm4hb3x8IW8ucmVtb3ZlfSk7bGV0IGk9dGhpcy5zdHJpbmdpZnkodCk7aWYoZS52YWx1ZT09PWkpcmV0dXJuO2lmKHQubGVuZ3RoPT09MCl7ZS5yZW1vdmUoKTtyZXR1cm59bGV0IG49ZS5wYXJlbnQuc29tZShhPT5hLnByb3A9PT1lLnByb3AmJmEudmFsdWU9PT1pKSxzPWUucGFyZW50LnNvbWUoYT0+YSE9PWUmJmEucHJvcD09PWUucHJvcCYmYS52YWx1ZS5sZW5ndGg+aS5sZW5ndGgpO2lmKG58fHMpe2UucmVtb3ZlKCk7cmV0dXJufWUudmFsdWU9aX1wYXJzZShlKXtsZXQgdD1yYihlKSxpPVtdLG49W107Zm9yKGxldCBzIG9mIHQubm9kZXMpbi5wdXNoKHMpLHMudHlwZT09PSJkaXYiJiZzLnZhbHVlPT09IiwiJiYoaS5wdXNoKG4pLG49W10pO3JldHVybiBpLnB1c2gobiksaS5maWx0ZXIocz0+cy5sZW5ndGg+MCl9c3RyaW5naWZ5KGUpe2lmKGUubGVuZ3RoPT09MClyZXR1cm4iIjtsZXQgdD1bXTtmb3IobGV0IGkgb2YgZSlpW2kubGVuZ3RoLTFdLnR5cGUhPT0iZGl2IiYmaS5wdXNoKHRoaXMuZGl2KGUpKSx0PXQuY29uY2F0KGkpO3JldHVybiB0WzBdLnR5cGU9PT0iZGl2IiYmKHQ9dC5zbGljZSgxKSksdFt0Lmxlbmd0aC0xXS50eXBlPT09ImRpdiImJih0PXQuc2xpY2UoMCwtMisxfHx2b2lkIDApKSxyYi5zdHJpbmdpZnkoe25vZGVzOnR9KX1jbG9uZShlLHQsaSl7bGV0IG49W10scz0hMTtmb3IobGV0IGEgb2YgaSkhcyYmYS50eXBlPT09IndvcmQiJiZhLnZhbHVlPT09ZT8obi5wdXNoKHt0eXBlOiJ3b3JkIix2YWx1ZTp0fSkscz0hMCk6bi5wdXNoKGEpO3JldHVybiBufWRpdihlKXtmb3IobGV0IHQgb2YgZSlmb3IobGV0IGkgb2YgdClpZihpLnR5cGU9PT0iZGl2IiYmaS52YWx1ZT09PSIsIilyZXR1cm4gaTtyZXR1cm57dHlwZToiZGl2Iix2YWx1ZToiLCIsYWZ0ZXI6IiAifX1jbGVhbk90aGVyUHJlZml4ZXMoZSx0KXtyZXR1cm4gZS5maWx0ZXIoaT0+e2xldCBuPWliLnByZWZpeCh0aGlzLmZpbmRQcm9wKGkpKTtyZXR1cm4gbj09PSIifHxuPT09dH0pfWNsZWFuRnJvbVVucHJlZml4ZWQoZSx0KXtsZXQgaT1lLm1hcChzPT50aGlzLmZpbmRQcm9wKHMpKS5maWx0ZXIocz0+cy5zbGljZSgwLHQubGVuZ3RoKT09PXQpLm1hcChzPT50aGlzLnByZWZpeGVzLnVucHJlZml4ZWQocykpLG49W107Zm9yKGxldCBzIG9mIGUpe2xldCBhPXRoaXMuZmluZFByb3Aocyksbz1pYi5wcmVmaXgoYSk7IWkuaW5jbHVkZXMoYSkmJihvPT09dHx8bz09PSIiKSYmbi5wdXNoKHMpfXJldHVybiBufWRpc2FibGVkKGUsdCl7bGV0IGk9WyJvcmRlciIsImp1c3RpZnktY29udGVudCIsImFsaWduLXNlbGYiLCJhbGlnbi1jb250ZW50Il07aWYoZS5pbmNsdWRlcygiZmxleCIpfHxpLmluY2x1ZGVzKGUpKXtpZih0aGlzLnByZWZpeGVzLm9wdGlvbnMuZmxleGJveD09PSExKXJldHVybiEwO2lmKHRoaXMucHJlZml4ZXMub3B0aW9ucy5mbGV4Ym94PT09Im5vLTIwMDkiKXJldHVybiB0LmluY2x1ZGVzKCIyMDA5Iil9fXJ1bGVWZW5kb3JQcmVmaXhlcyhlKXtsZXR7cGFyZW50OnR9PWU7aWYodC50eXBlIT09InJ1bGUiKXJldHVybiExO2lmKCF0LnNlbGVjdG9yLmluY2x1ZGVzKCI6LSIpKXJldHVybiExO2xldCBpPUNPLnByZWZpeGVzKCkuZmlsdGVyKG49PnQuc2VsZWN0b3IuaW5jbHVkZXMoIjoiK24pKTtyZXR1cm4gaS5sZW5ndGg+MD9pOiExfX07c2IuZXhwb3J0cz1uYn0pO3ZhciB4cj14KChmJCxsYik9Pnt1KCk7dmFyIF9PPV9lKCksb2I9Y2xhc3N7Y29uc3RydWN0b3IoZSx0LGksbil7dGhpcy51bnByZWZpeGVkPWUsdGhpcy5wcmVmaXhlZD10LHRoaXMuc3RyaW5nPWl8fHQsdGhpcy5yZWdleHA9bnx8X08ucmVnZXhwKHQpfWNoZWNrKGUpe3JldHVybiBlLmluY2x1ZGVzKHRoaXMuc3RyaW5nKT8hIWUubWF0Y2godGhpcy5yZWdleHApOiExfX07bGIuZXhwb3J0cz1vYn0pO3ZhciBIZT14KChjJCxmYik9Pnt1KCk7dmFyIEVPPXdyKCksT089eHIoKSxUTz1OaSgpLFJPPV9lKCksdWI9Y2xhc3MgZXh0ZW5kcyBFT3tzdGF0aWMgc2F2ZShlLHQpe2xldCBpPXQucHJvcCxuPVtdO2ZvcihsZXQgcyBpbiB0Ll9hdXRvcHJlZml4ZXJWYWx1ZXMpe2xldCBhPXQuX2F1dG9wcmVmaXhlclZhbHVlc1tzXTtpZihhPT09dC52YWx1ZSljb250aW51ZTtsZXQgbyxsPVRPLnByZWZpeChpKTtpZihsPT09Ii1waWUtIiljb250aW51ZTtpZihsPT09cyl7bz10LnZhbHVlPWEsbi5wdXNoKG8pO2NvbnRpbnVlfWxldCBjPWUucHJlZml4ZWQoaSxzKSxmPXQucGFyZW50O2lmKCFmLmV2ZXJ5KGI9PmIucHJvcCE9PWMpKXtuLnB1c2gobyk7Y29udGludWV9bGV0IGQ9YS5yZXBsYWNlKC9ccysvLCIgIik7aWYoZi5zb21lKGI9PmIucHJvcD09PXQucHJvcCYmYi52YWx1ZS5yZXBsYWNlKC9ccysvLCIgIik9PT1kKSl7bi5wdXNoKG8pO2NvbnRpbnVlfWxldCBoPXRoaXMuY2xvbmUodCx7dmFsdWU6YX0pO289dC5wYXJlbnQuaW5zZXJ0QmVmb3JlKHQsaCksbi5wdXNoKG8pfXJldHVybiBufWNoZWNrKGUpe2xldCB0PWUudmFsdWU7cmV0dXJuIHQuaW5jbHVkZXModGhpcy5uYW1lKT8hIXQubWF0Y2godGhpcy5yZWdleHAoKSk6ITF9cmVnZXhwKCl7cmV0dXJuIHRoaXMucmVnZXhwQ2FjaGV8fCh0aGlzLnJlZ2V4cENhY2hlPVJPLnJlZ2V4cCh0aGlzLm5hbWUpKX1yZXBsYWNlKGUsdCl7cmV0dXJuIGUucmVwbGFjZSh0aGlzLnJlZ2V4cCgpLGAkMSR7dH0kMmApfXZhbHVlKGUpe3JldHVybiBlLnJhd3MudmFsdWUmJmUucmF3cy52YWx1ZS52YWx1ZT09PWUudmFsdWU/ZS5yYXdzLnZhbHVlLnJhdzplLnZhbHVlfWFkZChlLHQpe2UuX2F1dG9wcmVmaXhlclZhbHVlc3x8KGUuX2F1dG9wcmVmaXhlclZhbHVlcz17fSk7bGV0IGk9ZS5fYXV0b3ByZWZpeGVyVmFsdWVzW3RdfHx0aGlzLnZhbHVlKGUpLG47ZG8gaWYobj1pLGk9dGhpcy5yZXBsYWNlKGksdCksaT09PSExKXJldHVybjt3aGlsZShpIT09bik7ZS5fYXV0b3ByZWZpeGVyVmFsdWVzW3RdPWl9b2xkKGUpe3JldHVybiBuZXcgT08odGhpcy5uYW1lLGUrdGhpcy5uYW1lKX19O2ZiLmV4cG9ydHM9dWJ9KTt2YXIgQnQ9eCgocCQsY2IpPT57dSgpO2NiLmV4cG9ydHM9e319KTt2YXIgb3U9eCgoZCQsaGIpPT57dSgpO3ZhciBwYj1NcygpLFBPPUhlKCksSU89QnQoKS5pbnNlcnRBcmVhcyxETz0vKF58W14tXSlsaW5lYXItZ3JhZGllbnRcKFxzKih0b3B8bGVmdHxyaWdodHxib3R0b20pL2kscU89LyhefFteLV0pcmFkaWFsLWdyYWRpZW50XChccypcZCsoXHcqfCUpXHMrXGQrKFx3KnwlKVxzKiwvaSwkTz0vKCFccyopP2F1dG9wcmVmaXhlcjpccyppZ25vcmVccytuZXh0L2ksTE89LyghXHMqKT9hdXRvcHJlZml4ZXJccypncmlkOlxzKihvbnxvZmZ8KG5vLSk/YXV0b3BsYWNlKS9pLE1PPVsid2lkdGgiLCJoZWlnaHQiLCJtaW4td2lkdGgiLCJtYXgtd2lkdGgiLCJtaW4taGVpZ2h0IiwibWF4LWhlaWdodCIsImlubGluZS1zaXplIiwibWluLWlubGluZS1zaXplIiwibWF4LWlubGluZS1zaXplIiwiYmxvY2stc2l6ZSIsIm1pbi1ibG9jay1zaXplIiwibWF4LWJsb2NrLXNpemUiXTtmdW5jdGlvbiBhdShyKXtyZXR1cm4gci5wYXJlbnQuc29tZShlPT5lLnByb3A9PT0iZ3JpZC10ZW1wbGF0ZSJ8fGUucHJvcD09PSJncmlkLXRlbXBsYXRlLWFyZWFzIil9ZnVuY3Rpb24gTk8ocil7bGV0IGU9ci5wYXJlbnQuc29tZShpPT5pLnByb3A9PT0iZ3JpZC10ZW1wbGF0ZS1yb3dzIiksdD1yLnBhcmVudC5zb21lKGk9PmkucHJvcD09PSJncmlkLXRlbXBsYXRlLWNvbHVtbnMiKTtyZXR1cm4gZSYmdH12YXIgZGI9Y2xhc3N7Y29uc3RydWN0b3IoZSl7dGhpcy5wcmVmaXhlcz1lfWFkZChlLHQpe2xldCBpPXRoaXMucHJlZml4ZXMuYWRkWyJAcmVzb2x1dGlvbiJdLG49dGhpcy5wcmVmaXhlcy5hZGRbIkBrZXlmcmFtZXMiXSxzPXRoaXMucHJlZml4ZXMuYWRkWyJAdmlld3BvcnQiXSxhPXRoaXMucHJlZml4ZXMuYWRkWyJAc3VwcG9ydHMiXTtlLndhbGtBdFJ1bGVzKGY9PntpZihmLm5hbWU9PT0ia2V5ZnJhbWVzIil7aWYoIXRoaXMuZGlzYWJsZWQoZix0KSlyZXR1cm4gbiYmbi5wcm9jZXNzKGYpfWVsc2UgaWYoZi5uYW1lPT09InZpZXdwb3J0Iil7aWYoIXRoaXMuZGlzYWJsZWQoZix0KSlyZXR1cm4gcyYmcy5wcm9jZXNzKGYpfWVsc2UgaWYoZi5uYW1lPT09InN1cHBvcnRzIil7aWYodGhpcy5wcmVmaXhlcy5vcHRpb25zLnN1cHBvcnRzIT09ITEmJiF0aGlzLmRpc2FibGVkKGYsdCkpcmV0dXJuIGEucHJvY2VzcyhmKX1lbHNlIGlmKGYubmFtZT09PSJtZWRpYSImJmYucGFyYW1zLmluY2x1ZGVzKCItcmVzb2x1dGlvbiIpJiYhdGhpcy5kaXNhYmxlZChmLHQpKXJldHVybiBpJiZpLnByb2Nlc3MoZil9KSxlLndhbGtSdWxlcyhmPT57aWYoIXRoaXMuZGlzYWJsZWQoZix0KSlyZXR1cm4gdGhpcy5wcmVmaXhlcy5hZGQuc2VsZWN0b3JzLm1hcChkPT5kLnByb2Nlc3MoZix0KSl9KTtmdW5jdGlvbiBvKGYpe3JldHVybiBmLnBhcmVudC5ub2Rlcy5zb21lKGQ9PntpZihkLnR5cGUhPT0iZGVjbCIpcmV0dXJuITE7bGV0IHA9ZC5wcm9wPT09ImRpc3BsYXkiJiYvKGlubGluZS0pP2dyaWQvLnRlc3QoZC52YWx1ZSksaD1kLnByb3Auc3RhcnRzV2l0aCgiZ3JpZC10ZW1wbGF0ZSIpLGI9L15ncmlkLShbQS16XSstKT9nYXAvLnRlc3QoZC5wcm9wKTtyZXR1cm4gcHx8aHx8Yn0pfWZ1bmN0aW9uIGwoZil7cmV0dXJuIGYucGFyZW50LnNvbWUoZD0+ZC5wcm9wPT09ImRpc3BsYXkiJiYvKGlubGluZS0pP2ZsZXgvLnRlc3QoZC52YWx1ZSkpfWxldCBjPXRoaXMuZ3JpZFN0YXR1cyhlLHQpJiZ0aGlzLnByZWZpeGVzLmFkZFsiZ3JpZC1hcmVhIl0mJnRoaXMucHJlZml4ZXMuYWRkWyJncmlkLWFyZWEiXS5wcmVmaXhlcztyZXR1cm4gZS53YWxrRGVjbHMoZj0+e2lmKHRoaXMuZGlzYWJsZWREZWNsKGYsdCkpcmV0dXJuO2xldCBkPWYucGFyZW50LHA9Zi5wcm9wLGg9Zi52YWx1ZTtpZihwPT09ImdyaWQtcm93LXNwYW4iKXt0Lndhcm4oImdyaWQtcm93LXNwYW4gaXMgbm90IHBhcnQgb2YgZmluYWwgR3JpZCBMYXlvdXQuIFVzZSBncmlkLXJvdy4iLHtub2RlOmZ9KTtyZXR1cm59ZWxzZSBpZihwPT09ImdyaWQtY29sdW1uLXNwYW4iKXt0Lndhcm4oImdyaWQtY29sdW1uLXNwYW4gaXMgbm90IHBhcnQgb2YgZmluYWwgR3JpZCBMYXlvdXQuIFVzZSBncmlkLWNvbHVtbi4iLHtub2RlOmZ9KTtyZXR1cm59ZWxzZSBpZihwPT09ImRpc3BsYXkiJiZoPT09ImJveCIpe3Qud2FybigiWW91IHNob3VsZCB3cml0ZSBkaXNwbGF5OiBmbGV4IGJ5IGZpbmFsIHNwZWMgaW5zdGVhZCBvZiBkaXNwbGF5OiBib3giLHtub2RlOmZ9KTtyZXR1cm59ZWxzZSBpZihwPT09InRleHQtZW1waGFzaXMtcG9zaXRpb24iKShoPT09InVuZGVyInx8aD09PSJvdmVyIikmJnQud2FybigiWW91IHNob3VsZCB1c2UgMiB2YWx1ZXMgZm9yIHRleHQtZW1waGFzaXMtcG9zaXRpb24gRm9yIGV4YW1wbGUsIGB1bmRlciBsZWZ0YCBpbnN0ZWFkIG9mIGp1c3QgYHVuZGVyYC4iLHtub2RlOmZ9KTtlbHNlIGlmKC9eKGFsaWdufGp1c3RpZnl8cGxhY2UpLShpdGVtc3xjb250ZW50KSQvLnRlc3QocCkmJmwoZikpKGg9PT0ic3RhcnQifHxoPT09ImVuZCIpJiZ0Lndhcm4oYCR7aH0gdmFsdWUgaGFzIG1peGVkIHN1cHBvcnQsIGNvbnNpZGVyIHVzaW5nIGZsZXgtJHtofSBpbnN0ZWFkYCx7bm9kZTpmfSk7ZWxzZSBpZihwPT09InRleHQtZGVjb3JhdGlvbi1za2lwIiYmaD09PSJpbmsiKXQud2FybigiUmVwbGFjZSB0ZXh0LWRlY29yYXRpb24tc2tpcDogaW5rIHRvIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bywgYmVjYXVzZSBzcGVjIGhhZCBiZWVuIGNoYW5nZWQiLHtub2RlOmZ9KTtlbHNle2lmKGMmJnRoaXMuZ3JpZFN0YXR1cyhmLHQpKWlmKGYudmFsdWU9PT0ic3ViZ3JpZCImJnQud2FybigiSUUgZG9lcyBub3Qgc3VwcG9ydCBzdWJncmlkIix7bm9kZTpmfSksL14oYWxpZ258anVzdGlmeXxwbGFjZSktaXRlbXMkLy50ZXN0KHApJiZvKGYpKXtsZXQgdj1wLnJlcGxhY2UoIi1pdGVtcyIsIi1zZWxmIik7dC53YXJuKGBJRSBkb2VzIG5vdCBzdXBwb3J0ICR7cH0gb24gZ3JpZCBjb250YWluZXJzLiBUcnkgdXNpbmcgJHt2fSBvbiBjaGlsZCBlbGVtZW50cyBpbnN0ZWFkOiAke2YucGFyZW50LnNlbGVjdG9yfSA+ICogeyAke3Z9OiAke2YudmFsdWV9IH1gLHtub2RlOmZ9KX1lbHNlIGlmKC9eKGFsaWdufGp1c3RpZnl8cGxhY2UpLWNvbnRlbnQkLy50ZXN0KHApJiZvKGYpKXQud2FybihgSUUgZG9lcyBub3Qgc3VwcG9ydCAke2YucHJvcH0gb24gZ3JpZCBjb250YWluZXJzYCx7bm9kZTpmfSk7ZWxzZSBpZihwPT09ImRpc3BsYXkiJiZmLnZhbHVlPT09ImNvbnRlbnRzIil7dC53YXJuKCJQbGVhc2UgZG8gbm90IHVzZSBkaXNwbGF5OiBjb250ZW50czsgaWYgeW91IGhhdmUgZ3JpZCBzZXR0aW5nIGVuYWJsZWQiLHtub2RlOmZ9KTtyZXR1cm59ZWxzZSBpZihmLnByb3A9PT0iZ3JpZC1nYXAiKXtsZXQgdj10aGlzLmdyaWRTdGF0dXMoZix0KTt2PT09ImF1dG9wbGFjZSImJiFOTyhmKSYmIWF1KGYpP3Qud2FybigiZ3JpZC1nYXAgb25seSB3b3JrcyBpZiBncmlkLXRlbXBsYXRlKC1hcmVhcykgaXMgYmVpbmcgdXNlZCBvciBib3RoIHJvd3MgYW5kIGNvbHVtbnMgaGF2ZSBiZWVuIGRlY2xhcmVkIGFuZCBjZWxscyBoYXZlIG5vdCBiZWVuIG1hbnVhbGx5IHBsYWNlZCBpbnNpZGUgdGhlIGV4cGxpY2l0IGdyaWQiLHtub2RlOmZ9KToodj09PSEwfHx2PT09Im5vLWF1dG9wbGFjZSIpJiYhYXUoZikmJnQud2FybigiZ3JpZC1nYXAgb25seSB3b3JrcyBpZiBncmlkLXRlbXBsYXRlKC1hcmVhcykgaXMgYmVpbmcgdXNlZCIse25vZGU6Zn0pfWVsc2UgaWYocD09PSJncmlkLWF1dG8tY29sdW1ucyIpe3Qud2FybigiZ3JpZC1hdXRvLWNvbHVtbnMgaXMgbm90IHN1cHBvcnRlZCBieSBJRSIse25vZGU6Zn0pO3JldHVybn1lbHNlIGlmKHA9PT0iZ3JpZC1hdXRvLXJvd3MiKXt0Lndhcm4oImdyaWQtYXV0by1yb3dzIGlzIG5vdCBzdXBwb3J0ZWQgYnkgSUUiLHtub2RlOmZ9KTtyZXR1cm59ZWxzZSBpZihwPT09ImdyaWQtYXV0by1mbG93Iil7bGV0IHY9ZC5zb21lKHc9PncucHJvcD09PSJncmlkLXRlbXBsYXRlLXJvd3MiKSx5PWQuc29tZSh3PT53LnByb3A9PT0iZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIik7YXUoZik/dC53YXJuKCJncmlkLWF1dG8tZmxvdyBpcyBub3Qgc3VwcG9ydGVkIGJ5IElFIix7bm9kZTpmfSk6aC5pbmNsdWRlcygiZGVuc2UiKT90Lndhcm4oImdyaWQtYXV0by1mbG93OiBkZW5zZSBpcyBub3Qgc3VwcG9ydGVkIGJ5IElFIix7bm9kZTpmfSk6IXYmJiF5JiZ0Lndhcm4oImdyaWQtYXV0by1mbG93IHdvcmtzIG9ubHkgaWYgZ3JpZC10ZW1wbGF0ZS1yb3dzIGFuZCBncmlkLXRlbXBsYXRlLWNvbHVtbnMgYXJlIHByZXNlbnQgaW4gdGhlIHNhbWUgcnVsZSIse25vZGU6Zn0pO3JldHVybn1lbHNlIGlmKGguaW5jbHVkZXMoImF1dG8tZml0Iikpe3Qud2FybigiYXV0by1maXQgdmFsdWUgaXMgbm90IHN1cHBvcnRlZCBieSBJRSIse25vZGU6Zix3b3JkOiJhdXRvLWZpdCJ9KTtyZXR1cm59ZWxzZSBpZihoLmluY2x1ZGVzKCJhdXRvLWZpbGwiKSl7dC53YXJuKCJhdXRvLWZpbGwgdmFsdWUgaXMgbm90IHN1cHBvcnRlZCBieSBJRSIse25vZGU6Zix3b3JkOiJhdXRvLWZpbGwifSk7cmV0dXJufWVsc2UgcC5zdGFydHNXaXRoKCJncmlkLXRlbXBsYXRlIikmJmguaW5jbHVkZXMoIlsiKSYmdC53YXJuKCJBdXRvcHJlZml4ZXIgY3VycmVudGx5IGRvZXMgbm90IHN1cHBvcnQgbGluZSBuYW1lcy4gVHJ5IHVzaW5nIGdyaWQtdGVtcGxhdGUtYXJlYXMgaW5zdGVhZC4iLHtub2RlOmYsd29yZDoiWyJ9KTtpZihoLmluY2x1ZGVzKCJyYWRpYWwtZ3JhZGllbnQiKSlpZihxTy50ZXN0KGYudmFsdWUpKXQud2FybigiR3JhZGllbnQgaGFzIG91dGRhdGVkIGRpcmVjdGlvbiBzeW50YXguIE5ldyBzeW50YXggaXMgbGlrZSBgY2xvc2VzdC1zaWRlIGF0IDAgMGAgaW5zdGVhZCBvZiBgMCAwLCBjbG9zZXN0LXNpZGVgLiIse25vZGU6Zn0pO2Vsc2V7bGV0IHY9cGIoaCk7Zm9yKGxldCB5IG9mIHYubm9kZXMpaWYoeS50eXBlPT09ImZ1bmN0aW9uIiYmeS52YWx1ZT09PSJyYWRpYWwtZ3JhZGllbnQiKWZvcihsZXQgdyBvZiB5Lm5vZGVzKXcudHlwZT09PSJ3b3JkIiYmKHcudmFsdWU9PT0iY292ZXIiP3Qud2FybigiR3JhZGllbnQgaGFzIG91dGRhdGVkIGRpcmVjdGlvbiBzeW50YXguIFJlcGxhY2UgYGNvdmVyYCB0byBgZmFydGhlc3QtY29ybmVyYC4iLHtub2RlOmZ9KTp3LnZhbHVlPT09ImNvbnRhaW4iJiZ0Lndhcm4oIkdyYWRpZW50IGhhcyBvdXRkYXRlZCBkaXJlY3Rpb24gc3ludGF4LiBSZXBsYWNlIGBjb250YWluYCB0byBgY2xvc2VzdC1zaWRlYC4iLHtub2RlOmZ9KSl9aC5pbmNsdWRlcygibGluZWFyLWdyYWRpZW50IikmJkRPLnRlc3QoaCkmJnQud2FybigiR3JhZGllbnQgaGFzIG91dGRhdGVkIGRpcmVjdGlvbiBzeW50YXguIE5ldyBzeW50YXggaXMgbGlrZSBgdG8gbGVmdGAgaW5zdGVhZCBvZiBgcmlnaHRgLiIse25vZGU6Zn0pfU1PLmluY2x1ZGVzKGYucHJvcCkmJihmLnZhbHVlLmluY2x1ZGVzKCItZmlsbC1hdmFpbGFibGUiKXx8KGYudmFsdWUuaW5jbHVkZXMoImZpbGwtYXZhaWxhYmxlIik/dC53YXJuKCJSZXBsYWNlIGZpbGwtYXZhaWxhYmxlIHRvIHN0cmV0Y2gsIGJlY2F1c2Ugc3BlYyBoYWQgYmVlbiBjaGFuZ2VkIix7bm9kZTpmfSk6Zi52YWx1ZS5pbmNsdWRlcygiZmlsbCIpJiZwYihoKS5ub2Rlcy5zb21lKHk9PnkudHlwZT09PSJ3b3JkIiYmeS52YWx1ZT09PSJmaWxsIikmJnQud2FybigiUmVwbGFjZSBmaWxsIHRvIHN0cmV0Y2gsIGJlY2F1c2Ugc3BlYyBoYWQgYmVlbiBjaGFuZ2VkIix7bm9kZTpmfSkpKTtsZXQgYjtpZihmLnByb3A9PT0idHJhbnNpdGlvbiJ8fGYucHJvcD09PSJ0cmFuc2l0aW9uLXByb3BlcnR5IilyZXR1cm4gdGhpcy5wcmVmaXhlcy50cmFuc2l0aW9uLmFkZChmLHQpO2lmKGYucHJvcD09PSJhbGlnbi1zZWxmIil7aWYodGhpcy5kaXNwbGF5VHlwZShmKSE9PSJncmlkIiYmdGhpcy5wcmVmaXhlcy5vcHRpb25zLmZsZXhib3ghPT0hMSYmKGI9dGhpcy5wcmVmaXhlcy5hZGRbImFsaWduLXNlbGYiXSxiJiZiLnByZWZpeGVzJiZiLnByb2Nlc3MoZikpLHRoaXMuZ3JpZFN0YXR1cyhmLHQpIT09ITEmJihiPXRoaXMucHJlZml4ZXMuYWRkWyJncmlkLXJvdy1hbGlnbiJdLGImJmIucHJlZml4ZXMpKXJldHVybiBiLnByb2Nlc3MoZix0KX1lbHNlIGlmKGYucHJvcD09PSJqdXN0aWZ5LXNlbGYiKXtpZih0aGlzLmdyaWRTdGF0dXMoZix0KSE9PSExJiYoYj10aGlzLnByZWZpeGVzLmFkZFsiZ3JpZC1jb2x1bW4tYWxpZ24iXSxiJiZiLnByZWZpeGVzKSlyZXR1cm4gYi5wcm9jZXNzKGYsdCl9ZWxzZSBpZihmLnByb3A9PT0icGxhY2Utc2VsZiIpe2lmKGI9dGhpcy5wcmVmaXhlcy5hZGRbInBsYWNlLXNlbGYiXSxiJiZiLnByZWZpeGVzJiZ0aGlzLmdyaWRTdGF0dXMoZix0KSE9PSExKXJldHVybiBiLnByb2Nlc3MoZix0KX1lbHNlIGlmKGI9dGhpcy5wcmVmaXhlcy5hZGRbZi5wcm9wXSxiJiZiLnByZWZpeGVzKXJldHVybiBiLnByb2Nlc3MoZix0KX0pLHRoaXMuZ3JpZFN0YXR1cyhlLHQpJiZJTyhlLHRoaXMuZGlzYWJsZWQpLGUud2Fsa0RlY2xzKGY9PntpZih0aGlzLmRpc2FibGVkVmFsdWUoZix0KSlyZXR1cm47bGV0IGQ9dGhpcy5wcmVmaXhlcy51bnByZWZpeGVkKGYucHJvcCkscD10aGlzLnByZWZpeGVzLnZhbHVlcygiYWRkIixkKTtpZihBcnJheS5pc0FycmF5KHApKWZvcihsZXQgaCBvZiBwKWgucHJvY2VzcyYmaC5wcm9jZXNzKGYsdCk7UE8uc2F2ZSh0aGlzLnByZWZpeGVzLGYpfSl9cmVtb3ZlKGUsdCl7bGV0IGk9dGhpcy5wcmVmaXhlcy5yZW1vdmVbIkByZXNvbHV0aW9uIl07ZS53YWxrQXRSdWxlcygobixzKT0+e3RoaXMucHJlZml4ZXMucmVtb3ZlW2BAJHtuLm5hbWV9YF0/dGhpcy5kaXNhYmxlZChuLHQpfHxuLnBhcmVudC5yZW1vdmVDaGlsZChzKTpuLm5hbWU9PT0ibWVkaWEiJiZuLnBhcmFtcy5pbmNsdWRlcygiLXJlc29sdXRpb24iKSYmaSYmaS5jbGVhbihuKX0pO2ZvcihsZXQgbiBvZiB0aGlzLnByZWZpeGVzLnJlbW92ZS5zZWxlY3RvcnMpZS53YWxrUnVsZXMoKHMsYSk9PntuLmNoZWNrKHMpJiYodGhpcy5kaXNhYmxlZChzLHQpfHxzLnBhcmVudC5yZW1vdmVDaGlsZChhKSl9KTtyZXR1cm4gZS53YWxrRGVjbHMoKG4scyk9PntpZih0aGlzLmRpc2FibGVkKG4sdCkpcmV0dXJuO2xldCBhPW4ucGFyZW50LG89dGhpcy5wcmVmaXhlcy51bnByZWZpeGVkKG4ucHJvcCk7aWYoKG4ucHJvcD09PSJ0cmFuc2l0aW9uInx8bi5wcm9wPT09InRyYW5zaXRpb24tcHJvcGVydHkiKSYmdGhpcy5wcmVmaXhlcy50cmFuc2l0aW9uLnJlbW92ZShuKSx0aGlzLnByZWZpeGVzLnJlbW92ZVtuLnByb3BdJiZ0aGlzLnByZWZpeGVzLnJlbW92ZVtuLnByb3BdLnJlbW92ZSl7bGV0IGw9dGhpcy5wcmVmaXhlcy5ncm91cChuKS5kb3duKGM9PnRoaXMucHJlZml4ZXMubm9ybWFsaXplKGMucHJvcCk9PT1vKTtpZihvPT09ImZsZXgtZmxvdyImJihsPSEwKSxuLnByb3A9PT0iLXdlYmtpdC1ib3gtb3JpZW50Iil7bGV0IGM9eyJmbGV4LWRpcmVjdGlvbiI6ITAsImZsZXgtZmxvdyI6ITB9O2lmKCFuLnBhcmVudC5zb21lKGY9PmNbZi5wcm9wXSkpcmV0dXJufWlmKGwmJiF0aGlzLndpdGhIYWNrVmFsdWUobikpe24ucmF3KCJiZWZvcmUiKS5pbmNsdWRlcyhgCmApJiZ0aGlzLnJlZHVjZVNwYWNlcyhuKSxhLnJlbW92ZUNoaWxkKHMpO3JldHVybn19Zm9yKGxldCBsIG9mIHRoaXMucHJlZml4ZXMudmFsdWVzKCJyZW1vdmUiLG8pKXtpZighbC5jaGVja3x8IWwuY2hlY2sobi52YWx1ZSkpY29udGludWU7aWYobz1sLnVucHJlZml4ZWQsdGhpcy5wcmVmaXhlcy5ncm91cChuKS5kb3duKGY9PmYudmFsdWUuaW5jbHVkZXMobykpKXthLnJlbW92ZUNoaWxkKHMpO3JldHVybn19fSl9d2l0aEhhY2tWYWx1ZShlKXtyZXR1cm4gZS5wcm9wPT09Ii13ZWJraXQtYmFja2dyb3VuZC1jbGlwIiYmZS52YWx1ZT09PSJ0ZXh0In1kaXNhYmxlZFZhbHVlKGUsdCl7cmV0dXJuIHRoaXMuZ3JpZFN0YXR1cyhlLHQpPT09ITEmJmUudHlwZT09PSJkZWNsIiYmZS5wcm9wPT09ImRpc3BsYXkiJiZlLnZhbHVlLmluY2x1ZGVzKCJncmlkIil8fHRoaXMucHJlZml4ZXMub3B0aW9ucy5mbGV4Ym94PT09ITEmJmUudHlwZT09PSJkZWNsIiYmZS5wcm9wPT09ImRpc3BsYXkiJiZlLnZhbHVlLmluY2x1ZGVzKCJmbGV4Iil8fGUudHlwZT09PSJkZWNsIiYmZS5wcm9wPT09ImNvbnRlbnQiPyEwOnRoaXMuZGlzYWJsZWQoZSx0KX1kaXNhYmxlZERlY2woZSx0KXtpZih0aGlzLmdyaWRTdGF0dXMoZSx0KT09PSExJiZlLnR5cGU9PT0iZGVjbCImJihlLnByb3AuaW5jbHVkZXMoImdyaWQiKXx8ZS5wcm9wPT09Imp1c3RpZnktaXRlbXMiKSlyZXR1cm4hMDtpZih0aGlzLnByZWZpeGVzLm9wdGlvbnMuZmxleGJveD09PSExJiZlLnR5cGU9PT0iZGVjbCIpe2xldCBpPVsib3JkZXIiLCJqdXN0aWZ5LWNvbnRlbnQiLCJhbGlnbi1pdGVtcyIsImFsaWduLWNvbnRlbnQiXTtpZihlLnByb3AuaW5jbHVkZXMoImZsZXgiKXx8aS5pbmNsdWRlcyhlLnByb3ApKXJldHVybiEwfXJldHVybiB0aGlzLmRpc2FibGVkKGUsdCl9ZGlzYWJsZWQoZSx0KXtpZighZSlyZXR1cm4hMTtpZihlLl9hdXRvcHJlZml4ZXJEaXNhYmxlZCE9PXZvaWQgMClyZXR1cm4gZS5fYXV0b3ByZWZpeGVyRGlzYWJsZWQ7aWYoZS5wYXJlbnQpe2xldCBuPWUucHJldigpO2lmKG4mJm4udHlwZT09PSJjb21tZW50IiYmJE8udGVzdChuLnRleHQpKXJldHVybiBlLl9hdXRvcHJlZml4ZXJEaXNhYmxlZD0hMCxlLl9hdXRvcHJlZml4ZXJTZWxmRGlzYWJsZWQ9ITAsITB9bGV0IGk9bnVsbDtpZihlLm5vZGVzKXtsZXQgbjtlLmVhY2gocz0+e3MudHlwZT09PSJjb21tZW50IiYmLyghXHMqKT9hdXRvcHJlZml4ZXI6XHMqKG9mZnxvbikvaS50ZXN0KHMudGV4dCkmJih0eXBlb2YgbiE9InVuZGVmaW5lZCI/dC53YXJuKCJTZWNvbmQgQXV0b3ByZWZpeGVyIGNvbnRyb2wgY29tbWVudCB3YXMgaWdub3JlZC4gQXV0b3ByZWZpeGVyIGFwcGxpZXMgY29udHJvbCBjb21tZW50IHRvIHdob2xlIGJsb2NrLCBub3QgdG8gbmV4dCBydWxlcy4iLHtub2RlOnN9KTpuPS9vbi9pLnRlc3Qocy50ZXh0KSl9KSxuIT09dm9pZCAwJiYoaT0hbil9aWYoIWUubm9kZXN8fGk9PT1udWxsKWlmKGUucGFyZW50KXtsZXQgbj10aGlzLmRpc2FibGVkKGUucGFyZW50LHQpO2UucGFyZW50Ll9hdXRvcHJlZml4ZXJTZWxmRGlzYWJsZWQ9PT0hMD9pPSExOmk9bn1lbHNlIGk9ITE7cmV0dXJuIGUuX2F1dG9wcmVmaXhlckRpc2FibGVkPWksaX1yZWR1Y2VTcGFjZXMoZSl7bGV0IHQ9ITE7aWYodGhpcy5wcmVmaXhlcy5ncm91cChlKS51cCgoKT0+KHQ9ITAsITApKSx0KXJldHVybjtsZXQgaT1lLnJhdygiYmVmb3JlIikuc3BsaXQoYApgKSxuPWlbaS5sZW5ndGgtMV0ubGVuZ3RoLHM9ITE7dGhpcy5wcmVmaXhlcy5ncm91cChlKS5kb3duKGE9PntpPWEucmF3KCJiZWZvcmUiKS5zcGxpdChgCmApO2xldCBvPWkubGVuZ3RoLTE7aVtvXS5sZW5ndGg+biYmKHM9PT0hMSYmKHM9aVtvXS5sZW5ndGgtbiksaVtvXT1pW29dLnNsaWNlKDAsLXMpLGEucmF3cy5iZWZvcmU9aS5qb2luKGAKYCkpfSl9ZGlzcGxheVR5cGUoZSl7Zm9yKGxldCB0IG9mIGUucGFyZW50Lm5vZGVzKWlmKHQucHJvcD09PSJkaXNwbGF5Iil7aWYodC52YWx1ZS5pbmNsdWRlcygiZmxleCIpKXJldHVybiJmbGV4IjtpZih0LnZhbHVlLmluY2x1ZGVzKCJncmlkIikpcmV0dXJuImdyaWQifXJldHVybiExfWdyaWRTdGF0dXMoZSx0KXtpZighZSlyZXR1cm4hMTtpZihlLl9hdXRvcHJlZml4ZXJHcmlkU3RhdHVzIT09dm9pZCAwKXJldHVybiBlLl9hdXRvcHJlZml4ZXJHcmlkU3RhdHVzO2xldCBpPW51bGw7aWYoZS5ub2Rlcyl7bGV0IG47ZS5lYWNoKHM9PntpZihzLnR5cGU9PT0iY29tbWVudCImJkxPLnRlc3Qocy50ZXh0KSl7bGV0IGE9LzpccyphdXRvcGxhY2UvaS50ZXN0KHMudGV4dCksbz0vbm8tYXV0b3BsYWNlL2kudGVzdChzLnRleHQpO3R5cGVvZiBuIT0idW5kZWZpbmVkIj90Lndhcm4oIlNlY29uZCBBdXRvcHJlZml4ZXIgZ3JpZCBjb250cm9sIGNvbW1lbnQgd2FzIGlnbm9yZWQuIEF1dG9wcmVmaXhlciBhcHBsaWVzIGNvbnRyb2wgY29tbWVudHMgdG8gdGhlIHdob2xlIGJsb2NrLCBub3QgdG8gdGhlIG5leHQgcnVsZXMuIix7bm9kZTpzfSk6YT9uPSJhdXRvcGxhY2UiOm8/bj0hMDpuPS9vbi9pLnRlc3Qocy50ZXh0KX19KSxuIT09dm9pZCAwJiYoaT1uKX1pZihlLnR5cGU9PT0iYXRydWxlIiYmZS5uYW1lPT09InN1cHBvcnRzIil7bGV0IG49ZS5wYXJhbXM7bi5pbmNsdWRlcygiZ3JpZCIpJiZuLmluY2x1ZGVzKCJhdXRvIikmJihpPSExKX1pZighZS5ub2Rlc3x8aT09PW51bGwpaWYoZS5wYXJlbnQpe2xldCBuPXRoaXMuZ3JpZFN0YXR1cyhlLnBhcmVudCx0KTtlLnBhcmVudC5fYXV0b3ByZWZpeGVyU2VsZkRpc2FibGVkPT09ITA/aT0hMTppPW59ZWxzZSB0eXBlb2YgdGhpcy5wcmVmaXhlcy5vcHRpb25zLmdyaWQhPSJ1bmRlZmluZWQiP2k9dGhpcy5wcmVmaXhlcy5vcHRpb25zLmdyaWQ6dHlwZW9mIG0uZW52LkFVVE9QUkVGSVhFUl9HUklEIT0idW5kZWZpbmVkIj9tLmVudi5BVVRPUFJFRklYRVJfR1JJRD09PSJhdXRvcGxhY2UiP2k9ImF1dG9wbGFjZSI6aT0hMDppPSExO3JldHVybiBlLl9hdXRvcHJlZml4ZXJHcmlkU3RhdHVzPWksaX19O2hiLmV4cG9ydHM9ZGJ9KTt2YXIgZ2I9eCgoaCQsbWIpPT57dSgpO21iLmV4cG9ydHM9e0E6e0E6eyIyIjoiSyBFIEYgRyBBIEIgSkMifSxCOnsiMSI6IkMgTCBNIEggTiBEIE8gUCBRIFIgUyBUIFUgViBXIFggWSBaIGEgYiBjIGQgZSBmIGcgaCBpIGogbiBvIHAgcSByIHMgdCB1IHYgdyB4IHkgeiBJIn0sQzp7IjEiOiIyIDMgNCA1IDYgNyA4IDkgQUIgQkIgQ0IgREIgRUIgRkIgR0IgSEIgSUIgSkIgS0IgTEIgTUIgTkIgT0IgUEIgUUIgUkIgU0IgVEIgVUIgVkIgV0IgWEIgWUIgWkIgYUIgYkIgY0IgMEIgZEIgMUIgZUIgZkIgZ0IgaEIgaUIgakIga0IgbEIgbUIgbkIgb0IgbSBwQiBxQiByQiBzQiB0QiBQIFEgUiAyQiBTIFQgVSBWIFcgWCBZIFogYSBiIGMgZCBlIGYgZyBoIGkgaiBuIG8gcCBxIHIgcyB0IHUgdiB3IHggeSB6IEkgdUIgM0IgNEIiLCIyIjoiMCAxIEtDIHpCIEogSyBFIEYgRyBBIEIgQyBMIE0gSCBOIEQgTyBrIGwgTEMgTUMifSxEOnsiMSI6IjggOSBBQiBCQiBDQiBEQiBFQiBGQiBHQiBIQiBJQiBKQiBLQiBMQiBNQiBOQiBPQiBQQiBRQiBSQiBTQiBUQiBVQiBWQiBXQiBYQiBZQiBaQiBhQiBiQiBjQiAwQiBkQiAxQiBlQiBmQiBnQiBoQiBpQiBqQiBrQiBsQiBtQiBuQiBvQiBtIHBCIHFCIHJCIHNCIHRCIFAgUSBSIFMgVCBVIFYgVyBYIFkgWiBhIGIgYyBkIGUgZiBnIGggaSBqIG4gbyBwIHEgciBzIHQgdSB2IHcgeCB5IHogSSB1QiAzQiA0QiIsIjIiOiIwIDEgMiAzIDQgNSA2IDcgSiBLIEUgRiBHIEEgQiBDIEwgTSBIIE4gRCBPIGsgbCJ9LEU6eyIxIjoiRyBBIEIgQyBMIE0gSCBEIFJDIDZCIHZCIHdCIDdCIFNDIFRDIDhCIDlCIHhCIEFDIHlCIEJDIENDIERDIEVDIEZDIEdDIFVDIiwiMiI6IjAgSiBLIEUgRiBOQyA1QiBPQyBQQyBRQyJ9LEY6eyIxIjoiMSAyIDMgNCA1IDYgNyA4IDkgSCBOIEQgTyBrIGwgQUIgQkIgQ0IgREIgRUIgRkIgR0IgSEIgSUIgSkIgS0IgTEIgTUIgTkIgT0IgUEIgUUIgUkIgU0IgVEIgVUIgVkIgV0IgWEIgWUIgWkIgYUIgYkIgY0IgZEIgZUIgZkIgZ0IgaEIgaUIgakIga0IgbEIgbUIgbkIgb0IgbSBwQiBxQiByQiBzQiB0QiBQIFEgUiAyQiBTIFQgVSBWIFcgWCBZIFogYSBiIGMgZCBlIGYgZyBoIGkgaiB3QiIsIjIiOiJHIEIgQyBWQyBXQyBYQyBZQyB2QiBIQyBaQyJ9LEc6eyIxIjoiRCBmQyBnQyBoQyBpQyBqQyBrQyBsQyBtQyBuQyBvQyBwQyBxQyByQyBzQyB0QyA4QiA5QiB4QiBBQyB5QiBCQyBDQyBEQyBFQyBGQyBHQyIsIjIiOiJGIDVCIGFDIElDIGJDIGNDIGRDIGVDIn0sSDp7IjEiOiJ1QyJ9LEk6eyIxIjoiSSB6QyAwQyIsIjIiOiJ6QiBKIHZDIHdDIHhDIHlDIElDIn0sSjp7IjIiOiJFIEEifSxLOnsiMSI6Im0iLCIyIjoiQSBCIEMgdkIgSEMgd0IifSxMOnsiMSI6IkkifSxNOnsiMSI6InVCIn0sTjp7IjIiOiJBIEIifSxPOnsiMSI6InhCIn0sUDp7IjEiOiJKIGsgbCAxQyAyQyAzQyA0QyA1QyA2QiA2QyA3QyA4QyA5QyBBRCB5QiBCRCBDRCBERCJ9LFE6eyIxIjoiN0IifSxSOnsiMSI6IkVEIn0sUzp7IjEiOiJGRCBHRCJ9fSxCOjQsQzoiQ1NTIEZlYXR1cmUgUXVlcmllcyJ9fSk7dmFyIHZiPXgoKG0kLHdiKT0+e3UoKTtmdW5jdGlvbiB5YihyKXtyZXR1cm4gcltyLmxlbmd0aC0xXX12YXIgYmI9e3BhcnNlKHIpe2xldCBlPVsiIl0sdD1bZV07Zm9yKGxldCBpIG9mIHIpe2lmKGk9PT0iKCIpe2U9WyIiXSx5Yih0KS5wdXNoKGUpLHQucHVzaChlKTtjb250aW51ZX1pZihpPT09IikiKXt0LnBvcCgpLGU9eWIodCksZS5wdXNoKCIiKTtjb250aW51ZX1lW2UubGVuZ3RoLTFdKz1pfXJldHVybiB0WzBdfSxzdHJpbmdpZnkocil7bGV0IGU9IiI7Zm9yKGxldCB0IG9mIHIpe2lmKHR5cGVvZiB0PT0ib2JqZWN0Iil7ZSs9YCgke2JiLnN0cmluZ2lmeSh0KX0pYDtjb250aW51ZX1lKz10fXJldHVybiBlfX07d2IuZXhwb3J0cz1iYn0pO3ZhciBDYj14KChnJCxBYik9Pnt1KCk7dmFyIEJPPWdiKCkse2ZlYXR1cmU6Rk99PShQcygpLFJzKSx7cGFyc2U6ak99PSRlKCksek89TXQoKSxsdT12YigpLFVPPUhlKCksVk89X2UoKSx4Yj1GTyhCTyksa2I9W107Zm9yKGxldCByIGluIHhiLnN0YXRzKXtsZXQgZT14Yi5zdGF0c1tyXTtmb3IobGV0IHQgaW4gZSl7bGV0IGk9ZVt0XTsveS8udGVzdChpKSYma2IucHVzaChyKyIgIit0KX19dmFyIFNiPWNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5QcmVmaXhlcz1lLHRoaXMuYWxsPXR9cHJlZml4ZXIoKXtpZih0aGlzLnByZWZpeGVyQ2FjaGUpcmV0dXJuIHRoaXMucHJlZml4ZXJDYWNoZTtsZXQgZT10aGlzLmFsbC5icm93c2Vycy5zZWxlY3RlZC5maWx0ZXIoaT0+a2IuaW5jbHVkZXMoaSkpLHQ9bmV3IHpPKHRoaXMuYWxsLmJyb3dzZXJzLmRhdGEsZSx0aGlzLmFsbC5vcHRpb25zKTtyZXR1cm4gdGhpcy5wcmVmaXhlckNhY2hlPW5ldyB0aGlzLlByZWZpeGVzKHRoaXMuYWxsLmRhdGEsdCx0aGlzLmFsbC5vcHRpb25zKSx0aGlzLnByZWZpeGVyQ2FjaGV9cGFyc2UoZSl7bGV0IHQ9ZS5zcGxpdCgiOiIpLGk9dFswXSxuPXRbMV07cmV0dXJuIG58fChuPSIiKSxbaS50cmltKCksbi50cmltKCldfXZpcnR1YWwoZSl7bGV0W3QsaV09dGhpcy5wYXJzZShlKSxuPWpPKCJhe30iKS5maXJzdDtyZXR1cm4gbi5hcHBlbmQoe3Byb3A6dCx2YWx1ZTppLHJhd3M6e2JlZm9yZToiIn19KSxufXByZWZpeGVkKGUpe2xldCB0PXRoaXMudmlydHVhbChlKTtpZih0aGlzLmRpc2FibGVkKHQuZmlyc3QpKXJldHVybiB0Lm5vZGVzO2xldCBpPXt3YXJuOigpPT5udWxsfSxuPXRoaXMucHJlZml4ZXIoKS5hZGRbdC5maXJzdC5wcm9wXTtuJiZuLnByb2Nlc3MmJm4ucHJvY2Vzcyh0LmZpcnN0LGkpO2ZvcihsZXQgcyBvZiB0Lm5vZGVzKXtmb3IobGV0IGEgb2YgdGhpcy5wcmVmaXhlcigpLnZhbHVlcygiYWRkIix0LmZpcnN0LnByb3ApKWEucHJvY2VzcyhzKTtVTy5zYXZlKHRoaXMuYWxsLHMpfXJldHVybiB0Lm5vZGVzfWlzTm90KGUpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyImJi9ub3RccyovaS50ZXN0KGUpfWlzT3IoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIiYmL1xzKm9yXHMqL2kudGVzdChlKX1pc1Byb3AoZSl7cmV0dXJuIHR5cGVvZiBlPT0ib2JqZWN0IiYmZS5sZW5ndGg9PT0xJiZ0eXBlb2YgZVswXT09InN0cmluZyJ9aXNIYWNrKGUsdCl7cmV0dXJuIW5ldyBSZWdFeHAoYChcXCh8XFxzKSR7Vk8uZXNjYXBlUmVnZXhwKHQpfTpgKS50ZXN0KGUpfXRvUmVtb3ZlKGUsdCl7bGV0W2ksbl09dGhpcy5wYXJzZShlKSxzPXRoaXMuYWxsLnVucHJlZml4ZWQoaSksYT10aGlzLmFsbC5jbGVhbmVyKCk7aWYoYS5yZW1vdmVbaV0mJmEucmVtb3ZlW2ldLnJlbW92ZSYmIXRoaXMuaXNIYWNrKHQscykpcmV0dXJuITA7Zm9yKGxldCBvIG9mIGEudmFsdWVzKCJyZW1vdmUiLHMpKWlmKG8uY2hlY2sobikpcmV0dXJuITA7cmV0dXJuITF9cmVtb3ZlKGUsdCl7bGV0IGk9MDtmb3IoO2k8ZS5sZW5ndGg7KXtpZighdGhpcy5pc05vdChlW2ktMV0pJiZ0aGlzLmlzUHJvcChlW2ldKSYmdGhpcy5pc09yKGVbaSsxXSkpe2lmKHRoaXMudG9SZW1vdmUoZVtpXVswXSx0KSl7ZS5zcGxpY2UoaSwyKTtjb250aW51ZX1pKz0yO2NvbnRpbnVlfXR5cGVvZiBlW2ldPT0ib2JqZWN0IiYmKGVbaV09dGhpcy5yZW1vdmUoZVtpXSx0KSksaSs9MX1yZXR1cm4gZX1jbGVhbkJyYWNrZXRzKGUpe3JldHVybiBlLm1hcCh0PT50eXBlb2YgdCE9Im9iamVjdCI/dDp0Lmxlbmd0aD09PTEmJnR5cGVvZiB0WzBdPT0ib2JqZWN0Ij90aGlzLmNsZWFuQnJhY2tldHModFswXSk6dGhpcy5jbGVhbkJyYWNrZXRzKHQpKX1jb252ZXJ0KGUpe2xldCB0PVsiIl07Zm9yKGxldCBpIG9mIGUpdC5wdXNoKFtgJHtpLnByb3B9OiAke2kudmFsdWV9YF0pLHQucHVzaCgiIG9yICIpO3JldHVybiB0W3QubGVuZ3RoLTFdPSIiLHR9bm9ybWFsaXplKGUpe2lmKHR5cGVvZiBlIT0ib2JqZWN0IilyZXR1cm4gZTtpZihlPWUuZmlsdGVyKHQ9PnQhPT0iIiksdHlwZW9mIGVbMF09PSJzdHJpbmciKXtsZXQgdD1lWzBdLnRyaW0oKTtpZih0LmluY2x1ZGVzKCI6Iil8fHQ9PT0ic2VsZWN0b3IifHx0PT09Im5vdCBzZWxlY3RvciIpcmV0dXJuW2x1LnN0cmluZ2lmeShlKV19cmV0dXJuIGUubWFwKHQ9PnRoaXMubm9ybWFsaXplKHQpKX1hZGQoZSx0KXtyZXR1cm4gZS5tYXAoaT0+e2lmKHRoaXMuaXNQcm9wKGkpKXtsZXQgbj10aGlzLnByZWZpeGVkKGlbMF0pO3JldHVybiBuLmxlbmd0aD4xP3RoaXMuY29udmVydChuKTppfXJldHVybiB0eXBlb2YgaT09Im9iamVjdCI/dGhpcy5hZGQoaSx0KTppfSl9cHJvY2VzcyhlKXtsZXQgdD1sdS5wYXJzZShlLnBhcmFtcyk7dD10aGlzLm5vcm1hbGl6ZSh0KSx0PXRoaXMucmVtb3ZlKHQsZS5wYXJhbXMpLHQ9dGhpcy5hZGQodCxlLnBhcmFtcyksdD10aGlzLmNsZWFuQnJhY2tldHModCksZS5wYXJhbXM9bHUuc3RyaW5naWZ5KHQpfWRpc2FibGVkKGUpe2lmKCF0aGlzLmFsbC5vcHRpb25zLmdyaWQmJihlLnByb3A9PT0iZGlzcGxheSImJmUudmFsdWUuaW5jbHVkZXMoImdyaWQiKXx8ZS5wcm9wLmluY2x1ZGVzKCJncmlkIil8fGUucHJvcD09PSJqdXN0aWZ5LWl0ZW1zIikpcmV0dXJuITA7aWYodGhpcy5hbGwub3B0aW9ucy5mbGV4Ym94PT09ITEpe2lmKGUucHJvcD09PSJkaXNwbGF5IiYmZS52YWx1ZS5pbmNsdWRlcygiZmxleCIpKXJldHVybiEwO2xldCB0PVsib3JkZXIiLCJqdXN0aWZ5LWNvbnRlbnQiLCJhbGlnbi1pdGVtcyIsImFsaWduLWNvbnRlbnQiXTtpZihlLnByb3AuaW5jbHVkZXMoImZsZXgiKXx8dC5pbmNsdWRlcyhlLnByb3ApKXJldHVybiEwfXJldHVybiExfX07QWIuZXhwb3J0cz1TYn0pO3ZhciBPYj14KCh5JCxFYik9Pnt1KCk7dmFyIF9iPWNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5wcmVmaXg9dCx0aGlzLnByZWZpeGVkPWUucHJlZml4ZWQodGhpcy5wcmVmaXgpLHRoaXMucmVnZXhwPWUucmVnZXhwKHRoaXMucHJlZml4KSx0aGlzLnByZWZpeGVkcz1lLnBvc3NpYmxlKCkubWFwKGk9PltlLnByZWZpeGVkKGkpLGUucmVnZXhwKGkpXSksdGhpcy51bnByZWZpeGVkPWUubmFtZSx0aGlzLm5hbWVSZWdleHA9ZS5yZWdleHAoKX1pc0hhY2soZSl7bGV0IHQ9ZS5wYXJlbnQuaW5kZXgoZSkrMSxpPWUucGFyZW50Lm5vZGVzO2Zvcig7dDxpLmxlbmd0aDspe2xldCBuPWlbdF0uc2VsZWN0b3I7aWYoIW4pcmV0dXJuITA7aWYobi5pbmNsdWRlcyh0aGlzLnVucHJlZml4ZWQpJiZuLm1hdGNoKHRoaXMubmFtZVJlZ2V4cCkpcmV0dXJuITE7bGV0IHM9ITE7Zm9yKGxldFthLG9db2YgdGhpcy5wcmVmaXhlZHMpaWYobi5pbmNsdWRlcyhhKSYmbi5tYXRjaChvKSl7cz0hMDticmVha31pZighcylyZXR1cm4hMDt0Kz0xfXJldHVybiEwfWNoZWNrKGUpe3JldHVybiEoIWUuc2VsZWN0b3IuaW5jbHVkZXModGhpcy5wcmVmaXhlZCl8fCFlLnNlbGVjdG9yLm1hdGNoKHRoaXMucmVnZXhwKXx8dGhpcy5pc0hhY2soZSkpfX07RWIuZXhwb3J0cz1fYn0pO3ZhciBrcj14KChiJCxSYik9Pnt1KCk7dmFye2xpc3Q6SE99PSRlKCksV089T2IoKSxHTz13cigpLFFPPU10KCksWU89X2UoKSxUYj1jbGFzcyBleHRlbmRzIEdPe2NvbnN0cnVjdG9yKGUsdCxpKXtzdXBlcihlLHQsaSk7dGhpcy5yZWdleHBDYWNoZT1uZXcgTWFwfWNoZWNrKGUpe3JldHVybiBlLnNlbGVjdG9yLmluY2x1ZGVzKHRoaXMubmFtZSk/ISFlLnNlbGVjdG9yLm1hdGNoKHRoaXMucmVnZXhwKCkpOiExfXByZWZpeGVkKGUpe3JldHVybiB0aGlzLm5hbWUucmVwbGFjZSgvXihcVyopLyxgJDEke2V9YCl9cmVnZXhwKGUpe2lmKCF0aGlzLnJlZ2V4cENhY2hlLmhhcyhlKSl7bGV0IHQ9ZT90aGlzLnByZWZpeGVkKGUpOnRoaXMubmFtZTt0aGlzLnJlZ2V4cENhY2hlLnNldChlLG5ldyBSZWdFeHAoYChefFteOiInPV0pJHtZTy5lc2NhcGVSZWdleHAodCl9YCwiZ2kiKSl9cmV0dXJuIHRoaXMucmVnZXhwQ2FjaGUuZ2V0KGUpfXBvc3NpYmxlKCl7cmV0dXJuIFFPLnByZWZpeGVzKCl9cHJlZml4ZWRzKGUpe2lmKGUuX2F1dG9wcmVmaXhlclByZWZpeGVkcyl7aWYoZS5fYXV0b3ByZWZpeGVyUHJlZml4ZWRzW3RoaXMubmFtZV0pcmV0dXJuIGUuX2F1dG9wcmVmaXhlclByZWZpeGVkc31lbHNlIGUuX2F1dG9wcmVmaXhlclByZWZpeGVkcz17fTtsZXQgdD17fTtpZihlLnNlbGVjdG9yLmluY2x1ZGVzKCIsIikpe2xldCBuPUhPLmNvbW1hKGUuc2VsZWN0b3IpLmZpbHRlcihzPT5zLmluY2x1ZGVzKHRoaXMubmFtZSkpO2ZvcihsZXQgcyBvZiB0aGlzLnBvc3NpYmxlKCkpdFtzXT1uLm1hcChhPT50aGlzLnJlcGxhY2UoYSxzKSkuam9pbigiLCAiKX1lbHNlIGZvcihsZXQgaSBvZiB0aGlzLnBvc3NpYmxlKCkpdFtpXT10aGlzLnJlcGxhY2UoZS5zZWxlY3RvcixpKTtyZXR1cm4gZS5fYXV0b3ByZWZpeGVyUHJlZml4ZWRzW3RoaXMubmFtZV09dCxlLl9hdXRvcHJlZml4ZXJQcmVmaXhlZHN9YWxyZWFkeShlLHQsaSl7bGV0IG49ZS5wYXJlbnQuaW5kZXgoZSktMTtmb3IoO24+PTA7KXtsZXQgcz1lLnBhcmVudC5ub2Rlc1tuXTtpZihzLnR5cGUhPT0icnVsZSIpcmV0dXJuITE7bGV0IGE9ITE7Zm9yKGxldCBvIGluIHRbdGhpcy5uYW1lXSl7bGV0IGw9dFt0aGlzLm5hbWVdW29dO2lmKHMuc2VsZWN0b3I9PT1sKXtpZihpPT09bylyZXR1cm4hMDthPSEwO2JyZWFrfX1pZighYSlyZXR1cm4hMTtuLT0xfXJldHVybiExfXJlcGxhY2UoZSx0KXtyZXR1cm4gZS5yZXBsYWNlKHRoaXMucmVnZXhwKCksYCQxJHt0aGlzLnByZWZpeGVkKHQpfWApfWFkZChlLHQpe2xldCBpPXRoaXMucHJlZml4ZWRzKGUpO2lmKHRoaXMuYWxyZWFkeShlLGksdCkpcmV0dXJuO2xldCBuPXRoaXMuY2xvbmUoZSx7c2VsZWN0b3I6aVt0aGlzLm5hbWVdW3RdfSk7ZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUsbil9b2xkKGUpe3JldHVybiBuZXcgV08odGhpcyxlKX19O1JiLmV4cG9ydHM9VGJ9KTt2YXIgRGI9eCgodyQsSWIpPT57dSgpO3ZhciBLTz13cigpLFBiPWNsYXNzIGV4dGVuZHMgS097YWRkKGUsdCl7bGV0IGk9dCtlLm5hbWU7aWYoZS5wYXJlbnQuc29tZShhPT5hLm5hbWU9PT1pJiZhLnBhcmFtcz09PWUucGFyYW1zKSlyZXR1cm47bGV0IHM9dGhpcy5jbG9uZShlLHtuYW1lOml9KTtyZXR1cm4gZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUscyl9cHJvY2VzcyhlKXtsZXQgdD10aGlzLnBhcmVudFByZWZpeChlKTtmb3IobGV0IGkgb2YgdGhpcy5wcmVmaXhlcykoIXR8fHQ9PT1pKSYmdGhpcy5hZGQoZSxpKX19O0liLmV4cG9ydHM9UGJ9KTt2YXIgJGI9eCgodiQscWIpPT57dSgpO3ZhciBYTz1rcigpLHV1PWNsYXNzIGV4dGVuZHMgWE97cHJlZml4ZWQoZSl7cmV0dXJuIGU9PT0iLXdlYmtpdC0iPyI6LXdlYmtpdC1mdWxsLXNjcmVlbiI6ZT09PSItbW96LSI/IjotbW96LWZ1bGwtc2NyZWVuIjpgOiR7ZX1mdWxsc2NyZWVuYH19O3V1Lm5hbWVzPVsiOmZ1bGxzY3JlZW4iXTtxYi5leHBvcnRzPXV1fSk7dmFyIE1iPXgoKHgkLExiKT0+e3UoKTt2YXIgWk89a3IoKSxmdT1jbGFzcyBleHRlbmRzIFpPe3Bvc3NpYmxlKCl7cmV0dXJuIHN1cGVyLnBvc3NpYmxlKCkuY29uY2F0KFsiLW1vei0gb2xkIiwiLW1zLSBvbGQiXSl9cHJlZml4ZWQoZSl7cmV0dXJuIGU9PT0iLXdlYmtpdC0iPyI6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIiOmU9PT0iLW1zLSI/Ijo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIjplPT09Ii1tcy0gb2xkIj8iOi1tcy1pbnB1dC1wbGFjZWhvbGRlciI6ZT09PSItbW96LSBvbGQiPyI6LW1vei1wbGFjZWhvbGRlciI6YDo6JHtlfXBsYWNlaG9sZGVyYH19O2Z1Lm5hbWVzPVsiOjpwbGFjZWhvbGRlciJdO0xiLmV4cG9ydHM9ZnV9KTt2YXIgQmI9eCgoayQsTmIpPT57dSgpO3ZhciBKTz1rcigpLGN1PWNsYXNzIGV4dGVuZHMgSk97cHJlZml4ZWQoZSl7cmV0dXJuIGU9PT0iLW1zLSI/IjotbXMtaW5wdXQtcGxhY2Vob2xkZXIiOmA6JHtlfXBsYWNlaG9sZGVyLXNob3duYH19O2N1Lm5hbWVzPVsiOnBsYWNlaG9sZGVyLXNob3duIl07TmIuZXhwb3J0cz1jdX0pO3ZhciBqYj14KChTJCxGYik9Pnt1KCk7dmFyIGVUPWtyKCksdFQ9X2UoKSxwdT1jbGFzcyBleHRlbmRzIGVUe2NvbnN0cnVjdG9yKGUsdCxpKXtzdXBlcihlLHQsaSk7dGhpcy5wcmVmaXhlcyYmKHRoaXMucHJlZml4ZXM9dFQudW5pcSh0aGlzLnByZWZpeGVzLm1hcChuPT4iLXdlYmtpdC0iKSkpfXByZWZpeGVkKGUpe3JldHVybiBlPT09Ii13ZWJraXQtIj8iOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiI6YDo6JHtlfWZpbGUtc2VsZWN0b3ItYnV0dG9uYH19O3B1Lm5hbWVzPVsiOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiJdO0ZiLmV4cG9ydHM9cHV9KTt2YXIgUGU9eCgoQSQsemIpPT57dSgpO3piLmV4cG9ydHM9ZnVuY3Rpb24ocil7bGV0IGU7cmV0dXJuIHI9PT0iLXdlYmtpdC0gMjAwOSJ8fHI9PT0iLW1vei0iP2U9MjAwOTpyPT09Ii1tcy0iP2U9MjAxMjpyPT09Ii13ZWJraXQtIiYmKGU9ImZpbmFsIikscj09PSItd2Via2l0LSAyMDA5IiYmKHI9Ii13ZWJraXQtIiksW2Uscl19fSk7dmFyIFdiPXgoKEMkLEhiKT0+e3UoKTt2YXIgVWI9JGUoKS5saXN0LFZiPVBlKCksclQ9aigpLFNyPWNsYXNzIGV4dGVuZHMgclR7cHJlZml4ZWQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT1WYih0KSxpPT09MjAwOT90KyJib3gtZmxleCI6c3VwZXIucHJlZml4ZWQoZSx0KX1ub3JtYWxpemUoKXtyZXR1cm4iZmxleCJ9c2V0KGUsdCl7bGV0IGk9VmIodClbMF07aWYoaT09PTIwMDkpcmV0dXJuIGUudmFsdWU9VWIuc3BhY2UoZS52YWx1ZSlbMF0sZS52YWx1ZT1Tci5vbGRWYWx1ZXNbZS52YWx1ZV18fGUudmFsdWUsc3VwZXIuc2V0KGUsdCk7aWYoaT09PTIwMTIpe2xldCBuPVViLnNwYWNlKGUudmFsdWUpO24ubGVuZ3RoPT09MyYmblsyXT09PSIwIiYmKGUudmFsdWU9bi5zbGljZSgwLDIpLmNvbmNhdCgiMHB4Iikuam9pbigiICIpKX1yZXR1cm4gc3VwZXIuc2V0KGUsdCl9fTtTci5uYW1lcz1bImZsZXgiLCJib3gtZmxleCJdO1NyLm9sZFZhbHVlcz17YXV0bzoiMSIsbm9uZToiMCJ9O0hiLmV4cG9ydHM9U3J9KTt2YXIgWWI9eCgoXyQsUWIpPT57dSgpO3ZhciBHYj1QZSgpLGlUPWooKSxkdT1jbGFzcyBleHRlbmRzIGlUe3ByZWZpeGVkKGUsdCl7bGV0IGk7cmV0dXJuW2ksdF09R2IodCksaT09PTIwMDk/dCsiYm94LW9yZGluYWwtZ3JvdXAiOmk9PT0yMDEyP3QrImZsZXgtb3JkZXIiOnN1cGVyLnByZWZpeGVkKGUsdCl9bm9ybWFsaXplKCl7cmV0dXJuIm9yZGVyIn1zZXQoZSx0KXtyZXR1cm4gR2IodClbMF09PT0yMDA5JiYvXGQvLnRlc3QoZS52YWx1ZSk/KGUudmFsdWU9KHBhcnNlSW50KGUudmFsdWUpKzEpLnRvU3RyaW5nKCksc3VwZXIuc2V0KGUsdCkpOnN1cGVyLnNldChlLHQpfX07ZHUubmFtZXM9WyJvcmRlciIsImZsZXgtb3JkZXIiLCJib3gtb3JkaW5hbC1ncm91cCJdO1FiLmV4cG9ydHM9ZHV9KTt2YXIgWGI9eCgoRSQsS2IpPT57dSgpO3ZhciBuVD1qKCksaHU9Y2xhc3MgZXh0ZW5kcyBuVHtjaGVjayhlKXtsZXQgdD1lLnZhbHVlO3JldHVybiF0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoImFscGhhKCIpJiYhdC5pbmNsdWRlcygiRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQiKSYmIXQuaW5jbHVkZXMoImRhdGE6aW1hZ2Uvc3ZnK3htbCIpfX07aHUubmFtZXM9WyJmaWx0ZXIiXTtLYi5leHBvcnRzPWh1fSk7dmFyIEpiPXgoKE8kLFpiKT0+e3UoKTt2YXIgc1Q9aigpLG11PWNsYXNzIGV4dGVuZHMgc1R7aW5zZXJ0KGUsdCxpLG4pe2lmKHQhPT0iLW1zLSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7bGV0IHM9dGhpcy5jbG9uZShlKSxhPWUucHJvcC5yZXBsYWNlKC9lbmQkLywic3RhcnQiKSxvPXQrZS5wcm9wLnJlcGxhY2UoL2VuZCQvLCJzcGFuIik7aWYoIWUucGFyZW50LnNvbWUobD0+bC5wcm9wPT09bykpe2lmKHMucHJvcD1vLGUudmFsdWUuaW5jbHVkZXMoInNwYW4iKSlzLnZhbHVlPWUudmFsdWUucmVwbGFjZSgvc3BhblxzL2ksIiIpO2Vsc2V7bGV0IGw7aWYoZS5wYXJlbnQud2Fsa0RlY2xzKGEsYz0+e2w9Y30pLGwpe2xldCBjPU51bWJlcihlLnZhbHVlKS1OdW1iZXIobC52YWx1ZSkrIiI7cy52YWx1ZT1jfWVsc2UgZS53YXJuKG4sYENhbiBub3QgcHJlZml4ICR7ZS5wcm9wfSAoJHthfSBpcyBub3QgZm91bmQpYCl9ZS5jbG9uZUJlZm9yZShzKX19fTttdS5uYW1lcz1bImdyaWQtcm93LWVuZCIsImdyaWQtY29sdW1uLWVuZCJdO1piLmV4cG9ydHM9bXV9KTt2YXIgdHc9eCgoVCQsZXcpPT57dSgpO3ZhciBhVD1qKCksZ3U9Y2xhc3MgZXh0ZW5kcyBhVHtjaGVjayhlKXtyZXR1cm4hZS52YWx1ZS5zcGxpdCgvXHMrLykuc29tZSh0PT57bGV0IGk9dC50b0xvd2VyQ2FzZSgpO3JldHVybiBpPT09InJldmVyc2UifHxpPT09ImFsdGVybmF0ZS1yZXZlcnNlIn0pfX07Z3UubmFtZXM9WyJhbmltYXRpb24iLCJhbmltYXRpb24tZGlyZWN0aW9uIl07ZXcuZXhwb3J0cz1ndX0pO3ZhciBpdz14KChSJCxydyk9Pnt1KCk7dmFyIG9UPVBlKCksbFQ9aigpLHl1PWNsYXNzIGV4dGVuZHMgbFR7aW5zZXJ0KGUsdCxpKXtsZXQgbjtpZihbbix0XT1vVCh0KSxuIT09MjAwOSlyZXR1cm4gc3VwZXIuaW5zZXJ0KGUsdCxpKTtsZXQgcz1lLnZhbHVlLnNwbGl0KC9ccysvKS5maWx0ZXIoZD0+ZCE9PSJ3cmFwIiYmZCE9PSJub3dyYXAiJiYid3JhcC1yZXZlcnNlIik7aWYocy5sZW5ndGg9PT0wfHxlLnBhcmVudC5zb21lKGQ9PmQucHJvcD09PXQrImJveC1vcmllbnQifHxkLnByb3A9PT10KyJib3gtZGlyZWN0aW9uIikpcmV0dXJuO2xldCBvPXNbMF0sbD1vLmluY2x1ZGVzKCJyb3ciKT8iaG9yaXpvbnRhbCI6InZlcnRpY2FsIixjPW8uaW5jbHVkZXMoInJldmVyc2UiKT8icmV2ZXJzZSI6Im5vcm1hbCIsZj10aGlzLmNsb25lKGUpO3JldHVybiBmLnByb3A9dCsiYm94LW9yaWVudCIsZi52YWx1ZT1sLHRoaXMubmVlZENhc2NhZGUoZSkmJihmLnJhd3MuYmVmb3JlPXRoaXMuY2FsY0JlZm9yZShpLGUsdCkpLGUucGFyZW50Lmluc2VydEJlZm9yZShlLGYpLGY9dGhpcy5jbG9uZShlKSxmLnByb3A9dCsiYm94LWRpcmVjdGlvbiIsZi52YWx1ZT1jLHRoaXMubmVlZENhc2NhZGUoZSkmJihmLnJhd3MuYmVmb3JlPXRoaXMuY2FsY0JlZm9yZShpLGUsdCkpLGUucGFyZW50Lmluc2VydEJlZm9yZShlLGYpfX07eXUubmFtZXM9WyJmbGV4LWZsb3ciLCJib3gtZGlyZWN0aW9uIiwiYm94LW9yaWVudCJdO3J3LmV4cG9ydHM9eXV9KTt2YXIgc3c9eCgoUCQsbncpPT57dSgpO3ZhciB1VD1QZSgpLGZUPWooKSxidT1jbGFzcyBleHRlbmRzIGZUe25vcm1hbGl6ZSgpe3JldHVybiJmbGV4In1wcmVmaXhlZChlLHQpe2xldCBpO3JldHVybltpLHRdPXVUKHQpLGk9PT0yMDA5P3QrImJveC1mbGV4IjppPT09MjAxMj90KyJmbGV4LXBvc2l0aXZlIjpzdXBlci5wcmVmaXhlZChlLHQpfX07YnUubmFtZXM9WyJmbGV4LWdyb3ciLCJmbGV4LXBvc2l0aXZlIl07bncuZXhwb3J0cz1idX0pO3ZhciBvdz14KChJJCxhdyk9Pnt1KCk7dmFyIGNUPVBlKCkscFQ9aigpLHd1PWNsYXNzIGV4dGVuZHMgcFR7c2V0KGUsdCl7aWYoY1QodClbMF0hPT0yMDA5KXJldHVybiBzdXBlci5zZXQoZSx0KX19O3d1Lm5hbWVzPVsiZmxleC13cmFwIl07YXcuZXhwb3J0cz13dX0pO3ZhciB1dz14KChEJCxsdyk9Pnt1KCk7dmFyIGRUPWooKSxBcj1CdCgpLHZ1PWNsYXNzIGV4dGVuZHMgZFR7aW5zZXJ0KGUsdCxpLG4pe2lmKHQhPT0iLW1zLSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7bGV0IHM9QXIucGFyc2UoZSksW2Esb109QXIudHJhbnNsYXRlKHMsMCwyKSxbbCxjXT1Bci50cmFuc2xhdGUocywxLDMpO1tbImdyaWQtcm93IixhXSxbImdyaWQtcm93LXNwYW4iLG9dLFsiZ3JpZC1jb2x1bW4iLGxdLFsiZ3JpZC1jb2x1bW4tc3BhbiIsY11dLmZvckVhY2goKFtmLGRdKT0+e0FyLmluc2VydERlY2woZSxmLGQpfSksQXIud2FyblRlbXBsYXRlU2VsZWN0b3JOb3RGb3VuZChlLG4pLEFyLndhcm5JZkdyaWRSb3dDb2x1bW5FeGlzdHMoZSxuKX19O3Z1Lm5hbWVzPVsiZ3JpZC1hcmVhIl07bHcuZXhwb3J0cz12dX0pO3ZhciBjdz14KChxJCxmdyk9Pnt1KCk7dmFyIGhUPWooKSxCaT1CdCgpLHh1PWNsYXNzIGV4dGVuZHMgaFR7aW5zZXJ0KGUsdCxpKXtpZih0IT09Ii1tcy0iKXJldHVybiBzdXBlci5pbnNlcnQoZSx0LGkpO2lmKGUucGFyZW50LnNvbWUoYT0+YS5wcm9wPT09Ii1tcy1ncmlkLXJvdy1hbGlnbiIpKXJldHVybjtsZXRbW24sc11dPUJpLnBhcnNlKGUpO3M/KEJpLmluc2VydERlY2woZSwiZ3JpZC1yb3ctYWxpZ24iLG4pLEJpLmluc2VydERlY2woZSwiZ3JpZC1jb2x1bW4tYWxpZ24iLHMpKTooQmkuaW5zZXJ0RGVjbChlLCJncmlkLXJvdy1hbGlnbiIsbiksQmkuaW5zZXJ0RGVjbChlLCJncmlkLWNvbHVtbi1hbGlnbiIsbikpfX07eHUubmFtZXM9WyJwbGFjZS1zZWxmIl07ZncuZXhwb3J0cz14dX0pO3ZhciBkdz14KCgkJCxwdyk9Pnt1KCk7dmFyIG1UPWooKSxrdT1jbGFzcyBleHRlbmRzIG1Ue2NoZWNrKGUpe2xldCB0PWUudmFsdWU7cmV0dXJuIXQuaW5jbHVkZXMoIi8iKXx8dC5pbmNsdWRlcygic3BhbiIpfW5vcm1hbGl6ZShlKXtyZXR1cm4gZS5yZXBsYWNlKCItc3RhcnQiLCIiKX1wcmVmaXhlZChlLHQpe2xldCBpPXN1cGVyLnByZWZpeGVkKGUsdCk7cmV0dXJuIHQ9PT0iLW1zLSImJihpPWkucmVwbGFjZSgiLXN0YXJ0IiwiIikpLGl9fTtrdS5uYW1lcz1bImdyaWQtcm93LXN0YXJ0IiwiZ3JpZC1jb2x1bW4tc3RhcnQiXTtwdy5leHBvcnRzPWt1fSk7dmFyIGd3PXgoKEwkLG13KT0+e3UoKTt2YXIgaHc9UGUoKSxnVD1qKCksQ3I9Y2xhc3MgZXh0ZW5kcyBnVHtjaGVjayhlKXtyZXR1cm4gZS5wYXJlbnQmJiFlLnBhcmVudC5zb21lKHQ9PnQucHJvcCYmdC5wcm9wLnN0YXJ0c1dpdGgoImdyaWQtIikpfXByZWZpeGVkKGUsdCl7bGV0IGk7cmV0dXJuW2ksdF09aHcodCksaT09PTIwMTI/dCsiZmxleC1pdGVtLWFsaWduIjpzdXBlci5wcmVmaXhlZChlLHQpfW5vcm1hbGl6ZSgpe3JldHVybiJhbGlnbi1zZWxmIn1zZXQoZSx0KXtsZXQgaT1odyh0KVswXTtpZihpPT09MjAxMilyZXR1cm4gZS52YWx1ZT1Dci5vbGRWYWx1ZXNbZS52YWx1ZV18fGUudmFsdWUsc3VwZXIuc2V0KGUsdCk7aWYoaT09PSJmaW5hbCIpcmV0dXJuIHN1cGVyLnNldChlLHQpfX07Q3IubmFtZXM9WyJhbGlnbi1zZWxmIiwiZmxleC1pdGVtLWFsaWduIl07Q3Iub2xkVmFsdWVzPXsiZmxleC1lbmQiOiJlbmQiLCJmbGV4LXN0YXJ0Ijoic3RhcnQifTttdy5leHBvcnRzPUNyfSk7dmFyIGJ3PXgoKE0kLHl3KT0+e3UoKTt2YXIgeVQ9aigpLGJUPV9lKCksU3U9Y2xhc3MgZXh0ZW5kcyB5VHtjb25zdHJ1Y3RvcihlLHQsaSl7c3VwZXIoZSx0LGkpO3RoaXMucHJlZml4ZXMmJih0aGlzLnByZWZpeGVzPWJULnVuaXEodGhpcy5wcmVmaXhlcy5tYXAobj0+bj09PSItbXMtIj8iLXdlYmtpdC0iOm4pKSl9fTtTdS5uYW1lcz1bImFwcGVhcmFuY2UiXTt5dy5leHBvcnRzPVN1fSk7dmFyIHh3PXgoKE4kLHZ3KT0+e3UoKTt2YXIgd3c9UGUoKSx3VD1qKCksQXU9Y2xhc3MgZXh0ZW5kcyB3VHtub3JtYWxpemUoKXtyZXR1cm4iZmxleC1iYXNpcyJ9cHJlZml4ZWQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT13dyh0KSxpPT09MjAxMj90KyJmbGV4LXByZWZlcnJlZC1zaXplIjpzdXBlci5wcmVmaXhlZChlLHQpfXNldChlLHQpe2xldCBpO2lmKFtpLHRdPXd3KHQpLGk9PT0yMDEyfHxpPT09ImZpbmFsIilyZXR1cm4gc3VwZXIuc2V0KGUsdCl9fTtBdS5uYW1lcz1bImZsZXgtYmFzaXMiLCJmbGV4LXByZWZlcnJlZC1zaXplIl07dncuZXhwb3J0cz1BdX0pO3ZhciBTdz14KChCJCxrdyk9Pnt1KCk7dmFyIHZUPWooKSxDdT1jbGFzcyBleHRlbmRzIHZUe25vcm1hbGl6ZSgpe3JldHVybiB0aGlzLm5hbWUucmVwbGFjZSgiYm94LWltYWdlIiwiYm9yZGVyIil9cHJlZml4ZWQoZSx0KXtsZXQgaT1zdXBlci5wcmVmaXhlZChlLHQpO3JldHVybiB0PT09Ii13ZWJraXQtIiYmKGk9aS5yZXBsYWNlKCJib3JkZXIiLCJib3gtaW1hZ2UiKSksaX19O0N1Lm5hbWVzPVsibWFzay1ib3JkZXIiLCJtYXNrLWJvcmRlci1zb3VyY2UiLCJtYXNrLWJvcmRlci1zbGljZSIsIm1hc2stYm9yZGVyLXdpZHRoIiwibWFzay1ib3JkZXItb3V0c2V0IiwibWFzay1ib3JkZXItcmVwZWF0IiwibWFzay1ib3gtaW1hZ2UiLCJtYXNrLWJveC1pbWFnZS1zb3VyY2UiLCJtYXNrLWJveC1pbWFnZS1zbGljZSIsIm1hc2stYm94LWltYWdlLXdpZHRoIiwibWFzay1ib3gtaW1hZ2Utb3V0c2V0IiwibWFzay1ib3gtaW1hZ2UtcmVwZWF0Il07a3cuZXhwb3J0cz1DdX0pO3ZhciBDdz14KChGJCxBdyk9Pnt1KCk7dmFyIHhUPWooKSxsdD1jbGFzcyBleHRlbmRzIHhUe2luc2VydChlLHQsaSl7bGV0IG49ZS5wcm9wPT09Im1hc2stY29tcG9zaXRlIixzO24/cz1lLnZhbHVlLnNwbGl0KCIsIik6cz1lLnZhbHVlLm1hdGNoKGx0LnJlZ2V4cCl8fFtdLHM9cy5tYXAoYz0+Yy50cmltKCkpLmZpbHRlcihjPT5jKTtsZXQgYT1zLmxlbmd0aCxvO2lmKGEmJihvPXRoaXMuY2xvbmUoZSksby52YWx1ZT1zLm1hcChjPT5sdC5vbGRWYWx1ZXNbY118fGMpLmpvaW4oIiwgIikscy5pbmNsdWRlcygiaW50ZXJzZWN0IikmJihvLnZhbHVlKz0iLCB4b3IiKSxvLnByb3A9dCsibWFzay1jb21wb3NpdGUiKSxuKXJldHVybiBhPyh0aGlzLm5lZWRDYXNjYWRlKGUpJiYoby5yYXdzLmJlZm9yZT10aGlzLmNhbGNCZWZvcmUoaSxlLHQpKSxlLnBhcmVudC5pbnNlcnRCZWZvcmUoZSxvKSk6dm9pZCAwO2xldCBsPXRoaXMuY2xvbmUoZSk7cmV0dXJuIGwucHJvcD10K2wucHJvcCxhJiYobC52YWx1ZT1sLnZhbHVlLnJlcGxhY2UobHQucmVnZXhwLCIiKSksdGhpcy5uZWVkQ2FzY2FkZShlKSYmKGwucmF3cy5iZWZvcmU9dGhpcy5jYWxjQmVmb3JlKGksZSx0KSksZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUsbCksYT8odGhpcy5uZWVkQ2FzY2FkZShlKSYmKG8ucmF3cy5iZWZvcmU9dGhpcy5jYWxjQmVmb3JlKGksZSx0KSksZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUsbykpOmV9fTtsdC5uYW1lcz1bIm1hc2siLCJtYXNrLWNvbXBvc2l0ZSJdO2x0Lm9sZFZhbHVlcz17YWRkOiJzb3VyY2Utb3ZlciIsc3VidHJhY3Q6InNvdXJjZS1vdXQiLGludGVyc2VjdDoic291cmNlLWluIixleGNsdWRlOiJ4b3IifTtsdC5yZWdleHA9bmV3IFJlZ0V4cChgXFxzKygke09iamVjdC5rZXlzKGx0Lm9sZFZhbHVlcykuam9pbigifCIpfSlcXGIoPyFcXCkpXFxzKig/PVssXSlgLCJpZyIpO0F3LmV4cG9ydHM9bHR9KTt2YXIgT3c9eCgoaiQsRXcpPT57dSgpO3ZhciBfdz1QZSgpLGtUPWooKSxfcj1jbGFzcyBleHRlbmRzIGtUe3ByZWZpeGVkKGUsdCl7bGV0IGk7cmV0dXJuW2ksdF09X3codCksaT09PTIwMDk/dCsiYm94LWFsaWduIjppPT09MjAxMj90KyJmbGV4LWFsaWduIjpzdXBlci5wcmVmaXhlZChlLHQpfW5vcm1hbGl6ZSgpe3JldHVybiJhbGlnbi1pdGVtcyJ9c2V0KGUsdCl7bGV0IGk9X3codClbMF07cmV0dXJuKGk9PT0yMDA5fHxpPT09MjAxMikmJihlLnZhbHVlPV9yLm9sZFZhbHVlc1tlLnZhbHVlXXx8ZS52YWx1ZSksc3VwZXIuc2V0KGUsdCl9fTtfci5uYW1lcz1bImFsaWduLWl0ZW1zIiwiZmxleC1hbGlnbiIsImJveC1hbGlnbiJdO19yLm9sZFZhbHVlcz17ImZsZXgtZW5kIjoiZW5kIiwiZmxleC1zdGFydCI6InN0YXJ0In07RXcuZXhwb3J0cz1fcn0pO3ZhciBSdz14KCh6JCxUdyk9Pnt1KCk7dmFyIFNUPWooKSxfdT1jbGFzcyBleHRlbmRzIFNUe3NldChlLHQpe3JldHVybiB0PT09Ii1tcy0iJiZlLnZhbHVlPT09ImNvbnRhaW4iJiYoZS52YWx1ZT0iZWxlbWVudCIpLHN1cGVyLnNldChlLHQpfWluc2VydChlLHQsaSl7aWYoIShlLnZhbHVlPT09ImFsbCImJnQ9PT0iLW1zLSIpKXJldHVybiBzdXBlci5pbnNlcnQoZSx0LGkpfX07X3UubmFtZXM9WyJ1c2VyLXNlbGVjdCJdO1R3LmV4cG9ydHM9X3V9KTt2YXIgRHc9eCgoVSQsSXcpPT57dSgpO3ZhciBQdz1QZSgpLEFUPWooKSxFdT1jbGFzcyBleHRlbmRzIEFUe25vcm1hbGl6ZSgpe3JldHVybiJmbGV4LXNocmluayJ9cHJlZml4ZWQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT1Qdyh0KSxpPT09MjAxMj90KyJmbGV4LW5lZ2F0aXZlIjpzdXBlci5wcmVmaXhlZChlLHQpfXNldChlLHQpe2xldCBpO2lmKFtpLHRdPVB3KHQpLGk9PT0yMDEyfHxpPT09ImZpbmFsIilyZXR1cm4gc3VwZXIuc2V0KGUsdCl9fTtFdS5uYW1lcz1bImZsZXgtc2hyaW5rIiwiZmxleC1uZWdhdGl2ZSJdO0l3LmV4cG9ydHM9RXV9KTt2YXIgJHc9eCgoViQscXcpPT57dSgpO3ZhciBDVD1qKCksT3U9Y2xhc3MgZXh0ZW5kcyBDVHtwcmVmaXhlZChlLHQpe3JldHVybmAke3R9Y29sdW1uLSR7ZX1gfW5vcm1hbGl6ZShlKXtyZXR1cm4gZS5pbmNsdWRlcygiaW5zaWRlIik/ImJyZWFrLWluc2lkZSI6ZS5pbmNsdWRlcygiYmVmb3JlIik/ImJyZWFrLWJlZm9yZSI6ImJyZWFrLWFmdGVyIn1zZXQoZSx0KXtyZXR1cm4oZS5wcm9wPT09ImJyZWFrLWluc2lkZSImJmUudmFsdWU9PT0iYXZvaWQtY29sdW1uInx8ZS52YWx1ZT09PSJhdm9pZC1wYWdlIikmJihlLnZhbHVlPSJhdm9pZCIpLHN1cGVyLnNldChlLHQpfWluc2VydChlLHQsaSl7aWYoZS5wcm9wIT09ImJyZWFrLWluc2lkZSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7aWYoISgvcmVnaW9uL2kudGVzdChlLnZhbHVlKXx8L3BhZ2UvaS50ZXN0KGUudmFsdWUpKSlyZXR1cm4gc3VwZXIuaW5zZXJ0KGUsdCxpKX19O091Lm5hbWVzPVsiYnJlYWstaW5zaWRlIiwicGFnZS1icmVhay1pbnNpZGUiLCJjb2x1bW4tYnJlYWstaW5zaWRlIiwiYnJlYWstYmVmb3JlIiwicGFnZS1icmVhay1iZWZvcmUiLCJjb2x1bW4tYnJlYWstYmVmb3JlIiwiYnJlYWstYWZ0ZXIiLCJwYWdlLWJyZWFrLWFmdGVyIiwiY29sdW1uLWJyZWFrLWFmdGVyIl07cXcuZXhwb3J0cz1PdX0pO3ZhciBNdz14KChIJCxMdyk9Pnt1KCk7dmFyIF9UPWooKSxUdT1jbGFzcyBleHRlbmRzIF9Ue3ByZWZpeGVkKGUsdCl7cmV0dXJuIHQrInByaW50LWNvbG9yLWFkanVzdCJ9bm9ybWFsaXplKCl7cmV0dXJuImNvbG9yLWFkanVzdCJ9fTtUdS5uYW1lcz1bImNvbG9yLWFkanVzdCIsInByaW50LWNvbG9yLWFkanVzdCJdO0x3LmV4cG9ydHM9VHV9KTt2YXIgQnc9eCgoVyQsTncpPT57dSgpO3ZhciBFVD1qKCksRXI9Y2xhc3MgZXh0ZW5kcyBFVHtpbnNlcnQoZSx0LGkpe2lmKHQ9PT0iLW1zLSIpe2xldCBuPXRoaXMuc2V0KHRoaXMuY2xvbmUoZSksdCk7dGhpcy5uZWVkQ2FzY2FkZShlKSYmKG4ucmF3cy5iZWZvcmU9dGhpcy5jYWxjQmVmb3JlKGksZSx0KSk7bGV0IHM9Imx0ciI7cmV0dXJuIGUucGFyZW50Lm5vZGVzLmZvckVhY2goYT0+e2EucHJvcD09PSJkaXJlY3Rpb24iJiYoYS52YWx1ZT09PSJydGwifHxhLnZhbHVlPT09Imx0ciIpJiYocz1hLnZhbHVlKX0pLG4udmFsdWU9RXIubXNWYWx1ZXNbc11bZS52YWx1ZV18fGUudmFsdWUsZS5wYXJlbnQuaW5zZXJ0QmVmb3JlKGUsbil9cmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSl9fTtFci5uYW1lcz1bIndyaXRpbmctbW9kZSJdO0VyLm1zVmFsdWVzPXtsdHI6eyJob3Jpem9udGFsLXRiIjoibHItdGIiLCJ2ZXJ0aWNhbC1ybCI6InRiLXJsIiwidmVydGljYWwtbHIiOiJ0Yi1sciJ9LHJ0bDp7Imhvcml6b250YWwtdGIiOiJybC10YiIsInZlcnRpY2FsLXJsIjoiYnQtcmwiLCJ2ZXJ0aWNhbC1sciI6ImJ0LWxyIn19O053LmV4cG9ydHM9RXJ9KTt2YXIganc9eCgoRyQsRncpPT57dSgpO3ZhciBPVD1qKCksUnU9Y2xhc3MgZXh0ZW5kcyBPVHtzZXQoZSx0KXtyZXR1cm4gZS52YWx1ZT1lLnZhbHVlLnJlcGxhY2UoL1xzK2ZpbGwoXHMpLywiJDEiKSxzdXBlci5zZXQoZSx0KX19O1J1Lm5hbWVzPVsiYm9yZGVyLWltYWdlIl07RncuZXhwb3J0cz1SdX0pO3ZhciBWdz14KChRJCxVdyk9Pnt1KCk7dmFyIHp3PVBlKCksVFQ9aigpLE9yPWNsYXNzIGV4dGVuZHMgVFR7cHJlZml4ZWQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT16dyh0KSxpPT09MjAxMj90KyJmbGV4LWxpbmUtcGFjayI6c3VwZXIucHJlZml4ZWQoZSx0KX1ub3JtYWxpemUoKXtyZXR1cm4iYWxpZ24tY29udGVudCJ9c2V0KGUsdCl7bGV0IGk9encodClbMF07aWYoaT09PTIwMTIpcmV0dXJuIGUudmFsdWU9T3Iub2xkVmFsdWVzW2UudmFsdWVdfHxlLnZhbHVlLHN1cGVyLnNldChlLHQpO2lmKGk9PT0iZmluYWwiKXJldHVybiBzdXBlci5zZXQoZSx0KX19O09yLm5hbWVzPVsiYWxpZ24tY29udGVudCIsImZsZXgtbGluZS1wYWNrIl07T3Iub2xkVmFsdWVzPXsiZmxleC1lbmQiOiJlbmQiLCJmbGV4LXN0YXJ0Ijoic3RhcnQiLCJzcGFjZS1iZXR3ZWVuIjoianVzdGlmeSIsInNwYWNlLWFyb3VuZCI6ImRpc3RyaWJ1dGUifTtVdy5leHBvcnRzPU9yfSk7dmFyIFd3PXgoKFkkLEh3KT0+e3UoKTt2YXIgUlQ9aigpLFdlPWNsYXNzIGV4dGVuZHMgUlR7cHJlZml4ZWQoZSx0KXtyZXR1cm4gdD09PSItbW96LSI/dCsoV2UudG9Nb3ppbGxhW2VdfHxlKTpzdXBlci5wcmVmaXhlZChlLHQpfW5vcm1hbGl6ZShlKXtyZXR1cm4gV2UudG9Ob3JtYWxbZV18fGV9fTtXZS5uYW1lcz1bImJvcmRlci1yYWRpdXMiXTtXZS50b01vemlsbGE9e307V2UudG9Ob3JtYWw9e307Zm9yKGxldCByIG9mWyJ0b3AiLCJib3R0b20iXSlmb3IobGV0IGUgb2ZbImxlZnQiLCJyaWdodCJdKXtsZXQgdD1gYm9yZGVyLSR7cn0tJHtlfS1yYWRpdXNgLGk9YGJvcmRlci1yYWRpdXMtJHtyfSR7ZX1gO1dlLm5hbWVzLnB1c2godCksV2UubmFtZXMucHVzaChpKSxXZS50b01vemlsbGFbdF09aSxXZS50b05vcm1hbFtpXT10fUh3LmV4cG9ydHM9V2V9KTt2YXIgUXc9eCgoSyQsR3cpPT57dSgpO3ZhciBQVD1qKCksUHU9Y2xhc3MgZXh0ZW5kcyBQVHtwcmVmaXhlZChlLHQpe3JldHVybiBlLmluY2x1ZGVzKCItc3RhcnQiKT90K2UucmVwbGFjZSgiLWJsb2NrLXN0YXJ0IiwiLWJlZm9yZSIpOnQrZS5yZXBsYWNlKCItYmxvY2stZW5kIiwiLWFmdGVyIil9bm9ybWFsaXplKGUpe3JldHVybiBlLmluY2x1ZGVzKCItYmVmb3JlIik/ZS5yZXBsYWNlKCItYmVmb3JlIiwiLWJsb2NrLXN0YXJ0Iik6ZS5yZXBsYWNlKCItYWZ0ZXIiLCItYmxvY2stZW5kIil9fTtQdS5uYW1lcz1bImJvcmRlci1ibG9jay1zdGFydCIsImJvcmRlci1ibG9jay1lbmQiLCJtYXJnaW4tYmxvY2stc3RhcnQiLCJtYXJnaW4tYmxvY2stZW5kIiwicGFkZGluZy1ibG9jay1zdGFydCIsInBhZGRpbmctYmxvY2stZW5kIiwiYm9yZGVyLWJlZm9yZSIsImJvcmRlci1hZnRlciIsIm1hcmdpbi1iZWZvcmUiLCJtYXJnaW4tYWZ0ZXIiLCJwYWRkaW5nLWJlZm9yZSIsInBhZGRpbmctYWZ0ZXIiXTtHdy5leHBvcnRzPVB1fSk7dmFyIEt3PXgoKFgkLFl3KT0+e3UoKTt2YXIgSVQ9aigpLHtwYXJzZVRlbXBsYXRlOkRULHdhcm5NaXNzZWRBcmVhczpxVCxnZXRHcmlkR2FwOiRULHdhcm5HcmlkR2FwOkxULGluaGVyaXRHcmlkR2FwOk1UfT1CdCgpLEl1PWNsYXNzIGV4dGVuZHMgSVR7aW5zZXJ0KGUsdCxpLG4pe2lmKHQhPT0iLW1zLSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7aWYoZS5wYXJlbnQuc29tZShoPT5oLnByb3A9PT0iLW1zLWdyaWQtcm93cyIpKXJldHVybjtsZXQgcz0kVChlKSxhPU1UKGUscykse3Jvd3M6byxjb2x1bW5zOmwsYXJlYXM6Y309RFQoe2RlY2w6ZSxnYXA6YXx8c30pLGY9T2JqZWN0LmtleXMoYykubGVuZ3RoPjAsZD1Cb29sZWFuKG8pLHA9Qm9vbGVhbihsKTtyZXR1cm4gTFQoe2dhcDpzLGhhc0NvbHVtbnM6cCxkZWNsOmUscmVzdWx0Om59KSxxVChjLGUsbiksKGQmJnB8fGYpJiZlLmNsb25lQmVmb3JlKHtwcm9wOiItbXMtZ3JpZC1yb3dzIix2YWx1ZTpvLHJhd3M6e319KSxwJiZlLmNsb25lQmVmb3JlKHtwcm9wOiItbXMtZ3JpZC1jb2x1bW5zIix2YWx1ZTpsLHJhd3M6e319KSxlfX07SXUubmFtZXM9WyJncmlkLXRlbXBsYXRlIl07WXcuZXhwb3J0cz1JdX0pO3ZhciBadz14KChaJCxYdyk9Pnt1KCk7dmFyIE5UPWooKSxEdT1jbGFzcyBleHRlbmRzIE5Ue3ByZWZpeGVkKGUsdCl7cmV0dXJuIHQrZS5yZXBsYWNlKCItaW5saW5lIiwiIil9bm9ybWFsaXplKGUpe3JldHVybiBlLnJlcGxhY2UoLyhtYXJnaW58cGFkZGluZ3xib3JkZXIpLShzdGFydHxlbmQpLywiJDEtaW5saW5lLSQyIil9fTtEdS5uYW1lcz1bImJvcmRlci1pbmxpbmUtc3RhcnQiLCJib3JkZXItaW5saW5lLWVuZCIsIm1hcmdpbi1pbmxpbmUtc3RhcnQiLCJtYXJnaW4taW5saW5lLWVuZCIsInBhZGRpbmctaW5saW5lLXN0YXJ0IiwicGFkZGluZy1pbmxpbmUtZW5kIiwiYm9yZGVyLXN0YXJ0IiwiYm9yZGVyLWVuZCIsIm1hcmdpbi1zdGFydCIsIm1hcmdpbi1lbmQiLCJwYWRkaW5nLXN0YXJ0IiwicGFkZGluZy1lbmQiXTtYdy5leHBvcnRzPUR1fSk7dmFyIGUwPXgoKEokLEp3KT0+e3UoKTt2YXIgQlQ9aigpLHF1PWNsYXNzIGV4dGVuZHMgQlR7Y2hlY2soZSl7cmV0dXJuIWUudmFsdWUuaW5jbHVkZXMoImZsZXgtIikmJmUudmFsdWUhPT0iYmFzZWxpbmUifXByZWZpeGVkKGUsdCl7cmV0dXJuIHQrImdyaWQtcm93LWFsaWduIn1ub3JtYWxpemUoKXtyZXR1cm4iYWxpZ24tc2VsZiJ9fTtxdS5uYW1lcz1bImdyaWQtcm93LWFsaWduIl07SncuZXhwb3J0cz1xdX0pO3ZhciByMD14KChlTCx0MCk9Pnt1KCk7dmFyIEZUPWooKSxUcj1jbGFzcyBleHRlbmRzIEZUe2tleWZyYW1lUGFyZW50cyhlKXtsZXR7cGFyZW50OnR9PWU7Zm9yKDt0Oyl7aWYodC50eXBlPT09ImF0cnVsZSImJnQubmFtZT09PSJrZXlmcmFtZXMiKXJldHVybiEwOyh7cGFyZW50OnR9PXQpfXJldHVybiExfWNvbnRhaW4zZChlKXtpZihlLnByb3A9PT0idHJhbnNmb3JtLW9yaWdpbiIpcmV0dXJuITE7Zm9yKGxldCB0IG9mIFRyLmZ1bmN0aW9uczNkKWlmKGUudmFsdWUuaW5jbHVkZXMoYCR7dH0oYCkpcmV0dXJuITA7cmV0dXJuITF9c2V0KGUsdCl7cmV0dXJuIGU9c3VwZXIuc2V0KGUsdCksdD09PSItbXMtIiYmKGUudmFsdWU9ZS52YWx1ZS5yZXBsYWNlKC9yb3RhdGV6L2dpLCJyb3RhdGUiKSksZX1pbnNlcnQoZSx0LGkpe2lmKHQ9PT0iLW1zLSIpe2lmKCF0aGlzLmNvbnRhaW4zZChlKSYmIXRoaXMua2V5ZnJhbWVQYXJlbnRzKGUpKXJldHVybiBzdXBlci5pbnNlcnQoZSx0LGkpfWVsc2UgaWYodD09PSItby0iKXtpZighdGhpcy5jb250YWluM2QoZSkpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSl9ZWxzZSByZXR1cm4gc3VwZXIuaW5zZXJ0KGUsdCxpKX19O1RyLm5hbWVzPVsidHJhbnNmb3JtIiwidHJhbnNmb3JtLW9yaWdpbiJdO1RyLmZ1bmN0aW9uczNkPVsibWF0cml4M2QiLCJ0cmFuc2xhdGUzZCIsInRyYW5zbGF0ZVoiLCJzY2FsZTNkIiwic2NhbGVaIiwicm90YXRlM2QiLCJyb3RhdGVYIiwicm90YXRlWSIsInBlcnNwZWN0aXZlIl07dDAuZXhwb3J0cz1Ucn0pO3ZhciBzMD14KCh0TCxuMCk9Pnt1KCk7dmFyIGkwPVBlKCksalQ9aigpLCR1PWNsYXNzIGV4dGVuZHMgalR7bm9ybWFsaXplKCl7cmV0dXJuImZsZXgtZGlyZWN0aW9uIn1pbnNlcnQoZSx0LGkpe2xldCBuO2lmKFtuLHRdPWkwKHQpLG4hPT0yMDA5KXJldHVybiBzdXBlci5pbnNlcnQoZSx0LGkpO2lmKGUucGFyZW50LnNvbWUoZj0+Zi5wcm9wPT09dCsiYm94LW9yaWVudCJ8fGYucHJvcD09PXQrImJveC1kaXJlY3Rpb24iKSlyZXR1cm47bGV0IGE9ZS52YWx1ZSxvLGw7YT09PSJpbmhlcml0Inx8YT09PSJpbml0aWFsInx8YT09PSJ1bnNldCI/KG89YSxsPWEpOihvPWEuaW5jbHVkZXMoInJvdyIpPyJob3Jpem9udGFsIjoidmVydGljYWwiLGw9YS5pbmNsdWRlcygicmV2ZXJzZSIpPyJyZXZlcnNlIjoibm9ybWFsIik7bGV0IGM9dGhpcy5jbG9uZShlKTtyZXR1cm4gYy5wcm9wPXQrImJveC1vcmllbnQiLGMudmFsdWU9byx0aGlzLm5lZWRDYXNjYWRlKGUpJiYoYy5yYXdzLmJlZm9yZT10aGlzLmNhbGNCZWZvcmUoaSxlLHQpKSxlLnBhcmVudC5pbnNlcnRCZWZvcmUoZSxjKSxjPXRoaXMuY2xvbmUoZSksYy5wcm9wPXQrImJveC1kaXJlY3Rpb24iLGMudmFsdWU9bCx0aGlzLm5lZWRDYXNjYWRlKGUpJiYoYy5yYXdzLmJlZm9yZT10aGlzLmNhbGNCZWZvcmUoaSxlLHQpKSxlLnBhcmVudC5pbnNlcnRCZWZvcmUoZSxjKX1vbGQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT1pMCh0KSxpPT09MjAwOT9bdCsiYm94LW9yaWVudCIsdCsiYm94LWRpcmVjdGlvbiJdOnN1cGVyLm9sZChlLHQpfX07JHUubmFtZXM9WyJmbGV4LWRpcmVjdGlvbiIsImJveC1kaXJlY3Rpb24iLCJib3gtb3JpZW50Il07bjAuZXhwb3J0cz0kdX0pO3ZhciBvMD14KChyTCxhMCk9Pnt1KCk7dmFyIHpUPWooKSxMdT1jbGFzcyBleHRlbmRzIHpUe2NoZWNrKGUpe3JldHVybiBlLnZhbHVlPT09InBpeGVsYXRlZCJ9cHJlZml4ZWQoZSx0KXtyZXR1cm4gdD09PSItbXMtIj8iLW1zLWludGVycG9sYXRpb24tbW9kZSI6c3VwZXIucHJlZml4ZWQoZSx0KX1zZXQoZSx0KXtyZXR1cm4gdCE9PSItbXMtIj9zdXBlci5zZXQoZSx0KTooZS5wcm9wPSItbXMtaW50ZXJwb2xhdGlvbi1tb2RlIixlLnZhbHVlPSJuZWFyZXN0LW5laWdoYm9yIixlKX1ub3JtYWxpemUoKXtyZXR1cm4iaW1hZ2UtcmVuZGVyaW5nIn1wcm9jZXNzKGUsdCl7cmV0dXJuIHN1cGVyLnByb2Nlc3MoZSx0KX19O0x1Lm5hbWVzPVsiaW1hZ2UtcmVuZGVyaW5nIiwiaW50ZXJwb2xhdGlvbi1tb2RlIl07YTAuZXhwb3J0cz1MdX0pO3ZhciB1MD14KChpTCxsMCk9Pnt1KCk7dmFyIFVUPWooKSxWVD1fZSgpLE11PWNsYXNzIGV4dGVuZHMgVVR7Y29uc3RydWN0b3IoZSx0LGkpe3N1cGVyKGUsdCxpKTt0aGlzLnByZWZpeGVzJiYodGhpcy5wcmVmaXhlcz1WVC51bmlxKHRoaXMucHJlZml4ZXMubWFwKG49Pm49PT0iLW1zLSI/Ii13ZWJraXQtIjpuKSkpfX07TXUubmFtZXM9WyJiYWNrZHJvcC1maWx0ZXIiXTtsMC5leHBvcnRzPU11fSk7dmFyIGMwPXgoKG5MLGYwKT0+e3UoKTt2YXIgSFQ9aigpLFdUPV9lKCksTnU9Y2xhc3MgZXh0ZW5kcyBIVHtjb25zdHJ1Y3RvcihlLHQsaSl7c3VwZXIoZSx0LGkpO3RoaXMucHJlZml4ZXMmJih0aGlzLnByZWZpeGVzPVdULnVuaXEodGhpcy5wcmVmaXhlcy5tYXAobj0+bj09PSItbXMtIj8iLXdlYmtpdC0iOm4pKSl9Y2hlY2soZSl7cmV0dXJuIGUudmFsdWUudG9Mb3dlckNhc2UoKT09PSJ0ZXh0In19O051Lm5hbWVzPVsiYmFja2dyb3VuZC1jbGlwIl07ZjAuZXhwb3J0cz1OdX0pO3ZhciBkMD14KChzTCxwMCk9Pnt1KCk7dmFyIEdUPWooKSxRVD1bIm5vbmUiLCJ1bmRlcmxpbmUiLCJvdmVybGluZSIsImxpbmUtdGhyb3VnaCIsImJsaW5rIiwiaW5oZXJpdCIsImluaXRpYWwiLCJ1bnNldCJdLEJ1PWNsYXNzIGV4dGVuZHMgR1R7Y2hlY2soZSl7cmV0dXJuIGUudmFsdWUuc3BsaXQoL1xzKy8pLnNvbWUodD0+IVFULmluY2x1ZGVzKHQpKX19O0J1Lm5hbWVzPVsidGV4dC1kZWNvcmF0aW9uIl07cDAuZXhwb3J0cz1CdX0pO3ZhciBnMD14KChhTCxtMCk9Pnt1KCk7dmFyIGgwPVBlKCksWVQ9aigpLFJyPWNsYXNzIGV4dGVuZHMgWVR7cHJlZml4ZWQoZSx0KXtsZXQgaTtyZXR1cm5baSx0XT1oMCh0KSxpPT09MjAwOT90KyJib3gtcGFjayI6aT09PTIwMTI/dCsiZmxleC1wYWNrIjpzdXBlci5wcmVmaXhlZChlLHQpfW5vcm1hbGl6ZSgpe3JldHVybiJqdXN0aWZ5LWNvbnRlbnQifXNldChlLHQpe2xldCBpPWgwKHQpWzBdO2lmKGk9PT0yMDA5fHxpPT09MjAxMil7bGV0IG49UnIub2xkVmFsdWVzW2UudmFsdWVdfHxlLnZhbHVlO2lmKGUudmFsdWU9bixpIT09MjAwOXx8biE9PSJkaXN0cmlidXRlIilyZXR1cm4gc3VwZXIuc2V0KGUsdCl9ZWxzZSBpZihpPT09ImZpbmFsIilyZXR1cm4gc3VwZXIuc2V0KGUsdCl9fTtSci5uYW1lcz1bImp1c3RpZnktY29udGVudCIsImZsZXgtcGFjayIsImJveC1wYWNrIl07UnIub2xkVmFsdWVzPXsiZmxleC1lbmQiOiJlbmQiLCJmbGV4LXN0YXJ0Ijoic3RhcnQiLCJzcGFjZS1iZXR3ZWVuIjoianVzdGlmeSIsInNwYWNlLWFyb3VuZCI6ImRpc3RyaWJ1dGUifTttMC5leHBvcnRzPVJyfSk7dmFyIGIwPXgoKG9MLHkwKT0+e3UoKTt2YXIgS1Q9aigpLEZ1PWNsYXNzIGV4dGVuZHMgS1R7c2V0KGUsdCl7bGV0IGk9ZS52YWx1ZS50b0xvd2VyQ2FzZSgpO3JldHVybiB0PT09Ii13ZWJraXQtIiYmIWkuaW5jbHVkZXMoIiAiKSYmaSE9PSJjb250YWluIiYmaSE9PSJjb3ZlciImJihlLnZhbHVlPWUudmFsdWUrIiAiK2UudmFsdWUpLHN1cGVyLnNldChlLHQpfX07RnUubmFtZXM9WyJiYWNrZ3JvdW5kLXNpemUiXTt5MC5leHBvcnRzPUZ1fSk7dmFyIHYwPXgoKGxMLHcwKT0+e3UoKTt2YXIgWFQ9aigpLGp1PUJ0KCksenU9Y2xhc3MgZXh0ZW5kcyBYVHtpbnNlcnQoZSx0LGkpe2lmKHQhPT0iLW1zLSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7bGV0IG49anUucGFyc2UoZSksW3MsYV09anUudHJhbnNsYXRlKG4sMCwxKTtuWzBdJiZuWzBdLmluY2x1ZGVzKCJzcGFuIikmJihhPW5bMF0uam9pbigiIikucmVwbGFjZSgvXEQvZywiIikpLFtbZS5wcm9wLHNdLFtgJHtlLnByb3B9LXNwYW5gLGFdXS5mb3JFYWNoKChbbCxjXSk9PntqdS5pbnNlcnREZWNsKGUsbCxjKX0pfX07enUubmFtZXM9WyJncmlkLXJvdyIsImdyaWQtY29sdW1uIl07dzAuZXhwb3J0cz16dX0pO3ZhciBTMD14KCh1TCxrMCk9Pnt1KCk7dmFyIFpUPWooKSx7cHJlZml4VHJhY2tQcm9wOngwLHByZWZpeFRyYWNrVmFsdWU6SlQsYXV0b3BsYWNlR3JpZEl0ZW1zOmVSLGdldEdyaWRHYXA6dFIsaW5oZXJpdEdyaWRHYXA6clJ9PUJ0KCksaVI9b3UoKSxVdT1jbGFzcyBleHRlbmRzIFpUe3ByZWZpeGVkKGUsdCl7cmV0dXJuIHQ9PT0iLW1zLSI/eDAoe3Byb3A6ZSxwcmVmaXg6dH0pOnN1cGVyLnByZWZpeGVkKGUsdCl9bm9ybWFsaXplKGUpe3JldHVybiBlLnJlcGxhY2UoL15ncmlkLShyb3dzfGNvbHVtbnMpLywiZ3JpZC10ZW1wbGF0ZS0kMSIpfWluc2VydChlLHQsaSxuKXtpZih0IT09Ii1tcy0iKXJldHVybiBzdXBlci5pbnNlcnQoZSx0LGkpO2xldHtwYXJlbnQ6cyxwcm9wOmEsdmFsdWU6b309ZSxsPWEuaW5jbHVkZXMoInJvd3MiKSxjPWEuaW5jbHVkZXMoImNvbHVtbnMiKSxmPXMuc29tZShrPT5rLnByb3A9PT0iZ3JpZC10ZW1wbGF0ZSJ8fGsucHJvcD09PSJncmlkLXRlbXBsYXRlLWFyZWFzIik7aWYoZiYmbClyZXR1cm4hMTtsZXQgZD1uZXcgaVIoe29wdGlvbnM6e319KSxwPWQuZ3JpZFN0YXR1cyhzLG4pLGg9dFIoZSk7aD1yUihlLGgpfHxoO2xldCBiPWw/aC5yb3c6aC5jb2x1bW47KHA9PT0ibm8tYXV0b3BsYWNlInx8cD09PSEwKSYmIWYmJihiPW51bGwpO2xldCB2PUpUKHt2YWx1ZTpvLGdhcDpifSk7ZS5jbG9uZUJlZm9yZSh7cHJvcDp4MCh7cHJvcDphLHByZWZpeDp0fSksdmFsdWU6dn0pO2xldCB5PXMubm9kZXMuZmluZChrPT5rLnByb3A9PT0iZ3JpZC1hdXRvLWZsb3ciKSx3PSJyb3ciO2lmKHkmJiFkLmRpc2FibGVkKHksbikmJih3PXkudmFsdWUudHJpbSgpKSxwPT09ImF1dG9wbGFjZSIpe2xldCBrPXMubm9kZXMuZmluZChFPT5FLnByb3A9PT0iZ3JpZC10ZW1wbGF0ZS1yb3dzIik7aWYoIWsmJmYpcmV0dXJuO2lmKCFrJiYhZil7ZS53YXJuKG4sIkF1dG9wbGFjZW1lbnQgZG9lcyBub3Qgd29yayB3aXRob3V0IGdyaWQtdGVtcGxhdGUtcm93cyBwcm9wZXJ0eSIpO3JldHVybn0hcy5ub2Rlcy5maW5kKEU9PkUucHJvcD09PSJncmlkLXRlbXBsYXRlLWNvbHVtbnMiKSYmIWYmJmUud2FybihuLCJBdXRvcGxhY2VtZW50IGRvZXMgbm90IHdvcmsgd2l0aG91dCBncmlkLXRlbXBsYXRlLWNvbHVtbnMgcHJvcGVydHkiKSxjJiYhZiYmZVIoZSxuLGgsdyl9fX07VXUubmFtZXM9WyJncmlkLXRlbXBsYXRlLXJvd3MiLCJncmlkLXRlbXBsYXRlLWNvbHVtbnMiLCJncmlkLXJvd3MiLCJncmlkLWNvbHVtbnMiXTtrMC5leHBvcnRzPVV1fSk7dmFyIEMwPXgoKGZMLEEwKT0+e3UoKTt2YXIgblI9aigpLFZ1PWNsYXNzIGV4dGVuZHMgblJ7Y2hlY2soZSl7cmV0dXJuIWUudmFsdWUuaW5jbHVkZXMoImZsZXgtIikmJmUudmFsdWUhPT0iYmFzZWxpbmUifXByZWZpeGVkKGUsdCl7cmV0dXJuIHQrImdyaWQtY29sdW1uLWFsaWduIn1ub3JtYWxpemUoKXtyZXR1cm4ianVzdGlmeS1zZWxmIn19O1Z1Lm5hbWVzPVsiZ3JpZC1jb2x1bW4tYWxpZ24iXTtBMC5leHBvcnRzPVZ1fSk7dmFyIEUwPXgoKGNMLF8wKT0+e3UoKTt2YXIgc1I9aigpLEh1PWNsYXNzIGV4dGVuZHMgc1J7cHJlZml4ZWQoZSx0KXtyZXR1cm4gdCsic2Nyb2xsLWNoYWluaW5nIn1ub3JtYWxpemUoKXtyZXR1cm4ib3ZlcnNjcm9sbC1iZWhhdmlvciJ9c2V0KGUsdCl7cmV0dXJuIGUudmFsdWU9PT0iYXV0byI/ZS52YWx1ZT0iY2hhaW5lZCI6KGUudmFsdWU9PT0ibm9uZSJ8fGUudmFsdWU9PT0iY29udGFpbiIpJiYoZS52YWx1ZT0ibm9uZSIpLHN1cGVyLnNldChlLHQpfX07SHUubmFtZXM9WyJvdmVyc2Nyb2xsLWJlaGF2aW9yIiwic2Nyb2xsLWNoYWluaW5nIl07XzAuZXhwb3J0cz1IdX0pO3ZhciBSMD14KChwTCxUMCk9Pnt1KCk7dmFyIGFSPWooKSx7cGFyc2VHcmlkQXJlYXM6b1Isd2Fybk1pc3NlZEFyZWFzOmxSLHByZWZpeFRyYWNrUHJvcDp1UixwcmVmaXhUcmFja1ZhbHVlOk8wLGdldEdyaWRHYXA6ZlIsd2FybkdyaWRHYXA6Y1IsaW5oZXJpdEdyaWRHYXA6cFJ9PUJ0KCk7ZnVuY3Rpb24gZFIocil7cmV0dXJuIHIudHJpbSgpLnNsaWNlKDEsLTEpLnNwbGl0KC9bIiddXHMqWyInXT8vZyl9dmFyIFd1PWNsYXNzIGV4dGVuZHMgYVJ7aW5zZXJ0KGUsdCxpLG4pe2lmKHQhPT0iLW1zLSIpcmV0dXJuIHN1cGVyLmluc2VydChlLHQsaSk7bGV0IHM9ITEsYT0hMSxvPWUucGFyZW50LGw9ZlIoZSk7bD1wUihlLGwpfHxsLG8ud2Fsa0RlY2xzKC8tbXMtZ3JpZC1yb3dzLyxkPT5kLnJlbW92ZSgpKSxvLndhbGtEZWNscygvZ3JpZC10ZW1wbGF0ZS0ocm93c3xjb2x1bW5zKS8sZD0+e2lmKGQucHJvcD09PSJncmlkLXRlbXBsYXRlLXJvd3MiKXthPSEwO2xldHtwcm9wOnAsdmFsdWU6aH09ZDtkLmNsb25lQmVmb3JlKHtwcm9wOnVSKHtwcm9wOnAscHJlZml4OnR9KSx2YWx1ZTpPMCh7dmFsdWU6aCxnYXA6bC5yb3d9KX0pfWVsc2Ugcz0hMH0pO2xldCBjPWRSKGUudmFsdWUpO3MmJiFhJiZsLnJvdyYmYy5sZW5ndGg+MSYmZS5jbG9uZUJlZm9yZSh7cHJvcDoiLW1zLWdyaWQtcm93cyIsdmFsdWU6TzAoe3ZhbHVlOmByZXBlYXQoJHtjLmxlbmd0aH0sIGF1dG8pYCxnYXA6bC5yb3d9KSxyYXdzOnt9fSksY1Ioe2dhcDpsLGhhc0NvbHVtbnM6cyxkZWNsOmUscmVzdWx0Om59KTtsZXQgZj1vUih7cm93czpjLGdhcDpsfSk7cmV0dXJuIGxSKGYsZSxuKSxlfX07V3UubmFtZXM9WyJncmlkLXRlbXBsYXRlLWFyZWFzIl07VDAuZXhwb3J0cz1XdX0pO3ZhciBJMD14KChkTCxQMCk9Pnt1KCk7dmFyIGhSPWooKSxHdT1jbGFzcyBleHRlbmRzIGhSe3NldChlLHQpe3JldHVybiB0PT09Ii13ZWJraXQtIiYmKGUudmFsdWU9ZS52YWx1ZS5yZXBsYWNlKC9ccyoocmlnaHR8bGVmdClccyovaSwiIikpLHN1cGVyLnNldChlLHQpfX07R3UubmFtZXM9WyJ0ZXh0LWVtcGhhc2lzLXBvc2l0aW9uIl07UDAuZXhwb3J0cz1HdX0pO3ZhciBxMD14KChoTCxEMCk9Pnt1KCk7dmFyIG1SPWooKSxRdT1jbGFzcyBleHRlbmRzIG1Se3NldChlLHQpe3JldHVybiBlLnByb3A9PT0idGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rIiYmZS52YWx1ZT09PSJhdXRvIj8oZS5wcm9wPXQrInRleHQtZGVjb3JhdGlvbi1za2lwIixlLnZhbHVlPSJpbmsiLGUpOnN1cGVyLnNldChlLHQpfX07UXUubmFtZXM9WyJ0ZXh0LWRlY29yYXRpb24tc2tpcC1pbmsiLCJ0ZXh0LWRlY29yYXRpb24tc2tpcCJdO0QwLmV4cG9ydHM9UXV9KTt2YXIgRjA9eCgobUwsQjApPT57dSgpOyJ1c2Ugc3RyaWN0IjtCMC5leHBvcnRzPXt3cmFwOiQwLGxpbWl0OkwwLHZhbGlkYXRlOk0wLHRlc3Q6WXUsY3Vycnk6Z1IsbmFtZTpOMH07ZnVuY3Rpb24gJDAocixlLHQpe3ZhciBpPWUtcjtyZXR1cm4oKHQtciklaStpKSVpK3J9ZnVuY3Rpb24gTDAocixlLHQpe3JldHVybiBNYXRoLm1heChyLE1hdGgubWluKGUsdCkpfWZ1bmN0aW9uIE0wKHIsZSx0LGksbil7aWYoIVl1KHIsZSx0LGksbikpdGhyb3cgbmV3IEVycm9yKHQrIiBpcyBvdXRzaWRlIG9mIHJhbmdlIFsiK3IrIiwiK2UrIikiKTtyZXR1cm4gdH1mdW5jdGlvbiBZdShyLGUsdCxpLG4pe3JldHVybiEodDxyfHx0PmV8fG4mJnQ9PT1lfHxpJiZ0PT09cil9ZnVuY3Rpb24gTjAocixlLHQsaSl7cmV0dXJuKHQ/IigiOiJbIikrcisiLCIrZSsoaT8iKSI6Il0iKX1mdW5jdGlvbiBnUihyLGUsdCxpKXt2YXIgbj1OMC5iaW5kKG51bGwscixlLHQsaSk7cmV0dXJue3dyYXA6JDAuYmluZChudWxsLHIsZSksbGltaXQ6TDAuYmluZChudWxsLHIsZSksdmFsaWRhdGU6ZnVuY3Rpb24ocyl7cmV0dXJuIE0wKHIsZSxzLHQsaSl9LHRlc3Q6ZnVuY3Rpb24ocyl7cmV0dXJuIFl1KHIsZSxzLHQsaSl9LHRvU3RyaW5nOm4sbmFtZTpufX19KTt2YXIgVTA9eCgoZ0wsejApPT57dSgpO3ZhciBLdT1NcygpLHlSPUYwKCksYlI9eHIoKSx3Uj1IZSgpLHZSPV9lKCksajA9L3RvcHxsZWZ0fHJpZ2h0fGJvdHRvbS9naSx3dD1jbGFzcyBleHRlbmRzIHdSe3JlcGxhY2UoZSx0KXtsZXQgaT1LdShlKTtmb3IobGV0IG4gb2YgaS5ub2RlcylpZihuLnR5cGU9PT0iZnVuY3Rpb24iJiZuLnZhbHVlPT09dGhpcy5uYW1lKWlmKG4ubm9kZXM9dGhpcy5uZXdEaXJlY3Rpb24obi5ub2Rlcyksbi5ub2Rlcz10aGlzLm5vcm1hbGl6ZShuLm5vZGVzKSx0PT09Ii13ZWJraXQtIG9sZCIpe2lmKCF0aGlzLm9sZFdlYmtpdChuKSlyZXR1cm4hMX1lbHNlIG4ubm9kZXM9dGhpcy5jb252ZXJ0RGlyZWN0aW9uKG4ubm9kZXMpLG4udmFsdWU9dCtuLnZhbHVlO3JldHVybiBpLnRvU3RyaW5nKCl9cmVwbGFjZUZpcnN0KGUsLi4udCl7cmV0dXJuIHQubWFwKG49Pm49PT0iICI/e3R5cGU6InNwYWNlIix2YWx1ZTpufTp7dHlwZToid29yZCIsdmFsdWU6bn0pLmNvbmNhdChlLnNsaWNlKDEpKX1ub3JtYWxpemVVbml0KGUsdCl7cmV0dXJuYCR7cGFyc2VGbG9hdChlKS90KjM2MH1kZWdgfW5vcm1hbGl6ZShlKXtpZighZVswXSlyZXR1cm4gZTtpZigvLT9cZCsoLlxkKyk/Z3JhZC8udGVzdChlWzBdLnZhbHVlKSllWzBdLnZhbHVlPXRoaXMubm9ybWFsaXplVW5pdChlWzBdLnZhbHVlLDQwMCk7ZWxzZSBpZigvLT9cZCsoLlxkKyk/cmFkLy50ZXN0KGVbMF0udmFsdWUpKWVbMF0udmFsdWU9dGhpcy5ub3JtYWxpemVVbml0KGVbMF0udmFsdWUsMipNYXRoLlBJKTtlbHNlIGlmKC8tP1xkKyguXGQrKT90dXJuLy50ZXN0KGVbMF0udmFsdWUpKWVbMF0udmFsdWU9dGhpcy5ub3JtYWxpemVVbml0KGVbMF0udmFsdWUsMSk7ZWxzZSBpZihlWzBdLnZhbHVlLmluY2x1ZGVzKCJkZWciKSl7bGV0IHQ9cGFyc2VGbG9hdChlWzBdLnZhbHVlKTt0PXlSLndyYXAoMCwzNjAsdCksZVswXS52YWx1ZT1gJHt0fWRlZ2B9cmV0dXJuIGVbMF0udmFsdWU9PT0iMGRlZyI/ZT10aGlzLnJlcGxhY2VGaXJzdChlLCJ0byIsIiAiLCJ0b3AiKTplWzBdLnZhbHVlPT09IjkwZGVnIj9lPXRoaXMucmVwbGFjZUZpcnN0KGUsInRvIiwiICIsInJpZ2h0Iik6ZVswXS52YWx1ZT09PSIxODBkZWciP2U9dGhpcy5yZXBsYWNlRmlyc3QoZSwidG8iLCIgIiwiYm90dG9tIik6ZVswXS52YWx1ZT09PSIyNzBkZWciJiYoZT10aGlzLnJlcGxhY2VGaXJzdChlLCJ0byIsIiAiLCJsZWZ0IikpLGV9bmV3RGlyZWN0aW9uKGUpe2lmKGVbMF0udmFsdWU9PT0idG8ifHwoajAubGFzdEluZGV4PTAsIWowLnRlc3QoZVswXS52YWx1ZSkpKXJldHVybiBlO2UudW5zaGlmdCh7dHlwZToid29yZCIsdmFsdWU6InRvIn0se3R5cGU6InNwYWNlIix2YWx1ZToiICJ9KTtmb3IobGV0IHQ9Mjt0PGUubGVuZ3RoJiZlW3RdLnR5cGUhPT0iZGl2Ijt0KyspZVt0XS50eXBlPT09IndvcmQiJiYoZVt0XS52YWx1ZT10aGlzLnJldmVydERpcmVjdGlvbihlW3RdLnZhbHVlKSk7cmV0dXJuIGV9aXNSYWRpYWwoZSl7bGV0IHQ9ImJlZm9yZSI7Zm9yKGxldCBpIG9mIGUpaWYodD09PSJiZWZvcmUiJiZpLnR5cGU9PT0ic3BhY2UiKXQ9ImF0IjtlbHNlIGlmKHQ9PT0iYXQiJiZpLnZhbHVlPT09ImF0Iil0PSJhZnRlciI7ZWxzZXtpZih0PT09ImFmdGVyIiYmaS50eXBlPT09InNwYWNlIilyZXR1cm4hMDtpZihpLnR5cGU9PT0iZGl2IilicmVhazt0PSJiZWZvcmUifXJldHVybiExfWNvbnZlcnREaXJlY3Rpb24oZSl7cmV0dXJuIGUubGVuZ3RoPjAmJihlWzBdLnZhbHVlPT09InRvIj90aGlzLmZpeERpcmVjdGlvbihlKTplWzBdLnZhbHVlLmluY2x1ZGVzKCJkZWciKT90aGlzLmZpeEFuZ2xlKGUpOnRoaXMuaXNSYWRpYWwoZSkmJnRoaXMuZml4UmFkaWFsKGUpKSxlfWZpeERpcmVjdGlvbihlKXtlLnNwbGljZSgwLDIpO2ZvcihsZXQgdCBvZiBlKXtpZih0LnR5cGU9PT0iZGl2IilicmVhazt0LnR5cGU9PT0id29yZCImJih0LnZhbHVlPXRoaXMucmV2ZXJ0RGlyZWN0aW9uKHQudmFsdWUpKX19Zml4QW5nbGUoZSl7bGV0IHQ9ZVswXS52YWx1ZTt0PXBhcnNlRmxvYXQodCksdD1NYXRoLmFicyg0NTAtdCklMzYwLHQ9dGhpcy5yb3VuZEZsb2F0KHQsMyksZVswXS52YWx1ZT1gJHt0fWRlZ2B9Zml4UmFkaWFsKGUpe2xldCB0PVtdLGk9W10sbixzLGEsbyxsO2ZvcihvPTA7bzxlLmxlbmd0aC0yO28rKylpZihuPWVbb10scz1lW28rMV0sYT1lW28rMl0sbi50eXBlPT09InNwYWNlIiYmcy52YWx1ZT09PSJhdCImJmEudHlwZT09PSJzcGFjZSIpe2w9byszO2JyZWFrfWVsc2UgdC5wdXNoKG4pO2xldCBjO2ZvcihvPWw7bzxlLmxlbmd0aDtvKyspaWYoZVtvXS50eXBlPT09ImRpdiIpe2M9ZVtvXTticmVha31lbHNlIGkucHVzaChlW29dKTtlLnNwbGljZSgwLG8sLi4uaSxjLC4uLnQpfXJldmVydERpcmVjdGlvbihlKXtyZXR1cm4gd3QuZGlyZWN0aW9uc1tlLnRvTG93ZXJDYXNlKCldfHxlfXJvdW5kRmxvYXQoZSx0KXtyZXR1cm4gcGFyc2VGbG9hdChlLnRvRml4ZWQodCkpfW9sZFdlYmtpdChlKXtsZXR7bm9kZXM6dH09ZSxpPUt1LnN0cmluZ2lmeShlLm5vZGVzKTtpZih0aGlzLm5hbWUhPT0ibGluZWFyLWdyYWRpZW50Inx8dFswXSYmdFswXS52YWx1ZS5pbmNsdWRlcygiZGVnIil8fGkuaW5jbHVkZXMoInB4Iil8fGkuaW5jbHVkZXMoIi1jb3JuZXIiKXx8aS5pbmNsdWRlcygiLXNpZGUiKSlyZXR1cm4hMTtsZXQgbj1bW11dO2ZvcihsZXQgcyBvZiB0KW5bbi5sZW5ndGgtMV0ucHVzaChzKSxzLnR5cGU9PT0iZGl2IiYmcy52YWx1ZT09PSIsIiYmbi5wdXNoKFtdKTt0aGlzLm9sZERpcmVjdGlvbihuKSx0aGlzLmNvbG9yU3RvcHMobiksZS5ub2Rlcz1bXTtmb3IobGV0IHMgb2YgbillLm5vZGVzPWUubm9kZXMuY29uY2F0KHMpO3JldHVybiBlLm5vZGVzLnVuc2hpZnQoe3R5cGU6IndvcmQiLHZhbHVlOiJsaW5lYXIifSx0aGlzLmNsb25lRGl2KGUubm9kZXMpKSxlLnZhbHVlPSItd2Via2l0LWdyYWRpZW50IiwhMH1vbGREaXJlY3Rpb24oZSl7bGV0IHQ9dGhpcy5jbG9uZURpdihlWzBdKTtpZihlWzBdWzBdLnZhbHVlIT09InRvIilyZXR1cm4gZS51bnNoaWZ0KFt7dHlwZToid29yZCIsdmFsdWU6d3Qub2xkRGlyZWN0aW9ucy5ib3R0b219LHRdKTt7bGV0IGk9W107Zm9yKGxldCBzIG9mIGVbMF0uc2xpY2UoMikpcy50eXBlPT09IndvcmQiJiZpLnB1c2gocy52YWx1ZS50b0xvd2VyQ2FzZSgpKTtpPWkuam9pbigiICIpO2xldCBuPXd0Lm9sZERpcmVjdGlvbnNbaV18fGk7cmV0dXJuIGVbMF09W3t0eXBlOiJ3b3JkIix2YWx1ZTpufSx0XSxlWzBdfX1jbG9uZURpdihlKXtmb3IobGV0IHQgb2YgZSlpZih0LnR5cGU9PT0iZGl2IiYmdC52YWx1ZT09PSIsIilyZXR1cm4gdDtyZXR1cm57dHlwZToiZGl2Iix2YWx1ZToiLCIsYWZ0ZXI6IiAifX1jb2xvclN0b3BzKGUpe2xldCB0PVtdO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtsZXQgbixzPWVbaV0sYTtpZihpPT09MCljb250aW51ZTtsZXQgbz1LdS5zdHJpbmdpZnkoc1swXSk7c1sxXSYmc1sxXS50eXBlPT09IndvcmQiP249c1sxXS52YWx1ZTpzWzJdJiZzWzJdLnR5cGU9PT0id29yZCImJihuPXNbMl0udmFsdWUpO2xldCBsO2k9PT0xJiYoIW58fG49PT0iMCUiKT9sPWBmcm9tKCR7b30pYDppPT09ZS5sZW5ndGgtMSYmKCFufHxuPT09IjEwMCUiKT9sPWB0bygke299KWA6bj9sPWBjb2xvci1zdG9wKCR7bn0sICR7b30pYDpsPWBjb2xvci1zdG9wKCR7b30pYDtsZXQgYz1zW3MubGVuZ3RoLTFdO2VbaV09W3t0eXBlOiJ3b3JkIix2YWx1ZTpsfV0sYy50eXBlPT09ImRpdiImJmMudmFsdWU9PT0iLCImJihhPWVbaV0ucHVzaChjKSksdC5wdXNoKGEpfXJldHVybiB0fW9sZChlKXtpZihlPT09Ii13ZWJraXQtIil7bGV0IHQ9dGhpcy5uYW1lPT09ImxpbmVhci1ncmFkaWVudCI/ImxpbmVhciI6InJhZGlhbCIsaT0iLWdyYWRpZW50IixuPXZSLnJlZ2V4cChgLXdlYmtpdC0oJHt0fS1ncmFkaWVudHxncmFkaWVudFxcKFxccyoke3R9KWAsITEpO3JldHVybiBuZXcgYlIodGhpcy5uYW1lLGUrdGhpcy5uYW1lLGksbil9ZWxzZSByZXR1cm4gc3VwZXIub2xkKGUpfWFkZChlLHQpe2xldCBpPWUucHJvcDtpZihpLmluY2x1ZGVzKCJtYXNrIikpe2lmKHQ9PT0iLXdlYmtpdC0ifHx0PT09Ii13ZWJraXQtIG9sZCIpcmV0dXJuIHN1cGVyLmFkZChlLHQpfWVsc2UgaWYoaT09PSJsaXN0LXN0eWxlInx8aT09PSJsaXN0LXN0eWxlLWltYWdlInx8aT09PSJjb250ZW50Iil7aWYodD09PSItd2Via2l0LSJ8fHQ9PT0iLXdlYmtpdC0gb2xkIilyZXR1cm4gc3VwZXIuYWRkKGUsdCl9ZWxzZSByZXR1cm4gc3VwZXIuYWRkKGUsdCl9fTt3dC5uYW1lcz1bImxpbmVhci1ncmFkaWVudCIsInJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQiLCJyYWRpYWwtZ3JhZGllbnQiLCJyZXBlYXRpbmctcmFkaWFsLWdyYWRpZW50Il07d3QuZGlyZWN0aW9ucz17dG9wOiJib3R0b20iLGxlZnQ6InJpZ2h0Iixib3R0b206InRvcCIscmlnaHQ6ImxlZnQifTt3dC5vbGREaXJlY3Rpb25zPXt0b3A6ImxlZnQgYm90dG9tLCBsZWZ0IHRvcCIsbGVmdDoicmlnaHQgdG9wLCBsZWZ0IHRvcCIsYm90dG9tOiJsZWZ0IHRvcCwgbGVmdCBib3R0b20iLHJpZ2h0OiJsZWZ0IHRvcCwgcmlnaHQgdG9wIiwidG9wIHJpZ2h0IjoibGVmdCBib3R0b20sIHJpZ2h0IHRvcCIsInRvcCBsZWZ0IjoicmlnaHQgYm90dG9tLCBsZWZ0IHRvcCIsInJpZ2h0IHRvcCI6ImxlZnQgYm90dG9tLCByaWdodCB0b3AiLCJyaWdodCBib3R0b20iOiJsZWZ0IHRvcCwgcmlnaHQgYm90dG9tIiwiYm90dG9tIHJpZ2h0IjoibGVmdCB0b3AsIHJpZ2h0IGJvdHRvbSIsImJvdHRvbSBsZWZ0IjoicmlnaHQgdG9wLCBsZWZ0IGJvdHRvbSIsImxlZnQgdG9wIjoicmlnaHQgYm90dG9tLCBsZWZ0IHRvcCIsImxlZnQgYm90dG9tIjoicmlnaHQgdG9wLCBsZWZ0IGJvdHRvbSJ9O3owLmV4cG9ydHM9d3R9KTt2YXIgVzA9eCgoeUwsSDApPT57dSgpO3ZhciB4Uj14cigpLGtSPUhlKCk7ZnVuY3Rpb24gVjAocil7cmV0dXJuIG5ldyBSZWdFeHAoYChefFtcXHMsKF0pKCR7cn0oJHxbXFxzKSxdKSlgLCJnaSIpfXZhciBYdT1jbGFzcyBleHRlbmRzIGtSe3JlZ2V4cCgpe3JldHVybiB0aGlzLnJlZ2V4cENhY2hlfHwodGhpcy5yZWdleHBDYWNoZT1WMCh0aGlzLm5hbWUpKSx0aGlzLnJlZ2V4cENhY2hlfWlzU3RyZXRjaCgpe3JldHVybiB0aGlzLm5hbWU9PT0ic3RyZXRjaCJ8fHRoaXMubmFtZT09PSJmaWxsInx8dGhpcy5uYW1lPT09ImZpbGwtYXZhaWxhYmxlIn1yZXBsYWNlKGUsdCl7cmV0dXJuIHQ9PT0iLW1vei0iJiZ0aGlzLmlzU3RyZXRjaCgpP2UucmVwbGFjZSh0aGlzLnJlZ2V4cCgpLCIkMS1tb3otYXZhaWxhYmxlJDMiKTp0PT09Ii13ZWJraXQtIiYmdGhpcy5pc1N0cmV0Y2goKT9lLnJlcGxhY2UodGhpcy5yZWdleHAoKSwiJDEtd2Via2l0LWZpbGwtYXZhaWxhYmxlJDMiKTpzdXBlci5yZXBsYWNlKGUsdCl9b2xkKGUpe2xldCB0PWUrdGhpcy5uYW1lO3JldHVybiB0aGlzLmlzU3RyZXRjaCgpJiYoZT09PSItbW96LSI/dD0iLW1vei1hdmFpbGFibGUiOmU9PT0iLXdlYmtpdC0iJiYodD0iLXdlYmtpdC1maWxsLWF2YWlsYWJsZSIpKSxuZXcgeFIodGhpcy5uYW1lLHQsdCxWMCh0KSl9YWRkKGUsdCl7aWYoIShlLnByb3AuaW5jbHVkZXMoImdyaWQiKSYmdCE9PSItd2Via2l0LSIpKXJldHVybiBzdXBlci5hZGQoZSx0KX19O1h1Lm5hbWVzPVsibWF4LWNvbnRlbnQiLCJtaW4tY29udGVudCIsImZpdC1jb250ZW50IiwiZmlsbCIsImZpbGwtYXZhaWxhYmxlIiwic3RyZXRjaCJdO0gwLmV4cG9ydHM9WHV9KTt2YXIgWTA9eCgoYkwsUTApPT57dSgpO3ZhciBHMD14cigpLFNSPUhlKCksWnU9Y2xhc3MgZXh0ZW5kcyBTUntyZXBsYWNlKGUsdCl7cmV0dXJuIHQ9PT0iLXdlYmtpdC0iP2UucmVwbGFjZSh0aGlzLnJlZ2V4cCgpLCIkMS13ZWJraXQtb3B0aW1pemUtY29udHJhc3QiKTp0PT09Ii1tb3otIj9lLnJlcGxhY2UodGhpcy5yZWdleHAoKSwiJDEtbW96LWNyaXNwLWVkZ2VzIik6c3VwZXIucmVwbGFjZShlLHQpfW9sZChlKXtyZXR1cm4gZT09PSItd2Via2l0LSI/bmV3IEcwKHRoaXMubmFtZSwiLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdCIpOmU9PT0iLW1vei0iP25ldyBHMCh0aGlzLm5hbWUsIi1tb3otY3Jpc3AtZWRnZXMiKTpzdXBlci5vbGQoZSl9fTtadS5uYW1lcz1bInBpeGVsYXRlZCJdO1EwLmV4cG9ydHM9WnV9KTt2YXIgWDA9eCgod0wsSzApPT57dSgpO3ZhciBBUj1IZSgpLEp1PWNsYXNzIGV4dGVuZHMgQVJ7cmVwbGFjZShlLHQpe2xldCBpPXN1cGVyLnJlcGxhY2UoZSx0KTtyZXR1cm4gdD09PSItd2Via2l0LSImJihpPWkucmVwbGFjZSgvKCJbXiJdKyJ8J1teJ10rJykoXHMrXGQrXHcpL2dpLCJ1cmwoJDEpJDIiKSksaX19O0p1Lm5hbWVzPVsiaW1hZ2Utc2V0Il07SzAuZXhwb3J0cz1KdX0pO3ZhciBKMD14KCh2TCxaMCk9Pnt1KCk7dmFyIENSPSRlKCkubGlzdCxfUj1IZSgpLGVmPWNsYXNzIGV4dGVuZHMgX1J7cmVwbGFjZShlLHQpe3JldHVybiBDUi5zcGFjZShlKS5tYXAoaT0+e2lmKGkuc2xpY2UoMCwrdGhpcy5uYW1lLmxlbmd0aCsxKSE9PXRoaXMubmFtZSsiKCIpcmV0dXJuIGk7bGV0IG49aS5sYXN0SW5kZXhPZigiKSIpLHM9aS5zbGljZShuKzEpLGE9aS5zbGljZSh0aGlzLm5hbWUubGVuZ3RoKzEsbik7aWYodD09PSItd2Via2l0LSIpe2xldCBvPWEubWF0Y2goL1xkKi4/XGQrJT8vKTtvPyhhPWEuc2xpY2Uob1swXS5sZW5ndGgpLnRyaW0oKSxhKz1gLCAke29bMF19YCk6YSs9IiwgMC41In1yZXR1cm4gdCt0aGlzLm5hbWUrIigiK2ErIikiK3N9KS5qb2luKCIgIil9fTtlZi5uYW1lcz1bImNyb3NzLWZhZGUiXTtaMC5leHBvcnRzPWVmfSk7dmFyIHR2PXgoKHhMLGV2KT0+e3UoKTt2YXIgRVI9UGUoKSxPUj14cigpLFRSPUhlKCksdGY9Y2xhc3MgZXh0ZW5kcyBUUntjb25zdHJ1Y3RvcihlLHQpe3N1cGVyKGUsdCk7ZT09PSJkaXNwbGF5LWZsZXgiJiYodGhpcy5uYW1lPSJmbGV4Iil9Y2hlY2soZSl7cmV0dXJuIGUucHJvcD09PSJkaXNwbGF5IiYmZS52YWx1ZT09PXRoaXMubmFtZX1wcmVmaXhlZChlKXtsZXQgdCxpO3JldHVyblt0LGVdPUVSKGUpLHQ9PT0yMDA5P3RoaXMubmFtZT09PSJmbGV4Ij9pPSJib3giOmk9ImlubGluZS1ib3giOnQ9PT0yMDEyP3RoaXMubmFtZT09PSJmbGV4Ij9pPSJmbGV4Ym94IjppPSJpbmxpbmUtZmxleGJveCI6dD09PSJmaW5hbCImJihpPXRoaXMubmFtZSksZStpfXJlcGxhY2UoZSx0KXtyZXR1cm4gdGhpcy5wcmVmaXhlZCh0KX1vbGQoZSl7bGV0IHQ9dGhpcy5wcmVmaXhlZChlKTtpZighIXQpcmV0dXJuIG5ldyBPUih0aGlzLm5hbWUsdCl9fTt0Zi5uYW1lcz1bImRpc3BsYXktZmxleCIsImlubGluZS1mbGV4Il07ZXYuZXhwb3J0cz10Zn0pO3ZhciBpdj14KChrTCxydik9Pnt1KCk7dmFyIFJSPUhlKCkscmY9Y2xhc3MgZXh0ZW5kcyBSUntjb25zdHJ1Y3RvcihlLHQpe3N1cGVyKGUsdCk7ZT09PSJkaXNwbGF5LWdyaWQiJiYodGhpcy5uYW1lPSJncmlkIil9Y2hlY2soZSl7cmV0dXJuIGUucHJvcD09PSJkaXNwbGF5IiYmZS52YWx1ZT09PXRoaXMubmFtZX19O3JmLm5hbWVzPVsiZGlzcGxheS1ncmlkIiwiaW5saW5lLWdyaWQiXTtydi5leHBvcnRzPXJmfSk7dmFyIHN2PXgoKFNMLG52KT0+e3UoKTt2YXIgUFI9SGUoKSxuZj1jbGFzcyBleHRlbmRzIFBSe2NvbnN0cnVjdG9yKGUsdCl7c3VwZXIoZSx0KTtlPT09ImZpbHRlci1mdW5jdGlvbiImJih0aGlzLm5hbWU9ImZpbHRlciIpfX07bmYubmFtZXM9WyJmaWx0ZXIiLCJmaWx0ZXItZnVuY3Rpb24iXTtudi5leHBvcnRzPW5mfSk7dmFyIHV2PXgoKEFMLGx2KT0+e3UoKTt2YXIgYXY9TmkoKSx6PWooKSxvdj16eSgpLElSPWFiKCksRFI9b3UoKSxxUj1DYigpLHNmPU10KCksUHI9a3IoKSwkUj1EYigpLHV0PUhlKCksSXI9X2UoKSxMUj0kYigpLE1SPU1iKCksTlI9QmIoKSxCUj1qYigpLEZSPVdiKCksalI9WWIoKSx6Uj1YYigpLFVSPUpiKCksVlI9dHcoKSxIUj1pdygpLFdSPXN3KCksR1I9b3coKSxRUj11dygpLFlSPWN3KCksS1I9ZHcoKSxYUj1ndygpLFpSPWJ3KCksSlI9eHcoKSxlNT1TdygpLHQ1PUN3KCkscjU9T3coKSxpNT1SdygpLG41PUR3KCksczU9JHcoKSxhNT1NdygpLG81PUJ3KCksbDU9ancoKSx1NT1WdygpLGY1PVd3KCksYzU9UXcoKSxwNT1LdygpLGQ1PVp3KCksaDU9ZTAoKSxtNT1yMCgpLGc1PXMwKCkseTU9bzAoKSxiNT11MCgpLHc1PWMwKCksdjU9ZDAoKSx4NT1nMCgpLGs1PWIwKCksUzU9djAoKSxBNT1TMCgpLEM1PUMwKCksXzU9RTAoKSxFNT1SMCgpLE81PUkwKCksVDU9cTAoKSxSNT1VMCgpLFA1PVcwKCksSTU9WTAoKSxENT1YMCgpLHE1PUowKCksJDU9dHYoKSxMNT1pdigpLE01PXN2KCk7UHIuaGFjayhMUik7UHIuaGFjayhNUik7UHIuaGFjayhOUik7UHIuaGFjayhCUik7ei5oYWNrKEZSKTt6LmhhY2soalIpO3ouaGFjayh6Uik7ei5oYWNrKFVSKTt6LmhhY2soVlIpO3ouaGFjayhIUik7ei5oYWNrKFdSKTt6LmhhY2soR1IpO3ouaGFjayhRUik7ei5oYWNrKFlSKTt6LmhhY2soS1IpO3ouaGFjayhYUik7ei5oYWNrKFpSKTt6LmhhY2soSlIpO3ouaGFjayhlNSk7ei5oYWNrKHQ1KTt6LmhhY2socjUpO3ouaGFjayhpNSk7ei5oYWNrKG41KTt6LmhhY2soczUpO3ouaGFjayhhNSk7ei5oYWNrKG81KTt6LmhhY2sobDUpO3ouaGFjayh1NSk7ei5oYWNrKGY1KTt6LmhhY2soYzUpO3ouaGFjayhwNSk7ei5oYWNrKGQ1KTt6LmhhY2soaDUpO3ouaGFjayhtNSk7ei5oYWNrKGc1KTt6LmhhY2soeTUpO3ouaGFjayhiNSk7ei5oYWNrKHc1KTt6LmhhY2sodjUpO3ouaGFjayh4NSk7ei5oYWNrKGs1KTt6LmhhY2soUzUpO3ouaGFjayhBNSk7ei5oYWNrKEM1KTt6LmhhY2soXzUpO3ouaGFjayhFNSk7ei5oYWNrKE81KTt6LmhhY2soVDUpO3V0LmhhY2soUjUpO3V0LmhhY2soUDUpO3V0LmhhY2soSTUpO3V0LmhhY2soRDUpO3V0LmhhY2socTUpO3V0LmhhY2soJDUpO3V0LmhhY2soTDUpO3V0LmhhY2soTTUpO3ZhciBhZj1uZXcgTWFwLEZpPWNsYXNze2NvbnN0cnVjdG9yKGUsdCxpPXt9KXt0aGlzLmRhdGE9ZSx0aGlzLmJyb3dzZXJzPXQsdGhpcy5vcHRpb25zPWksW3RoaXMuYWRkLHRoaXMucmVtb3ZlXT10aGlzLnByZXByb2Nlc3ModGhpcy5zZWxlY3QodGhpcy5kYXRhKSksdGhpcy50cmFuc2l0aW9uPW5ldyBJUih0aGlzKSx0aGlzLnByb2Nlc3Nvcj1uZXcgRFIodGhpcyl9Y2xlYW5lcigpe2lmKHRoaXMuY2xlYW5lckNhY2hlKXJldHVybiB0aGlzLmNsZWFuZXJDYWNoZTtpZih0aGlzLmJyb3dzZXJzLnNlbGVjdGVkLmxlbmd0aCl7bGV0IGU9bmV3IHNmKHRoaXMuYnJvd3NlcnMuZGF0YSxbXSk7dGhpcy5jbGVhbmVyQ2FjaGU9bmV3IEZpKHRoaXMuZGF0YSxlLHRoaXMub3B0aW9ucyl9ZWxzZSByZXR1cm4gdGhpcztyZXR1cm4gdGhpcy5jbGVhbmVyQ2FjaGV9c2VsZWN0KGUpe2xldCB0PXthZGQ6e30scmVtb3ZlOnt9fTtmb3IobGV0IGkgaW4gZSl7bGV0IG49ZVtpXSxzPW4uYnJvd3NlcnMubWFwKGw9PntsZXQgYz1sLnNwbGl0KCIgIik7cmV0dXJue2Jyb3dzZXI6YCR7Y1swXX0gJHtjWzFdfWAsbm90ZTpjWzJdfX0pLGE9cy5maWx0ZXIobD0+bC5ub3RlKS5tYXAobD0+YCR7dGhpcy5icm93c2Vycy5wcmVmaXgobC5icm93c2VyKX0gJHtsLm5vdGV9YCk7YT1Jci51bmlxKGEpLHM9cy5maWx0ZXIobD0+dGhpcy5icm93c2Vycy5pc1NlbGVjdGVkKGwuYnJvd3NlcikpLm1hcChsPT57bGV0IGM9dGhpcy5icm93c2Vycy5wcmVmaXgobC5icm93c2VyKTtyZXR1cm4gbC5ub3RlP2Ake2N9ICR7bC5ub3RlfWA6Y30pLHM9dGhpcy5zb3J0KElyLnVuaXEocykpLHRoaXMub3B0aW9ucy5mbGV4Ym94PT09Im5vLTIwMDkiJiYocz1zLmZpbHRlcihsPT4hbC5pbmNsdWRlcygiMjAwOSIpKSk7bGV0IG89bi5icm93c2Vycy5tYXAobD0+dGhpcy5icm93c2Vycy5wcmVmaXgobCkpO24ubWlzdGFrZXMmJihvPW8uY29uY2F0KG4ubWlzdGFrZXMpKSxvPW8uY29uY2F0KGEpLG89SXIudW5pcShvKSxzLmxlbmd0aD8odC5hZGRbaV09cyxzLmxlbmd0aDxvLmxlbmd0aCYmKHQucmVtb3ZlW2ldPW8uZmlsdGVyKGw9PiFzLmluY2x1ZGVzKGwpKSkpOnQucmVtb3ZlW2ldPW99cmV0dXJuIHR9c29ydChlKXtyZXR1cm4gZS5zb3J0KCh0LGkpPT57bGV0IG49SXIucmVtb3ZlTm90ZSh0KS5sZW5ndGgscz1Jci5yZW1vdmVOb3RlKGkpLmxlbmd0aDtyZXR1cm4gbj09PXM/aS5sZW5ndGgtdC5sZW5ndGg6cy1ufSl9cHJlcHJvY2VzcyhlKXtsZXQgdD17c2VsZWN0b3JzOltdLCJAc3VwcG9ydHMiOm5ldyBxUihGaSx0aGlzKX07Zm9yKGxldCBuIGluIGUuYWRkKXtsZXQgcz1lLmFkZFtuXTtpZihuPT09IkBrZXlmcmFtZXMifHxuPT09IkB2aWV3cG9ydCIpdFtuXT1uZXcgJFIobixzLHRoaXMpO2Vsc2UgaWYobj09PSJAcmVzb2x1dGlvbiIpdFtuXT1uZXcgb3YobixzLHRoaXMpO2Vsc2UgaWYodGhpcy5kYXRhW25dLnNlbGVjdG9yKXQuc2VsZWN0b3JzLnB1c2goUHIubG9hZChuLHMsdGhpcykpO2Vsc2V7bGV0IGE9dGhpcy5kYXRhW25dLnByb3BzO2lmKGEpe2xldCBvPXV0LmxvYWQobixzLHRoaXMpO2ZvcihsZXQgbCBvZiBhKXRbbF18fCh0W2xdPXt2YWx1ZXM6W119KSx0W2xdLnZhbHVlcy5wdXNoKG8pfWVsc2V7bGV0IG89dFtuXSYmdFtuXS52YWx1ZXN8fFtdO3Rbbl09ei5sb2FkKG4scyx0aGlzKSx0W25dLnZhbHVlcz1vfX19bGV0IGk9e3NlbGVjdG9yczpbXX07Zm9yKGxldCBuIGluIGUucmVtb3ZlKXtsZXQgcz1lLnJlbW92ZVtuXTtpZih0aGlzLmRhdGFbbl0uc2VsZWN0b3Ipe2xldCBhPVByLmxvYWQobixzKTtmb3IobGV0IG8gb2YgcylpLnNlbGVjdG9ycy5wdXNoKGEub2xkKG8pKX1lbHNlIGlmKG49PT0iQGtleWZyYW1lcyJ8fG49PT0iQHZpZXdwb3J0Iilmb3IobGV0IGEgb2Ygcyl7bGV0IG89YEAke2F9JHtuLnNsaWNlKDEpfWA7aVtvXT17cmVtb3ZlOiEwfX1lbHNlIGlmKG49PT0iQHJlc29sdXRpb24iKWlbbl09bmV3IG92KG4scyx0aGlzKTtlbHNle2xldCBhPXRoaXMuZGF0YVtuXS5wcm9wcztpZihhKXtsZXQgbz11dC5sb2FkKG4sW10sdGhpcyk7Zm9yKGxldCBsIG9mIHMpe2xldCBjPW8ub2xkKGwpO2lmKGMpZm9yKGxldCBmIG9mIGEpaVtmXXx8KGlbZl09e30pLGlbZl0udmFsdWVzfHwoaVtmXS52YWx1ZXM9W10pLGlbZl0udmFsdWVzLnB1c2goYyl9fWVsc2UgZm9yKGxldCBvIG9mIHMpe2xldCBsPXRoaXMuZGVjbChuKS5vbGQobixvKTtpZihuPT09ImFsaWduLXNlbGYiKXtsZXQgYz10W25dJiZ0W25dLnByZWZpeGVzO2lmKGMpe2lmKG89PT0iLXdlYmtpdC0gMjAwOSImJmMuaW5jbHVkZXMoIi13ZWJraXQtIikpY29udGludWU7aWYobz09PSItd2Via2l0LSImJmMuaW5jbHVkZXMoIi13ZWJraXQtIDIwMDkiKSljb250aW51ZX19Zm9yKGxldCBjIG9mIGwpaVtjXXx8KGlbY109e30pLGlbY10ucmVtb3ZlPSEwfX19cmV0dXJuW3QsaV19ZGVjbChlKXtyZXR1cm4gYWYuaGFzKGUpfHxhZi5zZXQoZSx6LmxvYWQoZSkpLGFmLmdldChlKX11bnByZWZpeGVkKGUpe2xldCB0PXRoaXMubm9ybWFsaXplKGF2LnVucHJlZml4ZWQoZSkpO3JldHVybiB0PT09ImZsZXgtZGlyZWN0aW9uIiYmKHQ9ImZsZXgtZmxvdyIpLHR9bm9ybWFsaXplKGUpe3JldHVybiB0aGlzLmRlY2woZSkubm9ybWFsaXplKGUpfXByZWZpeGVkKGUsdCl7cmV0dXJuIGU9YXYudW5wcmVmaXhlZChlKSx0aGlzLmRlY2woZSkucHJlZml4ZWQoZSx0KX12YWx1ZXMoZSx0KXtsZXQgaT10aGlzW2VdLG49aVsiKiJdJiZpWyIqIl0udmFsdWVzLHM9aVt0XSYmaVt0XS52YWx1ZXM7cmV0dXJuIG4mJnM/SXIudW5pcShuLmNvbmNhdChzKSk6bnx8c3x8W119Z3JvdXAoZSl7bGV0IHQ9ZS5wYXJlbnQsaT10LmluZGV4KGUpLHtsZW5ndGg6bn09dC5ub2RlcyxzPXRoaXMudW5wcmVmaXhlZChlLnByb3ApLGE9KG8sbCk9Pntmb3IoaSs9bztpPj0wJiZpPG47KXtsZXQgYz10Lm5vZGVzW2ldO2lmKGMudHlwZT09PSJkZWNsIil7aWYobz09PS0xJiZjLnByb3A9PT1zJiYhc2Yud2l0aFByZWZpeChjLnZhbHVlKXx8dGhpcy51bnByZWZpeGVkKGMucHJvcCkhPT1zKWJyZWFrO2lmKGwoYyk9PT0hMClyZXR1cm4hMDtpZihvPT09MSYmYy5wcm9wPT09cyYmIXNmLndpdGhQcmVmaXgoYy52YWx1ZSkpYnJlYWt9aSs9b31yZXR1cm4hMX07cmV0dXJue3VwKG8pe3JldHVybiBhKC0xLG8pfSxkb3duKG8pe3JldHVybiBhKDEsbyl9fX19O2x2LmV4cG9ydHM9Rml9KTt2YXIgY3Y9eCgoQ0wsZnYpPT57dSgpO2Z2LmV4cG9ydHM9eyJiYWNrZHJvcC1maWx0ZXIiOntmZWF0dXJlOiJjc3MtYmFja2Ryb3AtZmlsdGVyIixicm93c2VyczpbImlvc19zYWYgMTYuMSIsImlvc19zYWYgMTYuMyIsImlvc19zYWYgMTYuNCIsImlvc19zYWYgMTYuNSIsInNhZmFyaSAxNi41Il19LGVsZW1lbnQ6e3Byb3BzOlsiYmFja2dyb3VuZCIsImJhY2tncm91bmQtaW1hZ2UiLCJib3JkZXItaW1hZ2UiLCJtYXNrIiwibGlzdC1zdHlsZSIsImxpc3Qtc3R5bGUtaW1hZ2UiLCJjb250ZW50IiwibWFzay1pbWFnZSJdLGZlYXR1cmU6ImNzcy1lbGVtZW50LWZ1bmN0aW9uIixicm93c2VyczpbImZpcmVmb3ggMTE0Il19LCJ1c2VyLXNlbGVjdCI6e21pc3Rha2VzOlsiLWtodG1sLSJdLGZlYXR1cmU6InVzZXItc2VsZWN0LW5vbmUiLGJyb3dzZXJzOlsiaW9zX3NhZiAxNi4xIiwiaW9zX3NhZiAxNi4zIiwiaW9zX3NhZiAxNi40IiwiaW9zX3NhZiAxNi41Iiwic2FmYXJpIDE2LjUiXX0sImJhY2tncm91bmQtY2xpcCI6e2ZlYXR1cmU6ImJhY2tncm91bmQtY2xpcC10ZXh0Iixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSxoeXBoZW5zOntmZWF0dXJlOiJjc3MtaHlwaGVucyIsYnJvd3NlcnM6WyJpb3Nfc2FmIDE2LjEiLCJpb3Nfc2FmIDE2LjMiLCJpb3Nfc2FmIDE2LjQiLCJpb3Nfc2FmIDE2LjUiLCJzYWZhcmkgMTYuNSJdfSxmaWxsOntwcm9wczpbIndpZHRoIiwibWluLXdpZHRoIiwibWF4LXdpZHRoIiwiaGVpZ2h0IiwibWluLWhlaWdodCIsIm1heC1oZWlnaHQiLCJpbmxpbmUtc2l6ZSIsIm1pbi1pbmxpbmUtc2l6ZSIsIm1heC1pbmxpbmUtc2l6ZSIsImJsb2NrLXNpemUiLCJtaW4tYmxvY2stc2l6ZSIsIm1heC1ibG9jay1zaXplIiwiZ3JpZCIsImdyaWQtdGVtcGxhdGUiLCJncmlkLXRlbXBsYXRlLXJvd3MiLCJncmlkLXRlbXBsYXRlLWNvbHVtbnMiLCJncmlkLWF1dG8tY29sdW1ucyIsImdyaWQtYXV0by1yb3dzIl0sZmVhdHVyZToiaW50cmluc2ljLXdpZHRoIixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSwiZmlsbC1hdmFpbGFibGUiOntwcm9wczpbIndpZHRoIiwibWluLXdpZHRoIiwibWF4LXdpZHRoIiwiaGVpZ2h0IiwibWluLWhlaWdodCIsIm1heC1oZWlnaHQiLCJpbmxpbmUtc2l6ZSIsIm1pbi1pbmxpbmUtc2l6ZSIsIm1heC1pbmxpbmUtc2l6ZSIsImJsb2NrLXNpemUiLCJtaW4tYmxvY2stc2l6ZSIsIm1heC1ibG9jay1zaXplIiwiZ3JpZCIsImdyaWQtdGVtcGxhdGUiLCJncmlkLXRlbXBsYXRlLXJvd3MiLCJncmlkLXRlbXBsYXRlLWNvbHVtbnMiLCJncmlkLWF1dG8tY29sdW1ucyIsImdyaWQtYXV0by1yb3dzIl0sZmVhdHVyZToiaW50cmluc2ljLXdpZHRoIixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSxzdHJldGNoOntwcm9wczpbIndpZHRoIiwibWluLXdpZHRoIiwibWF4LXdpZHRoIiwiaGVpZ2h0IiwibWluLWhlaWdodCIsIm1heC1oZWlnaHQiLCJpbmxpbmUtc2l6ZSIsIm1pbi1pbmxpbmUtc2l6ZSIsIm1heC1pbmxpbmUtc2l6ZSIsImJsb2NrLXNpemUiLCJtaW4tYmxvY2stc2l6ZSIsIm1heC1ibG9jay1zaXplIiwiZ3JpZCIsImdyaWQtdGVtcGxhdGUiLCJncmlkLXRlbXBsYXRlLXJvd3MiLCJncmlkLXRlbXBsYXRlLWNvbHVtbnMiLCJncmlkLWF1dG8tY29sdW1ucyIsImdyaWQtYXV0by1yb3dzIl0sZmVhdHVyZToiaW50cmluc2ljLXdpZHRoIixicm93c2VyczpbImZpcmVmb3ggMTE0Il19LCJmaXQtY29udGVudCI6e3Byb3BzOlsid2lkdGgiLCJtaW4td2lkdGgiLCJtYXgtd2lkdGgiLCJoZWlnaHQiLCJtaW4taGVpZ2h0IiwibWF4LWhlaWdodCIsImlubGluZS1zaXplIiwibWluLWlubGluZS1zaXplIiwibWF4LWlubGluZS1zaXplIiwiYmxvY2stc2l6ZSIsIm1pbi1ibG9jay1zaXplIiwibWF4LWJsb2NrLXNpemUiLCJncmlkIiwiZ3JpZC10ZW1wbGF0ZSIsImdyaWQtdGVtcGxhdGUtcm93cyIsImdyaWQtdGVtcGxhdGUtY29sdW1ucyIsImdyaWQtYXV0by1jb2x1bW5zIiwiZ3JpZC1hdXRvLXJvd3MiXSxmZWF0dXJlOiJpbnRyaW5zaWMtd2lkdGgiLGJyb3dzZXJzOlsiZmlyZWZveCAxMTQiXX0sInRleHQtZGVjb3JhdGlvbi1zdHlsZSI6e2ZlYXR1cmU6InRleHQtZGVjb3JhdGlvbiIsYnJvd3NlcnM6WyJpb3Nfc2FmIDE2LjEiLCJpb3Nfc2FmIDE2LjMiLCJpb3Nfc2FmIDE2LjQiLCJpb3Nfc2FmIDE2LjUiXX0sInRleHQtZGVjb3JhdGlvbi1jb2xvciI6e2ZlYXR1cmU6InRleHQtZGVjb3JhdGlvbiIsYnJvd3NlcnM6WyJpb3Nfc2FmIDE2LjEiLCJpb3Nfc2FmIDE2LjMiLCJpb3Nfc2FmIDE2LjQiLCJpb3Nfc2FmIDE2LjUiXX0sInRleHQtZGVjb3JhdGlvbi1saW5lIjp7ZmVhdHVyZToidGV4dC1kZWNvcmF0aW9uIixicm93c2VyczpbImlvc19zYWYgMTYuMSIsImlvc19zYWYgMTYuMyIsImlvc19zYWYgMTYuNCIsImlvc19zYWYgMTYuNSJdfSwidGV4dC1kZWNvcmF0aW9uIjp7ZmVhdHVyZToidGV4dC1kZWNvcmF0aW9uIixicm93c2VyczpbImlvc19zYWYgMTYuMSIsImlvc19zYWYgMTYuMyIsImlvc19zYWYgMTYuNCIsImlvc19zYWYgMTYuNSJdfSwidGV4dC1kZWNvcmF0aW9uLXNraXAiOntmZWF0dXJlOiJ0ZXh0LWRlY29yYXRpb24iLGJyb3dzZXJzOlsiaW9zX3NhZiAxNi4xIiwiaW9zX3NhZiAxNi4zIiwiaW9zX3NhZiAxNi40IiwiaW9zX3NhZiAxNi41Il19LCJ0ZXh0LWRlY29yYXRpb24tc2tpcC1pbmsiOntmZWF0dXJlOiJ0ZXh0LWRlY29yYXRpb24iLGJyb3dzZXJzOlsiaW9zX3NhZiAxNi4xIiwiaW9zX3NhZiAxNi4zIiwiaW9zX3NhZiAxNi40IiwiaW9zX3NhZiAxNi41Il19LCJ0ZXh0LXNpemUtYWRqdXN0Ijp7ZmVhdHVyZToidGV4dC1zaXplLWFkanVzdCIsYnJvd3NlcnM6WyJpb3Nfc2FmIDE2LjEiLCJpb3Nfc2FmIDE2LjMiLCJpb3Nfc2FmIDE2LjQiLCJpb3Nfc2FmIDE2LjUiXX0sIm1hc2stY2xpcCI6e2ZlYXR1cmU6ImNzcy1tYXNrcyIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0sIm1hc2stY29tcG9zaXRlIjp7ZmVhdHVyZToiY3NzLW1hc2tzIixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSwibWFzay1pbWFnZSI6e2ZlYXR1cmU6ImNzcy1tYXNrcyIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0sIm1hc2stb3JpZ2luIjp7ZmVhdHVyZToiY3NzLW1hc2tzIixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSwibWFzay1yZXBlYXQiOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LCJtYXNrLWJvcmRlci1yZXBlYXQiOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LCJtYXNrLWJvcmRlci1zb3VyY2UiOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LG1hc2s6e2ZlYXR1cmU6ImNzcy1tYXNrcyIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0sIm1hc2stcG9zaXRpb24iOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LCJtYXNrLXNpemUiOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LCJtYXNrLWJvcmRlciI6e2ZlYXR1cmU6ImNzcy1tYXNrcyIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0sIm1hc2stYm9yZGVyLW91dHNldCI6e2ZlYXR1cmU6ImNzcy1tYXNrcyIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0sIm1hc2stYm9yZGVyLXdpZHRoIjp7ZmVhdHVyZToiY3NzLW1hc2tzIixicm93c2VyczpbImFuZF9jaHIgMTE0IiwiYW5kX3VjIDE1LjUiLCJjaHJvbWUgMTA5IiwiY2hyb21lIDExMyIsImNocm9tZSAxMTQiLCJlZGdlIDExNCIsIm9wZXJhIDk5Iiwic2Ftc3VuZyAyMSJdfSwibWFzay1ib3JkZXItc2xpY2UiOntmZWF0dXJlOiJjc3MtbWFza3MiLGJyb3dzZXJzOlsiYW5kX2NociAxMTQiLCJhbmRfdWMgMTUuNSIsImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiLCJzYW1zdW5nIDIxIl19LCJjbGlwLXBhdGgiOntmZWF0dXJlOiJjc3MtY2xpcC1wYXRoIixicm93c2VyczpbInNhbXN1bmcgMjEiXX0sImJveC1kZWNvcmF0aW9uLWJyZWFrIjp7ZmVhdHVyZToiY3NzLWJveGRlY29yYXRpb25icmVhayIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJpb3Nfc2FmIDE2LjEiLCJpb3Nfc2FmIDE2LjMiLCJpb3Nfc2FmIDE2LjQiLCJpb3Nfc2FmIDE2LjUiLCJvcGVyYSA5OSIsInNhZmFyaSAxNi41Iiwic2Ftc3VuZyAyMSJdfSxhcHBlYXJhbmNlOntmZWF0dXJlOiJjc3MtYXBwZWFyYW5jZSIsYnJvd3NlcnM6WyJzYW1zdW5nIDIxIl19LCJpbWFnZS1zZXQiOntwcm9wczpbImJhY2tncm91bmQiLCJiYWNrZ3JvdW5kLWltYWdlIiwiYm9yZGVyLWltYWdlIiwiY3Vyc29yIiwibWFzayIsIm1hc2staW1hZ2UiLCJsaXN0LXN0eWxlIiwibGlzdC1zdHlsZS1pbWFnZSIsImNvbnRlbnQiXSxmZWF0dXJlOiJjc3MtaW1hZ2Utc2V0Iixicm93c2VyczpbImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsInNhbXN1bmcgMjEiXX0sImNyb3NzLWZhZGUiOntwcm9wczpbImJhY2tncm91bmQiLCJiYWNrZ3JvdW5kLWltYWdlIiwiYm9yZGVyLWltYWdlIiwibWFzayIsImxpc3Qtc3R5bGUiLCJsaXN0LXN0eWxlLWltYWdlIiwiY29udGVudCIsIm1hc2staW1hZ2UiXSxmZWF0dXJlOiJjc3MtY3Jvc3MtZmFkZSIsYnJvd3NlcnM6WyJhbmRfY2hyIDExNCIsImFuZF91YyAxNS41IiwiY2hyb21lIDEwOSIsImNocm9tZSAxMTMiLCJjaHJvbWUgMTE0IiwiZWRnZSAxMTQiLCJvcGVyYSA5OSIsInNhbXN1bmcgMjEiXX0saXNvbGF0ZTp7cHJvcHM6WyJ1bmljb2RlLWJpZGkiXSxmZWF0dXJlOiJjc3MtdW5pY29kZS1iaWRpIixicm93c2VyczpbImlvc19zYWYgMTYuMSIsImlvc19zYWYgMTYuMyIsImlvc19zYWYgMTYuNCIsImlvc19zYWYgMTYuNSIsInNhZmFyaSAxNi41Il19LCJjb2xvci1hZGp1c3QiOntmZWF0dXJlOiJjc3MtY29sb3ItYWRqdXN0Iixicm93c2VyczpbImNocm9tZSAxMDkiLCJjaHJvbWUgMTEzIiwiY2hyb21lIDExNCIsImVkZ2UgMTE0Iiwib3BlcmEgOTkiXX19fSk7dmFyIGR2PXgoKF9MLHB2KT0+e3UoKTtwdi5leHBvcnRzPXt9fSk7dmFyIHl2PXgoKEVMLGd2KT0+e3UoKTt2YXIgTjU9WWwoKSx7YWdlbnRzOkI1fT0oUHMoKSxScyksb2Y9T3koKSxGNT1NdCgpLGo1PXV2KCksejU9Y3YoKSxVNT1kdigpLGh2PXticm93c2VyczpCNSxwcmVmaXhlczp6NX0sbXY9YAogIFJlcGxhY2UgQXV0b3ByZWZpeGVyIFxgYnJvd3NlcnNcYCBvcHRpb24gdG8gQnJvd3NlcnNsaXN0IGNvbmZpZy4KICBVc2UgXGBicm93c2Vyc2xpc3RcYCBrZXkgaW4gXGBwYWNrYWdlLmpzb25cYCBvciBcYC5icm93c2Vyc2xpc3RyY1xgIGZpbGUuCgogIFVzaW5nIFxgYnJvd3NlcnNcYCBvcHRpb24gY2FuIGNhdXNlIGVycm9ycy4gQnJvd3NlcnNsaXN0IGNvbmZpZyBjYW4KICBiZSB1c2VkIGZvciBCYWJlbCwgQXV0b3ByZWZpeGVyLCBwb3N0Y3NzLW5vcm1hbGl6ZSBhbmQgb3RoZXIgdG9vbHMuCgogIElmIHlvdSByZWFsbHkgbmVlZCB0byB1c2Ugb3B0aW9uLCByZW5hbWUgaXQgdG8gXGBvdmVycmlkZUJyb3dzZXJzbGlzdFxgLgoKICBMZWFybiBtb3JlIGF0OgogIGh0dHBzOi8vZ2l0aHViLmNvbS9icm93c2Vyc2xpc3QvYnJvd3NlcnNsaXN0I3JlYWRtZQogIGh0dHBzOi8vdHdpdHRlci5jb20vYnJvd3NlcnNsaXN0CgpgO2Z1bmN0aW9uIFY1KHIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KHIpPT09IltvYmplY3QgT2JqZWN0XSJ9dmFyIGxmPW5ldyBNYXA7ZnVuY3Rpb24gSDUocixlKXtlLmJyb3dzZXJzLnNlbGVjdGVkLmxlbmd0aCE9PTAmJihlLmFkZC5zZWxlY3RvcnMubGVuZ3RoPjB8fE9iamVjdC5rZXlzKGUuYWRkKS5sZW5ndGg+Mnx8ci53YXJuKGBBdXRvcHJlZml4ZXIgdGFyZ2V0IGJyb3dzZXJzIGRvIG5vdCBuZWVkIGFueSBwcmVmaXhlcy5Zb3UgZG8gbm90IG5lZWQgQXV0b3ByZWZpeGVyIGFueW1vcmUuCkNoZWNrIHlvdXIgQnJvd3NlcnNsaXN0IGNvbmZpZyB0byBiZSBzdXJlIHRoYXQgeW91ciB0YXJnZXRzIGFyZSBzZXQgdXAgY29ycmVjdGx5LgoKICBMZWFybiBtb3JlIGF0OgogIGh0dHBzOi8vZ2l0aHViLmNvbS9wb3N0Y3NzL2F1dG9wcmVmaXhlciNyZWFkbWUKICBodHRwczovL2dpdGh1Yi5jb20vYnJvd3NlcnNsaXN0L2Jyb3dzZXJzbGlzdCNyZWFkbWUKCmApKX1ndi5leHBvcnRzPURyO2Z1bmN0aW9uIERyKC4uLnIpe2xldCBlO2lmKHIubGVuZ3RoPT09MSYmVjUoclswXSk/KGU9clswXSxyPXZvaWQgMCk6ci5sZW5ndGg9PT0wfHxyLmxlbmd0aD09PTEmJiFyWzBdP3I9dm9pZCAwOnIubGVuZ3RoPD0yJiYoQXJyYXkuaXNBcnJheShyWzBdKXx8IXJbMF0pPyhlPXJbMV0scj1yWzBdKTp0eXBlb2YgcltyLmxlbmd0aC0xXT09Im9iamVjdCImJihlPXIucG9wKCkpLGV8fChlPXt9KSxlLmJyb3dzZXIpdGhyb3cgbmV3IEVycm9yKCJDaGFuZ2UgYGJyb3dzZXJgIG9wdGlvbiB0byBgb3ZlcnJpZGVCcm93c2Vyc2xpc3RgIGluIEF1dG9wcmVmaXhlciIpO2lmKGUuYnJvd3NlcnNsaXN0KXRocm93IG5ldyBFcnJvcigiQ2hhbmdlIGBicm93c2Vyc2xpc3RgIG9wdGlvbiB0byBgb3ZlcnJpZGVCcm93c2Vyc2xpc3RgIGluIEF1dG9wcmVmaXhlciIpO2Uub3ZlcnJpZGVCcm93c2Vyc2xpc3Q/cj1lLm92ZXJyaWRlQnJvd3NlcnNsaXN0OmUuYnJvd3NlcnMmJih0eXBlb2YgY29uc29sZSE9InVuZGVmaW5lZCImJmNvbnNvbGUud2FybiYmKG9mLnJlZD9jb25zb2xlLndhcm4ob2YucmVkKG12LnJlcGxhY2UoL2BbXmBdK2AvZyxuPT5vZi55ZWxsb3cobi5zbGljZSgxLC0xKSkpKSk6Y29uc29sZS53YXJuKG12KSkscj1lLmJyb3dzZXJzKTtsZXQgdD17aWdub3JlVW5rbm93blZlcnNpb25zOmUuaWdub3JlVW5rbm93blZlcnNpb25zLHN0YXRzOmUuc3RhdHMsZW52OmUuZW52fTtmdW5jdGlvbiBpKG4pe2xldCBzPWh2LGE9bmV3IEY1KHMuYnJvd3NlcnMscixuLHQpLG89YS5zZWxlY3RlZC5qb2luKCIsICIpK0pTT04uc3RyaW5naWZ5KGUpO3JldHVybiBsZi5oYXMobyl8fGxmLnNldChvLG5ldyBqNShzLnByZWZpeGVzLGEsZSkpLGxmLmdldChvKX1yZXR1cm57cG9zdGNzc1BsdWdpbjoiYXV0b3ByZWZpeGVyIixwcmVwYXJlKG4pe2xldCBzPWkoe2Zyb206bi5vcHRzLmZyb20sZW52OmUuZW52fSk7cmV0dXJue09uY2VFeGl0KGEpe0g1KG4scyksZS5yZW1vdmUhPT0hMSYmcy5wcm9jZXNzb3IucmVtb3ZlKGEsbiksZS5hZGQhPT0hMSYmcy5wcm9jZXNzb3IuYWRkKGEsbil9fX0saW5mbyhuKXtyZXR1cm4gbj1ufHx7fSxuLmZyb209bi5mcm9tfHxtLmN3ZCgpLFU1KGkobikpfSxvcHRpb25zOmUsYnJvd3NlcnM6cn19RHIucG9zdGNzcz0hMDtEci5kYXRhPWh2O0RyLmRlZmF1bHRzPU41LmRlZmF1bHRzO0RyLmluZm89KCk9PkRyKCkuaW5mbygpfSk7dmFyIGJ2PXt9O0dlKGJ2LHtkZWZhdWx0OigpPT5XNX0pO3ZhciBXNSx3dj1QKCgpPT57dSgpO1c1PVtdfSk7dmFyIHh2PXt9O0dlKHh2LHtkZWZhdWx0OigpPT5HNX0pO3ZhciB2dixHNSxrdj1QKCgpPT57dSgpO1hpKCk7dnY9cGUocm4oKSksRzU9U3QodnYuZGVmYXVsdC50aGVtZSl9KTt2YXIgQXY9e307R2UoQXYse2RlZmF1bHQ6KCk9PlE1fSk7dmFyIFN2LFE1LEN2PVAoKCk9Pnt1KCk7WGkoKTtTdj1wZShybigpKSxRNT1TdChTdi5kZWZhdWx0KX0pO3UoKTsidXNlIHN0cmljdCI7dmFyIFk1PXZ0KF95KCkpLEs1PXZ0KCRlKCkpLFg1PXZ0KHl2KCkpLFo1PXZ0KCh3digpLGJ2KSksSjU9dnQoKGt2KCkseHYpKSxlUD12dCgoQ3YoKSxBdikpLHRQPXZ0KChWcygpLF9mKSksclA9dnQoKGFsKCksc2wpKSxpUD12dCgoc2EoKSxzYykpO2Z1bmN0aW9uIHZ0KHIpe3JldHVybiByJiZyLl9fZXNNb2R1bGU/cjp7ZGVmYXVsdDpyfX1jb25zb2xlLndhcm4oImNkbi50YWlsd2luZGNzcy5jb20gc2hvdWxkIG5vdCBiZSB1c2VkIGluIHByb2R1Y3Rpb24uIFRvIHVzZSBUYWlsd2luZCBDU1MgaW4gcHJvZHVjdGlvbiwgaW5zdGFsbCBpdCBhcyBhIFBvc3RDU1MgcGx1Z2luIG9yIHVzZSB0aGUgVGFpbHdpbmQgQ0xJOiBodHRwczovL3RhaWx3aW5kY3NzLmNvbS9kb2NzL2luc3RhbGxhdGlvbiIpO3ZhciBOcz0idGFpbHdpbmQiLHVmPSJ0ZXh0L3RhaWx3aW5kY3NzIixfdj0iL3RlbXBsYXRlLmh0bWwiLFl0LEV2PSEwLE92PTAsZmY9bmV3IFNldCxjZixUdj0iIixSdj0ocj0hMSk9Pih7Z2V0KGUsdCl7cmV0dXJuKCFyfHx0PT09ImNvbmZpZyIpJiZ0eXBlb2YgZVt0XT09Im9iamVjdCImJmVbdF0hPT1udWxsP25ldyBQcm94eShlW3RdLFJ2KCkpOmVbdF19LHNldChlLHQsaSl7cmV0dXJuIGVbdF09aSwoIXJ8fHQ9PT0iY29uZmlnIikmJnBmKCEwKSwhMH19KTt3aW5kb3dbTnNdPW5ldyBQcm94eSh7Y29uZmlnOnt9LGRlZmF1bHRUaGVtZTpKNS5kZWZhdWx0LGRlZmF1bHRDb25maWc6ZVAuZGVmYXVsdCxjb2xvcnM6dFAuZGVmYXVsdCxwbHVnaW46clAuZGVmYXVsdCxyZXNvbHZlQ29uZmlnOmlQLmRlZmF1bHR9LFJ2KCEwKSk7ZnVuY3Rpb24gUHYocil7Y2Yub2JzZXJ2ZShyLHthdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbInR5cGUiXSxjaGFyYWN0ZXJEYXRhOiEwLHN1YnRyZWU6ITAsY2hpbGRMaXN0OiEwfSl9bmV3IE11dGF0aW9uT2JzZXJ2ZXIoYXN5bmMgcj0+e2xldCBlPSExO2lmKCFjZil7Y2Y9bmV3IE11dGF0aW9uT2JzZXJ2ZXIoYXN5bmMoKT0+YXdhaXQgcGYoITApKTtmb3IobGV0IHQgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChgc3R5bGVbdHlwZT0iJHt1Zn0iXWApKVB2KHQpfWZvcihsZXQgdCBvZiByKWZvcihsZXQgaSBvZiB0LmFkZGVkTm9kZXMpaS5ub2RlVHlwZT09PTEmJmkudGFnTmFtZT09PSJTVFlMRSImJmkuZ2V0QXR0cmlidXRlKCJ0eXBlIik9PT11ZiYmKFB2KGkpLGU9ITApO2F3YWl0IHBmKGUpfSkub2JzZXJ2ZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQse2F0dHJpYnV0ZXM6ITAsYXR0cmlidXRlRmlsdGVyOlsiY2xhc3MiXSxjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pO2FzeW5jIGZ1bmN0aW9uIHBmKHI9ITEpe3ImJihPdisrLGZmLmNsZWFyKCkpO2xldCBlPSIiO2ZvcihsZXQgaSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGBzdHlsZVt0eXBlPSIke3VmfSJdYCkpZSs9aS50ZXh0Q29udGVudDtsZXQgdD1uZXcgU2V0O2ZvcihsZXQgaSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbY2xhc3NdIikpZm9yKGxldCBuIG9mIGkuY2xhc3NMaXN0KWZmLmhhcyhuKXx8dC5hZGQobik7aWYoZG9jdW1lbnQuYm9keSYmKEV2fHx0LnNpemU+MHx8ZSE9PVR2fHwhWXR8fCFZdC5pc0Nvbm5lY3RlZCkpe2ZvcihsZXQgbiBvZiB0KWZmLmFkZChuKTtFdj0hMSxUdj1lLHNlbGZbX3ZdPUFycmF5LmZyb20odCkuam9pbigiICIpO2xldHtjc3M6aX09YXdhaXQoMCxLNS5kZWZhdWx0KShbKDAsWTUuZGVmYXVsdCkoey4uLndpbmRvd1tOc10uY29uZmlnLF9oYXNoOk92LGNvbnRlbnQ6e2ZpbGVzOltfdl0sZXh0cmFjdDp7aHRtbDpuPT5uLnNwbGl0KCIgIil9fSxwbHVnaW5zOlsuLi5aNS5kZWZhdWx0LC4uLkFycmF5LmlzQXJyYXkod2luZG93W05zXS5jb25maWcucGx1Z2lucyk/d2luZG93W05zXS5jb25maWcucGx1Z2luczpbXV19KSwoMCxYNS5kZWZhdWx0KSh7cmVtb3ZlOiExfSldKS5wcm9jZXNzKGBAdGFpbHdpbmQgYmFzZTtAdGFpbHdpbmQgY29tcG9uZW50cztAdGFpbHdpbmQgdXRpbGl0aWVzOyR7ZX1gKTsoIVl0fHwhWXQuaXNDb25uZWN0ZWQpJiYoWXQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSxkb2N1bWVudC5oZWFkLmFwcGVuZChZdCkpLFl0LnRleHRDb250ZW50PWl9fX0pKCk7Ci8qIQogKiBmaWxsLXJhbmdlIDxodHRwczovL2dpdGh1Yi5jb20vam9uc2NobGlua2VydC9maWxsLXJhbmdlPgogKgogKiBDb3B5cmlnaHQgKGMpIDIwMTQtcHJlc2VudCwgSm9uIFNjaGxpbmtlcnQuCiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4KICovCi8qIQogKiBpcy1udW1iZXIgPGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zY2hsaW5rZXJ0L2lzLW51bWJlcj4KICoKICogQ29weXJpZ2h0IChjKSAyMDE0LXByZXNlbnQsIEpvbiBTY2hsaW5rZXJ0LgogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuCiAqLwovKiEKICogdG8tcmVnZXgtcmFuZ2UgPGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb21hdGNoL3RvLXJlZ2V4LXJhbmdlPgogKgogKiBDb3B5cmlnaHQgKGMpIDIwMTUtcHJlc2VudCwgSm9uIFNjaGxpbmtlcnQuCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4KICovCi8qISBodHRwczovL210aHMuYmUvY3NzZXNjIHYzLjAuMCBieSBAbWF0aGlhcyAqLwo="}},"time_used":8,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}}]}
